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