TIF_E41201027/app/Http/Controllers/frontend/TulisArtikelController.php

126 lines
3.4 KiB
PHP

<?php
namespace App\Http\Controllers\frontend;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Validator as FacadesValidator;
use App\Models\Artikel;
use App\Models\ArtikelUser;
use Illuminate\Support\Facades\Auth;
class TulisArtikelController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
if(!Auth::check()) { // true sekalian session field di users nanti bisa dipanggil via Auth
//Login Success
return redirect()->route('home');
}
elseif(Auth::check()) {
$data = null;
$kategori_artikel = DB::table('kategori_artikel')->orderBy('id_ktg','asc')->get();
return view('frontend.tulisartikel',compact('data','kategori_artikel'));
}
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$message = [
'required' => ':attribute wajib diisi!!!',
'min' => ':attribute harus diisi minimal 15 huruf!!!',
'max' => ':attribute URL harus diisi maksimal 100 huruf!!!',
'mimes' => ':attribute harus berupa gambar dengan format (JPEG, PNG, dan SVG)',
];
$validator = FacadesValidator::make($request->all(),[
'judul' => 'required|string|min:15|max:100',
'id_ktg' => 'required|string|max:15',
'sumber' => 'required|string|min:15|max:200',
'gambar' => 'required|image|mimes:jpg,png,jpeg,gif,svg|max:2048',
], $message)->validate();
$role = 0;
// rename image name or file name
$getimageName = time().'.'.$request->gambar->getClientOriginalExtension();
$request->gambar->move(public_path('data/data_artikel/'), $getimageName);
$data_simpan = [
'id_ktg' => $request->id_ktg,
'tanggal' => $request->tanggal,
'nama_penulis' => $request->nama_penulis,
'judul' => $request->judul,
'isi' => $request->isi,
'gambar' => $getimageName,
'sumber' => $request->sumber,
'status' => $request->status,
];
ArtikelUser::create($data_simpan);
return redirect()->route('tulisartikel.index')
->with('success','Artikel anda telah berhasil dikirim, mohon untuk menunggu konfirmasi dari Admin')
->with('image',$getimageName);
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}