. */ include("./include/include.php"); require_once(FILESYSTEMROOTPATH."jc/include/classes/DefaultLayout.php"); require_once(FILESYSTEMROOTPATH."include/form/AbstractForm.php"); require_once(FILESYSTEMROOTPATH."jc/include/classes/DateTimeSelectField.php"); /** * Helper classes */ class RollcallForm extends AbstractForm { private $rollcallsService; public function __construct(Layout $layout, IModel $model, RollcallsService $rollcallsService) { parent::__construct($layout, $model); $this->rollcallsService = $rollcallsService; } public function save(IModel $model) { $open = date('Y-m-d H:i:s', strtotime($_POST['open']['year'].'-'.$_POST['open']['month'].'-'.$_POST['open']['day'].' '.$_POST['open']['hours'].':'.$_POST['open']['minutes'])); $close = date('Y-m-d H:i:s',strtotime($_POST['close']['year'].'-'.$_POST['close']['month'].'-'.$_POST['close']['day'].' '.$_POST['close']['hours'].':'.$_POST['close']['minutes'])); $model->setOpen($open); $model->setClose($close); $model->setSubmit_date(date('Y-m-d H:i:s')); if (isset($_POST['published'])){ $model->setPublished('1'); } $ns = $GLOBALS['ClassFactory']->getNotificationsService(); if( $this->rollcallsService->saveOrUpdate($model) ) { if($model->getId()==''){ $id = $this->rollcallsService->get_last_id();//no queries between save! $ns->create($id, 'Rollcall', $model->getOpen(), $model->getClose()); }else{ $ns->update($model->getId(), 'Rollcall', $model->getOpen(), $model->getClose()); } $this->layout->redirect('rollcall1.php'); }else { $this->layout->echoln("Failed saving"); } } } /** * End of helper classes */ $layout = new DefaultLayout("JC_MANAGE", "./jc/"); $layout->init(); $layout->echoln('Back
'); $rService = $GLOBALS['ClassFactory']->getRollcallsService(); $agora_id = $_SESSION['JC_MODULE']['AgoraId']; //get id if set if (isset($_GET['id'])){ $id = $_GET['id']; $rollcall = $rService->load($id); } else{ $rollcall = new Rollcalls(''); } $layout->echoln('Current system time (CET): '.date("d-m-Y H:i:s")); $rollcall->setAgora_id($agora_id); $rollcall->setCreator_uid($_SESSION['sess_uid']); $form = new RollcallForm($layout, $rollcall, $rService); $tf1 = new TextField('title', 'Title'); $ta1 = new TextAreaField('description', 'Description', 4, 60); $openfield = new DateTimeSelectField('open','Voting Start'); $closefield = new DateTimeSelectField('close','Voting End'); $majority = new SelectField('majority','Majority',array('simple'=>'Simple','absolute'=>'Absolute','two third'=>'Two Third')); $published = new CheckBoxField('published','Published'); $form->addField($tf1->setCompulsory(true)); $form->addField($ta1); $form->addField($openfield->setCompulsory(true)); $form->addField($closefield->setCompulsory(true)); $form->addField($majority->setCompulsory(true)); $form->addField($published); $form->display(); $layout->page_footer(); ?>