File size: 4.19Kb
<?php
function frend_random_show() {
$PHTML = null;
$data = db::get_string_all("SELECT `USER_ID` FROM `FREND_RANDOM` WHERE `MY_ID` = ? ORDER BY RAND() DESC LIMIT 15", [user('ID')]);
while ($list = $data->fetch()) {
if (db::get_column("SELECT COUNT(*) FROM `USERS` WHERE `ID`= ? LIMIT 1", [$list['USER_ID']]) > 0) {
$PHTML .= "
<a href='/id".$list['USER_ID']."'>
<div style='border: 1px #CCD7DE solid; position: relative; width: 85px; height: 85px; display: inline-block; overflow: hidden; background-color: #CCD7DE; margin-top: 7px; margin-left: 2px; margin-right: 2px; border-radius: 10px;'>
<span style='position: relative; top: -23px; left: -23px'>".user::avatar($list['USER_ID'], 135, 0)."</span>
<div style='text-align: center; color: white; font-size: 11px; font-weight: bold; position: absolute; bottom: 0; left: 0; width: 85px; padding: 5px; box-sizing: border-box; background: rgba(85, 85, 85, 0.8)'>
".crop_text(user::login_mini($list['USER_ID']),0,7)."
</div>
</div>
</a>
";
}
}
if (str($PHTML) > 0 && user('ID') > 0) {
?>
<div class='list' style='padding-top: 12px; padding-bottom: 12px; padding-left: 0px; padding-right: 0px'><b style='margin-left: 15px'><?=icons('user-plus', 17, 'fa-fw')?> <?=lg('Возможно, вы знакомы')?>?</b>
<div class='menu_user_optimize'>
<div class='menu_user_container bbs_op' style='height: 101px; padding-left: 45px; padding-right: 45px; border-top: 0px; border-bottom: 0px'>
<?=$PHTML?>
<a href='/account/friends/random/'>
<div style='border: 1px #CCD7DE solid; position: relative; width: 85px; height: 85px; display: inline-block; overflow: hidden; background-color: #D4E2E8; margin-top: 7px; margin-left: 2px; margin-right: 2px; border-radius: 10px;'>
<span style='font-size: 18px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%)'><?=lg('все')?></span>
</div>
</a>
</div>
<a class='menu_user_for_left' style='height: 101px; line-height: 96px' ajax='no' id='bbs_for' data-factor='-1'><?=icons('angle-left', 35)?></a>
<a class='menu_user_for_right' style='height: 101px; line-height: 96px' ajax='no' id='bbs_for' data-factor='1'><?=icons('angle-right', 35)?></a>
</div>
</div>
<?
}
}
function frend_random_delete() {
$fr_data = db::get_string_all("SELECT `USER_ID` FROM `FRIENDS` WHERE `MY_ID` = ? AND `ACT` = '0'", [user('ID')]);
while ($fr_list = $fr_data->fetch()) {
db::get_set("DELETE FROM `FREND_RANDOM` WHERE `MY_ID` = ? AND `USER_ID` = ? LIMIT 1", [user('ID'), $fr_list['USER_ID']]);
}
}
function frend_random($id) {
//$id - id юзера
if (db::get_column("SELECT COUNT(*) FROM `FREND_RANDOM` WHERE `MY_ID` = ? AND `USER_ID` = ? LIMIT 1", [user('ID'), $id]) == 0) {
db::get_add("INSERT INTO `FREND_RANDOM` (`USER_ID`, `MY_ID`) VALUES (?, ?)", [$id, user('ID')]);
}
}
function frend_random_add($time = 3600, $limit = 30) {
//$time - интервал 1 цикла
//$limit - сколько новых предложений добавлять за 1 цикл
if (user('ID') > 0 & intval(session('fr_started')) < TM) {
$s = 0;
$fr_data = db::get_string_all("SELECT b.`MY_ID` FROM `FRIENDS` AS a INNER JOIN `FRIENDS` AS b ON (b.`USER_ID` = a.`USER_ID` AND b.`MY_ID` != ?) WHERE a.`MY_ID`= ? AND a.`ACT` = '0' AND b.`ACT` = '0' GROUP BY b.`MY_ID` ORDER BY RAND() DESC LIMIT ".$limit, [user('ID'), user('ID')]);
while ($fr_list = $fr_data->fetch()) {
if (db::get_column("SELECT COUNT(*) FROM `USERS` WHERE `ID`= ? LIMIT 1", [$fr_list['MY_ID']]) > 0) {
$s = 1;
frend_random($fr_list['MY_ID']);
}
}
if ($s == 0) {
$fr_data = db::get_string_all("SELECT `USER_ID` FROM `USERS_SETTINGS` WHERE (`CITY`= ? OR `COUNTRY`= ?) AND `USER_ID` != ? ORDER BY RAND() DESC LIMIT ".$limit, [settings('CITY'), settings('COUNTRY'), user('ID')]);
while ($fr_list = $fr_data->fetch()) {
frend_random($fr_list['USER_ID']);
}
}
session('fr_started', (TM + $time));
}
frend_random_delete();
}