.
*/
include("./include/include.php");
require_once(FILESYSTEMROOTPATH."jc/include/classes/DefaultLayout.php");
require_once(FILESYSTEMROOTPATH."include/form/AbstractForm.php");
require_once(FILESYSTEMROOTPATH."include/list/ListPager.php");
/**
* Helper classes
*/
class ProposalForm extends AbstractForm {
private $proposalsService;
public function __construct(Layout $layout, IModel $model, ProposalsService $proposalsService) {
parent::__construct($layout, $model);
$this->proposalsService = $proposalsService;
}
public function save(IModel $model) {
if( $this->proposalsService->saveOrUpdate($model) ) {
$this->layout->redirect('proposals.php');
}else {
if( $model->getId()==NULL ) {
// New Proposal
$this->layout->echoln(_("Failed creating Proposal."));
}else {
// Proposal edited
$this->layout->echoln(_("Failed saving Proposal."));
}
}
}
}
/**
* End of helper classes
*/
$layout = new DefaultLayout("JC_MANAGE");
$layout->init();
$layout->echoln('Back');
$proposal_id = $_GET['proposal_id'];
$proposalsService = $GLOBALS['ClassFactory']->getProposalsService();
$proposals_sentencesService = $GLOBALS['ClassFactory']->getProposals_sentencesService();
$proposal = $proposalsService->load($proposal_id);
$form = new ProposalForm($layout, $proposal, $proposalsService);
$titleField = new TextField('title','Title');
$titleField->setReadOnly('true');
$titleField->setClass('disabled');
$proposer_uidField = new TextField('proposer_uid','Creator');
$proposer_uidField->setreadOnly('true');
$proposer_uidField->setClass('disabled');
$proposersField = new TextField('proposers','Proposers');
$proposersField->setReadOnly('true');
$proposersField->setClass('disabled');
$motivationArea = new TextAreaField('motivation','Motivation',5,70);
$motivationArea->setReadOnly('true');
$motivationArea->setClass('disabled');
$submit_dateField = new TextField('submit_date','Submit Date');
$submit_dateField->setReadOnly('true');
$submit_dateField->setClass('disabled');
$jc_commentArea = new TextAreaField('jc_comment','JC Comment',5,70);
$statusField = new SelectField('status','Status',array('Submitted'=>'Submitted','JC Accepted'=>'JC Accepted','JC Rejected'=>'JC Rejected','Changes Required'=>'Changes Required','Withdrawn'=>'Withdrawn'));
$idField = new HiddenField('id',$proposal_id);
$form->addField($titleField);
$form->addfield($proposer_uidField);
$form->addField($proposersField);
$form->addField($motivationArea);
$form->addField($submit_dateField);
$form->addField($jc_commentArea);
$form->addField($statusField);
$form->addHiddenField($idField);
$form->display();
$layout->echoln('
View changes made by this proposal');
$data = $proposals_sentencesService->loadTitlesByProposalId($proposal_id, false);
$pager = new ListPager("Changes");
$pager->addColumn(new TextColumn("title", "Title"));
$pager->addColumn(new TextColumn("category", "Category"));
$pager->addColumn(new TextColumn("review", "Review"));
$layout->echoln($pager->display($data));
$layout->page_footer();
?>