X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Flibs%2Fsurfbar_functions.php;h=7bef4431ce29075100aa8b753775dce5469ed24e;hb=78815656dde7ad2e609f884f5778a5f421ff8621;hp=9256ec8627512ef90b57bdafdd1039d439ef7369;hpb=5f8c1a333627cd0145f778a6eebdb251f5bb40b6;p=mailer.git diff --git a/inc/libs/surfbar_functions.php b/inc/libs/surfbar_functions.php index 9256ec8627..7bef4431ce 100644 --- a/inc/libs/surfbar_functions.php +++ b/inc/libs/surfbar_functions.php @@ -241,6 +241,7 @@ function SURFBAR_MEMBER_DO_FORM ($formData, $URLs) { } else { // Log invalid request DEBUG_LOG(__FUNCTION__, __LINE__, " action={$formData['action']},id={$formData['id']},function={$functionName}"); + ADD_FATAL(sprintf("Invalid member action! action=%s,id=%s,function=%s", $formData['action'], $formData['id'], $functionName)); } // Return status @@ -259,6 +260,7 @@ function SURFBAR_VALIDATE_MEMBER_ACTION_STATUS ($action, $status) { // Fetch the new status if found if ($isValid) { + // Load new status list($SURFBAR_CACHE['new_status']) = SQL_FETCHROW($result); } // END - if @@ -273,7 +275,7 @@ function SURFBAR_VALIDATE_MEMBER_ACTION_STATUS ($action, $status) { // Member actions // ----------------------------------------------------------------------------- // -// Retreat an URL +// Retreat a booked URL function SURFBAR_MEMBER_RETREAT_ACTION ($urlData) { // Create the data array for next function call $data = array( @@ -293,6 +295,40 @@ function SURFBAR_MEMBER_BOOKNOW_ACTION ($urlData) { // Simply change the status here return SURFBAR_CHANGE_STATUS ($urlData['id'], $urlData['status'], $urlData['new_status'], $data); } +// Show edit form or do the changes +function SURFBAR_MEMBER_EDIT_ACTION ($urlData) { + // Is the "execute" flag there? + if (isset($urlData['execute'])) { + // Execute the changes + return SURFBAR_MEMBER_EXECUTE_ACTION("edit", $urlData); + } // END - if + + // Display form + return SURFBAR_MEMBER_DISPLAY_ACTION_FORM("edit", $urlData); +} +// Show delete form or do the changes +function SURFBAR_MEMBER_DELETE_ACTION ($urlData) { + // Is the "execute" flag there? + if (isset($urlData['execute'])) { + // Execute the changes + return SURFBAR_MEMBER_EXECUTE_ACTION("del", $urlData); + } // END - if + + // Display form + return SURFBAR_MEMBER_DISPLAY_ACTION_FORM("del", $urlData); +} +// Display selected "action form" +function SURFBAR_MEMBER_DISPLAY_ACTION_FORM ($action, $urlData) { + // Translate some data + $urlData['registered'] = MAKE_DATETIME($urlData['registered'], "2"); + $urlData['views_total'] = TRANSLATE_COMMA($urlData['views_total']); + + // Load the form and display it + LOAD_TEMPLATE(sprintf("member_surfbar_%s_action_form", $action), false, $urlData); + + // All fine by default ... ;-) + return true; +} // // ----------------------------------------------------------------------------- // Self-maintenance functions @@ -541,10 +577,10 @@ function SURFBAR_TRANSLATE_STATUS ($status) { // Set default translated status $statusTranslated = "!".$constantName."!"; - // Generate eval() command + // Is the constant there? if (defined($constantName)) { - $eval = "\$statusTranslated = ".$constantName.";"; - eval($eval); + // Then get it's value + $statusTranslated = constant($constantName); } // END - if // Return result @@ -625,7 +661,7 @@ function SURFBAR_CHECK_RELOAD_FULL() { // Cache static reload lock $SURFBAR_CACHE['surf_lock'] = $_CONFIG['surfbar_static_lock']; - //DEBUG_LOG(__FUNCTION__, __LINE__, "Fixed surf lock is ".$_CONFIG['surfbar_static_lock'].""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "Fixed surf lock is ".$_CONFIG['surfbar_static_lock']."", false); // Do we have dynamic model? if ($_CONFIG['surfbar_pay_model'] == "DYNAMIC") { @@ -656,7 +692,7 @@ LIMIT 1", $total = SURFBAR_GET_TOTAL_URLS(); // Do we have some URLs in lock? Admins can always surf on own URLs! - //DEBUG_LOG(__FUNCTION__, __LINE__, "userLocks=".SURFBAR_GET_DATA('user_locks').",total={$total}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "userLocks=".SURFBAR_GET_DATA('user_locks').",total={$total}", false); $isFull = ((SURFBAR_GET_DATA('user_locks') == $total) && ($total > 0)); // Return result @@ -764,16 +800,16 @@ function SURFBAR_GENERATE_VALIDATION_CODE ($urlId, $salt="") { if (empty($salt)) { // Generate random hashed string $SURFBAR_CACHE['salt'] = sha1(GEN_PASS(255)); - //DEBUG_LOG(__FUNCTION__, __LINE__, "newSalt=".SURFBAR_GET_SALT().""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "newSalt=".SURFBAR_GET_SALT()."", false); } else { // Use this as salt! $SURFBAR_CACHE['salt'] = $salt; - //DEBUG_LOG(__FUNCTION__, __LINE__, "oldSalt=".SURFBAR_GET_SALT().""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "oldSalt=".SURFBAR_GET_SALT()."", false); } // ... and now the validation code $valCode = GEN_RANDOM_CODE($length, sha1(SURFBAR_GET_SALT().":".$urlId), $GLOBALS['userid']); - //DEBUG_LOG(__FUNCTION__, __LINE__, "valCode={$valCode}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "valCode={$valCode}", false); } // END - while // Hash it with md5() and salt it with the random string @@ -783,7 +819,7 @@ function SURFBAR_GENERATE_VALIDATION_CODE ($urlId, $salt="") { $valHashedCode = generatePassString($hashedCode); // Return hashed value - //DEBUG_LOG(__FUNCTION__, __LINE__, "finalValCode={$valHashedCode}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "finalValCode={$valHashedCode}", false); return $valHashedCode; } // Check validation code @@ -797,14 +833,14 @@ function SURFBAR_CHECK_VALIDATION_CODE ($urlId, $check, $salt) { $code = SURFBAR_GENERATE_VALIDATION_CODE($urlId, $salt); // Return result of checking hashes and salts - //DEBUG_LOG(__FUNCTION__, __LINE__, "---".$code."|".$check."---"); - //DEBUG_LOG(__FUNCTION__, __LINE__, "+++".$salt."|".SURFBAR_GET_DATA('last_salt')."+++"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "---".$code."|".$check."---", false); + //DEBUG_LOG(__FUNCTION__, __LINE__, "+++".$salt."|".SURFBAR_GET_DATA('last_salt')."+++", false); return (($code == $check) && ($salt == SURFBAR_GET_DATA('last_salt'))); } // Lockdown the userid/id combination (reload lock) function SURFBAR_LOCKDOWN_ID ($urlId) { - //* //DEBUG: */ print "LOCK!"); - ///* //DEBUG: */ return; + //* DEBUG: */ print "LOCK!"); + ///* DEBUG: */ return; // Just add it to the database SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_surfbar_locks (userid, url_id) VALUES (%s, %s)", array($GLOBALS['userid'], bigintval($urlId)), __FILE__, __LINE__); @@ -816,14 +852,14 @@ function SURFBAR_LOCKDOWN_ID ($urlId) { // Pay points to the user and remove it from the sender function SURFBAR_PAY_POINTS ($urlId) { // Remove it from the URL owner - //DEBUG_LOG(__FUNCTION__, __LINE__, "uid=".SURFBAR_GET_USERID().",costs=".SURFBAR_GET_COSTS().""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "uid=".SURFBAR_GET_USERID().",costs=".SURFBAR_GET_COSTS()."", false); if (SURFBAR_GET_USERID() > 0) { - SUB_POINTS(SURFBAR_GET_USERID(), SURFBAR_GET_COSTS()); + SUB_POINTS("surfbar", SURFBAR_GET_USERID(), SURFBAR_GET_COSTS()); } // END - if // Book it to the user - //DEBUG_LOG(__FUNCTION__, __LINE__, "uid=".$GLOBALS['userid'].",reward=".SURFBAR_GET_REWARD().""); - ADD_POINTS_REFSYSTEM($GLOBALS['userid'], SURFBAR_GET_DATA('reward')); + //DEBUG_LOG(__FUNCTION__, __LINE__, "uid=".$GLOBALS['userid'].",reward=".SURFBAR_GET_REWARD()."", false); + ADD_POINTS_REFSYSTEM("surfbar", $GLOBALS['userid'], SURFBAR_GET_DATA('reward')); } // Updates the statistics of current URL/userid function SURFBAR_UPDATE_INSERT_STATS_RECORD () { @@ -875,7 +911,7 @@ function SURFBAR_UPDATE_SALT_STATS () { array(SURFBAR_GET_SALT(), SURFBAR_GET_ID(), $GLOBALS['userid']), __FILE__, __LINE__); // Debug message - //DEBUG_LOG(__FUNCTION__, __LINE__, "salt=".SURFBAR_GET_SALT().",id=".SURFBAR_GET_ID().",uid=".$GLOBALS['userid'].""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "salt=".SURFBAR_GET_SALT().",id=".SURFBAR_GET_ID().",uid=".$GLOBALS['userid']."", false); // Was that okay? if (SQL_AFFECTEDROWS() < 1) { @@ -885,14 +921,14 @@ function SURFBAR_UPDATE_SALT_STATS () { } // END - if // Debug message - //DEBUG_LOG(__FUNCTION__, __LINE__, "affectedRows=".SQL_AFFECTEDROWS().""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "affectedRows=".SQL_AFFECTEDROWS()."", false); // Return if the update was okay return (SQL_AFFECTEDROWS() == 1); } // Check if the reload lock is active for given id function SURFBAR_CHECK_RELOAD_LOCK ($urlId) { - //DEBUG_LOG(__FUNCTION__, __LINE__, "id={$urlId}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "id={$urlId}", false); // Ask the database $result = SQL_QUERY_ESC("SELECT COUNT(id) AS cnt FROM "._MYSQL_PREFIX."_surfbar_locks @@ -909,7 +945,7 @@ LIMIT 1", SQL_FREERESULT($result); // Return check - //DEBUG_LOG(__FUNCTION__, __LINE__, "cnt={$cnt},".SURFBAR_GET_DATA('surf_lock').""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "cnt={$cnt},".SURFBAR_GET_DATA('surf_lock')."", false); return ($cnt == 1); } // Determine which user hash no more points left @@ -952,12 +988,12 @@ ORDER BY u.userid ASC", __FILE__, __LINE__); while (list($uid, $notified) = SQL_FETCHROW($result)) { // Get total points $points = GET_TOTAL_DATA($uid, "user_points", "points") - GET_TOTAL_DATA($uid, "user_data", "used_points"); - //DEBUG_LOG(__FUNCTION__, __LINE__, "uid={$uid},points={$points}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "uid={$uid},points={$points}", false); // Shall we add this to ignore? if ($points <= $limit) { // Ignore this one! - //DEBUG_LOG(__FUNCTION__, __LINE__, "uid={$uid} has depleted points amount!"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "uid={$uid} has depleted points amount!", false); $UIDs['uid'][$uid] = $uid; $UIDs['points'][$uid] = $points; $UIDs['notified'][$uid] = $notified; @@ -968,7 +1004,7 @@ ORDER BY u.userid ASC", __FILE__, __LINE__); SQL_FREERESULT($result); // Debug message - //DEBUG_LOG(__FUNCTION__, __LINE__, "UIDs::count=".count($UIDs)." (with own userid=".$GLOBALS['userid'].")"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "UIDs::count=".count($UIDs)." (with own userid=".$GLOBALS['userid'].")", false); // Return result return $UIDs; @@ -1014,7 +1050,8 @@ function SURFBAR_CHANGE_STATUS ($urlId, $prevStatus, $newStatus, $data=array()) global $_CONFIG; // Get URL data for status comparison if missing - if (count($data) == 0) { + if ((!is_array($data)) || (count($data) == 0)) { + // Fetch missing URL data $data = SURFBAR_GET_URL_DATA($urlId); } // END - if @@ -1026,10 +1063,10 @@ function SURFBAR_CHANGE_STATUS ($urlId, $prevStatus, $newStatus, $data=array()) // Update the status now - // ---------------------- Commented out for debugging member actions! ----------------------- + // ---------- Comment out for debugging/developing member actions! --------- //SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_surfbar_urls SET status='%s' WHERE id=%s LIMIT 1", // array($newStatus, bigintval($urlId)), __FILE__, __LINE__); - // ---------------------- Commented out for debugging member actions! ----------------------- + // ---------- Comment out for debugging/developing member actions! --------- // Was that fine? if (SQL_AFFECTEDROWS() != 1) { @@ -1154,17 +1191,17 @@ ORDER BY // Load all entries while (list($lid, $url, $last) = SQL_FETCHROW($result)) { // Debug message - //DEBUG_LOG(__FUNCTION__, __LINE__, "next - lid={$lid},url={$url},rest=".(time() - $last)."/".SURFBAR_GET_DATA('surf_lock').""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "next - lid={$lid},url={$url},rest=".(time() - $last)."/".SURFBAR_GET_DATA('surf_lock')."", false); // Skip entries that are too old if (($last > (time() - SURFBAR_GET_DATA('surf_lock'))) && (!in_array($url, $ignored))) { // Debug message - //DEBUG_LOG(__FUNCTION__, __LINE__, "okay - lid={$lid},url={$url},last={$last}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "okay - lid={$lid},url={$url},last={$last}", false); // Add only if missing or bigger if ((!isset($IDs[$url])) || ($IDs[$url] > $last)) { // Debug message - //DEBUG_LOG(__FUNCTION__, __LINE__, "ADD - lid={$lid},url={$url},last={$last}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "ADD - lid={$lid},url={$url},last={$last}", false); // Add this ID $IDs[$url] = $last; @@ -1172,7 +1209,7 @@ ORDER BY } // END - if } else { // Debug message - //DEBUG_LOG(__FUNCTION__, __LINE__, "ignore - lid={$lid},url={$url},last={$last}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "ignore - lid={$lid},url={$url},last={$last}", false); // Ignore these old entries! $ignored[] = $url; @@ -1201,7 +1238,7 @@ WHERE sbu.userid NOT IN (".implode(",", $UIDs).") AND (sbu.views_allowed=0 OR (s GROUP BY sbu.id", __FILE__, __LINE__); // Log last query - //DEBUG_LOG(__FUNCTION__, __LINE__, "lastQuery=".$_CONFIG['db_last_query']."|numRows=".SQL_NUMROWS($result)."|Affected=".SQL_AFFECTEDROWS().""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "lastQuery=".$_CONFIG['db_last_query']."|numRows=".SQL_NUMROWS($result)."|Affected=".SQL_AFFECTEDROWS()."", false); // Fetch max rand $maxRand = SQL_NUMROWS($result); @@ -1317,7 +1354,7 @@ function SURFBAR_DETERMINE_NEXT_ID ($urlId = 0) { } // END - if // And query the database - //DEBUG_LOG(__FUNCTION__, __LINE__, "randNum={$randNum},maxRand={$maxRand},surfLock=".SURFBAR_GET_DATA('surf_lock').""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "randNum={$randNum},maxRand={$maxRand},surfLock=".SURFBAR_GET_DATA('surf_lock')."", false); $result = SQL_QUERY_ESC("SELECT sbu.id, sbu.userid, sbu.url, sbs.last_salt, sbu.views_total, sbu.views_max, sbu.views_allowed, UNIX_TIMESTAMP(l.last_surfed) AS last_surfed FROM "._MYSQL_PREFIX."_surfbar_urls AS sbu LEFT JOIN "._MYSQL_PREFIX."_surfbar_salts AS sbs @@ -1345,12 +1382,12 @@ LIMIT 1", } // Is there an id number? - //DEBUG_LOG(__FUNCTION__, __LINE__, "lastQuery=".$_CONFIG['db_last_query']."|numRows=".SQL_NUMROWS($result)."|Affected=".SQL_AFFECTEDROWS().""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "lastQuery=".$_CONFIG['db_last_query']."|numRows=".SQL_NUMROWS($result)."|Affected=".SQL_AFFECTEDROWS()."", false); if (SQL_NUMROWS($result) == 1) { // Load/cache data - //DEBUG_LOG(__FUNCTION__, __LINE__, "count(".count($SURFBAR_CACHE).") - BEFORE"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "count(".count($SURFBAR_CACHE).") - BEFORE", false); $SURFBAR_CACHE = merge_array($SURFBAR_CACHE, SQL_FETCHARRAY($result)); - //DEBUG_LOG(__FUNCTION__, __LINE__, "count(".count($SURFBAR_CACHE).") - AFTER"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "count(".count($SURFBAR_CACHE).") - AFTER", false); // Determine waiting time $SURFBAR_CACHE['time'] = SURFBAR_DETERMINE_WAIT_TIME(); @@ -1358,28 +1395,28 @@ LIMIT 1", // Is the last salt there? if (is_null($SURFBAR_CACHE['last_salt'])) { // Then repair it wit the static! - //DEBUG_LOG(__FUNCTION__, __LINE__, "last_salt - FIXED!"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "last_salt - FIXED!", false); $SURFBAR_CACHE['last_salt'] = ""; } // END - if // Fix missing last_surfed if ((!isset($SURFBAR_CACHE['last_surfed'])) || (is_null($SURFBAR_CACHE['last_surfed']))) { // Fix it here - //DEBUG_LOG(__FUNCTION__, __LINE__, "last_surfed - FIXED!"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "last_surfed - FIXED!", false); $SURFBAR_CACHE['last_surfed'] = 0; } // END - if // Get base/fixed reward and costs $SURFBAR_CACHE['reward'] = SURFBAR_DETERMINE_REWARD(); $SURFBAR_CACHE['costs'] = SURFBAR_DETERMINE_COSTS(); - //DEBUG_LOG(__FUNCTION__, __LINE__, "BASE/STATIC - reward=".SURFBAR_GET_REWARD()."|costs=".SURFBAR_GET_COSTS().""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "BASE/STATIC - reward=".SURFBAR_GET_REWARD()."|costs=".SURFBAR_GET_COSTS()."", false); // Only in dynamic model add the dynamic bonus! if ($_CONFIG['surfbar_pay_model'] == "DYNAMIC") { // Calculate dynamic reward/costs and add it $SURFBAR_CACHE['reward'] += SURFBAR_CALCULATE_DYNAMIC_ADD(); $SURFBAR_CACHE['costs'] += SURFBAR_CALCULATE_DYNAMIC_ADD(); - //DEBUG_LOG(__FUNCTION__, __LINE__, "DYNAMIC+ - reward=".SURFBAR_GET_REWARD()."|costs=".SURFBAR_GET_COSTS().""); + //DEBUG_LOG(__FUNCTION__, __LINE__, "DYNAMIC+ - reward=".SURFBAR_GET_REWARD()."|costs=".SURFBAR_GET_COSTS()."", false); } // END - if // Now get the id @@ -1390,7 +1427,7 @@ LIMIT 1", SQL_FREERESULT($result); // Return result - //DEBUG_LOG(__FUNCTION__, __LINE__, "nextId={$nextId}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "nextId={$nextId}", false); return $nextId; } // ----------------------------------------------------------------------------- @@ -1400,7 +1437,7 @@ LIMIT 1", // Private getter for data elements function SURFBAR_GET_DATA ($element) { global $SURFBAR_CACHE; - //DEBUG_LOG(__FUNCTION__, __LINE__, "element={$element}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "element={$element}", false); // Default is null $data = null; @@ -1417,7 +1454,7 @@ function SURFBAR_GET_DATA ($element) { } // Return result - //DEBUG_LOG(__FUNCTION__, __LINE__, "element[$element]={$data}"); + //DEBUG_LOG(__FUNCTION__, __LINE__, "element[$element]={$data}", false); return $data; } // Getter for reward from cache