<?
require('ini.php');
$link=connect();
$user=login('nick,loc');
@$mod=$_GET['mod'];
@$manage = $_GET['manage'];
head('Контакт-лист');
echo '<small>';
switch($mod){
default:
@$contacts=mysql_fetch_row(mysql_query("select count(id) from wip_contacts where uid='$user[id]';"));
echo '<b>Контакт лист:</b><br/>';
echo '<a href="search.php?sid='.$sid.'">Добавить/найти юзеров</a><br/>';
if($manage != 1) echo '[<a href="contacts.php?sid='.$sid.'&manage=1">Управление контактами</a>]<br/>';
else echo '[<a href="contacts.php?sid='.$sid.'">Обычный режим</a>]<br/>';
echo '---<br/>';
$select=mysql_query("select c.cid as cid, c.added as added, c.nick as nick, u.online as time, c.msg as msg from wip_contacts as c, wip_users as u where c.uid='$user[id]' and c.cid=u.id order by u.online desc;");
if (mysql_affected_rows()<1){
echo 'Список пуст!<br/>';
}
else {
$contacts=array();
while($res=mysql_fetch_assoc($select)){
if($res['msg']) $sts='msg';
elseif(!$res['added']) $sts='nc';
elseif($res['time']>(time()-300)) $sts='on';
else $sts='off';
$contacts[$sts][]=array($res['cid'],$res['nick'],$res['msg']);
}
$statuses=array('on'=>'Онлайн:', 'off'=>'Оффлайн:', 'nc'=>'Не в списке:', 'msg'=>'<b>Новые сообщения:</b>');
$stat=false;
foreach ($contacts as $key=>$val){
if($key!=$stat){
$stat=$key;
echo $statuses[$key].'<br/>';
}
foreach($val as $us){
echo '<a href="talk.php?sid='.$sid.'&uid='.$us[0].'">'.$us[1].'</a> ';
if(@$us[2]) echo '['.$us[2].'] ';
echo '<a href="user.php?sid='.$sid.'&uid='.$us[0].'">[i]</a> ';
if($manage ==1) echo '[<a href="contacts.php?sid='.$sid.'&mod=del&uid='.$us[0].'&manage=1">удал.</a>]';
if($stat=='nc') echo '[<a href="contacts.php?sid='.$sid.'&mod=add&uid='.$us[0].'">Добав.</a>/<a href="contacts.php?sid='.$sid.'&mod=del&uid='.$us[0].'">Удал.</a>]';
echo '<br/>';
}
}
}
break;
case 'add':
@$uid=intval($_GET['uid']);
$select=mysql_query("select nick from wip_users where id='$uid';");
if(mysql_affected_rows()<1){
echo 'Нет такого юзера!<br/>';
break;
}
$res=mysql_fetch_row($select);
mysql_query("select cid from wip_contacts where cid='$uid' and uid='$user[id]';");
if(mysql_affected_rows()<1) mysql_query("insert into wip_contacts set uid='$user[id]', nick='$res[0]', cid='$uid', added='1';");
else mysql_query("update wip_contacts set added='1' where uid='$user[id]' and cid='$uid';");
echo 'Юзер <b>'.$res[0].'</b> добавлен в список контактов!<br/>';
break;
case 'del':
@$act=$_GET['act'];
@$uid=intval($_GET['uid']);
$select=mysql_query("select nick from wip_users where id='$uid';");
if(mysql_affected_rows()<1){
echo 'Нет такого юзера!<br/>';
break;
}
$nk=mysql_fetch_row($select);
mysql_query("select cid from wip_contacts where cid='$uid' and uid='$user[id]';");
if(mysql_affected_rows()<1){
echo 'Этого юзера нет в Вашем списке контактов!<br/>';
break;
}
if(!$act){
echo 'Вы действительно хотите удалить из своего контакт-листа юзера <b>'.$nk[0].'</b>?<br/>';
echo '<a href="contacts.php?sid='.$sid.'&mod=del&act=ok&uid='.$uid.'&manage=1">Да</a>/<anchor>Нет<prev/></anchor><br/>';
break;
}
mysql_query("DELETE FROM `wip_contacts` WHERE uid='".$user['id']."' AND `cid`='".$uid."';");
# Если удаляем юзера, но сами находимся в его КЛ, историю сообщений не удаляем
mysql_query("SELECT `cid` FROM `wip_contacts` WHERE `cid`='".$user['id']."' AND `uid`='".$uid."';");
if(mysql_affected_rows()<1){
mysql_query("DELETE FROM `wip_talk` WHERE uid='".$user['id']."' AND `to`='".$uid."';");
mysql_query("DELETE FROM `wip_talk` WHERE uid='".$uid."' AND `to`='".$user['id']."';");
}
###
echo 'Юзер удалён!<br/>';
break;
}
if($manage==1) $add_man = '&manage=1';
else $add_man =false;
echo '---<br/>';
if($mod) echo '<a href="contacts.php?sid='.$sid.$add_man.'">Контакт-лист</a><br/>';
if(in_array($user['loc'], $locs)) echo '<a href="'.$user['loc'].'.php?sid='.$sid.'">'.$locs[$user['loc']].'</a><br/>';
echo '<a href="enter.php?sid='.$sid.'">Главное меню</a>';
echo '</small>';
foot();
mysql_close($link);
?>