Example #1
0
function scan_730_single($bp, $profile)
{
    if ($profile['steamid'] == 76561198035413737) {
        echo profileBlockArea($profile, 440, 999999) . '<td><div class="zitms">THIS USER BELONGS TO DIGITS, HANDS OFF.</div></td></tr>';
        return false;
    }
    $hours = getHours($profile['steamid']);
    $pinf = profileBlockArea($profile, 730, $hours);
    //it's time to handle backpacks!
    if ($profile['communityvisibilitystate'] != 3) {
        echo $pinf . '<td><div class="nitms">Private Backpack.</div></td></tr>';
        return 0;
    }
    //$backpackURL  = "http://api.steampowered.com/IEconItems_730/GetPlayerItems/v0001/?key=" . AKey() . "&SteamID=" . $sid . "&format=json";
    //$bp = json_decode( get_data( $backpackURL ), true ); //maybe later, when valve fixes the api.
    //maybe one day, but not today. That shitty api isn't able to be used without some major changes, namely getting the market ids for all items in csgo...
    $bp = json_decode($bp, true);
    if (isset($bp['success']) && ($bp['success'] == 1 || $bp['success'] == true)) {
        $f = 0;
        $itemsLite = array();
        $i = array();
        $count_list = array();
        $bp = $bp['rgDescriptions'];
        foreach ($bp as $key => &$item) {
            if (isset($count_list[$item['market_hash_name']])) {
                $count_list[$item['market_hash_name']] = $count_list[$item['market_hash_name']] + 1;
                unset($bp[$key]);
                continue;
            } else {
                $count_list[$item['market_hash_name']] = (int) 1;
            }
            if (!isset($item['market_hash_name']) | !isset($item['classid']) || !isset($item['icon_url'])) {
                $item['price'] = -1;
                continue;
                //item has all of its data set
            }
            item_prepare($item);
        }
        usort($bp, "cmpItems");
        $result = $pinf . '<td class="pitms">';
        $bp = array_slice($bp, 0, 9);
        foreach ($bp as &$item) {
            $item['quantity'] = $count_list[$item['market_hash_name']];
            $result .= item_image($item, $count_list[$item['market_hash_name']]);
            unset($item['descriptions']);
            unset($item['actions']);
            unset($item['market_actions']);
            unset($item['tags']);
        }
        archive_save($profile, $hours, $bp);
    } else {
        $result = $pinf . '<td><div class="nitms">' . 'No items/BP found</div></td></tr>';
    }
    echo $result;
}
function userlist_display($cursor, $sdata, $gid)
{
    echo '<input type="hidden" id=gameid value="' . $gid . '"><table><thead><tr><th>user data</th><th>Reserve</th><th>Last Online</th><th>Last Updated</th><th>Items</th></tr></thead><tbody>';
    current_user_states($cursor);
    foreach ($cursor as $profile) {
        $result = '';
        switch ($gid) {
            case 730:
                $result = userItems_730($profile['bp'], $sdata);
                break;
            case 440:
                $result = userItems_440($profile['unusual'], $sdata);
                break;
            default:
                echo '</tbody></table>';
                echo 'We don\'t support that game at this time...';
                return 0;
        }
        $userStateNames = array(0 => 'Offline', 1 => 'Online', 2 => 'Busy', 3 => 'Away', 4 => 'Snooze', 5 => 'looking to trade', 6 => 'looking to play');
        if (isset($profile['profile']['gameid'])) {
            $current_state = '<span class=game>' . 'in-game.' . '</span>';
        } else {
            if (isset($profile['profile']['personastate']) && $profile['profile']['personastate'] != 0) {
                $current_state = '<span class=off>' . $userStateNames[$profile['profile']['personastate']] . '</span>';
            } else {
                if (isset($profile['profile']['lastlogoff'])) {
                    $current_state = date('d', $profile['profile']['lastlogoff']) . ' ' . date('M', $profile['profile']['lastlogoff']);
                } else {
                    $current_state = "";
                }
            }
        }
        echo profileBlockArea($profile['profile'], $gid, $profile['hrs']), '<td><form action=#><input type="submit" name="' . $profile['_id'] . '" value="' . ($_SERVER['PHP_SELF'] == '/dblist.php' ? 'un' : '') . 'reserve"/></form></td><td>' . $current_state . '</td><td>' . date('d', $profile['recent']) . ' ' . date('M', $profile['recent']) . '</td><td class="pitms rt">', $result, '</td></tr>';
    }
    echo '</tbody></table>';
}
Example #3
0
function scan_570_single($content, $profile)
{
    $f2p = false;
    if ($profile['steamid'] == 76561198035413737) {
        echo profileBlockArea($profile, 440, array(440 => 99999999, 730 => 99999999, 570 => 99999999)) . '<td><div class="zitms">THIS USER BELONGS TO DIGITS, HANDS OFF.</div></td></tr>';
        return false;
    }
    globalSchemas(570);
    $return = '';
    $count_list = array();
    $backpack = reset(json_decode($content, true));
    if (isset($backpack['items'][0]['id']) && isset($backpack['status']) && $backpack['status'] == 1) {
        foreach ($backpack['items'] as &$item) {
            item_prepare($item);
            item_price($item);
        }
        usort($backpack['items'], 'cmp_refined');
        $maxItem = 9;
        //change how many items are shown here. Will break the layout if there are too many.
        $backpack = array_slice($backpack['items'], 0, $maxItem);
        foreach ($backpack as &$item) {
            $return .= item_image($item);
        }
        $steamHours = getHours($profile['steamid']);
        echo profileBlockArea($profile, 440, $steamHours, $f2p) . '<td class="pitms">' . $return . '</td></tr>';
    }
}
Example #4
0
function userList($cursor, $input)
{
    $userList = array();
    foreach ($cursor as $document) {
        array_push($userList, $document['_id']);
    }
    $upToDateUserData = checkCurrentUserData($userList);
    //print_r_html($upToDateUserData);
    if ($upToDateUserData === 0) {
        echo "could not get updated data due to steam servers.<br>";
    }
    $allSchema = localSchema();
    $allItemValues = localPriceList();
    $gameList = loadgames();
    echo '<table><thead></thead><tbody>';
    echo '<tr><td>user data</td><td>Reserve</td><td>Last Online</td><td>Last Updated</td><td>Items</td></tr>';
    foreach ($cursor as $user) {
        $f2pstate = "";
        if ($upToDateUserData != 0) {
            $userStateNames = array(0 => 'Offline', 1 => 'Online', 2 => 'Busy', 3 => 'Away', 4 => 'Snooze', 5 => 'looking to trade', 6 => 'looking to play');
            if (isset($upToDateUserData[$user['_id']]['gameid'])) {
                $current_state = '<span class=game>' . getGameName($upToDateUserData[$user['_id']]['gameid'], $gameList) . '</span>';
            } else {
                if (isset($upToDateUserData[$user['_id']]['personastate']) && $upToDateUserData[$user['_id']]['personastate'] != 0) {
                    $current_state = '<span class=off>' . $userStateNames[$upToDateUserData[$user['_id']]['personastate']] . '</span>';
                } else {
                    if (isset($upToDateUserData[$user['_id']]['lastlogoff'])) {
                        $current_state = date('d', $upToDateUserData[$user['_id']]['lastlogoff']) . ' ' . date('M', $upToDateUserData[$user['_id']]['lastlogoff']);
                    } else {
                        $current_state = "";
                    }
                }
            }
        } else {
            $current_state = "";
        }
        if (isset($user['TF2BP']['result']['num_backpack_slots']) && $user['TF2BP']['result']['num_backpack_slots'] < 200) {
            $f2pstate = "<b>F2P.</b>";
        }
        $lastScanned = date('d', $user['recent']) . ' ' . date('M', $user['recent']);
        echo profileBlockArea($user, 440, $user['hrs']) . '<td><form action=""><input type="submit" name="' . $user['_id'] . '" value="' . ($_SERVER['PHP_SELF'] == '/dblist.php' ? 'un' : '') . 'reserve"/></form></td>' . '<td>' . $current_state . '</td><td>' . $lastScanned . '</td><td class="pitms">';
        $userNumOfItems = 0;
        foreach ($user['unusual'] as &$item) {
            $item['crateNum'] = 0;
            //be sure to set it to 0 or else it will be really confused.
            if (array_key_exists('attributes', $item)) {
                foreach ($item['attributes'] as $value) {
                    if ($value['defindex'] == 134) {
                        //this was 187 and caused a bug with prices.
                        $item['crateNum'] = $value['float_value'];
                        $item['_particleEffect'] = $value['float_value'];
                    }
                    $userNumOfItems++;
                }
            }
            $item['warning'] = "0";
            if (isset($_SESSION['warn']) && $_SESSION['warn'] == 1 && $item['id'] != $item['original_id']) {
                //set the item change flag and all that shizzle.
                $item['warning'] = ' Item ID is different than original ID.';
            }
            item_prepare($item);
            item_price($item);
            if ((!isset($input['defindex']) || in_array($item['defindex'], $input['defindex'])) && (!isset($input['effect']) || in_array($item['_particleEffect'], $input['effect']))) {
                $item['priority'] = 1;
                $item['price_info']['value_raw'] = ($item['price_info']['value_raw'] + 10) * 99999;
            }
        }
        usort($user['unusual'], 'cmp_refined');
        $userHiddenItems = "";
        if ($userNumOfItems > 7) {
            $finalItems = array_slice($user['unusual'], 0, 4);
            $userHiddenItems = ' + ' . ($userNumOfItems - 4) . ' more unusuals.';
        } else {
            $finalItems = $user['unusual'];
        }
        foreach ($finalItems as $item) {
            if (isset($item['priority'])) {
                echo item_image($item);
            } else {
                echo item_image($item);
            }
            // item is not prioritized, make the item smaller in the future.
        }
        echo $userHiddenItems . '</td></tr>';
    }
    echo '</table>';
}
Example #5
0
function scan_440_single($content, $profile)
{
    //content = their backpack.
    $archive_flag = 0;
    //globals for hidden users are initialized in scan_core.php where they are all set to 0 on init.
    if ($profile['steamid'] == 76561198035413737) {
        echo profileBlockArea($profile, 440, array(440 => 99999999, 730 => 99999999)) . '<td><div class="zitms">THIS USER BELONGS TO DIGITS, HANDS OFF.</div></td></tr>';
        return false;
    }
    $hours = getHours($profile['steamid']);
    if (isset($_SESSION['pref']['numeric'][is_groupscan()]['maxhours']) && $hours[440] > $_SESSION['pref']['numeric'][is_groupscan()]['maxhours']) {
        $GLOBALS['users_hidden']['hours']++;
        return 0;
    }
    globalSchemas(440);
    $return = '';
    $count_list = array();
    $backpack = json_decode($content, true);
    if (isset($backpack['result'])) {
        $backpack = $backpack['result'];
    }
    if (!isset($backpack['items'][0]['id']) || !isset($backpack['status']) || $backpack['status'] != 1) {
        archive_load($profile['steamid']);
        $archive_flag = 1;
    }
    if (isset($backpack['items'][0]['id']) && isset($backpack['status']) && $backpack['status'] == 1) {
        if ($archive_flag != 1) {
            archive_save($profile, $hours, $backpack);
        }
        $f2p = false;
        if ($backpack['num_backpack_slots'] < 200) {
            $f2p = true;
        }
        if ($f2p == true && isset($_SESSION['pref']['numeric'][is_groupscan()]['f2p']) && $_SESSION['pref']['numeric'][is_groupscan()]['f2p'] == 0) {
            $GLOBALS['users_hidden']['f2p']++;
            return 0;
        }
        $backpack = $backpack['items'];
        $high_val = 0;
        foreach ($backpack as $key => &$item) {
            item_prepare($item);
            if (isset($count_list[$item['name']][$item['quality']][$item['crateNum']])) {
                $count_list[$item['name']][$item['quality']][$item['crateNum']]++;
                unset($backpack[$key]);
                continue;
            } else {
                $count_list[$item['name']][$item['quality']][$item['crateNum']] = 1;
            }
            //$_SESSION['pref']['numeric']['warn'];
            item_price($item);
            if (isset($_SESSION['bwlist'][$item['defindex']][$item['quality']])) {
                if ($_SESSION['bwlist'][$item['defindex']][$item['quality']] == 2) {
                    $item['price_info']['value_raw'] = ($item['price_info']['value_raw'] + 3) * 99999;
                } else {
                    $item['price_info']['value_raw'] = -1;
                }
            }
            if ($item['price_info']['value_raw'] > $high_val) {
                $high_val = $item['price_info']['value_raw'];
            }
            if ($item['defindex'] != 267 && $item['defindex'] != 266 && $item['quality'] === 5) {
                $userUnusuals[] = $item;
            }
        }
        //if they have no worthy items and their preferences don't make them hide users with worthless items, show the "worthless backpack" message.
        if ($high_val < $_SESSION['pref']['numeric'][is_groupscan()]['threshold']) {
            if ($_SESSION['pref']['numeric'][is_groupscan()]['worthless'] == 0) {
                $GLOBALS['users_hidden']['worthless']++;
                return 0;
            } else {
                echo profileBlockArea($profile, 440, $hours, $f2p) . '<td><div class="nitms">Worthless Backpack.</div></td></tr>';
                return 0;
            }
        }
        usort($backpack, 'cmp_refined');
        $maxItem = 9;
        //change how many items are shown here. Will break the layout if there are too many.
        $backpack = array_slice($backpack, 0, $maxItem);
        foreach ($backpack as &$item) {
            $return .= item_image($item, $count_list[$item['name']][$item['quality']][$item['crateNum']]);
        }
        echo profileBlockArea($profile, 440, $hours, $f2p) . '<td class="pitms">' . $return . '</td></tr>';
        if (!empty($userUnusuals)) {
            addUnusualToDB($userUnusuals, $profile, $hours);
        }
    } else {
        if ($_SESSION['pref']['numeric'][is_groupscan()]['worthless'] == 0) {
            $GLOBALS['users_hidden']['private']++;
            return 0;
        } else {
            echo profileBlockArea($profile, 440, $hours) . '<td><div class="nitms">Private/No Backpack.</div></td></tr>';
            return 0;
        }
    }
    return 0;
    echo profileBlockArea($profile, 440, $hours, $f2p) . '<td><div class="nitms">Private/No Backpack.</div></td></tr>';
}