![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mcoil.corals.io/app/Http/Controllers/Admin/Creator/ |
<?php namespace App\Http\Controllers\Admin\Creator; use Illuminate\Support\Facades\Storage; use Illuminate\Http\Request; use App\Http\Controllers\Controller; use App\Shop\TextBoxes\TextBox; use App\Shop\Banners\Banner; use App\Shop\AccordionBlocks\AccordionBlock; use App\Shop\Pages\Creator; use App\Shop\ServiceBoxes\ServiceBox; use App\Shop\Buttons\Button; use App\Shop\HomeSliderBars\Slider; use App\Shop\ContactInfos\ContactInfo; use App\Shop\CalltoAction\CalltoAction; class CreatorController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $content = Creator::all(); return view('admin.creator.list', ['content' => $content]); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { /** Gathering items from modules required **/ $textbox_items = TextBox::select('id','title')->get(); $banner_items = Banner::select('id','title')->get(); $accordion_items = AccordionBlock::select('id','title')->get(); $servicebox_items = ServiceBox::select('id','type')->groupBy('type')->get(); $Buttons = Button::select('id','title')->get(); $ContactInfo = ContactInfo::select('id','title')->get(); $CalltoAction = CalltoAction::select('id','name')->get(); /** Building the Select with All items from Modules required above **/ $select_textbox = []; $select_textbox['remove'] = "Choose Option"; foreach($textbox_items as $item) { $select_textbox[$item->id] = $item->title; } $select_banner = []; $select_banner['remove'] = "Choose Option"; foreach($banner_items as $item) { $select_banner[$item->id] = $item->title; } $service_items = []; $service_items['remove'] = "Choose Option"; foreach($servicebox_items as $item) { $service_items[$item->id] = $item->type; } $button_items = []; $button_items['remove'] = "Choose Option"; foreach($Buttons as $item) { $button_items[$item->id] = $item->title; } $button_items = []; $button_items['remove'] = "Choose Option"; foreach($Buttons as $item) { $button_items[$item->id] = $item->title; } $contact_items = []; $contact_items['remove'] = "Choose Option"; foreach($ContactInfo as $item) { $contact_items[$item->id] = $item->title; } $callTo_items = []; $callTo_items['remove'] = "Choose Option"; foreach($CalltoAction as $item) { $callTo_items[$item->id] = $item->name; } return view('admin.creator.create', [ 'select_textbox' => $select_textbox, 'select_banner' => $select_banner, 'service_items' => $service_items, 'button_items' => $button_items, 'contact_items' => $contact_items, 'callTo_items' => $callTo_items ]); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $model = new Creator; $model->title = $request->input("title"); $model->no_of_service_box_display = $request->input("no_of_service_box_display"); $model->no_of_service_box_display2 = $request->input("no_of_service_box_display2"); $model->slug = $request->input("slug"); $model->meta_title = $request->input("meta_title"); $model->meta_keywords = $request->input("meta_keywords"); $model->meta_description = $request->input("meta_description"); $model->canonical = $request->input("canonical"); $model->noindex = $request->input("noindex"); $model->meta_og_title = $request->input("meta_og_title"); $model->meta_og_description = $request->input("meta_og_description"); $model->pageType = $request->input("pageType"); /** gathering image for og tag **/ $img = $request->file('meta_og_image'); if ($img !== null) { $filename = $img->getClientOriginalName(); Storage::disk('images_uploaded')->put($filename, file_get_contents($img->getRealPath())); }else{ $filename = $request->input('meta_og_image_old'); } $model->meta_og_image = $filename; $modules_data = array( "banner1" => $request->input("banner1"), "text_box1" => $request->input("text_box1"), "banner2" => $request->input("banner2"), "text_box2" => $request->input("text_box2"), "service_box1" => $request->input("service_box1"), "service_box2" => $request->input("service_box2"), "button_1" => $request->input("button_1"), "button_2" => $request->input("button_2"), "button_3" => $request->input("button_3"), "call_to_action" => $request->input("call_to_action"), ); $model->modules = json_encode($modules_data); $model->save(); $content = Creator::all(); return redirect()->route('admin.creator.list')->with('message', 'Page added successfully.'); } /** * 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) { /** Gathering items from modules required **/ $textbox_items = TextBox::select('id','title')->get(); $banner_items = Banner::select('id','title')->get(); $servicebox_items = ServiceBox::select('id','type')->groupBy('type')->get(); $Buttons = Button::select('id','title')->get(); $ContactInfo = ContactInfo::select('id','title')->get(); $CalltoAction = CalltoAction::select('id','name')->get(); /** Building the Select with All items from Modules required above **/ $select_textbox = []; $select_textbox['remove'] = "Choose Option"; foreach($textbox_items as $item){ $select_textbox[$item->id] = $item->title; } $select_banner = []; $select_banner['remove'] = "Choose Option"; foreach($banner_items as $item){ $select_banner[$item->id] = $item->title; } $service_items = []; $service_items['remove'] = "Choose Option"; foreach($servicebox_items as $item){ $service_items[$item->id] = $item->type; } $button_items = []; $button_items['remove'] = "Choose Option"; foreach($Buttons as $item){ $button_items[$item->id] = $item->title; } $button_items = []; $button_items['remove'] = "Choose Option"; foreach($Buttons as $item){ $button_items[$item->id] = $item->title; } $contact_items = []; $contact_items['remove'] = "Choose Option"; foreach($ContactInfo as $item){ $contact_items[$item->id] = $item->title; } $callTo_items = []; $callTo_items['remove'] = "Choose Option"; foreach($CalltoAction as $item){ $callTo_items[$item->id] = $item->name; } $pages_content = Creator::where('id',$id)->first(); $modules = json_decode($pages_content->modules); $banner_1 = Banner::find($modules->banner1); $text_box1 = TextBox::find($modules->text_box1); $banner_2 = Banner::find($modules->banner2); $text_box2 = TextBox::find($modules->text_box2); $button_1 = Button::find($modules->button_1); $button_2 = Button::find($modules->button_2); $button_3 = Button::find($modules->button_3); $service_box1 = ServiceBox::find($modules->service_box1); $service_box2 = ServiceBox::find($modules->service_box2); $call_to_action = CalltoAction::find($modules->call_to_action); return view('admin.creator.edit', [ 'select_textbox' => $select_textbox, 'select_banner' => $select_banner , 'service_items' => $service_items, 'button_items' => $button_items, 'contact_items' => $contact_items, 'callTo_items'=> $callTo_items, 'pages_content' => $pages_content, 'banner_1' => $banner_1, 'text_box1' => $text_box1, 'banner_2' => $banner_2, 'text_box2' => $text_box2, 'button_1' => $button_1, 'button_2' => $button_2, 'button_3' => $button_3, 'service_box1' => $service_box1, 'service_box2' => $service_box2, 'call_to_action' => $call_to_action ]); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { $title = $request->input("title"); $slug = $request->input("slug"); $meta_title = $request->input("meta_title"); $meta_keywords = $request->input("meta_keywords"); $meta_description = $request->input("meta_description"); $canonical = $request->input("canonical"); $noindex = $request->input("noindex"); $meta_og_title = $request->input("meta_og_title"); $meta_og_description = $request->input("meta_og_description"); $pageType = $request->input("pageType"); $img = $request->file('meta_og_image'); if ($img !== null) { $filename = $img->getClientOriginalName(); Storage::disk('images_uploaded')->put($filename, file_get_contents($img->getRealPath())); } else { $filename = $request->input('meta_og_image_old'); } $meta_og_image = $filename; if ($request->input("banner1") != 'remove') { $banner1 = ($request->input("banner1") != 0) ? $request->input("banner1") : $request->input("old_banner1"); } else { $banner1 = ''; } if ($request->input("text_box1") != 'remove') { $new_text_box1 = ($request->input("text_box1") != 0) ? $request->input("text_box1") : $request->input("old_text_box1"); } else { $new_text_box1 = ''; } if ($request->input("banner2") != 'remove') { $banner2 = ($request->input("banner2") != 0) ? $request->input("banner2") : $request->input("old_banner2"); } else { $banner2 = ''; } if ($request->input("text_box2") != 'remove') { $new_text_box2 = ($request->input("text_box2") != 0) ? $request->input("text_box2") : $request->input("old_text_box2"); } else { $new_text_box2 = ''; } if ($request->input("service_box1") != 'remove') { $service_box1 = ($request->input("service_box1") != 0) ? $request->input("service_box1") : $request->input("old_service_box1"); } else { $service_box1 = ''; } if ($request->input("service_box2") != 'remove') { $service_box2 = ($request->input("service_box2") != 0) ? $request->input("service_box2") : $request->input("old_service_box2"); } else { $service_box2 = ''; } if ($request->input("button_1") != 'remove') { $new_button_1 = ($request->input("button_1") != 0) ? $request->input("button_1") : $request->input("old_button_1"); } else { $new_button_1 = ''; } if ($request->input("button_2") != 'remove') { $new_button_2 = ($request->input("button_2") != 0) ? $request->input("button_2") : $request->input("old_button_2"); } else { $new_button_2 = ''; } if ($request->input("button_3") != 'remove') { $new_button_3 = ($request->input("button_3") != 0) ? $request->input("button_3") : $request->input("old_button_3"); } else { $new_button_3 = ''; } if ($request->input("call_to_action") != 'remove') { $new_call_to_action = ($request->input("call_to_action") != 0) ? $request->input("call_to_action") : $request->input("old_call_to_action"); } else { $new_call_to_action = ''; } $modules_data = array( "banner1" => $banner1, "text_box1" => $new_text_box1, "banner2" => $banner2, "text_box2" => $new_text_box2, "service_box1" => $service_box1, "service_box2" => $service_box2, "button_1" => $new_button_1, "button_2" => $new_button_2, "button_3" => $new_button_3, "call_to_action" => $new_call_to_action ); Creator::find($id)->update([ 'title' => $request->input("title"), 'no_of_service_box_display' => $request->input("no_of_service_box_display"), 'no_of_service_box_display2' => $request->input("no_of_service_box_display2"), 'slug' => $request->input("slug"), 'meta_title' => $request->input("meta_title"), 'meta_keywords' => $request->input("meta_keywords"), 'meta_description' => $request->input("meta_description"), 'canonical' => $request->input("canonical"), 'noindex' => $request->input("noindex"), 'meta_og_title' => $request->input("meta_og_title"), 'meta_og_description' => $request->input("meta_og_description"), 'pageType' => $request->input("pageType"), 'meta_og_image' => $filename, 'modules' => json_encode($modules_data) ]); return redirect()->route('admin.creator.list')->with('message', 'Page updated successfully.'); } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy(Request $request, int $id) { $id = $request->id; $res = Creator::where('id', $id)->delete(); $request->session()->flash('message', 'Page deleted.'); return redirect()->route('admin.creator.list'); } }