diff --git c/core/modules/book/book.pages.inc w/core/modules/book/book.pages.inc index fe4c6a0..3462906 100644 --- c/core/modules/book/book.pages.inc +++ w/core/modules/book/book.pages.inc @@ -30,6 +30,8 @@ function book_remove_button_submit($form, &$form_state) { * @see book_remove_form_submit() * @see book_menu() * @ingroup forms + * + * @depracated Use \Drupal\book\Form\BookForm::remove() */ function book_remove_form($form, &$form_state, EntityInterface $node) { $form['#node'] = $node; diff --git c/core/modules/book/lib/Drupal/book/Form/BookForm.php w/core/modules/book/lib/Drupal/book/Form/BookForm.php index 9ed431a..c69ecd6 100644 --- c/core/modules/book/lib/Drupal/book/Form/BookForm.php +++ w/core/modules/book/lib/Drupal/book/Form/BookForm.php @@ -12,10 +12,11 @@ * Temporary form controller for book module. */ class BookForm { + /** * Wraps book_remove_form(). * - * @see book_remove_form() + * @todo Remove book_remove_form(). */ public function remove(EntityInterface $node) { module_load_include('pages.inc', 'book'); diff --git c/core/modules/content_translation/content_translation.pages.inc w/core/modules/content_translation/content_translation.pages.inc index a7ce4af..3ead3e1 100644 --- c/core/modules/content_translation/content_translation.pages.inc +++ w/core/modules/content_translation/content_translation.pages.inc @@ -242,6 +242,8 @@ function content_translation_prepare_translation(EntityInterface $entity, Langua /** * Form constructor for the translation deletion confirmation. + * + * @depracated Use \Drupal\content_translation\Form\ContentTranslationForm::deleteTranslation() */ function content_translation_delete_confirm(array $form, array $form_state, EntityInterface $entity, Language $language) { $langcode = $language->id; diff --git c/core/modules/content_translation/lib/Drupal/content_translation/Form/ContentTranslationForm.php w/core/modules/content_translation/lib/Drupal/content_translation/Form/ContentTranslationForm.php index 9873043..7142a49 100644 --- c/core/modules/content_translation/lib/Drupal/content_translation/Form/ContentTranslationForm.php +++ w/core/modules/content_translation/lib/Drupal/content_translation/Form/ContentTranslationForm.php @@ -13,10 +13,11 @@ * Temporary form controller for content_translation module. */ class ContentTranslationForm { + /** * Wraps content_translation_delete_confirm(). * - * @see content_translation_delete_confirm() + * @todo Remove content_translation_delete_confirm(). */ public function deleteTranslation(EntityInterface $entity, $language) { module_load_include('pages.inc', 'content_translation'); diff --git c/core/modules/content_translation/lib/Drupal/content_translation/Routing/ContentTranslationRouteSubscriber.php w/core/modules/content_translation/lib/Drupal/content_translation/Routing/ContentTranslationRouteSubscriber.php index 91ff885..9826b62 100644 --- c/core/modules/content_translation/lib/Drupal/content_translation/Routing/ContentTranslationRouteSubscriber.php +++ w/core/modules/content_translation/lib/Drupal/content_translation/Routing/ContentTranslationRouteSubscriber.php @@ -76,4 +76,5 @@ public function routes(RouteBuildEvent $event) { } } } + } diff --git c/core/modules/language/language.admin.inc w/core/modules/language/language.admin.inc index 562580b..ef9a93f 100644 --- c/core/modules/language/language.admin.inc +++ w/core/modules/language/language.admin.inc @@ -26,6 +26,8 @@ function language_admin_predefined_list() { /** * Builds the configuration form for language negotiation. + * + * @depracated Use \Drupal\language\Form\LanguageForm::negotiation() */ function language_negotiation_configure_form() { language_negotiation_include(); diff --git c/core/modules/language/lib/Drupal/language/Form/LanguageForm.php w/core/modules/language/lib/Drupal/language/Form/LanguageForm.php index 17773ff..9194c6b 100644 --- c/core/modules/language/lib/Drupal/language/Form/LanguageForm.php +++ w/core/modules/language/lib/Drupal/language/Form/LanguageForm.php @@ -10,10 +10,11 @@ * Temporary form controller for language module. */ class LanguageForm { + /** * Wraps language_negotiation_configure_form(). * - * @see language_negotiation_configure_form() + * @todo Remove language_negotiation_configure_form(). */ public function negotiation() { module_load_include('admin.inc', 'language'); diff --git c/core/modules/locale/lib/Drupal/locale/Form/LocaleForm.php w/core/modules/locale/lib/Drupal/locale/Form/LocaleForm.php index 733dca7..c06a4aa 100644 --- c/core/modules/locale/lib/Drupal/locale/Form/LocaleForm.php +++ w/core/modules/locale/lib/Drupal/locale/Form/LocaleForm.php @@ -10,10 +10,11 @@ * Temporary form controller for locale module. */ class LocaleForm { + /** * Wraps locale_translate_import_form(). * - * @see locale_translate_import_form() + * @todo Remove locale_translate_import_form(). */ public function import() { module_load_include('bulk.inc', 'locale'); @@ -23,7 +24,7 @@ public function import() { /** * Wraps locale_translate_export_form(). * - * @see locale_translate_export_form() + * @todo Remove locale_translate_export_form(). */ public function export() { module_load_include('bulk.inc', 'locale'); @@ -33,7 +34,7 @@ public function export() { /** * Wraps locale_translation_status_form(). * - * @see locale_translation_status_form() + * @todo Remove locale_translation_status_form(). */ public function status() { module_load_include('pages.inc', 'locale'); diff --git c/core/modules/locale/locale.bulk.inc w/core/modules/locale/locale.bulk.inc index 355ccb1..082656f 100644 --- c/core/modules/locale/locale.bulk.inc +++ w/core/modules/locale/locale.bulk.inc @@ -17,6 +17,8 @@ * * @see locale_translate_import_form_submit() * @ingroup forms + * + * @depracated Use \Drupal\locale\Form\LocaleForm::import() */ function locale_translate_import_form($form, &$form_state) { drupal_static_reset('language_list'); @@ -144,6 +146,8 @@ function locale_translate_import_form_submit($form, &$form_state) { * * @see locale_translate_export_form_submit() * @ingroup forms + * + * @depracated Use \Drupal\locale\Form\LocaleForm::export() */ function locale_translate_export_form($form, &$form_state) { $languages = language_list(); diff --git c/core/modules/locale/locale.pages.inc w/core/modules/locale/locale.pages.inc index 1e045fe..f3cea89 100644 --- c/core/modules/locale/locale.pages.inc +++ w/core/modules/locale/locale.pages.inc @@ -40,6 +40,8 @@ function locale_translation_manual_status() { * Page callback: Display the current translation status. * * @see locale_menu() + * + * @depracated Use \Drupal\locale\Form\LocaleForm::status() */ function locale_translation_status_form($form, &$form_state) { module_load_include('translation.inc', 'locale'); diff --git c/core/modules/shortcut/lib/Drupal/shortcut/Access/LinkAccessCheck.php w/core/modules/shortcut/lib/Drupal/shortcut/Access/LinkAccessCheck.php new file mode 100644 index 0000000..85e48b2 --- /dev/null +++ w/core/modules/shortcut/lib/Drupal/shortcut/Access/LinkAccessCheck.php @@ -0,0 +1,38 @@ +attributes->get('menu_link'); + $set_name = str_replace('shortcut-', '', $menu_link['menu_name']); + if ($shortcut_set = shortcut_set_load($set_name)) { + return shortcut_set_edit_access($shortcut_set) ? static::ALLOW : static::DENY; + } + return static::DENY; + } + +} diff --git c/core/modules/shortcut/lib/Drupal/shortcut/Access/LinkDeleteAccessCheck.php w/core/modules/shortcut/lib/Drupal/shortcut/Access/LinkDeleteAccessCheck.php deleted file mode 100644 index 30153df..0000000 --- c/core/modules/shortcut/lib/Drupal/shortcut/Access/LinkDeleteAccessCheck.php +++ /dev/null @@ -1,37 +0,0 @@ -attributes->get('menu_link'); - $set_name = str_replace('shortcut-', '', $menu_link['menu_name']); - if ($shortcut_set = shortcut_set_load($set_name)) { - return shortcut_set_edit_access($shortcut_set) ? static::ALLOW : static::DENY; - } - } - -} diff --git c/core/modules/shortcut/lib/Drupal/shortcut/Access/ShortcutSetEditAccessCheck.php w/core/modules/shortcut/lib/Drupal/shortcut/Access/ShortcutSetEditAccessCheck.php new file mode 100644 index 0000000..7ca4b01 --- /dev/null +++ w/core/modules/shortcut/lib/Drupal/shortcut/Access/ShortcutSetEditAccessCheck.php @@ -0,0 +1,43 @@ +attributes->get('shortcut_set'); + // Sufficiently-privileged users can edit their currently displayed shortcut + // set, but not other sets. Shortcut administrators can edit any set. + if ($account->hasPermission('administer shortcuts')) { + return static::ALLOW; + } + if ($account->hasPermission('customize shortcut links')) { + return !isset($shortcut_set) || $shortcut_set == shortcut_current_displayed_set() ? static::ALLOW : static::DENY; + } + return static::DENY; + } + +} diff --git c/core/modules/shortcut/lib/Drupal/shortcut/Access/ShortcutSetSwitchAccessCheck.php w/core/modules/shortcut/lib/Drupal/shortcut/Access/ShortcutSetSwitchAccessCheck.php new file mode 100644 index 0000000..aacecc4 --- /dev/null +++ w/core/modules/shortcut/lib/Drupal/shortcut/Access/ShortcutSetSwitchAccessCheck.php @@ -0,0 +1,51 @@ +attributes->get('account'); + + if ($user->hasPermission('administer shortcuts')) { + // Administrators can switch anyone's shortcut set. + return static::ALLOW; + } + + if (!$user->hasPermission('switch shortcut sets')) { + // The user has no permission to switch anyone's shortcut set. + return static::DENY; + } + + if (!isset($account) || $user->id() == $account->id()) { + // Users with the 'switch shortcut sets' permission can switch their own + // shortcuts sets. + return static::ALLOW; + } + return static::DENY; + } + +} diff --git c/core/modules/shortcut/lib/Drupal/shortcut/Form/ShortcutForm.php w/core/modules/shortcut/lib/Drupal/shortcut/Form/ShortcutForm.php index 030fa0a..fc5fec2 100644 --- c/core/modules/shortcut/lib/Drupal/shortcut/Form/ShortcutForm.php +++ w/core/modules/shortcut/lib/Drupal/shortcut/Form/ShortcutForm.php @@ -6,7 +6,7 @@ namespace Drupal\shortcut\Form; -use Drupal\menu_link\Entity\MenuLinkInterface; +use Drupal\menu_link\MenuLinkInterface; use Drupal\shortcut\ShortcutSetInterface; use Drupal\user\UserInterface; @@ -14,10 +14,11 @@ * Temporary form controller for shortcut module. */ class ShortcutForm { + /** * Wraps shortcut_link_edit(). * - * @see shortcut_link_edit() + * @todo Remove shortcut_link_edit(). */ public function edit(MenuLinkInterface $menu_link) { module_load_include('admin.inc', 'shortcut'); @@ -27,7 +28,7 @@ public function edit(MenuLinkInterface $menu_link) { /** * Wraps shortcut_link_add(). * - * @see shortcut_link_add() + * @todo Remove shortcut_link_add(). */ public function add(ShortcutSetInterface $shortcut_set) { module_load_include('admin.inc', 'shortcut'); @@ -37,7 +38,7 @@ public function add(ShortcutSetInterface $shortcut_set) { /** * Wraps shortcut_set_switch(). * - * @see shortcut_set_switch() + * @todo Remove shortcut_set_switch(). */ public function overview(UserInterface $user) { module_load_include('admin.inc', 'shortcut'); diff --git c/core/modules/shortcut/shortcut.admin.inc w/core/modules/shortcut/shortcut.admin.inc index 523fead..f24f5db 100644 --- c/core/modules/shortcut/shortcut.admin.inc +++ w/core/modules/shortcut/shortcut.admin.inc @@ -25,6 +25,8 @@ * @ingroup forms * @see shortcut_set_switch_validate() * @see shortcut_set_switch_submit() + * + * @depracated Use \Drupal\shortcut\Form\ShortcutForm::overview() */ function shortcut_set_switch($form, &$form_state, $account = NULL) { $user = \Drupal::currentUser(); @@ -188,6 +190,8 @@ function shortcut_set_switch_submit($form, &$form_state) { * @ingroup forms * @see shortcut_link_edit_validate() * @see shortcut_link_add_submit() + * + * @depracated Use \Drupal\shortcut\Form\ShortcutForm::add() */ function shortcut_link_add($form, &$form_state, $shortcut_set) { drupal_set_title(t('Add new shortcut')); @@ -215,6 +219,8 @@ function shortcut_link_add($form, &$form_state, $shortcut_set) { * @ingroup forms * @see shortcut_link_edit_validate() * @see shortcut_link_edit_submit() + * + * @depracated Use \Drupal\shortcut\Form\ShortcutForm::edit() */ function shortcut_link_edit($form, &$form_state, $shortcut_link) { drupal_set_title(t('Editing @shortcut', array('@shortcut' => $shortcut_link['link_title']))); diff --git c/core/modules/shortcut/shortcut.routing.yml w/core/modules/shortcut/shortcut.routing.yml index ad4d6bf..95d59d9 100644 --- c/core/modules/shortcut/shortcut.routing.yml +++ w/core/modules/shortcut/shortcut.routing.yml @@ -3,7 +3,7 @@ shortcut.link_delete: defaults: _form: 'Drupal\shortcut\Form\LinkDelete' requirements: - _access_shortcut_link_delete: 'TRUE' + _access_shortcut_link: 'TRUE' shortcut.set_delete: path: '/admin/config/user-interface/shortcut/manage/{shortcut_set}/delete' @@ -53,25 +53,21 @@ shortcut.link_add: _content: '\Drupal\shortcut\Form\ShortcutForm::add' _title: 'Add Shortcut' requirements: - _access: 'TRUE' + _access_shortcut_set_edit: 'TRUE' shortcut.link_edit: path: '/admin/config/user-interface/shortcut/link/{menu_link}' defaults: _content: '\Drupal\shortcut\Form\ShortcutForm::edit' _title: 'Add Shortcut' - options: - _access_mode: 'ALL' requirements: - _access: 'TRUE' + _access_shortcut_link: 'TRUE' shortcut.overview: path: 'user/{user}/shortcuts' defaults: _content: '\Drupal\shortcut\Form\ShortcutForm::overview' - _title: 'Add Shortcut' - options: - _access_mode: 'ALL' + _title: 'Shortcuts' requirements: - _access: 'TRUE' + _access_shortcut_set_switch: 'TRUE' diff --git c/core/modules/shortcut/shortcut.services.yml w/core/modules/shortcut/shortcut.services.yml index bb95f49..439a0e0 100644 --- c/core/modules/shortcut/shortcut.services.yml +++ w/core/modules/shortcut/shortcut.services.yml @@ -1,5 +1,15 @@ services: access_check.shortcut.link: - class: Drupal\shortcut\Access\LinkDeleteAccessCheck + class: Drupal\shortcut\Access\LinkAccessCheck + tags: + - { name: access_check } + + access_check.shortcut.shortcut_set_edit: + class: Drupal\shortcut\Access\ShortcutSetEditAccessCheck + tags: + - { name: access_check } + + access_check.shortcut.shortcut_set_switch: + class: Drupal\shortcut\Access\ShortcutSetSwitchAccessCheck tags: - { name: access_check } diff --git c/core/modules/system/lib/Drupal/system/Form/SystemForm.php w/core/modules/system/lib/Drupal/system/Form/SystemForm.php index e3b4021..20b64db 100644 --- c/core/modules/system/lib/Drupal/system/Form/SystemForm.php +++ w/core/modules/system/lib/Drupal/system/Form/SystemForm.php @@ -10,10 +10,11 @@ * Temporary form controller for system module. */ class SystemForm { + /** * Wraps system_date_format_localize_form(). * - * @see system_date_format_localize_form() + * @todo Remove system_date_format_localize_form(). */ public function localizeDateFormat($langcode) { module_load_include('admin.inc', 'system'); diff --git c/core/modules/system/system.admin.inc w/core/modules/system/system.admin.inc index 866b553..6309812 100644 --- c/core/modules/system/system.admin.inc +++ w/core/modules/system/system.admin.inc @@ -732,6 +732,8 @@ function theme_system_themes_page($variables) { * @see locale_menu() * @see system_date_format_localize_form_submit() * @ingroup forms + * + * @depracated Use \Drupal\system\Form\SystemForm::localizeDateFormat() */ function system_date_format_localize_form($form, &$form_state, $langcode) { // Display the current language name. diff --git c/core/modules/update/lib/Drupal/update/Form/UpdateForm.php w/core/modules/update/lib/Drupal/update/Form/UpdateForm.php index 9832c17..b904633 100644 --- c/core/modules/update/lib/Drupal/update/Form/UpdateForm.php +++ w/core/modules/update/lib/Drupal/update/Form/UpdateForm.php @@ -10,10 +10,11 @@ * Temporary form controller for update module. */ class UpdateForm { + /** * Wraps update_manager_install_form(). * - * @see update_manager_install_form() + * @todo Remove update_manager_install_form(). */ public function reportInstall() { module_load_include('manager.inc', 'update'); @@ -23,7 +24,7 @@ public function reportInstall() { /** * Wraps update_manager_update_form(). * - * @see update_manager_update_form() + * @todo Remove update_manager_update_form(). */ public function reportUpdate() { module_load_include('manager.inc', 'update'); @@ -33,7 +34,7 @@ public function reportUpdate() { /** * Wraps update_manager_install_form(). * - * @see update_manager_install_form() + * @todo Remove update_manager_install_form(). */ public function moduleInstall() { module_load_include('manager.inc', 'update'); @@ -43,7 +44,7 @@ public function moduleInstall() { /** * Wraps update_manager_update_form(). * - * @see update_manager_update_form() + * @todo Remove update_manager_update_form(). */ public function moduleUpdate() { module_load_include('manager.inc', 'update'); @@ -53,7 +54,7 @@ public function moduleUpdate() { /** * Wraps update_manager_install_form(). * - * @see update_manager_install_form() + * @todo Remove update_manager_install_form(). */ public function themeInstall() { module_load_include('manager.inc', 'update'); @@ -63,7 +64,7 @@ public function themeInstall() { /** * Wraps update_manager_update_form(). * - * @see update_manager_update_form() + * @todo Remove update_manager_update_form(). */ public function themeUpdate() { module_load_include('manager.inc', 'update'); @@ -73,7 +74,7 @@ public function themeUpdate() { /** * Wraps update_manager_update_ready_form(). * - * @see update_manager_update_ready_form() + * @todo Remove update_manager_update_ready_form(). */ public function confirmUpdates() { module_load_include('manager.inc', 'update'); diff --git c/core/modules/update/update.manager.inc w/core/modules/update/update.manager.inc index a1eccb9..21bc568 100644 --- c/core/modules/update/update.manager.inc +++ w/core/modules/update/update.manager.inc @@ -62,6 +62,10 @@ * @see update_manager_update_form_submit() * @see update_menu() * @ingroup forms + * + * @depracated Use \Drupal\update\Form\UpdateForm::reportUpdate(), + * \Drupal\update\Form\UpdateForm::moduleUpdate(), or + * \Drupal\update\Form\UpdateForm::moduleUpdate() */ function update_manager_update_form($form, $form_state = array(), $context) { if (!_update_manager_check_backends($form, 'update')) { @@ -507,6 +511,10 @@ function update_manager_update_ready_form_submit($form, &$form_state) { * @see update_manager_install_form_submit() * @see update_menu() * @ingroup forms + * + * @depracated Use \Drupal\update\Form\UpdateForm::reportInstall(), + * \Drupal\update\Form\UpdateForm::moduleInstall(), or + * \Drupal\update\Form\UpdateForm::moduleInstall() */ function update_manager_install_form($form, &$form_state, $context) { if (!_update_manager_check_backends($form, 'install')) { diff --git c/core/modules/user/lib/Drupal/user/Form/UserForm.php w/core/modules/user/lib/Drupal/user/Form/UserForm.php index 18744cc..49c8c76 100644 --- c/core/modules/user/lib/Drupal/user/Form/UserForm.php +++ w/core/modules/user/lib/Drupal/user/Form/UserForm.php @@ -10,10 +10,11 @@ * Temporary form controller for user module. */ class UserForm { + /** * Wraps user_pass_reset(). * - * @see user_pass_reset() + * @todo Remove user_pass_reset(). */ public function resetPass($uid, $timestamp, $hash, $operation) { module_load_include('pages.inc', 'user'); diff --git c/core/modules/user/user.pages.inc w/core/modules/user/user.pages.inc index 6e4f999..df70051 100644 --- c/core/modules/user/user.pages.inc +++ w/core/modules/user/user.pages.inc @@ -13,6 +13,8 @@ /** * Menu callback; process one time login link and redirects to the user page on success. + * + * @depracated Use \Drupal\user\Form\UserForm::resetPass() */ function user_pass_reset($form, &$form_state, $uid, $timestamp, $hashed_pass, $action = NULL) { global $user;