Projet

Général

Profil

Révision 42e6daf3

Ajouté par Julien Enselme il y a environ 10 ans

Update drupal 7.26 -> 7.27

Voir les différences:

drupal7/CHANGELOG.txt
1 1

  
2
Drupal 7.27, 2014-04-16
3
----------------------
4
- Fixed security issues (information disclosure). See SA-CORE-2014-002.
5

  
2 6
Drupal 7.26, 2014-01-15
3 7
----------------------
4 8
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2014-001.
drupal7/includes/ajax.inc
308 308
 * pulls the form info from $_POST.
309 309
 *
310 310
 * @return
311
 *   An array containing the $form and $form_state. Use the list() function
312
 *   to break these apart:
311
 *   An array containing the $form, $form_state, $form_id, $form_build_id and an
312
 *   initial list of Ajax $commands. Use the list() function to break these
313
 *   apart:
313 314
 *   @code
314
 *     list($form, $form_state, $form_id, $form_build_id) = ajax_get_form();
315
 *     list($form, $form_state, $form_id, $form_build_id, $commands) = ajax_get_form();
315 316
 *   @endcode
316 317
 */
317 318
function ajax_get_form() {
......
331 332
    drupal_exit();
332 333
  }
333 334

  
335
  // When a page level cache is enabled, the form-build id might have been
336
  // replaced from within form_get_cache. If this is the case, it is also
337
  // necessary to update it in the browser by issuing an appropriate Ajax
338
  // command.
339
  $commands = array();
340
  if (isset($form['#build_id_old']) && $form['#build_id_old'] != $form['#build_id']) {
341
    // If the form build ID has changed, issue an Ajax command to update it.
342
    $commands[] = ajax_command_update_build_id($form);
343
    $form_build_id = $form['#build_id'];
344
  }
345

  
334 346
  // Since some of the submit handlers are run, redirects need to be disabled.
335 347
  $form_state['no_redirect'] = TRUE;
336 348

  
......
345 357
  $form_state['input'] = $_POST;
346 358
  $form_id = $form['#form_id'];
347 359

  
348
  return array($form, $form_state, $form_id, $form_build_id);
360
  return array($form, $form_state, $form_id, $form_build_id, $commands);
349 361
}
350 362

  
351 363
/**
......
366 378
 * @see system_menu()
367 379
 */
368 380
function ajax_form_callback() {
369
  list($form, $form_state) = ajax_get_form();
381
  list($form, $form_state, $form_id, $form_build_id, $commands) = ajax_get_form();
370 382
  drupal_process_form($form['#form_id'], $form, $form_state);
371 383

  
372 384
  // We need to return the part of the form (or some other content) that needs
......
379 391
    $callback = $form_state['triggering_element']['#ajax']['callback'];
380 392
  }
381 393
  if (!empty($callback) && function_exists($callback)) {
382
    return $callback($form, $form_state);
394
    $result = $callback($form, $form_state);
395

  
396
    if (!(is_array($result) && isset($result['#type']) && $result['#type'] == 'ajax')) {
397
      // Turn the response into a #type=ajax array if it isn't one already.
398
      $result = array(
399
        '#type' => 'ajax',
400
        '#commands' => ajax_prepare_response($result),
401
      );
402
    }
403

  
404
    $result['#commands'] = array_merge($commands, $result['#commands']);
405

  
406
    return $result;
383 407
  }
384 408
}
385 409

  
......
1210 1234
    'selector' => $selector,
1211 1235
  );
1212 1236
}
1237

  
1238
/**
1239
 * Creates a Drupal Ajax 'update_build_id' command.
1240
 *
1241
 * This command updates the value of a hidden form_build_id input element on a
1242
 * form. It requires the form passed in to have keys for both the old build ID
1243
 * in #build_id_old and the new build ID in #build_id.
1244
 *
1245
 * The primary use case for this Ajax command is to serve a new build ID to a
1246
 * form served from the cache to an anonymous user, preventing one anonymous
1247
 * user from accessing the form state of another anonymous users on Ajax enabled
1248
 * forms.
1249
 *
1250
 * @param $form
1251
 *   The form array representing the form whose build ID should be updated.
1252
 */
1253
function ajax_command_update_build_id($form) {
1254
  return array(
1255
    'command' => 'updateBuildId',
1256
    'old' => $form['#build_id_old'],
1257
    'new' => $form['#build_id'],
1258
  );
1259
}
drupal7/includes/bootstrap.inc
8 8
/**
9 9
 * The current system version.
10 10
 */
11
define('VERSION', '7.26');
11
define('VERSION', '7.27');
12 12

  
13 13
/**
14 14
 * Core API compatibility.
drupal7/includes/form.inc
168 168
 *       processed.
169 169
 *     - base_form_id: Identification for a base form, as declared in a
170 170
 *       hook_forms() implementation.
171
 *     - immutable: If this flag is set to TRUE, a new form build id is
172
 *       generated when the form is loaded from the cache. If it is subsequently
173
 *       saved to the cache again, it will have another cache id and therefore
174
 *       the original form and form-state will remain unaltered. This is
175
 *       important when page caching is enabled in order to prevent form state
176
 *       from leaking between anonymous users.
171 177
 *   - rebuild_info: Internal. Similar to 'build_info', but pertaining to
172 178
 *     drupal_rebuild_form().
173 179
 *   - rebuild: Normally, after the entire form processing is completed and
......
459 465
  $form = drupal_retrieve_form($form_id, $form_state);
460 466

  
461 467
  // If only parts of the form will be returned to the browser (e.g., Ajax or
462
  // RIA clients), re-use the old #build_id to not require client-side code to
463
  // manually update the hidden 'build_id' input element.
468
  // RIA clients), or if the form already had a new build ID regenerated when it
469
  // was retrieved from the form cache, reuse the existing #build_id.
464 470
  // Otherwise, a new #build_id is generated, to not clobber the previous
465 471
  // build's data in the form cache; also allowing the user to go back to an
466 472
  // earlier build, make changes, and re-submit.
467 473
  // @see drupal_prepare_form()
468
  if (isset($old_form['#build_id']) && !empty($form_state['rebuild_info']['copy']['#build_id'])) {
474
  $enforce_old_build_id = isset($old_form['#build_id']) && !empty($form_state['rebuild_info']['copy']['#build_id']);
475
  $old_form_is_mutable_copy = isset($old_form['#build_id_old']);
476
  if ($enforce_old_build_id || $old_form_is_mutable_copy) {
469 477
    $form['#build_id'] = $old_form['#build_id'];
478
    if ($old_form_is_mutable_copy) {
479
      $form['#build_id_old'] = $old_form['#build_id_old'];
480
    }
470 481
  }
471 482
  else {
483
    if (isset($old_form['#build_id'])) {
484
      $form['#build_id_old'] = $old_form['#build_id'];
485
    }
472 486
    $form['#build_id'] = 'form-' . drupal_random_key();
473 487
  }
474 488

  
......
523 537
          }
524 538
        }
525 539
      }
540
      // Generate a new #build_id if the cached form was rendered on a cacheable
541
      // page.
542
      if (!empty($form_state['build_info']['immutable'])) {
543
        $form['#build_id_old'] = $form['#build_id'];
544
        $form['#build_id'] = 'form-' . drupal_random_key();
545
        $form['form_build_id']['#value'] = $form['#build_id'];
546
        $form['form_build_id']['#id'] = $form['#build_id'];
547
        unset($form_state['build_info']['immutable']);
548
      }
526 549
      return $form;
527 550
    }
528 551
  }
......
535 558
  // 6 hours cache life time for forms should be plenty.
536 559
  $expire = 21600;
537 560

  
561
  // Ensure that the form build_id embedded in the form structure is the same as
562
  // the one passed in as a parameter. This is an additional safety measure to
563
  // prevent legacy code operating directly with form_get_cache and
564
  // form_set_cache from accidentally overwriting immutable form state.
565
  if ($form['#build_id'] != $form_build_id) {
566
    watchdog('form', 'Form build-id mismatch detected while attempting to store a form in the cache.', array(), WATCHDOG_ERROR);
567
    return;
568
  }
569

  
538 570
  // Cache form structure.
539 571
  if (isset($form)) {
540 572
    if ($GLOBALS['user']->uid) {
541 573
      $form['#cache_token'] = drupal_get_token();
542 574
    }
575
    unset($form['#build_id_old']);
543 576
    cache_set('form_' . $form_build_id, $form, 'cache_form', REQUEST_TIME + $expire);
544 577
  }
545 578

  
546 579
  // Cache form state.
580
  if (variable_get('cache', 0) && drupal_page_is_cacheable()) {
581
    $form_state['build_info']['immutable'] = TRUE;
582
  }
547 583
  if ($data = array_diff_key($form_state, array_flip(form_state_keys_no_cache()))) {
548 584
    cache_set('form_state_' . $form_build_id, $data, 'cache_form', REQUEST_TIME + $expire);
549 585
  }
drupal7/misc/ajax.js
616 616
      .removeClass('odd even')
617 617
      .filter(':even').addClass('odd').end()
618 618
      .filter(':odd').addClass('even');
619
  },
620

  
621
  /**
622
   * Command to update a form's build ID.
623
   */
624
  updateBuildId: function(ajax, response, status) {
625
    $('input[name="form_build_id"][value="' + response.old + '"]').val(response.new);
619 626
  }
620 627
};
621 628

  
drupal7/modules/aggregator/aggregator.info
7 7
configure = admin/config/services/aggregator/settings
8 8
stylesheets[all][] = aggregator.css
9 9

  
10
; Information added by Drupal.org packaging script on 2014-01-15
11
version = "7.26"
10
; Information added by Drupal.org packaging script on 2014-04-16
11
version = "7.27"
12 12
project = "drupal"
13
datestamp = "1389815930"
13
datestamp = "1397687057"
14 14

  
drupal7/modules/aggregator/tests/aggregator_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/block/block.info
6 6
files[] = block.test
7 7
configure = admin/structure/block
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/block/tests/block_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/block/tests/themes/block_test_theme/block_test_theme.info
13 13
regions[highlighted] = Highlighted
14 14
regions[help] = Help
15 15

  
16
; Information added by Drupal.org packaging script on 2014-01-15
17
version = "7.26"
16
; Information added by Drupal.org packaging script on 2014-04-16
17
version = "7.27"
18 18
project = "drupal"
19
datestamp = "1389815930"
19
datestamp = "1397687057"
20 20

  
drupal7/modules/blog/blog.info
5 5
core = 7.x
6 6
files[] = blog.test
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/book/book.info
7 7
configure = admin/content/book/settings
8 8
stylesheets[all][] = book.css
9 9

  
10
; Information added by Drupal.org packaging script on 2014-01-15
11
version = "7.26"
10
; Information added by Drupal.org packaging script on 2014-04-16
11
version = "7.27"
12 12
project = "drupal"
13
datestamp = "1389815930"
13
datestamp = "1397687057"
14 14

  
drupal7/modules/color/color.info
5 5
core = 7.x
6 6
files[] = color.test
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/comment/comment.info
9 9
configure = admin/content/comment
10 10
stylesheets[all][] = comment.css
11 11

  
12
; Information added by Drupal.org packaging script on 2014-01-15
13
version = "7.26"
12
; Information added by Drupal.org packaging script on 2014-04-16
13
version = "7.27"
14 14
project = "drupal"
15
datestamp = "1389815930"
15
datestamp = "1397687057"
16 16

  
drupal7/modules/contact/contact.info
6 6
files[] = contact.test
7 7
configure = admin/structure/contact
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/contextual/contextual.info
5 5
core = 7.x
6 6
files[] = contextual.test
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/dashboard/dashboard.info
7 7
dependencies[] = block
8 8
configure = admin/dashboard/customize
9 9

  
10
; Information added by Drupal.org packaging script on 2014-01-15
11
version = "7.26"
10
; Information added by Drupal.org packaging script on 2014-04-16
11
version = "7.27"
12 12
project = "drupal"
13
datestamp = "1389815930"
13
datestamp = "1397687057"
14 14

  
drupal7/modules/dblog/dblog.info
5 5
core = 7.x
6 6
files[] = dblog.test
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/field/field.info
11 11
required = TRUE
12 12
stylesheets[all][] = theme/field.css
13 13

  
14
; Information added by Drupal.org packaging script on 2014-01-15
15
version = "7.26"
14
; Information added by Drupal.org packaging script on 2014-04-16
15
version = "7.27"
16 16
project = "drupal"
17
datestamp = "1389815930"
17
datestamp = "1397687057"
18 18

  
drupal7/modules/field/modules/field_sql_storage/field_sql_storage.info
7 7
files[] = field_sql_storage.test
8 8
required = TRUE
9 9

  
10
; Information added by Drupal.org packaging script on 2014-01-15
11
version = "7.26"
10
; Information added by Drupal.org packaging script on 2014-04-16
11
version = "7.27"
12 12
project = "drupal"
13
datestamp = "1389815930"
13
datestamp = "1397687057"
14 14

  
drupal7/modules/field/modules/list/list.info
7 7
dependencies[] = options
8 8
files[] = tests/list.test
9 9

  
10
; Information added by Drupal.org packaging script on 2014-01-15
11
version = "7.26"
10
; Information added by Drupal.org packaging script on 2014-04-16
11
version = "7.27"
12 12
project = "drupal"
13
datestamp = "1389815930"
13
datestamp = "1397687057"
14 14

  
drupal7/modules/field/modules/list/tests/list_test.info
5 5
version = VERSION
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/field/modules/number/number.info
6 6
dependencies[] = field
7 7
files[] = number.test
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/field/modules/options/options.info
6 6
dependencies[] = field
7 7
files[] = options.test
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/field/modules/text/text.info
7 7
files[] = text.test
8 8
required = TRUE
9 9

  
10
; Information added by Drupal.org packaging script on 2014-01-15
11
version = "7.26"
10
; Information added by Drupal.org packaging script on 2014-04-16
11
version = "7.27"
12 12
project = "drupal"
13
datestamp = "1389815930"
13
datestamp = "1397687057"
14 14

  
drupal7/modules/field/tests/field_test.info
6 6
version = VERSION
7 7
hidden = TRUE
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/field_ui/field_ui.info
6 6
dependencies[] = field
7 7
files[] = field_ui.test
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/file/file.info
6 6
dependencies[] = field
7 7
files[] = tests/file.test
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/file/file.module
246 246
    return array('#type' => 'ajax', '#commands' => $commands);
247 247
  }
248 248

  
249
  list($form, $form_state) = ajax_get_form();
249
  list($form, $form_state, $form_id, $form_build_id, $commands) = ajax_get_form();
250 250

  
251 251
  if (!$form) {
252 252
    // Invalid form_build_id.
......
284 284
  $js = drupal_add_js();
285 285
  $settings = call_user_func_array('array_merge_recursive', $js['settings']['data']);
286 286

  
287
  $commands = array();
288 287
  $commands[] = ajax_command_replace(NULL, $output, $settings);
289 288
  return array('#type' => 'ajax', '#commands' => $commands);
290 289
}
drupal7/modules/file/tests/file_module_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/filter/filter.info
7 7
required = TRUE
8 8
configure = admin/config/content/formats
9 9

  
10
; Information added by Drupal.org packaging script on 2014-01-15
11
version = "7.26"
10
; Information added by Drupal.org packaging script on 2014-04-16
11
version = "7.27"
12 12
project = "drupal"
13
datestamp = "1389815930"
13
datestamp = "1397687057"
14 14

  
drupal7/modules/forum/forum.info
9 9
configure = admin/structure/forum
10 10
stylesheets[all][] = forum.css
11 11

  
12
; Information added by Drupal.org packaging script on 2014-01-15
13
version = "7.26"
12
; Information added by Drupal.org packaging script on 2014-04-16
13
version = "7.27"
14 14
project = "drupal"
15
datestamp = "1389815930"
15
datestamp = "1397687057"
16 16

  
drupal7/modules/help/help.info
5 5
core = 7.x
6 6
files[] = help.test
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/image/image.info
7 7
files[] = image.test
8 8
configure = admin/config/media/image-styles
9 9

  
10
; Information added by Drupal.org packaging script on 2014-01-15
11
version = "7.26"
10
; Information added by Drupal.org packaging script on 2014-04-16
11
version = "7.27"
12 12
project = "drupal"
13
datestamp = "1389815930"
13
datestamp = "1397687057"
14 14

  
drupal7/modules/image/tests/image_module_test.info
6 6
files[] = image_module_test.module
7 7
hidden = TRUE
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/locale/locale.info
6 6
files[] = locale.test
7 7
configure = admin/config/regional/language
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/locale/tests/locale_test.info
5 5
version = VERSION
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/menu/menu.info
6 6
files[] = menu.test
7 7
configure = admin/structure/menu
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/node/node.info
9 9
configure = admin/structure/types
10 10
stylesheets[all][] = node.css
11 11

  
12
; Information added by Drupal.org packaging script on 2014-01-15
13
version = "7.26"
12
; Information added by Drupal.org packaging script on 2014-04-16
13
version = "7.27"
14 14
project = "drupal"
15
datestamp = "1389815930"
15
datestamp = "1397687057"
16 16

  
drupal7/modules/node/tests/node_access_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/node/tests/node_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/node/tests/node_test_exception.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/openid/openid.info
5 5
core = 7.x
6 6
files[] = openid.test
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/openid/tests/openid_test.info
6 6
dependencies[] = openid
7 7
hidden = TRUE
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/overlay/overlay.info
4 4
version = VERSION
5 5
core = 7.x
6 6

  
7
; Information added by Drupal.org packaging script on 2014-01-15
8
version = "7.26"
7
; Information added by Drupal.org packaging script on 2014-04-16
8
version = "7.27"
9 9
project = "drupal"
10
datestamp = "1389815930"
10
datestamp = "1397687057"
11 11

  
drupal7/modules/path/path.info
6 6
files[] = path.test
7 7
configure = admin/config/search/path
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/php/php.info
5 5
core = 7.x
6 6
files[] = php.test
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/poll/poll.info
6 6
files[] = poll.test
7 7
stylesheets[all][] = poll.css
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/profile/profile.info
11 11
; See user_system_info_alter().
12 12
hidden = TRUE
13 13

  
14
; Information added by Drupal.org packaging script on 2014-01-15
15
version = "7.26"
14
; Information added by Drupal.org packaging script on 2014-04-16
15
version = "7.27"
16 16
project = "drupal"
17
datestamp = "1389815930"
17
datestamp = "1397687057"
18 18

  
drupal7/modules/rdf/rdf.info
5 5
core = 7.x
6 6
files[] = rdf.test
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/rdf/tests/rdf_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/search/search.info
8 8
configure = admin/config/search/settings
9 9
stylesheets[all][] = search.css
10 10

  
11
; Information added by Drupal.org packaging script on 2014-01-15
12
version = "7.26"
11
; Information added by Drupal.org packaging script on 2014-04-16
12
version = "7.27"
13 13
project = "drupal"
14
datestamp = "1389815930"
14
datestamp = "1397687057"
15 15

  
drupal7/modules/search/tests/search_embedded_form.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/search/tests/search_extra_type.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/shortcut/shortcut.info
6 6
files[] = shortcut.test
7 7
configure = admin/config/user-interface/shortcut
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/simpletest/drupal_web_test_case.php
2269 2269
            }
2270 2270
            break;
2271 2271

  
2272
          case 'updateBuildId':
2273
            $buildId = $xpath->query('//input[@name="form_build_id" and @value="' . $command['old'] . '"]')->item(0);
2274
            if ($buildId) {
2275
              $buildId->setAttribute('value', $command['new']);
2276
            }
2277
            break;
2278

  
2272 2279
          // @todo Add suitable implementations for these commands in order to
2273 2280
          //   have full test coverage of what ajax.js can do.
2274 2281
          case 'remove':
drupal7/modules/simpletest/simpletest.info
55 55
files[] = tests/upgrade/update.field.test
56 56
files[] = tests/upgrade/update.user.test
57 57

  
58
; Information added by Drupal.org packaging script on 2014-01-15
59
version = "7.26"
58
; Information added by Drupal.org packaging script on 2014-04-16
59
version = "7.27"
60 60
project = "drupal"
61
datestamp = "1389815930"
61
datestamp = "1397687057"
62 62

  
drupal7/modules/simpletest/tests/actions_loop_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/ajax.test
497 497
  }
498 498
}
499 499

  
500
/**
501
 * Test Ajax forms when page caching for anonymous users is turned on.
502
 */
503
class AJAXFormPageCacheTestCase extends AJAXTestCase {
504
  protected $profile = 'testing';
505

  
506
  public static function getInfo() {
507
    return array(
508
      'name' => 'AJAX forms on cached pages',
509
      'description' => 'Tests that AJAX forms work properly for anonymous users on cached pages.',
510
      'group' => 'AJAX',
511
    );
512
  }
513

  
514
  public function setUp() {
515
    parent::setUp();
516

  
517
    variable_set('cache', TRUE);
518
  }
519

  
520
  /**
521
   * Return the build id of the current form.
522
   */
523
  protected function getFormBuildId() {
524
    $build_id_fields = $this->xpath('//input[@name="form_build_id"]');
525
    $this->assertEqual(count($build_id_fields), 1, 'One form build id field on the page');
526
    return (string) $build_id_fields[0]['value'];
527
  }
528

  
529
  /**
530
   * Create a simple form, then POST to system/ajax to change to it.
531
   */
532
  public function testSimpleAJAXFormValue() {
533
    $this->drupalGet('ajax_forms_test_get_form');
534
    $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS', 'Page was not cached.');
535
    $build_id_initial = $this->getFormBuildId();
536

  
537
    $edit = array('select' => 'green');
538
    $commands = $this->drupalPostAJAX(NULL, $edit, 'select');
539
    $build_id_first_ajax = $this->getFormBuildId();
540
    $this->assertNotEqual($build_id_initial, $build_id_first_ajax, 'Build id is changed in the simpletest-DOM on first AJAX submission');
541
    $expected = array(
542
      'command' => 'updateBuildId',
543
      'old' => $build_id_initial,
544
      'new' => $build_id_first_ajax,
545
    );
546
    $this->assertCommand($commands, $expected, 'Build id change command issued on first AJAX submission');
547

  
548
    $edit = array('select' => 'red');
549
    $commands = $this->drupalPostAJAX(NULL, $edit, 'select');
550
    $build_id_second_ajax = $this->getFormBuildId();
551
    $this->assertEqual($build_id_first_ajax, $build_id_second_ajax, 'Build id remains the same on subsequent AJAX submissions');
552

  
553
    // Repeat the test sequence but this time with a page loaded from the cache.
554
    $this->drupalGet('ajax_forms_test_get_form');
555
    $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT', 'Page was cached.');
556
    $build_id_from_cache_initial = $this->getFormBuildId();
557
    $this->assertEqual($build_id_initial, $build_id_from_cache_initial, 'Build id is the same as on the first request');
558

  
559
    $edit = array('select' => 'green');
560
    $commands = $this->drupalPostAJAX(NULL, $edit, 'select');
561
    $build_id_from_cache_first_ajax = $this->getFormBuildId();
562
    $this->assertNotEqual($build_id_from_cache_initial, $build_id_from_cache_first_ajax, 'Build id is changed in the simpletest-DOM on first AJAX submission');
563
    $this->assertNotEqual($build_id_first_ajax, $build_id_from_cache_first_ajax, 'Build id from first user is not reused');
564
    $expected = array(
565
      'command' => 'updateBuildId',
566
      'old' => $build_id_from_cache_initial,
567
      'new' => $build_id_from_cache_first_ajax,
568
    );
569
    $this->assertCommand($commands, $expected, 'Build id change command issued on first AJAX submission');
570

  
571
    $edit = array('select' => 'red');
572
    $commands = $this->drupalPostAJAX(NULL, $edit, 'select');
573
    $build_id_from_cache_second_ajax = $this->getFormBuildId();
574
    $this->assertEqual($build_id_from_cache_first_ajax, $build_id_from_cache_second_ajax, 'Build id remains the same on subsequent AJAX submissions');
575
  }
576
}
577

  
578

  
500 579
/**
501 580
 * Miscellaneous Ajax tests using ajax_test module.
502 581
 */
drupal7/modules/simpletest/tests/ajax_forms_test.info
5 5
version = VERSION
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/ajax_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/batch_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/common_test.info
7 7
stylesheets[print][] = common_test.print.css
8 8
hidden = TRUE
9 9

  
10
; Information added by Drupal.org packaging script on 2014-01-15
11
version = "7.26"
10
; Information added by Drupal.org packaging script on 2014-04-16
11
version = "7.27"
12 12
project = "drupal"
13
datestamp = "1389815930"
13
datestamp = "1397687057"
14 14

  
drupal7/modules/simpletest/tests/common_test_cron_helper.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/database_test.info
5 5
version = VERSION
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/entity_cache_test.info
6 6
dependencies[] = entity_cache_test_dependency
7 7
hidden = TRUE
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/simpletest/tests/entity_cache_test_dependency.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/entity_crud_hook_test.info
5 5
version = VERSION
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/entity_query_access_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/error_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/file_test.info
6 6
files[] = file_test.module
7 7
hidden = TRUE
8 8

  
9
; Information added by Drupal.org packaging script on 2014-01-15
10
version = "7.26"
9
; Information added by Drupal.org packaging script on 2014-04-16
10
version = "7.27"
11 11
project = "drupal"
12
datestamp = "1389815930"
12
datestamp = "1397687057"
13 13

  
drupal7/modules/simpletest/tests/filter_test.info
5 5
core = 7.x
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2014-01-15
9
version = "7.26"
8
; Information added by Drupal.org packaging script on 2014-04-16
9
version = "7.27"
10 10
project = "drupal"
11
datestamp = "1389815930"
11
datestamp = "1397687057"
12 12

  
drupal7/modules/simpletest/tests/form.test
1156 1156
      $this->assertText('State persisted.');
1157 1157
    }
1158 1158
  }
1159

  
1160
  /**
1161
   * Verify that the form build-id remains the same when validation errors
1162
   * occur on a mutable form.
1163
   */
1164
  function testMutableForm() {
1165
    // Request the form with 'cache' query parameter to enable form caching.
1166
    $this->drupalGet('form_test/form-storage', array('query' => array('cache' => 1)));
1167
    $buildIdFields = $this->xpath('//input[@name="form_build_id"]');
1168
    $this->assertEqual(count($buildIdFields), 1, 'One form build id field on the page');
1169
    $buildId = (string) $buildIdFields[0]['value'];
1170

  
1171
    // Trigger validation error by submitting an empty title.
1172
    $edit = array('title' => '');
1173
    $this->drupalPost(NULL, $edit, 'Continue submit');
1174

  
1175
    // Verify that the build-id did not change.
1176
    $this->assertFieldByName('form_build_id', $buildId, 'Build id remains the same when form validation fails');
1177
  }
1178

  
1179
  /**
1180
   * Verifies that form build-id is regenerated when loading an immutable form
1181
   * from the cache.
1182
   */
1183
  function testImmutableForm() {
1184
    // Request the form with 'cache' query parameter to enable form caching.
1185
    $this->drupalGet('form_test/form-storage', array('query' => array('cache' => 1, 'immutable' => 1)));
1186
    $buildIdFields = $this->xpath('//input[@name="form_build_id"]');
1187
    $this->assertEqual(count($buildIdFields), 1, 'One form build id field on the page');
1188
    $buildId = (string) $buildIdFields[0]['value'];
1189

  
1190
    // Trigger validation error by submitting an empty title.
1191
    $edit = array('title' => '');
1192
    $this->drupalPost(NULL, $edit, 'Continue submit');
1193

  
1194
    // Verify that the build-id did change.
1195
    $this->assertNoFieldByName('form_build_id', $buildId, 'Build id changes when form validation fails');
1196

  
1197
    // Retrieve the new build-id.
1198
    $buildIdFields = $this->xpath('//input[@name="form_build_id"]');
1199
    $this->assertEqual(count($buildIdFields), 1, 'One form build id field on the page');
1200
    $buildId = (string) $buildIdFields[0]['value'];
1201

  
1202
    // Trigger validation error by again submitting an empty title.
1203
    $edit = array('title' => '');
1204
    $this->drupalPost(NULL, $edit, 'Continue submit');
1205

  
1206
    // Verify that the build-id does not change the second time.
1207
    $this->assertFieldByName('form_build_id', $buildId, 'Build id remains the same when form validation fails subsequently');
1208
  }
1209

  
1210
  /**
1211
   * Verify that existing contrib code cannot overwrite immutable form state.
1212
   */
1213
  public function testImmutableFormLegacyProtection() {
1214
    $this->drupalGet('form_test/form-storage', array('query' => array('cache' => 1, 'immutable' => 1)));
1215
    $build_id_fields = $this->xpath('//input[@name="form_build_id"]');
1216
    $this->assertEqual(count($build_id_fields), 1, 'One form build id field on the page');
1217
    $build_id = (string) $build_id_fields[0]['value'];
1218

  
1219
    // Try to poison the form cache.
1220
    $original = $this->drupalGetAJAX('form_test/form-storage-legacy/' . $build_id);
1221
    $this->assertEqual($original['form']['#build_id_old'], $build_id, 'Original build_id was recorded');
1222
    $this->assertNotEqual($original['form']['#build_id'], $build_id, 'New build_id was generated');
1223

  
... Ce différentiel a été tronqué car il excède la taille maximale pouvant être affichée.

Formats disponibles : Unified diff