Révision 582db59d
Ajouté par Assos Assos il y a plus de 8 ans
drupal7/.htaccess | ||
---|---|---|
141 | 141 |
</FilesMatch> |
142 | 142 |
</IfModule> |
143 | 143 |
</IfModule> |
144 |
|
|
145 |
# Add headers to all responses. |
|
146 |
<IfModule mod_headers.c> |
|
147 |
# Disable content sniffing, since it's an attack vector. |
|
148 |
Header always set X-Content-Type-Options nosniff |
|
149 |
</IfModule> |
drupal7/CHANGELOG.txt | ||
---|---|---|
1 | 1 |
|
2 |
Drupal 7.40, 2015-10-14 |
|
3 |
----------------------- |
|
4 |
- Made Drupal's code for parsing .info files run much faster and use much less |
|
5 |
memory. |
|
6 |
- Prevented drupal_http_request() from returning an error when it receives a |
|
7 |
201 through 206 HTTP status code. |
|
8 |
- Added support for autoloading traits via the registry on sites running PHP |
|
9 |
5.4 or higher. |
|
10 |
- Allowed the user-picture.tpl.php theme template to have HTML classes besides |
|
11 |
the default "user-picture" class printed in it (markup change). |
|
12 |
- Fixed the URL text filter to convert e-mail addresses with plus signs into |
|
13 |
mailto: links. |
|
14 |
- Added alternate text to file icons displayed by the File module, to improve |
|
15 |
accessibility (string change, and minor API addition to theme_file_icon()). |
|
16 |
- Changed one-time login link failure messages to be displayed as errors or |
|
17 |
warnings as appropriate, rather than as regular status messages (minor UI |
|
18 |
change and data structure change). |
|
19 |
- Changed the default settings.php configuration to exclude private files from |
|
20 |
the "404_fast_paths" behavior. |
|
21 |
- Changed the page that displays filter tips for a particular text format, for |
|
22 |
example filter/tips/full_html, to return "page not found" or "access denied" |
|
23 |
if the format does not exist or the user does not have access to it. This |
|
24 |
change adds a new menu item to the Filter module's hook_menu() entry (minor |
|
25 |
data structure change). |
|
26 |
- Added a new hook, hook_block_cid_parts_alter(), to allow modules to alter the |
|
27 |
cache keys used for caching a particular block. |
|
28 |
- Made drupal_set_message() display and return messages when "0" is passed in |
|
29 |
as the message to set. |
|
30 |
- Fixed non-functional "Files displayed by default" setting on file fields. |
|
31 |
- The "worker callback" provided in hook_cron_queue_info() and the "finished" |
|
32 |
callback specified during batch processing can now be any PHP callable |
|
33 |
instead of just functions. |
|
34 |
- Prevented drupal_set_time_limit() from decreasing the time limit in the case |
|
35 |
where the PHP maximum execution time is already unlimited. |
|
36 |
- Changed the default thousand marker for numeric fields from a space ("1 000") |
|
37 |
to nothing ("1000") (minor UI change: https://www.drupal.org/node/1388376). |
|
38 |
- Prevented malformed theme .info files (without a "name" key) from causing |
|
39 |
exceptions during menu rebuilds. If an .info file without a "name" key is |
|
40 |
found in a module or theme directory, Drupal will now use the module or |
|
41 |
theme's machine name as the display name instead. |
|
42 |
- Made the format column in the {date_format_locale} database table |
|
43 |
case-sensitive, to match the equivalent column in the {date_formats} table. |
|
44 |
- Fixed a bug in the Statistics module that caused JavaScript files attached to |
|
45 |
a node while it is being viewed to be omitted from the page. |
|
46 |
- Added an optional 'project:' prefix that can be added to dependencies in a |
|
47 |
module's .info file to indicate which project the dependency resides in (API |
|
48 |
addition: https://www.drupal.org/node/2299747). |
|
49 |
- Fixed various bugs that occurred after hooks were invoked early in the Drupal |
|
50 |
bootstrap and that caused module_implements() and drupal_alter() to cache an |
|
51 |
incomplete set of hook implementations for later use. |
|
52 |
- Set the X-Content-Type-Options header to "nosniff" when possible, to prevent |
|
53 |
certain web browsers from picking an unsafe MIME type. |
|
54 |
- Prevented the database API from executing multiple queries at once on MySQL, |
|
55 |
if the site's PHP version is new enough to do so. This is a secondary defense |
|
56 |
against SQL injection (API change: https://www.drupal.org/node/2463973). |
|
57 |
- Fixed a bug in the Drupal 6 to Drupal 7 upgrade path which caused the upgrade |
|
58 |
to fail when there were multiple file records pointing to the same file. |
|
59 |
- Numerous small bug fixes. |
|
60 |
- Numerous API documentation improvements. |
|
61 |
- Additional automated test coverage. |
|
62 |
|
|
2 | 63 |
Drupal 7.39, 2015-08-19 |
3 | 64 |
----------------------- |
4 | 65 |
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2015-003. |
... | ... | |
86 | 147 |
- Additional automated test coverage. |
87 | 148 |
|
88 | 149 |
Drupal 7.35, 2015-03-18 |
89 |
---------------------- |
|
150 |
-----------------------
|
|
90 | 151 |
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2015-001. |
91 | 152 |
|
92 | 153 |
Drupal 7.34, 2014-11-19 |
93 |
---------------------- |
|
154 |
-----------------------
|
|
94 | 155 |
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2014-006. |
95 | 156 |
|
96 | 157 |
Drupal 7.33, 2014-11-07 |
... | ... | |
159 | 220 |
- Additional automated test coverage. |
160 | 221 |
|
161 | 222 |
Drupal 7.32, 2014-10-15 |
162 |
---------------------- |
|
223 |
-----------------------
|
|
163 | 224 |
- Fixed security issues (SQL injection). See SA-CORE-2014-005. |
164 | 225 |
|
165 | 226 |
Drupal 7.31, 2014-08-06 |
166 |
---------------------- |
|
227 |
-----------------------
|
|
167 | 228 |
- Fixed security issues (denial of service). See SA-CORE-2014-004. |
168 | 229 |
|
169 | 230 |
Drupal 7.30, 2014-07-24 |
... | ... | |
178 | 239 |
- Additional automated test coverage. |
179 | 240 |
|
180 | 241 |
Drupal 7.29, 2014-07-16 |
181 |
---------------------- |
|
242 |
-----------------------
|
|
182 | 243 |
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2014-003. |
183 | 244 |
|
184 | 245 |
Drupal 7.28, 2014-05-08 |
... | ... | |
224 | 285 |
- Additional automated test coverage. |
225 | 286 |
|
226 | 287 |
Drupal 7.27, 2014-04-16 |
227 |
---------------------- |
|
288 |
-----------------------
|
|
228 | 289 |
- Fixed security issues (information disclosure). See SA-CORE-2014-002. |
229 | 290 |
|
230 | 291 |
Drupal 7.26, 2014-01-15 |
231 |
---------------------- |
|
292 |
-----------------------
|
|
232 | 293 |
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2014-001. |
233 | 294 |
|
234 | 295 |
Drupal 7.25, 2014-01-02 |
... | ... | |
294 | 355 |
- Additional automated test coverage. |
295 | 356 |
|
296 | 357 |
Drupal 7.24, 2013-11-20 |
297 |
---------------------- |
|
358 |
-----------------------
|
|
298 | 359 |
- Fixed security issues (multiple vulnerabilities), see SA-CORE-2013-003. |
299 | 360 |
|
300 | 361 |
Drupal 7.23, 2013-08-07 |
... | ... | |
548 | 609 |
- Numerous API documentation improvements. |
549 | 610 |
- Additional automated test coverage. |
550 | 611 |
|
551 |
Drupal 7.14 2012-05-02 |
|
552 |
---------------------- |
|
612 |
Drupal 7.14, 2012-05-02
|
|
613 |
-----------------------
|
|
553 | 614 |
- Fixed "integrity constraint" fatal errors when rebuilding registry. |
554 | 615 |
- Fixed custom logo and favicon functionality referencing incorrect paths. |
555 | 616 |
- Fixed DB Case Sensitivity: Allow BINARY attribute in MySQL. |
... | ... | |
597 | 658 |
- system_update_7061() converts filepaths too aggressively. |
598 | 659 |
- Trigger upgrade path: Node triggers removed when upgrading to 7-x from 6.25. |
599 | 660 |
|
600 |
Drupal 7.13 2012-05-02 |
|
601 |
---------------------- |
|
661 |
Drupal 7.13, 2012-05-02
|
|
662 |
-----------------------
|
|
602 | 663 |
- Fixed security issues (Multiple vulnerabilities), see SA-CORE-2012-002. |
603 | 664 |
|
604 | 665 |
Drupal 7.12, 2012-02-01 |
605 |
---------------------- |
|
666 |
-----------------------
|
|
606 | 667 |
- Fixed bug preventing custom menus from receiving an active trail. |
607 | 668 |
- Fixed hook_field_delete() no longer invoked during field_purge_data(). |
608 | 669 |
- Fixed bug causing entity info cache to not be cleared with the rest of caches. |
... | ... | |
636 | 697 |
cache. |
637 | 698 |
|
638 | 699 |
Drupal 7.11, 2012-02-01 |
639 |
---------------------- |
|
700 |
-----------------------
|
|
640 | 701 |
- Fixed security issues (Multiple vulnerabilities), see SA-CORE-2012-001. |
641 | 702 |
|
642 | 703 |
Drupal 7.10, 2011-12-05 |
643 |
---------------------- |
|
704 |
-----------------------
|
|
644 | 705 |
- Fixed Content-Language HTTP header to not cause issues with Drush 5.x. |
645 | 706 |
- Reduce memory usage of theme registry (performance). |
646 | 707 |
- Fixed PECL upload progress bar for FileField |
... | ... | |
993 | 1054 |
requests. |
994 | 1055 |
|
995 | 1056 |
Drupal 6.23-dev, xxxx-xx-xx (development release) |
996 |
----------------------- |
|
1057 |
---------------------------
|
|
997 | 1058 |
|
998 | 1059 |
Drupal 6.22, 2011-05-25 |
999 | 1060 |
----------------------- |
... | ... | |
1003 | 1064 |
- Fixed a variety of other bugs. |
1004 | 1065 |
|
1005 | 1066 |
Drupal 6.21, 2011-05-25 |
1006 |
---------------------- |
|
1067 |
-----------------------
|
|
1007 | 1068 |
- Fixed security issues (Cross site scripting), see SA-CORE-2011-001. |
1008 | 1069 |
|
1009 | 1070 |
Drupal 6.20, 2010-12-15 |
1010 |
---------------------- |
|
1071 |
-----------------------
|
|
1011 | 1072 |
- Fixed a variety of small bugs, improved code documentation. |
1012 | 1073 |
|
1013 | 1074 |
Drupal 6.19, 2010-08-11 |
1014 |
---------------------- |
|
1075 |
-----------------------
|
|
1015 | 1076 |
- Fixed a variety of small bugs, improved code documentation. |
1016 | 1077 |
|
1017 | 1078 |
Drupal 6.18, 2010-08-11 |
1018 |
---------------------- |
|
1079 |
-----------------------
|
|
1019 | 1080 |
- Fixed security issues (OpenID authentication bypass, File download access |
1020 | 1081 |
bypass, Comment unpublishing bypass, Actions cross site scripting), |
1021 | 1082 |
see SA-CORE-2010-002. |
1022 | 1083 |
|
1023 | 1084 |
Drupal 6.17, 2010-06-02 |
1024 |
---------------------- |
|
1085 |
-----------------------
|
|
1025 | 1086 |
- Improved PostgreSQL compatibility |
1026 | 1087 |
- Better PHP 5.3 and PHP 4 compatibility |
1027 | 1088 |
- Better browser compatibility of CSS and JS aggregation |
... | ... | |
1030 | 1091 |
- Fixed a variety of other bugs. |
1031 | 1092 |
|
1032 | 1093 |
Drupal 6.16, 2010-03-03 |
1033 |
---------------------- |
|
1094 |
-----------------------
|
|
1034 | 1095 |
- Fixed security issues (Installation cross site scripting, Open redirection, |
1035 | 1096 |
Locale module cross site scripting, Blocked user session regeneration), |
1036 | 1097 |
see SA-CORE-2010-001. |
... | ... | |
1042 | 1103 |
- Fixed a variety of other bugs. |
1043 | 1104 |
|
1044 | 1105 |
Drupal 6.15, 2009-12-16 |
1045 |
---------------------- |
|
1106 |
-----------------------
|
|
1046 | 1107 |
- Fixed security issues (Cross site scripting), see SA-CORE-2009-009. |
1047 | 1108 |
- Fixed a variety of other bugs. |
1048 | 1109 |
|
1049 | 1110 |
Drupal 6.14, 2009-09-16 |
1050 |
---------------------- |
|
1111 |
-----------------------
|
|
1051 | 1112 |
- Fixed security issues (OpenID association cross site request forgeries, |
1052 | 1113 |
OpenID impersonation and File upload), see SA-CORE-2009-008. |
1053 | 1114 |
- Changed the system modules page to not run all cache rebuilds; use the |
... | ... | |
1056 | 1117 |
- Fixed a variety of small bugs. |
1057 | 1118 |
|
1058 | 1119 |
Drupal 6.13, 2009-07-01 |
1059 |
---------------------- |
|
1120 |
-----------------------
|
|
1060 | 1121 |
- Fixed security issues (Cross site scripting, Input format access bypass and |
1061 | 1122 |
Password leakage in URL), see SA-CORE-2009-007. |
1062 | 1123 |
- Fixed a variety of small bugs. |
1063 | 1124 |
|
1064 | 1125 |
Drupal 6.12, 2009-05-13 |
1065 |
---------------------- |
|
1126 |
-----------------------
|
|
1066 | 1127 |
- Fixed security issues (Cross site scripting), see SA-CORE-2009-006. |
1067 | 1128 |
- Fixed a variety of small bugs. |
1068 | 1129 |
|
1069 | 1130 |
Drupal 6.11, 2009-04-29 |
1070 |
---------------------- |
|
1131 |
-----------------------
|
|
1071 | 1132 |
- Fixed security issues (Cross site scripting and limited information |
1072 | 1133 |
disclosure), see SA-CORE-2009-005 |
1073 | 1134 |
- Fixed performance issues with the menu router cache, the update |
... | ... | |
1075 | 1136 |
- Fixed a variety of small bugs. |
1076 | 1137 |
|
1077 | 1138 |
Drupal 6.10, 2009-02-25 |
1078 |
---------------------- |
|
1139 |
-----------------------
|
|
1079 | 1140 |
- Fixed a security issue, (Local file inclusion on Windows), |
1080 | 1141 |
see SA-CORE-2009-003 |
1081 | 1142 |
- Fixed node_feed() so custom fields can show up in RSS feeds. |
... | ... | |
1471 | 1532 |
- fixed a security issue (SQL injection), see SA-2007-031 |
1472 | 1533 |
|
1473 | 1534 |
Drupal 4.7.8, 2007-10-17 |
1474 |
---------------------- |
|
1535 |
------------------------
|
|
1475 | 1536 |
- fixed a security issue (HTTP response splitting), see SA-2007-024 |
1476 | 1537 |
- fixed a security issue (Cross site scripting via uploads), see SA-2007-026 |
1477 | 1538 |
- fixed a security issue (API handling of unpublished comment), see SA-2007-030 |
... | ... | |
1584 | 1645 |
- Fixed security issue (DoS), see SA-2007-002 |
1585 | 1646 |
|
1586 | 1647 |
Drupal 4.6.10, 2006-10-18 |
1587 |
------------------------ |
|
1648 |
-------------------------
|
|
1588 | 1649 |
- Fixed security issue (XSS), see SA-2006-024 |
1589 | 1650 |
- Fixed security issue (CSRF), see SA-2006-025 |
1590 | 1651 |
- Fixed security issue (Form action attribute injection), see SA-2006-026 |
drupal7/INSTALL.txt | ||
---|---|---|
23 | 23 |
- Percona Server 5.1.70 (or greater) (http://www.percona.com/). Percona |
24 | 24 |
Server is a backwards-compatible replacement for MySQL. |
25 | 25 |
- PostgreSQL 8.3 (or greater) (http://www.postgresql.org/). |
26 |
- SQLite 3.4.2 (or greater) (http://www.sqlite.org/).
|
|
26 |
- SQLite 3.3.7 (or greater) (http://www.sqlite.org/).
|
|
27 | 27 |
|
28 | 28 |
For more detailed information about Drupal requirements, including a list of |
29 | 29 |
PHP extensions and configurations that are required, see "System requirements" |
drupal7/MAINTAINERS.txt | ||
---|---|---|
1 | 1 |
|
2 | 2 |
Drupal core is built and maintained by the Drupal project community. Everyone is |
3 | 3 |
encouraged to submit issues and changes (patches) to improve Drupal, and to |
4 |
contribute in other ways -- see http://drupal.org/contribute to find out how. |
|
4 |
contribute in other ways -- see https://www.drupal.org/contribute to find out |
|
5 |
how. |
|
5 | 6 |
|
6 | 7 |
Branch maintainers |
7 | 8 |
------------------ |
... | ... | |
9 | 10 |
The Drupal Core branch maintainers oversee the development of Drupal as a whole. |
10 | 11 |
The branch maintainers for Drupal 7 are: |
11 | 12 |
|
12 |
- Dries Buytaert 'dries' http://drupal.org/user/1
|
|
13 |
- Angela Byron 'webchick' http://drupal.org/user/24967
|
|
14 |
- David Rothstein 'David_Rothstein' http://drupal.org/user/124982
|
|
13 |
- Dries Buytaert 'dries' https://www.drupal.org/u/dries
|
|
14 |
- Angela Byron 'webchick' https://www.drupal.org/u/webchick
|
|
15 |
- David Rothstein 'David_Rothstein' https://www.drupal.org/u/david_rothstein
|
|
15 | 16 |
|
16 | 17 |
|
17 | 18 |
Component maintainers |
18 | 19 |
--------------------- |
19 | 20 |
|
20 | 21 |
The Drupal Core component maintainers oversee the development of Drupal |
21 |
subsystems. See http://drupal.org/contribute/core-maintainers for more
|
|
22 |
subsystems. See https://www.drupal.org/contribute/core-maintainers for more
|
|
22 | 23 |
information on their responsibilities, and to find out how to become a component |
23 | 24 |
maintainer. Current component maintainers for Drupal 7: |
24 | 25 |
|
25 | 26 |
Ajax system |
26 |
- Alex Bronstein 'effulgentsia' http://drupal.org/user/78040
|
|
27 |
- Earl Miles 'merlinofchaos' http://drupal.org/user/26979
|
|
27 |
- Alex Bronstein 'effulgentsia' https://www.drupal.org/u/effulgentsia
|
|
28 |
- Earl Miles 'merlinofchaos' https://www.drupal.org/u/merlinofchaos
|
|
28 | 29 |
|
29 | 30 |
Base system |
30 |
- Damien Tournoud 'DamZ' http://drupal.org/user/22211
|
|
31 |
- Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
|
|
31 |
- Damien Tournoud 'DamZ' https://www.drupal.org/u/damien-tournoud
|
|
32 |
- Moshe Weitzman 'moshe weitzman' https://www.drupal.org/u/moshe-weitzman
|
|
32 | 33 |
|
33 | 34 |
Batch system |
34 |
- Yves Chedemois 'yched' http://drupal.org/user/39567
|
|
35 |
- Yves Chedemois 'yched' https://www.drupal.org/u/yched
|
|
35 | 36 |
|
36 | 37 |
Cache system |
37 |
- Damien Tournoud 'DamZ' http://drupal.org/user/22211
|
|
38 |
- Nathaniel Catchpole 'catch' http://drupal.org/user/35733
|
|
38 |
- Damien Tournoud 'DamZ' https://www.drupal.org/u/damien-tournoud
|
|
39 |
- Nathaniel Catchpole 'catch' https://www.drupal.org/u/catch
|
|
39 | 40 |
|
40 | 41 |
Cron system |
41 |
- Derek Wright 'dww' http://drupal.org/user/46549
|
|
42 |
- Derek Wright 'dww' https://www.drupal.org/u/dww
|
|
42 | 43 |
|
43 | 44 |
Database system |
44 |
- Larry Garfield 'Crell' http://drupal.org/user/26398
|
|
45 |
- Larry Garfield 'Crell' https://www.drupal.org/u/crell
|
|
45 | 46 |
|
46 | 47 |
- MySQL driver |
47 |
- Larry Garfield 'Crell' http://drupal.org/user/26398
|
|
48 |
- David Strauss 'David Strauss' http://drupal.org/user/93254
|
|
48 |
- Larry Garfield 'Crell' https://www.drupal.org/u/crell
|
|
49 |
- David Strauss 'David Strauss' https://www.drupal.org/u/david-strauss
|
|
49 | 50 |
|
50 | 51 |
- PostgreSQL driver |
51 |
- Damien Tournoud 'DamZ' http://drupal.org/user/22211
|
|
52 |
- Josh Waihi 'fiasco' http://drupal.org/user/188162
|
|
52 |
- Damien Tournoud 'DamZ' https://www.drupal.org/u/damien-tournoud
|
|
53 |
- Josh Waihi 'fiasco' https://www.drupal.org/u/josh-waihi
|
|
53 | 54 |
|
54 | 55 |
- Sqlite driver |
55 |
- Damien Tournoud 'DamZ' http://drupal.org/user/22211
|
|
56 |
- Damien Tournoud 'DamZ' https://www.drupal.org/u/damien-tournoud
|
|
56 | 57 |
|
57 | 58 |
Database update system |
58 |
- Ashok Modi 'BTMash' http://drupal.org/user/60422
|
|
59 |
- Ashok Modi 'BTMash' https://www.drupal.org/u/btmash
|
|
59 | 60 |
|
60 | 61 |
Entity system |
61 |
- Wolfgang Ziegler 'fago' http://drupal.org/user/16747
|
|
62 |
- Nathaniel Catchpole 'catch' http://drupal.org/user/35733
|
|
63 |
- Franz Heinzmann 'Frando' http://drupal.org/user/21850
|
|
62 |
- Wolfgang Ziegler 'fago' https://www.drupal.org/u/fago
|
|
63 |
- Nathaniel Catchpole 'catch' https://www.drupal.org/u/catch
|
|
64 |
- Franz Heinzmann 'Frando' https://www.drupal.org/u/frando
|
|
64 | 65 |
|
65 | 66 |
File system |
66 |
- Andrew Morton 'drewish' http://drupal.org/user/34869
|
|
67 |
- Aaron Winborn 'aaron' http://drupal.org/user/33420
|
|
67 |
- Andrew Morton 'drewish' https://www.drupal.org/u/drewish
|
|
68 |
- Aaron Winborn 'aaron' https://www.drupal.org/u/aaron
|
|
68 | 69 |
|
69 | 70 |
Form system |
70 |
- Alex Bronstein 'effulgentsia' http://drupal.org/user/78040
|
|
71 |
- Wolfgang Ziegler 'fago' http://drupal.org/user/16747
|
|
72 |
- Daniel F. Kudwien 'sun' http://drupal.org/user/54136
|
|
73 |
- Franz Heinzmann 'Frando' http://drupal.org/user/21850
|
|
71 |
- Alex Bronstein 'effulgentsia' https://www.drupal.org/u/effulgentsia
|
|
72 |
- Wolfgang Ziegler 'fago' https://www.drupal.org/u/fago
|
|
73 |
- Daniel F. Kudwien 'sun' https://www.drupal.org/u/sun
|
|
74 |
- Franz Heinzmann 'Frando' https://www.drupal.org/u/frando
|
|
74 | 75 |
|
75 | 76 |
Image system |
76 |
- Andrew Morton 'drewish' http://drupal.org/user/34869
|
|
77 |
- Nathan Haug 'quicksketch' http://drupal.org/user/35821
|
|
77 |
- Andrew Morton 'drewish' https://www.drupal.org/u/drewish
|
|
78 |
- Nathan Haug 'quicksketch' https://www.drupal.org/u/quicksketch
|
|
78 | 79 |
|
79 | 80 |
Install system |
80 |
- David Rothstein 'David_Rothstein' http://drupal.org/user/124982
|
|
81 |
- David Rothstein 'David_Rothstein' https://www.drupal.org/u/david_rothstein
|
|
81 | 82 |
|
82 | 83 |
JavaScript |
83 |
- Théodore Biadala 'nod_' http://drupal.org/user/598310 |
|
84 |
- Steve De Jonghe 'seutje' http://drupal.org/user/264148 |
|
85 |
- Jesse Renée Beach 'jessebeach' http://drupal.org/user/748566 |
|
84 |
- Théodore Biadala 'nod_' https://www.drupal.org/u/nod_ |
|
85 |
- Steve De Jonghe 'seutje' https://www.drupal.org/u/seutje |
|
86 | 86 |
|
87 | 87 |
Language system |
88 |
- Francesco Placella 'plach' http://drupal.org/user/183211
|
|
89 |
- Daniel F. Kudwien 'sun' http://drupal.org/user/54136
|
|
88 |
- Francesco Placella 'plach' https://www.drupal.org/u/plach
|
|
89 |
- Daniel F. Kudwien 'sun' https://www.drupal.org/u/sun
|
|
90 | 90 |
|
91 | 91 |
Lock system |
92 |
- Damien Tournoud 'DamZ' http://drupal.org/user/22211
|
|
92 |
- Damien Tournoud 'DamZ' https://www.drupal.org/u/damien-tournoud
|
|
93 | 93 |
|
94 | 94 |
Mail system |
95 | 95 |
- ? |
96 | 96 |
|
97 | 97 |
Markup |
98 |
- Jacine Luisi 'Jacine' http://drupal.org/user/88931
|
|
99 |
- Daniel F. Kudwien 'sun' http://drupal.org/user/54136
|
|
98 |
- Jacine Luisi 'Jacine' https://www.drupal.org/u/jacine
|
|
99 |
- Daniel F. Kudwien 'sun' https://www.drupal.org/u/sun
|
|
100 | 100 |
|
101 | 101 |
Menu system |
102 |
- Peter Wolanin 'pwolanin' http://drupal.org/user/49851
|
|
102 |
- Peter Wolanin 'pwolanin' https://www.drupal.org/u/pwolanin
|
|
103 | 103 |
|
104 | 104 |
Path system |
105 |
- Dave Reid 'davereid' http://drupal.org/user/53892
|
|
106 |
- Nathaniel Catchpole 'catch' http://drupal.org/user/35733
|
|
105 |
- Dave Reid 'davereid' https://www.drupal.org/u/dave-reid
|
|
106 |
- Nathaniel Catchpole 'catch' https://www.drupal.org/u/catch
|
|
107 | 107 |
|
108 | 108 |
Render system |
109 |
- Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
|
|
110 |
- Alex Bronstein 'effulgentsia' http://drupal.org/user/78040
|
|
111 |
- Franz Heinzmann 'Frando' http://drupal.org/user/21850
|
|
109 |
- Moshe Weitzman 'moshe weitzman' https://www.drupal.org/u/moshe-weitzman
|
|
110 |
- Alex Bronstein 'effulgentsia' https://www.drupal.org/u/effulgentsia
|
|
111 |
- Franz Heinzmann 'Frando' https://www.drupal.org/u/frando
|
|
112 | 112 |
|
113 | 113 |
Theme system |
114 |
- Earl Miles 'merlinofchaos' http://drupal.org/user/26979
|
|
115 |
- Alex Bronstein 'effulgentsia' http://drupal.org/user/78040
|
|
116 |
- Joon Park 'dvessel' http://drupal.org/user/56782
|
|
117 |
- John Albin Wilkins 'JohnAlbin' http://drupal.org/user/32095
|
|
114 |
- Earl Miles 'merlinofchaos' https://www.drupal.org/u/merlinofchaos
|
|
115 |
- Alex Bronstein 'effulgentsia' https://www.drupal.org/u/effulgentsia
|
|
116 |
- Joon Park 'dvessel' https://www.drupal.org/u/dvessel
|
|
117 |
- John Albin Wilkins 'JohnAlbin' https://www.drupal.org/u/johnalbin
|
|
118 | 118 |
|
119 | 119 |
Token system |
120 |
- Dave Reid 'davereid' http://drupal.org/user/53892
|
|
120 |
- Dave Reid 'davereid' https://www.drupal.org/u/dave-reid
|
|
121 | 121 |
|
122 | 122 |
XML-RPC system |
123 |
- Frederic G. Marand 'fgm' http://drupal.org/user/27985
|
|
123 |
- Frederic G. Marand 'fgm' https://www.drupal.org/u/fgm
|
|
124 | 124 |
|
125 | 125 |
|
126 | 126 |
Topic coordinators |
127 | 127 |
------------------ |
128 | 128 |
|
129 | 129 |
Accessibility |
130 |
- Everett Zufelt 'Everett Zufelt' http://drupal.org/user/406552
|
|
131 |
- Brandon Bowersox-Johnson 'bowersox' http://drupal.org/user/186415
|
|
130 |
- Everett Zufelt 'Everett Zufelt' https://www.drupal.org/u/everett-zufelt
|
|
131 |
- Brandon Bowersox-Johnson 'bowersox' https://www.drupal.org/u/bowersox
|
|
132 | 132 |
|
133 | 133 |
Documentation |
134 |
- Jennifer Hodgdon 'jhodgdon' http://drupal.org/user/155601
|
|
134 |
- Jennifer Hodgdon 'jhodgdon' https://www.drupal.org/u/jhodgdon
|
|
135 | 135 |
|
136 | 136 |
Translations |
137 |
- Gerhard Killesreiter 'killes' http://drupal.org/user/83
|
|
137 |
- Gerhard Killesreiter 'killes' https://www.drupal.org/u/gerhard-killesreiter
|
|
138 | 138 |
|
139 | 139 |
User experience and usability |
140 |
- Roy Scholten 'yoroy' http://drupal.org/user/41502
|
|
141 |
- Bojhan Somers 'Bojhan' http://drupal.org/user/87969
|
|
140 |
- Roy Scholten 'yoroy' https://www.drupal.org/u/yoroy
|
|
141 |
- Bojhan Somers 'Bojhan' https://www.drupal.org/u/bojhan
|
|
142 | 142 |
|
143 | 143 |
Node Access |
144 |
- Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
|
|
145 |
- Ken Rickard 'agentrickard' http://drupal.org/user/20975
|
|
146 |
- Jess Myrbo 'xjm' http://drupal.org/user/65776
|
|
144 |
- Moshe Weitzman 'moshe weitzman' https://www.drupal.org/u/moshe-weitzman
|
|
145 |
- Ken Rickard 'agentrickard' https://www.drupal.org/u/agentrickard
|
|
146 |
- Jess Myrbo 'xjm' https://www.drupal.org/u/xjm
|
|
147 | 147 |
|
148 | 148 |
|
149 | 149 |
Security team |
150 | 150 |
----------------- |
151 | 151 |
|
152 |
To report a security issue, see: https://drupal.org/security-team/report-issue |
|
152 |
To report a security issue, see: https://www.drupal.org/security-team/report-issue
|
|
153 | 153 |
|
154 | 154 |
The Drupal security team provides Security Advisories for vulnerabilities, |
155 | 155 |
assists developers in resolving security issues, and provides security |
156 |
documentation. See http://drupal.org/security-team for more information. The
|
|
157 |
security team lead is: |
|
156 |
documentation. See https://www.drupal.org/security-team for more information.
|
|
157 |
The security team lead is:
|
|
158 | 158 |
|
159 |
- Michael Hess 'mlhess' https://drupal.org/user/102818
|
|
159 |
- Michael Hess 'mlhess' https://www.drupal.org/u/mlhess
|
|
160 | 160 |
|
161 | 161 |
|
162 | 162 |
Module maintainers |
... | ... | |
166 | 166 |
- ? |
167 | 167 |
|
168 | 168 |
Block module |
169 |
- John Albin Wilkins 'JohnAlbin' http://drupal.org/user/32095
|
|
169 |
- John Albin Wilkins 'JohnAlbin' https://www.drupal.org/u/johnalbin
|
|
170 | 170 |
|
171 | 171 |
Blog module |
172 | 172 |
- ? |
173 | 173 |
|
174 | 174 |
Book module |
175 |
- Peter Wolanin 'pwolanin' http://drupal.org/user/49851
|
|
175 |
- Peter Wolanin 'pwolanin' https://www.drupal.org/u/pwolanin
|
|
176 | 176 |
|
177 | 177 |
Color module |
178 | 178 |
- ? |
179 | 179 |
|
180 | 180 |
Comment module |
181 |
- Nathaniel Catchpole 'catch' http://drupal.org/user/35733
|
|
181 |
- Nathaniel Catchpole 'catch' https://www.drupal.org/u/catch
|
|
182 | 182 |
|
183 | 183 |
Contact module |
184 |
- Dave Reid 'davereid' http://drupal.org/user/53892
|
|
184 |
- Dave Reid 'davereid' https://www.drupal.org/u/dave-reid
|
|
185 | 185 |
|
186 | 186 |
Contextual module |
187 |
- Daniel F. Kudwien 'sun' http://drupal.org/user/54136
|
|
187 |
- Daniel F. Kudwien 'sun' https://www.drupal.org/u/sun
|
|
188 | 188 |
|
189 | 189 |
Dashboard module |
190 | 190 |
- ? |
191 | 191 |
|
192 | 192 |
Database logging module |
193 |
- Khalid Baheyeldin 'kbahey' http://drupal.org/user/4063
|
|
193 |
- Khalid Baheyeldin 'kbahey' https://www.drupal.org/u/kbahey
|
|
194 | 194 |
|
195 | 195 |
Field module |
196 |
- Yves Chedemois 'yched' http://drupal.org/user/39567
|
|
197 |
- Barry Jaspan 'bjaspan' http://drupal.org/user/46413
|
|
196 |
- Yves Chedemois 'yched' https://www.drupal.org/u/yched
|
|
197 |
- Barry Jaspan 'bjaspan' https://www.drupal.org/u/bjaspan
|
|
198 | 198 |
|
199 | 199 |
Field UI module |
200 |
- Yves Chedemois 'yched' http://drupal.org/user/39567
|
|
200 |
- Yves Chedemois 'yched' https://www.drupal.org/u/yched
|
|
201 | 201 |
|
202 | 202 |
File module |
203 |
- Aaron Winborn 'aaron' http://drupal.org/user/33420
|
|
203 |
- Aaron Winborn 'aaron' https://www.drupal.org/u/aaron
|
|
204 | 204 |
|
205 | 205 |
Filter module |
206 |
- Daniel F. Kudwien 'sun' http://drupal.org/user/54136
|
|
206 |
- Daniel F. Kudwien 'sun' https://www.drupal.org/u/sun
|
|
207 | 207 |
|
208 | 208 |
Forum module |
209 |
- Lee Rowlands 'larowlan' http://drupal.org/user/395439
|
|
209 |
- Lee Rowlands 'larowlan' https://www.drupal.org/u/larowlan
|
|
210 | 210 |
|
211 | 211 |
Help module |
212 | 212 |
- ? |
213 | 213 |
|
214 | 214 |
Image module |
215 |
- Nathan Haug 'quicksketch' http://drupal.org/user/35821
|
|
215 |
- Nathan Haug 'quicksketch' https://www.drupal.org/u/quicksketch
|
|
216 | 216 |
|
217 | 217 |
Locale module |
218 |
- Gábor Hojtsy 'Gábor Hojtsy' http://drupal.org/user/4166
|
|
218 |
- Gábor Hojtsy 'Gábor Hojtsy' https://www.drupal.org/u/gábor-hojtsy
|
|
219 | 219 |
|
220 | 220 |
Menu module |
221 | 221 |
- ? |
222 | 222 |
|
223 | 223 |
Node module |
224 |
- Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
|
|
225 |
- David Strauss 'David Strauss' http://drupal.org/user/93254
|
|
224 |
- Moshe Weitzman 'moshe weitzman' https://www.drupal.org/u/moshe-weitzman
|
|
225 |
- David Strauss 'David Strauss' https://www.drupal.org/u/david-strauss
|
|
226 | 226 |
|
227 | 227 |
OpenID module |
228 |
- Vojtech Kusy 'wojtha' http://drupal.org/user/56154
|
|
229 |
- Christian Schmidt 'c960657' http://drupal.org/user/216078
|
|
230 |
- Damien Tournoud 'DamZ' http://drupal.org/user/22211
|
|
228 |
- Vojtech Kusy 'wojtha' https://www.drupal.org/u/wojtha
|
|
229 |
- Christian Schmidt 'c960657' https://www.drupal.org/u/c960657
|
|
230 |
- Damien Tournoud 'DamZ' https://www.drupal.org/u/damien-tournoud
|
|
231 | 231 |
|
232 | 232 |
Overlay module |
233 |
- Katherine Senzee 'ksenzee' http://drupal.org/user/139855
|
|
233 |
- Katherine Senzee 'ksenzee' https://www.drupal.org/u/ksenzee
|
|
234 | 234 |
|
235 | 235 |
Path module |
236 |
- Dave Reid 'davereid' http://drupal.org/user/53892
|
|
236 |
- Dave Reid 'davereid' https://www.drupal.org/u/dave-reid
|
|
237 | 237 |
|
238 | 238 |
PHP module |
239 | 239 |
- ? |
240 | 240 |
|
241 | 241 |
Poll module |
242 |
- Andrei Mateescu 'amateescu' http://drupal.org/user/729614
|
|
242 |
- Andrei Mateescu 'amateescu' https://www.drupal.org/u/amateescu
|
|
243 | 243 |
|
244 | 244 |
Profile module |
245 | 245 |
- ? |
246 | 246 |
|
247 | 247 |
RDF module |
248 |
- Stéphane Corlosquet 'scor' http://drupal.org/user/52142
|
|
248 |
- Stéphane Corlosquet 'scor' https://www.drupal.org/u/scor
|
|
249 | 249 |
|
250 | 250 |
Search module |
251 |
- Doug Green 'douggreen' http://drupal.org/user/29191
|
|
251 |
- Doug Green 'douggreen' https://www.drupal.org/u/douggreen
|
|
252 | 252 |
|
253 | 253 |
Shortcut module |
254 |
- David Rothstein 'David_Rothstein' http://drupal.org/user/124982
|
|
254 |
- David Rothstein 'David_Rothstein' https://www.drupal.org/u/david_rothstein
|
|
255 | 255 |
|
256 | 256 |
Simpletest module |
257 |
- Jimmy Berry 'boombatower' http://drupal.org/user/214218
|
|
257 |
- Jimmy Berry 'boombatower' https://www.drupal.org/u/boombatower
|
|
258 | 258 |
|
259 | 259 |
Statistics module |
260 |
- Tim Millwood 'timmillwood' http://drupal.org/user/227849
|
|
260 |
- Tim Millwood 'timmillwood' https://www.drupal.org/u/timmillwood
|
|
261 | 261 |
|
262 | 262 |
Syslog module |
263 |
- Khalid Baheyeldin 'kbahey' http://drupal.org/user/4063
|
|
263 |
- Khalid Baheyeldin 'kbahey' https://www.drupal.org/u/kbahey
|
|
264 | 264 |
|
265 | 265 |
System module |
266 | 266 |
- ? |
267 | 267 |
|
268 | 268 |
Taxonomy module |
269 |
- Jess Myrbo 'xjm' http://drupal.org/user/65776
|
|
270 |
- Nathaniel Catchpole 'catch' http://drupal.org/user/35733
|
|
271 |
- Benjamin Doherty 'bangpound' http://drupal.org/user/100456
|
|
269 |
- Jess Myrbo 'xjm' https://www.drupal.org/u/xjm
|
|
270 |
- Nathaniel Catchpole 'catch' https://www.drupal.org/u/catch
|
|
271 |
- Benjamin Doherty 'bangpound' https://www.drupal.org/u/bangpound
|
|
272 | 272 |
|
273 | 273 |
Toolbar module |
274 | 274 |
- ? |
275 | 275 |
|
276 | 276 |
Tracker module |
277 |
- David Strauss 'David Strauss' http://drupal.org/user/93254
|
|
277 |
- David Strauss 'David Strauss' https://www.drupal.org/u/david-strauss
|
|
278 | 278 |
|
279 | 279 |
Translation module |
280 |
- Francesco Placella 'plach' http://drupal.org/user/183211
|
|
280 |
- Francesco Placella 'plach' https://www.drupal.org/u/plach
|
|
281 | 281 |
|
282 | 282 |
Trigger module |
283 | 283 |
- ? |
284 | 284 |
|
285 | 285 |
Update module |
286 |
- Derek Wright 'dww' http://drupal.org/user/46549
|
|
286 |
- Derek Wright 'dww' https://www.drupal.org/u/dww
|
|
287 | 287 |
|
288 | 288 |
User module |
289 |
- Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
|
|
290 |
- David Strauss 'David Strauss' http://drupal.org/user/93254
|
|
289 |
- Moshe Weitzman 'moshe weitzman' https://www.drupal.org/u/moshe-weitzman
|
|
290 |
- David Strauss 'David Strauss' https://www.drupal.org/u/david-strauss
|
|
291 | 291 |
|
292 | 292 |
|
293 | 293 |
Theme maintainers |
294 | 294 |
----------------- |
295 | 295 |
|
296 | 296 |
Bartik theme |
297 |
- Jen Simmons 'jensimmons' http://drupal.org/user/140882
|
|
298 |
- Jeff Burns 'Jeff Burnz' http://drupal.org/user/61393
|
|
297 |
- Jen Simmons 'jensimmons' https://www.drupal.org/u/jensimmons
|
|
298 |
- Jeff Burns 'Jeff Burnz' https://www.drupal.org/u/jeff-burnz
|
|
299 | 299 |
|
300 | 300 |
Garland theme |
301 |
- John Albin Wilkins 'JohnAlbin' http://drupal.org/user/32095
|
|
301 |
- John Albin Wilkins 'JohnAlbin' https://www.drupal.org/u/johnalbin
|
|
302 | 302 |
|
303 | 303 |
Seven theme |
304 |
- Jeff Burns 'Jeff Burnz' http://drupal.org/user/61393
|
|
304 |
- Jeff Burns 'Jeff Burnz' https://www.drupal.org/u/jeff-burnz
|
|
305 | 305 |
|
306 | 306 |
Stark theme |
307 |
- John Albin Wilkins 'JohnAlbin' http://drupal.org/user/32095 |
|
307 |
- John Albin Wilkins 'JohnAlbin' https://www.drupal.org/u/johnalbin |
drupal7/UPGRADE.txt | ||
---|---|---|
64 | 64 |
Sometimes an update includes changes to default.settings.php (this will be |
65 | 65 |
noted in the release notes). If that's the case, follow these steps: |
66 | 66 |
|
67 |
- Locate your settings.php file in the /sites/* directory. (Typically |
|
68 |
sites/default.) |
|
69 |
|
|
67 | 70 |
- Make a backup copy of your settings.php file, with a different file name. |
68 | 71 |
|
69 | 72 |
- Make a copy of the new default.settings.php file, and name the copy |
... | ... | |
74 | 77 |
database information, and you will also want to copy in any other |
75 | 78 |
customizations you have added. |
76 | 79 |
|
80 |
You can find the release notes for your version at |
|
81 |
https://www.drupal.org/project/drupal. At bottom of the project page under |
|
82 |
"Downloads" use the link for your version of Drupal to view the release |
|
83 |
notes. If your version is not listed, use the 'View all releases' link. From |
|
84 |
this page you can scroll down or use the filter to find your version and its |
|
85 |
release notes. |
|
86 |
|
|
77 | 87 |
4. Download the latest Drupal 7.x release from http://drupal.org to a |
78 | 88 |
directory outside of your web root. Extract the archive and copy the files |
79 | 89 |
into your Drupal directory. |
drupal7/includes/batch.inc | ||
---|---|---|
460 | 460 |
if (isset($batch_set['file']) && is_file($batch_set['file'])) { |
461 | 461 |
include_once DRUPAL_ROOT . '/' . $batch_set['file']; |
462 | 462 |
} |
463 |
if (function_exists($batch_set['finished'])) {
|
|
463 |
if (is_callable($batch_set['finished'])) {
|
|
464 | 464 |
$queue = _batch_queue($batch_set); |
465 | 465 |
$operations = $queue->getAllItems(); |
466 |
$batch_set['finished']($batch_set['success'], $batch_set['results'], $operations, format_interval($batch_set['elapsed'] / 1000));
|
|
466 |
call_user_func($batch_set['finished'], $batch_set['success'], $batch_set['results'], $operations, format_interval($batch_set['elapsed'] / 1000));
|
|
467 | 467 |
} |
468 | 468 |
} |
469 | 469 |
} |
drupal7/includes/bootstrap.inc | ||
---|---|---|
8 | 8 |
/** |
9 | 9 |
* The current system version. |
10 | 10 |
*/ |
11 |
define('VERSION', '7.39');
|
|
11 |
define('VERSION', '7.40');
|
|
12 | 12 |
|
13 | 13 |
/** |
14 | 14 |
* Core API compatibility. |
... | ... | |
1055 | 1055 |
* Determines the cacheability of the current page. |
1056 | 1056 |
* |
1057 | 1057 |
* @param $allow_caching |
1058 |
* Set to FALSE if you want to prevent this page to get cached.
|
|
1058 |
* Set to FALSE if you want to prevent this page from being cached.
|
|
1059 | 1059 |
* |
1060 | 1060 |
* @return |
1061 | 1061 |
* TRUE if the current page can be cached, FALSE otherwise. |
... | ... | |
1262 | 1262 |
$default_headers = array( |
1263 | 1263 |
'Expires' => 'Sun, 19 Nov 1978 05:00:00 GMT', |
1264 | 1264 |
'Cache-Control' => 'no-cache, must-revalidate, post-check=0, pre-check=0', |
1265 |
// Prevent browsers from sniffing a response and picking a MIME type |
|
1266 |
// different from the declared content-type, since that can lead to |
|
1267 |
// XSS and other vulnerabilities. |
|
1268 |
'X-Content-Type-Options' => 'nosniff', |
|
1265 | 1269 |
); |
1266 | 1270 |
drupal_send_headers($default_headers); |
1267 | 1271 |
} |
... | ... | |
1776 | 1780 |
* @see theme_status_messages() |
1777 | 1781 |
*/ |
1778 | 1782 |
function drupal_set_message($message = NULL, $type = 'status', $repeat = TRUE) { |
1779 |
if ($message) { |
|
1783 |
if ($message || $message === '0' || $message === 0) {
|
|
1780 | 1784 |
if (!isset($_SESSION['messages'][$type])) { |
1781 | 1785 |
$_SESSION['messages'][$type] = array(); |
1782 | 1786 |
} |
... | ... | |
2464 | 2468 |
// the install or upgrade process. |
2465 | 2469 |
spl_autoload_register('drupal_autoload_class'); |
2466 | 2470 |
spl_autoload_register('drupal_autoload_interface'); |
2471 |
if (version_compare(PHP_VERSION, '5.4') >= 0) { |
|
2472 |
spl_autoload_register('drupal_autoload_trait'); |
|
2473 |
} |
|
2467 | 2474 |
} |
2468 | 2475 |
|
2469 | 2476 |
/** |
... | ... | |
2952 | 2959 |
* Gets the schema definition of a table, or the whole database schema. |
2953 | 2960 |
* |
2954 | 2961 |
* The returned schema will include any modifications made by any |
2955 |
* module that implements hook_schema_alter(). |
|
2962 |
* module that implements hook_schema_alter(). To get the schema without |
|
2963 |
* modifications, use drupal_get_schema_unprocessed(). |
|
2964 |
* |
|
2956 | 2965 |
* |
2957 | 2966 |
* @param $table |
2958 | 2967 |
* The name of the table. If not given, the schema of all tables is returned. |
... | ... | |
3107 | 3116 |
return _registry_check_code('class', $class); |
3108 | 3117 |
} |
3109 | 3118 |
|
3119 |
/** |
|
3120 |
* Confirms that a trait is available. |
|
3121 |
* |
|
3122 |
* This function is rarely called directly. Instead, it is registered as an |
|
3123 |
* spl_autoload() handler, and PHP calls it for us when necessary. |
|
3124 |
* |
|
3125 |
* @param string $trait |
|
3126 |
* The name of the trait to check or load. |
|
3127 |
* |
|
3128 |
* @return bool |
|
3129 |
* TRUE if the trait is currently available, FALSE otherwise. |
|
3130 |
*/ |
|
3131 |
function drupal_autoload_trait($trait) { |
|
3132 |
return _registry_check_code('trait', $trait); |
|
3133 |
} |
|
3134 |
|
|
3110 | 3135 |
/** |
3111 | 3136 |
* Checks for a resource in the registry. |
3112 | 3137 |
* |
... | ... | |
3125 | 3150 |
function _registry_check_code($type, $name = NULL) { |
3126 | 3151 |
static $lookup_cache, $cache_update_needed; |
3127 | 3152 |
|
3128 |
if ($type == 'class' && class_exists($name) || $type == 'interface' && interface_exists($name)) { |
|
3153 |
if ($type == 'class' && class_exists($name) || $type == 'interface' && interface_exists($name) || $type == 'trait' && trait_exists($name)) {
|
|
3129 | 3154 |
return TRUE; |
3130 | 3155 |
} |
3131 | 3156 |
|
drupal7/includes/cache.inc | ||
---|---|---|
14 | 14 |
* |
15 | 15 |
* @param $bin |
16 | 16 |
* The cache bin for which the cache object should be returned. |
17 |
* |
|
17 | 18 |
* @return DrupalCacheInterface |
18 | 19 |
* The cache object associated with the specified bin. |
19 | 20 |
* |
drupal7/includes/common.inc | ||
---|---|---|
1057 | 1057 |
|
1058 | 1058 |
switch ($code) { |
1059 | 1059 |
case 200: // OK |
1060 |
case 201: // Created |
|
1061 |
case 202: // Accepted |
|
1062 |
case 203: // Non-Authoritative Information |
|
1063 |
case 204: // No Content |
|
1064 |
case 205: // Reset Content |
|
1065 |
case 206: // Partial Content |
|
1060 | 1066 |
case 304: // Not modified |
1061 | 1067 |
break; |
1062 | 1068 |
case 301: // Moved permanently |
... | ... | |
2812 | 2818 |
* into script execution a call such as set_time_limit(20) is made, the |
2813 | 2819 |
* script will run for a total of 45 seconds before timing out. |
2814 | 2820 |
* |
2815 |
* It also means that it is possible to decrease the total time limit if
|
|
2816 |
* the sum of the new time limit and the current time spent running the
|
|
2817 |
* script is inferior to the original time limit. It is inherent to the way
|
|
2818 |
* set_time_limit() works, it should rather be called with an appropriate
|
|
2819 |
* value every time you need to allocate a certain amount of time |
|
2821 |
* If the current time limit is not unlimited it is possible to decrease the
|
|
2822 |
* total time limit if the sum of the new time limit and the current time spent
|
|
2823 |
* running the script is inferior to the original time limit. It is inherent to
|
|
2824 |
* the way set_time_limit() works, it should rather be called with an
|
|
2825 |
* appropriate value every time you need to allocate a certain amount of time
|
|
2820 | 2826 |
* to execute a task than only once at the beginning of the script. |
2821 | 2827 |
* |
2822 | 2828 |
* Before calling set_time_limit(), we check if this function is available |
... | ... | |
2833 | 2839 |
*/ |
2834 | 2840 |
function drupal_set_time_limit($time_limit) { |
2835 | 2841 |
if (function_exists('set_time_limit')) { |
2836 |
@set_time_limit($time_limit); |
|
2842 |
$current = ini_get('max_execution_time'); |
|
2843 |
// Do not set time limit if it is currently unlimited. |
|
2844 |
if ($current != 0) { |
|
2845 |
@set_time_limit($time_limit); |
|
2846 |
} |
|
2837 | 2847 |
} |
2838 | 2848 |
} |
2839 | 2849 |
|
... | ... | |
5212 | 5222 |
fix_gpc_magic(); |
5213 | 5223 |
// Load all enabled modules |
5214 | 5224 |
module_load_all(); |
5225 |
// Reset drupal_alter() and module_implements() static caches as these |
|
5226 |
// include implementations for vital modules only when called early on |
|
5227 |
// in the bootstrap. |
|
5228 |
drupal_static_reset('drupal_alter'); |
|
5229 |
drupal_static_reset('module_implements'); |
|
5215 | 5230 |
// Make sure all stream wrappers are registered. |
5216 | 5231 |
file_get_stream_wrappers(); |
5217 | 5232 |
// Ensure mt_rand is reseeded, to prevent random values from one page load |
... | ... | |
5308 | 5323 |
* |
5309 | 5324 |
* Do not call this function from a test. Use $this->cronRun() instead. |
5310 | 5325 |
* |
5311 |
* @return |
|
5312 |
* TRUE if cron ran successfully. |
|
5326 |
* @return bool
|
|
5327 |
* TRUE if cron ran successfully and FALSE if cron is already running.
|
|
5313 | 5328 |
*/ |
5314 | 5329 |
function drupal_cron_run() { |
5315 | 5330 |
// Allow execution to continue even if the request gets canceled. |
... | ... | |
5371 | 5386 |
// Do not run if queue wants to skip. |
5372 | 5387 |
continue; |
5373 | 5388 |
} |
5374 |
$function = $info['worker callback'];
|
|
5389 |
$callback = $info['worker callback'];
|
|
5375 | 5390 |
$end = time() + (isset($info['time']) ? $info['time'] : 15); |
5376 | 5391 |
$queue = DrupalQueue::get($queue_name); |
5377 | 5392 |
while (time() < $end && ($item = $queue->claimItem())) { |
5378 | 5393 |
try { |
5379 |
$function($item->data);
|
|
5394 |
call_user_func($callback, $item->data);
|
|
5380 | 5395 |
$queue->deleteItem($item); |
5381 | 5396 |
} |
5382 | 5397 |
catch (Exception $e) { |
... | ... | |
7083 | 7098 |
* specification of a schema, as it was defined in a module's |
7084 | 7099 |
* hook_schema(). No additional default values will be set, |
7085 | 7100 |
* hook_schema_alter() is not invoked and these unprocessed |
7086 |
* definitions won't be cached. |
|
7101 |
* definitions won't be cached. To retrieve the schema after |
|
7102 |
* hook_schema_alter() has been invoked use drupal_get_schema(). |
|
7087 | 7103 |
* |
7088 | 7104 |
* This function can be used to retrieve a schema specification in |
7089 | 7105 |
* hook_schema(), so it allows you to derive your tables from existing |
... | ... | |
7156 | 7172 |
*/ |
7157 | 7173 |
function drupal_schema_field_types($table) { |
7158 | 7174 |
$table_schema = drupal_get_schema($table); |
7175 |
$field_types = array(); |
|
7159 | 7176 |
foreach ($table_schema['fields'] as $field_name => $field_info) { |
7160 | 7177 |
$field_types[$field_name] = isset($field_info['type']) ? $field_info['type'] : NULL; |
7161 | 7178 |
} |
... | ... | |
7363 | 7380 |
* Information stored in a module .info file: |
7364 | 7381 |
* - name: The real name of the module for display purposes. |
7365 | 7382 |
* - description: A brief description of the module. |
7366 |
* - dependencies: An array of shortnames of other modules this module requires. |
|
7383 |
* - dependencies: An array of dependency strings. Each is in the form |
|
7384 |
* 'project:module (versions)'; with the following meanings: |
|
7385 |
* - project: (optional) Project shortname, recommended to ensure uniqueness, |
|
7386 |
* if the module is part of a project hosted on drupal.org. If omitted, |
|
7387 |
* also omit the : that follows. The project name is currently ignored by |
|
7388 |
* Drupal core but is used for automated testing. |
|
7389 |
* - module: (required) Module shortname within the project. |
|
7390 |
* - (versions): Optional version information, consisting of one or more |
|
7391 |
* comma-separated operator/value pairs or simply version numbers, which |
|
7392 |
* can contain "x" as a wildcard. Examples: (>=7.22, <7.28), (7.x-3.x). |
|
7367 | 7393 |
* - package: The name of the package of modules this module belongs to. |
7368 | 7394 |
* |
7369 | 7395 |
* See forum.info for an example of a module .info file. |
... | ... | |
7443 | 7469 |
*/ |
7444 | 7470 |
function drupal_parse_info_format($data) { |
7445 | 7471 |
$info = array(); |
7446 |
$constants = get_defined_constants(); |
|
7447 | 7472 |
|
7448 | 7473 |
if (preg_match_all(' |
7449 | 7474 |
@^\s* # Start at the beginning of a line, ignoring leading whitespace |
... | ... | |
7483 | 7508 |
} |
7484 | 7509 |
|
7485 | 7510 |
// Handle PHP constants. |
7486 |
if (isset($constants[$value])) {
|
|
7487 |
$value = $constants[$value];
|
|
7511 |
if (preg_match('/^\w+$/i', $value) && defined($value)) {
|
|
7512 |
$value = constant($value);
|
|
7488 | 7513 |
} |
7489 | 7514 |
|
7490 | 7515 |
// Insert actual value. |
... | ... | |
7648 | 7673 |
* Parses a dependency for comparison by drupal_check_incompatibility(). |
7649 | 7674 |
* |
7650 | 7675 |
* @param $dependency |
7651 |
* A dependency string, for example 'foo (>=7.x-4.5-beta5, 3.x)'. |
|
7676 |
* A dependency string, which specifies a module dependency, and optionally |
|
7677 |
* the project it comes from and versions that are supported. Supported |
|
7678 |
* formats include: |
|
7679 |
* - 'module' |
|
7680 |
* - 'project:module' |
|
7681 |
* - 'project:module (>=version, version)' |
|
7652 | 7682 |
* |
7653 | 7683 |
* @return |
7654 | 7684 |
* An associative array with three keys: |
... | ... | |
7663 | 7693 |
* @see drupal_check_incompatibility() |
7664 | 7694 |
*/ |
7665 | 7695 |
function drupal_parse_dependency($dependency) { |
7696 |
$value = array(); |
|
7697 |
// Split out the optional project name. |
|
7698 |
if (strpos($dependency, ':')) { |
|
7699 |
list($project_name, $dependency) = explode(':', $dependency); |
|
7700 |
$value['project'] = $project_name; |
|
7701 |
} |
|
7666 | 7702 |
// We use named subpatterns and support every op that version_compare |
7667 | 7703 |
// supports. Also, op is optional and defaults to equals. |
7668 | 7704 |
$p_op = '(?P<operation>!=|==|=|<|<=|>|>=|<>)?'; |
... | ... | |
7671 | 7707 |
$p_major = '(?P<major>\d+)'; |
7672 | 7708 |
// By setting the minor version to x, branches can be matched. |
7673 | 7709 |
$p_minor = '(?P<minor>(?:\d+|x)(?:-[A-Za-z]+\d+)?)'; |
7674 |
$value = array(); |
|
7675 | 7710 |
$parts = explode('(', $dependency, 2); |
7676 | 7711 |
$value['name'] = trim($parts[0]); |
7677 | 7712 |
if (isset($parts[1])) { |
drupal7/includes/database/database.inc | ||
---|---|---|
656 | 656 |
* @return DatabaseStatementInterface |
657 | 657 |
* This method will return one of: the executed statement, the number of |
658 | 658 |
* rows affected by the query (not the number matched), or the generated |
659 |
* insert IT of the last query, depending on the value of
|
|
659 |
* insert ID of the last query, depending on the value of
|
|
660 | 660 |
* $options['return']. Typically that value will be set by default or a |
661 | 661 |
* query builder and should not be set by a user. If there is an error, |
662 | 662 |
* this method will return NULL and may throw an exception if |
drupal7/includes/database/mysql/database.inc | ||
---|---|---|
51 | 51 |
// Because MySQL's prepared statements skip the query cache, because it's dumb. |
52 | 52 |
PDO::ATTR_EMULATE_PREPARES => TRUE, |
53 | 53 |
); |
54 |
if (defined('PDO::MYSQL_ATTR_MULTI_STATEMENTS')) { |
|
55 |
// An added connection option in PHP 5.5.21+ to optionally limit SQL to a |
|
56 |
// single statement like mysqli. |
|
57 |
$connection_options['pdo'] += array(PDO::MYSQL_ATTR_MULTI_STATEMENTS => FALSE); |
|
58 |
} |
|
54 | 59 |
|
55 | 60 |
parent::__construct($dsn, $connection_options['username'], $connection_options['password'], $connection_options['pdo']); |
56 | 61 |
|
... | ... | |
78 | 83 |
$connection_options['init_commands'] += array( |
79 | 84 |
'sql_mode' => "SET sql_mode = 'ANSI,STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER'", |
80 | 85 |
); |
81 |
// Set connection options. |
|
82 |
$this->exec(implode('; ', $connection_options['init_commands'])); |
|
86 |
// Execute initial commands. |
|
87 |
foreach ($connection_options['init_commands'] as $sql) { |
|
88 |
$this->exec($sql); |
|
89 |
} |
|
83 | 90 |
} |
84 | 91 |
|
85 | 92 |
public function __destruct() { |
drupal7/includes/database/schema.inc | ||
---|---|---|
92 | 92 |
* specification). Each specification is an array containing the name of |
93 | 93 |
* the referenced table ('table'), and an array of column mappings |
94 | 94 |
* ('columns'). Column mappings are defined by key pairs ('source_column' => |
95 |
* 'referenced_column'). |
|
95 |
* 'referenced_column'). This key is for documentation purposes only; foreign |
|
96 |
* keys are not created in the database, nor are they enforced by Drupal. |
|
96 | 97 |
* - 'indexes': An associative array of indexes ('indexname' => |
97 | 98 |
* specification). Each specification is an array of one or more |
98 | 99 |
* key column specifiers (see below) that form an index on the |
... | ... | |
144 | 145 |
* 'unique keys' => array( |
145 | 146 |
* 'vid' => array('vid'), |
146 | 147 |
* ), |
148 |
* // For documentation purposes only; foreign keys are not created in the |
|
149 |
* // database. |
|
147 | 150 |
* 'foreign keys' => array( |
148 | 151 |
* 'node_revision' => array( |
149 | 152 |
* 'table' => 'node_revision', |
drupal7/includes/database/sqlite/install.inc | ||
---|---|---|
14 | 14 |
|
15 | 15 |
/** |
16 | 16 |
* Minimum engine version. |
17 |
* |
|
18 |
* @todo: consider upping to 3.6.8 in Drupal 8 to get SAVEPOINT support. |
|
19 | 17 |
*/ |
20 | 18 |
public function minimumVersion() { |
21 | 19 |
return '3.3.7'; |
drupal7/includes/file.inc | ||
---|---|---|
1785 | 1785 |
/** |
1786 | 1786 |
* Verifies that image dimensions are within the specified maximum and minimum. |
1787 | 1787 |
* |
1788 |
* Non-image files will be ignored. If a image toolkit is available the image |
|
1788 |
* Non-image files will be ignored. If an image toolkit is available the image
|
|
1789 | 1789 |
* will be scaled to fit within the desired maximum dimensions. |
1790 | 1790 |
* |
1791 | 1791 |
* @param $file |
drupal7/includes/form.inc | ||
---|---|---|
4484 | 4484 |
* |
4485 | 4485 |
* Sample callback_batch_finished(): |
4486 | 4486 |
* @code |
4487 |
* function batch_test_finished($success, $results, $operations) {
|
|
4487 |
* function my_finished_callback($success, $results, $operations) {
|
|
4488 | 4488 |
* // The 'success' parameter means no fatal PHP errors were detected. All |
4489 | 4489 |
* // other error management should be handled using 'results'. |
4490 | 4490 |
* if ($success) { |
drupal7/includes/install.core.inc | ||
---|---|---|
1590 | 1590 |
} |
1591 | 1591 |
|
1592 | 1592 |
/** |
1593 |
* Batch callback for batch installation of modules. |
|
1593 |
* Implements callback_batch_operation(). |
|
1594 |
* |
|
1595 |
* Performs batch installation of modules. |
|
1594 | 1596 |
*/ |
1595 | 1597 |
function _install_module_batch($module, $module_name, &$context) { |
1596 | 1598 |
// Install and enable the module right away, so that the module will be |
... | ... | |
1603 | 1605 |
} |
1604 | 1606 |
|
1605 | 1607 |
/** |
1608 |
* Implements callback_batch_finished(). |
|
1609 |
* |
|
1606 | 1610 |
* 'Finished' callback for module installation batch. |
1607 | 1611 |
*/ |
1608 | 1612 |
function _install_profile_modules_finished($success, $results, $operations) { |
drupal7/includes/locale.inc | ||
---|---|---|
2306 | 2306 |
} |
2307 | 2307 |
|
2308 | 2308 |
/** |
2309 |
* Implements callback_batch_operation(). |
|
2310 |
* |
|
2309 | 2311 |
* Perform interface translation import as a batch step. |
2310 | 2312 |
* |
2311 | 2313 |
* @param $filepath |
... | ... | |
2324 | 2326 |
} |
2325 | 2327 |
|
2326 | 2328 |
/** |
2329 |
* Implements callback_batch_finished(). |
|
2330 |
* |
|
2327 | 2331 |
* Finished callback of system page locale import batch. |
2328 | 2332 |
* Inform the user of translation files imported. |
2329 | 2333 |
*/ |
... | ... | |
2334 | 2338 |
} |
2335 | 2339 |
|
2336 | 2340 |
/** |
2341 |
* Implements callback_batch_finished(). |
|
2342 |
* |
|
2337 | 2343 |
* Finished callback of language addition locale import batch. |
2338 | 2344 |
* Inform the user of translation files imported. |
2339 | 2345 |
*/ |
drupal7/includes/menu.inc | ||
---|---|---|
229 | 229 |
define('MENU_FOUND', 1); |
230 | 230 |
|
231 | 231 |
/** |
232 |
* Internal menu status code -- Menu item was not found. |
|
232 |
* Menu status code -- Not found. |
|
233 |
* |
|
234 |
* This can be used as the return value from a page callback, although it is |
|
235 |
* preferable to use a load function to accomplish this; see the hook_menu() |
|
236 |
* documentation for details. |
|
233 | 237 |
*/ |
234 | 238 |
define('MENU_NOT_FOUND', 2); |
235 | 239 |
|
236 | 240 |
/** |
237 |
* Internal menu status code -- Menu item access is denied. |
|
241 |
* Menu status code -- Access denied. |
|
242 |
* |
|
243 |
* This can be used as the return value from a page callback, although it is |
|
244 |
* preferable to use an access callback to accomplish this; see the hook_menu() |
|
245 |
* documentation for details. |
|
238 | 246 |
*/ |
239 | 247 |
define('MENU_ACCESS_DENIED', 3); |
240 | 248 |
|
... | ... | |
431 | 439 |
* |
432 | 440 |
* @param $path |
433 | 441 |
* The path; for example, 'node/5'. The function will find the corresponding |
434 |
* node/% item and return that. |
|
442 |
* node/% item and return that. Defaults to the current path.
|
|
435 | 443 |
* @param $router_item |
436 | 444 |
* Internal use only. |
437 | 445 |
* |
... | ... | |
2613 | 2621 |
*/ |
2614 | 2622 |
function menu_get_active_title() { |
2615 | 2623 |
$active_trail = menu_get_active_trail(); |
2624 |
$local_task_title = NULL; |
|
2616 | 2625 |
|
2617 | 2626 |
foreach (array_reverse($active_trail) as $item) { |
2618 |
if (!(bool) ($item['type'] & MENU_IS_LOCAL_TASK)) { |
|
2619 |
return $item['title']; |
|
2627 |
// Local task titles are displayed as tabs and therefore should not be |
|
2628 |
// repeated as the page title. However, if the local task appears in a |
|
2629 |
// top-level menu, it is no longer a "local task" anymore (the front page |
|
2630 |
// of the site does not have tabs) so it is better to use the local task |
|
2631 |
// title in that case than to fall back on the front page link in the |
|
2632 |
// active trail (which is usually "Home" and would not make sense in this |
|
2633 |
// context). |
|
2634 |
if ((bool) ($item['type'] & MENU_IS_LOCAL_TASK)) { |
|
2635 |
// A local task title is being skipped; track it in case it needs to be |
|
2636 |
// used later. |
|
2637 |
$local_task_title = $item['title']; |
|
2638 |
} |
|
2639 |
else { |
|
2640 |
// This is not a local task, so use it for the page title (unless the |
|
2641 |
// conditions described above are met). |
|
2642 |
if (isset($local_task_title) && isset($item['href']) && $item['href'] == '<front>') { |
|
2643 |
return $local_task_title; |
|
2644 |
} |
|
2645 |
else { |
|
2646 |
return $item['title']; |
|
2647 |
} |
|
2620 | 2648 |
} |
2621 | 2649 |
} |
2622 | 2650 |
} |
drupal7/includes/module.inc | ||
---|---|---|
676 | 676 |
/** |
677 | 677 |
* Determines which modules are implementing a hook. |
678 | 678 |
* |
679 |
* @param $hook |
|
679 |
* Lazy-loaded include files specified with "group" via hook_hook_info() or |
|
680 |
* hook_module_implements_alter() will be automatically included by this |
|
681 |
* function when necessary. |
|
682 |
* |
|
683 |
* @param string $hook |
|
680 | 684 |
* The name of the hook (e.g. "help" or "menu"). |
681 |
* @param $sort |
|
685 |
* @param bool $sort
|
|
682 | 686 |
* By default, modules are ordered by weight and filename, settings this option |
683 | 687 |
* to TRUE, module list will be ordered by module name. |
684 |
* @param $reset |
|
688 |
* @param bool $reset
|
|
685 | 689 |
* For internal use only: Whether to force the stored list of hook |
686 | 690 |
* implementations to be regenerated (such as after enabling a new module, |
687 | 691 |
* before processing hook_enable). |
... | ... | |
696 | 700 |
static $drupal_static_fast; |
697 | 701 |
if (!isset($drupal_static_fast)) { |
698 | 702 |
$drupal_static_fast['implementations'] = &drupal_static(__FUNCTION__); |
703 |
$drupal_static_fast['verified'] = &drupal_static(__FUNCTION__ . ':verified'); |
|
699 | 704 |
} |
700 | 705 |
$implementations = &$drupal_static_fast['implementations']; |
706 |
$verified = &$drupal_static_fast['verified']; |
|
701 | 707 |
|
702 | 708 |
// We maintain a persistent cache of hook implementations in addition to the |
703 | 709 |
// static cache to avoid looping through every module and every hook on each |
... | ... | |
711 | 717 |
// per request. |
712 | 718 |
if ($reset) { |
713 | 719 |
$implementations = array(); |
720 |
$verified = array(); |
|
714 | 721 |
cache_set('module_implements', array(), 'cache_bootstrap'); |
715 | 722 |
drupal_static_reset('module_hook_info'); |
716 | 723 |
drupal_static_reset('drupal_alter'); |
... | ... | |
719 | 726 |
} |
720 | 727 |
|
721 | 728 |
// Fetch implementations from cache. |
729 |
// This happens on the first call to module_implements(*, *, FALSE) during a |
|
730 |
// request, but also when $implementations have been reset, e.g. after |
|
731 |
// module_enable(). |
|
722 | 732 |
if (empty($implementations)) { |
723 | 733 |
$implementations = cache_get('module_implements', 'cache_bootstrap'); |
724 | 734 |
if ($implementations === FALSE) { |
... | ... | |
727 | 737 |
else { |
728 | 738 |
$implementations = $implementations->data; |
729 | 739 |
} |
740 |
// Forget all previously "verified" hooks, in case that $implementations |
|
741 |
// were cleared via drupal_static_reset('module_implements') instead of |
|
742 |
// module_implements(*, *, TRUE). |
|
743 |
$verified = array(); |
|
730 | 744 |
} |
731 | 745 |
|
732 | 746 |
if (!isset($implementations[$hook])) { |
733 | 747 |
// The hook is not cached, so ensure that whether or not it has |
734 | 748 |
// implementations, that the cache is updated at the end of the request. |
735 | 749 |
$implementations['#write_cache'] = TRUE; |
750 |
// Discover implementations for this hook. |
|
736 | 751 |
$hook_info = module_hook_info(); |
737 | 752 |
$implementations[$hook] = array(); |
738 | 753 |
$list = module_list(FALSE, FALSE, $sort); |
... | ... | |
744 | 759 |
$implementations[$hook][$module] = $include_file ? $hook_info[$hook]['group'] : FALSE; |
745 | 760 |
} |
746 | 761 |
} |
747 |
// Allow modules to change the weight of specific implementations but avoid |
|
762 |
// Allow modules to change the weight of specific implementations, but avoid
|
|
748 | 763 |
// an infinite loop. |
749 | 764 |
if ($hook != 'module_implements_alter') { |
765 |
// Remember the implementations before hook_module_implements_alter(). |
|
766 |
$implementations_before = $implementations[$hook]; |
|
750 | 767 |
drupal_alter('module_implements', $implementations[$hook], $hook); |
768 |
// Verify implementations that were added or modified. |
|
769 |
foreach (array_diff_assoc($implementations[$hook], $implementations_before) as $module => $group) { |
|
770 |
// If drupal_alter('module_implements') changed or added a $group, the |
|
771 |
// respective file needs to be included. |
|
772 |
if ($group) { |
|
773 |
module_load_include('inc', $module, "$module.$group"); |
|
774 |
} |
|
775 |
// If a new implementation was added, verify that the function exists. |
|
776 |
if (!function_exists($module . '_' . $hook)) { |
|
777 |
unset($implementations[$hook][$module]); |
|
778 |
} |
|
779 |
} |
|
751 | 780 |
} |
781 |
// Implementations for this hook are now "verified". |
|
782 |
$verified[$hook] = TRUE; |
|
752 | 783 |
} |
753 |
else { |
|
784 |
elseif (!isset($verified[$hook])) { |
|
785 |
// Implementations for this hook were in the cache, but they are not |
|
786 |
// "verified" yet. |
|
754 | 787 |
foreach ($implementations[$hook] as $module => $group) { |
755 | 788 |
// If this hook implementation is stored in a lazy-loaded file, so include |
756 | 789 |
// that file first. |
... | ... | |
769 | 802 |
$implementations['#write_cache'] = TRUE; |
770 | 803 |
} |
771 | 804 |
} |
805 |
$verified[$hook] = TRUE; |
|
772 | 806 |
} |
773 | 807 |
|
774 | 808 |
return array_keys($implementations[$hook]); |
... | ... | |
833 | 867 |
* @see module_implements() |
834 | 868 |
*/ |
835 | 869 |
function module_implements_write_cache() { |
870 |
// The list of implementations includes vital modules only before full |
|
871 |
// bootstrap, so do not write cache if we are not fully bootstrapped yet. |
|
872 |
if (drupal_get_bootstrap_phase() != DRUPAL_BOOTSTRAP_FULL) { |
|
873 |
return; |
|
874 |
} |
|
836 | 875 |
$implementations = &drupal_static('module_implements'); |
837 | 876 |
if (isset($implementations['#write_cache'])) { |
838 | 877 |
unset($implementations['#write_cache']); |
drupal7/includes/registry.inc | ||
---|---|---|
164 | 164 |
* (optional) Weight of the module. |
165 | 165 |
*/ |
166 | 166 |
function _registry_parse_file($filename, $contents, $module = '', $weight = 0) { |
167 |
if (preg_match_all('/^\s*(?:abstract|final)?\s*(class|interface)\s+([a-zA-Z0-9_]+)/m', $contents, $matches)) { |
|
167 |
if (preg_match_all('/^\s*(?:abstract|final)?\s*(class|interface|trait)\s+([a-zA-Z0-9_]+)/m', $contents, $matches)) {
|
|
168 | 168 |
foreach ($matches[2] as $key => $name) { |
169 | 169 |
db_merge('registry') |
170 | 170 |
->key(array( |
drupal7/includes/theme.inc | ||
---|---|---|
1710 | 1710 |
* copy if none of the enabled modules or the active theme implement any |
1711 | 1711 |
* preprocess or process functions or override this theme implementation. |
1712 | 1712 |
* |
1713 |
* @param $variables |
|
1714 |
* An associative array containing the keys 'text', 'path', and 'options'. |
|
1715 |
* See the l() function for information about these variables. |
|
1713 |
* @param array $variables |
|
1714 |
* An associative array containing the keys: |
|
1715 |
* - text: The text of the link. |
|
1716 |
* - path: The internal path or external URL being linked to. It is used as |
|
1717 |
* the $path parameter of the url() function. |
|
1718 |
* - options: (optional) An array that defaults to empty, but can contain: |
|
1719 |
* - attributes: Can contain optional attributes: |
|
1720 |
* - class: must be declared in an array. Example: 'class' => |
|
1721 |
* array('class_name1','class_name2'). |
|
1722 |
* - title: must be a string. Example: 'title' => 'Example title' |
|
1723 |
* - Others are more flexible as long as they work with |
|
1724 |
* drupal_attributes($variables['options']['attributes]). |
|
1725 |
* - html: Boolean flag that tells whether text contains HTML or plain |
|
1726 |
* text. If set to TRUE, the text value will not be sanitized so the |
|
1727 |
calling function must ensure that it already contains safe HTML. |
|
1728 |
* The elements $variables['options']['attributes'] and |
|
1729 |
* $variables['options']['html'] are used in this function similarly to the |
|
1730 |
* way that $options['attributes'] and $options['html'] are used in l(). |
|
1731 |
* The link itself is built by the url() function, which takes |
|
1732 |
* $variables['path'] and $variables['options'] as arguments. |
|
1716 | 1733 |
* |
1717 | 1734 |
* @see l() |
1735 |
* @see url() |
|
1718 | 1736 |
*/ |
1719 | 1737 |
function theme_link($variables) { |
1720 | 1738 |
return '<a href="' . check_plain(url($variables['path'], $variables['options'])) . '"' . drupal_attributes($variables['options']['attributes']) . '>' . ($variables['options']['html'] ? $variables['text'] : check_plain($variables['text'])) . '</a>'; |
drupal7/includes/update.inc | ||
---|---|---|
908 | 908 |
} |
909 | 909 |
|
910 | 910 |
/** |
911 |
* Implements callback_batch_operation(). |
|
912 |
* |
|
911 | 913 |
* Performs one update and stores the results for display on the results page. |
912 | 914 |
* |
913 | 915 |
* If an update function completes successfully, it should return a message |
... | ... | |
1078 | 1080 |
} |
1079 | 1081 |
|
1080 | 1082 |
/** |
1083 |
* Implements callback_batch_finished(). |
|
1084 |
* |
|
1081 | 1085 |
* Finishes the update process and stores the results for eventual display. |
1082 | 1086 |
* |
1083 | 1087 |
* After the updates run, all caches are flushed. The update results are |
drupal7/misc/states.js | ||
---|---|---|
493 | 493 |
$(document).bind('state:required', function(e) { |
494 | 494 |
if (e.trigger) { |
495 | 495 |
if (e.value) { |
496 |
$(e.target).closest('.form-item, .form-wrapper').find('label').append('<span class="form-required">*</span>'); |
|
496 |
var $label = $(e.target).closest('.form-item, .form-wrapper').find('label'); |
|
497 |
// Avoids duplicate required markers on initialization. |
|
498 |
if (!$label.find('.form-required').length) { |
|
499 |
$label.append('<span class="form-required">*</span>'); |
|
500 |
} |
|
497 | 501 |
} |
498 | 502 |
else { |
Formats disponibles : Unified diff
Update Drupal core to version 7.40