diff options
| author | 2014-10-01 13:37:10 +0200 | |
|---|---|---|
| committer | 2014-10-01 13:37:10 +0200 | |
| commit | f400621f44c2aac0b1bb4204e95e4c35a8a35f8f (patch) | |
| tree | 91455d2056c097b14af8e62605e178e83e341369 /app | |
| parent | a7bf7ced369a046b487ab1cd8b3819acc5ebdafe (diff) | |
Fix problem when deleting default category
This is not allowed!
See https://github.com/marienfressinaud/FreshRSS/issues/646
Diffstat (limited to 'app')
| -rw-r--r-- | app/Controllers/categoryController.php | 4 | ||||
| -rw-r--r-- | app/Controllers/subscriptionController.php | 1 | ||||
| -rw-r--r-- | app/views/subscription/index.phtml | 12 |
3 files changed, 14 insertions, 3 deletions
diff --git a/app/Controllers/categoryController.php b/app/Controllers/categoryController.php index 2c99751a4..c79f37fa4 100644 --- a/app/Controllers/categoryController.php +++ b/app/Controllers/categoryController.php @@ -123,6 +123,10 @@ class FreshRSS_category_Controller extends Minz_ActionController { Minz_Request::bad(_t('category_no_id'), $url_redirect); } + if ($id === $default_category->id()) { + Minz_Request::bad(_t('category_not_delete_default'), $url_redirect); + } + if ($feedDAO->changeCategory($id, $default_category->id()) === false) { Minz_Request::bad(_t('error_occurred'), $url_redirect); } diff --git a/app/Controllers/subscriptionController.php b/app/Controllers/subscriptionController.php index 83f803edb..aabae7b8f 100644 --- a/app/Controllers/subscriptionController.php +++ b/app/Controllers/subscriptionController.php @@ -19,6 +19,7 @@ class FreshRSS_subscription_Controller extends Minz_ActionController { $catDAO = new FreshRSS_CategoryDAO(); + $catDAO->checkDefault(); $this->view->categories = $catDAO->listCategories(false); $this->view->default_category = $catDAO->getDefault(); } diff --git a/app/views/subscription/index.phtml b/app/views/subscription/index.phtml index bce9eacf1..2d55890f7 100644 --- a/app/views/subscription/index.phtml +++ b/app/views/subscription/index.phtml @@ -82,9 +82,14 @@ <li class="item"><a href="<?php echo _url('index', 'index', 'get', 'c_' . $cat->id()); ?>"><?php echo _t('filter'); ?></a></li> - <li class="separator"></li> + <?php + $no_feed = empty($feeds); + $is_default = ($cat->id() === $this->default_category->id()); - <?php if (!empty($feeds)) { ?> + if (!$no_feed || !$is_default) { + ?> + <li class="separator"></li> + <?php } if (!$no_feed) { ?> <li class="item"> <button class="as-link confirm" data-str-confirm="<?php echo _t('confirm_action_feed_cat'); ?>" @@ -93,7 +98,7 @@ formaction="<?php echo _url('category', 'empty', 'id', $cat->id()); ?>"> <?php echo _t('ask_empty'); ?></button> </li> - <?php } ?> + <?php } if (!$is_default) { ?> <li class="item"> <button class="as-link confirm" data-str-confirm="<?php echo _t('confirm_action_feed_cat'); ?>" @@ -102,6 +107,7 @@ formaction="<?php echo _url('category', 'delete', 'id', $cat->id()); ?>"> <?php echo _t('delete'); ?></button> </li> + <?php } ?> </ul> </div> </form> |
