From db165207d0859d009abc07a9847b63e53d90b4c3 Mon Sep 17 00:00:00 2001 From: Marcin Haba Date: Sun, 19 Nov 2017 15:04:46 +0100 Subject: [PATCH] baculum: Add removing single resource --- gui/baculum/protected/Web/Lang/en/messages.mo | Bin 33313 -> 33961 bytes gui/baculum/protected/Web/Lang/en/messages.po | 16 ++ gui/baculum/protected/Web/Lang/ja/messages.mo | Bin 30379 -> 31067 bytes gui/baculum/protected/Web/Lang/ja/messages.po | 16 ++ gui/baculum/protected/Web/Lang/pl/messages.mo | Bin 35710 -> 36368 bytes gui/baculum/protected/Web/Lang/pl/messages.po | 16 ++ gui/baculum/protected/Web/Lang/pt/messages.mo | Bin 36213 -> 36821 bytes gui/baculum/protected/Web/Lang/pt/messages.po | 16 ++ gui/baculum/protected/Web/Pages/config.xml | 1 + .../Web/Portlets/BaculaConfigResources.php | 140 ++++++++++++++++++ .../Web/Portlets/BaculaConfigResources.tpl | 45 +++++- 11 files changed, 247 insertions(+), 3 deletions(-) diff --git a/gui/baculum/protected/Web/Lang/en/messages.mo b/gui/baculum/protected/Web/Lang/en/messages.mo index 3d7319622b01c4eb4215e6a21d177524156845d1..523418c02ef99a531ac27da154c1ed2774a0984d 100644 GIT binary patch literal 33961 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 a27h}`-=`{+!t3|K>-YbXuivLV>;B(j-u#OI literal 33313 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�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 vr=zn-ECIf_xRYAXRGJ z!KD?Xwjvd!i-e+BDu`7-YE>4COUu&MPi#>@K@j!B&g3^~Q||M;&;LF9%zx(0ne*O1 zf9`qqQ%~T?;L9F%^83EWxlw`%1Dv~}mva@@xUS!d8=SjJaHZgP1=k4n7kolcy1Fe^ zzr)I}Tl+hP$E^Mn!G3}l1g{Y6HO9Gp&IR0nF;pBL!$QXeFBkmM(2aGjw?MzKOf*1n zsNe`el`�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 delta 10249 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 diff --git a/gui/baculum/protected/Web/Lang/pl/messages.po b/gui/baculum/protected/Web/Lang/pl/messages.po index 84f967b44..9c5eae621 100644 --- a/gui/baculum/protected/Web/Lang/pl/messages.po +++ b/gui/baculum/protected/Web/Lang/pl/messages.po @@ -1427,3 +1427,19 @@ msgstr "Pole wymagane." msgid "Invalid value. Integer value required." msgstr "Niepoprawna wartość. Wymagane jest podanie liczby całkowitej." + +msgid "Resource %s \"%s\" is used in the following resources:" +msgstr "Zasób %s \"%s\" jest użyty w następujących zasobach:" + +msgid "Component: %s, Resource: %s \"%s\", Directive: %s" +msgstr "Komponent: %s, Zasób: %s \"%s\", Dyrektywa: %s" + +msgid "Are you sure that you want to remove %s resource \"%s\"?" +msgstr "Czy jesteś pewien, że chcesz usunąć zasób %s \"%s\"?" + +msgid "Resource %s \"%s\" removed successfully." +msgstr "Zasób %s \"%s\" został usunięty pomyślnie." + +msgid "Please unassign resource %s \"%s\" from these resources and try again." +msgstr "Proszę wypisać zasób %s \"%s\" z tych zasobów i spróbować ponownie." + diff --git a/gui/baculum/protected/Web/Lang/pt/messages.mo b/gui/baculum/protected/Web/Lang/pt/messages.mo index 2b901fd01cd575a1897f0adfbfa33904718ed835..a4e3dcdf01408070ce66cf6afe20c57b274406c1 100644 GIT binary patch delta 10863 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 delta 10282 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 + diff --git a/gui/baculum/protected/Web/Portlets/BaculaConfigResources.php b/gui/baculum/protected/Web/Portlets/BaculaConfigResources.php index b24db4997..5083f58fc 100644 --- a/gui/baculum/protected/Web/Portlets/BaculaConfigResources.php +++ b/gui/baculum/protected/Web/Portlets/BaculaConfigResources.php @@ -77,6 +77,7 @@ class BaculaConfigResources extends ResourceListTemplate { $control->setResourceName($param->Item->DataItem['resource_name']); $control->setResourceNames($this->resource_names); } + $param->Item->RemoveResource->setCommandParameter($param->Item->DataItem); } public function getDirectives($sender, $param) { @@ -85,5 +86,144 @@ class BaculaConfigResources extends ResourceListTemplate { $control->raiseEvent('OnDirectiveListLoad', $this, null); } } + + /** + * Remove resource callback method. + * + * @return object $sender sender instance + * @return mixed $param additional parameters + * @return none + */ + public function removeResource($sender, $param) { + if (!$this->getPage()->IsCallback) { + // removing resource available only by callback + return; + } + $host_params = $param->getCommandParameter(); + if (!is_array($host_params) || count($host_params) === 0) { + return; + } + $host = $this->getHost(); + $config = $this->getConfigData($host, $host_params['component_type']); + $deps = $this->getModule('data_deps')->checkDependencies( + $host_params['component_type'], + $host_params['resource_type'], + $host_params['resource_name'], + $config + ); + if (count($deps) === 0) { + // NO DEPENDENCY. Ready to remove. + $this->removeResourceFromConfig( + $config, + $host_params['resource_type'], + $host_params['resource_name'] + ); + $result = $this->getModule('api')->set( + array('config', $host_params['component_type']), + array('config' => json_encode($config)), + $host, + false + ); + if ($result->error === 0) { + $this->showRemovedResourceInfo( + $host_params['resource_type'], + $host_params['resource_name'] + ); + } else { + $this->showRemovedResourceError($result->output); + } + } else { + // DEPENDENCIES EXIST. List them on the interface. + $this->showDependenciesError( + $deps, + $host_params['resource_type'], + $host_params['resource_name'] + ); + } + } + + /** + * Show removed resource information. + * + * @param string $resource_type removed resource type + * @param string $resource_name removed resource name + * @return none + */ + private function showRemovedResourceInfo($resource_type, $resource_name) { + $msg = Prado::localize('Resource %s "%s" removed successfully.'); + $msg = sprintf( + $msg, + $resource_type, + $resource_name + ); + $this->RemoveResourceOk->Text = $msg; + $this->getPage()->getCallbackClient()->hide($this->RemoveResourceError); + $this->getPage()->getCallbackClient()->show($this->RemoveResourceOk); + } + + /** + * Show removed resource error message. + * + * @param string $error_message error message + * @return none + */ + private function showRemovedResourceError($error_message) { + $this->RemoveResourceError->Text = $error_message; + $this->getPage()->getCallbackClient()->hide($this->RemoveResourceOk); + $this->getPage()->getCallbackClient()->show($this->RemoveResourceError); + } + + /** + * Show dependencies error message. + * + * @param array $deps list dependencies for the removing resource + * @param string $resource_type resource type of the removing resource + * @param string $resource_name resource name of the removing resource + * @return none + */ + private function showDependenciesError($deps, $resource_type, $resource_name) { + $emsg = Prado::localize('Resource %s "%s" is used in the following resources:'); + $emsg = sprintf($emsg, $resource_type, $resource_name); + $emsg_deps = Prado::localize('Component: %s, Resource: %s "%s", Directive: %s'); + $dependencies = array(); + for ($i = 0; $i < count($deps); $i++) { + $dependencies[] = sprintf( + $emsg_deps, + $deps[$i]['component_type'], + $deps[$i]['resource_type'], + $deps[$i]['resource_name'], + $deps[$i]['directive_name'] + ); + } + $emsg_sum = Prado::localize('Please unassign resource %s "%s" from these resources and try again.'); + $emsg_sum = sprintf($emsg_sum, $resource_type, $resource_name); + $error = array($emsg, implode('
', $dependencies), $emsg_sum); + $error_message = implode('

', $error); + $this->showRemovedResourceError($error_message); + } + + /** + * Remove resource from config. + * Note, passing config by reference. + * + * @param array $config entire config + * @param string $resource_type resource type to remove + * @param string $resource_name resource name to remove + * @return none + */ + private function removeResourceFromConfig(&$config, $resource_type, $resource_name) { + for ($i = 0; $i < count($config); $i++) { + foreach ($config[$i] as $rtype => $resource) { + if (!property_exists($resource, 'Name')) { + continue; + } + if ($rtype === $resource_type && $resource->Name === $resource_name) { + // remove resource + array_splice($config, $i, 1); + break; + } + } + } + } } ?> diff --git a/gui/baculum/protected/Web/Portlets/BaculaConfigResources.tpl b/gui/baculum/protected/Web/Portlets/BaculaConfigResources.tpl index 303d8329b..1d2090f07 100644 --- a/gui/baculum/protected/Web/Portlets/BaculaConfigResources.tpl +++ b/gui/baculum/protected/Web/Portlets/BaculaConfigResources.tpl @@ -1,8 +1,30 @@