示例#1
0
 public function actionDeleteSeminar()
 {
     $response = array();
     if (isset($_POST['s_id']) && isset($_POST['student_id'])) {
         /*get ID student seminars save*/
         $criteria = new CDbCriteria();
         $criteria->addCondition('student_id = ' . $_POST['student_id'] . '');
         $criteria->addCondition('seminar_id = ' . $_POST['s_id'] . '');
         $studentSeminar = RsStudentSeminar::model()->find($criteria);
         if ($studentSeminar->attended == 0) {
             RsStudentSeminar::model()->deleteAll('id = :id', array('id' => $studentSeminar->id));
         } else {
             $studentSeminar->apply_code = NULL;
             $studentSeminar->save();
             /*set response*/
             $response['save'] = "ok";
         }
         echo json_encode($response);
     }
 }
示例#2
0
 public function actionConfirmAttended()
 {
     $action = $_POST['action'];
     $st_id = $_POST['st_id'];
     $s_id = $_POST['s_id'];
     $student = RsStudentSeminar::model()->find('student_id=:st_id AND seminar_id=:s_id', array(':st_id' => $st_id, ':s_id' => $s_id));
     switch ($action) {
         case 1:
             $student->attended = 1;
             if ($student->save()) {
                 Yii::app()->user->setFlash('success', Yii::t("backend", Yii::t("admin", "seminar.confirm.attention.success")));
             } else {
                 Yii::app()->user->setFlash('success', Yii::t("backend", Yii::t("admin", "seminar.confirm.attention.fail")));
             }
             break;
         case 2:
             $student = new RsStudentSeminar();
             $student->student_id = $st_id;
             $student->seminar_id = $s_id;
             $student->attended = 1;
             if ($student->save()) {
                 Yii::app()->user->setFlash('success', Yii::t("backend", Yii::t("admin", "seminar.todayRegister.success")));
             } else {
                 Yii::app()->user->setFlash('error', Yii::t("backend", Yii::t("admin", "seminar.todayRegister.fail")));
             }
             break;
         case 3:
             // change attention status to 0
             $student->attended = 0;
             if ($student->save()) {
                 Yii::app()->user->setFlash('success', Yii::t("backend", Yii::t("admin", "seminar.remove.attention.success")));
             } else {
                 Yii::app()->user->setFlash('error', Yii::t("backend", Yii::t("admin", "seminar.remove.attention.fail")));
             }
             break;
         default:
             # code...
             break;
     }
     // if ($student->update() OR $student->save()) {
     //     Yii::app()->user->setFlash('success',Yii::t("backend", "出席登録は完了しました。"));
     // } else {
     //     Yii::app()->user->setFlash('success',Yii::t("backend", "出席登録は失敗しました。"));
     // }
 }
示例#3
0
 public function actionEditStatusStudentList()
 {
     $data = array();
     $st_crit = new CDbCriteria();
     // criteria to query student infomation
     $st_id = $_POST['st_id'];
     $st_crit->params[':st_id'] = $st_id;
     $st_crit->condition = 'id=:st_id';
     $student = RsStudent::model()->find($st_crit);
     //student infomation
     $criteria = new CDbCriteria();
     // criteria to query seminar list
     $criteria->together = true;
     $criteria->with = array('seminar' => array('select' => 'seminar.*', 'together' => true));
     $criteria->condition = 'student_id=:st_id';
     $criteria->params[':st_id'] = $st_id;
     $criteria->addCondition('attended = 1 OR apply_code IS NOT NULL');
     $count = RsStudentSeminar::model()->count($criteria);
     $pages = new CPagination($count);
     if (isset($_POST['page']) && (int) $_POST['page'] >= 0) {
         $pages->currentPage = (int) $_POST['page'] - 1;
     }
     $pages->pageSize = 10;
     $pages->applyLimit($criteria);
     $criteria->order = 'start_date DESC, from_time ASC, to_time ASC';
     $seminars = RsStudentSeminar::model()->findAll($criteria);
     $data['pages'] = $pages;
     $data['student'] = $student;
     $data['seminars'] = $seminars;
     echo $this->renderPartial('_editStatusStudentList', $data, true);
 }