r2184 - enhance saveEntityTags() and get rid of 6 wrapping functions
[racktables] / inc / ophandlers.php
index 58584ecb6d8bcbcbea42f903075630c0fc3b0af0..aa775205deb3c2aba53d59a055c1c4aa82d575e8 100644 (file)
@@ -1141,9 +1141,25 @@ function generateAutoPorts ()
 }
 
 // Filter out implicit tags before storing the new tag set.
 }
 
 // Filter out implicit tags before storing the new tag set.
-function saveEntityTags ($realm, $bypass)
+function saveEntityTags ()
 {
 {
-       global $explicit_tags, $implicit_tags;
+       $page2realm = array
+       (
+               'object' => 'object',
+               'iprange' => 'ipv4net',
+               'rack' => 'rack',
+               'ipv4vs' => 'ipv4vs',
+               'ipv4rsp' => 'ipv4rspool',
+               'user' => 'user'
+       );
+       global $explicit_tags, $implicit_tags, $page, $pageno;
+       if (!isset ($page2realm[$pageno]) or !isset ($page[$pageno]['bypass']))
+       {
+               showError ('Internal error', __FUNCTION__);
+               die;
+       }
+       $realm = $page2realm[$pageno];
+       $bypass = $page[$pageno]['bypass'];
        assertUIntArg ($bypass, __FUNCTION__);
        $entity_id = $_REQUEST[$bypass];
        $taglist = isset ($_REQUEST['taglist']) ? $_REQUEST['taglist'] : array();
        assertUIntArg ($bypass, __FUNCTION__);
        $entity_id = $_REQUEST[$bypass];
        $taglist = isset ($_REQUEST['taglist']) ? $_REQUEST['taglist'] : array();
@@ -1163,36 +1179,6 @@ function saveEntityTags ($realm, $bypass)
                return buildRedirectURL ('OK', array ($n_succeeds));
 }
 
                return buildRedirectURL ('OK', array ($n_succeeds));
 }
 
-function saveObjectTags ()
-{
-       return saveEntityTags ('object', 'object_id');
-}
-
-function saveIPv4PrefixTags ()
-{
-       return saveEntityTags ('ipv4net', 'id');
-}
-
-function saveRackTags ()
-{
-       return saveEntityTags ('rack', 'rack_id');
-}
-
-function saveIPv4VSTags ()
-{
-       return saveEntityTags ('ipv4vs', 'vs_id');
-}
-
-function saveIPv4RSPoolTags ()
-{
-       return saveEntityTags ('ipv4rspool', 'pool_id');
-}
-
-function saveUserTags ()
-{
-       return saveEntityTags ('user', 'user_id');
-}
-
 function destroyTag ()
 {
        assertUIntArg ('tag_id', __FUNCTION__);
 function destroyTag ()
 {
        assertUIntArg ('tag_id', __FUNCTION__);