<?php
namespace App\Http\Controllers\Admin;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
use App\Http\Controllers\Controller;
use App\Models\Course;
use App\Models\ClassMaster;
class ClassAdminController extends Controller
{
public function __construct()
{
}
public static function index()
{
$classAll = ClassMaster::join('course_masters','course_masters.course_id','=','class_masters.courseId')->select('class_masters.*','course_masters.course_name as courseId')->orderBy('class_masters.courseId','DESC')->orderBy('class_masters.class_id','DESC')->get();
return view('admin.masters.class.class_all',
[
'title' => 'Sarvhitkari Punjab - Class List',
'keyword'=> '',
'description'=> '',
'classAll' => $classAll
]);
}
public static function add()
{
$courseAll = Course::all();
return view('admin.masters.class.class_add',
[
'title' => 'Sarvhitkari Punjab - Add Class',
'keyword'=> '',
'description'=> '',
'courseAll' => $courseAll
]);
}
public function save(Request $request)
{
$data = $request->all();
$rules = [
'course_name' => 'required',
'class_name' => 'required|unique:class_masters',
];
$messages = [
'required' => 'The :attribute field is required.',
];
$validator = Validator::make($data, $rules, $messages);
if ($validator->fails()) {
$errors=$validator->errors();
$response_arr = array(
"status" => false,
"message" => "<div id='message'><div class='alert alert-danger'>Oops! Something went wrong. Please try again later!</div></div>",
"errors" => $errors,
"data" => []
);
}else{
$data = [
'courseId' => $request->course_name,
'class_name' => $request->class_name,
'class_remarks' => $request->class_remarks,
];
ClassMaster::create($data);
$response_arr = array(
"status" => true,
"message" => "<div id='message'><div class='alert alert-success'>Class added successfully.</div></div>",
);
}
return response()->json($response_arr);
}
public static function edit($class_id)
{
$courseAll = Course::all();
$editClass = ClassMaster::find($class_id);
return view('admin.masters.class.class_add',
[
'title' => 'Sarvhitkari Punjab - Edit Class',
'keyword'=> '',
'description'=> '',
'courseAll' => $courseAll,
'editClass' => $editClass
]);
}
public function update($class_id, Request $request)
{
$data = $request->all();
$rules = [
'course_name' => 'required',
'class_name' => 'required|unique:class_masters',
];
$messages = [
'required' => 'The :attribute field is required.',
];
$validator = Validator::make($data, $rules, $messages);
if ($validator->fails()) {
$errors=$validator->errors();
$response_arr = array(
"status" => false,
"message" => "<div id='message'><div class='alert alert-danger'>Oops! Something went wrong. Please try again later!</div></div>",
"errors" => $errors,
"data" => []
);
}else{
$data = [
'courseId' => $request->course_name,
'class_name' => $request->class_name,
'class_remarks' => $request->class_remarks,
];
ClassMaster::find($class_id)->update($data);
$response_arr = array(
"status" => true,
"message" => "<div id='message'><div class='alert alert-success'>Class updated successfully.</div></div>",
);
}
return response()->json($response_arr);
}
public function delete($class_id)
{
ClassMaster::find($class_id)->delete();
return redirect()->route('admin.class-master')->with('message','Class deleted successfully');
}
}
|