3 namespace BookStack\Http\Controllers;
5 use BookStack\Actions\TagRepo;
6 use Illuminate\Http\Request;
8 class TagController extends Controller
13 * TagController constructor.
15 public function __construct(TagRepo $tagRepo)
17 $this->tagRepo = $tagRepo;
21 * Show a listing of existing tags in the system.
23 public function index(Request $request)
25 $search = $request->get('search', '');
26 $nameFilter = $request->get('name', '');
27 $tags = $this->tagRepo
28 ->queryWithTotals($search, $nameFilter)
31 return view('tags.index', [
34 'nameFilter' => $nameFilter,
39 * Get tag name suggestions from a given search term.
41 public function getNameSuggestions(Request $request)
43 $searchTerm = $request->get('search', null);
44 $suggestions = $this->tagRepo->getNameSuggestions($searchTerm);
46 return response()->json($suggestions);
50 * Get tag value suggestions from a given search term.
52 public function getValueSuggestions(Request $request)
54 $searchTerm = $request->get('search', null);
55 $tagName = $request->get('name', null);
56 $suggestions = $this->tagRepo->getValueSuggestions($searchTerm, $tagName);
58 return response()->json($suggestions);