<?php
function dbquery($query) {
	$result = @mysql_query($query);
	if (!$result) {
		echo mysql_error();
		return false;
	} else {
		return $result;
	}
}
function dbarray_fetch($query) {
	$result = @mysql_fetch_array($query);
	if (!$result) {
		echo mysql_error();
		return false;
	} else {
		return $result;
	}
}
 
function sqlarray($sql){ //Функция преобразования SQL запроса и его результат в массив. Её надо приравнять какому-то массиву и в нем будет вся инфа.
  $result = @mysql_query($sql);
   if (!$result) {
		echo mysql_error();
		return false;
	} else {
		return mysql_fetch_array($result);
	}
}
class tpl {

    private $title;
    public $module;
    public $error = array();
    public $content;
    public $onlyContent;

    public function changeTitle($str) {
        $this->title = $str;
    }

    public function getTitle() {
        if (empty($this->title))
            return SITENAME;
        else
            return $this->title . ' :: ' . SITENAME;
    }

    public function generate_menu() {
        //...'modulename => array('url','show name', 'descript')...
        $menu = array('servers' => array('/', 'Сервера CS 1.6', 'Список серверов'),
                      'search' => array('/search', 'Поиск', 'Найти сервер'),
					  //'vip' => array('/vip/', 'Платные услуги', 'VIP статус, выделение'),
					  'rkassa' => array('/rkassa/', 'Платные услуги', 'VIP, TOP, выделение'),
					  'masterserv' => array('/masterserv', 'MasterServer', 'Раскрутка серверов'),
					  'topsite' => array('http://serveracs16.ru/pay/', 'Листинг серверов', 'Листинг серверов'),
					  'add' => array('/set/', 'Добавить', 'Добавить сервер'));

        foreach ($menu as $key => $value) {
            if ($key == $this->module) {
                $emenu .= '<li id="nav-' . $key . '" class="current"><a href="' . $value[0] . '">' . $value[1] . '</a><p>' . $value[2] . '</p></li>';
            }
            else {
                if (($key == 'add') and ($this->module == 'view'))
                    $emenu .= '<li id="nav-view" class="current"></li>';
                $emenu .= '<li id="nav-' . $key . '"><a href="' . $value[0] . '">' . $value[1] . '</a><p>' . $value[2] . '</p></li>';
            }
        }

        return $emenu;
		echo "<br>";
    }
	public function head_server() {
	    $top_servers = mysql_query("SELECT address,color FROM top_servera order by data_end_top desc");
		$num_rows=mysql_num_rows($top_servers);
        while ($r = mysql_fetch_array($top_servers)) {
		$q = sqlarray("SELECT * FROM servers WHERE address = '".$r['address']."'");
		$img = '<img src="/img/nomap.png" />';
		if (file_exists($_SERVER{'DOCUMENT_ROOT'}."/img/maps/".$q['map'].".jpg"))
		{$img = '<img src="/img/maps/'.$q['map'].'.jpg" />';}
		$players = $q['players']."/".$q['maxplayers'];
		
		if(!empty($r['color'])){
		$style="class='topstyle$r[color]'";
		} else {
		$style="";
		}
		
		$server_ip = $q['address'];
		echo "<div id=month>";
		echo "<div class=vipmonth>";
		echo "<a href=http://serveracs16.ru/serv-$q[id]>$img </a>";
		echo "<p>Карта:<br><span>$q[map]</span><br><br>Игроки:<br><span>$players</span></p>";
		echo "<div class=fixer></div><div class=nowrap><a href=http://serveracs16.ru/serv-$q[id]>$q[name]</a><br><span $style>$server_ip</span></div>";
		echo "</div>";
		
		}
		while ($num_rows < 35) {
		echo "<div class=vipmonth>";
		echo "<a href=/rkassa/><img src=/img/buy.png /></a>";
		echo "<p>
		Карта:<br /><span>N/A</span><br /><br />
		Игроки:<br />
		<span>unkown</span>
	</p>
	<div class=fixer></div>
	<a href=/rkassa/ class=nowrap>Занять место!</a><br />
	IP:PORT";
		echo "</div>";
		$num_rows++;
		}
		echo "</div>";
		echo "<br>";
		}

	
    public function print_servers($result, $page = 1) {
        $i = 100 * ($page - 1) + 1;
	    $style='';
        while ($r = mysql_fetch_array($result)) {
		
		    if(!empty($r['server_location'])){
			    $style="style='background:$r[server_location];'";
			}
            if (mb_strlen($r['name'], 'utf-8') > 40) {
                $r['name'] = mb_substr($r['name'], 0, 37, 'utf-8') . '...';
                $r['name'] = htmlspecialchars($r['name']);
            }
            if (mb_strlen($r['name'], 'utf-8') == 0) {
                $r['name'] = 'Название сервера не определено';
            }
            $this->content .= "<tr $style>";
            
//            $this->content .= '<td class="c0">' . $i++ . '</td>';
            $this->content .= '<td class="c1"><a href="/serv-' . $r['id'] . '/">' . $r['name'] . '</a>' . ($r['steam'] == 1 ? '<span class="steam"><a rel="nofollow" href="/search?steam=2">steam</a></span>' : '') . '</td>';
            $this->content .= '<td>' . $r['address'] . '</td>';
            if ($r['status'] < 1) {
                $this->content .= '<td><span class="off">Сервер выключен</span></td>';
                $this->content .= '<td class="c4">0/0</td>';
            }
            else {
                $this->content .= '<td><a class="map" href="/search?map=' . $r['map'] . '">' . $r['map'] . '</a></td>';
                $this->content .= '<td class="c4">' . $r['players'] . '/' . $r['maxplayers'] . '</td>';
            }
            if ($r['server_vip'] == 1) {
                $this->content .= '<td class="c5"><a href="/top" class="vip"></a></td>';
            }
            else {
                $this->content .= '<td class="c5"><span class="voteup">' . $r['rating'] . ' <a href="#" title="Проголосовать за сервер" class="vote" rel="vote' . $r['id'] . '"><i class="icons vote"></i></a></span></td>';
            }
            $this->content .= '</tr>' . "\n";
            $style='';
		}
    }


}

