Back

Create Conroller

Copy Below Code View As A Text File Show Text Only Show API Edit Code
                            

<?php namespace App\Http\Controllers\Back; use App\Models\Back\AdminAlert; use App\User; use App\Models\Back\{modalName}; use Illuminate\Http\Request; use App\Http\Controllers\Controller; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Validator; use Illuminate\Support\Facades\Session; use Illuminate\Support\Facades\View; use Illuminate\Support\Facades\Http; use App\Helpers\RestApiHelper; class {controllerName} extends Controller { public $settingArr = array( 'mainTitle' => '$controllerSingleTitle', 'mainPageTitle' => '$controllerTitle', 'contr_name' => '$webRoute', 'file' => '', 'view_add' => 'add_ajax', 'view_edit' => 'edit_ajax', 'view_main' => 'index_view', 'dbName' => '', 'dbId' => 'id', 'folder' => 'common', 'baseImg' => '/', 'dbStatus' => 'id', 'db_order_pageTitle' => 'id', 'db_order_key' => 'id', 'add_func' => true, 'edit_func' => true, 'delete_func' => true, 'order_func' => false, 'duplicate_func' => true, 'listing_func' => true, 'search_func' => true, 'detail_func' => true, 'invoice_func' => true, 'conver_order_func' => false, 'action_func' => true, 't_img_w' => '370', 't_img_h' => '250', ); public $arrFAdd = array( //index view page 'error' => ['Error', 'code', '' ], 'file' => ['File', '', '' ], 'priority' => ['Priority', 'dd_priority', ''], ); public $arrFEdit = array( //index view page 'error' => ['Error', 'code', '' ], 'file' => ['File', '', ''], 'priority' => ['Priority', 'dd_priority', ''], ); public $arrFIndex = array( //index view page 'id' => ['ID', '', ''], 'error' => ['Error', 'code', ''], 'file' => ['File', 'code', ''], 'priority' => ['Priority', 'dd_priority', ''], 'dated' => ['Date', 'datetime', ''], ); public $arrShow = array( //Show 'error' => ['Error', 'code', ''], 'file' => ['File', 'code', ''], 'priority' => ['Priority', 'dd_priority', ''], ); public $arrSearch = array( //index view page 'error' => ['Error', 'code', '' ], 'file' => ['File', '', ''], 'priority' => ['Priority', 'dd_priority', ''], ); public $arrOrder = array( 'pageTitle' => array('Title', 'pageTitle', '') ); public function __construct() { } public function index(Request $request) { $pageTitle = $this->settingArr['mainPageTitle']; $msg = ''; $searchDataArrAll = $_GET; $queryObj = $modalName::where($this->settingArr['dbId'], '<>', '0'); $this->QuickActions(); $searchDataArr = []; $searchFilter = false; if (isset($_GET['sr']) && $_GET['sr'] == 'y') { $searchFilter = true; $searchDataArr = filter_search_param($_GET, $this->arrSearch); if (sizeof($searchDataArr) > 0) { foreach ($searchDataArr as $key => $value) { if(!in_array($key,['export'])) { if ($this->settingArr['dbId'] == $key) { $queryObj->where($key, $value); } else { $queryObj->where($key, 'like', '%' . $value . '%'); } } } } } // $queryObj->orderBy($this->settingArr['dbId'], 'DESC'); $queryObj->orderBy('id', 'DESC'); if($request->export!=''){ $objExport = $queryObj->get(); $this->exportMe($request->export, $objExport, $request); } $result = $queryObj->paginate(20); $result->appends($searchDataArrAll); $settingArr = $this->settingArr; $arrSearch = $this->arrSearch; $dataArr = $this->arrFIndex; $idf = $this->settingArr['dbId']; $stsArr = []; return view('back.auto.'.$this->settingArr['folder'].'.index', compact('pageTitle', 'msg', 'result', 'settingArr', 'arrSearch', 'dataArr', 'idf', 'searchDataArr', 'stsArr', 'searchFilter')); } public function set_order() { $pageTitle = $this->settingArr['mainPageTitle']; $msg = ''; $result = $modalName::orderBy($this->settingArr['db_order_key'], 'asc')->get(); $settingArr = $this->settingArr; $arrSearch = $this->arrSearch; $dataArr = $this->arrOrder; $idf = $this->settingArr['dbId']; return view('back.auto.'.$this->settingArr['folder'].'.order', compact('pageTitle', 'msg', 'result', 'settingArr', 'arrSearch', 'dataArr', 'idf')); } public function update_order(Request $request) { if ($this->settingArr['order_func'] == false) { echo 'ERROR'; exit; } //echo '<pre>';print_r($_POST);echo '</pre>';exit; $action = $request->action; $updateRecordsArray = $request->recordsArray; if ($action == "updateRecordsListings") { $listingCounter = 1; foreach ($updateRecordsArray as $recordIDValue) { $oderf = $this->settingArr['db_order_key']; $dbObj = $modalName::find($recordIDValue); $dbObj->$oderf = $listingCounter; $dbObj->save(); $listingCounter = $listingCounter + 1; } } } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create(Request $request) { $this->setModule($request); $pageTitle = 'Create'; $settingArr = $this->settingArr; $dataArr = $this->arrFAdd; $settingArr = $this->settingArr; return view('back.auto.'.$this->settingArr['folder'].'.create', compact('pageTitle', 'settingArr', 'dataArr')); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $this->setModule($request); unset($this->arrFAdd['file']); $validationArr = Mod_convert_validation_arr($this->arrFAdd); $validatord = Validator::make( $request->all(), $validationArr[0], $validationArr[1] ); if ($validatord->fails()) { if ($request->ajax()) { echo json_encode($validatord->errors()); exit; } else { return back() ->withErrors($validatord) ->withInput(); } } $dbObj = new $modalName; foreach ($this->arrFAdd as $key => $value) { $dbObj->$key = Mod_convert_db_value($request, $key, $value); } $dbObj->save(); echo json_encode(['success' => 'done']); exit; } /** * Display the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function show(Request $request,$id) { $pageTitle = $this->settingArr['mainTitle'] . ' Detail '; $msg = ''; $row = $modalName::find($id); $arrFields = $this->arrShow; $settingArr = $this->settingArr; return view('back.auto.'.$this->settingArr['folder'].'.show', compact('pageTitle', 'msg', 'row', 'settingArr', 'arrFields')); } /** * Show the form for editing the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function edit(Request $request,$id) { $this->setModule($request); $pageTitle ='Edit '.$this->settingArr['mainTitle']; $row = $modalName::find($id); $settingArr = $this->settingArr; $dataArr = $this->arrFEdit; $idf = $this->settingArr['dbId']; return view('back.auto.'.$this->settingArr['folder'].'.edit', compact('pageTitle', 'settingArr', 'dataArr', 'row', 'idf')); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { $this->setModule($request); $validationArr = Mod_convert_validation_arr($this->arrFEdit, $id); $validatord = Validator::make( $request->all(), $validationArr[0], $validationArr[1] ); if ($validatord->fails()) { echo json_encode($validatord->errors()); exit; } $dbObj = $modalName::find($id); foreach ($this->arrFEdit as $key => $value) { $dbObj->$key = Mod_convert_db_value($request, $key, $value); } $dbObj->save(); echo json_encode(array('success' => 'done')); exit; } public function update_field(Request $request) { $settingArr = $this->settingArr; if (isset($_POST['typ']) && $_POST['typ'] == 'revert') { $postData = $request; $html = view('back.auto.' . $this->settingArr['folder'] . '.popup', compact('postData'))->render(); $arr = ['success' => 'done', 'html' => $html, 'errormsg' => 'err', 'title' => 'Edit Title']; echo json_encode($arr); exit; } else if (isset($_POST['typ']) && $_POST['typ'] == 'update_field') { $postData = $request; $key = $request->field; $row = $modalName::findOrFail($request->idd); $row->$key = $request->$key; $row->save(); $this->update_field_other_data($key, $request->$key,$row); $indexFields = $this->arrFIndex; $html = ''; if (isset($indexFields[$key])) { $html = ModTextBuild($row->$key, $indexFields[$key][1], '', $row); } $arr = ['success' => 'done', 'html' => '','idd'=> $request->idd, 'errormsg' => 'err', 'update_text' => $html, 'field' => $key]; echo json_encode($arr); exit; } else if (isset($_POST['typ']) && $_POST['typ'] == 'get_field') { $postData = $request; $key = $request->field; $row = $modalName::findOrFail($request->idd); $fieldArr = $this->arrFEdit[$key]; $fieldHtml = ModFieldBuild($fieldArr, $key, $row->$key, 'edit'); $titleF = ModFieldLabel($fieldArr[0] ?? ''); $html = view('back.auto.' . $this->settingArr['folder'] . '.popup', compact('postData', 'fieldHtml', 'settingArr', 'key', 'row'))->render(); $arr = ['success' => 'done', 'html' => $html, 'errormsg' => 'err', 'title' => 'Edit '. $titleF]; echo json_encode($arr); exit; } else { echo 'ERROR'; exit; } } public function edit_ajax(Request $request, $id) { $pageTitle = $this->settingArr['mainTitle'] . ' Detail '; $msg = ''; $row = $modalName::find($id); $arrFields = $this->arrFEdit; $settingArr = $this->settingArr; return view('back.auto.'.$this->settingArr['folder'].'.detail', compact('pageTitle', 'msg', 'row', 'settingArr', 'arrFields')); } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { if ($this->settingArr['delete_func'] == false) { echo 'ERROR'; exit; } $obj = $modalName::findOrFail($id); $modalName::where('id',$id)->delete(); return json_encode(array("status" => true)); } public function pop(Request $request) { $settingArr = $this->settingArr; if(isset($_POST['typ']) && $_POST['typ']=='block'){ $idd = (int)$_POST['idd']; $objObject = Block::where('project_id',$idd)->get(); $selected= '<select id="project_block_id" class="form-control" name="project_block_id">'; $selected .= '<option value="">-Select-</option>'; foreach ($objObject as $key => $value) { $selected .= '<option value="'. $value->id. '">' . $value->title . '</option>'; } $selected.='</select>'; echo $selected;exit; }else if(isset($_POST['typ']) && $_POST['typ'] == 'revert'){ $postData = $request; $html= view('back.auto.' . $this->settingArr['folder'] . '.popup', compact('postData'))->render(); $arr = ['success' => 'done','html'=> $html,'errormsg'=>'err','title'=>'Edit Title']; echo json_encode($arr);exit; } else if (isset($_POST['typ']) && $_POST['typ'] == 'update_field') { $postData = $request; $key = $request->field; $row = $modalName::findOrFail($request->idd); $row->$key = $request->$key; $row->save(); $indexFields = $this->arrFIndex; $html = ''; if (isset($indexFields[$key])) { $html = ModTextBuild($row->$key, $indexFields[$key][1], '', $row); } $arr = ['success' => 'done', 'html' => '', 'errormsg' => 'err', 'update_text'=> $html, 'field'=>$key]; echo json_encode($arr); exit; } else if (isset($_POST['typ']) && $_POST['typ'] == 'get_field') { $postData = $request; $key = $request->field; $row = $modalName::findOrFail($request->idd); $fieldArr = $this->arrFEdit[$key]; $fieldHtml = ModFieldBuild($fieldArr, $key, $row->$key, 'edit'); $html = view('back.auto.' . $this->settingArr['folder'] . '.popup', compact('postData', 'fieldHtml', 'settingArr','key','row'))->render(); $arr = ['success' => 'done', 'html' => $html, 'errormsg' => 'err', 'title' => 'Edit Title']; echo json_encode($arr); exit; } else { echo 'ERROR'; exit; } } private function update_field_other_data($key,$data,$row){ if($key=='sts'){ $this->update_field_sts_data($key,$data,$row); } } private function update_field_sts_data($key, $data,$row) { //insertHistory($data) } private function QuickActions(){ if (isset($_GET['duplicate']) && $_GET['duplicate'] != '') { $idd = (int) $_GET['duplicate']; $oldObj = $modalName::find($idd); $duplicateObj = $oldObj->replicate(); $duplicateObj->save(); return redirect(adminBase().'/'.$this->settingArr['contr_name'] . '/' . $duplicateObj->id . '/edit'); } if (isset($_GET['up']) && $_GET['up'] != '') { $idd = (int) $_GET['up']; $Objs = $modalName::get(); foreach ($Objs as $order) { $order->orderr = $order->orderr+1; $order->save(); } $obj = $modalName::find($idd); $obj->orderr = 1; $obj->save(); return redirect()->back(); } if (isset($_GET['down']) && $_GET['down'] != '') { $idd = (int) $_GET['down']; $obj = $modalName::find($idd); $obj->orderr = $modalName::max('orderr')+1; $obj->save(); return redirect()->back(); } if (isset($_GET['u_featured']) && $_GET['u_featured'] != '') { $idd = (int) $_GET['u_featured']; $obj = $modalName::find($idd); $obj->featured = ($obj->featured=='1') ? '0' : '1'; $obj->save(); echo mod_response(true); //return redirect()->back(); } if (isset($_GET['upd_id']) && $_GET['upd_id'] != '') { $idd = (int) $_GET['upd_id']; $field = $_GET['upd_field']; $obj = $modalName::find($idd); $obj->$field = ($obj->$field == '1') ? '0' : '1'; $obj->save(); //return redirect()->back(); $indexFields = $this->arrFIndex; $html=''; mod_response(true,'',['html'=>$html,'cval'=> $obj->$field]); } if (isset($_GET['duplicate']) && $_GET['duplicate'] != '') { $idd = (int) $_GET['duplicate']; $oldObj = $modalName::find($idd); $duplicateObj = $oldObj->replicate(); $duplicateObj->save(); return redirect(adminBase().'/' . $this->settingArr['contr_name'] . '/' . $duplicateObj->id . '/edit'); } } function setModule($request){ if(dev_ips()){ $this->settingArr['add_func']=true; } return true; } }