update drupal cms after security audit
authorymh <ymh.work@gmail.com>
Mon, 19 Mar 2018 16:00:44 +0100
changeset 570 cdf0cb7bf073
parent 569 2815e71c65fb
child 571 6f852d0f7760
update drupal cms after security audit
cms/drupal/.editorconfig
cms/drupal/.htaccess
cms/drupal/CHANGELOG.txt
cms/drupal/includes/bootstrap.inc
cms/drupal/includes/common.inc
cms/drupal/misc/drupal.js
cms/drupal/modules/aggregator/aggregator.info
cms/drupal/modules/aggregator/tests/aggregator_test.info
cms/drupal/modules/block/block.info
cms/drupal/modules/block/tests/block_test.info
cms/drupal/modules/block/tests/themes/block_test_theme/block_test_theme.info
cms/drupal/modules/blog/blog.info
cms/drupal/modules/book/book.info
cms/drupal/modules/color/color.info
cms/drupal/modules/comment/comment.info
cms/drupal/modules/contact/contact.info
cms/drupal/modules/contextual/contextual.info
cms/drupal/modules/dashboard/dashboard.info
cms/drupal/modules/dblog/dblog.info
cms/drupal/modules/field/field.info
cms/drupal/modules/field/modules/field_sql_storage/field_sql_storage.info
cms/drupal/modules/field/modules/list/list.info
cms/drupal/modules/field/modules/list/tests/list_test.info
cms/drupal/modules/field/modules/number/number.info
cms/drupal/modules/field/modules/options/options.info
cms/drupal/modules/field/modules/text/text.info
cms/drupal/modules/field/tests/field_test.info
cms/drupal/modules/field_ui/field_ui.info
cms/drupal/modules/file/file.info
cms/drupal/modules/file/file.module
cms/drupal/modules/file/tests/file.test
cms/drupal/modules/file/tests/file_module_test.info
cms/drupal/modules/file/tests/file_module_test.module
cms/drupal/modules/filter/filter.info
cms/drupal/modules/forum/forum.info
cms/drupal/modules/help/help.info
cms/drupal/modules/image/image.info
cms/drupal/modules/image/tests/image_module_test.info
cms/drupal/modules/locale/locale.info
cms/drupal/modules/locale/tests/locale_test.info
cms/drupal/modules/menu/menu.info
cms/drupal/modules/node/node.info
cms/drupal/modules/node/tests/node_access_test.info
cms/drupal/modules/node/tests/node_test.info
cms/drupal/modules/node/tests/node_test_exception.info
cms/drupal/modules/openid/openid.info
cms/drupal/modules/openid/tests/openid_test.info
cms/drupal/modules/overlay/overlay.info
cms/drupal/modules/path/path.info
cms/drupal/modules/php/php.info
cms/drupal/modules/poll/poll.info
cms/drupal/modules/profile/profile.info
cms/drupal/modules/rdf/rdf.info
cms/drupal/modules/rdf/tests/rdf_test.info
cms/drupal/modules/search/search.info
cms/drupal/modules/search/tests/search_embedded_form.info
cms/drupal/modules/search/tests/search_extra_type.info
cms/drupal/modules/search/tests/search_node_tags.info
cms/drupal/modules/shortcut/shortcut.info
cms/drupal/modules/simpletest/simpletest.info
cms/drupal/modules/simpletest/tests/actions_loop_test.info
cms/drupal/modules/simpletest/tests/ajax_forms_test.info
cms/drupal/modules/simpletest/tests/ajax_test.info
cms/drupal/modules/simpletest/tests/batch_test.info
cms/drupal/modules/simpletest/tests/boot_test_1.info
cms/drupal/modules/simpletest/tests/boot_test_2.info
cms/drupal/modules/simpletest/tests/common.test
cms/drupal/modules/simpletest/tests/common_test.info
cms/drupal/modules/simpletest/tests/common_test.module
cms/drupal/modules/simpletest/tests/common_test_cron_helper.info
cms/drupal/modules/simpletest/tests/database_test.info
cms/drupal/modules/simpletest/tests/drupal_autoload_test/drupal_autoload_test.info
cms/drupal/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info
cms/drupal/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info
cms/drupal/modules/simpletest/tests/entity_cache_test.info
cms/drupal/modules/simpletest/tests/entity_cache_test_dependency.info
cms/drupal/modules/simpletest/tests/entity_crud_hook_test.info
cms/drupal/modules/simpletest/tests/entity_query_access_test.info
cms/drupal/modules/simpletest/tests/error_test.info
cms/drupal/modules/simpletest/tests/file_test.info
cms/drupal/modules/simpletest/tests/filter_test.info
cms/drupal/modules/simpletest/tests/form_test.info
cms/drupal/modules/simpletest/tests/image_test.info
cms/drupal/modules/simpletest/tests/menu_test.info
cms/drupal/modules/simpletest/tests/module_test.info
cms/drupal/modules/simpletest/tests/path_test.info
cms/drupal/modules/simpletest/tests/psr_0_test/psr_0_test.info
cms/drupal/modules/simpletest/tests/psr_4_test/psr_4_test.info
cms/drupal/modules/simpletest/tests/requirements1_test.info
cms/drupal/modules/simpletest/tests/requirements2_test.info
cms/drupal/modules/simpletest/tests/session_test.info
cms/drupal/modules/simpletest/tests/system_dependencies_test.info
cms/drupal/modules/simpletest/tests/system_incompatible_core_version_dependencies_test.info
cms/drupal/modules/simpletest/tests/system_incompatible_core_version_test.info
cms/drupal/modules/simpletest/tests/system_incompatible_module_version_dependencies_test.info
cms/drupal/modules/simpletest/tests/system_incompatible_module_version_test.info
cms/drupal/modules/simpletest/tests/system_project_namespace_test.info
cms/drupal/modules/simpletest/tests/system_test.info
cms/drupal/modules/simpletest/tests/taxonomy_test.info
cms/drupal/modules/simpletest/tests/theme_test.info
cms/drupal/modules/simpletest/tests/themes/test_basetheme/test_basetheme.info
cms/drupal/modules/simpletest/tests/themes/test_subtheme/test_subtheme.info
cms/drupal/modules/simpletest/tests/themes/test_theme/test_theme.info
cms/drupal/modules/simpletest/tests/themes/test_theme_nyan_cat/test_theme_nyan_cat.info
cms/drupal/modules/simpletest/tests/update_script_test.info
cms/drupal/modules/simpletest/tests/update_test_1.info
cms/drupal/modules/simpletest/tests/update_test_2.info
cms/drupal/modules/simpletest/tests/update_test_3.info
cms/drupal/modules/simpletest/tests/url_alter_test.info
cms/drupal/modules/simpletest/tests/xmlrpc_test.info
cms/drupal/modules/statistics/statistics.info
cms/drupal/modules/syslog/syslog.info
cms/drupal/modules/system/system.info
cms/drupal/modules/system/tests/cron_queue_test.info
cms/drupal/modules/system/tests/system_cron_test.info
cms/drupal/modules/taxonomy/taxonomy.info
cms/drupal/modules/toolbar/toolbar.info
cms/drupal/modules/tracker/tracker.info
cms/drupal/modules/translation/tests/translation_test.info
cms/drupal/modules/translation/translation.info
cms/drupal/modules/trigger/tests/trigger_test.info
cms/drupal/modules/trigger/trigger.info
cms/drupal/modules/update/tests/aaa_update_test.info
cms/drupal/modules/update/tests/bbb_update_test.info
cms/drupal/modules/update/tests/ccc_update_test.info
cms/drupal/modules/update/tests/themes/update_test_admintheme/update_test_admintheme.info
cms/drupal/modules/update/tests/themes/update_test_basetheme/update_test_basetheme.info
cms/drupal/modules/update/tests/themes/update_test_subtheme/update_test_subtheme.info
cms/drupal/modules/update/tests/update_test.info
cms/drupal/modules/update/update.info
cms/drupal/modules/user/tests/user_form_test.info
cms/drupal/modules/user/user.info
cms/drupal/profiles/drustack/.gitignore
cms/drupal/profiles/drustack/composer.json
cms/drupal/profiles/drustack/drustack.info
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/README.txt
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/backup_migrate.info
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/backup_migrate.install
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/backup_migrate.module
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/backup_migrate.drush.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/crud.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.db.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.db.mysql.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.email.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.file.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.nodesquirrel.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/files.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/filters.backup_restore.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/filters.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/filters.statusnotify.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/locations.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/profiles.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/schedules.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.archivesource.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.db.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.db.mysql.inc
cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.filesource.inc
cms/drupal/profiles/drustack/modules/contrib/entity/PATCHES.txt
cms/drupal/profiles/drustack/modules/contrib/entity/ctools/content_types/entity_view.inc
cms/drupal/profiles/drustack/modules/contrib/entity/entity.features.inc
cms/drupal/profiles/drustack/modules/contrib/entity/entity.info
cms/drupal/profiles/drustack/modules/contrib/entity/entity.module
cms/drupal/profiles/drustack/modules/contrib/entity/entity.test
cms/drupal/profiles/drustack/modules/contrib/entity/entity_token.info
cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.controller.inc
cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.property.inc
cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.ui.inc
cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.wrapper.inc
cms/drupal/profiles/drustack/modules/contrib/entity/modules/callbacks.inc
cms/drupal/profiles/drustack/modules/contrib/entity/modules/node.info.inc
cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_feature.info
cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_test.info
cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_test.module
cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_test_i18n.info
cms/drupal/profiles/drustack/modules/contrib/entity/views/entity.views.inc
cms/drupal/profiles/drustack/modules/contrib/entity/views/handlers/entity_views_field_handler_helper.inc
cms/drupal/profiles/drustack/modules/contrib/entity/views/handlers/entity_views_handler_area_entity.inc
cms/drupal/profiles/drustack/modules/custom/drustack_article/drustack_article.info
cms/drupal/profiles/drustack/modules/custom/drustack_banner/drustack_banner.info
cms/drupal/profiles/drustack/modules/custom/drustack_blog/drustack_blog.info
cms/drupal/profiles/drustack/modules/custom/drustack_book/drustack_book.info
cms/drupal/profiles/drustack/modules/custom/drustack_core/drustack_core.info
cms/drupal/profiles/drustack/modules/custom/drustack_devel/drustack_devel.info
cms/drupal/profiles/drustack/modules/custom/drustack_forum/drustack_forum.info
cms/drupal/profiles/drustack/modules/custom/drustack_page/drustack_page.info
cms/drupal/profiles/drustack/modules/custom/drustack_performance/drustack_performance.info
cms/drupal/profiles/drustack/modules/custom/drustack_poll/drustack_poll.info
cms/drupal/profiles/drustack/modules/custom/drustack_seo/drustack_seo.info
cms/drupal/profiles/drustack/modules/custom/drustack_webform/drustack_webform.info
cms/drupal/profiles/drustack/modules/custom/drustack_wysiwyg/drustack_wysiwyg.info
cms/drupal/profiles/minimal/minimal.info
cms/drupal/profiles/standard/standard.info
cms/drupal/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info
cms/drupal/profiles/testing/modules/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info
cms/drupal/profiles/testing/testing.info
cms/drupal/sites/all/modules/password_policy/LICENSE.txt
cms/drupal/sites/all/modules/password_policy/README.txt
cms/drupal/sites/all/modules/password_policy/constraints/constraint_alphanumeric.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_character_types.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_delay.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_digit.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_digit_placement.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_history.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_length.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_letter.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_lowercase.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_punctuation.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_uppercase.inc
cms/drupal/sites/all/modules/password_policy/constraints/constraint_username.inc
cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.admin.inc
cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.info
cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.install
cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.module
cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.pages.inc
cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.test
cms/drupal/sites/all/modules/password_policy/password_policy.admin.inc
cms/drupal/sites/all/modules/password_policy/password_policy.authmap.inc
cms/drupal/sites/all/modules/password_policy/password_policy.features.inc
cms/drupal/sites/all/modules/password_policy/password_policy.info
cms/drupal/sites/all/modules/password_policy/password_policy.install
cms/drupal/sites/all/modules/password_policy/password_policy.module
cms/drupal/sites/all/modules/password_policy/password_policy.time.inc
cms/drupal/sites/all/modules/password_policy/password_policy.variable.inc
cms/drupal/sites/all/modules/password_policy/tests/password_policy.test
cms/drupal/sites/all/modules/password_policy/tests/password_policy_authmap.test
cms/drupal/sites/all/modules/password_policy/tests/password_policy_expiration.test
cms/drupal/sites/all/modules/password_policy/tests/password_policy_test/password_policy_test.info
cms/drupal/sites/all/modules/password_policy/tests/password_policy_test/password_policy_test.module
cms/drupal/sites/all/modules/username_enumeration_prevention/CHANGELOG.txt
cms/drupal/sites/all/modules/username_enumeration_prevention/LICENSE.txt
cms/drupal/sites/all/modules/username_enumeration_prevention/README.txt
cms/drupal/sites/all/modules/username_enumeration_prevention/username_enumeration_prevention.info
cms/drupal/sites/all/modules/username_enumeration_prevention/username_enumeration_prevention.install
cms/drupal/sites/all/modules/username_enumeration_prevention/username_enumeration_prevention.module
cms/drupal/sites/all/translations/backup_migrate-7.x-3.x.fr_0.po
cms/drupal/sites/all/translations/bean-7.x-1.9.fr_2.po
cms/drupal/sites/all/translations/ckeditor-7.x-1.16.fr_0.po
cms/drupal/sites/all/translations/ckeditor-7.x-1.16.fr_1.po
cms/drupal/sites/all/translations/color_field-7.x-1.8.fr_0.po
cms/drupal/sites/all/translations/color_field-7.x-1.8.fr_1.po
cms/drupal/sites/all/translations/ctools-7.x-1.x.fr_5.po
cms/drupal/sites/all/translations/devel-7.x-1.x.fr_0.po
cms/drupal/sites/all/translations/devel-7.x-1.x.fr_1.po
cms/drupal/sites/all/translations/entity-7.x-1.x.fr_2.po
cms/drupal/sites/all/translations/entity-7.x-1.x.fr_3.po
cms/drupal/sites/all/translations/entityqueue-7.x-1.1.fr_0.po
cms/drupal/sites/all/translations/entityqueue-7.x-1.1.fr_1.po
cms/drupal/sites/all/translations/features-7.x-2.x.fr_2.po
cms/drupal/sites/all/translations/file_entity-7.x-2.x.fr_3.po
cms/drupal/sites/all/translations/media-7.x-2.x.fr_2.po
cms/drupal/sites/all/translations/media-7.x-2.x.fr_3.po
cms/drupal/sites/all/translations/nodequeue-7.x-2.x.fr_0.po
cms/drupal/sites/all/translations/panels-7.x-3.x.fr_2.po
cms/drupal/sites/all/translations/password_policy-7.x-1.15.fr.po
cms/drupal/sites/all/translations/token-7.x-1.x.fr_1.po
cms/drupal/sites/all/translations/views-7.x-3.x.fr_7.po
cms/drupal/sites/all/translations/views-7.x-3.x.fr_8.po
cms/drupal/sites/all/translations/webform-7.x-4.12.fr_4.po
cms/drupal/themes/bartik/bartik.info
cms/drupal/themes/garland/garland.info
cms/drupal/themes/seven/seven.info
cms/drupal/themes/stark/stark.info
--- a/cms/drupal/.htaccess	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/.htaccess	Mon Mar 19 16:00:44 2018 +0100
@@ -152,3 +152,8 @@
   # Disable content sniffing, since it's an attack vector.
   Header always set X-Content-Type-Options nosniff
 </IfModule>
+
+<Files "xmlrpc.php">
+  Order Deny,Allow
+  Deny from all
+</Files>
\ No newline at end of file
--- a/cms/drupal/CHANGELOG.txt	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/CHANGELOG.txt	Mon Mar 19 16:00:44 2018 +0100
@@ -1,3 +1,7 @@
+
+Drupal 7.57, 2018-02-21
+-----------------------
+- Fixed security issues (multiple vulnerabilities). See SA-CORE-2018-001.
 
 Drupal 7.56, 2017-06-21
 -----------------------
--- a/cms/drupal/includes/bootstrap.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/includes/bootstrap.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -8,7 +8,7 @@
 /**
  * The current system version.
  */
-define('VERSION', '7.56');
+define('VERSION', '7.57');
 
 /**
  * Core API compatibility.
--- a/cms/drupal/includes/common.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/includes/common.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -2236,8 +2236,11 @@
     'prefix' => ''
   );
 
+  // Determine whether this is an external link, but ensure that the current
+  // path is always treated as internal by default (to prevent external link
+  // injection vulnerabilities).
   if (!isset($options['external'])) {
-    $options['external'] = url_is_external($path);
+    $options['external'] = $path === $_GET['q'] ? FALSE : url_is_external($path);
   }
 
   // Preserve the original path before altering or aliasing.
--- a/cms/drupal/misc/drupal.js	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/misc/drupal.js	Mon Mar 19 16:00:44 2018 +0100
@@ -28,6 +28,42 @@
 $.fn.init.prototype = jquery_init.prototype;
 
 /**
+ * Pre-filter Ajax requests to guard against XSS attacks.
+ *
+ * See https://github.com/jquery/jquery/issues/2432
+ */
+if ($.ajaxPrefilter) {
+  // For newer versions of jQuery, use an Ajax prefilter to prevent
+  // auto-executing script tags from untrusted domains. This is similar to the
+  // fix that is built in to jQuery 3.0 and higher.
+  $.ajaxPrefilter(function (s) {
+    if (s.crossDomain) {
+      s.contents.script = false;
+    }
+  });
+}
+else if ($.httpData) {
+  // For the version of jQuery that ships with Drupal core, override
+  // jQuery.httpData to prevent auto-detecting "script" data types from
+  // untrusted domains.
+  var jquery_httpData = $.httpData;
+  $.httpData = function (xhr, type, s) {
+    // @todo Consider backporting code from newer jQuery versions to check for
+    //   a cross-domain request here, rather than using Drupal.urlIsLocal() to
+    //   block scripts from all URLs that are not on the same site.
+    if (!type && !Drupal.urlIsLocal(s.url)) {
+      var content_type = xhr.getResponseHeader('content-type') || '';
+      if (content_type.indexOf('javascript') >= 0) {
+        // Default to a safe data type.
+        type = 'text';
+      }
+    }
+    return jquery_httpData.call(this, xhr, type, s);
+  };
+  $.httpData.prototype = jquery_httpData.prototype;
+}
+
+/**
  * Attach all registered behaviors to a page element.
  *
  * Behaviors are event-triggered actions that attach to page elements, enhancing
@@ -137,7 +173,7 @@
  */
 Drupal.checkPlain = function (str) {
   var character, regex,
-      replace = { '&': '&amp;', '"': '&quot;', '<': '&lt;', '>': '&gt;' };
+      replace = { '&': '&amp;', "'": '&#39;', '"': '&quot;', '<': '&lt;', '>': '&gt;' };
   str = String(str);
   for (character in replace) {
     if (replace.hasOwnProperty(character)) {
--- a/cms/drupal/modules/aggregator/aggregator.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/aggregator/aggregator.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 configure = admin/config/services/aggregator/settings
 stylesheets[all][] = aggregator.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/aggregator/tests/aggregator_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/aggregator/tests/aggregator_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/block/block.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/block/block.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = block.test
 configure = admin/structure/block
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/block/tests/block_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/block/tests/block_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/block/tests/themes/block_test_theme/block_test_theme.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/block/tests/themes/block_test_theme/block_test_theme.info	Mon Mar 19 16:00:44 2018 +0100
@@ -13,8 +13,8 @@
 regions[highlighted] = Highlighted
 regions[help] = Help
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/blog/blog.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/blog/blog.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 files[] = blog.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/book/book.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/book/book.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 configure = admin/content/book/settings
 stylesheets[all][] = book.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/color/color.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/color/color.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 files[] = color.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/comment/comment.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/comment/comment.info	Mon Mar 19 16:00:44 2018 +0100
@@ -9,8 +9,8 @@
 configure = admin/content/comment
 stylesheets[all][] = comment.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/contact/contact.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/contact/contact.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = contact.test
 configure = admin/structure/contact
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/contextual/contextual.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/contextual/contextual.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 files[] = contextual.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/dashboard/dashboard.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/dashboard/dashboard.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 dependencies[] = block
 configure = admin/dashboard/customize
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/dblog/dblog.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/dblog/dblog.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 files[] = dblog.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/field/field.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/field/field.info	Mon Mar 19 16:00:44 2018 +0100
@@ -11,8 +11,8 @@
 required = TRUE
 stylesheets[all][] = theme/field.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/field/modules/field_sql_storage/field_sql_storage.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/field/modules/field_sql_storage/field_sql_storage.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 files[] = field_sql_storage.test
 required = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/field/modules/list/list.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/field/modules/list/list.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 dependencies[] = options
 files[] = tests/list.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/field/modules/list/tests/list_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/field/modules/list/tests/list_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/field/modules/number/number.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/field/modules/number/number.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 dependencies[] = field
 files[] = number.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/field/modules/options/options.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/field/modules/options/options.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 dependencies[] = field
 files[] = options.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/field/modules/text/text.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/field/modules/text/text.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 files[] = text.test
 required = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/field/tests/field_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/field/tests/field_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/field_ui/field_ui.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/field_ui/field_ui.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 dependencies[] = field
 files[] = field_ui.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/file/file.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/file/file.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 dependencies[] = field
 files[] = tests/file.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/file/file.module	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/file/file.module	Mon Mar 19 16:00:44 2018 +0100
@@ -140,7 +140,7 @@
   }
 
   // Find out which (if any) fields of this type contain the file.
-  $references = file_get_file_references($file, NULL, FIELD_LOAD_CURRENT, $field_type);
+  $references = file_get_file_references($file, NULL, FIELD_LOAD_CURRENT, $field_type, FALSE);
 
   // Stop processing if there are no references in order to avoid returning
   // headers for files controlled by other modules. Make an exception for
@@ -1067,11 +1067,18 @@
  * @param $field_type
  *   (optional) The name of a field type. If given, limits the reference check
  *   to fields of the given type.
+ * @param $check_access
+ *   (optional) A boolean that specifies whether the permissions of the current
+ *   user should be checked when retrieving references. If FALSE, all
+ *   references to the file are returned. If TRUE, only references from
+ *   entities that the current user has access to are returned. Defaults to
+ *   TRUE for backwards compatibility reasons, but FALSE is recommended for
+ *   most situations.
  *
  * @return
  *   An integer value.
  */
-function file_get_file_references($file, $field = NULL, $age = FIELD_LOAD_REVISION, $field_type = 'file') {
+function file_get_file_references($file, $field = NULL, $age = FIELD_LOAD_REVISION, $field_type = 'file', $check_access = TRUE) {
   $references = drupal_static(__FUNCTION__, array());
   $fields = isset($field) ? array($field['field_name'] => $field) : field_info_fields();
 
@@ -1082,6 +1089,11 @@
       $query
         ->fieldCondition($file_field, 'fid', $file->fid)
         ->age($age);
+      if (!$check_access) {
+        // Neutralize the 'entity_field_access' query tag added by
+        // field_sql_storage_field_storage_query().
+        $query->addTag('DANGEROUS_ACCESS_CHECK_OPT_OUT');
+      }
       $references[$field_name] = $query->execute();
     }
   }
--- a/cms/drupal/modules/file/tests/file.test	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/file/tests/file.test	Mon Mar 19 16:00:44 2018 +0100
@@ -1626,6 +1626,79 @@
     $this->drupalGet($file_url);
     $this->assertResponse(403, 'Confirmed that another anonymous user cannot access the permanent file when it is referenced by an unpublished node.');
   }
+
+  /**
+   * Tests file access for private nodes when file download access is granted.
+   */
+  function testPrivateFileDownloadAccessGranted() {
+    // Tell file_module_test to attempt to grant access to all private files,
+    // and ensure that it is doing so correctly.
+    $test_file = $this->getTestFile('text');
+    $uri = file_unmanaged_move($test_file->uri, 'private://');
+    $file_url = file_create_url($uri);
+    $this->drupalGet($file_url);
+    $this->assertResponse(403, 'Access is not granted to an arbitrary private file by default.');
+    variable_set('file_module_test_grant_download_access', TRUE);
+    $this->drupalGet($file_url);
+    $this->assertResponse(200, 'Access is granted to an arbitrary private file after a module grants access to all private files in hook_file_download().');
+
+    // Create a public node with a file attached.
+    $type_name = 'page';
+    $field_name = strtolower($this->randomName());
+    $this->createFileField($field_name, $type_name, array('uri_scheme' => 'private'));
+    $test_file = $this->getTestFile('text');
+    $nid = $this->uploadNodeFile($test_file, $field_name, $type_name, TRUE, array('private' => FALSE));
+    $node = node_load($nid, NULL, TRUE);
+    $file_url = file_create_url($node->{$field_name}[LANGUAGE_NONE][0]['uri']);
+
+    // Unpublish the node and ensure that only administrators (not anonymous
+    // users) can access the node and download the file; the expectation is
+    // that the File module's hook_file_download() implementation will deny
+    // access and thereby override the file_module_test module's access grant.
+    $node->status = NODE_NOT_PUBLISHED;
+    node_save($node);
+    $this->drupalLogin($this->admin_user);
+    $this->drupalGet("node/$nid");
+    $this->assertResponse(200, 'Administrator can access the unpublished node.');
+    $this->drupalGet($file_url);
+    $this->assertResponse(200, 'Administrator can download the file attached to the unpublished node.');
+    $this->drupalLogOut();
+    $this->drupalGet("node/$nid");
+    $this->assertResponse(403, 'Anonymous user cannot access the unpublished node.');
+    $this->drupalGet($file_url);
+    $this->assertResponse(403, 'Anonymous user cannot download the file attached to the unpublished node.');
+
+    // Re-publish the node and ensure that the node and file can be accessed by
+    // everyone.
+    $node->status = NODE_PUBLISHED;
+    node_save($node);
+    $this->drupalLogin($this->admin_user);
+    $this->drupalGet("node/$nid");
+    $this->assertResponse(200, 'Administrator can access the published node.');
+    $this->drupalGet($file_url);
+    $this->assertResponse(200, 'Administrator can download the file attached to the published node.');
+    $this->drupalLogOut();
+    $this->drupalGet("node/$nid");
+    $this->assertResponse(200, 'Anonymous user can access the published node.');
+    $this->drupalGet($file_url);
+    $this->assertResponse(200, 'Anonymous user can download the file attached to the published node.');
+
+    // Make the node private via the node access system and test that only
+    // administrators (not anonymous users) can access the node and download
+    // the file.
+    $node->private = TRUE;
+    node_save($node);
+    $this->drupalLogin($this->admin_user);
+    $this->drupalGet("node/$nid");
+    $this->assertResponse(200, 'Administrator can access the private node.');
+    $this->drupalGet($file_url);
+    $this->assertResponse(200, 'Administrator can download the file attached to the private node.');
+    $this->drupalLogOut();
+    $this->drupalGet("node/$nid");
+    $this->assertResponse(403, 'Anonymous user cannot access the private node.');
+    $this->drupalGet($file_url);
+    $this->assertResponse(403, 'Anonymous user cannot download the file attached to the private node.');
+  }
 }
 
 /**
--- a/cms/drupal/modules/file/tests/file_module_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/file/tests/file_module_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/file/tests/file_module_test.module	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/file/tests/file_module_test.module	Mon Mar 19 16:00:44 2018 +0100
@@ -67,3 +67,18 @@
   }
   drupal_set_message(t('The file id is %fid.', array('%fid' => $fid)));
 }
+
+/**
+ * Implements hook_file_download().
+ */
+function file_module_test_file_download($uri) {
+  if (variable_get('file_module_test_grant_download_access')) {
+    // Mimic what file_get_content_headers() would do if we had a full $file
+    // object to pass to it.
+    return array(
+      'Content-Type' => mime_header_encode(file_get_mimetype($uri)),
+      'Content-Length' => filesize($uri),
+      'Cache-Control' => 'private',
+    );
+  }
+}
--- a/cms/drupal/modules/filter/filter.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/filter/filter.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 required = TRUE
 configure = admin/config/content/formats
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/forum/forum.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/forum/forum.info	Mon Mar 19 16:00:44 2018 +0100
@@ -9,8 +9,8 @@
 configure = admin/structure/forum
 stylesheets[all][] = forum.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/help/help.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/help/help.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 files[] = help.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/image/image.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/image/image.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 files[] = image.test
 configure = admin/config/media/image-styles
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/image/tests/image_module_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/image/tests/image_module_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = image_module_test.module
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/locale/locale.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/locale/locale.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = locale.test
 configure = admin/config/regional/language
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/locale/tests/locale_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/locale/tests/locale_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/menu/menu.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/menu/menu.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = menu.test
 configure = admin/structure/menu
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/node/node.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/node/node.info	Mon Mar 19 16:00:44 2018 +0100
@@ -9,8 +9,8 @@
 configure = admin/structure/types
 stylesheets[all][] = node.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/node/tests/node_access_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/node/tests/node_access_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/node/tests/node_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/node/tests/node_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/node/tests/node_test_exception.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/node/tests/node_test_exception.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/openid/openid.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/openid/openid.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 files[] = openid.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/openid/tests/openid_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/openid/tests/openid_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 dependencies[] = openid
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/overlay/overlay.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/overlay/overlay.info	Mon Mar 19 16:00:44 2018 +0100
@@ -4,8 +4,8 @@
 version = VERSION
 core = 7.x
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/path/path.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/path/path.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = path.test
 configure = admin/config/search/path
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/php/php.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/php/php.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 files[] = php.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/poll/poll.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/poll/poll.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = poll.test
 stylesheets[all][] = poll.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/profile/profile.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/profile/profile.info	Mon Mar 19 16:00:44 2018 +0100
@@ -11,8 +11,8 @@
 ; See user_system_info_alter().
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/rdf/rdf.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/rdf/rdf.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 files[] = rdf.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/rdf/tests/rdf_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/rdf/tests/rdf_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 hidden = TRUE
 dependencies[] = blog
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/search/search.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/search/search.info	Mon Mar 19 16:00:44 2018 +0100
@@ -8,8 +8,8 @@
 configure = admin/config/search/settings
 stylesheets[all][] = search.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/search/tests/search_embedded_form.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/search/tests/search_embedded_form.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/search/tests/search_extra_type.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/search/tests/search_extra_type.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/search/tests/search_node_tags.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/search/tests/search_node_tags.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/shortcut/shortcut.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/shortcut/shortcut.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = shortcut.test
 configure = admin/config/user-interface/shortcut
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/simpletest.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/simpletest.info	Mon Mar 19 16:00:44 2018 +0100
@@ -57,8 +57,8 @@
 files[] = tests/upgrade/update.field.test
 files[] = tests/upgrade/update.user.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/actions_loop_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/actions_loop_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/ajax_forms_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/ajax_forms_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/ajax_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/ajax_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/batch_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/batch_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/boot_test_1.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/boot_test_1.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/boot_test_2.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/boot_test_2.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/common.test	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/common.test	Mon Mar 19 16:00:44 2018 +0100
@@ -76,7 +76,7 @@
 class CommonURLUnitTest extends DrupalWebTestCase {
   public static function getInfo() {
     return array(
-      'name' => 'URL generation tests',
+      'name' => 'URL generation unit tests',
       'description' => 'Confirm that url(), drupal_get_query_parameters(), drupal_http_build_query(), and l() work correctly with various input.',
       'group' => 'System',
     );
@@ -373,6 +373,38 @@
 }
 
 /**
+ * Web tests for URL generation functions.
+ */
+class CommonURLWebTest extends DrupalWebTestCase {
+  public static function getInfo() {
+    return array(
+      'name' => 'URL generation web tests',
+      'description' => 'Confirm that URL-generating functions work correctly on specific site paths.',
+      'group' => 'System',
+    );
+  }
+
+  function setUp() {
+    parent::setUp('common_test');
+  }
+
+  /**
+   * Tests the url() function on internal paths which mimic external URLs.
+   */
+  function testInternalPathMimicsExternal() {
+    // Ensure that calling url(current_path()) on "/http://example.com" (an
+    // internal path which mimics an external URL) always links to the internal
+    // path, not the external URL. This helps protect against external URL link
+    // injection vulnerabilities.
+    variable_set('common_test_link_to_current_path', TRUE);
+    $this->drupalGet('/http://example.com');
+    $this->clickLink('link which should point to the current path');
+    $this->assertUrl('/http://example.com');
+    $this->assertText('link which should point to the current path');
+  }
+}
+
+/**
  * Tests url_is_external().
  */
 class UrlIsExternalUnitTest extends DrupalUnitTestCase {
--- a/cms/drupal/modules/simpletest/tests/common_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/common_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 stylesheets[print][] = common_test.print.css
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/common_test.module	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/common_test.module	Mon Mar 19 16:00:44 2018 +0100
@@ -99,6 +99,9 @@
   if (variable_get('common_test_redirect_current_path', FALSE)) {
     drupal_goto(current_path());
   }
+  if (variable_get('common_test_link_to_current_path', FALSE)) {
+    drupal_set_message(l('link which should point to the current path', current_path()));
+  }
 }
 
 /**
--- a/cms/drupal/modules/simpletest/tests/common_test_cron_helper.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/common_test_cron_helper.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/database_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/database_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/drupal_autoload_test/drupal_autoload_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/drupal_autoload_test/drupal_autoload_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/entity_cache_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/entity_cache_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 dependencies[] = entity_cache_test_dependency
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/entity_cache_test_dependency.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/entity_cache_test_dependency.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/entity_crud_hook_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/entity_crud_hook_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/entity_query_access_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/entity_query_access_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/error_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/error_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/file_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/file_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = file_test.module
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/filter_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/filter_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/form_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/form_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/image_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/image_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/menu_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/menu_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/module_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/module_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/path_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/path_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/psr_0_test/psr_0_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/psr_0_test/psr_0_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 hidden = TRUE
 package = Testing
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/psr_4_test/psr_4_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/psr_4_test/psr_4_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 hidden = TRUE
 package = Testing
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/requirements1_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/requirements1_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/requirements2_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/requirements2_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/session_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/session_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/system_dependencies_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/system_dependencies_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 hidden = TRUE
 dependencies[] = _missing_dependency
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/system_incompatible_core_version_dependencies_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/system_incompatible_core_version_dependencies_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 hidden = TRUE
 dependencies[] = system_incompatible_core_version_test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/system_incompatible_core_version_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/system_incompatible_core_version_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 5.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/system_incompatible_module_version_dependencies_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/system_incompatible_module_version_dependencies_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 ; 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 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/system_incompatible_module_version_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/system_incompatible_module_version_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/system_project_namespace_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/system_project_namespace_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 hidden = TRUE
 dependencies[] = drupal:filter
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/system_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/system_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = system_test.module
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/taxonomy_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/taxonomy_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 hidden = TRUE
 dependencies[] = taxonomy
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/theme_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/theme_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/themes/test_basetheme/test_basetheme.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/themes/test_basetheme/test_basetheme.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 settings[basetheme_only] = base theme value
 settings[subtheme_override] = base theme value
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/themes/test_subtheme/test_subtheme.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/themes/test_subtheme/test_subtheme.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 
 settings[subtheme_override] = subtheme value
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/themes/test_theme/test_theme.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/themes/test_theme/test_theme.info	Mon Mar 19 16:00:44 2018 +0100
@@ -17,8 +17,8 @@
 
 settings[theme_test_setting] = default value
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/themes/test_theme_nyan_cat/test_theme_nyan_cat.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/themes/test_theme_nyan_cat/test_theme_nyan_cat.info	Mon Mar 19 16:00:44 2018 +0100
@@ -4,8 +4,8 @@
 hidden = TRUE
 engine = nyan_cat
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/update_script_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/update_script_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/update_test_1.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/update_test_1.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/update_test_2.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/update_test_2.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/update_test_3.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/update_test_3.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/url_alter_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/url_alter_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/simpletest/tests/xmlrpc_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/simpletest/tests/xmlrpc_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/statistics/statistics.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/statistics/statistics.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = statistics.test
 configure = admin/config/system/statistics
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/syslog/syslog.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/syslog/syslog.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = syslog.test
 configure = admin/config/development/logging
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/system/system.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/system/system.info	Mon Mar 19 16:00:44 2018 +0100
@@ -12,8 +12,8 @@
 required = TRUE
 configure = admin/config/system
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/system/tests/cron_queue_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/system/tests/cron_queue_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/system/tests/system_cron_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/system/tests/system_cron_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/taxonomy/taxonomy.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/taxonomy/taxonomy.info	Mon Mar 19 16:00:44 2018 +0100
@@ -8,8 +8,8 @@
 files[] = taxonomy.test
 configure = admin/structure/taxonomy
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/toolbar/toolbar.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/toolbar/toolbar.info	Mon Mar 19 16:00:44 2018 +0100
@@ -4,8 +4,8 @@
 package = Core
 version = VERSION
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/tracker/tracker.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/tracker/tracker.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 core = 7.x
 files[] = tracker.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/translation/tests/translation_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/translation/tests/translation_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 version = VERSION
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/translation/translation.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/translation/translation.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 core = 7.x
 files[] = translation.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/trigger/tests/trigger_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/trigger/tests/trigger_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -4,8 +4,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/trigger/trigger.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/trigger/trigger.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = trigger.test
 configure = admin/structure/trigger
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/update/tests/aaa_update_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/update/tests/aaa_update_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -4,8 +4,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/update/tests/bbb_update_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/update/tests/bbb_update_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -4,8 +4,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/update/tests/ccc_update_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/update/tests/ccc_update_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -4,8 +4,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/update/tests/themes/update_test_admintheme/update_test_admintheme.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/update/tests/themes/update_test_admintheme/update_test_admintheme.info	Mon Mar 19 16:00:44 2018 +0100
@@ -3,8 +3,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/update/tests/themes/update_test_basetheme/update_test_basetheme.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/update/tests/themes/update_test_basetheme/update_test_basetheme.info	Mon Mar 19 16:00:44 2018 +0100
@@ -3,8 +3,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/update/tests/themes/update_test_subtheme/update_test_subtheme.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/update/tests/themes/update_test_subtheme/update_test_subtheme.info	Mon Mar 19 16:00:44 2018 +0100
@@ -4,8 +4,8 @@
 base theme = update_test_basetheme
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/update/tests/update_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/update/tests/update_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/update/update.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/update/update.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 files[] = update.test
 configure = admin/reports/updates/settings
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/user/tests/user_form_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/user/tests/user_form_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/modules/user/user.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/modules/user/user.info	Mon Mar 19 16:00:44 2018 +0100
@@ -9,8 +9,8 @@
 configure = admin/config/people
 stylesheets[all][] = user.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/profiles/drustack/.gitignore	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/.gitignore	Mon Mar 19 16:00:44 2018 +0100
@@ -1,3 +1,3 @@
-#/libraries/*
-#/modules/contrib/*
-#/themes/contrib/*
+/libraries/*
+/modules/contrib/*
+/themes/contrib/*
--- a/cms/drupal/profiles/drustack/composer.json	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/composer.json	Mon Mar 19 16:00:44 2018 +0100
@@ -21,7 +21,7 @@
     "repositories": [
         {
             "type": "composer",
-            "url": "https://packages.drupal.org/7"
+            "url": "https://packagist.drupal-composer.org"
         }
     ],
     "suggest": {
--- a/cms/drupal/profiles/drustack/drustack.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/drustack.info	Mon Mar 19 16:00:44 2018 +0100
@@ -20,9 +20,9 @@
 dependencies[] = libraries
 dependencies[] = strongarm
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/README.txt	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/README.txt	Mon Mar 19 16:00:44 2018 +0100
@@ -80,6 +80,10 @@
 unable to determine the compression type the file and will not function
 correctly.
 
+The module's permissions should only be given to trusted users due to the
+inherent security vulnerabilities in allowing people access to a site's database
+and/or files backups.
+
 IF A RESTORE FAILS:
 Don't panic, the restore file should work with phpMyAdmin's import function, or
 with the mysql command line tool. If it does not, then it is likely corrupt; you
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/backup_migrate.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/backup_migrate.info	Mon Mar 19 16:00:44 2018 +0100
@@ -1,17 +1,42 @@
 name = Backup and Migrate
 description = "Backup the Drupal database and files or migrate them to another environment."
 core = 7.x
-
-files[] = includes/destinations.inc
-files[] = includes/profiles.inc
-files[] = includes/schedules.inc
-
 configure = admin/config/system/backup_migrate
 
+; All of the class files used within the module.
+files[] = includes/crud.inc
+files[] = includes/destinations.inc
+files[] = includes/destinations.browser.inc
+files[] = includes/destinations.db.inc
+files[] = includes/destinations.db.mysql.inc
+files[] = includes/destinations.email.inc
+files[] = includes/destinations.file.inc
+files[] = includes/destinations.ftp.inc
+files[] = includes/destinations.nodesquirrel.inc
+files[] = includes/destinations.s3.inc
+files[] = includes/files.inc
+files[] = includes/filters.inc
+files[] = includes/filters.backup_restore.inc
+files[] = includes/filters.compression.inc
+files[] = includes/filters.encryption.inc
+files[] = includes/filters.statusnotify.inc
+files[] = includes/filters.utils.inc
+files[] = includes/locations.inc
+files[] = includes/profiles.inc
+files[] = includes/schedules.inc
+files[] = includes/sources.inc
+files[] = includes/sources.archivesource.inc
+files[] = includes/sources.db.inc
+files[] = includes/sources.db.mysql.inc
+files[] = includes/sources.filesource.inc
 
-; Information added by drush on 2015-10-26
-version = "7.x-3.1+6-dev"
+; Test suite.
+files[] = tests/BackupMigrateHelper.test
+files[] = tests/BackupMigrateBasicsTest.test
+
+; Information added by Drupal.org packaging script on 2018-02-05
+version = "7.x-3.5"
 core = "7.x"
 project = "backup_migrate"
-datestamp = "1445826955"
+datestamp = "1517871486"
 
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/backup_migrate.install	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/backup_migrate.install	Mon Mar 19 16:00:44 2018 +0100
@@ -12,6 +12,113 @@
  */
 function backup_migrate_requirements($phase) {
   $requirements = array();
+
+  // Ensure translations don't break during installation.
+  $t = get_t();
+
+  if ($phase == 'runtime') {
+    // Get a list of all destinations, make sure none of them are publicly
+    // accessible.
+    // @todo Expand the API to add methods to specifically check this.
+    backup_migrate_include('destinations');
+    foreach (backup_migrate_get_destinations() as $dest_name => $destination) {
+      if (method_exists($destination, 'get_display_location')) {
+        $dest_path = $destination->get_display_location();
+        if (!empty($dest_path) && file_valid_uri($dest_path)) {
+          $scheme = file_uri_scheme($dest_path);
+          // Support public and private storage and raw server paths.
+          if ($scheme === 'private' || $scheme === 'public' || substr($dest_path, 0, 1) == '/') {
+            // Check if the path exists.
+            $path_exists = file_prepare_directory($dest_path, FILE_CREATE_DIRECTORY);
+            if ($path_exists) {
+              $real_path = drupal_realpath($dest_path);
+              // See if the private path is somewhere inside the main Drupal
+              // directory structure.
+              if (strpos($real_path, DRUPAL_ROOT) === 0) {
+                // Extract the relative path from the Drupal root path, and
+                // then add the base URL, theoretically creating a fully
+                // qualified URL to the storage directory.
+                $url = substr($real_path, strlen(DRUPAL_ROOT) + 1);
+                $url = url($url, array('absolute' => TRUE));
+                $result = drupal_http_request($url);
+
+                // If the HTTP request comes back as a status 200 that means
+                // there is a directory listing of some sort; directory paths
+                // should return a 503 error.
+                if (!empty($result->code) && $result->code == 200) {
+                  // Get the human readable information for this destination.
+                  $dest_spec = $destination->get_list_row();
+
+                  // Display a warning message.
+                  $requirements['bmdest_' . $dest_name] = array(
+                    'severity' => REQUIREMENT_ERROR,
+                    'title' => 'Backup Migrate',
+                    'value' => $t('Backup destination "%dest" is publicly accessible!', array('%dest' => $dest_spec['name'])),
+                    'description' => $t('The backup destination, "%dest", stores its files in the "%path" directory. This directory is publicly available from the web server and urgently needs to be secured! Please see the Drupal manual on <a href="@manual">configuring the private directory path</a> on how to fix this problem.',
+                      array(
+                        '%dest' => $dest_spec['name'],
+                        '%path'  => $real_path,
+                        '@manual' => 'https://www.drupal.org/docs/7/core/modules/file/overview',
+                      )),
+                  );
+                }
+
+                // Check an individual file.
+                else {
+                  $files = scandir($real_path);
+                  if (!empty($files)) {
+                    foreach ($files as $file) {
+                      // Skip the base field pointers.
+                      if ($file == '.' || $file == '..') {
+                        continue;
+                      }
+
+                      $result = drupal_http_request($url . '/' . $file);
+
+                      // If the HTTP request comes back as a status 200 that
+                      // means the file is accessible.
+                      if (!empty($result->code) && $result->code == 200) {
+                        // Get the human readable information for this
+                        // destination.
+                        $dest_spec = $destination->get_list_row();
+
+                        // Display a warning message.
+                        $requirements['bmdest_' . $dest_name] = array(
+                          'severity' => REQUIREMENT_ERROR,
+                          'title' => 'Backup Migrate',
+                          'value' => $t('Files in "%dest" are publicly accessible!', array('%dest' => $dest_spec['name'])),
+                          'description' => $t('The backup destination, "%dest", stores its files in the "%path" directory. These file(s) are publicly available from the web server and urgently need to be secured! Please see the Drupal manual on <a href="@manual">configuring the private directory path</a> on how to fix this problem.',
+                            array(
+                              '%dest' => $dest_spec['name'],
+                              '%path'  => $real_path,
+                              '@manual' => 'https://www.drupal.org/docs/7/core/modules/file/overview',
+                            )),
+                        );
+                      }
+
+                      // Only need to check one file.
+                      break;
+                    }
+                  }
+                }
+              }
+            }
+          }
+        }
+      }
+    }
+    // Leave a note if there were no problems.
+    // @todo No point in displaying this until the API has been expanded.
+    // if (empty($requirements)) {
+    //   $requirements['bmdest_' . $dest_name] = array(
+    //     'severity' => REQUIREMENT_INFO,
+    //     'title' => 'Backup Migrate',
+    //     'value' => $t('Backup destinations are safe'),
+    //     'description' => $t('The backup destinations were all checked and none of them were exposing files to the public. This is a good thing.'),
+    //   );
+    // }
+  }
+
   return $requirements;
 }
 
@@ -662,3 +769,10 @@
     'default' => 'builtin',
   ));
 }
+
+/**
+ * Leave a message to explain the mixup over the backup option.
+ */
+function backup_migrate_update_7306() {
+  drupal_set_message(t('Please note that release 7.x-3.4 had a bug which caused all backups to be overwritten instead of having a timestamp added. Please review all backup settings to ensure they work as intended.'), 'warning');
+}
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/backup_migrate.module	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/backup_migrate.module	Mon Mar 19 16:00:44 2018 +0100
@@ -303,26 +303,32 @@
     'access backup and migrate' => array(
       'title' => t('Access Backup and Migrate'),
       'description' => t('Access the Backup and Migrate admin section.'),
+      'restrict access' => TRUE,
     ),
     'perform backup' => array(
       'title' => t('Perform a backup'),
       'description' => t('Back up any of the available databases.'),
+      'restrict access' => TRUE,
     ),
     'access backup files' => array(
       'title' => t('Access backup files'),
       'description' => t('Access and download the previously created backup files.'),
+      'restrict access' => TRUE,
     ),
     'delete backup files' => array(
       'title' => t('Delete backup files'),
       'description' => t('Delete the previously created backup files.'),
+      'restrict access' => TRUE,
     ),
     'restore from backup' => array(
       'title' => t('Restore the site'),
       'description' => t('Restore the site\'s database from a backup file.'),
+      'restrict access' => TRUE,
     ),
     'administer backup and migrate' => array(
       'title' => t('Administer Backup and Migrate'),
       'description' => t('Edit Backup and Migrate profiles, schedules and destinations.'),
+      'restrict access' => TRUE,
     ),
   );
 }
@@ -1440,8 +1446,8 @@
   timer_start('backup_migrate_backup');
 
   // If not in 'safe mode', increase the maximum execution time:
-  if (!ini_get('safe_mode') && strpos(ini_get('disable_functions'), 'set_time_limit') === FALSE && ini_get('max_execution_time') < 1200) {
-    set_time_limit(variable_get('backup_migrate_backup_max_time', 1200));
+  if (!ini_get('safe_mode') && ini_get('max_execution_time') < variable_get('backup_migrate_backup_max_time', 1200)) {
+    drupal_set_time_limit(variable_get('backup_migrate_backup_max_time', 1200));
   }
 
   // Confirm the destinations are valid
@@ -1519,7 +1525,7 @@
 
   // If not in 'safe mode', increase the maximum execution time:
   if (!ini_get('safe_mode') && ini_get('max_execution_time') < variable_get('backup_migrate_backup_max_time', 1200)) {
-    set_time_limit(variable_get('backup_migrate_restore_max_time', 1200));
+    drupal_set_time_limit(variable_get('backup_migrate_restore_max_time', 1200));
   }
 
   // Make the settings into a default profile.
@@ -1867,5 +1873,20 @@
     }
     return t($string, array('@size' => round($size/$multiply, $precision)), array('langcode' => $langcode));
   }
+}
 
+/**
+ * Implements hook_mail().
+ */
+function backup_migrate_mail($key, &$message, $params) {
+  if ($key == 'backup_succeed') {
+    $message['id'] = 'backup_migrate_backup_succeed';
+    $message['subject'] = t('!site backup succeeded', array('!site' => variable_get('site_name', 'Drupal site')));
+    $message['body'][] = $params['body'];
+  }
+  elseif ($key == 'backup_fail') {
+    $message['id'] = 'backup_migrate_backup_fail';
+    $message['subject'] = t('!site backup failed', array('!site' => variable_get('site_name', 'Drupal site')));
+    $message['body'][] = $params['body'];
+  }
 }
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/backup_migrate.drush.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/backup_migrate.drush.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -15,9 +15,9 @@
     'description' => dt('Backup the site\'s database with Backup and Migrate.'),
     'aliases' => array('bb'),
     'examples' => array(
-      'drush bam-backup' => 'Backup the default databse to the manual backup directory using the default settings.', 
-      'drush bam-backup db scheduled mysettings' => 'Backup the database to the scheduled directory using a settings profile called "mysettings"', 
-      'drush bam-backup files' => 'Backup the files directory to the manual directory using the default settings. The Backup and Migrate Files module is required for files backups.', 
+      'drush bam-backup' => 'Backup the default database to the manual backup directory using the default settings.',
+      'drush bam-backup db scheduled mysettings' => 'Backup the database to the scheduled directory using a settings profile called "mysettings"',
+      'drush bam-backup files' => 'Backup the files directory to the manual directory using the default settings.',
     ),
     'arguments' => array(
       'source'        => "Optional. The id of the source (usually a database) to backup. Use 'drush bam-sources' to get a list of sources. Defaults to 'db'",
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/crud.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/crud.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -166,7 +166,7 @@
  * Page callback to list all items.
  */
 function backup_migrate_crud_ui_list_all() {
-  $out = '';
+  $out = array();
   foreach (backup_migrate_crud_types() as $type => $info) {
     $type = backup_migrate_crud_type_load($type);
     $out[] = theme('backup_migrate_group', array('title' => t($type->title_plural), 'body' => $type->get_list()));
@@ -908,7 +908,6 @@
    * Get all of the given items.
    */
   function all_items() {
-    static $cache = array();
     $items = array();
 
     // Get any items stored as a variable. This allows destinations to be defined in settings.php
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.db.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.db.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -62,50 +62,57 @@
   }
 
   /**
-   * Get the form for the settings for this destination.
+   * Get the default settings for this object.
    *
-   * Return the default tables whose data can be ignored. These tables mostly contain
-   *  info which can be easily reproducted (such as cache or search index)
-   *  but also tables which can become quite bloated but are not necessarily extremely
-   *  important to back up or migrate during development (such ass access log and watchdog)
+   * @return array
+   *   The default tables whose data can be ignored. These tables mostly
+   *   contain info which can be easily reproducted (such as cache or search
+   *   index) but also tables which can become quite bloated but are not
+   *   necessarily extremely important to back up or migrate during development
+   *   (such as access log and watchdog).
    */
   function backup_settings_default() {
-    $core = array(
-        'cache',
-        'cache_admin_menu',
-        'cache_browscap',
-        'cache_content',
-        'cache_filter',
-        'cache_calendar_ical',
-        'cache_location',
-        'cache_menu',
-        'cache_page',
-        'cache_reptag',
-        'cache_views',
-        'cache_views_data',
-        'cache_block',
-        'cache_update',
-        'cache_form',
-        'cache_bootstrap',
-        'cache_field',
-        'cache_image',
-        'cache_path',
-        'sessions',
-        'search_dataset',
-        'search_index',
-        'search_keywords_log',
-        'search_total',
-        'watchdog',
-        'accesslog',
-        'devel_queries',
-        'devel_times',
-      );
-    $nodata_tables = array_merge($core, module_invoke_all('devel_caches'));
-     return array(
-      'nodata_tables' => $nodata_tables,
-      'exclude_tables' => array(),
+    $all_tables = $this->_get_table_names();
+
+    // Basic modules that should be excluded.
+    $basic = array(
+      // Default core tables.
+      'accesslog',
+      'sessions',
+      'watchdog',
+      // Search module.
+      'search_dataset',
+      'search_index',
+      'search_keywords_log',
+      'search_total',
+      // Devel module.
+      'devel_queries',
+      'devel_times',
+    );
+
+    // Identify all cache tables.
+    $cache = array('cache');
+    foreach ($all_tables as $table_name) {
+      if (strpos($table_name, 'cache_') === 0) {
+        $cache[] = $table_name;
+      }
+    }
+
+    // Simpletest can create a lot of tables that do not need to be backed up,
+    // but all of them start with the string 'simpletest' so they can be easily
+    // excluded.
+    $simpletest = array();
+    foreach ($all_tables as $table_name) {
+      if (strpos($table_name, 'simpletest') === 0) {
+        $simpletest[] = $table_name;
+      }
+    }
+
+    return array(
+      'nodata_tables' => array_merge($basic, $cache, module_invoke_all('devel_caches')),
+      'exclude_tables' => $simpletest,
       'utils_lock_tables' => FALSE,
-   );
+    );
   }
 
   /**
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.db.mysql.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.db.mysql.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -232,7 +232,7 @@
     $out = '';
     while ($line = $file->read()) {
       $first2 = substr($line, 0, 2);
-      $first3 = substr($line, 0, 2);
+      $first3 = substr($line, 0, 3);
 
       // Ignore single line comments. This function doesn't support multiline comments or inline comments.
       if ($first2 != '--' && ($first2 != '/*' || $first3 == '/*!')) {
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.email.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.email.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -93,7 +93,7 @@
   var $subject;
   var $body;
 
-  function mime_mail() {
+  function __construct() {
     $this->parts   = array();
     $this->to      = "";
     $this->from    = "";
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.file.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.file.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -32,13 +32,17 @@
   function _save_file($file, $settings) {
     if ($this->confirm_destination() && $dir = $this->get_location()) {
       $filepath = rtrim($dir, "/") ."/". $file->filename();
+
+      // Allow files to be overwritten by the filesystem.
+      $replace_method = $settings->append_timestamp == 2 ? FILE_EXISTS_REPLACE : FILE_EXISTS_RENAME;
+
       // Copy the file if there are multiple destinations.
       if (count($settings->get_destinations()) > 1) {
-        file_unmanaged_copy($file->filepath(), $filepath);
+        file_unmanaged_copy($file->filepath(), $filepath, $replace_method);
       }
       // Otherwise we can move it and save a delete.
       else {
-        file_unmanaged_move($file->filepath(), $filepath);
+        file_unmanaged_move($file->filepath(), $filepath, $replace_method);
       }
 
       // chmod, chown and chgrp the file if needed.
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -134,7 +134,7 @@
  *    'all' - all available destinations should be returned
  */
 function backup_migrate_get_destinations($op = 'all') {
-  static $destinations = NULL;
+  $destinations = &drupal_static('backup_migrate_get_destinations', NULL);
 
   // Get the list of destinations and cache them locally.
   if ($destinations === NULL) {
@@ -404,7 +404,7 @@
       $start = 0;
 
       if ($options['pager']) {
-        $page = isset($_GET['page']) ? $_GET['page'] : '';
+        $page = isset($_GET['page']) ? intval($_GET['page']) : 0;
         $start = $page * $limit;
 
         $element = 0;
@@ -419,12 +419,12 @@
           );
         $pager = theme('pager', $tags, $limit, $element, array(), ceil($total/$limit));
 
-        $end = min($total - 1, $start + $limit);
+        $end = min($total, $start + $limit);
       }
       if ($total > $limit && $options['more']) {
         $more = ' ' . l(t('view all'), $options['more']);
       }
-      $showing = t('Showing @start to @end of @total files.', array('@start' => $start + 1, '@end' => $end + 1, '@total' => $total));
+      $showing = t('Showing @start to @end of @total files.', array('@start' => $start + 1, '@end' => $end, '@total' => $total));
 
       // Limit the number of rows shown.
       $rows = array_slice($rows, $start, $limit, TRUE);
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.nodesquirrel.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/destinations.nodesquirrel.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -108,6 +108,13 @@
     $form['nodesquirrel_credentials']['secret_key_help'] = backup_migrate_nodesquirrel_get_activate_help_text();
   }
 
+  $form['nodesquirrel_credentials']['nodesquirrel_failover'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Connection failover by disabling SSL certification validation'),
+    '#description' => t("If normal connections to NodeSquirrel fail due incompatibility between this server's PHP installation and the destination server, use this option to disable validating the destination's SSL certificate.<br />Note: <em>this has security implications</em> and should be the last option taken; it probably would be safer to update the server's PHP."),
+    '#default_value' => variable_get('nodesquirrel_failover', FALSE),
+  );
+
   return $form;
 }
 
@@ -320,15 +327,8 @@
   var $cache_files = TRUE;
   // Don't generate a metadata file as NodeSquirrel can save metadata natively.
   var $save_metadata = FALSE;
-
-  /**
-   * Get the destination name. Provide a default.
-   */
-  function get_name() {
-    if (empty($this->name)) {
-      return t('NodeSquirrel');
-    }
-    return $this->name;
+  function __construct($params = array()) {
+    parent::__construct($params + array('name' => t('NodeSquirrel')));
   }
 
   /**
@@ -672,7 +672,24 @@
   
           $url = $this->add_scheme($url);
 
-          $out = xmlrpc($url, array($method => $args));
+          $options = array();
+          // Optionally disable SSL certification validation. This may be
+          // necessary if the server's SSL certificates are out of date because
+          // and might be incompatible with PHP 5.6's OpenSSL implementation.
+          // @see http://php.net/manual/en/migration56.openssl.php
+          // @see http://php.net/manual/en/context.ssl.php#context.ssl.verify-peer
+          if (variable_get('nodesquirrel_failover', FALSE)) {
+            $opts = array(
+              'ssl' => array(
+                'verify_peer' => FALSE,
+              ),
+            );
+            $options = array(
+              'context' => stream_context_create($opts),
+            );
+          }
+
+          $out = xmlrpc($url, array($method => $args), $options);
   
           // Check for errors.
           $err = xmlrpc_error();
@@ -798,6 +815,9 @@
       return $result;
     }
   
+    // Avoid some "undefined variable" errors.
+    $errno = $errstr = NULL;
+
     switch ($uri['scheme']) {
       case 'http':
       case 'feed':
@@ -806,17 +826,33 @@
         $fp = @fsockopen($uri['host'], $port, $errno, $errstr, 15);
         break;
       case 'https':
-        // Note: Only works for PHP 4.3 compiled with OpenSSL.
+        // Note: Only works for PHP 4.3+ compiled with OpenSSL.
         $port = isset($uri['port']) ? $uri['port'] : 443;
         $host = $uri['host'] . ($port != 443 ? ':'. $port : '');
         $fp = @fsockopen('ssl://'. $uri['host'], $port, $errno, $errstr, 20);
+
+        // If fsockopen() doesn't work, try again after disabling SSL.
+        // Optionally disable SSL certification validation. This may be
+        // necessary if the server's SSL certificates are out of date and/or
+        // might be incompatible with PHP 5.6's OpenSSL implementation.
+        // @see http://php.net/manual/en/migration56.openssl.php
+        // @see http://php.net/manual/en/context.ssl.php#context.ssl.verify-peer
+        if (!$fp && variable_get('nodesquirrel_failover', FALSE)) {
+          $opts = array(
+            'ssl' => array(
+              'verify_peer' => FALSE,
+            ),
+          );
+          $context = stream_context_create($opts);
+          $fp = stream_socket_client('ssl://'. $uri['host'] . ':' . $port, $errno, $errstr, 20, STREAM_CLIENT_CONNECT, $context);
+        }
         break;
       default:
         $result->error = 'invalid schema '. $uri['scheme'];
         $result->code = -1003;
         return $result;
     }
-  
+
     // Make sure the socket opened properly.
     if (!$fp) {
       // When a network error occurs, we use a negative number so it does not
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/files.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/files.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -12,7 +12,7 @@
  * Add a file to the temporary files list for deletion when we're done.
  */
 function backup_migrate_temp_files_add($filepath = NULL) {
-  static $files = array();
+  $files = &drupal_static('backup_migrate_temp_files_add', array());
   if (!$filepath) {
     return $files;
   }
@@ -154,7 +154,7 @@
 
   // Generate a timestamp if needed.
   $timestamp = '';
-  if ($settings->append_timestamp && $settings->timestamp_format) {
+  if ($settings->append_timestamp == 1 && $settings->timestamp_format) {
     $timestamp = format_date(time(), 'custom', $settings->timestamp_format);
   }
 
@@ -213,7 +213,7 @@
   /**
    * Construct a file object given a file path, or create a temp file for writing.
    */
-  function backup_file($params = array()) {
+  function __construct($params = array()) {
     if (isset($params['filepath']) && file_exists($params['filepath'])) {
       $this->set_filepath($params['filepath']);
     }
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/filters.backup_restore.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/filters.backup_restore.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -209,7 +209,7 @@
    */
   function _get_destination_types() {
     backup_migrate_include('destinations');
-    static $destinations = NULL;
+    $destinations = &drupal_static('backup_migrate_filter_backup_restore::_get_destination_types', NULL);
     if (!is_array($destinations)) {
       $destinations = array();
       $types = backup_migrate_get_destination_subtypes();
@@ -230,7 +230,7 @@
    */
   function _get_source_types() {
     backup_migrate_include('sources');
-    static $sources = NULL;
+    $sources = &drupal_static('backup_migrate_filter_backup_restore::_get_source_types', NULL);
     if (!is_array($sources)) {
       $sources = array();
       $types = backup_migrate_get_source_subtypes();
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/filters.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/filters.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -10,7 +10,7 @@
  * Get the available destination types.
  */
 function backup_migrate_get_filters($op = NULL) {
-  static $filters = NULL;
+  $filters = &drupal_static('backup_migrate_get_filters', NULL);
   if ($filters === NULL) {
     $filters = array();
     $definitions = module_invoke_all('backup_migrate_filters');
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/filters.statusnotify.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/filters.statusnotify.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -71,14 +71,13 @@
   function backup_succeed($settings) {
     if (@$settings->filters['notify_success_enable'] && $to = @$settings->filters['notify_success_email']) {
       $messages = $this->get_messages();
-      $subject = t('!site backup succeeded', array('!site' => variable_get('site_name', 'Drupal site')));
       if ($messages = $this->get_messages()) {
         $body = t("The site backup has completed successfully with the following messages:\n!messages", array('!messages' => $messages));
       }
       else {
         $body = t("The site backup has completed successfully.\n");
       }
-      mail($settings->filters['notify_success_email'], $subject, $body);
+      drupal_mail('backup_migrate', 'backup_succeed', $settings->filters['notify_success_email'], language_default(), array('body' => $body));
     }
   }
 
@@ -88,14 +87,13 @@
   function backup_fail($settings) {
     if (@$settings->filters['notify_failure_enable'] && $to = @$settings->filters['notify_failure_email']) {
       $messages = $this->get_messages();
-      $subject = t('!site backup failed', array('!site' => variable_get('site_name', 'Drupal site')));
       if ($messages = $this->get_messages()) {
         $body = t("The site backup has failed with the following messages:\n!messages", array('!messages' => $messages));
       }
       else {
         $body = t("The site backup has failed for an unknown reason.");
       }
-      mail($settings->filters['notify_failure_email'], $subject, $body);
+      drupal_mail('backup_migrate', 'backup_fail', $settings->filters['notify_failure_email'], language_default(), array('body' => $body));
     }
   }
 
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/locations.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/locations.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -45,7 +45,7 @@
  *    'all' - all available locations should be returned
  */
 function backup_migrate_get_locations($op = 'all') {
-  static $locations = NULL;
+  $locations = &drupal_static('backup_migrate_get_locations', NULL);
 
   // Get the list of locations and cache them locally.
   if ($locations === NULL) {
@@ -369,7 +369,7 @@
     return $out;
   }
 
-   /**
+  /**
    * Get a url from the parts.
    */
   function url($hide_password = TRUE) {
@@ -443,44 +443,6 @@
   }
 
   /**
-   * Get a url from the parts.
-   */
-  function url($hide_password = TRUE) {
-    return $this->glue_url($this->dest_url, $hide_password);
-  }
-
-  /**
-   * Glue a URLs component parts back into a URL.
-   */
-  function glue_url($parts, $hide_password = TRUE) {
-    // Obscure the password if we need to.
-    $parts['pass'] = $hide_password ? "" : $parts['pass'];
-
-    // Assemble the URL.
-    $out = "";
-    $out .= $parts['scheme'] .'://';
-    $out .= $parts['user'] ? urlencode($parts['user']) : '';
-    $out .= ($parts['user'] && $parts['pass']) ? ":". urlencode($parts['pass']) : '';
-    $out .= ($parts['user'] || $parts['pass']) ? "@" : "";
-    $out .= $parts['host'];
-    $out .= !empty($parts['port']) ? ':'. $parts['port'] : '';
-    $out .= "/". $parts['path'];
-    return $out;
-  }
-
-  /**
-   * Break a URL into it's component parts.
-   */
-  function set_url($url) {
-    $parts          = (array)parse_url($url);
-    $parts['user'] = urldecode(@$parts['user']);
-    $parts['pass'] = urldecode(@$parts['pass']);
-    $parts['path'] = urldecode(@$parts['path']);
-    $parts['path']  = ltrim(@$parts['path'], "/");
-    $this->dest_url = $parts;
-  }
-
-  /**
    * location configuration callback.
    */
   function edit_form() {
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/profiles.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/profiles.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -32,12 +32,7 @@
  */
 function backup_migrate_get_profiles() {
   backup_migrate_include('filters');
-  static $profiles = NULL;
-
-  // Get the list of profiles and cache them locally.
-  if ($profiles === NULL) {
-    $profiles = backup_migrate_crud_get_items('profile');
-  }
+  $profiles = backup_migrate_crud_get_items('profile');
   return $profiles;
 }
 
@@ -126,14 +121,19 @@
   }
 
   $form['file']['append_timestamp'] = array(
-    "#type" => "checkbox",
-    "#title" => t("Append a timestamp."),
+    "#type" => "radios",
+    '#options' => array(
+      0 => t('Create separate backups if `Backup file name` already exists'),
+      2 => t('Overwrite the existing backup file'),
+      1 => t('Append the timestamp'),
+    ),
+    "#title" => t("Save mode"),
     "#default_value" => $profile->append_timestamp,
   );
   $form['file']['timestamp_format_wrapper'] = array(
     '#type' => 'backup_migrate_dependent',
     '#dependencies' => array(
-      'append_timestamp' => TRUE,
+      'append_timestamp' => 1,
     ),
   );
   $form['file']['timestamp_format_wrapper']['timestamp_format'] = array(
@@ -215,6 +215,25 @@
   var $title_singular = 'Settings Profile';
 
   /**
+   * Perform a shallow merge of the defaults and the parameters.
+   *
+   * This is needed because otherwise it will *combine* the nested arrays and
+   * make it impossible to deselect database tables from the 'nodata' setting.
+   *
+   * @param array $params
+   */
+  public function __construct(array $params = array()) {
+    $params = (array)$params;
+    $defaults = (array)$this->get_default_values();
+    foreach ($defaults as $key => $val) {
+      if (!isset($params[$key])) {
+        $params[$key] = $val;
+      }
+    }
+    $this->from_array($params);
+  }
+
+  /**
    * This function is not supposed to be called. It is just here to help the po extractor out.
    */
   function strings() {
@@ -366,4 +385,3 @@
     return t('Are you sure you want to delete the profile %name? Any schedules using this profile will be disabled.', array('%name' => $this->get('name')));
   }
 }
-
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/schedules.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/schedules.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -67,7 +67,7 @@
  */
 function backup_migrate_schedule_run($schedule_id) {
   backup_migrate_include('profiles');
-  if ($schedule = backup_migrate_get_schedule($schedule_id)) {
+  if (($schedule = backup_migrate_get_schedule($schedule_id)) && $schedule->is_enabled()) {
     $schedule->run();
   }
   backup_migrate_cleanup();
@@ -77,7 +77,7 @@
  * Get all the available backup schedules.
  */
 function backup_migrate_get_schedules() {
-  static $schedules = NULL;
+  $schedules = &drupal_static('backup_migrate_get_schedules');
   // Get the list of schedules and cache them locally.
   if ($schedules === NULL) {
     $schedules = backup_migrate_crud_get_items('schedule');
@@ -474,7 +474,7 @@
       "#default_value" => $cron ? $cron : BACKUP_MIGRATE_CRON_BUILTIN,
       '#parents' => array('cron'),
     );
-    if (!module_exists('elysia_cron')) {
+    if (!module_exists('elysia_cron') && !module_exists('ultimate_cron')) {
       $form['cron_settings']['cron_elysia']['#disabled'] = TRUE;
       $form['cron_settings']['cron_elysia']['#description'] .= ' ' . t('Install !elysia to enable this option.', array('!elysia' => l(t('Elysia Cron'), 'http://drupal.org/project/elysia_cron')));
     }
@@ -636,6 +636,10 @@
    * Run the actual schedule.
    */
   function run() {
+    // Clear cached profile data which could have been altered by previous
+    // schedule run; see #2672478
+    drupal_static_reset('backup_migrate_get_profiles');
+
     if ($settings = $this->get_profile()) {
       $settings->source_id = $this->get('source_id');
       $settings->destination_id = $this->get('destination_ids');
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.archivesource.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.archivesource.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -216,7 +216,7 @@
 
       // Restore the sql db.
       if ($sqlfile && file_exists($sqlfile)) {
-        $db_settings = clone($settings);
+        $db_settings = clone $settings;
         $db_settings->source_id = 'db';
         $file = new backup_file(array('filepath' => $sqlfile));
         $success = backup_migrate_filters_restore($file, $db_settings);
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.db.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.db.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -61,50 +61,57 @@
   }
 
   /**
-   * Get the form for the settings for this destination.
+   * Get the default settings for this object.
    *
-   * Return the default tables whose data can be ignored. These tables mostly contain
-   *  info which can be easily reproducted (such as cache or search index)
-   *  but also tables which can become quite bloated but are not necessarily extremely
-   *  important to back up or migrate during development (such ass access log and watchdog)
+   * @return array
+   *   The default tables whose data can be ignored. These tables mostly
+   *   contain info which can be easily reproducted (such as cache or search
+   *   index) but also tables which can become quite bloated but are not
+   *   necessarily extremely important to back up or migrate during development
+   *   (such as access log and watchdog).
    */
   function backup_settings_default() {
-    $core = array(
-        'cache',
-        'cache_admin_menu',
-        'cache_browscap',
-        'cache_content',
-        'cache_filter',
-        'cache_calendar_ical',
-        'cache_location',
-        'cache_menu',
-        'cache_page',
-        'cache_reptag',
-        'cache_views',
-        'cache_views_data',
-        'cache_block',
-        'cache_update',
-        'cache_form',
-        'cache_bootstrap',
-        'cache_field',
-        'cache_image',
-        'cache_path',
-        'sessions',
-        'search_dataset',
-        'search_index',
-        'search_keywords_log',
-        'search_total',
-        'watchdog',
-        'accesslog',
-        'devel_queries',
-        'devel_times',
-      );
-    $nodata_tables = array_merge($core, module_invoke_all('devel_caches'));
-     return array(
-      'nodata_tables' => $nodata_tables,
-      'exclude_tables' => array(),
+    $all_tables = $this->_get_table_names();
+
+    // Basic modules that should be excluded.
+    $basic = array(
+      // Default core tables.
+      'accesslog',
+      'sessions',
+      'watchdog',
+      // Search module.
+      'search_dataset',
+      'search_index',
+      'search_keywords_log',
+      'search_total',
+      // Devel module.
+      'devel_queries',
+      'devel_times',
+    );
+
+    // Identify all cache tables.
+    $cache = array('cache');
+    foreach ($all_tables as $table_name) {
+      if (strpos($table_name, 'cache_') === 0) {
+        $cache[] = $table_name;
+      }
+    }
+
+    // Simpletest can create a lot of tables that do not need to be backed up,
+    // but all of them start with the string 'simpletest' so they can be easily
+    // excluded.
+    $simpletest = array();
+    foreach ($all_tables as $table_name) {
+      if (strpos($table_name, 'simpletest') === 0) {
+        $simpletest[] = $table_name;
+      }
+    }
+
+    return array(
+      'nodata_tables' => drupal_map_assoc(array_merge($basic, $cache, module_invoke_all('devel_caches'))),
+      'exclude_tables' => $simpletest,
       'utils_lock_tables' => FALSE,
-   );
+    );
   }
 
   /**
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.db.mysql.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.db.mysql.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -220,7 +220,7 @@
     $out = '';
     while ($line = $file->read()) {
       $first2 = substr($line, 0, 2);
-      $first3 = substr($line, 0, 2);
+      $first3 = substr($line, 0, 3);
 
       // Ignore single line comments. This function doesn't support multiline comments or inline comments.
       if ($first2 != '--' && ($first2 != '/*' || $first3 == '/*!')) {
--- a/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.filesource.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/backup_migrate/includes/sources.filesource.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -41,7 +41,7 @@
       "#title" => t("Directory path"),
       "#default_value" => $this->get_location(),
       "#required" => TRUE,
-      "#description" => t('Enter the path to the directory to save the backups to. Use a relative path to pick a path relative to your Drupal root directory. The web server must be able to write to this path.'),
+      "#description" => t('Enter the path to the directory to back up. Use a relative path to pick a path relative to your Drupal root directory. The web server must be able to read from this path.'),
     );
     return $form;
   }
@@ -69,7 +69,7 @@
    */
   function backup_settings_default() {
      return array(
-      'exclude_filepaths' => "backup_migrate\nstyles\ncss\njs\nctools\nless",
+      'exclude_filepaths' => "backup_migrate\nstyles\ncss\njs\nctools\nless\nlanguages",
     );
   }
 
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/PATCHES.txt	Mon Mar 19 15:45:08 2018 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-The following patches have been applied to this project:
-- https://drupal.org/files/issues/entity-ctools-content-type-from-context-2020325-31.patch
-
-This file was automatically generated by Drush Make (http://drupal.org/project/drush).
\ No newline at end of file
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/ctools/content_types/entity_view.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/ctools/content_types/entity_view.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -113,13 +113,8 @@
   $block->delta = $entity_type . '-' . str_replace('-', '_', $conf['view_mode']);
 
   $entity_id = $context->argument;
-  if (!empty($context->data)) {
-    $entity = clone $context->data;
-    $block->content = entity_view($entity_type, array($entity_id => $entity), $conf['view_mode']);
-  }
-  else {
-    $block->content = '';
-  }
+  $entity = entity_load_single($entity_type, $entity_id);
+  $block->content = entity_view($entity_type, array($entity_id => $entity), $conf['view_mode']);
   return $block;
 }
 
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/entity.features.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/entity.features.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -91,6 +91,7 @@
           $fields = field_info_instances($this->info['bundle of'], $entity->{$this->bundleKey});
           foreach ($fields as $name => $field) {
             $pipe['field'][] = "{$field['entity_type']}-{$field['bundle']}-{$field['field_name']}";
+            $pipe['field_instance'][] = "{$field['entity_type']}-{$field['bundle']}-{$field['field_name']}";
           }
         }
       }
@@ -131,9 +132,7 @@
    */
   function revert($module = NULL) {
     if ($defaults = features_get_default($this->type, $module)) {
-      foreach ($defaults as $name => $entity) {
-        entity_delete($this->type, $name);
-      }
+      entity_delete_multiple($this->type, array_keys($defaults));
     }
   }
 }
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/entity.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/entity.info	Mon Mar 19 16:00:44 2018 +0100
@@ -25,10 +25,9 @@
 files[] = views/handlers/entity_views_handler_relationship_by_bundle.inc
 files[] = views/handlers/entity_views_handler_relationship.inc
 files[] = views/plugins/entity_views_plugin_row_entity_view.inc
-
-; Information added by drush on 2015-10-26
-version = "7.x-1.6+6-dev"
+; Information added by Drupal.org packaging script on 2018-02-14
+version = "7.x-1.9"
 core = "7.x"
 project = "entity"
-datestamp = "1445826948"
+datestamp = "1518620551"
 
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/entity.module	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/entity.module	Mon Mar 19 16:00:44 2018 +0100
@@ -604,7 +604,7 @@
  *   content language of the current request.
  * @param $page
  *   (optional) If set will control if the entity is rendered: if TRUE
- *   the entity will be rendered without its title, so that it can be embeded
+ *   the entity will be rendered without its title, so that it can be embedded
  *   in another context. If FALSE the entity will be displayed with its title
  *   in a mode suitable for lists.
  *   If unset, the page mode will be enabled if the current path is the URI
@@ -1088,9 +1088,10 @@
   // Care about entitycache tables.
   if (module_exists('entitycache')) {
     $tables = array();
-    foreach (entity_crud_get_info() as $entity_type => $entity_info) {
-      if (isset($entity_info['module']) && !empty($entity_info['entity cache'])) {
-        $tables[] = 'cache_entity_' . $entity_type;
+    $tables_created = variable_get('entity_cache_tables_created');
+    if (is_array($tables_created)) {
+      foreach ($tables_created as $module => $entity_cache_tables) {
+        $tables = array_merge($tables, $entity_cache_tables);
       }
     }
     return $tables;
@@ -1377,7 +1378,7 @@
  * Returns a property wrapper for the given data.
  *
  * If an entity is wrapped, the wrapper can be used to retrieve further wrappers
- * for the entitity properties. For that the wrapper support chaining, e.g. you
+ * for the entity properties. For that the wrapper support chaining, e.g. you
  * can use a node wrapper to get the node authors mail address:
  *
  * @code
@@ -1568,7 +1569,7 @@
  * Implements hook_ctools_plugin_directory().
  */
 function entity_ctools_plugin_directory($module, $plugin) {
-  if ($module == 'ctools' && $plugin == 'content_types') {
-    return 'ctools/content_types';
+  if ($module == 'ctools') {
+    return "ctools/$plugin";
   }
 }
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/entity.test	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/entity.test	Mon Mar 19 16:00:44 2018 +0100
@@ -1343,6 +1343,74 @@
 }
 
 /**
+ * Tests basic entity_access() functionality for taxonomy terms.
+ */
+class EntityMetadataTaxonomyAccessTestCase extends EntityWebTestCase {
+  public static function getInfo() {
+    return array(
+      'name' => 'Entity Metadata Taxonomy Access',
+      'description' => 'Test entity_access() for taxonomy terms',
+      'group' => 'Entity API',
+    );
+  }
+
+  /**
+   * Asserts entity_access() correctly grants or denies access.
+   */
+  function assertTaxonomyMetadataAccess($ops, $term, $account) {
+    foreach ($ops as $op => $result) {
+      $msg = t("entity_access() returns @result with operation '@op'.", array('@result' => $result ? 'TRUE' : 'FALSE', '@op' => $op));
+      $access = entity_access($op, 'taxonomy_term', $term, $account);
+      $this->assertEqual($result, $access, $msg);
+    }
+  }
+
+  /**
+   * @inheritdoc
+   */
+  function setUp() {
+    parent::setUp('entity', 'taxonomy');
+    // Clear permissions for authenticated users.
+    db_delete('role_permission')
+      ->condition('rid', DRUPAL_AUTHENTICATED_RID)
+      ->execute();
+  }
+
+  /**
+   * Runs basic tests for entity_access() function.
+   */
+  function testTaxonomyMetadataAccess() {
+    $vocab = $this->createVocabulary();
+    $term = entity_property_values_create_entity('taxonomy_term', array(
+      'name' => $this->randomName(),
+      'vocabulary' => $vocab,
+    ))->save()->value();
+    // Clear permissions static cache to get new taxonomy permissions.
+    drupal_static_reset('checkPermissions');
+
+    // Check assignment of view permissions.
+    $user1 = $this->drupalCreateUser(array('access content'));
+    $this->assertTaxonomyMetadataAccess(array('create' => FALSE, 'view' => TRUE, 'update' => FALSE, 'delete' => FALSE), $term, $user1);
+
+    // Check assignment of edit permissions.
+    $user2 = $this->drupalCreateUser(array('edit terms in ' . $vocab->vid));
+    $this->assertTaxonomyMetadataAccess(array('create' => FALSE, 'view' => FALSE, 'update' => TRUE, 'delete' => FALSE), $term, $user2);
+
+    // Check assignment of delete permissions.
+    $user3 = $this->drupalCreateUser(array('delete terms in ' . $vocab->vid));
+    $this->assertTaxonomyMetadataAccess(array('create' => FALSE, 'view' => FALSE, 'update' => FALSE, 'delete' => TRUE), $term, $user3);
+
+    // Check assignment of view, edit, delete permissions.
+    $user4 = $this->drupalCreateUser(array('access content', 'edit terms in ' . $vocab->vid, 'delete terms in ' . $vocab->vid));
+    $this->assertTaxonomyMetadataAccess(array('create' => FALSE, 'view' => TRUE, 'update' => TRUE, 'delete' => TRUE), $term, $user4);
+
+    // Check assignment of administration permissions.
+    $user5 = $this->drupalCreateUser(array('administer taxonomy'));
+    $this->assertTaxonomyMetadataAccess(array('create' => TRUE, 'view' => TRUE, 'update' => TRUE, 'delete' => TRUE), $term, $user5);
+  }
+}
+
+/**
  * Tests provided entity property info of the core modules.
  */
 class EntityTokenTestCase extends EntityWebTestCase {
@@ -1466,6 +1534,7 @@
     $book = array('bid' => $node->nid, 'plid' => $node->book['mlid']);
     $node2 = $this->drupalCreateNode(array('type' => 'book', 'book' => $book));
     $node3 = $this->drupalCreateNode(array('type' => 'page'));
+    $node4 = $this->drupalCreateNode(array('type' => 'book', 'book' => array('bid' => 0, 'plid' => -1)));
 
     // Test whether the properties work.
     $wrapper = entity_metadata_wrapper('node', $node2);
@@ -1477,6 +1546,10 @@
     $wrapper = entity_metadata_wrapper('node', $node3);
     $this->assertEmpty($wrapper, 'book');
     $this->assertEmptyArray($wrapper, 'book_ancestors');
+
+    // Test a book node which is not contained in a hierarchy.
+    $wrapper = entity_metadata_wrapper('node', $node4);
+    $this->assertEmptyArray($wrapper, 'book_ancestors');
   }
 
   /**
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/entity_token.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/entity_token.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,10 +5,9 @@
 files[] = entity_token.module
 dependencies[] = entity
 
-
-; Information added by drush on 2015-10-26
-version = "7.x-1.6+6-dev"
+; Information added by Drupal.org packaging script on 2018-02-14
+version = "7.x-1.9"
 core = "7.x"
 project = "entity"
-datestamp = "1445826948"
+datestamp = "1518620551"
 
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.controller.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.controller.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -107,7 +107,7 @@
    *   content language of the current request.
    * @param $page
    *   (optional) If set will control if the entity is rendered: if TRUE
-   *   the entity will be rendered without its title, so that it can be embeded
+   *   the entity will be rendered without its title, so that it can be embedded
    *   in another context. If FALSE the entity will be displayed with its title
    *   in a mode suitable for lists.
    *   If unset, the page mode will be enabled if the current path is the URI
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.property.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.property.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -69,7 +69,7 @@
  *   (optiona) The entity type to return properties for.
  *
  * @return
- *   An array of info about properties. If the type is ommitted, all known
+ *   An array of info about properties. If the type is omitted, all known
  *   properties are returned.
  */
 function entity_get_all_property_info($entity_type = NULL) {
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.ui.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.ui.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -645,7 +645,7 @@
  */
 function entity_ui_main_form_defaults($form, &$form_state, $entity = NULL, $op = NULL) {
   // Now equals entity_ui_form_defaults() but is still here to keep backward
-  // compatability.
+  // compatibility.
   return entity_ui_form_defaults($form, $form_state, $form_state['entity_type'], $entity, $op);
 }
 
@@ -760,7 +760,7 @@
 function theme_entity_ui_overview_item($variables) {
   $output = $variables['url'] ? l($variables['label'], $variables['url']['path'], $variables['url']['options']) : check_plain($variables['label']);
   if ($variables['name']) {
-    $output .= ' <small> (' . t('Machine name') . ': ' . check_plain($variables['name']) . ')</small>';
+    $output .= ' <small>(' . t('Machine name') . ': ' . check_plain($variables['name']) . ')</small>';
   }
   return $output;
 }
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.wrapper.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/includes/entity.wrapper.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -119,7 +119,11 @@
    */
   public function set($value) {
     if (!$this->validate($value)) {
-      throw new EntityMetadataWrapperException('Invalid data value given. Be sure it matches the required data type and format.');
+      throw new EntityMetadataWrapperException(t('Invalid data value given. Be sure it matches the required data type and format. Value at !location: !value.', array(
+        // An exception's message is output through check_plain().
+        '!value' => is_array($value) || is_object($value) ? var_export($value, TRUE) : $value,
+        '!location' => $this->debugIdentifierLocation(),
+      )));
     }
     $this->clear();
     $this->data = $value;
@@ -232,6 +236,21 @@
   }
 
   /**
+   * Returns a string to use to identify this wrapper in error messages.
+   *
+   * @return
+   *  A string that identifies this wrapper and its chain of ancestors, of the
+   *  form 'grandparentidentifier->parentidentifier->identifier'.
+   */
+  public function debugIdentifierLocation() {
+    $debug = $this->info['name'];
+    if (isset($this->info['parent'])) {
+      $debug = $this->info['parent']->debugIdentifierLocation() . '->' . $debug;
+    }
+    return $debug;
+  }
+
+  /**
    * Prepare for serializiation.
    */
   public function __sleep() {
@@ -734,7 +753,11 @@
    */
   public function set($value) {
     if (!$this->validate($value)) {
-      throw new EntityMetadataWrapperException('Invalid data value given. Be sure it matches the required data type and format.');
+      throw new EntityMetadataWrapperException(t('Invalid data value given. Be sure it matches the required data type and format. Value at !location: !value.', array(
+        // An exception's message is output through check_plain().
+        '!value' => is_array($value) || is_object($value) ? var_export($value, TRUE) : $value,
+        '!location' => $this->debugIdentifierLocation(),
+      )));
     }
     if ($this->info['type'] == 'entity' && $value === $this) {
       // Nothing to do.
@@ -821,7 +844,12 @@
     }
     else {
       // This is not a property, so fallback on entity access.
-      return $this->entityAccess($op == 'edit' ? 'update' : 'view', $account);
+      if ($op == 'edit') {
+        // If the operation is "edit" determine if its actually a "create" for
+        // new un-saved entities, or an "update" for existing ones.
+        return $this->entityAccess($this->getIdentifier() ? 'update' : 'create', $account);
+      }
+      return $this->entityAccess('view', $account);
     }
   }
 
@@ -910,6 +938,27 @@
   }
 
   /**
+   * Returns a string to use to identify this wrapper in error messages.
+   */
+  public function debugIdentifierLocation() {
+    // An entity wrapper can be at the top of the chain or a part of it.
+    if (isset($this->info['name'])) {
+      // This wrapper is part of a chain, eg in the position node->author.
+      // Return the name.
+      $debug = $this->info['name'];
+    }
+    else {
+      // This is a wrapper for an actual entity: return its type and id.
+      $debug = $this->info['type'] . '(' . $this->getIdentifier() . ')';
+    }
+
+    if (isset($this->info['parent'])) {
+      $debug = $this->info['parent']->debugIdentifierLocation() . '->' . $debug;
+    }
+    return $debug;
+  }
+
+  /**
    * Prepare for serializiation.
    */
   public function __sleep() {
@@ -1067,7 +1116,7 @@
    */
   public function getIterator() {
     // In case there is no data available, just iterate over the first item.
-    return new EntityMetadataWrapperIterator($this, $this->dataAvailable() ? array_keys(parent::value()) : array(0));
+    return new EntityMetadataWrapperIterator($this, ($this->dataAvailable() && is_array(parent::value())) ? array_keys(parent::value()) : array(0));
   }
 
   /**
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/modules/callbacks.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/modules/callbacks.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -29,7 +29,7 @@
 
     case 'book_ancestors':
       $ancestors = array();
-      while (!empty($node->book['plid'])) {
+      while (!empty($node->book['plid']) && $node->book['plid'] != -1) {
         $link = book_link_load($node->book['plid']);
         array_unshift($ancestors, $link['nid']);
         $node = node_load($link['nid']);
@@ -670,9 +670,11 @@
 function entity_metadata_no_hook_node_access($op, $node = NULL, $account = NULL) {
   // First deal with the case where a $node is provided.
   if (isset($node)) {
-    if ($op == 'create') {
+    if (empty($node->vid) && in_array($op, array('create', 'update'))) {
+      // This is a new node or the original node.
       if (isset($node->type)) {
-        return node_access($op, $node->type, $account);
+        $op = empty($node->nid) || !empty($node->is_new) ? 'create' : 'update';
+        return node_access($op, $op == 'create' ? $node->type : $node, $account);
       }
       else {
         throw new EntityMalformedException('Permission to create a node was requested but no node type was given.');
@@ -796,14 +798,35 @@
  * Access callback for the taxonomy entities.
  */
 function entity_metadata_taxonomy_access($op, $entity = NULL, $account = NULL, $entity_type = NULL) {
-  if ($entity_type == 'taxonomy_vocabulary') {
-    return user_access('administer taxonomy', $account);
-  }
-  if (isset($entity) && $op == 'update' && !isset($account) && taxonomy_term_edit_access($entity)) {
+  // If user has administer taxonomy permission then no further checks.
+  if (user_access('administer taxonomy', $account)) {
     return TRUE;
   }
-  if (user_access('administer taxonomy', $account) || user_access('access content', $account) && $op == 'view') {
-    return TRUE;
+  switch ($op) {
+    case "view":
+      if (user_access('access content', $account)) {
+        return TRUE;
+      }
+      break;
+    case "update":
+      if ($entity_type == 'taxonomy_term') {
+        return user_access("edit terms in $entity->vid", $account);
+      }
+      break;
+    case "create":
+      if ($entity_type == 'taxonomy_term') {
+        // Check for taxonomy_access_fix contrib module which adds additional
+        // permissions to create new terms in a given vocabulary.
+        if (function_exists('taxonomy_access_fix_access')) {
+          return taxonomy_access_fix_access('add terms', $entity->vocabulary_machine_name);
+        }
+      }
+      break;
+    case "delete":
+      if ($entity_type == 'taxonomy_term') {
+        return user_access("delete terms in $entity->vid", $account);
+      }
+      break;
   }
   return FALSE;
 }
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/modules/node.info.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/modules/node.info.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -163,4 +163,10 @@
     'auto creation' => 'entity_property_create_array',
     'field' => TRUE,
   );
+
+  // Make it a list if cardinality is not 1.
+  $field_body = field_info_field('body');
+  if (isset($field_body) && $field_body['cardinality'] != 1) {
+    $info['node']['properties']['body']['type'] = 'list<text_formatted>';
+  }
 }
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_feature.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_feature.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,10 +6,9 @@
 dependencies[] = entity_test
 hidden = TRUE
 
-
-; Information added by drush on 2015-10-26
-version = "7.x-1.6+6-dev"
+; Information added by Drupal.org packaging script on 2018-02-14
+version = "7.x-1.9"
 core = "7.x"
 project = "entity"
-datestamp = "1445826948"
+datestamp = "1518620551"
 
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,10 +7,9 @@
 dependencies[] = entity
 hidden = TRUE
 
-
-; Information added by drush on 2015-10-26
-version = "7.x-1.6+6-dev"
+; Information added by Drupal.org packaging script on 2018-02-14
+version = "7.x-1.9"
 core = "7.x"
 project = "entity"
-datestamp = "1445826948"
+datestamp = "1518620551"
 
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_test.module	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_test.module	Mon Mar 19 16:00:44 2018 +0100
@@ -2,7 +2,7 @@
 
 /**
  * @file
- * Test moduel for the entity API.
+ * Test module for the entity API.
  */
 
 /**
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_test_i18n.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/tests/entity_test_i18n.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,10 +5,9 @@
 package = Multilingual - Internationalization
 core = 7.x
 hidden = TRUE
-
-; Information added by drush on 2015-10-26
-version = "7.x-1.6+6-dev"
+; Information added by Drupal.org packaging script on 2018-02-14
+version = "7.x-1.9"
 core = "7.x"
 project = "entity"
-datestamp = "1445826948"
+datestamp = "1518620551"
 
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/views/entity.views.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/views/entity.views.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -605,6 +605,28 @@
         );
       break;
 
+      case 'duration':
+        $return += $description + array(
+          'field' => array(
+            'real field' => $views_field_name,
+            'handler' => 'entity_views_handler_field_duration',
+            'click sortable' => TRUE,
+           ),
+          'sort' => array(
+            'real field' => $views_field_name,
+            'handler' => 'views_handler_sort',
+          ),
+          'filter' => array(
+            'real field' => $views_field_name,
+            'handler' => 'views_handler_filter_numeric',
+          ),
+          'argument' => array(
+            'real field' => $views_field_name,
+            'handler' => 'views_handler_argument_numeric',
+          ),
+        );
+      break;
+
       case 'uri':
         $return += $description + array(
           'field' => array(
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/views/handlers/entity_views_field_handler_helper.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/views/handlers/entity_views_field_handler_helper.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -18,7 +18,7 @@
    * Provide appropriate default options for a handler.
    */
   public static function option_definition($handler) {
-    if (entity_property_list_extract_type($handler->definition['type'])) {
+    if (isset($handler->definition['type']) && entity_property_list_extract_type($handler->definition['type'])) {
       $options['list']['contains']['mode'] = array('default' => 'collapse');
       $options['list']['contains']['separator'] = array('default' => ', ');
       $options['list']['contains']['type'] = array('default' => 'ul');
@@ -32,7 +32,7 @@
    * Provide an appropriate default option form for a handler.
    */
   public static function options_form($handler, &$form, &$form_state) {
-    if (entity_property_list_extract_type($handler->definition['type'])) {
+    if (isset($handler->definition['type']) && entity_property_list_extract_type($handler->definition['type'])) {
       $form['list']['mode'] = array(
         '#type' => 'select',
         '#title' => t('List handling'),
--- a/cms/drupal/profiles/drustack/modules/contrib/entity/views/handlers/entity_views_handler_area_entity.inc	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/contrib/entity/views/handlers/entity_views_handler_area_entity.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -40,7 +40,7 @@
     $form['entity_id'] = array(
       '#type' => 'textfield',
       '#title' => t('Entity id'),
-      '#description' => t('Choose the entity you want to display in the area.'),
+      '#description' => t('Choose the entity you want to display in the area. To render an entity given by a contextual filter use "%1" for the first argument, "%2" for the second, etc.'),
       '#default_value' => $this->options['entity_id'],
     );
 
@@ -105,6 +105,9 @@
    * Render an entity using the view mode.
    */
   public function render_entity($entity_type, $entity_id, $view_mode) {
+    $tokens = $this->get_render_tokens();
+    // Replace argument tokens in entity id.
+    $entity_id = strtr($entity_id, $tokens);
     if (!empty($entity_type) && !empty($entity_id) && !empty($view_mode)) {
       $entity = entity_load_single($entity_type, $entity_id);
       if (!empty($this->options['bypass_access']) || entity_access('view', $entity_type, $entity)) {
@@ -117,4 +120,31 @@
       return '';
     }
   }
+
+  /**
+   * Get the 'render' tokens to use for advanced rendering.
+   *
+   * This runs through all of the fields and arguments that
+   * are available and gets their values. This will then be
+   * used in one giant str_replace().
+   */
+  function get_render_tokens() {
+    $tokens = array();
+    if (!empty($this->view->build_info['substitutions'])) {
+      $tokens = $this->view->build_info['substitutions'];
+    }
+    $count = 0;
+    foreach ($this->view->display_handler->get_handlers('argument') as $arg => $handler) {
+      $token = '%' . ++$count;
+      if (!isset($tokens[$token])) {
+        $tokens[$token] = '';
+      }
+      // Use strip tags as there should never be HTML in the path.
+      // However, we need to preserve special characters like " that
+      // were removed by check_plain().
+      $tokens['%' . $count] = $handler->argument;
+    }
+
+    return $tokens;
+  }
 }
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_article/drustack_article.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_article/drustack_article.info	Mon Mar 19 16:00:44 2018 +0100
@@ -67,9 +67,9 @@
 features[variable][] = webform_node_article
 features[variable][] = xmlsitemap_settings_node_article
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_banner/drustack_banner.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_banner/drustack_banner.info	Mon Mar 19 16:00:44 2018 +0100
@@ -69,9 +69,9 @@
 features[variable][] = xmlsitemap_settings_node_banner
 features[views_view][] = banner
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_blog/drustack_blog.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_blog/drustack_blog.info	Mon Mar 19 16:00:44 2018 +0100
@@ -57,9 +57,9 @@
 features[variable][] = webform_node_blog
 features[variable][] = xmlsitemap_settings_node_blog
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_book/drustack_book.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_book/drustack_book.info	Mon Mar 19 16:00:44 2018 +0100
@@ -66,9 +66,9 @@
 features[variable][] = webform_node_book
 features[variable][] = xmlsitemap_settings_node_book
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_core/drustack_core.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_core/drustack_core.info	Mon Mar 19 16:00:44 2018 +0100
@@ -478,9 +478,9 @@
 features_exclude[dependencies][panels_node] = panels_node
 features_exclude[dependencies][drustack_seo] = drustack_seo
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_devel/drustack_devel.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_devel/drustack_devel.info	Mon Mar 19 16:00:44 2018 +0100
@@ -18,9 +18,9 @@
 features[user_permission][] = execute php code
 features[user_permission][] = switch users
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_forum/drustack_forum.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_forum/drustack_forum.info	Mon Mar 19 16:00:44 2018 +0100
@@ -68,9 +68,9 @@
 features[variable][] = xmlsitemap_settings_node_forum
 features[variable][] = xmlsitemap_settings_taxonomy_term_forums
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_page/drustack_page.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_page/drustack_page.info	Mon Mar 19 16:00:44 2018 +0100
@@ -62,9 +62,9 @@
 features_exclude[field_base][comment_body] = comment_body
 features_exclude[field_base][body] = body
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_performance/drustack_performance.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_performance/drustack_performance.info	Mon Mar 19 16:00:44 2018 +0100
@@ -114,9 +114,9 @@
 features[variable][] = varnish_socket_timeout
 features[variable][] = varnish_version
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_poll/drustack_poll.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_poll/drustack_poll.info	Mon Mar 19 16:00:44 2018 +0100
@@ -55,9 +55,9 @@
 features[variable][] = webform_node_poll
 features[variable][] = xmlsitemap_settings_node_poll
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_seo/drustack_seo.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_seo/drustack_seo.info	Mon Mar 19 16:00:44 2018 +0100
@@ -72,9 +72,9 @@
 features[variable][] = xmlsitemap_settings_taxonomy_term_tags
 features[variable][] = xmlsitemap_xsl
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_webform/drustack_webform.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_webform/drustack_webform.info	Mon Mar 19 16:00:44 2018 +0100
@@ -79,9 +79,9 @@
 features[variable][] = webform_tracking_mode
 features[variable][] = xmlsitemap_settings_node_webform
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/drustack/modules/custom/drustack_wysiwyg/drustack_wysiwyg.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/drustack/modules/custom/drustack_wysiwyg/drustack_wysiwyg.info	Mon Mar 19 16:00:44 2018 +0100
@@ -49,9 +49,9 @@
 features[variable][] = prettify_behaviour_linenums
 features[variable][] = prettify_css
 
-; Information added by Drupal.org packaging script on 2017-06-22
-version = "7.x-56.0"
+; Information added by Drupal.org packaging script on 2018-03-09
+version = "7.x-57.0"
 core = "7.x"
 project = "drustack"
-datestamp = "1498126844"
+datestamp = "1520583571"
 
--- a/cms/drupal/profiles/minimal/minimal.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/minimal/minimal.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 dependencies[] = block
 dependencies[] = dblog
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/profiles/standard/standard.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/standard/standard.info	Mon Mar 19 16:00:44 2018 +0100
@@ -24,8 +24,8 @@
 dependencies[] = file
 dependencies[] = rdf
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -6,8 +6,8 @@
 hidden = TRUE
 files[] = drupal_system_listing_compatible_test.test
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/profiles/testing/modules/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/testing/modules/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -8,8 +8,8 @@
 core = 6.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/profiles/testing/testing.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/profiles/testing/testing.info	Mon Mar 19 16:00:44 2018 +0100
@@ -4,8 +4,8 @@
 core = 7.x
 hidden = TRUE
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/LICENSE.txt	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,339 @@
+                    GNU GENERAL PUBLIC LICENSE
+                       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+                            NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+                     END OF TERMS AND CONDITIONS
+
+            How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License along
+    with this program; if not, write to the Free Software Foundation, Inc.,
+    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/README.txt	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,77 @@
+INTRODUCTION
+------------
+
+This module provides a way to enforce restrictions on user passwords by
+defining password policies.
+
+A password policy can be defined with a set of constraints which must be met
+before a user password change will be accepted. Each constraint has a parameter
+allowing for the minimum number of valid conditions which must be met before
+the constraint is satisfied.
+
+Example: An uppercase constraint (with a parameter of 2) and a digit constraint
+(with a parameter of 4) means that a user password must have at least 2
+uppercase letters and at least 4 digits for it to be accepted.
+
+Current constraints include:
+
+ * Digit
+ * Letter
+ * Letter/Digit (Alphanumeric)
+ * Length
+ * Uppercase
+ * Lowercase
+ * Punctuation
+ * Character types (Allows the administrator to set the minimum number of
+   character types required, but without dictating which ones must be used.)
+ * History (Ensures password does not match a specified number of the user's
+   previous passwords.)
+ * Username
+
+The module also implements configurable password expiration features:
+
+ * When a password is not changed for a certain amount of time the user will
+   be forced to change their password on next login.
+ * Optionally, the user will also be blocked upon password expiration.
+ * Expiration of passwords can begin after expiration time from enabling
+   the policy or immediately all users with passwords older than expiration
+   time will be blocked (retroactive behavior).
+ * Expiration notifications (warnings) are mailed to the users several times
+   (configurable) before the password expires.
+ * Warning e-mail message's subject and body are configurable.
+
+
+INSTALLATION
+------------
+
+Install as you would normally install a contributed Drupal module. See
+https://drupal.org/documentation/install/modules-themes/modules-7
+for further information.
+
+
+LIMITATIONS
+-----------
+
+ * Password policies only apply to passwords set via user forms in the web
+   interface. Passwords changed by other means (Drush, web services, etc.) will
+   not be subject to password policy constraints. Please see the following issue
+   if you would like to contribute to removing this limitation:
+     https://www.drupal.org/node/2451159
+
+ * Password policies alone cannot ensure secure password practices. A
+   password policy can help prevent a user from choosing a weak password that
+   is susceptible to password guessing. However, an overly restrictive password
+   policy could promote insecure password practices such as writing a password
+   down in an insecure location, or devising an obvious password only to meet
+   the constraints (e.g., Abc123!).
+
+   Consider encouraging (or requiring as an organizational policy) users to use
+   a password manager to generate and store strong, per-site passwords:
+     https://en.wikipedia.org/wiki/List_of_password_managers
+
+
+CREDITS
+-------
+Drupal 4.7 version was written by David Ayre <drupal at ayre dot ca>
+Refactored and maintained by Miglius Alaburda <miglius at gmail dot com>
+Sponsored by Bryght, SPAWAR, McDean, Classic Graphics, Acquia
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_alphanumeric.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,47 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_alphanumeric_description() {
+  return array('name' => t('Alphanumeric'), 'description' => t('Password must contain the specified minimum number of alphanumeric (letters or numbers) characters.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_alphanumeric_error($constraint) {
+  return format_plural($constraint, 'Password must contain at least one alphanumeric (letter or number) character.', 'Password must contain at least @count alphanumeric (letter or number) characters.');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_alphanumeric_validate($password, $constraint, $account) {
+  $matches = array();
+  $count = preg_match_all('/[a-z0-9]/i', $password, $matches);
+  return $count >= $constraint;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_alphanumeric_js($constraint, $account) {
+  return <<<JS
+
+    var count = (value.match(/[a-z0-9]/gi) || []).length;
+    if (count < $constraint) {
+      strength = 'low';
+      msg.push(translate.constraint_alphanumeric);
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_character_types.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,57 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_character_types_description() {
+  return array('name' => t('Character types'), 'description' => t('Password must contain the specified minimum number of character types (lowercase, uppercase, digit or punctuation).'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_character_types_error($constraint) {
+  return format_plural($constraint, 'Password must contain characters of at least one of the following types: lowercase, uppercase, digit or punctuation.', 'Password must contain characters of at least @count different types (lowercase, uppercase, digit or punctuation).');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_character_types_validate($password, $constraint, $account) {
+  $upper = preg_match('/[A-Z]/', $password);
+  $lower = preg_match('/[a-z]/', $password);
+  $digit = preg_match('/[0-9]/', $password);
+  $punctuation_characters = '`~!@#$%^&*()_+=-|}{"?:><,./;\'\\[]';
+  $punctuation_pattern = '/[' . preg_quote($punctuation_characters, '/') . ']/';
+  $punctuation = preg_match($punctuation_pattern, $password);
+  $count = $upper + $lower + $digit + $punctuation;
+  return $count >= $constraint;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_character_types_js($constraint, $account) {
+  return <<<JS
+
+    var upper = /[A-Z]/.test(value) | 0;
+    var lower = /[a-z]/.test(value) | 0;
+    var digit = /[0-9]/.test(value) | 0;
+    var punctuation = /[`~!@#$%^&*()_+=\-|}{"?:><,./;'\\\[\]]/.test(value) | 0;
+
+    var count = upper + lower + digit + punctuation;
+    if (count < $constraint) {
+      strength = 'low';
+      msg.push(translate.constraint_character_types);
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_delay.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,52 @@
+<?php
+
+/**
+ * @file
+ * Constraint callback to set a minimum delay between password changes.
+ *
+ * @link https://drupal.org/node/316765
+ *
+ * @codingStandardsIgnoreLine
+ * @author David Kent Norman (https://deekayen.net/)
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_delay_description() {
+  return array('name' => t('Delay'), 'description' => t('Minimum number of hours between password changes.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_delay_error($constraint) {
+  return format_plural($constraint, 'Password may only be changed in an hour from the last change.', 'Password may only be changed in @count hours from the last change.');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_delay_validate($password, $constraint, $account) {
+  // Bypass delay constraint, if account is marked "Force password change on
+  // next login".
+  if (isset($account->force_password_change) && $account->force_password_change) {
+    return TRUE;
+  }
+
+  $query = db_select('password_policy_history');
+  $query->addExpression('MAX(created)');
+  $last_change = $query->condition('uid', $account->uid)
+    ->execute()
+    ->fetchField();
+
+  if ($last_change) {
+    // Constraint is set in hours, so it gets converted to seconds with *60*60.
+    return _password_policy_get_request_time() - ($constraint * 60 * 60) > $last_change;
+  }
+  return TRUE;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_digit.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,47 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_digit_description() {
+  return array('name' => t('Digit'), 'description' => t('Password must contain the specified minimum number of digits.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_digit_error($constraint) {
+  return format_plural($constraint, 'Password must contain at least one digit.', 'Password must contain at least @count digits.');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_digit_validate($password, $constraint, $account) {
+  $matches = array();
+  $count = preg_match_all('/[0-9]/', $password, $matches);
+  return $count >= $constraint;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_digit_js($constraint, $account) {
+  return <<<JS
+
+    var count = (value.match(/[0-9]/g) || []).length;
+    if (count < $constraint) {
+      strength = 'low';
+      msg.push(translate.constraint_digit);
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_digit_placement.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,86 @@
+<?php
+
+/**
+ * @file
+ * Restrict placement of digits in passwords.
+ *
+ * @link https://drupal.org/node/316768
+ *
+ * @codingStandardsIgnoreLine
+ * @author David Kent Norman (https://deekayen.net/)
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_digit_placement_description() {
+  return array('name' => t('Digit Placement'), 'description' => t('Minimum number of digits necessary in the password overall, to allow digits as the first or last characters in the password. For example, set to 2, the passwords 2abcdefg and abcdefg4 are unacceptable, while 2qpcxrm3 and 9qpcx9rm are allowed. This is intended to prevent changing passwords by incrementing a single digit, such as password1, password2, password3.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_digit_placement_error($constraint) {
+  return t('Password must have a minimum of %numChars %digits in order to place any digits at the start or end of the password.',
+    array(
+      '%numChars' => $constraint,
+      '%digits' => format_plural($constraint, t('digit'), t('digits')),
+    ));
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_digit_placement_validate($password, $constraint, $account) {
+  $chars = drupal_strlen($password);
+  $num = 0;
+  for ($i = 0; $i < $chars; ++$i) {
+    if (preg_match('/[0-9]/', drupal_substr($password, $i, 1))) {
+      $num++;
+    }
+  }
+  if ($num < (int) $constraint) {
+    return preg_match('/^(\d+)|(\d+)$/', $password) != 1;
+  }
+  return TRUE;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_digit_placement_js($constraint, $account) {
+  return <<<JS
+
+    function substr_count(haystack, needle) {
+      var cnt = 0;
+
+      haystack += '';
+      needle += '';
+      var offset = 0;
+      var length = 0;
+      offset--;
+
+      while ((offset = haystack.indexOf(needle, offset + 1)) != -1) {
+        if (length > 0 && (offset + needle.length) > length) {
+          return false;
+        }
+        cnt++;
+      }
+      return cnt;
+    }
+
+    var i = 0;
+    var num = 0;
+    for (i = 0; i < 10; i++) {
+      num += substr_count(value, i);
+    }
+    if (num < $constraint && value.match(/^(\d+)|(\d+)$/) != null) {
+      strength = 'low';
+      msg.push(translate.constraint_digit_placement);
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_history.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,72 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_history_description() {
+  return array('name' => t('History'), 'description' => t("Password must not match any of the user's previous X passwords.") . ' <br/><b>' . t('Note:') . ' </b>' . t("This constraint can only compare a new password with the previous passwords recorded since the password policy module was enabled.  For example, if the number of previous passwords is set to 3, the module may have only recorded 2 password changes since the module was enabled.  If the recorded password history is not large enough to support the constraint history size, the history size for the constraint will be reduced (temporarily during the constraint check) to match the available recorded history. Also note that a history size of 1 means that the user is unable to change their password to their current password.  This can be useful in certain situations, but a setting of 2+ will likely be more useful.  Enter 'all' to compare all previous passwords"));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_history_error($constraint) {
+  if ($constraint == 'all') {
+    return t('Password must not match any previous password.');
+  }
+  else {
+    return format_plural($constraint, 'Password must not match last password.', 'Password must not match last @count passwords.');
+  }
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_history_validate($password, $constraint, $account) {
+  require_once DRUPAL_ROOT . '/' . variable_get('password_inc', 'includes/password.inc');
+  $temporary_account = clone $account;
+  $old_passwords = _password_policy_constraint_history_old_passwords($constraint, $account->uid);
+  foreach ($old_passwords as $old_password) {
+    $temporary_account->pass = $old_password;
+    if (user_check_password($password, $temporary_account)) {
+      return FALSE;
+    }
+  }
+
+  return TRUE;
+}
+
+/****************************************************************************/
+/* Auxiliary                                                                */
+/****************************************************************************/
+
+/**
+ * Gets old password hashes.
+ */
+function _password_policy_constraint_history_old_passwords($constraint, $uid) {
+  $pass = array();
+  if (!empty($uid)) {
+    $query = db_select('password_policy_history', 'p', array('fetch' => PDO::FETCH_ASSOC, 'target' => 'slave'));
+    $query->fields('p', array('pass'))
+      ->condition('p.uid', $uid)
+      ->orderBy('p.created', 'DESC');
+    if ($constraint != 'all') {
+      $query->range(0, $constraint);
+    }
+    $result = $query->execute();
+
+    while ($row = $result->fetchAssoc()) {
+      $pass[] = $row['pass'];
+    }
+  }
+  return $pass;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_length.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,45 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_length_description() {
+  return array('name' => t('Length'), 'description' => t('Password must be equal to or longer than the specified minimum length.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_length_error($constraint) {
+  return format_plural($constraint, 'Password must be at least one character in length.', 'Password must be at least @count characters in length.');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_length_validate($password, $constraint, $account) {
+  $length = drupal_strlen($password);
+  return $length >= $constraint;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_length_js($constraint, $account) {
+  return <<<JS
+
+    if (!value.length || value.length < $constraint) {
+      strength = 'low';
+      msg.push(translate.constraint_length);
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_letter.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,47 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_letter_description() {
+  return array('name' => t('Letter'), 'description' => t('Password must contain the specified minimum number of letters.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_letter_error($constraint) {
+  return format_plural($constraint, 'Password must contain at least one letter.', 'Password must contain at least @count letters.');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_letter_validate($password, $constraint, $account) {
+  $matches = array();
+  $count = preg_match_all('/[a-z]/i', $password, $matches);
+  return $count >= $constraint;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_letter_js($constraint, $account) {
+  return <<<JS
+
+    var count = (value.match(/[a-z]/gi) || []).length;
+    if (count < $constraint) {
+      strength = 'low';
+      msg.push(translate.constraint_letter);
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_lowercase.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,47 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_lowercase_description() {
+  return array('name' => t('Lowercase'), 'description' => t('Password must contain the specified minimum number of lowercase letters.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_lowercase_error($constraint) {
+  return format_plural($constraint, 'Password must contain at least one lowercase character.', 'Password must contain at least @count lowercase characters.');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_lowercase_validate($password, $constraint, $account) {
+  $matches = array();
+  $count = preg_match_all('/[a-z]/', $password, $matches);
+  return $count >= $constraint;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_lowercase_js($constraint, $account) {
+  return <<<JS
+
+    var count = (value.match(/[a-z]/g) || []).length;
+    if (count < $constraint) {
+      strength = 'low';
+      msg.push(translate.constraint_lowercase);
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_punctuation.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,49 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_punctuation_description() {
+  return array('name' => t('Punctuation'), 'description' => t('Password must contain the specified minimum number of punctuation (not whitespace or an alphanumeric) characters.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_punctuation_error($constraint) {
+  return format_plural($constraint, 'Password must contain at least one punctuation (not whitespace or an alphanumeric) character.', 'Password must contain at least @count punctuation (not whitespace or an alphanumeric) characters.');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_punctuation_validate($password, $constraint, $account) {
+  $matches = array();
+  $punctuation_characters = '`~!@#$%^&*()_+=-|}{"?:><,./;\'\\[]';
+  $punctuation_pattern = '/[' . preg_quote($punctuation_characters, '/') . ']/';
+  $count = preg_match_all($punctuation_pattern, $password, $matches);
+  return $count >= $constraint;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_punctuation_js($constraint, $account) {
+  return <<<JS
+
+    var count = (value.match(/[`~!@#$%^&*()_+=\-|}{"?:><,./;'\\\[\]]/g) || []).length;
+    if (count < $constraint) {
+      strength = 'low';
+      msg.push(translate.constraint_punctuation);
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_uppercase.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,47 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_uppercase_description() {
+  return array('name' => t('Uppercase'), 'description' => t('Password must contain the specified minimum number of uppercase letters.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_uppercase_error($constraint) {
+  return format_plural($constraint, 'Password must contain at least one uppercase character.', 'Password must contain at least @count uppercase characters.');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_uppercase_validate($password, $constraint, $account) {
+  $matches = array();
+  $count = preg_match_all('/[A-Z]/', $password, $matches);
+  return $count >= $constraint;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_uppercase_js($constraint, $account) {
+  return <<<JS
+
+    var count = (value.match(/[A-Z]/g) || []).length;
+    if (count < $constraint) {
+      strength = 'low';
+      msg.push(translate.constraint_uppercase);
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/constraints/constraint_username.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,72 @@
+<?php
+
+/**
+ * @file
+ * Password policy constraint callbacks.
+ */
+
+/****************************************************************************/
+/* Constraint API                                                           */
+/****************************************************************************/
+
+/**
+ * Description of the constraint.
+ */
+function password_policy_constraint_username_description() {
+  return array('name' => t('Username'), 'description' => t('Password must not contain the username (case insensitive). Put any positive number to enforce this policy.'));
+}
+
+/**
+ * Error message of the constraint.
+ */
+function password_policy_constraint_username_error($constraint) {
+  return t('Password must not contain the username.');
+}
+
+/**
+ * Password validation.
+ */
+function password_policy_constraint_username_validate($password, $constraint, $account) {
+  // The username may be empty if not entered on the user registration form.
+  if (!$account->name) {
+    return TRUE;
+  }
+
+  $username_lowercase = drupal_strtolower($account->name);
+  $password_lowercase = drupal_strtolower($password);
+  return strpos($password_lowercase, $username_lowercase) === FALSE;
+}
+
+/**
+ * Javascript portion.
+ */
+function password_policy_constraint_username_js($constraint, $account) {
+  // Add username as JavaScript setting.
+  $username = isset($account->name) ? $account->name : '';
+  $data = array(
+    'passwordPolicy' => array(
+      'username' => $username,
+    ),
+  );
+  drupal_add_js($data, 'setting');
+
+  return <<<JS
+
+    var username = '';
+    var usernameInput = jQuery('input.username');
+    if (usernameInput.length) {
+      username = usernameInput.val();
+    }
+    else {
+      username = Drupal.settings.passwordPolicy.username;
+    }
+    if (username) {
+      var username_lowercase = username.toLowerCase();
+      var password_lowercase = value.toLowerCase();
+      if (password_lowercase.indexOf(username_lowercase) != -1) {
+        strength = 'low';
+        msg.push(translate.constraint_username);
+      }
+    }
+JS;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.admin.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,64 @@
+<?php
+
+/**
+ * @file
+ * Module admin page callbacks.
+ */
+
+/****************************************************************************/
+/* Password policy password tab settings                                    */
+/****************************************************************************/
+
+/**
+ * Implements the settings page.
+ *
+ * @return array
+ *   The form structure.
+ */
+function password_policy_password_tab_admin_settings() {
+  $form = array();
+
+  // Attachments settings.
+  $form['password_tab'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Password tab settings'),
+    '#collapsible' => FALSE,
+    '#collapsed' => FALSE,
+  );
+  $form['password_tab']['password_policy_password_tab_redirect'] = array(
+    '#type'          => 'textfield',
+    '#title'         => t('Redirect path on password change'),
+    '#default_value' => variable_get('password_policy_password_tab_redirect', ''),
+    '#description'   => t("Normally, after a user changes their password, they will be taken to their user page. Leave this setting blank if you wish to keep the default behavior. If you wish the user to go to a page of your choosing, then enter the path for it here. For instance, you may redirect them to a static page such as <cite>node/35</cite>, or to the <cite>&lt;front&gt;</cite> page. You may also use <em>%uid</em> as a variable, and the user's user ID will be substituted in the path. In the case where users are first creating their own passwords, it is suggested to use <cite>user/%uid/edit</cite> here, so the user may set their over account information immediately after validating their account."),
+  );
+
+  $form['submit'] = array(
+    '#type'  => 'submit',
+    '#value' => t('Save configuration'),
+  );
+  $form['reset'] = array(
+    '#type'  => 'submit',
+    '#value' => t('Reset to defaults'),
+  );
+
+  return $form;
+}
+
+/**
+ * Submit hook for the settings form.
+ */
+function password_policy_password_tab_admin_settings_submit($form, &$form_state) {
+  $op = $form_state['clicked_button']['#value'];
+  $values = $form_state['values'];
+  switch ($op) {
+    case t('Save configuration'):
+      variable_set('password_policy_password_tab_redirect', $values['password_policy_password_tab_redirect']);
+      drupal_set_message(t('The configuration options have been saved.'));
+      break;
+
+    case t('Reset to defaults'):
+      variable_del('password_policy_password_tab_redirect');
+      drupal_set_message(t('The configuration options have been reset to their default values.'));
+      break;
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.info	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,13 @@
+name = Password change tab
+description = Implements a separate password change tab.
+package = Other
+dependencies[] = password_policy
+core = 7.x
+files[] = password_policy_password_tab.test
+
+; Information added by Drupal.org packaging script on 2018-03-06
+version = "7.x-1.15"
+core = "7.x"
+project = "password_policy"
+datestamp = "1520367189"
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.install	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,17 @@
+<?php
+
+/**
+ * @file
+ * Password policy password tab module installation and upgrade code.
+ */
+
+/****************************************************************************/
+/* Module installation/uninstallation                                       */
+/****************************************************************************/
+
+/**
+ * Implements hook_uninstall().
+ */
+function password_policy_password_tab_uninstall() {
+  variable_del('password_policy_password_tab_redirect');
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.module	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,67 @@
+<?php
+
+/**
+ * @file
+ * Adds a separate tab to change password.
+ */
+
+/**
+ * Implements hook_menu().
+ */
+function password_policy_password_tab_menu() {
+  $items = array();
+
+  $items['user/%user/password'] = array(
+    'title' => 'Password',
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('password_policy_password_tab', 1),
+    'access callback' => 'user_edit_access',
+    'access arguments' => array(1),
+    'type' => MENU_LOCAL_TASK,
+    'file' => 'password_policy_password_tab.pages.inc',
+  );
+  $items['admin/config/people/password_policy/password_tab'] = array(
+    'title' => 'Password tab',
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('password_policy_password_tab_admin_settings'),
+    'access arguments' => array('administer site configuration'),
+    'file' => 'password_policy_password_tab.admin.inc',
+    'type' => MENU_LOCAL_TASK,
+    'weight' => 10,
+  );
+
+  return $items;
+}
+
+/**
+ * Implements hook_admin_paths().
+ */
+function password_policy_password_tab_admin_paths() {
+  $paths = array(
+    'user/*/password' => TRUE,
+  );
+  return $paths;
+}
+
+/**
+ * Implements hook_form_FORM_ID_alter().
+ */
+function password_policy_password_tab_form_user_profile_form_alter(&$form, &$form_state) {
+  if (isset($form['account']['current_pass_required_values']['#value']['pass'])) {
+    $form['account']['current_pass']['#description'] = str_replace(' or <em class="placeholder">Password</em>', '', $form['account']['current_pass']['#description']);
+    unset($form['account']['current_pass_required_values']['#value']['pass']);
+  }
+
+  // Hide core password field from user edit form.
+  unset($form['account']['pass']);
+}
+
+/**
+ * Implements hook_drupal_goto_alter().
+ */
+function password_policy_password_tab_drupal_goto_alter(&$path, &$options) {
+  global $user;
+  if ($user->uid && $path == 'user/' . $user->uid . '/edit' && isset($options['query']['pass-reset-token'])) {
+    $path = 'user/' . $user->uid . '/password';
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.pages.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,109 @@
+<?php
+
+/**
+ * @file
+ * The password policy password tab page callbacks.
+ */
+
+/**
+ * Password change form.
+ */
+function password_policy_password_tab($form, &$form_state, $account) {
+  global $user;
+
+  // During initial form build, add the entity to the form state for use during
+  // form building and processing. During a rebuild, use what is in the form
+  // state.
+  if (!isset($form_state['user'])) {
+    $form_state['user'] = $account;
+  }
+  else {
+    $account = $form_state['user'];
+  }
+
+  if ($user->uid == $account->uid) {
+    // To skip the current password field, the user must have logged in via a
+    // one-time link and have the token in the URL.
+    $pass_reset = isset($_SESSION['pass_reset_' . $account->uid]) && isset($_GET['pass-reset-token']) && ($_GET['pass-reset-token'] == $_SESSION['pass_reset_' . $account->uid]);
+    $protected_values = array();
+    $current_pass_description = '';
+    // The user may only change their own password without their current
+    // password if they logged in via a one-time login link.
+    if (!$pass_reset) {
+      $protected_values['mail'] = t('E-mail address');
+      $protected_values['pass'] = t('Password');
+      $request_new = l(t('Request new password'), 'user/password', array('attributes' => array('title' => t('Request new password via e-mail.'))));
+      $current_pass_description = t('Enter your current password to change the %pass. !request_new.', array('%pass' => $protected_values['pass'], '!request_new' => $request_new));
+    }
+    // The user must enter their current password to change to a new one.
+    if (isset($protected_values['pass'])) {
+      $form['account']['current_pass_required_values'] = array(
+        '#type' => 'value',
+        '#value' => array('pass' => $protected_values['pass']),
+      );
+
+      $form['account']['current_pass'] = array(
+        '#type' => 'password',
+        '#title' => t('Current password'),
+        '#size' => 25,
+        '#access' => !empty($protected_values),
+        '#description' => $current_pass_description,
+        '#weight' => -5,
+        '#attributes' => array('autocomplete' => 'off'),
+      );
+
+      $form['#validate'][] = 'user_validate_current_pass';
+    }
+  }
+
+  $form['account']['pass'] = array(
+    '#type' => 'password_confirm',
+    '#size' => 25,
+    '#required' => TRUE,
+    '#description' => t('To change the current user password, enter the new password in both fields.'),
+  );
+
+  // @TODO Remove this as it supports a D6-style of interacting with a user form
+  // In the future, this data should be stored in $form_state.
+  $form['#uid'] = $account->uid;
+  $form['#user'] = $account;
+  $form['_account'] = array('#type' => 'value', '#value' => $account);
+
+  $form['actions'] = array('#type' => 'actions');
+  $form['actions']['submit'] = array(
+    '#type' => 'submit',
+    '#value' => t('Save'),
+  );
+
+  return $form;
+}
+
+/**
+ * Password change form validation.
+ */
+function password_policy_password_tab_validate($form, &$form_state) {
+  $pass = trim($form_state['values']['pass']);
+  if (empty($pass)) {
+    form_set_error('pass', t('Your password cannot be empty.'));
+  }
+}
+
+/**
+ * Password change form submit.
+ */
+function password_policy_password_tab_submit($form, &$form_state) {
+  global $user;
+
+  $account = $form['_account']['#value'];
+  $account = $form_state['user'];
+
+  user_module_invoke('submit', $form_state['values'], $account, 'account');
+  user_save($account, array('pass' => $form_state['values']['pass']));
+  unset($_SESSION['pass_reset_' . $account->uid]);
+  drupal_set_message(t('Password has been changed.'));
+
+  if (variable_get('password_policy_password_tab_redirect', '') && !preg_match('/[?&]destination=/', $form['#action'])) {
+    $redirect = drupal_parse_url(strtr(variable_get('password_policy_password_tab_redirect', ''), array('%uid' => $user->uid)));
+    $form_state['redirect'] = array($redirect['path'], $redirect);
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/contrib/password_tab/password_policy_password_tab.test	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,190 @@
+<?php
+
+/**
+ * @file
+ * Web tests for Password policy password tab module.
+ */
+
+/**
+ * Tests of password tab.
+ */
+class PasswordPolicyPasswordTabTestCase extends DrupalWebTestCase {
+
+  /**
+   * Get info about the test case.
+   */
+  public static function getInfo() {
+    return array(
+      'name' => 'Password Change Tab',
+      'description' => 'Test Password Change Tab.',
+      'group' => 'Password Policy',
+    );
+  }
+
+  /**
+   * Set up the test.
+   */
+  public function setUp() {
+    parent::setUp('password_policy', 'password_policy_password_tab');
+    $this->user = $this->drupalCreateUser();
+  }
+
+  /**
+   * Test the password tab.
+   */
+  public function testPasswordTab() {
+    $this->drupalLogin($this->user);
+
+    // Check tab is working.
+    $this->drupalGet('user/' . $this->user->uid . '/password');
+
+    // Attempt password change.
+    $edit = array(
+      'current_pass' => $this->user->pass_raw,
+      'pass[pass1]' => $this->user->pass_raw . $this->user->pass_raw,
+      'pass[pass2]' => $this->user->pass_raw . $this->user->pass_raw,
+    );
+    $this->drupalPost('user/' . $this->user->uid . '/password', $edit, 'Save');
+    $this->assertText(t('Password has been changed.'));
+  }
+
+  /**
+   * Test custom redirect path with %uid variable.
+   *
+   * @todo Deduplicate code versus testPasswordTab().
+   */
+  public function testCustomRedirectPath() {
+    // Log in.
+    $user = $this->drupalCreateUser(
+      array(
+        'administer password policies',
+        'administer site configuration',
+      ));
+    $this->drupalLogin($user);
+
+    // Set custom redirect path.
+    $redirect_path = 'user/%uid/edit';
+    $edit = array('password_policy_password_tab_redirect' => $redirect_path);
+    $this->drupalPost('admin/config/people/password_policy/password_tab', $edit, t('Save configuration'));
+    $this->assertText(t('The configuration options have been saved.'));
+
+    // Check tab is working.
+    $this->drupalGet('user/' . $user->uid . '/password');
+
+    // Attempt password change.
+    $edit = array(
+      'current_pass' => $user->pass_raw,
+      'pass[pass1]' => $user->pass_raw . $user->pass_raw,
+      'pass[pass2]' => $user->pass_raw . $user->pass_raw,
+    );
+    $this->drupalPost('user/' . $user->uid . '/password', $edit, 'Save');
+    $this->assertText(t('Password has been changed.'));
+
+    // Check that user was correctly redirected.
+    $this->assertUrl('user/' . $user->uid . '/edit');
+  }
+
+  /**
+   * Test history constraint when using password tab and custom redirect path.
+   *
+   * This test prevents regression of bug where history constraint did not work
+   * under these conditions.
+   *
+   * @todo Deduplicate code versus
+   *   PasswordPolicyTestCase::testHistoryConstraint().
+   */
+  public function testHistorySave() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_history');
+    // Log in.
+    $user = $this->drupalCreateUser(
+      array(
+        'administer password policies',
+        'administer site configuration',
+      ));
+    $this->drupalLogin($user);
+    // Create a policy.
+    $policy_name = $this->randomName();
+    $edit = array(
+      'name' => $policy_name,
+      'constraint_history' => t('2'),
+      'roles[2]' => '2',
+    );
+    $this->drupalPost('admin/config/people/password_policy/add', $edit, t('Create'));
+    $this->assertText('Policy ' . $policy_name . ' has been created.', 'Policy ' . $policy_name . ' has been created');
+    // Enable newly created policy.
+    $pid = db_query('SELECT pid FROM {password_policy} WHERE name = :name', array(':name' => $policy_name))->fetchField();
+    $constraints = unserialize(db_query('SELECT constraints FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField());
+    $this->assertTrue($constraints['history'] == 2, t('Verified history constraint set.'));
+    $edit = array(
+      "policies[$pid][enabled]" => $pid,
+    );
+    $this->drupalPost('admin/config/people/password_policy/list', $edit, t('Save changes'));
+    $this->assertText(t('The changes have been saved.'), t('Form submitted successfully.'));
+    $enabled = db_query('SELECT enabled FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField();
+    $this->assertTrue($enabled == 1, t('Policy enabled.'));
+
+    // Set custom redirect path.
+    $redirect_path = 'node';
+    $edit = array('password_policy_password_tab_redirect' => $redirect_path);
+    $this->drupalPost('admin/config/people/password_policy/password_tab', $edit, t('Save configuration'));
+    $this->assertText(t('The configuration options have been saved.'));
+
+    // Change password.
+    $pass1 = 'aaaaaa';
+    $edit = array(
+      'current_pass' => $user->pass_raw,
+      'pass[pass1]' => $pass1,
+      'pass[pass2]' => $pass1,
+    );
+    $this->drupalPost("user/$user->uid/password", $edit, t('Save'));
+    $this->assertText(t('Password has been changed.'), t('1st password change: !pass1', array('!pass1' => $pass1)));
+    // Change password second time.
+    $edit = array(
+      'current_pass' => $pass1,
+      'pass[pass1]' => $pass1,
+      'pass[pass2]' => $pass1,
+    );
+    $this->drupalPost("user/$user->uid/password", $edit, t('Save'));
+    $this->assertText(t('Your password has not met the following requirement(s):'), t('2nd password change should fail: !pass1', array('!pass1' => $pass1)));
+  }
+
+  /**
+   * Test force password change.
+   *
+   * @todo Deduplicate code versus
+   *   PasswordPolicyForcePasswordChangeTestCase::testSingleUser().
+   */
+  public function testForcePasswordChange() {
+    $admin = $this->drupalCreateUser(array('force password change', 'administer users'));
+    $user = $this->drupalCreateUser();
+    $this->drupalLogin($admin);
+    $edit = array(
+      'force_password_change' => TRUE,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->assertRaw(t('!user will be required to change their password the next time they log in.', array('!user' => $user->name)), t('User flagged for password change.'));
+    $force_change = db_query('SELECT force_change FROM {password_policy_force_change} WHERE uid = :uid', array(':uid' => $user->uid))->fetchField();
+    $this->assertTrue($force_change == 1, t('Force change flag set to %d for %s.', array('%d' => $force_change, '%s' => $user->name)));
+
+    // Verify user is forced to change password.
+    $this->drupalLogin($user);
+    $this->assertFieldByName('current_pass', NULL, t('User redirected correctly.'));
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), t('User presented with error instructing them to change their password.'));
+
+    // Attempt to change password.
+    $edit = array(
+      'current_pass' => $user->pass_raw,
+      'pass[pass1]' => 'random_string',
+      'pass[pass2]' => 'random_string',
+    );
+
+    $this->drupalPost(NULL, $edit, t('Save'));
+    $this->assertRaw(t('Password has been changed.'), t('Password change successful.'));
+
+    // Verify user not prompted to change password a 2nd time.
+    $this->drupalGet('node');
+    $this->assertNoFieldByName('current_pass', NULL, t('User not forced to change password a 2nd time.'));
+    $this->drupalLogout();
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/password_policy.admin.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,717 @@
+<?php
+
+/**
+ * @file
+ * Admin page callback file for the Password Policy module.
+ */
+
+/****************************************************************************/
+/* Password policy admin settings                                           */
+/****************************************************************************/
+
+/**
+ * Settings form display.
+ */
+function password_policy_admin_settings() {
+  $form['force_change'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Force password change settings'),
+    '#collapsible' => TRUE,
+    '#collapsed' => FALSE,
+  );
+  $form['force_change']['password_policy_force_change_reset'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Force password change on reset'),
+    '#default_value' => variable_get('password_policy_force_change_reset', 0),
+    '#description' => t('When a user requests a one-time login link, this option will require the user to change their password before continuing to browse the site.'),
+  );
+  $form['force_change']['password_policy_force_change_path'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Password change form path'),
+    '#description' => t('If the module does not determine the path for the password change form, use this field to specify the correct path. For example: "user/[user:uid]/edit". Supported replacement patterns are [user:uid] and [user:name].'),
+    '#default_value' => variable_get('password_policy_force_change_path', NULL),
+  );
+  $form['force_change']['password_policy_force_change_extra_allowed_paths'] = array(
+    '#type' => 'textarea',
+    '#title' => t('Extra allowed paths'),
+    '#default_value' => variable_get('password_policy_force_change_extra_allowed_paths', _password_policy_default_force_change_extra_allowed_paths()),
+    '#description' => t("Extra paths, one per line, that the user can access as normal when being forced to change their password. The '*' character is a wildcard. These paths are in addition to the minimally allowed paths for password changes, which are always allowed by Password Policy. This setting can be used, for example, to allow paths requested by custom AJAX on the password change page."),
+  );
+
+  $form['expiration'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Expiration settings'),
+    '#collapsible' => TRUE,
+    '#collapsed' => FALSE,
+  );
+  $form['expiration']['password_policy_admin'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Admin (UID=1) password expires.'),
+    '#default_value' => variable_get('password_policy_admin', 1),
+    '#description' => t('Admin account password will obey expiration policy.'),
+  );
+  $form['expiration']['password_policy_begin'] = array(
+    '#type' => 'radios',
+    '#title' => t('Beginning of password expirations'),
+    '#default_value' => variable_get('password_policy_begin', 0),
+    '#options' => array('0' => t('After expiration time from setting a default policy (all passwords are valid during the expiration time from setting the default policy, and after that older than expiration time passwords expire).'), '1' => t('Setting a default policy (passwords older than expiration time expire after setting the default policy, retroactive behaviour).')),
+  );
+  $form['expiration']['password_policy_block'] = array(
+    '#type' => 'radios',
+    '#title' => t('Blocking expired accounts'),
+    '#default_value' => variable_get('password_policy_block', 0),
+    '#options' => array('0' => t('Expired accounts are blocked. Only administrators can unblock them. Once unblocked, users can log in and will be forced to change their password. If they do not log in and change their password within one day, they will be blocked again.'), '1' => t('Expired accounts are not blocked. Users whose accounts have expired will be forced to change their passwords at next login.')),
+  );
+
+  // Visibility.
+  $form['visibility'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Visibility settings'),
+    '#collapsible' => TRUE,
+    '#collapsed' => FALSE,
+  );
+  $form['visibility']['password_policy_show_restrictions'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Show all restrictions on password change page.'),
+    '#default_value' => variable_get('password_policy_show_restrictions', 0),
+    '#description' => t('List all password restrictions on the password change page. The list is displayed in addition to the default dynamic, JavaScript-generated list of only the restrictions the typed password does not meet. Enabling this setting allows a user who is not using JavaScript to see the password restrictions prior to submitting their password.'),
+  );
+
+  // E-mail notification settings.
+  $form['email'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('E-mail notification settings'),
+    '#collapsible' => TRUE,
+    '#collapsed' => TRUE,
+  );
+  $form['email']['password_policy_warning_subject'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Subject of warning e-mail'),
+    '#default_value' => variable_get('password_policy_warning_subject', PASSWORD_POLICY_DEFAULT_WARNING_SUBJECT),
+    '#maxlength' => 180,
+    '#description' => t('Customize the subject of the warning e-mail message, which is sent to remind of password expiration.') . _password_policy_warning_email_tokens_help(),
+  );
+  $form['email']['password_policy_warning_body'] = array(
+    '#type' => 'textarea',
+    '#title' => t('Body of warning e-mail'),
+    '#default_value' => variable_get('password_policy_warning_body', PASSWORD_POLICY_DEFAULT_WARNING_BODY),
+    '#rows' => 15,
+    '#description' => t('Customize the body of the warning e-mail message, which is sent to remind of password expiration.') . _password_policy_warning_email_tokens_help(),
+  );
+
+  $form['actions']['reset'] = array(
+    '#type' => 'submit',
+    '#value' => t('Reset to defaults'),
+    '#submit' => array('password_policy_admin_settings_reset_submit'),
+  );
+
+  return system_settings_form($form);
+}
+
+/**
+ * Gets help for warning email tokens.
+ */
+function _password_policy_warning_email_tokens_help() {
+  return ' ' . t('Available variables are: [user:name], [site:name], [site:url], [site:url-brief], [user:mail], [date:medium], [site:login-url], [user:edit-url], [password-policy:days-left], [password-policy:password-edit-url].');
+}
+
+/**
+ * Submit hook for the reset button on the settings form.
+ */
+function password_policy_admin_settings_reset_submit($form, &$form_state) {
+  variable_del('password_policy_admin');
+  variable_del('password_policy_begin');
+  variable_del('password_policy_block');
+  variable_del('password_policy_show_restrictions');
+  variable_del('password_policy_warning_subject');
+  variable_del('password_policy_warning_body');
+  variable_del('password_policy_force_change_reset');
+  variable_del('password_policy_force_change_extra_allowed_paths');
+  if (function_exists('variable_delete')) {
+    variable_delete('password_policy_warning_subject');
+    variable_delete('password_policy_warning_body');
+  }
+  drupal_set_message(t('The configuration options have been reset to their default values.'));
+}
+
+/**
+ * Lists roles to which a policy applies.
+ *
+ * @param int $pid
+ *   Policy id.
+ *
+ * @return string[]
+ *   Array of role names.
+ */
+function _password_policy_admin_list_roles($pid) {
+  $roles = array();
+  $query = db_select('role', 'r', array('target' => 'slave'));
+  $query->innerJoin('password_policy_role', 'p', 'p.rid = r.rid');
+  $result = $query->fields('r', array('name'))
+    ->condition('p.pid', $pid)
+    ->execute();
+  foreach ($result as $row) {
+    $roles[] = check_plain($row->name);
+  }
+  return $roles;
+}
+
+/**
+ * The list of the password policies.
+ */
+function password_policy_admin_list($form) {
+  $result = db_select('password_policy', 'p',
+    array(
+      'fetch' => PDO::FETCH_ASSOC,
+      'target' => 'slave',
+    ))
+    ->fields('p',
+        array(
+          'pid',
+          'name',
+          'enabled',
+          'description',
+          'created',
+          'weight',
+        ))
+    ->orderBy('weight')
+    ->execute();
+
+  $form['#tree'] = TRUE;
+  foreach ($result as $row) {
+    $pid = $row['pid'];
+
+    $form['policies'][$pid]['name'] = array(
+      '#markup' => check_plain($row['name']),
+    );
+    $form['policies'][$pid]['roles'] = array(
+      '#markup' => theme('item_list', array('items' => _password_policy_admin_list_roles($pid))),
+    );
+    $form['policies'][$pid]['enabled'] = array(
+      '#type' => 'checkbox',
+      '#default_value' => $row['enabled'],
+    );
+    $form['policies'][$pid]['view'] = array(
+      '#type' => 'link',
+      '#title' => 'view',
+      '#href' => 'admin/config/people/password_policy/' . $pid,
+    );
+    $form['policies'][$pid]['edit'] = array(
+      '#type' => 'link',
+      '#title' => 'edit',
+      '#href' => 'admin/config/people/password_policy/' . $pid . '/edit',
+    );
+    $form['policies'][$pid]['delete'] = array(
+      '#type' => 'link',
+      '#title' => 'delete',
+      '#href' => 'admin/config/people/password_policy/' . $pid . '/delete',
+    );
+    $form['policies'][$pid]['weight'] = array(
+      '#type' => 'weight',
+      '#title' => t('Weight for @title', array('@title' => $row['name'])),
+      '#title_display' => 'invisible',
+      '#default_value' => $row['weight'],
+    );
+  }
+
+  $form['actions'] = array('#type' => 'actions');
+  $form['actions']['submit'] = array(
+    '#type' => 'submit',
+    '#value' => t('Save changes'),
+  );
+  return $form;
+}
+
+/**
+ * Submit hook for the form on the default list view.
+ */
+function password_policy_admin_list_submit($form, &$form_state) {
+  foreach ($form_state['values']['policies'] as $pid => $policy) {
+    db_update('password_policy')
+      ->fields(array(
+        'weight' => $policy['weight'],
+      ))
+      ->condition('pid', $pid)
+      ->execute();
+    // Ensure we don't reset the timestamp on policies that are already enabled.
+    if ($policy['enabled']) {
+      db_update('password_policy')
+        ->fields(array(
+          'enabled' => 1,
+          'created' => _password_policy_get_request_time(),
+        ))
+        ->condition('pid', $pid)
+        ->condition('enabled', 0)
+        ->execute();
+    }
+    else {
+      db_update('password_policy')
+        ->fields(array('enabled' => 0))
+        ->condition('pid', $pid)
+        ->execute();
+    }
+  }
+
+  drupal_set_message(t('The changes have been saved.'));
+}
+
+/**
+ * Returns HTML for the password policy administration list.
+ *
+ * @param array $variables
+ *   An associative array containing:
+ *   - form: A render element representing the form.
+ *
+ * @ingroup themeable
+ *
+ * @see theme_filter_admin_overview()
+ */
+function theme_password_policy_admin_list(array $variables) {
+  $form = $variables['form'];
+
+  $rows = array();
+  if (isset($form['policies']) && count($form['policies'])) {
+    foreach (element_children($form['policies']) as $id) {
+      $form['policies'][$id]['weight']['#attributes']['class'] = array('password-policy-order-weight');
+      $rows[] = array(
+        'data' => array(
+          drupal_render($form['policies'][$id]['name']),
+          drupal_render($form['policies'][$id]['roles']),
+          drupal_render($form['policies'][$id]['enabled']),
+          drupal_render($form['policies'][$id]['weight']),
+          drupal_render($form['policies'][$id]['view']),
+          drupal_render($form['policies'][$id]['edit']),
+          drupal_render($form['policies'][$id]['delete']),
+        ),
+        'class' => array('draggable'),
+      );
+    }
+  }
+  if (empty($rows)) {
+    unset($form['actions']['submit']);
+  }
+  $header = array(
+    t('Name'),
+    t('Roles'),
+    t('Enabled'),
+    t('Weight'),
+    array(
+      'data' => t('Operations'),
+      'colspan' => 3,
+    ),
+  );
+  $output = theme('table', array(
+    'header' => $header,
+    'rows' => $rows,
+    'attributes' => array('id' => 'password-policy-order'),
+    'empty' => t('There are currently no policies. <a href="!url">Add a new one</a>.',
+      array('!url' => url('admin/config/people/password_policy/add'))),
+  ));
+  $output .= drupal_render_children($form);
+
+  drupal_add_tabledrag('password-policy-order', 'order', 'sibling', 'password-policy-order-weight');
+
+  return $output;
+}
+
+/**
+ * The default view for the password policy.
+ */
+function password_policy_admin_view($policy) {
+  $output = check_plain($policy['description']);
+  $header = array(t('Name'), t('Constraint'));
+  $rows = array();
+
+  $roles = _password_policy_admin_list_roles($policy['pid']);
+  if (!empty($roles)) {
+    $rows[] = array(t('Roles'), theme('item_list', array('items' => $roles)));
+  }
+  if (!empty($policy['expiration'])) {
+    $rows[] = array(t('Expiration'), $policy['expiration']);
+  }
+  if (!empty($policy['warning'])) {
+    $rows[] = array(t('Warning'), check_plain($policy['warning']));
+  }
+
+  foreach ($policy['constraints'] as $key => $val) {
+    $desc = _password_policy_constraint_description($key);
+    $rows[] = array($desc['name'], $val);
+  }
+  if (empty($rows)) {
+    $rows[] = array(array('data' => t('No policies defined.'), 'colspan' => 2));
+  }
+  $output .= theme('table', array('header' => $header, 'rows' => $rows));
+
+  return $output;
+}
+
+/**
+ * Form display for new or to be edited password policies.
+ */
+function password_policy_admin_form($form, &$form_state, $policy = NULL) {
+  $form['policy'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Policy'),
+    '#collapsible' => FALSE,
+    '#collapsed' => FALSE,
+  );
+  $form['policy']['name'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Name'),
+    '#default_value' => isset($policy['name']) ? $policy['name'] : '',
+    '#maxlength' => 64,
+    '#required' => TRUE,
+  );
+  $form['policy']['description'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Description'),
+    '#default_value' => isset($policy['description']) ? $policy['description'] : '',
+    '#size' => 128,
+    '#maxlength' => 255,
+  );
+
+  $form['roles'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Roles'),
+    '#collapsible' => TRUE,
+    '#collapsed' => FALSE,
+  );
+  $form['roles']['roles'] = array(
+    '#type' => 'checkboxes',
+    '#title' => t('Roles'),
+    '#options' => user_roles(TRUE),
+    '#default_value' => isset($policy['roles']) ? $policy['roles'] : array(),
+    '#description' => t('Select the roles that this policy will apply to.'),
+  );
+
+  $authentication_modules = _password_policy_get_authentication_modules();
+  if (count($authentication_modules)) {
+    $form['excluded_authentication_modules'] = array(
+      '#type' => 'fieldset',
+      '#title' => t('Excluded Authentication Modules'),
+      '#collapsible' => TRUE,
+      '#collapsed' => FALSE,
+    );
+    $form['excluded_authentication_modules']['excluded_authentication_modules'] = array(
+      '#type' => 'checkboxes',
+      '#title' => t('Excluded Authentication Modules'),
+      '#options' => drupal_map_assoc($authentication_modules),
+      '#default_value' => isset($policy['excluded_authentication_modules']) ? $policy['excluded_authentication_modules'] : array(),
+      '#description' => t('Select the authentication modules that this policy will not apply to.'),
+    );
+  }
+
+  $form['expiration'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Expiration'),
+    '#collapsible' => TRUE,
+    '#collapsed' => FALSE,
+  );
+  $form['expiration']['expiration'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Password Expiration'),
+    '#default_value' => isset($policy['expiration']) ? $policy['expiration'] : '0',
+    '#size' => 5,
+    '#maxlength' => 5,
+    '#description' => t('The passwords will expire after this number of days. The users with expired passwords will be blocked. Setting this field to 0 will not put any password expiration constraints.'),
+  );
+  $form['expiration']['warning'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Password Expiration Warning'),
+    '#default_value' => isset($policy['warning']) ? $policy['warning'] : '',
+    '#size' => 10,
+    '#field_suffix' => t('days before password expiration'),
+    '#description' => t("<p>When to send a password expiration warning e-mail.  To send warning e-mails on multiple days, enter numbers separated by commas.  For example, '30,7' will cause an expiration warning e-mail to be sent both 30 and 7 days before expiration. Leave blank to not send or display any warnings.</p><p><strong>Important:</strong> Drupal cron must be run once per day. Otherwise, warning e-mails might not be sent. The default Drupal cron configuration relies on site visitors to invoke cron. If your site might not receive visitors on a day, you should run cron from outside the site daily. See <a href='https://www.drupal.org/cron'>Setting Up Cron</a>.</p>"),
+  );
+
+  $form['constraints'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Constraints'),
+    '#collapsible' => TRUE,
+    '#collapsed' => FALSE,
+  );
+
+  foreach (_password_policy_constraints() as $constraint) {
+    $desc = _password_policy_constraint_description($constraint);
+    $form['constraints']['constraint_' . $constraint] = array(
+      '#type' => 'textfield',
+      '#size' => 5,
+      '#default_value' => isset($policy['constraints'][$constraint]) ? $policy['constraints'][$constraint] : NULL,
+      '#maxlength' => 3,
+      '#title' => filter_xss($desc['name']),
+      '#description' => filter_xss($desc['description']),
+    );
+  }
+
+  $form['actions'] = array('#type' => 'actions');
+
+  $form['actions']['submit'] = array(
+    '#type' => 'submit',
+    '#value' => is_array($policy) ? t('Save') : t('Create'),
+  );
+
+  if ($policy) {
+    $form['actions']['delete'] = array(
+      '#type' => 'submit',
+      '#value' => t('Delete'),
+    );
+    $form['actions']['pid'] = array(
+      '#type' => 'hidden',
+      '#value' => isset($policy['pid']) ? $policy['pid'] : '',
+    );
+  }
+
+  return $form;
+}
+
+/**
+ * Form validation hook for new or edited password policies.
+ */
+function password_policy_admin_form_validate($form, &$form_state) {
+  $roles = array_filter($form_state['values']['roles']);
+  if (empty($roles)) {
+    form_set_error('roles', t('You must select at least one role for a policy to apply to.'));
+  }
+  if (!empty($form_state['values']['warning']) && !preg_match('/^[0-9,]+$/', $form_state['values']['warning'])) {
+    form_set_error('warning', t('Warning must only contain digits and commas.'));
+  }
+  if (_password_policy_validating_new_policy($form_state)) {
+    _password_policy_validate_unique_policy_name($form_state);
+  }
+}
+
+/**
+ * Determines whether a new policy is being validated.
+ *
+ * The policy being validated could be either new or edited.
+ */
+function _password_policy_validating_new_policy($form_state) {
+  return !isset($form_state['values']['pid']);
+}
+
+/**
+ * Validates that the policy name is unique.
+ */
+function _password_policy_validate_unique_policy_name($form_state) {
+  $query = db_select('password_policy', 'p')
+    ->condition('p.name', $form_state['values']['name'])
+    ->fields('p', array('pid'));
+  $row_count = $query->execute()->rowCount();
+  if ($row_count > 0) {
+    form_set_error('name', t('A policy with the same name already exists. Please enter a different name.'));
+  }
+}
+
+/**
+ * Form submission hook for new or edited password policies.
+ */
+function password_policy_admin_form_submit($form, &$form_state) {
+  $op = $form_state['values']['op'];
+
+  if ($op == t('Delete')) {
+    drupal_goto('admin/config/people/password_policy/' . $form_state['values']['pid'] . '/delete');
+  }
+
+  _password_policy_admin_form_save_policy($form_state);
+
+  $form_state['redirect'] = 'admin/config/people/password_policy/list';
+}
+
+/**
+ * Saves policy from submitted policy form.
+ */
+function _password_policy_admin_form_save_policy($form_state) {
+  $policy = _password_policy_admin_form_get_policy($form_state);
+  password_policy_save_policy($policy);
+  _password_policy_admin_form_set_saved_message($policy);
+}
+
+/**
+ * Gets policy from submitted policy form.
+ *
+ * @param array $form_state
+ *   Form state.
+ *
+ * @return array
+ *   Policy array.
+ */
+function _password_policy_admin_form_get_policy(array $form_state) {
+  $form_values = $form_state['values'];
+  $policy = array(
+    'name' => $form_values['name'],
+    'description' => $form_values['description'],
+    'constraints' => _password_policy_admin_form_get_constraints($form_state),
+    'expiration' => $form_values['expiration'],
+    'warning' => $form_values['warning'],
+    'roles' => $form_values['roles'],
+    'excluded_authentication_modules' => isset($form_values['excluded_authentication_modules']) ? $form_values['excluded_authentication_modules'] : array(),
+  );
+  if (isset($form_values['pid'])) {
+    // Editing an existing policy. Get pid.
+    $policy['pid'] = $form_values['pid'];
+  }
+  else {
+    // Adding a new policy. Disable by default.
+    $policy['enabled'] = 0;
+  }
+
+  return $policy;
+}
+
+/**
+ * Sets message indicating policy has been saved.
+ *
+ * @param array $policy
+ *   Policy array.
+ */
+function _password_policy_admin_form_set_saved_message(array $policy) {
+  if (isset($policy['pid'])) {
+    drupal_set_message(t('Policy %name has been updated.', array('%name' => $policy['name'])));
+  }
+  else {
+    drupal_set_message(t('Policy %name has been created.', array('%name' => $policy['name'])));
+  }
+}
+
+/**
+ * Gets constraints from submitted policy form.
+ *
+ * @param array $form_state
+ *   Form state.
+ *
+ * @return array
+ *   Constraints array.
+ */
+function _password_policy_admin_form_get_constraints(array $form_state) {
+  $constraints = array();
+  foreach ($form_state['values'] as $key => $value) {
+    // If we have no form value, then we have no constraint to set.
+    if (!is_array($value)) {
+      // Dodge issues with roles array.
+      $value = trim($value);
+      if ($value != '' && preg_match('/^constraint_/', $key)) {
+        $constraints[substr($key, 11)] = $value;
+      }
+    }
+  }
+  return $constraints;
+}
+
+/**
+ * Confirmation form for the deletion of a password policy.
+ *
+ * Deletion takes place in password_policy_admin_delete_submit().
+ */
+function password_policy_admin_delete($form, $form_state, $policy) {
+  $form['pid'] = array('#type' => 'hidden', '#value' => $policy['pid']);
+
+  return confirm_form($form, t('Are you sure you want to delete the policy %name?', array('%name' => $policy['name'])), 'admin/config/people/password_policy/list', t('This action cannot be undone.'), t('Delete'), t('Cancel'));
+}
+
+/**
+ * Submit hook for the delete policy operation.
+ */
+function password_policy_admin_delete_submit($form, &$form_state) {
+  $pid = $form_state['values']['pid'];
+  $policy = _password_policy_load_policy_by_pid($pid);
+
+  db_delete('password_policy')
+    ->condition('pid', $pid)
+    ->execute();
+  db_delete('password_policy_role')
+    ->condition('pid', $pid)
+    ->execute();
+  drupal_set_message(t('Password policy %policy was deleted.', array('%policy' => $policy['name'])));
+  watchdog('password_policy', 'Policy %name was deleted.', array('%name' => $policy['name']), WATCHDOG_NOTICE);
+  drupal_goto('admin/config/people/password_policy/list');
+}
+
+/**
+ * Forced password change form.
+ */
+function password_policy_password_change_settings() {
+  $form = array();
+
+  $form['password_policy_new_login_change'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Force password change on first-time login'),
+    '#default_value' => variable_get('password_policy_new_login_change', 0),
+  );
+  $roles = user_roles(TRUE);
+  $form['password_policy_force_change_roles'] = array(
+    '#type' => 'checkboxes',
+    '#options' => $roles,
+    '#title' => t('Force users in the following roles to change their password'),
+    '#description' => t('Users who are not logged in will be required to change their password immediately upon login. Users who are currently logged in will be required to change their password upon their next page request, but after changing their password will be redirected back to the page they were attempting to access.'),
+  );
+
+  $form['actions'] = array('#type' => 'actions');
+  $form['actions']['submit'] = array(
+    '#type' => 'submit',
+    '#value' => t('Save changes'),
+  );
+
+  return $form;
+}
+
+/**
+ * Submit hook for forced password change form.
+ */
+function password_policy_password_change_settings_submit($form, &$form_state) {
+  global $user;
+  $selected_roles = array();
+  variable_set('password_policy_new_login_change', $form_state['values']['password_policy_new_login_change']);
+  if ($form_state['values']['password_policy_new_login_change'] == 1) {
+    watchdog('password_policy', 'New user accounts must change password on new login enabled by !admin.', array('!admin' => $user->name), WATCHDOG_NOTICE);
+  }
+  ($form_state['values']['password_policy_new_login_change']) ? drupal_set_message(t('New users will be required to change their password on first-time login.')) : drupal_set_message(t('New users will not be required to change their password on first-time login.'));
+
+  foreach ($form_state['values']['password_policy_force_change_roles'] as $role) {
+    // Skip over null values returned by unselected roles.
+    if ($role == 0) {
+      continue;
+    }
+    $uids = array();
+    // Special handling for authenticated users role, since this role makes no
+    // entries in the users_roles table.
+    if ($role == 2) {
+      // No point in flagging anonymous since they can't log in anyway.
+      $db_uids = db_query('SELECT uid FROM {users} WHERE uid <> 0')->fetchCol();
+    }
+    else {
+      $db_uids = db_query('SELECT uid FROM {users_roles} WHERE rid = :rid', array('rid' => $role))->fetchCol();
+    }
+    foreach ($db_uids as $uid) {
+      if (($uid == 1 && variable_get('password_policy_admin', 1)) || $uid > 1) {
+        $uids[] = $uid;
+      }
+    }
+    if (!empty($uids)) {
+      // If there are a large number of users to process, PHP memory limit may
+      // be reached, so process the users in batches.
+      $chunks = array_chunk($uids, 50000);
+      foreach ($chunks as $chunk) {
+        db_update('password_policy_force_change')
+          ->fields(array(
+            'force_change' => 1,
+          ))
+          ->condition('uid', $chunk, 'IN')
+          ->execute();
+      }
+    }
+    $selected_roles[] = $role;
+  }
+  if (count($selected_roles)) {
+    $roles = user_roles(TRUE);
+    $list = array();
+    foreach ($selected_roles as $sr) {
+      $list[] = $roles[$sr];
+    }
+    $list = implode(', ', $list);
+    drupal_set_message(t('Users in the following roles will be required to immediately change their password: %list', array('%list' => $list)), 'status');
+    watchdog('password_policy', '!admin has flagged users in the following roles to immediately change their password: %list', array('%list' => $list, '!admin' => $user->name), WATCHDOG_NOTICE);
+  }
+  else {
+    drupal_set_message(t('No roles were selected.'));
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/password_policy.authmap.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,75 @@
+<?php
+
+/**
+ * @file
+ * Functions to support excluding authentication modules from policies.
+ */
+
+/**
+ * Whether policy excludes an authentication module used to authenticate user.
+ *
+ * @param array $policy
+ *   Policy array.
+ * @param object $account
+ *   User object.
+ *
+ * @return bool
+ *   TRUE if the policy excludes authentication module used to authenticate
+ *   user; otherwise, FALSE.
+ */
+function _password_policy_policy_excludes_authentication_module_of_user(array $policy, $account) {
+  $excluded_authentication_modules = $policy['excluded_authentication_modules'];
+  if (empty($excluded_authentication_modules)) {
+    return FALSE;
+  }
+  $user_authentication_modules = _password_policy_get_authentication_modules_for_user($account);
+  $user_excluded_authentication_modules = array_intersect($excluded_authentication_modules, $user_authentication_modules);
+  return !empty($user_excluded_authentication_modules);
+}
+
+/**
+ * Loads excluded authentication modules into policy.
+ *
+ * @param array $policy
+ *   Policy array.
+ */
+function _password_policy_load_policy_excluded_authentication_modules(array &$policy) {
+  $excluded_authentication_modules = db_select('password_policy_excluded_authentication_modules', 'p', array('target' => 'slave'))
+    ->fields('p', array('module'))
+    ->condition('pid', $policy['pid'])
+    ->execute()
+    ->fetchCol();
+  $policy['excluded_authentication_modules'] = $excluded_authentication_modules;
+}
+
+/**
+ * Gets authentication modules used to authenticate user.
+ *
+ * @param object $account
+ *   User object.
+ *
+ * @return array
+ *   Authentication modules.
+ */
+function _password_policy_get_authentication_modules_for_user($account) {
+  $authentication_modules = array();
+  $authmaps = user_get_authmaps($account->name);
+  if ($authmaps) {
+    $authentication_modules = array_keys($authmaps);
+  }
+  return $authentication_modules;
+}
+
+/**
+ * Gets all authentication modules in use on site.
+ *
+ * @return array
+ *   Authentication modules.
+ */
+function _password_policy_get_authentication_modules() {
+  return db_select('authmap', 'a')
+    ->fields('a', array('module'))
+    ->groupBy('module')
+    ->execute()
+    ->fetchCol();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/password_policy.features.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,89 @@
+<?php
+
+/**
+ * @file
+ * Integrates Features for Password Policy.
+ */
+
+/**
+ * Implements hook_features_export_options().
+ */
+function password_policy_features_export_options() {
+  return db_query('SELECT name FROM {password_policy}', array(), array('target' => 'slave'))
+    ->fetchAllKeyed(0, 0);
+}
+
+/**
+ * Implements hook_features_export().
+ */
+function password_policy_features_export($data, &$export, $module_name) {
+  $export['dependencies']['features'] = 'features';
+  $export['dependencies']['password_policy'] = 'password_policy';
+
+  foreach ($data as $policy_name) {
+    $policy = password_policy_load_policy_by_name($policy_name);
+
+    // Export roles to which policy applies.
+    foreach ($policy['roles'] as $rid) {
+      $role = user_role_load($rid);
+      $export['features']['user_role'][$role->name] = $role->name;
+    }
+
+    $export['features']['password_policy'][$policy_name] = $policy_name;
+  }
+
+  return $export;
+}
+
+/**
+ * Implements hook_features_export_render().
+ */
+function password_policy_features_export_render($module_name, $data, $export = NULL) {
+  $code = array();
+  foreach ($data as $policy_name) {
+    $policy = password_policy_load_policy_by_name($policy_name);
+    if ($policy) {
+      $roles = array();
+      foreach ($policy['roles'] as $rid) {
+        $role = user_role_load($rid);
+        $roles[] = $role->name;
+      }
+      $policy['roles'] = $roles;
+      unset($policy['pid']);
+      $code[$policy['name']] = $policy;
+    }
+  }
+
+  $code = '  return ' . features_var_export($code, '  ') . ';';
+
+  return array('password_policy_features_default_policies' => $code);
+}
+
+/**
+ * Implements hook_features_revert().
+ */
+function password_policy_features_revert($module_name) {
+  password_policy_features_rebuild($module_name);
+}
+
+/**
+ * Implements hook_features_rebuild().
+ */
+function password_policy_features_rebuild($module_name) {
+  $saved_policies = module_invoke($module_name, 'password_policy_features_default_policies');
+  foreach ($saved_policies as $policy) {
+    $roles = array();
+    foreach ($policy['roles'] as $name) {
+      $role = user_role_load_by_name($name);
+      $roles[$role->rid] = $role->rid;
+    }
+    $policy['roles'] = $roles;
+
+    $exists = password_policy_load_policy_by_name($policy['name']);
+    if ($exists) {
+      $policy['pid'] = $exists['pid'];
+    }
+
+    password_policy_save_policy($policy);
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/password_policy.info	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,14 @@
+name = Password policy
+description = The Password Policy module allows you to enforce a specific level of password complexity for the user passwords on the system.
+core = 7.x
+files[] = tests/password_policy.test
+files[] = tests/password_policy_authmap.test
+files[] = tests/password_policy_expiration.test
+configure = admin/config/people/password_policy
+
+; Information added by Drupal.org packaging script on 2018-03-06
+version = "7.x-1.15"
+core = "7.x"
+project = "password_policy"
+datestamp = "1520367189"
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/password_policy.install	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,547 @@
+<?php
+
+/**
+ * @file
+ * Password Policy module installation and upgrade code.
+ */
+
+/**
+ * Implements hook_schema().
+ */
+function password_policy_schema() {
+  return array(
+    'password_policy' => array(
+      'description' => 'Stores password policies.',
+      'fields' => array(
+        'pid' => array(
+          'description' => 'Primary Key: Unique password policy ID.',
+          'type' => 'serial',
+          'not null' => TRUE,
+        ),
+        'name' => array(
+          'description' => 'The name of the policy.',
+          'type' => 'varchar',
+          'length' => 64,
+          'not null' => TRUE,
+          'default' => '',
+        ),
+        'description' => array(
+          'description' => 'The description of the policy.',
+          'type' => 'varchar',
+          'length' => 255,
+          'default' => '',
+        ),
+        'enabled' => array(
+          'description' => 'Whether the policy is enabled.',
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+          'size' => 'tiny',
+        ),
+        'constraints' => array(
+          'description' => 'The policy\'s serialized constraints.',
+          'type' => 'varchar',
+          'length' => 1024,
+          'not null' => TRUE,
+          'default' => '',
+          'serialize' => TRUE,
+        ),
+        'created' => array(
+          'description' => 'Timestamp for when the policy was created.',
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+        'expiration' => array(
+          'description' => 'The passwords will expire after this number of days.',
+          'type' => 'int',
+          'default' => 0,
+        ),
+        'warning' => array(
+          'description' => 'Comma separated list of days when warning is sent out.',
+          'type' => 'varchar',
+          'length' => 64,
+        ),
+        'weight' => array(
+          'description' => 'Weight of the policy, used to order active policies.',
+          'type' => 'int',
+          'size' => 'tiny',
+          'not null' => TRUE,
+          'default'  => 0,
+        ),
+      ),
+      'primary key' => array('pid'),
+      'unique keys' => array(
+        'name' => array('name'),
+      ),
+    ),
+    'password_policy_history' => array(
+      'description' => 'Stores user\'s old password hashes.',
+      'fields' => array(
+        'pid' => array(
+          'description' => 'Primary Key: Unique password policy users ID.',
+          'type' => 'serial',
+          'not null' => TRUE,
+        ),
+        'uid' => array(
+          'description' => 'User\'s {users}.uid.',
+          'type' => 'int',
+          'not null' => TRUE,
+        ),
+        'pass' => array(
+          'type' => 'varchar',
+          'length' => 128,
+          'not null' => TRUE,
+          'default' => '',
+          'description' => 'User\'s password (hashed).',
+        ),
+        'created' => array(
+          'description' => 'Timestamp for when the policy was created.',
+          'type' => 'int',
+          'not null' => TRUE,
+        ),
+      ),
+      'foreign keys' => array(
+        'password_policy' => array(
+          'table' => 'password_policy',
+          'columns' => array('pid' => 'pid'),
+        ),
+        'user' => array(
+          'table' => 'users',
+          'columns' => array('uid' => 'uid'),
+        ),
+      ),
+      'indexes' => array('uid' => array('uid')),
+      'primary key' => array('pid'),
+    ),
+    'password_policy_expiration' => array(
+      'description' => 'Stores users password expiration data.',
+      'fields' => array(
+        'pid' => array(
+          'description' => 'Primary Key: Unique password policy expirations ID.',
+          'type' => 'serial',
+          'not null' => TRUE,
+        ),
+        'uid' => array(
+          'description' => 'User\'s {users}.uid.',
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+        'warning' => array(
+          'description' => 'Timestamp for when the warning was shown.',
+          'type' => 'int',
+        ),
+        'blocked' => array(
+          'description' => 'Timestamp for when the user was blocked.',
+          'type' => 'int',
+        ),
+        'unblocked' => array(
+          'description' => 'Timestamp for when the user was unblocked.',
+          'type' => 'int',
+        ),
+      ),
+      'primary key' => array('pid'),
+      'foreign keys' => array(
+        'password_policy' => array(
+          'table' => 'password_policy',
+          'columns' => array('pid' => 'pid'),
+        ),
+        'role' => array(
+          'table' => 'role',
+          'columns' => array('rid' => 'rid'),
+        ),
+      ),
+      'indexes' => array('uid' => array('uid')),
+    ),
+    'password_policy_force_change' => array(
+      'description' => 'Forced password reset status.',
+      'fields' => array(
+        'uid' => array(
+          'type' => 'int',
+          'not null' => TRUE,
+        ),
+        'force_change' => array(
+          'type' => 'int',
+          'default' => 0,
+        ),
+      ),
+      'foreign keys' => array(
+        'user' => array(
+          'table' => 'users',
+          'columns' => array('uid' => 'uid'),
+        ),
+      ),
+      'indexes' => array('uid' => array('uid')),
+      'primary key' => array('uid'),
+    ),
+    'password_policy_role' => array(
+      'description' => 'Links policies with roles.',
+      'fields' => array(
+        'pid' => array(
+          'description' => 'Policy ID.',
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+        'rid' => array(
+          'description' => 'Role ID.',
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+      ),
+      'foreign keys' => array(
+        'password_policy' => array(
+          'table' => 'password_policy',
+          'columns' => array('pid' => 'pid'),
+        ),
+        'role' => array(
+          'table' => 'role',
+          'columns' => array('rid' => 'rid'),
+        ),
+      ),
+      'primary key' => array('rid', 'pid'),
+    ),
+    'password_policy_excluded_authentication_modules' => array(
+      'description' => 'Authentication modules to be excluded from specified policies.',
+      'fields' => array(
+        'pid' => array(
+          'description' => 'Policy ID.',
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+        'module' => array(
+          'description' => 'Module.',
+          'type' => 'varchar',
+          'length' => 128,
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+      ),
+      'foreign keys' => array(
+        'password_policy' => array(
+          'table' => 'password_policy',
+          'columns' => array('pid' => 'pid'),
+        ),
+        'module' => array(
+          'table' => 'authmap',
+          'columns' => array('module' => 'module'),
+        ),
+      ),
+      'primary key' => array('module', 'pid'),
+    ),
+  );
+}
+
+/**
+ * Implements hook_enable().
+ */
+function password_policy_enable() {
+  drupal_set_message(t('Password policy module successfully installed. Please review the available <a href="@settings">configuration settings</a>.', array('@settings' => url('admin/config/people/password_policy'))));
+}
+
+/**
+ * Implements hook_install().
+ */
+function password_policy_install() {
+  $query = db_select('users', 'u')
+    ->fields('u', array('uid'))
+    ->distinct()
+    ->condition('u.uid', 0, '>');
+  db_insert('password_policy_force_change')
+    ->fields(array('uid'))
+    ->from($query)
+    ->execute();
+}
+
+/**
+ * Implements hook_uninstall().
+ */
+function password_policy_uninstall() {
+  variable_del('password_policy_admin');
+  variable_del('password_policy_begin');
+  variable_del('password_policy_block');
+  variable_del('password_policy_show_restrictions');
+  variable_del('password_policy_warning_subject');
+  variable_del('password_policy_warning_body');
+  variable_del('password_policy_new_login_change');
+  variable_del('password_policy_force_change_reset');
+  variable_del('password_policy_force_change_by_mail');
+  variable_del('password_policy_force_change_path');
+  variable_del('password_policy_force_change_extra_allowed_paths');
+}
+
+/**
+ * Remove unused 'name' column from {password_policy_role}.
+ */
+function password_policy_update_7000() {
+  db_drop_field('password_policy_role', 'name');
+  db_drop_unique_key('password_policy_role', 'name');
+}
+
+/**
+ * The implementation of password_policy_update_7001() has been removed.
+ *
+ * Do not re-implement it. hook_update_N() functions should not be renumbered.
+ */
+
+/**
+ * The implementation of password_policy_update_7002() has been removed.
+ *
+ * Do not re-implement it. hook_update_N() functions should not be renumbered.
+ */
+
+/**
+ * Notify of change to username constraint behavior.
+ */
+function password_policy_update_7100() {
+  return t('The username constraint has changed to disallow passwords containing the username in addition to passwords matching the username.');
+}
+
+/**
+ * Update schema left unchanged from D6 -> D7 migration.
+ */
+function password_policy_update_7101() {
+  db_change_field('password_policy', 'expiration', 'expiration',
+    array(
+      'description' => 'The passwords will expire after this number of days.',
+      'type' => 'int',
+      'default' => 0,
+    ),
+    array()
+  );
+  db_change_field('password_policy_history', 'pass', 'pass',
+    array(
+      'description' => 'User\'s password (hashed).',
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    array()
+  );
+}
+
+/**
+ * Convert any D6 password hashes in history to D7 format.
+ *
+ * This may be a lengthy process, and is performed batch-wise.
+ *
+ * Code mostly copied from user_update_7000(), which updates user password
+ * hashes upon D6 -> D7 migration.
+ *
+ * @see user_update_7000()
+ */
+function password_policy_update_7102(&$sandbox) {
+  // Ignore Coder warning to minimize differences versus user_update_7000().
+  // @ignore sniffer_commenting_inlinecomment_spacingbefore:function
+  // @codingStandardsIgnoreStart
+  $sandbox['#finished'] = 0;
+  // Multi-part update.
+  if (!isset($sandbox['password_from'])) {
+    $sandbox['password_from'] = 0;
+    $sandbox['password_count'] = db_query('SELECT COUNT(pid) FROM {password_policy_history}')->fetchField();
+  }
+  else {
+    require_once DRUPAL_ROOT . '/' . variable_get('password_inc', 'includes/password.inc');
+    //  Hash again all current hashed passwords.
+    $has_rows = FALSE;
+    // Update this many per page load.
+    $count = 1000;
+    $result = db_query_range('SELECT pid, pass FROM {password_policy_history} ORDER BY pid', $sandbox['password_from'], $count);
+    foreach ($result as $row) {
+      $has_rows = TRUE;
+
+      // If the $row->pass value is not a MD5 hash (a 32 character
+      // hexadecimal string) then skip it.
+      if (!preg_match('/^[0-9a-f]{32}$/', $row->pass)) {
+        continue;
+      }
+
+      $new_hash = user_hash_password($row->pass);
+      if ($new_hash) {
+        // Indicate an updated password.
+        $new_hash  = 'U' . $new_hash;
+        db_update('password_policy_history')
+          ->fields(array('pass' => $new_hash))
+          ->condition('pid', $row->pid)
+          ->execute();
+      }
+    }
+    $sandbox['#finished'] = $sandbox['password_count'] == 0 ? 1 : $sandbox['password_from'] / $sandbox['password_count'];
+
+    $sandbox['password_from'] += $count;
+    if (!$has_rows) {
+      $sandbox['#finished'] = 1;
+      return t('User passwords in Password Policy history rehashed to improve security');
+    }
+  }
+  // @codingStandardsIgnoreEnd
+}
+
+/**
+ * Convert expiration warning e-mail tokens to Drupal 7 format.
+ */
+function password_policy_update_7103() {
+  $variables = array(
+    'password_policy_warning_subject',
+    'password_policy_warning_body',
+  );
+  foreach ($variables as $variable) {
+    _password_policy_convert_variable_tokens_d6_to_d7($variable);
+  }
+}
+
+/**
+ * Converts tokens in a Password Policy string variable to Drupal 7 format.
+ *
+ * @param string $variable
+ *   Variable name.
+ */
+function _password_policy_convert_variable_tokens_d6_to_d7($variable) {
+  $value = variable_get($variable, FALSE);
+  if ($value) {
+    $value = _password_policy_replace_d6_with_d7_tokens($value);
+    variable_set($variable, $value);
+  }
+}
+
+/**
+ * Replaces D6 tokens in a Password Policy string with D7 tokens.
+ */
+function _password_policy_replace_d6_with_d7_tokens($subject) {
+  $d6_to_d7_tokens = _password_policy_get_d6_to_d7_tokens_mapping();
+  $d6_tokens = array_keys($d6_to_d7_tokens);
+  $d7_tokens = array_values($d6_to_d7_tokens);
+  return str_replace($d6_tokens, $d7_tokens, $subject);
+}
+
+/**
+ * Gets D6-to-D7 mapping for tokens used by the Password Policy module.
+ *
+ * @see user_update_7017()
+ */
+function _password_policy_get_d6_to_d7_tokens_mapping() {
+  // D6-to-D7 mapping for tokens that are used by User module e-mails. Copied
+  // from user_update_7017().
+  $user_email_tokens = array(
+    '!site' => '[site:name]',
+    '!username' => '[user:name]',
+    '!mailto' => '[user:mail]',
+    '!login_uri' => '[site:login-url]',
+    '!uri_brief' => '[site:url-brief]',
+    '!login_url' => '[user:one-time-login-url]',
+    '!uri' => '[site:url]',
+    '!date' => '[date:medium]',
+    '!password' => '',
+  );
+  // D6-to-D7 mapping for Password Policy tokens.
+  $password_policy_email_tokens = array(
+    '!days_left' => '[password-policy:days-left]',
+    '!edit_uri' => '[password-policy:password-edit-url]',
+  );
+  // Combined D6-to-D7 mapping for tokens.
+  $tokens = array_merge($user_email_tokens, $password_policy_email_tokens);
+  return $tokens;
+}
+
+/**
+ * Preserve "Admin (UID=1) password expires" setting.
+ *
+ * For increased security, the admin (UID=1) password is no longer exempt from
+ * password expiration by default. That is, "Admin (UID=1) password expires" is
+ * now checked by default.
+ *
+ * This database update will keep the current setting so that the change in the
+ * default will have no effect on existing installations.
+ */
+function password_policy_update_7104() {
+  $current_setting = variable_get('password_policy_admin', 0);
+  variable_set('password_policy_admin', $current_setting);
+}
+
+/**
+ * Improve naming of database field.
+ *
+ * Rename "policy" of {password_policy} to "constraints".
+ */
+function password_policy_update_7106() {
+  $table_name = 'password_policy';
+  $old_field_name = 'policy';
+  $new_field_name = 'constraints';
+  $field_spec = array(
+    'description' => 'The policy\'s serialized constraints.',
+    'type' => 'varchar',
+    'length' => 1024,
+    'not null' => TRUE,
+    'default' => '',
+    'serialize' => TRUE,
+  );
+  db_change_field($table_name, $old_field_name, $new_field_name, $field_spec);
+}
+
+/**
+ * Add primary key to {password_policy_force_change}.
+ */
+function password_policy_update_7107() {
+  db_add_primary_key('password_policy_force_change', array('uid'));
+}
+
+/**
+ * Rename "Complexity" constraint to "Character Types".
+ */
+function password_policy_update_7108() {
+  $result = db_query('SELECT pid, constraints FROM {password_policy}');
+  foreach ($result as $row) {
+    $pid = $row->pid;
+    $constraints = $row->constraints;
+    $constraints = unserialize($constraints);
+    if (isset($constraints['complexity'])) {
+      $constraints['character_types'] = $constraints['complexity'];
+      unset($constraints['complexity']);
+      $constraints = serialize($constraints);
+      db_update('password_policy')
+        ->fields(array('constraints' => $constraints))
+        ->condition('pid', $pid)
+        ->execute();
+    }
+  }
+}
+
+/**
+ * Add {password_policy_excluded_authentication_modules} table.
+ */
+function password_policy_update_7109() {
+  $schema['password_policy_excluded_authentication_modules'] = array(
+    'description' => 'Authentication modules to be excluded from specified policies.',
+    'fields' => array(
+      'pid' => array(
+        'description' => 'Policy ID.',
+        'type' => 'int',
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'module' => array(
+        'description' => 'Module.',
+        'type' => 'varchar',
+        'length' => 128,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+    ),
+    'foreign keys' => array(
+      'password_policy' => array(
+        'table' => 'password_policy',
+        'columns' => array('pid' => 'pid'),
+      ),
+      'module' => array(
+        'table' => 'authmap',
+        'columns' => array('module' => 'module'),
+      ),
+    ),
+    'primary key' => array('module', 'pid'),
+  );
+  db_create_table('password_policy_excluded_authentication_modules', $schema['password_policy_excluded_authentication_modules']);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/password_policy.module	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,1829 @@
+<?php
+
+/**
+ * @file
+ * Allows enforcing restrictions on user passwords by defining policies.
+ */
+
+/****************************************************************************/
+
+include_once 'password_policy.authmap.inc';
+include_once 'password_policy.time.inc';
+
+define('PASSWORD_POLICY_DEFAULT_WARNING_SUBJECT', 'Password expiration warning for [user:name] at [site:name]');
+define('PASSWORD_POLICY_DEFAULT_WARNING_BODY', "[user:name],\n\nYour password at [site:name] will expire in less than [password-policy:days-left] day(s).\n\nPlease go to [password-policy:password-edit-url] to change your password.");
+
+/****************************************************************************/
+/* Core API hooks                                                           */
+/****************************************************************************/
+
+/**
+ * Implements hook_help().
+ */
+function password_policy_help($path, $arg) {
+  switch ($path) {
+    case 'admin/help#password_policy':
+      return '<p>' . t('The Password Policy module allows you to enforce a specific level of password complexity for the user passwords on the system.') . '</p>';
+  }
+}
+
+/**
+ * Implements hook_init().
+ */
+function password_policy_init() {
+  global $user;
+
+  // Check password reset status and force a reset if needed.
+  if (_password_policy_is_password_change_forced($user->uid) &&
+      !_password_policy_is_path_allowed_when_password_change_forced()) {
+    _password_policy_set_password_change_forced_message();
+    _password_policy_go_to_password_change_page();
+  }
+}
+
+/**
+ * Implements hook_permission().
+ */
+function password_policy_permission() {
+  return array(
+    'administer password policies' => array(
+      'title' => t('Administer policies'),
+    ),
+    'unblock expired accounts' => array(
+      'title' => t('Unlock expired accounts'),
+    ),
+    'force password change' => array(
+      'title' => t('Force password change'),
+    ),
+  );
+}
+
+/**
+ * Implements hook_theme().
+ */
+function password_policy_theme() {
+  return array(
+    'password_policy_admin_list' => array(
+      'render element' => 'form',
+      'file' => 'password_policy.admin.inc',
+    ),
+  );
+}
+
+/**
+ * Implements hook_menu().
+ */
+function password_policy_menu() {
+  $items['admin/config/people/password_policy'] = array(
+    'title' => 'Password policies',
+    'description' => 'Configures policies for user account passwords.',
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('password_policy_admin_settings'),
+    'access arguments' => array('administer password policies'),
+    'file' => 'password_policy.admin.inc',
+  );
+  $items['admin/config/people/password_policy/configure'] = array(
+    'title' => 'Settings',
+    'type' => MENU_DEFAULT_LOCAL_TASK,
+  );
+  $items['admin/config/people/password_policy/list'] = array(
+    'title' => 'List',
+    'type' => MENU_LOCAL_TASK,
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('password_policy_admin_list'),
+    'access arguments' => array('administer password policies'),
+    'weight' => 1,
+    'file' => 'password_policy.admin.inc',
+  );
+  $items['admin/config/people/password_policy/add'] = array(
+    'title' => 'Add',
+    'type' => MENU_LOCAL_TASK,
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('password_policy_admin_form', NULL),
+    'access arguments' => array('administer password policies'),
+    'weight' => 2,
+    'file' => 'password_policy.admin.inc',
+  );
+  $items['admin/config/people/password_policy/%password_policy_policy'] = array(
+    'title' => 'Password policy',
+    'title callback' => 'password_policy_format_title',
+    'title arguments' => array(4),
+    'page callback' => 'password_policy_admin_view',
+    'page arguments' => array(4),
+    'access arguments' => array('administer password policies'),
+    'file' => 'password_policy.admin.inc',
+  );
+  $items['admin/config/people/password_policy/%password_policy_policy/view'] = array(
+    'title' => 'View',
+    'type' => MENU_DEFAULT_LOCAL_TASK,
+  );
+  $items['admin/config/people/password_policy/%password_policy_policy/edit'] = array(
+    'title' => 'Edit',
+    'type' => MENU_LOCAL_TASK,
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('password_policy_admin_form', 4),
+    'access arguments' => array('administer password policies'),
+    'weight' => 1,
+    'file' => 'password_policy.admin.inc',
+  );
+  $items['admin/config/people/password_policy/%password_policy_policy/delete'] = array(
+    'title' => 'Delete',
+    'type' => MENU_CALLBACK,
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('password_policy_admin_delete', 4),
+    'access arguments' => array('administer password policies'),
+    'file' => 'password_policy.admin.inc',
+  );
+  $items['admin/config/people/password_policy/password_change'] = array(
+    'title' => 'Force password change',
+    'description' => 'Force users to change their password',
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('password_policy_password_change_settings'),
+    'access arguments' => array('force password change'),
+    'file' => 'password_policy.admin.inc',
+    'type' => MENU_LOCAL_TASK,
+    'weight' => 10,
+  );
+  $items['admin/people/expired'] = array(
+    'title' => 'Expired accounts',
+    'type' => MENU_LOCAL_TASK,
+    'description' => 'Lists all expired accounts.',
+    'page callback' => 'password_policy_expired_list',
+    'page arguments' => array('password_policy_list_expired'),
+    'access arguments' => array('unblock expired accounts'),
+  );
+  $items['admin/people/expired/unblock/%password_policy_uid'] = array(
+    'title' => 'Unblock',
+    'type' => MENU_CALLBACK,
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('password_policy_expired_unblock_confirm', 4),
+    'access arguments' => array('unblock expired accounts'),
+  );
+  return $items;
+}
+
+/**
+ * Implements hook_drupal_goto_alter().
+ */
+function password_policy_drupal_goto_alter(&$path, &$options) {
+  global $user;
+
+  // If user is using a one-time login link, force a password change
+  // immediately.
+  if ($user->uid && isset($options['query']['pass-reset-token']) && variable_get('password_policy_force_change_reset', 0) && isset($_SESSION['pass_reset_' . $user->uid])) {
+    db_merge('password_policy_force_change')
+      ->key(array('uid' => $user->uid))
+      ->fields(array(
+        'force_change' => 1,
+      ))
+      ->execute();
+  }
+}
+
+/**
+ * Loads policy array from the database.
+ *
+ * @param int $pid
+ *   The policy id.
+ *
+ * @return array|false
+ *   A populated policy array or FALSE if not found.
+ */
+function password_policy_policy_load($pid) {
+  return _password_policy_load_policy_by_pid($pid);
+}
+
+/**
+ * Loads user object from the database.
+ *
+ * @param int $uid
+ *   The user id.
+ *
+ * @return object|false
+ *   A populated user object or FALSE if not found.
+ */
+function password_policy_uid_load($uid) {
+  if (is_numeric($uid)) {
+    $account = user_load($uid);
+    if ($account) {
+      return $account;
+    }
+  }
+  return FALSE;
+}
+
+/**
+ * Displays a password policy form title.
+ *
+ * @param array $policy
+ *   Policy array.
+ *
+ * @return string
+ *   A policy's title string
+ */
+function password_policy_format_title(array $policy) {
+  return $policy['name'];
+}
+
+/**
+ * Implements hook_user_load().
+ */
+function password_policy_user_load($users) {
+  foreach ($users as $uid => $user) {
+    $user->force_password_change = _password_policy_is_password_change_forced($uid);
+    if (empty($user->force_password_change)) {
+      $blocked = db_select('password_policy_expiration', 'p', array('target' => 'slave'))
+        ->fields('p', array(
+          'blocked',
+        ))
+        ->condition('uid', $user->uid)
+        ->execute()
+        ->fetchField();
+      if (!empty($blocked)) {
+        if ($blocked <= _password_policy_get_request_time()) {
+          $user->force_password_change = 1;
+        }
+      }
+    }
+  }
+}
+
+/**
+ * Implements hook_user_insert().
+ */
+function password_policy_user_insert(&$edit, $account, $category) {
+  $force = isset($edit['force_password_change']) ? $edit['force_password_change'] : variable_get('password_policy_new_login_change', 0);
+
+  db_insert('password_policy_force_change')
+    ->fields(array(
+      'uid' => $account->uid,
+      'force_change' => $force,
+    ))
+    ->execute();
+
+  if (!empty($edit['pass'])) {
+    // New users do not yet have an uid during the validation step, but they do
+    // have at this insert step.  Store their first password in the system for
+    // use with the history constraint (if used).
+    if ($account->uid) {
+      _password_policy_store_password($account->uid, $edit['pass']);
+    }
+  }
+}
+
+/**
+ * Implements hook_user_presave().
+ *
+ * Adds entry to password history when password is changed for a user. This
+ * should work whether the password is changed via the User module forms or
+ * programmatically via user_save().
+ */
+function password_policy_user_presave(&$edit, $account, $category) {
+  // If there is a pass value...
+  if (!empty($edit['pass'])) {
+    // And if this is not a newly created user...
+    if (!$account->is_new) {
+      // And if the pass value is not the same as before...
+      if ($edit['pass'] != $account->pass) {
+        // Then store the password hash to history.
+        _password_policy_store_password($account->uid, $edit['pass']);
+      }
+    }
+  }
+}
+
+/**
+ * Implements hook_user_update().
+ */
+function password_policy_user_update(&$edit, $account, $category) {
+  global $user;
+
+  // If the current user is being forced to change their password and is
+  // changing their password, toggle the force_change field off.
+  if (isset($account->original->force_password_change) && $account->original->force_password_change && isset($edit['pass']) && $user->uid == $account->uid) {
+    db_update('password_policy_force_change')
+      ->fields(array(
+        'force_change' => 0,
+      ))
+      ->condition('uid', $account->uid)
+      ->execute();
+    db_delete('password_policy_expiration')
+      ->condition('uid', $account->uid)
+      ->execute();
+  }
+  elseif (!empty($edit['force_password_change'])) {
+    // Check if user already has a force change entry.
+    // If any users were created after this module was enabled, they will not
+    // yet have an entry in this table.
+    $user_exists = db_select('password_policy_force_change')
+      ->condition('uid', $account->uid)
+      ->countQuery()
+      ->execute()
+      ->fetchField();
+
+    if ($user_exists == 0) {
+      db_insert('password_policy_force_change')
+        ->fields(array(
+          'uid' => $account->uid,
+          'force_change' => 1,
+        ))
+        ->execute();
+    }
+    else {
+      db_update('password_policy_force_change')
+        ->fields(array(
+          'force_change' => 1,
+        ))
+        ->condition('uid', $account->uid)
+        ->execute();
+    }
+    if ($user->uid != $account->uid) {
+      drupal_set_message(t('@user will be required to change their password the next time they log in.', array('@user' => $account->name)));
+    }
+    if ($user->uid) {
+      watchdog('password_policy', '@user flagged to change password on next login by @admin.', array('@user' => $account->name, '@admin' => $user->name), WATCHDOG_NOTICE);
+    }
+    else {
+      // The user may be updated programmatically (e.g., via Drupal cron). In
+      // this case, there is no administrator forcing the password change.
+      watchdog('password_policy', '@user flagged to change password on next login.', array('@user' => $account->name), WATCHDOG_NOTICE);
+    }
+  }
+  elseif (isset($edit['force_password_change'])) {
+    db_update('password_policy_force_change')
+      ->fields(array(
+        'force_change' => 0,
+      ))
+      ->condition('uid', $account->uid)
+      ->execute();
+  }
+
+  if (_password_policy_was_updated_user_unblocked($account)) {
+    _password_policy_handle_unblock($account);
+  }
+}
+
+/**
+ * Determines whether updated user was unblocked.
+ *
+ * @param object $account
+ *   User object.
+ */
+function _password_policy_was_updated_user_unblocked($account) {
+  return ($account->status == 1 && isset($account->original) && $account->original->status == 0);
+}
+
+/**
+ * Implements hook_user_login().
+ */
+function password_policy_user_login(&$edit, $account) {
+  $roles = is_array($account->roles) ? array_keys($account->roles) : array();
+  $policy = _password_policy_load_active_policy($roles, $account);
+  // A value $edit['name'] is NULL for a one time login.
+  if ($policy && ((!empty($account->uid) && $account->uid > 1) || variable_get('password_policy_admin', 1)) && !empty($edit['values']['name'])) {
+    // Calculate expiration and warning times.
+    $expiration = $policy['expiration'];
+    $warning = empty($policy['warning']) ? 0 : max(explode(',', $policy['warning']));
+    $expiration_seconds = $expiration * (60 * 60 * 24);
+    $warning_seconds = $warning * (60 * 60 * 24);
+    // The policy was enabled.
+    $policy_start = $policy['created'];
+    if (variable_get('password_policy_begin', 0) == 1) {
+      $policy_start -= $expiration_seconds;
+    }
+    if (!empty($expiration)) {
+      // Account expiration is active.
+      // Get the last password change time.
+      $last_change = db_query_range('SELECT created FROM {password_policy_history} WHERE uid = :uid ORDER BY created DESC', 0, 1, array(':uid' => $account->uid))->fetchField();
+      if (empty($last_change)) {
+        // User has not changed their password since this module was enabled.
+        $last_change = _password_policy_get_user_created_time($account);
+      }
+      $time = _password_policy_get_request_time();
+      if ($time > max($policy_start, $last_change) + $expiration_seconds) {
+        if (variable_get('password_policy_block', 0) == 0) {
+          $cron_blocked = db_query_range('SELECT blocked FROM {password_policy_expiration} WHERE uid = :uid ORDER BY blocked DESC', 0, 1, array(':uid' => $account->uid))->fetchField();
+          if ($cron_blocked > _password_policy_get_user_login_time($account)) {
+            // User is blocked immediately and cannot change their password
+            // after expiration.
+            _password_policy_block_account($account);
+          }
+        }
+        else {
+          // Redirect user and let password force change handle.
+          db_update('password_policy_force_change')
+            ->fields(array(
+              'force_change' => 1,
+            ))
+            ->condition('uid', $account->uid)
+            ->execute();
+          _password_policy_set_password_change_forced_message();
+          _password_policy_go_to_password_change_page();
+        }
+      }
+      elseif ($time > max($policy_start, $last_change) + $expiration_seconds - $warning_seconds) {
+        // The warning is shown on login and the user is transferred to the
+        // password change page.
+        $days_left = ceil((max($policy_start, $last_change) + $expiration_seconds - $time) / (60 * 60 * 24));
+        drupal_set_message(format_plural($days_left, 'Your password will expire in less than one day. Please change it.', 'Your password will expire in less than @count days. Please change it.'));
+        _password_policy_go_to_password_change_page();
+      }
+    }
+  }
+}
+
+/**
+ * Implements hook_user_delete().
+ */
+function password_policy_user_delete($account) {
+  $txn = db_transaction();
+
+  // Ensure all deletes occur.
+  try {
+    db_delete('password_policy_history')
+      ->condition('uid', $account->uid)
+      ->execute();
+    db_delete('password_policy_expiration')
+      ->condition('uid', $account->uid)
+      ->execute();
+    db_delete('password_policy_force_change')
+      ->condition('uid', $account->uid)
+      ->execute();
+  }
+  catch (Exception $e) {
+    // Something went wrong somewhere, so roll back now.
+    $txn->rollback();
+    // Log the exception to watchdog.
+    watchdog_exception('type', $e);
+  }
+}
+
+/**
+ * Implements hook_form_alter().
+ */
+function password_policy_form_alter(&$form, &$form_state, $form_id) {
+  global $user;
+
+  if (_password_policy_has_account_password_element($form)) {
+    // Timing issues require reloading the user object to get the
+    // password_change property set.
+    $account = user_load($user->uid);
+
+    // Force password change on user account.
+    if (user_access('force password change')) {
+      if (isset($form['#user_category']) && $form['#user_category'] == 'account') {
+        $force_change = db_query_range('SELECT force_change FROM {password_policy_force_change} WHERE uid=:uid', 0, 1, array(':uid' => $form['#user']->uid))->fetchField();
+
+        // If we didn't get a valid result, use the default.
+        if (is_null($force_change) || $force_change === FALSE) {
+          $force_change = variable_get('password_policy_new_login_change', 0);
+        }
+
+        $form['password_policy'] = array(
+          '#type' => 'fieldset',
+          '#title' => t('Password settings'),
+        );
+        $form['password_policy']['force_password_change'] = array(
+          '#type' => 'checkbox',
+          '#title' => t('Force password change on next login'),
+          '#description' => t('If already logged in, the user will be forced to change their password upon their next page request.'),
+          '#default_value' => $force_change,
+        );
+      }
+    }
+
+    // Password change form.
+    $account = $form['#user'];
+    $roles = isset($account->roles) ? array_keys($account->roles) : array(DRUPAL_AUTHENTICATED_RID);
+    if ($form_id == 'user_register_form') {
+      $roles = array(DRUPAL_AUTHENTICATED_RID);
+    }
+    $policy = _password_policy_load_active_policy($roles, $account);
+
+    $translate = array();
+    if (!empty($policy['constraints'])) {
+      // Some policy constraints are active.
+      password_policy_add_policy_js($policy, $account, $form);
+      foreach ($policy['constraints'] as $key => $value) {
+        if ($value) {
+          $translate['constraint_' . $key] = _password_policy_constraint_error($key, $value);
+        }
+      }
+    }
+
+    // Printing out the restrictions.
+    if (variable_get('password_policy_show_restrictions', 0) && isset($translate) && (isset($form['pass']) || isset($form['account']['pass']))) {
+      $restriction_html = '<div id="account-pass-restrictions">' . theme('item_list', array('items' => array_values($translate), 'title' => t('Password Requirements'))) . '</div>';
+      if (isset($form['account']) && is_array($form['account'])) {
+        $form['account']['pass']['#prefix'] = $restriction_html;
+      }
+      else {
+        $form['pass']['#prefix'] = $restriction_html;
+      }
+    }
+
+    // Set a custom form validate and submit handlers.
+    $form['#validate'][] = 'password_policy_password_validate';
+  }
+
+  if ($form_id == 'password_policy_password_tab') {
+    $form['submit']['#weight'] = 10;
+  }
+}
+
+/**
+ * Implements hook_cron().
+ */
+function password_policy_cron() {
+  // Short circuit if no policies are active that use expiration.
+  $expiration_policies = db_select('password_policy', 'p', array('target' => 'slave'))
+    ->condition('enabled', 1)
+    ->condition('expiration', 0, '>')
+    ->countQuery()
+    ->execute()
+    ->fetchField();
+  if ($expiration_policies == 0) {
+    return;
+  }
+
+  $accounts = array();
+  $warns = array();
+  $unblocks = array();
+  $pids = array();
+
+  // Get all users' last password change time. Don't touch blocked accounts.
+  $query = db_select('users', 'u', array('target' => 'slave'));
+  $query->leftJoin('password_policy_history', 'p', 'u.uid = p.uid');
+  $query->leftJoin('password_policy_expiration', 'e', 'u.uid = e.uid');
+  $result = $query->fields('u', array('uid', 'name', 'created'))
+    ->fields('p', array('created'))
+    ->fields('e', array('pid', 'unblocked', 'warning'))
+    ->condition('u.uid', 0, '>')
+    ->condition('u.status', 1)
+    ->orderBy('p.created')
+    ->orderBy('e.warning')
+    ->execute();
+
+  foreach ($result as $row) {
+    if ($row->uid == 1 && !variable_get('password_policy_admin', 1)) {
+      continue;
+    }
+
+    // Use account creation timestamp if there is no entry in password history
+    // table.
+    $accounts[$row->uid] = empty($row->p_created) ? $row->created : $row->p_created;
+    // Last time a warning was mailed out (if was). We need it because we send
+    // warnings only once a day, not on all cron runs.
+    $warns[$row->uid] = $row->warning;
+    // Last time user was unblocked (if was). We don't block this account again
+    // for some period of time.
+    $unblocks[$row->uid] = $row->unblocked;
+    // Unique password policy expirations ID.
+    $pids[$row->uid] = $row->pid;
+    // Usernames.
+    $names[$row->uid] = $row->name;
+  }
+
+  foreach ($accounts as $uid => $last_change) {
+    $roles = array(DRUPAL_AUTHENTICATED_RID);
+    $result = db_select('users_roles', 'u', array('target' => 'slave'))
+      ->fields('u', array('rid'))
+      ->condition('uid', $uid)
+      ->orderBy('u.rid')
+      ->execute();
+    foreach ($result as $row) {
+      $roles[] = $row->rid;
+    }
+    $name = $names[$uid];
+    $dummy_account = (object) array('name' => $name);
+    $policy = _password_policy_load_active_policy($roles, $dummy_account);
+    if ($policy) {
+      $expiration = $policy['expiration'];
+      $warnings = !empty($policy['warning']) ? explode(',', $policy['warning']) : array();
+      if (!empty($expiration)) {
+        // Calculate expiration time.
+        $expiration_seconds = $expiration * (60 * 60 * 24);
+        $policy_start = $policy['created'];
+        if (variable_get('password_policy_begin', 0) == 1) {
+          $policy_start -= $expiration_seconds;
+        }
+        rsort($warnings, SORT_NUMERIC);
+        $time = _password_policy_get_request_time();
+
+        // Check expiration and warning days for each account.
+        if (!empty($warnings)) {
+          foreach ($warnings as $warning) {
+            // Loop through all configured warning send-out days. If today is
+            // the day, we send out the warning.
+            $warning_seconds = $warning * (60 * 60 * 24);
+            // Warning start time.
+            $start_period = max($policy_start, $last_change) + $expiration_seconds - $warning_seconds;
+            // Warning end time. We create a one day window for cron to run.
+            $end_period = $start_period + (60 * 60 * 24);
+            if ($warns[$uid] && $warns[$uid] > $start_period && $warns[$uid] < $end_period) {
+              // A warning was already mailed out.
+              continue;
+            }
+            if ($time > $start_period && $time < $end_period) {
+              // A warning falls in the one day window, so we send out the
+              // warning.
+              $account = user_load($uid, TRUE);
+              $message = drupal_mail('password_policy', 'warning', $account->mail, user_preferred_language($account), array('account' => $account, 'days_left' => $warning));
+              if ($message['result']) {
+                // The mail was sent out successfully.
+                watchdog('password_policy', 'Password expiration warning mailed to %username at %email.', array('%username' => $account->name, '%email' => $account->mail));
+              }
+              if ($pids[$uid]) {
+                db_update('password_policy_expiration')
+                  ->fields(array('warning' => $time))
+                  ->condition('uid', $uid)
+                  ->execute();
+              }
+              else {
+                db_insert('password_policy_expiration')
+                  ->fields(array(
+                    'uid' => $uid,
+                    'warning' => $time,
+                  ))
+                  ->execute();
+              }
+            }
+          }
+        }
+
+        if ($time > max($policy_start, $last_change) + $expiration_seconds && $time > $unblocks[$uid] + (60 * 60 * 24) && variable_get('password_policy_block', 0) == 0) {
+          // Block expired accounts. Unblocked accounts are not blocked for 24h.
+          // One time login lasts for a 24h.
+          db_update('users')
+            ->fields(array('status' => 0))
+            ->condition('uid', $uid)
+            ->execute();
+          if ($pids[$uid]) {
+            db_update('password_policy_expiration')
+              ->fields(array('blocked' => $time))
+              ->condition('uid', $uid)
+              ->execute();
+          }
+          else {
+            db_insert('password_policy_expiration')
+              ->fields(array(
+                'uid' => $uid,
+                'blocked' => $time,
+              ))
+              ->execute();
+          }
+
+          $account = user_load($uid, TRUE);
+          watchdog('password_policy', 'Password for user %name has expired.', array('%name' => $account->name), WATCHDOG_NOTICE, l(t('edit'), 'user/' . $account->uid . '/edit'));
+        }
+      }
+    }
+  }
+}
+
+/**
+ * Implements hook_mail().
+ */
+function password_policy_mail($key, &$message, $params) {
+  $language = $message['language'];
+  $variables = array(
+    'user' => $params['account'],
+    'days_left' => $params['days_left'],
+  );
+  $message['subject'] .= _password_policy_mail_text($key . '_subject', $language, $variables);
+  $message['body'][] = _password_policy_mail_text($key . '_body', $language, $variables);
+}
+
+/**
+ * Implements hook_field_extra_fields().
+ */
+function password_policy_field_extra_fields() {
+  $extra['user']['user'] = array(
+    'form' => array(
+      'password_policy' => array(
+        'label' => t('Password policy'),
+        'description' => t('Password policy module settings form elements.'),
+        'weight' => 0,
+      ),
+    ),
+  );
+
+  return $extra;
+}
+
+/****************************************************************************/
+/* FAPI                                                                     */
+/****************************************************************************/
+
+/**
+ * Determines whether form has an account password element.
+ */
+function _password_policy_has_account_password_element($form) {
+  return isset($form['account']['pass']['#type']) && $form['account']['pass']['#type'] == 'password_confirm';
+}
+
+/**
+ * Password save validate handler.
+ */
+function password_policy_password_validate($form, &$form_state) {
+  $account = _password_policy_get_user_from_form($form, $form_state);
+
+  if (_password_policy_is_force_password_change_set($account)) {
+    // Admins can edit accounts without having to reset passwords.
+    if (_password_policy_password_field_is_empty($form_state) && _password_policy_is_current_user($account)) {
+      form_set_error('pass', t('Your password has expired. You must change your password to proceed on the site.'));
+    }
+  }
+
+  // If a password is set and OpenID is not being used, validate constraints.
+  $values = $form_state['values'];
+  if (!empty($values['pass']) && !isset($values['auth_openid'])) {
+    _password_policy_validate_constraints($form_state, $account);
+  }
+}
+
+/**
+ * Gets from form user for whom password is being validated.
+ *
+ * @return object
+ *   Custom user object for validating constraints.
+ */
+function _password_policy_get_user_from_form($form, &$form_state) {
+  $account = isset($form['#user']) ? $form['#user'] : (object) array('uid' => 0);
+  if ($account->uid == 0) {
+    $account->roles = array(DRUPAL_AUTHENTICATED_RID => DRUPAL_AUTHENTICATED_RID);
+  }
+  $values = $form_state['values'];
+  if (isset($values['name'])) {
+    $account->name = $values['name'];
+  }
+
+  if (!_password_policy_is_current_user($account)) {
+    // Administrator is changing password for another user. For validating
+    // constraints, use roles selected on form for the user.
+    _password_policy_add_selected_roles_to_account($form_state, $account);
+  }
+  return $account;
+}
+
+/**
+ * Determines whether user has been flagged for forced password change.
+ *
+ * @param object $account
+ *   Custom user object for validating constraints.
+ */
+function _password_policy_is_force_password_change_set($account) {
+  return isset($account->uid) && isset($account->force_password_change) && $account->force_password_change == 1;
+}
+
+/**
+ * Adds roles selected for user on form to the user object.
+ *
+ * @param array $form_state
+ *   Form state.
+ * @param object $account
+ *   Custom user object for validating constraints.
+ */
+function _password_policy_add_selected_roles_to_account(array $form_state, &$account) {
+  $rids = array_keys(array_filter($form_state['values']['roles']));
+  $roles = array_combine($rids, $rids);
+  $account->roles = $roles;
+}
+
+/**
+ * Determines whether password field is empty.
+ *
+ * @param array $form_state
+ *   Form state.
+ */
+function _password_policy_password_field_is_empty(array $form_state) {
+  $values = $form_state['values'];
+  return isset($values['pass']) && $values['pass'] == '';
+}
+
+/**
+ * Determines whether given user is the current user.
+ *
+ * @param object $account
+ *   User object.
+ */
+function _password_policy_is_current_user($account) {
+  global $user;
+  return $user->uid == $account->uid;
+}
+
+/**
+ * Validates constraints.
+ *
+ * Gets error message for each constraint that fails validation and displays
+ * them all in list format as a form error.
+ *
+ * @param array $form_state
+ *   Form state.
+ * @param object $account
+ *   Custom user object for validating constraints.
+ */
+function _password_policy_validate_constraints(array $form_state, $account) {
+  $pass = $form_state['values']['pass'];
+  $error = _password_policy_constraint_validate($pass, $account);
+  if ($error) {
+    form_set_error('pass', t('Your password has not met the following requirement(s):') . '<ul><li>' . implode('</li><li>', $error) . '</li></ul>');
+  }
+}
+
+/****************************************************************************/
+/* Force password change functions                                          */
+/****************************************************************************/
+
+/**
+ * Determines whether user is to be forced to change their password.
+ *
+ * Uses static variable to avoid redundantly querying database in single
+ * request, which can happen when both password_policy_init() and
+ * password_policy_user_load() are called.
+ *
+ * @param int $uid
+ *   User ID.
+ *
+ * @return bool
+ *   TRUE if a password change is to be forced, FALSE otherwise.
+ */
+function _password_policy_is_password_change_forced($uid) {
+  static $force_change = array();
+  if ($uid == 0) {
+    return FALSE;
+  }
+  if (!isset($force_change[$uid])) {
+    $force_change[$uid] = db_select('password_policy_force_change', 'p', array('target' => 'slave'))
+      ->fields('p', array(
+        'force_change',
+      ))
+      ->condition('uid', $uid)
+      ->execute()
+      ->fetchField();
+  }
+  return $force_change[$uid];
+}
+
+/**
+ * Determines whether access to path allowed when user password change forced.
+ *
+ * @return bool
+ *   TRUE if the path is allowed, FALSE otherwise.
+ */
+function _password_policy_is_path_allowed_when_password_change_forced() {
+  $allowed_paths = _password_policy_get_allowed_paths();
+  $patterns = implode("\n", $allowed_paths);
+  return drupal_match_path(current_path(), $patterns);
+}
+
+/**
+ * Gets paths allowed when password change forced.
+ *
+ * The allowed paths comprise configurable and non-configurable paths.
+ * Configurable paths can be changed by the administrator; non-configurable
+ * paths are built into the module and cannot be changed.
+ *
+ * Modules can add, modify, or delete paths by implementing
+ * hook_password_policy_force_change_allowed_paths_alter(). For instance, a
+ * module could add the path of a JavaScript file needed for the page to behave
+ * properly. Implementors should consider the security implications of altering
+ * the paths. There is increased risk that allowed paths will be accessed by
+ * attackers.
+ *
+ * @return string[]
+ *   Array of path patterns in the form expected by the $patterns parameter of
+ *   drupal_match_path().
+ */
+function _password_policy_get_allowed_paths() {
+  $configurable_allowed_paths = _password_policy_get_configurable_allowed_paths();
+  $nonconfigurable_allowed_paths = _password_policy_get_nonconfigurable_allowed_paths();
+  $allowed_paths = array_merge($configurable_allowed_paths, $nonconfigurable_allowed_paths);
+  drupal_alter('password_policy_force_change_allowed_paths', $allowed_paths);
+  return array_unique($allowed_paths);
+}
+
+/**
+ * Gets configurable paths allowed when password change forced.
+ *
+ * These are extra paths the administrator chooses to allow when a user is
+ * forced to change their password.
+ *
+ * @return string[]
+ *   Array of path patterns in the form expected by the $patterns parameter of
+ *   drupal_match_path().
+ */
+function _password_policy_get_configurable_allowed_paths() {
+  $unprocessed_paths = variable_get('password_policy_force_change_extra_allowed_paths', _password_policy_default_force_change_extra_allowed_paths());
+  $paths = array_filter(preg_split("/(\n|\r)/", $unprocessed_paths));
+  return $paths;
+}
+
+/**
+ * Gets non-configurable paths allowed when password change forced.
+ *
+ * These paths are the ones users should be able to access at a minimum,
+ * regardless of site configuration, when being forced to change their
+ * password.
+ *
+ * @return string[]
+ *   Array of path patterns in the form expected by the $patterns parameter of
+ *   drupal_match_path().
+ */
+function _password_policy_get_nonconfigurable_allowed_paths() {
+  $password_change_paths = _password_policy_get_password_change_paths();
+  $logout_paths = array('user/logout');
+  return array_merge($password_change_paths, $logout_paths);
+}
+
+/**
+ * Sets message indicating a password change is forced.
+ */
+function _password_policy_set_password_change_forced_message() {
+  drupal_set_message(t('Your password has expired. You must change your password to proceed on the site.'), 'error', FALSE);
+}
+
+/**
+ * Redirects user to password change page.
+ */
+function _password_policy_go_to_password_change_page() {
+  $password_change_path = _password_policy_get_preferred_password_change_path();
+
+  // Set query to redirect user back to their original destination after
+  // leaving password change page.
+  $options = array('query' => drupal_get_destination());
+  unset($_GET['destination']);
+
+  // Add password reset token, if it is available, to query so user is not
+  // prompted for their current password on password change page unnecessarily.
+  _password_policy_add_pass_reset_token_if_available($options);
+
+  drupal_goto($password_change_path, $options);
+}
+
+/**
+ * Gets preferred path for password change page.
+ *
+ * The password change page path depends on whether Password Policy Password
+ * Tab is enabled.  When there are multiple paths, the first is assumed to be
+ * preferred.
+ */
+function _password_policy_get_preferred_password_change_path() {
+  $password_change_paths = _password_policy_get_password_change_paths();
+  return $password_change_paths[0];
+}
+
+/**
+ * Gets paths that allow user to change their password.
+ */
+function _password_policy_get_password_change_paths() {
+  global $user;
+  return _password_policy_get_password_edit_paths_for_user($user);
+}
+
+/**
+ * Gets password edit paths for the given user.
+ */
+function _password_policy_get_password_edit_paths_for_user($account) {
+  $password_change_path = variable_get('password_policy_force_change_path', NULL);
+  if (!empty($password_change_path)) {
+    // Support replacement patterns for password_policy_force_change_path.
+    $password_change_path = str_replace('[user:uid]', $account->uid, $password_change_path);
+    $password_change_path = str_replace('[user:name]', $account->name, $password_change_path);
+    return array(
+      $password_change_path,
+    );
+  }
+  elseif (module_exists('password_policy_password_tab')) {
+    return array(
+      "user/{$account->uid}/password",
+    );
+  }
+  else {
+    return array(
+      "user/{$account->uid}/edit/account",
+      "user/{$account->uid}/edit",
+    );
+  }
+}
+
+/**
+ * Returns default value for password_policy_force_change_extra_allowed_paths.
+ *
+ * It is not necessary to allow system/ajax when password changes are forced,
+ * but historically this module has allowed this path by non-configurable
+ * default. We keep this path as a default but it is now configurable.
+ *
+ * @return string
+ *   Default value.
+ */
+function _password_policy_default_force_change_extra_allowed_paths() {
+  return 'system/ajax';
+}
+
+/**
+ * Adds password reset token, if available, to query.
+ *
+ * This is for the case that the user is forced to change their password on
+ * reset, but attempts to browse away from the password change path before
+ * changing their password.  Adding the reset token makes it so the user will
+ * not be prompted for their current password.
+ *
+ * @param array $options
+ *   Options to be passed to drupal_goto().
+ */
+function _password_policy_add_pass_reset_token_if_available(array &$options) {
+  global $user;
+  if (isset($_SESSION['pass_reset_' . $user->uid])) {
+    $pass_reset_token = $_SESSION['pass_reset_' . $user->uid];
+    $options['query']['pass-reset-token'] = $pass_reset_token;
+  }
+}
+
+/****************************************************************************/
+/* Expired accounts UI                                                      */
+/****************************************************************************/
+
+/**
+ * Lists all expired accounts.
+ */
+function password_policy_expired_list() {
+  $header[] = array(
+    'data' => t('Username'),
+    'field' => 'name',
+  );
+  $header[] = array(
+    'data' => t('Blocked'),
+    'field' => 'blocked',
+    'sort' => 'desc',
+  );
+  $header[] = array(
+    'data' => t('Unblocked'),
+    'field' => 'unblocked',
+  );
+  $header[] = array(
+    'data' => t('Action'),
+  );
+
+  $query = db_select('password_policy_expiration', 'p', array('target' => 'slave'));
+  $query->innerJoin('users', 'u', 'p.uid = u.uid');
+  $result = $query->fields('p')
+    ->fields('u', array('name'))
+    ->condition('p.blocked', 0, '>')
+    ->extend('PagerDefault')
+    ->extend('TableSort')
+    ->orderByHeader($header)
+    ->execute();
+  foreach ($result as $row) {
+    $entry[$row->uid]['name'] = l($row->name, 'user/' . $row->uid);
+    $entry[$row->uid]['blocked'] = format_date($row->blocked, 'medium');
+    $entry[$row->uid]['unblocked'] = $row->unblocked < $row->blocked ? '' : format_date($row->unblocked, 'medium');
+    $entry[$row->uid]['action'] = $row->unblocked < $row->blocked ? l(t('unblock'), 'admin/people/expired/unblock/' . $row->uid, array('query' => array('destination' => 'admin/people/expired'))) : '';
+  }
+  if (!isset($entry)) {
+    $colspan = '4';
+    $entry[] = array(array('data' => t('No entries'), 'colspan' => $colspan));
+  }
+  $page = theme('table', array('header' => $header, 'rows' => $entry));
+  $page .= theme('pager');
+
+  return $page;
+}
+
+/**
+ * Confirms unblocking the expired account.
+ */
+function password_policy_expired_unblock_confirm($form_id, $form, $account) {
+  return confirm_form(
+    array(
+      'account' => array(
+        '#type' => 'value',
+        '#value' => $account,
+      ),
+    ),
+    t('Are you sure you would like to unblock the user %user?', array('%user' => $account->name)),
+    'admin/people/expired',
+    t('This action cannot be undone.'),
+    t('Unblock user'),
+    t('Cancel')
+  );
+}
+
+/**
+ * Unblocks the expired account.
+ */
+function password_policy_expired_unblock_confirm_submit($form, &$form_state) {
+  $account = $form_state['values']['account'];
+  if (_password_policy_was_user_blocked_due_to_expiration($account)) {
+    user_save($account, array('status' => 1));
+    drupal_set_message(t('The user %name has been unblocked.', array('%name' => $account->name)));
+  }
+  else {
+    drupal_set_message(t('The user %name was not blocked using the Password Policy module. This account has not been unblocked.', array('%name' => $account->name)), 'warning');
+  }
+  drupal_goto('admin/people/expired');
+}
+
+/****************************************************************************/
+/* Mail handling                                                            */
+/****************************************************************************/
+
+/**
+ * Returns a mail string for a variable name.
+ *
+ * Used by password_policy_mail() and the settings forms to retrieve strings.
+ */
+function _password_policy_mail_text($key, $language = NULL, $variables = array(), $replace = TRUE) {
+  $langcode = isset($language) ? $language->language : NULL;
+
+  switch ($key) {
+    case 'warning_subject':
+      if (function_exists('i18n_variable_get')) {
+        $text = i18n_variable_get('password_policy_warning_subject', $langcode, PASSWORD_POLICY_DEFAULT_WARNING_SUBJECT);
+      }
+      else {
+        $text = variable_get('password_policy_warning_subject', PASSWORD_POLICY_DEFAULT_WARNING_SUBJECT);
+      }
+      break;
+
+    case 'warning_body':
+      if (function_exists('i18n_variable_get')) {
+        $text = i18n_variable_get('password_policy_warning_body', $langcode, PASSWORD_POLICY_DEFAULT_WARNING_BODY);
+      }
+      else {
+        $text = variable_get('password_policy_warning_body', PASSWORD_POLICY_DEFAULT_WARNING_BODY);
+      }
+      break;
+
+  }
+
+  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' => 'password_policy_mail_tokens',
+        'sanitize' => FALSE,
+        'clear' => TRUE,
+      ));
+  }
+
+  return $text;
+}
+
+/**
+ * Token callback to add Password Policy tokens for user e-mails.
+ *
+ * This function is used by the token_replace() call at the end of
+ * _password_policy_mail_text() to set up some additional tokens that can be
+ * used in email messages generated by password_policy_mail().
+ *
+ * @param array $replacements
+ *   An associative array variable containing mappings from token names to
+ *   values (for use with strtr()).
+ * @param array $data
+ *   An associative array of token replacement values.
+ * @param array $options
+ *   Unused parameter required by the token_replace() function.
+ */
+function password_policy_mail_tokens(array &$replacements, array $data, array $options) {
+  if (isset($data['days_left'])) {
+    $replacements['[password-policy:days-left]'] = $data['days_left'];
+  }
+  $password_edit_url_token = '[password-policy:password-edit-url]';
+  $account = $data['user'];
+  $password_edit_url = _password_policy_get_preferred_password_edit_url_for_user($account);
+  $replacements[$password_edit_url_token] = $password_edit_url;
+}
+
+/**
+ * Gets preferred password edit URL for user.
+ *
+ * The password edit page URL depends on whether Password Policy Password Tab
+ * is enabled. There can be multiple equivalent password edit URLs, and we have
+ * to choose one. The one we choose is the "preferred" edit URL.
+ *
+ * Builds URL in the same way as the URL for [user:edit-url] in
+ * user.tokens.inc.
+ *
+ * @param object $account
+ *   User object.
+ *
+ * @return string
+ *   Absolute URL for preferred password edit page.
+ */
+function _password_policy_get_preferred_password_edit_url_for_user($account) {
+  global $language;
+  $edit_path = _password_policy_get_preferred_password_edit_path_for_user($account);
+  $url_options = array(
+    'absolute' => TRUE,
+    'language' => $language,
+  );
+  return url($edit_path, $url_options);
+}
+
+/**
+ * Gets preferred password edit path for given user.
+ */
+function _password_policy_get_preferred_password_edit_path_for_user($account) {
+  $edit_paths = _password_policy_get_password_edit_paths_for_user($account);
+  return $edit_paths[0];
+}
+
+/****************************************************************************/
+/* Constraints API                                                          */
+/****************************************************************************/
+
+/**
+ * Validates user password.
+ *
+ * Returns NULL on success or array with error messages
+ * from the constraints on failure.
+ *
+ * @param string $pass
+ *   Clear text password.
+ * @param object $account
+ *   Populated user object.
+ *
+ * @return null|string[]
+ *   NULL or array with error messages.
+ */
+function _password_policy_constraint_validate($pass, &$account) {
+  _password_policy_constraints();
+
+  $error = NULL;
+  $roles = @is_array($account->roles) ? array_keys($account->roles) : array();
+  $policy = _password_policy_load_active_policy($roles, $account);
+  if (!empty($policy['constraints'])) {
+    foreach ($policy['constraints'] as $key => $value) {
+      if (!call_user_func('password_policy_constraint_' . $key . '_validate', $pass, $value, $account)) {
+        $error[] = call_user_func('password_policy_constraint_' . $key . '_error', $value);
+      }
+    }
+  }
+  return $error;
+}
+
+/**
+ * Gets the constraint's name and description.
+ *
+ * @param string $name
+ *   Name of the constraint.
+ *
+ * @return array
+ *   Array containing the name and description.
+ */
+function _password_policy_constraint_description($name) {
+  _password_policy_constraints();
+  return call_user_func('password_policy_constraint_' . $name . '_description');
+}
+
+/**
+ * Gets the constraint's error message.
+ *
+ * @param string $name
+ *   Name of the constraint.
+ * @param string $constraint
+ *   Constraint value.
+ *
+ * @return string
+ *   Error message.
+ */
+function _password_policy_constraint_error($name, $constraint) {
+  _password_policy_constraints();
+  return call_user_func('password_policy_constraint_' . $name . '_error', $constraint);
+}
+
+/**
+ * Gets JavaScript code from the constraint to be added to password validation.
+ *
+ * @param string $name
+ *   Name of the constraint.
+ * @param string $constraint
+ *   Constraint value.
+ * @param object $account
+ *   User object.
+ *
+ * @return string
+ *   JavaScript code snippet for the constraint.
+ */
+function _password_policy_constraint_js($name, $constraint, $account) {
+  _password_policy_constraints();
+  if (function_exists('password_policy_constraint_' . $name . '_js')) {
+    return call_user_func('password_policy_constraint_' . $name . '_js', $constraint, $account);
+  }
+}
+
+/****************************************************************************/
+/* Features integration                                                     */
+/****************************************************************************/
+
+/**
+ * Implements hook_features_api().
+ */
+function password_policy_features_api() {
+  return array(
+    'password_policy' => array(
+      'name' => 'Password Policy',
+      'file' => drupal_get_path('module', 'password_policy') . '/password_policy.features.inc',
+      'default_hook' => 'password_policy_features_default_policies',
+      'features_source' => TRUE,
+    ),
+  );
+}
+
+/****************************************************************************/
+/* Auxiliary functions                                                      */
+/****************************************************************************/
+
+/**
+ * Loads contraints inc files.
+ */
+function _password_policy_constraints() {
+  static $_password_policy;
+
+  if (!isset($_password_policy)) {
+    // Save all available constraints in a static variable.
+    $dir = drupal_get_path('module', 'password_policy') . '/constraints';
+    $constraints = file_scan_directory($dir, '/^constraint.*\.inc$/');
+    $_password_policy = array();
+
+    foreach ($constraints as $file) {
+      if (is_file($file->uri)) {
+        include_once $file->uri;
+        $_password_policy[] = drupal_substr($file->name, 11);
+      }
+    }
+  }
+
+  return $_password_policy;
+}
+
+/**
+ * Loads the policy with the specified id.
+ *
+ * Attempts to load the policy from a static cache variable. If not found,
+ * loads the policy from the database.
+ *
+ * @param int $pid
+ *   The policy id.
+ *
+ * @return array|false
+ *   A populated policy array or FALSE if not found.
+ */
+function _password_policy_load_policy_by_pid($pid) {
+  static $policies = array();
+
+  if (is_numeric($pid)) {
+    if (isset($policies[$pid])) {
+      return $policies[$pid];
+    }
+    else {
+      $policy = _password_policy_load_policy_from_db(array('pid' => $pid));
+      if ($policy) {
+        $policies[$pid] = $policy;
+        return $policy;
+      }
+    }
+  }
+  return FALSE;
+}
+
+/**
+ * Loads the policy with the specified name.
+ *
+ * Attempts to load the policy from a static cache variable. If not found,
+ * loads the policy from the database.
+ *
+ * @param string $name
+ *   The name of the policy.
+ *
+ * @return array|false
+ *   A populated policy array or FALSE if not found.
+ */
+function password_policy_load_policy_by_name($name) {
+  static $policies = array();
+
+  if (isset($policies[$name])) {
+    return $policies[$name];
+  }
+  else {
+    $policy = _password_policy_load_policy_from_db(array('name' => $name));
+    if ($policy) {
+      $policies[$name] = $policy;
+      return $policy;
+    }
+  }
+  return FALSE;
+}
+
+/**
+ * Loads the policy that meets the specified conditions from the database.
+ *
+ * @param array $conditions
+ *   Associative array of conditions where keys are field names and values are
+ *   field values.
+ *
+ * @return array|false
+ *   A policy array or FALSE if no policy was found.
+ */
+function _password_policy_load_policy_from_db(array $conditions) {
+  $query = db_select('password_policy', 'p', array('target' => 'slave'))
+    ->fields('p');
+  foreach ($conditions as $field => $value) {
+    $query->condition($field, $value);
+  }
+  $row = $query->execute()->fetchAssoc();
+
+  if ($row) {
+    $row['constraints'] = unserialize($row['constraints']);
+    // Fetch roles.
+    $row['roles'] = array();
+    $result = db_select('password_policy_role', 'p', array('target' => 'slave'))
+      ->fields('p', array('rid'))
+      ->condition('pid', $row['pid'])
+      ->execute();
+    foreach ($result as $role) {
+      $row['roles'][$role->rid] = $role->rid;
+    }
+    // Fetch authentication modules.
+    _password_policy_load_policy_excluded_authentication_modules($row);
+
+    return $row;
+  }
+  return FALSE;
+}
+
+/**
+ * Loads the first enabled policy that matches the specified roles.
+ *
+ * @param int[] $roles
+ *   An array of role IDs.
+ * @param object $account
+ *   Populated user object.
+ *
+ * @return array|false
+ *   A policy array, or FALSE if no active policy exists.
+ */
+function _password_policy_load_active_policy(array $roles, &$account) {
+  static $cache = array();
+  if (empty($roles)) {
+    $roles = array(DRUPAL_ANONYMOUS_RID);
+  }
+
+  // If the role is a name, not an ID, replace with the ID.
+  for ($i = 0; $i < count($roles); $i++) {
+    if (!is_numeric($roles[$i])) {
+      $row = db_select('role', 'r', array('target' => 'slave'))
+        ->fields('p.rid')
+        ->condition('r.name', $roles[$i])
+        ->execute()
+        ->fetchAssoc();
+      if (!empty($row['rid'])) {
+        $roles[$i] = $row['rid'];
+      }
+    }
+  }
+
+  $key = implode(',', $roles);
+  // Use array_key_exists() instead of isset() as NULLs may be in the array.
+  if (!array_key_exists($key, $cache)) {
+    $query = db_select('password_policy', 'p', array('target' => 'slave'));
+    $query->innerJoin('password_policy_role', 'r', 'p.pid = r.pid');
+    $row = $query->fields('p')
+      ->condition('p.enabled', 1)
+      ->condition('r.rid', $roles, 'IN')
+      ->orderBy('p.weight')
+      ->range(0, 1)
+      ->execute()
+      ->fetchAssoc();
+    if (is_array($row)) {
+      $constraints = $row['constraints'];
+      $constraints = unserialize($constraints);
+      $row['constraints'] = $constraints;
+      _password_policy_load_policy_excluded_authentication_modules($row);
+      $cache[$key] = $row;
+    }
+    else {
+      $cache[$key] = FALSE;
+    }
+  }
+  $policy = $cache[$key];
+  if ($policy && _password_policy_policy_excludes_authentication_module_of_user($policy, $account)) {
+    $policy = FALSE;
+  }
+  return $policy;
+}
+
+/**
+ * Saves a policy.
+ *
+ * @param array $policy
+ *   A policy array.
+ */
+function password_policy_save_policy(array $policy) {
+  if (isset($policy['pid']) && $policy['pid']) {
+    $fields = array(
+      'name' => $policy['name'],
+      'description' => $policy['description'],
+      'constraints' => serialize($policy['constraints']),
+      'created' => isset($policy['created']) ? $policy['created'] : 0,
+      'expiration' => !empty($policy['expiration']) ? $policy['expiration'] : 0,
+      'warning' => str_replace(' ', '', $policy['warning']),
+      'weight' => !empty($policy['weight']) ? $policy['weight'] : 0,
+    );
+    // On policy edit form we have no 'enabled' param, so modify update query.
+    if (isset($policy['enabled'])) {
+      $fields += array(
+        'enabled' => $policy['enabled'],
+      );
+    }
+    db_update('password_policy')
+      ->fields($fields)
+      ->condition('pid', $policy['pid'])
+      ->execute();
+    watchdog('password_policy', 'Policy %name updated.', array('%name' => $policy['name']), WATCHDOG_NOTICE, l(t('edit'), 'admin/config/people/password_policy/' . $policy['pid'] . '/edit'));
+    db_delete('password_policy_role')
+      ->condition('pid', $policy['pid'])
+      ->execute();
+    db_delete('password_policy_excluded_authentication_modules')
+      ->condition('pid', $policy['pid'])
+      ->execute();
+    $pid = $policy['pid'];
+  }
+  else {
+    $pid = db_insert('password_policy')
+      ->fields(array(
+        'name' => $policy['name'],
+        'description' => $policy['description'],
+        'enabled' => $policy['enabled'],
+        'constraints' => serialize($policy['constraints']),
+        'created' => isset($policy['created']) ? $policy['created'] : 0,
+        'expiration' => !empty($policy['expiration']) ? $policy['expiration'] : 0,
+        'warning' => str_replace(' ', '', $policy['warning']),
+        'weight' => !empty($policy['weight']) ? $policy['weight'] : 0,
+      ))
+      ->execute();
+    watchdog('password_policy', 'New policy %name created.', array('%name' => $policy['name']), WATCHDOG_NOTICE, l(t('edit'), 'admin/config/people/password_policy/' . $pid . '/edit'));
+  }
+
+  foreach (array_filter($policy['roles']) as $rid => $enabled) {
+    db_insert('password_policy_role')
+      ->fields(array(
+        'pid' => $pid,
+        'rid' => $rid,
+      ))
+      ->execute();
+  }
+  foreach (array_filter($policy['excluded_authentication_modules']) as $module => $excluded) {
+    db_insert('password_policy_excluded_authentication_modules')
+      ->fields(array(
+        'pid' => $pid,
+        'module' => $module,
+      ))
+      ->execute();
+  }
+}
+
+/**
+ * Stores user password hash.
+ *
+ * @param int $uid
+ *   User id.
+ * @param string $pass
+ *   Password hash.
+ */
+function _password_policy_store_password($uid, $pass) {
+  db_insert('password_policy_history')
+    ->fields(array(
+      'uid' => $uid,
+      'pass' => $pass,
+      'created' => _password_policy_get_request_time(),
+    ))
+    ->execute();
+}
+
+/**
+ * Blocks the expired account.
+ *
+ * @param object $account
+ *   User object.
+ */
+function _password_policy_block_account($account) {
+  if ($account->uid > 1) {
+    // We never block the superuser account.
+    db_update('users')
+      ->fields(array(
+        'status' => 0,
+      ))
+      ->condition('uid', $account->uid)
+      ->execute();
+
+    // Check if user is already blocked.
+    $blocked = db_select('password_policy_expiration', 'p', array('target' => 'slave'))
+      ->fields('p', array('pid'))
+      ->condition('uid', $account->uid)
+      ->isNull('unblocked')
+      ->execute()
+      ->fetchField();
+
+    if ($blocked) {
+      db_update('password_policy_expiration')
+        ->fields(array(
+          'blocked' => _password_policy_get_request_time(),
+        ))
+        ->condition('uid', $account->uid)
+        ->execute();
+    }
+    else {
+      db_insert('password_policy_expiration')
+        ->fields(array(
+          'uid' => $account->uid,
+          'blocked' => _password_policy_get_request_time(),
+        ))
+        ->execute();
+    }
+
+    watchdog('password_policy', 'Password for user %name has expired.', array('%name' => $account->name), WATCHDOG_NOTICE, l(t('edit'), 'user/' . $account->uid . '/edit'));
+
+    // Bypass logout process when executed via Drush.
+    if (!function_exists('drush_verify_cli') || !drush_verify_cli()) {
+      include_once drupal_get_path('module', 'user') . '/user.pages.inc';
+      user_logout();
+    }
+  }
+}
+
+/**
+ * Handles unblocking of an account.
+ *
+ * If the account was blocked by this module due to password expiration, we (1)
+ * record the time it was unblocked and (2) force the user to change their
+ * password upon next login.
+ *
+ * @param object $account
+ *   User object.
+ */
+function _password_policy_handle_unblock($account) {
+  // Check if user was blocked via this module.
+  if (_password_policy_was_user_blocked_due_to_expiration($account)) {
+    db_update('password_policy_expiration')
+      ->fields(array(
+        'unblocked' => _password_policy_get_request_time(),
+      ))
+      ->condition('uid', $account->uid)
+      ->execute();
+    db_update('password_policy_force_change')
+      ->fields(
+          array(
+            'force_change' => 1,
+          ))
+      ->condition('uid', $account->uid)
+      ->execute();
+  }
+}
+
+/**
+ * Determines whether user was blocked due to expiration.
+ *
+ * @param object $account
+ *   User object.
+ */
+function _password_policy_was_user_blocked_due_to_expiration($account) {
+  return db_select('password_policy_expiration', 'ppe')
+    ->fields('ppe', array('pid'))
+    ->condition(db_or()
+      // Condition 1: Blocked and never unblocked?
+      ->condition(db_and()
+        ->isNull('unblocked')
+        ->condition('blocked', '0', '<>'))
+      // Condition 2: Reblocked after being unblocked?
+      ->condition(db_and()
+        ->isNotNull('unblocked')
+        ->where('blocked > unblocked')))
+    ->condition('uid', $account->uid)
+    ->execute()
+    ->fetchField();
+}
+
+/**
+ * Adds password policy JS.
+ *
+ * @param array $policy
+ *   A policy array.
+ * @param object $account
+ *   User object of user for which the policy is applied.
+ * @param array $render_array
+ *   (Optional) A renderable array to attach the JavaScript to. If not
+ *   provided, the JavaScript will be added to the page directly.
+ */
+function password_policy_add_policy_js(array $policy, $account, array &$render_array = NULL) {
+  $s = <<<JS
+  /**
+   * Evaluates the strength of a user's password.
+   *
+   * Returns the estimated strength and the relevant output message.
+   */
+  Drupal.evaluatePasswordStrength = function (value) {
+    var strength = 'high';
+    var msg = [];
+    var translate = Drupal.settings.password;
+    // Merge Password Policy translations.
+    for (var setting in Drupal.settings.passwordPolicy) {
+      translate[setting] = Drupal.settings.passwordPolicy[setting];
+    }
+    var trimmedSpaces = /^\s+|\s+$/.test(value);
+    if (/^\s+$/.test(value)) {
+      return {
+        strength: 10,
+        indicatorText: translate.lowStrength,
+        message: translate.allSpaces
+      };
+    }
+    value = value.replace(/^\s+|\s+$/g, '');
+JS;
+
+  // Print out each constraint's javascript password strength evaluation.
+  foreach ($policy['constraints'] as $key => $value) {
+    $s .= _password_policy_constraint_js($key, $value, $account);
+    // Constraints' error messages are used in javascript.
+    $translate['constraint_' . $key] = _password_policy_constraint_error($key, $value);
+  }
+
+  $s .= <<<JS
+
+    if (msg.length > 0) {
+      msg = translate.needsMoreVariation + '<ul><li>' + msg.join('</li><li>') + '</li></ul>';
+    }
+    else {
+      msg = '';
+    }
+    if (trimmedSpaces) {
+      msg = msg.concat(translate.trimmedSpaces);
+    }
+    var level = '';
+    if (strength === 'high') {
+      level = 100;
+    }
+    else {
+      level = 10;
+    }
+    if (strength === 'high') {
+      strength = translate.highStrength;
+    }
+    if (strength === 'medium') {
+      strength = translate.mediumStrength;
+    }
+    if (strength === 'low') {
+      strength = translate.lowStrength;
+    }
+    return {
+      strength: level,
+      indicatorText: strength,
+      message: msg
+    };
+  }
+JS;
+
+  $options = array('scope' => 'header', 'type' => 'inline', 'weight' => 10);
+  if (isset($render_array)) {
+    $options['data'] = $s;
+    $render_array['#attached']['js'][] = $options;
+  }
+  else {
+    drupal_add_js($s, $options);
+  }
+
+  $data = array(
+    // Override some core 'password' settings.
+    // Drupal by default rates passwords in terms of strength. However, a
+    // password that meets Password Policy constraints is not necessarily a
+    // strong password. So we rate the password in terms of "quality". A
+    // password is "bad" if it does not meet constraints, "good" if it does.
+    'password' => array(
+      'strengthTitle' => t('Password quality:'),
+      'lowStrength' => t('Bad'),
+      'mediumStrength' => t('Good'),
+      'highStrength' => t('Good'),
+    ),
+    // Add new settings for this module.
+    'passwordPolicy' => array_merge(
+      array(
+        'trimmedSpaces' => t('The password has spaces at the beginning or end which are ignored.'),
+        'allSpaces' => t('The password is all spaces and will not be saved.'),
+        'needsMoreVariation' => t('The password does not include enough variation to be secure.'),
+      ),
+      $translate),
+  );
+  if (isset($render_array)) {
+    $options = array(
+      'data' => $data,
+      'type' => 'setting',
+    );
+    $render_array['#attached']['js'][] = $options;
+  }
+  else {
+    drupal_add_js($data, 'setting');
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/password_policy.time.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,131 @@
+<?php
+
+/**
+ * @file
+ * Password Policy time retrieval functions.
+ *
+ * These functions should be used whenever a time is needed within the module.
+ * They provide a way to control the time as seen by the module during testing.
+ *
+ * Instead of:           Use:
+ * -----------           ----
+ * time()                _password_policy_get_current_time()
+ * REQUEST_TIME          _password_policy_get_request_time()
+ * $account->access      _password_policy_get_user_access_time($account)
+ * $account->created     _password_policy_get_user_created_time($account)
+ * $account->login       _password_policy_get_user_login_time($account)
+ *
+ * Times are read according to one of two clocks:
+ *   1. The system clock.
+ *   2. The test clock, which is offset from the system clock by a controllable
+ *      amount of time.
+ *
+ * The system clock is active by default. The test clock is active when a test
+ * is being executed.
+ *
+ * The test clock can be controlled using
+ * _password_policy_advance_test_clock().
+ */
+
+/**
+ * Gets access time for given user.
+ */
+function _password_policy_get_user_access_time($account) {
+  return _password_policy_get_user_time($account, 'access');
+}
+
+/**
+ * Gets created time for given user.
+ */
+function _password_policy_get_user_created_time($account) {
+  return _password_policy_get_user_time($account, 'created');
+}
+
+/**
+ * Gets login time for given user.
+ */
+function _password_policy_get_user_login_time($account) {
+  return _password_policy_get_user_time($account, 'login');
+}
+
+/**
+ * Gets time for user by user object property name.
+ */
+function _password_policy_get_user_time($account, $time_name) {
+  $time = $account->$time_name;
+  return _password_policy_get_time_per_active_clock($time);
+}
+
+/**
+ * Gets current time.
+ */
+function _password_policy_get_current_time() {
+  return _password_policy_get_time_per_active_clock(time());
+}
+
+/**
+ * Gets request time.
+ */
+function _password_policy_get_request_time() {
+  return _password_policy_get_time_per_active_clock(REQUEST_TIME);
+}
+
+/**
+ * Gets time according to the active clock.
+ *
+ * The system clock is active by default. The test clock is active when a test
+ * is being executed.
+ *
+ * @param int $time
+ *   A time in seconds since the Unix epoch.
+ *
+ * @return int
+ *   The same time according to the active clock.
+ */
+function _password_policy_get_time_per_active_clock($time) {
+  if (_password_policy_is_running_test()) {
+    return _password_policy_get_time_per_test_clock($time);
+  }
+  return $time;
+}
+
+/**
+ * Returns whether test is running.
+ */
+function _password_policy_is_running_test() {
+  $test_info = &$GLOBALS['drupal_test_info'];
+  return !empty($test_info['test_run_id']);
+}
+
+/**
+ * Gets time according to test clock.
+ *
+ * The test clock is offset from the system clock by a number of seconds set in
+ * a database variable.
+ */
+function _password_policy_get_time_per_test_clock($time) {
+  $offset = _password_policy_get_test_clock_offset();
+  return $time + $offset;
+}
+
+/**
+ * Advances test clock.
+ *
+ * Increases the difference between the test clock and the system clock by a
+ * given offset of seconds.
+ *
+ * @param int $offset
+ *   Offset in seconds. Can be positive or negative.
+ */
+function _password_policy_advance_test_clock($offset) {
+  $current_offset = _password_policy_get_test_clock_offset();
+  $new_offset = $current_offset + $offset;
+  variable_set('password_policy_test_clock_offset', $new_offset);
+}
+
+/**
+ * Gets offset of test clock versus system clock.
+ */
+function _password_policy_get_test_clock_offset() {
+  return variable_get('password_policy_test_clock_offset', 0);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/password_policy.variable.inc	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,25 @@
+<?php
+
+/**
+ * @file
+ * Variable module hook implementations.
+ */
+
+include_once 'password_policy.admin.inc';
+
+/**
+ * Implements hook_variable_info().
+ */
+function password_policy_variable_info($options) {
+  $variables['password_policy_warning_[mail_part]'] = array(
+    'title' => t('Password Policy warning e-mail'),
+    'type' => 'mail_text',
+    'default' => array(
+      'subject' => PASSWORD_POLICY_DEFAULT_WARNING_SUBJECT,
+      'body' => PASSWORD_POLICY_DEFAULT_WARNING_BODY,
+    ),
+    'description' => t('Customize the warning e-mail message, which is sent to remind of password expiration.') . _password_policy_warning_email_tokens_help(),
+    'group' => 'user_mails',
+  );
+  return $variables;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/tests/password_policy.test	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,960 @@
+<?php
+
+/**
+ * @file
+ * Functional tests for Password policy module.
+ */
+
+/**
+ * Tests of basic Password Policy constraints.
+ */
+class PasswordPolicyTestCase extends DrupalWebTestCase {
+
+  /**
+   * Get info about the test case.
+   */
+  public static function getInfo() {
+    return array(
+      'name' => 'Password constraints',
+      'description' => 'Test password constraints.',
+      'group' => 'Password Policy',
+    );
+  }
+
+  /**
+   * Set up the test.
+   */
+  public function setUp() {
+    parent::setUp('password_policy');
+  }
+
+  /**
+   * Test uppercase constraint.
+   */
+  public function testUppercaseConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_uppercase');
+    $constraint = 2;
+    $user = $this->drupalCreateUser();
+    $pass = 'Abc';
+    $result = password_policy_constraint_uppercase_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'One uppercase letter in the uppercase constraint with param 2');
+    $pass = 'ABc';
+    $result = password_policy_constraint_uppercase_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Two uppercase letters in the uppercase constraint with param 2');
+    $pass = 'ABC';
+    $result = password_policy_constraint_uppercase_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Three uppercase letters in the uppercase constraint with param 2');
+  }
+
+  /**
+   * Test lowercase constraint.
+   */
+  public function testLowercaseConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_lowercase');
+    $constraint = 2;
+    $user = $this->drupalCreateUser();
+    $pass = 'Abc';
+    $result = password_policy_constraint_lowercase_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One uppercase letter in the lowercase constraint with param 2');
+    $pass = 'ABc';
+    $result = password_policy_constraint_lowercase_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'Two uppercase letters in the lowercase constraint with param 2');
+    $pass = 'ABC';
+    $result = password_policy_constraint_lowercase_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'Three uppercase letters in the lowercase constraint with param 2');
+  }
+
+  /**
+   * Test letter constraint.
+   */
+  public function testLetterConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_letter');
+    $constraint = 2;
+    $user = $this->drupalCreateUser();
+    $pass = 'a12';
+    $result = password_policy_constraint_letter_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'One lowercase letter in the letter constraint with param 2');
+    $pass = 'aB1';
+    $result = password_policy_constraint_letter_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One lowercase and one uppercase letter in the letter constraint with param 2');
+    $pass = 'abC';
+    $result = password_policy_constraint_letter_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Two lowercase and one uppercase letter in the letter constraint with param 2');
+  }
+
+  /**
+   * Test digit constraint.
+   */
+  public function testDigitConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_digit');
+    $constraint = 2;
+    $user = $this->drupalCreateUser();
+    $pass = '1ab';
+    $result = password_policy_constraint_digit_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'One digit in the digit constraint with param 2');
+    $pass = '12a';
+    $result = password_policy_constraint_digit_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Two digits in the digit constraint with param 2');
+    $pass = '123';
+    $result = password_policy_constraint_digit_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Three digits in the digit constraint with param 2');
+  }
+
+  /**
+   * Test length constraint.
+   */
+  public function testLengthConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_length');
+    $constraint = 6;
+    $user = $this->drupalCreateUser();
+    $pass = 'abcde';
+    $result = password_policy_constraint_length_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'Five characters password in the length constraint with param 6');
+    $pass = 'abcdef';
+    $result = password_policy_constraint_length_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Six characters password in the length constraint with param 6');
+    $pass = 'abcdefg';
+    $result = password_policy_constraint_length_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Seven characters password in the length constraint with param 6');
+  }
+
+  /**
+   * Test alphanumeric constraint.
+   */
+  public function testAlphanumericConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_alphanumeric');
+    $constraint = 2;
+    $user = $this->drupalCreateUser();
+    $pass = '1$%';
+    $result = password_policy_constraint_alphanumeric_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'One digit and no letter in the alphanumeric constraint with param 2');
+    $pass = '1a#';
+    $result = password_policy_constraint_alphanumeric_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One digit and one letter in the alphanumeric constraint with param 2');
+    $pass = '1ab';
+    $result = password_policy_constraint_alphanumeric_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One digit ant two letters in the alphanumeric constraint with param 2');
+  }
+
+  /**
+   * Test punctuation constraint.
+   */
+  public function testPunctuationConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_punctuation');
+    $constraint = 2;
+    $user = $this->drupalCreateUser();
+    $pass = '%1a';
+    $result = password_policy_constraint_punctuation_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'One punctuation character in the punctuation constraint with param 2');
+    $pass = '%^a';
+    $result = password_policy_constraint_punctuation_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Two punctuation character in the punctuation constraint with param 2');
+    $pass = '%^&';
+    $result = password_policy_constraint_punctuation_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Three punctuation character in the punctuation constraint with param 2');
+  }
+
+  /**
+   * Test character types constraint.
+   */
+  public function testCharacterTypesConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_character_types');
+    $constraint = 2;
+    $user = $this->drupalCreateUser();
+    $pass = 'abc';
+    $result = password_policy_constraint_character_types_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'Three letters in the type constraint with param 2');
+    $pass = 'a1c';
+    $result = password_policy_constraint_character_types_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'Two letters and one digit in the type constraint with param 2');
+    $pass = 'a1&';
+    $result = password_policy_constraint_character_types_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One letter, one digit and one punctuation in the type constraint with param 2');
+  }
+
+  /**
+   * Test username constraint.
+   */
+  public function testUsernameConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_username');
+    $user = $this->drupalCreateUser();
+    $name = $this->randomName();
+    $result = password_policy_constraint_username_validate($name, '', $user);
+    $this->assertTrue($result, 'Random string in the username constraint');
+    $result = password_policy_constraint_username_validate($user->name, '', $user);
+    $this->assertFalse($result, 'Username in the username constraint');
+    $result = password_policy_constraint_username_validate('foo' . $user->name . 'bar', '', $user);
+    $this->assertFalse($result, 'String containing username in the username constraint');
+  }
+
+  /**
+   * Test delay constraint.
+   */
+  public function testDelayConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_delay');
+    // Log in.
+    $user = $this->drupalCreateUser(array('administer password policies'));
+    $this->drupalLogin($user);
+    // Create a policy.
+    $policy_name = $this->randomName();
+    $edit = array(
+      'name' => $policy_name,
+      'constraint_delay' => t('1'),
+      'roles[2]' => '2',
+    );
+    $this->drupalPost('admin/config/people/password_policy/add', $edit, t('Create'));
+    $this->assertText('Policy ' . $policy_name . ' has been created.', 'Policy ' . $policy_name . ' has been created');
+    // Enable newly created policy.
+    $pid = db_query('SELECT pid FROM {password_policy} WHERE name = :name', array(':name' => $policy_name))->fetchField();
+    $constraints = unserialize(db_query('SELECT constraints FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField());
+    $this->assertTrue($constraints['delay'] == 1, 'Verified delay constraint set.');
+    $edit = array(
+      "policies[$pid][enabled]" => $pid,
+    );
+    $this->drupalPost('admin/config/people/password_policy/list', $edit, t('Save changes'));
+    $this->assertText(t('The changes have been saved.'), 'Form submitted successfully.');
+    $enabled = db_query('SELECT enabled FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField();
+    $this->assertTrue($enabled == 1, 'Policy enabled.');
+
+    $two_hours = 60 * 60 * 2;
+    _password_policy_advance_test_clock($two_hours);
+
+    // Change password.
+    $pass1 = 'aaaaaa';
+    $edit = array(
+      'current_pass' => $user->pass_raw,
+      'pass[pass1]' => $pass1,
+      'pass[pass2]' => $pass1,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), format_string('1st password change: !pass1', array('!pass1' => $pass1)));
+    // Change password second time.
+    $pass2 = 'bbbbbb';
+    $edit = array(
+      'current_pass' => $pass1,
+      'pass[pass1]' => $pass2,
+      'pass[pass2]' => $pass2,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->assertText(t('Your password has not met the following requirement(s):'), format_string('2nd password change should fail: !pass1', array('!pass1' => $pass1)));
+
+    // Delete test policy.
+    $this->drupalPost('admin/config/people/password_policy/' . $pid . '/delete', array(), t('Delete'));
+    $this->assertText('Password policy ' . $policy_name . ' was deleted.', 'Default password policy ' . $policy_name . 'was deleted');
+  }
+
+  /**
+   * Test history constraint.
+   */
+  public function testHistoryConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_history');
+    // Log in.
+    $user = $this->drupalCreateUser(array('administer password policies'));
+    $this->drupalLogin($user);
+    // Create a policy.
+    $policy_name = $this->randomName();
+    $edit = array(
+      'name' => $policy_name,
+      'constraint_history' => t('2'),
+      'roles[2]' => '2',
+    );
+    $this->drupalPost('admin/config/people/password_policy/add', $edit, t('Create'));
+    $this->assertText('Policy ' . $policy_name . ' has been created.', 'Policy ' . $policy_name . ' has been created');
+    // Enable newly created policy.
+    $pid = db_query('SELECT pid FROM {password_policy} WHERE name = :name', array(':name' => $policy_name))->fetchField();
+    $constraints = unserialize(db_query('SELECT constraints FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField());
+    $this->assertTrue($constraints['history'] == 2, 'Verified history constraint set.');
+    $edit = array(
+      "policies[$pid][enabled]" => $pid,
+    );
+    $this->drupalPost('admin/config/people/password_policy/list', $edit, t('Save changes'));
+    $this->assertText(t('The changes have been saved.'), 'Form submitted successfully.');
+    $enabled = db_query('SELECT enabled FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField();
+    $this->assertTrue($enabled == 1, 'Policy enabled.');
+
+    // Change password.
+    $pass1 = 'aaaaaa';
+    $edit = array(
+      'current_pass' => $user->pass_raw,
+      'pass[pass1]' => $pass1,
+      'pass[pass2]' => $pass1,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), format_string('1st password change: !pass1', array('!pass1' => $pass1)));
+    // Change password second time.
+    $pass2 = 'bbbbbb';
+    $edit = array(
+      'current_pass' => $pass1,
+      'pass[pass1]' => $pass1,
+      'pass[pass2]' => $pass1,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->assertText(t('Your password has not met the following requirement(s):'), format_string('2nd password change should fail: !pass1', array('!pass1' => $pass1)));
+    // Try changing password with the first one.
+    $edit = array(
+      'current_pass' => $pass1,
+      'pass[pass1]' => $pass2,
+      'pass[pass2]' => $pass2,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), format_string('3rd password change should pass: !pass2', array('!pass2' => $pass2)));
+    // Change password again.
+    $pass3 = 'cccccc';
+    $edit = array(
+      'current_pass' => $pass2,
+      'pass[pass1]' => $pass3,
+      'pass[pass2]' => $pass3,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), format_string('4th password change should pass: !pass3', array('!pass3' => $pass3)));
+
+    // Delete test policy.
+    $this->drupalPost('admin/config/people/password_policy/' . $pid . '/delete', array(), t('Delete'));
+    $this->assertText('Password policy ' . $policy_name . ' was deleted.', 'Default password policy ' . $policy_name . 'was deleted');
+  }
+
+  /**
+   * Test digit placement constraint.
+   */
+  public function testDigitPlacementConstraint() {
+    module_load_include('inc', 'password_policy', 'constraints/constraint_digit_placement');
+    $constraint = 0;
+    $user = $this->drupalCreateUser();
+    $pass = 'ILove2Password';
+    $result = password_policy_constraint_digit_placement_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One numeric character in the digit placement constraint with param 0');
+    $pass = 'ILovePassword2';
+    $result = password_policy_constraint_digit_placement_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One numeric character in the digit placement constraint with param 0');
+    $constraint = 1;
+    $pass = 'ILove2Password';
+    $result = password_policy_constraint_digit_placement_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One numeric character in the digit placement constraint with param 1');
+    $pass = 'ILovePassword2';
+    $result = password_policy_constraint_digit_placement_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One numeric character in the digit placement constraint with param 1');
+    $constraint = 2;
+    $pass = 'ILove2Password';
+    $result = password_policy_constraint_digit_placement_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One numeric character in the digit placement constraint with param 2');
+    $pass = 'ILovePassword2';
+    $result = password_policy_constraint_digit_placement_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'One numeric character in the digit placement constraint with param 2');
+    $pass = '1LovePassword';
+    $result = password_policy_constraint_digit_placement_validate($pass, $constraint, $user);
+    $this->assertFalse($result, 'One numeric character in the digit placement constraint with param 2');
+    $pass = '1LovePassword2';
+    $result = password_policy_constraint_digit_placement_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One numeric character in the digit placement constraint with param 2');
+    $pass = 'ILove2Password3';
+    $result = password_policy_constraint_digit_placement_validate($pass, $constraint, $user);
+    $this->assertTrue($result, 'One numeric character in the digit placement constraint with param 2');
+  }
+
+}
+
+/**
+ * Tests of forcing password changes.
+ */
+class PasswordPolicyForcePasswordChangeTestCase extends DrupalWebTestCase {
+
+  /**
+   * Gets info about the test case.
+   */
+  public static function getInfo() {
+    return array(
+      'name' => 'Forced password changes',
+      'description' => 'Test forced password changes for single user, role, and all new users.',
+      'group' => 'Password Policy',
+    );
+  }
+
+  /**
+   * Sets up the test.
+   */
+  public function setUp() {
+    parent::setUp('password_policy', 'password_policy_test');
+  }
+
+  /**
+   * Tests permissions.
+   */
+  public function testPerms() {
+    // No perms.
+    $user = $this->drupalCreateUser();
+    $this->drupalLogin($user);
+    $this->drupalGet('admin/config/people/password_policy/password_change');
+    $this->assertResponse('403', 'Access should be denied.');
+    $this->drupalLogout();
+
+    // With perms.
+    $user = $this->drupalCreateUser(array('force password change'));
+    $this->drupalLogin($user);
+    $this->drupalGet('admin/config/people/password_policy/password_change');
+    $this->assertResponse('200', 'Access should be granted.');
+    $this->drupalLogout();
+  }
+
+  /**
+   * Tests form elements.
+   */
+  public function testForms() {
+    // Test admin form.
+    $user = $this->drupalCreateUser(array('force password change', 'administer users'));
+    $this->drupalLogin($user);
+    $this->drupalGet('admin/config/people/password_policy/password_change');
+    $this->assertFieldByName('password_policy_new_login_change', NULL, 'Found first time login change checkbox.');
+    $this->assertFieldByName('password_policy_force_change_roles[2]', NULL, 'Found roles checkboxes.');
+    $this->assertFieldById('edit-submit', NULL, 'Found submit button.');
+
+    // Test user edit form with perms.
+    $this->drupalGet("user/$user->uid/edit");
+    $this->assertFieldByName('force_password_change', NULL, 'Force password change checkbox is visible to admin.');
+    $this->drupalLogout();
+
+    // Test user edit form without perms.
+    $user = $this->drupalCreateUser();
+    $this->drupalLogin($user);
+    $this->drupalGet("user/$user->uid/edit");
+    $this->assertNoFieldByName('force_password_change', NULL, 'Force password change checkbox is hidden for normal users.');
+    $this->drupalLogout();
+  }
+
+  /**
+   * Tests single user password change.
+   */
+  public function testSingleUser() {
+    $admin = $this->drupalCreateUser(array('force password change', 'administer users'));
+    $user = $this->drupalCreateUser();
+    $this->drupalLogin($admin);
+    $edit = array(
+      'force_password_change' => TRUE,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->assertRaw(t('!user will be required to change their password the next time they log in.', array('!user' => $user->name)), 'User flagged for password change.');
+    $force_change = db_query('SELECT force_change FROM {password_policy_force_change} WHERE uid = :uid', array(':uid' => $user->uid))->fetchField();
+    $this->assertTrue($force_change == 1, format_string('Force change flag set to %d for %s.', array('%d' => $force_change, '%s' => $user->name)));
+
+    // Confirm admin can edit user account without changing password.
+    $edit = array(
+      'name' => $user->name,
+      'force_password_change' => TRUE,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $force_change = db_query('SELECT force_change FROM {password_policy_force_change} WHERE uid = :uid', array(':uid' => $user->uid))->fetchField();
+    $this->assertTrue($force_change == 1, format_string('User force change flag set in database:%s.', array('%s' => $force_change)));
+    $this->assertNoRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'Admin can edit user account without changing password.');
+    $this->drupalLogout();
+
+    // Verify user is forced to change password.
+    $this->drupalLogin($user);
+    $this->assertFieldByName('current_pass', NULL, 'User redirected correctly.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User presented with error instructing them to change their password.');
+
+    // Attempt to change password.
+    $edit = array(
+      'current_pass' => $user->pass_raw,
+      'pass[pass1]' => 'random_string',
+      'pass[pass2]' => 'random_string',
+    );
+
+    $this->drupalPost(NULL, $edit, t('Save'));
+    $this->assertRaw(t('The changes have been saved.'), 'Password change successful.');
+
+    // Verify user not prompted to change password a 2nd time.
+    $this->drupalGet('node');
+    $this->assertNoFieldByName('current_pass', NULL, 'User not forced to change password a 2nd time.');
+    $this->drupalLogout();
+  }
+
+  /**
+   * Tests role-based password change.
+   */
+  public function testRoleChange() {
+    $admin = $this->drupalCreateUser(array('administer users', 'force password change'));
+    $user1 = $this->drupalCreateUser();
+    $user2 = $this->drupalCreateUser();
+    $this->drupalLogin($admin);
+    $edit = array(
+      'password_policy_force_change_roles[2]' => 2,
+    );
+    $this->drupalPost('admin/config/people/password_policy/password_change', $edit, t('Save changes'));
+    $this->assertText(t('Users in the following roles will be required to immediately change their password: authenticated user'), 'Authenticated users role selected.');
+    $this->assertTrue($admin->uid != 1, format_string('Admin uid not 1: !admin_uid', array('admin_uid' => $admin->uid)));
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'Admin (not uid 1) correctly forced to change password.');
+    // Test db flags for individual users.
+    $entry_1 = db_query('SELECT uid FROM {password_policy_force_change} WHERE uid = :uid', array(':uid' => $user1->uid))->fetchField();
+    $this->assertTrue($entry_1 == $user1->uid, format_string('Entry created in password_policy_force_change for user !uid.', array('!uid' => $user1->uid)));
+    $flag_1 = db_query('SELECT force_change FROM {password_policy_force_change} WHERE uid = :uid', array(':uid' => $user1->uid))->fetchField();
+    $this->assertTrue($flag_1 == 1, format_string("User !uid flagged: !flag.", array('!uid' => $user1->uid, '!flag' => $flag_1)));
+    $this->drupalLogout();
+    // Test individual users.
+    $this->drupalLogin($user1);
+    $this->drupalGet('node');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'First test user forced to change password.');
+    $this->drupalLogout();
+
+    // Test 2nd user.
+    $this->drupalLogin($user2);
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'Second test user forced to change password.');
+    $this->drupalLogout();
+
+  }
+
+  /**
+   * Tests new user change.
+   */
+  public function testNewUserChange() {
+    $admin = $this->drupalCreateUser(array('administer users', 'force password change'));
+    $this->drupalLogin($admin);
+    $edit = array(
+      'password_policy_new_login_change' => TRUE,
+    );
+    $this->drupalPost('admin/config/people/password_policy/password_change', $edit, t('Save changes'));
+    $this->assertRaw(t('New users will be required to change their password on first-time login.'), 'New users required to change password on 1st login.');
+    $this->drupalLogout();
+    $user = $this->drupalCreateUser();
+    $this->drupalLogin($user);
+    $this->drupalGet('node');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'New user forced to change password.');
+  }
+
+  /**
+   * Tests admin forcing their own account to reset.
+   */
+  public function testSelfChange() {
+    $admin = $this->drupalCreateUser(array('administer users', 'force password change'));
+    $this->drupalLogin($admin);
+    $this->assertNoRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'Admin should not be prompted to change password yet.');
+    $edit = array(
+      'force_password_change' => TRUE,
+    );
+    $this->drupalPost("user/$admin->uid/edit/account", $edit, t('Save'));
+    $this->assertRaw(t('The changes have been saved.'), 'Admin has queued account for password change.');
+    $this->assertNoRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'Admin not initially prompted to change password.');
+    $this->drupalGet('node');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'Admin forced to change password once they try to leave account page.');
+    $edit = array(
+      'current_pass' => $admin->pass_raw,
+      'pass[pass1]' => 'fpcR@nd0m!',
+      'pass[pass2]' => 'fpcR@nd0m!',
+    );
+    $this->drupalPost("user/$admin->uid/edit/account", $edit, t('Save'));
+    $this->assertRaw(t('The changes have been saved.'), 'Admin changed password.');
+    $this->drupalGet('node');
+    $this->assertNoRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'Not prompted to change password a 2nd time.');
+  }
+
+  /**
+   * Tests unforcing a password change.
+   */
+  public function testUnforceChange() {
+    $admin = $this->drupalCreateUser(array('force password change', 'administer users'));
+    $user = $this->drupalCreateUser();
+    $this->drupalLogin($admin);
+    // Force a password change.
+    $edit = array(
+      'force_password_change' => TRUE,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->assertRaw(t('!user will be required to change their password the next time they log in.', array('!user' => $user->name)), 'User flagged for password change.');
+    // Unforce the password change.
+    $edit = array(
+      'force_password_change' => FALSE,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $force_change = db_query('SELECT force_change FROM {password_policy_force_change} WHERE uid = :uid', array(':uid' => $user->uid))->fetchField();
+    $this->assertTrue($force_change == 0, format_string('Force change flag set to %d for %s.', array('%d' => $force_change, '%s' => $user->name)));
+  }
+
+  /**
+   * Tests "Force password change on reset" setting.
+   *
+   * Some code copied from UserPasswordResetTestCase::testUserPasswordReset().
+   */
+  public function testForceChangeOnReset() {
+    // Create a user.
+    $user = $this->drupalCreateUser();
+    $this->drupalLogin($user);
+    $this->drupalLogout();
+
+    // Check that user is not forced to change password on reset by default.
+    // Attempt to reset password.
+    $edit = array('name' => $user->name);
+    $this->drupalPost('user/password', $edit, t('E-mail new password'));
+    // Visit reset URL.
+    $reset_url = $this->getPasswordResetUrlFromMail();
+    $this->drupalGet($reset_url);
+    $this->drupalPost(NULL, array(), t('Log in'));
+    // Try to visit another page without changing password.
+    $this->drupalGet('node');
+    // Verify user not redirected to change password.
+    $this->assertNoFieldByName('mail', NULL, 'User not redirected back to user-edit page.');
+    $this->assertNoRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User not forced to change password.');
+    $this->drupalLogout();
+
+    // Enable force change on reset.
+    $admin = $this->drupalCreateUser(array('administer password policies'));
+    $this->drupalLogin($admin);
+    $edit = array(
+      'password_policy_force_change_reset' => TRUE,
+    );
+    $this->drupalPost('admin/config/people/password_policy', $edit, t('Save configuration'));
+    $this->assertRaw(t('The configuration options have been saved.'), 'Enabled "Force password change on reset".');
+    $this->drupalLogout();
+
+    // Check user is forced to change password if they try to skip doing so.
+    // Attempt to reset password.
+    $edit = array('name' => $user->name);
+    $this->drupalPost('user/password', $edit, t('E-mail new password'));
+    // Visit reset URL.
+    $reset_url = $this->getPasswordResetUrlFromMail();
+    $this->drupalGet($reset_url);
+    $this->drupalPost(NULL, array(), t('Log in'));
+    // Try to visit another page without changing password.
+    $this->drupalGet('node');
+    // Verify user redirected to change password.
+    $this->assertFieldByName('mail', NULL, 'User redirected back to user-edit page.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User forced to change password.');
+    // Change password.
+    $edit = array(
+      'pass[pass1]' => 'fpcR@nd0m!',
+      'pass[pass2]' => 'fpcR@nd0m!',
+    );
+    $this->drupalPost(NULL, $edit, t('Save'));
+    $this->assertRaw(t('The changes have been saved.'), 'User changed password.');
+    // Try to visit another page without changing password.
+    $this->drupalGet('node');
+    // Verify user not again redirected to change password.
+    $this->assertNoFieldByName('mail', NULL, 'User not redirected back to user-edit page.');
+    $this->assertNoRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User not forced to change password.');
+    $this->drupalLogout();
+
+    // Check that user is not forced to change password twice if they
+    // immediately change their password.
+    // Attempt to reset password.
+    $edit = array('name' => $user->name);
+    $this->drupalPost('user/password', $edit, t('E-mail new password'));
+    // Visit reset URL.
+    $reset_url = $this->getPasswordResetUrlFromMail();
+    $this->drupalGet($reset_url);
+    $this->drupalPost(NULL, array(), t('Log in'));
+    // Change password.
+    $edit = array(
+      'pass[pass1]' => 'fpcR@nd0m!',
+      'pass[pass2]' => 'fpcR@nd0m!',
+    );
+    $this->drupalPost(NULL, $edit, t('Save'));
+    $this->assertRaw(t('The changes have been saved.'), 'User changed password.');
+    // Try to visit another page.
+    $this->drupalGet('node');
+    // Verify user not redirected to change password.
+    $this->assertNoFieldByName('mail', NULL, 'User not redirected back to user-edit page.');
+    $this->assertNoRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User not forced to change password.');
+  }
+
+  /**
+   * Tests "Extra allowed paths" setting.
+   */
+  public function testExtraAllowedPaths() {
+    $admin = $this->drupalCreateUser(array(
+      'force password change',
+      'administer password policies',
+      'administer users',
+    ));
+    $user = $this->drupalCreateUser();
+
+    // Force user to change their password.
+    $this->drupalLogin($admin);
+    $edit = array(
+      'force_password_change' => TRUE,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->drupalLogout();
+
+    // Verify user is forced to change password.
+    $this->drupalLogin($user);
+    $this->assertFieldByName('current_pass', NULL, 'User redirected correctly.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User presented with error instructing them to change their password.');
+
+    // Try to visit disallowed paths.
+    $this->drupalGet('node');
+    $this->assertFieldByName('mail', NULL, 'User redirected back to user-edit page.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User forced to change password.');
+    $this->drupalGet('node/add/page');
+    $this->assertFieldByName('mail', NULL, 'User redirected back to user-edit page.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User forced to change password.');
+    $this->drupalLogout();
+
+    // Add extra allowed paths.
+    // One path tests using a wildcard and the other does not.
+    $this->drupalLogin($admin);
+    $edit = array(
+      'password_policy_force_change_extra_allowed_paths' => "node\nnode/add/*",
+    );
+    $this->drupalPost('admin/config/people/password_policy', $edit, t('Save configuration'));
+    $this->assertRaw(t('The configuration options have been saved.'), 'Enabled "Force password change by e-mail".');
+    $this->drupalLogout();
+
+    // Verify user is still forced to change password.
+    $this->drupalLogin($user);
+    $this->assertFieldByName('current_pass', NULL, 'User redirected correctly.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User presented with error instructing them to change their password.');
+
+    // Try to visit paths that are now allowed.
+    // Note that "Access denied" is expected for node/add/page.
+    $this->drupalGet('node');
+    $this->assertNoFieldByName('mail', NULL, 'User not redirected back to user-edit page.');
+    $this->drupalGet('node/add/page');
+    $this->assertNoFieldByName('mail', NULL, 'User not redirected back to user-edit page.');
+
+    // Try to visit a path that is still disallowed.
+    $this->drupalGet("user/$user->uid/view");
+    $this->assertFieldByName('mail', NULL, 'User redirected back to user-edit page.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User forced to change password.');
+    $this->drupalLogout();
+  }
+
+  /**
+   * Tests altering allowed paths from another module.
+   */
+  public function testAllowedPathsAlter() {
+    $admin = $this->drupalCreateUser(array(
+      'force password change',
+      'administer password policies',
+      'administer users',
+    ));
+    $user = $this->drupalCreateUser();
+
+    // Force user to change their password.
+    $this->drupalLogin($admin);
+    $edit = array(
+      'force_password_change' => TRUE,
+    );
+    $this->drupalPost("user/$user->uid/edit", $edit, t('Save'));
+    $this->drupalLogout();
+
+    // Verify user is forced to change password.
+    $this->drupalLogin($user);
+    $this->assertFieldByName('current_pass', NULL, 'User redirected correctly.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User presented with error instructing them to change their password.');
+
+    // Try to visit disallowed paths.
+    $this->drupalGet('node');
+    $this->assertFieldByName('mail', NULL, 'User redirected back to user-edit page.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User forced to change password.');
+    $this->drupalGet('node/add/page');
+    $this->assertFieldByName('mail', NULL, 'User redirected back to user-edit page.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User forced to change password.');
+    $this->drupalLogout();
+
+    // Add allowed path using
+    // hook_password_policy_force_change_allowed_path_alter().
+    variable_set('password_policy_test_force_change_allowed_paths_alter', TRUE);
+
+    // Try to visit paths that are now allowed.
+    // Note that "Access denied" is expected for node/add/page.
+    $this->drupalLogin($user);
+    $this->drupalGet('node');
+    $this->assertNoFieldByName('mail', NULL, 'User not redirected back to user-edit page.');
+    $this->drupalGet('node/add/page');
+    $this->assertNoFieldByName('mail', NULL, 'User not redirected back to user-edit page.');
+
+    // Try to visit a path that is still disallowed.
+    $this->drupalGet("user/$user->uid/view");
+    $this->assertFieldByName('mail', NULL, 'User redirected back to user-edit page.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User forced to change password.');
+    $this->drupalLogout();
+  }
+
+  /**
+   * Parses the last sent e-mail and returns the one-time login link URL.
+   *
+   * Copy of OpenIDWebTestCase::getPasswordResetURLFromMail().
+   */
+  protected function getPasswordResetUrlFromMail() {
+    $mails = $this->drupalGetMails();
+    $mail = end($mails);
+    preg_match('@.+user/reset/.+@', $mail['body'], $matches);
+    return $matches[0];
+  }
+
+}
+
+/**
+ * Tests administrator changing password of another user.
+ */
+class PasswordPolicyAdministratorPasswordChangeTestCase extends DrupalWebTestCase {
+  protected $admin;
+  protected $nonadmin;
+  protected $policyRid;
+
+  /**
+   * Get info about the test case.
+   */
+  public static function getInfo() {
+    return array(
+      'name' => 'Administrator password changes',
+      'description' => 'Test administrator changing password of another user.',
+      'group' => 'Password Policy',
+    );
+  }
+
+  /**
+   * Set up the test.
+   */
+  public function setUp() {
+    parent::setUp('password_policy');
+    $this->createAdmin();
+    $this->createNonAdmin();
+  }
+
+  /**
+   * Creates a usable admin (UID=1) user.
+   *
+   * SimpleTest creates an admin user, but it cannot log in since it has no
+   * password set. So, we give it a password.
+   */
+  protected function createAdmin() {
+    global $user;
+    $pass = user_password();
+    $edit = array('pass' => $pass);
+    user_save($user, $edit);
+    $user->pass_raw = $pass;
+    $this->admin = $user;
+  }
+
+  /**
+   * Creates non-administrator user for testing.
+   *
+   * The non-administrator is given a dummy role so password policies can be
+   * applied exclusively to the non-administrator.
+   */
+  protected function createNonAdmin() {
+    $this->nonadmin = $this->drupalCreateUser();
+  }
+
+  /**
+   * Tests administrator changing password of another user.
+   */
+  public function testAdministratorPasswordChange() {
+    $admin = $this->admin;
+    $this->drupalLogin($admin);
+    $this->setPolicyThatAppliesToNewRole();
+    $this->attemptNonAdminPasswordChanges();
+    $this->attemptAdminPasswordChanges();
+  }
+
+  /**
+   * Set a password policy that applies just to the non-administrator.
+   *
+   * A password policy is created that applies to the role only the
+   * non-administrator has. Then, it is enabled.
+   */
+  protected function setPolicyThatAppliesToNewRole() {
+    $rid = $this->drupalCreateRole(array());
+    $policy_name = $this->randomName();
+    $edit = array(
+      'name' => $policy_name,
+      "roles[$rid]" => $rid,
+      'constraint_length' => 4,
+    );
+    $this->drupalPost('admin/config/people/password_policy/add', $edit, t('Create'));
+    $created_text = "Policy $policy_name has been created.";
+    $this->assertText($created_text, $created_text);
+    $this->enablePolicy($policy_name);
+    $this->policyRid = $rid;
+  }
+
+  /**
+   * Attempts to change password for non-administrator.
+   *
+   * This is intended to check that the password policy of the
+   * non-administrator is applied and not the password policy of the
+   * administrator.
+   */
+  protected function attemptNonAdminPasswordChanges() {
+    $nonadmin_uid = $this->nonadmin->uid;
+    $nonadmin_user_edit_path = 'user/' . $nonadmin_uid . '/edit';
+    $policy_rid = $this->policyRid;
+
+    $pass = 'foo';
+    $edit = array(
+      'pass[pass1]' => $pass,
+      'pass[pass2]' => $pass,
+    );
+    $this->drupalPost($nonadmin_user_edit_path, $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), 'Change password without policy applied.');
+
+    $pass = 'foo';
+    $edit = array(
+      "roles[$policy_rid]" => $policy_rid,
+      'pass[pass1]' => $pass,
+      'pass[pass2]' => $pass,
+    );
+    $this->drupalPost($nonadmin_user_edit_path, $edit, t('Save'));
+    $this->assertText(t('Password must be at least 4 characters in length.'), 'Password not accepted that is invalid per policy that applies to administrator-selected role.');
+
+    $pass = 'foobar';
+    $edit = array(
+      "roles[$policy_rid]" => $policy_rid,
+      'pass[pass1]' => $pass,
+      'pass[pass2]' => $pass,
+    );
+    $this->drupalPost($nonadmin_user_edit_path, $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), 'Password accepted that is valid per policy that applies to administrator-selected role.');
+
+    $pass = 'foo';
+    $edit = array(
+      'pass[pass1]' => $pass,
+      'pass[pass2]' => $pass,
+    );
+    $this->drupalPost($nonadmin_user_edit_path, $edit, t('Save'));
+    $this->assertText(t('Password must be at least 4 characters in length.'), 'Password not accepted that is invalid per policy that applies to role of user.');
+
+    $pass = 'foobar';
+    $edit = array(
+      'pass[pass1]' => $pass,
+      'pass[pass2]' => $pass,
+    );
+    $this->drupalPost($nonadmin_user_edit_path, $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), 'Password accepted that is valid per policy that applies to role of user.');
+  }
+
+  /**
+   * Attempts to change password for administrator.
+   *
+   * This checks that the password policy that is supposed to apply only to
+   * non-administrators does not also apply to administrators.
+   */
+  protected function attemptAdminPasswordChanges() {
+    $admin_uid = $this->admin->uid;
+    $current_pass = $this->admin->pass_raw;
+    $new_pass = 'foo';
+    $edit = array(
+      // Set a new e-mail address because the default will not pass validation.
+      'mail' => 'foo@example.com',
+      'current_pass' => $current_pass,
+      'pass[pass1]' => $new_pass,
+      'pass[pass2]' => $new_pass,
+    );
+    $this->drupalPost('user/' . $admin_uid . '/edit', $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), 'Password accepted for administrator, who has no policy that applies to their roles.');
+  }
+
+  /**
+   * Enables policy.
+   */
+  protected function enablePolicy($policy_name) {
+    $pid = db_query('SELECT pid FROM {password_policy} WHERE name = :name', array(':name' => $policy_name))->fetchField();
+    $edit = array(
+      "policies[$pid][enabled]" => $pid,
+    );
+    $this->drupalPost('admin/config/people/password_policy/list', $edit, t('Save changes'));
+    $this->assertText(t('The changes have been saved.'), 'Form submitted successfully.');
+    $this->drupalGet('admin/config/people/password_policy');
+    $enabled = db_query('SELECT enabled FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField();
+    $this->assertTrue($enabled == 1, 'Policy enabled.');
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/tests/password_policy_authmap.test	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,159 @@
+<?php
+
+/**
+ * @file
+ * Functional tests for excluding authentication modules from policies.
+ */
+
+/**
+ * Tests of basic Password Policy constraints.
+ */
+class PasswordPolicyAuthmapTestCase extends DrupalWebTestCase {
+  protected $policyMaker;
+  protected $userNoAuthenticationModule;
+  protected $userAuthenticationModuleOne;
+  protected $userAuthenticationModuleTwo;
+
+  /**
+   * Get info about the test case.
+   */
+  public static function getInfo() {
+    return array(
+      'name' => 'Authentication modules exclusion',
+      'description' => 'Test excluding authentication modules from policies.',
+      'group' => 'Password Policy',
+    );
+  }
+
+  /**
+   * Set up the test.
+   */
+  public function setUp() {
+    parent::setUp('password_policy');
+
+    // Create user for setting test policy.
+    $this->createPolicyMaker();
+
+    // Create user authenticated by no authentication modules.
+    $account = $this->drupalCreateUser();
+    $this->userNoAuthenticationModule = $account;
+
+    // Create user authenticated by authentication module "auth_module_one".
+    $account = $this->drupalCreateUser();
+    $authmaps = array('authname_auth_module_one' => $account->name);
+    user_set_authmaps($account, $authmaps);
+    $this->userAuthenticationModuleOne = $account;
+
+    // Create user authenticated by authentication module "auth_module_two".
+    $account = $this->drupalCreateUser();
+    $authmaps = array('authname_auth_module_two' => $account->name);
+    user_set_authmaps($account, $authmaps);
+    $this->userAuthenticationModuleTwo = $account;
+
+    // Set policy for testing.
+    $this->setTestPolicy();
+  }
+
+  /**
+   * Creates policy maker.
+   */
+  protected function createPolicyMaker() {
+    $this->policyMaker = $this->drupalCreateUser(array(
+      'administer users',
+      'administer permissions',
+      'administer password policies',
+      'unblock expired accounts',
+    ));
+  }
+
+  /**
+   * Tests excluding authentication modules.
+   */
+  public function testExcludingAuthenticationModules() {
+    $account = $this->userNoAuthenticationModule;
+    $this->drupalLogin($account);
+    $pass = 'foo';
+    $edit = array(
+      'current_pass' => $account->pass_raw,
+      'pass[pass1]' => $pass,
+      'pass[pass2]' => $pass,
+    );
+    $this->drupalPost('user/' . $account->uid . '/edit', $edit, t('Save'));
+    $this->assertText(t('Password must be at least 4 characters in length.'), 'Password not accepted for user not authenticated by authentication module.');
+    $this->drupalLogout();
+
+    $account = $this->userAuthenticationModuleOne;
+    $this->drupalLogin($account);
+    $pass = 'foo';
+    $edit = array(
+      'current_pass' => $account->pass_raw,
+      'pass[pass1]' => $pass,
+      'pass[pass2]' => $pass,
+    );
+    $this->drupalPost('user/' . $account->uid . '/edit', $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), 'Password accept for user whose authentication module is excluded from policy.');
+    $this->drupalLogout();
+
+    $account = $this->userAuthenticationModuleTwo;
+    $this->drupalLogin($account);
+    $pass = 'foo';
+    $edit = array(
+      'current_pass' => $account->pass_raw,
+      'pass[pass1]' => $pass,
+      'pass[pass2]' => $pass,
+    );
+    $this->drupalPost('user/' . $account->uid . '/edit', $edit, t('Save'));
+    $this->assertText(t('Password must be at least 4 characters in length.'), 'Password not accepted for user authentication whose module is not excluded from policy.');
+    $this->drupalLogout();
+  }
+
+  /**
+   * Sets test policy.
+   *
+   * Has Policy Maker user create and enable a test policy.
+   */
+  protected function setTestPolicy() {
+    $policy_maker = $this->policyMaker;
+    $this->drupalLogin($policy_maker);
+    $name = $this->createTestPolicy();
+    $this->enablePolicy($name);
+    $this->drupalLogout();
+  }
+
+  /**
+   * Creates test policy.
+   */
+  protected function createTestPolicy() {
+    $policy_name = $this->randomName();
+    $rid = DRUPAL_AUTHENTICATED_RID;
+    $edit = array(
+      'name' => $policy_name,
+      "roles[$rid]" => $rid,
+      'excluded_authentication_modules[auth_module_one]' => 'auth_module_one',
+      'constraint_length' => 4,
+    );
+    $this->drupalPost('admin/config/people/password_policy/add', $edit, t('Create'));
+    $created_text = "Policy $policy_name has been created.";
+    $this->assertText($created_text, $created_text);
+    return $policy_name;
+  }
+
+  /**
+   * Enables policy.
+   *
+   * @param string $policy_name
+   *   Name of policy to be enabled.
+   */
+  protected function enablePolicy($policy_name) {
+    $pid = db_query('SELECT pid FROM {password_policy} WHERE name = :name', array(':name' => $policy_name))->fetchField();
+    $edit = array(
+      "policies[$pid][enabled]" => $pid,
+    );
+    $this->drupalPost('admin/config/people/password_policy/list', $edit, t('Save changes'));
+    $this->assertText(t('The changes have been saved.'), 'Form submitted successfully.');
+    $this->drupalGet('admin/config/people/password_policy');
+    $enabled = db_query('SELECT enabled FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField();
+    $this->assertTrue($enabled == 1, 'Policy enabled.');
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/tests/password_policy_expiration.test	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,600 @@
+<?php
+
+/**
+ * @file
+ * Tests for Password policy module expiration functionality.
+ */
+
+/**
+ * Tests of password expiration.
+ */
+class PasswordPolicyExpirationTestCase extends DrupalWebTestCase {
+  protected $admin;
+  protected $policyMaker;
+
+  /**
+   * Gets info about the test case.
+   */
+  public static function getInfo() {
+    return array(
+      'name' => 'Password expiration',
+      'description' => 'Test password expiration and related settings.',
+      'group' => 'Password Policy',
+    );
+  }
+
+  /**
+   * Sets up the test.
+   */
+  public function setUp() {
+    parent::setUp('password_policy');
+    $this->createAdmin();
+    $this->createPolicyMaker();
+  }
+
+  /**
+   * Creates a usable admin (UID=1) user.
+   *
+   * SimpleTest creates an admin user, but it cannot log in since it has no
+   * password set. So, we give it a password.
+   */
+  protected function createAdmin() {
+    global $user;
+    $pass = user_password();
+    $edit = array('pass' => $pass);
+    user_save($user, $edit);
+    $user->pass_raw = $pass;
+    $this->admin = $user;
+  }
+
+  /**
+   * Creates policy maker.
+   */
+  protected function createPolicyMaker() {
+    $this->policyMaker = $this->drupalCreateUser(array(
+      'administer users',
+      'administer permissions',
+      'administer password policies',
+      'unblock expired accounts',
+    ));
+  }
+
+  /**
+   * Tests expiration constraint.
+   */
+  public function testExpirationConstraint() {
+    // Create role to which the expiration policy will apply.
+    // It is identical to the 'authenticated user' role in permissions. We
+    // create this separate role because we would like the policy maker user to
+    // be exempt from the expiration policy.
+    $expiration_rid = $this->drupalCreateRole(array());
+
+    // Log in policy maker.
+    $policy_maker_user = $this->policyMaker;
+    $this->drupalLogin($policy_maker_user);
+
+    // Create a policy.
+    $policy_name = $this->createExpirationPolicy(1, $expiration_rid);
+
+    // Verify that an expiration rule has been set in the policy.
+    $pid = db_query('SELECT pid FROM {password_policy} WHERE name = :name', array(':name' => $policy_name))->fetchField();
+    $expiration = db_query('SELECT expiration FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField();
+    $this->verbose('Expiration: ' . var_export($expiration, TRUE));
+    $this->assertTrue($expiration == 1, 'Verified expiration set.');
+
+    // Enable the policy.
+    $this->enablePolicy($policy_name);
+
+    _password_policy_advance_test_clock((60 * 60 * 24) + 1);
+
+    // Create an account to test with.
+    $name1 = $this->randomName();
+    $pass1 = 'aaaaaa';
+    $edit = array(
+      'name' => $name1,
+      'mail' => $name1 . '@example.com',
+      'pass[pass1]' => $pass1,
+      'pass[pass2]' => $pass1,
+    );
+    $this->drupalPost('admin/people/create', $edit, 'Create new account');
+    $uid = db_query('SELECT uid FROM {users} WHERE name = :name', array(':name' => $name1))->fetchField();
+    $this->drupalGet('user/' . $uid . '/edit');
+    $this->assertFieldChecked('edit-status-1', 'Account status is set to active.');
+
+    // Add user to role covered by expiration policy.
+    user_multiple_role_edit(array($uid), 'add_role', $expiration_rid);
+
+    // Log out and attempt to log in with the newly created test account.
+    $this->drupalLogout();
+    $edit = array(
+      'name' => $name1,
+      'pass' => $pass1,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertNoText(t('The username !name has not been activated or is blocked.', array('!name' => $name1)), 'Account not blocked from logging in.');
+
+    _password_policy_advance_test_clock((60 * 60 * 24) + 1);
+
+    // Check that password should be expired, once cron runs.
+    $created = db_query('SELECT created FROM {password_policy_history} WHERE uid = :uid', array(':uid' => '3'))->fetchField();
+    $this->verbose('Created: ' . var_export($created, TRUE));
+    $created = db_query('SELECT created FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField();
+    $this->verbose('$pid ' . $pid . ' created: ' . var_export($created, TRUE));
+
+    // Run cron to trigger password expirations.
+    $this->cronRun();
+
+    // Check that test account has been blocked.
+    $this->drupalLogin($policy_maker_user);
+    $this->drupalGet('user/' . $uid . '/edit');
+    $this->assertFieldChecked('edit-status-0', 'Account status is set to blocked.');
+    $this->drupalGet('admin/people/expired');
+    $this->assertText('unblock', 'Account marked as blocked on Expired Accounts tab.');
+
+    // Log out and attempt to log in to the expired account again, to verify
+    // block.
+    $this->drupalLogout();
+    $edit = array(
+      'name' => $name1,
+      'pass' => $pass1,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertText(t('The username !name has not been activated or is blocked.', array('!name' => $name1)), 'Account blocked from logging in.');
+
+    // Log in as policy making user to unblock the test user.
+    $this->drupalLogin($policy_maker_user);
+    $this->drupalPost('admin/people/expired/unblock/' . $uid, array(), t('Unblock user'));
+    $this->assertText(t('The user !name has been unblocked.', array('!name' => $name1)), 'Account account has been unblocked.');
+    $this->drupalGet('admin/people/expired');
+    $this->assertNoText('unblock', 'Account not marked as blocked on Expired Accounts tab.');
+
+    // Log out and attempt to log in the expired account again.
+    $this->drupalLogout();
+    $edit = array(
+      'name' => $name1,
+      'pass' => $pass1,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertNoText(t('The username !name has not been activated or is blocked.', array('!name' => $name1)), 'Account not blocked from logging in.');
+    $this->assertNoText(t('User login'), 'Check that login block is not shown, to verify user successfully logged in.');
+    $this->assertRaw(t('Your password has expired. You must change your password to proceed on the site.'), 'User forced to change password.');
+
+    // Change test user account's password.
+    $pass2 = 'bbbbbb';
+    $edit = array(
+      'current_pass' => $pass1,
+      'pass[pass1]' => $pass2,
+      'pass[pass2]' => $pass2,
+    );
+    $this->drupalPost('user/' . $uid . '/edit', $edit, t('Save'));
+    $this->assertText(t('The changes have been saved.'), format_string('1st password change: !pass', array('!pass' => $pass2)));
+    $this->drupalGet('node');
+    $this->drupalLogout();
+
+    // Run cron to trigger password expirations.
+    $this->cronRun();
+
+    // Log in to confirm password not seen as expired now that it has changed.
+    $edit = array(
+      'name' => $name1,
+      'pass' => $pass1,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertNoText(t('The username !name has not been activated or is blocked.', array('!name' => $name1)), 'Account not blocked from logging in.');
+    $this->assertNoText(t('User login'), 'Check that login block is not shown, to verify user successfully logged in.');
+    $this->drupalLogout();
+
+    // Delete test policy.
+    $this->drupalLogin($policy_maker_user);
+    $this->drupalPost('admin/config/people/password_policy/' . $pid . '/delete', array(), t('Delete'));
+    $this->assertText('Password policy ' . $policy_name . ' was deleted.', 'Default password policy ' . $policy_name . 'was deleted');
+  }
+
+  /**
+   * Tests unblocking an expired account via user edit form.
+   */
+  public function testUnblockingExpiredAccountViaUserEditForm() {
+    // Create an account to test with.
+    $account = $this->drupalCreateUser();
+    $expiration_rid = $this->assignToNewRole($account);
+
+    // Set 180-day expiration policy.
+    $expiration_days = 180;
+    $this->setExpirationPolicy($expiration_days, $expiration_rid);
+
+    // Advance to at least one second past expiration.
+    $one_day = 24 * 60 * 60;
+    _password_policy_advance_test_clock($expiration_days * $one_day + 1);
+
+    // Run cron to trigger password expirations.
+    $this->cronRun();
+
+    // Confirm account blocked.
+    $edit = array(
+      'name' => $account->name,
+      'pass' => $account->pass_raw,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertText(t('The username !name has not been activated or is blocked.', array('!name' => $account->name)), 'Account blocked from logging in.');
+
+    // Unblock account using user edit form.
+    $admin = $this->admin;
+    $this->drupalLogin($admin);
+    $edit = array('status' => 1);
+    $this->drupalPost("user/$account->uid/edit", $edit, t('Save'));
+    $this->drupalLogout();
+
+    // Run cron since it could errantly reblock account.
+    $this->cronRun();
+
+    // Confirm account unblocked.
+    $edit = array(
+      'name' => $account->name,
+      'pass' => $account->pass_raw,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertNoText(t('The username !name has not been activated or is blocked.', array('!name' => $account->name)), 'Account not blocked from logging in.');
+  }
+
+  /**
+   * Tests unblocking a "reblocked" account.
+   *
+   * By "reblocked" account we mean one that was blocked due to password
+   * expiration, unblocked, then blocked again due to the password not being
+   * changed within 24 hours.
+   */
+  public function testUnblockingReblockedAccount() {
+    // Create role to which the expiration policy will apply.
+    $expiration_rid = $this->drupalCreateRole(array());
+
+    // Add user covered by expiration policy.
+    $account = $this->drupalCreateUser();
+    user_multiple_role_edit(array($account->uid), 'add_role', $expiration_rid);
+
+    // Set an expiration policy.
+    $expiration_days = 7;
+    $this->setExpirationPolicy($expiration_days, $expiration_rid);
+
+    // Allow the password to expire.
+    $seven_days_one_second = 60 * 60 * 24 * 7 + 1;
+    _password_policy_advance_test_clock($seven_days_one_second);
+    $this->cronRun();
+
+    // Log in as policy making user to unblock the test user.
+    $this->drupalLogin($this->policyMaker);
+    $this->drupalPost('admin/people/expired/unblock/' . $account->uid, array(), t('Unblock user'));
+    $this->assertText(t('The user !name has been unblocked.', array('!name' => $account->name)), 'Account account has been unblocked.');
+    $this->drupalGet('admin/people/expired');
+    $this->assertNoText('unblock', 'Account not marked as blocked on Expired Accounts tab.');
+    $this->drupalLogout();
+
+    // Wait over one day so account is reblocked.
+    $one_day_one_second = 60 * 60 * 24 + 1;
+    _password_policy_advance_test_clock($one_day_one_second);
+    $this->cronRun();
+
+    // Attempt to log in. User should be blocked.
+    $edit = array(
+      'name' => $account->name,
+      'pass' => $account->pass_raw,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertText(t('The username !name has not been activated or is blocked.', array('!name' => $account->name)), 'Account blocked from logging in.');
+
+    // Log in as policy making user to unblock the test user.
+    $this->drupalLogin($this->policyMaker);
+    $this->drupalPost('admin/people/expired/unblock/' . $account->uid, array(), t('Unblock user'));
+    $this->assertText(t('The user !name has been unblocked.', array('!name' => $account->name)), 'Account account has been unblocked.');
+    $this->drupalGet('admin/people/expired');
+    $this->assertNoText('unblock', 'Account not marked as blocked on Expired Accounts tab.');
+    $this->drupalLogout();
+
+    // Attempt to log in. User should not be blocked.
+    $edit = array(
+      'name' => $account->name,
+      'pass' => $account->pass_raw,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertNoText(t('The username !name has not been activated or is blocked.', array('!name' => $account->name)), 'Account not blocked from logging in.');
+    $this->drupalLogout();
+  }
+
+  /**
+   * Tests "Admin (UID=1) password expires" being disabled (i.e., unchecked).
+   */
+  public function testAdminExpirationDisabled() {
+    $this->disableAdminExpiration();
+
+    // Set an expiration policy.
+    $expiration_days = 30;
+    $this->setExpirationPolicy($expiration_days);
+    $this->cronRun();
+
+    // Advance to at least one second past expiration.
+    $one_day = 24 * 60 * 60;
+    _password_policy_advance_test_clock($expiration_days * $one_day + 1);
+    $this->cronRun();
+
+    // Attempt login as admin and confirm password not expired.
+    $admin = $this->admin;
+    $edit = array(
+      'name' => $admin->name,
+      'pass' => $admin->pass_raw,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertNoText(t('The username !name has not been activated or is blocked.', array('!name' => $admin->name)), 'Admin not blocked from logging in.');
+  }
+
+  /**
+   * Tests "Admin (UID=1) password expires" being enabled (i.e., checked).
+   *
+   * This is the default setting.
+   */
+  public function testAdminExpirationEnabled() {
+    // Set an expiration policy.
+    $expiration_days = 30;
+    $this->setExpirationPolicy($expiration_days);
+    $this->cronRun();
+
+    // Advance to at least one second past expiration.
+    $one_day = 24 * 60 * 60;
+    _password_policy_advance_test_clock($expiration_days * $one_day + 1);
+    $this->cronRun();
+
+    // Attempt login as admin and confirm password expired.
+    $admin = $this->admin;
+    $edit = array(
+      'name' => $admin->name,
+      'pass' => $admin->pass_raw,
+    );
+    $this->drupalPost('user/login', $edit, t('Log in'));
+    $this->assertText(t('The username !name has not been activated or is blocked.', array('!name' => $admin->name)), 'Admin blocked from logging in.');
+  }
+
+  /**
+   * Tests expiration warning e-mails.
+   */
+  public function testWarningEmails() {
+    $expiration_days = 180;
+    $rid = DRUPAL_AUTHENTICATED_RID;
+    $warning = '14,7';
+    $this->setExpirationPolicy($expiration_days, $rid, $warning);
+    // Disable admin (UID=1) expiration to prevent multiple expiration emails.
+    $this->disableAdminExpiration();
+
+    // Start at 180 days before expiration.
+    // By "day" in the rest of this method, a 24-hour period of time is meant,
+    // not a calendar day.
+    $this->cronRun();
+    $this->assertNoMail('No e-mails sent initially.');
+
+    // Advance to one second past 90 days before expiration.
+    $one_day = 24 * 60 * 60;
+    _password_policy_advance_test_clock(90 * $one_day + 1);
+    $this->cronRun();
+    $this->assertNoMail('No e-mails sent before first expiration warning day.');
+
+    // Advance to one second past 14 days before expiration.
+    _password_policy_advance_test_clock(76 * $one_day);
+    $this->cronRun();
+    $warning_subject = t('Password expiration warning for !username at !site', array(
+      '!username' => $this->policyMaker->name,
+      '!site' => variable_get('site_name', 'Drupal'),
+    ));
+    $this->assertMail('subject', $warning_subject, 'First expiration warning e-mail sent.');
+    $this->clearMails();
+
+    // Advance to one second past 10 days before expiration.
+    _password_policy_advance_test_clock(4 * $one_day);
+    $this->cronRun();
+    $this->assertNoMail('No e-mails sent between first and second expiration warning days.');
+
+    // Advance to one second past 7 days before expiration.
+    _password_policy_advance_test_clock(3 * $one_day);
+    $this->cronRun();
+    $warning_subject = t('Password expiration warning for !username at !site', array(
+      '!username' => $this->policyMaker->name,
+      '!site' => variable_get('site_name', 'Drupal'),
+    ));
+    $this->assertMail('subject', $warning_subject, 'Second expiration warning e-mail sent.');
+    $this->clearMails();
+
+    // Advance to one second past 6 days before expiration.
+    _password_policy_advance_test_clock(1 * $one_day);
+    $this->cronRun();
+    $this->assertNoMail('No e-mails sent after expiration warnings and before expiration.');
+
+    // Advance to one second past day before expiration.
+    _password_policy_advance_test_clock(6 * $one_day);
+    $this->cronRun();
+    $this->assertNoMail('No e-mails sent after expiration warnings and less than one day before expiration.');
+
+    // Advance to one second past 3 days after expiration.
+    _password_policy_advance_test_clock(3 * $one_day);
+    $this->cronRun();
+    $this->assertNoMail('No e-mails sent after expiration.');
+  }
+
+  /**
+   * Tests warning e-mails not sent when they are disabled.
+   *
+   * Limitation: This method does not test that e-mails are not sent on the
+   * exact second of expiration.
+   */
+  public function testWarningEmailsDisabled() {
+    $expiration_days = 2;
+    $rid = DRUPAL_AUTHENTICATED_RID;
+    $warning = '';
+    $this->setExpirationPolicy($expiration_days, $rid, $warning);
+
+    // Run cron at least one second past two days before expiration.
+    // By "day" in the rest of this method, a 24-hour period of time is meant,
+    // not a calendar day.
+    $one_day = 24 * 60 * 60;
+    _password_policy_advance_test_clock($one_day + 1);
+    $this->cronRun();
+    // Run cron at least one second past day before expiration.
+    _password_policy_advance_test_clock($one_day);
+    $this->cronRun();
+    // Run cron at least one second past expiration.
+    _password_policy_advance_test_clock($one_day);
+    $this->cronRun();
+
+    $this->assertNoMail('No e-mails sent.');
+  }
+
+  /**
+   * Tests tokens replacement in warning e-mails.
+   *
+   * Importantly, this tests the Password Policy tokens.
+   */
+  public function testWarningEmailsTokens() {
+    $expiration_days = 30;
+    $rid = DRUPAL_AUTHENTICATED_RID;
+    $warning = '14';
+    $this->setExpirationPolicy($expiration_days, $rid, $warning);
+    // Disable admin (UID=1) expiration to prevent multiple expiration emails.
+    $this->disableAdminExpiration();
+
+    // Trigger expiration warning e-mail.
+    // (Advance to one second past 14 days before expiration and run cron.)
+    $one_day = 24 * 60 * 60;
+    _password_policy_advance_test_clock(16 * $one_day + 1);
+    $this->cronRun();
+
+    // Assert correct subject.
+    $warning_subject = t('Password expiration warning for !username at !site', array(
+      '!username' => $this->policyMaker->name,
+      '!site' => variable_get('site_name', 'Drupal'),
+    ));
+    $this->assertMail('subject', $warning_subject, "Tokens replaced in subject correctly.");
+
+    // Assert correct body.
+    $edit_url = _password_policy_get_preferred_password_edit_url_for_user($this->policyMaker);
+    global $language;
+    $langcode = isset($language) ? $language->language : NULL;
+    $warning_body = t("!username,\n\nYour password at !site will expire in less than !days_left day(s).\n\nPlease go to !edit_url to change your password.",
+      array(
+        '!username' => $this->policyMaker->name,
+        '!site' => variable_get('site_name', 'Drupal'),
+        '!days_left' => '14',
+        '!edit_url' => $edit_url,
+      ),
+      array('langcode' => $langcode));
+    // assertMail() does not seem to work for the body because the mail
+    // functions insert some whitespace into the body. assertMailString() seems
+    // to work, though.
+    $this->assertMailString('body', $warning_body, 1);
+  }
+
+  /**
+   * Sets expiration policy.
+   *
+   * Has Policy Maker user create and enable an expiration policy.
+   *
+   * @param int $expiration
+   *   Number of days after which password expires.
+   * @param int $rid
+   *   (optional) Role ID to which this policy should apply.
+   * @param string $warning
+   *   (optional) Comma-delimited list of numbers of days before expiration on
+   *   which expiration warnings are to be sent.
+   */
+  protected function setExpirationPolicy($expiration, $rid = DRUPAL_AUTHENTICATED_RID, $warning = '') {
+    $policy_maker = $this->policyMaker;
+    $this->drupalLogin($policy_maker);
+    $name = $this->createExpirationPolicy($expiration, $rid, $warning);
+    $this->enablePolicy($name);
+    $this->drupalLogout();
+  }
+
+  /**
+   * Disables "Admin (UID=1) password expires" setting.
+   */
+  protected function disableAdminExpiration() {
+    $admin = $this->admin;
+    $this->drupalLogin($admin);
+    $edit = array(
+      'password_policy_admin' => FALSE,
+    );
+    $this->drupalPost('admin/config/people/password_policy', $edit, t('Save configuration'));
+    $this->drupalLogout();
+  }
+
+  /**
+   * Creates expiration policy.
+   *
+   * @param int $expiration
+   *   Number of days after which password expires.
+   * @param int $rid
+   *   (optional) Role ID to which this policy should apply.
+   * @param string $warning
+   *   (optional) Comma-delimited list of numbers of days before expiration on
+   *   which expiration warnings are to be sent.
+   *
+   * @return string
+   *   Name of created policy.
+   */
+  protected function createExpirationPolicy($expiration, $rid = DRUPAL_AUTHENTICATED_RID, $warning = '') {
+    $policy_name = $this->randomName();
+    $edit = array(
+      'name' => $policy_name,
+      'expiration' => $expiration,
+      'warning' => $warning,
+      "roles[$rid]" => $rid,
+    );
+    $this->drupalPost('admin/config/people/password_policy/add', $edit, t('Create'));
+    $created_text = "Policy $policy_name has been created.";
+    $this->assertText($created_text, $created_text);
+    return $policy_name;
+  }
+
+  /**
+   * Enables policy.
+   */
+  protected function enablePolicy($policy_name) {
+    $pid = db_query('SELECT pid FROM {password_policy} WHERE name = :name', array(':name' => $policy_name))->fetchField();
+    $edit = array(
+      "policies[$pid][enabled]" => $pid,
+    );
+    $this->drupalPost('admin/config/people/password_policy/list', $edit, t('Save changes'));
+    $this->assertText(t('The changes have been saved.'), 'Form submitted successfully.');
+    $this->drupalGet('admin/config/people/password_policy');
+    $enabled = db_query('SELECT enabled FROM {password_policy} WHERE pid = :pid', array(':pid' => $pid))->fetchField();
+    $this->assertTrue($enabled == 1, 'Policy enabled.');
+  }
+
+  /**
+   * Assigns user to a newly created role.
+   *
+   * @param object $account
+   *   User object.
+   *
+   * @return int
+   *   Role ID of newly created role.
+   */
+  protected function assignToNewRole($account) {
+    $expiration_rid = $this->drupalCreateRole(array());
+    user_multiple_role_edit(array($account->uid), 'add_role', $expiration_rid);
+    return $expiration_rid;
+  }
+
+  /**
+   * Asserts that no e-mail has been sent.
+   *
+   * Specifically, asserts that no e-mail has been sent since the e-mails
+   * collected during the test were last cleared.
+   */
+  protected function assertNoMail($message) {
+    $captured_emails = variable_get('drupal_test_email_collector', array());
+    $this->assertTrue(empty($captured_emails), $message);
+  }
+
+  /**
+   * Clears all e-mails collected during test.
+   */
+  protected function clearMails() {
+    variable_set('drupal_test_email_collector', array());
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/tests/password_policy_test/password_policy_test.info	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,12 @@
+name = Password Policy test
+description = Support module for Password Policy-related testing.
+package = Testing
+core = 7.x
+hidden = TRUE
+
+; Information added by Drupal.org packaging script on 2018-03-06
+version = "7.x-1.15"
+core = "7.x"
+project = "password_policy"
+datestamp = "1520367189"
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/password_policy/tests/password_policy_test/password_policy_test.module	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,25 @@
+<?php
+
+/**
+ * @file
+ * Support module for testing Password Policy.
+ *
+ * Allows testing hooks as might be implemented by another module.
+ */
+
+/**
+ * Implements hook_password_policy_force_change_allowed_paths_alter().
+ */
+function password_policy_test_password_policy_force_change_allowed_paths_alter(&$allowed_paths) {
+  if (_password_policy_test_is_testing_allowed_paths_alter()) {
+    $allowed_paths[] = 'node';
+    $allowed_paths[] = 'node/add/*';
+  }
+}
+
+/**
+ * Determines whether the allowed paths alter feature is currently under test.
+ */
+function _password_policy_test_is_testing_allowed_paths_alter() {
+  return variable_get('password_policy_test_force_change_allowed_paths_alter', FALSE);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/username_enumeration_prevention/CHANGELOG.txt	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,5 @@
+CHANGELOG for Username Enumeration Prevention for Drupal 7
+
+Username Enumeration Prevention 7.x-1.0
+=================
+7.x-1.0 by ToneUK: Initial release.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/username_enumeration_prevention/LICENSE.txt	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,339 @@
+                    GNU GENERAL PUBLIC LICENSE
+                       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+                            NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+                     END OF TERMS AND CONDITIONS
+
+            How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License along
+    with this program; if not, write to the Free Software Foundation, Inc.,
+    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/username_enumeration_prevention/README.txt	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,72 @@
+# Username Enumeration Prevention
+
+By default Drupal is very secure (especially Drupal 7). However, there is a way
+to exploit the system by using a technique called username enumeration. Both
+Drupal 6 and 7 have this issue, but it is much worse for people using Drupal 6.
+This is because Drupal 6 does not have any built in brute force prevention.
+When an attacker knows a username they can start a brute force attack to gain
+access with that user. To help prevent this, it is best if usernames on the
+system are not easy to find out.
+
+The modules provides several additional protections to prevent username
+enumeration.
+
+## Request New Password Validation
+
+Attackers can easily find usernames that exist by using the forgot password form
+and a technique called "username enumeration". The attacker can enter a username
+that does not exist and they will get a response from Drupal saying so. All the
+attacker needs to do is keep trying usernames on this form until they find a
+valid user.
+
+This module will stop this from happening. When the module is enabled, the error
+message will be replaced for the same message as a valid user and they will be
+redirected back to the login form. If the user does not exist, no password reset
+email will be sent, but the attacker will not know this is the case.
+
+For a demonstration of this, visit the password reset page at zeusarticles.com
+and try to enter an invalid username. This will show you the same message as a
+valid username.
+
+## Access User Profiles Permission
+
+If a user belongs to a role that has "access user profiles" granted to it, then
+that user can serially visit all integers at the URL http://drupal.org/user/UID
+and get the username from the loaded profile pages. With this permission, the
+user can call the core callback at http://drupal.org/user/autocomplete/a and get
+the usernames. Replacing the "a" with each letter of the alphabet, prints an
+array of usernames.
+
+Installing this module on a site will notify site administrators whether this
+issue is present or not, via the Status Report page (Home » Administration »
+Reports » Status report).
+
+## Views
+
+If a site has the views module installed then views exposes an autocomlete
+callback which can be similarly be enumerated with letters of the alphabet to
+get all the usernames.
+See http://drupal.org/admin/views/ajax/autocomplete/user/a for an example.
+This callback doesn't have any access restrictions assigned by the views module.
+
+Installing this module will make the views autocomplete callback require the
+"access user profiles" permission. This will prevent anonymous users from
+accessing the callback as long as the anonymous user role does not have "access
+user profiles" enabled.
+
+If any of the two issues above exist then the module will notify the site
+builder when the module is enabled.
+
+## Other
+
+Note: There may be other places where usernames could be exposed that this
+module may not know about. Examples are the "submitted by" information on nodes
+or comments, views, exposed filters or by other contributed modules. Users
+looking to hide the usernames from comments and nodes should look at using
+realname or some other tool.
+
+## Installing Username Enumeration Prevention:
+
+Place the entirety of this directory in
+sites/all/modules/username_enumeration_prevention. Navigate to Administer >>
+Build >> Modules. Enable Username Enumeration Prevention.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/username_enumeration_prevention/username_enumeration_prevention.info	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,10 @@
+name = Username Enumeration Prevention
+description = Removes the error message produced, from the forgot password form, when an incorrect user has been supplied.
+core = 7.x
+
+; Information added by Drupal.org packaging script on 2016-01-24
+version = "7.x-1.2"
+core = "7.x"
+project = "username_enumeration_prevention"
+datestamp = "1453624440"
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/username_enumeration_prevention/username_enumeration_prevention.install	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,67 @@
+<?php
+
+/**
+ * @file
+ * Install file for the Username Enumeration Prevention module.
+ *
+ * Checks if the requirements are met when enabling the module.
+ */
+
+/**
+ * Implements hook_requirements().
+ */
+function username_enumeration_prevention_requirements($phase) {
+  $requirements = array();
+  // Ensure translations don't break during installation.
+  $t = get_t();
+
+  // Only in the Runtime $phase environment.
+  if ($phase == 'runtime') {
+    $username_enumeration_prevention_roles = user_roles(FALSE, 'access user profiles');
+    if (isset($username_enumeration_prevention_roles[1]) && $username_enumeration_prevention_roles[1] == "anonymous user") {
+      $value = $t('WARNING! Anonymous users have permission to access user
+        profiles.');
+      $severity = REQUIREMENT_WARNING;
+    }
+    else {
+      $value = $t('Anonymous users do not have permission to access user
+        profiles.');
+    }
+
+    $requirements['username_enumeration_prevention_via_permissions'] = array(
+      'title' => $t('Username enumeration prevention'),
+      'value' => $value,
+      'description' => $t('Granting anonymous users permission to access user
+      profiles poses a security risk because it allows users who are not logged
+      into the site to obtain usernames via callbacks. More information is
+      available in the module README or on the !url.', array('!url' =>
+      l($t('project page'),
+        'http://drupal.org/project/username_enumeration_prevention'))),
+      'severity' => isset($severity) ? $severity : REQUIREMENT_OK,
+    );
+
+    if (module_exists('pathauto') && module_exists('globalredirect')) {
+      $globalredirect_settings = _globalredirect_get_settings();
+      if (strstr(variable_get('pathauto_user_pattern', 'users/[user:name]'), '[user:name]') && !$globalredirect_settings['menu_check']) {
+        $value = $t('WARNING! Current Pathauto and Global Redirect settings may
+          expose usernames.');
+        $severity = REQUIREMENT_WARNING;
+      }
+      else {
+        $value = $t('Pathauto and Global Redirect settings have been changed from
+          the defaults that can expose username.');
+      }
+      $requirements['username_enumeration_prevention_via_redirects'] = array(
+        'title' => $t('Username enumeration prevention'),
+        'value' => $value,
+        'description' => $t("Pathauto's default user paths, along with Global
+        Redirect's default Menu Access Checking disabled combine to create
+        redirects with no access checking. More information is available in the
+        !url.", array('!url' => l($t('Global Redirect issue queue'),
+          'http://drupal.org/node/782476'))),
+        'severity' => isset($severity) ? $severity : REQUIREMENT_OK,
+      );
+    }
+  }
+  return $requirements;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/modules/username_enumeration_prevention/username_enumeration_prevention.module	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,85 @@
+<?php
+
+/**
+ * @file
+ * Main file for the Username Enumeration Prevention.
+ *
+ * Adds the required functionality for removing the reset password error
+ * message. Also, if views is installed restricts the callback function to work
+ * only for users with the access user profiles permission.
+ */
+
+/**
+ * Implements hook_menu_alter().
+ *
+ * Disable the callback for the views module when users don't have access user
+ * profiles permission.
+ */
+function username_enumeration_prevention_menu_alter(&$items) {
+  if (module_exists('views')) {
+    $items['admin/views/ajax/autocomplete/user']['access arguments'] = array('access user profiles');
+  }
+}
+
+/**
+ * Implements hook_form_alter().
+ *
+ * Checks for the user password reset form and changes the validate and submit
+ * functions. Uses the overrided functions defined in this module instead of
+ * Drupal cores.
+ */
+function username_enumeration_prevention_form_alter(&$form, &$form_state, $form_id) {
+  // Check to see if form is the reset password form.
+  if (strlen(strstr($form_id, 'user_pass')) > 0) {
+    // Override core validate and submit actions.
+    $key_validate = array_search('user_pass_validate', $form['#validate']);
+    if ($key_validate !== FALSE) {
+      $form['#validate'][$key_validate] = 'username_enumeration_prevention_pass_validate';
+    }
+    $key_submit = array_search('user_pass_submit', $form['#submit']);
+    if ($key_submit !== FALSE) {
+      $form['#submit'][$key_submit] = 'username_enumeration_prevention_pass_submit';
+    }
+  }
+}
+
+/**
+ * Overrides user_pass_validate() found in user.pages.inc.
+ */
+function username_enumeration_prevention_pass_validate($form, &$form_state) {
+  $name = trim($form_state['values']['name']);
+  // Try to load by email.
+  $users = user_load_multiple(array(), array('mail' => $name, 'status' => '1'));
+  $account = reset($users);
+  if (!$account) {
+    // No success, try to load by name.
+    $users = user_load_multiple(array(), array('name' => $name, 'status' => '1'));
+    $account = reset($users);
+  }
+
+  if (isset($account->uid)) {
+    form_set_value(array('#parents' => array('account')), $account, $form_state);
+  }
+  else {
+    // Reuse the 'send email' message if a value was entered in form.
+    if ($name != '') {
+      drupal_set_message(t('Further instructions have been sent to your e-mail address.'));
+    }
+  }
+}
+
+/**
+ * Overrides the user_pass_submit() found in user.pages.inc.
+ */
+function username_enumeration_prevention_pass_submit($form, &$form_state) {
+  if (isset($form_state['values']['account'])) {
+    global $language;
+    $account = $form_state['values']['account'];
+
+    // Mail one time login URL and instructions using current language.
+    _user_mail_notify('password_reset', $account, $language);
+    watchdog('user', 'Password reset instructions mailed to %name at %email.', array('%name' => $account->name, '%email' => $account->mail));
+    drupal_set_message(t('Further instructions have been sent to your e-mail address.'));
+  }
+  $form_state['redirect'] = 'user';
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/backup_migrate-7.x-3.x.fr_0.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,861 @@
+# French translation of Backup and Migrate (7.x-3.5)
+# Copyright (c) 2018 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Backup and Migrate (7.x-3.5)\n"
+"POT-Creation-Date: 2018-02-05 23:43+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "delete"
+msgstr "supprimer"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Username"
+msgstr "Nom d'utilisateur"
+msgid "Item"
+msgstr "Élément"
+msgid "Type"
+msgstr "Type"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Age"
+msgstr "Âge"
+msgid "Create !type"
+msgstr "Créer un(e) !type"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "cron"
+msgstr "tâche planifiée (cron)"
+msgid "all"
+msgstr "tout"
+msgid "Date"
+msgstr "Date"
+msgid "Size"
+msgstr "Taille"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "Scheme"
+msgstr "Schéma"
+msgid "Password"
+msgstr "Mot de passe"
+msgid "none"
+msgstr "aucun(e)"
+msgid "Settings"
+msgstr "Paramètres"
+msgid "Name"
+msgstr "Nom"
+msgid "edit"
+msgstr "modifier"
+msgid "Import"
+msgstr "Importer"
+msgid "Schedule"
+msgstr "Planning"
+msgid "Path"
+msgstr "Chemin"
+msgid "Filename"
+msgstr "Nom du fichier"
+msgid "ID"
+msgstr "Identifiant (ID)"
+msgid "Unknown"
+msgstr "Inconnu"
+msgid "Database type"
+msgstr "Type de base de données"
+msgid "Continue"
+msgstr "Continuer"
+msgid "Email"
+msgstr "Courriel"
+msgid "Default Settings"
+msgstr "Paramètres par défaut"
+msgid "Email Address"
+msgstr "Adresse de courriel"
+msgid "Advanced Settings"
+msgstr "Paramètres Avancés"
+msgid "Database"
+msgstr "Base de données"
+msgid "Host"
+msgstr "Hôte"
+msgid "Never"
+msgstr "Jamais"
+msgid "Custom"
+msgstr "Personnalisé"
+msgid "Location"
+msgstr "Emplacement"
+msgid "item"
+msgstr "élément"
+msgid "items"
+msgstr "éléments"
+msgid "Items"
+msgstr "Éléments"
+msgid "download"
+msgstr "télécharger"
+msgid "Frequency"
+msgstr "Fréquence"
+msgid "help page"
+msgstr "page d'aide"
+msgid "Note"
+msgstr "Note"
+msgid "!time ago"
+msgstr "Il y a !time"
+msgid "Backup"
+msgstr "Sauvegarder"
+msgid "Destination"
+msgstr "Destination"
+msgid "Site off-line message"
+msgstr "Message du site hors ligne"
+msgid ""
+"@site is currently under maintenance. We should be back shortly. Thank "
+"you for your patience."
+msgstr ""
+"@site est en cours de maintenance. Nous serons de retour très "
+"bientôt. Merci de votre patience."
+msgid "Message to show visitors when the site is in off-line mode."
+msgstr "Le message à afficher lorsque le site est hors ligne."
+msgid "Profile name"
+msgstr "Nom du profil"
+msgid "Profile"
+msgstr "Profil"
+msgid "Weeks"
+msgstr "Semaines"
+msgid "Database name"
+msgstr "Nom de la base de données"
+msgid "Port"
+msgstr "Port"
+msgid "fetch now"
+msgstr "récupérer maintenant"
+msgid "Sources"
+msgstr "Sources"
+msgid "Source"
+msgstr "Source"
+msgid "Replacement patterns"
+msgstr "Motifs de remplacement"
+msgid "Revert"
+msgstr "Rétablir"
+msgid "Days"
+msgstr "Jours"
+msgid "Hours"
+msgstr "Heures"
+msgid "Seconds"
+msgstr "Secondes"
+msgid "Last run"
+msgstr "Dernier lancement"
+msgid "Are you sure?"
+msgstr "Êtes-vous certain(e) ?"
+msgid "Keep"
+msgstr "Garder"
+msgid "revert"
+msgstr "rétablir"
+msgid "Missing"
+msgstr "Manquant"
+msgid "Schedules"
+msgstr "Plannings"
+msgid "Minutes"
+msgstr "Minutes"
+msgid "Advanced Options"
+msgstr "Options avancées"
+msgid "Once an hour"
+msgstr "Une fois par heure"
+msgid "Once a day"
+msgstr "Une fois par jour"
+msgid "Profiles"
+msgstr "Profils"
+msgid "Secret Key"
+msgstr "Clé secrète"
+msgid "Restore"
+msgstr "Restaurer"
+msgid "Local"
+msgstr "Locale"
+msgid "The e-mail address %mail is not valid."
+msgstr "L'adresse électronique %mail n'est pas valide."
+msgid "Tags:"
+msgstr "Étiquettes:"
+msgid "Create new profile"
+msgstr "Créer un nouveau profil"
+msgid "Profile Name"
+msgstr "Nom du profil"
+msgid "export"
+msgstr "exporter"
+msgid "Backup and Migrate"
+msgstr "Backup and Migrate"
+msgid "Backup the database."
+msgstr "Sauvegarder la base de données."
+msgid "Restore the database from a previous backup"
+msgstr "Restaurer la base de données avec une sauvegarde précédente"
+msgid "Saved Backups"
+msgstr "Sauvegardes enregistrées"
+msgid "Backup Schedule"
+msgstr "Sauvegarde planifiée"
+msgid "Backup every"
+msgstr "Sauvegarder toutes les"
+msgid "Number of Backup files to keep"
+msgstr "Nombre de sauvegardes à conserver"
+msgid "Exclude the following tables altogether"
+msgstr "Exclure l'ensemble des tables suivantes"
+msgid "The selected tables will not be added to the backup file."
+msgstr "Les tables sélectionnées ne seront pas ajoutées à la sauvegarde."
+msgid "Exclude the data from the following tables"
+msgstr "Exclure les données des tables suivantes"
+msgid ""
+"The selected tables will have their structure backed up but not their "
+"contents. This is useful for excluding cache data to reduce file size."
+msgstr ""
+"La structure des tables sélectionnées sera sauvegardée mais pas "
+"leurs données. Ceci est utile pour exclure les données du cache et "
+"réduire la taille du fichier."
+msgid "Backup file name"
+msgstr "Nom du fichier de sauvegarde"
+msgid "No Compression"
+msgstr "Aucune compression"
+msgid "GZip"
+msgstr "GZip"
+msgid "BZip"
+msgstr "BZip"
+msgid "Compression"
+msgstr "Compression"
+msgid "Timestamp format"
+msgstr "Format d'horodatage"
+msgid "Should be a PHP <a href=\"!url\">date()</a> format string."
+msgstr "Doit être une chaîne au format PHP <a href=\"!url\">date()</a>"
+msgid "Save these settings."
+msgstr "Enregistrer ces paramètres."
+msgid "Upload a Backup File"
+msgstr "Transférer un fichier de sauvegarde"
+msgid "Unable to open file %file to restore database"
+msgstr ""
+"Impossible d'ouvrir le fichier %file pour restaurer la base de "
+"données"
+msgid ""
+"Security notice: Backup and Migrate was unable to write a test text "
+"file to the destination directory %directory, and is therefore unable "
+"to check the security of the backup destination. Backups to the server "
+"will be disabled until the destination becomes writable and secure."
+msgstr ""
+"Information de sécurité : Backup and Migrate n'a pas pu créer de "
+"fichier de test dans le répertoire de destination %directory, et ne "
+"peut donc pas vérifier la sécurité de cet emplacement. Les "
+"sauvegardes sur le serveur seront désactivées jusqu'à ce que le "
+"répertoire de destination soit accessible en écriture et sécurisé."
+msgid ""
+"Security notice: Backup and Migrate will not save backup files to the "
+"server because the destination directory is publicly accessible. If "
+"you want to save files to the server, please secure the '%directory' "
+"directory"
+msgstr ""
+"Information de sécurité : \"Backup and Migrate\" n'enregistrera pas "
+"de sauvegarde sur le serveur car le répertoire de destination est "
+"accessible à tous. Si vous voulez sauvegarder des fichiers sur le "
+"serveur, sécurisez d'abord le répertoire \"%directory\"."
+msgid "Scheduling"
+msgstr "Planification"
+msgid "Directory path"
+msgstr "Chemin du répertoire"
+msgid "Locations"
+msgstr "Emplacements"
+msgid "location"
+msgstr "emplacement"
+msgid "Add a note"
+msgstr "Annoter"
+msgid "1 byte"
+msgid_plural "@count bytes"
+msgstr[0] "@count octet"
+msgstr[1] "@count octets"
+msgid "Edit !type"
+msgstr "Modifier !type"
+msgid "Save !type"
+msgstr "Enregistrer !type"
+msgid "Delete !type"
+msgstr "Supprimer !type"
+msgid "Exported content"
+msgstr "Contenu exporté"
+msgid "override"
+msgstr "supplanter"
+msgid "There are no !items to display."
+msgstr "Il n'y a aucun !items à afficher."
+msgid "Create a new !item"
+msgstr "Créer un nouveau !item"
+msgid "List !type"
+msgstr "Lister les !type"
+msgid "Export !type"
+msgstr "Exporter !type"
+msgid ""
+"The type of the database. Drupal only supports one database type at a "
+"time, so this must be the same as the current database type."
+msgstr ""
+"Le type de la base de données. Drupal supporte uniquement un type de "
+"base de données à la fois, cela doit donc être le même que le type "
+"de base de données couramment utilisée."
+msgid ""
+"The name of the database. The database must exist, it will not be "
+"created for you."
+msgstr ""
+"Le nom de la base de données. La base de données doit exister, elle "
+"ne sera pas créée pour vous."
+msgid "Enter the name of a user who has write access to the database."
+msgstr ""
+"Entrer le nom d'un utilisateur avec droit d'écriture sur la base de "
+"données."
+msgid "The database name is not valid."
+msgstr "Le nom de la base de données n'est pas valide."
+msgid ""
+"You may omit specific tables, or specific table data from the backup "
+"file. Only omit data that you know you will not need such as cache "
+"data, or tables from other applications. Excluding tables can break "
+"your Drupal install, so <strong>do not change these settings unless "
+"you know what you're doing</strong>."
+msgstr ""
+"Vous pouvez ignorer certaines table, ou des données de table "
+"spécifiques du fichier de sauvegarde. Seulement des données que vous "
+"n'aurez pas besoin telles que les données de cache, ou des tables "
+"d'autres applications. Exclure des tables peut faire tomber le site, "
+"donc <strong>ne changez ces paramètres que si vous savez ce que vous "
+"faites</strong>."
+msgid "Lock tables during backup"
+msgstr "Verrouiller les tables durant la sauvegarde"
+msgid ""
+"This can help reduce data corruption, but will make your site "
+"unresponsive."
+msgstr ""
+"Ce réglage peut réduire la corruption des données, mais votre site "
+"ne répondra plus."
+msgid "%num SQL commands executed."
+msgstr "%num commandes SQL ont été exécutées."
+msgid "MySQL Database"
+msgstr "Base de données MySQL"
+msgid "Default Database"
+msgstr "Base de données par défaut"
+msgid ""
+"Enter the email address to send the backup files to. Make sure the "
+"email sever can handle large file attachments"
+msgstr ""
+"Entrer l'adresse électronique à laquelle envoyer les fichiers de "
+"sauvegarde. Assurez-vous que le serveur puisse supporter les pièces "
+"jointes de grande taille."
+msgid "Database backup from !site: !file"
+msgstr "Sauvegarde de la base de données de !site&nbsp;: !file"
+msgid "Database backup attached."
+msgstr "Sauvegarde de la base de donnée en pièce jointe."
+msgid "Server Directory"
+msgstr "Répertoire du serveur"
+msgid ""
+"Enter the path to the directory to save the backups to. Use a relative "
+"path to pick a path relative to your Drupal root directory. The web "
+"server must be able to write to this path."
+msgstr ""
+"Entrez le chemin vers le répertoire où enregistrer les sauvegardes. "
+"Vous pouvez utilisez un chemin relatif à votre répertoire racine "
+"Drupal. Le serveur web doit pouvoir écrire dans ce répertoire."
+msgid "Change file mode (chmod)"
+msgstr "Changer le mode du fichier (chmod)"
+msgid ""
+"If you enter a value here, backup files will be chmoded with the mode "
+"you specify. Specify the mode in octal form (e.g. 644 or 0644) or "
+"leave blank to disable this feature."
+msgstr ""
+"Si vous entrez une valeur dans ce champ, le fichier de sauvegarde sera "
+"modifié avec le mode spécifié. Utilisez la forme octale (644 ou "
+"0644) ou laissez le champ vide pour désactiver cette fonctionnalité."
+msgid "Change file group (chgrp)"
+msgstr "Changer le groupe du fichier (chgrp)"
+msgid ""
+"If you enter a value here, backup files will be chgrped to the group "
+"you specify. Leave blank to disable this feature."
+msgstr ""
+"Si vous entrez une valeur dans ce champ, le fichier de sauvegarde sera "
+"modifié avec le groupe spécifié. Laissez le champ vide pour "
+"désactiver cette fonctionnalité."
+msgid ""
+"You must enter a valid chmod octal value (e.g. 644 or 0644) in the "
+"change mode field, or leave it blank."
+msgstr ""
+"Vous devez entrer une valeur octale valide (644 ou 0644) ou laisser le "
+"champ vide."
+msgid "Manual Backups Directory"
+msgstr "Répertoire de sauvegarde manuelle"
+msgid "Scheduled Backups Directory"
+msgstr "Répertoire des sauvegardes planifiées"
+msgid "Save the backup files to any a directory on an FTP server."
+msgstr ""
+"Sauver les fichiers de sauvegarde sur un répertoire sur un serveur "
+"FTP."
+msgid "FTP Directory"
+msgstr "Répertoire FTP"
+msgid "Save the backup files to a bucket on your !link."
+msgstr "Enregistrer les fichiers de sauvegarde vers un bucket sur votre !link."
+msgid "Amazon S3 account"
+msgstr "Compte Amazon S3"
+msgid "Amazon S3 Bucket"
+msgstr "Amazon S3 Bucket"
+msgid "Send the backup as an email attachment to the specified email address."
+msgstr ""
+"Envoyer le fichier de sauvegarde comme pièce jointe à l'adresse de "
+"courriel suivante."
+msgid "There are no backup files to display."
+msgstr "Il n'y a aucun fichier de sauvegarde à afficher."
+msgid ""
+"Choose the database to restore to. Any database destinations you have "
+"created and any databases specified in your settings.php can be "
+"restored to."
+msgstr ""
+"Choisissez la base de données à restaurer. N'importe quelle "
+"destination de base de données que vous avez créé et n'importe "
+"quelle base de données indiquée dans votre fichier settings.php "
+"peuvent être restaurées."
+msgid "Are you sure you want to restore the database?"
+msgstr "Êtes-vous certain(e) de vouloir restaurer la base de données&nbsp;?"
+msgid ""
+"Are you sure you want to restore the database from the backup file "
+"%file_id? This will delete some or all of your data and cannot be "
+"undone. <strong>Always test your backups on a non-production "
+"server!</strong>"
+msgstr ""
+"Êtes-vous certain(e) de vouloir restaurer la base de données depuis "
+"le fichier de sauvegarde %file_id&nbsp;? Ceci supprimera certaines "
+"données et est irréversible. <strong>Testez toujours vos sauvegardes "
+"sur un serveur de développement&nbsp;!</strong>"
+msgid ""
+"Restoring will delete some or all of your data and cannot be undone. "
+"<strong>Always test your backups on a non-production server!</strong>"
+msgstr ""
+"La restauration va supprimer tout ou partie de vos données et ne peut "
+"être annulée. <strong>Testez toujours la restauration en dehors d'un "
+"serveur de production !</strong>"
+msgid "Are you sure you want to delete the backup file?"
+msgstr ""
+"Êtes vous sûr(e) de vouloir supprimer le fichier de "
+"sauvegarde&nbsp;?"
+msgid ""
+"Are you sure you want to delete the backup file %file_id? <strong>This "
+"action cannot be undone.</strong>"
+msgstr ""
+"Êtes vous sûr(e) de vouloir supprimer le fichier de sauvegarde "
+"%file_id&nbsp;? <strong>Cette action est irréversible.</strong>"
+msgid "Backup Source"
+msgstr "Source de sauvegarde"
+msgid ""
+"Choose the database to backup. Any database destinations you have "
+"created and any databases specified in your settings.php can be backed "
+"up."
+msgstr ""
+"Choisissez la base de données à sauvegarder. Toutes les destinations "
+"de bases de données que vous avez créées et toutes les bases de "
+"données spécifiées dans votre fichier settings.php peuvent être "
+"sauvegardées."
+msgid "Destinations"
+msgstr "Destinations"
+msgid "destinations"
+msgstr "destinations"
+msgid "destination"
+msgstr "destination"
+msgid "Add a new @s destination."
+msgstr "Ajouter une nouvelle destination de @s."
+msgid "Choose the type of destination you would like to create:"
+msgstr "Choisissez le type de destination que vous voulez créer &nbsp;:"
+msgid "No destination types available."
+msgstr "Pas de types de destinations disponibles."
+msgid ""
+"Are you sure you want to delete the destination %name? Backup files "
+"already saved to this destination will not be deleted."
+msgstr ""
+"Êtes vous sûr(e) de vouloir supprimer la destination %name&nbsp;? "
+"Les fichiers de sauvegarde enregistrés dans cette destination ne "
+"seront pas supprimés."
+msgid "list files"
+msgstr "lister les fichiers"
+msgid "restore"
+msgstr "restaurer"
+msgid ""
+" You do not need to enter a password unless you wish to change the "
+"currently saved password."
+msgstr ""
+" Vous n'avez pas besoin d'entrer un mot de passe sauf si vous voulez "
+"modifier le mot de passe courant."
+msgid "File Encryption"
+msgstr "Chiffrement de fichiers"
+msgid "Install the !link to enable backup file encryption."
+msgstr ""
+"Installez le !link pour activer le chiffrement du fichier de "
+"sauvegarde."
+msgid "AES Encryption Module"
+msgstr "Module AES Encryption"
+msgid "No Encryption"
+msgstr "Aucun chiffrement"
+msgid "AES Encryption"
+msgstr "Chiffrement AES"
+msgid "Send an email if backup succeeds"
+msgstr "Envoyer un courriel si la sauvegarde réussit"
+msgid "Email Address for Success Notices"
+msgstr "Adresse de courriel pour les avis de réussite"
+msgid "Send an email if backup fails"
+msgstr "Envoyer un courriel si la sauvegarde échoue"
+msgid "Email Address for Failure Notices"
+msgstr "Adresse de courriel pour les avis d'échec"
+msgid "!site backup succeeded"
+msgstr "Sauvegarde de !site réussie !"
+msgid ""
+"The site backup has completed successfully with the following "
+"messages:\n"
+"!messages"
+msgstr ""
+"La sauvegarde du site s'est achevée avec succès avec le message "
+"suivant :\r\n"
+"!messages"
+msgid "The site backup has completed successfully.\n"
+msgstr "La sauvegarde du site s'est achevée avec succès.\n"
+msgid "!site backup failed"
+msgstr "La sauvegarde de !site a échoué"
+msgid ""
+"The site backup has failed with the following messages:\n"
+"!messages"
+msgstr ""
+"La sauvegarde du site a échoué avec le message suivant :\r\n"
+"!messages"
+msgid "The site backup has failed for an unknown reason."
+msgstr "La sauvegarde du site a échoué pour une raison inconnue."
+msgid "Disable query log"
+msgstr "Désactiver le journal des requêtes"
+msgid ""
+"Disable the devel module's query logging during the backup operation. "
+"It will be enabled again after backup is complete. This is very highly "
+"recommended."
+msgstr ""
+"Désactiver la journalisation des requêtes du module Devel pendant "
+"l'opération de sauvegarde. Elle sera activée de nouveau une fois la "
+"sauvegarde terminée. Ceci est hautement recommandé."
+msgid "Take site offline"
+msgstr "Mettre le site hors-ligne"
+msgid ""
+"Take the site offline during backup and show a maintenance message. "
+"Site will be taken back online once the backup is complete."
+msgstr ""
+"Mettre le site hors ligne durant la sauvegarde et affichage d'un "
+"message de maintenance. Le site sera remis en ligne une fois la "
+"sauvegarde terminée."
+msgid ""
+"Disable the devel module's query logging during the restore operation. "
+"It will be enabled again after restore is complete. This is very "
+"highly recommended."
+msgstr ""
+"Désactiver la journalisation des requêtes du module Devel pendant "
+"l'opération de restauration. Elle sera réactivée de nouveau une "
+"fois la restauration terminée. Ceci est hautement recommandé."
+msgid ""
+"Take the site offline during restore and show a maintenance message. "
+"Site will be taken back online once the restore is complete."
+msgstr ""
+"Mettre le site hors ligne pendant la restauration et afficher d'un "
+"message de maintenance. Le site sera de nouveau en ligne une fois la "
+"restauration terminée."
+msgid "View as checkboxes"
+msgstr "Afficher comme cases à cocher"
+msgid "Backup File"
+msgstr "Fichier de sauvegarde"
+msgid "You can use tokens in the file name."
+msgstr ""
+"Vous pouvez utiliser des jetons (<em>tokens</em>) dans le nom du "
+"fichier."
+msgid "Untitled Profile"
+msgstr "Profil sans nom"
+msgid ""
+"Are you sure you want to delete the profile %name? Any schedules using "
+"this profile will be disabled."
+msgstr ""
+"Voulez-vous vraiment supprimer le profil %name ? Chaque planning "
+"utilisant ce profil sera désactivé."
+msgid "schedule"
+msgstr "planification"
+msgid "schedules"
+msgstr "planifications"
+msgid "Untitled Schedule"
+msgstr "Planning sans titre"
+msgid "No tables excluded"
+msgstr "Aucune table exclue"
+msgid "No data omitted"
+msgstr "Aucune donnée omise"
+msgid "Schedule Name"
+msgstr "Nom de planification"
+msgid "Settings Profile"
+msgstr "Profil de paramètres"
+msgid "-- None Available --"
+msgstr "-- Aucun disponible --"
+msgid "Create new destination"
+msgstr "Créer une nouvelle destination"
+msgid "Backup period must be a number greater than 0."
+msgstr "La période de sauvegarde doit être un nombre supérieur à 0."
+msgid "Once a second"
+msgstr "Une fois par seconde"
+msgid "Every @count seconds"
+msgstr "Toutes les @count secondes"
+msgid "Once a minute"
+msgstr "Une fois par minute"
+msgid "Every @count minutes"
+msgstr "Toutes les @count minutes"
+msgid "Every @count hours"
+msgstr "Toutes les @count heures"
+msgid "Every @count days"
+msgstr "Tous les @count jours"
+msgid "Once a week"
+msgstr "Une fois par semaine"
+msgid "Every @count weeks"
+msgstr "Toutes les @count semaines"
+msgid ""
+"Backup and Migrate makes the task of backing up your Drupal database "
+"and migrating data from one Drupal install to another easier. It "
+"provides a function to backup the entire database to file or download, "
+"and to restore from a previous backup. You can also schedule the "
+"backup operation. Compression of backup files is also supported.  The "
+"database backup files created with this module can be imported into "
+"this or any other Drupal installation with the !restorelink, or you "
+"can use a database tool such as <a "
+"href=\"!phpmyadminurl\">phpMyAdmin</a> or the mysql command line "
+"command."
+msgstr ""
+"Backup and Migrate facilite la tâche de sauvegarder votre base de "
+"données Drupal et de migrer les données d'une installation Drupal à "
+"une autre. Il fournit une fonction pour sauvegarder la base de "
+"données entière vers un fichier ou de télécharger, puis restaurer "
+"à partir d'une sauvegarde précédente. Vous pouvez aussi planifier "
+"l'opération de sauvegarde. La compression des fichiers de sauvegarde "
+"est aussi supportée. Les fichiers de sauvegarde de la base de "
+"données créés par ce module peuvent être importés dans cette "
+"installation ou dans toute autre installation Drupal avec le "
+"!restorelink, ou vous pouvez utiliser un outil de base de données tel "
+"que <a href=\"!phpmyadminurl\">phpMyAdmin</a> ou en ligne de commande "
+"MySQL."
+msgid "restore feature"
+msgstr "fonction de restauration"
+msgid "Quick Backup Tab"
+msgstr "Onglet de sauvegarde rapide"
+msgid "Advanced Backup Tab"
+msgstr "Onglet de sauvegarde avancée"
+msgid "settings profiles"
+msgstr "profils de paramètres"
+msgid "Restore Tab"
+msgstr "Onglet Restaurer"
+msgid ""
+"Upload a backup and migrate backup file. The restore function will not "
+"work with database dumps from other sources such as phpMyAdmin."
+msgstr ""
+"Envoyer un fichier de sauvegarde et de migration. La fonction de "
+"restauration ne fonctionnera pas avec les dumps de base de données "
+"provenant d'autres sources telles que phpMyAdmin."
+msgid ""
+"Destinations are the places you can save your backup files to or them "
+"load from."
+msgstr ""
+"Les destinations sont les emplacements où vous pouvez enregistrer ou "
+"charger vos fichiers de sauvegarde."
+msgid ""
+"Files can be saved to a directory on your web server, downloaded to "
+"your desktop or emailed to a specified email account. From the "
+"Destinations tab you can create, delete and edit destinations or list "
+"the files which have already been backed up to the available "
+"destinations."
+msgstr ""
+"Les fichiers peuvent être enregistrés vers un répertoire sur votre "
+"serveur web, téléchargés sur votre bureau ou envoyés par courriel "
+"à un compte de courriel spécifié. À partir de l'onglet "
+"Destinations, vous pouvez créer, supprimer et modifier les "
+"destinations ou avoir la liste des fichiers qui ont déjà été "
+"sauvegardés aux destinations disponibles."
+msgid ""
+"Profiles are saved backup settings. Profiles store your table "
+"exclusion settings as well as your backup file name, compression and "
+"timestamp settings. You can use profiles in !schedulelink and for "
+"!manuallink."
+msgstr ""
+"Les profils sont des paramètres de sauvegarde enregistrés. Les "
+"profils conservent aussi bien les paramètres d'exclusion de tables "
+"que vos noms de fichiers de sauvegarde, la compression et les "
+"paramètres d'horodatage. Vous pouvez utiliser les profils dans "
+"!schedulelink et pour !manuallink."
+msgid "manual backups"
+msgstr "sauvegardes manuelles"
+msgid ""
+"You can create new profiles using the add profiles tab or by checking "
+"the \"Save these settings\" button on the advanced backup page."
+msgstr ""
+"Vous pouvez créer de nouveaux profils en utilisant l'onglet Ajouter "
+"des profils ou en cochant la case \"Enregistrer ces paramètres\" sur "
+"la page de sauvegarde avancée."
+msgid ""
+"Each schedule will run a maximum of once per cron run, so they will "
+"not run more frequently than your cron is configured to run. If you "
+"specify a number of backups to keep for a schedule, old backups will "
+"be deleted as new ones created. <strong>If specifiy a number of files "
+"to keep other backup files in that schedule's destination will get "
+"deleted</strong>."
+msgstr ""
+"Chaque planification ne pourra s'exécuter au maximum qu'une fois par "
+"cron, donc elles ne s'exécuteront pas plus fréquemment que le permet "
+"la configuration du cron. Si vous spécifiez un nombre de sauvegardes "
+"à garder pour une planification, les anciennes sauvegardes seront "
+"supprimées quand les nouvelles seront créées. <strong>Si un nombre "
+"de fichiers à garder est spécifié, les autres fichiers sauvegardés "
+"vers cette destination de la planification seront "
+"supprimés.</strong>."
+msgid "You do not have permission to back up this site."
+msgstr "Vous n'avez pas la permission d'effectuer une sauvegarde de ce site."
+msgid "-- Select a Settings Profile --"
+msgstr "-- Sélectionnez un profil de paramètres --"
+msgid "You can load a profile. Any changes you made below will be lost."
+msgstr ""
+"Vous pouvez charger un profil. Un quelconque changement effectué "
+"ci-dessous sera perdu."
+msgid "Load Settings"
+msgstr "Charger des paramètres"
+msgid "Load Profile"
+msgstr "Charger un profil"
+msgid "Quick Backup"
+msgstr "Sauvegarde rapide"
+msgid "Backup now"
+msgstr "Sauvegarder maintenant"
+msgid ""
+"For more backup options, try the <a href=\"!advancedurl\">advanced "
+"backup page</a>."
+msgstr ""
+"Pour plus d'options de sauvegarde, essayez la <a "
+"href=\"!advancedurl\">page de sauvegarde avancée</a>."
+msgid ""
+"A source cannot be backed up to itself. Please pick a different "
+"destination for this backup."
+msgstr ""
+"Une source ne peut être sauvegardée sur elle-même. Veuillez choisir "
+"une destination différente pour cette sauvegarde."
+msgid "Backup Destination"
+msgstr "Destination de sauvegarde"
+msgid ""
+"Choose where the backup file will be saved. Backup files contain "
+"sensitive data, so be careful where you save them. Select 'Download' "
+"to download the file to your desktop."
+msgstr ""
+"Choisissez où les fichiers de sauvegarde seront enregistrés. Les "
+"fichiers de sauvegardes contiennent des données sensibles, faites "
+"attention où vous les mettez. Selectionnez 'Télécharger' pour "
+"télécharger les fichiers vers votre Bureau."
+msgid "Save the settings as"
+msgstr "Enregistrer les paramètres en tant que"
+msgid "Replace the '%profile' profile"
+msgstr "Remplacer le profil '%profile'"
+msgid ""
+"This will be the name of your new profile if you select 'Create new "
+"profile' otherwise it will become the name of the '%profile' profile."
+msgstr ""
+"Ceci sera le nom de votre nouveau profil si vous sélectionnez "
+"\"Créer un nouveau profil\", sinon il deviendra le nouveau nom du "
+"profil '%profile'."
+msgid ""
+"Pick a name for the settings. Your settings will be saved as a profile "
+"and will appear in the <a href=\"!url\">Profiles Tab</a>."
+msgstr ""
+"Choisissez un nom pour les paramètres. Vos paramètres seront "
+"enregistrés dans un profil et apparaîtront dans l'<a "
+"href=\"!url\">Onglet Profils</a>."
+msgid "Save Without Backing Up"
+msgstr "Enregistrer sans sauvegarder"
+msgid "Restore to"
+msgstr "Rétablir à"
+msgid ""
+"<p>Or you can restore one of the files in your <a href=\"!url\">saved "
+"backup destinations.</a></p>"
+msgstr ""
+"<p>Ou vous pouvez restaurer un des fichiers de vos <a "
+"href=\"!url\">destinations de sauvegarde enregistrées.</a></p>"
+msgid "<a href=\"!restoreurl\">Restore again</a>"
+msgstr "<a href=\"!restoreurl\">Restaurer de nouveau</a>"
+msgid "Advanced Backup"
+msgstr "Sauvegarde avancée"
+msgid "The filter settings for the profile."
+msgstr "Le filtre de paramètre pour le profil."
+msgid ""
+"The {backup_migrate_destination}.destination_id of the source to "
+"backup from."
+msgstr ""
+"La {backup_migrate_destination}.destination_id de la source depuis "
+"laquelle sauvegarder."
+msgid "The db source to backup from."
+msgstr "La source de base données depuis laquelle sauvegarder."
+msgid "Restore now"
+msgstr "Restaurer maintenant"
+msgid "view all"
+msgstr "voir tout"
+msgid "Access Backup and Migrate"
+msgstr "Accéder à Backup and Migrate"
+msgid "Access the Backup and Migrate admin section."
+msgstr "Accèder à la section d'administration de Backup and Migrate."
+msgid "Perform a backup"
+msgstr "Effectuer une sauvegarde"
+msgid "Back up any of the available databases."
+msgstr "Sauvegarde n'importe quelle base de donnée disponible."
+msgid "Access backup files"
+msgstr "Accéder aux fichiers de sauvegarde"
+msgid "Access and download the previously created backup files."
+msgstr ""
+"Accéder et télécharger les fichiers de sauvegardes créés "
+"précédemment."
+msgid "Delete backup files"
+msgstr "Supprimer des fichiers de sauvegardes"
+msgid "Delete the previously created backup files."
+msgstr "Supprimer les fichiers de sauvegardes créés précédemment."
+msgid "Restore the site"
+msgstr "Restaurer le site"
+msgid "Restore the site's database from a backup file."
+msgstr "Restaurer la base de donnée du site depuis un fichier de sauvegarde."
+msgid "Edit Backup and Migrate profiles, schedules and destinations."
+msgstr ""
+"Modifier les profils, les planifications et les destinations de Backup "
+"and Migrate."
+msgid ""
+"Unable to move the backups directory to your private folder, please "
+"check file permissions and move the directory %from to %to"
+msgstr ""
+"Impossible de déplacer les dossiers de sauvegarde vers votre dossier "
+"privé, veuillez vérifier vos permissions sur les fichiers et "
+"déplacer %from vers %to"
+msgid "file system settings"
+msgstr "paramètres du système de fichier"
+msgid "@title Files"
+msgstr "Fichiers de @title"
+msgid "Subdirectory"
+msgstr "Sous-répertoire"
+msgid "This listing was fetched !time ago. !refresh"
+msgstr "Cette liste a été récupérée il y a !time. !refresh"
+msgid "!name Backup Options"
+msgstr "Options de sauvegarde de !name"
+msgid ""
+"Automatically backup up your database and files on a regular schedule "
+"using <a href=\"!cronurl\">cron</a>."
+msgstr ""
+"Sauvegarder automatiquement votre base de données et vos fichiers "
+"avec une planification régulière en utilisant <a "
+"href=\"!cronurl\">cron</a>."
+msgid ""
+"Import a settings profile, backup schedule, source or destination by "
+"pasting the export code into the textarea."
+msgstr ""
+"Importer un profil de paramètres, une planification de sauvegarde, "
+"une source ou une destination en passant le code d'exportation dans la "
+"zone de texte."
+msgid "Run the Backup and Migrate '!name' schedule"
+msgstr "Lancer le '!name' planifié dans Backup and Migrate"
+msgid "Schedule Frequency"
+msgstr "Fréquence de planification"
+msgid "Save Schedules"
+msgstr "Enregistrer les planifications"
+msgid ""
+"For more scheduling options and to add additional schedules, try the "
+"<a href=\"!advancedurl\">advanced schedule page</a>."
+msgstr ""
+"Pour plus d'options de planification et pour ajouter des "
+"planifications additionnelles, essayer la <a "
+"href=\"!advancedurl\">page de planification avancée</a>."
+msgid "Your schedules have been saved"
+msgstr "Vos planifications ont été enregistrées"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/bean-7.x-1.9.fr_2.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,162 @@
+# French translation of Bean (7.x-1.9)
+# Copyright (c) 2018 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Bean (7.x-1.9)\n"
+"POT-Creation-Date: 2018-01-05 23:43+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Title"
+msgstr "Titre"
+msgid "delete"
+msgstr "supprimer"
+msgid "Status"
+msgstr "Etat"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Type"
+msgstr "Type"
+msgid "Author"
+msgstr "Auteur"
+msgid "List"
+msgstr "Lister"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Description"
+msgstr "Description"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Reset"
+msgstr "Réinitialiser"
+msgid "This action cannot be undone."
+msgstr "Cette action est irréversible."
+msgid "Settings"
+msgstr "Paramètres"
+msgid "Name"
+msgstr "Nom"
+msgid "edit"
+msgstr "modifier"
+msgid "Label"
+msgstr "Étiquette"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Default"
+msgstr "Par défaut"
+msgid "View"
+msgstr "Voir"
+msgid "Are you sure you want to delete %title?"
+msgstr "Êtes-vous sûr(e) de vouloir supprimer %title ?"
+msgid "Block"
+msgstr "Bloc"
+msgid "Add block"
+msgstr "Ajouter un bloc"
+msgid "Revision ID"
+msgstr "Identifiant (ID) de révision"
+msgid "Filter"
+msgstr "Filtrer"
+msgid "Revisions"
+msgstr "Révisions"
+msgid "Log message"
+msgstr "Message de journal"
+msgid "Overridden"
+msgstr "Supplanté"
+msgid "Normal"
+msgstr "Normal"
+msgid "Load"
+msgstr "Charger"
+msgid "Filters"
+msgstr "Filtres"
+msgid "block"
+msgstr "bloc"
+msgid "Add Block"
+msgstr "Ajouter un bloc"
+msgid "Edit Block"
+msgstr "Modifier le bloc"
+msgid "Create new revision"
+msgstr "Créer une nouvelle révision"
+msgid "Revert"
+msgstr "Rétablir"
+msgid "@type: deleted %title."
+msgstr "@type : %title supprimé."
+msgid "Apply"
+msgstr "Appliquer"
+msgid "Blocks"
+msgstr "Blocs"
+msgid "Used in"
+msgstr "Utilisé dans"
+msgid "Usage"
+msgstr "Utilisation"
+msgid "Devel"
+msgstr "Devel"
+msgid "@type: updated %title."
+msgstr "@type : %title mis à jour."
+msgid "@type: added %title."
+msgstr "@type : %title ajouté."
+msgid "Results per page"
+msgstr "Résultats par page"
+msgid "Filter type"
+msgstr "Type de filtre"
+msgid "Text to display"
+msgstr "Texte à afficher"
+msgid "@type %title has been deleted."
+msgstr "Le contenu '%title', de type '@type', a été supprimé."
+msgid "@type %title has been created."
+msgstr "Le contenu '%title', de type '@type', a été créé."
+msgid "@type %title has been updated."
+msgstr "Le contenu '%title', de type '@type', a été mis à jour."
+msgid "Delete link"
+msgstr "Lien de suppression"
+msgid "Edit link"
+msgstr "Lien de modification"
+msgid "manage fields"
+msgstr "gérer les champs"
+msgid "Render"
+msgstr "Rendu"
+msgid "manage display"
+msgstr "gérer l'affichage"
+msgid ""
+"Provide an explanation of the changes you are making. This will help "
+"other authors understand your motivations."
+msgstr ""
+"Explication des modifications que vous avez effectuées. Cela peut "
+"aider les autres auteurs à mieux comprendre vos motivations."
+msgid "Performance and scalability"
+msgstr "Performances et extensibilité"
+msgid "View mode"
+msgstr "Mode d'affichage"
+msgid "Revision settings"
+msgstr "Paramètres des révisions"
+msgid "Administer block types"
+msgstr "Administrer les types de blocs"
+msgid "Bean"
+msgstr "Bean"
+msgid "Save Block type"
+msgstr "Enregistrer ce type de bloc"
+msgid "Delete Block type"
+msgstr "Supprimer ce type de bloc"
+msgid "Are you sure you want to delete the block type %type?"
+msgstr "Êtes-vous sûr(e) de vouloir supprimer le type de bloc %type ?"
+msgid "Add block type"
+msgstr "Ajouter un type de bloc"
+msgid "The Title of the block."
+msgstr "Le titre du bloc."
+msgid "The block could not be saved."
+msgstr "Le bloc n'a pas pu être enregistré."
+msgid "Registry has been rebuilt"
+msgstr "Le registre a été reconstruit"
+msgid "View Mode"
+msgstr "Mode d'affichage"
+msgid "The delta of the block"
+msgstr "Le delta du bloc"
+msgid "panelizer"
+msgstr "panelizer"
+msgid "Block types"
+msgstr "Types de bloc"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/ckeditor-7.x-1.16.fr_0.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,1400 @@
+# French translation of CKEditor - WYSIWYG HTML editor (7.x-1.16)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: CKEditor - WYSIWYG HTML editor (7.x-1.16)\n"
+"POT-Creation-Date: 2017-11-13 19:08+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "User interface"
+msgstr "Interface utilisateur"
+msgid "delete"
+msgstr "supprimer"
+msgid "Administer"
+msgstr "Administrer"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Language"
+msgstr "Langue"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Advanced options"
+msgstr "Options avancées"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "edit"
+msgstr "modifier"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Advanced settings"
+msgstr "Paramètres avancés"
+msgid "Unknown"
+msgstr "Inconnu"
+msgid "Include"
+msgstr "Inclure"
+msgid "Exclude"
+msgstr "Exclure"
+msgid "Expanded"
+msgstr "Déplié"
+msgid "Not found"
+msgstr "Non trouvé"
+msgid "Roles"
+msgstr "Rôles"
+msgid "Input format"
+msgstr "Format de saisie"
+msgid "Global settings"
+msgstr "Paramètres globaux"
+msgid "Advanced"
+msgstr "Avancé"
+msgid "help"
+msgstr "aide"
+msgid "Introduction"
+msgstr "Introduction"
+msgid "Example"
+msgstr "Exemple"
+msgid "here"
+msgstr "ici"
+msgid "Configuration"
+msgstr "Configuration"
+msgid "Security"
+msgstr "Sécurité"
+msgid "Basic"
+msgstr "Basique"
+msgid "CSS"
+msgstr "CSS"
+msgid "Default state"
+msgstr "État par défaut"
+msgid "Basic setup"
+msgstr "Configuration basique"
+msgid "Profile name"
+msgstr "Nom du profil"
+msgid "Roles allowed to use this profile"
+msgstr "Rôles autorisés à utiliser ce profil"
+msgid "Editor appearance"
+msgstr "Apparence de l'éditeur"
+msgid "Cleanup and output"
+msgstr "Nettoyer et afficher"
+msgid "Editor CSS"
+msgstr "CSS de l'éditeur"
+msgid "Profile"
+msgstr "Profil"
+msgid "You must give a profile name."
+msgstr "Vous devez saisir un nom de profil."
+msgid "filters"
+msgstr "filtres"
+msgid "IMCE"
+msgstr "IMCE"
+msgid "Visibility settings"
+msgstr "Paramètres de visibilité"
+msgid "Minimum rows"
+msgstr "Lignes minimum"
+msgid "Use inclusion or exclusion mode"
+msgstr "Utiliser le mode d'inclusion ou d'exclusion"
+msgid "File browser settings"
+msgstr "Paramètres de l'explorateur de fichiers"
+msgid "Collapsed"
+msgstr "Replié"
+msgid "Full"
+msgstr "Complet"
+msgid "Show"
+msgstr "Afficher"
+msgid "Web File Manager"
+msgstr "Gestionnaire de fichier web"
+msgid "Editor width"
+msgstr "Largeur de l'éditeur"
+msgid "or"
+msgstr "ou"
+msgid "User management"
+msgstr "Gestion des utilisateurs"
+msgid "Permissions"
+msgstr "Droits"
+msgid "permission"
+msgstr "permission"
+msgid "Path Filter"
+msgstr "Filtre de chemin"
+msgid "Line break converter"
+msgstr "Convertisseur de sauts de ligne"
+msgid "Role precedence"
+msgstr "Hiérarchie des rôles"
+msgid "Site configuration"
+msgstr "Configuration du site"
+msgid "Examples"
+msgstr "Exemples"
+msgid "Plugins"
+msgstr "Plugins"
+msgid "API documentation"
+msgstr "Documentation de l'API"
+msgid "Hide"
+msgstr "Masquer"
+msgid "Examples:"
+msgstr "Exemples :"
+msgid "Profiles"
+msgstr "Profils"
+msgid "All buttons"
+msgstr "Tous les boutons"
+msgid "Skin"
+msgstr "Habillage"
+msgid "WYSIWYG"
+msgstr "WYSIWYG"
+msgid "clone"
+msgstr "cloner"
+msgid "Image Browser"
+msgstr "Explorateur d'image"
+msgid "!title"
+msgstr "!title"
+msgid "permissions"
+msgstr "droits"
+msgid "XSS Filter"
+msgstr "Filtre XSS"
+msgid "XSS Filter."
+msgstr "Filtre XSS."
+msgid "No profiles found. Click here to !create."
+msgstr "Aucun profil trouvé. Cliquer ici pour !create."
+msgid "create a new profile"
+msgstr "créer un nouveau profil"
+msgid "create the global profile"
+msgstr "créer le profil général"
+msgid "Switch to plain text editor"
+msgstr "Basculer vers l'éditeur de texte brut"
+msgid "Switch to rich text editor"
+msgstr "Basculer vers l'éditeur de texte riche"
+msgid "Toolbar"
+msgstr "Barre d'outils"
+msgid "Auto-detect language"
+msgstr "Détecter automatiquement la langue"
+msgid "Main setup"
+msgstr "Configuration principale"
+msgid "Fields to exclude/include"
+msgstr "Champs à inclure/exclure"
+msgid "Force simplified toolbar on the following fields"
+msgstr "Forcer la barre d'outils simplifiée sur les champs suivants"
+msgid "System path to the private folder is: !system_path."
+msgstr "Le chemin système du répertoire privé est : !system_path."
+msgid "Current path: !path"
+msgstr "Chemin actuel : !path"
+msgid "Security filters"
+msgstr "Filtres de sécurité"
+msgid "Security settings"
+msgstr "Paramètres de sécurité"
+msgid "Enter mode"
+msgstr "Mode Entrée"
+msgid "Font formats"
+msgstr "Formats des polices de caractères"
+msgid "Predefined styles"
+msgstr "Styles prédéfinis"
+msgid "Predefined styles path"
+msgstr "Chemin des styles prédéfinis"
+msgid "Path to uploaded files"
+msgstr "Chemin des fichiers transférés"
+msgid "Absolute path to uploaded files"
+msgstr "Chemin absolu des fichiers transférés"
+msgid "Link to paths only"
+msgstr "Lier les chemins uniquement"
+msgid "Link using internal: links"
+msgstr "Lier en utilisant des liens internes"
+msgid "Path Filter & Link To Content integration"
+msgstr "Intégration avec Filtre de chemin & Lien de contenu"
+msgid "Link To Content"
+msgstr "Lier les contenu"
+msgid "Join summary"
+msgstr "Fusionner le résumé et le corps du message"
+msgid "Split summary at cursor"
+msgstr "Créer un résumé à partir du curseur"
+msgid ""
+"If allowed, users will be able to override the \"Editor appearance\" "
+"by visiting their profile page."
+msgstr ""
+"Si autorisé, les utilisateurs pourront supplanter l'\"Apparence de "
+"l'éditeur\" sur leur page de profil."
+msgid "The following wildcards are available: \"*\", \"?\"."
+msgstr "Les jokers suivants sont disponibles : \"*\", \"?\"."
+msgid ""
+"matches fields starting with \"edit-user-\" on pages starting with "
+"\"node/add/"
+msgstr ""
+"correspond aux champs commençant par \"edit-user-\" sur les pages "
+"commençant par \"node/add/"
+msgid "Minimum rows must be a valid number."
+msgstr "Les lignes minimum doivent être un nombre valide."
+msgid "This profile name is reserved. Please choose a different name."
+msgstr "Ce nom de profil est réservé. Veuillez choisir un nom différent."
+msgid ""
+"The profile name must be unique. A profile with this name already "
+"exists."
+msgstr ""
+"Le nom du profil doit être unique. Un profil avec ce nom existe "
+"déjà."
+msgid "Show field name hint below each rich text editor"
+msgstr ""
+"Afficher l'indication du nom du champ sous chaque éditeur de texte "
+"riche"
+msgid "Some examples:"
+msgstr "Quelques exemples :"
+msgid "Troubleshooting"
+msgstr "Dépannage"
+msgid "Uploading images and files"
+msgstr "Transfert d'images et de fichiers"
+msgid "There are three ways for uploading files:"
+msgstr "Il y a trois moyens de transférer des fichiers :"
+msgid "By using the core upload module."
+msgstr "En utilisant le module de transfert du cœur."
+msgid "Rich text editor settings"
+msgstr "Paramètres de l'éditeur de texte riche"
+msgid "Open rich text editor"
+msgstr "Ouvrir l'éditeur de texte riche"
+msgid "Configure the rich text editor."
+msgstr "Configurer l'éditeur de texte riche."
+msgid "Use theme CSS"
+msgstr "Utiliser la CSS du thème"
+msgid "Define CSS"
+msgstr "Définir une CSS"
+msgid ""
+"The following settings are combined with the visibility settings of "
+"the global profile."
+msgstr ""
+"Les paramètres suivants sont combinés avec les paramètres de "
+"visibilité du profil global."
+msgid ""
+"The following settings are combined with the visibility settings of "
+"the specific profile."
+msgstr ""
+"Les paramètres suivants sont combinés avec les paramètres de "
+"visibilité du profil spécifique."
+msgid "Path to uploaded files relative to the document root."
+msgstr ""
+"Chemin vers les fichiers téléchargés, relatif à la racine du "
+"document."
+msgid "What You See Is What You Get"
+msgstr ""
+"What You See Is What You Get (ce que vous voyez est ce que vous "
+"obtenez)"
+msgid "official project page"
+msgstr "page officielle du projet"
+msgid ""
+"CKEditor: the ID for <a href=\"!excluding\">excluding or including</a> "
+"this element is %fieldname."
+msgstr ""
+"CKEditor : l'ID pour <a href=\"!excluding\">exclure ou inclure</a> cet "
+"élément est %fieldname."
+msgid "administer ckeditor"
+msgstr "administrer ckeditor"
+msgid "access ckeditor"
+msgstr "accéder à ckeditor"
+msgid "allow CKFinder file uploads"
+msgstr "autoriser les transferts de fichiers de CKFinder"
+msgid "CKEditor"
+msgstr "CKEditor"
+msgid "CKEditor Global Profile"
+msgstr "Profil global de CKEditor"
+msgid "Allow users to customize CKEditor appearance"
+msgstr "Autoriser les utilisateurs à personnaliser l'apparence de CKEditor"
+msgid "Always run security filters for CKEditor."
+msgstr "Toujours lancer les filtres de sécurité pour CKEditor."
+msgid "Run security filters only when CKEditor is set to start automatically."
+msgstr ""
+"Ne lancer les filtres de sécurité que lorsque CKEditor est "
+"paramétré pour démarrer automatiquement."
+msgid ""
+"Whether or not to show the disable/enable rich text editor toggle "
+"below the textarea. Works only if CKEditor is not running in a popup "
+"window (see below)."
+msgstr ""
+"Afficher ou non la bascule pour désactiver/activer l'éditeur de "
+"texte riche sous la zone de texte. Ne fonctionne que si CKEditor n'est "
+"pas lancé dans une fenêtre popup (voir ci-dessous)."
+msgid "Use CKEditor in a popup window"
+msgstr "Utiliser CKEditor dans une fenêtre popup"
+msgid "CKEditor default"
+msgstr "Défaut de CKEditor"
+msgid "Select manually"
+msgstr "Choisissez manuellement"
+msgid "Color module: base"
+msgstr "Module de couleur : base"
+msgid "Color module: top"
+msgstr "Module de couleur : haut"
+msgid "Color module: bottom"
+msgstr "Module de couleur : bas"
+msgid "The language for the CKEditor interface."
+msgstr "La langue de l'interface de CKEditor."
+msgid "Use theme ckeditor.styles.js"
+msgstr "Utiliser le thème ckeditor.styles.js"
+msgid "Define path to ckeditor.styles.js"
+msgstr "Définir le chemin de ckeditor.styles.js"
+msgid "CKFinder"
+msgstr "CKFinder"
+msgid "Select the file browser that you would like to use to upload files."
+msgstr ""
+"Choisissez l'explorateur de fichiers que vous voulez utiliser pour "
+"transférer des fichiers."
+msgid "Select the file browser that you would like to use to upload images."
+msgstr ""
+"Choisissez l'explorateur de fichiers que vous voulez utiliser pour "
+"transférer des images."
+msgid ""
+"Include mode selected, but no paths given. Enter at least one path "
+"where CKEditor should appear."
+msgstr ""
+"Inclure le mode choisi, mais pas les chemins donnés. Entrez au moins "
+"un chemin où CKEditor devrait apparaître."
+msgid "Path to CKEditor"
+msgstr "Chemin de CKEditor"
+msgid "Local path to CKEditor"
+msgstr "Chemin local de CKEditor"
+msgid ""
+"The path relative to the location of the private directory where "
+"CKEditor should store uploaded files."
+msgstr ""
+"Le chemin relatif à l'emplacement du répertoire privé où CKEditor "
+"devrait stocker les fichiers transférés."
+msgid "for developers only"
+msgstr "pour développeurs seulement"
+msgid "CKEditor homepage"
+msgstr "Page d'accueil de CKEditor"
+msgid "Take a look at !listlink when installing CKEditor."
+msgstr "Jetez un œil à !listlink pour installer CKEditor."
+msgid "Choose a CKEditor skin."
+msgstr "Choisir un habillage CKEditor."
+msgid "Insert Teaser Break"
+msgstr "Insérer une séparation de résumé"
+msgid "Insert Page Break"
+msgstr "Insérer un saut de page"
+msgid ""
+"The document already contains a teaser break. Do you want to proceed "
+"by removing it first?"
+msgstr ""
+"Le document contient déjà une séparation de résumé. Voulez-vous "
+"continuer en la retirant d'abord ?"
+msgid "the list of common problems"
+msgstr "la liste des problèmes courants"
+msgid "Embed Media Dialog"
+msgstr "Inclure le Dialogue Média"
+msgid "Embed media code"
+msgstr "Inclure le code média"
+msgid "Paste embed code here"
+msgstr "Coller le code inclus ici"
+msgid "@data"
+msgstr "@data"
+msgid "Text formats"
+msgstr "Formats de texte"
+msgid "TinyBrowser"
+msgstr "Mini-navigateur"
+msgid "CSS file path"
+msgstr "Chemin vers le fichier CSS"
+msgid "Get from current locale (default)"
+msgstr "Récupérer les paramètres régionaux actuels (par défaut)"
+msgid "Left-To-Right"
+msgstr "De gauche à droite"
+msgid "Right-To-Left"
+msgstr "De droite à gauche"
+msgid "Use custom formatting options"
+msgstr "Utiliser les options de mise en forme personnalisées."
+msgid "Custom formatting options"
+msgstr "Options de mise en forme personnalisées"
+msgid ""
+"Available placeholders:!h - host name (!host).!t - path to theme "
+"(!theme)."
+msgstr ""
+"Espaces réservés disponibles : !h - nom d'hôte (!host).!t - chemin "
+"du thème (!theme)."
+msgid "CKFinder settings"
+msgstr "Paramètres de CKFinder"
+msgid "Force pasting as plain text"
+msgstr "Forcer le collage comme texte simple"
+msgid ""
+"If enabled, HTML content will be automatically changed to plain text "
+"when pasting."
+msgstr ""
+"Si activé, le contenu HTML sera converti automatiquement en texte "
+"simple lors du collage."
+msgid ""
+"If enabled, turns on SCAYT (Spell Check As You Type) automatically "
+"after loading the editor."
+msgstr ""
+"Si activé, démarre SCAYT (Spell Check As You Type) automatiquement "
+"après le chargement de l'éditeur."
+msgid "elFinder"
+msgstr "elFinder"
+msgid "Administer CKEditor access"
+msgstr "Administrer l'accès à CKEditor"
+msgid "Customize CKEditor appearance"
+msgstr "Personnaliser l'apparence de CKEditor"
+msgid "CKFinder access"
+msgstr "Accès à CKFinder"
+msgid "README.txt"
+msgstr "README.txt"
+msgid ""
+"Whether or not to show the disable/enable rich text editor toggle "
+"below the textarea."
+msgstr ""
+"Afficher ou non la bascule d'activation/désactivation de l'éditeur "
+"de texte riche en dessous de la zone de texte."
+msgid "Useful links: !ckeditorlink | !devguidelink | !userguidelink."
+msgstr "Liens utiles : !ckeditorlink | !devguidelink | !userguidelink."
+msgid "User's Guide"
+msgstr "Guide de l'utilisateur"
+msgid "Administration panel"
+msgstr "Panneau d'administration"
+msgid "Content Authoring"
+msgstr "Informations de rédaction du contenu"
+msgid "!data"
+msgstr "!data"
+msgid "CKEditor profiles"
+msgstr "Profils de CKEditor"
+msgid "Disable WYSIWYG module"
+msgstr "Désactiver le module WYSIWYG"
+msgid "Disable WYSIWYG module."
+msgstr "Désactiver le module WYSIWYG."
+msgid "click here to disable"
+msgstr "cliquer ici pour désactiver"
+msgid "HTML Entities"
+msgstr "Entités HTML"
+msgid "Convert all applicable characters to HTML entities."
+msgstr "Convertir tous les caractères concernés en entités HTML."
+msgid ""
+"Path structure: "
+"<strong>theme_name:content_type@path.element_id</strong>"
+msgstr ""
+"Structure du chemin : "
+"<strong>nom_du_thème:type_de_contenu@chemin.id_élément</strong>"
+msgid ""
+"Content type and theme name is optional. You may even specify only "
+"path or field id."
+msgstr ""
+"Le type de contenu et le nom du thème sont optionnels. Vous pouvez "
+"même uniquement préciser un chemin ou identifiant de champ"
+msgid ""
+"matches all fields of type \"blog\" called edit-body in garland theme, "
+"on any page."
+msgstr ""
+"correspond à tous les champs de type \"blog\" appelés edit-body dans "
+"le thème Garland, quelle que soit la page."
+msgid "Help page"
+msgstr "Page d'aide"
+msgid "Allow users to change CKEditor settings."
+msgstr "Autoriser les utilisateurs à changer les paramètres de CKEditor."
+msgid "Allow users to customize CKEditor appearance."
+msgstr "Autoriser les utilisateurs à personnaliser l'apparence de CKEditor."
+msgid "Allow users to use CKFinder."
+msgstr "Autoriser les utilisateurs à utiliser CKFinder."
+msgid "Disable the WYSIWYG module"
+msgstr "Désactiver le module WYSIWYG"
+msgid "Add a new CKEditor profile"
+msgstr "Ajouter un nouveau profil CKEditor"
+msgid "Clone the CKEditor profile"
+msgstr "Cloner le profil CKEditor"
+msgid "Edit the CKEditor profile"
+msgstr "Modifier le profil CKEditor"
+msgid "Delete the CKEditor profile"
+msgstr "Supprimer le profil CKEditor"
+msgid "Add the CKEditor Global profile"
+msgstr "Ajouter le profil global de CKEditor"
+msgid "Edit the CKEditor Global profile"
+msgstr "Modifier le profil global de CKEditor"
+msgid "CKEditor was not found in <code>%sourcepath</code>."
+msgstr "CKEditor n'a pas été trouvé dans  <code>%sourcepath</code>."
+msgid "CKEditor version could not be determined."
+msgstr "La version de CKEditor n'a pas pu être déterminée."
+msgid ""
+"You are using a feature that requires <code>$cookie_domain</code> to "
+"be set, but it is not set in your <code>settings.php</code> file "
+"(CKFinder is enabled in the !profile profile)."
+msgstr ""
+"Vous utilisez une fonction qui requiert la définition de "
+"<code>$cookie_domain</code>, mais il n'est pas défini dans votre "
+"fichier <code>settings.php</code> (CKFinder est activé dans le profil "
+"!profile)."
+msgid ""
+"Some features are disabled because you are using an older version of "
+"CKEditor. Please upgrade to CKEditor 3.1 (or higher)."
+msgstr ""
+"Certaines fonctions sont désactivées car vous utilisez une ancienne "
+"version de CKEditor. Veuillez mettre à jour vers CKEditor 3.1 (ou "
+"supérieur)."
+msgid "CKEditor needs read permission to the <code>!config</code> file."
+msgstr ""
+"CKEditor nécessite le droit en lecture sur le fichier "
+"<code>!config</code>."
+msgid ""
+"You are using a feature that requires manual integration in the "
+"<code>config.php</code> file. Please read the \"Installing CKFinder\" "
+"section in the <code>!readme</code> file carefully and add a "
+"<code>require_once ...</code> statement to the <code>%ckfconfig</code> "
+"file."
+msgstr ""
+"Vous utilisez une fonction qui nécessite une insertion manuelle dans "
+"le fichier <code>config.php</code>. Veuillez lire attentivement la "
+"section \"Install CKFinder' dans le fichier <code>!readme</code> et "
+"ajoutez l'appel à <code>require_once ...</code> dans le fichier  "
+"<code>%ckfconfig</code>."
+msgid ""
+"You are using a feature that requires manual integration in the "
+"<code>config.php</code> file. You have added a <code>require_once "
+"...</code> statement to the <code>%ckfconfig</code> file, but in the "
+"wrong line."
+msgstr ""
+"Vous utilisez une fonction qui nécessite une insertion manuelle dans "
+"le fichier <code>config.php</code>. Vous avez ajouté une définition "
+"de <code>require_once ...</code> dans le fichier "
+"<code>%ckfconfig</code>, mais à la mauvaise ligne."
+msgid ""
+"Enables CKEditor (WYSIWYG HTML editor) for use instead of plain text "
+"fields."
+msgstr ""
+"Active CKEditor (éditeur HTML WYSIWYG) pour l'utiliser à la place "
+"des champs de texte brut."
+msgid ""
+"No CKEditor profiles found. Right now nobody is able to use CKEditor. "
+"Create a new profile below."
+msgstr ""
+"Aucun profil CKEditor n'a été trouvé. Actuellement, personne ne "
+"peut utiliser CKEditor. Créez un nouveau profil ci-dessous."
+msgid "Create a new profile"
+msgstr "Créer un nouveau profil"
+msgid "The global profile already exists. Only one global profile is allowed."
+msgstr "Le profil global existe déjà. Un seul profil global est autorisé."
+msgid "Create a global profile"
+msgstr "Créer un profil global"
+msgid "Update the global profile"
+msgstr "Mettre à jour le profil global"
+msgid "Path to the CKEditor plugins directory"
+msgstr "Chemin vers le répertoire de plugins de CKEditor"
+msgid "Path to the CKEditor plugins directory relative to the document root."
+msgstr ""
+"Chemin vers le dossier de plugins CKEditor relatif à la racine de "
+"l'installation Drupal."
+msgid "Local path to the CKEditor plugins directory"
+msgstr "Chemin local vers le dossier de plugins de CKEditor"
+msgid "Enable access to files located in the private folder"
+msgstr "Activer l'accès vers les fichiers situés dans le dossier privé"
+msgid "Location of files uploaded with CKEditor to the private folder"
+msgstr ""
+"Emplacement des fichiers transférés avec CKEditor vers le dossier "
+"privé"
+msgid "Allow the user to select between paths and internal links"
+msgstr "Autoriser l'utilisateur à choisir entre chemins et liens internes"
+msgid ""
+"With the !plink extension it is possible to use internal: links. By "
+"default the !link extension is linking to nodes using paths."
+msgstr ""
+"Avec l'extension !plink, il est possible d'utiliser des liens "
+"internes. Par défaut, l'extension !link pointe vers des nœuds "
+"utilisant des chemins."
+msgid "The CKEditor global profile was saved."
+msgstr "Le profil global de CKEditor a été sauvegardé."
+msgid ""
+"Enter a name for this profile. This name is only visible within the "
+"CKEditor administration page."
+msgstr ""
+"Saisir le nom de ce profil. Ce nom n'est visible que sur la page "
+"d'administration de CKEditor."
+msgid ""
+"The CKEditor security system protects you from executing malicious "
+"code that is already in your database. In plain textareas database "
+"content is harmless because it is not executed, but the CKEditor "
+"WYSIWYG editor interprets HTML like a web browser and thus the content "
+"needs to be filtered before it is loaded."
+msgstr ""
+"Le système de sécurité de CKEditor vous protège de l'exécution de "
+"code malicieux qui serait déjà dans votre base de données. Dans les "
+"zones de texte brut le contenu de la base de données est inoffensif "
+"car il n'est pas exécuté, en revanche l'editeur WYSIWYG CKEditor "
+"interprète le HTML comme un navigateur web, le contenu doit donc "
+"être filtré avant d'être chargé."
+msgid ""
+"Please choose all filters that protect your content (probably not all "
+"filters listed below are security filters)."
+msgstr ""
+"Veuillez choisir tous les filtres qui protègent vos contenus (tous "
+"les filtres listés ci-dessous ne sont probablement pas des filtres de "
+"sécurité)."
+msgid ""
+"There are two ways of starting CKEditor: automatically and manually "
+"(via toggle). If you decide to apply security filters only when "
+"CKEditor starts automatically, you will not be protected when toggling "
+"manually from plain textarea to CKEditor. Choose this option only if "
+"you can detect various attacks (mainly XSS) by yourself just by "
+"looking at the HTML code."
+msgstr ""
+"Il y a deux manières de démarrer CKEditor : automatiquement et "
+"manuellement (par une bascule). Si vous décidez d'appliquer des "
+"filtres de sécurité seulement quand CKEditor démarre "
+"automatiquement, vous ne serez pas protégé lors de la bascule "
+"manuelle d'un texte brut vers CKEditor. Choisissez cette option "
+"seulement si vous pouvez détecter par vous-même les différentes "
+"attaques (principalement XSS) seulement en regardant le code HTML."
+msgid ""
+"Default editor state. If disabled, the rich text editor may still be "
+"enabled by using toggle."
+msgstr ""
+"Etat par défaut de l'éditeur. Si désactivé, l'éditeur de texte "
+"riche peut toujours être activé en utilisant le lien "
+"activer/désactiver."
+msgid "Show the disable/enable rich text editor toggle"
+msgstr "Afficher le lien activer/désactiver de l'éditeur de texte riche"
+msgid "User interface color"
+msgstr "Couleur de l'interface utilisateur"
+msgid "Used buttons"
+msgstr "Boutons utilisés"
+msgid "Currently used buttons"
+msgstr "Boutons utilisés actuellement"
+msgid "All available buttons"
+msgstr "Tous les boutons disponibles"
+msgid "Choose the plugins that you want to enable in CKEditor."
+msgstr "Choisissez les plugins que vous souhaitez activer dans CKEditor."
+msgid "Toolbar state on startup"
+msgstr "État de la barre d'outil au démarrage"
+msgid "The toolbar will start in an expanded or collapsed state."
+msgstr "La barre d'outils démarrera dans un état déplié ou replié."
+msgid "Editor interface width in pixels or percent. Examples: 400, 100%."
+msgstr ""
+"Largeur de l'interface de l'éditeur en pixels ou pourcentages. "
+"Exemples : 400, 100%."
+msgid "The language for the CKEditor user interface."
+msgstr "La langue de l'interface utilisateur de CKEditor."
+msgid "Automatically detect the user language."
+msgstr "Détecter automatiquement la langue de l'utilisateur."
+msgid "Language direction"
+msgstr "Sens de l'écriture"
+msgid ""
+"Set which tag should be used by CKEditor when the <em>Enter</em> key "
+"is pressed."
+msgstr ""
+"Définir la balise à utiliser par CKEditor quand la touche "
+"<em>Entée</em> est pressée."
+msgid "Shift+Enter mode"
+msgstr "Mode Majuscule+Entrée"
+msgid ""
+"Set which tag should be used by CKEditor when the <em>Shift+Enter</em> "
+"key combination is pressed."
+msgstr ""
+"Définir la balise à utiliser par CKEditor quand la combinaison de "
+"touches <em>Maj.+Entrée</em> est pressée."
+msgid "Indent the element contents."
+msgstr "Indenter les contenus de l'élément."
+msgid "Break line before the opening tag."
+msgstr "Retour à la ligne avant la balise d'ouverture."
+msgid "Break line after the opening tag."
+msgstr "Retour à la ligne après la balise d'ouverture."
+msgid "Break line before the closing tag."
+msgstr "Retour à la ligne avant la balise de fermeture."
+msgid "Break line after the closing tag."
+msgstr "Retour à la ligne apres la balise de fermeture."
+msgid "Indent the <code>&lt;pre&gt;</code> element contents."
+msgstr "Indenter les contenus de l'élément <code>&lt;pre&gt;</code>."
+msgid "Same as in the Link dialog window"
+msgstr "Identique à celui de la fenêtre de dialogue Lien"
+msgid "File browser type (Link dialog window)"
+msgstr "Type de navigateur de fichier (fenêtre de dialogue Lien)"
+msgid "File browser type (Image dialog window)"
+msgstr "Type de navigateur (fenêtre de dialogue Image)"
+msgid "File browser type (Flash dialog window)"
+msgstr "Type de navigateur (fenêtre de dialogue Flash)"
+msgid ""
+"Select the file browser that you would like to use to upload Flash "
+"movies."
+msgstr ""
+"Sélectionner le navigateur de fichiers que vous aimeriez utiliser "
+"pour transférer des animations Flash."
+msgid ""
+"The path to the local directory (on the server) which points to the "
+"path defined above. If left empty, CKEditor will try to discover the "
+"right path."
+msgstr ""
+"Le chemin vers le dossier local (sur le serveur) pointant vers le "
+"chemin défini ci-dessus. Si laissé vide, CKEditor tentera de deviner "
+"le bon chemin."
+msgid "Loading method"
+msgstr "Méthode de chargement"
+msgid "Loading timeout"
+msgstr "Temps d'attente du chargement"
+msgid "Spellchecker"
+msgstr "Correcteur d'orthographe"
+msgid "Custom JavaScript configuration"
+msgstr "Configuration JavaScript personnalisée"
+msgid ""
+"Enter a valid profile name. Only alphanumeric and underscore "
+"characters are allowed."
+msgstr ""
+"Saisir un nom de profil valide. Seuls les caractères alphanumériques "
+"et tirets bas sont autorisés."
+msgid "Enter a valid width value. Examples: 400, 100%."
+msgstr "Entrer une valeur valide. Exemples : 400, 100%."
+msgid ""
+"The CSS path is not empty. Please set the <strong>Editor CSS</strong> "
+"option to the <strong>Define CSS</strong> mode."
+msgstr ""
+"Le chemin CSS n'est pas vide. Veuillez définir l'option <strong>CSS "
+"de l'éditeur</strong> du mode <strong>Définir la CSS</strong>."
+msgid "Double quotes are not allowed in the CSS path."
+msgstr "Les guillemets ne sont pas autorisés dans le chemin CSS."
+msgid "Enter a valid CSS path, do not surround it with quotes."
+msgstr "Entrer un chemin CSS valide, ne l'entourez pas de guillemets."
+msgid ""
+"The path to predefined styles is not empty. Please set the "
+"<strong>Predefined styles</strong> option to the <strong>Define path "
+"to ckeditor.styles.js</strong> mode."
+msgstr ""
+"Le chemin vers les styles prédéfinis n'est pas vide. Veuillez "
+"définir l'opion <strong>Styles prédéfinis</strong> au mode "
+"<strong>Définir le chemin vers ckeditor.styles.js</strong>."
+msgid "Double quotes are not allowed in the styles path."
+msgstr "Les guillemets ne sont pas autorisés dans le chemin vers les styles."
+msgid "Enter a valid styles path, do not surround it with quotes."
+msgstr "Entrer un chemin vers les styles, ne l'entourez pas de guillemets."
+msgid ""
+"Enter a valid, semicolon-separated list of HTML font formats (no "
+"semicolon at the end of the list is expected)."
+msgstr ""
+"Saisir une liste valide séparée par des points-virgules de formats "
+"de police de caractères HTML (ne pas insérer de point-virgule à la "
+"fin de la liste)."
+msgid "The path to uploaded files is required."
+msgstr "Le chemin vers les fichiers transférés est requis."
+msgid "An absolute path to uploaded files is required."
+msgstr "Un chemin absolu vers les fichiers transférés est requis."
+msgid "Set a valid loading method."
+msgstr "Définir une méthode valide de chargement."
+msgid "Enter a valid loading timeout in seconds."
+msgstr "Saisir un temps d'attente de chargement valide, en secondes."
+msgid "Enter a valid toolbar configuration."
+msgstr "Saisir une configuration de barre d'outils valide."
+msgid "Your CKEditor profile was updated."
+msgstr "Votre profil CKEditor a été mis à jour."
+msgid "Your CKEditor profile was created."
+msgstr "Votre profil CKEditor a été créé."
+msgid ""
+"Are you sure that you want to delete the CKEditor profile "
+"<strong>%profile</strong>?"
+msgstr ""
+"Êtes-vous sûr(e) de vouloir supprimer le profil CKEditor "
+"<strong>%profile</strong> ?"
+msgid "The CKEditor profile was deleted."
+msgstr "Le profil CKEditor a été supprimé."
+msgid "The WYSIWYG module is disabled."
+msgstr "Le module WYSIWYG est désactivé."
+msgid "Support for the CKEditor SWF module"
+msgstr "Support pour le module CKEditor SWF"
+msgid "Support for the CKEditor Link module"
+msgstr "Support pour le module CKEditor Link"
+msgid "Support for the Linkit module <em>(buttons: Linkit)</em>"
+msgstr "Support pour le module Linkit <em>(boutons : Linkit)</em>"
+msgid "Table Resize plugin"
+msgstr "Plugin de redimensionnement des tableaux"
+msgid "Auto Grow plugin"
+msgstr "Plugin de redimensionnement automatique"
+msgid ""
+"Enables the use of CKEditor (a rich text WYSIWYG editor) instead of "
+"plain text fields."
+msgstr ""
+"Active l'utilisation de CKEditor (un éditeur de texte riche WYSIWYG) "
+"à la place de champs de texte brut."
+msgid ""
+"The Global Profile allows you to define settings that are common for "
+"all profiles. Values defined in other profiles will be appended to the "
+"global configuration. This way you can avoid repeating some of the "
+"settings that are usually the same for each profile."
+msgstr ""
+"Le profil global vous permet de définir les paramètres qui sont "
+"communs à tous les profils. Les valeurs définies dans les autres "
+"profils d'autres ajoutées à la configuration globale. De cette "
+"façon vous pouvez éviter de répéter des paramètres qui sont "
+"généralement les mêmes pour chaque profil."
+msgid ""
+"The CKEditor module allows Drupal to replace textarea fields with "
+"CKEditor. CKEditor is an online rich text editor that can be embedded "
+"inside web pages. It is a !wysiwyg editor which means that the text "
+"edited in it looks as similar as possible to the results end users "
+"will see after the document gets published. It brings to the Web "
+"popular editing features found in desktop word processors such as "
+"Microsoft Word and OpenOffice.org Writer. CKEditor is truly "
+"lightweight and does not require any kind of installation on the "
+"client computer."
+msgstr ""
+"Le module CKEditor permet de remplacer des champs de zone de texte. "
+"CKEditor est un éditeur de texte riche en ligne qui peut être "
+"incorporé à l'intérieur de pages web. Il s'agit d'un éditeur "
+"!wysiwyg ce qui signifie que le texte édité ressemble le plus "
+"possible au résultat attendu par les utilisateurs après publication. "
+"Il apporte au Web les fonctionnalités d'édition populaires dans les "
+"traitements de texte comme Microsoft Word et OpenOffice.org Writer. "
+"CKEditor est vraiment léger et ne nécessite aucun type "
+"d'installation sur l'ordinateur client."
+msgid "CKEditor website"
+msgstr "Site web de CKEditor"
+msgid ""
+"Profiles are linked with input format types. A CKEditor profile "
+"defines which buttons are available in the editor, how the editor is "
+"displayed, and a few other editor functions. The Global Profile stores "
+"some general information about CKEditor."
+msgstr ""
+"Les profils sont liés à des types de format de saisie. Un profil "
+"CKEditor définit quels boutons sont disponibles dans l'éditeur, "
+"comment l'éditeur est affiché, et quelques autres fonctions "
+"d'édition. Le profil global stocke des informations générales sur "
+"CKEditor."
+msgid ""
+"For the Rich Text Editing to work you also need to configure your "
+"!filterlink for the users that may access Rich Text Editing. Either "
+"grant those users <strong>Full HTML</strong> access or use the "
+"following list of tags in the HTML filter:"
+msgstr ""
+"Afin que fonctionne l'Edition de Texte Riche, vous devez aussi "
+"configurer votre !filterlink pour les utilisateurs devant accéder à "
+"cette fonctionnalité. Soit vous autorisez l'accès à l'<strong>HTML "
+"Complet</strong> à ces utilisateurs, soit vous utilisez la liste de "
+"balises suivante dans le filtre HTML :"
+msgid ""
+"To have better control over line breaks, you should disable the "
+"<strong>%settingname</strong> setting in the chosen Text format "
+"(recommended)."
+msgstr ""
+"Pour avoir un meilleur contrôle sur les retours à la ligne, vous "
+"devez désactiver le réglage <strong>%settingname</strong> dans le "
+"format de texte choisi (recommandé)."
+msgid ""
+"If you are looking for more information, have any trouble with the "
+"configuration, or found an issue with the CKEditor module, please "
+"visit the !officiallink."
+msgstr ""
+"Si vous cherchez plus d'informations, avez un problème avec la "
+"configuration ou rencontrez une erreur avec le module CKEditor, "
+"veuillez vous rendre sur !officiallink."
+msgid ""
+"More information about how to customize CKEditor for your theme can be "
+"found !herelink."
+msgstr ""
+"Plus d'informations sur comment personnaliser CKEditor pour votre "
+"thème peuvent être trouvées sur !herelink."
+msgid "By using !ckfinder (commercial), an advanced Ajax file manager."
+msgstr ""
+"En utilisant !ckfinder (commercial), un gestionnaire évolué de "
+"fichiers en Ajax."
+msgid "By using a dedicated module like !imcelink."
+msgstr "En utilisant un module dédié tel que !imcelink."
+msgid ""
+"Should rich text editing be enabled or disabled by default in textarea "
+"fields? If disabled, the rich text editor may still be enabled by "
+"using toggle."
+msgstr ""
+"L'édition de texte doit-elle être activée par défaut dans les "
+"champs de texte ? Si désactivér, l'éditeur de texte riche peut "
+"toujours être activé en utilisant la bascule."
+msgid "Editor interface width in pixels or percent."
+msgstr "Largeur de l'interface de l'éditeur en pixels ou en pourcentage."
+msgid "Enter a valid width value."
+msgstr "Saisir une valeur valide pour la largeur."
+msgid "Content can only be inserted into CKEditor in the WYSIWYG mode."
+msgstr ""
+"Le contenu peut seulement être inséré dans CKEditor en mode "
+"WYSIWYG."
+msgid "Disable the WYSIWYG module."
+msgstr "Désactiver le module WYSIWYG."
+msgid "Get settings for the CKEditor instance"
+msgstr "Obtenir les paramètres de l'instance CKEditor"
+msgid ""
+"Some features are disabled because you are using an older version of "
+"CKEditor. Please upgrade the editor to CKEditor 3.1 (or higher)."
+msgstr ""
+"Certaines options sont désactivées parce que vous utilisez une "
+"ancienne version de CKEditor. Veuillez mettre à jour  CKEditor vers "
+"la version 3.1 (ou plus récente)."
+msgid ""
+"The WYSIWYG module was detected. Using both modules at the same time "
+"may cause problems. It is recommended to turn the WYSIWYG module off "
+"(!wysiwygdisablelink)."
+msgstr ""
+"Le module WYSIWYG a été détecté. Utiliser les deux modules en "
+"même temps peut engendrer des problèmes. Il est recommandé de "
+"désactiver le module WYSISYG (!wysiwygdisablelink)."
+msgid ""
+"Enter the paths to the textarea fields for which you want to enable or "
+"disable CKEditor."
+msgstr ""
+"Saisir les chemins des zones de texte sur lesquelles vous voulez "
+"activer ou désactiver CKEditor."
+msgid ""
+"Content type and theme name is optional. You may even just specify the "
+"path or the field ID."
+msgstr ""
+"Le type de contenu et le nom du thème sont optionnels. Vous devez "
+"simplement spécifier le chemin ou l'identifiant du champ."
+msgid ""
+"matches all fields of type <code>blog</code> called "
+"<code>edit-body</code> in the garland theme, on any page."
+msgstr ""
+"correspond à tous les champs de type <code>blog</code> nommés "
+"<code>edit-body</code> du thème garland, sur n'importe quelle page."
+msgid ""
+"matches fields starting with <code>edit-user-</code> on pages starting "
+"with <code>node/add/</code>"
+msgstr ""
+"identifie les champs commençant par <code>edit-user</code> sur les "
+"pages commençant par <code>node/add/</code>"
+msgid ""
+"Enter the paths to the textarea fields for which you want to force the "
+"simplified toolbar."
+msgstr ""
+"Saisir les chemins des zones de texte sur lesquelles vous voulez "
+"forcer la barre d'outils simplifiée."
+msgid ""
+"Default editor state. If disabled, the rich text editor may still be "
+"enabled by using toggle or popup window."
+msgstr ""
+"État par défaut de l'éditeur. Si désactivé, l'éditeur de texte "
+"riche peut toujours être activé en utilisant la bascule ou la popup."
+msgid ""
+"If this option is enabled, a link to a popup window will be used "
+"instead of a textarea replace."
+msgstr ""
+"Si cette option est activée, un lien vers une popup sera utilisé à "
+"la place du remplacement de la zone de texte."
+msgid "If CKEditor is enabled by default, the popup window must be disabled."
+msgstr "Si CKEditor est activé par défaut, la popup doit être désactivée."
+msgid "If toggle is enabled, the popup window must be disabled."
+msgstr "Si la bascule est activée, la popup doit être désactivée."
+msgid ""
+"The following list contains the ID-name pairs of roles with access to "
+"CKEditor:"
+msgstr ""
+"La liste suivante contient les paires identifiant-nom des rôles ayant "
+"un accès à CKEditor :"
+msgid ""
+"This only applies to users with the \"administer ckeditor\" "
+"permissions."
+msgstr ""
+"Ceci ne s'applique qu'aux utilisateurs ayant le droit \"administrer "
+"ckeditor\"."
+msgid "The CKEditor Global Profile was saved."
+msgstr "Le Profil Général CKEditor a été enregistré."
+msgid ""
+"Rule %rule is ambiguous: please append .* if %rule is a path or "
+"prepend *. if %rule is a field."
+msgstr ""
+"La règle %rule est ambiguë : veuillez mettre en suffixe .* si %rule "
+"est un chemin ou *. en préfixe si %rule est un champ."
+msgid ""
+"Please note that only users with the \"%accesspermission\" "
+"!permissionlink will be able to use CKEditor."
+msgstr ""
+"Veuillez noter que seuls les utilisateurs avec les \"!permissionlink "
+"%accesspermission\"  pourront utiliser CKEditor."
+msgid ""
+"To have better control over line breaks, you should disable the "
+"<strong>%settingname</strong> setting in the chosen filter "
+"(recommended)."
+msgstr ""
+"Pour mieux contrôler les sauts de ligne, vous devriez désactiver le "
+"paramètre <strong>%settingname</strong> dans le filtre choisi "
+"(recommandé)."
+msgid "Defining field inclusions/exclusions"
+msgstr "Définition du champ inclure/exclure"
+msgid "By using a dedicated module like !imcelink, !iblink or !webfmlink."
+msgstr "En utilisant un module dédié comme !imcelink, !iblink ou !webfmlink."
+msgid ""
+"If you have CKEditor already installed, edit the "
+"<strong>!editg</strong> and update the CKEditor path."
+msgstr ""
+"Si CKEditor est déjà installé, modifier <strong>!editg</strong> et "
+"mettre à jour le chemin vers CKEditor."
+msgid "Path to CKFinder"
+msgstr "Chemin vers CKFinder"
+msgid "Use toolbar Drag&Drop feature"
+msgstr "Utilisez la fonctionnalité glisser/déposer de la barre d'outils"
+msgid ""
+"When enabled, the toolbar can be built by using the drag-and-drop "
+"feature. Otherwise you will need to enter the toolbar configuration "
+"manually to the text box."
+msgstr ""
+"Lorsqu'activé, la barre d'outils peut être construite grâce à la "
+"fonctionnalité glisser/déposer. Sinon, vous devrez saisir la "
+"configuration manuellement dans le champ de texte."
+msgid "Choose the text formats where you want to load CKEditor."
+msgstr "Choisir les formats de texte pour lesquels charger CKEditor."
+msgid ""
+"All configuration options described in the !apidocs that cannot be "
+"easily changed in the administration area can be set in the "
+"<strong>Advanced Options</strong> section in the CKEditor profile."
+msgstr ""
+"Toutes les options de configuration décrites dans !apidocs qui ne "
+"peuvent pas être modifiées facilement dans la zone d'administration "
+"peuvent être paramétrées dans la section <strong>Options "
+"avancées</strong> dans le profil CKEditor."
+msgid ""
+"To start using CKEditor, first you need to grant permissions for use "
+"of CKEditor in the <strong>!adminpath</strong> section."
+msgstr ""
+"Pour démarrer avec CKEditor, vous devez d'abord en définir les "
+"permisssions dans la section <strong>!adminpath</strong>."
+msgid "/config.php"
+msgstr "/config.php"
+msgid "Checking for !filename or !file."
+msgstr "Recherche de !filename ou !file."
+msgid ""
+"The CKEditor component is not installed correctly. Please go to the "
+"!ckeditorlink in order to download the latest version. After that you "
+"must extract the files to the !ckeditorpath or !librarypath directory "
+"and make sure that the !ckeditorfile or !ckeditorlibrary file exists. "
+"Refer to the !readme file for more information."
+msgstr ""
+"Le composant CKEditor n’est pas installé correctement. Veuillez "
+"consulter !ckeditorlink afin de télécharger la dernière version. "
+"Ensuite, vous devez extraire les fichiers dans le répertoire "
+"!ckeditorpath ou !librarypath et vous assurer que le fichier "
+"!ckeditorfile ou !ckeditorlibrary existe. Pour plus d’information, "
+"consultez le fichier !readme."
+msgid "The global profile can not be found. Click here to !create."
+msgstr "Le profil global est introuvable. Cliquer ici pour !create."
+msgid ""
+"Choose the language direction used in the editing area. Even when "
+"CKEditor automatically detects the user language and adjusts its user "
+"interface, the editing area is not automatically changed into the LTR "
+"or RTL mode. To be able to type LTR (like English) and RTL (like "
+"Arabic, Hebrew, Persian) content at the same time, please make sure "
+"that the <strong>!bidiltr</strong> and <strong>!bidirtl</strong> "
+"buttons are enabled in the toolbar."
+msgstr ""
+"Choisir la direction de la langue utilisée dans la zone de "
+"rédaction. Même lorsque CKEditor détecte automatiquement la langue "
+"de l'utilisateur et ajuste l'interface utilisateur en conséquence, la "
+"zone de rédaction n'est pas automatiquement changée dans le mode LTR "
+"ou RTL. Pour pouvoir rédiger du contenu LTR (comme pour le français) "
+"et RTL (comme pour l'arabe, l'hébreu, le perse) en même temps, "
+"veuillez vous assurer que les boutons <strong>!bidiltr</strong> et "
+"<strong>!bidirtl</strong> sont activés dans la barre d'outils."
+msgid ""
+"Semicolon-separated list of HTML font formats. Allowed values are: "
+"!allowed_values"
+msgstr ""
+"Liste de formats de police de caractères HTML séparés par des "
+"points-virgules. Les valeurs autorisées sont : !allowed_values"
+msgid ""
+"Define the location of the !ckeditor_styles_js_file file. It is used "
+"by the <strong>Style</strong> drop-down list available in the default "
+"toolbar. Copy the !ckeditor_styles_js_path file into your theme "
+"directory (!theme) and adjust it to your needs."
+msgstr ""
+"Définir la location du fichier !ckeditor_styles_js_file. Il est "
+"utilisé par la liste déroulante <strong>Style</strong> disponible "
+"dans la barre d'outils par défaut. Copier le fichier "
+"!ckeditor_styles_js_path dans le répertoire de votre thème (!theme) "
+"et adaptez-le à vos besoins."
+msgid "Load !ckeditor_config_js from the theme path"
+msgstr "Charger !ckeditor_config_js à partir du chemin du thème"
+msgid ""
+"When enabled, the editor will try to load the !ckeditor_config_js file "
+"from the theme directory."
+msgstr ""
+"Lorsqu'activé, l'éditeur essayera de charger le fichier "
+"!ckeditor_config_js depuis le répertoire de thème."
+msgid "CKEditor documentation"
+msgstr "Documentation de CKEditor"
+msgid ""
+"See the !helppagelink for more information about defining field names. "
+"Take a look at the exclusion settings (above) for a short instruction."
+msgstr ""
+"Consulter le !helppagelink pour plus d'information sur la définition "
+"des noms de champ. Jeter un œil sur les paramètres d'exclusion "
+"(au-dessus) pour une brève instruction."
+msgid "Simplified toolbar"
+msgstr "Barre d'outils simplifiée"
+msgid ""
+"The path to CKEditor (the WYSIWYG rich text editor downloaded from "
+"!ckeditorcom) relative to the document root."
+msgstr ""
+"Le chemin vers CKEditor (l'éditeur de texte riche WYSIWYG "
+"téléchargé depuis !ckeditorcom) relatif à la racine de "
+"l'installation Drupal."
+msgid "ckeditor.com"
+msgstr "ckeditor.com"
+msgid ""
+"The path to the local directory (on the server) that points to the "
+"path defined above. Enter either an absolute server path or a path "
+"relative to the !indexphp file. If left empty, the CKEditor module "
+"will try to find the right path."
+msgstr ""
+"Le chemin du répertoire local (sur le serveur) qui pointe vers le "
+"chemin défini au-dessus. Saisir soit un chemin de serveur absolu ou "
+"un chemin relatif au fichier !indexphp. Si laissé vide, le module "
+"CKEditor essayera de trouver le chemin correct."
+msgid ""
+"The path to the local directory (on the server) that points to the "
+"path defined above. Enter either an absolute server path or a path "
+"relative to the !indexphp file. If left empty, the CKEditor module "
+"will try to find the right path.<br />Current path: !path"
+msgstr ""
+"Le chemin vers le répertoire local (sur le serveur) qui pointe vers "
+"le chemin défini ci-dessus. Saisir soit un chemin absolu soit un "
+"chemin relatif au fichier !indexphp. Si laissé vide, le module "
+"CKEditor essayera de trouver le bon chemin.<br />Chemin actuel : !path"
+msgid ""
+"The path to CKFinder (AJAX based file manager downloaded from "
+"!ckfindercom) relative to the document root."
+msgstr ""
+"Le chemin vers CKFinder (gestionnaire de fichiers basé sur AJAX et "
+"téléchargé à partir de !ckfindercom) relatif à la base du "
+"document."
+msgid ""
+"Available placeholders:!b &ndash; the base URL path of the Drupal "
+"installation (!base).!m &ndash; path where the CKEditor module is "
+"stored (!files).!l &ndash; path to the libraries directory (!library)."
+msgstr ""
+"Placeholders disponibles : !b &ndash; le chemin de base URL de "
+"l'installation Drupal (!base). !m &ndash; chemin où le module "
+"CKEditor est stocké (!files). !l &ndash; chemin vers le répertoire "
+"libraries (!library)."
+msgid ""
+"<strong>Use this option with care.</strong> If checked, CKEditor will "
+"allow anyone knowing the URL to view a file located inside of the "
+"private path (!private_path), but only if there is no information "
+"about the file in the Drupal database. If the path below is specified, "
+"anyone will have access only to that location."
+msgstr ""
+"<strong>Utiliser cette option avec prudence.</strong> Si "
+"selectionnée, CKEditor permettra à quiconque connaissant l'URL de "
+"voir un fichier situé dans le chemin privé (!private_path), mais "
+"uniquement s'il n'y a pas d'information sur le fichier dans la base de "
+"données Drupal. Si le chemin ci-dessous est spécifié, tout le monde "
+"y aura accès, mais seulement à cet emplacement."
+msgid "Location of files uploaded with CKEditor in  the private folder"
+msgstr ""
+"Emplacement des fichiers transférés avec CKEditor dans le "
+"répertoire privé"
+msgid "Available wildcard characters: !u &ndash; User ID.!n &ndash; Username"
+msgstr ""
+"Caractères de substitution autorisés : !u &ndash; User ID. !n "
+"&ndash; Username"
+msgid "Stylesheet Parser plugin"
+msgstr "Plugin d'analyseur syntaxique (parser) de feuille de style"
+msgid ""
+"CKEditor is highly configurable. The most commonly used features are "
+"listed below. You can also adjust CKEditor to your needs by changing "
+"the !ckeditor_module_config configuration file."
+msgstr ""
+"CKEditor est très configurable. Les fonctionnalités les plus "
+"utilisées sont listées ci-dessous. Vous pouvez également ajuster "
+"CKEditor à vos besoins en changeant le fichier de configuration "
+"!ckeditor_module_config."
+msgid ""
+"It is recommended to not edit the !ckeditor_config_file "
+"(!ckeditor_config_path) configuration file that is distributed with "
+"CKEditor, because you may overwrite it accidentally when you update "
+"the editor."
+msgstr ""
+"Il est recommandé de ne pas modifier le fichier de configuration "
+"!ckeditor_config_file (!ckeditor_config_path) qui est distribué avec "
+"CKEditor, car vous risquez de l'écraser quand vous faites une mise à "
+"jour de l'éditeur."
+msgid ""
+"<strong>Note:</strong> be careful when granting users access to create "
+"tags like %iframe. <br />If you are going to use CKEditor with the "
+"<strong>Filtered HTML</strong> input format, please read  the "
+"\"Setting up filters\" section in the !readme file."
+msgstr ""
+"<strong>Note :</strong> soyez prudent lors de l'attribution aux "
+"utilisateurs du droit de créer des balises comme %iframe. <br />Si "
+"vous allez utiliser CKEditor avec le format de saisie <strong>HTML "
+"Filtré</strong>, veuillez lire la section \"Configurer les filtres\" "
+"dans le fichier !readme."
+msgid ""
+"Next, you need to define the list of exceptions. This list follows a "
+"specific syntax: the path to a field is defined by giving the content "
+"type followed by the <code>@</code> character, specifying the path "
+"followed by a dot and finally appending the field name at the end. You "
+"may decide to skip the content type. The !fieldname field on the "
+"!pathname page would thus be addressed as !result. You can use "
+"wildcards <code>*</code> and <code>?</code> anywhere in this line. If "
+"you have trouble with the field name that contains a dot, you can "
+"escape it with a backslash character (<code>\\</code>)."
+msgstr ""
+"Ensuite, vous devez définir la liste des exceptions. Cette liste suit "
+"une syntaxe spécifique : le chemin vers un champ est défini en "
+"donnant le type de contenu suivi par le caractère <code>@</code>, en "
+"spécifiant le chemin suivi par un point et finalement en ajoutant le "
+"nom du champ à la fin. Vous pouvez décider d'omettre le type de "
+"contenu. Le champ !fieldname sur la page !pathname sera ainsi nommé "
+"en tant que !result. Vous pouvez utiliser des caractères de "
+"substitution <code>*</code> et <code>?</code> n'importe où sur cette "
+"ligne. Si vous avez un problème avec le nom du champ  qui contient un "
+"point, vous pouvez l'échapper avec un caractère anti-slash "
+"(<code>\\</code>)."
+msgid "ckfinder.com"
+msgstr "ckfinder.com"
+msgid "Available wildcard characters:!u &ndash; User ID.!n &ndash; Username"
+msgstr ""
+"Caractères de substitution disponibles : !u &ndash; Identifiant "
+"utilisateur. !n &ndash; Nom d'utilisateur"
+msgid "Load sample toolbar: !toolbars"
+msgstr "Charger la barre d'outils d'exemple : !toolbars"
+msgid ""
+"Enter the path to the CSS file (Example: !example1) or a list of CSS "
+"files separated with a comma (Example: !example2). Make sure you "
+"select the !title_define_css option above."
+msgstr ""
+"Saisir le chemin vers le fichier CSS (exemple : !example1) ou une "
+"liste de fichiers CSS séparés par une virgule (exemple : !example2). "
+"Assurez-vous de sélectionner l'option !title_define_css au-dessus."
+msgid ""
+"Available placeholders:!h &ndash; host name (!host).!t &ndash; path to "
+"theme (!theme)."
+msgstr ""
+"Placeholders disponibles : !h &ndash; nom d'hôte (!host). !t &ndash; "
+"chemin vers le thème (!theme)."
+msgid ""
+"Enter the path to a file with predefined styles (Example: !example1). "
+"Make sure you select the !style_define_path option above."
+msgstr ""
+"Saisir le chemin d'un fichier avec des styles prédéfinis (Exemple : "
+"!example1). Assurez-vous de sélectionner l'option ci-dessus "
+"!style_define_path."
+msgid ""
+"Available placeholders:!h &ndash; host name (!host).!t &ndash; path to "
+"theme (!theme).!m &ndash; path to the CKEditor module (!module)."
+msgstr ""
+"Paramètres de substitution disponibles : !h &ndash; nom d'hôte "
+"(!host).!t &ndash; chemin du thème (!theme).!m &ndash; chemin du "
+"module CKEditor (!module)."
+msgid ""
+"Set the file browser settings. A file browser will allow you to browse "
+"the files stored on the server and embed them as links, images, or "
+"Flash movies. CKEditor is compatible with such Drupal modules as !imce "
+"or !elfinder. CKEditor can be also integrated with !ckfinder, an "
+"advanced Ajax file manager."
+msgstr ""
+"Définir les paramètres de l'explorateur de fichiers. Un explorateur "
+"de fichiers vous permettra de parcourir les fichiers stockés sur le "
+"serveur et de les intégrer comme liens, images ou films Flash. "
+"CKEditor est compatible avec les modules Drupal tel que !imce ou "
+"!elfinder. CKEditor peut également être integré avec !ckfinder, un "
+"gestionnaire de fichier Ajax avancé."
+msgid ""
+"Available placeholders:!b &ndash; the base URL path of the Drupal "
+"installation (!base).!f &ndash; the Drupal file system path where the "
+"files are stored (!files).!u &ndash; User ID.!n &ndash; Username."
+msgstr ""
+"Paramètres de substitution disponibles (placeholders) : !b &ndash; le "
+"chemin de l'URL de base de l'installation Drupal (!base). !f &ndash; "
+"le chemin du système de fichiers Drupal où les fichiers sont "
+"stockés (!files). !u &ndash; Identifiant (ID) utilisateur. !n &ndash; "
+"Nom d'utilisateur."
+msgid "!title <a href=\"!link\" target=\"_blank\">project page</a>"
+msgstr "!title <a href=\"!link\" target=\"_blank\">page de projet</a>"
+msgid "<i>Not installed</i>"
+msgstr "<i>Non installé</i>"
+msgid ""
+"CKEditor profiles can be configured in the !adminpath section. "
+"Profiles determine which options are available to users based on the "
+"input format system."
+msgstr ""
+"Les profils CKEditor peuvent être configurés dans la section "
+"!adminpath. Les profils déterminent quelles options sont disponibles "
+"aux utilisateurs basées sur le format d'entrée du système."
+msgid ""
+"<strong>Note:</strong> be careful when granting users access to create "
+"tags like %iframe.<br />If you are going to use CKEditor with the "
+"<strong>Filtered HTML</strong> input format, please read the \"Setting "
+"up filters\" section in the !readme file."
+msgstr ""
+"<strong>Note :</strong> faîtes attention lorsque vous accordez aux "
+"utilisateurs le droit de créer des balises telles que %iframe.<br "
+"/>Si vous comptez utiliser CKEditor avec le format d’entrée "
+"<strong>HTML Filtré</strong>, merci de lire la section "
+"\"Configuration de filtres\" dans le fichier !readme."
+msgid "Change skin of CKEditor"
+msgstr "Changer l'habillage de CKEditor"
+msgid "Configure skin for CKEditor."
+msgstr "Configurer l'habillage de CKEditor."
+msgid ""
+"The `!profile` profile is using `!skin` skin which cannot be found. "
+"Please !profile_settings."
+msgstr ""
+"Le profil '!profile' utilise l'habillage '!skin' qui est introuvable. "
+"Veuillez !profile_settings."
+msgid "update your settings"
+msgstr "mettre à jour vos paramètres"
+msgid "\"Div-based\" editor"
+msgstr "Éditeur \"basé-sur-des-div\""
+msgid "Loading editor into <code>div</code> instead of <code>iframe</code>."
+msgstr ""
+"Chargement de l'éditeur dans un <code>div</code> au lieu d'une "
+"<code>iframe</code>."
+msgid "Aggregate <code>ckeditor.js</code>"
+msgstr "Agréger <code>ckeditor.js</code>"
+msgid "Local path to CKFinder"
+msgstr "Chemin local vers CKFinder"
+msgid ""
+"The following plugins could not be found and were automatically "
+"disabled in CKEditor profiles:"
+msgstr ""
+"Les plugins suivant sont introuvables et seront automatiquement "
+"désactivés dans les profils CKEditor :"
+msgid "<b>Profile</b>: %profile_name"
+msgstr "<strong>Profil</strong> : %profile_name"
+msgid "<b>Plugins</b>: %profile_plugins"
+msgstr "<b>Plugins</b> : %profile_plugins"
+msgid ""
+"The <em>CKEditor Global Profile</em> profile is using %skin skin which "
+"cannot be found. Please <a href=\"@profile_settings\">update your "
+"settings</a>."
+msgstr ""
+"Le <em>Profil global de CKEditor</em> utilise l'habillage %skin qui "
+"est introuvable. Veuillez <a href=\"@profile_settings\">mettre à jour "
+"vos paramètres</a>."
+msgid ""
+"!ckfinder is not installed correctly: <code>!config</code> not found. "
+"Make sure that you uploaded all files and did not accidentally remove "
+"the configuration file. If you installed CKFinder in other location "
+"(e.g. in the libraries folder), make sure to update the path to "
+"CKFinder in !global."
+msgstr ""
+"!ckfinder n'est pas installé correctement : <code>!config</code> non "
+"trouvé. Assurez-vous d'avoir transféré tout les fichiers et de ne "
+"pas avoir accidentellement retiré le fichier de configuration. Si "
+"vous avez installé CKFinder à un autre emplacement (par ex. dans le "
+"répertoire nommé libraries), assurez-vous de mettre à jour le "
+"chemin vers CKFinder dans !global."
+msgid "Available buttons"
+msgstr "Boutons disponibles"
+msgid ""
+"The path to CKEditor (the WYSIWYG rich text editor downloaded from "
+"!ckeditorcom). Provide a path relative to the document root, unless "
+"CKEditor is located on an external URL. In such case enter the full "
+"URL to a folder with CKEditor.<br />The simplest way to have the "
+"editor running is to use CDN, to use it set: !cdn"
+msgstr ""
+"Le chemin vers CKEditor (l'éditeur WYSIWYG de texte enrichi "
+"téléchargeable depuis !ckeditorcom). Fournit un chemin relatif à la "
+"racine du site, à moins que CKEditor ne soit situé sur une URL "
+"externe. Dans ce cas, saisir l'URL complète d'un répertoire "
+"contenant CKEditor.<br />La manière la plus simple de mettre en "
+"oeuvre l'éditeur est d'utiliser CDN. Pour cela, définir !cdn"
+msgid ""
+"Available placeholders:!b &ndash; path of the Drupal installation "
+"(!base) !m &ndash; path where the CKEditor module is stored "
+"(!module).!l &ndash; path to the libraries directory (!library)."
+msgstr ""
+"Les espaces réservés disponibles :!b &ndash; chemin de "
+"l'installation Drupal (!base) !m &ndash; chemin où le module CKEditor "
+"est conservé !module).!l &ndash; chemin vers le répertoire des "
+"bibliothèques (!library)."
+msgid "CKEditor is loaded from URL. Local path is not available."
+msgstr ""
+"CKEditor est chargé depuis l'URL. Le chemin local n'est pas "
+"disponible."
+msgid "Current toolbar"
+msgstr "Barre d'outil actuelle"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/ckeditor-7.x-1.16.fr_1.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,1400 @@
+# French translation of CKEditor - WYSIWYG HTML editor (7.x-1.16)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: CKEditor - WYSIWYG HTML editor (7.x-1.16)\n"
+"POT-Creation-Date: 2017-11-13 19:08+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "User interface"
+msgstr "Interface utilisateur"
+msgid "delete"
+msgstr "supprimer"
+msgid "Administer"
+msgstr "Administrer"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Language"
+msgstr "Langue"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Advanced options"
+msgstr "Options avancées"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "edit"
+msgstr "modifier"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Advanced settings"
+msgstr "Paramètres avancés"
+msgid "Unknown"
+msgstr "Inconnu"
+msgid "Include"
+msgstr "Inclure"
+msgid "Exclude"
+msgstr "Exclure"
+msgid "Expanded"
+msgstr "Déplié"
+msgid "Not found"
+msgstr "Non trouvé"
+msgid "Roles"
+msgstr "Rôles"
+msgid "Input format"
+msgstr "Format de saisie"
+msgid "Global settings"
+msgstr "Paramètres globaux"
+msgid "Advanced"
+msgstr "Avancé"
+msgid "help"
+msgstr "aide"
+msgid "Introduction"
+msgstr "Introduction"
+msgid "Example"
+msgstr "Exemple"
+msgid "here"
+msgstr "ici"
+msgid "Configuration"
+msgstr "Configuration"
+msgid "Security"
+msgstr "Sécurité"
+msgid "Basic"
+msgstr "Basique"
+msgid "CSS"
+msgstr "CSS"
+msgid "Default state"
+msgstr "État par défaut"
+msgid "Basic setup"
+msgstr "Configuration basique"
+msgid "Profile name"
+msgstr "Nom du profil"
+msgid "Roles allowed to use this profile"
+msgstr "Rôles autorisés à utiliser ce profil"
+msgid "Editor appearance"
+msgstr "Apparence de l'éditeur"
+msgid "Cleanup and output"
+msgstr "Nettoyer et afficher"
+msgid "Editor CSS"
+msgstr "CSS de l'éditeur"
+msgid "Profile"
+msgstr "Profil"
+msgid "You must give a profile name."
+msgstr "Vous devez saisir un nom de profil."
+msgid "filters"
+msgstr "filtres"
+msgid "IMCE"
+msgstr "IMCE"
+msgid "Visibility settings"
+msgstr "Paramètres de visibilité"
+msgid "Minimum rows"
+msgstr "Lignes minimum"
+msgid "Use inclusion or exclusion mode"
+msgstr "Utiliser le mode d'inclusion ou d'exclusion"
+msgid "File browser settings"
+msgstr "Paramètres de l'explorateur de fichiers"
+msgid "Collapsed"
+msgstr "Replié"
+msgid "Full"
+msgstr "Complet"
+msgid "Show"
+msgstr "Afficher"
+msgid "Web File Manager"
+msgstr "Gestionnaire de fichier web"
+msgid "Editor width"
+msgstr "Largeur de l'éditeur"
+msgid "or"
+msgstr "ou"
+msgid "User management"
+msgstr "Gestion des utilisateurs"
+msgid "Permissions"
+msgstr "Droits"
+msgid "permission"
+msgstr "permission"
+msgid "Path Filter"
+msgstr "Filtre de chemin"
+msgid "Line break converter"
+msgstr "Convertisseur de sauts de ligne"
+msgid "Role precedence"
+msgstr "Hiérarchie des rôles"
+msgid "Site configuration"
+msgstr "Configuration du site"
+msgid "Examples"
+msgstr "Exemples"
+msgid "Plugins"
+msgstr "Plugins"
+msgid "API documentation"
+msgstr "Documentation de l'API"
+msgid "Hide"
+msgstr "Masquer"
+msgid "Examples:"
+msgstr "Exemples :"
+msgid "Profiles"
+msgstr "Profils"
+msgid "All buttons"
+msgstr "Tous les boutons"
+msgid "Skin"
+msgstr "Habillage"
+msgid "WYSIWYG"
+msgstr "WYSIWYG"
+msgid "clone"
+msgstr "cloner"
+msgid "Image Browser"
+msgstr "Explorateur d'image"
+msgid "!title"
+msgstr "!title"
+msgid "permissions"
+msgstr "droits"
+msgid "XSS Filter"
+msgstr "Filtre XSS"
+msgid "XSS Filter."
+msgstr "Filtre XSS."
+msgid "No profiles found. Click here to !create."
+msgstr "Aucun profil trouvé. Cliquer ici pour !create."
+msgid "create a new profile"
+msgstr "créer un nouveau profil"
+msgid "create the global profile"
+msgstr "créer le profil général"
+msgid "Switch to plain text editor"
+msgstr "Basculer vers l'éditeur de texte brut"
+msgid "Switch to rich text editor"
+msgstr "Basculer vers l'éditeur de texte riche"
+msgid "Toolbar"
+msgstr "Barre d'outils"
+msgid "Auto-detect language"
+msgstr "Détecter automatiquement la langue"
+msgid "Main setup"
+msgstr "Configuration principale"
+msgid "Fields to exclude/include"
+msgstr "Champs à inclure/exclure"
+msgid "Force simplified toolbar on the following fields"
+msgstr "Forcer la barre d'outils simplifiée sur les champs suivants"
+msgid "System path to the private folder is: !system_path."
+msgstr "Le chemin système du répertoire privé est : !system_path."
+msgid "Current path: !path"
+msgstr "Chemin actuel : !path"
+msgid "Security filters"
+msgstr "Filtres de sécurité"
+msgid "Security settings"
+msgstr "Paramètres de sécurité"
+msgid "Enter mode"
+msgstr "Mode Entrée"
+msgid "Font formats"
+msgstr "Formats des polices de caractères"
+msgid "Predefined styles"
+msgstr "Styles prédéfinis"
+msgid "Predefined styles path"
+msgstr "Chemin des styles prédéfinis"
+msgid "Path to uploaded files"
+msgstr "Chemin des fichiers transférés"
+msgid "Absolute path to uploaded files"
+msgstr "Chemin absolu des fichiers transférés"
+msgid "Link to paths only"
+msgstr "Lier les chemins uniquement"
+msgid "Link using internal: links"
+msgstr "Lier en utilisant des liens internes"
+msgid "Path Filter & Link To Content integration"
+msgstr "Intégration avec Filtre de chemin & Lien de contenu"
+msgid "Link To Content"
+msgstr "Lier les contenu"
+msgid "Join summary"
+msgstr "Fusionner le résumé et le corps du message"
+msgid "Split summary at cursor"
+msgstr "Créer un résumé à partir du curseur"
+msgid ""
+"If allowed, users will be able to override the \"Editor appearance\" "
+"by visiting their profile page."
+msgstr ""
+"Si autorisé, les utilisateurs pourront supplanter l'\"Apparence de "
+"l'éditeur\" sur leur page de profil."
+msgid "The following wildcards are available: \"*\", \"?\"."
+msgstr "Les jokers suivants sont disponibles : \"*\", \"?\"."
+msgid ""
+"matches fields starting with \"edit-user-\" on pages starting with "
+"\"node/add/"
+msgstr ""
+"correspond aux champs commençant par \"edit-user-\" sur les pages "
+"commençant par \"node/add/"
+msgid "Minimum rows must be a valid number."
+msgstr "Les lignes minimum doivent être un nombre valide."
+msgid "This profile name is reserved. Please choose a different name."
+msgstr "Ce nom de profil est réservé. Veuillez choisir un nom différent."
+msgid ""
+"The profile name must be unique. A profile with this name already "
+"exists."
+msgstr ""
+"Le nom du profil doit être unique. Un profil avec ce nom existe "
+"déjà."
+msgid "Show field name hint below each rich text editor"
+msgstr ""
+"Afficher l'indication du nom du champ sous chaque éditeur de texte "
+"riche"
+msgid "Some examples:"
+msgstr "Quelques exemples :"
+msgid "Troubleshooting"
+msgstr "Dépannage"
+msgid "Uploading images and files"
+msgstr "Transfert d'images et de fichiers"
+msgid "There are three ways for uploading files:"
+msgstr "Il y a trois moyens de transférer des fichiers :"
+msgid "By using the core upload module."
+msgstr "En utilisant le module de transfert du cœur."
+msgid "Rich text editor settings"
+msgstr "Paramètres de l'éditeur de texte riche"
+msgid "Open rich text editor"
+msgstr "Ouvrir l'éditeur de texte riche"
+msgid "Configure the rich text editor."
+msgstr "Configurer l'éditeur de texte riche."
+msgid "Use theme CSS"
+msgstr "Utiliser la CSS du thème"
+msgid "Define CSS"
+msgstr "Définir une CSS"
+msgid ""
+"The following settings are combined with the visibility settings of "
+"the global profile."
+msgstr ""
+"Les paramètres suivants sont combinés avec les paramètres de "
+"visibilité du profil global."
+msgid ""
+"The following settings are combined with the visibility settings of "
+"the specific profile."
+msgstr ""
+"Les paramètres suivants sont combinés avec les paramètres de "
+"visibilité du profil spécifique."
+msgid "Path to uploaded files relative to the document root."
+msgstr ""
+"Chemin vers les fichiers téléchargés, relatif à la racine du "
+"document."
+msgid "What You See Is What You Get"
+msgstr ""
+"What You See Is What You Get (ce que vous voyez est ce que vous "
+"obtenez)"
+msgid "official project page"
+msgstr "page officielle du projet"
+msgid ""
+"CKEditor: the ID for <a href=\"!excluding\">excluding or including</a> "
+"this element is %fieldname."
+msgstr ""
+"CKEditor : l'ID pour <a href=\"!excluding\">exclure ou inclure</a> cet "
+"élément est %fieldname."
+msgid "administer ckeditor"
+msgstr "administrer ckeditor"
+msgid "access ckeditor"
+msgstr "accéder à ckeditor"
+msgid "allow CKFinder file uploads"
+msgstr "autoriser les transferts de fichiers de CKFinder"
+msgid "CKEditor"
+msgstr "CKEditor"
+msgid "CKEditor Global Profile"
+msgstr "Profil global de CKEditor"
+msgid "Allow users to customize CKEditor appearance"
+msgstr "Autoriser les utilisateurs à personnaliser l'apparence de CKEditor"
+msgid "Always run security filters for CKEditor."
+msgstr "Toujours lancer les filtres de sécurité pour CKEditor."
+msgid "Run security filters only when CKEditor is set to start automatically."
+msgstr ""
+"Ne lancer les filtres de sécurité que lorsque CKEditor est "
+"paramétré pour démarrer automatiquement."
+msgid ""
+"Whether or not to show the disable/enable rich text editor toggle "
+"below the textarea. Works only if CKEditor is not running in a popup "
+"window (see below)."
+msgstr ""
+"Afficher ou non la bascule pour désactiver/activer l'éditeur de "
+"texte riche sous la zone de texte. Ne fonctionne que si CKEditor n'est "
+"pas lancé dans une fenêtre popup (voir ci-dessous)."
+msgid "Use CKEditor in a popup window"
+msgstr "Utiliser CKEditor dans une fenêtre popup"
+msgid "CKEditor default"
+msgstr "Défaut de CKEditor"
+msgid "Select manually"
+msgstr "Choisissez manuellement"
+msgid "Color module: base"
+msgstr "Module de couleur : base"
+msgid "Color module: top"
+msgstr "Module de couleur : haut"
+msgid "Color module: bottom"
+msgstr "Module de couleur : bas"
+msgid "The language for the CKEditor interface."
+msgstr "La langue de l'interface de CKEditor."
+msgid "Use theme ckeditor.styles.js"
+msgstr "Utiliser le thème ckeditor.styles.js"
+msgid "Define path to ckeditor.styles.js"
+msgstr "Définir le chemin de ckeditor.styles.js"
+msgid "CKFinder"
+msgstr "CKFinder"
+msgid "Select the file browser that you would like to use to upload files."
+msgstr ""
+"Choisissez l'explorateur de fichiers que vous voulez utiliser pour "
+"transférer des fichiers."
+msgid "Select the file browser that you would like to use to upload images."
+msgstr ""
+"Choisissez l'explorateur de fichiers que vous voulez utiliser pour "
+"transférer des images."
+msgid ""
+"Include mode selected, but no paths given. Enter at least one path "
+"where CKEditor should appear."
+msgstr ""
+"Inclure le mode choisi, mais pas les chemins donnés. Entrez au moins "
+"un chemin où CKEditor devrait apparaître."
+msgid "Path to CKEditor"
+msgstr "Chemin de CKEditor"
+msgid "Local path to CKEditor"
+msgstr "Chemin local de CKEditor"
+msgid ""
+"The path relative to the location of the private directory where "
+"CKEditor should store uploaded files."
+msgstr ""
+"Le chemin relatif à l'emplacement du répertoire privé où CKEditor "
+"devrait stocker les fichiers transférés."
+msgid "for developers only"
+msgstr "pour développeurs seulement"
+msgid "CKEditor homepage"
+msgstr "Page d'accueil de CKEditor"
+msgid "Take a look at !listlink when installing CKEditor."
+msgstr "Jetez un œil à !listlink pour installer CKEditor."
+msgid "Choose a CKEditor skin."
+msgstr "Choisir un habillage CKEditor."
+msgid "Insert Teaser Break"
+msgstr "Insérer une séparation de résumé"
+msgid "Insert Page Break"
+msgstr "Insérer un saut de page"
+msgid ""
+"The document already contains a teaser break. Do you want to proceed "
+"by removing it first?"
+msgstr ""
+"Le document contient déjà une séparation de résumé. Voulez-vous "
+"continuer en la retirant d'abord ?"
+msgid "the list of common problems"
+msgstr "la liste des problèmes courants"
+msgid "Embed Media Dialog"
+msgstr "Inclure le Dialogue Média"
+msgid "Embed media code"
+msgstr "Inclure le code média"
+msgid "Paste embed code here"
+msgstr "Coller le code inclus ici"
+msgid "@data"
+msgstr "@data"
+msgid "Text formats"
+msgstr "Formats de texte"
+msgid "TinyBrowser"
+msgstr "Mini-navigateur"
+msgid "CSS file path"
+msgstr "Chemin vers le fichier CSS"
+msgid "Get from current locale (default)"
+msgstr "Récupérer les paramètres régionaux actuels (par défaut)"
+msgid "Left-To-Right"
+msgstr "De gauche à droite"
+msgid "Right-To-Left"
+msgstr "De droite à gauche"
+msgid "Use custom formatting options"
+msgstr "Utiliser les options de mise en forme personnalisées."
+msgid "Custom formatting options"
+msgstr "Options de mise en forme personnalisées"
+msgid ""
+"Available placeholders:!h - host name (!host).!t - path to theme "
+"(!theme)."
+msgstr ""
+"Espaces réservés disponibles : !h - nom d'hôte (!host).!t - chemin "
+"du thème (!theme)."
+msgid "CKFinder settings"
+msgstr "Paramètres de CKFinder"
+msgid "Force pasting as plain text"
+msgstr "Forcer le collage comme texte simple"
+msgid ""
+"If enabled, HTML content will be automatically changed to plain text "
+"when pasting."
+msgstr ""
+"Si activé, le contenu HTML sera converti automatiquement en texte "
+"simple lors du collage."
+msgid ""
+"If enabled, turns on SCAYT (Spell Check As You Type) automatically "
+"after loading the editor."
+msgstr ""
+"Si activé, démarre SCAYT (Spell Check As You Type) automatiquement "
+"après le chargement de l'éditeur."
+msgid "elFinder"
+msgstr "elFinder"
+msgid "Administer CKEditor access"
+msgstr "Administrer l'accès à CKEditor"
+msgid "Customize CKEditor appearance"
+msgstr "Personnaliser l'apparence de CKEditor"
+msgid "CKFinder access"
+msgstr "Accès à CKFinder"
+msgid "README.txt"
+msgstr "README.txt"
+msgid ""
+"Whether or not to show the disable/enable rich text editor toggle "
+"below the textarea."
+msgstr ""
+"Afficher ou non la bascule d'activation/désactivation de l'éditeur "
+"de texte riche en dessous de la zone de texte."
+msgid "Useful links: !ckeditorlink | !devguidelink | !userguidelink."
+msgstr "Liens utiles : !ckeditorlink | !devguidelink | !userguidelink."
+msgid "User's Guide"
+msgstr "Guide de l'utilisateur"
+msgid "Administration panel"
+msgstr "Panneau d'administration"
+msgid "Content Authoring"
+msgstr "Informations de rédaction du contenu"
+msgid "!data"
+msgstr "!data"
+msgid "CKEditor profiles"
+msgstr "Profils de CKEditor"
+msgid "Disable WYSIWYG module"
+msgstr "Désactiver le module WYSIWYG"
+msgid "Disable WYSIWYG module."
+msgstr "Désactiver le module WYSIWYG."
+msgid "click here to disable"
+msgstr "cliquer ici pour désactiver"
+msgid "HTML Entities"
+msgstr "Entités HTML"
+msgid "Convert all applicable characters to HTML entities."
+msgstr "Convertir tous les caractères concernés en entités HTML."
+msgid ""
+"Path structure: "
+"<strong>theme_name:content_type@path.element_id</strong>"
+msgstr ""
+"Structure du chemin : "
+"<strong>nom_du_thème:type_de_contenu@chemin.id_élément</strong>"
+msgid ""
+"Content type and theme name is optional. You may even specify only "
+"path or field id."
+msgstr ""
+"Le type de contenu et le nom du thème sont optionnels. Vous pouvez "
+"même uniquement préciser un chemin ou identifiant de champ"
+msgid ""
+"matches all fields of type \"blog\" called edit-body in garland theme, "
+"on any page."
+msgstr ""
+"correspond à tous les champs de type \"blog\" appelés edit-body dans "
+"le thème Garland, quelle que soit la page."
+msgid "Help page"
+msgstr "Page d'aide"
+msgid "Allow users to change CKEditor settings."
+msgstr "Autoriser les utilisateurs à changer les paramètres de CKEditor."
+msgid "Allow users to customize CKEditor appearance."
+msgstr "Autoriser les utilisateurs à personnaliser l'apparence de CKEditor."
+msgid "Allow users to use CKFinder."
+msgstr "Autoriser les utilisateurs à utiliser CKFinder."
+msgid "Disable the WYSIWYG module"
+msgstr "Désactiver le module WYSIWYG"
+msgid "Add a new CKEditor profile"
+msgstr "Ajouter un nouveau profil CKEditor"
+msgid "Clone the CKEditor profile"
+msgstr "Cloner le profil CKEditor"
+msgid "Edit the CKEditor profile"
+msgstr "Modifier le profil CKEditor"
+msgid "Delete the CKEditor profile"
+msgstr "Supprimer le profil CKEditor"
+msgid "Add the CKEditor Global profile"
+msgstr "Ajouter le profil global de CKEditor"
+msgid "Edit the CKEditor Global profile"
+msgstr "Modifier le profil global de CKEditor"
+msgid "CKEditor was not found in <code>%sourcepath</code>."
+msgstr "CKEditor n'a pas été trouvé dans  <code>%sourcepath</code>."
+msgid "CKEditor version could not be determined."
+msgstr "La version de CKEditor n'a pas pu être déterminée."
+msgid ""
+"You are using a feature that requires <code>$cookie_domain</code> to "
+"be set, but it is not set in your <code>settings.php</code> file "
+"(CKFinder is enabled in the !profile profile)."
+msgstr ""
+"Vous utilisez une fonction qui requiert la définition de "
+"<code>$cookie_domain</code>, mais il n'est pas défini dans votre "
+"fichier <code>settings.php</code> (CKFinder est activé dans le profil "
+"!profile)."
+msgid ""
+"Some features are disabled because you are using an older version of "
+"CKEditor. Please upgrade to CKEditor 3.1 (or higher)."
+msgstr ""
+"Certaines fonctions sont désactivées car vous utilisez une ancienne "
+"version de CKEditor. Veuillez mettre à jour vers CKEditor 3.1 (ou "
+"supérieur)."
+msgid "CKEditor needs read permission to the <code>!config</code> file."
+msgstr ""
+"CKEditor nécessite le droit en lecture sur le fichier "
+"<code>!config</code>."
+msgid ""
+"You are using a feature that requires manual integration in the "
+"<code>config.php</code> file. Please read the \"Installing CKFinder\" "
+"section in the <code>!readme</code> file carefully and add a "
+"<code>require_once ...</code> statement to the <code>%ckfconfig</code> "
+"file."
+msgstr ""
+"Vous utilisez une fonction qui nécessite une insertion manuelle dans "
+"le fichier <code>config.php</code>. Veuillez lire attentivement la "
+"section \"Install CKFinder' dans le fichier <code>!readme</code> et "
+"ajoutez l'appel à <code>require_once ...</code> dans le fichier  "
+"<code>%ckfconfig</code>."
+msgid ""
+"You are using a feature that requires manual integration in the "
+"<code>config.php</code> file. You have added a <code>require_once "
+"...</code> statement to the <code>%ckfconfig</code> file, but in the "
+"wrong line."
+msgstr ""
+"Vous utilisez une fonction qui nécessite une insertion manuelle dans "
+"le fichier <code>config.php</code>. Vous avez ajouté une définition "
+"de <code>require_once ...</code> dans le fichier "
+"<code>%ckfconfig</code>, mais à la mauvaise ligne."
+msgid ""
+"Enables CKEditor (WYSIWYG HTML editor) for use instead of plain text "
+"fields."
+msgstr ""
+"Active CKEditor (éditeur HTML WYSIWYG) pour l'utiliser à la place "
+"des champs de texte brut."
+msgid ""
+"No CKEditor profiles found. Right now nobody is able to use CKEditor. "
+"Create a new profile below."
+msgstr ""
+"Aucun profil CKEditor n'a été trouvé. Actuellement, personne ne "
+"peut utiliser CKEditor. Créez un nouveau profil ci-dessous."
+msgid "Create a new profile"
+msgstr "Créer un nouveau profil"
+msgid "The global profile already exists. Only one global profile is allowed."
+msgstr "Le profil global existe déjà. Un seul profil global est autorisé."
+msgid "Create a global profile"
+msgstr "Créer un profil global"
+msgid "Update the global profile"
+msgstr "Mettre à jour le profil global"
+msgid "Path to the CKEditor plugins directory"
+msgstr "Chemin vers le répertoire de plugins de CKEditor"
+msgid "Path to the CKEditor plugins directory relative to the document root."
+msgstr ""
+"Chemin vers le dossier de plugins CKEditor relatif à la racine de "
+"l'installation Drupal."
+msgid "Local path to the CKEditor plugins directory"
+msgstr "Chemin local vers le dossier de plugins de CKEditor"
+msgid "Enable access to files located in the private folder"
+msgstr "Activer l'accès vers les fichiers situés dans le dossier privé"
+msgid "Location of files uploaded with CKEditor to the private folder"
+msgstr ""
+"Emplacement des fichiers transférés avec CKEditor vers le dossier "
+"privé"
+msgid "Allow the user to select between paths and internal links"
+msgstr "Autoriser l'utilisateur à choisir entre chemins et liens internes"
+msgid ""
+"With the !plink extension it is possible to use internal: links. By "
+"default the !link extension is linking to nodes using paths."
+msgstr ""
+"Avec l'extension !plink, il est possible d'utiliser des liens "
+"internes. Par défaut, l'extension !link pointe vers des nœuds "
+"utilisant des chemins."
+msgid "The CKEditor global profile was saved."
+msgstr "Le profil global de CKEditor a été sauvegardé."
+msgid ""
+"Enter a name for this profile. This name is only visible within the "
+"CKEditor administration page."
+msgstr ""
+"Saisir le nom de ce profil. Ce nom n'est visible que sur la page "
+"d'administration de CKEditor."
+msgid ""
+"The CKEditor security system protects you from executing malicious "
+"code that is already in your database. In plain textareas database "
+"content is harmless because it is not executed, but the CKEditor "
+"WYSIWYG editor interprets HTML like a web browser and thus the content "
+"needs to be filtered before it is loaded."
+msgstr ""
+"Le système de sécurité de CKEditor vous protège de l'exécution de "
+"code malicieux qui serait déjà dans votre base de données. Dans les "
+"zones de texte brut le contenu de la base de données est inoffensif "
+"car il n'est pas exécuté, en revanche l'editeur WYSIWYG CKEditor "
+"interprète le HTML comme un navigateur web, le contenu doit donc "
+"être filtré avant d'être chargé."
+msgid ""
+"Please choose all filters that protect your content (probably not all "
+"filters listed below are security filters)."
+msgstr ""
+"Veuillez choisir tous les filtres qui protègent vos contenus (tous "
+"les filtres listés ci-dessous ne sont probablement pas des filtres de "
+"sécurité)."
+msgid ""
+"There are two ways of starting CKEditor: automatically and manually "
+"(via toggle). If you decide to apply security filters only when "
+"CKEditor starts automatically, you will not be protected when toggling "
+"manually from plain textarea to CKEditor. Choose this option only if "
+"you can detect various attacks (mainly XSS) by yourself just by "
+"looking at the HTML code."
+msgstr ""
+"Il y a deux manières de démarrer CKEditor : automatiquement et "
+"manuellement (par une bascule). Si vous décidez d'appliquer des "
+"filtres de sécurité seulement quand CKEditor démarre "
+"automatiquement, vous ne serez pas protégé lors de la bascule "
+"manuelle d'un texte brut vers CKEditor. Choisissez cette option "
+"seulement si vous pouvez détecter par vous-même les différentes "
+"attaques (principalement XSS) seulement en regardant le code HTML."
+msgid ""
+"Default editor state. If disabled, the rich text editor may still be "
+"enabled by using toggle."
+msgstr ""
+"Etat par défaut de l'éditeur. Si désactivé, l'éditeur de texte "
+"riche peut toujours être activé en utilisant le lien "
+"activer/désactiver."
+msgid "Show the disable/enable rich text editor toggle"
+msgstr "Afficher le lien activer/désactiver de l'éditeur de texte riche"
+msgid "User interface color"
+msgstr "Couleur de l'interface utilisateur"
+msgid "Used buttons"
+msgstr "Boutons utilisés"
+msgid "Currently used buttons"
+msgstr "Boutons utilisés actuellement"
+msgid "All available buttons"
+msgstr "Tous les boutons disponibles"
+msgid "Choose the plugins that you want to enable in CKEditor."
+msgstr "Choisissez les plugins que vous souhaitez activer dans CKEditor."
+msgid "Toolbar state on startup"
+msgstr "État de la barre d'outil au démarrage"
+msgid "The toolbar will start in an expanded or collapsed state."
+msgstr "La barre d'outils démarrera dans un état déplié ou replié."
+msgid "Editor interface width in pixels or percent. Examples: 400, 100%."
+msgstr ""
+"Largeur de l'interface de l'éditeur en pixels ou pourcentages. "
+"Exemples : 400, 100%."
+msgid "The language for the CKEditor user interface."
+msgstr "La langue de l'interface utilisateur de CKEditor."
+msgid "Automatically detect the user language."
+msgstr "Détecter automatiquement la langue de l'utilisateur."
+msgid "Language direction"
+msgstr "Sens de l'écriture"
+msgid ""
+"Set which tag should be used by CKEditor when the <em>Enter</em> key "
+"is pressed."
+msgstr ""
+"Définir la balise à utiliser par CKEditor quand la touche "
+"<em>Entée</em> est pressée."
+msgid "Shift+Enter mode"
+msgstr "Mode Majuscule+Entrée"
+msgid ""
+"Set which tag should be used by CKEditor when the <em>Shift+Enter</em> "
+"key combination is pressed."
+msgstr ""
+"Définir la balise à utiliser par CKEditor quand la combinaison de "
+"touches <em>Maj.+Entrée</em> est pressée."
+msgid "Indent the element contents."
+msgstr "Indenter les contenus de l'élément."
+msgid "Break line before the opening tag."
+msgstr "Retour à la ligne avant la balise d'ouverture."
+msgid "Break line after the opening tag."
+msgstr "Retour à la ligne après la balise d'ouverture."
+msgid "Break line before the closing tag."
+msgstr "Retour à la ligne avant la balise de fermeture."
+msgid "Break line after the closing tag."
+msgstr "Retour à la ligne apres la balise de fermeture."
+msgid "Indent the <code>&lt;pre&gt;</code> element contents."
+msgstr "Indenter les contenus de l'élément <code>&lt;pre&gt;</code>."
+msgid "Same as in the Link dialog window"
+msgstr "Identique à celui de la fenêtre de dialogue Lien"
+msgid "File browser type (Link dialog window)"
+msgstr "Type de navigateur de fichier (fenêtre de dialogue Lien)"
+msgid "File browser type (Image dialog window)"
+msgstr "Type de navigateur (fenêtre de dialogue Image)"
+msgid "File browser type (Flash dialog window)"
+msgstr "Type de navigateur (fenêtre de dialogue Flash)"
+msgid ""
+"Select the file browser that you would like to use to upload Flash "
+"movies."
+msgstr ""
+"Sélectionner le navigateur de fichiers que vous aimeriez utiliser "
+"pour transférer des animations Flash."
+msgid ""
+"The path to the local directory (on the server) which points to the "
+"path defined above. If left empty, CKEditor will try to discover the "
+"right path."
+msgstr ""
+"Le chemin vers le dossier local (sur le serveur) pointant vers le "
+"chemin défini ci-dessus. Si laissé vide, CKEditor tentera de deviner "
+"le bon chemin."
+msgid "Loading method"
+msgstr "Méthode de chargement"
+msgid "Loading timeout"
+msgstr "Temps d'attente du chargement"
+msgid "Spellchecker"
+msgstr "Correcteur d'orthographe"
+msgid "Custom JavaScript configuration"
+msgstr "Configuration JavaScript personnalisée"
+msgid ""
+"Enter a valid profile name. Only alphanumeric and underscore "
+"characters are allowed."
+msgstr ""
+"Saisir un nom de profil valide. Seuls les caractères alphanumériques "
+"et tirets bas sont autorisés."
+msgid "Enter a valid width value. Examples: 400, 100%."
+msgstr "Entrer une valeur valide. Exemples : 400, 100%."
+msgid ""
+"The CSS path is not empty. Please set the <strong>Editor CSS</strong> "
+"option to the <strong>Define CSS</strong> mode."
+msgstr ""
+"Le chemin CSS n'est pas vide. Veuillez définir l'option <strong>CSS "
+"de l'éditeur</strong> du mode <strong>Définir la CSS</strong>."
+msgid "Double quotes are not allowed in the CSS path."
+msgstr "Les guillemets ne sont pas autorisés dans le chemin CSS."
+msgid "Enter a valid CSS path, do not surround it with quotes."
+msgstr "Entrer un chemin CSS valide, ne l'entourez pas de guillemets."
+msgid ""
+"The path to predefined styles is not empty. Please set the "
+"<strong>Predefined styles</strong> option to the <strong>Define path "
+"to ckeditor.styles.js</strong> mode."
+msgstr ""
+"Le chemin vers les styles prédéfinis n'est pas vide. Veuillez "
+"définir l'opion <strong>Styles prédéfinis</strong> au mode "
+"<strong>Définir le chemin vers ckeditor.styles.js</strong>."
+msgid "Double quotes are not allowed in the styles path."
+msgstr "Les guillemets ne sont pas autorisés dans le chemin vers les styles."
+msgid "Enter a valid styles path, do not surround it with quotes."
+msgstr "Entrer un chemin vers les styles, ne l'entourez pas de guillemets."
+msgid ""
+"Enter a valid, semicolon-separated list of HTML font formats (no "
+"semicolon at the end of the list is expected)."
+msgstr ""
+"Saisir une liste valide séparée par des points-virgules de formats "
+"de police de caractères HTML (ne pas insérer de point-virgule à la "
+"fin de la liste)."
+msgid "The path to uploaded files is required."
+msgstr "Le chemin vers les fichiers transférés est requis."
+msgid "An absolute path to uploaded files is required."
+msgstr "Un chemin absolu vers les fichiers transférés est requis."
+msgid "Set a valid loading method."
+msgstr "Définir une méthode valide de chargement."
+msgid "Enter a valid loading timeout in seconds."
+msgstr "Saisir un temps d'attente de chargement valide, en secondes."
+msgid "Enter a valid toolbar configuration."
+msgstr "Saisir une configuration de barre d'outils valide."
+msgid "Your CKEditor profile was updated."
+msgstr "Votre profil CKEditor a été mis à jour."
+msgid "Your CKEditor profile was created."
+msgstr "Votre profil CKEditor a été créé."
+msgid ""
+"Are you sure that you want to delete the CKEditor profile "
+"<strong>%profile</strong>?"
+msgstr ""
+"Êtes-vous sûr(e) de vouloir supprimer le profil CKEditor "
+"<strong>%profile</strong> ?"
+msgid "The CKEditor profile was deleted."
+msgstr "Le profil CKEditor a été supprimé."
+msgid "The WYSIWYG module is disabled."
+msgstr "Le module WYSIWYG est désactivé."
+msgid "Support for the CKEditor SWF module"
+msgstr "Support pour le module CKEditor SWF"
+msgid "Support for the CKEditor Link module"
+msgstr "Support pour le module CKEditor Link"
+msgid "Support for the Linkit module <em>(buttons: Linkit)</em>"
+msgstr "Support pour le module Linkit <em>(boutons : Linkit)</em>"
+msgid "Table Resize plugin"
+msgstr "Plugin de redimensionnement des tableaux"
+msgid "Auto Grow plugin"
+msgstr "Plugin de redimensionnement automatique"
+msgid ""
+"Enables the use of CKEditor (a rich text WYSIWYG editor) instead of "
+"plain text fields."
+msgstr ""
+"Active l'utilisation de CKEditor (un éditeur de texte riche WYSIWYG) "
+"à la place de champs de texte brut."
+msgid ""
+"The Global Profile allows you to define settings that are common for "
+"all profiles. Values defined in other profiles will be appended to the "
+"global configuration. This way you can avoid repeating some of the "
+"settings that are usually the same for each profile."
+msgstr ""
+"Le profil global vous permet de définir les paramètres qui sont "
+"communs à tous les profils. Les valeurs définies dans les autres "
+"profils d'autres ajoutées à la configuration globale. De cette "
+"façon vous pouvez éviter de répéter des paramètres qui sont "
+"généralement les mêmes pour chaque profil."
+msgid ""
+"The CKEditor module allows Drupal to replace textarea fields with "
+"CKEditor. CKEditor is an online rich text editor that can be embedded "
+"inside web pages. It is a !wysiwyg editor which means that the text "
+"edited in it looks as similar as possible to the results end users "
+"will see after the document gets published. It brings to the Web "
+"popular editing features found in desktop word processors such as "
+"Microsoft Word and OpenOffice.org Writer. CKEditor is truly "
+"lightweight and does not require any kind of installation on the "
+"client computer."
+msgstr ""
+"Le module CKEditor permet de remplacer des champs de zone de texte. "
+"CKEditor est un éditeur de texte riche en ligne qui peut être "
+"incorporé à l'intérieur de pages web. Il s'agit d'un éditeur "
+"!wysiwyg ce qui signifie que le texte édité ressemble le plus "
+"possible au résultat attendu par les utilisateurs après publication. "
+"Il apporte au Web les fonctionnalités d'édition populaires dans les "
+"traitements de texte comme Microsoft Word et OpenOffice.org Writer. "
+"CKEditor est vraiment léger et ne nécessite aucun type "
+"d'installation sur l'ordinateur client."
+msgid "CKEditor website"
+msgstr "Site web de CKEditor"
+msgid ""
+"Profiles are linked with input format types. A CKEditor profile "
+"defines which buttons are available in the editor, how the editor is "
+"displayed, and a few other editor functions. The Global Profile stores "
+"some general information about CKEditor."
+msgstr ""
+"Les profils sont liés à des types de format de saisie. Un profil "
+"CKEditor définit quels boutons sont disponibles dans l'éditeur, "
+"comment l'éditeur est affiché, et quelques autres fonctions "
+"d'édition. Le profil global stocke des informations générales sur "
+"CKEditor."
+msgid ""
+"For the Rich Text Editing to work you also need to configure your "
+"!filterlink for the users that may access Rich Text Editing. Either "
+"grant those users <strong>Full HTML</strong> access or use the "
+"following list of tags in the HTML filter:"
+msgstr ""
+"Afin que fonctionne l'Edition de Texte Riche, vous devez aussi "
+"configurer votre !filterlink pour les utilisateurs devant accéder à "
+"cette fonctionnalité. Soit vous autorisez l'accès à l'<strong>HTML "
+"Complet</strong> à ces utilisateurs, soit vous utilisez la liste de "
+"balises suivante dans le filtre HTML :"
+msgid ""
+"To have better control over line breaks, you should disable the "
+"<strong>%settingname</strong> setting in the chosen Text format "
+"(recommended)."
+msgstr ""
+"Pour avoir un meilleur contrôle sur les retours à la ligne, vous "
+"devez désactiver le réglage <strong>%settingname</strong> dans le "
+"format de texte choisi (recommandé)."
+msgid ""
+"If you are looking for more information, have any trouble with the "
+"configuration, or found an issue with the CKEditor module, please "
+"visit the !officiallink."
+msgstr ""
+"Si vous cherchez plus d'informations, avez un problème avec la "
+"configuration ou rencontrez une erreur avec le module CKEditor, "
+"veuillez vous rendre sur !officiallink."
+msgid ""
+"More information about how to customize CKEditor for your theme can be "
+"found !herelink."
+msgstr ""
+"Plus d'informations sur comment personnaliser CKEditor pour votre "
+"thème peuvent être trouvées sur !herelink."
+msgid "By using !ckfinder (commercial), an advanced Ajax file manager."
+msgstr ""
+"En utilisant !ckfinder (commercial), un gestionnaire évolué de "
+"fichiers en Ajax."
+msgid "By using a dedicated module like !imcelink."
+msgstr "En utilisant un module dédié tel que !imcelink."
+msgid ""
+"Should rich text editing be enabled or disabled by default in textarea "
+"fields? If disabled, the rich text editor may still be enabled by "
+"using toggle."
+msgstr ""
+"L'édition de texte doit-elle être activée par défaut dans les "
+"champs de texte ? Si désactivér, l'éditeur de texte riche peut "
+"toujours être activé en utilisant la bascule."
+msgid "Editor interface width in pixels or percent."
+msgstr "Largeur de l'interface de l'éditeur en pixels ou en pourcentage."
+msgid "Enter a valid width value."
+msgstr "Saisir une valeur valide pour la largeur."
+msgid "Content can only be inserted into CKEditor in the WYSIWYG mode."
+msgstr ""
+"Le contenu peut seulement être inséré dans CKEditor en mode "
+"WYSIWYG."
+msgid "Disable the WYSIWYG module."
+msgstr "Désactiver le module WYSIWYG."
+msgid "Get settings for the CKEditor instance"
+msgstr "Obtenir les paramètres de l'instance CKEditor"
+msgid ""
+"Some features are disabled because you are using an older version of "
+"CKEditor. Please upgrade the editor to CKEditor 3.1 (or higher)."
+msgstr ""
+"Certaines options sont désactivées parce que vous utilisez une "
+"ancienne version de CKEditor. Veuillez mettre à jour  CKEditor vers "
+"la version 3.1 (ou plus récente)."
+msgid ""
+"The WYSIWYG module was detected. Using both modules at the same time "
+"may cause problems. It is recommended to turn the WYSIWYG module off "
+"(!wysiwygdisablelink)."
+msgstr ""
+"Le module WYSIWYG a été détecté. Utiliser les deux modules en "
+"même temps peut engendrer des problèmes. Il est recommandé de "
+"désactiver le module WYSISYG (!wysiwygdisablelink)."
+msgid ""
+"Enter the paths to the textarea fields for which you want to enable or "
+"disable CKEditor."
+msgstr ""
+"Saisir les chemins des zones de texte sur lesquelles vous voulez "
+"activer ou désactiver CKEditor."
+msgid ""
+"Content type and theme name is optional. You may even just specify the "
+"path or the field ID."
+msgstr ""
+"Le type de contenu et le nom du thème sont optionnels. Vous devez "
+"simplement spécifier le chemin ou l'identifiant du champ."
+msgid ""
+"matches all fields of type <code>blog</code> called "
+"<code>edit-body</code> in the garland theme, on any page."
+msgstr ""
+"correspond à tous les champs de type <code>blog</code> nommés "
+"<code>edit-body</code> du thème garland, sur n'importe quelle page."
+msgid ""
+"matches fields starting with <code>edit-user-</code> on pages starting "
+"with <code>node/add/</code>"
+msgstr ""
+"identifie les champs commençant par <code>edit-user</code> sur les "
+"pages commençant par <code>node/add/</code>"
+msgid ""
+"Enter the paths to the textarea fields for which you want to force the "
+"simplified toolbar."
+msgstr ""
+"Saisir les chemins des zones de texte sur lesquelles vous voulez "
+"forcer la barre d'outils simplifiée."
+msgid ""
+"Default editor state. If disabled, the rich text editor may still be "
+"enabled by using toggle or popup window."
+msgstr ""
+"État par défaut de l'éditeur. Si désactivé, l'éditeur de texte "
+"riche peut toujours être activé en utilisant la bascule ou la popup."
+msgid ""
+"If this option is enabled, a link to a popup window will be used "
+"instead of a textarea replace."
+msgstr ""
+"Si cette option est activée, un lien vers une popup sera utilisé à "
+"la place du remplacement de la zone de texte."
+msgid "If CKEditor is enabled by default, the popup window must be disabled."
+msgstr "Si CKEditor est activé par défaut, la popup doit être désactivée."
+msgid "If toggle is enabled, the popup window must be disabled."
+msgstr "Si la bascule est activée, la popup doit être désactivée."
+msgid ""
+"The following list contains the ID-name pairs of roles with access to "
+"CKEditor:"
+msgstr ""
+"La liste suivante contient les paires identifiant-nom des rôles ayant "
+"un accès à CKEditor :"
+msgid ""
+"This only applies to users with the \"administer ckeditor\" "
+"permissions."
+msgstr ""
+"Ceci ne s'applique qu'aux utilisateurs ayant le droit \"administrer "
+"ckeditor\"."
+msgid "The CKEditor Global Profile was saved."
+msgstr "Le Profil Général CKEditor a été enregistré."
+msgid ""
+"Rule %rule is ambiguous: please append .* if %rule is a path or "
+"prepend *. if %rule is a field."
+msgstr ""
+"La règle %rule est ambiguë : veuillez mettre en suffixe .* si %rule "
+"est un chemin ou *. en préfixe si %rule est un champ."
+msgid ""
+"Please note that only users with the \"%accesspermission\" "
+"!permissionlink will be able to use CKEditor."
+msgstr ""
+"Veuillez noter que seuls les utilisateurs avec les \"!permissionlink "
+"%accesspermission\"  pourront utiliser CKEditor."
+msgid ""
+"To have better control over line breaks, you should disable the "
+"<strong>%settingname</strong> setting in the chosen filter "
+"(recommended)."
+msgstr ""
+"Pour mieux contrôler les sauts de ligne, vous devriez désactiver le "
+"paramètre <strong>%settingname</strong> dans le filtre choisi "
+"(recommandé)."
+msgid "Defining field inclusions/exclusions"
+msgstr "Définition du champ inclure/exclure"
+msgid "By using a dedicated module like !imcelink, !iblink or !webfmlink."
+msgstr "En utilisant un module dédié comme !imcelink, !iblink ou !webfmlink."
+msgid ""
+"If you have CKEditor already installed, edit the "
+"<strong>!editg</strong> and update the CKEditor path."
+msgstr ""
+"Si CKEditor est déjà installé, modifier <strong>!editg</strong> et "
+"mettre à jour le chemin vers CKEditor."
+msgid "Path to CKFinder"
+msgstr "Chemin vers CKFinder"
+msgid "Use toolbar Drag&Drop feature"
+msgstr "Utilisez la fonctionnalité glisser/déposer de la barre d'outils"
+msgid ""
+"When enabled, the toolbar can be built by using the drag-and-drop "
+"feature. Otherwise you will need to enter the toolbar configuration "
+"manually to the text box."
+msgstr ""
+"Lorsqu'activé, la barre d'outils peut être construite grâce à la "
+"fonctionnalité glisser/déposer. Sinon, vous devrez saisir la "
+"configuration manuellement dans le champ de texte."
+msgid "Choose the text formats where you want to load CKEditor."
+msgstr "Choisir les formats de texte pour lesquels charger CKEditor."
+msgid ""
+"All configuration options described in the !apidocs that cannot be "
+"easily changed in the administration area can be set in the "
+"<strong>Advanced Options</strong> section in the CKEditor profile."
+msgstr ""
+"Toutes les options de configuration décrites dans !apidocs qui ne "
+"peuvent pas être modifiées facilement dans la zone d'administration "
+"peuvent être paramétrées dans la section <strong>Options "
+"avancées</strong> dans le profil CKEditor."
+msgid ""
+"To start using CKEditor, first you need to grant permissions for use "
+"of CKEditor in the <strong>!adminpath</strong> section."
+msgstr ""
+"Pour démarrer avec CKEditor, vous devez d'abord en définir les "
+"permisssions dans la section <strong>!adminpath</strong>."
+msgid "/config.php"
+msgstr "/config.php"
+msgid "Checking for !filename or !file."
+msgstr "Recherche de !filename ou !file."
+msgid ""
+"The CKEditor component is not installed correctly. Please go to the "
+"!ckeditorlink in order to download the latest version. After that you "
+"must extract the files to the !ckeditorpath or !librarypath directory "
+"and make sure that the !ckeditorfile or !ckeditorlibrary file exists. "
+"Refer to the !readme file for more information."
+msgstr ""
+"Le composant CKEditor n’est pas installé correctement. Veuillez "
+"consulter !ckeditorlink afin de télécharger la dernière version. "
+"Ensuite, vous devez extraire les fichiers dans le répertoire "
+"!ckeditorpath ou !librarypath et vous assurer que le fichier "
+"!ckeditorfile ou !ckeditorlibrary existe. Pour plus d’information, "
+"consultez le fichier !readme."
+msgid "The global profile can not be found. Click here to !create."
+msgstr "Le profil global est introuvable. Cliquer ici pour !create."
+msgid ""
+"Choose the language direction used in the editing area. Even when "
+"CKEditor automatically detects the user language and adjusts its user "
+"interface, the editing area is not automatically changed into the LTR "
+"or RTL mode. To be able to type LTR (like English) and RTL (like "
+"Arabic, Hebrew, Persian) content at the same time, please make sure "
+"that the <strong>!bidiltr</strong> and <strong>!bidirtl</strong> "
+"buttons are enabled in the toolbar."
+msgstr ""
+"Choisir la direction de la langue utilisée dans la zone de "
+"rédaction. Même lorsque CKEditor détecte automatiquement la langue "
+"de l'utilisateur et ajuste l'interface utilisateur en conséquence, la "
+"zone de rédaction n'est pas automatiquement changée dans le mode LTR "
+"ou RTL. Pour pouvoir rédiger du contenu LTR (comme pour le français) "
+"et RTL (comme pour l'arabe, l'hébreu, le perse) en même temps, "
+"veuillez vous assurer que les boutons <strong>!bidiltr</strong> et "
+"<strong>!bidirtl</strong> sont activés dans la barre d'outils."
+msgid ""
+"Semicolon-separated list of HTML font formats. Allowed values are: "
+"!allowed_values"
+msgstr ""
+"Liste de formats de police de caractères HTML séparés par des "
+"points-virgules. Les valeurs autorisées sont : !allowed_values"
+msgid ""
+"Define the location of the !ckeditor_styles_js_file file. It is used "
+"by the <strong>Style</strong> drop-down list available in the default "
+"toolbar. Copy the !ckeditor_styles_js_path file into your theme "
+"directory (!theme) and adjust it to your needs."
+msgstr ""
+"Définir la location du fichier !ckeditor_styles_js_file. Il est "
+"utilisé par la liste déroulante <strong>Style</strong> disponible "
+"dans la barre d'outils par défaut. Copier le fichier "
+"!ckeditor_styles_js_path dans le répertoire de votre thème (!theme) "
+"et adaptez-le à vos besoins."
+msgid "Load !ckeditor_config_js from the theme path"
+msgstr "Charger !ckeditor_config_js à partir du chemin du thème"
+msgid ""
+"When enabled, the editor will try to load the !ckeditor_config_js file "
+"from the theme directory."
+msgstr ""
+"Lorsqu'activé, l'éditeur essayera de charger le fichier "
+"!ckeditor_config_js depuis le répertoire de thème."
+msgid "CKEditor documentation"
+msgstr "Documentation de CKEditor"
+msgid ""
+"See the !helppagelink for more information about defining field names. "
+"Take a look at the exclusion settings (above) for a short instruction."
+msgstr ""
+"Consulter le !helppagelink pour plus d'information sur la définition "
+"des noms de champ. Jeter un œil sur les paramètres d'exclusion "
+"(au-dessus) pour une brève instruction."
+msgid "Simplified toolbar"
+msgstr "Barre d'outils simplifiée"
+msgid ""
+"The path to CKEditor (the WYSIWYG rich text editor downloaded from "
+"!ckeditorcom) relative to the document root."
+msgstr ""
+"Le chemin vers CKEditor (l'éditeur de texte riche WYSIWYG "
+"téléchargé depuis !ckeditorcom) relatif à la racine de "
+"l'installation Drupal."
+msgid "ckeditor.com"
+msgstr "ckeditor.com"
+msgid ""
+"The path to the local directory (on the server) that points to the "
+"path defined above. Enter either an absolute server path or a path "
+"relative to the !indexphp file. If left empty, the CKEditor module "
+"will try to find the right path."
+msgstr ""
+"Le chemin du répertoire local (sur le serveur) qui pointe vers le "
+"chemin défini au-dessus. Saisir soit un chemin de serveur absolu ou "
+"un chemin relatif au fichier !indexphp. Si laissé vide, le module "
+"CKEditor essayera de trouver le chemin correct."
+msgid ""
+"The path to the local directory (on the server) that points to the "
+"path defined above. Enter either an absolute server path or a path "
+"relative to the !indexphp file. If left empty, the CKEditor module "
+"will try to find the right path.<br />Current path: !path"
+msgstr ""
+"Le chemin vers le répertoire local (sur le serveur) qui pointe vers "
+"le chemin défini ci-dessus. Saisir soit un chemin absolu soit un "
+"chemin relatif au fichier !indexphp. Si laissé vide, le module "
+"CKEditor essayera de trouver le bon chemin.<br />Chemin actuel : !path"
+msgid ""
+"The path to CKFinder (AJAX based file manager downloaded from "
+"!ckfindercom) relative to the document root."
+msgstr ""
+"Le chemin vers CKFinder (gestionnaire de fichiers basé sur AJAX et "
+"téléchargé à partir de !ckfindercom) relatif à la base du "
+"document."
+msgid ""
+"Available placeholders:!b &ndash; the base URL path of the Drupal "
+"installation (!base).!m &ndash; path where the CKEditor module is "
+"stored (!files).!l &ndash; path to the libraries directory (!library)."
+msgstr ""
+"Placeholders disponibles : !b &ndash; le chemin de base URL de "
+"l'installation Drupal (!base). !m &ndash; chemin où le module "
+"CKEditor est stocké (!files). !l &ndash; chemin vers le répertoire "
+"libraries (!library)."
+msgid ""
+"<strong>Use this option with care.</strong> If checked, CKEditor will "
+"allow anyone knowing the URL to view a file located inside of the "
+"private path (!private_path), but only if there is no information "
+"about the file in the Drupal database. If the path below is specified, "
+"anyone will have access only to that location."
+msgstr ""
+"<strong>Utiliser cette option avec prudence.</strong> Si "
+"selectionnée, CKEditor permettra à quiconque connaissant l'URL de "
+"voir un fichier situé dans le chemin privé (!private_path), mais "
+"uniquement s'il n'y a pas d'information sur le fichier dans la base de "
+"données Drupal. Si le chemin ci-dessous est spécifié, tout le monde "
+"y aura accès, mais seulement à cet emplacement."
+msgid "Location of files uploaded with CKEditor in  the private folder"
+msgstr ""
+"Emplacement des fichiers transférés avec CKEditor dans le "
+"répertoire privé"
+msgid "Available wildcard characters: !u &ndash; User ID.!n &ndash; Username"
+msgstr ""
+"Caractères de substitution autorisés : !u &ndash; User ID. !n "
+"&ndash; Username"
+msgid "Stylesheet Parser plugin"
+msgstr "Plugin d'analyseur syntaxique (parser) de feuille de style"
+msgid ""
+"CKEditor is highly configurable. The most commonly used features are "
+"listed below. You can also adjust CKEditor to your needs by changing "
+"the !ckeditor_module_config configuration file."
+msgstr ""
+"CKEditor est très configurable. Les fonctionnalités les plus "
+"utilisées sont listées ci-dessous. Vous pouvez également ajuster "
+"CKEditor à vos besoins en changeant le fichier de configuration "
+"!ckeditor_module_config."
+msgid ""
+"It is recommended to not edit the !ckeditor_config_file "
+"(!ckeditor_config_path) configuration file that is distributed with "
+"CKEditor, because you may overwrite it accidentally when you update "
+"the editor."
+msgstr ""
+"Il est recommandé de ne pas modifier le fichier de configuration "
+"!ckeditor_config_file (!ckeditor_config_path) qui est distribué avec "
+"CKEditor, car vous risquez de l'écraser quand vous faites une mise à "
+"jour de l'éditeur."
+msgid ""
+"<strong>Note:</strong> be careful when granting users access to create "
+"tags like %iframe. <br />If you are going to use CKEditor with the "
+"<strong>Filtered HTML</strong> input format, please read  the "
+"\"Setting up filters\" section in the !readme file."
+msgstr ""
+"<strong>Note :</strong> soyez prudent lors de l'attribution aux "
+"utilisateurs du droit de créer des balises comme %iframe. <br />Si "
+"vous allez utiliser CKEditor avec le format de saisie <strong>HTML "
+"Filtré</strong>, veuillez lire la section \"Configurer les filtres\" "
+"dans le fichier !readme."
+msgid ""
+"Next, you need to define the list of exceptions. This list follows a "
+"specific syntax: the path to a field is defined by giving the content "
+"type followed by the <code>@</code> character, specifying the path "
+"followed by a dot and finally appending the field name at the end. You "
+"may decide to skip the content type. The !fieldname field on the "
+"!pathname page would thus be addressed as !result. You can use "
+"wildcards <code>*</code> and <code>?</code> anywhere in this line. If "
+"you have trouble with the field name that contains a dot, you can "
+"escape it with a backslash character (<code>\\</code>)."
+msgstr ""
+"Ensuite, vous devez définir la liste des exceptions. Cette liste suit "
+"une syntaxe spécifique : le chemin vers un champ est défini en "
+"donnant le type de contenu suivi par le caractère <code>@</code>, en "
+"spécifiant le chemin suivi par un point et finalement en ajoutant le "
+"nom du champ à la fin. Vous pouvez décider d'omettre le type de "
+"contenu. Le champ !fieldname sur la page !pathname sera ainsi nommé "
+"en tant que !result. Vous pouvez utiliser des caractères de "
+"substitution <code>*</code> et <code>?</code> n'importe où sur cette "
+"ligne. Si vous avez un problème avec le nom du champ  qui contient un "
+"point, vous pouvez l'échapper avec un caractère anti-slash "
+"(<code>\\</code>)."
+msgid "ckfinder.com"
+msgstr "ckfinder.com"
+msgid "Available wildcard characters:!u &ndash; User ID.!n &ndash; Username"
+msgstr ""
+"Caractères de substitution disponibles : !u &ndash; Identifiant "
+"utilisateur. !n &ndash; Nom d'utilisateur"
+msgid "Load sample toolbar: !toolbars"
+msgstr "Charger la barre d'outils d'exemple : !toolbars"
+msgid ""
+"Enter the path to the CSS file (Example: !example1) or a list of CSS "
+"files separated with a comma (Example: !example2). Make sure you "
+"select the !title_define_css option above."
+msgstr ""
+"Saisir le chemin vers le fichier CSS (exemple : !example1) ou une "
+"liste de fichiers CSS séparés par une virgule (exemple : !example2). "
+"Assurez-vous de sélectionner l'option !title_define_css au-dessus."
+msgid ""
+"Available placeholders:!h &ndash; host name (!host).!t &ndash; path to "
+"theme (!theme)."
+msgstr ""
+"Placeholders disponibles : !h &ndash; nom d'hôte (!host). !t &ndash; "
+"chemin vers le thème (!theme)."
+msgid ""
+"Enter the path to a file with predefined styles (Example: !example1). "
+"Make sure you select the !style_define_path option above."
+msgstr ""
+"Saisir le chemin d'un fichier avec des styles prédéfinis (Exemple : "
+"!example1). Assurez-vous de sélectionner l'option ci-dessus "
+"!style_define_path."
+msgid ""
+"Available placeholders:!h &ndash; host name (!host).!t &ndash; path to "
+"theme (!theme).!m &ndash; path to the CKEditor module (!module)."
+msgstr ""
+"Paramètres de substitution disponibles : !h &ndash; nom d'hôte "
+"(!host).!t &ndash; chemin du thème (!theme).!m &ndash; chemin du "
+"module CKEditor (!module)."
+msgid ""
+"Set the file browser settings. A file browser will allow you to browse "
+"the files stored on the server and embed them as links, images, or "
+"Flash movies. CKEditor is compatible with such Drupal modules as !imce "
+"or !elfinder. CKEditor can be also integrated with !ckfinder, an "
+"advanced Ajax file manager."
+msgstr ""
+"Définir les paramètres de l'explorateur de fichiers. Un explorateur "
+"de fichiers vous permettra de parcourir les fichiers stockés sur le "
+"serveur et de les intégrer comme liens, images ou films Flash. "
+"CKEditor est compatible avec les modules Drupal tel que !imce ou "
+"!elfinder. CKEditor peut également être integré avec !ckfinder, un "
+"gestionnaire de fichier Ajax avancé."
+msgid ""
+"Available placeholders:!b &ndash; the base URL path of the Drupal "
+"installation (!base).!f &ndash; the Drupal file system path where the "
+"files are stored (!files).!u &ndash; User ID.!n &ndash; Username."
+msgstr ""
+"Paramètres de substitution disponibles (placeholders) : !b &ndash; le "
+"chemin de l'URL de base de l'installation Drupal (!base). !f &ndash; "
+"le chemin du système de fichiers Drupal où les fichiers sont "
+"stockés (!files). !u &ndash; Identifiant (ID) utilisateur. !n &ndash; "
+"Nom d'utilisateur."
+msgid "!title <a href=\"!link\" target=\"_blank\">project page</a>"
+msgstr "!title <a href=\"!link\" target=\"_blank\">page de projet</a>"
+msgid "<i>Not installed</i>"
+msgstr "<i>Non installé</i>"
+msgid ""
+"CKEditor profiles can be configured in the !adminpath section. "
+"Profiles determine which options are available to users based on the "
+"input format system."
+msgstr ""
+"Les profils CKEditor peuvent être configurés dans la section "
+"!adminpath. Les profils déterminent quelles options sont disponibles "
+"aux utilisateurs basées sur le format d'entrée du système."
+msgid ""
+"<strong>Note:</strong> be careful when granting users access to create "
+"tags like %iframe.<br />If you are going to use CKEditor with the "
+"<strong>Filtered HTML</strong> input format, please read the \"Setting "
+"up filters\" section in the !readme file."
+msgstr ""
+"<strong>Note :</strong> faîtes attention lorsque vous accordez aux "
+"utilisateurs le droit de créer des balises telles que %iframe.<br "
+"/>Si vous comptez utiliser CKEditor avec le format d’entrée "
+"<strong>HTML Filtré</strong>, merci de lire la section "
+"\"Configuration de filtres\" dans le fichier !readme."
+msgid "Change skin of CKEditor"
+msgstr "Changer l'habillage de CKEditor"
+msgid "Configure skin for CKEditor."
+msgstr "Configurer l'habillage de CKEditor."
+msgid ""
+"The `!profile` profile is using `!skin` skin which cannot be found. "
+"Please !profile_settings."
+msgstr ""
+"Le profil '!profile' utilise l'habillage '!skin' qui est introuvable. "
+"Veuillez !profile_settings."
+msgid "update your settings"
+msgstr "mettre à jour vos paramètres"
+msgid "\"Div-based\" editor"
+msgstr "Éditeur \"basé-sur-des-div\""
+msgid "Loading editor into <code>div</code> instead of <code>iframe</code>."
+msgstr ""
+"Chargement de l'éditeur dans un <code>div</code> au lieu d'une "
+"<code>iframe</code>."
+msgid "Aggregate <code>ckeditor.js</code>"
+msgstr "Agréger <code>ckeditor.js</code>"
+msgid "Local path to CKFinder"
+msgstr "Chemin local vers CKFinder"
+msgid ""
+"The following plugins could not be found and were automatically "
+"disabled in CKEditor profiles:"
+msgstr ""
+"Les plugins suivant sont introuvables et seront automatiquement "
+"désactivés dans les profils CKEditor :"
+msgid "<b>Profile</b>: %profile_name"
+msgstr "<strong>Profil</strong> : %profile_name"
+msgid "<b>Plugins</b>: %profile_plugins"
+msgstr "<b>Plugins</b> : %profile_plugins"
+msgid ""
+"The <em>CKEditor Global Profile</em> profile is using %skin skin which "
+"cannot be found. Please <a href=\"@profile_settings\">update your "
+"settings</a>."
+msgstr ""
+"Le <em>Profil global de CKEditor</em> utilise l'habillage %skin qui "
+"est introuvable. Veuillez <a href=\"@profile_settings\">mettre à jour "
+"vos paramètres</a>."
+msgid ""
+"!ckfinder is not installed correctly: <code>!config</code> not found. "
+"Make sure that you uploaded all files and did not accidentally remove "
+"the configuration file. If you installed CKFinder in other location "
+"(e.g. in the libraries folder), make sure to update the path to "
+"CKFinder in !global."
+msgstr ""
+"!ckfinder n'est pas installé correctement : <code>!config</code> non "
+"trouvé. Assurez-vous d'avoir transféré tout les fichiers et de ne "
+"pas avoir accidentellement retiré le fichier de configuration. Si "
+"vous avez installé CKFinder à un autre emplacement (par ex. dans le "
+"répertoire nommé libraries), assurez-vous de mettre à jour le "
+"chemin vers CKFinder dans !global."
+msgid "Available buttons"
+msgstr "Boutons disponibles"
+msgid ""
+"The path to CKEditor (the WYSIWYG rich text editor downloaded from "
+"!ckeditorcom). Provide a path relative to the document root, unless "
+"CKEditor is located on an external URL. In such case enter the full "
+"URL to a folder with CKEditor.<br />The simplest way to have the "
+"editor running is to use CDN, to use it set: !cdn"
+msgstr ""
+"Le chemin vers CKEditor (l'éditeur WYSIWYG de texte enrichi "
+"téléchargeable depuis !ckeditorcom). Fournit un chemin relatif à la "
+"racine du site, à moins que CKEditor ne soit situé sur une URL "
+"externe. Dans ce cas, saisir l'URL complète d'un répertoire "
+"contenant CKEditor.<br />La manière la plus simple de mettre en "
+"oeuvre l'éditeur est d'utiliser CDN. Pour cela, définir !cdn"
+msgid ""
+"Available placeholders:!b &ndash; path of the Drupal installation "
+"(!base) !m &ndash; path where the CKEditor module is stored "
+"(!module).!l &ndash; path to the libraries directory (!library)."
+msgstr ""
+"Les espaces réservés disponibles :!b &ndash; chemin de "
+"l'installation Drupal (!base) !m &ndash; chemin où le module CKEditor "
+"est conservé !module).!l &ndash; chemin vers le répertoire des "
+"bibliothèques (!library)."
+msgid "CKEditor is loaded from URL. Local path is not available."
+msgstr ""
+"CKEditor est chargé depuis l'URL. Le chemin local n'est pas "
+"disponible."
+msgid "Current toolbar"
+msgstr "Barre d'outil actuelle"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/color_field-7.x-1.8.fr_0.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,92 @@
+# French translation of Color Field (7.x-1.8)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Color Field (7.x-1.8)\n"
+"POT-Creation-Date: 2017-11-11 01:33+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Width"
+msgstr "Largeur"
+msgid "Height"
+msgstr "Hauteur"
+msgid "Background color"
+msgstr "Couleur d'arrière-plan"
+msgid "Text color"
+msgstr "Couleur du texte"
+msgid "Property"
+msgstr "Propriété"
+msgid "Selector"
+msgstr "Sélecteur"
+msgid "Color Palette"
+msgstr "Palette de couleurs"
+msgid "Important"
+msgstr "Important"
+msgid "CSS selector"
+msgstr "Sélecteur CSS"
+msgid "Box width"
+msgstr "Largeur de boite"
+msgid "Box height"
+msgstr "Hauteur de la boite"
+msgid "CSS property"
+msgstr "Propriété CSS"
+msgid "Default colors"
+msgstr "Couleurs par défaut"
+msgid "Color Field"
+msgstr "Champ Couleur"
+msgid "Default colors for pre-selected color boxes"
+msgstr "Couleurs par défaut pour les boites de couleurs pré-sélectionnées"
+msgid "Cell width"
+msgstr "Largeur de cellule"
+msgid "Width of each individual color cell."
+msgstr "Largeur de chaque cellule."
+msgid "Height width"
+msgstr "Hauteur largeur"
+msgid "Height of each individual color cell."
+msgstr "Hauteur de chaque cellule de couleur."
+msgid "Cell margin"
+msgstr "Marge de cellule"
+msgid "Margin of each individual color cell."
+msgstr "Marge de chaque cellule de couleur."
+msgid "Width of the color display box."
+msgstr "Largeur de la boîte affichant la couleur"
+msgid "Height of the color display box."
+msgstr "Hauteur de la boîte affichant la couleur."
+msgid "Columns number"
+msgstr "Nombre de colonnes"
+msgid ""
+"Number of columns to display. Color order may look strange if this is "
+"altered."
+msgstr ""
+"Nombre de colonnes à afficher. L'ordre des couleurs peut paraître "
+"étranger si ceci est altéré."
+msgid "A valid CSS selector such as <code>.links > li > a, #logo</code>."
+msgstr "Un sélecteur CSS valide tel que <code>.links > li > a, #logo</code>."
+msgid "Whenever this declaration is more important than others."
+msgstr "Cette déclaration est toujours plus importante que les autres."
+msgid "Show Input"
+msgstr "Afficher la zone de texte"
+msgid "Allow free form typing."
+msgstr "Autoriser la saisie libre du formulaire."
+msgid "Show Palette"
+msgstr "Afficher la palette"
+msgid "Show Palette Only"
+msgstr "Afficher seulement la palette"
+msgid "Show Buttons"
+msgstr "Afficher les boutons"
+msgid "Add Cancel/Confirm Button."
+msgstr "Ajouter un bouton Annuler/Confirmer"
+msgid "Allow Empty"
+msgstr "Autoriser les valeurs vides"
+msgid "Allow empty value."
+msgstr "Autoriser la valeur vide."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/color_field-7.x-1.8.fr_1.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,92 @@
+# French translation of Color Field (7.x-1.8)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Color Field (7.x-1.8)\n"
+"POT-Creation-Date: 2017-11-11 01:33+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Width"
+msgstr "Largeur"
+msgid "Height"
+msgstr "Hauteur"
+msgid "Background color"
+msgstr "Couleur d'arrière-plan"
+msgid "Text color"
+msgstr "Couleur du texte"
+msgid "Property"
+msgstr "Propriété"
+msgid "Selector"
+msgstr "Sélecteur"
+msgid "Color Palette"
+msgstr "Palette de couleurs"
+msgid "Important"
+msgstr "Important"
+msgid "CSS selector"
+msgstr "Sélecteur CSS"
+msgid "Box width"
+msgstr "Largeur de boite"
+msgid "Box height"
+msgstr "Hauteur de la boite"
+msgid "CSS property"
+msgstr "Propriété CSS"
+msgid "Default colors"
+msgstr "Couleurs par défaut"
+msgid "Color Field"
+msgstr "Champ Couleur"
+msgid "Default colors for pre-selected color boxes"
+msgstr "Couleurs par défaut pour les boites de couleurs pré-sélectionnées"
+msgid "Cell width"
+msgstr "Largeur de cellule"
+msgid "Width of each individual color cell."
+msgstr "Largeur de chaque cellule."
+msgid "Height width"
+msgstr "Hauteur largeur"
+msgid "Height of each individual color cell."
+msgstr "Hauteur de chaque cellule de couleur."
+msgid "Cell margin"
+msgstr "Marge de cellule"
+msgid "Margin of each individual color cell."
+msgstr "Marge de chaque cellule de couleur."
+msgid "Width of the color display box."
+msgstr "Largeur de la boîte affichant la couleur"
+msgid "Height of the color display box."
+msgstr "Hauteur de la boîte affichant la couleur."
+msgid "Columns number"
+msgstr "Nombre de colonnes"
+msgid ""
+"Number of columns to display. Color order may look strange if this is "
+"altered."
+msgstr ""
+"Nombre de colonnes à afficher. L'ordre des couleurs peut paraître "
+"étranger si ceci est altéré."
+msgid "A valid CSS selector such as <code>.links > li > a, #logo</code>."
+msgstr "Un sélecteur CSS valide tel que <code>.links > li > a, #logo</code>."
+msgid "Whenever this declaration is more important than others."
+msgstr "Cette déclaration est toujours plus importante que les autres."
+msgid "Show Input"
+msgstr "Afficher la zone de texte"
+msgid "Allow free form typing."
+msgstr "Autoriser la saisie libre du formulaire."
+msgid "Show Palette"
+msgstr "Afficher la palette"
+msgid "Show Palette Only"
+msgstr "Afficher seulement la palette"
+msgid "Show Buttons"
+msgstr "Afficher les boutons"
+msgid "Add Cancel/Confirm Button."
+msgstr "Ajouter un bouton Annuler/Confirmer"
+msgid "Allow Empty"
+msgstr "Autoriser les valeurs vides"
+msgid "Allow empty value."
+msgstr "Autoriser la valeur vide."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/ctools-7.x-1.x.fr_5.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,3729 @@
+# French translation of Chaos tool suite (ctools) (7.x-1.13)
+# Copyright (c) 2018 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Chaos tool suite (ctools) (7.x-1.13)\n"
+"POT-Creation-Date: 2018-02-04 00:43+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Home"
+msgstr "Accueil"
+msgid "Title"
+msgstr "Titre"
+msgid "Body"
+msgstr "Corps"
+msgid "Pages"
+msgstr "Pages"
+msgid "context"
+msgstr "contexte"
+msgid "Status"
+msgstr "Etat"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Content"
+msgstr "Contenu"
+msgid "Value"
+msgstr "Valeur"
+msgid "Type"
+msgstr "Type"
+msgid "Author"
+msgstr "Auteur"
+msgid "List"
+msgstr "Lister"
+msgid "Actions"
+msgstr "Actions"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Description"
+msgstr "Description"
+msgid "Language"
+msgstr "Langue"
+msgid "Read more"
+msgstr "Lire la suite"
+msgid "Enable"
+msgstr "Activer"
+msgid "Disable"
+msgstr "Désactiver"
+msgid "Access control"
+msgstr "Contrôle d'accès"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Comments"
+msgstr "Commentaires"
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Go"
+msgstr "Allez"
+msgid "Login"
+msgstr "Identifiant"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Size"
+msgstr "Taille"
+msgid "Search"
+msgstr "Rechercher"
+msgid "Reset"
+msgstr "Réinitialiser"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "Comment form"
+msgstr "Formulaire de commentaire"
+msgid "User edit form"
+msgstr "Formulaire de modification d'utilisateur"
+msgid "User contact form"
+msgstr "Formulaire de contact de l'utilisateur"
+msgid "Weight"
+msgstr "Poids"
+msgid "Center"
+msgstr "Centre"
+msgid "Admin title"
+msgstr "Titre pour l'administration"
+msgid "Depth"
+msgstr "Profondeur"
+msgid "Category"
+msgstr "Catégorie"
+msgid "Settings"
+msgstr "Paramètres"
+msgid "Name"
+msgstr "Nom"
+msgid "Import"
+msgstr "Importer"
+msgid "Book"
+msgstr "Livre"
+msgid "Export"
+msgstr "Exporter"
+msgid "Taxonomy term"
+msgstr "Terme de taxonomie"
+msgid "Back"
+msgstr "Précédent"
+msgid "Label"
+msgstr "Étiquette"
+msgid "Preview"
+msgstr "Aperçu"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Help"
+msgstr "Aide"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Summary"
+msgstr "Résumé"
+msgid "Update"
+msgstr "Mettre à jour"
+msgid "Top"
+msgstr "Haut"
+msgid "Small"
+msgstr "Petit"
+msgid "Large"
+msgstr "Grand"
+msgid "Views"
+msgstr "Vues"
+msgid "Access"
+msgstr "Accès"
+msgid "Add"
+msgstr "Ajouter"
+msgid "View"
+msgstr "Voir"
+msgid "Path"
+msgstr "Chemin"
+msgid "Vocabularies"
+msgstr "Vocabulaires"
+msgid "Display"
+msgstr "Affichage"
+msgid "Node type"
+msgstr "Type de nœud"
+msgid "Menu"
+msgstr "Menu"
+msgid "results"
+msgstr "résultats"
+msgid "search"
+msgstr "rechercher"
+msgid "style"
+msgstr "style"
+msgid "Keywords"
+msgstr "Mots-clés"
+msgid "Unknown"
+msgstr "Inconnu"
+msgid "Paths"
+msgstr "Chemins"
+msgid "User"
+msgstr "Utilisateur"
+msgid "Continue"
+msgstr "Continuer"
+msgid "Configure"
+msgstr "Configurer"
+msgid "Error"
+msgstr "Erreur"
+msgid "Contact"
+msgstr "Contact"
+msgid "Node"
+msgstr "Nœud"
+msgid "Node edit form"
+msgstr "Formulaire de modification du nœud"
+msgid "Are you sure you want to delete %title?"
+msgstr "Êtes-vous sûr(e) de vouloir supprimer %title ?"
+msgid "Node add form"
+msgstr "Formulaire d'ajout de nœud"
+msgid "All"
+msgstr "Tout"
+msgid "Submit @name"
+msgstr "Soumettre @name"
+msgid "Date format"
+msgstr "Format de date"
+msgid "Page title"
+msgstr "Titre de page"
+msgid "Block"
+msgstr "Bloc"
+msgid "Override title"
+msgstr "Supplanter le titre"
+msgid "Pager ID"
+msgstr "ID de la pagination"
+msgid "Override URL"
+msgstr "Surcharger l'URL"
+msgid ""
+"If this is set, override the View URL; this can sometimes be useful to "
+"set to the panel URL"
+msgstr ""
+"Si ceci est défini, surcharger l'URL de la vue ; ce qui peut être "
+"pratique pour la définir à l'URL de la vue"
+msgid "Bottom"
+msgstr "Bas"
+msgid "Node links"
+msgstr "Liens de nœuds"
+msgid "Taxonomy terms"
+msgstr "Termes de taxonomie"
+msgid "User picture"
+msgstr "Image de l'utilisateur"
+msgid "Breadcrumb"
+msgstr "Fil d'Ariane"
+msgid "Site name"
+msgstr "Nom du site"
+msgid "Site slogan"
+msgstr "Slogan du site"
+msgid "Module"
+msgstr "Module"
+msgid "Inline"
+msgstr "Sur la même ligne"
+msgid "Delta"
+msgstr "Delta"
+msgid "Custom"
+msgstr "Personnalisé"
+msgid "Comment"
+msgstr "Commentaire"
+msgid "Revisions"
+msgstr "Révisions"
+msgid "Vocabulary"
+msgstr "Vocabulaire"
+msgid "Vocabulary ID"
+msgstr "Identifiant (ID) de vocabulaire"
+msgid "Term"
+msgstr "Terme"
+msgid "Term ID"
+msgstr "Identifiant (ID) du terme"
+msgid "Term name"
+msgstr "Nom du terme"
+msgid "Overridden"
+msgstr "Supplanté"
+msgid "Mode"
+msgstr "Mode"
+msgid "Normal"
+msgstr "Normal"
+msgid "Advanced"
+msgstr "Avancé"
+msgid "Up"
+msgstr "Haut"
+msgid "Medium"
+msgstr "Moyen"
+msgid "System"
+msgstr "Système"
+msgid "Terms"
+msgstr "Termes"
+msgid "General"
+msgstr "Général"
+msgid "All views"
+msgstr "Toutes les vues"
+msgid "Base"
+msgstr "Base"
+msgid "Align"
+msgstr "Aligner"
+msgid "Basic"
+msgstr "Basique"
+msgid "List type"
+msgstr "Type de liste"
+msgid "Role"
+msgstr "Rôle"
+msgid "User login"
+msgstr "Connexion utilisateur"
+msgid "String"
+msgstr "Chaîne de caractères"
+msgid "Case"
+msgstr "Casse"
+msgid "Exists"
+msgstr "Présent"
+msgid "Argument"
+msgstr "Argument"
+msgid "Anonymous"
+msgstr "Anonyme"
+msgid "<All>"
+msgstr "--Tout--"
+msgid "Edit view"
+msgstr "Modifier la vue"
+msgid "Clone"
+msgstr "Cloner"
+msgid "Normal menu item"
+msgstr "Élément de menu normal"
+msgid "Down"
+msgstr "Bas"
+msgid "Arguments"
+msgstr "Arguments"
+msgid "Operator"
+msgstr "Opérateur"
+msgid "Order"
+msgstr "Ordre"
+msgid "Add criteria"
+msgstr "Ajouter des critères"
+msgid "Node: ID"
+msgstr "Nœud : identifiant (ID)"
+msgid "Basic settings"
+msgstr "Paramètres de base"
+msgid "Node template"
+msgstr "Gabarit du nœud"
+msgid "Term description"
+msgstr "Description du terme"
+msgid "Child terms"
+msgstr "Termes enfants"
+msgid "Operation"
+msgstr "Opération"
+msgid "Sort by"
+msgstr "Trier par"
+msgid "Created date"
+msgstr "Date de création"
+msgid "Rules"
+msgstr "Rules"
+msgid "Regular expression"
+msgstr "Expression régulière"
+msgid "Authoring information"
+msgstr "Informations de publication"
+msgid "Hidden"
+msgstr "Caché"
+msgid "Some"
+msgstr "Plusieurs"
+msgid ""
+"Enter one page per line as Drupal paths. The '*' character is a "
+"wildcard. Example paths are %blog for the blog page and %blog-wildcard "
+"for every personal blog. %front is the front page."
+msgstr ""
+"Saisissez une page par ligne sous la forme de chemins Drupal. Le "
+"caractère '*' est un joker. Saisissez par exemple %blog pour la page "
+"des blogs et %blog-wildcard pour chaque blog personnel. %front est la "
+"page d'accueil."
+msgid "Link to node"
+msgstr "Lien vers le nœud"
+msgid "Change"
+msgstr "Modifier"
+msgid "Edit term"
+msgstr "Modifier le terme"
+msgid "Tokens"
+msgstr "Jetons (tokens)"
+msgid "Token"
+msgstr "Jeton (token)"
+msgid "Feeds"
+msgstr "Flux"
+msgid "Node title"
+msgstr "Titre du nœud"
+msgid "Node body"
+msgstr "Corps du nœud"
+msgid "Search results"
+msgstr "Résultats de la recherche"
+msgid "Your search yielded no results"
+msgstr "Votre recherche n'a donné aucun résultat"
+msgid "Front page"
+msgstr "Page d'accueil"
+msgid "unlimited"
+msgstr "illimité"
+msgid "Activity"
+msgstr "Activité"
+msgid "Publishing options"
+msgstr "Options de publication"
+msgid "First"
+msgstr "Premier"
+msgid "Configure block"
+msgstr "Configurer le bloc"
+msgid "Second"
+msgstr "Seconde"
+msgid "Entity"
+msgstr "Entité"
+msgid "Fixed"
+msgstr "Fixe"
+msgid "Revert"
+msgstr "Rétablir"
+msgid "Greater than"
+msgstr "Supérieur"
+msgid "Equal to"
+msgstr "Egal à"
+msgid "Less than"
+msgstr "Inférieur"
+msgid "Select a user"
+msgstr "Choisir un utilisateur"
+msgid "You must select a user."
+msgstr "Vous devez choisir un utilisateur."
+msgid "Open in new window"
+msgstr "Ouvrir dans une nouvelle fenêtre"
+msgid "Left"
+msgstr "Gauche"
+msgid "Right"
+msgstr "Droit"
+msgid "open"
+msgstr "ouvert"
+msgid "Parent term"
+msgstr "Terme parent"
+msgid "Parent terms"
+msgstr "Termes parents"
+msgid "All blogs"
+msgstr "Tous les blogs"
+msgid "Style"
+msgstr "Style"
+msgid "Changed"
+msgstr "Modifié"
+msgid "Menu settings"
+msgstr "Paramètres du menu"
+msgid "Color scheme"
+msgstr "Schéma de couleurs"
+msgid "New"
+msgstr "Nouveau"
+msgid "Relationships"
+msgstr "Relations"
+msgid "Basic information"
+msgstr "Informations de base"
+msgid "Parent menu item"
+msgstr "Élément de menu parent"
+msgid "Jump Menu"
+msgstr "Menu de saut"
+msgid "Themes"
+msgstr "Thèmes"
+msgid "Loading..."
+msgstr "En cours de chargement..."
+msgid "Tabs"
+msgstr "Onglets"
+msgid "Storage"
+msgstr "Stockage"
+msgid "Page name"
+msgstr "Nom de la page"
+msgid "Apply"
+msgstr "Appliquer"
+msgid "You must select a node."
+msgstr "Vous devez sélectionner un nœud."
+msgid "Bold"
+msgstr "Gras"
+msgid "PHP Code"
+msgstr "Code PHP"
+msgid "Simple"
+msgstr "Simple"
+msgid "Double"
+msgstr "Double"
+msgid "Relationship type"
+msgstr "Type de relation"
+msgid "Menus"
+msgstr "Menus"
+msgid "Above"
+msgstr "Au-dessus"
+msgid "Third"
+msgstr "Troisième"
+msgid "Fourth"
+msgstr "Quatrième"
+msgid "Fifth"
+msgstr "Cinquième"
+msgid "Form"
+msgstr "Formulaire"
+msgid "Title tag"
+msgstr "Balise Titre"
+msgid "Override path"
+msgstr "Supplanter le chemin"
+msgid "Permission"
+msgstr "Droit"
+msgid "Dotted"
+msgstr "Pointillé"
+msgid "Dashed"
+msgstr "En tirets"
+msgid "Solid"
+msgstr "Solide"
+msgid "Groove"
+msgstr "En creux"
+msgid "Ridge"
+msgstr "En saillie"
+msgid "Inset"
+msgstr "Insérer"
+msgid "Edit this term"
+msgstr "Modifier ce terme"
+msgid "Italic"
+msgstr "Italique"
+msgid "Uppercase"
+msgstr "Majuscule"
+msgid "Language neutral"
+msgstr "Indépendant de la langue"
+msgid "Contexts"
+msgstr "Contextes"
+msgid "Loading"
+msgstr "En cours de chargement"
+msgid "Node author"
+msgstr "Auteur du nœud"
+msgid "Miscellaneous"
+msgstr "Divers"
+msgid "Attach files"
+msgstr "Joindre des fichiers"
+msgid "Views panes"
+msgstr "Vues de panneaux"
+msgid "Argument type"
+msgstr "Type d'argument"
+msgid "Deleted/missing block @module-@delta"
+msgstr "Bloc @module-@delta supprimé/manquant"
+msgid "New custom content"
+msgstr "Nouveau contenu personnalisé"
+msgid "Create a completely custom piece of HTML content."
+msgstr "Créer un contenu HTML complètement personnalisé."
+msgid "Context"
+msgstr "Contexte"
+msgid "General form"
+msgstr "Formulaire générale"
+msgid "Form goes here."
+msgstr "Le formualire va ici."
+msgid "\"@s\" base form"
+msgstr "\"@s\" formulaire de base"
+msgid "Node type description"
+msgstr "Description du type de nœud"
+msgid "Attached files"
+msgstr "Fichiers attachés"
+msgid "Attached files go here."
+msgstr "Les fichiers joints vont ici."
+msgid "A list of files attached to the node."
+msgstr "Une liste des fichiers joints au nœud."
+msgid "\"@s\" attachments"
+msgstr "\"@s\" fichiers attachés"
+msgid "Book navigation"
+msgstr "Navigation du livre"
+msgid "Add comment"
+msgstr "Ajouter un commentaire"
+msgid "A form to add a new comment."
+msgstr "Un formulaire pour ajouter un nouveau commentaire."
+msgid "\"@s\" comment form"
+msgstr "\"@s\" formulaire des commentaires"
+msgid "Node comments"
+msgstr "Commentaires du nœud"
+msgid "The comments of the referenced node."
+msgstr "Les commentaires du nœud référencé."
+msgid "!a comments per page"
+msgstr "!a commentaires par page"
+msgid "Pager"
+msgstr "Pagination"
+msgid "\"@s\" comments"
+msgstr "\"@s\" commentaires"
+msgid "Node content"
+msgstr "Contenu du nœud"
+msgid "The content of the referenced node."
+msgstr "Le contenu du nœud référencé."
+msgid "Node title."
+msgstr "Titre du nœud."
+msgid "Node content goes here."
+msgstr "Le contenu du nœud va ici."
+msgid "Link title to node"
+msgstr "Lier le titre au nœud"
+msgid "Check here to make the title link to the node."
+msgstr "Cochez ici pour que le titre soit un lien qui pointe vers le nœud."
+msgid "No extras"
+msgstr "Pas d'extras"
+msgid "Identifier"
+msgstr "Identifiant"
+msgid "\"@s\" content"
+msgstr "Contenu de \"@s\""
+msgid "Node form publishing options"
+msgstr "Options de publication du formulaire de nœud"
+msgid "Publishing options on the Node form."
+msgstr "Options de publication du formualire de nœud."
+msgid "Node form author information"
+msgstr "Informations sur l'auteur du formulaire du nœud"
+msgid "Author information on the Node form."
+msgstr "Information de l'auteur sur le formulaire du nœud."
+msgid "Node form comment settings"
+msgstr "Paramètres des commentaires du formualire de nœud."
+msgid "Comment settings on the Node form."
+msgstr "Paramètre de commentaire sur le nœud formulaire."
+msgid "Node form file attachments"
+msgstr "Fichiers joints du formulaire du nœud"
+msgid "File attachments on the Node form."
+msgstr "Fichiers joints sur le formulaire du nœud."
+msgid "Node form book options"
+msgstr "Options de livre du formulaire de nœud."
+msgid "Book options for the node."
+msgstr "Options du livre pour le nœud."
+msgid "Publishing options."
+msgstr "Options de publication."
+msgid "Comment options"
+msgstr "Options des commentaires"
+msgid "Comment options."
+msgstr "Options des commentaires."
+msgid "Authoring information."
+msgstr "Information de composition"
+msgid "Menu options"
+msgstr "Options de menu"
+msgid "Menu options."
+msgstr "Options de menu."
+msgid "URL path options"
+msgstr "Options du chemin d'URL"
+msgid "URL Path options."
+msgstr "Options du chemin d'URL."
+msgid "Attach files."
+msgstr "Joindre des fichiers."
+msgid "Book options."
+msgstr "Options du livre."
+msgid "\"@s\" @type"
+msgstr "\"@s\" @type"
+msgid "Node type description goes here."
+msgstr "La description du type de nœud va ici."
+msgid "Node type description."
+msgstr "Description du type de nœud"
+msgid "\"@s\" type description"
+msgstr "\"@s\" type description"
+msgid "Profile content goes here."
+msgstr "Le contenu du profil va ici."
+msgid "Which category"
+msgstr "Quelle catégorie"
+msgid ""
+"Text to display if category has no data. Note that title will not "
+"display unless overridden."
+msgstr ""
+"Texte à afficher si la catégorie ne possède pas de données. Notez "
+"que le titre ne sera pas affiché sauf s'il est surchargé."
+msgid "\"@s\" profile fields"
+msgstr "\"@s\" champs profile"
+msgid "Term description goes here."
+msgstr "La description du terme va ici."
+msgid "Term description."
+msgstr "Description du terme."
+msgid "\"@s\" term description"
+msgstr "\"@s\" description du terme"
+msgid "List of related terms"
+msgstr "Liste de termes associés"
+msgid ""
+"Terms related to an existing term; may be child, siblings or top "
+"level."
+msgstr ""
+"Termes liés à un terme existant ; peut être un enfant, un relatif "
+"ou de premier niveau."
+msgid "Sibling terms"
+msgstr "Termes apparentés"
+msgid "Top level terms"
+msgstr "Termes de premier niveau"
+msgid "Which terms"
+msgstr "Quels termes"
+msgid "Unordered"
+msgstr "Non ordonné"
+msgid "Ordered"
+msgstr "Ordonné"
+msgid "The picture of a user."
+msgstr "La photo d'un utilisateur."
+msgid "\"@s\" user picture"
+msgstr "\"@s\" photo de l'utilisateur"
+msgid "User profile"
+msgstr "Profil utilisateur"
+msgid "The profile of a user."
+msgstr "Le profil d'un utilisateur."
+msgid "\"@s\" user profile"
+msgstr "\"@s\" profil utilisateur"
+msgid "Vocabulary terms"
+msgstr "Termes d'un vocabulaire"
+msgid "All the terms in a vocabulary."
+msgstr "Tous les termes d'un vocabulaire."
+msgid "\"@s\" terms"
+msgstr "\"@s\" termes"
+msgid "Maximum depth"
+msgstr "Profondeur maximale"
+msgid "Define the maximum depth of terms being displayed."
+msgstr "Défini la profondeur maximale de termes affichés."
+msgid "Display as tree"
+msgstr "Afficher comme arborescence"
+msgid ""
+"If checked, the terms are displayed in a tree, otherwise in a flat "
+"list."
+msgstr ""
+"Si coché, les termes sont affichés dans une arborescence, sinon dans "
+"une liste à plat."
+msgid "A node object."
+msgstr "L'objet d'un nœud."
+msgid "Currently set to !link"
+msgstr "Actuellement réglé sur !link"
+msgid "Invalid node selected."
+msgstr "Le nœud sélectionné est invalide."
+msgid "A node add form."
+msgstr "Un formulaire d'ajout de nœud."
+msgid "Select the node type for this form."
+msgstr "Sélectionnez le type de nœud pour ce formulaire."
+msgid "A node edit form."
+msgstr "Un formulaire de modification de nœud."
+msgid "A single taxonomy term object."
+msgstr "Un objet terme de taxonomie unique."
+msgid "A single user object."
+msgstr "Un unique objet utilisateur."
+msgid "Taxonomy vocabulary"
+msgstr "Vocabulaire de taxonomie"
+msgid "A single taxonomy vocabulary object."
+msgstr "Un unique objet de vocabulaire de taxinomie."
+msgid "Select the vocabulary for this form."
+msgstr "Sélectionnez le vocabulaire pour ce formulaire."
+msgid "argument"
+msgstr "argument"
+msgid "Add argument"
+msgstr "Ajouter un argument"
+msgid "relationship"
+msgstr "relation"
+msgid "Add relationship"
+msgstr "Ajouter une relation"
+msgid "Add context"
+msgstr "Ajouter un contexte"
+msgid "Required contexts"
+msgstr "Contextes obligatoires"
+msgid "required context"
+msgstr "contexte obligatoire"
+msgid "Add required context"
+msgstr "Ajouter un contexte obligatoire"
+msgid "Close Window"
+msgstr "Fermer la fenêtre"
+msgid "Close window"
+msgstr "Fermer la fenêtre"
+msgid "Add @type \"@context\""
+msgstr "Ajouter @type \"@context\""
+msgid "Edit @type \"@context\""
+msgstr "Modifier @type \"@context\""
+msgid "Enter a name to identify this !type on administrative screens."
+msgstr ""
+"Saisissez un nom pour identifier ce !type dans les pages "
+"d'administration."
+msgid "Keyword"
+msgstr "Mot-clé"
+msgid "Enter a keyword to use for substitution in titles."
+msgstr ""
+"Saisir un mot-clé à utiliser comme élément de substitution dans "
+"les titres."
+msgid "Ignore it; content that requires this context will not be available."
+msgstr ""
+"Ne pas prendre en considération ; le contenu qui requiert ce contexte "
+"ne sera pas disponible."
+msgid ""
+"If the argument is missing or is not valid, select how this should "
+"behave."
+msgstr ""
+"Si l'argument est manquant ou invalide, choisir l'option qui doit "
+"s'appliquer."
+msgid "Argument @count"
+msgstr "Argument @count"
+msgid "Context @count"
+msgstr "Contexte @count"
+msgid "Show all"
+msgstr "Tout afficher"
+msgid "Configure !subtype_title"
+msgstr "Configurer !subtype_title"
+msgid "Panel settings"
+msgstr "Paramètres du panel"
+msgid "No title"
+msgstr "Sans titre"
+msgid "Unknown context"
+msgstr "Contexte inconnu"
+msgid "No context"
+msgstr "Pas de contexte"
+msgid ""
+"You may use %keywords from contexts, as well as %title to contain the "
+"original title."
+msgstr ""
+"Vous pouvez utiliser des %keywords à partir du contexte, ainsi que  "
+"%title pour contenir le titre original."
+msgid "Context %count"
+msgstr "Contexte %count"
+msgid "Module name"
+msgstr "Nom du module"
+msgid "Enter the module name to export code to."
+msgstr "Saisir le nom du module vers lequel exporter le code."
+msgid "Local"
+msgstr "Locale"
+msgid "Panel"
+msgstr "Panneau"
+msgid "Add a node from your site as content."
+msgstr "Ajouter un nœud de votre site en tant que contenu."
+msgid "Leave node title"
+msgstr "Laisser le titre du nœud"
+msgid "Invalid node"
+msgstr "Nœud non valide"
+msgid "Node loaded from @var"
+msgstr "Nœud chargé depuis @var"
+msgid "Deleted/missing node @nid"
+msgstr "Nœud @nid supprimé/manquant"
+msgid "Path is required."
+msgstr "Le chemin est obligatoire"
+msgid "Argument wildcard"
+msgstr "Caractères de remplacement de l'argument"
+msgid "No argument"
+msgstr "Aucun argument"
+msgid "From context"
+msgstr "Depuis le contexte"
+msgid "From panel argument"
+msgstr "Depuis l'argument du panel"
+msgid "Input on pane config"
+msgstr "Saisie sur la configuration du pane"
+msgid "Required context"
+msgstr "Contexte requis"
+msgid "Panel argument"
+msgstr "Argument du panel"
+msgid "If \"From panel argument\" is selected, which panel argument to use."
+msgstr ""
+"Si \"À partir d'un argument du panneau\" est choisi, l'argument du "
+"panneau à utiliser."
+msgid "Sixth"
+msgstr "Sixième"
+msgid "Fixed argument"
+msgstr "Argument fixe"
+msgid "If \"Fixed\" is selected, what to use as an argument."
+msgstr "Si \"Fixe\" est sélectionné, quoi utiliser comme argument."
+msgid ""
+"If this argument is presented to the panels user, what label to apply "
+"to it."
+msgstr ""
+"Si cet argument est présenté aux utilisateurs du panneau, "
+"l'étiquette à lui appliquer."
+msgid "Use pager"
+msgstr "Utiliser la pagination"
+msgid "Offset"
+msgstr "Décalage"
+msgid "Link to view"
+msgstr "Lier à la vue"
+msgid "More link"
+msgstr "Lien \"plus\""
+msgid "Link title to view"
+msgstr "Lier le titre à la vue"
+msgid "Provide a \"more\" link that links to the view"
+msgstr "Fournir un lien \"Plus\" pointant vers la vue"
+msgid ""
+"This is independent of any more link that may be provided by the view "
+"itself; if you see two more links, turn this one off. Views will only "
+"provide a more link if using the \"block\" type, however, so if using "
+"embed, use this one."
+msgstr ""
+"Ceci est indépendant de tout lien fourni par la vue elle-même ; si "
+"vous voyez deux liens \"plus\", désactivez celui-ci. Views ne "
+"fournira un lien plus que si vous utilisez l'affichage \"block\", donc "
+"si vous en disposez pas utilisez celui-ci."
+msgid "Display feed icons"
+msgstr "Afficher les icônes des flux"
+msgid "Num posts"
+msgstr "Nombre de contributions"
+msgid "Send arguments"
+msgstr "Envoyer les arguments"
+msgid "Deleted/missing view @view"
+msgstr "Vue @view supprimée/manquante"
+msgid "Book parent"
+msgstr "Parent de livre"
+msgid "Immediate parent"
+msgstr "Parent immédiat"
+msgid "Top level book"
+msgstr "Livre de plus haut niveau"
+msgid "Term from node"
+msgstr "Terme du nœud"
+msgid "Term parent"
+msgstr "Terme parent"
+msgid "Top level term"
+msgstr "Terme de premier niveau"
+msgid "Machine name"
+msgstr "Nom système"
+msgid "Locked"
+msgstr "Verrouillé"
+msgid "Finish"
+msgstr "Finir"
+msgid "Underline"
+msgstr "Souligner"
+msgid "Unordered list"
+msgstr "Liste non ordonnée"
+msgid "Font family"
+msgstr "Police de caractères"
+msgid "Case sensitive"
+msgstr "Sensible à la casse"
+msgid "Create @name"
+msgstr "Créer @name"
+msgid "Response code"
+msgstr "Code réponse"
+msgid "Entity type"
+msgstr "Type d'entité"
+msgid "Widgets"
+msgstr "Widgets"
+msgid "Custom pages"
+msgstr "Pages personnalisées"
+msgid "Row"
+msgstr "Ligne"
+msgid "Simplecontext arg"
+msgstr "Argument Simplecontext"
+msgid "Item1"
+msgstr "Élément1"
+msgid "The stuff for item 1."
+msgstr "Les affaires de l'élément 1."
+msgid "Item2"
+msgstr "Élément2"
+msgid "Relcontext"
+msgstr "Relcontext"
+msgid "Simplecontext"
+msgstr "Simplecontext"
+msgid "A relcontext object."
+msgstr "Un objet relcontext."
+msgid "Adds a relcontext from existing simplecontext."
+msgstr "Ajoute un relcontext à partir d'un simplecontext existant"
+msgid "Page elements"
+msgstr "Éléments de la page"
+msgid "Variants"
+msgstr "Variantes"
+msgid "Book outline"
+msgstr "Structure du livre"
+msgid "Revision information"
+msgstr "Informations sur les révisions"
+msgid "The comment you are replying to does not exist."
+msgstr "Le commentaire auquel vous répondez n'existe plus."
+msgid "Primary"
+msgstr "Primaire"
+msgid "Search type"
+msgstr "Type de recherche"
+msgid "User: ID"
+msgstr "Utilisateur : Identifiant (ID)"
+msgid "Logged in user"
+msgstr "Utilisateur connecté"
+msgid "No description"
+msgstr "Aucune description"
+msgid "Secondary"
+msgstr "Secondaire"
+msgid "Chaos tool suite"
+msgstr "Chaos tool suite"
+msgid "The page has been deleted."
+msgstr "La page a été supprimée."
+msgid "Lowercase"
+msgstr "Minuscules"
+msgid "Justify"
+msgstr "Justifier"
+msgid "Parent term(s)"
+msgstr "Terme(s) parent(s)"
+msgid "Break lock"
+msgstr "Rompre le verrou"
+msgid "Current user's language"
+msgstr "Langue de l'utilisateur actuel"
+msgid "Default site language"
+msgstr "Langue par défaut du site"
+msgid "No language"
+msgstr "Pas de langue"
+msgid "Build mode"
+msgstr "Mode de construction"
+msgid "Items per page"
+msgstr "Éléments par page"
+msgid "No menu entry"
+msgstr "Aucune entrée de menu"
+msgid "Normal menu entry"
+msgstr "Entrée de menu normale"
+msgid "Menu tab"
+msgstr "Onglet de menu"
+msgid "Default menu tab"
+msgstr "Onglet de menu par défaut"
+msgid "Insert item into an available menu."
+msgstr "Insérer l'élément dans un menu disponible."
+msgid "Menu selection requires the activation of menu module."
+msgstr "La sélection du menu requiert l'activation du module menu."
+msgid "The lower the weight the higher/further left it will appear."
+msgstr "Plus petit sera le poids plus haut/à gauche il apparaitra."
+msgid "If creating a parent menu item, enter the title of the item."
+msgstr ""
+"Si vous créez un élément de menu parent, saisissez le titre de "
+"l'élément."
+msgid "- All -"
+msgstr "- Tout -"
+msgid "Import code"
+msgstr "Importer un code"
+msgid "Contact form"
+msgstr "Formulaire de contact"
+msgid "Equal"
+msgstr "Égal"
+msgid "h1"
+msgstr "h1"
+msgid "h2"
+msgstr "h2"
+msgid "h3"
+msgstr "h3"
+msgid "h4"
+msgstr "h4"
+msgid "h5"
+msgstr "h5"
+msgid "h6"
+msgstr "h6"
+msgid "HTTP response code"
+msgstr "Code de statut HTTP"
+msgid "Search form"
+msgstr "Formulaire de recherche"
+msgid "Styles"
+msgstr "Styles"
+msgid "Hello world!"
+msgstr "Bonjour le monde !"
+msgid "The item has been deleted."
+msgstr "L'élément a été supprimé."
+msgid "Greater than or equal to"
+msgstr "Supérieur ou égal à"
+msgid "Less than or equal to"
+msgstr "Inférieur ou égal à"
+msgid "CTools CSS Cache"
+msgstr "Cache CSS de CTools"
+msgid ""
+"The CTools CSS cache directory, %path could not be created due to a "
+"misconfigured files directory. Please ensure that the files directory "
+"is correctly configured and that the webserver has permission to "
+"create directories."
+msgstr ""
+"Le répertoire de cache CSS de CTools, %path n'a pas pu être créé "
+"car il y a un problème de configuration sur le répertoire files. "
+"Veuillez vous assurez que le répertoire files est correctement "
+"configuré et que le serveur web dispose des permissions suffisantes "
+"pour créer des répertoires."
+msgid "Unable to create"
+msgstr "Création impossible"
+msgid ""
+"A special cache used to store objects that are being edited; it serves "
+"to save state in an ordinarily stateless environment."
+msgstr ""
+"Cache spécial utilisé pour enregistrer les objets en cours "
+"d'édition ; il sert à enregistrer l'état dans un environnement "
+"normalement sans état."
+msgid "Chaos tools"
+msgstr "Chaos tools"
+msgid "A library of helpful tools by Merlin of Chaos."
+msgstr "Une bibliothèque d'outils utiles par Merlin of Chaos."
+msgid "Bulk export results"
+msgstr "Exporter les résultats en lots"
+msgid "Place this in @file"
+msgstr "Placer ceci dans @file"
+msgid "There are no objects to be exported at this time."
+msgstr "Il n'y a aucun objet à exporter pour le moment."
+msgid "Bulk Exporter"
+msgstr "Exportation en lots"
+msgid "Bulk-export multiple CTools-handled data objects to code."
+msgstr ""
+"Exporte massivement plusieurs objets de données gérés par Ctools "
+"vers le code."
+msgid "Bulk Export"
+msgstr "Bulk Export"
+msgid "Performs bulk exporting of data objects known about by Chaos tools."
+msgstr ""
+"Procède à une exportation massive des objets de données connus par "
+"les outils Chaos."
+msgid "@type:@subtype will not display due to missing context"
+msgstr "@type :@subtype ne s'affichera pas car il lui manque un contexte"
+msgid "No info available."
+msgstr "Pas d'information disponible."
+msgid "Configure new !subtype_title"
+msgstr "Configurer un nouveau !subtype_title"
+msgid "All criteria must pass."
+msgstr "Tous les critères doivent être vérifiés."
+msgid "Only one criteria must pass."
+msgstr "Seul un critère doit être vérifié."
+msgid "Broken/missing access plugin %plugin"
+msgstr "Plugin d'accès %plugin cassé/manquant"
+msgid "Configure settings for this item."
+msgstr "Configurer les paramètres de cet élément."
+msgid "Remove this item."
+msgstr "Retirer cet élément."
+msgid "No criteria selected, this test will pass."
+msgstr ""
+"Aucun critère n'a été sélectionné, ce test va être considéré "
+"comme réussi."
+msgid "Missing callback hooks."
+msgstr "Procédures de rappel (callback hooks) manquantes."
+msgid "Edit criteria"
+msgstr "Modifier les critères"
+msgid "Invalid object name."
+msgstr "Nom d'objet non valide."
+msgid "Invalid context type"
+msgstr "Type de contexte invalide"
+msgid "Display page not found or display nothing at all."
+msgstr "Pas non trouvée, ou bien il n'y a rien à visualiser sur cette page."
+msgid ""
+"Enter a title to use when this argument is present. You may use "
+"%KEYWORD substitution, where the keyword is specified below."
+msgstr ""
+"Saisissez un titre à utiliser quand cet argument est présent. Vous "
+"pouvez utiliser des substituions de %KEYWORD, selon les mot clés "
+"spécifiés ci-dessous."
+msgid "Unable to delete missing item!"
+msgstr "Impossible de supprimer un élément manquant !"
+msgid "Edit @type"
+msgstr "Modifier @type"
+msgid "Summary of contexts"
+msgstr "Récapitulatif des contextes"
+msgid "Please choose which context and how you would like it converted."
+msgstr ""
+"S'il vous plaît, choisissez avec quel contexte et comment vous voulez "
+"le convertir."
+msgid "@identifier (@keyword)"
+msgstr "@identifier (@keyword)"
+msgid ", and "
+msgstr ", et "
+msgid ", or "
+msgstr ", ou "
+msgid "Built in context"
+msgstr "Contexte intégré"
+msgid "Keyword: %@keyword"
+msgstr "Mot-clé : %@keyword"
+msgid "@keyword --&gt; @title"
+msgstr "@keyword --&gt; @title"
+msgid "From \"@title\""
+msgstr "De \"@title\""
+msgid ""
+"Unable to create CTools CSS cache directory. Check the permissions on "
+"your files directory."
+msgstr ""
+"Impossible de créer le répertoire de cache CTools CSS. Vérifiez les "
+"permissions sur le répertoire de vos fichiers."
+msgid "Update and return"
+msgstr "Mise à jour et retour"
+msgid "In code"
+msgstr "Dans le code"
+msgid "Enabled, title"
+msgstr "Activées, titre"
+msgid "Get a summary of the information about this page."
+msgstr "Obtenir un résumé des informations sur cette page."
+msgid "Activate this page so that it will be in use in your system."
+msgstr "Activez cette page afin qu'elle soit utilisée dans votre système."
+msgid ""
+"De-activate this page. The data will remain but the page will not be "
+"in use on your system."
+msgstr ""
+"Désactiver cette page. Les données seront conservées mais la page "
+"ne sera plus utilisée par votre système."
+msgid "Add variant"
+msgstr "Ajouter une variante"
+msgid "Add a new variant to this page."
+msgstr "Ajouter une nouvelle variante de cette page."
+msgid "Create variant"
+msgstr "Créer la variante"
+msgid "Import variant"
+msgstr "Importer une variante"
+msgid "Add a new variant to this page from code exported from another page."
+msgstr ""
+"Ajouter une variante de cette page à partir de code exporté d'une "
+"autre page."
+msgid "Reorder variants"
+msgstr "Ré-ordonner les variantes"
+msgid ""
+"Change the priority of the variants to ensure that the right one gets "
+"selected."
+msgstr ""
+"Changer la priorité des variantes pour s'assurer que la sélection "
+"s'opère de façon correcte."
+msgid ""
+"Configure a newly created variant prior to actually adding it to the "
+"page."
+msgstr ""
+"Configurer une nouvelle variante avant de l'ajouter réellement à la "
+"page."
+msgid "Break the lock on this page so that you can edit it."
+msgstr "Casser le verrou de cette page afin de pouvoir l'éditer."
+msgid "Variant operations"
+msgstr "Opérations sur les variantes"
+msgid "Get a summary of the information about this variant."
+msgstr "Obtenir un résumé des informations de cette variante."
+msgid "Make an exact copy of this variant."
+msgstr "Faire une copie exacte de cette variante."
+msgid "Export this variant into code to import into another page."
+msgstr ""
+"Exporter cette variante sous forme de code pour l'importer dans une "
+"autre page."
+msgid "Remove all changes to this variant and revert to the version in code."
+msgstr ""
+"Supprimer tous les changements de cette variante et rétablir la "
+"version fournie par son code source."
+msgid "Remove this variant from the page completely."
+msgstr "Supprimer cette variante de la page."
+msgid "Activate this variant so that it will be in use in your system."
+msgstr "Activer cette variante afin qu'elle soit utilisée par votre système."
+msgid ""
+"De-activate this variant. The data will remain but the variant will "
+"not be in use on your system."
+msgstr ""
+"Désactiver cette variante. Les données seront conservées mais la "
+"variante ne sera plus utilisée par votre système."
+msgid "No variants"
+msgstr "Aucune variante"
+msgid "This operation trail does not exist."
+msgstr "Cette opération n'existe pas."
+msgid ""
+"The page has been updated. Changes will not be permanent until you "
+"save."
+msgstr ""
+"Cette page a été mise à jour. Les changements ne seront pas "
+"sauvegardés tant que vous n'aurez enregistré."
+msgid "Unable to update changes due to lock."
+msgstr "Impossible d'appliquer les changements, un verrou est présent."
+msgid "This setting contains unsaved changes."
+msgstr "Ces paramètres contiennent des changements non sauvegardés."
+msgid ""
+"You have unsaved changes to this page. You must select Save to write "
+"them to the database, or Cancel to discard these changes. Please note "
+"that if you have changed any form, you must submit that form before "
+"saving."
+msgstr ""
+"Vous avez effectué des changements sur cette page qui ne sont pas "
+"sauvegardés. Vous devez cliquer sur Enregistrer pour sauvegarder les "
+"changements dans la base de données, ou sur Annuler pour ne pas "
+"prendre en compte ces changements. Veuillez notez que si vous avez "
+"changé les valeurs d'un formulaire, vous devez cliquer sur le bouton "
+"Mise à jour avant d'enregistrer votre page."
+msgid "All pending changes have been discarded, and the page is now unlocked."
+msgstr ""
+"Tous les changements ont été annulés, la page est maintenant "
+"déverrouillée."
+msgid ""
+"Administrative title of this variant. If you leave blank it will be "
+"automatically assigned."
+msgstr ""
+"Le titre administratif de cette variante. Si vous laissez ce champ "
+"vide il sera automatiquement renseigné."
+msgid "Variant type"
+msgstr "Type de variante"
+msgid "Optional features"
+msgstr "Fonctionnalités optionnelles"
+msgid ""
+"Check any optional features you need to be presented with forms for "
+"configuring them. If you do not check them here you will still be able "
+"to utilize these features once the new page is created. If you are not "
+"sure, leave these unchecked."
+msgstr ""
+"Sélectionnez les fonctionnalités facultatives dont vous avez besoin "
+"pour quelles soient présentes dans les formulaires de configuration. "
+"Si vous ne sélectionnez pas ces options ici vous pourrez toujours les "
+"activer une fois que votre page sera créée. Si vous n'êtes pas "
+"sûr, laissez ces options décochées."
+msgid "Variant name"
+msgstr "Nom de la variante"
+msgid "Enter the name of the new variant."
+msgstr "Saisissez le nom de la nouvelle variante."
+msgid "Paste variant code here"
+msgstr "Collez le code de la variante ici"
+msgid "No variant found."
+msgstr "Aucune variante trouvée."
+msgid "Unable to get a variant from the import. Errors reported: @errors"
+msgstr "Impossible d'importer une variante. Rapport d'erreurs : @errors"
+msgid ""
+"Reverting the variant will delete the variant that is in the database, "
+"reverting it to the original default variant. This deletion will not "
+"be made permanent until you click Save."
+msgstr ""
+"Ré-initialiser la variante va la supprimer de la base de données, la "
+"ramenant à sa variante d'origine, celle par défaut. Cette "
+"suppression ne sera effective que lorsque vous aurez cliqué sur le "
+"bouton Enregistrer."
+msgid ""
+"Are you sure you want to delete this variant? This deletion will not "
+"be made permanent until you click Save."
+msgstr ""
+"Êtes-vous sûr(e) de vouloir supprimer cette variante ? Cette "
+"suppression ne sera effective que lorsque vous aurez cliqué sur "
+"Enregistrer."
+msgid ""
+"This variant is currently disabled. Enabling it will make it available "
+"in your system. This will not take effect until you save this page."
+msgstr ""
+"Cette variante est désactivée. L'activer la rendra disponible dans "
+"votre système. Cela ne prendra effet que lorsque vous aurez "
+"enregistré cette page."
+msgid ""
+"This variant is currently enabled. Disabling it will make it "
+"unavailable in your system, and it will not be used. This will not "
+"take effect until you save this page."
+msgstr ""
+"Cette variante est activée. La désactiver la rendra indisponible "
+"pour le système, et elle ne sera pas utilisée. Cela ne prendra effet "
+"que lorsque vous aurez enregistré cette page."
+msgid ""
+"Breaking the lock on this page will <strong>discard</strong> any "
+"pending changes made by the locking user. Are you REALLY sure you want "
+"to do this?"
+msgstr ""
+"Faire sauter le verrou de cet page va <strong>annuler</strong> tout "
+"changement réalisé par l'utilisateur qui a verrouillé cette page. "
+"Êtes-vous SÛR de vouloir le faire ?"
+msgid ""
+"The lock has been cleared and all changes discarded. You may now make "
+"changes to this page."
+msgstr ""
+"Le verrou a été effacé ainsi que tous les changements. Vous pouvez "
+"maintenant faire des changements sur cette page."
+msgid ""
+"Enabling this page will immediately make it available in your system "
+"(there is no need to wait for a save.)"
+msgstr ""
+"Activer cette page la rendra disponible immédiatement dans votre "
+"système (il n'y a pas besoin d'attendre pour une sauvegarde)."
+msgid ""
+"Disabling this page will immediately make it unavailable in your "
+"system (there is no need to wait for a save.)"
+msgstr ""
+"Désactiver cette page la rendra indisponible immédiatement dans "
+"votre système (il n'y a pas besoin d'attendre une sauvegarde.)"
+msgid "This page has no variants and thus no output of its own."
+msgstr "Cette page n'a pas de variante et donc aucune sortie à générer."
+msgid "Add a new variant"
+msgstr "Ajouter une nouvelle variante"
+msgid "Unable to disable due to lock."
+msgstr "Impossible de désactiver, un verrou est présent."
+msgid "Unable to enable due to lock."
+msgstr "Impossible d'activer, un verrou est présent."
+msgid ""
+"Add, edit and remove overridden system pages and user defined pages "
+"from the system."
+msgstr ""
+"Ajouter, modifier et supprimer les pages système supplantées et les "
+"pages définies par l'utilisateur."
+msgid "Page manager"
+msgstr "Page manager"
+msgid "Provides a UI and API to manage pages within the site."
+msgstr ""
+"Fournit une interface utilisateur et une API pour gérer les pages "
+"dans le site."
+msgid "Node add/edit form"
+msgstr "Formulaire de création/édition d'un nœud"
+msgid ""
+"When enabled, this overrides the default Drupal behavior for adding or "
+"edit nodes at <em>node/%node/edit</em> and "
+"<em>node/add/%node_type</em>. If you add variants, you may use "
+"selection criteria such as node type or language or user access to "
+"provide different edit forms for nodes. If no variant is selected, the "
+"default Drupal node edit will be used."
+msgstr ""
+"Lorsque activé, ceci surcharge le comportement par défaut de Drupal "
+"pour créer ou modifier des nœuds sur les chemins "
+"<em>node/%node/edit</em> et <em>node/add/%node_type</em>. Si vous "
+"ajouté des variantes, vous pouvez utiliser les critères de "
+"sélection tel que le type de nœud ou la langue ou les permissions "
+"pour fournir des formulaires différents pour les nœuds. Si aucune "
+"variante n'est sélectionnée, le formulaire d'édition de nœud "
+"standard de Drupal sera utilisé."
+msgid "Node being edited"
+msgstr "Nœud en cours de modification"
+msgid ""
+"When enabled, this overrides the default Drupal behavior for "
+"displaying nodes at <em>node/%node</em>. If you add variants, you may "
+"use selection criteria such as node type or language or user access to "
+"provide different views of nodes. If no variant is selected, the "
+"default Drupal node view will be used. This page only affects nodes "
+"viewed as pages, it will not affect nodes viewed in lists or at other "
+"locations. Also please note that if you are using pathauto, aliases "
+"may make a node to be somewhere else, but as far as Drupal is "
+"concerned, they are still at node/%node."
+msgstr ""
+"Lorsque activé, ceci surcharge le comportement par défaut de Drupal "
+"pour afficher les nœuds sur le chemin <em>node/%node</em>. Si vous "
+"ajoutez des variantes, vous pourrez utiliser des critères de "
+"sélection tel que le type de nœud, la langue ou les permissions pour "
+"fournir différents types d'affichage à ces nœuds. Si vous ne "
+"sélectionnez pas de variante, l'affichage par défaut de Drupal sera "
+"utilisé pour les nœuds. Cette page affecte seulement les nœuds "
+"affichés en tant que page, elle n'affectera pas les listes de nœuds "
+"ou les nœuds affichés dans d'autres endroits. Veuillez également "
+"noter que si vous utilisez Pathauto, les alias d'URLs peuvent laisser "
+"paraître qu'un nœud est affiché ailleurs, mais pour Drupal ils sont "
+"toujours sur un chemin du type node/%node."
+msgid "Node being viewed"
+msgstr "Nœud en cours d'affichage"
+msgid "Argument settings"
+msgstr "Paramètres de l'argument"
+msgid "A meaningless second page"
+msgstr "Une seconde page sans importance"
+msgid "Administrative title"
+msgstr "Titre pour l'administration"
+msgid ""
+"The name of this page. This will appear in the administrative "
+"interface to easily identify it."
+msgstr ""
+"Le nom de cette page. Il apparaîtra dans l'interface d'administration "
+"afin de l'identifier facilement."
+msgid ""
+"The machine readable name of this page. It must be unique, and it must "
+"contain only alphanumeric characters and underscores. Once created, "
+"you will not be able to change this value!"
+msgstr ""
+"Le nom système de cette page. Il doit être unique et ne contenir que "
+"des caractères alphanumériques et des tirets bas. Une fois créée, "
+"vous ne pourrez plus changer cette valeur !"
+msgid "Administrative description"
+msgstr "Description pour l'administration"
+msgid ""
+"A description of what this page is, does or is for, for administrative "
+"use."
+msgstr ""
+"Une description de ce qu'est cette page, ce qu'elle fait ou est faîte "
+"pour, pour l'administration."
+msgid ""
+"The URL path to get to this page. You may create named placeholders "
+"for variable parts of the path by using %name for required elements "
+"and !name for optional elements. For example: \"node/%node/foo\", "
+"\"forum/%forum\" or \"dashboard/!input\". These named placeholders can "
+"be turned into contexts on the arguments form."
+msgstr ""
+"Le chemin d'URL pour accéder à cette page. Vous pouvez créer des "
+"jetons nommés pour les parties variables du chemin en utilisant la "
+"syntaxe %name pour les parties obligatoires et !name pour les parties "
+"optionnelles. Par exemple : \"node/%node/foo\", \"forum/%forum\" ou "
+"\"dashboard/!input\". Ces jetons nommés peuvent être transformés en "
+"contextes sur le formulaire d'arguments."
+msgid "Make this your site home page."
+msgstr "Définir comme page d'accueil du site."
+msgid "Visible menu item"
+msgstr "Elément de menu visible"
+msgid "Name is required."
+msgstr "Le nom est obligatoire."
+msgid "That name is used by another page: @page"
+msgstr "Ce nom est déjà utilisé par une autre page : @page"
+msgid "Page name must be alphanumeric or underscores only."
+msgstr ""
+"Le nom d'une page ne peut contenir que des caractères "
+"alphanumériques et des caractères de soulignements (_)."
+msgid "That path is used by another page: @page"
+msgstr "Ce chemin est déjà utilisé par une autre page : @page"
+msgid "You cannot have a dynamic path element after an optional path element."
+msgstr ""
+"Vous ne pouvez pas utiliser de partie de chemin dynamique après une "
+"partie de chemin optionnelle."
+msgid "You cannot have a static path element after an optional path element."
+msgstr ""
+"Vous ne pouvez pas utiliser de partie de chemin statique après une "
+"partie de chemin optionnelle."
+msgid ""
+"That path is currently assigned to be an alias for @alias. This system "
+"cannot override existing aliases."
+msgstr ""
+"Ce chemin est actuellement assigné à l'alias @alias. Ce système ne "
+"peut pas surcharger les alias existants."
+msgid ""
+"You cannot make this page your site home page if it uses % "
+"placeholders."
+msgstr ""
+"Vous ne pouvez pas faire de cette page votre page d'accueil du site si "
+"elle utilise des jetons % ."
+msgid "Duplicated argument %arg"
+msgstr "Argument dupliqué %arg"
+msgid "Invalid arg <em>%</em>. All arguments must be named with keywords."
+msgstr ""
+"Argument <em>%</em> invalide. Tous les arguments doivent être nommés "
+"avec des mots-clés."
+msgid ""
+"When providing a menu item as a default tab, Drupal needs to know what "
+"the parent menu item of that tab will be. Sometimes the parent will "
+"already exist, but other times you will need to have one created. The "
+"path of a parent item will always be the same path with the last part "
+"left off. i.e, if the path to this view is <em>foo/bar/baz</em>, the "
+"parent path would be <em>foo/bar</em>."
+msgstr ""
+"Lorsque vous définissez un élément de menu comme un onglet par "
+"défaut, Drupal a besoin de savoir quel sera son élément parent. "
+"Parfois le parent existera déjà, mais dans certains cas,  vous devez "
+"le créer. Le chemin d'un élément parent doit toujours être le "
+"même chemin avec la dernière partie supprimée, c'est-à-dire si le "
+"chemin de cette vue est <em>foo/bar/baz</em>, le chemin du parent doit "
+"être <em>foo/bar</em>."
+msgid "Parent item title"
+msgstr "Titre de l'élément parent"
+msgid "Parent item menu"
+msgstr "Menu de l'élément parent"
+msgid ""
+"Access rules are used to test if the page is accessible and any menu "
+"items associated with it are visible."
+msgstr ""
+"Les règles d'accès sont utilisées pour vérifier si la page est "
+"accessible et si tous les éléments de menus qui lui sont associés "
+"sont visibles."
+msgid "No context assigned"
+msgstr "Aucun contexte assigné"
+msgid "Position in path"
+msgstr "Position dans le chemin"
+msgid "Context assigned"
+msgstr "Context assigné"
+msgid "The path %path has no arguments to configure."
+msgstr "Le chemin %path n'a aucun argument à configurer."
+msgid "Invalid keyword."
+msgstr "Mot clé non valide."
+msgid "Change context type"
+msgstr "Changer le type de contexte"
+msgid "Change argument"
+msgstr "Changer l'argument"
+msgid "No context selected"
+msgstr "Pas de contexte sélectionné"
+msgid "Error: missing argument."
+msgstr "Erreur : argument manquant."
+msgid "Context identifier"
+msgstr "Identifiant du contexte"
+msgid ""
+"This is the title of the context used to identify it later in the "
+"administrative process. This will never be shown to a user."
+msgstr ""
+"Il s'agit du titre du contexte utilisé pour l'identifier plus tard "
+"dans la partie administrative. Il ne sera jamais affiché à "
+"l'utilisateur."
+msgid "Error: missing or invalid argument plugin %argument."
+msgstr "Erreur : plugin d'argument %argument manquant ou non valide."
+msgid "Import page"
+msgstr "Importer une page"
+msgid ""
+"Enter the name to use for this page if it is different from the source "
+"page. Leave blank to use the original name of the page."
+msgstr ""
+"Saisissez le nom à utiliser pour cette page s'il est différent de la "
+"page source. Laissez le champ vide pour utiliser le nom originel de la "
+"page."
+msgid ""
+"Enter the path to use for this page if it is different from the source "
+"page. Leave blank to use the original path of the page."
+msgstr ""
+"Saisissez le chemin à utiliser pour cette page s'il est différent de "
+"la page source. Laissez le champ vide pour utiliser le chemin originel "
+"de la page."
+msgid "Allow overwrite of an existing page"
+msgstr "Permettre l'écrasement d'une page existante"
+msgid ""
+"If the name you selected already exists in the database, this page "
+"will be allowed to overwrite the existing page."
+msgstr ""
+"Si le nom que vous avez choisi existe déjà dans la base de données, "
+"cette page pourra écraser la page existante."
+msgid "Paste page code here"
+msgstr "Coller le code de la page ici"
+msgid "No handler found."
+msgstr "Aucun gestionnaire (handler) trouvé."
+msgid "Unable to get a page from the import. Errors reported: @errors"
+msgstr ""
+"Impossible de récupérer une page à partir de l'import. Erreurs "
+"rapportées : @errors"
+msgid ""
+"That page name is in use and locked by another user. You must <a "
+"href=\"!break\">break the lock</a> on that page before proceeding, or "
+"choose a different name."
+msgstr ""
+"Ce nom de page est utilisé et verrouillé par un autre utilisateur. "
+"Vous devez <a href=\"!break\">casser le verrou</a> de cette page pour "
+"pouvoir continuer ou choisir un nom différent."
+msgid ""
+"Enter the name to the new page It must be unique and contain only "
+"alphanumeric characters and underscores."
+msgstr ""
+"Saisir le nom de la nouvelle page. Il doit être unique et ne contenir "
+"que des caractères alphanumériques et des tirets bas."
+msgid ""
+"The URL path to get to this page. You may create named placeholders "
+"for variable parts of the path by using %name for required elements "
+"and !name for optional elements. For example: \"node/%node/foo\", "
+"\"forum/%forum\" or \"dashboard/!input\". These named placeholders can "
+"be turned into contexts on the arguments form. You cannot use the same "
+"path as the original page."
+msgstr ""
+"Le chemin d'URL pour accéder à cette page. Vous pouvez créer des "
+"jetons nommés pour les parties variables du chemin en utilisant la "
+"syntaxe %name pour les parties obligatoires et !name pour les parties "
+"optionnelles. Par exemple : \"node/%node/foo\", \"forum/%forum\" ou "
+"\"dashboard/!input\". Ces jetons nommés peuvent être transformés en "
+"contextes sur le formulaire d'arguments. Vous ne pouvez pas utiliser "
+"le même chemin que la page d'origine."
+msgid "Clone variants"
+msgstr "Cloner les variantes"
+msgid ""
+"If checked all variants associated with the page will be cloned as "
+"well. If not checked the page will be cloned without variants."
+msgstr ""
+"Si sélectionné toutes les variantes associées à cette page seront "
+"également clonées. Si non sélectionné la page sera clonée sans "
+"ses variantes."
+msgid ""
+"Reverting the page will delete the page that is in the database, "
+"reverting it to the original default page. Any changes you have made "
+"will be lost and cannot be recovered."
+msgstr ""
+"Ré-initialiser la page va la supprimer de la base de données, la "
+"rétablissant à la page par défaut d'origine. Tout changement "
+"effectué sera perdu et ne pourra être récupéré."
+msgid ""
+"Are you sure you want to delete this page? Deleting a page cannot be "
+"undone."
+msgstr ""
+"Êtes-vous sûr(e) de vouloir supprimer cette page ? La suppression "
+"d'une page est irréversible."
+msgid "The page has been reverted."
+msgstr "La page a été réinitialisée."
+msgid ""
+"Administrator created pages that have a URL path, access control and "
+"entries in the Drupal menu system."
+msgstr ""
+"Des pages créées par l'administrateur qui ont un chemin d'URL, un "
+"contrôle d'accès et des entrées dans le système de menu de Drupal."
+msgid "Create a new page"
+msgstr "Créer une nouvelle page"
+msgid "Edit name, path and other basic settings for the page."
+msgstr ""
+"Modifier le nom, le chemin et d'autres paramètres de base pour cette "
+"page."
+msgid "Set up contexts for the arguments on this page."
+msgstr "Définir les contextes pour les arguments de cette page."
+msgid "Control what users can access this page."
+msgstr "Contrôler quels utilisateurs peuvent accéder à cette page."
+msgid "Provide this page a visible menu or a menu tab."
+msgstr "Fournir à cette page un menu visible ou un onglet de menu."
+msgid "Make a copy of this page"
+msgstr "Créer une copie de cette page"
+msgid ""
+"Export this page as code that can be imported or embedded into a "
+"module."
+msgstr ""
+"Exporter cette page en tant que code qui pourra être importé ou "
+"intégré dans un module."
+msgid "Remove all changes to this page and revert to the version in code."
+msgstr ""
+"Supprimer tous les changements de cette page et rétablir la version "
+"fournie par son code source."
+msgid "Remove this page from your system completely."
+msgstr "Supprimer entièrement cette page du système."
+msgid "This is your site home page."
+msgstr "C'est la page d'accueil de votre site."
+msgid "This page is set to become your site home page."
+msgstr "Cette page est définie pour devenir votre page d'accueil."
+msgid "Accessible only if @conditions."
+msgstr "Accessible seulement si @conditions."
+msgid "This page is publicly accessible."
+msgstr "Cette page est accessible publiquement."
+msgid "No menu entry."
+msgstr "Pas d'entrée dans le menu."
+msgid "Normal menu entry."
+msgstr "Entrée de menu normale."
+msgid "Menu tab."
+msgstr "Onglet de menu."
+msgid "Default menu tab."
+msgstr "Onglet de menu par défaut"
+msgid "Title: %title."
+msgstr "Titre : %title."
+msgid "Parent title: %title."
+msgstr "Titre du parent : %title"
+msgid "Menu block: %title."
+msgstr "Bloc de menu : %title"
+msgid "Taxonomy term template"
+msgstr "Gabarit du terme de taxonomie"
+msgid ""
+"When enabled, this overrides the default Drupal behavior for "
+"displaying taxonomy terms at <em>taxonomy/term/%term</em>. If you add "
+"variants, you may use selection criteria such as vocabulary or user "
+"access to provide different displays of the taxonomy term and "
+"associated nodes. If no variant is selected, the default Drupal "
+"taxonomy term display will be used. This page only affects items "
+"actually displayed ad taxonomy/term/%term. Some taxonomy terms, such "
+"as forums, have their displays moved elsewhere. Also please note that "
+"if you are using pathauto, aliases may make a taxonomy terms appear "
+"somewhere else, but as far as Drupal is concerned, they are still at "
+"taxonomy/term/%term."
+msgstr ""
+"Si activé, ceci surcharge le comportement par défaut de Drupal de "
+"l'affichage des pages de termes de taxinomie "
+"<em>taxonomy/term/%term</em>. Si vous aviez des variantes, vous "
+"pourriez utiliser des critères de sélection tel que le vocabulaire "
+"ou les permissions pour afficher différentes vues de la page des "
+"termes de taxinomies et des nœuds associés. Si aucune variante n'est "
+"sélectionnée, l'affichage par défaut des pages de termes de "
+"taxinomie sera utilisée. Cette page affecte uniquement les éléments "
+"affichés au chemin taxonomy/term/%term. Certains termes, tel que les "
+"forums, ont leur affichage géré ailleurs. Veuillez également noter "
+"que si vous utilisez Pathauto, les alias peuvent donner le sentiment "
+"qu'un terme de taxinomie est affiché ailleurs, mais pour Drupal ceci "
+"sont toujours au chemin taxonomy/term/%term."
+msgid "Term(s) being viewed"
+msgstr "Le(s) terme(s) affiché(s)"
+msgid "Term being viewed"
+msgstr "Le terme en cours d'affichage"
+msgid "Allow multiple terms on taxonomy/term/%term"
+msgstr "Autoriser plusieurs termes sur taxonomy/term/%term"
+msgid "Single term"
+msgstr "Un seul terme"
+msgid "Multiple terms"
+msgstr "Plusieurs termes"
+msgid ""
+"By default, Drupal allows multiple terms as an argument by separating "
+"them with commas or plus signs. If you set this to single, that "
+"feature will be disabled."
+msgstr ""
+"Par défaut Drupal autorise plusieurs termes par argument, séparés "
+"par des virgules ou des signes plus. Si vous choisissez \"Un seul "
+"terme\", cette fonctionnalité sera désactivée."
+msgid "Inject hierarchy of first term into breadcrumb trail"
+msgstr "Injecter la hiérarchie du premier terme dans le fil d'Ariane"
+msgid "If checked, taxonomy term parents will appear in the breadcrumb trail."
+msgstr ""
+"Si sélectionné, les parents du terme de taxonomie apparaîtront dans "
+"le fil d'Ariane."
+msgid "Multiple terms may be used, separated by , or +."
+msgstr ""
+"Plusieurs termes peuvent être utilisés, séparés par des virgules "
+"(,) ou des plus (+)."
+msgid "Only a single term may be used."
+msgstr "Seul un terme unique peut être utilisé."
+msgid "%term"
+msgstr "%term"
+msgid "Breadcrumb trail will contain taxonomy term hierarchy"
+msgstr "Le fil d'Ariane contiendra la hiérarchie des termes de la taxonomie"
+msgid "Breadcrumb trail will not contain taxonomy term hiearchy."
+msgstr ""
+"Le fil d'Ariane ne contiendra pas la hiérarchie des termes de la "
+"taxonomie."
+msgid "User profile template"
+msgstr "Gabarit du profil utilisateur"
+msgid ""
+"When enabled, this overrides the default Drupal behavior for "
+"displaying user profiles at <em>user/%user</em>. If you add variants, "
+"you may use selection criteria such as roles or user access to provide "
+"different views of user profiles. If no variant is selected, the "
+"default Drupal user view will be used. Please note that if you are "
+"using pathauto, aliases may make a node to be somewhere else, but as "
+"far as Drupal is concerned, they are still at user/%user."
+msgstr ""
+"Si activé, ceci surcharge l'affichage par défaut de Drupal pour "
+"afficher le profile des utilisateurs <em>user/%user</em>. Si vous "
+"ajoutez des variantes, vous pourrez utiliser des critères de "
+"sélection tel que les rôles ou les permissions pour fournir des "
+"affichages différents des profiles utilisateurs. Si aucune variante "
+"n'est sélectionnée, l'affichage par défaut de Drupal sera utilisé. "
+"Notez que si vous utilisez Pathauto, les alias peuvent donner "
+"l'impression que les profiles utilisateurs sont affichés ailleurs, "
+"mais pour Drupal ils sont toujours affiché au chemin user/%user."
+msgid "User being viewed"
+msgstr "L'utilisateur en cours d'affichage"
+msgid ""
+"This page is being edited by another user and you cannot make changes "
+"to it."
+msgstr ""
+"Cette page est en cours de modification par un autre utilisateur, vous "
+"ne pouvez donc pas la modifier."
+msgid ""
+"This page is newly created and has not yet been saved to the database. "
+"It will not be available until you save it."
+msgstr ""
+"Cette page vient d'être créée et n'a pas encore été enregistrée "
+"dans la base de données. Elle ne sera pas disponible tant que vous ne "
+"l'aurez pas enregistrée."
+msgid ""
+"This page has been modified, but these modifications are not yet live. "
+"While modifying this page, it is locked from modification by other "
+"users."
+msgstr ""
+"Cette page a été modifiée, mais ces changements ne sont pas encore "
+"actifs. Lors de la modification de cette page, celle-ci est "
+"verrouillée et ne peut pas être modifiée par les autres "
+"utilisateurs."
+msgid "No task handlers are defined for this task."
+msgstr ""
+"Aucun gestionnaire (handler) de tâche n'est défini pour cette "
+"tâche."
+msgid "Variant"
+msgstr "Variante"
+msgid ""
+"This page is being edited by user !user, and is therefore locked from "
+"editing by others. This lock is !age old. Click here to <a "
+"href=\"!break\">break this lock</a>."
+msgstr ""
+"Cette page est en cours d'édition par l'utilisateur !user, et est "
+"donc verrouillée. Ce verrou est actif depuis !age. Cliquez ici pour "
+"<a href=\"!break\">casser ce verrou</a>."
+msgid "User: compare"
+msgstr "Utilisateur : comparer"
+msgid "Compare two users (logged-in user and user being viewed, for example)"
+msgstr ""
+"Comparer deux utilisateurs (l'utilisateur connecté et l'utilisateur "
+"visualisé, par exemple)"
+msgid "First User"
+msgstr "Premier utilisateur"
+msgid "Second User"
+msgstr "Deuxième utilisateur"
+msgid ""
+"Grant access based on comparison of the two user contexts. For "
+"example, to grant access to a user to view their own profile, choose "
+"\"logged in user\" and \"user being viewed\" and say \"grant access if "
+"equal\". When they're the same, access will be granted."
+msgstr ""
+"Accorder un accès basé sur la comparaison des contextes de deux "
+"utilisateurs. Par exemple, pour accorder à un utilisateur l'accès à "
+"son propre profil, choisir \"utilisateur connecté\" et "
+"\"l'utilisateur en cours d'affichage\" et appliquer \"accorder "
+"l'accès si identique\". Quand ils identiques, les accès seront "
+"accordés."
+msgid "Grant access if user contexts are"
+msgstr "Accorde l'accès si les contextes utilisateur sont"
+msgid "Not equal"
+msgstr "Différent"
+msgid "@id1 @comp @id2"
+msgstr "@id1 @comp @id2"
+msgid "Node: accessible"
+msgstr "Nœud: accessible"
+msgid "Control access with built in Drupal node access test."
+msgstr ""
+"Contrôler l'accès avec le test interne d'accès aux noeuds de "
+"Drupal."
+msgid "Create nodes of the same type"
+msgstr "Créer des nœuds du même type"
+msgid ""
+"Using built in Drupal node access rules, determine if the user can "
+"perform the selected operation on the node."
+msgstr ""
+"Utiliser les règles internes d'accès aux nœuds de Drupal, "
+"détermine si l'utilisateur peut effectuer l'opération sélectionnée "
+"sur le nœud."
+msgid "@user can view @node."
+msgstr "@user peut voir @node."
+msgid "@user can edit @node."
+msgstr "@user peut modifier @node."
+msgid "@user can delete @node."
+msgstr "@user peut supprimer @node."
+msgid "@user can create nodes of the same type as @node."
+msgstr "@user peut créer des nœuds de même type que @node."
+msgid "Node: language"
+msgstr "Nœud : langue"
+msgid "Control access by node language."
+msgstr "Contrôler l'accès par la langue du noeud."
+msgid "Current site language"
+msgstr "Langue actuelle du site"
+msgid "Pass only if the node is in one of the selected languages."
+msgstr "Passer seulement si le nœud est dans une des langues sélectionnée."
+msgid "@identifier is in any language"
+msgstr "@identifier est dans n'importe quelle langue"
+msgid "@identifier language is \"@languages\""
+msgid_plural "@identifier language is one of \"@languages\""
+msgstr[0] "La langue de @identifier est \"@languages\""
+msgstr[1] "La langue de @identifier est l'une des suivantes : \"@languages\""
+msgid "Node: type"
+msgstr "Nœud : type"
+msgid "Control access by node_type."
+msgstr "Contrôle d'accès par node_type."
+msgid "Only the checked node types will be valid."
+msgstr "Seuls les types de nœuds cochés seront valides."
+msgid "@identifier is any node type"
+msgstr "@identifier est un type de nœud quelconque"
+msgid "@identifier is type \"@types\""
+msgid_plural "@identifier type is one of \"@types\""
+msgstr[0] "Le type de @identifier est \"@types\""
+msgstr[1] "Le type de @identifier est l'un des suivants : \"@types\""
+msgid "User: permission"
+msgstr "Utilisateur : permission"
+msgid "Control access by permission string."
+msgstr "Contrôler l'accès par chaîne de permissions."
+msgid "Error, unset permission"
+msgstr "Erreur, permission non définie"
+msgid "@identifier has \"@perm\""
+msgstr "@identifier a \"@perm\""
+msgid "Control access through arbitrary PHP code."
+msgstr "Contrôler l'accès via un code PHP arbitraire."
+msgid "Administrative desc"
+msgstr "Description administrative"
+msgid "A description for this test for administrative purposes."
+msgstr "Une description de ce test à des fins administratives."
+msgid ""
+"Access will be granted if the following PHP code returns "
+"<code>TRUE</code>. Do not include &lt;?php ?&gt;. Note that executing "
+"incorrect PHP-code can break your Drupal site. All contexts will be "
+"available in the <em>$contexts</em> variable."
+msgstr ""
+"L'accès sera accordé si le code PHP suivant retourne "
+"<code>VRAi</code>. Ne pas inclure &lt;?php ?&gt;. Attention tout code "
+"PHP incorrect peut endommager votre site Drupal. Tous les contextes "
+"seront disponibles dans la variable <em>$contexts</em>."
+msgid "You do not have sufficient permissions to edit PHP code."
+msgstr "Vous n'avez pas les droits suffisants pour modifier du code PHP."
+msgid "User: role"
+msgstr "Utilisateur : rôle"
+msgid "Control access by role."
+msgstr "Contrôler l'accès par rôle."
+msgid "Only the checked roles will be granted access."
+msgstr "L'accès sera accordé seulement aux rôles cochés"
+msgid "@identifier can have any role"
+msgstr "@identifier peut avoir n'importe quel rôle"
+msgid "@identifier has role \"@roles\""
+msgid_plural "@identifier has one of \"@roles\""
+msgstr[0] "@identifier a le rôle \"@roles\""
+msgstr[1] "@identifier a l'un des rôles \"@roles\""
+msgid "User: language"
+msgstr "Utilisateur : langue"
+msgid "Control access by the language the user or site currently uses."
+msgstr "Contrôle l'accès par la langue de l'utilisateur ou du site."
+msgid ""
+"Pass only if the current site language is one of the selected "
+"languages."
+msgstr ""
+"Passe seulement si le langage courant du site est l'un des langages "
+"sélectionnés."
+msgid "Site language is any language"
+msgstr "La langue du site est n'importe quelle langue"
+msgid "Site language is \"@languages\""
+msgid_plural "Site language is one of \"@languages\""
+msgstr[0] "La langue du site est \"@languages\""
+msgstr[1] "La langue du site est l'une des suivantes : \"@languages\""
+msgid "Taxonomy: vocabulary"
+msgstr "Taxonomie : vocabulaire"
+msgid "@identifier is any vocabulary"
+msgstr "@identifier est n'importe quel vocabulaire"
+msgid "Creates a node context from a node ID argument."
+msgstr ""
+"Crée un contexte de nœud à partir d'un argument de type identifiant "
+"de nœud."
+msgid "Enter the node ID of a node for this argument"
+msgstr "Saisir un identifiant de nœud pour cet argument"
+msgid "Creates a node add form context from a node type argument."
+msgstr ""
+"Créé un contexte de formulaire d'ajout de nœud à partir d'un "
+"argument de type nœud."
+msgid "Creates a node edit form context from a node ID argument."
+msgstr ""
+"Créé un contexte de formulaire d'édition de nœud à partir d'un ID "
+"d'argument nœud."
+msgid "Enter a value for this argument"
+msgstr "Saisir une valeur pour cet argument"
+msgid "Inject hierarchy into breadcrumb trail"
+msgstr "Injecter la hiérarchie dans le fil d'Ariane"
+msgid "Enter a taxonomy term ID."
+msgstr "Saisir un identifiant de terme de taxonomie."
+msgid "Enter a taxonomy term name."
+msgstr "Saisir le nom d'un terme de taxonomie."
+msgid "Creates a user context from a user ID argument."
+msgstr ""
+"Créer un contexte utilisateur à partir d'un identifiant utilisateur "
+"comme argument."
+msgid "Enter the user ID of a user for this argument"
+msgstr "Saisir l'identifiant de l'utilisateur pour cet argument"
+msgid "Creates a vocabulary context from a vocabulary ID argument."
+msgstr ""
+"Crée un contexte de vocabulaire à partir d'un identifiant de "
+"vocabulaire comme argument."
+msgid "Enter the vocabulary ID for this argument"
+msgstr "Saisir l'identifiant du vocabulaire pour cet argument"
+msgid "Use context keywords"
+msgstr "Utiliser des mots-clés contextuels"
+msgid "If checked, context keywords will be substituted in this content."
+msgstr ""
+"Si coché, les mots-clés contextuels seront substitués à ce "
+"contenu."
+msgid "Substitutions"
+msgstr "Substitutions"
+msgid "@identifier: @title"
+msgstr "@identifier : @title"
+msgid "The author of the referenced node."
+msgstr "L'auteur du nœud référencé."
+msgid "Link to author profile"
+msgstr "Lier au profil de l'auteur"
+msgid "Check here to link to the node author profile."
+msgstr "Cocher ici pour lier au profil de l'auteur du nœud."
+msgid "\"@s\" author"
+msgstr "Auteur de \"@s\""
+msgid "The body of the referenced node."
+msgstr "Le corps du nœud référencé."
+msgid "\"@s\" body"
+msgstr "Corps de \"@s\""
+msgid "Node created date"
+msgstr "Date de création du nœud"
+msgid "The date the referenced node was created."
+msgstr "Date de création du nœud référencé."
+msgid "\"@s\" created date"
+msgstr "Date de création de \"@s\""
+msgid "Node links go here."
+msgstr "Les liens du nœud vont ici."
+msgid "\"@s\" links"
+msgstr "Liens de \"@s\""
+msgid "The title of the referenced node."
+msgstr "Le titre du nœud référencé."
+msgid "\"@s\" title"
+msgstr "Titre de \"@s\""
+msgid "Node last updated date"
+msgstr "Date de dernière mise à jour du nœud"
+msgid "The date the referenced node was last updated."
+msgstr "Date de dernière mise à jour du nœud référencé."
+msgid "Last updated date"
+msgstr "Date de dernière mise à jour"
+msgid "\"@s\" last updated date"
+msgstr "Date de dernière mise à jour de \"@s\""
+msgid "node_form"
+msgstr "node_form"
+msgid "Node form submit buttons"
+msgstr "Boutons de soumissions du formulaire de nœud"
+msgid "Submit buttons for the node form."
+msgstr "Boutons de soumissions pour le formulaire de nœud."
+msgid "Node form buttons."
+msgstr "Boutons du formulaire de nœud."
+msgid "Revision log message for the node."
+msgstr "Message du journal des révisions pour le nœud."
+msgid "Profile category"
+msgstr "Catégorie du profil"
+msgid "Enter the node ID of a node for this context."
+msgstr "Saisir l'identifiant d'un nœud pour ce contexte."
+msgid "'%title' [node id %nid]"
+msgstr "'%title' [id de nœud %nid]"
+msgid "Enter the node type this context."
+msgstr "Saisir le type de nœud pour ce contexte."
+msgid "Enter the node ID of a node for this argument:"
+msgstr "Saisir l'identifiant d'un nœud pour cet argument :"
+msgid "Raw string"
+msgstr "Chaîne de caractères brute"
+msgid "Enter the string for this context."
+msgstr "Saisir une chaîne pour ce contexte."
+msgid "Select a term from @vocabulary."
+msgstr "Choisir un terme dans @vocabulary."
+msgid "You must select a term."
+msgstr "Vous devez choisir un terme."
+msgid "Invalid term selected."
+msgstr "Terme sélectionné invalide."
+msgid "Multiple taxonomy terms, as a group."
+msgstr "Plusieurs termes de taxonomie, comme un groupe."
+msgid "Term ID of first term"
+msgstr "Identifiant (ID) de terme du premier terme"
+msgid "Term ID of all term, separated by + or ,"
+msgstr ""
+"Identifiants (ID) de termes de tous les termes, séparés par des + ou "
+"des ,"
+msgid "Term name of first term"
+msgstr "Nom de terme du premier terme"
+msgid "Term name of all terms, separated by + or ,"
+msgstr "Le nom de tous les termes, séparés pas \"+\" ou \",\""
+msgid "Vocabulary ID of first term"
+msgstr "Identifiant (ID) de vocabulaire du premier terme"
+msgid "Make all views available as panes"
+msgstr "Rendre toutes les vues utilisables en tant que volets"
+msgid ""
+"If checked, all views will be made available as content panes to be "
+"added to content types. If not checked, only Views that have a "
+"'Content pane' display will be available as content panes. Uncheck "
+"this if you want to be able to more carefully control what view "
+"content is available to users using the panels layout UI."
+msgstr ""
+"Si coché, toutes les vues seront disponibles sous forme de content "
+"pane pour être ajoutées aux types de contenu. Si non sélectionné, "
+"seules les vues qui disposent d'un affichage Content pane seront "
+"disponible en tant que content panes. Désélectionnez ceci si vous "
+"souhaitez contrôler plus finement quelles vues sont diponibles "
+"l'interface des panels pour les utilisateurs."
+msgid "Configure Views to be used as CTools content."
+msgstr "Configurer des vues pour être utilisées comme contenu avec CTools."
+msgid "Views content panes"
+msgstr "Volets de contenu de Views"
+msgid ""
+"Allows Views content to be used in Panels, Dashboard and other modules "
+"which use the CTools Content API."
+msgstr ""
+"Permet au contenu de Views d'être utilisé dans Panels, Dashboard et "
+"d'autres modules qui utilisent l'API CTools."
+msgid "Select display"
+msgstr "Sélectionner un affichage"
+msgid "Configure view"
+msgstr "Configurer la vue"
+msgid "Choose which display of this view you wish to use."
+msgstr "Choisissez l'affichage de cette vue vous souhaitez utiliser."
+msgid "Broken/missing/deleted view."
+msgstr "Vue cassée/manquante/supprimée."
+msgid "Configure view @view (@display)"
+msgstr "Configurer la vue @view (@display)"
+msgid "View: @name"
+msgstr "Vue : @name"
+msgid "View information"
+msgstr "Information sur la vue"
+msgid "Using display @display."
+msgstr "Utilisation de l'affichage @display."
+msgid "Argument @arg using context @context converted into @converter"
+msgstr ""
+"L'argument @arg utilisant le contexte @context a été converti en "
+"@converter"
+msgid "@count items displayed."
+msgstr "@count éléments affichés."
+msgid "With pager."
+msgstr "Avec pagination."
+msgid "Without pager."
+msgstr "Sans pagination."
+msgid "Skipping first @count results"
+msgstr "Ignorer les @count premiers résultats"
+msgid "With more link."
+msgstr "Avec un lien plus."
+msgid "With feed icon."
+msgstr "Avec une icône de flux."
+msgid "Sending arguments."
+msgstr "Envoi des arguments."
+msgid "Using arguments: @args"
+msgstr "Avec les arguments : @args"
+msgid "Using url: @url"
+msgstr "Avec l'URL : @url"
+msgid "View panes"
+msgstr "Volets de vue"
+msgid "Link title to page"
+msgstr "Lier le titre à la page"
+msgid "Provide a \"more\" link."
+msgstr "Fournir un lien \"plus\"."
+msgid "Num items"
+msgstr "Nombre d'éléments"
+msgid "Select the number of items to display, or 0 to display all results."
+msgstr ""
+"Choisir le nombre d'éléments à afficher ou 0 pour afficher tous les "
+"résultats."
+msgid "Enter the number of items to skip; enter 0 to skip no items."
+msgstr ""
+"Saisir le nombre d'éléments à ignorer ; saisir 0 pour n'ignorer "
+"aucun élément."
+msgid ""
+"If this is set, override the View URL path; this can sometimes be "
+"useful to set to the panel URL."
+msgstr ""
+"Si ceci est défini, supplanter le chemin d'URL de la Vue ; ceci peut "
+"être pratique pour la définir à l'URL du panneau."
+msgid "Content pane"
+msgstr "Volet de contenu"
+msgid "Is available as content for a panel or dashboard display."
+msgstr ""
+"Est disponible comme contenu pour un panneau ou un affichage de "
+"tableau de bord."
+msgid "Pane settings"
+msgstr "Paramètres du volet"
+msgid "Use view name"
+msgstr "Utiliser le nom de la vue"
+msgid "Use view description"
+msgstr "Utiliser la description de la vue"
+msgid "Admin desc"
+msgstr "Description pour l'administration"
+msgid "Use Panel path"
+msgstr "Utiliser le chemin du module Panel"
+msgid "Argument input"
+msgstr "Saisie d'argument"
+msgid "Allow settings"
+msgstr "Permettre les paramètres"
+msgid ""
+"Checked settings will be available in the panel pane config dialog for "
+"modification by the panels user. Unchecked settings will not be "
+"available and will only use the settings in this display."
+msgstr ""
+"Les paramètres sélectionnés seront disponibles dans le volet de la "
+"fenêtre de configuration pour être modifiés par l'utilisateur. Les "
+"paramètres non sélectionnés ne seront pas disponibles et "
+"n'utiliseront que les paramètres de cet affichage."
+msgid "Pager offset"
+msgstr "Décalage de la pagination"
+msgid "Path override"
+msgstr "Supplantation du chemin"
+msgid "Title override"
+msgstr "Supplantation du titre"
+msgid ""
+"This is the title that will appear for this view pane in the add "
+"content dialog. If left blank, the view name will be used."
+msgstr ""
+"Ceci est le titre qui va apparaître pour le volet de cette vue dans "
+"la fenêtre d'ajout de contenu. Si vide, le nom de la vue sera "
+"utilisé."
+msgid ""
+"This is text that will be displayed when the user mouses over the pane "
+"in the add content dialog. If blank the view description will be used."
+msgstr ""
+"Ceci est le texte qui va apparaître quand l'utilisateur va placer sa "
+"souris au-dessus du volet dans la fenêtre d'ajout de contenu. Si "
+"vide, la description de la vue sera utilisée."
+msgid "This is category the pane will appear in on the add content dialog."
+msgstr ""
+"Ceci est la catégorie dans laquelle apparaîtra le volet dans la "
+"fenêtre d'ajout de contenu."
+msgid ""
+"This is the default weight of the category. Note that if the weight of "
+"a category is defined in multiple places, only the first one Panels "
+"sees will get that definition, so if the weight does not appear to be "
+"working, check other places that the weight might be set."
+msgstr ""
+"Ceci est le poids par défaut de la catégorie. Notez que si le poids "
+"de la catégorie est défini à plusieurs endroits, seul le premier "
+"est visible par Panels, donc si le poids ne semble pas fonctionner, "
+"vérifiez dans les autres endroits où le poids pourrait avoir été "
+"défini."
+msgid "Link pane title to view"
+msgstr "Lier le titre du volet à la vue"
+msgid "Inherit path from panel display"
+msgstr "Hériter du chemin de l'affichage du panneau"
+msgid ""
+"If yes, all links generated by Views, such as more links, summary "
+"links, and exposed input links will go to the panels display path, not "
+"the view, if the display has a path."
+msgstr ""
+"Si oui, tous les liens générés par Views, tel que les liens plus, "
+"les liens de résumé, et les liens de saisies exposés vont aller "
+"dans l'affichage des chemins des panels et non dans la vue, si "
+"l'affichage a un chemin."
+msgid "Choose the data source for view arguments"
+msgstr "Choisissez la source de données des arguments de la vue"
+msgid "@arg source"
+msgstr "source de @arg"
+msgid ""
+"Panel pages can be used as landing pages. They have a URL path, accept "
+"arguments and can have menu entries."
+msgstr ""
+"Les pages du panel peuvent être utilisées comme des pages d'arrivée "
+"(landing pages). Elles possèdent une URL, acceptent les arguments et "
+"peuvent avoir des entrées de menu."
+msgid "Panel page"
+msgstr "Page du panel"
+msgid "Go to list"
+msgstr "Aller à la liste"
+msgid "Selection rules"
+msgstr "Règles de sélection"
+msgid ""
+"Control the criteria used to decide whether or not this variant is "
+"used."
+msgstr ""
+"Contrôler le critère utilisé pour décider si cette variante est "
+"utilisée ou non."
+msgid ""
+"Add additional context objects to this variant that can be used by the "
+"content."
+msgstr ""
+"Ajouter des objets de contexte additionnels pour que cette variante "
+"puisse être utilisée par le contenu."
+msgid "This panel will be selected if @conditions."
+msgstr "Ce panel sera sélectionné si @conditions."
+msgid "This panel will always be selected."
+msgstr "Ce panel sera toujours sélectionné."
+msgid "Selection rule"
+msgstr "Règle de sélection"
+msgid "Panel: @title"
+msgstr "Panneau : @title"
+msgid "Administrative title of this variant."
+msgstr "Titre administratif de cette variante."
+msgid "(start from last values)"
+msgstr "(commencer par les dernières valeurs)"
+msgid ""
+"Demonstration code, advanced help, and a demo panel to show how to "
+"build ctools plugins."
+msgstr ""
+"Code de démonstration, aide avancée et panneau de démonstration "
+"pour montrer comment construire des plugins ctools."
+msgid ""
+"The CTools Plugin Example is simply a developer's demo of how to "
+"create plugins for CTools. It provides no useful functionality for an "
+"ordinary user."
+msgstr ""
+"Le Plugin d'Exemple CTools est une simple demonstration de "
+"développement montrant comment créer des plugins pour CTools. Il ne "
+"fournit aucune functionnalité intéressante pour un utilisateur "
+"classique."
+msgid ""
+"There is a demo panel demonstrating much of the functionality provided "
+"at\n"
+"    <a href=\"@demo_url\">CTools demo panel</a>, and you can find "
+"documentation on the examples at\n"
+"    !ctools_plugin_example_help.\n"
+"    CTools itself provides documentation at !ctools_help. Mostly, "
+"though, the code itself is intended to be the teacher.\n"
+"    You can find it in %path."
+msgstr ""
+"Un panneau démontrant la plupart des fonctionnalités est fourni à "
+"l'adresse\r\n"
+"    <a href=\"@demo_url\">Panneau de démo CTools</a>, et vous pouvez "
+"disposer de documentation à propos des exemples à l'adresse \r\n"
+"    !ctools_plugin_example_help.\r\n"
+"    CTools lui-même fournit de la documentation à l'adresse "
+"!ctools_help. Cependant, généralement, le code lui-même est le "
+"meilleur des enseignants.\r\n"
+"    Vous le trouverez dans %path."
+msgid "CTools plugin example"
+msgstr "Exemple de plugin CTools"
+msgid "Chaos Tools (CTools) Plugin Example"
+msgstr "Exemple de plugin Chaos Tools (CTools)"
+msgid ""
+"Shows how an external module can provide ctools plugins (for Panels, "
+"etc.)."
+msgstr ""
+"Montre comment un module externe peut fournir des plugins ctools (pour "
+"Panels, etc.)."
+msgid "Arg length"
+msgstr "Taille de l'argument"
+msgid "Control access by length of simplecontext argument."
+msgstr "Contrôler l'accès par taille de l'argument simplecontext."
+msgid "Grant access if simplecontext argument length is"
+msgstr "Accorder l'accès si la taille de l'argument simplecontext est"
+msgid "Length of simplecontext argument"
+msgstr "Taille de l'argument simplecontext"
+msgid "Access/visibility will be granted based on arg length."
+msgstr ""
+"L'accès/visibilité sera accordé en se basant sur la taille de "
+"l'argument."
+msgid "Simpletext argument must be !comp @length characters"
+msgstr "L'argument Simpletext doit être !comp @length caractères"
+msgid "CTools example: role"
+msgstr "Exemple CTools : rôle"
+msgid "@identifier must have role \"@roles\""
+msgid_plural "@identifier can be one of \"@roles\""
+msgstr[0] "@identifier doit avoir le rôle \"@roles\""
+msgstr[1] "@identifier peut être un des rôles parmi \"@roles\""
+msgid "Creates a \"simplecontext\" from the arg."
+msgstr "Créer un \"simplecontext\" à partir des arguments."
+msgid "Enter the simplecontext arg"
+msgstr "Entrer les arguments de simplecontexte"
+msgid "CTools example no context content type"
+msgstr "Exemple Ctools pour un type de contenu sans contexte"
+msgid "No context content type - requires and uses no context."
+msgstr ""
+"Type de contenu sans contexte - ne requiert ni n'utilise aucun "
+"contexte."
+msgid "CTools Examples"
+msgstr "Exemples CTools"
+msgid "The setting for item 1."
+msgstr "Le paramétrage de l'élément 1."
+msgid "The setting for item 2"
+msgstr "Le paramétrage de l'élément 2."
+msgid "CTools example relcontext content type"
+msgstr "Exemple CTool pour un type de contenu relcontext"
+msgid "Relcontext content type - works with relcontext context."
+msgstr "Type de contenu relcontext - fonctionne avec le context relcontext."
+msgid "Config Item 1 (relcontext)"
+msgstr "Configuration de l'élément 1 (relcontext)"
+msgid "Setting for relcontext."
+msgstr "Paramètre pour relcontext."
+msgid "Simplecontext content type"
+msgstr "Type de contenu Simplecontext"
+msgid "Simplecontext content type - works with a simplecontext context."
+msgstr ""
+"Type de contenu Simplecontext - fonctionne avec un contexte "
+"simplecontext"
+msgid "Config Item 1 for simplecontext content type"
+msgstr "Élément de configuration 1 pour le type de contenu simplecontext"
+msgid "Relcontext context from simplecontext"
+msgstr "Un context relcontext de simplecontext"
+msgid "Relcontext setting"
+msgstr "Paramètre Relcontext"
+msgid "Just an example setting."
+msgstr "Juste un exemple de paramètre."
+msgid "A single \"simplecontext\" context, or data element."
+msgstr "Un seul context \"simplecontext\", ou un élément de données"
+msgid "Enter some data to represent this \"simplecontext\"."
+msgstr "Saisir des données pour représenter ce \"simplecontext\"."
+msgid "Simplecontext context from config"
+msgstr "Un contexte Simplecontext à partir de la configuration"
+msgid "Setting for simplecontext"
+msgstr "Paramètre de simplecontext"
+msgid "An example setting that could be used to configure a context"
+msgstr ""
+"Un exemple de paramètre qui pourrait être utilisé pour configurer "
+"un contexte"
+msgid "Relcontext from simplecontext"
+msgstr "Relcontext à partir de simplecontext"
+msgid "See the getting started guide for more information."
+msgstr "Consulter le guide de démarrage pour plus d'informations."
+msgid ""
+"Before this variant can be added, it must be configured. When you are "
+"finished, click \"Create variant\" at the end of this wizard to add "
+"this to your page."
+msgstr ""
+"Avant que cette variante ne puisse être ajoutée, elle doit être "
+"configurée. Lorsque vous avez terminé, cliquez sur \"Créer la "
+"variante\" à la fin de l'assistant pour l'ajouter à votre page."
+msgid ""
+"Page manager module is unable to enable node/%node/edit because some "
+"other module already has overridden with %callback."
+msgstr ""
+"Le module Page manager est incapable d'activer node/%node/edit parce "
+"que d'autres modules l'on déjà surchargé avec %callback."
+msgid ""
+"Page manager module is unable to override @path because some other "
+"module already has overridden with %callback. Node edit will be "
+"enabled but that edit path will not be overridden."
+msgstr ""
+"Le module Page manager est incapable de surcharger le chemin @path "
+"parce que d'autres modules l'on déjà surchargé avec %callback. "
+"L'édition de nœud sera activée, mais le chemin d'édition ne sera "
+"pas surchargé."
+msgid ""
+"Page manager module is unable to enable node/%node because some other "
+"module already has overridden with %callback."
+msgstr ""
+"Le module Page manager est incapable d'activer node/%node car d'autres "
+"modules l'ont déjà surchargé avec %callback."
+msgid ""
+"Paths with non optional placeholders cannot be used as normal menu "
+"items unless the selected argument handler provides a default argument "
+"to use for the menu item."
+msgstr ""
+"Les chemins avec des jetons obligatoires ne peuvent pas être "
+"utilisés comme éléments de menu normaux à moins que le "
+"gestionnaire d'argument sélectionné fournisse un argument par "
+"défaut à utiliser par cet élément de menu."
+msgid ""
+"Page manager module is unable to enable user/%user because some other "
+"module already has overridden with %callback."
+msgstr ""
+"Le module Page manager ne peut pas activer user/%user car un autre "
+"module a déjà supplanté cette page avec %callback."
+msgid "Existing node"
+msgstr "Nœud existant"
+msgid "Enter the title or NID of a node"
+msgstr "Saisir le titre ou le NID d'un nœud"
+msgid "Template identifier"
+msgstr "Identifiant du template"
+msgid "Add the breadcrumb trail as content."
+msgstr "Ajouter le fil d'Ariane comme contenu."
+msgid "Add the help text of the current page as content."
+msgstr "Ajouter le texte d'aide de la page courante comme contenu."
+msgid "Status messages"
+msgstr "Messages de statut"
+msgid "Add the status messages of the current page as content."
+msgstr "Ajouter les messages d'état de la page courante comme contenu."
+msgid "Add the tabs (local tasks) as content."
+msgstr "Ajouter des onglets (tâches locales) comme contenu."
+msgid "Add the page title as content."
+msgstr "Ajouter le titre de la page comme contenu."
+msgid "Manage pages"
+msgstr "Gérer les pages"
+msgid ""
+"\n"
+"    This is a block of data created by the Relcontent content type.\n"
+"    Data in the block may be assembled from static text (like this) or "
+"from the\n"
+"    content type settings form ($conf) for the content type, or from "
+"the context\n"
+"    that is passed in. <br />\n"
+"    In our case, the configuration form ($conf) has just one field, "
+"'config_item_1;\n"
+"    and it's configured with:\n"
+"    "
+msgstr ""
+"\n"
+"    Ceci est un bloc de données créé par le type de contenu "
+"Relcontent.\r\n"
+"    Les données dans le bloc peuvent être assemblées à partir de "
+"texte statique (comme ici), depuis le \r\n"
+"    formulaire de type de contenu ($conf) pour le type de contenu, ou "
+"depuis le contexte\r\n"
+"    passé ici. <br />\r\n"
+"    Dans notre cas, le formulaire de configuration ($conf) a juste un "
+"champ, 'config_item_1;\r\n"
+"    et est configuré avec :\n"
+"    "
+msgid ""
+"\n"
+"    This is a block of data created by the Simplecontext content "
+"type.\n"
+"    Data in the block may be assembled from static text (like this) or "
+"from the\n"
+"    content type settings form ($conf) for the content type, or from "
+"the context\n"
+"    that is passed in. <br />\n"
+"    In our case, the configuration form ($conf) has just one field, "
+"'config_item_1;\n"
+"    and it's configured with:\n"
+"    "
+msgstr ""
+"\n"
+"    Ceci est un bloc de données créé par le type de contenu "
+"Simplecontext.\r\n"
+"Les données du bloc peuvent-être assemblées à partir d'un texte "
+"statique (comme ça) ou à partir du\r\n"
+"formulaire de configuration ($conf) du type de contenu, ou à partir "
+"du contexte\r\n"
+"passé en paramètre. <br />\r\n"
+"Dans notre cas, le formulaire de configuration ($conf) a un seul "
+"champ, 'config_item_1';\r\n"
+"et il est configuré avec :\n"
+"    "
+msgid ""
+"This page is currently locked for editing by you. Nobody else may edit "
+"this page until these changes are saved or canceled."
+msgstr ""
+"Cette page est actuellement bloquée à l'édition par vous-même. "
+"Personne ne peut modifier cette page avant que ces changements aient "
+"été enregistrés ou annulés."
+msgid ""
+"This page is currently locked for editing by another user. You may not "
+"edit this page without breaking the lock."
+msgstr ""
+"Cette page est actuellement verrouillée pour la modification par un "
+"autre utilisateur. Vous ne pouvez pas modifier cette page sans casser "
+"le verrou."
+msgid ""
+"When enabled, this overrides the default Drupal behavior for the all "
+"blogs at <em>/blog</em>. If no variant is selected, the default Drupal "
+"most recent blog posts will be shown."
+msgstr ""
+"Si activé, supplante le comportement par défaut de Drupal pour tous "
+"les blogs à <em>/blog</em>. Si aucune variante n'est sélectionnée, "
+"les billets de blog les plus récents par défaut de Drupal seront "
+"affichés."
+msgid ""
+"Page manager module is unable to enable blog because some other module "
+"already has overridden with %callback."
+msgstr ""
+"Le module Page Manager est incapable d'activer le blog parce qu'un "
+"autre module l'a déjà supplanté avec %callback."
+msgid "User blog"
+msgstr "Blog de l'utilisateur"
+msgid ""
+"When enabled, this overrides the default Drupal behavior for "
+"displaying user blogs at <em>blog/%user</em>. If no variant is "
+"selected, the default Drupal user blog will be used."
+msgstr ""
+"Si activé, supplante le comportement par défaut de Drupal pour "
+"l'affichage des blogs de l'utilisateur à <em>blog/%user</em>. Si "
+"aucune variante n'est sélectionnée, le blog utilisateur par défaut "
+"de Drupal sera utilisé."
+msgid ""
+"Page manager module is unable to enable blog/%user because some other "
+"module already has overridden with %callback."
+msgstr ""
+"Le module Page Manager est incapable d'activer blog/%user parce qu'un "
+"autre module l'a déjà supplanté avec %callback."
+msgid "Site contact page"
+msgstr "Page de contact du site"
+msgid ""
+"When enabled, this overrides the default Drupal behavior for the site "
+"contact page at <em>/contact</em>. If no variant is selected, the "
+"default Drupal contact form will be used."
+msgstr ""
+"Si activé, supplante le comportement par défaut de Drupal pour la "
+"page de contact du site à <em>/contact</em>. Si aucune variante n'est "
+"sélectionnée, le formulaire de contact par défaut de Drupal sera "
+"utilisé."
+msgid ""
+"Page manager module is unable to enable contact because some other "
+"module already has overridden with %callback."
+msgstr ""
+"Le module Page Manager est incapable d'activer la page de contact "
+"parce qu'un autre module l'a déjà supplanté avec %callback."
+msgid "User contact"
+msgstr "Formulaire de contact utilisateur"
+msgid ""
+"When enabled, this overrides the default Drupal behavior for "
+"displaying the user contact form at <em>user/%user/contact</em>. If no "
+"variant is selected, the default Drupal user contact form will be "
+"used."
+msgstr ""
+"Si activé, supplante le comportement par défaut de Drupal pour "
+"l'affichage du formulaire de contact d'un utilisateur à "
+"<em>user/%user/contact</em>. Si aucune variante n'est sélectionnée, "
+"le formulaire de contact utilisateur par défaut de Drupal sera "
+"utilisé."
+msgid ""
+"Page manager module is unable to enable user/%user/contact because "
+"some other module already has overridden with %callback."
+msgstr ""
+"Le module Page Manager est incapable d'activer user/%user/contact "
+"parce qu'un autre module l'a déjà supplanté avec %callback."
+msgid ""
+"You cannot have an unnamed placeholder (% or ! by itself). Please name "
+"your placeholder by adding a short piece of descriptive text to the % "
+"or !, such as %user or %node."
+msgstr ""
+"Vous ne pouvez pas avoir un placeholder sans nom (% ou ! sans "
+"suffixe). Veuillez nommer votre placeholder en ajoutant un court texte "
+"descriptif au % ou !, comme dans %user ou %node."
+msgid "All polls"
+msgstr "Tous les sondages"
+msgid ""
+"When enabled, this overrides the default Drupal behavior for the polls "
+"at <em>/poll</em>. If no variant is selected, the default Drupal most "
+"recent polls will be shown."
+msgstr ""
+"Si activé, supplante le comportement par défaut de Drupal pour les "
+"sondages à <em>/poll</em>. Si aucune variante n'est sélectionnée, "
+"les sondages récents par défaut de Drupal seront affichés."
+msgid ""
+"Page manager module is unable to enable poll because some other module "
+"already has overridden with %callback."
+msgstr ""
+"Le module Page Manager est incapable d'activer le sondage parce qu'un "
+"autre module l'a déjà supplanté avec %callback."
+msgid "Search @type"
+msgstr "Rechercher @type"
+msgid "Taxonomy: term"
+msgstr "Taxonomie : terme"
+msgid "Control access by a specific term."
+msgstr "Contrôler l'accès par un terme spécifique."
+msgid "Select a term or terms from @vocabulary."
+msgstr "Choisir un ou plusieurs termes de @vocabulary."
+msgid "@term can be the term \"@terms\""
+msgid_plural "@term can be one of these terms: @terms"
+msgstr[0] "@term peut être le terme \"@terms\""
+msgstr[1] "@term peut être l'un de ces termes: @terms"
+msgid "Node add form: node type"
+msgstr "Formulaire d'ajout de nœud: type de noeud"
+msgid "Node edit form: node ID"
+msgstr "Formulaire de modification de nœud : identifiant du nœud"
+msgid "Get all arguments after this one"
+msgstr "Récupérer tous les arguments après celui-ci"
+msgid ""
+"If checked, this string will include all arguments. For example, if "
+"the path is \"path/%\" and the user visits \"path/foo/bar\", if this "
+"is not checked the string will be \"foo\". If it is checked the string "
+"will be \"foo/bar\"."
+msgstr ""
+"Si coché, cette chaine (de caractères) incluera tous les arguments. "
+"par exemple, si le chemin est \"path/%\" et que l'utilisateur visite "
+"\"path/foo/bar\"; si non coché, la chaine sera \"foo\". Si coché, la "
+"chaine sera \"foo/bar\"."
+msgid "Taxonomy term: ID"
+msgstr "Terme de taxonomie : ID"
+msgid "Taxonomy term (multiple): ID"
+msgstr "Terme de taxonomie (multiple) : ID"
+msgid "User: name"
+msgstr "Utilisateur : nom"
+msgid "Creates a user context from a user name."
+msgstr "Crée un contexte utilisateur à partir de son nom d'utilisateur."
+msgid "Enter the username of a user for this argument"
+msgstr "Saisir le nom d'utilisateur d'un utilisateur pour cet argument."
+msgid "Vocabulary: ID"
+msgstr "Vocabulaire : identifiant (ID)"
+msgid ""
+"The site contact form that allows users to send a message to site "
+"administrators."
+msgstr ""
+"Le formulaire de contact qui permet aux utilisateur d'envoyer un "
+"message aux administrateurs du site."
+msgid "The site contact form that allows users to contact other users."
+msgstr ""
+"Le formulaire de contact qui permet aux utilisateur de contacter les "
+"autres utilisateurs."
+msgid "Contact @name"
+msgstr "Contacter @name"
+msgid "Custom: @title"
+msgstr "Personnalisé : @title"
+msgid "Advanced search form"
+msgstr "Formulaire de recherche avancée"
+msgid "A search form with advanced options."
+msgstr "Un formulaire de recherche avec des options avancées."
+msgid "Same page"
+msgstr "Même page"
+msgid "Override default prompt"
+msgstr "Supplanter l'invite par défaut"
+msgid "The results of a search using keywords."
+msgstr "Les résultats d'une recherche utilisant des mots-clés."
+msgid "Override \"no result\" text"
+msgstr "Supplanter le texte \"aucun résultat\""
+msgid "Custom pager settings"
+msgstr "Paramètres de la pagination personnalisée"
+msgid "The number of items to skip and not display."
+msgstr "Le nombre d'éléments à passer et à ne pas afficher."
+msgid "If \"From context\" is selected, which type of context to use."
+msgstr ""
+"Si \"À partir du contexte\" est sélectionné, le type de contexte à "
+"utiliser."
+msgid "Context is optional"
+msgstr "Le contexte est optionnel"
+msgid "styles"
+msgstr "styles"
+msgid "Base table"
+msgstr "Table de base"
+msgid "Thickness"
+msgstr "Épaisseur"
+msgid "Lighter"
+msgstr "Moins gras"
+msgid "Bolder"
+msgstr "Plus gras"
+msgid "Searched %type for %keys."
+msgstr "Recherché %type pour %keys."
+msgid "There is currently no content classified with this term."
+msgstr "Il n'y a actuellement aucun contenu classé avec ce terme."
+msgid ""
+"Unable to complete operation. Fatal error in @file on line @line: "
+"@message"
+msgstr ""
+"Impossible de terminer l'opération. Erreur fatale dans @file à la "
+"ligne @line : @message"
+msgid "no real context"
+msgstr "pas de véritable contexte"
+msgid "- Choose -"
+msgstr "- Choisir -"
+msgid "Update and save"
+msgstr "Mettre à jour et enregistrer"
+msgid "The page has been updated and saved."
+msgstr "La page a été mise à jour et enregistrée."
+msgid ""
+"There are currently no variants available and a page may not be added. "
+"Perhaps you need to install the Panels module to get a variant?"
+msgstr ""
+"Il n'existe actuellement aucune variante et il n'est pas possible "
+"d'ajouter une page. Peut être devriez-vous installer le module Panels "
+"pour obtenir une variante?"
+msgid ""
+"To set this panel as your home page you must create a unique path name "
+"with no % placeholders in the path. The site home page is currently "
+"set to %homepage on the !siteinfo configuration form."
+msgstr ""
+"Pour définir ce panneau comme votre page d'accueil vous devez créer "
+"un chemin unique sans aucun placeholder %. La page d'accueil du site "
+"est actuellement définie à %homepage dans le formulaire de "
+"configuration du site !siteinfo."
+msgid ""
+"This page is currently set to be your site home page. This can be "
+"modified on the !siteinfo configuration form."
+msgstr ""
+"Cette page est actuellement définie comme page d'accueil de votre "
+"site. Ceci peut être modifié dans le formulaire de configuration "
+"!siteinfo."
+msgid ""
+"That path is already in use. This system cannot override existing "
+"paths."
+msgstr ""
+"Ce chemin est déjà utilisé. Le système ne peut supplanter les "
+"chemins existants."
+msgid "Context exists"
+msgstr "Le contexte existe"
+msgid "Control access by whether or not a context exists and contains data."
+msgstr ""
+"Contrôler l'accès par : si un contexte existe ou pas et s'il "
+"contient des données."
+msgid ""
+"Check to see if the context exists (contains data) or does not exist "
+"(contains no data). For example, if a context is optional and the path "
+"does not contain an argument for that context, it will not exist."
+msgstr ""
+"Vérifier si le contexte existe (contient des données) ou non (aucune "
+"donnée). Par exemple, si un contexte est optionnel et que le chemin "
+"ne contient aucun argument pour ce contexte, alors il n'existe pas "
+"pas."
+msgid "Doesn't exist"
+msgstr "N'existe pas"
+msgid "@identifier exists"
+msgstr "@identifier existe"
+msgid "@identifier does not exist"
+msgstr "@identifier n'existe pas"
+msgid "String: comparison"
+msgstr "Chaîne de caractères : comparaison"
+msgid "Control access by string match."
+msgstr "Contrôle l'accès par concordance des chaînes (de caractères)."
+msgid "Not equal to regular expression"
+msgstr "Différent de l'expression réguière"
+msgid "@identifier is \"@value\""
+msgstr "@identifier est \"@value\""
+msgid "@identifier is not \"@value\""
+msgstr "@identifier n'est pas \"@value\""
+msgid "@identifier matches \"@value\""
+msgstr "@identifier correspond à \"@value\""
+msgid "@identifier does not match \"@value\""
+msgstr "@identifier ne correspond pas à \"@value\""
+msgid "String: length"
+msgstr "Chaîne de caractères : longueur"
+msgid "Control access by length of string context."
+msgstr ""
+"Contrôle l'accès par la longueur de la chaîne de caractères du "
+"contexte."
+msgid "Not equal to"
+msgstr "Différent de"
+msgid "Length of string"
+msgstr "Longueur de la chaîne de caractères"
+msgid "@identifier must be @comp @length characters"
+msgstr "@identifier doit être @comp @length caractères"
+msgid "A context that contains token replacements from token.module."
+msgstr "Un contexte qui contient des remplacements de jetons du module Token."
+msgid "Enter the context type"
+msgstr "Saisir le type de contexte"
+msgid "Enter a user name"
+msgstr "Saisir un nom d'utilisateur"
+msgid ""
+"If checked, the identifier will be reset to the user name of the "
+"selected user."
+msgstr ""
+"Si coché, l'identifiant sera réinitialisé par le nom de "
+"l'utilisateur sélectionné."
+msgid "Invalid user selected."
+msgstr "Utilisateur choisi invalide."
+msgid "You may use substitutions in this path."
+msgstr "Vous pouvez utiliser les remplacements dans ce chemin."
+msgid "CTools PHP requirements"
+msgstr "Configuration PHP requise par CTools"
+msgid ""
+"CTools requires certain features only available in PHP 5.2.0 or "
+"higher."
+msgstr ""
+"CTools requière certaines fonctionnalités seulement disponibles à "
+"partir de PHP version 5.2.0 et suivantes."
+msgid "PHP !version"
+msgstr "PHP !version"
+msgid ""
+"Unable to create CTools styles cache directory @path. Check the "
+"permissions on your files directory."
+msgstr ""
+"Impossible de créer le répertoire @path pour le cache des styles "
+"CTools. Vérifiez les droits de votre répertoire de fichiers."
+msgid "Select base style"
+msgstr "Sélectionner le style de base"
+msgid "Missing settings cache."
+msgstr "Paramètres de cache manquants."
+msgid "Arial, Helvetica, sans-serif"
+msgstr "Arial, Helvetica, sans-serif"
+msgid "Times New Roman, Times, serif"
+msgstr "Times New Roman, Times, serif"
+msgid "Courier New, Courier, monospace"
+msgstr "Courier New, Courier, monospace"
+msgid "Georgia, Times New Roman, Times, serif"
+msgstr "Georgia, Times New Roman, Times, serif"
+msgid "Verdana, Arial, Helvetica, sans-serif"
+msgstr "Verdana, Arial, Helvetica, sans-serif"
+msgid "Geneva, Arial, Helvetica, sans-serif"
+msgstr "Geneva, Arial, Helvetica, sans-serif"
+msgid "Trebuchet MS, Trebuchet, Verdana, sans-serif"
+msgstr "Trebuchet MS, Trebuchet, Verdana, sans-serif"
+msgid "XX-Small"
+msgstr "XXS"
+msgid "X-Small"
+msgstr "XS"
+msgid "X-Large"
+msgstr "XL"
+msgid "XX-Large"
+msgstr "XXL"
+msgid "Letter spacing"
+msgstr "Espacement entre les lettres"
+msgid "Word spacing"
+msgstr "Espacement des mots"
+msgid "Decoration"
+msgstr "Décoration"
+msgid "Overline"
+msgstr "Surligner"
+msgid "Line-through"
+msgstr "Ligne à-travers"
+msgid "Oblique"
+msgstr "Oblique"
+msgid "Small-caps"
+msgstr "Petites majuscules"
+msgid "Capitalize"
+msgstr "Mettre en majuscules"
+msgid "You do not have sufficient permissions to perform this action."
+msgstr "Vous n'avez pas les droits suffisants pour exécuter cette action."
+msgid "You account permissions do not permit you to import."
+msgstr "Les droits de votre compte ne vous permettent pas d'importer."
+msgid "String: URL path"
+msgstr "chaîne (de caractères): chemin d'URL"
+msgid "Control access by the current path."
+msgstr "Contrôler l'accès par le chemin courant."
+msgid "Note: if no context is chosen, the current page path will be used."
+msgstr ""
+"Note : si aucun contexte n'est choisi, le chemin de la page actuelle "
+"sera utilisé."
+msgid "Allow access on the following pages"
+msgstr "Autoriser l'accès aux pages suivantes"
+msgid "Allow access on all pages except the following pages"
+msgstr "Autoriser l'accès a toutes les pages sauf les pages suivantes"
+msgid "Current path"
+msgstr "Chemin actuel"
+msgid "@identifier is \"@paths\""
+msgid_plural "@identifier type is one of \"@paths\""
+msgstr[0] "@identifier est \"@paths\""
+msgstr[1] "Le type @identifier fait partie de \"@paths\""
+msgid "@identifier is not \"@paths\""
+msgid_plural "@identifier type is not one of \"@paths\""
+msgstr[0] "@identifier n'est pas \"@paths\""
+msgstr[1] "Le type @identifier ne fait pas partie de \"@paths\""
+msgid "Taxonomy: parent term"
+msgstr "Taxonomie : terme parent"
+msgid "Control access by existence of a parent term."
+msgstr "Contrôler l'accès par l'existence d'un terme parent."
+msgid "\"@term\" has parent in vocabulary \"@vocab\""
+msgstr "\"@term\" a un parent dans le vocabulaire \"@vocab\""
+msgid "Control access by vocabulary."
+msgstr "Contrôle l'accès par vocabulaire."
+msgid "Only the checked vocabularies will be valid."
+msgstr "Seuls les vocabulaires cochés seront valides."
+msgid "Current theme"
+msgstr "Thème actuel"
+msgid "Control access by checking which theme is in use."
+msgstr "Contrôler l'accès en fonction du thème utilisé."
+msgid "This will only be accessed if the current theme is the selected theme."
+msgstr ""
+"Sera seulement accessible si le thème courant est le thème "
+"sélectionné."
+msgid "Error, unset theme"
+msgstr "Erreur, thème non défini"
+msgid "Current theme is \"@theme\""
+msgstr "Le thème courant est \"@theme\""
+msgid "Unpublished node @nid"
+msgstr "Nœud @nid dépublié"
+msgid "Book children"
+msgstr "Livres enfants"
+msgid "The children menu the book the node belongs to."
+msgstr "Le menu des enfants de livre auquel le nœud appartient."
+msgid "Book children menu goes here."
+msgstr "Le menu des enfants du livre va ici."
+msgid "Node terms"
+msgstr "Termes du nœud"
+msgid "Taxonomy terms of the referenced node."
+msgstr "Termes de taxonomie du nœud référencé."
+msgid "- All vocabularies -"
+msgstr "- Tous les vocabulaires -"
+msgid "Term formatting"
+msgstr "Mise en forme de terme"
+msgid "Inline, delimited"
+msgstr "En ligne, délimités"
+msgid "Link to terms"
+msgstr "Lier aux termes"
+msgid "Check here to make the terms link to the term paths."
+msgstr "Cocher ici pour lier les termes aux chemins des termes."
+msgid "\"@s\" terms from @vocabulary"
+msgstr "\"@s\" termes dans @vocabulary"
+msgid "Feed icons"
+msgstr "Icônes des flux"
+msgid "Add the site feed_icons statement as content."
+msgstr "Ajouter l'instruction du site \"feed_icons\" comme contenu."
+msgid "Site logo"
+msgstr "Logo du site"
+msgid "Add the logo trail as content."
+msgstr "Ajouter la piste logo comme contenu."
+msgid "Primary navigation links"
+msgstr "Liens de navigation primaires"
+msgid "Add the primary_links (local tasks) as content."
+msgstr "Ajouter le primary_links (tâches locales) comme contenu."
+msgid "Secondary navigation links"
+msgstr "Liens de navigation secondaires"
+msgid "Add the secondary_links (local tasks) as content."
+msgstr "Ajouter secondary_links (tâches locales) comme contenu."
+msgid "Tabs type"
+msgstr "Type d'onglets"
+msgid "Primary and secondary"
+msgstr "Primaire et secondaire"
+msgid "CSS id to use"
+msgstr "Identifiant CSS à utiliser"
+msgid "Term Description"
+msgstr "Description du terme"
+msgid "Multiple terms from node"
+msgstr "Termes multiples du nœud"
+msgid ""
+"The text of this link will be \"@more\". This setting can only be "
+"modified on the View configuration."
+msgstr ""
+"Le texte de ce lien sera \"@more\". Ce paramètre peut être modifié "
+"seulement dans la configuration de View."
+msgid "Fields override"
+msgstr "Supplantation de champs"
+msgid "Missing plugin"
+msgstr "Plugin manquant"
+msgid "Stylizer"
+msgstr "Stylizer"
+msgid "Custom style"
+msgstr "Style personnalisé"
+msgid "Local action"
+msgstr "Action locale"
+msgid "Custom ruleset"
+msgstr "Ensemble de droits personnalisé"
+msgid ""
+"Custom rulesets are combinations of access plugins you can use for "
+"access control, selection criteria and pane visibility."
+msgstr ""
+"Les droits personnalisés sont des combinaisons de plugins d'accès "
+"que vous pouvez utiliser pour le contrôle d'accès, les critères de "
+"sélection et la visibilité des panneaux."
+msgid "There are no custom rulesets."
+msgstr "Il n'y a aucun ensemble de règles personnalisés."
+msgid "Manage custom rulesets"
+msgstr "Gérer les ensembles de règles personnalisés"
+msgid "Custom rulesets"
+msgstr "Ensembles de droits personnalisés"
+msgid ""
+"Create custom, exportable, reusable access rulesets for applications "
+"like Panels."
+msgstr ""
+"Crée des droits d'accès personnalisés, exportables et "
+"réutilisables pour des applications telles que Panels."
+msgid "ruleset"
+msgstr "ensemble de règles"
+msgid "Ruleset"
+msgstr "Ensemble de règles"
+msgid "rulesets"
+msgstr "ensembles de règles"
+msgid "Rulesets"
+msgstr "Ensembles de règles"
+msgid "Custom content"
+msgstr "Contenu personnalisé"
+msgid ""
+"Custom content panes are basic HTML you enter that can be reused in "
+"all of your panels."
+msgstr ""
+"Les panneaux de contenus personnalisés sont du HTML de base que vous "
+"saisissez et qui peut être réutilisé dans tous vos pannneaux."
+msgid "There are no custom content panes."
+msgstr "Il n'y a aucun panneau personnalisé."
+msgid "Manage custom content"
+msgstr "Gérer le contenu personnalisé"
+msgid "Custom content panes"
+msgstr "Panneaux de contenu personnalisé"
+msgid ""
+"Create custom, exportable, reusable content panes for applications "
+"like Panels."
+msgstr ""
+"Créer des volets personnalisés, exportables et réutilisables pour "
+"des applications telles que Panels."
+msgid ""
+"What category this content should appear in. If left blank the "
+"category will be \"Miscellaneous\"."
+msgstr ""
+"La catégorie dans laquelle ce contenu doit apparaître. Si laissé "
+"vide, la catégorie sera \"Divers\"."
+msgid "content pane"
+msgstr "volet de contenu"
+msgid "content panes"
+msgstr "panneaux de contenu"
+msgid "Content panes"
+msgstr "Panneaux de contenu"
+msgid "@type will not display due to missing context"
+msgstr "@type ne sera pas affiché en raison d'un contexte manquant"
+msgid "Reverse (NOT)"
+msgstr "Inverser (NOT)"
+msgid "The plugin definition of @plugin is missing the %key key."
+msgstr "Il manque la clé %key dans la définition du plugin @plugin."
+msgid "The plugin definition of @plugin cannot locate schema %schema."
+msgstr "La définition du plugin @plugin ne peut trouver le schéma %schema."
+msgid ""
+"The plugin definition of @plugin uses %schema, but it has no export "
+"section."
+msgstr ""
+"La définition du plugin @plugin utilise %schema, mais ne dispose pas "
+"d'une section d'export."
+msgid "Add a new @plugin"
+msgstr "Ajouter un nouveau @plugin"
+msgid "Edit @plugin %title"
+msgstr "Modifier @plugin %title"
+msgid "Clone @plugin %title"
+msgstr "Cloner @plugin %title"
+msgid "Import @plugin"
+msgstr "Importer @plugin"
+msgid "Export @plugin %title"
+msgstr "Exporter @plugin %title"
+msgid "Are you sure you want to revert %title?"
+msgstr "Êtes-vous sûr(e) de vouloir rétablir %title ?"
+msgid ""
+"This action will permanently remove any customizations made to this "
+"item."
+msgstr ""
+"Cette action supprimera définitivement toutes les personnalisations "
+"apportées à cet élément."
+msgid "The item has been reverted."
+msgstr "L'élément a été rétabli."
+msgid "This action will permanently remove this item from your database.."
+msgstr ""
+"Cette action va supprimer définitivement cet item de votre base de "
+"données."
+msgid "%title has been created."
+msgstr "%title a été créé."
+msgid "%title could not be created."
+msgstr "%title n'a pas pu être créé."
+msgid "%title has been updated."
+msgstr "%title a été mis à jour."
+msgid "%title could not be updated."
+msgstr "%title n'a pas pu être mis à jour."
+msgid ""
+"You can import an exported definition by pasting the exported object "
+"code into the field below."
+msgstr ""
+"Vous pouvez importer une définition exportée en collant le code de "
+"l'objet dans le champ ci-dessous."
+msgid "@plugin %title was enabled."
+msgstr "@plugin %title a été activé."
+msgid "@plugin %title was disabled."
+msgstr "@plugin %title a été désactivé."
+msgid "Configuration error. No handler found."
+msgstr "Erreur de configuration. Aucun gestionnaire trouvé."
+msgid "No item found."
+msgstr "Aucun élément trouvé."
+msgid ""
+"The export definition of @table is missing the \"primary key\" "
+"property."
+msgstr ""
+"La propriété \"clé primaire\" de la définition de l'export de "
+"@table est manquante."
+msgid "Configure style"
+msgstr "Configurer le style"
+msgid "Limit to these vocabularies"
+msgstr "Restreindre à ces vocabulaires"
+msgid ""
+"If no vocabularies are checked, terms from all vocabularies will be "
+"accepted."
+msgstr ""
+"Si aucun vocabulaire n'est coché, les termes de tous les vocabulaires "
+"seront acceptés."
+msgid "Missing/deleted content"
+msgstr "Contenu manquant/supprimé"
+msgid "Make this content reusable"
+msgstr "Rendre ce contenu réutilisable"
+msgid ""
+"The machine readable name of this content. It must be unique, and it "
+"must contain only alphanumeric characters and underscores. Once "
+"created, you will not be able to change this value!"
+msgstr ""
+"Le nom système de ce contexte. Il doit être unique, et ne peut "
+"contenir que des caractères alpha-numériques et des caractères de "
+"soulignement. Une fois créé, vous ne pourrez pas changer ce nom."
+msgid "Link the node title to the node"
+msgstr "Lier le titre du nœud au nœud"
+msgid "Select a build mode for this node."
+msgstr "Sélectionner un mode d'affichage pour ce nœud."
+msgid "Shows links to register or login."
+msgstr "Affiche les liens pour s'inscrire ou se connecter."
+msgid "- No tag -"
+msgstr "Aucune balise"
+msgid "div"
+msgstr "div"
+msgid "CSS class to use"
+msgstr "Classe CSS à utiliser"
+msgid "Enabled, name"
+msgstr "Activé, nom"
+msgid ""
+"You have unsaved changes. These changes will not be made permanent "
+"until you click <em>Save</em>."
+msgstr ""
+"Vous avez des changements non enregistrés. Ces changements seront "
+"temporaires jusqu'à ce que vous cliquiez <em>Enregistrer</em>"
+msgid ""
+"This will appear in the administrative interface to easily identify "
+"it."
+msgstr ""
+"Ceci apparaitra dans l'interface d'administration pour facilement "
+"l'identifier."
+msgid "The unique ID for this @export."
+msgstr "L'identifiant unique de ce(tte) @export."
+msgid "@plugin code"
+msgstr "Code de @plugin"
+msgid "Allow import to overwrite an existing record."
+msgstr "Permettre à l'import de supplanter un enregistrement existant."
+msgid "Unable to get an import from the code. Errors reported: @errors"
+msgstr ""
+"Impossible de récupérer une importation depuis le code. Rapport "
+"d'erreurs : @errors"
+msgid ""
+"The export id can only consist of lowercase letters, underscores, and "
+"numbers."
+msgstr ""
+"L'id d'exportation ne peut comporter que des lettres minuscules des "
+"caractères de soulignement et des chiffres."
+msgid ""
+"A @plugin with this name already exists. Please choose another name or "
+"delete the existing item before creating a new one."
+msgstr ""
+"Un @plugin avec ce nom existe déjà. Veuillez choisir un autre nom ou "
+"supprimer l'élément existant avant de créer le nouveau."
+msgid "Node edit form from node"
+msgstr "Formulaire d'édition depuis un nœud"
+msgid "Adds node edit form from a node context."
+msgstr ""
+"Ajoute le formulaire de modification de nœud depuis un contexte de "
+"nœud."
+msgid "Custom styles can be applied to Panel regions and Panel panes."
+msgstr ""
+"Les style personalisés peuvent être appliqués aux régions et aux "
+"panneaux de Panels."
+msgid "There are no custom styles."
+msgstr "Il n'y a aucun style personnalisé."
+msgid "Manage styles"
+msgstr "Gérer les styles"
+msgid "Create custom styles for applications such as Panels."
+msgstr "Créer des styles personnalisés pour des applications comme Panels."
+msgid ""
+"There are currently no style types available to add. You should enable "
+"a module that utilizes them, such as Panels."
+msgstr ""
+"Il n'y actuellement aucun style disponible à l'ajout. Vous devriez "
+"activer un module qui les utilise, comme Panels."
+msgid "Administrative settings"
+msgstr "Paramètres de l'administration"
+msgid "Select style type"
+msgstr "Sélectionner le type de style"
+msgid "View attachment"
+msgstr "Vue jointe"
+msgid "View context"
+msgstr "Contexte de la vue"
+msgid "\"Before\" attachment"
+msgstr "Élément joint \"Avant\""
+msgid "\"After\" attachment"
+msgstr "Élément joint \"Après\""
+msgid "You must select at least one attachment to display."
+msgstr "Vous devez sélectionner au moins une pièce jointe à afficher."
+msgid "\"@context\" attachment"
+msgstr "Pièce jointe de \"@context\""
+msgid "View empty text"
+msgstr "Texte de vue vide"
+msgid "Display the view empty text if there are no results."
+msgstr "Afficher le texte de vue vide s'il n\"y a pas de résultat."
+msgid "\"@context\" empty text"
+msgstr "Texte de \"@context\" vide"
+msgid "View exposed widgets"
+msgstr "Widgets exposés de la vue"
+msgid "Display the view exposed widgets if there are no results."
+msgstr "Afficher les widgets exposés de la vue s'il n'y a aucun résultat."
+msgid "\"@context\" exposed widgets"
+msgstr "Widgets exposés de \"@context\""
+msgid "View feed icon"
+msgstr "Icône de flux de la vue"
+msgid "Display the view feed icon if there are no results."
+msgstr "Afficher l'icône de flux de la vue s'il n'y a aucun résultat."
+msgid "\"@context\" feed icon"
+msgstr "Icône de flux de \"@context\""
+msgid "View footer"
+msgstr "Pied de page de la vue"
+msgid "Display the view footer if there are no results."
+msgstr "Afficher le pied de page de la vue s'il n'y a aucun résultat."
+msgid "\"@context\" footer"
+msgstr "Pied de page de \"@context\""
+msgid "View header"
+msgstr "Entête de la vue"
+msgid "Display the view header if there are no results."
+msgstr "Afficher l'entête de la vue même s'il n'y a pas de résultat."
+msgid "\"@context\" header"
+msgstr "Entête de \"@context\""
+msgid "View pager"
+msgstr "Pagination de la vue"
+msgid "Display the view pager if there are no results."
+msgstr "Afficher la pagination de la vue même s'il n'y a pas de résultat."
+msgid "\"@context\" pager"
+msgstr "Pagination de \"@context\""
+msgid "View row"
+msgstr "Voir la ligne"
+msgid "Select context"
+msgstr "Choisir un contexte"
+msgid "Configure rows"
+msgstr "Configurer les lignes"
+msgid "Invalid context selected."
+msgstr "Contexte choisi invalide."
+msgid "Context contains an invalid view."
+msgstr "Le contexte contient une vue invalide."
+msgid "Row @number"
+msgstr "Ligne @number"
+msgid "Display specific fields"
+msgstr "Afficher certains champs"
+msgid "Row information"
+msgstr "Information de la ligne"
+msgid "Broken view"
+msgstr "Vue brisée"
+msgid "Displaying: !fields"
+msgstr "Affichage de : !fields"
+msgid "Displaying no fields due to misconfiguration."
+msgstr "Aucun champ affiché du fait d'une mauvaise configuration."
+msgid "Displaying the configured row."
+msgstr "Affichage de la ligne configurée."
+msgid "\"@context\" row @rows"
+msgid_plural "\"@context\" rows @rows"
+msgstr[0] "\"@context\" ligne @rows"
+msgstr[1] "\"@context\" ligne @rows"
+msgid "You must select a view."
+msgstr "Vous devez choisir une vue."
+msgid "Node from view"
+msgstr "Nœud à partir d'une vue"
+msgid "Row number"
+msgstr "Numéro de ligne"
+msgid "Row number must be a positive integer value."
+msgstr "Le numéro de ligne doit être un nombre entier positif."
+msgid "Term from view"
+msgstr "Terme à partir d'une vue"
+msgid "User from view"
+msgstr "Utilisateur à partir d'une vue"
+msgid ""
+"Makes the view results available as a context for use in Panels and "
+"other applications."
+msgstr ""
+"Rend les résultats de vues disponibles comme un contexte "
+"d'utilisation dans les panneaux et autres applications."
+msgid "Contains rows in contexts."
+msgstr "Contiens des lignes dans les contextes."
+msgid "Context settings"
+msgstr "Paramètres du contexte"
+msgid "View mode"
+msgstr "Mode d'affichage"
+msgid "Access Bulk Exporter"
+msgstr "Accéder à l'exportation en lots"
+msgid "Export various system objects into code."
+msgstr "Exporter les divers objets système dans le code."
+msgid "Administer access rulesets"
+msgstr "Administrer les ensembles de règles d'accès"
+msgid "Add, delete and edit custom access rulesets."
+msgstr ""
+"Ajouter, supprimer ou modifier des ensembles de règles d'accès "
+"personnalisés."
+msgid "Modal Login (default style)"
+msgstr "Connexion par fenêtre modale (par défaut)"
+msgid "Login via modal"
+msgstr "Connexion avec fenêtre modale"
+msgid "Modal Login (custom style)"
+msgstr "Connexion par fenêtre modale (style personnalisé)"
+msgid "Wizard (no modal)"
+msgstr "Assistant (non modal)"
+msgid "Wizard (default modal)"
+msgstr "Assistant (modal par défaut)"
+msgid "Pick an animal"
+msgstr "Choisir un animal"
+msgid "Wizard (custom modal)"
+msgstr "Assistant (modal personnalisé)"
+msgid "Replace text with \"hello world\""
+msgstr "Remplacer le texte par \"bonjour le monde\""
+msgid "Sample Content"
+msgstr "Exemple de contenu"
+msgid "Delete this row"
+msgstr "Supprimer cette ligne"
+msgid "CTools Javascript Widgets"
+msgstr "Widgets Javascript CTools"
+msgid "Link 1"
+msgstr "Lien 1"
+msgid "Link 2"
+msgstr "Lien 2"
+msgid "Link 3"
+msgstr "Lien 3"
+msgid "Drop Down Menu"
+msgstr "Menu déroulant"
+msgid "Click to Drop Down"
+msgstr "Cliquer pour dérouler"
+msgid "Click to Collapse"
+msgstr "Cliquer pour réduire"
+msgid "Collapsible Div"
+msgstr "Div repliable"
+msgid "Hello World"
+msgstr "Bonjour Le Monde"
+msgid "remain here"
+msgstr "rester ici"
+msgid "Go to your account"
+msgstr "Aller à votre compte"
+msgid "your account"
+msgstr "votre compte"
+msgid "Login Success"
+msgstr "Connexion réussie"
+msgid "Choose animal"
+msgstr "Choisir un animal"
+msgid "Configure animal"
+msgstr "Configurer animal"
+msgid "Sheep"
+msgstr "Mouton"
+msgid "Configure sheep"
+msgstr "Configurer mouton"
+msgid "Lizard"
+msgstr "Lézard"
+msgid "Configure lizard"
+msgstr "Configurer lézard"
+msgid "Raptor"
+msgstr "Rapace"
+msgid "Configure raptor"
+msgstr "Configurer rapace"
+msgid "Choose your animal"
+msgstr "Choisissez votre animal"
+msgid "Name your sheep"
+msgstr "Donnez un nom à votre mouton"
+msgid "What kind of sheep"
+msgstr "Quelle race de mouton"
+msgid "Wensleydale"
+msgstr "Wensleydale"
+msgid "Merino"
+msgstr "Mérinos"
+msgid "Corriedale"
+msgstr "Corriedale"
+msgid "Coriedale"
+msgstr "Corriedale"
+msgid "You have a @type sheep named \"@name\"."
+msgstr "Vous avez un mouton @type nommé \"@name\"."
+msgid "Name your lizard"
+msgstr "Donnez un nom à votre lézard"
+msgid "Venomous"
+msgstr "Venimeux"
+msgid "You have a @type lizard named \"@name\"."
+msgstr "Vous avez un lézard @type nommé \"@name\"."
+msgid "non-venomous"
+msgstr "non-venimeux"
+msgid "venomous"
+msgstr "venimeux"
+msgid "Name your raptor"
+msgstr "Donnez un nom à votre rapace"
+msgid "What kind of raptor"
+msgstr "Quelle espèce de rapace"
+msgid "Eagle"
+msgstr "Aigle"
+msgid "Hawk"
+msgstr "Faucon"
+msgid "Owl"
+msgstr "Hibou"
+msgid "Buzzard"
+msgstr "Buse"
+msgid "Domesticated"
+msgstr "Domestiqué"
+msgid "You have a @type @raptor named \"@name\"."
+msgstr "Vous avez un @type @raptor nommé \"@name\"."
+msgid "wild"
+msgstr "sauvage"
+msgid "domesticated"
+msgstr "domestiqué"
+msgid "Jump!"
+msgstr "Sauter!"
+msgid "Return to the examples page."
+msgstr "Retourner à la page d'exemples."
+msgid "You successfully jumped! !return_link"
+msgstr "Vous avez sauté avec succès ! !return_link"
+msgid "Chaos Tools AJAX Demo"
+msgstr "Démo AJAX de Chaos Tools"
+msgid "Simple Form"
+msgstr "Formulaire simple"
+msgid "Animal"
+msgstr "Animal"
+msgid "Post-Login Action"
+msgstr "Action d'après connexion"
+msgid "Successful Jumping"
+msgstr "Saut effectué avec succès"
+msgid "Chaos Tools (CTools) AJAX Example"
+msgstr "Exemple de Chaos Tools (CTools) AJAX"
+msgid "Shows how to use the power of Chaos AJAX."
+msgstr "Montre comment utiliser la puissance de Chaos AJAX."
+msgid "Administer custom content"
+msgstr "Administrer le contenu personnalisé"
+msgid "Add, edit and delete CTools custom stored custom content"
+msgstr ""
+"Ajouter, modifier et supprimer le contenu personnalisé CTools stocké "
+"par défaut"
+msgid ""
+"If there is more than one variant on a page, when the page is visited "
+"each variant is given an opportunity to be displayed. Starting from "
+"the first variant and working to the last, each one tests to see if "
+"its selection rules will pass. The first variant that meets its "
+"criteria (as specified below) will be used."
+msgstr ""
+"Au cas où une page aurait plus d'une variante, chaque variante a la "
+"possibilité d'être affichée au moment où la page est visitée. "
+"Commençant par la première variante et continuant jusqu'à la "
+"dernière, chacune teste si ses conditions de sélection sont "
+"remplies. La première variante dont les critères (tels que "
+"spécifiés ci-dessous) sont vérifiés sera utilisée."
+msgid "There are no wizards available at this time."
+msgstr "Il n'y a aucun assistant disponible pour le moment."
+msgid "Configure new !plugin_title"
+msgstr "Configurer nouveau !plugin_title"
+msgid "Configure !plugin_title"
+msgstr "Configurer !plugin_title"
+msgid "ctools"
+msgstr "ctools"
+msgid ""
+"Invalid plugin module/type combination requested: module @module and "
+"type @type"
+msgstr ""
+"Combinaison module/type demandée incorrecte : module @module et type "
+"@type"
+msgid ""
+"Plugin @plugin of plugin type @owner:@type points to nonexistent file "
+"@file for class handler @class."
+msgstr ""
+"Le plugin @plugin de type @owner:@type pointe vers le fichier manquant "
+"@file pour le gestionnaire de classe @class."
+msgid "Use Page Manager"
+msgstr "Utiliser Page Manager"
+msgid ""
+"Allows users to use most of Page Manager's features, though restricts "
+"some of the most powerful, potentially site-damaging features. Note "
+"that even the reduced featureset still allows for enormous control "
+"over your website."
+msgstr ""
+"Autorise les utilisateurs à utiliser la plupart des fonctionnalités "
+"de Page Manager, cependant certaines des plus puissantes sont "
+"limitées, car potentiellement dommageables pour le site. Notez que "
+"l'ensemble de fonctionnalités restreint vous laisse encore un énorme "
+"contrôle sur votre site web."
+msgid "Administer Page Manager"
+msgstr "Administrer Page Manager"
+msgid ""
+"Allows complete control over Page Manager, i.e., complete control over "
+"your site. Grant with extreme caution."
+msgstr ""
+"Permet le contrôle total de Page Manager, c'est à dire le contrôle "
+"total de votre site. À accorder avec une extrême précaution."
+msgid "Page manager context"
+msgstr "Contexte du gestionnaire de page (Page manager)"
+msgid "Change general settings for this variant."
+msgstr "Changer les paramètres généraux pour cette variante."
+msgid "404 Page not found"
+msgstr "404 Page non trouvée"
+msgid "403 Access denied"
+msgstr "403 Accès refusé"
+msgid "Redirect destination"
+msgstr "Adresse de redirection"
+msgid ""
+"Enter the path to redirect to. You may use keyword substitutions from "
+"contexts. You can use external urls (http://www.example.com/foo) or "
+"internal urls (node/1)."
+msgstr ""
+"Saisir le chemin de redirection. Vous pouvez utiliser les "
+"remplacements de mot-clés des contextes. Vous pouvez utiliser des "
+"URLs externes (http://www.example.com/foo) ou des URLs internes "
+"(node/1)."
+msgid "The first element in a path may not be dynamic."
+msgstr "Le premier élément d'un chemin peut ne pas être dynamique."
+msgid "Export UI wizard cache"
+msgstr "Exporter le cache de l'assistant graphique"
+msgid "User signature"
+msgstr "Signature de l'utilisateur"
+msgid "The signature of a user."
+msgstr "La signature d'un utilisateur."
+msgid "\"@s\" user signature"
+msgstr "\"@s\" signature de l'utilisateur"
+msgid "Allows a user to use the CTools Stylizer UI."
+msgstr "Autorise un utilisateur à utiliser l'interface Stylizer de CTools."
+msgid "Inherit path"
+msgstr "Hériter du chemin"
+msgid "Delete and save"
+msgstr "Supprimer et enregistrer"
+msgid "Enable and save"
+msgstr "Activer et enregistrer"
+msgid "Disable and save"
+msgstr "Désactiver et enregistrer"
+msgid "Revision: ID"
+msgstr "Révision : ID"
+msgid "Creates a node context from a revision ID argument."
+msgstr ""
+"Créé un contexte de nœud à partir d'un argument ID de la "
+"révision."
+msgid "Enter the revision ID of a node for this argument"
+msgstr "Entrer l'ID de la révision d'un noeud pour cet argument"
+msgid "Term name, lowercased and spaces converted to dashes"
+msgstr "Nom du terme, en minuscules avec espaces convertis en tirets"
+msgid "Term name of first term, lowercased and spaces converted to dashes"
+msgstr ""
+"Nom de terme du premier terme, en minuscules et avec les espaces "
+"convertis en tirets"
+msgid "Entity: ID"
+msgstr "Entité : ID"
+msgid "Creates an entity context from an entity ID argument."
+msgstr "Créé un context d'entité à partir d'un ID d'argument entité."
+msgid "@entity: ID"
+msgstr "@entity : ID"
+msgid "Creates @entity context from an ID argument."
+msgstr ""
+"Crée un contexte de @entity à partir d'un argument de type "
+"identifiant."
+msgid "Custom blocks"
+msgstr "Blocs personnalisés"
+msgid "Entity field"
+msgstr "Champs entité"
+msgid "Field on the referenced entity."
+msgstr "Champs de l'entité référencée."
+msgid "Select a formatter"
+msgstr "Sélectionner un formateur"
+msgid "\"@s\" @field"
+msgstr "\"@s\" @field"
+msgid "Entity object."
+msgstr "Objet entité."
+msgid "Enter the ID of an entity for this context."
+msgstr "Entrez l'ID de l'entité pour ce contexte."
+msgid "Creates @entity context from an entity ID."
+msgstr "Créer le context @entity à partir d'une entité ID"
+msgid "Enter the title or ID of a @entity entity"
+msgstr "Saisir le titre ou l'ID d'une entité @entity"
+msgid "'%title' [%type id %id]"
+msgstr "'%title' [id %type %id]"
+msgid "[%type id %id]"
+msgstr "[id %type %id]"
+msgid "You must select an entity."
+msgstr "Vous devez choisir une entité."
+msgid "Invalid entity selected."
+msgstr "Entité choisie invalide."
+msgid "Creates an entity context from a foreign key on a field."
+msgstr "Crée un contexte d'entité depuis une clé étrangère sur un champ."
+msgid "Site Information"
+msgstr "Information du site"
+msgid "Use this page in an admin overlay."
+msgstr "Utiliser cette page dans un premier-plan d'administration."
+msgid ""
+"Admin overlays are used in many places in Drupal 7 and administrative "
+"custom pages should probably utilize this feature."
+msgstr ""
+"Les premiers plans d'administration sont utilisés à de nombreux "
+"endroits dans Drupal 7 et les pages d'administration personnalisées "
+"devraient probablement utiliser cette fonctionnalité."
+msgid "an unknown callback"
+msgstr "une procédure de rappel (callback) inconnue"
+msgid ""
+"Page manager module is unable to enable taxonomy/term/%taxonomy_term "
+"because some other module already has overridden with %callback."
+msgstr ""
+"Le module Page Manager est incapable d'activer "
+"taxonomy/term/%taxonomy_term parce qu'un autre module l'a déjà "
+"supplanté avec %callback."
+msgid "Entity: bundle"
+msgstr "Entité : paquet"
+msgid "Control access by entity bundle."
+msgstr "Contrôler l'accès par paquet d'entité."
+msgid "@entity: Bundle"
+msgstr "@entity : Paquet"
+msgid "Control access by @entity entity bundle."
+msgstr "Contrôler l'accès par paquet d'entité @entity."
+msgid "Entity Bundle"
+msgstr "Paquet d'Entité"
+msgid "Only the checked entity bundles will be valid."
+msgstr "Seuls les paquets d'entité cochés seront valides."
+msgid "@identifier is any bundle"
+msgstr "@identifier est n'importe quel paquet"
+msgid "Field form: @widget_label"
+msgstr "Formulaire de champ : @widget_label"
+msgid "Entity info."
+msgstr "Informations sur l'entité."
+msgid "\"@s\" @field form"
+msgstr "Formulaire @field de \"@s\""
+msgid "Revision information."
+msgstr "Information sur la révision."
+msgid "View From Argument"
+msgstr "Vue à partir d'un argument"
+msgid "Master"
+msgstr "Maître"
+msgid "Transform dashes in URL to spaces in term name filter values"
+msgstr ""
+"Transformer les tirets dans les URL en espaces dans les valeurs du "
+"filtre de nom de terme"
+msgid "There are no @titles to display."
+msgstr "Il n'y a aucun @titles à afficher."
+msgid ""
+"Page manager module is unable to enable @path because some other "
+"module already has overridden with %callback."
+msgstr ""
+"Le module Page Manager est incapable d'activer @path parce qu'un autre "
+"module l'a déjà supplanté avec %callback."
+msgid "This feature does not currently work and is disabled."
+msgstr ""
+"Cette fonctionalité ne fonctionne pas actuellement et est "
+"désactivée."
+msgid "Missing/ deleted type \"@types\""
+msgid_plural "Missing/ deleted type is one of \"@types\""
+msgstr[0] "Type \"@types\" manquant / supprimé"
+msgstr[1] "Le type manquant / supprimé est un de ceux-ci : @types"
+msgid "Taxonomy: term has parent(s)"
+msgstr "Taxonomie : le terme a un ou des parents"
+msgid "Control access if a term belongs to a specific parent term."
+msgstr ""
+"Contrôler l'accès si un terme appartient à un terme parent "
+"spécifique."
+msgid "@term can have the parent \"@terms\""
+msgid_plural "@term can have one of these parents: @terms"
+msgstr[0] "@term peut avoir le parent \"@terms\""
+msgstr[1] "@term peut avoir l'un de ces termes parents: @terms"
+msgid "Field: @widget_label (@field_name)"
+msgstr "Champ : @widget_label (@field_name)"
+msgid "Pane title"
+msgstr "Titre du volet"
+msgid "Node form title field"
+msgstr "Champ titre du formulaire de noeud"
+msgid "The node title form."
+msgstr "Le formulaire de titre du nœud."
+msgid "Node title form."
+msgstr "Formulaire de titre du nœud."
+msgid "Missing/broken type"
+msgstr "Type manquant/brisé"
+msgid "Term synonyms (does not work in D7)"
+msgstr "Termes Synonymes (ne fonctionne pas dans D7)"
+msgid "@entity (tokens)"
+msgstr "@entity (jetons - tokens)"
+msgid "\"@s\" @name"
+msgstr "\"@s\" @name"
+msgid ""
+"Creates a @to_entity context from @from_entity using the @field_name "
+"field on @from_entity."
+msgstr ""
+"Créer un contexte @to_entity à partir de @from_entity en utilisant "
+"le champ @field_name sur @from_entity."
+msgid "@to_entity from @from_entity (on @base_table.@relationship)"
+msgstr "@to_entity depuis @from_entity (dans @base_table.@relationship)"
+msgid "@from_entity from @to_entity (on @base_table.@relationship)"
+msgstr "@from_entity depuis @to_entity (dans @base_table.@relationship)"
+msgid "View: @view"
+msgstr "Vue : @view"
+msgid "View: @view: @display"
+msgstr "Vue : @view : @display"
+msgid "Broken/missing/deleted view display."
+msgstr "Affichage de vue endommagé/manquant/supprimé."
+msgid "Entire view"
+msgstr "Vue complète"
+msgid "Display the entire view."
+msgstr "Afficher la vue complète."
+msgid "\"@context\" entire view"
+msgstr "Vue complète de \"@context\""
+msgid "Query string value"
+msgstr "Valeur du paramètre d'URL"
+msgid "@identifier is bundle \"@types\""
+msgid_plural "@identifier bundle is one of \"@types\""
+msgstr[0] "@identifier est un paquet \"@types\""
+msgstr[1] "Le paquet @identifier est l'un des \"@types\""
+msgid "Configure content pane"
+msgstr "Configurer le volet de contenu"
+msgid "Skip the first @count item(s)"
+msgstr "Ignorer le(s) @count premier(s) élément(s)"
+msgid "Then display at most @count item(s)"
+msgstr "Puis afficher au plus @count élément(s)"
+msgid "Enter 0 to display all items."
+msgstr "Saisir 0 pour afficher tous les éléments."
+msgid "Display in reverse order"
+msgstr "Afficher dans l'ordre inverse"
+msgid "User Edit Template"
+msgstr "Gabarit d'Édition de l'Utilisateur"
+msgid "User edit template"
+msgstr "Gabarit d'édition de l'utilisateur"
+msgid ""
+"When enabled, this overrides the default Drupal behavior for "
+"displaying user edit form at <em>user/%user/edit</em>."
+msgstr ""
+"Si activé, supplante le comportement par défaut de Drupal pour "
+"afficher le formulaire d'édition de l'utilisateur à "
+"<em>user/%user/edit</em>."
+msgid ""
+"Page manager module is unable to enable user/%user/edit because some "
+"other module already has overridden with %callback."
+msgstr ""
+"Le module Page manager est incapable d'activer user/%user/edit parce "
+"qu'un autre module l'a déjà supplanté avec %callback."
+msgid "User being edited"
+msgstr "Utilisateur en cours de modification"
+msgid "Error, misconfigured entity_bundle access plugin"
+msgstr "Erreur, l'accès au plugin entity_bundle est mal configuré"
+msgid "(Custom) Entity: Field Value"
+msgstr "(Personnalisé) Entité : Valeur du champ"
+msgid "Control access by entity field value."
+msgstr "Contrôler l'accès par la valeur du champ entité."
+msgid "@entity @type: @field Field"
+msgstr "@entity @type : Champ @field"
+msgid "The front page"
+msgstr "La page d'accueil"
+msgid "User edit form: User ID"
+msgstr "Formulaire d'édition de l'utilisateur : Identifiant utilisateur"
+msgid "Creates a user edit form context from a user ID argument."
+msgstr ""
+"Crée un contexte pour le formulaire d'édition des utilisateurs à "
+"partir d'un identifiant utilisateur comme argument."
+msgid "Enter the user ID for this argument."
+msgstr "Saisir l'identifiant de l'utilisateur pour cet argument."
+msgid "Entity extra field"
+msgstr "Champ supplémentaire de l'entité"
+msgid "Select a view mode for this extra field."
+msgstr "Sélectionner un mode d'affichage pour ce champ supplémentaire."
+msgid "Select a build mode for this user."
+msgstr "Sélectionner un mode d'affichage pour cet utilisateur."
+msgid "A user edit form."
+msgstr "Un formulaire d'édition d'utilisateur."
+msgid "Enter the user ID of a user for this argument:"
+msgstr "Saisir l'identifiant d'un utilisateur pour cet argument :"
+msgid "Enter the name or UID of a node"
+msgstr "Saisir le nom ou l'identifiant d'un noeud"
+msgid "'%name' [user id %uid]"
+msgstr "'%name' [id utilisateur %uid]"
+msgid "Exportables selected"
+msgstr "Exportables sélectionnés"
+msgid "Node: (un)published"
+msgstr "Nœud : (non) publié"
+msgid "Control access by the nodes published status."
+msgstr "Contrôler l'accès en fonction du statut de publication des nœuds."
+msgid "Returns true if the nodes status is \"published\"."
+msgstr "Retourne \"vrai\" si le statut des nœuds est \"publié\"."
+msgid "Link to term"
+msgstr "Lier au terme"
+msgid "Comment Reply page"
+msgstr "Page de réponse au commentaire"
+msgid ""
+"Page manager module is unable to enable comment/reply/%node because "
+"some other module already has overridden with %callback."
+msgstr ""
+"Le module Page manager est incapable d'autoriser comment/reply/%node "
+"car d'autres modules le surcharge déjà avec %callback."
+msgid "A form to add a new comment reply."
+msgstr "Un formulaire pour ajouter une nouvelle réponse de commentaire."
+msgid "The language selection form."
+msgstr "Le formulaire de sélection de la langue."
+msgid "Fallback value"
+msgstr "Valeur de repli"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/devel-7.x-1.x.fr_0.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,1409 @@
+# French translation of Devel (7.x-1.0)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Devel (7.x-1.0)\n"
+"POT-Creation-Date: 2017-11-10 00:18+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "delete"
+msgstr "supprimer"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Submit"
+msgstr "Soumettre"
+msgid "Operations"
+msgstr "Actions"
+msgid "Value"
+msgstr "Valeur"
+msgid "Development"
+msgstr "Développement"
+msgid "Closed"
+msgstr "Fermé"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Content types"
+msgstr "Types de contenu"
+msgid "view"
+msgstr "voir"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Date"
+msgstr "Date"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "default"
+msgstr "défaut"
+msgid "No log messages available."
+msgstr "Aucune entrée du journal n'est disponible."
+msgid "Name"
+msgstr "Nom"
+msgid "username"
+msgstr "nom d'utilisateur"
+msgid "Open"
+msgstr "Ouvert"
+msgid "Length"
+msgstr "Longueur"
+msgid "Path"
+msgstr "Chemin"
+msgid "Vocabularies"
+msgstr "Vocabulaires"
+msgid "#"
+msgstr "#"
+msgid "status"
+msgstr "statut"
+msgid "Menu item"
+msgstr "Élément de menu"
+msgid "php"
+msgstr "php"
+msgid "Session ID"
+msgstr "Identifiant de session"
+msgid "Last access"
+msgstr "Dernier accès"
+msgid "Fields"
+msgstr "Champs"
+msgid "Nodes"
+msgstr "Nœuds"
+msgid "Load"
+msgstr "Charger"
+msgid "node"
+msgstr "nœud"
+msgid "Now"
+msgstr "Maintenant"
+msgid "Other"
+msgstr "Autre"
+msgid "access content"
+msgstr "accéder au contenu"
+msgid "External"
+msgstr "Externe"
+msgid "Hidden"
+msgstr "Caché"
+msgid "create"
+msgstr "créer"
+msgid "Switch"
+msgstr "Changer"
+msgid "ago"
+msgstr "il y a"
+msgid "Clear"
+msgstr "Vider"
+msgid "update"
+msgstr "mettre à jour"
+msgid "Front page"
+msgstr "Page d'accueil"
+msgid "NO"
+msgstr "NON"
+msgid "YES"
+msgstr "OUI"
+msgid "missing"
+msgstr "manquant"
+msgid "Enter username"
+msgstr "Entrez le nom d'utilisateur"
+msgid "Username not found"
+msgstr "Nom d'utilisateur inconnu"
+msgid "TRUE"
+msgstr "TRUE"
+msgid "FALSE"
+msgstr "FALSE"
+msgid "Language neutral"
+msgstr "Indépendant de la langue"
+msgid "!num_users created."
+msgstr "!num_users créés."
+msgid "Created the following new vocabularies: !vocs"
+msgstr "Les vocabulaires suivants ont été créés&nbsp;: !vocs"
+msgid "Created the following new terms: !terms"
+msgstr "Les termes suivants ont été créés&nbsp;: !vocs"
+msgid "1 user"
+msgid_plural "@count users"
+msgstr[0] "1 utilisateur"
+msgstr[1] "@count utilisateurs"
+msgid ""
+"This is a list of defined user functions that generated this current "
+"request lifecycle. Click on a function name to view its documention."
+msgstr ""
+"Ceci est une liste de fonctions définies de l'utilisateur qui "
+"génèrent ce cycle de vie de la requête. Cliquer sur un nom de "
+"fonction pour voir sa documentation."
+msgid "Here are the contents of your <code>$_SESSION</code> variable."
+msgstr "Voici le contenu de votre variable <code>$_SESSION</code>."
+msgid ""
+"This is a list of the variables and their values currently stored in "
+"variables table and the <code>$conf</code> array of your settings.php "
+"file. These variables are usually accessed with <a "
+"href=\"@variable-get-doc\">variable_get()</a> and <a "
+"href=\"@variable-set-doc\">variable_set()</a>. Variables that are too "
+"long can slow down your pages."
+msgstr ""
+"Ceci est une liste des variables et de leur valeur actuellement "
+"stockée dans la table variables et le tableau <code>$conf</code> de "
+"votre fichier settings.php. Ces variables sont habituellement "
+"accédées avec <a href=\"@variable-get-doc\">variable_get()</a>. Les "
+"variables qui sont trop longues peuvent ralentir vos pages."
+msgid "Empty cache"
+msgstr "Vider le cache"
+msgid "Reinstall modules"
+msgstr "Réinstaller les modules"
+msgid "Variable editor"
+msgstr "Éditeur de variables"
+msgid "Session viewer"
+msgstr "Visionneur de session"
+msgid "Switch user"
+msgstr "Changer d'utilisateur"
+msgid "Devel"
+msgstr "Devel"
+msgid "Execute PHP"
+msgstr "Exécuter du code PHP"
+msgid "Number of users to display in the list"
+msgstr "Nombre d'utilisateurs à afficher dans la liste"
+msgid "This user can switch back."
+msgstr "Cet utilisateur peut revenir."
+msgid "Caution: this user will be unable to switch back."
+msgstr "Attention : cet utilisateur ne pourra pas revenir à son compte."
+msgid "Query log"
+msgstr "Log de requête"
+msgid ""
+"You must disable or upgrade the php Zend Optimizer extension in order "
+"to enable this feature. The minimum required version is 3.2.8. Earlier "
+"versions of Zend Optimizer are <a href=\"!url\">horribly buggy and "
+"segfault your Apache</a> ... "
+msgstr ""
+"Vous devez désactiver ou mettre à jour l'extension php Zend "
+"Optimizer afin d'activer cette fonctionnalité. La version minimale "
+"requise est 3.2.8. Les versions plus anciennes de Zend Optimizer sont "
+"<a href=\"!url\">horriblement boguées et produisent des erreurs de "
+"segmentation dans votre Apache</a> ... "
+msgid "Display query log"
+msgstr "Afficher la liste des requêtes."
+msgid ""
+"Display a log of the database queries needed to generate the current "
+"page, and the execution time for each. Also, queries which are "
+"repeated during a single page view are summed in the # column, and "
+"printed in red since they are candidates for caching."
+msgstr ""
+"Afficher un journal des requêtes en base de données qui ont été "
+"nécessaires à la génération de la page courante, et le temps "
+"d'exécution pour chacune. De plus, les requêtes qui sont répétées "
+"pendant une seule visualisation de page sont résumées dans la "
+"colonne #, et affichées en rouge car elles sont propices à être "
+"mises en cache."
+msgid "Sort query log"
+msgstr "Trier le journal des requêtes"
+msgid "by source"
+msgstr "par source"
+msgid "by duration"
+msgstr "par temps d'exécution"
+msgid ""
+"The query table can be sorted in the order that the queries were "
+"executed or by descending duration."
+msgstr ""
+"La table de la requête peut être triée dans l'ordre où les "
+"requêtes ont été exécutées ou par durée décroissante."
+msgid "Slow query highlighting"
+msgstr "Surligner les requêtes lentes"
+msgid ""
+"Enter an integer in milliseconds. Any query which takes longer than "
+"this many milliseconds will be highlighted in the query log. This "
+"indicates a possibly inefficient query, or a candidate for caching."
+msgstr ""
+"Entrez un entier en millisecondes. Toute requête qui prend plus "
+"longtemps que ce nombre de millisecondes sera mise en surbrillance "
+"dans le journal de la requête. Cela indique possiblement une requête "
+"inefficace, ou candidate pour la mise en cache."
+msgid "Display page timer"
+msgstr "Afficher le chronomètre de page"
+msgid "Display page execution time in the query log box."
+msgstr ""
+"Afficher la durée d'exécution de la page dans la boîte listant les "
+"requêtes."
+msgid "Display memory usage"
+msgstr "Afficher l'utilisation de la mémoire"
+msgid "Display redirection page"
+msgstr "Afficher la page de renvoi."
+msgid ""
+"When a module executes drupal_goto(), the query log and other "
+"developer information is lost. Enabling this setting presents an "
+"intermediate page to developers so that the log can be examined before "
+"continuing to the destination page."
+msgstr ""
+"Lorsqu'un module invoque <code>drupal_goto()</code> pour effectuer un "
+"renvoi vers une autre page, la liste des requêtes et les autres "
+"informations utiles au développeur sont perdues. Activer ce "
+"paramètre a pour effet de présenter lors des renvois une page "
+"intermédiaire permettant au développeur d'examiner les données "
+"avant de continuer sur la page de renvoi."
+msgid "Error handler"
+msgstr "Gestionnaire d'erreurs"
+msgid "Standard drupal"
+msgstr "Standard Drupal"
+msgid "Backtrace"
+msgstr "Backtrace"
+msgid "PHP code to execute"
+msgstr "Code PHP à exécuter"
+msgid "Enter some code. Do not use <code>&lt;?php ?&gt;</code> tags."
+msgstr ""
+"Entrez du code. Ne pas utiliser les balises <code>&lt;?php "
+"?&gt;</code>."
+msgid "Execute"
+msgstr "Exécuter"
+msgid "Warning - will delete your module tables and variables."
+msgstr "Avertissement - supprimera vos tables et variables de modules."
+msgid "Old value"
+msgstr "Ancienne valeur"
+msgid "New value"
+msgstr "Nouvelle valeur"
+msgid ""
+"Sorry, complex variable types may not be edited yet. Use the "
+"<em>Execute PHP</em> block and the <a "
+"href=\"@variable-set-doc\">variable_set()</a> function."
+msgstr ""
+"Désolé, des types de variables complexes ne peuvent pas encore être "
+"modifiés. Utiliser le bloc <em>Exécuter du code PHP</em> et la "
+"fonction <a href=\"@variable-set-doc\">variable_set()</a>."
+msgid "Session name"
+msgstr "Nom de la session"
+msgid "Generate users"
+msgstr "Générer des utilisateurs"
+msgid "Generate a given number of users. Optionally delete current users."
+msgstr ""
+"Génère un nombre défini d'utilisateurs. Supprime en option les "
+"utilisateurs actuels."
+msgid "Generate content"
+msgstr "Générer du contenu"
+msgid ""
+"Generate a given number of nodes and comments. Optionally delete "
+"current items."
+msgstr ""
+"Génère un nombre défini de nœuds et de commentaires. Supprime en "
+"option les éléments actuels."
+msgid "How many users would you like to generate?"
+msgstr "Combien d'utilisateurs voulez-vous générer ?"
+msgid "How many nodes would you like to generate?"
+msgstr "Combien de nœuds voulez-vous générer ?"
+msgid "Max word length of titles"
+msgstr "Taille de mot maximum des titres"
+msgid "Development helper for node_access table"
+msgstr "Assistant de développement pour la table node_access"
+msgid ""
+"This module helps in site development.  Specifically, when an access "
+"control module is used to limit access to some or all nodes, this "
+"module provides some feedback showing the node_access table in the "
+"database."
+msgstr ""
+"Ce module aide au développement d'un site. Spécifiquement, quand un "
+"module de contrôle d'accès est utilisé pour limiter l'accès à "
+"quelques-uns ou tous les nœuds, ce module fournit des indications en "
+"affichant la table node_access dans la base de données."
+msgid ""
+"The node_access table is one method Drupal provides to hide content "
+"from some users while displaying it to others.  By default, Drupal "
+"shows all nodes to all users.  There are a number of optional modules "
+"which may be installed to hide content from some users."
+msgstr ""
+"La table node_access est une méthode de Drupal qui permet de cacher "
+"du contenu à certains utilisateurs et de l'afficher à d'autres. Par "
+"défaut, Drupal affiche tous les nœuds à tous les utilisateurs. Il y "
+"a plusieurs modules optionnels qui peuvent être installés pour "
+"cacher le contenu à certains utilisateurs."
+msgid ""
+"If you have not installed any of these modules, you really have no "
+"need for the devel_node_access module.  This module is intended for "
+"use during development, so that developers and admins can confirm that "
+"the node_access table is working as expected.  You probably do not "
+"want this module enabled on a production site."
+msgstr ""
+"Si vous n'avez pas installé un de ces modules, vous n'avez "
+"réellement pas besoin du module devel_node_access. Ce module est à "
+"l'intention d'un usage durant le développement, alors que les "
+"développeurs et administrateurs peuvent confirmer que la table "
+"node_access fonctionne comme prévu. Vous ne voulez probablement pas "
+"que ce module soit activé sur un site en production."
+msgid ""
+"This module provides two blocks.  One called Devel Node Access by User "
+"is visible when a single node is shown on a page.  This block shows "
+"which users can view, update or delete the node shown.  Note that this "
+"block uses an inefficient algorithm to produce its output.  You should "
+"only enable this block on sites with very few user accounts."
+msgstr ""
+"Ce module fournit deux blocs. Un appellé Devel Node Access by User "
+"qui est visible quand un seul nœud est affiché sur une page. Ce bloc "
+"affiche quels utilisateurs peuvent voir, mettre à jour ou supprimer "
+"le nœud affiché. Noter que ce bloc utilise un algorithme inefficace "
+"pour produire son résultat. Vous ne devriez activer ce bloc que sur "
+"des sites qui ont très peu de comptes d'utilisateurs."
+msgid "Access Granted to All Nodes (All Users)"
+msgstr "Accès autorisé à tous les nœuds (Tous les utilisateurs)"
+msgid ""
+"Your node_access table contains entries that may be granting all users "
+"access to all nodes.  Depending on which access control module(s) you "
+"use, you may want to delete these entries.  If you are not using an "
+"access control module, you should probably leave these entries as is."
+msgstr ""
+"Votre table node_access contient des entrées qui peuvent autoriser "
+"tous les utilisateurs à accéder à tous les nœuds. En fonction "
+"du(des) module(s) de contrôle d'accès que vous utilisez, vous "
+"pourriez vouloir supprimer ces entrées. Si vous n'utilisez pas de "
+"module de contrôle d'accès, vous devriez laisser ces entrées telles "
+"quelles."
+msgid "realm"
+msgstr "zone"
+msgid "Legacy Nodes"
+msgstr "Anciens nœuds"
+msgid ""
+"You have !num nodes in your node table which are not represented in "
+"your node_access table.  If you have an access control module "
+"installed, these nodes may be hidden from all users.  This could be "
+"caused by publishing nodes before enabling the access control module.  "
+"If this is the case, manually updating each node should add it to the "
+"node_access table and fix the problem."
+msgstr ""
+"Vous avez !num nœuds dans la table node qui ne sont pas représentés "
+"dans la table node_access. Si vous avez un module de contrôle "
+"d'accès installé, ces nœuds pourraient être cachés pour tous les "
+"utilisateurs. Ceci pourrait être causé par la publication de nœuds "
+"avant l'activation du module de contrôle d'accès. Si tel est le cas, "
+"mettre à jour manuellement chacun des nœuds les ajoutera à la table "
+"node_access et résoudra le problème."
+msgid "All Nodes Represented"
+msgstr "Tous les nœuds représentés"
+msgid "All nodes are represented in the node_access table."
+msgstr "Tous les nœuds sont représentés dans la table node_access."
+msgid "Access Granted to All Nodes (Some Users)"
+msgstr "Accès autorisé à tous les nœuds (Quelques utilisateurs)"
+msgid ""
+"Your node_access table contains entries that may be granting some "
+"users access to all nodes.  This may be perfectly normal, depending on "
+"which access control module(s) you use."
+msgstr ""
+"Votre table node_access contient des entrées qui peuvent autoriser "
+"des utilisateurs à accéder à tous les nœuds. Cela pourrait être "
+"parfaitement normal, dépendamment de quel(s) module(s) de contrôle "
+"d'accès vous utilisez."
+msgid "Access Granted to Some Nodes"
+msgstr "Accès autorisé à certains nœuds"
+msgid "public nodes"
+msgstr "nœuds publics"
+msgid "Public Nodes"
+msgstr "nœuds Publics"
+msgid "Summary by Realm"
+msgstr "Sommaire par domaine"
+msgid "The following realms grant limited access to some specific nodes."
+msgstr ""
+"Les zones suivantes autorisent un accès limité à des nœuds "
+"spécifiques."
+msgid "private nodes"
+msgstr "nœuds privés"
+msgid "Protected Nodes"
+msgstr "Nœuds Protégés"
+msgid "Devel Node Access"
+msgstr "Accès à Devel Node"
+msgid "Devel Node Access by User"
+msgstr "Accès à Devel Node par utilisateur"
+msgid "gid"
+msgstr "gid"
+msgid "explained"
+msgstr "expliqué"
+msgid "ok"
+msgstr "ok"
+msgid "ignored"
+msgstr "ignoré"
+msgid "empty"
+msgstr "vide"
+msgid "illegitimate"
+msgstr "illégitime"
+msgid "Should NOT be in !na because of lower priority!"
+msgstr "Ne devrait PAS être dans !na à cause d'une plus basse priorité !"
+msgid "alien"
+msgstr "étranger"
+msgid "Should NOT be in !na because of unknown origin!"
+msgstr "Ne devrait PAS être dans !na à cause d'une origine inconnue !"
+msgid "prio"
+msgstr "prio"
+msgid "This entry grants access to this node to this user."
+msgstr "Cette entrée autorise l'accès à ce nœud à cet utilisateur."
+msgid "node_access entries for nodes shown on this page"
+msgstr "entrées node_access pour les nœuds affichés sur cette page"
+msgid "Access permissions by user"
+msgstr "Permissions d'accès par utilisateur"
+msgid "Various blocks, pages, and functions for developers."
+msgstr "Divers blocs, pages et fonctions pour développeurs."
+msgid "Generate dummy users, nodes, and taxonomy terms."
+msgstr ""
+"Générer des utilisateurs, des nœuds, et des termes de taxonomie "
+"factices."
+msgid "Performance Logging"
+msgstr "Journalisation des performances"
+msgid "Logs performance data: page generation times and memory usage."
+msgstr ""
+"Journaliser les données de performance : durée de génération de la "
+"page et utilisation de la mémoire."
+msgid "Clear APC"
+msgstr "Vider APC"
+msgid "Clears performance statistics collected in APC."
+msgstr "Effacer les statistiques de performance rassemblées dans APC."
+msgid "Performance Logs: Summary"
+msgstr "Journaux de performance : Sommaire"
+msgid "View summary performance logs: page generation times and memory usage."
+msgstr ""
+"Voir les journaux de performance sommaires : durée de génération "
+"des pages et utilisation de la mémoire."
+msgid "Performance Logs: Details"
+msgstr "Journaux de performance : Détails"
+msgid ""
+"View detailed, per page, performance logs: page generation times and "
+"memory usage."
+msgstr ""
+"Voir des journaux de performance détaillés par page : durée de "
+"génération de la page et utilisation de la mémoire."
+msgid ""
+"APC is enabled. It is reasonably safe to enable summary logging on "
+"live sites."
+msgstr ""
+"APC est activé. Il est raisonnablement sécuritaire d'activer la "
+"journalisation sommaire sur des sites en ligne."
+msgid ""
+"APC is not enabled. It is <strong>not</strong> safe to enable summary "
+"logging to the database on live sites."
+msgstr ""
+"APC n'est pas activé. Il <strong>n'est pas</strong> sécuritaire "
+"d'activer la journalisation sommaire à la base de données de sites "
+"en ligne."
+msgid "Logging mode"
+msgstr "Mode de journalisation"
+msgid "Detailed logging"
+msgstr "Journalisation détaillée"
+msgid ""
+"Log memory usage and page generation times for every page. This "
+"logging mode is <strong>not</strong> suitable for large sites, as it "
+"can degrade performance severly. It is intended for use by developers, "
+"or on a test copy of the site."
+msgstr ""
+"Journaliser l'utilisation de la mémoire et la durée de génération "
+"des pages pour chaque page. Ce mode de journalisation <strong>n'est "
+"pas</strong> approprié pour de grands sites puisque cela peut "
+"sévèrement dégrader les performances. Il est à l'intention d'un "
+"usage par des développeurs ou sur une copie de test du site."
+msgid "Summary logging (DB)"
+msgstr "Journalisation sommaire (BD)"
+msgid ""
+"Log summary data, such as average and maximum page generation times "
+"and memory usage to the database. This logging mode is "
+"<strong>not</strong> suitable for most live sites."
+msgstr ""
+"Journaliser les données sommaires, telles que la moyenne et la durée "
+"maximale de génération des pages et l'utilisation de la mémoire "
+"dans la base de données. Ce mode de journalisation <strong>n'est "
+"pas</strong> approprié pour la plupart des sites en ligne."
+msgid "Summary logging (APC)"
+msgstr "Journalisation sommaire (APC)"
+msgid ""
+"Log summary data, such as average and maximum page generation times "
+"and memory usage to APC, if installed. The summary will be stored in "
+"APC memory, and hence there is no load on the database. This logging "
+"to APC is suitable for most live sites, unless the number of unique "
+"page accesses is excessively high."
+msgstr ""
+"Journaliser les données résumées, telles que la moyenne et la "
+"durée maximale de génération des pages et l'utilisation de la "
+"mémoire APC (Alternative PHP Cache), si installé. Le sommaire sera "
+"stocké dans la mémoire APC  ; par conséquent il n'y a pas de "
+"chargement dans la base de données. Cette journalisation dans APC est "
+"appropriée pour la plupart des sites en ligne, à moins que le nombre "
+"d'accès aux pages soit excessivement élevé."
+msgid "Database Query timing and count"
+msgstr "Décompte et durée de la requête à la base de données"
+msgid "Accesses threshold"
+msgstr "Seuil des accès"
+msgid ""
+"When displaying the summary report and using APC, only pages with the "
+"number of accesses larger than the specified threshold will be shown. "
+"Also, when cron runs, pages with that number of accesses or less will "
+"be removed, so as not to overflow APC's shared memory. This is useful "
+"on a live site with a high volume of hits. On a development site, you "
+"probably want this set to 0, so you can see all pages."
+msgstr ""
+"Lorsque le résumé du rapport est affiché et qu'APC (Alternative PHP "
+"Cache) est utilisé, seules les pages ayant un nombre d'accès "
+"supérieur au seuil spécifié seront visibles. De plus, quand le "
+"planificateur de tâche cron s'exécute, les pages ayant un nombre "
+"d'accès égal ou inférieur seront supprimées pour ne pas faire "
+"déborder le cache APC. Ceci est utile pour un site ayant un taux de "
+"consultation important. Pour un site de développement, vous pouvez "
+"définir ceci à 0, vous verrez ainsi toutes les pages."
+msgid "# accesses"
+msgstr "# accès"
+msgid "Query Count (Max)"
+msgstr "Décompte des requêtes (Max)"
+msgid "Query Count (Avg)"
+msgstr "Décompte des requêtes (Moy)"
+msgid "No statistics available yet."
+msgstr "Aucune statistique n'est encore disponible."
+msgid ""
+"Showing !shown paths with more than !threshold accesses, out of !total "
+"total paths."
+msgstr ""
+"Affichage de !shown chemins avec plus de !threshold accès, sur un "
+"total de !total chemins."
+msgid "Showing all !total paths."
+msgstr "Affichage de tous les !total chemins."
+msgid "Average memory per page: !mb_avg MB"
+msgstr "Mémoire moyenne par page : !mb_avg MO"
+msgid "Total number of page accesses: !accesses"
+msgstr "Nombre total d'accès à la page : !accesses"
+msgid "First access: !access."
+msgstr "Premier accès : !access."
+msgid "Last access: !access."
+msgstr "Dernier accès : !access."
+msgid "Memory (MB)"
+msgstr "Mémoire (MO)"
+msgid "Anonymous?"
+msgstr "Anonyme ?"
+msgid "# Queries"
+msgstr "# Requêtes"
+msgid "Confirm APC clear"
+msgstr "Confirmer le vidage d'APC"
+msgid "Are you sure you want to clear the APC statistics for this site?"
+msgstr "Êtes-vous sûr de vouloir vider les statistiques d'APC pour ce site ?"
+msgid ""
+"This will clear all the collected performance statistics stored in "
+"APC. This action cannot be undone."
+msgstr ""
+"Ceci videra toutes les statistiques de performance rassemblées qui "
+"sont stockées dans APC. Cette action est irréversible."
+msgid "Performance statistics collected in APC has been cleared."
+msgstr ""
+"Les statistiques de performance rassemblées dans APC ont été "
+"vidées."
+msgid ""
+"Logs detailed and/or summary page generation time and memory "
+"consumption for page requests."
+msgstr ""
+"Les journaux détaillés et/ou sommaires de la durée de génération "
+"des pages et de consommation de la mémoire pour les requêtes de "
+"pages."
+msgid "Debug mode"
+msgstr "Mode debug"
+msgid "Generate"
+msgstr "Générer"
+msgid "Run cron"
+msgstr "Lancer la tâche planifiée (cron)"
+msgid "Instances"
+msgstr "Instances"
+msgid "Bundles"
+msgstr "Paquets"
+msgid "The menu router has been rebuilt."
+msgstr "Le routeur de menu a été reconstruit."
+msgid "Generating Content"
+msgstr "Génération du contenu"
+msgid "Finished @num_nids nodes created successfully."
+msgstr "Création de @num_nids nœuds avec succès."
+msgid "Finished with an error."
+msgstr "Terminé avec erreur"
+msgid ""
+"The theme registry is being rebuilt on every request. Remember to <a "
+"href=\"!url\">turn off</a> this feature on production websites."
+msgstr ""
+"Le registre du thème est reconstruit à chaque requête. N'oubliez "
+"pas de <a href=\"!url\">désactiver</a> cette fonctionnalité sur des "
+"sites web en production."
+msgid "Enter function name for api lookup"
+msgstr "Entrez le nom de la fonction pour la voir sur l'API"
+msgid "API Site"
+msgstr "Site de l'API"
+msgid ""
+"The base URL for your developer documentation links. You might change "
+"this if you run <a href=\"!url\">api.module</a> locally."
+msgstr ""
+"L'URL de base pour vos liens de documentation du développeur. Vous "
+"pouvez changer ceci si vous exécutez <a href=\"!url\">api.module</a> "
+"localement."
+msgid "Krumo display"
+msgstr "Affichage de Krumo"
+msgid ""
+"Select a skin for your debug messages or select <em>disabled</em> to "
+"display object and array output in standard PHP format."
+msgstr ""
+"Choisissez un thème pour vos messages de débogage ou choisissez "
+"<em>désactivé</em> pour afficher la sortie de l'objet et du tableau "
+"au format PHP standard."
+msgid "Rebuild the theme registry on every page load"
+msgstr "Reconstruire le registre de thème à chaque chargement de page"
+msgid ""
+"While creating new templates and theme_ overrides the theme registry "
+"needs to be rebuilt."
+msgstr ""
+"A la création de nouveaux templates et de surcharges de theme_, le "
+"registre de thème a besoin d’être reconstruit."
+msgid ""
+"Uninstall and then install the selected modules. "
+"<code>hook_uninstall()</code> and <code>hook_install()</code> will be "
+"executed and the schema version number will be set to the most recent "
+"update number. You may have to manually clear out any existing tables "
+"first if the module doesn't implement <code>hook_uninstall()</code>."
+msgstr ""
+"Désinstaller puis installer les modules sélectionnés. "
+"<code>hook_uninstall()</code> et <code>hook_install()</code> seront "
+"exécutés et le numéro de version du schéma sera défini au numéro "
+"de mise à jour le plus récent. Vous devrez au préalable effacer "
+"manuellement toute table existante si le module n'implémente pas "
+"<code>hook_uninstall()</code>."
+msgid "Reinstall"
+msgstr "Réinstaller"
+msgid "Saved new value for %name."
+msgstr "Nouvelle valeur enregistrée pour %name."
+msgid "Display of !type !obj"
+msgstr "Affichage de !obj !type"
+msgid "{empty}"
+msgstr "{vide}"
+msgid "The file could not be written."
+msgstr "The fichier n'a pas pu être enregistré."
+msgid "One variable deleted."
+msgid_plural "@count variables deleted."
+msgstr[0] "Une variable supprimée."
+msgstr[1] "@count variables supprimées."
+msgid "1 character"
+msgid_plural "@count characters"
+msgstr[0] "@count caractère"
+msgstr[1] "@count caractères"
+msgid "1 element"
+msgid_plural "@count elements"
+msgstr[0] "1 élément"
+msgstr[1] "@count éléments"
+msgid ""
+"Clear the CSS cache and all database cache tables which store page, "
+"node, theme and variable caches."
+msgstr ""
+"Purger le cache CSS et tout le cache des tables de la base de données "
+"qui stockent le cache des pages, des nœuds, des thèmes et des "
+"variables."
+msgid "Function reference"
+msgstr "Référentiel de la fonction"
+msgid ""
+"View a list of currently defined user functions with documentation "
+"links."
+msgstr ""
+"Voir une liste de fonctions utilisateur actuellement définies avec "
+"liens vers la documentation."
+msgid "Run hook_uninstall() and then hook_install() for a given module."
+msgstr "Lancer hook_uninstall() puis hook_install() pour un module donné."
+msgid "Rebuild menus"
+msgstr "Reconstruire les menus"
+msgid ""
+"Rebuild menu based on hook_menu() and revert any custom changes. All "
+"menu items return to their default settings."
+msgstr ""
+"Reconstruire le menu en se basant sur hook_menu() et rétablir tous "
+"les modifications personnalisées. Tous les éléments de menus "
+"retournent à leurs paramètres par défaut."
+msgid "Edit and delete site variables."
+msgstr "Modifier et supprimer des variables du site."
+msgid "PHPinfo()"
+msgstr "PHPinfo()"
+msgid "View your server's PHP configuration"
+msgstr "Voir la configuration PHP de votre serveur"
+msgid "Execute PHP Code"
+msgstr "Exécuter du code PHP"
+msgid "Execute some PHP code"
+msgstr "Exécuter du code PHP"
+msgid "Theme registry"
+msgstr "Registre du thème"
+msgid "View a list of available theme functions across the whole site."
+msgstr ""
+"Voir une liste des fonctions de thèmes disponibles à travers "
+"l'ensemble du site."
+msgid "Hook_elements()"
+msgstr "Hook_elements()"
+msgid "View the active form/render elements for this site."
+msgstr "Voir le rendu/forme actif(ve) des éléments pour ce site."
+msgid "List the contents of $_SESSION."
+msgstr "Liste le contenu de $_SESSION."
+msgid "Devel settings"
+msgstr "Paramètres de Devel"
+msgid "Delete all users (except user id 1) before generating new users."
+msgstr ""
+"Supprimer tous les utilisateurs (excepté utilisateur id 1) avant de "
+"générer les nouveaux utilisateurs."
+msgid "How old should user accounts be?"
+msgstr "Quel âge doivent avoir les comptes d'utilisateurs ?"
+msgid ""
+"User ages will be distributed randomly from the current time, back to "
+"the selected time."
+msgstr ""
+"L'ancienneté des utilisateurs sera distribuée aléatoirement entre "
+"l'heure choisie et l'heure actuelle."
+msgid ""
+". This type contains CCK fields which will only be populated by fields "
+"that implement the content_generate hook."
+msgstr ""
+". Ce type contient des champs CCK qui ne seront peuplés que par des "
+"champs qui implémentent le hook content_generate."
+msgid "How far back in time should the nodes be dated?"
+msgstr "À partir de quand doit-on dater les nœuds ?"
+msgid ""
+"Node creation dates will be distributed randomly from the current "
+"time, back to the selected time."
+msgstr ""
+"Les dates de création des nœuds seront réparties aléatoirement "
+"entre la date de départ choisie et maintenant."
+msgid "Requires path.module"
+msgstr "Requiert path.module"
+msgid "Add an url alias for each node."
+msgstr "Ajouter un alias d'URL à chaque nœud"
+msgid ""
+"Does not grant any access, but could block lower priority grants; not "
+"in !na."
+msgstr ""
+"N'autorise aucun accès, mais pourrait bloquer les autorisations de "
+"plus basse priorité ; pas dans !na."
+msgid "Should be in !na but isn't!"
+msgstr "Devrait être dans !na, mais n'y est pas!"
+msgid "Node_access summary"
+msgstr "Résumé de node_access"
+msgid "Devel node access"
+msgstr "Devel Node Access"
+msgid "Devel generate"
+msgstr "Devel generate"
+msgid "APC is not enabled. Nothing to do ..."
+msgstr "APC n'est pas activé. Rien à faire ..."
+msgid "Performance logging is not enabled"
+msgstr "La journalisation des performances n'est pas activée."
+msgid "Performance logging"
+msgstr "Journalisation des performances"
+msgid "Performance logging details"
+msgstr "Journalisation détaillée des performances"
+msgid "Performance logging query"
+msgstr "Journalisation des performances de requêtes"
+msgid "Performance logging APC"
+msgstr "Journalisation des performances APC"
+msgid "Performance logging on live web sites works best if APC is enabled."
+msgstr ""
+"La journalisation des performances sur les sites web en ligne "
+"fonctione mieux si APC est activé."
+msgid "Performance logging APC memory size"
+msgstr "Taille de la mémoire APC de la journalisation des performances"
+msgid "Execute PHP code"
+msgstr "Exécuter du code PHP"
+msgid ""
+"This issue may be masked by the one above, so look into the former "
+"first."
+msgstr ""
+"Ce problème peut être masqué par celui ci-dessus, alors regardez le "
+"premier d'abord."
+msgid "unexpected"
+msgstr "inattendu"
+msgid ""
+"You have errors in your !na table! You may be able to fix these for "
+"now by running !Rebuild_permissions, but this is likely to destroy the "
+"evidence and make it impossible to identify the underlying issues. If "
+"you don't fix those, the errors will probably come back again. <br /> "
+"DON'T do this just yet if you intend to ask for help with this "
+"situation."
+msgstr ""
+"Il y a des erreurs dans votre table !na ! Vous pouvez corriger cela "
+"dès maintenant en exécutant !Rebuild_permissions, mais cela implique "
+"la destruction des informations, ce qui qui rendra impossible "
+"l'identification des problèmes sous-jacents. Si vous ne faites pas la "
+"réparation, les erreurs reviendront probablement.<br />NE LE FAITES "
+"PAS maintenant si vous avez l'intention de demander de l'aide sur "
+"cette situation."
+msgid ""
+"Choose an error handler for your site. <em>Backtrace</em> prints nice "
+"debug information when an error is noticed, and you <a "
+"href=\"@choose\">choose to show errors on screen</a>. "
+"<strong>Backtrace requires the <a href=\"@krumo\">krumo "
+"library</a></strong>. <em>None</em> is a good option when stepping "
+"through the site in your debugger."
+msgstr ""
+"Choisir un gestionnaire d'erreur pour votre site.\r\n"
+"<em>Backtrace</em> affiche des informations de débogage quand une "
+"erreur est levée et que vous avez fait le <a href=\"@choose\">choix "
+"d'afficher les erreurs à l'écran</a>. <strong>Backtrace requiert la "
+"<a href=\"@krumo\">librairie krumo</a></strong>.\r\n"
+"<em>Aucun</em> est une bonne option si vous utilisez déjà un outil "
+"de débogage."
+msgid ""
+"The second block provided by this module shows the entries in the "
+"node_access table for any nodes shown on the current page.  You can "
+"enable the debug mode on the <a href=\"@settings_page\">settings "
+"page</a> to display much more information, but this can cause "
+"considerable overhead.  Because the tables shown are wide, it is "
+"recommended to enable the blocks in the page footer rather than a "
+"sidebar."
+msgstr ""
+"Le second bloc fourni par ce module montre les entrées dans la table "
+"node_acces pour tous les nœuds affichés dans la page actuelle. Vous "
+"pouvez activer le mode débogage sur la <a "
+"href=\"@settings_page\">page des paramètres</a> pour afficher plus "
+"d'informations, mais cela peut entraîner une surcharge considérable. "
+"En raison de la grande taille de ces tables, il est recommandé "
+"d'activer les blocs dans le pied-de-page plutôt que dans les barres "
+"latérales."
+msgid ""
+"This module also provides a <a href=\"@summary_page\">summary page</a> "
+"which shows general information about your node_access table.  If you "
+"have installed the Views module, you may browse node_access by realm."
+msgstr ""
+"Ce module fournit aussi une <a href=\"@summary_page\">page de "
+"résumé</a> qui affiche les informations générales de la table "
+"node_acces. Si vous avez installé le module Views, vous pourrez "
+"naviguer par domaine dans node_access."
+msgid "To see more details enable <a href=\"@debug_mode\">debug mode</a>."
+msgstr ""
+"Pour voir plus de détail, activer le <a href=\"@debug_mode\">mode "
+"débogage</a>."
+msgid "These are the grants returned by hook_node_grants() for this user."
+msgstr ""
+"Ce sont les permissions d'accès accordées à cet utilisateur "
+"retournées par hook_node_grants()."
+msgid "!username has the following access"
+msgstr "!username a l'accès suivant"
+msgid "%op:"
+msgstr "%op :"
+msgid "to node !nid:"
+msgstr "vers le nœud !nid :"
+msgid "Create nodes of the '@Node_type' type."
+msgstr "Créer des nœuds de type '@Node_type'."
+msgid "Unable to load the node &ndash; this should never happen!"
+msgstr "Incapable de charger le nœud &ndash; ceci ne devrait jamais arriver !"
+msgid "!NO: access content"
+msgstr "!NO : accéder au contenu"
+msgid ""
+"!NO: This user does not have the '!access_content' permission and is "
+"denied doing anything with content."
+msgstr ""
+"!NO : Cet utilisateur n'a pas le droit '!access_content' et il lui est "
+"refusé de faire quoi que ce soit avec le contenu."
+msgid "!NO: no reason"
+msgstr "!NO : aucune raison"
+msgid "!NO: None of the checks resulted in allowing this, so it's denied."
+msgstr ""
+"!NO : Aucune des vérifications n'a résulté à l'autorisation de "
+"ceci, donc c'est refusé."
+msgid ""
+"Detail performance log is not enabled. Go to the <a "
+"href=\"@link\">settings page</a> to enable it."
+msgstr ""
+"Le journal détaillé des performances n'est pas activé. Allez sur la "
+"<a href=\"@link\">page des paramètres</a> pour l'activer."
+msgid "Render"
+msgstr "Rendu"
+msgid ""
+"Display how much memory is used to generate the current page. This "
+"will show memory usage when devel_init() is called and when "
+"devel_exit() is called."
+msgstr ""
+"Affiche la quantité de mémoire utilisée pour générer la page "
+"actuelle. Cela affichera l'utilisation de la mémoire à l'appel de "
+"devel_init() et à l'appel de devel_exit()."
+msgid "Display $page array"
+msgstr "Afficher le tableau $page"
+msgid ""
+"Display $page array from <a "
+"href=\"http://api.drupal.org/api/function/hook_page_alter/7\">hook_page_alter()</a> "
+"in the messages area of each page."
+msgstr ""
+"Afficher le tableau variable $page depuis <a "
+"href=\"http://api.drupal.org/api/function/hook_page_alter/7\">hook_page_alter()</a> "
+"dans les messages de chaque page."
+msgid "Uninstalled and installed: %names."
+msgstr "Désinstallés et réinstallés : %names."
+msgid "No variables."
+msgstr "Pas de variable."
+msgid "View developer output like variable printouts, query log, etc."
+msgstr ""
+"Voir un rendu pour les développeurs tel que les diverses impressions, "
+"le journal des requêtes, etc."
+msgid "Access developer information"
+msgstr "Accéder aux informations de développeur"
+msgid "Switch users"
+msgstr "Changer d'utilisateur"
+msgid "Display source code"
+msgstr "Afficher le code source"
+msgid "Details about a given menu item."
+msgstr "Détails à propos d'un élément de menu donné."
+msgid "Field info"
+msgstr "Informations du champ"
+msgid "View fields information across the whole site."
+msgstr "Voir les informations de champs sur l'ensemble du site."
+msgid "Explain query"
+msgstr "Expliquer la requête"
+msgid "Run an EXPLAIN on a given query. Used by query log"
+msgstr ""
+"Exécuter un EXPLAIN sur une requête donnée. Utilisé par le journal "
+"de requête."
+msgid "Arguments query"
+msgstr "Requête d'arguments"
+msgid ""
+"Helper functions, pages, and blocks to assist Drupal developers. The "
+"devel blocks can be managed via the <a href=\""
+msgstr ""
+"Fonctions, pages, et blocs d'aide pour assister les développeurs "
+"Drupal. Les blocs Devel peuvent être gérés via la"
+msgid ""
+"View the node access information blocks on node pages and the summary "
+"page."
+msgstr ""
+"Voir les blocs d'information de node access sur les pages de nœuds et "
+"dans la page sommaire."
+msgid "Access DNA information"
+msgstr "Accéder aux informations DNA"
+msgid "Development link"
+msgstr "Lien de développement"
+msgid "static"
+msgstr "statique"
+msgid "Non-standard grant in !na."
+msgstr "Autorisation non standard dans !na."
+msgid ""
+"(Some of the table elements provide additional information if you "
+"hover your mouse over them.)"
+msgstr ""
+"(Certains des éléments du tableau fournissent des information "
+"supplémentaires si vous les survolez avec la souris.)"
+msgid ""
+"!username has the %bypass_node_access permission and thus full access "
+"to all nodes."
+msgstr ""
+"!username a la permission %bypass_node_access et, donc, l'accès "
+"complet à tous les nœuds."
+msgid ""
+"(This table lists the most-recently active users. Hover your mouse "
+"over each result for more details.)"
+msgstr ""
+"(Ce tableau liste les utilisateurs actifs les plus récents. Survolez "
+"avec la souris chacun des résultats pour plus de détails.)"
+msgid "!NO: invalid $op"
+msgstr "!NO : $op invalide"
+msgid "'@op' is an invalid operation!"
+msgstr "'@op' est une opération invalide !"
+msgid "!YES: bypass node access"
+msgstr "!YES: contourner l'accès au nœud"
+msgid ""
+"!YES: This user has the '!bypass_node_access' permission and may do "
+"everything with nodes."
+msgstr ""
+"!YES: Cet utilisateur a la permission '!bypass_node_access' et peut "
+"tout faire avec les nœuds."
+msgid "bypass node access"
+msgstr "contourner l'accès au nœud"
+msgid "!NO: by %module"
+msgstr "!NO : par %module"
+msgid ""
+"!NO: hook_node_access() of the following module(s) denies this: "
+"@deniers."
+msgstr ""
+"!NO : les hook_node_access() des modules suivants ne permettent pas "
+"ceci : @deniers."
+msgid ""
+"!NO: hook_node_access() of the following module(s) denies this: "
+"@deniers &ndash; even though the following module(s) would allow it: "
+"@allowers."
+msgstr ""
+"!NO : les hook_node_access() des modules suivants refusent ceci : "
+"@deniers &ndash; malgré le fait que les modules suivants l'autorise : "
+"@allowers."
+msgid "!YES: by %module"
+msgstr "!YES : par %module"
+msgid ""
+"!YES: hook_node_access() of the following module(s) allows this: "
+"@allowers."
+msgstr ""
+"!YES : les hook_node_access() des modules suivants autorisent ceci : "
+"@allowers."
+msgid "!YES: view own unpublished content"
+msgstr "!YES : voir son propre contenu non publié"
+msgid ""
+"!YES: The node is unpublished, but the user has the "
+"'!view_own_unpublished_content' permission."
+msgstr ""
+"!YES : Le nœud n'est pas publié, mais l'utilisateur à le droit "
+"'!view_own_unpublished_content'."
+msgid "view own unpublished content"
+msgstr "voir son propre contenu non publié"
+msgid "This is most likely due to a withheld permission."
+msgstr "Cela est probablement dû à un droit refusé."
+msgid ""
+"Helper pages and blocks to assist Drupal developers and admins with "
+"node_access. The devel blocks can be managed via the <a href=\""
+msgstr ""
+"Pages et blocs d'aide pour assister les développeurs Drupal et les "
+"administrateurs avec node_access. Les blocs Devel peuvent être "
+"gérés via la"
+msgid "Devel module menu links will be rebuilt."
+msgstr "Les liens du module Devel seront reconstruits."
+msgid "Developer blocks and page illustrating relevant node_access records."
+msgstr ""
+"Blocs et page pour développeurs illustrant les enregistrements de "
+"node_access utiles."
+msgid "Invalid number of users."
+msgstr "Nombre invalide d'utilisateurs."
+msgid "Generated @number users."
+msgstr "@number utilisateurs générés."
+msgid "Generated @num_nodes nodes, @max_comments comments (or less) per node."
+msgstr ""
+"@num_nodes nœuds, @max_comments commentaires (ou moins) générés "
+"par nœud."
+msgid "Deleted %count nodes."
+msgstr "%count nœuds supprimés."
+msgid "Which roles should the users receive?"
+msgstr "Quels rôles les utilisateurs devraient-ils recevoir ?"
+msgid "Users always receive the <em>authenticated user</em> role."
+msgstr ""
+"Les utilisateurs reçoivent toujours le rôle <em>utilisateur "
+"authentifié</em>."
+msgid "Comments: "
+msgstr "Commentaires : "
+msgid ""
+"You do not have any content types that can be generated. <a "
+"href=\"@create-type\">Go create a new content type</a> already!</a>"
+msgstr ""
+"Vous n'avez aucun type de contenu qui peut être généré. <a "
+"href=\"@create-type\">Allez créer un type de contenu !</a>"
+msgid "Maximum number of comments per node."
+msgstr "Nombre maximum de commentaires par nœud."
+msgid ""
+"You must also enable comments for the content types you are "
+"generating. Note that some nodes will randomly receive zero comments. "
+"Some will receive the max."
+msgstr ""
+"Vous devez aussi activer les commentaires pour les types de contenus "
+"que vous générez. Notez que certains nœuds ne recevront "
+"aléatoirement aucun commentaire. D'autres recevront le maximum."
+msgid "Add statistics for each node (node_counter table)."
+msgstr "Ajouter des statistiques pour chaque nœud (table node_counter)."
+msgid "Administer performance logging"
+msgstr "Administrer la journalisation des performances"
+msgid ""
+"Allows both configuring the performance module and accessing its "
+"reports."
+msgstr ""
+"Permet de configurer le module de performance et d'accéder à ses "
+"rapports."
+msgid ""
+"Log database query timing and query count for each page. This is "
+"useful to know if the bottleneck is in excessive database query "
+"counts, or the time required to execute those queries is high. "
+"Enabling this will incurr some memory overhead as query times and the "
+"actual query strings are cached in memory as arrays for each page, "
+"hence skewing the overall page memory reported."
+msgstr ""
+"Journaliser la durée et le décompte des requêtes à la base de "
+"données pour chaque page. Cela est utile pour savoir si le goulot "
+"d'étranglement est un nombre excessif de requêtes en base de "
+"données, ou si le délai requis pour exécuter ces requêtes est "
+"élevé. Activer ceci va engager un certain surplus de consommation "
+"mémoire car la durée des requêtes et les requêtes elles-même "
+"seront mises en cache dans la mémoire en tant que tableaux pour "
+"chaque page, et ainsi biaiser la consommation mémoire de la page "
+"reportée."
+msgid ""
+"Summary performance log is not enabled. Go to the <a "
+"href=\"!link\">settings page</a> to enable it."
+msgstr ""
+"Le journal sommaire des performances n'est pas activé. Allez sur la "
+"<a href=\"!link\">page des paramètres</a> pour l'activer."
+msgid "MB Memory (Max)"
+msgstr "Mémoire MO (Max)"
+msgid "MB Memory (Avg)"
+msgstr "Mémoire MO (Moy)"
+msgid "ms (Max)"
+msgstr "ms (Max)"
+msgid "ms (Avg)"
+msgstr "ms (Moy)"
+msgid "Query ms (Max)"
+msgstr "ms de la requête (Max)"
+msgid "Query ms (Avg)"
+msgstr "ms de la requête (Moy)"
+msgid "Average duration per page: !ms_avg ms"
+msgstr "Durée moyenne par page : !ms_avg ms"
+msgid "No data has been collected."
+msgstr "Aucune donnée n'a été recueillie."
+msgid "ms (Total)"
+msgstr "ms (Total)"
+msgid "Query ms"
+msgstr "ms de la requête"
+msgid ""
+"APC has been configured for !size, which is less than the recommended "
+"!min_memory MB of memory. If you encounter errors when viewing the "
+"summary report, then try to increase that limit for APC."
+msgstr ""
+"APC a été configuré pour !size, ce qui est moins que les "
+"!min_memory Mo de mémoire recommandée. Si vous rencontrez des "
+"erreurs à la vue du rapport sommaire, essayez d'augmenter cette "
+"limite pour APC."
+msgid ""
+"XHProf is a php extension which is essential for profiling your Drupal "
+"site. It pinpoints slow functions, and also memory hogging functions."
+msgstr ""
+"XHProf est une extension PHP qui est essentielle au profilage de votre "
+"site Drupal. Elle localise avec précision les fonctions lentes, et "
+"aussi les fonctions monopolisant la mémoire."
+msgid "Profile requests with the xhprof php extension."
+msgstr "Profiler des requêtes avec l'extension php xhprof."
+msgid ""
+"You must enable the <a href=\"!url\">xhprof php extension</a> to use "
+"this feature."
+msgstr ""
+"Vous devez activer <a href=\"!url\">l'extension xhprof php</a> pour "
+"utiliser cette fonctionnalité."
+msgid ""
+"Location of the xhprof source code on your system, usually somewhere "
+"in /usr/local/share or /usr/share, include the leading forward slash."
+msgstr ""
+"Emplacement du code source de xhprof sur votre système, "
+"habituellement à quelque part dans /usr/local/share ou /usr/share, "
+"incluant le slash de début."
+msgid ""
+"Path to the publically accessible xhprof_html - required to display "
+"profiler reports. You will need to set this up outside Drupal, for "
+"example at http://xhprof.localhost/xhprof_html"
+msgstr ""
+"Chemin vers le xhprof_html accessible publiquement - requis pour "
+"afficher les rapports du profileur. Vous aurez besoin de configurer "
+"ceci à l'extérieur de Drupal, par exemple à "
+"http://xhprof.localhost/xhprof_html"
+msgid ""
+"The following realms appear to grant all users access to some specific "
+"nodes. This may be perfectly normal, if some of your content is "
+"available to the public."
+msgstr ""
+"Les zones suivantes semblent autoriser l'accès à tous les "
+"utilisateurs à certains nœuds spécifiques. Cela pourrait être "
+"parfaitement normal, si certains de vos contenus sont disponibles au "
+"public."
+msgid ""
+"Devel Node Access has detected duplicate records returned from "
+"%function:"
+msgstr ""
+"Devel Node Access a détecté des enregistrements en double retournés "
+"de %function:"
+msgid ""
+"Default grant supplied by core in the absence of any other non-empty "
+"grants; in !na."
+msgstr ""
+"Autorisation par défaut fournie par le cœur (core) en l'absence de "
+"toute autre autorisation non-vide ; dans !na."
+msgid "Highest priority grant; in !na."
+msgstr "Autorisation de plus haute priorité ; dans !na."
+msgid "removed"
+msgstr "supprimé"
+msgid "Was removed in @func; not in !na."
+msgstr "A été retiré de @func ; pas de !na."
+msgid ""
+"The 0/all/0/... grant applies to all nodes and all users -- usually it "
+"should not be present in !na if any node access module is active!"
+msgstr ""
+"La permission 0/all/0/... s'applique à tous les nœuds et tous les "
+"utilisateurs -- habituellement elle ne devrait pas être présente "
+"dans !na si un quelconque module d'accès aux nœuds est actif !"
+msgid "Lower priority grant; not in !na and thus ignored."
+msgstr ""
+"Autorisation de plus basse priorité ; en dehors de !na et donc "
+"ignorée."
+msgid "wrong"
+msgstr "mauvais"
+msgid "Is rightfully in !na but at least one access flag is wrong!"
+msgstr ""
+"Est effectivement dans !na mais au moins un des drapeaux d'accès est "
+"erroné !"
+msgid "removed!"
+msgstr "retiré !"
+msgid "Was removed in @func; should NOT be in !na!"
+msgstr "A été retiré de @func ; ne doit PAS être dans !na !"
+msgid ""
+"!username (user %uid) can use these grants (if they are present above) "
+"for %access access: !list"
+msgstr ""
+"!username (utilisateur %uid) peut utiliser ces autorisations (si elles "
+"sont présentes ci-dessus) pour l'accès %access : !list"
+msgid "1 user deleted"
+msgid_plural "@count users deleted."
+msgstr[0] "1 utilisateur supprimé."
+msgstr[1] "@count utilisateurs supprimés."
+msgid "1 node created."
+msgid_plural "Finished creating @count nodes"
+msgstr[0] "1 nœud créé."
+msgstr[1] "@count nœuds créés."
+msgid "<a href=\"@xhprof\">XHProf output</a>. "
+msgstr "<a href=\"@xhprof\">sortie XHProf</a>. "
+msgid "Set language on nodes"
+msgstr "Ajouter une langue aux nœuds"
+msgid "Requires locale.module"
+msgstr "Requiert locale.module"
+msgid "Summary logging (Memcached)"
+msgstr "Journalisation sommaire (Memcached)"
+msgid ""
+"Enable profiling of all page views and <a href=\"!drush\">drush</a> "
+"requests."
+msgstr ""
+"Activer le profilage (profiling) de toutes les pages vues et des "
+"requêtes <a href=\"!drush\">drush</a>."
+msgid "Use uncompressed jQuery"
+msgstr "Utiliser jQuery décompressé"
+msgid ""
+"Use a human-readable version of jQuery instead of the minified version "
+"that ships with Drupal, to make JavaScript debugging easier."
+msgstr ""
+"Utilisez une version lisible par tous de JQuery à la place de la "
+"version minimisée qui accompagne Drupal afin de faciliter le "
+"débogage JavaScript."
+msgid "%error: %message in %function (line %line of %file)."
+msgstr "%error : %message dans %function (ligne %line de %file)."
+msgid "Include %anonymous"
+msgstr "Inclure %anonymous"
+msgid "Allow entering any user name"
+msgstr "Autorise l'entrée de n'importe quel nom d'utilisateur"
+msgid "Caution: the anonymous user will be unable to switch back."
+msgstr ""
+"Attention : cet utilisateur anonyme ne pourra plus revenir à l'état "
+"antérieur."
+msgid ""
+"jQuery could not be replaced with an uncompressed version of 1.4.4, "
+"because jQuery @version is running on the site."
+msgstr ""
+"jQuery ne pourra pas être remplacé par la version 1.4.4, parce que "
+"jQuery @version est exécuté sur le site."
+msgid "Entity info"
+msgstr "Informations d'entité"
+msgid "View entity information across the whole site."
+msgstr "Voir les informations d'entité sur l'ensemble du site."
+msgid ""
+"Return a given query, with arguments instead of placeholders. Used by "
+"query log"
+msgstr ""
+"Retourne une requête donnée, avec arguments plutôt que des espaces "
+"réservés. Utilisée par le journal des requêtes."
+msgid ""
+"Debug mode verifies the grant records in the node_access table against "
+"those that would be set by running !Rebuild_permissions, and displays "
+"them all; this can cause considerable overhead.<br />For even more "
+"information enable the <a href=\"@link\">%DNAbU block</a>, too."
+msgstr ""
+"Le mode Débogage vérifie que les enregistrements des permissions "
+"accordées correspondent, dans la table node_access, à ceux qui "
+"doivent être définis lors de l’exécution de !Rebuild_permissions "
+", et les affiche tous ; ce qui peut entraîner une énorme "
+"surcharge.<br />Pour avoir plus d'informations, activez aussi le bloc "
+"<a href=\"@link\">%DNAbU</a>."
+msgid ""
+"For per-user access permissions enable the <a href=\"@link\">%DNAbU "
+"block</a>."
+msgstr ""
+"Pour les permissions d'accès 'par utilisateur', activer le <a "
+"href=\"@link\">bloc %DNAbU</a>."
+msgid "Generated @number_menus menus, @number_links links."
+msgstr "@number_menus menus, @number_links liens générés."
+msgid "Deleted existing terms."
+msgstr "Termes existants supprimés."
+msgid "Deleted existing vocabularies."
+msgstr "Vocabulaires existants supprimés."
+msgid "Deleted existing menus and links."
+msgstr "Menus et liens existants supprimés."
+msgid "Created the following new menus: !menus"
+msgstr "Nouveaux menus suivants créés : !menus"
+msgid "Created @count new menu links."
+msgstr "@count nouveaux liens de menu créés."
+msgid "Description of @name"
+msgstr "Description de @name"
+msgid "Description of @title."
+msgstr "Description de @title."
+msgid ""
+"<strong>Delete all content</strong> in these content types before "
+"generating new content."
+msgstr ""
+"<strong>Supprimer tout le contenu</strong> dans ces types de contenu "
+"avant de générer du nouveau contenu."
+msgid "Restrict terms to these vocabularies."
+msgstr "Restreindre les termes à ces vocabulaires."
+msgid "Number of terms?"
+msgstr "Nombre de termes ?"
+msgid "Max word length of term names"
+msgstr "Taille de mot maximum des noms de termes"
+msgid ""
+"Delete existing terms in specified vocabularies before generating new "
+"terms."
+msgstr ""
+"Supprimez les termes existants dans les vocabulaires spécifiés avant "
+"de générer de nouveaux termes."
+msgid "Number of vocabularies?"
+msgstr "Nombre de vocabulaires ?"
+msgid "Max word length of vocabulary names"
+msgstr "Taille de mot maximum des noms de vocabulaires"
+msgid "Delete existing vocabularies before generating new ones."
+msgstr "Supprimer les vocabulaires existants avant d'en générer de nouveaux."
+msgid "Create new menu(s)"
+msgstr "Créer de nouveaux menus"
+msgid "Generate links for these menus"
+msgstr "Générer des liens pour ces menus"
+msgid "Number of new menus to create"
+msgstr "Nombre de nouveaux menus à créer"
+msgid "Number of links to generate"
+msgstr "Nombre de liens à générer"
+msgid "Max word length of menu and menu link names"
+msgstr "Taille de mot maximum du menu et du nom des liens du menu"
+msgid "Types of links to generate"
+msgstr "Types de liens à générer"
+msgid "Maximum link depth"
+msgstr "Profondeur maximale des liens"
+msgid "Maximum menu width"
+msgstr "Largeur maximale du menu"
+msgid ""
+"Limit the width of the generated menu's first level of links to a "
+"certain number of items."
+msgstr ""
+"Limiter la largeur des liens de premier niveau du menu généré à un "
+"certain nombre d'éléments."
+msgid ""
+"Delete existing custom generated menus and menu links before "
+"generating new ones."
+msgstr ""
+"Supprimer les menus et les liens de menu personnalisés générés "
+"avant d'en générer de nouveaux."
+msgid "Generate terms"
+msgstr "Générer des termes"
+msgid "Generate a given number of terms. Optionally delete current terms."
+msgstr ""
+"Générer un nombre donné de termes. Supprimer optionnellement les "
+"termes actuels."
+msgid "Generate vocabularies"
+msgstr "Générer des vocabulaires"
+msgid ""
+"Generate a given number of vocabularies. Optionally delete current "
+"vocabularies."
+msgstr ""
+"Générer un nombre donné de vocabulaires. Supprimer optionnellement "
+"les vocabulaires actuels."
+msgid "Generate menus"
+msgstr "Générer des menus"
+msgid ""
+"Generate a given number of menus and menu links. Optionally delete "
+"current menus."
+msgstr ""
+"Générer un nombre donné de menus et de liens de menu. Supprimer "
+"optionnellement les menus actuels."
+msgid "Run arbitrary PHP from a block."
+msgstr "Exécuter du code PHP à partir d'un bloc."
+msgid "Become any user on the site with just a click."
+msgstr "Devenir n'importe quel utilisateur sur le site en un seul clic."
+msgid "View the site's php source code."
+msgstr "Voir le code source php du site."
+msgid "!YES: @node_access_table"
+msgstr "!YES : @node_access_table"
+msgid ""
+"!YES: Node access allows this based on one or more records in the "
+"@node_access_table table (see the other DNA block!)."
+msgstr ""
+"!YES : Node access permet ceci en se basant sur un ou plusieurs "
+"enregistrements dans la table @node_access_table (voir l'autre bloc "
+"DNA !)."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/devel-7.x-1.x.fr_1.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,1409 @@
+# French translation of Devel (7.x-1.0)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Devel (7.x-1.0)\n"
+"POT-Creation-Date: 2017-11-10 00:18+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "delete"
+msgstr "supprimer"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Submit"
+msgstr "Soumettre"
+msgid "Operations"
+msgstr "Actions"
+msgid "Value"
+msgstr "Valeur"
+msgid "Development"
+msgstr "Développement"
+msgid "Closed"
+msgstr "Fermé"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Content types"
+msgstr "Types de contenu"
+msgid "view"
+msgstr "voir"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Date"
+msgstr "Date"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "default"
+msgstr "défaut"
+msgid "No log messages available."
+msgstr "Aucune entrée du journal n'est disponible."
+msgid "Name"
+msgstr "Nom"
+msgid "username"
+msgstr "nom d'utilisateur"
+msgid "Open"
+msgstr "Ouvert"
+msgid "Length"
+msgstr "Longueur"
+msgid "Path"
+msgstr "Chemin"
+msgid "Vocabularies"
+msgstr "Vocabulaires"
+msgid "#"
+msgstr "#"
+msgid "status"
+msgstr "statut"
+msgid "Menu item"
+msgstr "Élément de menu"
+msgid "php"
+msgstr "php"
+msgid "Session ID"
+msgstr "Identifiant de session"
+msgid "Last access"
+msgstr "Dernier accès"
+msgid "Fields"
+msgstr "Champs"
+msgid "Nodes"
+msgstr "Nœuds"
+msgid "Load"
+msgstr "Charger"
+msgid "node"
+msgstr "nœud"
+msgid "Now"
+msgstr "Maintenant"
+msgid "Other"
+msgstr "Autre"
+msgid "access content"
+msgstr "accéder au contenu"
+msgid "External"
+msgstr "Externe"
+msgid "Hidden"
+msgstr "Caché"
+msgid "create"
+msgstr "créer"
+msgid "Switch"
+msgstr "Changer"
+msgid "ago"
+msgstr "il y a"
+msgid "Clear"
+msgstr "Vider"
+msgid "update"
+msgstr "mettre à jour"
+msgid "Front page"
+msgstr "Page d'accueil"
+msgid "NO"
+msgstr "NON"
+msgid "YES"
+msgstr "OUI"
+msgid "missing"
+msgstr "manquant"
+msgid "Enter username"
+msgstr "Entrez le nom d'utilisateur"
+msgid "Username not found"
+msgstr "Nom d'utilisateur inconnu"
+msgid "TRUE"
+msgstr "TRUE"
+msgid "FALSE"
+msgstr "FALSE"
+msgid "Language neutral"
+msgstr "Indépendant de la langue"
+msgid "!num_users created."
+msgstr "!num_users créés."
+msgid "Created the following new vocabularies: !vocs"
+msgstr "Les vocabulaires suivants ont été créés&nbsp;: !vocs"
+msgid "Created the following new terms: !terms"
+msgstr "Les termes suivants ont été créés&nbsp;: !vocs"
+msgid "1 user"
+msgid_plural "@count users"
+msgstr[0] "1 utilisateur"
+msgstr[1] "@count utilisateurs"
+msgid ""
+"This is a list of defined user functions that generated this current "
+"request lifecycle. Click on a function name to view its documention."
+msgstr ""
+"Ceci est une liste de fonctions définies de l'utilisateur qui "
+"génèrent ce cycle de vie de la requête. Cliquer sur un nom de "
+"fonction pour voir sa documentation."
+msgid "Here are the contents of your <code>$_SESSION</code> variable."
+msgstr "Voici le contenu de votre variable <code>$_SESSION</code>."
+msgid ""
+"This is a list of the variables and their values currently stored in "
+"variables table and the <code>$conf</code> array of your settings.php "
+"file. These variables are usually accessed with <a "
+"href=\"@variable-get-doc\">variable_get()</a> and <a "
+"href=\"@variable-set-doc\">variable_set()</a>. Variables that are too "
+"long can slow down your pages."
+msgstr ""
+"Ceci est une liste des variables et de leur valeur actuellement "
+"stockée dans la table variables et le tableau <code>$conf</code> de "
+"votre fichier settings.php. Ces variables sont habituellement "
+"accédées avec <a href=\"@variable-get-doc\">variable_get()</a>. Les "
+"variables qui sont trop longues peuvent ralentir vos pages."
+msgid "Empty cache"
+msgstr "Vider le cache"
+msgid "Reinstall modules"
+msgstr "Réinstaller les modules"
+msgid "Variable editor"
+msgstr "Éditeur de variables"
+msgid "Session viewer"
+msgstr "Visionneur de session"
+msgid "Switch user"
+msgstr "Changer d'utilisateur"
+msgid "Devel"
+msgstr "Devel"
+msgid "Execute PHP"
+msgstr "Exécuter du code PHP"
+msgid "Number of users to display in the list"
+msgstr "Nombre d'utilisateurs à afficher dans la liste"
+msgid "This user can switch back."
+msgstr "Cet utilisateur peut revenir."
+msgid "Caution: this user will be unable to switch back."
+msgstr "Attention : cet utilisateur ne pourra pas revenir à son compte."
+msgid "Query log"
+msgstr "Log de requête"
+msgid ""
+"You must disable or upgrade the php Zend Optimizer extension in order "
+"to enable this feature. The minimum required version is 3.2.8. Earlier "
+"versions of Zend Optimizer are <a href=\"!url\">horribly buggy and "
+"segfault your Apache</a> ... "
+msgstr ""
+"Vous devez désactiver ou mettre à jour l'extension php Zend "
+"Optimizer afin d'activer cette fonctionnalité. La version minimale "
+"requise est 3.2.8. Les versions plus anciennes de Zend Optimizer sont "
+"<a href=\"!url\">horriblement boguées et produisent des erreurs de "
+"segmentation dans votre Apache</a> ... "
+msgid "Display query log"
+msgstr "Afficher la liste des requêtes."
+msgid ""
+"Display a log of the database queries needed to generate the current "
+"page, and the execution time for each. Also, queries which are "
+"repeated during a single page view are summed in the # column, and "
+"printed in red since they are candidates for caching."
+msgstr ""
+"Afficher un journal des requêtes en base de données qui ont été "
+"nécessaires à la génération de la page courante, et le temps "
+"d'exécution pour chacune. De plus, les requêtes qui sont répétées "
+"pendant une seule visualisation de page sont résumées dans la "
+"colonne #, et affichées en rouge car elles sont propices à être "
+"mises en cache."
+msgid "Sort query log"
+msgstr "Trier le journal des requêtes"
+msgid "by source"
+msgstr "par source"
+msgid "by duration"
+msgstr "par temps d'exécution"
+msgid ""
+"The query table can be sorted in the order that the queries were "
+"executed or by descending duration."
+msgstr ""
+"La table de la requête peut être triée dans l'ordre où les "
+"requêtes ont été exécutées ou par durée décroissante."
+msgid "Slow query highlighting"
+msgstr "Surligner les requêtes lentes"
+msgid ""
+"Enter an integer in milliseconds. Any query which takes longer than "
+"this many milliseconds will be highlighted in the query log. This "
+"indicates a possibly inefficient query, or a candidate for caching."
+msgstr ""
+"Entrez un entier en millisecondes. Toute requête qui prend plus "
+"longtemps que ce nombre de millisecondes sera mise en surbrillance "
+"dans le journal de la requête. Cela indique possiblement une requête "
+"inefficace, ou candidate pour la mise en cache."
+msgid "Display page timer"
+msgstr "Afficher le chronomètre de page"
+msgid "Display page execution time in the query log box."
+msgstr ""
+"Afficher la durée d'exécution de la page dans la boîte listant les "
+"requêtes."
+msgid "Display memory usage"
+msgstr "Afficher l'utilisation de la mémoire"
+msgid "Display redirection page"
+msgstr "Afficher la page de renvoi."
+msgid ""
+"When a module executes drupal_goto(), the query log and other "
+"developer information is lost. Enabling this setting presents an "
+"intermediate page to developers so that the log can be examined before "
+"continuing to the destination page."
+msgstr ""
+"Lorsqu'un module invoque <code>drupal_goto()</code> pour effectuer un "
+"renvoi vers une autre page, la liste des requêtes et les autres "
+"informations utiles au développeur sont perdues. Activer ce "
+"paramètre a pour effet de présenter lors des renvois une page "
+"intermédiaire permettant au développeur d'examiner les données "
+"avant de continuer sur la page de renvoi."
+msgid "Error handler"
+msgstr "Gestionnaire d'erreurs"
+msgid "Standard drupal"
+msgstr "Standard Drupal"
+msgid "Backtrace"
+msgstr "Backtrace"
+msgid "PHP code to execute"
+msgstr "Code PHP à exécuter"
+msgid "Enter some code. Do not use <code>&lt;?php ?&gt;</code> tags."
+msgstr ""
+"Entrez du code. Ne pas utiliser les balises <code>&lt;?php "
+"?&gt;</code>."
+msgid "Execute"
+msgstr "Exécuter"
+msgid "Warning - will delete your module tables and variables."
+msgstr "Avertissement - supprimera vos tables et variables de modules."
+msgid "Old value"
+msgstr "Ancienne valeur"
+msgid "New value"
+msgstr "Nouvelle valeur"
+msgid ""
+"Sorry, complex variable types may not be edited yet. Use the "
+"<em>Execute PHP</em> block and the <a "
+"href=\"@variable-set-doc\">variable_set()</a> function."
+msgstr ""
+"Désolé, des types de variables complexes ne peuvent pas encore être "
+"modifiés. Utiliser le bloc <em>Exécuter du code PHP</em> et la "
+"fonction <a href=\"@variable-set-doc\">variable_set()</a>."
+msgid "Session name"
+msgstr "Nom de la session"
+msgid "Generate users"
+msgstr "Générer des utilisateurs"
+msgid "Generate a given number of users. Optionally delete current users."
+msgstr ""
+"Génère un nombre défini d'utilisateurs. Supprime en option les "
+"utilisateurs actuels."
+msgid "Generate content"
+msgstr "Générer du contenu"
+msgid ""
+"Generate a given number of nodes and comments. Optionally delete "
+"current items."
+msgstr ""
+"Génère un nombre défini de nœuds et de commentaires. Supprime en "
+"option les éléments actuels."
+msgid "How many users would you like to generate?"
+msgstr "Combien d'utilisateurs voulez-vous générer ?"
+msgid "How many nodes would you like to generate?"
+msgstr "Combien de nœuds voulez-vous générer ?"
+msgid "Max word length of titles"
+msgstr "Taille de mot maximum des titres"
+msgid "Development helper for node_access table"
+msgstr "Assistant de développement pour la table node_access"
+msgid ""
+"This module helps in site development.  Specifically, when an access "
+"control module is used to limit access to some or all nodes, this "
+"module provides some feedback showing the node_access table in the "
+"database."
+msgstr ""
+"Ce module aide au développement d'un site. Spécifiquement, quand un "
+"module de contrôle d'accès est utilisé pour limiter l'accès à "
+"quelques-uns ou tous les nœuds, ce module fournit des indications en "
+"affichant la table node_access dans la base de données."
+msgid ""
+"The node_access table is one method Drupal provides to hide content "
+"from some users while displaying it to others.  By default, Drupal "
+"shows all nodes to all users.  There are a number of optional modules "
+"which may be installed to hide content from some users."
+msgstr ""
+"La table node_access est une méthode de Drupal qui permet de cacher "
+"du contenu à certains utilisateurs et de l'afficher à d'autres. Par "
+"défaut, Drupal affiche tous les nœuds à tous les utilisateurs. Il y "
+"a plusieurs modules optionnels qui peuvent être installés pour "
+"cacher le contenu à certains utilisateurs."
+msgid ""
+"If you have not installed any of these modules, you really have no "
+"need for the devel_node_access module.  This module is intended for "
+"use during development, so that developers and admins can confirm that "
+"the node_access table is working as expected.  You probably do not "
+"want this module enabled on a production site."
+msgstr ""
+"Si vous n'avez pas installé un de ces modules, vous n'avez "
+"réellement pas besoin du module devel_node_access. Ce module est à "
+"l'intention d'un usage durant le développement, alors que les "
+"développeurs et administrateurs peuvent confirmer que la table "
+"node_access fonctionne comme prévu. Vous ne voulez probablement pas "
+"que ce module soit activé sur un site en production."
+msgid ""
+"This module provides two blocks.  One called Devel Node Access by User "
+"is visible when a single node is shown on a page.  This block shows "
+"which users can view, update or delete the node shown.  Note that this "
+"block uses an inefficient algorithm to produce its output.  You should "
+"only enable this block on sites with very few user accounts."
+msgstr ""
+"Ce module fournit deux blocs. Un appellé Devel Node Access by User "
+"qui est visible quand un seul nœud est affiché sur une page. Ce bloc "
+"affiche quels utilisateurs peuvent voir, mettre à jour ou supprimer "
+"le nœud affiché. Noter que ce bloc utilise un algorithme inefficace "
+"pour produire son résultat. Vous ne devriez activer ce bloc que sur "
+"des sites qui ont très peu de comptes d'utilisateurs."
+msgid "Access Granted to All Nodes (All Users)"
+msgstr "Accès autorisé à tous les nœuds (Tous les utilisateurs)"
+msgid ""
+"Your node_access table contains entries that may be granting all users "
+"access to all nodes.  Depending on which access control module(s) you "
+"use, you may want to delete these entries.  If you are not using an "
+"access control module, you should probably leave these entries as is."
+msgstr ""
+"Votre table node_access contient des entrées qui peuvent autoriser "
+"tous les utilisateurs à accéder à tous les nœuds. En fonction "
+"du(des) module(s) de contrôle d'accès que vous utilisez, vous "
+"pourriez vouloir supprimer ces entrées. Si vous n'utilisez pas de "
+"module de contrôle d'accès, vous devriez laisser ces entrées telles "
+"quelles."
+msgid "realm"
+msgstr "zone"
+msgid "Legacy Nodes"
+msgstr "Anciens nœuds"
+msgid ""
+"You have !num nodes in your node table which are not represented in "
+"your node_access table.  If you have an access control module "
+"installed, these nodes may be hidden from all users.  This could be "
+"caused by publishing nodes before enabling the access control module.  "
+"If this is the case, manually updating each node should add it to the "
+"node_access table and fix the problem."
+msgstr ""
+"Vous avez !num nœuds dans la table node qui ne sont pas représentés "
+"dans la table node_access. Si vous avez un module de contrôle "
+"d'accès installé, ces nœuds pourraient être cachés pour tous les "
+"utilisateurs. Ceci pourrait être causé par la publication de nœuds "
+"avant l'activation du module de contrôle d'accès. Si tel est le cas, "
+"mettre à jour manuellement chacun des nœuds les ajoutera à la table "
+"node_access et résoudra le problème."
+msgid "All Nodes Represented"
+msgstr "Tous les nœuds représentés"
+msgid "All nodes are represented in the node_access table."
+msgstr "Tous les nœuds sont représentés dans la table node_access."
+msgid "Access Granted to All Nodes (Some Users)"
+msgstr "Accès autorisé à tous les nœuds (Quelques utilisateurs)"
+msgid ""
+"Your node_access table contains entries that may be granting some "
+"users access to all nodes.  This may be perfectly normal, depending on "
+"which access control module(s) you use."
+msgstr ""
+"Votre table node_access contient des entrées qui peuvent autoriser "
+"des utilisateurs à accéder à tous les nœuds. Cela pourrait être "
+"parfaitement normal, dépendamment de quel(s) module(s) de contrôle "
+"d'accès vous utilisez."
+msgid "Access Granted to Some Nodes"
+msgstr "Accès autorisé à certains nœuds"
+msgid "public nodes"
+msgstr "nœuds publics"
+msgid "Public Nodes"
+msgstr "nœuds Publics"
+msgid "Summary by Realm"
+msgstr "Sommaire par domaine"
+msgid "The following realms grant limited access to some specific nodes."
+msgstr ""
+"Les zones suivantes autorisent un accès limité à des nœuds "
+"spécifiques."
+msgid "private nodes"
+msgstr "nœuds privés"
+msgid "Protected Nodes"
+msgstr "Nœuds Protégés"
+msgid "Devel Node Access"
+msgstr "Accès à Devel Node"
+msgid "Devel Node Access by User"
+msgstr "Accès à Devel Node par utilisateur"
+msgid "gid"
+msgstr "gid"
+msgid "explained"
+msgstr "expliqué"
+msgid "ok"
+msgstr "ok"
+msgid "ignored"
+msgstr "ignoré"
+msgid "empty"
+msgstr "vide"
+msgid "illegitimate"
+msgstr "illégitime"
+msgid "Should NOT be in !na because of lower priority!"
+msgstr "Ne devrait PAS être dans !na à cause d'une plus basse priorité !"
+msgid "alien"
+msgstr "étranger"
+msgid "Should NOT be in !na because of unknown origin!"
+msgstr "Ne devrait PAS être dans !na à cause d'une origine inconnue !"
+msgid "prio"
+msgstr "prio"
+msgid "This entry grants access to this node to this user."
+msgstr "Cette entrée autorise l'accès à ce nœud à cet utilisateur."
+msgid "node_access entries for nodes shown on this page"
+msgstr "entrées node_access pour les nœuds affichés sur cette page"
+msgid "Access permissions by user"
+msgstr "Permissions d'accès par utilisateur"
+msgid "Various blocks, pages, and functions for developers."
+msgstr "Divers blocs, pages et fonctions pour développeurs."
+msgid "Generate dummy users, nodes, and taxonomy terms."
+msgstr ""
+"Générer des utilisateurs, des nœuds, et des termes de taxonomie "
+"factices."
+msgid "Performance Logging"
+msgstr "Journalisation des performances"
+msgid "Logs performance data: page generation times and memory usage."
+msgstr ""
+"Journaliser les données de performance : durée de génération de la "
+"page et utilisation de la mémoire."
+msgid "Clear APC"
+msgstr "Vider APC"
+msgid "Clears performance statistics collected in APC."
+msgstr "Effacer les statistiques de performance rassemblées dans APC."
+msgid "Performance Logs: Summary"
+msgstr "Journaux de performance : Sommaire"
+msgid "View summary performance logs: page generation times and memory usage."
+msgstr ""
+"Voir les journaux de performance sommaires : durée de génération "
+"des pages et utilisation de la mémoire."
+msgid "Performance Logs: Details"
+msgstr "Journaux de performance : Détails"
+msgid ""
+"View detailed, per page, performance logs: page generation times and "
+"memory usage."
+msgstr ""
+"Voir des journaux de performance détaillés par page : durée de "
+"génération de la page et utilisation de la mémoire."
+msgid ""
+"APC is enabled. It is reasonably safe to enable summary logging on "
+"live sites."
+msgstr ""
+"APC est activé. Il est raisonnablement sécuritaire d'activer la "
+"journalisation sommaire sur des sites en ligne."
+msgid ""
+"APC is not enabled. It is <strong>not</strong> safe to enable summary "
+"logging to the database on live sites."
+msgstr ""
+"APC n'est pas activé. Il <strong>n'est pas</strong> sécuritaire "
+"d'activer la journalisation sommaire à la base de données de sites "
+"en ligne."
+msgid "Logging mode"
+msgstr "Mode de journalisation"
+msgid "Detailed logging"
+msgstr "Journalisation détaillée"
+msgid ""
+"Log memory usage and page generation times for every page. This "
+"logging mode is <strong>not</strong> suitable for large sites, as it "
+"can degrade performance severly. It is intended for use by developers, "
+"or on a test copy of the site."
+msgstr ""
+"Journaliser l'utilisation de la mémoire et la durée de génération "
+"des pages pour chaque page. Ce mode de journalisation <strong>n'est "
+"pas</strong> approprié pour de grands sites puisque cela peut "
+"sévèrement dégrader les performances. Il est à l'intention d'un "
+"usage par des développeurs ou sur une copie de test du site."
+msgid "Summary logging (DB)"
+msgstr "Journalisation sommaire (BD)"
+msgid ""
+"Log summary data, such as average and maximum page generation times "
+"and memory usage to the database. This logging mode is "
+"<strong>not</strong> suitable for most live sites."
+msgstr ""
+"Journaliser les données sommaires, telles que la moyenne et la durée "
+"maximale de génération des pages et l'utilisation de la mémoire "
+"dans la base de données. Ce mode de journalisation <strong>n'est "
+"pas</strong> approprié pour la plupart des sites en ligne."
+msgid "Summary logging (APC)"
+msgstr "Journalisation sommaire (APC)"
+msgid ""
+"Log summary data, such as average and maximum page generation times "
+"and memory usage to APC, if installed. The summary will be stored in "
+"APC memory, and hence there is no load on the database. This logging "
+"to APC is suitable for most live sites, unless the number of unique "
+"page accesses is excessively high."
+msgstr ""
+"Journaliser les données résumées, telles que la moyenne et la "
+"durée maximale de génération des pages et l'utilisation de la "
+"mémoire APC (Alternative PHP Cache), si installé. Le sommaire sera "
+"stocké dans la mémoire APC  ; par conséquent il n'y a pas de "
+"chargement dans la base de données. Cette journalisation dans APC est "
+"appropriée pour la plupart des sites en ligne, à moins que le nombre "
+"d'accès aux pages soit excessivement élevé."
+msgid "Database Query timing and count"
+msgstr "Décompte et durée de la requête à la base de données"
+msgid "Accesses threshold"
+msgstr "Seuil des accès"
+msgid ""
+"When displaying the summary report and using APC, only pages with the "
+"number of accesses larger than the specified threshold will be shown. "
+"Also, when cron runs, pages with that number of accesses or less will "
+"be removed, so as not to overflow APC's shared memory. This is useful "
+"on a live site with a high volume of hits. On a development site, you "
+"probably want this set to 0, so you can see all pages."
+msgstr ""
+"Lorsque le résumé du rapport est affiché et qu'APC (Alternative PHP "
+"Cache) est utilisé, seules les pages ayant un nombre d'accès "
+"supérieur au seuil spécifié seront visibles. De plus, quand le "
+"planificateur de tâche cron s'exécute, les pages ayant un nombre "
+"d'accès égal ou inférieur seront supprimées pour ne pas faire "
+"déborder le cache APC. Ceci est utile pour un site ayant un taux de "
+"consultation important. Pour un site de développement, vous pouvez "
+"définir ceci à 0, vous verrez ainsi toutes les pages."
+msgid "# accesses"
+msgstr "# accès"
+msgid "Query Count (Max)"
+msgstr "Décompte des requêtes (Max)"
+msgid "Query Count (Avg)"
+msgstr "Décompte des requêtes (Moy)"
+msgid "No statistics available yet."
+msgstr "Aucune statistique n'est encore disponible."
+msgid ""
+"Showing !shown paths with more than !threshold accesses, out of !total "
+"total paths."
+msgstr ""
+"Affichage de !shown chemins avec plus de !threshold accès, sur un "
+"total de !total chemins."
+msgid "Showing all !total paths."
+msgstr "Affichage de tous les !total chemins."
+msgid "Average memory per page: !mb_avg MB"
+msgstr "Mémoire moyenne par page : !mb_avg MO"
+msgid "Total number of page accesses: !accesses"
+msgstr "Nombre total d'accès à la page : !accesses"
+msgid "First access: !access."
+msgstr "Premier accès : !access."
+msgid "Last access: !access."
+msgstr "Dernier accès : !access."
+msgid "Memory (MB)"
+msgstr "Mémoire (MO)"
+msgid "Anonymous?"
+msgstr "Anonyme ?"
+msgid "# Queries"
+msgstr "# Requêtes"
+msgid "Confirm APC clear"
+msgstr "Confirmer le vidage d'APC"
+msgid "Are you sure you want to clear the APC statistics for this site?"
+msgstr "Êtes-vous sûr de vouloir vider les statistiques d'APC pour ce site ?"
+msgid ""
+"This will clear all the collected performance statistics stored in "
+"APC. This action cannot be undone."
+msgstr ""
+"Ceci videra toutes les statistiques de performance rassemblées qui "
+"sont stockées dans APC. Cette action est irréversible."
+msgid "Performance statistics collected in APC has been cleared."
+msgstr ""
+"Les statistiques de performance rassemblées dans APC ont été "
+"vidées."
+msgid ""
+"Logs detailed and/or summary page generation time and memory "
+"consumption for page requests."
+msgstr ""
+"Les journaux détaillés et/ou sommaires de la durée de génération "
+"des pages et de consommation de la mémoire pour les requêtes de "
+"pages."
+msgid "Debug mode"
+msgstr "Mode debug"
+msgid "Generate"
+msgstr "Générer"
+msgid "Run cron"
+msgstr "Lancer la tâche planifiée (cron)"
+msgid "Instances"
+msgstr "Instances"
+msgid "Bundles"
+msgstr "Paquets"
+msgid "The menu router has been rebuilt."
+msgstr "Le routeur de menu a été reconstruit."
+msgid "Generating Content"
+msgstr "Génération du contenu"
+msgid "Finished @num_nids nodes created successfully."
+msgstr "Création de @num_nids nœuds avec succès."
+msgid "Finished with an error."
+msgstr "Terminé avec erreur"
+msgid ""
+"The theme registry is being rebuilt on every request. Remember to <a "
+"href=\"!url\">turn off</a> this feature on production websites."
+msgstr ""
+"Le registre du thème est reconstruit à chaque requête. N'oubliez "
+"pas de <a href=\"!url\">désactiver</a> cette fonctionnalité sur des "
+"sites web en production."
+msgid "Enter function name for api lookup"
+msgstr "Entrez le nom de la fonction pour la voir sur l'API"
+msgid "API Site"
+msgstr "Site de l'API"
+msgid ""
+"The base URL for your developer documentation links. You might change "
+"this if you run <a href=\"!url\">api.module</a> locally."
+msgstr ""
+"L'URL de base pour vos liens de documentation du développeur. Vous "
+"pouvez changer ceci si vous exécutez <a href=\"!url\">api.module</a> "
+"localement."
+msgid "Krumo display"
+msgstr "Affichage de Krumo"
+msgid ""
+"Select a skin for your debug messages or select <em>disabled</em> to "
+"display object and array output in standard PHP format."
+msgstr ""
+"Choisissez un thème pour vos messages de débogage ou choisissez "
+"<em>désactivé</em> pour afficher la sortie de l'objet et du tableau "
+"au format PHP standard."
+msgid "Rebuild the theme registry on every page load"
+msgstr "Reconstruire le registre de thème à chaque chargement de page"
+msgid ""
+"While creating new templates and theme_ overrides the theme registry "
+"needs to be rebuilt."
+msgstr ""
+"A la création de nouveaux templates et de surcharges de theme_, le "
+"registre de thème a besoin d’être reconstruit."
+msgid ""
+"Uninstall and then install the selected modules. "
+"<code>hook_uninstall()</code> and <code>hook_install()</code> will be "
+"executed and the schema version number will be set to the most recent "
+"update number. You may have to manually clear out any existing tables "
+"first if the module doesn't implement <code>hook_uninstall()</code>."
+msgstr ""
+"Désinstaller puis installer les modules sélectionnés. "
+"<code>hook_uninstall()</code> et <code>hook_install()</code> seront "
+"exécutés et le numéro de version du schéma sera défini au numéro "
+"de mise à jour le plus récent. Vous devrez au préalable effacer "
+"manuellement toute table existante si le module n'implémente pas "
+"<code>hook_uninstall()</code>."
+msgid "Reinstall"
+msgstr "Réinstaller"
+msgid "Saved new value for %name."
+msgstr "Nouvelle valeur enregistrée pour %name."
+msgid "Display of !type !obj"
+msgstr "Affichage de !obj !type"
+msgid "{empty}"
+msgstr "{vide}"
+msgid "The file could not be written."
+msgstr "The fichier n'a pas pu être enregistré."
+msgid "One variable deleted."
+msgid_plural "@count variables deleted."
+msgstr[0] "Une variable supprimée."
+msgstr[1] "@count variables supprimées."
+msgid "1 character"
+msgid_plural "@count characters"
+msgstr[0] "@count caractère"
+msgstr[1] "@count caractères"
+msgid "1 element"
+msgid_plural "@count elements"
+msgstr[0] "1 élément"
+msgstr[1] "@count éléments"
+msgid ""
+"Clear the CSS cache and all database cache tables which store page, "
+"node, theme and variable caches."
+msgstr ""
+"Purger le cache CSS et tout le cache des tables de la base de données "
+"qui stockent le cache des pages, des nœuds, des thèmes et des "
+"variables."
+msgid "Function reference"
+msgstr "Référentiel de la fonction"
+msgid ""
+"View a list of currently defined user functions with documentation "
+"links."
+msgstr ""
+"Voir une liste de fonctions utilisateur actuellement définies avec "
+"liens vers la documentation."
+msgid "Run hook_uninstall() and then hook_install() for a given module."
+msgstr "Lancer hook_uninstall() puis hook_install() pour un module donné."
+msgid "Rebuild menus"
+msgstr "Reconstruire les menus"
+msgid ""
+"Rebuild menu based on hook_menu() and revert any custom changes. All "
+"menu items return to their default settings."
+msgstr ""
+"Reconstruire le menu en se basant sur hook_menu() et rétablir tous "
+"les modifications personnalisées. Tous les éléments de menus "
+"retournent à leurs paramètres par défaut."
+msgid "Edit and delete site variables."
+msgstr "Modifier et supprimer des variables du site."
+msgid "PHPinfo()"
+msgstr "PHPinfo()"
+msgid "View your server's PHP configuration"
+msgstr "Voir la configuration PHP de votre serveur"
+msgid "Execute PHP Code"
+msgstr "Exécuter du code PHP"
+msgid "Execute some PHP code"
+msgstr "Exécuter du code PHP"
+msgid "Theme registry"
+msgstr "Registre du thème"
+msgid "View a list of available theme functions across the whole site."
+msgstr ""
+"Voir une liste des fonctions de thèmes disponibles à travers "
+"l'ensemble du site."
+msgid "Hook_elements()"
+msgstr "Hook_elements()"
+msgid "View the active form/render elements for this site."
+msgstr "Voir le rendu/forme actif(ve) des éléments pour ce site."
+msgid "List the contents of $_SESSION."
+msgstr "Liste le contenu de $_SESSION."
+msgid "Devel settings"
+msgstr "Paramètres de Devel"
+msgid "Delete all users (except user id 1) before generating new users."
+msgstr ""
+"Supprimer tous les utilisateurs (excepté utilisateur id 1) avant de "
+"générer les nouveaux utilisateurs."
+msgid "How old should user accounts be?"
+msgstr "Quel âge doivent avoir les comptes d'utilisateurs ?"
+msgid ""
+"User ages will be distributed randomly from the current time, back to "
+"the selected time."
+msgstr ""
+"L'ancienneté des utilisateurs sera distribuée aléatoirement entre "
+"l'heure choisie et l'heure actuelle."
+msgid ""
+". This type contains CCK fields which will only be populated by fields "
+"that implement the content_generate hook."
+msgstr ""
+". Ce type contient des champs CCK qui ne seront peuplés que par des "
+"champs qui implémentent le hook content_generate."
+msgid "How far back in time should the nodes be dated?"
+msgstr "À partir de quand doit-on dater les nœuds ?"
+msgid ""
+"Node creation dates will be distributed randomly from the current "
+"time, back to the selected time."
+msgstr ""
+"Les dates de création des nœuds seront réparties aléatoirement "
+"entre la date de départ choisie et maintenant."
+msgid "Requires path.module"
+msgstr "Requiert path.module"
+msgid "Add an url alias for each node."
+msgstr "Ajouter un alias d'URL à chaque nœud"
+msgid ""
+"Does not grant any access, but could block lower priority grants; not "
+"in !na."
+msgstr ""
+"N'autorise aucun accès, mais pourrait bloquer les autorisations de "
+"plus basse priorité ; pas dans !na."
+msgid "Should be in !na but isn't!"
+msgstr "Devrait être dans !na, mais n'y est pas!"
+msgid "Node_access summary"
+msgstr "Résumé de node_access"
+msgid "Devel node access"
+msgstr "Devel Node Access"
+msgid "Devel generate"
+msgstr "Devel generate"
+msgid "APC is not enabled. Nothing to do ..."
+msgstr "APC n'est pas activé. Rien à faire ..."
+msgid "Performance logging is not enabled"
+msgstr "La journalisation des performances n'est pas activée."
+msgid "Performance logging"
+msgstr "Journalisation des performances"
+msgid "Performance logging details"
+msgstr "Journalisation détaillée des performances"
+msgid "Performance logging query"
+msgstr "Journalisation des performances de requêtes"
+msgid "Performance logging APC"
+msgstr "Journalisation des performances APC"
+msgid "Performance logging on live web sites works best if APC is enabled."
+msgstr ""
+"La journalisation des performances sur les sites web en ligne "
+"fonctione mieux si APC est activé."
+msgid "Performance logging APC memory size"
+msgstr "Taille de la mémoire APC de la journalisation des performances"
+msgid "Execute PHP code"
+msgstr "Exécuter du code PHP"
+msgid ""
+"This issue may be masked by the one above, so look into the former "
+"first."
+msgstr ""
+"Ce problème peut être masqué par celui ci-dessus, alors regardez le "
+"premier d'abord."
+msgid "unexpected"
+msgstr "inattendu"
+msgid ""
+"You have errors in your !na table! You may be able to fix these for "
+"now by running !Rebuild_permissions, but this is likely to destroy the "
+"evidence and make it impossible to identify the underlying issues. If "
+"you don't fix those, the errors will probably come back again. <br /> "
+"DON'T do this just yet if you intend to ask for help with this "
+"situation."
+msgstr ""
+"Il y a des erreurs dans votre table !na ! Vous pouvez corriger cela "
+"dès maintenant en exécutant !Rebuild_permissions, mais cela implique "
+"la destruction des informations, ce qui qui rendra impossible "
+"l'identification des problèmes sous-jacents. Si vous ne faites pas la "
+"réparation, les erreurs reviendront probablement.<br />NE LE FAITES "
+"PAS maintenant si vous avez l'intention de demander de l'aide sur "
+"cette situation."
+msgid ""
+"Choose an error handler for your site. <em>Backtrace</em> prints nice "
+"debug information when an error is noticed, and you <a "
+"href=\"@choose\">choose to show errors on screen</a>. "
+"<strong>Backtrace requires the <a href=\"@krumo\">krumo "
+"library</a></strong>. <em>None</em> is a good option when stepping "
+"through the site in your debugger."
+msgstr ""
+"Choisir un gestionnaire d'erreur pour votre site.\r\n"
+"<em>Backtrace</em> affiche des informations de débogage quand une "
+"erreur est levée et que vous avez fait le <a href=\"@choose\">choix "
+"d'afficher les erreurs à l'écran</a>. <strong>Backtrace requiert la "
+"<a href=\"@krumo\">librairie krumo</a></strong>.\r\n"
+"<em>Aucun</em> est une bonne option si vous utilisez déjà un outil "
+"de débogage."
+msgid ""
+"The second block provided by this module shows the entries in the "
+"node_access table for any nodes shown on the current page.  You can "
+"enable the debug mode on the <a href=\"@settings_page\">settings "
+"page</a> to display much more information, but this can cause "
+"considerable overhead.  Because the tables shown are wide, it is "
+"recommended to enable the blocks in the page footer rather than a "
+"sidebar."
+msgstr ""
+"Le second bloc fourni par ce module montre les entrées dans la table "
+"node_acces pour tous les nœuds affichés dans la page actuelle. Vous "
+"pouvez activer le mode débogage sur la <a "
+"href=\"@settings_page\">page des paramètres</a> pour afficher plus "
+"d'informations, mais cela peut entraîner une surcharge considérable. "
+"En raison de la grande taille de ces tables, il est recommandé "
+"d'activer les blocs dans le pied-de-page plutôt que dans les barres "
+"latérales."
+msgid ""
+"This module also provides a <a href=\"@summary_page\">summary page</a> "
+"which shows general information about your node_access table.  If you "
+"have installed the Views module, you may browse node_access by realm."
+msgstr ""
+"Ce module fournit aussi une <a href=\"@summary_page\">page de "
+"résumé</a> qui affiche les informations générales de la table "
+"node_acces. Si vous avez installé le module Views, vous pourrez "
+"naviguer par domaine dans node_access."
+msgid "To see more details enable <a href=\"@debug_mode\">debug mode</a>."
+msgstr ""
+"Pour voir plus de détail, activer le <a href=\"@debug_mode\">mode "
+"débogage</a>."
+msgid "These are the grants returned by hook_node_grants() for this user."
+msgstr ""
+"Ce sont les permissions d'accès accordées à cet utilisateur "
+"retournées par hook_node_grants()."
+msgid "!username has the following access"
+msgstr "!username a l'accès suivant"
+msgid "%op:"
+msgstr "%op :"
+msgid "to node !nid:"
+msgstr "vers le nœud !nid :"
+msgid "Create nodes of the '@Node_type' type."
+msgstr "Créer des nœuds de type '@Node_type'."
+msgid "Unable to load the node &ndash; this should never happen!"
+msgstr "Incapable de charger le nœud &ndash; ceci ne devrait jamais arriver !"
+msgid "!NO: access content"
+msgstr "!NO : accéder au contenu"
+msgid ""
+"!NO: This user does not have the '!access_content' permission and is "
+"denied doing anything with content."
+msgstr ""
+"!NO : Cet utilisateur n'a pas le droit '!access_content' et il lui est "
+"refusé de faire quoi que ce soit avec le contenu."
+msgid "!NO: no reason"
+msgstr "!NO : aucune raison"
+msgid "!NO: None of the checks resulted in allowing this, so it's denied."
+msgstr ""
+"!NO : Aucune des vérifications n'a résulté à l'autorisation de "
+"ceci, donc c'est refusé."
+msgid ""
+"Detail performance log is not enabled. Go to the <a "
+"href=\"@link\">settings page</a> to enable it."
+msgstr ""
+"Le journal détaillé des performances n'est pas activé. Allez sur la "
+"<a href=\"@link\">page des paramètres</a> pour l'activer."
+msgid "Render"
+msgstr "Rendu"
+msgid ""
+"Display how much memory is used to generate the current page. This "
+"will show memory usage when devel_init() is called and when "
+"devel_exit() is called."
+msgstr ""
+"Affiche la quantité de mémoire utilisée pour générer la page "
+"actuelle. Cela affichera l'utilisation de la mémoire à l'appel de "
+"devel_init() et à l'appel de devel_exit()."
+msgid "Display $page array"
+msgstr "Afficher le tableau $page"
+msgid ""
+"Display $page array from <a "
+"href=\"http://api.drupal.org/api/function/hook_page_alter/7\">hook_page_alter()</a> "
+"in the messages area of each page."
+msgstr ""
+"Afficher le tableau variable $page depuis <a "
+"href=\"http://api.drupal.org/api/function/hook_page_alter/7\">hook_page_alter()</a> "
+"dans les messages de chaque page."
+msgid "Uninstalled and installed: %names."
+msgstr "Désinstallés et réinstallés : %names."
+msgid "No variables."
+msgstr "Pas de variable."
+msgid "View developer output like variable printouts, query log, etc."
+msgstr ""
+"Voir un rendu pour les développeurs tel que les diverses impressions, "
+"le journal des requêtes, etc."
+msgid "Access developer information"
+msgstr "Accéder aux informations de développeur"
+msgid "Switch users"
+msgstr "Changer d'utilisateur"
+msgid "Display source code"
+msgstr "Afficher le code source"
+msgid "Details about a given menu item."
+msgstr "Détails à propos d'un élément de menu donné."
+msgid "Field info"
+msgstr "Informations du champ"
+msgid "View fields information across the whole site."
+msgstr "Voir les informations de champs sur l'ensemble du site."
+msgid "Explain query"
+msgstr "Expliquer la requête"
+msgid "Run an EXPLAIN on a given query. Used by query log"
+msgstr ""
+"Exécuter un EXPLAIN sur une requête donnée. Utilisé par le journal "
+"de requête."
+msgid "Arguments query"
+msgstr "Requête d'arguments"
+msgid ""
+"Helper functions, pages, and blocks to assist Drupal developers. The "
+"devel blocks can be managed via the <a href=\""
+msgstr ""
+"Fonctions, pages, et blocs d'aide pour assister les développeurs "
+"Drupal. Les blocs Devel peuvent être gérés via la"
+msgid ""
+"View the node access information blocks on node pages and the summary "
+"page."
+msgstr ""
+"Voir les blocs d'information de node access sur les pages de nœuds et "
+"dans la page sommaire."
+msgid "Access DNA information"
+msgstr "Accéder aux informations DNA"
+msgid "Development link"
+msgstr "Lien de développement"
+msgid "static"
+msgstr "statique"
+msgid "Non-standard grant in !na."
+msgstr "Autorisation non standard dans !na."
+msgid ""
+"(Some of the table elements provide additional information if you "
+"hover your mouse over them.)"
+msgstr ""
+"(Certains des éléments du tableau fournissent des information "
+"supplémentaires si vous les survolez avec la souris.)"
+msgid ""
+"!username has the %bypass_node_access permission and thus full access "
+"to all nodes."
+msgstr ""
+"!username a la permission %bypass_node_access et, donc, l'accès "
+"complet à tous les nœuds."
+msgid ""
+"(This table lists the most-recently active users. Hover your mouse "
+"over each result for more details.)"
+msgstr ""
+"(Ce tableau liste les utilisateurs actifs les plus récents. Survolez "
+"avec la souris chacun des résultats pour plus de détails.)"
+msgid "!NO: invalid $op"
+msgstr "!NO : $op invalide"
+msgid "'@op' is an invalid operation!"
+msgstr "'@op' est une opération invalide !"
+msgid "!YES: bypass node access"
+msgstr "!YES: contourner l'accès au nœud"
+msgid ""
+"!YES: This user has the '!bypass_node_access' permission and may do "
+"everything with nodes."
+msgstr ""
+"!YES: Cet utilisateur a la permission '!bypass_node_access' et peut "
+"tout faire avec les nœuds."
+msgid "bypass node access"
+msgstr "contourner l'accès au nœud"
+msgid "!NO: by %module"
+msgstr "!NO : par %module"
+msgid ""
+"!NO: hook_node_access() of the following module(s) denies this: "
+"@deniers."
+msgstr ""
+"!NO : les hook_node_access() des modules suivants ne permettent pas "
+"ceci : @deniers."
+msgid ""
+"!NO: hook_node_access() of the following module(s) denies this: "
+"@deniers &ndash; even though the following module(s) would allow it: "
+"@allowers."
+msgstr ""
+"!NO : les hook_node_access() des modules suivants refusent ceci : "
+"@deniers &ndash; malgré le fait que les modules suivants l'autorise : "
+"@allowers."
+msgid "!YES: by %module"
+msgstr "!YES : par %module"
+msgid ""
+"!YES: hook_node_access() of the following module(s) allows this: "
+"@allowers."
+msgstr ""
+"!YES : les hook_node_access() des modules suivants autorisent ceci : "
+"@allowers."
+msgid "!YES: view own unpublished content"
+msgstr "!YES : voir son propre contenu non publié"
+msgid ""
+"!YES: The node is unpublished, but the user has the "
+"'!view_own_unpublished_content' permission."
+msgstr ""
+"!YES : Le nœud n'est pas publié, mais l'utilisateur à le droit "
+"'!view_own_unpublished_content'."
+msgid "view own unpublished content"
+msgstr "voir son propre contenu non publié"
+msgid "This is most likely due to a withheld permission."
+msgstr "Cela est probablement dû à un droit refusé."
+msgid ""
+"Helper pages and blocks to assist Drupal developers and admins with "
+"node_access. The devel blocks can be managed via the <a href=\""
+msgstr ""
+"Pages et blocs d'aide pour assister les développeurs Drupal et les "
+"administrateurs avec node_access. Les blocs Devel peuvent être "
+"gérés via la"
+msgid "Devel module menu links will be rebuilt."
+msgstr "Les liens du module Devel seront reconstruits."
+msgid "Developer blocks and page illustrating relevant node_access records."
+msgstr ""
+"Blocs et page pour développeurs illustrant les enregistrements de "
+"node_access utiles."
+msgid "Invalid number of users."
+msgstr "Nombre invalide d'utilisateurs."
+msgid "Generated @number users."
+msgstr "@number utilisateurs générés."
+msgid "Generated @num_nodes nodes, @max_comments comments (or less) per node."
+msgstr ""
+"@num_nodes nœuds, @max_comments commentaires (ou moins) générés "
+"par nœud."
+msgid "Deleted %count nodes."
+msgstr "%count nœuds supprimés."
+msgid "Which roles should the users receive?"
+msgstr "Quels rôles les utilisateurs devraient-ils recevoir ?"
+msgid "Users always receive the <em>authenticated user</em> role."
+msgstr ""
+"Les utilisateurs reçoivent toujours le rôle <em>utilisateur "
+"authentifié</em>."
+msgid "Comments: "
+msgstr "Commentaires : "
+msgid ""
+"You do not have any content types that can be generated. <a "
+"href=\"@create-type\">Go create a new content type</a> already!</a>"
+msgstr ""
+"Vous n'avez aucun type de contenu qui peut être généré. <a "
+"href=\"@create-type\">Allez créer un type de contenu !</a>"
+msgid "Maximum number of comments per node."
+msgstr "Nombre maximum de commentaires par nœud."
+msgid ""
+"You must also enable comments for the content types you are "
+"generating. Note that some nodes will randomly receive zero comments. "
+"Some will receive the max."
+msgstr ""
+"Vous devez aussi activer les commentaires pour les types de contenus "
+"que vous générez. Notez que certains nœuds ne recevront "
+"aléatoirement aucun commentaire. D'autres recevront le maximum."
+msgid "Add statistics for each node (node_counter table)."
+msgstr "Ajouter des statistiques pour chaque nœud (table node_counter)."
+msgid "Administer performance logging"
+msgstr "Administrer la journalisation des performances"
+msgid ""
+"Allows both configuring the performance module and accessing its "
+"reports."
+msgstr ""
+"Permet de configurer le module de performance et d'accéder à ses "
+"rapports."
+msgid ""
+"Log database query timing and query count for each page. This is "
+"useful to know if the bottleneck is in excessive database query "
+"counts, or the time required to execute those queries is high. "
+"Enabling this will incurr some memory overhead as query times and the "
+"actual query strings are cached in memory as arrays for each page, "
+"hence skewing the overall page memory reported."
+msgstr ""
+"Journaliser la durée et le décompte des requêtes à la base de "
+"données pour chaque page. Cela est utile pour savoir si le goulot "
+"d'étranglement est un nombre excessif de requêtes en base de "
+"données, ou si le délai requis pour exécuter ces requêtes est "
+"élevé. Activer ceci va engager un certain surplus de consommation "
+"mémoire car la durée des requêtes et les requêtes elles-même "
+"seront mises en cache dans la mémoire en tant que tableaux pour "
+"chaque page, et ainsi biaiser la consommation mémoire de la page "
+"reportée."
+msgid ""
+"Summary performance log is not enabled. Go to the <a "
+"href=\"!link\">settings page</a> to enable it."
+msgstr ""
+"Le journal sommaire des performances n'est pas activé. Allez sur la "
+"<a href=\"!link\">page des paramètres</a> pour l'activer."
+msgid "MB Memory (Max)"
+msgstr "Mémoire MO (Max)"
+msgid "MB Memory (Avg)"
+msgstr "Mémoire MO (Moy)"
+msgid "ms (Max)"
+msgstr "ms (Max)"
+msgid "ms (Avg)"
+msgstr "ms (Moy)"
+msgid "Query ms (Max)"
+msgstr "ms de la requête (Max)"
+msgid "Query ms (Avg)"
+msgstr "ms de la requête (Moy)"
+msgid "Average duration per page: !ms_avg ms"
+msgstr "Durée moyenne par page : !ms_avg ms"
+msgid "No data has been collected."
+msgstr "Aucune donnée n'a été recueillie."
+msgid "ms (Total)"
+msgstr "ms (Total)"
+msgid "Query ms"
+msgstr "ms de la requête"
+msgid ""
+"APC has been configured for !size, which is less than the recommended "
+"!min_memory MB of memory. If you encounter errors when viewing the "
+"summary report, then try to increase that limit for APC."
+msgstr ""
+"APC a été configuré pour !size, ce qui est moins que les "
+"!min_memory Mo de mémoire recommandée. Si vous rencontrez des "
+"erreurs à la vue du rapport sommaire, essayez d'augmenter cette "
+"limite pour APC."
+msgid ""
+"XHProf is a php extension which is essential for profiling your Drupal "
+"site. It pinpoints slow functions, and also memory hogging functions."
+msgstr ""
+"XHProf est une extension PHP qui est essentielle au profilage de votre "
+"site Drupal. Elle localise avec précision les fonctions lentes, et "
+"aussi les fonctions monopolisant la mémoire."
+msgid "Profile requests with the xhprof php extension."
+msgstr "Profiler des requêtes avec l'extension php xhprof."
+msgid ""
+"You must enable the <a href=\"!url\">xhprof php extension</a> to use "
+"this feature."
+msgstr ""
+"Vous devez activer <a href=\"!url\">l'extension xhprof php</a> pour "
+"utiliser cette fonctionnalité."
+msgid ""
+"Location of the xhprof source code on your system, usually somewhere "
+"in /usr/local/share or /usr/share, include the leading forward slash."
+msgstr ""
+"Emplacement du code source de xhprof sur votre système, "
+"habituellement à quelque part dans /usr/local/share ou /usr/share, "
+"incluant le slash de début."
+msgid ""
+"Path to the publically accessible xhprof_html - required to display "
+"profiler reports. You will need to set this up outside Drupal, for "
+"example at http://xhprof.localhost/xhprof_html"
+msgstr ""
+"Chemin vers le xhprof_html accessible publiquement - requis pour "
+"afficher les rapports du profileur. Vous aurez besoin de configurer "
+"ceci à l'extérieur de Drupal, par exemple à "
+"http://xhprof.localhost/xhprof_html"
+msgid ""
+"The following realms appear to grant all users access to some specific "
+"nodes. This may be perfectly normal, if some of your content is "
+"available to the public."
+msgstr ""
+"Les zones suivantes semblent autoriser l'accès à tous les "
+"utilisateurs à certains nœuds spécifiques. Cela pourrait être "
+"parfaitement normal, si certains de vos contenus sont disponibles au "
+"public."
+msgid ""
+"Devel Node Access has detected duplicate records returned from "
+"%function:"
+msgstr ""
+"Devel Node Access a détecté des enregistrements en double retournés "
+"de %function:"
+msgid ""
+"Default grant supplied by core in the absence of any other non-empty "
+"grants; in !na."
+msgstr ""
+"Autorisation par défaut fournie par le cœur (core) en l'absence de "
+"toute autre autorisation non-vide ; dans !na."
+msgid "Highest priority grant; in !na."
+msgstr "Autorisation de plus haute priorité ; dans !na."
+msgid "removed"
+msgstr "supprimé"
+msgid "Was removed in @func; not in !na."
+msgstr "A été retiré de @func ; pas de !na."
+msgid ""
+"The 0/all/0/... grant applies to all nodes and all users -- usually it "
+"should not be present in !na if any node access module is active!"
+msgstr ""
+"La permission 0/all/0/... s'applique à tous les nœuds et tous les "
+"utilisateurs -- habituellement elle ne devrait pas être présente "
+"dans !na si un quelconque module d'accès aux nœuds est actif !"
+msgid "Lower priority grant; not in !na and thus ignored."
+msgstr ""
+"Autorisation de plus basse priorité ; en dehors de !na et donc "
+"ignorée."
+msgid "wrong"
+msgstr "mauvais"
+msgid "Is rightfully in !na but at least one access flag is wrong!"
+msgstr ""
+"Est effectivement dans !na mais au moins un des drapeaux d'accès est "
+"erroné !"
+msgid "removed!"
+msgstr "retiré !"
+msgid "Was removed in @func; should NOT be in !na!"
+msgstr "A été retiré de @func ; ne doit PAS être dans !na !"
+msgid ""
+"!username (user %uid) can use these grants (if they are present above) "
+"for %access access: !list"
+msgstr ""
+"!username (utilisateur %uid) peut utiliser ces autorisations (si elles "
+"sont présentes ci-dessus) pour l'accès %access : !list"
+msgid "1 user deleted"
+msgid_plural "@count users deleted."
+msgstr[0] "1 utilisateur supprimé."
+msgstr[1] "@count utilisateurs supprimés."
+msgid "1 node created."
+msgid_plural "Finished creating @count nodes"
+msgstr[0] "1 nœud créé."
+msgstr[1] "@count nœuds créés."
+msgid "<a href=\"@xhprof\">XHProf output</a>. "
+msgstr "<a href=\"@xhprof\">sortie XHProf</a>. "
+msgid "Set language on nodes"
+msgstr "Ajouter une langue aux nœuds"
+msgid "Requires locale.module"
+msgstr "Requiert locale.module"
+msgid "Summary logging (Memcached)"
+msgstr "Journalisation sommaire (Memcached)"
+msgid ""
+"Enable profiling of all page views and <a href=\"!drush\">drush</a> "
+"requests."
+msgstr ""
+"Activer le profilage (profiling) de toutes les pages vues et des "
+"requêtes <a href=\"!drush\">drush</a>."
+msgid "Use uncompressed jQuery"
+msgstr "Utiliser jQuery décompressé"
+msgid ""
+"Use a human-readable version of jQuery instead of the minified version "
+"that ships with Drupal, to make JavaScript debugging easier."
+msgstr ""
+"Utilisez une version lisible par tous de JQuery à la place de la "
+"version minimisée qui accompagne Drupal afin de faciliter le "
+"débogage JavaScript."
+msgid "%error: %message in %function (line %line of %file)."
+msgstr "%error : %message dans %function (ligne %line de %file)."
+msgid "Include %anonymous"
+msgstr "Inclure %anonymous"
+msgid "Allow entering any user name"
+msgstr "Autorise l'entrée de n'importe quel nom d'utilisateur"
+msgid "Caution: the anonymous user will be unable to switch back."
+msgstr ""
+"Attention : cet utilisateur anonyme ne pourra plus revenir à l'état "
+"antérieur."
+msgid ""
+"jQuery could not be replaced with an uncompressed version of 1.4.4, "
+"because jQuery @version is running on the site."
+msgstr ""
+"jQuery ne pourra pas être remplacé par la version 1.4.4, parce que "
+"jQuery @version est exécuté sur le site."
+msgid "Entity info"
+msgstr "Informations d'entité"
+msgid "View entity information across the whole site."
+msgstr "Voir les informations d'entité sur l'ensemble du site."
+msgid ""
+"Return a given query, with arguments instead of placeholders. Used by "
+"query log"
+msgstr ""
+"Retourne une requête donnée, avec arguments plutôt que des espaces "
+"réservés. Utilisée par le journal des requêtes."
+msgid ""
+"Debug mode verifies the grant records in the node_access table against "
+"those that would be set by running !Rebuild_permissions, and displays "
+"them all; this can cause considerable overhead.<br />For even more "
+"information enable the <a href=\"@link\">%DNAbU block</a>, too."
+msgstr ""
+"Le mode Débogage vérifie que les enregistrements des permissions "
+"accordées correspondent, dans la table node_access, à ceux qui "
+"doivent être définis lors de l’exécution de !Rebuild_permissions "
+", et les affiche tous ; ce qui peut entraîner une énorme "
+"surcharge.<br />Pour avoir plus d'informations, activez aussi le bloc "
+"<a href=\"@link\">%DNAbU</a>."
+msgid ""
+"For per-user access permissions enable the <a href=\"@link\">%DNAbU "
+"block</a>."
+msgstr ""
+"Pour les permissions d'accès 'par utilisateur', activer le <a "
+"href=\"@link\">bloc %DNAbU</a>."
+msgid "Generated @number_menus menus, @number_links links."
+msgstr "@number_menus menus, @number_links liens générés."
+msgid "Deleted existing terms."
+msgstr "Termes existants supprimés."
+msgid "Deleted existing vocabularies."
+msgstr "Vocabulaires existants supprimés."
+msgid "Deleted existing menus and links."
+msgstr "Menus et liens existants supprimés."
+msgid "Created the following new menus: !menus"
+msgstr "Nouveaux menus suivants créés : !menus"
+msgid "Created @count new menu links."
+msgstr "@count nouveaux liens de menu créés."
+msgid "Description of @name"
+msgstr "Description de @name"
+msgid "Description of @title."
+msgstr "Description de @title."
+msgid ""
+"<strong>Delete all content</strong> in these content types before "
+"generating new content."
+msgstr ""
+"<strong>Supprimer tout le contenu</strong> dans ces types de contenu "
+"avant de générer du nouveau contenu."
+msgid "Restrict terms to these vocabularies."
+msgstr "Restreindre les termes à ces vocabulaires."
+msgid "Number of terms?"
+msgstr "Nombre de termes ?"
+msgid "Max word length of term names"
+msgstr "Taille de mot maximum des noms de termes"
+msgid ""
+"Delete existing terms in specified vocabularies before generating new "
+"terms."
+msgstr ""
+"Supprimez les termes existants dans les vocabulaires spécifiés avant "
+"de générer de nouveaux termes."
+msgid "Number of vocabularies?"
+msgstr "Nombre de vocabulaires ?"
+msgid "Max word length of vocabulary names"
+msgstr "Taille de mot maximum des noms de vocabulaires"
+msgid "Delete existing vocabularies before generating new ones."
+msgstr "Supprimer les vocabulaires existants avant d'en générer de nouveaux."
+msgid "Create new menu(s)"
+msgstr "Créer de nouveaux menus"
+msgid "Generate links for these menus"
+msgstr "Générer des liens pour ces menus"
+msgid "Number of new menus to create"
+msgstr "Nombre de nouveaux menus à créer"
+msgid "Number of links to generate"
+msgstr "Nombre de liens à générer"
+msgid "Max word length of menu and menu link names"
+msgstr "Taille de mot maximum du menu et du nom des liens du menu"
+msgid "Types of links to generate"
+msgstr "Types de liens à générer"
+msgid "Maximum link depth"
+msgstr "Profondeur maximale des liens"
+msgid "Maximum menu width"
+msgstr "Largeur maximale du menu"
+msgid ""
+"Limit the width of the generated menu's first level of links to a "
+"certain number of items."
+msgstr ""
+"Limiter la largeur des liens de premier niveau du menu généré à un "
+"certain nombre d'éléments."
+msgid ""
+"Delete existing custom generated menus and menu links before "
+"generating new ones."
+msgstr ""
+"Supprimer les menus et les liens de menu personnalisés générés "
+"avant d'en générer de nouveaux."
+msgid "Generate terms"
+msgstr "Générer des termes"
+msgid "Generate a given number of terms. Optionally delete current terms."
+msgstr ""
+"Générer un nombre donné de termes. Supprimer optionnellement les "
+"termes actuels."
+msgid "Generate vocabularies"
+msgstr "Générer des vocabulaires"
+msgid ""
+"Generate a given number of vocabularies. Optionally delete current "
+"vocabularies."
+msgstr ""
+"Générer un nombre donné de vocabulaires. Supprimer optionnellement "
+"les vocabulaires actuels."
+msgid "Generate menus"
+msgstr "Générer des menus"
+msgid ""
+"Generate a given number of menus and menu links. Optionally delete "
+"current menus."
+msgstr ""
+"Générer un nombre donné de menus et de liens de menu. Supprimer "
+"optionnellement les menus actuels."
+msgid "Run arbitrary PHP from a block."
+msgstr "Exécuter du code PHP à partir d'un bloc."
+msgid "Become any user on the site with just a click."
+msgstr "Devenir n'importe quel utilisateur sur le site en un seul clic."
+msgid "View the site's php source code."
+msgstr "Voir le code source php du site."
+msgid "!YES: @node_access_table"
+msgstr "!YES : @node_access_table"
+msgid ""
+"!YES: Node access allows this based on one or more records in the "
+"@node_access_table table (see the other DNA block!)."
+msgstr ""
+"!YES : Node access permet ceci en se basant sur un ou plusieurs "
+"enregistrements dans la table @node_access_table (voir l'autre bloc "
+"DNA !)."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/entity-7.x-1.x.fr_2.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,692 @@
+# French translation of Entity API (7.x-1.2)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Entity API (7.x-1.2)\n"
+"POT-Creation-Date: 2017-11-10 01:49+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Title"
+msgstr "Titre"
+msgid "delete"
+msgstr "supprimer"
+msgid "Status"
+msgstr "Etat"
+msgid "Prefix"
+msgstr "Préfixe"
+msgid "Suffix"
+msgstr "Suffixe"
+msgid "Operations"
+msgstr "Actions"
+msgid "Email address"
+msgstr "Adresse de courriel"
+msgid "Author"
+msgstr "Auteur"
+msgid "yes"
+msgstr "oui"
+msgid "Subject"
+msgstr "Objet"
+msgid "Description"
+msgstr "Description"
+msgid "Language"
+msgstr "Langue"
+msgid "Comments"
+msgstr "Commentaires"
+msgid "Home page"
+msgstr "Page d'accueil"
+msgid "Weight"
+msgstr "Poids"
+msgid "Parent"
+msgstr "Parent"
+msgid "Name"
+msgstr "Nom"
+msgid "edit"
+msgstr "modifier"
+msgid "Import"
+msgstr "Importer"
+msgid "Book"
+msgstr "Livre"
+msgid "Export"
+msgstr "Exporter"
+msgid "Node ID"
+msgstr "Identifiant (ID) du nœud"
+msgid "Label"
+msgstr "Étiquette"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Summary"
+msgstr "Résumé"
+msgid "URL"
+msgstr "URL"
+msgid "Path"
+msgstr "Chemin"
+msgid "Display"
+msgstr "Affichage"
+msgid "Text"
+msgstr "Texte"
+msgid "Timestamp"
+msgstr "Horodatage"
+msgid "Content type"
+msgstr "Type de contenu"
+msgid "Email"
+msgstr "Courriel"
+msgid "Files"
+msgstr "Fichiers"
+msgid "User ID"
+msgstr "Identifiant (ID) utilisateur"
+msgid "no"
+msgstr "non"
+msgid "Created"
+msgstr "Créé(e)"
+msgid "Node"
+msgstr "Nœud"
+msgid "Active"
+msgstr "Actif"
+msgid "Taxonomy terms"
+msgstr "Termes de taxonomie"
+msgid "Custom"
+msgstr "Personnalisé"
+msgid "Revision ID"
+msgstr "Identifiant (ID) de révision"
+msgid "Comment ID"
+msgstr "Identifiant (ID) du commentaire"
+msgid "Published"
+msgstr "Publié"
+msgid "Poll duration"
+msgstr "Durée du sondage"
+msgid "Poll votes"
+msgstr "Votes de sondage"
+msgid "File ID"
+msgstr "Identifiant (ID) de fichier"
+msgid "File name"
+msgstr "Nom du fichier"
+msgid "File size"
+msgstr "Taille du fichier"
+msgid "Vocabulary"
+msgstr "Vocabulaire"
+msgid "Vocabulary ID"
+msgstr "Identifiant (ID) de vocabulaire"
+msgid "Term ID"
+msgstr "Identifiant (ID) du terme"
+msgid "Last access"
+msgstr "Dernier accès"
+msgid "Last login"
+msgstr "Dernière connexion"
+msgid "Overridden"
+msgstr "Supplanté"
+msgid "Nodes"
+msgstr "Nœuds"
+msgid "Owner"
+msgstr "Propriétaire"
+msgid "List type"
+msgstr "Type de liste"
+msgid "Users"
+msgstr "Utilisateurs"
+msgid "Anonymous"
+msgstr "Anonyme"
+msgid "IP Address"
+msgstr "Adresse IP"
+msgid "false"
+msgstr "faux"
+msgid "true"
+msgstr "vrai"
+msgid "Granularity"
+msgstr "Granularité"
+msgid "Entity"
+msgstr "Entité"
+msgid "None."
+msgstr "Aucun."
+msgid "Fixed"
+msgstr "Fixe"
+msgid "Import failed."
+msgstr "L'importation a échoué."
+msgid "Blocked"
+msgstr "Bloqué"
+msgid "Parent terms"
+msgstr "Termes parents"
+msgid "revert"
+msgstr "rétablir"
+msgid "Date created"
+msgstr "Date de création"
+msgid "Unpublished"
+msgstr "Non publié"
+msgid "Slogan"
+msgstr "Slogan"
+msgid "Language neutral"
+msgstr "Indépendant de la langue"
+msgid "Interface language"
+msgstr "Langue de l'interface"
+msgid "Unordered"
+msgstr "Non ordonné"
+msgid "Ordered"
+msgstr "Ordonné"
+msgid "Machine name"
+msgstr "Nom système"
+msgid "Node count"
+msgstr "Comptage des nœuds"
+msgid "Number of views"
+msgstr "Nombre de lectures"
+msgid "Default theme"
+msgstr "Thème par défaut"
+msgid "Content language"
+msgstr "Langue du contenu"
+msgid "clone"
+msgstr "cloner"
+msgid "Entity type"
+msgstr "Type d'entité"
+msgid "User roles"
+msgstr "Rôles de l'utilisateur"
+msgid "export"
+msgstr "exporter"
+msgid "translate"
+msgstr "traduire"
+msgid "Users who have created accounts on your site."
+msgstr "Utilisateurs qui ont créé des comptes sur votre site."
+msgid "MIME type"
+msgstr "Type MIME"
+msgid "Taxonomy vocabularies"
+msgstr "Vocabulaires de taxonomie"
+msgid "The MIME type of the file."
+msgstr "Le type MIME du fichier."
+msgid "Logged in user"
+msgstr "Utilisateur connecté"
+msgid "Overwrite"
+msgstr "Écraser"
+msgid "Current date"
+msgstr "Date actuelle"
+msgid "Comment count"
+msgstr "Nombre de commentaires"
+msgid "The title of the node."
+msgstr "Le titre du nœud."
+msgid "The date the node was posted."
+msgstr "La date à laquelle le nœud a été posté."
+msgid "Views today"
+msgstr "Affichages aujourd'hui"
+msgid "Machine-readable name"
+msgstr "Nom système"
+msgid ""
+"This account's default language for e-mails, and preferred language "
+"for site presentation."
+msgstr ""
+"La langue par défaut de ce compte pour les courriels, et la langue "
+"préférée de présentation du site."
+msgid "Text format"
+msgstr "Format de texte"
+msgid "The name of the site."
+msgstr "Le nom du site."
+msgid "manage fields"
+msgstr "gérer les champs"
+msgid "The human readable label."
+msgstr "L'étiquette affichée."
+msgid "Entity API"
+msgstr "Entity API"
+msgid "If part of a book, the book to which this book page belongs."
+msgstr ""
+"Si faisant partie d'un livre, le livre auquel cette page de livre "
+"appartient."
+msgid "The unique ID of the comment."
+msgstr "L'identifiant (ID) unique du commentaire."
+msgid "The IP address of the computer the comment was posted from."
+msgstr ""
+"L'adresse IP de l'ordinateur à partir duquel le commentaire a été "
+"posté."
+msgid "The name left by the comment author."
+msgstr "Le nom laissé par l'auteur du commentaire."
+msgid "The email address left by the comment author."
+msgstr "L'adresse de courriel saisie par l'auteur du commentaire."
+msgid "The home page URL left by the comment author."
+msgstr "L'URL de la page d'accueil saisie par l'auteur du commentaire."
+msgid "The URL of the comment."
+msgstr "L'URL du commentaire."
+msgid "Edit URL"
+msgstr "Modifier l'URL"
+msgid "The URL of the comment's edit page."
+msgstr "L'URL de la page de modification du commentaire."
+msgid "The date the comment was posted."
+msgstr "La date à laquelle le commentaire a été posté."
+msgid "The comment's parent, if comment threading is active."
+msgstr ""
+"Le parent du commentaire, si le fil de discussion des commentaire est "
+"actif."
+msgid "The node the comment was posted to."
+msgstr "Le nœud sur lequel le commentaire a été posté."
+msgid "The number of comments posted on a node."
+msgstr "Le nombre de commentaires postés sur un nœud."
+msgid "New comment count"
+msgstr "Comptage des nouveaux commentaires"
+msgid ""
+"The number of comments posted on a node since the reader last viewed "
+"it."
+msgstr ""
+"Le nombre de commentaires postés sur un nœud depuis la dernière "
+"consultation du lecteur."
+msgid "The unique ID of the node."
+msgstr "L'identifiant (ID) unique du nœud."
+msgid "The type of the node."
+msgstr "Le type du nœud."
+msgid "The language the node is written in."
+msgstr "La langue dans laquelle le nœud est écrit."
+msgid "The URL of the node."
+msgstr "L'URL du nœud."
+msgid "The URL of the node's edit page."
+msgstr "L'URL de la page d'édition du nœud."
+msgid "Date changed"
+msgstr "Date de modification"
+msgid "The date the node was most recently updated."
+msgstr "La date à laquelle le nœud a été le plus récemment mis à jour."
+msgid "The author of the node."
+msgstr "L'auteur du nœud."
+msgid "The number of votes that have been cast on a poll node."
+msgstr "Le nombre de votes exprimés pour un sondage."
+msgid "Poll winner"
+msgstr "Vainqueur du sondage"
+msgid "The winning poll answer."
+msgstr "La réponse gagnante du sondage."
+msgid "Poll winner votes"
+msgstr "Votes du gagnant du sondage"
+msgid "The number of votes received by the winning poll answer."
+msgstr "Le nombre de votes reçus par la réponse gagnante du sondage."
+msgid "Poll winner percent"
+msgstr "Pourcentage des votes en faveur du vainqueur du sondage"
+msgid "The percentage of votes received by the winning poll answer."
+msgstr "Le pourcentage des votes reçus par la réponse gagnante du sondage."
+msgid "The length of time the poll node is set to run."
+msgstr "La durée prévue pour le déroulement du sondage."
+msgid "The number of visitors who have read the node."
+msgstr "Le nombre de visiteurs qui ont lu le nœud."
+msgid "The number of visitors who have read the node today."
+msgstr "Le nombre de visiteurs qui ont lu le nœud aujourd'hui."
+msgid "Last view"
+msgstr "Dernière consultation"
+msgid "The date on which a visitor last read the node."
+msgstr "La date à laquelle un visiteur a lu le nœud en dernier."
+msgid "The slogan of the site."
+msgstr "Le slogan du site."
+msgid "The administrative email address for the site."
+msgstr "L'adresse de courriel administrative pour le site."
+msgid "The URL of the site's front page."
+msgstr "L'URL de la page d'accueil du site."
+msgid "Login page"
+msgstr "Page de connexion"
+msgid "The URL of the site's login page."
+msgstr "L'URL de la page de connexion du site."
+msgid "The unique ID of the uploaded file."
+msgstr "L'identifiant (ID) unique du fichier transféré."
+msgid "The name of the file on disk."
+msgstr "Le nom du fichier sur le disque."
+msgid "The size of the file, in kilobytes."
+msgstr "La taille du fichier, en kilo-octets."
+msgid "The web-accessible URL for the file."
+msgstr "L'URL du fichier accessible depuis le web"
+msgid "The date the file was most recently changed."
+msgstr "La date de modification du fichier la plus récente."
+msgid "The user who originally uploaded the file."
+msgstr "L'utilisateur qui a initialement transféré le fichier."
+msgid "The unique ID of the taxonomy term."
+msgstr "L'identifiant (ID) unique du terme de taxonomie."
+msgid "The name of the taxonomy term."
+msgstr "Le nom du terme de taxonomie."
+msgid "The optional description of the taxonomy term."
+msgstr "La description facultative du terme de taxonomie."
+msgid "The number of nodes tagged with the taxonomy term."
+msgstr "Le nombre de nœuds étiquetés avec le terme de taxonomie."
+msgid "The URL of the taxonomy term."
+msgstr "L'URL du terme taxonomie."
+msgid "The vocabulary the taxonomy term belongs to."
+msgstr "Le vocabulaire auquel appartient le terme de taxonomie."
+msgid "The unique ID of the taxonomy vocabulary."
+msgstr "L'identifiant (ID) unique du vocabulaire de taxonomie."
+msgid "The name of the taxonomy vocabulary."
+msgstr "Le nom du vocabulaire de taxonomie."
+msgid "The machine name of the taxonomy vocabulary."
+msgstr "Le nom système du vocabulaire de taxonomie."
+msgid "The optional description of the taxonomy vocabulary."
+msgstr "La description facultative du vocabulaire de taxonomie."
+msgid "Term count"
+msgstr "Nombre de termes"
+msgid "The number of terms belonging to the taxonomy vocabulary."
+msgstr "Le nombre de termes appartenant au vocabulaire de taxonomie."
+msgid "The unique ID of the user account."
+msgstr "L'identifiant unique (ID) du compte d'utilisateur."
+msgid "The login name of the user account."
+msgstr "Le nom de login du compte de l'utilisateur."
+msgid "The email address of the user account."
+msgstr "L'adresse de courriel du compte utilisateur."
+msgid "The URL of the account profile page."
+msgstr "L'URL de la page du profil du compte."
+msgid "The url of the account edit page."
+msgstr "L'URL de la page de modification du compte."
+msgid "The date the user last logged in to the site."
+msgstr "La date de la dernière connexion de l'utilisateur sur le site."
+msgid "The date the user account was created."
+msgstr "La date de création du compte de l'utilisateur."
+msgid "All parent terms"
+msgstr "Tous les termes parents"
+msgid "The unique ID of the node's revision."
+msgstr "L'identifiant (ID) unique de la révision du nœud."
+msgid "Is new"
+msgstr "Est nouveau"
+msgid "Whether the node is new and not saved to the database yet."
+msgstr ""
+"Si le nœud est nouveau et pas encore enregistré dans la base de "
+"données."
+msgid "Promoted to frontpage"
+msgstr "Promu en page d'accueil"
+msgid "Whether the node is promoted to the frontpage."
+msgstr "Si le nœud est promu en page d'accueil."
+msgid "Sticky in lists"
+msgstr "Affiché en haut des listes"
+msgid "Whether the node is displayed at the top of lists in which it appears."
+msgstr ""
+"Si le nœud est affiché en haut des listes dans lesquelles il "
+"apparaît."
+msgid "Comments allowed"
+msgstr "Commentaires autorisés"
+msgid ""
+"Whether comments are allowed on this node: 0 = no, 1 = closed (read "
+"only), 2 = open (read/write)."
+msgstr ""
+"Si les commentaires sont autorisés sur ce nœud : 0 = non, 1 = "
+"fermés (lecture seule), 2 = ouverts (lecture / écriture)."
+msgid "manage display"
+msgstr "gérer l'affichage"
+msgid "Revision log message"
+msgstr "Message du journal de révision"
+msgid "The subject of the comment."
+msgstr "Le sujet du commentaire."
+msgid "The currently logged in user."
+msgstr "L'utilisateur actuellement connecté."
+msgid ""
+"The weight of the term, which is used for ordering terms during "
+"display."
+msgstr ""
+"Le poids du terme, qui est utilisé pour ordonner les termes lors de "
+"l'affichage."
+msgid "The parent terms of the taxonomy term."
+msgstr "Les termes parents du terme de taxonomie."
+msgid "The roles of the user."
+msgstr "Les rôles de l'utilisateur."
+msgid "The file description"
+msgstr "La description du fichier"
+msgid "Translation source node"
+msgstr "Nœud source de la traduction"
+msgid "A module provides this configuration."
+msgstr "Un module fournit cette configuration."
+msgid "Current page"
+msgstr "Page courante"
+msgid "The configuration is fixed and cannot be changed."
+msgstr "La configuration est figée et ne peut pas être changée."
+msgid "This configuration is provided by a module, but has been changed."
+msgstr "Cette configuration est fournie par un module, mais a été modifiée."
+msgid "A custom configuration by a user."
+msgstr "Une configuration personnalisée par un utilisateur."
+msgid ""
+"In case a new revision is to be saved, the log entry explaining the "
+"changes for this version."
+msgstr ""
+"Dans le cas où une nouvelle révision doit être enregistrée, "
+"l'entrée du journal expliquant les changements pour cette version."
+msgid "Creates revision"
+msgstr "Crée une révision"
+msgid "Whether saving this node creates a new revision."
+msgstr "Si sauvegarde de ce nœud créé une nouvelle révision."
+msgid "The current date and time."
+msgstr "La date et l'heure actuelle."
+msgid "view mode"
+msgstr "mode d'affichage"
+msgid "View mode"
+msgstr "Mode d'affichage"
+msgid "List handling"
+msgstr "Gestion de listes"
+msgid "Show first (if present)"
+msgstr "Afficher le premier (si présent)"
+msgid "Show item count"
+msgstr "Afficher le nombre d'éléments"
+msgid "List seperator"
+msgstr "Séparateur de liste"
+msgid "Link this field to its entity"
+msgstr "Lier ce champ à son entité"
+msgid "Use human-readable name"
+msgstr "Utiliser un nom affiché"
+msgid ""
+"If this is checked, the values' names will be displayed instead of "
+"their internal identifiers."
+msgstr ""
+"Si ceci est coché, les noms des valeurs seront affichés plutôt que "
+"leurs identifiants internes."
+msgid "@entity \"@property\" property."
+msgstr "Propriété \"@property\" de l'entité @entity."
+msgid "The machine-readable name identifying this @entity."
+msgstr "Le nom système identifiant cette entité @entity."
+msgid "Internal, numeric @entity ID"
+msgstr "Identifiant numérique interne de l'entité @entity"
+msgid "The ID used to identify this @entity internally."
+msgstr ""
+"L'identifiant utilisé pour identifier en interne cette entité "
+"@entity."
+msgid "@entity ID"
+msgstr "Identifiant de @entity"
+msgid "The unique ID of the @entity."
+msgstr "L'identifiant unique de @entity."
+msgid "After saving a new @entity"
+msgstr "Après l'enregistrement d'une nouvelle entité @entity"
+msgid "created @entity"
+msgstr "Entité @entity créée"
+msgid "After updating an existing @entity"
+msgstr "Après la mise à jour d'une entité @entity existante"
+msgid "updated @entity"
+msgstr "Entité @entity mise à jour"
+msgid "Before saving a @entity"
+msgstr "Avant d'enregistrer une entité @entity"
+msgid "saved @entity"
+msgstr "Entité @entity enregistrée"
+msgid "After deleting a @entity"
+msgstr "Après la suppression d'une entité @entity"
+msgid "deleted @entity"
+msgstr "Entité @entity supprimée"
+msgid "Are you sure you want to revert the %entity %label?"
+msgstr "Êtes-vous sûr(e) de vouloir rétablir %entity %label ?"
+msgid "Are you sure you want to delete the %entity %label?"
+msgstr "Êtes-vous sûr(e) de vouloir supprimer %entity %label ?"
+msgid "Reverted %entity %label to the defaults."
+msgstr "%entity %label rétablie aux réglages par défaut."
+msgid "Deleted %entity %label."
+msgstr "%entity %label supprimé(e)."
+msgid "Add @entity_type"
+msgstr "Ajouter un type d'entité @entity_type"
+msgid "Edit @label"
+msgstr "Modifier @label"
+msgid "Clone @label"
+msgstr "Cloner @label"
+msgid "Revert @label"
+msgstr "Réinitialiser @label"
+msgid "Delete @label"
+msgstr "Supprimer @label"
+msgid "Machine-readable names must not consist of numbers only."
+msgstr "Les noms système ne doivent pas comporter que des nombres."
+msgid "The author of the comment."
+msgstr "L'auteur du commentaire."
+msgid "(No information available)"
+msgstr "(Aucune information disponible)"
+msgid ""
+"For importing copy the content of the text area and paste it into the "
+"import page."
+msgstr ""
+"Pour l'importation, copiez le contenu de la zone de texte et collez-le "
+"dans la page d'import."
+msgid "Paste an exported %entity_type here."
+msgstr "Coller un type d'entité %entity_type exporté ici."
+msgid "Imported %entity %label."
+msgstr "%entity %label importé(e)."
+msgid "Export @label"
+msgstr "Exporter @label"
+msgid "Import @entity_type"
+msgstr "Importer @entity_type"
+msgid "Enables modules to work with any entity type and to provide entities."
+msgstr ""
+"Permet aux modules de travailler avec n'importe quel type d'entité et "
+"de fournir des entités."
+msgid "Entity tokens"
+msgstr "Jetons d'entité"
+msgid ""
+"Provides token replacements for all properties that have no tokens and "
+"are known to the entity API."
+msgstr ""
+"Fournit des jetons de substitution pour toutes les propriétés qui "
+"n'ont pas de jeton mais sont connues d'Entity API."
+msgid "The original-language version of this node, if one exists."
+msgstr "La version dans la langue originale de ce nœud, s'il en existe une."
+msgid "The file."
+msgstr "Le fichier."
+msgid "Whether the file is being displayed."
+msgstr "Si le fichier est affiché."
+msgid "The image file."
+msgstr "Le fichier image."
+msgid "The main body text"
+msgstr "Le corps du texte"
+msgid "Information related to the current page request."
+msgstr "Informations relatives à la demande de page en cours."
+msgid "The internal Drupal path of the current page request."
+msgstr "Le chemin interne de Drupal de la requête de page en cours."
+msgid "The full URL of the current page request."
+msgstr "L'URL complète de la demande de page en cours."
+msgid "Associated @label via the @label's @property."
+msgstr "@label associé via le @property du @label."
+msgid "Entity id"
+msgstr "Id de l'entité"
+msgid "unchanged entity"
+msgstr "entité inchangée"
+msgid "Only one view mode is available for this entity type."
+msgstr "Un seul mode d'affichage est disponible pour ce type d'entité."
+msgid "Add @label"
+msgstr "Ajouter @label"
+msgid "Rendered entity"
+msgstr "Entité rendue"
+msgid "@entity is viewed"
+msgstr "L'entité @entity est vue"
+msgid "viewed @entity"
+msgstr "entité @entity vue"
+msgid "Nodes represent the main site content items."
+msgstr "Les nœuds représentent les éléments principaux du contenu du site."
+msgid "Uploaded file."
+msgstr "Fichier transféré."
+msgid "Remark or note that refers to a node."
+msgstr "Remarque ou note se référant à un nœud."
+msgid "Taxonomy terms are used for classifying content."
+msgstr "Les termes de taxonomie sont utilisés pour classifier le contenu."
+msgid ""
+"Vocabularies contain related taxonomy terms, which are used for "
+"classifying content."
+msgstr ""
+"Les vocabulaires contiennent des termes de taxonomie connexes qui sont "
+"utilisés pour classer le contenu."
+msgid "Whether the comment is published or unpublished."
+msgstr "Si le commentaire est publié ou non."
+msgid "Whether the node is published or unpublished."
+msgstr "Si le nœud est publié ou non."
+msgid "Whether the user is active or blocked."
+msgstr "Si l'utilisateur est actif ou bloqué."
+msgid "Restrict this relationship to one or more @bundles."
+msgstr "Restreindre cette relation à un ou plusieurs paquets @bundle."
+msgid "The date the user last accessed the site."
+msgstr ""
+"La date à laquelle l'utilisateur à accedé au site pour la dernière "
+"fois."
+msgid "Rendered @entity-type"
+msgstr "Type d'entité @entity-type rendu"
+msgid "Renders a single entity in a specific view mode (e.g. teaser)."
+msgstr ""
+"Rend une entité unique dans un mode d'affichage spécifique (par ex. "
+"accroche)."
+msgid "Concatenate values using a seperator"
+msgstr "Concaténer les valeurs en utilisant un séparateur"
+msgid "Format interval"
+msgstr "Mettre en forme l'intervalle"
+msgid ""
+"If checked, the value will be formatted as a time interval. Otherwise, "
+"just the number of seconds will be displayed."
+msgstr ""
+"Si coché, la valeur sera mise en forme comme intervalle de temps. "
+"Sinon, seul le nombre de secondes sera affiché."
+msgid "Specify how many different units to display."
+msgstr "Spécifier combien d'unités différentes afficher."
+msgid "Text to put before the duration text."
+msgstr "Texte à placer avant le texte de durée."
+msgid "Text to put after the duration text."
+msgstr "Texte à placer après le texte de durée."
+msgid "Show entity label"
+msgstr "Afficher l'étiquette de l'entité"
+msgid "Show entity ID"
+msgstr "Afficher l'identifiant de l'entité"
+msgid "Show complete entity"
+msgstr "Afficher l'entité complète"
+msgid "Decide how this field will be displayed."
+msgstr "Décider comment ce champ sera affiché."
+msgid "Link to entity"
+msgstr "Lier à l'entité"
+msgid "Link this field to the entity."
+msgstr "Lier ce champ à l'entité."
+msgid "Bypass access checks"
+msgstr "Contourner les vérifications d'accès"
+msgid "The URL of the entity."
+msgstr "L'URL de l'entité."
+msgid "The following properties may be appended to the token: @keys"
+msgstr ""
+"Les propriétés suivantes peuvent être adjointes au(x) jeton(s) : "
+"@keys"
+msgid "Tokens related to the \"@name\" entities."
+msgstr "Jetons associés aux entités \"@name\"."
+msgid "@name tokens."
+msgstr "Jetons de @name."
+msgid "List of @entities"
+msgstr "Liste de @entities"
+msgid "List of @type values"
+msgstr "Liste de valeurs @type"
+msgid "Tokens for lists of @type values."
+msgstr "Jetons (tokens) pour les listes de valeurs @type."
+msgid "@type with delta @delta"
+msgstr "@type avec un delta de @delta"
+msgid ""
+"The list item with delta @delta. Delta values start from 0 and are "
+"incremented by one per list item."
+msgstr ""
+"L'élément de liste avec delta @delta. Les valeurs Delta commencent "
+"à partir de 0 et sont incrémentés de 1 par élément de liste."
+msgid "Rendered @entity_type"
+msgstr "@entity_type rendu(e)"
+msgid "Rendered @entity_type using view mode \"@view_mode\""
+msgstr "@entity_type rendu(e) avec le mode d'affichage \"@view_mode\""
+msgid "The \"Alt\" attribute text"
+msgstr "Le texte de l'attribut \"Alt\""
+msgid "The \"Title\" attribute text"
+msgstr "Le texte de l'attribut \"Title\""
+msgid "Field \"@name\"."
+msgstr "Champ  \"@name\"."
+msgid "The language code of the current user interface language."
+msgstr "Le code de langue de la langue de l'interface de l'utilisateur actuel."
+msgid "The language code of the current content language."
+msgstr "Le code de langue de la langue du contenu actuel."
+msgid "Displays a single chosen entity."
+msgstr "Affiche une entité choisie unique."
+msgid "Choose the entity type you want to display in the area."
+msgstr "Choisissez le type d'entité que vous souhaitez afficher dans la zone."
+msgid "Choose the entity you want to display in the area."
+msgstr "Choisissez l'entité que vous souhaitez afficher dans la zone."
+msgid "@label @entity_type:@entity_id"
+msgstr "@label @entity_type:@entity_id"
+msgid "The user's default theme."
+msgstr "Le thème par défaut de l'utilisateur."
+msgid "Output values as list"
+msgstr "Afficher les valeurs en tant que liste"
+msgid ""
+"If enabled, access permissions for rendering the entity are not "
+"checked."
+msgstr ""
+"Si l'option est activée, les permissions pour afficher l'entité ne "
+"seront pas vérifiées."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/entity-7.x-1.x.fr_3.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,696 @@
+# French translation of Entity API (7.x-1.9)
+# Copyright (c) 2018 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Entity API (7.x-1.9)\n"
+"POT-Creation-Date: 2018-02-14 21:45+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Title"
+msgstr "Titre"
+msgid "delete"
+msgstr "supprimer"
+msgid "Status"
+msgstr "Etat"
+msgid "Prefix"
+msgstr "Préfixe"
+msgid "Suffix"
+msgstr "Suffixe"
+msgid "Operations"
+msgstr "Actions"
+msgid "Email address"
+msgstr "Adresse de courriel"
+msgid "Author"
+msgstr "Auteur"
+msgid "yes"
+msgstr "oui"
+msgid "Subject"
+msgstr "Objet"
+msgid "Description"
+msgstr "Description"
+msgid "Language"
+msgstr "Langue"
+msgid "Comments"
+msgstr "Commentaires"
+msgid "Home page"
+msgstr "Page d'accueil"
+msgid "Weight"
+msgstr "Poids"
+msgid "Parent"
+msgstr "Parent"
+msgid "Name"
+msgstr "Nom"
+msgid "edit"
+msgstr "modifier"
+msgid "Import"
+msgstr "Importer"
+msgid "Book"
+msgstr "Livre"
+msgid "Export"
+msgstr "Exporter"
+msgid "Node ID"
+msgstr "Identifiant (ID) du nœud"
+msgid "Label"
+msgstr "Étiquette"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Summary"
+msgstr "Résumé"
+msgid "URL"
+msgstr "URL"
+msgid "Path"
+msgstr "Chemin"
+msgid "Display"
+msgstr "Affichage"
+msgid "Text"
+msgstr "Texte"
+msgid "Timestamp"
+msgstr "Horodatage"
+msgid "Content type"
+msgstr "Type de contenu"
+msgid "Email"
+msgstr "Courriel"
+msgid "Files"
+msgstr "Fichiers"
+msgid "User ID"
+msgstr "Identifiant (ID) utilisateur"
+msgid "no"
+msgstr "non"
+msgid "Created"
+msgstr "Créé(e)"
+msgid "Node"
+msgstr "Nœud"
+msgid "Active"
+msgstr "Actif"
+msgid "Taxonomy terms"
+msgstr "Termes de taxonomie"
+msgid "Custom"
+msgstr "Personnalisé"
+msgid "Revision ID"
+msgstr "Identifiant (ID) de révision"
+msgid "Comment ID"
+msgstr "Identifiant (ID) du commentaire"
+msgid "Published"
+msgstr "Publié"
+msgid "Revisions"
+msgstr "Révisions"
+msgid "Poll duration"
+msgstr "Durée du sondage"
+msgid "Poll votes"
+msgstr "Votes de sondage"
+msgid "File ID"
+msgstr "Identifiant (ID) de fichier"
+msgid "File name"
+msgstr "Nom du fichier"
+msgid "File size"
+msgstr "Taille du fichier"
+msgid "Vocabulary"
+msgstr "Vocabulaire"
+msgid "Vocabulary ID"
+msgstr "Identifiant (ID) de vocabulaire"
+msgid "Term ID"
+msgstr "Identifiant (ID) du terme"
+msgid "Last access"
+msgstr "Dernier accès"
+msgid "Last login"
+msgstr "Dernière connexion"
+msgid "Overridden"
+msgstr "Supplanté"
+msgid "Nodes"
+msgstr "Nœuds"
+msgid "Owner"
+msgstr "Propriétaire"
+msgid "List type"
+msgstr "Type de liste"
+msgid "Users"
+msgstr "Utilisateurs"
+msgid "Anonymous"
+msgstr "Anonyme"
+msgid "IP Address"
+msgstr "Adresse IP"
+msgid "false"
+msgstr "faux"
+msgid "true"
+msgstr "vrai"
+msgid "Granularity"
+msgstr "Granularité"
+msgid "Entity"
+msgstr "Entité"
+msgid "None."
+msgstr "Aucun."
+msgid "Fixed"
+msgstr "Fixe"
+msgid "Import failed."
+msgstr "L'importation a échoué."
+msgid "Blocked"
+msgstr "Bloqué"
+msgid "Parent terms"
+msgstr "Termes parents"
+msgid "revert"
+msgstr "rétablir"
+msgid "Date created"
+msgstr "Date de création"
+msgid "Unpublished"
+msgstr "Non publié"
+msgid "Slogan"
+msgstr "Slogan"
+msgid "Language neutral"
+msgstr "Indépendant de la langue"
+msgid "Interface language"
+msgstr "Langue de l'interface"
+msgid "Unordered"
+msgstr "Non ordonné"
+msgid "Ordered"
+msgstr "Ordonné"
+msgid "Machine name"
+msgstr "Nom système"
+msgid "Node count"
+msgstr "Comptage des nœuds"
+msgid "Number of views"
+msgstr "Nombre de lectures"
+msgid "Default theme"
+msgstr "Thème par défaut"
+msgid "Content language"
+msgstr "Langue du contenu"
+msgid "clone"
+msgstr "cloner"
+msgid "Entity type"
+msgstr "Type d'entité"
+msgid "User roles"
+msgstr "Rôles de l'utilisateur"
+msgid "export"
+msgstr "exporter"
+msgid "translate"
+msgstr "traduire"
+msgid "Users who have created accounts on your site."
+msgstr "Utilisateurs qui ont créé des comptes sur votre site."
+msgid "MIME type"
+msgstr "Type MIME"
+msgid "Taxonomy vocabularies"
+msgstr "Vocabulaires de taxonomie"
+msgid "The MIME type of the file."
+msgstr "Le type MIME du fichier."
+msgid "Logged in user"
+msgstr "Utilisateur connecté"
+msgid "Overwrite"
+msgstr "Écraser"
+msgid "Current date"
+msgstr "Date actuelle"
+msgid "Comment count"
+msgstr "Nombre de commentaires"
+msgid "The title of the node."
+msgstr "Le titre du nœud."
+msgid "The date the node was posted."
+msgstr "La date à laquelle le nœud a été posté."
+msgid "Views today"
+msgstr "Affichages aujourd'hui"
+msgid "Machine-readable name"
+msgstr "Nom système"
+msgid ""
+"This account's default language for e-mails, and preferred language "
+"for site presentation."
+msgstr ""
+"La langue par défaut de ce compte pour les courriels, et la langue "
+"préférée de présentation du site."
+msgid "Text format"
+msgstr "Format de texte"
+msgid "The name of the site."
+msgstr "Le nom du site."
+msgid "manage fields"
+msgstr "gérer les champs"
+msgid "The human readable label."
+msgstr "L'étiquette affichée."
+msgid "Entity API"
+msgstr "Entity API"
+msgid "If part of a book, the book to which this book page belongs."
+msgstr ""
+"Si faisant partie d'un livre, le livre auquel cette page de livre "
+"appartient."
+msgid "The unique ID of the comment."
+msgstr "L'identifiant (ID) unique du commentaire."
+msgid "The IP address of the computer the comment was posted from."
+msgstr ""
+"L'adresse IP de l'ordinateur à partir duquel le commentaire a été "
+"posté."
+msgid "The name left by the comment author."
+msgstr "Le nom laissé par l'auteur du commentaire."
+msgid "The email address left by the comment author."
+msgstr "L'adresse de courriel saisie par l'auteur du commentaire."
+msgid "The home page URL left by the comment author."
+msgstr "L'URL de la page d'accueil saisie par l'auteur du commentaire."
+msgid "The URL of the comment."
+msgstr "L'URL du commentaire."
+msgid "Edit URL"
+msgstr "Modifier l'URL"
+msgid "The URL of the comment's edit page."
+msgstr "L'URL de la page de modification du commentaire."
+msgid "The date the comment was posted."
+msgstr "La date à laquelle le commentaire a été posté."
+msgid "The comment's parent, if comment threading is active."
+msgstr ""
+"Le parent du commentaire, si le fil de discussion des commentaire est "
+"actif."
+msgid "The node the comment was posted to."
+msgstr "Le nœud sur lequel le commentaire a été posté."
+msgid "The number of comments posted on a node."
+msgstr "Le nombre de commentaires postés sur un nœud."
+msgid "New comment count"
+msgstr "Comptage des nouveaux commentaires"
+msgid ""
+"The number of comments posted on a node since the reader last viewed "
+"it."
+msgstr ""
+"Le nombre de commentaires postés sur un nœud depuis la dernière "
+"consultation du lecteur."
+msgid "The unique ID of the node."
+msgstr "L'identifiant (ID) unique du nœud."
+msgid "The type of the node."
+msgstr "Le type du nœud."
+msgid "The language the node is written in."
+msgstr "La langue dans laquelle le nœud est écrit."
+msgid "The URL of the node."
+msgstr "L'URL du nœud."
+msgid "The URL of the node's edit page."
+msgstr "L'URL de la page d'édition du nœud."
+msgid "Date changed"
+msgstr "Date de modification"
+msgid "The date the node was most recently updated."
+msgstr "La date à laquelle le nœud a été le plus récemment mis à jour."
+msgid "The author of the node."
+msgstr "L'auteur du nœud."
+msgid "The number of votes that have been cast on a poll node."
+msgstr "Le nombre de votes exprimés pour un sondage."
+msgid "Poll winner"
+msgstr "Vainqueur du sondage"
+msgid "The winning poll answer."
+msgstr "La réponse gagnante du sondage."
+msgid "Poll winner votes"
+msgstr "Votes du gagnant du sondage"
+msgid "The number of votes received by the winning poll answer."
+msgstr "Le nombre de votes reçus par la réponse gagnante du sondage."
+msgid "Poll winner percent"
+msgstr "Pourcentage des votes en faveur du vainqueur du sondage"
+msgid "The percentage of votes received by the winning poll answer."
+msgstr "Le pourcentage des votes reçus par la réponse gagnante du sondage."
+msgid "The length of time the poll node is set to run."
+msgstr "La durée prévue pour le déroulement du sondage."
+msgid "The number of visitors who have read the node."
+msgstr "Le nombre de visiteurs qui ont lu le nœud."
+msgid "The number of visitors who have read the node today."
+msgstr "Le nombre de visiteurs qui ont lu le nœud aujourd'hui."
+msgid "Last view"
+msgstr "Dernière consultation"
+msgid "The date on which a visitor last read the node."
+msgstr "La date à laquelle un visiteur a lu le nœud en dernier."
+msgid "The slogan of the site."
+msgstr "Le slogan du site."
+msgid "The administrative email address for the site."
+msgstr "L'adresse de courriel administrative pour le site."
+msgid "The URL of the site's front page."
+msgstr "L'URL de la page d'accueil du site."
+msgid "Login page"
+msgstr "Page de connexion"
+msgid "The URL of the site's login page."
+msgstr "L'URL de la page de connexion du site."
+msgid "The unique ID of the uploaded file."
+msgstr "L'identifiant (ID) unique du fichier transféré."
+msgid "The name of the file on disk."
+msgstr "Le nom du fichier sur le disque."
+msgid "The size of the file, in kilobytes."
+msgstr "La taille du fichier, en kilo-octets."
+msgid "The web-accessible URL for the file."
+msgstr "L'URL du fichier accessible depuis le web"
+msgid "The date the file was most recently changed."
+msgstr "La date de modification du fichier la plus récente."
+msgid "The user who originally uploaded the file."
+msgstr "L'utilisateur qui a initialement transféré le fichier."
+msgid "The unique ID of the taxonomy term."
+msgstr "L'identifiant (ID) unique du terme de taxonomie."
+msgid "The name of the taxonomy term."
+msgstr "Le nom du terme de taxonomie."
+msgid "The optional description of the taxonomy term."
+msgstr "La description facultative du terme de taxonomie."
+msgid "The number of nodes tagged with the taxonomy term."
+msgstr "Le nombre de nœuds étiquetés avec le terme de taxonomie."
+msgid "The URL of the taxonomy term."
+msgstr "L'URL du terme taxonomie."
+msgid "The vocabulary the taxonomy term belongs to."
+msgstr "Le vocabulaire auquel appartient le terme de taxonomie."
+msgid "The unique ID of the taxonomy vocabulary."
+msgstr "L'identifiant (ID) unique du vocabulaire de taxonomie."
+msgid "The name of the taxonomy vocabulary."
+msgstr "Le nom du vocabulaire de taxonomie."
+msgid "The machine name of the taxonomy vocabulary."
+msgstr "Le nom système du vocabulaire de taxonomie."
+msgid "The optional description of the taxonomy vocabulary."
+msgstr "La description facultative du vocabulaire de taxonomie."
+msgid "Term count"
+msgstr "Nombre de termes"
+msgid "The number of terms belonging to the taxonomy vocabulary."
+msgstr "Le nombre de termes appartenant au vocabulaire de taxonomie."
+msgid "The unique ID of the user account."
+msgstr "L'identifiant unique (ID) du compte d'utilisateur."
+msgid "The login name of the user account."
+msgstr "Le nom de login du compte de l'utilisateur."
+msgid "The email address of the user account."
+msgstr "L'adresse de courriel du compte utilisateur."
+msgid "The URL of the account profile page."
+msgstr "L'URL de la page du profil du compte."
+msgid "The url of the account edit page."
+msgstr "L'URL de la page de modification du compte."
+msgid "The date the user last logged in to the site."
+msgstr "La date de la dernière connexion de l'utilisateur sur le site."
+msgid "The date the user account was created."
+msgstr "La date de création du compte de l'utilisateur."
+msgid "All parent terms"
+msgstr "Tous les termes parents"
+msgid "The unique ID of the node's revision."
+msgstr "L'identifiant (ID) unique de la révision du nœud."
+msgid "Is new"
+msgstr "Est nouveau"
+msgid "Whether the node is new and not saved to the database yet."
+msgstr ""
+"Si le nœud est nouveau et pas encore enregistré dans la base de "
+"données."
+msgid "Promoted to frontpage"
+msgstr "Promu en page d'accueil"
+msgid "Whether the node is promoted to the frontpage."
+msgstr "Si le nœud est promu en page d'accueil."
+msgid "Sticky in lists"
+msgstr "Affiché en haut des listes"
+msgid "Whether the node is displayed at the top of lists in which it appears."
+msgstr ""
+"Si le nœud est affiché en haut des listes dans lesquelles il "
+"apparaît."
+msgid "Comments allowed"
+msgstr "Commentaires autorisés"
+msgid ""
+"Whether comments are allowed on this node: 0 = no, 1 = closed (read "
+"only), 2 = open (read/write)."
+msgstr ""
+"Si les commentaires sont autorisés sur ce nœud : 0 = non, 1 = "
+"fermés (lecture seule), 2 = ouverts (lecture / écriture)."
+msgid "manage display"
+msgstr "gérer l'affichage"
+msgid "Revision log message"
+msgstr "Message du journal de révision"
+msgid "The subject of the comment."
+msgstr "Le sujet du commentaire."
+msgid "The currently logged in user."
+msgstr "L'utilisateur actuellement connecté."
+msgid ""
+"The weight of the term, which is used for ordering terms during "
+"display."
+msgstr ""
+"Le poids du terme, qui est utilisé pour ordonner les termes lors de "
+"l'affichage."
+msgid "The parent terms of the taxonomy term."
+msgstr "Les termes parents du terme de taxonomie."
+msgid "The roles of the user."
+msgstr "Les rôles de l'utilisateur."
+msgid "The file description"
+msgstr "La description du fichier"
+msgid "Translation source node"
+msgstr "Nœud source de la traduction"
+msgid "A module provides this configuration."
+msgstr "Un module fournit cette configuration."
+msgid "Current page"
+msgstr "Page courante"
+msgid "The configuration is fixed and cannot be changed."
+msgstr "La configuration est figée et ne peut pas être changée."
+msgid "This configuration is provided by a module, but has been changed."
+msgstr "Cette configuration est fournie par un module, mais a été modifiée."
+msgid "A custom configuration by a user."
+msgstr "Une configuration personnalisée par un utilisateur."
+msgid ""
+"In case a new revision is to be saved, the log entry explaining the "
+"changes for this version."
+msgstr ""
+"Dans le cas où une nouvelle révision doit être enregistrée, "
+"l'entrée du journal expliquant les changements pour cette version."
+msgid "Creates revision"
+msgstr "Crée une révision"
+msgid "Whether saving this node creates a new revision."
+msgstr "Si sauvegarde de ce nœud créé une nouvelle révision."
+msgid "The current date and time."
+msgstr "La date et l'heure actuelle."
+msgid "view mode"
+msgstr "mode d'affichage"
+msgid "Data selector"
+msgstr "Sélecteur des données"
+msgid "View mode"
+msgstr "Mode d'affichage"
+msgid "List handling"
+msgstr "Gestion de listes"
+msgid "Show first (if present)"
+msgstr "Afficher le premier (si présent)"
+msgid "Show item count"
+msgstr "Afficher le nombre d'éléments"
+msgid "List seperator"
+msgstr "Séparateur de liste"
+msgid "Link this field to its entity"
+msgstr "Lier ce champ à son entité"
+msgid "Use human-readable name"
+msgstr "Utiliser un nom affiché"
+msgid ""
+"If this is checked, the values' names will be displayed instead of "
+"their internal identifiers."
+msgstr ""
+"Si ceci est coché, les noms des valeurs seront affichés plutôt que "
+"leurs identifiants internes."
+msgid "@entity \"@property\" property."
+msgstr "Propriété \"@property\" de l'entité @entity."
+msgid "The machine-readable name identifying this @entity."
+msgstr "Le nom système identifiant cette entité @entity."
+msgid "Internal, numeric @entity ID"
+msgstr "Identifiant numérique interne de l'entité @entity"
+msgid "The ID used to identify this @entity internally."
+msgstr ""
+"L'identifiant utilisé pour identifier en interne cette entité "
+"@entity."
+msgid "@entity ID"
+msgstr "Identifiant de @entity"
+msgid "The unique ID of the @entity."
+msgstr "L'identifiant unique de @entity."
+msgid "After saving a new @entity"
+msgstr "Après l'enregistrement d'une nouvelle entité @entity"
+msgid "created @entity"
+msgstr "Entité @entity créée"
+msgid "After updating an existing @entity"
+msgstr "Après la mise à jour d'une entité @entity existante"
+msgid "updated @entity"
+msgstr "Entité @entity mise à jour"
+msgid "Before saving a @entity"
+msgstr "Avant d'enregistrer une entité @entity"
+msgid "saved @entity"
+msgstr "Entité @entity enregistrée"
+msgid "After deleting a @entity"
+msgstr "Après la suppression d'une entité @entity"
+msgid "deleted @entity"
+msgstr "Entité @entity supprimée"
+msgid "Are you sure you want to revert the %entity %label?"
+msgstr "Êtes-vous sûr(e) de vouloir rétablir %entity %label ?"
+msgid "Are you sure you want to delete the %entity %label?"
+msgstr "Êtes-vous sûr(e) de vouloir supprimer %entity %label ?"
+msgid "Reverted %entity %label to the defaults."
+msgstr "%entity %label rétablie aux réglages par défaut."
+msgid "Deleted %entity %label."
+msgstr "%entity %label supprimé(e)."
+msgid "Add @entity_type"
+msgstr "Ajouter un type d'entité @entity_type"
+msgid "Edit @label"
+msgstr "Modifier @label"
+msgid "Clone @label"
+msgstr "Cloner @label"
+msgid "Revert @label"
+msgstr "Réinitialiser @label"
+msgid "Delete @label"
+msgstr "Supprimer @label"
+msgid "Machine-readable names must not consist of numbers only."
+msgstr "Les noms système ne doivent pas comporter que des nombres."
+msgid "The author of the comment."
+msgstr "L'auteur du commentaire."
+msgid "(No information available)"
+msgstr "(Aucune information disponible)"
+msgid ""
+"For importing copy the content of the text area and paste it into the "
+"import page."
+msgstr ""
+"Pour l'importation, copiez le contenu de la zone de texte et collez-le "
+"dans la page d'import."
+msgid "Paste an exported %entity_type here."
+msgstr "Coller un type d'entité %entity_type exporté ici."
+msgid "Imported %entity %label."
+msgstr "%entity %label importé(e)."
+msgid "Export @label"
+msgstr "Exporter @label"
+msgid "Import @entity_type"
+msgstr "Importer @entity_type"
+msgid "Enables modules to work with any entity type and to provide entities."
+msgstr ""
+"Permet aux modules de travailler avec n'importe quel type d'entité et "
+"de fournir des entités."
+msgid "Entity tokens"
+msgstr "Jetons d'entité"
+msgid ""
+"Provides token replacements for all properties that have no tokens and "
+"are known to the entity API."
+msgstr ""
+"Fournit des jetons de substitution pour toutes les propriétés qui "
+"n'ont pas de jeton mais sont connues d'Entity API."
+msgid "The original-language version of this node, if one exists."
+msgstr "La version dans la langue originale de ce nœud, s'il en existe une."
+msgid "The file."
+msgstr "Le fichier."
+msgid "Whether the file is being displayed."
+msgstr "Si le fichier est affiché."
+msgid "The image file."
+msgstr "Le fichier image."
+msgid "The main body text"
+msgstr "Le corps du texte"
+msgid "Information related to the current page request."
+msgstr "Informations relatives à la demande de page en cours."
+msgid "The internal Drupal path of the current page request."
+msgstr "Le chemin interne de Drupal de la requête de page en cours."
+msgid "The full URL of the current page request."
+msgstr "L'URL complète de la demande de page en cours."
+msgid "Associated @label via the @label's @property."
+msgstr "@label associé via le @property du @label."
+msgid "Entity id"
+msgstr "Id de l'entité"
+msgid "unchanged entity"
+msgstr "entité inchangée"
+msgid "Only one view mode is available for this entity type."
+msgstr "Un seul mode d'affichage est disponible pour ce type d'entité."
+msgid "Add @label"
+msgstr "Ajouter @label"
+msgid "Rendered entity"
+msgstr "Entité rendue"
+msgid "@entity is viewed"
+msgstr "L'entité @entity est vue"
+msgid "viewed @entity"
+msgstr "entité @entity vue"
+msgid "Nodes represent the main site content items."
+msgstr "Les nœuds représentent les éléments principaux du contenu du site."
+msgid "Uploaded file."
+msgstr "Fichier transféré."
+msgid "Remark or note that refers to a node."
+msgstr "Remarque ou note se référant à un nœud."
+msgid "Taxonomy terms are used for classifying content."
+msgstr "Les termes de taxonomie sont utilisés pour classifier le contenu."
+msgid ""
+"Vocabularies contain related taxonomy terms, which are used for "
+"classifying content."
+msgstr ""
+"Les vocabulaires contiennent des termes de taxonomie connexes qui sont "
+"utilisés pour classer le contenu."
+msgid "Whether the comment is published or unpublished."
+msgstr "Si le commentaire est publié ou non."
+msgid "Whether the node is published or unpublished."
+msgstr "Si le nœud est publié ou non."
+msgid "Whether the user is active or blocked."
+msgstr "Si l'utilisateur est actif ou bloqué."
+msgid "Restrict this relationship to one or more @bundles."
+msgstr "Restreindre cette relation à un ou plusieurs paquets @bundle."
+msgid "The date the user last accessed the site."
+msgstr ""
+"La date à laquelle l'utilisateur à accedé au site pour la dernière "
+"fois."
+msgid "Rendered @entity-type"
+msgstr "Type d'entité @entity-type rendu"
+msgid "Renders a single entity in a specific view mode (e.g. teaser)."
+msgstr ""
+"Rend une entité unique dans un mode d'affichage spécifique (par ex. "
+"accroche)."
+msgid "Concatenate values using a seperator"
+msgstr "Concaténer les valeurs en utilisant un séparateur"
+msgid "Format interval"
+msgstr "Mettre en forme l'intervalle"
+msgid ""
+"If checked, the value will be formatted as a time interval. Otherwise, "
+"just the number of seconds will be displayed."
+msgstr ""
+"Si coché, la valeur sera mise en forme comme intervalle de temps. "
+"Sinon, seul le nombre de secondes sera affiché."
+msgid "Specify how many different units to display."
+msgstr "Spécifier combien d'unités différentes afficher."
+msgid "Text to put before the duration text."
+msgstr "Texte à placer avant le texte de durée."
+msgid "Text to put after the duration text."
+msgstr "Texte à placer après le texte de durée."
+msgid "Show entity label"
+msgstr "Afficher l'étiquette de l'entité"
+msgid "Show entity ID"
+msgstr "Afficher l'identifiant de l'entité"
+msgid "Show complete entity"
+msgstr "Afficher l'entité complète"
+msgid "Decide how this field will be displayed."
+msgstr "Décider comment ce champ sera affiché."
+msgid "Link to entity"
+msgstr "Lier à l'entité"
+msgid "Link this field to the entity."
+msgstr "Lier ce champ à l'entité."
+msgid "Bypass access checks"
+msgstr "Contourner les vérifications d'accès"
+msgid "The URL of the entity."
+msgstr "L'URL de l'entité."
+msgid "The following properties may be appended to the token: @keys"
+msgstr ""
+"Les propriétés suivantes peuvent être adjointes au(x) jeton(s) : "
+"@keys"
+msgid "Tokens related to the \"@name\" entities."
+msgstr "Jetons associés aux entités \"@name\"."
+msgid "@name tokens."
+msgstr "Jetons de @name."
+msgid "List of @entities"
+msgstr "Liste de @entities"
+msgid "List of @type values"
+msgstr "Liste de valeurs @type"
+msgid "Tokens for lists of @type values."
+msgstr "Jetons (tokens) pour les listes de valeurs @type."
+msgid "@type with delta @delta"
+msgstr "@type avec un delta de @delta"
+msgid ""
+"The list item with delta @delta. Delta values start from 0 and are "
+"incremented by one per list item."
+msgstr ""
+"L'élément de liste avec delta @delta. Les valeurs Delta commencent "
+"à partir de 0 et sont incrémentés de 1 par élément de liste."
+msgid "Rendered @entity_type"
+msgstr "@entity_type rendu(e)"
+msgid "Rendered @entity_type using view mode \"@view_mode\""
+msgstr "@entity_type rendu(e) avec le mode d'affichage \"@view_mode\""
+msgid "The \"Alt\" attribute text"
+msgstr "Le texte de l'attribut \"Alt\""
+msgid "The \"Title\" attribute text"
+msgstr "Le texte de l'attribut \"Title\""
+msgid "Field \"@name\"."
+msgstr "Champ  \"@name\"."
+msgid "The language code of the current user interface language."
+msgstr "Le code de langue de la langue de l'interface de l'utilisateur actuel."
+msgid "The language code of the current content language."
+msgstr "Le code de langue de la langue du contenu actuel."
+msgid "Displays a single chosen entity."
+msgstr "Affiche une entité choisie unique."
+msgid "Choose the entity type you want to display in the area."
+msgstr "Choisissez le type d'entité que vous souhaitez afficher dans la zone."
+msgid "@label @entity_type:@entity_id"
+msgstr "@label @entity_type:@entity_id"
+msgid "The user's default theme."
+msgstr "Le thème par défaut de l'utilisateur."
+msgid "Output values as list"
+msgstr "Afficher les valeurs en tant que liste"
+msgid ""
+"If enabled, access permissions for rendering the entity are not "
+"checked."
+msgstr ""
+"Si l'option est activée, les permissions pour afficher l'entité ne "
+"seront pas vérifiées."
+msgid "The node comments."
+msgstr "Les commentaires de nœud."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/entityqueue-7.x-1.1.fr_0.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,120 @@
+# French translation of Entityqueue (7.x-1.1)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Entityqueue (7.x-1.1)\n"
+"POT-Creation-Date: 2017-11-10 06:38+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Home"
+msgstr "Accueil"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Author"
+msgstr "Auteur"
+msgid "Actions"
+msgstr "Actions"
+msgid "Remove"
+msgstr "Retirer"
+msgid "Language"
+msgstr "Langue"
+msgid "Content types"
+msgstr "Types de contenu"
+msgid "Weight"
+msgstr "Poids"
+msgid "Name"
+msgstr "Nom"
+msgid "Label"
+msgstr "Étiquette"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Add item"
+msgstr "Ajouter un élément"
+msgid "Configure"
+msgstr "Configurer"
+msgid "Module"
+msgstr "Module"
+msgid "Contains"
+msgstr "Contient"
+msgid "Items"
+msgstr "Éléments"
+msgid "Id"
+msgstr "Identifiant (ID)"
+msgid "Shuffle"
+msgstr "Mélanger"
+msgid "Handler"
+msgstr "Gestionnaire"
+msgid "Size of textfield"
+msgstr "Taille du champ texte"
+msgid "1 item"
+msgid_plural "@count items"
+msgstr[0] "@count élement"
+msgstr[1] "@count éléments"
+msgid "Clear"
+msgstr "Vider"
+msgid "Target type"
+msgstr "Type cible"
+msgid "Reverse"
+msgstr "Inversé"
+msgid "Machine name"
+msgstr "Nom système"
+msgid "Entity type"
+msgstr "Type d'entité"
+msgid "Queue"
+msgstr "File"
+msgid "Autocomplete matching"
+msgstr "Correspondance de l'autocomplétion"
+msgid "Starts with"
+msgstr "Commence par"
+msgid "Bundles"
+msgstr "Paquets"
+msgid "Queues"
+msgstr "Files d'attente"
+msgid "Broken/missing handler"
+msgstr "Gestionnaire défectueux/manquant"
+msgid "Subqueues"
+msgstr "Sous-files"
+msgid "Subqueue ID"
+msgstr "Identifiant de sous-file"
+msgid "queue"
+msgstr "file d'attente"
+msgid "Limit to one or more queues (recommended)"
+msgstr "Limiter à une ou deux files (recommandé)"
+msgid "In code"
+msgstr "Dans le code"
+msgid "Machine name: @name"
+msgstr "Nom système : @name"
+msgid "In database"
+msgstr "Dans la base de données"
+msgid "A module provides this configuration."
+msgstr "Un module fournit cette configuration."
+msgid "This configuration is provided by a module, but has been changed."
+msgstr "Cette configuration est fournie par un module, mais a été modifiée."
+msgid "A custom configuration by a user."
+msgstr "Une configuration personnalisée par un utilisateur."
+msgid "Manipulate all queues"
+msgstr "Manipuler toutes les files"
+msgid "Database overriding code"
+msgstr "Configuration en base de données supplantant le code"
+msgid "The selected handler is broken."
+msgstr "Le gestionnaire sélectionné est brisé."
+msgid ""
+"The bundles of the entity type that can be referenced. Optional, leave "
+"empty for all bundles."
+msgstr ""
+"Les paquets de l'entité pouvant être référencés. Facultatif, "
+"laisser vide pour tous les paquets."
+msgid "Simple queue"
+msgstr "File simple"
+msgid "- Restricted access -"
+msgstr "- Accès restreint -"
+msgid "No items."
+msgstr "Aucun élément."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/entityqueue-7.x-1.1.fr_1.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,120 @@
+# French translation of Entityqueue (7.x-1.1)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Entityqueue (7.x-1.1)\n"
+"POT-Creation-Date: 2017-11-10 06:38+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Home"
+msgstr "Accueil"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Author"
+msgstr "Auteur"
+msgid "Actions"
+msgstr "Actions"
+msgid "Remove"
+msgstr "Retirer"
+msgid "Language"
+msgstr "Langue"
+msgid "Content types"
+msgstr "Types de contenu"
+msgid "Weight"
+msgstr "Poids"
+msgid "Name"
+msgstr "Nom"
+msgid "Label"
+msgstr "Étiquette"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Add item"
+msgstr "Ajouter un élément"
+msgid "Configure"
+msgstr "Configurer"
+msgid "Module"
+msgstr "Module"
+msgid "Contains"
+msgstr "Contient"
+msgid "Items"
+msgstr "Éléments"
+msgid "Id"
+msgstr "Identifiant (ID)"
+msgid "Shuffle"
+msgstr "Mélanger"
+msgid "Handler"
+msgstr "Gestionnaire"
+msgid "Size of textfield"
+msgstr "Taille du champ texte"
+msgid "1 item"
+msgid_plural "@count items"
+msgstr[0] "@count élement"
+msgstr[1] "@count éléments"
+msgid "Clear"
+msgstr "Vider"
+msgid "Target type"
+msgstr "Type cible"
+msgid "Reverse"
+msgstr "Inversé"
+msgid "Machine name"
+msgstr "Nom système"
+msgid "Entity type"
+msgstr "Type d'entité"
+msgid "Queue"
+msgstr "File"
+msgid "Autocomplete matching"
+msgstr "Correspondance de l'autocomplétion"
+msgid "Starts with"
+msgstr "Commence par"
+msgid "Bundles"
+msgstr "Paquets"
+msgid "Queues"
+msgstr "Files d'attente"
+msgid "Broken/missing handler"
+msgstr "Gestionnaire défectueux/manquant"
+msgid "Subqueues"
+msgstr "Sous-files"
+msgid "Subqueue ID"
+msgstr "Identifiant de sous-file"
+msgid "queue"
+msgstr "file d'attente"
+msgid "Limit to one or more queues (recommended)"
+msgstr "Limiter à une ou deux files (recommandé)"
+msgid "In code"
+msgstr "Dans le code"
+msgid "Machine name: @name"
+msgstr "Nom système : @name"
+msgid "In database"
+msgstr "Dans la base de données"
+msgid "A module provides this configuration."
+msgstr "Un module fournit cette configuration."
+msgid "This configuration is provided by a module, but has been changed."
+msgstr "Cette configuration est fournie par un module, mais a été modifiée."
+msgid "A custom configuration by a user."
+msgstr "Une configuration personnalisée par un utilisateur."
+msgid "Manipulate all queues"
+msgstr "Manipuler toutes les files"
+msgid "Database overriding code"
+msgstr "Configuration en base de données supplantant le code"
+msgid "The selected handler is broken."
+msgstr "Le gestionnaire sélectionné est brisé."
+msgid ""
+"The bundles of the entity type that can be referenced. Optional, leave "
+"empty for all bundles."
+msgstr ""
+"Les paquets de l'entité pouvant être référencés. Facultatif, "
+"laisser vide pour tous les paquets."
+msgid "Simple queue"
+msgstr "File simple"
+msgid "- Restricted access -"
+msgstr "- Accès restreint -"
+msgid "No items."
+msgstr "Aucun élément."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/features-7.x-2.x.fr_2.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,260 @@
+# French translation of Features (7.x-2.7)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Features (7.x-2.7)\n"
+"POT-Creation-Date: 2017-11-10 06:38+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Home"
+msgstr "Accueil"
+msgid "Status"
+msgstr "Etat"
+msgid "Actions"
+msgstr "Actions"
+msgid "Description"
+msgstr "Description"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Administration"
+msgstr "Administration"
+msgid "Taxonomy"
+msgstr "Taxonomie"
+msgid "Content types"
+msgstr "Types de contenu"
+msgid "Version"
+msgstr "Version"
+msgid "all"
+msgstr "tout"
+msgid "Search"
+msgstr "Rechercher"
+msgid "Settings"
+msgstr "Paramètres"
+msgid "Name"
+msgstr "Nom"
+msgid "General settings"
+msgstr "Paramètres généraux"
+msgid "Default"
+msgstr "Par défaut"
+msgid "View"
+msgstr "Voir"
+msgid "Manage"
+msgstr "Gérer"
+msgid "Refresh"
+msgstr "Actualiser"
+msgid "Components"
+msgstr "Composants"
+msgid " in "
+msgstr " dans "
+msgid "Check"
+msgstr "Vérifier"
+msgid "Roles"
+msgstr "Rôles"
+msgid "Signature"
+msgstr "Signature"
+msgid "Fields"
+msgstr "Champs"
+msgid "Overridden"
+msgstr "Supplanté"
+msgid "Normal"
+msgstr "Normal"
+msgid "State"
+msgstr "État"
+msgid "Cleanup"
+msgstr "Nettoyer"
+msgid "Other"
+msgstr "Autre"
+msgid "Select all"
+msgstr "Tout sélectionner"
+msgid "Deselect all"
+msgstr "Tout désélectionner"
+msgid "Filters"
+msgstr "Filtres"
+msgid "Save settings"
+msgstr "Enregistrer les paramètres"
+msgid "Clear"
+msgstr "Vider"
+msgid "Languages"
+msgstr "Langues"
+msgid "Features"
+msgstr "Fonctionnalités"
+msgid "Feature"
+msgstr "Fonctionnalité"
+msgid "Missing"
+msgstr "Manquant"
+msgid "Permissions"
+msgstr "Droits"
+msgid "Manage features"
+msgstr "Gérer les fonctionnalités (features)"
+msgid "Conflict"
+msgstr "Conflit"
+msgid "Advanced Options"
+msgstr "Options avancées"
+msgid "Menus"
+msgstr "Menus"
+msgid "Overrides"
+msgstr "Supplante"
+msgid "Unavailable"
+msgstr "Indisponible"
+msgid "Package"
+msgstr "Paquet"
+msgid "Rebuilding"
+msgstr "Reconstruire"
+msgid ""
+"The URL %url is invalid. Please enter a fully-qualified URL, such as "
+"http://www.example.com/feed.xml."
+msgstr ""
+"L'URL %url est invalide. Veuillez saisir une URL complète, telle que "
+"http://www.exemple.com/flux.xml."
+msgid "Menu items"
+msgstr "Eléments de menu"
+msgid "Menu links"
+msgstr "Liens de menu"
+msgid "Legend"
+msgstr "Légende"
+msgid "Unmet dependencies: !dependencies"
+msgstr "Dépendances non vérifiées : !dependencies"
+msgid "Checking..."
+msgstr "Vérification..."
+msgid "No changes have been made to this feature."
+msgstr "Aucun changement n'a été fait sur cette fonctionnalité (feature)."
+msgid "Machine-readable name"
+msgstr "Nom système"
+msgid "Download feature"
+msgstr "Télécharger la fonctionnalité (feature)"
+msgid "Enable and disable features."
+msgstr "Activer et désactiver les fonctionnalités (features)."
+msgid "Display components of a feature."
+msgstr "Afficher les composants d'une fonctionnalité (feature)."
+msgid "Compare default and current feature."
+msgstr "Comparer la fonctionnalité (feature) courante et celle par défaut."
+msgid "Javascript status call back."
+msgstr "Procédure de rappel (callback) de statut javascript"
+msgid "Menu items for any enabled features."
+msgstr ""
+"Eléments de menu pour toutes les fonctionnalités (features) "
+"activées."
+msgid "Provides feature management for Drupal."
+msgstr "Fournit une interface d'aministration de Features pour Drupal."
+msgid "Dependency"
+msgstr "Dépendance"
+msgid "No features available."
+msgstr "Aucune fonctionnalité (feature) disponible."
+msgid "Lock"
+msgstr "Verrouiller"
+msgid "Structure"
+msgstr "Structure"
+msgid "Example: Image gallery"
+msgstr "Exemple : Image gallery"
+msgid "Example: image_gallery"
+msgstr "Exemple : Image_gallery"
+msgid ""
+"May only contain lowercase letters, numbers and underscores. "
+"<strong>Try to avoid conflicts with the names of existing Drupal "
+"projects.</strong>"
+msgstr ""
+"Ce nom ne doit contenir que des lettres minuscules, des chiffres et "
+"des tirets-bas (_). <strong>Essayer d'éviter les conflits avec des "
+"noms de modules Drupal existants.</strong>"
+msgid ""
+"Provide a short description of what users should expect when they "
+"enable your feature."
+msgstr ""
+"Fournit une courte description de ce que les utilisateurs peuvent "
+"espérer obtenir en activant votre fonctionnalité (feature)."
+msgid "URL of update XML"
+msgstr "URL de mise à jour XML"
+msgid "features"
+msgstr "fonctionnalités (features)"
+msgid "Create feature"
+msgstr "Créer une fonctionnalité (feature)"
+msgid "Create a new feature."
+msgstr "Créer une nouvelle fonctionnalité (feature)"
+msgid "Auto-detected"
+msgstr "Auto-détecté"
+msgid "Provided by dependency"
+msgstr "Fournit"
+msgid "Recreate"
+msgstr "Recréer"
+msgid "Revert components"
+msgstr "Revenir à une version antérieure des composants"
+msgid "Mark as reviewed"
+msgstr "Marquer comme vu"
+msgid "@actioning @module_name / @component."
+msgstr "@actioning @module_name / @component."
+msgid "@action completed for @module_name / @component."
+msgstr "@action terminé(e) pour @module_name / @component."
+msgid "Manage features."
+msgstr "Administrer Features."
+msgid "Recreate an existing feature."
+msgstr "Recréer une fonctionnalité (feature) existante."
+msgid "Review overrides"
+msgstr "Examiner les surcharges"
+msgid "Needs review"
+msgstr "Nécessite une vérification"
+msgid "Text formats"
+msgstr "Formats de texte"
+msgid "Image styles"
+msgstr "Styles d'images"
+msgid "Required by: !dependents"
+msgstr "Requis par : !dependents"
+msgid "Conflicts with: !conflicts"
+msgstr "En conflit avec : !conflicts"
+msgid "@module does not appear to include the @include file."
+msgstr "@module semble ne pas inclure le fichier @include."
+msgid "The file @filename has been deprecated and can be removed."
+msgstr "Le fichier @filename est déprécié et peut-être supprimé."
+msgid "Conflicts with another feature"
+msgstr "En conflit avec une autre fonctionnalité"
+msgid "General Information"
+msgstr "Information générale"
+msgid "Administer features"
+msgstr "Administrer les Fonctionnalités (Features)"
+msgid "Perform administration tasks on features."
+msgstr ""
+"Effectue des taches d'administration sur les fonctionnalités "
+"(features)."
+msgid "View, enable and disable features."
+msgstr "Voir, activer et désactiver les fonctionnalités (features)"
+msgid "Examples: 7.x-1.0, 7.x-1.0-beta1"
+msgstr "Exemples : 7.x-1.0, 7.x-1.0-beta1"
+msgid "Create Feature"
+msgstr "Créer une Fonctionnalité"
+msgid "Do not begin name with numbers."
+msgstr "Le nom ne doit pas commencer par des chiffres."
+msgid "Organize your features in groups."
+msgstr "Organisez vos fonctionnalités en groupes."
+msgid "URL of Feature Server.  For Example: http://mywebsite.com/fserver"
+msgstr ""
+"URL du serveur de fonctionnalités. Par exemple : "
+"http://monsiteweb.com/fserver"
+msgid "Path to Generate feature module"
+msgstr "Chemin pour la génération du module de la fonctionnalité"
+msgid "Generate feature"
+msgstr "Générer une fonctionnalité"
+msgid "Preview .info file"
+msgstr "Prévisualiser le fichier .info"
+msgid "Add auto-detected dependencies"
+msgstr "Ajouter les dépendances auto-détectées"
+msgid "Allow conflicts to be added"
+msgstr "Permettre l'ajout de confilts"
+msgid "DEPRECATED"
+msgstr "OBSOLÈTE"
+msgid "Field Bases"
+msgstr "Champs de base"
+msgid "Field Instances"
+msgstr "Instances de Champ"
+msgid "@name (@machine)"
+msgstr "@name (@machine)"
+msgid "@component [@items]"
+msgstr "@component [@items]"
+msgid "Generate features"
+msgstr "Générer des fonctionnalités"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/file_entity-7.x-2.x.fr_3.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,725 @@
+# French translation of File Entity (fieldable files) (7.x-2.16)
+# Copyright (c) 2018 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: File Entity (fieldable files) (7.x-2.16)\n"
+"POT-Creation-Date: 2018-02-11 22:44+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Title"
+msgstr "Titre"
+msgid "Previous"
+msgstr "Précédent"
+msgid "Next"
+msgstr "Suivant"
+msgid "user"
+msgstr "utilisateur"
+msgid "Save configuration"
+msgstr "Enregistrer la configuration"
+msgid "enable"
+msgstr "activer"
+msgid "delete"
+msgstr "supprimer"
+msgid "Status"
+msgstr "Etat"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Submit"
+msgstr "Soumettre"
+msgid "Operations"
+msgstr "Actions"
+msgid "Type"
+msgstr "Type"
+msgid "Author"
+msgstr "Auteur"
+msgid "yes"
+msgstr "oui"
+msgid "List"
+msgstr "Lister"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Description"
+msgstr "Description"
+msgid "more"
+msgstr "plus"
+msgid "Enable"
+msgstr "Activer"
+msgid "Disable"
+msgstr "Désactiver"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Download"
+msgstr "Téléchargement"
+msgid "File"
+msgstr "Fichier"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Size"
+msgstr "Taille"
+msgid "Reset"
+msgstr "Réinitialiser"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "Use count"
+msgstr "Nombre d'utilisations"
+msgid "Display settings"
+msgstr "Paramètres d'affichage"
+msgid "This action cannot be undone."
+msgstr "Cette action est irréversible."
+msgid "Weight"
+msgstr "Poids"
+msgid "Link"
+msgstr "Lien"
+msgid "Image"
+msgstr "Image"
+msgid "Name"
+msgstr "Nom"
+msgid "Preview"
+msgstr "Aperçu"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Update"
+msgstr "Mettre à jour"
+msgid "Archive"
+msgstr "Archiver"
+msgid "View"
+msgstr "Voir"
+msgid "Audio"
+msgstr "Audio"
+msgid "URL"
+msgstr "URL"
+msgid "Filename"
+msgstr "Nom du fichier"
+msgid "Teaser"
+msgstr "Accroche"
+msgid "The username %name does not exist."
+msgstr "Le nom d'utilisateur %name n'existe pas."
+msgid "Updated"
+msgstr "Mis à jour"
+msgid "Advanced search"
+msgstr "Recherche avancée"
+msgid "Unknown"
+msgstr "Inconnu"
+msgid "Upload"
+msgstr "Transférer"
+msgid "type"
+msgstr "type"
+msgid "User"
+msgstr "Utilisateur"
+msgid "Files"
+msgstr "Fichiers"
+msgid "file"
+msgstr "fichier"
+msgid "no"
+msgstr "non"
+msgid "Update options"
+msgstr "Mettre à jour les options"
+msgid "Display links"
+msgstr "Afficher les liens"
+msgid "RSS"
+msgstr "RSS"
+msgid "Filter"
+msgstr "Filtrer"
+msgid "URL alias"
+msgstr "Alias d'URL"
+msgid "File name"
+msgstr "Nom du fichier"
+msgid "Width"
+msgstr "Largeur"
+msgid "Height"
+msgstr "Hauteur"
+msgid "Media"
+msgstr "Média"
+msgid "Load"
+msgstr "Charger"
+msgid "System"
+msgstr "Système"
+msgid "Desc"
+msgstr "Desc"
+msgid "security"
+msgstr "sécurité"
+msgid "Loop"
+msgstr "Boucle"
+msgid "File type"
+msgstr "Type de fichier"
+msgid "Link text"
+msgstr "Texte du lien"
+msgid "Destination"
+msgstr "Destination"
+msgid "Anonymous"
+msgstr "Anonyme"
+msgid "Pattern"
+msgstr "Motif"
+msgid "Operation"
+msgstr "Opération"
+msgid "Sort by"
+msgstr "Trier par"
+msgid "Leave blank for %anonymous."
+msgstr "Laisser vide pour %anonymous."
+msgid "Tokens"
+msgstr "Jetons (tokens)"
+msgid "‹ previous"
+msgstr "‹ précédent"
+msgid "next ›"
+msgstr "suivant ›"
+msgid "No items selected."
+msgstr "Aucun élément sélectionné."
+msgid "The update has been performed."
+msgstr "La mise à jour a été effectuée."
+msgid "Refine"
+msgstr "Affiner"
+msgid "Undo"
+msgstr "Annuler"
+msgid "Add file"
+msgstr "Ajouter un fichier"
+msgid "Entity"
+msgstr "Entité"
+msgid "Revert"
+msgstr "Rétablir"
+msgid "any"
+msgstr "tous"
+msgid "Video"
+msgstr "Vidéo"
+msgid "revert"
+msgstr "rétablir"
+msgid "Your settings have been saved."
+msgstr "Vos paramètres ont été enregistrés."
+msgid "File settings"
+msgstr "Paramètres des fichiers"
+msgid "Download link"
+msgstr "Lien de téléchargement"
+msgid "Document"
+msgstr "Document"
+msgid "@type: deleted %title."
+msgstr "@type : %title supprimé."
+msgid "Processing"
+msgstr "En cours de traitement"
+msgid "disable"
+msgstr "désactiver"
+msgid "File types"
+msgstr "Types de fichiers"
+msgid "Apply"
+msgstr "Appliquer"
+msgid "Used in"
+msgstr "Utilisé dans"
+msgid "The update has encountered an error."
+msgstr "La mise à jour a échoué."
+msgid "1 item successfully processed:"
+msgid_plural "@count items successfully processed:"
+msgstr[0] "1 élément traité avec succès :"
+msgstr[1] "@count éléments traités avec succès :"
+msgid "Autoplay"
+msgstr "Lecture automatique"
+msgid "URL path settings"
+msgstr "Paramètres des chemins d'URL"
+msgid "File paths"
+msgstr "Chemins des fichiers"
+msgid "Maximum upload size"
+msgstr "Taille maximale de transfert"
+msgid "Usage"
+msgstr "Utilisation"
+msgid "« first"
+msgstr "« premier"
+msgid "last »"
+msgstr "dernier »"
+msgid "File display"
+msgstr "Affichage du fichier"
+msgid "Show only items where"
+msgstr "Montrer seulement les éléments pour lesquels"
+msgid "Devel"
+msgstr "Devel"
+msgid "@type: updated %title."
+msgstr "@type : %title mis à jour."
+msgid "\"@s\" content"
+msgstr "Contenu de \"@s\""
+msgid "Offset"
+msgstr "Décalage"
+msgid "Containing any of the words"
+msgstr "Contenant n'importe lequel des mots"
+msgid "Containing the phrase"
+msgstr "Contenant l'expression"
+msgid "Containing none of the words"
+msgstr "Ne contenant aucun des mots"
+msgid "Only of the type(s)"
+msgstr "Seulement du ou des types"
+msgid "Keyword relevance"
+msgstr "Pertinence des mots clés"
+msgid "Recently posted"
+msgstr "Posté récemment"
+msgid "Factor"
+msgstr "Facteur"
+msgid "Text to display"
+msgstr "Texte à afficher"
+msgid "@type %title has been deleted."
+msgstr "Le contenu '%title', de type '@type', a été supprimé."
+msgid "Entity type"
+msgstr "Type d'entité"
+msgid "Title only"
+msgstr "Titre seulement"
+msgid "Uploaded"
+msgstr "Transféré"
+msgid "pixels"
+msgstr "pixels"
+msgid "Generate"
+msgstr "Générer"
+msgid "Display type"
+msgstr "Type d'affichage"
+msgid "The specified file %name could not be uploaded."
+msgstr "Le fichier spécifié %name n'a pas pu être transféré."
+msgid "scheme"
+msgstr "schéma"
+msgid "Delete selected files"
+msgstr "Supprimer les fichiers sélectionnés"
+msgid "No files available."
+msgstr "Aucun fichier disponible."
+msgid "MIME type"
+msgstr "Type MIME"
+msgid "Search index"
+msgstr "Index de recherche"
+msgid "File preview"
+msgstr "Aperçu du fichier"
+msgid "@type %title has been updated."
+msgstr "Le contenu '%title', de type '@type', a été mis à jour."
+msgid "Delete link"
+msgstr "Lien de suppression"
+msgid "View files"
+msgstr "Voir les fichiers"
+msgid "Download URL"
+msgstr "URL de téléchargement"
+msgid "Edit link"
+msgstr "Lien de modification"
+msgid "Fullscreen"
+msgstr "Plein écran"
+msgid "The name of the file."
+msgstr "Le nom du fichier."
+msgid "Items per page"
+msgstr "Éléments par page"
+msgid "- All -"
+msgstr "- Tout -"
+msgid "Machine-readable name"
+msgstr "Nom système"
+msgid "An error occurred and processing did not complete."
+msgstr "Une erreur s'est produite et le traitement ne s'est pas terminé."
+msgid "Binary Data"
+msgstr "Donnée binaire"
+msgid "manage fields"
+msgstr "gérer les champs"
+msgid "User information"
+msgstr "Information utilisateur"
+msgid "Render"
+msgstr "Rendu"
+msgid "Edit URL"
+msgstr "Modifier l'URL"
+msgid "manage display"
+msgstr "gérer l'affichage"
+msgid "Are you sure you want to delete this item?"
+msgid_plural "Are you sure you want to delete these items?"
+msgstr[0] "Êtes-vous sûr(e) de vouloir supprimer cet élément ?"
+msgstr[1] "Êtes-vous sûr(e) de vouloir supprimer ces éléments ?"
+msgid "<em>Edit @type</em> @title"
+msgstr "<em>Modifier @type</em> @title"
+msgid "Full content"
+msgstr "Contenu complet"
+msgid "Search result"
+msgstr "Résultat de la recherche"
+msgid "Cannot extract %file, not a valid archive."
+msgstr "Impossible d'extraire %file, ce n'est pas une archive valide."
+msgid "Image style"
+msgstr "Style d'image"
+msgid "The file does not exist."
+msgstr "Le fichier n'existe pas."
+msgid "Upload a new file"
+msgstr "Transférer un nouveau fichier"
+msgid "An error occurred and no file was uploaded."
+msgstr "Une erreur est survenue et aucun fichier n'a été transféré."
+msgid "Manage files used on your site."
+msgstr "Gérer les fichiers utilisés sur votre site."
+msgid "Output machine name"
+msgstr "Afficher le nom système"
+msgid "Preload"
+msgstr "Préchargement"
+msgid "None (original image)"
+msgstr "Aucun (image d'origine)"
+msgid "An error occurred while processing @operation with arguments : @args"
+msgstr ""
+"Une erreur est survenue lors du traitement de @operation avec pour "
+"arguments : @args"
+msgid "Update URL alias"
+msgstr "Mettre à jour l'alias d'URL"
+msgid "View mode"
+msgstr "Mode d'affichage"
+msgid "and where %property is %value"
+msgstr "et où %property est %value"
+msgid "where %property is %value"
+msgstr "où %property est %value"
+msgid "and where"
+msgstr "et où"
+msgid "Weight for @title"
+msgstr "Poids pour @title"
+msgid "Start upload"
+msgstr "Démarrer le transfert"
+msgid "Asc"
+msgstr "Asc"
+msgid "File count"
+msgstr "Compteur de fichiers"
+msgid "Master"
+msgstr "Maître"
+msgid "View mode: %mode"
+msgstr "Mode d'affichage : %mode"
+msgid "Associated with"
+msgstr "Associé à"
+msgid "manage file display"
+msgstr "gérer l'affichage des fichiers"
+msgid "No file types available."
+msgstr "Aucun type de fichier disponible."
+msgid "Enabled displays"
+msgstr "Affichages activés"
+msgid "Display precedence order"
+msgstr "Ordre de priorité des affichages"
+msgid ""
+"When a file is uploaded to this website, it is assigned one of the "
+"following types, based on what kind of file it is."
+msgstr ""
+"Quand un fichier est transféré sur ce site, l'un des types suivants "
+"lui est assigné, en fonction de quelle sorte de fichier c'est."
+msgid "Manage file types"
+msgstr "Gérer les types de fichiers"
+msgid "Manage file display"
+msgstr "Gérer l'affichage des fichiers"
+msgid "File Entity"
+msgstr "Entité de fichier"
+msgid "Extends Drupal file entities to be fieldable and viewable."
+msgstr ""
+"Étend les entités Fichier de Drupal pour être extensibles par des "
+"champs et être visualisables."
+msgid "File view mode"
+msgstr "Mode d'affichage de fichier"
+msgid "Rendered file"
+msgstr "Fichier rendu"
+msgid "Display the file in a specific view mode"
+msgstr "Afficher le fichier dans un mode d'affichage spécifique"
+msgid "Are you sure you want to delete this file?"
+msgid_plural "Are you sure you want to delete these files?"
+msgstr[0] "Êtes-vous sûr(e) de vouloir supprimer ce fichier ?"
+msgstr[1] "Êtes-vous sûr(e) de vouloir supprimer ces fichiers ?"
+msgid "Tokens associated with file types."
+msgstr "Jetons associés aux types de fichiers."
+msgid "The name of the file type."
+msgstr "Le nom du type de fichier."
+msgid "The unique machine-readable name of the file type."
+msgstr "Le nom système unique de ce type de fichiers."
+msgid "The number of files belonging to the file type."
+msgstr "Le nombre de fichiers de ce type."
+msgid "The URL of the file type's edit page."
+msgstr "L'URL de la page de modification du type de fichiers."
+msgid "The file type of the file."
+msgstr "Le type du fichier."
+msgid ""
+"The type of the file (for example, \"audio\", \"image\", \"video\", "
+"etc)."
+msgstr ""
+"Le type du fichier (par exemple : \"audio\", \"image\", \"vidéo\", "
+"etc.)"
+msgid "Administer files"
+msgstr "Administrer les fichiers"
+msgid "Uploaded by !username on !datetime"
+msgstr "Transféré par !username le !datetime"
+msgid "Manage settings for the type of files used on your site."
+msgstr "Gérer les paramètres des types de fichiers utilisés sur votre site."
+msgid "Unknown file type"
+msgstr "Type de fichier inconnu"
+msgid "Display the file in a specific view mode."
+msgstr "Afficher le fichier dans un mode d'affichage spécifique."
+msgid "Use site default RSS settings"
+msgstr "Utiliser les paramètres RSS par défaut du site"
+msgid "File content"
+msgstr "Contenu du fichier"
+msgid "File title."
+msgstr "Titre du fichier."
+msgid "This file is currently in use and may cause problems if deleted."
+msgstr ""
+"Ce fichier est actuellement utilisé et cela pourrait causer des "
+"problèmes s'il était supprimé."
+msgid "Are you sure you want to delete the file %title?"
+msgstr "Êtes-vous sûr(e) de vouloir supprimer le fichier %title ?"
+msgid "@title (in use)"
+msgstr "@title (utilisé)"
+msgid ""
+"Some of the files are currently in use and may cause problems if "
+"deleted."
+msgstr ""
+"Certains des fichiers sont actuellement utilisés et leur suppression "
+"pourrait causer des problèmes."
+msgid "Deleted @count files."
+msgstr "@count fichiers supprimés."
+msgid "Deleted one file."
+msgid_plural "Deleted @count files."
+msgstr[0] "Un fichier supprimé."
+msgstr[1] "@count fichiers supprimés."
+msgid "The type of the file."
+msgstr "Le type du fichier."
+msgid "This field supports tokens."
+msgstr "Ce champ prend en charge les jetons (tokens)."
+msgid "Replace file"
+msgstr "Remplacer le fichier"
+msgid ""
+"This file will replace the existing file. This action cannot be "
+"undone."
+msgstr ""
+"Ce fichier va remplacer le fichier existant. Cette action ne peut "
+"être annulée."
+msgid "Alt attribute"
+msgstr "Attribut Alt"
+msgid "Title attribute"
+msgstr "Attribut Title"
+msgid "edit file type"
+msgstr "modifier le type de fichier"
+msgid "This is the description of the file type."
+msgstr "Ceci est la description du type de fichier."
+msgid "Mimetypes"
+msgstr "Types MIME"
+msgid "Enter one mimetype per line."
+msgstr "Saisir un type MIME par ligne."
+msgid "Mimetype List"
+msgstr "Liste des types MIME"
+msgid "The mimetype %mimetype is not a valid mimetype."
+msgstr "Le type MIME %mimetype n'est pas un type MIME valide."
+msgid "The file type %type has been updated."
+msgstr "Le type de fichier %type a été mis à jour."
+msgid "Rendered"
+msgstr "Rendu"
+msgid "An <em>Image</em> file is a still visual."
+msgstr "Un fichier <em>Image</em> est un visuel fixe."
+msgid "A <em>Video</em> file is a moving visual recording."
+msgstr "Un fichier <em>Vidéo</em> est un enregistrement visuel en mouvement."
+msgid "An <em>Audio</em> file is a sound recording."
+msgstr "Un fichier <em>Audio</em> est un enregistrement sonore."
+msgid "A <em>Document</em> file is written information."
+msgstr "Un fichier <em>Document</em> est un ensemble d'informations écrites."
+msgid "Edit file type"
+msgstr "Modifier le type de fichier"
+msgid "Bypass file access control"
+msgstr "Outrepasser le contrôle d'accès aux fichiers"
+msgid "View, edit and delete all files regardless of permission restrictions."
+msgstr ""
+"Visualiser, modifier et supprimer tout fichier sans tenir compte des "
+"restrictions de droits."
+msgid "Administer file types"
+msgstr "Administrer les types de fichiers"
+msgid "This table lists all of the places where @filename is used."
+msgstr "Ce tableau liste tous les emplacements où @filename est utilisé."
+msgid "This file is not currently used."
+msgstr "Ce fichier n'est pas utilisé actuellement."
+msgid ""
+"The text to use as value for the <em>img</em> tag <em>alt</em> "
+"attribute."
+msgstr ""
+"Le texte à utiliser comme valeur pour l'attribut <em>alt</em> de la "
+"balise <em>img</em>."
+msgid ""
+"The text to use as value for the <em>img</em> tag <em>title</em> "
+"attribute."
+msgstr ""
+"Le texte à utiliser comme valeur pour l'attribut <em>title</em> de la "
+"balise <em>img</em>."
+msgid ""
+"A unique machine-readable name for this file type. It must only "
+"contain lowercase letters, numbers, and underscores."
+msgstr ""
+"Un nom système unique pour ce type de fichier. Il ne peut contenir "
+"que des lettres minuscules, des chiffres et des traits de "
+"soulignement."
+msgid "Are you sure you want to enable the file type %type?"
+msgstr "Êtes-vous sûr(e) de vouloir activer le type de fichier %type ?"
+msgid "The file type %label has been enabled."
+msgstr "Le type de fichier %label a été activé."
+msgid "Are you sure you want to disable the file type %type?"
+msgstr "Êtes-vous sûr(e) de vouloir désactiver le type de fichier %type ?"
+msgid "The file type %label has been disabled."
+msgstr "Le type de fichier %label a été désactivé."
+msgid "Are you sure you want to revert the file type %type?"
+msgstr "Êtes-vous sûr(e) de vouloir rétablir le type de fichier %type ?"
+msgid "The file type %label has been reverted."
+msgstr "Le type de fichier %label a été rétabli."
+msgid "Are you sure you want to delete the file type %type?"
+msgstr "Êtes-vous sûr(e) de vouloir supprimer le type de fichier %type ?"
+msgid "The file type %label has been deleted."
+msgstr "Le type de fichier %label a été supprimé."
+msgid "file_entity"
+msgstr "file_entity"
+msgid "Enabled file type %label."
+msgstr "Type de fichier %label activé."
+msgid "Disabled file type %label."
+msgstr "Type de fichier %label désactivé."
+msgid "Reverted file type %label."
+msgstr "Type de fichier %label rétabli."
+msgid "Deleted file type %label."
+msgstr "Type de fichier %label supprimé."
+msgid "Deleted 1 file."
+msgid_plural "Deleted @count files."
+msgstr[0] "@count fichier supprimé."
+msgstr[1] "@count fichiers supprimés."
+msgid ""
+"%type is used by 1 file on\n"
+"      your site. If you disable this file type, you will not be able "
+"to edit\n"
+"      the %type file and it may not display correctly."
+msgid_plural ""
+"%type is used by\n"
+"      @count files on your site. If you remove %type, you will not be "
+"able to\n"
+"      edit the %type file and it may not display correctly."
+msgstr[0] ""
+"%type est utilisé par 1 fichier dans \r\n"
+"      votre site. Si vous désactivez ce type de fichier, vous ne "
+"pourrez plus \r\n"
+"      modifier le fichier %type et il pourrait ne plus s'afficher "
+"correctement."
+msgstr[1] ""
+"%type est utilisé par\r\n"
+"      @count  dans \r\n"
+"      votre site. Si vous retirez %type, vous ne pourrez plus "
+"modifier\r\n"
+"      le fichier %type et il pourrait ne plus s'afficher correctement."
+msgid ""
+"%type is used by 1 file on your site. If you remove this file type, "
+"you will not be able to edit the %type file and it may not display "
+"correctly."
+msgid_plural ""
+"%type is used by @count pieces of file on your site. If you remove "
+"%type, you will not be able to edit the %type file and it may not "
+"display correctly."
+msgstr[0] ""
+"%type est utilisé par 1 fichier dans votre site. Si vous retirez ce "
+"type de fichier, vous ne pourrez plus modifier de fichier %type et il "
+"pourrait ne plus s'afficher correctement."
+msgstr[1] ""
+"%type est utilisé par @count morceaux de fichier dans votre site. Si "
+"vous retirez ce type de fichier, vous ne pourrez plus modifier le "
+"fichier %type et il pourrait ne plus s'afficher correctement."
+msgid "@type %name was uploaded."
+msgstr "@type %name transféré(e)."
+msgid "Provide a simple link to the file entity."
+msgstr "Fournir un lien simple vers l'entité fichier."
+msgid "Provide a simple link to edit the file entity."
+msgstr "Fournir un lien simple pour modifier l'entité fichier."
+msgid "Provide a simple link to delete the file entity."
+msgstr "Fournir un lien simple pour supprimer l'entité fichier."
+msgid "Provide a simple link to download the file entity."
+msgstr "Fournir un lien simple pour télécharger l'entité fichier."
+msgid "Add and upload new files"
+msgstr "Ajouter et transférer de nouveaux fichiers"
+msgid "View own private files"
+msgstr "Voir ses propres fichiers privés"
+msgid "View own files"
+msgstr "Voir ses propres fichiers"
+msgid "View private files"
+msgstr "Voir les fichiers privés"
+msgid "Add file type"
+msgstr "Ajouter un type de fichier"
+msgid "The table {file_display} already exists."
+msgstr "La table {file_display} existe déjà."
+msgid "The table {image_dimensions} already exists."
+msgstr "La table {image_dimensions} existe déjà."
+msgid "Associated with @name"
+msgstr "Associé à @name"
+msgid "Usage link"
+msgstr "Lien d'usage"
+msgid "Provide a simple link to view the usage of the file entity."
+msgstr "Fournir un lien simple pour voir l'usage de l'entité fichier."
+msgid "Pattern for all @file_type paths."
+msgstr "Motif pour les chemins @file_type."
+msgid "Updated alias for file @fid."
+msgstr "Mise à jour de l'alias du fichier @fid."
+msgid "Updated URL alias for 1 file."
+msgid_plural "Updated URL aliases for @count files."
+msgstr[0] "Alias d'URL mis à jour pour @count fichier."
+msgstr[1] "Alias d'URL mis à jour pour @count fichiers."
+msgid "Destination: @scheme"
+msgstr "Destination : @scheme"
+msgid "%type_name: Edit own files"
+msgstr "%type_name : Modifier ses propres fichiers"
+msgid "%type_name: Edit any files"
+msgstr "%type_name : Modifier n'importe quel fichier"
+msgid "%type_name: Delete own files"
+msgstr "%type_name : Supprimer ses propres fichiers"
+msgid "%type_name: Delete any files"
+msgstr "%type_name : Supprimer n'importe quel fichier"
+msgid "%type_name: Download own files"
+msgstr "%type_name : Télécharger ses propres fichiers"
+msgid "%type_name: Download any files"
+msgstr "%type_name : Télécharger n'importe quel fichier"
+msgid "Displays a link that will force the browser to download the file."
+msgstr "Affiche un lien qui forcera le navigateur à télécharger le fichier."
+msgid "This field support tokens."
+msgstr "Ce champ prend en charge les jetons (tokens)."
+msgid "Link text: %text"
+msgstr "Texte du lien : %text"
+msgid "Cannot call _file_entity_update_entity_fields() on a new entity."
+msgstr ""
+"Impossible d'appeler _file_entity_update_entity_fields() sur une "
+"nouvelle entité."
+msgid "The URL to download the file directly."
+msgstr "L'URL pour télécharger directement le fichier."
+msgid "Download [file:name]"
+msgstr "Télécharger [file:name]"
+msgid "Default allowed file extensions"
+msgstr "Extensions de fichier autorisées par défaut"
+msgid "File upload wizard"
+msgstr "Assistant de transfert de fichier"
+msgid "Configure the steps available when uploading a new file."
+msgstr ""
+"Configurer les étapes disponibles lors du transfert d'un nouveau "
+"fichier."
+msgid ""
+"Title text is used in the tool tip when a user hovers their mouse over "
+"the image. Adding title text makes it easier to understand the context "
+"of an image and improves usability."
+msgstr ""
+"Le texte du titre est utilisé comme une infobulle lorsqu'un "
+"utilisateur survole l'image avec sa souris. Ajouter un texte du titre "
+"facilite la compréhension du contexte d'une image et améliore "
+"l'usage."
+msgid ""
+"Alternative text is used by screen readers, search engines, and when "
+"the image cannot be loaded. By adding alt text you improve "
+"accessibility and search engine optimization."
+msgstr ""
+"Le texte alternatif est utilisé par les lecteurs d'écran, les "
+"moteurs de recherche et lorsque l'image ne peut pas se charger. En "
+"ajoutant un texte alternatif, vous améliorez l'accessibilité et "
+"l'optimisation pour les moteurs de recherche."
+msgid "1 place"
+msgid_plural "@count places"
+msgstr[0] "@count emplacement"
+msgstr[1] "@count emplacements"
+msgid "Microsoft Office document icon"
+msgstr "Icône document Microsoft Office"
+msgid "Office spreadsheet icon"
+msgstr "Icône tableur Office"
+msgid "Office presentation icon"
+msgstr "Icône présentation Office"
+msgid "PDF icon"
+msgstr "Icône PDF"
+msgid "Movie icon"
+msgstr "Icône film"
+msgid "Audio icon"
+msgstr "Icône audio"
+msgid "Image icon"
+msgstr "Icône image"
+msgid "Package icon"
+msgstr "Icône paquet"
+msgid "HTML icon"
+msgstr "Icône HTML"
+msgid "Plain text icon"
+msgstr "Icône texte brut"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/media-7.x-2.x.fr_2.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,468 @@
+# French translation of Media (7.x-2.0-unstable2)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Media (7.x-2.0-unstable2)\n"
+"POT-Creation-Date: 2017-11-09 11:03+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Submit"
+msgstr "Soumettre"
+msgid "Type"
+msgstr "Type"
+msgid "Confirm"
+msgstr "Confirmer"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "more"
+msgstr "plus"
+msgid "all"
+msgstr "tout"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Reset"
+msgstr "Réinitialiser"
+msgid "Use count"
+msgstr "Nombre d'utilisations"
+msgid "Link"
+msgstr "Lien"
+msgid "none"
+msgstr "aucun(e)"
+msgid "edit"
+msgstr "modifier"
+msgid "Import"
+msgstr "Importer"
+msgid "Preview"
+msgstr "Aperçu"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Small"
+msgstr "Petit"
+msgid "Large"
+msgstr "Grand"
+msgid "Upload"
+msgstr "Transférer"
+msgid "All"
+msgstr "Tout"
+msgid "File name"
+msgstr "Nom du fichier"
+msgid "Media"
+msgstr "Média"
+msgid "Desc"
+msgstr "Desc"
+msgid "Directory"
+msgstr "Répertoire"
+msgid "Other"
+msgstr "Autre"
+msgid "Pattern"
+msgstr "Motif"
+msgid "Original"
+msgstr "Original"
+msgid "Sort by"
+msgstr "Trier par"
+msgid "Add file"
+msgstr "Ajouter un fichier"
+msgid "Match type"
+msgstr "Correspondance de type"
+msgid "options"
+msgstr "options"
+msgid "image"
+msgstr "image"
+msgid "Loading..."
+msgstr "En cours de chargement..."
+msgid "Apply"
+msgstr "Appliquer"
+msgid "Select"
+msgstr "Sélectionner"
+msgid "Thumbnails"
+msgstr "Vignettes"
+msgid "Offset"
+msgstr "Décalage"
+msgid "Any"
+msgstr "Tout"
+msgid "About"
+msgstr "À propos"
+msgid "Web"
+msgstr "Web"
+msgid "Importing"
+msgstr "Importation"
+msgid "%name: illegal value."
+msgstr "%name : valeur illégale."
+msgid "Failed to upload the file."
+msgstr "Impossible de transférer le fichier."
+msgid "No files available."
+msgstr "Aucun fichier disponible."
+msgid "Allowed extensions"
+msgstr "Extensions autorisées"
+msgid "Uses"
+msgstr "Usages"
+msgid "Upload date"
+msgstr "Date de transfert"
+msgid "Displays rows as an HTML list."
+msgstr "Affiche les lignes sous forme de liste HTML."
+msgid "Items per page"
+msgstr "Éléments par page"
+msgid "- All -"
+msgstr "- Tout -"
+msgid "Library"
+msgstr "Bibliothèque"
+msgid "Private files"
+msgstr "Fichiers privés"
+msgid "Public files"
+msgstr "Fichiers publics"
+msgid "Invalid URL."
+msgstr "URL invalide."
+msgid "Stream open: %url"
+msgstr "Ouverture du flux : %url"
+msgid "Stream opened: %parameters"
+msgstr "Flux ouvert : %parameters"
+msgid "Other match type value"
+msgstr "Valeur de l'autre type correspondant"
+msgid "Allowed streams"
+msgstr "Flux autorisés"
+msgid "Allowed mimetypes"
+msgstr "Types MIME autorisés"
+msgid ""
+"You may optionally enter one or more allowed file mimetypes for this "
+"Media type, if appropriate, separating each with a space. You may use "
+"a regular expression for matching, such as %image_match (which would "
+"match any mimetype beginning with %image) or %any_match, which would "
+"match any file mimetype."
+msgstr ""
+"Vous pouvez entrer de manière optionnelle un ou plusieurs types MIME "
+"autorisés pour ce type de Média, en les séparant chacun par un "
+"espace. Vous pouvez utiliser une expression régulière pour la "
+"détection, telle que %image_match (qui correspondrait à tout type "
+"MIME commençant par %image) ou %any_match, qui correspondrait à "
+"n'importe quel type MIME."
+msgid ""
+"You may optionally enter one or more allowed file extensions for this "
+"Media type, if appropriate, separating each with a space (and no "
+"dots)."
+msgstr ""
+"Vous pouvez entrer de manière optionnelle une ou plusieurs extensions "
+"autorisées pour ce type de Média, en les séparant chacune par un "
+"espace (et sans points)."
+msgid "The @label media type has been saved."
+msgstr "Le type de média @label a été enregistré."
+msgid "Multimedia asset"
+msgstr "Actif multimédia"
+msgid "This field stores a reference to a multimedia asset."
+msgstr "Ce champ stocke une référence à un actif multimédia."
+msgid "@scheme (@name)"
+msgstr "@scheme (@name)"
+msgid "Allowed URI schemes"
+msgstr "Schémas d'URI autorisés"
+msgid ""
+"URI schemes include public:// and private:// which are the Drupal "
+"files directories, and may also refer to remote sites."
+msgstr ""
+"Les schémas d'URI incluent public:// et private:// qui sont les "
+"répertoires de fichiers de Drupal et peuvent également se référer "
+"à des sites distants."
+msgid "Converts Media tags to Markup"
+msgstr "Convertit les balises Media en balises HTML"
+msgid "Embedding %filename"
+msgstr "Intégration de %filename"
+msgid "media"
+msgstr "média"
+msgid "Unable to render media from %tag. Error: %error"
+msgstr "Impossible d'afficher le média de %tag. Erreur : %error"
+msgid "Upload a new file"
+msgstr "Transférer un nouveau fichier"
+msgid "The file @name was uploaded"
+msgstr "Le fichier @name a été transféré"
+msgid "An error occurred and no file was uploaded."
+msgstr "Une erreur est survenue et aucun fichier n'a été transféré."
+msgid "Thumbnail for !filename."
+msgstr "Vignette pour !filename."
+msgid "Media Repository"
+msgstr "Dépôt Media"
+msgid ""
+"Media module allows you to maintain a <a href=\"@mediarepo\">media "
+"asset repository</a> where in you can add, remove, reuse your media "
+"assets. You can add the media file using upload form or from a url and "
+"also do bulk operations on the media assets."
+msgstr ""
+"Le module Media vous permet de maintenir un <a "
+"href=\"@mediarepo\">répertoire d'éléments de média</a> dans lequel "
+"vous pouvez ajouter, supprimer, réutiliser vos éléments de média. "
+"Vous pouvez ajouter le fichier média en utilisant le formulaire de "
+"transfert ou depuis une URL et aussi faire des opérations en masse "
+"sur les éléments média."
+msgid "Attaching media assets to content types"
+msgstr "Joindre des éléments média à des types de contenu"
+msgid ""
+"Media assets can be attached to content types as fields. To add a "
+"media field to a <a href=\"@content-type\">content type</a>, go to the "
+"content type's <em>manage fields</em> page, and add a new field of "
+"type <em>Multimedia Asset</em>."
+msgstr ""
+"Les éléments média peuvent être attachés aux types de contenu en "
+"tant que champs. Pour ajouter un champ média à un <a "
+"href=\"@content-type\">type de contenu</a>, allez sur la page de "
+"<em>gestion des champs</em> du type de contenu, et ajoutez un nouveau "
+"champ de type <em>Élément multimédia</em>."
+msgid "Using media assets in WYSIWYG"
+msgstr "Utilisation d'éléments médias en mode WYSIWYG"
+msgid ""
+"Media module provides rich integration with WYSIWYG editors, using "
+"Media Browser plugin you can select media asset from library to add to "
+"the rich text editor moreover you can add media asset from the media "
+"browser itself using either upload method or add from url method. To "
+"configure media with WYSIWYG you need two steps of configuration:"
+msgstr ""
+"Le module Media fournit une intégration riche avec les éditeurs "
+"WYSIWYG, en utilisant le plugin Navigateur Media vous pouvez "
+"sélectionner un élément média depuis la bibliothèque à ajouter "
+"à l'éditeur de texte riche ; de plus, vous pouvez ajouter des "
+"éléments média depuis le navigateur média lui-même en utilisant "
+"soit la méthode de transfert ou la méthode d'ajout depuis une URL. "
+"Pour configurer Media avec WYSIWYG vous avez besoin d'une "
+"configuration en deux étapes :"
+msgid ""
+"Enable WYSIWYG plugin on your desired <a "
+"href=\"@wysiwyg-profile\">WYSIWYG profile</a>. Please note that you "
+"will need to have <a href=\"@wysiwyg\">WYSIWYG</a> module enabled."
+msgstr ""
+"Activer le plugin WYSIWYG sur le <a href=\"@wysiwyg-profile\">profil "
+"WYSIWYG</a> souhaité. Veuillez noter que vous aurez besoin d'avoir le "
+"module <a href=\"@wysiwyg\">WYSIWYG</a> activé."
+msgid ""
+"Add Media Filter to the WYSIWYG enabled <a "
+"href=\"@input-format\">Input format</a>"
+msgstr ""
+"Ajouter le filtre Media au <a href=\"@input-format\">format de "
+"saisie</a> activé pour WYSIWYG"
+msgid "Manage files used on your site."
+msgstr "Gérer les fichiers utilisés sur votre site."
+msgid "Media browser"
+msgstr "Navigateur de médias"
+msgid "Media Browser for picking media and uploading new media"
+msgstr ""
+"Navigateur de médias pour choisir un média ou en transférer un "
+"nouveau"
+msgid "Media Browser test"
+msgstr "Test du navigateur de médias"
+msgid "Make it easier to test media browser"
+msgstr "Faciliter le test du navigateur de médias"
+msgid "Media browser list"
+msgstr "Liste de l'explorateur de médias"
+msgid "Ajax Callback for getting media"
+msgstr "Procédure de rappel (callback) Ajax pour récupérer un média"
+msgid "Media browser library"
+msgstr "Bibliothèque de l'explorateur de médias"
+msgid "Style selector"
+msgstr "Sélecteur de style"
+msgid "Choose a format for a piece of media"
+msgstr "Choisir le format d'un média"
+msgid "Provides the core Media API"
+msgstr "Fournit l'API du cœur de Media"
+msgid "Import these files?"
+msgstr "Importer ces fichiers ?"
+msgid "The provided directory does not exist."
+msgstr "Le répertoire renseigné n'existe pas."
+msgid "No files were found in %directory matching %pattern"
+msgstr ""
+"Aucun fichier correspondant au motif %pattern n'a été trouvé dans "
+"le répertoire %directory"
+msgid "URL or embed code"
+msgstr "URL ou code intégré (<em>embed</em>)"
+msgid "Import media"
+msgstr "Importer des médias"
+msgid "Import files into your media library."
+msgstr "Importer des fichiers dans votre bibliothèque de médias."
+msgid ""
+"Separate extensions with a space or comma and do not include the "
+"leading dot."
+msgstr ""
+"Séparer les extensions avec un espace ou une virgule sans inclure le "
+"point."
+msgid "Media file selector"
+msgstr "Sélecteur de fichier Media"
+msgid "Large filetype icon"
+msgstr "Grande icône du type de fichier"
+msgid "Current format is"
+msgstr "Le format courant est"
+msgid "Editing multiple media files"
+msgstr "Édition multiple de fichiers média"
+msgid "No file appears to have been selected."
+msgstr "Aucun fichier n'a été sélectionné."
+msgid "Start upload"
+msgstr "Démarrer le transfert"
+msgid "Click to edit details"
+msgstr "Cliquer pour modifier les détails"
+msgid "Import media files from the local filesystem"
+msgstr "Importer des fichiers multimédia depuis le système de fichier local"
+msgid "Simple file importer"
+msgstr "Importateur simple de fichier"
+msgid "@type media type settings"
+msgstr "Paramètres du type de média @type"
+msgid ""
+"Only the following types of files are allowed to be uploaded: "
+"%types-allowed"
+msgstr ""
+"Seuls les types de fichiers suivants peuvent être transférés : "
+"%types-allowed"
+msgid "Multi Edit"
+msgstr "Modifications multiples"
+msgid "%url could not be added."
+msgstr "%url n'a pas pu être ajouté."
+msgid "Unable to handle the provided embed string or URL."
+msgstr "Impossible de gérer la chaîne d'intégration ou l'URL fournie."
+msgid "Media Internet Sources"
+msgstr "Media Internet Sources"
+msgid "Provides an API for accessing media on various internet services"
+msgstr "Fournit une API pour accéder aux média de plusieurs services web"
+msgid "Asc"
+msgstr "Asc"
+msgid "Add media from remote services"
+msgstr "Ajouter des médias depuis des services distants"
+msgid "Add media from remote sources such as other websites, YouTube, etc"
+msgstr ""
+"Ajouter des médias de sources distantes telles que d'autres sites "
+"web, YouTube, etc."
+msgid "Master"
+msgstr "Maître"
+msgid "%element_title is required."
+msgstr "%element_title est requis."
+msgid "This filter will convert [[{type:media... ]] tags into markup."
+msgstr "Ce filtre convertira les balises [[{type:media... ]] en balises HTML."
+msgid ""
+"This must be enabled for the WYSIWYG integration to work correctly "
+"with this text filter."
+msgstr ""
+"Ceci doit être activé pour assurer le bon fonctionnement de "
+"l'intégration WYSIWYG avec ce filtre de texte."
+msgid "Media browser settings"
+msgstr "Paramètres du navigateur de médias"
+msgid "Configure the behavior and display of the media browser."
+msgstr "Configurer le comportement et l'affichage du navigateur de médias."
+msgid "Media browser theme"
+msgstr "Thème du navigateur de médias"
+msgid ""
+"This theme will be used for all media related dialogs.  It can be "
+"different from your site's theme because many site themes do not work "
+"well in the small windows which media uses."
+msgstr ""
+"Ce thème sera utilisé sur tous les boîtes de dialogue relatives à "
+"Media. Il peut être différent du thème de votre site car beaucoup "
+"de thèmes de site ne fonctionnent pas bien dans les petites fenêtres "
+"que Media utilise."
+msgid ""
+"File extensions which are accepted in the media browser.  Use spaces "
+"to separate (e.g. \"jpg gif pdf doc\"). <br/><em>Note that this can be "
+"overriden on a per-field basis when creating multimedia asset fields "
+"and files of certain extensions cannot be embedded at this time.</em>"
+msgstr ""
+"Les extensions de fichiers qui sont acceptées dans le navigateur de "
+"médias. Utiliser des espaces pour les séparer (par ex. \"jpg gif pdf "
+"doc\").<br /><em>À noter : ceci peut être surchargé champ par champ "
+"si, au moment de leur création, certaines extensions de fichiers "
+"n'ont pas encore été intégrées.</em>"
+msgid "If you switch views, you will lose your selection."
+msgstr "Si vous changez les vues, vous allez perdre votre sélection."
+msgid "File view mode"
+msgstr "Mode d'affichage de fichier"
+msgid "File view mode: @view_mode"
+msgstr "Mode d'affichage des fichiers : @view_mode"
+msgid "Error retrieving XML from %url: %error"
+msgstr "Erreur lors de la récupération du XML depuis %url : %error"
+msgid "Cannot continue, nothing selected"
+msgstr "Impossible de continuer, rien n'est sélectionné"
+msgid "Error getting media."
+msgstr "Erreur d'obtention du média."
+msgid "URL or Embed code"
+msgstr "URL ou code intégré"
+msgid "Input a url or embed code from one of the listed providers."
+msgstr "Entrer l'URL ou le code d'intégration d'un des fournisseurs listés."
+msgid "Supported Providers"
+msgstr "Fournisseurs supportés"
+msgid ""
+"The Media module is a File Browser to the Internet, media provides a "
+"framework for managing files and multimedia assets, regardless of "
+"whether they are hosted on your own site or a 3rd party site. It "
+"replaces the Drupal core upload field with a unified User Interface "
+"where editors and administrators can upload, manage, and reuse files "
+"and multimedia assets. Media module also provides rich integration "
+"with WYSIWYG module to let content creators access media assets in "
+"rich text editor. Javascript is required to use the Media module.  For "
+"more information check <a href=\"@media_faq\">Media Module page</a>"
+msgstr ""
+"Le module Media est un navigateur de fichiers Internet, Media fournit "
+"un framework pour gérer des éléments multimédia, indépendamment "
+"de s'ils sont hébergés sur votre site ou sur un site tiers. Il "
+"remplace le champ de transfert du module du cœur Drupal par une "
+"interface utilisateur unifiée où les éditeurs et administrateurs "
+"peuvent transférer, gérer, et réutiliser les fichiers et les "
+"éléments multimédia. Le module Media fournit également une "
+"intégration riche avec le module WYSIWYG pour permettre au créateurs "
+"de contenu d'accéder aux éléments multimédia depuis l'éditeur de "
+"texte riche. JavaScript est requis pour utiliser le module Media. Pour "
+"plus d'informations, consulter la <a href=\"@media_faq\">page du "
+"module Media</a>"
+msgid "Allowed file extensions for uploaded files"
+msgstr "Extensions de fichier permises pour les fichiers transférés"
+msgid "Allowed remote media types"
+msgstr "Types de médias distants permis"
+msgid ""
+"Media types which are allowed for this field when using remote "
+"streams."
+msgstr ""
+"Les types de médias autorisés pour ce champ lors de l'utilisation de "
+"flux distants."
+msgid ""
+"The file directory @dir does not exist or is not writable. Please "
+"contact an administrator."
+msgstr ""
+"Le répertoire de fichiers @dir n'existe pas ou n'est pas accessible "
+"en écriture. Veuillez contacter un administrateur."
+msgid "file from !field_name"
+msgstr "fichier de !field_name"
+msgid ""
+"There is nothing in your media library. Select the Upload tab above to "
+"add a file."
+msgstr ""
+"Il n'y a rien dans votre bibliothèque de médias. Sélectionnez "
+"l'onglet Transférer ci-dessus pour ajouter un fichier."
+msgid "Media browser tab"
+msgstr "Onglet du navigateur de médias"
+msgid "Display as a tab in the media browser."
+msgstr "Afficher en tant qu'onglet du navigateur de médias."
+msgid ""
+"The \"Media\" field type has been moved to the new \"Media Field\" "
+"module. This site uses media fields, so the Media Field module has "
+"been enabled."
+msgstr ""
+"Le type de champ \"Media\" a été déplacé vers le nouveau module "
+"\"Media Field\". Ce site utilise des champs média, donc le module "
+"Media Field a été activé."
+msgid ""
+"The \"Media\" field type has been moved to the new \"Media Field\" "
+"module. File fields can be used to store media."
+msgstr ""
+"Le type de champ \"Media\" a été déplacé vers le nouveau module "
+"\"Media Field\". Les champs Fichier peuvent être utilisés pour "
+"stocker des médias."
+msgid "Enabled browser plugins"
+msgstr "Plugins du navigateur activés"
+msgid "If no plugins are selected, they will all be available."
+msgstr "Si aucun plugin n'est sélectionné, ils seront tous disponibles."
+msgid "Media Field"
+msgstr "Champ Media"
+msgid "Provides a field type that stores media-specific data. (deprecated)"
+msgstr ""
+"Fournit un type de fichier qui stocke des données spécifiques à "
+"media. (obsolète)"
+msgid "View Library"
+msgstr "Voir la bibliothèque"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/media-7.x-2.x.fr_3.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,555 @@
+# French translation of Media (7.x-2.16)
+# Copyright (c) 2018 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Media (7.x-2.16)\n"
+"POT-Creation-Date: 2018-02-09 01:43+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Title"
+msgstr "Titre"
+msgid "Submit"
+msgstr "Soumettre"
+msgid "Operations"
+msgstr "Actions"
+msgid "Type"
+msgstr "Type"
+msgid "Confirm"
+msgstr "Confirmer"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Remove"
+msgstr "Retirer"
+msgid "Description"
+msgstr "Description"
+msgid "more"
+msgstr "plus"
+msgid "all"
+msgstr "tout"
+msgid "File information"
+msgstr "Information sur le fichier"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Reset"
+msgstr "Réinitialiser"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "Use count"
+msgstr "Nombre d'utilisations"
+msgid "Weight"
+msgstr "Poids"
+msgid "Link"
+msgstr "Lien"
+msgid "Center"
+msgstr "Centre"
+msgid "none"
+msgstr "aucun(e)"
+msgid "Preview"
+msgstr "Aperçu"
+msgid "True"
+msgstr "Vrai"
+msgid "False"
+msgstr "Faux"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Background Color"
+msgstr "Couleur d'arrière-plan"
+msgid "Display"
+msgstr "Affichage"
+msgid "Unknown"
+msgstr "Inconnu"
+msgid "Upload"
+msgstr "Transférer"
+msgid "file"
+msgstr "fichier"
+msgid "File ID"
+msgstr "Identifiant (ID) de fichier"
+msgid "File name"
+msgstr "Nom du fichier"
+msgid "Original image"
+msgstr "Image originale"
+msgid "OK"
+msgstr "OK"
+msgid "Width"
+msgstr "Largeur"
+msgid "Height"
+msgstr "Hauteur"
+msgid "Media"
+msgstr "Média"
+msgid "Desc"
+msgstr "Desc"
+msgid "Directory"
+msgstr "Répertoire"
+msgid "Position"
+msgstr "Position"
+msgid "Pattern"
+msgstr "Motif"
+msgid "Original"
+msgstr "Original"
+msgid "Sort by"
+msgstr "Trier par"
+msgid "Browse"
+msgstr "Parcourir"
+msgid "‹ previous"
+msgstr "‹ précédent"
+msgid "next ›"
+msgstr "suivant ›"
+msgid "Alignment"
+msgstr "Alignement"
+msgid "Left"
+msgstr "Gauche"
+msgid "Right"
+msgstr "Droit"
+msgid "options"
+msgstr "options"
+msgid "My files"
+msgstr "Mes fichiers"
+msgid "Attach"
+msgstr "Attacher"
+msgid "Migrate"
+msgstr "Migrer"
+msgid "Allowed file types"
+msgstr "Types de fichiers autorisés"
+msgid "!name field is required."
+msgstr "Le champ !name est requis."
+msgid "Alternate text"
+msgstr "Texte alternatif"
+msgid "Apply"
+msgstr "Appliquer"
+msgid "Select"
+msgstr "Sélectionner"
+msgid "Thumbnails"
+msgstr "Vignettes"
+msgid "« first"
+msgstr "« premier"
+msgid "last »"
+msgstr "dernier »"
+msgid "Overlay"
+msgstr "Premier plan (overlay)"
+msgid "Display as"
+msgstr "Afficher en tant que"
+msgid "Offset"
+msgstr "Décalage"
+msgid "WYSIWYG"
+msgstr "WYSIWYG"
+msgid "About"
+msgstr "À propos"
+msgid "Web"
+msgstr "Web"
+msgid "Opacity"
+msgstr "Opacité"
+msgid "Resizable"
+msgstr "Redimensionnable"
+msgid "Importing"
+msgstr "Importation"
+msgid "The file %file could not be saved. An unknown error has occurred."
+msgstr ""
+"Le fichier %file n'a pas pu être enregistré. Une erreur inconnue "
+"s'est produite."
+msgid "No files available."
+msgstr "Aucun fichier disponible."
+msgid "Additional settings"
+msgstr "Réglages additionnels"
+msgid "Uses"
+msgstr "Usages"
+msgid "Upload date"
+msgstr "Date de transfert"
+msgid "Edit file"
+msgstr "Modifier le fichier"
+msgid "Displays rows as an HTML list."
+msgstr "Affiche les lignes sous forme de liste HTML."
+msgid "Outdated"
+msgstr "Obsolète"
+msgid "Items per page"
+msgstr "Éléments par page"
+msgid "- All -"
+msgstr "- Tout -"
+msgid "The file upload failed. %upload"
+msgstr "Le transfert de fichier a échoué. %upload"
+msgid ""
+"An unrecoverable error occurred. The uploaded file likely exceeded the "
+"maximum file size (@size) that this server supports."
+msgstr ""
+"Une erreur irrécupérable s'est produite. Le fichier transféré "
+"dépasse la taille de fichier maximum (@size) autorisée par le "
+"serveur."
+msgid "Library"
+msgstr "Bibliothèque"
+msgid "File URL"
+msgstr "URL du fichier"
+msgid ""
+"Optional subdirectory within the upload destination where files will "
+"be stored. Do not include preceding or trailing slashes."
+msgstr ""
+"Sous-répertoire optionnel dans le répertoire de transfert où les "
+"fichiers seront stockés. Ne pas inclure de slash avant ou après."
+msgid "Include file in display"
+msgstr "Inclure le fichier dans l'affichage"
+msgid "The description may be used as the label of the link to the file."
+msgstr ""
+"La description peut être utilisée en tant qu'étiquette du lien "
+"pointant vers le fichier."
+msgid ""
+"An unrecoverable error occurred. Use of this form has expired. Try "
+"reloading the page and submitting again."
+msgstr ""
+"Une erreur irrécupérable s'est produite. L'utilisation de ce "
+"formulaire a expiré. Essayez de recharger la page et de la renvoyer."
+msgid "The file in the !name field was unable to be uploaded."
+msgstr "Le fichier dans le champ !name n'a pas pu être transféré."
+msgid "<em>Edit @type</em> @title"
+msgstr "<em>Modifier @type</em> @title"
+msgid "Image style"
+msgstr "Style d'image"
+msgid "Stream open: %url"
+msgstr "Ouverture du flux : %url"
+msgid "Stream opened: %parameters"
+msgstr "Flux ouvert : %parameters"
+msgid "Multimedia asset"
+msgstr "Actif multimédia"
+msgid "This field stores a reference to a multimedia asset."
+msgstr "Ce champ stocke une référence à un actif multimédia."
+msgid "Allowed URI schemes"
+msgstr "Schémas d'URI autorisés"
+msgid "Embedding %filename"
+msgstr "Intégration de %filename"
+msgid "media"
+msgstr "média"
+msgid "Unable to render media from %tag. Error: %error"
+msgstr "Impossible d'afficher le média de %tag. Erreur : %error"
+msgid "Media Repository"
+msgstr "Dépôt Media"
+msgid ""
+"Media module allows you to maintain a <a href=\"@mediarepo\">media "
+"asset repository</a> where in you can add, remove, reuse your media "
+"assets. You can add the media file using upload form or from a url and "
+"also do bulk operations on the media assets."
+msgstr ""
+"Le module Media vous permet de maintenir un <a "
+"href=\"@mediarepo\">répertoire d'éléments de média</a> dans lequel "
+"vous pouvez ajouter, supprimer, réutiliser vos éléments de média. "
+"Vous pouvez ajouter le fichier média en utilisant le formulaire de "
+"transfert ou depuis une URL et aussi faire des opérations en masse "
+"sur les éléments média."
+msgid "Attaching media assets to content types"
+msgstr "Joindre des éléments média à des types de contenu"
+msgid ""
+"Media assets can be attached to content types as fields. To add a "
+"media field to a <a href=\"@content-type\">content type</a>, go to the "
+"content type's <em>manage fields</em> page, and add a new field of "
+"type <em>Multimedia Asset</em>."
+msgstr ""
+"Les éléments média peuvent être attachés aux types de contenu en "
+"tant que champs. Pour ajouter un champ média à un <a "
+"href=\"@content-type\">type de contenu</a>, allez sur la page de "
+"<em>gestion des champs</em> du type de contenu, et ajoutez un nouveau "
+"champ de type <em>Élément multimédia</em>."
+msgid "Using media assets in WYSIWYG"
+msgstr "Utilisation d'éléments médias en mode WYSIWYG"
+msgid ""
+"Media module provides rich integration with WYSIWYG editors, using "
+"Media Browser plugin you can select media asset from library to add to "
+"the rich text editor moreover you can add media asset from the media "
+"browser itself using either upload method or add from url method. To "
+"configure media with WYSIWYG you need two steps of configuration:"
+msgstr ""
+"Le module Media fournit une intégration riche avec les éditeurs "
+"WYSIWYG, en utilisant le plugin Navigateur Media vous pouvez "
+"sélectionner un élément média depuis la bibliothèque à ajouter "
+"à l'éditeur de texte riche ; de plus, vous pouvez ajouter des "
+"éléments média depuis le navigateur média lui-même en utilisant "
+"soit la méthode de transfert ou la méthode d'ajout depuis une URL. "
+"Pour configurer Media avec WYSIWYG vous avez besoin d'une "
+"configuration en deux étapes :"
+msgid ""
+"Enable WYSIWYG plugin on your desired <a "
+"href=\"@wysiwyg-profile\">WYSIWYG profile</a>. Please note that you "
+"will need to have <a href=\"@wysiwyg\">WYSIWYG</a> module enabled."
+msgstr ""
+"Activer le plugin WYSIWYG sur le <a href=\"@wysiwyg-profile\">profil "
+"WYSIWYG</a> souhaité. Veuillez noter que vous aurez besoin d'avoir le "
+"module <a href=\"@wysiwyg\">WYSIWYG</a> activé."
+msgid "Manage files used on your site."
+msgstr "Gérer les fichiers utilisés sur votre site."
+msgid "Media browser"
+msgstr "Navigateur de médias"
+msgid "Media Browser for picking media and uploading new media"
+msgstr ""
+"Navigateur de médias pour choisir un média ou en transférer un "
+"nouveau"
+msgid "Media Browser test"
+msgstr "Test du navigateur de médias"
+msgid "Make it easier to test media browser"
+msgstr "Faciliter le test du navigateur de médias"
+msgid "Style selector"
+msgstr "Sélecteur de style"
+msgid "Choose a format for a piece of media"
+msgstr "Choisir le format d'un média"
+msgid "Provides the core Media API"
+msgstr "Fournit l'API du cœur de Media"
+msgid "Import these files?"
+msgstr "Importer ces fichiers ?"
+msgid "The provided directory does not exist."
+msgstr "Le répertoire renseigné n'existe pas."
+msgid "Import files into your media library."
+msgstr "Importer des fichiers dans votre bibliothèque de médias."
+msgid "Add media"
+msgstr "Ajouter un média"
+msgid ""
+"Separate extensions with a space or comma and do not include the "
+"leading dot."
+msgstr ""
+"Séparer les extensions avec un espace ou une virgule sans inclure le "
+"point."
+msgid "None (original image)"
+msgstr "Aucun (image d'origine)"
+msgid "Image style: @style"
+msgstr "Style d'image : @style"
+msgid "Weight for @title"
+msgstr "Poids pour @title"
+msgid "Weight for new file"
+msgstr "Poids du nouveau fichier"
+msgid "Large filetype icon"
+msgstr "Grande icône du type de fichier"
+msgid "Click to edit details"
+msgstr "Cliquer pour modifier les détails"
+msgid "Import media files from the local filesystem"
+msgstr "Importer des fichiers multimédia depuis le système de fichier local"
+msgid "Simple file importer"
+msgstr "Importateur simple de fichier"
+msgid ""
+"Only the following types of files are allowed to be uploaded: "
+"%types-allowed"
+msgstr ""
+"Seuls les types de fichiers suivants peuvent être transférés : "
+"%types-allowed"
+msgid "%url could not be added."
+msgstr "%url n'a pas pu être ajouté."
+msgid "Unable to handle the provided embed string or URL."
+msgstr "Impossible de gérer la chaîne d'intégration ou l'URL fournie."
+msgid "Media Internet Sources"
+msgstr "Media Internet Sources"
+msgid "Provides an API for accessing media on various internet services"
+msgstr "Fournit une API pour accéder aux média de plusieurs services web"
+msgid "Asc"
+msgstr "Asc"
+msgid "Add media from remote services"
+msgstr "Ajouter des médias depuis des services distants"
+msgid "Add media from remote sources such as other websites, YouTube, etc"
+msgstr ""
+"Ajouter des médias de sources distantes telles que d'autres sites "
+"web, YouTube, etc."
+msgid "Master"
+msgstr "Maître"
+msgid "Media browser settings"
+msgstr "Paramètres du navigateur de médias"
+msgid "Configure the behavior and display of the media browser."
+msgstr "Configurer le comportement et l'affichage du navigateur de médias."
+msgid "Media browser theme"
+msgstr "Thème du navigateur de médias"
+msgid "If you switch views, you will lose your selection."
+msgstr "Si vous changez les vues, vous allez perdre votre sélection."
+msgid "User who uploaded"
+msgstr "Utilisateur ayant transféré"
+msgid "File view mode"
+msgstr "Mode d'affichage de fichier"
+msgid "File view mode: @view_mode"
+msgstr "Mode d'affichage des fichiers : @view_mode"
+msgid "Cannot continue, nothing selected"
+msgstr "Impossible de continuer, rien n'est sélectionné"
+msgid ""
+"The Media module is a File Browser to the Internet, media provides a "
+"framework for managing files and multimedia assets, regardless of "
+"whether they are hosted on your own site or a 3rd party site. It "
+"replaces the Drupal core upload field with a unified User Interface "
+"where editors and administrators can upload, manage, and reuse files "
+"and multimedia assets. Media module also provides rich integration "
+"with WYSIWYG module to let content creators access media assets in "
+"rich text editor. Javascript is required to use the Media module.  For "
+"more information check <a href=\"@media_faq\">Media Module page</a>"
+msgstr ""
+"Le module Media est un navigateur de fichiers Internet, Media fournit "
+"un framework pour gérer des éléments multimédia, indépendamment "
+"de s'ils sont hébergés sur votre site ou sur un site tiers. Il "
+"remplace le champ de transfert du module du cœur Drupal par une "
+"interface utilisateur unifiée où les éditeurs et administrateurs "
+"peuvent transférer, gérer, et réutiliser les fichiers et les "
+"éléments multimédia. Le module Media fournit également une "
+"intégration riche avec le module WYSIWYG pour permettre au créateurs "
+"de contenu d'accéder aux éléments multimédia depuis l'éditeur de "
+"texte riche. JavaScript est requis pour utiliser le module Media. Pour "
+"plus d'informations, consulter la <a href=\"@media_faq\">page du "
+"module Media</a>"
+msgid "Allowed file extensions for uploaded files"
+msgstr "Extensions de fichier permises pour les fichiers transférés"
+msgid "file from !field_name"
+msgstr "fichier de !field_name"
+msgid "Media browser tab"
+msgstr "Onglet du navigateur de médias"
+msgid "Display as a tab in the media browser."
+msgstr "Afficher en tant qu'onglet du navigateur de médias."
+msgid ""
+"The \"Media\" field type has been moved to the new \"Media Field\" "
+"module. This site uses media fields, so the Media Field module has "
+"been enabled."
+msgstr ""
+"Le type de champ \"Media\" a été déplacé vers le nouveau module "
+"\"Media Field\". Ce site utilise des champs média, donc le module "
+"Media Field a été activé."
+msgid ""
+"The \"Media\" field type has been moved to the new \"Media Field\" "
+"module. File fields can be used to store media."
+msgstr ""
+"Le type de champ \"Media\" a été déplacé vers le nouveau module "
+"\"Media Field\". Les champs Fichier peuvent être utilisés pour "
+"stocker des médias."
+msgid "Enabled browser plugins"
+msgstr "Plugins du navigateur activés"
+msgid "If no plugins are selected, they will all be available."
+msgstr "Si aucun plugin n'est sélectionné, ils seront tous disponibles."
+msgid "Media Field"
+msgstr "Champ Media"
+msgid "Edit selected files"
+msgstr "Modifier les fichiers sélectionnés"
+msgid "Edit multiple files"
+msgstr "Modifier plusieurs fichiers"
+msgid ""
+"Provides a field type that stores media-specific data. <em>Deprecated "
+"by the core File field type.</em>"
+msgstr ""
+"Fournit un type de champ qui enregistre des données spécifiques aux "
+"médias. <em>Rendu obsolète par le type de champ Fichier du "
+"cœur</em>."
+msgid "Migrate fields"
+msgstr "Migrer les champs"
+msgid ""
+"Cannot update field %id (%field_name) because it does not use the "
+"field_sql_storage storage type."
+msgstr ""
+"Impossible de mettre à jour le champ %id (%field_name) car il "
+"n'utilise pas le type de stockage field_sql_storage."
+msgid "File saved"
+msgstr "Fichier enregistré"
+msgid "Add internet files to your media library."
+msgstr "Ajouter des fichiers d'internet à votre bibliothèque de médias."
+msgid "Convert Media tags to markup"
+msgstr "Convertir les balises Media en balises HTML"
+msgid "Import files"
+msgstr "Importer des fichiers"
+msgid ""
+"The <em>Convert Media tags to markup</em> filter must be enabled for "
+"the <a href=\"@format-link\">@format format</a> in order to use the "
+"Media browser WYSIWYG button."
+msgstr ""
+"Le filtre <em>Convertir les balises Media en balisage</em> doit être "
+"activé pour le <a href=\"@format-link\">format @format</a> pour "
+"utiliser le bouton WYSIWYG du navigateur de médias."
+msgid ""
+"%name: Only remote files with the following types are allowed: "
+"%types-allowed."
+msgstr ""
+"%name : Seuls les fichiers distants des types suivants sont permis : "
+"%types-allowed."
+msgid "no file types selected"
+msgstr "aucun type de fichier sélectionné"
+msgid "This field supports tokens."
+msgstr "Ce champ prend en charge les jetons (tokens)."
+msgid "WYSIWYG configuration"
+msgstr "Configuration WYSIWYG"
+msgid "Media browser being queried without the file_managed table."
+msgstr "L'explorateur media interrogé sans la table file_managed."
+msgid "Dropped the unused {media_list_type} table."
+msgstr "La table inutilisée {media_list_type} a été supprimée."
+msgid "Add @language translation"
+msgstr "Ajouter la traduction @language"
+msgid "File directory for uploaded media"
+msgstr "Répertoire de fichiers pour les médias transférés"
+msgid "Allowed types in WYSIWYG"
+msgstr "Types autorisés dans le WYSIWYG"
+msgid "Wrong version"
+msgstr "Mauvaise version"
+msgid ""
+"Enable the <em>Convert Media tags to markup</em> filter on the <a "
+"href=\"@input-format\">Input format</a> you are using with the WYSIWYG "
+"profile."
+msgstr ""
+"Activer le filtre <em>Convertir les balises Media en balisage</em> sur "
+"le <a href=\"@input-format\">format de saisie</a> que vous utilisez "
+"avec le profil WYSIWYG."
+msgid "Administer media browser"
+msgstr "Administrer le navigateur de médias"
+msgid "Access media browser settings."
+msgstr "Accéder aux paramètres du navigateur de médias."
+msgid "Override in WYSIWYG"
+msgstr "Remplacer dans un WYSIWYG"
+msgid "If checked, then this field may be overridden in the WYSIWYG editor."
+msgstr ""
+"Si coché, alors ce champ peut être surchargé dans l'éditeur "
+"WYSIWYG."
+msgid ""
+"There are disabled/deleted file types that can be migrated to their "
+"new alternatives. Visit <a href=\"!url\">migration page</a> to get "
+"more information."
+msgstr ""
+"Il existe des types de fichiers désactivés / supprimés qui peuvent "
+"être migrés vers leurs nouvelles alternatives. Aller sur la <a "
+"href=\"!url\">page de migration</a> pour obtenir plus d'informations."
+msgid "Upgrade types"
+msgstr "Mettre à jour les types"
+msgid "Multipurpose type - kept to support older sites."
+msgstr "Type multi-usage - gardé pour prendre en charge les sites plus vieux."
+msgid "The provided directory is not readable."
+msgstr "Le répertoire fourni n'est pas lisible."
+msgid ""
+"No files were found in %directory matching the regular expression "
+"%pattern"
+msgstr ""
+"Aucun fichier n'a été trouvé dans le répertoire %directory "
+"correspondant à l'expression régulière %pattern"
+msgid ""
+"This page allows you to migrate deprecated and/or disabled file types "
+"to new ones. It will migrate files from old type to new one and "
+"optionally migrate fields and delete old type."
+msgstr ""
+"Cette page vous permet de migrer les types de fichier obsolètes et/ou "
+"désactivés vers des nouveaux. Cela va migrer les fichiers de leur "
+"ancien type vers le nouveau et en option migrer les champs et "
+"supprimer les anciens types."
+msgid "Migrate fields and their values from old file types to new ones."
+msgstr ""
+"Migrer les champs et leurs valeurs des anciens types de fichier vers "
+"les nouveaux."
+msgid "Delete old type"
+msgstr "Supprimer l'ancien type"
+msgid ""
+"Delete old file type if migration was successful and delete operation "
+"is possible (type is not exported in code)."
+msgstr ""
+"Supprimer l'ancien type de fichier si la migration a réussi et "
+"l'opération de suppression est possible (le type de fichier n'est pas "
+"exporté dans le code)."
+msgid "Migrate type mime-type"
+msgstr "Migrer le type MIME"
+msgid "Move mime-type from old type to new one."
+msgstr "Déplacer le type MIME de l'ancien type vers le nouveau."
+msgid "Upgradable file types"
+msgstr "Types de fichiers pouvant être mis à jour"
+msgid "Do not upgrade"
+msgstr "Ne pas mettre à jour"
+msgid ""
+"Select file type which you want to migrate @type to. Select "
+"%no_upgrade if type should stay as it is."
+msgstr ""
+"Sélectionner le type de fichier vers lequel vous souhaitez migrer le "
+"type de fichier @type. Sélectionner %no_upgrade si le type de fichier "
+"doit rester tel qu'il est."
+msgid "Do you really want to migrate selected file types?"
+msgstr "Voulez-vous vraiment migrer les types de fichiers sélectionnés ?"
+msgid "Media WYSIWYG View Mode"
+msgstr "Mode d'affichage WYSIWYG de Media"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/nodequeue-7.x-2.x.fr_0.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,340 @@
+# French translation of Nodequeue (7.x-2.0)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Nodequeue (7.x-2.0)\n"
+"POT-Creation-Date: 2017-11-10 06:28+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Title"
+msgstr "Titre"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Submit"
+msgstr "Soumettre"
+msgid "Operations"
+msgstr "Actions"
+msgid "Development"
+msgstr "Développement"
+msgid "Author"
+msgstr "Auteur"
+msgid "List"
+msgstr "Lister"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Remove"
+msgstr "Retirer"
+msgid "Edit"
+msgstr "Modifier"
+msgid "This action cannot be undone."
+msgstr "Cette action est irréversible."
+msgid "Types"
+msgstr "Types"
+msgid "Settings"
+msgstr "Paramètres"
+msgid "edit"
+msgstr "modifier"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "remove"
+msgstr "retirer"
+msgid "View"
+msgstr "Voir"
+msgid "Add content"
+msgstr "Ajouter du contenu"
+msgid "Block"
+msgstr "Bloc"
+msgid "Page"
+msgstr "Page"
+msgid "Roles"
+msgstr "Rôles"
+msgid "Normal"
+msgstr "Normal"
+msgid "An error occurred"
+msgstr "Une erreur s'est produite"
+msgid "node"
+msgstr "nœud"
+msgid "Shuffle"
+msgstr "Mélanger"
+msgid "Position"
+msgstr "Position"
+msgid "Operation"
+msgstr "Opération"
+msgid "Defaults"
+msgstr "Paramètres par défaut"
+msgid "Clear"
+msgstr "Vider"
+msgid "Reverse"
+msgstr "Inversé"
+msgid "@message"
+msgstr "@message"
+msgid "Internationalization"
+msgstr "Gestion multilingue"
+msgid "Max nodes"
+msgstr "Nœuds max."
+msgid "Edit this node"
+msgstr "Modifier ce nœud"
+msgid "Add @type"
+msgstr "Ajouter @type"
+msgid "Nodequeue"
+msgstr "Nodequeue"
+msgid "Generate"
+msgstr "Générer"
+msgid "Nodequeues"
+msgstr "Files de nœuds"
+msgid "Infinite"
+msgstr "Infini"
+msgid "Queue title"
+msgstr "Titre de la file d'attente"
+msgid "Remove from queue"
+msgstr "Retirer de la file d'attente"
+msgid "Edit queue"
+msgstr "Modifier la file"
+msgid "Queue ID"
+msgstr "Identifiant (ID) de la file d'attente"
+msgid "Queue size"
+msgstr "Taille de la file d'attente"
+msgid "Queue"
+msgstr "File"
+msgid "Autocomplete"
+msgstr "Autocomplétion"
+msgid "Queues"
+msgstr "Files d'attente"
+msgid ""
+"Specify the queues into which the node should be submitted. If the "
+"queue is a smartqueue, the node shall be placed into every subqueue "
+"for which it is eligible."
+msgstr ""
+"Spécifiez les files où le nœud devrait être soumis. Si la file est "
+"une file intelligente, le nœud devrait être placé dans chaque "
+"sous-file pour laquelle il est éligible."
+msgid "Subqueue title"
+msgstr "Titre de la sous-file"
+msgid "Nodequeue '@title'"
+msgstr "File de nœuds '@title'"
+msgid "Add to queue"
+msgstr "Ajouter à la file d'attente"
+msgid "In queue"
+msgstr "Dans la file d'attente"
+msgid "Subqueues"
+msgstr "Sous-files"
+msgid "Max nodes in queue: @size"
+msgstr "Nombre maximum de nœuds dans la file : @size"
+msgid "Enter the name of the queue"
+msgstr "Enter le nom de la file"
+msgid ""
+"The maximum number of nodes will appear in the queue. Enter 0 for no "
+"limit"
+msgstr ""
+"Le nombre maximum de nœuds qui apparaîtront dans la file. Saisissez "
+"0 pour ne pas limiter"
+msgid "Reverse in admin view"
+msgstr "Inverser dans la vue d'administration"
+msgid ""
+"Ordinarily queues are arranged with the front of the queue (where "
+"items will be removed) on top and the back (where items will be added) "
+"on the bottom. If checked, this will display the queue such that items "
+"will be added to the top and removed from the bottom."
+msgstr ""
+"Habituellement, les files sont disposées avec l'avant de la file (où "
+"les éléments seront retirés) en haut et l'arrière (où les "
+"éléments seront ajoutés) en bas. Si cette case est cochée, la file "
+"sera affichée de telle sorte que les éléments seront ajoutés par "
+"le haut et retirés par le bas."
+msgid "Link \"add to queue\" text"
+msgstr "Texte du lien \"ajouter à la file d'attente\""
+msgid ""
+"If you want a link to add a node to a queue in the \"links\" section "
+"(next to \"add new comment\"), enter the text here. If left blank no "
+"link will be given; note that enabling this feature for any queue will "
+"cause an extra query to be run every time a node is loaded. "
+"\"%subqueue\" will be replaced with the subqueue title, if applicable."
+msgstr ""
+"Si vous voulez un lien pour ajouter un nœud dans une file dans la "
+"section \"liens\" (à côté de \"ajouter un nouveau commentaire\"), "
+"saisissez le texte ici. Si laissé vide, aucun lien ne sera donné ; "
+"notez qu'activer cette fonction entrainera pour toutes les files une "
+"requête supplémentaire qui sera exécutée à chaque fois que le "
+"nœud est chargé. \"%subqueue\" sera remplacée avec le titre de la "
+"sous-file, si possible."
+msgid "Link \"remove from queue\" text"
+msgstr "Texte du lien \"retirer de la file d'attente\""
+msgid ""
+"Enter the text for the corresponding link to remove a node from a "
+"queue. This may be blank (in which case no link will appear) but a "
+"remove link will only appear if link, above, is set."
+msgstr ""
+"Saisissez le texte du lien correspondant au retrait d'un nœud d'une "
+"file. Il peut être vide (dans ce cas, il n'apparaitra pas) mais un "
+"lien de retrait apparaitra seulement si le lien, ci-dessus, est "
+"rempli."
+msgid ""
+"Check each role that can add nodes to the queue. Be sure that roles "
+"you want to appear here have \"manipulate queues\" access in the main "
+"access control panel."
+msgstr ""
+"Cochez chaque rôle qui pourra ajouter des nœuds dans la file. Soyez "
+"sûr que les rôles que vous voulez voir apparaître ici possèdent la "
+"permission \"manipuler les files\" dans le panneau principal de "
+"contrôle d'accès."
+msgid "Check each node type that can be added to this queue."
+msgstr "Cochez chaque type de nœud qui pourra être ajouté à cette file."
+msgid "The queue has been created."
+msgstr "La file d'attente a été créée."
+msgid "The queue has been updated."
+msgstr "La file d'attente a été mise à jour."
+msgid "Are you sure you want to delete \"%title\"?"
+msgstr "Êtes-vous sûr(e) de vouloir supprimer \"%title\" ?"
+msgid "Subqueue '@title'"
+msgstr "Sous-file '@title'"
+msgid "Queue empty"
+msgstr "File d'attente vide"
+msgid "Queue full"
+msgstr "File d'attente pleine"
+msgid "@count in queue"
+msgstr "@count dans la file d'attente"
+msgid "Create a menu tab for each node that could belong to any queues"
+msgstr ""
+"Crée un onglet de menu pour chaque nœud qui pourrait appartenir à "
+"n'importe quelle file"
+msgid "Bulk add nodes into queues"
+msgstr "Ajouter en masse des nœuds dans des files"
+msgid "1 queue populated"
+msgid_plural "@count queues populated."
+msgstr[0] "1 file remplie"
+msgstr[1] "@count files remplies."
+msgid "Taxonomy queue"
+msgstr "File de taxonomie"
+msgid "Bulk assign nodes into queues for quickly populating a site."
+msgstr ""
+"Assigner en masse des nœuds à des files afin de remplir rapidement "
+"un site."
+msgid "Creates a node queue for each taxonomy vocabulary"
+msgstr ""
+"Crée une file d'attente de nœuds pour chaque vocabulaire de la "
+"taxonomie"
+msgid "Nodequeue Biasing"
+msgstr "Polarisation de la file de nœuds"
+msgid "Weight for %title nodequeue"
+msgstr "Poids de la file de nœuds %title"
+msgid "No nodequeues exist."
+msgstr "Aucune file de nœuds n'a été créée."
+msgid "Treat translation nodes as a single node"
+msgstr "Traiter les traductions de nœuds comme un seul nœud"
+msgid "Manually manage translated nodes"
+msgstr "Gérer manuellement les nœuds traduits"
+msgid "Please enter a title for this queue."
+msgstr "Veuillez saisir un titre pour cette file d'attente."
+msgid "The queue has been deleted."
+msgstr "La file d'attente a été supprimée."
+msgid "Nodequeue tab label"
+msgstr "Étiquette de l'onglet Nodequeue"
+msgid ""
+"If nodes will have a menu tab for manipulating related nodequeues, "
+"what should that tab be called?"
+msgstr ""
+"Si des nœuds possèdent un onglet de menu pour gérer les files de "
+"nœuds associées, comment devrait s'intituler cet onglet ?"
+msgid "Create and maintain simple nodequeues."
+msgstr "Créer et maintenir des file de nœuds simples."
+msgid "@tab"
+msgstr "@tab"
+msgid "Nodequeue generate"
+msgstr "Générer une file de nœuds"
+msgid "Nodequeue module unavailable."
+msgstr "Module Nodequeue indisponible."
+msgid ""
+"Returns a keyed array by qid of available nodequeues and their "
+"settings."
+msgstr ""
+"Renvoie un tableau indexé par qid de files de nœuds disponibles "
+"ainsi que leurs paramètres."
+msgid "Nodequeue Service"
+msgstr "Nodequeue Service"
+msgid "Provides a nodequeue service."
+msgstr "Fournit un service nodequeue"
+msgid "Add to Nodequeues"
+msgstr "Ajouter à des files de nœuds"
+msgid "Remove from Nodequeues"
+msgstr "Retirer de files de nœuds"
+msgid "Added date"
+msgstr "Date d'ajout"
+msgid "No queue"
+msgstr "Pas de file d'attente"
+msgid "Subqueue ID"
+msgstr "Identifiant de sous-file"
+msgid "The title of the nodequeue."
+msgstr "Le titre de la file de nœuds."
+msgid "The title of the subqueue."
+msgstr "Titre de la sous-file."
+msgid "Create a relationship to a nodequeue."
+msgstr "Créer une relation vers une file de nœuds"
+msgid "queue"
+msgstr "file d'attente"
+msgid "Add/remove links"
+msgstr "Ajouter/retirer des liens"
+msgid ""
+"Display add/remove links for all eligible nodequeues. Note that this "
+"performs a node_load so could add many extra queries to a view."
+msgstr ""
+"Afficher les liens ajouter/retirer pour toutes les files de nœuds "
+"éligibles. Veuillez noter que cela réalise un node_load qui pourrait "
+"ajouter beaucoup de requêtes supplémentaires lors d'une vue."
+msgid "Link to tab"
+msgstr "Lier à l'onglet"
+msgid "All queues"
+msgstr "Toutes les files d'attente"
+msgid "Display all queues a node is a member of."
+msgstr "Afficher toutes les files d'attente auxquelles un nœud appartient."
+msgid "All subqueues"
+msgstr "Toutes les sous-files"
+msgid "Display all subqueues a node is a member of."
+msgstr "Afficher toutes les sous-files qui possèdent ce nœud."
+msgid "Display a list of all nodes in queue '@queue'"
+msgstr "Affiche une liste de tous les nœuds dans la file '@queue'"
+msgid "nodequeue"
+msgstr "file de nœuds"
+msgid "Queue '@queue'"
+msgstr "File d'attente '@queue'"
+msgid "Link this field to queue arrange page"
+msgstr "Lier ce champ à la page de disposition de la file"
+msgid "Limit to queues"
+msgstr "Limiter aux files"
+msgid "Limit to one or more queues (recommended)"
+msgstr "Limiter à une ou deux files (recommandé)"
+msgid "Restricted node, NID: @nid"
+msgstr "Nœud restreint, NID : @nid"
+msgid "Duplicate position value."
+msgstr "Dupliquer la valeur de position."
+msgid "Are you sure you want to clear the nodequeue %queue?"
+msgstr "Êtes-vous sûr de vider la file de nœuds %queue?"
+msgid "This action will remove all nodes from the queue and cannot be undone."
+msgstr ""
+"Cet action supprimera tous les nœuds de la file et ne pourra pas "
+"être annulée."
+msgid "The queue has been cleared."
+msgstr "La file a été vidée."
+msgid "No nodes in this queue."
+msgstr "Aucun nœud dans cette file."
+msgid "Post Date"
+msgstr "Date de publication"
+msgid "Please enter a valid node title."
+msgstr "Veuillez saisir un titre de nœud valide."
+msgid "Enter the title of a node to add it to the queue"
+msgstr "Entrez le titre d'un nœud pour l'ajouter à la file"
+msgid "Manipulate queues."
+msgstr "Manipuler les files."
+msgid "Administer the nodequeue module."
+msgstr "Administrer le module Nodequeue."
+msgid "Manipulate all queues"
+msgstr "Manipuler toutes les files"
+msgid "Simple queue"
+msgstr "File simple"
+msgid "You must select a Queue."
+msgstr "Vous devez sélectionner une file."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/panels-7.x-3.x.fr_2.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,1143 @@
+# French translation of Panels (7.x-3.7)
+# Copyright (c) 2018 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Panels (7.x-3.7)\n"
+"POT-Creation-Date: 2018-01-06 09:38+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Title"
+msgstr "Titre"
+msgid "Next"
+msgstr "Suivant"
+msgid "Status"
+msgstr "Etat"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Content"
+msgstr "Contenu"
+msgid "Value"
+msgstr "Valeur"
+msgid "content"
+msgstr "contenu"
+msgid "Type"
+msgstr "Type"
+msgid "List"
+msgstr "Lister"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Remove"
+msgstr "Retirer"
+msgid "more"
+msgstr "plus"
+msgid "Enable"
+msgstr "Activer"
+msgid "Disable"
+msgstr "Désactiver"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Edit"
+msgstr "Modifier"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "Display settings"
+msgstr "Paramètres d'affichage"
+msgid "Weight"
+msgstr "Poids"
+msgid "Center"
+msgstr "Centre"
+msgid "Category"
+msgstr "Catégorie"
+msgid "Settings"
+msgstr "Paramètres"
+msgid "Name"
+msgstr "Nom"
+msgid "Back"
+msgstr "Précédent"
+msgid "Preview"
+msgstr "Aperçu"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Font"
+msgstr "Police"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Background"
+msgstr "Arrière-plan"
+msgid "Top"
+msgstr "Haut"
+msgid "Path"
+msgstr "Chemin"
+msgid "Region"
+msgstr "Région"
+msgid "Menu"
+msgstr "Menu"
+msgid "Teaser"
+msgstr "Accroche"
+msgid "Text"
+msgstr "Texte"
+msgid "Layout"
+msgstr "Affichage"
+msgid "Error"
+msgstr "Erreur"
+msgid "Panels"
+msgstr "Panels"
+msgid "Panel title"
+msgstr "Titre du panneau"
+msgid "Add content"
+msgstr "Ajouter du contenu"
+msgid "CSS ID"
+msgstr "Identifiant (ID) de la CSS"
+msgid "panels"
+msgstr "panneaux"
+msgid "CSS class"
+msgstr "Classe CSS"
+msgid "Three column 25/50/25"
+msgstr "Trois colonnes 25/50/25"
+msgid "Left side"
+msgstr "Côté gauche"
+msgid "Middle column"
+msgstr "Colonne du milieu"
+msgid "Right side"
+msgstr "Côté droit"
+msgid "Three column 25/50/25 stacked"
+msgstr "Trois colonnes 25/50/25 empilées"
+msgid "Bottom"
+msgstr "Bas"
+msgid "Three column 33/34/33"
+msgstr "Trois colonnes 33/34/33"
+msgid "Three column 33/34/33 stacked"
+msgstr "Trois colonnes 33/34/33 empilées"
+msgid "Two column"
+msgstr "Deux colonnes"
+msgid "Two column stacked"
+msgstr "Deux colonnes empilées"
+msgid "1 hour"
+msgid_plural "@count hours"
+msgstr[0] "@count heure"
+msgstr[1] "@count heures"
+msgid "1 day"
+msgid_plural "@count days"
+msgstr[0] "@count jour"
+msgstr[1] "@count jours"
+msgid "Your changes have been saved."
+msgstr "Vos modifications ont été enregistrées."
+msgid "Left sidebar"
+msgstr "Barre latérale gauche"
+msgid "Right sidebar"
+msgstr "Barre latérale droite"
+msgid "Contains"
+msgstr "Contient"
+msgid "Overridden"
+msgstr "Supplanté"
+msgid "Width"
+msgstr "Largeur"
+msgid "Caching"
+msgstr "Mise en cache"
+msgid "General"
+msgstr "Général"
+msgid "Border"
+msgstr "Bordure"
+msgid "Method"
+msgstr "Méthode"
+msgid "Other"
+msgstr "Autre"
+msgid "Text color"
+msgstr "Couleur du texte"
+msgid "List type"
+msgstr "Type de liste"
+msgid "Padding"
+msgstr "Remplissage"
+msgid "Arguments"
+msgstr "Arguments"
+msgid "Uncategorized"
+msgstr "Non catégorisé"
+msgid "Plain"
+msgstr "Brut"
+msgid "Basic settings"
+msgstr "Paramètres de base"
+msgid "Change"
+msgstr "Modifier"
+msgid "Middle"
+msgstr "Milieu"
+msgid "Granularity"
+msgstr "Granularité"
+msgid "Fixed"
+msgstr "Fixe"
+msgid "Empty"
+msgstr "Vide"
+msgid "Style"
+msgstr "Style"
+msgid "Flexible"
+msgstr "Flexible"
+msgid "Standard"
+msgstr "Standard"
+msgid "Name must be alphanumeric or underscores only."
+msgstr ""
+"Le nom doit être composé de caractères alphanumériques et de tiret "
+"bas (_) seulement."
+msgid "Storage"
+msgstr "Stockage"
+msgid "No style"
+msgstr "Aucun style"
+msgid "Lifetime"
+msgstr "Durée de vie"
+msgid "No caching"
+msgstr "Pas de mise en cache"
+msgid "Layouts"
+msgstr "Mises en page"
+msgid "Edit content"
+msgstr "Modifier le contenu"
+msgid "Change layout"
+msgstr "Changer la mise en page"
+msgid "Available"
+msgstr "Disponible"
+msgid "Contexts"
+msgstr "Contextes"
+msgid "Miscellaneous"
+msgstr "Divers"
+msgid "Panel pages"
+msgstr "Pages de Panel"
+msgid "Panel nodes"
+msgstr "Nœuds Panel"
+msgid "Mini panels"
+msgstr "Mini-panneaux"
+msgid "Context"
+msgstr "Contexte"
+msgid "Unordered"
+msgstr "Non ordonné"
+msgid "Ordered"
+msgstr "Ordonné"
+msgid "New @s"
+msgstr "Nouveau @s"
+msgid "New content of other types"
+msgstr "Nouveau contenu d'autres sortes"
+msgid "New content behavior"
+msgstr "Comportement des nouveaux contenus"
+msgid ""
+"Select the default behavior of new content added to the system. If "
+"checked, new content will automatically be immediately available to be "
+"added to Panels pages. If not checked, new content will not be "
+"available until specifically allowed here."
+msgstr ""
+"Sélectionner le comportement par défaut du nouveau contenu ajouté "
+"au système. Si coché, le nouveau contenu sera immédiatement et "
+"automatiquement disponible pour être ajouté aux pages de Panels. Si "
+"non coché, le nouveau contenu ne sera pas disponible jusqu'à ce "
+"qu'il soit spécifiquement autorisé ici."
+msgid ""
+"<p>Click Submit to be presented with a complete list of available "
+"content types set to the defaults you selected.</p>"
+msgstr ""
+"<p>Cliquez sur Soumettre pour voir une liste complète des types de "
+"contenu disponibles paramétrés avec les valeurs par défaut que vous "
+"avez sélectionnées.</p>"
+msgid "Allowed @s content"
+msgstr "@s de contenu autorisé(e)s"
+msgid "Select allowed layouts"
+msgstr "Sélectionner les mises en forme autorisées"
+msgid ""
+"Check the boxes for all layouts you want to allow users choose from "
+"when picking a layout. You must allow at least one layout."
+msgstr ""
+"Cocher les cases pour autoriser les utilisateurs à choisir toutes les "
+"mises en forme que vous voulez lors de la sélection d'une mise en "
+"forme. Vous devez autoriser au moins une mise en forme."
+msgid "Keyword"
+msgstr "Mot-clé"
+msgid "1 year"
+msgid_plural "@count years"
+msgstr[0] "@count année"
+msgstr[1] "@count années"
+msgid "1 week"
+msgid_plural "@count weeks"
+msgstr[0] "@count semaine"
+msgstr[1] "@count semaines"
+msgid "1 min"
+msgid_plural "@count min"
+msgstr[0] "@count min"
+msgstr[1] "@count min"
+msgid "1 sec"
+msgid_plural "@count sec"
+msgstr[0] "@count sec"
+msgstr[1] "@count sec"
+msgid "Panel content has been updated."
+msgstr "Le contenu du panneau a été mis à jour."
+msgid "Choose layout"
+msgstr "Choisir une mise en page"
+msgid "Missing content type"
+msgstr "Type de contenu manquant"
+msgid ""
+"This pane's content type is either missing or has been deleted. This "
+"pane will not render."
+msgstr ""
+"Le type de contenu de ce volet est soit manquant soit a été "
+"supprimé. Ce volet ne sera pas affiché."
+msgid "Add content to !s"
+msgstr "Ajouter du contenu à !s"
+msgid "There are no content types you may add to this display."
+msgstr ""
+"Il n'y a pas de types de contenu que vous pourriez ajouter à cet "
+"affichage."
+msgid ""
+"No caching options are available at this time. Please enable a panels "
+"caching module in order to use caching options."
+msgstr ""
+"Il n'y a pas d'options de cache disponibles pour le moment. Veuillez "
+"activer le module Panels Caching pour utiliser des options de cache."
+msgid "Panel settings"
+msgstr "Paramètres du panel"
+msgid "No title"
+msgstr "Sans titre"
+msgid "Deleted/missing content type @type"
+msgstr "Type de contenu @type supprimé/manquant"
+msgid "Columns"
+msgstr "Colonnes"
+msgid "Row @row, Column @col"
+msgstr "Ligne @row, Colonne @col"
+msgid "Single column"
+msgstr "Une seule colonne"
+msgid "Two column bricks"
+msgstr "Deux colonnes en briques"
+msgid "Left above"
+msgstr "En haut à gauche"
+msgid "Right above"
+msgstr "En haut à droite"
+msgid "Left below"
+msgstr "En bas à gauche"
+msgid "Right below"
+msgstr "En bas à droite"
+msgid ""
+"The title for this mini panel. It can be overridden in the block "
+"configuration."
+msgstr ""
+"Le titre de ce mini-panneau. Il peut être supplanté dans la "
+"configuration du bloc."
+msgid ""
+"The category that this mini-panel will be grouped into on the Add "
+"Content form. Only upper and lower-case alphanumeric characters are "
+"allowed. If left blank, defaults to 'Mini panels'."
+msgstr ""
+"La catégorie à laquelle ce mini-panel sera rattaché dans le "
+"formulaire d'ajout de contenu. Seuls les caractères alphanumériques "
+"en majuscules et minuscules sont permis. Si vide, sera rattaché à "
+"'Mini panels'."
+msgid "Categories may contain only alphanumerics or spaces."
+msgstr ""
+"Les catégories ne doivent contenir que des carractères "
+"alphanumériques et des espaces."
+msgid "Deleted/missing mini panel @name"
+msgstr "Mini-panneau @name supprimé/manquant"
+msgid "Untitled mini panel"
+msgstr "Mini-panneau sans titre"
+msgid "Panel"
+msgstr "Panneau"
+msgid "Panel layout"
+msgstr "Mise en page du panneau"
+msgid "Panel content"
+msgstr "Contenu du panneau"
+msgid "An ID that can be used by CSS to style the panel."
+msgstr ""
+"Un identifiant (ID) qui peut être utilisé par la CSS pour le style "
+"du panneau."
+msgid "Please select a layout."
+msgstr "Veuillez sélectionner une mise en forme."
+msgid "Create nodes that are divided into areas with selectable content."
+msgstr ""
+"Créer des nœuds qui sont divisés en zones avec du contenu "
+"sélectionnable."
+msgid "Disable Drupal blocks/regions"
+msgstr "Désactiver les blocs/régions Drupal"
+msgid "CSS code"
+msgstr "Code CSS"
+msgid "Simple cache"
+msgstr "Cache simple"
+msgid ""
+"Simple caching is a time-based cache. This is a hard limit, and once "
+"cached it will remain that way until the time limit expires."
+msgstr ""
+"Le cache simple est basé sur le temps. C'est une limite difficile, "
+"une fois en cache il restera jusqu'à expiration du temps."
+msgid ""
+"If \"arguments\" are selected, this content will be cached per "
+"individual argument to the entire display; if \"contexts\" are "
+"selected, this content will be cached per unique context in the pane "
+"or display; if \"neither\" there will be only one cache for this pane."
+msgstr ""
+"Si des \"arguments\" sont sélectionnés, ce contenu sera en cache "
+"argument par argument pour tout l'affichage ; si des \"contextes\" "
+"sont sélectionnés, ce contenu sera mis en cache par contexte unique "
+"dans le volet ou l'affichage ; si \"aucun\" est sélectionné, il n'y "
+"aura qu'un cache global pour ce volet."
+msgid "System block"
+msgstr "Bloc système"
+msgid ""
+"Display the pane as a system block; this is more restrictive than the "
+"default."
+msgstr ""
+"Afficher le volet en tant que bloc système ; plus restrictif que le "
+"réglage par défaut."
+msgid ""
+"The default panel rendering style; displays each pane with a "
+"separator."
+msgstr ""
+"Le style de rendu du panel par défaut ; affiche chaque volet avec un "
+"séparateur."
+msgid "Presents the panes in the form of an HTML list."
+msgstr "Présente les volets sous la forme d'une liste HTML."
+msgid "Rounded corners"
+msgstr "Coins arrondis"
+msgid "Presents the panes or panels with a rounded corner box around them"
+msgstr "Présente les volets ou panels avec un cadre aux coins arrondis"
+msgid "Box around"
+msgstr "Cadre autour"
+msgid "Each pane"
+msgstr "Chaque volet"
+msgid "Machine name"
+msgstr "Nom système"
+msgid "Add row"
+msgstr "Ajouter une ligne"
+msgid "Column"
+msgstr "Colonne"
+msgid "Add new rule"
+msgstr "Ajouter une nouvelle règle"
+msgid "Regions"
+msgstr "Régions"
+msgid "This node"
+msgstr "Ce nœud"
+msgid "Landing page"
+msgstr "Page de destination"
+msgid "1 month"
+msgid_plural "@count months"
+msgstr[0] "@count mois"
+msgstr[1] "@count mois"
+msgid "Add region"
+msgstr "Ajouter une région"
+msgid "Column settings"
+msgstr "Paramètres de la colonne"
+msgid "Row"
+msgstr "Ligne"
+msgid "Row settings"
+msgstr "Paramètres de la ligne"
+msgid "Dashboard"
+msgstr "Tableau de bord"
+msgid "Create new"
+msgstr "Créer nouveau"
+msgid "Canvas"
+msgstr "Canevas"
+msgid "Lorem ipsum"
+msgstr "Lorem ipsum"
+msgid "layout"
+msgstr "mise en page"
+msgid "Invalid input"
+msgstr "Saisie invalide"
+msgid "Menu selection requires the activation of menu module."
+msgstr "La sélection du menu requiert l'activation du module menu."
+msgid "The lower the weight the higher/further left it will appear."
+msgstr "Plus petit sera le poids plus haut/à gauche il apparaitra."
+msgid "Live preview"
+msgstr "Prévisualisation en direct"
+msgid "- All -"
+msgstr "- Tout -"
+msgid "CSS Class"
+msgstr "Classe CSS"
+msgid "All criteria must pass."
+msgstr "Tous les critères doivent être vérifiés."
+msgid "Broken/missing access plugin %plugin"
+msgstr "Plugin d'accès %plugin cassé/manquant"
+msgid "In code"
+msgstr "Dans le code"
+msgid "Enabled, title"
+msgstr "Activées, titre"
+msgid "Administrative title"
+msgstr "Titre pour l'administration"
+msgid ""
+"The name of this page. This will appear in the administrative "
+"interface to easily identify it."
+msgstr ""
+"Le nom de cette page. Il apparaîtra dans l'interface d'administration "
+"afin de l'identifier facilement."
+msgid ""
+"The machine readable name of this page. It must be unique, and it must "
+"contain only alphanumeric characters and underscores. Once created, "
+"you will not be able to change this value!"
+msgstr ""
+"Le nom système de cette page. Il doit être unique et ne contenir que "
+"des caractères alphanumériques et des tirets bas. Une fois créée, "
+"vous ne pourrez plus changer cette valeur !"
+msgid "Administrative description"
+msgstr "Description pour l'administration"
+msgid ""
+"A description of what this page is, does or is for, for administrative "
+"use."
+msgstr ""
+"Une description de ce qu'est cette page, ce qu'elle fait ou est faîte "
+"pour, pour l'administration."
+msgid "That name is used by another page: @page"
+msgstr "Ce nom est déjà utilisé par une autre page : @page"
+msgid "Page name must be alphanumeric or underscores only."
+msgstr ""
+"Le nom d'une page ne peut contenir que des caractères "
+"alphanumériques et des caractères de soulignements (_)."
+msgid ""
+"That path is currently assigned to be an alias for @alias. This system "
+"cannot override existing aliases."
+msgstr ""
+"Ce chemin est actuellement assigné à l'alias @alias. Ce système ne "
+"peut pas surcharger les alias existants."
+msgid "page-summary-label"
+msgstr "page-summary-label"
+msgid "page-summary-data"
+msgstr "page-summary-data"
+msgid "page-summary-operation"
+msgstr "page-summary-operation"
+msgid "Substitutions"
+msgstr "Substitutions"
+msgid "@identifier: @title"
+msgstr "@identifier : @title"
+msgid ""
+"The CTools API version is too old for Panels. Panels needs at least "
+"%version."
+msgstr ""
+"La version de l'API de CTools est trop ancienne pour Panels. Panels "
+"requiert au moins la %version."
+msgid "CTools API Version"
+msgstr "Version de l'API de CTools"
+msgid "Panel page"
+msgstr "Page du panel"
+msgid "You must activate the page manager module for this functionality."
+msgstr "Vous devez activer le module page manager pour cette fonctionnalité."
+msgid ""
+"Panel nodes are node content and appear in your searches, but are more "
+"limited than panel pages."
+msgstr ""
+"Les nœuds de panel sont des nœuds de contenu qui apparaissent dans "
+"vos recherches. Mais ils sont plus limités que les pages de panel."
+msgid "Panel node"
+msgstr "Nœud de panel"
+msgid "You must activate the panel node module for this functionality."
+msgstr "Vous devez activer le module panel node pour cette fonctionnalité."
+msgid ""
+"Mini panels are small content areas exposed as blocks, for when you "
+"need to have complex block layouts or layouts within layouts."
+msgstr ""
+"Les mini panels sont des petites zones de contenu affichées comme des "
+"blocs, pour les besoins de mise en forme de blocs complexes ou de "
+"mises en forme à l'intérieur de mises en forme."
+msgid "Mini panel"
+msgstr "Mini-panneau"
+msgid "You must activate the Mini panels module for this functionality."
+msgstr "Vous devez activer le module Mini panels pour cette fonctionnalité."
+msgid "Go to list"
+msgstr "Aller à la liste"
+msgid "There are no mini panels."
+msgstr "Il n'y a aucun mini-panneau."
+msgid ""
+"There are currently no settings to change, but additional plugins or "
+"modules may provide them in the future."
+msgstr ""
+"Il n'y a actuellement pas de paramètres à changer, mais des plugins "
+"additionnels ou des modules peuvent vous les fournir dans le futur."
+msgid "Your changes have been discarded."
+msgstr "Vos modifications ont été rejetées."
+msgid "Disable this pane"
+msgstr "Désactiver ce volet"
+msgid "Enable this pane"
+msgstr "Activer ce volet"
+msgid "CSS properties"
+msgstr "Propriétés CSS"
+msgid "Invalid pane id."
+msgstr "Identifiant (ID) de volet invalide."
+msgid "Cache method for this display"
+msgstr "Méthode de mise en cache pour cet affichage"
+msgid "Cache method for !subtype_title"
+msgstr "Méthode de cache pour !subtype_title"
+msgid "Cache settings for this display"
+msgstr "Paramètres de cache pour cet affichage"
+msgid "Cache settings for !subtype_title"
+msgstr "Paramètres de cache pour !subtype_title"
+msgid "Default style for this display"
+msgstr "Style par défaut pour cet affichage"
+msgid "Panel style for region \"!region\""
+msgstr "Style de panneau pour la région \"!region\""
+msgid "Use display default style"
+msgstr "Utiliser le style d'affichage par défaut"
+msgid "Style settings for @style (display)"
+msgstr "Paramètres de style pour @style (affichage)"
+msgid "Style settings for style @style (Region \"!region\")"
+msgstr "Paramètres de style pour le style @style (Région \"!region\")"
+msgid "Style settings for style @style (Pane \"!pane\")"
+msgstr "Paramètres de style pour le style @style (Volet \"!pane\")"
+msgid "Configure CSS on !subtype_title"
+msgstr "Configurer la CSS sur !subtype_title"
+msgid "Access settings on !subtype_title"
+msgstr "Paramètres d'accès à !subtype_title"
+msgid "Add visibility rule for !subtype_title"
+msgstr "Ajouter une règle de visibilité pour !subtype_title"
+msgid "Invalid test id."
+msgstr "Identifiant (ID) de test invalide."
+msgid "Configure visibility rule for !subtype_title"
+msgstr "Configurer la règle de visibilité pour !subtype_title"
+msgid "Panel layout has been updated."
+msgstr "La mise en page du panneau a été mise à jour."
+msgid "Mini panel: \"@title\""
+msgstr "Mini-panneau : \"@title\""
+msgid ""
+"Create mini panels that can be used as blocks by Drupal and panes by "
+"other panel modules."
+msgstr ""
+"Créer des mini-panneaux pouvant être utilisés comme des blocs par "
+"Drupal et comme des volets par d'autres modules de panneaux."
+msgid "A panel layout broken up into rows and columns."
+msgstr "Une mise en forme de panel divisée en lignes et colonnes."
+msgid "Configure which content is available to add to panel node displays."
+msgstr ""
+"Choisir quel contenu peut être ajouté aux affichages du nœud de "
+"panel."
+msgid "Show layout designer"
+msgstr "Montrer l'outil de mise en page"
+msgid "Remove column"
+msgstr "Enlever la colonne"
+msgid "Add row to top"
+msgstr "Ajouter une ligne en haut"
+msgid "Add row to bottom"
+msgstr "Ajouter une ligne en bas"
+msgid "Remove row"
+msgstr "Enlever la ligne"
+msgid "Add column"
+msgstr "Ajouter une colonne"
+msgid "Add region to left"
+msgstr "Ajouter une région à gauche"
+msgid "Add column to left"
+msgstr "Ajouter une colonne à gauche"
+msgid "Add region to right"
+msgstr "Ajouter une région à droite"
+msgid "Add column to right"
+msgstr "Ajouter une colonne à droite"
+msgid "Region settings"
+msgstr "Paramètres de la région"
+msgid "Remove region"
+msgstr "Enlever la région"
+msgid "Invalid item id."
+msgstr "Identifiant (ID) de l'élément invalide."
+msgid "Configure column"
+msgstr "Configurer la colonne"
+msgid "Configure row"
+msgstr "Configurer la ligne"
+msgid "Configure region"
+msgstr "Configurer la région"
+msgid "Region title"
+msgstr "Titre de la région"
+msgid "Fluid"
+msgstr "Fluide"
+msgid "You must remove contained items to change the row container type."
+msgstr ""
+"Vous devez enlever les éléments contenus pour changer le type de "
+"conteneur de ligne."
+msgid ""
+"Items cannot be set to fluid if there are fixed items already on that "
+"side."
+msgstr ""
+"Les éléments ne peuvent pas être définis comme fluides s'il y a "
+"déjà des éléments fixes de ce côté."
+msgid "Hide layout designer"
+msgstr "Cacher l'outil de mise en page"
+msgid "No markup at all"
+msgstr "Aucune balise"
+msgid "Each region"
+msgstr "Chaque région"
+msgid ""
+"Choose whether to include the box around each pane (piece of content) "
+"or region (each column or region)"
+msgstr ""
+"Choisir de placer la boite autour de chaque volet (morceau de contenu) "
+"ou de chaque région (chaque colonne ou région)."
+msgid "Change general settings about this variant."
+msgstr "Modifier les paramètres généraux de cette variante."
+msgid "Selection rules"
+msgstr "Règles de sélection"
+msgid ""
+"Control the criteria used to decide whether or not this variant is "
+"used."
+msgstr ""
+"Contrôler le critère utilisé pour décider si cette variante est "
+"utilisée ou non."
+msgid ""
+"Add additional context objects to this variant that can be used by the "
+"content."
+msgstr ""
+"Ajouter des objets de contexte additionnels pour que cette variante "
+"puisse être utilisée par le contenu."
+msgid ""
+"Add content items and change their location with a drag and drop "
+"interface."
+msgstr ""
+"Ajouter les éléments de contenu et changer leur position avec une "
+"interface glisser-déplacer."
+msgid "Move content from old layout"
+msgstr "Déplacer le contenu de l'ancienne mise en forme"
+msgid "Get a preview of what this variant will look like."
+msgstr "Avoir un aperçu de ce à quoi la variante ressemblera"
+msgid "This panel will be selected if @conditions."
+msgstr "Ce panel sera sélectionné si @conditions."
+msgid "This panel will always be selected."
+msgstr "Ce panel sera toujours sélectionné."
+msgid "Selection rule"
+msgstr "Règle de sélection"
+msgid "Panel: @title"
+msgstr "Panneau : @title"
+msgid "You must select a layout."
+msgstr "Vous devez sélectionner une mise en forme."
+msgid "You must select a different layout if you wish to change layouts."
+msgstr ""
+"Vous devez sélectionner une mise en forme différente si vous "
+"souhaitez changer les mises en formes."
+msgid "Update and preview"
+msgstr "Modifier et prévisualiser"
+msgid "Administrative title of this variant."
+msgstr "Titre administratif de cette variante."
+msgid ""
+"Check this to have the page disable all regions displayed in the "
+"theme. Note that some themes support this setting better than others. "
+"If in doubt, try with stock themes to see."
+msgstr ""
+"Cocher pour que la page désactive toutes les régions affichées dans "
+"le thème. Notez que certains thèmes supportent ce paramètre mieux "
+"que d'autres. En cas de doute, essayez avec des thèmes en stock pour "
+"voir."
+msgid ""
+"Core Panels display functions; provides no external UI, at least one "
+"other Panels module should be enabled."
+msgstr ""
+"Fonctions d'affichage de Core Panels ; ne fournissent pas d'UI "
+"externe, au moins un autre module Panels devrait être activé."
+msgid "You may use substitutions in this title."
+msgstr "Vous pouvez utiliser des substitutions dans ce titre."
+msgid ""
+"Content options are divided by category. Please select a category from "
+"the left to proceed."
+msgstr ""
+"Les options de contenu sont séparées par catégories. Veuillez "
+"sélectionner une catégorie à gauche pour continuer."
+msgid "Change the layout of this panel."
+msgstr "Modifier la mise en page de ce panneau."
+msgid "Manage mini panels"
+msgstr "Gérer les mini-panneaux"
+msgid "Header text"
+msgstr "Texte de l'entête"
+msgid "&#x2713;Panel title"
+msgstr "&#x2713;Titre du panneau"
+msgid "No rules"
+msgstr "Aucune règle"
+msgid "Title type"
+msgstr "Type de titre"
+msgid "Manually set"
+msgstr "Défini manuellement"
+msgid "From pane"
+msgstr "Depuis le panneau"
+msgid ""
+"NOTE: in order to import panel_nodes you must first set the "
+"export.module settings to \"Save as a new node then edit\", otherwise "
+"it won't work."
+msgstr ""
+"NOTE : afin d'importer un panneau de nœuds vous devez préalablement "
+"définir les paramètres de export.module sur \"Enregistrer en tant "
+"que nouveau nœud puis éditer\", sinon ça ne fonctionnera pas."
+msgid "Region class"
+msgstr "Classe CSS de la région"
+msgid "Fixed width"
+msgstr "Largeur fixe"
+msgid ""
+"That path is already in use. This system cannot override existing "
+"paths."
+msgstr ""
+"Ce chemin est déjà utilisé. Le système ne peut supplanter les "
+"chemins existants."
+msgid "Menu title"
+msgstr "Titre de menu"
+msgid "Panels: saved display \"%title\" with display id %did"
+msgstr "Panels : affichage \"%title\" enregistré sous l'identifiant %did"
+msgid "Panels: saved display with id %did"
+msgstr "Panneaux (panels) : affichage enregistré avec l'id %did"
+msgid "Manage this mini-panel"
+msgstr "Gérer ce mini-panneau"
+msgid ""
+"The name of this style. This will appear in the administrative "
+"interface to easily identify it."
+msgstr ""
+"Le nom de ce style. Il apparaîtra dans l'interface d'administration "
+"pour être facilement identifié."
+msgid ""
+"A description of what this style is, does or is for, for "
+"administrative use."
+msgstr ""
+"Une description de ce qu'est ce style, ce qu'il fait ou à quel usage "
+"il est destiné, pour un usage administratif"
+msgid "You must choose an administrative title."
+msgstr "Vous devez choisir un titre administratif."
+msgid "You must choose a machine name."
+msgstr "Vous devez choisir un nom machine."
+msgid "Create custom style"
+msgstr "Créer un style personnalisé"
+msgid "Make this style available to other regions or panes"
+msgstr "Rendez ce style disponible aux autres régions ou volets"
+msgid "Basic styles"
+msgstr "Styles de base"
+msgid ""
+"A plain box with an optional border. You may set the color of the text "
+"and the border."
+msgstr ""
+"Une boîte simple avec une bordure optionnelle. Vous pouvez définir "
+"la couleur du texte et la bordure."
+msgid "Header background"
+msgstr "Arrière-plan de l'entête"
+msgid "Header border"
+msgstr "Bordure d'entête"
+msgid "Header font"
+msgstr "Police de caractères de l'entête"
+msgid "Rounded shadow box"
+msgstr "Boîte avec un cadre arrondi et une ombre portée."
+msgid "Text font"
+msgstr "Police de caractères du texte"
+msgid "Allows choice of a stylizer style"
+msgstr "Permet la sélection d'un syle de mise à forme"
+msgid "Custom style"
+msgstr "Style personnalisé"
+msgid "Region style"
+msgstr "Style de la région"
+msgid "Reverse (NOT)"
+msgstr "Inverser (NOT)"
+msgid ""
+"This will appear in the administrative interface to easily identify "
+"it."
+msgstr ""
+"Ceci apparaitra dans l'interface d'administration pour facilement "
+"l'identifier."
+msgid ""
+"Panels is enabled but CTools is out of date. All Panels modules are "
+"disabled until CTools is updated. See the status page for more "
+"information."
+msgstr ""
+"Panels est activé mais CTool est obsolète. Tous les modules Panels "
+"sont désactivés jusqu'à ce que CTools soit mis à jour. Consulter "
+"la page de statut pour plus d'information."
+msgid "Panel region"
+msgstr "Région de panneau"
+msgid "Panel pane"
+msgstr "Volet (Panel pane)"
+msgid "Get a bird's eye view of items related to Panels."
+msgstr "Obtenir une vue d'ensemble des objets liés aux Panneaux."
+msgid "Custom layout"
+msgstr "Mise en page personnalisée"
+msgid ""
+"Custom layouts can add more, site-specific layouts that you can use in "
+"your panels."
+msgstr ""
+"Les mises en page personnalisées permettent d'ajouter plus de mises "
+"en page spécifiques au site, que vous pouvez ensuite utiliser dans "
+"vos panneaux."
+msgid "There are no custom layouts."
+msgstr "Il n'y a aucune mise en page personnalisée."
+msgid "Manage custom layouts"
+msgstr "Gérer les mises en page personnalisées."
+msgid "Renders a panel normally. This is the most common option."
+msgstr "Procède au rendu normal du panneau. C'est l'option la plus commune."
+msgid "Add new pane"
+msgstr "Ajouter un nouveau volet"
+msgid "Customize this page"
+msgstr "Personnaliser cette page"
+msgid "Panels In-Place Editor"
+msgstr "Éditeur intégré de Panneaux"
+msgid ""
+"Provide a UI for managing some Panels directly on the frontend, "
+"instead of having to use the backend."
+msgstr ""
+"Fournit une interface utilisateur pour gérer des panneaux directement "
+"depuis les pages à modifier, plutôt que de devoir utiliser "
+"l'interface d'administration des panneaux."
+msgid "In-Place Editor"
+msgstr "Editeur intégré"
+msgid ""
+"Allows privileged users to update and rearrange the content while "
+"viewing this panel."
+msgstr ""
+"Permet aux utilisateurs autorisés de mettre à jour et réorganiser "
+"le contenu lors de la consultation de ce panneau."
+msgid "This will discard all unsaved changes. Are you sure?"
+msgstr ""
+"Les modification non sauvegardées seront perdues. Êtes-vous sûr de "
+"vouloir continuer ?"
+msgid ""
+"This panel is being edited by user !user, and is therefore locked from "
+"editing by others. This lock is !age old.\n"
+"\n"
+"Click OK to break this lock and discard any changes made by !user."
+msgstr ""
+"Ce panneau est en cours de modification par l'utilisateur !user et est "
+"de ce fait verrouillé en édition aux autres utilisateurs. Ce verrou "
+"est en place depuis !age.\r\n"
+"\r\n"
+"Cliquer sur OK pour casser ce verrou. Toutes les modifications faites "
+"par !user seront perdues."
+msgid "Missing layout"
+msgstr "Mise en page manquante"
+msgid "mini panel"
+msgstr "mini-panneau"
+msgid "mini panels"
+msgstr "mini-panneaux"
+msgid "Renderer"
+msgstr "Moteur de rendu"
+msgid "Only one criterion must pass."
+msgstr "Un seul critère doit passer."
+msgid "Layout: @layout couldn't been found, maybe the theme is disabled."
+msgstr ""
+"La mise en page : @layout n'a pas pu être trouvée. Le thème est "
+"peut-être désactivé."
+msgid ""
+"What category this layout should appear in. If left blank the category "
+"will be \"Miscellaneous\"."
+msgstr ""
+"Dans quelle catégorie cet agencement devrait apparaître. Si ce champ "
+"est laissé vide, la catégorie sera \"Divers\"."
+msgid "Broken/missing plugin"
+msgstr "Plugin corrompu/manquant"
+msgid "layouts"
+msgstr "mises en page"
+msgid "Builders"
+msgstr "Constructeurs"
+msgid "Reuse layout"
+msgstr "Réutiliser la mise en page"
+msgid "Canvas settings"
+msgstr "Paramètres de canevas"
+msgid "Configure canvas"
+msgstr "Configurer les canevas"
+msgid "Canvas class"
+msgstr "Classe de cavenas"
+msgid ""
+"This class will the primary class for this layout. It will also be "
+"appended to all column, row and region_classes to ensure that layouts "
+"within layouts will not inherit CSS from each other. If left blank, "
+"the name of the layout or ID of the display will be used."
+msgstr ""
+"Cette classe sera la classe primaire pour cette mise en page. Elle "
+"sera également ajoutée à toutes les colonnes, lignes et classes de "
+"région pour s'assurer que les mises en pages dans les mises en pages "
+"ne vont pas hériter des CSS des uns et des autres. Si laissé vide, "
+"le nom de la mise en page ou l'identifiant de l'affichage sera "
+"utilisé."
+msgid "Column class"
+msgstr "Classe de colonne"
+msgid ""
+"This class will be applied to all columns of the layout. If left blank "
+"this will be panels-flexible-column."
+msgstr ""
+"Cette classe sera appliquée à toutes les colonnes de la mise en "
+"page. Si ce champ est laissé vide, ce sera : panels-flexible-column."
+msgid "Row class"
+msgstr "Classe de ligne"
+msgid ""
+"This class will be applied to all rows of the layout. If left blank "
+"this will be panels-flexible-row."
+msgstr ""
+"Cette classe sera appliquée à toutes les lignes de la mise en page. "
+"Si ce champ est laissé vide, ce sera : panels-flexible-row."
+msgid ""
+"This class will be applied to all regions of the layout. If left blank "
+"this will be panels-flexible-region."
+msgstr ""
+"Cette classe sera appliquée à toutes les régions de la mise en "
+"page. Si ce champ est laissé vide, ce sera : panels-flexible-region."
+msgid "Scale fluid widths for IE6"
+msgstr "Met à l'échelle les largeurs variables pour IE6"
+msgid ""
+"IE6 does not do well with 100% widths. If checked, width will be "
+"scaled to 99% to compensate."
+msgstr ""
+"IE6 ne s’accommode pas convenablement des largeurs à 100%. Si cette "
+"case est cochée, la largeur sera ajustée à 99% pour compenser."
+msgid ""
+"If a value is entered, the layout canvas will be fixed to the given "
+"pixel width."
+msgstr ""
+"Si une valeur est saisie, le canevas de la mise en page sera figé au "
+"nombre de pixels de largeur renseigné."
+msgid "Column separation"
+msgstr "Séparation des colonnes"
+msgid ""
+"How much padding to put on columns that are that are next to other "
+"columns. Note that this is put on both columns so the real amount is "
+"doubled."
+msgstr ""
+"Quelle marge intérieure (padding) utiliser entre deux colonnes "
+"adjacentes ? Note : cette marge est utilisée de part et d'autre de la "
+"colonne, la valeur finale est donc multipliée par deux."
+msgid "Region separation"
+msgstr "Séparation des régions"
+msgid ""
+"How much padding to put on regions that are that are next to other "
+"regions. Note that this is put on both regions so the real amount is "
+"doubled."
+msgstr ""
+"Quelle marge intérieure (padding) utiliser entre deux régions "
+"adjacentes ? Note : cette marge est utilisée de part et d'autre de la "
+"région, la valeur finale est donc multipliée par deux."
+msgid "Row separation"
+msgstr "Séparation des lignes"
+msgid ""
+"How much padding to put on beneath rows to separate them from each "
+"other. Because this is placed only on the bottom, not hte top, this is "
+"NOT doubled like column/region separation."
+msgstr ""
+"Quelle marge intérieure (padding) utiliser entre deux lignes "
+"successives ? Note : cette marge est utilisée en-dessous et au-dessus "
+"de la ligne, la valeur finale est donc multipliée par deux."
+msgid ""
+"Enter a CSS class that will be used. This can be used to apply "
+"automatic styling from your theme, for example."
+msgstr ""
+"Saisir la classe CSS qui sera utilisée. Ceci peut être utilisé pour "
+"appliquer automatiquement un style de votre thème, par exemple."
+msgid "Save this layout for reuse"
+msgstr "Enregistrer cette mise en page pour une réutilisation"
+msgid ""
+"The machine readable name of this layout. It must be unique, and it "
+"must contain only alphanumeric characters and underscores. Once "
+"created, you will not be able to change this value!"
+msgstr ""
+"Le nom de cet agencement, exploitable informatiquement. Il doit être "
+"unique et ne doit contenir que des caractères alphanumériques et des "
+"espaces soulignées. Une fois créé, vous ne pourrez plus modifier "
+"cette valeur !"
+msgid ""
+"A description of what this layout is, does or is for, for "
+"administrative use."
+msgstr ""
+"Une description de cette mise en page, ce qu'elle fait ou à quel "
+"usage elle est destinée, pour un usage administratif."
+msgid "Keep current panel layout flexible"
+msgstr "Conserve la flexibilité de la mise en page du panneau"
+msgid ""
+"If checked, this panel will continue to use a generic flexible layout "
+"and will not use the saved layout. Use this option if you wish to "
+"clone this layout."
+msgstr ""
+"Si cette case et cochée, ce panneau continuera d'utiliser une mise en "
+"page générique flexible et ne fera pas usage de la mise en page "
+"enregistrée. Utilisez cette option si vous souhaitez dupliquer cette "
+"mise en page."
+msgid "That name is used by another layout: @layout"
+msgstr "Ce nom est utilisé par une autre mise en page : @layout"
+msgid "Columns: 1"
+msgstr "Colonnes : 1"
+msgid "Columns: 3"
+msgstr "Colonnes : 3"
+msgid "Columns: 2"
+msgstr "Colonnes : 2"
+msgid "That name is used by another style: @page"
+msgstr "Ce nom est utilisé par un autre style : @page"
+msgid "Use Panels Dashboard"
+msgstr "Utiliser le tableau de bord Panels"
+msgid "View administrative links on Panel panes"
+msgstr "Voir les liens d'administration sur les volets Panels"
+msgid "Configure access settings on Panel panes"
+msgstr "Configurer les paramètres d'accès aux volets Panels"
+msgid ""
+"Access rules (often also called visibility rules) can be configured on "
+"a per-pane basis. This permission allows users to configure those "
+"settings."
+msgstr ""
+"Les règles d'accès (souvent aussi appelées règles de visibilité) "
+"peuvent être configurées par volet. Ce droit autorise l'utilisateur "
+"à configurer ces paramètres."
+msgid "Use the Panels In-Place Editor"
+msgstr "Utiliser l'éditeur en ligne Panels"
+msgid "Allows a user to utilize Panels' In-Place Editor."
+msgstr "Autorise un utilisateur à utiliser l'éditeur en ligne Panels."
+msgid "Configure advanced settings on Panel panes"
+msgstr "Configurer les paramètres avancés des volets Panels"
+msgid "Administer Panels layouts"
+msgstr "Administrer les mises en page Panels"
+msgid "Configure caching settings on Panels"
+msgstr "Configurer les paramètres de cache des panneaux"
+msgid "Allows a user to configure caching on Panels displays and panes."
+msgstr ""
+"Autorise un utilisateur à configurer la mise en cache sur les "
+"affichages et volets Panels"
+msgid "Page wizards"
+msgstr "Assistants de configuration de page"
+msgid "Create mini panels"
+msgstr "Créer des mini panneaux"
+msgid "Create new mini panels"
+msgstr "Créer de nouveaux mini panneaux"
+msgid "Administer mini panels"
+msgstr "Administrer les mini panneaux"
+msgid "Edit and delete mini panels"
+msgstr "Modifier et supprimer des mini panneaux"
+msgid "Administer panel nodes"
+msgstr "Administrer les nœuds panneaux"
+msgid ""
+"Full administrative access to panel nodes including create, update and "
+"delete all"
+msgstr ""
+"Accès complet à l'administration des nœuds-panneaux y compris "
+"créer, modifier et tout supprimer"
+msgid ""
+"If you save this layout for reuse it will appear in the list of "
+"reusable layouts at admin/structure/panels/layouts, and you will need "
+"to go there to edit it. This layout will then become an option for all "
+"future panels you make."
+msgstr ""
+"Si vous enregistrez cette mise en page pour la réutiliser, elle "
+"apparaîtra dans la liste des mises en page réutilisables dans "
+"admin/structure/panels/layouts, et vous devrez aller à cet endroit "
+"pour la modifier. Cette mise en page deviendra ensuite accessible pour "
+"tous les futurs panneaux que vous aller créer."
+msgid "Landing page wizard"
+msgstr "Assistant de page d'atterrissage"
+msgid ""
+"Landing pages are simple pages that have a path, possibly a visible "
+"menu entry, and a panel layout with simple content."
+msgstr ""
+"Les pages d'accueil sont de simples pages ayant un chemin, "
+"éventuellement une entrée de menu visible, et une mise en page de "
+"panneau avec du contenu simple."
+msgid "Add a visible menu entry for this page"
+msgstr "Ajouter une entrée de menu visible pour cette page"
+msgid "%, !, ?, #, or & cannot appear in the path."
+msgstr "%, !, ?, # et & ne peuvent pas apparaître dans le chemin."
+msgid "Panel fields"
+msgstr "Champs du panneau"
+msgid "Displays the fields in a panel rather than using a template."
+msgstr "Affiche les champs dans un panneau plutôt que d'utiliser un gabarit."
+msgid "Panes"
+msgstr "Étapes"
+msgid "Multilingual - Internationalization"
+msgstr "Multilinguisme - Internationalisation"
+msgid "Added panels_pane.lock field."
+msgstr "Champ panels_pane.lock ajouté."
+msgid "panels_pane.lock field already existed, update skipped."
+msgstr ""
+"Le champ panels_pane.lock existait déjà, la mise à jour a été "
+"ignorée."
+msgid "Immovable"
+msgstr "Inamovible"
+msgid "No lock"
+msgstr "Aucun verrou"
+msgid "Configure lock on !subtype_title"
+msgstr "Configurer le verrouillage de !subtype_title"
+msgid "Lock type"
+msgstr "Type de verrou"
+msgid "Remove body CSS classes"
+msgstr "Retirer les classes CSS du corps"
+msgid "Add body CSS classes"
+msgstr "Ajouter des classes CSS au corps"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/password_policy-7.x-1.15.fr.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,432 @@
+# French translation of Password Policy (7.x-1.15)
+# Copyright (c) 2018 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Password Policy (7.x-1.15)\n"
+"POT-Creation-Date: 2018-03-06 20:45+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Save configuration"
+msgstr "Enregistrer la configuration"
+msgid "Reset to defaults"
+msgstr "Revenir aux valeurs par défaut"
+msgid "Request new password via e-mail."
+msgstr "Demander un nouveau mot de passe par courriel."
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Username"
+msgstr "Nom d'utilisateur"
+msgid "List"
+msgstr "Lister"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Description"
+msgstr "Description"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Action"
+msgstr "Action"
+msgid "Edit"
+msgstr "Modifier"
+msgid "This action cannot be undone."
+msgstr "Cette action est irréversible."
+msgid "Password"
+msgstr "Mot de passe"
+msgid "Weight"
+msgstr "Poids"
+msgid "The configuration options have been saved."
+msgstr "Les options de configuration ont été enregistrées."
+msgid "Settings"
+msgstr "Paramètres"
+msgid "Note:"
+msgstr "Note :"
+msgid "Name"
+msgstr "Nom"
+msgid "edit"
+msgstr "modifier"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "Add"
+msgstr "Ajouter"
+msgid "View"
+msgstr "Voir"
+msgid "Length"
+msgstr "Longueur"
+msgid "History"
+msgstr "Historique"
+msgid "The configuration options have been reset to their default values."
+msgstr ""
+"Les options de configuration ont été réinitialisées à leurs "
+"valeurs par défaut."
+msgid "Create"
+msgstr "Créer"
+msgid "Good"
+msgstr "Bien"
+msgid "Roles"
+msgstr "Rôles"
+msgid "E-mail address"
+msgstr "Adresse de courriel"
+msgid "Warning"
+msgstr "Avertissement"
+msgid "Other"
+msgstr "Autre"
+msgid "Save changes"
+msgstr "Enregistrer les modifications"
+msgid "Visibility settings"
+msgstr "Paramètres de visibilité"
+msgid "Expiration"
+msgstr "Expiration"
+msgid "Delay"
+msgstr "Délai"
+msgid "The changes have been saved."
+msgstr "Les changements ont été enregistrés."
+msgid "Request new password"
+msgstr "Demander un nouveau mot de passe"
+msgid "digits"
+msgstr "chiffres"
+msgid "Blocked"
+msgstr "Bloqué"
+msgid "unblock"
+msgstr "débloquer"
+msgid "Letter"
+msgstr "Lettre"
+msgid "Uppercase"
+msgstr "Majuscule"
+msgid "Password policy"
+msgstr "Politique de mot de passe"
+msgid "Configures policies for user account passwords."
+msgstr ""
+"Définie des politiques pour les mots de passe des comptes "
+"d'utilisateurs."
+msgid "Expired accounts"
+msgstr "Comptes expirés"
+msgid "Unblock"
+msgstr "Débloquer"
+msgid "Password Expiration"
+msgstr "Expiration du mot de passe"
+msgid "Password Expiration Warning"
+msgstr "Notification d'expiration de mot de passe"
+msgid "Password for user %name has expired."
+msgstr "Le mot de passe de l'utilisateur %name a expiré."
+msgid "Admin (UID=1) password expires."
+msgstr "Le mot de passe de l'administrateur (uid =1) expire."
+msgid "Admin account password will obey expiration policy."
+msgstr ""
+"Le mot de passe du compte d'administration respectera les politiques "
+"d'expiration."
+msgid "Beginning of password expirations"
+msgstr "Début d'expiration des mots de passe"
+msgid ""
+"After expiration time from setting a default policy (all passwords are "
+"valid during the expiration time from setting the default policy, and "
+"after that older than expiration time passwords expire)."
+msgstr ""
+"Durée post expiration avant mise en place d'une politique par défaut "
+"(tous les mots de passe sont valides durant la période post "
+"expiration avant mise en place de la politique par défaut, après "
+"cela, les mots de passe plus anciens que la période d'expiration "
+"expirent)."
+msgid ""
+"Setting a default policy (passwords older than expiration time expire "
+"after setting the default policy, retroactive behaviour)."
+msgstr ""
+"Mise en place d'une politique par défaut (les mots de passe plus "
+"anciens que la durée d'expiration expirent après la mise en place de "
+"la politique par défaut, comportement rétroactif)."
+msgid "Blocking expired accounts"
+msgstr "Blocage des comptes expirés"
+msgid "E-mail notification settings"
+msgstr "Paramètres de notification par courriel"
+msgid "Subject of warning e-mail"
+msgstr "Sujet du courriel de notification"
+msgid ""
+"Customize the subject of the warning e-mail message, which is sent to "
+"remind of password expiration."
+msgstr ""
+"Personnalisez le sujet du courriel de notification envoyé pour "
+"rappeler l'expiration du mot de passe."
+msgid "Body of warning e-mail"
+msgstr "Corps du courriel de notification"
+msgid ""
+"Customize the body of the warning e-mail message, which is sent to "
+"remind of password expiration."
+msgstr ""
+"Personnalisez le corps du courriel de notification envoyé pour "
+"rappeler l'expiration du mot de passe."
+msgid "Unblocked"
+msgstr "Débloqué"
+msgid "No entries"
+msgstr "Aucune entrée"
+msgid "The user %name has been unblocked."
+msgstr "L'utilisateur \"%name\" a été débloqué."
+msgid "Password expiration warning mailed to %username at %email."
+msgstr ""
+"Notification d'expiration de mot de passe envoyé par courriel à "
+"%username à l'adresse %email."
+msgid "password_policy"
+msgstr "password_policy"
+msgid "Password must contain the specified minimum number of digits."
+msgstr ""
+"Le mot de passe doit comporter au minimum la quantité de chiffres "
+"indiquée."
+msgid "digit"
+msgstr "chiffre"
+msgid "Password must not match any of the user's previous X passwords."
+msgstr ""
+"Le mot de passe ne doit correspondre à aucun des X précédents mots "
+"de passe de l'utilisateur."
+msgid "Password must contain the specified minimum number of letters."
+msgstr ""
+"Le mot de passe doit contenir au minimum le nombre de lettres "
+"indiqué."
+msgid ""
+"Password must contain the specified minimum number of lowercase "
+"letters."
+msgstr ""
+"Le mot de passe doit contenir la quantité minimum de lettres "
+"minuscules définie."
+msgid ""
+"Password must contain the specified minimum number of uppercase "
+"letters."
+msgstr ""
+"Le mot de passe doit contenir la quantité minimum de lettres "
+"majuscules définie."
+msgid "Expiration settings"
+msgstr "Paramètres d'expiration"
+msgid "Bad"
+msgstr "Mauvais"
+msgid "Constraint"
+msgstr "Contrainte"
+msgid "No policies defined."
+msgstr "Aucune politique définie."
+msgid "Policy %name has been updated."
+msgstr "La politique %name a été mise à jour."
+msgid "Policy %name has been created."
+msgstr "La politique %name a été créée."
+msgid "Are you sure you want to delete the policy %name?"
+msgstr "Êtes-vous certain de vouloir supprimer la politique %name ?"
+msgid "Password policy %policy was deleted."
+msgstr "La politique de mots de passe %policy a été supprimée."
+msgid "Policy %name updated."
+msgstr "Politique %name mise à jour."
+msgid "New policy %name created."
+msgstr "Nouvelle politique %name créée."
+msgid "Policy %name was deleted."
+msgstr "Politique %name supprimée."
+msgid "Your password has not met the following requirement(s):"
+msgstr "Votre mot de masse n'a pas rempli la ou les exigences suivantes :"
+msgid "Password quality:"
+msgstr "Niveau de sécurité du mot de passe :"
+msgid "The password does not include enough variation to be secure."
+msgstr ""
+"Le mot de passe ne présente pas assez de variations pour être "
+"sécurisé."
+msgid "Your password will expire in less than one day. Please change it."
+msgid_plural "Your password will expire in less than @count days. Please change it."
+msgstr[0] "Votre mot de passe expirera dans moins d'un jour. Veuillez le changer."
+msgstr[1] ""
+"Votre mot de passe expirera dans moins de @count jours. Veuillez le "
+"changer."
+msgid "Password policies"
+msgstr "Politiques de mots de passe"
+msgid "Lists all expired accounts."
+msgstr "Dresser la liste de tous les comptes expirés."
+msgid ""
+"Password policy module successfully installed. Please review the "
+"available <a href=\"@settings\">configuration settings</a>."
+msgstr ""
+"Le module Password Policy a été installé avec succès. Veuillez "
+"passer en revue les <a href=\"@settings\">paramètres de "
+"configuration</a> disponibles."
+msgid "Alphanumeric"
+msgstr "Alphanumérique"
+msgid ""
+"Password must contain the specified minimum number of alphanumeric "
+"(letters or numbers) characters."
+msgstr ""
+"Le mot de passe doit contenir au minimum le nombre de caractères "
+"alphanumériques (lettres et chiffres) indiqués."
+msgid ""
+"Password must contain at least one alphanumeric (letter or number) "
+"character."
+msgid_plural ""
+"Password must contain at least @count alphanumeric (letter or number) "
+"characters."
+msgstr[0] ""
+"Le mot de passe doit contenir au minimum un caractère alphanumérique "
+"(lettre ou chiffre)."
+msgstr[1] ""
+"Le mot de passe doit contenir au minimum @count caractères "
+"alphanumériques (lettres ou chiffres)."
+msgid ""
+"Password must contain the specified minimum number of character types "
+"(lowercase, uppercase, digit or punctuation)."
+msgstr ""
+"Le mot de passe doit contenir au minimum le nombre de types de "
+"caractères (minuscules, majuscules, chiffres ou ponctuations) "
+"indiqué."
+msgid "Minimum number of hours between password changes."
+msgstr "Nombre minimum d'heures entre deux changements de mot de passe."
+msgid "Password may only be changed in an hour from the last change."
+msgid_plural "Password may only be changed in @count hours from the last change."
+msgstr[0] ""
+"Le mot de passe peut être changé au minimum une heure après le "
+"précédent changement."
+msgstr[1] ""
+"Le mot de passe peut être changé au minimum @count heures après le "
+"précédent changement."
+msgid "Digit"
+msgstr "Chiffre"
+msgid "Password must contain at least one digit."
+msgid_plural "Password must contain at least @count digits."
+msgstr[0] "Le mot de passe doit contenir au moins un chiffre."
+msgstr[1] "Le mot de passe doit contenir au moins @count chiffres."
+msgid "Digit Placement"
+msgstr "Position des chiffres"
+msgid "Password must not match last password."
+msgid_plural "Password must not match last @count passwords."
+msgstr[0] "Le mot de passe ne doit pas identique au dernier mot de passe."
+msgstr[1] ""
+"Le mot de passe ne doit pas identique aux @count derniers mots de "
+"passe."
+msgid "Password must be at least one character in length."
+msgid_plural "Password must be at least @count characters in length."
+msgstr[0] "Le mot de passe doit contenir au minimum un caractère."
+msgstr[1] "Le mot de passe doit contenir au minimum @count caractères."
+msgid "Password must contain at least one letter."
+msgid_plural "Password must contain at least @count letters."
+msgstr[0] "Le mot de passe doit contenir au moins une lettre."
+msgstr[1] "Le mot de passe doit contenir au moins @count lettres."
+msgid "Lowercase"
+msgstr "Minuscules"
+msgid "Password must contain at least one lowercase character."
+msgid_plural "Password must contain at least @count lowercase characters."
+msgstr[0] "Le mot de passe doit contenir au moins un caractère minuscule."
+msgstr[1] "Le mot de passe doit contenir au moins @count caractères minuscules."
+msgid "Punctuation"
+msgstr "Ponctuation"
+msgid ""
+"Password must contain the specified minimum number of punctuation (not "
+"whitespace or an alphanumeric) characters."
+msgstr ""
+"Le mot de passe doit contenir le nombre minimum de caractères de "
+"ponctuation indiqué (autre qu'un espacement ou un caractère "
+"alphanumérique)."
+msgid ""
+"Password must contain at least one punctuation (not whitespace or an "
+"alphanumeric) character."
+msgid_plural ""
+"Password must contain at least @count punctuation (not whitespace or "
+"an alphanumeric) characters."
+msgstr[0] ""
+"Le mot de passe doit contenir au moins un caractère de ponctuation "
+"(autre qu'un espacement ou un caractère alphanumérique)."
+msgstr[1] ""
+"Le mot de passe doit contenir au moins @count caractères de "
+"ponctuation (autre qu'un espacement ou un caractère alphanumérique)."
+msgid "Password must contain at least one uppercase character."
+msgid_plural "Password must contain at least @count uppercase characters."
+msgstr[0] "Le mot de passe doit contenir au moins un caractère majuscule."
+msgstr[1] "Le mot de passe doit contenir au moins @count caractères majuscules."
+msgid ""
+"To change the current user password, enter the new password in both "
+"fields."
+msgstr ""
+"Pour modifier le mot de passe actuel, saisissez le nouveau mot de "
+"passe dans les deux champs de texte."
+msgid "Your password cannot be empty."
+msgstr "Votre mot de passe ne peut pas être vide."
+msgid "Password has been changed."
+msgstr "Le mot de passe a été modifié."
+msgid "Password change tab"
+msgstr "Onglet de changement du mot de passe"
+msgid "Implements a separate password change tab."
+msgstr "Implémente un onglet de changement de mot de passe séparé."
+msgid "Policy"
+msgstr "Politique"
+msgid "No roles were selected."
+msgstr "Aucun rôle sélectionné."
+msgid "Force password change on first-time login"
+msgstr "Forcer le changement de mot passe à la première connexion."
+msgid "Current password"
+msgstr "Mot de passe actuel"
+msgid "Select the roles that this policy will apply to."
+msgstr ""
+"Sélectionnez les rôles pour lesquels cette politique de mots de "
+"passe s'appliquera."
+msgid "Constraints"
+msgstr "Contraintes"
+msgid "You must select at least one role for a policy to apply to."
+msgstr ""
+"Vous devez sélectionner au moins un rôle afin qu'une politique s'y "
+"applique."
+msgid "Password tab settings"
+msgstr "Paramètres de l'onglet mot de passe"
+msgid "Redirect path on password change"
+msgstr "Chemin de redirection lors du changement de mot de passe"
+msgid ""
+"Normally, after a user changes their password, they will be taken to "
+"their user page. Leave this setting blank if you wish to keep the "
+"default behavior. If you wish the user to go to a page of your "
+"choosing, then enter the path for it here. For instance, you may "
+"redirect them to a static page such as <cite>node/35</cite>, or to the "
+"<cite>&lt;front&gt;</cite> page. You may also use <em>%uid</em> as a "
+"variable, and the user's user ID will be substituted in the path. In "
+"the case where users are first creating their own passwords, it is "
+"suggested to use <cite>user/%uid/edit</cite> here, so the user may set "
+"their over account information immediately after validating their "
+"account."
+msgstr ""
+"Normalement, une fois qu'un utilisateur a changé son mot de passe, il "
+"est redirigé vers sa page de compte d'utilisateur. Laissez ce "
+"paramètre vierge si vous souhaitez conserver le comportement par "
+"défaut. Si vous désirez amener l'utilisateur vers une page de votre "
+"choix, saisissez son chemin ici. Par exemple, vous pouvez le rediriger "
+"vers une page statique telle que <cite>node/35</cite>, ou la page "
+"d'accueil <cite>&lt;front&rt;</cite>. Vous pouvez également utiliser "
+"la variable <em>%uid</em> afin que l'identifiant de l'utilisateur soit "
+"substitué dans le chemin. Dans le cas où des utilisateurs créent "
+"leurs propres mots de passe pour la première fois, il est suggéré "
+"d'utiliser <cite>user/%uid/edit/<cite> ici afin que les utilisateurs "
+"puissent renseigner les informations complémentaires de leur compte "
+"après l'avoir validé."
+msgid "Password tab"
+msgstr "Onglet mot de passe"
+msgid "Force users in the following roles to change their password"
+msgstr ""
+"Forcer les utilisateurs des rôles suivants à changer leurs mots de "
+"passe"
+msgid ""
+"Your password has expired. You must change your password to proceed on "
+"the site."
+msgstr ""
+"Votre mot de passe a expiré. Vous devez en changer pour accéder au "
+"site."
+msgid "Password settings"
+msgstr "Paramètres de mot de passe"
+msgid "Weight for @title"
+msgstr "Poids pour @title"
+msgid "Are you sure you would like to unblock the user %user?"
+msgstr "Êtes-vous sûr(e) de vouloir débloquer l'utilisateur %user ?"
+msgid "Unblock user"
+msgstr "Débloquer l'utilisateur"
+msgid ""
+"Password must contain characters of at least one of the following "
+"types: lowercase, uppercase, digit or punctuation."
+msgid_plural ""
+"Password must contain characters of at least @count different types "
+"(lowercase, uppercase, digit or punctuation)."
+msgstr[0] ""
+"Le mot de passe doit contenir des caractères d'au moins un des types "
+"suivants : minuscule, majuscule, chiffre ou ponctuation."
+msgstr[1] ""
+"Le mot de passe doit contenir des caractères d'au moins @count types "
+"parmi les suivants : minuscule, majuscule, chiffre ou ponctuation."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/token-7.x-1.x.fr_1.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,370 @@
+# French translation of Token (7.x-1.6)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Token (7.x-1.6)\n"
+"POT-Creation-Date: 2017-11-10 01:48+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Title"
+msgstr "Titre"
+msgid "Value"
+msgstr "Valeur"
+msgid "Description"
+msgstr "Description"
+msgid "Content types"
+msgstr "Types de contenu"
+msgid "Number"
+msgstr "Nombre"
+msgid "Parent"
+msgstr "Parent"
+msgid "Parents"
+msgstr "Parents"
+msgid "Name"
+msgstr "Nom"
+msgid "Book"
+msgstr "Livre"
+msgid "URL"
+msgstr "URL"
+msgid "Path"
+msgstr "Chemin"
+msgid "Menu"
+msgstr "Menu"
+msgid "Picture"
+msgstr "Image"
+msgid "Content type"
+msgstr "Type de contenu"
+msgid "The name of the menu."
+msgstr "Le nom du menu."
+msgid "Menu link"
+msgstr "Lien du menu"
+msgid "Roles"
+msgstr "Rôles"
+msgid "Count"
+msgstr "Décompte"
+msgid "Last"
+msgstr "Dernier"
+msgid "Arguments"
+msgstr "Arguments"
+msgid "Random"
+msgstr "Au hasard"
+msgid "Root"
+msgstr "Racine"
+msgid "Tokens"
+msgstr "Jetons (tokens)"
+msgid "Token"
+msgstr "Jeton (token)"
+msgid "Available tokens"
+msgstr "Jetons (tokens) disponibles"
+msgid "First"
+msgstr "Premier"
+msgid "Reversed"
+msgstr "Inversé"
+msgid "Menus"
+msgstr "Menus"
+msgid "Extension"
+msgstr "Extension"
+msgid "Keys"
+msgstr "Clés"
+msgid "Node count"
+msgstr "Comptage des nœuds"
+msgid "IP address"
+msgstr "Adresse IP"
+msgid "Root term"
+msgstr "Terme racine"
+msgid "The size of the file."
+msgstr "La taille du fichier."
+msgid "Menu links"
+msgstr "Liens de menu"
+msgid "Current date"
+msgstr "Date actuelle"
+msgid "Machine-readable name"
+msgstr "Nom système"
+msgid "Array"
+msgstr "tableau (Array)"
+msgid "Link ID"
+msgstr "Identifiant du lien"
+msgid "Base name"
+msgstr "Nom de base"
+msgid "Edit URL"
+msgstr "Modifier l'URL"
+msgid "Revision log message"
+msgstr "Message du journal de révision"
+msgid "No tokens available."
+msgstr "Pas de jetons (<em>tokens</em>) disponibles."
+msgid "Click a token to insert it into the field you've last clicked."
+msgstr ""
+"Cliquez sur un jeton (<em>token</em>) pour l'insérer dans le champ "
+"que vous avez sélectionné dernièrement."
+msgid "Translation source node"
+msgstr "Nœud source de la traduction"
+msgid "List of the currently available tokens on this site"
+msgstr "Liste des jetons (<em>tokens</em>) actuellement disponible sur ce site"
+msgid ""
+"Provides a user interface for the Token API and some missing core "
+"tokens."
+msgstr ""
+"Fournit à l'utilisateur une interface pour l'API de Token et quelques "
+"jetons (<em>tokens</em>) du cœur manquants."
+msgid "Insert this token into your form"
+msgstr "Insérer ce jeton (<em>token</em>) dans votre formulaire"
+msgid "First click a text field to insert your tokens into."
+msgstr ""
+"Cliquez d'abord sur un champ de texte pour insérer vos jetons "
+"(<em>tokens</em>) dans celui -ci."
+msgid "Current page"
+msgstr "Page courante"
+msgid ""
+"Available variables are: [site:name], [site:url], [user:name], "
+"[user:mail], [site:login-url], [site:url-brief], [user:edit-url], "
+"[user:one-time-login-url], [user:cancel-url]."
+msgstr ""
+"Les variables disponibles sont : [site:name], [site:url], [user:name], "
+"[user:mail], [site:login-url], [site:url-brief], [user:edit-url], "
+"[user:one-time-login-url], [user:cancel-url]."
+msgid "The explanation of the most recent changes made to the node."
+msgstr ""
+"L'explication de la modification la plus récente effectuée sur le "
+"nœud."
+msgid "The title of the current page."
+msgstr "Le titre de la page actuelle."
+msgid "The URL of the current page."
+msgstr "L'URL de la page actuelle."
+msgid "The page number of the current page when viewing paged lists."
+msgstr ""
+"Le numéro de page de la page courante sur la visualisation de listes "
+"paginées."
+msgid ""
+"The %element-title is using the following invalid tokens: "
+"@invalid-tokens."
+msgstr ""
+"The %element-title utilise les jetons (<em>tokens</em>) invalides "
+"suivants : @invalid-tokens."
+msgid "The source node for this current node's translation set."
+msgstr "Le nœud source du jeu de traductions du nœud courant."
+msgid "Account cancellation URL"
+msgstr "URL d'annulation de compte"
+msgid "The URL of the confirm delete page for the user account."
+msgstr ""
+"L'URL de la page de confirmation de suppression de ce compte "
+"utilisateur."
+msgid "One-time login URL"
+msgstr "URL de connexion à usage unique"
+msgid "The URL of the one-time login page for the user account."
+msgstr "L'URL de connexion à usage unique pour ce compte utilisateur."
+msgid "Tokens related to menu links."
+msgstr "Jetons liés aux liens de menus."
+msgid "The unique ID of the menu link."
+msgstr "L'identifiant unique du lien de menu."
+msgid "The title of the menu link."
+msgstr "Le titre du lien de menu."
+msgid "The URL of the menu link."
+msgstr "L'URL du lien de menu."
+msgid "The menu link's parent."
+msgstr "Le parent du lien de menu."
+msgid "Tokens related to the current page request."
+msgstr "Jetons liés à la requête de la page actuelle."
+msgid "Page number"
+msgstr "Numéro de page"
+msgid "The book page associated with the node."
+msgstr "La page de livre associée au nœud."
+msgid "The menu link for this node."
+msgstr "Le lien de menu pour ce nœud."
+msgid "The menu link's root."
+msgstr "La racine du lien de menu."
+msgid "Hash"
+msgstr "Hachage"
+msgid "The extension of the file."
+msgstr "L'extension de ce fichier."
+msgid "Tokens related to the current date and time."
+msgstr "Jetons liés à la date et l'heure courantes."
+msgid "The URL of the @entity."
+msgstr "L'URL du(de la) @entity"
+msgid "The content type of the node."
+msgstr "Le type de contenu du nœud."
+msgid "Tokens related to content types."
+msgstr "Jetons liés aux types de contenus."
+msgid "The name of the content type."
+msgstr "Le nom du type de contenu."
+msgid "The unique machine-readable name of the content type."
+msgstr "Le nom système unique du type de contenu."
+msgid "The optional description of the content type."
+msgstr "La description optionnelle du type de contenu"
+msgid "The number of nodes belonging to the content type."
+msgstr "Le nombre de nœuds appartenant à ce type de contenu."
+msgid "The URL of the content type's edit page."
+msgstr "L'URL de la page d'édition de ce type de contenu."
+msgid "The URL of the taxonomy term's edit page."
+msgstr "L'URL de la page d'édition de ce terme de taxonomie."
+msgid "The unique machine-readable name of the vocabulary."
+msgstr "Le nom système unique du vocabulaire."
+msgid "The URL of the vocabulary's edit page."
+msgstr "L'URL de la page d'édition de ce vocabulaire."
+msgid "The picture of the user."
+msgstr "L'image de cet utilisateur."
+msgid ""
+"The specific argument of the current page (e.g. 'arg:1' on the page "
+"'node/1' returns '1')."
+msgstr ""
+"L'argument spécifique de la page courante (ex. 'arg:1' sur la page "
+"'node/1' retourne '1')."
+msgid "Tokens related to URLs."
+msgstr "Jetons liés aux URLs."
+msgid "Relative URL"
+msgstr "URL relative"
+msgid "The relative URL."
+msgstr "L'URL relative."
+msgid "Absolute URL"
+msgstr "Url absolue"
+msgid "The absolute URL."
+msgstr "URL absolue"
+msgid "Tokens related to menus."
+msgstr "Jetons liés aux menus."
+msgid "The unique machine-readable name of the menu."
+msgstr "Le nom système unique du nom du menu."
+msgid "The optional description of the menu."
+msgstr "La description (optionnelle) du menu."
+msgid "Menu link count"
+msgstr "Nombre de liens de menu."
+msgid "The number of menu links belonging to the menu."
+msgstr "Le nombre de liens de menus appartenant au menu."
+msgid "The URL of the menu's edit page."
+msgstr "L'URL de la page d'édition du menu."
+msgid "The menu of the menu link."
+msgstr "Le menu du lien de menu."
+msgid "The URL of the menu link's edit page."
+msgstr "L'URL de la page d'édition du lien de menu."
+msgid "@category @type field."
+msgstr "Champ @category @type."
+msgid "The %element-title cannot contain fewer than one token."
+msgid_plural "The %element-title must contain at least @count tokens."
+msgstr[0] "Le %element-title doit contenir au moins @count jeton."
+msgstr[1] "Le %element-title doit contenir au moins @count jetons."
+msgid "The %element-title must contain as most one token."
+msgid_plural "The %element-title must contain at most @count tokens."
+msgstr[0] "Le %element-title doit contenir au plus @count jeton."
+msgstr[1] "Le %element-title doit contenir au plus @count jetons."
+msgid "The user roles associated with the user account."
+msgstr "Les rôles utilisateur associés au compte utilisateur."
+msgid "Brief URL"
+msgstr "URL brève"
+msgid "The URL without the protocol and trailing backslash."
+msgstr "L'URL sans le protocole et le slash (/) de fin."
+msgid "Tokens related to arrays of strings."
+msgstr "Jetons liés à des tableaux de chaînes."
+msgid "The first element of the array."
+msgstr "Le premier élément du tableau."
+msgid "The last element of the array."
+msgstr "Le dernier élément du tableau."
+msgid "The number of elements in the array."
+msgstr "Le nombre d'éléments dans le tableau."
+msgid "The array reversed."
+msgstr "Le tableau inversé."
+msgid "The array of keys of the array."
+msgstr "Le tableau de clés du tableau."
+msgid "Imploded"
+msgstr "Implosé"
+msgid ""
+"The values of the array joined together with a custom string "
+"in-between each value."
+msgstr ""
+"Les valeurs du tableau reliées ensemble par une chaîne "
+"personnalisée entre chaque valeur."
+msgid "A date in '@type' format. (%date)"
+msgstr "Une date dans le format '@type'. (%date)"
+msgid "The root term of the taxonomy term."
+msgstr "Le terme racine du terme de taxonomie."
+msgid "File byte size"
+msgstr "Taille du fichier en octets"
+msgid "The size of the file, in bytes."
+msgstr "La taille du fichier, en octets."
+msgid "Query string value"
+msgstr "Valeur du paramètre d'URL"
+msgid "The value of a specific query string field of the current page."
+msgstr ""
+"La valeur d'un champ de paramètre d'URL spécifique de la page "
+"actuelle."
+msgid "A random number from 0 to @max."
+msgstr "Un nombre aléatoire de 0 à @max."
+msgid "A random hash. The possible hashing algorithms are: @hash-algos."
+msgstr ""
+"Un hachage aléatoire. Les algorithmes de hachage possibles sont : "
+"@hash-algos."
+msgid ""
+"Attempting to perform token replacement for token type %type without "
+"required data"
+msgstr ""
+"Tentative de remplacement d'un jeton pour le type de jeton %type sans "
+"les données requises"
+msgid "@type field."
+msgstr "Champ @type."
+msgid "Also known as %labels."
+msgstr "Aussi connu comme %labels."
+msgid "No tokens available"
+msgstr "Aucun jeton disponible"
+msgid "Token registry caches cleared."
+msgstr "Caches du registre de Token vidés."
+msgid "The path component of the URL."
+msgstr "Le composant du chemin de l'URL."
+msgid "Unaliased URL"
+msgstr "URL sans alias"
+msgid "The unaliased URL."
+msgstr "L'URL sans alias."
+msgid "The specific value of the array."
+msgstr "La valeur spécifique de la liste."
+msgid "Token registry"
+msgstr "Registre de Token"
+msgid ""
+"The list of available tokens that can be used in e-mails is provided "
+"below."
+msgstr ""
+"La liste des jetons disponibles qui peuvent être utilisés dans les "
+"courriels est fournie ci-dessous."
+msgid "The following tokens or token types are not defined as arrays:"
+msgstr ""
+"Les jetons ou types de jetons suivants ne sont pas définis comme "
+"liste :"
+msgid "The following token types do not have any tokens defined:"
+msgstr "Les types de jeton suivants n'ont pas de jeton défini :"
+msgid "The following token types are not defined but have tokens:"
+msgstr ""
+"Les types de jeton suivants ne sont pas définis mais possèdent des "
+"jetons :"
+msgid "The following token or token types are defined by multiple modules:"
+msgstr ""
+"Les jetons ou types de jeton suivants sont définis par plusieurs "
+"modules :"
+msgid "Problems detected"
+msgstr "Problèmes détectés"
+msgid "An array of all the term's parents, starting with the root."
+msgstr "Une liste de tous les termes parents, en commençant avec la racine."
+msgid "An array of all the menu link's parents, starting with the root."
+msgstr ""
+"Une liste de tous les parents du lien de menu, en commençant avec la "
+"racine."
+msgid "Original @entity"
+msgstr "@entity original(e)"
+msgid "The original @entity data if the @entity is being updated or saved."
+msgstr ""
+"Les données originales du/de la @entity si le/la @entity est en cours "
+"de mise à jour ou en cours d'enregistrement."
+msgid "The base name of the file."
+msgstr "Le nom de base du fichier."
+msgid "This field supports tokens."
+msgstr "Ce champ prend en charge les jetons (tokens)."
+msgid ""
+"The following tokens or token types are missing required name and/or "
+"description information:"
+msgstr ""
+"Les jetons ou les types de jetons suivants requièrent un nom et/ou "
+"des informations de description."
+msgid "Browse available tokens."
+msgstr "Explorer les jetons disponibles."
+msgid "Loading token browser..."
+msgstr "Chargement de l'explorateur de jetons..."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/views-7.x-3.x.fr_7.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,5562 @@
+# French translation of Views (7.x-3.6)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Views (7.x-3.6)\n"
+"POT-Creation-Date: 2017-11-09 11:48+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Home"
+msgstr "Accueil"
+msgid "Title"
+msgstr "Titre"
+msgid "Body"
+msgstr "Corps"
+msgid "delete"
+msgstr "supprimer"
+msgid "Status"
+msgstr "Etat"
+msgid "Prefix"
+msgstr "Préfixe"
+msgid "Suffix"
+msgstr "Suffixe"
+msgid "approve"
+msgstr "approuver"
+msgid "E-mail"
+msgstr "Courriel"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Content"
+msgstr "Contenu"
+msgid "Value"
+msgstr "Valeur"
+msgid "Group"
+msgstr "Groupe"
+msgid "Type"
+msgstr "Type"
+msgid "Author"
+msgstr "Auteur"
+msgid "Replies"
+msgstr "Réponses"
+msgid "Last Post"
+msgstr "Dernière contribution"
+msgid "Closed"
+msgstr "Fermé"
+msgid "List"
+msgstr "Lister"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Remove"
+msgstr "Retirer"
+msgid "Description"
+msgstr "Description"
+msgid "Language"
+msgstr "Langue"
+msgid "more"
+msgstr "plus"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "footer"
+msgstr "pied de page"
+msgid "Comments"
+msgstr "Commentaires"
+msgid "More"
+msgstr "Plus"
+msgid "On"
+msgstr "Activé"
+msgid "For"
+msgstr "Pour"
+msgid "Tags"
+msgstr "Étiquettes"
+msgid "Block title"
+msgstr "Titre du bloc"
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Content types"
+msgstr "Types de contenu"
+msgid "Version"
+msgstr "Version"
+msgid "view"
+msgstr "voir"
+msgid "File"
+msgstr "Fichier"
+msgid "Tag"
+msgstr "Étiquette"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Size"
+msgstr "Taille"
+msgid "Search"
+msgstr "Rechercher"
+msgid "Reset"
+msgstr "Réinitialiser"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "Use count"
+msgstr "Nombre d'utilisations"
+msgid "Block settings"
+msgstr "Paramètres du bloc"
+msgid "- None -"
+msgstr "- Aucun(e) -"
+msgid "Weight"
+msgstr "Poids"
+msgid "Link"
+msgstr "Lien"
+msgid "Center"
+msgstr "Centre"
+msgid "Hierarchy"
+msgstr "Hiérarchie"
+msgid "Required"
+msgstr "Requis"
+msgid "Parent"
+msgstr "Parent"
+msgid "Depth"
+msgstr "Profondeur"
+msgid "Category"
+msgstr "Catégorie"
+msgid "Settings"
+msgstr "Paramètres"
+msgid "Feed"
+msgstr "Flux"
+msgid "Name"
+msgstr "Nom"
+msgid "edit"
+msgstr "modifier"
+msgid "Import"
+msgstr "Importer"
+msgid "Book"
+msgstr "Livre"
+msgid "Taxonomy term"
+msgstr "Terme de taxonomie"
+msgid "Description field"
+msgstr "Champ description"
+msgid "settings"
+msgstr "paramètres"
+msgid "Node ID"
+msgstr "Identifiant (ID) du nœud"
+msgid "Field"
+msgstr "Champ"
+msgid "header"
+msgstr "en-tête"
+msgid "Label"
+msgstr "Étiquette"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "True"
+msgstr "Vrai"
+msgid "False"
+msgstr "Faux"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Open"
+msgstr "Ouvert"
+msgid "Core"
+msgstr "Cœur"
+msgid "Add new"
+msgstr "Ajouter nouveau"
+msgid "Views"
+msgstr "Vues"
+msgid "Access"
+msgstr "Accès"
+msgid "Add"
+msgstr "Ajouter"
+msgid "View"
+msgstr "Voir"
+msgid "Format"
+msgstr "Format"
+msgid "URL"
+msgstr "URL"
+msgid "Path"
+msgstr "Chemin"
+msgid "Vocabularies"
+msgstr "Vocabulaires"
+msgid "Display"
+msgstr "Affichage"
+msgid "Menu"
+msgstr "Menu"
+msgid "Teaser"
+msgstr "Accroche"
+msgid "GUID"
+msgstr "GUID"
+msgid "Text"
+msgstr "Texte"
+msgid "Theme"
+msgstr "Thème"
+msgid "Timestamp"
+msgstr "Horodatage"
+msgid "ID"
+msgstr "Identifiant (ID)"
+msgid "Unknown"
+msgstr "Inconnu"
+msgid "Attachment"
+msgstr "Fichier attaché"
+msgid "Picture"
+msgstr "Image"
+msgid "Mail"
+msgstr "Courriel"
+msgid "Before"
+msgstr "Avant"
+msgid "After"
+msgstr "Après"
+msgid "Promoted"
+msgstr "Promu"
+msgid "User"
+msgstr "Utilisateur"
+msgid "Continue"
+msgstr "Continuer"
+msgid "Files"
+msgstr "Fichiers"
+msgid "Error"
+msgstr "Erreur"
+msgid "Options"
+msgstr "Options"
+msgid "Node"
+msgstr "Nœud"
+msgid "Number of columns"
+msgstr "Nombre de colonnes"
+msgid "Separator"
+msgstr "Séparateur"
+msgid "Exclude"
+msgstr "Exclure"
+msgid "Horizontal"
+msgstr "Horizontal"
+msgid "Vertical"
+msgstr "Vertical"
+msgid "term"
+msgstr "terme"
+msgid "All"
+msgstr "Tout"
+msgid "Access log"
+msgstr "Journal d'accès"
+msgid "Active"
+msgstr "Actif"
+msgid "Year"
+msgstr "Année"
+msgid "Date format"
+msgstr "Format de date"
+msgid "Page title"
+msgstr "Titre de page"
+msgid "Block"
+msgstr "Bloc"
+msgid "Override title"
+msgstr "Supplanter le titre"
+msgid "CSS class"
+msgstr "Classe CSS"
+msgid "Display links"
+msgstr "Afficher les liens"
+msgid "Page"
+msgstr "Page"
+msgid "Pager ID"
+msgstr "ID de la pagination"
+msgid "Taxonomy terms"
+msgstr "Termes de taxonomie"
+msgid "Module"
+msgstr "Module"
+msgid "Off"
+msgstr "Désactivé"
+msgid "Header"
+msgstr "Entête"
+msgid "Footer"
+msgstr "Pied de page"
+msgid "Selected"
+msgstr "Sélectionné"
+msgid "Aggregator category"
+msgstr "Catégorie d'agrégateur"
+msgid "Aggregator feed"
+msgstr "Flux d'agrégateur"
+msgid "Aggregator item"
+msgstr "Élément d'agrégateur"
+msgid "Custom"
+msgstr "Personnalisé"
+msgid "Roles"
+msgstr "Rôles"
+msgid "Comment"
+msgstr "Commentaire"
+msgid "Hostname"
+msgstr "Nom d'hôte"
+msgid "Score"
+msgstr "Score"
+msgid "Published"
+msgstr "Publié"
+msgid "Signature"
+msgstr "Signature"
+msgid "Filter"
+msgstr "Filtrer"
+msgid "Location"
+msgstr "Emplacement"
+msgid "Promoted to front page"
+msgstr "Promu en page d'accueil"
+msgid "Log message"
+msgstr "Message de journal"
+msgid "Session ID"
+msgstr "Identifiant de session"
+msgid "File ID"
+msgstr "Identifiant (ID) de fichier"
+msgid "Vocabulary"
+msgstr "Vocabulaire"
+msgid "Vocabulary ID"
+msgstr "Identifiant (ID) de vocabulaire"
+msgid "Term"
+msgstr "Terme"
+msgid "Term ID"
+msgstr "Identifiant (ID) du terme"
+msgid "Term name"
+msgstr "Nom du terme"
+msgid "Last access"
+msgstr "Dernier accès"
+msgid "Last login"
+msgstr "Dernière connexion"
+msgid "Field name"
+msgstr "Nom du champ"
+msgid "Fields"
+msgstr "Champs"
+msgid "Widget type"
+msgstr "Type de widget"
+msgid "Contains"
+msgstr "Contient"
+msgid "Does not contain"
+msgstr "Ne contient pas"
+msgid "Is less than"
+msgstr "Est inférieur à"
+msgid "Is less than or equal to"
+msgstr "Est inférieur ou égal à"
+msgid "Is equal to"
+msgstr "Est égal à"
+msgid "Is greater than or equal to"
+msgstr "Est supérieur ou égal à"
+msgid "Is greater than"
+msgstr "Est supérieur à"
+msgid "Is not equal to"
+msgstr "N'est pas égal à"
+msgid "Average"
+msgstr "Moyenne"
+msgid "Count"
+msgstr "Décompte"
+msgid "Overridden"
+msgstr "Supplanté"
+msgid "Watchdog"
+msgstr "Surveillance"
+msgid "Normal"
+msgstr "Normal"
+msgid "Last update"
+msgstr "Dernière mise à jour"
+msgid "%time ago"
+msgstr "Il y a %time"
+msgid "Advanced"
+msgstr "Avancé"
+msgid "Sort order"
+msgstr "Ordre de tri"
+msgid "Maximum"
+msgstr "Maximum"
+msgid "Sortable"
+msgstr "Classable"
+msgid "Caching"
+msgstr "Mise en cache"
+msgid "Month"
+msgstr "Mois"
+msgid "System"
+msgstr "Système"
+msgid "Current"
+msgstr "Actuel"
+msgid "Desc"
+msgstr "Desc"
+msgid "OR"
+msgstr "OU (OR)"
+msgid "node"
+msgstr "nœud"
+msgid "Recent posts"
+msgstr "Dernières contributions"
+msgid "Recent posts for %1"
+msgstr "Posts récents pour %1"
+msgid "Day"
+msgstr "Jour"
+msgid "Table"
+msgstr "Tableau"
+msgid "Other"
+msgstr "Autre"
+msgid "Align"
+msgstr "Aligner"
+msgid "Basic"
+msgstr "Basique"
+msgid "List type"
+msgstr "Type de liste"
+msgid "Role"
+msgstr "Rôle"
+msgid "Select all"
+msgstr "Tout sélectionner"
+msgid "Link text"
+msgstr "Texte du lien"
+msgid "Case"
+msgstr "Casse"
+msgid "Users"
+msgstr "Utilisateurs"
+msgid "Referrer"
+msgstr "Référent"
+msgid "Both"
+msgstr "Les deux"
+msgid "Maximum length"
+msgstr "Taille maximale"
+msgid "Anonymous"
+msgstr "Anonyme"
+msgid "Edit view"
+msgstr "Modifier la vue"
+msgid "Administer views"
+msgstr "Administrer les vues"
+msgid "Existing Views"
+msgstr "Vues existantes"
+msgid "Default Views"
+msgstr "Vues par défaut"
+msgid "Ascending"
+msgstr "Ascendant"
+msgid "Descending"
+msgstr "Descendant"
+msgid "Normal menu item"
+msgstr "Élément de menu normal"
+msgid "Arguments"
+msgstr "Arguments"
+msgid "Operator"
+msgstr "Opérateur"
+msgid "Filters"
+msgstr "Filtres"
+msgid "Optional"
+msgstr "Facultatif"
+msgid "Exposed Filters"
+msgstr "Filtres exposés"
+msgid "Order"
+msgstr "Ordre"
+msgid "View name must be alphanumeric or underscores only."
+msgstr ""
+"Le nom de la vue ne peut contenir que des caractères alphanumériques "
+"et des tirets bas (_)."
+msgid "Views UI"
+msgstr "Views UI"
+msgid "Recent comments"
+msgstr "Commentaires récents"
+msgid "Random"
+msgstr "Au hasard"
+msgid "Uncategorized"
+msgstr "Non catégorisé"
+msgid "Position"
+msgstr "Position"
+msgid "Last checked"
+msgstr "Vérifié pour la dernière fois"
+msgid "Profile"
+msgstr "Profil"
+msgid " ("
+msgstr " ("
+msgid ")"
+msgstr ")"
+msgid "Term description"
+msgstr "Description du terme"
+msgid "fields"
+msgstr "champs"
+msgid "Operation"
+msgstr "Opération"
+msgid "reply"
+msgstr "répondre"
+msgid "Tracker"
+msgstr "Suivi"
+msgid "Defaults"
+msgstr "Paramètres par défaut"
+msgid "="
+msgstr "="
+msgid "with comments"
+msgstr "avec commentaires"
+msgid "without comments"
+msgstr "sans commentaires"
+msgid "Sort by"
+msgstr "Trier par"
+msgid "Created date"
+msgstr "Date de création"
+msgid "Updated date"
+msgstr "Date de mise à jour"
+msgid "comments"
+msgstr "commentaires"
+msgid "Full"
+msgstr "Complet"
+msgid "Default language"
+msgstr "Langue par défaut"
+msgid "Regular expression"
+msgstr "Expression régulière"
+msgid "Hidden"
+msgstr "Caché"
+msgid "Approved"
+msgstr "Approuvé"
+msgid "Show"
+msgstr "Afficher"
+msgid "Other queries"
+msgstr "Autres requêtes"
+msgid "Timer"
+msgstr "Chronomètre"
+msgid "in"
+msgstr "dans"
+msgid "Full text"
+msgstr "Texte entier"
+msgid "Feed settings"
+msgstr "Paramètres de flux"
+msgid "Source"
+msgstr "Source"
+msgid "Replacement patterns"
+msgstr "Motifs de remplacement"
+msgid "Display name"
+msgstr "Nom de l'affichage"
+msgid "Query"
+msgstr "Requête"
+msgid "Block name"
+msgstr "Nom du bloc"
+msgid "Hour"
+msgstr "Heure"
+msgid "Minute"
+msgstr "Minute"
+msgid "Second"
+msgstr "Seconde"
+msgid "Granularity"
+msgstr "Granularité"
+msgid "Alignment"
+msgstr "Alignement"
+msgid "Link label"
+msgstr "Etiquette du lien"
+msgid "author"
+msgstr "auteur"
+msgid "AND"
+msgstr "ET (AND)"
+msgid "views"
+msgstr "vues"
+msgid "Left"
+msgstr "Gauche"
+msgid "Right"
+msgstr "Droit"
+msgid "What links here"
+msgstr "Qu'est-ce qui lie ici"
+msgid "Seconds"
+msgstr "Secondes"
+msgid "Blocked"
+msgstr "Bloqué"
+msgid "or"
+msgstr "ou"
+msgid "."
+msgstr "."
+msgid "Parent term"
+msgstr "Terme parent"
+msgid "revert"
+msgstr "rétablir"
+msgid "All tags"
+msgstr "Toutes les étiquettes"
+msgid "Last modified"
+msgstr "Dernière modification"
+msgid "Reversed"
+msgstr "Inversé"
+msgid "Reverse"
+msgstr "Inversé"
+msgid "Not published"
+msgstr "Non publié"
+msgid "Unformatted"
+msgstr "Non mis en forme"
+msgid "RSS Feed"
+msgstr "Flux RSS"
+msgid "New comments"
+msgstr "Nouveaux commentaires"
+msgid "Relationships"
+msgstr "Relations"
+msgid "Plural"
+msgstr "Pluriel"
+msgid "Relationship"
+msgstr "Relation"
+msgid "relationships"
+msgstr "relations"
+msgid "Oldest first"
+msgstr "Les plus anciens d'abord"
+msgid "Sort criteria"
+msgstr "Critères de tri"
+msgid "Base path"
+msgstr "Chemin de base"
+msgid "Parent menu item"
+msgstr "Élément de menu parent"
+msgid "Translations"
+msgstr "Traductions"
+msgid "Sticky"
+msgstr "Épinglé (en haut des listes)"
+msgid "Ok"
+msgstr "Ok"
+msgid "cancel"
+msgstr "annuler"
+msgid "Output format"
+msgstr "Format de sortie"
+msgid "Storage"
+msgstr "Stockage"
+msgid "Timezone"
+msgstr "Fuseau horaire"
+msgid "Apply"
+msgstr "Appliquer"
+msgid "Select"
+msgstr "Sélectionner"
+msgid "Enter the terms you wish to search for."
+msgstr "Indiquer les termes à rechercher"
+msgid "Information"
+msgstr "Informations"
+msgid "PHP Code"
+msgstr "Code PHP"
+msgid "Translation"
+msgstr "Traduction"
+msgid "Translation status"
+msgstr "Statut de la traduction"
+msgid "@min and @max"
+msgstr "@min et @max"
+msgid "Add another item"
+msgstr "Ajouter un autre élément"
+msgid "Text area"
+msgstr "Zone de texte"
+msgid "Used in"
+msgstr "Utilisé dans"
+msgid "Decimal"
+msgstr "Décimal"
+msgid "Minimum"
+msgstr "Minimum"
+msgid "Precision"
+msgstr "Précision"
+msgid "Exceptions"
+msgstr "Exceptions"
+msgid "Permission"
+msgstr "Droit"
+msgid "Grid"
+msgstr "Grille"
+msgid ","
+msgstr ","
+msgid "Global"
+msgstr "Global"
+msgid "Image gallery"
+msgstr "Galerie Image"
+msgid "..."
+msgstr "..."
+msgid "Thread"
+msgstr "Fil de discussion"
+msgid "Title text"
+msgstr "Texte du titre"
+msgid "Distinct"
+msgstr "Distinct"
+msgid "Extension"
+msgstr "Extension"
+msgid "Space"
+msgstr "Espace"
+msgid "Language neutral"
+msgstr "Indépendant de la langue"
+msgid "Provided by"
+msgstr "Fourni par"
+msgid "Aggregate"
+msgstr "Agréger"
+msgid "<Any>"
+msgstr "-Tout-"
+msgid "Rearrange"
+msgstr "Réordonner"
+msgid "empty"
+msgstr "vide"
+msgid "All types"
+msgstr "Tous les types"
+msgid "Aggregator"
+msgstr "Agrégateur"
+msgid "Cancel link"
+msgstr "Lien d'annulation"
+msgid "Attach to"
+msgstr "Attacher à"
+msgid "Context"
+msgstr "Contexte"
+msgid "Pager"
+msgstr "Pagination"
+msgid "Identifier"
+msgstr "Identifiant"
+msgid "Taxonomy vocabulary"
+msgstr "Vocabulaire de taxonomie"
+msgid "Remove this item"
+msgstr "Supprimer cet élément"
+msgid "Page settings"
+msgstr "Paramètres de la page"
+msgid "Use pager"
+msgstr "Utiliser la pagination"
+msgid "Items to display"
+msgstr "Éléments à afficher"
+msgid "Offset"
+msgstr "Décalage"
+msgid "More link"
+msgstr "Lien \"plus\""
+msgid "More link text"
+msgstr "Texte du lien \"Plus\""
+msgid "Book parent"
+msgstr "Parent de livre"
+msgid "Top level book"
+msgstr "Livre de plus haut niveau"
+msgid "contains"
+msgstr "contient"
+msgid "Machine name"
+msgstr "Nom système"
+msgid "Data"
+msgstr "Données"
+msgid "Selection type"
+msgstr "Type de sélection"
+msgid "No name"
+msgstr "Aucun nom"
+msgid "Default order"
+msgstr "Ordre par défaut"
+msgid "Or"
+msgstr "Ou"
+msgid "Ordered list"
+msgstr "Liste ordonnée"
+msgid "Unordered list"
+msgstr "Liste non ordonnée"
+msgid "Link class"
+msgstr "Classe du lien"
+msgid "regex"
+msgstr "regex"
+msgid "Column"
+msgstr "Colonne"
+msgid "Default sort"
+msgstr "Tri par défaut"
+msgid "sort by @s"
+msgstr "trier par @s"
+msgid "and"
+msgstr "et"
+msgid "Add @type"
+msgstr "Ajouter @type"
+msgid "Not promoted"
+msgstr "Non promu"
+msgid "Not sticky"
+msgstr "Non épinglé"
+msgid "Nid"
+msgstr "Nid"
+msgid "Parent comment"
+msgstr "Commentaire parent"
+msgid "The parent comment."
+msgstr "Le commentaire parent."
+msgid "Author's website"
+msgstr "Site web de l'auteur"
+msgid "Display the depth of the comment if it is threaded."
+msgstr "Afficher la profondeur du commentaire s'il apparaît dans un fil."
+msgid ""
+"Sort by the threaded order. This will keep child comments together "
+"with their parents."
+msgstr ""
+"Trier suivant l'ordre du fil. Ceci maintient les commentaires enfants "
+"avec leurs parents."
+msgid "Reply-to link"
+msgstr "Lien de réponse"
+msgid "Provide a simple link to reply to the comment."
+msgstr "Fournir un lien pour répondre au commentaire."
+msgid "Text to display"
+msgstr "Texte à afficher"
+msgid "Link this field to its user or an author's homepage"
+msgstr "Lier ce champ à son utilisateur ou à la page d'accueil d'un auteur"
+msgid "Newest first"
+msgstr "Les plus récents d'abord"
+msgid "field"
+msgstr "champ"
+msgid "nodes"
+msgstr "nœuds"
+msgid "Formatter"
+msgstr "Outil de mise en forme"
+msgid "Week @week"
+msgstr "Semaine @week"
+msgid "Target"
+msgstr "Cible"
+msgid "Time ago"
+msgstr "Il y a"
+msgid "The taxonomy vocabulary ID"
+msgstr "L'identifiant du vocabulaire de taxonomie"
+msgid "Radios"
+msgstr "Boutons radios"
+msgid "starting from @count"
+msgstr "en commençant à @count"
+msgid "Embed"
+msgstr "Intégré"
+msgid "The language the content is in."
+msgstr "Langue de rédaction du contenu."
+msgid "Entity type"
+msgstr "Type d'entité"
+msgid "User roles"
+msgstr "Rôles de l'utilisateur"
+msgid "%1"
+msgstr "%1"
+msgid "User account"
+msgstr "Compte utilisateur"
+msgid "More link path"
+msgstr "Chemin du lien \"plus\""
+msgid "Button text"
+msgstr "Texte du bouton"
+msgid "Title only"
+msgstr "Titre seulement"
+msgid "Not defined"
+msgstr "Non défini"
+msgid "Validator"
+msgstr "Validateur"
+msgid "Debugging"
+msgstr "Débogage"
+msgid "Inherit"
+msgstr "Hériter"
+msgid "Mime type"
+msgstr "Type MIME"
+msgid "Display format"
+msgstr "Format d'affichage"
+msgid "The date the node was last updated."
+msgstr "Date de dernière mise à jour du nœud."
+msgid "Category ID"
+msgstr "Identifiant de catégorie"
+msgid "!group: !field"
+msgstr "!group : !field"
+msgid "Invalid display id @display"
+msgstr "Identifiant (ID) de l'affichage @display invalide"
+msgid "Error: handler for @table > @field doesn't exist!"
+msgstr "Erreur : le gestionnaire pour @table > @field n'existe pas !"
+msgid "Do not use a relationship"
+msgstr "Ne pas utiliser de relation"
+msgid "Display type"
+msgstr "Type d'affichage"
+msgid "The cache has been cleared."
+msgstr "Le cache a été vidé."
+msgid "of"
+msgstr "sur"
+msgid "Title field"
+msgstr "Champ titre"
+msgid "translate"
+msgstr "traduire"
+msgid "No link"
+msgstr "Aucun lien"
+msgid "Is not one of"
+msgstr "Ne fait pas partie de"
+msgid "Starts with"
+msgstr "Commence par"
+msgid "Secondary tabs"
+msgstr "Onglets secondaires"
+msgid "Autocomplete"
+msgstr "Autocomplétion"
+msgid "Decimal point"
+msgstr "Marqueur décimal"
+msgid "Permanent"
+msgstr "Permanent"
+msgid "Temporary"
+msgstr "Temporaire"
+msgid "Custom date format"
+msgstr "Format de date personnalisé"
+msgid "Hide submit button"
+msgstr "Masquer le bouton de soumission"
+msgid "Is one of"
+msgstr "Fait partie de"
+msgid "Expression"
+msgstr "Expression"
+msgid "Access will be granted to users with the specified permission string."
+msgstr ""
+"L'accès sera accordé aux utilisateurs avec la chaine de permission "
+"spécifiée."
+msgid "Comma"
+msgstr "Virgule"
+msgid "Show All"
+msgstr "Montrer tous"
+msgid "Comments are responses to node content."
+msgstr "Les commentaires sont des réponses au contenu des nœuds."
+msgid "Users who have created accounts on your site."
+msgstr "Utilisateurs qui ont créé des comptes sur votre site."
+msgid "!group: !title"
+msgstr "!group : !title"
+msgid "!="
+msgstr "!="
+msgid "Is empty (NULL)"
+msgstr "Est vide (NULL)"
+msgid "not empty"
+msgstr "non vide"
+msgid "Theming information"
+msgstr "Informations de thème"
+msgid "Ends with"
+msgstr "Finit par"
+msgid "Upload date"
+msgstr "Date de transfert"
+msgid "Do not cache"
+msgstr "Ne pas mettre en cache"
+msgid "Link this field to its user"
+msgstr "Lier ce champ à l'utilisateur correspondant"
+msgid "This will override any other link you have set."
+msgstr "Ceci supplantera tout autre lien que vous avez défini."
+msgid "Overwrite the value to display for anonymous users"
+msgstr "Supplanter cette valeur à afficher pour les utilisateurs anonymes"
+msgid "Text to display for anonymous users"
+msgstr "Texte à afficher pour les utilisateurs anonymes"
+msgid "Use default RSS settings"
+msgstr "Utiliser les paramètres RSS par défaut"
+msgid "Title plus teaser"
+msgstr "Titre plus accroche"
+msgid "Front page feed"
+msgstr "Flux de la page d'accueil"
+msgid "The node ID of the node."
+msgstr "Identifiant du nœud."
+msgid "Tab weight"
+msgstr "Poids de l'onglet"
+msgid "No role"
+msgstr "Aucun rôle"
+msgid "View link"
+msgstr "Lien d'affichage"
+msgid "The size of the file."
+msgstr "La taille du fichier."
+msgid "Link this field"
+msgstr "Lier ce champ"
+msgid "Delete link"
+msgstr "Lien de suppression"
+msgid "Filter the view to the currently logged in user."
+msgstr "Filtre la vue pour montrer les utilisateurs actuellement connectés."
+msgid "Localization"
+msgstr "Traduction"
+msgid "Cache once for everything (global)"
+msgstr "Mettre en cache une fois pour tout (global)"
+msgid "Per page"
+msgstr "Par page"
+msgid "Per role"
+msgstr "Par rôle"
+msgid "Per role per page"
+msgstr "Par rôle par page"
+msgid "Per user"
+msgstr "Par utilisateur"
+msgid "Per user per page"
+msgstr "Par utilisateur par page"
+msgid "Has Avatar"
+msgstr "A un avatar"
+msgid "Capitalize first letter"
+msgstr "Mettre la première lettre en majuscule"
+msgid "Uid"
+msgstr "Uid"
+msgid "Custom text"
+msgstr "Texte personnalisé"
+msgid "Sum"
+msgstr "Somme"
+msgid "sorted by"
+msgstr "trié par"
+msgid "Not Approved"
+msgstr "Non approuvé"
+msgid "Remove group"
+msgstr "Supprimer le groupe"
+msgid "No fields available."
+msgstr "Aucun champ disponible."
+msgid "Numeric"
+msgstr "Numérique"
+msgid "Custom URL"
+msgstr "URL personnalisée"
+msgid "Edit link"
+msgstr "Lien de modification"
+msgid "Submit button text"
+msgstr "Texte du bouton de soumission"
+msgid "Add comment link"
+msgstr "Ajouter un lien de commentaire"
+msgid "Broken handler @table.@field"
+msgstr "Gestionnaire brisé @table.@field"
+msgid "Skipping broken view @view"
+msgstr "Vue brisée @view sautée"
+msgid "Ajax callback for view loading."
+msgstr "Procédure de rappel (callback) AJAX pour le chargement de la vue."
+msgid "Changes cannot be made to a locked view."
+msgstr "Aucun changement ne peut être effectué dans une vue verrouillée."
+msgid "Create customized lists and queries from your database."
+msgstr ""
+"Créez des listes et requêtes personnalisées à partir de votre base "
+"de données."
+msgid ""
+"Administrative interface to views. Without this module, you cannot "
+"create or edit your views."
+msgstr ""
+"Interface d'administration des vues. Sans ce module, vous ne pouvez "
+"pas créer ou modifier de vues."
+msgid "Broken/missing handler"
+msgstr "Gestionnaire défectueux/manquant"
+msgid ""
+"The handler for this item is broken or missing and cannot be used. If "
+"a module provided the handler and was disabled, re-enabling the module "
+"may restore it. Otherwise, you should probably delete this item."
+msgstr ""
+"Le gestionnaire de cet élément est défectueux ou absent et ne peut "
+"donc pas être utilisé. Si un module fournissant ce gestionnaire a "
+"été désactivé, sa réactivation pourrait le restaurer. Si ce n'est "
+"pas le cas, il est conseillé de supprimer cet élément."
+msgid "Current date"
+msgstr "Date actuelle"
+msgid "Current node's creation time"
+msgstr "Date de création du nœud courant"
+msgid "Current node's update time"
+msgstr "Date de mise à jour du nœud courant"
+msgid "Do not display items with no value in summary"
+msgstr "Ne pas afficher les éléments sans valeur dans le résumé"
+msgid "Invalid input"
+msgstr "Saisie invalide"
+msgid "Fail basic validation if any argument is given"
+msgstr "Faire échouer la validation de base si un argument est fourni"
+msgid ""
+"By checking this field, you can use this to make sure views with more "
+"arguments than necessary fail validation."
+msgstr ""
+"En cochant cette case, vous pouvez utiliser ceci pour vérifier que la "
+"validation des vues présentant plus d'arguments que nécessaire "
+"échoue."
+msgid "Glossary mode"
+msgstr "Mode glossaire"
+msgid "Character limit"
+msgstr "Limite de caractères"
+msgid "No transform"
+msgstr "Aucune transformation"
+msgid "Upper case"
+msgstr "Majuscules"
+msgid "Lower case"
+msgstr "Minuscules"
+msgid "Capitalize each word"
+msgstr "Mettre chaque mot en majuscules"
+msgid "Case in path"
+msgstr "Casse dans les chemins"
+msgid "Transform spaces to dashes in URL"
+msgstr "Transformer les espaces en tirets dans les URL"
+msgid "Exclude from display"
+msgstr "Exclure de l'affichage"
+msgid "Rewrite the output of this field"
+msgstr "Réécrire la sortie de ce champ"
+msgid ""
+"The text to display for this field. You may include HTML. You may "
+"enter data from this view as per the \"Replacement patterns\" below."
+msgstr ""
+"Texte à afficher pour ce champ. Vous pouvez utiliser du HTML. Vous "
+"pouvez entrer des données utilisées par cette vue à l'aide des "
+"jetons ci-dessous."
+msgid "Output this field as a link"
+msgstr "Afficher ce champ en tant que lien"
+msgid ""
+"If checked, this field will be made into a link. The destination must "
+"be given below."
+msgstr ""
+"Si coché, ce champ sera transformé en lien. La destination doit "
+"être indiquée ci-dessous."
+msgid "Link path"
+msgstr "Chemin du lien"
+msgid ""
+"The Drupal path or absolute URL for this link. You may enter data from "
+"this view as per the \"Replacement patterns\" below."
+msgstr ""
+"Le chemin Drupal ou une URL absolue pour ce lien. Vous pouvez utiliser "
+"des données de cette vue avec les \"Motifs de remplacement\" "
+"ci-dessous."
+msgid "The CSS class to apply to the link."
+msgstr "La classe CSS à appliquer au lien."
+msgid "Prefix text"
+msgstr "Texte de préfixe"
+msgid "Any text to display before this link. You may include HTML."
+msgstr ""
+"N'importe quel texte à afficher avant ce lien. Vous pouvez utiliser "
+"du HTML."
+msgid "Suffix text"
+msgstr "Texte de suffixe"
+msgid "Any text to display after this link. You may include HTML."
+msgstr ""
+"N'importe quel texte à afficher après ce lien. Vous pouvez utiliser "
+"du HTML."
+msgid ""
+"<p>You must add some additional fields to this display before using "
+"this field. These fields may be marked as <em>Exclude from "
+"display</em> if you prefer. Note that due to rendering order, you "
+"cannot use fields that come after this field; if you need a field not "
+"listed here, rearrange your fields.</p>"
+msgstr ""
+"<p>Vous devez ajouter des champ additionnels avant d'utiliser ce "
+"champ. Ces champs peuvent être défini en <em>Ne pas afficher</em> si "
+"vous le souhaitez. Notez qu'à cause de l'ordre d'affichage, vous ne "
+"pouvez pas utiliser des champs qui viennent après celui-ci&nbsp;; si "
+"vous avez besoin d'un champ qui n'est pas listé ici, réarrangez vos "
+"champs.</p>"
+msgid "Trim this field to a maximum length"
+msgstr "Restreindre ce champ à une taille maximale"
+msgid "Trim only on a word boundary"
+msgstr "Couper sur une frontière de mot"
+msgid ""
+"If checked, this field be trimmed only on a word boundary. This is "
+"guaranteed to be the maximum characters stated or less. If there are "
+"no word boundaries this could trim a field to nothing."
+msgstr ""
+"Si coché, ce champ sera coupé sur un mot entier. Il est garanti que "
+"le maximum de caractères ou moins sera utilisé. S'il n'est pas "
+"possible de se limiter à un mot entier, alors le champ sera limité "
+"à un champ vide."
+msgid "Add an ellipsis"
+msgstr "Ajoute une ellipse"
+msgid "If checked, a \"...\" will be added if a field was trimmed."
+msgstr ""
+"Si coché, des points de suspension (...) seront ajoutés si le champ "
+"est coupé."
+msgid "Strip HTML tags"
+msgstr "Retirer les balises HTML"
+msgid "If checked, all HTML tags will be stripped."
+msgstr "Si coché, toutes les balises HTML seront retirées."
+msgid "Field can contain HTML"
+msgstr "Le champ peut contenir du HTML"
+msgid ""
+"If checked, HTML corrector will be run to ensure tags are properly "
+"closed after trimming."
+msgstr ""
+"Si coché, le correcteur HTML vérifiera que les balises sont bien "
+"fermées après la réduction du champ."
+msgid "File size display"
+msgstr "Affichage de la taille de fichier"
+msgid "Formatted (in KB or MB)"
+msgstr "Formatée (en Ko ou Mo)"
+msgid "Raw bytes"
+msgstr "Octets bruts"
+msgid "If checked, true will be displayed as false."
+msgstr "Si cette option est cochée, Vrai apparaîtra comme Faux."
+msgid "Time ago (with \"ago\" appended)"
+msgstr "Temps relatif (avec \"il y a\" ajouté)"
+msgid "Time span (with \"ago/hence\" appended)"
+msgstr "Durée (avec \"il y a/dans\" ajouté)"
+msgid "Round"
+msgstr "Arrondi"
+msgid "If checked, the number will be rounded."
+msgstr "Si cette option est cochée, le nombre sera arrondi."
+msgid "Specify how many digits to print after the decimal point."
+msgstr ""
+"Précisez le nombre de chiffres à afficher après le marqueur "
+"décimal."
+msgid "What single character to use as a decimal point."
+msgstr "Caractère à utiliser comme marqueur décimal"
+msgid "What single character to use as the thousands separator."
+msgstr "Caractère à utiliser comme séparateur de milliers."
+msgid "Text to put before the number, such as currency symbol."
+msgstr ""
+"Texte à faire figurer avant le nombre, par exemple une unité "
+"monétaire."
+msgid "Text to put after the number, such as currency symbol."
+msgstr ""
+"Texte à faire figurer après le nombre, par exemple une unité "
+"monétaire."
+msgid "Simple separator"
+msgstr "Séparateur simple"
+msgid "Display as link"
+msgstr "Afficher comme lien"
+msgid "Operator identifier"
+msgstr "Identifiant de l'opérateur"
+msgid "This will appear in the URL after the ? to identify this operator."
+msgstr ""
+"Ceci apparaîtra dans l'URL après le point d'interrogation ? pour "
+"identifier cet opérateur."
+msgid "Filter identifier"
+msgstr "Identifiant du filtre"
+msgid ""
+"This will appear in the URL after the ? to identify this filter. "
+"Cannot be blank."
+msgstr ""
+"Ceci apparaîtra dans l'URL après le ? pour identifier ce filtre. Ne "
+"peut pas être vide."
+msgid ""
+"This exposed filter is optional and will have added options to allow "
+"it not to be set."
+msgstr ""
+"Ce filtre exposé est facultatif et proposera des options "
+"supplémentaires pour permettre de ne pas le paramétrer."
+msgid "Remember"
+msgstr "Mémoriser"
+msgid "Remember the last setting the user gave this filter."
+msgstr ""
+"Mémoriser le dernier paramétrage utilisé par l'utilisateur pour ce "
+"filtre."
+msgid "The identifier is required if the filter is exposed."
+msgstr "Cet identifiant est requis si le filtre est exposé."
+msgid "This identifier is not allowed."
+msgstr "Cet identifiant n'est pas autorisé."
+msgid "- Any -"
+msgstr "- Tout -"
+msgid "exposed"
+msgstr "exposé"
+msgid "Value type"
+msgstr "Type de valeur"
+msgid ""
+"A date in any machine readable format. CCYY-MM-DD HH:MM:SS is "
+"preferred."
+msgstr ""
+"Date dans n'importe quel format machine. AAAA-MM-JJ HH:MM:SS est "
+"préférable"
+msgid "Invalid date format."
+msgstr "Format de date invalide."
+msgid "Limit list to selected items"
+msgstr "Limiter la liste aux éléments sélectionnés"
+msgid ""
+"If checked, the only items presented to the user will be the ones "
+"selected here."
+msgstr ""
+"Si coché, les seuls éléments présentés à l'utilisateur seront "
+"ceux sélectionnés ici."
+msgid "not in"
+msgstr "pas dans"
+msgid "<>"
+msgstr "<>"
+msgid "Is all of"
+msgstr "Tout parmi"
+msgid "Is none of"
+msgstr "Aucun parmi"
+msgid "not"
+msgstr "pas"
+msgid "<"
+msgstr "<"
+msgid "<="
+msgstr "<="
+msgid ">="
+msgstr ">="
+msgid ">"
+msgstr ">"
+msgid "Is between"
+msgstr "Est compris entre"
+msgid "between"
+msgstr "entre"
+msgid "Is not between"
+msgstr "N'est pas compris entre"
+msgid "not between"
+msgstr "pas entre"
+msgid "Min"
+msgstr "Min"
+msgid "And max"
+msgstr "Et max"
+msgid "And"
+msgstr "Et"
+msgid "Contains any word"
+msgstr "Contient n'importe quel mot"
+msgid "has word"
+msgstr "contient le mot"
+msgid "Contains all words"
+msgstr "Contient tous les mots"
+msgid "has all"
+msgstr "contient tous"
+msgid "begins"
+msgstr "commence"
+msgid "ends"
+msgstr "finit"
+msgid "!has"
+msgstr "!has"
+msgid "Require this relationship"
+msgstr "Exiger cette relation"
+msgid "asc"
+msgstr "asc"
+msgid "desc"
+msgstr "desc"
+msgid ""
+"The granularity is the smallest unit to use when determining whether "
+"two dates are the same; for example, if the granularity is \"Year\" "
+"then all dates in 1999, regardless of when they fall in 1999, will be "
+"considered the same date."
+msgstr ""
+"La granularité est la plus petite unité à utiliser pour déterminer "
+"si deux dates sont identiques ; par exemple, si la granularité est "
+"\"Année\", toutes les dates de l'année 1999, indépendamment du mois "
+"et du jour, seront considérées comme identiques."
+msgid "Broken"
+msgstr "Brisé"
+msgid "Displays"
+msgstr "Affichages"
+msgid "These queries were run during view rendering:"
+msgstr ""
+"Ces requêtes ont été exécutées lors de l'affichage de la "
+"vue&nbsp;:"
+msgid "[@time ms]"
+msgstr "[@time ms]"
+msgid "This display has no path."
+msgstr "Cet affichage n'a pas de chemin"
+msgid "Query build time"
+msgstr "Durée de construction de la requête"
+msgid "@time ms"
+msgstr "@time ms"
+msgid "Query execute time"
+msgstr "Durée d'exécution de la requête"
+msgid "View render time"
+msgstr "Durée de rendu de la vue"
+msgid "No query was run"
+msgstr "Aucune requête n'a été exécutée"
+msgid "Unable to preview due to validation errors."
+msgstr "Impossible de prévisualiser à cause d'erreurs de validation."
+msgid "View name"
+msgstr "Nom de la vue"
+msgid "View description"
+msgstr "Description de la vue"
+msgid ""
+"This description will appear on the Views administrative UI to tell "
+"you what the view is about."
+msgstr ""
+"Cette description apparaîtra dans l'interface utilisateur "
+"d'administration de Views pour vous indiquer l'objet de cette vue."
+msgid "View tag"
+msgstr "Étiquette de la vue"
+msgid "The view has been deleted."
+msgstr "La vue a été supprimée."
+msgid "Are you sure you want to break the lock on view %name?"
+msgstr ""
+"Êtes-vous sûr(e) de vouloir faire sauter le verrou sur la vue %name "
+"?"
+msgid "By breaking this lock, any unsaved changes made by !user will be lost!"
+msgstr ""
+"En faisant sauter ce verrou, toutes les modifications réalisées par "
+"!user et non encore enregistrées seront perdues !"
+msgid "Break lock"
+msgstr "Rompre le verrou"
+msgid "The lock has been broken and you may now edit this view."
+msgstr "Le verrou a été cassé, vous pouvez maintenant modifier cette vue."
+msgid ""
+"Enter the name to use for this view if it is different from the source "
+"view. Leave blank to use the name of the view."
+msgstr ""
+"Saisissez le nom à utiliser pour cette vue s'il diffère de la vue "
+"source. Laissez vide pour utiliser le nom de la vue."
+msgid "Paste view code here"
+msgstr "Copiez le code de la vue ici"
+msgid "Unable to interpret view code."
+msgstr "Impossible d'interpréter le code de la vue."
+msgid "A view by that name already exists; please choose a different name"
+msgstr ""
+"Une vue portant ce nom existe déjà&nbsp;; merci de choisir un nom "
+"différent."
+msgid "Display plugin @plugin is not available."
+msgstr "Le plugin d'affichage @plugin n'est pas disponible."
+msgid "Style plugin @plugin is not available."
+msgstr "Le plugin de style @plugin n'est pas disponible."
+msgid "Row plugin @plugin is not available."
+msgstr "Le plugin de ligne @plugin n'est pas disponible."
+msgid "@type handler @table.@field is not available."
+msgstr "Le handler de type @type @table.@field n'est pas disponible."
+msgid "Unable to import view."
+msgstr "Impossible d'importer la vue"
+msgid "Click on an item to edit that item's details."
+msgstr "Cliquez sur un élément pour modifier ses détails."
+msgid "Go to the real page for this display"
+msgstr "Aller à la vraie page de cet affichage"
+msgid "Invalid"
+msgstr "Invalide"
+msgid "Missing style plugin"
+msgstr "Plugin de style manquant"
+msgid "Change settings for this style"
+msgstr "Modifier les paramètres pour ce style"
+msgid "View analysis"
+msgstr "Analyse de la vue"
+msgid "Configure @type"
+msgstr "Configurer @type"
+msgid "Rearrange @type"
+msgstr "Réordonner @type"
+msgid "Broken field @id"
+msgstr "Champ @id brisé"
+msgid "There are no @types available to add."
+msgstr "Il n'y a aucun @types disponible à ajouter."
+msgid "Configure extra settings for @type %item"
+msgstr "Configurer des paramètres supplémentaires pour @type %item"
+msgid "Configure summary style for @type %item"
+msgstr "Configurer le style de sommaire pour @type %item"
+msgid "Clear Views' cache"
+msgstr "Vider le cache de Views"
+msgid "Add Views signature to all SQL queries"
+msgstr "Ajouter la signature Views à toutes les requêtes SQL"
+msgid "Disable views data caching"
+msgstr "Désactiver la mise en cache des données Views"
+msgid ""
+"Views caches data about tables, modules and views available, to "
+"increase performance. By checking this box, Views will skip this cache "
+"and always rebuild this data when needed. This can have a serious "
+"performance impact on your site."
+msgstr ""
+"Views met en cache des données relatives aux tables, aux modules et "
+"aux vues disponibles afin d'améliorer les performances. En cochant "
+"cette case, vous obligez Views à sauter cette mise en cache et à "
+"reconstruire systématiquement la base de données dès que "
+"nécessaire. Cela peut avoir un impact important sur les performances "
+"de votre site."
+msgid "Show other queries run during render during live preview"
+msgstr ""
+"Afficher les autres requêtes exécutées pendant l'affichage de "
+"l'aperçu en temps réel"
+msgid ""
+"Drupal has the potential to run many queries while a view is being "
+"rendered. Checking this box will display every query run during view "
+"render as part of the live preview."
+msgstr ""
+"Drupal a la possibilité d'exécuter beaucoup de requêtes pendant "
+"qu'une vue est exécutée. Cocher cette case affichera toutes les "
+"requêtes exécutées lors de l'exécution de la vue en mode aperçu "
+"temps réel."
+msgid "Error: missing @component"
+msgstr "Erreur : @component manquant"
+msgid "View analysis can find nothing to report."
+msgstr "L'analyse de la vue n'a rien trouvé à signaler."
+msgid ""
+"This view has only a default display and therefore will not be placed "
+"anywhere on your site; perhaps you want to add a page or a block "
+"display."
+msgstr ""
+"Cette vue ne possède qu'un affichage par défaut et, par conséquent, "
+"n'apparaîtra nulle part sur votre site ; peut-être devrez-vous "
+"ajouter un affichage de page ou de bloc."
+msgid "Reduce duplicates"
+msgstr "Supprimer les doublons"
+msgid "Default settings for this view."
+msgstr "Paramètres par défaut pour cette vue."
+msgid "Display the view as a page, with a URL and menu links."
+msgstr "Afficher la vue en tant que page, avec une URL et des liens de menu."
+msgid "Display the view as a block."
+msgstr "Afficher la vue en tant que bloc."
+msgid ""
+"Attachments added to other displays to achieve multiple views in the "
+"same view."
+msgstr ""
+"Fichiers attachés à d'autres affichages pour parvenir à plusieurs "
+"vues à l'intérieur de la même vue."
+msgid "Display the view as a feed, such as an RSS feed."
+msgstr "Afficher la vue en tant que flux, par exemple un flux RSS."
+msgid "Displays rows one after another."
+msgstr "Afficher les lignes les unes après les autres."
+msgid "Displays rows as an HTML list."
+msgstr "Affiche les lignes sous forme de liste HTML."
+msgid "Displays rows in a grid."
+msgstr "Affiche les lignes dans une grille."
+msgid "Displays rows in a table."
+msgstr "Afficher les lignes dans un tableau."
+msgid "Displays the default summary as a list."
+msgstr "Affiche le sommaire par défaut comme une liste."
+msgid ""
+"Displays the summary unformatted, with option for one after another or "
+"inline."
+msgstr ""
+"Affiche le sommaire sans mise en forme, les informations apparaissant, "
+"soit les unes après les autres, soit en ligne."
+msgid "Generates an RSS feed from a view."
+msgstr "Génère un flux RSS à partir d'une vue."
+msgid "Displays the fields with an optional template."
+msgstr "Affiche les champs avec un template facultatif."
+msgid "Will be available to all users."
+msgstr "Sera disponible pour l'ensemble des utilisateurs."
+msgid "Access will be granted to users with any of the specified roles."
+msgstr ""
+"L'accès sera accordé aux utilisateurs ayant n'importe lequel des "
+"rôles spécifiés."
+msgid "No caching of Views data."
+msgstr "Pas de mise en cache des données Views."
+msgid "Time-based"
+msgstr "En fonction du temps écoulé"
+msgid "Simple time-based caching of data."
+msgstr "Mise en cache simple en fonction du temps écoulé"
+msgid "sort criteria"
+msgstr "critères de tri"
+msgid "Sort criterion"
+msgstr "Critère de tri"
+msgid "sort criterion"
+msgstr "critère de tri"
+msgid "Aggregator items are imported from external RSS and Atom news feeds."
+msgstr ""
+"Les éléments d'agrégateur sont importés depuis des flux RSS et "
+"Atom externes."
+msgid "The title of the aggregator item."
+msgstr "Le titre de l'élément d'agrégateur."
+msgid "The link to the original source URL of the item."
+msgstr "Lien vers l'URL source de l'élément."
+msgid "The author of the original imported item."
+msgstr "Auteur de l'élément importé."
+msgid "The actual content of the imported item."
+msgstr "Le contenu de l'élément importé."
+msgid ""
+"The date the original feed item was posted. (With some feeds, this "
+"will be the date it was imported.)"
+msgstr ""
+"Date de la publication de l'élément du flux. (Dans certains cas, il "
+"peut s'agir de la date d'importation du flux.)"
+msgid "Feed ID"
+msgstr "Identifiant du flux"
+msgid "The unique ID of the aggregator feed."
+msgstr "L'identifiant unique du flux d'agrégateur."
+msgid "The title of the aggregator feed."
+msgstr "Le titre du flux d'agrégateur."
+msgid "The link to the source URL of the feed."
+msgstr "Le URL source du flux."
+msgid "The date the feed was last checked for new content."
+msgstr "La date à laquelle le flux a été vérifié pour la dernière fois."
+msgid "The description of the aggregator feed."
+msgstr "La description du flux d'agrégateur."
+msgid "The unique ID of the aggregator category."
+msgstr "L'identifiant unique de la catégorie d'agrégateur."
+msgid "The title of the aggregator category."
+msgstr "Le titre de la catégorie d'agrégateur."
+msgid "Display the aggregator item using the data from the original source."
+msgstr ""
+"Affiche l'élément d'agrégateur en utilisant les données de la "
+"source originale."
+msgid "The book the node is in."
+msgstr "Le livre dans lequel le nœud est."
+msgid "The weight of the book page."
+msgstr "Le poids de la page de livre."
+msgid ""
+"The depth of the book page in the hierarchy; top level books have a "
+"depth of 1."
+msgstr ""
+"La profondeur de la page de livre dans la hiérarchie ; les livres de "
+"plus haut niveau ont une profondeur de 1."
+msgid "The parent book node."
+msgstr "Le nœud de livre parent."
+msgid "The title of the comment."
+msgstr "Le titre du commentaire."
+msgid "The comment ID of the field"
+msgstr "L'identifiant du commentaire du champ"
+msgid ""
+"The name of the comment's author. Can be rendered as a link to the "
+"author's homepage."
+msgstr ""
+"Le nom de l'auteur du commentaire. Peut être affiché comme un lien "
+"vers la page d'accueil de l'utilisateur."
+msgid ""
+"The website address of the comment's author. Can be rendered as a "
+"link. Will be empty if the author is a registered user."
+msgstr ""
+"L'adresse du site web de l'auteur du commentaire. Peut être affiché "
+"comme un lien. Sera vide si l'auteur est un utilisateur enregistré."
+msgid "Post date"
+msgstr "Date de publication"
+msgid "Provide a simple link to view the comment."
+msgstr "Fournir un lien pour afficher le commentaire."
+msgid "Provide a simple link to edit the comment."
+msgstr "Fournir un lien pour modifier le commentaire."
+msgid "Provide a simple link to delete the comment."
+msgstr "Fournit un lien pour supprimer le commentaire."
+msgid "The User ID of the comment's author."
+msgstr "L'identifiant utilisateur de l'auteur du commentaire."
+msgid "Parent CID"
+msgstr "Identifiant du commentaire (CID) parent"
+msgid "The Comment ID of the parent comment."
+msgstr "L'identifiant (ID) du commentaire parent."
+msgid "Last comment time"
+msgstr "Heure du dernier commentaire"
+msgid "Date and time of when the last comment was posted."
+msgstr "Date et heure de publication du dernier commentaire."
+msgid "Last comment author"
+msgstr "Auteur du dernier commentaire"
+msgid "The name of the author of the last posted comment."
+msgstr "Le nom de l'auteur ayant rédigé le dernier commentaire."
+msgid "Comment count"
+msgstr "Nombre de commentaires"
+msgid "The number of comments a node has."
+msgstr "Le nombre de commentaires que présente un nœud."
+msgid "Updated/commented date"
+msgstr "Date de mise à jour/commentaire"
+msgid "The most recent of last comment posted or node updated time."
+msgstr ""
+"L'information la plus récente entre le dernier commentaire publié et "
+"la date de dernière mise à jour du nœud."
+msgid "The number of new comments on the node."
+msgstr "Le nombre de nouveaux commentaires au sein du nœud."
+msgid "Comment status"
+msgstr "Statut du commentaire"
+msgid "Whether comments are enabled or disabled on the node."
+msgstr ""
+"Indiquer si les commentaires sont activés ou désactivés sur le "
+"nœud."
+msgid "User posted or commented"
+msgstr "Publié ou commenté par l'utilisateur"
+msgid "Display nodes only if a user posted the node or commented on the node."
+msgstr ""
+"Affiche les nœuds seulement si l'utilisateur a créé le nœud ou "
+"commenté le nœud."
+msgid "Display the comment with standard comment view."
+msgstr "Afficher le commentaire avec la vue de commentaire standard."
+msgid "Display the comment as RSS."
+msgstr "Afficher le commentaire en tant que RSS."
+msgid "Link to contact page"
+msgstr "Lien vers la page de contact"
+msgid "Provide a simple link to the user contact page."
+msgstr "Ajouter un lien vers la page de contact de l'utilisateur."
+msgid "Locale source"
+msgstr "Source de la traduction"
+msgid ""
+"A source string for translation, in English or the default site "
+"language."
+msgstr ""
+"Chaîne source de la traduction, en anglais ou dans la langue par "
+"défaut du site."
+msgid "LID"
+msgstr "LID"
+msgid "The ID of the source string."
+msgstr "Identifiant de la chaîne source."
+msgid "A description of the location or context of the string."
+msgstr "Une description de l'emplacement ou du contexte de la chaîne."
+msgid "The group the translation is in."
+msgstr "Le groupe dans lequel est la traduction."
+msgid "The full original string."
+msgstr "La chaîne d'origine complète."
+msgid "The version of Drupal core that this string is for."
+msgstr "La version du cœur de Drupal pour cette chaîne."
+msgid "Provide a simple link to edit the translations."
+msgstr "Fournir un lien pour modifier les traductions."
+msgid "Locale target"
+msgstr "Cible de la traduction."
+msgid "The full translation string."
+msgstr "La chaîne traduite complète."
+msgid "The language this translation is in."
+msgstr "La langue de cette traduction."
+msgid "Singular LID"
+msgstr "Identifiant LID unique"
+msgid "The ID of the parent translation."
+msgstr "L'identifiant de la traduction parente."
+msgid "Whether or not the translation is plural."
+msgstr "Si la traduction est plurielle."
+msgid "Whether or not the node is published."
+msgstr "Si le nœud est publié."
+msgid "Published or admin"
+msgstr "Publié ou admin"
+msgid "Created year + month"
+msgstr "Année + mois de création"
+msgid "Created year"
+msgstr "Année de création"
+msgid "Created month"
+msgstr "Mois de création"
+msgid "Created day"
+msgstr "Jour de création"
+msgid "Created week"
+msgstr "Semaine de création"
+msgid "Updated year + month"
+msgstr "Année et mois de mise à jour"
+msgid "Updated year"
+msgstr "Année de mise à jour"
+msgid "Updated month"
+msgstr "Mois de mise à jour"
+msgid "Updated day"
+msgstr "Jour de mise à jour"
+msgid "Updated week"
+msgstr "Semaine de mise à jour"
+msgid "Vid"
+msgstr "Vid"
+msgid "The log message entered when the revision was created."
+msgstr ""
+"Le message enregistré dans le journal à la création de la "
+"révision."
+msgid "Revert link"
+msgstr "Lien de retour arrière"
+msgid "Provide a simple link to revert to the revision."
+msgstr "Fournir un lien pour rétablir une révision antérieure."
+msgid "Filter by access."
+msgstr "Filtrer par accès."
+msgid "Has new content"
+msgstr "Présente des contenus nouveaux"
+msgid ""
+"Display %display has no access control but does not contain a filter "
+"for published nodes."
+msgstr ""
+"L'affichage @display ne présente aucun contrôle d'accès mais il ne "
+"contient pas de filtre pour les nœuds publiés."
+msgid "Poll"
+msgstr "Sondage"
+msgid "Whether the poll is open for voting."
+msgstr "Indique si le sondage enregistre toujours les votes."
+msgid "Profile textfield"
+msgstr "Champ de texte de profil"
+msgid "Profile textarea"
+msgstr "Zone de texte de profil"
+msgid "Profile checkbox"
+msgstr "Case à cocher de profil"
+msgid "Profile URL"
+msgstr "URL de profil"
+msgid "Profile selection"
+msgstr "Sélection de profil"
+msgid "Profile freeform list %field-name."
+msgstr "Liste libre de profil %field-name."
+msgid "Profile date %field-name."
+msgstr "Date de profil %field-name."
+msgid ""
+"The score of the search item. This will not be used if the search "
+"filter is not also present."
+msgstr ""
+"Le score du terme de recherche. Ceci ne sera pas utilisé si le filtre "
+"de recherche n'est pas présent lui aussi."
+msgid "Links from"
+msgstr "Liens en provenance de"
+msgid "Other nodes that are linked from the node."
+msgstr "Autres nœuds qui sont liés au nœud."
+msgid "Links to"
+msgstr "Liens vers"
+msgid "Other nodes that link to the node."
+msgstr "Autres nœuds qui pointent vers le nœud."
+msgid "Search Terms"
+msgstr "Termes de recherche"
+msgid "The terms to search for."
+msgstr "Termes à rechercher."
+msgid "Display the results with standard search view."
+msgstr "Afficher les résultats avec la vue de recherche standard."
+msgid "Total views"
+msgstr "Nombre total d'affichages"
+msgid "The total number of times the node has been viewed."
+msgstr "Le nombre total d'affichages du nœud."
+msgid "Views today"
+msgstr "Affichages aujourd'hui"
+msgid "The total number of times the node has been viewed today."
+msgstr "Le nombre total d'affichages du nœud aujourd'hui."
+msgid "Most recent view"
+msgstr "Dernier affichage"
+msgid "The most recent time the node has been viewed."
+msgstr "Date de dernier affichage du nœud."
+msgid "Stores site access information."
+msgstr "Enregistre les informations relatives à l'accès au site."
+msgid "Browser session ID of user that visited page."
+msgstr ""
+"Identifiant de session du navigateur pour l'utilisateur ayant "
+"consulté cette page."
+msgid "Title of page visited."
+msgstr "Titre de la page consultée."
+msgid "Internal path to page visited (relative to Drupal root.)"
+msgstr "Chemin interne vers la page visitée (relatif à la racine de Drupal)."
+msgid "Referrer URI."
+msgstr "URI référent."
+msgid "Hostname of user that visited the page."
+msgstr "Nom d'hôte de l'utilisateur ayant consulté la page."
+msgid "The user who visited the site."
+msgstr "L'utilisateur ayant visité le site."
+msgid "Time in milliseconds that the page took to load."
+msgstr "Temps de chargement de la page en millisecondes."
+msgid "Timestamp of when the page was visited."
+msgstr "Tampon d'horodatage de la dernière visite de la page."
+msgid "Files maintained by Drupal and various modules."
+msgstr "Fichiers maintenus par Drupal et différents modules."
+msgid "The ID of the file."
+msgstr "Identifiant du fichier."
+msgid "The name of the file."
+msgstr "Le nom du fichier."
+msgid "The path of the file."
+msgstr "Le chemin du fichier."
+msgid "The mime type of the file."
+msgstr "Le type MIME du fichier."
+msgid "The status of the file."
+msgstr "Le statut du fichier."
+msgid "The date the file was uploaded."
+msgstr "La date de transfert du fichier."
+msgid ""
+"Name of the vocabulary a term is a member of. This will be the "
+"vocabulary that whichever term the \"Taxonomy: Term\" field is; and "
+"can similarly cause duplicates."
+msgstr ""
+"Nom du vocabulaire dont le terme fait partie. C'est le vocabulaire "
+"correspondant au terme du champ \"Taxonomie : Terme\" et peut, de "
+"façon similaire, générer des doublons."
+msgid "Taxonomy terms are attached to nodes."
+msgstr "Les termes de taxonomie sont rattachés aux nœuds."
+msgid "Taxonomy term name."
+msgstr "Nom du terme de taxonomie."
+msgid "The term weight field"
+msgstr "Champ du poids du terme"
+msgid "The description associated with a taxonomy term."
+msgstr "La description associée à un terme de classification."
+msgid "Filter the results of \"Taxonomy: Term\" to a particular vocabulary."
+msgstr ""
+"Filtrer les résultats de \"Taxonomie : Terme\" dans un vocabulaire "
+"spécifique."
+msgid ""
+"Display all taxonomy terms associated with a node from specified "
+"vocabularies."
+msgstr ""
+"Afficher tous les termes de taxonomie associés à un nœud depuis les "
+"vocabulaires spécifiés."
+msgid ""
+"The parent term of the term. This can produce duplicate entries if you "
+"are using a vocabulary that allows multiple parents."
+msgstr ""
+"Le terme parent du terme. Ceci peut produire des doublons si vous "
+"utilisez un vocabulaire qui autorise plusieurs parents."
+msgid "The parent term of the term."
+msgstr "Le terme parent du terme."
+msgid "Node translation"
+msgstr "Traduction du nœud"
+msgid "Translation set node ID"
+msgstr "L'identifiant du jeu de traductions du nœud"
+msgid "The ID of the translation set the content belongs to."
+msgstr "L'identifiant du jeu de traductions auquel le contenu appartient."
+msgid "Source translation"
+msgstr "Source de la traduction"
+msgid "The source that this content was translated from."
+msgstr "La source depuis laquelle ce contenu a été traduit."
+msgid "Versions of content in different languages."
+msgstr "Versions du contenu dans des langues différentes."
+msgid "Child translation"
+msgstr "Traduction enfant."
+msgid "Outdated"
+msgstr "Obsolète"
+msgid "The user ID"
+msgstr "Identifiant (ID) de l'utilisateur"
+msgid "The user or author name."
+msgstr "Le nom de l'utilisateur ou de l'auteur."
+msgid ""
+"Email address for a given user. This field is normally not shown to "
+"users, so be cautious when using it."
+msgstr ""
+"Adresse de courriel d'un utilisateur donné. Ce champ n'est "
+"normalement pas montré aux utilisateurs, soyez donc prudent quand "
+"vous l'utilisez."
+msgid "Language of the user"
+msgstr "Langue de l'utilisateur"
+msgid "The user's picture, if allowed."
+msgstr "Portrait de l'utilisateur, si autorisé."
+msgid "The date the user was created."
+msgstr "Date de création de l'utilisateur."
+msgid "The user's last access date."
+msgstr "La date de dernier accès de l'utilisateur."
+msgid "The user's last login date."
+msgstr "La date de dernière connexion de l'utilisateur."
+msgid "Whether a user is active or blocked."
+msgstr "Indique si un utilisateur est actif ou bloqué."
+msgid "The user's signature."
+msgstr "La signature de l'utilisateur."
+msgid "Provide a simple link to edit the user."
+msgstr "Fournir un lien pour modifier l'utilisateur."
+msgid "Roles that a user belongs to."
+msgstr "Rôles auxquels appartient un utilisateur."
+msgid "User ID from URL"
+msgstr "Identifiant (ID) utilisateur à partir de l'URL"
+msgid "User ID from logged in user"
+msgstr "Identifiant (ID) utilisateur de l'utilisateur connecté"
+msgid "Randomize the display order."
+msgstr "Rendre l'ordre d'affichage aléatoire."
+msgid "Null"
+msgstr "Vide"
+msgid "Provide custom text or link."
+msgstr "Fournir un texte personnalisé ou un lien."
+msgid "View result counter"
+msgstr "Compteur de résultats de la vue"
+msgid "Displays the actual position of the view result"
+msgstr "Afficher la position actuelle du résultat de la vue"
+msgid "Link this field to its aggregator category page"
+msgstr "Lier ce champ à sa page de catégorie d'agrégateur"
+msgid "No user"
+msgstr "Aucun utilisateur"
+msgid "Link this field to its comment"
+msgstr "Lier ce champ à son commentaire"
+msgid "Show teaser-style link"
+msgstr "Afficher un lien résumé"
+msgid "Link this field to new comments"
+msgstr "Lier ce champ aux nouveaux commentaires"
+msgid "contact"
+msgstr "contact"
+msgid "Contact %user"
+msgstr "Contacter %user"
+msgid "Unknown group"
+msgstr "Groupe inconnu"
+msgid "Unknown language"
+msgstr "Langue inconnue"
+msgid "Current user's language"
+msgstr "Langue de l'utilisateur actuel"
+msgid "Default site language"
+msgstr "Langue par défaut du site"
+msgid "No language"
+msgstr "Pas de langue"
+msgid "Current installed version"
+msgstr "Version installée actuellement"
+msgid "Check for new comments as well"
+msgstr "Vérifier aussi la présence de nouveaux commentaires"
+msgid "Node IDs separated by , or +"
+msgstr "Identifiants des nœuds séparés par des virgules ou des +"
+msgid "No alternate"
+msgstr "Pas d'alternance"
+msgid "Alternative sort"
+msgstr "Tri alternatif"
+msgid "Alternate sort order"
+msgstr "Alterner l'ordre du tri"
+msgid "On empty input"
+msgstr "En cas de saisie vide"
+msgid "Show None"
+msgstr "Montrer aucun"
+msgid "Display score"
+msgstr "Afficher le score"
+msgid "Link this field to download the file"
+msgstr "Liez ce champ pour télécharger le fichier"
+msgid "Set the breadcrumb for the term parents"
+msgstr "Faire apparaître les parents du terme dans le fil d'Ariane"
+msgid ""
+"If selected, the breadcrumb trail will include all parent terms, each "
+"one linking to this view. Note that this only works if just one term "
+"was received."
+msgstr ""
+"Si cette option est sélectionnée, le fil d'Ariane inclura tous les "
+"termes parents, chacun comportant un lien vers cette vue. Notez que "
+"cela fonctionne uniquement si un seul terme a été reçu."
+msgid ""
+"The depth will match nodes tagged with terms in the hierarchy. For "
+"example, if you have the term \"fruit\" and a child term \"apple\", "
+"with a depth of 1 (or higher) then filtering for the term \"fruit\" "
+"will get nodes that are tagged with \"apple\" as well as \"fruit\". If "
+"negative, the reverse is true; searching for \"apple\" will also pick "
+"up nodes tagged with \"fruit\" if depth is -1 (or lower)."
+msgstr ""
+"La profondeur assurera la correspondance avec les nœuds étiquetés "
+"par des termes de la hiérarchie. Si, par exemple, vous avez le terme "
+"\"fruit\" et le terme enfant \"pomme\", avec une profondeur de 1 ou "
+"plus, alors un filtrage sur le terme \"fruit\" renverra des nœuds "
+"étiquetés par \"pomme\" aussi bien que par \"fruit\". Si la "
+"profondeur est négative, l'inverse est également vrai : rechercher "
+"\"pomme\" avec une profondeur de -1 (ou moins) renverra également les "
+"nœuds étiquetés par \"fruit\"."
+msgid "No vocabulary"
+msgstr "Aucun vocabulaire"
+msgid "Link this field to its taxonomy term page"
+msgstr "Lier ce champ vers la page de terme de classification correspondante"
+msgid "Link this field to its term page"
+msgstr "Lier ce champ vers la page de terme correspondante"
+msgid "Limit terms by vocabulary"
+msgstr "Limiter les termes par vocabulaire"
+msgid "Select which vocabulary to show terms for in the regular options."
+msgstr ""
+"Sélectionnez le vocabulaire pour lequel montrer les termes dans les "
+"options normales."
+msgid "Dropdown"
+msgstr "Liste déroulante"
+msgid "Show hierarchy in dropdown"
+msgstr "Montrer la hiérarchie dans la liste déroulante"
+msgid "An invalid vocabulary is selected. Please change it in the options."
+msgstr ""
+"Un vocabulaire invalide a été sélectionné. Merci de le modifier "
+"dans les options."
+msgid "Select terms from vocabulary @voc"
+msgstr "Sélectionner les termes dans le vocabulaire @voc"
+msgid "Select terms"
+msgstr "Sélectionner les termes"
+msgid "Unable to find term: @terms"
+msgid_plural "Unable to find terms: @terms"
+msgstr[0] "Impossible de trouver le terme @terms"
+msgstr[1] "Impossible de trouver les termes @terms"
+msgid ""
+"If you wish to validate for specific vocabularies, check them; if none "
+"are checked, all terms will pass."
+msgstr ""
+"Si vous souhaitez valider des vocabulaires spécifiques, cochez "
+"les&nbsp;; si aucun n'est coché, tous les termes passeront la "
+"validation."
+msgid "Term IDs separated by , or +"
+msgstr "Identifiants de termes, séparés par des virgules ou des +"
+msgid "Current language"
+msgstr "Langage actuel"
+msgid "Translation option"
+msgstr "Option de traduction"
+msgid ""
+"The translation options allows you to select which translation or "
+"translations in a translation set join on. Select \"Current language\" "
+"or \"Default language\" to join on the translation in the current or "
+"default language respectively. Select a specific language to join on a "
+"translation in that language. If you select \"All\", each translation "
+"will create a new row, which may appear to cause duplicates."
+msgstr ""
+"Les options de traduction vous permettent de sélectionner les "
+"traductions dans un jeu de traduction à ajouter. Sélectionnez "
+"\"Langage actuel\" ou \"Langage par défaut\" pour ajouter la "
+"traduction respectivement dans le langage actuel ou par défaut. "
+"Sélectionnez un langage spécifique pour ajouter une traduction dans "
+"ce langage. Si vous sélectionnez \"Tous\", chaque traduction créera "
+"une nouvelle ligne, qui pourra causer des doublons."
+msgid "To the user"
+msgstr "Vers l'utilisateur"
+msgid "With a mailto:"
+msgstr "Avec un mailto:"
+msgid "Is the logged in user"
+msgstr "Est l'utilisateur connecté"
+msgid "Usernames"
+msgstr "Noms d'utilisateurs"
+msgid "Enter a comma separated list of user names."
+msgstr "Saisissez une liste de noms d'utilisateurs séparés par des virgules."
+msgid "Unable to find user: @users"
+msgid_plural "Unable to find users: @users"
+msgstr[0] "Impossible de trouver l'utilisateur @users"
+msgstr[1] "Impossible de trouver les utilisateurs @users"
+msgid "Also look for a node and use the node author"
+msgstr "Rechercher aussi un nœud et utiliser l'auteur du nœud"
+msgid "Only allow numeric UIDs"
+msgstr "N'autoriser que les UID numériques"
+msgid "Only allow string usernames"
+msgstr "N'autorise que les chaînes de noms d'utilisateur"
+msgid "Allow both numeric UIDs and string usernames"
+msgstr "Autoriser à la fois les UIDs numériques et les noms d'utilisateurs"
+msgid "Restrict user based on role"
+msgstr "Restreindre l'utilisateur en se basant sur le rôle"
+msgid "Restrict to the selected roles"
+msgstr "Restreindre aux rôles sélectionnés"
+msgid "If no roles are selected, users from any role will be allowed."
+msgstr ""
+"Si aucun rôle n'est sélectionné, les utilisateurs de n'importe quel "
+"rôle seront autorisés."
+msgid "Unrestricted"
+msgstr "Libre"
+msgid ""
+"Only users with the selected permission flag will be able to access "
+"this display. Note that users with \"access all views\" can see any "
+"view, regardless of other permissions."
+msgstr ""
+"Seuls les utilisateurs disposant du droit d'accès approprié pourront "
+"accéder à cet affichage. Notez que les utilisateurs disposant des "
+"droits \"accéder à toutes les vues\" pourront consulter toutes les "
+"vues, indépendamment des autres droits."
+msgid "No role(s) selected"
+msgstr "Pas de rôle(s) sélectionné(s)"
+msgid "Multiple roles"
+msgstr "Rôles multiples"
+msgid ""
+"Only the checked roles will be able to access this display. Note that "
+"users with \"access all views\" can see any view, regardless of role."
+msgstr ""
+"Seuls les rôles cochés seront en mesure d'accéder à cet affichage. "
+"Notez que les utilisateurs disposant des droits \"accéder à toutes "
+"les vues\" pourront consulter toutes les vues, quel que soit leur "
+"rôle."
+msgid "You must select at least one role if type is \"by role\""
+msgstr ""
+"Vous devez sélectionner au moins un rôle si le type est \"par "
+"rôle\""
+msgid "PHP validate code"
+msgstr "Code de validation PHP"
+msgid "Never cache"
+msgstr "Ne jamais mettre en cache"
+msgid "Query results"
+msgstr "Résultats de requête"
+msgid "The length of time raw query results should be cached."
+msgstr ""
+"La durée pendant laquelle les résultats bruts de la requête "
+"devraient être mis en cache."
+msgid "Rendered output"
+msgstr "Rendu de l'affichage"
+msgid "The length of time rendered HTML output should be cached."
+msgstr ""
+"La durée pendant laquelle le HTML généré devrait être mis en "
+"cache."
+msgid "Broken field"
+msgstr "Champ brisé"
+msgid "Change the title that this display will use."
+msgstr "Changer le titre que cet affichage utilisera."
+msgid "Use AJAX"
+msgstr "Utiliser AJAX"
+msgid "Change whether or not this display will use AJAX."
+msgstr "Modifier si cet affichage utilisera ou non AJAX."
+msgid "Mini"
+msgstr "Mini"
+msgid "Change this display's pager setting."
+msgstr "Modifier les paramètres de pagination de cet affichage."
+msgid "Items per page"
+msgstr "Éléments par page"
+msgid "Specify whether this display will provide a \"more\" link."
+msgstr "Spécifie si cet affichage proposera un lien \"plus\"."
+msgid "Specify access control type for this display."
+msgstr "Spécifiez le type de contrôle d'accès pour cet affichage."
+msgid "Change settings for this access type."
+msgstr "Changer les paramètres pour ce type d'accès."
+msgid "Specify caching type for this display."
+msgstr "Spécifiez le type de mise en cache pour cet affichage."
+msgid "Change settings for this caching type."
+msgstr "Changer les paramètres pour ce type de mise à jour."
+msgid "Link display"
+msgstr "Affichage de lien"
+msgid "Exposed form in block"
+msgstr "Formulaire exposé dans un bloc"
+msgid "Allow the exposed form to appear in a block instead of the view."
+msgstr ""
+"Permet au formulaire exposé d'apparaître dans un block au lieu de la "
+"vue."
+msgid "Get information on how to theme this display"
+msgstr ""
+"Obtenir des informations sur comment créer un thème pour cet "
+"affichage"
+msgid "The title of this view"
+msgstr "le titre de cette vue"
+msgid ""
+"This title will be displayed with the view, wherever titles are "
+"normally displayed; i.e, as the page title, block title, etc."
+msgstr ""
+"Ce titre sera affiché avec la vue, partout où des titres sont "
+"normalement affichés (par exemple titre de page, titre de bloc, "
+"etc.)."
+msgid "Use AJAX when available to load this view"
+msgstr "Utiliser AJAX lorsque c'est possible pour charger cette vue"
+msgid ""
+"If set, this view will use an AJAX mechanism for paging, table sorting "
+"and exposed filters. This means the entire page will not refresh. It "
+"is not recommended that you use this if this view is the main content "
+"of the page as it will prevent deep linking to specific pages, but it "
+"is very useful for side content."
+msgstr ""
+"Si cette option est sélectionnée, cette vue utilisera un mécanisme "
+"Ajax pour la pagination, le tri des tables et les filtres exposés. "
+"Cela signifie que la page n'aura pas à se rafraîchir entièrement. "
+"Il n'est pas recommandé d'utiliser cette option si cette vue "
+"constitue le contenu principal de la page, car elle empêche les liens "
+"profonds vers des pages spécifiques ; c'est toutefois très utile "
+"pour les contenus accessoires."
+msgid ""
+"Unless you're experiencing problems with pagers related to this view, "
+"you should leave this at 0. If using multiple pagers on one page you "
+"may need to set this number to a higher value so as not to conflict "
+"within the ?page= array. Large values will add a lot of commas to your "
+"URLs, so avoid if possible."
+msgstr ""
+"À moins que vous ne rencontriez des difficultés avec la pagination "
+"associée à cette vue, vous devriez laisser cette option à 0. Si "
+"vous utilisez plusieurs paginations sur une page, vous pouvez être "
+"amené à choisir une valeur plus élevée pour ce nombre afin "
+"d'éviter tout conflit avec ?page=array. Les grandes valeurs "
+"ajouteront un grand nombre de virgules à vos URL et sont donc à "
+"éviter autant que possible."
+msgid "The number of items to display per page. Enter 0 for no limit."
+msgstr ""
+"Nombre d'éléments à afficher par page. Choisissez 0 pour un nombre "
+"illimité."
+msgid "Add a more link to the bottom of the display."
+msgstr "Ajouter un lien \"plus\" en bas de l'affichage."
+msgid "Create more link"
+msgstr "Créer un lien \"plus\""
+msgid "The text to display for the more link."
+msgstr "Le texte à afficher pour le lien \"plus\"."
+msgid ""
+"This will make the view display only distinct items. If there are "
+"multiple identical items, each will be displayed only once. You can "
+"use this to try and remove duplicates from a view, though it does not "
+"always work. Note that this can slow queries down, so use it with "
+"caution."
+msgstr ""
+"Ceci contraint la vue à ne présenter que des éléments distincts. "
+"S'il existe plusieurs éléments identiques, chacun n'apparaîtra "
+"qu'une seule fois. Vous pouvez utiliser cette option pour essayer de "
+"supprimer les doublons d'une vue, bien que cela ne fonctionne pas "
+"toujours. Notez que cela peut ralentir les requêtes, c'est donc une "
+"option à utiliser avec précautions."
+msgid "Access restrictions"
+msgstr "Restrictions d'accès"
+msgid "Access options"
+msgstr "Options d'accès"
+msgid "Caching options"
+msgstr "Options de mise en cache"
+msgid "Display even if view has no result"
+msgstr "Afficher même si la vue n'a pas de résultat"
+msgid "How should this view be styled"
+msgstr "Quel style appliquer à cette vue"
+msgid ""
+"If the style you choose has settings, be sure to click the settings "
+"button that will appear next to it in the View summary."
+msgstr ""
+"Si le style de votre choix possède des paramètres, veillez à "
+"cliquer sur le bouton de paramétrage qui apparaîtra à côté dans "
+"le résumé de la vue."
+msgid "Style options"
+msgstr "Options de style"
+msgid "Row style options"
+msgstr "Options de style de ligne"
+msgid "How should each row in this view be styled"
+msgstr "Quel style appliquer aux lignes de cette vue"
+msgid "Which display to use for path"
+msgstr "Affichage à utiliser pour le chemin"
+msgid ""
+"Which display to use to get this display's path for things like "
+"summary links, rss feed links, more links, etc."
+msgstr ""
+"Quel affichage utiliser pour obtenir le chemin de cet affichage pour "
+"des éléments du type liens de résumé, liens de flux RSS, liens "
+"\"plus\", etc."
+msgid "Display output"
+msgstr "Sortie de l'affichage"
+msgid "Alternative display output"
+msgstr "Rendu de l'affichage alternatif"
+msgid "Style output"
+msgstr "Sortie du style"
+msgid "Alternative style"
+msgstr "Style alternatif"
+msgid "Row style output"
+msgstr "Sortie du style de ligne"
+msgid "Alternative row style"
+msgstr "Style de ligne alternatif"
+msgid "Field @field (ID: @id)"
+msgstr "Champ @field (ID: @id)"
+msgid ""
+"This section lists all possible templates for the display plugin and "
+"for the style plugins, ordered roughly from the least specific to the "
+"most specific. The active template for each plugin -- which is the "
+"most specific template found on the system -- is highlighted in bold."
+msgstr ""
+"Cette section liste tous les gabarits possibles pour l'affichage et "
+"les plugins de style, triés approximativement du moins spécifique au "
+"plus spécifique. Le gabarit actif pour chaque plugin — qui est le "
+"gabarit le plus spécifique trouvé dans le système — est mis en "
+"gras."
+msgid "Change theme"
+msgstr "Changer le thème"
+msgid "Rescan template files"
+msgstr "Re-scanner les fichiers de template"
+msgid ""
+"<strong>Important!</strong> When adding, removing, or renaming "
+"template files, it is necessary to make Drupal aware of the changes by "
+"making it rescan the files on your system. By clicking this button you "
+"clear Drupal's theme registry and thereby trigger this rescanning "
+"process. The highlighted templates above will then reflect the new "
+"state of your system."
+msgstr ""
+"<strong>Important !<strong> Lors de l'ajout, de la suppression ou du "
+"renommage de fichiers de gabarit, il est nécessaire d'indiquer à "
+"Drupal vos changement en ré-analysant les fichiers de votre système. "
+"En cliquant sur ce bouton, vous videz le cache du registre de thème "
+"de Drupal et ainsi déclenchez le processus d'analyse. Les gabarits "
+"mis en gras refléteront le nouvel état du système."
+msgid "Theming information (display)"
+msgstr "Informations de thème (affichage)"
+msgid "Back to !info."
+msgstr "Revenir à !info."
+msgid "theming information"
+msgstr "informations de thème"
+msgid "This display has no theming information"
+msgstr "Cet affichage n'a aucune information de thème"
+msgid "This is the default theme template used for this display."
+msgstr ""
+"Ceci est le template de thème par défaut utilisé pour cet "
+"affichage."
+msgid "This is an alternative template for this display."
+msgstr "Ceci est un gabarit alternatif pour cet affichage."
+msgid "Theming information (style)"
+msgstr "Informations de thème (style)"
+msgid "This display has no style theming information"
+msgstr "Cet affichage n'a aucune information de thème de style"
+msgid "This is the default theme template used for this style."
+msgstr "Ceci est le template de thème par défaut utilisé pour ce style."
+msgid "This is an alternative template for this style."
+msgstr "Ceci est un gabarit alternatif pour ce style."
+msgid "Theming information (row style)"
+msgstr "Informations de thème (style de ligne)"
+msgid "This display has no row style theming information"
+msgstr "Cet affichage n'a aucune information de thème de style de ligne"
+msgid "This is the default theme template used for this row style."
+msgstr ""
+"Ceci est le template de thème par défaut utilisé pour ce style de "
+"ligne."
+msgid "This is an alternative template for this row style."
+msgstr "Ceci est un gabarit alternatif pour ce style de ligne."
+msgid "Put the exposed form in a block"
+msgstr "Mettre le formulaire exposé dans un bloc"
+msgid ""
+"If set, any exposed widgets will not appear with this view. Instead, a "
+"block will be made available to the Drupal block administration "
+"system, and the exposed form will appear there. Note that this block "
+"must be enabled manually, Views will not enable it for you."
+msgstr ""
+"Si défini, tous les widgets exposés n'apparaitront pas avec cette "
+"vue. A la place, un bloc sera disponible dans le système "
+"d'administration des blocs de Drupal, et les formulaire exposé "
+"apparaitra dans celui-ci. Notez que ce bloc doit être activé "
+"manuellement, Views ne l'activera pas pour vous."
+msgid "File found in folder @template-path"
+msgstr "fichier trouvé dans le dossier @template-path"
+msgid "(File not found, in folder @template-path)"
+msgstr "(Fichier non trouvé dans le dossier @template-path)"
+msgid ""
+"Display \"@display\" uses fields but there are none defined for it or "
+"all are excluded."
+msgstr ""
+"L'affichage \"@display\" utilise des champs, mais il n'y en a pas de "
+"défini pour lui ou ils sont tous exclus."
+msgid "Display \"@display\" uses a path but the path is undefined."
+msgstr ""
+"L'affichage \"@display\" utilise un chemin mais le chemin n'est pas "
+"défini."
+msgid "Display \"@display\" has an invalid style plugin."
+msgstr "L'affichage \"@display\" a un plugin de style invalide."
+msgid "Exposed form: @view-@display_id"
+msgstr "Formulaire exposé : @view-@display_id"
+msgid "Attachment settings"
+msgstr "Paramètres de fichiers attachés"
+msgid "Inherit exposed filters"
+msgstr "Hériter les filtres exposés"
+msgid "Multiple displays"
+msgstr "Affichages multiples"
+msgid ""
+"Should this display inherit its exposed filter values from the parent "
+"display to which it is attached?"
+msgstr ""
+"Cet affichage doit-il hériter des valeurs des filtres exposés "
+"provenant de l'affichage parent auquel il est attaché ?"
+msgid "Attach before or after the parent display?"
+msgstr "Attacher avant ou après l'affichage parent ?"
+msgid "Select which display or displays this should attach to."
+msgstr "Sélectionnez à quel(s) affichage(s) ceci doit s'attacher."
+msgid "Block admin description"
+msgstr "Description pour l'administration des blocs"
+msgid "Block caching type"
+msgstr "Type de mise en cache des blocs"
+msgid ""
+"This sets the default status for Drupal's built-in block caching "
+"method; this requires that caching be turned on in block "
+"administration, and be careful because you have little control over "
+"when this cache is flushed."
+msgstr ""
+"Ceci positionne l'état par défaut pour la méthode de mise en cache "
+"de blocs intégrée à Drupal. Ceci nécessite d'activer la mise en "
+"cache dans l'administration des blocs. Attention car vous n'avez que "
+"très peu de contrôle sur la fréquence de vidage du cache."
+msgid "Using the site name"
+msgstr "Utilise le nom du site"
+msgid "Use the site name for the title"
+msgstr "Utiliser le nom du site comme titre"
+msgid "The feed icon will be available only to the selected displays."
+msgstr ""
+"L'icône du flux ne sera disponible que pour les affichages "
+"sélectionnés."
+msgid "No menu"
+msgstr "Pas de menu"
+msgid "Normal: @title"
+msgstr "Normal : @title"
+msgid "Tab: @title"
+msgstr "Onglet : @title"
+msgid "Change settings for the parent menu"
+msgstr "Changer les paramètres pour le menu parent"
+msgid "The menu path or URL of this view"
+msgstr "Le chemin ou l'URL de menu pour cette vue"
+msgid "Menu item entry"
+msgstr "Entrée d'élément de menu"
+msgid "No menu entry"
+msgstr "Aucune entrée de menu"
+msgid "Normal menu entry"
+msgstr "Entrée de menu normale"
+msgid "Menu tab"
+msgstr "Onglet de menu"
+msgid "Default menu tab"
+msgstr "Onglet de menu par défaut"
+msgid "If set to normal or tab, enter the text to use for the menu item."
+msgstr ""
+"Si positionné à normal ou onglet, saisissez le texte à utiliser "
+"pour l'élément de menu."
+msgid ""
+"If set to normal or tab, enter the text to use for the menu item's "
+"description."
+msgstr ""
+"Si paramétré sur normal ou onglet, entrez le texte à utiliser pour "
+"la description de l'élément de menu."
+msgid "Insert item into an available menu."
+msgstr "Insérer l'élément dans un menu disponible."
+msgid "Menu selection requires the activation of menu module."
+msgstr "La sélection du menu requiert l'activation du module menu."
+msgid "The lower the weight the higher/further left it will appear."
+msgstr "Plus petit sera le poids plus haut/à gauche il apparaitra."
+msgid "Default tab options"
+msgstr "Options d'onglet par défaut"
+msgid ""
+"When providing a menu item as a tab, Drupal needs to know what the "
+"parent menu item of that tab will be. Sometimes the parent will "
+"already exist, but other times you will need to have one created. The "
+"path of a parent item will always be the same path with the last part "
+"left off. i.e, if the path to this view is <em>foo/bar/baz</em>, the "
+"parent path would be <em>foo/bar</em>."
+msgstr ""
+"Lorsque l'on fournit un élément de menu en tant qu'onglet, Drupal a "
+"besoin de savoir quel sera l'élément de menu parent de cet onglet. "
+"Parfois le parent existe déjà, mais vous pouvez également être "
+"amené à en créer un. Le chemin d'un élément parent sera toujours "
+"le même chemin, dont la dernière partie est supprimée. Par exemple, "
+"si le chemin vers cette vue est <em>foo/bar/baz</em>, le chemin parent "
+"sera alors <em>foo/bar</em>."
+msgid "Already exists"
+msgstr "Existe déjà"
+msgid "If creating a parent menu item, enter the title of the item."
+msgstr ""
+"Si vous créez un élément de menu parent, saisissez le titre de "
+"l'élément."
+msgid "If creating a parent menu item, enter the description of the item."
+msgstr ""
+"Si création d'un élément de menu parent, entrez la description de "
+"l'élément."
+msgid ""
+"If the parent menu item is a tab, enter the weight of the tab. The "
+"lower the number, the more to the left it will be."
+msgstr ""
+"Si l'élément de menu parent est un onglet, saisissez le poids de "
+"l'onglet. Plus le nombre est faible, plus l'élément apparaîtra à "
+"gauche."
+msgid "\"$arg\" is no longer supported. Use % instead."
+msgstr "\"$arg\" n'est plus pris en charge. Utilisez plutôt %."
+msgid "\"%\" may not be used for the first segment of a path."
+msgstr "\"%\" ne peut pas être utilisé comme premier segment d'un chemin."
+msgid "Views cannot create normal menu items for paths with a % in them."
+msgstr ""
+"Views ne peut pas créer d'élément de menu normal pour les chemins "
+"comportant un %."
+msgid "A display whose path ends with a % cannot be a tab."
+msgstr ""
+"Un affichage dont le chemin se termine par un % ne peut être un "
+"onglet."
+msgid "Title is required for this menu type."
+msgstr "Le titre est obligatoire pour ce type de menu."
+msgid "Inline fields"
+msgstr "Champs en ligne"
+msgid ""
+"The separator may be placed between inline fields to keep them from "
+"squishing up next to each other. You can use HTML in this field."
+msgstr ""
+"Le séparateur peut être placé entre les champs en ligne pour "
+"éviter qu'ils ne s'entassent les uns sur les autres. Vous pouvez "
+"utiliser du HTML pour ce champ."
+msgid ""
+"You may optionally specify a field by which to group the records. "
+"Leave blank to not group."
+msgstr ""
+"Vous pouvez spécifier un champ en option par lequel grouper les "
+"résultats. Laisser vide pour ne pas grouper."
+msgid "Style @style requires a row style but the row plugin is invalid."
+msgstr ""
+"Le style @style nécessite un style de ligne mais le plugin de ligne "
+"est invalide."
+msgid ""
+"Horizontal alignment will place items starting in the upper left and "
+"moving right. Vertical alignment will place items starting in the "
+"upper left and moving down."
+msgstr ""
+"L'alignement horizontal place les éléments depuis le coin supérieur "
+"gauche et en allant vers la droite. L'alignement vertical positionne "
+"les éléments depuis le coin supérieur gauche et en allant vers le "
+"bas."
+msgid "RSS description"
+msgstr "Description RSS"
+msgid "This will appear in the RSS feed itself."
+msgstr "Ceci apparaîtra dans le flux RSS lui-même."
+msgid "Display record count with link"
+msgstr "Afficher le décompte d'enregistrements avec lien"
+msgid "Override number of items to display"
+msgstr "Supplanter le nombre d'éléments à afficher"
+msgid "Display items inline"
+msgstr "Afficher les éléments en ligne"
+msgid ""
+"You need at least one field before you can configure your table "
+"settings"
+msgstr ""
+"Vous avez besoin d'au moins un champ avant de pouvoir configurer vos "
+"paramètres de tableau"
+msgid "Override normal sorting if click sorting is used"
+msgstr "Supplanter le tri normal si le tri par clic est utilisé"
+msgid "Enable Drupal style \"sticky\" table headers (Javascript)"
+msgstr "Activer les entêtes de tableau \"collants\" de Drupal (JavaScript)"
+msgid ""
+"(Sticky header effects will not be active for preview below, only on "
+"live output.)"
+msgstr ""
+"(Les effets d'entêtes collants ne seront pas actifs pour la "
+"prévisualisation ci-dessous, uniquement pour une sortie réelle)."
+msgid ""
+"Place fields into columns; you may combine multiple fields into the "
+"same column. If you do, the separator in the column specified will be "
+"used to separate the fields. Check the sortable box to make that "
+"column click sortable, and check the default sort radio to determine "
+"which column will be sorted by default, if any. You may control column "
+"order and field labels in the fields section."
+msgstr ""
+"Placez les champ dans les colonnes ; vous pouvez combiner plusieurs "
+"champs dans la même colonne. Dans ce cas, le séparateur de la "
+"colonne spécifiée sera utilisé pour séparer les champs. Cochez la "
+"case Classable pour rendre cette colonne classable par clic et, le cas "
+"échéant, cochez le bouton radio de tri par défaut pour déterminer "
+"la colonne de tri par défaut. Vous pouvez contrôler l'ordre des "
+"colonnes et les étiquettes des champs dans la section Champs."
+msgid "The style selected does not utilize fields."
+msgstr "Le style sélectionné n'utilise pas de champs."
+msgid "None defined"
+msgstr "Aucun défini"
+msgid ""
+"This view is being edited by user !user, and is therefore locked from "
+"editing by others. This lock is !age old. Click here to <a "
+"href=\"!break\">break this lock</a>."
+msgstr ""
+"Cette vue est en train d'être éditée par l'utilisateur !user, et "
+"est par conséquent verrouillée pour les autres utilisateurs. Ce "
+"verrou est vieux de !age. Cliquez ici pour <a href=\"!break\">casser "
+"ce verrou</a>."
+msgid "New view"
+msgstr "Nouvelle vue"
+msgid "Changed view"
+msgstr "Vue changée"
+msgid "View %name, displaying items of type <strong>@base</strong>."
+msgstr "Vue %name, affichant des éléments de type <strong>@base</strong>."
+msgid "Live preview"
+msgstr "Prévisualisation en direct"
+msgid "‹‹"
+msgstr "‹‹"
+msgid "››"
+msgstr "››"
+msgid "@current of @max"
+msgstr "@current sur @max"
+msgid "- All -"
+msgstr "- Tout -"
+msgid "Allow multiple values"
+msgstr "Autoriser plusieurs valeurs"
+msgid "Filter criteria"
+msgstr "Critères de filtrage"
+msgid "Standard deviation"
+msgstr "Déviation standard"
+msgid "Popular content"
+msgstr "Contenu populaire"
+msgid "Content translation"
+msgstr "Traduction du contenu"
+msgid "Item ID"
+msgstr "Identifiant d'élément"
+msgid "Sort descending"
+msgstr "Trier par ordre décroissant"
+msgid "Sort ascending"
+msgstr "Trier par ordre croissant"
+msgid "Aid"
+msgstr "Aid"
+msgid "In code"
+msgstr "Dans le code"
+msgid "Administrative title"
+msgstr "Titre pour l'administration"
+msgid "Style settings"
+msgstr "Paramètres d'affichage"
+msgid "Taxonomy Term"
+msgstr "Terme de taxonomie"
+msgid "%name must be a positive integer."
+msgstr "%name doit être un entier positif."
+msgid "@label (!name)"
+msgstr "@label (!name)"
+msgid "<No value>"
+msgstr "-Aucune valeur-"
+msgid "(first item is 0)"
+msgstr "(le premier élement est 0)"
+msgid "(start from last values)"
+msgstr "(commencer par les dernières valeurs)"
+msgid "Number of pages"
+msgstr "Nombre de pages"
+msgid "Gallery page"
+msgstr "Page de galerie"
+msgid "Content statistics"
+msgstr "Statistiques de contenu"
+msgid ""
+"Target of the link, such as _blank, _parent or an iframe's name. This "
+"field is rarely used."
+msgstr ""
+"Cible du lien, comme \"_blank\", \"_parent\", ou un nom d'iframe. Ce "
+"champ est rarement utilisé."
+msgid "@argument title"
+msgstr "Titre de @argument"
+msgid "@argument input"
+msgstr "Saisie de @argument"
+msgid "The maximum number of characters this field can be."
+msgstr "Le nombre maximum de caractères à afficher pour ce champ."
+msgid "Count the number 0 as empty"
+msgstr "Considérer le nombre 0 comme vide"
+msgid "Hide if empty"
+msgstr "Masquer si vide"
+msgid "Starting value"
+msgstr "Valeur de départ"
+msgid "Specify the number the counter should start at."
+msgstr "Spécifier le nombre à partir duquel le compteur doit commencer."
+msgid "Does not start with"
+msgstr "Ne commence pas par"
+msgid "not_begins"
+msgstr "not_begins"
+msgid "Does not end with"
+msgstr "Ne se termine pas par"
+msgid "not_ends"
+msgstr "not_ends"
+msgid "The view %name has been saved."
+msgstr "La vue %name a été enregistrée."
+msgid ""
+"This filter can cause items that have more than one of the selected "
+"options to appear as duplicate results. If this filter causes "
+"duplicate results to occur, this checkbox can reduce those duplicates; "
+"however, the more terms it has to search for, the less performant the "
+"query will be, so use this with caution. Shouldn't be set on "
+"single-value fields, as it may cause values to disappear from display, "
+"if used on an incompatible field."
+msgstr ""
+"Ce filtre peut faire apparaître des éléments comme des doublons "
+"s'ils ont plus d'une option sélectionnée. Si ce filtre engendre des "
+"doublons, cette case peut les réduire&nbsp;; cependant, plus il y "
+"aura de termes de recherche, moins la requête sera performante, donc "
+"utilisez ceci avec précaution. Cela ne devrait pas être actif sur "
+"des champs à valeur unique, car cela pourrait faire disparaître des "
+"valeurs de l'affichage si c'est utilisé sur un champ incompatible."
+msgid "Jump menu"
+msgstr "Menu de saut"
+msgid ""
+"Puts all of the results into a select box and allows the user to go to "
+"a different page based upon the results."
+msgstr ""
+"Met tous les résultats dans une liste déroulante et permet à "
+"l'utilisateur d'aller à une page différente basé sur les "
+"résultats."
+msgid "Hostname of user that posted the comment."
+msgstr "Nom d'hôte (hostname) de l'utilisateur qui a posté le commentaire."
+msgid ""
+"Email of user that posted the comment. Will be empty if the author is "
+"a registered user."
+msgstr ""
+"Adresse de courriel de l'utilisateur qui a posté le commentaire. Sera "
+"vide si l'auteur est un utilisateur enregistré."
+msgid ""
+"Relate nodes to taxonomy terms, specifiying which vocabulary or "
+"vocabularies to use. This relationship will cause duplicated records "
+"if there are multiple terms."
+msgstr ""
+"Relie des nœuds à des termes de taxonomie, en spécifiant quel(s) "
+"vocabulaire(s) utiliser. Cette relation engendrera des doublons s'il y "
+"a plusieurs termes."
+msgid "The text of the profile item."
+msgstr "Le texte de l'élément de profil."
+msgid "The taxonomy term ID for the term."
+msgstr "L'identifiant du terme de taxonomie pour le terme."
+msgid "The taxonomy term name for the term."
+msgstr "Le nom du terme de taxonomie pour le terme."
+msgid "The name for the vocabulary the term belongs to."
+msgstr "Le nom pour le vocabulaire auquel appartient le terme."
+msgid ""
+"Choose which vocabularies you wish to relate. Remember that every term "
+"found will create a new record, so this relationship is best used on "
+"just one vocabulary that has only one term per node."
+msgstr ""
+"Choisissez quels vocabulaires vous voulez associer. Rappelez-vous que "
+"chaque terme trouvé créera une ligne de résultat, donc cette "
+"relation est plus utile sur un seul vocabulaire qui n'a qu'un seul "
+"terme par nœud."
+msgid "The name of the role."
+msgstr "Le nom du rôle."
+msgid "The role ID of the role."
+msgstr "L'identifiant du rôle."
+msgid "Hide empty fields"
+msgstr "Masquer les champs vides"
+msgid "Do not display fields, labels or markup for fields that are empty."
+msgstr "Ne pas afficher les champs, étiquettes ou balises des champs vides."
+msgid ""
+"You need at least one field before you can configure your jump menu "
+"settings"
+msgstr ""
+"Vous avez besoin d'au moins un champ avant de pouvoir configurer les "
+"paramètres de votre menu de saut"
+msgid ""
+"To properly configure a jump menu, you must select one field that will "
+"represent the path to utilize. You should then set that field to "
+"exclude. All other displayed fields will be part of the menu. Please "
+"note that all HTML will be stripped from this output as select boxes "
+"cannot show HTML."
+msgstr ""
+"Pour configurer correctement votre menu de saut, vous devez "
+"sélectionner un champ qui représentera le chemin à utiliser. Vous "
+"devez ensuite régler ce champ sur \"Exclure\". Tous les autres champs "
+"feront partie du menu. Veuillez noter que tout le HTML sera enlevé de "
+"l'affichage vu que les listes déroulantes ne peuvent pas en afficher."
+msgid "Path field"
+msgstr "Champ de chemin"
+msgid ""
+"If hidden, this button will only be hidden for users with javascript "
+"and the page will automatically jump when the select is changed."
+msgstr ""
+"Si caché, ce bouton sera seulement caché pour les utilisateurs "
+"exécutant le JavaScript et la page changera automatiquement quand la "
+"sélection sera modifiée."
+msgid "Monthly archive"
+msgstr "Archive mensuelle"
+msgid "This identifier is used by another handler."
+msgstr "Cet identifiant est utilisé par un autre handler."
+msgid "Length is shorter than"
+msgstr "La longueur est plus petite que"
+msgid "shorter than"
+msgstr "plus petit que"
+msgid "Length is longer than"
+msgstr "La longueur est plus grande que"
+msgid "longer than"
+msgstr "plus grand que"
+msgid "SQL Query"
+msgstr "Requête SQL"
+msgid "Query will be generated and run using the Drupal database API."
+msgstr ""
+"La requête sera générée et exécutée en utilisant l'API de base "
+"de données de Drupal."
+msgid "revision user"
+msgstr "utilisateur de la révision"
+msgid "Exposed form"
+msgstr "Formulaire exposé"
+msgid "The order of pages in the book hierarchy."
+msgstr "L'ordre des pages dans la hiérarchie du livre."
+msgid ""
+"Display the standard add comment link used on regular nodes, which "
+"will only display if the viewing user has access to add a comment."
+msgstr ""
+"Afficher le lien standard d'ajout de commentaire sur les nœuds "
+"réguliers, qui ne sera affiché que si l'utilisateur visualisant la "
+"page a accès à l'ajout de commentaire."
+msgid "Inherit pager"
+msgstr "Hériter la pagination"
+msgid "Render pager"
+msgstr "Afficher la pagination"
+msgid "Render"
+msgstr "Rendu"
+msgid "Full content"
+msgstr "Contenu complet"
+msgid ""
+"You must include at least one positive keyword with 1 character or "
+"more."
+msgid_plural ""
+"You must include at least one positive keyword with @count characters "
+"or more."
+msgstr[0] ""
+"Vous devez inclure au moins un mot-clé positif de @count caractère "
+"ou plus."
+msgstr[1] ""
+"Vous devez inclure au moins un mot-clé positif de @count caractères "
+"ou plus."
+msgid "Entity ID"
+msgstr "Identifiant (ID) de l'entité"
+msgid "Image style"
+msgstr "Style d'image"
+msgid "The label for this area that will be displayed only administratively."
+msgstr "L'étiquette de cette zone, visible seulement par les administrateurs."
+msgid "Exposed"
+msgstr "Exposé"
+msgid "Displays Reorder"
+msgstr "Réorganisation des affichages"
+msgid "Remove this display"
+msgstr "Retirer cet affichage"
+msgid "Operator to use on all groups"
+msgstr "Opérateur à utiliser sur tous les groupes"
+msgid ""
+"Either \"group 0 AND group 1 AND group 2\" or \"group 0 OR group 1 OR "
+"group 2\", etc"
+msgstr ""
+"Soit \"groupe 0 AND groupe 1 AND groupe 2\" soit \"groupe 0 OR groupe "
+"1 OR groupe 2\", etc."
+msgid "Remove group @group"
+msgstr "Retirer le groupe @group"
+msgid "Default group"
+msgstr "Groupe par défaut"
+msgid "Group @group"
+msgstr "Groupe @group"
+msgid "Ungroupable filters"
+msgstr "Filtres non-groupables"
+msgid "Configure group settings for @type %item"
+msgstr "Configurer les paramètres du groupe pour @type %item"
+msgid "Basic exposed form"
+msgstr "Formulaire exposé basique"
+msgid "Input required"
+msgstr "Valeur requise"
+msgid ""
+"An exposed form that only renders a view if the form contains user "
+"input."
+msgstr ""
+"Un formulaire exposé qui affiche une vue seulement si le formulaire "
+"contient une saisie utilisateur."
+msgid "Display all items"
+msgstr "Afficher tous les éléments"
+msgid "Display all items that this view might find"
+msgstr "Afficher tous les éléments que cette vue pourrait trouver"
+msgid "Display a specified number of items"
+msgstr "Afficher un nombre défini d'éléments"
+msgid "Display a limited number items that this view might find."
+msgstr ""
+"Afficher un nombre limité d'éléments que cette vue pourrait "
+"trouver."
+msgid "Paged output, full pager"
+msgstr "Rendu paginé, pagination complète"
+msgid "Paged output, full Drupal style"
+msgstr "Rendu paginé, complet du style Drupal"
+msgid "Paged output, mini pager"
+msgstr "Rendu paginé, mini-pagination"
+msgid "Use the mini pager output."
+msgstr "Utiliser le rendu de la mini-pagination."
+msgid "The taxonomy vocabulary name"
+msgstr "Le nom du vocabulaire de taxonomie"
+msgid "Name (raw)"
+msgstr "Nom (brut)"
+msgid ""
+"The user or author name. This filter does not check if the user exists "
+"and allows partial matching. Does not utilize autocomplete."
+msgstr ""
+"Le nom de l'utilisateur ou de l'auteur. Ce filtre ne vérifie pas si "
+"l'utilisateur existe et permet une recherche partielle. N'utilise pas "
+"l'auto-complétion."
+msgid "Provide markup text for the area."
+msgstr "Fournir un texte balisé pour la zone."
+msgid "Machine Name"
+msgstr "Nom système"
+msgid "Change the machine name of this display."
+msgstr "Changer le nom système de cet affichage."
+msgid "Change settings for this pager type."
+msgstr "Modifier les paramètres pour ce type de pagination."
+msgid "Allow grouping and aggregation (calculation) of fields."
+msgstr "Autoriser le regroupement et l'aggrégation (calcul) des champs."
+msgid "Exposed form style"
+msgstr "Style du formulaire exposé"
+msgid "Select the kind of exposed filter to use."
+msgstr "Choisir le type de filtre exposé à utiliser."
+msgid "Exposed form settings for this exposed form style."
+msgstr "Paramètres du formulaire exposé pour ce style de formulaire exposé."
+msgid "The machine name of this display"
+msgstr "Le nom système de cet affichage"
+msgid "This is machine name of the display."
+msgstr "C'est le nom système de l'affichage."
+msgid ""
+"If enabled, some fields may become unavailable. All fields that are "
+"selected for grouping will be collapsed to one record per distinct "
+"value. Other fields which are selected for aggregation will have the "
+"function run on them. For example, you can group nodes on title and "
+"count the number of nids in order to get a list of duplicate titles."
+msgstr ""
+"Si coché, certains champs pourraient devenir indisponibles. Tous les "
+"champs qui sont sélectionnés pour le regroupement seront réduits à "
+"un seul enregistrement par valeur distincte. Les autres champs qui "
+"sont sélectionnés pour agrégation verront la fonction exécutée "
+"sur ceux-ci. Par exemple, vous pouvez grouper des nœuds par leur "
+"titre et compter le nombre de nids pour obtenir une liste des "
+"doublons."
+msgid ""
+"<strong>Important!</strong> You have changed the display's machine "
+"name. Anything that attached to this display specifically, such as "
+"theming, may stop working until it is updated. To see theme "
+"suggestions for it, you need to save the view."
+msgstr ""
+"<strong>Important !</strong> Vous avez modifié le nom machine de "
+"l'affichage. Tout ce qui est spécifiquement rattaché à cet "
+"affichage, tel que l'habillage (theming), pourrait cesser de "
+"fonctionner jusqu'à ce qu'il soit mis à jour. Pour voir les "
+"suggestions de thème le concernant, vous devez enregistrer la vue."
+msgid "Exposed Form"
+msgstr "Formulaire exposé"
+msgid "Exposed form options"
+msgstr "Options du formulaire exposé"
+msgid "Select which pager, if any, to use for this view"
+msgstr "Sélectionner, s'il y a lieu, la pagination à utiliser pour cette vue"
+msgid "Pager options"
+msgstr "Options de pagination"
+msgid "Display id should be unique."
+msgstr "L'identifiant (ID) de l'affichage doit être unique."
+msgid "Text to display in the submit button of the exposed form."
+msgstr ""
+"Texte à afficher pour le bouton de soumission du formulaire des "
+"filtres exposés."
+msgid "Include reset button"
+msgstr "Inclure un bouton de réinitialisation."
+msgid ""
+"If checked the exposed form will provide a button to reset all the "
+"applied exposed filters"
+msgstr ""
+"Si coché le formulaire exposé fournira un bouton pour réinitialiser "
+"tous les filtres exposés appliqués"
+msgid "Reset button label"
+msgstr "Texte du bouton de réinitialisation"
+msgid "Text to display in the reset button of the exposed form."
+msgstr ""
+"Texte à afficher dans le bouton de réinitialisation du formulaire "
+"exposé."
+msgid "Exposed sorts label"
+msgstr "Etiquette des tris exposés"
+msgid "Text to display as the label of the exposed sort select box."
+msgstr ""
+"Texte à afficher comme étiquette de la liste déroulante du tri "
+"exposé."
+msgid "Text to use when exposed sort is ordered ascending."
+msgstr "Texte à utiliser quand le tri exposé est croissant."
+msgid "Text to use when exposed sort is ordered descending."
+msgstr "Texte à utiliser quand le tri exposé est décroissant."
+msgid "Text on demand"
+msgstr "Texte à la demande"
+msgid ""
+"The number of items to skip. For example, if this field is 3, the "
+"first 3 items will be skipped and not displayed."
+msgstr ""
+"Le nombre d'éléments à passer. Par exemple, si ce champ est défini "
+"à 3, les 3 premiers éléments seront passés et non affichés."
+msgid "The total number of pages. Leave empty to show all pages."
+msgstr "Le nombre total de pages. Laisser vide pour montrer toutes les pages."
+msgid "Exposed options"
+msgstr "Options exposées"
+msgid ""
+"Exposing this options allows users to define their values in a exposed "
+"form when view is displayed"
+msgstr ""
+"Exposer ces options permet aux utilisateurs de définir leurs valeurs "
+"dans un formulaire exposé quand la vue est affichée"
+msgid "Expose items per page"
+msgstr "Exposer les éléments par page"
+msgid ""
+"When checked, users can determine how many items per page show in a "
+"view"
+msgstr ""
+"Si coché, les utilisateurs pourront spécifier combien d'éléments "
+"afficher par page dans une vue"
+msgid "Items per page label"
+msgstr "Etiquette des éléments par page"
+msgid "Label to use in the exposed items per page form element."
+msgstr ""
+"Etiquette à utiliser pour le champ de nombre d'éléments par page "
+"exposé."
+msgid "Exposed items per page options"
+msgstr "Options du nombre d'éléments par page"
+msgid "Expose Offset"
+msgstr "Exposer le décalage"
+msgid "Offset label"
+msgstr "Étiquette du décalage"
+msgid "Label to use in the exposed offset form element."
+msgstr ""
+"Etiquette à utiliser dans l'élément \"décalage\" du formulaire "
+"exposé."
+msgid "Offset must be an number greather or equal than 0."
+msgstr "Le décalage doit être un nombre supérieur ou égal à 0."
+msgid "Mini pager, @count item, skip @skip"
+msgid_plural "Mini pager, @count items, skip @skip"
+msgstr[0] "Mini pagination, @count élément, en passer @skip"
+msgstr[1] "Mini pagination, @count éléments, en passer @skip"
+msgid "Mini pager, @count item"
+msgid_plural "Mini pager, @count items"
+msgstr[0] "Mini pagination, @count élement"
+msgstr[1] "Mini pagination, @count éléments"
+msgid "All items, skip @skip"
+msgstr "Tous les éléments, en passer @skip"
+msgid "All items"
+msgstr "Tous les éléments"
+msgid "@count item, skip @skip"
+msgid_plural "@count items, skip @skip"
+msgstr[0] "@count élément, en passer @skip"
+msgstr[1] "@count éléments, en passer @skip"
+msgid "@count item"
+msgid_plural "@count items"
+msgstr[0] "@count élément"
+msgstr[1] "@count éléments"
+msgid "Group results together"
+msgstr "Grouper les résultats ensemble"
+msgid "Authentication module"
+msgstr "Module d'authentification"
+msgid "In database"
+msgstr "Dans la base de données"
+msgid "Update preview"
+msgstr "Actualiser l'aperçu"
+msgid "@entity:@bundle"
+msgstr "@entity:@bundle"
+msgid "Is not empty (NOT NULL)"
+msgstr "N'est pas vide (NOT NULL)"
+msgid ""
+"That view is created for the version @import_version of views, but you "
+"only have @api_version"
+msgstr ""
+"La vue a été créée pour la version @import_version de Views, mais "
+"avez la version @api_version"
+msgid "Broken/missing handler: @table > @field"
+msgstr "Handler brisé/manquant : @table > @field"
+msgid ""
+"Display %display has set node/% as path. This will not produce what "
+"you want. If you want to have multiple versions of the node view, use "
+"panels."
+msgstr ""
+"L'affichage %display a son chemin parametré sur node/%. Ceci ne "
+"produira pas l'effet désiré. Si vous voulez avoir plusieurs versions "
+"de l'affichage d'un nœud, utilisez Panels."
+msgid "@category: @field-name"
+msgstr "@category : @field-name"
+msgid "Translate link"
+msgstr "Lien de traduction"
+msgid "Provide a simple link to translate the node."
+msgstr "Fournir un lien pour traduire le nœud."
+msgid "Authmap ID"
+msgstr "Identifiant Authmap"
+msgid "The Authmap ID."
+msgstr "L'identifiant Authmap."
+msgid "Authentication name"
+msgstr "Nom d'authentification"
+msgid "The unique authentication name."
+msgstr "Le nom d'authentification unique."
+msgid "The name of the module managing the authentication entry."
+msgstr ""
+"Le nom du module d'authentification gérant les entrées "
+"d'authentification."
+msgid "Use absolute link (begins with \"http://\")"
+msgstr "Utiliser un lien absolu (commençant par \"http://\")"
+msgid "Output machine name"
+msgstr "Afficher le nom système"
+msgid "Use Drupal's taxonomy term path to create breadcrumb links"
+msgstr ""
+"Utiliser le chemin du terme de taxonomie de Drupal pour créer les "
+"liens du fil d'ariane"
+msgid ""
+"If selected, the links in the breadcrumb trail will be created using "
+"the standard drupal method instead of the custom views method. This is "
+"useful if you are using modules like taxonomy redirect to modify your "
+"taxonomy term links."
+msgstr ""
+"Si sélectionné, les liens du fil d'Ariane seront créés avec la "
+"méthode standard de drupal au lieu de la méthode de Views. Ceci est "
+"utile lorsque vous utilisez des modules comme Taxonomy Redirect pour "
+"modifier vos liens de termes de taxonomie."
+msgid "Change the CSS class name(s) that will be added to this display."
+msgstr ""
+"Modifier la(les) classe(s) CSS qui sera(seront) ajoutée(s) à cet "
+"affichage."
+msgid ""
+"The CSS class names will be added to the view. This enables you to use "
+"specific CSS code for each view. You may define multiples classes "
+"separated by spaces."
+msgstr ""
+"Les noms de classe CSS à ajouter à la vue. Ceci vous permettra "
+"d'utiliser du code CSS spécifique pour chaque vue. Vous pouvez "
+"définir plusieurs classes en les séparant par des espaces."
+msgid "CSS classes must be alphanumeric or dashes only."
+msgstr ""
+"Les classes CSS doivent être constituées de caractères "
+"alphanumériques ou des tirets seulement."
+msgid "Choose text"
+msgstr "Choisissez le texte"
+msgid "The text that will appear as the selected option in the jump menu."
+msgstr ""
+"Le texte qui apparaitra comme option sélectionnée dans le menu de "
+"saut."
+msgid "Term edit link"
+msgstr "Lien de modification du terme"
+msgid "Provide a simple link to edit the term."
+msgstr "Fournir un lien pour modifier le terme."
+msgid ""
+"Set between which values the user can choose when determining the "
+"items per page. Separated by comma."
+msgstr ""
+"Spécifiez entre quelle valeurs l'utilisateur peut choisir lors de la "
+"spécification du nombre d'éléments par page. Séparées par des "
+"virgules."
+msgid ""
+"When checked, users can determine how many items should be skipped at "
+"the beginning."
+msgstr ""
+"Si coché, les utilisateurs peuvent déterminer combien d'éléments "
+"doivent être passés au début."
+msgid ""
+"Please insert a list of integer numeric values separated by commas: "
+"e.g: 10, 20, 50, 100"
+msgstr ""
+"Merci de spécifier une liste de valeur numériques séparées par des "
+"virgules&nbsp;: ex.: 10, 20, 50, 100"
+msgid "Link field"
+msgstr "Champ lien"
+msgid "Attachment before"
+msgstr "Vue attachée avant"
+msgid "Attachment after"
+msgstr "Vue attachée après"
+msgid ""
+"Handler @handler tried to add additional_field @identifier but @table "
+"could not be added!"
+msgstr ""
+"Le gestionnaire @handler a tenté d'ajouter le champ supplémentaire "
+"@identifier mais la table @table n'a pas pu être ajoutée !"
+msgid "Fill up single line"
+msgstr "Remplir une ligne"
+msgid "Enabled, name"
+msgstr "Activé, nom"
+msgid "Row class"
+msgstr "Classe de ligne"
+msgid "- Use default -"
+msgstr "- Utiliser la valeur par défaut -"
+msgid "Unknown content type"
+msgstr "Type de contenu inconnu"
+msgid "View mode"
+msgstr "Mode d'affichage"
+msgid ""
+"The path of the primary file for this item, relative to the Drupal "
+"root; e.g. modules/node/node.module."
+msgstr ""
+"Le chemin du fichier principal pour cet élément, relatif à la "
+"racine de Drupal&nbsp;; ex.: modules/node/node.module."
+msgid "The name of the item; e.g. node."
+msgstr "Le nom de l'item ; ex.: 'node'."
+msgid "The type of the item, either module, theme, or theme_engine."
+msgstr ""
+"Type de l'élément, soit un module, un thème, ou un moteur de "
+"thème."
+msgid "Boolean indicating whether or not this item is enabled."
+msgstr "Booléen indiquant si un élément est activé ou pas."
+msgid "Schema version"
+msgstr "Version du schéma de la BDD"
+msgid ""
+"The module's database schema version number. -1 if the module is not "
+"installed (its tables do not exist); 0 or the largest N of the "
+"module's hook_update_N() function that has either been run or existed "
+"when the module was first installed."
+msgstr ""
+"Numéro de version du schéma de la base de données du module: -1 si "
+"le module n'est pas installé (ses tables n'existent pas), 0 ou le "
+"plus grand N renvoyé par la fonction hook_update_N() du module, si "
+"elle a été lancé une fois, ou le plus grand N existant lorsque le "
+"module a été installé pour la première fois."
+msgid "View: !view"
+msgstr "Vue : !view"
+msgid "Human-readable name"
+msgstr "Nom affiché"
+msgid "Fixed value"
+msgstr "Valeur fixe"
+msgid "Asc"
+msgstr "Asc"
+msgid "Access the views administration pages."
+msgstr "Accéder aux pages d'administration des vues."
+msgid "Bypass access control when accessing views."
+msgstr "Outrepasser le contrôle d'accès lors de l'accès aux vues."
+msgid "Add new view"
+msgstr "Créer une nouvelle vue"
+msgid "- Basic validation -"
+msgstr "- Validation simple -"
+msgid "HTML element"
+msgstr "Élément HTML"
+msgid "Label HTML element"
+msgstr "Élément HTML de l'étiquette"
+msgid "Place a colon after the label"
+msgstr "Placer un signe deux points après l'étiquette"
+msgid "Wrapper HTML element"
+msgstr "Élément HTML de l'enveloppe (wrapper)"
+msgid "Wrapper class"
+msgstr "Classe de l'enveloppe (wrapper)"
+msgid "Add default classes"
+msgstr "Ajouter les classes CSS par défaut"
+msgid ""
+"Use default Views classes to identify the field, field label and field "
+"content."
+msgstr ""
+"Utilisez les classes par défaut de Views pour identifier le champ, "
+"l'étiquette et le contenu du champ."
+msgid "Use absolute path"
+msgstr "Utiliser un chemin absolu"
+msgid "Rel Text"
+msgstr "Texte Rel"
+msgid ""
+"Include Rel attribute for use in lightbox2 or other javascript "
+"utility."
+msgstr ""
+"Inclure l'attribut Rel pour Lightbox 2 ou tout autre utilitaire "
+"JavaScript."
+msgid "Preserve certain tags"
+msgstr "Préserver certaines balises"
+msgid ""
+"List the tags that need to be preserved during the stripping process. "
+"example &quot;&lt;p&gt; &lt;br&gt;&quot; which will preserve all p and "
+"br elements"
+msgstr ""
+"Lister les balises qui doivent être conservées durant le processus "
+"de nettoyage. Exemple, &quot;&lt;p&gt; &lt;br&gt;&quot; préservera "
+"tous les éléments p et br."
+msgid "Format plural"
+msgstr "Former le pluriel"
+msgid "If checked, special handling will be used for plurality."
+msgstr "Si coché, le pluriel sera pris en charge de façon spécifique."
+msgid "Singular form"
+msgstr "Formation du singulier"
+msgid "Text to use for the singular form."
+msgstr "Texte à utiliser au singulier."
+msgid "Plural form"
+msgstr "Formation du pluriel"
+msgid ""
+"Text to use for the plural form, @count will be replaced with the "
+"value."
+msgstr ""
+"Texte à utiliser pour la formation du pluriel, @count sera remplacé "
+"par la valeur."
+msgid "An offset from the current time such as \"!example1\" or \"!example2\""
+msgstr ""
+"Un décalage à partir de la date actuelle tel que \"!example1\" ou "
+"\"!example2\""
+msgid ""
+"A unique machine-readable name for this View. It must only contain "
+"lowercase letters, numbers, and underscores."
+msgstr ""
+"Un nom système unique pour cette vue. Il ne doit contenir que des "
+"lettres en minuscules, des chiffres ou des tirets bas."
+msgid "Weight for @display"
+msgstr "Poids de @display"
+msgid "Translation method"
+msgstr "Méthode de traduction"
+msgid ""
+"Select a translation method to use for Views data like header, footer, "
+"and empty text."
+msgstr ""
+"Sélectionnez une méthode de traduction à utiliser pour les données "
+"de Views comme l'en-tête, le pied de page et le texte vide."
+msgid ""
+"This title will be displayed on the views edit page instead of the "
+"default one. This might be useful if you have the same item twice."
+msgstr ""
+"Ce titre sera affiché dans la page d'édition de la vue au lieu de "
+"celui par défaut. Ceci peut-être pratique si vous avez le même "
+"élément plusieurs fois."
+msgid "Do not pass admin strings for translation."
+msgstr "Ne pas transmettre de chaînes administratives à traduire."
+msgid ""
+"Use Drupal core t() function. Not recommended, as it doesn't support "
+"updates to existing strings."
+msgstr ""
+"Utiliser la fonction t() du cœur de Drupal. Non recommandé, car elle "
+"ne supporte pas les mises à jour des chaînes existantes."
+msgid ""
+"If you need to translate Views labels into other languages, consider "
+"installing the <a href=\"!path\">Internationalization</a> package's "
+"Views translation module."
+msgstr ""
+"Si vous avez besoin de traduire les étiquettes de vues dans d'autre "
+"langues, envisagez l'installation du module de traduction de Views du "
+"paquet <a href=\"!path\">Internationalization</a>."
+msgid "Feed Item ID"
+msgstr "Identifiant d'élément de flux"
+msgid "The unique ID of the aggregator item."
+msgstr "L'identifiant unique de l'élément d'agrégateur."
+msgid "The guid of the original imported item."
+msgstr "Le GUID de l'élément d'origine importé."
+msgid "Date and time of when the comment was created."
+msgstr "Date et heure de création du commentaire."
+msgid "Date and time of when the comment was last updated."
+msgstr "Date et heure de mise à jour du dernier commentaire"
+msgid "Whether the comment is approved (or still in the moderation queue)."
+msgstr ""
+"Si le commentaire est approuvé (ou se trouve encore dans la file "
+"d'attente de modération)."
+msgid "Approved comment"
+msgstr "Commentaire approuvé"
+msgid "Last comment CID"
+msgstr "Identifiant CID du dernier commentaire"
+msgid "Display the last comment of a node"
+msgstr "Afficher le dernier commentaire d'un nœud"
+msgid "Last Comment"
+msgstr "Dernier commentaire"
+msgid "The last comment of a node."
+msgstr "Le dernier commentaire d'un nœud."
+msgid ""
+"Some roles lack permission to access content, but display %display has "
+"no access control."
+msgstr ""
+"Quelques rôles n'ont pas la permission d'accéder au contenu, mais "
+"l'affichage %display n'a pas de contrôle d'accès."
+msgid "The extension of the file."
+msgstr "L'extension de ce fichier."
+msgid "File Usage"
+msgstr "Utilisation du fichier"
+msgid ""
+"A file that is associated with this node, usually because it is in a "
+"field on the node."
+msgstr ""
+"Un fichier qui est associé à ce nœud, généralement parce qu'il se "
+"trouve dans un champ du nœud."
+msgid ""
+"A user that is associated with this file, usually because this file is "
+"in a field on the user."
+msgstr ""
+"Un utilisateur qui est associé à ce fichier, généralement parce "
+"que ce fichier se trouve dans un champ de l'utilisateur."
+msgid ""
+"A file that is associated with this user, usually because it is in a "
+"field on the user."
+msgstr ""
+"Un fichier qui est associé à cet utilisateur, généralement parce "
+"qu'il se trouve dans un champ de l'utilisateur."
+msgid ""
+"A comment that is associated with this file, usually because this file "
+"is in a field on the comment."
+msgstr ""
+"Un commentaire qui est associé à ce fichier, généralement parce "
+"que ce fichier se trouve dans un champ du commentaire."
+msgid ""
+"A file that is associated with this comment, usually because it is in "
+"a field on the comment."
+msgstr ""
+"Un fichier qui est associé à ce commentaire, généralement parce "
+"qu'il se trouve dans un champ du commentaire."
+msgid ""
+"A taxonomy term that is associated with this file, usually because "
+"this file is in a field on the taxonomy term."
+msgstr ""
+"Un terme de taxonomie qui est associé à ce fichier, généralement "
+"parce que ce fichier se trouve dans un champ du terme de taxonomie."
+msgid ""
+"A file that is associated with this taxonomy term, usually because it "
+"is in a field on the taxonomy term."
+msgstr ""
+"Un fichier qui est associé à ce terme de taxonomie, généralement "
+"parce qu'il se trouve dans un champ du terme de taxonomie."
+msgid "Taxonomy Vocabulary"
+msgstr "Vocabulaire de taxonomie"
+msgid ""
+"A taxonomy vocabulary that is associated with this file, usually "
+"because this file is in a field on the taxonomy vocabulary."
+msgstr ""
+"Un vocabulaire de taxonomie qui est associé à ce fichier, "
+"généralement parce que ce fichier se trouve dans un champ du "
+"vocabulaire de taxonomie."
+msgid ""
+"A file that is associated with this taxonomy vocabulary, usually "
+"because it is in a field on the taxonomy vocabulary."
+msgstr ""
+"Un fichier qui est associé avec ce vocabulaire de taxonomie, "
+"généralement parce qu'il se trouve dans un champ du vocabulaire de "
+"taxonomie."
+msgid "The module managing this file relationship."
+msgstr "Le module gérant la relation à ce fichier."
+msgid "The type of entity that is related to the file."
+msgstr "Le type de l'entité qui est relatif au fichier."
+msgid "The number of times the file is used by this entity."
+msgstr "Le nombre de fois que ce fichier est utilisé par cette entité."
+msgid ""
+"Machine-Name of the vocabulary a term is a member of. This will be the "
+"vocabulary that whichever term the \"Taxonomy: Term\" field is; and "
+"can similarly cause duplicates."
+msgstr ""
+"Le nom machine du vocabulaire auquel appartient le terme. Ceci sera le "
+"vocabulaire de n'importe quel terme du champ \"Taxonomie : Terme\" ; "
+"et peut aussi causer des doublons."
+msgid "term from !field_name"
+msgstr "terme à partir de !field_name"
+msgid "Math expression"
+msgstr "Expression mathématique"
+msgid "Evaluates a mathematical expression and displays it."
+msgstr "Évalue une expression mathématique et l'affiche."
+msgid "Use destination"
+msgstr "Utiliser la destination"
+msgid "Add destination to the link"
+msgstr "Ajouter une destination au lien"
+msgid ""
+"Show the comment link in the form used on standard node teasers, "
+"rather than the full node form."
+msgstr ""
+"Afficher le lien de commentaire dans la forme utilisée sur les "
+"résumés de nœuds standards, au lieu de celle des nœuds complets."
+msgid ""
+"Used by Style: Table to determine the actual column to click sort the "
+"field on. The default is usually fine."
+msgstr ""
+"Utilisé par Style : Tableau pour déterminer la colonne réelle à "
+"trier par clic. La valeur est généralement suffisante."
+msgid "Group column"
+msgstr "Colonne de regroupement"
+msgid ""
+"Select the column of this field to apply the grouping function "
+"selected above."
+msgstr ""
+"Sélectionnez la colonne de ce champ pour appliquer la fonction de "
+"regroupement ci-dessus."
+msgid "Group columns (additional)"
+msgstr "Grouper des colonnes (complément)"
+msgid ""
+"Select any additional columns of this field to include in the query "
+"and to group on."
+msgstr ""
+"Sélectionnez n'importe quelle colonne additionnelle de ce champ à "
+"inclure dans la requête pour le regroupement."
+msgid "Display download path instead of file storage URI"
+msgstr ""
+"Afficher le chemin de téléchargement au lieu de l'URI du système de "
+"fichier"
+msgid ""
+"This will provide the full download URL rather than the internal "
+"filestream address."
+msgstr ""
+"Ceci fournira l'URL complète de téléchargement à la place de "
+"l'adresse interne du fichier."
+msgid "The machine name for the vocabulary the term belongs to."
+msgstr "Le nom système du vocabulaire auquel le terme appartient."
+msgid "Display error message"
+msgstr "Afficher un message d'erreur"
+msgid "Term name converted to Term ID"
+msgstr "Nom du terme converti en identifiant (ID) de terme"
+msgid "No comment"
+msgstr "Aucun commentaire"
+msgid "Comment or document this display."
+msgstr "Commenter ou documenter cet affichage."
+msgid "Query settings"
+msgstr "Paramètres de la requête"
+msgid "Allow to set some advanced settings for the query plugin"
+msgstr ""
+"Permettre le réglage de paramètres avancés pour le plugin de "
+"requête"
+msgid "The name and the description of this display"
+msgstr "Le nom et la description de cet affichage"
+msgid ""
+"This name will appear only in the administrative interface for the "
+"View."
+msgstr ""
+"Ce nom apparaîtra seulement dans l'interface d'administration de la "
+"vue."
+msgid ""
+"This description will appear only in the administrative interface for "
+"the View."
+msgstr ""
+"La description apparaîtra seulement dans l'interface d'administration "
+"de la vue."
+msgid "This display's comments"
+msgstr "Commentaires sur cet affichage"
+msgid ""
+"This value will be seen and used only within the Views UI and can be "
+"used to document this display. You can use this to provide notes for "
+"other or future maintainers of your site about how or why this display "
+"is configured."
+msgstr ""
+"Cette valeur ne sera vue et utilisée qu'à l'intérieur de Views UI "
+"et pourra être utilisée pour documenter cet affichage. Vous pouvez "
+"utiliser ceci pour fournir des notes aux autres ou futurs mainteneurs "
+"de votre site sur le pourquoi et le comment de la configuration de "
+"l'affichage."
+msgid "Query options"
+msgstr "Options de la requête"
+msgid "Display name must be letters, numbers, or underscores only."
+msgstr ""
+"Le nom de l'affichage ne doit contenir que des lettres, chiffres ou "
+"tirets bas."
+msgid ""
+"Should this display inherit its paging values from the parent display "
+"to which it is attached?"
+msgstr ""
+"Cet affichage doit-il hériter des valeurs de pagination de "
+"l'affichage parent auquel il est joint ?"
+msgid ""
+"Should this display render the pager values? This is only meaningful "
+"if inheriting a pager."
+msgstr ""
+"Cet affichage doit-il afficher les valeurs de pagination ? Cela n'a de "
+"sens que s'il hérite d'une pagination."
+msgid ""
+"This will appear as the name of this block in administer >> structure "
+">> blocks."
+msgstr ""
+"Ceci apparaîtra comme nom de ce bloc dans administrer >> structure >> "
+"blocs."
+msgid ""
+"Text to display instead of results until the user selects and applies "
+"an exposed filter."
+msgstr ""
+"Texte à afficher à la place des résultats jusqu'à ce que "
+"l'utilisateur sélectionne et applique un filtre exposé."
+msgid "Include all items option"
+msgstr "Inclure une option \"tous les éléments\"."
+msgid ""
+"If checked, an extra item will be included to items per page to "
+"display all items"
+msgstr ""
+"Si coché, un élément supplémentaire sera inclus aux éléments par "
+"page pour afficher tous les éléments."
+msgid "All items label"
+msgstr "Étiquette de \"tous les éléments\""
+msgid "Which label will be used to display all items"
+msgstr "L'étiquette qui sera utilisée pour afficher tous les éléments"
+msgid "Disable SQL rewriting"
+msgstr "Désactiver la réécriture SQL"
+msgid ""
+"WARNING: Disabling SQL rewriting means that node access security is "
+"disabled. This may allow users to see data they should not be able to "
+"see if your view is misconfigured. Please use this option only if you "
+"understand and accept this security risk."
+msgstr ""
+"AVERTISSEMENT : la désactivation de la réécriture SQL signifie que "
+"la sécurité des accès aux nœuds est désactivée. Si votre vue est "
+"mal configurée, cela pourrait permettre aux utilisateurs de voir des "
+"données qu'ils ne devraient pas voir. Veuillez n'utiliser cette "
+"option que si vous comprenez et acceptez ce risque de sécurité."
+msgid "Use Slave Server"
+msgstr "Utiliser un serveur esclave"
+msgid ""
+"This will make the query attempt to connect to a slave server if "
+"available.  If no slave server is defined or available, it will fall "
+"back to the default server."
+msgstr ""
+"Ceci lancera la requête pour tenter une connexion à un serveur "
+"esclave, s'il est disponible. Si aucun serveur esclave n'est défini "
+"ou n'est disponible, le serveur par défaut sera utilisé."
+msgid "Field Language"
+msgstr "Langue du champ"
+msgid ""
+"All fields which support translations will be displayed in the "
+"selected language."
+msgstr ""
+"Tous les champs qui prennent en charge les traductions seront "
+"affichés dans la langue sélectionnée."
+msgid "The class to provide on each row."
+msgstr "La classe à utiliser pour chaque ligne."
+msgid ""
+"You may use field tokens from as per the \"Replacement patterns\" used "
+"in \"Rewrite the output of this field\" for all fields."
+msgstr ""
+"Vous pouvez utiliser les jetons de champs conformément aux \"Modèles "
+"de remplacement\" utilisés dans \"Réécrire la sortie de ce champ\" "
+"pour tous les champs."
+msgid "Table summary"
+msgstr "Résumé du tableau"
+msgid ""
+"If checked, the current path will be displayed as the default option "
+"in the jump menu, if applicable."
+msgstr ""
+"Si coché, le chemin actuel sera affiché comme option par défaut "
+"dans le menu de saut, si possible."
+msgid "The class to provide on the wrapper, outside the list."
+msgstr "La classe à appliquer à l'enveloppe (wrapper) de la liste."
+msgid "List class"
+msgstr "Classe de la liste"
+msgid "The class to provide on the list element itself."
+msgstr "La classe à appliquer à l'élément liste lui-même."
+msgid ""
+"Define the base path for links in this summary\n"
+"        view, i.e. "
+"http://example.com/<strong>your_view_path/archive</strong>.\n"
+"        Do not include beginning and ending forward slash. If this "
+"value\n"
+"        is empty, views will use the first path found as the base "
+"path,\n"
+"        in page displays, or / if no path could be found."
+msgstr ""
+"Définir le chemin de base pour les liens dans cette vue "
+"récapitulative, i.e. "
+"http://example.com/<strong>le_chemin_de_votre_vue/archive</strong>. Ne "
+"pas mettre de slash (/) avant et après. Si cette valeur est vide, "
+"Views utilisera le premier chemin trouvé comme \r\n"
+"chemin de base dans les affichages de page, ou / si aucun chemin n'est "
+"trouvé."
+msgid "Approve link"
+msgstr "Lien d'approbation"
+msgid "Content access"
+msgstr "Accès au contenu"
+msgid "Content revisions"
+msgstr "Révisions de contenu"
+msgid "%time hence"
+msgstr "Dans %time"
+msgid "Machine name: "
+msgstr "Nom système : "
+msgid "Bypass views access control"
+msgstr "Outrepasser le contrôle d'accès aux vues"
+msgid "No results behavior"
+msgstr "Comportement en l'absence de résultats"
+msgid "Edit @section"
+msgstr "Modifier @section"
+msgid "Edit this view to add a display."
+msgstr "Modifier cette vue pour ajouter un affichage."
+msgid "Add view from template"
+msgstr "Ajouter une vue à partir d'un gabarit"
+msgid "View to insert"
+msgstr "Vue à insérer"
+msgid "The view to insert into this area."
+msgstr "La vue à insérer dans cette zone."
+msgid "Inherit contextual filters"
+msgstr "Hériter des filtres contextuels"
+msgid ""
+"If checked, this view will receive the same contextual filters as its "
+"parent."
+msgstr ""
+"Si coché, cette vue utilisera les mêmes filtres contextuels que son "
+"parent."
+msgid "Recursion detected in view @view display @display."
+msgstr "Récursion détectée dans la vue @view, affichage @display."
+msgid "When the filter value is <em>NOT</em> in the URL"
+msgstr "Quand la valeur du filtre n'est <em>PAS</em> dans l'URL"
+msgid "Exception value"
+msgstr "Valeur à exclure"
+msgid ""
+"If this value is received, the filter will be ignored; i.e, \"all "
+"values\""
+msgstr ""
+"Si cette valeur est reçue, le filtre sera ignoré : ex. \"toutes les "
+"valeurs\""
+msgid ""
+"Override the view and other argument titles. Use \"%1\" for the first "
+"argument, \"%2\" for the second, etc."
+msgstr ""
+"Supplanter les titres de la vue et des autres arguments. Utiliser "
+"\"%1\" pour le premier argument, \"%2\" pour le deuxième, etc."
+msgid "When the filter value <em>IS</em> in the URL or a default is provided"
+msgstr ""
+"Quand la valeur du filtre <em>EST</em> dans l'URL ou lorsqu'une valeur "
+"par défaut est fournie"
+msgid "Provide title"
+msgstr "Fournir un titre"
+msgid "Override breadcrumb"
+msgstr "Supplanter le fil d'Ariane"
+msgid "Provide breadcrumb"
+msgstr "Fournir un fil d'Ariane"
+msgid ""
+"Enter a breadcrumb name you would like to use. See \"Title\" for "
+"percent substitutions."
+msgstr ""
+"Saisissez un nom de fil d'Ariane que vous voulez utiliser. Voir "
+"\"Titre\" pour les substitutions de pourcentage."
+msgid "Specify validation criteria"
+msgstr "Spécifier le critère de validation"
+msgid "Action to take if filter value does not validate"
+msgstr "Action à mener si la valeur du filtre ne passe pas la validation"
+msgid "Display all results for the specified field"
+msgstr "Afficher tous les résultats pour le champ spécifié"
+msgid "Provide default value"
+msgstr "Fournir une valeur par défaut"
+msgid "Show \"Page not found\""
+msgstr "Afficher \"Page non trouvée\""
+msgid "Display a summary"
+msgstr "Afficher un résumé"
+msgid "Display contents of \"No results found\""
+msgstr "Afficher le contenu de \"Aucun résultat trouvé\""
+msgid "Skip default argument for view URL"
+msgstr "Ignorer l'argument par défaut pour l'URL de la vue"
+msgid ""
+"Select whether to include this default argument when constructing the "
+"URL for this view. Skipping default arguments is useful e.g. in the "
+"case of feeds."
+msgstr ""
+"Déterminer l'inclusion ou non de cet argument par défaut lors de la "
+"construction de l'URL pour cette vue. Ignorer les arguments par "
+"défaut se révèle utile par exemple pour les flux."
+msgid "Number of records"
+msgstr "Nombre d'enregistrements"
+msgctxt "Sort order"
+msgid "Default sort"
+msgstr "Tri par défaut"
+msgctxt "Sort order"
+msgid "Date"
+msgstr "Date"
+msgctxt "Sort order"
+msgid "Numerical"
+msgstr "Numérique"
+msgid ""
+"If selected, users can enter multiple values in the form of 1+2+3 (for "
+"OR) or 1,2,3 (for AND)."
+msgstr ""
+"Si sélectionné, les utilisateurs peuvent saisir plusieurs valeurs "
+"sous la forme 1+2+3 (pour OR) ou 1,2,3 (pour AND)."
+msgid ""
+"If selected, multiple instances of this filter can work together, as "
+"though multiple values were supplied to the same filter. This setting "
+"is not compatible with the \"Reduce duplicates\" setting."
+msgstr ""
+"Si sélectionné, plusieurs instances de ce filtre peuvent collaborer, "
+"comme si plusieurs valeurs étaient fournies au même filtre. Ce "
+"paramètre n'est pas compatible avec le paramètre \"Réduire les "
+"doublons\"."
+msgid ""
+"If selected, the numbers entered for the filter will be excluded "
+"rather than limiting the view."
+msgstr ""
+"Si sélectionné, les nombres saisis pour le filtre seront exclus au "
+"lieu de limiter la vue."
+msgid ""
+"Glossary mode applies a limit to the number of characters used in the "
+"filter value, which allows the summary view to act as a glossary."
+msgstr ""
+"Le mode glossaire applique une limite au nombre de caractères "
+"utilisés dans la valeur du filtre, ce qui permet à la vue résumée "
+"de se comporter comme un glossaire."
+msgid ""
+"How many characters of the filter value to filter against. If set to "
+"1, all fields starting with the first letter in the filter value would "
+"be matched."
+msgstr ""
+"Sur combien de caractères de la valeur du filtre appliquer le filtre. "
+"Si défini à 1, tous les champs commençant par la première lettre "
+"de la valeur du filtre correspondront."
+msgid ""
+"When printing the title and summary, how to transform the case of the "
+"filter value."
+msgstr ""
+"Lors de l'affichage du titre et du résumé, comment transformer la "
+"casse de la valeur du filtre."
+msgid ""
+"When printing url paths, how to transform the case of the filter "
+"value. Do not use this unless with Postgres as it uses case sensitive "
+"comparisons."
+msgstr ""
+"Lors de l'affichage des chemins URL, comment transformer la casse de "
+"la valeur du filtre. À n'utiliser qu'avec Postgres, qui utilise des "
+"comparaisons sensibles à la casse."
+msgctxt "Sort order"
+msgid "Alphabetical"
+msgstr "Alphabétique"
+msgid "Create a label"
+msgstr "Créer une étiquette"
+msgid "Enable to create a label for this field."
+msgstr "Permettre de créer une étiquette pour ce champ."
+msgid ""
+"Enable to load this field as hidden. Often used to group fields, or to "
+"use as token in another field."
+msgstr ""
+"Activer pour charger ce champ comme caché. Souvent utilisé pour "
+"grouper des champs, ou utilisé comme jeton dans un autre champ."
+msgid "Choose the HTML element to wrap around this field, e.g. H1, H2, etc."
+msgstr "Choisir l'élément HTML enveloppant ce champ, par ex. h1, h2, etc."
+msgid "Create a CSS class"
+msgstr "Créer une classe CSS"
+msgid "Choose the HTML element to wrap around this label, e.g. H1, H2, etc."
+msgstr ""
+"Choisir l'élément HTML enveloppant cette étiquette, par ex. h1, h2, "
+"etc."
+msgid "Rewrite results"
+msgstr "Réécrire les résultats"
+msgid ""
+"Enable to override the output of this field with custom text or "
+"replacement tokens."
+msgstr ""
+"Permettre de supplanter la sortie de ce champ avec du texte "
+"personnalisé ou des jetons (<em>tokens</em>) de substitution."
+msgid "Replace spaces with dashes"
+msgstr "Remplacer les espaces par des tirets"
+msgid "External server URL"
+msgstr "URL du serveur externe"
+msgid ""
+"Links to an external server using a full URL: e.g. "
+"'http://www.example.com' or 'www.example.com'."
+msgstr ""
+"Pointe vers un serveur externe avec une URL complète : ex. "
+"'http://www.example.com' ou 'www.example.com'."
+msgid "Enable to trim the field to a maximum length of characters"
+msgstr "Activer pour réduire le champ à une longueur maximum de caractères."
+msgid "Convert newlines to HTML &lt;br&gt; tags"
+msgstr "Convertir les sauts de ligne en balises HTML &lt;br&gt;"
+msgid ""
+"If checked, all newlines chars (e.g. \\n"
+") are converted into HTML &lt;br&gt; tags."
+msgstr ""
+"Si coché, tous les caractères de saut de ligne (ex. \\n"
+") sont convertis en balises HTML &lt;br&gt;."
+msgid "No results text"
+msgstr "Texte en l'absence de résultats"
+msgid ""
+"Enable to display the \"no results text\" if the field contains the "
+"number 0."
+msgstr ""
+"Permet d'afficher le \"texte en l'absence de résultats\" si le champ "
+"contient le nombre 0."
+msgid "Time hence"
+msgstr "Temps relatif"
+msgid "Time hence (with \"hence\" appended)"
+msgstr "Temps relatif (avec \"d'ici/dans\" ajouté)"
+msgid "Time span (future dates have \"-\" prepended)"
+msgstr "Durée (les dates futures ont un \"-\" en préfixe)"
+msgid "Time span (past dates have \"-\" prepended)"
+msgstr "Durée (les dates passées ont un \"-\" en préfixe)"
+msgid ""
+"How should the serialized data be displayed. You can choose a custom "
+"array/object key or a print_r on the full output."
+msgstr ""
+"Comment devrait être affichées les données sérialisées. Vous "
+"pouvez choisir une clé de tableau/objet personnalisée ou un print_r "
+"sur la totalité des données."
+msgid "Full data (unserialized)"
+msgstr "Données complètes (non sérialisées)"
+msgid "Full data (serialized)"
+msgstr "Données complètes (sérialisées)"
+msgid "A certain key"
+msgstr "Une certaine clé"
+msgid "Which key should be displayed"
+msgstr "Quelle clé doit être affichée"
+msgid "You have to enter a key if you want to display a key of the data."
+msgstr ""
+"Vous devez saisir une clé si vous souhaitez afficher une clé pour la "
+"donnée."
+msgid "How many different units to display in the string."
+msgstr "Combien d'unités différentes doivent s'afficher dans la chaîne."
+msgid "This filter is not exposed. Expose it to allow the users to change it."
+msgstr ""
+"Le filtre n'est pas exposé. Exposez-le pour permettre aux "
+"utilisateurs de le modifier."
+msgid "Expose filter"
+msgstr "Exposer le filtre"
+msgid ""
+"This filter is exposed. If you hide it, users will not be able to "
+"change it."
+msgstr ""
+"Le filtre est exposé. Si vous le masquez, les utilisateurs ne "
+"pourront pas le modifier."
+msgid "Hide filter"
+msgstr "Masquer le filtre"
+msgid "Expose operator"
+msgstr "Exposer l'opérateur"
+msgid "Allow the user to choose the operator."
+msgstr "Permettre à l'utilisateur de choisir l'opérateur."
+msgid "Allow multiple selections"
+msgstr "Permettre plusieurs sélections"
+msgid "Enable to allow users to select multiple items."
+msgstr "Permettre à l'utilisateur de sélectionner plusieurs éléments."
+msgid "Remember the last selection"
+msgstr "Se rappeler de la dernière sélection"
+msgid "Enable to remember the last selection made by the user."
+msgstr ""
+"Activer pour mémoriser la dernière sélection effectuée par "
+"l'utilisateur."
+msgid "You must select a value unless this is an non-required exposed filter."
+msgstr ""
+"Vous devez sélectionner une valeur, à moins que ceci ne soit un "
+"filtre exposé non requis."
+msgid "Enable to hide items that do not contain this relationship"
+msgstr "Permet de masquer les éléments qui ne comportent pas cette relation"
+msgid "This sort is not exposed. Expose it to allow the users to change it."
+msgstr ""
+"Ce tri n'est pas exposé. Exposez-le pour permettre aux utilisateurs "
+"de le modifier."
+msgid "Expose sort"
+msgstr "Exposer le tri"
+msgid ""
+"This sort is exposed. If you hide it, users will not be able to change "
+"it."
+msgstr ""
+"Ce tri est exposé. Si vous le masquez, les utilisateurs ne pourront "
+"pas le modifier."
+msgid "Hide sort"
+msgstr "Masquer le tri"
+msgid "Provide description"
+msgstr "Fournir une description"
+msgid "Save & exit"
+msgstr "Sauver & quitter"
+msgid "Continue & edit"
+msgstr "Continuer & modifier"
+msgid "Update \"@title\" choice"
+msgstr "Mettre à jour le choix \"@title\""
+msgid "Update \"@title\" choice (@number)"
+msgstr "Mettre à jour le choix \"@title\" (@number)"
+msgid "Your view was saved. You may edit it from the list below."
+msgstr ""
+"Votre vue a été enregistrée. Vous pouvez la modifier à partir de "
+"la liste ci-dessous."
+msgid "Database overriding code"
+msgstr "Configuration en base de données supplantant le code"
+msgid ""
+"* All changes are stored temporarily. Click Save to make your changes "
+"permanent. Click Cancel to discard the view."
+msgstr ""
+"* Les changements ne sont stockés que temporairement. Cliquez sur "
+"Enregistrer pour les rendre permanents. Cliquez sur Annuler pour les "
+"rejeter."
+msgid ""
+"* All changes are stored temporarily. Click Save to make your changes "
+"permanent. Click Cancel to discard your changes."
+msgstr ""
+"* Les changements ne sont stockés que temporairement. Cliquez sur "
+"Enregistrer pour les rendre permanents. Cliquez sur Annuler pour les "
+"rejeter."
+msgid "Modify the display(s) of your view below or add new displays."
+msgstr ""
+"Modifier le(s) affichage(s) de votre vue ci-dessous ou ajouter de "
+"nouveaux affichages."
+msgid "edit view name/description"
+msgstr "modifier le nom/la description de la vue"
+msgid "analyze view"
+msgstr "analyser la vue"
+msgid "clone view"
+msgstr "cloner la vue"
+msgid "export view"
+msgstr "exporter la vue"
+msgid "revert view"
+msgstr "rétablir la vue"
+msgid "delete view"
+msgstr "supprimer la vue"
+msgid "Add !display"
+msgstr "Ajouter !display"
+msgid "@display_title details"
+msgstr "Détails sur @display_title"
+msgid "Auto preview"
+msgstr "Aperçu automatique"
+msgid "Preview with contextual filters:"
+msgstr "Aperçu avec filtres contextuels :"
+msgid "Separate contextual filter values with a \"/\". For example, %example."
+msgstr ""
+"Séparer les filtres contextuels avec des \"/\". Par exemple, "
+"%example."
+msgid ":"
+msgstr ":"
+msgid "Apply and continue"
+msgstr "Appliquer et continuer"
+msgid "@current of @total"
+msgstr "@current sur @total"
+msgid "All displays (except overridden)"
+msgstr "Tous les affichages (sauf ceux supplantés)"
+msgid "All displays"
+msgstr "Tous les affichages"
+msgid "This @display_type (override)"
+msgstr "Ce(tte) @display_type (supplanter)"
+msgid "View name and description"
+msgstr "Nom et description de la vue"
+msgid "A descriptive human-readable name for this view. Spaces are allowed"
+msgstr "Un nom affiché décrivant cette vue. Les espaces sont autorisés."
+msgid "Create new filter group"
+msgstr "Créer un nouveau groupe de filtres"
+msgid "No filters have been added."
+msgstr "Aucun filtre n'a été ajouté."
+msgid "Drag to add filters."
+msgstr "Faire glisser pour ajouter des filtres."
+msgid "Add and configure @types"
+msgstr "Ajouter et configurer @types"
+msgid "Configure @type: @item"
+msgstr "Configurer @type : @item"
+msgid "Show filters on the list of views"
+msgstr "Afficher les filtres sur la liste des vues"
+msgid "Show advanced help warning"
+msgstr "Montrer le message d'alerte de l'aide avancée"
+msgid "Always show the master display"
+msgstr "Toujours montrer l'affichage maître"
+msgid ""
+"Advanced users of views may choose to see the master (i.e. default) "
+"display."
+msgstr ""
+"Les utilisateurs avancés des vues peuvent choisir de voir l'affichage "
+"maître (i.e. par défaut)."
+msgid "Always show advanced display settings"
+msgstr "Toujours montrer les paramètres avancés d'affichage"
+msgid ""
+"Default to showing advanced display settings, such as relationships "
+"and contextual filters."
+msgstr ""
+"Par défaut, montre les paramètres avancés d'affichage tels que les "
+"relations et les filtres contextuels."
+msgid "Label for \"Any\" value on non-required single-select exposed filters"
+msgstr ""
+"Étiquette pour la valeur \"Tout\" sur les listes déroulantes simples "
+"non-requises dans les filtres exposés"
+msgid "Live preview settings"
+msgstr "Paramètres de l'aperçu en temps réel"
+msgid "Automatically update preview on changes"
+msgstr ""
+"Automatiquement mettre à jour la prévisualisation lors de "
+"changements"
+msgid "Show information and statistics about the view during live preview"
+msgstr ""
+"Montrer les informations et statistiques de la vue pendant la "
+"prévisualisation en direct"
+msgid "Above the preview"
+msgstr "Au-dessus de la prévisualisation"
+msgid "Below the preview"
+msgstr "Sous la prévisualisation"
+msgid "Show the SQL query"
+msgstr "Montrer la requête SQL"
+msgid "Show performance statistics"
+msgstr "Montrer les statistiques de performance"
+msgid "Disable JavaScript with Views"
+msgstr "Désactiver le JavaScript de Views"
+msgid ""
+"If you are having problems with the JavaScript, you can disable it "
+"here. The Views UI should degrade and still be usable without "
+"javascript; it's just not as good."
+msgstr ""
+"Si vous avez des problèmes avec JavaScript, vous pouvez le "
+"désactiver ici. L'interface utilisateur de Views devrait se dégrader "
+"et rester utilisable sans javascript ; ce n'est juste pas aussi bon."
+msgid "Master"
+msgstr "Maître"
+msgid "There are no templates available."
+msgstr "Il n'y a aucun gabarit disponible."
+msgid "Display"
+msgid_plural "Displays"
+msgstr[0] "Affichage"
+msgstr[1] "Affichages"
+msgid "Unformatted list"
+msgstr "Liste non mise en forme"
+msgid "HTML list"
+msgstr "Liste HTML"
+msgid "Contextual filters"
+msgstr "Filtres contextuels"
+msgid "contextual filters"
+msgstr "filtres contextuels"
+msgid "Contextual filter"
+msgstr "Filtre contextuel"
+msgid "contextual filter"
+msgstr "filtre contextuel"
+msgid "filter criteria"
+msgstr "critères de filtre"
+msgid "Filter criterion"
+msgstr "Critère de filtrage"
+msgid "filter criterion"
+msgstr "critère de filtre"
+msgid "no results behavior"
+msgstr "comportement en l'absence de résultat"
+msgid "The content to which the comment is a reply to."
+msgstr "Le contenu auquel le commentaire fait référence."
+msgid "The node ID."
+msgstr "L'identifiant (ID) du nœud."
+msgid "The content title."
+msgstr "Le titre du contenu."
+msgid "The date the content was posted."
+msgstr "La date à laquelle le contenu a été publié."
+msgid "The date the content was last updated."
+msgstr "La date à laquelle le contenu a été mis à jour la dernière fois."
+msgid ""
+"The content type (for example, \"blog entry\", \"forum post\", "
+"\"story\", etc)."
+msgstr ""
+"Le type de contenu (par exemple, \"entrée de blog\", \"publication de "
+"forum\", \"histoire\", etc)."
+msgid "Whether or not the content is published."
+msgstr "Si le contenu doit être publié ou non."
+msgid "Filters out unpublished content if the current user cannot view it."
+msgstr ""
+"Élimine le contenu non-publié si l'utilisateur courant ne peut pas "
+"le voir."
+msgid "Whether or not the content is promoted to the front page."
+msgstr "Si le contenu doit être promu en page d'accueil ou non."
+msgid "Whether or not the content is sticky."
+msgstr "Si le contenu doit être épinglé en haut des listes ou non."
+msgid ""
+"Whether or not the content is sticky. To list sticky content first, "
+"set this to descending."
+msgstr ""
+"Si le contenu doit être épinglé en haut des listes ou non. Pour "
+"lister les contenu épinglés en premier, définissez ceci à "
+"décroissant."
+msgid "Provide a simple link to the content."
+msgstr "Fournir un lien vers le contenu."
+msgid "Provide a simple link to edit the content."
+msgstr "Fournir un lien pour modifier le contenu."
+msgid "Provide a simple link to delete the content."
+msgstr "Fournir un lien pour supprimer le contenu."
+msgid "The aliased path to this content."
+msgstr "L'alias de chemin de ce contenu."
+msgid "Relate content to the user who created it."
+msgstr "Relie le contenu à l'utilisateur qui l'a créé."
+msgid "User has a revision"
+msgstr "L'utilisateur a une révision"
+msgid "All nodes where a certain user has a revision"
+msgstr "Tous les nœuds où un certain utilisateur a une révision"
+msgid "Content revision"
+msgstr "Révision de contenu"
+msgid "Content revision is a history of changes to content."
+msgstr ""
+"La révision de contenu est un historique des modifications du "
+"contenu."
+msgid "Relate a content revision to the user who created the revision."
+msgstr "Lie une révision de contenu avec l'utilisateur qui l'a créée."
+msgid "The revision ID of the content revision."
+msgstr "L'identifiant (ID) de la révision du contenu."
+msgid "Get the actual content from a content revision."
+msgstr "Récupérer le contenu actuel depuis une révision de contenu."
+msgid "Provide a simple link to delete the content revision."
+msgstr "Fournir un lien pour supprimer la révision de contenu."
+msgid ""
+"Filter for content by view access. <strong>Not necessary if you are "
+"using node as your base table.</strong>"
+msgstr ""
+"Filtre le contenu si son accès est autorisé. <strong>Non nécessaire "
+"si vous utilisez \"node\" comme table de base.</strong>"
+msgid "Show a marker if the content is new or updated."
+msgstr "Afficher un marqueur si le contenu est nouveau ou mis à jour."
+msgid "Show only content that is new or updated."
+msgstr "Afficher uniquement les contenus nouveaux ou mis à jour."
+msgid "Display the content with standard node view."
+msgstr "Afficher le contenu avec une vue standard de nœud."
+msgid "Content ID from URL"
+msgstr "Identifiant (ID) du contenu à partir de l'URL"
+msgid ""
+"Content that is associated with this file, usually because this file "
+"is in a field on the content."
+msgstr ""
+"Un contenu qui est associé à ce fichier, généralement parce que ce "
+"fichier se trouve dans un champ du contenu."
+msgid "Module/Theme/Theme engine"
+msgstr "Module/Thème/Moteur de thème"
+msgid "Modules/Themes/Theme engines in your codebase."
+msgstr "Modules/Thèmes/Moteurs de thème dans votre code source."
+msgid "Module/Theme/Theme engine filename"
+msgstr "Nom de fichier du Module/Thème/Moteur de thème"
+msgid "Module/Theme/Theme engine name"
+msgstr "Nom du Module/Thème/Moteur de thème"
+msgid ""
+"Allows the \"depth\" for Taxonomy: Term ID (with depth) to be modified "
+"via an additional contextual filter value."
+msgstr ""
+"Permet à la \"profondeur\" de Taxonomie : Identifiant de terme (avec "
+"profondeur) d'être modifiée par une valeur de filtre contextuel "
+"supplémentaire."
+msgid ""
+"Content that is either untranslated or is the original version of a "
+"translation set."
+msgstr ""
+"Contenu qui est soit non traduit ou qui est la version originale d'un "
+"jeu de traduction."
+msgid "Content that is a translation of a source translation."
+msgstr "Contenu qui est une traduction d'une source."
+msgid ""
+"The translation status of the content - whether or not the translation "
+"needs to be updated."
+msgstr ""
+"Le statut de la traduction du contenu - si la traduction doit être "
+"mise à jour."
+msgid "Content authored"
+msgstr "Contenu rédigé"
+msgid ""
+"Relate content to the user who created it. This relationship will "
+"create one record for each content item created by the user."
+msgstr ""
+"Lie le contenu à l'utilisateur qui l'a créé. Cette relation créera "
+"un résultat pour chaque élément de contenu créé par "
+"l'utilisateur."
+msgid "Provide a simple link to cancel the user."
+msgstr "Ajouter un lien pour bloquer l'utilisateur."
+msgid "Provide serialized data of the user"
+msgstr "Fournir les données sérialisées de l'utilisateur"
+msgid ""
+"Allow a contextual filter value to be ignored. The query will not be "
+"altered by this contextual filter value. Can be used when contextual "
+"filter values come from the URL, and a part of the URL needs to be "
+"ignored."
+msgstr ""
+"Permet à un filtre contextuel d'être ignoré. La requête ne sera "
+"pas modifiée par la valeur de ce filtre contextuel. Peut-être "
+"utilisé quand les valeurs de filtres contextuels proviennent d'une "
+"URL, et qu'une partie de cette URL doit être ignorée."
+msgid "View area"
+msgstr "Zone de vue"
+msgid "Insert a view inside an area."
+msgstr "Insérer une vue dans une zone."
+msgid "Enable to override this field's links."
+msgstr "Activer pour supplanter les liens du champ."
+msgid "Use field template"
+msgstr "Utiliser un gabarit de champ"
+msgid ""
+"If checked, field api classes will be added using field.tpl.php (or "
+"equivalent). This is not recommended unless your CSS depends upon "
+"these classes. If not checked, template will not be used."
+msgstr ""
+"Si coché, les classes de l'api de champ seront ajoutées en utilisant "
+"field.tpl.php (ou équivalent). Ceci n'est pas recommandé à moins "
+"que votre CSS dépende de ces classes. Si non coché, le gabarit "
+"(template) ne sera pas utilisé."
+msgid ""
+"Checking this option will cause the group Display Type and Separator "
+"values to be ignored."
+msgstr ""
+"Si cette option est choisie, le groupe Type d'affichage et le "
+"Séparateur seront ignorés."
+msgid "Multiple field settings"
+msgstr "Paramètres de champ multiple"
+msgid "Display all values in the same row"
+msgstr "Afficher toutes les valeurs dans la même ligne"
+msgid "Display @count value(s)"
+msgstr "Afficher @count valeur(s)"
+msgid "Raw @column"
+msgstr "@column brut(e)"
+msgid "Native language"
+msgstr "Langue native"
+msgid "If enabled, the native name of the language will be displayed"
+msgstr "Si activé, le nom natif de la langue sera affiché."
+msgid "Link this field to the original piece of content"
+msgstr "Lier ce champ à l'élément de contenu originel"
+msgid ""
+"Enable this option to output an absolute link. Required if you want to "
+"use the path as a link destination (as in \"output this field as a "
+"link\" above)."
+msgstr ""
+"Activer cette option pour afficher un lien absolu. Requis si vous "
+"voulez utiliser le chemin comme une destination de lien (comme dans "
+"\"afficher ce champ en tant que lien\" ci-dessus)."
+msgid "Link this field to its content revision"
+msgstr "Lie ce champ à sa révision de contenu"
+msgid "Display field as the content type machine name."
+msgstr "Afficher le champ comme nom machine du type de contenu."
+msgid "Choose one or more content types to validate with."
+msgstr "Choisir un ou plusieurs types de contenu à valider."
+msgid "Validate user has access to the content"
+msgstr "Valider que l'utilisateur a accès au contenu"
+msgid "Access operation to check"
+msgstr "Fonction d'accès à vérifier"
+msgid "Filter value format"
+msgstr "Filtrer le format de valeur"
+msgid "Display comments"
+msgstr "Afficher les commentaires"
+msgid ""
+"Pick an alternative default table sort field to use when the search "
+"score field is unavailable."
+msgstr ""
+"Choisissez un champ de tri par défaut alternatif à utiliser quand le "
+"score de la recherche est indisponible."
+msgid ""
+"If selected, users can enter multiple values in the form of 1+2+3. Due "
+"to the number of JOINs it would require, AND will be treated as OR "
+"with this filter."
+msgstr ""
+"Si sélectionné, les utilisateurs peuvent entrer plusieurs valeurs "
+"sous la forme 1+2+3. A cause du nombre de JOIN que cela demanderait, "
+"AND sera traité comme OR avec ce filtre."
+msgid "Load default filter from term page"
+msgstr "Charger le filtre par défaut depuis la page du terme"
+msgid "Filter value type"
+msgstr "Filtrer le type de valeur"
+msgid ""
+"Select the form of this filter value; if using term name, it is "
+"generally more efficient to convert it to a term ID and use Taxonomy: "
+"Term ID rather than Taxonomy: Term Name\" as the filter."
+msgstr ""
+"Sélectionner la forme de cette valeur de filtre ; si vous utilisez le "
+"nom de terme, il est généralement plus efficace de le convertir en "
+"identifiant (ID) de terme et d'utiliser Taxonomie : Identifiant (ID) "
+"de terme au lieu de Taxonomie : Nom du terme pour le filtre."
+msgid "Transform dashes in URL to spaces in term name filter values"
+msgstr ""
+"Transformer les tirets dans les URL en espaces dans les valeurs du "
+"filtre de nom de terme"
+msgid "Include untranslated content"
+msgstr "Inclure le contenu non traduit"
+msgid "Enable to display different text for anonymous users."
+msgstr ""
+"Activer l'affichage d'un texte différent pour les utilisateurs "
+"anonymes."
+msgid "Type of user filter value to allow"
+msgstr "Type de la valeur du filtre utilisateur à autoriser"
+msgid ""
+"Note: you do not have permission to modify this. If you change the "
+"default filter type, this setting will be lost and you will NOT be "
+"able to get it back."
+msgstr ""
+"Note : vous n'avez pas la permission de modifier ceci. Si vous "
+"modifiez le type de filtre par défaut, ce réglage sera perdu et vous "
+"NE pourrez PLUS faire marche arrière."
+msgid "PHP contextual filter code"
+msgstr "Code du filtre contextuel PHP"
+msgid "Change the way content is formatted."
+msgstr "Changer la mise en forme du contenu."
+msgid "Change settings for this format"
+msgstr "Modifier les paramètres de ce format"
+msgid "Change the way each row in the view is styled."
+msgstr "Modifier la façon dont chaque ligne dans cette vue est stylée."
+msgid "Hide attachments in summary"
+msgstr "Masquer les vues attachées dans le sommaire"
+msgid ""
+"Change whether or not to display attachments when displaying a "
+"contextual filter summary."
+msgstr ""
+"Modifier l'affichage ou non des attachements lorsqu'un résumé de "
+"filtre contextuel est affiché."
+msgid "Hide attachments when displaying a contextual filter summary"
+msgstr ""
+"Masquer les attachements lorsqu'un résumé de filtre contextuel est "
+"affiché."
+msgid ""
+"You may also adjust the !settings for the currently selected access "
+"restriction."
+msgstr ""
+"Vous pouvez également ajuster les !settings des restrictions d'accès "
+"actuellement sélectionnées."
+msgid ""
+"You may also adjust the !settings for the currently selected cache "
+"mechanism."
+msgstr ""
+"Vous pouvez également ajuster les !settings du mécanisme de cache "
+"actuellement sélectionné."
+msgid "You may also adjust the !settings for the currently selected style."
+msgstr ""
+"Vous pouvez également ajuster les !settings du style actuellement "
+"sélectionné."
+msgid ""
+"You may also adjust the !settings for the currently selected row "
+"style."
+msgstr ""
+"Vous pouvez également ajuster les !settings du style de ligne "
+"actuellement sélectionné."
+msgid "You may also adjust the !settings for the currently selected pager."
+msgstr ""
+"Vous pouvez également ajuster les !settings de la pagination "
+"actuellement sélectionnée."
+msgid "Attachment position"
+msgstr "Position de l'attachement"
+msgid ""
+"Should this display inherit its contextual filter values from the "
+"parent display to which it is attached?"
+msgstr ""
+"Cet affichage doit-il hériter des valeurs de filtre contextuel de "
+"l'affichage parent auquel il est rattaché ?"
+msgid "Block caching"
+msgstr "Mise en cache de bloc"
+msgid ""
+"This view will be displayed by visiting this path on your site. It is "
+"recommended that the path be something like \"path/%/%/feed\" or "
+"\"path/%/%/rss.xml\", putting one % in the path for each contextual "
+"filter you have defined in the view."
+msgstr ""
+"Cette vue sera affichée en visitant ce chemin dans votre site. Il est "
+"recommandé que le chemin soit quelque chose comme \"path/%/%/feed\" "
+"ou \"path/%/%/rss.xml\", en mettant un % dans le chemin pour chaque "
+"filtre contextuel que vous avez défini dans la vue."
+msgid ""
+"This view will be displayed by visiting this path on your site. You "
+"may use \"%\" in your URL to represent values that will be used for "
+"contextual filters: For example, \"node/%/feed\"."
+msgstr ""
+"Cette vue sera affichée en visitant ce chemin sur votre site. Vous "
+"pouvez utiliser \"%\" dans votre URL pour représenter des valeurs qui "
+"seront utilisées dans les filtres contextuels : par exemple, "
+"\"node/%/feed\"."
+msgid ""
+"Display @display is set to use a menu but the menu link text is not "
+"set."
+msgstr ""
+"L'affichage @display est paramétré pour utiliser un menu mais le "
+"texte du lien de menu n'est pas défini."
+msgid ""
+"Display @display is set to use a parent menu but the parent menu link "
+"text is not set."
+msgstr ""
+"L'affichage @display est paramétré pour utiliser un menu parent mais "
+"le texte du lien du menu parent n'est pas défini."
+msgid "@count item, skip @skip"
+msgid_plural "Paged, @count items, skip @skip"
+msgstr[0] "@count élément, en passer @skip"
+msgstr[1] "Avec pagination, @count éléments, en passer @skip"
+msgid "@count item"
+msgid_plural "Paged, @count items"
+msgstr[0] "@count élément"
+msgstr[1] "Avec pagination, @count éléments"
+msgid ""
+"Disabling SQL rewriting will disable node_access checks as well as "
+"other modules that implement hook_query_alter()."
+msgstr ""
+"La désactivation de la réécriture SQL désactivera les contrôles "
+"de node_access ainsi que tous ceux des autres modules qui "
+"implémentent hook_query_alter()."
+msgid ""
+"If you disable this option, a grid with only one row will have the "
+"same number of table cells (<TD>) as items. Disabling it can cause "
+"problems with your CSS."
+msgstr ""
+"Si vous désactivez cette option, une grille d'une seule ligne aura le "
+"même nombre de cellules de tableau (&lt;TD&gt;) que le nombre "
+"d'éléments. Sa désactivation pourrait causer des problèmes avec "
+"votre CSS."
+msgid ""
+"If checked, the current contextual filter value will be displayed as "
+"the default option in the jump menu, if applicable."
+msgstr ""
+"Si coché, la valeur actuelle du filtre contextuel sera affichée "
+"comme option par défaut dans le menu de saut, si possible."
+msgid ""
+"Per default the table is hidden for an empty view. With this option it "
+"is posible to show an empty table with the text in it."
+msgstr ""
+"Par défaut le tableau est masqué dans une vue vide. Avec cette "
+"option, il est possible d'afficher un tableau vide avec le texte "
+"dedans."
+msgid "All storage"
+msgstr "Tous les stockages"
+msgid "All status"
+msgstr "Tous les statuts"
+msgid "No tags"
+msgstr "Aucune étiquette"
+msgid "No views match the search criteria."
+msgstr "Aucune vue ne correspond aux critères de la recherche."
+msgid "Create view from template @template"
+msgstr "Créer une vue à partir du gabarit @template"
+msgid "Clone of"
+msgid_plural "Clone @count of"
+msgstr[0] "Clone de"
+msgstr[1] "Clone @count de"
+msgid ""
+"This action will permanently remove any customizations made to this "
+"view."
+msgstr ""
+"Cette action retirera définitivement toute personnalisation "
+"effectuée dans cette vue."
+msgid "The view has been reverted."
+msgstr "La vue a été rétablie."
+msgid "This action will permanently remove the view from your database."
+msgstr ""
+"Cette action supprimera définitivement cette vue de votre base de "
+"données."
+msgid "Create a page"
+msgstr "Créer une page"
+msgid "Create a menu link"
+msgstr "Créer un lien de menu"
+msgid "Include an RSS feed"
+msgstr "Inclure un flux RSS"
+msgid "Feed path"
+msgstr "Chemin du flux"
+msgid "Feed row style"
+msgstr "Style de ligne du flux"
+msgid "Create a block"
+msgstr "Créer un bloc"
+msgid "of fields"
+msgstr "de champs"
+msgid "of type"
+msgstr "de type"
+msgid "tagged with"
+msgstr "étiquetté avec"
+msgid "Attempted to create_view with values that have not been validated"
+msgstr ""
+"Tentative de créer une vue avec des valeurs qui n'ont pas été "
+"validées"
+msgid "Should links be displayed below each comment"
+msgstr "Les liens doivent-ils être affichés sous chaque commentaire"
+msgid "with links (allow users to reply to the comment, etc.)"
+msgstr ""
+"avec liens (permet aux utilisateurs de répondre à un commentaire, "
+"etc.)"
+msgid "without links"
+msgstr "sans liens"
+msgid "teasers"
+msgstr "résumés"
+msgid "full posts"
+msgstr "publications complètes"
+msgid "titles"
+msgstr "titres"
+msgid "titles (linked)"
+msgstr "titres (liés)"
+msgid "Should links be displayed below each node"
+msgstr "Les liens doivent-ils être affichés sous chaque nœud"
+msgid "with links (allow users to add comments, etc.)"
+msgstr ""
+"avec des liens (permet aux utilisateurs d'ajouter des commentaires, "
+"etc.)"
+msgid "Should comments be displayed below each node"
+msgstr "Les commentaires doivent-ils être affichés sous chaque nœud"
+msgid "Number of hits"
+msgstr "Nombre de visites"
+msgid "Hide view"
+msgstr "Cacher la vue"
+msgid "@group (historical data)"
+msgstr "@group (données historiques)"
+msgid "Use path alias"
+msgstr "Utiliser l'alias de chemin"
+msgid "Unsorted"
+msgstr "Non ordonné"
+msgid "Aggregation type"
+msgstr "Type d'agrégation"
+msgid "Use replacement tokens from the first row"
+msgstr "Utiliser les jetons (tokens) de remplacement de la première ligne"
+msgid "Allow multiple filter values to work together"
+msgstr "Permettre à des valeurs de filtre multiples de fonctionner ensemble"
+msgid "Customize field HTML"
+msgstr "Personnaliser le code HTML du champ"
+msgid ""
+"You may use token substitutions from the rewriting section in this "
+"class."
+msgstr ""
+"Vous pouvez utiliser les substitutions de jetons (<em>tokens</em>) de "
+"la section \"Réécrire la sortie\" dans cette classe."
+msgid "Customize label HTML"
+msgstr "Personnaliser le code HTML de l'étiquette"
+msgid "Customize field and label wrapper HTML"
+msgstr "Personnaliser le code HTML de l'enveloppe du champ et de l'étiquette"
+msgid ""
+"Choose the HTML element to wrap around this field and label, e.g. H1, "
+"H2, etc. This may not be used if the field and label are not rendered "
+"together, such as with a table."
+msgstr ""
+"Choisir l'élément HTML pour envelopper ce champ et son étiquette, "
+"ex : H1, H2, etc. Ceci peut ne pas être pris en compte si le champ et "
+"son étiquette ne sont pas rendus ensemble, tel que dans un tableau."
+msgid "Remove whitespace"
+msgstr "Retirer les espaces"
+msgid ""
+"If checked, all whitespaces at the beginning and the end of the output "
+"will be removed."
+msgstr ""
+"Si coché, tous les espaces au début et à la fin du contenu seront "
+"retirés."
+msgid "Hide rewriting if empty"
+msgstr "Masquer la réécriture si vide"
+msgid "Do not display rewritten content if this field is empty."
+msgstr "Ne pas afficher le contenu réécrit si le champ est vide."
+msgid "Thousands marker"
+msgstr "Séparateur de milliers"
+msgid "Expose this filter to visitors, to allow them to change it"
+msgstr "Exposer ce filtre aux visiteurs, pour leur permettre de le modifier"
+msgid "Representative sort order"
+msgstr "Ordre du tri représentatif"
+msgid "Subquery namespace"
+msgstr "Espace de nom (<em>namespace</em>) de la sous-requête"
+msgid ""
+"Advanced. Enter a namespace for the subquery used by this "
+"relationship."
+msgstr ""
+"Avancé. Saisissez un espace de nom pour la sous-requête utilisée "
+"par cette relation."
+msgid "Representative view"
+msgstr "Vue représentative"
+msgid ""
+"Advanced. Use another view to generate the relationship subquery. This "
+"allows you to use filtering and more than one sort. If you pick a view "
+"here, the sort options above are ignored. Your view must have the ID "
+"of its base as its only field, and should have some kind of sorting."
+msgstr ""
+"Avancé. Utiliser une autre vue pour générer la sous-requête de "
+"relation. Ceci vous permet d'utiliser des filtres et plus d'un tri. Si "
+"vous choisissez une vue ici, les options de tri ci-dessus seront "
+"ignorées. Votre vue doit avoir l'identifiant (ID) de sa base comme "
+"seul champ, et devrait avoir un tri."
+msgid "Generate subquery each time view is run."
+msgstr "Générer la sous-requête à chaque fois que la vue est exécutée."
+msgid ""
+"Will re-generate the subquery for this relationship every time the "
+"view is run, instead of only when these options are saved. Use for "
+"testing if you are making changes elsewhere. WARNING: seriously "
+"impairs performance."
+msgstr ""
+"Re-générera la sous-requête pour cette relation à chaque fois que "
+"la vue est exécutée, au lieu de seulement quand ces options sont "
+"enregistrées. Utilisez ceci pour tester si vous faites des "
+"modifications autre part. AVERTISSEMENT : détériore sérieusement "
+"les performances."
+msgid "Expose this sort to visitors, to allow them to change it"
+msgstr "Exposer ce tri aux visiteurs, pour leur permettre de le modifier"
+msgid "This display is disabled."
+msgstr "L'affichage est désactivé."
+msgid ""
+"This view has been automatically updated to fix missing relationships. "
+"While this View should continue to work, you should verify that the "
+"automatic updates are correct and save this view."
+msgstr ""
+"Cette vue a été automatiquement mise à jour pour réparer les "
+"relations manquantes. Même si cette vue devrait continuer à "
+"fonctionner, vous devriez vérifier que les mises à jour automatiques "
+"sont correctes et enregistrer cette vue."
+msgid "reorder displays"
+msgstr "réorganiser les affichages"
+msgid ""
+"Error: Display @display refers to a plugin named '@plugin', but that "
+"plugin is not available."
+msgstr ""
+"Erreur : L'affichage @display fait référence à un plugin '@plugin', "
+"mais ce plugin n'est pas disponible."
+msgid "enable @display_title"
+msgstr "activer @display_title"
+msgid "view @display"
+msgstr "voir @display"
+msgid "clone @display_title"
+msgstr "cloner @display_title"
+msgid "delete @display_title"
+msgstr "supprimer @display_title"
+msgid "disable @display_title"
+msgstr "désactiver @display_title"
+msgid "undo delete of @display_title"
+msgstr "annuler la suppression de @display_title"
+msgid ""
+"That view is not compatible with this version of Views.\n"
+"      If you have a view from views1 you have to go to a drupal6 "
+"installation and import it there."
+msgstr ""
+"Cette vue n'est pas compatible avec cette version de Views.\r\n"
+"    Si vous avez une views de Views1 vous devez utiliser une "
+"installation de Drupal 6 et l'importer dedans."
+msgid "The selected style or row format does not utilize fields."
+msgstr "Le style ou le format de ligne sélectionné n'utilise pas de champs."
+msgid "Aggregation settings"
+msgstr "Paramètres d'agrégation"
+msgid "Display extenders"
+msgstr "Afficher les extensions"
+msgid "Select extensions of the views interface."
+msgstr "Sélectionner les extensions de l'interface de Views."
+msgid ""
+"You have configured display %display with a path which is an path "
+"alias as well. This might lead to unwanted effects so better use an "
+"internal path."
+msgstr ""
+"Vous avez configuré l'affichage %display avec un chemin qui est aussi "
+"un chemin d'alias. Ceci peut produire des effets indésirables, vous "
+"devriez utiliser un chemin interne."
+msgid "Configure aggregation settings for @type %item"
+msgstr "Configurer les paramètres d'agrégation pour @type %item"
+msgid "Select the aggregation function to use on this field."
+msgstr "Sélectionnez la fonction d'agrégation à utiliser sur ce champ."
+msgid "Ensure my table called but query has no ensure_table method."
+msgstr ""
+"Fonction \"Ensure my table\" appelée mais la requête n'a pas de "
+"méthode ensure_table."
+msgid "Empty display extender"
+msgstr "Extension d'affichage vide"
+msgid "Raw value from URL"
+msgstr "Valeur brute à partir de l'URL"
+msgid "Apply (all displays)"
+msgstr "Appliquer (tous les affichages)"
+msgid "Apply (this display)"
+msgstr "Appliquer (cet affichage)"
+msgid "The date of the most recent new content on the feed."
+msgstr "La date du contenu le plus récent du flux."
+msgid "The node ID to which the comment is a reply to."
+msgstr "L'identifiant (ID) du nœud auquel le commentaire répond."
+msgid "Comments of the node"
+msgstr "Commentaires du nœud"
+msgid ""
+"Relate all comments on the node. This will create 1 duplicate record "
+"for every comment. Usually if you need this it is better to create a "
+"comment view."
+msgstr ""
+"Relie tous les commentaires du nœud. Ceci créera un doublon pour "
+"chaque commentaire. D'habitude si vous avez besoin de ceci, il est "
+"mieux de créer une vue de commentaires."
+msgid "Reply to"
+msgstr "Répondre"
+msgid " new"
+msgstr " nouveau"
+msgid "Appears in: @bundles."
+msgstr "Apparaît dans : @bundles."
+msgid "This is an alias of @group: @field."
+msgstr "Ceci est un alias de @group : @field."
+msgid "@group: @field"
+msgstr "@group : @field"
+msgid "@group (historical data): @field"
+msgstr "@group (données historiques) : @field"
+msgid "Also known as: !also."
+msgstr "Aussi connue comme : \"!also\""
+msgid "@label (!name:!column)"
+msgstr "@label (!name:!column)"
+msgid "@label:!column"
+msgstr "@label:!column"
+msgid "@label (!name:delta)"
+msgstr "@label (!name:delta)"
+msgid "@label:delta"
+msgstr "@label:delta"
+msgid "Delta - Appears in: @bundles."
+msgstr "Delta - Apparaît dans : @bundles."
+msgid "No backlinks found."
+msgstr "Aucun lien entrant (backlink) trouvé."
+msgid "Pages that link to %1"
+msgstr "Pages qui pointent vers %1"
+msgid "Popular (page)"
+msgstr "Populaire (page)"
+msgid "Today (page)"
+msgstr "Aujourd'hui (page)"
+msgid "Popular (block)"
+msgstr "Populaire (bloc)"
+msgid "Today (block)"
+msgstr "Aujourd'hui (bloc)"
+msgid "Today's popular content"
+msgstr "Contenu populaire aujourd'hui"
+msgid "User who uploaded"
+msgstr "Utilisateur ayant transféré"
+msgid "The user that uploaded the file."
+msgstr "L'utilisateur qui a transféré le fichier."
+msgid "The taxonomy vocabulary description"
+msgstr "La description du vocabulaire de taxonomie"
+msgid "Taxonomy term chosen from autocomplete or select widget."
+msgstr ""
+"Terme de taxonomie choisi depuis le widget d'autocomplétion ou de "
+"sélection."
+msgid "Representative node"
+msgstr "Nœud représentatif"
+msgid ""
+"Obtains a single representative node for each term, according to a "
+"chosen sort criterion."
+msgstr ""
+"Récupère un nœud représentatif unique pour chaque terme, selon le "
+"critère de sélection choisi."
+msgid "The taxonomy term name."
+msgstr "Le nom du terme de taxonomie."
+msgid "Content with term"
+msgstr "Contenu avec terme"
+msgid "Relate all content tagged with a term."
+msgstr "Relie tous les contenus étiquetté par un terme."
+msgid "Has taxonomy term ID"
+msgstr "Possède un identifiant (ID) de terme de taxonomie"
+msgid "Display content if it has the selected taxonomy terms."
+msgstr ""
+"Affiche le contenu s'il possède les termes de taxonomie "
+"sélectionnés."
+msgid "Has taxonomy term"
+msgstr "Possède un terme de la taxonomie"
+msgid "Taxonomy terms on node"
+msgstr "Termes de taxonomie du nœud"
+msgid "All taxonomy terms"
+msgstr "Tous les termes de taxonomie"
+msgid ""
+"Display content if it has the selected taxonomy terms, or children of "
+"the selected terms. Due to additional complexity, this has fewer "
+"options than the versions without depth."
+msgstr ""
+"Affiche le contenu s'il possède les termes de taxonomie "
+"sélectionnés ou des termes enfants de ceux-ci. En raison d'une "
+"complexité additionnelle, ce paramètre possède moins d'options que "
+"les versions sans profondeur."
+msgid "Has taxonomy term ID (with depth)"
+msgstr "Possède l'identifiant de terme de taxonomie (avec profondeur)"
+msgid "Has taxonomy terms (with depth)"
+msgstr "Possède les termes de taxonomie (avec profondeur)"
+msgid "Has taxonomy term ID depth modifier"
+msgstr ""
+"Possède l'identifiant du terme de taxonomie avec modification de "
+"profondeur"
+msgid "@entity using @field"
+msgstr "@entity utilisant @field"
+msgid "Relate each @entity with a @field set to the term."
+msgstr "Relier chaque @entity contenant un @field défini au terme."
+msgid "!field_name"
+msgstr "!field_name"
+msgid "Taxonomy term ID from URL"
+msgstr "Identifiant (ID) du terme de taxonomie à partir de l'URL"
+msgid ""
+"Obtains a single representative node for each user, according to a "
+"chosen sort criterion."
+msgstr ""
+"Récupère un nœud représentatif unique pour chaque utilisateur, "
+"selon le critère de sélection choisi."
+msgid ""
+"If checked, multiple values for this field will be shown in the same "
+"row. If not checked, each value in this field will create a new row. "
+"If using group by, please make sure to group by \"Entity ID\" for this "
+"setting to have any effect."
+msgstr ""
+"Si coché, les valeurs multiples de ce champ seront affichées sur une "
+"même ligne. Sinon, chaque valeur de ce champ sera visualisée sur une "
+"nouvelle ligne. Si \"groupé par\" est sélectionné, assurez-vous de "
+"grouper par \"Entity ID\" pour que ce paramètre ait l'effet désiré."
+msgid ""
+"Display an icon representing the file type, instead of the MIME text "
+"(such as \"image/jpeg\")"
+msgstr ""
+"Afficher une icône représentant le type de fichier, au lieu du texte "
+"MIME (tel que \"image/jpeg\")"
+msgid ""
+"Load default filter from node page, that's good for related taxonomy "
+"blocks"
+msgstr ""
+"Charge le filtre par défaut depuis la page de nœud, c'est utile pour "
+"les blocs de taxonomie associée."
+msgid "Path component"
+msgstr "Composant de chemin"
+msgid ""
+"The numbering starts from 1, e.g. on the page admin/structure/types, "
+"the 3rd path component is \"types\"."
+msgstr ""
+"Le numéro de séquence commence à 1, par exemple sur la page "
+"admin/structure/types, le 3ème composant est \"types\"."
+msgid "Use aggregation"
+msgstr "Utiliser l'agrégation"
+msgid "Display title may not be empty."
+msgstr "Le titre de l'affichage ne peut pas être vide."
+msgid "When the filter value is <em>NOT</em> available"
+msgstr "Quand la valeur de filtre <em>N'EST PAS</em> disponible"
+msgid "When the filter value <em>IS</em> available or a default is provided"
+msgstr ""
+"Quand la valeur de filtre <em>EST</em> disponible ou qu'une valeur par "
+"défaut est fournie"
+msgid ""
+"This display does not have a source for contextual filters, so no "
+"contextual filter value will be available unless you select 'Provide "
+"default'."
+msgstr ""
+"Cet affichage n'a pas de source pour les filtres contextuels, donc "
+"aucune valeur de filtre contextuel ne sera disponible à moins que "
+"vous sélectionniez 'Fournir la valeur par défaut'."
+msgid "The number of items to display. Enter 0 for no limit."
+msgstr "Le nombre d'éléments à afficher. Saisissez 0 pour ne pas limiter."
+msgid "The contextual filter values is provided by the URL."
+msgstr "Les valeurs de filtre contextuel sont fournies par l'URL."
+msgid "Autosubmit"
+msgstr "Soumettre automatiquement"
+msgid "Automatically submit the form once an element is changed."
+msgstr ""
+"Soumettre automatiquement le formulaire dès qu'un élément est "
+"modifié."
+msgid "Hide submit button if javascript is enabled."
+msgstr "Masquer le bouton de soumission si le javascript est activé."
+msgid "Query Comment"
+msgstr "Commentaire de requête"
+msgid ""
+"If set, this comment will be embedded in the query and passed to the "
+"SQL server. This can be helpful for logging or debugging."
+msgstr ""
+"Si défini, ce commentaire sera intégré dans la requête et transmis "
+"au serveur SQL. Ceci peut être utile pour la journalisation ou le "
+"débogage."
+msgid "When needed, add the field language condition to the query"
+msgstr "Si nécessaire, ajouter la condition de langue à la requête"
+msgid "Count DISTINCT"
+msgstr "Count DISTINCT"
+msgid "Provide default field wrapper elements"
+msgstr "Fournir les éléments par défaut des enveloppes de champs"
+msgid ""
+"Inline fields will be displayed next to each other rather than one "
+"after another. Note that some fields will ignore this if they are "
+"block elements, particularly body fields and other formatted HTML."
+msgstr ""
+"Les champs en ligne seront affichés les uns à côté des autres au "
+"lieu des uns au dessus des autres. Notez que certains champs "
+"ignoreront ceci si ce sont des éléments de bloc, en particulier les "
+"champs de corps et d'autres formatés en HTML."
+msgid "Hide the \"Go\" button"
+msgstr "Masquer le bouton \"Aller\""
+msgid "Select the current contextual filter value"
+msgstr "Sélectionner la valeur courante du filtre contextuel"
+msgid "Show the empty text in the table"
+msgstr "Afficher le texte vide dans le tableau"
+msgid "The field that is going to be used as the RSS item title for each row."
+msgstr ""
+"Le champ qui sera utilisé comme titre de l'élément du flux RSS pour "
+"chaque ligne."
+msgid ""
+"The field that is going to be used as the RSS item link for each row. "
+"This must be a drupal relative path."
+msgstr ""
+"Le champ qui sera utilisé comme lien de l'élément du flux RSS pour "
+"chaque ligne. Ceci doit être un chemin relatif de drupal."
+msgid ""
+"The field that is going to be used as the RSS item description for "
+"each row."
+msgstr ""
+"Le champ qui sera utilisé comme description de l'élément du flux "
+"RSS pour chaque ligne."
+msgid "Creator field"
+msgstr "Champ créateur"
+msgid ""
+"The field that is going to be used as the RSS item creator for each "
+"row."
+msgstr ""
+"Le champ qui sera utilisé comme créateur de l'élément du flux RSS "
+"pour chaque ligne."
+msgid "Publication date field"
+msgstr "Champ date de publication"
+msgid ""
+"Row style plugin requires specifying which views fields to use for RSS "
+"item."
+msgstr ""
+"Le plugin de style de ligne requiert de spécifier les champs de la "
+"vue à utiliser pour l'élément RSS."
+msgid ""
+"The node ID of the node a user created or commented on. You must use "
+"an argument or filter on UID or you will get misleading results using "
+"this field."
+msgstr ""
+"ID nœud d'un nœud créé ou commenté par un utilisateur.  "
+"L'utilisation d'un filtre ou de transmission sur l'UID est obligatoire "
+"sur UID sans quoi l'utilisation de ce champ risque de générer des "
+"résultats trompeurs."
+msgid ""
+"The user ID of a user who touched the node (either created or "
+"commented on it)."
+msgstr ""
+"L'identifiant (UID) de l'utilisateur qui a mis à jour le nœud (en le "
+"créant ou par un commentaire)."
+msgid ""
+"The date the node was last updated or commented on. You must use an "
+"argument or filter on UID or you will get misleading results using "
+"this field."
+msgstr ""
+"La dernière date à laquelle le nœud a été mis à jour ou "
+"commenté. Vous devez utiliser un argument ou filtrer sur l'UID ou "
+"vous obtiendrez des résultats trompeurs en utilisant ce champ."
+msgid "file from !field_name"
+msgstr "fichier de !field_name"
+msgid "Hide empty column"
+msgstr "Cacher les colonnes vides"
+msgid "The operator is invalid on filter: @filter."
+msgstr "L'opérateur est invalide sur le filtre : @filter."
+msgid "No valid values found on filter: @filter."
+msgstr "Aucune valeur valide trouvée sur le filtre : @filter."
+msgid "The value @value is not an array for @operator on filter: @filter"
+msgstr ""
+"La valeur @value n'est pas un tableau pour @operator sur le filtre : "
+"@filter"
+msgid ""
+"Enter PHP code that returns TRUE or FALSE. No return is the same as "
+"FALSE, so be SURE to return something if you do not want to declare "
+"the argument invalid. Do not use &lt;?php ?&gt;. The argument to "
+"validate will be \"$argument\" and the view will be \"$view\". You may "
+"change the argument by setting \"$handler->argument\". You may change "
+"the title used for substitutions for this argument by setting "
+"\"$handler->validated_title\"."
+msgstr ""
+"Saisir du code PHP qui retourne TRUE ou FALSE. Pas de retour est la "
+"même chose que FALSE, soyez donc SÛR de retourner quelque chose si "
+"vous ne souhaitez pas déclarer d'argument d'invalidité. Ne pas "
+"utiliser la balise<?php ?>. L'argument de validité sera \"$argument\" "
+"et la vue, \"$view\". Vous pouvez changer l'argument en définissant "
+"\"$handler->argument\". Vous pouvez changer le titre utilisé en "
+"substitution pour cet argument en définissant "
+"\"$handler->validated_title\"."
+msgid ""
+"If not checked, fields that are not configured to customize their HTML "
+"elements will get no wrappers at all for their field, label and field "
+"+ label wrappers. You can use this to quickly reduce the amount of "
+"markup the view provides by default, at the cost of making it more "
+"difficult to apply CSS."
+msgstr ""
+"Si non coché, les champs qui ne sont pas configurés pour "
+"personnaliser leur élément HTML n'obtiendront aucune enveloppe "
+"(wrapper) ni pour leur champ, ni pour leur étiquette ni pour le champ "
+"+ étiquette. Vous pouvez utiliser ceci pour rapidement réduire le "
+"nombre de balises que fournit la vue par défaut, au risque de rendre "
+"plus difficile l'application des CSS."
+msgid "Link the user picture to the user's profile"
+msgstr "Lié l'image de l'utilisateur à son profil"
+msgid "Specify which display or custom url this display will link to."
+msgstr ""
+"Préciser à quel affichage ou url personnalisée cet affichage sera "
+"lié."
+msgid "<p>The following tokens are available for this link.</p>"
+msgstr "<p>Les jetons (token) suivants sont disponibles pour ce lien.</p>"
+msgid ""
+"A Drupal path or external URL the more link will point to. Note that "
+"this will override the link display setting above."
+msgstr ""
+"Un chemin Drupal ou une URL externe vers lequel pointera le lien "
+"\"plus\". Noter que cela supplantera le paramètre d'affichage du lien "
+"ci-dessus."
+msgid "@view : @display"
+msgstr "@view : @display"
+msgid "View: @view - Display: @display"
+msgstr "Vue : @view - Affichage : @display"
+msgid "Overview of fields used in all views."
+msgstr "Vue d'ensemble des champs utilisés dans toutes les vues."
+msgid "Transform the case"
+msgstr "Changer la casse"
+msgid ""
+"When printing url paths, how to transform the case of the filter "
+"value."
+msgstr ""
+"A l'affichage des chemins d'url, comment changer la casse de la valeur "
+"du filtre."
+msgid ""
+"Edit the administrative label displayed when referencing this "
+"relationship from filters, etc."
+msgstr ""
+"Modifier l'étiquette d'administration affichée quand cette relation "
+"est utilisée dans des filtres, etc."
+msgid "Representative sort criteria"
+msgstr "Critères de tri représentatif"
+msgid ""
+"The sort criteria is applied to the data brought in by the "
+"relationship to determine how a representative item is obtained for "
+"each row. For example, to show the most recent node for each user, "
+"pick 'Content: Updated date'."
+msgstr ""
+"Le critère de tri est appliqué aux données raportées par la "
+"relation pour déterminer comment un élément représentatif est "
+"obtenu pour chaque ligne. Par exemple, pour montrer le nœud le plus "
+"récent pour chaque utilisateur, sélectionner 'Contenu : date de mise "
+"à jour'."
+msgid "The ordering to use for the sort criteria selected above."
+msgstr ""
+"L'ordre à utiliser pour les critères de tri sélectionnés plus "
+"haut."
+msgid "And/Or, Rearrange"
+msgstr "Et/Ou, Réarranger"
+msgid "Revert to default"
+msgstr "Rétablir par défaut"
+msgid ""
+"Optionally, enter a comma delimited list of tags for this view to use "
+"in filtering and sorting views on the administrative page."
+msgstr ""
+"Facultativement, saisir une virgule pour délimiter une liste de "
+"mots-clés pour cette vue à utiliser dans le filtrage et le tri des "
+"vues sur la page d'administration."
+msgid "Custom admin theme for the Views UI"
+msgstr "Thème de l'administration personnalisé pour l'UI de Views."
+msgid ""
+"In some cases you might want to select a different admin theme for the "
+"Views UI."
+msgstr ""
+"Dans certains cas, vous pourriez vouloir sélectionner un thème "
+"d'administration différent pour l'UI de Views."
+msgid "No fields have been used in views yet."
+msgstr "Aucun champ n'a été jusqu'à présent utilisé dans les vues."
+msgid "Provide a simple link to approve the comment."
+msgstr "Fournir un lien pour approuver le commentaire."
+msgid "Author uid"
+msgstr "uid de l'auteur"
+msgid "Relate each @entity with a @field set to the file."
+msgstr "Relier chaque @entity avec un ensemble @field au fichier."
+msgid "image from !field_name"
+msgstr "image de !field_name"
+msgid "Relate each @entity with a @field set to the image."
+msgstr "Relier chaque @entity avec un ensemble @field à l'image."
+msgid "The tid of a taxonomy term."
+msgstr "Le tid d'un terme de taxonomie"
+msgid "The user permissions."
+msgstr "Les droits utilisateur."
+msgid "First and last only"
+msgstr "Premier et dernier seulement"
+msgid "Multiple-value handling"
+msgstr "Gestion à valeur multiple."
+msgid "Filter to items that share all terms"
+msgstr "Filtrer par éléments qui partagent tous les termes"
+msgid "Filter to items that share any term"
+msgstr "Filtrer par éléments qui partagent n'importe quel terme"
+msgid "Use formatted username"
+msgstr "Utiliser un nom d'utilisateur formaté"
+msgid ""
+"If checked, the username will be formatted by the system. If "
+"unchecked, it will be displayed raw."
+msgstr ""
+"Si coché, le nom d'utilisateur sera formaté par le système. Sinon, "
+"il sera affiché tel quel."
+msgid "Link to user's profile"
+msgstr "Lien vers le profil de l'utilsateur"
+msgid ""
+"Using <em>Default</em> will use the site-wide image style for user "
+"pictures set in the <a href=\"!account-settings\">Account "
+"settings</a>."
+msgstr ""
+"Utiliser <em>Par défaut</em> utilisera le style des images des "
+"utilisateurs définit dans <a href=\"!account-settings\">Paramètres "
+"du compte</a>."
+msgid "You don't have translatable entity types."
+msgstr "Vous n'avez pas de types d'entités traduisibles."
+msgid "Use a pager"
+msgstr "Utiliser une pagination"
+msgid "Tokens related to views."
+msgstr "Jetons associés aux vues."
+msgid "The human-readable name of the view."
+msgstr "Le nom affiché de la vue."
+msgid "The description of the view."
+msgstr "La description de la vue."
+msgid "The machine-readable name of the view."
+msgstr "Le nom système de la vue."
+msgid "The title of current display of the view."
+msgstr "Le titre de l'affichage actuel de la vue."
+msgid "The URL of the view."
+msgstr "L'URL de la vue."
+msgid "-Select-"
+msgstr "-Sélectionner-"
+msgid ""
+"Text to place as \"title\" text which most browsers display as a "
+"tooltip when hovering over the link."
+msgstr ""
+"Texte à placer comme texte de l'attribut \"title\" que la plupart des "
+"navigateurs affichent comme bulle d'aide lors du survol du lien."
+msgid ""
+"Enable to hide this field if it is empty. Note that the field label or "
+"rewritten output may still be displayed. To hide labels, check the "
+"style or row style settings for empty fields. To hide rewritten "
+"content, check the \"Hide rewriting if empty\" checkbox."
+msgstr ""
+"Activer pour masquer ce champ s'il est vide. Noter que l'étiquette du "
+"champ ou le rendu réécrit peuvent toujours être affichés. Pour "
+"masquer les étiquettes, vérifier les paramètres du style ou du "
+"style de ligne concernant les champs vides. Pour masquer le contenu "
+"réécrit, cocher la case \"Masquer la réécriture si vide\"."
+msgid "Apostrophe"
+msgstr "Apostrophe"
+msgid ""
+"Enable views performance statistics/debug messages via the Devel "
+"module"
+msgstr ""
+"Activer les statistiques de performance/messages de débogage de Views "
+"via le module Devel"
+msgid ""
+"Check this to enable some Views query and performance statistics/debug "
+"messages <em>if Devel is installed</em>."
+msgstr ""
+"Cocher ceci pour activer des statistiques/messages de débogage sur "
+"les requêtes de Views <em>si Devel est installé</em>."
+msgid "Devel message(dpm)"
+msgstr "Message Devel (dpm)"
+msgid "Devel logging (tmp://drupal_debug.txt)"
+msgstr "Journalisation Devel (tmp://drupal_debug.txt)"
+msgid "Page region to output performance statistics/debug messages"
+msgstr ""
+"Région de la page pour le rendu des statistiques de performance/les "
+"messages de débogage"
+msgid "Date in the form of CCYYMMDD."
+msgstr "Date sous la forme AAAAMMJJ."
+msgid "Date in the form of YYYYMM."
+msgstr "Date sous la forme AAAAMM."
+msgid "Date in the form of YYYY."
+msgstr "Date sous la forme AAAA."
+msgid "Date in the form of MM (01 - 12)."
+msgstr "Date sous la forme MM (01 - 12)."
+msgid "Date in the form of DD (01 - 31)."
+msgstr "Date sous la forme JJ (01 - 31)."
+msgid "Date in the form of WW (01 - 53)."
+msgstr "Date sous la forme SS (01 - 53)."
+msgid ""
+"If you need more fields than the uid add the comment: author "
+"relationship"
+msgstr ""
+"Si vous avez besoin de plus de champs que l'uid, ajoutez la relation "
+"Commentaire : auteur"
+msgid "Last comment uid"
+msgstr "Uid du dernier commentaire"
+msgid "The User ID of the author of the last comment of a node."
+msgstr ""
+"L'identifiant utilisateur de l'auteur du dernier commentaire d'un "
+"nœud."
+msgid ""
+"The user authoring the content. If you need more fields than the uid "
+"add the content: author relationship"
+msgstr ""
+"L'utilisateur auteur du contenu. Si vous avez besoin de plus de champs "
+"que l'uid, ajoutez la relation Contenu : auteur"
+msgid "Unique access event ID."
+msgstr "Identifiant d'évenement d'accès unique."
+msgid "Link field to the node if there is no comment."
+msgstr "Lier le champ au nœud s'il n'y a aucun commentaire."
+msgid "Convert spaces in term names to hyphens"
+msgstr "Convertir les espaces dans les noms de terme en tirets"
+msgid "This allows links to work with Views taxonomy term arguments."
+msgstr ""
+"Ceci permet aux liens de fonctionner avec les arguments de termes de "
+"taxonomie de Views."
+msgid ""
+"Enter PHP code that returns a value to use for this filter. Do not use "
+"&lt;?php ?&gt;. You must return only a single value for just this "
+"filter. Some variables are available: the view object will be "
+"\"$view\". The argument handler will be \"$argument\", for example you "
+"may change the title used for substitutions for this argument by "
+"setting \"argument->validated_title\"\"."
+msgstr ""
+"Saisir du code PHP qui retourne une valeur à utiliser pour ce filtre. "
+"Ne pas utiliser &lt;?php ?&gt;. Vous ne devez retourner qu'une seule "
+"valeur pour ce filtre. Des variables sont disponibles : l'objet vue "
+"sera \"$view\". Le gestionnaire (handler) d'arguments sera "
+"\"$argument\", vous pouvez par exemple changer le titre utilisé pour "
+"les substitutions pour cet argument en définissant "
+"\"$argument->validated_title\"."
+msgid "Use rendered output to group rows"
+msgstr "Utiliser le rendu pour grouper les lignes"
+msgid ""
+"If enabled the rendered output of the grouping field is used to group "
+"the rows."
+msgstr ""
+"Si activé le rendu du champ de regroupement est utilisé pour grouper "
+"les lignes."
+msgid "Replace an existing view if one exists with the same name"
+msgstr "Remplace une vue existante s'il en existe une avec le même nom"
+msgid ""
+"You may use HTML code in this field. The following tokens are "
+"supported:"
+msgstr ""
+"Vous pouvez utiliser le code HTML pour ce champ. Les jetons suivants "
+"sont pris en charge :"
+msgid "Provide a simple link to the user."
+msgstr "Fournir un simple lien vers l'utilisateur."
+msgid "Result summary"
+msgstr "Résumé des résultats"
+msgid "Shows result summary, for example the items per page."
+msgstr ""
+"Affiche le résumé des résultats, par exemple les éléments par "
+"page."
+msgid "Use site default RSS settings"
+msgstr "Utiliser les paramètres RSS par défaut du site"
+msgid "Display list value as human readable"
+msgstr "Afficher les valeurs des listes de manière lisible"
+msgid "Displays the link in contextual links"
+msgstr "Affiche le lien dans les liens contextuels"
+msgid "Grouping field Nr.@number"
+msgstr "Champ de groupement N°@number"
+msgid "Add a read-more link if output is trimmed."
+msgstr "Ajouter un lien \"lire plus\" si la sortie est tronquée."
+msgid ""
+"If checked, a read-more link will be added at the end of the trimmed "
+"output"
+msgstr ""
+"Lorsque cochée, un lien \"lire plus\" sera ajouté à la fin d'une "
+"sortie tronquée"
+msgid ""
+"The text which will be displayed on the more link. You may enter data "
+"from this view as per the \"Replacement patterns\" above."
+msgstr ""
+"Le texte qui sera affiché comme lien \"lire plus\". Vous pouvez "
+"saisir des données de cette vue comme décrit dans \"Modèles de "
+"remplacement\" ci-dessus."
+msgid ""
+"The path which is used for the more link. You may enter data from this "
+"view as per the \"Replacement patterns\" above."
+msgstr ""
+"Le chemin qui sera utilisé pour le lien \"lire plus\". Vous pouvez "
+"saisir des données de cette vue comme décrit dans \"Modèles de "
+"remplacement\" ci-dessus."
+msgid "Display field as machine name."
+msgstr "Afficher le champ comme un nom machine."
+msgid "Show the embed display in the ui."
+msgstr "Montrer l'affichage intégré dans l'interface graphique."
+msgid ""
+"Allow advanced user to use the embed view display. The plugin itself "
+"works if it's not visible in the ui"
+msgstr ""
+"Autoriser les utilisateurs avancés à utiliser l'affichage de vue "
+"intégré. Le plugin fonctionne même s'il n'est pas visible dans "
+"l'interface"
+msgid ""
+"All Views-generated queries will include the name of the views and "
+"display 'view-name:display-name' as a string  at the end of the SELECT "
+"clause. This makes identifying Views queries in database server logs "
+"simpler, but should only be used when troubleshooting."
+msgstr ""
+"Toutes les requêtes générées par Views inclueront les noms des "
+"vues et des affichages dans une chaîne de caractères "
+"'view-name:display-name' à la fin de la clause SELECT. Cela facilite "
+"l'identification des requêtes Views dans les journaux du serveur de "
+"base de données mais ne doit être utilisé qu'à des fins de "
+"diagnostic."
+msgid "Provide a display which can be embedded using the views api."
+msgstr ""
+"Fournir un affichage pouvant être intégré en utilisant l'API de "
+"Views."
+msgid "Display the user with standard user view."
+msgstr "Afficher l'utilisateur avec une vue utilisateur standard."
+msgid "Only has the 'authenticated user' role"
+msgstr "N'a que le rôle 'utilisateur authentifié'"
+msgid "Has roles in addition to 'authenticated user'"
+msgstr "A d'autres rôles que 'utilisateur authentifié'"
+msgid ""
+"Display the user with standard user view. It might be necessary to add "
+"a user-profile.tpl.php in your themes template folder, because the "
+"default <a href=\"@user-profile-api-link\">user-profile</a>e template "
+"don't show the username per default."
+msgstr ""
+"Afficher l'utilisateur avec une vue utilisateur standard. Il peut "
+"être nécessaire d'ajouter un fichier user-profile.tpl.php dans le "
+"répertoire de votre thème, le gabarit par défaut du <a "
+"href=\"@user-profile-api-link\">profil utilisateur</a> n'affichant pas "
+"le nom d'utilisateur."
+msgid "Please insert the items per page (@items_per_page) from above."
+msgstr "Veuillez insérer les éléments par page (@items_per_page) ci-dessus."
+msgid "Remove tags from rendered output"
+msgstr "Retirer les balises du rendu"
+msgid "Fields to be included as contextual links."
+msgstr "Les champs à inclure comme liens contextuels."
+msgid "Include destination"
+msgstr "Inclure la destination"
+msgid ""
+"Include a \"destination\" parameter in the link to return the user to "
+"the original view upon completing the contextual action."
+msgstr ""
+"Inclure un paramètre \"destination\" dans le lien pour rediriger "
+"l'utilisateur à la vue originale après avoir terminé l'action "
+"contextuelle."
+msgid "Contextual Links"
+msgstr "Liens contextuels"
+msgid "Display fields in a contextual links menu."
+msgstr "Afficher les champs dans un menu de liens contextuels."
+msgid "@label (!name:language)"
+msgstr "@label (!name : langue)"
+msgid "@label:language"
+msgstr "@label : langue"
+msgid "Language - Appears in: @bundles."
+msgstr "Langue - apparaît dans @bundles"
+msgid "Used in views"
+msgstr "Utilisés dans les vues"
+msgid "Views plugins"
+msgstr "Plugins de Views"
+msgid "Overview of plugins used in all views."
+msgstr "Vue d'ensemble des plugins utilisés dans toutes les vues."
+msgid "Display \"Access Denied\""
+msgstr "Afficher \"Accès refusé\""
+msgid ""
+"<p>The following tokens are available for this field. Note that due to "
+"rendering order, you cannot use fields that come after this field; if "
+"you need a field not listed here, rearrange your fields.\n"
+"If you would like to have the characters '[' and ']' please use the "
+"html entity codes '%5B' or  '%5D' or they will get replaced with empty "
+"space.</p>"
+msgstr ""
+"<p>Les jetons (tokens) suivants sont disponibles pour ce champ. Notez "
+"qu'en raison de l'ordre de l'affichage, vous ne pouvez pas utiliser "
+"les champs qui viennent après ce champ ; si vous avez besoin d'un "
+"champ non listé ici, réordonnez vos champs.\r\n"
+"Si vous souhaitez avoir les caractères '[' et ']' veuillez utiliser "
+"l'encodage HTML '%5B' ou '%5D' ou ils seront remplacés par des "
+"espaces vides.</p>"
+msgid "@date_format format"
+msgstr "format @date_format"
+msgid ""
+"If \"Custom\", see the <a href=\"@url\" target=\"_blank\">PHP "
+"manual</a> for date formats. Otherwise, enter the number of different "
+"time units to display, which defaults to 2."
+msgstr ""
+"Si \"Personnalisé\", voir le <a href=\"@url\" "
+"target=\"_blank\">manuel PHP</a> pour les formats de date. Sinon, "
+"saisir le nombre d'unité de temps à afficher. 2 par défaut."
+msgid "Timezone to be used for date output."
+msgstr "Timezone à utiliser pour le rendu de la date."
+msgid "- Default site/user timezone -"
+msgstr "- Timezone par défaut du site ou de l'utilisateur -"
+msgid ""
+"Enter mathematical expressions such as 2 + 2 or sqrt(5). You may "
+"assign variables and create mathematical functions and evaluate them. "
+"Use the ; to separate these. For example: f(x) = x + 2; f(2)."
+msgstr ""
+"Saisissez une expression mathématique telle que 2 + 2 ou sqrt(5). "
+"Vous pouvez assigner des variables, créer des fonctions "
+"mathématiques et les évaluer. Utilisez ; pour les séparer. Par "
+"example : f(x) = x + 2; f(2)."
+msgid ""
+"Grouped filters allow a choice between predefined operator|value "
+"pairs."
+msgstr ""
+"Les filtres groupés permettent de choisir entre les couples "
+"opérateur|valeur prédéfinis."
+msgid "Filter type to expose"
+msgstr "Type de filtrer à exposer"
+msgid "Single filter"
+msgstr "Filtre unique"
+msgid "Grouped filters"
+msgstr "Filtres groupés"
+msgid ""
+"Remember exposed selection only for the selected user role(s). If you "
+"select no roles, the exposed data will never be stored."
+msgstr ""
+"Se rappeler de la sélection du filtre exposé uniquement pour le(s) "
+"rôle(s) sélectionné(s). Si vous ne sélectionnez pas de rôle, la "
+"valeur du filtre exposé ne sera jamais mémorisée."
+msgid "The value is required if title for this item is defined."
+msgstr "La valeur est obligatoire si un titre est défini pour cet élément."
+msgid "The title is required if value for this item is defined."
+msgstr "Le titre est requis si une valeur est définie pour cet élément."
+msgid ""
+"Select which kind of widget will be used to render the group of "
+"filters"
+msgstr ""
+"Sélectionner le type de widget qui sera utilisé pour afficher le "
+"groupe de filtres."
+msgid "grouped"
+msgstr "groupés"
+msgid "Choose fields to combine for filtering"
+msgstr "Choisir les champs à combiner pour le filtre"
+msgid "This filter doesn't work for very special field handlers."
+msgstr ""
+"Ce filtre ne fonctionne pas pour les gestionnaires de champ très "
+"spéciaux."
+msgid "You have to add some fields to be able to use this filter."
+msgstr "Vous devez ajouter des champs pour pouvoir utiliser ce filtre."
+msgid "@entity types"
+msgstr "Types de @entity"
+msgid "Sort within each hierarchy level"
+msgstr "Trier dans chaque niveau de la hiérarchie"
+msgid ""
+"Enable this to sort the items within each level of the hierarchy by "
+"weight and title.  Warning: this may produce a slow query."
+msgstr ""
+"Activer cela pour trier les éléments dans chaque niveau de la "
+"hiérarchie par poids et titre. Attention : cela peut produire une "
+"requête lente."
+msgid "There is no lock on view %name to break."
+msgstr "Il n'y a aucun verrou à casser sur la vue %name."
+msgid "This display has one or more validation errors; please review it."
+msgstr ""
+"Cet affichage a une ou plusieurs erreurs de validation; merci de "
+"vérifier."
+msgid "Bypass view validation"
+msgstr "Outrepasser la validation de la vue"
+msgid ""
+"Bypass the validation of plugins and handlers when importing this "
+"view."
+msgstr ""
+"Outrepasser la validation des plugins et gestionnaires lors de "
+"l'import de cette vue."
+msgid "&lt;Any&gt;"
+msgstr "&lt;Aucun&gt;"
+msgid "There are no enabled views."
+msgstr "Il n'y a pas de vues actives."
+msgid "Display fields as RSS items."
+msgstr "Afficher les champs comme éléments RSS."
+msgid "Book root from current node"
+msgstr "Racine du livre du nœud courant"
+msgid "The language the comment is in."
+msgstr "La langue de ce commentaire."
+msgid "- No value -"
+msgstr "- Pas de valeur -"
+msgid "Provide a simple link to the revision."
+msgstr "Fournir un lien simple vers la révision."
+msgid "The ID of the entity that is related to the file."
+msgstr "L'identifiant (ID) de l'entité liée au fichier."
+msgid "The taxonomy vocabulary weight"
+msgstr "Le poids du vocabulaire de taxonomie"
+msgid "Filter the results of \"Taxonomy: Term\" by the parent pid."
+msgstr "Filtrer les résultats de \"Taxonomie : Terme\" par le pid parent."
+msgid "The raw numeric user ID."
+msgstr "L'identifiant (ID) numérique brut de l'utilisateur."
+msgid "Unfiltered text"
+msgstr "Texte non filtré"
+msgid ""
+"Add unrestricted, custom text or markup. This is similar to the custom "
+"text field."
+msgstr ""
+"Ajouter du texte personnalisé ou du balisage non-restreint. Ceci est "
+"similaire au champ texte personnalisé."
+msgid "Combine fields filter"
+msgstr "Grouper le filtre des champs"
+msgid "Combine two fields together and search by them."
+msgstr "Grouper deux champs ensemble et les utiliser pour la recherche."
+msgid "Column used for click sorting"
+msgstr "Colonne utilisée pour le tri au clic"
+msgid "Use path alias instead of internal path."
+msgstr "Utiliser l'alias de chemin au lieu du chemin interne."
+msgid "Length of time in seconds raw query results should be cached."
+msgstr ""
+"Durée en secondes pendant laquelle les résultats bruts de la "
+"requête doivent être mis en cache."
+msgid "Length of time in seconds rendered HTML output should be cached."
+msgstr ""
+"Durée en secondes pendant laquelle le rendu HTML doit être mis en "
+"cache."
+msgid "Custom time values must be numeric."
+msgstr "Les valeurs horaires personnalisées doivent être numériques."
+msgid "Hide contextual links"
+msgstr "Masquer les liens contextuels"
+msgid "Change whether or not to display contextual links for this view."
+msgstr "Configurer l'affichage des liens contextuels pour cette vue."
+msgid "Hide contextual links on this view."
+msgstr "Masquer les liens contextuels de cette vue."
+msgid ""
+"This will add a more link to the bottom of this view, which will link "
+"to the page view. If you have more than one page view, the link will "
+"point to the display specified in 'Link display' section under "
+"advanced. You can override the url at the link display setting."
+msgstr ""
+"Ceci ajoutera un lien \"plus\" au bas de cette vue, qui la liera à la "
+"vue page. Si vous avez plus d'une vue page, le lien pointera vers "
+"l'affichage spécifié dans la section \"Affichage de lien\" sous "
+"\"Avancé\". Vous pouvez supplanter l'URL dans le paramétrage de "
+"l'affichage du lien."
+msgid "Display 'more' link only if there is more content"
+msgstr "N'afficher le lien 'plus' que s'il y a plus de contenu"
+msgid ""
+"Leave this unchecked to display the 'more' link even if there are no "
+"more items to display."
+msgstr ""
+"Laissez cette case décochée pour afficher le lien \"plus\" même "
+"s'il n'y a pas d'autres éléments à afficher."
+msgid "View: !view: !display"
+msgstr "Vue : !view: !display"
+msgid ""
+"Exposed filters in block displays require \"Use AJAX\" to be set to "
+"work correctly."
+msgstr ""
+"Les filtres exposés affichés dans des blocs requièrent l'option "
+"\"Utiliser AJAX\" pour fonctionner correctement"
+msgid "Number of pager links visible"
+msgstr "Nombre de liens de pagination visibles"
+msgid "Specify the number of links to pages to display in the pager."
+msgstr ""
+"Préciser le nombre de liens vers des pages à afficher dans la "
+"pagination."
+msgid "A lists of labels for the controls in the pager"
+msgstr "Une liste d'étiquettes pour les contrôles dans la pagination"
+msgid "Text for \"first\"-link"
+msgstr "Texte du lien \"premier\""
+msgid "Text for \"previous\"-link"
+msgstr "Texte du lien \"précédent\""
+msgid "Text for \"next\"-link"
+msgstr "Texte du lien \"suivant\""
+msgid "Text for \"last\"-link"
+msgstr "Texte du lien \"dernier\""
+msgid "Pure Distinct"
+msgstr "Distinct pur"
+msgid ""
+"This will prevent views from adding the base column to the distinct "
+"field. If this is not selected and the base column is a primary key, "
+"then a non-pure distinct will not function properly because the "
+"primary key is always unique."
+msgstr ""
+"Cela empêchera les vues d'ajouter la colonne de base au champ "
+"distinct. Si cela n'est pas sélectionné et que la colonne de base "
+"est une clé primaire, alors une distinction non pure ne fonctionnera "
+"pas proprement car la clé primaire est toujours unique."
+msgid "Query Tags"
+msgstr "Tags de la requête"
+msgid ""
+"If set, these tags will be appended to the query and can be used to "
+"identify the query in a module. This can be helpful for altering "
+"queries."
+msgstr ""
+"Si défini, ces tags seront ajoutés à la requête et pourront être "
+"utilisés pour l'identifier dans un module. Cela peut être utile pour "
+"modifier les requêtes."
+msgid ""
+"The query tags may only contain lower-case alphabetical characters and "
+"underscores."
+msgstr ""
+"Les tags de requêtes ne peuvent contenir que des caractères "
+"alphabétiques en minuscules et des tirets bas."
+msgid ""
+"The field that is going to be used as the RSS item pubDate for each "
+"row. It needs to be in RFC 2822 format."
+msgstr ""
+"Le champ qui sera utilisé comme pubDate de l'élément du flux RSS "
+"pour chaque ligne. Il doit respecter le format décrit dans la RFC "
+"2822."
+msgid "GUID settings"
+msgstr "Paramètres de GUID"
+msgid "GUID field"
+msgstr "Champ GUID"
+msgid "The globally unique identifier of the RSS item."
+msgstr "L'identificateur global unique de l'élément RSS."
+msgid "GUID is permalink"
+msgstr "GUID est un permalien"
+msgid "The RSS item GUID is a permalink."
+msgstr "Le GUID de l'élément RSS est un permalien."
+msgid "Add views row classes"
+msgstr "Ajouter des classes aux lignes de vues"
+msgid ""
+"Add the default row classes like views-row-1 to the output. You can "
+"use this to quickly reduce the amount of markup the view provides by "
+"default, at the cost of making it more difficult to apply CSS."
+msgstr ""
+"Ajouter au rendu des lignes les classes par défaut comme views-row-1. "
+"Vous pouvez utiliser ceci pour rapidement réduire la quantité de "
+"code fourni par défaut par la vue mais cela peut complexifier le CSS."
+msgid "Add striping (odd/even), first/last row classes"
+msgstr ""
+"Ajouter des classes CSS de striage (pair/impair) et de "
+"première/dernière ligne"
+msgid ""
+"Add css classes to the first and last line, as well as odd/even "
+"classes for striping."
+msgstr ""
+"Ajouter des classes CSS aux première et dernière ligne ainsi que les "
+"classes pair/impair pour le striage."
+msgid "Force using fields"
+msgstr "Forcer l'utilisation des champs"
+msgid ""
+"If neither the row nor the style plugin supports fields, this field "
+"allows to enable them, so you can for example use groupby."
+msgstr ""
+"Si les champs ne sont ni pris en compte par les plugins de ligne, ni "
+"par ceux de style, cette option vous permet de les forcer à les "
+"prendre en compte, de sorte que vous puissiez utiliser les fonctions "
+"de regroupement (groupby) par exemple."
+msgid ""
+"Provide text to display if this field contains an empty result. You "
+"may include HTML. You may enter data from this view as per the "
+"\"Replacement patterns\" in the \"Rewrite Results\" section below."
+msgstr ""
+"Fournir un texte à afficher si ce champ contient un résultat vide. "
+"Il est possible d'inclure du HTML. Il est possible de saisir des "
+"données issues de la vue grâce aux \"Motifs de remplacement\" de la "
+"section \"Réécrire les résultats\" ci-dessous."
+msgid "The revision NID of the content revision."
+msgstr "Le NID de la révision du contenu."
+msgid "Expose sort order"
+msgstr "Exposer l'ordre de tri"
+msgid ""
+"Allow the user to choose the sort order. If sort order is not exposed, "
+"the sort criteria settings for each sort will determine its order."
+msgstr ""
+"Permettre à l'utilisateur de choisir l'ordre de tri. Si l'ordre de "
+"tri n'est pas exposé, les paramètres de critères de tri pour chaque "
+"tri détermineront son ordre."
+msgid "Short description of table"
+msgstr "Description courte du tableau"
+msgid "Include a caption for better accessibility of your table."
+msgstr ""
+"Inclure une légende pour une meilleure accessibilité de votre "
+"tableau."
+msgid ""
+"This value will be displayed as table-summary attribute in the html. "
+"Use this to give a summary of complex tables."
+msgstr ""
+"Cette valeur sera affichée comme attribut de résumé de tableau dans "
+"le html. Utilisez cette option pour donner un résumé à des tableaux "
+"complexes."
+msgid "Selector label"
+msgstr "Étiquette du sélecteur"
+msgid ""
+"The text that will appear as the the label of the selector element. If "
+"blank no label tag will be used."
+msgstr ""
+"Le texte qui apparaîtra comme étiquette de l'élément sélecteur. "
+"Si vide, aucune étiquette ne sera utilisée."
+msgid "Use a custom %field_name"
+msgstr "Utiliser un %field_name personnalisé"
+msgid "Tracker - User"
+msgstr "Suivi - Utilisateur"
+msgid ""
+"Whether or not the node is published. You must use an argument or "
+"filter on UID or you will get misleading results using this field."
+msgstr ""
+"Si le nœud est publié ou non. Vous devez utiliser un argument ou un "
+"filtre sur l'identifiant (UID) sans quoi l'utilisation de ce champ "
+"risque de générer des résultats trompeurs."
+msgid "No path is set"
+msgstr "Aucun chemin n'est défini"
+msgid "Remove search score"
+msgstr "Retirer le score de recherche"
+msgid ""
+"Check this box to remove the search score from the query. This can "
+"help reduce help reduce duplicate search results when using this "
+"filter."
+msgstr ""
+"Cocher cette case pour éliminer le score de recherche de la requête. "
+"L'utilisation de ce filtre permet de réduire les résultats de "
+"recherche en double."
+msgid ""
+"If you <a href=\"@modules\">enable the advanced help module</a>, Views "
+"will provide more and better help. <a href=\"@hide\">You can disable "
+"this message at the Views settings page.</a>"
+msgstr ""
+"Si vous <a href=\"@modules\">activer le module d'aide avancée</a>, "
+"Views fournira plus et une meilleur aide. <a href=\"@hide\">Vous "
+"pouvez désactiver ce message sur la page de paramètres de Views.</a>"
+msgid ""
+"If you install the advanced help module from !href, Views will provide "
+"more and better help. <a href=\"@hide\">You can disable this message "
+"at the Views settings page.</a>"
+msgstr ""
+"Si vous installez le module advanced help depuis !href, Views fournira "
+"de l'aide supplémentaire et de meilleur qualité. <a "
+"href=\"@hide\">Vous pouvez désactiver ce message sur la page de "
+"configuration de Views.</a>"
+msgid "Custom output for TRUE"
+msgstr "Données de sortie personnalisées pour TRUE"
+msgid "Custom output for FALSE"
+msgstr "Données de sortie personnalisées pour FALSE"
+msgid "Set this field to display inline"
+msgstr "Régler ce champ pour afficher en ligne"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/views-7.x-3.x.fr_8.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,5645 @@
+# French translation of Views (7.x-3.17)
+# Copyright (c) 2018 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Views (7.x-3.17)\n"
+"POT-Creation-Date: 2018-01-18 20:28+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Home"
+msgstr "Accueil"
+msgid "Title"
+msgstr "Titre"
+msgid "Body"
+msgstr "Corps"
+msgid "enabled"
+msgstr "activé"
+msgid "delete"
+msgstr "supprimer"
+msgid "Status"
+msgstr "Etat"
+msgid "Prefix"
+msgstr "Préfixe"
+msgid "Suffix"
+msgstr "Suffixe"
+msgid "approve"
+msgstr "approuver"
+msgid "E-mail"
+msgstr "Courriel"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Operations"
+msgstr "Actions"
+msgid "Content"
+msgstr "Contenu"
+msgid "Value"
+msgstr "Valeur"
+msgid "Group"
+msgstr "Groupe"
+msgid "Type"
+msgstr "Type"
+msgid "Author"
+msgstr "Auteur"
+msgid "Replies"
+msgstr "Réponses"
+msgid "Last Post"
+msgstr "Dernière contribution"
+msgid "Closed"
+msgstr "Fermé"
+msgid "List"
+msgstr "Lister"
+msgid "disabled"
+msgstr "désactivé"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Remove"
+msgstr "Retirer"
+msgid "Description"
+msgstr "Description"
+msgid "Language"
+msgstr "Langue"
+msgid "more"
+msgstr "plus"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "footer"
+msgstr "pied de page"
+msgid "Comments"
+msgstr "Commentaires"
+msgid "More"
+msgstr "Plus"
+msgid "On"
+msgstr "Activé"
+msgid "For"
+msgstr "Pour"
+msgid "Tags"
+msgstr "Étiquettes"
+msgid "Block title"
+msgstr "Titre du bloc"
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Content types"
+msgstr "Types de contenu"
+msgid "Version"
+msgstr "Version"
+msgid "view"
+msgstr "voir"
+msgid "File"
+msgstr "Fichier"
+msgid "Tag"
+msgstr "Étiquette"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Size"
+msgstr "Taille"
+msgid "Search"
+msgstr "Rechercher"
+msgid "Reset"
+msgstr "Réinitialiser"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "Use count"
+msgstr "Nombre d'utilisations"
+msgid "Block settings"
+msgstr "Paramètres du bloc"
+msgid "- None -"
+msgstr "- Aucun(e) -"
+msgid "Weight"
+msgstr "Poids"
+msgid "Link"
+msgstr "Lien"
+msgid "Center"
+msgstr "Centre"
+msgid "Hierarchy"
+msgstr "Hiérarchie"
+msgid "Required"
+msgstr "Requis"
+msgid "Parent"
+msgstr "Parent"
+msgid "Depth"
+msgstr "Profondeur"
+msgid "Category"
+msgstr "Catégorie"
+msgid "Settings"
+msgstr "Paramètres"
+msgid "Feed"
+msgstr "Flux"
+msgid "Name"
+msgstr "Nom"
+msgid "edit"
+msgstr "modifier"
+msgid "Import"
+msgstr "Importer"
+msgid "Book"
+msgstr "Livre"
+msgid "Taxonomy term"
+msgstr "Terme de taxonomie"
+msgid "Description field"
+msgstr "Champ description"
+msgid "settings"
+msgstr "paramètres"
+msgid "Node ID"
+msgstr "Identifiant (ID) du nœud"
+msgid "Field"
+msgstr "Champ"
+msgid "header"
+msgstr "en-tête"
+msgid "Label"
+msgstr "Étiquette"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "True"
+msgstr "Vrai"
+msgid "False"
+msgstr "Faux"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Open"
+msgstr "Ouvert"
+msgid "Core"
+msgstr "Cœur"
+msgid "Add new"
+msgstr "Ajouter nouveau"
+msgid "Views"
+msgstr "Vues"
+msgid "Access"
+msgstr "Accès"
+msgid "Add"
+msgstr "Ajouter"
+msgid "View"
+msgstr "Voir"
+msgid "Format"
+msgstr "Format"
+msgid "URL"
+msgstr "URL"
+msgid "Path"
+msgstr "Chemin"
+msgid "Vocabularies"
+msgstr "Vocabulaires"
+msgid "Display"
+msgstr "Affichage"
+msgid "Menu"
+msgstr "Menu"
+msgid "Teaser"
+msgstr "Accroche"
+msgid "GUID"
+msgstr "GUID"
+msgid "Text"
+msgstr "Texte"
+msgid "Theme"
+msgstr "Thème"
+msgid "Timestamp"
+msgstr "Horodatage"
+msgid "ID"
+msgstr "Identifiant (ID)"
+msgid "Unknown"
+msgstr "Inconnu"
+msgid "Attachment"
+msgstr "Fichier attaché"
+msgid "Picture"
+msgstr "Image"
+msgid "Mail"
+msgstr "Courriel"
+msgid "Before"
+msgstr "Avant"
+msgid "After"
+msgstr "Après"
+msgid "Promoted"
+msgstr "Promu"
+msgid "User"
+msgstr "Utilisateur"
+msgid "Continue"
+msgstr "Continuer"
+msgid "Files"
+msgstr "Fichiers"
+msgid "Error"
+msgstr "Erreur"
+msgid "Options"
+msgstr "Options"
+msgid "Node"
+msgstr "Nœud"
+msgid "Number of columns"
+msgstr "Nombre de colonnes"
+msgid "Separator"
+msgstr "Séparateur"
+msgid "Exclude"
+msgstr "Exclure"
+msgid "Horizontal"
+msgstr "Horizontal"
+msgid "Vertical"
+msgstr "Vertical"
+msgid "term"
+msgstr "terme"
+msgid "All"
+msgstr "Tout"
+msgid "Access log"
+msgstr "Journal d'accès"
+msgid "Active"
+msgstr "Actif"
+msgid "Year"
+msgstr "Année"
+msgid "Date format"
+msgstr "Format de date"
+msgid "Page title"
+msgstr "Titre de page"
+msgid "Block"
+msgstr "Bloc"
+msgid "Override title"
+msgstr "Supplanter le titre"
+msgid "CSS class"
+msgstr "Classe CSS"
+msgid "Display links"
+msgstr "Afficher les liens"
+msgid "Page"
+msgstr "Page"
+msgid "Pager ID"
+msgstr "ID de la pagination"
+msgid "Taxonomy terms"
+msgstr "Termes de taxonomie"
+msgid "Module"
+msgstr "Module"
+msgid "Off"
+msgstr "Désactivé"
+msgid "Header"
+msgstr "Entête"
+msgid "Footer"
+msgstr "Pied de page"
+msgid "Selected"
+msgstr "Sélectionné"
+msgid "Aggregator category"
+msgstr "Catégorie d'agrégateur"
+msgid "Aggregator feed"
+msgstr "Flux d'agrégateur"
+msgid "Aggregator item"
+msgstr "Élément d'agrégateur"
+msgid "Custom"
+msgstr "Personnalisé"
+msgid "Roles"
+msgstr "Rôles"
+msgid "Comment"
+msgstr "Commentaire"
+msgid "Hostname"
+msgstr "Nom d'hôte"
+msgid "Score"
+msgstr "Score"
+msgid "Published"
+msgstr "Publié"
+msgid "Signature"
+msgstr "Signature"
+msgid "Filter"
+msgstr "Filtrer"
+msgid "Location"
+msgstr "Emplacement"
+msgid "Promoted to front page"
+msgstr "Promu en page d'accueil"
+msgid "Log message"
+msgstr "Message de journal"
+msgid "Session ID"
+msgstr "Identifiant de session"
+msgid "File ID"
+msgstr "Identifiant (ID) de fichier"
+msgid "Vocabulary"
+msgstr "Vocabulaire"
+msgid "Vocabulary ID"
+msgstr "Identifiant (ID) de vocabulaire"
+msgid "Term"
+msgstr "Terme"
+msgid "Term ID"
+msgstr "Identifiant (ID) du terme"
+msgid "Term name"
+msgstr "Nom du terme"
+msgid "Last access"
+msgstr "Dernier accès"
+msgid "Last login"
+msgstr "Dernière connexion"
+msgid "Field name"
+msgstr "Nom du champ"
+msgid "Fields"
+msgstr "Champs"
+msgid "Widget type"
+msgstr "Type de widget"
+msgid "Contains"
+msgstr "Contient"
+msgid "Does not contain"
+msgstr "Ne contient pas"
+msgid "Is less than"
+msgstr "Est inférieur à"
+msgid "Is less than or equal to"
+msgstr "Est inférieur ou égal à"
+msgid "Is equal to"
+msgstr "Est égal à"
+msgid "Is greater than or equal to"
+msgstr "Est supérieur ou égal à"
+msgid "Is greater than"
+msgstr "Est supérieur à"
+msgid "Is not equal to"
+msgstr "N'est pas égal à"
+msgid "Average"
+msgstr "Moyenne"
+msgid "Count"
+msgstr "Décompte"
+msgid "Overridden"
+msgstr "Supplanté"
+msgid "Watchdog"
+msgstr "Surveillance"
+msgid "Normal"
+msgstr "Normal"
+msgid "Last update"
+msgstr "Dernière mise à jour"
+msgid "%time ago"
+msgstr "Il y a %time"
+msgid "Advanced"
+msgstr "Avancé"
+msgid "Sort order"
+msgstr "Ordre de tri"
+msgid "Maximum"
+msgstr "Maximum"
+msgid "Sortable"
+msgstr "Classable"
+msgid "Caching"
+msgstr "Mise en cache"
+msgid "Month"
+msgstr "Mois"
+msgid "System"
+msgstr "Système"
+msgid "Current"
+msgstr "Actuel"
+msgid "Desc"
+msgstr "Desc"
+msgid "OR"
+msgstr "OU (OR)"
+msgid "node"
+msgstr "nœud"
+msgid "Recent posts"
+msgstr "Dernières contributions"
+msgid "Recent posts for %1"
+msgstr "Posts récents pour %1"
+msgid "Day"
+msgstr "Jour"
+msgid "Table"
+msgstr "Tableau"
+msgid "Other"
+msgstr "Autre"
+msgid "Align"
+msgstr "Aligner"
+msgid "Basic"
+msgstr "Basique"
+msgid "List type"
+msgstr "Type de liste"
+msgid "Role"
+msgstr "Rôle"
+msgid "Select all"
+msgstr "Tout sélectionner"
+msgid "Link text"
+msgstr "Texte du lien"
+msgid "Case"
+msgstr "Casse"
+msgid "Users"
+msgstr "Utilisateurs"
+msgid "Referrer"
+msgstr "Référent"
+msgid "Both"
+msgstr "Les deux"
+msgid "Maximum length"
+msgstr "Taille maximale"
+msgid "Anonymous"
+msgstr "Anonyme"
+msgid "Edit view"
+msgstr "Modifier la vue"
+msgid "Administer views"
+msgstr "Administrer les vues"
+msgid "Existing Views"
+msgstr "Vues existantes"
+msgid "Default Views"
+msgstr "Vues par défaut"
+msgid "Ascending"
+msgstr "Ascendant"
+msgid "Descending"
+msgstr "Descendant"
+msgid "Normal menu item"
+msgstr "Élément de menu normal"
+msgid "Arguments"
+msgstr "Arguments"
+msgid "Operator"
+msgstr "Opérateur"
+msgid "Filters"
+msgstr "Filtres"
+msgid "Optional"
+msgstr "Facultatif"
+msgid "Exposed Filters"
+msgstr "Filtres exposés"
+msgid "Order"
+msgstr "Ordre"
+msgid "View name must be alphanumeric or underscores only."
+msgstr ""
+"Le nom de la vue ne peut contenir que des caractères alphanumériques "
+"et des tirets bas (_)."
+msgid "Views UI"
+msgstr "Views UI"
+msgid "Recent comments"
+msgstr "Commentaires récents"
+msgid "Random"
+msgstr "Au hasard"
+msgid "Uncategorized"
+msgstr "Non catégorisé"
+msgid "Position"
+msgstr "Position"
+msgid "Last checked"
+msgstr "Vérifié pour la dernière fois"
+msgid "Profile"
+msgstr "Profil"
+msgid " ("
+msgstr " ("
+msgid ")"
+msgstr ")"
+msgid "Term description"
+msgstr "Description du terme"
+msgid "fields"
+msgstr "champs"
+msgid "Operation"
+msgstr "Opération"
+msgid "reply"
+msgstr "répondre"
+msgid "Tracker"
+msgstr "Suivi"
+msgid "Defaults"
+msgstr "Paramètres par défaut"
+msgid "="
+msgstr "="
+msgid "with comments"
+msgstr "avec commentaires"
+msgid "without comments"
+msgstr "sans commentaires"
+msgid "Sort by"
+msgstr "Trier par"
+msgid "Created date"
+msgstr "Date de création"
+msgid "Updated date"
+msgstr "Date de mise à jour"
+msgid "comments"
+msgstr "commentaires"
+msgid "Full"
+msgstr "Complet"
+msgid "Default language"
+msgstr "Langue par défaut"
+msgid "Regular expression"
+msgstr "Expression régulière"
+msgid "Hidden"
+msgstr "Caché"
+msgid "Approved"
+msgstr "Approuvé"
+msgid "Show"
+msgstr "Afficher"
+msgid "Other queries"
+msgstr "Autres requêtes"
+msgid "Timer"
+msgstr "Chronomètre"
+msgid "in"
+msgstr "dans"
+msgid "Messages"
+msgstr "Messages"
+msgid "Full text"
+msgstr "Texte entier"
+msgid "Feed settings"
+msgstr "Paramètres de flux"
+msgid "Source"
+msgstr "Source"
+msgid "Replacement patterns"
+msgstr "Motifs de remplacement"
+msgid "Display name"
+msgstr "Nom de l'affichage"
+msgid "Query"
+msgstr "Requête"
+msgid "Block name"
+msgstr "Nom du bloc"
+msgid "Hour"
+msgstr "Heure"
+msgid "Minute"
+msgstr "Minute"
+msgid "Second"
+msgstr "Seconde"
+msgid "Granularity"
+msgstr "Granularité"
+msgid "Alignment"
+msgstr "Alignement"
+msgid "Link label"
+msgstr "Etiquette du lien"
+msgid "author"
+msgstr "auteur"
+msgid "AND"
+msgstr "ET (AND)"
+msgid "views"
+msgstr "vues"
+msgid "Left"
+msgstr "Gauche"
+msgid "Right"
+msgstr "Droit"
+msgid "What links here"
+msgstr "Qu'est-ce qui lie ici"
+msgid "Seconds"
+msgstr "Secondes"
+msgid "Blocked"
+msgstr "Bloqué"
+msgid "or"
+msgstr "ou"
+msgid "."
+msgstr "."
+msgid "Parent term"
+msgstr "Terme parent"
+msgid "revert"
+msgstr "rétablir"
+msgid "All tags"
+msgstr "Toutes les étiquettes"
+msgid "Last modified"
+msgstr "Dernière modification"
+msgid "Reversed"
+msgstr "Inversé"
+msgid "Reverse"
+msgstr "Inversé"
+msgid "Not published"
+msgstr "Non publié"
+msgid "Unformatted"
+msgstr "Non mis en forme"
+msgid "RSS Feed"
+msgstr "Flux RSS"
+msgid "New comments"
+msgstr "Nouveaux commentaires"
+msgid "Relationships"
+msgstr "Relations"
+msgid "Plural"
+msgstr "Pluriel"
+msgid "Relationship"
+msgstr "Relation"
+msgid "relationships"
+msgstr "relations"
+msgid "Oldest first"
+msgstr "Les plus anciens d'abord"
+msgid "Sort criteria"
+msgstr "Critères de tri"
+msgid "Base path"
+msgstr "Chemin de base"
+msgid "Parent menu item"
+msgstr "Élément de menu parent"
+msgid "Translations"
+msgstr "Traductions"
+msgid "Sticky"
+msgstr "Épinglé (en haut des listes)"
+msgid "Ok"
+msgstr "Ok"
+msgid "Output format"
+msgstr "Format de sortie"
+msgid "Storage"
+msgstr "Stockage"
+msgid "Timezone"
+msgstr "Fuseau horaire"
+msgid "Apply"
+msgstr "Appliquer"
+msgid "Select"
+msgstr "Sélectionner"
+msgid "Enter the terms you wish to search for."
+msgstr "Indiquer les termes à rechercher"
+msgid "Information"
+msgstr "Informations"
+msgid "PHP Code"
+msgstr "Code PHP"
+msgid "Translation"
+msgstr "Traduction"
+msgid "Translation status"
+msgstr "Statut de la traduction"
+msgid "@min and @max"
+msgstr "@min et @max"
+msgid "Add another item"
+msgstr "Ajouter un autre élément"
+msgid "Text area"
+msgstr "Zone de texte"
+msgid "Used in"
+msgstr "Utilisé dans"
+msgid "Decimal"
+msgstr "Décimal"
+msgid "Minimum"
+msgstr "Minimum"
+msgid "Precision"
+msgstr "Précision"
+msgid "Exceptions"
+msgstr "Exceptions"
+msgid "Permission"
+msgstr "Droit"
+msgid "Grid"
+msgstr "Grille"
+msgid ","
+msgstr ","
+msgid "Global"
+msgstr "Global"
+msgid "Image gallery"
+msgstr "Galerie Image"
+msgid "..."
+msgstr "..."
+msgid "Thread"
+msgstr "Fil de discussion"
+msgid "Title text"
+msgstr "Texte du titre"
+msgid "Distinct"
+msgstr "Distinct"
+msgid "Extension"
+msgstr "Extension"
+msgid "Space"
+msgstr "Espace"
+msgid "Language neutral"
+msgstr "Indépendant de la langue"
+msgid "Provided by"
+msgstr "Fourni par"
+msgid "Aggregate"
+msgstr "Agréger"
+msgid "<Any>"
+msgstr "-Tout-"
+msgid "Rearrange"
+msgstr "Réordonner"
+msgid "empty"
+msgstr "vide"
+msgid "All types"
+msgstr "Tous les types"
+msgid "Aggregator"
+msgstr "Agrégateur"
+msgid "Cancel link"
+msgstr "Lien d'annulation"
+msgid "Attach to"
+msgstr "Attacher à"
+msgid "Context"
+msgstr "Contexte"
+msgid "Pager"
+msgstr "Pagination"
+msgid "Identifier"
+msgstr "Identifiant"
+msgid "Taxonomy vocabulary"
+msgstr "Vocabulaire de taxonomie"
+msgid "Remove this item"
+msgstr "Supprimer cet élément"
+msgid "Page settings"
+msgstr "Paramètres de la page"
+msgid "Use pager"
+msgstr "Utiliser la pagination"
+msgid "Items to display"
+msgstr "Éléments à afficher"
+msgid "Offset"
+msgstr "Décalage"
+msgid "More link"
+msgstr "Lien \"plus\""
+msgid "More link text"
+msgstr "Texte du lien \"Plus\""
+msgid "Book parent"
+msgstr "Parent de livre"
+msgid "Top level book"
+msgstr "Livre de plus haut niveau"
+msgid "contains"
+msgstr "contient"
+msgid "Machine name"
+msgstr "Nom système"
+msgid "Data"
+msgstr "Données"
+msgid "Selection type"
+msgstr "Type de sélection"
+msgid "No name"
+msgstr "Aucun nom"
+msgid "Default order"
+msgstr "Ordre par défaut"
+msgid "Or"
+msgstr "Ou"
+msgid "Ordered list"
+msgstr "Liste ordonnée"
+msgid "Unordered list"
+msgstr "Liste non ordonnée"
+msgid "Link class"
+msgstr "Classe du lien"
+msgid "regex"
+msgstr "regex"
+msgid "Column"
+msgstr "Colonne"
+msgid "Default sort"
+msgstr "Tri par défaut"
+msgid "sort by @s"
+msgstr "trier par @s"
+msgid "and"
+msgstr "et"
+msgid "Add @type"
+msgstr "Ajouter @type"
+msgid "Not promoted"
+msgstr "Non promu"
+msgid "Not sticky"
+msgstr "Non épinglé"
+msgid "Nid"
+msgstr "Nid"
+msgid "Parent comment"
+msgstr "Commentaire parent"
+msgid "The parent comment."
+msgstr "Le commentaire parent."
+msgid "Author's website"
+msgstr "Site web de l'auteur"
+msgid "Display the depth of the comment if it is threaded."
+msgstr "Afficher la profondeur du commentaire s'il apparaît dans un fil."
+msgid ""
+"Sort by the threaded order. This will keep child comments together "
+"with their parents."
+msgstr ""
+"Trier suivant l'ordre du fil. Ceci maintient les commentaires enfants "
+"avec leurs parents."
+msgid "Reply-to link"
+msgstr "Lien de réponse"
+msgid "Provide a simple link to reply to the comment."
+msgstr "Fournir un lien pour répondre au commentaire."
+msgid "Text to display"
+msgstr "Texte à afficher"
+msgid "Link this field to its user or an author's homepage"
+msgstr "Lier ce champ à son utilisateur ou à la page d'accueil d'un auteur"
+msgid "Newest first"
+msgstr "Les plus récents d'abord"
+msgid "field"
+msgstr "champ"
+msgid "nodes"
+msgstr "nœuds"
+msgid "Formatter"
+msgstr "Outil de mise en forme"
+msgid "Week @week"
+msgstr "Semaine @week"
+msgid "Target"
+msgstr "Cible"
+msgid "Time ago"
+msgstr "Il y a"
+msgid "The taxonomy vocabulary ID"
+msgstr "L'identifiant du vocabulaire de taxonomie"
+msgid "Radios"
+msgstr "Boutons radios"
+msgid "starting from @count"
+msgstr "en commençant à @count"
+msgid "Embed"
+msgstr "Intégré"
+msgid "The language the content is in."
+msgstr "Langue de rédaction du contenu."
+msgid "Entity type"
+msgstr "Type d'entité"
+msgid "User roles"
+msgstr "Rôles de l'utilisateur"
+msgid "%1"
+msgstr "%1"
+msgid "User account"
+msgstr "Compte utilisateur"
+msgid "More link path"
+msgstr "Chemin du lien \"plus\""
+msgid "Button text"
+msgstr "Texte du bouton"
+msgid "Title only"
+msgstr "Titre seulement"
+msgid "Not defined"
+msgstr "Non défini"
+msgid "Validator"
+msgstr "Validateur"
+msgid "Debugging"
+msgstr "Débogage"
+msgid "Inherit"
+msgstr "Hériter"
+msgid "Mime type"
+msgstr "Type MIME"
+msgid "Display format"
+msgstr "Format d'affichage"
+msgid "The date the node was last updated."
+msgstr "Date de dernière mise à jour du nœud."
+msgid "Category ID"
+msgstr "Identifiant de catégorie"
+msgid "!group: !field"
+msgstr "!group : !field"
+msgid "Invalid display id @display"
+msgstr "Identifiant (ID) de l'affichage @display invalide"
+msgid "Error: handler for @table > @field doesn't exist!"
+msgstr "Erreur : le gestionnaire pour @table > @field n'existe pas !"
+msgid "Do not use a relationship"
+msgstr "Ne pas utiliser de relation"
+msgid "Display type"
+msgstr "Type d'affichage"
+msgid "The cache has been cleared."
+msgstr "Le cache a été vidé."
+msgid "of"
+msgstr "sur"
+msgid "Title field"
+msgstr "Champ titre"
+msgid "translate"
+msgstr "traduire"
+msgid "No link"
+msgstr "Aucun lien"
+msgid "Is not one of"
+msgstr "Ne fait pas partie de"
+msgid "Starts with"
+msgstr "Commence par"
+msgid "Secondary tabs"
+msgstr "Onglets secondaires"
+msgid "Autocomplete"
+msgstr "Autocomplétion"
+msgid "Decimal point"
+msgstr "Marqueur décimal"
+msgid "Permanent"
+msgstr "Permanent"
+msgid "Temporary"
+msgstr "Temporaire"
+msgid "Custom date format"
+msgstr "Format de date personnalisé"
+msgid "Hide submit button"
+msgstr "Masquer le bouton de soumission"
+msgid "Is one of"
+msgstr "Fait partie de"
+msgid "Expression"
+msgstr "Expression"
+msgid "Access will be granted to users with the specified permission string."
+msgstr ""
+"L'accès sera accordé aux utilisateurs avec la chaine de permission "
+"spécifiée."
+msgid "Comma"
+msgstr "Virgule"
+msgid "Show All"
+msgstr "Montrer tous"
+msgid "Comments are responses to node content."
+msgstr "Les commentaires sont des réponses au contenu des nœuds."
+msgid "Users who have created accounts on your site."
+msgstr "Utilisateurs qui ont créé des comptes sur votre site."
+msgid "!group: !title"
+msgstr "!group : !title"
+msgid "!="
+msgstr "!="
+msgid "Is empty (NULL)"
+msgstr "Est vide (NULL)"
+msgid "not empty"
+msgstr "non vide"
+msgid "Theming information"
+msgstr "Informations de thème"
+msgid "Ends with"
+msgstr "Finit par"
+msgid "Upload date"
+msgstr "Date de transfert"
+msgid "Do not cache"
+msgstr "Ne pas mettre en cache"
+msgid "Link this field to its user"
+msgstr "Lier ce champ à l'utilisateur correspondant"
+msgid "This will override any other link you have set."
+msgstr "Ceci supplantera tout autre lien que vous avez défini."
+msgid "Overwrite the value to display for anonymous users"
+msgstr "Supplanter cette valeur à afficher pour les utilisateurs anonymes"
+msgid "Text to display for anonymous users"
+msgstr "Texte à afficher pour les utilisateurs anonymes"
+msgid "Use default RSS settings"
+msgstr "Utiliser les paramètres RSS par défaut"
+msgid "Title plus teaser"
+msgstr "Titre plus accroche"
+msgid "Front page feed"
+msgstr "Flux de la page d'accueil"
+msgid "The node ID of the node."
+msgstr "Identifiant du nœud."
+msgid "Tab weight"
+msgstr "Poids de l'onglet"
+msgid "No role"
+msgstr "Aucun rôle"
+msgid "View link"
+msgstr "Lien d'affichage"
+msgid "The size of the file."
+msgstr "La taille du fichier."
+msgid "Link this field"
+msgstr "Lier ce champ"
+msgid "Delete link"
+msgstr "Lien de suppression"
+msgid "Filter the view to the currently logged in user."
+msgstr "Filtre la vue pour montrer les utilisateurs actuellement connectés."
+msgid "Localization"
+msgstr "Traduction"
+msgid "Cache once for everything (global)"
+msgstr "Mettre en cache une fois pour tout (global)"
+msgid "Per page"
+msgstr "Par page"
+msgid "Per role"
+msgstr "Par rôle"
+msgid "Per role per page"
+msgstr "Par rôle par page"
+msgid "Per user"
+msgstr "Par utilisateur"
+msgid "Per user per page"
+msgstr "Par utilisateur par page"
+msgid "Has Avatar"
+msgstr "A un avatar"
+msgid "Capitalize first letter"
+msgstr "Mettre la première lettre en majuscule"
+msgid "Uid"
+msgstr "Uid"
+msgid "Custom text"
+msgstr "Texte personnalisé"
+msgid "Sum"
+msgstr "Somme"
+msgid "sorted by"
+msgstr "trié par"
+msgid "Not Approved"
+msgstr "Non approuvé"
+msgid "Remove group"
+msgstr "Supprimer le groupe"
+msgid "No fields available."
+msgstr "Aucun champ disponible."
+msgid "Numeric"
+msgstr "Numérique"
+msgid "Custom URL"
+msgstr "URL personnalisée"
+msgid "Edit link"
+msgstr "Lien de modification"
+msgid "Submit button text"
+msgstr "Texte du bouton de soumission"
+msgid "Add comment link"
+msgstr "Ajouter un lien de commentaire"
+msgid "Broken handler @table.@field"
+msgstr "Gestionnaire brisé @table.@field"
+msgid "Skipping broken view @view"
+msgstr "Vue brisée @view sautée"
+msgid "Ajax callback for view loading."
+msgstr "Procédure de rappel (callback) AJAX pour le chargement de la vue."
+msgid "Changes cannot be made to a locked view."
+msgstr "Aucun changement ne peut être effectué dans une vue verrouillée."
+msgid "Create customized lists and queries from your database."
+msgstr ""
+"Créez des listes et requêtes personnalisées à partir de votre base "
+"de données."
+msgid ""
+"Administrative interface to views. Without this module, you cannot "
+"create or edit your views."
+msgstr ""
+"Interface d'administration des vues. Sans ce module, vous ne pouvez "
+"pas créer ou modifier de vues."
+msgid "Broken/missing handler"
+msgstr "Gestionnaire défectueux/manquant"
+msgid ""
+"The handler for this item is broken or missing and cannot be used. If "
+"a module provided the handler and was disabled, re-enabling the module "
+"may restore it. Otherwise, you should probably delete this item."
+msgstr ""
+"Le gestionnaire de cet élément est défectueux ou absent et ne peut "
+"donc pas être utilisé. Si un module fournissant ce gestionnaire a "
+"été désactivé, sa réactivation pourrait le restaurer. Si ce n'est "
+"pas le cas, il est conseillé de supprimer cet élément."
+msgid "Current date"
+msgstr "Date actuelle"
+msgid "Current node's creation time"
+msgstr "Date de création du nœud courant"
+msgid "Current node's update time"
+msgstr "Date de mise à jour du nœud courant"
+msgid "Do not display items with no value in summary"
+msgstr "Ne pas afficher les éléments sans valeur dans le résumé"
+msgid "Invalid input"
+msgstr "Saisie invalide"
+msgid "Fail basic validation if any argument is given"
+msgstr "Faire échouer la validation de base si un argument est fourni"
+msgid ""
+"By checking this field, you can use this to make sure views with more "
+"arguments than necessary fail validation."
+msgstr ""
+"En cochant cette case, vous pouvez utiliser ceci pour vérifier que la "
+"validation des vues présentant plus d'arguments que nécessaire "
+"échoue."
+msgid "Glossary mode"
+msgstr "Mode glossaire"
+msgid "Character limit"
+msgstr "Limite de caractères"
+msgid "No transform"
+msgstr "Aucune transformation"
+msgid "Upper case"
+msgstr "Majuscules"
+msgid "Lower case"
+msgstr "Minuscules"
+msgid "Capitalize each word"
+msgstr "Mettre chaque mot en majuscules"
+msgid "Case in path"
+msgstr "Casse dans les chemins"
+msgid "Transform spaces to dashes in URL"
+msgstr "Transformer les espaces en tirets dans les URL"
+msgid "Exclude from display"
+msgstr "Exclure de l'affichage"
+msgid "Rewrite the output of this field"
+msgstr "Réécrire la sortie de ce champ"
+msgid ""
+"The text to display for this field. You may include HTML. You may "
+"enter data from this view as per the \"Replacement patterns\" below."
+msgstr ""
+"Texte à afficher pour ce champ. Vous pouvez utiliser du HTML. Vous "
+"pouvez entrer des données utilisées par cette vue à l'aide des "
+"jetons ci-dessous."
+msgid "Output this field as a link"
+msgstr "Afficher ce champ en tant que lien"
+msgid ""
+"If checked, this field will be made into a link. The destination must "
+"be given below."
+msgstr ""
+"Si coché, ce champ sera transformé en lien. La destination doit "
+"être indiquée ci-dessous."
+msgid "Link path"
+msgstr "Chemin du lien"
+msgid ""
+"The Drupal path or absolute URL for this link. You may enter data from "
+"this view as per the \"Replacement patterns\" below."
+msgstr ""
+"Le chemin Drupal ou une URL absolue pour ce lien. Vous pouvez utiliser "
+"des données de cette vue avec les \"Motifs de remplacement\" "
+"ci-dessous."
+msgid "The CSS class to apply to the link."
+msgstr "La classe CSS à appliquer au lien."
+msgid "Prefix text"
+msgstr "Texte de préfixe"
+msgid "Any text to display before this link. You may include HTML."
+msgstr ""
+"N'importe quel texte à afficher avant ce lien. Vous pouvez utiliser "
+"du HTML."
+msgid "Suffix text"
+msgstr "Texte de suffixe"
+msgid "Any text to display after this link. You may include HTML."
+msgstr ""
+"N'importe quel texte à afficher après ce lien. Vous pouvez utiliser "
+"du HTML."
+msgid ""
+"<p>You must add some additional fields to this display before using "
+"this field. These fields may be marked as <em>Exclude from "
+"display</em> if you prefer. Note that due to rendering order, you "
+"cannot use fields that come after this field; if you need a field not "
+"listed here, rearrange your fields.</p>"
+msgstr ""
+"<p>Vous devez ajouter des champ additionnels avant d'utiliser ce "
+"champ. Ces champs peuvent être défini en <em>Ne pas afficher</em> si "
+"vous le souhaitez. Notez qu'à cause de l'ordre d'affichage, vous ne "
+"pouvez pas utiliser des champs qui viennent après celui-ci&nbsp;; si "
+"vous avez besoin d'un champ qui n'est pas listé ici, réarrangez vos "
+"champs.</p>"
+msgid "Trim this field to a maximum length"
+msgstr "Restreindre ce champ à une taille maximale"
+msgid "Trim only on a word boundary"
+msgstr "Couper sur une frontière de mot"
+msgid ""
+"If checked, this field be trimmed only on a word boundary. This is "
+"guaranteed to be the maximum characters stated or less. If there are "
+"no word boundaries this could trim a field to nothing."
+msgstr ""
+"Si coché, ce champ sera coupé sur un mot entier. Il est garanti que "
+"le maximum de caractères ou moins sera utilisé. S'il n'est pas "
+"possible de se limiter à un mot entier, alors le champ sera limité "
+"à un champ vide."
+msgid "Add an ellipsis"
+msgstr "Ajoute une ellipse"
+msgid "If checked, a \"...\" will be added if a field was trimmed."
+msgstr ""
+"Si coché, des points de suspension (...) seront ajoutés si le champ "
+"est coupé."
+msgid "Strip HTML tags"
+msgstr "Retirer les balises HTML"
+msgid "If checked, all HTML tags will be stripped."
+msgstr "Si coché, toutes les balises HTML seront retirées."
+msgid "Field can contain HTML"
+msgstr "Le champ peut contenir du HTML"
+msgid ""
+"If checked, HTML corrector will be run to ensure tags are properly "
+"closed after trimming."
+msgstr ""
+"Si coché, le correcteur HTML vérifiera que les balises sont bien "
+"fermées après la réduction du champ."
+msgid "File size display"
+msgstr "Affichage de la taille de fichier"
+msgid "Formatted (in KB or MB)"
+msgstr "Formatée (en Ko ou Mo)"
+msgid "Raw bytes"
+msgstr "Octets bruts"
+msgid "If checked, true will be displayed as false."
+msgstr "Si cette option est cochée, Vrai apparaîtra comme Faux."
+msgid "Time ago (with \"ago\" appended)"
+msgstr "Temps relatif (avec \"il y a\" ajouté)"
+msgid "Time span (with \"ago/hence\" appended)"
+msgstr "Durée (avec \"il y a/dans\" ajouté)"
+msgid "Round"
+msgstr "Arrondi"
+msgid "If checked, the number will be rounded."
+msgstr "Si cette option est cochée, le nombre sera arrondi."
+msgid "Specify how many digits to print after the decimal point."
+msgstr ""
+"Précisez le nombre de chiffres à afficher après le marqueur "
+"décimal."
+msgid "What single character to use as a decimal point."
+msgstr "Caractère à utiliser comme marqueur décimal"
+msgid "What single character to use as the thousands separator."
+msgstr "Caractère à utiliser comme séparateur de milliers."
+msgid "Text to put before the number, such as currency symbol."
+msgstr ""
+"Texte à faire figurer avant le nombre, par exemple une unité "
+"monétaire."
+msgid "Text to put after the number, such as currency symbol."
+msgstr ""
+"Texte à faire figurer après le nombre, par exemple une unité "
+"monétaire."
+msgid "Simple separator"
+msgstr "Séparateur simple"
+msgid "Display as link"
+msgstr "Afficher comme lien"
+msgid "Operator identifier"
+msgstr "Identifiant de l'opérateur"
+msgid "This will appear in the URL after the ? to identify this operator."
+msgstr ""
+"Ceci apparaîtra dans l'URL après le point d'interrogation ? pour "
+"identifier cet opérateur."
+msgid "Filter identifier"
+msgstr "Identifiant du filtre"
+msgid ""
+"This will appear in the URL after the ? to identify this filter. "
+"Cannot be blank."
+msgstr ""
+"Ceci apparaîtra dans l'URL après le ? pour identifier ce filtre. Ne "
+"peut pas être vide."
+msgid ""
+"This exposed filter is optional and will have added options to allow "
+"it not to be set."
+msgstr ""
+"Ce filtre exposé est facultatif et proposera des options "
+"supplémentaires pour permettre de ne pas le paramétrer."
+msgid "Remember"
+msgstr "Mémoriser"
+msgid "Remember the last setting the user gave this filter."
+msgstr ""
+"Mémoriser le dernier paramétrage utilisé par l'utilisateur pour ce "
+"filtre."
+msgid "The identifier is required if the filter is exposed."
+msgstr "Cet identifiant est requis si le filtre est exposé."
+msgid "This identifier is not allowed."
+msgstr "Cet identifiant n'est pas autorisé."
+msgid "- Any -"
+msgstr "- Tout -"
+msgid "exposed"
+msgstr "exposé"
+msgid "Value type"
+msgstr "Type de valeur"
+msgid ""
+"A date in any machine readable format. CCYY-MM-DD HH:MM:SS is "
+"preferred."
+msgstr ""
+"Date dans n'importe quel format machine. AAAA-MM-JJ HH:MM:SS est "
+"préférable"
+msgid "Invalid date format."
+msgstr "Format de date invalide."
+msgid "Limit list to selected items"
+msgstr "Limiter la liste aux éléments sélectionnés"
+msgid ""
+"If checked, the only items presented to the user will be the ones "
+"selected here."
+msgstr ""
+"Si coché, les seuls éléments présentés à l'utilisateur seront "
+"ceux sélectionnés ici."
+msgid "not in"
+msgstr "pas dans"
+msgid "<>"
+msgstr "<>"
+msgid "Is all of"
+msgstr "Tout parmi"
+msgid "Is none of"
+msgstr "Aucun parmi"
+msgid "not"
+msgstr "pas"
+msgid "<"
+msgstr "<"
+msgid "<="
+msgstr "<="
+msgid ">="
+msgstr ">="
+msgid ">"
+msgstr ">"
+msgid "Is between"
+msgstr "Est compris entre"
+msgid "between"
+msgstr "entre"
+msgid "Is not between"
+msgstr "N'est pas compris entre"
+msgid "not between"
+msgstr "pas entre"
+msgid "Min"
+msgstr "Min"
+msgid "And max"
+msgstr "Et max"
+msgid "And"
+msgstr "Et"
+msgid "Contains any word"
+msgstr "Contient n'importe quel mot"
+msgid "has word"
+msgstr "contient le mot"
+msgid "Contains all words"
+msgstr "Contient tous les mots"
+msgid "has all"
+msgstr "contient tous"
+msgid "begins"
+msgstr "commence"
+msgid "ends"
+msgstr "finit"
+msgid "!has"
+msgstr "!has"
+msgid "Require this relationship"
+msgstr "Exiger cette relation"
+msgid "asc"
+msgstr "asc"
+msgid "desc"
+msgstr "desc"
+msgid ""
+"The granularity is the smallest unit to use when determining whether "
+"two dates are the same; for example, if the granularity is \"Year\" "
+"then all dates in 1999, regardless of when they fall in 1999, will be "
+"considered the same date."
+msgstr ""
+"La granularité est la plus petite unité à utiliser pour déterminer "
+"si deux dates sont identiques ; par exemple, si la granularité est "
+"\"Année\", toutes les dates de l'année 1999, indépendamment du mois "
+"et du jour, seront considérées comme identiques."
+msgid "Broken"
+msgstr "Brisé"
+msgid "Displays"
+msgstr "Affichages"
+msgid "These queries were run during view rendering:"
+msgstr ""
+"Ces requêtes ont été exécutées lors de l'affichage de la "
+"vue&nbsp;:"
+msgid "[@time ms]"
+msgstr "[@time ms]"
+msgid "This display has no path."
+msgstr "Cet affichage n'a pas de chemin"
+msgid "Query build time"
+msgstr "Durée de construction de la requête"
+msgid "@time ms"
+msgstr "@time ms"
+msgid "Query execute time"
+msgstr "Durée d'exécution de la requête"
+msgid "View render time"
+msgstr "Durée de rendu de la vue"
+msgid "No query was run"
+msgstr "Aucune requête n'a été exécutée"
+msgid "Unable to preview due to validation errors."
+msgstr "Impossible de prévisualiser à cause d'erreurs de validation."
+msgid "View name"
+msgstr "Nom de la vue"
+msgid "View description"
+msgstr "Description de la vue"
+msgid ""
+"This description will appear on the Views administrative UI to tell "
+"you what the view is about."
+msgstr ""
+"Cette description apparaîtra dans l'interface utilisateur "
+"d'administration de Views pour vous indiquer l'objet de cette vue."
+msgid "View tag"
+msgstr "Étiquette de la vue"
+msgid "The view has been deleted."
+msgstr "La vue a été supprimée."
+msgid "Are you sure you want to break the lock on view %name?"
+msgstr ""
+"Êtes-vous sûr(e) de vouloir faire sauter le verrou sur la vue %name "
+"?"
+msgid "By breaking this lock, any unsaved changes made by !user will be lost!"
+msgstr ""
+"En faisant sauter ce verrou, toutes les modifications réalisées par "
+"!user et non encore enregistrées seront perdues !"
+msgid "Break lock"
+msgstr "Rompre le verrou"
+msgid "The lock has been broken and you may now edit this view."
+msgstr "Le verrou a été cassé, vous pouvez maintenant modifier cette vue."
+msgid ""
+"Enter the name to use for this view if it is different from the source "
+"view. Leave blank to use the name of the view."
+msgstr ""
+"Saisissez le nom à utiliser pour cette vue s'il diffère de la vue "
+"source. Laissez vide pour utiliser le nom de la vue."
+msgid "Paste view code here"
+msgstr "Copiez le code de la vue ici"
+msgid "Unable to interpret view code."
+msgstr "Impossible d'interpréter le code de la vue."
+msgid "A view by that name already exists; please choose a different name"
+msgstr ""
+"Une vue portant ce nom existe déjà&nbsp;; merci de choisir un nom "
+"différent."
+msgid "Display plugin @plugin is not available."
+msgstr "Le plugin d'affichage @plugin n'est pas disponible."
+msgid "Style plugin @plugin is not available."
+msgstr "Le plugin de style @plugin n'est pas disponible."
+msgid "Row plugin @plugin is not available."
+msgstr "Le plugin de ligne @plugin n'est pas disponible."
+msgid "@type handler @table.@field is not available."
+msgstr "Le handler de type @type @table.@field n'est pas disponible."
+msgid "Unable to import view."
+msgstr "Impossible d'importer la vue"
+msgid "Click on an item to edit that item's details."
+msgstr "Cliquez sur un élément pour modifier ses détails."
+msgid "Go to the real page for this display"
+msgstr "Aller à la vraie page de cet affichage"
+msgid "Invalid"
+msgstr "Invalide"
+msgid "Missing style plugin"
+msgstr "Plugin de style manquant"
+msgid "Change settings for this style"
+msgstr "Modifier les paramètres pour ce style"
+msgid "View analysis"
+msgstr "Analyse de la vue"
+msgid "Configure @type"
+msgstr "Configurer @type"
+msgid "Rearrange @type"
+msgstr "Réordonner @type"
+msgid "Broken field @id"
+msgstr "Champ @id brisé"
+msgid "There are no @types available to add."
+msgstr "Il n'y a aucun @types disponible à ajouter."
+msgid "Configure extra settings for @type %item"
+msgstr "Configurer des paramètres supplémentaires pour @type %item"
+msgid "Configure summary style for @type %item"
+msgstr "Configurer le style de sommaire pour @type %item"
+msgid "Clear Views' cache"
+msgstr "Vider le cache de Views"
+msgid "Add Views signature to all SQL queries"
+msgstr "Ajouter la signature Views à toutes les requêtes SQL"
+msgid "Disable views data caching"
+msgstr "Désactiver la mise en cache des données Views"
+msgid ""
+"Views caches data about tables, modules and views available, to "
+"increase performance. By checking this box, Views will skip this cache "
+"and always rebuild this data when needed. This can have a serious "
+"performance impact on your site."
+msgstr ""
+"Views met en cache des données relatives aux tables, aux modules et "
+"aux vues disponibles afin d'améliorer les performances. En cochant "
+"cette case, vous obligez Views à sauter cette mise en cache et à "
+"reconstruire systématiquement la base de données dès que "
+"nécessaire. Cela peut avoir un impact important sur les performances "
+"de votre site."
+msgid "Show other queries run during render during live preview"
+msgstr ""
+"Afficher les autres requêtes exécutées pendant l'affichage de "
+"l'aperçu en temps réel"
+msgid ""
+"Drupal has the potential to run many queries while a view is being "
+"rendered. Checking this box will display every query run during view "
+"render as part of the live preview."
+msgstr ""
+"Drupal a la possibilité d'exécuter beaucoup de requêtes pendant "
+"qu'une vue est exécutée. Cocher cette case affichera toutes les "
+"requêtes exécutées lors de l'exécution de la vue en mode aperçu "
+"temps réel."
+msgid "Error: missing @component"
+msgstr "Erreur : @component manquant"
+msgid "View analysis can find nothing to report."
+msgstr "L'analyse de la vue n'a rien trouvé à signaler."
+msgid ""
+"This view has only a default display and therefore will not be placed "
+"anywhere on your site; perhaps you want to add a page or a block "
+"display."
+msgstr ""
+"Cette vue ne possède qu'un affichage par défaut et, par conséquent, "
+"n'apparaîtra nulle part sur votre site ; peut-être devrez-vous "
+"ajouter un affichage de page ou de bloc."
+msgid "Reduce duplicates"
+msgstr "Supprimer les doublons"
+msgid "Default settings for this view."
+msgstr "Paramètres par défaut pour cette vue."
+msgid "Display the view as a page, with a URL and menu links."
+msgstr "Afficher la vue en tant que page, avec une URL et des liens de menu."
+msgid "Display the view as a block."
+msgstr "Afficher la vue en tant que bloc."
+msgid ""
+"Attachments added to other displays to achieve multiple views in the "
+"same view."
+msgstr ""
+"Fichiers attachés à d'autres affichages pour parvenir à plusieurs "
+"vues à l'intérieur de la même vue."
+msgid "Display the view as a feed, such as an RSS feed."
+msgstr "Afficher la vue en tant que flux, par exemple un flux RSS."
+msgid "Displays rows one after another."
+msgstr "Afficher les lignes les unes après les autres."
+msgid "Displays rows as an HTML list."
+msgstr "Affiche les lignes sous forme de liste HTML."
+msgid "Displays rows in a grid."
+msgstr "Affiche les lignes dans une grille."
+msgid "Displays rows in a table."
+msgstr "Afficher les lignes dans un tableau."
+msgid "Displays the default summary as a list."
+msgstr "Affiche le sommaire par défaut comme une liste."
+msgid ""
+"Displays the summary unformatted, with option for one after another or "
+"inline."
+msgstr ""
+"Affiche le sommaire sans mise en forme, les informations apparaissant, "
+"soit les unes après les autres, soit en ligne."
+msgid "Generates an RSS feed from a view."
+msgstr "Génère un flux RSS à partir d'une vue."
+msgid "Displays the fields with an optional template."
+msgstr "Affiche les champs avec un template facultatif."
+msgid "Will be available to all users."
+msgstr "Sera disponible pour l'ensemble des utilisateurs."
+msgid "Access will be granted to users with any of the specified roles."
+msgstr ""
+"L'accès sera accordé aux utilisateurs ayant n'importe lequel des "
+"rôles spécifiés."
+msgid "No caching of Views data."
+msgstr "Pas de mise en cache des données Views."
+msgid "Time-based"
+msgstr "En fonction du temps écoulé"
+msgid "Simple time-based caching of data."
+msgstr "Mise en cache simple en fonction du temps écoulé"
+msgid "sort criteria"
+msgstr "critères de tri"
+msgid "Sort criterion"
+msgstr "Critère de tri"
+msgid "sort criterion"
+msgstr "critère de tri"
+msgid "Aggregator items are imported from external RSS and Atom news feeds."
+msgstr ""
+"Les éléments d'agrégateur sont importés depuis des flux RSS et "
+"Atom externes."
+msgid "The title of the aggregator item."
+msgstr "Le titre de l'élément d'agrégateur."
+msgid "The link to the original source URL of the item."
+msgstr "Lien vers l'URL source de l'élément."
+msgid "The author of the original imported item."
+msgstr "Auteur de l'élément importé."
+msgid "The actual content of the imported item."
+msgstr "Le contenu de l'élément importé."
+msgid ""
+"The date the original feed item was posted. (With some feeds, this "
+"will be the date it was imported.)"
+msgstr ""
+"Date de la publication de l'élément du flux. (Dans certains cas, il "
+"peut s'agir de la date d'importation du flux.)"
+msgid "Feed ID"
+msgstr "Identifiant du flux"
+msgid "The unique ID of the aggregator feed."
+msgstr "L'identifiant unique du flux d'agrégateur."
+msgid "The title of the aggregator feed."
+msgstr "Le titre du flux d'agrégateur."
+msgid "The link to the source URL of the feed."
+msgstr "Le URL source du flux."
+msgid "The date the feed was last checked for new content."
+msgstr "La date à laquelle le flux a été vérifié pour la dernière fois."
+msgid "The description of the aggregator feed."
+msgstr "La description du flux d'agrégateur."
+msgid "The unique ID of the aggregator category."
+msgstr "L'identifiant unique de la catégorie d'agrégateur."
+msgid "The title of the aggregator category."
+msgstr "Le titre de la catégorie d'agrégateur."
+msgid "Display the aggregator item using the data from the original source."
+msgstr ""
+"Affiche l'élément d'agrégateur en utilisant les données de la "
+"source originale."
+msgid "The book the node is in."
+msgstr "Le livre dans lequel le nœud est."
+msgid "The weight of the book page."
+msgstr "Le poids de la page de livre."
+msgid ""
+"The depth of the book page in the hierarchy; top level books have a "
+"depth of 1."
+msgstr ""
+"La profondeur de la page de livre dans la hiérarchie ; les livres de "
+"plus haut niveau ont une profondeur de 1."
+msgid "The parent book node."
+msgstr "Le nœud de livre parent."
+msgid "The title of the comment."
+msgstr "Le titre du commentaire."
+msgid "The comment ID of the field"
+msgstr "L'identifiant du commentaire du champ"
+msgid ""
+"The name of the comment's author. Can be rendered as a link to the "
+"author's homepage."
+msgstr ""
+"Le nom de l'auteur du commentaire. Peut être affiché comme un lien "
+"vers la page d'accueil de l'utilisateur."
+msgid ""
+"The website address of the comment's author. Can be rendered as a "
+"link. Will be empty if the author is a registered user."
+msgstr ""
+"L'adresse du site web de l'auteur du commentaire. Peut être affiché "
+"comme un lien. Sera vide si l'auteur est un utilisateur enregistré."
+msgid "Post date"
+msgstr "Date de publication"
+msgid "Provide a simple link to view the comment."
+msgstr "Fournir un lien pour afficher le commentaire."
+msgid "Provide a simple link to edit the comment."
+msgstr "Fournir un lien pour modifier le commentaire."
+msgid "Provide a simple link to delete the comment."
+msgstr "Fournit un lien pour supprimer le commentaire."
+msgid "The User ID of the comment's author."
+msgstr "L'identifiant utilisateur de l'auteur du commentaire."
+msgid "Parent CID"
+msgstr "Identifiant du commentaire (CID) parent"
+msgid "The Comment ID of the parent comment."
+msgstr "L'identifiant (ID) du commentaire parent."
+msgid "Last comment time"
+msgstr "Heure du dernier commentaire"
+msgid "Date and time of when the last comment was posted."
+msgstr "Date et heure de publication du dernier commentaire."
+msgid "Last comment author"
+msgstr "Auteur du dernier commentaire"
+msgid "The name of the author of the last posted comment."
+msgstr "Le nom de l'auteur ayant rédigé le dernier commentaire."
+msgid "Comment count"
+msgstr "Nombre de commentaires"
+msgid "The number of comments a node has."
+msgstr "Le nombre de commentaires que présente un nœud."
+msgid "Updated/commented date"
+msgstr "Date de mise à jour/commentaire"
+msgid "The most recent of last comment posted or node updated time."
+msgstr ""
+"L'information la plus récente entre le dernier commentaire publié et "
+"la date de dernière mise à jour du nœud."
+msgid "The number of new comments on the node."
+msgstr "Le nombre de nouveaux commentaires au sein du nœud."
+msgid "Comment status"
+msgstr "Statut du commentaire"
+msgid "Whether comments are enabled or disabled on the node."
+msgstr ""
+"Indiquer si les commentaires sont activés ou désactivés sur le "
+"nœud."
+msgid "User posted or commented"
+msgstr "Publié ou commenté par l'utilisateur"
+msgid "Display nodes only if a user posted the node or commented on the node."
+msgstr ""
+"Affiche les nœuds seulement si l'utilisateur a créé le nœud ou "
+"commenté le nœud."
+msgid "Display the comment with standard comment view."
+msgstr "Afficher le commentaire avec la vue de commentaire standard."
+msgid "Display the comment as RSS."
+msgstr "Afficher le commentaire en tant que RSS."
+msgid "Link to contact page"
+msgstr "Lien vers la page de contact"
+msgid "Provide a simple link to the user contact page."
+msgstr "Ajouter un lien vers la page de contact de l'utilisateur."
+msgid "Locale source"
+msgstr "Source de la traduction"
+msgid ""
+"A source string for translation, in English or the default site "
+"language."
+msgstr ""
+"Chaîne source de la traduction, en anglais ou dans la langue par "
+"défaut du site."
+msgid "LID"
+msgstr "LID"
+msgid "The ID of the source string."
+msgstr "Identifiant de la chaîne source."
+msgid "A description of the location or context of the string."
+msgstr "Une description de l'emplacement ou du contexte de la chaîne."
+msgid "The group the translation is in."
+msgstr "Le groupe dans lequel est la traduction."
+msgid "The full original string."
+msgstr "La chaîne d'origine complète."
+msgid "The version of Drupal core that this string is for."
+msgstr "La version du cœur de Drupal pour cette chaîne."
+msgid "Provide a simple link to edit the translations."
+msgstr "Fournir un lien pour modifier les traductions."
+msgid "Locale target"
+msgstr "Cible de la traduction."
+msgid "The full translation string."
+msgstr "La chaîne traduite complète."
+msgid "The language this translation is in."
+msgstr "La langue de cette traduction."
+msgid "Singular LID"
+msgstr "Identifiant LID unique"
+msgid "The ID of the parent translation."
+msgstr "L'identifiant de la traduction parente."
+msgid "Whether or not the translation is plural."
+msgstr "Si la traduction est plurielle."
+msgid "Whether or not the node is published."
+msgstr "Si le nœud est publié."
+msgid "Published or admin"
+msgstr "Publié ou admin"
+msgid "Created year + month"
+msgstr "Année + mois de création"
+msgid "Created year"
+msgstr "Année de création"
+msgid "Created month"
+msgstr "Mois de création"
+msgid "Created day"
+msgstr "Jour de création"
+msgid "Created week"
+msgstr "Semaine de création"
+msgid "Updated year + month"
+msgstr "Année et mois de mise à jour"
+msgid "Updated year"
+msgstr "Année de mise à jour"
+msgid "Updated month"
+msgstr "Mois de mise à jour"
+msgid "Updated day"
+msgstr "Jour de mise à jour"
+msgid "Updated week"
+msgstr "Semaine de mise à jour"
+msgid "Vid"
+msgstr "Vid"
+msgid "The log message entered when the revision was created."
+msgstr ""
+"Le message enregistré dans le journal à la création de la "
+"révision."
+msgid "Revert link"
+msgstr "Lien de retour arrière"
+msgid "Provide a simple link to revert to the revision."
+msgstr "Fournir un lien pour rétablir une révision antérieure."
+msgid "Filter by access."
+msgstr "Filtrer par accès."
+msgid "Has new content"
+msgstr "Présente des contenus nouveaux"
+msgid ""
+"Display %display has no access control but does not contain a filter "
+"for published nodes."
+msgstr ""
+"L'affichage @display ne présente aucun contrôle d'accès mais il ne "
+"contient pas de filtre pour les nœuds publiés."
+msgid "Poll"
+msgstr "Sondage"
+msgid "Whether the poll is open for voting."
+msgstr "Indique si le sondage enregistre toujours les votes."
+msgid "Profile textfield"
+msgstr "Champ de texte de profil"
+msgid "Profile textarea"
+msgstr "Zone de texte de profil"
+msgid "Profile checkbox"
+msgstr "Case à cocher de profil"
+msgid "Profile URL"
+msgstr "URL de profil"
+msgid "Profile selection"
+msgstr "Sélection de profil"
+msgid "Profile freeform list %field-name."
+msgstr "Liste libre de profil %field-name."
+msgid "Profile date %field-name."
+msgstr "Date de profil %field-name."
+msgid ""
+"The score of the search item. This will not be used if the search "
+"filter is not also present."
+msgstr ""
+"Le score du terme de recherche. Ceci ne sera pas utilisé si le filtre "
+"de recherche n'est pas présent lui aussi."
+msgid "Links from"
+msgstr "Liens en provenance de"
+msgid "Other nodes that are linked from the node."
+msgstr "Autres nœuds qui sont liés au nœud."
+msgid "Links to"
+msgstr "Liens vers"
+msgid "Other nodes that link to the node."
+msgstr "Autres nœuds qui pointent vers le nœud."
+msgid "Search Terms"
+msgstr "Termes de recherche"
+msgid "The terms to search for."
+msgstr "Termes à rechercher."
+msgid "Display the results with standard search view."
+msgstr "Afficher les résultats avec la vue de recherche standard."
+msgid "Total views"
+msgstr "Nombre total d'affichages"
+msgid "The total number of times the node has been viewed."
+msgstr "Le nombre total d'affichages du nœud."
+msgid "Views today"
+msgstr "Affichages aujourd'hui"
+msgid "The total number of times the node has been viewed today."
+msgstr "Le nombre total d'affichages du nœud aujourd'hui."
+msgid "Most recent view"
+msgstr "Dernier affichage"
+msgid "The most recent time the node has been viewed."
+msgstr "Date de dernier affichage du nœud."
+msgid "Stores site access information."
+msgstr "Enregistre les informations relatives à l'accès au site."
+msgid "Browser session ID of user that visited page."
+msgstr ""
+"Identifiant de session du navigateur pour l'utilisateur ayant "
+"consulté cette page."
+msgid "Title of page visited."
+msgstr "Titre de la page consultée."
+msgid "Internal path to page visited (relative to Drupal root.)"
+msgstr "Chemin interne vers la page visitée (relatif à la racine de Drupal)."
+msgid "Referrer URI."
+msgstr "URI référent."
+msgid "Hostname of user that visited the page."
+msgstr "Nom d'hôte de l'utilisateur ayant consulté la page."
+msgid "The user who visited the site."
+msgstr "L'utilisateur ayant visité le site."
+msgid "Time in milliseconds that the page took to load."
+msgstr "Temps de chargement de la page en millisecondes."
+msgid "Timestamp of when the page was visited."
+msgstr "Tampon d'horodatage de la dernière visite de la page."
+msgid "Files maintained by Drupal and various modules."
+msgstr "Fichiers maintenus par Drupal et différents modules."
+msgid "The ID of the file."
+msgstr "Identifiant du fichier."
+msgid "The name of the file."
+msgstr "Le nom du fichier."
+msgid "The path of the file."
+msgstr "Le chemin du fichier."
+msgid "The mime type of the file."
+msgstr "Le type MIME du fichier."
+msgid "The status of the file."
+msgstr "Le statut du fichier."
+msgid "The date the file was uploaded."
+msgstr "La date de transfert du fichier."
+msgid ""
+"Name of the vocabulary a term is a member of. This will be the "
+"vocabulary that whichever term the \"Taxonomy: Term\" field is; and "
+"can similarly cause duplicates."
+msgstr ""
+"Nom du vocabulaire dont le terme fait partie. C'est le vocabulaire "
+"correspondant au terme du champ \"Taxonomie : Terme\" et peut, de "
+"façon similaire, générer des doublons."
+msgid "Taxonomy terms are attached to nodes."
+msgstr "Les termes de taxonomie sont rattachés aux nœuds."
+msgid "Taxonomy term name."
+msgstr "Nom du terme de taxonomie."
+msgid "The term weight field"
+msgstr "Champ du poids du terme"
+msgid "The description associated with a taxonomy term."
+msgstr "La description associée à un terme de classification."
+msgid "Filter the results of \"Taxonomy: Term\" to a particular vocabulary."
+msgstr ""
+"Filtrer les résultats de \"Taxonomie : Terme\" dans un vocabulaire "
+"spécifique."
+msgid ""
+"Display all taxonomy terms associated with a node from specified "
+"vocabularies."
+msgstr ""
+"Afficher tous les termes de taxonomie associés à un nœud depuis les "
+"vocabulaires spécifiés."
+msgid ""
+"The parent term of the term. This can produce duplicate entries if you "
+"are using a vocabulary that allows multiple parents."
+msgstr ""
+"Le terme parent du terme. Ceci peut produire des doublons si vous "
+"utilisez un vocabulaire qui autorise plusieurs parents."
+msgid "The parent term of the term."
+msgstr "Le terme parent du terme."
+msgid "Node translation"
+msgstr "Traduction du nœud"
+msgid "Translation set node ID"
+msgstr "L'identifiant du jeu de traductions du nœud"
+msgid "The ID of the translation set the content belongs to."
+msgstr "L'identifiant du jeu de traductions auquel le contenu appartient."
+msgid "Source translation"
+msgstr "Source de la traduction"
+msgid "The source that this content was translated from."
+msgstr "La source depuis laquelle ce contenu a été traduit."
+msgid "Versions of content in different languages."
+msgstr "Versions du contenu dans des langues différentes."
+msgid "Child translation"
+msgstr "Traduction enfant."
+msgid "Outdated"
+msgstr "Obsolète"
+msgid "The user ID"
+msgstr "Identifiant (ID) de l'utilisateur"
+msgid "The user or author name."
+msgstr "Le nom de l'utilisateur ou de l'auteur."
+msgid ""
+"Email address for a given user. This field is normally not shown to "
+"users, so be cautious when using it."
+msgstr ""
+"Adresse de courriel d'un utilisateur donné. Ce champ n'est "
+"normalement pas montré aux utilisateurs, soyez donc prudent quand "
+"vous l'utilisez."
+msgid "Language of the user"
+msgstr "Langue de l'utilisateur"
+msgid "The user's picture, if allowed."
+msgstr "Portrait de l'utilisateur, si autorisé."
+msgid "The date the user was created."
+msgstr "Date de création de l'utilisateur."
+msgid "The user's last access date."
+msgstr "La date de dernier accès de l'utilisateur."
+msgid "The user's last login date."
+msgstr "La date de dernière connexion de l'utilisateur."
+msgid "Whether a user is active or blocked."
+msgstr "Indique si un utilisateur est actif ou bloqué."
+msgid "The user's signature."
+msgstr "La signature de l'utilisateur."
+msgid "Provide a simple link to edit the user."
+msgstr "Fournir un lien pour modifier l'utilisateur."
+msgid "Roles that a user belongs to."
+msgstr "Rôles auxquels appartient un utilisateur."
+msgid "User ID from URL"
+msgstr "Identifiant (ID) utilisateur à partir de l'URL"
+msgid "User ID from logged in user"
+msgstr "Identifiant (ID) utilisateur de l'utilisateur connecté"
+msgid "Randomize the display order."
+msgstr "Rendre l'ordre d'affichage aléatoire."
+msgid "Null"
+msgstr "Vide"
+msgid "Provide custom text or link."
+msgstr "Fournir un texte personnalisé ou un lien."
+msgid "View result counter"
+msgstr "Compteur de résultats de la vue"
+msgid "Displays the actual position of the view result"
+msgstr "Afficher la position actuelle du résultat de la vue"
+msgid "Link this field to its aggregator category page"
+msgstr "Lier ce champ à sa page de catégorie d'agrégateur"
+msgid "No user"
+msgstr "Aucun utilisateur"
+msgid "Link this field to its comment"
+msgstr "Lier ce champ à son commentaire"
+msgid "Show teaser-style link"
+msgstr "Afficher un lien résumé"
+msgid "Link this field to new comments"
+msgstr "Lier ce champ aux nouveaux commentaires"
+msgid "contact"
+msgstr "contact"
+msgid "Contact %user"
+msgstr "Contacter %user"
+msgid "Unknown group"
+msgstr "Groupe inconnu"
+msgid "Unknown language"
+msgstr "Langue inconnue"
+msgid "Current user's language"
+msgstr "Langue de l'utilisateur actuel"
+msgid "Default site language"
+msgstr "Langue par défaut du site"
+msgid "No language"
+msgstr "Pas de langue"
+msgid "Current installed version"
+msgstr "Version installée actuellement"
+msgid "Check for new comments as well"
+msgstr "Vérifier aussi la présence de nouveaux commentaires"
+msgid "Node IDs separated by , or +"
+msgstr "Identifiants des nœuds séparés par des virgules ou des +"
+msgid "No alternate"
+msgstr "Pas d'alternance"
+msgid "Alternative sort"
+msgstr "Tri alternatif"
+msgid "Alternate sort order"
+msgstr "Alterner l'ordre du tri"
+msgid "On empty input"
+msgstr "En cas de saisie vide"
+msgid "Show None"
+msgstr "Montrer aucun"
+msgid "Display score"
+msgstr "Afficher le score"
+msgid "Link this field to download the file"
+msgstr "Liez ce champ pour télécharger le fichier"
+msgid "Set the breadcrumb for the term parents"
+msgstr "Faire apparaître les parents du terme dans le fil d'Ariane"
+msgid ""
+"If selected, the breadcrumb trail will include all parent terms, each "
+"one linking to this view. Note that this only works if just one term "
+"was received."
+msgstr ""
+"Si cette option est sélectionnée, le fil d'Ariane inclura tous les "
+"termes parents, chacun comportant un lien vers cette vue. Notez que "
+"cela fonctionne uniquement si un seul terme a été reçu."
+msgid ""
+"The depth will match nodes tagged with terms in the hierarchy. For "
+"example, if you have the term \"fruit\" and a child term \"apple\", "
+"with a depth of 1 (or higher) then filtering for the term \"fruit\" "
+"will get nodes that are tagged with \"apple\" as well as \"fruit\". If "
+"negative, the reverse is true; searching for \"apple\" will also pick "
+"up nodes tagged with \"fruit\" if depth is -1 (or lower)."
+msgstr ""
+"La profondeur assurera la correspondance avec les nœuds étiquetés "
+"par des termes de la hiérarchie. Si, par exemple, vous avez le terme "
+"\"fruit\" et le terme enfant \"pomme\", avec une profondeur de 1 ou "
+"plus, alors un filtrage sur le terme \"fruit\" renverra des nœuds "
+"étiquetés par \"pomme\" aussi bien que par \"fruit\". Si la "
+"profondeur est négative, l'inverse est également vrai : rechercher "
+"\"pomme\" avec une profondeur de -1 (ou moins) renverra également les "
+"nœuds étiquetés par \"fruit\"."
+msgid "No vocabulary"
+msgstr "Aucun vocabulaire"
+msgid "Link this field to its taxonomy term page"
+msgstr "Lier ce champ vers la page de terme de classification correspondante"
+msgid "Link this field to its term page"
+msgstr "Lier ce champ vers la page de terme correspondante"
+msgid "Limit terms by vocabulary"
+msgstr "Limiter les termes par vocabulaire"
+msgid "Select which vocabulary to show terms for in the regular options."
+msgstr ""
+"Sélectionnez le vocabulaire pour lequel montrer les termes dans les "
+"options normales."
+msgid "Dropdown"
+msgstr "Liste déroulante"
+msgid "Show hierarchy in dropdown"
+msgstr "Montrer la hiérarchie dans la liste déroulante"
+msgid "An invalid vocabulary is selected. Please change it in the options."
+msgstr ""
+"Un vocabulaire invalide a été sélectionné. Merci de le modifier "
+"dans les options."
+msgid "Select terms from vocabulary @voc"
+msgstr "Sélectionner les termes dans le vocabulaire @voc"
+msgid "Select terms"
+msgstr "Sélectionner les termes"
+msgid "Unable to find term: @terms"
+msgid_plural "Unable to find terms: @terms"
+msgstr[0] "Impossible de trouver le terme @terms"
+msgstr[1] "Impossible de trouver les termes @terms"
+msgid ""
+"If you wish to validate for specific vocabularies, check them; if none "
+"are checked, all terms will pass."
+msgstr ""
+"Si vous souhaitez valider des vocabulaires spécifiques, cochez "
+"les&nbsp;; si aucun n'est coché, tous les termes passeront la "
+"validation."
+msgid "Term IDs separated by , or +"
+msgstr "Identifiants de termes, séparés par des virgules ou des +"
+msgid "Current language"
+msgstr "Langage actuel"
+msgid "Translation option"
+msgstr "Option de traduction"
+msgid ""
+"The translation options allows you to select which translation or "
+"translations in a translation set join on. Select \"Current language\" "
+"or \"Default language\" to join on the translation in the current or "
+"default language respectively. Select a specific language to join on a "
+"translation in that language. If you select \"All\", each translation "
+"will create a new row, which may appear to cause duplicates."
+msgstr ""
+"Les options de traduction vous permettent de sélectionner les "
+"traductions dans un jeu de traduction à ajouter. Sélectionnez "
+"\"Langage actuel\" ou \"Langage par défaut\" pour ajouter la "
+"traduction respectivement dans le langage actuel ou par défaut. "
+"Sélectionnez un langage spécifique pour ajouter une traduction dans "
+"ce langage. Si vous sélectionnez \"Tous\", chaque traduction créera "
+"une nouvelle ligne, qui pourra causer des doublons."
+msgid "To the user"
+msgstr "Vers l'utilisateur"
+msgid "With a mailto:"
+msgstr "Avec un mailto:"
+msgid "Is the logged in user"
+msgstr "Est l'utilisateur connecté"
+msgid "Usernames"
+msgstr "Noms d'utilisateurs"
+msgid "Enter a comma separated list of user names."
+msgstr "Saisissez une liste de noms d'utilisateurs séparés par des virgules."
+msgid "Unable to find user: @users"
+msgid_plural "Unable to find users: @users"
+msgstr[0] "Impossible de trouver l'utilisateur @users"
+msgstr[1] "Impossible de trouver les utilisateurs @users"
+msgid "Also look for a node and use the node author"
+msgstr "Rechercher aussi un nœud et utiliser l'auteur du nœud"
+msgid "Only allow numeric UIDs"
+msgstr "N'autoriser que les UID numériques"
+msgid "Only allow string usernames"
+msgstr "N'autorise que les chaînes de noms d'utilisateur"
+msgid "Allow both numeric UIDs and string usernames"
+msgstr "Autoriser à la fois les UIDs numériques et les noms d'utilisateurs"
+msgid "Restrict user based on role"
+msgstr "Restreindre l'utilisateur en se basant sur le rôle"
+msgid "Restrict to the selected roles"
+msgstr "Restreindre aux rôles sélectionnés"
+msgid "If no roles are selected, users from any role will be allowed."
+msgstr ""
+"Si aucun rôle n'est sélectionné, les utilisateurs de n'importe quel "
+"rôle seront autorisés."
+msgid "Unrestricted"
+msgstr "Libre"
+msgid ""
+"Only users with the selected permission flag will be able to access "
+"this display. Note that users with \"access all views\" can see any "
+"view, regardless of other permissions."
+msgstr ""
+"Seuls les utilisateurs disposant du droit d'accès approprié pourront "
+"accéder à cet affichage. Notez que les utilisateurs disposant des "
+"droits \"accéder à toutes les vues\" pourront consulter toutes les "
+"vues, indépendamment des autres droits."
+msgid "No role(s) selected"
+msgstr "Pas de rôle(s) sélectionné(s)"
+msgid "Multiple roles"
+msgstr "Rôles multiples"
+msgid ""
+"Only the checked roles will be able to access this display. Note that "
+"users with \"access all views\" can see any view, regardless of role."
+msgstr ""
+"Seuls les rôles cochés seront en mesure d'accéder à cet affichage. "
+"Notez que les utilisateurs disposant des droits \"accéder à toutes "
+"les vues\" pourront consulter toutes les vues, quel que soit leur "
+"rôle."
+msgid "You must select at least one role if type is \"by role\""
+msgstr ""
+"Vous devez sélectionner au moins un rôle si le type est \"par "
+"rôle\""
+msgid "PHP validate code"
+msgstr "Code de validation PHP"
+msgid "Never cache"
+msgstr "Ne jamais mettre en cache"
+msgid "Query results"
+msgstr "Résultats de requête"
+msgid "The length of time raw query results should be cached."
+msgstr ""
+"La durée pendant laquelle les résultats bruts de la requête "
+"devraient être mis en cache."
+msgid "Rendered output"
+msgstr "Rendu de l'affichage"
+msgid "The length of time rendered HTML output should be cached."
+msgstr ""
+"La durée pendant laquelle le HTML généré devrait être mis en "
+"cache."
+msgid "Broken field"
+msgstr "Champ brisé"
+msgid "Change the title that this display will use."
+msgstr "Changer le titre que cet affichage utilisera."
+msgid "Use AJAX"
+msgstr "Utiliser AJAX"
+msgid "Change whether or not this display will use AJAX."
+msgstr "Modifier si cet affichage utilisera ou non AJAX."
+msgid "Mini"
+msgstr "Mini"
+msgid "Change this display's pager setting."
+msgstr "Modifier les paramètres de pagination de cet affichage."
+msgid "Items per page"
+msgstr "Éléments par page"
+msgid "Specify whether this display will provide a \"more\" link."
+msgstr "Spécifie si cet affichage proposera un lien \"plus\"."
+msgid "Specify access control type for this display."
+msgstr "Spécifiez le type de contrôle d'accès pour cet affichage."
+msgid "Change settings for this access type."
+msgstr "Changer les paramètres pour ce type d'accès."
+msgid "Specify caching type for this display."
+msgstr "Spécifiez le type de mise en cache pour cet affichage."
+msgid "Change settings for this caching type."
+msgstr "Changer les paramètres pour ce type de mise à jour."
+msgid "Link display"
+msgstr "Affichage de lien"
+msgid "Exposed form in block"
+msgstr "Formulaire exposé dans un bloc"
+msgid "Allow the exposed form to appear in a block instead of the view."
+msgstr ""
+"Permet au formulaire exposé d'apparaître dans un block au lieu de la "
+"vue."
+msgid "Get information on how to theme this display"
+msgstr ""
+"Obtenir des informations sur comment créer un thème pour cet "
+"affichage"
+msgid "The title of this view"
+msgstr "le titre de cette vue"
+msgid "Use AJAX when available to load this view"
+msgstr "Utiliser AJAX lorsque c'est possible pour charger cette vue"
+msgid ""
+"If set, this view will use an AJAX mechanism for paging, table sorting "
+"and exposed filters. This means the entire page will not refresh. It "
+"is not recommended that you use this if this view is the main content "
+"of the page as it will prevent deep linking to specific pages, but it "
+"is very useful for side content."
+msgstr ""
+"Si cette option est sélectionnée, cette vue utilisera un mécanisme "
+"Ajax pour la pagination, le tri des tables et les filtres exposés. "
+"Cela signifie que la page n'aura pas à se rafraîchir entièrement. "
+"Il n'est pas recommandé d'utiliser cette option si cette vue "
+"constitue le contenu principal de la page, car elle empêche les liens "
+"profonds vers des pages spécifiques ; c'est toutefois très utile "
+"pour les contenus accessoires."
+msgid ""
+"Unless you're experiencing problems with pagers related to this view, "
+"you should leave this at 0. If using multiple pagers on one page you "
+"may need to set this number to a higher value so as not to conflict "
+"within the ?page= array. Large values will add a lot of commas to your "
+"URLs, so avoid if possible."
+msgstr ""
+"À moins que vous ne rencontriez des difficultés avec la pagination "
+"associée à cette vue, vous devriez laisser cette option à 0. Si "
+"vous utilisez plusieurs paginations sur une page, vous pouvez être "
+"amené à choisir une valeur plus élevée pour ce nombre afin "
+"d'éviter tout conflit avec ?page=array. Les grandes valeurs "
+"ajouteront un grand nombre de virgules à vos URL et sont donc à "
+"éviter autant que possible."
+msgid "The number of items to display per page. Enter 0 for no limit."
+msgstr ""
+"Nombre d'éléments à afficher par page. Choisissez 0 pour un nombre "
+"illimité."
+msgid "Add a more link to the bottom of the display."
+msgstr "Ajouter un lien \"plus\" en bas de l'affichage."
+msgid "Create more link"
+msgstr "Créer un lien \"plus\""
+msgid "The text to display for the more link."
+msgstr "Le texte à afficher pour le lien \"plus\"."
+msgid ""
+"This will make the view display only distinct items. If there are "
+"multiple identical items, each will be displayed only once. You can "
+"use this to try and remove duplicates from a view, though it does not "
+"always work. Note that this can slow queries down, so use it with "
+"caution."
+msgstr ""
+"Ceci contraint la vue à ne présenter que des éléments distincts. "
+"S'il existe plusieurs éléments identiques, chacun n'apparaîtra "
+"qu'une seule fois. Vous pouvez utiliser cette option pour essayer de "
+"supprimer les doublons d'une vue, bien que cela ne fonctionne pas "
+"toujours. Notez que cela peut ralentir les requêtes, c'est donc une "
+"option à utiliser avec précautions."
+msgid "Access restrictions"
+msgstr "Restrictions d'accès"
+msgid "Access options"
+msgstr "Options d'accès"
+msgid "Caching options"
+msgstr "Options de mise en cache"
+msgid "Display even if view has no result"
+msgstr "Afficher même si la vue n'a pas de résultat"
+msgid "How should this view be styled"
+msgstr "Quel style appliquer à cette vue"
+msgid ""
+"If the style you choose has settings, be sure to click the settings "
+"button that will appear next to it in the View summary."
+msgstr ""
+"Si le style de votre choix possède des paramètres, veillez à "
+"cliquer sur le bouton de paramétrage qui apparaîtra à côté dans "
+"le résumé de la vue."
+msgid "Style options"
+msgstr "Options de style"
+msgid "Row style options"
+msgstr "Options de style de ligne"
+msgid "How should each row in this view be styled"
+msgstr "Quel style appliquer aux lignes de cette vue"
+msgid "Which display to use for path"
+msgstr "Affichage à utiliser pour le chemin"
+msgid ""
+"Which display to use to get this display's path for things like "
+"summary links, rss feed links, more links, etc."
+msgstr ""
+"Quel affichage utiliser pour obtenir le chemin de cet affichage pour "
+"des éléments du type liens de résumé, liens de flux RSS, liens "
+"\"plus\", etc."
+msgid "Display output"
+msgstr "Sortie de l'affichage"
+msgid "Alternative display output"
+msgstr "Rendu de l'affichage alternatif"
+msgid "Style output"
+msgstr "Sortie du style"
+msgid "Alternative style"
+msgstr "Style alternatif"
+msgid "Row style output"
+msgstr "Sortie du style de ligne"
+msgid "Alternative row style"
+msgstr "Style de ligne alternatif"
+msgid "Field @field (ID: @id)"
+msgstr "Champ @field (ID: @id)"
+msgid ""
+"This section lists all possible templates for the display plugin and "
+"for the style plugins, ordered roughly from the least specific to the "
+"most specific. The active template for each plugin -- which is the "
+"most specific template found on the system -- is highlighted in bold."
+msgstr ""
+"Cette section liste tous les gabarits possibles pour l'affichage et "
+"les plugins de style, triés approximativement du moins spécifique au "
+"plus spécifique. Le gabarit actif pour chaque plugin — qui est le "
+"gabarit le plus spécifique trouvé dans le système — est mis en "
+"gras."
+msgid "Change theme"
+msgstr "Changer le thème"
+msgid "Rescan template files"
+msgstr "Re-scanner les fichiers de template"
+msgid ""
+"<strong>Important!</strong> When adding, removing, or renaming "
+"template files, it is necessary to make Drupal aware of the changes by "
+"making it rescan the files on your system. By clicking this button you "
+"clear Drupal's theme registry and thereby trigger this rescanning "
+"process. The highlighted templates above will then reflect the new "
+"state of your system."
+msgstr ""
+"<strong>Important !<strong> Lors de l'ajout, de la suppression ou du "
+"renommage de fichiers de gabarit, il est nécessaire d'indiquer à "
+"Drupal vos changement en ré-analysant les fichiers de votre système. "
+"En cliquant sur ce bouton, vous videz le cache du registre de thème "
+"de Drupal et ainsi déclenchez le processus d'analyse. Les gabarits "
+"mis en gras refléteront le nouvel état du système."
+msgid "Theming information (display)"
+msgstr "Informations de thème (affichage)"
+msgid "Back to !info."
+msgstr "Revenir à !info."
+msgid "theming information"
+msgstr "informations de thème"
+msgid "This display has no theming information"
+msgstr "Cet affichage n'a aucune information de thème"
+msgid "This is the default theme template used for this display."
+msgstr ""
+"Ceci est le template de thème par défaut utilisé pour cet "
+"affichage."
+msgid "This is an alternative template for this display."
+msgstr "Ceci est un gabarit alternatif pour cet affichage."
+msgid "Theming information (style)"
+msgstr "Informations de thème (style)"
+msgid "This display has no style theming information"
+msgstr "Cet affichage n'a aucune information de thème de style"
+msgid "This is the default theme template used for this style."
+msgstr "Ceci est le template de thème par défaut utilisé pour ce style."
+msgid "This is an alternative template for this style."
+msgstr "Ceci est un gabarit alternatif pour ce style."
+msgid "Theming information (row style)"
+msgstr "Informations de thème (style de ligne)"
+msgid "This display has no row style theming information"
+msgstr "Cet affichage n'a aucune information de thème de style de ligne"
+msgid "This is the default theme template used for this row style."
+msgstr ""
+"Ceci est le template de thème par défaut utilisé pour ce style de "
+"ligne."
+msgid "This is an alternative template for this row style."
+msgstr "Ceci est un gabarit alternatif pour ce style de ligne."
+msgid "Put the exposed form in a block"
+msgstr "Mettre le formulaire exposé dans un bloc"
+msgid ""
+"If set, any exposed widgets will not appear with this view. Instead, a "
+"block will be made available to the Drupal block administration "
+"system, and the exposed form will appear there. Note that this block "
+"must be enabled manually, Views will not enable it for you."
+msgstr ""
+"Si défini, tous les widgets exposés n'apparaitront pas avec cette "
+"vue. A la place, un bloc sera disponible dans le système "
+"d'administration des blocs de Drupal, et les formulaire exposé "
+"apparaitra dans celui-ci. Notez que ce bloc doit être activé "
+"manuellement, Views ne l'activera pas pour vous."
+msgid "File found in folder @template-path"
+msgstr "fichier trouvé dans le dossier @template-path"
+msgid "(File not found, in folder @template-path)"
+msgstr "(Fichier non trouvé dans le dossier @template-path)"
+msgid ""
+"Display \"@display\" uses fields but there are none defined for it or "
+"all are excluded."
+msgstr ""
+"L'affichage \"@display\" utilise des champs, mais il n'y en a pas de "
+"défini pour lui ou ils sont tous exclus."
+msgid "Display \"@display\" uses a path but the path is undefined."
+msgstr ""
+"L'affichage \"@display\" utilise un chemin mais le chemin n'est pas "
+"défini."
+msgid "Display \"@display\" has an invalid style plugin."
+msgstr "L'affichage \"@display\" a un plugin de style invalide."
+msgid "Exposed form: @view-@display_id"
+msgstr "Formulaire exposé : @view-@display_id"
+msgid "Attachment settings"
+msgstr "Paramètres de fichiers attachés"
+msgid "Inherit exposed filters"
+msgstr "Hériter les filtres exposés"
+msgid "Multiple displays"
+msgstr "Affichages multiples"
+msgid ""
+"Should this display inherit its exposed filter values from the parent "
+"display to which it is attached?"
+msgstr ""
+"Cet affichage doit-il hériter des valeurs des filtres exposés "
+"provenant de l'affichage parent auquel il est attaché ?"
+msgid "Attach before or after the parent display?"
+msgstr "Attacher avant ou après l'affichage parent ?"
+msgid "Select which display or displays this should attach to."
+msgstr "Sélectionnez à quel(s) affichage(s) ceci doit s'attacher."
+msgid "Block admin description"
+msgstr "Description pour l'administration des blocs"
+msgid "Block caching type"
+msgstr "Type de mise en cache des blocs"
+msgid ""
+"This sets the default status for Drupal's built-in block caching "
+"method; this requires that caching be turned on in block "
+"administration, and be careful because you have little control over "
+"when this cache is flushed."
+msgstr ""
+"Ceci positionne l'état par défaut pour la méthode de mise en cache "
+"de blocs intégrée à Drupal. Ceci nécessite d'activer la mise en "
+"cache dans l'administration des blocs. Attention car vous n'avez que "
+"très peu de contrôle sur la fréquence de vidage du cache."
+msgid "Using the site name"
+msgstr "Utilise le nom du site"
+msgid "Use the site name for the title"
+msgstr "Utiliser le nom du site comme titre"
+msgid "The feed icon will be available only to the selected displays."
+msgstr ""
+"L'icône du flux ne sera disponible que pour les affichages "
+"sélectionnés."
+msgid "No menu"
+msgstr "Pas de menu"
+msgid "Normal: @title"
+msgstr "Normal : @title"
+msgid "Tab: @title"
+msgstr "Onglet : @title"
+msgid "Change settings for the parent menu"
+msgstr "Changer les paramètres pour le menu parent"
+msgid "The menu path or URL of this view"
+msgstr "Le chemin ou l'URL de menu pour cette vue"
+msgid "Menu item entry"
+msgstr "Entrée d'élément de menu"
+msgid "No menu entry"
+msgstr "Aucune entrée de menu"
+msgid "Normal menu entry"
+msgstr "Entrée de menu normale"
+msgid "Menu tab"
+msgstr "Onglet de menu"
+msgid "Default menu tab"
+msgstr "Onglet de menu par défaut"
+msgid "If set to normal or tab, enter the text to use for the menu item."
+msgstr ""
+"Si positionné à normal ou onglet, saisissez le texte à utiliser "
+"pour l'élément de menu."
+msgid ""
+"If set to normal or tab, enter the text to use for the menu item's "
+"description."
+msgstr ""
+"Si paramétré sur normal ou onglet, entrez le texte à utiliser pour "
+"la description de l'élément de menu."
+msgid "Insert item into an available menu."
+msgstr "Insérer l'élément dans un menu disponible."
+msgid "Menu selection requires the activation of menu module."
+msgstr "La sélection du menu requiert l'activation du module menu."
+msgid "The lower the weight the higher/further left it will appear."
+msgstr "Plus petit sera le poids plus haut/à gauche il apparaitra."
+msgid "Default tab options"
+msgstr "Options d'onglet par défaut"
+msgid ""
+"When providing a menu item as a tab, Drupal needs to know what the "
+"parent menu item of that tab will be. Sometimes the parent will "
+"already exist, but other times you will need to have one created. The "
+"path of a parent item will always be the same path with the last part "
+"left off. i.e, if the path to this view is <em>foo/bar/baz</em>, the "
+"parent path would be <em>foo/bar</em>."
+msgstr ""
+"Lorsque l'on fournit un élément de menu en tant qu'onglet, Drupal a "
+"besoin de savoir quel sera l'élément de menu parent de cet onglet. "
+"Parfois le parent existe déjà, mais vous pouvez également être "
+"amené à en créer un. Le chemin d'un élément parent sera toujours "
+"le même chemin, dont la dernière partie est supprimée. Par exemple, "
+"si le chemin vers cette vue est <em>foo/bar/baz</em>, le chemin parent "
+"sera alors <em>foo/bar</em>."
+msgid "Already exists"
+msgstr "Existe déjà"
+msgid "If creating a parent menu item, enter the title of the item."
+msgstr ""
+"Si vous créez un élément de menu parent, saisissez le titre de "
+"l'élément."
+msgid "If creating a parent menu item, enter the description of the item."
+msgstr ""
+"Si création d'un élément de menu parent, entrez la description de "
+"l'élément."
+msgid ""
+"If the parent menu item is a tab, enter the weight of the tab. The "
+"lower the number, the more to the left it will be."
+msgstr ""
+"Si l'élément de menu parent est un onglet, saisissez le poids de "
+"l'onglet. Plus le nombre est faible, plus l'élément apparaîtra à "
+"gauche."
+msgid "\"$arg\" is no longer supported. Use % instead."
+msgstr "\"$arg\" n'est plus pris en charge. Utilisez plutôt %."
+msgid "\"%\" may not be used for the first segment of a path."
+msgstr "\"%\" ne peut pas être utilisé comme premier segment d'un chemin."
+msgid "Views cannot create normal menu items for paths with a % in them."
+msgstr ""
+"Views ne peut pas créer d'élément de menu normal pour les chemins "
+"comportant un %."
+msgid "A display whose path ends with a % cannot be a tab."
+msgstr ""
+"Un affichage dont le chemin se termine par un % ne peut être un "
+"onglet."
+msgid "Title is required for this menu type."
+msgstr "Le titre est obligatoire pour ce type de menu."
+msgid "Inline fields"
+msgstr "Champs en ligne"
+msgid ""
+"The separator may be placed between inline fields to keep them from "
+"squishing up next to each other. You can use HTML in this field."
+msgstr ""
+"Le séparateur peut être placé entre les champs en ligne pour "
+"éviter qu'ils ne s'entassent les uns sur les autres. Vous pouvez "
+"utiliser du HTML pour ce champ."
+msgid ""
+"You may optionally specify a field by which to group the records. "
+"Leave blank to not group."
+msgstr ""
+"Vous pouvez spécifier un champ en option par lequel grouper les "
+"résultats. Laisser vide pour ne pas grouper."
+msgid "Style @style requires a row style but the row plugin is invalid."
+msgstr ""
+"Le style @style nécessite un style de ligne mais le plugin de ligne "
+"est invalide."
+msgid ""
+"Horizontal alignment will place items starting in the upper left and "
+"moving right. Vertical alignment will place items starting in the "
+"upper left and moving down."
+msgstr ""
+"L'alignement horizontal place les éléments depuis le coin supérieur "
+"gauche et en allant vers la droite. L'alignement vertical positionne "
+"les éléments depuis le coin supérieur gauche et en allant vers le "
+"bas."
+msgid "RSS description"
+msgstr "Description RSS"
+msgid "This will appear in the RSS feed itself."
+msgstr "Ceci apparaîtra dans le flux RSS lui-même."
+msgid "Display record count with link"
+msgstr "Afficher le décompte d'enregistrements avec lien"
+msgid "Override number of items to display"
+msgstr "Supplanter le nombre d'éléments à afficher"
+msgid "Display items inline"
+msgstr "Afficher les éléments en ligne"
+msgid ""
+"You need at least one field before you can configure your table "
+"settings"
+msgstr ""
+"Vous avez besoin d'au moins un champ avant de pouvoir configurer vos "
+"paramètres de tableau"
+msgid "Override normal sorting if click sorting is used"
+msgstr "Supplanter le tri normal si le tri par clic est utilisé"
+msgid "Enable Drupal style \"sticky\" table headers (Javascript)"
+msgstr "Activer les entêtes de tableau \"collants\" de Drupal (JavaScript)"
+msgid ""
+"(Sticky header effects will not be active for preview below, only on "
+"live output.)"
+msgstr ""
+"(Les effets d'entêtes collants ne seront pas actifs pour la "
+"prévisualisation ci-dessous, uniquement pour une sortie réelle)."
+msgid ""
+"Place fields into columns; you may combine multiple fields into the "
+"same column. If you do, the separator in the column specified will be "
+"used to separate the fields. Check the sortable box to make that "
+"column click sortable, and check the default sort radio to determine "
+"which column will be sorted by default, if any. You may control column "
+"order and field labels in the fields section."
+msgstr ""
+"Placez les champ dans les colonnes ; vous pouvez combiner plusieurs "
+"champs dans la même colonne. Dans ce cas, le séparateur de la "
+"colonne spécifiée sera utilisé pour séparer les champs. Cochez la "
+"case Classable pour rendre cette colonne classable par clic et, le cas "
+"échéant, cochez le bouton radio de tri par défaut pour déterminer "
+"la colonne de tri par défaut. Vous pouvez contrôler l'ordre des "
+"colonnes et les étiquettes des champs dans la section Champs."
+msgid ""
+"This view is being edited by user !user, and is therefore locked from "
+"editing by others. This lock is !age old. Click here to <a "
+"href=\"!break\">break this lock</a>."
+msgstr ""
+"Cette vue est en train d'être éditée par l'utilisateur !user, et "
+"est par conséquent verrouillée pour les autres utilisateurs. Ce "
+"verrou est vieux de !age. Cliquez ici pour <a href=\"!break\">casser "
+"ce verrou</a>."
+msgid "New view"
+msgstr "Nouvelle vue"
+msgid "Changed view"
+msgstr "Vue changée"
+msgid "View %name, displaying items of type <strong>@base</strong>."
+msgstr "Vue %name, affichant des éléments de type <strong>@base</strong>."
+msgid "Live preview"
+msgstr "Prévisualisation en direct"
+msgid "‹‹"
+msgstr "‹‹"
+msgid "››"
+msgstr "››"
+msgid "@current of @max"
+msgstr "@current sur @max"
+msgid "- All -"
+msgstr "- Tout -"
+msgid "Allow multiple values"
+msgstr "Autoriser plusieurs valeurs"
+msgid "Filter criteria"
+msgstr "Critères de filtrage"
+msgid "Standard deviation"
+msgstr "Déviation standard"
+msgid "Popular content"
+msgstr "Contenu populaire"
+msgid "Content translation"
+msgstr "Traduction du contenu"
+msgid "Item ID"
+msgstr "Identifiant d'élément"
+msgid "Sort descending"
+msgstr "Trier par ordre décroissant"
+msgid "Sort ascending"
+msgstr "Trier par ordre croissant"
+msgid "Aid"
+msgstr "Aid"
+msgid "In code"
+msgstr "Dans le code"
+msgid "Administrative title"
+msgstr "Titre pour l'administration"
+msgid "Style settings"
+msgstr "Paramètres d'affichage"
+msgid "Taxonomy Term"
+msgstr "Terme de taxonomie"
+msgid "%name must be a positive integer."
+msgstr "%name doit être un entier positif."
+msgid "@label (!name)"
+msgstr "@label (!name)"
+msgid "<No value>"
+msgstr "-Aucune valeur-"
+msgid "(first item is 0)"
+msgstr "(le premier élement est 0)"
+msgid "(start from last values)"
+msgstr "(commencer par les dernières valeurs)"
+msgid "Number of pages"
+msgstr "Nombre de pages"
+msgid "Random order"
+msgstr "Ordre aléatoire"
+msgid "Gallery page"
+msgstr "Page de galerie"
+msgid "Content statistics"
+msgstr "Statistiques de contenu"
+msgid ""
+"Target of the link, such as _blank, _parent or an iframe's name. This "
+"field is rarely used."
+msgstr ""
+"Cible du lien, comme \"_blank\", \"_parent\", ou un nom d'iframe. Ce "
+"champ est rarement utilisé."
+msgid "@argument title"
+msgstr "Titre de @argument"
+msgid "@argument input"
+msgstr "Saisie de @argument"
+msgid "The maximum number of characters this field can be."
+msgstr "Le nombre maximum de caractères à afficher pour ce champ."
+msgid "Count the number 0 as empty"
+msgstr "Considérer le nombre 0 comme vide"
+msgid "Hide if empty"
+msgstr "Masquer si vide"
+msgid "Starting value"
+msgstr "Valeur de départ"
+msgid "Specify the number the counter should start at."
+msgstr "Spécifier le nombre à partir duquel le compteur doit commencer."
+msgid "Does not start with"
+msgstr "Ne commence pas par"
+msgid "not_begins"
+msgstr "not_begins"
+msgid "Does not end with"
+msgstr "Ne se termine pas par"
+msgid "not_ends"
+msgstr "not_ends"
+msgid "The view %name has been saved."
+msgstr "La vue %name a été enregistrée."
+msgid ""
+"This filter can cause items that have more than one of the selected "
+"options to appear as duplicate results. If this filter causes "
+"duplicate results to occur, this checkbox can reduce those duplicates; "
+"however, the more terms it has to search for, the less performant the "
+"query will be, so use this with caution. Shouldn't be set on "
+"single-value fields, as it may cause values to disappear from display, "
+"if used on an incompatible field."
+msgstr ""
+"Ce filtre peut faire apparaître des éléments comme des doublons "
+"s'ils ont plus d'une option sélectionnée. Si ce filtre engendre des "
+"doublons, cette case peut les réduire&nbsp;; cependant, plus il y "
+"aura de termes de recherche, moins la requête sera performante, donc "
+"utilisez ceci avec précaution. Cela ne devrait pas être actif sur "
+"des champs à valeur unique, car cela pourrait faire disparaître des "
+"valeurs de l'affichage si c'est utilisé sur un champ incompatible."
+msgid "Jump menu"
+msgstr "Menu de saut"
+msgid ""
+"Puts all of the results into a select box and allows the user to go to "
+"a different page based upon the results."
+msgstr ""
+"Met tous les résultats dans une liste déroulante et permet à "
+"l'utilisateur d'aller à une page différente basé sur les "
+"résultats."
+msgid "Hostname of user that posted the comment."
+msgstr "Nom d'hôte (hostname) de l'utilisateur qui a posté le commentaire."
+msgid ""
+"Email of user that posted the comment. Will be empty if the author is "
+"a registered user."
+msgstr ""
+"Adresse de courriel de l'utilisateur qui a posté le commentaire. Sera "
+"vide si l'auteur est un utilisateur enregistré."
+msgid ""
+"Relate nodes to taxonomy terms, specifiying which vocabulary or "
+"vocabularies to use. This relationship will cause duplicated records "
+"if there are multiple terms."
+msgstr ""
+"Relie des nœuds à des termes de taxonomie, en spécifiant quel(s) "
+"vocabulaire(s) utiliser. Cette relation engendrera des doublons s'il y "
+"a plusieurs termes."
+msgid "The text of the profile item."
+msgstr "Le texte de l'élément de profil."
+msgid "The taxonomy term ID for the term."
+msgstr "L'identifiant du terme de taxonomie pour le terme."
+msgid "The taxonomy term name for the term."
+msgstr "Le nom du terme de taxonomie pour le terme."
+msgid "The name for the vocabulary the term belongs to."
+msgstr "Le nom pour le vocabulaire auquel appartient le terme."
+msgid ""
+"Choose which vocabularies you wish to relate. Remember that every term "
+"found will create a new record, so this relationship is best used on "
+"just one vocabulary that has only one term per node."
+msgstr ""
+"Choisissez quels vocabulaires vous voulez associer. Rappelez-vous que "
+"chaque terme trouvé créera une ligne de résultat, donc cette "
+"relation est plus utile sur un seul vocabulaire qui n'a qu'un seul "
+"terme par nœud."
+msgid "The name of the role."
+msgstr "Le nom du rôle."
+msgid "The role ID of the role."
+msgstr "L'identifiant du rôle."
+msgid "Hide empty fields"
+msgstr "Masquer les champs vides"
+msgid "Do not display fields, labels or markup for fields that are empty."
+msgstr "Ne pas afficher les champs, étiquettes ou balises des champs vides."
+msgid ""
+"You need at least one field before you can configure your jump menu "
+"settings"
+msgstr ""
+"Vous avez besoin d'au moins un champ avant de pouvoir configurer les "
+"paramètres de votre menu de saut"
+msgid ""
+"To properly configure a jump menu, you must select one field that will "
+"represent the path to utilize. You should then set that field to "
+"exclude. All other displayed fields will be part of the menu. Please "
+"note that all HTML will be stripped from this output as select boxes "
+"cannot show HTML."
+msgstr ""
+"Pour configurer correctement votre menu de saut, vous devez "
+"sélectionner un champ qui représentera le chemin à utiliser. Vous "
+"devez ensuite régler ce champ sur \"Exclure\". Tous les autres champs "
+"feront partie du menu. Veuillez noter que tout le HTML sera enlevé de "
+"l'affichage vu que les listes déroulantes ne peuvent pas en afficher."
+msgid "Path field"
+msgstr "Champ de chemin"
+msgid ""
+"If hidden, this button will only be hidden for users with javascript "
+"and the page will automatically jump when the select is changed."
+msgstr ""
+"Si caché, ce bouton sera seulement caché pour les utilisateurs "
+"exécutant le JavaScript et la page changera automatiquement quand la "
+"sélection sera modifiée."
+msgid "Monthly archive"
+msgstr "Archive mensuelle"
+msgid "This identifier is used by another handler."
+msgstr "Cet identifiant est utilisé par un autre handler."
+msgid "Length is shorter than"
+msgstr "La longueur est plus petite que"
+msgid "shorter than"
+msgstr "plus petit que"
+msgid "Length is longer than"
+msgstr "La longueur est plus grande que"
+msgid "longer than"
+msgstr "plus grand que"
+msgid "SQL Query"
+msgstr "Requête SQL"
+msgid "Query will be generated and run using the Drupal database API."
+msgstr ""
+"La requête sera générée et exécutée en utilisant l'API de base "
+"de données de Drupal."
+msgid "revision user"
+msgstr "utilisateur de la révision"
+msgid "Exposed form"
+msgstr "Formulaire exposé"
+msgid "Cancel account"
+msgstr "Annuler le compte"
+msgid "The order of pages in the book hierarchy."
+msgstr "L'ordre des pages dans la hiérarchie du livre."
+msgid ""
+"Display the standard add comment link used on regular nodes, which "
+"will only display if the viewing user has access to add a comment."
+msgstr ""
+"Afficher le lien standard d'ajout de commentaire sur les nœuds "
+"réguliers, qui ne sera affiché que si l'utilisateur visualisant la "
+"page a accès à l'ajout de commentaire."
+msgid "Inherit pager"
+msgstr "Hériter la pagination"
+msgid "Render pager"
+msgstr "Afficher la pagination"
+msgid "Render"
+msgstr "Rendu"
+msgid "Full content"
+msgstr "Contenu complet"
+msgid ""
+"You must include at least one positive keyword with 1 character or "
+"more."
+msgid_plural ""
+"You must include at least one positive keyword with @count characters "
+"or more."
+msgstr[0] ""
+"Vous devez inclure au moins un mot-clé positif de @count caractère "
+"ou plus."
+msgstr[1] ""
+"Vous devez inclure au moins un mot-clé positif de @count caractères "
+"ou plus."
+msgid "Entity ID"
+msgstr "Identifiant (ID) de l'entité"
+msgid "Image style"
+msgstr "Style d'image"
+msgid "The label for this area that will be displayed only administratively."
+msgstr "L'étiquette de cette zone, visible seulement par les administrateurs."
+msgid "Exposed"
+msgstr "Exposé"
+msgid "Displays Reorder"
+msgstr "Réorganisation des affichages"
+msgid "Remove this display"
+msgstr "Retirer cet affichage"
+msgid "Operator to use on all groups"
+msgstr "Opérateur à utiliser sur tous les groupes"
+msgid ""
+"Either \"group 0 AND group 1 AND group 2\" or \"group 0 OR group 1 OR "
+"group 2\", etc"
+msgstr ""
+"Soit \"groupe 0 AND groupe 1 AND groupe 2\" soit \"groupe 0 OR groupe "
+"1 OR groupe 2\", etc."
+msgid "Remove group @group"
+msgstr "Retirer le groupe @group"
+msgid "Default group"
+msgstr "Groupe par défaut"
+msgid "Group @group"
+msgstr "Groupe @group"
+msgid "Ungroupable filters"
+msgstr "Filtres non-groupables"
+msgid "Configure group settings for @type %item"
+msgstr "Configurer les paramètres du groupe pour @type %item"
+msgid "Basic exposed form"
+msgstr "Formulaire exposé basique"
+msgid "Input required"
+msgstr "Valeur requise"
+msgid ""
+"An exposed form that only renders a view if the form contains user "
+"input."
+msgstr ""
+"Un formulaire exposé qui affiche une vue seulement si le formulaire "
+"contient une saisie utilisateur."
+msgid "Display all items"
+msgstr "Afficher tous les éléments"
+msgid "Display all items that this view might find"
+msgstr "Afficher tous les éléments que cette vue pourrait trouver"
+msgid "Display a specified number of items"
+msgstr "Afficher un nombre défini d'éléments"
+msgid "Display a limited number items that this view might find."
+msgstr ""
+"Afficher un nombre limité d'éléments que cette vue pourrait "
+"trouver."
+msgid "Paged output, full pager"
+msgstr "Rendu paginé, pagination complète"
+msgid "Paged output, full Drupal style"
+msgstr "Rendu paginé, complet du style Drupal"
+msgid "Paged output, mini pager"
+msgstr "Rendu paginé, mini-pagination"
+msgid "Use the mini pager output."
+msgstr "Utiliser le rendu de la mini-pagination."
+msgid "The taxonomy vocabulary name"
+msgstr "Le nom du vocabulaire de taxonomie"
+msgid "Name (raw)"
+msgstr "Nom (brut)"
+msgid ""
+"The user or author name. This filter does not check if the user exists "
+"and allows partial matching. Does not utilize autocomplete."
+msgstr ""
+"Le nom de l'utilisateur ou de l'auteur. Ce filtre ne vérifie pas si "
+"l'utilisateur existe et permet une recherche partielle. N'utilise pas "
+"l'auto-complétion."
+msgid "Provide markup text for the area."
+msgstr "Fournir un texte balisé pour la zone."
+msgid "Machine Name"
+msgstr "Nom système"
+msgid "Change the machine name of this display."
+msgstr "Changer le nom système de cet affichage."
+msgid "Change settings for this pager type."
+msgstr "Modifier les paramètres pour ce type de pagination."
+msgid "Allow grouping and aggregation (calculation) of fields."
+msgstr "Autoriser le regroupement et l'aggrégation (calcul) des champs."
+msgid "Exposed form style"
+msgstr "Style du formulaire exposé"
+msgid "Select the kind of exposed filter to use."
+msgstr "Choisir le type de filtre exposé à utiliser."
+msgid "Exposed form settings for this exposed form style."
+msgstr "Paramètres du formulaire exposé pour ce style de formulaire exposé."
+msgid "The machine name of this display"
+msgstr "Le nom système de cet affichage"
+msgid "This is machine name of the display."
+msgstr "C'est le nom système de l'affichage."
+msgid ""
+"If enabled, some fields may become unavailable. All fields that are "
+"selected for grouping will be collapsed to one record per distinct "
+"value. Other fields which are selected for aggregation will have the "
+"function run on them. For example, you can group nodes on title and "
+"count the number of nids in order to get a list of duplicate titles."
+msgstr ""
+"Si coché, certains champs pourraient devenir indisponibles. Tous les "
+"champs qui sont sélectionnés pour le regroupement seront réduits à "
+"un seul enregistrement par valeur distincte. Les autres champs qui "
+"sont sélectionnés pour agrégation verront la fonction exécutée "
+"sur ceux-ci. Par exemple, vous pouvez grouper des nœuds par leur "
+"titre et compter le nombre de nids pour obtenir une liste des "
+"doublons."
+msgid ""
+"<strong>Important!</strong> You have changed the display's machine "
+"name. Anything that attached to this display specifically, such as "
+"theming, may stop working until it is updated. To see theme "
+"suggestions for it, you need to save the view."
+msgstr ""
+"<strong>Important !</strong> Vous avez modifié le nom machine de "
+"l'affichage. Tout ce qui est spécifiquement rattaché à cet "
+"affichage, tel que l'habillage (theming), pourrait cesser de "
+"fonctionner jusqu'à ce qu'il soit mis à jour. Pour voir les "
+"suggestions de thème le concernant, vous devez enregistrer la vue."
+msgid "Exposed Form"
+msgstr "Formulaire exposé"
+msgid "Exposed form options"
+msgstr "Options du formulaire exposé"
+msgid "Select which pager, if any, to use for this view"
+msgstr "Sélectionner, s'il y a lieu, la pagination à utiliser pour cette vue"
+msgid "Pager options"
+msgstr "Options de pagination"
+msgid "Display id should be unique."
+msgstr "L'identifiant (ID) de l'affichage doit être unique."
+msgid "Text to display in the submit button of the exposed form."
+msgstr ""
+"Texte à afficher pour le bouton de soumission du formulaire des "
+"filtres exposés."
+msgid "Include reset button"
+msgstr "Inclure un bouton de réinitialisation."
+msgid ""
+"If checked the exposed form will provide a button to reset all the "
+"applied exposed filters"
+msgstr ""
+"Si coché le formulaire exposé fournira un bouton pour réinitialiser "
+"tous les filtres exposés appliqués"
+msgid "Reset button label"
+msgstr "Texte du bouton de réinitialisation"
+msgid "Text to display in the reset button of the exposed form."
+msgstr ""
+"Texte à afficher dans le bouton de réinitialisation du formulaire "
+"exposé."
+msgid "Exposed sorts label"
+msgstr "Etiquette des tris exposés"
+msgid "Text to display as the label of the exposed sort select box."
+msgstr ""
+"Texte à afficher comme étiquette de la liste déroulante du tri "
+"exposé."
+msgid "Text to use when exposed sort is ordered ascending."
+msgstr "Texte à utiliser quand le tri exposé est croissant."
+msgid "Text to use when exposed sort is ordered descending."
+msgstr "Texte à utiliser quand le tri exposé est décroissant."
+msgid "Text on demand"
+msgstr "Texte à la demande"
+msgid ""
+"The number of items to skip. For example, if this field is 3, the "
+"first 3 items will be skipped and not displayed."
+msgstr ""
+"Le nombre d'éléments à passer. Par exemple, si ce champ est défini "
+"à 3, les 3 premiers éléments seront passés et non affichés."
+msgid "The total number of pages. Leave empty to show all pages."
+msgstr "Le nombre total de pages. Laisser vide pour montrer toutes les pages."
+msgid "Exposed options"
+msgstr "Options exposées"
+msgid ""
+"Exposing this options allows users to define their values in a exposed "
+"form when view is displayed"
+msgstr ""
+"Exposer ces options permet aux utilisateurs de définir leurs valeurs "
+"dans un formulaire exposé quand la vue est affichée"
+msgid "Expose items per page"
+msgstr "Exposer les éléments par page"
+msgid ""
+"When checked, users can determine how many items per page show in a "
+"view"
+msgstr ""
+"Si coché, les utilisateurs pourront spécifier combien d'éléments "
+"afficher par page dans une vue"
+msgid "Items per page label"
+msgstr "Etiquette des éléments par page"
+msgid "Label to use in the exposed items per page form element."
+msgstr ""
+"Etiquette à utiliser pour le champ de nombre d'éléments par page "
+"exposé."
+msgid "Exposed items per page options"
+msgstr "Options du nombre d'éléments par page"
+msgid "Expose Offset"
+msgstr "Exposer le décalage"
+msgid "Offset label"
+msgstr "Étiquette du décalage"
+msgid "Label to use in the exposed offset form element."
+msgstr ""
+"Etiquette à utiliser dans l'élément \"décalage\" du formulaire "
+"exposé."
+msgid "Offset must be an number greather or equal than 0."
+msgstr "Le décalage doit être un nombre supérieur ou égal à 0."
+msgid "Mini pager, @count item, skip @skip"
+msgid_plural "Mini pager, @count items, skip @skip"
+msgstr[0] "Mini pagination, @count élément, en passer @skip"
+msgstr[1] "Mini pagination, @count éléments, en passer @skip"
+msgid "Mini pager, @count item"
+msgid_plural "Mini pager, @count items"
+msgstr[0] "Mini pagination, @count élement"
+msgstr[1] "Mini pagination, @count éléments"
+msgid "All items, skip @skip"
+msgstr "Tous les éléments, en passer @skip"
+msgid "All items"
+msgstr "Tous les éléments"
+msgid "@count item, skip @skip"
+msgid_plural "@count items, skip @skip"
+msgstr[0] "@count élément, en passer @skip"
+msgstr[1] "@count éléments, en passer @skip"
+msgid "@count item"
+msgid_plural "@count items"
+msgstr[0] "@count élément"
+msgstr[1] "@count éléments"
+msgid "Group results together"
+msgstr "Grouper les résultats ensemble"
+msgid "Authentication module"
+msgstr "Module d'authentification"
+msgid "In database"
+msgstr "Dans la base de données"
+msgid "Update preview"
+msgstr "Actualiser l'aperçu"
+msgid "@entity:@bundle"
+msgstr "@entity:@bundle"
+msgid "Is not empty (NOT NULL)"
+msgstr "N'est pas vide (NOT NULL)"
+msgid ""
+"That view is created for the version @import_version of views, but you "
+"only have @api_version"
+msgstr ""
+"La vue a été créée pour la version @import_version de Views, mais "
+"avez la version @api_version"
+msgid "Broken/missing handler: @table > @field"
+msgstr "Handler brisé/manquant : @table > @field"
+msgid ""
+"Display %display has set node/% as path. This will not produce what "
+"you want. If you want to have multiple versions of the node view, use "
+"panels."
+msgstr ""
+"L'affichage %display a son chemin parametré sur node/%. Ceci ne "
+"produira pas l'effet désiré. Si vous voulez avoir plusieurs versions "
+"de l'affichage d'un nœud, utilisez Panels."
+msgid "@category: @field-name"
+msgstr "@category : @field-name"
+msgid "Translate link"
+msgstr "Lien de traduction"
+msgid "Provide a simple link to translate the node."
+msgstr "Fournir un lien pour traduire le nœud."
+msgid "Authmap ID"
+msgstr "Identifiant Authmap"
+msgid "The Authmap ID."
+msgstr "L'identifiant Authmap."
+msgid "Authentication name"
+msgstr "Nom d'authentification"
+msgid "The unique authentication name."
+msgstr "Le nom d'authentification unique."
+msgid "The name of the module managing the authentication entry."
+msgstr ""
+"Le nom du module d'authentification gérant les entrées "
+"d'authentification."
+msgid "Use absolute link (begins with \"http://\")"
+msgstr "Utiliser un lien absolu (commençant par \"http://\")"
+msgid "Output machine name"
+msgstr "Afficher le nom système"
+msgid "Use Drupal's taxonomy term path to create breadcrumb links"
+msgstr ""
+"Utiliser le chemin du terme de taxonomie de Drupal pour créer les "
+"liens du fil d'ariane"
+msgid ""
+"If selected, the links in the breadcrumb trail will be created using "
+"the standard drupal method instead of the custom views method. This is "
+"useful if you are using modules like taxonomy redirect to modify your "
+"taxonomy term links."
+msgstr ""
+"Si sélectionné, les liens du fil d'Ariane seront créés avec la "
+"méthode standard de drupal au lieu de la méthode de Views. Ceci est "
+"utile lorsque vous utilisez des modules comme Taxonomy Redirect pour "
+"modifier vos liens de termes de taxonomie."
+msgid "Change the CSS class name(s) that will be added to this display."
+msgstr ""
+"Modifier la(les) classe(s) CSS qui sera(seront) ajoutée(s) à cet "
+"affichage."
+msgid ""
+"The CSS class names will be added to the view. This enables you to use "
+"specific CSS code for each view. You may define multiples classes "
+"separated by spaces."
+msgstr ""
+"Les noms de classe CSS à ajouter à la vue. Ceci vous permettra "
+"d'utiliser du code CSS spécifique pour chaque vue. Vous pouvez "
+"définir plusieurs classes en les séparant par des espaces."
+msgid "CSS classes must be alphanumeric or dashes only."
+msgstr ""
+"Les classes CSS doivent être constituées de caractères "
+"alphanumériques ou des tirets seulement."
+msgid "Choose text"
+msgstr "Choisissez le texte"
+msgid "The text that will appear as the selected option in the jump menu."
+msgstr ""
+"Le texte qui apparaitra comme option sélectionnée dans le menu de "
+"saut."
+msgid "Term edit link"
+msgstr "Lien de modification du terme"
+msgid "Provide a simple link to edit the term."
+msgstr "Fournir un lien pour modifier le terme."
+msgid ""
+"Set between which values the user can choose when determining the "
+"items per page. Separated by comma."
+msgstr ""
+"Spécifiez entre quelle valeurs l'utilisateur peut choisir lors de la "
+"spécification du nombre d'éléments par page. Séparées par des "
+"virgules."
+msgid ""
+"When checked, users can determine how many items should be skipped at "
+"the beginning."
+msgstr ""
+"Si coché, les utilisateurs peuvent déterminer combien d'éléments "
+"doivent être passés au début."
+msgid ""
+"Please insert a list of integer numeric values separated by commas: "
+"e.g: 10, 20, 50, 100"
+msgstr ""
+"Merci de spécifier une liste de valeur numériques séparées par des "
+"virgules&nbsp;: ex.: 10, 20, 50, 100"
+msgid "Link field"
+msgstr "Champ lien"
+msgid "Attachment before"
+msgstr "Vue attachée avant"
+msgid "Attachment after"
+msgstr "Vue attachée après"
+msgid ""
+"Handler @handler tried to add additional_field @identifier but @table "
+"could not be added!"
+msgstr ""
+"Le gestionnaire @handler a tenté d'ajouter le champ supplémentaire "
+"@identifier mais la table @table n'a pas pu être ajoutée !"
+msgid "Fill up single line"
+msgstr "Remplir une ligne"
+msgid "Enabled, name"
+msgstr "Activé, nom"
+msgid "Row class"
+msgstr "Classe de ligne"
+msgid "- Use default -"
+msgstr "- Utiliser la valeur par défaut -"
+msgid "Unknown content type"
+msgstr "Type de contenu inconnu"
+msgid "View mode"
+msgstr "Mode d'affichage"
+msgid "Changed date"
+msgstr "Date de modification"
+msgid ""
+"The path of the primary file for this item, relative to the Drupal "
+"root; e.g. modules/node/node.module."
+msgstr ""
+"Le chemin du fichier principal pour cet élément, relatif à la "
+"racine de Drupal&nbsp;; ex.: modules/node/node.module."
+msgid "The name of the item; e.g. node."
+msgstr "Le nom de l'item ; ex.: 'node'."
+msgid "The type of the item, either module, theme, or theme_engine."
+msgstr ""
+"Type de l'élément, soit un module, un thème, ou un moteur de "
+"thème."
+msgid "Boolean indicating whether or not this item is enabled."
+msgstr "Booléen indiquant si un élément est activé ou pas."
+msgid "Schema version"
+msgstr "Version du schéma de la BDD"
+msgid ""
+"The module's database schema version number. -1 if the module is not "
+"installed (its tables do not exist); 0 or the largest N of the "
+"module's hook_update_N() function that has either been run or existed "
+"when the module was first installed."
+msgstr ""
+"Numéro de version du schéma de la base de données du module: -1 si "
+"le module n'est pas installé (ses tables n'existent pas), 0 ou le "
+"plus grand N renvoyé par la fonction hook_update_N() du module, si "
+"elle a été lancé une fois, ou le plus grand N existant lorsque le "
+"module a été installé pour la première fois."
+msgid "View: !view"
+msgstr "Vue : !view"
+msgid "Human-readable name"
+msgstr "Nom affiché"
+msgid "Fixed value"
+msgstr "Valeur fixe"
+msgid "Asc"
+msgstr "Asc"
+msgid "Access the views administration pages."
+msgstr "Accéder aux pages d'administration des vues."
+msgid "Bypass access control when accessing views."
+msgstr "Outrepasser le contrôle d'accès lors de l'accès aux vues."
+msgid "Add new view"
+msgstr "Créer une nouvelle vue"
+msgid "- Basic validation -"
+msgstr "- Validation simple -"
+msgid "HTML element"
+msgstr "Élément HTML"
+msgid "Label HTML element"
+msgstr "Élément HTML de l'étiquette"
+msgid "Place a colon after the label"
+msgstr "Placer un signe deux points après l'étiquette"
+msgid "Wrapper HTML element"
+msgstr "Élément HTML de l'enveloppe (wrapper)"
+msgid "Wrapper class"
+msgstr "Classe de l'enveloppe (wrapper)"
+msgid "Add default classes"
+msgstr "Ajouter les classes CSS par défaut"
+msgid ""
+"Use default Views classes to identify the field, field label and field "
+"content."
+msgstr ""
+"Utilisez les classes par défaut de Views pour identifier le champ, "
+"l'étiquette et le contenu du champ."
+msgid "Use absolute path"
+msgstr "Utiliser un chemin absolu"
+msgid "Rel Text"
+msgstr "Texte Rel"
+msgid ""
+"Include Rel attribute for use in lightbox2 or other javascript "
+"utility."
+msgstr ""
+"Inclure l'attribut Rel pour Lightbox 2 ou tout autre utilitaire "
+"JavaScript."
+msgid "Preserve certain tags"
+msgstr "Préserver certaines balises"
+msgid ""
+"List the tags that need to be preserved during the stripping process. "
+"example &quot;&lt;p&gt; &lt;br&gt;&quot; which will preserve all p and "
+"br elements"
+msgstr ""
+"Lister les balises qui doivent être conservées durant le processus "
+"de nettoyage. Exemple, &quot;&lt;p&gt; &lt;br&gt;&quot; préservera "
+"tous les éléments p et br."
+msgid "Format plural"
+msgstr "Former le pluriel"
+msgid "If checked, special handling will be used for plurality."
+msgstr "Si coché, le pluriel sera pris en charge de façon spécifique."
+msgid "Singular form"
+msgstr "Formation du singulier"
+msgid "Text to use for the singular form."
+msgstr "Texte à utiliser au singulier."
+msgid "Plural form"
+msgstr "Formation du pluriel"
+msgid ""
+"Text to use for the plural form, @count will be replaced with the "
+"value."
+msgstr ""
+"Texte à utiliser pour la formation du pluriel, @count sera remplacé "
+"par la valeur."
+msgid "An offset from the current time such as \"!example1\" or \"!example2\""
+msgstr ""
+"Un décalage à partir de la date actuelle tel que \"!example1\" ou "
+"\"!example2\""
+msgid ""
+"A unique machine-readable name for this View. It must only contain "
+"lowercase letters, numbers, and underscores."
+msgstr ""
+"Un nom système unique pour cette vue. Il ne doit contenir que des "
+"lettres en minuscules, des chiffres ou des tirets bas."
+msgid "Weight for @display"
+msgstr "Poids de @display"
+msgid "Translation method"
+msgstr "Méthode de traduction"
+msgid ""
+"Select a translation method to use for Views data like header, footer, "
+"and empty text."
+msgstr ""
+"Sélectionnez une méthode de traduction à utiliser pour les données "
+"de Views comme l'en-tête, le pied de page et le texte vide."
+msgid ""
+"This title will be displayed on the views edit page instead of the "
+"default one. This might be useful if you have the same item twice."
+msgstr ""
+"Ce titre sera affiché dans la page d'édition de la vue au lieu de "
+"celui par défaut. Ceci peut-être pratique si vous avez le même "
+"élément plusieurs fois."
+msgid "Do not pass admin strings for translation."
+msgstr "Ne pas transmettre de chaînes administratives à traduire."
+msgid ""
+"Use Drupal core t() function. Not recommended, as it doesn't support "
+"updates to existing strings."
+msgstr ""
+"Utiliser la fonction t() du cœur de Drupal. Non recommandé, car elle "
+"ne supporte pas les mises à jour des chaînes existantes."
+msgid ""
+"If you need to translate Views labels into other languages, consider "
+"installing the <a href=\"!path\">Internationalization</a> package's "
+"Views translation module."
+msgstr ""
+"Si vous avez besoin de traduire les étiquettes de vues dans d'autre "
+"langues, envisagez l'installation du module de traduction de Views du "
+"paquet <a href=\"!path\">Internationalization</a>."
+msgid "Feed Item ID"
+msgstr "Identifiant d'élément de flux"
+msgid "The unique ID of the aggregator item."
+msgstr "L'identifiant unique de l'élément d'agrégateur."
+msgid "The guid of the original imported item."
+msgstr "Le GUID de l'élément d'origine importé."
+msgid "Date and time of when the comment was created."
+msgstr "Date et heure de création du commentaire."
+msgid "Date and time of when the comment was last updated."
+msgstr "Date et heure de mise à jour du dernier commentaire"
+msgid "Whether the comment is approved (or still in the moderation queue)."
+msgstr ""
+"Si le commentaire est approuvé (ou se trouve encore dans la file "
+"d'attente de modération)."
+msgid "Approved comment"
+msgstr "Commentaire approuvé"
+msgid "Last comment CID"
+msgstr "Identifiant CID du dernier commentaire"
+msgid "Display the last comment of a node"
+msgstr "Afficher le dernier commentaire d'un nœud"
+msgid "Last Comment"
+msgstr "Dernier commentaire"
+msgid "The last comment of a node."
+msgstr "Le dernier commentaire d'un nœud."
+msgid ""
+"Some roles lack permission to access content, but display %display has "
+"no access control."
+msgstr ""
+"Quelques rôles n'ont pas la permission d'accéder au contenu, mais "
+"l'affichage %display n'a pas de contrôle d'accès."
+msgid "The extension of the file."
+msgstr "L'extension de ce fichier."
+msgid "File Usage"
+msgstr "Utilisation du fichier"
+msgid ""
+"A file that is associated with this node, usually because it is in a "
+"field on the node."
+msgstr ""
+"Un fichier qui est associé à ce nœud, généralement parce qu'il se "
+"trouve dans un champ du nœud."
+msgid ""
+"A user that is associated with this file, usually because this file is "
+"in a field on the user."
+msgstr ""
+"Un utilisateur qui est associé à ce fichier, généralement parce "
+"que ce fichier se trouve dans un champ de l'utilisateur."
+msgid ""
+"A file that is associated with this user, usually because it is in a "
+"field on the user."
+msgstr ""
+"Un fichier qui est associé à cet utilisateur, généralement parce "
+"qu'il se trouve dans un champ de l'utilisateur."
+msgid ""
+"A comment that is associated with this file, usually because this file "
+"is in a field on the comment."
+msgstr ""
+"Un commentaire qui est associé à ce fichier, généralement parce "
+"que ce fichier se trouve dans un champ du commentaire."
+msgid ""
+"A file that is associated with this comment, usually because it is in "
+"a field on the comment."
+msgstr ""
+"Un fichier qui est associé à ce commentaire, généralement parce "
+"qu'il se trouve dans un champ du commentaire."
+msgid ""
+"A taxonomy term that is associated with this file, usually because "
+"this file is in a field on the taxonomy term."
+msgstr ""
+"Un terme de taxonomie qui est associé à ce fichier, généralement "
+"parce que ce fichier se trouve dans un champ du terme de taxonomie."
+msgid ""
+"A file that is associated with this taxonomy term, usually because it "
+"is in a field on the taxonomy term."
+msgstr ""
+"Un fichier qui est associé à ce terme de taxonomie, généralement "
+"parce qu'il se trouve dans un champ du terme de taxonomie."
+msgid "Taxonomy Vocabulary"
+msgstr "Vocabulaire de taxonomie"
+msgid ""
+"A taxonomy vocabulary that is associated with this file, usually "
+"because this file is in a field on the taxonomy vocabulary."
+msgstr ""
+"Un vocabulaire de taxonomie qui est associé à ce fichier, "
+"généralement parce que ce fichier se trouve dans un champ du "
+"vocabulaire de taxonomie."
+msgid ""
+"A file that is associated with this taxonomy vocabulary, usually "
+"because it is in a field on the taxonomy vocabulary."
+msgstr ""
+"Un fichier qui est associé avec ce vocabulaire de taxonomie, "
+"généralement parce qu'il se trouve dans un champ du vocabulaire de "
+"taxonomie."
+msgid "The module managing this file relationship."
+msgstr "Le module gérant la relation à ce fichier."
+msgid "The type of entity that is related to the file."
+msgstr "Le type de l'entité qui est relatif au fichier."
+msgid "The number of times the file is used by this entity."
+msgstr "Le nombre de fois que ce fichier est utilisé par cette entité."
+msgid ""
+"Machine-Name of the vocabulary a term is a member of. This will be the "
+"vocabulary that whichever term the \"Taxonomy: Term\" field is; and "
+"can similarly cause duplicates."
+msgstr ""
+"Le nom machine du vocabulaire auquel appartient le terme. Ceci sera le "
+"vocabulaire de n'importe quel terme du champ \"Taxonomie : Terme\" ; "
+"et peut aussi causer des doublons."
+msgid "term from !field_name"
+msgstr "terme à partir de !field_name"
+msgid "Math expression"
+msgstr "Expression mathématique"
+msgid "Evaluates a mathematical expression and displays it."
+msgstr "Évalue une expression mathématique et l'affiche."
+msgid "Use destination"
+msgstr "Utiliser la destination"
+msgid "Add destination to the link"
+msgstr "Ajouter une destination au lien"
+msgid ""
+"Show the comment link in the form used on standard node teasers, "
+"rather than the full node form."
+msgstr ""
+"Afficher le lien de commentaire dans la forme utilisée sur les "
+"résumés de nœuds standards, au lieu de celle des nœuds complets."
+msgid ""
+"Used by Style: Table to determine the actual column to click sort the "
+"field on. The default is usually fine."
+msgstr ""
+"Utilisé par Style : Tableau pour déterminer la colonne réelle à "
+"trier par clic. La valeur est généralement suffisante."
+msgid "Group column"
+msgstr "Colonne de regroupement"
+msgid ""
+"Select the column of this field to apply the grouping function "
+"selected above."
+msgstr ""
+"Sélectionnez la colonne de ce champ pour appliquer la fonction de "
+"regroupement ci-dessus."
+msgid "Group columns (additional)"
+msgstr "Grouper des colonnes (complément)"
+msgid ""
+"Select any additional columns of this field to include in the query "
+"and to group on."
+msgstr ""
+"Sélectionnez n'importe quelle colonne additionnelle de ce champ à "
+"inclure dans la requête pour le regroupement."
+msgid "Display download path instead of file storage URI"
+msgstr ""
+"Afficher le chemin de téléchargement au lieu de l'URI du système de "
+"fichier"
+msgid ""
+"This will provide the full download URL rather than the internal "
+"filestream address."
+msgstr ""
+"Ceci fournira l'URL complète de téléchargement à la place de "
+"l'adresse interne du fichier."
+msgid "The machine name for the vocabulary the term belongs to."
+msgstr "Le nom système du vocabulaire auquel le terme appartient."
+msgid "Display error message"
+msgstr "Afficher un message d'erreur"
+msgid "Term name converted to Term ID"
+msgstr "Nom du terme converti en identifiant (ID) de terme"
+msgid "No comment"
+msgstr "Aucun commentaire"
+msgid "Comment or document this display."
+msgstr "Commenter ou documenter cet affichage."
+msgid "Query settings"
+msgstr "Paramètres de la requête"
+msgid "Allow to set some advanced settings for the query plugin"
+msgstr ""
+"Permettre le réglage de paramètres avancés pour le plugin de "
+"requête"
+msgid "The name and the description of this display"
+msgstr "Le nom et la description de cet affichage"
+msgid ""
+"This name will appear only in the administrative interface for the "
+"View."
+msgstr ""
+"Ce nom apparaîtra seulement dans l'interface d'administration de la "
+"vue."
+msgid ""
+"This description will appear only in the administrative interface for "
+"the View."
+msgstr ""
+"La description apparaîtra seulement dans l'interface d'administration "
+"de la vue."
+msgid "This display's comments"
+msgstr "Commentaires sur cet affichage"
+msgid ""
+"This value will be seen and used only within the Views UI and can be "
+"used to document this display. You can use this to provide notes for "
+"other or future maintainers of your site about how or why this display "
+"is configured."
+msgstr ""
+"Cette valeur ne sera vue et utilisée qu'à l'intérieur de Views UI "
+"et pourra être utilisée pour documenter cet affichage. Vous pouvez "
+"utiliser ceci pour fournir des notes aux autres ou futurs mainteneurs "
+"de votre site sur le pourquoi et le comment de la configuration de "
+"l'affichage."
+msgid "Query options"
+msgstr "Options de la requête"
+msgid "Display name must be letters, numbers, or underscores only."
+msgstr ""
+"Le nom de l'affichage ne doit contenir que des lettres, chiffres ou "
+"tirets bas."
+msgid ""
+"Should this display inherit its paging values from the parent display "
+"to which it is attached?"
+msgstr ""
+"Cet affichage doit-il hériter des valeurs de pagination de "
+"l'affichage parent auquel il est joint ?"
+msgid ""
+"Should this display render the pager values? This is only meaningful "
+"if inheriting a pager."
+msgstr ""
+"Cet affichage doit-il afficher les valeurs de pagination ? Cela n'a de "
+"sens que s'il hérite d'une pagination."
+msgid ""
+"This will appear as the name of this block in administer >> structure "
+">> blocks."
+msgstr ""
+"Ceci apparaîtra comme nom de ce bloc dans administrer >> structure >> "
+"blocs."
+msgid ""
+"Text to display instead of results until the user selects and applies "
+"an exposed filter."
+msgstr ""
+"Texte à afficher à la place des résultats jusqu'à ce que "
+"l'utilisateur sélectionne et applique un filtre exposé."
+msgid "Include all items option"
+msgstr "Inclure une option \"tous les éléments\"."
+msgid ""
+"If checked, an extra item will be included to items per page to "
+"display all items"
+msgstr ""
+"Si coché, un élément supplémentaire sera inclus aux éléments par "
+"page pour afficher tous les éléments."
+msgid "All items label"
+msgstr "Étiquette de \"tous les éléments\""
+msgid "Which label will be used to display all items"
+msgstr "L'étiquette qui sera utilisée pour afficher tous les éléments"
+msgid "Disable SQL rewriting"
+msgstr "Désactiver la réécriture SQL"
+msgid ""
+"WARNING: Disabling SQL rewriting means that node access security is "
+"disabled. This may allow users to see data they should not be able to "
+"see if your view is misconfigured. Please use this option only if you "
+"understand and accept this security risk."
+msgstr ""
+"AVERTISSEMENT : la désactivation de la réécriture SQL signifie que "
+"la sécurité des accès aux nœuds est désactivée. Si votre vue est "
+"mal configurée, cela pourrait permettre aux utilisateurs de voir des "
+"données qu'ils ne devraient pas voir. Veuillez n'utiliser cette "
+"option que si vous comprenez et acceptez ce risque de sécurité."
+msgid "Use Slave Server"
+msgstr "Utiliser un serveur esclave"
+msgid ""
+"This will make the query attempt to connect to a slave server if "
+"available.  If no slave server is defined or available, it will fall "
+"back to the default server."
+msgstr ""
+"Ceci lancera la requête pour tenter une connexion à un serveur "
+"esclave, s'il est disponible. Si aucun serveur esclave n'est défini "
+"ou n'est disponible, le serveur par défaut sera utilisé."
+msgid "Field Language"
+msgstr "Langue du champ"
+msgid ""
+"All fields which support translations will be displayed in the "
+"selected language."
+msgstr ""
+"Tous les champs qui prennent en charge les traductions seront "
+"affichés dans la langue sélectionnée."
+msgid "The class to provide on each row."
+msgstr "La classe à utiliser pour chaque ligne."
+msgid ""
+"You may use field tokens from as per the \"Replacement patterns\" used "
+"in \"Rewrite the output of this field\" for all fields."
+msgstr ""
+"Vous pouvez utiliser les jetons de champs conformément aux \"Modèles "
+"de remplacement\" utilisés dans \"Réécrire la sortie de ce champ\" "
+"pour tous les champs."
+msgid "Table summary"
+msgstr "Résumé du tableau"
+msgid ""
+"If checked, the current path will be displayed as the default option "
+"in the jump menu, if applicable."
+msgstr ""
+"Si coché, le chemin actuel sera affiché comme option par défaut "
+"dans le menu de saut, si possible."
+msgid "The class to provide on the wrapper, outside the list."
+msgstr "La classe à appliquer à l'enveloppe (wrapper) de la liste."
+msgid "List class"
+msgstr "Classe de la liste"
+msgid "The class to provide on the list element itself."
+msgstr "La classe à appliquer à l'élément liste lui-même."
+msgid ""
+"Define the base path for links in this summary\n"
+"        view, i.e. "
+"http://example.com/<strong>your_view_path/archive</strong>.\n"
+"        Do not include beginning and ending forward slash. If this "
+"value\n"
+"        is empty, views will use the first path found as the base "
+"path,\n"
+"        in page displays, or / if no path could be found."
+msgstr ""
+"Définir le chemin de base pour les liens dans cette vue "
+"récapitulative, i.e. "
+"http://example.com/<strong>le_chemin_de_votre_vue/archive</strong>. Ne "
+"pas mettre de slash (/) avant et après. Si cette valeur est vide, "
+"Views utilisera le premier chemin trouvé comme \r\n"
+"chemin de base dans les affichages de page, ou / si aucun chemin n'est "
+"trouvé."
+msgid "Approve link"
+msgstr "Lien d'approbation"
+msgid "Content access"
+msgstr "Accès au contenu"
+msgid "Content revisions"
+msgstr "Révisions de contenu"
+msgid "%time hence"
+msgstr "Dans %time"
+msgid "Machine name: "
+msgstr "Nom système : "
+msgid "Bypass views access control"
+msgstr "Outrepasser le contrôle d'accès aux vues"
+msgid "No results behavior"
+msgstr "Comportement en l'absence de résultats"
+msgid "Edit @section"
+msgstr "Modifier @section"
+msgid "Edit this view to add a display."
+msgstr "Modifier cette vue pour ajouter un affichage."
+msgid "Add view from template"
+msgstr "Ajouter une vue à partir d'un gabarit"
+msgid "View to insert"
+msgstr "Vue à insérer"
+msgid "The view to insert into this area."
+msgstr "La vue à insérer dans cette zone."
+msgid "Inherit contextual filters"
+msgstr "Hériter des filtres contextuels"
+msgid ""
+"If checked, this view will receive the same contextual filters as its "
+"parent."
+msgstr ""
+"Si coché, cette vue utilisera les mêmes filtres contextuels que son "
+"parent."
+msgid "Recursion detected in view @view display @display."
+msgstr "Récursion détectée dans la vue @view, affichage @display."
+msgid "When the filter value is <em>NOT</em> in the URL"
+msgstr "Quand la valeur du filtre n'est <em>PAS</em> dans l'URL"
+msgid "Exception value"
+msgstr "Valeur à exclure"
+msgid ""
+"If this value is received, the filter will be ignored; i.e, \"all "
+"values\""
+msgstr ""
+"Si cette valeur est reçue, le filtre sera ignoré : ex. \"toutes les "
+"valeurs\""
+msgid ""
+"Override the view and other argument titles. Use \"%1\" for the first "
+"argument, \"%2\" for the second, etc."
+msgstr ""
+"Supplanter les titres de la vue et des autres arguments. Utiliser "
+"\"%1\" pour le premier argument, \"%2\" pour le deuxième, etc."
+msgid "When the filter value <em>IS</em> in the URL or a default is provided"
+msgstr ""
+"Quand la valeur du filtre <em>EST</em> dans l'URL ou lorsqu'une valeur "
+"par défaut est fournie"
+msgid "Provide title"
+msgstr "Fournir un titre"
+msgid "Override breadcrumb"
+msgstr "Supplanter le fil d'Ariane"
+msgid "Provide breadcrumb"
+msgstr "Fournir un fil d'Ariane"
+msgid ""
+"Enter a breadcrumb name you would like to use. See \"Title\" for "
+"percent substitutions."
+msgstr ""
+"Saisissez un nom de fil d'Ariane que vous voulez utiliser. Voir "
+"\"Titre\" pour les substitutions de pourcentage."
+msgid "Specify validation criteria"
+msgstr "Spécifier le critère de validation"
+msgid "Action to take if filter value does not validate"
+msgstr "Action à mener si la valeur du filtre ne passe pas la validation"
+msgid "Display all results for the specified field"
+msgstr "Afficher tous les résultats pour le champ spécifié"
+msgid "Provide default value"
+msgstr "Fournir une valeur par défaut"
+msgid "Show \"Page not found\""
+msgstr "Afficher \"Page non trouvée\""
+msgid "Display a summary"
+msgstr "Afficher un résumé"
+msgid "Display contents of \"No results found\""
+msgstr "Afficher le contenu de \"Aucun résultat trouvé\""
+msgid "Skip default argument for view URL"
+msgstr "Ignorer l'argument par défaut pour l'URL de la vue"
+msgid ""
+"Select whether to include this default argument when constructing the "
+"URL for this view. Skipping default arguments is useful e.g. in the "
+"case of feeds."
+msgstr ""
+"Déterminer l'inclusion ou non de cet argument par défaut lors de la "
+"construction de l'URL pour cette vue. Ignorer les arguments par "
+"défaut se révèle utile par exemple pour les flux."
+msgid "Number of records"
+msgstr "Nombre d'enregistrements"
+msgctxt "Sort order"
+msgid "Default sort"
+msgstr "Tri par défaut"
+msgctxt "Sort order"
+msgid "Date"
+msgstr "Date"
+msgctxt "Sort order"
+msgid "Numerical"
+msgstr "Numérique"
+msgid ""
+"If selected, users can enter multiple values in the form of 1+2+3 (for "
+"OR) or 1,2,3 (for AND)."
+msgstr ""
+"Si sélectionné, les utilisateurs peuvent saisir plusieurs valeurs "
+"sous la forme 1+2+3 (pour OR) ou 1,2,3 (pour AND)."
+msgid ""
+"If selected, multiple instances of this filter can work together, as "
+"though multiple values were supplied to the same filter. This setting "
+"is not compatible with the \"Reduce duplicates\" setting."
+msgstr ""
+"Si sélectionné, plusieurs instances de ce filtre peuvent collaborer, "
+"comme si plusieurs valeurs étaient fournies au même filtre. Ce "
+"paramètre n'est pas compatible avec le paramètre \"Réduire les "
+"doublons\"."
+msgid ""
+"If selected, the numbers entered for the filter will be excluded "
+"rather than limiting the view."
+msgstr ""
+"Si sélectionné, les nombres saisis pour le filtre seront exclus au "
+"lieu de limiter la vue."
+msgid ""
+"Glossary mode applies a limit to the number of characters used in the "
+"filter value, which allows the summary view to act as a glossary."
+msgstr ""
+"Le mode glossaire applique une limite au nombre de caractères "
+"utilisés dans la valeur du filtre, ce qui permet à la vue résumée "
+"de se comporter comme un glossaire."
+msgid ""
+"How many characters of the filter value to filter against. If set to "
+"1, all fields starting with the first letter in the filter value would "
+"be matched."
+msgstr ""
+"Sur combien de caractères de la valeur du filtre appliquer le filtre. "
+"Si défini à 1, tous les champs commençant par la première lettre "
+"de la valeur du filtre correspondront."
+msgid ""
+"When printing the title and summary, how to transform the case of the "
+"filter value."
+msgstr ""
+"Lors de l'affichage du titre et du résumé, comment transformer la "
+"casse de la valeur du filtre."
+msgid ""
+"When printing url paths, how to transform the case of the filter "
+"value. Do not use this unless with Postgres as it uses case sensitive "
+"comparisons."
+msgstr ""
+"Lors de l'affichage des chemins URL, comment transformer la casse de "
+"la valeur du filtre. À n'utiliser qu'avec Postgres, qui utilise des "
+"comparaisons sensibles à la casse."
+msgctxt "Sort order"
+msgid "Alphabetical"
+msgstr "Alphabétique"
+msgid "Create a label"
+msgstr "Créer une étiquette"
+msgid "Enable to create a label for this field."
+msgstr "Permettre de créer une étiquette pour ce champ."
+msgid ""
+"Enable to load this field as hidden. Often used to group fields, or to "
+"use as token in another field."
+msgstr ""
+"Activer pour charger ce champ comme caché. Souvent utilisé pour "
+"grouper des champs, ou utilisé comme jeton dans un autre champ."
+msgid "Choose the HTML element to wrap around this field, e.g. H1, H2, etc."
+msgstr "Choisir l'élément HTML enveloppant ce champ, par ex. h1, h2, etc."
+msgid "Create a CSS class"
+msgstr "Créer une classe CSS"
+msgid "Choose the HTML element to wrap around this label, e.g. H1, H2, etc."
+msgstr ""
+"Choisir l'élément HTML enveloppant cette étiquette, par ex. h1, h2, "
+"etc."
+msgid "Rewrite results"
+msgstr "Réécrire les résultats"
+msgid ""
+"Enable to override the output of this field with custom text or "
+"replacement tokens."
+msgstr ""
+"Permettre de supplanter la sortie de ce champ avec du texte "
+"personnalisé ou des jetons (<em>tokens</em>) de substitution."
+msgid "Replace spaces with dashes"
+msgstr "Remplacer les espaces par des tirets"
+msgid "External server URL"
+msgstr "URL du serveur externe"
+msgid ""
+"Links to an external server using a full URL: e.g. "
+"'http://www.example.com' or 'www.example.com'."
+msgstr ""
+"Pointe vers un serveur externe avec une URL complète : ex. "
+"'http://www.example.com' ou 'www.example.com'."
+msgid "Enable to trim the field to a maximum length of characters"
+msgstr "Activer pour réduire le champ à une longueur maximum de caractères."
+msgid "Convert newlines to HTML &lt;br&gt; tags"
+msgstr "Convertir les sauts de ligne en balises HTML &lt;br&gt;"
+msgid ""
+"If checked, all newlines chars (e.g. \\n"
+") are converted into HTML &lt;br&gt; tags."
+msgstr ""
+"Si coché, tous les caractères de saut de ligne (ex. \\n"
+") sont convertis en balises HTML &lt;br&gt;."
+msgid "No results text"
+msgstr "Texte en l'absence de résultats"
+msgid ""
+"Enable to display the \"no results text\" if the field contains the "
+"number 0."
+msgstr ""
+"Permet d'afficher le \"texte en l'absence de résultats\" si le champ "
+"contient le nombre 0."
+msgid "Time hence"
+msgstr "Temps relatif"
+msgid "Time hence (with \"hence\" appended)"
+msgstr "Temps relatif (avec \"d'ici/dans\" ajouté)"
+msgid "Time span (future dates have \"-\" prepended)"
+msgstr "Durée (les dates futures ont un \"-\" en préfixe)"
+msgid "Time span (past dates have \"-\" prepended)"
+msgstr "Durée (les dates passées ont un \"-\" en préfixe)"
+msgid ""
+"How should the serialized data be displayed. You can choose a custom "
+"array/object key or a print_r on the full output."
+msgstr ""
+"Comment devrait être affichées les données sérialisées. Vous "
+"pouvez choisir une clé de tableau/objet personnalisée ou un print_r "
+"sur la totalité des données."
+msgid "Full data (unserialized)"
+msgstr "Données complètes (non sérialisées)"
+msgid "Full data (serialized)"
+msgstr "Données complètes (sérialisées)"
+msgid "A certain key"
+msgstr "Une certaine clé"
+msgid "Which key should be displayed"
+msgstr "Quelle clé doit être affichée"
+msgid "You have to enter a key if you want to display a key of the data."
+msgstr ""
+"Vous devez saisir une clé si vous souhaitez afficher une clé pour la "
+"donnée."
+msgid "How many different units to display in the string."
+msgstr "Combien d'unités différentes doivent s'afficher dans la chaîne."
+msgid "This filter is not exposed. Expose it to allow the users to change it."
+msgstr ""
+"Le filtre n'est pas exposé. Exposez-le pour permettre aux "
+"utilisateurs de le modifier."
+msgid "Expose filter"
+msgstr "Exposer le filtre"
+msgid ""
+"This filter is exposed. If you hide it, users will not be able to "
+"change it."
+msgstr ""
+"Le filtre est exposé. Si vous le masquez, les utilisateurs ne "
+"pourront pas le modifier."
+msgid "Hide filter"
+msgstr "Masquer le filtre"
+msgid "Expose operator"
+msgstr "Exposer l'opérateur"
+msgid "Allow the user to choose the operator."
+msgstr "Permettre à l'utilisateur de choisir l'opérateur."
+msgid "Allow multiple selections"
+msgstr "Permettre plusieurs sélections"
+msgid "Enable to allow users to select multiple items."
+msgstr "Permettre à l'utilisateur de sélectionner plusieurs éléments."
+msgid "Remember the last selection"
+msgstr "Se rappeler de la dernière sélection"
+msgid "Enable to remember the last selection made by the user."
+msgstr ""
+"Activer pour mémoriser la dernière sélection effectuée par "
+"l'utilisateur."
+msgid "You must select a value unless this is an non-required exposed filter."
+msgstr ""
+"Vous devez sélectionner une valeur, à moins que ceci ne soit un "
+"filtre exposé non requis."
+msgid "Enable to hide items that do not contain this relationship"
+msgstr "Permet de masquer les éléments qui ne comportent pas cette relation"
+msgid "This sort is not exposed. Expose it to allow the users to change it."
+msgstr ""
+"Ce tri n'est pas exposé. Exposez-le pour permettre aux utilisateurs "
+"de le modifier."
+msgid "Expose sort"
+msgstr "Exposer le tri"
+msgid ""
+"This sort is exposed. If you hide it, users will not be able to change "
+"it."
+msgstr ""
+"Ce tri est exposé. Si vous le masquez, les utilisateurs ne pourront "
+"pas le modifier."
+msgid "Hide sort"
+msgstr "Masquer le tri"
+msgid "Provide description"
+msgstr "Fournir une description"
+msgid "Save & exit"
+msgstr "Sauver & quitter"
+msgid "Continue & edit"
+msgstr "Continuer & modifier"
+msgid "Update \"@title\" choice"
+msgstr "Mettre à jour le choix \"@title\""
+msgid "Update \"@title\" choice (@number)"
+msgstr "Mettre à jour le choix \"@title\" (@number)"
+msgid "Your view was saved. You may edit it from the list below."
+msgstr ""
+"Votre vue a été enregistrée. Vous pouvez la modifier à partir de "
+"la liste ci-dessous."
+msgid "Database overriding code"
+msgstr "Configuration en base de données supplantant le code"
+msgid ""
+"* All changes are stored temporarily. Click Save to make your changes "
+"permanent. Click Cancel to discard the view."
+msgstr ""
+"* Les changements ne sont stockés que temporairement. Cliquez sur "
+"Enregistrer pour les rendre permanents. Cliquez sur Annuler pour les "
+"rejeter."
+msgid ""
+"* All changes are stored temporarily. Click Save to make your changes "
+"permanent. Click Cancel to discard your changes."
+msgstr ""
+"* Les changements ne sont stockés que temporairement. Cliquez sur "
+"Enregistrer pour les rendre permanents. Cliquez sur Annuler pour les "
+"rejeter."
+msgid "Modify the display(s) of your view below or add new displays."
+msgstr ""
+"Modifier le(s) affichage(s) de votre vue ci-dessous ou ajouter de "
+"nouveaux affichages."
+msgid "edit view name/description"
+msgstr "modifier le nom/la description de la vue"
+msgid "analyze view"
+msgstr "analyser la vue"
+msgid "clone view"
+msgstr "cloner la vue"
+msgid "export view"
+msgstr "exporter la vue"
+msgid "revert view"
+msgstr "rétablir la vue"
+msgid "delete view"
+msgstr "supprimer la vue"
+msgid "Add !display"
+msgstr "Ajouter !display"
+msgid "@display_title details"
+msgstr "Détails sur @display_title"
+msgid "Auto preview"
+msgstr "Aperçu automatique"
+msgid "Preview with contextual filters:"
+msgstr "Aperçu avec filtres contextuels :"
+msgid "Separate contextual filter values with a \"/\". For example, %example."
+msgstr ""
+"Séparer les filtres contextuels avec des \"/\". Par exemple, "
+"%example."
+msgid ":"
+msgstr ":"
+msgid "Apply and continue"
+msgstr "Appliquer et continuer"
+msgid "@current of @total"
+msgstr "@current sur @total"
+msgid "All displays (except overridden)"
+msgstr "Tous les affichages (sauf ceux supplantés)"
+msgid "All displays"
+msgstr "Tous les affichages"
+msgid "This @display_type (override)"
+msgstr "Ce(tte) @display_type (supplanter)"
+msgid "View name and description"
+msgstr "Nom et description de la vue"
+msgid "A descriptive human-readable name for this view. Spaces are allowed"
+msgstr "Un nom affiché décrivant cette vue. Les espaces sont autorisés."
+msgid "Create new filter group"
+msgstr "Créer un nouveau groupe de filtres"
+msgid "No filters have been added."
+msgstr "Aucun filtre n'a été ajouté."
+msgid "Drag to add filters."
+msgstr "Faire glisser pour ajouter des filtres."
+msgid "Add and configure @types"
+msgstr "Ajouter et configurer @types"
+msgid "Configure @type: @item"
+msgstr "Configurer @type : @item"
+msgid "Show filters on the list of views"
+msgstr "Afficher les filtres sur la liste des vues"
+msgid "Show advanced help warning"
+msgstr "Montrer le message d'alerte de l'aide avancée"
+msgid "Always show the master display"
+msgstr "Toujours montrer l'affichage maître"
+msgid ""
+"Advanced users of views may choose to see the master (i.e. default) "
+"display."
+msgstr ""
+"Les utilisateurs avancés des vues peuvent choisir de voir l'affichage "
+"maître (i.e. par défaut)."
+msgid "Always show advanced display settings"
+msgstr "Toujours montrer les paramètres avancés d'affichage"
+msgid ""
+"Default to showing advanced display settings, such as relationships "
+"and contextual filters."
+msgstr ""
+"Par défaut, montre les paramètres avancés d'affichage tels que les "
+"relations et les filtres contextuels."
+msgid "Label for \"Any\" value on non-required single-select exposed filters"
+msgstr ""
+"Étiquette pour la valeur \"Tout\" sur les listes déroulantes simples "
+"non-requises dans les filtres exposés"
+msgid "Live preview settings"
+msgstr "Paramètres de l'aperçu en temps réel"
+msgid "Automatically update preview on changes"
+msgstr ""
+"Automatiquement mettre à jour la prévisualisation lors de "
+"changements"
+msgid "Show information and statistics about the view during live preview"
+msgstr ""
+"Montrer les informations et statistiques de la vue pendant la "
+"prévisualisation en direct"
+msgid "Above the preview"
+msgstr "Au-dessus de la prévisualisation"
+msgid "Below the preview"
+msgstr "Sous la prévisualisation"
+msgid "Show the SQL query"
+msgstr "Montrer la requête SQL"
+msgid "Show performance statistics"
+msgstr "Montrer les statistiques de performance"
+msgid "Disable JavaScript with Views"
+msgstr "Désactiver le JavaScript de Views"
+msgid ""
+"If you are having problems with the JavaScript, you can disable it "
+"here. The Views UI should degrade and still be usable without "
+"javascript; it's just not as good."
+msgstr ""
+"Si vous avez des problèmes avec JavaScript, vous pouvez le "
+"désactiver ici. L'interface utilisateur de Views devrait se dégrader "
+"et rester utilisable sans javascript ; ce n'est juste pas aussi bon."
+msgid "Master"
+msgstr "Maître"
+msgid "There are no templates available."
+msgstr "Il n'y a aucun gabarit disponible."
+msgid "Display"
+msgid_plural "Displays"
+msgstr[0] "Affichage"
+msgstr[1] "Affichages"
+msgid "Unformatted list"
+msgstr "Liste non mise en forme"
+msgid "HTML list"
+msgstr "Liste HTML"
+msgid "Contextual filters"
+msgstr "Filtres contextuels"
+msgid "contextual filters"
+msgstr "filtres contextuels"
+msgid "Contextual filter"
+msgstr "Filtre contextuel"
+msgid "contextual filter"
+msgstr "filtre contextuel"
+msgid "filter criteria"
+msgstr "critères de filtre"
+msgid "Filter criterion"
+msgstr "Critère de filtrage"
+msgid "filter criterion"
+msgstr "critère de filtre"
+msgid "no results behavior"
+msgstr "comportement en l'absence de résultat"
+msgid "The content to which the comment is a reply to."
+msgstr "Le contenu auquel le commentaire fait référence."
+msgid "The node ID."
+msgstr "L'identifiant (ID) du nœud."
+msgid "The content title."
+msgstr "Le titre du contenu."
+msgid "The date the content was posted."
+msgstr "La date à laquelle le contenu a été publié."
+msgid "The date the content was last updated."
+msgstr "La date à laquelle le contenu a été mis à jour la dernière fois."
+msgid ""
+"The content type (for example, \"blog entry\", \"forum post\", "
+"\"story\", etc)."
+msgstr ""
+"Le type de contenu (par exemple, \"entrée de blog\", \"publication de "
+"forum\", \"histoire\", etc)."
+msgid "Whether or not the content is published."
+msgstr "Si le contenu doit être publié ou non."
+msgid "Filters out unpublished content if the current user cannot view it."
+msgstr ""
+"Élimine le contenu non-publié si l'utilisateur courant ne peut pas "
+"le voir."
+msgid "Whether or not the content is promoted to the front page."
+msgstr "Si le contenu doit être promu en page d'accueil ou non."
+msgid "Whether or not the content is sticky."
+msgstr "Si le contenu doit être épinglé en haut des listes ou non."
+msgid ""
+"Whether or not the content is sticky. To list sticky content first, "
+"set this to descending."
+msgstr ""
+"Si le contenu doit être épinglé en haut des listes ou non. Pour "
+"lister les contenu épinglés en premier, définissez ceci à "
+"décroissant."
+msgid "Provide a simple link to the content."
+msgstr "Fournir un lien vers le contenu."
+msgid "Provide a simple link to edit the content."
+msgstr "Fournir un lien pour modifier le contenu."
+msgid "Provide a simple link to delete the content."
+msgstr "Fournir un lien pour supprimer le contenu."
+msgid "The aliased path to this content."
+msgstr "L'alias de chemin de ce contenu."
+msgid "Relate content to the user who created it."
+msgstr "Relie le contenu à l'utilisateur qui l'a créé."
+msgid "User has a revision"
+msgstr "L'utilisateur a une révision"
+msgid "All nodes where a certain user has a revision"
+msgstr "Tous les nœuds où un certain utilisateur a une révision"
+msgid "Content revision"
+msgstr "Révision de contenu"
+msgid "Content revision is a history of changes to content."
+msgstr ""
+"La révision de contenu est un historique des modifications du "
+"contenu."
+msgid "Relate a content revision to the user who created the revision."
+msgstr "Lie une révision de contenu avec l'utilisateur qui l'a créée."
+msgid "The revision ID of the content revision."
+msgstr "L'identifiant (ID) de la révision du contenu."
+msgid "Get the actual content from a content revision."
+msgstr "Récupérer le contenu actuel depuis une révision de contenu."
+msgid "Provide a simple link to delete the content revision."
+msgstr "Fournir un lien pour supprimer la révision de contenu."
+msgid ""
+"Filter for content by view access. <strong>Not necessary if you are "
+"using node as your base table.</strong>"
+msgstr ""
+"Filtre le contenu si son accès est autorisé. <strong>Non nécessaire "
+"si vous utilisez \"node\" comme table de base.</strong>"
+msgid "Show a marker if the content is new or updated."
+msgstr "Afficher un marqueur si le contenu est nouveau ou mis à jour."
+msgid "Show only content that is new or updated."
+msgstr "Afficher uniquement les contenus nouveaux ou mis à jour."
+msgid "Display the content with standard node view."
+msgstr "Afficher le contenu avec une vue standard de nœud."
+msgid "Content ID from URL"
+msgstr "Identifiant (ID) du contenu à partir de l'URL"
+msgid ""
+"Content that is associated with this file, usually because this file "
+"is in a field on the content."
+msgstr ""
+"Un contenu qui est associé à ce fichier, généralement parce que ce "
+"fichier se trouve dans un champ du contenu."
+msgid "Module/Theme/Theme engine"
+msgstr "Module/Thème/Moteur de thème"
+msgid "Modules/Themes/Theme engines in your codebase."
+msgstr "Modules/Thèmes/Moteurs de thème dans votre code source."
+msgid "Module/Theme/Theme engine filename"
+msgstr "Nom de fichier du Module/Thème/Moteur de thème"
+msgid "Module/Theme/Theme engine name"
+msgstr "Nom du Module/Thème/Moteur de thème"
+msgid ""
+"Allows the \"depth\" for Taxonomy: Term ID (with depth) to be modified "
+"via an additional contextual filter value."
+msgstr ""
+"Permet à la \"profondeur\" de Taxonomie : Identifiant de terme (avec "
+"profondeur) d'être modifiée par une valeur de filtre contextuel "
+"supplémentaire."
+msgid ""
+"Content that is either untranslated or is the original version of a "
+"translation set."
+msgstr ""
+"Contenu qui est soit non traduit ou qui est la version originale d'un "
+"jeu de traduction."
+msgid "Content that is a translation of a source translation."
+msgstr "Contenu qui est une traduction d'une source."
+msgid ""
+"The translation status of the content - whether or not the translation "
+"needs to be updated."
+msgstr ""
+"Le statut de la traduction du contenu - si la traduction doit être "
+"mise à jour."
+msgid "Content authored"
+msgstr "Contenu rédigé"
+msgid ""
+"Relate content to the user who created it. This relationship will "
+"create one record for each content item created by the user."
+msgstr ""
+"Lie le contenu à l'utilisateur qui l'a créé. Cette relation créera "
+"un résultat pour chaque élément de contenu créé par "
+"l'utilisateur."
+msgid "Provide a simple link to cancel the user."
+msgstr "Ajouter un lien pour bloquer l'utilisateur."
+msgid "Provide serialized data of the user"
+msgstr "Fournir les données sérialisées de l'utilisateur"
+msgid ""
+"Allow a contextual filter value to be ignored. The query will not be "
+"altered by this contextual filter value. Can be used when contextual "
+"filter values come from the URL, and a part of the URL needs to be "
+"ignored."
+msgstr ""
+"Permet à un filtre contextuel d'être ignoré. La requête ne sera "
+"pas modifiée par la valeur de ce filtre contextuel. Peut-être "
+"utilisé quand les valeurs de filtres contextuels proviennent d'une "
+"URL, et qu'une partie de cette URL doit être ignorée."
+msgid "View area"
+msgstr "Zone de vue"
+msgid "Insert a view inside an area."
+msgstr "Insérer une vue dans une zone."
+msgid "Enable to override this field's links."
+msgstr "Activer pour supplanter les liens du champ."
+msgid "Use field template"
+msgstr "Utiliser un gabarit de champ"
+msgid ""
+"If checked, field api classes will be added using field.tpl.php (or "
+"equivalent). This is not recommended unless your CSS depends upon "
+"these classes. If not checked, template will not be used."
+msgstr ""
+"Si coché, les classes de l'api de champ seront ajoutées en utilisant "
+"field.tpl.php (ou équivalent). Ceci n'est pas recommandé à moins "
+"que votre CSS dépende de ces classes. Si non coché, le gabarit "
+"(template) ne sera pas utilisé."
+msgid ""
+"Checking this option will cause the group Display Type and Separator "
+"values to be ignored."
+msgstr ""
+"Si cette option est choisie, le groupe Type d'affichage et le "
+"Séparateur seront ignorés."
+msgid "Multiple field settings"
+msgstr "Paramètres de champ multiple"
+msgid "Display all values in the same row"
+msgstr "Afficher toutes les valeurs dans la même ligne"
+msgid "Display @count value(s)"
+msgstr "Afficher @count valeur(s)"
+msgid "Raw @column"
+msgstr "@column brut(e)"
+msgid "Native language"
+msgstr "Langue native"
+msgid "If enabled, the native name of the language will be displayed"
+msgstr "Si activé, le nom natif de la langue sera affiché."
+msgid "Link this field to the original piece of content"
+msgstr "Lier ce champ à l'élément de contenu originel"
+msgid ""
+"Enable this option to output an absolute link. Required if you want to "
+"use the path as a link destination (as in \"output this field as a "
+"link\" above)."
+msgstr ""
+"Activer cette option pour afficher un lien absolu. Requis si vous "
+"voulez utiliser le chemin comme une destination de lien (comme dans "
+"\"afficher ce champ en tant que lien\" ci-dessus)."
+msgid "Link this field to its content revision"
+msgstr "Lie ce champ à sa révision de contenu"
+msgid "Display field as the content type machine name."
+msgstr "Afficher le champ comme nom machine du type de contenu."
+msgid "Choose one or more content types to validate with."
+msgstr "Choisir un ou plusieurs types de contenu à valider."
+msgid "Validate user has access to the content"
+msgstr "Valider que l'utilisateur a accès au contenu"
+msgid "Access operation to check"
+msgstr "Fonction d'accès à vérifier"
+msgid "Filter value format"
+msgstr "Filtrer le format de valeur"
+msgid "Display comments"
+msgstr "Afficher les commentaires"
+msgid ""
+"Pick an alternative default table sort field to use when the search "
+"score field is unavailable."
+msgstr ""
+"Choisissez un champ de tri par défaut alternatif à utiliser quand le "
+"score de la recherche est indisponible."
+msgid ""
+"If selected, users can enter multiple values in the form of 1+2+3. Due "
+"to the number of JOINs it would require, AND will be treated as OR "
+"with this filter."
+msgstr ""
+"Si sélectionné, les utilisateurs peuvent entrer plusieurs valeurs "
+"sous la forme 1+2+3. A cause du nombre de JOIN que cela demanderait, "
+"AND sera traité comme OR avec ce filtre."
+msgid "Load default filter from term page"
+msgstr "Charger le filtre par défaut depuis la page du terme"
+msgid "Filter value type"
+msgstr "Filtrer le type de valeur"
+msgid ""
+"Select the form of this filter value; if using term name, it is "
+"generally more efficient to convert it to a term ID and use Taxonomy: "
+"Term ID rather than Taxonomy: Term Name\" as the filter."
+msgstr ""
+"Sélectionner la forme de cette valeur de filtre ; si vous utilisez le "
+"nom de terme, il est généralement plus efficace de le convertir en "
+"identifiant (ID) de terme et d'utiliser Taxonomie : Identifiant (ID) "
+"de terme au lieu de Taxonomie : Nom du terme pour le filtre."
+msgid "Transform dashes in URL to spaces in term name filter values"
+msgstr ""
+"Transformer les tirets dans les URL en espaces dans les valeurs du "
+"filtre de nom de terme"
+msgid "Include untranslated content"
+msgstr "Inclure le contenu non traduit"
+msgid "Enable to display different text for anonymous users."
+msgstr ""
+"Activer l'affichage d'un texte différent pour les utilisateurs "
+"anonymes."
+msgid "Type of user filter value to allow"
+msgstr "Type de la valeur du filtre utilisateur à autoriser"
+msgid ""
+"Note: you do not have permission to modify this. If you change the "
+"default filter type, this setting will be lost and you will NOT be "
+"able to get it back."
+msgstr ""
+"Note : vous n'avez pas la permission de modifier ceci. Si vous "
+"modifiez le type de filtre par défaut, ce réglage sera perdu et vous "
+"NE pourrez PLUS faire marche arrière."
+msgid "PHP contextual filter code"
+msgstr "Code du filtre contextuel PHP"
+msgid "Change the way content is formatted."
+msgstr "Changer la mise en forme du contenu."
+msgid "Change settings for this format"
+msgstr "Modifier les paramètres de ce format"
+msgid "Change the way each row in the view is styled."
+msgstr "Modifier la façon dont chaque ligne dans cette vue est stylée."
+msgid "Hide attachments in summary"
+msgstr "Masquer les vues attachées dans le sommaire"
+msgid ""
+"Change whether or not to display attachments when displaying a "
+"contextual filter summary."
+msgstr ""
+"Modifier l'affichage ou non des attachements lorsqu'un résumé de "
+"filtre contextuel est affiché."
+msgid "Hide attachments when displaying a contextual filter summary"
+msgstr ""
+"Masquer les attachements lorsqu'un résumé de filtre contextuel est "
+"affiché."
+msgid ""
+"You may also adjust the !settings for the currently selected access "
+"restriction."
+msgstr ""
+"Vous pouvez également ajuster les !settings des restrictions d'accès "
+"actuellement sélectionnées."
+msgid ""
+"You may also adjust the !settings for the currently selected cache "
+"mechanism."
+msgstr ""
+"Vous pouvez également ajuster les !settings du mécanisme de cache "
+"actuellement sélectionné."
+msgid "You may also adjust the !settings for the currently selected style."
+msgstr ""
+"Vous pouvez également ajuster les !settings du style actuellement "
+"sélectionné."
+msgid ""
+"You may also adjust the !settings for the currently selected row "
+"style."
+msgstr ""
+"Vous pouvez également ajuster les !settings du style de ligne "
+"actuellement sélectionné."
+msgid "You may also adjust the !settings for the currently selected pager."
+msgstr ""
+"Vous pouvez également ajuster les !settings de la pagination "
+"actuellement sélectionnée."
+msgid "Attachment position"
+msgstr "Position de l'attachement"
+msgid ""
+"Should this display inherit its contextual filter values from the "
+"parent display to which it is attached?"
+msgstr ""
+"Cet affichage doit-il hériter des valeurs de filtre contextuel de "
+"l'affichage parent auquel il est rattaché ?"
+msgid "Block caching"
+msgstr "Mise en cache de bloc"
+msgid ""
+"This view will be displayed by visiting this path on your site. It is "
+"recommended that the path be something like \"path/%/%/feed\" or "
+"\"path/%/%/rss.xml\", putting one % in the path for each contextual "
+"filter you have defined in the view."
+msgstr ""
+"Cette vue sera affichée en visitant ce chemin dans votre site. Il est "
+"recommandé que le chemin soit quelque chose comme \"path/%/%/feed\" "
+"ou \"path/%/%/rss.xml\", en mettant un % dans le chemin pour chaque "
+"filtre contextuel que vous avez défini dans la vue."
+msgid ""
+"This view will be displayed by visiting this path on your site. You "
+"may use \"%\" in your URL to represent values that will be used for "
+"contextual filters: For example, \"node/%/feed\"."
+msgstr ""
+"Cette vue sera affichée en visitant ce chemin sur votre site. Vous "
+"pouvez utiliser \"%\" dans votre URL pour représenter des valeurs qui "
+"seront utilisées dans les filtres contextuels : par exemple, "
+"\"node/%/feed\"."
+msgid ""
+"Display @display is set to use a menu but the menu link text is not "
+"set."
+msgstr ""
+"L'affichage @display est paramétré pour utiliser un menu mais le "
+"texte du lien de menu n'est pas défini."
+msgid ""
+"Display @display is set to use a parent menu but the parent menu link "
+"text is not set."
+msgstr ""
+"L'affichage @display est paramétré pour utiliser un menu parent mais "
+"le texte du lien du menu parent n'est pas défini."
+msgid "@count item, skip @skip"
+msgid_plural "Paged, @count items, skip @skip"
+msgstr[0] "@count élément, en passer @skip"
+msgstr[1] "Avec pagination, @count éléments, en passer @skip"
+msgid "@count item"
+msgid_plural "Paged, @count items"
+msgstr[0] "@count élément"
+msgstr[1] "Avec pagination, @count éléments"
+msgid ""
+"Disabling SQL rewriting will disable node_access checks as well as "
+"other modules that implement hook_query_alter()."
+msgstr ""
+"La désactivation de la réécriture SQL désactivera les contrôles "
+"de node_access ainsi que tous ceux des autres modules qui "
+"implémentent hook_query_alter()."
+msgid ""
+"If you disable this option, a grid with only one row will have the "
+"same number of table cells (<TD>) as items. Disabling it can cause "
+"problems with your CSS."
+msgstr ""
+"Si vous désactivez cette option, une grille d'une seule ligne aura le "
+"même nombre de cellules de tableau (&lt;TD&gt;) que le nombre "
+"d'éléments. Sa désactivation pourrait causer des problèmes avec "
+"votre CSS."
+msgid ""
+"If checked, the current contextual filter value will be displayed as "
+"the default option in the jump menu, if applicable."
+msgstr ""
+"Si coché, la valeur actuelle du filtre contextuel sera affichée "
+"comme option par défaut dans le menu de saut, si possible."
+msgid ""
+"Per default the table is hidden for an empty view. With this option it "
+"is posible to show an empty table with the text in it."
+msgstr ""
+"Par défaut le tableau est masqué dans une vue vide. Avec cette "
+"option, il est possible d'afficher un tableau vide avec le texte "
+"dedans."
+msgid "All storage"
+msgstr "Tous les stockages"
+msgid "All status"
+msgstr "Tous les statuts"
+msgid "No tags"
+msgstr "Aucune étiquette"
+msgid "No views match the search criteria."
+msgstr "Aucune vue ne correspond aux critères de la recherche."
+msgid "Create view from template @template"
+msgstr "Créer une vue à partir du gabarit @template"
+msgid "Clone of"
+msgid_plural "Clone @count of"
+msgstr[0] "Clone de"
+msgstr[1] "Clone @count de"
+msgid ""
+"This action will permanently remove any customizations made to this "
+"view."
+msgstr ""
+"Cette action retirera définitivement toute personnalisation "
+"effectuée dans cette vue."
+msgid "The view has been reverted."
+msgstr "La vue a été rétablie."
+msgid "This action will permanently remove the view from your database."
+msgstr ""
+"Cette action supprimera définitivement cette vue de votre base de "
+"données."
+msgid "Create a page"
+msgstr "Créer une page"
+msgid "Create a menu link"
+msgstr "Créer un lien de menu"
+msgid "Include an RSS feed"
+msgstr "Inclure un flux RSS"
+msgid "Feed path"
+msgstr "Chemin du flux"
+msgid "Feed row style"
+msgstr "Style de ligne du flux"
+msgid "Create a block"
+msgstr "Créer un bloc"
+msgid "of fields"
+msgstr "de champs"
+msgid "of type"
+msgstr "de type"
+msgid "tagged with"
+msgstr "étiquetté avec"
+msgid "Attempted to create_view with values that have not been validated"
+msgstr ""
+"Tentative de créer une vue avec des valeurs qui n'ont pas été "
+"validées"
+msgid "Should links be displayed below each comment"
+msgstr "Les liens doivent-ils être affichés sous chaque commentaire"
+msgid "with links (allow users to reply to the comment, etc.)"
+msgstr ""
+"avec liens (permet aux utilisateurs de répondre à un commentaire, "
+"etc.)"
+msgid "without links"
+msgstr "sans liens"
+msgid "teasers"
+msgstr "résumés"
+msgid "full posts"
+msgstr "publications complètes"
+msgid "titles"
+msgstr "titres"
+msgid "titles (linked)"
+msgstr "titres (liés)"
+msgid "Should links be displayed below each node"
+msgstr "Les liens doivent-ils être affichés sous chaque nœud"
+msgid "with links (allow users to add comments, etc.)"
+msgstr ""
+"avec des liens (permet aux utilisateurs d'ajouter des commentaires, "
+"etc.)"
+msgid "Should comments be displayed below each node"
+msgstr "Les commentaires doivent-ils être affichés sous chaque nœud"
+msgid "Number of hits"
+msgstr "Nombre de visites"
+msgid "Hide view"
+msgstr "Cacher la vue"
+msgid "@group (historical data)"
+msgstr "@group (données historiques)"
+msgid "Use path alias"
+msgstr "Utiliser l'alias de chemin"
+msgid "Unsorted"
+msgstr "Non ordonné"
+msgid "Aggregation type"
+msgstr "Type d'agrégation"
+msgid "Use replacement tokens from the first row"
+msgstr "Utiliser les jetons (tokens) de remplacement de la première ligne"
+msgid "Allow multiple filter values to work together"
+msgstr "Permettre à des valeurs de filtre multiples de fonctionner ensemble"
+msgid "Customize field HTML"
+msgstr "Personnaliser le code HTML du champ"
+msgid ""
+"You may use token substitutions from the rewriting section in this "
+"class."
+msgstr ""
+"Vous pouvez utiliser les substitutions de jetons (<em>tokens</em>) de "
+"la section \"Réécrire la sortie\" dans cette classe."
+msgid "Customize label HTML"
+msgstr "Personnaliser le code HTML de l'étiquette"
+msgid "Customize field and label wrapper HTML"
+msgstr "Personnaliser le code HTML de l'enveloppe du champ et de l'étiquette"
+msgid ""
+"Choose the HTML element to wrap around this field and label, e.g. H1, "
+"H2, etc. This may not be used if the field and label are not rendered "
+"together, such as with a table."
+msgstr ""
+"Choisir l'élément HTML pour envelopper ce champ et son étiquette, "
+"ex : H1, H2, etc. Ceci peut ne pas être pris en compte si le champ et "
+"son étiquette ne sont pas rendus ensemble, tel que dans un tableau."
+msgid "Remove whitespace"
+msgstr "Retirer les espaces"
+msgid ""
+"If checked, all whitespaces at the beginning and the end of the output "
+"will be removed."
+msgstr ""
+"Si coché, tous les espaces au début et à la fin du contenu seront "
+"retirés."
+msgid "Hide rewriting if empty"
+msgstr "Masquer la réécriture si vide"
+msgid "Do not display rewritten content if this field is empty."
+msgstr "Ne pas afficher le contenu réécrit si le champ est vide."
+msgid "Thousands marker"
+msgstr "Séparateur de milliers"
+msgid "Expose this filter to visitors, to allow them to change it"
+msgstr "Exposer ce filtre aux visiteurs, pour leur permettre de le modifier"
+msgid "Representative sort order"
+msgstr "Ordre du tri représentatif"
+msgid "Subquery namespace"
+msgstr "Espace de nom (<em>namespace</em>) de la sous-requête"
+msgid ""
+"Advanced. Enter a namespace for the subquery used by this "
+"relationship."
+msgstr ""
+"Avancé. Saisissez un espace de nom pour la sous-requête utilisée "
+"par cette relation."
+msgid "Representative view"
+msgstr "Vue représentative"
+msgid ""
+"Advanced. Use another view to generate the relationship subquery. This "
+"allows you to use filtering and more than one sort. If you pick a view "
+"here, the sort options above are ignored. Your view must have the ID "
+"of its base as its only field, and should have some kind of sorting."
+msgstr ""
+"Avancé. Utiliser une autre vue pour générer la sous-requête de "
+"relation. Ceci vous permet d'utiliser des filtres et plus d'un tri. Si "
+"vous choisissez une vue ici, les options de tri ci-dessus seront "
+"ignorées. Votre vue doit avoir l'identifiant (ID) de sa base comme "
+"seul champ, et devrait avoir un tri."
+msgid "Generate subquery each time view is run."
+msgstr "Générer la sous-requête à chaque fois que la vue est exécutée."
+msgid ""
+"Will re-generate the subquery for this relationship every time the "
+"view is run, instead of only when these options are saved. Use for "
+"testing if you are making changes elsewhere. WARNING: seriously "
+"impairs performance."
+msgstr ""
+"Re-générera la sous-requête pour cette relation à chaque fois que "
+"la vue est exécutée, au lieu de seulement quand ces options sont "
+"enregistrées. Utilisez ceci pour tester si vous faites des "
+"modifications autre part. AVERTISSEMENT : détériore sérieusement "
+"les performances."
+msgid "Expose this sort to visitors, to allow them to change it"
+msgstr "Exposer ce tri aux visiteurs, pour leur permettre de le modifier"
+msgid "This display is disabled."
+msgstr "L'affichage est désactivé."
+msgid ""
+"This view has been automatically updated to fix missing relationships. "
+"While this View should continue to work, you should verify that the "
+"automatic updates are correct and save this view."
+msgstr ""
+"Cette vue a été automatiquement mise à jour pour réparer les "
+"relations manquantes. Même si cette vue devrait continuer à "
+"fonctionner, vous devriez vérifier que les mises à jour automatiques "
+"sont correctes et enregistrer cette vue."
+msgid "reorder displays"
+msgstr "réorganiser les affichages"
+msgid ""
+"Error: Display @display refers to a plugin named '@plugin', but that "
+"plugin is not available."
+msgstr ""
+"Erreur : L'affichage @display fait référence à un plugin '@plugin', "
+"mais ce plugin n'est pas disponible."
+msgid "enable @display_title"
+msgstr "activer @display_title"
+msgid "view @display"
+msgstr "voir @display"
+msgid "clone @display_title"
+msgstr "cloner @display_title"
+msgid "delete @display_title"
+msgstr "supprimer @display_title"
+msgid "disable @display_title"
+msgstr "désactiver @display_title"
+msgid "undo delete of @display_title"
+msgstr "annuler la suppression de @display_title"
+msgid ""
+"That view is not compatible with this version of Views.\n"
+"      If you have a view from views1 you have to go to a drupal6 "
+"installation and import it there."
+msgstr ""
+"Cette vue n'est pas compatible avec cette version de Views.\r\n"
+"    Si vous avez une views de Views1 vous devez utiliser une "
+"installation de Drupal 6 et l'importer dedans."
+msgid "The selected style or row format does not utilize fields."
+msgstr "Le style ou le format de ligne sélectionné n'utilise pas de champs."
+msgid "Aggregation settings"
+msgstr "Paramètres d'agrégation"
+msgid "Display extenders"
+msgstr "Afficher les extensions"
+msgid "Select extensions of the views interface."
+msgstr "Sélectionner les extensions de l'interface de Views."
+msgid ""
+"You have configured display %display with a path which is an path "
+"alias as well. This might lead to unwanted effects so better use an "
+"internal path."
+msgstr ""
+"Vous avez configuré l'affichage %display avec un chemin qui est aussi "
+"un chemin d'alias. Ceci peut produire des effets indésirables, vous "
+"devriez utiliser un chemin interne."
+msgid "Configure aggregation settings for @type %item"
+msgstr "Configurer les paramètres d'agrégation pour @type %item"
+msgid "Select the aggregation function to use on this field."
+msgstr "Sélectionnez la fonction d'agrégation à utiliser sur ce champ."
+msgid "Ensure my table called but query has no ensure_table method."
+msgstr ""
+"Fonction \"Ensure my table\" appelée mais la requête n'a pas de "
+"méthode ensure_table."
+msgid "Empty display extender"
+msgstr "Extension d'affichage vide"
+msgid "Raw value from URL"
+msgstr "Valeur brute à partir de l'URL"
+msgid "Apply (all displays)"
+msgstr "Appliquer (tous les affichages)"
+msgid "Apply (this display)"
+msgstr "Appliquer (cet affichage)"
+msgid "The date of the most recent new content on the feed."
+msgstr "La date du contenu le plus récent du flux."
+msgid "The node ID to which the comment is a reply to."
+msgstr "L'identifiant (ID) du nœud auquel le commentaire répond."
+msgid "Comments of the node"
+msgstr "Commentaires du nœud"
+msgid ""
+"Relate all comments on the node. This will create 1 duplicate record "
+"for every comment. Usually if you need this it is better to create a "
+"comment view."
+msgstr ""
+"Relie tous les commentaires du nœud. Ceci créera un doublon pour "
+"chaque commentaire. D'habitude si vous avez besoin de ceci, il est "
+"mieux de créer une vue de commentaires."
+msgid "Reply to"
+msgstr "Répondre"
+msgid " new"
+msgstr " nouveau"
+msgid "Appears in: @bundles."
+msgstr "Apparaît dans : @bundles."
+msgid "This is an alias of @group: @field."
+msgstr "Ceci est un alias de @group : @field."
+msgid "@group: @field"
+msgstr "@group : @field"
+msgid "@group (historical data): @field"
+msgstr "@group (données historiques) : @field"
+msgid "Also known as: !also."
+msgstr "Aussi connue comme : \"!also\""
+msgid "@label (!name:!column)"
+msgstr "@label (!name:!column)"
+msgid "@label:!column"
+msgstr "@label:!column"
+msgid "@label (!name:delta)"
+msgstr "@label (!name:delta)"
+msgid "@label:delta"
+msgstr "@label:delta"
+msgid "Delta - Appears in: @bundles."
+msgstr "Delta - Apparaît dans : @bundles."
+msgid "No backlinks found."
+msgstr "Aucun lien entrant (backlink) trouvé."
+msgid "Pages that link to %1"
+msgstr "Pages qui pointent vers %1"
+msgid "Popular (page)"
+msgstr "Populaire (page)"
+msgid "Today (page)"
+msgstr "Aujourd'hui (page)"
+msgid "Popular (block)"
+msgstr "Populaire (bloc)"
+msgid "Today (block)"
+msgstr "Aujourd'hui (bloc)"
+msgid "Today's popular content"
+msgstr "Contenu populaire aujourd'hui"
+msgid "User who uploaded"
+msgstr "Utilisateur ayant transféré"
+msgid "The user that uploaded the file."
+msgstr "L'utilisateur qui a transféré le fichier."
+msgid "The taxonomy vocabulary description"
+msgstr "La description du vocabulaire de taxonomie"
+msgid "Taxonomy term chosen from autocomplete or select widget."
+msgstr ""
+"Terme de taxonomie choisi depuis le widget d'autocomplétion ou de "
+"sélection."
+msgid "Representative node"
+msgstr "Nœud représentatif"
+msgid ""
+"Obtains a single representative node for each term, according to a "
+"chosen sort criterion."
+msgstr ""
+"Récupère un nœud représentatif unique pour chaque terme, selon le "
+"critère de sélection choisi."
+msgid "The taxonomy term name."
+msgstr "Le nom du terme de taxonomie."
+msgid "Content with term"
+msgstr "Contenu avec terme"
+msgid "Relate all content tagged with a term."
+msgstr "Relie tous les contenus étiquetté par un terme."
+msgid "Has taxonomy term ID"
+msgstr "Possède un identifiant (ID) de terme de taxonomie"
+msgid "Display content if it has the selected taxonomy terms."
+msgstr ""
+"Affiche le contenu s'il possède les termes de taxonomie "
+"sélectionnés."
+msgid "Has taxonomy term"
+msgstr "Possède un terme de la taxonomie"
+msgid "Taxonomy terms on node"
+msgstr "Termes de taxonomie du nœud"
+msgid "All taxonomy terms"
+msgstr "Tous les termes de taxonomie"
+msgid ""
+"Display content if it has the selected taxonomy terms, or children of "
+"the selected terms. Due to additional complexity, this has fewer "
+"options than the versions without depth."
+msgstr ""
+"Affiche le contenu s'il possède les termes de taxonomie "
+"sélectionnés ou des termes enfants de ceux-ci. En raison d'une "
+"complexité additionnelle, ce paramètre possède moins d'options que "
+"les versions sans profondeur."
+msgid "Has taxonomy term ID (with depth)"
+msgstr "Possède l'identifiant de terme de taxonomie (avec profondeur)"
+msgid "Has taxonomy terms (with depth)"
+msgstr "Possède les termes de taxonomie (avec profondeur)"
+msgid "Has taxonomy term ID depth modifier"
+msgstr ""
+"Possède l'identifiant du terme de taxonomie avec modification de "
+"profondeur"
+msgid "@entity using @field"
+msgstr "@entity utilisant @field"
+msgid "Relate each @entity with a @field set to the term."
+msgstr "Relier chaque @entity contenant un @field défini au terme."
+msgid "!field_name"
+msgstr "!field_name"
+msgid "Taxonomy term ID from URL"
+msgstr "Identifiant (ID) du terme de taxonomie à partir de l'URL"
+msgid ""
+"Obtains a single representative node for each user, according to a "
+"chosen sort criterion."
+msgstr ""
+"Récupère un nœud représentatif unique pour chaque utilisateur, "
+"selon le critère de sélection choisi."
+msgid ""
+"If checked, multiple values for this field will be shown in the same "
+"row. If not checked, each value in this field will create a new row. "
+"If using group by, please make sure to group by \"Entity ID\" for this "
+"setting to have any effect."
+msgstr ""
+"Si coché, les valeurs multiples de ce champ seront affichées sur une "
+"même ligne. Sinon, chaque valeur de ce champ sera visualisée sur une "
+"nouvelle ligne. Si \"groupé par\" est sélectionné, assurez-vous de "
+"grouper par \"Entity ID\" pour que ce paramètre ait l'effet désiré."
+msgid ""
+"Display an icon representing the file type, instead of the MIME text "
+"(such as \"image/jpeg\")"
+msgstr ""
+"Afficher une icône représentant le type de fichier, au lieu du texte "
+"MIME (tel que \"image/jpeg\")"
+msgid ""
+"Load default filter from node page, that's good for related taxonomy "
+"blocks"
+msgstr ""
+"Charge le filtre par défaut depuis la page de nœud, c'est utile pour "
+"les blocs de taxonomie associée."
+msgid "Path component"
+msgstr "Composant de chemin"
+msgid ""
+"The numbering starts from 1, e.g. on the page admin/structure/types, "
+"the 3rd path component is \"types\"."
+msgstr ""
+"Le numéro de séquence commence à 1, par exemple sur la page "
+"admin/structure/types, le 3ème composant est \"types\"."
+msgid "Use aggregation"
+msgstr "Utiliser l'agrégation"
+msgid "Display title may not be empty."
+msgstr "Le titre de l'affichage ne peut pas être vide."
+msgid "When the filter value is <em>NOT</em> available"
+msgstr "Quand la valeur de filtre <em>N'EST PAS</em> disponible"
+msgid "When the filter value <em>IS</em> available or a default is provided"
+msgstr ""
+"Quand la valeur de filtre <em>EST</em> disponible ou qu'une valeur par "
+"défaut est fournie"
+msgid ""
+"This display does not have a source for contextual filters, so no "
+"contextual filter value will be available unless you select 'Provide "
+"default'."
+msgstr ""
+"Cet affichage n'a pas de source pour les filtres contextuels, donc "
+"aucune valeur de filtre contextuel ne sera disponible à moins que "
+"vous sélectionniez 'Fournir la valeur par défaut'."
+msgid "The number of items to display. Enter 0 for no limit."
+msgstr "Le nombre d'éléments à afficher. Saisissez 0 pour ne pas limiter."
+msgid "The contextual filter values is provided by the URL."
+msgstr "Les valeurs de filtre contextuel sont fournies par l'URL."
+msgid "Autosubmit"
+msgstr "Soumettre automatiquement"
+msgid "Automatically submit the form once an element is changed."
+msgstr ""
+"Soumettre automatiquement le formulaire dès qu'un élément est "
+"modifié."
+msgid "Hide submit button if javascript is enabled."
+msgstr "Masquer le bouton de soumission si le javascript est activé."
+msgid "Query Comment"
+msgstr "Commentaire de requête"
+msgid ""
+"If set, this comment will be embedded in the query and passed to the "
+"SQL server. This can be helpful for logging or debugging."
+msgstr ""
+"Si défini, ce commentaire sera intégré dans la requête et transmis "
+"au serveur SQL. Ceci peut être utile pour la journalisation ou le "
+"débogage."
+msgid "When needed, add the field language condition to the query"
+msgstr "Si nécessaire, ajouter la condition de langue à la requête"
+msgid "Count DISTINCT"
+msgstr "Count DISTINCT"
+msgid "Provide default field wrapper elements"
+msgstr "Fournir les éléments par défaut des enveloppes de champs"
+msgid ""
+"Inline fields will be displayed next to each other rather than one "
+"after another. Note that some fields will ignore this if they are "
+"block elements, particularly body fields and other formatted HTML."
+msgstr ""
+"Les champs en ligne seront affichés les uns à côté des autres au "
+"lieu des uns au dessus des autres. Notez que certains champs "
+"ignoreront ceci si ce sont des éléments de bloc, en particulier les "
+"champs de corps et d'autres formatés en HTML."
+msgid "Hide the \"Go\" button"
+msgstr "Masquer le bouton \"Aller\""
+msgid "Select the current contextual filter value"
+msgstr "Sélectionner la valeur courante du filtre contextuel"
+msgid "Show the empty text in the table"
+msgstr "Afficher le texte vide dans le tableau"
+msgid "The field that is going to be used as the RSS item title for each row."
+msgstr ""
+"Le champ qui sera utilisé comme titre de l'élément du flux RSS pour "
+"chaque ligne."
+msgid ""
+"The field that is going to be used as the RSS item link for each row. "
+"This must be a drupal relative path."
+msgstr ""
+"Le champ qui sera utilisé comme lien de l'élément du flux RSS pour "
+"chaque ligne. Ceci doit être un chemin relatif de drupal."
+msgid ""
+"The field that is going to be used as the RSS item description for "
+"each row."
+msgstr ""
+"Le champ qui sera utilisé comme description de l'élément du flux "
+"RSS pour chaque ligne."
+msgid "Creator field"
+msgstr "Champ créateur"
+msgid ""
+"The field that is going to be used as the RSS item creator for each "
+"row."
+msgstr ""
+"Le champ qui sera utilisé comme créateur de l'élément du flux RSS "
+"pour chaque ligne."
+msgid "Publication date field"
+msgstr "Champ date de publication"
+msgid ""
+"Row style plugin requires specifying which views fields to use for RSS "
+"item."
+msgstr ""
+"Le plugin de style de ligne requiert de spécifier les champs de la "
+"vue à utiliser pour l'élément RSS."
+msgid ""
+"The node ID of the node a user created or commented on. You must use "
+"an argument or filter on UID or you will get misleading results using "
+"this field."
+msgstr ""
+"L'identifiant (ID) du nœud créé ou commenté par l'utilisateur. "
+"Vous devez utiliser un argument ou un filtre sur l'identifiant (UID) "
+"sans quoi l'utilisation de ce champ risque de générer des résultats "
+"trompeurs."
+msgid ""
+"The user ID of a user who touched the node (either created or "
+"commented on it)."
+msgstr ""
+"L'identifiant (UID) de l'utilisateur qui a mis à jour le nœud (en le "
+"créant ou par un commentaire)."
+msgid ""
+"The date the node was last updated or commented on. You must use an "
+"argument or filter on UID or you will get misleading results using "
+"this field."
+msgstr ""
+"La dernière date à laquelle le nœud a été mis à jour ou "
+"commenté. Vous devez utiliser un argument ou filtrer sur l'UID ou "
+"vous obtiendrez des résultats trompeurs en utilisant ce champ."
+msgid "file from !field_name"
+msgstr "fichier de !field_name"
+msgid "Hide empty column"
+msgstr "Cacher les colonnes vides"
+msgid "The operator is invalid on filter: @filter."
+msgstr "L'opérateur est invalide sur le filtre : @filter."
+msgid "No valid values found on filter: @filter."
+msgstr "Aucune valeur valide trouvée sur le filtre : @filter."
+msgid "The value @value is not an array for @operator on filter: @filter"
+msgstr ""
+"La valeur @value n'est pas un tableau pour @operator sur le filtre : "
+"@filter"
+msgid ""
+"Enter PHP code that returns TRUE or FALSE. No return is the same as "
+"FALSE, so be SURE to return something if you do not want to declare "
+"the argument invalid. Do not use &lt;?php ?&gt;. The argument to "
+"validate will be \"$argument\" and the view will be \"$view\". You may "
+"change the argument by setting \"$handler->argument\". You may change "
+"the title used for substitutions for this argument by setting "
+"\"$handler->validated_title\"."
+msgstr ""
+"Saisir du code PHP qui retourne TRUE ou FALSE. Pas de retour est la "
+"même chose que FALSE, soyez donc SÛR de retourner quelque chose si "
+"vous ne souhaitez pas déclarer d'argument d'invalidité. Ne pas "
+"utiliser la balise<?php ?>. L'argument de validité sera \"$argument\" "
+"et la vue, \"$view\". Vous pouvez changer l'argument en définissant "
+"\"$handler->argument\". Vous pouvez changer le titre utilisé en "
+"substitution pour cet argument en définissant "
+"\"$handler->validated_title\"."
+msgid ""
+"If not checked, fields that are not configured to customize their HTML "
+"elements will get no wrappers at all for their field, label and field "
+"+ label wrappers. You can use this to quickly reduce the amount of "
+"markup the view provides by default, at the cost of making it more "
+"difficult to apply CSS."
+msgstr ""
+"Si non coché, les champs qui ne sont pas configurés pour "
+"personnaliser leur élément HTML n'obtiendront aucune enveloppe "
+"(wrapper) ni pour leur champ, ni pour leur étiquette ni pour le champ "
+"+ étiquette. Vous pouvez utiliser ceci pour rapidement réduire le "
+"nombre de balises que fournit la vue par défaut, au risque de rendre "
+"plus difficile l'application des CSS."
+msgid "Link the user picture to the user's profile"
+msgstr "Lié l'image de l'utilisateur à son profil"
+msgid "Specify which display or custom url this display will link to."
+msgstr ""
+"Préciser à quel affichage ou url personnalisée cet affichage sera "
+"lié."
+msgid "<p>The following tokens are available for this link.</p>"
+msgstr "<p>Les jetons (token) suivants sont disponibles pour ce lien.</p>"
+msgid ""
+"A Drupal path or external URL the more link will point to. Note that "
+"this will override the link display setting above."
+msgstr ""
+"Un chemin Drupal ou une URL externe vers lequel pointera le lien "
+"\"plus\". Noter que cela supplantera le paramètre d'affichage du lien "
+"ci-dessus."
+msgid "@view : @display"
+msgstr "@view : @display"
+msgid "View: @view - Display: @display"
+msgstr "Vue : @view - Affichage : @display"
+msgid "Overview of fields used in all views."
+msgstr "Vue d'ensemble des champs utilisés dans toutes les vues."
+msgid "Transform the case"
+msgstr "Changer la casse"
+msgid ""
+"When printing url paths, how to transform the case of the filter "
+"value."
+msgstr ""
+"A l'affichage des chemins d'url, comment changer la casse de la valeur "
+"du filtre."
+msgid ""
+"Edit the administrative label displayed when referencing this "
+"relationship from filters, etc."
+msgstr ""
+"Modifier l'étiquette d'administration affichée quand cette relation "
+"est utilisée dans des filtres, etc."
+msgid "Representative sort criteria"
+msgstr "Critères de tri représentatif"
+msgid ""
+"The sort criteria is applied to the data brought in by the "
+"relationship to determine how a representative item is obtained for "
+"each row. For example, to show the most recent node for each user, "
+"pick 'Content: Updated date'."
+msgstr ""
+"Le critère de tri est appliqué aux données raportées par la "
+"relation pour déterminer comment un élément représentatif est "
+"obtenu pour chaque ligne. Par exemple, pour montrer le nœud le plus "
+"récent pour chaque utilisateur, sélectionner 'Contenu : date de mise "
+"à jour'."
+msgid "The ordering to use for the sort criteria selected above."
+msgstr ""
+"L'ordre à utiliser pour les critères de tri sélectionnés plus "
+"haut."
+msgid "And/Or, Rearrange"
+msgstr "Et/Ou, Réarranger"
+msgid "Revert to default"
+msgstr "Rétablir par défaut"
+msgid ""
+"Optionally, enter a comma delimited list of tags for this view to use "
+"in filtering and sorting views on the administrative page."
+msgstr ""
+"Facultativement, saisir une virgule pour délimiter une liste de "
+"mots-clés pour cette vue à utiliser dans le filtrage et le tri des "
+"vues sur la page d'administration."
+msgid "Custom admin theme for the Views UI"
+msgstr "Thème de l'administration personnalisé pour l'UI de Views."
+msgid ""
+"In some cases you might want to select a different admin theme for the "
+"Views UI."
+msgstr ""
+"Dans certains cas, vous pourriez vouloir sélectionner un thème "
+"d'administration différent pour l'UI de Views."
+msgid "No fields have been used in views yet."
+msgstr "Aucun champ n'a été jusqu'à présent utilisé dans les vues."
+msgid "Provide a simple link to approve the comment."
+msgstr "Fournir un lien pour approuver le commentaire."
+msgid "Author uid"
+msgstr "uid de l'auteur"
+msgid "Relate each @entity with a @field set to the file."
+msgstr "Relier chaque @entity avec un ensemble @field au fichier."
+msgid "image from !field_name"
+msgstr "image de !field_name"
+msgid "Relate each @entity with a @field set to the image."
+msgstr "Relier chaque @entity avec un ensemble @field à l'image."
+msgid "The tid of a taxonomy term."
+msgstr "Le tid d'un terme de taxonomie"
+msgid "The user permissions."
+msgstr "Les droits utilisateur."
+msgid "First and last only"
+msgstr "Premier et dernier seulement"
+msgid "Multiple-value handling"
+msgstr "Gestion à valeur multiple."
+msgid "Filter to items that share all terms"
+msgstr "Filtrer par éléments qui partagent tous les termes"
+msgid "Filter to items that share any term"
+msgstr "Filtrer par éléments qui partagent n'importe quel terme"
+msgid "Use formatted username"
+msgstr "Utiliser un nom d'utilisateur formaté"
+msgid ""
+"If checked, the username will be formatted by the system. If "
+"unchecked, it will be displayed raw."
+msgstr ""
+"Si coché, le nom d'utilisateur sera formaté par le système. Sinon, "
+"il sera affiché tel quel."
+msgid "Link to user's profile"
+msgstr "Lien vers le profil de l'utilsateur"
+msgid ""
+"Using <em>Default</em> will use the site-wide image style for user "
+"pictures set in the <a href=\"!account-settings\">Account "
+"settings</a>."
+msgstr ""
+"Utiliser <em>Par défaut</em> utilisera le style des images des "
+"utilisateurs définit dans <a href=\"!account-settings\">Paramètres "
+"du compte</a>."
+msgid "You don't have translatable entity types."
+msgstr "Vous n'avez pas de types d'entités traduisibles."
+msgid "Use a pager"
+msgstr "Utiliser une pagination"
+msgid "Tokens related to views."
+msgstr "Jetons associés aux vues."
+msgid "The human-readable name of the view."
+msgstr "Le nom affiché de la vue."
+msgid "The description of the view."
+msgstr "La description de la vue."
+msgid "The machine-readable name of the view."
+msgstr "Le nom système de la vue."
+msgid "The title of current display of the view."
+msgstr "Le titre de l'affichage actuel de la vue."
+msgid "The URL of the view."
+msgstr "L'URL de la vue."
+msgid "-Select-"
+msgstr "-Sélectionner-"
+msgid ""
+"Text to place as \"title\" text which most browsers display as a "
+"tooltip when hovering over the link."
+msgstr ""
+"Texte à placer comme texte de l'attribut \"title\" que la plupart des "
+"navigateurs affichent comme bulle d'aide lors du survol du lien."
+msgid ""
+"Enable to hide this field if it is empty. Note that the field label or "
+"rewritten output may still be displayed. To hide labels, check the "
+"style or row style settings for empty fields. To hide rewritten "
+"content, check the \"Hide rewriting if empty\" checkbox."
+msgstr ""
+"Activer pour masquer ce champ s'il est vide. Noter que l'étiquette du "
+"champ ou le rendu réécrit peuvent toujours être affichés. Pour "
+"masquer les étiquettes, vérifier les paramètres du style ou du "
+"style de ligne concernant les champs vides. Pour masquer le contenu "
+"réécrit, cocher la case \"Masquer la réécriture si vide\"."
+msgid "Apostrophe"
+msgstr "Apostrophe"
+msgid ""
+"Enable views performance statistics/debug messages via the Devel "
+"module"
+msgstr ""
+"Activer les statistiques de performance/messages de débogage de Views "
+"via le module Devel"
+msgid ""
+"Check this to enable some Views query and performance statistics/debug "
+"messages <em>if Devel is installed</em>."
+msgstr ""
+"Cocher ceci pour activer des statistiques/messages de débogage sur "
+"les requêtes de Views <em>si Devel est installé</em>."
+msgid "Devel message(dpm)"
+msgstr "Message Devel (dpm)"
+msgid "Devel logging (tmp://drupal_debug.txt)"
+msgstr "Journalisation Devel (tmp://drupal_debug.txt)"
+msgid "Page region to output performance statistics/debug messages"
+msgstr ""
+"Région de la page pour le rendu des statistiques de performance/les "
+"messages de débogage"
+msgid "Date in the form of CCYYMMDD."
+msgstr "Date sous la forme AAAAMMJJ."
+msgid "Date in the form of YYYYMM."
+msgstr "Date sous la forme AAAAMM."
+msgid "Date in the form of YYYY."
+msgstr "Date sous la forme AAAA."
+msgid "Date in the form of MM (01 - 12)."
+msgstr "Date sous la forme MM (01 - 12)."
+msgid "Date in the form of DD (01 - 31)."
+msgstr "Date sous la forme JJ (01 - 31)."
+msgid "Date in the form of WW (01 - 53)."
+msgstr "Date sous la forme SS (01 - 53)."
+msgid ""
+"If you need more fields than the uid add the comment: author "
+"relationship"
+msgstr ""
+"Si vous avez besoin de plus de champs que l'uid, ajoutez la relation "
+"Commentaire : auteur"
+msgid "Last comment uid"
+msgstr "Uid du dernier commentaire"
+msgid "The User ID of the author of the last comment of a node."
+msgstr ""
+"L'identifiant utilisateur de l'auteur du dernier commentaire d'un "
+"nœud."
+msgid ""
+"The user authoring the content. If you need more fields than the uid "
+"add the content: author relationship"
+msgstr ""
+"L'utilisateur auteur du contenu. Si vous avez besoin de plus de champs "
+"que l'uid, ajoutez la relation Contenu : auteur"
+msgid "Unique access event ID."
+msgstr "Identifiant d'évenement d'accès unique."
+msgid "Link field to the node if there is no comment."
+msgstr "Lier le champ au nœud s'il n'y a aucun commentaire."
+msgid "Convert spaces in term names to hyphens"
+msgstr "Convertir les espaces dans les noms de terme en tirets"
+msgid "This allows links to work with Views taxonomy term arguments."
+msgstr ""
+"Ceci permet aux liens de fonctionner avec les arguments de termes de "
+"taxonomie de Views."
+msgid ""
+"Enter PHP code that returns a value to use for this filter. Do not use "
+"&lt;?php ?&gt;. You must return only a single value for just this "
+"filter. Some variables are available: the view object will be "
+"\"$view\". The argument handler will be \"$argument\", for example you "
+"may change the title used for substitutions for this argument by "
+"setting \"argument->validated_title\"\"."
+msgstr ""
+"Saisir du code PHP qui retourne une valeur à utiliser pour ce filtre. "
+"Ne pas utiliser &lt;?php ?&gt;. Vous ne devez retourner qu'une seule "
+"valeur pour ce filtre. Des variables sont disponibles : l'objet vue "
+"sera \"$view\". Le gestionnaire (handler) d'arguments sera "
+"\"$argument\", vous pouvez par exemple changer le titre utilisé pour "
+"les substitutions pour cet argument en définissant "
+"\"$argument->validated_title\"."
+msgid "Use rendered output to group rows"
+msgstr "Utiliser le rendu pour grouper les lignes"
+msgid ""
+"If enabled the rendered output of the grouping field is used to group "
+"the rows."
+msgstr ""
+"Si activé le rendu du champ de regroupement est utilisé pour grouper "
+"les lignes."
+msgid "Replace an existing view if one exists with the same name"
+msgstr "Remplace une vue existante s'il en existe une avec le même nom"
+msgid ""
+"You may use HTML code in this field. The following tokens are "
+"supported:"
+msgstr ""
+"Vous pouvez utiliser le code HTML pour ce champ. Les jetons suivants "
+"sont pris en charge :"
+msgid "Provide a simple link to the user."
+msgstr "Fournir un simple lien vers l'utilisateur."
+msgid "Result summary"
+msgstr "Résumé des résultats"
+msgid "Shows result summary, for example the items per page."
+msgstr ""
+"Affiche le résumé des résultats, par exemple les éléments par "
+"page."
+msgid "Use site default RSS settings"
+msgstr "Utiliser les paramètres RSS par défaut du site"
+msgid "Display list value as human readable"
+msgstr "Afficher les valeurs des listes de manière lisible"
+msgid "Displays the link in contextual links"
+msgstr "Affiche le lien dans les liens contextuels"
+msgid "Grouping field Nr.@number"
+msgstr "Champ de groupement N°@number"
+msgid "Add a read-more link if output is trimmed."
+msgstr "Ajouter un lien \"lire plus\" si la sortie est tronquée."
+msgid ""
+"If checked, a read-more link will be added at the end of the trimmed "
+"output"
+msgstr ""
+"Lorsque cochée, un lien \"lire plus\" sera ajouté à la fin d'une "
+"sortie tronquée"
+msgid ""
+"The text which will be displayed on the more link. You may enter data "
+"from this view as per the \"Replacement patterns\" above."
+msgstr ""
+"Le texte qui sera affiché comme lien \"lire plus\". Vous pouvez "
+"saisir des données de cette vue comme décrit dans \"Modèles de "
+"remplacement\" ci-dessus."
+msgid ""
+"The path which is used for the more link. You may enter data from this "
+"view as per the \"Replacement patterns\" above."
+msgstr ""
+"Le chemin qui sera utilisé pour le lien \"lire plus\". Vous pouvez "
+"saisir des données de cette vue comme décrit dans \"Modèles de "
+"remplacement\" ci-dessus."
+msgid "Display field as machine name."
+msgstr "Afficher le champ comme un nom machine."
+msgid "Show the embed display in the ui."
+msgstr "Montrer l'affichage intégré dans l'interface graphique."
+msgid ""
+"Allow advanced user to use the embed view display. The plugin itself "
+"works if it's not visible in the ui"
+msgstr ""
+"Autoriser les utilisateurs avancés à utiliser l'affichage de vue "
+"intégré. Le plugin fonctionne même s'il n'est pas visible dans "
+"l'interface"
+msgid ""
+"All Views-generated queries will include the name of the views and "
+"display 'view-name:display-name' as a string  at the end of the SELECT "
+"clause. This makes identifying Views queries in database server logs "
+"simpler, but should only be used when troubleshooting."
+msgstr ""
+"Toutes les requêtes générées par Views inclueront les noms des "
+"vues et des affichages dans une chaîne de caractères "
+"'view-name:display-name' à la fin de la clause SELECT. Cela facilite "
+"l'identification des requêtes Views dans les journaux du serveur de "
+"base de données mais ne doit être utilisé qu'à des fins de "
+"diagnostic."
+msgid "Provide a display which can be embedded using the views api."
+msgstr ""
+"Fournir un affichage pouvant être intégré en utilisant l'API de "
+"Views."
+msgid "Display the user with standard user view."
+msgstr "Afficher l'utilisateur avec une vue utilisateur standard."
+msgid "Only has the 'authenticated user' role"
+msgstr "N'a que le rôle 'utilisateur authentifié'"
+msgid "Has roles in addition to 'authenticated user'"
+msgstr "A d'autres rôles que 'utilisateur authentifié'"
+msgid "Please insert the items per page (@items_per_page) from above."
+msgstr "Veuillez insérer les éléments par page (@items_per_page) ci-dessus."
+msgid "Remove tags from rendered output"
+msgstr "Retirer les balises du rendu"
+msgid "Fields to be included as contextual links."
+msgstr "Les champs à inclure comme liens contextuels."
+msgid "Include destination"
+msgstr "Inclure la destination"
+msgid ""
+"Include a \"destination\" parameter in the link to return the user to "
+"the original view upon completing the contextual action."
+msgstr ""
+"Inclure un paramètre \"destination\" dans le lien pour rediriger "
+"l'utilisateur à la vue originale après avoir terminé l'action "
+"contextuelle."
+msgid "Contextual Links"
+msgstr "Liens contextuels"
+msgid "Display fields in a contextual links menu."
+msgstr "Afficher les champs dans un menu de liens contextuels."
+msgid "@label (!name:language)"
+msgstr "@label (!name : langue)"
+msgid "@label:language"
+msgstr "@label : langue"
+msgid "Language - Appears in: @bundles."
+msgstr "Langue - apparaît dans @bundles"
+msgid "Used in views"
+msgstr "Utilisés dans les vues"
+msgid "Views plugins"
+msgstr "Plugins de Views"
+msgid "Overview of plugins used in all views."
+msgstr "Vue d'ensemble des plugins utilisés dans toutes les vues."
+msgid "Display \"Access Denied\""
+msgstr "Afficher \"Accès refusé\""
+msgid ""
+"<p>The following tokens are available for this field. Note that due to "
+"rendering order, you cannot use fields that come after this field; if "
+"you need a field not listed here, rearrange your fields.\n"
+"If you would like to have the characters '[' and ']' please use the "
+"html entity codes '%5B' or  '%5D' or they will get replaced with empty "
+"space.</p>"
+msgstr ""
+"<p>Les jetons (tokens) suivants sont disponibles pour ce champ. Notez "
+"qu'en raison de l'ordre de l'affichage, vous ne pouvez pas utiliser "
+"les champs qui viennent après ce champ ; si vous avez besoin d'un "
+"champ non listé ici, réordonnez vos champs.\r\n"
+"Si vous souhaitez avoir les caractères '[' et ']' veuillez utiliser "
+"l'encodage HTML '%5B' ou '%5D' ou ils seront remplacés par des "
+"espaces vides.</p>"
+msgid "@date_format format"
+msgstr "format @date_format"
+msgid ""
+"If \"Custom\", see the <a href=\"@url\" target=\"_blank\">PHP "
+"manual</a> for date formats. Otherwise, enter the number of different "
+"time units to display, which defaults to 2."
+msgstr ""
+"Si \"Personnalisé\", voir le <a href=\"@url\" "
+"target=\"_blank\">manuel PHP</a> pour les formats de date. Sinon, "
+"saisir le nombre d'unité de temps à afficher. 2 par défaut."
+msgid "Timezone to be used for date output."
+msgstr "Timezone à utiliser pour le rendu de la date."
+msgid "- Default site/user timezone -"
+msgstr "- Timezone par défaut du site ou de l'utilisateur -"
+msgid ""
+"Grouped filters allow a choice between predefined operator|value "
+"pairs."
+msgstr ""
+"Les filtres groupés permettent de choisir entre les couples "
+"opérateur|valeur prédéfinis."
+msgid "Filter type to expose"
+msgstr "Type de filtrer à exposer"
+msgid "Single filter"
+msgstr "Filtre unique"
+msgid "Grouped filters"
+msgstr "Filtres groupés"
+msgid ""
+"Remember exposed selection only for the selected user role(s). If you "
+"select no roles, the exposed data will never be stored."
+msgstr ""
+"Se rappeler de la sélection du filtre exposé uniquement pour le(s) "
+"rôle(s) sélectionné(s). Si vous ne sélectionnez pas de rôle, la "
+"valeur du filtre exposé ne sera jamais mémorisée."
+msgid "The value is required if title for this item is defined."
+msgstr "La valeur est obligatoire si un titre est défini pour cet élément."
+msgid "The title is required if value for this item is defined."
+msgstr "Le titre est requis si une valeur est définie pour cet élément."
+msgid ""
+"Select which kind of widget will be used to render the group of "
+"filters"
+msgstr ""
+"Sélectionner le type de widget qui sera utilisé pour afficher le "
+"groupe de filtres."
+msgid "grouped"
+msgstr "groupés"
+msgid "Choose fields to combine for filtering"
+msgstr "Choisir les champs à combiner pour le filtre"
+msgid "This filter doesn't work for very special field handlers."
+msgstr ""
+"Ce filtre ne fonctionne pas pour les gestionnaires de champ très "
+"spéciaux."
+msgid "You have to add some fields to be able to use this filter."
+msgstr "Vous devez ajouter des champs pour pouvoir utiliser ce filtre."
+msgid "@entity types"
+msgstr "Types de @entity"
+msgid "Sort within each hierarchy level"
+msgstr "Trier dans chaque niveau de la hiérarchie"
+msgid ""
+"Enable this to sort the items within each level of the hierarchy by "
+"weight and title.  Warning: this may produce a slow query."
+msgstr ""
+"Activer cela pour trier les éléments dans chaque niveau de la "
+"hiérarchie par poids et titre. Attention : cela peut produire une "
+"requête lente."
+msgid "There is no lock on view %name to break."
+msgstr "Il n'y a aucun verrou à casser sur la vue %name."
+msgid "This display has one or more validation errors; please review it."
+msgstr ""
+"Cet affichage a une ou plusieurs erreurs de validation; merci de "
+"vérifier."
+msgid "Bypass view validation"
+msgstr "Outrepasser la validation de la vue"
+msgid ""
+"Bypass the validation of plugins and handlers when importing this "
+"view."
+msgstr ""
+"Outrepasser la validation des plugins et gestionnaires lors de "
+"l'import de cette vue."
+msgid "&lt;Any&gt;"
+msgstr "&lt;Aucun&gt;"
+msgid "There are no enabled views."
+msgstr "Il n'y a pas de vues actives."
+msgid "Display fields as RSS items."
+msgstr "Afficher les champs comme éléments RSS."
+msgid "Book root from current node"
+msgstr "Racine du livre du nœud courant"
+msgid "The language the comment is in."
+msgstr "La langue de ce commentaire."
+msgid "- No value -"
+msgstr "- Pas de valeur -"
+msgid "Provide a simple link to the revision."
+msgstr "Fournir un lien simple vers la révision."
+msgid "The ID of the entity that is related to the file."
+msgstr "L'identifiant (ID) de l'entité liée au fichier."
+msgid "The taxonomy vocabulary weight"
+msgstr "Le poids du vocabulaire de taxonomie"
+msgid "Filter the results of \"Taxonomy: Term\" by the parent pid."
+msgstr "Filtrer les résultats de \"Taxonomie : Terme\" par le pid parent."
+msgid "The raw numeric user ID."
+msgstr "L'identifiant (ID) numérique brut de l'utilisateur."
+msgid "Unfiltered text"
+msgstr "Texte non filtré"
+msgid ""
+"Add unrestricted, custom text or markup. This is similar to the custom "
+"text field."
+msgstr ""
+"Ajouter du texte personnalisé ou du balisage non-restreint. Ceci est "
+"similaire au champ texte personnalisé."
+msgid "Combine fields filter"
+msgstr "Grouper le filtre des champs"
+msgid "Column used for click sorting"
+msgstr "Colonne utilisée pour le tri au clic"
+msgid "Use path alias instead of internal path."
+msgstr "Utiliser l'alias de chemin au lieu du chemin interne."
+msgid "Length of time in seconds raw query results should be cached."
+msgstr ""
+"Durée en secondes pendant laquelle les résultats bruts de la "
+"requête doivent être mis en cache."
+msgid "Length of time in seconds rendered HTML output should be cached."
+msgstr ""
+"Durée en secondes pendant laquelle le rendu HTML doit être mis en "
+"cache."
+msgid "Custom time values must be numeric."
+msgstr "Les valeurs horaires personnalisées doivent être numériques."
+msgid "Hide contextual links"
+msgstr "Masquer les liens contextuels"
+msgid "Change whether or not to display contextual links for this view."
+msgstr "Configurer l'affichage des liens contextuels pour cette vue."
+msgid "Hide contextual links on this view."
+msgstr "Masquer les liens contextuels de cette vue."
+msgid ""
+"This will add a more link to the bottom of this view, which will link "
+"to the page view. If you have more than one page view, the link will "
+"point to the display specified in 'Link display' section under "
+"advanced. You can override the url at the link display setting."
+msgstr ""
+"Ceci ajoutera un lien \"plus\" au bas de cette vue, qui la liera à la "
+"vue page. Si vous avez plus d'une vue page, le lien pointera vers "
+"l'affichage spécifié dans la section \"Affichage de lien\" sous "
+"\"Avancé\". Vous pouvez supplanter l'URL dans le paramétrage de "
+"l'affichage du lien."
+msgid "Display 'more' link only if there is more content"
+msgstr "N'afficher le lien 'plus' que s'il y a plus de contenu"
+msgid ""
+"Leave this unchecked to display the 'more' link even if there are no "
+"more items to display."
+msgstr ""
+"Laissez cette case décochée pour afficher le lien \"plus\" même "
+"s'il n'y a pas d'autres éléments à afficher."
+msgid "View: !view: !display"
+msgstr "Vue : !view: !display"
+msgid ""
+"Exposed filters in block displays require \"Use AJAX\" to be set to "
+"work correctly."
+msgstr ""
+"Les filtres exposés affichés dans des blocs requièrent l'option "
+"\"Utiliser AJAX\" pour fonctionner correctement"
+msgid "Number of pager links visible"
+msgstr "Nombre de liens de pagination visibles"
+msgid "Specify the number of links to pages to display in the pager."
+msgstr ""
+"Préciser le nombre de liens vers des pages à afficher dans la "
+"pagination."
+msgid "A lists of labels for the controls in the pager"
+msgstr "Une liste d'étiquettes pour les contrôles dans la pagination"
+msgid "Text for \"first\"-link"
+msgstr "Texte du lien \"premier\""
+msgid "Text for \"previous\"-link"
+msgstr "Texte du lien \"précédent\""
+msgid "Text for \"next\"-link"
+msgstr "Texte du lien \"suivant\""
+msgid "Text for \"last\"-link"
+msgstr "Texte du lien \"dernier\""
+msgid "Pure Distinct"
+msgstr "Distinct pur"
+msgid ""
+"This will prevent views from adding the base column to the distinct "
+"field. If this is not selected and the base column is a primary key, "
+"then a non-pure distinct will not function properly because the "
+"primary key is always unique."
+msgstr ""
+"Cela empêchera les vues d'ajouter la colonne de base au champ "
+"distinct. Si cela n'est pas sélectionné et que la colonne de base "
+"est une clé primaire, alors une distinction non pure ne fonctionnera "
+"pas proprement car la clé primaire est toujours unique."
+msgid "Query Tags"
+msgstr "Tags de la requête"
+msgid ""
+"If set, these tags will be appended to the query and can be used to "
+"identify the query in a module. This can be helpful for altering "
+"queries."
+msgstr ""
+"Si défini, ces tags seront ajoutés à la requête et pourront être "
+"utilisés pour l'identifier dans un module. Cela peut être utile pour "
+"modifier les requêtes."
+msgid ""
+"The query tags may only contain lower-case alphabetical characters and "
+"underscores."
+msgstr ""
+"Les tags de requêtes ne peuvent contenir que des caractères "
+"alphabétiques en minuscules et des tirets bas."
+msgid ""
+"The field that is going to be used as the RSS item pubDate for each "
+"row. It needs to be in RFC 2822 format."
+msgstr ""
+"Le champ qui sera utilisé comme pubDate de l'élément du flux RSS "
+"pour chaque ligne. Il doit respecter le format décrit dans la RFC "
+"2822."
+msgid "GUID settings"
+msgstr "Paramètres de GUID"
+msgid "GUID field"
+msgstr "Champ GUID"
+msgid "The globally unique identifier of the RSS item."
+msgstr "L'identificateur global unique de l'élément RSS."
+msgid "GUID is permalink"
+msgstr "GUID est un permalien"
+msgid "The RSS item GUID is a permalink."
+msgstr "Le GUID de l'élément RSS est un permalien."
+msgid "Add views row classes"
+msgstr "Ajouter des classes aux lignes de vues"
+msgid ""
+"Add the default row classes like views-row-1 to the output. You can "
+"use this to quickly reduce the amount of markup the view provides by "
+"default, at the cost of making it more difficult to apply CSS."
+msgstr ""
+"Ajouter au rendu des lignes les classes par défaut comme views-row-1. "
+"Vous pouvez utiliser ceci pour rapidement réduire la quantité de "
+"code fourni par défaut par la vue mais cela peut complexifier le CSS."
+msgid "Add striping (odd/even), first/last row classes"
+msgstr ""
+"Ajouter des classes CSS de striage (pair/impair) et de "
+"première/dernière ligne"
+msgid ""
+"Add css classes to the first and last line, as well as odd/even "
+"classes for striping."
+msgstr ""
+"Ajouter des classes CSS aux première et dernière ligne ainsi que les "
+"classes pair/impair pour le striage."
+msgid "Force using fields"
+msgstr "Forcer l'utilisation des champs"
+msgid ""
+"If neither the row nor the style plugin supports fields, this field "
+"allows to enable them, so you can for example use groupby."
+msgstr ""
+"Si les champs ne sont ni pris en compte par les plugins de ligne, ni "
+"par ceux de style, cette option vous permet de les forcer à les "
+"prendre en compte, de sorte que vous puissiez utiliser les fonctions "
+"de regroupement (groupby) par exemple."
+msgid ""
+"Provide text to display if this field contains an empty result. You "
+"may include HTML. You may enter data from this view as per the "
+"\"Replacement patterns\" in the \"Rewrite Results\" section below."
+msgstr ""
+"Fournir un texte à afficher si ce champ contient un résultat vide. "
+"Il est possible d'inclure du HTML. Il est possible de saisir des "
+"données issues de la vue grâce aux \"Motifs de remplacement\" de la "
+"section \"Réécrire les résultats\" ci-dessous."
+msgid "The revision NID of the content revision."
+msgstr "Le NID de la révision du contenu."
+msgid "Expose sort order"
+msgstr "Exposer l'ordre de tri"
+msgid ""
+"Allow the user to choose the sort order. If sort order is not exposed, "
+"the sort criteria settings for each sort will determine its order."
+msgstr ""
+"Permettre à l'utilisateur de choisir l'ordre de tri. Si l'ordre de "
+"tri n'est pas exposé, les paramètres de critères de tri pour chaque "
+"tri détermineront son ordre."
+msgid "Short description of table"
+msgstr "Description courte du tableau"
+msgid "Include a caption for better accessibility of your table."
+msgstr ""
+"Inclure une légende pour une meilleure accessibilité de votre "
+"tableau."
+msgid ""
+"This value will be displayed as table-summary attribute in the html. "
+"Use this to give a summary of complex tables."
+msgstr ""
+"Cette valeur sera affichée comme attribut de résumé de tableau dans "
+"le html. Utilisez cette option pour donner un résumé à des tableaux "
+"complexes."
+msgid "Selector label"
+msgstr "Étiquette du sélecteur"
+msgid ""
+"The text that will appear as the the label of the selector element. If "
+"blank no label tag will be used."
+msgstr ""
+"Le texte qui apparaîtra comme étiquette de l'élément sélecteur. "
+"Si vide, aucune étiquette ne sera utilisée."
+msgid "Use a custom %field_name"
+msgstr "Utiliser un %field_name personnalisé"
+msgid "Tracker - User"
+msgstr "Suivi - Utilisateur"
+msgid ""
+"Whether or not the node is published. You must use an argument or "
+"filter on UID or you will get misleading results using this field."
+msgstr ""
+"Si le nœud est publié ou non. Vous devez utiliser un argument ou un "
+"filtre sur l'identifiant (UID) sans quoi l'utilisation de ce champ "
+"risque de générer des résultats trompeurs."
+msgid "No path is set"
+msgstr "Aucun chemin n'est défini"
+msgid "Remove search score"
+msgstr "Retirer le score de recherche"
+msgid ""
+"If you <a href=\"@modules\">enable the advanced help module</a>, Views "
+"will provide more and better help. <a href=\"@hide\">You can disable "
+"this message at the Views settings page.</a>"
+msgstr ""
+"Si vous <a href=\"@modules\">activer le module d'aide avancée</a>, "
+"Views fournira plus et une meilleur aide. <a href=\"@hide\">Vous "
+"pouvez désactiver ce message sur la page de paramètres de Views.</a>"
+msgid ""
+"If you install the advanced help module from !href, Views will provide "
+"more and better help. <a href=\"@hide\">You can disable this message "
+"at the Views settings page.</a>"
+msgstr ""
+"Si vous installez le module advanced help depuis !href, Views fournira "
+"de l'aide supplémentaire et de meilleur qualité. <a "
+"href=\"@hide\">Vous pouvez désactiver ce message sur la page de "
+"configuration de Views.</a>"
+msgid "Custom output for TRUE"
+msgstr "Données de sortie personnalisées pour TRUE"
+msgid "Custom output for FALSE"
+msgstr "Données de sortie personnalisées pour FALSE"
+msgid "Set this field to display inline"
+msgstr "Régler ce champ pour afficher en ligne"
+msgid "Hide menu tab"
+msgstr "Masquer l'onglet de menu"
+msgid ""
+"Only display menu item entry in contextual links. Menu tab should not "
+"be displayed."
+msgstr ""
+"Afficher uniquement l'entrée d'élément de menu dans des liens "
+"contextuels. L'onglet de menu ne doit pas être s'affiché."
+msgid "Detect if tar is part of the extension"
+msgstr "Détecter si tar est une partie de l'extension"
+msgid ""
+"See if the previous extension is '.tar' and if so, add that, so we see "
+"'tar.gz' or 'tar.bz2' instead of just 'gz'."
+msgstr ""
+"Vérifiez que l'extension précédente est \".tar\", et si c'est le "
+"cas l'ajouter, pour avoir comme résultat \"tar.gz\" ou \"tar.bz2\" au "
+"lieu de simplement \"gz\"."
+msgid "Fields to be included as links."
+msgstr "Champs à inclure en tant que liens."
+msgid ""
+"Include a \"destination\" parameter in the link to return the user to "
+"the original view upon completing the link action."
+msgstr ""
+"Inclure un paramètre \"destination\" dans le lien pour rediriger "
+"l'utilisateur vers la vue d'origine après avoir terminé l'action du "
+"lien."
+msgid "Left field"
+msgstr "Champ de gauche"
+msgid "Right field"
+msgstr "Champ de droite"
+msgid "Fields comparison"
+msgstr "Comparaison de champs"
+msgid "Compare database fields against eachother."
+msgstr "Comparer les champs de la base données entre eux."
+msgid "Use fields comparison to filter the result of the view."
+msgstr "Utilisez la comparaison de champs pour filtrer le résultat de la vue."
+msgid ""
+"Time ago (with \"ago\" appended) for today's date, but not for other "
+"dates"
+msgstr ""
+"Temps relatif (avec \"il y a\" ajouté) par rapport à la date "
+"d'aujourd'hui, mais pas pour les autres dates."
+msgid "Second date format"
+msgstr "Deuxième format de date"
+msgid ""
+"The date format which will be used for rendering dates other than "
+"today."
+msgstr ""
+"Le format de date qui sera utilisé pour l'affichage des autres dates "
+"que celle d'aujourd'hui."
+msgid "Custom date format of second date"
+msgstr "Format de date personnalisé de la deuxième date"
+msgid ""
+"If \"Custom\" is selected in \"Second date format\", see the <a "
+"href=\"@url\" target=\"_blank\">PHP manual</a> for date formats. "
+"Otherwise, enter the number of different time units to display, which "
+"defaults to 2."
+msgstr ""
+"Si \"Personnalisé\" est sélectionné dans \"Second format de date\", "
+"voir le <a href=\"@url\" target=\"_blank\">manuel PHP</a> pour les "
+"formats de date. Sinon, saisir le nombre des différentes unités de "
+"temps à afficher, qui est par défaut à 2."
+msgid "Operator label"
+msgstr "Label de l'opérateur"
+msgid "This will appear before your operator select field."
+msgstr "Ceci apparaîtra avant votre champ de sélection de l'opérateur."
+msgid "Displays messages in the area."
+msgstr "Affiche les messages dans la zone."
+msgid "Reverse the counter."
+msgstr "Inverser le compteur."
+msgid ""
+"Enter mathematical expressions such as 2 + 2 or sqrt(5). You may "
+"assign variables and create mathematical functions and evaluate them. "
+"Use the ; to separate these. For example: f(x) = x + 2; f(2). The "
+"result of the previous row's mathematical expression can be accessed "
+"by using the [expression] token itself."
+msgstr ""
+"Saisir des expressions mathématiques comme 2 + 2 ou sqrt(5). Vous "
+"pouvez assigner des variables et créer des fonctions mathématiques "
+"et les évaluer. Utiliser \";\" pour les séparer. Par exemple : f(x) "
+"= x +2; f(2). Le résultat de l'expression mathématique de la ligne "
+"précédente peut être obtenu en utilisant le jeton (token) "
+"[expression] lui-même."
+msgid "Use same translation method for exported views"
+msgstr "Utiliser la même méthode de traduction pour les vues exportées"
+msgid ""
+"Exported views will use Core translation by default. Enable this to "
+"always use the configured translation method."
+msgstr ""
+"Les vues exportées utiliseront la traduction du Noyau par défaut. "
+"Activer cela pour toujours utiliser la méthode de traduction "
+"configurée."
+msgid ""
+"Leave blank for all. Otherwise, the first selected term will be the "
+"default instead of \"Any\"."
+msgstr ""
+"Laisser vide pour tous. Sinon, le premier terme sélectionné sera la "
+"valeur par défaut à la place de \"Tout\"."
+msgid "Attempt to load a revision on an unsupported entity type @entity_type."
+msgstr ""
+"Tentative de charger une révision sur un type d'entité non-supporté "
+"@entity_type."
+msgid "Changed year + month"
+msgstr "Année + mois de modification"
+msgid "Changed year"
+msgstr "Année de modification"
+msgid "Changed month"
+msgstr "Mois de modification"
+msgid "Changed day"
+msgstr "Jour de modification"
+msgid "Changed week"
+msgstr "Semaine de modification"
+msgid "Combine multiple fields together and search by them."
+msgstr "Combiner plusieurs champs pour y effectuer une recherche."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/sites/all/translations/webform-7.x-4.12.fr_4.po	Mon Mar 19 16:00:44 2018 +0100
@@ -0,0 +1,2976 @@
+# French translation of Webform (7.x-4.12)
+# Copyright (c) 2017 by the French translation team
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Webform (7.x-4.12)\n"
+"POT-Creation-Date: 2017-12-13 18:23+0000\n"
+"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
+"Language-Team: French\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+
+msgid "Title"
+msgstr "Titre"
+msgid "select"
+msgstr "sélectionner"
+msgid "Save configuration"
+msgstr "Enregistrer la configuration"
+msgid "delete"
+msgstr "supprimer"
+msgid "Status"
+msgstr "Etat"
+msgid "Markup"
+msgstr "Balisage"
+msgid "E-mail"
+msgstr "Courriel"
+msgid "Delete"
+msgstr "Supprimer"
+msgid "Submit"
+msgstr "Soumettre"
+msgid "Operations"
+msgstr "Actions"
+msgid "Value"
+msgstr "Valeur"
+msgid "Username"
+msgstr "Nom d'utilisateur"
+msgid "Private"
+msgstr "Privé"
+msgid "Is"
+msgstr "Est"
+msgid "Type"
+msgstr "Type"
+msgid "Closed"
+msgstr "Fermé"
+msgid "Subject"
+msgstr "Objet"
+msgid "Cancel"
+msgstr "Annuler"
+msgid "Description"
+msgstr "Description"
+msgid "more"
+msgstr "plus"
+msgid "required"
+msgstr "requis"
+msgid "Disabled"
+msgstr "Désactivé"
+msgid "Enabled"
+msgstr "Activé"
+msgid "Action"
+msgstr "Action"
+msgid "On"
+msgstr "Activé"
+msgid "Yes"
+msgstr "Oui"
+msgid "No"
+msgstr "Non"
+msgid "Download"
+msgstr "Téléchargement"
+msgid "view"
+msgstr "voir"
+msgid "File"
+msgstr "Fichier"
+msgid "Advanced options"
+msgstr "Options avancées"
+msgid "Edit"
+msgstr "Modifier"
+msgid "Date"
+msgstr "Date"
+msgid "Reset"
+msgstr "Réinitialiser"
+msgid "None"
+msgstr "Aucun(e)"
+msgid "Number"
+msgstr "Nombre"
+msgid "Weight"
+msgstr "Poids"
+msgid "Types"
+msgstr "Types"
+msgid "Multiple"
+msgstr "Multiple"
+msgid "Required"
+msgstr "Requis"
+msgid "Parent"
+msgstr "Parent"
+msgid "none"
+msgstr "aucun(e)"
+msgid "Category"
+msgstr "Catégorie"
+msgid "Name"
+msgstr "Nom"
+msgid "edit"
+msgstr "modifier"
+msgid "Label"
+msgstr "Étiquette"
+msgid "Preview"
+msgstr "Aperçu"
+msgid "Save"
+msgstr "Enregistrer"
+msgid "True"
+msgstr "Vrai"
+msgid "False"
+msgstr "Faux"
+msgid "Default"
+msgstr "Par défaut"
+msgid "Download PDF"
+msgstr "Télécharger le PDF"
+msgid "Open"
+msgstr "Ouvert"
+msgid "Sunday"
+msgstr "Dimanche"
+msgid "Monday"
+msgstr "Lundi"
+msgid "Tuesday"
+msgstr "Mardi"
+msgid "Wednesday"
+msgstr "Mercredi"
+msgid "Thursday"
+msgstr "Jeudi"
+msgid "Friday"
+msgstr "Vendredi"
+msgid "Saturday"
+msgstr "Samedi"
+msgid "Archives"
+msgstr "Archives"
+msgid "Time"
+msgstr "Heure"
+msgid "Add"
+msgstr "Ajouter"
+msgid "View"
+msgstr "Voir"
+msgid "Format"
+msgstr "Format"
+msgid "URL"
+msgstr "URL"
+msgid "Display"
+msgstr "Affichage"
+msgid "Advanced settings"
+msgstr "Paramètres avancés"
+msgid "results"
+msgstr "résultats"
+msgid "+"
+msgstr "+"
+msgid "-"
+msgstr "-"
+msgid "Display mode"
+msgstr "Mode d'affichage"
+msgid "Component"
+msgstr "Composant"
+msgid "Components"
+msgstr "Composants"
+msgid "#"
+msgstr "#"
+msgid "Before"
+msgstr "Avant"
+msgid "After"
+msgstr "Après"
+msgid "User"
+msgstr "Utilisateur"
+msgid "Options"
+msgstr "Options"
+msgid "Created"
+msgstr "Créé(e)"
+msgid "Node"
+msgstr "Nœud"
+msgid "Data type"
+msgstr "Type de données"
+msgid ""
+"Optional. In the menu, the heavier items will sink and the lighter "
+"items will be positioned nearer the top."
+msgstr ""
+"Facultatif. Dans le menu, les éléments au poids plus élevé seront "
+"positionnés vers le bas et les éléments au poids plus faible seront "
+"positionnés plus haut."
+msgid "All"
+msgstr "Tout"
+msgid "Submitted"
+msgstr "Soumis"
+msgid "Year"
+msgstr "Année"
+msgid "Date format"
+msgstr "Format de date"
+msgid "Submission information"
+msgstr "Informations sur la soumission"
+msgid "Off"
+msgstr "Désactivé"
+msgid "Inline"
+msgstr "Sur la même ligne"
+msgid "Preview message"
+msgstr "Aperçu"
+msgid "From"
+msgstr "A partir de"
+msgid "Custom"
+msgstr "Personnalisé"
+msgid "E-mail address"
+msgstr "Adresse de courriel"
+msgid "Is not"
+msgstr "N'est pas"
+msgid "Count"
+msgstr "Décompte"
+msgid "Width"
+msgstr "Largeur"
+msgid "Height"
+msgstr "Hauteur"
+msgid "This field is required."
+msgstr "Ce champ est requis."
+msgid "Textfield"
+msgstr "Champ texte"
+msgid "Maximum"
+msgstr "Maximum"
+msgid "Range"
+msgstr "Intervalle"
+msgid "Media"
+msgstr "Média"
+msgid "Plain text"
+msgstr "Texte brut"
+msgid "Month"
+msgstr "Mois"
+msgid "Load"
+msgstr "Charger"
+msgid "Serial Number"
+msgstr "Numéro de série"
+msgid "Unlimited"
+msgstr "Illimité"
+msgid "Address"
+msgstr "Adresse"
+msgid "Send"
+msgstr "Envoyer"
+msgid "Serial"
+msgstr "Séquentiel"
+msgid "Desc"
+msgstr "Desc"
+msgid "Day"
+msgstr "Jour"
+msgid "Table"
+msgstr "Tableau"
+msgid "Start"
+msgstr "Début"
+msgid "am"
+msgstr "am"
+msgid "pm"
+msgstr "pm"
+msgid "Start date"
+msgstr "Date de début"
+msgid "End date"
+msgstr "Date de fin"
+msgid "String"
+msgstr "Chaîne de caractères"
+msgid "Both"
+msgstr "Les deux"
+msgid "Argument"
+msgstr "Argument"
+msgid "Clone"
+msgstr "Cloner"
+msgid "Option"
+msgstr "Option"
+msgid "Operator"
+msgstr "Opérateur"
+msgid "Untitled"
+msgstr "Sans titre"
+msgid "Position"
+msgstr "Position"
+msgid "HTML"
+msgstr "HTML"
+msgid "Integer"
+msgstr "Entier"
+msgid "IP Address"
+msgstr "Adresse IP"
+msgid "CSS classes"
+msgstr "Classes CSS"
+msgid "UID"
+msgstr "UID"
+msgid "Collapsible"
+msgstr "Repliable"
+msgid "Sort by"
+msgstr "Trier par"
+msgid "American Samoa"
+msgstr "Samoa américaines"
+msgid "Georgia"
+msgstr "Géorgie"
+msgid "Guam"
+msgstr "Guam"
+msgid "Marshall Islands"
+msgstr "Îles Marshall"
+msgid "Palau"
+msgstr "Palaos"
+msgid "Puerto Rico"
+msgstr "Porto Rico"
+msgid "Virgin Islands"
+msgstr "Îles Vierges"
+msgid "Modified"
+msgstr "Modifié"
+msgid "Hidden"
+msgstr "Caché"
+msgid "Root"
+msgstr "Racine"
+msgid "Tokens"
+msgstr "Jetons (tokens)"
+msgid "Time format"
+msgstr "Format de temps"
+msgid "Countries"
+msgstr "Pays"
+msgid "Clear"
+msgstr "Vider"
+msgid "‹ previous"
+msgstr "‹ précédent"
+msgid "next ›"
+msgstr "suivant ›"
+msgid "Source"
+msgstr "Source"
+msgid "Hour"
+msgstr "Heure"
+msgid "Minute"
+msgstr "Minute"
+msgid "Select list"
+msgstr "Liste de sélection"
+msgid "Text field"
+msgstr "Champ texte"
+msgid "is equal to"
+msgstr "est égal à"
+msgid "is not equal to"
+msgstr "n'est pas égal à"
+msgid "E-mail subject"
+msgstr "Sujet du courriel"
+msgid "Empty"
+msgstr "Vide"
+msgid "Greater than"
+msgstr "Supérieur"
+msgid "Less than"
+msgstr "Inférieur"
+msgid "Default template"
+msgstr "Modèle par défaut"
+msgid "Maxlength"
+msgstr "Longueur maximale"
+msgid "or"
+msgstr "ou"
+msgid "."
+msgstr "."
+msgid "Results"
+msgstr "Résultats"
+msgid "No."
+msgstr "Non."
+msgid "Missing"
+msgstr "Manquant"
+msgid "Completed"
+msgstr "Terminé"
+msgid "Thousands separator"
+msgstr "Séparateur de milliers"
+msgid "completed"
+msgstr "terminé"
+msgid "Documents"
+msgstr "Documents"
+msgid "Allowed file extensions"
+msgstr "Extensions de fichier autorisées"
+msgid "!name field is required."
+msgstr "Le champ !name est requis."
+msgid "Automatic"
+msgstr "Automatique"
+msgid "Complete"
+msgstr "Terminé"
+msgid "Submissions"
+msgstr "Soumissions"
+msgid "Analysis"
+msgstr "Analyse"
+msgid "Clear Form Submissions"
+msgstr "Effacer les soumissions du formulaire"
+msgid "Are you sure you want to delete all submissions for this form?"
+msgstr ""
+"Êtes vous sûr(e) de vouloir supprimer toutes les soumissions pour ce "
+"formulaire ?"
+msgid "Webform %title entries cleared."
+msgstr "Les entrées du webform %title ont été effacées."
+msgid "Are you sure you want to delete this submission?"
+msgstr "Êtes vous sûr(e) de vouloir supprimer cette soumission ?"
+msgid "Submitted values are"
+msgstr "Les valeurs soumises sont"
+msgid "webform"
+msgstr "webform"
+msgid "Q"
+msgstr "Q"
+msgid "responses"
+msgstr "réponses"
+msgid "Webforms"
+msgstr "Webforms"
+msgid "View and edit all the available webforms on your site."
+msgstr "Voir et éditer tous les webforms utilisés sur votre site."
+msgid "Webform"
+msgstr "Webform"
+msgid "Global configuration of webform functionality."
+msgstr "Configuration globale des fonctionnalités Webform."
+msgid ""
+"Create a new form or questionnaire accessible to users. Submission "
+"results and statistics are recorded and accessible to privileged "
+"users."
+msgstr ""
+"Créer un nouveau formulaire ou questionnaire accessible aux "
+"utilisateurs. Les soumissions et leurs statistiques sont enregistrées "
+"et accessibles aux utilisateurs privilégiés."
+msgid "E-mail to address"
+msgstr "Adresse de courriel du destinataire"
+msgid "E-mail from name"
+msgstr "Nom de l'expéditeur"
+msgid "E-mail from address"
+msgstr "Adresse de courriel de l'expéditeur"
+msgid "ever"
+msgstr "en tout"
+msgid "every hour"
+msgstr "par heure"
+msgid "every day"
+msgstr "par jour"
+msgid "every week"
+msgstr "par semaine"
+msgid "No Components, add a component below."
+msgstr "Aucun composant, ajouter un composant ci-dessous."
+msgid "Field Key"
+msgstr "Clé du champ"
+msgid "This is used as a descriptive label when displaying this form element."
+msgstr ""
+"Sera utilisé comme étiquette descriptive lors de l'affichage de cet "
+"élément."
+msgid ""
+"A short description of the field used as help for the user when he/she "
+"uses the form."
+msgstr ""
+"Une courte description du champ présentée à l'utilisateur pour "
+"l'aider à remplir le formulaire."
+msgid "Check this option if the user must enter a value."
+msgstr "Cochez cette option si l'utilisateur doit entrer une valeur."
+msgid ""
+"The webform component of type @type does not have an edit function "
+"defined."
+msgstr ""
+"Le composant du formulaire de type @type n'a pas de fonction "
+"d'édition définie."
+msgid ""
+"The field key %field_key is invalid. Please include only lowercase "
+"alphanumeric characters and underscores."
+msgstr ""
+"La clé %field_key du champ est invalide. Veuillez entrer uniquement "
+"des caractères alphanumériques en minuscule et le tiret bas."
+msgid ""
+"The field key %field_key is already in use by the field labeled "
+"%existing_field. Please use a unique key."
+msgstr ""
+"La clé %field_key du champ est déjà utilisée par le champ qui a "
+"pour label %existing_field. Veuillez utiliser une clé unique."
+msgid "Previous submission"
+msgstr "Soumission précédente"
+msgid "Next submission"
+msgstr "Soumission suivante"
+msgid "Submitted by !name"
+msgstr "Soumis par !name"
+msgid "Next Page >"
+msgstr "Page suivante >"
+msgid "< Previous Page"
+msgstr "< Page précédente"
+msgid "The webform component @type is not able to be displayed"
+msgstr "Le composant de formulaire @type ne peut pas être affiché"
+msgid "Illegal information. Data not submitted."
+msgstr "Information invalide. Données non soumises."
+msgid "Go back to the form"
+msgstr "Retourner au formulaire"
+msgid "Enables the creation of forms and questionnaires."
+msgstr "Permet la création de formulaires et de questionnaires."
+msgid "Default value"
+msgstr "Valeur par défaut"
+msgid "The default value of the field."
+msgstr "La valeur par défaut du champ."
+msgid "Presents month, day, and year fields."
+msgstr "Présente des champs jour, mois et année."
+msgid "Left Blank"
+msgstr "Laissé vide"
+msgid "User entered value"
+msgstr "Valeur entrée par l'utilisateur"
+msgid "Width of the textfield."
+msgstr "Largeur du champ texte (textfield)."
+msgid "User email as default"
+msgstr "Courriel de l'utilisateur par défaut."
+msgid ""
+"Set the default value of this field to the user email, if he/she is "
+"logged in."
+msgstr ""
+"Met le courriel de l'utilisateur comme valeur par défaut de ce champ, "
+"si celui-ci est connecté."
+msgid ""
+"Make this field non-editable. Useful for setting an unchangeable "
+"default value."
+msgstr ""
+"Rendre ce champ non-éditable. Utile pour fournir une valeur par "
+"défaut non modifiable."
+msgid "Average submission length in words (ex blanks)"
+msgstr "Longueur moyenne des soumissions en mots (sans les blancs)"
+msgid ""
+"If this fieldset is collapsible, the user may open or close the "
+"fieldset."
+msgstr ""
+"Si le groupe de champs est repliable, l'utilisateur pourra l'ouvrir ou "
+"le fermer."
+msgid "Collapsed by Default"
+msgstr "Replié par défaut"
+msgid ""
+"Collapsible fieldsets are \"open\" by default. Select this option to "
+"default the fieldset to \"closed.\""
+msgstr ""
+"Les groupes de champs repliables sont \"ouverts\" par défaut. "
+"Sélectionnez cette option pour mettre par défaut les groupes de "
+"champ à \"fermés\"."
+msgid "User uploaded file"
+msgstr "Fichier téléversé par un utilisateur"
+msgid "Average uploaded file size"
+msgstr "Taille moyenne des fichiers transférés"
+msgid "Questions"
+msgstr "Questions"
+msgid "Randomize Options"
+msgstr "Affichage aléatoire des Options"
+msgid ""
+"Randomizes the order of options on the top when they are displayed in "
+"the form."
+msgstr ""
+"Rendre aléatoire l'ordre d'affichage des options en haut, "
+"lorsqu'elles sont affichées dans le formulaire."
+msgid "Randomize Questions"
+msgstr "Affichage aléatoire des Questions"
+msgid ""
+"Randomize the order of the questions on the side when they are "
+"displayed in the form."
+msgstr ""
+"Rendre aléatoire l'ordre d'affichage des questions sur le côté "
+"lorsqu'elles sont affichées dans le formulaire."
+msgid "Allows creation of grid questions, denoted by radio buttons."
+msgstr ""
+"Permet la création de grilles de questions, sous forme de boutons "
+"radio."
+msgid "Non-empty"
+msgstr "Non-vide"
+msgid ""
+"Check this option if the user should be allowed to choose multiple "
+"values."
+msgstr ""
+"Cochez cette option si l'utilisateur est autorisé à sélectionner "
+"plusieurs valeurs."
+msgid "Listbox"
+msgstr "Liste déroulante"
+msgid "Allows creation of checkboxes, radio buttons, or select menus."
+msgstr ""
+"Permet la création de cases à cocher, boutons radio, ou menus de "
+"sélection."
+msgid "A large text area that allows for multiple lines of input."
+msgstr "Une grande zone de texte qui permet la saisie de plusieurs lignes."
+msgid "Basic textfield type."
+msgstr "Champ de texte basique."
+msgid "Presents the user with hour and minute fields. Optional am/pm fields."
+msgstr ""
+"Présente à l'utilisateur des champs heures et minutes. Champs am/pm "
+"optionnels."
+msgid "Apply"
+msgstr "Appliquer"
+msgid "is"
+msgstr "est"
+msgid "Alabama"
+msgstr "Alabama"
+msgid "Alaska"
+msgstr "Alaska"
+msgid "Arizona"
+msgstr "Arizona"
+msgid "Arkansas"
+msgstr "Arkansas"
+msgid "California"
+msgstr "Californie"
+msgid "Colorado"
+msgstr "Colorado"
+msgid "Connecticut"
+msgstr "Connecticut"
+msgid "Delaware"
+msgstr "Delaware"
+msgid "Florida"
+msgstr "Floride"
+msgid "Hawaii"
+msgstr "Hawaï"
+msgid "Idaho"
+msgstr "Idaho"
+msgid "Illinois"
+msgstr "Illinois"
+msgid "Indiana"
+msgstr "Indiana"
+msgid "Iowa"
+msgstr "Iowa"
+msgid "Kansas"
+msgstr "Kansas"
+msgid "Kentucky"
+msgstr "Kentucky"
+msgid "Louisiana"
+msgstr "Louisiane"
+msgid "Maine"
+msgstr "Maine"
+msgid "Maryland"
+msgstr "Maryland"
+msgid "Massachusetts"
+msgstr "Massachusetts"
+msgid "Michigan"
+msgstr "Michigan"
+msgid "Minnesota"
+msgstr "Minnesota"
+msgid "Mississippi"
+msgstr "Mississippi"
+msgid "Missouri"
+msgstr "Missouri"
+msgid "Montana"
+msgstr "Montana"
+msgid "Nebraska"
+msgstr "Nebraska"
+msgid "Nevada"
+msgstr "Nevada"
+msgid "New Hampshire"
+msgstr "New Hampshire"
+msgid "New Jersey"
+msgstr "New Jersey"
+msgid "New Mexico"
+msgstr "Nouveau Mexique"
+msgid "New York"
+msgstr "New York"
+msgid "North Carolina"
+msgstr "Caroline du Nord"
+msgid "North Dakota"
+msgstr "Dakota du Nord"
+msgid "Ohio"
+msgstr "Ohio"
+msgid "Oklahoma"
+msgstr "Oklahoma"
+msgid "Oregon"
+msgstr "Oregon"
+msgid "Pennsylvania"
+msgstr "Pennsylvanie"
+msgid "Rhode Island"
+msgstr "Rhode Island"
+msgid "South Carolina"
+msgstr "Caroline du Sud"
+msgid "South Dakota"
+msgstr "Dakota du Sud"
+msgid "Tennessee"
+msgstr "Tennessee"
+msgid "Texas"
+msgstr "Texas"
+msgid "Utah"
+msgstr "Utah"
+msgid "Vermont"
+msgstr "Vermont"
+msgid "Virginia"
+msgstr "Virginie"
+msgid "Washington"
+msgstr "Washington"
+msgid "West Virginia"
+msgstr "Virginie-Occidentale"
+msgid "Wisconsin"
+msgstr "Wisconsin"
+msgid "Wyoming"
+msgstr "Wyoming"
+msgid "Above"
+msgstr "Au-dessus"
+msgid "Minimum"
+msgstr "Minimum"
+msgid "1 minute"
+msgstr "1 minute"
+msgid "!title !required"
+msgstr "!title !required"
+msgid "Grid"
+msgstr "Grille"
+msgid ","
+msgstr ","
+msgid "Hide"
+msgstr "Masquer"
+msgid "< Previous"
+msgstr "< Précédent"
+msgid "Submission settings"
+msgstr "Paramètres de soumission"
+msgid "From name"
+msgstr "Nom de l'expéditeur"
+msgid "From address"
+msgstr "Adresse de l'expéditeur"
+msgid "E-mail template"
+msgstr "Modèle de courriel"
+msgid "Export format"
+msgstr "Format d'export"
+msgid "« first"
+msgstr "« premier"
+msgid "last »"
+msgstr "dernier »"
+msgid "Devel"
+msgstr "Devel"
+msgid "District of Columbia"
+msgstr "District de Columbia"
+msgid "Offset"
+msgstr "Décalage"
+msgid "begins with"
+msgstr "commence par"
+msgid "contains"
+msgstr "contient"
+msgid "does not contain"
+msgstr "ne contient pas"
+msgid "Print"
+msgstr "Imprimer"
+msgid "Data"
+msgstr "Données"
+msgid "Validation"
+msgstr "Validation"
+msgid "Available as block"
+msgstr "Disponible en tant que bloc"
+msgid "and"
+msgstr "et"
+msgid "Text to display"
+msgstr "Texte à afficher"
+msgid ""
+"The new webform %title has been created. Add new fields to your "
+"webform with the form below."
+msgstr ""
+"Le nouveau formulaire  %title a été créé. Ajoutez ci-dessous de "
+"nouveaux champs à votre formulaire."
+msgid "Submission deleted."
+msgstr "Soumission supprimée."
+msgid "Step"
+msgstr "Étape"
+msgid "Target"
+msgstr "Cible"
+msgid "If"
+msgstr "Si"
+msgid "Redirect URL"
+msgstr "Adresse URL de redirection"
+msgid "Resizable"
+msgstr "Redimensionnable"
+msgid "Display format"
+msgstr "Format d'affichage"
+msgid "shown"
+msgstr "affiché"
+msgid "Custom template"
+msgstr "Gabarit personnalisé"
+msgid "Webform submissions"
+msgstr "Soumissions de webform"
+msgid "IP address"
+msgstr "Adresse IP"
+msgid "E-mail to"
+msgstr "Envoyer par e-mail à"
+msgid ""
+"An illegal choice has been detected. Please contact the site "
+"administrator."
+msgstr ""
+"Un choix interdit a été détecté. Veuillez contacter "
+"l'administrateur du site."
+msgid "Illegal choice %choice in !name element."
+msgstr "Choix interdit %choice dans l'élément !name."
+msgid "Decimal point"
+msgstr "Marqueur décimal"
+msgid "Delimited text"
+msgstr "Texte délimité"
+msgid "A plain text file delimited by commas, tabs, or other characters."
+msgstr ""
+"Un fichier texte brut délimité par des virgules, tabulations, ou "
+"autres caractères."
+msgid "Microsoft Excel"
+msgstr "Microsoft Excel"
+msgid "A file readable by Microsoft Excel."
+msgstr "Un fichier lisible par Microsoft Excel."
+msgid "Delimited text format"
+msgstr "Format du texte délimité"
+msgid "Comma (,)"
+msgstr "Virgule (,)"
+msgid "Tab (\\t)"
+msgstr "Tabulation (\\t)"
+msgid "Semicolon (;)"
+msgstr "Point-virgule (;)"
+msgid "Colon (:)"
+msgstr "Deux-points (:)"
+msgid "Pipe (|)"
+msgstr "Pipe (|)"
+msgid "Period (.)"
+msgstr "Point (.)"
+msgid "Space ( )"
+msgstr "Espace ( )"
+msgid "ends with"
+msgstr "se termine par"
+msgid "View link"
+msgstr "Lien d'affichage"
+msgid "is not"
+msgstr "n'est pas"
+msgid "Delete link"
+msgstr "Lien de suppression"
+msgid "Draft"
+msgstr "Brouillon"
+msgid "Save Draft"
+msgstr "Enregistrer le brouillon"
+msgid "12-hour (am/pm)"
+msgstr "12 heures (am/pm)"
+msgid "24-hour"
+msgstr "24 heures"
+msgid ""
+"There are no submissions for this form. <a href=\"!url\">View this "
+"form</a>."
+msgstr ""
+"Il n'y a pas de soumission pour ce formulaire. <a href=\"!url\">Voir "
+"ce formulaire</a>."
+msgid "Sum"
+msgstr "Somme"
+msgid "Start time"
+msgstr "Date de début"
+msgid "is greater than"
+msgstr "est supérieur à"
+msgid "is less than"
+msgstr "est inférieur à"
+msgid "Custom URL"
+msgstr "URL personnalisée"
+msgid "form"
+msgstr "formulaire"
+msgid "Edit link"
+msgstr "Lien de modification"
+msgid "The results of this submission may be viewed at:"
+msgstr "Les résultats de cette soumission peuvent être vus ici :"
+msgid "New component name"
+msgstr "Nom du nouveau composant"
+msgid "When adding a new component, the name field is required."
+msgstr "Lors de l'ajout d'un nouveau composant, le nom du champ est requis."
+msgid ""
+"Optional. You may organize your form by placing this component inside "
+"another fieldset."
+msgstr ""
+"Optionnel. Vous pouvez organiser votre formulaire en plaçant ce "
+"composant au sein d'un groupe de champs ('fieldset')."
+msgid "Component %name cloned."
+msgstr "Le composant %name a été cloné."
+msgid "Component %name updated."
+msgstr "Composant %name mis à jour."
+msgid "New component %name added."
+msgstr "Composant %name ajouté."
+msgid "Delete the %name fieldset?"
+msgstr "Supprimer le groupe de champs %name ?"
+msgid "Delete the %name component?"
+msgstr "Supprimer le composant %name ?"
+msgid ""
+"This will immediately delete the %name component from the %webform "
+"webform. This cannot be undone."
+msgstr ""
+"Cela supprimera immédiatement le composant %name du formulaire "
+"%webform. L'action ne peut pas être annulée."
+msgid "Component %name deleted."
+msgstr "Composant %name supprimé."
+msgid "Submissions for %user"
+msgstr "Soumissions de %user"
+msgid "Show !count results per page."
+msgstr "Présenter !count résultats par page."
+msgid "Showing all results."
+msgstr "Présente tous les résultats."
+msgid "@total results total."
+msgstr "@total résultats au total."
+msgid ""
+"This is the delimiter used in the CSV/TSV file when downloading "
+"Webform results. Using tabs in the export is the most reliable method "
+"for preserving non-latin characters. You may want to change this to "
+"another character depending on the program with which you anticipate "
+"importing results."
+msgstr ""
+"Ceci est le délimiteur utilisé dans le fichier CSV/TSV lors du "
+"téléchargement des résultats de Webform. La méthode la plus fiable "
+"pour préserver les caractères hors alphabet latin consiste à "
+"utiliser la tabulation. Vous pouvez vouloir le remplacer par un autre "
+"caractère en fonction du programme avec lequel vous prévoyez "
+"d'importer les résultats."
+msgid "Submission Details"
+msgstr "Détails de la soumission"
+msgid "SID"
+msgstr "SID"
+msgid ""
+"These permissions affect which roles can submit this webform. It does "
+"not prevent access to the webform page. If needing to prevent access "
+"to the webform page entirely, use a content access module such as <a "
+"href=\"http://drupal.org/project/taxonomy_access\">Taxonomy Access</a> "
+"or <a href=\"http://drupal.org/project/node_privacy_byrole\">Node "
+"Privacy by Role</a>."
+msgstr ""
+"Ces permissions déterminent quels sont les rôles qui peuvent "
+"soumettre ce formulaire. Elles ne protègent pas l'accès à la page "
+"du formulaire. Pour empêcher l'accès au formulaire dans sa "
+"totalité, utilisez un module d'accès au contenu comme <a "
+"href=\"http://drupal.org/project/taxonomy_access\">Taxonomy Access</a> "
+"ou <a href=\"http://drupal.org/project/node_privacy_byrole\">Node "
+"Privacy by Role</a>."
+msgid "Roles that can submit this webform"
+msgstr "Les rôles qui peuvent soumettre ce formulaire"
+msgid ""
+"By default the submit button on this form will have the label "
+"<em>Submit</em>. Enter a new title here to override the default."
+msgstr ""
+"Par défaut le bouton de soumission de ce formulaire aura le label "
+"<em>Soumettre</em>. Entrer un nouveau label si vous voulez le changer."
+msgid "Submissions for this form are closed."
+msgstr "Les soumissions de ce formulaire sont closes."
+msgid ""
+"You must <a href=\"!login\">login</a> or <a "
+"href=\"!register\">register</a> to view this form."
+msgstr ""
+"Vous devez vous <a href=\"!login\">connecter</a> ou vous <a "
+"href=\"!register\">enregister</a> pour voir ce formulaire."
+msgid "You do not have permission to view this form."
+msgstr "Vous n'avez pas le droit de voir ce formulaire."
+msgid "You have submitted this form the maximum number of times (@count)."
+msgstr ""
+"Vous avez déjà soumis le formulaire un nombre maximum de fois "
+"(@count)."
+msgid "You have already submitted this form."
+msgstr "Vous avez déjà soumis ce formulaire."
+msgid "You may not submit another entry at this time."
+msgstr "Vous ne pouvez pas soumettre une nouvelle entrée pour le moment."
+msgid "<a href=\"!url\">View your previous submissions</a>."
+msgstr "<a href=\"!url\">Voir vos soumissions précédentes</a>."
+msgid "Available components"
+msgstr "Composants disponibles"
+msgid ""
+"These are the available field types for your installation of Webform. "
+"You may disable any of these components by unchecking its "
+"corresponding box. Only checked components will be available in "
+"existing or new webforms."
+msgstr ""
+"Voici les types de champs disponibles pour votre installation de "
+"Webform. Vous pouvez désactiver chacun de ces composants en "
+"décochant sa case correspondante. Seuls les composants sélectionnés "
+"seront disponibles dans les nouveaux formulaires ou les formulaires "
+"existants."
+msgid "Default e-mail values"
+msgstr "Valeurs par défaut des courriels"
+msgid ""
+"The default sender address for emailed webform results; often the "
+"e-mail address of the maintainer of your forms."
+msgstr ""
+"L'adresse de l'expéditeur par défaut des soumissions ; souvent "
+"l'adresse de la personne qui maintient vos formulaires."
+msgid ""
+"The default sender name which is used along with the default from "
+"address."
+msgstr ""
+"Le nom de l'expéditeur associé à l'adresse électronique par "
+"défaut."
+msgid "Default subject"
+msgstr "Sujet par défaut"
+msgid "The default subject line of any e-mailed results."
+msgstr "Le sujet par défaut des résultats envoyés par courriel."
+msgid "Default export format"
+msgstr "Format d'export par défaut"
+msgid "Default export delimiter"
+msgstr "Délimiteur par défaut pour l'export"
+msgid "Submission access control"
+msgstr "Contrôle d'accès de la soumission"
+msgid "Select the user roles that may submit each individual webform"
+msgstr ""
+"Sélectionner les rôles des utilisateurs qui peuvent soumettre chaque "
+"formulaire individuel"
+msgid "Disable Webform submission access control"
+msgstr "Désactive le contrôle d'accès de la soumission Webform"
+msgid ""
+"By default, the configuration form for each webform allows the "
+"administrator to choose which roles may submit the form. You may want "
+"to allow users to always submit the form if you are using a separate "
+"node access module to control access to webform nodes themselves."
+msgstr ""
+"Par défaut, la configuration de chaque formulaire permet à "
+"l'administrateur de choisir quels rôles pourront soumettre le "
+"formulaire. Vous pouvez vouloir toujours autoriser les utilisateurs à "
+"soumettre le formulaire si vous utilisez un module à part pour "
+"contrôler l'accès aux nœuds Webform (Node Access)."
+msgid "Form: !form"
+msgstr "Formulaire : !form"
+msgid "Submission updated."
+msgstr "Soumission mise à jour."
+msgid "Thank you, your submission has been received."
+msgstr "Merci, votre soumission a été reçue."
+msgid "Token values"
+msgstr "Jetons (tokens)"
+msgid "Webform confirmation"
+msgstr "Confirmation du Webform"
+msgid "Form components"
+msgstr "Composants de formulaire"
+msgid "Webform submission"
+msgstr "Soumissions Webform"
+msgid "Website timezone"
+msgstr "Fuseau horaire du site"
+msgid "User timezone"
+msgstr "Fuseau horaire de l'utilisateur"
+msgid "Use a textfield for year"
+msgstr "Utiliser un champ texte pour l'année"
+msgid ""
+"If checked, the generated date field will use a textfield for the "
+"year. Otherwise it will use a select list."
+msgstr ""
+"Si coché, le champ date généré utilisera un champ texte pour "
+"l'année. Sinon il utilisera une liste déroulante."
+msgid "Entered !name is not a valid date."
+msgstr "La date !name saisie n'est pas une date valide."
+msgid "Leaving blank will use the default size."
+msgstr "Si vous laissez vide, la dimension par défaut sera utilisée."
+msgid "Fieldsets allow you to organize multiple fields into groups."
+msgstr ""
+"Les groupes de champs vous permettent d'organiser plusieurs champs en "
+"groupes."
+msgid "Filesize (KB)"
+msgstr "Taille du fichier (KB)"
+msgid ""
+"A field which is not visible to the user, but is recorded with the "
+"submission."
+msgstr ""
+"Un champ qui n'est pas visible à l'utilisateur, mais qui est "
+"enregistré avec la soumission."
+msgid "Displays text as HTML in the form; does not render a field."
+msgstr "Affiche du texte en HTML dans le formulaire ; n'affiche pas un champ."
+msgid ""
+"Options within the select list must be unique. The following keys have "
+"been used multiple times:"
+msgstr ""
+"Les options à l'intérieur d'une liste déroulants doivent être "
+"uniques. Les clés suivantes ont été utilisées plusieurs fois :"
+msgid "Make this field resizable by the user."
+msgstr "Rendre ce champ redimensionnable par l'utilisateur."
+msgid "Examples: $, #, -."
+msgstr "Exemples : $, #, -."
+msgid "Examples: lb, kg, %."
+msgstr "Exemples : lb, kg, %."
+msgid "Display on"
+msgstr "Afficher sur"
+msgid "<"
+msgstr "<"
+msgid ">"
+msgstr ">"
+msgid "Items per page"
+msgstr "Éléments par page"
+msgid "Placeholder"
+msgstr "Placeholder"
+msgid "- All -"
+msgstr "- Tout -"
+msgid "Compact"
+msgstr "Compact"
+msgid "Fieldset"
+msgstr "Groupe de champs"
+msgid "Checkboxes"
+msgstr "Cases à cocher"
+msgid "Textarea"
+msgstr "Zone de texte"
+msgid "Form key"
+msgstr "Clé du formulaire"
+msgid ""
+"!name cannot be longer than %max characters but is currently %length "
+"characters long."
+msgstr ""
+"Le champ « !name » ne peut pas être plus long que %max caractères "
+"mais comporte actuellement %length caractères."
+msgid "Illegal choice %choice in %name element."
+msgstr "Choix « %choice » interdit dans l'élément « %name »."
+msgid "Progress indicator"
+msgstr "Indicateur de progression"
+msgid "Bar with progress meter"
+msgstr "Barre avec mesure de progression"
+msgid "Throbber"
+msgstr "Throbber"
+msgid "Days of the week"
+msgstr "Jours de la semaine"
+msgid "is empty"
+msgstr "est vide"
+msgid "Form settings"
+msgstr "Paramètres du formulaire"
+msgid "Custom label"
+msgstr "Étiquette personnalisée"
+msgid "Unique"
+msgstr "Unique"
+msgid "Progress bar"
+msgstr "Barre de progression"
+msgid "(unknown)"
+msgstr "(inconnu)"
+msgid ""
+"Accepts any date in any <a "
+"href=\"http://www.gnu.org/software/tar/manual/html_chapter/Date-input-formats.html\">GNU "
+"Date Input Format</a>. Strings such as today, +2 months, and Dec 9 "
+"2004 are all valid."
+msgstr ""
+"Accepte une date dont le format respecte le <a "
+"href=\"http://www.gnu.org/software/tar/manual/html_chapter/Date-input-formats.html\">Format "
+"standard GNU de saisie d'une date</a>. Des chaînes telles que : "
+"today, +2 months, et Dec 9 2004 sont toutes valides."
+msgid ""
+"Accepts a time in any <a "
+"href=\"http://www.gnu.org/software/tar/manual/html_chapter/Date-input-formats.html\">GNU "
+"Date Input Format</a>. Strings such as now, +2 hours, and 10:30pm are "
+"all valid."
+msgstr ""
+"Accepte une heure dans l'un des <a "
+"href=\"http://www.gnu.org/software/tar/manual/html_chapter/Date-input-formats.html\">Formats "
+"Standard GNU de saisie des dates</a>. Des chaînes telles que now, +2 "
+"hours, and 10:30pm sont toutes valides."
+msgid "Rename files"
+msgstr "Renommer les fichiers"
+msgid "Serial number"
+msgstr "Numéro de série"
+msgid "Edit URL"
+msgstr "Modifier l'URL"
+msgid "Status message"
+msgstr "Message d'état"
+msgid "Upload destination"
+msgstr "Destination pour le transfert"
+msgid "E-mails"
+msgstr "Courriels"
+msgid "Webform enables nodes to have attached forms and questionnaires."
+msgstr ""
+"Webform permet d'attacher aux nœuds des formulaires et des "
+"questionnaires."
+msgid "To add one, create a !types piece of content."
+msgstr "Pour en ajouter un, créer un contenu !types."
+msgid "Webform is currently not enabled on any content types."
+msgstr "Webform n'est actuellement activé sur aucun type de contenu."
+msgid ""
+"This page lists all of the content on the site that may have a webform "
+"attached to it."
+msgstr ""
+"Cette page liste tous les contenus du site qui peuvent avoir un "
+"webform qui leur soit attaché."
+msgid "Webform-enabled piece of content"
+msgstr "Webform - Élément de contenu activé"
+msgid ""
+"Visit the <a href=\"!url\">Webform settings</a> page and enable "
+"Webform on at least one content type."
+msgstr ""
+"Visitez la page <a href=\"!url\">Webform settings</a> et activez le "
+"module Webform sur au moins un type de contenu."
+msgid ""
+"Optional: Enable Webform on multiple types by visiting the <a "
+"href=\"!url\">Webform settings</a> page."
+msgstr ""
+"Optionnel: Activez le module Webform sur plusieurs types en visitant "
+"la page <a href=\"!url\">Webform settings</a>."
+msgid ""
+"<p>This module lets you create forms or questionnaires and define "
+"their content. Submissions from these forms are stored in the database "
+"and optionally also sent by e-mail to a predefined address.</p>\n"
+"      <p>Here is how to create one:</p>\n"
+"      <ul>\n"
+"        <li>!webform-types-message</li>\n"
+"        <li>Go to <a href=\"!create-content\">Create content</a> and "
+"add a !types piece of content.</li>\n"
+"        <li>After saving the new content, you will be redirected to "
+"the main field list of the form that will be created. Add the fields "
+"you would like on your form.</li>\n"
+"        <li>Once finished adding fields, you may want to send e-mails "
+"to administrators or back to the user who filled out the form. Click "
+"on the <em>Emails</em> sub-tab underneath the <em>Webform</em> tab on "
+"the piece of content.</li>\n"
+"        <li>Finally, visit the <em>Form settings</em> sub-tab under "
+"the <em>Webform</em> tab to configure remaining configurations options "
+"for your form.\n"
+"          <ul>\n"
+"          <li>Add a confirmation message and/or redirect URL that is "
+"to be displayed after successful submission.</li>\n"
+"          <li>Set a submission limit.</li>\n"
+"          <li>Determine which roles may submit the form.</li>\n"
+"          <li>Advanced configuration options such as allowing drafts "
+"or show users a message indicating how they can edit their "
+"submissions.</li>\n"
+"          </ul>\n"
+"        </li>\n"
+"        <li>Your form is now ready for viewing. After receiving "
+"submissions, you can check the results users have submitted by "
+"visiting the <em>Results</em> tab on the piece of content.</li>\n"
+"      </ul>\n"
+"      <p>Help on adding and configuring the components will be shown "
+"after you add your first component.</p>\n"
+"      "
+msgstr ""
+"<p>Ce module permet de créer des formulaires ou des questionnaires et "
+"de définir leur contenu. Les éléments soumis au travers de ces "
+"formulaires sont stockés dans la base de données mais aussi "
+"optionnellement envoyés par courriel à une adresse "
+"prédéfinie.</p>\r\n"
+"      <p>Voici comment en créer un :</p>\r\n"
+"      <ul>\r\n"
+"        <li>!webform-types-message</li>\r\n"
+"        <li>Aller sur <a href=\"!create-content\">Créer du "
+"contenu</a> et ajouter un élément de contenu !types.</li>\r\n"
+"        <li>Après avoir enregistré le nouveau contenu, vous serez "
+"redirigé à la liste principale des champs du formulaire qui sera "
+"créé. Ajoutez les champs que vous souhaitez voir apparaître sur "
+"votre formulaire.</li>\r\n"
+"        <li>Une fois que vous avez fini d'ajouter des champs, vous "
+"avez la possibilité d'envoyer des courriels à l'administrateur ou à "
+"l'utilisateur qui a rempli le formulaire. Cliquez sur le sous-onglet "
+"<em>E-mails</em> sous l'onglet <em>Webform</em> du contenu.</li>\r\n"
+"        <li>Enfin, visitez le sous-onglet <em>Paramètres du "
+"formulaire</em> sous l'onglet <em>Webform</em> pour configurer les "
+"dernières options de votre formulaire.\r\n"
+"          <ul>\r\n"
+"          <li>Ajoutez un message de confirmation et/ou une URL de "
+"redirection qui sera affiché(e) une fois que le formulaire aura été "
+"soumis avec succès.</li>\r\n"
+"          <li>Paramétrez une limite de soumissions.</li>\r\n"
+"          <li>Déterminez quels rôles sont autorisés à soumettre le "
+"formulaire.</li>\r\n"
+"          <li>Options de configuration avancée, comme par exemple "
+"autoriser les brouillons, ou montrer aux utilisateurs un message qui "
+"indique la façon dont il peuvent éditer leurs soumissions de "
+"formulaire.</li>\r\n"
+"          </ul>\r\n"
+"        </li>\r\n"
+"        <li>Votre formulaire est maintenant prêt à être visualisé. "
+"Lorsque vous aurez reçu des soumissions, vous pourrez consulter les "
+"résultats soumis par les utilisateurs en visitant l'onglet "
+"<em>Résultats</em> sur le contenu.</li>\r\n"
+"      </ul>\r\n"
+"      <p>De l'aide sur l'ajout et la configuration de nouveaux "
+"composants sera affichée une fois que vous aurez ajouté votre "
+"premier composant.</p>\n"
+"      "
+msgid "A special textfield that accepts e-mail addresses."
+msgstr "Un champ texte spécial qui accepte les adresses de courriels."
+msgid "Allow users to upload files of configurable types."
+msgstr ""
+"Permettre aux utilisateurs de transférer des fichiers de types "
+"configurables."
+msgid "Page break"
+msgstr "Saut de page"
+msgid "Organize forms into multiple pages."
+msgstr "Organiser les formulaires en plusieurs pages."
+msgid "Select options"
+msgstr "Liste de sélection"
+msgid "Value of !component"
+msgstr "Valeur de !component"
+msgid "Value of \"!component\""
+msgstr "Valeur de \"!component\""
+msgid "Webform settings"
+msgstr "Paramètres de Webform"
+msgid ""
+"Check that all entered values for this field are unique. The same "
+"value is not allowed to be used twice."
+msgstr ""
+"Vérifier si toutes les valeurs entrées pour ce champ sont uniques. "
+"La même valeur ne peut pas être utilisée deux fois."
+msgid "no upload"
+msgstr "pas de téléversement"
+msgid "Other..."
+msgstr "Autre..."
+msgid "Allow \"Other...\" option"
+msgstr "Autoriser l'option \"Autre...\""
+msgid ""
+"Check this option if you want to allow users to enter an option not on "
+"the list."
+msgstr ""
+"Cochez cette option si vous voulez autoriser les utilisateurs à entre "
+"une option qui n'est pas dans la liste."
+msgid "Text for \"Other...\" option"
+msgstr "Texte pour l'option \"Autre...\""
+msgid ""
+"If allowing other options, enter text to be used for other-enabling "
+"option."
+msgstr ""
+"Si d'autres options sont autorisées, saisir le texte à afficher pour "
+"activer ces options."
+msgid "Randomize options"
+msgstr "Afficher aléatoirement les options"
+msgid ""
+"Randomizes the order of the options when they are displayed in the "
+"form."
+msgstr ""
+"Affiche les options aléatoirement lorsqu'elles sont affichées dans "
+"le formulaire."
+msgid "Maximum length of the textfield value."
+msgstr "Longueur maximum de la valeur du champ texte."
+msgid "E-mail address format"
+msgstr "Format d'adresse électronique"
+msgid "Long format: \"Example Name\" &lt;name@example.com&gt;"
+msgstr "Format long : \"Nom Exemple\" &lt;nom@example.com&gt;"
+msgid "Short format: name@example.com"
+msgstr "Format court : nom@exemple.com"
+msgid ""
+"Most servers support the \"long\" format which will allow for more "
+"friendly From addresses in e-mails sent. However many Windows-based "
+"servers are unable to send in the long format. Change this option if "
+"experiencing problems sending e-mails with Webform."
+msgstr ""
+"La plupart des serveurs acceptent le format \"long\" qui permet "
+"d'afficher le nom de l'expéditeur d’une manière plus "
+"compréhensible. Cependant, beaucoup de serveurs Windows ne sont pas "
+"capables d'envoyer des messages dans ce format. Changez cette option "
+"si vous rencontrez des problèmes lors de l'envoi de corriels par "
+"Webform."
+msgid ""
+"There are currently no webforms on your site. Create a !types piece of "
+"content."
+msgstr ""
+"Il n'y a actuellement aucun formulaire webform sur votre site. Créez "
+"un contenu !types."
+msgid "Include all components"
+msgstr "Inclure tous les composants"
+msgid ""
+"The value %value has already been submitted once for the %title field. "
+"You may have already submitted this form, or you need to use a "
+"different value."
+msgstr ""
+"La valeur %value est déjà présente dans le champ %title. Vous avez "
+"peut être déjà soumis ce formulaire, ou vous devez utiliser une "
+"valeur différente."
+msgid "Component value"
+msgstr "Valeur du composant"
+msgid "Currently not sending e-mails, add an e-mail recipient below."
+msgstr ""
+"N’envoie actuellement aucun courriel, ajouter un destinataire "
+"ci-dessous."
+msgid "email@example.com"
+msgstr "email@example.com"
+msgid ""
+"Form submissions will be e-mailed to this address. Any email, select, "
+"or hidden form element may be selected as the recipient address. "
+"Multiple e-mail addresses may be separated by commas."
+msgstr ""
+"Les soumissions du formulaire seront envoyés par e-mail à cette "
+"adresse. N'importe quel champ e-mail, liste d'options, ou champ caché "
+"peut être sélectionné comme destinataire. Des adresses e-mail "
+"multiples doivent être séparées par des virgules."
+msgid ""
+"Any textfield, select, or hidden form element may be selected as the "
+"subject for e-mails."
+msgstr ""
+"N'importe quel champ texte, liste déroulante, ou champ caché "
+"peut-être sélectionné en tant que sujet pour les e-mails."
+msgid ""
+"Any email, select, or hidden form element may be selected as the "
+"sender's e-mail address."
+msgstr ""
+"N'importe quel champ e-mail, liste déroulante, ou champ caché peut "
+"être sélectionné en tant qu'adresse e-mail de l'expéditeur."
+msgid ""
+"Any textfield, select, or hidden form element may be selected as the "
+"sender's name for e-mails."
+msgstr ""
+"N'importe quel champ E-mail, liste déroulante, ou champ caché peut "
+"être sélectionné en tant que nom de l'expéditeur."
+msgid "No available components"
+msgstr "Pas de composant disponible"
+msgid "An e-mail template can customize the display of e-mails."
+msgstr "Un modèle d'e-mail peut personnaliser l'affichage des e-mails."
+msgid "Included e-mail values"
+msgstr "Valeurs incluses dans l'e-mail"
+msgid "Save e-mail settings"
+msgstr "Enregistrer les paramètres de courriel"
+msgid "E-mail header details"
+msgstr "Détails des entêtes de courriel"
+msgid "When adding a new custom e-mail, the e-mail field is required."
+msgstr ""
+"Lorsque vous ajoutez une adresse électronique personnalisée, le "
+"champ courriel est requis."
+msgid "The entered e-mail address \"@email\" does not appear valid."
+msgstr "L'adresse de courriel saisie \"@email\" n'est pas valide."
+msgid "Email settings added."
+msgstr "Paramètres de courriel ajoutés."
+msgid "Email settings updated."
+msgstr "Paramètres de courriel mis à jour."
+msgid "Delete e-mail settings?"
+msgstr "Supprimer les paramètres de courriel ?"
+msgid ""
+"This will immediately delete the e-mail settings based on the "
+"@component component."
+msgstr ""
+"Ceci supprimera immédiatement les paramètres de courriel basés sur "
+"le composant @component."
+msgid ""
+"This will immediately delete the e-mail settings sending to the "
+"@address address."
+msgstr ""
+"Cela va supprimer la configuration d'envoi de courriel à l'adresse "
+"@address"
+msgid "E-mail settings deleted."
+msgstr "Paramètres d'e-mail supprimés."
+msgid "Confirmation message"
+msgstr "Message de confirmation"
+msgid "URL to redirect the user to upon successful submission."
+msgstr ""
+"URL vers laquelle rediriger l'utilisateur lors d'une soumission "
+"réussie."
+msgid ""
+"Limit the number of submissions <em>per user</em>. A user is "
+"identified by their user login if logged-in, or by their IP Address "
+"and Cookie if anonymous. Use of cookies may be modified in the global "
+"<a href=\"!url\">Webform settings</a>."
+msgstr ""
+"Limiter le nombre de soumissions <em>par utilisateur</em>. Un "
+"utilisateur est identifié par son nom de connexion s'il est connecté "
+", ou par son adresse IP et un cookie si anonyme. L'utilisation des "
+"cookies peut être modifié dans la <a href=\"!url\">configuration "
+"globale de webform</a>."
+msgid "Submission access"
+msgstr "Accès à la soumission"
+msgid ""
+"Show the previous submissions notification that appears when users "
+"have previously submitted this form."
+msgstr ""
+"Affiche le message indiquant qu'il existe déjà des soumissions quand "
+"un utilisateur à déjà répondu à ce formulaire"
+msgid "The entered URL is not a valid address."
+msgstr "L'adresse URL saisie n'est pas une adresse valide."
+msgid "The form settings have been updated."
+msgstr "Les paramètres du formulaire on été mis à jour."
+msgid "Your submissions"
+msgstr "Vos soumissions"
+msgid "Select list options"
+msgstr "Sélectionner la liste des options"
+msgid "Select list format"
+msgstr "Sélectionner le format des listes"
+msgid "Separate"
+msgstr "Séparé"
+msgid "Submission ID"
+msgstr "Identifiant (ID) de la soumission"
+msgid "Included export components"
+msgstr "Composants d'export inclus"
+msgid "The selected components will be included in the export."
+msgstr "Les composants sélectionnés seront inclus dans l'export."
+msgid "Option A"
+msgstr "Option A"
+msgid "Option B"
+msgstr "Option B"
+msgid "Option C"
+msgstr "Option C"
+msgid ""
+"Separate options are more suitable for building reports, graphs, and "
+"statistics in a spreadsheet application."
+msgstr ""
+"Les options séparées sont plus appropriée pour la construction de "
+"rapports, de graphiques et de statistiques dans une feuille de calcul."
+msgid "My select list"
+msgstr "Ma liste de sélection"
+msgid ""
+"Compact options are more suitable for importing data into other "
+"systems."
+msgstr ""
+"Les options compactes sont plus adaptées pour importer des données "
+"dans d'autres systèmes."
+msgid "Sid"
+msgstr "Sid"
+msgid "The submission ID of the submission."
+msgstr "L'identifiant (ID) de soumission de la soumission."
+msgid "Whether or not the submission is a draft."
+msgstr "Si la soumission est un brouillon ou non."
+msgid "Remote address"
+msgstr "Adresse distante"
+msgid "The remote IP address of the user that submitted this submission."
+msgstr "L'adresse IP distante de l'utilisateur qui a envoyé cette soumission."
+msgid "Provide a simple link to view the submission."
+msgstr "Fournir un lien pour visualiser la soumission."
+msgid "Provide a simple link to edit the submission."
+msgstr "Fournir un lien simple pour modifier la soumission."
+msgid "Provide a simple link to delete the submission."
+msgstr "Fournir un lien simple pour supprimer la soumission."
+msgid "Webform submission count"
+msgstr "Nombre de soumissions du formulaire Webform"
+msgid "The number of webform submissions on this node."
+msgstr "Le nombre de soumissions Webform sur ce nœud."
+msgid "The number of webform submissions for this user."
+msgstr "Le nombre de soumissions Webform de cet utilisateur."
+msgid "Webform form body"
+msgstr "Corps du formulaire Webform"
+msgid "The Webform form body display for this node."
+msgstr "L'affichage du corps du formulaire Webform pour ce nœud."
+msgid "draft"
+msgstr "ébauche"
+msgid "@name form"
+msgstr "Formulaire @name"
+msgid "You must <a href=\"!login\">login</a> to view this form."
+msgstr ""
+"Vous devez être <a href=\"!login\">connecté</a> pour voir ce "
+"formulaire."
+msgid "Access all webform results"
+msgstr "Accéder à tous les résultats de formulaires"
+msgid "Access own webform results"
+msgstr "Accéder à ses propres résultats de formulaires"
+msgid "Edit all webform submissions"
+msgstr "Modifier toutes les soumissions de formulaires"
+msgid "Delete all webform submissions"
+msgstr "Supprimer n'importe quelle soumission de formulaire"
+msgid "Access own webform submissions"
+msgstr "Accéder à ses propres soumissions de formulaires"
+msgid "Edit own webform submissions"
+msgstr "Modifier ses propres soumissions de formulaires"
+msgid "Delete own webform submissions"
+msgstr "Supprimer ses propres soumissions de formulaires"
+msgid "Default: %value"
+msgstr "Par défaut: %value"
+msgid "Webform client form."
+msgstr "Formulaire client Webform."
+msgid "Default value timezone"
+msgstr "Fuseau horaire par défaut"
+msgid "Customize option keys (Advanced)"
+msgstr "Personnaliser les clés d'options (Avancé)"
+msgid "Customize question keys (Advanced)"
+msgstr "Personnaliser les clés des questions (Avancé)"
+msgid "Load a pre-built option list"
+msgstr "Charger une liste d'options pré-configurée"
+msgid ""
+"Use a pre-built list of options rather than entering options manually. "
+"Options will not be editable if using pre-built list."
+msgstr ""
+"Utiliser une liste d'options pré-configurée plutôt qu'insérer des "
+"options manuellement. En utilisant une liste pré-configurée, les "
+"options ne seront pas éditables."
+msgid "Customize keys (Advanced)"
+msgstr "Personnalisation des clés (Avancé)"
+msgid ""
+"Every option must have a key specified. Specify each option as "
+"\"safe_key|Some readable option\"."
+msgstr ""
+"Chaque option doit avoir une clé spécifiée. Spécifiez chaque "
+"option de la manière suivante \"ma_cle|Une option lisible\"."
+msgid ""
+"Option keys must be less than 128 characters. The following keys "
+"exceed this limit:"
+msgstr ""
+"Les clés des options doivent contenir moins de 128 caractères. Les "
+"clés suivantes dépassent cette limite :"
+msgid ""
+"The form order failed to save because the following elements have same "
+"form keys and are under the same parent. Edit each component and give "
+"them a unique form key, then try moving them again."
+msgstr ""
+"L'enregistrement de l'ordre du formulaire a échoué car les "
+"éléments suivants ont la même clé de formulaire et sont sous le "
+"même parent. Modifiez chaque composant et donnez-leur une clé de "
+"formulaire unique, puis tentez de les déplacer à nouveau."
+msgid "Edit component: @name"
+msgstr "Modifier le composant : @name"
+msgid "US states"
+msgstr "États des États-Unis"
+msgid "Northern Marianas Islands"
+msgstr "Îles Mariannes du Nord"
+msgid "Access token"
+msgstr "Jeton d'accès"
+msgid "Enable popup calendar"
+msgstr "Activer le calendrier popup"
+msgid "Enable a JavaScript date picker next to the date field."
+msgstr "Activer un sélecteur de date JavaScript à côté du champ de date"
+msgid "Open popup calendar"
+msgstr "Ouvrir la popup de calendrier"
+msgid "Submitter"
+msgstr "Auteur"
+msgid "is not empty"
+msgstr "n'est pas vide"
+msgid "Date modified"
+msgstr "Date de modification"
+msgid "End time"
+msgstr "Date de fin"
+msgid "View mode"
+msgstr "Mode d'affichage"
+msgid ""
+"Grants access to the \"Results\" tab on all webform content. Generally "
+"an administrative permission."
+msgstr ""
+"Donne accès à l'onglet \"Résultats\" sur tous les contenus de type "
+"Webform. Généralement un droit d'administrateur."
+msgid ""
+"Grants access to the \"Results\" tab to the author of webform content "
+"they have created."
+msgstr ""
+"Donne accès à l'onglet \"Résultats\" à l'auteur d'un contenu de "
+"type Webform qu'il a créé."
+msgid ""
+"Allows editing of any webform submission by any user. Generally an "
+"administrative permission."
+msgstr ""
+"Permet la modification de n'importe quelle soumission de formulaire "
+"par n'importe quel utilisateur. Droit généralement réservés aux "
+"administrateurs."
+msgid ""
+"Allows deleting of any webform submission by any user. Generally an "
+"administrative permission."
+msgstr ""
+"Permet la suppression de n'importe quelle soumission de formulaire par "
+"n'importe quel utilisateur. Généralement un droit d'administrateur."
+msgid "Webform: !title"
+msgstr "Webform: !title"
+msgid "Form only"
+msgstr "Formulaire uniquement"
+msgid ""
+"The default format for new e-mail settings. Webform e-mail options "
+"take precedence over the settings for system-wide e-mails configured "
+"in MIME mail."
+msgstr ""
+"Le format par défaut pour les nouveaux paramètres des courriels. Les "
+"options de courriel des formulaires (Webforms) prennent le dessus par "
+"rapport aux paramètres système configurés dans la partie MIME mail."
+msgid "Format override"
+msgstr "Surcharge du format"
+msgid "Per-webform configuration of e-mail format"
+msgstr "Configuration du format de courriel par formulaire webform"
+msgid "Send all e-mails in the default format"
+msgstr "Envoyer tous les courriels dans le format par défaut"
+msgid "Force all webform e-mails to be sent in the default format."
+msgstr ""
+"Forcer l'envoi de tous les courriels des formulaires dans le format "
+"par défaut."
+msgid "No available components."
+msgstr "Aucun composant disponible."
+msgid ""
+"Are you sure you want to revert any changes to your template back to "
+"the default?"
+msgstr ""
+"Êtes-vous sûr de vouloir annuler toutes les modifications de votre "
+"template pour retrouver les valeurs par défaut?"
+msgid "Send e-mail as HTML"
+msgstr "Envoyer le mail au format HTML"
+msgid "Include files as attachments"
+msgstr "Inclure les fichiers comme pièces jointes"
+msgid "Redirection location"
+msgstr "Emplacement de redirection"
+msgid "Choose where to redirect the user upon successful submission."
+msgstr ""
+"Choisissez où rediriger l’utilisateur après une soumission "
+"effectuée avec succès."
+msgid "Confirmation page"
+msgstr "Page de confirmation"
+msgid "No redirect (reload current page)"
+msgstr "Pas de redirection (recharger la page actuelle)"
+msgid "If enabled this webform will be available as a block."
+msgstr "Si activé, ce webform sera disponible dans un block."
+msgid "A valid URL is required for custom redirection."
+msgstr ""
+"Une adresse URL valide est nécessaire pour valider la redirection "
+"personnalisée."
+msgid "Select keys"
+msgstr "Sélectionner les clés"
+msgid "Full, human-readable options (values)"
+msgstr "Complet, options affichées (valeurs)"
+msgid "Short, raw options (keys)"
+msgstr "Court, options brutes (clés)"
+msgid "Choose which part of options should be displayed from key|value pairs."
+msgstr ""
+"Choisir quelle partie des options doit être affichée depuis les "
+"paires clé|valeur."
+msgid "Webform edit link"
+msgstr "Lien d'édition du formulaire webform"
+msgid ""
+"Provide a simple link to edit the webform components and "
+"configuration."
+msgstr ""
+"Fournir un lien simple pour modifier les composants et la "
+"configuration du formulaire Webform."
+msgid "Webform results link"
+msgstr "Lien vers les résultats du formulaire Webform"
+msgid "Provide a simple link to view the results of a webform."
+msgstr ""
+"Fournir un lien simple pour voir les résultats d'un formulaire "
+"Webform."
+msgid "edit webform"
+msgstr "modifier un webform"
+msgid "Decimal places"
+msgstr "Positions après la virgule"
+msgid "Asc"
+msgstr "Asc"
+msgid ""
+"Enter a machine readable key for this form element. May contain only "
+"alphanumeric characters and underscores. This key will be used as the "
+"name attribute of the form element. This value has no effect on the "
+"way data is saved, but may be helpful if doing custom form processing."
+msgstr ""
+"Saisir un nom système pour cet élément de formulaire. Il ne doit "
+"contenir que des caractères alphanumériques et des tirets bas. Ce "
+"nom sera utilisé comme attribut \"name\" du formulaire. Cette valeur "
+"n'a aucun effet sur la façon dont l'information est enregistrée, "
+"mais elle peut être utile dans le cas d'un traitement spécifique du "
+"formulaire."
+msgid "Status of this form"
+msgstr "Statut de ce formulaire"
+msgid "Closing a form prevents any further submissions by any users."
+msgstr ""
+"Fermer un formulaire empêche de nouvelles soumissions, quelque soit "
+"l'utilisateur."
+msgid ""
+"The %authenticated role applies to any user signed into the site, "
+"regardless of other assigned roles."
+msgstr ""
+"Le rôle %authenticated s'applique à n'importe quel utilisateur "
+"connecté au site, quels que soient les autres rôles assignés."
+msgid "5 minute"
+msgstr "5 minutes"
+msgid "15 minute"
+msgstr "15 minutes"
+msgid ""
+"This form may be used to resend e-mails configured for this webform. "
+"Check the e-mails that need to be sent and click <em>Resend "
+"e-mails</em> to send these e-mails again."
+msgstr ""
+"Ce formulaire permet le renvoi de courriels configurés pour ce "
+"formulaire. Cochez les courriels qui doivent être renvoyés, puis "
+"cliquez <em>Renvoyer les courriels</em> afin de les expédier de "
+"nouveau."
+msgid "Resend e-mails"
+msgstr "Renvoyer les courriels"
+msgid ""
+"Submission saved. You may return to this form later and it will "
+"restore the current values."
+msgstr ""
+"Soumissions enregistrées. Vous pourrez revenir sur ce formulaire plus "
+"tard, cela restaurera les valeurs actuelles."
+msgid ""
+"<strong>Key-value pairs MUST be specified as \"safe_key|Some readable "
+"option\"</strong>. Use of only alphanumeric characters and underscores "
+"is recommended in keys. One option per line. Option groups may be "
+"specified with &lt;Group Name&gt;. &lt;&gt; can be used to insert "
+"items at the root of the menu after specifying a group."
+msgstr ""
+"<strong>Les paires clés-valeurs DOIVENT être spécifiées comme "
+"\"clé_saine|Une option lisible\"</strong>. L'utilisation de "
+"caractères alphanumériques et de tirets bas est recommandée dans "
+"les clés. Une option par ligne. Des groupes d'options peuvent être "
+"spécifiés avec &lt;Nom du groupe&gt;. &lt;&gt; peuvent être "
+"utilisés pour insérer des éléments à la racine du menu après "
+"avoir spécifié un groupe."
+msgid "Show \"Save draft\" button"
+msgstr "Montrer le bouton \"Sauvegarder le brouillon\""
+msgid ""
+"Allow your users to save and finish the form later. This option is "
+"available only for authenticated users."
+msgstr ""
+"Permet aux utilisateurs de sauvegarder et de finir le formulaire plus "
+"tard. Cette option est uniquement disponible pour les utilisateurs "
+"authentifiés."
+msgid "You must select at least one email address to resend submission."
+msgstr ""
+"Vous devez sélectionner au moins une adresse électronique valide "
+"pour envoyer votre soumission à nouveau."
+msgid "No e-mails were able to be sent due to a server error."
+msgstr "Aucun courriel n'a pu être envoyé à cause d'une erreur serveur."
+msgid "This webform is currently not setup to send emails."
+msgstr ""
+"Ce formulaire n'est actuellement pas paramétré pour envoyer des "
+"courriels."
+msgid "Successfully re-sent submission #@sid to 1 recipient."
+msgid_plural "Successfully re-sent submission #@sid to @count recipients."
+msgstr[0] "Nouvel envoi de la soumission #@sid à @count destinataire réussi."
+msgstr[1] "Nouvel envoi de la soumission #@sid à @count destinataires réussi."
+msgid "Master"
+msgstr "Maître"
+msgid "Submission"
+msgstr "Soumission"
+msgid ""
+"If using relative dates for a default value (e.g. \"today\") base the "
+"current day on this timezone."
+msgstr ""
+"En cas d'utilisation de dates relatives comme valeur par défaut (ex. "
+"Aujourd'hui), faire correspondre la date actuelle au fuseau horaire."
+msgid "The save directory %directory is not valid."
+msgstr "Le répertoire de sauvegarde %directory n'est pas valide."
+msgid ""
+"The default value of the field identified by its key. For multiple "
+"selects use commas to separate multiple defaults."
+msgstr ""
+"La valeur par défaut du champ identifié par sa clé. Pour des "
+"sélections multiples, utiliser des virgules pour séparer les valeurs "
+"par défaut multiples."
+msgid ""
+"If using relative dates for a default value (e.g. \"now\") base the "
+"current time on this timezone."
+msgstr ""
+"Si des dates relatives sont utilisées pour la valeur par défaut (par "
+"ex. \"now\"), baser la date et l'heure actuelles sur ce fuseau "
+"horaire."
+msgid "Label display"
+msgstr "Afficher l'étiquette"
+msgid "Determines the placement of the component's label."
+msgstr "Détermine la position de l'étiquette du composant."
+msgid "Hide label"
+msgstr "Cacher l'étiquette"
+msgid "Do not display the label of this component."
+msgstr "Ne pas afficher l'étiquette de ce composant."
+msgid "Save component"
+msgstr "Enregistrer le composant"
+msgid ""
+"A Webform component could not be saved because a timeout occurred "
+"while trying to acquire a lock for the node. Details: "
+"<pre>@component</pre>"
+msgstr ""
+"Un composant Webform n'a pas pu être enregistré car un temps limite "
+"a été atteint en essayant d'obtenir le verrou pour le nœud. "
+"Détails : <pre>@component</pre>"
+msgid "The <em>Custom URL</em> option supports Webform token replacements."
+msgstr ""
+"L'option <em>URL personnalisée</em> prend en charge les jetons "
+"(tokens) de remplacements de Webform."
+msgid "Use replacement tokens from the first row"
+msgstr "Utiliser les jetons (tokens) de remplacement de la première ligne"
+msgid "Element type"
+msgstr "Type d'élément"
+msgid "The earliest date that may be entered into the field."
+msgstr "La date la plus ancienne pouvant être saisie dans ce champ."
+msgid ""
+"Accepts any date in any <a "
+"href=\"http://www.gnu.org/software/tar/manual/html_chapter/Date-input-formats.html\">GNU "
+"Date Input Format</a>."
+msgstr ""
+"Accepte n'importe quelle date dans n'importe quel <a "
+"href=\"http://www.gnu.org/software/tar/manual/html_chapter/Date-input-formats.html\">format "
+"de saisie de date GNU</a>."
+msgid "The latest date that may be entered into the field."
+msgstr "La date la plus récente pouvant être saisie dans ce champ."
+msgid "The entered date must be @start_date or later."
+msgstr "La date saisie doit être le @start_date ou plus tard."
+msgid "The entered date must be @end_date or earlier."
+msgstr "La date saisie doit être le @end_date ou plus tôt."
+msgid "Submissions generated from Webform forms."
+msgstr "Soumissions générées à partir des formulaires Webform."
+msgid "10 minute"
+msgstr "10 minutes"
+msgid "30 minute"
+msgstr "30 minutes"
+msgid "Private fields are shown only to users with results access."
+msgstr ""
+"Les champs privés sont uniquement affichés aux utilisateurs "
+"autorisés à afficher les résultats."
+msgid "Download range options"
+msgstr "Options d'intervalle de téléchargement"
+msgid "All submissions"
+msgstr "Toutes les soumissions"
+msgid "Only new submissions since your last download"
+msgstr ""
+"Seulement les nouvelles soumissions depuis votre dernier "
+"téléchargement"
+msgid "Only the latest"
+msgstr "Seulement les dernières"
+msgid "All submissions starting from"
+msgstr "Toutes les soumissions à partir de"
+msgid "every 5 minutes"
+msgstr "toutes les 5 minutes"
+msgid "every minute"
+msgstr "toutes les minutes"
+msgid "All values"
+msgstr "Toutes les valeurs"
+msgid ""
+"The throbber display does not show the status of uploads but takes up "
+"less space. The progress bar is helpful for monitoring progress on "
+"large uploads."
+msgstr ""
+"L'indicateur d'activité (throbber) n'affiche pas le statut des "
+"transferts mais prend moins de place. La barre de progression est "
+"utile pour surveiller la progression des gros transferts."
+msgid "Minute increments"
+msgstr "Incréments de minute"
+msgid "This form has received the maximum number of entries."
+msgstr "Ce formulaire a reçu le nombre maximum d'entrées."
+msgid "Total submissions limit"
+msgstr "Limitation des soumissions"
+msgid "Limit the total number of allowed submissions."
+msgstr "Limiter le nombre de soumissions autorisées."
+msgid "Per user submission limit"
+msgstr "Limitation des soumissions par utilisateur"
+msgid "Limit each user to !count submission(s) !timespan"
+msgstr "Limiter chaque utilisateur à !count soumission(s) pour !timespan"
+msgid "Limit to !count total submission(s) !timespan"
+msgstr "Limiter à !count soumission(s) pour !timespan"
+msgid "Latest number of submissions field is required."
+msgstr "Le champ du nombre de dernières soumissions est requis."
+msgid "Latest number of submissions must be numeric."
+msgstr "Le champ du nombre de dernières soumissions doit être numérique."
+msgid "Latest number of submissions must be greater than 0."
+msgstr "Le nombre de dernières soumissions doit être supérieur à 0."
+msgid "Start submission number is required."
+msgstr "Le numéro de soumission de départ est requis."
+msgid "Start submission number must be numeric."
+msgstr "Le numéro de soumission de départ doit être numérique."
+msgid "Start submission number must be greater than 0."
+msgstr "Le numéro de soumission de départ doit être supérieur à 0."
+msgid "End submission number must be numeric."
+msgstr "Le numéro de soumission de fin doit être numérique."
+msgid "End submission number must be greater than 0."
+msgstr "Le numéro de soumission de fin doit être supérieur à 0."
+msgid "@count total"
+msgstr "Total de @count"
+msgid "@count new since @date"
+msgstr "@count nouvelle(s) depuis le @date"
+msgid "Only the latest !number submissions"
+msgstr "Seulement les !number dernières soumissions"
+msgid "The webform node this submission was generated from."
+msgstr "Le nœud Webform à partir duquel cette soumission a été générée."
+msgid "Webform Node"
+msgstr "Nœud Webform"
+msgid "The user who sent the webform submission."
+msgstr "L'utilisateur ayant envoyé la soumission Webform."
+msgid "Webform Submission User"
+msgstr "Webform Submission User"
+msgid "Webform submissions of the given Webform node."
+msgstr "Les soumissions Webform du nœud Webform donné."
+msgid "Webform Submission"
+msgstr "Soumission de formulaire webform"
+msgid "Webform submissions of the given user."
+msgstr "Soumissions Webform pour l'utilisateur donné."
+msgid "Progress bar style"
+msgstr "Style de la barre de progression"
+msgid "Subpath"
+msgstr "Sous-chemin"
+msgid "Date submitted"
+msgstr "Date de soummission"
+msgid "A numeric input field (either as textfield or select list)."
+msgstr "Un champ de saisie numérique (zone de texte ou liste de sélection)."
+msgid "File components updated to support AJAX uploading."
+msgstr ""
+"Composants de fichier mis à jour pour le support de transfert par "
+"AJAX."
+msgid "Webform file entries created in the file_usage table."
+msgstr "Entrées de fichier Webform créées dans la table file_usage."
+msgid ""
+"Enter the max file size a user may upload such as 2 MB or 800 KB. Your "
+"server has a max upload size of @size."
+msgstr ""
+"Saisir la taille maximum de transfert de fichier par un utilisateur, "
+"telle que 2 Mo ou 800 ko. Votre serveur a une taille maximum de "
+"transfert de @size."
+msgid ""
+"Private file storage has significantly more overhead than public "
+"files, but restricts file access to users who can view submissions."
+msgstr ""
+"Le coût du stockage en mode privé des fichiers est significativement "
+"plus élevé qu'en mode publique, mais limite l'accès aux "
+"utilisateurs autorisés à voir les soumissions."
+msgid "Upload directory"
+msgstr "Répertoire de transfert"
+msgid "You may optionally specify a sub-directory to store your files."
+msgstr ""
+"Vous pouvez, optionnellement, préciser un sous-répertoire pour "
+"stocker vos fichiers."
+msgid ""
+"File size @value is not a valid filesize. Use a value such as 2 MB or "
+"800 KB."
+msgstr ""
+"Une taille de fichier de @value n'est pas une taille de fichier "
+"valide. Utiliser une valeur telle que 2 Mo ou 800 ko."
+msgid ""
+"An upload size of @value is too large, you are allow to upload files "
+"@max or less."
+msgstr ""
+"Une taille de transfert de @value est trop élevée, vous êtes "
+"autorisé à transférer des fichiers de @max au maximum."
+msgid ""
+"The save directory %directory could not be created. Check that the "
+"webform files directory is writable."
+msgstr ""
+"Impossible de créer le répertoire d'enregistrement %directory. "
+"Vérifier que le répertoire d'enregistrement des fichiers Webform est "
+"bien accessible en écriture."
+msgid "Secure value (allows use of all tokens)"
+msgstr "Valeur sécurisée (permet l'usage de tous les jetons)"
+msgid "Hidden element (less secure, changeable via JavaScript)"
+msgstr "Élément caché (moins sécurisé, modifiable via JavaScript)"
+msgid "Hidden type"
+msgstr "Type caché"
+msgid ""
+"Both types of hidden fields are not shown to end-users. Using a "
+"<em>Secure value</em> allows the use of <em>all tokens</em>, even for "
+"anonymous users."
+msgstr ""
+"Tout type de champ caché n'est pas montré aux utilisateurs finaux. "
+"Définir une <em>valeur sécurisée</em> permet d'utiliser <em>tous "
+"les jetons</em>, même pour les utilisateurs anonymes."
+msgid "A minimum and maximum value are required if displaying as a select."
+msgstr ""
+"Les valeurs minimum et maximum sont requises si l'élément est "
+"affiché comme liste de sélection."
+msgid ""
+"Automatic will display up to @count decimals places if needed. A value "
+"of \"2\" is common to format currency amounts."
+msgstr ""
+"Le mode automatique affichera jusqu'à @count décimales si "
+"nécessaire. Pour formater une somme d'argent, on utilise "
+"généralement la valeur \"2\"."
+msgid "Permit only integer values as input. e.g. 12.34 would be invalid."
+msgstr ""
+"Ne permettre que la saisie d'entiers. Par ex. : 12,34 ne sera pas "
+"valide."
+msgid "Minimum numeric value. e.g. 0 would ensure positive numbers."
+msgstr "Valeur numérique minimum. Ex. 0 restreint à des nombres positifs."
+msgid ""
+"Maximum numeric value. This may also determine the display width of "
+"your field."
+msgstr ""
+"Valeur numérique maximum. Cela permet aussi de déterminer la "
+"largueur de votre champ."
+msgid ""
+"Limit options to a specific increment. e.g. a step of \"5\" would "
+"allow values 5, 10, 15, etc."
+msgstr ""
+"Limiter les options à une incrémentation spécifique, par ex. un pas "
+"de \"5\" autorisera les valeurs 5, 10, 15, 20, etc."
+msgid "Exclude zero"
+msgstr "Exclure le zéro"
+msgid ""
+"Exclude entries of zero (or blank) when counting submissions to "
+"calculate average and standard deviation."
+msgstr ""
+"Exclure les saisies à 0 (ou vides) lors du compte de soumissions pour "
+"calculer la moyenne et l'écart-type."
+msgid "Average !mu excluding zeros/blanks"
+msgstr "Moyenne !mu excluant les zéros/vides"
+msgid "sample"
+msgstr "échantillon"
+msgid "Average !mu including zeros/blanks"
+msgstr "Moyenne !mu incluant les zéros/vides"
+msgid "population"
+msgstr "population"
+msgid "Zero/blank"
+msgstr "Zéro/vide"
+msgid "More stats »"
+msgstr "Plus de statistiques »"
+msgid "Normal Distribution"
+msgstr "Distribution normale"
+msgid "Boundary"
+msgstr "Limite"
+msgid "% of !description"
+msgstr "% de !description"
+msgid "!low to !high"
+msgstr "!low à !high"
+msgid "Standard deviation (!sigma)"
+msgstr "Écart-type (!sigma)"
+msgid "Minimum is required when using a select list element."
+msgstr ""
+"Un minimum est requis lorsqu'un élément de type liste déroulante "
+"est utilisé."
+msgid "Minimum must be numeric."
+msgstr "Le minimum doit être numérique."
+msgid "Minimum must have an integer value."
+msgstr "Le minimum doit être une valeur entière."
+msgid "Maximum is required when using a select list element."
+msgstr ""
+"Un maximum est requis lorsqu'un élément de type liste déroulante "
+"est utilisé."
+msgid "Maximum must be numeric."
+msgstr "Le maximum doit être numérique."
+msgid "Maximum must have an integer value."
+msgstr "Le maximum doit être une valeur entière."
+msgid "Step must be numeric."
+msgstr "Le pas doit être numérique."
+msgid "Step must have an integer value."
+msgstr "Le pas doit être une valeur entière."
+msgid "Max upload size"
+msgstr "Taille maximum de transfert"
+msgid "Web images"
+msgstr "Images web"
+msgid "Desktop images"
+msgstr "Images locales"
+msgid "Additional extensions"
+msgstr "Extensions supplémentaires"
+msgid "Prefix text placed to the left of the field"
+msgstr "Texte de préfixe placé à la gauche du champ"
+msgid "Postfix text placed to the right of the field"
+msgstr "Texte de suffixe placé à la droite du champ"
+msgid "Next page button label"
+msgstr "Étiquette du bouton page suivante"
+msgid ""
+"This is used for the <em>Next Page</em> button on the page before this "
+"page break. Default: <em>Next Page &gt;</em>"
+msgstr ""
+"Ceci est utilisé pour le bouton <em>Page suivante</em> sur la page "
+"avant ce saut de page. Par défaut : <em>Page suivante &gt;</em>"
+msgid ""
+"Check this option if you want the select component to be displayed as "
+"a select list box instead of radio buttons or checkboxes. Option "
+"groups (nested options) are only supported with listbox components."
+msgstr ""
+"Cocher cette option si vous souhaitez que le composant select soit "
+"affiché comme une liste de sélection au lieu de boutons radio ou de "
+"cases à cocher. Des groupes d'options (options imbriquées) sont "
+"supportées uniquement pour les composants de type liste de "
+"sélection."
+msgid ""
+"The component %name has automatically been set to display as a listbox "
+"in order to support option groups."
+msgstr ""
+"Le composant %name a été automatiquement défini pour être affiché "
+"comme une liste de sélection pour supporter les groupes d'options."
+msgid ""
+"Width of the textarea in columns. This property might not have a "
+"visual impact depending on the CSS of your site."
+msgstr ""
+"Largeur de la zone de texte en colonnes. Cette propriété peut ne pas "
+"avoir d'impact visuel en fonction de la CSS de votre site."
+msgid "Height of the textarea in rows."
+msgstr "Hauteur de la zone de texte en nombre de ligne."
+msgid "The open or closed status of a webform."
+msgstr "Le statut ouvert ou fermé d'un formulaire Webform."
+msgid "Open/Closed"
+msgstr "Ouvert/Fermé"
+msgid "Prefix text placed to the left of the textfield"
+msgstr "Préfix affiché à la gauche du champ texte"
+msgid "Postfix text placed to the right of the textfield"
+msgstr "Texte de suffixe placé à la droite du champ texte"
+msgid "Tokens related to webform submissions."
+msgstr "Jetons associés aux soumissions de formulaire."
+msgid "The unique indentifier for the webform submission."
+msgstr "L'identifiant unique de la soumission du formulaire."
+msgid "The IP address that was used when submitting the webform."
+msgstr "L'adresse IP utilisée lors de la soumission du formulaire"
+msgid "The user that submitted the webform result."
+msgstr "L'utilisateur qui a soumis le résultat du formulaire webform."
+msgid "Webform submission values"
+msgstr "Valeurs soumises à Webform"
+msgid "Form submission from: [node:title]"
+msgstr "Soumission du formulaire : [node:title]"
+msgid ""
+"This field supports dynamic token values. Common values might be "
+"[current-user:mail] or [node:title]."
+msgstr ""
+"Ce champ prend en charge les valeurs dynamiques des jetons (tokens). "
+"[current-user:mail] ou [node:title] font partie des valeurs couramment "
+"utilises."
+msgid ""
+"A full listing of tokens may be listed here by installing the <a "
+"href=\"http://drupal.org/project/token\">Token module</a>."
+msgstr ""
+"Une liste complète des jetons peut être listée ici en installant le "
+"<a href=\"http://drupal.org/project/token\">module Token</a>."
+msgid ""
+"Your existing webforms have been upgraded to use the global Drupal 7 "
+"token system."
+msgstr ""
+"Vos formulaires existants ont été mis à jour pour utiliser le "
+"système global de jetons Drupal 7."
+msgid ""
+"Please download and install the <a "
+"href=\"http://drupal.org/project/token\" target=\"_blank\">Token "
+"module</a>. Otherwise some tokens will not be rendered."
+msgstr ""
+"Veuillez télécharger et installer le <a "
+"href=\"http://drupal.org/project/token\" target=\"_blank\">module "
+"Token</a>. Sinon certains jetons ne seront pas restitués."
+msgid "Submitted on [submission:date:long]"
+msgstr "Soumis le [submission:date:long]"
+msgid "Submitted by user: [submission:user]"
+msgstr "Soumis par l'utilisateur : [submission:user]"
+msgid "Submitted by anonymous user: [submission:ip-address]"
+msgstr "Soumis par un utilisateur anonyme : [submission:ip-address]"
+msgid "Submit button label"
+msgstr "Texte du bouton de soumission"
+msgid ""
+"Conditionals may be used to hide or show certain components (or entire "
+"pages!) based on the value of other components."
+msgstr ""
+"Les champs conditionnels peuvent être utilisés pour masquer ou "
+"afficher certains composants (ou des pages entières !) basé sur la "
+"valeur d'autres composants."
+msgid "Conditionals"
+msgstr "Champs conditionnels"
+msgid ""
+"@count webforms using conditionals updated to the new conditional "
+"system."
+msgstr ""
+"@count formulaires webform avec champs conditionnels mis à jour avec "
+"le nouveau système de champs conditionnels."
+msgid "Save conditions"
+msgstr "Enregistrer les conditions"
+msgid "Conditionals for %title saved."
+msgstr "Conditions pour %title enregistrées."
+msgid "And/or"
+msgstr "Et/ou"
+msgid "!source !operator !value"
+msgstr "!source !operator !value"
+msgid "is blank"
+msgstr "est vide"
+msgid "is not blank"
+msgstr "n'est pas vide"
+msgid "is on"
+msgstr "est le"
+msgid "is before"
+msgstr "est avant"
+msgid "is after"
+msgstr "est après"
+msgid "is at"
+msgstr "est à"
+msgid "@format or valid date"
+msgstr "@format ou date valide"
+msgid "HH:MMam or valid time"
+msgstr "HH:MMam ou heure valide"
+msgid "Webform results"
+msgstr "Résultats du formulaire Webform"
+msgid "Yes."
+msgstr "Oui."
+msgid "Weight for rule group !rgid"
+msgstr "Poids du groupe de règles !rgid"
+msgid "Weight for new rule group"
+msgstr "Poids du nouveau groupe de règles"
+msgid ""
+"The selected components will be included in the [submission:values] "
+"token. Individual values may still be printed if explicitly specified "
+"as a [submission:values:?] in the template."
+msgstr ""
+"Les composants sélectionnés seront inclus dans le jeton "
+"[submission:values]. Des valeurs individuelles peuvent encore être "
+"imprimées si spécifiées par [submission:values:?] dans le gabarit."
+msgid ""
+"Unable to check anonymous user submission limit when logged in as user "
+"@uid."
+msgstr ""
+"Impossible de vérifier la limite de soumissions de l'utilisateur "
+"anonyme lorsque connecté en tant qu'utilisateur @uid."
+msgid "Use Reply-To header"
+msgstr "Utiliser l'en-tête Reply-To"
+msgid "There are no conditional actions on this form."
+msgstr "Il n'y a aucune action conditionnelle sur ce formulaire."
+msgid ""
+"Message to be shown upon successful submission. If the redirection "
+"location is set to <em>Confirmation page</em> it will be shown on its "
+"own page, otherwise this displays as a message. Supports Webform token "
+"replacements."
+msgstr ""
+"Message affiché lors d'une soumission réussie. Si l'emplacement de "
+"la redirection est défini à <em>Page de confirmation</em>, il sera "
+"affiché sur cette page, sinon il sera affiché sous forme de message "
+"d'alerte. Les jetons de substitution de Webform sont pris en charge."
+msgid "The value of a component as submitted by a user."
+msgstr "La valeur d'un composant telle que soumise par l'utilisateur."
+msgid "Webform submission data"
+msgstr "Données de la soumission du formulaire Webform"
+msgid "Relates to a webform submission data"
+msgstr "Concerne les données d'une soumission d'un formulaire webform"
+msgid "Submission Data"
+msgstr "Données de la soumission"
+msgid "Data field"
+msgstr "Champ de données"
+msgid "Value (raw)"
+msgstr "Valeur (brute)"
+msgid "Value delta"
+msgstr "Valeur delta"
+msgid "Webform node"
+msgstr "Nœud Webform"
+msgid ""
+"Enter the title or NID of the Webform whose values should be made "
+"available."
+msgstr ""
+"Saisir le titre ou le NID du formulaire Webform dont les valeurs "
+"doivent être rendues disponibles."
+msgid "Component data"
+msgstr "Données du composant"
+msgid "Select the component whose values should be made available."
+msgstr ""
+"Choisir le composant dont les données doivent être rendues "
+"disponibles."
+msgid "Webform NID is required."
+msgstr "Le NID du formulaire Webform est requis."
+msgid "The specified node is not valid."
+msgstr "Le nœud spécifié est invalide."
+msgid "Use component label"
+msgstr "Utiliser l'étiquette du composant"
+msgid "No label"
+msgstr "Aucune étiquette"
+msgid ""
+"Enter a list of additional file extensions for this upload field, "
+"separated by commas.<br /> Entered extensions will be appended to "
+"checked items above."
+msgstr ""
+"Saisir une liste d'extensions de fichier supplémentaire pour ce champ "
+"de transfert, séparées par des virgules.<br />Les extensions saisies "
+"seront ajoutées aux éléments contrôlés ci-dessus."
+msgid ""
+"The placeholder will be shown in the field until the user starts "
+"entering a value."
+msgstr ""
+"Le placeholder sera affiché dans le champ jusqu'à ce que "
+"l'utilisateur saisisse une valeur."
+msgid "Often used for example values, such as \"john@example.com\"."
+msgstr ""
+"Souvent utilisé comme valeurs d'exemple, tel que "
+"\"john@exemple.com\"."
+msgid "Track anonymous users by:"
+msgstr "Suivre les utilisateurs anonymes avec :"
+msgid "Cookie only (least strict)"
+msgstr "Cookie seulement (le moins strict)"
+msgid "IP address only"
+msgstr "Adresse IP seulement"
+msgid "Both cookie and IP address (most strict)"
+msgstr "Cookie et adresse IP (plus stricte)"
+msgid "Select email mapping limit"
+msgstr "Sélectionner la limite de cartographie des courriels"
+msgid "The component positions and required values have been updated."
+msgstr ""
+"Les positions et valeurs requises du composant ont été mises à "
+"jour."
+msgid "Wrapper CSS classes"
+msgstr "Classes CSS de l'enveloppe"
+msgid ""
+"Apply a class to the wrapper around both the field and its label. "
+"Separate multiple by spaces."
+msgstr ""
+"Appliquer une classe à l'enveloppe autour du champ et de son "
+"étiquette. Séparer les différentes valeurs par des espaces."
+msgid "Apply a class to the field. Separate multiple by spaces."
+msgstr ""
+"Appliquer une classe au champ. Séparer les différentes valeurs par "
+"des espaces."
+msgid "This component has no options defined yet."
+msgstr "Ce composant n'a encore aucune option de définie."
+msgid ""
+"The selected component %name has multiple options. You may enter an "
+"e-mail address for each choice."
+msgstr ""
+"Le composant %name qui a été sélectionné comporte plusieurs "
+"options. Vous pouvez saisir une adresse électronique pour chaque "
+"choix."
+msgid ""
+"When that choice is selected, an e-mail will be sent to the "
+"corresponding address. If a field is left blank, no e-mail will be "
+"sent for that option."
+msgstr ""
+"Lorsque ce choix est sélectionné, un courriel sera envoyé à "
+"l'adresse correspondante. Si un champ est laissé vide, aucun courriel "
+"ne sera envoyé pour cette option."
+msgid ""
+"When that choice is selected, an e-mail will be sent from the "
+"corresponding address."
+msgstr ""
+"Lorsque ce choix est sélectionné, un courriel sera envoyé à "
+"l'adresse correspondante."
+msgid "Component e-mail options"
+msgstr "Options du composant courriel"
+msgid "Column header format"
+msgstr "Format d'en-tête de colonne"
+msgid "Choose whether to show the label or field key in each column header."
+msgstr ""
+"Choisir d'utiliser l'étiquette ou la clé des champs pour chaque "
+"en-tête de colonne."
+msgid "The specified range will not return any results."
+msgstr "L'intervalle spécifié ne renverra aucun résultat."
+msgid "submission_details"
+msgstr "submission_details"
+msgid "Address: !email"
+msgstr "Adresse : !email"
+msgid "Component value: !component"
+msgstr "Valeur du composant : !component"
+msgid "!title: !field"
+msgstr "!title : !field"
+msgid "Custom URL value"
+msgstr "Valeur personnalisée d'URL"
+msgid "Custom URL: !redirect_url"
+msgstr "Url personnalisée : !redirect_url"
+msgid "Exporting submissions"
+msgstr "Exportation des soumissions"
+msgid "Creating export file"
+msgstr "Création du fichier d'export"
+msgid "The export file could not be created because an error occurred."
+msgstr "Le fichier d'export n'a pu être créé car une erreur s'est produite."
+msgid ""
+"No export file ready for download. The file may have already been "
+"downloaded by your browser. Visit the <a href=\"!href\">download "
+"export form</a> to create a new export."
+msgstr ""
+"Aucun fichier prêt pour téléchargement. Le fichier peut déjà "
+"avoir été téléchargé par votre navigateur. Visitez le <a "
+"href=\"!href\">formulaire de téléchargement d'export</a> pour créer "
+"un nouvel export."
+msgid "Exported @count of @total submissions..."
+msgstr "@count soumissions exportées sur @total..."
+msgid ""
+"Export creation complete. Your download should begin now. If it does "
+"not start, <a href=\"!href\">download the file here</a>. This file may "
+"only be downloaded once."
+msgstr ""
+"Fin de création de l'export. Votre téléchargement devrait débuter "
+"maintenant. S'il ne commence pas, <a href=\"!href\">téléchargez le "
+"fichier ici</a>. Ce fichier ne peut être téléchargé qu'une seule "
+"fois."
+msgid "An error occurred while generating the export file."
+msgstr "Une erreur s'est produite lors de la génération du fichier d'export."
+msgid ""
+"The view mode determines how much of the webform to show within the "
+"block. You may <a href=\"!view_modes\">customize different view "
+"modes</a> (other than the \"Form only\" mode) or even create new "
+"custom view modes if either the <a "
+"href=\"http://drupal.org/project/entity_view_mode\">Entity view "
+"modes</a> or <a href=\"http://drupal.org/project/ds\">Display "
+"Suite</a> modules are installed."
+msgstr ""
+"Le mode d'affichage détermine la proportion du webform à montrer à "
+"l'intérieur du bloc. Vous pouvez <a "
+"href=\"!view_modes\">personnaliser différents modes d'affichage</a> "
+"(autre que le mode \"Formulaire uniquement\") ou même créer de "
+"nouveaux modes d'affichage personnalisés si l'un ou l'autre des "
+"modules <a href=\"http://drupal.org/project/entity_view_mode\">Entity "
+"view modes</a> ou <a href=\"http://drupal.org/project/ds\">Display "
+"Suite</a> sont installés."
+msgid "Multi-page handling"
+msgstr "Gestion multipage"
+msgid "Display all pages inside block"
+msgstr "Afficher toutes les pages à l'intérieur du block"
+msgid "Redirect to the node page after the first page"
+msgstr "Rediriger sur la page du nœud après la première page"
+msgid ""
+"If your webform has multiple pages, you may change the behavior of the "
+"\"Next\" button. This will also affect where validation messages show "
+"up after an error."
+msgstr ""
+"Si votre webform a plusieurs pages, vous pouvez modifier le "
+"comportement du bouton \"Suivant\". Cela affectera également "
+"l'endroit où les messages de validation s'affichent lors d'une "
+"erreur."
+msgid "New webform columns added."
+msgstr "Nouvelles colonnes de webform ajoutées."
+msgid ""
+"Replaced tokens using [submission:values:x] with "
+"[submission:values:x:withlabel]."
+msgstr ""
+"Jetons remplacés en utilisant [submission:values:x] avec "
+"[submission:values:x:withlabel]."
+msgid "Zip archive support"
+msgstr "Prise en charge des archives ZIP"
+msgid ""
+"PHP does not have the zip archive extension available. Webform module "
+"requires zip support for exporting submissions to Microsoft Excel."
+msgstr ""
+"PHP n'a pas l'extension d'archive zip disponible. Le module Webform "
+"requiert une prise en charge de zip pour exporter les soumissions vers "
+"Microsoft Excel."
+msgid "Show progress bar"
+msgstr "Afficher la barre de progression"
+msgid "Show page number as number of completed (i.e. Page 1 of 10)"
+msgstr ""
+"Afficher le numéro de la page ainsi que le nombre total de pages (ex. "
+"Page 1 sur 10)"
+msgid "Show percentage completed (i.e. 10%)"
+msgstr "Afficher le pourcentage de progression (ex. 10%)"
+msgid "Show page labels from page break components"
+msgstr "Afficher le titre de la page depuis le composant \"saut de page\""
+msgid "Include confirmation page in progress bar"
+msgstr "Inclure la page de confirmation dans la barre de progression"
+msgid "Choose how the progress bar should be displayed for multi-page forms."
+msgstr ""
+"Déterminer l'affichage de la barre de progression pour les "
+"formulaires de plusieurs pages."
+msgid "First page label"
+msgstr "Étiquette de la première page"
+msgid "Confirmation page label"
+msgstr "Étiquette de la page de confirmation"
+msgid "Microsoft Excel (older versions)"
+msgstr "Microsoft Excel (anciennes versions)"
+msgid "A file readable by older versions of Microsoft Excel."
+msgstr "Un fichier lisible par les anciennes versions de Microsoft Excel."
+msgid ""
+"The first page label in the progress bar. Subseqent pages are titled "
+"by their page break label."
+msgstr ""
+"L'étiquette de la première page dans la barre de progression. Les "
+"pages suivantes seront intitulées par l'étiquette de leur saut de "
+"page."
+msgid "Show the notification about previous submissions"
+msgstr "Montrer la notification des précédentes soumissions"
+msgid "Included submissions"
+msgstr "Soumissions incluses"
+msgid "Finished and draft submissions"
+msgstr "Soumissions terminées et à l'état de brouillon"
+msgid "Finished submissions only"
+msgstr "Soumissions terminées uniquement"
+msgid "Drafts only"
+msgstr "Brouillons uniquement"
+msgid "Page @start of @end"
+msgstr "Page @start sur @end"
+msgid "Rendered submissions"
+msgstr "Soumissions restituées"
+msgid "Display the rendered submission"
+msgstr "Afficher les soumissions restituées"
+msgid ""
+"To use Webform, please enable it on at least one <a "
+"href=\"!url\">content type</a>."
+msgstr ""
+"Pour utiliser Webform, veuillez l'activer sur au moins un  <a "
+"href=\"!url\">type de contenu</a>."
+msgid "Enable webform functionality"
+msgstr "Activer la fonctionnalité webform"
+msgid ""
+"Allows a form to be attached to content. This will add tabs for "
+"\"Webform\" and \"Results\" on all content of this type."
+msgstr ""
+"Permet d'attacher un formulaire à un contenu. Cela ajoutera les "
+"onglets \"Webform\" et \"Résultats\" sur tous les contenus de ce "
+"type."
+msgid "In-depth analysis"
+msgstr "Analyse en profondeur"
+msgid "Other responses"
+msgstr "Autres réponses"
+msgid ""
+"No components have analysis enabled in this form. Enable analysis "
+"under the \"Add analysis components\" fieldset."
+msgstr ""
+"Aucun composant n'a d'analyse activée sur ce formulaire. Activer "
+"l'analyse sous le groupe de champ \"Ajouter des composants "
+"d'analyse\"."
+msgid ""
+"This page shows analysis of submitted data, such as the number of "
+"submissions per component value, calculations, and averages. "
+"Additional components may be added under the \"Add analysis "
+"components\" fieldset."
+msgstr ""
+"Cette page montre une analyse des données soumises, comme le nombre "
+"de soumissions par valeur de composant, les calculs et moyennes. Des "
+"composants additionnels peuvent être ajoutés sous le groupe de champ "
+"\"Ajouter des composants d'analyse\"."
+msgid "Add analysis components"
+msgstr "Ajouter des composants d'analyse"
+msgid "The selected components will be included on the analysis page."
+msgstr "Les composants sélectionnés seront inclus sur la page d'analyse."
+msgid "Update analysis display"
+msgstr "Mettre à jour l'affichage de l'analyse"
+msgid "!part in !name is missing."
+msgstr "!part dans !name est manquant."
+msgid "Previous page button label"
+msgstr "Étiquette du bouton de page précédente"
+msgid "Email settings cloned."
+msgstr "Configuration des courriels clonée."
+msgid "Preview page"
+msgstr "Page d'aperçu"
+msgid "Enable preview page"
+msgstr "Activer la page d'aperçu"
+msgid "Add a page for previewing the form before submitting."
+msgstr ""
+"Ajoute une page d'aperçu des réponses avant la soumission du "
+"formulaire."
+msgid "Preview page title"
+msgstr "Titre de la page d'aperçu"
+msgid ""
+"The page title will be used in the progress bar (if enabled). If left "
+"blank, the default title %preview will be used."
+msgstr ""
+"Le titre de page sera utilisé dans la barre de progression (si "
+"activée). Si laissé vide, le titre par défaut %preview sera "
+"utilisé."
+msgid "Preview button label"
+msgstr "Étiquette du bouton d'aperçu"
+msgid "Included preview values"
+msgstr "Composants de l'aperçu"
+msgid "Enable sending"
+msgstr "Activer l'envoi"
+msgid "The serial number of this webform submission."
+msgstr "Le numéro de série de cette soumission de webform."
+msgid ""
+"The \"Webform Conditional\" module has previously been installed on "
+"your site. Either uninstall the module or drop the database table "
+"\"webform_conditional\"."
+msgstr ""
+"Le module \"Webform Conditional\" a précédemment été installé sur "
+"votre site. Désinstaller le module ou supprimer la table "
+"\"webform_conditional\" de la base de données."
+msgid "Webform requires PHP 5.3 or higher."
+msgstr "Webform requiert PHP 5.3 ou supérieur."
+msgid "Next submission number"
+msgstr "Prochain numéro de soumission"
+msgid "The submission limit must be at least 1."
+msgstr "La limite de soumission doit être au moins 1."
+msgid "@serial (draft)"
+msgstr "@serial (brouillon)"
+msgid "Submission #@serial"
+msgstr "Soumission #@serial"
+msgid "The serial number of the submission."
+msgstr "Le numéro de série de la soumission."
+msgid "Token access"
+msgstr "Jeton (token) d'accès"
+msgid "The default option of the grid identified by its key."
+msgstr "L'option par défaut de la grille identifiée par sa clé."
+msgid "no submission"
+msgstr "aucune soumission"
+msgid "Webform tokens related to the submission's URL."
+msgstr "Jetons de Webform relatifs à l'URL de la soumission."
+msgid "Webform tokens related to the submission's Edit URL."
+msgstr "Jetons de Webform relatifs à l'URL d'édition de la soumission."
+msgid "Content authors: access and edit webform components and settings"
+msgstr ""
+"Auteurs du contenu : accéder et éditer les composants et paramètres "
+"de webform"
+msgid "Sticky table header"
+msgstr "Entête de tableau épinglée"
+msgid "Use a sticky (non-scrolling) table header."
+msgstr "Utiliser une entête de tableau épinglée (sans défilement)."
+msgid "!name field value must format numbers as \"@example\"."
+msgstr ""
+"La valeur du champ !name doit mettre en forme les nombres comme "
+"\"@example\"."
+msgid "!name field value of @value should be in the range @min to @max."
+msgstr ""
+"La valeur @value du champ !name doit être comprise dans l'intervalle "
+"de @min à @max."
+msgid "!name field value must be less than @max."
+msgstr "La valeur du champ !name doit être inférieure à @max."
+msgid "!name field value of @value must be an integer."
+msgstr "La valeur @value du champ !name doit être un entier."
+msgid ""
+"!name field value must be @start plus a multiple of @step. i.e. "
+"@samples, etc."
+msgstr ""
+"La valeur du champ !name doit être @start plus un multiple de @step, "
+"c'est-à-dire @samples, etc."
+msgid "!name field value must be a multiple of @step. i.e. @samples, etc."
+msgstr ""
+"La valeur du champ !name doit être un multiple de @step. "
+"c'est-à-dire @samples, etc."
+msgid "!name field value of @value must be numeric."
+msgstr "La valeur @value du champ !name doit être numérique."
+msgid "Entered !name is not a valid time."
+msgstr "La valeur !name saisie n'est pas une date valide."
+msgid "The block %info was deleted."
+msgstr "Le bloc %info a été supprimé."
+msgid "Displays all values as submitted by a user."
+msgstr "Affiche toutes les valeurs soumises par un utilisateur."
+msgid "Show !links results per page."
+msgstr "Afficher !links résultats par page."
+msgid ""
+"The token [serial] will be replaced with the serial number and draft "
+"indication."
+msgstr ""
+"Le jeton [serial] sera remplacé par le numéro de série et "
+"l'indication de brouillon."
+msgid "Verify submission access for each link"
+msgstr "Vérifier l'accès à la soumission pour chaque lien"
+msgid "Showing @start - @end of @total"
+msgstr "Affichage de @start - @end sur @total"
+msgid "[serial]"
+msgstr "[serial]"
+msgid "Showing @start - @end of @total @items_per_page_links"
+msgstr "Affichage de @start - @end sur @total @items_par_page_links"
+msgid ""
+"This form could not be submitted because it exceeds the server "
+"configuration. Contact the administrator."
+msgstr ""
+"Ce formulaire n'a pas pu être soumis car il excède la configuration "
+"du serveur. Merci de contacter l'administrateur."
+msgid ""
+"POST truncated to @count input vars. PHP max_input_vars is @limit. "
+"Increase max_input_vars."
+msgstr ""
+"POST tronqué à @count champs envoyés. PHP max_input_vars est à "
+"@limit et devrait être augmenté."
+msgid "HTML mail system"
+msgstr "Système de mail HTML"
+msgid "form only"
+msgstr "formulaire uniquement"
+msgid "Only text containing return characters"
+msgstr "Seulement le texte contenant les caractères de retour à la ligne"
+msgid "All text"
+msgstr "Tout le texte"
+msgid "Webform nodes"
+msgstr "Nœuds webform"
+msgid "Nodes which have webforms."
+msgstr "Les nœuds qui ont des webforms."
+msgid "The node this webform is part of."
+msgstr "Le nœud dont ce webform fait partie."
+msgid "Node for webform"
+msgstr "Nœud pour webform"
+msgid "Displaying @start - @end of @total. @items_per_page_links"
+msgstr "Affichage de @start - @end sur @total. @items_per_page_links"
+msgid "!name via !site_name"
+msgstr "!name via !site_name"
+msgid "More than one conditional hides or shows component \"@name\"."
+msgstr "Plus d'un champ conditionnel masque ou affiche le composant \"@name\"."
+msgid "A forward reference from page @from, %from to %to was found."
+msgstr ""
+"Une référence de suivi de la page @from, %from vers %to a été "
+"trouvée."
+msgid "A circular reference involving %name was found."
+msgstr "Une référence circulaire impliquant %name a été trouvée."
+msgid "This form is improperly configured. Contact the administrator."
+msgstr ""
+"Ce formulaire n'est pas configuré correctement. Merci de contacter "
+"l'administrateur."
+msgid "Conditional error on page @num:"
+msgid_plural "Conditional errors on page @num:"
+msgstr[0] "Erreur conditionnelle sur la page @num :"
+msgstr[1] "Erreurs conditionnelles sur la page @num :"
+msgid "The security token used to gain access to this webform submission."
+msgstr ""
+"Le jeton de sécurité utilisé pour obtenir l'accès à cette "
+"soumission de webform."
+msgid "The date the webform was first save as draft or completed."
+msgstr ""
+"La date à laquelle le webform a été enregistré comme brouillon ou "
+"complété pour la première fois."
+msgid "Date completed"
+msgstr "Date de complétion"
+msgid "The date the webform was first completed (not draft)."
+msgstr ""
+"La date à laquelle le webform a été complété (pas enregistré "
+"comme brouillon) pour la première fois."
+msgid "The date the webform was last saved (draft or completed)."
+msgstr ""
+"La data à laquelle le webform a été enregistré (brouillon ou "
+"complété) pour la dernière fois."
+msgid "Display as configured in the webform"
+msgstr "Afficher tel que configuré dans le webform"
+msgid ""
+"Display the confirmation page in the block on the same page (no "
+"redirect)"
+msgstr ""
+"Afficher la page de confirmation dans le bloc sur la même page (pas "
+"de redirection)"
+msgid ""
+"A partially-completed form was found. Please complete the remaining "
+"portions."
+msgstr ""
+"Un formulaire partiellement complété a été trouvé. Veuillez "
+"compléter les portions restantes."
+msgid "Only one e-mail address is allowed."
+msgstr "Une seule adresse courriel est autorisée."
+msgid ""
+"A hidden day or month will be set to 1. A hidden year will be set to "
+"the year of the default value."
+msgstr ""
+"Un jour ou un mois caché sera mis à 1. Une année cachée sera mise "
+"à l'année de la valeur par défaut."
+msgid ""
+"The @field could not be interpreted in <a "
+"href=\"http://www.gnu.org/software/tar/manual/html_chapter/Date-input-formats.html\">GNU "
+"Date Input Format</a>."
+msgstr ""
+"Le champ @field ne peut pas être interprété dans un <a "
+"href=\"http://www.gnu.org/software/tar/manual/html_chapter/Date-input-formats.html\">Format "
+"de saisie de date GNU</a>."
+msgid "The End date must be on or after the Start date."
+msgstr ""
+"La date de fin doit être la même ou postérieure à la date de "
+"début."
+msgid "Allow multiple e-mail addresses, separated by commas."
+msgstr "Permettre plusieurs adresses de courriel, séparées par des virgules."
+msgid "Allow long format: \"Example Name\" &lt;name@example.com&gt;"
+msgstr "Permettre le format long: \"Nom Exemple\" &lt;nom@exemple.com&gt;"
+msgid "Short format only: name@example.com"
+msgstr "Format court uniquement : nom@exemple.com"
+msgid "Not all servers support the \"long\" format."
+msgstr "Le format \"long\" n'est pas pris en charge par tous les serveurs."
+msgid ""
+"You may optionally use tokens to create a pattern used to rename files "
+"upon submission. Omit the extension; it will be added automatically."
+msgstr ""
+"Vous pouvez éventuellement utiliser des jetons (tokens) pour créer "
+"un motif utilisé pour renommer les fichiers à la soumission. Oubliez "
+"l'extension ; elle sera ajoutée automatiquement."
+msgid ""
+"To create unique file names, use at least one token in the file name "
+"pattern."
+msgstr ""
+"Pour créer des noms de fichier uniques, utiliser au moins un jeton "
+"(token) dans le motif de nom de fichier."
+msgid "Empty option"
+msgstr "Option vide"
+msgid "The earliest time that may be entered into the field."
+msgstr "La date la plus ancienne pouvant être saisie dans le champ."
+msgid "The latest time that may be entered into the field."
+msgstr "La date la plus récente pouvant être saisie dans le champ."
+msgid "The @field isn't a valid time."
+msgstr "Le champ @field n'est pas une date valide."
+msgid "The entered time must be from @start_time to midnight to @end_time."
+msgstr ""
+"La date saisie doit être comprise entre @start_time à minuit à "
+"@end_time."
+msgid "The entered time must be no earlier than @start_time."
+msgstr "La date saisie ne doit pas être antérieure à @start_time."
+msgid "The entered time must be no later than @end_time."
+msgstr "La date saisie ne doit pas être postérieure à @end_time."
+msgid "E-mailing multiple recipients"
+msgstr "Envoi de courriel à plusieurs destinataires"
+msgid "Send a single e-mail to all recipients"
+msgstr "Envoyer un courriel unique à tous les destinataires"
+msgid "Send individual e-mails to each recipient"
+msgstr "Envoyer un courriel individuel à chaque destinataire"
+msgid "@title — @sample"
+msgstr "@title — @sample"
+msgid "set to"
+msgstr "définir à"
+msgid "Is/Isn't"
+msgstr "Est/N'est pas"
+msgid "isn't"
+msgstr "n'est pas"
+msgid "then !target !invert !action !argument"
+msgstr "puis !target !invert !action !argument"
+msgid "is less than or equal"
+msgstr "est moins que ou égal"
+msgid "is greater than or equal"
+msgstr "est plus grand que ou égal"
+msgid "is or is before"
+msgstr "est ou est avant"
+msgid "is or is after"
+msgstr "est ou est après"
+msgid "is not on"
+msgstr "n'est pas sur"
+msgid "is on or before"
+msgstr "est sur ou avant"
+msgid "is on or after"
+msgstr "est sur ou après"
+msgid "is not at"
+msgstr "n'est pas à"
+msgid "is at or before"
+msgstr "est à ou avant"
+msgid "is at or after"
+msgstr "est à ou après"
+msgid "Exclude empty components"
+msgstr "Exclure les composants vides"
+msgid "Confidential submissions"
+msgstr "Soumissions confidentielles"
+msgid "All submissions by date"
+msgstr "Toutes les soumissions par date"
+msgid "End submission number must not be less than Start submission number."
+msgstr ""
+"L'identifiant de soumission de fin ne doit pas être inférieur à "
+"l'identifiant de soumission de début."
+msgid "Start date range is required."
+msgstr "La date de début est requise."
+msgid "Start date range is not in a valid format."
+msgstr "La date de début n'est pas dans un format valide."
+msgid "End date range is not in a valid format."
+msgstr "La date de fin n'est pas dans un format valide."
+msgid "End date range must not be before the Start date.."
+msgstr "La date de fin ne doit pas être antérieure à la date de début..."
+msgid "Submitted Time"
+msgstr "Heure de soumission"
+msgid "Completed Time"
+msgstr "Heure de complétion"
+msgid "Modified Time"
+msgstr "Heure de modification"
+msgid "empty or invalid"
+msgstr "vide ou invalide"
+msgid "The page break %to can't be controlled by %from on the same page."
+msgstr ""
+"Le saut de page %to ne peut pas être contrôlé par %from sur la "
+"même page."
+msgid ""
+"WebformConditionals::componentVisibility called prior to evaluating a "
+"submission."
+msgstr ""
+"WebformConditionals::componentVisibility est appelé avant d'évaluer "
+"une soumission."
+msgid ""
+"WebformConditionals::componentRequired called prior to evaluating a "
+"submission."
+msgstr ""
+"WebformConditionals::componentRequired est appelé avant d'évaluer "
+"une soumission."
+msgid "Timestamp when the form was first saved as draft or submitted."
+msgstr ""
+"Horodatage du premier envoi du formulaire ou de son premier brouillon "
+"enregistré."
+msgid "Timestamp when the form was submitted as complete (not draft)."
+msgstr "Horodatage du formulaire envoyé complet (hors brouillon)."
+msgid "Timestamp when the form was last saved (complete or draft)."
+msgstr ""
+"Horodatage du dernier enregistrement du formulaire (complet ou "
+"brouillon)."
+msgid "Data field (numeric)"
+msgstr "Champ de donnée (numérique)"
+msgid "The numeric value of a component as submitted by a user."
+msgstr ""
+"La valeur numérique d'un composant telle que soumise par un "
+"utilisateur."
+msgid "Numeric value (raw)"
+msgstr "Valeur numérique (brute)"
+msgid ""
+"Webform tokens from submitted data. Replace the \"?\" with the \"field "
+"key\", including any parent field keys separated by colons. You can "
+"append:"
+msgstr ""
+"Les jetons (tokens) de Webform des données soumises. Remplacer le "
+"\"?\" avec la \"clé de champ\", en incluant les clés de champs "
+"parents séparées par des deux points. Vous pouvez ajouter :"
+msgid "the question key for just that one question (grid components)."
+msgstr ""
+"la clé de la question uniquement pour cette question (composant "
+"grille)."
+msgid "the option key for just that one option (grid and select components)."
+msgstr ""
+"la clé d'option uniquement pour cette option (composants grille et "
+"liste de sélection)."
+msgid "<code>@token</code> for the value without the label (the default)."
+msgstr "<code>@token</code> pour la valeur sans l'étiquette (par défaut)."
+msgid "<code>@token</code> for just the label."
+msgstr "<code>@token</code> pour l'étiquette uniquement."
+msgid "<code>@token</code> for both the label and value together."
+msgstr "<code>@token</code> pour l'étiquette et la valeur ensemble."
+msgid ""
+"An HTML-capable module is installed. The option to send HTML e-mail is "
+"enabled."
+msgstr ""
+"Un module gérant le HTML est installé. L'option pour envoyer un "
+"courriel HTML est activée."
+msgid "Add a new condition:"
+msgstr "Ajouter une nouvelle condition :"
+msgid "Possible spam attempt from @remote !message"
+msgstr "Tentative de spam potentielle depuis @remote !message"
+msgid ""
+"This form is confidential. You must <a href=\"!url\">Log out</a> to "
+"submit it."
+msgstr ""
+"Ce formulaire est confidentiel. Vous devez vous <a "
+"href=\"!url\">Déconnecter</a> pour le soumettre."
+msgid "Webform emails may now be disabled."
+msgstr "Les courriels de Webform peuvent désormais être désactivés."
+msgid "Markup allows you to enter custom HTML into your form."
+msgstr ""
+"Le balisage vous permet de saisir du HTML personnalisé dans votre "
+"formulaire."
+msgid "Uncheck to disable sending this email."
+msgstr "Décocher pour désactiver l'envoi de ce courriel."
+msgid ""
+"WebformConditionals::componentSet called prior to evaluating a "
+"submission."
+msgstr ""
+"WebformConditionals::componentSet appelé avant l'évaluation d'une "
+"soumission."
+msgid ""
+"WebformConditionals::componentMarkup called prior to evaluating a "
+"submission."
+msgstr ""
+"WebformConditionals::componentMarkup appelé avant l'évaluation d'une "
+"soumission."
+msgid "Description above field"
+msgstr "Description au-dessus du champ"
+msgid ""
+"Place the description above &mdash; rather than below &mdash; the "
+"field."
+msgstr ""
+"Placer la description au-dessus &mdash; plutôt qu'en-dessous &mdash; "
+"le champ."
+msgid "The Views module was automatically enabled."
+msgstr "Le module Views a été activé automatiquement."
+msgid ""
+"UPDATE ERROR: The Views module must be downloaded and enabled before "
+"Webform updates can proceed."
+msgstr ""
+"ERREUR DE MISE À JOUR : Le module Views doit être présent et "
+"activé avant de procéder à la mise à jour de Webform."
+msgid "Webform PHP requirement"
+msgstr "Pré-requis PHP de Webform"
+msgid "Webform Views requirement"
+msgstr "Pré-requis Views de Webform"
+msgid "Webform requires Views, which is not installed and enabled."
+msgstr "Webform requiert Views, qui n'est pas installé et activé."
+msgid "About options and questions&hellip;"
+msgstr "A propos des options et des questions&hellip;"
+msgid "Options and questions configured <strong>here</strong>"
+msgstr "Options et questions configurées <strong>ici</strong>"
+msgid "Enter the questions below."
+msgstr "Saisir les questions ci-dessous."
+msgid "Enter options below."
+msgstr "Saisir les options ci-dessous."
+msgid "No. Radio buttons only."
+msgstr "Non. Boutons radio uniquement."
+msgid "Pre-built option lists"
+msgstr "Listes d'options pré-construites"
+msgid "Question conditionals"
+msgstr "Questions conditionnelles"
+msgid ""
+"Yes. Individual questions may be used in conditional rules and/or "
+"actions."
+msgstr ""
+"Oui. Des questions individuelles peuvent être utilisées dans les "
+"règles conditionnelles ou les actions."
+msgid "Other types of nested components"
+msgstr "Autres types de composants imbriqués"
+msgid ""
+"Options to select across the top, such as \"Poor\" through "
+"\"Excellent\" or \"Stronly Disagree\" through \"Strongly Agree\"."
+msgstr ""
+"Options à sélectionner dans le haut du tableau, tel que \"Pauvre\" "
+"à \"Excellent\", ou \"Très défavorable\" à \"Très favorable\"."
+msgid "Clear submissions"
+msgstr "Effacer les soumissions"
+msgid "Clearing submission data"
+msgstr "Effacement des données de soumission"
+msgid "The submissions could not be cleared because an error occurred."
+msgstr ""
+"Les soumissions ne peuvent pas être effacées car une erreur s'est "
+"produite."
+msgid "Cleared @count of @total submissions..."
+msgstr "@count sur @total soumissions effacées..."
--- a/cms/drupal/themes/bartik/bartik.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/themes/bartik/bartik.info	Mon Mar 19 16:00:44 2018 +0100
@@ -34,8 +34,8 @@
 settings[shortcut_module_link] = 0
 
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/themes/garland/garland.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/themes/garland/garland.info	Mon Mar 19 16:00:44 2018 +0100
@@ -7,8 +7,8 @@
 stylesheets[print][] = print.css
 settings[garland_width] = fluid
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/themes/seven/seven.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/themes/seven/seven.info	Mon Mar 19 16:00:44 2018 +0100
@@ -13,8 +13,8 @@
 regions[sidebar_first] = First sidebar
 regions_hidden[] = sidebar_first
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"
 
--- a/cms/drupal/themes/stark/stark.info	Mon Mar 19 15:45:08 2018 +0100
+++ b/cms/drupal/themes/stark/stark.info	Mon Mar 19 16:00:44 2018 +0100
@@ -5,8 +5,8 @@
 core = 7.x
 stylesheets[all][] = layout.css
 
-; Information added by Drupal.org packaging script on 2017-06-21
-version = "7.56"
+; Information added by Drupal.org packaging script on 2018-02-21
+version = "7.57"
 project = "drupal"
-datestamp = "1498069849"
+datestamp = "1519235152"