/** * Run the database seeds. * * @return void */ public function run() { factory(Priola\ProductCategory::class, 5)->create()->each(function ($pc) { for ($i = 0; $i < 1; $i++) { if (rand(0, 1) == 1) { $pc->productLines()->save(factory(Priola\ProductLine::class)->make()); } } }); foreach (\Priola\ProductCategory::all() as $productCategory) { factory(Priola\Product::class, 10)->create(['product_category_id' => $productCategory->id])->each(function ($p) { for ($i = 0; $i < 5; $i++) { $p->productColors()->save(factory(Priola\ProductColor::class)->make()); } $p->masterClasses()->save(factory(Priola\MasterClass::class)->make()); }); } foreach (\Priola\ProductLine::all() as $productLine) { factory(Priola\Product::class, 10)->create(['product_line_id' => $productLine->id])->each(function ($p) { for ($i = 0; $i < 5; $i++) { $p->productColors()->save(factory(Priola\ProductColor::class)->make()); } $p->masterClasses()->save(factory(Priola\MasterClass::class)->make()); }); } foreach (\Priola\MasterClass::all() as $masterClass) { factory(Priola\MasterClassStep::class, 6)->create(['master_class_id' => $masterClass->id]); } }
/** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { MasterClass::destroy($id); return redirect('/admin/masterClasses'); }
/** * Display a listing of the resource. * * @param int $masterClassId * @return \Illuminate\Http\Response */ public function index($masterClassId) { return MasterClass::where('master_class_id', $masterClassId); }
public function search() { $searchResults = new \Illuminate\Database\Eloquent\Collection(); $string = Input::get('string'); $productCategories = ProductCategory::where('title', 'like', '%' . $string . '%')->orWhere('description', 'like', '%' . $string . '%')->get(); foreach ($productCategories as $productCategory) { $body = strip_tags($productCategory->description); if (strlen($body) > 100) { $body = substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $productCategory->title, 'body' => $body, 'link' => '/catalog/' . $productCategory->id]); $searchResults->push($searchResult); } $productLines = ProductLine::where('title', 'like', '%' . $string . '%')->orWhere('description', 'like', '%' . $string . '%')->get(); foreach ($productLines as $productLine) { $body = strip_tags($productLine->description); if (strlen($body) > 100) { $body = substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $productLine->title, 'body' => $body, 'link' => '/productLine/' . $productLine->id]); $searchResults->push($searchResult); } $products = Product::where('title', 'like', '%' . $string . '%')->orWhere('description', 'like', '%' . $string . '%')->get(); foreach ($products as $product) { $body = strip_tags($product->description); if (strlen($body) > 100) { $body = substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $product->title, 'body' => $body, 'link' => '/product/' . $product->id]); $searchResults->push($searchResult); } $masterClasses = MasterClass::where('title', 'like', '%' . $string . '%')->orWhere('description', 'like', '%' . $string . '%')->get(); foreach ($masterClasses as $masterClass) { $body = strip_tags($masterClass->description); if (strlen($body) > 100) { $body = substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $masterClass->title, 'body' => $body, 'link' => '/master-class/' . $masterClass->id]); $searchResults->push($searchResult); } $events = Event::where('title', 'like', '%' . $string . '%')->orWhere('body', 'like', '%' . $string . '%')->get(); foreach ($events as $event) { $body = strip_tags($event->description); if (strlen($body) > 100) { $body = substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $event->title, 'body' => $body, 'link' => '/events/' . $event->id]); $searchResults->push($searchResult); } $novelties = Novelty::where('title', 'like', '%' . $string . '%')->orWhere('body', 'like', '%' . $string . '%')->get(); foreach ($novelties as $novelty) { $body = strip_tags($novelty->description); if (strlen($body) > 100) { $body = mb_substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $novelty->title, 'body' => $body, 'link' => '/novelties/' . $novelty->id]); $searchResults->push($searchResult); } $reviews = Review::where('body', 'like', '%' . $string . '%')->get()->load('regionTechnology'); foreach ($reviews as $review) { $body = strip_tags($review->body); if (strlen($body) > 100) { $body = mb_substr($body, 0, 100); } $searchResult = new SearchResult(['title' => RegionTechnology::where('id', $review->region_technology_id)->first()->username, 'body' => $body, 'link' => '/reviews/' . $review->id]); $searchResults->push($searchResult); } $competitions = Competition::where('title', 'like', '%' . $string . '%')->orWhere('description', 'like', '%' . $string . '%')->get(); foreach ($competitions as $competition) { $body = strip_tags($competition->description); if (strlen($body) > 100) { $body = substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $competition->title, 'body' => $body, 'link' => '/competitions/' . $competition->id]); $searchResults->push($searchResult); } $courses = Course::where('title', 'like', '%' . $string . '%')->orWhere('description', 'like', '%' . $string . '%')->get(); foreach ($courses as $course) { $body = strip_tags($course->description); if (strlen($body) > 100) { $body = substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $course->title, 'body' => $body, 'link' => '/courses/' . $course->id]); $searchResults->push($searchResult); } $massMediaNews = MassMediaNews::where('title', 'like', '%' . $string . '%')->orWhere('body', 'like', '%' . $string . '%')->get(); foreach ($massMediaNews as $massMediaNewItem) { $body = strip_tags($massMediaNewItem->body); if (strlen($body) > 100) { $body = substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $massMediaNewItem->title, 'body' => $body, 'link' => '/mass-media-news/' . $massMediaNewItem->id]); $searchResults->push($searchResult); } $regionWorkshops = RegionWorkshop::where('title', 'like', '%' . $string . '%')->orWhere('description', 'like', '%' . $string . '%')->get(); foreach ($regionWorkshops as $regionWorkshop) { $body = strip_tags($regionWorkshop->description); if (strlen($body) > 100) { $body = substr($body, 0, 100); } $searchResult = new SearchResult(['title' => $regionWorkshop->title, 'body' => $body, 'link' => '/regions/workshops/' . $regionWorkshop->id]); $searchResults->push($searchResult); } return view('home.searchResults', ['string' => $string, 'searchResults' => $searchResults]); }