Code

Added cleanup variable to main.incs
[gosa.git] / gosa-plugins / samba / personal / samba / main.inc
index 890e7a0a1c9ae1ee44aff546dfda63e064d673c5..9067f2107856925257cefd9dd31b1c6dd441aafc 100644 (file)
 
 $display  = "";
 $lock_msg = "";
-if (!$remove_lock){
+
+/* Remove classes and variables from session
+ */
+if ( $cleanup ){
+  session::un_set('sambaAccount');
+  session::un_set('edit');
+}
+
+if ( $remove_lock){
+  if(session::is_set('sambaAccount') && session::is_set('edit')){
+    del_lock ($ui->dn);
+  }
+
+}else{
+
   /* Reset requested? */
   if (isset($_POST['edit_cancel']) ||
       (isset($_GET['reset']) && $_GET['reset'] == 1)){
 
-    del_lock ($ui->dn);
+    /* Only remove lock if object was opened 
+     */
+    if(session::is_set('sambaAccount') && session::is_set('edit')){
+      del_lock ($ui->dn);
+    }
     session::un_set ('edit');
     session::un_set ('sambaAccount');
   }
@@ -58,7 +76,6 @@ if (!$remove_lock){
 
       /* Lock the current entry */
       add_lock ($ui->dn, $ui->dn);
-      session::set('dn',$ui->dn);
       session::set('edit',TRUE);
     }
   }