diff --git a/administrator/components/com_banners/models/banner.php b/administrator/components/com_banners/models/banner.php index 76f5464c0e3a9..0896ef5c994a5 100644 --- a/administrator/components/com_banners/models/banner.php +++ b/administrator/components/com_banners/models/banner.php @@ -106,20 +106,17 @@ protected function batchClient($value, $pks, $contexts) */ protected function canDelete($record) { - if (!empty($record->id)) + if (empty($record->id) || $record->state != -2) { - if ($record->state != -2) - { - return false; - } - - if (!empty($record->catid)) - { - return JFactory::getUser()->authorise('core.delete', 'com_banners.category.' . (int) $record->catid); - } + return false; + } - return parent::canDelete($record); + if (!empty($record->catid)) + { + return JFactory::getUser()->authorise('core.delete', 'com_banners.category.' . (int) $record->catid); } + + return parent::canDelete($record); } /** diff --git a/administrator/components/com_banners/models/client.php b/administrator/components/com_banners/models/client.php index ba7d65159420f..796b939d23db9 100644 --- a/administrator/components/com_banners/models/client.php +++ b/administrator/components/com_banners/models/client.php @@ -35,22 +35,17 @@ class BannersModelClient extends JModelAdmin */ protected function canDelete($record) { - if (!empty($record->id)) + if (empty($record->id) || $record->state != -2) { - if ($record->state != -2) - { - return false; - } - - $user = JFactory::getUser(); - - if (!empty($record->catid)) - { - return $user->authorise('core.delete', 'com_banners.category.' . (int) $record->catid); - } + return false; + } - return $user->authorise('core.delete', 'com_banners'); + if (!empty($record->catid)) + { + return JFactory::getUser()->authorise('core.delete', 'com_banners.category.' . (int) $record->catid); } + + return parent::canDelete($record); } /** diff --git a/administrator/components/com_contact/models/contact.php b/administrator/components/com_contact/models/contact.php index 74d0b80fa2621..fbd9e24a29b05 100644 --- a/administrator/components/com_contact/models/contact.php +++ b/administrator/components/com_contact/models/contact.php @@ -112,15 +112,12 @@ protected function batchUser($value, $pks, $contexts) */ protected function canDelete($record) { - if (!empty($record->id)) + if (empty($record->id) || $record->published != -2) { - if ($record->published != -2) - { - return false; - } - - return JFactory::getUser()->authorise('core.delete', 'com_contact.category.' . (int) $record->catid); + return false; } + + return JFactory::getUser()->authorise('core.delete', 'com_contact.category.' . (int) $record->catid); } /** diff --git a/administrator/components/com_content/models/article.php b/administrator/components/com_content/models/article.php index 2b728bbabf994..6820d71c719e2 100644 --- a/administrator/components/com_content/models/article.php +++ b/administrator/components/com_content/models/article.php @@ -213,17 +213,12 @@ protected function batchMove($value, $pks, $contexts) */ protected function canDelete($record) { - if (!empty($record->id)) + if (empty($record->id) || $record->state != -2) { - if ($record->state != -2) - { - return false; - } - - return JFactory::getUser()->authorise('core.delete', 'com_content.article.' . (int) $record->id); + return false; } - return false; + return JFactory::getUser()->authorise('core.delete', 'com_content.article.' . (int) $record->id); } /** diff --git a/administrator/components/com_contenthistory/models/history.php b/administrator/components/com_contenthistory/models/history.php index 7434a8cc22b41..91a8e6f8e1cf8 100644 --- a/administrator/components/com_contenthistory/models/history.php +++ b/administrator/components/com_contenthistory/models/history.php @@ -98,7 +98,7 @@ protected function canEdit($record) */ protected function canDelete($record) { - return canEdit($record); + return $this->canEdit($record); } /** diff --git a/administrator/components/com_fields/models/field.php b/administrator/components/com_fields/models/field.php index 2e645ff59bc47..2bfba7cf6cbc3 100644 --- a/administrator/components/com_fields/models/field.php +++ b/administrator/components/com_fields/models/field.php @@ -744,19 +744,14 @@ public function cleanupValues($context, $itemId) */ protected function canDelete($record) { - if (!empty($record->id)) + if (empty($record->id) || $record->state != -2) { - if ($record->state != -2) - { - return false; - } - - $parts = FieldsHelper::extract($record->context); - - return JFactory::getUser()->authorise('core.delete', $parts[0] . '.field.' . (int) $record->id); + return false; } - return false; + $parts = FieldsHelper::extract($record->context); + + return JFactory::getUser()->authorise('core.delete', $parts[0] . '.field.' . (int) $record->id); } /** diff --git a/administrator/components/com_menus/models/item.php b/administrator/components/com_menus/models/item.php index 312b03177a7b2..38facb53db071 100644 --- a/administrator/components/com_menus/models/item.php +++ b/administrator/components/com_menus/models/item.php @@ -92,27 +92,19 @@ class MenusModelItem extends JModelAdmin */ protected function canDelete($record) { - $user = JFactory::getUser(); - - if (!empty($record->id)) + if (empty($record->id) || $record->published != -2) { - // Only delete trashed items - if ($record->published != -2) - { - return false; - } - - $menuTypeId = 0; + return false; + } - if (!empty($record->menutype)) - { - $menuTypeId = $this->getMenuTypeId($record->menutype); - } + $menuTypeId = 0; - return $user->authorise('core.delete', 'com_menus.menu.' . (int) $menuTypeId); + if (!empty($record->menutype)) + { + $menuTypeId = $this->getMenuTypeId($record->menutype); } - return false; + return JFactory::getUser()->authorise('core.delete', 'com_menus.menu.' . (int) $menuTypeId); } /** diff --git a/administrator/components/com_menus/models/menu.php b/administrator/components/com_menus/models/menu.php index 484c199e9cec8..308010153b025 100644 --- a/administrator/components/com_menus/models/menu.php +++ b/administrator/components/com_menus/models/menu.php @@ -45,9 +45,7 @@ class MenusModelMenu extends JModelForm */ protected function canDelete($record) { - $user = JFactory::getUser(); - - return $user->authorise('core.delete', 'com_menus.menu.' . (int) $record->id); + return JFactory::getUser()->authorise('core.delete', 'com_menus.menu.' . (int) $record->id); } /** diff --git a/administrator/components/com_modules/models/module.php b/administrator/components/com_modules/models/module.php index dfef68f75876f..423aa4363a354 100644 --- a/administrator/components/com_modules/models/module.php +++ b/administrator/components/com_modules/models/module.php @@ -302,18 +302,14 @@ protected function batchMove($value, $pks, $contexts) */ protected function canEditState($record) { - $user = JFactory::getUser(); - // Check for existing module. if (!empty($record->id)) { - return $user->authorise('core.edit.state', 'com_modules.module.' . (int) $record->id); + return JFactory::getUser()->authorise('core.edit.state', 'com_modules.module.' . (int) $record->id); } + // Default to component settings if module not known. - else - { - return parent::canEditState('com_modules'); - } + return parent::canEditState($record); } /** diff --git a/administrator/components/com_newsfeeds/models/newsfeed.php b/administrator/components/com_newsfeeds/models/newsfeed.php index 9b4fba9d927fa..e3ea939d78e38 100644 --- a/administrator/components/com_newsfeeds/models/newsfeed.php +++ b/administrator/components/com_newsfeeds/models/newsfeed.php @@ -54,26 +54,17 @@ class NewsfeedsModelNewsfeed extends JModelAdmin */ protected function canDelete($record) { - if (!empty($record->id)) + if (empty($record->id) || $record->published != -2) { - if ($record->published != -2) - { - return false; - } - - $user = JFactory::getUser(); + return false; + } - if (!empty($record->catid)) - { - return $user->authorise('core.delete', 'com_newsfeed.category.' . (int) $record->catid); - } - else - { - return parent::canDelete($record); - } + if (!empty($record->catid)) + { + return JFactory::getUser()->authorise('core.delete', 'com_newsfeed.category.' . (int) $record->catid); } - return false; + return parent::canDelete($record); } /** @@ -87,16 +78,12 @@ protected function canDelete($record) */ protected function canEditState($record) { - $user = JFactory::getUser(); - if (!empty($record->catid)) { - return $user->authorise('core.edit.state', 'com_newsfeeds.category.' . (int) $record->catid); - } - else - { - return parent::canEditState($record); + return JFactory::getUser()->authorise('core.edit.state', 'com_newsfeeds.category.' . (int) $record->catid); } + + return parent::canEditState($record); } /** diff --git a/administrator/components/com_redirect/models/link.php b/administrator/components/com_redirect/models/link.php index c54536bc2a568..866f2030306b2 100644 --- a/administrator/components/com_redirect/models/link.php +++ b/administrator/components/com_redirect/models/link.php @@ -40,26 +40,7 @@ protected function canDelete($record) return false; } - $user = JFactory::getUser(); - - return $user->authorise('core.delete', 'com_redirect'); - } - - /** - * Method to test whether a record can have its state edited. - * - * @param object $record A record object. - * - * @return boolean True if allowed to change the state of the record. Defaults to the permission set in the component. - * - * @since 1.6 - */ - protected function canEditState($record) - { - $user = JFactory::getUser(); - - // Check the component since there are no categories or other assets. - return $user->authorise('core.edit.state', 'com_redirect'); + return parent::canDelete($record); } /** diff --git a/administrator/components/com_tags/models/tag.php b/administrator/components/com_tags/models/tag.php index 6936e771531e5..4871c953fa63d 100644 --- a/administrator/components/com_tags/models/tag.php +++ b/administrator/components/com_tags/models/tag.php @@ -53,29 +53,12 @@ class TagsModelTag extends JModelAdmin */ protected function canDelete($record) { - if (!empty($record->id)) + if (empty($record->id) || $record->published != -2) { - if ($record->published != -2) - { - return false; - } - - return parent::canDelete($record); + return false; } - } - /** - * Method to test whether a record can have its state changed. - * - * @param object $record A record object. - * - * @return boolean True if allowed to change the state of the record. Defaults to the permission set in the component. - * - * @since 3.1 - */ - protected function canEditState($record) - { - return parent::canEditState($record); + return parent::canDelete($record); } /** diff --git a/components/com_config/model/cms.php b/components/com_config/model/cms.php index 45cf6d1d354a4..0ab22f82b8772 100644 --- a/components/com_config/model/cms.php +++ b/components/com_config/model/cms.php @@ -256,32 +256,25 @@ protected function populateState() */ protected function canDelete($record) { - if (!empty($record->id)) + if (empty($record->id) || $record->published != -2) { - if ($record->published != -2) - { - return false; - } - - $user = JFactory::getUser(); - - return $user->authorise('core.delete', $this->option); + return false; } - } - /** - * Method to test whether a record can have its state changed. - * - * @param object $record A record object. - * - * @return boolean True if allowed to change the state of the record. Defaults to the permission set in the component. - * - * @since 3.2 - */ - protected function canEditState($record) - { - $user = JFactory::getUser(); + return JFactory::getUser()->authorise('core.delete', $this->option); + } - return $user->authorise('core.edit.state', $this->option); + /** + * Method to test whether a record can have its state changed. + * + * @param object $record A record object. + * + * @return boolean True if allowed to change the state of the record. Defaults to the permission set in the component. + * + * @since 3.2 + */ + protected function canEditState($record) + { + return JFactory::getUser()->authorise('core.edit.state', $this->option); } }