From c3174142c5ccba92fa4f3732fcf29b4fd982c34e Mon Sep 17 00:00:00 2001 From: Ruben Tome Date: Fri, 24 Nov 2023 16:16:10 +0100 Subject: [PATCH] Ajout des factions, contrats et agents --- js/agents.js | 48 +++++++++++++++++++++++++++ js/contrat.js | 41 +++++++++++++++++++++++ js/faction.js | 48 +++++++++++++++++++++++++++ js/main.js | 71 +++++++++++++++------------------------- js/system.js | 78 ++++++++++++++++++++++++++++++++++++++++++++ templates/index.html | 2 +- token | 2 +- 7 files changed, 244 insertions(+), 46 deletions(-) create mode 100644 js/agents.js create mode 100644 js/contrat.js create mode 100644 js/faction.js create mode 100644 js/system.js diff --git a/js/agents.js b/js/agents.js new file mode 100644 index 0000000..caaf814 --- /dev/null +++ b/js/agents.js @@ -0,0 +1,48 @@ +'use strict' +import { listSystems, getSystem, listWaypointsInSystem } from "./system.js" +let token = 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4xMjMiLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDA4MzM2NTgsInN1YiI6ImFnZW50LXRva2VuIn0.SQSgewmJhhOlnk3wst9ND61D6JoAXSW6tZAJhS8c0IxyegVVe7ZkCBCU3tBraxWwEwR6wAnc8iCWzaS5Ir6mHbLhDR5UAaJwBasTMHQN1dXeQGJE83CjhciAyxWUV3iej4M1OD0kzG2uHFicLt9emOlCEbVcroXn2_F4K9kQDRjpoy3KEzGJxJbvWqug9mo5Ejb0WupB0Sim-mWwBmmpbkCx-MbakzZ5tUfUC5h-dAVsUIqnfrr7QCOq3zPrdt7zZzsOXFcwPwE6hbag62J5ROQtPfx1r9w-6pf7-mOOmEYSWHbArbls9f71o9Wf6A1qv3yPWGVjr5qQ1EFo_H-x_g' +export function getAgent() { + const settings = { + async: true, + crossDomain: true, + url: 'https://api.spacetraders.io/v2/my/agent', + method: 'GET', + headers: { + Accept: 'application/json', + Authorization: `Bearer ${token}` + } + }; + $.ajax(settings).done(function (reponse) { + $('.main-window').prepend(` +
+ +

${reponse.data.symbol}

+

${reponse.data.headquarters}

+

${reponse.data.credits}

+

${reponse.data.startingFaction}

+

${reponse.data.shipCount}

+
+ `); + let metaSystem = reponse.data.headquarters.split("-"); + getSystem(metaSystem[0] + "-" + metaSystem[1]); + }); +} +export async function createAgent(symbol, faction){ + const settings = { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + symbol: symbol, + faction: faction, + }), + success: function(response){ + symbol = response.data; + }, + error: function(error){ + console.log(error); + } + }; + +} \ No newline at end of file diff --git a/js/contrat.js b/js/contrat.js new file mode 100644 index 0000000..8c7ad22 --- /dev/null +++ b/js/contrat.js @@ -0,0 +1,41 @@ +'use strict' + +let token = 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4xMjMiLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDA4MzM2NTgsInN1YiI6ImFnZW50LXRva2VuIn0.SQSgewmJhhOlnk3wst9ND61D6JoAXSW6tZAJhS8c0IxyegVVe7ZkCBCU3tBraxWwEwR6wAnc8iCWzaS5Ir6mHbLhDR5UAaJwBasTMHQN1dXeQGJE83CjhciAyxWUV3iej4M1OD0kzG2uHFicLt9emOlCEbVcroXn2_F4K9kQDRjpoy3KEzGJxJbvWqug9mo5Ejb0WupB0Sim-mWwBmmpbkCx-MbakzZ5tUfUC5h-dAVsUIqnfrr7QCOq3zPrdt7zZzsOXFcwPwE6hbag62J5ROQtPfx1r9w-6pf7-mOOmEYSWHbArbls9f71o9Wf6A1qv3yPWGVjr5qQ1EFo_H-x_g' + +export async function listContrats(){ + const settings = { + async: true, + crossDomain: true, + url: 'https://api.spacetraders.io/v2/my/contracts', + method: 'GET', + headers: { + Accept: 'application/json', + Authorization: `Bearer ${token}` + } + }; + + $.ajax(settings).done(function (response) { + console.log(response); + }); +} + +export async function getContrat(contratId){ + let contrat; + + await $.ajax(`https://api.spacetraders.io/v2/my/contracts/${contratId}`, { + method: 'GET', + headers: { + Accept: 'application/json', + Authorization: `Bearer ${token}` + }, + success: function(response){ + contrat = response.data; + + }, + error: function(error){ + console.log(error); + } + }); + + return contrat; +} \ No newline at end of file diff --git a/js/faction.js b/js/faction.js new file mode 100644 index 0000000..6b9c503 --- /dev/null +++ b/js/faction.js @@ -0,0 +1,48 @@ +'use strict' +let token = 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4xMjMiLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDA4MzM2NTgsInN1YiI6ImFnZW50LXRva2VuIn0.SQSgewmJhhOlnk3wst9ND61D6JoAXSW6tZAJhS8c0IxyegVVe7ZkCBCU3tBraxWwEwR6wAnc8iCWzaS5Ir6mHbLhDR5UAaJwBasTMHQN1dXeQGJE83CjhciAyxWUV3iej4M1OD0kzG2uHFicLt9emOlCEbVcroXn2_F4K9kQDRjpoy3KEzGJxJbvWqug9mo5Ejb0WupB0Sim-mWwBmmpbkCx-MbakzZ5tUfUC5h-dAVsUIqnfrr7QCOq3zPrdt7zZzsOXFcwPwE6hbag62J5ROQtPfx1r9w-6pf7-mOOmEYSWHbArbls9f71o9Wf6A1qv3yPWGVjr5qQ1EFo_H-x_g' +export async function listFactions(limit, pages){ + let factions = []; + + for(let page = 1; page <= pages; page++){ + await $.ajax('https://api.spacetraders.io/v2/factions', { + method: 'GET', + headers: { + Accept: 'application/json', + }, + data: { + limit: limit, + page: page + }, + success: function(response){ + response.data.forEach(faction => { + factions.push(faction); + }); + }, + error: function(error){ + console.log(error); + } + }); + } + + return factions; +} + +export async function getFaction(symbol){ + let faction; + + await $.ajax(`https://api.spacetraders.io/v2/factions/${symbol}`, { + method: 'GET', + headers: { + Accept: 'application/json' + }, + success: function(response){ + faction = response.data; + + }, + error: function(error){ + console.log(error); + } + }); + + return faction; +} diff --git a/js/main.js b/js/main.js index 0a09669..75ce2bb 100644 --- a/js/main.js +++ b/js/main.js @@ -1,4 +1,11 @@ -let token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiQU5OTk5VTEFYMTIyNSIsInZlcnNpb24iOiJ2Mi4xLjEiLCJyZXNldF9kYXRlIjoiMjAyMy0xMS0wNCIsImlhdCI6MTcwMDIyNDU5MSwic3ViIjoiYWdlbnQtdG9rZW4ifQ.r05mWtD5FjC4s6Td-ycmHdzL7C2s75lz3q7OBmWeCqUUZ1ejPsRGQRWJDPmIh1kAqO4D9FFs3GCTPZUn1KsnQ-xmDvsIi_mqC1gJV-Q0irI7gwfsGXbfLaVCXo-Q98C_QWRh-O_xkrbhJkCcvnwdEhZm7FnZ3PL4XXKrG0XNa98JrnmG0qlz0cv8V9Q0sSIwXZbvA9BrhuV8PK7_YzPc6LZuNqgPeKiX_B-tSIHHl6Sr1EzuydnczmuS-xKQnbhmcqnpaCXzQmJr7tA8KLgu70KqpPCvA8AI6PLmBlvPWtZ20RdzezqlBh6S9SrBzQ9R0zr_9RyJxq28ws2jnHpVPw"; +'use strict' +import { createAgent, getAgent } from "./agents.js"; +import { listSystems, getSystem, listWaypointsInSystem } from "./system.js" +import {getFaction, listFactions} from "./faction.js" +import {getContrat, listContrats} from "./contrat.js"; + + +let token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4xMjMiLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDA4MzM2NTgsInN1YiI6ImFnZW50LXRva2VuIn0.SQSgewmJhhOlnk3wst9ND61D6JoAXSW6tZAJhS8c0IxyegVVe7ZkCBCU3tBraxWwEwR6wAnc8iCWzaS5Ir6mHbLhDR5UAaJwBasTMHQN1dXeQGJE83CjhciAyxWUV3iej4M1OD0kzG2uHFicLt9emOlCEbVcroXn2_F4K9kQDRjpoy3KEzGJxJbvWqug9mo5Ejb0WupB0Sim-mWwBmmpbkCx-MbakzZ5tUfUC5h-dAVsUIqnfrr7QCOq3zPrdt7zZzsOXFcwPwE6hbag62J5ROQtPfx1r9w-6pf7-mOOmEYSWHbArbls9f71o9Wf6A1qv3yPWGVjr5qQ1EFo_H-x_g"; let offset = { x: 10, y: 10 @@ -15,7 +22,7 @@ function initGame() { Accept: 'application/json' }, processData: false, - data: '{\n "faction": "COSMIC",\n "symbol": "ANNNNulax1225",\n "email": ""\n}' + data: '{\n "faction": "COSMIC",\n "symbol": "",\n "email": ""\n}' }; $.ajax(settings).done(function (response) { @@ -23,32 +30,7 @@ function initGame() { }); } -function getAgent() { - const settings = { - async: true, - crossDomain: true, - url: 'https://api.spacetraders.io/v2/my/agent', - method: 'GET', - headers: { - Accept: 'application/json', - Authorization: `Bearer ${token}` - } - }; - $.ajax(settings).done(function (reponse) { - $('.main-window').prepend(` -
- -

${reponse.data.symbol}

-

${reponse.data.headquarters}

-

${reponse.data.credits}

-

${reponse.data.startingFaction}

-

${reponse.data.shipCount}

-
- `); - let metaSystem = reponse.data.headquarters.split("-"); - getSystem(metaSystem[0] + "-" + metaSystem[1]); - }); -} +getAgent() function getWayPoint(wayPoint) { const settings = { @@ -66,20 +48,21 @@ function getWayPoint(wayPoint) { }); }; -function getSystem(system) { - const settings = { - async: true, - crossDomain: true, - url: `https://api.spacetraders.io/v2/systems/${system}`, - method: 'GET', - headers: { - Accept: 'application/json' - } - }; - - $.ajax(settings).done(function (response) { - drawSystem(response.data.waypoints); - }); -} +// const factions = await listFactions(20,1) +// console.log(factions) + +const faction = await getFaction("COSMIC") +console.log(faction) + + +// const system = await listSystems(20,1) +// console.log(system) + +// const systems = await getSystem("X1-TF11") +// console.log(systems) + +let contrats = await listContrats() +console.log(contrats) -getAgent(); +let contrat = await getContrat("clpcog26n2i66s60calh08olg") +// console.log(contrat) diff --git a/js/system.js b/js/system.js new file mode 100644 index 0000000..0a63b73 --- /dev/null +++ b/js/system.js @@ -0,0 +1,78 @@ +'use strict' +let token = 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4xMjMiLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDA4MzM2NTgsInN1YiI6ImFnZW50LXRva2VuIn0.SQSgewmJhhOlnk3wst9ND61D6JoAXSW6tZAJhS8c0IxyegVVe7ZkCBCU3tBraxWwEwR6wAnc8iCWzaS5Ir6mHbLhDR5UAaJwBasTMHQN1dXeQGJE83CjhciAyxWUV3iej4M1OD0kzG2uHFicLt9emOlCEbVcroXn2_F4K9kQDRjpoy3KEzGJxJbvWqug9mo5Ejb0WupB0Sim-mWwBmmpbkCx-MbakzZ5tUfUC5h-dAVsUIqnfrr7QCOq3zPrdt7zZzsOXFcwPwE6hbag62J5ROQtPfx1r9w-6pf7-mOOmEYSWHbArbls9f71o9Wf6A1qv3yPWGVjr5qQ1EFo_H-x_g' +const lienSysteme = 'https://api.spacetraders.io/v2/systems' + +export async function listSystems(limit, pages){ + let systems = []; + + for(let page = 1; page <= pages; page++){ + await $.ajax('https://api.spacetraders.io/v2/systems/', { + method: 'GET', + headers: { + Accept: 'application/json', + }, + data: { + limit: limit, + page: page + }, + success: function(response){ + response.data.forEach(sytem => { + systems.push(sytem); + }); + }, + error: function(error){ + console.log(error); + } + }); + } + + return systems; +} + +export async function getSystem(systemSymbol){ + let system; + + await $.ajax(`https://api.spacetraders.io/v2/systems/${systemSymbol}`, { + method: 'GET', + headers: { + Accept: 'application/json' + }, + success: function(response){ + system = response.data; + + }, + error: function(error){ + console.log(error); + } + }); + + return system; +} + +export async function listWaypointsInSystem(limit, pages, systemSymbol){ + let waypoints = []; + + for(let page = 1; page <= pages; page++){ + await $.ajax(`https://api.spacetraders.io/v2/systems/${systemSymbol}/waypoints`, { + method: 'GET', + headers: { + Accept: 'application/json', + }, + data: { + limit: limit, + page: page + }, + success: function(response){ + response.data.forEach(waypoint => { + waypoints.push(waypoint); + }); + }, + error: function(error){ + console.log(error); + } + }); + } + + return waypoints; +} + diff --git a/templates/index.html b/templates/index.html index f372487..6aae4df 100644 --- a/templates/index.html +++ b/templates/index.html @@ -6,7 +6,7 @@ - + Space traders diff --git a/token b/token index 9b9b8d9..1136a9a 100644 --- a/token +++ b/token @@ -1 +1 @@ -eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiQU5OTk5VTEFYMTIyNSIsInZlcnNpb24iOiJ2Mi4xLjEiLCJyZXNldF9kYXRlIjoiMjAyMy0xMS0wNCIsImlhdCI6MTcwMDIyNDU5MSwic3ViIjoiYWdlbnQtdG9rZW4ifQ.r05mWtD5FjC4s6Td-ycmHdzL7C2s75lz3q7OBmWeCqUUZ1ejPsRGQRWJDPmIh1kAqO4D9FFs3GCTPZUn1KsnQ-xmDvsIi_mqC1gJV-Q0irI7gwfsGXbfLaVCXo-Q98C_QWRh-O_xkrbhJkCcvnwdEhZm7FnZ3PL4XXKrG0XNa98JrnmG0qlz0cv8V9Q0sSIwXZbvA9BrhuV8PK7_YzPc6LZuNqgPeKiX_B-tSIHHl6Sr1EzuydnczmuS-xKQnbhmcqnpaCXzQmJr7tA8KLgu70KqpPCvA8AI6PLmBlvPWtZ20RdzezqlBh6S9SrBzQ9R0zr_9RyJxq28ws2jnHpVPw \ No newline at end of file +eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4xMjMiLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDA4MzM2NTgsInN1YiI6ImFnZW50LXRva2VuIn0.SQSgewmJhhOlnk3wst9ND61D6JoAXSW6tZAJhS8c0IxyegVVe7ZkCBCU3tBraxWwEwR6wAnc8iCWzaS5Ir6mHbLhDR5UAaJwBasTMHQN1dXeQGJE83CjhciAyxWUV3iej4M1OD0kzG2uHFicLt9emOlCEbVcroXn2_F4K9kQDRjpoy3KEzGJxJbvWqug9mo5Ejb0WupB0Sim-mWwBmmpbkCx-MbakzZ5tUfUC5h-dAVsUIqnfrr7QCOq3zPrdt7zZzsOXFcwPwE6hbag62J5ROQtPfx1r9w-6pf7-mOOmEYSWHbArbls9f71o9Wf6A1qv3yPWGVjr5qQ1EFo_H-x_g \ No newline at end of file