middleware('auth'); } public function index() { return view('theme::cms.companies.index'); } public function table(Request $request) { $companies = Company::query() ->select( 'companies.id', 'companies.name_english', 'companies.name_chinese', ) ->when($request->company_name, function ($query) use ($request) { $query->where(function($query2) use ($request){ $query2->orWhere('companies.name_english', 'like', '%' . $request->company_name . '%'); $query2->orWhere('companies.name_chinese', 'like', '%' . $request->company_name . '%'); }); }); return Datatables::of($companies) ->escapeColumns(['id']) ->addColumn('bookkeeping_subscription', function ($company) { // Temporary return ' Active ' . __("Expiration") . ': 2024/05/16 '; }) ->addColumn('bookkeeping_requests_count', function ($company) { // Temporary return '0'; }) ->addColumn('com_sec_subscription', function ($company) { // Temporary return ' Expired ' . __("Expiration") . ': 2023/04/16 '; }) ->addColumn('com_sec_requests_count', function ($company) { // Temporary return '0'; }) ->addColumn('actions', function ($company) { $viewAction = '' . __("View") . ''; $editAction = '' . __("Edit") . ''; $actions = $viewAction . '|' . $editAction; return $actions; }) ->make(true); } public function show(Company $company) { $roles = Role::whereIn('id', [ Role::OWNER_ROLE, Role::ADMINISTRATOR_ROLE, Role::BOOKKEEPER_ROLE, Role::COMPANY_SECRETARY_ROLE, ])->get(); $company_subscription = CompanySubscription::with('subscription')->where('company_id', $company->id)->get(); return view('theme::cms.companies.show')->with([ 'company' => $company, 'roles' => $roles, 'company_subscription' => $company_subscription, ]); } public function usersTable(Company $company) { $users = User::query() ->select( 'users.id', 'users.first_name', 'users.last_name', 'users.phone', 'users.email', 'roles.display_name', 'users.status', ) ->leftJoin('roles', 'users.role_id', '=', 'roles.id') ->where('users.company_id', $company->id); return Datatables::of($users) ->escapeColumns(['id']) ->addColumn('status', function ($user) { $status = $user->status; if ($status == 'active') { $status = '' . ucwords($status) . ''; } else if ($status == 'inactive') { $status = '' . ucwords($status) . ''; } return $status; }) ->addColumn('actions', function ($user) { $suspendAction = '' . __("Suspend user") . ''; $activateAction = '' . __("Activate user") . ''; $removeAction = '' . __("Remove user") . ''; $viewUserLogAction = 'id) . '" href="#">' . __("View user log") . ''; $editUserAction = '' . __("Edit user") . ''; $actions = '