Merge branch '2013.10' into 2014.11
[tine20] / tine20 / Setup / Server / Cli.php
index 0747ac7..0ffb4e1 100644 (file)
 class Setup_Server_Cli implements Tinebase_Server_Interface
 {
     /**
-     * handler for command line scripts
-     * 
-     * @return boolean
+     * (non-PHPdoc)
+     * @see Tinebase_Server_Interface::handle()
      */
-    public function handle()
+    public function handle(\Zend\Http\Request $request = null, $body = null)
     {
         try {
             $opts = new Zend_Console_Getopt(
@@ -49,11 +48,20 @@ class Setup_Server_Cli implements Tinebase_Server_Interface
                     'dbmailldap'            => 'Only usable with sync_accounts_from_ldap. Fetches dbmail email user data from LDAP.',
                     'onlyusers'             => 'Only usable with sync_accounts_from_ldap. Fetches only users and no groups from LDAP.',
                     'syncdeletedusers'      => 'Only usable with sync_accounts_from_ldap. Removes users from Tine 2.0 DB that no longer exist in LDAP',
-                    'syncontactphoto'      => 'Only usable with sync_accounts_from_ldap. Always syncs contact photo from ldap',
+                    'syncaccountstatus'     => 'Only usable with sync_accounts_from_ldap. Synchronizes current account status from LDAP',
+                    'syncontactphoto'       => 'Only usable with sync_accounts_from_ldap. Always syncs contact photo from ldap',
                 'sync_passwords_from_ldap'  => 'Synchronize user passwords from ldap',
                 'egw14import'               => 'Import user and groups from egw14
                          Examples: 
-                          setup.php --egw14import /path/to/config.ini'
+                          setup.php --egw14import /path/to/config.ini',
+                'reset_demodata'            => 'reinstall applications and install Demodata (Needs Admin user)',
+                'updateAllImportExportDefinitions' => 'update ImportExport definitions for all applications',
+                'backup'                    => 'backup config and data
+                         Examples:
+                           setup.php --backup -- config=1 db=1 files=1 backupDir=/backup/tine20 noTimestamp=1',
+                'restore'                   => 'restore config and data
+                         Examples:
+                           setup.php --restore -- config=1 db=1 files=1 backupDir=/backup/tine20',
             ));
             $opts->parse();
         } catch (Zend_Console_Getopt_Exception $e) {
@@ -71,9 +79,13 @@ class Setup_Server_Cli implements Tinebase_Server_Interface
             empty($opts->sync_passwords_from_ldap) && 
             empty($opts->egw14import) && 
             empty($opts->check_requirements) && 
+            empty($opts->reset_demodata) &&
+            empty($opts->updateAllImportExportDefinitions) &&
             empty($opts->create_admin) && 
             empty($opts->setconfig) && 
-            empty($opts->getconfig))) 
+            empty($opts->backup) &&
+            empty($opts->restore) &&
+            empty($opts->getconfig)))
         {
             echo $opts->getUsageMessage();
             exit;