/** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $data = []; $data['badges'] = Badge::all()->count(); $data['questions'] = Question::published()->count(); $data['answers'] = User::Member()->with('answeredQuestions')->count(); $data['members'] = User::Member()->count(); return view('admin.dashboard.index', compact('data')); }
public function giveBadge(RewardBadgeRequest $request) { $user = User::findOrFail($request->input('username')); $badge = Badge::findOrFail($request->input('badge')); if (Game::incrementBadge($user, $badge)) { return redirect()->route('admin.rewards.index')->with('success', trans('admin/reward/messages.badge_given.success', ['username' => $user->username, 'badge' => $badge->name])); } else { return redirect()->route('admin.rewards.index')->with('error', trans('admin/reward/messages.badge_given.error', ['username' => $user->username])); } }
/** * Displays the form for question creation. * * @return \Illuminate\Http\Response */ public function create() { $availableTags = Question::existingTags()->pluck('name', 'slug'); $availableActions = []; // get actions that hasn't not been used foreach (Badge::all() as $action) { $availableActions[$action->id] = $action->name; } return view('admin/question/create', compact('availableTags', 'availableActions')); }
public function getName() { $badge = Badge::find($this->badge_id); return $badge->name; }
public function getAvailableActions() { $selectedActions = $this->actions()->lists('badge_id')->toArray(); return Badge::whereNotIn('id', $selectedActions)->get(); }
/** * Show a list of all badges formatted for Datatables. * * @param Request $request * @param Datatables $dataTable * * @return Datatables JsonResponse */ public function data(Request $request, Datatables $dataTable) { // Disable this query if isn't AJAX if (!$request->ajax()) { abort(400); } $badges = Badge::select(['id', 'name', 'amount_needed', 'active'])->orderBy('name', 'ASC'); return $dataTable->of($badges)->addColumn('image', function (Badge $badge) { $badge = Badge::find($badge->id); return '<img src="' . $badge->image->url('small') . '" width="64" class="img-thumbnail" />'; })->editColumn('active', function (Badge $badge) { return $badge->active ? trans('general.yes') : trans('general.no'); })->addColumn('actions', function (Badge $badge) { return view('admin/partials.actions_dd', ['model' => 'badges', 'id' => $badge->id])->render(); })->removeColumn('id')->make(true); }