|
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/parassaas.edukrypt.in/app/Http/Controllers/ |
Upload File : |
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use App\Models\User;
use App\Models\User_device_id;
use Illuminate\Support\Facades\Hash;
use App\Imports\UsersImport;
use Maatwebsite\Excel\Facades\Excel;
use App\Helpers\Frontend;
use File;
class UserController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$data['mainMenu'] = 'userManagement';
$data['subMenu'] = 'userList';
if (isset($_GET['query']) && strlen($_GET['query']) > 1) {
$search_text = $_GET['query'];
// dd($search_text);
$data['users'] = DB::table('users')
->where('name', 'LIKE', '%' . $search_text . '%')
->orwhere('user_unique_id', 'LIKE', '%' . $search_text . '%')
->orwhere('phone', 'LIKE', '%' . $search_text . '%')
->orwhere('email', 'LIKE', '%' . $search_text . '%')
->orderBy('id', 'desc')
->paginate(10);
return view('admin.user.user-list', $data);
} else {
$data['users'] = DB::table('users')->orderBy('id', 'desc')->paginate(10);
return view('admin.user.user-list', $data);
}
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
$data['mainMenu'] = 'userManagement';
$data['subMenu'] = 'userList';
return view('admin.user.add-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'];
$request->validate([
'username' => 'required',
'email' => 'required|unique:users|email',
'phone' => 'required|numeric',
'password' => 'required|min:6',
'cpassword' => 'required_with:password|same:password|min:6'
]);
$hashed = Hash::make($request->password);
$data = array(
'admin_id' => $admin_id,
'user_unique_id' => time() . uniqid(),
'name' => $request->username,
'email' => $request->email,
'phone' => $request->phone,
'password' => $hashed,
'ip_address' => $request->ip()
);
$res = User::create($data);
if ($res) {
// Send Mail ===============
$data['welcome'] = array(
'name' => $request->username,
'email' => $request->email,
'phone' => $request->phone,
'password' => $request->password,
'android' => env('ANDROID'),
'windows' => env('WINDOWS')
);
$subject = "Welcome To " . env('MAIL_USERNAME');
$html = view('emails.welcome', $data)->render();
Frontend::sendMailPostal($request->email, $subject, $html);
// Send Mail ===============
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'] = 'userManagement';
$data['subMenu'] = 'userList';
$data['users'] = User::where(['id' => $id])->first();
return view('admin.user.view-user', $data);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
$data['mainMenu'] = 'userManagement';
$data['subMenu'] = 'userList';
$data['users'] = User::where(['id' => $id])->first();
return view('admin.user.edit-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([
'name' => 'required',
'email' => 'required',
'phone' => 'required|numeric',
]);
$data = array(
'name' => $request->name,
'email' => $request->email,
'phone' => $request->phone,
'ip_address' => $request->ip()
);
$res = User::where(['id' => $id])->update($data);
if ($res) {
return back()->with('success', $request->name . ' 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)
{
User::where(['id' => $id])->delete();
return back()->with('success', ' deleted successfully');
}
// user device list
public function userDeviceList(Request $request, $id)
{
$data['mainMenu'] = 'userManagement';
$data['subMenu'] = 'userList';
if (isset($_GET['query']) && strlen($_GET['query']) > 1) {
$search_text = $_GET['query'];
// dd($search_text);
$data['users'] = DB::table('user_device_ids')->where('user_id', $id)->where('model_id', 'LIKE', '%' . $search_text . '%')->paginate(10);
} else {
$data['users'] = DB::table('user_device_ids')->where('user_id', $id)->paginate(10);
}
return view('admin.user.device-list', $data);
}
public function deviceDestroy($id)
{
User_device_id::where(['id' => $id])->delete();
return back()->with('success', ' deleted successfully');
}
public function deviceChangeStatus(Request $request)
{
$id = $request->id;
$bool = $request->ckb;
$flag = "0";
if ($bool == 'true') {
$flag = "1";
}
$data = array(
'status' => $flag
);
$status = User_device_id::where('id', $id)->update($data);
echo $status;
}
// for import user
public function importUser()
{
$data['mainMenu'] = 'userManagement';
$data['subMenu'] = 'userList';
return view('admin.user.import-user', $data);
}
public function import()
{
Excel::import(new UsersImport, request()->file('file'));
return back()->with('success', ' Upload successfully');
}
}