summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorhorus2020-03-24 01:30:36 +0100
committerhorus2020-03-24 01:30:36 +0100
commitd68ed7e017f5a6bedb78c46af88dbc9cb7e881d7 (patch)
tree064018b24a2d793c8be78fe44c4e4d8294d240f7 /app
parentb937441c92d749b2c6e6d82835a241a36de5bf1b (diff)
downloadsenpai-d68ed7e017f5a6bedb78c46af88dbc9cb7e881d7.tar.gz
Reflects changing scores correctly in the database and calendar.
Diffstat (limited to 'app')
-rw-r--r--app/Libraries/Helper.php28
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();