Renamed MULTITEAM_MODE to MULTIORG_MODE to better reflect the meaning of the constant.
[timetracker.git] / mobile / login.php
index f1c171a..a432e5b 100644 (file)
 
 require_once('../initialize.php');
 import('form.Form');
-import('ttTeamHelper');
+import('ttOrgHelper');
 import('ttUser');
 
-if ($request->getMethod() == 'POST') {
+if ($request->isPost()) {
   $cl_login = $request->getParameter('login');
 } else {
   $cl_login = @$_COOKIE['tt_login'];
@@ -40,21 +40,21 @@ $cl_password = $request->getParameter('password');
 
 $form = new Form('loginForm');
 $form->addInput(array('type'=>'text','size'=>'25','maxlength'=>'100','name'=>'login','style'=>'width: 220px;','value'=>$cl_login));
-$form->addInput(array('type'=>'text','size'=>'25','maxlength'=>'50','name'=>'password','style'=>'width: 220px;','aspassword'=>true,'value'=>$cl_password));
+$form->addInput(array('type'=>'password','size'=>'25','maxlength'=>'50','name'=>'password','style'=>'width: 220px;','value'=>$cl_password));
 $form->addInput(array('type'=>'hidden','name'=>'browser_today','value'=>'')); // User current date, which gets filled in on btn_login click.
-$form->addInput(array('type'=>'submit','name'=>'btn_login','onclick'=>'browser_today.value=get_date()','value'=>$i18n->getKey('button.login')));
+$form->addInput(array('type'=>'submit','name'=>'btn_login','onclick'=>'browser_today.value=get_date()','value'=>$i18n->get('button.login')));
 
-if ($request->getMethod() == 'POST') {
+if ($request->isPost()) {
   // Validate user input.
-  if (!ttValidString($cl_login)) $errors->add($i18n->getKey('error.field'), $i18n->getKey('label.login'));
-  if (!ttValidString($cl_password)) $errors->add($i18n->getKey('error.field'), $i18n->getKey('label.password'));
-       
-  if ($errors->isEmpty()) {
+  if (!ttValidString($cl_login)) $err->add($i18n->get('error.field'), $i18n->get('label.login'));
+  if (!ttValidString($cl_password)) $err->add($i18n->get('error.field'), $i18n->get('label.password'));
+
+  if ($err->no()) {
 
     // Use the "limit" plugin if we have one. Ignore include errors.
-    // The "limit" plugin is not required for normal operation of the Time Tracker.
+    // The "limit" plugin is not required for normal operation of Time Tracker.
     @include('../plugins/limit/access_check.php');
-      
+
     if ($auth->doLogin($cl_login, $cl_password)) {
 
       // Set current user date (as determined by user browser) into session.
@@ -64,28 +64,24 @@ if ($request->getMethod() == 'POST') {
 
       // Remember user login in a cookie.
       setcookie('tt_login', $cl_login, time() + COOKIE_EXPIRE, '/');
-      
+
       $user = new ttUser(null, $auth->getUserId());
       // Redirect, depending on user role.
-      if ($user->isAdmin()) {
-        header('Location: ../admin_teams.php');
-        exit();
-      }
-      else if ($user->isClient()) {
+      if ($user->can('administer_site')) {
+        header('Location: ../admin_groups.php');
+      } elseif ($user->isClient()) {
         header('Location: ../reports.php');
-        exit();        
-      }
-      else {
+      } else {
         header('Location: time.php');
-        exit();
       }
+      exit();
     } else
-      $errors->add($i18n->getKey('error.auth'));
+      $err->add($i18n->get('error.auth'));
   }
-}
+} // isPost
 
-if(!isTrue(MULTITEAM_MODE) && !ttTeamHelper::getTeams())
-  $errors->add($i18n->getKey('error.no_teams'));
+if(!isTrue('MULTIORG_MODE') && !ttOrgHelper::getOrgs())
+  $err->add($i18n->get('error.no_groups'));
 
 // Determine whether to show login hint. It is currently used only for Windows LDAP authentication.
 $show_hint = ('ad' == $GLOBALS['AUTH_MODULE_PARAMS']['type']);
@@ -93,7 +89,6 @@ $show_hint = ('ad' == $GLOBALS['AUTH_MODULE_PARAMS']['type']);
 $smarty->assign('forms', array($form->getName()=>$form->toArray()));
 $smarty->assign('show_hint', $show_hint);
 $smarty->assign('onload', 'onLoad="document.loginForm.'.(!$cl_login?'login':'password').'.focus()"');
-$smarty->assign('title', $i18n->getKey('title.login'));
+$smarty->assign('title', $i18n->get('title.login'));
 $smarty->assign('content_page_name', 'mobile/login.tpl');
 $smarty->display('mobile/index.tpl');
-?>
\ No newline at end of file