From 13aafca7e418f23d592f5bd9830bd2e28fa7d69d Mon Sep 17 00:00:00 2001 From: Bachir Soussi Chiadmi Date: Tue, 13 Dec 2016 13:00:59 +0100 Subject: [PATCH 1/4] moved the duplicatesmail menu --- sites/all/modules/gui/materiobasemod/materio_admin.module | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sites/all/modules/gui/materiobasemod/materio_admin.module b/sites/all/modules/gui/materiobasemod/materio_admin.module index 409deb9e..96eb8e66 100644 --- a/sites/all/modules/gui/materiobasemod/materio_admin.module +++ b/sites/all/modules/gui/materiobasemod/materio_admin.module @@ -30,7 +30,7 @@ function materio_admin_permission() { */ function materio_admin_menu() { - $items['admin/users/duplicatemails'] = array( + $items['admin/people/duplicatemails'] = array( 'title' => "Duplicate mails", 'page callback' => 'materio_duplicatemails', 'access callback' => 'user_access', From f01fdbdd9c0169e60a584ae7b95119433e92bcb9 Mon Sep 17 00:00:00 2001 From: Bachir Soussi Chiadmi Date: Mon, 19 Dec 2016 16:57:32 +0100 Subject: [PATCH 2/4] security core update --- CHANGELOG.txt | 9 + INSTALL.mysql.txt | 45 ++ INSTALL.pgsql.txt | 44 ++ INSTALL.sqlite.txt | 31 ++ INSTALL.txt | 400 ++++++++++++++++++ includes/bootstrap.inc | 2 +- includes/database/select.inc | 15 + install.php | 26 ++ misc/tabledrag.js | 12 +- modules/aggregator/aggregator.info | 6 +- modules/aggregator/tests/aggregator_test.info | 6 +- modules/block/block.info | 6 +- modules/block/tests/block_test.info | 6 +- .../block_test_theme/block_test_theme.info | 6 +- modules/blog/blog.info | 6 +- modules/book/book.info | 6 +- modules/color/color.info | 6 +- modules/comment/comment.info | 6 +- modules/contact/contact.info | 6 +- modules/contextual/contextual.info | 6 +- modules/dashboard/dashboard.info | 6 +- modules/dblog/dblog.info | 6 +- modules/field/field.info | 6 +- .../field_sql_storage/field_sql_storage.info | 6 +- modules/field/modules/list/list.info | 6 +- .../field/modules/list/tests/list_test.info | 6 +- modules/field/modules/number/number.info | 6 +- modules/field/modules/options/options.info | 6 +- modules/field/modules/text/text.info | 6 +- modules/field/tests/field_test.info | 6 +- modules/field_ui/field_ui.info | 6 +- modules/file/file.info | 6 +- modules/file/tests/file_module_test.info | 6 +- modules/filter/filter.info | 6 +- modules/forum/forum.info | 6 +- modules/help/help.info | 6 +- modules/image/image.info | 6 +- modules/image/tests/image_module_test.info | 6 +- modules/locale/locale.info | 6 +- modules/locale/tests/locale_test.info | 6 +- modules/menu/menu.info | 6 +- modules/node/node.info | 6 +- modules/node/tests/node_access_test.info | 6 +- modules/node/tests/node_test.info | 6 +- modules/node/tests/node_test_exception.info | 6 +- modules/openid/openid.info | 6 +- modules/openid/tests/openid_test.info | 6 +- modules/overlay/overlay.info | 6 +- modules/path/path.info | 6 +- modules/php/php.info | 6 +- modules/poll/poll.info | 6 +- modules/profile/profile.info | 6 +- modules/rdf/rdf.info | 6 +- modules/rdf/tests/rdf_test.info | 6 +- modules/search/search.info | 6 +- .../search/tests/search_embedded_form.info | 6 +- modules/search/tests/search_extra_type.info | 6 +- modules/search/tests/search_node_tags.info | 6 +- modules/shortcut/shortcut.info | 6 +- modules/simpletest/simpletest.info | 6 +- .../simpletest/tests/actions_loop_test.info | 6 +- modules/simpletest/tests/ajax_forms_test.info | 6 +- modules/simpletest/tests/ajax_test.info | 6 +- modules/simpletest/tests/batch_test.info | 6 +- modules/simpletest/tests/boot_test_1.info | 6 +- modules/simpletest/tests/boot_test_2.info | 6 +- modules/simpletest/tests/common_test.info | 6 +- .../tests/common_test_cron_helper.info | 6 +- modules/simpletest/tests/database_test.info | 6 +- .../drupal_autoload_test.info | 6 +- ...drupal_system_listing_compatible_test.info | 6 +- ...upal_system_listing_incompatible_test.info | 6 +- .../simpletest/tests/entity_cache_test.info | 6 +- .../tests/entity_cache_test_dependency.info | 6 +- .../tests/entity_crud_hook_test.info | 6 +- .../tests/entity_query_access_test.info | 6 +- modules/simpletest/tests/error_test.info | 6 +- modules/simpletest/tests/file_test.info | 6 +- modules/simpletest/tests/filter_test.info | 6 +- modules/simpletest/tests/form_test.info | 6 +- modules/simpletest/tests/image_test.info | 6 +- modules/simpletest/tests/menu_test.info | 6 +- modules/simpletest/tests/module_test.info | 6 +- modules/simpletest/tests/path_test.info | 6 +- .../tests/psr_0_test/psr_0_test.info | 6 +- .../tests/psr_4_test/psr_4_test.info | 6 +- .../simpletest/tests/requirements1_test.info | 6 +- .../simpletest/tests/requirements2_test.info | 6 +- modules/simpletest/tests/session_test.info | 6 +- .../tests/system_dependencies_test.info | 6 +- ...atible_core_version_dependencies_test.info | 6 +- ...system_incompatible_core_version_test.info | 6 +- ...ible_module_version_dependencies_test.info | 6 +- ...stem_incompatible_module_version_test.info | 6 +- .../tests/system_project_namespace_test.info | 6 +- modules/simpletest/tests/system_test.info | 6 +- modules/simpletest/tests/taxonomy_test.info | 6 +- modules/simpletest/tests/taxonomy_test.module | 30 ++ modules/simpletest/tests/theme_test.info | 6 +- .../themes/test_basetheme/test_basetheme.info | 6 +- .../themes/test_subtheme/test_subtheme.info | 6 +- .../tests/themes/test_theme/test_theme.info | 6 +- .../simpletest/tests/update_script_test.info | 6 +- modules/simpletest/tests/update_test_1.info | 6 +- modules/simpletest/tests/update_test_2.info | 6 +- modules/simpletest/tests/update_test_3.info | 6 +- modules/simpletest/tests/url_alter_test.info | 6 +- modules/simpletest/tests/xmlrpc_test.info | 6 +- modules/statistics/statistics.info | 6 +- modules/syslog/syslog.info | 6 +- modules/system/system.info | 6 +- modules/system/system.module | 2 +- modules/system/tests/cron_queue_test.info | 6 +- modules/system/tests/system_cron_test.info | 6 +- modules/taxonomy/taxonomy.info | 6 +- modules/taxonomy/taxonomy.module | 8 +- modules/taxonomy/taxonomy.pages.inc | 2 +- modules/taxonomy/taxonomy.test | 110 +++++ modules/toolbar/toolbar.info | 6 +- modules/tracker/tracker.info | 6 +- .../translation/tests/translation_test.info | 6 +- modules/translation/translation.info | 6 +- modules/trigger/tests/trigger_test.info | 6 +- modules/trigger/trigger.info | 6 +- modules/update/tests/aaa_update_test.info | 6 +- modules/update/tests/bbb_update_test.info | 6 +- modules/update/tests/ccc_update_test.info | 6 +- .../update_test_admintheme.info | 6 +- .../update_test_basetheme.info | 6 +- .../update_test_subtheme.info | 6 +- modules/update/tests/update_test.info | 6 +- modules/update/update.info | 6 +- modules/user/tests/user_form_test.info | 6 +- modules/user/user.info | 6 +- modules/user/user.module | 38 +- modules/user/user.test | 53 --- profiles/minimal/minimal.info | 6 +- profiles/standard/standard.info | 6 +- ...drupal_system_listing_compatible_test.info | 6 +- ...upal_system_listing_incompatible_test.info | 6 +- profiles/testing/testing.info | 6 +- themes/bartik/bartik.info | 6 +- themes/garland/garland.info | 6 +- themes/seven/seven.info | 6 +- themes/stark/stark.info | 6 +- 145 files changed, 1121 insertions(+), 480 deletions(-) create mode 100644 INSTALL.mysql.txt create mode 100644 INSTALL.pgsql.txt create mode 100644 INSTALL.sqlite.txt create mode 100644 INSTALL.txt create mode 100644 install.php diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 1cfc6dac..0bd51e04 100755 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,4 +1,13 @@ +Drupal 7.53, 2016-12-07 +----------------------- +- Fixed drag and drop support on newer Chrome/IE 11+ versions after 7.51 update + when jQuery is updated to 1.7-1.11.0. + +Drupal 7.52, 2016-11-16 +----------------------- +- Fixed security issues (multiple vulnerabilities). See SA-CORE-2016-005. + Drupal 7.51, 2016-10-05 ----------------------- - The Update module now also checks for updates to a disabled theme that is diff --git a/INSTALL.mysql.txt b/INSTALL.mysql.txt new file mode 100644 index 00000000..95a87343 --- /dev/null +++ b/INSTALL.mysql.txt @@ -0,0 +1,45 @@ + +CREATE THE MySQL DATABASE +-------------------------- + +This step is only necessary if you don't already have a database set up (e.g., +by your host). In the following examples, 'username' is an example MySQL user +which has the CREATE and GRANT privileges. Use the appropriate user name for +your system. + +First, you must create a new database for your Drupal site (here, 'databasename' +is the name of the new database): + + mysqladmin -u username -p create databasename + +MySQL will prompt for the 'username' database password and then create the +initial database files. Next you must log in and set the access database rights: + + mysql -u username -p + +Again, you will be asked for the 'username' database password. At the MySQL +prompt, enter the following command: + + GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, + CREATE TEMPORARY TABLES ON databasename.* + TO 'username'@'localhost' IDENTIFIED BY 'password'; + +where: + + 'databasename' is the name of your database + 'username' is the username of your MySQL account + 'localhost' is the web server host where Drupal is installed + 'password' is the password required for that username + +Note: Unless the database user/host combination for your Drupal installation +has all of the privileges listed above (except possibly CREATE TEMPORARY TABLES, +which is currently only used by Drupal core automated tests and some +contributed modules), you will not be able to install or run Drupal. + +If successful, MySQL will reply with: + + Query OK, 0 rows affected + +If the InnoDB storage engine is available, it will be used for all database +tables. InnoDB provides features over MyISAM such as transaction support, +row-level locks, and consistent non-locking reads. diff --git a/INSTALL.pgsql.txt b/INSTALL.pgsql.txt new file mode 100644 index 00000000..8fe80433 --- /dev/null +++ b/INSTALL.pgsql.txt @@ -0,0 +1,44 @@ + +CREATE THE PostgreSQL DATABASE +------------------------------ + +Note that the database must be created with UTF-8 (Unicode) encoding. + +1. CREATE DATABASE USER + + This step is only necessary if you don't already have a user set up (e.g., by + your host), or want to create a new user for use with Drupal only. The + following command creates a new user named 'username' and asks for a password + for that user: + + createuser --pwprompt --encrypted --no-createrole --no-createdb username + + If there are no errors, then the command was successful. + +2. CREATE DRUPAL DATABASE + + This step is only necessary if you don't already have a database set up + (e.g., by your host) or want to create a new database for use with Drupal + only. The following command creates a new database named 'databasename', + which is owned by the previously created 'username': + + createdb --encoding=UTF8 --owner=username databasename + + If there are no errors, then the command was successful. + +3. CREATE SCHEMA OR SCHEMAS (Optional advanced step) + + Drupal will run across different schemas within your database if you so wish. + By default, Drupal runs inside the 'public' schema but you can use $db_prefix + inside settings.php to define a schema for Drupal to run inside of, or + specify tables that are shared inside of a separate schema. Drupal will not + create schemas for you. In fact, the user that Drupal runs as should not be + allowed to do this. You'll need to execute the SQL below as a superuser, + replace 'username' with the username that Drupal uses to connect to + PostgreSQL, and replace 'schema_name' with a schema name you wish to use, + such as 'shared': + + CREATE SCHEMA schema_name AUTHORIZATION username; + + Do this for as many schemas as you need. See default.settings.php for + instructions on how to set which tables use which schemas. diff --git a/INSTALL.sqlite.txt b/INSTALL.sqlite.txt new file mode 100644 index 00000000..8e57d60c --- /dev/null +++ b/INSTALL.sqlite.txt @@ -0,0 +1,31 @@ + +SQLITE REQUIREMENTS +------------------- + +To use SQLite with your Drupal installation, the following requirements must be +met: Server has PHP 5.2 or later with PDO, and the PDO SQLite driver must be +enabled. + +SQLITE DATABASE CREATION +------------------------ + +The Drupal installer will create the SQLite database for you. The only +requirement is that the installer must have write permissions to the directory +where the database file resides. This directory (not just the database file) also +has to remain writeable by the web server going forward for SQLite to continue to +be able to operate. + +On the "Database configuration" form in the "Database file" field, you must +supply the exact path to where you wish your database file to reside. It is +strongly suggested that you choose a path that is outside of the webroot, yet +ensure that the directory is writeable by the web server. + +If you must place your database file in your webroot, you could try using the +following in your "Database file" field: + + sites/default/files/.ht.sqlite + +Note: The .ht in the name will tell Apache to prevent the database from being +downloaded. Please check that the file is, indeed, protected by your webserver. +If not, please consult the documentation of your webserver on how to protect a +file from downloading. diff --git a/INSTALL.txt b/INSTALL.txt new file mode 100644 index 00000000..e00c8bad --- /dev/null +++ b/INSTALL.txt @@ -0,0 +1,400 @@ + +CONTENTS OF THIS FILE +--------------------- + + * Requirements and notes + * Optional server requirements + * Installation + * Building and customizing your site + * Multisite configuration + * More information + +REQUIREMENTS AND NOTES +---------------------- + +Drupal requires: + +- A web server. Apache (version 2.0 or greater) is recommended. +- PHP 5.2.4 (or greater) (http://www.php.net/). +- One of the following databases: + - MySQL 5.0.15 (or greater) (http://www.mysql.com/). + - MariaDB 5.1.44 (or greater) (http://mariadb.org/). MariaDB is a fully + compatible drop-in replacement for MySQL. + - Percona Server 5.1.70 (or greater) (http://www.percona.com/). Percona + Server is a backwards-compatible replacement for MySQL. + - PostgreSQL 8.3 (or greater) (http://www.postgresql.org/). + - SQLite 3.3.7 (or greater) (http://www.sqlite.org/). + +For more detailed information about Drupal requirements, including a list of +PHP extensions and configurations that are required, see "System requirements" +(http://drupal.org/requirements) in the Drupal.org online documentation. + +For detailed information on how to configure a test server environment using a +variety of operating systems and web servers, see "Local server setup" +(http://drupal.org/node/157602) in the Drupal.org online documentation. + +Note that all directories mentioned in this document are always relative to the +directory of your Drupal installation, and commands are meant to be run from +this directory (except for the initial commands that create that directory). + +OPTIONAL SERVER REQUIREMENTS +---------------------------- + +- If you want to use Drupal's "Clean URLs" feature on an Apache web server, you + will need the mod_rewrite module and the ability to use local .htaccess + files. For Clean URLs support on IIS, see "Clean URLs with IIS" + (http://drupal.org/node/3854) in the Drupal.org online documentation. + +- If you plan to use XML-based services such as RSS aggregation, you will need + PHP's XML extension. This extension is enabled by default on most PHP + installations. + +- To serve gzip compressed CSS and JS files on an Apache web server, you will + need the mod_headers module and the ability to use local .htaccess files. + +- Some Drupal functionality (e.g., checking whether Drupal and contributed + modules need updates, RSS aggregation, etc.) require that the web server be + able to go out to the web and download information. If you want to use this + functionality, you need to verify that your hosting provider or server + configuration allows the web server to initiate outbound connections. Most web + hosting setups allow this. + +INSTALLATION +------------ + +1. Download and extract Drupal. + + You can obtain the latest Drupal release from http://drupal.org -- the files + are available in .tar.gz and .zip formats and can be extracted using most + compression tools. + + To download and extract the files, on a typical Unix/Linux command line, use + the following commands (assuming you want version x.y of Drupal in .tar.gz + format): + + wget http://drupal.org/files/projects/drupal-x.y.tar.gz + tar -zxvf drupal-x.y.tar.gz + + This will create a new directory drupal-x.y/ containing all Drupal files and + directories. Then, to move the contents of that directory into a directory + within your web server's document root or your public HTML directory, + continue with this command: + + mv drupal-x.y/* drupal-x.y/.htaccess /path/to/your/installation + +2. Optionally, download a translation. + + By default, Drupal is installed in English, and further languages may be + installed later. If you prefer to install Drupal in another language + initially: + + - Download a translation file for the correct Drupal version and language + from the translation server: http://localize.drupal.org/translate/downloads + + - Place the file into your installation profile's translations directory. + For instance, if you are using the Standard installation profile, + move the .po file into the directory: + + profiles/standard/translations/ + + For detailed instructions, visit http://drupal.org/localize + +3. Create the Drupal database. + + Because Drupal stores all site information in a database, you must create + this database in order to install Drupal, and grant Drupal certain database + privileges (such as the ability to create tables). For details, consult + INSTALL.mysql.txt, INSTALL.pgsql.txt, or INSTALL.sqlite.txt. You may also + need to consult your web hosting provider for instructions specific to your + web host. + + Take note of the username, password, database name, and hostname as you + create the database. You will enter this information during the install. + +4. Run the install script. + + To run the install script, point your browser to the base URL of your + website (e.g., http://www.example.com). + + You will be guided through several screens to set up the database, add the + site maintenance account (the first user, also known as user/1), and provide + basic web site settings. + + During installation, several files and directories need to be created, which + the install script will try to do automatically. However, on some hosting + environments, manual steps are required, and the install script will tell + you that it cannot proceed until you fix certain issues. This is normal and + does not indicate a problem with your server. + + The most common steps you may need to perform are: + + a. Missing files directory. + + The install script will attempt to create a file storage directory in + the default location at sites/default/files (the location of the files + directory may be changed after Drupal is installed). + + If auto-creation fails, you can make it work by changing permissions on + the sites/default directory so that the web server can create the files + directory within it for you. (If you are creating a multisite + installation, substitute the correct sites directory for sites/default; + see the Multisite Configuration section of this file, below.) + + For example, on a Unix/Linux command line, you can grant everyone + (including the web server) permission to write to the sites/default + directory with this command: + + chmod a+w sites/default + + Be sure to set the permissions back after the installation is finished! + Sample command: + + chmod go-w sites/default + + Alternatively, instead of allowing the web server to create the files + directory for you as described above, you can create it yourself. Sample + commands from a Unix/Linux command line: + + mkdir sites/default/files + chmod a+w sites/default/files + + b. Missing settings file. + + Drupal will try to automatically create a settings.php configuration file, + which is normally in the directory sites/default (to avoid problems when + upgrading, Drupal is not packaged with this file). If auto-creation fails, + you will need to create this file yourself, using the file + sites/default/default.settings.php as a template. + + For example, on a Unix/Linux command line, you can make a copy of the + default.settings.php file with the command: + + cp sites/default/default.settings.php sites/default/settings.php + + Next, grant write privileges to the file to everyone (including the web + server) with the command: + + chmod a+w sites/default/settings.php + + Be sure to set the permissions back after the installation is finished! + Sample command: + + chmod go-w sites/default/settings.php + + c. Write permissions after install. + + The install script will attempt to write-protect the settings.php file and + the sites/default directory after saving your configuration. If this + fails, you will be notified, and you can do it manually. Sample commands + from a Unix/Linux command line: + + chmod go-w sites/default/settings.php + chmod go-w sites/default + +5. Verify that the site is working. + + When the install script finishes, you will be logged in with the site + maintenance account on a "Welcome" page. If the default Drupal theme is not + displaying properly and links on the page result in "Page Not Found" errors, + you may be experiencing problems with clean URLs. Visit + http://drupal.org/getting-started/clean-urls to troubleshoot. + +6. Change file system storage settings (optional). + + The files directory created in step 4 is the default file system path used to + store all uploaded files, as well as some temporary files created by + Drupal. After installation, you can modify the file system path to store + uploaded files in a different location. + + It is not necessary to modify this path, but you may wish to change it if: + + - Your site runs multiple Drupal installations from a single codebase (modify + the file system path of each installation to a different directory so that + uploads do not overlap between installations). + + - Your site runs on a number of web servers behind a load balancer or reverse + proxy (modify the file system path on each server to point to a shared file + repository). + + - You want to restrict access to uploaded files. + + To modify the file system path: + + a. Ensure that the new location for the path exists and is writable by the + web server. For example, to create a new directory named uploads and grant + write permissions, use the following commands on a Unix/Linux command + line: + + mkdir uploads + chmod a+w uploads + + b. Navigate to Administration > Configuration > Media > File system, and + enter the desired path. Note that if you want to use private file storage, + you need to first enter the path for private files and save the + configuration, and then change the "Default download method" setting and + save again. + + Changing the file system path after files have been uploaded may cause + unexpected problems on an existing site. If you modify the file system path + on an existing site, remember to copy all files from the original location + to the new location. + +7. Revoke documentation file permissions (optional). + + Some administrators suggest making the documentation files, especially + CHANGELOG.txt, non-readable so that the exact version of Drupal you are + running is slightly more difficult to determine. If you wish to implement + this optional security measure, from a Unix/Linux command line you can use + the following command: + + chmod a-r CHANGELOG.txt + + Note that the example only affects CHANGELOG.txt. To completely hide all + documentation files from public view, repeat this command for each of the + Drupal documentation files in the installation directory, substituting the + name of each file for CHANGELOG.txt in the example. + + For more information on setting file permissions, see "Modifying Linux, + Unix, and Mac file permissions" (http://drupal.org/node/202483) or + "Modifying Windows file permissions" (http://drupal.org/node/202491) in the + Drupal.org online documentation. + +8. Set up independent "cron" maintenance jobs. + + Many Drupal modules have tasks that must be run periodically, including the + Search module (building and updating the index used for keyword searching), + the Aggregator module (retrieving feeds from other sites), and the System + module (performing routine maintenance and pruning of database tables). These + tasks are known as "cron maintenance tasks", named after the Unix/Linux + "cron" utility. + + When you install Drupal, its built-in cron feature is enabled, which + automatically runs the cron tasks periodically, triggered by people visiting + pages of your site. You can configure the built-in cron feature by navigating + to Administration > Configuration > System > Cron. + + It is also possible to run the cron tasks independent of site visits; this is + recommended for most sites. To do this, you will need to set up an automated + process to visit the page cron.php on your site, which executes the cron + tasks. + + The URL of the cron.php page requires a "cron key" to protect against + unauthorized access. Your site's cron key is automatically generated during + installation and is specific to your site. The full URL of the page, with the + cron key, is available in the "Cron maintenance tasks" section of the Status + report page at Administration > Reports > Status report. + + As an example for how to set up this automated process, you can use the + crontab utility on Unix/Linux systems. The following crontab line uses the + wget command to visit the cron.php page, and runs each hour, on the hour: + + 0 * * * * wget -O - -q -t 1 http://example.com/cron.php?cron_key=YOURKEY + + Replace the text "http://example.com/cron.php?cron_key=YOURKEY" in the + example with the full URL displayed under "Cron maintenance tasks" on the + "Status report" page. + + More information about cron maintenance tasks is available at + http://drupal.org/cron, and sample cron shell scripts can be found in the + scripts/ directory. (Note that these scripts must be customized like the + above example, to add your site-specific cron key and domain name.) + +BUILDING AND CUSTOMIZING YOUR SITE +---------------------------------- + +A new installation of Drupal defaults to a very basic configuration. To extend +your site, you use "modules" and "themes". A module is a plugin that adds +functionality to Drupal, while a theme changes the look of your site. The core +of Drupal provides several optional modules and themes, and you can download +more at http://drupal.org/project/modules and http://drupal.org/project/themes + +Do not mix downloaded or custom modules and themes with Drupal's core modules +and themes. Drupal's modules and themes are located in the top-level modules and +themes directories, while the modules and themes you add to Drupal are normally +placed in the sites/all/modules and sites/all/themes directories. If you run a +multisite installation, you can also place modules and themes in the +site-specific directories -- see the Multisite Configuration section, below. + +Never edit Drupal's core modules and themes; instead, use the hooks available in +the Drupal API. To modify the behavior of Drupal, develop a module as described +at http://drupal.org/developing/modules. To modify the look of Drupal, create a +subtheme as described at http://drupal.org/node/225125, or a completely new +theme as described at http://drupal.org/documentation/theme + +MULTISITE CONFIGURATION +----------------------- + +A single Drupal installation can host several Drupal-powered sites, each with +its own individual configuration. + +Additional site configurations are created in subdirectories within the 'sites' +directory. Each subdirectory must have a 'settings.php' file, which specifies +the configuration settings. The easiest way to create additional sites is to +copy the 'default' directory and modify the 'settings.php' file as appropriate. +The new directory name is constructed from the site's URL. The configuration for +www.example.com could be in 'sites/example.com/settings.php' (note that 'www.' +should be omitted if users can access your site at http://example.com/). + +Sites do not have to have a different domain. You can also use subdomains and +subdirectories for Drupal sites. For example, example.com, sub.example.com, and +sub.example.com/site3 can all be defined as independent Drupal sites. The setup +for a configuration such as this would look like the following: + + sites/default/settings.php + sites/example.com/settings.php + sites/sub.example.com/settings.php + sites/sub.example.com.site3/settings.php + +When searching for a site configuration (for example www.sub.example.com/site3), +Drupal will search for configuration files in the following order, using the +first configuration it finds: + + sites/www.sub.example.com.site3/settings.php + sites/sub.example.com.site3/settings.php + sites/example.com.site3/settings.php + sites/www.sub.example.com/settings.php + sites/sub.example.com/settings.php + sites/example.com/settings.php + sites/default/settings.php + +If you are installing on a non-standard port, the port number is treated as the +deepest subdomain. For example: http://www.example.com:8080/ could be loaded +from sites/8080.www.example.com/. The port number will be removed according to +the pattern above if no port-specific configuration is found, just like a real +subdomain. + +Each site configuration can have its own site-specific modules and themes in +addition to those installed in the standard 'modules' and 'themes' directories. +To use site-specific modules or themes, simply create a 'modules' or 'themes' +directory within the site configuration directory. For example, if +sub.example.com has a custom theme and a custom module that should not be +accessible to other sites, the setup would look like this: + + sites/sub.example.com/ + settings.php + themes/custom_theme + modules/custom_module + +NOTE: for more information about multiple virtual hosts or the configuration +settings, consult http://drupal.org/getting-started/6/install/multi-site + +For more information on configuring Drupal's file system path in a multisite +configuration, see step 6 above. + +MORE INFORMATION +---------------- + +- See the Drupal.org online documentation: + http://drupal.org/documentation + +- For a list of security announcements, see the "Security advisories" page at + http://drupal.org/security (available as an RSS feed). This page also + describes how to subscribe to these announcements via e-mail. + +- For information about the Drupal security process, or to find out how to + report a potential security issue to the Drupal security team, see the + "Security team" page at http://drupal.org/security-team + +- For information about the wide range of available support options, visit + http://drupal.org and click on Community and Support in the top or bottom + navigation. diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc index 3c41c69f..ed6d864c 100755 --- a/includes/bootstrap.inc +++ b/includes/bootstrap.inc @@ -8,7 +8,7 @@ /** * The current system version. */ -define('VERSION', '7.51'); +define('VERSION', '7.53'); /** * Core API compatibility. diff --git a/includes/database/select.inc b/includes/database/select.inc index 3abd205c..8d84460e 100755 --- a/includes/database/select.inc +++ b/includes/database/select.inc @@ -1231,6 +1231,21 @@ class SelectQuery extends Query implements SelectQueryInterface { // Modules may alter all queries or only those having a particular tag. if (isset($this->alterTags)) { + // Many contrib modules assume that query tags used for access-checking + // purposes follow the pattern $entity_type . '_access'. But this is + // not the case for taxonomy terms, since core used to add term_access + // instead of taxonomy_term_access to its queries. Provide backwards + // compatibility by adding both tags here instead of attempting to fix + // all contrib modules in a coordinated effort. + // TODO: + // - Extract this mechanism into a hook as part of a public (non-security) + // issue. + // - Emit E_USER_DEPRECATED if term_access is used. + // https://www.drupal.org/node/2575081 + $term_access_tags = array('term_access' => 1, 'taxonomy_term_access' => 1); + if (array_intersect_key($this->alterTags, $term_access_tags)) { + $this->alterTags += $term_access_tags; + } $hooks = array('query'); foreach ($this->alterTags as $tag => $value) { $hooks[] = 'query_' . $tag; diff --git a/install.php b/install.php new file mode 100644 index 00000000..685d3b4e --- /dev/null +++ b/install.php @@ -0,0 +1,26 @@ +system requirements page for more information.'; + exit; +} + +// Start the installer. +require_once DRUPAL_ROOT . '/includes/install.core.inc'; +install_drupal(); diff --git a/misc/tabledrag.js b/misc/tabledrag.js index 4e07784c..7ea88b60 100755 --- a/misc/tabledrag.js +++ b/misc/tabledrag.js @@ -580,12 +580,20 @@ Drupal.tableDrag.prototype.dropRow = function (event, self) { * Get the mouse coordinates from the event (allowing for browser differences). */ Drupal.tableDrag.prototype.mouseCoords = function (event) { + // Complete support for pointer events was only introduced to jQuery in + // version 1.11.1; between versions 1.7 and 1.11.0 pointer events have the + // clientX and clientY properties undefined. In those cases, the properties + // must be retrieved from the event.originalEvent object instead. + var clientX = event.clientX || event.originalEvent.clientX; + var clientY = event.clientY || event.originalEvent.clientY; + if (event.pageX || event.pageY) { return { x: event.pageX, y: event.pageY }; } + return { - x: event.clientX + document.body.scrollLeft - document.body.clientLeft, - y: event.clientY + document.body.scrollTop - document.body.clientTop + x: clientX + document.body.scrollLeft - document.body.clientLeft, + y: clientY + document.body.scrollTop - document.body.clientTop }; }; diff --git a/modules/aggregator/aggregator.info b/modules/aggregator/aggregator.info index 52411702..b7582352 100755 --- a/modules/aggregator/aggregator.info +++ b/modules/aggregator/aggregator.info @@ -7,8 +7,8 @@ files[] = aggregator.test configure = admin/config/services/aggregator/settings stylesheets[all][] = aggregator.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/aggregator/tests/aggregator_test.info b/modules/aggregator/tests/aggregator_test.info index f3194fe8..8418e88b 100755 --- a/modules/aggregator/tests/aggregator_test.info +++ b/modules/aggregator/tests/aggregator_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/block/block.info b/modules/block/block.info index be55e090..8ecff8ad 100755 --- a/modules/block/block.info +++ b/modules/block/block.info @@ -6,8 +6,8 @@ core = 7.x files[] = block.test configure = admin/structure/block -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/block/tests/block_test.info b/modules/block/tests/block_test.info index 2bb8d033..514b33b1 100755 --- a/modules/block/tests/block_test.info +++ b/modules/block/tests/block_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/block/tests/themes/block_test_theme/block_test_theme.info b/modules/block/tests/themes/block_test_theme/block_test_theme.info index 18a70cf8..8e6826cb 100755 --- a/modules/block/tests/themes/block_test_theme/block_test_theme.info +++ b/modules/block/tests/themes/block_test_theme/block_test_theme.info @@ -13,8 +13,8 @@ regions[footer] = Footer regions[highlighted] = Highlighted regions[help] = Help -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/blog/blog.info b/modules/blog/blog.info index e4d07444..a3989510 100755 --- a/modules/blog/blog.info +++ b/modules/blog/blog.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x files[] = blog.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/book/book.info b/modules/book/book.info index 68eb2f86..9575ff64 100755 --- a/modules/book/book.info +++ b/modules/book/book.info @@ -7,8 +7,8 @@ files[] = book.test configure = admin/content/book/settings stylesheets[all][] = book.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/color/color.info b/modules/color/color.info index 1bc59cbf..3ecf3752 100755 --- a/modules/color/color.info +++ b/modules/color/color.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x files[] = color.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/comment/comment.info b/modules/comment/comment.info index 367d1e0e..749da0d0 100755 --- a/modules/comment/comment.info +++ b/modules/comment/comment.info @@ -9,8 +9,8 @@ files[] = comment.test configure = admin/content/comment stylesheets[all][] = comment.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/contact/contact.info b/modules/contact/contact.info index 3dbb788d..6279557a 100755 --- a/modules/contact/contact.info +++ b/modules/contact/contact.info @@ -6,8 +6,8 @@ core = 7.x files[] = contact.test configure = admin/structure/contact -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/contextual/contextual.info b/modules/contextual/contextual.info index a6d3e2df..3a670c0c 100755 --- a/modules/contextual/contextual.info +++ b/modules/contextual/contextual.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x files[] = contextual.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/dashboard/dashboard.info b/modules/dashboard/dashboard.info index e71792f4..ceb38247 100755 --- a/modules/dashboard/dashboard.info +++ b/modules/dashboard/dashboard.info @@ -7,8 +7,8 @@ files[] = dashboard.test dependencies[] = block configure = admin/dashboard/customize -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/dblog/dblog.info b/modules/dblog/dblog.info index 724ca724..e9edca59 100755 --- a/modules/dblog/dblog.info +++ b/modules/dblog/dblog.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x files[] = dblog.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/field/field.info b/modules/field/field.info index d318cf13..2157d242 100755 --- a/modules/field/field.info +++ b/modules/field/field.info @@ -11,8 +11,8 @@ dependencies[] = field_sql_storage required = TRUE stylesheets[all][] = theme/field.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/field/modules/field_sql_storage/field_sql_storage.info b/modules/field/modules/field_sql_storage/field_sql_storage.info index f5e5f965..13bf2640 100755 --- a/modules/field/modules/field_sql_storage/field_sql_storage.info +++ b/modules/field/modules/field_sql_storage/field_sql_storage.info @@ -7,8 +7,8 @@ dependencies[] = field files[] = field_sql_storage.test required = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/field/modules/list/list.info b/modules/field/modules/list/list.info index 9c406945..658433a4 100755 --- a/modules/field/modules/list/list.info +++ b/modules/field/modules/list/list.info @@ -7,8 +7,8 @@ dependencies[] = field dependencies[] = options files[] = tests/list.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/field/modules/list/tests/list_test.info b/modules/field/modules/list/tests/list_test.info index 58ad667c..a15b62b1 100755 --- a/modules/field/modules/list/tests/list_test.info +++ b/modules/field/modules/list/tests/list_test.info @@ -5,8 +5,8 @@ package = Testing version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/field/modules/number/number.info b/modules/field/modules/number/number.info index 3da7cc80..104e32a2 100755 --- a/modules/field/modules/number/number.info +++ b/modules/field/modules/number/number.info @@ -6,8 +6,8 @@ core = 7.x dependencies[] = field files[] = number.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/field/modules/options/options.info b/modules/field/modules/options/options.info index 289d4d3a..d3198a3a 100755 --- a/modules/field/modules/options/options.info +++ b/modules/field/modules/options/options.info @@ -6,8 +6,8 @@ core = 7.x dependencies[] = field files[] = options.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/field/modules/text/text.info b/modules/field/modules/text/text.info index 5bd22029..54cc28d6 100755 --- a/modules/field/modules/text/text.info +++ b/modules/field/modules/text/text.info @@ -7,8 +7,8 @@ dependencies[] = field files[] = text.test required = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/field/tests/field_test.info b/modules/field/tests/field_test.info index 4a22cda6..7c0e5b7d 100755 --- a/modules/field/tests/field_test.info +++ b/modules/field/tests/field_test.info @@ -6,8 +6,8 @@ files[] = field_test.entity.inc version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/field_ui/field_ui.info b/modules/field_ui/field_ui.info index 91b250cc..5df082c9 100755 --- a/modules/field_ui/field_ui.info +++ b/modules/field_ui/field_ui.info @@ -6,8 +6,8 @@ core = 7.x dependencies[] = field files[] = field_ui.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/file/file.info b/modules/file/file.info index 2e5b7a2f..4bf08121 100755 --- a/modules/file/file.info +++ b/modules/file/file.info @@ -6,8 +6,8 @@ core = 7.x dependencies[] = field files[] = tests/file.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/file/tests/file_module_test.info b/modules/file/tests/file_module_test.info index cdb1561d..a6ad129a 100755 --- a/modules/file/tests/file_module_test.info +++ b/modules/file/tests/file_module_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/filter/filter.info b/modules/filter/filter.info index 6b69921a..a513f5fc 100755 --- a/modules/filter/filter.info +++ b/modules/filter/filter.info @@ -7,8 +7,8 @@ files[] = filter.test required = TRUE configure = admin/config/content/formats -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/forum/forum.info b/modules/forum/forum.info index 39250e44..74cc2d03 100755 --- a/modules/forum/forum.info +++ b/modules/forum/forum.info @@ -9,8 +9,8 @@ files[] = forum.test configure = admin/structure/forum stylesheets[all][] = forum.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/help/help.info b/modules/help/help.info index 3b481221..062b30e6 100755 --- a/modules/help/help.info +++ b/modules/help/help.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x files[] = help.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/image/image.info b/modules/image/image.info index 0b14b66a..47fb5a5a 100755 --- a/modules/image/image.info +++ b/modules/image/image.info @@ -7,8 +7,8 @@ dependencies[] = file files[] = image.test configure = admin/config/media/image-styles -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/image/tests/image_module_test.info b/modules/image/tests/image_module_test.info index d2131dd2..f9f3f484 100755 --- a/modules/image/tests/image_module_test.info +++ b/modules/image/tests/image_module_test.info @@ -6,8 +6,8 @@ core = 7.x files[] = image_module_test.module hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/locale/locale.info b/modules/locale/locale.info index 6e057948..520d4ecd 100755 --- a/modules/locale/locale.info +++ b/modules/locale/locale.info @@ -6,8 +6,8 @@ core = 7.x files[] = locale.test configure = admin/config/regional/language -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/locale/tests/locale_test.info b/modules/locale/tests/locale_test.info index 5ea5dbc4..b51de9f3 100755 --- a/modules/locale/tests/locale_test.info +++ b/modules/locale/tests/locale_test.info @@ -5,8 +5,8 @@ package = Testing version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/menu/menu.info b/modules/menu/menu.info index 2c4681ce..9c6a8d19 100755 --- a/modules/menu/menu.info +++ b/modules/menu/menu.info @@ -6,8 +6,8 @@ core = 7.x files[] = menu.test configure = admin/structure/menu -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/node/node.info b/modules/node/node.info index 63a0c4be..a8c61fb3 100755 --- a/modules/node/node.info +++ b/modules/node/node.info @@ -9,8 +9,8 @@ required = TRUE configure = admin/structure/types stylesheets[all][] = node.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/node/tests/node_access_test.info b/modules/node/tests/node_access_test.info index 7354c045..7ba4455b 100755 --- a/modules/node/tests/node_access_test.info +++ b/modules/node/tests/node_access_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/node/tests/node_test.info b/modules/node/tests/node_test.info index afc1a9e2..67de1b36 100755 --- a/modules/node/tests/node_test.info +++ b/modules/node/tests/node_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/node/tests/node_test_exception.info b/modules/node/tests/node_test_exception.info index 7d0eb601..387ccde2 100755 --- a/modules/node/tests/node_test_exception.info +++ b/modules/node/tests/node_test_exception.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/openid/openid.info b/modules/openid/openid.info index cc25d814..f1d0a5a5 100755 --- a/modules/openid/openid.info +++ b/modules/openid/openid.info @@ -5,8 +5,8 @@ package = Core core = 7.x files[] = openid.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/openid/tests/openid_test.info b/modules/openid/tests/openid_test.info index 922fdcc5..48520267 100755 --- a/modules/openid/tests/openid_test.info +++ b/modules/openid/tests/openid_test.info @@ -6,8 +6,8 @@ core = 7.x dependencies[] = openid hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/overlay/overlay.info b/modules/overlay/overlay.info index 63ca90f1..dd1f3f4b 100755 --- a/modules/overlay/overlay.info +++ b/modules/overlay/overlay.info @@ -4,8 +4,8 @@ package = Core version = VERSION core = 7.x -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/path/path.info b/modules/path/path.info index 9f4503b4..f17fdaf1 100755 --- a/modules/path/path.info +++ b/modules/path/path.info @@ -6,8 +6,8 @@ core = 7.x files[] = path.test configure = admin/config/search/path -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/php/php.info b/modules/php/php.info index a977a9a6..0247be60 100755 --- a/modules/php/php.info +++ b/modules/php/php.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x files[] = php.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/poll/poll.info b/modules/poll/poll.info index 67158a14..c4734261 100755 --- a/modules/poll/poll.info +++ b/modules/poll/poll.info @@ -6,8 +6,8 @@ core = 7.x files[] = poll.test stylesheets[all][] = poll.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/profile/profile.info b/modules/profile/profile.info index 61f6f4d0..dfa174c5 100755 --- a/modules/profile/profile.info +++ b/modules/profile/profile.info @@ -11,8 +11,8 @@ configure = admin/config/people/profile ; See user_system_info_alter(). hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/rdf/rdf.info b/modules/rdf/rdf.info index b0d4a645..44f04bd0 100755 --- a/modules/rdf/rdf.info +++ b/modules/rdf/rdf.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x files[] = rdf.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/rdf/tests/rdf_test.info b/modules/rdf/tests/rdf_test.info index 898fdf59..8195c999 100755 --- a/modules/rdf/tests/rdf_test.info +++ b/modules/rdf/tests/rdf_test.info @@ -6,8 +6,8 @@ core = 7.x hidden = TRUE dependencies[] = blog -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/search/search.info b/modules/search/search.info index 389d2847..a092ea9e 100755 --- a/modules/search/search.info +++ b/modules/search/search.info @@ -8,8 +8,8 @@ files[] = search.test configure = admin/config/search/settings stylesheets[all][] = search.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/search/tests/search_embedded_form.info b/modules/search/tests/search_embedded_form.info index b9c5c22b..6423cef5 100755 --- a/modules/search/tests/search_embedded_form.info +++ b/modules/search/tests/search_embedded_form.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/search/tests/search_extra_type.info b/modules/search/tests/search_extra_type.info index b409794d..0ae00a58 100755 --- a/modules/search/tests/search_extra_type.info +++ b/modules/search/tests/search_extra_type.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/search/tests/search_node_tags.info b/modules/search/tests/search_node_tags.info index 687269ae..b2cc66ab 100644 --- a/modules/search/tests/search_node_tags.info +++ b/modules/search/tests/search_node_tags.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/shortcut/shortcut.info b/modules/shortcut/shortcut.info index c5a7b28e..c12f11e4 100755 --- a/modules/shortcut/shortcut.info +++ b/modules/shortcut/shortcut.info @@ -6,8 +6,8 @@ core = 7.x files[] = shortcut.test configure = admin/config/user-interface/shortcut -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/simpletest.info b/modules/simpletest/simpletest.info index 188d9ef3..d613ff2d 100755 --- a/modules/simpletest/simpletest.info +++ b/modules/simpletest/simpletest.info @@ -57,8 +57,8 @@ files[] = tests/upgrade/update.trigger.test files[] = tests/upgrade/update.field.test files[] = tests/upgrade/update.user.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/actions_loop_test.info b/modules/simpletest/tests/actions_loop_test.info index 977bbe07..71cd14f3 100755 --- a/modules/simpletest/tests/actions_loop_test.info +++ b/modules/simpletest/tests/actions_loop_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/ajax_forms_test.info b/modules/simpletest/tests/ajax_forms_test.info index 824c2666..c9d9cb6d 100755 --- a/modules/simpletest/tests/ajax_forms_test.info +++ b/modules/simpletest/tests/ajax_forms_test.info @@ -5,8 +5,8 @@ package = Testing version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/ajax_test.info b/modules/simpletest/tests/ajax_test.info index 8d3dae7f..f572a005 100755 --- a/modules/simpletest/tests/ajax_test.info +++ b/modules/simpletest/tests/ajax_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/batch_test.info b/modules/simpletest/tests/batch_test.info index 07c8bd47..dc2aae56 100755 --- a/modules/simpletest/tests/batch_test.info +++ b/modules/simpletest/tests/batch_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/boot_test_1.info b/modules/simpletest/tests/boot_test_1.info index 474c4c45..85a5ea65 100644 --- a/modules/simpletest/tests/boot_test_1.info +++ b/modules/simpletest/tests/boot_test_1.info @@ -5,8 +5,8 @@ package = Testing version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/boot_test_2.info b/modules/simpletest/tests/boot_test_2.info index ded72c56..0bc815c7 100644 --- a/modules/simpletest/tests/boot_test_2.info +++ b/modules/simpletest/tests/boot_test_2.info @@ -5,8 +5,8 @@ package = Testing version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/common_test.info b/modules/simpletest/tests/common_test.info index c324d8a7..7d466800 100755 --- a/modules/simpletest/tests/common_test.info +++ b/modules/simpletest/tests/common_test.info @@ -7,8 +7,8 @@ stylesheets[all][] = common_test.css stylesheets[print][] = common_test.print.css hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/common_test_cron_helper.info b/modules/simpletest/tests/common_test_cron_helper.info index 619b87e2..55dbd67a 100755 --- a/modules/simpletest/tests/common_test_cron_helper.info +++ b/modules/simpletest/tests/common_test_cron_helper.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/database_test.info b/modules/simpletest/tests/database_test.info index 34571d0c..0e31a226 100755 --- a/modules/simpletest/tests/database_test.info +++ b/modules/simpletest/tests/database_test.info @@ -5,8 +5,8 @@ package = Testing version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/drupal_autoload_test/drupal_autoload_test.info b/modules/simpletest/tests/drupal_autoload_test/drupal_autoload_test.info index 910d27a7..18044661 100644 --- a/modules/simpletest/tests/drupal_autoload_test/drupal_autoload_test.info +++ b/modules/simpletest/tests/drupal_autoload_test/drupal_autoload_test.info @@ -7,8 +7,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info b/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info index 3276127c..2b8c34c6 100755 --- a/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info +++ b/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info b/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info index e3603834..ce9e1918 100755 --- a/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info +++ b/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/entity_cache_test.info b/modules/simpletest/tests/entity_cache_test.info index b7dc76bb..eb38854e 100755 --- a/modules/simpletest/tests/entity_cache_test.info +++ b/modules/simpletest/tests/entity_cache_test.info @@ -6,8 +6,8 @@ core = 7.x dependencies[] = entity_cache_test_dependency hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/entity_cache_test_dependency.info b/modules/simpletest/tests/entity_cache_test_dependency.info index b26436e6..0c433546 100755 --- a/modules/simpletest/tests/entity_cache_test_dependency.info +++ b/modules/simpletest/tests/entity_cache_test_dependency.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/entity_crud_hook_test.info b/modules/simpletest/tests/entity_crud_hook_test.info index 0b0f44b7..bb99125c 100755 --- a/modules/simpletest/tests/entity_crud_hook_test.info +++ b/modules/simpletest/tests/entity_crud_hook_test.info @@ -5,8 +5,8 @@ package = Testing version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/entity_query_access_test.info b/modules/simpletest/tests/entity_query_access_test.info index 7ac6759e..7ab70ddc 100755 --- a/modules/simpletest/tests/entity_query_access_test.info +++ b/modules/simpletest/tests/entity_query_access_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/error_test.info b/modules/simpletest/tests/error_test.info index a771b6fd..d01fea3f 100755 --- a/modules/simpletest/tests/error_test.info +++ b/modules/simpletest/tests/error_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/file_test.info b/modules/simpletest/tests/file_test.info index 605af1d8..6f8d7529 100755 --- a/modules/simpletest/tests/file_test.info +++ b/modules/simpletest/tests/file_test.info @@ -6,8 +6,8 @@ core = 7.x files[] = file_test.module hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/filter_test.info b/modules/simpletest/tests/filter_test.info index 9e0a5989..315b0472 100755 --- a/modules/simpletest/tests/filter_test.info +++ b/modules/simpletest/tests/filter_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/form_test.info b/modules/simpletest/tests/form_test.info index 75ee2ea1..c2b36e78 100755 --- a/modules/simpletest/tests/form_test.info +++ b/modules/simpletest/tests/form_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/image_test.info b/modules/simpletest/tests/image_test.info index 4f291886..a6efccb6 100755 --- a/modules/simpletest/tests/image_test.info +++ b/modules/simpletest/tests/image_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/menu_test.info b/modules/simpletest/tests/menu_test.info index 68a1386b..92e04302 100755 --- a/modules/simpletest/tests/menu_test.info +++ b/modules/simpletest/tests/menu_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/module_test.info b/modules/simpletest/tests/module_test.info index 6cd6c3d5..d8eeddfb 100755 --- a/modules/simpletest/tests/module_test.info +++ b/modules/simpletest/tests/module_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/path_test.info b/modules/simpletest/tests/path_test.info index b2acd4f3..c2f07a0d 100755 --- a/modules/simpletest/tests/path_test.info +++ b/modules/simpletest/tests/path_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/psr_0_test/psr_0_test.info b/modules/simpletest/tests/psr_0_test/psr_0_test.info index b07bc7dd..3f0ce970 100755 --- a/modules/simpletest/tests/psr_0_test/psr_0_test.info +++ b/modules/simpletest/tests/psr_0_test/psr_0_test.info @@ -5,8 +5,8 @@ core = 7.x hidden = TRUE package = Testing -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/psr_4_test/psr_4_test.info b/modules/simpletest/tests/psr_4_test/psr_4_test.info index b7324bee..53abc66f 100644 --- a/modules/simpletest/tests/psr_4_test/psr_4_test.info +++ b/modules/simpletest/tests/psr_4_test/psr_4_test.info @@ -5,8 +5,8 @@ core = 7.x hidden = TRUE package = Testing -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/requirements1_test.info b/modules/simpletest/tests/requirements1_test.info index b6f775aa..6a3a6f8e 100755 --- a/modules/simpletest/tests/requirements1_test.info +++ b/modules/simpletest/tests/requirements1_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/requirements2_test.info b/modules/simpletest/tests/requirements2_test.info index c4fa4da4..b9738f95 100755 --- a/modules/simpletest/tests/requirements2_test.info +++ b/modules/simpletest/tests/requirements2_test.info @@ -7,8 +7,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/session_test.info b/modules/simpletest/tests/session_test.info index da76cac2..20b846cf 100755 --- a/modules/simpletest/tests/session_test.info +++ b/modules/simpletest/tests/session_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/system_dependencies_test.info b/modules/simpletest/tests/system_dependencies_test.info index e5fa625d..1e74f9de 100755 --- a/modules/simpletest/tests/system_dependencies_test.info +++ b/modules/simpletest/tests/system_dependencies_test.info @@ -6,8 +6,8 @@ core = 7.x hidden = TRUE dependencies[] = _missing_dependency -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/system_incompatible_core_version_dependencies_test.info b/modules/simpletest/tests/system_incompatible_core_version_dependencies_test.info index 4c0fd9ed..d918475f 100755 --- a/modules/simpletest/tests/system_incompatible_core_version_dependencies_test.info +++ b/modules/simpletest/tests/system_incompatible_core_version_dependencies_test.info @@ -6,8 +6,8 @@ core = 7.x hidden = TRUE dependencies[] = system_incompatible_core_version_test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/system_incompatible_core_version_test.info b/modules/simpletest/tests/system_incompatible_core_version_test.info index 01d0bdaf..1a8adc4a 100755 --- a/modules/simpletest/tests/system_incompatible_core_version_test.info +++ b/modules/simpletest/tests/system_incompatible_core_version_test.info @@ -5,8 +5,8 @@ version = VERSION core = 5.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/system_incompatible_module_version_dependencies_test.info b/modules/simpletest/tests/system_incompatible_module_version_dependencies_test.info index d453ed14..b081db4e 100755 --- a/modules/simpletest/tests/system_incompatible_module_version_dependencies_test.info +++ b/modules/simpletest/tests/system_incompatible_module_version_dependencies_test.info @@ -7,8 +7,8 @@ hidden = TRUE ; system_incompatible_module_version_test declares version 1.0 dependencies[] = system_incompatible_module_version_test (>2.0) -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/system_incompatible_module_version_test.info b/modules/simpletest/tests/system_incompatible_module_version_test.info index 9e59bc81..80440861 100755 --- a/modules/simpletest/tests/system_incompatible_module_version_test.info +++ b/modules/simpletest/tests/system_incompatible_module_version_test.info @@ -5,8 +5,8 @@ version = 1.0 core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/system_project_namespace_test.info b/modules/simpletest/tests/system_project_namespace_test.info index 3a51de4e..d248a099 100644 --- a/modules/simpletest/tests/system_project_namespace_test.info +++ b/modules/simpletest/tests/system_project_namespace_test.info @@ -6,8 +6,8 @@ core = 7.x hidden = TRUE dependencies[] = drupal:filter -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/system_test.info b/modules/simpletest/tests/system_test.info index 7ea5e273..f99edb18 100755 --- a/modules/simpletest/tests/system_test.info +++ b/modules/simpletest/tests/system_test.info @@ -6,8 +6,8 @@ core = 7.x files[] = system_test.module hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/taxonomy_test.info b/modules/simpletest/tests/taxonomy_test.info index d5e12357..1dffb58c 100755 --- a/modules/simpletest/tests/taxonomy_test.info +++ b/modules/simpletest/tests/taxonomy_test.info @@ -6,8 +6,8 @@ core = 7.x hidden = TRUE dependencies[] = taxonomy -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/taxonomy_test.module b/modules/simpletest/tests/taxonomy_test.module index f82950c3..f4144380 100755 --- a/modules/simpletest/tests/taxonomy_test.module +++ b/modules/simpletest/tests/taxonomy_test.module @@ -109,3 +109,33 @@ function taxonomy_test_get_antonym($tid) { ->execute() ->fetchField(); } + +/** + * Implements hook_query_alter(). + */ +function taxonomy_test_query_alter(QueryAlterableInterface $query) { + $value = variable_get(__FUNCTION__); + if (isset($value)) { + variable_set(__FUNCTION__, ++$value); + } +} + +/** + * Implements hook_query_TAG_alter(). + */ +function taxonomy_test_query_term_access_alter(QueryAlterableInterface $query) { + $value = variable_get(__FUNCTION__); + if (isset($value)) { + variable_set(__FUNCTION__, ++$value); + } +} + +/** + * Implements hook_query_TAG_alter(). + */ +function taxonomy_test_query_taxonomy_term_access_alter(QueryAlterableInterface $query) { + $value = variable_get(__FUNCTION__); + if (isset($value)) { + variable_set(__FUNCTION__, ++$value); + } +} diff --git a/modules/simpletest/tests/theme_test.info b/modules/simpletest/tests/theme_test.info index 57fc7f4a..ab7d0b70 100755 --- a/modules/simpletest/tests/theme_test.info +++ b/modules/simpletest/tests/theme_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/themes/test_basetheme/test_basetheme.info b/modules/simpletest/tests/themes/test_basetheme/test_basetheme.info index e473e69c..ea39d8e9 100755 --- a/modules/simpletest/tests/themes/test_basetheme/test_basetheme.info +++ b/modules/simpletest/tests/themes/test_basetheme/test_basetheme.info @@ -6,8 +6,8 @@ hidden = TRUE settings[basetheme_only] = base theme value settings[subtheme_override] = base theme value -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/themes/test_subtheme/test_subtheme.info b/modules/simpletest/tests/themes/test_subtheme/test_subtheme.info index 2527b611..60bb4e5c 100755 --- a/modules/simpletest/tests/themes/test_subtheme/test_subtheme.info +++ b/modules/simpletest/tests/themes/test_subtheme/test_subtheme.info @@ -6,8 +6,8 @@ hidden = TRUE settings[subtheme_override] = subtheme value -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/themes/test_theme/test_theme.info b/modules/simpletest/tests/themes/test_theme/test_theme.info index b11f6c14..0370bc6a 100755 --- a/modules/simpletest/tests/themes/test_theme/test_theme.info +++ b/modules/simpletest/tests/themes/test_theme/test_theme.info @@ -17,8 +17,8 @@ stylesheets[all][] = system.base.css settings[theme_test_setting] = default value -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/update_script_test.info b/modules/simpletest/tests/update_script_test.info index f0ada887..af18d119 100755 --- a/modules/simpletest/tests/update_script_test.info +++ b/modules/simpletest/tests/update_script_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/update_test_1.info b/modules/simpletest/tests/update_test_1.info index 79b2a83b..b64ad361 100755 --- a/modules/simpletest/tests/update_test_1.info +++ b/modules/simpletest/tests/update_test_1.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/update_test_2.info b/modules/simpletest/tests/update_test_2.info index 79b2a83b..b64ad361 100755 --- a/modules/simpletest/tests/update_test_2.info +++ b/modules/simpletest/tests/update_test_2.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/update_test_3.info b/modules/simpletest/tests/update_test_3.info index 79b2a83b..b64ad361 100755 --- a/modules/simpletest/tests/update_test_3.info +++ b/modules/simpletest/tests/update_test_3.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/url_alter_test.info b/modules/simpletest/tests/url_alter_test.info index 4a6d2156..f7924d30 100755 --- a/modules/simpletest/tests/url_alter_test.info +++ b/modules/simpletest/tests/url_alter_test.info @@ -5,8 +5,8 @@ package = Testing version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/simpletest/tests/xmlrpc_test.info b/modules/simpletest/tests/xmlrpc_test.info index 28f96bb0..cbc93637 100755 --- a/modules/simpletest/tests/xmlrpc_test.info +++ b/modules/simpletest/tests/xmlrpc_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/statistics/statistics.info b/modules/statistics/statistics.info index bcabcf03..03d8a30f 100755 --- a/modules/statistics/statistics.info +++ b/modules/statistics/statistics.info @@ -6,8 +6,8 @@ core = 7.x files[] = statistics.test configure = admin/config/system/statistics -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/syslog/syslog.info b/modules/syslog/syslog.info index 91bd74f2..00ad4ff7 100755 --- a/modules/syslog/syslog.info +++ b/modules/syslog/syslog.info @@ -6,8 +6,8 @@ core = 7.x files[] = syslog.test configure = admin/config/development/logging -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/system/system.info b/modules/system/system.info index d637f1c5..5aa40c95 100755 --- a/modules/system/system.info +++ b/modules/system/system.info @@ -12,8 +12,8 @@ files[] = system.test required = TRUE configure = admin/config/system -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/system/system.module b/modules/system/system.module index 59087c88..ae7c4323 100755 --- a/modules/system/system.module +++ b/modules/system/system.module @@ -2883,7 +2883,7 @@ function confirm_form($form, $question, $path, $description = NULL, $yes = NULL, // Prepare cancel link. if (isset($_GET['destination'])) { - $options = drupal_parse_url(urldecode($_GET['destination'])); + $options = drupal_parse_url($_GET['destination']); } elseif (is_array($path)) { $options = $path; diff --git a/modules/system/tests/cron_queue_test.info b/modules/system/tests/cron_queue_test.info index 03b32241..13fefda3 100644 --- a/modules/system/tests/cron_queue_test.info +++ b/modules/system/tests/cron_queue_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/system/tests/system_cron_test.info b/modules/system/tests/system_cron_test.info index 4f7a2da2..ed37d109 100644 --- a/modules/system/tests/system_cron_test.info +++ b/modules/system/tests/system_cron_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/taxonomy/taxonomy.info b/modules/taxonomy/taxonomy.info index 9bbba161..bd613c4b 100755 --- a/modules/taxonomy/taxonomy.info +++ b/modules/taxonomy/taxonomy.info @@ -8,8 +8,8 @@ files[] = taxonomy.module files[] = taxonomy.test configure = admin/structure/taxonomy -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/taxonomy/taxonomy.module b/modules/taxonomy/taxonomy.module index 554d6d2a..981649d2 100755 --- a/modules/taxonomy/taxonomy.module +++ b/modules/taxonomy/taxonomy.module @@ -1023,7 +1023,7 @@ function taxonomy_get_parents($tid) { $query->join('taxonomy_term_hierarchy', 'h', 'h.parent = t.tid'); $query->addField('t', 'tid'); $query->condition('h.tid', $tid); - $query->addTag('term_access'); + $query->addTag('taxonomy_term_access'); $query->orderBy('t.weight'); $query->orderBy('t.name'); $tids = $query->execute()->fetchCol(); @@ -1081,7 +1081,7 @@ function taxonomy_get_children($tid, $vid = 0) { if ($vid) { $query->condition('t.vid', $vid); } - $query->addTag('term_access'); + $query->addTag('taxonomy_term_access'); $query->orderBy('t.weight'); $query->orderBy('t.name'); $tids = $query->execute()->fetchCol(); @@ -1129,7 +1129,7 @@ function taxonomy_get_tree($vid, $parent = 0, $max_depth = NULL, $load_entities $query->join('taxonomy_term_hierarchy', 'h', 'h.tid = t.tid'); $result = $query ->addTag('translatable') - ->addTag('term_access') + ->addTag('taxonomy_term_access') ->fields('t') ->fields('h', array('parent')) ->condition('t.vid', $vid) @@ -1249,7 +1249,7 @@ class TaxonomyTermController extends DrupalDefaultEntityController { protected function buildQuery($ids, $conditions = array(), $revision_id = FALSE) { $query = parent::buildQuery($ids, $conditions, $revision_id); $query->addTag('translatable'); - $query->addTag('term_access'); + $query->addTag('taxonomy_term_access'); // When name is passed as a condition use LIKE. if (isset($conditions['name'])) { $query_conditions = &$query->conditions(); diff --git a/modules/taxonomy/taxonomy.pages.inc b/modules/taxonomy/taxonomy.pages.inc index 975ff120..38b24b3b 100755 --- a/modules/taxonomy/taxonomy.pages.inc +++ b/modules/taxonomy/taxonomy.pages.inc @@ -150,7 +150,7 @@ function taxonomy_autocomplete($field_name = '', $tags_typed = '') { $query = db_select('taxonomy_term_data', 't'); $query->addTag('translatable'); - $query->addTag('term_access'); + $query->addTag('taxonomy_term_access'); // Do not select already entered terms. if (!empty($tags_typed)) { diff --git a/modules/taxonomy/taxonomy.test b/modules/taxonomy/taxonomy.test index e9dac1ec..a4b7ee83 100755 --- a/modules/taxonomy/taxonomy.test +++ b/modules/taxonomy/taxonomy.test @@ -1983,3 +1983,113 @@ class TaxonomyEFQTestCase extends TaxonomyWebTestCase { } } + +/** + * Tests that appropriate query tags are added. + */ +class TaxonomyQueryAlterTestCase extends TaxonomyWebTestCase { + public static function getInfo() { + return array( + 'name' => 'Taxonomy query tags', + 'description' => 'Verifies that taxonomy_term_access tags are added to queries.', + 'group' => 'Taxonomy', + ); + } + + public function setUp() { + parent::setUp('taxonomy_test'); + } + + /** + * Tests that appropriate tags are added when querying the database. + */ + public function testTaxonomyQueryAlter() { + // Create a new vocabulary and add a few terms to it. + $vocabulary = $this->createVocabulary(); + $terms = array(); + for ($i = 0; $i < 5; $i++) { + $terms[$i] = $this->createTerm($vocabulary); + } + + // Set up hierarchy. Term 2 is a child of 1. + $terms[2]->parent = array($terms[1]->tid); + taxonomy_term_save($terms[2]); + + $this->setupQueryTagTestHooks(); + $loaded_term = taxonomy_term_load($terms[0]->tid); + $this->assertEqual($loaded_term->tid, $terms[0]->tid, 'First term was loaded'); + $this->assertQueryTagTestResult(1, 'taxonomy_term_load()'); + + $this->setupQueryTagTestHooks(); + $loaded_terms = taxonomy_get_tree($vocabulary->vid); + $this->assertEqual(count($loaded_terms), count($terms), 'All terms were loaded'); + $this->assertQueryTagTestResult(1, 'taxonomy_get_tree()'); + + $this->setupQueryTagTestHooks(); + $loaded_terms = taxonomy_get_parents($terms[2]->tid); + $this->assertEqual(count($loaded_terms), 1, 'All parent terms were loaded'); + $this->assertQueryTagTestResult(2, 'taxonomy_get_parents()'); + + $this->setupQueryTagTestHooks(); + $loaded_terms = taxonomy_get_children($terms[1]->tid); + $this->assertEqual(count($loaded_terms), 1, 'All child terms were loaded'); + $this->assertQueryTagTestResult(2, 'taxonomy_get_children()'); + + $this->setupQueryTagTestHooks(); + $query = db_select('taxonomy_term_data', 't'); + $query->addField('t', 'tid'); + $query->addTag('taxonomy_term_access'); + $tids = $query->execute()->fetchCol(); + $this->assertEqual(count($tids), count($terms), 'All term IDs were retrieved'); + $this->assertQueryTagTestResult(1, 'custom db_select() with taxonomy_term_access tag (preferred)'); + + $this->setupQueryTagTestHooks(); + $query = db_select('taxonomy_term_data', 't'); + $query->addField('t', 'tid'); + $query->addTag('term_access'); + $tids = $query->execute()->fetchCol(); + $this->assertEqual(count($tids), count($terms), 'All term IDs were retrieved'); + $this->assertQueryTagTestResult(1, 'custom db_select() with term_access tag (deprecated)'); + + $this->setupQueryTagTestHooks(); + $query = new EntityFieldQuery(); + $query->entityCondition('entity_type', 'taxonomy_term'); + $query->addTag('taxonomy_term_access'); + $result = $query->execute(); + $this->assertEqual(count($result['taxonomy_term']), count($terms), 'All term IDs were retrieved'); + $this->assertQueryTagTestResult(1, 'custom EntityFieldQuery with taxonomy_term_access tag (preferred)'); + + $this->setupQueryTagTestHooks(); + $query = new EntityFieldQuery(); + $query->entityCondition('entity_type', 'taxonomy_term'); + $query->addTag('term_access'); + $result = $query->execute(); + $this->assertEqual(count($result['taxonomy_term']), count($terms), 'All term IDs were retrieved'); + $this->assertQueryTagTestResult(1, 'custom EntityFieldQuery with term_access tag (deprecated)'); + } + + /** + * Sets up the hooks in the test module. + */ + protected function setupQueryTagTestHooks() { + taxonomy_terms_static_reset(); + variable_set('taxonomy_test_query_alter', 0); + variable_set('taxonomy_test_query_term_access_alter', 0); + variable_set('taxonomy_test_query_taxonomy_term_access_alter', 0); + } + + /** + * Verifies invocation of the hooks in the test module. + * + * @param int $expected_invocations + * The number of times the hooks are expected to have been invoked. + * @param string $method + * A string describing the invoked function which generated the query. + */ + protected function assertQueryTagTestResult($expected_invocations, $method) { + $this->assertIdentical($expected_invocations, variable_get('taxonomy_test_query_alter'), 'hook_query_alter() invoked when executing ' . $method); + $this->assertIdentical($expected_invocations, variable_get('taxonomy_test_query_term_access_alter'), 'Deprecated hook_query_term_access_alter() invoked when executing ' . $method); + $this->assertIdentical($expected_invocations, variable_get('taxonomy_test_query_taxonomy_term_access_alter'), 'Preferred hook_query_taxonomy_term_access_alter() invoked when executing ' . $method); + } + +} diff --git a/modules/toolbar/toolbar.info b/modules/toolbar/toolbar.info index 3ce4e98e..3b0675fa 100755 --- a/modules/toolbar/toolbar.info +++ b/modules/toolbar/toolbar.info @@ -4,8 +4,8 @@ core = 7.x package = Core version = VERSION -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/tracker/tracker.info b/modules/tracker/tracker.info index eca56149..2b643cda 100755 --- a/modules/tracker/tracker.info +++ b/modules/tracker/tracker.info @@ -6,8 +6,8 @@ version = VERSION core = 7.x files[] = tracker.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/translation/tests/translation_test.info b/modules/translation/tests/translation_test.info index 0f2de51d..1976f1c1 100755 --- a/modules/translation/tests/translation_test.info +++ b/modules/translation/tests/translation_test.info @@ -5,8 +5,8 @@ package = Testing version = VERSION hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/translation/translation.info b/modules/translation/translation.info index 3f36bfc8..6b3a2f17 100755 --- a/modules/translation/translation.info +++ b/modules/translation/translation.info @@ -6,8 +6,8 @@ version = VERSION core = 7.x files[] = translation.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/trigger/tests/trigger_test.info b/modules/trigger/tests/trigger_test.info index 68ade94a..8ee06149 100755 --- a/modules/trigger/tests/trigger_test.info +++ b/modules/trigger/tests/trigger_test.info @@ -4,8 +4,8 @@ package = Testing core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/trigger/trigger.info b/modules/trigger/trigger.info index 72be9cc6..517536de 100755 --- a/modules/trigger/trigger.info +++ b/modules/trigger/trigger.info @@ -6,8 +6,8 @@ core = 7.x files[] = trigger.test configure = admin/structure/trigger -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/update/tests/aaa_update_test.info b/modules/update/tests/aaa_update_test.info index 2f14b29d..9c69bde6 100755 --- a/modules/update/tests/aaa_update_test.info +++ b/modules/update/tests/aaa_update_test.info @@ -4,8 +4,8 @@ package = Testing core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/update/tests/bbb_update_test.info b/modules/update/tests/bbb_update_test.info index 900d0689..7327e7f0 100755 --- a/modules/update/tests/bbb_update_test.info +++ b/modules/update/tests/bbb_update_test.info @@ -4,8 +4,8 @@ package = Testing core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/update/tests/ccc_update_test.info b/modules/update/tests/ccc_update_test.info index 51dc859e..3a876fc3 100755 --- a/modules/update/tests/ccc_update_test.info +++ b/modules/update/tests/ccc_update_test.info @@ -4,8 +4,8 @@ package = Testing core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/update/tests/themes/update_test_admintheme/update_test_admintheme.info b/modules/update/tests/themes/update_test_admintheme/update_test_admintheme.info index cc3e3c5e..00c1dd6b 100644 --- a/modules/update/tests/themes/update_test_admintheme/update_test_admintheme.info +++ b/modules/update/tests/themes/update_test_admintheme/update_test_admintheme.info @@ -3,8 +3,8 @@ description = Test theme which is used as admin theme. core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/update/tests/themes/update_test_basetheme/update_test_basetheme.info b/modules/update/tests/themes/update_test_basetheme/update_test_basetheme.info index e8f2bfd5..6a858fd9 100755 --- a/modules/update/tests/themes/update_test_basetheme/update_test_basetheme.info +++ b/modules/update/tests/themes/update_test_basetheme/update_test_basetheme.info @@ -3,8 +3,8 @@ description = Test theme which acts as a base theme for other test subthemes. core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/update/tests/themes/update_test_subtheme/update_test_subtheme.info b/modules/update/tests/themes/update_test_subtheme/update_test_subtheme.info index ae70713d..b579bb51 100755 --- a/modules/update/tests/themes/update_test_subtheme/update_test_subtheme.info +++ b/modules/update/tests/themes/update_test_subtheme/update_test_subtheme.info @@ -4,8 +4,8 @@ core = 7.x base theme = update_test_basetheme hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/update/tests/update_test.info b/modules/update/tests/update_test.info index 8cd643b1..657b2c1c 100755 --- a/modules/update/tests/update_test.info +++ b/modules/update/tests/update_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/update/update.info b/modules/update/update.info index d4477d89..1efa370b 100755 --- a/modules/update/update.info +++ b/modules/update/update.info @@ -6,8 +6,8 @@ core = 7.x files[] = update.test configure = admin/reports/updates/settings -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/user/tests/user_form_test.info b/modules/user/tests/user_form_test.info index 57d8fd04..921bd89e 100755 --- a/modules/user/tests/user_form_test.info +++ b/modules/user/tests/user_form_test.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/user/user.info b/modules/user/user.info index 44d2fd25..2136902b 100755 --- a/modules/user/user.info +++ b/modules/user/user.info @@ -9,8 +9,8 @@ required = TRUE configure = admin/config/people stylesheets[all][] = user.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/modules/user/user.module b/modules/user/user.module index 460adae5..b818d79a 100644 --- a/modules/user/user.module +++ b/modules/user/user.module @@ -2356,26 +2356,14 @@ function user_external_login_register($name, $module) { * following properties: * - uid: The user ID number. * - login: The UNIX timestamp of the user's last login. - * @param array $options - * (optional) A keyed array of settings. Supported options are: - * - langcode: A language code to be used when generating locale-sensitive - * urls. If langcode is NULL the users preferred language is used. * * @return * A unique URL that provides a one-time log in for the user, from which * they can change their password. */ -function user_pass_reset_url($account, $options = array()) { +function user_pass_reset_url($account) { $timestamp = REQUEST_TIME; - $url_options = array('absolute' => TRUE); - if (isset($options['langcode'])) { - $languages = language_list(); - $url_options['language'] = $languages[$options['langcode']]; - } - else { - $url_options['language'] = user_preferred_language($account); - } - return url("user/reset/$account->uid/$timestamp/" . user_pass_rehash($account->pass, $timestamp, $account->login, $account->uid), $url_options); + return url("user/reset/$account->uid/$timestamp/" . user_pass_rehash($account->pass, $timestamp, $account->login, $account->uid), array('absolute' => TRUE)); } /** @@ -2387,10 +2375,6 @@ function user_pass_reset_url($account, $options = array()) { * - uid: The user ID number. * - pass: The hashed user password string. * - login: The UNIX timestamp of the user's last login. - * @param array $options - * (optional) A keyed array of settings. Supported options are: - * - langcode: A language code to be used when generating locale-sensitive - * urls. If langcode is NULL the users preferred language is used. * * @return * A unique URL that may be used to confirm the cancellation of the user @@ -2399,17 +2383,9 @@ function user_pass_reset_url($account, $options = array()) { * @see user_mail_tokens() * @see user_cancel_confirm() */ -function user_cancel_url($account, $options = array()) { +function user_cancel_url($account) { $timestamp = REQUEST_TIME; - $url_options = array('absolute' => TRUE); - if (isset($options['langcode'])) { - $languages = language_list(); - $url_options['language'] = $languages[$options['langcode']]; - } - else { - $url_options['language'] = user_preferred_language($account); - } - return url("user/$account->uid/cancel/confirm/$timestamp/" . user_pass_rehash($account->pass, $timestamp, $account->login, $account->uid), $url_options); + return url("user/$account->uid/cancel/confirm/$timestamp/" . user_pass_rehash($account->pass, $timestamp, $account->login, $account->uid), array('absolute' => TRUE)); } /** @@ -2899,7 +2875,7 @@ Your account on [site:name] has been canceled. if ($replace) { // We do not sanitize the token replacement, since the output of this // replacement is intended for an e-mail message, not a web browser. - return token_replace($text, $variables, array('language' => $language, 'langcode' => $langcode, 'callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); + return token_replace($text, $variables, array('language' => $language, 'callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); } return $text; @@ -2926,8 +2902,8 @@ Your account on [site:name] has been canceled. */ function user_mail_tokens(&$replacements, $data, $options) { if (isset($data['user'])) { - $replacements['[user:one-time-login-url]'] = user_pass_reset_url($data['user'], $options); - $replacements['[user:cancel-url]'] = user_cancel_url($data['user'], $options); + $replacements['[user:one-time-login-url]'] = user_pass_reset_url($data['user']); + $replacements['[user:cancel-url]'] = user_cancel_url($data['user']); } } diff --git a/modules/user/user.test b/modules/user/user.test index c06e1c6d..63143c3c 100644 --- a/modules/user/user.test +++ b/modules/user/user.test @@ -2258,26 +2258,6 @@ class UserTokenReplaceTestCase extends DrupalWebTestCase { ); } - public function setUp() { - parent::setUp('locale'); - - $account = $this->drupalCreateUser(array('access administration pages', 'administer languages')); - $this->drupalLogin($account); - - // Add language. - $edit = array('langcode' => 'de'); - $this->drupalPost('admin/config/regional/language/add', $edit, t('Add language')); - - // Enable URL language detection and selection. - $edit = array('language[enabled][locale-url]' => 1); - $this->drupalPost('admin/config/regional/language/configure', $edit, t('Save settings')); - - // Reset static caching. - drupal_static_reset('language_list'); - drupal_static_reset('locale_url_outbound_alter'); - drupal_static_reset('locale_language_url_rewrite_url'); - } - /** * Creates a user, then tests the tokens generated from it. */ @@ -2328,39 +2308,6 @@ class UserTokenReplaceTestCase extends DrupalWebTestCase { $output = token_replace($input, array('user' => $account), array('language' => $language, 'sanitize' => FALSE)); $this->assertEqual($output, $expected, format_string('Unsanitized user token %token replaced.', array('%token' => $input))); } - - $languages = language_list(); - - // Generate login and cancel link. - $tests = array(); - $tests['[user:one-time-login-url]'] = user_pass_reset_url($account); - $tests['[user:cancel-url]'] = user_cancel_url($account); - - // Generate tokens with interface language. - $link = url('user', array('absolute' => TRUE)); - foreach ($tests as $input => $expected) { - $output = token_replace($input, array('user' => $account), array('langcode' => $language->language, 'callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); - $this->assertTrue(strpos($output, $link) === 0, 'Generated URL is in interface language.'); - } - - // Generate tokens with the user's preferred language. - $edit['language'] = 'de'; - $account = user_save($account, $edit); - $link = url('user', array('language' => $languages[$account->language], 'absolute' => TRUE)); - foreach ($tests as $input => $expected) { - $output = token_replace($input, array('user' => $account), array('callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); - $this->assertTrue(strpos($output, $link) === 0, "Generated URL is in the user's preferred language."); - } - - // Generate tokens with one specific language. - $link = url('user', array('language' => $languages['de'], 'absolute' => TRUE)); - foreach ($tests as $input => $expected) { - foreach (array($user1, $user2) as $account) { - $output = token_replace($input, array('user' => $account), array('langcode' => 'de', 'callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); - $this->assertTrue(strpos($output, $link) === 0, "Generated URL in in the requested language."); - } - } - } } diff --git a/profiles/minimal/minimal.info b/profiles/minimal/minimal.info index bb30cdc8..ebc9f129 100755 --- a/profiles/minimal/minimal.info +++ b/profiles/minimal/minimal.info @@ -5,8 +5,8 @@ core = 7.x dependencies[] = block dependencies[] = dblog -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/profiles/standard/standard.info b/profiles/standard/standard.info index effe3959..bc743d50 100755 --- a/profiles/standard/standard.info +++ b/profiles/standard/standard.info @@ -24,8 +24,8 @@ dependencies[] = field_ui dependencies[] = file dependencies[] = rdf -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info b/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info index d4d12484..f0f43f33 100755 --- a/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info +++ b/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info @@ -6,8 +6,8 @@ core = 7.x hidden = TRUE files[] = drupal_system_listing_compatible_test.test -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/profiles/testing/modules/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info b/profiles/testing/modules/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info index 7469d2f1..17434350 100755 --- a/profiles/testing/modules/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info +++ b/profiles/testing/modules/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info @@ -8,8 +8,8 @@ version = VERSION core = 6.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/profiles/testing/testing.info b/profiles/testing/testing.info index 937c48e2..020330eb 100755 --- a/profiles/testing/testing.info +++ b/profiles/testing/testing.info @@ -4,8 +4,8 @@ version = VERSION core = 7.x hidden = TRUE -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/themes/bartik/bartik.info b/themes/bartik/bartik.info index b2a0a40c..007d0a53 100755 --- a/themes/bartik/bartik.info +++ b/themes/bartik/bartik.info @@ -34,8 +34,8 @@ regions[footer] = Footer settings[shortcut_module_link] = 0 -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/themes/garland/garland.info b/themes/garland/garland.info index 24e56757..00920141 100755 --- a/themes/garland/garland.info +++ b/themes/garland/garland.info @@ -7,8 +7,8 @@ stylesheets[all][] = style.css stylesheets[print][] = print.css settings[garland_width] = fluid -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/themes/seven/seven.info b/themes/seven/seven.info index 479d04a1..85e22afd 100755 --- a/themes/seven/seven.info +++ b/themes/seven/seven.info @@ -13,8 +13,8 @@ regions[page_bottom] = Page bottom regions[sidebar_first] = First sidebar regions_hidden[] = sidebar_first -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" diff --git a/themes/stark/stark.info b/themes/stark/stark.info index 1a47c4cc..651c4fa7 100755 --- a/themes/stark/stark.info +++ b/themes/stark/stark.info @@ -5,8 +5,8 @@ version = VERSION core = 7.x stylesheets[all][] = layout.css -; Information added by Drupal.org packaging script on 2016-10-05 -version = "7.51" +; Information added by Drupal.org packaging script on 2016-12-07 +version = "7.53" project = "drupal" -datestamp = "1475694174" +datestamp = "1481152423" From 3f9ba49255c1685f668d7f762f9e20d9a12e4f5a Mon Sep 17 00:00:00 2001 From: Bachir Soussi Chiadmi Date: Mon, 19 Dec 2016 17:06:32 +0100 Subject: [PATCH 3/4] repatched core user module language aware tokens https://www.drupal.org/node/1754162 --- modules/user/user.module | 38 ++++++++++++++++++++++------ modules/user/user.test | 53 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+), 7 deletions(-) diff --git a/modules/user/user.module b/modules/user/user.module index b818d79a..460adae5 100644 --- a/modules/user/user.module +++ b/modules/user/user.module @@ -2356,14 +2356,26 @@ function user_external_login_register($name, $module) { * following properties: * - uid: The user ID number. * - login: The UNIX timestamp of the user's last login. + * @param array $options + * (optional) A keyed array of settings. Supported options are: + * - langcode: A language code to be used when generating locale-sensitive + * urls. If langcode is NULL the users preferred language is used. * * @return * A unique URL that provides a one-time log in for the user, from which * they can change their password. */ -function user_pass_reset_url($account) { +function user_pass_reset_url($account, $options = array()) { $timestamp = REQUEST_TIME; - return url("user/reset/$account->uid/$timestamp/" . user_pass_rehash($account->pass, $timestamp, $account->login, $account->uid), array('absolute' => TRUE)); + $url_options = array('absolute' => TRUE); + if (isset($options['langcode'])) { + $languages = language_list(); + $url_options['language'] = $languages[$options['langcode']]; + } + else { + $url_options['language'] = user_preferred_language($account); + } + return url("user/reset/$account->uid/$timestamp/" . user_pass_rehash($account->pass, $timestamp, $account->login, $account->uid), $url_options); } /** @@ -2375,6 +2387,10 @@ function user_pass_reset_url($account) { * - uid: The user ID number. * - pass: The hashed user password string. * - login: The UNIX timestamp of the user's last login. + * @param array $options + * (optional) A keyed array of settings. Supported options are: + * - langcode: A language code to be used when generating locale-sensitive + * urls. If langcode is NULL the users preferred language is used. * * @return * A unique URL that may be used to confirm the cancellation of the user @@ -2383,9 +2399,17 @@ function user_pass_reset_url($account) { * @see user_mail_tokens() * @see user_cancel_confirm() */ -function user_cancel_url($account) { +function user_cancel_url($account, $options = array()) { $timestamp = REQUEST_TIME; - return url("user/$account->uid/cancel/confirm/$timestamp/" . user_pass_rehash($account->pass, $timestamp, $account->login, $account->uid), array('absolute' => TRUE)); + $url_options = array('absolute' => TRUE); + if (isset($options['langcode'])) { + $languages = language_list(); + $url_options['language'] = $languages[$options['langcode']]; + } + else { + $url_options['language'] = user_preferred_language($account); + } + return url("user/$account->uid/cancel/confirm/$timestamp/" . user_pass_rehash($account->pass, $timestamp, $account->login, $account->uid), $url_options); } /** @@ -2875,7 +2899,7 @@ Your account on [site:name] has been canceled. if ($replace) { // We do not sanitize the token replacement, since the output of this // replacement is intended for an e-mail message, not a web browser. - return token_replace($text, $variables, array('language' => $language, 'callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); + return token_replace($text, $variables, array('language' => $language, 'langcode' => $langcode, 'callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); } return $text; @@ -2902,8 +2926,8 @@ Your account on [site:name] has been canceled. */ function user_mail_tokens(&$replacements, $data, $options) { if (isset($data['user'])) { - $replacements['[user:one-time-login-url]'] = user_pass_reset_url($data['user']); - $replacements['[user:cancel-url]'] = user_cancel_url($data['user']); + $replacements['[user:one-time-login-url]'] = user_pass_reset_url($data['user'], $options); + $replacements['[user:cancel-url]'] = user_cancel_url($data['user'], $options); } } diff --git a/modules/user/user.test b/modules/user/user.test index 63143c3c..c06e1c6d 100644 --- a/modules/user/user.test +++ b/modules/user/user.test @@ -2258,6 +2258,26 @@ class UserTokenReplaceTestCase extends DrupalWebTestCase { ); } + public function setUp() { + parent::setUp('locale'); + + $account = $this->drupalCreateUser(array('access administration pages', 'administer languages')); + $this->drupalLogin($account); + + // Add language. + $edit = array('langcode' => 'de'); + $this->drupalPost('admin/config/regional/language/add', $edit, t('Add language')); + + // Enable URL language detection and selection. + $edit = array('language[enabled][locale-url]' => 1); + $this->drupalPost('admin/config/regional/language/configure', $edit, t('Save settings')); + + // Reset static caching. + drupal_static_reset('language_list'); + drupal_static_reset('locale_url_outbound_alter'); + drupal_static_reset('locale_language_url_rewrite_url'); + } + /** * Creates a user, then tests the tokens generated from it. */ @@ -2308,6 +2328,39 @@ class UserTokenReplaceTestCase extends DrupalWebTestCase { $output = token_replace($input, array('user' => $account), array('language' => $language, 'sanitize' => FALSE)); $this->assertEqual($output, $expected, format_string('Unsanitized user token %token replaced.', array('%token' => $input))); } + + $languages = language_list(); + + // Generate login and cancel link. + $tests = array(); + $tests['[user:one-time-login-url]'] = user_pass_reset_url($account); + $tests['[user:cancel-url]'] = user_cancel_url($account); + + // Generate tokens with interface language. + $link = url('user', array('absolute' => TRUE)); + foreach ($tests as $input => $expected) { + $output = token_replace($input, array('user' => $account), array('langcode' => $language->language, 'callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); + $this->assertTrue(strpos($output, $link) === 0, 'Generated URL is in interface language.'); + } + + // Generate tokens with the user's preferred language. + $edit['language'] = 'de'; + $account = user_save($account, $edit); + $link = url('user', array('language' => $languages[$account->language], 'absolute' => TRUE)); + foreach ($tests as $input => $expected) { + $output = token_replace($input, array('user' => $account), array('callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); + $this->assertTrue(strpos($output, $link) === 0, "Generated URL is in the user's preferred language."); + } + + // Generate tokens with one specific language. + $link = url('user', array('language' => $languages['de'], 'absolute' => TRUE)); + foreach ($tests as $input => $expected) { + foreach (array($user1, $user2) as $account) { + $output = token_replace($input, array('user' => $account), array('langcode' => 'de', 'callback' => 'user_mail_tokens', 'sanitize' => FALSE, 'clear' => TRUE)); + $this->assertTrue(strpos($output, $link) === 0, "Generated URL in in the requested language."); + } + } + } } From b9f2b16d24bba56af28357582ca302856517f39f Mon Sep 17 00:00:00 2001 From: Bachir Soussi Chiadmi Date: Mon, 19 Dec 2016 18:10:13 +0100 Subject: [PATCH 4/4] modules security update views_send, elysia_cron --- .../dev/elysia_cron/elysia_cron.drush.inc | 7 ++--- .../contrib/dev/elysia_cron/elysia_cron.info | 6 ++--- .../dev/elysia_cron/elysia_cron.module | 26 ++++++++++++++----- .../contrib/mail/views_send/views_send.info | 6 ++--- .../contrib/mail/views_send/views_send.module | 8 +++--- 5 files changed, 34 insertions(+), 19 deletions(-) diff --git a/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.drush.inc b/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.drush.inc index cf1d26e9..f162552e 100644 --- a/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.drush.inc +++ b/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.drush.inc @@ -26,12 +26,13 @@ function elysia_cron_drush_die() { /** * Wrapper for drush_invoke(). */ -function elysia_cron_drush_invoke($replace_core_cron = FALSE) { +function elysia_cron_drush_invoke() { $args = drush_get_arguments(); array_shift($args); - // If invoked like 'core-cron' I do the same as that: execute 'run'. - if ($replace_core_cron && empty($args)) { + // If drush command has no arguments or the first argument is not in the + // list of allowed operations then we assume the cron execution. + if (empty($args) || !in_array($args[0], array('list', 'run', 'enable', 'disable'))) { $args = array('run'); } diff --git a/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.info b/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.info index 70db406c..6d9457da 100644 --- a/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.info +++ b/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.info @@ -4,9 +4,9 @@ core = 7.x configure = admin/config/system/cron -; Information added by Drupal.org packaging script on 2016-10-10 -version = "7.x-2.3" +; Information added by Drupal.org packaging script on 2016-11-23 +version = "7.x-2.4" core = "7.x" project = "elysia_cron" -datestamp = "1476088169" +datestamp = "1479877741" diff --git a/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.module b/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.module index 4e321a18..d245ac34 100644 --- a/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.module +++ b/sites/all/modules/contrib/dev/elysia_cron/elysia_cron.module @@ -113,6 +113,7 @@ function elysia_cron_permission() { 'administer elysia_cron' => array( 'title' => t('Administer elysia cron'), 'description' => t('Perform changes to cron jobs timings, disable cron or single jobs and access cron execution statistics'), + 'restrict access' => TRUE, ), 'execute elysia_cron' => array( 'title' => t('Execute elysia cron jobs'), @@ -142,9 +143,11 @@ function elysia_cron_exit() { function elysia_cron_cron() { global $_elysia_cron_exit_phase, $_elysia_cron_drush; - // If invoked "core-cron" via drush i'll redirect to elysia-cron handler. + // If cron has been executed via "drush core-cron" or any other custom drush + // command then we run internal cron handler which is designed to handle + // cron executions from drush. if (function_exists('elysia_cron_drush_detect') && elysia_cron_drush_detect()) { - elysia_cron_drush_invoke(TRUE); + elysia_cron_drush_invoke(); } // First cron run is executed in standard drupal way. @@ -1039,8 +1042,8 @@ function elysia_cron_module_jobs() { $jobs[$job] = $jobs[$job] + array( 'module' => $module, - 'callback' => is_callable($job) ? $job : $function, - 'arguments' => is_callable($job) ? array() : array('execute', $job), + 'callback' => $job, + 'arguments' => array(), ); } } @@ -1445,8 +1448,11 @@ function elysia_cron_internal_execute_job($job) { try { if (!empty($_elysia_cron_settings[$job]['file'])) { - include_once((!empty($_elysia_cron_settings[$job]['file path']) ? $_elysia_cron_settings[$job]['file path'] : drupal_get_path('module', $_elysia_cron_settings[$job]['module'])) . DIRECTORY_SEPARATOR . $_elysia_cron_settings[$job]['file']); + $file_path = !empty($_elysia_cron_settings[$job]['file path']) ? $_elysia_cron_settings[$job]['file path'] : drupal_get_path('module', $_elysia_cron_settings[$job]['module']); + $file_path .= DIRECTORY_SEPARATOR . $_elysia_cron_settings[$job]['file']; + include_once $file_path; } + if (!empty($_elysia_cron_settings[$job]['expression'])) { eval($_elysia_cron_settings[$job]['expression']); } @@ -1454,7 +1460,15 @@ function elysia_cron_internal_execute_job($job) { call_user_func_array($_elysia_cron_settings[$job]['callback'], $_elysia_cron_settings[$job]['arguments']); } else { - elysia_cron_error('Execution of ' . $job . ' failed, can\'t find function!', array(), TRUE); + $function = $_elysia_cron_settings[$job]['module'] . '_cronapi'; + $arguments = array('execute', $job); + + if (is_callable($function)) { + call_user_func_array($function, $arguments); + } + else { + elysia_cron_error('Execution of ' . $job . ' failed, can\'t find function!', array(), TRUE); + } } } catch (Exception $e) { diff --git a/sites/all/modules/contrib/mail/views_send/views_send.info b/sites/all/modules/contrib/mail/views_send/views_send.info index 8ce0fe91..bcaa73aa 100644 --- a/sites/all/modules/contrib/mail/views_send/views_send.info +++ b/sites/all/modules/contrib/mail/views_send/views_send.info @@ -8,9 +8,9 @@ core = 7.x files[] = views_send.rules.inc files[] = views/views_send_handler_field_selector.inc -; Information added by Drupal.org packaging script on 2016-03-29 -version = "7.x-1.2" +; Information added by Drupal.org packaging script on 2016-11-09 +version = "7.x-1.3" core = "7.x" project = "views_send" -datestamp = "1459239847" +datestamp = "1478685242" diff --git a/sites/all/modules/contrib/mail/views_send/views_send.module b/sites/all/modules/contrib/mail/views_send/views_send.module index 5f419805..01bb4e38 100644 --- a/sites/all/modules/contrib/mail/views_send/views_send.module +++ b/sites/all/modules/contrib/mail/views_send/views_send.module @@ -497,7 +497,7 @@ function views_send_confirm_form($form, &$form_state, $view, $output) { '#type' => 'item', '#title' => t('From'), '#markup' => '
' . - (empty($from_name) ? $from_mail : $from_name . check_plain(' <' . $from_mail . '>')) . + check_plain(_views_send_format_address($from_mail, $from_name, FALSE)) . '
', ); @@ -517,7 +517,7 @@ function views_send_confirm_form($form, &$form_state, $view, $output) { } $mail_addresses = _views_send_get_field_value_from_views_row($view, $row_id, $to_mail_field, 'mail'); foreach ($mail_addresses as $mail_address) { - $recipients[] = check_plain(empty($to_name) ? $mail_address : trim($to_name) . ' <' . $mail_address . '>'); + $recipients[] = check_plain(_views_send_format_address($mail_address, $to_name, FALSE)); } } @@ -529,7 +529,7 @@ function views_send_confirm_form($form, &$form_state, $view, $output) { $form['subject'] = array( '#type' => 'item', '#title' => t('Subject'), - '#markup' => '
' . $configuration['views_send_subject'] . '
', + '#markup' => '
' . check_plain($configuration['views_send_subject']) . '
', ); $form['message'] = array( '#type' => 'item', @@ -539,7 +539,7 @@ function views_send_confirm_form($form, &$form_state, $view, $output) { $headers = array(); foreach (_views_send_headers($configuration['views_send_receipt'], $configuration['views_send_priority'], $configuration['views_send_from_mail'], $configuration['views_send_headers']) as $key => $value) { - $headers[] = $key . ': ' . $value; + $headers[] = check_plain($key . ': ' . $value); } $form['headers'] = array(