public static function getUserDailyBonus($userId)
 {
     $result = array();
     if (!empty($userId)) {
         try {
             $SQL = "SELECT * FROM " . TBL_GAME_USER_LOGIN_LOG . " WHERE userId=" . DBUtils::mysql_escape($userId, 1) . " GROUP BY date ORDER BY date DESC LIMIT 0,7";
             $dailies = GameUserLoginLog::findBySql(DBUtils::getConnection(), $SQL);
             $dailyBonusConstants = BonusUtils::getDailyBonusConstants();
             $good = 1;
             if (!empty($dailies) && sizeof($dailies) > 1) {
                 for ($i = 1; $i < sizeof($dailies); $i++) {
                     $current = $dailies[$i];
                     $prev = $dailies[$i - 1];
                     if (!empty($current) && !empty($prev)) {
                         $diffs = UtilFunctions::dateDiff(intval($prev->time), intval($current->time));
                         if ($diffs['year'] > 0 || $diffs['month'] > 0 || $diffs['month'] > 0 || $diffs['day'] > 1) {
                             break;
                         } else {
                             $currentD = date("d", $current->time);
                             $prevD = date("d", $prev->time);
                             if ($diffs['day'] == 1 && $diffs["hour"] <= 0 && $diffs["minute"] <= 0 && $diffs["second"] <= 0) {
                                 $good++;
                             } else {
                                 if ($currentD != $prevD) {
                                     $good++;
                                 } else {
                                     break;
                                 }
                             }
                         }
                     } else {
                         break;
                     }
                 }
             }
             for ($i = 0; $i < 7; $i++) {
                 $dailybonus = new stdClass();
                 if (!empty($dailyBonusConstants) && sizeof($dailyBonusConstants) > $i) {
                     $tmp = $dailyBonusConstants[$i];
                     if (!empty($tmp)) {
                         $dailybonus = $tmp;
                     }
                 } else {
                     $dailybonus->order = $i + 1;
                     $dailybonus->coin = ($i + 1) * 100;
                 }
                 if ($i < $good) {
                     $dailybonus->active = true;
                 } else {
                     $dailybonus->active = false;
                 }
                 array_push($result, $dailybonus);
             }
         } catch (Exception $exc) {
             error_log($exc->getTraceAsString());
         }
     }
     return $result;
 }