Compare View
Commits (2)
Changes
Showing 132 changed files Side-by-side Diff
- .env copy.example
- .env.example
- app/Cms.php
- app/Http/Controllers/Backend/artikelCmsController.php
- app/Http/Controllers/Backend/artikelEofficeController.php
- app/Http/Controllers/Backend/artikelFwController.php
- app/Http/Controllers/Backend/artikelJsController.php
- app/Http/Controllers/Backend/artikelOsController.php
- app/Http/Controllers/Backend/artikelSopController.php
- app/Http/Controllers/Backend/backendpController.php
- app/Http/Controllers/Backend/cmsController.php
- app/Http/Controllers/Backend/eofficeController.php
- app/Http/Controllers/Backend/frameworkController.php
- app/Http/Controllers/Backend/frontendpController.php
- app/Http/Controllers/Backend/javascriptController.php
- app/Http/Controllers/Backend/laravelController.php
- app/Http/Controllers/Backend/osController.php
- app/Http/Controllers/Backend/sopController.php
- app/Os.php
- database/migrations/2021_10_07_144619_create_kategoris_table.php
- database/migrations/2021_10_07_154619_create_kategoris_table.php
- database/migrations/2021_10_08_110118_create_formals_table.php
- database/migrations/2021_10_19_091721_create_eoffices_table.php
- resources/views/backend/art-cms/datatables.blade.php
- resources/views/backend/art-cms/index.blade.php
- resources/views/backend/art-cms/jquery.blade.php
- resources/views/backend/art-cms/tambah.blade copy.php
- resources/views/backend/art-cms/tambah.blade.php
- resources/views/backend/art-fw/datatables.blade.php
- resources/views/backend/art-fw/index.blade.php
- resources/views/backend/art-fw/jquery.blade.php
- resources/views/backend/art-fw/tambah.blade copy.php
- resources/views/backend/art-fw/tambah.blade.php
- resources/views/backend/art-js/datatables.blade.php
- resources/views/backend/art-js/index.blade.php
- resources/views/backend/art-js/jquery.blade.php
- resources/views/backend/art-js/tambah.blade copy.php
- resources/views/backend/art-js/tambah.blade.php
- resources/views/backend/art-os/datatables.blade.php
- resources/views/backend/art-os/index.blade.php
- resources/views/backend/art-os/jquery.blade.php
- resources/views/backend/art-os/tambah.blade copy.php
- resources/views/backend/art-os/tambah.blade.php
- resources/views/backend/art-sop/datatables.blade.php
- resources/views/backend/art-sop/index.blade.php
- resources/views/backend/art-sop/jquery.blade.php
- resources/views/backend/art-sop/tambah.blade copy.php
- resources/views/backend/art-sop/tambah.blade.php
- resources/views/backend/backendp/ajax.blade.php
- resources/views/backend/backendp/datatables.blade.php
- resources/views/backend/backendp/datatables_detail.blade.php
- resources/views/backend/backendp/detail.blade.php
- resources/views/backend/backendp/hapus.blade.php
- resources/views/backend/backendp/index.blade.php
- resources/views/backend/backendp/jquery.blade.php
- resources/views/backend/backendp/tambah.blade.php
- resources/views/backend/backendp/ubah.blade.php
- resources/views/backend/beprog/ajax.blade.php
- resources/views/backend/beprog/datatables.blade.php
- resources/views/backend/beprog/datatables_detail.blade.php
- resources/views/backend/beprog/detail.blade.php
- resources/views/backend/beprog/hapus.blade.php
- resources/views/backend/beprog/index.blade.php
- resources/views/backend/beprog/jquery.blade.php
- resources/views/backend/beprog/tambah.blade.php
- resources/views/backend/beprog/ubah.blade.php
- resources/views/backend/cms/ajax.blade.php
- resources/views/backend/cms/datatables.blade.php
- resources/views/backend/cms/datatables_detail.blade.php
- resources/views/backend/cms/detail.blade.php
- resources/views/backend/cms/hapus.blade.php
- resources/views/backend/cms/index.blade.php
- resources/views/backend/cms/jquery.blade.php
- resources/views/backend/cms/tambah.blade.php
- resources/views/backend/cms/ubah.blade.php
- resources/views/backend/eoffice/ubah.blade.php
- resources/views/backend/feprog/ajax.blade.php
- resources/views/backend/feprog/datatables.blade.php
- resources/views/backend/feprog/datatables_detail.blade.php
- resources/views/backend/feprog/detail.blade.php
- resources/views/backend/feprog/hapus.blade.php
- resources/views/backend/feprog/index.blade.php
- resources/views/backend/feprog/jquery.blade.php
- resources/views/backend/feprog/tambah.blade.php
- resources/views/backend/feprog/ubah.blade.php
- resources/views/backend/framework/ajax.blade.php
- resources/views/backend/framework/datatables.blade.php
- resources/views/backend/framework/datatables_detail.blade.php
- resources/views/backend/framework/detail.blade.php
- resources/views/backend/framework/hapus.blade.php
- resources/views/backend/framework/index.blade.php
- resources/views/backend/framework/jquery.blade.php
- resources/views/backend/framework/tambah.blade.php
- resources/views/backend/framework/ubah.blade.php
- resources/views/backend/frontendp/ajax.blade.php
- resources/views/backend/frontendp/datatables.blade.php
- resources/views/backend/frontendp/datatables_detail.blade.php
- resources/views/backend/frontendp/detail.blade.php
- resources/views/backend/frontendp/hapus.blade.php
- resources/views/backend/frontendp/index.blade.php
- resources/views/backend/frontendp/jquery.blade.php
- resources/views/backend/frontendp/tambah.blade.php
- resources/views/backend/frontendp/ubah.blade.php
- resources/views/backend/javascript/ajax.blade.php
- resources/views/backend/javascript/datatables.blade.php
- resources/views/backend/javascript/datatables_detail.blade.php
- resources/views/backend/javascript/detail.blade.php
- resources/views/backend/javascript/hapus.blade.php
- resources/views/backend/javascript/index.blade.php
- resources/views/backend/javascript/jquery.blade.php
- resources/views/backend/javascript/tambah.blade.php
- resources/views/backend/javascript/ubah.blade.php
- resources/views/backend/laravel/ubah.blade.php
- resources/views/backend/os/ajax.blade.php
- resources/views/backend/os/datatables.blade.php
- resources/views/backend/os/datatables_detail.blade.php
- resources/views/backend/os/detail.blade.php
- resources/views/backend/os/hapus.blade.php
- resources/views/backend/os/index.blade.php
- resources/views/backend/os/jquery.blade.php
- resources/views/backend/os/tambah.blade.php
- resources/views/backend/os/ubah.blade.php
- resources/views/backend/sop/ajax.blade.php
- resources/views/backend/sop/datatables.blade.php
- resources/views/backend/sop/datatables_detail.blade.php
- resources/views/backend/sop/detail.blade.php
- resources/views/backend/sop/hapus.blade.php
- resources/views/backend/sop/index.blade.php
- resources/views/backend/sop/jquery.blade.php
- resources/views/backend/sop/tambah.blade.php
- resources/views/backend/sop/ubah.blade.php
- routes/backend.php
.env copy.example
| ... | ... | @@ -0,0 +1,46 @@ |
| 1 | +APP_NAME=GrandMaster | |
| 2 | +APP_ENV=local | |
| 3 | +APP_KEY= | |
| 4 | +APP_DEBUG=true | |
| 5 | +APP_URL=http://localhost/grandmaster | |
| 6 | + | |
| 7 | +LOG_CHANNEL=stack | |
| 8 | + | |
| 9 | +DB_CONNECTION=mysql | |
| 10 | +DB_HOST=127.0.0.1 | |
| 11 | +DB_PORT=3306 | |
| 12 | +DB_DATABASE=gmoji | |
| 13 | +DB_USERNAME=root | |
| 14 | +DB_PASSWORD= | |
| 15 | + | |
| 16 | +BROADCAST_DRIVER=log | |
| 17 | +CACHE_DRIVER=file | |
| 18 | +QUEUE_CONNECTION=sync | |
| 19 | +SESSION_DRIVER=file | |
| 20 | +SESSION_LIFETIME=120 | |
| 21 | + | |
| 22 | +REDIS_HOST=127.0.0.1 | |
| 23 | +REDIS_PASSWORD=null | |
| 24 | +REDIS_PORT=6379 | |
| 25 | + | |
| 26 | +MAIL_MAILER=smtp | |
| 27 | +MAIL_HOST=smtp.mailtrap.io | |
| 28 | +MAIL_PORT=2525 | |
| 29 | +MAIL_USERNAME=null | |
| 30 | +MAIL_PASSWORD=null | |
| 31 | +MAIL_ENCRYPTION=null | |
| 32 | +MAIL_FROM_ADDRESS=null | |
| 33 | +MAIL_FROM_NAME="${APP_NAME}" | |
| 34 | + | |
| 35 | +AWS_ACCESS_KEY_ID= | |
| 36 | +AWS_SECRET_ACCESS_KEY= | |
| 37 | +AWS_DEFAULT_REGION=us-east-1 | |
| 38 | +AWS_BUCKET= | |
| 39 | + | |
| 40 | +PUSHER_APP_ID= | |
| 41 | +PUSHER_APP_KEY= | |
| 42 | +PUSHER_APP_SECRET= | |
| 43 | +PUSHER_APP_CLUSTER=mt1 | |
| 44 | + | |
| 45 | +MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" | |
| 46 | +MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" |
app/Cms.php
| ... | ... | @@ -8,4 +8,19 @@ use Illuminate\Database\Eloquent\Model; |
| 8 | 8 | class Cms extends Model |
| 9 | 9 | { |
| 10 | 10 | use HasFactory; |
| 11 | + | |
| 12 | + | |
| 13 | + protected $table = "cms"; | |
| 14 | + | |
| 15 | + protected $fillable = ['id','judul','konten']; | |
| 16 | + | |
| 17 | + public function katartikel() | |
| 18 | + { | |
| 19 | + return $this->belongsTo('App\Katartikel'); | |
| 20 | + } | |
| 21 | + | |
| 22 | + public function user() | |
| 23 | + { | |
| 24 | + return $this->belongsTo('App\User'); | |
| 25 | + } | |
| 11 | 26 | } |
app/Http/Controllers/Backend/artikelCmsController.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +<?php | |
| 2 | + | |
| 3 | +namespace App\Http\Controllers\Backend; | |
| 4 | + | |
| 5 | +use App\Http\Controllers\Controller; | |
| 6 | +use Illuminate\Http\Request; | |
| 7 | +use App\Cms; | |
| 8 | +use App\User; | |
| 9 | +use App\Katartikel; | |
| 10 | +use Illuminate\Support\Facades\Validator; | |
| 11 | + | |
| 12 | +class artikelCmsController extends Controller | |
| 13 | +{ | |
| 14 | + public function index() | |
| 15 | + { | |
| 16 | + $content = Cms::all(); | |
| 17 | + return view('backend.art-cms.index', compact('content')); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function create(Request $request) | |
| 21 | + { | |
| 22 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 23 | + return view('backend.art-cms.tambah'); | |
| 24 | + } | |
| 25 | + | |
| 26 | + /** | |
| 27 | + * Store a newly created resource in storage. | |
| 28 | + * | |
| 29 | + * @param \Illuminate\Http\Request $request | |
| 30 | + * @return \Illuminate\Http\Response | |
| 31 | + */ | |
| 32 | + | |
| 33 | + public function store(Request $request) | |
| 34 | + { | |
| 35 | + $validator = Validator::make($request->all(), [ | |
| 36 | + | |
| 37 | + | |
| 38 | + 'judul' => 'required', | |
| 39 | + 'konten' => 'required', | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + ]); | |
| 44 | + if ($validator->fails()) { | |
| 45 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 46 | + } else { | |
| 47 | + if (Cms::create($request->all())) { | |
| 48 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 49 | + } else { | |
| 50 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 51 | + } | |
| 52 | + } | |
| 53 | + return response()->json($respon); | |
| 54 | + } | |
| 55 | +} |
app/Http/Controllers/Backend/artikelEofficeController.php
app/Http/Controllers/Backend/artikelFwController.php
| ... | ... | @@ -0,0 +1,54 @@ |
| 1 | +<?php | |
| 2 | + | |
| 3 | +namespace App\Http\Controllers\Backend; | |
| 4 | + | |
| 5 | +use App\Http\Controllers\Controller; | |
| 6 | +use Illuminate\Http\Request; | |
| 7 | +use Illuminate\Support\Facades\Validator; | |
| 8 | +use App\Framework; | |
| 9 | +use App\User; | |
| 10 | +use App\Katartikel; | |
| 11 | + | |
| 12 | +class artikelFwController extends Controller | |
| 13 | +{ | |
| 14 | + public function index() | |
| 15 | + { | |
| 16 | + $framework = Framework::all(); | |
| 17 | + return view('backend.art-fw.index', compact('framework')); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function create(Request $request) | |
| 21 | + { | |
| 22 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 23 | + return view('backend.art-fw.tambah'); | |
| 24 | + } | |
| 25 | + | |
| 26 | + /** | |
| 27 | + * Store a newly created resource in storage. | |
| 28 | + * | |
| 29 | + * @param \Illuminate\Http\Request $request | |
| 30 | + * @return \Illuminate\Http\Response | |
| 31 | + */ | |
| 32 | + | |
| 33 | + public function store(Request $request) | |
| 34 | + { | |
| 35 | + $validator = Validator::make($request->all(), [ | |
| 36 | + | |
| 37 | + | |
| 38 | + 'judul' => 'required', | |
| 39 | + 'konten' => 'required', | |
| 40 | + | |
| 41 | + ]); | |
| 42 | + if ($validator->fails()) { | |
| 43 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 44 | + } else { | |
| 45 | + if (Framework::create($request->all())) { | |
| 46 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 47 | + } else { | |
| 48 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 49 | + } | |
| 50 | + } | |
| 51 | + return response()->json($respon); | |
| 52 | + } | |
| 53 | + | |
| 54 | +} |
app/Http/Controllers/Backend/artikelJsController.php
| ... | ... | @@ -0,0 +1,56 @@ |
| 1 | +<?php | |
| 2 | + | |
| 3 | +namespace App\Http\Controllers\backend; | |
| 4 | + | |
| 5 | +use App\Http\Controllers\Controller; | |
| 6 | +use Illuminate\Http\Request; | |
| 7 | +use Illuminate\Support\Facades\Validator; | |
| 8 | +use App\Javascript; | |
| 9 | +use App\User; | |
| 10 | +use App\Katartikel; | |
| 11 | + | |
| 12 | +class artikelJsController extends Controller | |
| 13 | +{ | |
| 14 | + public function index() | |
| 15 | + { | |
| 16 | + $javascript = Javascript::all(); | |
| 17 | + return view('backend.art-js.index', compact('javascript')); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function create(Request $request) | |
| 21 | + { | |
| 22 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 23 | + return view('backend.art-js.tambah'); | |
| 24 | + } | |
| 25 | + | |
| 26 | + /** | |
| 27 | + * Store a newly created resource in storage. | |
| 28 | + * | |
| 29 | + * @param \Illuminate\Http\Request $request | |
| 30 | + * @return \Illuminate\Http\Response | |
| 31 | + */ | |
| 32 | + | |
| 33 | + public function store(Request $request) | |
| 34 | + { | |
| 35 | + $validator = Validator::make($request->all(), [ | |
| 36 | + | |
| 37 | + | |
| 38 | + 'judul' => 'required', | |
| 39 | + 'konten' => 'required', | |
| 40 | + | |
| 41 | + ]); | |
| 42 | + if ($validator->fails()) { | |
| 43 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 44 | + } else { | |
| 45 | + if (Javascript::create($request->all())) { | |
| 46 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 47 | + } else { | |
| 48 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 49 | + } | |
| 50 | + } | |
| 51 | + return response()->json($respon); | |
| 52 | + } | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | +} |
app/Http/Controllers/Backend/artikelOsController.php
| ... | ... | @@ -0,0 +1,54 @@ |
| 1 | +<?php | |
| 2 | + | |
| 3 | +namespace App\Http\Controllers\Backend; | |
| 4 | + | |
| 5 | +use App\Http\Controllers\Controller; | |
| 6 | +use Illuminate\Http\Request; | |
| 7 | +use Illuminate\Support\Facades\Validator; | |
| 8 | +use App\Katartikel; | |
| 9 | +use App\User; | |
| 10 | +use App\Os; | |
| 11 | + | |
| 12 | +class artikelOsController extends Controller | |
| 13 | +{ | |
| 14 | + public function index() | |
| 15 | + { | |
| 16 | + $operating = Os::all(); | |
| 17 | + return view('backend.art-os.index', compact('operating')); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function create(Request $request) | |
| 21 | + { | |
| 22 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 23 | + return view('backend.art-os.tambah'); | |
| 24 | + } | |
| 25 | + | |
| 26 | + /** | |
| 27 | + * Store a newly created resource in storage. | |
| 28 | + * | |
| 29 | + * @param \Illuminate\Http\Request $request | |
| 30 | + * @return \Illuminate\Http\Response | |
| 31 | + */ | |
| 32 | + | |
| 33 | + public function store(Request $request) | |
| 34 | + { | |
| 35 | + $validator = Validator::make($request->all(), [ | |
| 36 | + | |
| 37 | + | |
| 38 | + 'judul' => 'required', | |
| 39 | + 'konten' => 'required', | |
| 40 | + | |
| 41 | + ]); | |
| 42 | + if ($validator->fails()) { | |
| 43 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 44 | + } else { | |
| 45 | + if (Os::create($request->all())) { | |
| 46 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 47 | + } else { | |
| 48 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 49 | + } | |
| 50 | + } | |
| 51 | + return response()->json($respon); | |
| 52 | + } | |
| 53 | + | |
| 54 | +} |
app/Http/Controllers/Backend/artikelSopController.php
| ... | ... | @@ -0,0 +1,57 @@ |
| 1 | +<?php | |
| 2 | + | |
| 3 | +namespace App\Http\Controllers\Backend; | |
| 4 | + | |
| 5 | +use App\Http\Controllers\Controller; | |
| 6 | +use Illuminate\Http\Request; | |
| 7 | +use Illuminate\Support\Facades\Validator; | |
| 8 | +use App\User; | |
| 9 | +use App\Sop; | |
| 10 | +use App\Katartikel; | |
| 11 | + | |
| 12 | +class artikelSopController extends Controller | |
| 13 | +{ | |
| 14 | +public function index() | |
| 15 | + { | |
| 16 | + $standar = Sop::all(); | |
| 17 | + return view('backend.art-sop.index',compact('standar')); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function create(Request $request) | |
| 21 | + | |
| 22 | + { | |
| 23 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 24 | + return view('backend.art-sop.tambah'); | |
| 25 | + } | |
| 26 | + | |
| 27 | + /** | |
| 28 | + * Store a newly created resource in storage. | |
| 29 | + * | |
| 30 | + * @param \Illuminate\Http\Request $request | |
| 31 | + * @return \Illuminate\Http\Response | |
| 32 | + */ | |
| 33 | + | |
| 34 | + public function store(Request $request) | |
| 35 | + { | |
| 36 | + $validator = Validator::make($request->all(), [ | |
| 37 | + | |
| 38 | + | |
| 39 | + 'judul' => 'required', | |
| 40 | + 'konten' => 'required', | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + ]); | |
| 45 | + if ($validator->fails()) { | |
| 46 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 47 | + } else { | |
| 48 | + if (Sop::create($request->all())) { | |
| 49 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 50 | + } else { | |
| 51 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 52 | + } | |
| 53 | + } | |
| 54 | + return response()->json($respon); | |
| 55 | + } | |
| 56 | + | |
| 57 | +} |
app/Http/Controllers/Backend/backendpController.php
| ... | ... | @@ -5,23 +5,24 @@ namespace App\Http\Controllers\Backend; |
| 5 | 5 | use App\Http\Controllers\Controller; |
| 6 | 6 | use Illuminate\Http\Request; |
| 7 | 7 | use Yajra\DataTables\Facades\DataTables; |
| 8 | -use Validator; | |
| 8 | +use Illuminate\Support\Facades\Validator; | |
| 9 | 9 | use App\Backendp; |
| 10 | 10 | use App\Katartikel; |
| 11 | 11 | use App\User; |
| 12 | +use Illuminate\Support\Facades\Validator as FacadesValidator; | |
| 12 | 13 | |
| 13 | 14 | class backendpController extends Controller |
| 14 | 15 | { |
| 15 | 16 | public function index() |
| 16 | 17 | { |
| 17 | - | |
| 18 | - return view('backend.beprog.index'); | |
| 18 | + $backendp = Backendp::all(); | |
| 19 | + return view('backend.backendp.index', compact('backendp')); | |
| 19 | 20 | } |
| 20 | 21 | |
| 21 | 22 | public function data(Request $request) |
| 22 | 23 | { |
| 23 | 24 | if ($request->ajax()) { |
| 24 | - $backendp = Backendp::orderBy('id'); | |
| 25 | + $backendp = Backendp::orderBy('id','desc'); | |
| 25 | 26 | return Datatables::of($backendp) |
| 26 | 27 | ->addIndexColumn() |
| 27 | 28 | // ->addColumn('lampiran', function($backendp){ |
| ... | ... | @@ -65,7 +66,7 @@ class backendpController extends Controller |
| 65 | 66 | public function create() |
| 66 | 67 | { |
| 67 | 68 | |
| 68 | - return view('backend.beprog.tambah'); | |
| 69 | + return view('backend.backendp.tambah'); | |
| 69 | 70 | } |
| 70 | 71 | |
| 71 | 72 | /** |
| ... | ... | @@ -85,8 +86,8 @@ class backendpController extends Controller |
| 85 | 86 | public function store(Request $request) |
| 86 | 87 | { |
| 87 | 88 | $validator = Validator::make($request->all(), [ |
| 88 | - 'id' => 'required', | |
| 89 | - 'kategori_id' => 'required', | |
| 89 | + | |
| 90 | + | |
| 90 | 91 | 'judul' => 'required', |
| 91 | 92 | 'konten' => 'required', |
| 92 | 93 | |
| ... | ... | @@ -104,6 +105,63 @@ class backendpController extends Controller |
| 104 | 105 | return response()->json($respon); |
| 105 | 106 | } |
| 106 | 107 | |
| 108 | + public function edit($id) | |
| 109 | + { | |
| 110 | + $backendp = Backendp::find($id); | |
| 111 | + | |
| 112 | + return view('backend.backendp.ubah', compact('backendp')); | |
| 113 | + } | |
| 114 | + | |
| 115 | + /** | |
| 116 | + * Update the specified resource in storage. | |
| 117 | + * | |
| 118 | + * @param \Illuminate\Http\Request $request | |
| 119 | + * @param int $id | |
| 120 | + * @return \Illuminate\Http\Response | |
| 121 | + */ | |
| 122 | + public function update(Request $request, $id) | |
| 123 | + { | |
| 124 | + $validator = Validator::make($request->all(), [ | |
| 125 | + | |
| 126 | + 'judul' => 'required', | |
| 127 | + 'konten' => 'required', | |
| 128 | + | |
| 107 | 129 | |
| 130 | + ]); | |
| 131 | + if ($validator->fails()) { | |
| 132 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 133 | + } else { | |
| 134 | + if (backendp::find($id)->update($request->all())) { | |
| 135 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil diubah']); | |
| 136 | + } else { | |
| 137 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal diubah']); | |
| 138 | + } | |
| 139 | + } | |
| 140 | + return response()->json($respon); | |
| 141 | + } | |
| 142 | + | |
| 143 | + /** | |
| 144 | + * Remove the specified resource from storage. | |
| 145 | + * | |
| 146 | + * @param int $id | |
| 147 | + * @return \Illuminate\Http\Response | |
| 148 | + */ | |
| 149 | + | |
| 150 | + public function hapus($id) | |
| 151 | + { | |
| 152 | + $backendp = backendp::find($id); | |
| 153 | + return view('backend.backendp.hapus', ['backendp' => $backendp]); | |
| 154 | + } | |
| 155 | + | |
| 156 | + public function destroy($id) | |
| 157 | + { | |
| 158 | + $backendp = backendp::find($id); | |
| 159 | + if ($backendp->delete()) { | |
| 160 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil dihapus']); | |
| 161 | + } else { | |
| 162 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal dihapus']); | |
| 163 | + } | |
| 164 | + return response()->json($respon); | |
| 165 | + } | |
| 108 | 166 | |
| 109 | 167 | } |
app/Http/Controllers/Backend/cmsController.php
| ... | ... | @@ -4,8 +4,151 @@ namespace App\Http\Controllers\Backend; |
| 4 | 4 | |
| 5 | 5 | use App\Http\Controllers\Controller; |
| 6 | 6 | use Illuminate\Http\Request; |
| 7 | +use Illuminate\Support\Facades\Validator; | |
| 8 | +use App\Cms; | |
| 9 | +use App\User; | |
| 10 | +use Yajra\DataTables\Facades\DataTables; | |
| 7 | 11 | |
| 8 | 12 | class cmsController extends Controller |
| 9 | 13 | { |
| 10 | - // | |
| 14 | + public function index() | |
| 15 | + { | |
| 16 | + $cms = Cms::all(); | |
| 17 | + return view('backend.cms.index', compact('cms')); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function data(Request $request) | |
| 21 | + { | |
| 22 | + if ($request->ajax()) { | |
| 23 | + $cms = Cms::orderBy('id', 'desc'); | |
| 24 | + return Datatables::of($cms) | |
| 25 | + ->addIndexColumn() | |
| 26 | + // ->addColumn('lampiran', function($cms){ | |
| 27 | + // return '<a href="'. $cms->url_berkas .'">Download</a>'; | |
| 28 | + // }) | |
| 29 | + ->addColumn( | |
| 30 | + 'action', | |
| 31 | + '<center> | |
| 32 | + <a class="edit ubah" data-toggle="tooltip" data-placement="top" title="Edit" cms-id="{{ $id }}" href="#edit-{{ $id }}"> | |
| 33 | + <i class="fa fa-pencil text-warning"></i> | |
| 34 | + </a> | |
| 35 | + <a class="delete hidden-xs hidden-sm hapus" data-toggle="tooltip" data-placement="top" title="Delete" cms-id="{{ $id }}" href="#hapus-{{ $id }}" > | |
| 36 | + <i class="fa fa-trash text-danger"></i> | |
| 37 | + </a> | |
| 38 | + </center>' | |
| 39 | + ) | |
| 40 | + ->rawColumns(['action', 'lampiran'])->make(true); | |
| 41 | + } else { | |
| 42 | + exit("Not an AJAX request -_-"); | |
| 43 | + } | |
| 44 | + } | |
| 45 | + | |
| 46 | + public function data_detail(Request $request, $id) | |
| 47 | + { | |
| 48 | + if ($request->ajax()) { | |
| 49 | + $users = Cms::find($id)->user; | |
| 50 | + return Datatables::of($users) | |
| 51 | + ->addIndexColumn()->make(true); | |
| 52 | + } else { | |
| 53 | + exit("Not an AJAX request -_-"); | |
| 54 | + } | |
| 55 | + } | |
| 56 | + | |
| 57 | + public function create(Request $request) | |
| 58 | + { | |
| 59 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 60 | + | |
| 61 | + return view('backend.cms.tambah'); | |
| 62 | + } | |
| 63 | + | |
| 64 | + /** | |
| 65 | + * Store a newly created resource in storage. | |
| 66 | + * | |
| 67 | + * @param \Illuminate\Http\Request $request | |
| 68 | + * @return \Illuminate\Http\Response | |
| 69 | + */ | |
| 70 | + | |
| 71 | + public function store(Request $request) | |
| 72 | + { | |
| 73 | + $validator = Validator::make($request->all(), [ | |
| 74 | + | |
| 75 | + // 'katartikel_id' => 'required', | |
| 76 | + 'judul' => 'required', | |
| 77 | + 'konten' => 'required', | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + ]); | |
| 82 | + if ($validator->fails()) { | |
| 83 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 84 | + } else { | |
| 85 | + if (Cms::create($request->all())) { | |
| 86 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 87 | + } else { | |
| 88 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 89 | + } | |
| 90 | + } | |
| 91 | + return response()->json($respon); | |
| 92 | + } | |
| 93 | + | |
| 94 | + | |
| 95 | + public function edit($id) | |
| 96 | + { | |
| 97 | + $cms = Cms::find($id); | |
| 98 | + return view('backend.cms.ubah', ['cms' => $cms]); | |
| 99 | + } | |
| 100 | + | |
| 101 | + /** | |
| 102 | + * Update the specified resource in storage. | |
| 103 | + * | |
| 104 | + * @param \Illuminate\Http\Request $request | |
| 105 | + * @param int $id | |
| 106 | + * @return \Illuminate\Http\Response | |
| 107 | + */ | |
| 108 | + public function update(Request $request, $id) | |
| 109 | + { | |
| 110 | + $validator = Validator::make($request->all(), [ | |
| 111 | + | |
| 112 | + 'judul' => 'required', | |
| 113 | + 'konten' => 'required', | |
| 114 | + | |
| 115 | + | |
| 116 | + ]); | |
| 117 | + if ($validator->fails()) { | |
| 118 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 119 | + } else { | |
| 120 | + if (cms::find($id)->update($request->all())) { | |
| 121 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil diubah']); | |
| 122 | + } else { | |
| 123 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal diubah']); | |
| 124 | + } | |
| 125 | + } | |
| 126 | + return response()->json($respon); | |
| 127 | + } | |
| 128 | + | |
| 129 | + /** | |
| 130 | + * Remove the specified resource from storage. | |
| 131 | + * | |
| 132 | + * @param int $id | |
| 133 | + * @return \Illuminate\Http\Response | |
| 134 | + */ | |
| 135 | + | |
| 136 | + public function hapus($id) | |
| 137 | + { | |
| 138 | + $cms = Cms::find($id); | |
| 139 | + return view('backend.cms.hapus', ['cms' => $cms]); | |
| 140 | + } | |
| 141 | + | |
| 142 | + public function destroy($id) | |
| 143 | + { | |
| 144 | + $cms = Cms::find($id); | |
| 145 | + if ($cms->delete()) { | |
| 146 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil dihapus']); | |
| 147 | + } else { | |
| 148 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal dihapus']); | |
| 149 | + } | |
| 150 | + return response()->json($respon); | |
| 151 | + } | |
| 152 | + | |
| 153 | + | |
| 11 | 154 | } |
app/Http/Controllers/Backend/eofficeController.php
| ... | ... | @@ -6,11 +6,10 @@ use App\Http\Controllers\Controller; |
| 6 | 6 | use Illuminate\Http\Request; |
| 7 | 7 | use Yajra\DataTables\Facades\DataTables; |
| 8 | 8 | use Illuminate\Support\Facades\Auth; |
| 9 | +use Illuminate\Support\Facades\Validator; | |
| 9 | 10 | use App\Eoffice; |
| 10 | 11 | use App\Katartikel; |
| 11 | 12 | use App\User; |
| 12 | -use Validator; | |
| 13 | - | |
| 14 | 13 | |
| 15 | 14 | class eofficeController extends Controller |
| 16 | 15 | { |
| ... | ... | @@ -58,17 +57,9 @@ class eofficeController extends Controller |
| 58 | 57 | |
| 59 | 58 | public function create(Request $request) |
| 60 | 59 | { |
| 61 | - // $eoffice = Eoffice::create(); | |
| 62 | - // $katartikel_id = Katartikel::pluck('katartikel_id', 'id'); | |
| 63 | - // $eoffice = Eoffice::whith('katartikel')->where | |
| 64 | - // dd($eoffice); | |
| 65 | - | |
| 66 | - // $request->request->add(['user_id' => auth()->user()->id]); | |
| 67 | - // dd($request->all()); | |
| 68 | - //$eoffice = Eoffice::create($request->all()); | |
| 69 | - | |
| 60 | + | |
| 70 | 61 | return view('backend.eoffice.tambah'); |
| 71 | - // [ 'eoffices' => Eoffice::with('katartikel')] | |
| 62 | + | |
| 72 | 63 | |
| 73 | 64 | } |
| 74 | 65 | |
| ... | ... | @@ -105,8 +96,8 @@ class eofficeController extends Controller |
| 105 | 96 | public function edit($id) |
| 106 | 97 | { |
| 107 | 98 | $eoffice = Eoffice::find($id); |
| 108 | - $katartikel_id = Eoffice::pluck('id','katartikel_id'); | |
| 109 | - return view('backend.eoffice.ubah', compact('eoffice','katartikel_id')); | |
| 99 | + | |
| 100 | + return view('backend.eoffice.ubah', compact('eoffice')); | |
| 110 | 101 | } |
| 111 | 102 | |
| 112 | 103 | /** |
| ... | ... | @@ -119,7 +110,7 @@ class eofficeController extends Controller |
| 119 | 110 | public function update(Request $request, $id) |
| 120 | 111 | { |
| 121 | 112 | $validator = Validator::make($request->all(), [ |
| 122 | - // 'katartikel_id' => 'required', | |
| 113 | + | |
| 123 | 114 | 'judul' => 'required', |
| 124 | 115 | 'konten' => 'required', |
| 125 | 116 |
app/Http/Controllers/Backend/frameworkController.php
| ... | ... | @@ -4,8 +4,151 @@ namespace App\Http\Controllers\Backend; |
| 4 | 4 | |
| 5 | 5 | use App\Http\Controllers\Controller; |
| 6 | 6 | use Illuminate\Http\Request; |
| 7 | +use App\Framework; | |
| 8 | +use App\User; | |
| 9 | +use Yajra\DataTables\Facades\DataTables; | |
| 10 | +use Illuminate\Support\Facades\Validator; | |
| 7 | 11 | |
| 8 | 12 | class frameworkController extends Controller |
| 9 | 13 | { |
| 10 | - // | |
| 14 | + public function index() | |
| 15 | + { | |
| 16 | + $framework = Framework::all(); | |
| 17 | + return view('backend.framework.index', compact('framework')); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function data(Request $request) | |
| 21 | + { | |
| 22 | + if ($request->ajax()) { | |
| 23 | + $framework = framework::orderBy('id', 'desc'); | |
| 24 | + return Datatables::of($framework) | |
| 25 | + ->addIndexColumn() | |
| 26 | + // ->addColumn('lampiran', function($framework){ | |
| 27 | + // return '<a href="'. $framework->url_berkas .'">Download</a>'; | |
| 28 | + // }) | |
| 29 | + ->addColumn( | |
| 30 | + 'action', | |
| 31 | + '<center> | |
| 32 | + <a class="edit ubah" data-toggle="tooltip" data-placement="top" title="Edit" framework-id="{{ $id }}" href="#edit-{{ $id }}"> | |
| 33 | + <i class="fa fa-pencil text-warning"></i> | |
| 34 | + </a> | |
| 35 | + <a class="delete hidden-xs hidden-sm hapus" data-toggle="tooltip" data-placement="top" title="Delete" framework-id="{{ $id }}" href="#hapus-{{ $id }}" > | |
| 36 | + <i class="fa fa-trash text-danger"></i> | |
| 37 | + </a> | |
| 38 | + </center>' | |
| 39 | + ) | |
| 40 | + ->rawColumns(['action', 'lampiran'])->make(true); | |
| 41 | + } else { | |
| 42 | + exit("Not an AJAX request -_-"); | |
| 43 | + } | |
| 44 | + } | |
| 45 | + | |
| 46 | + public function data_detail(Request $request, $id) | |
| 47 | + { | |
| 48 | + if ($request->ajax()) { | |
| 49 | + $users = Framework::find($id)->user; | |
| 50 | + return Datatables::of($users) | |
| 51 | + ->addIndexColumn()->make(true); | |
| 52 | + } else { | |
| 53 | + exit("Not an AJAX request -_-"); | |
| 54 | + } | |
| 55 | + } | |
| 56 | + | |
| 57 | + public function create(Request $request) | |
| 58 | + { | |
| 59 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 60 | + | |
| 61 | + return view('backend.framework.tambah'); | |
| 62 | + } | |
| 63 | + | |
| 64 | + /** | |
| 65 | + * Store a newly created resource in storage. | |
| 66 | + * | |
| 67 | + * @param \Illuminate\Http\Request $request | |
| 68 | + * @return \Illuminate\Http\Response | |
| 69 | + */ | |
| 70 | + | |
| 71 | + public function store(Request $request) | |
| 72 | + { | |
| 73 | + $validator = Validator::make($request->all(), [ | |
| 74 | + | |
| 75 | + // 'katartikel_id' => 'required', | |
| 76 | + 'judul' => 'required', | |
| 77 | + 'konten' => 'required', | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + ]); | |
| 82 | + if ($validator->fails()) { | |
| 83 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 84 | + } else { | |
| 85 | + if (Framework::create($request->all())) { | |
| 86 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 87 | + } else { | |
| 88 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 89 | + } | |
| 90 | + } | |
| 91 | + return response()->json($respon); | |
| 92 | + } | |
| 93 | + | |
| 94 | + public function edit($id) | |
| 95 | + { | |
| 96 | + $framework = framework::find($id); | |
| 97 | + return view('backend.framework.ubah', ['framework' => $framework]); | |
| 98 | + } | |
| 99 | + | |
| 100 | + /** | |
| 101 | + * Update the specified resource in storage. | |
| 102 | + * | |
| 103 | + * @param \Illuminate\Http\Request $request | |
| 104 | + * @param int $id | |
| 105 | + * @return \Illuminate\Http\Response | |
| 106 | + */ | |
| 107 | + public function update(Request $request, $id) | |
| 108 | + { | |
| 109 | + $validator = Validator::make($request->all(), [ | |
| 110 | + | |
| 111 | + 'judul' => 'required', | |
| 112 | + 'konten' => 'required', | |
| 113 | + | |
| 114 | + | |
| 115 | + ]); | |
| 116 | + if ($validator->fails()) { | |
| 117 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 118 | + } else { | |
| 119 | + if (Framework::find($id)->update($request->all())) { | |
| 120 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil diubah']); | |
| 121 | + } else { | |
| 122 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal diubah']); | |
| 123 | + } | |
| 124 | + } | |
| 125 | + return response()->json($respon); | |
| 126 | + } | |
| 127 | + | |
| 128 | + /** | |
| 129 | + * Remove the specified resource from storage. | |
| 130 | + * | |
| 131 | + * @param int $id | |
| 132 | + * @return \Illuminate\Http\Response | |
| 133 | + */ | |
| 134 | + | |
| 135 | + public function hapus($id) | |
| 136 | + { | |
| 137 | + $framework = Framework::find($id); | |
| 138 | + return view('backend.framework.hapus', ['framework' => $framework]); | |
| 139 | + } | |
| 140 | + | |
| 141 | + public function destroy($id) | |
| 142 | + { | |
| 143 | + $framework = Framework::find($id); | |
| 144 | + if ($framework->delete()) { | |
| 145 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil dihapus']); | |
| 146 | + } else { | |
| 147 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal dihapus']); | |
| 148 | + } | |
| 149 | + return response()->json($respon); | |
| 150 | + } | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 11 | 154 | } |
app/Http/Controllers/Backend/frontendpController.php
| ... | ... | @@ -5,7 +5,7 @@ namespace App\Http\Controllers\Backend; |
| 5 | 5 | use App\Http\Controllers\Controller; |
| 6 | 6 | use Illuminate\Http\Request; |
| 7 | 7 | use Yajra\DataTables\Facades\DataTables; |
| 8 | -use Validator; | |
| 8 | +use Illuminate\Support\Facades\Validator; | |
| 9 | 9 | use App\Frontendp; |
| 10 | 10 | use App\Katartikel; |
| 11 | 11 | use App\User; |
| ... | ... | @@ -14,7 +14,7 @@ class frontendpController extends Controller |
| 14 | 14 | { |
| 15 | 15 | public function index() |
| 16 | 16 | { |
| 17 | - return view('backend.feprog.index'); | |
| 17 | + return view('backend.frontendp.index'); | |
| 18 | 18 | } |
| 19 | 19 | |
| 20 | 20 | public function data(Request $request) |
| ... | ... | @@ -23,16 +23,16 @@ class frontendpController extends Controller |
| 23 | 23 | $frontendp = Frontendp::orderBy('id', 'desc'); |
| 24 | 24 | return Datatables::of($frontendp) |
| 25 | 25 | ->addIndexColumn() |
| 26 | - // ->addColumn('lampiran', function($eoffice){ | |
| 27 | - // return '<a href="'. $eoffice->url_berkas .'">Download</a>'; | |
| 26 | + // ->addColumn('lampiran', function($frontendp){ | |
| 27 | + // return '<a href="'. $frontendp->url_berkas .'">Download</a>'; | |
| 28 | 28 | // }) |
| 29 | 29 | ->addColumn( |
| 30 | 30 | 'action', |
| 31 | 31 | '<center> |
| 32 | - <a class="edit ubah" data-toggle="tooltip" data-placement="top" title="Edit" eoffice-id="{{ $id }}" href="#edit-{{ $id }}"> | |
| 32 | + <a class="edit ubah" data-toggle="tooltip" data-placement="top" title="Edit" frontendp-id="{{ $id }}" href="#edit-{{ $id }}"> | |
| 33 | 33 | <i class="fa fa-pencil text-warning"></i> |
| 34 | 34 | </a> |
| 35 | - <a class="delete hidden-xs hidden-sm hapus" data-toggle="tooltip" data-placement="top" title="Delete" eoffice-id="{{ $id }}" href="#hapus-{{ $id }}" > | |
| 35 | + <a class="delete hidden-xs hidden-sm hapus" data-toggle="tooltip" data-placement="top" title="Delete" frontendp-id="{{ $id }}" href="#hapus-{{ $id }}" > | |
| 36 | 36 | <i class="fa fa-trash text-danger"></i> |
| 37 | 37 | </a> |
| 38 | 38 | </center>' |
| ... | ... | @@ -54,5 +54,103 @@ class frontendpController extends Controller |
| 54 | 54 | } |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | + public function create(Request $request) | |
| 58 | + { | |
| 59 | + | |
| 60 | + return view('backend.frontendp.tambah'); | |
| 61 | + | |
| 62 | + | |
| 63 | + } | |
| 64 | + | |
| 65 | + /** | |
| 66 | + * Store a newly created resource in storage. | |
| 67 | + * | |
| 68 | + * @param \Illuminate\Http\Request $request | |
| 69 | + * @return \Illuminate\Http\Response | |
| 70 | + */ | |
| 71 | + | |
| 72 | + public function store(Request $request) | |
| 73 | + { | |
| 74 | + $validator = Validator::make($request->all(), [ | |
| 75 | + | |
| 76 | + | |
| 77 | + 'judul' => 'required', | |
| 78 | + 'konten' => 'required', | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + ]); | |
| 83 | + if ($validator->fails()) { | |
| 84 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 85 | + } else { | |
| 86 | + if (Frontendp::create($request->all())) { | |
| 87 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 88 | + } else { | |
| 89 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 90 | + } | |
| 91 | + } | |
| 92 | + return response()->json($respon); | |
| 93 | + } | |
| 94 | + | |
| 95 | + public function edit($id) | |
| 96 | + { | |
| 97 | + $frontendp = frontendp::find($id); | |
| 98 | + | |
| 99 | + return view('backend.frontendp.ubah', compact('frontendp')); | |
| 100 | + } | |
| 101 | + | |
| 102 | + /** | |
| 103 | + * Update the specified resource in storage. | |
| 104 | + * | |
| 105 | + * @param \Illuminate\Http\Request $request | |
| 106 | + * @param int $id | |
| 107 | + * @return \Illuminate\Http\Response | |
| 108 | + */ | |
| 109 | + public function update(Request $request, $id) | |
| 110 | + { | |
| 111 | + $validator = Validator::make($request->all(), [ | |
| 112 | + | |
| 113 | + 'judul' => 'required', | |
| 114 | + 'konten' => 'required', | |
| 115 | + | |
| 116 | + | |
| 117 | + ]); | |
| 118 | + if ($validator->fails()) { | |
| 119 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 120 | + } else { | |
| 121 | + if (Frontendp::find($id)->update($request->all())) { | |
| 122 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil diubah']); | |
| 123 | + } else { | |
| 124 | + $respon = array('statuss'=>false, 'pesan' => ['msg' => 'Data gagal diubah']); | |
| 125 | + } | |
| 126 | + } | |
| 127 | + return response()->json($respon); | |
| 128 | + } | |
| 129 | + | |
| 130 | + /** | |
| 131 | + * Remove the specified resource from storage. | |
| 132 | + * | |
| 133 | + * @param int $id | |
| 134 | + * @return \Illuminate\Http\Response | |
| 135 | + */ | |
| 136 | + | |
| 137 | + public function hapus($id) | |
| 138 | + { | |
| 139 | + $frontendp = Frontendp::find($id); | |
| 140 | + return view('backend.frontendp.hapus', ['frontendp' => $frontendp]); | |
| 141 | + } | |
| 142 | + | |
| 143 | + public function destroy($id) | |
| 144 | + { | |
| 145 | + $frontendp = Frontendp::find($id); | |
| 146 | + if ($frontendp->delete()) { | |
| 147 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil dihapus']); | |
| 148 | + } else { | |
| 149 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal dihapus']); | |
| 150 | + } | |
| 151 | + return response()->json($respon); | |
| 152 | + } | |
| 153 | + | |
| 154 | + | |
| 57 | 155 | |
| 58 | 156 | } |
app/Http/Controllers/Backend/javascriptController.php
| ... | ... | @@ -4,8 +4,149 @@ namespace App\Http\Controllers\Backend; |
| 4 | 4 | |
| 5 | 5 | use App\Http\Controllers\Controller; |
| 6 | 6 | use Illuminate\Http\Request; |
| 7 | +use Illuminate\Support\Facades\Validator; | |
| 8 | +use Yajra\DataTables\Facades\DataTables; | |
| 9 | +use App\Javascript; | |
| 10 | +use App\User; | |
| 7 | 11 | |
| 8 | 12 | class javascriptController extends Controller |
| 9 | 13 | { |
| 10 | - // | |
| 14 | + public function index() | |
| 15 | + { | |
| 16 | + $javascript = Javascript::all(); | |
| 17 | + return view('backend.javascript.index', compact('javascript')); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function data(Request $request) | |
| 21 | + { | |
| 22 | + if ($request->ajax()) { | |
| 23 | + $javascript = javascript::orderBy('id', 'desc'); | |
| 24 | + return Datatables::of($javascript) | |
| 25 | + ->addIndexColumn() | |
| 26 | + // ->addColumn('lampiran', function($javascript){ | |
| 27 | + // return '<a href="'. $javascript->url_berkas .'">Download</a>'; | |
| 28 | + // }) | |
| 29 | + ->addColumn( | |
| 30 | + 'action', | |
| 31 | + '<center> | |
| 32 | + <a class="edit ubah" data-toggle="tooltip" data-placement="top" title="Edit" javascript-id="{{ $id }}" href="#edit-{{ $id }}"> | |
| 33 | + <i class="fa fa-pencil text-warning"></i> | |
| 34 | + </a> | |
| 35 | + <a class="delete hidden-xs hidden-sm hapus" data-toggle="tooltip" data-placement="top" title="Delete" javascript-id="{{ $id }}" href="#hapus-{{ $id }}" > | |
| 36 | + <i class="fa fa-trash text-danger"></i> | |
| 37 | + </a> | |
| 38 | + </center>' | |
| 39 | + ) | |
| 40 | + ->rawColumns(['action', 'lampiran'])->make(true); | |
| 41 | + } else { | |
| 42 | + exit("Not an AJAX request -_-"); | |
| 43 | + } | |
| 44 | + } | |
| 45 | + | |
| 46 | + public function data_detail(Request $request, $id) | |
| 47 | + { | |
| 48 | + if ($request->ajax()) { | |
| 49 | + $users = javascript::find($id)->user; | |
| 50 | + return Datatables::of($users) | |
| 51 | + ->addIndexColumn()->make(true); | |
| 52 | + } else { | |
| 53 | + exit("Not an AJAX request -_-"); | |
| 54 | + } | |
| 55 | + } | |
| 56 | + | |
| 57 | + public function create(Request $request) | |
| 58 | +{ | |
| 59 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 60 | + | |
| 61 | + return view('backend.javascript.tambah'); | |
| 62 | +} | |
| 63 | + | |
| 64 | + /** | |
| 65 | + * Store a newly created resource in storage. | |
| 66 | + * | |
| 67 | + * @param \Illuminate\Http\Request $request | |
| 68 | + * @return \Illuminate\Http\Response | |
| 69 | + */ | |
| 70 | + | |
| 71 | + public function store(Request $request) | |
| 72 | + { | |
| 73 | + $validator = Validator::make($request->all(), [ | |
| 74 | + | |
| 75 | + // 'katartikel_id' => 'required', | |
| 76 | + 'judul' => 'required', | |
| 77 | + 'konten' => 'required', | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + ]); | |
| 82 | + if ($validator->fails()) { | |
| 83 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 84 | + } else { | |
| 85 | + if (javascript::create($request->all())) { | |
| 86 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 87 | + } else { | |
| 88 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 89 | + } | |
| 90 | + } | |
| 91 | + return response()->json($respon); | |
| 92 | + } | |
| 93 | + | |
| 94 | + | |
| 95 | + public function edit($id) | |
| 96 | + { | |
| 97 | + $javascript = Javascript::find($id); | |
| 98 | + return view('backend.javascript.ubah', ['javascript' => $javascript]); | |
| 99 | + } | |
| 100 | + | |
| 101 | + /** | |
| 102 | + * Update the specified resource in storage. | |
| 103 | + * | |
| 104 | + * @param \Illuminate\Http\Request $request | |
| 105 | + * @param int $id | |
| 106 | + * @return \Illuminate\Http\Response | |
| 107 | + */ | |
| 108 | + public function update(Request $request, $id) | |
| 109 | + { | |
| 110 | + $validator = Validator::make($request->all(), [ | |
| 111 | + | |
| 112 | + 'judul' => 'required', | |
| 113 | + 'konten' => 'required', | |
| 114 | + | |
| 115 | + | |
| 116 | + ]); | |
| 117 | + if ($validator->fails()) { | |
| 118 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 119 | + } else { | |
| 120 | + if (Javascript::find($id)->update($request->all())) { | |
| 121 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil diubah']); | |
| 122 | + } else { | |
| 123 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal diubah']); | |
| 124 | + } | |
| 125 | + } | |
| 126 | + return response()->json($respon); | |
| 127 | + } | |
| 128 | + | |
| 129 | + /** | |
| 130 | + * Remove the specified resource from storage. | |
| 131 | + * | |
| 132 | + * @param int $id | |
| 133 | + * @return \Illuminate\Http\Response | |
| 134 | + */ | |
| 135 | + | |
| 136 | + public function hapus($id) | |
| 137 | + { | |
| 138 | + $javascript = Javascript::find($id); | |
| 139 | + return view('backend.javascript.hapus', ['javascript' => $javascript]); | |
| 140 | + } | |
| 141 | + | |
| 142 | + public function destroy($id) | |
| 143 | + { | |
| 144 | + $javascript = Javascript::find($id); | |
| 145 | + if ($javascript->delete()) { | |
| 146 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil dihapus']); | |
| 147 | + } else { | |
| 148 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal dihapus']); | |
| 149 | + } | |
| 150 | + return response()->json($respon); | |
| 151 | + } | |
| 11 | 152 | } |
app/Http/Controllers/Backend/laravelController.php
| ... | ... | @@ -60,7 +60,7 @@ class laravelController extends Controller |
| 60 | 60 | { |
| 61 | 61 | // $laravel = Laravel::create(); |
| 62 | 62 | //$katartikel_id = Katartikel::pluck('katartikel_id'); |
| 63 | - $katartikel_id = array('katartikel_id' => 333); | |
| 63 | + // $katartikel_id = array('katartikel_id' => 333); | |
| 64 | 64 | // dd($katartikel_id); |
| 65 | 65 | // $laravel = Laravel::whith('katartikel')->where |
| 66 | 66 | // dd($laravel); |
app/Http/Controllers/Backend/osController.php
| ... | ... | @@ -4,8 +4,149 @@ namespace App\Http\Controllers\Backend; |
| 4 | 4 | |
| 5 | 5 | use App\Http\Controllers\Controller; |
| 6 | 6 | use Illuminate\Http\Request; |
| 7 | +use App\Os; | |
| 8 | +use App\User; | |
| 9 | +use Yajra\DataTables\Facades\DataTables; | |
| 10 | +use Illuminate\Support\Facades\Validator; | |
| 7 | 11 | |
| 8 | 12 | class osController extends Controller |
| 9 | 13 | { |
| 10 | - // | |
| 14 | + public function index() | |
| 15 | + { | |
| 16 | + $os = Os::all(); | |
| 17 | + return view('backend.os.index', compact('os')); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function data(Request $request) | |
| 21 | + { | |
| 22 | + if ($request->ajax()) { | |
| 23 | + $os = Os::orderBy('id', 'desc'); | |
| 24 | + return Datatables::of($os) | |
| 25 | + ->addIndexColumn() | |
| 26 | + // ->addColumn('lampiran', function($os){ | |
| 27 | + // return '<a href="'. $os->url_berkas .'">Download</a>'; | |
| 28 | + // }) | |
| 29 | + ->addColumn( | |
| 30 | + 'action', | |
| 31 | + '<center> | |
| 32 | + <a class="edit ubah" data-toggle="tooltip" data-placement="top" title="Edit" os-id="{{ $id }}" href="#edit-{{ $id }}"> | |
| 33 | + <i class="fa fa-pencil text-warning"></i> | |
| 34 | + </a> | |
| 35 | + <a class="delete hidden-xs hidden-sm hapus" data-toggle="tooltip" data-placement="top" title="Delete" os-id="{{ $id }}" href="#hapus-{{ $id }}" > | |
| 36 | + <i class="fa fa-trash text-danger"></i> | |
| 37 | + </a> | |
| 38 | + </center>' | |
| 39 | + ) | |
| 40 | + ->rawColumns(['action', 'lampiran'])->make(true); | |
| 41 | + } else { | |
| 42 | + exit("Not an AJAX request -_-"); | |
| 43 | + } | |
| 44 | + } | |
| 45 | + | |
| 46 | + public function data_detail(Request $request, $id) | |
| 47 | + { | |
| 48 | + if ($request->ajax()) { | |
| 49 | + $users = Os::find($id)->user; | |
| 50 | + return Datatables::of($users) | |
| 51 | + ->addIndexColumn()->make(true); | |
| 52 | + } else { | |
| 53 | + exit("Not an AJAX request -_-"); | |
| 54 | + } | |
| 55 | + } | |
| 56 | + | |
| 57 | + public function create(Request $request) | |
| 58 | + { | |
| 59 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 60 | + | |
| 61 | + return view('backend.os.tambah'); | |
| 62 | + } | |
| 63 | + | |
| 64 | + /** | |
| 65 | + * Store a newly created resource in storage. | |
| 66 | + * | |
| 67 | + * @param \Illuminate\Http\Request $request | |
| 68 | + * @return \Illuminate\Http\Response | |
| 69 | + */ | |
| 70 | + | |
| 71 | + public function store(Request $request) | |
| 72 | + { | |
| 73 | + $validator = Validator::make($request->all(), [ | |
| 74 | + | |
| 75 | + // 'katartikel_id' => 'required', | |
| 76 | + 'judul' => 'required', | |
| 77 | + 'konten' => 'required', | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + ]); | |
| 82 | + if ($validator->fails()) { | |
| 83 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 84 | + } else { | |
| 85 | + if (Os::create($request->all())) { | |
| 86 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 87 | + } else { | |
| 88 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 89 | + } | |
| 90 | + } | |
| 91 | + return response()->json($respon); | |
| 92 | + } | |
| 93 | + | |
| 94 | + | |
| 95 | + public function edit($id) | |
| 96 | + { | |
| 97 | + $os = Os::find($id); | |
| 98 | + return view('backend.os.ubah', ['os' => $os]); | |
| 99 | + } | |
| 100 | + | |
| 101 | + /** | |
| 102 | + * Update the specified resource in storage. | |
| 103 | + * | |
| 104 | + * @param \Illuminate\Http\Request $request | |
| 105 | + * @param int $id | |
| 106 | + * @return \Illuminate\Http\Response | |
| 107 | + */ | |
| 108 | + public function update(Request $request, $id) | |
| 109 | + { | |
| 110 | + $validator = Validator::make($request->all(), [ | |
| 111 | + | |
| 112 | + 'judul' => 'required', | |
| 113 | + 'konten' => 'required', | |
| 114 | + | |
| 115 | + | |
| 116 | + ]); | |
| 117 | + if ($validator->fails()) { | |
| 118 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 119 | + } else { | |
| 120 | + if (Os::find($id)->update($request->all())) { | |
| 121 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil diubah']); | |
| 122 | + } else { | |
| 123 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal diubah']); | |
| 124 | + } | |
| 125 | + } | |
| 126 | + return response()->json($respon); | |
| 127 | + } | |
| 128 | + | |
| 129 | + /** | |
| 130 | + * Remove the specified resource from storage. | |
| 131 | + * | |
| 132 | + * @param int $id | |
| 133 | + * @return \Illuminate\Http\Response | |
| 134 | + */ | |
| 135 | + | |
| 136 | + public function hapus($id) | |
| 137 | + { | |
| 138 | + $os = Os::find($id); | |
| 139 | + return view('backend.os.hapus', ['os' => $os]); | |
| 140 | + } | |
| 141 | + | |
| 142 | + public function destroy($id) | |
| 143 | + { | |
| 144 | + $os = Os::find($id); | |
| 145 | + if ($os->delete()) { | |
| 146 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil dihapus']); | |
| 147 | + } else { | |
| 148 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal dihapus']); | |
| 149 | + } | |
| 150 | + return response()->json($respon); | |
| 151 | + } | |
| 11 | 152 | } |
app/Http/Controllers/Backend/sopController.php
| ... | ... | @@ -4,8 +4,150 @@ namespace App\Http\Controllers\Backend; |
| 4 | 4 | |
| 5 | 5 | use App\Http\Controllers\Controller; |
| 6 | 6 | use Illuminate\Http\Request; |
| 7 | +use Yajra\DataTables\Facades\DataTables; | |
| 8 | +use App\Sop; | |
| 9 | +use App\User; | |
| 10 | +use Illuminate\Support\Facades\Validator; | |
| 7 | 11 | |
| 8 | 12 | class sopController extends Controller |
| 9 | 13 | { |
| 10 | - // | |
| 14 | + public function index() | |
| 15 | + { | |
| 16 | + $sop = Sop::all(); | |
| 17 | + return view('backend.sop.index'); | |
| 18 | + } | |
| 19 | + | |
| 20 | + public function data(Request $request) | |
| 21 | + { | |
| 22 | + if ($request->ajax()) { | |
| 23 | + $sop = Sop::orderBy('id', 'desc'); | |
| 24 | + return Datatables::of($sop) | |
| 25 | + ->addIndexColumn() | |
| 26 | + // ->addColumn('lampiran', function($sop){ | |
| 27 | + // return '<a href="'. $sop->url_berkas .'">Download</a>'; | |
| 28 | + // }) | |
| 29 | + ->addColumn( | |
| 30 | + 'action', | |
| 31 | + '<center> | |
| 32 | + <a class="edit ubah" data-toggle="tooltip" data-placement="top" title="Edit" sop-id="{{ $id }}" href="#edit-{{ $id }}"> | |
| 33 | + <i class="fa fa-pencil text-warning"></i> | |
| 34 | + </a> | |
| 35 | + <a class="delete hidden-xs hidden-sm hapus" data-toggle="tooltip" data-placement="top" title="Delete" sop-id="{{ $id }}" href="#hapus-{{ $id }}" > | |
| 36 | + <i class="fa fa-trash text-danger"></i> | |
| 37 | + </a> | |
| 38 | + </center>' | |
| 39 | + ) | |
| 40 | + ->rawColumns(['action', 'lampiran'])->make(true); | |
| 41 | + } else { | |
| 42 | + exit("Not an AJAX request -_-"); | |
| 43 | + } | |
| 44 | + } | |
| 45 | + | |
| 46 | + public function data_detail(Request $request, $id) | |
| 47 | + { | |
| 48 | + if ($request->ajax()) { | |
| 49 | + $users = Sop::find($id)->user; | |
| 50 | + return Datatables::of($users) | |
| 51 | + ->addIndexColumn()->make(true); | |
| 52 | + } else { | |
| 53 | + exit("Not an AJAX request -_-"); | |
| 54 | + } | |
| 55 | +} | |
| 56 | + | |
| 57 | +public function create(Request $request) | |
| 58 | +{ | |
| 59 | + $request->request->add(['user_id' => auth()->user()->id]); | |
| 60 | + | |
| 61 | + return view('backend.sop.tambah'); | |
| 11 | 62 | } |
| 63 | + | |
| 64 | + /** | |
| 65 | + * Store a newly created resource in storage. | |
| 66 | + * | |
| 67 | + * @param \Illuminate\Http\Request $request | |
| 68 | + * @return \Illuminate\Http\Response | |
| 69 | + */ | |
| 70 | + | |
| 71 | + public function store(Request $request) | |
| 72 | + { | |
| 73 | + $validator = Validator::make($request->all(), [ | |
| 74 | + | |
| 75 | + // 'katartikel_id' => 'required', | |
| 76 | + 'judul' => 'required', | |
| 77 | + 'konten' => 'required', | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + ]); | |
| 82 | + if ($validator->fails()) { | |
| 83 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 84 | + } else { | |
| 85 | + if (Sop::create($request->all())) { | |
| 86 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil disimpan']); | |
| 87 | + } else { | |
| 88 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal disimpan']); | |
| 89 | + } | |
| 90 | + } | |
| 91 | + return response()->json($respon); | |
| 92 | + } | |
| 93 | + | |
| 94 | + | |
| 95 | + public function edit($id) | |
| 96 | + { | |
| 97 | + $sop = Sop::find($id); | |
| 98 | + return view('backend.sop.ubah', ['sop' => $sop]); | |
| 99 | + } | |
| 100 | + | |
| 101 | + /** | |
| 102 | + * Update the specified resource in storage. | |
| 103 | + * | |
| 104 | + * @param \Illuminate\Http\Request $request | |
| 105 | + * @param int $id | |
| 106 | + * @return \Illuminate\Http\Response | |
| 107 | + */ | |
| 108 | + public function update(Request $request, $id) | |
| 109 | + { | |
| 110 | + $validator = Validator::make($request->all(), [ | |
| 111 | + | |
| 112 | + 'judul' => 'required', | |
| 113 | + 'konten' => 'required', | |
| 114 | + | |
| 115 | + | |
| 116 | + ]); | |
| 117 | + if ($validator->fails()) { | |
| 118 | + $respon = array('status'=>false, 'pesan' => $validator->messages()); | |
| 119 | + } else { | |
| 120 | + if (Sop::find($id)->update($request->all())) { | |
| 121 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil diubah']); | |
| 122 | + } else { | |
| 123 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal diubah']); | |
| 124 | + } | |
| 125 | + } | |
| 126 | + return response()->json($respon); | |
| 127 | + } | |
| 128 | + | |
| 129 | + /** | |
| 130 | + * Remove the specified resource from storage. | |
| 131 | + * | |
| 132 | + * @param int $id | |
| 133 | + * @return \Illuminate\Http\Response | |
| 134 | + */ | |
| 135 | + | |
| 136 | + public function hapus($id) | |
| 137 | + { | |
| 138 | + $sop = Sop::find($id); | |
| 139 | + return view('backend.sop.hapus', ['sop' => $sop]); | |
| 140 | + } | |
| 141 | + | |
| 142 | + public function destroy($id) | |
| 143 | + { | |
| 144 | + $sop = Sop::find($id); | |
| 145 | + if ($sop->delete()) { | |
| 146 | + $respon = array('status'=>true, 'pesan' => ['msg' => 'Data berhasil dihapus']); | |
| 147 | + } else { | |
| 148 | + $respon = array('status'=>false, 'pesan' => ['msg' => 'Data gagal dihapus']); | |
| 149 | + } | |
| 150 | + return response()->json($respon); | |
| 151 | + } | |
| 152 | + | |
| 153 | +} | |
| 12 | 154 | \ No newline at end of file |
app/Os.php
| ... | ... | @@ -8,4 +8,19 @@ use Illuminate\Database\Eloquent\Model; |
| 8 | 8 | class Os extends Model |
| 9 | 9 | { |
| 10 | 10 | use HasFactory; |
| 11 | + | |
| 12 | + protected $fillable = ['id','judul','konten']; | |
| 13 | + | |
| 14 | + protected $table = "os"; | |
| 15 | + | |
| 16 | + public function artikel() | |
| 17 | + { | |
| 18 | + return $this->belongsTo('App\Katartikel'); | |
| 19 | + } | |
| 20 | + | |
| 21 | + public function user() | |
| 22 | + { | |
| 23 | + return $this->belongsTo('App\User'); | |
| 24 | + } | |
| 25 | + | |
| 11 | 26 | } |
database/migrations/2021_10_07_144619_create_kategoris_table.php
| ... | ... | @@ -0,0 +1,38 @@ |
| 1 | +<?php | |
| 2 | + | |
| 3 | +use Illuminate\Database\Migrations\Migration; | |
| 4 | +use Illuminate\Database\Schema\Blueprint; | |
| 5 | +use Illuminate\Support\Facades\Schema; | |
| 6 | + | |
| 7 | +class CreateKategorisTable extends Migration | |
| 8 | +{ | |
| 9 | + /** | |
| 10 | + * Run the migrations. | |
| 11 | + * | |
| 12 | + * @return void | |
| 13 | + */ | |
| 14 | + public function up() | |
| 15 | + { | |
| 16 | + Schema::create('kategoris', function (Blueprint $table) { | |
| 17 | + $table->bigIncrements('id'); | |
| 18 | + | |
| 19 | + $table->string('kode', 90)->nulllable(); | |
| 20 | + $table->string('nama')->nulllable(); | |
| 21 | + $table->text('keterangan')->nullable(); | |
| 22 | + | |
| 23 | + $table->timestamp('created_at')->nullable(); | |
| 24 | + $table->date('updated_at')->nullable(); | |
| 25 | + $table->timestamp('deleted_at')->nullable(); | |
| 26 | + }); | |
| 27 | + } | |
| 28 | + | |
| 29 | + /** | |
| 30 | + * Reverse the migrations. | |
| 31 | + * | |
| 32 | + * @return void | |
| 33 | + */ | |
| 34 | + public function down() | |
| 35 | + { | |
| 36 | + Schema::dropIfExists('kategoris'); | |
| 37 | + } | |
| 38 | +} |
database/migrations/2021_10_08_110118_create_formals_table.php
| ... | ... | @@ -16,6 +16,7 @@ class CreateFormalsTable extends Migration |
| 16 | 16 | Schema::create('formals', function (Blueprint $table) { |
| 17 | 17 | $table->bigIncrements('id'); |
| 18 | 18 | $table->string('dokumen_id')->nullable(); |
| 19 | + | |
| 19 | 20 | $table->foreignId('kategori_id')->references('id')->on('kategoris'); |
| 20 | 21 | $table->string('nomor')->nullable(false); |
| 21 | 22 | $table->string('tahun')->nullable(false); |
database/migrations/2021_10_19_091721_create_eoffices_table.php
| ... | ... | @@ -15,7 +15,6 @@ class CreateEofficesTable extends Migration |
| 15 | 15 | { |
| 16 | 16 | Schema::create('eoffices', function (Blueprint $table) { |
| 17 | 17 | $table->bigIncrements('id'); |
| 18 | - $table->foreignId('katartikel_id')->references('kategori_id')->on('katartikels'); | |
| 19 | 18 | $table->string('judul')->nulllable(); |
| 20 | 19 | $table->text('konten')->nullable(); |
| 21 | 20 | $table->string('image')->nullable(); |
resources/views/backend/art-cms/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1,2,3] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1,2,3] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1,2,3] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/art-eoffice/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul'}, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false }, | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/art-cms/index.blade.php
| ... | ... | @@ -0,0 +1,240 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show container-fluid col"> | |
| 11 | + | |
| 12 | + <div class="panel-content"> | |
| 13 | + | |
| 14 | + | |
| 15 | +</div> | |
| 16 | +</div> | |
| 17 | + | |
| 18 | + <!-- Format Baru --> | |
| 19 | + | |
| 20 | + <style> | |
| 21 | +@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap'); | |
| 22 | + | |
| 23 | +* { | |
| 24 | + padding: 0; | |
| 25 | + margin: 0; | |
| 26 | + box-sizing: border-box; | |
| 27 | + font-family: 'Poppins', sans-serif | |
| 28 | +} | |
| 29 | + | |
| 30 | +.container { | |
| 31 | + padding: 20px | |
| 32 | +} | |
| 33 | + | |
| 34 | +img { | |
| 35 | + height: 170px; | |
| 36 | + width: 100%; | |
| 37 | + object-fit: cover | |
| 38 | +} | |
| 39 | + | |
| 40 | +.bg-org { | |
| 41 | + text-transform: uppercase; | |
| 42 | + cursor: pointer; | |
| 43 | + border-radius: 3px; | |
| 44 | + background-color: #eca726; | |
| 45 | + color: white; | |
| 46 | + font-weight: 800; | |
| 47 | + font-size: 14px; | |
| 48 | + display: flex; | |
| 49 | + align-items: center; | |
| 50 | + justify-content: center; | |
| 51 | + padding: 3px 20px | |
| 52 | +} | |
| 53 | + | |
| 54 | +.bg-org:hover { | |
| 55 | + background-color: #eec67c | |
| 56 | +} | |
| 57 | + | |
| 58 | +.bg-blue { | |
| 59 | + text-transform: uppercase; | |
| 60 | + cursor: pointer; | |
| 61 | + border-radius: 3px; | |
| 62 | + background-color: #414df0; | |
| 63 | + color: white; | |
| 64 | + font-weight: 800; | |
| 65 | + font-size: 14px; | |
| 66 | + display: flex; | |
| 67 | + align-items: center; | |
| 68 | + justify-content: center; | |
| 69 | + padding: 3px 20px | |
| 70 | +} | |
| 71 | + | |
| 72 | +.bg-blue:hover { | |
| 73 | + background-color: #abb0f5 | |
| 74 | +} | |
| 75 | + | |
| 76 | +.bg-vio { | |
| 77 | + text-transform: uppercase; | |
| 78 | + cursor: pointer; | |
| 79 | + border-radius: 3px; | |
| 80 | + background-color: #b005ff; | |
| 81 | + color: white; | |
| 82 | + font-weight: 800; | |
| 83 | + font-size: 14px; | |
| 84 | + display: flex; | |
| 85 | + align-items: center; | |
| 86 | + justify-content: center; | |
| 87 | + padding: 3px 20px | |
| 88 | +} | |
| 89 | + | |
| 90 | +.bg-vio:hover { | |
| 91 | + background-color: #ce89ee | |
| 92 | +} | |
| 93 | + | |
| 94 | +.bg-green { | |
| 95 | + background-color: #27e727; | |
| 96 | + border-radius: 10%; | |
| 97 | + color: white; | |
| 98 | + font-size: 14px; | |
| 99 | + display: flex; | |
| 100 | + align-items: center; | |
| 101 | + justify-content: center; | |
| 102 | + padding: 1px 4px | |
| 103 | +} | |
| 104 | + | |
| 105 | +.bg-orgn { | |
| 106 | + background-color: #eca726; | |
| 107 | + border-radius: 10%; | |
| 108 | + color: white; | |
| 109 | + font-size: 14px; | |
| 110 | + display: flex; | |
| 111 | + align-items: center; | |
| 112 | + justify-content: center; | |
| 113 | + padding: 1px 4px | |
| 114 | +} | |
| 115 | + | |
| 116 | +.bg-blu { | |
| 117 | + background-color: #414df0; | |
| 118 | + border-radius: 10%; | |
| 119 | + color: white; | |
| 120 | + font-size: 14px; | |
| 121 | + display: flex; | |
| 122 | + align-items: center; | |
| 123 | + justify-content: center; | |
| 124 | + padding: 1px 4px | |
| 125 | +} | |
| 126 | + | |
| 127 | +.bg-violet { | |
| 128 | + background-color: #b005ff; | |
| 129 | + border-radius: 10%; | |
| 130 | + color: white; | |
| 131 | + font-size: 14px; | |
| 132 | + display: flex; | |
| 133 | + align-items: center; | |
| 134 | + justify-content: center; | |
| 135 | + padding: 1px 4px | |
| 136 | +} | |
| 137 | + | |
| 138 | +.text-muted { | |
| 139 | + font-size: 14px | |
| 140 | +} | |
| 141 | + | |
| 142 | +.fs5 { | |
| 143 | + line-height: 20px; | |
| 144 | + font-size: 16px | |
| 145 | +} | |
| 146 | + | |
| 147 | +.items { | |
| 148 | + font-size: 15px; | |
| 149 | + background-color: black; | |
| 150 | + color: white; | |
| 151 | + margin: 3px 3px; | |
| 152 | + padding: 4px 10px; | |
| 153 | + text-decoration: none; | |
| 154 | + border: 1px solid #ddd | |
| 155 | +} | |
| 156 | + | |
| 157 | +.items:hover { | |
| 158 | + background-color: #fcf7f7; | |
| 159 | + color: black; | |
| 160 | + transition: background-color .8s | |
| 161 | +} | |
| 162 | +#more { | |
| 163 | + display:none; | |
| 164 | +} | |
| 165 | + </style> | |
| 166 | + | |
| 167 | + | |
| 168 | + <div class="container"> | |
| 169 | + <div class="row"> | |
| 170 | + @foreach($content as $cmsall) | |
| 171 | + <div class="col-lg-12 order-lg-0 order-2"> | |
| 172 | + <div class="row"> | |
| 173 | + <div class="col-md-2 mb-2"> <img class="" src="https://images.pexels.com/photos/3184611/pexels-photo-3184611.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500" alt=""> </div> | |
| 174 | + <div class="col-md-8 mb-4"> | |
| 175 | + <div class="d-flex align-items-center"> <a href="{{ URL::asset($halaman->kode .'/geteoffice')}}" class="bg-org">Content Management System</a> <span class="text-muted ps-4"> {!! $cmsall->created_at !!}</span> </div> | |
| 176 | + <div> | |
| 177 | + <p class="text-capitalize fs5 my-3 fw-bolder">{!! $cmsall->judul !!}</p> | |
| 178 | + <p class="text-muted">{!! Str::limit($cmsall->konten, 100,'') !!} | |
| 179 | + | |
| 180 | + @if (strlen($cmsall->konten) > 100) | |
| 181 | + <span id="dots">...</span> | |
| 182 | + <span id="more">{!! substr($cmsall->konten, 100)!!} </span> | |
| 183 | + @endif | |
| 184 | + </p> | |
| 185 | + <button class="btn btn-xs btn-info" onclick="myFunction()" id="myBtn">Readmore</button> | |
| 186 | + | |
| 187 | + </div> | |
| 188 | + </div> | |
| 189 | +</div> | |
| 190 | +</div> | |
| 191 | + @endforeach | |
| 192 | +</div> | |
| 193 | +</div> | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | +</section> | |
| 199 | +</div> | |
| 200 | + </div> | |
| 201 | + | |
| 202 | +</div> | |
| 203 | + | |
| 204 | +@endsection | |
| 205 | +<script> | |
| 206 | + var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip]')) | |
| 207 | + var tooltipList = tooltipTriggerList.map(function(tooltipTriggerEl){ | |
| 208 | + | |
| 209 | + }) | |
| 210 | + </script> | |
| 211 | +@push('js') | |
| 212 | +@include('backend.home.datatable-js') | |
| 213 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 214 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 215 | +<script> | |
| 216 | + function myFunction() { | |
| 217 | + var dots = document.getElementById("dots"); | |
| 218 | + var moreText = document.getElementById("more"); | |
| 219 | + var btnText = document.getElementById("myBtn"); | |
| 220 | + | |
| 221 | + if (dots.style.display === "none") { | |
| 222 | + dots.style.display = "inline"; | |
| 223 | + btnText.innerHTML = "Read more"; | |
| 224 | + moreText.style.display = "none"; | |
| 225 | + } else { | |
| 226 | + dots.style.display = "none"; | |
| 227 | + btnText.innerHTML = "Read less"; | |
| 228 | + moreText.style.display = "inline"; | |
| 229 | + } | |
| 230 | +} | |
| 231 | + </script> | |
| 232 | + | |
| 233 | +@endpush | |
| 234 | +@push('css') | |
| 235 | +@include('backend.home.datatable-css') | |
| 236 | + | |
| 237 | +@endpush | |
| 238 | + | |
| 239 | + | |
| 240 | + |
resources/views/backend/art-cms/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/art-cms/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('art-eoffiice-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/art-cms') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('art-eoffiice-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/art-cms') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/art-cms/tambah.blade copy.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['artikelEoffice.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/art-cms/tambah.blade.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['art-cms.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + <!-- {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} --> | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/art-fw/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1,2,3] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1,2,3] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1,2,3] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/art-eoffice/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul'}, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false }, | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/art-fw/index.blade.php
| ... | ... | @@ -0,0 +1,240 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show container-fluid col"> | |
| 11 | + | |
| 12 | + <div class="panel-content"> | |
| 13 | + | |
| 14 | + | |
| 15 | +</div> | |
| 16 | +</div> | |
| 17 | + | |
| 18 | + <!-- Format Baru --> | |
| 19 | + | |
| 20 | + <style> | |
| 21 | +@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap'); | |
| 22 | + | |
| 23 | +* { | |
| 24 | + padding: 0; | |
| 25 | + margin: 0; | |
| 26 | + box-sizing: border-box; | |
| 27 | + font-family: 'Poppins', sans-serif | |
| 28 | +} | |
| 29 | + | |
| 30 | +.container { | |
| 31 | + padding: 20px | |
| 32 | +} | |
| 33 | + | |
| 34 | +img { | |
| 35 | + height: 170px; | |
| 36 | + width: 100%; | |
| 37 | + object-fit: cover | |
| 38 | +} | |
| 39 | + | |
| 40 | +.bg-org { | |
| 41 | + text-transform: uppercase; | |
| 42 | + cursor: pointer; | |
| 43 | + border-radius: 3px; | |
| 44 | + background-color: #eca726; | |
| 45 | + color: white; | |
| 46 | + font-weight: 800; | |
| 47 | + font-size: 14px; | |
| 48 | + display: flex; | |
| 49 | + align-items: center; | |
| 50 | + justify-content: center; | |
| 51 | + padding: 3px 20px | |
| 52 | +} | |
| 53 | + | |
| 54 | +.bg-org:hover { | |
| 55 | + background-color: #eec67c | |
| 56 | +} | |
| 57 | + | |
| 58 | +.bg-blue { | |
| 59 | + text-transform: uppercase; | |
| 60 | + cursor: pointer; | |
| 61 | + border-radius: 3px; | |
| 62 | + background-color: #414df0; | |
| 63 | + color: white; | |
| 64 | + font-weight: 800; | |
| 65 | + font-size: 14px; | |
| 66 | + display: flex; | |
| 67 | + align-items: center; | |
| 68 | + justify-content: center; | |
| 69 | + padding: 3px 20px | |
| 70 | +} | |
| 71 | + | |
| 72 | +.bg-blue:hover { | |
| 73 | + background-color: #abb0f5 | |
| 74 | +} | |
| 75 | + | |
| 76 | +.bg-vio { | |
| 77 | + text-transform: uppercase; | |
| 78 | + cursor: pointer; | |
| 79 | + border-radius: 3px; | |
| 80 | + background-color: #b005ff; | |
| 81 | + color: white; | |
| 82 | + font-weight: 800; | |
| 83 | + font-size: 14px; | |
| 84 | + display: flex; | |
| 85 | + align-items: center; | |
| 86 | + justify-content: center; | |
| 87 | + padding: 3px 20px | |
| 88 | +} | |
| 89 | + | |
| 90 | +.bg-vio:hover { | |
| 91 | + background-color: #ce89ee | |
| 92 | +} | |
| 93 | + | |
| 94 | +.bg-green { | |
| 95 | + background-color: #27e727; | |
| 96 | + border-radius: 10%; | |
| 97 | + color: white; | |
| 98 | + font-size: 14px; | |
| 99 | + display: flex; | |
| 100 | + align-items: center; | |
| 101 | + justify-content: center; | |
| 102 | + padding: 1px 4px | |
| 103 | +} | |
| 104 | + | |
| 105 | +.bg-orgn { | |
| 106 | + background-color: #eca726; | |
| 107 | + border-radius: 10%; | |
| 108 | + color: white; | |
| 109 | + font-size: 14px; | |
| 110 | + display: flex; | |
| 111 | + align-items: center; | |
| 112 | + justify-content: center; | |
| 113 | + padding: 1px 4px | |
| 114 | +} | |
| 115 | + | |
| 116 | +.bg-blu { | |
| 117 | + background-color: #414df0; | |
| 118 | + border-radius: 10%; | |
| 119 | + color: white; | |
| 120 | + font-size: 14px; | |
| 121 | + display: flex; | |
| 122 | + align-items: center; | |
| 123 | + justify-content: center; | |
| 124 | + padding: 1px 4px | |
| 125 | +} | |
| 126 | + | |
| 127 | +.bg-violet { | |
| 128 | + background-color: #b005ff; | |
| 129 | + border-radius: 10%; | |
| 130 | + color: white; | |
| 131 | + font-size: 14px; | |
| 132 | + display: flex; | |
| 133 | + align-items: center; | |
| 134 | + justify-content: center; | |
| 135 | + padding: 1px 4px | |
| 136 | +} | |
| 137 | + | |
| 138 | +.text-muted { | |
| 139 | + font-size: 14px | |
| 140 | +} | |
| 141 | + | |
| 142 | +.fs5 { | |
| 143 | + line-height: 20px; | |
| 144 | + font-size: 16px | |
| 145 | +} | |
| 146 | + | |
| 147 | +.items { | |
| 148 | + font-size: 15px; | |
| 149 | + background-color: black; | |
| 150 | + color: white; | |
| 151 | + margin: 3px 3px; | |
| 152 | + padding: 4px 10px; | |
| 153 | + text-decoration: none; | |
| 154 | + border: 1px solid #ddd | |
| 155 | +} | |
| 156 | + | |
| 157 | +.items:hover { | |
| 158 | + background-color: #fcf7f7; | |
| 159 | + color: black; | |
| 160 | + transition: background-color .8s | |
| 161 | +} | |
| 162 | +#more { | |
| 163 | + display:none; | |
| 164 | +} | |
| 165 | + </style> | |
| 166 | + | |
| 167 | + | |
| 168 | + <div class="container"> | |
| 169 | + <div class="row"> | |
| 170 | + @foreach($framework as $fwall) | |
| 171 | + <div class="col-lg-12 order-lg-0 order-2"> | |
| 172 | + <div class="row"> | |
| 173 | + <div class="col-md-2 mb-2"> <img class="" src="https://images.pexels.com/photos/3184611/pexels-photo-3184611.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500" alt=""> </div> | |
| 174 | + <div class="col-md-8 mb-4"> | |
| 175 | + <div class="d-flex align-items-center"> <a href="{{ URL::asset($halaman->kode .'/geteoffice')}}" class="bg-org">Framework</a> <span class="text-muted ps-4"> {!! $fwall->created_at !!}</span> </div> | |
| 176 | + <div> | |
| 177 | + <p class="text-capitalize fs5 my-3 fw-bolder">{!! $fwall->judul !!}</p> | |
| 178 | + <p class="text-muted">{!! Str::limit($fwall->konten, 100,'') !!} | |
| 179 | + | |
| 180 | + @if (strlen($fwall->konten) > 100) | |
| 181 | + <span id="dots">...</span> | |
| 182 | + <span id="more">{!! substr($fwall->konten, 100)!!} </span> | |
| 183 | + @endif | |
| 184 | + </p> | |
| 185 | + <button class="btn btn-xs btn-info" onclick="myFunction()" id="myBtn">Readmore</button> | |
| 186 | + | |
| 187 | + </div> | |
| 188 | + </div> | |
| 189 | +</div> | |
| 190 | +</div> | |
| 191 | + @endforeach | |
| 192 | +</div> | |
| 193 | +</div> | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | +</section> | |
| 199 | +</div> | |
| 200 | + </div> | |
| 201 | + | |
| 202 | +</div> | |
| 203 | + | |
| 204 | +@endsection | |
| 205 | +<script> | |
| 206 | + var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip]')) | |
| 207 | + var tooltipList = tooltipTriggerList.map(function(tooltipTriggerEl){ | |
| 208 | + | |
| 209 | + }) | |
| 210 | + </script> | |
| 211 | +@push('js') | |
| 212 | +@include('backend.home.datatable-js') | |
| 213 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 214 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 215 | +<script> | |
| 216 | + function myFunction() { | |
| 217 | + var dots = document.getElementById("dots"); | |
| 218 | + var moreText = document.getElementById("more"); | |
| 219 | + var btnText = document.getElementById("myBtn"); | |
| 220 | + | |
| 221 | + if (dots.style.display === "none") { | |
| 222 | + dots.style.display = "inline"; | |
| 223 | + btnText.innerHTML = "Read more"; | |
| 224 | + moreText.style.display = "none"; | |
| 225 | + } else { | |
| 226 | + dots.style.display = "none"; | |
| 227 | + btnText.innerHTML = "Read less"; | |
| 228 | + moreText.style.display = "inline"; | |
| 229 | + } | |
| 230 | +} | |
| 231 | + </script> | |
| 232 | + | |
| 233 | +@endpush | |
| 234 | +@push('css') | |
| 235 | +@include('backend.home.datatable-css') | |
| 236 | + | |
| 237 | +@endpush | |
| 238 | + | |
| 239 | + | |
| 240 | + |
resources/views/backend/art-fw/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/art-fw/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('art-fw-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/art-fw') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('art-fw-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/art-fw') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/art-fw/tambah.blade copy.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['artikelEoffice.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/art-fw/tambah.blade.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['art-fw.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + <!-- {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} --> | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/art-js/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1,2,3] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1,2,3] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1,2,3] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/art-eoffice/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul'}, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false }, | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/art-js/index.blade.php
| ... | ... | @@ -0,0 +1,240 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show container-fluid col"> | |
| 11 | + | |
| 12 | + <div class="panel-content"> | |
| 13 | + | |
| 14 | + | |
| 15 | +</div> | |
| 16 | +</div> | |
| 17 | + | |
| 18 | + <!-- Format Baru --> | |
| 19 | + | |
| 20 | + <style> | |
| 21 | +@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap'); | |
| 22 | + | |
| 23 | +* { | |
| 24 | + padding: 0; | |
| 25 | + margin: 0; | |
| 26 | + box-sizing: border-box; | |
| 27 | + font-family: 'Poppins', sans-serif | |
| 28 | +} | |
| 29 | + | |
| 30 | +.container { | |
| 31 | + padding: 20px | |
| 32 | +} | |
| 33 | + | |
| 34 | +img { | |
| 35 | + height: 170px; | |
| 36 | + width: 100%; | |
| 37 | + object-fit: cover | |
| 38 | +} | |
| 39 | + | |
| 40 | +.bg-org { | |
| 41 | + text-transform: uppercase; | |
| 42 | + cursor: pointer; | |
| 43 | + border-radius: 3px; | |
| 44 | + background-color: #eca726; | |
| 45 | + color: white; | |
| 46 | + font-weight: 800; | |
| 47 | + font-size: 14px; | |
| 48 | + display: flex; | |
| 49 | + align-items: center; | |
| 50 | + justify-content: center; | |
| 51 | + padding: 3px 20px | |
| 52 | +} | |
| 53 | + | |
| 54 | +.bg-org:hover { | |
| 55 | + background-color: #eec67c | |
| 56 | +} | |
| 57 | + | |
| 58 | +.bg-blue { | |
| 59 | + text-transform: uppercase; | |
| 60 | + cursor: pointer; | |
| 61 | + border-radius: 3px; | |
| 62 | + background-color: #414df0; | |
| 63 | + color: white; | |
| 64 | + font-weight: 800; | |
| 65 | + font-size: 14px; | |
| 66 | + display: flex; | |
| 67 | + align-items: center; | |
| 68 | + justify-content: center; | |
| 69 | + padding: 3px 20px | |
| 70 | +} | |
| 71 | + | |
| 72 | +.bg-blue:hover { | |
| 73 | + background-color: #abb0f5 | |
| 74 | +} | |
| 75 | + | |
| 76 | +.bg-vio { | |
| 77 | + text-transform: uppercase; | |
| 78 | + cursor: pointer; | |
| 79 | + border-radius: 3px; | |
| 80 | + background-color: #b005ff; | |
| 81 | + color: white; | |
| 82 | + font-weight: 800; | |
| 83 | + font-size: 14px; | |
| 84 | + display: flex; | |
| 85 | + align-items: center; | |
| 86 | + justify-content: center; | |
| 87 | + padding: 3px 20px | |
| 88 | +} | |
| 89 | + | |
| 90 | +.bg-vio:hover { | |
| 91 | + background-color: #ce89ee | |
| 92 | +} | |
| 93 | + | |
| 94 | +.bg-green { | |
| 95 | + background-color: #27e727; | |
| 96 | + border-radius: 10%; | |
| 97 | + color: white; | |
| 98 | + font-size: 14px; | |
| 99 | + display: flex; | |
| 100 | + align-items: center; | |
| 101 | + justify-content: center; | |
| 102 | + padding: 1px 4px | |
| 103 | +} | |
| 104 | + | |
| 105 | +.bg-orgn { | |
| 106 | + background-color: #eca726; | |
| 107 | + border-radius: 10%; | |
| 108 | + color: white; | |
| 109 | + font-size: 14px; | |
| 110 | + display: flex; | |
| 111 | + align-items: center; | |
| 112 | + justify-content: center; | |
| 113 | + padding: 1px 4px | |
| 114 | +} | |
| 115 | + | |
| 116 | +.bg-blu { | |
| 117 | + background-color: #414df0; | |
| 118 | + border-radius: 10%; | |
| 119 | + color: white; | |
| 120 | + font-size: 14px; | |
| 121 | + display: flex; | |
| 122 | + align-items: center; | |
| 123 | + justify-content: center; | |
| 124 | + padding: 1px 4px | |
| 125 | +} | |
| 126 | + | |
| 127 | +.bg-violet { | |
| 128 | + background-color: #b005ff; | |
| 129 | + border-radius: 10%; | |
| 130 | + color: white; | |
| 131 | + font-size: 14px; | |
| 132 | + display: flex; | |
| 133 | + align-items: center; | |
| 134 | + justify-content: center; | |
| 135 | + padding: 1px 4px | |
| 136 | +} | |
| 137 | + | |
| 138 | +.text-muted { | |
| 139 | + font-size: 14px | |
| 140 | +} | |
| 141 | + | |
| 142 | +.fs5 { | |
| 143 | + line-height: 20px; | |
| 144 | + font-size: 16px | |
| 145 | +} | |
| 146 | + | |
| 147 | +.items { | |
| 148 | + font-size: 15px; | |
| 149 | + background-color: black; | |
| 150 | + color: white; | |
| 151 | + margin: 3px 3px; | |
| 152 | + padding: 4px 10px; | |
| 153 | + text-decoration: none; | |
| 154 | + border: 1px solid #ddd | |
| 155 | +} | |
| 156 | + | |
| 157 | +.items:hover { | |
| 158 | + background-color: #fcf7f7; | |
| 159 | + color: black; | |
| 160 | + transition: background-color .8s | |
| 161 | +} | |
| 162 | +#more { | |
| 163 | + display:none; | |
| 164 | +} | |
| 165 | + </style> | |
| 166 | + | |
| 167 | + | |
| 168 | + <div class="container"> | |
| 169 | + <div class="row"> | |
| 170 | + @foreach($javascript as $jsall) | |
| 171 | + <div class="col-lg-12 order-lg-0 order-2"> | |
| 172 | + <div class="row"> | |
| 173 | + <div class="col-md-2 mb-2"> <img class="" src="https://images.pexels.com/photos/3184611/pexels-photo-3184611.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500" alt=""> </div> | |
| 174 | + <div class="col-md-8 mb-4"> | |
| 175 | + <div class="d-flex align-items-center"> <a href="{{ URL::asset($halaman->kode .'/geteoffice')}}" class="bg-org">Javascript</a> <span class="text-muted ps-4"> {!! $jsall->created_at !!}</span> </div> | |
| 176 | + <div> | |
| 177 | + <p class="text-capitalize fs5 my-3 fw-bolder">{!! $jsall->judul !!}</p> | |
| 178 | + <p class="text-muted">{!! Str::limit($jsall->konten, 100,'') !!} | |
| 179 | + | |
| 180 | + @if (strlen($jsall->konten) > 100) | |
| 181 | + <span id="dots">...</span> | |
| 182 | + <span id="more">{!! substr($jsfall->konten, 100)!!} </span> | |
| 183 | + @endif | |
| 184 | + </p> | |
| 185 | + <button class="btn btn-xs btn-info" onclick="myFunction()" id="myBtn">Readmore</button> | |
| 186 | + | |
| 187 | + </div> | |
| 188 | + </div> | |
| 189 | +</div> | |
| 190 | +</div> | |
| 191 | + @endforeach | |
| 192 | +</div> | |
| 193 | +</div> | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | +</section> | |
| 199 | +</div> | |
| 200 | + </div> | |
| 201 | + | |
| 202 | +</div> | |
| 203 | + | |
| 204 | +@endsection | |
| 205 | +<script> | |
| 206 | + var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip]')) | |
| 207 | + var tooltipList = tooltipTriggerList.map(function(tooltipTriggerEl){ | |
| 208 | + | |
| 209 | + }) | |
| 210 | + </script> | |
| 211 | +@push('js') | |
| 212 | +@include('backend.home.datatable-js') | |
| 213 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 214 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 215 | +<script> | |
| 216 | + function myFunction() { | |
| 217 | + var dots = document.getElementById("dots"); | |
| 218 | + var moreText = document.getElementById("more"); | |
| 219 | + var btnText = document.getElementById("myBtn"); | |
| 220 | + | |
| 221 | + if (dots.style.display === "none") { | |
| 222 | + dots.style.display = "inline"; | |
| 223 | + btnText.innerHTML = "Read more"; | |
| 224 | + moreText.style.display = "none"; | |
| 225 | + } else { | |
| 226 | + dots.style.display = "none"; | |
| 227 | + btnText.innerHTML = "Read less"; | |
| 228 | + moreText.style.display = "inline"; | |
| 229 | + } | |
| 230 | +} | |
| 231 | + </script> | |
| 232 | + | |
| 233 | +@endpush | |
| 234 | +@push('css') | |
| 235 | +@include('backend.home.datatable-css') | |
| 236 | + | |
| 237 | +@endpush | |
| 238 | + | |
| 239 | + | |
| 240 | + |
resources/views/backend/art-js/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/art-fw/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('art-fw-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/art-fw') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('art-fw-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/art-fw') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/art-js/tambah.blade copy.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['artikelEoffice.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/art-js/tambah.blade.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['art-fw.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + <!-- {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} --> | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/art-os/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1,2,3] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1,2,3] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1,2,3] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/art-os/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul'}, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false }, | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/art-os/index.blade.php
| ... | ... | @@ -0,0 +1,240 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show container-fluid col"> | |
| 11 | + | |
| 12 | + <div class="panel-content"> | |
| 13 | + | |
| 14 | + | |
| 15 | +</div> | |
| 16 | +</div> | |
| 17 | + | |
| 18 | + <!-- Format Baru --> | |
| 19 | + | |
| 20 | + <style> | |
| 21 | +@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap'); | |
| 22 | + | |
| 23 | +* { | |
| 24 | + padding: 0; | |
| 25 | + margin: 0; | |
| 26 | + box-sizing: border-box; | |
| 27 | + font-family: 'Poppins', sans-serif | |
| 28 | +} | |
| 29 | + | |
| 30 | +.container { | |
| 31 | + padding: 20px | |
| 32 | +} | |
| 33 | + | |
| 34 | +img { | |
| 35 | + height: 170px; | |
| 36 | + width: 100%; | |
| 37 | + object-fit: cover | |
| 38 | +} | |
| 39 | + | |
| 40 | +.bg-org { | |
| 41 | + text-transform: uppercase; | |
| 42 | + cursor: pointer; | |
| 43 | + border-radius: 3px; | |
| 44 | + background-color: #eca726; | |
| 45 | + color: white; | |
| 46 | + font-weight: 800; | |
| 47 | + font-size: 14px; | |
| 48 | + display: flex; | |
| 49 | + align-items: center; | |
| 50 | + justify-content: center; | |
| 51 | + padding: 3px 20px | |
| 52 | +} | |
| 53 | + | |
| 54 | +.bg-org:hover { | |
| 55 | + background-color: #eec67c | |
| 56 | +} | |
| 57 | + | |
| 58 | +.bg-blue { | |
| 59 | + text-transform: uppercase; | |
| 60 | + cursor: pointer; | |
| 61 | + border-radius: 3px; | |
| 62 | + background-color: #414df0; | |
| 63 | + color: white; | |
| 64 | + font-weight: 800; | |
| 65 | + font-size: 14px; | |
| 66 | + display: flex; | |
| 67 | + align-items: center; | |
| 68 | + justify-content: center; | |
| 69 | + padding: 3px 20px | |
| 70 | +} | |
| 71 | + | |
| 72 | +.bg-blue:hover { | |
| 73 | + background-color: #abb0f5 | |
| 74 | +} | |
| 75 | + | |
| 76 | +.bg-vio { | |
| 77 | + text-transform: uppercase; | |
| 78 | + cursor: pointer; | |
| 79 | + border-radius: 3px; | |
| 80 | + background-color: #b005ff; | |
| 81 | + color: white; | |
| 82 | + font-weight: 800; | |
| 83 | + font-size: 14px; | |
| 84 | + display: flex; | |
| 85 | + align-items: center; | |
| 86 | + justify-content: center; | |
| 87 | + padding: 3px 20px | |
| 88 | +} | |
| 89 | + | |
| 90 | +.bg-vio:hover { | |
| 91 | + background-color: #ce89ee | |
| 92 | +} | |
| 93 | + | |
| 94 | +.bg-green { | |
| 95 | + background-color: #27e727; | |
| 96 | + border-radius: 10%; | |
| 97 | + color: white; | |
| 98 | + font-size: 14px; | |
| 99 | + display: flex; | |
| 100 | + align-items: center; | |
| 101 | + justify-content: center; | |
| 102 | + padding: 1px 4px | |
| 103 | +} | |
| 104 | + | |
| 105 | +.bg-orgn { | |
| 106 | + background-color: #eca726; | |
| 107 | + border-radius: 10%; | |
| 108 | + color: white; | |
| 109 | + font-size: 14px; | |
| 110 | + display: flex; | |
| 111 | + align-items: center; | |
| 112 | + justify-content: center; | |
| 113 | + padding: 1px 4px | |
| 114 | +} | |
| 115 | + | |
| 116 | +.bg-blu { | |
| 117 | + background-color: #414df0; | |
| 118 | + border-radius: 10%; | |
| 119 | + color: white; | |
| 120 | + font-size: 14px; | |
| 121 | + display: flex; | |
| 122 | + align-items: center; | |
| 123 | + justify-content: center; | |
| 124 | + padding: 1px 4px | |
| 125 | +} | |
| 126 | + | |
| 127 | +.bg-violet { | |
| 128 | + background-color: #b005ff; | |
| 129 | + border-radius: 10%; | |
| 130 | + color: white; | |
| 131 | + font-size: 14px; | |
| 132 | + display: flex; | |
| 133 | + align-items: center; | |
| 134 | + justify-content: center; | |
| 135 | + padding: 1px 4px | |
| 136 | +} | |
| 137 | + | |
| 138 | +.text-muted { | |
| 139 | + font-size: 14px | |
| 140 | +} | |
| 141 | + | |
| 142 | +.fs5 { | |
| 143 | + line-height: 20px; | |
| 144 | + font-size: 16px | |
| 145 | +} | |
| 146 | + | |
| 147 | +.items { | |
| 148 | + font-size: 15px; | |
| 149 | + background-color: black; | |
| 150 | + color: white; | |
| 151 | + margin: 3px 3px; | |
| 152 | + padding: 4px 10px; | |
| 153 | + text-decoration: none; | |
| 154 | + border: 1px solid #ddd | |
| 155 | +} | |
| 156 | + | |
| 157 | +.items:hover { | |
| 158 | + background-color: #fcf7f7; | |
| 159 | + color: black; | |
| 160 | + transition: background-color .8s | |
| 161 | +} | |
| 162 | +#more { | |
| 163 | + display:none; | |
| 164 | +} | |
| 165 | + </style> | |
| 166 | + | |
| 167 | + | |
| 168 | + <div class="container"> | |
| 169 | + <div class="row"> | |
| 170 | + @foreach($operating as $osall) | |
| 171 | + <div class="col-lg-12 order-lg-0 order-2"> | |
| 172 | + <div class="row"> | |
| 173 | + <div class="col-md-2 mb-2"> <img class="" src="https://images.pexels.com/photos/3184611/pexels-photo-3184611.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500" alt=""> </div> | |
| 174 | + <div class="col-md-8 mb-4"> | |
| 175 | + <div class="d-flex align-items-center"> <a href="{{ URL::asset($halaman->kode .'/geteoffice')}}" class="bg-org">Operating System</a> <span class="text-muted ps-4"> {!! $osall->created_at !!}</span> </div> | |
| 176 | + <div> | |
| 177 | + <p class="text-capitalize fs5 my-3 fw-bolder">{!! $osall->judul !!}</p> | |
| 178 | + <p class="text-muted">{!! Str::limit($osall->konten, 100,'') !!} | |
| 179 | + | |
| 180 | + @if (strlen($osall->konten) > 100) | |
| 181 | + <span id="dots">...</span> | |
| 182 | + <span id="more">{!! substr($osall->konten, 100)!!} </span> | |
| 183 | + @endif | |
| 184 | + </p> | |
| 185 | + <button class="btn btn-xs btn-info" onclick="myFunction()" id="myBtn">Readmore</button> | |
| 186 | + | |
| 187 | + </div> | |
| 188 | + </div> | |
| 189 | +</div> | |
| 190 | +</div> | |
| 191 | + @endforeach | |
| 192 | +</div> | |
| 193 | +</div> | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | +</section> | |
| 199 | +</div> | |
| 200 | + </div> | |
| 201 | + | |
| 202 | +</div> | |
| 203 | + | |
| 204 | +@endsection | |
| 205 | +<script> | |
| 206 | + var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip]')) | |
| 207 | + var tooltipList = tooltipTriggerList.map(function(tooltipTriggerEl){ | |
| 208 | + | |
| 209 | + }) | |
| 210 | + </script> | |
| 211 | +@push('js') | |
| 212 | +@include('backend.home.datatable-js') | |
| 213 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 214 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 215 | +<script> | |
| 216 | + function myFunction() { | |
| 217 | + var dots = document.getElementById("dots"); | |
| 218 | + var moreText = document.getElementById("more"); | |
| 219 | + var btnText = document.getElementById("myBtn"); | |
| 220 | + | |
| 221 | + if (dots.style.display === "none") { | |
| 222 | + dots.style.display = "inline"; | |
| 223 | + btnText.innerHTML = "Read more"; | |
| 224 | + moreText.style.display = "none"; | |
| 225 | + } else { | |
| 226 | + dots.style.display = "none"; | |
| 227 | + btnText.innerHTML = "Read less"; | |
| 228 | + moreText.style.display = "inline"; | |
| 229 | + } | |
| 230 | +} | |
| 231 | + </script> | |
| 232 | + | |
| 233 | +@endpush | |
| 234 | +@push('css') | |
| 235 | +@include('backend.home.datatable-css') | |
| 236 | + | |
| 237 | +@endpush | |
| 238 | + | |
| 239 | + | |
| 240 | + |
resources/views/backend/art-os/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/art-os/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('art-os-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/art-os') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('art-os-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/art-os') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/art-os/tambah.blade copy.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['artikelEoffice.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/art-os/tambah.blade.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['art-os.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + <!-- {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} --> | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/art-sop/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1,2,3] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1,2,3] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1,2,3] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/art-sop/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul'}, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false }, | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/art-sop/index.blade.php
| ... | ... | @@ -0,0 +1,240 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show container-fluid col"> | |
| 11 | + | |
| 12 | + <div class="panel-content"> | |
| 13 | + | |
| 14 | + | |
| 15 | +</div> | |
| 16 | +</div> | |
| 17 | + | |
| 18 | + <!-- Format Baru --> | |
| 19 | + | |
| 20 | + <style> | |
| 21 | +@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap'); | |
| 22 | + | |
| 23 | +* { | |
| 24 | + padding: 0; | |
| 25 | + margin: 0; | |
| 26 | + box-sizing: border-box; | |
| 27 | + font-family: 'Poppins', sans-serif | |
| 28 | +} | |
| 29 | + | |
| 30 | +.container { | |
| 31 | + padding: 20px | |
| 32 | +} | |
| 33 | + | |
| 34 | +img { | |
| 35 | + height: 170px; | |
| 36 | + width: 100%; | |
| 37 | + object-fit: cover | |
| 38 | +} | |
| 39 | + | |
| 40 | +.bg-org { | |
| 41 | + text-transform: uppercase; | |
| 42 | + cursor: pointer; | |
| 43 | + border-radius: 3px; | |
| 44 | + background-color: #eca726; | |
| 45 | + color: white; | |
| 46 | + font-weight: 800; | |
| 47 | + font-size: 14px; | |
| 48 | + display: flex; | |
| 49 | + align-items: center; | |
| 50 | + justify-content: center; | |
| 51 | + padding: 3px 20px | |
| 52 | +} | |
| 53 | + | |
| 54 | +.bg-org:hover { | |
| 55 | + background-color: #eec67c | |
| 56 | +} | |
| 57 | + | |
| 58 | +.bg-blue { | |
| 59 | + text-transform: uppercase; | |
| 60 | + cursor: pointer; | |
| 61 | + border-radius: 3px; | |
| 62 | + background-color: #414df0; | |
| 63 | + color: white; | |
| 64 | + font-weight: 800; | |
| 65 | + font-size: 14px; | |
| 66 | + display: flex; | |
| 67 | + align-items: center; | |
| 68 | + justify-content: center; | |
| 69 | + padding: 3px 20px | |
| 70 | +} | |
| 71 | + | |
| 72 | +.bg-blue:hover { | |
| 73 | + background-color: #abb0f5 | |
| 74 | +} | |
| 75 | + | |
| 76 | +.bg-vio { | |
| 77 | + text-transform: uppercase; | |
| 78 | + cursor: pointer; | |
| 79 | + border-radius: 3px; | |
| 80 | + background-color: #b005ff; | |
| 81 | + color: white; | |
| 82 | + font-weight: 800; | |
| 83 | + font-size: 14px; | |
| 84 | + display: flex; | |
| 85 | + align-items: center; | |
| 86 | + justify-content: center; | |
| 87 | + padding: 3px 20px | |
| 88 | +} | |
| 89 | + | |
| 90 | +.bg-vio:hover { | |
| 91 | + background-color: #ce89ee | |
| 92 | +} | |
| 93 | + | |
| 94 | +.bg-green { | |
| 95 | + background-color: #27e727; | |
| 96 | + border-radius: 10%; | |
| 97 | + color: white; | |
| 98 | + font-size: 14px; | |
| 99 | + display: flex; | |
| 100 | + align-items: center; | |
| 101 | + justify-content: center; | |
| 102 | + padding: 1px 4px | |
| 103 | +} | |
| 104 | + | |
| 105 | +.bg-orgn { | |
| 106 | + background-color: #eca726; | |
| 107 | + border-radius: 10%; | |
| 108 | + color: white; | |
| 109 | + font-size: 14px; | |
| 110 | + display: flex; | |
| 111 | + align-items: center; | |
| 112 | + justify-content: center; | |
| 113 | + padding: 1px 4px | |
| 114 | +} | |
| 115 | + | |
| 116 | +.bg-blu { | |
| 117 | + background-color: #414df0; | |
| 118 | + border-radius: 10%; | |
| 119 | + color: white; | |
| 120 | + font-size: 14px; | |
| 121 | + display: flex; | |
| 122 | + align-items: center; | |
| 123 | + justify-content: center; | |
| 124 | + padding: 1px 4px | |
| 125 | +} | |
| 126 | + | |
| 127 | +.bg-violet { | |
| 128 | + background-color: #b005ff; | |
| 129 | + border-radius: 10%; | |
| 130 | + color: white; | |
| 131 | + font-size: 14px; | |
| 132 | + display: flex; | |
| 133 | + align-items: center; | |
| 134 | + justify-content: center; | |
| 135 | + padding: 1px 4px | |
| 136 | +} | |
| 137 | + | |
| 138 | +.text-muted { | |
| 139 | + font-size: 14px | |
| 140 | +} | |
| 141 | + | |
| 142 | +.fs5 { | |
| 143 | + line-height: 20px; | |
| 144 | + font-size: 16px | |
| 145 | +} | |
| 146 | + | |
| 147 | +.items { | |
| 148 | + font-size: 15px; | |
| 149 | + background-color: black; | |
| 150 | + color: white; | |
| 151 | + margin: 3px 3px; | |
| 152 | + padding: 4px 10px; | |
| 153 | + text-decoration: none; | |
| 154 | + border: 1px solid #ddd | |
| 155 | +} | |
| 156 | + | |
| 157 | +.items:hover { | |
| 158 | + background-color: #fcf7f7; | |
| 159 | + color: black; | |
| 160 | + transition: background-color .8s | |
| 161 | +} | |
| 162 | +#more { | |
| 163 | + display:none; | |
| 164 | +} | |
| 165 | + </style> | |
| 166 | + | |
| 167 | + | |
| 168 | + <div class="container"> | |
| 169 | + <div class="row"> | |
| 170 | + @foreach($standar as $sopall) | |
| 171 | + <div class="col-lg-12 order-lg-0 order-2"> | |
| 172 | + <div class="row"> | |
| 173 | + <div class="col-md-2 mb-2"> <img class="" src="https://images.pexels.com/photos/3184611/pexels-photo-3184611.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500" alt=""> </div> | |
| 174 | + <div class="col-md-8 mb-4"> | |
| 175 | + <div class="d-flex align-items-center"> <a href="{{ URL::asset($halaman->kode .'/geteoffice')}}" class="bg-org">Standard Operation Procedure</a> <span class="text-muted ps-4"> {!! $sopall->created_at !!}</span> </div> | |
| 176 | + <div> | |
| 177 | + <p class="text-capitalize fs5 my-3 fw-bolder">{!! $sopall->judul !!}</p> | |
| 178 | + <p class="text-muted">{!! Str::limit($sopall->konten, 100,'') !!} | |
| 179 | + | |
| 180 | + @if (strlen($sopall->konten) > 100) | |
| 181 | + <span id="dots">...</span> | |
| 182 | + <span id="more">{!! substr($sopall->konten, 100)!!} </span> | |
| 183 | + @endif | |
| 184 | + </p> | |
| 185 | + <button class="btn btn-xs btn-info" onclick="myFunction()" id="myBtn">Readmore</button> | |
| 186 | + | |
| 187 | + </div> | |
| 188 | + </div> | |
| 189 | +</div> | |
| 190 | +</div> | |
| 191 | + @endforeach | |
| 192 | +</div> | |
| 193 | +</div> | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | +</section> | |
| 199 | +</div> | |
| 200 | + </div> | |
| 201 | + | |
| 202 | +</div> | |
| 203 | + | |
| 204 | +@endsection | |
| 205 | +<script> | |
| 206 | + var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip]')) | |
| 207 | + var tooltipList = tooltipTriggerList.map(function(tooltipTriggerEl){ | |
| 208 | + | |
| 209 | + }) | |
| 210 | + </script> | |
| 211 | +@push('js') | |
| 212 | +@include('backend.home.datatable-js') | |
| 213 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 214 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 215 | +<script> | |
| 216 | + function myFunction() { | |
| 217 | + var dots = document.getElementById("dots"); | |
| 218 | + var moreText = document.getElementById("more"); | |
| 219 | + var btnText = document.getElementById("myBtn"); | |
| 220 | + | |
| 221 | + if (dots.style.display === "none") { | |
| 222 | + dots.style.display = "inline"; | |
| 223 | + btnText.innerHTML = "Read more"; | |
| 224 | + moreText.style.display = "none"; | |
| 225 | + } else { | |
| 226 | + dots.style.display = "none"; | |
| 227 | + btnText.innerHTML = "Read less"; | |
| 228 | + moreText.style.display = "inline"; | |
| 229 | + } | |
| 230 | +} | |
| 231 | + </script> | |
| 232 | + | |
| 233 | +@endpush | |
| 234 | +@push('css') | |
| 235 | +@include('backend.home.datatable-css') | |
| 236 | + | |
| 237 | +@endpush | |
| 238 | + | |
| 239 | + | |
| 240 | + |
resources/views/backend/art-sop/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/art-sop/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('art-sop-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/art-sop') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('art-sop-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/art-sop') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/art-sop/tambah.blade copy.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['artikelEoffice.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/art-sop/tambah.blade.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['art-sop.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + <!-- {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} --> | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/backendp/ajax.blade.php
| ... | ... | @@ -0,0 +1,76 @@ |
| 1 | +var nextUrl=$("#url").val(); | |
| 2 | +function errorMsg(pesan){ | |
| 3 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> Terjadi kesalahan. Error '+ pesan +'</div>'); | |
| 4 | + $("input").prop('disabled', false); | |
| 5 | + $(".loading").hide(); | |
| 6 | + $(".modal-footer").show(); | |
| 7 | +} | |
| 8 | + | |
| 9 | +function successMsg(data){ | |
| 10 | + if(data.status == true){ | |
| 11 | + if (typeof data.url !== 'undefined') { | |
| 12 | + location.href= data.url; | |
| 13 | + } else { | |
| 14 | + $('#datatable').DataTable().ajax.reload(); | |
| 15 | + $('.modal').modal('hide'); | |
| 16 | + Swal.fire({ | |
| 17 | + title: 'Okay...', | |
| 18 | + text: 'Berhasil proses data', | |
| 19 | + type: 'success', | |
| 20 | + timer: 1500 | |
| 21 | + }); | |
| 22 | + } | |
| 23 | + }else{ | |
| 24 | + $("button").prop("disabled", false); | |
| 25 | + $("input").prop('disabled', false); | |
| 26 | + $.each(data.pesan, function(i, item) { | |
| 27 | + $('#'+i).closest('.form-group').addClass('has-error'); | |
| 28 | + $('#'+i).focus(); | |
| 29 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> '+ item +'</div>'); | |
| 30 | + return false; | |
| 31 | + }); | |
| 32 | + } | |
| 33 | + $(".loading").hide(); | |
| 34 | + {{-- $(".pesan").html(''); --}} | |
| 35 | + $(".modal-footer").show(); | |
| 36 | + | |
| 37 | +} | |
| 38 | +function sebelumKirim(){ | |
| 39 | + $(".pesan").html('<div class="alert alert-info" role="alert"><center><i class="fa fa-spinner fa-spin"></i> Loading...</center></div>'); | |
| 40 | + $("input").prop('disabled', true); | |
| 41 | + $(".loading").show(); | |
| 42 | + $(".modal-footer").hide(); | |
| 43 | +} | |
| 44 | + | |
| 45 | +function goAjax(targetUrl, dataString, methodType = 'POST'){ | |
| 46 | + $.ajax({ | |
| 47 | + type: methodType, | |
| 48 | + url: targetUrl, | |
| 49 | + data: dataString, | |
| 50 | + enctype: 'multipart/form-data', | |
| 51 | + dataType: 'json', | |
| 52 | + cache: false, | |
| 53 | + beforeSend: function(){ | |
| 54 | + sebelumKirim(); | |
| 55 | + }, | |
| 56 | + success: function(data){ | |
| 57 | + successMsg(data); | |
| 58 | + }, | |
| 59 | + error: function(x, e){ | |
| 60 | + // errorMsg(x.status); | |
| 61 | + } | |
| 62 | + }); | |
| 63 | +} | |
| 64 | + | |
| 65 | +function addCommas(nStr) | |
| 66 | +{ | |
| 67 | + nStr += ''; | |
| 68 | + x = nStr.split('.'); | |
| 69 | + x1 = x[0]; | |
| 70 | + x2 = x.length > 1 ? '.' + x[1] : ''; | |
| 71 | + var rgx = /(\d+)(\d{3})/; | |
| 72 | + while (rgx.test(x1)) { | |
| 73 | + x1 = x1.replace(rgx, '$1' + ',' + '$2'); | |
| 74 | + } | |
| 75 | + return x1 + x2; | |
| 76 | +} |
resources/views/backend/backendp/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1,2,3] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1,2,3] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1,2,3] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/backendp/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | +, { data: 'judul'}, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false }, | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/backendp/datatables_detail.blade.php
| ... | ... | @@ -0,0 +1,49 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2, 3, 4] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2, 3, 4] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2, 3, 4] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/unor/detail/data/'.$id) }}", | |
| 43 | + columns: [ | |
| 44 | + { data: 'nama' }, | |
| 45 | + { data: 'email' }, | |
| 46 | + { data: 'username' } | |
| 47 | + ] | |
| 48 | + }); | |
| 49 | +}); | |
| 0 | 50 | \ No newline at end of file |
resources/views/backend/backendp/detail.blade.php
| ... | ... | @@ -0,0 +1,33 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', 'Detail '. $halaman->nama . ' '. $aksesgrup->nama) | |
| 3 | +@push('header', 'Detail '. $halaman->nama . ' '.$aksesgrup->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<div class="btn-group pull-right"> | |
| 6 | + <a href="{{ url('aksesgrup') }}" class="btn btn-sm btn-danger"> | |
| 7 | + <i class="fa fa-arrow-left"></i> Kembali | |
| 8 | + </a> | |
| 9 | +</div> | |
| 10 | +@endpush | |
| 11 | +@section('content') | |
| 12 | +<div class="panel-container show"> | |
| 13 | + <div class="panel-content"> | |
| 14 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 15 | + <thead class="bg-primary-600"> | |
| 16 | + <tr> | |
| 17 | + <th>Nama</th> | |
| 18 | + <th>Email</th> | |
| 19 | + <th>Username</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/'.$aksesgrup->id.'/datatables_detail.js') }}"></script> | |
| 30 | +@endpush | |
| 31 | +@push('css') | |
| 32 | +@include('backend.home.datatable-css') | |
| 33 | +@endpush | |
| 0 | 34 | \ No newline at end of file |
resources/views/backend/backendp/hapus.blade.php
| ... | ... | @@ -0,0 +1,24 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['backendp.destroy', $backendp->id], 'class' => 'form account-form', 'method' => 'DELETE')) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + <p> | |
| 6 | + <label class="control-label">Hapus data <strong>{{ $backendp->judul }}?</strong></label> | |
| 7 | + </p> | |
| 8 | + </div> | |
| 9 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 10 | +</div> | |
| 11 | +<div class="row"> | |
| 12 | + <div class="col-md-12"> | |
| 13 | + <span class="pesan"></span> | |
| 14 | + <div id="output"></div> | |
| 15 | + <div class="progress"> | |
| 16 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 17 | + <div id="statustxt">0%</div> | |
| 18 | + </div> | |
| 19 | + </div> | |
| 20 | + </div> | |
| 21 | +</div> | |
| 22 | +{!! Form::close() !!} | |
| 23 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 24 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> |
resources/views/backend/backendp/index.blade.php
| ... | ... | @@ -0,0 +1,39 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show container-fluid col"> | |
| 11 | + | |
| 12 | + <div class="panel-content"> | |
| 13 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 14 | + <thead class="bg-primary-600"> | |
| 15 | + <tr> | |
| 16 | + | |
| 17 | + | |
| 18 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Judul</th> | |
| 19 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Konten</th> | |
| 20 | + | |
| 21 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Aksi</th> | |
| 22 | + </tr> | |
| 23 | + </thead> | |
| 24 | + </table> | |
| 25 | + | |
| 26 | + </div> | |
| 27 | + | |
| 28 | +</div> | |
| 29 | +@endsection | |
| 30 | +@push('js') | |
| 31 | +@include('backend.home.datatable-js') | |
| 32 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 33 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 34 | + | |
| 35 | + | |
| 36 | +@endpush | |
| 37 | +@push('css') | |
| 38 | +@include('backend.home.datatable-css') | |
| 39 | +@endpush |
resources/views/backend/backendp/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/backendp/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('backendp-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/backendp') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('backendp-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/backendp') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/backendp/tambah.blade.php
| ... | ... | @@ -0,0 +1,45 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['backendp.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + <p> | |
| 6 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 7 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 8 | + </p> | |
| 9 | + <p> | |
| 10 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 11 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 12 | + </p> | |
| 13 | + <script> | |
| 14 | + $(document).ready(function() { | |
| 15 | + $('#konten').summernote(); | |
| 16 | + }); | |
| 17 | + var konten = $('#konten').summernote() | |
| 18 | + </script> | |
| 19 | + <!-- <p> | |
| 20 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 22 | + </p> --> | |
| 23 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 24 | +</div> | |
| 25 | +<div class="row"> | |
| 26 | + <div class="col-md-12"> | |
| 27 | + <span class="pesan"></span> | |
| 28 | + <div id="output"></div> | |
| 29 | + <div class="progress"> | |
| 30 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 31 | + <div id="statustxt">0%</div> | |
| 32 | + </div> | |
| 33 | + </div> | |
| 34 | + </div> | |
| 35 | +</div> | |
| 36 | +{!! Form::close() !!} | |
| 37 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 38 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 39 | +<!-- include summernote css/js --> | |
| 40 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 41 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 42 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 43 | + | |
| 44 | + | |
| 45 | + |
resources/views/backend/backendp/ubah.blade.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['backendp.update', $backendp->id], 'class' => 'form account-form', 'method' => 'PUT', 'files' => TRUE )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} | |
| 8 | + {!! Form::text('judul', $backendp->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-6 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', $backendp->konten, array('id' => 'konten', 'class' => 'form-control', 'placeholder' => 'Konten')) !!} | |
| 13 | + </p> | |
| 14 | + <script> | |
| 15 | + $(document).ready(function() { | |
| 16 | + $('#konten').summernote(); | |
| 17 | + }); | |
| 18 | + var konten = $('#konten').summernote() | |
| 19 | + </script> | |
| 20 | + | |
| 21 | + </div> | |
| 22 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 23 | +</div> | |
| 24 | +<div class="row"> | |
| 25 | + <div class="col-md-12"> | |
| 26 | + <span class="pesan"></span> | |
| 27 | + <div id="output"></div> | |
| 28 | + <div class="progress"> | |
| 29 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 30 | + <div id="statustxt">0%</div> | |
| 31 | + </div> | |
| 32 | + </div> | |
| 33 | + </div> | |
| 34 | +</div> | |
| 35 | +{!! Form::close() !!} | |
| 36 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 37 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 38 | +<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"> </script> | |
| 39 | +<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" /> | |
| 40 | +<script> | |
| 41 | + $(document).ready(function(){ | |
| 42 | + var date_input=$('input[name="tanggal_sk"]'); //our date input has the name "date" | |
| 43 | + var container=$('.bootstrap-iso form').length>0 ? $('.bootstrap-iso form').parent() : "body"; | |
| 44 | + date_input.datepicker({ | |
| 45 | + format: 'mm/dd/yyyy', | |
| 46 | + container: container, | |
| 47 | + todayHighlight: true, | |
| 48 | + autoclose: true, | |
| 49 | + }) | |
| 50 | + }) | |
| 51 | +</script> | |
| 52 | +<!-- include summernote css/js --> | |
| 53 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 54 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 55 | +<link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> |
resources/views/backend/cms/ajax.blade.php
| ... | ... | @@ -0,0 +1,76 @@ |
| 1 | +var nextUrl=$("#url").val(); | |
| 2 | +function errorMsg(pesan){ | |
| 3 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> Terjadi kesalahan. Error '+ pesan +'</div>'); | |
| 4 | + $("input").prop('disabled', false); | |
| 5 | + $(".loading").hide(); | |
| 6 | + $(".modal-footer").show(); | |
| 7 | +} | |
| 8 | + | |
| 9 | +function successMsg(data){ | |
| 10 | + if(data.status == true){ | |
| 11 | + if (typeof data.url !== 'undefined') { | |
| 12 | + location.href= data.url; | |
| 13 | + } else { | |
| 14 | + $('#datatable').DataTable().ajax.reload(); | |
| 15 | + $('.modal').modal('hide'); | |
| 16 | + Swal.fire({ | |
| 17 | + title: 'Okay...', | |
| 18 | + text: 'Berhasil proses data', | |
| 19 | + type: 'success', | |
| 20 | + timer: 1500 | |
| 21 | + }); | |
| 22 | + } | |
| 23 | + }else{ | |
| 24 | + $("button").prop("disabled", false); | |
| 25 | + $("input").prop('disabled', false); | |
| 26 | + $.each(data.pesan, function(i, item) { | |
| 27 | + $('#'+i).closest('.form-group').addClass('has-error'); | |
| 28 | + $('#'+i).focus(); | |
| 29 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> '+ item +'</div>'); | |
| 30 | + return false; | |
| 31 | + }); | |
| 32 | + } | |
| 33 | + $(".loading").hide(); | |
| 34 | + {{-- $(".pesan").html(''); --}} | |
| 35 | + $(".modal-footer").show(); | |
| 36 | + | |
| 37 | +} | |
| 38 | +function sebelumKirim(){ | |
| 39 | + $(".pesan").html('<div class="alert alert-info" role="alert"><center><i class="fa fa-spinner fa-spin"></i> Loading...</center></div>'); | |
| 40 | + $("input").prop('disabled', true); | |
| 41 | + $(".loading").show(); | |
| 42 | + $(".modal-footer").hide(); | |
| 43 | +} | |
| 44 | + | |
| 45 | +function goAjax(targetUrl, dataString, methodType = 'POST'){ | |
| 46 | + $.ajax({ | |
| 47 | + type: methodType, | |
| 48 | + url: targetUrl, | |
| 49 | + data: dataString, | |
| 50 | + enctype: 'multipart/form-data', | |
| 51 | + dataType: 'json', | |
| 52 | + cache: false, | |
| 53 | + beforeSend: function(){ | |
| 54 | + sebelumKirim(); | |
| 55 | + }, | |
| 56 | + success: function(data){ | |
| 57 | + successMsg(data); | |
| 58 | + }, | |
| 59 | + error: function(x, e){ | |
| 60 | + // errorMsg(x.status); | |
| 61 | + } | |
| 62 | + }); | |
| 63 | +} | |
| 64 | + | |
| 65 | +function addCommas(nStr) | |
| 66 | +{ | |
| 67 | + nStr += ''; | |
| 68 | + x = nStr.split('.'); | |
| 69 | + x1 = x[0]; | |
| 70 | + x2 = x.length > 1 ? '.' + x[1] : ''; | |
| 71 | + var rgx = /(\d+)(\d{3})/; | |
| 72 | + while (rgx.test(x1)) { | |
| 73 | + x1 = x1.replace(rgx, '$1' + ',' + '$2'); | |
| 74 | + } | |
| 75 | + return x1 + x2; | |
| 76 | +} |
resources/views/backend/cms/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/cms/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul' }, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false } | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/cms/datatables_detail.blade.php
| ... | ... | @@ -0,0 +1,49 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2, 3, 4] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2, 3, 4] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2, 3, 4] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/unor/detail/data/'.$id) }}", | |
| 43 | + columns: [ | |
| 44 | + { data: 'nama' }, | |
| 45 | + { data: 'email' }, | |
| 46 | + { data: 'username' } | |
| 47 | + ] | |
| 48 | + }); | |
| 49 | +}); | |
| 0 | 50 | \ No newline at end of file |
resources/views/backend/cms/detail.blade.php
| ... | ... | @@ -0,0 +1,33 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', 'Detail '. $halaman->nama . ' '. $aksesgrup->nama) | |
| 3 | +@push('header', 'Detail '. $halaman->nama . ' '.$aksesgrup->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<div class="btn-group pull-right"> | |
| 6 | + <a href="{{ url('aksesgrup') }}" class="btn btn-sm btn-danger"> | |
| 7 | + <i class="fa fa-arrow-left"></i> Kembali | |
| 8 | + </a> | |
| 9 | +</div> | |
| 10 | +@endpush | |
| 11 | +@section('content') | |
| 12 | +<div class="panel-container show"> | |
| 13 | + <div class="panel-content"> | |
| 14 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 15 | + <thead class="bg-primary-600"> | |
| 16 | + <tr> | |
| 17 | + <th>Nama</th> | |
| 18 | + <th>Email</th> | |
| 19 | + <th>Username</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/'.$aksesgrup->id.'/datatables_detail.js') }}"></script> | |
| 30 | +@endpush | |
| 31 | +@push('css') | |
| 32 | +@include('backend.home.datatable-css') | |
| 33 | +@endpush | |
| 0 | 34 | \ No newline at end of file |
resources/views/backend/cms/hapus.blade.php
| ... | ... | @@ -0,0 +1,24 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['cms.destroy', $cms->id], 'class' => 'form account-form', 'method' => 'DELETE')) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + <p> | |
| 6 | + <label class="control-label">Hapus data <strong>{{ $cms->id }}?</strong></label> | |
| 7 | + </p> | |
| 8 | + </div> | |
| 9 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 10 | +</div> | |
| 11 | +<div class="row"> | |
| 12 | + <div class="col-md-12"> | |
| 13 | + <span class="pesan"></span> | |
| 14 | + <div id="output"></div> | |
| 15 | + <div class="progress"> | |
| 16 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 17 | + <div id="statustxt">0%</div> | |
| 18 | + </div> | |
| 19 | + </div> | |
| 20 | + </div> | |
| 21 | +</div> | |
| 22 | +{!! Form::close() !!} | |
| 23 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 24 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> |
resources/views/backend/cms/index.blade.php
| ... | ... | @@ -0,0 +1,34 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show"> | |
| 11 | + <div class="panel-content"> | |
| 12 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 13 | + <thead class="bg-primary-600"> | |
| 14 | + <tr> | |
| 15 | + | |
| 16 | + | |
| 17 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Judul</th> | |
| 18 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Konten</th> | |
| 19 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Aksi</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 30 | + | |
| 31 | +@endpush | |
| 32 | +@push('css') | |
| 33 | +@include('backend.home.datatable-css') | |
| 34 | +@endpush |
resources/views/backend/cms/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/cms/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('cms-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/cms') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('cms-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/cms') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/cms/tambah.blade.php
| ... | ... | @@ -0,0 +1,46 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['cms.store'], 'class' => 'form account-form', 'method' => 'pcmst' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 8 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 13 | + </p> | |
| 14 | + <script> | |
| 15 | + $(document).ready(function() { | |
| 16 | + $('#konten').summernote(); | |
| 17 | + }); | |
| 18 | + var konten = $('#konten').summernote() | |
| 19 | + </script> | |
| 20 | + <!-- <p> | |
| 21 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 22 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 23 | + </p> --> | |
| 24 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 25 | +</div> | |
| 26 | +<div class="row"> | |
| 27 | + <div class="col-md-12"> | |
| 28 | + <span class="pesan"></span> | |
| 29 | + <div id="output"></div> | |
| 30 | + <div class="progress"> | |
| 31 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 32 | + <div id="statustxt">0%</div> | |
| 33 | + </div> | |
| 34 | + </div> | |
| 35 | + </div> | |
| 36 | +</div> | |
| 37 | +{!! Form::close() !!} | |
| 38 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 39 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 40 | +<!-- include summernote css/js --> | |
| 41 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 42 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 43 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 44 | + | |
| 45 | + | |
| 46 | + |
resources/views/backend/cms/ubah.blade.php
| ... | ... | @@ -0,0 +1,45 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['cms.update', $cms->id], 'class' => 'form account-form', 'method' => 'PUT', 'files' => TRUE )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} | |
| 8 | + {!! Form::text('judul', $cms->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-6 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', $cms->konten, array('id' => 'konten', 'class' => 'form-control', 'placeholder' => 'Tulis')) !!} | |
| 13 | + </p> | |
| 14 | + | |
| 15 | +</div> | |
| 16 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 17 | +</div> | |
| 18 | +<div class="row"> | |
| 19 | + <div class="col-md-12"> | |
| 20 | + <span class="pesan"></span> | |
| 21 | + <div id="output"></div> | |
| 22 | + <div class="progress"> | |
| 23 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 24 | + <div id="statustxt">0%</div> | |
| 25 | + </div> | |
| 26 | + </div> | |
| 27 | + </div> | |
| 28 | +</div> | |
| 29 | +{!! Form::close() !!} | |
| 30 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 31 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 32 | +<script type="text/cms" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"> </script> | |
| 33 | +<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" /> | |
| 34 | +<script> | |
| 35 | + $(document).ready(function(){ | |
| 36 | + var date_input=$('input[name="tanggal_sk"]'); //our date input has the name "date" | |
| 37 | + var container=$('.bootstrap-iso form').length>0 ? $('.bootstrap-iso form').parent() : "body"; | |
| 38 | + date_input.datepicker({ | |
| 39 | + format: 'mm/dd/yyyy', | |
| 40 | + container: container, | |
| 41 | + todayHighlight: true, | |
| 42 | + autoclose: true, | |
| 43 | + }) | |
| 44 | + }) | |
| 45 | +</script> |
resources/views/backend/eoffice/ubah.blade.php
| ... | ... | @@ -2,10 +2,7 @@ |
| 2 | 2 | <div class="row"> |
| 3 | 3 | <div class="col-md-12"> |
| 4 | 4 | |
| 5 | - <p> | |
| 6 | - {!! Form::label('Kategori', 'Kategori', array('class' => 'col-md-6 control-label')) !!} | |
| 7 | - {!! Form::text('katartikel_id', $eoffice->katartikel_id, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 8 | - </p> | |
| 5 | + | |
| 9 | 6 | <p> |
| 10 | 7 | {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} |
| 11 | 8 | {!! Form::text('judul', $eoffice->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} |
resources/views/backend/feprog/ajax.blade.php
| ... | ... | @@ -1,76 +0,0 @@ |
| 1 | -var nextUrl=$("#url").val(); | |
| 2 | -function errorMsg(pesan){ | |
| 3 | - $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> Terjadi kesalahan. Error '+ pesan +'</div>'); | |
| 4 | - $("input").prop('disabled', false); | |
| 5 | - $(".loading").hide(); | |
| 6 | - $(".modal-footer").show(); | |
| 7 | -} | |
| 8 | - | |
| 9 | -function successMsg(data){ | |
| 10 | - if(data.status == true){ | |
| 11 | - if (typeof data.url !== 'undefined') { | |
| 12 | - location.href= data.url; | |
| 13 | - } else { | |
| 14 | - $('#datatable').DataTable().ajax.reload(); | |
| 15 | - $('.modal').modal('hide'); | |
| 16 | - Swal.fire({ | |
| 17 | - title: 'Okay...', | |
| 18 | - text: 'Berhasil proses data', | |
| 19 | - type: 'success', | |
| 20 | - timer: 1500 | |
| 21 | - }); | |
| 22 | - } | |
| 23 | - }else{ | |
| 24 | - $("button").prop("disabled", false); | |
| 25 | - $("input").prop('disabled', false); | |
| 26 | - $.each(data.pesan, function(i, item) { | |
| 27 | - $('#'+i).closest('.form-group').addClass('has-error'); | |
| 28 | - $('#'+i).focus(); | |
| 29 | - $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> '+ item +'</div>'); | |
| 30 | - return false; | |
| 31 | - }); | |
| 32 | - } | |
| 33 | - $(".loading").hide(); | |
| 34 | - {{-- $(".pesan").html(''); --}} | |
| 35 | - $(".modal-footer").show(); | |
| 36 | - | |
| 37 | -} | |
| 38 | -function sebelumKirim(){ | |
| 39 | - $(".pesan").html('<div class="alert alert-info" role="alert"><center><i class="fa fa-spinner fa-spin"></i> Loading...</center></div>'); | |
| 40 | - $("input").prop('disabled', true); | |
| 41 | - $(".loading").show(); | |
| 42 | - $(".modal-footer").hide(); | |
| 43 | -} | |
| 44 | - | |
| 45 | -function goAjax(targetUrl, dataString, methodType = 'POST'){ | |
| 46 | - $.ajax({ | |
| 47 | - type: methodType, | |
| 48 | - url: targetUrl, | |
| 49 | - data: dataString, | |
| 50 | - enctype: 'multipart/form-data', | |
| 51 | - dataType: 'json', | |
| 52 | - cache: false, | |
| 53 | - beforeSend: function(){ | |
| 54 | - sebelumKirim(); | |
| 55 | - }, | |
| 56 | - success: function(data){ | |
| 57 | - successMsg(data); | |
| 58 | - }, | |
| 59 | - error: function(x, e){ | |
| 60 | - // errorMsg(x.status); | |
| 61 | - } | |
| 62 | - }); | |
| 63 | -} | |
| 64 | - | |
| 65 | -function addCommas(nStr) | |
| 66 | -{ | |
| 67 | - nStr += ''; | |
| 68 | - x = nStr.split('.'); | |
| 69 | - x1 = x[0]; | |
| 70 | - x2 = x.length > 1 ? '.' + x[1] : ''; | |
| 71 | - var rgx = /(\d+)(\d{3})/; | |
| 72 | - while (rgx.test(x1)) { | |
| 73 | - x1 = x1.replace(rgx, '$1' + ',' + '$2'); | |
| 74 | - } | |
| 75 | - return x1 + x2; | |
| 76 | -} |
resources/views/backend/feprog/datatables.blade.php
| ... | ... | @@ -1,51 +0,0 @@ |
| 1 | -$(document).ready(function () { | |
| 2 | - $('#datatable').DataTable({ | |
| 3 | - responsive: true, | |
| 4 | - lengthChange: false, | |
| 5 | - language: { | |
| 6 | - url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | - }, | |
| 8 | - dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | - "<'row'<'col-sm-12'tr>>" + | |
| 10 | - "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | - buttons: [ | |
| 12 | - { | |
| 13 | - extend: 'pdfHtml5', | |
| 14 | - text: 'PDF', | |
| 15 | - titleAttr: 'Generate PDF', | |
| 16 | - className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | - exportOptions: { | |
| 18 | - columns: [0, 1,2,3] | |
| 19 | - } | |
| 20 | - }, | |
| 21 | - { | |
| 22 | - extend: 'excelHtml5', | |
| 23 | - text: 'Excel', | |
| 24 | - titleAttr: 'Generate Excel', | |
| 25 | - className: 'btn-outline-success btn-sm mr-1', | |
| 26 | - exportOptions: { | |
| 27 | - columns: [0, 1,2,3] | |
| 28 | - } | |
| 29 | - }, | |
| 30 | - { | |
| 31 | - extend: 'print', | |
| 32 | - text: 'Print', | |
| 33 | - titleAttr: 'Print Table', | |
| 34 | - className: 'btn-outline-primary btn-sm', | |
| 35 | - exportOptions: { | |
| 36 | - columns: [0, 1,2,3] | |
| 37 | - } | |
| 38 | - } | |
| 39 | - ], | |
| 40 | - processing: true, | |
| 41 | - serverSide: true, | |
| 42 | - ajax: "{{ url($url_admin.'/feprog/data') }}", | |
| 43 | - columns: [ | |
| 44 | - | |
| 45 | - { data: 'judul'}, | |
| 46 | - { data: 'konten'}, | |
| 47 | - | |
| 48 | - { data: 'action', orderable: false, searchable: false }, | |
| 49 | - ] | |
| 50 | - }); | |
| 51 | -}); | |
| 52 | 0 | \ No newline at end of file |
resources/views/backend/feprog/datatables_detail.blade.php
| ... | ... | @@ -1,49 +0,0 @@ |
| 1 | -$(document).ready(function () { | |
| 2 | - $('#datatable').DataTable({ | |
| 3 | - responsive: true, | |
| 4 | - lengthChange: false, | |
| 5 | - language: { | |
| 6 | - url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | - }, | |
| 8 | - dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | - "<'row'<'col-sm-12'tr>>" + | |
| 10 | - "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | - buttons: [ | |
| 12 | - { | |
| 13 | - extend: 'pdfHtml5', | |
| 14 | - text: 'PDF', | |
| 15 | - titleAttr: 'Generate PDF', | |
| 16 | - className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | - exportOptions: { | |
| 18 | - columns: [0, 1, 2, 3, 4] | |
| 19 | - } | |
| 20 | - }, | |
| 21 | - { | |
| 22 | - extend: 'excelHtml5', | |
| 23 | - text: 'Excel', | |
| 24 | - titleAttr: 'Generate Excel', | |
| 25 | - className: 'btn-outline-success btn-sm mr-1', | |
| 26 | - exportOptions: { | |
| 27 | - columns: [0, 1, 2, 3, 4] | |
| 28 | - } | |
| 29 | - }, | |
| 30 | - { | |
| 31 | - extend: 'print', | |
| 32 | - text: 'Print', | |
| 33 | - titleAttr: 'Print Table', | |
| 34 | - className: 'btn-outline-primary btn-sm', | |
| 35 | - exportOptions: { | |
| 36 | - columns: [0, 1, 2, 3, 4] | |
| 37 | - } | |
| 38 | - } | |
| 39 | - ], | |
| 40 | - processing: true, | |
| 41 | - serverSide: true, | |
| 42 | - ajax: "{{ url($url_admin.'/unor/detail/data/'.$id) }}", | |
| 43 | - columns: [ | |
| 44 | - { data: 'nama' }, | |
| 45 | - { data: 'email' }, | |
| 46 | - { data: 'username' } | |
| 47 | - ] | |
| 48 | - }); | |
| 49 | -}); | |
| 50 | 0 | \ No newline at end of file |
resources/views/backend/feprog/detail.blade.php
| ... | ... | @@ -1,33 +0,0 @@ |
| 1 | -@extends('backend.home.index') | |
| 2 | -@push('title', 'Detail '. $halaman->nama . ' '. $aksesgrup->nama) | |
| 3 | -@push('header', 'Detail '. $halaman->nama . ' '.$aksesgrup->nama) | |
| 4 | -@push('tombol') | |
| 5 | -<div class="btn-group pull-right"> | |
| 6 | - <a href="{{ url('aksesgrup') }}" class="btn btn-sm btn-danger"> | |
| 7 | - <i class="fa fa-arrow-left"></i> Kembali | |
| 8 | - </a> | |
| 9 | -</div> | |
| 10 | -@endpush | |
| 11 | -@section('content') | |
| 12 | -<div class="panel-container show"> | |
| 13 | - <div class="panel-content"> | |
| 14 | - <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 15 | - <thead class="bg-primary-600"> | |
| 16 | - <tr> | |
| 17 | - <th>Nama</th> | |
| 18 | - <th>Email</th> | |
| 19 | - <th>Username</th> | |
| 20 | - </tr> | |
| 21 | - </thead> | |
| 22 | - </table> | |
| 23 | - </div> | |
| 24 | -</div> | |
| 25 | -@endsection | |
| 26 | -@push('js') | |
| 27 | -@include('backend.home.datatable-js') | |
| 28 | -<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | -<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/'.$aksesgrup->id.'/datatables_detail.js') }}"></script> | |
| 30 | -@endpush | |
| 31 | -@push('css') | |
| 32 | -@include('backend.home.datatable-css') | |
| 33 | -@endpush | |
| 34 | 0 | \ No newline at end of file |
resources/views/backend/feprog/hapus.blade.php
| ... | ... | @@ -1,24 +0,0 @@ |
| 1 | -{!! Form::open(array('id' => 'frmOji', 'route' => ['eoffice.destroy', $eoffice->id], 'class' => 'form account-form', 'method' => 'DELETE')) !!} | |
| 2 | -<div class="row"> | |
| 3 | - <div class="col-md-12"> | |
| 4 | - | |
| 5 | - <p> | |
| 6 | - <label class="control-label">Hapus data <strong>{{ $eoffice->judul }}?</strong></label> | |
| 7 | - </p> | |
| 8 | - </div> | |
| 9 | - {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 10 | -</div> | |
| 11 | -<div class="row"> | |
| 12 | - <div class="col-md-12"> | |
| 13 | - <span class="pesan"></span> | |
| 14 | - <div id="output"></div> | |
| 15 | - <div class="progress"> | |
| 16 | - <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 17 | - <div id="statustxt">0%</div> | |
| 18 | - </div> | |
| 19 | - </div> | |
| 20 | - </div> | |
| 21 | -</div> | |
| 22 | -{!! Form::close() !!} | |
| 23 | -<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 24 | -<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> |
resources/views/backend/feprog/index.blade.php
| ... | ... | @@ -1,39 +0,0 @@ |
| 1 | -@extends('backend.home.index') | |
| 2 | -@push('title', $halaman->nama) | |
| 3 | -@push('header', $halaman->nama) | |
| 4 | -@push('tombol') | |
| 5 | -<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | - Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | -</a> | |
| 8 | -@endpush | |
| 9 | -@section('content') | |
| 10 | -<div class="panel-container show container-fluid col"> | |
| 11 | - | |
| 12 | - <div class="panel-content"> | |
| 13 | - <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 14 | - <thead class="bg-primary-600"> | |
| 15 | - <tr> | |
| 16 | - | |
| 17 | - | |
| 18 | - <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Judul</th> | |
| 19 | - <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Konten</th> | |
| 20 | - | |
| 21 | - <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Aksi</th> | |
| 22 | - </tr> | |
| 23 | - </thead> | |
| 24 | - </table> | |
| 25 | - | |
| 26 | - </div> | |
| 27 | - | |
| 28 | -</div> | |
| 29 | -@endsection | |
| 30 | -@push('js') | |
| 31 | -@include('backend.home.datatable-js') | |
| 32 | -<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 33 | -<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 34 | - | |
| 35 | - | |
| 36 | -@endpush | |
| 37 | -@push('css') | |
| 38 | -@include('backend.home.datatable-css') | |
| 39 | -@endpush |
resources/views/backend/feprog/jquery.blade.php
| ... | ... | @@ -1,75 +0,0 @@ |
| 1 | -$(document).ready(function(){ | |
| 2 | - $('.tambah').click(function(){ | |
| 3 | - ojisatrianiLoadingFadeIn(); | |
| 4 | - $.loadmodal({ | |
| 5 | - url: "{{ url($url_admin.'/feprog/create') }}", | |
| 6 | - id: 'responsive', | |
| 7 | - dlgClass: 'fade', | |
| 8 | - bgClass: 'primary', | |
| 9 | - title: 'Tambah', | |
| 10 | - width: 'whatever', | |
| 11 | - modal: { | |
| 12 | - keyboard: true, | |
| 13 | - // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | - }, | |
| 15 | - ajax: { | |
| 16 | - dataType: 'html', | |
| 17 | - method: 'GET', | |
| 18 | - success: function(data, status, xhr){ | |
| 19 | - ojisatrianiLoadingFadeOut(); | |
| 20 | - }, | |
| 21 | - | |
| 22 | - }, | |
| 23 | - }); | |
| 24 | - }); | |
| 25 | - | |
| 26 | - $(document).on("click",".ubah",function() { | |
| 27 | - ojisatrianiLoadingFadeIn(); | |
| 28 | - var id = $(this).attr('feprog-id'); | |
| 29 | - $.loadmodal({ | |
| 30 | - url: "{{ url($url_admin.'/feprog') }}/"+ id +"/edit", | |
| 31 | - id: 'responsive', | |
| 32 | - dlgClass: 'fade', | |
| 33 | - bgClass: 'warning', | |
| 34 | - title: 'Ubah', | |
| 35 | - width: 'whatever', | |
| 36 | - modal: { | |
| 37 | - keyboard: true, | |
| 38 | - // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | - }, | |
| 40 | - ajax: { | |
| 41 | - dataType: 'html', | |
| 42 | - method: 'GET', | |
| 43 | - success: function(data, status, xhr){ | |
| 44 | - ojisatrianiLoadingFadeOut(); | |
| 45 | - }, | |
| 46 | - }, | |
| 47 | - }); | |
| 48 | - }); | |
| 49 | - | |
| 50 | - $(document).on("click",".hapus",function() { | |
| 51 | - ojisatrianiLoadingFadeIn(); | |
| 52 | - var id = $(this).attr('feprog-id'); | |
| 53 | - $.loadmodal({ | |
| 54 | - url: "{{ url($url_admin.'/feprog') }}/hapus/"+ id, | |
| 55 | - id: 'responsive', | |
| 56 | - dlgClass: 'fade', | |
| 57 | - bgClass: 'danger', | |
| 58 | - title: 'Hapus', | |
| 59 | - width: 'whatever', | |
| 60 | - modal: { | |
| 61 | - keyboard: true, | |
| 62 | - // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | - //$('#uraian').val(id), | |
| 64 | - }, | |
| 65 | - ajax: { | |
| 66 | - dataType: 'html', | |
| 67 | - method: 'GET', | |
| 68 | - success: function(data, status, xhr){ | |
| 69 | - ojisatrianiLoadingFadeOut(); | |
| 70 | - }, | |
| 71 | - }, | |
| 72 | - }); | |
| 73 | - }); | |
| 74 | - | |
| 75 | -}); |
resources/views/backend/feprog/tambah.blade.php
| ... | ... | @@ -1,55 +0,0 @@ |
| 1 | -{!! Form::open(array('id' => 'frmOji', 'route' => ['eoffice.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | -<div class="row"> | |
| 3 | - <div class="col-md-12"> | |
| 4 | - <!-- <p> | |
| 5 | - {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | - {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | - </p> --> | |
| 8 | - | |
| 9 | - <!-- <p> | |
| 10 | - {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | - {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | -</p> | |
| 13 | - --> | |
| 14 | - | |
| 15 | - <p> | |
| 16 | - {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | - {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | - </p> | |
| 19 | - <p> | |
| 20 | - {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | - {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | - </p> | |
| 23 | - <script> | |
| 24 | - $(document).ready(function() { | |
| 25 | - $('#konten').summernote(); | |
| 26 | - }); | |
| 27 | - var konten = $('#konten').summernote() | |
| 28 | - </script> | |
| 29 | - <!-- <p> | |
| 30 | - {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | - {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | - </p> --> | |
| 33 | - {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 34 | -</div> | |
| 35 | -<div class="row"> | |
| 36 | - <div class="col-md-12"> | |
| 37 | - <span class="pesan"></span> | |
| 38 | - <div id="output"></div> | |
| 39 | - <div class="progress"> | |
| 40 | - <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | - <div id="statustxt">0%</div> | |
| 42 | - </div> | |
| 43 | - </div> | |
| 44 | - </div> | |
| 45 | -</div> | |
| 46 | -{!! Form::close() !!} | |
| 47 | -<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | -<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | -<!-- include summernote css/js --> | |
| 50 | -<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | -<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | - <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | - | |
| 54 | - | |
| 55 | - |
resources/views/backend/feprog/ubah.blade.php
| ... | ... | @@ -1,58 +0,0 @@ |
| 1 | -{!! Form::open(array('id' => 'frmOji', 'route' => ['eoffice.update', $eoffice->id], 'class' => 'form account-form', 'method' => 'PUT', 'files' => TRUE )) !!} | |
| 2 | -<div class="row"> | |
| 3 | - <div class="col-md-12"> | |
| 4 | - | |
| 5 | - <p> | |
| 6 | - {!! Form::label('Kategori', 'Kategori', array('class' => 'col-md-6 control-label')) !!} | |
| 7 | - {!! Form::text('katartikel_id', $eoffice->katartikel_id, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 8 | - </p> | |
| 9 | - <p> | |
| 10 | - {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | - {!! Form::text('judul', $eoffice->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} | |
| 12 | - </p> | |
| 13 | - <p> | |
| 14 | - {!! Form::label('Konten', 'Konten', array('class' => 'col-md-6 control-label')) !!} | |
| 15 | - {!! Form::textarea('konten', $eoffice->konten, array('id' => 'konten', 'class' => 'form-control', 'placeholder' => 'Konten')) !!} | |
| 16 | - </p> | |
| 17 | - <script> | |
| 18 | - $(document).ready(function() { | |
| 19 | - $('#konten').summernote(); | |
| 20 | - }); | |
| 21 | - var konten = $('#konten').summernote() | |
| 22 | - </script> | |
| 23 | - | |
| 24 | - </div> | |
| 25 | - {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 26 | -</div> | |
| 27 | -<div class="row"> | |
| 28 | - <div class="col-md-12"> | |
| 29 | - <span class="pesan"></span> | |
| 30 | - <div id="output"></div> | |
| 31 | - <div class="progress"> | |
| 32 | - <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 33 | - <div id="statustxt">0%</div> | |
| 34 | - </div> | |
| 35 | - </div> | |
| 36 | - </div> | |
| 37 | -</div> | |
| 38 | -{!! Form::close() !!} | |
| 39 | -<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 40 | -<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 41 | -<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"> </script> | |
| 42 | -<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" /> | |
| 43 | -<script> | |
| 44 | - $(document).ready(function(){ | |
| 45 | - var date_input=$('input[name="tanggal_sk"]'); //our date input has the name "date" | |
| 46 | - var container=$('.bootstrap-iso form').length>0 ? $('.bootstrap-iso form').parent() : "body"; | |
| 47 | - date_input.datepicker({ | |
| 48 | - format: 'mm/dd/yyyy', | |
| 49 | - container: container, | |
| 50 | - todayHighlight: true, | |
| 51 | - autoclose: true, | |
| 52 | - }) | |
| 53 | - }) | |
| 54 | -</script> | |
| 55 | -<!-- include summernote css/js --> | |
| 56 | -<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 57 | -<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 58 | -<link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> |
resources/views/backend/framework/ajax.blade.php
| ... | ... | @@ -0,0 +1,76 @@ |
| 1 | +var nextUrl=$("#url").val(); | |
| 2 | +function errorMsg(pesan){ | |
| 3 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> Terjadi kesalahan. Error '+ pesan +'</div>'); | |
| 4 | + $("input").prop('disabled', false); | |
| 5 | + $(".loading").hide(); | |
| 6 | + $(".modal-footer").show(); | |
| 7 | +} | |
| 8 | + | |
| 9 | +function successMsg(data){ | |
| 10 | + if(data.status == true){ | |
| 11 | + if (typeof data.url !== 'undefined') { | |
| 12 | + location.href= data.url; | |
| 13 | + } else { | |
| 14 | + $('#datatable').DataTable().ajax.reload(); | |
| 15 | + $('.modal').modal('hide'); | |
| 16 | + Swal.fire({ | |
| 17 | + title: 'Okay...', | |
| 18 | + text: 'Berhasil proses data', | |
| 19 | + type: 'success', | |
| 20 | + timer: 1500 | |
| 21 | + }); | |
| 22 | + } | |
| 23 | + }else{ | |
| 24 | + $("button").prop("disabled", false); | |
| 25 | + $("input").prop('disabled', false); | |
| 26 | + $.each(data.pesan, function(i, item) { | |
| 27 | + $('#'+i).closest('.form-group').addClass('has-error'); | |
| 28 | + $('#'+i).focus(); | |
| 29 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> '+ item +'</div>'); | |
| 30 | + return false; | |
| 31 | + }); | |
| 32 | + } | |
| 33 | + $(".loading").hide(); | |
| 34 | + {{-- $(".pesan").html(''); --}} | |
| 35 | + $(".modal-footer").show(); | |
| 36 | + | |
| 37 | +} | |
| 38 | +function sebelumKirim(){ | |
| 39 | + $(".pesan").html('<div class="alert alert-info" role="alert"><center><i class="fa fa-spinner fa-spin"></i> Loading...</center></div>'); | |
| 40 | + $("input").prop('disabled', true); | |
| 41 | + $(".loading").show(); | |
| 42 | + $(".modal-footer").hide(); | |
| 43 | +} | |
| 44 | + | |
| 45 | +function goAjax(targetUrl, dataString, methodType = 'POST'){ | |
| 46 | + $.ajax({ | |
| 47 | + type: methodType, | |
| 48 | + url: targetUrl, | |
| 49 | + data: dataString, | |
| 50 | + enctype: 'multipart/form-data', | |
| 51 | + dataType: 'json', | |
| 52 | + cache: false, | |
| 53 | + beforeSend: function(){ | |
| 54 | + sebelumKirim(); | |
| 55 | + }, | |
| 56 | + success: function(data){ | |
| 57 | + successMsg(data); | |
| 58 | + }, | |
| 59 | + error: function(x, e){ | |
| 60 | + // errorMsg(x.status); | |
| 61 | + } | |
| 62 | + }); | |
| 63 | +} | |
| 64 | + | |
| 65 | +function addCommas(nStr) | |
| 66 | +{ | |
| 67 | + nStr += ''; | |
| 68 | + x = nStr.split('.'); | |
| 69 | + x1 = x[0]; | |
| 70 | + x2 = x.length > 1 ? '.' + x[1] : ''; | |
| 71 | + var rgx = /(\d+)(\d{3})/; | |
| 72 | + while (rgx.test(x1)) { | |
| 73 | + x1 = x1.replace(rgx, '$1' + ',' + '$2'); | |
| 74 | + } | |
| 75 | + return x1 + x2; | |
| 76 | +} |
resources/views/backend/framework/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/framework/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul' }, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false } | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/framework/datatables_detail.blade.php
| ... | ... | @@ -0,0 +1,49 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2, 3, 4] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2, 3, 4] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2, 3, 4] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/unor/detail/data/'.$id) }}", | |
| 43 | + columns: [ | |
| 44 | + { data: 'nama' }, | |
| 45 | + { data: 'email' }, | |
| 46 | + { data: 'username' } | |
| 47 | + ] | |
| 48 | + }); | |
| 49 | +}); | |
| 0 | 50 | \ No newline at end of file |
resources/views/backend/framework/detail.blade.php
| ... | ... | @@ -0,0 +1,33 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', 'Detail '. $halaman->nama . ' '. $aksesgrup->nama) | |
| 3 | +@push('header', 'Detail '. $halaman->nama . ' '.$aksesgrup->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<div class="btn-group pull-right"> | |
| 6 | + <a href="{{ url('aksesgrup') }}" class="btn btn-sm btn-danger"> | |
| 7 | + <i class="fa fa-arrow-left"></i> Kembali | |
| 8 | + </a> | |
| 9 | +</div> | |
| 10 | +@endpush | |
| 11 | +@section('content') | |
| 12 | +<div class="panel-container show"> | |
| 13 | + <div class="panel-content"> | |
| 14 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 15 | + <thead class="bg-primary-600"> | |
| 16 | + <tr> | |
| 17 | + <th>Nama</th> | |
| 18 | + <th>Email</th> | |
| 19 | + <th>Username</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/'.$aksesgrup->id.'/datatables_detail.js') }}"></script> | |
| 30 | +@endpush | |
| 31 | +@push('css') | |
| 32 | +@include('backend.home.datatable-css') | |
| 33 | +@endpush | |
| 0 | 34 | \ No newline at end of file |
resources/views/backend/framework/hapus.blade.php
| ... | ... | @@ -0,0 +1,24 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['framework.destroy', $framework->id], 'class' => 'form account-form', 'method' => 'DELETE')) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + <p> | |
| 6 | + <label class="control-label">Hapus data <strong>{{ $framework->id }}?</strong></label> | |
| 7 | + </p> | |
| 8 | + </div> | |
| 9 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 10 | +</div> | |
| 11 | +<div class="row"> | |
| 12 | + <div class="col-md-12"> | |
| 13 | + <span class="pesan"></span> | |
| 14 | + <div id="output"></div> | |
| 15 | + <div class="progress"> | |
| 16 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 17 | + <div id="statustxt">0%</div> | |
| 18 | + </div> | |
| 19 | + </div> | |
| 20 | + </div> | |
| 21 | +</div> | |
| 22 | +{!! Form::close() !!} | |
| 23 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 24 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> |
resources/views/backend/framework/index.blade.php
| ... | ... | @@ -0,0 +1,34 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show"> | |
| 11 | + <div class="panel-content"> | |
| 12 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 13 | + <thead class="bg-primary-600"> | |
| 14 | + <tr> | |
| 15 | + | |
| 16 | + | |
| 17 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Judul</th> | |
| 18 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Konten</th> | |
| 19 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Aksi</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 30 | + | |
| 31 | +@endpush | |
| 32 | +@push('css') | |
| 33 | +@include('backend.home.datatable-css') | |
| 34 | +@endpush |
resources/views/backend/framework/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/framework/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('framework-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/framework') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('framework-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/framework') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/framework/tambah.blade.php
| ... | ... | @@ -0,0 +1,46 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['framework.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 8 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 13 | + </p> | |
| 14 | + <script> | |
| 15 | + $(document).ready(function() { | |
| 16 | + $('#konten').summernote(); | |
| 17 | + }); | |
| 18 | + var konten = $('#konten').summernote() | |
| 19 | + </script> | |
| 20 | + <!-- <p> | |
| 21 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 22 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 23 | + </p> --> | |
| 24 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 25 | +</div> | |
| 26 | +<div class="row"> | |
| 27 | + <div class="col-md-12"> | |
| 28 | + <span class="pesan"></span> | |
| 29 | + <div id="output"></div> | |
| 30 | + <div class="progress"> | |
| 31 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 32 | + <div id="statustxt">0%</div> | |
| 33 | + </div> | |
| 34 | + </div> | |
| 35 | + </div> | |
| 36 | +</div> | |
| 37 | +{!! Form::close() !!} | |
| 38 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 39 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 40 | +<!-- include summernote css/js --> | |
| 41 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 42 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 43 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 44 | + | |
| 45 | + | |
| 46 | + |
resources/views/backend/framework/ubah.blade.php
| ... | ... | @@ -0,0 +1,45 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['framework.update', $framework->id], 'class' => 'form account-form', 'method' => 'PUT', 'files' => TRUE )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} | |
| 8 | + {!! Form::text('judul', $framework->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-6 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', $framework->konten, array('id' => 'konten', 'class' => 'form-control', 'placeholder' => 'Tulis')) !!} | |
| 13 | + </p> | |
| 14 | + | |
| 15 | +</div> | |
| 16 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 17 | +</div> | |
| 18 | +<div class="row"> | |
| 19 | + <div class="col-md-12"> | |
| 20 | + <span class="pesan"></span> | |
| 21 | + <div id="output"></div> | |
| 22 | + <div class="progress"> | |
| 23 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 24 | + <div id="statustxt">0%</div> | |
| 25 | + </div> | |
| 26 | + </div> | |
| 27 | + </div> | |
| 28 | +</div> | |
| 29 | +{!! Form::close() !!} | |
| 30 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 31 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 32 | +<script type="text/framework" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"> </script> | |
| 33 | +<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" /> | |
| 34 | +<script> | |
| 35 | + $(document).ready(function(){ | |
| 36 | + var date_input=$('input[name="tanggal_sk"]'); //our date input has the name "date" | |
| 37 | + var container=$('.bootstrap-iso form').length>0 ? $('.bootstrap-iso form').parent() : "body"; | |
| 38 | + date_input.datepicker({ | |
| 39 | + format: 'mm/dd/yyyy', | |
| 40 | + container: container, | |
| 41 | + todayHighlight: true, | |
| 42 | + autoclose: true, | |
| 43 | + }) | |
| 44 | + }) | |
| 45 | +</script> |
resources/views/backend/frontendp/ajax.blade.php
| ... | ... | @@ -0,0 +1,76 @@ |
| 1 | +var nextUrl=$("#url").val(); | |
| 2 | +function errorMsg(pesan){ | |
| 3 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> Terjadi kesalahan. Error '+ pesan +'</div>'); | |
| 4 | + $("input").prop('disabled', false); | |
| 5 | + $(".loading").hide(); | |
| 6 | + $(".modal-footer").show(); | |
| 7 | +} | |
| 8 | + | |
| 9 | +function successMsg(data){ | |
| 10 | + if(data.status == true){ | |
| 11 | + if (typeof data.url !== 'undefined') { | |
| 12 | + location.href= data.url; | |
| 13 | + } else { | |
| 14 | + $('#datatable').DataTable().ajax.reload(); | |
| 15 | + $('.modal').modal('hide'); | |
| 16 | + Swal.fire({ | |
| 17 | + title: 'Okay...', | |
| 18 | + text: 'Berhasil proses data', | |
| 19 | + type: 'success', | |
| 20 | + timer: 1500 | |
| 21 | + }); | |
| 22 | + } | |
| 23 | + }else{ | |
| 24 | + $("button").prop("disabled", false); | |
| 25 | + $("input").prop('disabled', false); | |
| 26 | + $.each(data.pesan, function(i, item) { | |
| 27 | + $('#'+i).closest('.form-group').addClass('has-error'); | |
| 28 | + $('#'+i).focus(); | |
| 29 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> '+ item +'</div>'); | |
| 30 | + return false; | |
| 31 | + }); | |
| 32 | + } | |
| 33 | + $(".loading").hide(); | |
| 34 | + {{-- $(".pesan").html(''); --}} | |
| 35 | + $(".modal-footer").show(); | |
| 36 | + | |
| 37 | +} | |
| 38 | +function sebelumKirim(){ | |
| 39 | + $(".pesan").html('<div class="alert alert-info" role="alert"><center><i class="fa fa-spinner fa-spin"></i> Loading...</center></div>'); | |
| 40 | + $("input").prop('disabled', true); | |
| 41 | + $(".loading").show(); | |
| 42 | + $(".modal-footer").hide(); | |
| 43 | +} | |
| 44 | + | |
| 45 | +function goAjax(targetUrl, dataString, methodType = 'POST'){ | |
| 46 | + $.ajax({ | |
| 47 | + type: methodType, | |
| 48 | + url: targetUrl, | |
| 49 | + data: dataString, | |
| 50 | + enctype: 'multipart/form-data', | |
| 51 | + dataType: 'json', | |
| 52 | + cache: false, | |
| 53 | + beforeSend: function(){ | |
| 54 | + sebelumKirim(); | |
| 55 | + }, | |
| 56 | + success: function(data){ | |
| 57 | + successMsg(data); | |
| 58 | + }, | |
| 59 | + error: function(x, e){ | |
| 60 | + // errorMsg(x.status); | |
| 61 | + } | |
| 62 | + }); | |
| 63 | +} | |
| 64 | + | |
| 65 | +function addCommas(nStr) | |
| 66 | +{ | |
| 67 | + nStr += ''; | |
| 68 | + x = nStr.split('.'); | |
| 69 | + x1 = x[0]; | |
| 70 | + x2 = x.length > 1 ? '.' + x[1] : ''; | |
| 71 | + var rgx = /(\d+)(\d{3})/; | |
| 72 | + while (rgx.test(x1)) { | |
| 73 | + x1 = x1.replace(rgx, '$1' + ',' + '$2'); | |
| 74 | + } | |
| 75 | + return x1 + x2; | |
| 76 | +} |
resources/views/backend/frontendp/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1,2,3] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1,2,3] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1,2,3] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/frontendp/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul'}, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false }, | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/frontendp/datatables_detail.blade.php
| ... | ... | @@ -0,0 +1,49 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2, 3, 4] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2, 3, 4] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2, 3, 4] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/unor/detail/data/'.$id) }}", | |
| 43 | + columns: [ | |
| 44 | + { data: 'nama' }, | |
| 45 | + { data: 'email' }, | |
| 46 | + { data: 'username' } | |
| 47 | + ] | |
| 48 | + }); | |
| 49 | +}); | |
| 0 | 50 | \ No newline at end of file |
resources/views/backend/frontendp/detail.blade.php
| ... | ... | @@ -0,0 +1,33 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', 'Detail '. $halaman->nama . ' '. $aksesgrup->nama) | |
| 3 | +@push('header', 'Detail '. $halaman->nama . ' '.$aksesgrup->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<div class="btn-group pull-right"> | |
| 6 | + <a href="{{ url('aksesgrup') }}" class="btn btn-sm btn-danger"> | |
| 7 | + <i class="fa fa-arrow-left"></i> Kembali | |
| 8 | + </a> | |
| 9 | +</div> | |
| 10 | +@endpush | |
| 11 | +@section('content') | |
| 12 | +<div class="panel-container show"> | |
| 13 | + <div class="panel-content"> | |
| 14 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 15 | + <thead class="bg-primary-600"> | |
| 16 | + <tr> | |
| 17 | + <th>Nama</th> | |
| 18 | + <th>Email</th> | |
| 19 | + <th>Username</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/'.$aksesgrup->id.'/datatables_detail.js') }}"></script> | |
| 30 | +@endpush | |
| 31 | +@push('css') | |
| 32 | +@include('backend.home.datatable-css') | |
| 33 | +@endpush | |
| 0 | 34 | \ No newline at end of file |
resources/views/backend/frontendp/hapus.blade.php
| ... | ... | @@ -0,0 +1,24 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['frontendp.destroy', $frontendp->id], 'class' => 'form account-form', 'method' => 'DELETE')) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + <p> | |
| 6 | + <label class="control-label">Hapus data <strong>{{ $frontendp->judul }}?</strong></label> | |
| 7 | + </p> | |
| 8 | + </div> | |
| 9 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 10 | +</div> | |
| 11 | +<div class="row"> | |
| 12 | + <div class="col-md-12"> | |
| 13 | + <span class="pesan"></span> | |
| 14 | + <div id="output"></div> | |
| 15 | + <div class="progress"> | |
| 16 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 17 | + <div id="statustxt">0%</div> | |
| 18 | + </div> | |
| 19 | + </div> | |
| 20 | + </div> | |
| 21 | +</div> | |
| 22 | +{!! Form::close() !!} | |
| 23 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 24 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> |
resources/views/backend/frontendp/index.blade.php
| ... | ... | @@ -0,0 +1,39 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show container-fluid col"> | |
| 11 | + | |
| 12 | + <div class="panel-content"> | |
| 13 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 14 | + <thead class="bg-primary-600"> | |
| 15 | + <tr> | |
| 16 | + | |
| 17 | + | |
| 18 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Judul</th> | |
| 19 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Konten</th> | |
| 20 | + | |
| 21 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Aksi</th> | |
| 22 | + </tr> | |
| 23 | + </thead> | |
| 24 | + </table> | |
| 25 | + | |
| 26 | + </div> | |
| 27 | + | |
| 28 | +</div> | |
| 29 | +@endsection | |
| 30 | +@push('js') | |
| 31 | +@include('backend.home.datatable-js') | |
| 32 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 33 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 34 | + | |
| 35 | + | |
| 36 | +@endpush | |
| 37 | +@push('css') | |
| 38 | +@include('backend.home.datatable-css') | |
| 39 | +@endpush |
resources/views/backend/frontendp/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/frontendp/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('frontendp-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/frontendp') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('frontendp-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/frontendp') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/frontendp/tambah.blade.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['frontendp.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + <!-- <p> | |
| 5 | + {!! Form::label('Id', 'ID', array('class' => 'col-md-12 control-label')) !!} | |
| 6 | + {!! Form::text('id', NULL, array('id' => 'id', 'class' => 'form-control', 'placeholder' => 'Identitas')) !!} | |
| 7 | + </p> --> | |
| 8 | + | |
| 9 | + <!-- <p> | |
| 10 | + {!! Form::label('Kategori Artikel', 'Kategori Artikel', array('class' => 'col-md-6 control-label')) !!} | |
| 11 | + {!! Form::select('katartikel_id', array( ), NULL, array('id' => 'katartikel_id', 'class' => 'form-control')) !!} | |
| 12 | +</p> | |
| 13 | + --> | |
| 14 | + | |
| 15 | + <p> | |
| 16 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 17 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 18 | + </p> | |
| 19 | + <p> | |
| 20 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 21 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 22 | + </p> | |
| 23 | + <script> | |
| 24 | + $(document).ready(function() { | |
| 25 | + $('#konten').summernote(); | |
| 26 | + }); | |
| 27 | + var konten = $('#konten').summernote() | |
| 28 | + </script> | |
| 29 | + <!-- <p> | |
| 30 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 31 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 32 | + </p> --> | |
| 33 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 34 | +</div> | |
| 35 | +<div class="row"> | |
| 36 | + <div class="col-md-12"> | |
| 37 | + <span class="pesan"></span> | |
| 38 | + <div id="output"></div> | |
| 39 | + <div class="progress"> | |
| 40 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 41 | + <div id="statustxt">0%</div> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | +</div> | |
| 46 | +{!! Form::close() !!} | |
| 47 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 48 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 49 | +<!-- include summernote css/js --> | |
| 50 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 51 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 52 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 53 | + | |
| 54 | + | |
| 55 | + |
resources/views/backend/frontendp/ubah.blade.php
| ... | ... | @@ -0,0 +1,55 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['frontendp.update', $frontendp->id], 'class' => 'form account-form', 'method' => 'PUT', 'files' => TRUE )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} | |
| 8 | + {!! Form::text('judul', $frontendp->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-6 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', $frontendp->konten, array('id' => 'konten', 'class' => 'form-control', 'placeholder' => 'Konten')) !!} | |
| 13 | + </p> | |
| 14 | + <script> | |
| 15 | + $(document).ready(function() { | |
| 16 | + $('#konten').summernote(); | |
| 17 | + }); | |
| 18 | + var konten = $('#konten').summernote() | |
| 19 | + </script> | |
| 20 | + | |
| 21 | + </div> | |
| 22 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 23 | +</div> | |
| 24 | +<div class="row"> | |
| 25 | + <div class="col-md-12"> | |
| 26 | + <span class="pesan"></span> | |
| 27 | + <div id="output"></div> | |
| 28 | + <div class="progress"> | |
| 29 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 30 | + <div id="statustxt">0%</div> | |
| 31 | + </div> | |
| 32 | + </div> | |
| 33 | + </div> | |
| 34 | +</div> | |
| 35 | +{!! Form::close() !!} | |
| 36 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 37 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 38 | +<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"> </script> | |
| 39 | +<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" /> | |
| 40 | +<script> | |
| 41 | + $(document).ready(function(){ | |
| 42 | + var date_input=$('input[name="tanggal_sk"]'); //our date input has the name "date" | |
| 43 | + var container=$('.bootstrap-iso form').length>0 ? $('.bootstrap-iso form').parent() : "body"; | |
| 44 | + date_input.datepicker({ | |
| 45 | + format: 'mm/dd/yyyy', | |
| 46 | + container: container, | |
| 47 | + todayHighlight: true, | |
| 48 | + autoclose: true, | |
| 49 | + }) | |
| 50 | + }) | |
| 51 | +</script> | |
| 52 | +<!-- include summernote css/js --> | |
| 53 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 54 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 55 | +<link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> |
resources/views/backend/javascript/ajax.blade.php
| ... | ... | @@ -0,0 +1,76 @@ |
| 1 | +var nextUrl=$("#url").val(); | |
| 2 | +function errorMsg(pesan){ | |
| 3 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> Terjadi kesalahan. Error '+ pesan +'</div>'); | |
| 4 | + $("input").prop('disabled', false); | |
| 5 | + $(".loading").hide(); | |
| 6 | + $(".modal-footer").show(); | |
| 7 | +} | |
| 8 | + | |
| 9 | +function successMsg(data){ | |
| 10 | + if(data.status == true){ | |
| 11 | + if (typeof data.url !== 'undefined') { | |
| 12 | + location.href= data.url; | |
| 13 | + } else { | |
| 14 | + $('#datatable').DataTable().ajax.reload(); | |
| 15 | + $('.modal').modal('hide'); | |
| 16 | + Swal.fire({ | |
| 17 | + title: 'Okay...', | |
| 18 | + text: 'Berhasil proses data', | |
| 19 | + type: 'success', | |
| 20 | + timer: 1500 | |
| 21 | + }); | |
| 22 | + } | |
| 23 | + }else{ | |
| 24 | + $("button").prop("disabled", false); | |
| 25 | + $("input").prop('disabled', false); | |
| 26 | + $.each(data.pesan, function(i, item) { | |
| 27 | + $('#'+i).closest('.form-group').addClass('has-error'); | |
| 28 | + $('#'+i).focus(); | |
| 29 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> '+ item +'</div>'); | |
| 30 | + return false; | |
| 31 | + }); | |
| 32 | + } | |
| 33 | + $(".loading").hide(); | |
| 34 | + {{-- $(".pesan").html(''); --}} | |
| 35 | + $(".modal-footer").show(); | |
| 36 | + | |
| 37 | +} | |
| 38 | +function sebelumKirim(){ | |
| 39 | + $(".pesan").html('<div class="alert alert-info" role="alert"><center><i class="fa fa-spinner fa-spin"></i> Loading...</center></div>'); | |
| 40 | + $("input").prop('disabled', true); | |
| 41 | + $(".loading").show(); | |
| 42 | + $(".modal-footer").hide(); | |
| 43 | +} | |
| 44 | + | |
| 45 | +function goAjax(targetUrl, dataString, methodType = 'POST'){ | |
| 46 | + $.ajax({ | |
| 47 | + type: methodType, | |
| 48 | + url: targetUrl, | |
| 49 | + data: dataString, | |
| 50 | + enctype: 'multipart/form-data', | |
| 51 | + dataType: 'json', | |
| 52 | + cache: false, | |
| 53 | + beforeSend: function(){ | |
| 54 | + sebelumKirim(); | |
| 55 | + }, | |
| 56 | + success: function(data){ | |
| 57 | + successMsg(data); | |
| 58 | + }, | |
| 59 | + error: function(x, e){ | |
| 60 | + // errorMsg(x.status); | |
| 61 | + } | |
| 62 | + }); | |
| 63 | +} | |
| 64 | + | |
| 65 | +function addCommas(nStr) | |
| 66 | +{ | |
| 67 | + nStr += ''; | |
| 68 | + x = nStr.split('.'); | |
| 69 | + x1 = x[0]; | |
| 70 | + x2 = x.length > 1 ? '.' + x[1] : ''; | |
| 71 | + var rgx = /(\d+)(\d{3})/; | |
| 72 | + while (rgx.test(x1)) { | |
| 73 | + x1 = x1.replace(rgx, '$1' + ',' + '$2'); | |
| 74 | + } | |
| 75 | + return x1 + x2; | |
| 76 | +} |
resources/views/backend/javascript/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/javascript/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul' }, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false } | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/javascript/datatables_detail.blade.php
| ... | ... | @@ -0,0 +1,49 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2, 3, 4] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2, 3, 4] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2, 3, 4] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/unor/detail/data/'.$id) }}", | |
| 43 | + columns: [ | |
| 44 | + { data: 'nama' }, | |
| 45 | + { data: 'email' }, | |
| 46 | + { data: 'username' } | |
| 47 | + ] | |
| 48 | + }); | |
| 49 | +}); | |
| 0 | 50 | \ No newline at end of file |
resources/views/backend/javascript/detail.blade.php
| ... | ... | @@ -0,0 +1,33 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', 'Detail '. $halaman->nama . ' '. $aksesgrup->nama) | |
| 3 | +@push('header', 'Detail '. $halaman->nama . ' '.$aksesgrup->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<div class="btn-group pull-right"> | |
| 6 | + <a href="{{ url('aksesgrup') }}" class="btn btn-sm btn-danger"> | |
| 7 | + <i class="fa fa-arrow-left"></i> Kembali | |
| 8 | + </a> | |
| 9 | +</div> | |
| 10 | +@endpush | |
| 11 | +@section('content') | |
| 12 | +<div class="panel-container show"> | |
| 13 | + <div class="panel-content"> | |
| 14 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 15 | + <thead class="bg-primary-600"> | |
| 16 | + <tr> | |
| 17 | + <th>Nama</th> | |
| 18 | + <th>Email</th> | |
| 19 | + <th>Username</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/'.$aksesgrup->id.'/datatables_detail.js') }}"></script> | |
| 30 | +@endpush | |
| 31 | +@push('css') | |
| 32 | +@include('backend.home.datatable-css') | |
| 33 | +@endpush | |
| 0 | 34 | \ No newline at end of file |
resources/views/backend/javascript/hapus.blade.php
| ... | ... | @@ -0,0 +1,24 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['javascript.destroy', $javascript->id], 'class' => 'form account-form', 'method' => 'DELETE')) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + <p> | |
| 6 | + <label class="control-label">Hapus data <strong>{{ $javascript->id }}?</strong></label> | |
| 7 | + </p> | |
| 8 | + </div> | |
| 9 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 10 | +</div> | |
| 11 | +<div class="row"> | |
| 12 | + <div class="col-md-12"> | |
| 13 | + <span class="pesan"></span> | |
| 14 | + <div id="output"></div> | |
| 15 | + <div class="progress"> | |
| 16 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 17 | + <div id="statustxt">0%</div> | |
| 18 | + </div> | |
| 19 | + </div> | |
| 20 | + </div> | |
| 21 | +</div> | |
| 22 | +{!! Form::close() !!} | |
| 23 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 24 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> |
resources/views/backend/javascript/index.blade.php
| ... | ... | @@ -0,0 +1,34 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show"> | |
| 11 | + <div class="panel-content"> | |
| 12 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 13 | + <thead class="bg-primary-600"> | |
| 14 | + <tr> | |
| 15 | + | |
| 16 | + | |
| 17 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Judul</th> | |
| 18 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Konten</th> | |
| 19 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Aksi</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 30 | + | |
| 31 | +@endpush | |
| 32 | +@push('css') | |
| 33 | +@include('backend.home.datatable-css') | |
| 34 | +@endpush |
resources/views/backend/javascript/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/javascript/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('javascript-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/javascript') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('javascript-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/javascript') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/javascript/tambah.blade.php
| ... | ... | @@ -0,0 +1,46 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['javascript.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 8 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 13 | + </p> | |
| 14 | + <script> | |
| 15 | + $(document).ready(function() { | |
| 16 | + $('#konten').summernote(); | |
| 17 | + }); | |
| 18 | + var konten = $('#konten').summernote() | |
| 19 | + </script> | |
| 20 | + <!-- <p> | |
| 21 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 22 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 23 | + </p> --> | |
| 24 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 25 | +</div> | |
| 26 | +<div class="row"> | |
| 27 | + <div class="col-md-12"> | |
| 28 | + <span class="pesan"></span> | |
| 29 | + <div id="output"></div> | |
| 30 | + <div class="progress"> | |
| 31 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 32 | + <div id="statustxt">0%</div> | |
| 33 | + </div> | |
| 34 | + </div> | |
| 35 | + </div> | |
| 36 | +</div> | |
| 37 | +{!! Form::close() !!} | |
| 38 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 39 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 40 | +<!-- include summernote css/js --> | |
| 41 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 42 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 43 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 44 | + | |
| 45 | + | |
| 46 | + |
resources/views/backend/javascript/ubah.blade.php
| ... | ... | @@ -0,0 +1,45 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['javascript.update', $javascript->id], 'class' => 'form account-form', 'method' => 'PUT', 'files' => TRUE )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} | |
| 8 | + {!! Form::text('judul', $javascript->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-6 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', $javascript->konten, array('id' => 'konten', 'class' => 'form-control', 'placeholder' => 'Tulis')) !!} | |
| 13 | + </p> | |
| 14 | + | |
| 15 | +</div> | |
| 16 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 17 | +</div> | |
| 18 | +<div class="row"> | |
| 19 | + <div class="col-md-12"> | |
| 20 | + <span class="pesan"></span> | |
| 21 | + <div id="output"></div> | |
| 22 | + <div class="progress"> | |
| 23 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 24 | + <div id="statustxt">0%</div> | |
| 25 | + </div> | |
| 26 | + </div> | |
| 27 | + </div> | |
| 28 | +</div> | |
| 29 | +{!! Form::close() !!} | |
| 30 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 31 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 32 | +<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"> </script> | |
| 33 | +<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" /> | |
| 34 | +<script> | |
| 35 | + $(document).ready(function(){ | |
| 36 | + var date_input=$('input[name="tanggal_sk"]'); //our date input has the name "date" | |
| 37 | + var container=$('.bootstrap-iso form').length>0 ? $('.bootstrap-iso form').parent() : "body"; | |
| 38 | + date_input.datepicker({ | |
| 39 | + format: 'mm/dd/yyyy', | |
| 40 | + container: container, | |
| 41 | + todayHighlight: true, | |
| 42 | + autoclose: true, | |
| 43 | + }) | |
| 44 | + }) | |
| 45 | +</script> |
resources/views/backend/laravel/ubah.blade.php
| ... | ... | @@ -2,10 +2,7 @@ |
| 2 | 2 | <div class="row"> |
| 3 | 3 | <div class="col-md-12"> |
| 4 | 4 | |
| 5 | - <p> | |
| 6 | - {!! Form::label('Kategori Id', 'Kategori Id', array('class' => 'col-md-6 control-label')) !!} | |
| 7 | - {!! Form::text('kategori_id', $laravel->katartikel_id, array('id' => 'kategori_id', 'class' => 'form-control', 'placeholder' => 'Kategori Artikel')) !!} | |
| 8 | - </p> | |
| 5 | + | |
| 9 | 6 | <p> |
| 10 | 7 | {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} |
| 11 | 8 | {!! Form::text('judul', $laravel->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} |
| ... | ... | @@ -14,10 +11,7 @@ |
| 14 | 11 | {!! Form::label('Konten', 'Konten', array('class' => 'col-md-6 control-label')) !!} |
| 15 | 12 | {!! Form::textarea('konten', $laravel->konten, array('id' => 'konten', 'class' => 'form-control', 'placeholder' => 'Tulis')) !!} |
| 16 | 13 | </p> |
| 17 | - <!-- <p> | |
| 18 | - {!! Form::label('User', 'User', array('class' => 'col-md-6 control-label')) !!} | |
| 19 | - {!! Form::text('user_id', $laravel->user_id, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Id Pengguna')) !!} | |
| 20 | - </p> --> | |
| 14 | + | |
| 21 | 15 | </div> |
| 22 | 16 | {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} |
| 23 | 17 | </div> |
resources/views/backend/os/ajax.blade.php
| ... | ... | @@ -0,0 +1,76 @@ |
| 1 | +var nextUrl=$("#url").val(); | |
| 2 | +function errorMsg(pesan){ | |
| 3 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> Terjadi kesalahan. Error '+ pesan +'</div>'); | |
| 4 | + $("input").prop('disabled', false); | |
| 5 | + $(".loading").hide(); | |
| 6 | + $(".modal-footer").show(); | |
| 7 | +} | |
| 8 | + | |
| 9 | +function successMsg(data){ | |
| 10 | + if(data.status == true){ | |
| 11 | + if (typeof data.url !== 'undefined') { | |
| 12 | + location.href= data.url; | |
| 13 | + } else { | |
| 14 | + $('#datatable').DataTable().ajax.reload(); | |
| 15 | + $('.modal').modal('hide'); | |
| 16 | + Swal.fire({ | |
| 17 | + title: 'Okay...', | |
| 18 | + text: 'Berhasil proses data', | |
| 19 | + type: 'success', | |
| 20 | + timer: 1500 | |
| 21 | + }); | |
| 22 | + } | |
| 23 | + }else{ | |
| 24 | + $("button").prop("disabled", false); | |
| 25 | + $("input").prop('disabled', false); | |
| 26 | + $.each(data.pesan, function(i, item) { | |
| 27 | + $('#'+i).closest('.form-group').addClass('has-error'); | |
| 28 | + $('#'+i).focus(); | |
| 29 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> '+ item +'</div>'); | |
| 30 | + return false; | |
| 31 | + }); | |
| 32 | + } | |
| 33 | + $(".loading").hide(); | |
| 34 | + {{-- $(".pesan").html(''); --}} | |
| 35 | + $(".modal-footer").show(); | |
| 36 | + | |
| 37 | +} | |
| 38 | +function sebelumKirim(){ | |
| 39 | + $(".pesan").html('<div class="alert alert-info" role="alert"><center><i class="fa fa-spinner fa-spin"></i> Loading...</center></div>'); | |
| 40 | + $("input").prop('disabled', true); | |
| 41 | + $(".loading").show(); | |
| 42 | + $(".modal-footer").hide(); | |
| 43 | +} | |
| 44 | + | |
| 45 | +function goAjax(targetUrl, dataString, methodType = 'POST'){ | |
| 46 | + $.ajax({ | |
| 47 | + type: methodType, | |
| 48 | + url: targetUrl, | |
| 49 | + data: dataString, | |
| 50 | + enctype: 'multipart/form-data', | |
| 51 | + dataType: 'json', | |
| 52 | + cache: false, | |
| 53 | + beforeSend: function(){ | |
| 54 | + sebelumKirim(); | |
| 55 | + }, | |
| 56 | + success: function(data){ | |
| 57 | + successMsg(data); | |
| 58 | + }, | |
| 59 | + error: function(x, e){ | |
| 60 | + // errorMsg(x.status); | |
| 61 | + } | |
| 62 | + }); | |
| 63 | +} | |
| 64 | + | |
| 65 | +function addCommas(nStr) | |
| 66 | +{ | |
| 67 | + nStr += ''; | |
| 68 | + x = nStr.split('.'); | |
| 69 | + x1 = x[0]; | |
| 70 | + x2 = x.length > 1 ? '.' + x[1] : ''; | |
| 71 | + var rgx = /(\d+)(\d{3})/; | |
| 72 | + while (rgx.test(x1)) { | |
| 73 | + x1 = x1.replace(rgx, '$1' + ',' + '$2'); | |
| 74 | + } | |
| 75 | + return x1 + x2; | |
| 76 | +} |
resources/views/backend/os/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/os/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul' }, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false } | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/os/datatables_detail.blade.php
| ... | ... | @@ -0,0 +1,49 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2, 3, 4] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2, 3, 4] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2, 3, 4] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/unor/detail/data/'.$id) }}", | |
| 43 | + columns: [ | |
| 44 | + { data: 'nama' }, | |
| 45 | + { data: 'email' }, | |
| 46 | + { data: 'username' } | |
| 47 | + ] | |
| 48 | + }); | |
| 49 | +}); | |
| 0 | 50 | \ No newline at end of file |
resources/views/backend/os/detail.blade.php
| ... | ... | @@ -0,0 +1,33 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', 'Detail '. $halaman->nama . ' '. $aksesgrup->nama) | |
| 3 | +@push('header', 'Detail '. $halaman->nama . ' '.$aksesgrup->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<div class="btn-group pull-right"> | |
| 6 | + <a href="{{ url('aksesgrup') }}" class="btn btn-sm btn-danger"> | |
| 7 | + <i class="fa fa-arrow-left"></i> Kembali | |
| 8 | + </a> | |
| 9 | +</div> | |
| 10 | +@endpush | |
| 11 | +@section('content') | |
| 12 | +<div class="panel-container show"> | |
| 13 | + <div class="panel-content"> | |
| 14 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 15 | + <thead class="bg-primary-600"> | |
| 16 | + <tr> | |
| 17 | + <th>Nama</th> | |
| 18 | + <th>Email</th> | |
| 19 | + <th>Username</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/'.$aksesgrup->id.'/datatables_detail.js') }}"></script> | |
| 30 | +@endpush | |
| 31 | +@push('css') | |
| 32 | +@include('backend.home.datatable-css') | |
| 33 | +@endpush | |
| 0 | 34 | \ No newline at end of file |
resources/views/backend/os/hapus.blade.php
| ... | ... | @@ -0,0 +1,24 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['os.destroy', $os->id], 'class' => 'form account-form', 'method' => 'DELETE')) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + <p> | |
| 6 | + <label class="control-label">Hapus data <strong>{{ $os->id }}?</strong></label> | |
| 7 | + </p> | |
| 8 | + </div> | |
| 9 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 10 | +</div> | |
| 11 | +<div class="row"> | |
| 12 | + <div class="col-md-12"> | |
| 13 | + <span class="pesan"></span> | |
| 14 | + <div id="output"></div> | |
| 15 | + <div class="progress"> | |
| 16 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 17 | + <div id="statustxt">0%</div> | |
| 18 | + </div> | |
| 19 | + </div> | |
| 20 | + </div> | |
| 21 | +</div> | |
| 22 | +{!! Form::close() !!} | |
| 23 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 24 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> |
resources/views/backend/os/index.blade.php
| ... | ... | @@ -0,0 +1,34 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show"> | |
| 11 | + <div class="panel-content"> | |
| 12 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 13 | + <thead class="bg-primary-600"> | |
| 14 | + <tr> | |
| 15 | + | |
| 16 | + | |
| 17 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Judul</th> | |
| 18 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Konten</th> | |
| 19 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Aksi</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 30 | + | |
| 31 | +@endpush | |
| 32 | +@push('css') | |
| 33 | +@include('backend.home.datatable-css') | |
| 34 | +@endpush |
resources/views/backend/os/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/os/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('os-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/os') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('os-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/os') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/os/tambah.blade.php
| ... | ... | @@ -0,0 +1,46 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['os.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 8 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 13 | + </p> | |
| 14 | + <script> | |
| 15 | + $(document).ready(function() { | |
| 16 | + $('#konten').summernote(); | |
| 17 | + }); | |
| 18 | + var konten = $('#konten').summernote() | |
| 19 | + </script> | |
| 20 | + <!-- <p> | |
| 21 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 22 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 23 | + </p> --> | |
| 24 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 25 | +</div> | |
| 26 | +<div class="row"> | |
| 27 | + <div class="col-md-12"> | |
| 28 | + <span class="pesan"></span> | |
| 29 | + <div id="output"></div> | |
| 30 | + <div class="progress"> | |
| 31 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 32 | + <div id="statustxt">0%</div> | |
| 33 | + </div> | |
| 34 | + </div> | |
| 35 | + </div> | |
| 36 | +</div> | |
| 37 | +{!! Form::close() !!} | |
| 38 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 39 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 40 | +<!-- include summernote css/js --> | |
| 41 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 42 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 43 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 44 | + | |
| 45 | + | |
| 46 | + |
resources/views/backend/os/ubah.blade.php
| ... | ... | @@ -0,0 +1,45 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['os.update', $os->id], 'class' => 'form account-form', 'method' => 'PUT', 'files' => TRUE )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} | |
| 8 | + {!! Form::text('judul', $os->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-6 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', $os->konten, array('id' => 'konten', 'class' => 'form-control', 'placeholder' => 'Tulis')) !!} | |
| 13 | + </p> | |
| 14 | + | |
| 15 | +</div> | |
| 16 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 17 | +</div> | |
| 18 | +<div class="row"> | |
| 19 | + <div class="col-md-12"> | |
| 20 | + <span class="pesan"></span> | |
| 21 | + <div id="output"></div> | |
| 22 | + <div class="progress"> | |
| 23 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 24 | + <div id="statustxt">0%</div> | |
| 25 | + </div> | |
| 26 | + </div> | |
| 27 | + </div> | |
| 28 | +</div> | |
| 29 | +{!! Form::close() !!} | |
| 30 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 31 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 32 | +<script type="text/os" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"> </script> | |
| 33 | +<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" /> | |
| 34 | +<script> | |
| 35 | + $(document).ready(function(){ | |
| 36 | + var date_input=$('input[name="tanggal_sk"]'); //our date input has the name "date" | |
| 37 | + var container=$('.bootstrap-iso form').length>0 ? $('.bootstrap-iso form').parent() : "body"; | |
| 38 | + date_input.datepicker({ | |
| 39 | + format: 'mm/dd/yyyy', | |
| 40 | + container: container, | |
| 41 | + todayHighlight: true, | |
| 42 | + autoclose: true, | |
| 43 | + }) | |
| 44 | + }) | |
| 45 | +</script> |
resources/views/backend/sop/ajax.blade.php
| ... | ... | @@ -0,0 +1,76 @@ |
| 1 | +var nextUrl=$("#url").val(); | |
| 2 | +function errorMsg(pesan){ | |
| 3 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> Terjadi kesalahan. Error '+ pesan +'</div>'); | |
| 4 | + $("input").prop('disabled', false); | |
| 5 | + $(".loading").hide(); | |
| 6 | + $(".modal-footer").show(); | |
| 7 | +} | |
| 8 | + | |
| 9 | +function successMsg(data){ | |
| 10 | + if(data.status == true){ | |
| 11 | + if (typeof data.url !== 'undefined') { | |
| 12 | + location.href= data.url; | |
| 13 | + } else { | |
| 14 | + $('#datatable').DataTable().ajax.reload(); | |
| 15 | + $('.modal').modal('hide'); | |
| 16 | + Swal.fire({ | |
| 17 | + title: 'Okay...', | |
| 18 | + text: 'Berhasil proses data', | |
| 19 | + type: 'success', | |
| 20 | + timer: 1500 | |
| 21 | + }); | |
| 22 | + } | |
| 23 | + }else{ | |
| 24 | + $("button").prop("disabled", false); | |
| 25 | + $("input").prop('disabled', false); | |
| 26 | + $.each(data.pesan, function(i, item) { | |
| 27 | + $('#'+i).closest('.form-group').addClass('has-error'); | |
| 28 | + $('#'+i).focus(); | |
| 29 | + $(".pesan").html('<div class="alert alert-danger" role="alert"><i class="fa fa-ban"></i> '+ item +'</div>'); | |
| 30 | + return false; | |
| 31 | + }); | |
| 32 | + } | |
| 33 | + $(".loading").hide(); | |
| 34 | + {{-- $(".pesan").html(''); --}} | |
| 35 | + $(".modal-footer").show(); | |
| 36 | + | |
| 37 | +} | |
| 38 | +function sebelumKirim(){ | |
| 39 | + $(".pesan").html('<div class="alert alert-info" role="alert"><center><i class="fa fa-spinner fa-spin"></i> Loading...</center></div>'); | |
| 40 | + $("input").prop('disabled', true); | |
| 41 | + $(".loading").show(); | |
| 42 | + $(".modal-footer").hide(); | |
| 43 | +} | |
| 44 | + | |
| 45 | +function goAjax(targetUrl, dataString, methodType = 'POST'){ | |
| 46 | + $.ajax({ | |
| 47 | + type: methodType, | |
| 48 | + url: targetUrl, | |
| 49 | + data: dataString, | |
| 50 | + enctype: 'multipart/form-data', | |
| 51 | + dataType: 'json', | |
| 52 | + cache: false, | |
| 53 | + beforeSend: function(){ | |
| 54 | + sebelumKirim(); | |
| 55 | + }, | |
| 56 | + success: function(data){ | |
| 57 | + successMsg(data); | |
| 58 | + }, | |
| 59 | + error: function(x, e){ | |
| 60 | + // errorMsg(x.status); | |
| 61 | + } | |
| 62 | + }); | |
| 63 | +} | |
| 64 | + | |
| 65 | +function addCommas(nStr) | |
| 66 | +{ | |
| 67 | + nStr += ''; | |
| 68 | + x = nStr.split('.'); | |
| 69 | + x1 = x[0]; | |
| 70 | + x2 = x.length > 1 ? '.' + x[1] : ''; | |
| 71 | + var rgx = /(\d+)(\d{3})/; | |
| 72 | + while (rgx.test(x1)) { | |
| 73 | + x1 = x1.replace(rgx, '$1' + ',' + '$2'); | |
| 74 | + } | |
| 75 | + return x1 + x2; | |
| 76 | +} |
resources/views/backend/sop/datatables.blade.php
| ... | ... | @@ -0,0 +1,51 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/sop/data') }}", | |
| 43 | + columns: [ | |
| 44 | + | |
| 45 | + { data: 'judul' }, | |
| 46 | + { data: 'konten'}, | |
| 47 | + | |
| 48 | + { data: 'action', orderable: false, searchable: false } | |
| 49 | + ] | |
| 50 | + }); | |
| 51 | +}); | |
| 0 | 52 | \ No newline at end of file |
resources/views/backend/sop/datatables_detail.blade.php
| ... | ... | @@ -0,0 +1,49 @@ |
| 1 | +$(document).ready(function () { | |
| 2 | + $('#datatable').DataTable({ | |
| 3 | + responsive: true, | |
| 4 | + lengthChange: false, | |
| 5 | + language: { | |
| 6 | + url: "{{ asset('resources/vendor/datatables/js/indonesian.json') }}" | |
| 7 | + }, | |
| 8 | + dom: "<'row mb-3'<'col-sm-12 col-md-6 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-6 d-flex align-items-center justify-content-end'lB>>" + | |
| 9 | + "<'row'<'col-sm-12'tr>>" + | |
| 10 | + "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", | |
| 11 | + buttons: [ | |
| 12 | + { | |
| 13 | + extend: 'pdfHtml5', | |
| 14 | + text: 'PDF', | |
| 15 | + titleAttr: 'Generate PDF', | |
| 16 | + className: 'btn-outline-danger btn-sm mr-1', | |
| 17 | + exportOptions: { | |
| 18 | + columns: [0, 1, 2, 3, 4] | |
| 19 | + } | |
| 20 | + }, | |
| 21 | + { | |
| 22 | + extend: 'excelHtml5', | |
| 23 | + text: 'Excel', | |
| 24 | + titleAttr: 'Generate Excel', | |
| 25 | + className: 'btn-outline-success btn-sm mr-1', | |
| 26 | + exportOptions: { | |
| 27 | + columns: [0, 1, 2, 3, 4] | |
| 28 | + } | |
| 29 | + }, | |
| 30 | + { | |
| 31 | + extend: 'print', | |
| 32 | + text: 'Print', | |
| 33 | + titleAttr: 'Print Table', | |
| 34 | + className: 'btn-outline-primary btn-sm', | |
| 35 | + exportOptions: { | |
| 36 | + columns: [0, 1, 2, 3, 4] | |
| 37 | + } | |
| 38 | + } | |
| 39 | + ], | |
| 40 | + processing: true, | |
| 41 | + serverSide: true, | |
| 42 | + ajax: "{{ url($url_admin.'/unor/detail/data/'.$id) }}", | |
| 43 | + columns: [ | |
| 44 | + { data: 'nama' }, | |
| 45 | + { data: 'email' }, | |
| 46 | + { data: 'username' } | |
| 47 | + ] | |
| 48 | + }); | |
| 49 | +}); | |
| 0 | 50 | \ No newline at end of file |
resources/views/backend/sop/detail.blade.php
| ... | ... | @@ -0,0 +1,33 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', 'Detail '. $halaman->nama . ' '. $aksesgrup->nama) | |
| 3 | +@push('header', 'Detail '. $halaman->nama . ' '.$aksesgrup->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<div class="btn-group pull-right"> | |
| 6 | + <a href="{{ url('aksesgrup') }}" class="btn btn-sm btn-danger"> | |
| 7 | + <i class="fa fa-arrow-left"></i> Kembali | |
| 8 | + </a> | |
| 9 | +</div> | |
| 10 | +@endpush | |
| 11 | +@section('content') | |
| 12 | +<div class="panel-container show"> | |
| 13 | + <div class="panel-content"> | |
| 14 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 15 | + <thead class="bg-primary-600"> | |
| 16 | + <tr> | |
| 17 | + <th>Nama</th> | |
| 18 | + <th>Email</th> | |
| 19 | + <th>Username</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/'.$aksesgrup->id.'/datatables_detail.js') }}"></script> | |
| 30 | +@endpush | |
| 31 | +@push('css') | |
| 32 | +@include('backend.home.datatable-css') | |
| 33 | +@endpush | |
| 0 | 34 | \ No newline at end of file |
resources/views/backend/sop/hapus.blade.php
| ... | ... | @@ -0,0 +1,24 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['sop.destroy', $sop->id], 'class' => 'form account-form', 'method' => 'DELETE')) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + <p> | |
| 6 | + <label class="control-label">Hapus data <strong>{{ $sop->id }}?</strong></label> | |
| 7 | + </p> | |
| 8 | + </div> | |
| 9 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 10 | +</div> | |
| 11 | +<div class="row"> | |
| 12 | + <div class="col-md-12"> | |
| 13 | + <span class="pesan"></span> | |
| 14 | + <div id="output"></div> | |
| 15 | + <div class="progress"> | |
| 16 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 17 | + <div id="statustxt">0%</div> | |
| 18 | + </div> | |
| 19 | + </div> | |
| 20 | + </div> | |
| 21 | +</div> | |
| 22 | +{!! Form::close() !!} | |
| 23 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 24 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> |
resources/views/backend/sop/index.blade.php
| ... | ... | @@ -0,0 +1,34 @@ |
| 1 | +@extends('backend.home.index') | |
| 2 | +@push('title', $halaman->nama) | |
| 3 | +@push('header', $halaman->nama) | |
| 4 | +@push('tombol') | |
| 5 | +<a href="#tambah" class="btn btn-sm btn-primary tambah"> | |
| 6 | + Tambah <i class="fa fa-plus-circle"></i> | |
| 7 | +</a> | |
| 8 | +@endpush | |
| 9 | +@section('content') | |
| 10 | +<div class="panel-container show"> | |
| 11 | + <div class="panel-content"> | |
| 12 | + <table id="datatable" class="table table-bordered table-hover table-striped w-100"> | |
| 13 | + <thead class="bg-primary-600"> | |
| 14 | + <tr> | |
| 15 | + | |
| 16 | + | |
| 17 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Judul</th> | |
| 18 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Konten</th> | |
| 19 | + <th class="text-center wid-10" tabindex="0" rowspan="1" colspan="1">Aksi</th> | |
| 20 | + </tr> | |
| 21 | + </thead> | |
| 22 | + </table> | |
| 23 | + </div> | |
| 24 | +</div> | |
| 25 | +@endsection | |
| 26 | +@push('js') | |
| 27 | +@include('backend.home.datatable-js') | |
| 28 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/jquery.js') }}"></script> | |
| 29 | +<script type="text/javascript" src="{{ URL::asset('ojisatriani/'. $halaman->kode .'/datatables.js') }}"></script> | |
| 30 | + | |
| 31 | +@endpush | |
| 32 | +@push('css') | |
| 33 | +@include('backend.home.datatable-css') | |
| 34 | +@endpush |
resources/views/backend/sop/jquery.blade.php
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +$(document).ready(function(){ | |
| 2 | + $('.tambah').click(function(){ | |
| 3 | + ojisatrianiLoadingFadeIn(); | |
| 4 | + $.loadmodal({ | |
| 5 | + url: "{{ url($url_admin.'/sop/create') }}", | |
| 6 | + id: 'responsive', | |
| 7 | + dlgClass: 'fade', | |
| 8 | + bgClass: 'primary', | |
| 9 | + title: 'Tambah', | |
| 10 | + width: 'whatever', | |
| 11 | + modal: { | |
| 12 | + keyboard: true, | |
| 13 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 14 | + }, | |
| 15 | + ajax: { | |
| 16 | + dataType: 'html', | |
| 17 | + method: 'GET', | |
| 18 | + success: function(data, status, xhr){ | |
| 19 | + ojisatrianiLoadingFadeOut(); | |
| 20 | + }, | |
| 21 | + | |
| 22 | + }, | |
| 23 | + }); | |
| 24 | + }); | |
| 25 | + | |
| 26 | + $(document).on("click",".ubah",function() { | |
| 27 | + ojisatrianiLoadingFadeIn(); | |
| 28 | + var id = $(this).attr('sop-id'); | |
| 29 | + $.loadmodal({ | |
| 30 | + url: "{{ url($url_admin.'/sop') }}/"+ id +"/edit", | |
| 31 | + id: 'responsive', | |
| 32 | + dlgClass: 'fade', | |
| 33 | + bgClass: 'warning', | |
| 34 | + title: 'Ubah', | |
| 35 | + width: 'whatever', | |
| 36 | + modal: { | |
| 37 | + keyboard: true, | |
| 38 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 39 | + }, | |
| 40 | + ajax: { | |
| 41 | + dataType: 'html', | |
| 42 | + method: 'GET', | |
| 43 | + success: function(data, status, xhr){ | |
| 44 | + ojisatrianiLoadingFadeOut(); | |
| 45 | + }, | |
| 46 | + }, | |
| 47 | + }); | |
| 48 | + }); | |
| 49 | + | |
| 50 | + $(document).on("click",".hapus",function() { | |
| 51 | + ojisatrianiLoadingFadeIn(); | |
| 52 | + var id = $(this).attr('sop-id'); | |
| 53 | + $.loadmodal({ | |
| 54 | + url: "{{ url($url_admin.'/sop') }}/hapus/"+ id, | |
| 55 | + id: 'responsive', | |
| 56 | + dlgClass: 'fade', | |
| 57 | + bgClass: 'danger', | |
| 58 | + title: 'Hapus', | |
| 59 | + width: 'whatever', | |
| 60 | + modal: { | |
| 61 | + keyboard: true, | |
| 62 | + // any other options from the regular $().modal call (see Bootstrap docs) | |
| 63 | + //$('#uraian').val(id), | |
| 64 | + }, | |
| 65 | + ajax: { | |
| 66 | + dataType: 'html', | |
| 67 | + method: 'GET', | |
| 68 | + success: function(data, status, xhr){ | |
| 69 | + ojisatrianiLoadingFadeOut(); | |
| 70 | + }, | |
| 71 | + }, | |
| 72 | + }); | |
| 73 | + }); | |
| 74 | + | |
| 75 | +}); |
resources/views/backend/sop/tambah.blade.php
| ... | ... | @@ -0,0 +1,46 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['sop.store'], 'class' => 'form account-form', 'method' => 'post' )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-12 control-label')) !!} | |
| 8 | + {!! Form::text('judul', NULL, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul Artikel')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-12 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', NULL, array('id' => 'konten', 'class' => 'form-control', 'rows' => '30' , 'placeholder' => 'Konten')) !!} | |
| 13 | + </p> | |
| 14 | + <script> | |
| 15 | + $(document).ready(function() { | |
| 16 | + $('#konten').summernote(); | |
| 17 | + }); | |
| 18 | + var konten = $('#konten').summernote() | |
| 19 | + </script> | |
| 20 | + <!-- <p> | |
| 21 | + {!! Form::label('User', 'User', array('class' => 'col-md-12 control-label')) !!} | |
| 22 | + {!! Form::text('user_id', NULL, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Kategori Dokumen')) !!} | |
| 23 | + </p> --> | |
| 24 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 25 | +</div> | |
| 26 | +<div class="row"> | |
| 27 | + <div class="col-md-12"> | |
| 28 | + <span class="pesan"></span> | |
| 29 | + <div id="output"></div> | |
| 30 | + <div class="progress"> | |
| 31 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 32 | + <div id="statustxt">0%</div> | |
| 33 | + </div> | |
| 34 | + </div> | |
| 35 | + </div> | |
| 36 | +</div> | |
| 37 | +{!! Form::close() !!} | |
| 38 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 39 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 40 | +<!-- include summernote css/js --> | |
| 41 | +<link href="{{ URL::asset('resources/summernote/summernote.min.css') }}" rel="stylesheet"> | |
| 42 | +<script src="{{ URL::asset('resources/summernote/summernote.js') }}"></script> | |
| 43 | + <!-- <link href="{{ asset('ckeditor/plugins/codesnippet/lib/highlight/styles/default.css') }}" rel="stylesheet"> --> | |
| 44 | + | |
| 45 | + | |
| 46 | + |
resources/views/backend/sop/ubah.blade.php
| ... | ... | @@ -0,0 +1,48 @@ |
| 1 | +{!! Form::open(array('id' => 'frmOji', 'route' => ['sop.update', $sop->id], 'class' => 'form account-form', 'method' => 'PUT', 'files' => TRUE )) !!} | |
| 2 | +<div class="row"> | |
| 3 | + <div class="col-md-12"> | |
| 4 | + | |
| 5 | + | |
| 6 | + <p> | |
| 7 | + {!! Form::label('Judul', 'Judul', array('class' => 'col-md-6 control-label')) !!} | |
| 8 | + {!! Form::text('judul', $sop->judul, array('id' => 'judul', 'class' => 'form-control', 'placeholder' => 'Judul')) !!} | |
| 9 | + </p> | |
| 10 | + <p> | |
| 11 | + {!! Form::label('Konten', 'Konten', array('class' => 'col-md-6 control-label')) !!} | |
| 12 | + {!! Form::textarea('konten', $sop->konten, array('id' => 'konten', 'class' => 'form-control', 'placeholder' => 'Tulis')) !!} | |
| 13 | + </p> | |
| 14 | + <!-- <p> | |
| 15 | + {!! Form::label('User', 'User', array('class' => 'col-md-6 control-label')) !!} | |
| 16 | + {!! Form::text('user_id', $sop->user_id, array('id' => 'user_id', 'class' => 'form-control', 'placeholder' => 'Id Pengguna')) !!} | |
| 17 | + </p> --> | |
| 18 | +</div> | |
| 19 | + {!! Form::hidden('table-list', 'datatable', array('id' => 'table-list')) !!} | |
| 20 | +</div> | |
| 21 | +<div class="row"> | |
| 22 | + <div class="col-md-12"> | |
| 23 | + <span class="pesan"></span> | |
| 24 | + <div id="output"></div> | |
| 25 | + <div class="progress"> | |
| 26 | + <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"> | |
| 27 | + <div id="statustxt">0%</div> | |
| 28 | + </div> | |
| 29 | + </div> | |
| 30 | + </div> | |
| 31 | +</div> | |
| 32 | +{!! Form::close() !!} | |
| 33 | +<script src="{{ URL::asset('resources/vendor/jquery/jquery.form.js') }}"></script> | |
| 34 | +<script src="{{ URL::asset('ojisatriani/home/ajax_progress.js') }}"></script> | |
| 35 | +<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"> </script> | |
| 36 | +<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" /> | |
| 37 | +<script> | |
| 38 | + $(document).ready(function(){ | |
| 39 | + var date_input=$('input[name="tanggal_sk"]'); //our date input has the name "date" | |
| 40 | + var container=$('.bootstrap-iso form').length>0 ? $('.bootstrap-iso form').parent() : "body"; | |
| 41 | + date_input.datepicker({ | |
| 42 | + format: 'mm/dd/yyyy', | |
| 43 | + container: container, | |
| 44 | + todayHighlight: true, | |
| 45 | + autoclose: true, | |
| 46 | + }) | |
| 47 | + }) | |
| 48 | +</script> |
routes/backend.php
| 1 | 1 | <?php |
| 2 | 2 | |
| 3 | +use Illuminate\Support\Facades\Route; | |
| 4 | + | |
| 3 | 5 | /* |
| 4 | 6 | |-------------------------------------------------------------------------- |
| 5 | 7 | | Backend Routes |
| ... | ... | @@ -166,16 +168,46 @@ Route::group(['prefix' => config('master.url.admin')], function () { |
| 166 | 168 | Route::get('dataon', 'pencarianController@dataOnly'); |
| 167 | 169 | |
| 168 | 170 | // Artikel Backend Programming |
| 169 | - Route::get('beprog/data', 'backendpController@data')->name('beprog.data'); | |
| 170 | - Route::get('beprog/hapus/{id}', 'backendpController@hapus')->name('beprog.hapus'); | |
| 171 | - Route::get('beprog/create/{id}', 'backendpController@create')->name('beprog.create_id'); | |
| 172 | - Route::resource('beprog', 'backendpController'); | |
| 171 | + Route::get('backendp/data', 'backendpController@data')->name('backendp.data'); | |
| 172 | + Route::get('backendp/hapus/{id}', 'backendpController@hapus')->name('backendp.hapus'); | |
| 173 | + Route::get('backendp/create/{id}', 'backendpController@create')->name('backendp.create_id'); | |
| 174 | + Route::resource('backendp', 'backendpController'); | |
| 173 | 175 | |
| 174 | 176 | // Laravel Artikel |
| 175 | 177 | Route::get('laravel/data', 'laravelController@data')->name('laravel.data'); |
| 176 | 178 | Route::get('laravel/hapus/{id}', 'laravelController@hapus')->name('laravel.hapus'); |
| 177 | 179 | // Route::get('laravel/create/{id}', 'laravelController@create')->name('laravel.create_id'); |
| 178 | 180 | Route::resource('laravel', 'laravelController'); |
| 181 | + | |
| 182 | + // SOP Management Artikel | |
| 183 | + Route::get('sop/data', 'sopController@data')->name('sop.data'); | |
| 184 | + Route::get('sop/hapus/{id}', 'sopController@hapus')->name('sop.hapus'); | |
| 185 | + Route::get('sop/create/{id}', 'sopController@create')->name('sop.create_id'); | |
| 186 | + Route::resource('sop', 'sopController'); | |
| 187 | + | |
| 188 | + // Javascript Management Artikel | |
| 189 | + Route::get('javascript/data', 'javascriptController@data')->name('javascript.data'); | |
| 190 | + Route::get('javascript/hapus/{id}', 'javascriptController@hapus')->name('javascript.hapus'); | |
| 191 | + Route::get('javascript/create/{id}', 'javascriptController@create')->name('javascript.create_id'); | |
| 192 | + Route::resource('javascript', 'javascriptController'); | |
| 193 | + | |
| 194 | + // Framework Management Artikel | |
| 195 | + Route::get('framework/data', 'frameworkController@data')->name('framework.data'); | |
| 196 | + Route::get('framework/hapus/{id}', 'frameworkController@hapus')->name('framework.hapus'); | |
| 197 | + Route::get('framework/create/{id}', 'frameworkController@create')->name('framework.create_id'); | |
| 198 | + Route::resource('framework', 'frameworkController'); | |
| 199 | + | |
| 200 | + // Operating System Management Artikel | |
| 201 | + Route::get('os/data', 'osController@data')->name('os.data'); | |
| 202 | + Route::get('os/hapus/{id}', 'osController@hapus')->name('os.hapus'); | |
| 203 | + Route::get('os/create/{id}', 'osController@create')->name('os.create_id'); | |
| 204 | + Route::resource('os', 'osController'); | |
| 205 | + | |
| 206 | + // Content Management System Management Artikel | |
| 207 | + Route::get('cms/data', 'cmsController@data')->name('cms.data'); | |
| 208 | + Route::get('cms/hapus/{id}', 'cmsController@hapus')->name('cms.hapus'); | |
| 209 | + Route::get('cms/create/{id}', 'cmsController@create')->name('cms.create_id'); | |
| 210 | + Route::resource('cms', 'cmsController'); | |
| 179 | 211 | |
| 180 | 212 | // Backend Programming Artikel |
| 181 | 213 | // Route::get('beprog/data', 'backendpController@data')->name('laravel.data'); |
| ... | ... | @@ -184,10 +216,10 @@ Route::group(['prefix' => config('master.url.admin')], function () { |
| 184 | 216 | // Route::resource('beprog', 'beackendpController'); |
| 185 | 217 | |
| 186 | 218 | // Frontend Programming Artikel |
| 187 | - Route::get('feprog/data', 'frontendpController@data')->name('feprog.data'); | |
| 188 | - Route::get('feprog/hapus/{id}', 'frontendpController@hapus')->name('feprog.hapus'); | |
| 219 | + Route::get('frontendp/data', 'frontendpController@data')->name('frontendp.data'); | |
| 220 | + Route::get('frontendp/hapus/{id}', 'frontendpController@hapus')->name('frontendp.hapus'); | |
| 189 | 221 | // Route::get('laravel/create/{id}', 'laravelController@create')->name('laravel.create_id'); |
| 190 | - Route::resource('feprog', 'frontendpController'); | |
| 222 | + Route::resource('frontendp', 'frontendpController'); | |
| 191 | 223 | |
| 192 | 224 | // Eoffice Artikel |
| 193 | 225 | Route::get('eoffice/data', 'eofficeController@data')->name('eoffice.data'); |
| ... | ... | @@ -240,8 +272,23 @@ Route::group(['prefix' => config('master.url.admin')], function () { |
| 240 | 272 | // Artikel Frontend |
| 241 | 273 | Route::resource('art-frontend', 'artikelFrontendController'); |
| 242 | 274 | |
| 243 | - // Artikel Frontend | |
| 275 | + // Artikel Backend | |
| 244 | 276 | Route::resource('art-backend', 'artikelBackendController'); |
| 277 | + | |
| 278 | + // Artikel CMS | |
| 279 | + Route::resource('art-cms', 'artikelCmsController'); | |
| 280 | + | |
| 281 | + // Artikel JS | |
| 282 | + Route::resource('art-js', 'artikelJsController'); | |
| 283 | + | |
| 284 | + // Artikel Framework | |
| 285 | + Route::resource('art-fw', 'artikelFwController'); | |
| 286 | + | |
| 287 | + // Artikel Framework | |
| 288 | + Route::resource('art-sop', 'artikelSopController'); | |
| 289 | + | |
| 290 | + // Artikel Framework | |
| 291 | + Route::resource('art-os', 'artikelOsController'); | |
| 245 | 292 | |
| 246 | 293 | |
| 247 | 294 |