*/ class SettingsController extends Controller { /** * Create a new controller instance. * constructor to check * 1. authentication * 2. user roles * 3. roles must be agent. * * @return void */ public function __construct() { // checking authentication $this->middleware('auth'); // checking roles $this->middleware('roles'); $this->language(); } /** * to get the settings page. * * @return response */ public function settings(Settings $settings, Timezones $time, Date_format $date) { /* get the setting where the id == 1 */ $settings = $settings->whereId('1')->first(); $time = $time->get(); //$date = $date->get(); return view('themes.default1.agent.kb.settings.settings', compact('date', 'settings', 'time')); } /** * Update the specified resource in storage. * * @param int $id * * @return Response */ public function postSettings($id, Settings $settings, SettingsRequests $request) { try { /* fetch the values of company request */ $settings = $settings->whereId('1')->first(); if (Input::file('logo')) { $name = Input::file('logo')->getClientOriginalName(); $destinationPath = 'lb-faveo/dist/image'; $fileName = rand(0000, 9999).'.'.$name; //echo $fileName; Input::file('logo')->move($destinationPath, $fileName); $settings->logo = $fileName; //$thDestinationPath = 'dist/th'; Image::make($destinationPath.'/'.$fileName, [ 'width' => 300, 'height' => 300, 'grayscale' => false, ])->save('lb-faveo/dist/image/'.$fileName); } if (Input::file('background')) { $name = Input::file('background')->getClientOriginalName(); $destinationPath = 'lb-faveo/dist/image'; $fileName = rand(0000, 9999).'.'.$name; echo $fileName; Input::file('background')->move($destinationPath, $fileName); $settings->background = $fileName; //$thDestinationPath = 'dist/th'; Image::make($destinationPath.'/'.$fileName, [ 'width' => 300, 'height' => 300, 'grayscale' => false, ])->save('lb-faveo/dist/image/'.$fileName); } /* Check whether function success or not */ if ($settings->fill($request->except('logo', 'background'))->save() == true) { /* redirect to Index page with Success Message */ return redirect()->back()->with('success', Lang::get('lang.settings_updated_successfully')); } else { /* redirect to Index page with Fails Message */ return redirect()->back()->with('fails', Lang::get('lang.settings_can_not_updated')); } } catch (Exception $e) { /* redirect to Index page with Fails Message */ return redirect()->back()->with('fails', Lang::get('lang.settings_can_not_updated')); } } /** * To Moderate the commenting. * * @param type Comment $comment * * @return Response */ public function comment(Comment $comment) { return view('themes.default1.agent.kb.settings.comment'); } /** * getdata. * * @return type */ public function getData() { return \Datatable::collection(Comment::All()) ->searchColumns('details', 'comment', 'created') ->orderColumns('details') ->addColumn('details', function ($model) { $name = "

$model->name


"; $email = "

$model->email


"; $website = "

$model->website


"; return $name.$email.$website; }) ->addColumn('comment', function ($model) { $created = TicketController::usertimezone(date($model->created_at)); return $model->comment."

$created

"; }) ->addColumn('status', function ($model) { $status = $model->status; if ($status == 1) { return '

'.\Lang::get('lang.published'); } else { return '

'.\Lang::get('lang.not_published'); } }) ->addColumn('Actions', function ($model) { return '

id.' class="btn btn-danger btn-xs">'.\Lang::get('lang.delete').'
id.' class="btn btn-warning btn-xs">'.\Lang::get('lang.publish').'
'; }) ->make(); } /** * Admin can publish the comment. * * @param type $id * @param type Comment $comment * * @return bool */ public function publish($id, Comment $comment) { $comment = $comment->whereId($id)->first(); $comment->status = 1; if ($comment->save()) { return redirect('comment')->with('success', $comment->name.'-'.Lang::get('lang.comment_published')); } else { return redirect('comment')->with('fails', Lang::get('lang.can_not_process')); } } /** * delete the comment. * * @param type $id * @param type Comment $comment * * @return type */ public function delete($id, Comment $comment) { $comment = $comment->whereId($id)->first(); if ($comment->delete()) { return redirect('comment')->with('success', $comment->name."'s!".Lang::get('lang.comment_deleted')); } else { return redirect('comment')->with('fails', Lang::get('lang.can_not_process')); } } /** * get profile page. * * @return type view */ public function getProfile() { $time = Timezone::all(); $user = Auth::user(); return view('themes.default1.agent.kb.settings.profile', compact('user', 'time')); } /** * Post profile page. * * @param type ProfileRequest $request * * @return type redirect */ public function postProfile(ProfileRequest $request) { $user = Auth::user(); $user->gender = $request->input('gender'); $user->save(); if (is_null($user->profile_pic)) { if ($request->input('gender') == 1) { $name = 'avatar5.png'; $destinationPath = 'lb-faveo/dist/img'; $user->profile_pic = $name; } elseif ($request->input('gender') == 0) { $name = 'avatar2.png'; $destinationPath = 'lb-faveo/dist/img'; $user->profile_pic = $name; } } if (Input::file('profile_pic')) { //$extension = Input::file('profile_pic')->getClientOriginalExtension(); $name = Input::file('profile_pic')->getClientOriginalName(); $destinationPath = 'lb-faveo/dist/img'; $fileName = rand(0000, 9999).'.'.$name; //echo $fileName; Input::file('profile_pic')->move($destinationPath, $fileName); $user->profile_pic = $fileName; } else { $user->fill($request->except('profile_pic', 'gender'))->save(); return redirect()->back()->with('success1', 'Profile Updated sucessfully'); } if ($user->fill($request->except('profile_pic'))->save()) { return redirect('profile')->with('success1', 'Profile Updated sucessfully'); } else { return redirect('profile')->with('fails1', 'Profile Not Updated sucessfully'); } } /** * post profile password. * * @param type $id * @param type ProfilePassword $request * * @return type redirect */ public function postProfilePassword($id, ProfilePassword $request) { $user = Auth::user(); //echo $user->password; if (Hash::check($request->input('old_password'), $user->getAuthPassword())) { $user->password = Hash::make($request->input('new_password')); $user->save(); return redirect('profile')->with('success2', 'Password Updated sucessfully'); } else { return redirect('profile')->with('fails2', 'Old password Wrong'); } } /** * het locale for language. * * @return type config set */ public static function language() { // $set = Settings::whereId(1)->first(); // $lang = $set->language; Config::set('app.locale', 'en'); Config::get('app'); } }