Exemplo n.º 1
0
 public function addpage($parameters = array())
 {
     $view = new ui($this);
     $form = new mygridform($parameters, $parameters['-gridid-'], 'edit');
     $form->addField(new hiddenField('parentid', $parameters['parentid']));
     $form->addField(new textField('title', 'Titel', '', array('required')));
     if ($form->validate()) {
         $pagemodel = new pageModel();
         $newpage = new pageObject();
         $newpage->setTemplate('page.tpl');
         $newpage->setParentid($parameters['parentid']);
         $newpage->setTitle($parameters['title']);
         $newpage->setOrder($pagemodel->getmax('order', array('parentid' => array('mode' => '=', 'value' => $parameters['parentid']))) + 1);
         $flash = new popupController();
         try {
             $pagemodel->save($newpage);
         } catch (Exception $e) {
             $flash->createflash(array('name' => 'err', 'type' => 'error', 'content' => 'De gegevens zijn niet goed bewaard! Raadpleeg de informaticadienst.'));
             return false;
         }
         $flash->createflash(array('name' => 'success', 'type' => 'success', 'content' => 'De gegevens zijn goed bewaard.'));
         $this->response->assign('gridextra_' . $parameters['-gridid-'], 'innerHTML', '');
         return true;
     } elseif (!$form->isSent()) {
         $view->assign('form', $form);
         return $view->fetch('mypageadmin_addpage.tpl');
     }
 }
Exemplo n.º 2
0
 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;
     }
 }
Exemplo n.º 3
0
 protected function buildform($parameters = array())
 {
     $form = new mygridform($parameters, $parameters['-gridid-'], 'edit', 'keukenpakket', 'editPatient');
     $form->setPhasedrequest(new ajaxrequest('keukenpakket', 'updateform'));
     $form->addField(new hiddenField('id', $parameters['id']));
     $form->addField(new hiddenField('title', $parameters['title']));
     $patientmodel = new keukenpatientModel();
     $flash = new popupController();
     $patients = $patientmodel->getfromId($parameters['id']);
     if (count($patients) == 1) {
         $patient = $patients[0];
         $dieetselect = new selectField('dieet', 'Dieet', array('required'), true);
         $form->addField($dieetselect);
         $drankselect = new selectField('drank', 'Drank', array('required'));
         $form->addField($drankselect);
     } else {
         $flash->createflash(array('name' => 'err', 'type' => 'error', 'content' => 'Deze patiënt werd niet teruggevonden!'));
     }
     return $form;
 }
 public function addTreshold($parameters = array())
 {
     $view = new ui($this);
     $flash = new popupController();
     $model = new directorywatchertresholdModel();
     $tresholds = $model->getfromPath('_default_');
     $cmodel = new dirstatusModel();
     $current = $cmodel->getfromId($parameters['currentid']);
     $current = $current[0];
     if (count($tresholds) == 1) {
         $treshold = $tresholds[0];
         $form = new mygridform($parameters, $parameters['-gridid-'], 'edit');
         $form->addField(new hiddenField('title', $parameters['title']));
         $form->addField(new hiddenField('currentid', $parameters['currentid']));
         $form->addField(new textField('numfiles', 'Aantal bestanden', $treshold->getNumfiles(), array('required', 'numeric')));
         $form->addField(new textField('lastfiletime', 'Laatst aangepast', $treshold->getLastfiletime(), array('required', 'numeric')));
         $form->addField(new textField('oldestfiletime', 'Oudste bestand', $treshold->getOldestfiletime(), array('required', 'numeric')));
         $form->addField(new textField('exists', 'Bestaat', $treshold->getExists(), array('required', 'numeric', 'range:-1<->1')));
         $form->addField(new textField('mail', 'Mail', $treshold->getMail(), array('required', 'numeric', 'range:0<->1')));
         $form->addField(new textField('mailto', 'Mail naar', $treshold->getMailto(), array('required')));
         if ($form->validate()) {
             $newtreshold = new directorywatchertresholdObject();
             $newtreshold->setPath($current->getPath());
             $newtreshold->setNumfiles($form->getFieldvalue('numfiles'));
             $newtreshold->setLastfiletime($form->getFieldvalue('lastfiletime'));
             $newtreshold->setOldestfiletime($form->getFieldvalue('oldestfiletime'));
             $newtreshold->setExists($form->getFieldvalue('exists'));
             $newtreshold->setMail($form->getFieldvalue('mail'));
             $newtreshold->setMailto($form->getFieldvalue('mailto'));
             try {
                 $model->save($newtreshold);
             } catch (Exception $e) {
                 $flash->createflash(array('name' => 'err', 'type' => 'error', 'content' => 'De gegevens werden niet aangepast.'));
                 return false;
             }
             $flash->createflash(array('name' => 'success', 'type' => 'success', 'content' => 'De gegevens zijn goed aangepast.'));
             $this->response->assign('gridextra_' . $parameters['-gridid-'], 'innerHTML', '');
             $grid = new mygrid($parameters['-gridid-']);
             $grid->unregisterRequest('-add-');
             $grid->registerEditrequest('directorywatcher', 'editTreshold', array('title' => 'Treshold aanpassen', 'id' => '{id}'));
             $grid->registerDeleterequest('directorywatcher', 'deleteTreshold', array('title' => 'Treshold verwijderen', 'id' => '{id}', 'currentid' => $current->getId()));
             $grid->setDefaultconditions(array('path' => array('mode' => '=', 'value' => $current->getPath())));
             return true;
         } elseif (!$form->isSent()) {
             $view->assign('form', $form);
             return $view->fetch('directorywatcher_edittreshold.tpl');
         } else {
             return false;
         }
     } else {
         $flash->createflash(array('name' => 'err', 'type' => 'error', 'content' => 'De standaard treshold werd niet gevonden.'));
         return false;
     }
 }
Exemplo n.º 5
0
 public function addacl($parameters)
 {
     include FRAMEWORK . DS . 'conf' . DS . 'myacl.php';
     $view = new ui($this);
     $form = new mygridform($parameters, $parameters['-gridid-'], 'edit');
     $objecttype = $parameters['objecttype'];
     $objectid = $parameters['objectid'];
     $form->addField(new suggestselectField('myacl', 'getRequesterlist', 'requester', 'Aanvrager', '', array('required'), array('objectype' => $objecttype != 'securitytarget' ? $objecttype : $objectid)));
     if ($objecttype == 'securitytarget') {
         $rights = $myacl[$objectid]['rights'];
     } else {
         $rights = $myacl[$objecttype]['rights'];
     }
     $object = new $objecttype();
     $object->setId($objectid);
     if (myacl::isAllowed(myauth::getCurrentuser(), $object, '_ALL_')) {
         $form->addField(new checkboxField('form_all', 'Full control', '_ALL_', false));
         $form->addField(new checkboxField('form_managerights', 'Rechten beheren', 'managerights', false));
     }
     foreach ($rights as $right => $rightconf) {
         $form->addField(new checkboxField('form_' . $right, $rightconf['description'], $right, false));
     }
     $form->addField(new hiddenField('objecttype', $objecttype));
     $form->addField(new hiddenField('objectid', $objectid));
     $form->addField(new hiddenField('module', $parameters['module']));
     if ($form->validate()) {
         $requestertypes = $myacl[$objecttype != 'securitytarget' ? $objecttype : $objectid]['requesters'];
         $requesters = array();
         foreach ($form->getFieldvalue('requester') as $requestername) {
             foreach ($requestertypes as $type => $conf) {
                 $modelname = str_replace('Object', 'Model', $type);
                 $model = new $modelname();
                 $func = $conf['getfunction'];
                 $res = $model->{$func}($requestername);
                 if (count($res) == 1) {
                     $requesters[] = $res[0];
                     break;
                 }
             }
         }
         $selectedrights = array();
         if ($form->getFieldvalue('form_all') == '_ALL_') {
             $selectedrights['_ALL_'] = '_ALL_';
         } else {
             if ($form->getFieldvalue('form_managerights') == 'managerights') {
                 $selectedrights['managerights'] = 'managerights';
             }
             foreach ($rights as $right => $rightconf) {
                 if ($form->getFieldvalue('form_' . $right) == $right) {
                     $selectedrights[$right] = $right;
                     if (isset($rightconf['requires'])) {
                         foreach ($rightconf['requires'] as $required) {
                             $selectedrights[$required] = $required;
                         }
                     }
                 }
             }
         }
         try {
             $object = new $objecttype();
             $object->setId($objectid);
             foreach ($requesters as $requester) {
                 foreach ($selectedrights as $selectedright) {
                     myacl::setAcl($requester, $object, $selectedright, 1);
                 }
             }
         } catch (Exception $e) {
             $flash = new popupController();
             $flash->createflash(array('name' => 'err', 'type' => 'error', 'content' => 'De gegevens zijn niet goed doorgevoerd! Raadpleeg de informaticadienst.'));
             return false;
         }
         $this->response->assign('gridextra_' . $parameters['-gridid-'], 'innerHTML', '');
         $flash = new popupController();
         $flash->createflash(array('name' => 's', 'type' => 'success', 'content' => 'De gegevens zijn goed doorgevoerd.'));
         return true;
     } elseif (!$form->isSent()) {
         $view->assign('form', $form);
         return $view->fetch('myacl_addacl.tpl');
     }
 }
 public function buildeditform($parameters = array())
 {
     $form = new mygridform($parameters, $parameters['-gridid-'], 'edit', 'mymoduleadmin', 'editmodule');
     $form->setPhasedrequest(new ajaxrequest('mymoduleadmin', 'updateeditform'));
     $themodule = $parameters['themodule'];
     if (isset($parameters['__field__'])) {
         $changedfield = $parameters['__field__'];
         $form->setFocusfield($changedfield);
     }
     $form->addField(new hiddenField('moduleid', $parameters['moduleid']));
     $title = isset($parameters['name']) ? $parameters['name'] : $themodule->getTitle();
     $form->addField(new textField('name', 'Titel', $title, array('required')));
     $mod = isset($parameters['module']) ? $parameters['module'] : $themodule->getName();
     $modules = $this->getModulelist();
     $moduleselect = new selectField('module', 'Module', array('required'));
     foreach ($modules as $module => $description) {
         $selected = $module == $mod ? true : false;
         $moduleselect->addOption(new selectoptionField($module, $module, $selected, $description));
     }
     $form->addField($moduleselect);
     $act = isset($parameters['moduleaction']) ? $parameters['moduleaction'] : $themodule->getAction();
     $actions = $this->getActions($mod);
     $actionselect = new selectField('moduleaction', 'Actie', array('required'));
     if (!isset($actions[$act])) {
         $act = $themodule->getAction();
         if (!isset($actions[$act])) {
             $actionselect->addOption(new selectoptionField('', '', true));
         }
     }
     foreach ($actions as $action => $actionconf) {
         $selected = $action == $act ? true : false;
         $actionselect->addOption(new selectoptionField($action, $action, $selected, $actionconf['description']));
     }
     $form->addField($actionselect);
     $options = $this->getOptions($mod, $act);
     $args = $themodule->getArguments();
     foreach ($options as $option => $values) {
         $tmp = new selectField($option, $option, array('required'));
         $opt = isset($parameters[$option]) ? $parameters[$option] : $args[$option];
         foreach ($values as $id => $name) {
             $selected = $id == $opt ? true : false;
             $tmp->addOption(new selectoptionField($name, $id, $selected));
         }
         $form->addField($tmp);
     }
     return $form;
 }
Exemplo n.º 7
0
 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');
         }
     }
 }