<?php
/*
* ////////////////////////////////////////////////////////////////////////////////
* // JohnCMS                             Content Management System              //
* // Официальный сайт сайт проекта:      http://johncms.com                     //
* // Дополнительный сайт поддержки:      http://gazenwagen.com                  //
* ////////////////////////////////////////////////////////////////////////////////
* // JohnCMS core team:                                                         //
* // Евгений Рябинин aka john77          john77@gazenwagen.com                  //
* // Олег Касьянов aka AlkatraZ          alkatraz@gazenwagen.com                //
* //                                                                            //
* // Информацию о версиях смотрите в прилагаемом файле version.txt              //
* ////////////////////////////////////////////////////////////////////////////////
* // Лотерея                                                                    //
* // Автор Regan                                                                //
* ////////////////////////////////////////////////////////////////////////////////
*/
define('_IN_JOHNCMS', 1);

$headmod = 'game_lottery';
$textl = 'Лотерея';
$rootpath = '../../';
require_once ("../../incfiles/core.php");
require_once ("../../incfiles/head.php");

if ($user_id) {

    switch ($act) {
        case "hod":
            $ms = mysql_fetch_array(mysql_query("SELECT *
			FROM `game` 
			WHERE type='lottery' and users='" . $user_id . "' LIMIT 1;"));

            if (!$ms['dump']) {

                echo functions::display_error("Для игры необходимо купить билет!");
                echo "<div class='menu'><a href='?act=ticket'>Купить билет</a></div>";
                require_once ("../../incfiles/end.php");
                exit;
            }

            $motion = abs(intval($_POST['motion']));

            if ($motion < 0 or $motion > 11) {
                header("Location: ?act=game");
            }

            $ticket = unserialize($ms['dump']);

            switch ($motion) {
                case 0:
                    if ($ticket[6] == "3" or $ticket[6] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[6] == 0) {
                            $ticket[6] = '3';
                        } else {
                            $act = "1";
                            $ticket[6] = '4';
                        }
                        break;
                case 1:
                    if ($ticket[6] == "3" or $ticket[6] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[6] == 1) {
                            $ticket[6] = '3';
                        } else {
                            $act = "1";
                            $ticket[6] = '4';
                        }
                        break;
                case 2:
                    if ($ticket[5] == "3" or $ticket[5] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[5] == 0) {
                            $ticket[5] = '3';
                        } else {
                            $act = "1";
                            $ticket[5] = '4';
                        }
                        break;
                case 3:
                    if ($ticket[5] == "3" or $ticket[5] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[5] == 1) {
                            $ticket[5] = '3';
                        } else {
                            $act = "1";
                            $ticket[5] = '4';
                        }
                        break;

                case 4:
                    if ($ticket[4] == "3" or $ticket[4] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[4] == 0) {
                            $ticket[4] = '3';
                        } else {
                            $act = "1";
                            $ticket[4] = '4';
                        }
                        break;
                case 5:
                    if ($ticket[4] == "3" or $ticket[4] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[4] == 1) {
                            $ticket[4] = '3';
                        } else {
                            $act = "1";
                            $ticket[4] = '4';
                        }
                        break;

                case 6:
                    if ($ticket[3] == "3" or $ticket[3] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[3] == 0) {
                            $ticket[3] = '3';
                        } else {
                            $act = "1";
                            $ticket[3] = '4';
                        }
                        break;
                case 7:
                    if ($ticket[3] == "3" or $ticket[3] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[3] == 1) {
                            $ticket[3] = '3';
                        } else {
                            $act = "1";
                            $ticket[3] = '4';
                        }
                        break;

                case 8:
                    if ($ticket[2] == "3" or $ticket[2] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[2] == 0) {
                            $ticket[2] = '3';
                        } else {
                            $act = "1";
                            $ticket[2] = '4';
                        }
                        break;
                case 9:
                    if ($ticket[2] == "3" or $ticket[2] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[2] == 1) {
                            $ticket[2] = '3';
                        } else {
                            $act = "1";
                            $ticket[2] = '4';
                        }
                        break;

                case 10:
                    if ($ticket[1] == "3" or $ticket[1] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[1] == 0) {
                            $ticket[1] = '3';
                        } else {
                            $act = "1";
                            $ticket[1] = '4';
                        }
                        break;
                case 11:
                    if ($ticket[1] == "3" or $ticket[1] == "4") {
                        header("Location: ?act=game");
                    } else
                        if ($ticket[1] == 1) {
                            $ticket[1] = '3';
                        } else {
                            $act = "1";
                            $ticket[1] = '4';
                        }
                        break;
            }

            if ($ticket[1] == 3) {
                $sum = 1;
                if ($ticket[2] == 3) {
                    $sum = 2;
                    if ($ticket[3] == 3) {
                        $sum = 3;
                        if ($ticket[4] == 3) {
                            $sum = 4;
                            if ($ticket[5] == 3) {
                                $sum = 5;
                                if ($ticket[6] == 3) {
                                    $sum = 6;
                                    $act = "3";

                                }
                            }
                        }
                    }
                }
            }

            $ticket = serialize($ticket);

            mysql_query("UPDATE `game` SET
			`dump`='" . $ticket . "',
			`act`='" . (int)$act . "',
			`sum`='" . (int)$sum . "'
			WHERE type='lottery' and  users='" . $user_id . "' LIMIT 1;") or die('Error: UPDATE game');

            header("Location: ?act=game");
            break;

            ////////////////////////////////////////////////////
            // Играем                                         //
            ////////////////////////////////////////////////////
        case "game":
            $ms = mysql_fetch_array(mysql_query("SELECT *
			FROM `game` 
			WHERE type='lottery' and  users='" . $user_id . "' LIMIT 1;"));

            if (!$ms['dump']) {
                echo "<div class='phdr'>Лотерея</div>";
                echo functions::display_error("Для игры необходимо купить билет!");
                echo "<div class='menu'><a href='?act=ticket'>Купить билет</a></div>";
                require_once ("../../incfiles/end.php");
                exit;
            }

            echo "<div class='phdr'>Мой билет</div>";

            $ticket = unserialize($ms['dump']);

            echo "<table align=\"absmiddle\" width=\"50\" height=\"30\" bgcolor=\"#D2D2D2\" bordercolor=\"#D2D2D2\" bordercolordark=\"#2D2D2D\" bordercolorlight=\"#5A5A5A\"><tr>";

            for ($i = 0; $i < 12; $i++) {

                switch ($i) {
                    case 0:
                    case 1:
                        $tickets = $ticket[6];
                        $value = '1000';
                        break;
                    case 2:
                    case 3:
                        $tickets = $ticket[5];
                        $value = '700';
                        break;
                    case 4:
                    case 5:
                        $tickets = $ticket[4];
                        $value = '500';
                        break;
                    case 6:
                    case 7:
                        $tickets = $ticket[3];
                        $value = '250';
                        break;
                    case 8:
                    case 9:
                        $tickets = $ticket[2];
                        $value = '100';
                        break;
                    case 10:
                    case 11:
                        $tickets = $ticket[1];
                        $value = '50';
                        break;
                }

                switch ($tickets) {
                    case 4:
                        echo '<td><input type="submit"
				style="width: 50px; 
				height: 30px; 
				font-size: 12px; 
				background-color: red; 
				border: 1 solid #C0C0C0;" 
				value="' . $value . '"/></td>';
                        break;
                    case 3:
                        echo '<td><input type="submit"
				style="width: 50px; 
				height: 30px; 
				font-size: 12px; 
				background-color: green; 
				border: 1 solid #C0C0C0;" 
				value="' . $value . '"/></td>';
                        break;
                    default:
                        if ($ms['act'] == 1) {
                            echo '<td><input type="submit"
				style="width: 50px; 
				height: 30px; 
				font-size: 12px; 
				background-color:  #747474; 
				color: #CCCCCC; 
				border: 1 solid #C0C0C0;" 
				value="' . $value . '"/></td>';
                        } else {
                            echo '<td><form action="?act=hod" method="POST"><input type="hidden" name="motion" value="' .
                                $i . '"/>
				<input type="submit"
				style="width: 50px; 
				height: 30px; 
				font-size: 12px; 
				background-color: #747474; 
				color: #CCCCCC; 
				border: 1 solid #C0C0C0;" 
				value="' . $value . '"/></form></td>';
                        }
                }

                if ($i == 1 or $i == 3 or $i == 5 or $i == 7 or $i == 9 or $i == 11) {
                    echo "</tr><tr>";
                }
            }
            echo "</tr></table>";

            if ($ms['act'] == 1) {
                echo "<div class='rmenu'><b>Билет испорчен</b><br />";
                echo "<a href='?act=ticket'>Купить еще</a>  (".$datauser['balans'].")";
                echo '<br/><a href="?">Правила</a>';
                echo '<br/><a href="../?">В раздел</a></div>';
            } elseif ($ms['act'] == 3) {
                echo '<div class="gmenu"><h3><span class="green">Выигрышный билет!</span></h3>';
                echo "Сумма: <b>1000!!!</b><br/>";
                echo "<a href='?act=winning'>Забрать выигрыш</a>";
                echo '<br/><a href="?">Правила</a>';
                echo '<br/><a href="../?">В раздел</a></div>';
            } else {
                echo "<div class='menu'>";
                echo "<a href='?act=winning'>Забрать выигрыш</a>";
                echo '<br/><a href="?">Правила</a>';
                echo '<br/><a href="../?">В раздел</a></div>';
            }
            break;
        case "winning":

            echo "<div class='phdr'>Лотерея</div>";

            $ms = mysql_fetch_array(mysql_query("SELECT *
			FROM `game` 
			WHERE type='lottery' and  users='" . $user_id . "' LIMIT 1;"));

            if (!$ms['dump']) {
                echo functions::display_error("Для игры необходимо купить билет!");
                echo "<div class='menu'><a href='?act=ticket'>Купить билет</a></div>";
                require_once ("../../incfiles/end.php");
                exit;
            }

            if ($ms['act'] == 1) {
                echo functions::display_error("Билет испорчен!");
                echo "<div class='menu'><a href='?act=ticket'>Купить билет</a></div>";
                require_once ("../../incfiles/end.php");
                exit;
            }

            $add = array('0' => '25', '1' => '50', '2' => '100', '3' => '250', '4' => '500', '5' => '700',
                '6' => '1000');

            $balans = ($datauser['balans'] + $add[$ms['sum']]);
            mysql_query("update `users` set balans='" . $balans . "' where id='" . $user_id .
                "' LIMIT 1;");

            mysql_query("DELETE FROM `game` WHERE type='lottery' and 
			users='" . $user_id . "';");

            echo "<div class='menu'>";
            echo $ms['sum']!=0 ? "<b>Выигрыш снят</b>" : "<b>Вы сдали билет</b>";
            echo "<br />Сумма: " . $add[$ms['sum']] . "<br />";
            echo "<a href='?act=ticket'>Купить еще</a>  (".$datauser['balans'].")";
            echo '<br/><a href="?">Правила</a>';
            echo '<br/><a href="../?">В раздел</a></div>';

            break;
        case "ticket":

            if ($datauser['balans'] > 50) {

                mysql_query("DELETE FROM `game` WHERE type='lottery' and
				(`act`='1' or `act`='2');");

                $s['1'] = rand(0, 1);
                $s['2'] = rand(0, 1);
                $s['3'] = rand(0, 1);
                $s['4'] = rand(0, 1);
                $s['5'] = rand(0, 1);
                $s['6'] = rand(0, 1);

                mysql_query("INSERT INTO `game` SET
				`users`='" . $user_id . "',
				`dump`='" . serialize($s) . "',
				`type`='lottery'
				;") or die('Error: INSERT INTO game');

                $balans = ($datauser['balans'] - 50);
                mysql_query("update `users` set balans='" . $balans . "' where id='" . $user_id .
                    "' LIMIT 1;");

                header("Location: ?act=game");
            } else {
                echo "<div class='phdr'>Лотерея</div>";
                echo functions::display_error("Недостаточно баллов для покупки билета!");
                echo "<div class='menu'><a href='../?'>В раздел</a></div>";
                require_once ("../../incfiles/end.php");
                exit;
            }
            break;
            ////////////////////////////////////////////////////
            // Главная                                        //
            ////////////////////////////////////////////////////
        default:
            echo "<div class='phdr'>Лотерея</div>";
            echo "<div class='gmenu'>Правила:<br />Билет состоит из двух столбиков с указанием предпологаемой суммы выигрыша. Для победы необходимо угадать какая из двух ячеек с одинаковыми цифрами является выигрышной и кликнуть на нее. <br/>При ошибке все достижения списываются и билет считается испорченым. Горизонтальные столбики с двумя ячейками можно открывать не по порядку, но конечный выигрыш будет считатся снизу вверх. В любой момент вы можете забрать выиграные баллы. Цена билета 50 баллов. <b>Удачи!</b></div><div class='menu'><a href='?act=ticket'>Купить билет</a>";
            echo '<br /><a href="../?">В раздел</a></div>';
            break;

    }
} else {
    echo functions::display_error("Игра доступна только для зарегистрированых пользователей сайта");
    echo "<div class='menu'><a href='../?'>В раздел</a></div>";   
}

require_once ("../../incfiles/end.php");

?>