KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.4.41 (Ubuntu)
System : Linux vmi1525618.contaboserver.net 5.4.0-105-generic #119-Ubuntu SMP Mon Mar 7 18:49:24 UTC 2022 x86_64
User : www-data ( 33)
PHP Version : 8.2.12
Disable Function : NONE
Directory :  /var/www/navinclasses.studylms.in/app/Http/Controllers/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/navinclasses.studylms.in/app/Http/Controllers/SubadminController.php
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use App\Models\Admin_user;
use App\Models\Admin_role;
use App\Models\Log;
use Illuminate\Support\Facades\Session;

class SubadminController extends Controller
{
	/**
	 * Display a listing of the resource.
	 *
	 * @return \Illuminate\Http\Response
	 */
	public function index(Request $request)
	{
		$admin_id = $request->session()->get('loggedIn')['id'];
		$data['mainMenu'] = 'subadmin';
		$data['subMenu'] = 'subadminUserList';

		$data['admin_users'] = Admin_user::join('admin_roles', 'admin_roles.id', '=', 'admin_users.role_id')
			->where(['parent_id' => $admin_id])
			->get(['admin_users.*', 'admin_roles.role', 'admin_roles.id as role_id']);
		return view('admin.subadmin.subadmin-user-list', $data);
	}

	// Profile =============================
	public function profile(Request $request)
	{
		$admin_id = $request->session()->get('loggedIn')['id'];
		//dd($admin_id);
		$data['mainMenu'] = 'dashboard';
		$data['subMenu'] = 'dashboard';

		$data['myprofile'] = Admin_user::where(['id' => $admin_id])->first();
		// dd($data['myprofile']);
		return view('admin.subadmin.admin-profile', $data);
	}

	public function edit_profile(Request $request)
	{
		$admin_id = $request->session()->get('loggedIn')['id'];
		//dd($admin_id);
		$data['mainMenu'] = 'dashboard';
		$data['subMenu'] = 'dashboard';

		$data['myprofile'] = Admin_user::where(['id' => $admin_id])->first();
		// dd($data['myprofile']);
		return view('admin.subadmin.edit-admin-profile', $data);
	}

	public function save_edit_profile(Request $request)
	{
		$admin_id = $request->session()->get('loggedIn')['id'];
		$request->validate([
			'username' => 'required',
			'email' => 'required|email',
			'phone' => 'required|numeric',
			'institute' => 'required'
		]);

		// Profile picture
		$url = NULL;
		if ($request->hasFile('image')) {
			$imageName = time() . '.' . request()->image->getClientOriginalExtension();
			request()->image->move(public_path('admin/images/profile'), $imageName);
			$url = asset('public/admin/images/profile') . '/' . $imageName;
		}

		$adminArray = array(
			'username' => $request->username,
			'email' => $request->email,
			'phone' => $request->phone,
			'institute' => $request->institute
		);

		if (!empty($url)) {
			$adminArray = array(
				'username' => $request->username,
				'email' => $request->email,
				'phone' => $request->phone,
				'institute' => $request->institute,
				'profile_pics' => $url
			);
		}

		$updated = Admin_user::where("id", $admin_id)->update($adminArray);

		if ($updated) {
			// Log Data Entry
			$logData = array(
				'user_id' 		=> Session::get('loggedIn')['id'],
				'activity' 		=> 'AdminID: ' . $admin_id . ' Profile updated!',
				'created_at'	=> date('Y-m-d H:i:s')
			);
			Log::create($logData);
			return redirect('admin/profile')->with('success', 'Profile updated successfully!');
		} else {
			return back()->with('error', 'Something Went Wrong!');
		}
	}

	public function change_password(Request $request)
	{

		$admin_id = $request->session()->get('loggedIn')['id'];
		//dd($admin_id);
		$data['mainMenu'] = 'dashboard';
		$data['subMenu'] = 'dashboard';

		$data['myprofile'] = Admin_user::where(['id' => $admin_id])->first();
		return view('admin.subadmin.change-profile-password', $data);
	}

	public function save_change_password(Request $request)
	{

		$admin_id = $request->session()->get('loggedIn')['id'];
		$request->validate([
			'current_password'   => 'required',
			'new_password' => 'min:5|required_with:confirm_password|same:confirm_password',
			'confirm_password' => 'min:5'
		]);

		$adminUser = Admin_user::where(['id' => $admin_id])->first();

		$hashed = Hash::check($request->current_password, $adminUser->password);
		if ($hashed) {
			$adminArray = array(
				'password' => Hash::make($request->new_password)
			);
			$updated = Admin_user::where("id", $admin_id)->update($adminArray);
			if ($updated) {
				// Log Data Entry
				$logData = array(
					'user_id' 		=> Session::get('loggedIn')['id'],
					'activity' 		=> 'AdminID: ' . $admin_id . ' change password!',
					'created_at'	=> date('Y-m-d H:i:s')
				);
				Log::create($logData);
				return redirect('admin/profile')->with('success', 'Your password updated successfully!');
			}
			return back()->with('error', 'Something Went Wrong!');
		}
		return back()->with('error', 'Invalid current password!');
	}
	// Profile =============================

	/**
	 * Show the form for creating a new resource.
	 *
	 * @return \Illuminate\Http\Response
	 */
	public function create(Request $request)
	{
		$admin_id = $request->session()->get('loggedIn')['id'];
		$data['mainMenu'] = 'subadmin';
		$data['subMenu'] = 'subadminUserList';
		$data['roles'] = Admin_role::where(['admin_id' => $admin_id])->get();
		return view('admin.subadmin.add-admin-user', $data);
	}

	/**
	 * Store a newly created resource in storage.
	 *
	 * @param  \Illuminate\Http\Request  $request
	 * @return \Illuminate\Http\Response
	 */
	public function store(Request $request)
	{
		$admin_id = $request->session()->get('loggedIn')['id'];
		// return $request->input();
		$request->validate([
			'username' => 'required',
			'email' => 'required|unique:admin_users|email',
			'phone' => 'required|numeric',
			'institute' => 'required',
			'adminRole' => 'required',
			'password' => 'required|min:6',

		]);

		$getSalt = Admin_user::where(['id' => $admin_id])->first();

		$hashed = Hash::make($request->password);

		$data = array(
			'parent_id' => $admin_id,
			'username' => $request->username,
			'email' => $request->email,
			'phone' => $request->phone,
			'institute' => $request->institute,
			'role_id' => $request->adminRole,
			'password' => $hashed,
			'salt' => $getSalt->salt,
			'ip_address' => $request->ip()
		);

		$res = Admin_user::create($data);

		$admin_id = $res->id;

		if ($res) {

			// Log Data Entry
			$logData = array(
				'user_id' 		=> Session::get('loggedIn')['id'],
				'activity' 		=> 'AdminID: ' . $admin_id . ', Email: ' . $request->email . ' added!',
				'created_at'	=> date('Y-m-d H:i:s')
			);
			Log::create($logData);
			return back()->with('success', $request->username . ' Added successfully!');
		} else {
			return back()->with('error', 'Something Went Wrong!');
		}
	}

	/**
	 * Display the specified resource.
	 *
	 * @param  int  $id
	 * @return \Illuminate\Http\Response
	 */
	public function show($id)
	{
		$data['mainMenu'] = 'subadmin';
		$data['subMenu'] = 'subadminUserList';
		$data['roles'] = Admin_role::get();
		$data['adminUser'] =  Admin_user::where(['id' => $id])->first();

		return view('admin.subadmin.view-admin-user', $data);
	}

	/**
	 * Show the form for editing the specified resource.
	 *
	 * @param  int  $id
	 * @return \Illuminate\Http\Response
	 */
	public function edit($id)
	{
		$data['mainMenu'] = 'subadmin';
		$data['subMenu'] = 'subadminUserList';

		$data['roles'] = Admin_role::get();
		$data['adminUser'] =  Admin_user::where(['id' => $id])->first();

		// dd($data['adminUser']);

		return view('admin.subadmin.edit-admin-user', $data);
	}

	/**
	 * Update the specified resource in storage.
	 *
	 * @param  \Illuminate\Http\Request  $request
	 * @param  int  $id
	 * @return \Illuminate\Http\Response
	 */
	public function update(Request $request, $id)
	{
		// return $request->input();
		$request->validate([
			'username' => 'required',
			'email' => 'required',
			'phone' => 'required|numeric',
			'institute' => 'required',
			'adminRole' => 'required',
			'salt' => 'required',


		]);



		$data = array(
			'username' => $request->username,
			'email' => $request->email,
			'phone' => $request->phone,
			'institute' => $request->institute,
			'role_id' => $request->adminRole,
			'salt' => $request->salt,

			'ip_address' => $request->ip()
		);

		$res = Admin_user::where(['id' => $id])->update($data);

		if ($res) {
			// Log Data Entry
			$logData = array(
				'user_id' 		=> Session::get('loggedIn')['id'],
				'activity' 		=> 'AdminID: ' . $id . ', Email: ' . $request->email . ' updated!',
				'created_at'	=> date('Y-m-d H:i:s')
			);
			Log::create($logData);
			return back()->with('success', $request->username . ' Added successfully!');
		} else {
			return back()->with('error', 'Something Went Wrong!');
		}
	}

	/**
	 * Remove the specified resource from storage.
	 *
	 * @param  int  $id
	 * @return \Illuminate\Http\Response
	 */
	public function destroy($id)
	{
		Admin_user::where(['id' => $id])->delete();
		// Log Data Entry
		$logData = array(
			'user_id' 		=> Session::get('loggedIn')['id'],
			'activity' 		=> 'AdminID: ' . $id . ',  deleted!',
			'created_at'	=> date('Y-m-d H:i:s')
		);
		Log::create($logData);
		return back()->with('success', 'Delete Successfully!');
	}
}

Anon7 - 2021