timelaps-front/js/timelaps.js

136 lines
5.6 KiB
JavaScript

var api_url = 'http://timelaps.local:8000/api/v1/';
function getParams() {
}
function showKarts() {
$.ajax({
type: 'GET',
crossDomain: true,
url: api_url + 'karts/',
dataType: 'json',
success: function (data, status) {
console.log(data);
$('#dataTable_kart_list').DataTable({
data: data,
columns: [
{
data: "id",
render: function (data, type, row, meta) {
return '<a href="#" class="btn btn-primary btn-circle"><i class="fas fa-edit"></i></a>&nbsp;<a href="#" class="btn btn-danger btn-circle"><i class="fas fa-trash"></i>';
}
},
{
data: "name"
},
{
data: "autonomy"
}
]
});
},
error: function (xhr) {
alert('Request Status: ' + xhr.status + ' Status Text: ' + xhr.statusText + ' ' + xhr.responseText);
},
});
}
function getKartsMenu() {
$.ajax({
type: 'GET',
crossDomain: true,
url: api_url + 'karts/',
dataType: 'json',
success: function (data, status) {
$.each(data, function (index, value) {
$('#link_all').after("" +
"&nbsp;<a id=\"link_" + value.id + "\" href=\"#\" class=\"btn btn-light btn-icon-split btn-sm\">\n" +
" <span class=\"icon text-gray-600\">\n" +
" <i class=\"fas fa-car\"></i>\n" +
"</span>\n" +
" <span class=\"text\">" + value.name + "</span>" +
" </a>");
});
},
error: function (xhr) {
alert('Request Status: ' + xhr.status + ' Status Text: ' + xhr.statusText + ' ' + xhr.responseText);
},
});
}
function getPilotsByKart() {
$.ajax({
type: 'GET',
crossDomain: true,
url: api_url + 'karts/',
dataType: 'json',
success: function (data, status) {
$.each(data, function (index, value) {
$('.container-fluid').append("" +
"<div class=\"card shadow mb-4\">\n" +
" <div class=\"card-header py-3\">\n" +
" <h6 class=\"m-0 font-weight-bold text-primary\">\n" +
" Pilot list - "+value.name+" \n" +
" <a href=\"#\" class=\"btn btn-primary btn-circle\" title='Ajouter un piote au karting "+value.name+"'>\n" +
" <i class=\"fas fa-plus\"></i>\n" +
" </a>\n" +
" </h6>\n" +
" </div>\n" +
" <div class=\"card-body\">\n" +
" <div class=\"table-responsive\">\n" +
" <table class=\"table table-bordered\" id=\"dataTable_pilots"+value.id+"\" width=\"100%\" cellspacing=\"0\">\n" +
" <thead>\n" +
" <tr>\n" +
" <th></th>\n" +
" <th>Order</th>\n" +
" <th>Short Name</th>\n" +
" <th>First Name</th>\n" +
" <th>Last Name</th>\n" +
" <th>Ref time (Sec)</th>\n" +
" </tr>\n" +
" </thead>\n" +
" <tbody>\n" +
" </tbody>\n" +
" </table>\n" +
" </div>\n" +
" </div>\n" +
" </div>" +
"");
$('#dataTable_pilots'+value.id).DataTable({
data: value.drivers,
columns: [
{
data: "id",
render: function (data, type, row, meta) {
return '<a href="#" class="btn btn-primary btn-circle"><i class="fas fa-edit"></i></a>&nbsp;<a href="#" class="btn btn-danger btn-circle"><i class="fas fa-trash"></i>';
}
},
{
data: "order"
},
{
data: "first_name"
},
{
data: "first_name"
},
{
data: "last_name"
},
{
data: "ref_time"
}
]
});
});
},
error: function (xhr) {
alert('Request Status: ' + xhr.status + ' Status Text: ' + xhr.statusText + ' ' + xhr.responseText);
},
});
}