diff options
| author | horus | 2020-03-24 01:30:36 +0100 |
|---|---|---|
| committer | horus | 2020-03-24 01:30:36 +0100 |
| commit | d68ed7e017f5a6bedb78c46af88dbc9cb7e881d7 (patch) | |
| tree | 064018b24a2d793c8be78fe44c4e4d8294d240f7 /app | |
| parent | b937441c92d749b2c6e6d82835a241a36de5bf1b (diff) | |
| download | senpai-d68ed7e017f5a6bedb78c46af88dbc9cb7e881d7.tar.gz | |
Reflects changing scores correctly in the database and calendar.
Diffstat (limited to 'app')
| -rw-r--r-- | app/Libraries/Helper.php | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/app/Libraries/Helper.php b/app/Libraries/Helper.php index ef1eaf6..407c58e 100644 --- a/app/Libraries/Helper.php +++ b/app/Libraries/Helper.php @@ -83,14 +83,17 @@ class Helper { /** * Update watched episodes. */ - $check_watched_eps = DB::table('is_watching') + $check_watched_anime = DB::table('is_watching') ->where('mal_id', $anime->mal_id) ->where('user_id', $user->id) - ->get('episodes_watched')[0]; - if ( $check_watched_eps->episodes_watched != $check->episodes_watched ) { - echo "setCalendar: update episodes_watched from " . $check->episodes_watched . " to " . $check_watched_eps->episodes_watched . "\n"; + ->get()->first(); + if ( $check_watched_anime->episodes_watched != $check->episodes_watched ) { + echo "setCalendar: update episodes_watched from " . $check->episodes_watched . " to " . $check_watched_anime->episodes_watched . "\n"; - $check->episodes_watched = $check_watched_eps->episodes_watched; + $check->episodes_watched = $check_watched_anime->episodes_watched; + $check->save(); + } else if ( $check_watched_anime->score_user != $check->score ){ + $check->score = $check_watched_anime->score_user; $check->save(); } else { echo "setCalendar: duplicate entry. ".$anime->mal_id." continue\n"; @@ -132,21 +135,30 @@ class Helper { ->where('mal_id', $anime_details["mal_id"]) ->where('user_id', $user->id) ->exists(); + if ( $check ) { $actually_watching[] = $anime_details["mal_id"]; /** * Update watched episodes. */ - $check_watched_eps = DB::table('is_watching') + $check_watched_anime = DB::table('is_watching') ->where('mal_id', $anime_details["mal_id"]) ->where('user_id', $user->id) - ->get('episodes_watched')[0]; - if ( $check_watched_eps->episodes_watched != $anime_details["episodes_watched"] ) { + ->get()->first(); + if ( $check_watched_anime->episodes_watched != $anime_details["episodes_watched"] ) { DB::update('UPDATE is_watching SET episodes_watched = ? WHERE mal_id = ? AND user_id = ?', [ $anime_details["episodes_watched"], $anime_details["mal_id"], $user->id] ); } + /** + * Update user given score. + */ + if ( $check_watched_anime->score_user != $anime_details["score_user"] ) { + DB::update('UPDATE is_watching SET score_user = ? WHERE mal_id = ? AND user_id = ?', + [ $anime_details["score_user"], $anime_details["mal_id"], $user->id] ); + } + continue; } $anime = Anime::where('mal_id', $anime_details["mal_id"])->get()->first(); |
