Skip to content

Commit

Permalink
chore(views): Remove all deprecated views
Browse files Browse the repository at this point in the history
BREAKING CHANGE:
Several views that were deprecated in the 1.x series are being
removed in 2.x. This helps us keep the codebase clean and our
maintenance burden lower.
  • Loading branch information
ewinslow committed May 26, 2015
1 parent 0f69218 commit 805ecb1
Show file tree
Hide file tree
Showing 29 changed files with 53 additions and 297 deletions.
41 changes: 39 additions & 2 deletions docs/guides/upgrading.rst
Expand Up @@ -9,9 +9,46 @@ See the administrator guides for :doc:`how to upgrade a live site </admin/upgrad
:local: :local:
:depth: 2 :depth: 2


From 1.11 to 2.0 From 1.x to 2.0
================ ===============


All deprecated views and view arguments have been removed
---------------------------------------------------------

We dropped support for and/or removed the following views:

* core/settings/tools
* footer/analytics (Use page/elements/foot instead)
* groups/search/finishblurb
* groups/search/startblurb
* input/calendar (Use input/date instead)
* input/datepicker (Use input/date instead)
* input/pulldown (Use input/select instead)
* js/initialise_elgg (Use AMD and ``elgg_require_js`` instead of extending JS views)
* members/nav
* metatags (Use the 'head', 'page' plugin hook instead)
* navigation/topbar_tools
* navigation/viewtype
* output/calendar (Use output/date instead)
* output/confirmlink (Use output/url instead)
* page_elements/contentwrapper
* page/elements/shortcut_icon (Use the 'head', 'page' plugin hook instead)
* page/elements/wrapper
* profile/icon (Use ``elgg_get_entity_icon``)
* settings/{plugin}/edit (Use plugins/{plugin}/settings instead)
* user/search/finishblurb
* user/search/startblurb
* usersettings/{plugin}/edit (Use plugins/{plugin}/usersettings instead)
* widgets/{handler}/view (Use widgets/{handler}/content instead)

We also dropped the following arguments to views:

* "value" in output/iframe (Use "src" instead)
* "area2" and "area3" in page/elements/sidebar (Use "sidebar" or view extension instead)
* "js" in icon views (e.g. icon/user/default)
* "options" to input/radio and input/checkboxes which aren't key-value pairs
will no longer be acceptable.

All scripts moved to bottom of page All scripts moved to bottom of page
----------------------------------- -----------------------------------


Expand Down
36 changes: 0 additions & 36 deletions engine/lib/views.php
Expand Up @@ -1581,40 +1581,6 @@ function _elgg_views_send_header_x_frame_options() {
header('X-Frame-Options: SAMEORIGIN'); header('X-Frame-Options: SAMEORIGIN');
} }


/**
* Checks for usage of core views that have been removed
*
* @access private
*/
function _elgg_views_deprecate_removed_views() {
$removed_views = array(
"1.10" => array(
'core/settings/tools',
),
);

$views_svc = _elgg_services()->views;
foreach ($removed_views as $version => $names) {
foreach ($names as $name) {
if ($views_svc->viewExists($name)) {
elgg_deprecated_notice("The view $name is no longer used and should not be provided or extended.", $version);
}
}
}
}

/**
* Registers deprecated views to avoid making some pages from older plugins
* completely empty.
*
* @access private
*/
function elgg_views_handle_deprecated_views() {
$location = elgg_get_view_location('page_elements/contentwrapper');
if ($location === "/var/www/views/") {
elgg_extend_view('page_elements/contentwrapper', 'page/elements/wrapper');
}
}


/** /**
* Initialize viewtypes on system boot event * Initialize viewtypes on system boot event
Expand Down Expand Up @@ -1703,6 +1669,4 @@ function elgg_views_boot() {


return function(\Elgg\EventsService $events, \Elgg\HooksRegistrationService $hooks) { return function(\Elgg\EventsService $events, \Elgg\HooksRegistrationService $hooks) {
$events->registerHandler('boot', 'system', 'elgg_views_boot'); $events->registerHandler('boot', 'system', 'elgg_views_boot');
$events->registerHandler('init', 'system', 'elgg_views_handle_deprecated_views');
$events->registerHandler('ready', 'system', '_elgg_views_deprecate_removed_views');
}; };
19 changes: 5 additions & 14 deletions mod/members/pages/members/index.php
Expand Up @@ -5,21 +5,12 @@
* @uses $vars['page'] The URL segment after members/ * @uses $vars['page'] The URL segment after members/
*/ */


if (elgg_view_exists('members/nav')) { $tabs = elgg_trigger_plugin_hook('members:config', 'tabs', null, array());
// legacy non-bundled plugin
$suggestion = "Instead use the (members:config, tabs) plugin hook to register tabs."; foreach ($tabs as $type => $values) {
$vars = array( $tabs[$type]['selected'] = ($vars['page'] == $type);
'selected' => $vars['page'],
);
$filter = elgg_view_deprecated('members/nav', $vars, $suggestion, 1.9);
} else {
$tabs = elgg_trigger_plugin_hook('members:config', 'tabs', null, array());

foreach ($tabs as $type => $values) {
$tabs[$type]['selected'] = ($vars['page'] == $type);
}
$filter = elgg_view('navigation/tabs', array('tabs' => $tabs));
} }
$filter = elgg_view('navigation/tabs', array('tabs' => $tabs));


$params = array( $params = array(
'options' => array('type' => 'user', 'full_view' => false), 'options' => array('type' => 'user', 'full_view' => false),
Expand Down
7 changes: 0 additions & 7 deletions views/default/css.php

This file was deleted.

2 changes: 0 additions & 2 deletions views/default/forms/plugins/settings/save.php
Expand Up @@ -19,8 +19,6 @@


if (elgg_view_exists("plugins/$plugin_id/{$type}settings")) { if (elgg_view_exists("plugins/$plugin_id/{$type}settings")) {
echo elgg_view("plugins/$plugin_id/{$type}settings", $vars); echo elgg_view("plugins/$plugin_id/{$type}settings", $vars);
} else {
echo elgg_view_deprecated("{$type}settings/$plugin_id/edit", $vars, "Use the view plugins/$plugin_id/{$type}settings", 1.8);
} }


echo '<div class="elgg-foot">'; echo '<div class="elgg-foot">';
Expand Down
18 changes: 0 additions & 18 deletions views/default/group/search/finishblurb.php

This file was deleted.

14 changes: 0 additions & 14 deletions views/default/group/search/startblurb.php

This file was deleted.

9 changes: 0 additions & 9 deletions views/default/icon/user/default.php
Expand Up @@ -46,22 +46,13 @@
$icontime = "default"; $icontime = "default";
} }


$js = elgg_extract('js', $vars, '');
if ($js) {
elgg_deprecated_notice("Passing 'js' to icon views is deprecated.", 1.8, 5);
}

$img_class = ''; $img_class = '';
if (isset($vars['img_class'])) { if (isset($vars['img_class'])) {
$img_class = $vars['img_class']; $img_class = $vars['img_class'];
} }




$use_hover = elgg_extract('use_hover', $vars, true); $use_hover = elgg_extract('use_hover', $vars, true);
if (isset($vars['override'])) {
elgg_deprecated_notice("Use 'use_hover' rather than 'override' with user avatars", 1.8, 5);
$use_hover = false;
}
if (isset($vars['hover'])) { if (isset($vars['hover'])) {
// only 1.8.0 was released with 'hover' as the key // only 1.8.0 was released with 'hover' as the key
$use_hover = $vars['hover']; $use_hover = $vars['hover'];
Expand Down
6 changes: 0 additions & 6 deletions views/default/input/calendar.php

This file was deleted.

6 changes: 0 additions & 6 deletions views/default/input/checkboxes.php
Expand Up @@ -73,12 +73,6 @@


$checkboxes = ''; $checkboxes = '';
foreach ($vars['options'] as $label => $value) { foreach ($vars['options'] as $label => $value) {
// @deprecated 1.8 Remove in 1.9
if (is_integer($label)) {
elgg_deprecated_notice('$vars[\'options\'] must be an associative array in input/checkboxes', 1.8);
$label = $value;
}

$input_vars['checked'] = in_array(elgg_strtolower($value), $values); $input_vars['checked'] = in_array(elgg_strtolower($value), $values);
$input_vars['value'] = $value; $input_vars['value'] = $value;
$input_vars['label'] = $label; $input_vars['label'] = $label;
Expand Down
6 changes: 0 additions & 6 deletions views/default/input/datepicker.php

This file was deleted.

9 changes: 0 additions & 9 deletions views/default/input/pulldown.php

This file was deleted.

6 changes: 0 additions & 6 deletions views/default/input/radio.php
Expand Up @@ -63,12 +63,6 @@
$vars['checked'] = in_array(elgg_strtolower($option), $value); $vars['checked'] = in_array(elgg_strtolower($option), $value);
$vars['value'] = $option; $vars['value'] = $option;


// handle indexed array where label is not specified
// @deprecated 1.8 Remove in 1.9
if (is_integer($label)) {
elgg_deprecated_notice('$vars[\'options\'] must be an associative array in input/radio', 1.8);
$label = $option;
}
$radio = elgg_format_element('input', $vars); $radio = elgg_format_element('input', $vars);
$radios .= "<li><label>{$radio}{$label}</label></li>"; $radios .= "<li><label>{$radio}{$label}</label></li>";
} }
Expand Down
4 changes: 0 additions & 4 deletions views/default/js/elgg.php
Expand Up @@ -76,8 +76,4 @@


require(['elgg']); // Forces the define() function to always run require(['elgg']); // Forces the define() function to always run


<?php
echo elgg_view_deprecated('js/initialise_elgg', array(), "Use the view js/elgg.", 1.8);
?>

elgg.trigger_hook('boot', 'system'); elgg.trigger_hook('boot', 'system');
3 changes: 0 additions & 3 deletions views/default/navigation/pagination.php
Expand Up @@ -32,9 +32,6 @@
// some views pass an empty string for base_url // some views pass an empty string for base_url
if (isset($vars['base_url']) && $vars['base_url']) { if (isset($vars['base_url']) && $vars['base_url']) {
$base_url = $vars['base_url']; $base_url = $vars['base_url'];
} else if (isset($vars['baseurl']) && $vars['baseurl']) {
elgg_deprecated_notice("Use 'base_url' instead of 'baseurl' for the navigation/pagination view", 1.8);
$base_url = $vars['baseurl'];
} elseif (elgg_is_xhr() && !empty($_SERVER['HTTP_REFERER'])) { } elseif (elgg_is_xhr() && !empty($_SERVER['HTTP_REFERER'])) {
$base_url = $_SERVER['HTTP_REFERER']; $base_url = $_SERVER['HTTP_REFERER'];
} else { } else {
Expand Down
11 changes: 0 additions & 11 deletions views/default/navigation/viewtype.php

This file was deleted.

3 changes: 0 additions & 3 deletions views/default/object/widget.php
Expand Up @@ -40,9 +40,6 @@
} else { } else {
if (elgg_view_exists("widgets/$handler/content")) { if (elgg_view_exists("widgets/$handler/content")) {
$content = elgg_view("widgets/$handler/content", $vars); $content = elgg_view("widgets/$handler/content", $vars);
} else {
elgg_deprecated_notice("widgets use content as the display view", 1.8);
$content = elgg_view("widgets/$handler/view", $vars);
} }
} }


Expand Down
13 changes: 0 additions & 13 deletions views/default/output/calendar.php

This file was deleted.

21 changes: 0 additions & 21 deletions views/default/output/confirmlink.php

This file was deleted.

7 changes: 1 addition & 6 deletions views/default/output/iframe.php
Expand Up @@ -8,12 +8,7 @@
* @uses $vars['src'] Source URL of the page * @uses $vars['src'] Source URL of the page
*/ */


if (!isset($vars['src']) && isset($vars['value'])) { $src = elgg_extract('src', $vars);
elgg_deprecated_notice('$vars[\'src\'] deprecated in output/iframe for $vars[\'src\']', 1.9);
$src = $vars['value'];
} else {
$src = elgg_extract('src', $vars);
}


$src = elgg_normalize_url($src); $src = elgg_normalize_url($src);
$vars['src'] = elgg_format_url($src); $vars['src'] = elgg_format_url($src);
Expand Down
3 changes: 0 additions & 3 deletions views/default/page/default.php
Expand Up @@ -15,9 +15,6 @@
// backward compatability support for plugins that are not using the new approach // backward compatability support for plugins that are not using the new approach
// of routing through admin. See reportedcontent plugin for a simple example. // of routing through admin. See reportedcontent plugin for a simple example.
if (elgg_get_context() == 'admin') { if (elgg_get_context() == 'admin') {
if (get_input('handler') != 'admin') {
elgg_deprecated_notice("admin plugins should route through 'admin'.", 1.8);
}
_elgg_admin_add_plugin_settings_menu(); _elgg_admin_add_plugin_settings_menu();
elgg_unregister_css('elgg'); elgg_unregister_css('elgg');
echo elgg_view('page/admin', $vars); echo elgg_view('page/admin', $vars);
Expand Down
2 changes: 0 additions & 2 deletions views/default/page/elements/foot.php
@@ -1,7 +1,5 @@
<?php <?php


echo elgg_view_deprecated('footer/analytics', array(), "Extend page/elements/foot instead", 1.8);

$elgg_init = elgg_view('js/initialize_elgg'); $elgg_init = elgg_view('js/initialize_elgg');
echo "<script>$elgg_init</script>"; echo "<script>$elgg_init</script>";


Expand Down
21 changes: 8 additions & 13 deletions views/default/page/elements/head.php
Expand Up @@ -39,16 +39,11 @@
// A non-empty script *must* come below the CSS links, otherwise Firefox will exhibit FOUC // A non-empty script *must* come below the CSS links, otherwise Firefox will exhibit FOUC
// See https://github.com/Elgg/Elgg/issues/8328 // See https://github.com/Elgg/Elgg/issues/8328
?> ?>
<script> <script>
<?php // Do not convert this to a regular function declaration. It gets redefined later. ?> <?php // Do not convert this to a regular function declaration. It gets redefined later. ?>
require = function () { require = function () {
// handled in the view "js/elgg" // handled in the view "js/elgg"
_require_queue.push(arguments); _require_queue.push(arguments);
}; };
_require_queue = []; _require_queue = [];
</script> </script>
<?php

echo elgg_view_deprecated('page/elements/shortcut_icon', array(), "Use the 'head', 'page' plugin hook.", 1.9);

echo elgg_view_deprecated('metatags', array(), "Use the 'head', 'page' plugin hook.", 1.8);

0 comments on commit 805ecb1

Please sign in to comment.