cleaning day

This commit is contained in:
ludo
2024-02-22 21:28:33 +01:00
parent 64a218afc2
commit fb6da523fa
111 changed files with 198 additions and 2456 deletions

View File

@@ -1,9 +0,0 @@
<?php
namespace App\Http\Controllers\Admin\Core\Auth;
use App\Http\Controllers\Controller as ParentController;
class Controller extends ParentController
{
}

View File

@@ -1,74 +0,0 @@
<?php
namespace App\Http\Controllers\Admin\Core\Auth;
use App\Datatables\Admin\Core\Auth\PermissionsDataTable;
use App\Repositories\Core\App\ApplicationModules;
use App\Repositories\Core\App\Applications;
use App\Repositories\Core\Auth\Permissions;
use App\Repositories\Core\Auth\Users;
use Illuminate\Http\Request;
class PermissionController extends Controller
{
public function __construct()
{
$this->middleware('ability:admin,permissions_crud');
}
public function index(PermissionsDataTable $dataTable)
{
$data = \App\Repositories\Config::init();
return $dataTable->render('admin.Core.Auth.Permission.index', $data);
}
public function create()
{
$data = \App\Repositories\Config::init();
$data['roles'] = Users::getRolesToEdit();
$data['applications'] = Applications::getOptions();
$data['application_modules'] = ApplicationModules::getOptions();
return view('Admin.Core.Auth.Permission.create', $data);
}
public function edit(Request $request, $id = false)
{
$id = (int) $id ? $id : $request->input('id');
$data = \App\Repositories\Config::init();
$data['permission'] = Permissions::get($id);
$data['roles'] = Users::getRolesToEdit();
$data['applications'] = Applications::getOptions();
$data['application_modules'] = ApplicationModules::getOptions();
return view('Admin.Core.Auth.Permission.edit', $data);
}
public function store(Request $request)
{
$data = $request->all();
unset($data['roles']);
unset($data['_token']);
/*
$this->validate($request, [
'name' => 'required|unique:permissions,name',
'display_name' => 'required',
'description' => 'required',
]);
$data['name'] = Str::slug($data['display_name']);
*/
Permissions::store($data);
return redirect()->route('Admin.Core.Auth.Permission.index')->with('growl', [__('permissions.successadd'), 'success']);
}
public function destroy($id)
{
Permissions::delete($id);
return response()->json(['error' => 0]);
}
}

View File

@@ -1,99 +0,0 @@
<?php
namespace App\Http\Controllers\Admin\Core\Auth;
use App\Datatables\Admin\Core\Auth\RolesDataTable;
use App\Models\Core\App\ApplicationModule;
use App\Models\Core\Auth\Permission;
use App\Models\Core\Auth\Role;
use App\Repositories\Config;
use App\Repositories\Core\Auth\Roles;
use Illuminate\Http\Request;
use Yajra\DataTables\DataTables;
class RoleController extends Controller
{
public function index(RolesDataTable $dataTable)
{
$data = Config::init();
$data['modules'] = ApplicationModule::with('permissions')->get()->toArray();
return $dataTable->render('admin.Core.Auth.Role.index', $data);
}
public function getTable(Request $request)
{
$model = Role::orderBy('name')->get();
return Datatables::of($model)->make(true);
}
public function create()
{
$data = Config::init();
return view('Admin.Core.Auth.Role.create', $data);
}
public function edit(Request $request, $id = false)
{
$id = $id ? $id : $request->input('id');
$data = Config::init();
$data['role'] = Roles::getWithPermissions($id);
$data['modules'] = ApplicationModule::with('permissions')->get()->toArray();
return view('Admin.Core.Auth.Role.edit', $data);
}
public function store(Request $request)
{
Roles::store($request->all());
return response()->json(['error' => 0]);
}
public function destroy(Request $request, $id = false)
{
$id = $id ? $id : $request->input('id');
Roles::delete($id);
return response()->json(['error' => 0]);
}
public function manage(Request $request, $id = false)
{
$data = [];
$id = (int) $id ? $id : $request->input('id');
$data['role'] = Role::with('permissions')->find($id)->toArray();
$permissions = Permission::orderBy('app')->orderBy('module')->orderBy('action')->get();
foreach ($permissions as $permission) {
$data[$permission->app][$permission->module][] = [
'action' => $permission->action,
'description' => $permission->description,
'id' => $permission->id,
];
}
$data['permissions'] = $data;
return view('Admin.Core.Auth.Role.manage', $data);
}
public function manage_store(Request $request)
{
$data = $request->all();
$role = Role::find($data['role_id']);
foreach ($data['permissions'] as $key) {
$permission = Permission::find($key);
$role->attachPermission($permission);
}
return response()->json(['error' => 0]);
}
public function toggleActive(Request $request)
{
$data = Roles::toggleActive($request->input('id'), $request->input('active') === 'true' ? 1 : 0);
return response()->json(['error' => 0]);
}
}

View File

@@ -1,76 +0,0 @@
<?php
namespace App\Http\Controllers\Admin\Core\Auth;
use App\Http\Controllers\Controller;
use App\Models\Core\Auth\Team;
use Illuminate\Http\Request;
use Illuminate\Support\Str;
class TeamController extends Controller
{
public function __construct()
{
$this->middleware('ability:admin,teams_crud');
}
public function index()
{
return view('Admin.Core.Auth.Team.list', ['teams' => Team::all()]);
}
public function create()
{
return view('Admin.Core.Auth.Team.create');
}
public function store(Request $request)
{
$input = $request->all();
$input['name'] = Str::slug($input['display_name']);
$request->replace($input);
$this->validate(
$request,
[
'name' => 'required|unique:teams,name',
'display_name' => 'required',
'description' => 'required',
]
);
$team = Team::create($input);
$team->teams()->sync(array_keys($request->input('team', [])));
return redirect()->route('admin.Teams.edit', $team)
->with('growl', [__('teams.successadd'), 'success']);
}
public function edit($id)
{
$team = Team::find($id);
return view('Admin.Core.Auth.Team.edit', compact('team'));
}
public function update(Request $request, $id)
{
$this->validate(
$request,
[
'display_name' => 'required',
'description' => 'required',
]
);
$team = Team::find($id);
return redirect()->route('admin.Teams.edit', $team)
->with('growl', [__('teams.successmod'), 'success']);
}
public function destroy($id)
{
Team::destroy($id);
}
}

View File

@@ -1,181 +0,0 @@
<?php
namespace App\Http\Controllers\Admin\Core\Auth;
use App\Datatables\Admin\Core\Auth\UsersDataTable;
use App\Models\Core\Auth\User;
use App\Repositories\Config;
use App\Repositories\Core\Auth\Users;
use Carbon\Carbon;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Str;
use Intervention\Image\Facades\Image;
class UserController extends Controller
{
public function index(UsersDataTable $dataTable)
{
$data = Config::init();
return $dataTable->render('admin.Core.Auth.User.index', $data);
}
public function modalCreate()
{
$data = [
'roles' => Users::getRolesToEdit(),
];
return view('Admin.Core.Auth.User.modal', $data);
}
public function modalEdit($id = false)
{
$user = $id ? Users::get($id) : false;
$data['roles'] = Users::getRolesToEdit();
$data['user'] = $user ? $user->toArray() : [];
$data['user']['roles'] = $user->roles->pluck('id')->toArray();
return view('Admin.Core.Auth.User.modal', $data);
}
public function storeAjax(Request $request)
{
$data = $request->all();
$ret = Users::store($data);
return response()->json(['code' => '200']);
}
public function create()
{
$data = \App\Repositories\Config::init();
$data['roles'] = Users::getRolesToEdit();
return view('Admin.Core.Auth.User.create', $data);
}
public function store(Request $request)
{
$input = $request->all();
if ($input['password'] ?? false) {
unset($input['password']);
}
$user = Users::store($input);
return redirect()->route('admin.Core.Auth.User.index')
->with('growl', [__('boilerplate::users.successadd'), 'success']);
}
public function edit($id)
{
$data = Config::init();
$data['roles'] = Users::getRolesToEdit();
$data['user'] = Users::get($id);
return view('Admin.Core.Auth.User.edit', $data);
}
public function destroy($id)
{
Users::delete($id);
}
public function firstLogin($token, Request $request)
{
$user = User::where(['remember_token' => $token])->firstOrFail();
return view('boilerplate::auth.firstlogin', compact('user', 'token'));
}
public function firstLoginPost(Request $request)
{
$this->validate($request, [
'token' => 'required',
'password' => 'required|min:8',
'password_confirmation' => 'required|same:password',
]);
$user = User::where(['remember_token' => $request->input('token')])->first();
$user->password = bcrypt($request->input('password'));
$user->remember_token = Str::random(32);
$user->last_login = Carbon::now()->toDateTimeString();
$user->save();
Auth::attempt(['email' => $user->email, 'password' => $request->input('password'), 'active' => 1]);
return redirect()->route('boilerplate.dashboard')
->with('growl', [__('boilerplate::users.newpassword'), 'success']);
}
public function profile()
{
$user = Users::get();
$data['user'] = $user ? $user->toArray() : [];
$data['user']['name'] = $user->name;
$data['user']['avatar'] = Users::getAvatar($user->id);
return view('Admin.Core.Auth.User.modalProfile', $data);
}
public function profilePost(Request $request)
{
$this->validate($request, [
'avatar' => 'mimes:jpeg,png|max:10000',
'last_name' => 'required',
'first_name' => 'required',
'password_confirmation' => 'same:password',
]);
$avatar = $request->file('avatar');
$user = Auth::user();
$file = $avatar->isValid();
if ($avatar && $file) {
$destinationPath = dirname($user->avatar_path);
if (! is_dir($destinationPath)) {
mkdir($destinationPath, 0766, true);
}
$extension = $avatar->getClientOriginalExtension();
$fileName = md5($user->id.$user->email).'_tmp.'.$extension;
$avatar->move($destinationPath, $fileName);
Image::make($destinationPath.DIRECTORY_SEPARATOR.$fileName)
->fit(100, 100)
->save($user->avatar_path);
unlink($destinationPath.DIRECTORY_SEPARATOR.$fileName);
}
$input = $request->all();
if ($input['password'] !== null) {
$input['password'] = bcrypt($input['password']);
$input['remember_token'] = Str::random(32);
} else {
unset($input['password']);
}
$user->update($input);
return redirect()->route('boilerplate.user.profile')
->with('growl', [__('boilerplate::users.profile.successupdate'), 'success']);
}
public function avatarDelete()
{
$user = Auth::user();
if (is_file($user->avatar_path)) {
unlink($user->avatar_path);
}
}
public function toggleActive(Request $request)
{
$data = Users::toggleActive($request->input('id'), $request->input('active') === 'true' ? 1 : 0);
return response()->json(['error' => 0]);
}
}