From 829d3f1abe641bd25c81af8c57e2c256497fb6c7 Mon Sep 17 00:00:00 2001 From: agree <37550360+greenbea@users.noreply.github.com> Date: Thu, 18 Mar 2021 18:06:24 -0400 Subject: [PATCH 1/2] extension settings fix not clearing cache --- .../resources/classes/extension_settings.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/extension_settings/resources/classes/extension_settings.php b/app/extension_settings/resources/classes/extension_settings.php index a8d21ce41f..0fe50b8889 100755 --- a/app/extension_settings/resources/classes/extension_settings.php +++ b/app/extension_settings/resources/classes/extension_settings.php @@ -112,6 +112,16 @@ if (!class_exists('extension_settings')) { $database->app_uuid = $this->app_uuid; $database->delete($array); unset($array); + + //clear the cache + $sql = "select extension, number_alias, user_context from v_extensions "; + $sql .= "where extension_uuid = :extension_uuid "; + $parameters['extension_uuid'] = $extension_uuid; + $database = new database; + $extension = $database->select($sql, $parameters, 'row'); + $cache = new cache; + $cache->delete("directory:".$extension["extension"]."@".$extension["user_context"]); + $cache->delete("directory:".$extension["number_alias"]."@".$extension["user_context"]); //set message message::add($text['message-delete']); From bf2418f131777e960c499e60fab6e5b796aa2392 Mon Sep 17 00:00:00 2001 From: agree <37550360+greenbea@users.noreply.github.com> Date: Thu, 18 Mar 2021 18:09:03 -0400 Subject: [PATCH 2/2] fix extension setting edit not clearing cache --- app/extension_settings/extension_setting_edit.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/app/extension_settings/extension_setting_edit.php b/app/extension_settings/extension_setting_edit.php index 7e026aa786..6254870e53 100755 --- a/app/extension_settings/extension_setting_edit.php +++ b/app/extension_settings/extension_setting_edit.php @@ -153,7 +153,17 @@ $database->app_name = 'extension settings'; $database->app_uuid = '1416a250-f6e1-4edc-91a6-5c9b883638fd'; $database->save($array); - + + //clear the cache + $sql = "select extension, number_alias, user_context from v_extensions "; + $sql .= "where extension_uuid = :extension_uuid "; + $parameters['extension_uuid'] = $extension_uuid; + $database = new database; + $extension = $database->select($sql, $parameters, 'row'); + $cache = new cache; + $cache->delete("directory:".$extension["extension"]."@".$extension["user_context"]); + $cache->delete("directory:".$extension["number_alias"]."@".$extension["user_context"]); + //redirect the user if (isset($action)) { if ($action == "add") {