X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-bonus.php;h=5960bd49a694a7798d759f3abfb9539b38735b32;hp=bd2ee2fe93ce27fc07336a3b7d2dcaa7fdce5fd7;hb=003327b581d825dd686729ebd6e60f53774a524a;hpb=357b2ca133fc1f89db74097955c366cb4bee6996 diff --git a/inc/modules/member/what-bonus.php b/inc/modules/member/what-bonus.php index bd2ee2fe93..5960bd49a6 100644 --- a/inc/modules/member/what-bonus.php +++ b/inc/modules/member/what-bonus.php @@ -10,9 +10,14 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Bonusseiten fuer ein paar Extrapunkte * * -------------------------------------------------------------------- * - * * + * $Revision:: $ * + * $Date:: $ * + * $Tag:: 0.2.1-FINAL $ * + * $Author:: $ * + * Needs to be in all Files and every File needs "svn propset * + * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * - * Copyright (c) 2003 - 2008 by Roland Haeder * + * Copyright (c) 2003 - 2009 by Roland Haeder * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -33,87 +38,93 @@ // Some security stuff... if (!defined('__SECURITY')) { - $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; - require($INC); -} elseif (!IS_MEMBER()) { - LOAD_URL("modules.php[5~?module=index"); -} elseif ((!EXT_IS_ACTIVE("bonus")) && (!IS_ADMIN())) { - ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "bonus"); - return; + die(); +} elseif (!isMember()) { + redirectToIndexMemberOnlyModule(); } // Add description as navigation point -ADD_DESCR("member", __FILE__); +addMenuDescription('member', __FILE__); + +if ((!isExtensionActive('bonus')) && (!isAdmin())) { + loadTemplate('admin_settings_saved', false, generateExtensionInactiveNotInstalledMessage('bonus')); + return; +} // END - if -if (GET_EXT_VERSION("bonus") >= "0.6.9") -{ +if (getExtensionVersion('bonus') >= '0.6.9') { // Add more bonus points here - $USE = "(0"; - if ($_CONFIG['bonus_click_yn'] == "Y") $USE .= " + turbo_bonus"; - if ($_CONFIG['bonus_login_yn'] == "Y") $USE .= " + login_bonus"; - if ($_CONFIG['bonus_order_yn'] == "Y") $USE .= " + bonus_order"; - if ($_CONFIG['bonus_stats_yn'] == "Y") $USE .= " + bonus_stats"; - if ($_CONFIG['bonus_ref_yn'] == "Y") $USE .= " + bonus_ref"; - $USE .= ")"; -} - else -{ + // @TODO Rewrite this to a filter + $USE = '(0'; + if (getConfig('bonus_click_yn') == 'Y') $USE .= ' + `turbo_bonus`'; + if (getConfig('bonus_login_yn') == 'Y') $USE .= ' + `login_bonus`'; + if (getConfig('bonus_order_yn') == 'Y') $USE .= ' + `bonus_order`'; + if (getConfig('bonus_stats_yn') == 'Y') $USE .= ' + `bonus_stats`'; + if (getConfig('bonus_ref_yn') == 'Y') $USE .= ' + `bonus_ref`'; + $USE .= ')'; +} else { // Old version ??? - $USE = "turbo_bonus"; + $USE = '`turbo_bonus`'; } // Autopurge installed? -$LAST = "%s"; $ONLINE = ""; -if (EXT_IS_ACTIVE("autopurge")) { +$lastOnline = "%s"; $ONLINE = ''; +if (isExtensionActive('autopurge')) { // Use last online timestamp to keep inactive members away from here - $LAST = " AND last_online >= (UNIX_TIMESTAMP() - %s)"; - $ONLINE = $_CONFIG['ap_inactive_since']; + $lastOnline = " AND `last_online` >= (UNIX_TIMESTAMP() - %s)"; + $ONLINE = getConfig('ap_inactive_since'); } -// Let's check if there are some points left we can "pay"... -$result = SQL_QUERY_ESC("SELECT userid, ".$USE." AS active_bonus, last_online FROM "._MYSQL_PREFIX."_user_data -WHERE ".$USE." > 0 AND status='CONFIRMED'".$LAST." -ORDER BY active_bonus DESC, last_online DESC, userid LIMIT %s", - array($ONLINE, $_CONFIG['bonus_ranks']), __FILE__, __LINE__); +// Let's check if there are some points left we can 'pay'... +$result = SQL_QUERY_ESC("SELECT + `userid`, ".$USE." AS points, `last_online` +FROM + `{?_MYSQL_PREFIX?}_user_data` +WHERE + ".$USE." > 0 AND `status`='CONFIRMED'".$lastOnline." +ORDER BY + `points` DESC, + last_online DESC, + userid ASC +LIMIT %s", + array( + $ONLINE, + getConfig('bonus_ranks') + ), __FILE__, __LINE__); // Reset temporary variable and check for users -$OUT = ""; -if (SQL_NUMROWS($result) > 0) -{ +$OUT = ''; +if (SQL_NUMROWS($result) > 0) { // Load our winners... $SW = 2; $cnt = 1; - while(list($uid, $turbo, $last) = SQL_FETCHROW($result)) - { + while ($content = SQL_FETCHARRAY($result)) { // Prepare data for the template $content = array( 'sw' => $SW, 'cnt' => $cnt, - 'uid' => bigintval($uid), - 'points' => TRANSLATE_COMMA($turbo), - 'last' => MAKE_DATETIME($last, "2"), + 'userid' => bigintval($content['userid']), + 'points' => translateComma($content['points']), + 'last_online' => generateDateTime($content['last_online'], 2) ); // Load row template - $OUT .= LOAD_TEMPLATE("member_bonus_row", true, $content); + $OUT .= loadTemplate('member_bonus_row', true, $content); // Count one up and switch colors - $cnt++;$SW = 3 - $SW; + $cnt++; $SW = 3 - $SW; } -} - else -{ +} else { // No one is interested in our "active rallye" ! :-( - $OUT = LOAD_TEMPLATE("member_bonus_404", true); + $OUT = loadTemplate('member_bonus_404', true); } // Free memory SQL_FREERESULT($result); -// Remeber row(s) for the template -define('__BONUS_ROWS', $OUT); +// Prepare content array +$content['rows'] = $OUT; // Load final template -LOAD_TEMPLATE("member_bonus"); +loadTemplate('member_bonus', false, $content); -// +// [EOF] ?>