Many changes due to the CodeIgniter update, as well as fixes and optimizations.
This commit is contained in:
parent
9ce843fc9d
commit
6dfce20d7f
|
@ -27,6 +27,9 @@ class BaseController extends Controller
|
||||||
* @var CLIRequest|IncomingRequest
|
* @var CLIRequest|IncomingRequest
|
||||||
*/
|
*/
|
||||||
protected $request;
|
protected $request;
|
||||||
|
protected $db;
|
||||||
|
|
||||||
|
protected $session;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An array of helpers to be loaded automatically upon
|
* An array of helpers to be loaded automatically upon
|
||||||
|
@ -50,5 +53,6 @@ class BaseController extends Controller
|
||||||
// E.g.: $this->session = \Config\Services::session();
|
// E.g.: $this->session = \Config\Services::session();
|
||||||
$this->db = \Config\Database::connect();
|
$this->db = \Config\Database::connect();
|
||||||
$this->request = \Config\Services::request();
|
$this->request = \Config\Services::request();
|
||||||
|
$this->session = session();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,11 +5,17 @@ use App\Models\CarsModel;
|
||||||
|
|
||||||
class Cars extends BaseController
|
class Cars extends BaseController
|
||||||
{
|
{
|
||||||
|
private object $carsModel;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
$this->carsModel = new CarsModel();
|
||||||
|
}
|
||||||
|
|
||||||
function index($id)
|
function index($id)
|
||||||
{
|
{
|
||||||
//$this->cachePage(3600);
|
$this->cachePage(3600);
|
||||||
$car = getCar($id);
|
$car = $this->carsModel->data($id);
|
||||||
echo get_header('Car: ' . $car->name);
|
echo get_header('Car: ' . $car->name);
|
||||||
echo view('car', ['car' => $car]);
|
echo view('car', ['car' => $car]);
|
||||||
echo get_footer();
|
echo get_footer();
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Controllers;
|
||||||
|
use App\Models\UsersModel;
|
||||||
|
use CodeIgniter\API\ResponseTrait;
|
||||||
|
use CodeIgniter\HTTP\URI;
|
||||||
|
|
||||||
|
class Dashboard extends BaseController
|
||||||
|
{
|
||||||
|
protected $usersModel;
|
||||||
|
use ResponseTrait;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
$this->usersModel = new UsersModel();
|
||||||
|
$uri = new URI();
|
||||||
|
$session = session();
|
||||||
|
|
||||||
|
/*
|
||||||
|
if ($uri->getSegment(1) != 'login' && !$session->has('logged_in'))
|
||||||
|
{
|
||||||
|
header('Location: '.base_url().'/login');
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
public function index()
|
||||||
|
{
|
||||||
|
//$users = $this->users->getUsers();
|
||||||
|
$tplData = [];
|
||||||
|
//$tplData['users'] = $users;
|
||||||
|
echo get_header('Dashboard', [], true);
|
||||||
|
echo view('dashboard/main.php', $tplData);
|
||||||
|
echo get_footer();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function login()
|
||||||
|
{
|
||||||
|
$data = $this->request->getVar();
|
||||||
|
$compUser = $this->usersModel->login($data);
|
||||||
|
return $this->respond(['ok' => $compUser]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function user()
|
||||||
|
{
|
||||||
|
//$userid = $this->session->userid;
|
||||||
|
$user = $this->usersModel->find($this->session->userid);
|
||||||
|
|
||||||
|
echo get_header("My User", [], true);
|
||||||
|
echo view('dashboard/user', ['user' => $user]);
|
||||||
|
echo get_footer();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function users() {
|
||||||
|
$users = $this->usersModel->findAll();
|
||||||
|
return $this->respond($users);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,15 +1,18 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Controllers;
|
namespace App\Controllers;
|
||||||
use App\Models\UsersModel;
|
use App\Models\CarCatsModel;
|
||||||
|
use App\Models\TracksModel;
|
||||||
|
use CodeIgniter\API\ResponseTrait;
|
||||||
|
|
||||||
class Home extends BaseController
|
class Home extends BaseController
|
||||||
{
|
{
|
||||||
protected $users;
|
use ResponseTrait;
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
$tplData = [];
|
$tplData = [];
|
||||||
|
$carCatModel = new CarCatsModel();
|
||||||
|
|
||||||
// select interested period
|
// select interested period
|
||||||
if(array_key_exists('period', $_COOKIE))
|
if(array_key_exists('period', $_COOKIE))
|
||||||
|
@ -17,15 +20,12 @@ class Home extends BaseController
|
||||||
$period = $_COOKIE['period'];
|
$period = $_COOKIE['period'];
|
||||||
}
|
}
|
||||||
|
|
||||||
if(array_key_exists('period', $_GET))
|
if($this->request->getGet('period'))
|
||||||
{
|
{
|
||||||
setcookie( "period", $_GET['period'], time()+(60*60*24*30) );
|
$period = $this->request->getGet('period');
|
||||||
$period = $_GET['period'];
|
setcookie( "period", $period, time()+(60*60*24*30) );
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$period = 'year';
|
|
||||||
}
|
}
|
||||||
|
else $period = 'today';
|
||||||
|
|
||||||
$tplData['period'] = $period;
|
$tplData['period'] = $period;
|
||||||
|
|
||||||
|
@ -51,49 +51,53 @@ class Home extends BaseController
|
||||||
$backto = time()-$datediff;
|
$backto = time()-$datediff;
|
||||||
$tplData['periodString'] = 'In the last year';
|
$tplData['periodString'] = 'In the last year';
|
||||||
break;
|
break;
|
||||||
/*
|
case 'allTime'://always
|
||||||
case 'date'://from this date
|
$datediff = (50000*24*60*60);
|
||||||
$datediff=(7*24*60*60);
|
$backto = time() - $datediff;
|
||||||
$backto=time()-$datediff;
|
$tplData['periodString'] = 'all time';
|
||||||
$periodString ='From '.date('d-m-Y', $backto);
|
break;
|
||||||
break;
|
default:
|
||||||
*/
|
throw \CodeIgniter\Exceptions\PageNotFoundException::forPageNotFound();
|
||||||
case 'allTime'://always
|
|
||||||
$datediff = (50000*24*60*60);
|
|
||||||
$backto = time() - $datediff;
|
|
||||||
$tplData['periodString'] = 'all time';
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//select the category to display
|
//select the category to display
|
||||||
if (array_key_exists('cat', $_GET))
|
$catId = $this->request->getGet('cat');
|
||||||
|
if ($catId)
|
||||||
{
|
{
|
||||||
$carCatId = $_GET['cat'];
|
// Check if the cat exists
|
||||||
$tplData['carCatId'] = $carCatId;
|
$exists = $carCatModel->find($catId);
|
||||||
|
if (!$exists) throw \CodeIgniter\Exceptions\PageNotFoundException::forPageNotFound();
|
||||||
|
|
||||||
|
$carCatId = $catId;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$first = $carCatModel->select('id')->findAll(1);
|
||||||
|
$carCatId = $first[0]->id;
|
||||||
}
|
}
|
||||||
|
|
||||||
//reorder the cetegories by name
|
$tplData['carCatId'] = $carCatId;
|
||||||
$carCategories = getCarCats();
|
|
||||||
$carCategoriesList = get_object_vars($carCategories);
|
|
||||||
ksort($carCategoriesList);
|
|
||||||
|
|
||||||
$tplData['carCategories'] = $carCategories;
|
// Get cars categories
|
||||||
$tplData['carCategoriesList'] = $carCategoriesList;
|
$categoriesList = $carCatModel->select('id, name, count(carId) as totalCars')->groupBy('id')->findAll();
|
||||||
|
$currCat = $carCatModel->find($carCatId);
|
||||||
|
|
||||||
if (!isset($carCatId)) $carCatId = array_key_first($carCategoriesList);
|
$carsCatList = $carCatModel->select('carId')->where('id', $carCatId)->findAll();
|
||||||
|
|
||||||
$carsql = '';
|
$tplData['currCat'] = $currCat;
|
||||||
foreach ($carCategories->$carCatId->cars as $car){
|
$tplData['carCategoriesList'] = $categoriesList;
|
||||||
$carsql.=" OR B.car_id='$car'";
|
|
||||||
}
|
|
||||||
|
|
||||||
$carsql = substr($carsql, 4); //remove the first " OR "
|
$carsCatIds = [];
|
||||||
|
foreach ($carsCatList as $car) $carsCatIds[] = $car->carId;
|
||||||
|
|
||||||
//UGLY: there is some category that have no car assigned so create a fake $carsql for them
|
//UGLY: there is some category that have no car assigned so create a fake $carsql for them
|
||||||
//to prevent errors in the generated queries
|
//to prevent errors in the generated queries
|
||||||
|
/*
|
||||||
|
$carsql = '0';
|
||||||
if($carsql == ''){
|
if($carsql == ''){
|
||||||
$carsql = " B.car_id='NonExistentCarIdFindThisIfYouCan'";
|
$carsql = " B.car_id='NonExistentCarIdFindThisIfYouCan'";
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
################################
|
################################
|
||||||
|
@ -102,16 +106,17 @@ class Home extends BaseController
|
||||||
################################
|
################################
|
||||||
*/
|
*/
|
||||||
|
|
||||||
$builder = $this->db->table('races B');
|
$builder = $this->db->table('races r');
|
||||||
$builder->select('B.user_id, COUNT(*) as count');
|
$builder->select('r.user_id, COUNT(*) AS count, u.username');
|
||||||
$builder->where('UNIX_TIMESTAMP(B.timestamp) >', $backto);
|
$builder->join('users u', 'u.id = r.user_id');
|
||||||
$builder->where("($carsql)");
|
$builder->where('UNIX_TIMESTAMP(r.timestamp) >', $backto);
|
||||||
$builder->groupBy('B.user_id');
|
$builder->whereIn('r.car_id', $carsCatIds);
|
||||||
|
$builder->groupBy('r.user_id');
|
||||||
$builder->orderBy('count DESC');
|
$builder->orderBy('count DESC');
|
||||||
|
|
||||||
$tplData['users'] = [];
|
$tplData['users'] = [];
|
||||||
$query = $builder->get();
|
$query = $builder->get();
|
||||||
if ($query || $query->getNumRows() > 0) $tplData['users'] = $query->getResult();
|
if ($query && $query->getNumRows() > 0) $tplData['users'] = $query->getResult();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
################################
|
################################
|
||||||
|
@ -120,59 +125,72 @@ class Home extends BaseController
|
||||||
################################
|
################################
|
||||||
*/
|
*/
|
||||||
|
|
||||||
$builder = $this->db->table('laps A');
|
$builder = $this->db->table('laps l');
|
||||||
$builder->select('A.race_id, B.track_id, B.car_id, B.user_id, B.timestamp, A.wettness, min(A.laptime) as bestlap');
|
$builder->select('l.race_id, r.track_id, r.car_id, r.user_id, r.timestamp, l.wettness, min(l.laptime) as bestlap, c.name AS car_name, t.name AS track_name, u.username');
|
||||||
$builder->join('races B', 'A.race_id = B.id');
|
$builder->join('races r', 'l.race_id = r.id');
|
||||||
$builder->where('UNIX_TIMESTAMP(B.timestamp) >', $backto);
|
$builder->join('cars c', 'c.id = r.car_id');
|
||||||
$builder->where("($carsql)");
|
$builder->join('tracks t', 't.id = r.track_id');
|
||||||
$builder->groupBy(['B.track_id', 'A.wettness']);
|
$builder->join('users u', 'u.id = r.user_id');
|
||||||
|
$builder->where('UNIX_TIMESTAMP(r.timestamp) >', $backto);
|
||||||
|
$builder->whereIn('r.car_id', $carsCatIds);
|
||||||
|
$builder->groupBy(['r.track_id', 'l.wettness']);
|
||||||
|
|
||||||
$tplData['mylaps'] = [];
|
$tplData['mylaps'] = [];
|
||||||
|
|
||||||
$query = $builder->get();
|
$query = $builder->get();
|
||||||
if ($query || $query->getNumRows() > 0) $tplData['mylaps'] = $query->getResult();
|
if ($query && $query->getNumRows() > 0) $tplData['mylaps'] = $query->getResult();
|
||||||
|
|
||||||
$query = "
|
|
||||||
SELECT track_id, COUNT(*) as count
|
|
||||||
FROM races B
|
|
||||||
WHERE UNIX_TIMESTAMP(timestamp) > $backto
|
|
||||||
AND ($carsql)
|
|
||||||
GROUP BY B.track_id
|
|
||||||
ORDER BY COUNT(*) DESC";
|
|
||||||
|
|
||||||
$tplData['tracks'] = [];
|
$tplData['tracks'] = [];
|
||||||
$builder = $this->db->table('races B');
|
$builder = $this->db->table('races');
|
||||||
$builder->select('B.track_id, COUNT(*) as count');
|
$builder->select('track_id, COUNT(*) AS count');
|
||||||
$builder->where('UNIX_TIMESTAMP(B.timestamp) >', $backto);
|
$builder->where('UNIX_TIMESTAMP(timestamp) >', $backto);
|
||||||
$builder->where("($carsql)");
|
$builder->whereIn('car_id', $carsCatIds);
|
||||||
$builder->groupBy('B.track_id');
|
$builder->groupBy('track_id');
|
||||||
$builder->orderBy('count DESC');
|
$builder->orderBy('count DESC');
|
||||||
|
|
||||||
$query = $builder->get();
|
$query = $builder->get();
|
||||||
if ($query || $query->getNumRows() > 0) $tplData['tracks'] = $query->getResult();
|
|
||||||
|
|
||||||
$query="
|
if ($query && $query->getNumRows() > 0)
|
||||||
SELECT car_id, COUNT(*) as count
|
{
|
||||||
FROM races B
|
$tracks = $query->getResult();
|
||||||
WHERE UNIX_TIMESTAMP(timestamp) > $backto
|
|
||||||
AND ($carsql)
|
$tracksIds = [];
|
||||||
GROUP BY B.car_id
|
foreach($tracks as $track) $tracksIds[] = $track->track_id;
|
||||||
ORDER BY COUNT(*) DESC";
|
|
||||||
|
$tracksModel = new TracksModel();
|
||||||
|
$tracksNames = [];
|
||||||
|
$tracksNamesList = $tracksModel->select('id, name')->whereIn('id', $tracksIds)->findAll();
|
||||||
|
|
||||||
|
foreach($tracksNamesList as $name) $tracksNames[$name->id] = $name->name;
|
||||||
|
foreach($tracksIds as $id)
|
||||||
|
{
|
||||||
|
if (!key_exists($id, $tracksNames)) $tracksNames[$id] = "$id (Modded)";
|
||||||
|
}
|
||||||
|
|
||||||
|
$tplData['tracks'] = $tracks;
|
||||||
|
$tplData['tracksNames'] = $tracksNames;
|
||||||
|
}
|
||||||
|
|
||||||
$tplData['cars'] = [];
|
$tplData['cars'] = [];
|
||||||
|
|
||||||
$builder = $this->db->table('races B');
|
$builder = $this->db->table('races r');
|
||||||
$builder->select('car_id, COUNT(*) as count');
|
$builder->join('cars c', 'c.id = r.car_id');
|
||||||
$builder->where('UNIX_TIMESTAMP(B.timestamp) >', $backto);
|
$builder->select('r.car_id, COUNT(r.car_id) as count, c.name');
|
||||||
$builder->where("($carsql)");
|
$builder->where('UNIX_TIMESTAMP(r.timestamp) >', $backto);
|
||||||
$builder->groupBy('B.car_id');
|
$builder->whereIn('r.car_id', $carsCatIds);
|
||||||
|
$builder->groupBy('r.car_id');
|
||||||
$builder->orderBy('count DESC');
|
$builder->orderBy('count DESC');
|
||||||
|
|
||||||
$query = $builder->get();
|
$query = $builder->get();
|
||||||
if ($query || $query->getNumRows() > 0) $tplData['cars'] = $query->getResult();
|
if ($query && $query->getNumRows() > 0) $tplData['cars'] = $query->getResult();
|
||||||
|
|
||||||
echo get_header('Home');
|
echo get_header('Home');
|
||||||
echo view('main', $tplData);
|
echo view('main', $tplData);
|
||||||
echo get_footer();
|
echo get_footer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function error404()
|
||||||
|
{
|
||||||
|
return view('404');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,155 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Controllers;
|
||||||
|
use App\Models\UsersModel;
|
||||||
|
use CodeIgniter\API\ResponseTrait;
|
||||||
|
|
||||||
|
class Install extends BaseController
|
||||||
|
{
|
||||||
|
use ResponseTrait;
|
||||||
|
public function install()
|
||||||
|
{
|
||||||
|
helper('filesystem');
|
||||||
|
$filename = ROOTPATH . '/sdwebserver.sql';
|
||||||
|
$handle = fopen($filename, "r");
|
||||||
|
$content = fread($handle, filesize($filename));
|
||||||
|
fclose($handle);
|
||||||
|
$file_array = explode(';', $content);
|
||||||
|
foreach ($file_array as $query)
|
||||||
|
{
|
||||||
|
if ($query)
|
||||||
|
{
|
||||||
|
$this->db->query("SET FOREIGN_KEY_CHECKS = 0");
|
||||||
|
$this->db->query($query);
|
||||||
|
$this->db->query("SET FOREIGN_KEY_CHECKS = 1");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function update()
|
||||||
|
{
|
||||||
|
//$sql = "ALTER TABLE `users` ADD `level` TINYINT(1) NOT NULL DEFAULT '3' AFTER `id`;";
|
||||||
|
|
||||||
|
$this->db->query("
|
||||||
|
CREATE TABLE IF NOT EXISTS `cars` (
|
||||||
|
`id` varchar(50) DEFAULT NULL,
|
||||||
|
`name` varchar(50) DEFAULT NULL,
|
||||||
|
`img` varchar(100) DEFAULT NULL,
|
||||||
|
`category` varchar(50) DEFAULT NULL,
|
||||||
|
`width` varchar(10) DEFAULT NULL,
|
||||||
|
`length` varchar(10) DEFAULT NULL,
|
||||||
|
`mass` varchar(12) DEFAULT NULL,
|
||||||
|
`fueltank` varchar(10) DEFAULT NULL,
|
||||||
|
`engine` varchar(30) DEFAULT NULL,
|
||||||
|
`drivetrain` varchar(5) DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB;
|
||||||
|
");
|
||||||
|
|
||||||
|
$this->db->query("CREATE TABLE IF NOT EXISTS `cars_cats` (
|
||||||
|
`id` varchar(20) DEFAULT NULL,
|
||||||
|
`name` varchar(50) DEFAULT NULL,
|
||||||
|
`carID` varchar(50) DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB;
|
||||||
|
");
|
||||||
|
|
||||||
|
$this->db->query("CREATE TABLE IF NOT EXISTS `tracks` (
|
||||||
|
`id` varchar(20) NOT NULL,
|
||||||
|
`name` varchar(30) DEFAULT NULL,
|
||||||
|
`img` varchar(100) DEFAULT NULL,
|
||||||
|
`category` varchar(30) DEFAULT NULL,
|
||||||
|
`author` varchar(50) DEFAULT NULL,
|
||||||
|
`description` varchar(100) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB;
|
||||||
|
");
|
||||||
|
|
||||||
|
$this->db->query("CREATE TABLE IF NOT EXISTS `tracks_cats` (
|
||||||
|
`id` varchar(20) DEFAULT NULL,
|
||||||
|
`name` varchar(50) DEFAULT NULL,
|
||||||
|
`trackID` varchar(50) DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB;
|
||||||
|
");
|
||||||
|
|
||||||
|
$this->respond(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update cars, tracks, etc, data from the files
|
||||||
|
*/
|
||||||
|
public function updateData()
|
||||||
|
{
|
||||||
|
$carsFile = file_get_contents(WRITEPATH . '/data/cars.json');
|
||||||
|
$cars = json_decode($carsFile, true);
|
||||||
|
$add = [];
|
||||||
|
|
||||||
|
foreach($cars as $id => $car) $add[] = $car;
|
||||||
|
|
||||||
|
if (count($add) > 0)
|
||||||
|
{
|
||||||
|
$this->db->query('TRUNCATE cars');
|
||||||
|
$builder = $this->db->table('cars');
|
||||||
|
$insert = $builder->insertBatch($add);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Now the tracks
|
||||||
|
|
||||||
|
$tracksFile = file_get_contents(WRITEPATH . '/data/tracks.json');
|
||||||
|
$tracks = json_decode($tracksFile, true);
|
||||||
|
$add = [];
|
||||||
|
|
||||||
|
foreach($tracks as $id => $track)
|
||||||
|
{
|
||||||
|
$track['description'] = $track['description']['val'];
|
||||||
|
$add[] = $track;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (count($add) > 0)
|
||||||
|
{
|
||||||
|
$this->db->query('TRUNCATE tracks');
|
||||||
|
$builder = $this->db->table('tracks');
|
||||||
|
$insert = $builder->insertBatch($add);
|
||||||
|
}
|
||||||
|
|
||||||
|
$carsCatsFile = file_get_contents(WRITEPATH . '/data/carCategories.json');
|
||||||
|
$carCats = json_decode($carsCatsFile, true);
|
||||||
|
$add = [];
|
||||||
|
|
||||||
|
foreach($carCats as $id => $cat)
|
||||||
|
{
|
||||||
|
foreach($cat['cars'] as $car)
|
||||||
|
$add[] = [
|
||||||
|
'id' => $id,
|
||||||
|
'name' => $cat['name'],
|
||||||
|
'carId' => $car
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (count($add) > 0)
|
||||||
|
{
|
||||||
|
$this->db->query('TRUNCATE cars_cats');
|
||||||
|
$builder = $this->db->table('cars_cats');
|
||||||
|
$insert = $builder->insertBatch($add);
|
||||||
|
}
|
||||||
|
|
||||||
|
$trackCatsFile = file_get_contents(WRITEPATH . '/data/trackCategories.json');
|
||||||
|
$trackCats = json_decode($trackCatsFile, true);
|
||||||
|
$add = [];
|
||||||
|
|
||||||
|
foreach($trackCats as $id => $cat)
|
||||||
|
{
|
||||||
|
foreach($cat['tracks'] as $track)
|
||||||
|
$add[] = [
|
||||||
|
'id' => $id,
|
||||||
|
'name' => $cat['name'],
|
||||||
|
'trackId' => $track
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (count($add) > 0)
|
||||||
|
{
|
||||||
|
$this->db->query('TRUNCATE tracks_cats');
|
||||||
|
$builder = $this->db->table('tracks_cats');
|
||||||
|
$insert = $builder->insertBatch($add);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -7,18 +7,26 @@ use App\Models\TracksModel;
|
||||||
|
|
||||||
class Races extends BaseController
|
class Races extends BaseController
|
||||||
{
|
{
|
||||||
protected $users;
|
protected object $users;
|
||||||
|
protected object $carsModel;
|
||||||
|
protected object $tracksModel;
|
||||||
|
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
$this->users = new UsersModel();
|
$this->users = new UsersModel();
|
||||||
|
$this->carsModel = new CarsModel();
|
||||||
|
$this->tracksModel = new TracksModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function index($race)
|
public function index($race)
|
||||||
{
|
{
|
||||||
//$this->cachePage(360);
|
//$this->cachePage(360);
|
||||||
$builder = $this->db->table('races');
|
$builder = $this->db->table('races r');
|
||||||
$builder->where('id', $race);
|
$builder->join('cars c', 'c.id = r.car_id');
|
||||||
|
$builder->join('tracks t', 't.id = r.track_id');
|
||||||
|
$builder->join('users u', 'u.id = r.user_id');
|
||||||
|
$builder->select('r.id, r.type, r.timestamp, r.car_id, c.name AS car_name, c.img as car_img, r.track_id, t.name AS track_name, t.img AS track_img, u.username');
|
||||||
|
$builder->where('r.id', $race);
|
||||||
$query = $builder->get(1);
|
$query = $builder->get(1);
|
||||||
|
|
||||||
$tplData = [];
|
$tplData = [];
|
||||||
|
@ -36,10 +44,6 @@ class Races extends BaseController
|
||||||
$tplData['laps'] = json_encode($query->getResult());
|
$tplData['laps'] = json_encode($query->getResult());
|
||||||
$tplData['race']->n_laps = $query->getNumRows();
|
$tplData['race']->n_laps = $query->getNumRows();
|
||||||
}
|
}
|
||||||
|
|
||||||
$tplData['user'] = new UsersModel($tplData['race']->user_id);
|
|
||||||
$tplData['car'] = new CarsModel(getCar($tplData['race']->car_id));
|
|
||||||
$tplData['track'] = new TracksModel(getTrack($tplData['race']->track_id));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
echo get_header('Races');
|
echo get_header('Races');
|
||||||
|
|
|
@ -8,26 +8,27 @@ use CodeIgniter\API\ResponseTrait;
|
||||||
|
|
||||||
class Register extends BaseController
|
class Register extends BaseController
|
||||||
{
|
{
|
||||||
protected $users;
|
protected object $users;
|
||||||
protected $captcha;
|
protected object $captcha;
|
||||||
|
|
||||||
use ResponseTrait;
|
use ResponseTrait;
|
||||||
|
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
$this->captcha = new CaptchaBuilder;
|
$this->captcha = new CaptchaBuilder;
|
||||||
session_start();
|
$this->users = new UsersModel;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
$this->captcha->build();
|
$this->captcha->build();
|
||||||
$_SESSION['phrase'] = $this->captcha->getPhrase();
|
$this->session->set('phrase', $this->captcha->getPhrase());
|
||||||
echo get_header('Register');
|
echo get_header('Register');
|
||||||
echo view('register', ['captcha' => $this->captcha->inline()]);
|
echo view('register', ['captcha' => $this->captcha->inline()]);
|
||||||
echo get_footer(['register.js']);
|
echo get_footer(['register.js']);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function newuser()
|
public function newUser()
|
||||||
{
|
{
|
||||||
$data = $this->request->getVar();
|
$data = $this->request->getVar();
|
||||||
$response = [
|
$response = [
|
||||||
|
@ -36,21 +37,24 @@ class Register extends BaseController
|
||||||
];
|
];
|
||||||
|
|
||||||
// First verify the captcha
|
// First verify the captcha
|
||||||
if (isset($_SESSION['phrase']) && PhraseBuilder::comparePhrases($_SESSION['phrase'], $data['phrase'])) {
|
if (
|
||||||
|
$this->session->has('phrase') &&
|
||||||
|
PhraseBuilder::comparePhrases($this->session->phrase, $data['phrase'])
|
||||||
|
) {
|
||||||
// Move the image
|
// Move the image
|
||||||
$file = $this->request->getFile('imginput');
|
$file = $this->request->getFile('imginput');
|
||||||
if ($file) {
|
if ($file)
|
||||||
|
{
|
||||||
// Verify is the file is correct and not, for example, a .exe renamed to .jpg
|
// Verify is the file is correct and not, for example, a .exe renamed to .jpg
|
||||||
$ext = $file->guessExtension();
|
$ext = $file->guessExtension();
|
||||||
|
|
||||||
if ($ext != $file->getExtension()) $response['msg'] = 'The image is not valid';
|
if ($ext != $file->getExtension()) $response['msg'] = 'The image is not valid';
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$users = new UsersModel();
|
|
||||||
// Now we check if the user and/or email is already in use.
|
// Now we check if the user and/or email is already in use.
|
||||||
if ($users->compUser($data['username'], $data['email']))
|
if ($this->users->compUser($data['username'], $data['email']))
|
||||||
$response['msg'] = 'Username and/or email is already in use';
|
$response['msg'] = 'Username and/or email is already in use';
|
||||||
else $response = $users->addUser($data, $file);
|
else $response = $this->users->addUser($data, $file);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -61,10 +65,10 @@ class Register extends BaseController
|
||||||
return $this->respond($response);
|
return $this->respond($response);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function new_captcha()
|
public function newCaptcha()
|
||||||
{
|
{
|
||||||
$this->captcha->build();
|
$this->captcha->build();
|
||||||
$_SESSION['phrase'] = $this->captcha->getPhrase();
|
$this->session->phrase = $this->captcha->getPhrase();
|
||||||
return $this->captcha->inline();
|
return $this->captcha->inline();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,15 +2,20 @@
|
||||||
|
|
||||||
namespace App\Controllers;
|
namespace App\Controllers;
|
||||||
use App\Models\TracksModel;
|
use App\Models\TracksModel;
|
||||||
use App\Models\CarsModel;
|
|
||||||
|
|
||||||
class Tracks extends BaseController
|
class Tracks extends BaseController
|
||||||
{
|
{
|
||||||
|
private object $tracksModel;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
$this->tracksModel = new TracksModel();
|
||||||
|
}
|
||||||
|
|
||||||
function index($id)
|
function index($id)
|
||||||
{
|
{
|
||||||
$this->cachePage(3600);
|
$this->cachePage(3600);
|
||||||
$track = getTrack($id);
|
$track = $this->tracksModel->data($id);
|
||||||
$bestLaps = getBestTimesTrack($id);
|
$bestLaps = getBestTimesTrack($id);
|
||||||
echo get_header('Track: ' . $track->name);
|
echo get_header('Track: ' . $track->name);
|
||||||
echo view('track', ['track' => $track, 'bestLaps' => $bestLaps]);
|
echo view('track', ['track' => $track, 'bestLaps' => $bestLaps]);
|
||||||
|
|
|
@ -5,16 +5,16 @@ use App\Models\UsersModel;
|
||||||
|
|
||||||
class Users extends BaseController
|
class Users extends BaseController
|
||||||
{
|
{
|
||||||
protected $users;
|
protected object $usersModel;
|
||||||
|
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
$this->users = new UsersModel();
|
$this->usersModel = new UsersModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
$users = $this->users->getUsers();
|
$users = $this->usersModel->findAll();
|
||||||
$tplData = [];
|
$tplData = [];
|
||||||
$tplData['users'] = $users;
|
$tplData['users'] = $users;
|
||||||
echo get_header('Users');
|
echo get_header('Users');
|
||||||
|
@ -25,17 +25,15 @@ class Users extends BaseController
|
||||||
public function user($username)
|
public function user($username)
|
||||||
{
|
{
|
||||||
//$this->cachePage(3600);
|
//$this->cachePage(3600);
|
||||||
$userid = $this->users->getUser($username);
|
$user = $this->usersModel->getUser($username);
|
||||||
$user = new UsersModel($userid);
|
$userraces = $this->usersModel->getRaces();
|
||||||
unset($user->addUser);
|
$raceswon = $this->usersModel->getWon();
|
||||||
$userraces = $user->getRaces();
|
$racespodiums = $this->usersModel->getPodiums();
|
||||||
$raceswon = $user->getWon();
|
$racesretired = $this->usersModel->getUnfinisced();
|
||||||
$racespodiums = $user->getPodiums();
|
$practices = $this->usersModel->getPractices();
|
||||||
$racesretired = $user->getUnfinisced();
|
$qualifies = $this->usersModel->getQualifies();
|
||||||
$practices = $user->getPractices();
|
|
||||||
$qualifies = $user->getQualifies();
|
|
||||||
$tplData = [
|
$tplData = [
|
||||||
'raceSessions' => $user->getRaceSessions(),
|
'raceSessions' => $this->usersModel->getRaceSessions(),
|
||||||
'userRaces' => $userraces,
|
'userRaces' => $userraces,
|
||||||
'racesWon' => $raceswon,
|
'racesWon' => $raceswon,
|
||||||
'raceswonpercent' => percentStr($raceswon, count($userraces)),
|
'raceswonpercent' => percentStr($raceswon, count($userraces)),
|
||||||
|
@ -45,16 +43,24 @@ class Users extends BaseController
|
||||||
'qualifiescount' => $qualifies,
|
'qualifiescount' => $qualifies,
|
||||||
'racesretired' => $racesretired,
|
'racesretired' => $racesretired,
|
||||||
'racesretiredpercent' => percentStr($racesretired, count($userraces)),
|
'racesretiredpercent' => percentStr($racesretired, count($userraces)),
|
||||||
'mostusedcar' => $user->getMostUsedCar(),
|
'mostusedcar' => $this->usersModel->getMostUsedCar(),
|
||||||
'mostusedtrack' => $user->getMostUsedTrack(),
|
'mostusedtrack' => $this->usersModel->getMostUsedTrack(),
|
||||||
'timeontrackPractice' => $user->getTimePractice(),
|
'timeontrackPractice' => $this->usersModel->getTimePractice(),
|
||||||
'timeontrackQualify' => $user->getTimeQualify(),
|
'timeontrackQualify' => $this->usersModel->getTimeQualify(),
|
||||||
'timeontrackRace' => $user->getTimeOnRace(),
|
'timeontrackRace' => $this->usersModel->getTimeOnRace(),
|
||||||
'timeontrack' => $user->getTimeOnTracks(),
|
'timeontrack' => $this->usersModel->getTimeOnTracks(),
|
||||||
'user' => $user
|
'user' => $user
|
||||||
];
|
];
|
||||||
|
log_message('debug', json_encode($tplData['raceSessions']));
|
||||||
echo get_header("User: $username");
|
echo get_header("User: $username");
|
||||||
echo view('user', $tplData);
|
echo view('user', $tplData);
|
||||||
echo get_footer();
|
echo get_footer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function login()
|
||||||
|
{
|
||||||
|
echo get_header("Log In");
|
||||||
|
echo view('login');
|
||||||
|
echo get_footer(['dashboard.js']);
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -14,9 +14,12 @@ class Webserver extends BaseController
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
|
// Log connection
|
||||||
|
log_message('debug', 'New connection');
|
||||||
|
$so = getOS();
|
||||||
$data = $this->request->getPost('data');
|
$data = $this->request->getPost('data');
|
||||||
|
|
||||||
if (!$data) return $this->failValidationError('No data received');
|
if (!$data) return $this->failValidationErrors('No data received');
|
||||||
|
|
||||||
$xml = xmlObj($data);
|
$xml = xmlObj($data);
|
||||||
|
|
||||||
|
|
|
@ -12,11 +12,6 @@ class Users
|
||||||
const HASH = PASSWORD_DEFAULT;
|
const HASH = PASSWORD_DEFAULT;
|
||||||
const COST = 16;
|
const COST = 16;
|
||||||
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$this->db = \Config\Database::connect();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add new to the database
|
* Add new to the database
|
||||||
*/
|
*/
|
||||||
|
@ -29,6 +24,7 @@ class Users
|
||||||
|
|
||||||
unset($data['passwordcheck']);
|
unset($data['passwordcheck']);
|
||||||
unset($data['phrase']);
|
unset($data['phrase']);
|
||||||
|
unset($data['PHPSESSID']);
|
||||||
|
|
||||||
// First verify if the user or email
|
// First verify if the user or email
|
||||||
$sql = $this->db->table('users');
|
$sql = $this->db->table('users');
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
</h1>
|
</h1>
|
||||||
<div class="ct-info">
|
<div class="ct-info">
|
||||||
<div class="ct-img">
|
<div class="ct-img">
|
||||||
<?= $car->imgTagFull() ?>
|
<?= imgTagFull($car->img, 'car', $car->name) ?>
|
||||||
</div>
|
</div>
|
||||||
<div class="ct-info-body">
|
<div class="ct-info-body">
|
||||||
<div class="ct-info-row">
|
<div class="ct-info-row">
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
<div class="container">
|
||||||
|
<h1>Log In</h1>
|
||||||
|
<form id="login-form">
|
||||||
|
<label>Username</label>
|
||||||
|
<input type="text" name="username" />
|
||||||
|
<label>Password</label>
|
||||||
|
<input type="password" name="passwd" />
|
||||||
|
<button type="submit">Login</button>
|
||||||
|
</form>
|
||||||
|
<div id="login-error" class="error">
|
||||||
|
Usuario y/o contraseña incorrecto.
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -1,30 +1,32 @@
|
||||||
<?php
|
<?php
|
||||||
use App\Models\UsersModel;
|
|
||||||
$menu = '<nav>';
|
$menu = '<nav>';
|
||||||
$menuSelect = '<select id="menu-select">';
|
$menuSelect = '<select id="menu-select">';
|
||||||
/*################################
|
/*################################
|
||||||
## generate the car category selection menu
|
## generate the car category selection menu
|
||||||
################################
|
################################
|
||||||
*/
|
*/
|
||||||
foreach ($carCategoriesList as $id => $category) {
|
foreach ($carCategoriesList as $cat)
|
||||||
|
{
|
||||||
$class = '';
|
$class = '';
|
||||||
$selected = '';
|
$selected = '';
|
||||||
//if the category contain no cars we do no consider it
|
//if the category contain no cars we do no consider it
|
||||||
//todo: should we display only officially released ones?
|
//todo: should we display only officially released ones?
|
||||||
if (count($category->cars) > 0) {
|
if ($cat->totalCars > 0)
|
||||||
|
{
|
||||||
//if no category has been chosen by the user, used the first valid (non empty) one
|
//if no category has been chosen by the user, used the first valid (non empty) one
|
||||||
if ($carCatId=='') {
|
if ($carCatId == '') $carCatId = $cat->id;
|
||||||
$carCatId= $id;
|
|
||||||
}
|
|
||||||
|
|
||||||
//set a splecial class for the menu item that represent the currently selected class
|
//set a splecial class for the menu item that represent the currently selected class
|
||||||
if ($carCatId == $id ){
|
if ($carCatId == $cat->id )
|
||||||
|
{
|
||||||
$class = 'class="selected"';
|
$class = 'class="selected"';
|
||||||
$selected = 'selected';
|
$selected = 'selected';
|
||||||
}
|
}
|
||||||
|
|
||||||
//echo "\n<a href='?cat=".$id."' $class>".$category->name."</a>";
|
//echo "\n<a href='?cat=".$id."' $class>".$category->name."</a>";
|
||||||
$menu .= '<a href="'.rewriteUrl('cat',$id).'"'."$class>".$category->name."</a>";
|
$url = rewriteUrl('cat', $cat->id);
|
||||||
$menuSelect .= '<option value="'.rewriteUrl('cat',$id).'"'."$selected>".$category->name."</option>";
|
$menu .= "<a href=\"$url\" $class>{$cat->name}</a>";
|
||||||
|
$menuSelect .= "<option value=\"$url\" $selected>{$cat->name}</option>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$menu .= '</nav>';
|
$menu .= '</nav>';
|
||||||
|
@ -45,9 +47,12 @@
|
||||||
<a id="allTime" href="<?= rewriteUrl('period','allTime'); ?>">All Time</a>
|
<a id="allTime" href="<?= rewriteUrl('period','allTime'); ?>">All Time</a>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
|
<?php if (!empty($currCat)): ?>
|
||||||
<h1 id="cat-title">
|
<h1 id="cat-title">
|
||||||
<?= $carCategories->$carCatId->name; ?>
|
<?= $currCat->name ?>
|
||||||
</h1>
|
</h1>
|
||||||
|
<?php endif ?>
|
||||||
|
|
||||||
<h3>
|
<h3>
|
||||||
Most active users<br />
|
Most active users<br />
|
||||||
<small><?= $periodString; ?></small>
|
<small><?= $periodString; ?></small>
|
||||||
|
@ -61,15 +66,14 @@
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<?php
|
<?php
|
||||||
foreach ($users as $race):
|
foreach ($users as $user):
|
||||||
$user = new UsersModel($race->user_id);
|
|
||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td data-title="Pilot">
|
<td data-title="Pilot">
|
||||||
<?= $user->getLink() ?>
|
<?= clickableName($user->username, 'user', $user->username) ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Races">
|
<td data-title="Races">
|
||||||
<?= $race->count ?>
|
<?= $user->count ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
|
@ -95,19 +99,18 @@
|
||||||
<tbody>
|
<tbody>
|
||||||
<?php
|
<?php
|
||||||
foreach ($mylaps as $mylap):
|
foreach ($mylaps as $mylap):
|
||||||
$user=new UsersModel($mylap->user_id);
|
|
||||||
$track = $mylap->track_id;
|
$track = $mylap->track_id;
|
||||||
$car = $mylap->car_id;
|
$car = $mylap->car_id;
|
||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td data-title="Track">
|
<td data-title="Track">
|
||||||
<?= getTrack($track)->clickableName(); ?>
|
<?= clickableName($mylap->track_id, 'track', $mylap->track_name) ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Pilot">
|
<td data-title="Pilot">
|
||||||
<?= $user->getLink(); ?>
|
<?= clickableName($mylap->username, 'user', $mylap->username) ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Car">
|
<td data-title="Car">
|
||||||
<?= getCar($car)->clickableName(); ?>
|
<?= clickableName($mylap->car_id, 'car', $mylap->car_name) ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Laptime">
|
<td data-title="Laptime">
|
||||||
<?= formatLaptime($mylap->bestlap); ?>
|
<?= formatLaptime($mylap->bestlap); ?>
|
||||||
|
@ -119,7 +122,7 @@
|
||||||
<?= $mylap->timestamp; ?>
|
<?= $mylap->timestamp; ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Session">
|
<td data-title="Session">
|
||||||
<a href="<?= base_url() ?>/race/<?= $mylap->race_id ?>">#<?=$mylap->race_id?></a>
|
<a href="<?= base_url() ?>race/<?= $mylap->race_id ?>">#<?=$mylap->race_id?></a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php endforeach ?>
|
<?php endforeach ?>
|
||||||
|
@ -139,10 +142,9 @@
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<?php foreach ($tracks as $race): ?>
|
<?php foreach ($tracks as $race): ?>
|
||||||
<?php $track = $race->track_id ?>
|
|
||||||
<tr>
|
<tr>
|
||||||
<td data-title="Track">
|
<td data-title="Track">
|
||||||
<?= getTrack($track)->clickableName() ?>
|
<?= clickableName($race->track_id, 'track', $tracksNames[$race->track_id]) ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Races">
|
<td data-title="Races">
|
||||||
<?= $race->count ?>
|
<?= $race->count ?>
|
||||||
|
@ -151,7 +153,6 @@
|
||||||
<?php endforeach ?>
|
<?php endforeach ?>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<h3>
|
<h3>
|
||||||
Top cars<br />
|
Top cars<br />
|
||||||
<small><?php echo $periodString; ?></small>
|
<small><?php echo $periodString; ?></small>
|
||||||
|
@ -164,14 +165,13 @@
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<?php foreach ($cars as $race): ?>
|
<?php foreach ($cars as $car): ?>
|
||||||
<?php $car = $race->car_id ?>
|
|
||||||
<tr>
|
<tr>
|
||||||
<td data-title="Car">
|
<td data-title="Car">
|
||||||
<?= getCar($car)->clickableName() ?>
|
<?= clickableName($car->car_id, 'car', $car->name) ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Races">
|
<td data-title="Races">
|
||||||
<?= $race->count ?>
|
<?= $car->count ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php endforeach ?>
|
<?php endforeach ?>
|
||||||
|
|
|
@ -15,19 +15,19 @@
|
||||||
<tr>
|
<tr>
|
||||||
<th>Track:</th>
|
<th>Track:</th>
|
||||||
<td id="race-track-img">
|
<td id="race-track-img">
|
||||||
<?= $track->linkTitleImgTag() ?>
|
<?= linkTitleImgTag($race->track_id, 'track', $race->track_name, $race->track_img) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>Car:</th>
|
<th>Car:</th>
|
||||||
<td>
|
<td>
|
||||||
<?= $car->linkTitleImgTag() ?>
|
<?= linkTitleImgTag($race->car_id, 'car', $race->car_name, $race->car_img) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>User:</th>
|
<th>User:</th>
|
||||||
<td>
|
<td>
|
||||||
<?= $user->getLink() ?>
|
<?= clickableName($race->username, 'user', $race->username) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
|
@ -1,9 +1,12 @@
|
||||||
<?php use App\Models\CarsModel; ?>
|
<?php
|
||||||
|
use App\Models\CarsModel;
|
||||||
|
$carsModel = new CarsModel();
|
||||||
|
?>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h1><?= $track->name; ?></h1>
|
<h1><?= $track->name; ?></h1>
|
||||||
<div class="ct-info">
|
<div class="ct-info">
|
||||||
<div class="ct-img">
|
<div class="ct-img">
|
||||||
<?= $track->imgTagFull() ?>
|
<?= imgTagFull($track->img, 'track-img', $track->name) ?>
|
||||||
</div>
|
</div>
|
||||||
<div class="ct-info-body">
|
<div class="ct-info-body">
|
||||||
<div class="ct-info-row">
|
<div class="ct-info-row">
|
||||||
|
@ -35,7 +38,7 @@
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<?php foreach($bestLaps as $bl): ?>
|
<?php foreach($bestLaps as $bl): ?>
|
||||||
<?php $car = new CarsModel(getCar($bl->car_id)) ?>
|
<?php $car = $carsModel->data($bl->car_id) ?>
|
||||||
<tr>
|
<tr>
|
||||||
<td data-title="Racer">
|
<td data-title="Racer">
|
||||||
<?= $bl->username ?>
|
<?= $bl->username ?>
|
||||||
|
@ -44,7 +47,7 @@
|
||||||
<?= formatLaptime($bl->laptime) ?>
|
<?= formatLaptime($bl->laptime) ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Car">
|
<td data-title="Car">
|
||||||
<?= $car->clickableName() ?>
|
<?= clickableName($car->id, 'car', $car->name) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php endforeach ?>
|
<?php endforeach ?>
|
||||||
|
|
|
@ -6,14 +6,15 @@
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div id="user-header">
|
<div id="user-header">
|
||||||
<div id="user-img">
|
<div id="user-img">
|
||||||
<?= $user->getImgFile() ?>
|
<img class="avatar" src="<?= base_url("img/users/{$user->img}") ?>" alt="<?= $user->username ?>">
|
||||||
</div>
|
</div>
|
||||||
<div id="user-info">
|
<div id="user-info">
|
||||||
<div>
|
<div>
|
||||||
<span class="user-info-title">Name:</span> <?= $user->username ?>
|
<span class="user-info-title">Name:</span> <?= $user->username ?>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<span class="user-info-title">Country:</span> <img src="<?=base_url()?>/img/flags/flags_small/<?=$user->flag ?>" alt="<?=$user->nation?>" > <?=$user->nation ?>
|
<span class="user-info-title">Country:</span>
|
||||||
|
<img src="<?=base_url("img/flags/flags_small/<?=$user->flag")?>" alt="<?=$user->nation?>" > <?=$user->nation ?>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<span class="user-info-title">Total time:</span><?= secondsToTime(round($timeontrack, 0)) ?>
|
<span class="user-info-title">Total time:</span><?= secondsToTime(round($timeontrack, 0)) ?>
|
||||||
|
@ -32,11 +33,11 @@
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<span class="user-info-title">Favorite car:</span>
|
<span class="user-info-title">Favorite car:</span>
|
||||||
<?php if ($mostusedcar->car) echo $mostusedcar->car->clickableName(); ?>
|
<?php if ($mostusedcar->car) echo clickableName($mostusedcar->car->id, 'car', $mostusedcar->car->name); ?>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<span class="user-info-title">Favorite track:</span>
|
<span class="user-info-title">Favorite track:</span>
|
||||||
<?php if ($mostusedtrack->track) echo $mostusedtrack->track->clickableName(); ?>
|
<?php if ($mostusedtrack->track) echo clickableName($mostusedtrack->track->id, 'track', $mostusedtrack->track->name); ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -107,7 +108,7 @@
|
||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td data-title="Session ID">
|
<td data-title="Session ID">
|
||||||
<a href="<?=base_url()?>/race/<?=$race->id?>"><?=$race->id?></a>
|
<a href="<?=base_url("race/{$race->id}")?>"><?=$race->id?></a>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Type">
|
<td data-title="Type">
|
||||||
<?= racetype($race->type) ?>
|
<?= racetype($race->type) ?>
|
||||||
|
@ -116,10 +117,10 @@
|
||||||
<?= date_format(new DateTime($race->timestamp), 'd M Y @ H:i') ?>
|
<?= date_format(new DateTime($race->timestamp), 'd M Y @ H:i') ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Track">
|
<td data-title="Track">
|
||||||
<?= getTrack($race->track_id)->name ?>
|
<?= $race->track_name ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Car">
|
<td data-title="Car">
|
||||||
<?= getCar($race->car_id)->name ?>
|
<?= $race->car_name ?>
|
||||||
</td>
|
</td>
|
||||||
<td data-title="Finish Position">
|
<td data-title="Finish Position">
|
||||||
<?php
|
<?php
|
||||||
|
@ -127,19 +128,11 @@
|
||||||
{
|
{
|
||||||
echo $race->endposition;
|
echo $race->endposition;
|
||||||
$gain = $race->startposition - $race->endposition;
|
$gain = $race->startposition - $race->endposition;
|
||||||
if ($gain >= 0)
|
|
||||||
{
|
if ($gain >= 0) echo " <sup style='color:green;'>(+$gain)</sup>";
|
||||||
echo " <sup style='color:green;'>(+$gain)</sup>";
|
else echo "<sup style='color:red;'>($gain)</sup>";
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
echo "<sup style='color:red;'>($gain)</sup>";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
echo 'Retired/Not finished';
|
|
||||||
}
|
}
|
||||||
|
else echo 'Retired/Not finished';
|
||||||
?>
|
?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="cards">
|
<div class="cards">
|
||||||
<?php foreach ($users as $user): ?>
|
<?php foreach ($users as $user): ?>
|
||||||
<a href="<?= base_url() ?>/user/<?= $user->username ?>" class="user-card">
|
<a href="<?= base_url() ?>user/<?= $user->username ?>" class="user-card">
|
||||||
<div class="card-head">
|
<div class="card-head">
|
||||||
<div class="card-title">
|
<div class="card-title">
|
||||||
<?= $user->username ?>
|
<?= $user->username ?>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-img">
|
<div class="card-img">
|
||||||
<img src="<?=base_url()?>/img/users/<?=$user->img?>">
|
<img src="<?=base_url()?>img/users/<?=$user->img?>">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
|
|
@ -560,11 +560,53 @@ sd-carcategoryselection {
|
||||||
margin: 1rem auto;
|
margin: 1rem auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
#race-info #race-track-img img {
|
#race-info #race-track-img img,
|
||||||
|
.ct-img {
|
||||||
background: #bdbdbd;
|
background: #bdbdbd;
|
||||||
padding: .3rem
|
padding: .3rem
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Login */
|
||||||
|
#login-form {
|
||||||
|
width: 240px;
|
||||||
|
margin: auto;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
#login-form button {
|
||||||
|
display: block;
|
||||||
|
background-color: #13aff0;
|
||||||
|
border: 0;
|
||||||
|
font-size: 1.2rem;
|
||||||
|
padding: .5rem 1rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
color: #fff;
|
||||||
|
margin: .5rem auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#login-error {
|
||||||
|
width: auto;
|
||||||
|
max-width: 380px;
|
||||||
|
margin: auto;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#login-error::before {
|
||||||
|
content: '';
|
||||||
|
}
|
||||||
|
|
||||||
|
#img_404 {
|
||||||
|
display: block;
|
||||||
|
margin: auto;
|
||||||
|
max-width: 192px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#text_404 {
|
||||||
|
font-size: 1.2rem;
|
||||||
|
font-weight: 600;
|
||||||
|
text-align: center
|
||||||
|
}
|
||||||
|
|
||||||
@media (min-width: 640px) and (max-width: 1023px) {
|
@media (min-width: 640px) and (max-width: 1023px) {
|
||||||
.cards > .user-card {
|
.cards > .user-card {
|
||||||
width: 45%;
|
width: 45%;
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 4.4 KiB |
|
@ -0,0 +1,544 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
width="512"
|
||||||
|
height="512"
|
||||||
|
viewBox="0 0 135.46666 135.46667"
|
||||||
|
version="1.1"
|
||||||
|
id="svg5"
|
||||||
|
xml:space="preserve"
|
||||||
|
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
|
||||||
|
sodipodi:docname="404.svg"
|
||||||
|
inkscape:export-filename="404.png"
|
||||||
|
inkscape:export-xdpi="98.304085"
|
||||||
|
inkscape:export-ydpi="98.304085"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
||||||
|
id="namedview7"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1.0"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1"
|
||||||
|
inkscape:document-units="mm"
|
||||||
|
showgrid="false"
|
||||||
|
inkscape:zoom="1"
|
||||||
|
inkscape:cx="366.5"
|
||||||
|
inkscape:cy="158.5"
|
||||||
|
inkscape:window-width="1334"
|
||||||
|
inkscape:window-height="712"
|
||||||
|
inkscape:window-x="32"
|
||||||
|
inkscape:window-y="32"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="layer2" /><defs
|
||||||
|
id="defs2" /><g
|
||||||
|
inkscape:label="Capa 1"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer1"
|
||||||
|
sodipodi:insensitive="true"
|
||||||
|
style="display:none"><image
|
||||||
|
width="135.46666"
|
||||||
|
height="135.46666"
|
||||||
|
preserveAspectRatio="none"
|
||||||
|
xlink:href="data:image/png;base64,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
|
||||||
|
"
|
||||||
|
id="image190"
|
||||||
|
x="37.26667"
|
||||||
|
y="80.76667" /></g><g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer2"
|
||||||
|
inkscape:label="dibujo"
|
||||||
|
style="opacity:1"><g
|
||||||
|
id="g2622"
|
||||||
|
transform="matrix(0.96711724,0,0,0.9671188,-33.813977,-75.883808)"><rect
|
||||||
|
style="color:#000000;overflow:visible;fill:#ffffff;stroke:#000000;stroke-width:1.32292;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;paint-order:stroke fill markers"
|
||||||
|
id="rect909"
|
||||||
|
width="135.46666"
|
||||||
|
height="135.46666"
|
||||||
|
x="37.26667"
|
||||||
|
y="80.76667"
|
||||||
|
ry="4.77422" /><path
|
||||||
|
id="rect963"
|
||||||
|
style="color:#000000;overflow:visible;fill:#003399;fill-opacity:1;stroke:none;stroke-width:1.32292;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;paint-order:stroke fill markers"
|
||||||
|
sodipodi:type="inkscape:offset"
|
||||||
|
inkscape:radius="-2.7511361"
|
||||||
|
inkscape:original="M 42.041016 80.767578 C 39.396098 80.767578 37.267578 82.896098 37.267578 85.541016 L 37.267578 211.45898 C 37.267578 214.1039 39.396098 216.23242 42.041016 216.23242 L 167.95898 216.23242 C 170.6039 216.23242 172.73242 214.1039 172.73242 211.45898 L 172.73242 85.541016 C 172.73242 82.896098 170.6039 80.767578 167.95898 80.767578 L 42.041016 80.767578 z "
|
||||||
|
d="m 42.041016,83.519531 c -1.168918,0 -2.021485,0.852567 -2.021485,2.021485 V 211.45898 c 0,1.16893 0.852567,2.02149 2.021485,2.02149 H 167.95898 c 1.16893,0 2.02149,-0.85256 2.02149,-2.02149 V 85.541016 c 0,-1.168918 -0.85256,-2.021485 -2.02149,-2.021485 z" /><rect
|
||||||
|
style="color:#000000;overflow:visible;opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.3037;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;paint-order:stroke fill markers"
|
||||||
|
id="rect1831"
|
||||||
|
width="62.196301"
|
||||||
|
height="22.508797"
|
||||||
|
x="73.682076"
|
||||||
|
y="116.36103"
|
||||||
|
rx="0"
|
||||||
|
ry="0" /><rect
|
||||||
|
style="color:#000000;overflow:visible;opacity:1;fill:#d50000;fill-opacity:1;stroke:none;stroke-width:1.09906;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;paint-order:stroke fill markers"
|
||||||
|
id="rect2613"
|
||||||
|
width="57.10928"
|
||||||
|
height="17.421778"
|
||||||
|
x="76.225586"
|
||||||
|
y="118.90454"
|
||||||
|
rx="0"
|
||||||
|
ry="0" /><rect
|
||||||
|
style="color:#000000;overflow:visible;opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.28259;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;paint-order:stroke fill markers"
|
||||||
|
id="rect2615"
|
||||||
|
width="17.238243"
|
||||||
|
height="78.397858"
|
||||||
|
x="96.380875"
|
||||||
|
y="137.72058" /></g></g></svg>
|
After Width: | Height: | Size: 38 KiB |
Loading…
Reference in New Issue