Viewing file: CoverageController.php (4.16 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller; use App\Models\Coverage; use Illuminate\Http\Request;
class CoverageController extends Controller { public function index(){ return view('admin.coverage.index'); }
public function getAll() { $coverage = Coverage::orderByDesc('created_at')->where('added_by', 'admin');
return datatables()->of($coverage) ->addColumn('action', function (Coverage $q) { return "<a class='btn btn-sm btn-info' href='" . route('admin.coverage.edit', [$q]) . "'>Edit</a> " . '<button class="btn btn-sm btn-danger" data-message="Are you sure you want to delete this coverage?" data-action=' . route('admin.coverage.destroy', [$q]) . ' data-input={"_method":"delete"} data-toggle="modal" data-target="#modal-confirm">Delete</button>'; }) ->addColumn('country', function (Coverage $q) {
return strtoupper($q->country); }) ->rawColumns(['action','country']) ->toJson(); }
public function create(){
return view('admin.coverage.create'); }
public function store(Request $request){
$request->validate([ 'country'=>'required', 'plain_sms'=>'required', 'receive_sms'=>'required', 'send_mms'=>'required', 'receive_mms'=>'required', 'send_voice_sms'=>'required', 'receive_voice_sms'=>'required', 'send_whatsapp_sms'=>'required', 'receive_whatsapp_sms'=>'required' ]); $country_code=getCountryCode()[$request->country];
if(!isset($country_code['code'])){ return redirect()->back()->withErrors(['failed'=>'Invalid Country code']); }
$pre_counry=Coverage::where('country', $request->country)->where('added_by', 'admin')->first(); if ($pre_counry){ return redirect()->back()->withErrors(['failed'=>'This country already have in coverage list, try another one']); }
$coverage= new Coverage(); $coverage->added_by='admin'; $coverage->admin_id=auth()->user()->id; $coverage->country=$request->country; $coverage->country_code=$country_code['code']; $coverage->plain_sms=$request->plain_sms; $coverage->receive_sms=$request->receive_sms; $coverage->send_mms=$request->send_mms; $coverage->receive_mms=$request->receive_mms; $coverage->send_voice_sms=$request->send_voice_sms; $coverage->receive_voice_sms=$request->receive_voice_sms; $coverage->send_whatsapp_sms=$request->send_whatsapp_sms; $coverage->receive_whatsapp_sms=$request->receive_whatsapp_sms; $coverage->save();
return redirect()->route('admin.coverage.index')->with('success', 'Coverage Successfully Created'); }
public function edit(Coverage $coverage){ $data['coverage']=$coverage;
return view('admin.coverage.edit', $data); }
public function update(Coverage $coverage,Request $request){
$coverage->plain_sms=$request->plain_sms; $coverage->receive_sms=$request->receive_sms; $coverage->send_mms=$request->send_mms; $coverage->receive_mms=$request->receive_mms; $coverage->send_voice_sms=$request->send_voice_sms; $coverage->receive_voice_sms=$request->receive_voice_sms; $coverage->send_whatsapp_sms=$request->send_whatsapp_sms; $coverage->receive_whatsapp_sms=$request->receive_whatsapp_sms; $coverage->save();
return redirect()->route('admin.coverage.index')->with('success', 'Coverage Successfully Updated'); }
public function destroy(Coverage $coverage){
if($coverage->id=='1'){ return redirect()->route('admin.coverage.index')->withErrors(['failed'=>'You can\'t delete this coverage']); }
$coverage->delete();
return redirect()->route('admin.coverage.index')->with('success', 'Coverage Successfully Deleted'); } }
|