Example #1
0
 public function confirmed($controller, $title = '')
 {
     $this->id .= '_confirm';
     $this->addField(new hiddenField('confirmed', 'confirmed'));
     if ($this->sentdata['confirmed'] == 'confirmed') {
         $popup = new popupController();
         $popup->destroy(array('name' => 'confirm'));
         foreach ($this->sentdata as $key => $value) {
             $this->sentdata[$key] = stripslashes($value);
         }
         return true;
     } else {
         $this->confirm($controller, $title);
     }
     return false;
 }
 public function wikieditversion($parameters = array())
 {
     $view = new ui($this);
     $articlemodel = new myarticleModel();
     $versionmodel = new myarticleversionModel();
     $version = $versionmodel->getfromId($parameters['id']);
     if (count($version) == 1) {
         $version = $version[0];
         $form = new mygridform($parameters, $parameters['-gridid-'], 'edit');
         $form->addField(new textField('title', 'Titel', $version->getTitle(), array('required')));
         $form->addField(new hiddenField('start', time()));
         $form->addField(new hiddenField('alias', $parameters['alias']));
         $form->addField(new hiddenField('limit', ''));
         $form->addField(new hiddenField('stop', -1));
         $form->addField(new hiddenField('section', $parameters['section']));
         $form->addField(new rteField('content', 'Inhoud', $version->getContent(), array('required')));
         $draft = new selectField('state', 'Bewaar als', array('required'));
         $draft->addOption(new selectoptionField('Actieve versie', 'Actief', true));
         $draft->addOption(new selectoptionField('Draft', 'Draft', false));
         $form->addField($draft);
         $form->addField(new hiddenField('articleid', $parameters['articleid']));
         $form->addField(new hiddenField('id', $parameters['id']));
         if ($form->validate()) {
             $newversion = new myarticleversionObject();
             $newversion->setArticleid($parameters['articleid']);
             $newversion->setAuthor(myauth::getCurrentuser()->getId());
             $newversion->setAuthorname(myauth::getCurrentuser()->getName());
             $newversion->setCreationdate(time());
             $newversion->setTitle($form->getFieldvalue('title'));
             $newversion->setState($form->getFieldvalue('state'));
             $newversion->setStartpublishdate($form->getFieldvalue('start'));
             $newversion->setContent($form->getFieldvalue('content'));
             if ($form->getFieldvalue('limit') == 'limit') {
                 $newversion->setStoppublishdate($form->getFieldvalue('stop'));
             } else {
                 $newversion->setStoppublishdate(-1);
             }
             try {
                 if ($form->getFieldvalue('state') == 'Actief') {
                     $articleidcond = array('articleid' => array('mode' => '=', 'value' => $parameters['articleid']));
                     $statecond = array('state' => array('mode' => '=', 'value' => 'Actief'));
                     $prevactive = $versionmodel->get(array('AND' => array($articleidcond, $statecond)));
                     foreach ($prevactive as $prev) {
                         // This could have been if equal to 1 and just do the one, but this method is "self-healing" if multiple versions get flagged active
                         $prev->setState('Gearchiveerd');
                         $versionmodel->save($prev);
                     }
                 }
                 $versionmodel->save($newversion);
             } catch (Exception $e) {
                 $flash = new popupController();
                 $flash->createflash(array('name' => 'erroredit', 'type' => 'error', 'content' => 'De gegevens werden niet aangepast! Raadpleeg de informaticadienst.'));
                 return false;
             }
             $flash = new popupController();
             $flash->createflash(array('name' => 'flash_add_' . $parameters['-gridid-'], 'type' => 'success', 'content' => 'De gegevens zijn goed aangepast.'));
             $this->response->assign('gridextra_' . $parameters['-gridid-'], 'innerHTML', '');
             return true;
         } elseif (!$form->isSent()) {
             $view->assign('form', $form);
             return $view->fetch('myarticle_editversion.tpl');
         } else {
             return false;
         }
     } else {
         return false;
     }
 }
 public function deletegast($parameters)
 {
     $gastid = $parameters['gastid'];
     $popupcontroller = new popupController();
     $gastModel = new ingeschrevenModel();
     $gast = $gastModel->getfromId($gastid);
     if (count($gast) == 1) {
         $gast = $gast[0];
     } else {
         return;
     }
     $sure = $parameters['sure'];
     if ($sure != 'sure') {
         $template = new ui($this);
         $template->assign('gast', $gast);
         $ja = new ajaxrequest('myvoorinschrijving', 'deletegast', array('gastid' => $gastid, 'sure' => 'sure'));
         $template->assign('ja', $ja);
         $popupcontroller->create(array('name' => 'confirm', 'content' => $template->fetch('myvoorinschrijving_confirmdelete.tpl')));
     } elseif (myacl::isAllowed(myauth::getCurrentuser(), $gast, 'delete')) {
         $popupcontroller->destroy(array('name' => 'confirm'));
         $gastModel->deletebyId($gastid);
         $this->response->remove($gastid . '_rij');
     }
 }
 public function deletemodulepagelink($parameters = array())
 {
     if ($parameters['sure'] == 'sure') {
         $model = new myarticlesectionlinkModel();
         $flash = new popupController();
         $curlink = $model->getfromId($parameters['id']);
         if (count($curlink) == 1) {
             try {
                 $model->deletebyId($parameters['id']);
             } catch (Exception $e) {
                 $flash->createflash(array('name' => 'error', 'type' => 'error', 'content' => 'De aanpassing werd niet doorgevoerd! Contacteer de informaticadienst.'));
                 return false;
             }
         } else {
             $flash->createflash(array('name' => 'warning', 'type' => 'warning', 'content' => 'De aanpassing werd niet doorgevoerd omdat deze link reeds verwijderd was!'));
             return false;
         }
         $flash->createflash(array('name' => 'error', 'type' => 'success', 'content' => 'De aanpassing werd goed doorgevoerd.'));
         return true;
     } else {
         $model = new processedmodulepageModel();
         $link = $model->getfromId($parameters['id']);
         if (count($link) == 1) {
             $view = new ui($this);
             $view->assign('link', $link[0]);
             return $view->fetch('mypageadmin_deletemodulepagelink.tpl');
         }
     }
 }
 public function editPatient($parameters = array())
 {
     $patientmodel = new keukenpatientModel();
     $flash = new popupController();
     $view = new ui($this);
     $patients = $patientmodel->getfromId($parameters['id']);
     if (count($patients) == 1) {
         $patient = $patients[0];
         $view->assign('patient', $patient);
         $form = $this->buildform($parameters);
         $form->setNofocus(false);
         if ($form->validate()) {
             if ($form->confirmed($this, 'Bent u zeker?')) {
             } else {
             }
         } elseif (!$form->isSent()) {
             $view->assign('form', $form);
             return $view->fetch('keukenpakket_editpatient.tpl');
         } else {
             $this->response->assign('formerror_' . $form->getId(), 'innerHTML', 'Gelieve alle benodigde velden correct in te vullen.', true);
             return false;
         }
     } else {
         $flash->createflash(array('name' => 'err', 'type' => 'error', 'content' => 'Deze patiƫnt werd niet teruggevonden!'));
         return false;
     }
 }
Example #6
0
 public function setObjectorder($parameters = array())
 {
     $id = $parameters['id'];
     $gridid = $parameters['gridid'];
     $popup = new popupController();
     $grid = new mygrid($gridid);
     $model = $grid->getModel();
     $linkmodel = $grid->getModel();
     $object = $model->getfromId($id);
     if (count($object) == 1) {
         $object = $object[0];
         $view = new ui($this);
         $form = new form($parameters);
         $form->addField(new hiddenField('gridid', $gridid));
         $form->addField(new hiddenField('id', $id));
         $form->addField(new textField('order', 'Order', $object->_get($grid->getOrderfield()), array('required', 'numeric', 'range:1<->' . $model->getMax($grid->getOrderfield(), $grid->getConditions()))));
         if ($form->validate()) {
             $curlink = $object;
             if ($object->_get($grid->getOrderfield()) > $form->getFieldvalue('order')) {
                 $cond = array($grid->getOrderfield() => array('mode' => 'BETWEEN', 'value' => $form->getFieldvalue('order'), 'topvalue' => $object->_get($grid->getOrderfield())));
                 $links = $linkmodel->get(array('AND' => array($cond, $grid->getConditions())));
                 try {
                     foreach ($links as $link) {
                         $link->setOrder($link->getOrder() + 1);
                         $linkmodel->save($link);
                     }
                     $curlink->setOrder($form->getFieldvalue('order'));
                     $linkmodel->save($curlink);
                 } catch (Exception $e) {
                     $popup->createflash(array('name' => 'error', 'type' => 'error', 'content' => 'De wijziging is niet doorgevoerd! Raadpleeg de informaticadienst.'));
                     return false;
                 }
             } elseif ($object->_get($grid->getOrderfield()) < $form->getFieldvalue('order')) {
                 $cond = array($grid->getOrderfield() => array('mode' => 'BETWEEN', 'value' => $object->_get($grid->getOrderfield()), 'topvalue' => $form->getFieldvalue('order')));
                 $links = $linkmodel->get(array('AND' => array($cond, $grid->getConditions())));
                 try {
                     foreach ($links as $link) {
                         $link->setOrder($link->getOrder() - 1);
                         $linkmodel->save($link);
                     }
                     $curlink->setOrder($form->getFieldvalue('order'));
                     $linkmodel->save($curlink);
                 } catch (Exception $e) {
                     $popup->createflash(array('name' => 'error', 'type' => 'error', 'content' => 'De wijziging is niet doorgevoerd! Raadpleeg de informaticadienst.'));
                     return false;
                 }
             } else {
                 $popup->createflash(array('name' => 'warning', 'type' => 'warning', 'content' => 'De nieuwe plaats was dezelfde als de oude plaats. Er is dus niets gewijzigd.'));
                 $this->response->assign('gridextra_' . $gridid, 'innerHTML', '');
                 return false;
             }
             $popup->createflash(array('name' => 'success', 'type' => 'success', 'content' => 'De wijziging is goed doorgevoerd.'));
             $gridcontr = new mygridController();
             $gridcontr->reloadgrid($gridid);
             $this->response->assign('gridextra_' . $gridid, 'innerHTML', '');
         } elseif (!$form->isSent()) {
             $view->assign('form', $form);
             $view->assign('closeextra', new ajaxrequest('mygrid', 'closeextra', array('id' => 'gridextra_' . $gridid)));
             $this->response->assign('gridextra_' . $gridid, 'innerHTML', $view->fetch($parameters['viewprefix'] . 'mygrid_setobjectorder.tpl'));
         }
     }
 }
 public function pathdetails($parameters = array())
 {
     $view = new ui($this);
     $flash = new popupController();
     $model = new dirstatusModel();
     $current = $model->getfromId($parameters['id']);
     if (count($current) == 1) {
         $current = $current[0];
         $view->assign('current', $current);
         $closerequest = new ajaxrequest('mygrid', 'closeextra', array('id' => 'gridextra_' . $parameters['-gridid-']));
         $view->assign('closerequest', $closerequest);
         $history = new mygrid('directorywatcher_' . $current->getId());
         $history->setModel(new dirstatusModel());
         $history->setDefaultconditions(array('path' => array('mode' => '=', 'value' => $current->getPath())));
         $history->setDefaultorder(array('fields' => array('reporttime'), 'type' => 'DESC'));
         $view->assign('history', $history);
         $testmodel = new directorywatchertresholdModel();
         $treshold = new mygrid('treshold_' . $current->getId());
         $treshold->setModel($testmodel);
         $currentresholds = $testmodel->getfromPath($current->getPath());
         if (count($currentresholds) == 0) {
             $treshold->registerAddrequest('directorywatcher', 'addTreshold', array('title' => 'Treshold toevoegen', 'currentid' => $current->getId()));
             $parent = $current->getParent();
             $parenttresholds = array();
             if ($parent != '') {
                 $parentobj = $model->getfromPath($parent);
                 $parentobj = $parentobj[0];
                 $parenttresholds = $testmodel->getfromPath($parent);
                 while (count($parenttresholds) == 0 && $parent != '') {
                     $parent = $parentobj->getParent();
                     $parentobj = $model->getfromPath($parent);
                     $parentobj = $parentobj[0];
                     $parenttresholds = $testmodel->getfromPath($parent);
                 }
             }
             if (count($parenttresholds) == 0 && $parent == '') {
                 $parent = '_default_';
                 $parenttresholds = $testmodel->getfromPath($parent);
             }
             $treshold->setDefaultconditions(array('path' => array('mode' => '=', 'value' => $parent)));
             $treshold->unregisterRequest('-edit-');
             $treshold->unregisterRequest('-delete-');
         } else {
             $treshold->setDefaultconditions(array('path' => array('mode' => '=', 'value' => $current->getPath())));
             $treshold->unregisterRequest('-add-');
             $treshold->registerEditrequest('directorywatcher', 'editTreshold', array('title' => 'Treshold aanpassen', 'id' => '{id}'));
             $treshold->registerDeleterequest('directorywatcher', 'deleteTreshold', array('title' => 'Treshold verwijderen', 'id' => '{id}', 'currentid' => $current->getId()));
         }
         $view->assign('tresholdgrid', $treshold);
         $this->response->assign('gridextra_' . $parameters['-gridid-'], 'innerHTML', $view->fetch('directorywatcher_pathdetails.tpl'));
         $this->response->script('var myFx = new Fx.Scroll(window).toElement(\'gridextra_' . $parameters['-gridid-'] . '\')');
     } else {
         $flash->createflash(array('name' => 'err', 'type' => 'error', 'content' => 'Dit path werd niet gevonden.'));
         return false;
     }
 }
 public function addTicket($parameters = array())
 {
     require FRAMEWORK . DS . 'conf' . DS . 'myticket.php';
     require FRAMEWORK . DS . 'conf' . DS . 'mycafetaria.php';
     $view = new ui($this);
     $form = new form($parameters);
     $currentuser = myauth::getCurrentuser();
     $currentname = '';
     $groups = $currentuser->getGroupid();
     if (!isset($groups[$algemenegebruikers])) {
         $currentname = $currentuser->getName();
     }
     if (!isset($groups[$externgroup])) {
         $pricefield = 'price';
     } else {
         $pricefield = 'price2';
     }
     $form->addField(new suggesttextField('myticket', 'listusers', 'contact', 'Uw naam', $currentname, array('required')));
     $dienstveld = new selectField('dienst', 'Dienst', array('required'));
     $groupmodel = new groupModel();
     $diensten = array();
     foreach ($groups as $groupid) {
         $group = $groupmodel->getfromId($groupid);
         if (count($group) == 1) {
             $group = $group[0];
             $groupmemberof = $group->getMemberof();
             $flipped = array_flip($groupmemberof);
             if (isset($flipped[$meldinggroep])) {
                 $diensten[$group->getId()] = $group->getDescription();
             }
         }
     }
     if (count($diensten) > 1) {
         $dienstveld->addOption(new selectoptionField('', '', true));
         asort($diensten);
         foreach ($diensten as $id => $desc) {
             $dienstveld->addOption(new selectoptionField($desc, $id, false));
         }
     } else {
         foreach ($diensten as $id => $desc) {
             $dienstveld->addOption(new selectoptionField($desc, $id, true));
         }
     }
     $form->addField($dienstveld);
     $to = new selectField('to', 'Melding aan', array('required'));
     $to->addOption(new selectoptionField('', ''));
     $meldingdienstenmodel = new meldingdienstenModel();
     $meldingdiensten = $meldingdienstenmodel->get();
     foreach ($meldingdiensten as $meldingdienst) {
         $to->addOption(new selectoptionField($meldingdienst->getName(), $meldingdienst->getId()));
     }
     $form->addField($to);
     $form->addField(new textField('titel', 'Titel', '', array('required')));
     $form->addField(new textareaField('message', 'Melding', '', array('required')));
     if ($form->validate()) {
         $ticket = new myticketObject();
         $ticket->setDienstid($form->getFieldvalue('dienst'));
         $ticket->setTo($form->getFieldvalue('to'));
         $ticket->setContact($form->getFieldvalue('contact'));
         $ticket->setTitel($form->getFieldvalue('titel'));
         $ticket->setMessage($form->getFieldvalue('message'));
         $ticket->setPlacedby($currentuser->getId());
         $ticket->setTime(time());
         $ticket->setStatus('Created');
         $ticket->setUser($currentuser->getName());
         $dienst = $groupmodel->getfromId($form->getFieldvalue('dienst'));
         $ticket->setDienst($dienst[0]->getDescription());
         $to = $meldingdienstenmodel->getfromId($form->getFieldvalue('to'));
         $ticket->setToname($to[0]->getName());
         $ticketmodel = new myticketModel();
         $saved = true;
         try {
             $ticketmodel->save($ticket);
         } catch (Exception $e) {
             $saved = false;
         }
         $mailed = $this->mail($ticket);
         if ($mailed) {
             $ticket->setStatus('Mailed');
             $ticketmodel->save($ticket);
         }
         $this->listmytickets();
         $message = new ui($this);
         $message->assign('saved', $saved);
         $message->assign('mailed', $mailed);
         if ($saved && $mailed) {
             $type = 'success';
         } elseif ($saved) {
             $type = 'error';
         } elseif ($mailed) {
             $type = 'warning';
         } else {
             $type = 'error';
         }
         $popupcontroller = new popupController();
         $popupcontroller->createflash(array('name' => 'flash_melding', 'type' => $type, 'content' => $message->fetch('myticket_saveflash.tpl')));
     } elseif (!$form->isSent()) {
         $view->assign('form', $form);
         $this->response->assign($this->self, 'innerHTML', $view->fetch('myticket_addTicket.tpl'));
     }
 }
Example #9
0
 public function deleteacl($parameters)
 {
     $view = new ui($this);
     $model = new processedmyaclModel();
     $acl = $model->getfromId($parameters['id']);
     $dependant = array();
     if (count($acl) == 1) {
         $acl = $acl[0];
         include FRAMEWORK . DS . 'conf' . DS . 'myacl.php';
         $type = $acl->getObjecttype();
         if ($type == 'securitytarget') {
             $type = $acl->getObjectid();
         }
         $aclconf = $myacl[$type];
         $dependant = array();
         foreach ($aclconf['rights'] as $right => $rightconf) {
             if (in_array($acl->getRight(), $rightconf['requires'])) {
                 $otypecond = array('objecttype' => array('mode' => '=', 'value' => $acl->getObjecttype()));
                 $oidcond = array('objectid' => array('mode' => '=', 'value' => $acl->getObjectid()));
                 $rtypecond = array('requestertype' => array('mode' => '=', 'value' => $acl->getRequestertype()));
                 $ridcond = array('requesterid' => array('mode' => '=', 'value' => $acl->getRequesterid()));
                 $righcond = array('right' => array('mode' => '=', 'value' => $right));
                 $cond = array('AND' => array($otypecond, $oidcond, $ridcond, $rtypecond, $righcond));
                 $dependant = array_merge($dependant, $model->get($cond));
             }
         }
     }
     if ($parameters['sure'] == 'sure') {
         $flash = new popupController();
         $ids[] = $parameters['id'];
         foreach ($dependant as $depacl) {
             $ids[] = $depacl->getId();
         }
         $cond = array('id' => array('mode' => 'IN', 'value' => $ids));
         try {
             $model->delete($cond);
         } catch (Exception $e) {
             $flash->createflash(array('name' => 'error', 'type' => 'error', 'content' => 'De gegevens zijn niet goed verwijderd! Raadpleeg de informaticadienst.'));
             return false;
         }
         $flash->createflash(array('name' => 'success', 'type' => 'success', 'content' => 'De gegevens zijn goed verwijderd.'));
         return true;
     } else {
         $view->assign('acl', $acl);
         $view->assign('dependant', $dependant);
         return $view->fetch('myacl_deleteacl.tpl');
     }
 }
 public function deletedoktervanwacht($parameters = array())
 {
     $view = new ui($this);
     $wachtviewmodel = new wachtdokterviewModel();
     $dok = $wachtviewmodel->getfromId($parameters['id']);
     if (count($dok) == 1) {
         if ($parameters['sure'] != 'sure') {
             $view->assign('dokter', $dok[0]);
             $yes = new ajaxrequest('mydoktervanwacht', 'deletedoktervanwacht', array('id' => $parameters['id'], 'sure' => 'sure', 'specid' => $parameters['specid'], 'startofmonth' => $parameters['startofmonth'], 'endofmonth' => $parameters['endofmonth']));
             $no = new ajaxrequest('mydoktervanwacht', 'showspecdetails', array('specid' => $parameters['specid'], 'startofmonth' => $parameters['startofmonth'], 'endofmonth' => $parameters['endofmonth']));
             $view->assign('yes', $yes);
             $view->assign('no', $no);
             $this->response->assign('specgrid_' . $parameters['specid'], 'innerHTML', $view->fetch('mydoktervanwacht_delete.tpl'));
         } else {
             $model = new wachtdokterModel();
             try {
                 $model->deletebyId($parameters['id']);
             } catch (Exception $e) {
                 $flash = new popupController();
                 $flash->createflash(array('name' => 'erroredit', 'type' => 'error', 'content' => 'De gegevens werden niet aangepast! Raadpleeg de informaticadienst.'));
             }
             $flash = new popupController();
             $flash->createflash(array('name' => 'flash_del_' . $parameters['-gridid-'], 'type' => 'success', 'content' => 'De gegevens zijn goed verwijderd.'));
             $this->showspecdetails(array('specid' => $parameters['specid'], 'startofmonth' => $parameters['startofmonth'], 'endofmonth' => $parameters['endofmonth']));
         }
     } else {
         $flash = new popupController();
         $flash->createflash(array('name' => 'flash_del_' . $parameters['-gridid-'], 'type' => 'warning', 'content' => 'De gegevens werden niet teruggevonden.'));
     }
 }
 public function updateeditform($parameters = array())
 {
     $flash = new popupController();
     $model = new moduleModel();
     $modules = $model->getfromId($parameters['moduleid']);
     if (count($modules) == 1) {
         $module = $modules[0];
         $parameters['themodule'] = $module;
         $form = $this->buildeditform($parameters);
         $view = new ui($this);
         $view->assign('form', $form);
         $this->response->assign('gridextra_' . $parameters['-gridid-'] . '_content', 'innerHTML', $view->fetch('mymoduleadmin_addmodule.tpl'));
     } else {
         $flash->createflash(array('name' => 'error', 'type' => 'error', 'content' => 'De module werd niet gevonden!'));
         return false;
     }
 }
 public function editpromotion($parameters = array())
 {
     $view = new ui($this);
     $model = new cafetariapromotieModel();
     $promo = $model->getfromId($parameters['id']);
     if (count($promo) == 1) {
         $promo = $promo[0];
         $form = new mygridform($parameters, 'promotions', 'edit');
         $form->addField(new datepickerField('start', 'Start', true, $promo->getStarttime(), array('required')));
         $form->addField(new datepickerField('stop', 'Einde', true, $promo->getStoptime(), array('required')));
         $form->addField(new hiddenField('id', $parameters['id']));
         if ($form->validate()) {
             $promo->setStarttime($form->getFieldvalue('start'));
             $promo->setStoptime($form->getFieldvalue('stop'));
             try {
                 $model->save($promo);
             } catch (Exception $e) {
                 $flash = new popupController();
                 $flash->createflash(array('name' => 'error', 'type' => 'error', 'content' => 'De gegevens zijn niet aangepast! Raadpleeg de informaticadienst.'));
                 return false;
             }
             $flash = new popupController();
             $flash->createflash(array('name' => 'success', 'type' => 'success', 'content' => 'De gegevens zijn goed aangepast.'));
             $this->response->assign('gridextra_' . $parameters['-gridid-'], 'innerHTML', '');
             return true;
         } elseif (!$form->isSent()) {
             $view->assign('form', $form);
             return $view->fetch('mycafetaria_editpromotion.tpl');
         }
     }
 }