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 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; } }
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 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')); } }
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'); } } }