<?php
$setup_duel=parse_ini_file(H.'mdmxduel/#inc/setup.ini',true);
$set_duel=$setup_duel['DEFAULT'];//$set_duel['victory_balls'] $set_duel['vote_balls']
unset($setup_duel);
/*/
foreach($set_duel as $key=>$val)
{
echo $key." - ".$val."<br />";
}
/*/
// Незавершенные и заявки без ответа
$old_duel=mysql_fetch_array(mysql_query("SELECT * FROM `md_duel` WHERE (`status`='created' OR `status`='submit') AND `submit`<('$time'-86400) LIMIT 1"),MYSQL_ASSOC);
if($old_duel)
{
include_once H.'mdmxduel/#inc/deleted.md';
}
#echo mysql_error()."<br />";
// Проверка завершенных дуэлей
$duel=mysql_fetch_array(mysql_query("SELECT * FROM `md_duel` WHERE `status`='active' AND `stop_time`<'$time' LIMIT 1"),MYSQL_ASSOC);
if($duel) //Если найдена
{
//
#echo "Просроченная дуэль<br />";
// Определить победителя
if($duel['vote_a']>$duel['vote_b']){$d_victory_id=$duel['a'];$d_victory_l='a';$d_novic_l='b';}else{$d_victory_id=$duel['b'];$d_victory_l='b';$d_novic_l='a';}
if($duel['vote_a']==$duel['vote_b']){$d_victory_id=0;} //Нет победителя
// Начислить победителю баллов
$priz=false;
//$duel_lid=0;
if($d_victory_id>0)
{
mysql_query("UPDATE `user` SET `balls`=(`balls`+$set_duel[victory_balls]) WHERE `id`='$d_victory_id' LIMIT 1");
if(mysql_affected_rows()>0){$priz=true;}
// Отослать победителю уведомление
$novic=$duel['nick_'.$d_novic_l];
$hotpost="Поздравляем!\nВы выиграли в поединке против [url=".M."info.php?id=$duel[$d_novic_l]]$novic [/url]"; //
if($priz){$hotpost.="\nВам начислено $set_duel[victory_balls] баллов за победу!";}
mysql_query("INSERT INTO `mail` SET
`id_user`='',
`id_kont`='$d_victory_id',
`time`='$time',
`msg`='$hotpost',
`read`='0'
");
#echo mysql_error()."<br />";
// Отослать проигравшему уведомление
$novic=$duel['nick_'.$d_victory_l];
$d_novictory_id=$duel[$d_novic_l];
$hotpost="К сожалению Вы проиграли в поединке против [url=".M."info.php?id=$duel[$d_victory_l]]$novic [/url]. \n Не отчаивайтесь, в следующий раз Вам обязательно повезет!"; //
#if($priz){$hotpost.="\nВам начислено 1000 баллов за победу!";}
mysql_query("INSERT INTO `mail` SET
`id_user`='',
`id_kont`='$d_novictory_id',
`time`='$time',
`msg`='$hotpost',
`read`='0'
");
}
if($duel['vote_a']==$duel['vote_b']) //Если нет победителя
{
$hotpost="Дуэль между [url=".M."info.php?id=$duel[a]]$duel[nick_a] [/url] и [url=".M."info.php?id=$duel[b]]$duel[nick_b] [/url] закончилась в ничью!";
//
mysql_query("INSERT INTO `mail` SET
`id_user`='',
`id_kont`='$duel[a]',
`time`='$time',
`msg`='$hotpost',
`read`='0'
");
//
mysql_query("INSERT INTO `mail` SET
`id_user`='',
`id_kont`='$duel[b]',
`time`='$time',
`msg`='$hotpost',
`read`='0'
");
}
// Очистить таблицу голосований
mysql_query("DELETE FROM `md_duel_vote` WHERE `duel_id` = '$duel[id]'");
//Удалить фото из временной папки
@unlink(H."mdmxduel/photos/$duel[a_photos]");
@unlink(H."mdmxduel/photos/$duel[b_photos]");
// Обновить статус дуэлей
mysql_query("UPDATE `md_duel` SET `status`='stop', `lider`='$d_victory_id' WHERE `id`='$duel[id]' LIMIT 1");
// Оптимизировать обе таблицы
mysql_query("OPTIMIZE TABLE `md_duel_vote`,`md_duel`");
}
// Обработчик голосований
if($user and isset($_POST['duel']) and isset($_POST['group']))
{
$duel_id=intval(abs($_POST['duel']));
if($_POST['group']!='a'){$group_l='b';}else{$group_l='a';}
#echo $group_l."<br />";
$err="";
$duel=mysql_fetch_array(mysql_query("SELECT * FROM `md_duel` WHERE `status`='active' AND `stop_time`>'$time' AND `id`='$duel_id'"),MYSQL_ASSOC);
if(!$duel){$err.="Дуэль не найдена!<br />";}
// Проверка голосования
if(mysql_result(mysql_query("SELECT COUNT(*) FROM `md_duel_vote` WHERE `duel_id` = '$duel[id]' AND `uid` = '$user[id]'"),0)>0)
{
$err.="Вы уже проголосовали в этой дуэли!<br />";
}
//
if($err=="")
{
$n_id_vote=intval($duel[$group_l]);
#echo $duel[$group_l]."<br />";
//Вставка голоса
mysql_query("INSERT INTO `md_duel_vote` SET
`duel_id`='$duel[id]',
`nick`='$user[nick]',
`uid`='$user[id]',
`id_vote`='$n_id_vote',
`time_vote`='$time'
");
if(mysql_affected_rows()>0)
{
//Обновление данных дуэли
$group="vote_$group_l";
#echo $group."<br />";
mysql_query("UPDATE `md_duel` SET `$group`=(`$group`+'1') WHERE `id`='$duel[id]' LIMIT 1");
$nick_vote=$duel['nick_'.$group_l];
if(mysql_affected_rows()>0){$_SESSION['msg'].="Вы успешно проголосовали за $nick_vote<br />";}
//Обновление баланса пользователя
mysql_query("UPDATE `user` SET `balls`=(`balls`+$set_duel[vote_balls]) WHERE `id`='$user[id]' LIMIT 1");
if(mysql_affected_rows()>0){$_SESSION['msg'].="На Ваш баланс начислено $set_duel[vote_balls] баллов!<br />";}
$log_file=H."mdmxduel/#d_log/$duel[id].log";
$nick_vote=$duel['nick_'.$group_l];
$log_text="\n".date("G:i")." Пользователь [url=".M."info.php?id=$user[id]][b]$user[nick] [/b][/url] голосует в пользу [url=".M."info.php?id=$duel[$group_l]][b]$nick_vote [/b][/url]";
addToLog($log_file,$log_text);
}
}
#echo $err."<br />";
$_SESSION['err'].=$err;
if(!isset($_GET['page'])){$_GET['page']=1;}
header("Location: ?page=".my_esc($_GET['page']));
exit;
}
//
$all=mysql_result(mysql_query("SELECT count(*) FROM `md_duel` WHERE `status`='active' AND `stop_time`>'$time'"),0);
$pnumber=1; //Элементов на страницу
if(!isset($_GET['page'])){$_GET['page']=1;}
//$n=new Navigator($all,$pnumber);
$n=k_page($all,$pnumber);
if($_GET['page']=='end'){$page=$n;}
else{$page=intval($_GET['page']);}
if($page<1){$page=1;}
$start=$page*$pnumber-$pnumber;
if($start<1){$start=0;}
$active_duels=mysql_query("SELECT * FROM `md_duel` WHERE `status`='active' AND `stop_time`>'$time' ORDER BY `stop_time` ASC LIMIT $start,$pnumber");
if(mysql_num_rows($active_duels)>0)
{
echo "<div class='main_menu'>Активных дуэлей $all</div>"; //
$star_img=M."style/icons/rekl.png";
echo "<table width='100%' border='0'>"; // alignt='center'
while($data_duel=mysql_fetch_array($active_duels, MYSQL_ASSOC))
{
echo "<tr class='msg'><td width='45%'>";
echo "<img src='".M."mdmxduel/photos/$data_duel[a_photos]' width='50' /><br />";
if($user)
{
echo "<form action='' method='post'>
<input type='hidden' name='duel' value='$data_duel[id]' />
<input type='hidden' name='group' value='a' />
<input type='submit' name='vote' value='ЗА!' />
</form>";
}
if($data_duel['vote_a']>$data_duel['vote_b']){echo "<img src='$star_img' alt='' /> ";}
echo "<a href='".M."info.php?id=$data_duel[a]'>$data_duel[nick_a]</a> [$data_duel[vote_a]]<br />";
echo "</td>";
echo "<td>";
echo "<a href='?a=dviews&d=$data_duel[id]'>- VS -</a>";
echo "</td>";
echo "<td width='45%'>";
echo "<img src='".M."mdmxduel/photos/$data_duel[b_photos]' width='50' /><br />";
if($user)
{
echo "<form action='' method='post'>
<input type='hidden' name='duel' value='$data_duel[id]' />
<input type='hidden' name='group' value='b' />
<input type='submit' name='vote' value='ЗА!' />
</form>";
}
if($data_duel['vote_b']>$data_duel['vote_a']){echo "<img src='$star_img' alt='' /> ";}
echo "<a href='".M."info.php?id=$data_duel[b]'>$data_duel[nick_b]</a> [$data_duel[vote_b]]<br />";
echo "</td></tr>";
echo "<tr><td class='p_m' colspan='3'>";
#echo "Информация о дуэли";
if($n>1){echo str($link="?",$n,$page);}
//Здесь вывод лог файла
$log_file=H."mdmxduel/#d_log/$data_duel[id].log";
#echo $log_file."<br />";
if(file_exists($log_file))
{
$log=file($log_file);
$log=array_reverse($log,false);
//
$all=(count($log)-1);
$pnumber=$user['set_p_str']; //Элементов на страницу
if(!isset($_GET['pgl'])){$_GET['pgl']=1;}
//
$n=k_page($all,$pnumber);
if($_GET['pgl']=='end'){$pgl=$n;}
else{$pgl=intval($_GET['pgl']);}
if($pgl<1){$pgl=1;}
$start=$pgl*$pnumber-$pnumber;
if($start<1){$start=0;}
//
for($i=$start;$i<=($start+$pnumber);$i++)
{
if(isset($log[$i]))echo output_text($log[$i]."\r");
}
if($n>1){echo str2($link="?page=$page&",$n,$pgl,'pgl');}
}else{echo "Нет лог файла!<br />";}
echo "</td></tr>";
}
echo "</table>";
}else{echo "<div class='err'>Нет активных дуэлей!</div>";}
?>