Stabilizing featureset. User mod form now at least renders correctly. Still need...
authorBen Klang <ben@alkaloid.net>
Fri, 27 Jan 2006 06:21:14 +0000 (06:21 +0000)
committerBen Klang <ben@alkaloid.net>
Fri, 27 Jan 2006 06:21:14 +0000 (06:21 +0000)
git-svn-id: https://svn.alkaloid.net/gpl/shout/trunk@267 06cd67b6-e706-0410-b29e-9de616bca6e9

TODO [new file with mode: 0644]
andrew.session
andrew.webprj
lib/User.php
usermgr.php
usermgr/edit.php

diff --git a/TODO b/TODO
new file mode 100644 (file)
index 0000000..c53e828
--- /dev/null
+++ b/TODO
@@ -0,0 +1 @@
+* Convert forms to Beatnik style associative arrays. 2006-01-26 bklang
index 263f3d9..20026bd 100644 (file)
       </profile>
       <profile remote_host="dev04.alkaloid.net" remote_port="22" remote_path="/srv/vhost/sites/shout.dev04.alkaloid.net/shout" remote_protocol="sftp" user="bklang" name="Shout Dev" >
         <uploadeditem upload_time="0" url="config/" />
-        <uploadeditem upload_time="1138313705" url="config/conf.xml" />
-        <uploadeditem upload_time="1138316043" url="config/defines.php.dist" />
-        <uploadeditem upload_time="1138315048" url="dialplan.php" />
+        <uploadeditem upload_time="1138318762" url="config/conf.xml" />
+        <uploadeditem upload_time="1138318762" url="config/defines.php.dist" />
+        <uploadeditem upload_time="1138318762" url="dialplan.php" />
         <uploadeditem upload_time="0" url="dialplan/" />
-        <uploadeditem upload_time="1134075506" url="dialplan/edit.php" />
-        <uploadeditem upload_time="1138315961" url="index.php" />
+        <uploadeditem upload_time="1134254291" url="dialplan/edit.php" />
+        <uploadeditem upload_time="1138318762" url="index.php" />
         <uploadeditem upload_time="0" url="lib/" />
-        <uploadeditem upload_time="1134075506" url="lib/Dialplan.php" />
-        <uploadeditem upload_time="1138316130" url="lib/Driver.php" />
+        <uploadeditem upload_time="1134254292" url="lib/Dialplan.php" />
+        <uploadeditem upload_time="1138318762" url="lib/Driver.php" />
         <uploadeditem upload_time="0" url="lib/Driver/" />
-        <uploadeditem upload_time="1138318043" url="lib/Driver/ldap.php" />
-        <uploadeditem upload_time="1138316386" url="lib/Shout.php" />
-        <uploadeditem upload_time="1134075507" url="lib/System.php" />
-        <uploadeditem upload_time="1134350019" url="lib/User.php" />
-        <uploadeditem upload_time="1138317614" url="lib/api.php" />
-        <uploadeditem upload_time="1134367769" url="lib/base.php" />
+        <uploadeditem upload_time="1138318762" url="lib/Driver/ldap.php" />
+        <uploadeditem upload_time="1138318762" url="lib/Shout.php" />
+        <uploadeditem upload_time="1134254292" url="lib/System.php" />
+        <uploadeditem upload_time="1138336033" url="lib/User.php" />
+        <uploadeditem upload_time="1138318762" url="lib/api.php" />
+        <uploadeditem upload_time="1134367898" url="lib/base.php" />
         <uploadeditem upload_time="1134075507" url="lib/defines.php" />
-        <uploadeditem upload_time="1137381911" url="lib/version.php" />
+        <uploadeditem upload_time="1137381879" url="lib/version.php" />
         <uploadeditem upload_time="0" url="main/" />
         <uploadeditem upload_time="1134254292" url="main/dialplan.php" />
         <uploadeditem upload_time="1134254291" url="main/moh.php" />
-        <uploadeditem upload_time="1134075507" url="main/system.php" />
+        <uploadeditem upload_time="1134254292" url="main/system.php" />
         <uploadeditem upload_time="1134254291" url="main/users.php" />
-        <uploadeditem upload_time="1138315048" url="moh.php" />
-        <uploadeditem upload_time="1138315048" url="security.php" />
+        <uploadeditem upload_time="1138318762" url="moh.php" />
+        <uploadeditem upload_time="1138318762" url="security.php" />
         <uploadeditem upload_time="0" url="templates/" />
-        <uploadeditem upload_time="1138311990" url="templates/common-header.inc" />
-        <uploadeditem upload_time="1134075418" url="templates/content_page" />
+        <uploadeditem upload_time="1138318762" url="templates/common-header.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/content_page" />
         <uploadeditem upload_time="0" url="templates/context/" />
-        <uploadeditem upload_time="1134075418" url="templates/context/contextline.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/context/contextline.inc" />
         <uploadeditem upload_time="0" url="templates/dialplan/" />
         <uploadeditem upload_time="1131723538" url="templates/dialplan/contexttree.inc" />
-        <uploadeditem upload_time="1134075418" url="templates/dialplan/dialplanlist.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/dialplan/dialplanlist.inc" />
         <uploadeditem upload_time="1131767776" url="templates/dialplan/extensiondetail.inc" />
-        <uploadeditem upload_time="1134075418" url="templates/dialplan/manager.inc" />
-        <uploadeditem upload_time="1134075418" url="templates/dialplan/priority-form-begin.inc" />
-        <uploadeditem upload_time="1134075418" url="templates/dialplan/priority-form-end.inc" />
-        <uploadeditem upload_time="1134075418" url="templates/dialplan/priority-form-line.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/dialplan/manager.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/dialplan/priority-form-begin.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/dialplan/priority-form-end.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/dialplan/priority-form-line.inc" />
         <uploadeditem upload_time="0" url="templates/javascript/" />
-        <uploadeditem upload_time="1134075507" url="templates/javascript/dialplan.js" />
-        <uploadeditem upload_time="1134075418" url="templates/menu.inc" />
-        <uploadeditem upload_time="1134075418" url="templates/table-limiter-begin.inc" />
-        <uploadeditem upload_time="1134075418" url="templates/table-limiter-end.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/javascript/dialplan.js" />
+        <uploadeditem upload_time="1134254292" url="templates/menu.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/table-limiter-begin.inc" />
+        <uploadeditem upload_time="1134254292" url="templates/table-limiter-end.inc" />
         <uploadeditem upload_time="0" url="templates/users/" />
-        <uploadeditem upload_time="1138316597" url="templates/users/userlist.inc" />
+        <uploadeditem upload_time="1138318762" url="templates/users/userlist.inc" />
         <uploadeditem upload_time="0" url="themes/" />
         <uploadeditem upload_time="0" url="themes/graphics/" />
-        <uploadeditem upload_time="1134075418" url="themes/graphics/add-extension.gif" />
-        <uploadeditem upload_time="1134075418" url="themes/graphics/add-user.gif" />
-        <uploadeditem upload_time="1134075418" url="themes/screen.css" />
-        <uploadeditem upload_time="1138318295" url="usermgr.php" />
+        <uploadeditem upload_time="1134254292" url="themes/graphics/add-extension.gif" />
+        <uploadeditem upload_time="1134254292" url="themes/graphics/add-user.gif" />
+        <uploadeditem upload_time="1134254292" url="themes/screen.css" />
+        <uploadeditem upload_time="1138334633" url="usermgr.php" />
         <uploadeditem upload_time="0" url="usermgr/" />
-        <uploadeditem upload_time="1138317269" url="usermgr/delete.php" />
-        <uploadeditem upload_time="1138317269" url="usermgr/edit.php" />
-        <uploadeditem upload_time="1138317269" url="usermgr/list.php" />
-        <uploadeditem upload_time="1138317269" url="usermgr/save.php" />
+        <uploadeditem upload_time="1138317244" url="usermgr/delete.php" />
+        <uploadeditem upload_time="1138340155" url="usermgr/edit.php" />
+        <uploadeditem upload_time="1138317244" url="usermgr/list.php" />
+        <uploadeditem upload_time="1138317244" url="usermgr/save.php" />
         <uploadeditem upload_time="1134254292" url="users.php" />
         <uploadeditem upload_time="0" url="users/" />
         <uploadeditem upload_time="1138311486" url="users/add.php" />
index d31d03d..67f531a 100644 (file)
@@ -1,45 +1,45 @@
 <!DOCTYPE webproject>
 <webproject>
-  <project usePreviewPrefix="0" previewPrefix="" type="Local" usePersistentBookmarks="0" name="Shout" encoding="iso 8859-1" enableEvents="true" >
+  <project usePreviewPrefix="0" type="Local" previewPrefix="" usePersistentBookmarks="0" name="Shout" encoding="iso 8859-1" enableEvents="true" >
     <upload/>
     <defaultDTD>-//w3c//dtd xhtml 1.0 strict//en</defaultDTD>
     <item url="config/" uploadstatus="1" />
-    <item modified_time="1138313705" url="config/conf.xml" uploadstatus="1" />
+    <item modified_time="1138318762" url="config/conf.xml" uploadstatus="1" />
     <item url="dialplan/" uploadstatus="1" />
-    <item modified_time="1134075506" url="dialplan/edit.php" uploadstatus="1" />
+    <item modified_time="1134254291" url="dialplan/edit.php" uploadstatus="1" />
     <item url="lib/" uploadstatus="1" />
     <item url="lib/Driver/" uploadstatus="1" />
-    <item modified_time="1138318043" url="lib/Driver/ldap.php" uploadstatus="1" />
-    <item modified_time="1134367769" url="lib/base.php" uploadstatus="1" />
-    <item modified_time="1134075506" url="lib/Dialplan.php" uploadstatus="1" />
-    <item modified_time="1138316130" url="lib/Driver.php" uploadstatus="1" />
-    <item modified_time="1138316386" url="lib/Shout.php" uploadstatus="1" />
-    <item modified_time="1134075507" url="lib/System.php" uploadstatus="1" />
-    <item modified_time="1134350019" url="lib/User.php" uploadstatus="1" />
+    <item modified_time="1138318762" url="lib/Driver/ldap.php" uploadstatus="1" />
+    <item modified_time="1134367898" url="lib/base.php" uploadstatus="1" />
+    <item modified_time="1134254292" url="lib/Dialplan.php" uploadstatus="1" />
+    <item modified_time="1138318762" url="lib/Driver.php" uploadstatus="1" />
+    <item modified_time="1138318762" url="lib/Shout.php" uploadstatus="1" />
+    <item modified_time="1134254292" url="lib/System.php" uploadstatus="1" />
+    <item modified_time="1138336033" url="lib/User.php" uploadstatus="1" />
     <item url="main/" uploadstatus="1" />
-    <item modified_time="1134075507" url="main/system.php" uploadstatus="1" />
+    <item modified_time="1134254292" url="main/system.php" uploadstatus="1" />
     <item url="templates/" uploadstatus="1" />
     <item url="templates/context/" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/context/contextline.inc" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/context/contextline.inc" uploadstatus="1" />
     <item url="templates/dialplan/" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/dialplan/dialplanlist.inc" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/dialplan/priority-form-begin.inc" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/dialplan/priority-form-end.inc" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/dialplan/priority-form-line.inc" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/dialplan/dialplanlist.inc" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/dialplan/priority-form-begin.inc" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/dialplan/priority-form-end.inc" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/dialplan/priority-form-line.inc" uploadstatus="1" />
     <item url="templates/users/" uploadstatus="1" />
-    <item modified_time="1138316597" url="templates/users/userlist.inc" uploadstatus="1" />
-    <item modified_time="1138311990" url="templates/common-header.inc" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/content_page" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/menu.inc" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/table-limiter-begin.inc" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/table-limiter-end.inc" uploadstatus="1" />
+    <item modified_time="1138318762" url="templates/users/userlist.inc" uploadstatus="1" />
+    <item modified_time="1138318762" url="templates/common-header.inc" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/content_page" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/menu.inc" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/table-limiter-begin.inc" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/table-limiter-end.inc" uploadstatus="1" />
     <item url="themes/" uploadstatus="1" />
     <item url="themes/graphics/" uploadstatus="1" />
-    <item modified_time="1134075418" url="themes/graphics/add-extension.gif" uploadstatus="1" />
-    <item modified_time="1134075418" url="themes/graphics/add-user.gif" uploadstatus="1" />
-    <item modified_time="1134075418" url="themes/screen.css" uploadstatus="1" />
-    <item modified_time="1138315048" url="dialplan.php" uploadstatus="1" />
-    <item modified_time="1138315961" url="index.php" uploadstatus="1" />
+    <item modified_time="1134254292" url="themes/graphics/add-extension.gif" uploadstatus="1" />
+    <item modified_time="1134254292" url="themes/graphics/add-user.gif" uploadstatus="1" />
+    <item modified_time="1134254292" url="themes/screen.css" uploadstatus="1" />
+    <item modified_time="1138318762" url="dialplan.php" uploadstatus="1" />
+    <item modified_time="1138318762" url="index.php" uploadstatus="1" />
     <item url="" uploadstatus="1" />
     <uploadprofiles showtreeviews="true" defaultProfile="Shout" >
       <profile remote_host="" remote_port="" remote_path="" remote_protocol="ftp" user="" name="@" />
     </uploadprofiles>
     <templates>templates/</templates>
     <toolbars>toolbars/</toolbars>
-    <item modified_time="1138317614" url="lib/api.php" uploadstatus="1" />
-    <item modified_time="1134075507" url="lib/defines.php" uploadstatus="1" />
-    <item modified_time="1138315048" url="security.php" uploadstatus="1" />
+    <item modified_time="1138318762" url="lib/api.php" uploadstatus="1" />
+    <item modified_time="1138318762" url="security.php" uploadstatus="1" />
     <item url="templates/javascript/" uploadstatus="1" />
-    <item modified_time="1134075507" url="templates/javascript/dialplan.js" uploadstatus="1" />
-    <item modified_time="1134075418" url="templates/dialplan/manager.inc" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/javascript/dialplan.js" uploadstatus="1" />
+    <item modified_time="1134254292" url="templates/dialplan/manager.inc" uploadstatus="1" />
     <treestatus>
       <openfolder url="lib" />
       <openfolder url="lib/Driver" />
       <mailinglist address="" />
     </teamdata>
     <events/>
-    <item modified_time="1137381911" url="lib/version.php" uploadstatus="1" />
-    <item modified_time="1138315048" url="moh.php" uploadstatus="1" />
-    <item modified_time="1138318295" url="usermgr.php" uploadstatus="1" />
-    <item modified_time="1138316043" url="config/defines.php.dist" />
-    <item url="usermgr/" />
-    <item modified_time="1138317269" url="usermgr/edit.php" />
-    <item modified_time="1138317269" url="usermgr/list.php" />
-    <item modified_time="1138317269" url="usermgr/save.php" />
-    <item modified_time="1138317269" url="usermgr/delete.php" />
+    <item modified_time="1137381879" url="lib/version.php" uploadstatus="1" />
+    <item modified_time="1138318762" url="moh.php" uploadstatus="1" />
+    <item modified_time="1138334633" url="usermgr.php" uploadstatus="1" />
+    <item modified_time="1138318762" url="config/defines.php.dist" uploadstatus="1" />
+    <item url="usermgr/" uploadstatus="1" />
+    <item modified_time="1138340155" url="usermgr/edit.php" uploadstatus="1" />
+    <item modified_time="1138317244" url="usermgr/list.php" uploadstatus="1" />
+    <item modified_time="1138317244" url="usermgr/save.php" uploadstatus="1" />
+    <item modified_time="1138317244" url="usermgr/delete.php" uploadstatus="1" />
   </project>
 </webproject>
index 55d3f2e..3085ae3 100644 (file)
@@ -60,13 +60,15 @@ class UserDetailsForm extends Horde_Form {
         $this->addVariable(_("Explicit Call Acceptance"), 'eca',
             'boolean', true, false);#, _("When checked, the called user will be required to press 1 to accept the call.  Only turn this off if you really know what you're doing!"));
         $this->addVariable(_("Call Appearance"), 'callappearance',
-            'radio', true, false, null, array('values' =>
+            'radio', $vars->get('eca'), false, null, array('values' =>
                 array('caller' => 'From Calling Party',
                     'self' => 'From Self',
-                    'v-office' => 'From V-Office',
+                    'switch' => 'From V-Office',
                 )
             )
         );
+
+        return true;
     }
 
     // {{{ fillUserForm method
@@ -95,35 +97,42 @@ class UserDetailsForm extends Horde_Form {
             $i++;
         }
 
-        if (in_array('m', $userdetails['dialopts'])) {
-            $vars->set('moh', true);
-        } else {
-            $vars->set('moh', false);
-        }
+        $vars->set('moh', false);
+        $vars->set('eca', false);
+        $vars->set('transfer', false);
+        $vars->set('callappearance', 'caller');
 
-        if (in_array('t', $userdetails['dialopts'])) {
-            $vars->set('transfer', true);
-        } else {
-            $vars->set('transfer', false);
-        }
 
-        if (in_array('e', $userdetails['dialopts'])) {
-            $vars->set('eca', true);
-        } else {
-            $vars->set('eca', false);
-        }
+        foreach ($userdetails['dialopts'] as $opt) {
+            if ($opt == 'm') {
+                $vars->set('moh', true);
+            }
+            if ($opt == 't') {
+                $vars->set('transfer', true);
+            }
+            if (preg_match('/^e(\(.*\))*/', $opt, $matches)) {
+                # This matches 'e' and 'e(ARGS)'
+                $vars->set('eca', true);
+                if (count($matches) > 1) {
+                    # We must have found an argument
+                    switch($matches[1]) {
+                    case '(${VOFFICENUM})':
+                        $vars->set('callappearance', 'switch');
+                        break;
 
-        if (in_array('e(${VOFFICENUM})', $userdetails['dialopts'])) {
-            $vars->set('eca', true);
-            $vars->set('callappearance', 'v-office');
-        } elseif (in_array('e(${CALLER})', $userdetails['dialopts'])) {
-            $vars->set('eca', true);
-            $vars->set('callappearance', 'caller');
-        } elseif (in_array('e(${SELF})', $userdetails['dialopts'])) {
-            $vars->set('eca', true);
-            $vars->set('callappearance', 'self');
-        }
+                    case '(${CALLERANI})':
+                        $vars->set('callappearance', 'self');
+                        break;
 
+                    case '(${CALLERIDNUM})':
+                    default:
+                        $vars->set('callappearance', 'caller');
+                        break;
+
+                    }
+                }
+            }
+        }
         return true;
     }
     // }}}
index 1af7ee5..f4029dd 100644 (file)
@@ -28,13 +28,13 @@ switch ($action) {
         unset($extension);
         break;
     case "edit":
-        $title .= _("Edit User (Extension") . "$extension)";
+        $title .= _("Edit User (Extension ") . "$extension)";
         break;
     case "save":
-        $title .= _("Save User (Extension") . "$extension)";
+        $title .= _("Save User (Extension ") . "$extension)";
         break;
     case "delete":
-        $title .= _("Delete User (Extension") . "$extension)";
+        $title .= _("Delete User (Extension ") . "$extension)";
         break;
     case "list":
     default:
index 321dbe6..d069872 100644 (file)
@@ -23,28 +23,34 @@ $wereerrors = 0;
 $vars = &Variables::getDefaultVariables($empty);
 $formname = $vars->get('formname');
 
-$title = _("FIXME " . __FILE__.":".__LINE__);
+$Form = &Horde_Form::singleton('UserDetailsForm', $vars);
 
-$UserDetailsForm = &Horde_Form::singleton('UserDetailsForm', $vars);
+$FormValid = $Form->validate($vars, true);
 
-$UserDetailsFormValid = $UserDetailsForm->validate($vars, true);
+if ($Form->isSubmitted()) {
+    $notification->push('Submitted.', 'horde.message');
+}
+if ($FormValid) {
+    $notification->push('Valid.', 'horde.message');
+}
+$notification->notify();
 
-if (!$UserDetailsFormValid) {
-    $UserDetailsForm->open($RENDERER, $vars, 'users.php', 'post');
+if (!$FormValid || !$Form->isSubmitted()) {
+    # Display the form for editing
+    $Form->open($RENDERER, $vars, 'usermgr.php', 'post');
     $vars->set('section', $section);
-    $UserDetailsForm->preserveVarByPost($vars, "section");
-    // $UserDetailsForm->preserve($vars);
-    $RENDERER->beginActive($UserDetailsForm->getTitle());
-    $RENDERER->renderFormActive($UserDetailsForm, $vars);
+    $Form->preserveVarByPost($vars, "section");
+    // $Form->preserve($vars);
+    $RENDERER->beginActive($Form->getTitle());
+    $RENDERER->renderFormActive($Form, $vars);
     $RENDERER->submit();
     $RENDERER->end();
-    $UserDetailsForm->close($RENDERER);
+    $Form->close($RENDERER);
 } else {
+    # Process the Valid and Submitted form
 
-//     require WHUPS_TEMPLATES . '/common-header.inc';
-//     require WHUPS_TEMPLATES . '/menu.inc';
     $info = array();
-    $UserDetailsForm->getInfo($vars, $info);
+    $Form->getInfo($vars, $info);
 
     $name = $info['name'];
     $curextension = $info['curextension'];