Пример #1
0
 public function loginform($parameters = array())
 {
     require FRAMEWORK . DS . 'conf' . DS . 'auth.php';
     require FRAMEWORK . DS . 'conf' . DS . 'dispatcher.php';
     $currentuser = myauth::getCurrentuser();
     $groups = $currentuser->getGroupid();
     $groupfound = false;
     foreach ($groups as $groupname => $groupid) {
         if (isset($defaultPageids[$groupname])) {
             $groupfound = true;
             $defaultPageid = $defaultPageids[$groupname];
         }
     }
     if (!$groupfound) {
         $defaultPageid = $defaultPageids['default'];
     }
     if ($currentuser->getId() == $defaultUserid) {
         $form = new form($parameters);
         $username = new textField('username', 'Gebruiker', '', array('required'));
         $password = new passwordField('password', 'Wachtwoord', array('required'));
         $form->addField($username);
         $form->addField($password);
         $form->setSubmittext('Log in');
         $form->setResettext('Herbegin');
         $template = new ui($this);
         if ($form->validate()) {
             $usermodel = new userModel();
             $authuser = $usermodel->auth($parameters['username'], $parameters['password']);
             if ($authuser instanceof userObject) {
                 myauth::setCurrentuser($authuser);
                 //	Refresh the page
                 $this->response->redirect('?pageid=' . $defaultPageid);
             } else {
                 $this->response->assign('formerror_' . $form->getId(), 'innerHTML', 'De ingevulde gegevens zijn niet correct.', true);
             }
         } elseif (!$form->isSent()) {
             $template->assign('form', $form);
             $this->response->assign($this->self, 'innerHTML', $template->fetch($parameters['viewprefix'] . 'myauth_loginform.tpl'));
         } else {
             $this->response->assign('formerror_' . $form->getId(), 'innerHTML', 'Alle velden moeten ingevuld worden.', true);
         }
     } else {
         $template = new ui($this);
         $defrequest = new pagerequest($defaultPageid);
         $template->assign('defrequest', $defrequest);
         $template->assign('logoutRequest', myauth::getLogoutrequest());
         $template->assign('currentuser', $currentuser);
         $this->response->assign($this->self, 'innerHTML', $template->fetch($parameters['viewprefix'] . 'myauth_loginform_loggedin.tpl'));
         //$this->response->assign($this->self , 'innerHTML' , '');
     }
 }
 public function index($parameters)
 {
     if ($parameters['dag'] == 'zondag') {
         $userModel = new userModel();
         $user = $userModel->getfromId(3);
         myauth::setCurrentuser($user[0]);
     }
     //	Enkel indien ingelogd
     $target = new securitytarget();
     $target->setId('voorinschrijving_index');
     if (myacl::isAllowed(myauth::getCurrentuser(), $target, 'view')) {
         $template = new ui($this);
         $starget = new securitytarget();
         $starget->setId('voorinschrijving_lijst');
         if (myacl::isAllowed(myauth::getCurrentuser(), $starget, 'view')) {
             $lijst = new pagerequest(3);
             $template->assign('lijst', $lijst);
         }
         $secTarget = new securitytarget();
         $secTarget->setId('voorinschrijving_usertype');
         //			if(!myacl::isAllowed(myauth::getCurrentuser(),$secTarget,'choose') && unserialize(serialize($_SESSION['gast'])) instanceof ingeschrevenObject ){
         //				$gast = unserialize(serialize($_SESSION['gast']));
         //				$template->assign('gast' , $gast);
         //
         //				$uurModel = new uurModel();
         //				$uur = $uurModel->getfromId($gast->getUurid());
         //				$uur = $uur[0];
         //				$template->assign('uur', $uur);
         //				$this->response->assign($this->self,'innerHTML',$template->fetch('myvoorinschrijving_success.tpl'));
         //				return;
         //			}
         $secTarget = new securitytarget();
         $secTarget->setId('voorinschrijving_usertype');
         if (myacl::isAllowed(myauth::getCurrentuser(), $secTarget, 'choose')) {
             $form = new form($parameters);
             $userModel = new userModel();
             $users = $userModel->get();
             $types = new selectField('user', 'Type', array('required'));
             $types->addOption(new selectoptionField('', '', true));
             foreach ($users as $user) {
                 if (myacl::isAllowed($user, $secTarget, 'get_chosen')) {
                     $types->addOption(new selectoptionField($user->getDescription(), $user->getId()));
                 }
             }
             $form->addField($types);
             $template->assign('form', $form);
             if ($form->validate()) {
                 $chosenUser = $userModel->getfromId($form->getFieldvalue('user'));
                 $chosenUser = $chosenUser[0];
             } else {
                 $chosenUser = myauth::getCurrentuser();
             }
         } else {
             $chosenUser = myauth::getCurrentuser();
         }
         //	uren ophalen en filteren + sorteren per traject
         $uurModel = new uurModel();
         $uren = $uurModel->get();
         $trajecten = array();
         foreach ($uren as $uur) {
             if (myacl::isAllowed($chosenUser, $uur, 'signup')) {
                 $trajecten[$uur->getTrajectid()][] = $uur;
             }
         }
         //	nog eens door alles heenlopen en alles structureren voor de template
         $mogelijkheden = array();
         $trajectModel = new trajectModel();
         $ingeschrevenModel = new ingeschrevenModel();
         foreach ($trajecten as $trajectid => $uren) {
             $temp = array();
             $traject = $trajectModel->getfromId($trajectid);
             $temp['traject'] = $traject[0];
             foreach ($uren as $uur) {
                 $uurtemp = array();
                 $total = 0;
                 $uurtemp['uur'] = $uur;
                 $gasten = $ingeschrevenModel->getfromUurid($uur->getId());
                 foreach ($gasten as $gast) {
                     $total += $gast->getAantal();
                 }
                 $uurtemp['vrij'] = $uur->getMaxaantal() - $total;
                 $uurtemp['request'] = new ajaxrequest('myvoorinschrijving', 'signup', array('uurid' => $uur->getId(), 'userid' => $chosenUser->getId()));
                 if ($uurtemp['vrij'] > 0) {
                     $temp['uren'][] = $uurtemp;
                 }
             }
             if (count($temp['uren']) > 0) {
                 $mogelijkheden[] = $temp;
             }
         }
         if (count($mogelijkheden) > 0) {
             $template->assign('mogelijkheden', $mogelijkheden);
             if ($parameters['dag'] == 'zondag') {
                 $this->response->assign($this->self, 'innerHTML', $template->fetch('myvoorinschrijving_index.tpl'));
             } else {
                 $this->response->assign($this->self, 'innerHTML', $template->fetch('myvoorinschrijving_index2.tpl'));
             }
         } else {
             $this->response->assign($this->self, 'innerHTML', $template->fetch('myvoorinschrijving_volzet.tpl'));
         }
     }
 }