Projet

Général

Profil

Révision b4adf10d

Ajouté par Assos Assos il y a plus de 9 ans

Udpate to 7.33

Voir les différences:

drupal7/modules/block/block.module
848 848
 *   An array of visible blocks as expected by drupal_render().
849 849
 */
850 850
function _block_render_blocks($region_blocks) {
851
  // Block caching is not compatible with node access modules. We also
852
  // preserve the submission of forms in blocks, by fetching from cache only
851
  $cacheable = TRUE;
852

  
853
  // We preserve the submission of forms in blocks, by fetching from cache only
853 854
  // if the request method is 'GET' (or 'HEAD').
854
  $cacheable = !count(module_implements('node_grants')) && ($_SERVER['REQUEST_METHOD'] == 'GET' || $_SERVER['REQUEST_METHOD'] == 'HEAD');
855
  if ($_SERVER['REQUEST_METHOD'] != 'GET' && $_SERVER['REQUEST_METHOD'] != 'HEAD') {
856
    $cacheable = FALSE;
857
  }
858
  // Block caching is not usually compatible with node access modules, so by
859
  // default it is disabled when node access modules exist. However, it can be
860
  // allowed by using the variable 'block_cache_bypass_node_grants'.
861
  elseif (!variable_get('block_cache_bypass_node_grants', FALSE) && count(module_implements('node_grants'))) {
862
    $cacheable = FALSE;
863
  }
855 864

  
856 865
  // Proceed to loop over all blocks in order to compute their respective cache
857 866
  // identifiers; this allows us to do one single cache_get_multiple() call
......
1054 1063
 * Implements hook_form_FORM_ID_alter().
1055 1064
 */
1056 1065
function block_form_system_performance_settings_alter(&$form, &$form_state) {
1057
  $disabled = count(module_implements('node_grants'));
1066
  $disabled = (!variable_get('block_cache_bypass_node_grants', FALSE) && count(module_implements('node_grants')));
1058 1067
  $form['caching']['block_cache'] = array(
1059 1068
    '#type' => 'checkbox',
1060 1069
    '#title' => t('Cache blocks'),

Formats disponibles : Unified diff