.
*/
include("./include/include.php");
require_once(FILESYSTEMROOTPATH."jc/include/classes/DefaultLayout.php");
require_once(FILESYSTEMROOTPATH."include/form/AbstractForm.php");
/**
* Helper classes
*/
class AgoraForm extends AbstractForm {
private $agoraeService;
public function __construct(Layout $layout, IModel $model, AgoraeService $agoraeService) {
parent::__construct($layout, $model);
$this->agoraeService = $agoraeService;
}
public function save(IModel $model) {
$open = date('Y-m-d', strtotime($_POST['open']['year'].'-'.$_POST['open']['month'].'-'.$_POST['open']['day']));
$model->setOpen($open);
$model->setClose(date('Y-m-d',strtotime($_POST['close']['year'].'-'.$_POST['close']['month'].'-'.$_POST['close']['day'])));
$model->SetA_Open(date('Y-m-d',strtotime($_POST['a_open']['year'].'-'.$_POST['a_open']['month'].'-'.$_POST['a_open']['day'])));
$model->SetA_Close(date('Y-m-d',strtotime($_POST['a_close']['year'].'-'.$_POST['a_close']['month'].'-'.$_POST['a_close']['day'])));
$model->SetChanges_deadline(date('Y-m-d',strtotime($_POST['changes_deadline']['year'].'-'.$_POST['changes_deadline']['month'].'-'.$_POST['changes_deadline']['day'])));
$model->SetUpdated(0);
/*
if(!$this->agoraeService->cia_updated()) {
$this->layout->echoln(""._("You can only create a new Agora if the CIA has been updated.")."");
$this->layout->echoln(_("
Back to list"));
return;
}
*/
if( $this->agoraeService->saveOrUpdate($model) ) {
$this->layout->redirect('agorae_list.php');
}else {
if( $model->getId()==NULL ) {
// New agora
$this->layout->echoln(_("Failed creating agora."));
}else {
// agora edited
$this->layout->echoln(_("Failed saving agora."));
}
$this->layout->echoln(_("
Back to list"));
}
}
}
/**
* End of helper classes
*/
$layout = new DefaultLayout("JC_MANAGE", "./jc/");
$layout->init();
$agoraeService = $GLOBALS['ClassFactory']->getAgoraeService();
$agora = NULL;
if(isset($_GET['agora_id'])){
$agora = $agoraeService->load($_GET['agora_id']);
}
if ($agora == NULL){
$agora = new Agorae('');
$agora->setActive(0);
}
$form = new AgoraForm($layout, $agora, $agoraeService);
$agoraField = new TextField('agora','Agora');
$agoraField->setExplanation('Agora Enschede, May 2012');
$form->addField($agoraField->setCompulsory(true));
$cia_version_nameField = new TextField('cia_version_name','new CIA Version Name');
$cia_version_nameField->setExplanation('22.1');
$form->addField($cia_version_nameField->setCompulsory(true));
$aopenfield = new DateSelectField('a_open','Opening of Agora');
$form->addField($aopenfield->setCompulsory(true));
$aclosefield = new DateSelectField('a_close','Closing of Agora');
$form->addField($aclosefield->setCompulsory(true));
$openfield = new DateSelectField('open','Proposal Submission Opening');
$openfield->setExplanation('opening date for proposal submission');
$form->addField($openfield->setCompulsory(true));
$closefield = new DateSelectField('close','Proposal Submission Closing');
$closefield->setExplanation('closing date for proposal submission');
$form->addField($closefield->setCompulsory(true));
$rclosefield = new DateSelectField('changes_deadline','Proposal Resubmission Deadline');
$rclosefield->setExplanation('closing date for "Changes Required" proposal submission');
$form->addField($rclosefield->setCompulsory(true));
$form->display();
$layout->page_footer();
?>