unit.php 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. if (!DEFINED('EGP'))
  3. exit(header('Refresh: 0; URL=http://' . $_SERVER['SERVER_NAME'] . '/404'));
  4. if (!isset($nmch))
  5. $nmch = false;
  6. $uid = isset($url['uid']) ? sys::int($url['uid']) : sys::outjs(array('e' => 'Переданы не все данные.'), $nmch);
  7. if (!$cfg['change_unit'][$server['game']] || $server['time'] < $start_point + 86400 || $server['test'])
  8. exit;
  9. $sql->query('SELECT `id`, `unit`, `packs`, `tickrate`, `price` FROM `tarifs` WHERE `unit`="' . $uid . '" AND `game`="' . $server['game'] . '" AND `name`="' . $tarif['name'] . '" AND `id`!="' . $server['tarif'] . '" AND `show`="1" ORDER BY `unit`');
  10. if (!$sql->num())
  11. sys::outjs(array('e' => 'Не найден подходящий тариф.'), $nmch);
  12. $oldTarif = $tarif;
  13. $tarif = $sql->get();
  14. $sql->query('SELECT `address`, `passwd`, `sql_login`, `sql_passwd`, `sql_port`, `sql_ftp` FROM `units` WHERE `id`="' . $server['unit'] . '" LIMIT 1');
  15. $oldUnit = $sql->get();
  16. $aPriceold = explode(':', $oldTarif['price']);
  17. $aTICKold = explode(':', $oldTarif['tickrate']);
  18. $sql->query('SELECT `id` FROM `units` WHERE `id`="' . $tarif['unit'] . '" AND `show`="1" LIMIT 1');
  19. if (!$sql->num())
  20. sys::outjs(array('e' => 'Выбранная локация не доступна.'), $nmch);
  21. $aPrice = explode(':', $tarif['price']);
  22. $aTICK = explode(':', $tarif['tickrate']);
  23. if (!in_array($server['tickrate'], $aTICK))
  24. sys::outjs(array('e' => 'Не найден подходящий тарифный план.'), $nmch);
  25. // Цена за 1 день (при новом тарифном плане)
  26. $price = $aPrice[array_search($server['tickrate'], $aTICK)] / 30 * $server['slots'];
  27. // Цена аренды за остаток дней (с текущим тарифным планом)
  28. $oldprice = ($server['time'] - $start_point) / 86400 * ($aPriceold[array_search($server['tickrate'], $aTICKold)] / 30 * $server['slots']);
  29. $date = date('H.i.s.d.m.Y', round($start_point + $oldprice / $price * 86400 - 86400));
  30. $aDate = explode('.', $date);
  31. $time = mktime($aDate[0], $aDate[1], $aDate[2], $aDate[4], $aDate[3], $aDate[5]);
  32. include(SEC . 'servers/games/tarif/unit.php');
  33. ?>