summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 30f9f54)
raw | patch | inline | side by side (parent: 30f9f54)
author | hickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8> | |
Thu, 15 Sep 2011 07:53:13 +0000 (07:53 +0000) | ||
committer | hickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8> | |
Thu, 15 Sep 2011 07:53:13 +0000 (07:53 +0000) |
-Allow to have readonly tabs
git-svn-id: https://oss.gonicus.de/repositories/gosa/branches/2.7@20985 594d385d-05f5-0310-b6e9-bd551577e9d8
git-svn-id: https://oss.gonicus.de/repositories/gosa/branches/2.7@20985 594d385d-05f5-0310-b6e9-bd551577e9d8
gosa-core/include/class_tabs.inc | patch | blob | history |
index 7d985ec7ea4c43c8561b667be35e3b4968d1e00e..f7cb676cff694ed4dcfbb27713ae480d68fed0f6 100644 (file)
var $read_only = FALSE; // Used when the entry is opened as "readonly" due to locks.
var $hide_refs = FALSE;
var $hide_acls = FALSE;
+
+ // Normally 'save_object()' is called automatically when 'execute()' is called, but
+ // sometimes we do not want this behaviour, e.g. when a tab is opened readonly.
+ // If we call save_object for a 'read-only' tab, values may get lost.
+ var $skip_save_object = FALSE;
+
+
+ /*! \brief Enables or disables to automatic call to 'save_object' for a plugin,
+ * when 'execute()' is called.
+ */
+ function enableAutoSaveObject($bool)
+ {
+ $this->skip_save_object = ($bool == FALSE);
+ }
+
function tabs(&$config, $data, $dn, $acl_category= "", $hide_refs = FALSE, $hide_acls = FALSE)
{
}
}
- // Save last tab object
- if ($this->last == $this->current){
- $this->save_object(TRUE);
- } else {
- $this->save_object(FALSE);
+ // Save last tab object
+ if(!$this->skip_save_object){
+ if ($this->last == $this->current){
+ $this->save_object(TRUE);
+ } else {
+ $this->save_object(FALSE);
+ }
}
/* If multiple edit is enabled for this tab,