X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=gosa-core%2Finclude%2Fclass_releaseSelector.inc;h=28f86dec83beca007ac4f5ce1d5b597a5b23b4c8;hb=97e6d0bf7e5e1d7dae5da23e32fa5253ac13f1a8;hp=dc98422c4ae11b0b9fb78a850dbdc8bf1d8213ed;hpb=9ede1204f7efd7b44755c39c244bc98ba356bec2;p=gosa.git diff --git a/gosa-core/include/class_releaseSelector.inc b/gosa-core/include/class_releaseSelector.inc index dc98422c4..28f86dec8 100644 --- a/gosa-core/include/class_releaseSelector.inc +++ b/gosa-core/include/class_releaseSelector.inc @@ -40,7 +40,6 @@ class releaseSelector { // Transfer data $this->releaseBase = $releaseBase; - $this->releaseInfo = $bases; $this->setBases($bases); $this->setBase($base); } @@ -60,8 +59,8 @@ class releaseSelector { function setBase($base) { + $this->base= $base; if (isset($this->pathMapping[$base])) { - $this->base= $base; $this->update(true); } } @@ -82,7 +81,7 @@ class releaseSelector { function setBases($bases) { global $config; - + $this->releaseInfo = array(); $this->pathMapping= array(); $selected= $this->base == $this->releaseBase?"Selected":""; $first= true; @@ -94,10 +93,14 @@ class releaseSelector { $elements= explode(',', substr($base, 0, strlen($base) - strlen($this->releaseBase))); $elements= array_reverse($elements, true); $this->pathMapping[$base]= $base == $this->releaseBase? '/' : ldap::fix(preg_replace('/(^|,)[a-z0-9]+=/i', '/', implode(',', $elements))); + + $this->releaseInfo[$base]['name'] = ldap::fix(preg_replace('/(^|,)[a-z0-9]+=/i', '', $elements[0])); + $this->releaseInfo[$base]['description'] = $dummy; } // Save bases to session for autocompletion session::global_set('pathMapping', $this->pathMapping); + session::global_set('department_info', $this->releaseInfo); } @@ -123,7 +126,7 @@ class releaseSelector { if (isset($_POST['bs_input_'.$this->pid])) { // Take over input field base - if ($this->submitButton && isset($_POST['submit_base_'.$this->pid.'_x']) || !$this->submitButton) { + if ($this->submitButton && isset($_POST['submit_base_'.$this->pid]) || !$this->submitButton) { // Check if base is available $this->lastState= false; @@ -142,15 +145,38 @@ class releaseSelector { /* Skip if there's no change */ if (($this->tree && $this->base == $last_base) && !$force) { - return true; + return true; } - $link= "onclick=\"\$('bs_rebase_".$this->pid."').value='".base64_encode($this->releaseBase)."'; $('submit_tree_base_".$this->pid."').click();\""; - $this->tree= "pid."').hide()\" onfocus=\"\$('bs_".$this->pid."').hide()\" onmouseover=\"Element.clonePosition(\$('bs_".$this->pid."'), 'bs_input_".$this->pid."', {setHeight: false, setWidth: false, offsetTop:(Element.getHeight('bs_input_".$this->pid."'))});\$('bs_".$this->pid."').show();\" onmouseout=\"rtimer= Element.hide.delay(0.25, 'bs_".$this->pid."')\" value=\"".preg_replace('/"/', '"',$this->pathMapping[$this->base])."\">"; + $link= "onclick=\"\$('bs_rebase_".$this->pid."').value='".base64_encode($this->releaseBase)."'; + $('submit_tree_base_".$this->pid."').click();\""; + + $this->tree= "pid}').hide(); \" + onfocus=\" \$('bs_{$this->pid}').hide(); \" + onmouseover=\" mouseIsStillOver = true; + function showIt() + { + if(mouseIsStillOver){ + \$('bs_".$this->pid."').show(); + } + }; + Element.clonePosition(\$('bs_".$this->pid."'), + 'bs_input_".$this->pid."', + {setHeight: false, setWidth: false, offsetTop:(Element.getHeight('bs_input_".$this->pid."'))}); + rtimer=showIt.delay(0.25); \" + + onmouseout=\" mouseIsStillOver=false; + rtimer=Element.hide.delay(0.25,'bs_".$this->pid."')\" + + value=\"".preg_replace('/"/','"',$this->pathMapping[$this->base])."\">"; // Autocompleter $this->tree.= "
". "