From e0e514e1850d0f52a3fdeeee54712050fd0fe5c7 Mon Sep 17 00:00:00 2001
From: Andreas Gohr <gohr@cosmocode.de>
Date: Thu, 31 Jan 2013 16:28:25 +0100
Subject: [PATCH] touch the config on save, even if no changes were made

---
 lib/plugins/config/admin.php                 | 2 ++
 lib/plugins/config/settings/config.class.php | 9 +++++++++
 2 files changed, 11 insertions(+)

diff --git a/lib/plugins/config/admin.php b/lib/plugins/config/admin.php
index 0d314d2e6..930eb30c6 100644
--- a/lib/plugins/config/admin.php
+++ b/lib/plugins/config/admin.php
@@ -67,6 +67,8 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin {
         $this->_close_session();
         header("Location: ".wl($ID,array('do'=>'admin','page'=>'config'),true,'&'));
         exit();
+      } elseif(!$this->_error) {
+          $this->_config->touch_settings(); // just touch to refresh cache
       }
 
       $this->_close_session();
diff --git a/lib/plugins/config/settings/config.class.php b/lib/plugins/config/settings/config.class.php
index a30a0605b..334e617dd 100644
--- a/lib/plugins/config/settings/config.class.php
+++ b/lib/plugins/config/settings/config.class.php
@@ -130,6 +130,15 @@ if (!class_exists('configuration')) {
       return true;
     }
 
+    /**
+     * Update last modified time stamp of the config file
+     */
+    function touch_settings(){
+        if ($this->locked) return false;
+        $file = end($this->_local_files);
+        return @touch($file);
+    }
+
     function _read_config_group($files) {
       $config = array();
       foreach ($files as $file) {
-- 
GitLab