|
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\Revision_material;
use App\Models\Product;
use App\Models\Revision_material_file;
use App\Models\User;
use App\Models\Material;
class RevisionMaterialController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function indexRevision(Request $request, $prod_id)
{
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$admin_id = $request->session()->get('loggedIn')['id'];
if (isset($_GET['query']) && strlen($_GET['query']) > 1) {
$search_text = $_GET['query'];
$data['revisions'] = DB::table('revision_materials')
->where('type', '=', 'revision')
->where('product_id', '=', $prod_id)
->orwhere('chapters', 'LIKE', '%' . $search_text . '%')
->paginate(10);
} else {
$data['revisions'] = DB::table('revision_materials')->where('product_id', '=', $prod_id)->where('type', '=', 'revision')->paginate(10);
}
return view('admin.revisionmaterial.revision-list', $data);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function createRevisionChapter(Request $request, $prod_id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$data['products'] = Product::get();
return view('admin.revisionmaterial.add-revision-chapter', $data);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function storeRevision(Request $request)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$request->validate([
'chapters' => 'required'
]);
$sort_order = 1;
$_sortOrder = Revision_material::where('type', '=', 'revision')->get()->last();
if (!empty($_sortOrder)) {
$sort_order = $_sortOrder->sort + 1;
}
$data = array(
'product_id' => $request->product_id,
'type' => $request->type,
'chapters' => $request->chapters,
'admin_id' => $admin_id,
'sort' => $sort_order,
'created_at' => date('Y-m-d H:i:s')
);
$res = Revision_material::create($data);
if ($res) {
return back()->with('success', $request->chapters . 'Has Been Added!.');
} else {
return back()->with('error', 'Something Went Wrong!');
}
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function showRevisionChapter($id, $prod_id)
{
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$data['revision_material'] = Revision_material::where(['id' => $id])->first();
return view('admin.revisionmaterial.view-revision-chapter', $data);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function editRevisionChapter($id, $prod_id)
{
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$data['revision'] = Revision_material::where(['id' => $id])->first();
$data['products'] = Product::get();
return view('admin.revisionmaterial.edit-revision-chapter', $data);
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function updateRevisionChapter(Request $request, $id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$request->validate([
'chapters' => 'required',
'sort' => 'required',
]);
$data = array(
'chapters' => $request->chapters,
'admin_id' => $admin_id,
'sort' => $request->sort
);
$res = Revision_material::where(['id' => $id])->update($data);
if ($res) {
return back()->with('success', $request->chapters . ' Has Been Updated!.');
} else {
return back()->with('error', 'Something Went Wrong!');
}
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroyRevision($id)
{
Revision_material_file::where(['revision_material_id' => $id])->delete();
Revision_material::where(['id' => $id])->delete();
return back()->with('success', 'Revision deleted successfully');
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function revisionFileList(Request $request, $id, $prod_id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
if (isset($_GET['query']) && strlen($_GET['query']) > 1) {
$search_text = $_GET['query'];
$data['revisions'] = DB::table('revision_material_files')
->where('revision_material_id', $id)
->paginate(10);
} else {
$data['revisions'] = DB::table('revision_material_files')->where('revision_material_id', $id)->paginate(10);
}
$data['chapter'] = Revision_material::where('id', $id)->first();
return view('admin.revisionmaterialfile.revision-file-list', $data);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function createRevisionFile(Request $request, $id, $prod_id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$data['chapter'] = Revision_material::where('id', $id)->first();
return view('admin.revisionmaterialfile.add-revision-file', $data);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function saveRevisionFile(Request $request, $id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$request->validate([
'file_name' => 'required',
'file_url' => 'required'
]);
$data = array(
'revision_material_id' => $id,
'file_name' => $request->file_name,
'files_url' => $request->file_url,
'admin_id' => $admin_id,
'type' => 'video',
'created_at' => date('Y-m-d H:i:s')
);
$res = Revision_material_file::create($data);
if ($res) {
return back()
->with('success', $request->file_name . ' Has Been Added!.');
} else {
return back()
->with('error', 'Something Went Wrong!');
}
}
// Material ==============================================================================================
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function indexMaterial(Request $request, $prod_id)
{
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$admin_id = $request->session()->get('loggedIn')['id'];
if (isset($_GET['query']) && strlen($_GET['query']) > 1) {
$search_text = $_GET['query'];
$data['materials'] = DB::table('revision_materials')
->where('type', '=', 'material')
->where('product_id', '=', $prod_id)
->orwhere('chapters', 'LIKE', '%' . $search_text . '%')
->paginate(10);
} else {
$data['materials'] = DB::table('revision_materials')->where('product_id', '=', $prod_id)->where('type', '=', 'material')->paginate(10);
}
return view('admin.revisionmaterial.material-list', $data);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function createMaterialChapter(Request $request, $prod_id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$data['products'] = Product::get();
return view('admin.revisionmaterial.add-material-chapter', $data);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function storeMaterial(Request $request)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$request->validate([
'chapters' => 'required'
]);
$sort_order = 1;
$_sortOrder = Revision_material::where('type', '=', 'material')->get()->last();
if (!empty($_sortOrder)) {
$sort_order = $_sortOrder->sort + 1;
}
$data = array(
'product_id' => $request->product_id,
'type' => $request->type,
'chapters' => $request->chapters,
'admin_id' => $admin_id,
'sort' => $sort_order,
'created_at' => date('Y-m-d H:i:s')
);
$res = Revision_material::create($data);
if ($res) {
return back()->with('success', $request->chapters . 'Has Been Added!.');
} else {
return back()->with('error', 'Something Went Wrong!');
}
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function showMaterialChapter($id, $prod_id)
{
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$data['revision_material'] = Revision_material::where(['id' => $id])->first();
return view('admin.revisionmaterial.view-material-chapter', $data);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function editMaterialChapter($id, $prod_id)
{
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$data['revision'] = Revision_material::where(['id' => $id])->first();
$data['products'] = Product::get();
return view('admin.revisionmaterial.edit-material-chapter', $data);
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function updateMaterialChapter(Request $request, $id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$request->validate([
'chapters' => 'required',
'sort' => 'required',
]);
$data = array(
'chapters' => $request->chapters,
'admin_id' => $admin_id,
'sort' => $request->sort
);
$res = Revision_material::where(['id' => $id])->update($data);
if ($res) {
return back()->with('success', $request->chapters . ' Has Been Updated!.');
} else {
return back()->with('error', 'Something Went Wrong!');
}
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroyMaterial($id)
{
Revision_material_file::where(['revision_material_id' => $id])->delete();
Revision_material::where(['id' => $id])->delete();
return back()->with('success', 'Material deleted successfully');
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function materialFileList(Request $request, $id, $prod_id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
if (isset($_GET['query']) && strlen($_GET['query']) > 1) {
$search_text = $_GET['query'];
$data['materials'] = DB::table('revision_material_files')
->where('revision_material_id', $id)
->paginate(10);
} else {
$data['materials'] = DB::table('revision_material_files')->where('revision_material_id', $id)->paginate(10);
}
$data['chapter'] = Revision_material::where('id', $id)->first();
return view('admin.revisionmaterialfile.material-file-list', $data);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function createMaterialFile(Request $request, $id, $prod_id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$data['mainMenu'] = 'productManagement';
$data['subMenu'] = 'productList';
$info = Product::find($prod_id);
$data['info'] = $info;
$data['chapter'] = Revision_material::where('id', $id)->first();
return view('admin.revisionmaterialfile.add-material-file', $data);
}
public function searchPublicContent(Request $request)
{
$public_content = "";
if (isset($request->search) && strlen($request->search) > 0) {
$search_text = $request->search;
$public_content = DB::table('materials')->where('filename', 'LIKE', '%' . $search_text . '%')->get()->toJson();
}
return response()->json(['public_content' => $public_content], 201);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function saveMaterialFile(Request $request, $id)
{
$admin_id = $request->session()->get('loggedIn')['id'];
$request->validate([
'file_name' => 'required',
'public_content' => 'required'
]);
$data = array(
'revision_material_id' => $id,
'file_name' => $request->file_name,
'files_url' => $request->public_content,
'admin_id' => $admin_id,
'type' => 'pdf',
'created_at' => date('Y-m-d H:i:s')
);
$res = Revision_material_file::create($data);
if ($res) {
return back()
->with('success', $request->file_name . ' Has Been Added!.');
} else {
return back()
->with('error', 'Something Went Wrong!');
}
}
// Delete revision & Material file
public function destroyRevision_Material_file($id)
{
Revision_material_file::where(['id' => $id])->delete();
return back()->with('success', 'Material deleted successfully');
}
}