diff --git a/include/class_tabs.inc b/include/class_tabs.inc
index 864c7e87c3ccfdd59ab50cc18e88f6c9ef6733d0..ba24d9530e8f047d06ba1633cd55b7ab1dc1322f 100644 (file)
--- a/include/class_tabs.inc
+++ b/include/class_tabs.inc
$obj= $this->by_object[$this->current];
$display.= $obj->execute();
- $this->by_object[$this->current]= $obj;
+ if (is_php4()){
+ $this->by_object[$this->current]= $obj;
+ }
/* Footer for tabbed dialog */
$display.= "</td></tr></table>";
$obj= $this->by_object[$this->last];
$obj->save_object ();
- $this->by_object[$this->last]= $obj;
+ if (is_php4()){
+ $this->by_object[$this->last]= $obj;
+ }
}
/* Skip if curent and last are the same object */
$this->current, "Saving (current)");
$obj->save_object ();
- $this->by_object[$this->current]= $obj;
+ if (is_php4()){
+ $this->by_object[$this->current]= $obj;
+ }
}
}
}
/* Paint tab */
- $display.= "<td style=\"vertical-align:bottom;width:1px;\">";
+ $display.= "<td style=\"vertical-align:bottom;width:1px;white-space:nowrap;\">";
/* Shorten string if its too long for the tab headers*/
$title= _($name);
if (mb_strlen($title, 'UTF-8') > 14){
$title= mb_substr($title,0, 12, 'UTF-8')."...";
}
+
+ $title= preg_replace("/ /", " ", $title);
+ /* Take care about notifications */
+ if ($this->by_object[$class]->pl_notify){
+ $notify= "id=\"notify\"";
+ } else {
+ $notify= "";
+ }
if ($_SESSION['js']==FALSE){
- $display.= "<div class=\"$style[$index]\"><input type=\"submit\" name=\"$class\"".
+ $display.= "<div class=\"$style[$index]\" $notify><input type=\"submit\" name=\"$class\"".
" class=\"$style[$index]\" value=\"$title\"";
} else {
- $display.= "<div class=\"$style[$index]\"><a class=\"$style[$index]\" onclick=\"return true;\" href=\"javascript:document.mainform.arg.value='$class';document.mainform.submit();\">$title</a";
+ $display.= "<div $notify class=\"$style[$index]\"><a class=\"$style[$index]\" onclick=\"return true;\" href=\"javascript:document.mainform.arg.value='$class';document.mainform.submit();\">$title</a";
}
$display.= "></div></td>";
}
function set_acl($acl)
{
- /* Set local acl */
- $this->acl= $acl;
-
- /* Setup for all plugins */
- foreach ($this->by_object as $key => $obj){
- $sacl= get_module_permission($acl, "$key", $this->dn);
- $obj->acl= $sacl;
- $this->by_object[$key]= $obj;
- }
+ /* Set local acl */
+ $this->acl= $acl;
+
+ /* Setup for all plugins */
+ foreach ($this->by_object as $key => $obj){
+ $sacl= get_module_permission($acl, "$key", $this->dn);
+ $obj->acl= $sacl;
+ if (is_php4()){
+ $this->by_object[$key]= $obj;
+ }
+ }
}
function delete()
{
- /* Check if all plugins will ACK for deletion */
- foreach (array_reverse($this->by_object) as $key => $obj){
- $reason= $obj->allow_remove();
- if ($reason != ""){
- print_red(sprintf(_("Delete process has been canceled by plugin '%s': %s"), $key, $reason));
- return;
- }
- }
-
- /* Delete for all plugins */
- foreach (array_reverse($this->by_object) as $key => $obj){
- $obj->remove_from_parent();
- }
+ /* Check if all plugins will ACK for deletion */
+ foreach (array_reverse($this->by_object) as $key => $obj){
+ $reason= $obj->allow_remove();
+ if ($reason != ""){
+ print_red(sprintf(_("Delete process has been canceled by plugin '%s': %s"), $key, $reason));
+ return;
+ }
+ }
+
+ /* Delete for all plugins */
+ foreach (array_reverse($this->by_object) as $key => $obj){
+ $obj->remove_from_parent();
+ }
}
function password_change_needed()
{
- /* Ask all plugins for needed password changes */
- foreach ($this->by_object as $key => $obj){
- if ($obj->password_change_needed()){
- return TRUE;
- }
- }
-
- return FALSE;
+ /* Ask all plugins for needed password changes */
+ foreach ($this->by_object as $key => $obj){
+ if ($obj->password_change_needed()){
+ return TRUE;
+ }
+ }
+
+ return FALSE;
}
function check($ignore_account= FALSE)
$this->save_object(TRUE);
$messages= array();
+ $current_set = FALSE;
+
/* Check all plugins */
foreach ($this->by_object as $key => $obj){
if ($obj->is_account || $ignore_account || $obj->ignore_account){
@DEBUG (DEBUG_TRACE, __LINE__, __FUNCTION__, __FILE__,
$key, "Checking");
- $messages= $obj->check();
- if (count($messages)){
- $this->current= $key;
- break;
- }
- }
+ $msg= $obj->check();
+ if (is_php4()){
+ $this->by_object[$key]= $obj;
+ }
+ if (count($msg)){
+ $this->by_object[$key]->pl_notify= TRUE;
+ if(!$current_set){
+ $current_set = TRUE;
+ $this->current= $key;
+ $messages = $msg;
+ }
+ }else{
+ $this->by_object[$key]->pl_notify= FALSE;
+ }
+ }else{
+ $this->by_object[$key]->pl_notify= FALSE;
+ }
}
return ($messages);
$key, "Adapting");
$obj->parent= &$this;
$obj->adapt_from_template($dn);
- $this->by_object[$key]= $obj;
+ if (is_php4()){
+ $this->by_object[$key]= $obj;
+ }
}
}
*/
function getCopyDialog()
{
- $ret = "";
- $this->SubDialog = false;
- foreach ($this->by_object as $key => $obj){
- if($obj->is_account){
- $tmp = $this->by_object[$key]->getCopyDialog();
- if($tmp['status'] == "SubDialog"){
- $this->SubDialog = true;
- return($tmp['string']);
- }else{
- $ret .= $tmp['string'];
- }
- }
- }
- return($ret);
+ $ret = "";
+ $this->SubDialog = false;
+ foreach ($this->by_object as $key => $obj){
+ if($obj->is_account){
+ $tmp = $this->by_object[$key]->getCopyDialog();
+ if($tmp['status'] == "SubDialog"){
+ $this->SubDialog = true;
+ return($tmp['string']);
+ }else{
+ if(!empty($tmp['string'])){
+ $ret .= $tmp['string'];
+ $ret .= "<p class='seperator'> </p>";
+ }
+ }
+ }
+ }
+ return($ret);
}
-
}
+// vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
?>