Пример #1
0
 /**
  * Updates an existing GivenTask model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id
  * @return mixed
  */
 public function actionGive()
 {
     $result = -1;
     if (Yii::$app->request->post()) {
         $result = GivenTask::createGivenTask(Yii::$app->request->post());
         if ($result) {
             return $this->redirect(Yii::$app->request->referrer);
         }
     }
     $model = new GivenTask();
     $model->status = 0;
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
     } else {
         if (isset(Yii::$app->request->post()['dropdown'])) {
             $drop = Yii::$app->request->post()['dropdown'];
         } else {
             $drop = 0;
         }
         if (isset(Yii::$app->request->post()['exersices'])) {
             return $this->renderAjax('give', ['model' => $model]);
         }
         return $this->renderAjax('give', ['model' => $model]);
     }
 }
Пример #2
0
 public static function createGivenTask($post)
 {
     if (isset($post['exersices']) && isset($post['students']) && isset($post['discipline']) && isset($post['task'])) {
         $exersices = $post['exersices'];
         $students = $post['students'];
         $discipline = $post['discipline'];
         $teacher = Yii::$app->user->identity->teacher->id;
         $task = $post['task'];
         $deadline = 0;
         if (isset($post['deadline_date'])) {
             $deadline = Yii::$app->formatter->asTimestamp($post['deadline_date']);
         }
         $given_date = date('U');
         if (isset($post['given_date'])) {
             $given_date = Yii::$app->formatter->asTimestamp($post['given_date']);
         }
         $group_key = md5($given_date);
         $noerror = true;
         foreach ($students as $student) {
             $model = new GivenTask();
             $model->given_date = $given_date;
             $model->student_id = $student;
             $model->teacher_id = $teacher;
             $model->ghd_id = $discipline;
             $model->task_id = $task;
             $model->deadline_date = $deadline;
             $model->group_key = $group_key;
             if ($model->save()) {
                 foreach ($exersices as $exersice) {
                     $eModel = new GivenExercise();
                     $eModel->exercise_id = $exersice;
                     $eModel->given_task_id = $model->getPrimaryKey();
                     $eModel->save();
                 }
             } else {
                 $noerror = false;
             }
         }
         return $noerror;
     } else {
         return false;
     }
 }