Code

Updated setup
authorhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Thu, 8 Feb 2007 11:37:00 +0000 (11:37 +0000)
committerhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Thu, 8 Feb 2007 11:37:00 +0000 (11:37 +0000)
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@5707 594d385d-05f5-0310-b6e9-bd551577e9d8

html/themes/default/style.css
setup/class_setupStep.inc
setup/class_setupStep3.inc
setup/class_setupStep4.inc
setup/setup_frame.tpl
setup/setup_step2.tpl
setup/setup_step3.tpl
setup/setup_step4.tpl [new file with mode: 0644]

index 6f6b88c3d6e0605d0633698e484035bad35dcd82..9a3cba5e0b5120834ccb05173334229040b03a3b 100644 (file)
@@ -788,7 +788,6 @@ body.setup_body {
        background-image: none;
        background-color: #979797;
        margin: 10px;
-       min-width:920px;
 }
 
 /* The setup complete setup dialog */
@@ -796,6 +795,10 @@ div.setup_dialog {
        background-color: #F0F0F0;
        border-right: solid 2px #444444;
        border-bottom: solid 2px #666666;
+       border-top: solid 1px #666;
+       border-left: solid 1px #666;
+       text-align: left;
+       width:980px;
 }
 
 /* Header col */
@@ -966,13 +969,13 @@ h2.step2_container_title {
 
 /* Container for name and status */
 div.step2_entry_container { 
-       width:300px; 
+       width:350px; 
        cursor:default;
 }
 
 /* Container for name and status, when status is failed */
 div.step2_entry_container_info { 
-       width:300px;
+       width:350px;
        background: #DDDDFF;
        cursor:default;
 }
@@ -1020,3 +1023,38 @@ div.step2_warning_text{
        background-repeat: no-repeat;     
        padding-left: 35px;
 }
+
+
+/*
+       Setup step 4 styles 
+*/
+
+div.step4_name {
+    vertical-align: middle;
+       float:left;
+       overflow: hidden;
+       width:200px;
+       height:2.0em;
+}
+
+div.step4_value {
+       float:left;
+       width:200px;
+       overflow: hidden;
+    vertical-align: middle;
+       height:2.0em;
+}
+
+div.step4_status {
+       text-align:right;
+    vertical-align: middle;
+       overflow: hidden;
+       height:2.0em;
+}
+
+
+div.step4_container {
+       border: solid 1px #CCC;
+       width:500px;
+       height:2.0em;
+}
index 52cfbdc79d60c6d8648f6cd5e52b597f3e836361..a873094e3de1efe73f3ff56d7ecb5d953efb4c30 100644 (file)
@@ -31,6 +31,11 @@ class setup_step extends plugin
 
   var $attributes   = array();
 
+  function save_object()
+  {
+    /* Do not call plugin::save_object. This causes acl trouble  */
+  }
+
   function get_title()
   { 
     return($this->s_title);
index 18550e454decc1a6eb2cd506715ac68d73f384fd..8147706471e5a6df9cc72d894a142e66ba903046 100644 (file)
@@ -46,8 +46,9 @@ class setup_step_3 extends setup_step
   function execute()
   {
     $smarty = get_smarty();
-    $smarty -> assign("License",$this->License);
+    $smarty -> assign("License",nl2br($this->License));
     $smarty -> assign("license_found",$this->license_found);
+    $this->is_completed = true;
     return($smarty -> fetch (get_template_path("../setup/setup_step3.tpl")));
   }
 
index 860aedb0d8a42c28d18eb4c580000a47d53f840d..720686fe8a6476d779030caea69e321219555dbf 100644 (file)
 
 class setup_step_4 extends setup_step
 {
+  var $connection = "ldap://localhost:389";
+  var $location   = "default";
+  var $admin      = "";
+  var $password   = "";
+  var $base       = "";
+  var $peopleou   = "ou=people,";
+  var $peopledn   = "cn";
+  var $groupou    = "ou=groups,";
+  var $uidbase    =  1000;
+  var $encryption = "crypt";
+  var $mail       = "kolab";
+  var $errors     = TRUE;
+
+  var $crypt_methods  = array();
+  var $mail_methods   = array();
+
+  var $attributes = array("connection","location","admin","password","base","peopleou","peopledn","groupou",
+                          "uidbase","encryption","mail","errors");
 
   function setup_step_4()
   {
+    $this->s_title      = _("Ldap settings");
+    $this->s_title_long = _("Ldap connection setup");
+    $this->s_info       = _("This dialog allows the basic configuration of GOsa's behaviour and properties in your main configuration.");
+    $tmp   = @passwordMethod::get_available_methods_if_not_loaded();
+    $this->crypt_methods   = $tmp['name'];
 
+    $tmp = $this->get_available_mail_classes();
+    $this->mail_methods = $tmp['name'];
   }
   
   function execute()
   {
-    return("plug1");
+    $smarty = get_smarty();
+  
+    foreach($this->attributes as $attr){
+      $smarty->assign($attr,$this->$attr);
+    }
+
+    $smarty->assign("peopledns",array("uid","cn"));
+    $smarty->assign("crypt_methods",$this->crypt_methods);
+    $smarty->assign("mail_methods",$this->mail_methods);
+
+    return($smarty -> fetch (get_template_path("../setup/setup_step4.tpl")));
+
   }
 
+  /* Returns the classnames auf the mail classes */
+  function get_available_mail_classes()
+  {
+    $dir = opendir( "../include");
+    $methods = array();
+    $suffix = "class_mail-methods-";
+    $lensuf = strlen($suffix);
+    $prefix = ".inc";
+    $lenpre = strlen($prefix);
+    $i = 0;
+    while (($file = readdir($dir)) !== false){
+
+      if(stristr($file,$suffix)) {
+        $lenfile = strlen($file);
+        $methods['name'][$i] = substr($file,$lensuf,($lenfile-$lensuf)-$lenpre);
+        $methods['file'][$i] = $file;
+        $methods[$i]['file'] = $file;
+        $methods[$i]['name'] = substr($file,$lensuf,($lenfile-$lensuf)-$lenpre);
+        $i++;
+      }
+    }
+    return($methods); 
+  }
 }
 
 // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
index d03c9baa38f61f119f0c9eb465054eeec5d7e0b0..5d893ab5c0de1008e1601ed3742643801bf24d72 100644 (file)
@@ -1,4 +1,5 @@
 <body class='setup_body' >
+<center>
 {$php_errors}
 <form action='setup.php' name='mainform' method='post' enctype='multipart/form-data'>
 <div class='setup_dialog'>
@@ -31,6 +32,6 @@
                </div>
        </div>
 </div>
-</form>
 </body>
+</center>
 </html>
index 6a09c2480471cca110338074c3c53f568fb1ce88..833e0fb27979210b4c2cbd83f4b0d67c87e306e5 100644 (file)
@@ -1,7 +1,7 @@
 <!-- 
        Div container with PHP module checks 
 -->
-<div style='float:left;'> 
+<div style='float:left'> 
 
        <!-- Set content styles -->     
        <div class='default' style='margin:10px;'>
index 37e5b7e83e8fd2c608de127a3c9bad5b97ce6a50..931b1877276f09a5105300a8f7033e0f06fdb9e9 100644 (file)
@@ -1,3 +1,3 @@
-<div style='background-color:red;float:left;height:350px;padding:5px;max-width:700px;overflow:auto'>
+<div style='width:740px;float:left;height:350px;padding:5px;;overflow:auto'>
 {$License}
 </div>
diff --git a/setup/setup_step4.tpl b/setup/setup_step4.tpl
new file mode 100644 (file)
index 0000000..1d4cfb8
--- /dev/null
@@ -0,0 +1,159 @@
+<h2>{t}ldap connection{/t}</h2>
+       <div class='step4_container'>
+               <div class='step4_name'>
+                       <div style='vertical-align:middle;height:100%;'>{t}Connection url{/t}</div>
+               </div>
+               <div class='step4_value'>
+                       <input type='text' name='connection' maxlength='80' size='25' value='{$connection}'>
+               </div>
+               <div class='step4_status'>
+                       sad
+               </div>
+       </div>
+
+       <div class='step4_container'>
+               <div class='step4_name'>
+                       {t}Location description{/t}
+               </div>
+               <div class='step4_value'>
+                       <input type='text' name='location' maxlength='80' size='25' value='{$location}'>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+
+       <div class='step4_container'>
+               <div class='step4_name'> 
+                       {t}Admin DN{/t}
+               </div>
+               <div class='step4_value'>
+                       <input type='text' name='admin' maxlength='80' size='40' value='{$admin}'>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+
+       <div class='step4_container'>
+               <div class='step4_name'>
+                       {t}Admin password{/t}
+               </div>
+               <div class='step4_value'>
+                       <input type='password' name='password' maxlength='20' size='20' value='{$password}'>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+               
+       <div class='step4_container'>
+               <div class='step4_name'> 
+                       {t}Base{/t}
+               </div>
+               <div class='step4_value'>
+                       <input type='text' name='base' maxlength='80' size='40' value='{$base}'>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+               
+       <div class='step4_container'>
+               <div class='step4_name'> 
+                       {t}People storage ou{/t}
+               </div>
+               <div class='step4_value'>
+                       <input type='text' name='peopleou' maxlength='40' size='20' value='{$peopleou}'>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+               
+       <div class='step4_container'>
+               <div class='step4_name'>
+                       {t}People dn attribute{/t}
+               </div>
+               <div class='step4_value'>
+                       <select size="1" name="peopledn">
+                               {html_options values=$peopledns output=$peopledns selected=$peopledn}
+                       </select>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+               
+       <div class='step4_container'>
+               <div class='step4_name'>
+                       {t}Group storage ou{/t}
+               </div>
+               <div class='step4_value'>
+                       <input type='text' name='groupou' maxlength='40' size='20' value='{$groupou}'>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+
+       <div class='step4_container'>
+               <div class='step4_name'>
+                       {t}ID base for users/groups{/t}
+               </div>
+               <div class='step4_value'>
+                       <input type='text' name='uidbase' maxlength='20' size='10' value='{$uidbase}'>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+
+       <div class='step4_container'>
+               <div class='step4_name'>
+                       {t}Encryption algorithm{/t}
+               </div>
+               <div class='step4_value'>
+                       <select name="encryption" size="1" title="">
+                               {html_options options=$crypt_methods selected=$encryption}
+                       </select>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+
+       <div class='step4_container'>
+               <div class='step4_name'>
+                       {t}Mail method{/t}
+               </div>
+               <div class='step4_value'>
+                       <select name="mail" size="1" title="">
+                               <option name="mail" value="disabled">{t}disabled{/t}</option>
+                               {html_options options=$mail_methods selected=$mail}
+                       </select>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+
+       <div class='step4_container'>
+               <div class='step4_name'>
+                       {t}Display PHP errors{/t}
+               </div>
+               <div class='step4_value'>
+                       <select name="errorlvl" size="1" title="">
+                               <option value="true">{t}true{/t}</option>
+                               <option value="false">{t}false{/t}</option>
+                       </select>
+               </div>
+               <div class='step4_status'>
+                       asd
+               </div>
+       </div>
+<!--
+                {t}GOsa supports several encryption types for your passwords. Normally this is adjustable via user templates, but you can specify a default method to be used here, too.{/t}
+                {t}GOsa always acts as admin and manages access rights internally. This is a workaround till OpenLDAP's in directory ACI's are fully implemented. For this to work, we need the admin DN and the corresponding password.{/t}
+                {t}Some basic LDAP parameters are tunable and affect the locations where GOsa saves people and groups, including the way accounts get created. Check the values below if the fit your needs.{/t}
+                {t}GOsa has modular support for several mail methods. These methods provide interfaces to users mailboxes and general handling for quotas. You can choose the dummy plugin to leave all your mail settings untouched.{/t}-->