Code

Updated phone stuff. Macro&&phoneAccount
authorhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Tue, 24 Jun 2008 08:02:56 +0000 (08:02 +0000)
committerhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Tue, 24 Jun 2008 08:02:56 +0000 (08:02 +0000)
-Save changes if only paramater values have changed.
-Fixed problem with selecting a macro.
-Fixed typo, which caused problems with POST attributes.

git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@11406 594d385d-05f5-0310-b6e9-bd551577e9d8

gosa-plugins/gofon/gofon/macro/class_gofonMacroParameters.inc
gosa-plugins/gofon/gofon/phoneaccount/class_phoneAccount.inc

index d8d2898a5ee6bbc270b6dd1a4cc8f7938560959d..c131d67ab6ae2765cbd92b711cb90b4f1921c961 100644 (file)
@@ -186,7 +186,7 @@ class macroParameter extends plugin
     }
 
     /* get current content */
-    $macroManagment = session::get('macroManagment') ;
+    $macroManagment = session::get('macroManagement') ;
     $content = $macroManagment->macrotabs->by_object['macro']->goFonMacroContent;
 
     if(strstr($content,"ARG")){
index c5796a68863f050f8454af4d950f4f055550cf61..d2b2029a640893e540266f526622b6f785a28052 100644 (file)
@@ -188,7 +188,7 @@ class phoneAccount extends plugin
 
 
     /* Get available Macros  
-     * Search for all Marcos that are visible and create 
+     * Search for all Macros that are visible and create 
      *  an array with name and parameters 
      */
     $tmp = get_sub_list("(&(objectClass=goFonMacro)(goFonMacroVisible=1))","gofonmacro",array(get_ou("macroou")),
@@ -1164,6 +1164,7 @@ class phoneAccount extends plugin
 
       /* Every macro in the select box are available */
       if((isset($_POST['macro']))){
+        $this->macro = $_POST['macro'];
         $this->macrostillavailable=true;
       }
 
@@ -1199,9 +1200,11 @@ class phoneAccount extends plugin
       /* get all Postvars */
       if(isset($this->macroarray[$this->macro])){
 
-        if($this->acl_is_writeable("goFonMarco",$SkipWrite)){
+
+        if($this->acl_is_writeable("goFonMacro",$SkipWrite)){
           foreach($this->macroarray[$this->macro] as $key => $paras){
 
+            $old_macro_settings = $this->macroarray[$this->macro][$key]; 
             $backup = $this->macroarray[$this->macro][$key];
 
             if(isset($_POST[$paras['var']])){
@@ -1221,7 +1224,11 @@ class phoneAccount extends plugin
                 }
               }
             }
+            if(array_differs($old_macro_settings,$this->macroarray[$this->macro][$key])){
+              $this->modified = TRUE;
+            }
           }
+
           if(count(array_diff($this->macroarray[$this->macro][$key],$backup))){
             $this->modified = TRUE;
           }
@@ -1638,6 +1645,7 @@ class phoneAccount extends plugin
       }
 
       if(isset($_POST['macro']) && $_POST['macro'] != $this->macro){
+        $this->macro = $_POST['macro'];
         $this->is_modified =true;
       }