예제 #1
0
 public function getObject()
 {
     if (!is_null(sfContext::getInstance()->getUser()->getReferenceFor("teacher"))) {
         $this->back_to = 'teacher';
         return TeacherPeer::retrieveByPK(sfContext::getInstance()->getUser()->getReferenceFor("teacher"))->getPerson();
     }
     $this->back_to = 'personal';
     return PersonalPeer::retrieveByPK(sfContext::getInstance()->getUser()->getReferenceFor("personal"))->getPerson();
 }
예제 #2
0
 public static function initilize($idP, $idS)
 {
     $OP = PersonalPeer::retrieveByPK($idP);
     if ($OP instanceof Personal) {
         return new PersonalForm($OP);
     } else {
         $OP = new Personal();
         $OP->setSiteId($idS);
         $OP->setActiu(true);
         return new PersonalForm($OP);
     }
 }
 /**
  * Event listener function that should be registered to
  * 'admin.build_criteria' event in order to add some
  * personalized criteria restrictions.
  *
  * @param sfEvent $event
  * @param Criteria $criteria
  */
 static function applyRestrictions(sfEvent $event, $criteria)
 {
     $user = sfContext::getInstance()->getUser();
     if ($event->getSubject() instanceof schoolyearActions) {
         // Restrictions for schoolyear module
         // $criteria->add(...);
     } elseif ($event->getSubject() instanceof career_subjectActions) {
         // Restrictions for careersubject module
         if ($user->getReferenceFor('career')) {
             $criteria->add(CareerSubjectPeer::CAREER_ID, $user->getReferenceFor('career'));
             CareerSubjectPeer::OrderByYearAndName($criteria);
         }
     } elseif ($event->getSubject() instanceof career_subject_optionActions) {
         // Restrictions for careersubject module
         if ($user->getReferenceFor('career')) {
             $criteria->add(CareerSubjectPeer::IS_OPTION, true);
             $criteria->add(CareerSubjectPeer::CAREER_ID, $user->getReferenceFor('career'));
         }
     } elseif ($event->getSubject() instanceof career_school_yearActions) {
         if ($school_year_id = $user->getReferenceFor('schoolyear')) {
             $criteria->add(CareerSchoolYearPeer::SCHOOL_YEAR_ID, $school_year_id);
         }
     } elseif ($event->getSubject() instanceof career_subject_school_yearActions) {
         if ($career_school_year_id = $user->getReferenceFor('career_school_year')) {
             $criteria->add(CareerSubjectSchoolYearPeer::CAREER_SCHOOL_YEAR_ID, $career_school_year_id);
             $criteria->add(CareerSubjectPeer::IS_OPTION, false);
             $criteria->addJoin(CareerSubjectPeer::ID, CareerSubjectSchoolYearPeer::CAREER_SUBJECT_ID);
             CareerSubjectSchoolYearPeer::sorted($criteria);
         }
     } elseif ($event->getSubject() instanceof optional_school_yearActions) {
         if ($career_school_year_id = $user->getReferenceFor('career_school_year')) {
             $criteria->add(CareerSubjectSchoolYearPeer::CAREER_SCHOOL_YEAR_ID, $career_school_year_id);
             $criteria->add(CareerSubjectPeer::HAS_OPTIONS, true);
             $criteria->addJoin(CareerSubjectPeer::ID, CareerSubjectSchoolYearPeer::CAREER_SUBJECT_ID);
         }
     } elseif ($event->getSubject() instanceof division_courseActions) {
         if ($division_id = $user->getReferenceFor('division')) {
             $criterion = $criteria->getNewCriterion(CoursePeer::DIVISION_ID, $division_id);
             $criterion->addOr($criteria->getNewCriterion(CoursePeer::RELATED_DIVISION_ID, $division_id));
             $criteria->add($criterion);
         }
         if ($user->isPreceptor()) {
             self::addCoursePreceptorCriteria($criteria, $user);
         }
         if ($user->isTeacher()) {
             self::addCourseTeacherCriteria($criteria, $user);
         }
         $criteria->setDistinct();
     } elseif ($event->getSubject() instanceof divisionActions) {
         DivisionPeer::sorted($criteria);
         if ($user->isPreceptor()) {
             self::addDivisionPreceptorCriteria($criteria, $user);
         } elseif ($user->isTeacher()) {
             self::addDivisionTeacherCriteria($criteria, $user);
         } elseif ($user->isHeadPreceptor()) {
             self::addDivisionHeadPersonalCriteria($criteria, $user);
         }
     } else {
         if ($event->getSubject() instanceof shared_studentActions) {
             $reference_array = sfContext::getInstance()->getUser()->getReferenceFor("shared_student");
             $peer = $reference_array["peer"];
             $fk = $reference_array["fk"];
             if (isset($reference_array["object_id"])) {
                 $object_id = $reference_array["object_id"];
             } else {
                 $object_ids = $reference_array["object_ids"];
             }
             $criteria->addJoin(constant("{$peer}::STUDENT_ID"), StudentPeer::ID);
             $criteria->addGroupByColumn(StudentPeer::ID);
             if (isset($object_id)) {
                 $criteria->add(constant("{$peer}::{$fk}"), $object_id);
             } else {
                 $criteria->add(constant("{$peer}::{$fk}"), $object_ids, Criteria::IN);
             }
             $criteria->addJoin(StudentPeer::PERSON_ID, PersonPeer::ID);
             $criteria->add(PersonPeer::IS_ACTIVE, true);
         } else {
             if ($event->getSubject() instanceof examinationActions || $event->getSubject() instanceof manual_examinationActions) {
                 $school_year_id = sfContext::getInstance()->getUser()->getReferenceFor("schoolyear");
                 $criteria->add(ExaminationPeer::SCHOOL_YEAR_ID, $school_year_id);
                 if ($user->isTeacher()) {
                     $criteria->addJoin(ExaminationPeer::ID, ExaminationSubjectPeer::EXAMINATION_ID);
                     $criteria->addJoin(ExaminationSubjectPeer::ID, ExaminationSubjectTeacherPeer::EXAMINATION_SUBJECT_ID);
                     $criteria->addJoin(ExaminationSubjectTeacherPeer::TEACHER_ID, TeacherPeer::ID);
                     $criteria->addJoin(TeacherPeer::PERSON_ID, PersonPeer::ID);
                     $criteria->add(PersonPeer::IS_ACTIVE, true);
                     $criteria->add(PersonPeer::USER_ID, $user->getGuardUser()->getId());
                 }
             } else {
                 if ($event->getSubject() instanceof examination_subjectActions) {
                     $examination_id = sfContext::getInstance()->getUser()->getReferenceFor("examination");
                     $criteria->add(ExaminationSubjectPeer::EXAMINATION_ID, $examination_id);
                     $criteria->addJoin(CareerSubjectSchoolYearPeer::ID, ExaminationSubjectPeer::CAREER_SUBJECT_SCHOOL_YEAR_ID);
                     $criteria->addJoin(CareerSubjectPeer::ID, CareerSubjectSchoolYearPeer::CAREER_SUBJECT_ID);
                     $criteria->addAscendingOrderByColumn(CareerSubjectPeer::YEAR);
                     if ($user->isTeacher()) {
                         $criteria->addJoin(ExaminationSubjectPeer::ID, ExaminationSubjectTeacherPeer::EXAMINATION_SUBJECT_ID);
                         $criteria->addJoin(ExaminationSubjectTeacherPeer::TEACHER_ID, TeacherPeer::ID);
                         $criteria->addJoin(TeacherPeer::PERSON_ID, PersonPeer::ID);
                         $criteria->add(PersonPeer::IS_ACTIVE, true);
                         $criteria->add(PersonPeer::USER_ID, $user->getGuardUser()->getId());
                     }
                 } else {
                     if ($event->getSubject() instanceof manual_examination_subjectActions) {
                         $examination_id = sfContext::getInstance()->getUser()->getReferenceFor("manual_examination");
                         $criteria->add(ExaminationSubjectPeer::EXAMINATION_ID, $examination_id);
                         if ($user->isTeacher()) {
                             $criteria->addJoin(ExaminationSubjectPeer::ID, ExaminationSubjectTeacherPeer::EXAMINATION_SUBJECT_ID);
                             $criteria->addJoin(ExaminationSubjectTeacherPeer::TEACHER_ID, TeacherPeer::ID);
                             $criteria->addJoin(TeacherPeer::PERSON_ID, PersonPeer::ID);
                             $criteria->add(PersonPeer::IS_ACTIVE, true);
                             $criteria->add(PersonPeer::USER_ID, $user->getGuardUser()->getId());
                         }
                     } elseif ($event->getSubject() instanceof examination_repprovedActions) {
                         $school_year_id = sfContext::getInstance()->getUser()->getReferenceFor("schoolyear");
                         $criteria->add(ExaminationRepprovedPeer::SCHOOL_YEAR_ID, $school_year_id);
                         if ($user->isTeacher()) {
                             $criteria->addJoin(ExaminationRepprovedPeer::ID, ExaminationRepprovedSubjectPeer::EXAMINATION_REPPROVED_ID);
                             $criteria->addJoin(ExaminationRepprovedSubjectPeer::ID, ExaminationRepprovedSubjectTeacherPeer::EXAMINATION_REPPROVED_SUBJECT_ID);
                             $criteria->addJoin(ExaminationRepprovedSubjectTeacherPeer::TEACHER_ID, TeacherPeer::ID);
                             $criteria->addJoin(TeacherPeer::PERSON_ID, PersonPeer::ID);
                             $criteria->add(PersonPeer::IS_ACTIVE, true);
                             $criteria->add(PersonPeer::USER_ID, $user->getGuardUser()->getId());
                         }
                     } elseif ($event->getSubject() instanceof examination_repproved_subjectActions) {
                         $examination_repproved_id = sfContext::getInstance()->getUser()->getReferenceFor("examination_repproved");
                         $criteria->add(ExaminationRepprovedSubjectPeer::EXAMINATION_REPPROVED_ID, $examination_repproved_id);
                         ExaminationRepprovedSubjectPeer::sortedBySubject($criteria);
                         if ($user->isTeacher()) {
                             $criteria->addJoin(ExaminationRepprovedSubjectPeer::ID, ExaminationRepprovedSubjectTeacherPeer::EXAMINATION_REPPROVED_SUBJECT_ID);
                             $criteria->addJoin(ExaminationRepprovedSubjectTeacherPeer::TEACHER_ID, TeacherPeer::ID);
                             $criteria->addJoin(TeacherPeer::PERSON_ID, PersonPeer::ID);
                             $criteria->add(PersonPeer::IS_ACTIVE, true);
                             $criteria->add(PersonPeer::USER_ID, $user->getGuardUser()->getId());
                         }
                     } else {
                         if ($event->getSubject() instanceof courseActions) {
                             $school_year = SchoolYearPeer::retrieveCurrent();
                             $criteria->add(CoursePeer::DIVISION_ID, null, Criteria::ISNULL);
                             $criteria->add(CoursePeer::SCHOOL_YEAR_ID, $school_year->getId());
                             if ($user->isPreceptor()) {
                                 PersonalPeer::joinWithCourse($criteria, $user->getGuardUser()->getId());
                             }
                             if ($user->isTeacher()) {
                                 $criteria->addJoin(CoursePeer::ID, CourseSubjectPeer::COURSE_ID);
                                 $criteria->addJoin(CourseSubjectPeer::ID, CourseSubjectTeacherPeer::COURSE_SUBJECT_ID);
                                 $criteria->addJoin(CourseSubjectTeacherPeer::TEACHER_ID, TeacherPeer::ID);
                                 $criteria->addJoin(TeacherPeer::PERSON_ID, PersonPeer::ID);
                                 $criteria->add(PersonPeer::IS_ACTIVE, true);
                                 $criteria->add(PersonPeer::USER_ID, $user->getGuardUser()->getId());
                                 $criteria->setDistinct();
                             }
                         } else {
                             if ($event->getSubject() instanceof commissionActions) {
                                 /*
                                 $school_year = SchoolYearPeer::retrieveCurrent();
                                 $criteria->add(CoursePeer::SCHOOL_YEAR_ID, $school_year->getId());
                                 */
                                 CoursePeer::sorted($criteria);
                                 $criteria->add(CoursePeer::DIVISION_ID, null, Criteria::ISNULL);
                                 $criteria->add(CoursePeer::IS_PATHWAY, false);
                                 if ($user->isPreceptor()) {
                                     PersonalPeer::joinWithCourse($criteria, $user->getGuardUser()->getId());
                                 } elseif ($user->isTeacher()) {
                                     TeacherPeer::joinWithCourses($criteria, $user->getGuardUser()->getId(), true);
                                 }
                                 if ($user->isHeadPreceptor()) {
                                     self::addCommissionHeadPreceptorCriteria($criteria, $user);
                                 }
                             } else {
                                 if ($event->getSubject() instanceof final_examinationActions) {
                                     $school_year_id = sfContext::getInstance()->getUser()->getReferenceFor("schoolyear");
                                     $criteria->add(FinalExaminationPeer::SCHOOL_YEAR_ID, $school_year_id);
                                 } else {
                                     if ($event->getSubject() instanceof final_examination_subjectActions) {
                                         $final_examination_id = sfContext::getInstance()->getUser()->getReferenceFor("final_examination");
                                         $criteria->add(FinalExaminationSubjectPeer::FINAL_EXAMINATION_ID, $final_examination_id);
                                         if ($user->isTeacher()) {
                                             $criteria->addJoin(FinalExaminationSubjectTeacherPeer::TEACHER_ID, TeacherPeer::ID);
                                             $criteria->addJoin(TeacherPeer::PERSON_ID, PersonPeer::ID);
                                             $criteria->add(PersonPeer::IS_ACTIVE, true);
                                             $criteria->add(PersonPeer::USER_ID, $user->getGuardUser()->getId());
                                         }
                                     } else {
                                         if ($event->getSubject() instanceof equivalenceActions) {
                                             $student_id = sfContext::getInstance()->getUser()->getReferenceFor("student");
                                             $criteria->add(StudentCareerSchoolYearPeer::STUDENT_ID, $student_id);
                                         } else {
                                             if ($event->getSubject() instanceof sub_orientationActions) {
                                                 $orientation_id = sfContext::getInstance()->getUser()->getReferenceFor("orientation");
                                                 $criteria->add(SubOrientationPeer::ORIENTATION_ID, $orientation_id);
                                             } else {
                                                 if ($event->getSubject() instanceof student_reincorporationActions) {
                                                     $student_id = sfContext::getInstance()->getUser()->getReferenceFor("student");
                                                     if (is_null($student_id)) {
                                                         $student_id = $user->getAttribute('student_id');
                                                     }
                                                     $criteria->add(StudentReincorporationPeer::STUDENT_ID, $student_id);
                                                     $criteria->addJoin(StudentReincorporationPeer::CAREER_SCHOOL_YEAR_PERIOD_ID, CareerSchoolYearPeriodPeer::ID);
                                                     $criteria->addJoin(CareerSchoolYearPeriodPeer::CAREER_SCHOOL_YEAR_ID, CareerSchoolYearPeer::ID);
                                                     $criteria->add(CareerSchoolYearPeer::SCHOOL_YEAR_ID, SchoolYearPeer::retrieveCurrent()->getId());
                                                 } elseif ($event->getSubject() instanceof shared_course_subjectActions) {
                                                     $teacher_id = sfContext::getInstance()->getUser()->getReferenceFor("teacher");
                                                     $criteria->addJoin(CourseSubjectPeer::ID, CourseSubjectTeacherPeer::COURSE_SUBJECT_ID);
                                                     $criteria->addJoin(CourseSubjectTeacherPeer::TEACHER_ID, $teacher_id);
                                                     $criteria->setDistinct();
                                                 } elseif ($event->getSubject() instanceof personalActions) {
                                                     $criteria->add(PersonalPeer::PERSONAL_TYPE, PersonalType::PRECEPTOR);
                                                 } elseif ($event->getSubject() instanceof head_personalActions) {
                                                     $criteria->add(PersonalPeer::PERSONAL_TYPE, PersonalType::HEAD_PRECEPTOR);
                                                 } elseif ($event->getSubject() instanceof student_officeActions) {
                                                     $criteria->add(PersonalPeer::PERSONAL_TYPE, PersonalType::STUDENTS_OFFICE);
                                                 } elseif ($event->getSubject() instanceof studentActions) {
                                                     if ($user->isPreceptor()) {
                                                         SchoolBehaviourFactory::getInstance()->joinPreceptorWithStudents($criteria, $user->getGuardUser()->getId());
                                                     } elseif ($user->isTeacher()) {
                                                         TeacherPeer::joinWithStudents($criteria, $user->getGuardUser()->getId());
                                                     }
                                                     if ($user->isHeadPreceptor()) {
                                                         $criteria->addJoin(DivisionStudentPeer::STUDENT_ID, StudentPeer::ID);
                                                         $criteria->addJoin(DivisionStudentPeer::DIVISION_ID, DivisionPeer::ID);
                                                         self::addDivisionHeadPersonalCriteria($criteria, $user);
                                                     }
                                                 } elseif ($event->getSubject() instanceof licenseActions) {
                                                     if (!is_null(sfContext::getInstance()->getUser()->getReferenceFor("teacher"))) {
                                                         $person_id = TeacherPeer::retrieveByPK(sfContext::getInstance()->getUser()->getReferenceFor("teacher"))->getPersonId();
                                                     } else {
                                                         $person_id = PersonalPeer::retrieveByPK(sfContext::getInstance()->getUser()->getReferenceFor("personal"))->getPersonId();
                                                     }
                                                     $criteria->add(LicensePeer::PERSON_ID, $person_id);
                                                 } elseif ($event->getSubject() instanceof teacherActions) {
                                                     $criteria->setDistinct();
                                                 } else {
                                                     if ($event->getSubject() instanceof career_school_year_periodActions) {
                                                         $career_school_year_id = sfContext::getInstance()->getUser()->getReferenceFor("career_school_year");
                                                         $criteria->add(CareerSchoolYearPeriodPeer::CAREER_SCHOOL_YEAR_ID, $career_school_year_id);
                                                     } else {
                                                         if ($event->getSubject() instanceof student_freeActions) {
                                                             $student_id = sfContext::getInstance()->getUser()->getReferenceFor("student");
                                                             if (is_null($student_id)) {
                                                                 $student_id = $user->getAttribute('student_id');
                                                             }
                                                             $criteria->add(StudentFreePeer::STUDENT_ID, $student_id);
                                                         } else {
                                                             if ($event->getSubject() instanceof course_subject_student_examinationActions) {
                                                                 $examination_subject_id = sfContext::getInstance()->getUser()->getReferenceFor("examination_subject");
                                                                 $criteria->add(CourseSubjectStudentExaminationPeer::EXAMINATION_SUBJECT_ID, $examination_subject_id);
                                                             } else {
                                                                 if ($event->getSubject() instanceof student_examination_repproved_subjectActions) {
                                                                     $examination_repproved_subject_id = sfContext::getInstance()->getUser()->getReferenceFor("examination_repproved_subject");
                                                                     $criteria->add(StudentExaminationRepprovedSubjectPeer::EXAMINATION_REPPROVED_SUBJECT_ID, $examination_repproved_subject_id);
                                                                 } else {
                                                                     if ($event->getSubject() instanceof pathway_commissionActions) {
                                                                         $criteria->add(CoursePeer::IS_PATHWAY, true);
                                                                     }
                                                                 }
                                                             }
                                                         }
                                                     }
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                 }
             }
         }
     }
     return $criteria;
 }
예제 #4
0
 public function executeDeleteimage()
 {
     $personal = PersonalPeer::retrieveByPK($this->getRequestParameter('id'));
     $personal->setImage('');
     $personal->save();
 }
예제 #5
0
 public function executeGPersonal(sfWebRequest $request)
 {
     $this->setLayout('gestio');
     //Inicialitzem variables
     $this->IDU = $request->getParameter('IDU', $this->getUser()->getSessionPar('idU'));
     $this->IDS = $request->getParameter('IDS', $this->getUser()->getSessionPar('idS'));
     $this->DIA = $request->getParameter('DIA', time());
     $this->IDP = $request->getParameter('IDP');
     $this->OP = PersonalPeer::retrieveByPK($this->IDP);
     if (!$this->OP instanceof Personal) {
         $this->OP = new Personal();
         $this->OP->setIdusuari($this->IDU);
         $this->OP->setIddata(date('Y-m-d', $this->DIA));
         $this->OP->setSiteid($this->IDS);
         $this->OP->setText('Escriu la informació de l\'acció... ');
     }
     $this->DATAI = $this->getUser()->ParReqSesForm($request, 'DATAI', time());
     $this->CALENDARI = PersonalPeer::getHoraris($this->DATAI, $this->IDS);
     $accio = $request->getParameter('accio', 'INICIAL');
     switch ($accio) {
         //Quan entrem a la pàgina sense clicar cap dia i mostrem el calendari.
         case 'INICIAL':
             //D'entrada no cal fer res, perquè ja ho hem inicialitzat tot
             $this->DADES_DIA = PersonalPeer::getDadesUpdates($this->DIA, $this->IDU, $this->IDS);
             break;
             //Accedim directament a una acció
         //Accedim directament a una acció
         case 'ACCES_DIRECTE_ACCIO':
             //D'entrada no cal fer res, perquè ja ho hem inicialitzat tot
             $this->DADES_DIA = PersonalPeer::getDadesUpdates($this->DIA, $this->IDU, $this->IDS);
             $this->ACCIO = "DIRECTE";
             $OP = PersonalPeer::retrieveByPK($request->getParameter('IDP'));
             if ($OP instanceof Personal) {
                 $this->OP = $OP;
             }
             break;
             //Hem clicat un dia
         //Hem clicat un dia
         case 'AJAX_CLICK_DIA':
             $dades_dia = PersonalPeer::getDadesUpdates($this->DIA, $this->IDU, $this->IDS);
             return $this->renderPartial('formPersonal', array('IDS' => $this->IDS, 'IDU' => $this->IDU, 'DIA' => $this->DIA, 'DADES_DIA' => $dades_dia, 'DATAI' => $this->DATAI, 'CALENDARI' => $this->CALENDARI));
             break;
             //Fem click al botó per editar una acció.
         //Fem click al botó per editar una acció.
         case 'AJAX_EDITA_ACCIO':
             return $this->renderPartial('formPersonalFormulari', array('OP' => $this->OP, 'IDS' => $this->IDS, 'IDU' => $this->IDU, 'DIA' => $this->DIA, 'DATAI' => $this->DATAI, 'CALENDARI' => $this->CALENDARI));
             break;
             //Tornem de l'edició d'una acció sense canvis
         //Tornem de l'edició d'una acció sense canvis
         case 'AJAX_TORNA':
             $dades_dia = PersonalPeer::getDadesUpdates($this->DIA, $this->IDU, $this->IDS);
             return $this->renderPartial('formPersonal', array('OP' => $this->OP, 'IDS' => $this->IDS, 'IDU' => $this->IDU, 'DIA' => $this->DIA, 'DADES_DIA' => $dades_dia, 'DATAI' => $this->DATAI, 'CALENDARI' => $this->CALENDARI));
             break;
             //Quan guardem una edició d'una acció.
         //Quan guardem una edició d'una acció.
         case 'AJAX_GUARDA_ACCIO':
             $FIDP = $request->getParameter('FIDP');
             $FIDU = $request->getParameter('FIDU');
             $FIDT = $request->getParameter('FIDT');
             $FDIES = explode(',', $request->getParameter('FDIA'));
             $FTEXT = $request->getParameter('FTEXT');
             $FDFI = $request->getParameter('FDFI');
             $DATES = array();
             $RESULTAT = array();
             $OK = 1;
             //Si hem entrat a editar una acció i hi hem posat més d'una data, esborrem el que estavem editant i creem els nous
             if (sizeof($FDIES) > 1 && $FIDP > 0) {
                 $OP = PersonalPeer::retrieveByPK($FIDP);
                 if ($OP instanceof Personal) {
                     $OP->setUsuariupdateid($this->IDU);
                     $OP->setActiu(false);
                     $OP->setDatabaixa(date('Y-m-d', time()));
                     $OP->save();
                 }
                 //Hem entrat un IDP i només una data.
             } elseif ($FIDP > 0 && sizeof($FDIES) == 1) {
                 $OK = PersonalPeer::doSave($FIDP, $FDIES[0], $FIDU, $FIDT, $FTEXT, $this->IDU, $this->IDS, $FDFI) && $OK;
                 //Hem entrat una nova acció
             } else {
                 //Crearem una nova acció per cada dia que hem entrat.
                 foreach ($FDIES as $DIA) {
                     $OK = PersonalPeer::doSave($FIDP, $DIA, $FIDU, $FIDT, $FTEXT, $this->IDU, $this->IDS, $FDFI) && $OK;
                 }
             }
             //Retornem al llistat inicial
             $this->CALENDARI = PersonalPeer::getHoraris($this->DATAI, $this->IDS);
             return $this->renderPartial('formPersonal', array('OP' => $this->OP, 'IDS' => $this->IDS, 'IDU' => $this->IDU, 'DIA' => $this->DIA, 'DADES_DIA' => $dades_dia, 'DATAI' => $this->DATAI, 'CALENDARI' => $this->CALENDARI));
             break;
             //Esborrem una acció determinada
         //Esborrem una acció determinada
         case 'AJAX_ESBORRA_ACCIO':
             $FIDP = $request->getParameter('FIDP');
             $OP = PersonalPeer::retrieveByPK($FIDP);
             if ($OP instanceof Personal) {
                 $OP->setUsuariupdateid($this->IDU);
                 $OP->setDatabaixa(date('Y-m-d', time()));
                 $OP->setActiu(false);
                 $OP->save();
             }
             $this->CALENDARI = PersonalPeer::getHoraris($this->DATAI, $this->IDS);
             return $this->renderPartial('formPersonal', array('OP' => $this->OP, 'IDS' => $this->IDS, 'IDU' => $this->IDU, 'DIA' => $this->DIA, 'DADES_DIA' => $dades_dia, 'DATAI' => $this->DATAI, 'CALENDARI' => $this->CALENDARI));
             break;
     }
 }
 public function getPersonal($con = null)
 {
     include_once 'lib/model/om/BasePersonalPeer.php';
     if ($this->aPersonal === null && $this->personal_id !== null) {
         $this->aPersonal = PersonalPeer::retrieveByPK($this->personal_id, $con);
     }
     return $this->aPersonal;
 }
예제 #7
0
 public function executeGPersonal(sfWebRequest $request)
 {
     $this->setLayout('gestio');
     $this->IDS = $this->getUser()->getSessionPar('idS');
     $this->CALENDARI = array();
     $this->ERROR = array();
     $this->USUARI = $this->getUser()->getSessionPar('idU');
     //Identificador de línia
     $this->IDP = $request->getParameter('IDPERSONAL');
     //Data i usuari a qui se li aplica l'assignació
     $this->DATE = $this->getUser()->ParReqSesForm($request, 'DATE', time());
     $this->IDU = $this->getUser()->ParReqSesForm($request, 'IDU', time());
     //Data del calendari
     $this->DATAI = $this->getUser()->ParReqSesForm($request, 'DATAI', time());
     $accio = $request->getParameter('accio');
     if ($request->hasParameter('BSAVE')) {
         $accio = "SAVE_CHANGE";
     }
     if ($request->hasParameter('BDELETE')) {
         $accio = "DELETE_CHANGE";
     }
     $this->CALENDARI = PersonalPeer::getHoraris($this->DATAI, $this->IDS);
     //Sempre carreguem el calendari
     //Cliquem un dia i apareix el llistat
     //Veiem la descripció
     switch ($accio) {
         case 'CC':
             $this->getUser()->addLogAction('inside', 'gPersonal');
             break;
         case 'EDIT_DATE':
             $this->GPersonal_LoadDadesDia();
             break;
         case 'NEW_CHANGE':
             $this->GPersonal_LoadDadesDia();
             $this->FPERSONAL = PersonalPeer::initialize($this->USUARI, $this->DATE, $this->IDU, null, $this->IDS);
             break;
         case 'EDIT_CHANGE':
             $this->GPersonal_LoadDadesDia();
             $this->FPERSONAL = PersonalPeer::initialize($this->USUARI, $this->DATE, $this->IDU, $this->IDP, $this->IDS);
             break;
         case 'SAVE_CHANGE':
             $RP = $request->getParameter('personal');
             list($year, $month, $day) = explode("-", $RP['idData']);
             $idP = $RP['idPersonal'];
             $idU = $RP['idUsuari'];
             $idD = mktime(0, 0, 0, $month, $day, $year);
             $this->FPERSONAL = PersonalPeer::initialize($this->USUARI, $idD, $idU, $idP, $this->IDS);
             $this->FPERSONAL->bind($RP);
             $this->IDP = $this->FPERSONAL->getObject()->getIdpersonal();
             $this->IDU = $idU;
             $this->DATE = $idD;
             if ($this->FPERSONAL->isValid()) {
                 $this->FPERSONAL->save();
                 $this->getUser()->addLogAction($accio, 'gPersonal', $this->FPERSONAL->getObject());
                 $this->redirect('gestio/gPersonal?accio=EDIT_DATE&DATE=' . $idD . '&IDU=' . $idU);
             } else {
                 $this->ERROR[] = "Hi ha algun problema amb el formulari.";
             }
             $this->GPersonal_LoadDadesDia();
             break;
         case 'DELETE_CHANGE':
             $RP = $request->getParameter('personal');
             list($year, $month, $day) = explode("-", $RP['idData']);
             $idP = $RP['idPersonal'];
             $idU = $RP['idUsuari'];
             $idD = mktime(0, 0, 0, $month, $day, $year);
             $OP = PersonalPeer::retrieveByPK($RP['idPersonal']);
             $OP->setDatabaixa(date('Y-m-d', time()));
             $OP->setUsuariupdateid($this->USUARI);
             $OP->setActiu(false);
             $OP->save();
             $this->getUser()->addLogAction($accio, 'gPersonal', $OP);
             $this->redirect('gestio/gPersonal?accio=EDIT_DATE&DATE=' . $idD . '&IDU=' . $idU);
             break;
     }
 }