Ejemplo n.º 1
0
 public function scopeFilterSearch($query, $value)
 {
     $unique_key_ids = MavenFaq::where(function ($query) use($value) {
         $query->where('question', 'LIKE', '%' . $value . '%')->orWhere('answer', 'LIKE', '%' . $value . '%');
     })->where('locale', Maven::getLocale())->lists('unique_key_id');
     return $query->whereIn('id', $unique_key_ids);
 }
Ejemplo n.º 2
0
 public function getAllTags($draft_filter_flag = true)
 {
     $tags = [];
     $faqs = MavenFaq::with('unique_key')->where('draft_flag', 0)->get();
     foreach ($faqs as $faq) {
         if ($draft_filter_flag && $faq->unique_key->draft_flag == 1) {
             continue;
         }
         $maven_tags = $faq->tags;
         foreach ($maven_tags as $maven_tag) {
             if (!isset($tags[$faq->locale]) || !in_array($maven_tag->tag, $tags[$faq->locale])) {
                 $tags[$faq->locale][] = $maven_tag->tag;
             }
         }
     }
     return collect($tags);
 }
Ejemplo n.º 3
0
 private function saveSubData($unique_key_id, $request)
 {
     foreach (config('maven.locales') as $locale => $name) {
         $faq = MavenFaq::FirstOrNew(['unique_key_id' => $unique_key_id, 'locale' => $locale]);
         $faq->unique_key_id = $unique_key_id;
         $faq->question = $request->questions[$locale];
         $faq->answer = $request->answers[$locale];
         $faq->locale = $locale;
         $faq->save();
         MavenTag::where('faq_id', $faq->id)->delete();
         if (!empty($request->tags[$locale])) {
             $locale_tags = explode(',', $request->tags[$locale]);
             foreach ($locale_tags as $locale_tag) {
                 $tag = new MavenTag();
                 $tag->unique_key_id = $unique_key_id;
                 $tag->faq_id = $faq->id;
                 $tag->tag = $locale_tag;
                 $tag->save();
             }
         }
     }
 }