public function getKelasMember($kodeKelas, $kodeGrup)
 {
     $data = array('mahasiswa' => Mhskelas::with('mhs')->where('kodekelas', '=', $kodeKelas)->whereNotExists(function ($query) use($kodeKelas, $kodeGrup) {
         $query->select(DB::raw('nim'))->from('anggota_grup')->whereRaw('mhskelas.nim = anggota_grup.nim')->where('anggota_grup.kodekelas', '=', $kodeKelas)->where('anggota_grup.id_grup', '=', $kodeGrup);
     })->get(), 'kodeKelas' => $kodeKelas, 'kodeGrup' => $kodeGrup);
     return view('frontend.includes.grup-member-add')->with($data);
 }
 public function getData($id, $title, $kode)
 {
     $dateNow = Carbon::now();
     $kelasDosen = Perkuliahan::select('kodekelas')->where('nip', '=', $id)->get()->toArray();
     $data = array('dosen' => DB::table('dosen')->where('nip', $id)->first(), 'dosenProfile' => Dosen::where('nip', '=', Request::segment(3))->first(), 'kelas' => Mhskelas::with(array('mhs', 'perkuliahan', 'mk'))->where('nim', '=', $id)->get(), 'kelasDosen' => Perkuliahan::with(array('mk', 'dosen'))->where('nip', '=', $id)->get(), 'title' => $title, 'listPerkuliahan' => ['' => '-- Pilih kelas --'] + Mhskelas::select('matakuliah.namamk', 'mhskelas.kodekelas')->join('matakuliah', 'mhskelas.kodemk', '=', 'matakuliah.kodemk')->join('mahasiswa', 'mhskelas.nim', '=', 'mahasiswa.nim')->where('mahasiswa.nim', '=', $id)->lists('matakuliah.namamk', 'mhskelas.kodekelas'), 'perkuliahanDosen' => ['' => '-- Pilih kelas --'] + Perkuliahan::select('perkuliahan.kodekelas', 'matakuliah.namamk')->join('matakuliah', 'matakuliah.kodemk', '=', 'perkuliahan.kodemk')->where('perkuliahan.nip', '=', $id)->lists('matakuliah.namamk', 'perkuliahan.kodekelas'), 'grup' => AnggotaGrup::select('grup.nama', 'grup.kodekelas')->join('grup', 'grup.id', '=', 'anggota_grup.id_grup')->where('anggota_grup.nim', '=', $id)->get(), 'post' => Post::with(array('komentar', 'mhs', 'perkuliahan'))->where('creator', '=', $id)->get(), 'postKelas' => Post::with(array('komentar', 'mhs', 'perkuliahan'))->where('id_scope', '=', $kode)->get(), 'kelasMember' => Mhskelas::with('mhs')->where('kodekelas', '=', $kode)->get(), 'infokelas' => Perkuliahan::with('mk', 'dosen')->where('kodekelas', '=', $kode)->first(), 'tugasDosen' => Tugas::where('pengumpulan', '>=', $dateNow)->whereIn('kelas', $kelasDosen)->get(), 'pengumumanDosen' => Pengumuman::where('waktuaktif', '>=', $dateNow)->whereIn('kodekelas', $kelasDosen)->get());
     return $data;
 }
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store(Request $request)
 {
     $nim = $request->input('nim');
     $kodekelas = $request->input('kodekelas');
     $kodemk = $request->input('kodemk');
     if (is_array($nim)) {
         foreach ($nim as $value) {
             $Mhskelas = new Mhskelas();
             $Mhskelas->kodekelas = $kodekelas;
             $Mhskelas->nim = $value;
             //$Mhskelas->id_mhs =
             $Mhskelas->kodemk = $kodemk;
             $Mhskelas->save();
         }
     }
 }
 public function getPost($kode, $kodeGrup)
 {
     if ($kodeGrup == 0) {
         $segmentKelas = "true";
         $segmentGrup = "false";
     } elseif ($kodeGrup > 0) {
         $segmentKelas = "false";
         $segmentGrup = "true";
     } else {
         $segmentKelas = "false";
         $segmentGrup = "false";
     }
     $id = Session::get('user');
     if (Auth::user()->role == "mahasiswa") {
         $foto = Mahasiswa::where('nim', '=', $id)->first();
         //Mendapatkan Array Kelas
         $kelasTmp = Mhskelas::select('kodekelas')->where('nim', '=', $id)->get();
         for ($i = 0; $i < count($kelasTmp); $i++) {
             $kelas[$i] = $kelasTmp[$i]['kodekelas'];
         }
         //Mendapatkan Array Grup
         $grupTmp = AnggotaGrup::select('id_grup')->where('nim', '=', $id)->get();
         for ($i = 0; $i < count($grupTmp); $i++) {
             $grup[$i] = $grupTmp[$i]['id_grup'];
         }
         $scope = array_merge($kelas, $grup);
     } else {
         $foto = Dosen::where('nip', '=', $id)->first();
         $kelasTmp = Perkuliahan::select('kodekelas')->where('nip', '=', $id)->get();
         for ($i = 0; $i < count($kelasTmp); $i++) {
             $scope[$i] = $kelasTmp[$i]['kodekelas'];
         }
     }
     $data = array('post' => Post::with(array('komentar', 'mhs', 'dosen', 'perkuliahan'))->whereIn('id_scope', $scope)->orderBy('id', 'desc')->take(10)->get(), 'postKelas' => Post::with(array('komentar', 'mhs', 'dosen', 'perkuliahan', 'grup'))->where('id_scope', '=', $kode)->where('scope', '=', 'kelas')->orderBy('id', 'desc')->get(), 'postGrup' => Post::with(array('komentar', 'mhs', 'grup', 'perkuliahan'))->where('id_scope', '=', $kodeGrup)->where('scope', '=', 'grup')->orderBy('id', 'desc')->get(), 'foto' => $foto, 'segmentKelas' => $segmentKelas, 'segmentGrup' => $segmentGrup);
     return view('frontend.includes.posts')->with($data);
 }
 public function getMhsKelas($id)
 {
     $mhskelas = Mhskelas::with('mhs')->where('kodekelas', '=', $id)->get();
     return json_encode($mhskelas);
 }
 public function uploadFile()
 {
     $client = $this->getClient();
     $kelas = Request::input('kelas');
     //Token Expired dan Session masih aktif
     if ($client->isAccessTokenExpired() && Session::has('access_token')) {
         $getToken = User::find(Session::get('user_id'));
         $tempToken = json_decode($getToken->access_token);
         $client->refreshToken($tempToken->refresh_token);
         Session::put('access_token', $client->getAccessToken());
         $getToken->refresh_token = $client->getAccessToken();
         $getToken->save();
         $service = new \Google_Service_Drive($client);
         $parentId = $this->getFolder($service, 'Materi');
         $this->insertFile($service, $parentId);
         $fileId = $this->insertFile($service, $parentId)->getId();
         //Mendapatkan Email Mhs Kelas
         $arrList = Mhskelas::with('mhs')->where('kodekelas', '=', $kelas)->get();
         $temp = array();
         $email = array();
         for ($i = 0; $i < count($arrList); $i++) {
             $temp[$i] = $arrList[$i];
             $email[$i] = $temp[$i]->mhs->email;
         }
         //Share Dokumen
         for ($i = 0; $i < count($email); $i++) {
             $this->sharing($service, $fileId, "user", "reader", $email[$i]);
         }
     }
 }