From af245d624b971216bb153e4fcb660533466ebd31 Mon Sep 17 00:00:00 2001 From: coderkun Date: Fri, 13 Jun 2014 13:34:33 +0200 Subject: [PATCH] use Character caching-table also for Achievements --- models/AchievementsModel.inc | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/models/AchievementsModel.inc b/models/AchievementsModel.inc index d85be100..99097a33 100644 --- a/models/AchievementsModel.inc +++ b/models/AchievementsModel.inc @@ -313,8 +313,17 @@ { $data = $this->db->query( "SELECT ($field >= $value) AS got ". - 'FROM v_characters '. - 'WHERE id = ?', + 'FROM ('. + 'SELECT '. + 'characters.id, characters.created, characters.user_id, characters.name, characters.url, cache_characters.xps, cache_characters.quest_xps, cache_characters.avatar_id, '. + 'charactertypes.id AS charactertype_id, charactertypes.name AS charactertype_name, charactertypes.url AS charactertype_url, '. + 'xplevels.id AS xplevel_id, xplevels.level AS xplevel '. + 'FROM characters '. + 'LEFT JOIN cache_characters ON cache_characters.character_id = characters.id '. + 'LEFT JOIN charactertypes ON charactertypes.id = characters.charactertype_id '. + 'LEFT JOIN xplevels ON xplevels.id = cache_characters.xplevel_id '. + ') AS c '. + 'WHERE c.id = ?', 'i', $characterId ); @@ -323,6 +332,9 @@ } + + + return false; } @@ -339,8 +351,17 @@ { $data = $this->db->query( "SELECT $field AS field ". - 'FROM v_characters '. - 'WHERE id = ?', + 'FROM ('. + 'SELECT '. + 'characters.id, characters.created, characters.user_id, characters.name, characters.url, cache_characters.xps, cache_characters.quest_xps, cache_characters.avatar_id, '. + 'charactertypes.id AS charactertype_id, charactertypes.name AS charactertype_name, charactertypes.url AS charactertype_url, '. + 'xplevels.id AS xplevel_id, xplevels.level AS xplevel '. + 'FROM characters '. + 'LEFT JOIN cache_characters ON cache_characters.character_id = characters.id '. + 'LEFT JOIN charactertypes ON charactertypes.id = characters.charactertype_id '. + 'LEFT JOIN xplevels ON xplevels.id = cache_characters.xplevel_id '. + ') AS c '. + 'WHERE c.id = ?', 'i', $characterId );