CRM-12132 - Declare `secure_cache_timeout_minutes` setting
authorTim Otten <totten@civicrm.org>
Thu, 18 Aug 2016 21:40:48 +0000 (14:40 -0700)
committerSeamus Lee <seamuslee001@gmail.com>
Tue, 23 Aug 2016 21:18:28 +0000 (07:18 +1000)
CRM/Core/BAO/Cache.php
settings/Core.setting.php

index 012abb8334533d3b48b0723bd4b4ba009fa91b6c..a90133129061263871e4f52886ee6d54bba3f7ff 100644 (file)
  */
 class CRM_Core_BAO_Cache extends CRM_Core_DAO_Cache {
 
-  /**
-   * Const the default maximum number of minutes that secure form data should linger
-   * @var int
-   */
-  const SECURE_TIMEOUT = 20;
-
   /**
    * @var array ($cacheKey => $cacheValue)
    */
@@ -312,7 +306,6 @@ class CRM_Core_BAO_Cache extends CRM_Core_DAO_Cache {
   public static function cleanup($session = FALSE, $table = FALSE, $prevNext = FALSE) {
     // first delete all sessions more than 20 minutes old which are related to any potential transaction
     $timeIntervalMins = (int) Civi::settings()->get('secure_cache_timeout_minutes');
-    $timeIntervalMins = empty($timeIntervalMins) ? self::SECURE_TIMEOUT : $timeIntervalMins;
     if (TRUE) {
       $transactionPages = array(
         'CRM_Contribute_Controller_Contribution',
index 1484bc778a512fb9426643d9102a787c5656b64c..797818ad3ffc6a843bf8e1341f0e3864d31d7d1d 100644 (file)
@@ -765,6 +765,25 @@ return array(
     'description' => 'CiviCRM will use this setting as path to bootstrap WP.',
     'help_text' => NULL,
   ),
+  'secure_cache_timeout_minutes' => array(
+    'group_name' => 'CiviCRM Preferences',
+    'group' => 'core',
+    'name' => 'secure_cache_timeout_minutes',
+    'type' => 'Integer',
+    'quick_form_type' => 'Element',
+    'html_type' => 'text',
+    'html_attributes' => array(
+      'size' => 2,
+      'maxlength' => 8,
+    ),
+    'default' => 20,
+    'add' => '4.7',
+    'title' => 'Secure Cache Timeout',
+    'is_domain' => 1,
+    'is_contact' => 0,
+    'description' => 'Maximum number of minutes that secure form data should linger',
+    'help_text' => NULL,
+  ),
   'site_id' => array(
     'group_name' => 'CiviCRM Preferences',
     'group' => 'core',