/** var @count int $name Description * */ public function actionRequestizin() { $model = new FormIzin(); $idUser = Yii::$app->user->id; $mahasiswaLogin = AitkRMahasiswa::find()->where(['account_id' => $idUser])->one(); /* HAPUS INI UNTUK PENGGUNAAN RBAC */ /* * **** */ if (!isset($mahasiswaLogin)) { $this->redirect(Yii::$app->homeUrl); } /* * **** */ $semester = $mahasiswaLogin->semester; $jurusan = $mahasiswaLogin->jurusan; $count = AitkRMatakuliah::find()->where(['semester' => $semester])->andWhere(['jurusan' => NULL])->orWhere(['jurusan' => $jurusan])->count(); $allMatakuliah = AitkRMatakuliah::find()->where(['semester' => $semester])->andWhere(['jurusan' => NULL])->orWhere(['jurusan' => $jurusan])->orderBy('matakuliah_id')->all(); $matkulId = array(); $arrMatkul = array(); foreach ($allMatakuliah as $valueMatkul => $key) { foreach ($key as $val => $isi) { if ($val == "alias") { $arrMatkul[] = $key[$val]; } } } foreach ($allMatakuliah as $valueMatkul => $key) { foreach ($key as $val => $isi) { if ($val == "matakuliah_id") { $matkulId[] = $key[$val]; } } } $model->nama_mahasiswa = $mahasiswaLogin->nama_mahasiswa; $model->nim = $mahasiswaLogin->nim; $model->kelas = $mahasiswaLogin->kelas->kode_kelas; $model->semester = $mahasiswaLogin->semester; $model->dosen_wali = $mahasiswaLogin->kelas->wali0->nama_dosen; if ($model->load(Yii::$app->request->post())) { if (!$model->validate()) { return $this->render('requestIzin', ['model' => $model, 'count' => $count, 'arrMatkul' => $arrMatkul, 'matkulId' => $matkulId, 'mahasiswaLogin' => $mahasiswaLogin]); } $model->file_lampiran = UploadedFile::getInstance($model, 'file_lampiran'); $currdate = date("Y-m-d"); $nama_file = ""; if ($model->file_lampiran) { if (empty($model->lampiran)) { Yii::$app->getSession()->setFlash('warning', ['type' => 'warning', 'delay' => 50000, 'icon' => 'glyphicon glyphicon-warning-sign', 'message' => 'Jika memiliki photo lampiran, pastikan isi kode surat/lampiran tersebut', 'title' => 'Lampiran salah']); return $this->redirect(['requestizin']); } $nama_file = $currdate . $mahasiswaLogin->nim . current(explode(' ', $model->lampiran)) . '.' . $model->file_lampiran->extension; $model->file_lampiran->saveAs('file_lampiran/' . $nama_file); } $tanggal = explode(' ', $model->tanggal); if (!empty($model->tanggal)) { $request = new AitkRequest(); $request->alasan_ijin = $model->alasan_ijin; $request->dosen_wali = $mahasiswaLogin->kelas->wali0->dosen_id; $request->mahasiswa_id = $mahasiswaLogin->mahasiswa_id; $request->tujuan_sms_pengurus = $model->tujuan_sms; $request->lampiran = $model->lampiran; $request->requester = $mahasiswaLogin->mahasiswa_id; $request->tipe_ijin = strtolower($model->tipe_ijin) == 'k' ? 'Keluar' : (strtolower($model->tipe_ijin) == 's' ? 'Tidak Hadir' : ''); $request->file_lampiran = $nama_file; $request->waktu_start = $tanggal[0] . ' ' . $tanggal[1]; $request->waktu_end = $tanggal[3] . ' ' . $tanggal[4]; if ($request->save()) { $nama = $request->mahasiswa->nama_mahasiswa; $nim = $request->mahasiswa->nim; $tempMulai = explode(' ', $request->waktu_start)[1]; $tempSelesai = explode(' ', $request->waktu_end)[1]; $mulai = substr($tempMulai, 0, 5); $selesai = substr($tempSelesai, 0, 5); $tipeIzin = $request->tipe_ijin == "K" ? "Keluar" : "Tidak Hadir"; $id = $request->request_id; $sms = current(explode(" ", $nama)) . "/" . $nim . "/" . $request->mahasiswa->angkatan . " " . $tipeIzin . " " . $mulai . "-" . $selesai . " \"" . $request->alasan_ijin . "\" " . "balas 'IZIN YA {$id}' atau 'IZIN TIDAK {$id}'"; $this->sendSMS($sms, $mahasiswaLogin->kelas->wali0->handphone); $status = count($model->matakuliahList); // echo $status; // die(); if (strtolower($model->tipe_ijin) == 's') { if ($status > 0) { $this->InsertToTemp($model, $request->request_id); } } return $this->redirect(['index']); } else { Yii::$app->getSession()->setFlash('danger', ['type' => 'danger', 'delay' => 50000, 'icon' => 'glyphicon glyphicon-exclamation-sign', 'message' => 'Tidak Dapat Menyimpan Data', 'title' => 'Error Saat Menyimpan Data']); // return $this->redirect(['requestizin']); } } else { Yii::$app->getSession()->setFlash('warning', ['type' => 'warning', 'delay' => 50000, 'icon' => 'glyphicon glyphicon-warning-sign', 'message' => 'Tolong Field Waktu Izin Di Isi', 'title' => 'Waktu Izin Tidak di Isi']); return $this->redirect(['requestizin']); } // } } else { return $this->render('requestIzin', ['model' => $model, 'count' => $count, 'arrMatkul' => $arrMatkul, 'matkulId' => $matkulId, 'mahasiswaLogin' => $mahasiswaLogin]); } }