<?php
class module_classes extends abstract_module{
public function before(){
$this->oLayout=new _layout('template1');
$this->oLayout->addModule('menu','menu::index');
}
public function _index(){
//on considere que la page par defaut est la page de listage
$this->_list();
}
public function _list(){
$tClasses=model_classes::getInstance()->findAll();
$oView=new _view('classes::list');
$oView->tClasses=$tClasses;
$oView->tJoinmodel_ateliers=model_ateliers::getInstance()->getSelect(); $oView->tJoinmodel_sessions=model_sessions::getInstance()->getSelect();
$this->oLayout->add('main',$oView);
}
public function _new(){
$tMessage=$this->save();
$oClasses=new row_classes;
$oView=new _view('classes::new');
$oView->oClasses=$oClasses;
$oView->tJoinmodel_ateliers=model_ateliers::getInstance()->getSelect(); $oView->tJoinmodel_sessions=model_sessions::getInstance()->getSelect();
$oPluginXsrf=new plugin_xsrf();
$oView->token=$oPluginXsrf->getToken();
$oView->tMessage=$tMessage;
$this->oLayout->add('main',$oView);
}
public function _edit(){
$tMessage=$this->save();
$oClasses=model_classes::getInstance()->findById( _root::getParam('id') );
$oView=new _view('classes::edit');
$oView->oClasses=$oClasses;
$oView->tId=model_classes::getInstance()->getIdTab();
$oView->tJoinmodel_ateliers=model_ateliers::getInstance()->getSelect(); $oView->tJoinmodel_sessions=model_sessions::getInstance()->getSelect();
$oPluginXsrf=new plugin_xsrf();
$oView->token=$oPluginXsrf->getToken();
$oView->tMessage=$tMessage;
$this->oLayout->add('main',$oView);
}
public function _show(){
//on instancie le module integrable
$oModuleEleves=new module_eleves;
//on indique au module integrable les parametres a prendre en compte pour ses liens
$oModuleEleves->setRootLink(_root::getParamNav(),array('id'=>_root::getParam('id')));
//on recuere la vue de ce module
$oViewEleves=$oModuleEleves->_index();
/*$oClasses=model_classes::getInstance()->findById( _root::getParam('id') );
//on instancie le module integrable
$oModuleEleves=new module_eleves;
//on indique au module integrable les parametres a prendre en compte pour ses liens
$oModuleEleves->setRootLink(_root::getParamNav(),array('id'=>_root::getParam('id')));
//on recuere la vue de ce module
$oViewEleves=$oModuleEleves->_index();
$oView=new _view('classes::show');
$oView->oClasses=$oClasses;
$oView->tJoinmodel_ateliers=model_ateliers::getInstance()->getSelect(); $oView->tJoinmodel_sessions=model_sessions::getInstance()->getSelect();
$this->oLayout->add('main',$oView);*/
}
public function _delete(){
$tMessage=$this->delete();
$oClasses=model_classes::getInstance()->findById( _root::getParam('id') );
$oView=new _view('classes::delete');
$oView->oClasses=$oClasses;
$oView->tJoinmodel_ateliers=model_ateliers::getInstance()->getSelect(); $oView->tJoinmodel_sessions=model_sessions::getInstance()->getSelect();
$oPluginXsrf=new plugin_xsrf();
$oView->token=$oPluginXsrf->getToken();
$oView->tMessage=$tMessage;
$this->oLayout->add('main',$oView);
}
public function save(){
if(!_root::getRequest()->isPost() ){ //si ce n'est pas une requete POST on ne soumet pas
return null;
}
$oPluginXsrf=new plugin_xsrf();
if(!$oPluginXsrf->checkToken( _root::getParam('token') ) ){ //on verifie que le token est valide
return array('token'=>$oPluginXsrf->getMessage() );
}
$iId=_root::getParam('id',null);
if($iId==null){
$oClasses=new row_classes;
}else{
$oClasses=model_classes::getInstance()->findById( _root::getParam('id',null) );
}
$tId=model_classes::getInstance()->getIdTab();
$tColumn=model_classes::getInstance()->getListColumn();
foreach($tColumn as $sColumn){
if(isset($_FILES[$sColumn]) and $_FILES[$sColumn]['size'] > 0){
$sNewFileName='data/upload/'.$sColumn.'_'.date('Ymdhis');
$oPluginUpload=new plugin_upload($_FILES[$sColumn]);
$oPluginUpload->saveAs($sNewFileName);
$oClasses->$sColumn=$oPluginUpload->getPath();
continue;
}else if( _root::getParam($sColumn,null) ==null ){
continue;
}else if( in_array($sColumn,$tId)){
continue;
}
$oClasses->$sColumn=_root::getParam($sColumn,null) ;
}
if($oClasses->isValid()){
$oClasses->save();
//une fois enregistre on redirige (vers la page liste)
_root::redirect('classes::list');
}else{
return $oClasses->getListError();
}
}
public function delete(){
if(!_root::getRequest()->isPost() ){ //si ce n'est pas une requete POST on ne soumet pas
return null;
}
$oPluginXsrf=new plugin_xsrf();
if(!$oPluginXsrf->checkToken( _root::getParam('token') ) ){ //on verifie que le token est valide
return array('token'=>$oPluginXsrf->getMessage() );
}
$oClasses=model_classes::getInstance()->findById( _root::getParam('id',null) );
$oClasses->delete();
//une fois enregistre on redirige (vers la page liste)
_root::redirect('classes::list');
}
public function after(){
$this->oLayout->show();
}
}
/*variables
#select $oView->tJoinclasses=classes::getInstance()->getSelect();#fin_select
#uploadsave if(isset($_FILES[$sColumn]) and $_FILES[$sColumn]['size'] > 0){
$sNewFileName='data/upload/'.$sColumn.'_'.date('Ymdhis');
$oPluginUpload=new plugin_upload($_FILES[$sColumn]);
$oPluginUpload->saveAs($sNewFileName);
$oClasses->$sColumn=$oPluginUpload->getPath();
continue;
}else #fin_uploadsave
variables*/
Partager