Projet

Général

Profil

Révision ba3b3627

Ajouté par Assos Assos il y a environ 6 ans

Weekly update of contrib modules

Voir les différences:

drupal7/sites/all/modules/advanced_help/ASSETS.yml
1
---
2
# Define an alias for screendumps.
3
aliases:
4
  hide: TRUE
5
  title: ALIASES
6
  block:
7
  - &screendumps
8
    type: asset
9
    approved: allowed license
10
    license: CC0
11
    rights: https://creativecommons.org/publicdomain/zero/1.0/
12
    source: Gisle Hannemyr
13

  
14
help.png:
15
  title: help.png
16
  type: asset
17
  approved: allowed license
18
  license: CC0
19
  rights: https://creativecommons.org/publicdomain/zero/1.0/
20
  source: unknown origin
21
  hide: TRUE
22

  
23
help/ahelp_tab.png:
24
  title: ahelp_tab.png
25
  hide: TRUE
26
  a: *screendumps
27

  
28
help/click_icon.png:
29
  title: click_icon.png
30
  hide: TRUE
31
  a: *screendumps
32

  
drupal7/sites/all/modules/advanced_help/advanced_help.info
2 2
description = Provide extended help and documentation.
3 3
core = 7.x
4 4

  
5
attributions[click_icon][type] = 'asset'
6
attributions[click_icon][exception] = '#2460769'
7
attributions[click_icon][author] = 'Gisle Hannemyr'
8
attributions[click_icon][hide] = TRUE
9
attributions[click_icon][title] = 'click_icon.png'
10
attributions[click_icon][license] = 'Creative Commons 0'
11
attributions[click_icon][license_url] = 'https://creativecommons.org/publicdomain/zero/1.0/'
12 5

  
13
; Information added by Drupal.org packaging script on 2015-05-25
14
version = "7.x-1.3"
6
; Information added by Drupal.org packaging script on 2018-04-14
7
version = "7.x-1.4"
15 8
core = "7.x"
16 9
project = "advanced_help"
17
datestamp = "1432557782"
18

  
10
datestamp = "1523697491"
drupal7/sites/all/modules/advanced_help/advanced_help.module
593 593
    return "./$info[path]/$info[file]";
594 594
  }
595 595
}
596

  
597
/**
598
 * Get the module type (theme or module).
599
 */
600
function _advanced_help_get_module_type($module) {
601
  $theme_list = array_keys(list_themes());
602
  $is_theme = in_array($module, $theme_list);
603
  return $is_theme ? 'theme' : 'module';
604
}
605

  
596 606
/**
597 607
 * Load and render a help topic.
598 608
 */
......
605 615
  }
606 616

  
607 617
  // Search paths:
618
  $module_type = _advanced_help_get_module_type($module);
608 619
  $paths = array(
609 620
    // Allow theme override.
610 621
    path_to_theme() . '/help',
611 622
    // Translations.
612
    drupal_get_path('module', $module) . "/translations/help/$language->language",
623
    drupal_get_path($module_type, $module) . "/translations/help/$language->language",
613 624
    // In same directory as .inc file.
614 625
    $info['path'],
615 626
  );
......
640 651
    $info = advanced_help_get_topic($module, $topic);
641 652
    $file = "./$file_info[path]/$file_info[file]";
642 653

  
654
    // Fix invalid byte sequences (Issue #1330056).
643 655
    $output = file_get_contents($file);
656
    mb_substitute_character(0xfffd);
657
    $output = mb_convert_encoding($output, 'UTF-8', 'UTF-8');
658

  
644 659
    if (isset($info['readme file']) && $info['readme file']) {
645 660
      $ext = pathinfo($file, PATHINFO_EXTENSION);
646 661
      if ('md' == $ext && module_exists('markdown')) {
647 662
        $filters = module_invoke('markdown', 'filter_info');
648 663
        $md_info = $filters['filter_markdown'];
649
	
650 664
        if (function_exists($md_info['process callback'])) {
651 665
          $function = $md_info['process callback'];
652 666
          $output = '<div class="advanced-help-topic">' . filter_xss_admin($function($output, NULL)) . '</div>';
......
660 674
        if ('md' == $ext) {
661 675
          $readme .=
662 676
            '<p>' .
663
	    t('If you install the !module module, the text below will be filtered by the module, producing rich text.',
664
	    array('!module' => l(t('Markdown filter'),
665
	    'https://www.drupal.org/project/markdown',
666
	    array('attributes' => array('title' => t('Link to project.')))))) . '</p>';
667
	}
677
            t('If you install the !module module, the text below will be filtered by the module, producing rich text.',
678
              array(
679
                '!module' => l(t('Markdown filter'),
680
                  'https://www.drupal.org/project/markdown',
681
                  array('attributes' => array('title' => t('Link to project.'))))
682
              )) . '</p>';
683
        }
668 684
        $readme .=
669 685
          '<div class="advanced-help-topic"><pre class="readme">' . check_plain($output) . '</pre></div>';
670
	$output = $readme;
686
        $output = $readme;
671 687
      }
672 688
      return $output;
673 689
    }
......
803 819
}
804 820

  
805 821
/**
806
 * Funtion to parse ini / txt files.
822
 * Function to parse ini / txt files.
807 823
 */
808 824
function _advanced_help_parse_ini() {
809 825
  global $language;
drupal7/sites/all/modules/advanced_help/help/readme.html
8 8
files are distributed from the project Drupal.org repo in the same
9 9
package as the module or theme, and placed in a subdirectory named
10 10
<code>help</code> in the project or theme directory.  This means that
11
the help texts can be easiely kept in sync with the project they
11
the help texts can be easily kept in sync with the project they
12 12
provide help texts for, but also that read access to these files
13 13
are not managed by any content access restrictions imposed by Drupal.</p>
14 14
  
......
61 61
<li><a href="https://www.drupal.org/project/attributions">Attributions</a>:<br>
62 62
When this module is enabled, attributions of third party content used
63 63
by the project (i.e. some text from Wikipedia) will be available in an
64
attribution block and on an atribution page.</li>
64
attribution block and on an attribution page.</li>
65 65
</ul>
66 66
-->
67 67

  
......
98 98
<h2 id="project-maintainers">Credits</h2>
99 99

  
100 100
<ul>
101
<li><a href="https://www.drupal.org/u/merlinofchaos"">merlinofchaos</a> (52 commits, original creator)</li>
101
<li><a href="https://www.drupal.org/u/merlinofchaos">merlinofchaos</a> (52 commits, original creator)</li>
102 102
<li><a href="https://www.drupal.org/u/redndahead">redndahead</a> (8 commits)</li>
103 103
<li><a href="https://www.drupal.org/u/dmitrig01">dmitrig01</a> (3 commits)</li>
104 104
<li><a href="https://www.drupal.org/u/amitgoyal">amitgoyal </a> (5 commits)</li>
drupal7/sites/all/modules/advanced_help/help/translation.html
26 26
translated directory. This will allow you to pick and choose which
27 27
linked items, if any, will be translated.</p>
28 28

  
29
<p>If a topic is not tranlated, the default (untranslated) version
29
<p>If a topic is not translated, the default (untranslated) version
30 30
will be shown instead.</p>
31 31

  
32 32
<h2>Translating Advanced help's help files</h2>
drupal7/sites/all/modules/advanced_help/help/why-advanced-help.html
18 18

  
19 19
In fact, requiring a documentation author to understand PHP at all is a detriment. The idea that documentation writers need to have PHP development as a skill seriously reduces the number of available contributors. HTML, on the other hand, is a much more common skill, is relatively easy to learn, and the amount of HTML needed to write documentation is only a little bit more than the HTML used in forum posts.
20 20

  
21
Another benefit to not using PHP is that the files themselves are safe. They are filtered to escape malicious script code that could take over the server or do worse things. This means that these files can be used relatively easily on Drupal.org itself. It also means that descriptions of the project pulled from the project's help pages or README.txt or README.md can be made on the project's Drupal.org without the need to download the module or theme to look at the contents of these files.  This also simplifies maintenance, as the files can be corrected easily by patches, which are updated by tyhe maintainer and pushed to git.
21
Another benefit from not using PHP is that the files themselves are safe. They are filtered to escape malicious script code that could take over the server or do worse things. This means that these files can be used relatively easily on Drupal.org itself. It also means that descriptions of the project pulled from the project's help pages or README.txt or README.md can be made on the project's Drupal.org without the need to download the module or theme to look at the contents of these files.  This also simplifies maintenance, as the files can be corrected easily by patches, which are updated by the maintainer and pushed to git.
22 22

  
23 23
By moving all docymentation into help files, we could, if we wanted, package the Drupal.org handbooks, or a subset of them, directly into a Drupal distribution, or a Drupal add-on, so that Drupal administrators can have Drupal help without needing to visit Drupal.org. This can be valuable in locked down corporate environments and on planes. But more importantly, the handbooks can be made version aware much more easily than the current method on Drupal.org.
24 24

  
drupal7/sites/all/modules/advanced_help/help_example/ASSETS.yml
1
# wikipedia_adaption.
2
help/:
3
  type: asset
4
  approved: https://www.drupal.org/node/2460769
5
  title: About PHP, History of PHP, Usage of PHP, PHP Syntax, Security of PHP
6
  rights: http://creativecommons.org/licenses/by-sa/3.0/
7
  originalTitle: PHP (Wikipedia)
8
  originalAttributionText: multiple Wikipedia contributors
9
  originalAttributionUrl: http://en.wikipedia.org/w/index.php?title=PHP&action=history
10
  source: http://en.wikipedia.org/wiki/PHP
11
  orgiginalLicense: CC BY-SA 3.0
12
  orgiginalRights: http://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attribution-ShareAlike_3.0_Unported_License
13
  weight: -1
14
  path: help_example
15

  
16
# lerdorf image
17
help/180px-Lerdorf.jpg:
18
  type: asset
19
  approved: https://www.drupal.org/node/2460769
20
  attributionText: Jud Dagnall
21
  source: http://en.wikipedia.org/wiki/File:Lerdorf.jpg
22
  title: Rasmus Lerdorf
23
  license: CC BY-SA 3.0
24
  rights: http://creativecommons.org/licenses/by-sa/3.0/deed.en
25
  path: 'help_example\/history'
26

  
27
# gutmans image
28
help/180px-Andi_Gutmans_1.jpg:
29
  type: asset
30
  approved: https://www.drupal.org/node/2460769
31
  attributionText: Jim Winstead
32
  attributionUrl: "https://www.flickr.com/people/81342178@N00"
33
  source: http://en.wikipedia.org/wiki/File:Andi_Gutmans_1.jpg
34
  title: Andi Gutmans
35
  license: CC BY 2.0
36
  rights: http://creativecommons.org/licenses/by/2.0/deed.en
37
  path: 'help_example\/history'
drupal7/sites/all/modules/advanced_help/help_example/help_example.info
3 3
core = 7.x
4 4
dependencies[] = advanced_help
5 5

  
6
attributions[wikipedia_adaption][type] = 'asset'
7
attributions[wikipedia_adaption][weight] = -10
8
attributions[wikipedia_adaption][exception] = '#2460769'
9
attributions[wikipedia_adaption][title] = 'About PHP, History of PHP, Usage of PHP, PHP Syntax, Security of PHP'
10
attributions[wikipedia_adaption][license_url] = 'http://creativecommons.org/licenses/by-sa/3.0/'
11
attributions[wikipedia_adaption][org_title] = 'PHP (Wikipedia)'
12
attributions[wikipedia_adaption][org_author] = 'multiple Wikipedia contributors'
13
attributions[wikipedia_adaption][org_author_url] = 'http://en.wikipedia.org/w/index.php?title=PHP&action=history'
14
attributions[wikipedia_adaption][org_work_url] = 'http://en.wikipedia.org/wiki/PHP'
15
attributions[wikipedia_adaption][org_license] = 'Creative Commons BY-SA 3.0'
16
attributions[wikipedia_adaption][org_license_url] = 'http://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attribution-ShareAlike_3.0_Unported_License'
17

  
18
attributions[lerdorf][type] = 'asset'
19
attributions[lerdorf][exception] = '#2460769'
20
attributions[lerdorf][author] = 'Jud Dagnall'
21
attributions[lerdorf][work_url] = 'http://en.wikipedia.org/wiki/File:Lerdorf.jpg'
22
attributions[lerdorf][title] = 'Lerdorf'
23
attributions[lerdorf][license] = 'Creative Commons BY-SA 3.0'
24
attributions[lerdorf][license_url] = 'http://creativecommons.org/licenses/by-sa/3.0/deed.en'
25

  
26
attributions[gutmans][type] = 'asset'
27
attributions[gutmans][exception] = '#2460769'
28
attributions[gutmans][author] = 'Jim Winstead'
29
attributions[gutmans][author_url] = 'https://www.flickr.com/people/81342178@N00'
30
attributions[gutmans][work_url] = 'http://en.wikipedia.org/wiki/File:Andi_Gutmans_1.jpg'
31
attributions[gutmans][title] = 'Andi Gutmans'
32
attributions[gutmans][license] = 'Creative Commons BY 2.0'
33
attributions[gutmans][license_url] = 'http://creativecommons.org/licenses/by/2.0/deed.en'
34

  
35
; Information added by Drupal.org packaging script on 2015-05-25
36
version = "7.x-1.3"
6
; Information added by Drupal.org packaging script on 2018-04-14
7
version = "7.x-1.4"
37 8
core = "7.x"
38 9
project = "advanced_help"
39
datestamp = "1432557782"
40

  
10
datestamp = "1523697491"
drupal7/sites/all/modules/advanced_help/translations/help/nb/why-advanced-help.html
1
The <strong>Advanced help</strong> framework was designed to replace the original Drupal help system, which has several flaws that make it hard to create new help, hard to maintain existing help, and particularly hard to access help.
1
Rammeverket <strong>Advanced help</strong> ble konstruert for å erstatte det opprinnelige hjelpesystemet for Drupal, som har flere mangler som gjør det vanskelig å lage ny hjelp, vanskelig å vedlikeholde eksisterende hjelp, og særlig vanskelig å bruke hjelp.
2 2

  
3 3
The primary goal, then, is to increase the accessibility of help, meaning the ability of both the user and the help text author to access the needed tools to use, create, maintain and translate the help.
4 4

  
......
18 18

  
19 19
In fact, requiring a documentation author to understand PHP at all is a detriment. The idea that documentation writers need to have PHP development as a skill seriously reduces the number of available contributors. HTML, on the other hand, is a much more common skill, is relatively easy to learn, and the amount of HTML needed to write documentation is only a little bit more than the HTML used in forum posts.
20 20

  
21
Another benefit to not using PHP is that the files themselves are safe. They are filtered to escape malicious script code that could take over the server or do worse things. This means that these files can be used relatively easily on Drupal.org itself. It also means that descriptions of the project pulled from the project's help pages or README.txt or README.md can be made on the project's Drupal.org without the need to download the module or theme to look at the contents of these files.  This also simplifies maintenance, as the files can be corrected easily by patches, which are updated by tyhe maintainer and pushed to git.
21
Another benefit to not using PHP is that the files themselves are safe. They are filtered to escape malicious script code that could take over the server or do worse things. This means that these files can be used relatively easily on Drupal.org itself. It also means that descriptions of the project pulled from the project's help pages or README.txt or README.md can be made on the project's Drupal.org without the need to download the module or theme to look at the contents of these files.  This also simplifies maintenance, as the files can be corrected easily by patches, which are updated by the maintainer and pushed to git.
22 22

  
23 23
By moving all docymentation into help files, we could, if we wanted, package the Drupal.org handbooks, or a subset of them, directly into a Drupal distribution, or a Drupal add-on, so that Drupal administrators can have Drupal help without needing to visit Drupal.org. This can be valuable in locked down corporate environments and on planes. But more importantly, the handbooks can be made version aware much more easily than the current method on Drupal.org.
24 24

  
drupal7/sites/all/modules/ds/ds.info
13 13
files[] = tests/ds.forms.test
14 14
configure = admin/structure/ds
15 15

  
16
; Information added by Drupal.org packaging script on 2016-04-26
17
version = "7.x-2.14"
16
; Information added by Drupal.org packaging script on 2018-04-18
17
version = "7.x-2.15"
18 18
core = "7.x"
19 19
project = "ds"
20
datestamp = "1461696967"
21

  
20
datestamp = "1524068596"
drupal7/sites/all/modules/ds/ds.install
20 20
 */
21 21
function ds_uninstall() {
22 22
  variable_del('ds_classes_regions');
23
  variable_del('ds_disable');
24
  variable_del('ds_extras_region_blocks');
25
  variable_del('menu_rebuild_needed');
23 26
}
24 27

  
25 28
/**
drupal7/sites/all/modules/ds/ds.module
736 736
    if (!empty($layout['settings']['layout_attributes_merge'])) {
737 737
      // Handle classes separately.
738 738
      if (isset($vars['attributes_array']['class'])) {
739
        $vars['classes_array'] += $vars['attributes_array']['class'];
739
        $vars['classes_array'] = array_unique(array_merge($vars['classes_array'], $vars['attributes_array']['class']));
740 740
        unset($vars['attributes_array']['class']);
741 741
      }
742 742
      $vars['layout_attributes'] .= ' ' . drupal_attributes($vars['attributes_array']);
......
925 925
 * Render a block field.
926 926
 */
927 927
function ds_render_block_field($field) {
928
  // Invoke the block_view hook of the module.
928
  global $theme_key;
929 929
  list($module, $delta) = explode('|', $field['properties']['block']);
930
  $block = module_invoke($module, 'block_view', $delta);
931

  
932
  // Get contextual links.
933
  $contextual_links = array();
934
  $contextual = module_exists('contextual') && user_access('access contextual links');
935
  if ($contextual) {
936
    if (isset($block['content']) && is_array($block['content']) && isset($block['content']['#contextual_links'])) {
937
      $contextual_links = $block['content']['#contextual_links'];
938
    }
930

  
931
  // Load the block
932
  $result = db_select('block', 'b')
933
    ->fields('b')->condition('b.theme', $theme_key)->condition('b.module', $module)->condition('b.delta', $delta)->addTag('block_load')->addTag('translatable')->execute();
934
  $block_info = $result->fetchAllAssoc('bid');
935

  
936
  // Enable the block
937
  if ($block_info[key($block_info)]->status == 0) {
938
    $block_info[key($block_info)]->status = 1;
939 939
  }
940 940

  
941
  // Render the block content.
942
  if (isset($block['content']) && is_array($block['content'])) {
943
    $block['content'] = drupal_render($block['content']);
941
  // Process the block if it respects visibility settings
942
  if (isset($field['properties']['block_visibility']) && $field['properties']['block_visibility']) {
943
    drupal_alter('block_list', $block_info);
944 944
  }
945 945

  
946
  // Go through in case we have actual content.
947
  if (!empty($block['content'])) {
946
  // Simulate _block_load_blocks() return, containing only our block.
947
  $block = array_shift($block_info);
948 948

  
949
    // Make sure subject is set.
950
    if (!isset($block['subject'])) {
951
      $block['subject'] = '';
952
    }
953

  
954
    global $theme_key;
949
  // Render the block field
950
  if (isset($block)) {
951
    $key = $module . '_' . $delta;
955 952
    if (module_exists('block')) {
956
      $full_block = db_query("SELECT * FROM {block} WHERE module = :module AND delta = :delta AND theme = :theme", array(':module' => $module, ':delta' => $delta, ':theme' => $theme_key))->fetchObject();
957
    }
958
    if (!empty($full_block)) {
959
      if ($full_block->title == '<none>') {
960
        $block['subject'] = '';
961
      }
962
      elseif (!empty($full_block->title)) {
963
        $block['subject'] = $full_block->title;
964
      }
965
    }
966

  
967
    // i18n support.
968
    if (function_exists('i18n_block_block_view_alter')) {
969

  
970
      // Check language visibility.
971
      global $language;
972
      static $block_languages = FALSE;
973
      if (!$block_languages) {
974
        $block_languages = array();
975
        $result = db_query('SELECT module, delta, language FROM {i18n_block_language}');
976
        foreach ($result as $record) {
977
          $block_languages[$record->module][$record->delta][$record->language] = TRUE;
978
        }
979
      }
980
      if (isset($block_languages[$module][$delta]) && !isset($block_languages[$module][$delta][$language->language])) {
981
        return;
982
      }
983

  
984
      // Translate.
985
      if (!empty($full_block->i18n_mode)) {
986
        i18n_block_block_view_alter($block, $full_block);
987
        if (!empty($block['title'])) {
988
          $block['subject'] = $block['title'];
989
        }
953
      $region_blocks = _block_render_blocks(array($key => $block));
954
      switch ($field['properties']['block_render']) {
955
        case DS_BLOCK_TEMPLATE:
956
          $renderable_block = _block_get_renderable_array($region_blocks);
957
          return drupal_render($renderable_block);
958
          break;
959
        case DS_BLOCK_TITLE_CONTENT:
960
          if (isset($block->subject) && isset($block->content['#markup'])) {
961
            return '<h2 class="block-title">' . $block->subject . '</h2>' . $block->content['#markup'];
962
          }
963
          break;
964
        case DS_BLOCK_CONTENT:
965
          if (isset($block->content['#markup'])) {
966
            return $block->content['#markup'];
967
          }
968
          break;
990 969
      }
991 970
    }
992

  
993
    $block = (object) $block;
994
    switch ($field['properties']['block_render']) {
995
      case DS_BLOCK_TEMPLATE:
996
        $block->region = NULL;
997
        $block->module = $module;
998
        $block->delta = $delta;
999
        $elements = array('elements' => array('#block' => $block, '#children' => $block->content));
1000
        // Add contextual links.
1001
        if ($contextual) {
1002
          $elements['elements'] += array('#contextual_links' => array_merge($contextual_links, array('block' => array('admin/structure/block/manage', array($block->module, $block->delta)))));
1003
        }
1004
        return theme('block', $elements);
1005
        break;
1006
      case DS_BLOCK_TITLE_CONTENT:
1007
        return '<h2 class="block-title">' . $block->subject . '</h2>' . $block->content;
1008
        break;
1009
      case DS_BLOCK_CONTENT:
1010
        return $block->content;
1011
        break;
1012
    }
1013 971
  }
1014 972
}
1015 973

  
drupal7/sites/all/modules/ds/modules/ds_devel/ds_devel.info
5 5
dependencies[] = ds
6 6
dependencies[] = devel
7 7

  
8
; Information added by Drupal.org packaging script on 2016-04-26
9
version = "7.x-2.14"
8
; Information added by Drupal.org packaging script on 2018-04-18
9
version = "7.x-2.15"
10 10
core = "7.x"
11 11
project = "ds"
12
datestamp = "1461696967"
13

  
12
datestamp = "1524068596"
drupal7/sites/all/modules/ds/modules/ds_extras/ds_extras.info
5 5
dependencies[] = ds
6 6
configure = admin/structure/ds/list/extras
7 7

  
8
; Information added by Drupal.org packaging script on 2016-04-26
9
version = "7.x-2.14"
8
; Information added by Drupal.org packaging script on 2018-04-18
9
version = "7.x-2.15"
10 10
core = "7.x"
11 11
project = "ds"
12
datestamp = "1461696967"
13

  
12
datestamp = "1524068596"
drupal7/sites/all/modules/ds/modules/ds_extras/includes/ds_extras.pages.inc
38 38
  // It's also possible to use $_GET['v'] to switch view modes.
39 39
  if (isset($_GET['v']) && !empty($_GET['v'])) {
40 40
    $view_mode = $_GET['v'];
41
    // Check if this is a valid view mode, switch to default otherwise.
42
    $view_modes = ds_extras_get_bundle_view_modes('node', $node->type);
43
    if (!isset($view_modes[$view_mode])) {
44
      $view_mode = 'full';
45
    }
41 46
  }
42 47
  drupal_static('ds_extras_view_mode', $view_mode);
43 48

  
drupal7/sites/all/modules/ds/modules/ds_format/ds_format.info
5 5
dependencies[] = ds
6 6
configure = admin/structure/ds/list/extras
7 7

  
8
; Information added by Drupal.org packaging script on 2016-04-26
9
version = "7.x-2.14"
8
; Information added by Drupal.org packaging script on 2018-04-18
9
version = "7.x-2.15"
10 10
core = "7.x"
11 11
project = "ds"
12
datestamp = "1461696967"
13

  
12
datestamp = "1524068596"
drupal7/sites/all/modules/ds/modules/ds_forms/ds_forms.info
4 4
package = "Display Suite"
5 5
dependencies[] = ds
6 6

  
7
; Information added by Drupal.org packaging script on 2016-04-26
8
version = "7.x-2.14"
7
; Information added by Drupal.org packaging script on 2018-04-18
8
version = "7.x-2.15"
9 9
core = "7.x"
10 10
project = "ds"
11
datestamp = "1461696967"
12

  
11
datestamp = "1524068596"
drupal7/sites/all/modules/ds/modules/ds_search/ds_search.info
5 5
dependencies[] = ds
6 6
configure = admin/structure/ds/list/search
7 7

  
8
; Information added by Drupal.org packaging script on 2016-04-26
9
version = "7.x-2.14"
8
; Information added by Drupal.org packaging script on 2018-04-18
9
version = "7.x-2.15"
10 10
core = "7.x"
11 11
project = "ds"
12
datestamp = "1461696967"
13

  
12
datestamp = "1524068596"
drupal7/sites/all/modules/ds/modules/ds_ui/ds_ui.info
4 4
package = "Display Suite"
5 5
dependencies[] = ds
6 6

  
7
; Information added by Drupal.org packaging script on 2016-04-26
8
version = "7.x-2.14"
7
; Information added by Drupal.org packaging script on 2018-04-18
8
version = "7.x-2.15"
9 9
core = "7.x"
10 10
project = "ds"
11
datestamp = "1461696967"
12

  
11
datestamp = "1524068596"
drupal7/sites/all/modules/ds/modules/ds_ui/includes/ds.fields.inc
445 445
    '#required' => TRUE,
446 446
    '#default_value' => isset($custom_block->properties['block']) ? $custom_block->properties['block'] : '',
447 447
  );
448
  $form['block_identity']['block_visibility'] = array(
449
    '#type' => 'checkbox',
450
    '#title' => t('Respect Block Visibility'),
451
    '#description' => t('Toggle this checkbox if you would like this field to respect the same visibility settings configured for the block.'),
452
    '#default_value' => isset($custom_block->properties['block_visibility']) ? $custom_block->properties['block_visibility'] : FALSE,
453
  );
448 454
  $form['block_identity']['block_render'] = array(
449 455
    '#type' => 'select',
450 456
    '#options' => array(
......
470 476
  $form_state['field']->properties = array();
471 477
  $form_state['field']->properties['block'] = $form_state['values']['block'];
472 478
  $form_state['field']->properties['block_render'] = $form_state['values']['block_render'];
479
  $form_state['field']->properties['block_visibility'] = $form_state['values']['block_visibility'];
473 480
}
474 481

  
475 482
/**
drupal7/sites/all/modules/ds/tests/ds_exportables_test/ds_exportables_test.info
4 4
core = 7.x
5 5
hidden = TRUE
6 6

  
7
; Information added by Drupal.org packaging script on 2016-04-26
8
version = "7.x-2.14"
7
; Information added by Drupal.org packaging script on 2018-04-18
8
version = "7.x-2.15"
9 9
core = "7.x"
10 10
project = "ds"
11
datestamp = "1461696967"
12

  
11
datestamp = "1524068596"
drupal7/sites/all/modules/ds/tests/ds_test.info
5 5
dependencies[] = ds_extras
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2016-04-26
9
version = "7.x-2.14"
8
; Information added by Drupal.org packaging script on 2018-04-18
9
version = "7.x-2.15"
10 10
core = "7.x"
11 11
project = "ds"
12
datestamp = "1461696967"
13

  
12
datestamp = "1524068596"
drupal7/sites/all/modules/media/media.api.php
135 135
  $stored_params['types'][] = 'document';
136 136
  unset($stored_params['enabledPlugins'][0]);
137 137
}
138

  
139
/**
140
 *
141
 * Alter the media multiple elements widget
142
 *
143
 * @param $table
144
 *   the table of elements that will be rendered via theme_table()
145
 * @param $element
146
 *   elements that are actually attached
147
 *
148
 * @see theme_media_widget_multiple()
149
 */
150
function hook_media_widget_multiple_alter(&$table, &$element) {
151
  $table['attributes']['class'][] = 'myclass';
152
}
drupal7/sites/all/modules/media/media.info
24 24
; We have to add a fake version so Git checkouts do not fail Media dependencies
25 25
version = 7.x-2.x-dev
26 26

  
27
; Information added by Drupal.org packaging script on 2018-02-09
28
version = "7.x-2.16"
27
; Information added by Drupal.org packaging script on 2018-04-17
28
version = "7.x-2.18"
29 29
core = "7.x"
30 30
project = "media"
31
datestamp = "1518139099"
32

  
31
datestamp = "1523965989"
drupal7/sites/all/modules/media/modules/media_bulk_upload/media_bulk_upload.info
15 15
files[] = includes/MediaBrowserBulkUpload.inc
16 16
files[] = tests/media_bulk_upload.test
17 17

  
18
; Information added by Drupal.org packaging script on 2018-02-09
19
version = "7.x-2.16"
18
; Information added by Drupal.org packaging script on 2018-04-17
19
version = "7.x-2.18"
20 20
core = "7.x"
21 21
project = "media"
22
datestamp = "1518139099"
23

  
22
datestamp = "1523965989"
drupal7/sites/all/modules/media/modules/media_internet/media_internet.info
12 12
files[] = includes/MediaInternetValidationException.inc
13 13
files[] = tests/media_internet.test
14 14

  
15
; Information added by Drupal.org packaging script on 2018-02-09
16
version = "7.x-2.16"
15
; Information added by Drupal.org packaging script on 2018-04-17
16
version = "7.x-2.18"
17 17
core = "7.x"
18 18
project = "media"
19
datestamp = "1518139099"
20

  
19
datestamp = "1523965989"
drupal7/sites/all/modules/media/modules/media_internet/media_internet.module
321 321
    $form_state['storage']['upload'] = $file->fid;
322 322
  }
323 323
}
324

  
325
/**
326
 * Implements hook_form_FORM_ID_alter().
327
 */
328
function media_internet_form_file_entity_edit_alter(&$form, &$form_state) {
329
  if (!empty($form['#entity'])) {
330
    $embed_code = file_create_url($form['#entity']->uri);
331

  
332
    try {
333
      $provider = get_class(media_internet_get_provider($embed_code));
334
    }
335
    catch (Exception $e) {
336
      form_set_error('embed_code', $e->getMessage());
337
      $provider = NULL;
338
    }
339
    if (!empty($provider) && $provider != 'MediaInternetFileHandler') {
340
      $form['embed_code'] = array(
341
        '#type' => 'textfield',
342
        '#title' => t('File URL'),
343
        '#description' => t('Enter the URL of this file.'),
344
        '#attributes' => array('class' => array('media-add-from-url')),
345
        '#maxlength' => 2083,
346
        '#required' => TRUE,
347
        '#default_value' => $embed_code,
348
      );
349

  
350
      $form['#validators'] = array();
351

  
352
      array_unshift($form['actions']['submit']['#validate'], 'media_internet_add_validate');
353
      array_unshift($form['actions']['submit']['#submit'], 'media_internet_edit_submit');
354
    }
355
  }
356
}
357

  
358
/**
359
 *  Submit callback that updates managed file URI.
360
 */
361
function media_internet_edit_submit($form, &$form_state) {
362
  $embed_code = $form_state['values']['embed_code'];
363
  $provider = get_class(media_internet_get_provider($embed_code));
364
  $handler = new $provider($embed_code);
365

  
366
  $form_state['values']['uri'] = $handler->parse($embed_code);
367
}
drupal7/sites/all/modules/media/modules/media_internet/tests/media_internet_test.info
7 7
files[] = includes/MediaInternetTestStreamWrapper.inc
8 8
files[] = includes/MediaInternetTestHandler.inc
9 9

  
10
; Information added by Drupal.org packaging script on 2018-02-09
11
version = "7.x-2.16"
10
; Information added by Drupal.org packaging script on 2018-04-17
11
version = "7.x-2.18"
12 12
core = "7.x"
13 13
project = "media"
14
datestamp = "1518139099"
15

  
14
datestamp = "1523965989"
drupal7/sites/all/modules/media/modules/media_migrate_file_types/media_migrate_file_types.info
8 8

  
9 9
configure = admin/structure/file-types/upgrade
10 10

  
11
; Information added by Drupal.org packaging script on 2018-02-09
12
version = "7.x-2.16"
11
; Information added by Drupal.org packaging script on 2018-04-17
12
version = "7.x-2.18"
13 13
core = "7.x"
14 14
project = "media"
15
datestamp = "1518139099"
16

  
15
datestamp = "1523965989"
drupal7/sites/all/modules/media/modules/media_wysiwyg/includes/media_wysiwyg.filter.inc
323 323
    $element = array();
324 324
    // Render the file entity, for sites using the file_entity rendering method.
325 325
    if (variable_get('media_wysiwyg_default_render', 'file_entity') == 'file_entity') {
326
      $element['content'] = file_view($file, $tag_info['view_mode']);
326
      $element['content'] = file_view($file, $tag_info['view_mode'], $langcode);
327 327
    }
328 328
    $element['content']['file'] = media_wysiwyg_get_file_without_label($file, $tag_info['view_mode'], $settings, $langcode);
329 329
    // Overwrite or set the file #alt attribute if it has been set in this
......
388 388
}
389 389

  
390 390
/**
391
 * Parse the field array from the collapsed AJAX string.
391
 * Parse the 'fields' entry of $tag_info into structured, sanitized fields data.
392
 *
393
 * The keys of the fields array are the string equivalent of accessing the
394
 * field's value, e.g. 'field_file_image_alt_text[und][0][value]' and the value
395
 * is the actual field value. These parts are turned into sanitized fields data
396
 * arrays with the full hierarchy of language, deltas, data column and finally
397
 * value.
398
 *
399
 * Only configured or programmed fields present in the site's installation is
400
 * parsed and returned.
401
 *
402
 * @param array $tag_info
403
 *   Media token as PHP array equivalent.
404
 *
405
 * @return array
406
 *   An array of fields with sanitized field data structures.
392 407
 */
393
function media_wysiwyg_filter_field_parser($tag_info) {
408
function media_wysiwyg_filter_field_parser(array $tag_info) {
394 409
  $fields = array();
395 410
  if (isset($tag_info['fields'])) {
396
    // Field names that end in [format] are associated with long-text fields that may have HTML Entities.
397
    // Those values will need to be URLDecoded as well as HTMLDecoded.
411
    // Field value reference candidates (keys) that end in [format] are
412
    // associated with long-text fields that may have HTML Entities. Those
413
    // values will need to be URLDecoded as well as HTMLDecoded.
398 414
    $url_encoded_fields = array();
399
    foreach($tag_info['fields'] as $field_name => $field_value) {
400
      if (preg_match('/\[format\]$/', $field_name) > 0){
401
        $url_encoded_fields[] = preg_replace('/\[format\]$/', '[value]', $field_name);
415
    foreach ($tag_info['fields'] as $candidate => $field_value) {
416
      if (preg_match('/\[format\]$/', $candidate) > 0) {
417
        $url_encoded_fields[] = preg_replace('/\[format\]$/', '[value]', $candidate);
402 418
      }
403 419
    }
404 420

  
405
    foreach($tag_info['fields'] as $field_name => $field_value) {
406
      if (strpos($field_name, 'field_') === 0) {
407
        $parsed_field = explode('[', str_replace(']', '', $field_name));
408
        $ref = &$fields;
421
    foreach ($tag_info['fields'] as $candidate => $field_value) {
422
      if (strpos($candidate, 'field_') === 0) {
423
        $parsed_field = explode('[', str_replace(']', '', $candidate));
424
        // We are garuanteed to have a value in $parsed_field[0].
425
        $info = field_info_field($parsed_field[0]);
426
        if (!$info) {
427
          // Not an existing/configured field.
428
          continue;
429
        }
409 430

  
410 431
        // Certain types of fields, because of differences in markup, end up
411 432
        // here with incomplete arrays. Make a best effort to support as many
412 433
        // types of fields as possible.
413 434
        // Single-value select lists show up here with only 2 array items.
414 435
        if (count($parsed_field) == 2) {
415
          $info = field_info_field($parsed_field[0]);
416 436
          if ($info && !empty($info['columns'])) {
417 437
            // Assume single-value.
418 438
            $parsed_field[] = 0;
......
422 442
        }
423 443
        // Multi-value select lists show up here with 3 array items.
424 444
        elseif (count($parsed_field) == 3 && (empty($parsed_field[2]) || is_numeric($parsed_field[2]))) {
425
          $info = field_info_field($parsed_field[0]);
426 445
          // They just need the value column.
427 446
          $parsed_field[3] = key($info['columns']);
428 447
        }
429 448

  
430 449
        // Each key of the field needs to be the child of the previous key.
450
        $ref = &$fields;
431 451
        foreach ($parsed_field as $key) {
432 452
          if (!isset($ref[$key])) {
433 453
            $ref[$key] = array();
434 454
          }
435 455
          $ref = &$ref[$key];
436 456
        }
437

  
438 457
        // The value should be set at the deepest level.
439
        if (in_array($field_name, $url_encoded_fields)){
458
        if (in_array($candidate, $url_encoded_fields)) {
440 459
          // Fields that use rich-text markup will be urlencoded.
441 460
          $ref = urldecode(decode_entities($field_value));
442 461
        }
......
446 465
        }
447 466
      }
448 467
    }
468
    // Strip fields for empty values. This is necessary to do post parsing of
469
    // all field entries as they may refer to the same field several times.
470
    foreach ($fields as $field_name => $field_languages) {
471
      $info = field_info_field($field_name);
472
      if (isset($field_languages) && is_array($field_languages)) {
473
        foreach ($field_languages as $lang => $items) {
474
          $fields[$field_name][$lang] = _field_filter_items($info, $items);
475
        }
476
      }
477
    }
449 478
  }
450 479
  return $fields;
451 480
}
drupal7/sites/all/modules/media/modules/media_wysiwyg/media_wysiwyg.info
16 16

  
17 17
configure = admin/config/media/browser
18 18

  
19
; Information added by Drupal.org packaging script on 2018-02-09
20
version = "7.x-2.16"
19
; Information added by Drupal.org packaging script on 2018-04-17
20
version = "7.x-2.18"
21 21
core = "7.x"
22 22
project = "media"
23
datestamp = "1518139099"
24

  
23
datestamp = "1523965989"
drupal7/sites/all/modules/media/modules/media_wysiwyg/media_wysiwyg.install
182 182
  // Migrate the configuration from the old variables into the new DB tables.
183 183
  $types = file_type_load_all(TRUE);
184 184
  foreach ($types as $type) {
185
    $enabled = variable_get("media_wysiwyg_view_mode_" . $type->type . "_file_wysiwyg_restricted_view_modes_status", FALSE);
185
    $enabled = variable_get("media_wysiwyg_view_mode_" . $type->type . "_wysiwyg_restricted_view_modes_status", FALSE);
186 186
    if ($enabled) {
187
      $wysiwyg_restricted_view_modes = variable_get("media_wysiwyg_view_mode_" . $type->type . "_file_wysiwyg_restricted_view_modes", array());
187
      $wysiwyg_restricted_view_modes = variable_get("media_wysiwyg_view_mode_" . $type->type . "_wysiwyg_restricted_view_modes", array());
188 188
      foreach ($wysiwyg_restricted_view_modes as $wysiwyg_restricted_view_mode) {
189 189
        db_insert('media_restrict_wysiwyg')
190 190
          ->fields(array(
......
195 195
      }
196 196
    }
197 197

  
198
    $enabled = variable_get("media_wysiwyg_view_mode_" . $type->type . "_wysiwyg_view_mode_status", FALSE);
198
    $enabled = variable_get("media_wysiwyg_view_mode_" . $type->type . "_file_wysiwyg_view_mode_status", FALSE);
199 199
    if ($enabled) {
200 200
      $file_wysiwyg_view_mode = variable_get("media_wysiwyg_view_mode_" . $type->type . "_file_wysiwyg_view_mode", 'wysiwyg');
201 201
      db_insert('media_view_mode_wysiwyg')
drupal7/sites/all/modules/media/modules/media_wysiwyg/tests/media_wysiwyg.macro.test
6 6
 */
7 7

  
8 8
/**
9
 * Defines media macro test cases.
9
 * Base class for testing rendered wysiwyg macros.
10 10
 */
11
class MediaWYSIWYGWYSIWYGOverridesTest extends MediaWYSIWYGTestHelper {
11
abstract class MediaWYSIWYGMacroTestHelper extends MediaWYSIWYGTestHelper {
12 12

  
13 13
  /**
14
   * Provide test information.
14
   * Common setup routines for rendered media macros.
15 15
   */
16
  public static function getInfo() {
17
    return array(
18
      'name' => t('Media WYSIWYG WYSIWYG overrides'),
19
      'description' => t('Tests that overridden attributes display correct.'),
20
      'group' => t('Media WYSIWYG'),
21
      'dependencies' => array('token'),
22
    );
23
  }
24

  
25 16
  public function setUp() {
26
    parent::setUp('token');
17
    parent::setUp(array('field_ui', 'token'));
27 18

  
28 19
    // Create and log in a user.
29
    $account = $this->drupalCreateUser(array('create article content', 'administer filters', 'use text format filtered_html'));
30
    $this->drupalLogin($account);
20
    $this->admin_user = $this->drupalCreateUser(array(
21
      'administer file types',
22
      'administer fields',
23
      'administer filters',
24
      'create article content',
25
      'use text format filtered_html',
26
    ));
27
    $this->drupalLogin($this->admin_user);
31 28

  
32 29
    // Enable the media filter for full html.
33 30
    $edit = array(
......
37 34
    $this->drupalPost('admin/config/content/formats/filtered_html', $edit, t('Save configuration'));
38 35
  }
39 36

  
37
}
38

  
39
/**
40
 * Defines rendered media macros test cases.
41
 */
42
class MediaWYSIWYGRenderMacrosTest extends MediaWYSIWYGMacroTestHelper {
43

  
44
  /**
45
   * Test information.
46
   */
47
  public static function getInfo() {
48
    return array(
49
      'name' => t('Media WYSIWYG Rendered Macros test'),
50
      'description' => t('Test that rendered macros are displayed correctly.'),
51
      'group' => t('Media WYSIWYG'),
52
      'dependencies' => array('token'),
53
    );
54
  }
55

  
56
  /**
57
   * Test that displayed fields on file entity are rendered correctly.
58
   */
59
  public function testEmptyField() {
60
    // Add a field as part of the rendered macro.
61
    $edit = array(
62
      'fields[field_file_image_title_text][type]' => 'text_default',
63
    );
64
    $this->drupalPost('admin/structure/file-types/manage/image/display/preview', $edit, t('Save'));
65

  
66
    // Assert that fields that are enabled in display settings for macro are NOT
67
    // rendered if empty.
68
    $files = $this->drupalGetTestFiles('image');
69
    $attributes = array(
70
      'alt' => $this->randomName(),
71
      'title' => '',
72
    );
73
    $fields = array(
74
      'field_file_image_alt_text[und][0][value]' => $attributes['alt'],
75
      'field_file_image_title_text[und][0][value]' => $attributes['title'],
76
    );
77
    $files[0]->field_file_image_alt_text[LANGUAGE_NONE][0]['value'] = $attributes['alt'];
78
    $files[0]->field_file_image_title_text[LANGUAGE_NONE][0]['value'] = $attributes['title'];
79
    $file = file_save($files[0]);
80
    $nid = $this->createNode($file->fid, $attributes, $fields);
81
    $this->drupalGet('node/' . $nid);
82
    // Assert that the empty field isn't rendered.
83
    $this->assertNoPattern('|<div class="[^">]*field-name-field-file-image-title-text|', t('Displayed text field with empty value not rendered.'));
84
  }
85

  
86
}
87

  
88
/**
89
 * Defines media macro override test cases.
90
 */
91
class MediaWYSIWYGWYSIWYGOverridesTest extends MediaWYSIWYGMacroTestHelper {
92

  
93
  /**
94
   * Provide test information.
95
   */
96
  public static function getInfo() {
97
    return array(
98
      'name' => t('Media WYSIWYG WYSIWYG overrides'),
99
      'description' => t('Tests that overridden attributes display correct.'),
100
      'group' => t('Media WYSIWYG'),
101
      'dependencies' => array('token'),
102
    );
103
  }
104

  
40 105
  /**
41 106
   * Test image media overrides.
42 107
   */
drupal7/sites/all/modules/media/modules/media_wysiwyg_view_mode/media_wysiwyg_view_mode.info
3 3
package = Media
4 4
core = 7.x
5 5

  
6
; Information added by Drupal.org packaging script on 2018-02-09
7
version = "7.x-2.16"
6
; Information added by Drupal.org packaging script on 2018-04-17
7
version = "7.x-2.18"
8 8
core = "7.x"
9 9
project = "media"
10
datestamp = "1518139099"
11

  
10
datestamp = "1523965989"
drupal7/sites/all/modules/media/modules/mediafield/mediafield.info
4 4
core = 7.x
5 5
dependencies[] = media
6 6

  
7
; Information added by Drupal.org packaging script on 2018-02-09
8
version = "7.x-2.16"
7
; Information added by Drupal.org packaging script on 2018-04-17
8
version = "7.x-2.18"
9 9
core = "7.x"
10 10
project = "media"
11
datestamp = "1518139099"
12

  
11
datestamp = "1523965989"
drupal7/sites/all/modules/media/tests/media_module_test.info
6 6

  
7 7
files[] = includes/MediaModuleTest.inc
8 8

  
9
; Information added by Drupal.org packaging script on 2018-02-09
10
version = "7.x-2.16"
9
; Information added by Drupal.org packaging script on 2018-04-17
10
version = "7.x-2.18"
11 11
core = "7.x"
12 12
project = "media"
13
datestamp = "1518139099"
14

  
13
datestamp = "1523965989"
drupal7/sites/all/modules/views/includes/view.inc
1426 1426
      $this->set_arguments($args);
1427 1427
    }
1428 1428

  
1429
    // Trigger hook_views_pre_preview(). Allow other modules to modify the view
1429
    // Trigger hook_views_pre_view(). Allow other modules to modify the view
1430 1430
    // just prior to executing the preview.
1431
    foreach (module_implements('views_pre_preview') as $module) {
1432
      $function = $module . '_views_pre_preview';
1431
    foreach (module_implements('views_pre_view') as $module) {
1432
      $function = $module . '_views_pre_view';
1433 1433
      $function($this, $display_id, $this->args);
1434 1434
    }
1435 1435

  
1436
    // Allow hook_views_pre_preview() to set the dom_id, then ensure it is set.
1436
    // Allow hook_views_pre_view() to set the dom_id, then ensure it is set.
1437 1437
    $this->dom_id = !empty($this->dom_id) ? $this->dom_id : md5($this->name . REQUEST_TIME . rand());
1438 1438

  
1439 1439
    // Allow the display handler to set up for execution.
......
1892 1892

  
1893 1893
    $this->save_locale_strings();
1894 1894

  
1895
    // Clear caches.
1896
    views_invalidate_cache();
1895
    // Clear the relevant caches.
1896
    cache_clear_all('views_block_items:', 'cache_views', TRUE);
1897
    views_invalidate_cache('ctools_export:views_view:' . $this->name);
1897 1898

  
1898 1899
    // Notify modules that this view has been saved.
1899 1900
    module_invoke_all('views_view_save', $this);
......
1935 1936

  
1936 1937
    if ($clear) {
1937 1938
      // Clear caches.
1938
      views_invalidate_cache();
1939
      cache_clear_all('views_block_items:', 'cache_views', TRUE);
1940
      views_invalidate_cache('ctools_export:views_view:' . $this->name);
1939 1941
    }
1940 1942

  
1941 1943
    // Notify modules that this view has been deleted.
drupal7/sites/all/modules/views/tests/views_test.info
5 5
dependencies[] = views
6 6
hidden = TRUE
7 7

  
8
; Information added by Drupal.org packaging script on 2018-04-11
9
version = "7.x-3.19"
8
; Information added by Drupal.org packaging script on 2018-04-14
9
version = "7.x-3.20"
10 10
core = "7.x"
11 11
project = "views"
12
datestamp = "1523464389"
12
datestamp = "1523668093"
drupal7/sites/all/modules/views/views.api.php
981 981
 * @param array $args
982 982
 *   An array of arguments passed into the view.
983 983
 */
984
function hook_views_pre_preview(&$view, &$display_id, &$args) {
984
function hook_views_pre_view(&$view, &$display_id, &$args) {
985 985
  // Change the display if the acting user has 'administer site configuration'
986 986
  // permission, to display something radically different.
987 987
  // (Note that this is not necessarily the best way to solve that task. Feel
......
1260 1260
 * This hook should fire whenever a view is enabled, disabled, created,
1261 1261
 * updated, or deleted.
1262 1262
 *
1263
 * @param string $cid
1264
 *   The cache identifier that is being cleared.
1265
 *
1263 1266
 * @see views_invalidate_cache()
1264 1267
 */
1265
function hook_views_invalidate_cache() {
1268
function hook_views_invalidate_cache($cid) {
1266 1269
  cache_clear_all('views:*', 'cache_mymodule', TRUE);
1267 1270
}
1268 1271

  
drupal7/sites/all/modules/views/views.info
328 328
files[] = tests/views_view.test
329 329
files[] = tests/views_ui.test
330 330

  
331
; Information added by Drupal.org packaging script on 2018-04-11
332
version = "7.x-3.19"
331
; Information added by Drupal.org packaging script on 2018-04-14
332
version = "7.x-3.20"
333 333
core = "7.x"
334 334
project = "views"
335
datestamp = "1523464389"
335
datestamp = "1523668093"
drupal7/sites/all/modules/views/views.module
1012 1012

  
1013 1013
/**
1014 1014
 * Invalidate the views cache, forcing a rebuild on the next grab of table data.
1015
 *
1016
 * @param string $cid
1017
 *   The cache identifier we want to clear. If no given, it will default to '*'
1018
 *   which will clear the entire cache_views bin.
1015 1019
 */
1016
function views_invalidate_cache() {
1020
function views_invalidate_cache($cid = '*') {
1017 1021
  // Clear the views cache.
1018
  cache_clear_all('*', 'cache_views', TRUE);
1022
  cache_clear_all($cid, 'cache_views', TRUE);
1019 1023

  
1020 1024
  // Clear the page and block cache.
1021 1025
  cache_clear_all();
......
1024 1028
  variable_set('menu_rebuild_needed', TRUE);
1025 1029

  
1026 1030
  // Allow modules to respond to the Views cache being cleared.
1027
  module_invoke_all('views_invalidate_cache');
1031
  module_invoke_all('views_invalidate_cache', $cid);
1028 1032
}
1029 1033

  
1030 1034
/**
drupal7/sites/all/modules/views/views_ui.info
8 8
files[] = views_ui.module
9 9
files[] = plugins/views_wizard/views_ui_base_views_wizard.class.php
10 10

  
11
; Information added by Drupal.org packaging script on 2018-04-11
12
version = "7.x-3.19"
11
; Information added by Drupal.org packaging script on 2018-04-14
12
version = "7.x-3.20"
13 13
core = "7.x"
14 14
project = "views"
15
datestamp = "1523464389"
15
datestamp = "1523668093"

Formats disponibles : Unified diff