Example #1
0
 /**
  * Az éppen bejelentkezett felhasználó számára a megadott tantárgyakból a hiányzásokat lenullázza.
  * @param int $subject_id A tantárgy azonosítója
  */
 public function actionResetAbsenteeism($subject_id)
 {
     //Be van jelentkezve a felhasználó?
     if (!Yii::app()->user->getId()) {
         throw new CHttpException(403, "Ennek a funkciónak a használatához be kell jelentkeznie");
     }
     //Csak ellenőrzésként, hogy ez a tárgy tényleg létezik-e
     $model = Subject::model()->findByPk((int) $subject_id);
     if ($model == null) {
         throw new CHttpException(404, "A kért elem nem található");
     }
     $Absenteeism = UserAbsenteeism::model()->findByAttributes(array('user_id' => Yii::app()->user->getId(), 'subject_id' => $subject_id));
     if ($Absenteeism != null) {
         if (!$Absenteeism->delete()) {
             print 'fail';
         }
     }
     print 'ok';
 }
Example #2
0
 /**
  * Megjeleníti a tantárgy adatlapját. Bejelentkezett hallgató esetén a hiányzásokat is lekérdezi.
  * @param int $id A tantárgy azonosítója
  */
 public function actionDetails($id)
 {
     $model = Subject::model()->findByPk((int) $id);
     if ($model == null) {
         throw new CHttpException(404, "A kért elem nem található");
     }
     //Előfeltételek lekérdezése
     $dependencies = array();
     foreach ($model->dependencies as $dependency) {
         $Subj = Subject::Model()->findByPk($dependency->dependent_subject_id);
         $dependencies[] = array("id" => $Subj->subject_id, "name" => $Subj->name, "dependency_id" => $dependency->dependency_id, "shortName" => $Subj->shortName, "semester" => $Subj->semester, "group" => $Subj->group->group_name);
     }
     //Rá épülő tárgyak
     $Based_on = array();
     foreach ($model->based_on as $current) {
         $Subj = Subject::Model()->findByPk($current->subject_id);
         $Based_on[] = array("id" => $Subj->subject_id, "shortName" => $Subj->shortName, "semester" => $Subj->semester, "group" => $Subj->group->group_name);
     }
     //Hiányzások
     $Misses = 0;
     if (Yii::app()->user->getId()) {
         $Absenteeism = UserAbsenteeism::model()->findByAttributes(array('user_id' => Yii::app()->user->getId(), 'subject_id' => $id));
         if ($Absenteeism != null) {
             $Misses = $Absenteeism->count;
         }
     }
     $this->render('details', array('based_on' => $Based_on, 'data' => $model, 'dependencies' => $dependencies, 'Misses' => $Misses));
 }