mirror of
https://gitlab.com/TheGamecraft/c-cms.git
synced 2026-04-21 02:39:10 -04:00
April 9 update
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Course;
|
||||
use App\GoogleDriveFile;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class CourseController extends Controller
|
||||
@@ -14,7 +15,17 @@ class CourseController extends Controller
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
//
|
||||
$mode = 'future';
|
||||
if (\request('all'))
|
||||
{
|
||||
$courses = Course::all();
|
||||
$mode = 'all';
|
||||
}
|
||||
else
|
||||
{
|
||||
$courses = Course::allFuture();
|
||||
}
|
||||
return view('admin.course.index',['courses' => $courses,'mode' => $mode]);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -41,18 +52,25 @@ class CourseController extends Controller
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param \App\Course $course
|
||||
* @return \Illuminate\Http\Response
|
||||
* @param $id
|
||||
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
|
||||
*/
|
||||
public function show(Course $course)
|
||||
public function show($id)
|
||||
{
|
||||
//
|
||||
$course = Course::find($id);
|
||||
$user = \App\User::find($course->user_id);
|
||||
$name = $course->user_id;
|
||||
if ($user != null)
|
||||
{
|
||||
$name = $user->fullname();
|
||||
}
|
||||
return view('admin.course.show',['course' => $course,'username' => $name,'lessonPlanDir' => \App\GoogleDriveFile::findByPath('.Systeme/.Fichier/.PlanDeCours')->id]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for editing the specified resource.
|
||||
*
|
||||
* @param \App\Course $course
|
||||
* @param Course $course
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function edit(Course $course)
|
||||
@@ -64,7 +82,7 @@ class CourseController extends Controller
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \App\Course $course
|
||||
* @param Course $course
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(Request $request, Course $course)
|
||||
@@ -72,14 +90,105 @@ class CourseController extends Controller
|
||||
//
|
||||
}
|
||||
|
||||
public function updateCommentOfficer(Request $request, $id)
|
||||
{
|
||||
$course = Course::findOrFail($id);
|
||||
|
||||
$course->comment_officer = $request->comment_officer;
|
||||
$course->save();
|
||||
return redirect()->back()->with('success','Modification enregisté avec succès');
|
||||
}
|
||||
|
||||
public function updateComment(Request $request, $id)
|
||||
{
|
||||
$course = Course::findOrFail($id);
|
||||
|
||||
$course->comment = $request->comment;
|
||||
$course->save();
|
||||
return redirect()->back()->with('success','Modification enregisté avec succès');
|
||||
}
|
||||
|
||||
public function updateCommentOfficerPlan(Request $request, $id)
|
||||
{
|
||||
$course = Course::findOrFail($id);
|
||||
|
||||
$course->lessonPlan->comment = $request->comment_officer;
|
||||
$course->lessonPlan->save();
|
||||
return redirect()->back()->with('success','Modification enregisté avec succès');
|
||||
}
|
||||
|
||||
public function updateCommentPlan(Request $request, $id)
|
||||
{
|
||||
$course = Course::findOrFail($id);
|
||||
|
||||
$course->lessonPlan->desc = $request->comment;
|
||||
$course->lessonPlan->save();
|
||||
return redirect()->back()->with('success','Modification enregisté avec succès');
|
||||
}
|
||||
|
||||
public function updateLessonPlan(Request $request, $id)
|
||||
{
|
||||
$course = Course::findOrFail($id);
|
||||
$name = $course->ocom.'_'.$course->instructor().'_'.$course->event->date_begin.'_'.'v'.date('c').'.'.\request()->file('file')->getClientOriginalExtension();
|
||||
$name = urlencode($name);
|
||||
$dirID = \App\GoogleDriveFile::findByPath('.Systeme/.Fichier/.PlanDeCours')->id;
|
||||
|
||||
if ($course->lessonPlan != null)
|
||||
{
|
||||
$lessonPlan = $course->lessonPlan;
|
||||
$contents = collect(\Storage::cloud()->listContents($dirID, false));
|
||||
|
||||
$file = $contents
|
||||
->where('type', '=', 'file')
|
||||
->where('filename', '=', pathinfo($course->lessonPlan->file, PATHINFO_FILENAME))
|
||||
->where('extension', '=', pathinfo($course->lessonPlan->file, PATHINFO_EXTENSION))
|
||||
->first(); // there can be duplicate file names!
|
||||
\Storage::cloud()->delete($file['path']);
|
||||
}
|
||||
else
|
||||
{
|
||||
$lessonPlan = new \App\LessonPlan();
|
||||
}
|
||||
\Storage::cloud()->putFileAs($dirID,\request()->file('file'),$name);
|
||||
$metadata = \Storage::cloud()->getMetadata($dirID.'/'.$name);
|
||||
|
||||
$lessonPlan->user_id = \Auth::user()->id;
|
||||
$lessonPlan->file = $metadata['name'];
|
||||
$lessonPlan->course_id = $course->id;
|
||||
$lessonPlan->desc = "";
|
||||
$lessonPlan->comment = "";
|
||||
$lessonPlan->save();
|
||||
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param \App\Course $course
|
||||
* @param Course $course
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function destroy(Course $course)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
public function validatePlan($id)
|
||||
{
|
||||
$course = Course::findOrFail($id);
|
||||
if ($course->lessonPlan)
|
||||
{
|
||||
if ($course->lessonPlan->approved)
|
||||
{
|
||||
$course->lessonPlan->approved = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$course->lessonPlan->approved = true;
|
||||
}
|
||||
$course->lessonPlan->save();
|
||||
return strval($course->lessonPlan->approved);
|
||||
}
|
||||
return abort(500);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user