/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $user = Auth::user(); $this->validate($request, ['title' => 'required']); $filter = new Filter(); $filter->title = $request->title; $filter->filterUI = $request->filterUI; $filter->filterOptions = ''; $filter->distribution = $request->distribution; $filter->user_id = $user->id; $filter->save(); return response()->json($filter); }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $this->validate($request, ['field' => 'required', 'comparison' => 'required', 'value' => 'required', 'actions' => 'required|array']); $input_filter = $request->all(); $filter = new Filter(); $filter->field = $input_filter['field']; $filter->comparison = $input_filter['comparison']; $filter->value = $input_filter['value']; $filter->email = $request->user()->email; $filter->save(); foreach ($input_filter["actions"] as $input_action) { $action = new FilterAction(); $action->action = $input_action["action"]; if (!empty($input_action["argument"])) { $action->argument = $input_action["argument"]; } $filter->actions()->save($action); } return response()->json($filter); }
public function homecorpSkillFilter() { if (Auth::check()) { $title = 'home'; $sort_by = " "; $sort_by_skill = " "; $filter = ""; $skills = Skills::lists('name', 'name'); $post_type = Input::get('post_type'); $save_filter = Input::get('save_filter'); $skillfilter = Filter::where('from_user', '=', Auth::user()->id)->where('post_type', '=', 'skill')->first(); if ($save_filter == 'savefilter') { if (Auth::user()->identifier == 2 && $post_type == 'skill') { if ($skillfilter != null) { $skillfilter->post_type = Input::get('post_type'); $skillfilter->from_user = Auth::user()->id; $skillfilter->posted_by = Input::get('posted_by'); $skillfilter->job_title = Input::get('skill_title'); $skillfilter->experience = Input::get('min_exp'); $skillfilter->experience_new = Input::get('max_exp'); if (Input::get('time_for') != null) { $skillfilter->time_for = implode(', ', Input::get('time_for')); } if (Input::get('linked_skill_id') != null) { $skillfilter->linked_skill = implode(', ', Input::get('linked_skill_id')); } if (Input::get('current_location') != null) { $skillfilter->city = implode(', ', Input::get('current_location')); } $skillfilter->unique_id = Input::get('unique_id'); $skillfilter->expired = Input::get('expired'); $skillfilter->save_filter = Input::get('save_filter'); $skillfilter->save(); } elseif ($skillfilter == null) { $skillfilter = new Filter(); $skillfilter->from_user = Auth::user()->id; $skillfilter->post_type = Input::get('post_type'); $skillfilter->job_title = Input::get('skill_title'); $skillfilter->experience = Input::get('min_exp'); $skillfilter->experience_new = Input::get('max_exp'); if (Input::get('time_for') != null) { $skillfilter->time_for = implode(', ', Input::get('time_for')); } if (Input::get('linked_skill_id') != null) { $skillfilter->linked_skill = implode(', ', Input::get('linked_skill_id')); } if (Input::get('current_location') != null) { $skillfilter->city = implode(', ', Input::get('current_location')); } $skillfilter->unique_id = Input::get('unique_id'); $skillfilter->expired = Input::get('expired'); $skillfilter->save_filter = Input::get('save_filter'); $skillfilter->save(); } } } $post_title = Input::get('skill_title'); $city = Input::get('prefered_location'); $experience = Input::get('min_exp'); $experience_new = Input::get('max_exp'); $time_for = Input::get('time_for'); $skill = Input::get('linked_skill_id'); if ($post_type == 'skill') { $skillPosts = Postjob::orderBy('postjobs.id', 'desc')->with('indUser', 'corpUser', 'postActivity', 'preferLocations')->where('postjobs.post_type', '=', 'skill')->where('postjobs.inactive', '=', 0)->leftjoin('post_preferred_locations', 'post_preferred_locations.post_id', '=', 'postjobs.id'); if ($post_title != null) { $skillPosts->whereRaw("(post_title like '%" . $post_title . "%' or job_detail like '%" . $post_title . "%' or role like '%" . $post_title . "%' or linked_skill like '%" . $post_title . "%')"); } if ($city != null) { $p_locality = []; $p_city = []; foreach ($city as $loc) { $tempArr = explode('-', $loc); if (count($tempArr) == 3) { array_push($p_locality, $tempArr[0]); array_push($p_city, $tempArr[1]); } if (count($tempArr) == 2) { array_push($p_city, $tempArr[0]); } } $skillPosts->whereIn('post_preferred_locations.city', $p_city); $skillPosts->whereIn('post_preferred_locations.locality', $p_locality); } if ($time_for != null) { $skillPosts->whereIn('time_for', $time_for); // return $time_for; } if ($experience != null) { $skillPosts->whereRaw("min_exp between {$experience} and {$experience_new}"); } if ($skill != null) { foreach ($skill as $skil) { $skillPosts->where('linked_skill', 'like', '%' . $skil . '%'); } } $skillPosts = $skillPosts->paginate(15); } if ($save_filter == 'savefilter') { return view('pages.home_corporate', compact('jobPosts', 'skillPosts', 'linksApproval', 'linksPending', 'title', 'links', 'groups', 'following', 'userSkills', 'skills', 'share_links', 'share_groups', 'sort_by', 'sort_by_skill', 'filter', 'skillfilter'))->withErrors(['errors' => 'Filter Save successfully.']); } else { return view('pages.home_corporate', compact('jobPosts', 'skillPosts', 'linksApproval', 'linksPending', 'title', 'links', 'groups', 'following', 'userSkills', 'skills', 'share_links', 'share_groups', 'sort_by', 'sort_by_skill', 'filter', 'skillfilter')); } } else { return redirect('login'); } }