Example #1
0
 /**
  * Signs user up.
  *
  * @return User|null the saved model or null if saving fails
  */
 public function signup()
 {
     if ($this->validate()) {
         $user = new AitkRAccount();
         $user->username = $this->username;
         //            $user->email = $this->email;
         $user->setPassword($this->password);
         //              $user->generateAuthKey();
         if ($user->save()) {
             return $user;
         }
     }
     return null;
 }
Example #2
0
 /**
  * Finds user by [[username]]
  *
  * @return User|null
  */
 public function getUser()
 {
     if ($this->_user === false) {
         $this->_user = AitkRAccount::findByUsername($this->username);
     }
     return $this->_user;
 }
Example #3
0
 public function actionBaak($nim = null, $kelas_id = null)
 {
     if (Yii::$app->user->isGuest) {
         $this->redirect(Yii::$app->homeUrl);
     }
     $akun = \common\models\AitkRAccount::findOne(Yii::$app->user->id);
     /* HAPUS INI UNTUK PENGGUNAAN RBAC */
     /*         * **** */
     if ($akun->username !== 'baakitdel') {
         throw new \yii\web\HttpException(403, 'You not authorized to enter this', 405);
     }
     /*         * **** */
     $searchModel = new AitkRequestSearchReport();
     $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
     $model = new \backend\modules\aitk\models\FormSearchReport();
     $nama = "";
     $kelas = null;
     $mhs = null;
     $matakuliah = array();
     $arrMatakuliah = null;
     $arrMatakuliahId = array();
     $totalTeori = array();
     $totalPrak = array();
     $totalLainnya = array();
     $mahasiswaAll = array();
     $Tipe = array("Tidak Hadir", "Keluar Kampus");
     //
     //        if(isset( $kelas)) {
     //             $mahasiswaAll = AitkRMahasiswa::findAll(["kelas_id" => $kelas->kelas_id]);
     //
     //        }
     if (isset($nim)) {
         $mhs = AitkRMahasiswa::findOne(['nim' => $nim, 'kelas_id' => $kelas_id]);
         if (isset($mhs)) {
             $class = AitkRKelas::findOne($kelas_id);
             $dataProvider = new ActiveDataProvider(['query' => AitkRequest::find()->where(['status_dosen' => 1, 'status_asrama' => 1, 'dosen_wali' => $class->wali, 'mahasiswa_id' => $mhs->mahasiswa_id]), 'pagination' => ['pageSize' => 3], 'sort' => ['defaultOrder' => ['request_id' => SORT_DESC]]]);
             $kelas = null;
             $arr = $this->MahasiswaReport($mhs);
             $totalTeori = $arr["totalTeori"];
             $totalPrak = $arr["totalPrak"];
             $totalLainnya = $arr["totalLainnya"];
             $tidkHadir = $arr["tidkHadir"];
             $keluar = $arr["keluar"];
             $arrMatakuliah = $arr["arrMatakuliah"];
             $totalIjin = array($tidkHadir, $keluar);
             return $this->render('bkreport_one', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'model' => $model, 'mahasiswa' => $mhs, 'kelas' => $kelas, 'arrMatakuliah' => $arrMatakuliah, 'totalTeori' => $totalTeori, 'totalPrak' => $totalPrak, 'totalLainnya' => $totalLainnya, 'Tipe' => $Tipe, 'totalIzin' => $totalIjin, 'mahasiswaAll' => $mahasiswaAll]);
         } else {
             throw new \yii\web\HttpException(404, 'Student is not From this Class', 404);
         }
     }
     if ($model->load(Yii::$app->request->post())) {
         $nama = current(explode('(', $model->nama_mahasiswa));
         $kelas = AitkRKelas::findOne($model->kelas);
         $tidkHadir = 0;
         $keluar = 0;
         $mhs = AitkRMahasiswa::findOne(['nama_mahasiswa' => $nama]);
         if (isset($kelas)) {
             $sampleMhs = AitkRMahasiswa::findOne(['kelas_id' => $kelas->kelas_id]);
             $matakuliah = AitkRMatakuliah::find()->where(['semester' => $sampleMhs->semester])->andWhere(['jurusan' => NULL])->orWhere(['jurusan' => $sampleMhs->jurusan])->all();
             foreach ($matakuliah as $kul) {
                 $arrMatakuliah[] = $kul["alias"];
             }
             $mahasiswaAll = AitkRMahasiswa::findAll(["kelas_id" => $kelas->kelas_id]);
             $arr = array();
             $arrTotalTeoriKelas = array();
             $arrTotalPrakKelas = array();
             $arrTotalLainnyaKelas = array();
             $arrTotalTidakHadirKelas = array();
             $arrTotalKeluarKampusKelas = array();
             foreach ($mahasiswaAll as $mahasiswa) {
                 $arr[] = $this->MahasiswaReport($mahasiswa);
                 $arrTotalTeoriKelas[] = $this->MahasiswaReport($mahasiswa)["totalTeori"];
                 $arrTotalPrakKelas[] = $this->MahasiswaReport($mahasiswa)["totalPrak"];
                 $arrTotalLainnyaKelas[] = $this->MahasiswaReport($mahasiswa)["totalLainnya"];
                 $arrTotalTidakHadirKelas[] = $this->MahasiswaReport($mahasiswa)["tidkHadir"];
                 $arrTotalKeluarKampusKelas[] = $this->MahasiswaReport($mahasiswa)["keluar"];
             }
             $totalTeori = $this->sumArrayValues($arrTotalTeoriKelas);
             $totalPrak = $this->sumArrayValues($arrTotalPrakKelas);
             $totalLainnya = $this->sumArrayValues($arrTotalLainnyaKelas);
             $tidkHadir = array_sum($arrTotalTidakHadirKelas);
             $keluar = array_sum($arrTotalKeluarKampusKelas);
         }
         if (isset($mhs)) {
             $arr = $this->MahasiswaReport($mhs);
             $totalTeori = $arr["totalTeori"];
             $totalPrak = $arr["totalPrak"];
             $totalLainnya = $arr["totalLainnya"];
             $tidkHadir = $arr["tidkHadir"];
             $keluar = $arr["keluar"];
             $arrMatakuliah = $arr["arrMatakuliah"];
             //                $Tipe = array("Tidak Hadir", "Keluar Kampus");
             $totalIjin = array($tidkHadir, $keluar);
             $dataProvider = new ActiveDataProvider(['query' => AitkRequest::find()->where(['status_dosen' => 1, 'status_asrama' => 1, 'mahasiswa_id' => $mhs->mahasiswa_id]), 'pagination' => ['pageSize' => 3], 'sort' => ['defaultOrder' => ['request_id' => SORT_DESC]]]);
             return $this->render('baak', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'model' => $model, 'mahasiswa' => $mhs, 'kelas' => $kelas, 'arrMatakuliah' => $arrMatakuliah, 'mahasiswaAll' => $mahasiswaAll, 'totalTeori' => $totalTeori, 'totalPrak' => $totalPrak, 'totalLainnya' => $totalLainnya, 'Tipe' => $Tipe, 'totalIzin' => $totalIjin]);
         }
         $Tipe = array("Tidak Hadir", "Keluar Kampus");
         $totalIjin = array($tidkHadir, $keluar);
         //            $model->nama_mahasiswa = $model->nama_mahasiswa;
         return $this->render('baak', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'model' => $model, 'mahasiswa' => $mhs, 'kelas' => $kelas, 'arrMatakuliah' => $arrMatakuliah, 'mahasiswaAll' => $mahasiswaAll, 'totalTeori' => $totalTeori, 'totalPrak' => $totalPrak, 'totalLainnya' => $totalLainnya, 'Tipe' => $Tipe, 'totalIzin' => $totalIjin]);
     } else {
         return $this->render('baak', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'model' => $model]);
     }
 }