Browse Source

[up] Ctools 7.x-1.15

opi 6 years ago
parent
commit
2d15fd5530
35 changed files with 104 additions and 104 deletions
  1. 3 5
      sites/all/modules/ctools/bulk_export/bulk_export.info
  2. 1 1
      sites/all/modules/ctools/css/dropbutton.css
  3. 3 4
      sites/all/modules/ctools/ctools.info
  4. 3 0
      sites/all/modules/ctools/ctools.module
  5. 3 5
      sites/all/modules/ctools/ctools_access_ruleset/ctools_access_ruleset.info
  6. 3 5
      sites/all/modules/ctools/ctools_ajax_sample/ctools_ajax_sample.info
  7. 3 5
      sites/all/modules/ctools/ctools_custom_content/ctools_custom_content.info
  8. 3 5
      sites/all/modules/ctools/ctools_plugin_example/ctools_plugin_example.info
  9. 7 5
      sites/all/modules/ctools/ctools_plugin_example/ctools_plugin_example.pages_default.inc
  10. 1 1
      sites/all/modules/ctools/drush/ctools.drush.inc
  11. 2 2
      sites/all/modules/ctools/includes/dropbutton.theme.inc
  12. 1 1
      sites/all/modules/ctools/includes/export-ui.inc
  13. 1 1
      sites/all/modules/ctools/includes/wizard.inc
  14. 23 15
      sites/all/modules/ctools/js/modal.js
  15. 3 5
      sites/all/modules/ctools/page_manager/page_manager.info
  16. 8 3
      sites/all/modules/ctools/page_manager/plugins/tasks/page.inc
  17. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_attachments.inc
  18. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_author.inc
  19. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_book.inc
  20. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_buttons.inc
  21. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_comment.inc
  22. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_language.inc
  23. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_log.inc
  24. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_menu.inc
  25. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_path.inc
  26. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_publishing.inc
  27. 1 1
      sites/all/modules/ctools/plugins/content_types/node_form/node_form_title.inc
  28. 1 0
      sites/all/modules/ctools/plugins/contexts/user.inc
  29. 8 4
      sites/all/modules/ctools/plugins/export_ui/ctools_export_ui.class.php
  30. 3 5
      sites/all/modules/ctools/stylizer/stylizer.info
  31. 3 5
      sites/all/modules/ctools/term_depth/term_depth.info
  32. 3 5
      sites/all/modules/ctools/tests/ctools_export_test/ctools_export_test.info
  33. 3 5
      sites/all/modules/ctools/tests/ctools_plugin_test.info
  34. 1 1
      sites/all/modules/ctools/views_content/plugins/relationships/node_from_view.inc
  35. 3 5
      sites/all/modules/ctools/views_content/views_content.info

+ 3 - 5
sites/all/modules/ctools/bulk_export/bulk_export.info

@@ -3,11 +3,9 @@ description = Performs bulk exporting of data objects known about by Chaos tools
 core = 7.x
 core = 7.x
 dependencies[] = ctools
 dependencies[] = ctools
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 1 - 1
sites/all/modules/ctools/css/dropbutton.css

@@ -19,7 +19,6 @@
   height: auto;
   height: auto;
   position: absolute;
   position: absolute;
   right: 0;
   right: 0;
-  text-indent: -9999px; /* LTR */
   top: 0;
   top: 0;
   width: 17px;
   width: 17px;
 }
 }
@@ -50,6 +49,7 @@
   right: 6px;
   right: 6px;
   position: absolute;
   position: absolute;
   top: 0.75em;
   top: 0.75em;
+  white-space: nowrap;
 }
 }
 
 
 .ctools-dropbutton-processed.open .ctools-twisty {
 .ctools-dropbutton-processed.open .ctools-twisty {

+ 3 - 4
sites/all/modules/ctools/ctools.info

@@ -19,9 +19,8 @@ files[] = tests/object_cache.test
 files[] = tests/object_cache_unit.test
 files[] = tests/object_cache_unit.test
 files[] = tests/page_tokens.test
 files[] = tests/page_tokens.test
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 3 - 0
sites/all/modules/ctools/ctools.module

@@ -22,6 +22,9 @@ define('CTOOLS_API_VERSION', '2.0.9');
  * simply include a dependency line in that module's info file, e.g.:
  * simply include a dependency line in that module's info file, e.g.:
  *   ; Requires CTools v7.x-1.4 or newer.
  *   ; Requires CTools v7.x-1.4 or newer.
  *   dependencies[] = ctools (>=1.4)
  *   dependencies[] = ctools (>=1.4)
+ *
+ * @deprecated in CTools 1.15 and will be removed before CTools 2.0.0.
+ *   Use the version provided by the drupal.org packaging system.
  */
  */
 define('CTOOLS_MODULE_VERSION', '7.x-1.13');
 define('CTOOLS_MODULE_VERSION', '7.x-1.13');
 
 

+ 3 - 5
sites/all/modules/ctools/ctools_access_ruleset/ctools_access_ruleset.info

@@ -2,12 +2,10 @@ name = Custom rulesets
 description = Create custom, exportable, reusable access rulesets for applications like Panels.
 description = Create custom, exportable, reusable access rulesets for applications like Panels.
 core = 7.x
 core = 7.x
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 dependencies[] = ctools
 dependencies[] = ctools
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 3 - 5
sites/all/modules/ctools/ctools_ajax_sample/ctools_ajax_sample.info

@@ -1,13 +1,11 @@
 name = Chaos Tools (CTools) AJAX Example
 name = Chaos Tools (CTools) AJAX Example
 description = Shows how to use the power of Chaos AJAX.
 description = Shows how to use the power of Chaos AJAX.
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 dependencies[] = ctools
 dependencies[] = ctools
 core = 7.x
 core = 7.x
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 3 - 5
sites/all/modules/ctools/ctools_custom_content/ctools_custom_content.info

@@ -2,12 +2,10 @@ name = Custom content panes
 description = Create custom, exportable, reusable content panes for applications like Panels.
 description = Create custom, exportable, reusable content panes for applications like Panels.
 core = 7.x
 core = 7.x
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 dependencies[] = ctools
 dependencies[] = ctools
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 3 - 5
sites/all/modules/ctools/ctools_plugin_example/ctools_plugin_example.info

@@ -1,16 +1,14 @@
 name = Chaos Tools (CTools) Plugin Example
 name = Chaos Tools (CTools) Plugin Example
 description = Shows how an external module can provide ctools plugins (for Panels, etc.).
 description = Shows how an external module can provide ctools plugins (for Panels, etc.).
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 dependencies[] = ctools
 dependencies[] = ctools
 dependencies[] = panels
 dependencies[] = panels
 dependencies[] = page_manager
 dependencies[] = page_manager
 dependencies[] = advanced_help
 dependencies[] = advanced_help
 core = 7.x
 core = 7.x
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 7 - 5
sites/all/modules/ctools/ctools_plugin_example/ctools_plugin_example.pages_default.inc

@@ -95,6 +95,7 @@ function ctools_plugin_example_default_page_manager_pages() {
     'access' => array(
     'access' => array(
       'logic' => 'and',
       'logic' => 'and',
     ),
     ),
+    'pipeline' => 'standard',
   );
   );
   $display = new panels_display();
   $display = new panels_display();
   $display->layout = 'threecol_33_34_33_stacked';
   $display->layout = 'threecol_33_34_33_stacked';
@@ -154,7 +155,7 @@ function ctools_plugin_example_default_page_manager_pages() {
   $pane->configuration = array(
   $pane->configuration = array(
     'title' => 'Long Arg Visibility Block',
     'title' => 'Long Arg Visibility Block',
     'body' => 'This block will be here when the argument is longer than configured arg length. It uses the \'arg_length\' access plugin to test against the length of the argument used for Simplecontext.',
     'body' => 'This block will be here when the argument is longer than configured arg length. It uses the \'arg_length\' access plugin to test against the length of the argument used for Simplecontext.',
-    'format' => '1',
+    'format' => 'filtered_html',
     'substitute' => 1,
     'substitute' => 1,
   );
   );
   $pane->cache = array();
   $pane->cache = array();
@@ -185,7 +186,7 @@ function ctools_plugin_example_default_page_manager_pages() {
   $pane->configuration = array(
   $pane->configuration = array(
     'title' => 'Short Arg Visibility',
     'title' => 'Short Arg Visibility',
     'body' => 'This block appears when the simplecontext argument is <i>less than</i> the configured length.',
     'body' => 'This block appears when the simplecontext argument is <i>less than</i> the configured length.',
-    'format' => '1',
+    'format' => 'filtered_html',
     'substitute' => 1,
     'substitute' => 1,
   );
   );
   $pane->cache = array();
   $pane->cache = array();
@@ -297,7 +298,7 @@ function ctools_plugin_example_default_page_manager_pages() {
     item1 is %sc:item1
     item1 is %sc:item1
     item2 is %sc:item2
     item2 is %sc:item2
     description is %sc:description',
     description is %sc:description',
-    'format' => '1',
+    'format' => 'filtered_html',
     'substitute' => 1,
     'substitute' => 1,
   );
   );
   $pane->cache = array();
   $pane->cache = array();
@@ -363,7 +364,7 @@ function ctools_plugin_example_default_page_manager_pages() {
     'body' => 'The CTools Plugin Example module (and this panel page) are just here to demonstrate how to build CTools plugins.
     'body' => 'The CTools Plugin Example module (and this panel page) are just here to demonstrate how to build CTools plugins.
 
 
             ',
             ',
-    'format' => '2',
+    'format' => 'full_html',
     'substitute' => 1,
     'substitute' => 1,
   );
   );
   $pane->cache = array();
   $pane->cache = array();
@@ -408,6 +409,7 @@ function ctools_plugin_example_default_page_manager_pages() {
     'css' => '',
     'css' => '',
     'contexts' => array(),
     'contexts' => array(),
     'relationships' => array(),
     'relationships' => array(),
+    'pipeline' => 'standard',
   );
   );
   $display = new panels_display();
   $display = new panels_display();
   $display->layout = 'onecol';
   $display->layout = 'onecol';
@@ -428,7 +430,7 @@ function ctools_plugin_example_default_page_manager_pages() {
   $pane->configuration = array(
   $pane->configuration = array(
     'title' => 'Use this page with an argument',
     'title' => 'Use this page with an argument',
     'body' => 'This demo page works if you use an argument, like <a href="ctools_plugin_example/xxxxx">ctools_plugin_example/xxxxx</a>.',
     'body' => 'This demo page works if you use an argument, like <a href="ctools_plugin_example/xxxxx">ctools_plugin_example/xxxxx</a>.',
-    'format' => '1',
+    'format' => 'filtered_html',
     'substitute' => NULL,
     'substitute' => NULL,
   );
   );
   $pane->cache = array();
   $pane->cache = array();

+ 1 - 1
sites/all/modules/ctools/drush/ctools.drush.inc

@@ -452,6 +452,7 @@ function ctools_drush_export_info() {
  * all arg handling etc in one place.
  * all arg handling etc in one place.
  */
  */
 function ctools_drush_export_op_command() {
 function ctools_drush_export_op_command() {
+  $args = func_get_args();
   // Get all info for the current drush command.
   // Get all info for the current drush command.
   $command = drush_get_command();
   $command = drush_get_command();
   $op = '';
   $op = '';
@@ -495,7 +496,6 @@ function ctools_drush_export_op_command() {
     }
     }
   }
   }
   else {
   else {
-    $args = func_get_args();
     // Table name should always be first arg...
     // Table name should always be first arg...
     $table_name = array_shift($args);
     $table_name = array_shift($args);
     // Any additional args are assumed to be exportable names.
     // Any additional args are assumed to be exportable names.

+ 2 - 2
sites/all/modules/ctools/includes/dropbutton.theme.inc

@@ -104,10 +104,10 @@ function theme_links__ctools_dropbutton($vars) {
 
 
       $output .= '<div class="ctools-link">';
       $output .= '<div class="ctools-link">';
       if ($vars['image']) {
       if ($vars['image']) {
-        $output .= '<a href="#" class="ctools-twisty ctools-image">' . $vars['title'] . '</a>';
+        $output .= '<a href="#" class="ctools-twisty ctools-image"><span class="element-invisible">' . $vars['title'] . '</span></a>';
       }
       }
       else {
       else {
-        $output .= '<a href="#" class="ctools-twisty ctools-text">' . $vars['title'] . '</a>';
+        $output .= '<a href="#" class="ctools-twisty ctools-text"><span class="element-invisible">' . $vars['title'] . '</span></a>';
       }
       }
       // ctools-link.
       // ctools-link.
       $output .= '</div>';
       $output .= '</div>';

+ 1 - 1
sites/all/modules/ctools/includes/export-ui.inc

@@ -333,7 +333,7 @@ function ctools_export_ui_process(&$plugin, $info) {
 
 
   $plugin['strings']['confirmation']['delete'] += array(
   $plugin['strings']['confirmation']['delete'] += array(
     'question' => t('Are you sure you want to delete %title?'),
     'question' => t('Are you sure you want to delete %title?'),
-    'information' => t('This action will permanently remove this item from your database..'),
+    'information' => t('This action will permanently remove this item from your database.'),
     'success' => t('The item has been deleted.'),
     'success' => t('The item has been deleted.'),
   );
   );
 
 

+ 1 - 1
sites/all/modules/ctools/includes/wizard.inc

@@ -503,7 +503,7 @@ function ctools_wizard_defaults(&$form_info) {
   $form_info = $form_info + $defaults;
   $form_info = $form_info + $defaults;
   // Set form callbacks if they aren't defined.
   // Set form callbacks if they aren't defined.
   foreach ($form_info['forms'] as $step => $params) {
   foreach ($form_info['forms'] as $step => $params) {
-    if (!$params['form id']) {
+    if (empty($params['form id'])) {
       $form_callback = $hook . '_' . $step . '_form';
       $form_callback = $hook . '_' . $step . '_form';
       $form_info['forms'][$step]['form id'] = $form_callback;
       $form_info['forms'][$step]['form id'] = $form_callback;
     }
     }

+ 23 - 15
sites/all/modules/ctools/js/modal.js

@@ -378,7 +378,7 @@
       }
       }
     }
     }
 
 
-    if (!speed) {
+    if (!speed && 0 !== speed) {
       speed = 'fast';
       speed = 'fast';
     }
     }
 
 
@@ -555,7 +555,7 @@
     // Create our content div, get the dimensions, and hide it
     // Create our content div, get the dimensions, and hide it
     var modalContent = $('#modalContent').css('top','-1000px');
     var modalContent = $('#modalContent').css('top','-1000px');
     var $modalHeader = modalContent.find('.modal-header');
     var $modalHeader = modalContent.find('.modal-header');
-    var mdcTop = wt + ( winHeight / 2 ) - (  modalContent.outerHeight() / 2);
+    var mdcTop = wt + Math.max((winHeight / 2) - (modalContent.outerHeight() / 2), 0);
     var mdcLeft = ( winWidth / 2 ) - ( modalContent.outerWidth() / 2);
     var mdcLeft = ( winWidth / 2 ) - ( modalContent.outerWidth() / 2);
     $('#modalBackdrop').css(css).css('top', 0).css('height', docHeight + 'px').css('width', docWidth + 'px').show();
     $('#modalBackdrop').css(css).css('top', 0).css('height', docHeight + 'px').css('width', docWidth + 'px').show();
     modalContent.css({top: mdcTop + 'px', left: mdcLeft + 'px'}).hide()[animation](speed);
     modalContent.css({top: mdcTop + 'px', left: mdcLeft + 'px'}).hide()[animation](speed);
@@ -588,35 +588,43 @@
       $('body').unbind( 'keypress', modalEventHandler );
       $('body').unbind( 'keypress', modalEventHandler );
       $('body').unbind( 'keydown', modalTabTrapHandler );
       $('body').unbind( 'keydown', modalTabTrapHandler );
       $('.close', $modalHeader).unbind('click', modalContentClose);
       $('.close', $modalHeader).unbind('click', modalContentClose);
-      $('body').unbind('keypress', modalEventEscapeCloseHandler);
+      $(document).unbind('keydown', modalEventEscapeCloseHandler);
       $(document).trigger('CToolsDetachBehaviors', $('#modalContent'));
       $(document).trigger('CToolsDetachBehaviors', $('#modalContent'));
 
 
-      // Set our animation parameters and use them
-      if ( animation == 'fadeIn' ) animation = 'fadeOut';
-      if ( animation == 'slideDown' ) animation = 'slideUp';
-      if ( animation == 'show' ) animation = 'hide';
+      // Closing animation.
+      switch (animation) {
+        case 'fadeIn':
+          modalContent.fadeOut(speed, modalContentRemove);
+          break;
 
 
-      // Close the content
-      modalContent.hide()[animation](speed);
+        case 'slideDown':
+          modalContent.slideUp(speed, modalContentRemove);
+          break;
 
 
-      // Remove the content
+        case 'show':
+          modalContent.hide(speed, modalContentRemove);
+          break;
+      }
+    }
+
+    // Remove the content.
+    modalContentRemove = function () {
       $('#modalContent').remove();
       $('#modalContent').remove();
       $('#modalBackdrop').remove();
       $('#modalBackdrop').remove();
 
 
-      // Restore focus to where it was before opening the dialog
+      // Restore focus to where it was before opening the dialog.
       $(oldFocus).focus();
       $(oldFocus).focus();
     };
     };
 
 
     // Move and resize the modalBackdrop and modalContent on window resize.
     // Move and resize the modalBackdrop and modalContent on window resize.
-    modalContentResize = function(){
-
+    modalContentResize = function () {
       // Reset the backdrop height/width to get accurate document size.
       // Reset the backdrop height/width to get accurate document size.
       $('#modalBackdrop').css('height', '').css('width', '');
       $('#modalBackdrop').css('height', '').css('width', '');
 
 
       // Position code lifted from:
       // Position code lifted from:
       // http://www.quirksmode.org/viewport/compatibility.html
       // http://www.quirksmode.org/viewport/compatibility.html
       if (self.pageYOffset) { // all except Explorer
       if (self.pageYOffset) { // all except Explorer
-      var wt = self.pageYOffset;
+        var wt = self.pageYOffset;
       } else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
       } else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
         var wt = document.documentElement.scrollTop;
         var wt = document.documentElement.scrollTop;
       } else if (document.body) { // all other Explorers
       } else if (document.body) { // all other Explorers
@@ -632,7 +640,7 @@
 
 
       // Get where we should move content to
       // Get where we should move content to
       var modalContent = $('#modalContent');
       var modalContent = $('#modalContent');
-      var mdcTop = wt + ( winHeight / 2 ) - ( modalContent.outerHeight() / 2);
+      var mdcTop = wt + Math.max((winHeight / 2) - (modalContent.outerHeight() / 2), 0);
       var mdcLeft = ( winWidth / 2 ) - ( modalContent.outerWidth() / 2);
       var mdcLeft = ( winWidth / 2 ) - ( modalContent.outerWidth() / 2);
 
 
       // Apply the changes
       // Apply the changes

+ 3 - 5
sites/all/modules/ctools/page_manager/page_manager.info

@@ -3,13 +3,11 @@ description = Provides a UI and API to manage pages within the site.
 core = 7.x
 core = 7.x
 dependencies[] = ctools
 dependencies[] = ctools
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 
 
 files[] = tests/head_links.test
 files[] = tests/head_links.test
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 8 - 3
sites/all/modules/ctools/page_manager/plugins/tasks/page.inc

@@ -261,6 +261,7 @@ function page_manager_page_theme(&$items, $task) {
  *   creating named arguments in the path.
  *   creating named arguments in the path.
  */
  */
 function page_manager_page_execute($subtask_id) {
 function page_manager_page_execute($subtask_id) {
+  $func_args = func_get_args();
   $page = page_manager_page_load($subtask_id);
   $page = page_manager_page_load($subtask_id);
   $task = page_manager_get_task($page->task);
   $task = page_manager_get_task($page->task);
   $subtask = page_manager_get_task_subtask($task, $subtask_id);
   $subtask = page_manager_get_task_subtask($task, $subtask_id);
@@ -268,7 +269,7 @@ function page_manager_page_execute($subtask_id) {
   // Turn the contexts into a properly keyed array.
   // Turn the contexts into a properly keyed array.
   $contexts = array();
   $contexts = array();
   $args = array();
   $args = array();
-  foreach (func_get_args() as $count => $arg) {
+  foreach ($func_args as $count => $arg) {
     if (is_object($arg) && get_class($arg) == 'ctools_context') {
     if (is_object($arg) && get_class($arg) == 'ctools_context') {
       $contexts[$arg->id] = $arg;
       $contexts[$arg->id] = $arg;
       $args[] = $arg->original_argument;
       $args[] = $arg->original_argument;
@@ -430,7 +431,7 @@ function page_manager_page_save(&$page) {
 /**
 /**
  * Remove a page subtask.
  * Remove a page subtask.
  */
  */
-function page_manager_page_delete($page) {
+function page_manager_page_delete($page, $skip_menu_rebuild = FALSE) {
   $task = page_manager_get_task($page->task);
   $task = page_manager_get_task($page->task);
   if ($function = ctools_plugin_get_function($task, 'delete')) {
   if ($function = ctools_plugin_get_function($task, 'delete')) {
     $function($page);
     $function($page);
@@ -448,7 +449,11 @@ function page_manager_page_delete($page) {
   // rebuild this page again.
   // rebuild this page again.
   ctools_include('export');
   ctools_include('export');
   ctools_export_load_object_reset('page_manager_pages');
   ctools_export_load_object_reset('page_manager_pages');
-  menu_rebuild();
+  // Allow menu rebuild to be skipped when calling code is deleting multiple
+  // pages.
+  if (!$skip_menu_rebuild) {
+    menu_rebuild();
+  }
 }
 }
 
 
 /**
 /**

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_attachments.inc

@@ -21,7 +21,7 @@ if (module_exists('upload')) {
 
 
 function ctools_node_form_attachments_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_attachments_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
 
 
   $block->title = t('Attach files');
   $block->title = t('Attach files');
   $block->delta = 'url-path-options';
   $block->delta = 'url-path-options';

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_author.inc

@@ -17,7 +17,7 @@ $plugin = array(
 
 
 function ctools_node_form_author_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_author_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
 
 
   $block->title = t('Authoring information');
   $block->title = t('Authoring information');
   $block->delta = 'author-options';
   $block->delta = 'author-options';

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_book.inc

@@ -21,7 +21,7 @@ if (module_exists('book')) {
 
 
 function ctools_node_form_book_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_book_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
 
 
   $block->title = t('Book outline');
   $block->title = t('Book outline');
   $block->delta = 'book-outline';
   $block->delta = 'book-outline';

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_buttons.inc

@@ -17,7 +17,7 @@ $plugin = array(
 
 
 function ctools_node_form_buttons_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_buttons_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
 
 
   $block->title = '';
   $block->title = '';
   $block->delta = 'buttons';
   $block->delta = 'buttons';

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_comment.inc

@@ -21,7 +21,7 @@ if (module_exists('comment')) {
 
 
 function ctools_node_form_comment_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_comment_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
 
 
   $block->title = t('Comment options');
   $block->title = t('Comment options');
   $block->delta = 'comment-options';
   $block->delta = 'comment-options';

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_language.inc

@@ -17,7 +17,7 @@ $plugin = array(
 
 
 function ctools_node_form_language_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_language_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
 
 
   $block->delta = 'language-options';
   $block->delta = 'language-options';
 
 

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_log.inc

@@ -17,7 +17,7 @@ $plugin = array(
 
 
 function ctools_node_form_log_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_log_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
   $block->title = t('Revision information');
   $block->title = t('Revision information');
 
 
   if (isset($context->form)) {
   if (isset($context->form)) {

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_menu.inc

@@ -21,7 +21,7 @@ if (module_exists('menu')) {
 
 
 function ctools_node_form_menu_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_menu_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
 
 
   $block->title = t('Menu options');
   $block->title = t('Menu options');
   $block->delta = 'menu-options';
   $block->delta = 'menu-options';

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_path.inc

@@ -21,7 +21,7 @@ if (module_exists('path')) {
 
 
 function ctools_node_form_path_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_path_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
 
 
   $block->title = t('URL path options');
   $block->title = t('URL path options');
   $block->delta = 'url-path-options';
   $block->delta = 'url-path-options';

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_publishing.inc

@@ -23,7 +23,7 @@ function ctools_node_form_publishing_content_type_render($subtype, $conf, $panel
   $block = new stdClass();
   $block = new stdClass();
 
 
   $block->title = t('Publishing options');
   $block->title = t('Publishing options');
-  $block->module = t('node_form');
+  $block->module = 'node_form';
   $block->delta = 'publishing-options';
   $block->delta = 'publishing-options';
 
 
   if (isset($context->form)) {
   if (isset($context->form)) {

+ 1 - 1
sites/all/modules/ctools/plugins/content_types/node_form/node_form_title.inc

@@ -17,7 +17,7 @@ $plugin = array(
 
 
 function ctools_node_form_title_content_type_render($subtype, $conf, $panel_args, &$context) {
 function ctools_node_form_title_content_type_render($subtype, $conf, $panel_args, &$context) {
   $block = new stdClass();
   $block = new stdClass();
-  $block->module = t('node_form');
+  $block->module = 'node_form';
 
 
   $block->delta = 'title-options';
   $block->delta = 'title-options';
 
 

+ 1 - 0
sites/all/modules/ctools/plugins/contexts/user.inc

@@ -152,6 +152,7 @@ function ctools_context_user_settings_form_submit($form, &$form_state) {
  */
  */
 function ctools_context_user_convert_list() {
 function ctools_context_user_convert_list() {
   $tokens = token_info();
   $tokens = token_info();
+  $list = array();
   foreach ($tokens['tokens']['user'] as $id => $info) {
   foreach ($tokens['tokens']['user'] as $id => $info) {
     if (!isset($list[$id])) {
     if (!isset($list[$id])) {
       $list[$id] = $info['name'];
       $list[$id] = $info['name'];

+ 8 - 4
sites/all/modules/ctools/plugins/export_ui/ctools_export_ui.class.php

@@ -644,6 +644,7 @@ class ctools_export_ui {
   }
   }
 
 
   public function add_page($js, $input, $step = NULL) {
   public function add_page($js, $input, $step = NULL) {
+    $args = func_get_args();
     drupal_set_title($this->get_page_title('add'), PASS_THROUGH);
     drupal_set_title($this->get_page_title('add'), PASS_THROUGH);
 
 
     // If a step not set, they are trying to create a new item. If a step
     // If a step not set, they are trying to create a new item. If a step
@@ -666,7 +667,7 @@ class ctools_export_ui {
       'no_redirect' => TRUE,
       'no_redirect' => TRUE,
       'step' => $step,
       'step' => $step,
       // Store these in case additional args are needed.
       // Store these in case additional args are needed.
-      'function args' => func_get_args(),
+      'function args' => $args,
     );
     );
 
 
     $output = $this->edit_execute_form($form_state);
     $output = $this->edit_execute_form($form_state);
@@ -681,6 +682,7 @@ class ctools_export_ui {
    * Main entry point to edit an item.
    * Main entry point to edit an item.
    */
    */
   public function edit_page($js, $input, $item, $step = NULL) {
   public function edit_page($js, $input, $item, $step = NULL) {
+    $args = func_get_args();
     drupal_set_title($this->get_page_title('edit', $item), PASS_THROUGH);
     drupal_set_title($this->get_page_title('edit', $item), PASS_THROUGH);
 
 
     // Check to see if there is a cached item to get if we're using the wizard.
     // Check to see if there is a cached item to get if we're using the wizard.
@@ -702,7 +704,7 @@ class ctools_export_ui {
       'no_redirect' => TRUE,
       'no_redirect' => TRUE,
       'step' => $step,
       'step' => $step,
       // Store these in case additional args are needed.
       // Store these in case additional args are needed.
-      'function args' => func_get_args(),
+      'function args' => $args,
     );
     );
 
 
     $output = $this->edit_execute_form($form_state);
     $output = $this->edit_execute_form($form_state);
@@ -717,6 +719,7 @@ class ctools_export_ui {
    * Main entry point to clone an item.
    * Main entry point to clone an item.
    */
    */
   public function clone_page($js, $input, $original, $step = NULL) {
   public function clone_page($js, $input, $original, $step = NULL) {
+    $args = func_get_args();
     drupal_set_title($this->get_page_title('clone', $original), PASS_THROUGH);
     drupal_set_title($this->get_page_title('clone', $original), PASS_THROUGH);
 
 
     // If a step not set, they are trying to create a new clone. If a step
     // If a step not set, they are trying to create a new clone. If a step
@@ -756,7 +759,7 @@ class ctools_export_ui {
       'no_redirect' => TRUE,
       'no_redirect' => TRUE,
       'step' => $step,
       'step' => $step,
       // Store these in case additional args are needed.
       // Store these in case additional args are needed.
-      'function args' => func_get_args(),
+      'function args' => $args,
     );
     );
 
 
     $output = $this->edit_execute_form($form_state);
     $output = $this->edit_execute_form($form_state);
@@ -1237,6 +1240,7 @@ class ctools_export_ui {
    * Page callback to import information for an exportable item.
    * Page callback to import information for an exportable item.
    */
    */
   public function import_page($js, $input, $step = NULL) {
   public function import_page($js, $input, $step = NULL) {
+    $args = func_get_args();
     drupal_set_title($this->get_page_title('import'), PASS_THROUGH);
     drupal_set_title($this->get_page_title('import'), PASS_THROUGH);
     // Import is basically a multi step wizard form, so let's go ahead and
     // Import is basically a multi step wizard form, so let's go ahead and
     // use CTools' wizard.inc for it.
     // use CTools' wizard.inc for it.
@@ -1261,7 +1265,7 @@ class ctools_export_ui {
       'no_redirect' => TRUE,
       'no_redirect' => TRUE,
       'step' => $step,
       'step' => $step,
       // Store these in case additional args are needed.
       // Store these in case additional args are needed.
-      'function args' => func_get_args(),
+      'function args' => $args,
     );
     );
 
 
     // import always uses the wizard.
     // import always uses the wizard.

+ 3 - 5
sites/all/modules/ctools/stylizer/stylizer.info

@@ -2,13 +2,11 @@ name = Stylizer
 description = Create custom styles for applications such as Panels.
 description = Create custom styles for applications such as Panels.
 core = 7.x
 core = 7.x
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 dependencies[] = ctools
 dependencies[] = ctools
 dependencies[] = color
 dependencies[] = color
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 3 - 5
sites/all/modules/ctools/term_depth/term_depth.info

@@ -3,11 +3,9 @@ description = Controls access to context based upon term depth
 core = 7.x
 core = 7.x
 dependencies[] = ctools
 dependencies[] = ctools
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 3 - 5
sites/all/modules/ctools/tests/ctools_export_test/ctools_export_test.info

@@ -2,15 +2,13 @@ name = CTools export test
 description = CTools export test module
 description = CTools export test module
 core = 7.x
 core = 7.x
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 dependencies[] = ctools
 dependencies[] = ctools
 hidden = TRUE
 hidden = TRUE
 
 
 files[] = ctools_export.test
 files[] = ctools_export.test
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 3 - 5
sites/all/modules/ctools/tests/ctools_plugin_test.info

@@ -1,14 +1,12 @@
 name = Chaos tools plugins test
 name = Chaos tools plugins test
 description = Provides hooks for testing ctools plugins.
 description = Provides hooks for testing ctools plugins.
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 core = 7.x
 core = 7.x
 dependencies[] = ctools
 dependencies[] = ctools
 hidden = TRUE
 hidden = TRUE
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"

+ 1 - 1
sites/all/modules/ctools/views_content/plugins/relationships/node_from_view.inc

@@ -33,7 +33,7 @@ function views_content_node_from_view_context($context, $conf, $placeholder = FA
   views_content_context_get_output($context);
   views_content_context_get_output($context);
 
 
   $row = intval($conf['row']) - 1;
   $row = intval($conf['row']) - 1;
-  if (isset($view->result[$row])) {
+  if (isset($view->result[$row]) && isset($view->base_field) && isset($view->result[$row]->{$view->base_field})) {
     $nid = $view->result[$row]->{$view->base_field};
     $nid = $view->result[$row]->{$view->base_field};
     if ($nid) {
     if ($nid) {
       $node = node_load($nid);
       $node = node_load($nid);

+ 3 - 5
sites/all/modules/ctools/views_content/views_content.info

@@ -5,14 +5,12 @@ dependencies[] = ctools
 dependencies[] = views
 dependencies[] = views
 core = 7.x
 core = 7.x
 package = Chaos tool suite
 package = Chaos tool suite
-version = CTOOLS_MODULE_VERSION
 files[] = plugins/views/views_content_plugin_display_ctools_context.inc
 files[] = plugins/views/views_content_plugin_display_ctools_context.inc
 files[] = plugins/views/views_content_plugin_display_panel_pane.inc
 files[] = plugins/views/views_content_plugin_display_panel_pane.inc
 files[] = plugins/views/views_content_plugin_style_ctools_context.inc
 files[] = plugins/views/views_content_plugin_style_ctools_context.inc
 
 
-; Information added by Drupal.org packaging script on 2018-02-24
-version = "7.x-1.14"
+; Information added by Drupal.org packaging script on 2019-02-08
+version = "7.x-1.15"
 core = "7.x"
 core = "7.x"
 project = "ctools"
 project = "ctools"
-datestamp = "1519455788"
-
+datestamp = "1549603691"