diff --git a/core/modules/aggregator/aggregator.test b/core/modules/aggregator/aggregator.test
index afba1818bdd..bd22aa6cb00 100644
--- a/core/modules/aggregator/aggregator.test
+++ b/core/modules/aggregator/aggregator.test
@@ -800,7 +800,7 @@ class AggregatorCronTestCase extends AggregatorTestCase {
public function testCron() {
// Create feed and test basic updating on cron.
global $base_url;
- $key = variable_get('cron_key', 'drupal');
+ $key = config('system.cron')->get('cron_key');
$this->createSampleNodes();
$feed = $this->createFeed();
$this->cronRun();
diff --git a/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php b/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php
index 277e97bcdcb..eb7c5a31840 100644
--- a/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php
+++ b/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php
@@ -1503,7 +1503,7 @@ abstract class WebTestBase extends TestBase {
* Runs cron in the Drupal installed by Simpletest.
*/
protected function cronRun() {
- $this->drupalGet('cron/' . variable_get('cron_key', 'drupal'));
+ $this->drupalGet('cron/' . config('system.cron')->get('cron_key'));
}
/**
diff --git a/core/modules/system/config/system.cron.xml b/core/modules/system/config/system.cron.xml
new file mode 100644
index 00000000000..5e95b98c869
--- /dev/null
+++ b/core/modules/system/config/system.cron.xml
@@ -0,0 +1,8 @@
+
+
' . t('Cron takes care of running periodic tasks like checking for updates and indexing content for search.') . '
', ); @@ -1589,11 +1589,30 @@ function system_cron_settings() { $form['cron']['cron_safe_threshold'] = array( '#type' => 'select', '#title' => t('Run cron every'), - '#default_value' => variable_get('cron_safe_threshold', DRUPAL_CRON_DEFAULT_THRESHOLD), + '#default_value' => config('system.cron')->get('cron_safe_threshold'), '#options' => array(0 => t('Never')) + drupal_map_assoc(array(3600, 10800, 21600, 43200, 86400, 604800), 'format_interval'), ); + // @todo This needs to be reviewed when #1324618 gets in. + $form_state['config']['cron_safe_threshold'] = array( + 'name' => 'system.cron', + 'path' => 'cron_safe_threshold', + ); - return system_settings_form($form); + $form['submit'] = array('#type' => 'submit', '#value' => t('Save configuration')); + return $form; +} + +/** + * Form builder submit handler; Handle submission for cron settings. + * + * @ingroup forms + * @see system_settings_form() + */ +function system_cron_settings_submit($form, &$form_state) { + config('system.cron') + ->set('cron_safe_threshold', $form_state['values']['cron_safe_threshold']) + ->save(); + drupal_set_message(t('The configuration options have been saved.')); } /** diff --git a/core/modules/system/system.install b/core/modules/system/system.install index 83def52c4cc..8958f317ab0 100644 --- a/core/modules/system/system.install +++ b/core/modules/system/system.install @@ -253,10 +253,11 @@ function system_requirements($phase) { // Report cron status. if ($phase == 'runtime') { + $config = config('system.cron'); // Cron warning threshold defaults to two days. - $threshold_warning = variable_get('cron_threshold_warning', 172800); + $threshold_warning = $config->get('cron_threshold_warning'); // Cron error threshold defaults to two weeks. - $threshold_error = variable_get('cron_threshold_error', 1209600); + $threshold_error = $config->get('cron_threshold_error'); // Cron configuration help text. $help = $t('For more information, see the online handbook entry for configuring cron jobs.', array('@cron-handbook' => 'http://drupal.org/cron')); @@ -283,7 +284,7 @@ function system_requirements($phase) { } $description .= ' ' . $t('You can run cron manually.', array('@cron' => url('admin/reports/status/run-cron'))); - $description .= '