From 32a1e63a360f6354374324ec4a5c344d0b1bf2de Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 10 Mar 2017 13:59:44 +0100 Subject: [sysconfig] Add ConfigTgz::rebuildAllConfigs() --- modules-available/sysconfig/inc/configtgz.inc.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'modules-available/sysconfig/inc') diff --git a/modules-available/sysconfig/inc/configtgz.inc.php b/modules-available/sysconfig/inc/configtgz.inc.php index ba48c7ed..c03d1c5e 100644 --- a/modules-available/sysconfig/inc/configtgz.inc.php +++ b/modules-available/sysconfig/inc/configtgz.inc.php @@ -198,6 +198,25 @@ class ConfigTgz * Static part */ + /** + * Marks all modules as outdated and triggers generate() + * on each one. This mostly makes sense to call if a global module + * that is injected via a hook has changed. + */ + public static function rebuildAllConfigs() + { + Database::exec("UPDATE configtgz SET status = :status", array( + 'status' => 'OUTDATED' + )); + $res = Database::simpleQuery("SELECT configid FROM configtgz"); + while ($row = $res->fetch(PDO::FETCH_ASSOC)) { + $module = self::get($row['configid']); + if ($module !== false) { + $module->generate(); + } + } + } + public static function insert($title, $moduleIds) { if (!is_array($moduleIds)) -- cgit v1.2.3-55-g7522