public function testDeleteCharacter() { $user = User::find(1); $campaign = Campaign::find(1); $character_id = Character::where('name', 'Bilbo Baggins')->max('id'); $this->actingAs($user)->withSession(['campaign' => $campaign])->visit('/characters/' . $character_id . '/delete'); $this->visit('/test/characters')->dontSee('Bilbo Baggins'); }
/** * Display the specified resource. * * @param int $id * @return Response */ public function show($name) { $character = Character::where('name', $name)->first(); $jobs = $character->jobs()->orderBy('number', 'asc')->get(); foreach ($jobs as $job) { $skills = $job->skills()->orderBy('lvl', 'asc')->get(); $items = $job->items()->orderBY('quantity', 'asc')->get(); $job['skills'] = $skills; $job['items'] = $items; $jobarray[] = $job; } $character['jobs'] = $jobarray; $iterations = $character->iterations()->get(); $character['iterations'] = $iterations; //return $character; return view('character')->with('character', $character); }
/** * Edit character / */ public function editCharacter($timeline_id, $character_id, Request $request) { $timeline = \App\Timeline::where('id', '=', $timeline_id)->first(); $character = \App\Character::where('id', '=', $character_id)->first(); if ($character) { if ($request->input('showForm') == 'true') { return view('characters.editCharacter')->with('showForm', 'true')->with('character', $character)->with('timeline', $timeline); } else { // Validate the request data $this->validate($request, ['name' => 'required']); $user = \Auth::user(); $character->name = $request->input('name'); $character->race = $request->input('race'); $character->biography = $request->input('biography'); $character->last_modified_by = $user->id; $character->save(); return view('characters.editCharacter')->with('showForm', 'false')->with('character', $character)->with('timeline', $timeline); } } else { return "Update failed. Character does not exist."; } }
/** * Edit Location / */ public function editEvent($timeline_id, $event_id, Request $request) { // Try to get event $event = \App\Event::where('id', '=', $event_id)->first(); // If event exists, continue if ($event) { $timeline = \App\Timeline::where('id', '=', $timeline_id)->first(); $event_characters = array(); foreach ($event->characters as $character) { $event_characters[] = $character; } $event_locations = array(); foreach ($event->locations as $location) { $event_locations[] = $location; } $characters = \App\Character::where('timeline_id', '=', $timeline_id)->orderBy('name')->get(); $locations = \App\Location::where('timeline_id', '=', $timeline_id)->orderBy('name')->get(); // If form has not been submitted, show form if ($request->input('showForm') == 'true') { return view('events.editEvent')->with('showForm', 'true')->with('event', $event)->with('event_characters', $event_characters)->with('event_locations', $event_locations)->with('characters', $characters)->with('locations', $locations)->with('timeline', $timeline); } else { // Else submit form // Validate the request data $this->validate($request, ['name' => 'required', 'start_date' => 'required|date_format:Y#m#d', 'end_date' => 'required|date_format:Y#m#d']); $user = \Auth::user(); $event->name = $request->input('name'); $event->start_date = $request->input('start_date'); $event->end_date = $request->input('end_date'); $event->description = $request->input('description'); $event->last_modified_by = $user->id; $event->save(); // Edit existing locations for ($l = 0; $l < count($event_locations); $l++) { $location = \DB::table('event_location')->where('location_id', '=', $request->input('location_id' . $l))->where('event_id', '=', $event_id)->first(); if ($location) { if ($request->input('location' . $l) == '--Delete Location--') { \DB::table('event_location')->where('location_id', '=', $request->input('location_id' . $l))->where('event_id', '=', $event_id)->delete(); } else { $location_name = \App\Location::where('name', '=', $request->input('location' . $l))->first(); \DB::table('event_location')->where('location_id', '=', $request->input('location_id' . $l))->where('event_id', '=', $event_id)->update(['location_id' => $location_name->id]); } } } // Add new location to database $location_input = $request->input('location_new'); if ($location_input != 'Choose a Location') { $location = \App\Location::where('name', 'LIKE', $location_input)->first(); $event->locations()->save($location); } // Edit existing characters for ($c = 0; $c < count($event_characters); $c++) { $character = \DB::table('character_event')->where('character_id', '=', $request->input('character_id' . $c))->where('event_id', '=', $event_id)->first(); if ($character) { if ($request->input('character' . $c) == '--Delete Character--') { \DB::table('character_event')->where('character_id', '=', $request->input('character_id' . $c))->where('event_id', '=', $event_id)->delete(); } else { $character_name = \App\Character::where('name', '=', $request->input('character' . $c))->first(); \DB::table('character_event')->where('character_id', '=', $request->input('character_id' . $c))->where('event_id', '=', $event_id)->update(['character_id' => $character_name->id]); } } } // Add new character to database $character_input = $request->input('character_new'); if ($character_input != 'Choose a Character') { $character = \App\Character::where('name', 'LIKE', $character_input)->first(); $event->characters()->save($character); } // Return success message return view('events.editEvent')->with('showForm', 'false')->with('event', $event)->with('timeline', $timeline); } } else { // Else fail return "Update failed. Event does not exist."; } }
public function settings() { if (Session::has('user')) { $aUser = User::where('id', Session::get('user')['id'])->first()->toArray(); //var_dump($aUser); $aCurrentCharacter = Character::where('id', $aUser['current_character_id'])->first()->toArray(); $aUserDetails = User::where('id', $aUser['id'])->first()->toArray(); return view('users.users.settings')->with('aCurrentCharacter', $aCurrentCharacter)->with('aUserDetails', $aUserDetails); } }
public function get_details() { $iLimit = 10; $iOffset = 0; if (Input::get('iOffset')) { $iOffset = Input::get('iOffset'); } $htmlView = ""; $bLoggedInUser = Session::has('user'); if ($bLoggedInUser) { $aLoggedInUser['user'] = User::where('id', Session::get('user')['id'])->first()->toArray(); $aLoggedInUser['current_character'] = Character::where('id', $aLoggedInUser['user']['current_character_id'])->first()->toArray(); } //$aMate = Mate::query("SELECT * FROM mates WHERE ((from_user_id = 10 OR to_user_id = 10) AND (status = 8 OR status = 9))")->get()->toArray(); $aMates = DB::select(DB::raw("SELECT * FROM mates WHERE ((from_user_id = " . $aLoggedInUser['user']['id'] . " OR to_user_id = " . $aLoggedInUser['user']['id'] . ") AND (status = " . Mate::MATE_STATUS_ACCEPTED_BY_ADMIN . " OR status = " . Mate::MATE_STATUS_ACCEPTED_BY_USER . "))")); $aUserID = []; $sUserIDS = ""; foreach (json_decode(json_encode($aMates), true) as $aMate) { if ($aMate['from_user_id'] != $aLoggedInUser['user']['id']) { $aUserID[] = $aMate['from_user_id']; $sUserIDS = $sUserIDS . $aMate['from_user_id'] . ", "; } else { $aUserID[] = $aMate['to_user_id']; $sUserIDS = $sUserIDS . $aMate['to_user_id'] . ", "; } } $sUserIDS = substr($sUserIDS, 0, -2); /* $aData = DB::select(DB::raw("SELECT characters.*, comments.*, likes.*, mates.*, posts.*, users.* FROM users LEFT JOIN characters on users.id = characters.user_id LEFT JOIN comments on (characters.user_id = comments.from_user_id OR characters.user_id = comments.to_user_id) LEFT JOIN likes on (comments.from_user_id = likes.from_user_id OR comments.from_user_id = likes.to_user_id OR comments.to_user_id = likes.from_user_id OR comments.to_user_id = likes.to_user_id) LEFT JOIN mates on (likes.from_user_id = mates.from_user_id OR likes.from_user_id = mates.to_user_id OR likes.to_user_id = mates.from_user_id OR likes.to_user_id = mates.to_user_id) LEFT JOIN posts on (likes.from_user_id = posts.from_user_id OR likes.from_user_id = posts.to_user_id OR likes.to_user_id = posts.from_user_id OR likes.to_user_id = posts.to_user_id OR likes.from_user_id = posts.user_id OR likes.to_user_id = posts.user_id) WHERE users.id = " . $aLoggedInUser['user']['id'] . " ORDER BY comments.date_updated, likes.date_updated, likes.date_updated, mates.date_updated, posts.date_updated ASC"));*/ $oUpdates = DB::select(DB::raw("SELECT * FROM updates WHERE\n status = " . Update::UPDATE_STATUS_ACTIVE . " OR\n status = " . Update::UPDATE_STATUS_ACTIVATED_BY_USER . " OR\n status = " . Update::UPDATE_STATUS_ACTIVATED_BY_ADMIN . " AND\n user_id IN (" . $sUserIDS . ")\n ORDER BY id DESC\n LIMIT {$iOffset}, {$iLimit}")); $aUpdates = json_decode(json_encode($oUpdates), true); for ($i = 0; $i < count($aUpdates); $i++) { $aUpdates[$i]['user'] = User::where('id', $aUpdates[$i]['user_id'])->first()->toArray(); switch ($aUpdates[$i]['update_type']) { case Update::UPDATE_TYPE_USER: break; case Update::UPDATE_TYPE_SPECY: break; case Update::UPDATE_TYPE_FAMILY: break; case Update::UPDATE_TYPE_CHARACTER: $aUpdates[$i]['character'] = Character::where('id', $aUpdates[$i]['character_id'])->first()->toArray(); break; case Update::UPDATE_TYPE_MATE: break; case Update::UPDATE_TYPE_COMMENT: $aUpdates[$i]['comment'] = Comment::where('id', $aUpdates[$i]['comment_id'])->first()->toArray(); $aUpdates[$i]['comment']['from_user'] = User::where('id', $aUpdates[$i]['comment']['from_user_id'])->first()->toArray(); $aUpdates[$i]['comment']['to_user'] = User::where('id', $aUpdates[$i]['comment']['to_user_id'])->first()->toArray(); switch ($aUpdates[$i]['comment']['comment_from_type']) { case Comment::COMMENT_FROM_TYPE_USER: break; case Comment::COMMENT_FROM_TYPE_CHARACTER: break; case Comment::COMMENT_FROM_TYPE_FAMILY: break; case Comment::COMMENT_FROM_TYPE_SPECY: break; case Comment::COMMENT_FROM_TYPE_PHOTO: $aUpdates[$i]['comment']['photo'] = Photo::where('id', $aUpdates[$i]['comment']['photo_id'])->first()->toArray(); break; case Comment::COMMENT_FROM_TYPE_POST: break; case Comment::COMMENT_FROM_TYPE_MATE: break; } $htmlView = $htmlView . (string) view('users.pages.partials.comment-show')->with('aUpdate', $aUpdates[$i]); break; case Update::UPDATE_TYPE_PHOTO: break; case Update::UPDATE_TYPE_LIKE: $aUpdates[$i]['like'] = Like::where('id', $aUpdates[$i]['like_id'])->first()->toArray(); break; case Update::UPDATE_TYPE_POST: $aUpdates[$i]['post'] = Post::where('id', $aUpdates[$i]['post_id'])->first()->toArray(); break; } } return response()->json(['status' => true, 'message' => "Successfully submitted comment", 'view' => (string) $htmlView]); }
public function settings() { if (Session::has('user')) { $aLoggedInUser = null; $bOwner = true; $oMate = null; $bLoggedInUser = Session::has('user'); if ($bLoggedInUser) { /*if($oUser->toArray()['id'] == Session::get('user')['id']){ $bOwner = true; }*/ $aLoggedInUser['user'] = User::where('id', Session::get('user')['id'])->first()->toArray(); $aLoggedInUser['current_character'] = Character::where('id', $aLoggedInUser['user']['current_character_id'])->first()->toArray(); } $aUser['user'] = User::where('id', Session::get('user')['id'])->first()->toArray(); $aUser['active_characters'] = Character::where('user_id', $aUser['user']['id'])->where('status', Character::CHARACTER_STATUS_DEFAULT)->orWhere('status', Character::CHARACTER_STATUS_ENABLED_BY_USER)->orWhere('status', Character::CHARACTER_STATUS_ENABLED_BY_ADMIN)->get()->toArray(); $aUser['inactive_characters'] = Character::where('user_id', $aUser['user']['id'])->where('status', Character::CHARACTER_STATUS_DISABLED_BY_USER)->orWhere('status', Character::CHARACTER_STATUS_INACTIVE)->get()->toArray(); $aUser['current_character'] = Character::where('id', $aUser['user']['current_character_id'])->first()->toArray(); $aUser['user_settings'] = UserSetting::where('id', Session::get('user')['id'])->first()->toArray(); $aLoggedInUser['user'] = $aUser['user']; $aLoggedInUser['current_character'] = $aUser['current_character']; $aCountries = Country::all()->toArray(); return view('users.users.settings')->with('aUser', $aUser)->with('aLoggedInUser', $aLoggedInUser)->with('aCountries', $aCountries)->with('bLoggedInUser', $bLoggedInUser)->with('bOwner', $bOwner); } }
/** * Get rankings page * * @return JSON of top 10 characters */ public function getRankings() { $users = \App\Character::where('gm', '<', 4)->orderBy('level', 'DESC')->paginate(10); return $users; }
function get_comments_by_photo_id() { $iFromType = Input::get('from_type'); $iFromID = Input::get('from_id'); $aLoggedInUser = User::where('id', Session::get('user')['id'])->first()->toArray(); switch ($iFromType) { case Comment::COMMENT_FROM_TYPE_USER: $aFromItem = User::where('id', $iFromID)->first()->toArray(); $oItemLikers = Like::where('like_type', Like::LIKE_TYPE_USER)->where('user_id', $aFromItem['id'])->where('status', Like::LIKE_STATUS_ACTIVE)->get(); $aFromItem['likers'] = is_array($oItemLikers->toArray()) && count($oItemLikers->toArray()) ? $oItemLikers->toArray() : []; $aFromItem['logged_in_user']['has_liked'] = LikesController::checkHasLikedInArray($aFromItem['likers'], $aLoggedInUser['id']); $oComments = Comment::where('user_id', $iFromID)->where('status', Comment::COMMENT_STATUS_DEFAULT)->get(); break; case Comment::COMMENT_FROM_TYPE_CHARACTER: $aFromItem = Character::where('id', $iFromID)->first()->toArray(); $oItemLikers = Like::where('like_type', Like::LIKE_TYPE_CHARACTER)->where('character_id', $aFromItem['id'])->where('status', Like::LIKE_STATUS_ACTIVE)->get(); $aFromItem['likers'] = is_array($oItemLikers->toArray()) && count($oItemLikers->toArray()) ? $oItemLikers->toArray() : []; $aFromItem['logged_in_user']['has_liked'] = LikesController::checkHasLikedInArray($aFromItem['likers'], $aLoggedInUser['id']); $oComments = Comment::where('character_id', $iFromID)->where('status', Comment::COMMENT_STATUS_DEFAULT)->get(); break; case Comment::COMMENT_FROM_TYPE_FAMILY: $aFromItem = Family::where('id', $iFromID)->first()->toArray(); $oItemLikers = Like::where('like_type', Like::LIKE_TYPE_FAMILY)->where('family_id', $aFromItem['id'])->where('status', Like::LIKE_STATUS_ACTIVE)->get(); $aFromItem['likers'] = is_array($oItemLikers->toArray()) && count($oItemLikers->toArray()) ? $oItemLikers->toArray() : []; $aFromItem['logged_in_user']['has_liked'] = LikesController::checkHasLikedInArray($aFromItem['likers'], $aLoggedInUser['id']); $oComments = Comment::where('family_id', $iFromID)->where('status', Comment::COMMENT_STATUS_DEFAULT)->get(); break; case Comment::COMMENT_FROM_TYPE_SPECY: $aFromItem = Specy::where('id', $iFromID)->first()->toArray(); $oItemLikers = Like::where('like_type', Like::LIKE_TYPE_SPECY)->where('specy_id', $aFromItem['id'])->where('status', Like::LIKE_STATUS_ACTIVE)->get(); $aFromItem['likers'] = is_array($oItemLikers->toArray()) && count($oItemLikers->toArray()) ? $oItemLikers->toArray() : []; $aFromItem['logged_in_user']['has_liked'] = LikesController::checkHasLikedInArray($aFromItem['likers'], $aLoggedInUser['id']); $oComments = Comment::where('specy_id', $iFromID)->where('status', Comment::COMMENT_STATUS_DEFAULT)->get(); break; case Comment::COMMENT_FROM_TYPE_PHOTO: $aFromItem = Photo::where('id', $iFromID)->first()->toArray(); $oItemLikers = Like::where('like_type', Like::LIKE_TYPE_PHOTO)->where('photo_id', $aFromItem['id'])->where('status', Like::LIKE_STATUS_ACTIVE)->get(); $aFromItem['likers'] = is_array($oItemLikers->toArray()) && count($oItemLikers->toArray()) ? $oItemLikers->toArray() : []; $aFromItem['logged_in_user']['has_liked'] = LikesController::checkHasLikedInArray($aFromItem['likers'], $aLoggedInUser['id']); $oComments = Comment::where('photo_id', $iFromID)->where('status', Comment::COMMENT_STATUS_DEFAULT)->get(); break; case Comment::COMMENT_FROM_TYPE_POST: $aFromItem = Post::where('id', $iFromID)->first()->toArray(); $oItemLikers = Like::where('like_type', Like::LIKE_TYPE_POST)->where('post_id', $aFromItem['id'])->where('status', Like::LIKE_STATUS_ACTIVE)->get(); $aFromItem['likers'] = is_array($oItemLikers->toArray()) && count($oItemLikers->toArray()) ? $oItemLikers->toArray() : []; $aFromItem['logged_in_user']['has_liked'] = LikesController::checkHasLikedInArray($aFromItem['likers'], $aLoggedInUser['id']); $oComments = Comment::where('post_id', $iFromID)->where('status', Comment::COMMENT_STATUS_DEFAULT)->get(); break; case Comment::COMMENT_FROM_TYPE_MATE: $aFromItem = Mate::where('id', $iFromID)->first()->toArray(); $oItemLikers = Like::where('like_type', Like::LIKE_TYPE_MATE)->where('mate_id', $aFromItem['id'])->where('status', Like::LIKE_STATUS_ACTIVE)->get(); $aFromItem['likers'] = is_array($oItemLikers->toArray()) && count($oItemLikers->toArray()) ? $oItemLikers->toArray() : []; $aFromItem['logged_in_user']['has_liked'] = LikesController::checkHasLikedInArray($aFromItem['likers'], $aLoggedInUser['id']); $oComments = Comment::where('mate_id', $iFromID)->where('status', Comment::COMMENT_STATUS_DEFAULT)->get(); break; default: $aFromItem = User::where('id', $iFromID)->first()->toArray(); $oItemLikers = Like::where('like_type', Like::LIKE_TYPE_USER)->where('user_id', $aFromItem['id'])->where('status', Like::LIKE_STATUS_ACTIVE)->get(); $aFromItem['likers'] = is_array($oItemLikers->toArray()) && count($oItemLikers->toArray()) ? $oItemLikers->toArray() : []; $aFromItem['logged_in_user']['has_liked'] = LikesController::checkHasLikedInArray($aFromItem['likers'], $aLoggedInUser['id']); $oComments = Comment::where('user_id', $iFromID)->where('status', Comment::COMMENT_STATUS_DEFAULT)->get(); break; } $oComments = is_array($oComments->toArray()) && count($oComments->toArray() > 0) ? $oComments->toArray() : []; $aComments = null; $iFromWhereID = null; for ($i = 0; $i < count($oComments); $i++) { $aComments[$i] = $oComments[$i]; $aComments[$i]['from_user'] = User::where('id', $oComments[$i]['from_user_id'])->first()->toArray(); if ($oComments[$i]['comment_photo_id'] > 0) { $aComments[$i]['photo_comment'] = Photo::where('id', $oComments[$i]['comment_photo_id'])->first()->toArray(); } $iFromType = $oComments[$i]['comment_from_type']; switch ($iFromType) { case Comment::COMMENT_FROM_TYPE_USER: $iFromWhereID = "user_id"; $aComments[$i]['from'] = User::where('id', $oComments[$i][$iFromWhereID])->first()->toArray(); break; case Comment::COMMENT_FROM_TYPE_CHARACTER: $iFromWhereID = "character_id"; $aComments[$i]['from'] = Character::where('id', $oComments[$i][$iFromWhereID])->first()->toArray(); break; case Comment::COMMENT_FROM_TYPE_FAMILY: $iFromWhereID = "family_id"; $aComments[$i]['from'] = Family::where('id', $oComments[$i][$iFromWhereID])->first()->toArray(); break; case Comment::COMMENT_FROM_TYPE_SPECY: $iFromWhereID = "specy_id"; $aComments[$i]['from'] = Specy::where('id', $oComments[$i][$iFromWhereID])->first()->toArray(); break; case Comment::COMMENT_FROM_TYPE_PHOTO: $iFromWhereID = "photo_id"; $aComments[$i]['from'] = Photo::where('id', $oComments[$i][$iFromWhereID])->first()->toArray(); break; case Comment::COMMENT_FROM_TYPE_POST: $iFromWhereID = "post_id"; $aComments[$i]['from'] = Post::where('id', $oComments[$i][$iFromWhereID])->first()->toArray(); break; case Comment::COMMENT_FROM_TYPE_MATE: $iFromWhereID = "mate_id"; $aComments[$i]['from'] = Mate::where('id', $oComments[$i][$iFromWhereID])->first()->toArray(); break; default: $iFromWhereID = "user_id"; $aComments[$i]['from'] = User::where('id', $oComments[$i][$iFromWhereID])->first()->toArray(); break; } } $view = view('users.comments.show')->with('aComments', $aComments); $htmlFromWhatView = view('users.comments.partials.partial-comment-from-what-display')->with('aFromItem', $aFromItem)->with('iFromType', $iFromType); if ($oComments) { return response()->json(['view' => (string) $view, 'status' => true, 'message' => "Successfully archived character", 'what_to_display' => (string) $htmlFromWhatView]); } else { $htmlFromWhatView = view('users.comments.partials.partial-comment-from-what-display')->with('aFromItem', $aFromItem)->with('iFromType', $iFromType); $view = view('users.comments.show')->with('aComments', []); if ($htmlFromWhatView != "") { return response()->json(['view' => (string) $view, 'status' => true, 'message' => "Successfully archived character", 'what_to_display' => (string) $htmlFromWhatView]); } else { echo json_encode(array('status' => false, 'message' => "Something went wrong. Please try again later")); } } die; }
/** * Display the specified resource. * * @param string $class * @return Response */ public function show($class) { $characters[$class] = Character::where('class', '=', $class)->where('adventurer', '=', true)->orderBy('name', 'asc')->get(); return view('rooster', ['classes' => $characters]); }
public function update_status_activate(Request $request) { $result = Character::where('id', Input::get('character_id'))->update(['status' => Character::CHARACTER_STATUS_ENABLED_BY_USER]); $aCharacter = Character::where('id', Input::get('character_id'))->first()->toArray(); Update::where('character_id', $aCharacter['id'])->update(['status' => Update::UPDATE_STATUS_ACTIVATED_BY_USER]); $view = view('users.characters.partials.partials-active-list-show-characters')->with('aCharacter', $aCharacter); if ($result) { return response()->json(['view' => (string) $view, 'status' => true, 'message' => "Successfully activated character"]); } else { echo json_encode(array('status' => false, 'message' => "Something went wrong. Please try again later")); } die; }
public function postChangeCharacter(Request $request) { $data = $request->except('_token'); if (!ServiceAccount::checkCaptcha($data)) { dd('vao'); return redirect()->route('user.get.changeCharacter'); } elseif ($data['new_name'] != $data['re_name'] || strlen($data['new_name']) < 1 || strlen($data['new_name']) > 10) { dd('lỗi đặt tên'); return redirect()->back()->with('message', 'name mới phải trùng nhau và ký tự >6 và <15.'); } else { $character = new Character(); $character->setConnection($data['server_name']); try { $updated = $character->where('acct_id', $data['acct_id'])->where('char_id', $data['char_id'])->whereNull('Changed')->update(['nickName' => $data['new_name'], 'Changed' => 0]); } catch (\Exception $e) { dd($e->getMessage()); } if ($updated) { return redirect()->back()->with('message', 'Đổi tên thành công!'); } else { return redirect()->back()->with('message', 'Đổi tên thất bại!'); } } }