diff --git a/ppl2/app/Http/Controllers/PenjadwalanController.php b/ppl2/app/Http/Controllers/PenjadwalanController.php index 198eb677fc63adb9d964a616aaec3d71f96c8c94..978ebf8c8062a9b7a630d5b514108f80b36f6c77 100644 --- a/ppl2/app/Http/Controllers/PenjadwalanController.php +++ b/ppl2/app/Http/Controllers/PenjadwalanController.php @@ -35,9 +35,10 @@ class PenjadwalanController extends Controller { // $rules = array( - 'judul' => 'required', - 'nama' => 'required', - 'ruangan' => 'required' + 'keahlian' => 'required', + 'nama_institusi' => 'required', + 'ruangan' => 'required', + 'durasi' => 'required' ); $validator = Validator::make(Input::all(), $rules); @@ -49,10 +50,17 @@ class PenjadwalanController extends Controller } else { // store $penjadwalan = new Penjadwalan; - $penjadwalan->judul_kegiatan = Input::get('judul'); - $penjadwalan->nama_penyelenggara = Input::get('nama'); - $penjadwalan->ruangan = Input::get('ruangan'); - $penjadwalan->waktu = Input::get('waktu'); + $penjadwalan->keahlian = Input::get('keahlian'); + $penjadwalan->nama_institusi = Input::get('nama_institusi'); + $penjadwalan->id_institusi = 1; + $penjadwalan->tempat = Input::get('ruangan'); + if(Input::get('ruangan') == 1){ + $penjadwalan->kapasitas = 50; + } else { + $penjadwalan->kapasitas = 100; + } + $penjadwalan->durasi_ijazah = Input::get('durasi'); + $penjadwalan->waktu = Input::get('waktu'); $penjadwalan->save(); // redirect diff --git a/ppl2/app/Http/Controllers/pendaftaranController.php b/ppl2/app/Http/Controllers/pendaftaranController.php new file mode 100644 index 0000000000000000000000000000000000000000..9520a88af4fe7e7bcceb603fa52c22534f23fa65 --- /dev/null +++ b/ppl2/app/Http/Controllers/pendaftaranController.php @@ -0,0 +1,110 @@ +<?php + +namespace App\Http\Controllers; + +use Illuminate\Http\Request; +use App\Http\Requests; +use App\pendaftaran; +use App\Penjadwalan; +use View; +use Validator; +use Illuminate\Support\Facades\Input; +use Redirect; +use Session; + +class pendaftaranController extends Controller +{ + /** + * Display a listing of the resource. + * + * @return Response + */ + public function index() + { + // get pendaftaran from database + $penjadwalan = Penjadwalan::all(); + + return view('pendaftaran-diklat', ['week' => strtotime("next monday -1 week"), 'pendaftaran' => $penjadwalan ]); + } + + /** + * Store a newly created resource in storage. + * + * @return Response + */ + public function store() + { + // + $rules = array( + 'nip' => 'required', + 'email' => 'required' + ); + $validator = Validator::make(Input::all(), $rules); + + // process the login + if ($validator->fails()) { + return Redirect::to('pendaftaran-diklat') + ->withErrors($validator) + ->withInput(Input::all()); + } else { + // store + $pendaftaran = new pendaftaran; + $pendaftaran->nip = Input::get('nip'); + $pendaftaran->email = Input::get('email'); + $pendaftaran->id_jadwal = 1; + $pendaftaran->save(); + + // redirect + Session::flash('message', 'Successfully created pendaftaran!'); + return Redirect::to('pendaftaran-diklat'); + } + } + + /** + * Update the specified resource in storage. + * + * @param int $id + * @return Response + */ + public function update(Request $request, $id) + { + // + $pendaftaran = pendaftaran::find($id); + + $pendaftaran->judul_kegiatan = $request->input('judul'); + $pendaftaran->nama_penyelenggara = $request->input('nama'); + $pendaftaran->ruangan = $request->input('ruangan'); + $pendaftaran->waktu = $request->input('waktu'); + $pendaftaran->save(); + + Session::flash('message', 'pendaftaran successfully updated'); + return Redirect::to('pendaftaran-diklat'); + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return Response + */ + public function destroy($id) + { + // + $pendaftaran = Institusi::find($id); + $pendaftaran->delete(); + Session::flash('message', 'pendaftaran berhasil dihapus'); + return Redirect::to('pendaftaran-diklat'); + } + + public function next($week) { + $pendaftaran = Penjadwalan::all(); + $week = strtotime("+1 week", $week); + return view('pendaftaran-diklat', ['week' => $week, 'pendaftaran' => $pendaftaran ]); + } + + public function prev($week) { + $pendaftaran = Penjadwalan::all(); + $week = strtotime("-1 week", $week); + return view('pendaftaran-diklat', ['week' => $week, 'pendaftaran' => $pendaftaran ]); + } +} diff --git a/ppl2/app/Http/routes.php b/ppl2/app/Http/routes.php index b040253db4a4212a44068b29329f93b4f2e2d0e0..24a907c167a8d647178233281c1da2f56670e046 100644 --- a/ppl2/app/Http/routes.php +++ b/ppl2/app/Http/routes.php @@ -111,6 +111,12 @@ Route::post('/penjadwalan/{id}/update','PenjadwalanController@update'); Route::get('/statistik','PendFormalController@getAllStatistik'); -Route::get('/pendaftaran-diklat', function () { - return view('pendaftaran-diklat'); -}); \ No newline at end of file +Route::get('/pendaftaran-diklat', 'pendaftaranController@index'); + +Route::get('/pendaftaran-diklat/prev/{week}', 'pendaftaranController@prev'); + +Route::get('/pendaftaran-diklat/next/{week}', 'pendaftaranController@next'); + +Route::post('/pendaftaran-diklat/add', 'pendaftaranController@store'); + +Route::get('/konfirmasi', 'konfirmasiController@index'); \ No newline at end of file diff --git a/ppl2/app/pendaftaran.php b/ppl2/app/pendaftaran.php new file mode 100644 index 0000000000000000000000000000000000000000..884615158b8ad944cbc9e1ec4a3379ec972dae7a --- /dev/null +++ b/ppl2/app/pendaftaran.php @@ -0,0 +1,13 @@ +<?php + +namespace App; + +use Illuminate\Database\Eloquent\Model; + +class pendaftaran extends Model +{ + protected $table = 'pendaftaran_pelatihan'; + protected $primaryKey = 'id_pendaftaran'; + public $timestamps = true; //tidak ada create_at dan update_at + protected $connection = 'mysql'; +} diff --git a/ppl2/resources/views/app_template.blade.php b/ppl2/resources/views/app_template.blade.php index 4febaebef9eb473eecb9dba5479af0266db0467c..e5420500d0dd8b0fd73b59a20abaf4ab427d46f5 100644 --- a/ppl2/resources/views/app_template.blade.php +++ b/ppl2/resources/views/app_template.blade.php @@ -304,6 +304,17 @@ <span class="font-bold">Penjadwalan</span> </a> </li> + <li> + @if (Auth::check()) + <a href="{{URL::to('konfirmasi')}}"> + @else + + <a href="{{URL::to('/')}}"> + @endif + <i class="icon-bdg_table"></i> + <span class="font-bold">Konfirmasi</span> + </a> + </li> <li> @if (Auth::check()) <a href="{{URL::to('statistik')}}"> diff --git a/ppl2/resources/views/pendaftaran-diklat.blade.php b/ppl2/resources/views/pendaftaran-diklat.blade.php index 0c69df1319e60da97e11c993951d395b71f52c65..aa73346202149cd9bf4d52c80d687ac155c985a2 100644 --- a/ppl2/resources/views/pendaftaran-diklat.blade.php +++ b/ppl2/resources/views/pendaftaran-diklat.blade.php @@ -19,212 +19,135 @@ @stop @section('content') +<?php + $dates = array(strtotime("monday", $week), strtotime("tuesday", $week), strtotime("wednesday", $week), strtotime("thursday", $week), strtotime("friday", $week), strtotime("saturday", $week), strtotime("sunday", $week)); + $senin = date("d/m", $dates[0]); + $selasa = date("d/m", $dates[1]); + $rabu = date("d/m", $dates[2]); + $kamis = date("d/m", $dates[3]); + $jumat = date("d/m", $dates[4]); + $sabtu = date("d/m", $dates[5]); + $minggu = date("d/m", $dates[6]); +?> <div class="panel panel-default"> <div class="panel-heading font-semibold"> - <div style="display: inline-block;">pendaftaran-diklat</div> + <div style="display: inline-block;">Pendaftaran Diklat</div> <div style="display: inline-block; width: 93%; text-align: right;"> - <button class="btn btn-default">Prev</button> - <button class="btn btn-default">Next</button> + <a class="btn btn-default" href="{{URL::to('/')}}/pendaftaran-diklat/prev/{{$week}}">Prev</a> + <a class="btn btn-default" href="{{URL::to('/')}}/pendaftaran-diklat/next/{{$week}}">Next</a> </div> </div> <div> - <table id="pendaftaran-diklat" class="table pendaftaran-diklat-table" ui-jq="footable"> + <table id="pendaftaran" class="table pendaftaran-table" ui-jq="footable"> <thead> <tr> <th data-breakpoints="xs">Waktu</th> - <th>Senin, 17/4</th> - <th>Selasa, 18/4</th> - <th>Rabu, 19/4</th> - <th>Kamis, 20/4</th> - <th>Jumat, 21/4</th> - <th>Sabtu, 22/4</th> - <th>Minggu, 23/4</th> + <th>Senin, {{ $senin }}</th> + <th>Selasa, {{ $selasa }}</th> + <th>Rabu, {{ $rabu }}</th> + <th>Kamis, {{ $kamis }}</th> + <th>Jumat, {{ $jumat }}</th> + <th>Sabtu, {{ $sabtu }}</th> + <th>Minggu, {{ $minggu }}</th> </tr> </thead> <tbody> <tr data-expanded="true"> - <td>07.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>07.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>08.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>08.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>09.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>09.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>10.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>10.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>11.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>11.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>12.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>12.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>13.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>13.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>14.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>14.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>15.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>15.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>16.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>16.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>17.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>17.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>18.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>18.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>19.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>19.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>20.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>20.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr data-expanded="true"> - <td>21.00</td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> - <td></td> + <td>21.00</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> </tbody> </table> + </div> <!-- Modal --> - <div class="modal fade" id="myModal" role="dialog"> + + <div class="modal fade" id="editModal" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> - <div class="modal-header"> - <button type="button" class="close" data-dismiss="modal">×</button> - <h4 class="modal-title">Input Jadwal</h4> - </div> - <div class="modal-body"> - <form class="form-group" method = "POST" action = "{{URL::to('daftarinstitusi')}}" > - <label for="judul">Judul kegiatan</label> - <input type="text" class="form-control" id="judul"> - <label for="nama">Nama penyelenggara</label> - <input type="text" class="form-control" id="nama"> - <label for="ruangan">Ruangan</label> - <select class="form-control" id="ruangan"> - <option>Ruangan 1</option> - <option>Ruangan 2</option> - </select> - - - </div> - <div class="modal-footer"> - <button type="submit" class="btn btn-primary">Submit</button> - <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> - - </div> + <form method="POST" id="editForm"> + <input type="hidden" name="waktu" id="waktuEdit" > + <input type="hidden" name="_token" value="{{ csrf_token() }}"> + <div class="modal-header"> + <button type="button" class="close" data-dismiss="modal">×</button> + <h4 class="modal-title">Ikuti Diklat</h4> + </div> + <div class="modal-body"> + + <div class="form-group"> + <label for="judul">Keahlian kegiatan</label> + <input type="text" class="form-control" id="judulEdit" name="keahlian"> + </div><div class="form-group"> + <label for="nama">Nama penyelenggara</label> + <input type="text" class="form-control" id="namaEdit" name="nama_institusi"> + </div><div class="form-group"> + <label for="ruangan">Ruangan</label> + <select class="form-control" id="ruanganEdit" name="ruangan"> + <option value=1>Ruangan 1</option> + <option value=2>Ruangan 2</option> + </select> + </div><div class="form-group"> + <label for="nama">Durasi Ijazah</label> + <input type="number" min="1" step="1" max = "10" id="durasiEdit" name = "durasi"> + </div> + <div class="form-group"> + <label for="nama">NIP</label> + <input type="text" class="form-control" id="nipEdit" name="nip"> + </div> + <div class="form-group"> + <label for="nama">E-mail</label> + <input type="text" class="form-control" id="emailEdit" name="email"> + </div> + + </div> + <div class="modal-footer"> + <input type="submit" class="btn btn-primary" value="Submit"> + <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> + </div> </form> </div> @@ -234,9 +157,58 @@ @section('js') <script> + var arraypendaftaran = []; + $(function(){ - $('#pendaftaran-diklat td').click(function () { - $('#myModal').modal('show'); + @foreach($pendaftaran as $key => $value) + @if (strtotime($value->waktu) >= $dates[0] && strtotime($value->waktu) < strtotime("+1 day", $dates[6])) + console.log("{{$value->waktu}}"); + var waktu = new Date({{strtotime($value->waktu)}}*1000); + console.log("waktu = " + waktu); + + var rowNum = waktu.getHours()-13; + var colNum = waktu.getDate()-{{date("d", $dates[0])}}+1; + console.log("COL ROW : " + colNum + " " + rowNum); + $('#pendaftaran').find('tr:eq('+rowNum+')'+' td:eq('+colNum+')').html( "{{$value->keahlian}}" ); + arraypendaftaran.push({ id: {{$value->kegiatan_id}}, judul:'{{$value->keahlian}}', nama: '{{$value->nama_institusi}}', ruangan: {{$value->tempat}}, waktu: '{{$value->waktu}}', durasi: {{ $value->durasi_ijazah}},row: rowNum, col: colNum }); + @endif + @endforeach + + + $('#pendaftaran td').click(function () { + var col = $(this).parent().children().index($(this)); + var row = $(this).parent().parent().children().index($(this).parent()); + var dates = [ {{$dates[0]}}, {{$dates[1]}}, {{$dates[2]}}, {{$dates[3]}}, {{$dates[4]}}, {{$dates[5]}}, {{$dates[6]}} ]; + var hari = new Date(dates[col-1] * 1000); + var bulan = hari.getMonth() + 1; + var jam = row+7; + var waktu = hari.getFullYear() + '-' + bulan + '-' + hari.getDate() + ' ' + jam + ':00'; + $('#waktu').val( waktu ); + console.log(waktu); + if ($(this).is(':empty')) + $('#myModal').modal('show'); + else { + var i = 0; + var found = 0; + console.log(arraypendaftaran[0]); + while (i<arraypendaftaran.length && found == 0) { + console.log(row); + console.log(arraypendaftaran[i].row); + console.log(col); + console.log(arraypendaftaran[i].col); + if (row == arraypendaftaran[i].row-1 && col == arraypendaftaran[i].col) + found = 1; + else + i++; + } + $('#judulEdit').val(arraypendaftaran[i].judul); + $('#namaEdit').val(arraypendaftaran[i].nama); + $('#ruanganEdit').val(arraypendaftaran[i].ruangan); + $('#waktuEdit').val( waktu ); + $('#durasiEdit').val(arraypendaftaran[i].durasi ); + $('#editForm').attr('action', '{{URL::to("pendaftaran-diklat")}}'+ '/add'); + $('#editModal').modal('show'); + } }); }); </script> diff --git a/ppl2/resources/views/penjadwalan.blade.php b/ppl2/resources/views/penjadwalan.blade.php index ec3ddc6a072e573be23004290d08f40e75934872..80e3159602c50e3f2fe3f317c83d5ad5137442bb 100644 --- a/ppl2/resources/views/penjadwalan.blade.php +++ b/ppl2/resources/views/penjadwalan.blade.php @@ -118,11 +118,11 @@ <div class="modal-body"> <div class="form-group"> - <label for="judul">Judul kegiatan</label> - <input type="text" class="form-control" id="judul" name="judul"> + <label for="judul">Keahlian kegiatan</label> + <input type="text" class="form-control" id="judul" name="keahlian"> </div><div class="form-group"> <label for="nama">Nama penyelenggara</label> - <input type="text" class="form-control" id="nama" name="nama"> + <input type="text" class="form-control" id="nama" name="nama_institusi"> </div><div class="form-group"> <label for="ruangan">Ruangan</label> <select class="form-control" id="ruangan" name="ruangan"> @@ -130,6 +130,10 @@ <option value=2>Ruangan 2</option> </select> </div> + <div class="form-group"> + <label for="nama">Durasi Ijazah</label> + <input type="number" min="1" step="1" max = "10" id="durasi" name = "durasi"> + </div> </div> <div class="modal-footer"> @@ -157,17 +161,20 @@ <div class="modal-body"> <div class="form-group"> - <label for="judul">Judul kegiatan</label> - <input type="text" class="form-control" id="judulEdit" name="judul"> + <label for="judul">Keahlian kegiatan</label> + <input type="text" class="form-control" id="judulEdit" name="keahlian"> </div><div class="form-group"> <label for="nama">Nama penyelenggara</label> - <input type="text" class="form-control" id="namaEdit" name="nama"> + <input type="text" class="form-control" id="namaEdit" name="nama_institusi"> </div><div class="form-group"> <label for="ruangan">Ruangan</label> <select class="form-control" id="ruanganEdit" name="ruangan"> <option value=1>Ruangan 1</option> <option value=2>Ruangan 2</option> </select> + </div><div class="form-group"> + <label for="nama">Durasi Ijazah</label> + <input type="number" min="1" step="1" max = "10" id="durasiEdit" name = "durasi"> </div> </div> @@ -196,8 +203,8 @@ var rowNum = waktu.getHours()-13; var colNum = waktu.getDate()-{{date("d", $dates[0])}}+1; console.log("COL ROW : " + colNum + " " + rowNum); - $('#penjadwalan').find('tr:eq('+rowNum+')'+' td:eq('+colNum+')').html( "{{$value->judul_kegiatan}}" ); - arrayPenjadwalan.push({ id: '{{$value->kegiatan_id}}', judul:'{{$value->judul_kegiatan}}', nama: '{{$value->nama_penyelenggara}}', ruangan: {{$value->ruangan}}, waktu: '{{$value->waktu}}', row: rowNum, col: colNum }); + $('#penjadwalan').find('tr:eq('+rowNum+')'+' td:eq('+colNum+')').html( "{{$value->keahlian}}" ); + arrayPenjadwalan.push({ id: {{$value->kegiatan_id}}, judul:'{{$value->keahlian}}', nama: '{{$value->nama_institusi}}', ruangan: {{$value->tempat}}, waktu: '{{$value->waktu}}', durasi: {{ $value->durasi_ijazah}},row: rowNum, col: colNum }); @endif @endforeach @@ -232,6 +239,7 @@ $('#namaEdit').val(arrayPenjadwalan[i].nama); $('#ruanganEdit').val(arrayPenjadwalan[i].ruangan); $('#waktuEdit').val( waktu ); + $('#durasiEdit').val(arrayPenjadwalan[i].durasi ); $('#editForm').attr('action', '{{URL::to("penjadwalan")}}'+ '/' + arrayPenjadwalan[i].id + '/update'); $('#editModal').modal('show'); }