index 9748602c82f99d8a609a55369b813e25b93bf908..a10db017ce7e333a7646fac07ef060e626d5cbb6 100644 (file)
$this->dn= $dn;
$this->config= &$config;
+ if(!count($data)) {
+ $data[] = array("CLASS" => 'plugin',"NAME" => 'Error');
+ msg_dialog::display(_("Error"),
+ sprintf(_("No plugin definitions found to initialize '%s', please check your configuration file."),get_class($this)),
+ "ERROR_DIALOG");
+ }
+
$baseobject= NULL;
$this->acl_category = $acl_category;
foreach ($data as &$tab){
/*! \brief Reinitializes the tab classes with fresh ldap values.
- This maybe usefull if for example if the apply button was pressed.
+ This maybe usefull if for example the apply button was pressed.
*/
function re_init()
{
function execute()
{
+ /* Ensure that the currently selected tab is valid. */
+ if(!isset($this->by_name[$this->current])) $this->current = key($this->by_name);
+
/* Rotate current to last */
$this->last= $this->current;
$obj->dn= $this->dn;
- if ($obj->is_account || $ignore_account || $obj->ignore_account){
- if ($obj->save() == 1){
- return (1);
+ if(!$obj instanceof plugin){
+ trigger_error("Something went wrong while saving ".$obj->dn.". Object class '".get_class($obj)."'.");
+ }else{
+
+ if ($obj->is_account || $ignore_account || $obj->ignore_account){
+ if ($obj->save() == 1){
+ return (1);
+ }
+ } else {
+ $obj->remove_from_parent();
}
- } else {
- $obj->remove_from_parent();
}
}
return (0);