public static function getAllSubject() { $query = Subjects::find()->orderBy('id desc'); $countQuery = clone $query; $pages = new Pagination(['totalCount' => $countQuery->count()]); $pages->defaultPageSize = 27; $models = $query->offset($pages->offset)->limit($pages->limit)->all(); return ['models' => $models, 'pages' => $pages]; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Subjects::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); if (!($this->load($params) && $this->validate())) { return $dataProvider; } $query->andFilterWhere(['SubjectId' => $this->SubjectId, 'CourseCode' => $this->CourseCode, 'CourseTitle' => $this->CourseTitle, 'Units' => $this->Units]); return $dataProvider; }
public function actionUpload() { $fileName = 'file'; $request = Yii::$app->request; $value = array(); if (empty(Yii::$app->session['user_id'])) { return json_encode(Util::arrayError('Bạn chưa đăng nhập', '')); } $value['user'] = Yii::$app->session['user_id']; $name = $request->post('name', ''); if (empty($name)) { return json_encode(Util::arrayError('Tên tài liệu không được để trống', '')); } $subject = $request->post('subject', ''); if (empty($subject)) { return json_encode(Util::arrayError('Bạn phải lựa chọn môn học', '')); } $value['name'] = HtmlPurifier::process($name); $value['description'] = HtmlPurifier::process($request->post('description', '')); $value['subject'] = HtmlPurifier::process($subject); $check_subject = Subjects::find()->where(['id' => $request->post('subject', '')])->count(); if ($check_subject == 0) { return json_encode(Util::arrayError('Không tồn tại môn học này', '')); } if (isset($_FILES[$fileName])) { $uploaded = Util::upload($fileName); if ($uploaded['status'] == false) { return json_encode($uploaded['message']); } else { $value['path'] = $uploaded['path']; $value['preview'] = $uploaded['preview']; $value['pdf'] = $uploaded['pdf']; $value['original_url'] = $uploaded['original_url']; $value['scribd_id'] = $uploaded['scribd_id']; $message = Documents::upload($value); return json_encode($message); } } else { return json_encode(Util::arrayError('Bạn phải đính kèm file', '')); } return false; }
public static function getDocumentsByWishlist($user) { $query = Documents::find()->join('JOIN', 'wishlist', '`wishlist`.`doc_id`=`documents`.`id`')->where(['wishlist.user_id' => $user])->orderBy('wishlist.created_at desc'); $countQuery = clone $query; $pages = new Pagination(['totalCount' => $countQuery->count()]); $pages->defaultPageSize = 27; $models = $query->offset($pages->offset)->limit($pages->limit)->all(); if (!Yii::$app->cache->exists('subjects')) { $subjects = Subjects::find()->orderBy('name', 'desc')->all(); Yii::$app->cache->add('subjects', $subjects, 3600); } else { $subjects = Yii::$app->cache->get('subjects'); } return ['models' => $models, 'pages' => $pages, 'subjects' => $subjects]; }
public static function getSubjects() { if (!Yii::$app->cache->exists('subjects')) { $subjects = Subjects::find()->orderBy('name', 'desc')->all(); Yii::$app->cache->add('subjects', $subjects, 3600); } else { $subjects = Yii::$app->cache->get('subjects'); } return $subjects; }