diff --git a/plugins/admin/applications/class_applicationGeneric.inc b/plugins/admin/applications/class_applicationGeneric.inc
index e20dcc26ed4641c3327c0d21f90a0ece193b5555..967eaaf634992091264694944290d529e0881e14 100644 (file)
return ($display);
}
+ $_SESSION['binary'] = $this->gotoLogonScript;
+ $_SESSION['binarytype'] = "octet-stream";
+ $_SESSION['binaryfile'] = $this->cn.".gosaApplication";
+ $smarty->assign("rand", rand(0, 10000));
$head = $this->generateTemplate();
$this->gotoLogonScript= $this->generateTemplate().preg_replace('/.*### END HEADER ###/s', '', $this->gotoLogonScript);
$smarty->assign("namemode", "readonly");
$smarty->assign("selectmode", "disabled");
}
+
+ /* Base select dialog */
+ $once = true;
+ foreach($_POST as $name => $value){
+ if(preg_match("/^chooseBase/",$name) && $once){
+ $once = false;
+ $this->dialog = new baseSelectDialog($this->config,$this);
+ $this->dialog->setCurrentBase($this->base);
+ }
+ }
+
+ /* Dialog handling */
+ if(is_object($this->dialog)){
+ /* Must be called before save_object */
+ $this->dialog->save_object();
+
+ if($this->dialog->isClosed()){
+ $this->dialog = false;
+ }elseif($this->dialog->isSelected()){
+ $this->base = $this->dialog->isSelected();
+ $this->dialog= false;
+ }else{
+ return($this->dialog->execute());
+ }
+ }
/* Get random number for pictures */
srand((double)microtime()*1000000);
$smarty->assign($val, $this->$val);
$smarty->assign($val."ACL", chkacl($this->acl, $val));
}
+ $smarty->assign("baseACL", chkacl($this->acl,"base"));
/* Checkboxes */
foreach (array("G" => "exec_for_groupmembers", "O" => "overwrite_config",
{
$ldap= $this->config->get_ldap_link();
$ldap->rmDir($this->dn);
- show_ldap_error($ldap->get_error(), _("Removing application failed"));
+ show_ldap_error($ldap->get_error(), sprintf(_("Removing of application with dn '%s' failed."),$this->dn));
/* Optionally execute a command after we're done */
$this->handle_post_events("remove");
$ldap->add($this->attrs);
$this->handle_post_events("add");
}
- show_ldap_error($ldap->get_error(), _("Saving application failed"));
+ show_ldap_error($ldap->get_error(), sprintf(_("Saving of application with dn '%s' failed."),$this->dn));
}
function set_picture($filename)
$this->cn = $_POST['cn'];
}
}
+
+
+ /* Return plugin informations for acl handling
+ #FIXME FAIscript seams to ununsed within this class... */
+ function plInfo()
+ {
+ return (array(
+ "plShortName" => _("Generic"),
+ "plDescription" => _("Application generic"),
+ "plSelfModify" => FALSE,
+ "plDepends" => array(),
+ "plPriority" => 0,
+ "plSection" => array("administration"),
+ "plCategory" => array("application" => array("description" => _("Application"),
+ "objectClass" => "gosaApplication")),
+ "plProvidedAcls"=> array(
+ "cn" => _("Name"),
+ "description" => _("Description"),
+ "gosaApplicationExecute" => _("Execute"),
+ "gosaApplicationName" => _("Name"),
+ "gosaApplicationIcon" => _("Icon"),
+ "gosaApplicationFlags" => _("Flag"),
+ "gotoLogonScript" => _("Script content"),
+ "gosaApplicationParameter"=> _("Application parameter"),
+
+ "exec_for_groupmembers" => _("Only executable for members"), // G
+ "place_on_desktop" => _("Place icon on members desktop"), // D
+ "place_on_kicker" => _("Place entry in members launch bar"), // L
+ "place_in_startmenu" => _("Place entry in members startmenu"), // M
+ "overwrite_config" => _("Replace user configuration on startup")) // O
+ ));
+ }
}
// vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
?>