diff --git a/CHANGELOG.md b/CHANGELOG.md index 93cc3aa..6889066 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +Monstra 3.0.1, 2014-08-10 +------------------------ +- Minimum php is 5.3 +- Themes Plugin: Imposible to create new CSS - fixed +- Themes Plugin: js and css counter does not recalculate - fixed +- Error in Monstra Notifications - fixed +- Updated plugins url from plugins.monstra.org to monstra.org/download/plugins + Monstra 3.0.0, 2014-08-01 ------------------------ - Mobile Ready! Monstra fully responsive for mobile devices, tablets, and normal computer screens. diff --git a/README.md b/README.md index 072f6cd..1c7e8c2 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ Monstra is a modern and lightweight Content Management System. ## System Requirements Operation system: Unix, Linux, Windows, Mac OS -Middleware: PHP 5.2.3 or higher with PHP's [SimpleXML module](http://php.net/simplexml) and [Multibyte String module](http://php.net/mbstring) +Middleware: PHP 5.3.0 or higher with PHP's [SimpleXML module](http://php.net/simplexml) and [Multibyte String module](http://php.net/mbstring) Webserver: Apache with [Mod Rewrite](http://httpd.apache.org/docs/current/mod/mod_rewrite.html) or Ngnix with [Rewrite Module](http://wiki.nginx.org/HttpRewriteModule) ## Steps to Install diff --git a/engine/Monstra.php b/engine/Monstra.php index 0fe5913..80d8127 100644 --- a/engine/Monstra.php +++ b/engine/Monstra.php @@ -39,7 +39,7 @@ class Monstra /** * The version of Monstra */ - const VERSION = '3.0.0'; + const VERSION = '3.0.1'; /** diff --git a/engine/_init.php b/engine/_init.php index e551bd1..ea87f82 100644 --- a/engine/_init.php +++ b/engine/_init.php @@ -1,10 +1,10 @@
diff --git a/plugins/box/plugins/plugins.admin.php b/plugins/box/plugins/plugins.admin.php index 61ca7ce..7416466 100755 --- a/plugins/box/plugins/plugins.admin.php +++ b/plugins/box/plugins/plugins.admin.php @@ -54,6 +54,7 @@ class PluginsAdmin extends Backend // Clean Monstra TMP folder. Monstra::cleanTmp(); + // Increment Styles and Javascript version Stylesheet::stylesVersionIncrement(); Javascript::javascriptVersionIncrement(); diff --git a/plugins/box/plugins/views/backend/index.view.php b/plugins/box/plugins/views/backend/index.view.php index ae540a3..2c7bddc 100755 --- a/plugins/box/plugins/views/backend/index.view.php +++ b/plugins/box/plugins/views/backend/index.view.php @@ -6,7 +6,7 @@ diff --git a/plugins/box/themes/themes.admin.php b/plugins/box/themes/themes.admin.php index 2befac7..a13cba4 100755 --- a/plugins/box/themes/themes.admin.php +++ b/plugins/box/themes/themes.admin.php @@ -37,8 +37,12 @@ class ThemesAdmin extends Backend Option::update('theme_site_name', Request::post('themes')); - // Cleanup minify - if (count($files = File::scan(MINIFY, array('css', 'js', 'php'))) > 0) foreach ($files as $file) File::delete(MINIFY . DS . $file); + // Clean Monstra TMP folder. + Monstra::cleanTmp(); + + // Increment Styles and Javascript version + Stylesheet::stylesVersionIncrement(); + Javascript::javascriptVersionIncrement(); Request::redirect('index.php?id=themes'); @@ -52,8 +56,8 @@ class ThemesAdmin extends Backend Option::update('theme_admin_name', Request::post('themes')); - // Cleanup minify - if (count($files = File::scan(MINIFY, array('css', 'js', 'php'))) > 0) foreach ($files as $file) File::delete(MINIFY . DS . $file); + // Clean Monstra TMP folder. + Monstra::cleanTmp(); Request::redirect('index.php?id=themes'); @@ -119,7 +123,7 @@ class ThemesAdmin extends Backend if (Security::check(Request::post('csrf'))) { if (trim(Request::post('name')) == '') $errors['file_empty_name'] = __('Required field', 'themes'); - if (file_exists($template_path.Security::safeName(Request::post('name', null, false))).'.template.php') $errors['file_exists'] = __('This template already exists', 'themes'); + if (file_exists($template_path.Security::safeName(Request::post('name'), null, false).'.template.php')) $errors['file_exists'] = __('This template already exists', 'themes'); if (count($errors) == 0) { @@ -159,7 +163,7 @@ class ThemesAdmin extends Backend if (Security::check(Request::post('csrf'))) { if (trim(Request::post('name')) == '') $errors['file_empty_name'] = __('Required field', 'themes'); - if (file_exists($style_path.Security::safeName(Request::post('name'), null, false)).'.css') $errors['file_exists'] = __('This styles already exists', 'themes'); + if (file_exists($style_path.Security::safeName(Request::post('name'), null, false).'.css')) $errors['file_exists'] = __('This styles already exists', 'themes'); if (count($errors) == 0) { @@ -168,11 +172,18 @@ class ThemesAdmin extends Backend Notification::set('success', __('Your changes to the styles :name have been saved.', 'themes', array(':name' => Security::safeName(Request::post('name'), null, false)))); + // Clean Monstra TMP folder. + Monstra::cleanTmp(); + + // Increment Styles version + Stylesheet::stylesVersionIncrement(); + if (Request::post('add_file_and_exit')) { Request::redirect('index.php?id=themes'); } else { Request::redirect('index.php?id=themes&action=edit_styles&filename='.Security::safeName(Request::post('name'), null, false)); } + } } else { die('Request was denied because it contained an invalid security token. Please refresh the page and try again.'); } @@ -199,7 +210,7 @@ class ThemesAdmin extends Backend if (Security::check(Request::post('csrf'))) { if (trim(Request::post('name')) == '') $errors['file_empty_name'] = __('Required field', 'themes'); - if (file_exists($script_path.Security::safeName(Request::post('name'), null, false)).'.js') $errors['file_exists'] = __('This script already exists', 'themes'); + if (file_exists($script_path.Security::safeName(Request::post('name'), null, false).'.js')) $errors['file_exists'] = __('This script already exists', 'themes'); if (count($errors) == 0) { @@ -208,11 +219,20 @@ class ThemesAdmin extends Backend Notification::set('success', __('Your changes to the script :name have been saved.', 'themes', array(':name' => Security::safeName(Request::post('name'), null, false)))); + + // Clean Monstra TMP folder. + Monstra::cleanTmp(); + + // Increment Javascript version + Javascript::javascriptVersionIncrement(); + + if (Request::post('add_file_and_exit')) { Request::redirect('index.php?id=themes'); } else { Request::redirect('index.php?id=themes&action=edit_script&filename='.Security::safeName(Request::post('name'), null, false)); } + } } else { die('Request was denied because it contained an invalid security token. Please refresh the page and try again.'); } @@ -377,6 +397,12 @@ class ThemesAdmin extends Backend Notification::set('success', __('Your changes to the styles :name have been saved.', 'themes', array(':name' => basename($save_filename, '.css')))); + // Clean Monstra TMP folder. + Monstra::cleanTmp(); + + // Increment Styles version + Stylesheet::stylesVersionIncrement(); + if (Request::post('edit_file_and_exit')) { Request::redirect('index.php?id=themes'); } else { @@ -433,6 +459,12 @@ class ThemesAdmin extends Backend Notification::set('success', __('Your changes to the script :name have been saved.', 'themes', array(':name' => basename($save_filename, '.js')))); + // Clean Monstra TMP folder. + Monstra::cleanTmp(); + + // Increment Javascript version + Javascript::javascriptVersionIncrement(); + if (Request::post('edit_file_and_exit')) { Request::redirect('index.php?id=themes'); } else { @@ -477,6 +509,13 @@ class ThemesAdmin extends Backend File::delete($style_path.Request::get('filename').'.css'); Notification::set('success', __('Styles :name deleted', 'themes', array(':name' => File::name(Request::get('filename'))))); + + // Clean Monstra TMP folder. + Monstra::cleanTmp(); + + // Increment Styles version + Stylesheet::stylesVersionIncrement(); + Request::redirect('index.php?id=themes'); } else { die('Request was denied because it contained an invalid security token. Please refresh the page and try again.'); } @@ -491,6 +530,13 @@ class ThemesAdmin extends Backend File::delete($script_path.Request::get('filename').'.js'); Notification::set('success', __('Script :name deleted', 'themes', array(':name' => File::name(Request::get('filename'))))); + + // Clean Monstra TMP folder. + Monstra::cleanTmp(); + + // Increment Javascript version + Javascript::javascriptVersionIncrement(); + Request::redirect('index.php?id=themes'); } else { die('Request was denied because it contained an invalid security token. Please refresh the page and try again.'); } @@ -519,6 +565,12 @@ class ThemesAdmin extends Backend File::setContent(THEMES_SITE . DS . $current_site_theme . DS . 'css' . DS . Request::get('filename') .'_clone_'.date("Ymd_His").'.css', File::getContent(THEMES_SITE . DS . $current_site_theme . DS . 'css' . DS . Request::get('filename') . '.css')); + // Clean Monstra TMP folder. + Monstra::cleanTmp(); + + // Increment Styles version + Stylesheet::stylesVersionIncrement(); + Request::redirect('index.php?id=themes'); } @@ -533,6 +585,13 @@ class ThemesAdmin extends Backend File::setContent(THEMES_SITE . DS . $current_site_theme . DS . 'js' . DS . Request::get('filename') .'_clone_'.date("Ymd_His").'.js', File::getContent(THEMES_SITE . DS . $current_site_theme . DS . 'js' . DS . Request::get('filename') . '.js')); + + // Clean Monstra TMP folder. + Monstra::cleanTmp(); + + // Increment Javascript version + Javascript::javascriptVersionIncrement(); + Request::redirect('index.php?id=themes'); } diff --git a/plugins/box/users/views/frontend/login.view.php b/plugins/box/users/views/frontend/login.view.php index 5590c62..f9ad19d 100644 --- a/plugins/box/users/views/frontend/login.view.php +++ b/plugins/box/users/views/frontend/login.view.php @@ -2,8 +2,8 @@