Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App\Http\Controllers\Course;
- use App\Http\Controllers\Controller;
- use App\Http\Resources\CourseLectureQuizResource;
- use App\Http\Resources\CourseLectureResource;
- use App\Http\Resources\CourseQuizResource;
- use App\Http\Resources\CourseResource;
- use App\Models\CourseCategory;
- use App\Models\CourseLevel;
- use App\Models\CourseSubCategory;
- use App\Models\Curriculum;
- use App\Models\Lecture;
- use Illuminate\Support\Facades\Auth;
- use Illuminate\Support\Facades\DB;
- use Illuminate\Support\Facades\Storage;
- use Illuminate\Support\Facades\Validator;
- use App\Models\Course;
- use Illuminate\Support\Str;
- use Illuminate\Http\Request;
- class CourseController extends Controller
- {
- public function store(Request $request)
- {
- $course = new Course();
- $course->user_id = Auth::id();
- $course->course_category_id = $request->course_category_id;
- $course->course_sub_category_id = $request->course_sub_category_id;
- $course->course_level_id = $request->course_level_id;
- $course->student_learn = json_encode($request->get('student_learn'));
- $course->requirement = json_encode($request->get('requirement'));
- $course->target_student = json_encode($request->get('target_student'));
- $course->course_title = $request->get('course_title');
- $course->course_subtitle = $request->get('course_subtitle');
- $course->course_description = $request->get('course_description');
- $course->primary_taught = $request->get('primary_taught');
- $course->course_image = $request->get('course_image');
- if ($request->file('course_image'))
- {
- $courseLectureContentFile = $request->file('course_image');
- $courseLectureContentFileName = $request->file('course_image')->getClientOriginalName();
- $courseLectureContentFileUrl = Storage::disk('public')->putFileAs('course_image', $courseLectureContentFile, $courseLectureContentFileName);
- $course->course_image = $courseLectureContentFileUrl;
- }
- $course->promotional_video = $request->get('promotional_video');
- if ($request->file('promotional_video'))
- {
- $courseLectureContentFile = $request->file('promotional_video');
- $courseLectureContentFileName = $request->file('promotional_video')->getClientOriginalName();
- $courseLectureContentFileUrl = Storage::disk('public')->putFileAs('promotional_video', $courseLectureContentFile, $courseLectureContentFileName);
- $course->promotional_video = $courseLectureContentFileUrl;
- }
- $course->course_price = $request->get('course_price');
- if ($course->course_price != null and $course->course_price > 0)
- {
- $course->course_admission = "Paid";
- }
- elseif ($course->course_price == null or $course->course_price <= 0)
- {
- $course->course_admission = "Free";
- }
- $course->course_welcome_message = $request->get('course_welcome_message');
- $course->course_congratulation_message = $request->get('course_congratulation_message');
- $course->status_course = "in-review";
- $getLecture = DB::table('curriculums')
- ->select('curriculums.trigger_lecture')
- ->orderBy('trigger_lecture')
- ->where('trigger_lecture','=','lecture')->pluck('trigger_lecture')->first();
- $getQuiz = DB::table('curriculums')
- ->select('curriculums.trigger_quiz')
- ->orderBy('trigger_quiz')
- ->where('trigger_quiz','=','quiz')->pluck('trigger_quiz')->first();
- if (DB::table('curriculums')->where('trigger_lecture')->exists()
- )
- {
- $course->save();
- return response(new CourseLectureResource($course));
- }
- elseif (
- DB::table('curriculums')->where('trigger_quiz')->exists()
- )
- {
- $course->save();
- return response(new CourseQuizResource($course));
- }
- elseif (DB::table('curriculums')->where('trigger_quiz')->exists() && DB::table('curriculums')->where('trigger_lecture')->exists())
- {
- $course->save();
- return response(new CourseLectureQuizResource($course));
- }
- $course->save();
- return response($course, 201);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement