Advertisement
Guest User

Panel

a guest
Feb 1st, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 28.13 KB | None | 0 0
  1. <?php
  2. if(!defined('wcode.ro'))
  3. die('Please contact <a href="http://facebook.ro/bbgaming.ro/">http://facebook.ro/bbgaming.ro/</a> because this website might be banned!');
  4. class Config {
  5. private static $instance;
  6. private static $_perPage = 18;
  7. public static $g_con;
  8. public static $pdo;
  9. public static $htmlpurifier;
  10. public static $_url = array();
  11.  
  12. public static $_PAGE_URL = 'http://wcode.ro/demo/cyan/';
  13. public static $_LEADER_RANK = 6;
  14. public static $jobs = array();
  15. public static $_vehicles = array();
  16. public static $_vehColors = array();
  17.  
  18. public static $_DOMAIN = 'wcode.ro';
  19. public static $_API = 'demo';
  20. public static $_DONATION = 5;
  21.  
  22. private function __construct() {
  23. $db['mysql'] = array(
  24. 'host' => 'localhost',
  25. 'username' => '',
  26. 'password' => '',
  27. 'dbname' => 'wcodero_cyan'
  28. );
  29.  
  30. try {
  31. self::$g_con = new PDO('mysql:host='.$db['mysql']['host'].';dbname='.$db['mysql']['dbname'].';charset=utf8',$db['mysql']['username'],$db['mysql']['password']);
  32. self::$g_con->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
  33. self::$g_con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  34. } catch (PDOException $e) {
  35. @file_put_contents('error_log',@file_get_contents('error_log') . $e->getMessage() . "\n");
  36. die('Something went wrong.If you are the administrator,check error_log.');
  37. }
  38. self::_getUrl();
  39. self::arrays();
  40. }
  41.  
  42. public static function init()
  43. {
  44. if (is_null(self::$instance))
  45. {
  46. self::$instance = new self();
  47. }
  48. return self::$instance;
  49. }
  50.  
  51. public static function limit() {
  52. if(!isset($_GET['pg']))
  53. $_GET['pg'] = 1;
  54. return "LIMIT ".(($_GET['pg'] * self::$_perPage) - self::$_perPage).",".self::$_perPage;
  55. }
  56.  
  57. private static function _getUrl() {
  58. $url = isset($_GET['page']) ? $_GET['page'] : null;
  59. $url = rtrim($url, '/');
  60. $url = filter_var($url, FILTER_SANITIZE_URL);
  61. self::$_url = explode('/', $url);
  62. }
  63.  
  64. public static function getContent() {
  65. require_once 'assets/vendor/library/HTMLPurifier.auto.php';
  66. include_once 'inc/header.inc.php';
  67. if(self::$_url[0] === 'signature') { include 'inc/pages/' . self::$_url[0] . '.p.php'; return; }
  68. if(isset(self::$_url[0]) && !strlen(self::$_url[0]))
  69. include_once 'inc/pages/index.p.php';
  70. else if(file_exists('inc/pages/' . self::$_url[0] . '.p.php'))
  71. include 'inc/pages/' . self::$_url[0] . '.p.php';
  72. else
  73. include_once 'inc/pages/index.p.php';
  74. include_once 'inc/footer.inc.php';
  75. }
  76. public static $mysqli;
  77. public static function get_rows($table,$params,$value) {
  78. if(is_array($table)) {
  79. $rows = 0;
  80. foreach($table as $val) {
  81. $q = self::$g_con->prepare("SELECT * FROM `".$val."` WHERE `".$params."` = '".$value."'");
  82. $q->execute();
  83. $rows += $q->rowCount();
  84. }
  85. return $rows;
  86. }
  87. $q = self::$g_con->prepare("SELECT * FROM `".$table."` WHERE `".$params."` = '".$value."'");
  88. $q->execute();
  89. return $q->rowCount();
  90. }
  91. public static function rows($table,$id = 'id',$data = array()) {
  92.  
  93. if(is_array($table)) {
  94. $rows = 0;
  95. foreach($table as $val) {
  96. $q = self::$g_con->prepare("SELECT `".$id."` FROM `".$val."`");
  97. $q->execute();
  98. $rows += $q->rowCount();
  99. }
  100. return $rows;
  101. }
  102. if(!empty($data))
  103. $q = self::$g_con->prepare("SELECT `".$id."` FROM `".$table."` ".key($data)." `".key($data[key($data)])."` = '".$data[key($data)][key($data[key($data)])]."'");
  104. else
  105. $q = self::$g_con->prepare("SELECT `".$id."` FROM `".$table."`");
  106. $q->execute();
  107. return $q->rowCount();
  108. }
  109.  
  110. public static function rows_s($table,$id = 'ID',$term,$var) {
  111.  
  112. if(is_array($table)) {
  113. $rows = 0;
  114. foreach($table as $val) {
  115. $q = self::$g_con->prepare("SELECT `".$id."` FROM `".$val."`");
  116. $q->execute();
  117. $rows += $q->rowCount();
  118. }
  119. return $rows;
  120. }
  121. $q = self::$g_con->prepare("SELECT `".$id."` FROM `".$table."` WHERE `".$term."` = ?");
  122. $q->execute(array($var));
  123. return $q->rowCount();
  124. }
  125.  
  126. public static function xss($data)
  127. {
  128. // Fix &entity\n;
  129. $data = str_replace(array('&amp;','&lt;','&gt;'), array('&amp;amp;','&amp;lt;','&amp;gt;'), $data);
  130. $data = preg_replace('/(&#*\w+)[\x00-\x20]+;/u', '$1;', $data);
  131. $data = preg_replace('/(&#x*[0-9A-F]+);*/iu', '$1;', $data);
  132. $data = html_entity_decode($data, ENT_COMPAT, 'UTF-8');
  133.  
  134. // Remove any attribute starting with "on" or xmlns
  135. $data = preg_replace('#(<[^>]+?[\x00-\x20"\'])(?:on|xmlns)[^>]*+>#iu', '$1>', $data);
  136.  
  137. // Remove javascript: and vbscript: protocols
  138. $data = preg_replace('#([a-z]*)[\x00-\x20]*=[\x00-\x20]*([`\'"]*)[\x00-\x20]*j[\x00-\x20]*a[\x00-\x20]*v[\x00-\x20]*a[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iu', '$1=$2nojavascript...', $data);
  139. $data = preg_replace('#([a-z]*)[\x00-\x20]*=([\'"]*)[\x00-\x20]*v[\x00-\x20]*b[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iu', '$1=$2novbscript...', $data);
  140. $data = preg_replace('#([a-z]*)[\x00-\x20]*=([\'"]*)[\x00-\x20]*-moz-binding[\x00-\x20]*:#u', '$1=$2nomozbinding...', $data);
  141.  
  142. // Only works in IE: <span style="width: expression(alert('Ping!'));"></span>
  143. $data = preg_replace('#(<[^>]+?)style[\x00-\x20]*=[\x00-\x20]*[`\'"]*.*?expression[\x00-\x20]*\([^>]*+>#i', '$1>', $data);
  144. $data = preg_replace('#(<[^>]+?)style[\x00-\x20]*=[\x00-\x20]*[`\'"]*.*?behaviour[\x00-\x20]*\([^>]*+>#i', '$1>', $data);
  145. $data = preg_replace('#(<[^>]+?)style[\x00-\x20]*=[\x00-\x20]*[`\'"]*.*?s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:*[^>]*+>#iu', '$1>', $data);
  146.  
  147. // Remove namespaced elements (we do not need them)
  148. $data = preg_replace('#</*\w+:\w[^>]*+>#i', '', $data);
  149.  
  150. do
  151. {
  152. // Remove really unwanted tags
  153. $old_data = $data;
  154. $data = preg_replace('#</*(?:applet|b(?:ase|gsound|link)|embed|frame(?:set)?|i(?:frame|layer)|l(?:ayer|ink)|meta|object|s(?:cript|tyle)|title|xml)[^>]*+>#i', '', $data);
  155. }
  156. while ($old_data !== $data);
  157.  
  158. // we are done...
  159. return $data;
  160. }
  161.  
  162. public static function clean($text = null) {
  163. if (strpos($text, 'script') !== false) return '<i><small>Unknown</small></i>';
  164. if (strpos($text, 'meta') !== false) return '<i><small>Unknown</small></i>';
  165. if (strpos($text, 'document.location') !== false) return '<i><small>Unknown</small></i>';
  166. if (strpos($text, 'olteanu') !== false) return '<i><small>Unknown</small></i>';
  167. strtr ($text, array ('olteanuadv' => '<replacement>'));
  168. $regex = '#\bhttps?://[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/))#';
  169. return preg_replace_callback($regex, function ($matches) {
  170. return '<a target="_blank" href="'.$matches[0].'">'.$matches[0].'</a>';
  171. }, $text);
  172. }
  173.  
  174. public static function get_table_rows($table) {
  175. if(is_array($table)) {
  176. $rows = 0;
  177. foreach($table as $val) {
  178. $q = self::$g_con->prepare("SELECT * FROM `".$val."`");
  179. $q->execute();
  180. $rows += $q->rowCount();
  181. }
  182. return $rows;
  183. }
  184. $q = self::$g_con->prepare("SELECT * FROM `".$table."`");
  185. $q->execute();
  186. return $q->rowCount();
  187. }
  188.  
  189. public static function getPage() {
  190. return isset(self::$_url[2]) ? self::$_url[2] : 1;
  191. }
  192.  
  193. public static function isActive($active) {
  194. if(is_array($active)) {
  195. foreach($active as $ac) {
  196. if($ac === self::$_url[0]) return ' class="active"';
  197. }
  198. return;
  199. } else return self::$_url[0] === $active ? ' class="active"' : false;
  200. }
  201.  
  202. public static function formatNumber($number) {
  203. $format = '<font color="green">$</font>'.number_format($number).'';
  204. return $format;
  205. }
  206.  
  207. public static function showSN() {
  208. if(!isset($_SESSION['staticnotif']) || !strlen($_SESSION['staticnotif'])) $last_notif = '';
  209. else {
  210. $last_notif = $_SESSION['staticnotif'];
  211. $_SESSION['staticnotif'] = '';
  212. unset($_SESSION['staticnotif']);
  213. }
  214. return $last_notif;
  215. }
  216. public static function createSN($type, $message) {
  217. $text = '<div class="alert alert-'.$type.' alert-dismissible" role="alert">
  218. <button type="button" class="close" data-dismiss="alert" aria-label="Close">
  219. <span aria-hidden="true">×</span>
  220. </button><i class="fa fa-info-circle"></i> '.$message.'
  221. </div>';
  222. $_SESSION['staticnotif'] = $text;
  223. }
  224. public static function csSN($type, $message, $dismiss = true) {
  225. $text = '<div class="alert alert-'.$type.' alert-dismissible" role="alert">
  226. <button type="button" class="close" data-dismiss="alert" aria-label="Close">
  227. '.($dismiss ? '<span aria-hidden="true">×</span>' : '').'
  228. </button><i class="fa fa-info-circle"></i> '.$message.'
  229. </div>';
  230. return $text;
  231. }
  232.  
  233. public static function gotoPage($page,$delay = false,$type = false,$message = false) {
  234. if(strlen($type) > 2) {
  235. $text = '<div class="alert alert-'.$type.' alert-dismissible" role="alert">
  236. <button type="button" class="close" data-dismiss="alert" aria-label="Close">
  237. <span aria-hidden="true">×</span>
  238. </button><i class="fa fa-info-circle"></i> '.$message.'
  239. </div>';
  240. $_SESSION['staticnotif'] = $text;
  241. }
  242. if($delay != false && $delay > 0) {
  243. echo '<meta http-equiv="refresh" content="' . $delay . ';' . self::$_PAGE_URL . $page . '">';
  244. return;
  245. }
  246. header('Location: ' . self::$_PAGE_URL . $page);
  247. }
  248.  
  249. public static function timeFuture($time_ago)
  250. {
  251. // $time_ago = strtotime($time_ago);
  252. $cur_time = time();
  253. $time_elapsed = $time_ago - $cur_time;
  254. $days = round($time_elapsed / 86400 );
  255.  
  256. if($days > -1){
  257. return "in $days days";
  258. }else {
  259. return "$days days ago";
  260. }
  261. }
  262. public static function timeAgo($time_ago, $icon = true)
  263. {
  264. $time_ago = strtotime($time_ago);
  265. $cur_time = time();
  266. $time_elapsed = $cur_time - $time_ago;
  267. $seconds = $time_elapsed ;
  268. $minutes = round($time_elapsed / 60 );
  269. $hours = round($time_elapsed / 3600);
  270. $days = round($time_elapsed / 86400 );
  271. $weeks = round($time_elapsed / 604800);
  272. $months = round($time_elapsed / 2600640 );
  273. $years = round($time_elapsed / 31207680 );
  274. // Seconds
  275. if($seconds <= 60){
  276. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." just now";
  277. }
  278. //Minutes
  279. else if($minutes <=60){
  280. if($minutes==1){
  281. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." one minute ago";
  282. }
  283. else{
  284. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." $minutes minutes ago";
  285. }
  286. }
  287. //Hours
  288. else if($hours <=24){
  289. if($hours==1){
  290. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." an hour ago";
  291. }else{
  292. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." $hours hours ago";
  293. }
  294. }
  295. //Days
  296. else if($days <= 7){
  297. if($days==1){
  298. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." yesterday";
  299. }else{
  300. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." $days days ago";
  301. }
  302. }
  303. //Weeks
  304. else if($weeks <= 4.3){
  305. if($weeks==1){
  306. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." a week ago";
  307. }else{
  308. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." $weeks weeks ago";
  309. }
  310. }
  311. //Months
  312. else if($months <=12){
  313. if($months==1){
  314. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." a month ago";
  315. }else{
  316. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." $months months ago";
  317. }
  318. }
  319. //Years
  320. else{
  321. if($years==1){
  322. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." one year ago";
  323. }else{
  324. return "".($icon ? "<i class='fa fa-clock-o'></i>" : "")." $years years ago";
  325. }
  326. }
  327. }
  328.  
  329. public static function isLogged() {
  330. if(isset($_SESSION['account_panel'])) return 1;
  331. else return 0;
  332. }
  333.  
  334. public static function checkDon() {
  335. $c = curl_init();
  336. curl_setopt_array($c, [
  337. CURLOPT_RETURNTRANSFER => true,
  338. CURLOPT_SSL_VERIFYPEER => true,
  339. CURLOPT_URL => 'http://wcode.ro/apitipeee.php?api='.self::$_API.'&donation='.self::$_DONATION.'&web='.self::$_DOMAIN.''
  340. ]);
  341. $data = curl_exec($c);
  342. if(strlen($data) > 15) { //DELETE AFTER DEMO
  343. $data = explode("][",$data);
  344. for($x = 0; $x < self::$_DONATION; $x++) {
  345. $result = str_replace(array('[','"',']'), array(''), $data[$x]);
  346. $row = explode(",",$result);
  347. for($i = 0; $i < 4; $i++) {
  348. $w = Config::$g_con->prepare('SELECT `ID` FROM `wcode_donations` WHERE `Username` = ? AND `CreatedAt` = ?');
  349. $w->execute(array($row[0],$row[3]));
  350. if(!$w->rowCount()) {
  351. $wcc = Config::$g_con->prepare('INSERT INTO `wcode_donations` (`Username`,`Message`,`Amount`,`CreatedAt`) VALUES (?,?,?,?)');
  352. $wcc->execute(array($row[0],$row[1],$row[2],$row[3]));
  353. }
  354. }
  355. }
  356. }
  357. }
  358.  
  359. public static function getName($user, $name = true) {
  360. if($name == true) {
  361. $wd = Config::$g_con->prepare('SELECT `name` FROM `users` WHERE `name` = ?');
  362. $wd->execute(array($user));
  363. if($wd->rowCount()) {
  364. $r_data = $wd->fetch();
  365. $text = $r_data['name'];
  366. } else $text = $user;
  367. } else {
  368. $wd = Config::$g_con->prepare('SELECT `name` FROM `users` WHERE `id` = ?');
  369. $wd->execute(array($user));
  370. if($wd->rowCount()) {
  371. $r_data = $wd->fetch();
  372. $text = $r_data['name'];
  373. } else $text = $user;
  374. }
  375. return $text;
  376. }
  377.  
  378. public static function getID($user) {
  379. $wd = Config::$g_con->prepare('SELECT `id` FROM `users` WHERE `name` = ?');
  380. $wd->execute(array($user));
  381. if($wd->rowCount()) {
  382. $r_data = $wd->fetch();
  383. $text = $r_data['id'];
  384. } else $text = $user;
  385. return $text;
  386. }
  387.  
  388. public static function formatName($user, $name = true) {
  389. if($name == true) {
  390. $wd = Config::$g_con->prepare('SELECT `name` FROM `users` WHERE `name` = ?');
  391. $wd->execute(array($user));
  392. if($wd->rowCount()) {
  393. $r_data = $wd->fetch();
  394. $text = '<a href="'.self::$_PAGE_URL.'profile/'.$r_data['name'].'">'.$r_data['name'].'</a>';
  395. } else $text = $user;
  396. } else {
  397. $wd = Config::$g_con->prepare('SELECT `name` FROM `users` WHERE `id` = ?');
  398. $wd->execute(array($user));
  399. if($wd->rowCount()) {
  400. $r_data = $wd->fetch();
  401. $text = '<a href="'.self::$_PAGE_URL.'profile/'.$r_data['name'].'">'.$r_data['name'].'</a>';
  402. } else $text = $user;
  403. }
  404. return $text;
  405. }
  406.  
  407. public static function showTags($user, $name = true) {
  408. $text = '';
  409. if($name == true) {
  410. $wd = Config::$g_con->prepare('SELECT * FROM `wcode_functions` WHERE `UserName` = ?');
  411. $wd->execute(array($user));
  412. if($wd->rowCount()) {
  413. while($r_data = $wd->fetch(PDO::FETCH_OBJ)) {
  414. $text = $text . '<span class="label label-primary" style="background-color: '.$r_data->Color.'"> <i class="'.$r_data->Icon.'"></i> '.$r_data->Tag.'</span> ';
  415. }
  416. } else $text = '';
  417. } else {
  418. $wd = Config::$g_con->prepare('SELECT * FROM `wcode_functions` WHERE `UserID` = ?');
  419. $wd->execute(array($user));
  420. if($wd->rowCount()) {
  421. while($r_data = $wd->fetch(PDO::FETCH_OBJ)) {
  422. $text = $text . '<span class="label label-primary" style="background-color: '.$r_data->Color.'"> <i class="'.$r_data->Icon.'"></i> '.$r_data->Tag.'</span> ';
  423. }
  424. } else $text = '';
  425. }
  426. return $text;
  427. }
  428.  
  429. public static function insertLog($userid,$username,$log,$vid,$vname) {
  430. $wn = Config::$g_con->prepare('INSERT INTO `wcode_logs` (`UserID`,`UserName`,`Log`,`VictimID`,`VictimName`) VALUES (?, ?, ?, ?, ?)');
  431. $wn->execute(array($userid,$username,$log,$vid,$vname));
  432. return 1;
  433. }
  434.  
  435. public static function makeNotification($userid,$username,$notif,$vid,$vname,$link) {
  436. $wn = Config::$g_con->prepare('INSERT INTO `wcode_notifications` (`UserID`,`UserName`,`Notification`,`FromID`,`FromName`,`Link`) VALUES (?, ?, ?, ?, ?, ?)');
  437. $wn->execute(array($userid,$username,$notif,$vid,$vname,$link));
  438. return 1;
  439. }
  440.  
  441. public static function isAdmin($user,$admin = 1) {
  442. if(!isset($_SESSION['account_panel'])) return 0;
  443. $wc = Config::$g_con->prepare('SELECT `Admin` FROM `users` WHERE `id` = ?');
  444. $wc->execute(array($user));
  445. $r_data = $wc->fetch();
  446. if($r_data['Admin'] >= $admin) return 1;
  447. else return 0;
  448. }
  449.  
  450. public static function getUser() {
  451. if(isset($_SESSION['account_panel'])) return $_SESSION['account_panel'];
  452. else return 9999;
  453. }
  454.  
  455. public static function getNameFromID($id) {
  456. $wc = Config::$g_con->prepare('SELECT `name` FROM `users` WHERE `id` = ?');
  457. $wc->execute(array($id));
  458. $r_data = $wc->fetch();
  459. return $r_data['name'];
  460. }
  461.  
  462. public static function justFactionName($faction) {
  463. if($faction != 0) {
  464. $wc = Config::$g_con->prepare('SELECT `Name` FROM `factions` WHERE `ID` = ?');
  465. $wc->execute(array($faction));
  466. $r_data = $wc->fetch();
  467. return $r_data['Name'];
  468. } else return 'Civilian';
  469. }
  470.  
  471. public static function factionName($user,$faction) {
  472. if($faction != 0) {
  473. $wc = Config::$g_con->prepare('SELECT `Name` FROM `factions` WHERE `ID` = ?');
  474. $wc->execute(array($faction));
  475. $r_data = $wc->fetch();
  476.  
  477. $wcf = Config::$g_con->prepare('SELECT `Rank` FROM `users` WHERE `name` = ?');
  478. $wcf->execute(array($user));
  479. $u_data = $wcf->fetch();
  480.  
  481. $text = ''.$r_data['Name'].' , Rank '.$u_data['Rank'].'';
  482. } else $text = "No faction";
  483.  
  484. return $text;
  485. }
  486.  
  487. public static function create($rows) {
  488. if(!isset($_GET['pg']))
  489. $_GET['pg'] = 1;
  490. $adjacents = "2";
  491. $prev = $_GET['pg'] - 1;
  492. $next = $_GET['pg'] + 1;
  493. $lastpage = ceil($rows/self::$_perPage);
  494. $lpm1 = $lastpage - 1;
  495.  
  496. $pagination = "<ul class='pagination' style='margin:0px;display:0;float:right'>";
  497. if($lastpage > 1)
  498. {
  499. if($prev != 0)
  500. $pagination.= "<li class='previous_page'><a href='?pg=1'>« First</a></li>";
  501. else
  502. $pagination.= "<li class='previous_page disabled'><a>« First</a></li>";
  503. if ($lastpage < 7 + ($adjacents * 2))
  504. {
  505. for ($counter = 1; $counter <= $lastpage; $counter++)
  506. {
  507. if ($counter == $_GET['pg'])
  508. $pagination.= "<li class='active'><a href='#'>$counter</a></li>";
  509. else
  510. $pagination.= "<li><a href='?pg=$counter'>$counter</a></li>";
  511. }
  512. }
  513. elseif($lastpage > 5 + ($adjacents * 2))
  514. {
  515. if($_GET['pg'] < 1 + ($adjacents * 2))
  516. {
  517. for ($counter = 1; $counter < 4 + ($adjacents * 2); $counter++)
  518. {
  519. if ($counter == $_GET['pg'])
  520. $pagination.= "<li class='active'><a href='#'>$counter</a></li>";
  521. else
  522. $pagination.= "<li><a href='?pg=$counter'>$counter</a></li>";
  523. }
  524. $pagination.= "<li class='dots'><a href='#'>...</a></li>";
  525. $pagination.= "<li><a href='?pg=$lpm1'>$lpm1</a></li>";
  526. $pagination.= "<li><a href='?pg=$lastpage'>$lastpage</a></li>";
  527. }
  528. elseif($lastpage - ($adjacents * 2) > $_GET['pg'] && $_GET['pg'] > ($adjacents * 2))
  529. {
  530. $pagination.= "<li><a href='?pg=1'>1</a></li>";
  531. $pagination.= "<li><a href='?pg=2'>2</a></li>";
  532. $pagination.= "<li class='dots'><a href='#'>...</a></li>";
  533. for ($counter = $_GET['pg'] - $adjacents; $counter <= $_GET['pg'] + $adjacents; $counter++)
  534. {
  535. if ($counter == $_GET['pg'])
  536. $pagination.= "<li class='active'><a href='#'>$counter</a></li>";
  537. else
  538. $pagination.= "<li><a href='?pg=$counter'>$counter</a></li>";
  539. }
  540. $pagination.= "<li class='dots'><a href='#'>...</a></li>";
  541. $pagination.= "<li><a href='?pg=$lpm1'>$lpm1</a></li>";
  542. $pagination.= "<li><a href='?pg=$lastpage'>$lastpage</a></li>";
  543. }
  544. else
  545. {
  546. $pagination.= "<li><a href='?pg=1'>1</a></li>";
  547. $pagination.= "<li><a href='?pg=2'>2</a></li>";
  548. $pagination.= "<li class='dots'><a href='#'>...</a></li>";
  549. for ($counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++)
  550. {
  551. if ($counter == $_GET['pg'])
  552. $pagination.= "<li class='active'><a href='#'>$counter</a></li>";
  553. else
  554. $pagination.= "<li><a href='?pg=$counter'>$counter</a></li>";
  555. }
  556. }
  557. }
  558. if($lastpage == (isset($_GET['pg']) ? $_GET['pg'] : 1))
  559. $pagination.= "<li class='next_page disabled'><a>Last »</a></li>";
  560. else
  561. $pagination.= "<li class='next_page'><a href='?pg=$lastpage'>Last »</a></li>";
  562. }
  563. $pagination .= "</ul><div class='clearfix'></div>";
  564. return $pagination;
  565. }
  566.  
  567. public static function jobName($user,$job) {
  568. if($job != 0) {
  569. $wc = Config::$g_con->prepare('SELECT `jobName` FROM `jobs` WHERE `jobID` = ?');
  570. $wc->execute(array($job));
  571. $r_data = $wc->fetch();
  572.  
  573. $text = ''.$r_data['jobName'].'';
  574. } else $text = "No job";
  575.  
  576. return $text;
  577. }
  578.  
  579. public static function getData($table,$data,$id) {
  580. $wc = Config::$g_con->prepare('SELECT `'.$data.'` FROM `'.$table.'` WHERE `id` = ?');
  581. $wc->execute(array($id));
  582. $r_data = $wc->fetch();
  583. return $r_data[$data];
  584. }
  585. public static function getfullData($table,$data,$where,$id) {
  586. $pp = Config::$g_con->prepare('SELECT `'.$data.'` FROM `'.$table.'` WHERE `'.$where.'` = ?');
  587. $pp->execute(array($id));
  588. $r_data = $pp->fetch();
  589. return $r_data[$data];
  590. }
  591. private static function arrays() {
  592. self::$jobs = array(
  593. 0 => 'Unemployed',
  594. 1 => 'Detective',
  595. 2 => 'Lawyer',
  596. 3 => 'Whore',
  597. 4 => 'Drugs Dealer',
  598. 5 => 'Macelar',
  599. 6 => 'Farmer',
  600. 7 => 'Bus Driver',
  601. 8 => 'Mechanic',
  602. 9 => 'Arms Dealer',
  603. 10 => 'Garbage',
  604. 11 => 'Product Delivery',
  605. 12 => 'Mower Cutter',
  606. 13 => 'Fisherman',
  607. 14 => 'Trucker',
  608. 15 => 'Petrol Delivery Man',
  609. 16 => 'Woodman',
  610. 17 => 'Bale Mover',
  611. 18 => 'Miner',
  612. 19 => 'Transporter Carne'
  613. );
  614. self::$_vehicles = array(
  615. 400 => "Landstalker", 401 => "Bravura", 402 => "Buffalo", 403 => "Linerunner", 404 => "Perrenial", 405 => "Sentinel", 406 => "Dumper", 407 => "Firetruck",
  616. 408 => "Trashmaster", 409 => "Stretch", 410 => "Manana", 411 => "Infernus", 412 => "Voodoo", 413 => "Pony", 414 => "Mule", 415 => "Cheetah",
  617. 416 => "Ambulance", 417 => "Leviathan", 418 => "Moonbeam", 419 => "Esperanto", 420 => "Taxi", 421 => "Washington", 422 => "Bobcat", 423 => "Whoopee",
  618. 424 => "BFInjection", 425 => "Hunter", 426 => "Premier", 427 => "Enforcer", 428 => "Securicar", 429 => "Banshee", 430 => "Predator", 431 => "Bus",
  619. 432 => "Rhino", 433 => "Barracks", 434 => "Hotknife", 435 => "Trailer", 436 => "Previon", 437 => "Coach", 438 => "Cabbie", 439 => "Stallion",
  620. 440 => "Rumpo", 441 => "RCBandit", 442 => "Romero", 443 => "Packer", 444 => "Monster", 445 => "Admiral", 446 => "Squalo", 447 => "Seasparrow",
  621. 448 => "Pizzaboy", 449 => "Tram", 450 => "Trailer", 451 => "Turismo", 452 => "Speeder", 453 => "Reefer", 454 => "Tropic", 455 => "Flatbed", 456 => "Yankee",
  622. 457 => "Caddy", 458 => "Solair", 459 => "Berkley\'sRCVan", 460 => "Skimmer", 461 => "PCJ-600", 462 => "Faggio", 463 => "Freeway", 464 => "RCBaron",
  623. 465 => "RCRaider", 466 => "Glendale", 467 => "Oceanic", 468 => "Sanchez", 469 => "Sparrow", 470 => "Patriot", 471 => "Quad", 472 => "Coastguard",
  624. 473 => "Dinghy", 474 => "Hermes", 475 => "Sabre", 476 => "Rustler", 477 => "ZR-350", 478 => "Walton", 479 => "Regina", 480 => "Comet", 481 => "BMX",
  625. 482 => "Burrito", 483 => "Camper", 484 => "Marquis", 485 => "Baggage", 486 => "Dozer", 487 => "Maverick", 488 => "NewsChopper", 489 => "Rancher",
  626. 490 => "FBIRancher", 491 => "Virgo", 492 => "Greenwood", 493 => "Jetmax", 494 => "Hotring", 495 => "Sandking", 496 => "BlistaCompact",
  627. 497 => "PoliceMaverick", 498 => "Boxville", 499 => "Benson", 500 => "Mesa", 501 => "RCGoblin", 502 => "HotringRacerA", 503 => "HotringRacerB",
  628. 504 => "BloodringBanger", 505 => "Rancher", 506 => "SuperGT", 507 => "Elegant", 508 => "Journey", 509 => "Bike", 510 => "MountainBike", 511 => "Beagle",
  629. 512 => "Cropduster", 513 => "Stunt", 514 => "Tanker", 515 => "Roadtrain", 516 => "Nebula", 517 => "Majestic", 518 => "Buccaneer", 519 => "Shamal",
  630. 520 => "Hydra", 521 => "FCR-900", 522 => "NRG-500", 523 => "HPV1000", 524 => "CementTruck", 525 => "TowTruck", 526 => "Fortune", 527 => "Cadrona",
  631. 528 => "FBITruck",529 => "Willard", 530 => "Forklift", 531 => "Tractor", 532 => "Combine", 533 => "Feltzer", 534 => "Remington", 535 => "Slamvan",
  632. 536 => "Blade", 537 => "Freight",538 => "Streak", 539 => "Vortex", 540 => "Vincent", 541 => "Bullet", 542 => "Clover", 543 => "Sadler", 544 => "Firetruck",
  633. 545 => "Hustler", 546 => "Intruder", 547 => "Primo", 548 => "Cargobob", 549 => "Tampa", 550 => "Sunrise", 551 => "Merit", 552 => "Utility", 553 => "Nevada",
  634. 554 => "Yosemite", 555 => "Windsor", 556 => "Monster", 557 => "Monster", 558 => "Uranus", 559 => "Jester", 560 => "Sultan", 561 => "Stratium",
  635. 562 => "Elegy", 563 => "Raindance", 564 => "RCTiger", 565 => "Flash", 566 => "Tahoma", 567 => "Savanna", 568 => "Bandito", 569 => "FreightFlat",
  636. 570 => "StreakCarriage", 571 => "Kart", 572 => "Mower", 573 => "Dune", 574 => "Sweeper", 575 => "Broadway", 576 => "Tornado", 577 => "AT-400",
  637. 578 => "DFT-30", 579 => "Huntley", 580 => "Stafford", 581 => "BF-400", 582 => "NewsVan", 583 => "Tug", 584 => "Trailer", 585 => "Emperor", 586 => "Wayfarer",
  638. 587 => "Euros", 588 => "Hotdog", 589 => "Club", 590 => "FreightBox", 591 => "Trailer", 592 => "Andromada", 593 => "Dodo", 594 => "RCCam", 595 => "Launch",
  639. 596 => "PoliceCar", 597 => "PoliceCar", 598 => "PoliceCar", 599 => "PoliceRanger", 600 => "Picador", 601 => "S.W.A.T", 602 => "Alpha", 603 => "Phoenix",
  640. 604 => "Glendale", 605 => "Sadler", 606 => "Luggage", 607 => "Luggage", 608 => "Stairs", 609 => "Boxville", 610 => "Tiller", 611 => "UtilityTrailer"
  641. );
  642.  
  643. self::$_vehColors = array(
  644. '#000000', '#F5F5F5', '#2A77A1', '#840410', '#263739', '#86446E', '#D78E10', '#4C75B7', '#BDBEC6', '#5E7072',
  645. '#46597A', '#656A79', '#5D7E8D', '#58595A', '#D6DAD6', '#9CA1A3', '#335F3F', '#730E1A', '#7B0A2A', '#9F9D94',
  646. '#3B4E78', '#732E3E', '#691E3B', '#96918C', '#515459', '#3F3E45', '#A5A9A7', '#635C5A', '#3D4A68', '#979592',
  647. '#421F21', '#5F272B', '#8494AB', '#767B7C', '#646464', '#5A5752', '#252527', '#2D3A35', '#93A396', '#6D7A88',
  648. '#221918', '#6F675F', '#7C1C2A', '#5F0A15', '#193826', '#5D1B20', '#9D9872', '#7A7560', '#989586', '#ADB0B0',
  649. '#848988', '#304F45', '#4D6268', '#162248', '#272F4B', '#7D6256', '#9EA4AB', '#9C8D71', '#6D1822', '#4E6881',
  650. '#9C9C98', '#917347', '#661C26', '#949D9F', '#A4A7A5', '#8E8C46', '#341A1E', '#6A7A8C', '#AAAD8E', '#AB988F',
  651. '#851F2E', '#6F8297', '#585853', '#9AA790', '#601A23', '#20202C', '#A4A096', '#AA9D84', '#78222B', '#0E316D',
  652. '#722A3F', '#7B715E', '#741D28', '#1E2E32', '#4D322F', '#7C1B44', '#2E5B20', '#395A83', '#6D2837', '#A7A28F',
  653. '#AFB1B1', '#364155', '#6D6C6E', '#0F6A89', '#204B6B', '#2B3E57', '#9B9F9D', '#6C8495', '#4D8495', '#AE9B7F',
  654. '#406C8F', '#1F253B', '#AB9276', '#134573', '#96816C', '#64686A', '#105082', '#A19983', '#385694', '#525661',
  655. '#7F6956', '#8C929A', '#596E87', '#473532', '#44624F', '#730A27', '#223457', '#640D1B', '#A3ADC6', '#695853',
  656. '#9B8B80', '#620B1C', '#5B5D5E', '#624428', '#731827', '#1B376D', '#EC6AAE', '#000000',
  657. '#177517', '#210606', '#125478', '#452A0D', '#571E1E', '#010701', '#25225A', '#2C89AA', '#8A4DBD', '#35963A',
  658. '#B7B7B7', '#464C8D', '#84888C', '#817867', '#817A26', '#6A506F', '#583E6F', '#8CB972', '#824F78', '#6D276A',
  659. '#1E1D13', '#1E1306', '#1F2518', '#2C4531', '#1E4C99', '#2E5F43', '#1E9948', '#1E9999', '#999976', '#7C8499',
  660. '#992E1E', '#2C1E08', '#142407', '#993E4D', '#1E4C99', '#198181', '#1A292A', '#16616F', '#1B6687', '#6C3F99',
  661. '#481A0E', '#7A7399', '#746D99', '#53387E', '#222407', '#3E190C', '#46210E', '#991E1E', '#8D4C8D', '#805B80',
  662. '#7B3E7E', '#3C1737', '#733517', '#781818', '#83341A', '#8E2F1C', '#7E3E53', '#7C6D7C', '#020C02', '#072407',
  663. '#163012', '#16301B', '#642B4F', '#368452', '#999590', '#818D96', '#99991E', '#7F994C', '#839292', '#788222',
  664. '#2B3C99', '#3A3A0B', '#8A794E', '#0E1F49', '#15371C', '#15273A', '#375775', '#060820', '#071326', '#20394B',
  665. '#2C5089', '#15426C', '#103250', '#241663', '#692015', '#8C8D94', '#516013', '#090F02', '#8C573A', '#52888E',
  666. '#995C52', '#99581E', '#993A63', '#998F4E', '#99311E', '#0D1842', '#521E1E', '#42420D', '#4C991E', '#082A1D',
  667. '#96821D', '#197F19', '#3B141F', '#745217', '#893F8D', '#7E1A6C', '#0B370B', '#27450D', '#071F24', '#784573',
  668. '#8A653A', '#732617', '#319490', '#56941D', '#59163D', '#1B8A2F', '#38160B', '#041804', '#355D8E', '#2E3F5B',
  669. '#561A28', '#4E0E27', '#706C67', '#3B3E42', '#2E2D33', '#7B7E7D', '#4A4442', '#28344E'
  670. );
  671. }
  672. }
  673. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement