forked from projects/thebadspace
ro
3c0762344e
now that editing member work, that process needed to be fleshed out by adding an admin method to add new members as well. now new members can be added by an admin also changed the name of a blade file that wasn't following the template naming convention
106 lines
3 KiB
PHP
106 lines
3 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use App\Repositories\MemberRepository;
|
|
|
|
class MemberController extends Controller
|
|
{
|
|
protected $member;
|
|
|
|
public function __construct(
|
|
MemberRepository $memberRepo
|
|
) {
|
|
$this->member = $memberRepo;
|
|
}
|
|
|
|
public function index(Request $request)
|
|
{
|
|
$member = Auth::user();
|
|
return view('back.member', [
|
|
'handle' => $member->handle,
|
|
'members' => $this->member->getAll(),
|
|
'mode' => 'index',
|
|
'title' => "Manage Members"]);
|
|
}
|
|
|
|
public function profile(Request $request)
|
|
{
|
|
$member = Auth::user();
|
|
$avi = '';
|
|
if ($member->avatar == 'default-member-avatar') {
|
|
$avi = '/assets/images/global/default-avi.png';
|
|
} else {
|
|
$avi = $member->avatar;
|
|
}
|
|
return view('back.profile', [
|
|
'title' => "Hey, it's you!",
|
|
'handle' => $member->handle,
|
|
'email' => $member->email,
|
|
'avatar' => $avi,
|
|
'pronouns' => $member->pronoun,
|
|
'uuid' => $member->uuid,
|
|
'role' => $member->role
|
|
]);
|
|
}
|
|
|
|
public function editMember(Request $request, $uuid = 0)
|
|
{
|
|
$member = $this->member->get($uuid);
|
|
$avi = '';
|
|
if ($member->avatar == 'default-member-avatar') {
|
|
$avi = '/assets/images/global/default-avi.png';
|
|
} else {
|
|
$avi = $member->avatar;
|
|
}
|
|
return view('back.member', [
|
|
'member' => $member,
|
|
'avatar' => $avi,
|
|
'mode' => 'member-edit',
|
|
'title' => "Edit Member Info"]);
|
|
}
|
|
|
|
public function createMember(Request $Request)
|
|
{
|
|
return view('back.member', [
|
|
'mode' => 'member-create',
|
|
'title' => "Make a new friend"]);
|
|
}
|
|
|
|
//actions
|
|
public function profileEdit(Request $request)
|
|
{
|
|
$token = csrf_token();
|
|
$response = $this->member->editProfile($request);
|
|
if ($response['status'] == true) {
|
|
return back()->with('message', $response['message']);
|
|
} else {
|
|
return back()->withErrors([$response['message']]);
|
|
}
|
|
}
|
|
|
|
public function memberEdit(Request $request)
|
|
{
|
|
$token = csrf_token();
|
|
$response = $this->member->edit($request);
|
|
if ($response['status'] == true) {
|
|
return back()->with('message', $response['message']);
|
|
} else {
|
|
return back()->withErrors([$response['message']]);
|
|
}
|
|
}
|
|
|
|
public function memberCreate(Request $request)
|
|
{
|
|
$token = csrf_token();
|
|
$response = $this->member->add($request);
|
|
if ($response['status'] == true) {
|
|
return redirect('/den/member')->with('message', $response['message']);
|
|
} else {
|
|
return back()->withErrors([$response['message']]);
|
|
}
|
|
}
|
|
}
|