Code

Fixed workgeneric to work in a generic way ;-)
authorcajus <cajus@594d385d-05f5-0310-b6e9-bd551577e9d8>
Sun, 16 Oct 2005 14:47:52 +0000 (14:47 +0000)
committercajus <cajus@594d385d-05f5-0310-b6e9-bd551577e9d8>
Sun, 16 Oct 2005 14:47:52 +0000 (14:47 +0000)
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@1574 594d385d-05f5-0310-b6e9-bd551577e9d8

TODO
contrib/gosa.conf
contrib/openldap/goto.schema
plugins/admin/systems/class_workstationGeneric.inc
plugins/admin/systems/tabs_workstation.inc

diff --git a/TODO b/TODO
index e61031a056bf76fd2114c75b29fc9d958205bea8..303c121c7160a7086c15d63d185aaaa17154ae63 100644 (file)
--- a/TODO
+++ b/TODO
@@ -31,18 +31,10 @@ Things to fix before 2.4:
   - Re-implement profile management, divlists look pretty ugly here
   - Check base64_encoding/decoding is not needed everytime.
 
-* Phone account
-  - Errors when phone account is diabled and a user is saved (?)
-
 * Add function to get GOto application templates -> filled variables, etc.
 
-* Disabling error messages doesn't work, (?) 
-
-* Saving of initially created gofon stuff fails (?)
-
 * Group Dialog : Primary group chkbox is broken, nothing is shown if it is checked.
 
-=======
 * Base is not evaluated in several dialogs -> Creating an object in a special base
   results in creation in the ldap root
 
@@ -50,10 +42,6 @@ Things to fix before 2.4:
 
 * Save FAI sub objects directly when they already exist
 
-* FAI variables are not editable during creation
-
-* FAI package lists -> why do we ask for distribution if the list is already filled?
-
 * FAI package lists behave strange
 
 
index 2c2f31ed27fb654ea72b7e6551729e4c16f94df0..a6ba28ebc2dd0681d1677b36b53947b2b98494f7 100644 (file)
 
        <termtabs>
                <tab class="termgeneric" name="Generic" />
-               <tab class="termservice" name="Devices" />
                <tab class="termstartup" name="Startup" />
+               <tab class="termservice" name="Devices" />
                <tab class="printgeneric" name="Printer" />
                <tab class="terminfo" name="Information" />
                <tab class="reference" name="References" />
index 96de90aa3c20a9fde3f4c41706de7d46875f6fdd..485a70c91ba8c990cca6423cd3194741066eede5 100644 (file)
@@ -408,15 +408,15 @@ objectclass (1.3.6.1.4.1.10098.1.2.1.18 NAME 'gotoInstallProfile' SUP top STRUCT
 objectclass (1.3.6.1.4.1.10098.1.2.1.30 NAME 'gotoWorkstation'
        DESC 'GOto - Gonicus Terminal Concept, objectclass (v2.3)' SUP top STRUCTURAL
        MUST ( cn )
-       MAY ( gotoSyslogServer $ gotoNtpServer $ gotoSwapServer $ gotoLpdServer $
+       MAY ( gotoNtpServer $ gotoSwapServer $ gotoLpdServer $
              gotoFontPath $ gotoFilesystem $ gotoFloppyEnable $ gotoCdromEnable $
-             gotoLpdEnable $ gotoScannerEnable $ gotoScannerClients $
+             gotoLpdEnable $ gotoScannerEnable $ gotoScannerClients $ l $
              gotoRootPasswd $ gotoXdmcpServer $ gotoXMethod $ gotoSndModule $
               gotoLastUser $ gotoXMonitor $ gotoXHsync $ gotoXVsync $ gotoXResolution $
               gotoXColordepth $ gotoXMouseport $ gotoXMouseButtons $ gotoMode $ gotoXKbModel $
              gotoXKbLayout $ gotoXKbVariant $ gotoXDriver $ gotoXMouseType $ macAddress $
              gotoAutoFs $ gotoModules $ gotoAdaptPath $ gotoKernelParameters $ gotoBootKernel $
-              gotoTerminalPath $ gotoLdapServer $ gotoScannerModel $ ipHostNumber $ goFonHardware ) )
+              gotoLdapServer $ gotoScannerModel $ ipHostNumber $ goFonHardware ) )
 
 # objectclass for the Terminal Conecept
 objectclass (1.3.6.1.4.1.10098.1.2.1.31 NAME 'gotoPrinter'
index 062073468667b4b0858da34b2ebe4ccfc5be636c..34b68b39e985243e14cc61af7d67dc6a27ff6840 100644 (file)
@@ -8,7 +8,7 @@ class workgeneric extends plugin
   var $cli_parameters= array("eins" => "Eins ist toll", "zwei" => "Zwei ist noch besser");
 
   /* Generic terminal attributes */
-  var $gotoMode= "disabled";
+  var $gotoMode= "locked";
   var $gotoSyslogServer= "";
   var $gotoNtpServer= "";
   var $gotoSndModule= "";
@@ -65,9 +65,9 @@ class workgeneric extends plugin
       }
     }
 
-    $this->modes["disabled"]= _("disabled");
-    $this->modes["text"]= _("text");
-    $this->modes["graphic"]= _("graphic");
+    $this->modes["active"]= _("Activated");
+    $this->modes["locked"]= _("Locked");
+    $this->modes["memcheck"]= _("Memory test");
 
     /* Set base */
     if ($this->dn == "new"){
@@ -89,42 +89,14 @@ class workgeneric extends plugin
     }
 
     if (isset($_POST['action'])){
-      switch($_POST['saction']){
-        case 'wake':
-          $cmd= search_config($this->config->data['TABS'], "terminfo", "WAKECMD");
-          if ($cmd == ""){
-            print_red(_("No WAKECMD definition found in your gosa.conf"));
-          } else {
-            exec ($cmd." ".$this->macAddress, $dummy, $retval);
-            if ($retval != 0){
-              print_red(sprintf(_("Execution of '%s' failed!"), $cmd));
-            }
-          }
-          break;
-
-        case 'reboot':
-          $cmd= search_config($this->config->data['TABS'], "terminfo", "REBOOTCMD");
-          if ($cmd == ""){
-            print_red(_("No REBOOTCMD definition found in your gosa.conf"));
-          } else {
-            exec ($cmd." ".$this->cn, $dummy, $retval);
-            if ($retval != 0){
-              print_red(sprintf(_("Execution of '%s' failed!"), $cmd));
-            }
-          }
-          break;
-
-        case 'halt':
-          $cmd= search_config($this->config->data['TABS'], "terminfo", "HALTCMD");
-          if ($cmd == ""){
-            print_red(_("No HALTCMD definition found in your gosa.conf"));
-          } else {
-            exec ($cmd." ".$this->cn, $dummy, $retval);
-            if ($retval != 0){
-              print_red(sprintf(_("Execution of '%s' failed!"), $cmd));
-            }
-          }
-          break;
+      $cmd= search_config($this->config->data['TABS'], "terminfo", "ACTIONCMD");
+      if ($cmd == ""){
+        print_red(_("No ACTIONCMD definition found in your gosa.conf"));
+      } else {
+        exec ($cmd." ".$this->macAddress." ".escapeshellarg($_POST['action']), $dummy, $retval);
+        if ($retval != 0){
+          print_red(sprintf(_("Execution of '%s' failed!"), $cmd));
+        }
       }
     }
 
@@ -148,9 +120,13 @@ class workgeneric extends plugin
 
     /* Offline */
     if ($retval == 0){
-      $smarty->assign("actions", array("halt" => _("Switch off"), "reboot" => _("Reboot")));
+      $smarty->assign("actions", array("halt" => _("Switch off"), "reboot" => _("Reboot"),
+                                       "instant_update" => _("Instant update"),
+                                       "update" => _("Scheduled update"),
+                                       "rescan" => _("Rescan hardware")));
     } else {
-      $smarty->assign("actions", array("wake" => _("Wake up")));
+      $smarty->assign("actions", array("wake" => _("Wake up"),
+                                       "update" => _("Scheduled update")));
     }
     /* Arrays */
     $smarty->assign("modes", $this->modes);
index bb5b892a8bb03beccefc975df930e8e561b15b7c..6913ac91e8ef55b15e15a01ffa4cc8cfa67add30 100644 (file)
@@ -10,7 +10,6 @@ class worktabs extends tabs
 
   function save_object($save_current= FALSE)
   {
-echo "Take care of the l attribute. It needs to be synced in case of workstations.";
     tabs::save_object($save_current);
   }