mapngadev
Version:
API MAPNGADEV
478 lines (436 loc) • 9.56 kB
JavaScript
//script include headers options
//import https from 'https';
//const axios = require('axios');
import * as axios from 'axios';
//console.log(https);
var hostname = 'gabachf.xyz';
//var API = 'https://ngassociation.com/alingapis/mapNgadev/';
var API = 'https://gabachf.xyz/alingapis/mapNgadev/';
const version = '1000/';
//const reqObj : request;
/*
function getData(script) {
//console.log(script);
const opt = {
hostname: hostname,
port: 443,
path: '/alingapis/mapNgadev/' + version + script + '.php',
method: 'GET',
headers: {
'Content-Type' : 'application/json',
'Access-Control-Allow-Origin': 'www.ngassociation.com'
}
};
return new Promise((resolve, reject) => {
const req = https.request(opt,(res)=>{
//reject on bad status
if (res.statusCode < 200 || res.statusCode >= 300) {
return reject(new Error('statusCode=' + res.statusCode));
}
//cumulate data
var body = [];
res.on('data', (d) => {
body.push(d);
});
//resolve on end
res.on('end', ()=>{
try{
body = JSON.parse(Buffer.concat(body).toString());
}
catch(e){
reject(e);
}
resolve(body);
});
});
//req.setHeader('Access-Control-Allow-Origin', 'www.ngassociation.com');
//reject on request error
req.on('error', (error) => {
console.error(error)
reject(error);
});
req.end();
});
}
function getDataParam(script, key, param){
const opt = {
hostname: hostname,
port: 443,
path: '/alingapis/mapNgadev/' + version + script + '.php?' + key + '=' + param,
method: 'GET',
headers: {
'Content-Type' : 'application/json',
'Access-Control-Allow-Origin': 'www.ngassociation.com'
}
};
return new Promise((resolve, reject) => {
const req = https.request(opt,(res)=>{
//reject on bad status
if (res.statusCode < 200 || res.statusCode >= 300) {
return reject(new Error('statusCode=' + res.statusCode));
}
//cumulate data
var body = [];
res.on('data', (d) => {
body.push(d);
});
//resolve on end
res.on('end', ()=>{
try{
body = JSON.parse(Buffer.concat(body).toString());
}
catch(e){
reject(e);
}
resolve(body);
})
});
//req.setHeader('Access-Control-Allow-Origin', 'www.ngassociation.com');
//reject on request error
req.on('error', (error) => {
console.error(error)
reject(error);
});
req.end();
});
}
function postData(script, data) {
data = JSON.stringify(data);
const opt = {
hostname: hostname,
port: 443,
path: '/alingapis/mapNgadev/' + version + script + '.php',
method: 'POST',
headers: {
'Content-Type' : 'application/json',
'Content-Length' : data.length,
'Access-Control-Allow-Origin': hostname
}
};
return new Promise((resolve, reject) => {
//const req = https.post(API + version + script + '.php', (res) => {
const req = https.request(opt, res => {
//reject on bad status
if (res.statusCode < 200 || res.statusCode >= 300) {
return reject(new Error('statusCode=' + res.statusCode));
}
//cumulate data
var body = [];
res.on('data', (d) => {
body.push(d);
});
//resolve on end
res.on('end', ()=>{
try{
body = JSON.parse(Buffer.concat(body).toString());
}
catch(e){
reject(e);
}
resolve(body);
});
});
//req.setHeader('Access-Control-Allow-Origin', 'www.ngassociation.com');
//reject on request error
req.on('error', (error) => {
console.error(error)
reject(error);
});
if (data) {
req.write(data);
}
req.end();
});
}
*/
function getData(script){
return new Promise((resolve, reject) => {
axios.get(API + version + script + '.php')
.then((response)=>{
let rep = response.request.response;
//console.log(rep);
if (rep != undefined) {
resolve(JSON.parse(rep));
}
})
.catch((error)=>{
// handle error
reject(error);
});
});
}
function getDataParam(script, key, param){
return new Promise((resolve, reject) => {
// Make a request for a user with a given ID
axios.get(API + version + script + '.php?' + key + '=' + param)
.then(function (response) {
let rep = response.request.response;
//console.log(rep);
if (rep != undefined) {
resolve(JSON.parse(rep));
}
})
.catch(function (error) {
// handle error
reject(error);
});
/*
.finally(function () {
// always executed
});*/
});
}
function postData(script, data) {
data = JSON.stringify(data);
return new Promise((resolve, reject) => {
axios.post(API + version + script +'.php', data)
.then(response =>{
let rep = response.request.response;
//console.log(rep);
if (rep != undefined) {
resolve(JSON.parse(rep));
}
})
.catch(error=>{
reject(error);
});
});
}
/*
Init function
*/
/** Defini le mode de la connexion. local ou prod
**@param mode : mode de travail. Production ou test
*/
function initMapNGA(mode){
if (mode != "prod") {
API = 'http://localhost/alingapis/mapNgadev/';
hostname = 'localhost';
}
}
/*Get entries*/
/**
Attributs:
*/
function getEntriesByCountry(data) {
var script = 'getZonesByCountry1000';
return postData(script, data);
}
/**
Recupere les entrées ayant le meme parent
**@param myparent: id of parent entry
*/
function getSonsEntriesByIdParent(data) {
var script = 'getSonsEntriesByIdParent';
return postData(script, data);
}
/**
Attributs:
*/
function getEntriesByType(data) {
var script = 'getZonesByType1000';
return postData(script, data);
}
/**
Attributs:
*/
function getEntryByName(data) {
var script = 'getEntryByName1000';
return postData(script, data);
}
/**
Attributs:
*/
function getParentsOnUpt(data) {
var script = 'getParentsOnUpt1000';
return postData(script, data);
}
/**
Attributs:
*/
function getParentsOnAdd(data) {
var script = 'getParentsOnAdd1000';
return postData(script, data);
}
/** Retourne les professions en fonctiinn du typeEmpl
**typeEmpl: id domaine ou type employeur
*/
function getProfession(typeEmpl){
var script = 'getProfession';
return getDataParam(script, 'typEmpl', typeEmpl);
}
/**
Attributs:
*/
function getZonesByParent(data) {
var script = 'getZonesByParent1000';
return postData(script, data);
}
/**
Attributs:
*/
function getAdminDiv(data) {
var script = 'geTypes1000';
return getData(script);
}
/* Management script */
/**
Attributs:
*/
function updateLieux(data) {
var script = 'updateLieux1000';
return postData(script, data);
}
/**
Attributs:
*/
function addLieux(data) {
var script = 'addLieux1000';
return postData(script, data);
}
/**
Attributs:
*/
function addRangeLieux(data) {
var script = 'addRangeLieux1000';
return postData(script, data);
}
/**
Attributs:
*/
function deleteLieu(data) {
var script = 'deleteLieu1000';
return postData(script, data);
}
/*Convert address*/
/**
Attributs:
*/
function getConv1Address(data) {
var script = 'getConv1Address1000';
return postData(script, data);
}
/**
Attributs:
*/
function getConv2Address(data) {
var script = 'getConv2Address1000';
return postData(script, data);
}
/**
Attributs:
*/
function getConvMultiAddress(data) {
var script = 'getConvMultiAddress1000';
return postData(script, data);
}
/*
adresses d'organisations
*/
/**
Attributs:
*/
function addAdress(data) {
var script = 'addAdress1000';
return postData(script, data);
}
/**
Attributs:
*/
function getListOfOrg(){
var script = 'getListOfOrg';
return getData(script);
}
/**
Attributs:
*/
function addOccupation(data) {
var script = 'addOccupation';
return postData(script, data);
}
/**
Attributs:
*/
function getOrgByType(param){
var script = 'getOrgByType';
return getDataParam(script, 'type', param);
}
/**
Attributs:
*/
function getFullOrgAdress(data) {
var script = 'getFullOrgAdress1000';
return postData(script, data);
}
/**
Attributs:
*/
function addTypeOrg(data) {
var script = 'addTypeOrg';
return postData(script, data);
}
/**
Attributs:
*/
function getTypeOrg(){
var script = 'getTypeOrg';
return getData(script);
}
/**
Attributs:
*/
function uptOrgData(data) {
var script = 'uptOrgData';
return postData(script, data);
}
/*
exports.initMapNGA = initMapNGA;
exports.getEntriesByCountry = getEntriesByCountry;
exports.getSonsEntriesByIdParent =getSonsEntriesByIdParent;
exports.getEntriesByType = getEntriesByType;
exports.getEntryByName = getEntryByName;
exports.getParentsOnUpt = getParentsOnUpt;
exports.getParentsOnAdd = getParentsOnAdd;
exports.getZonesByParent = getZonesByParent;
exports.getAdminDiv = getAdminDiv;
exports.updateLieux = updateLieux;
exports.addLieux = addLieux;
exports.addRangeLieux = addRangeLieux;
exports.deleteLieu = deleteLieu;
exports.getConv1Address = getConv1Address;
exports.getConv2Address = getConv2Address;
exports.getConvMultiAddress = getConvMultiAddress;
exports.addAdress = addAdress;
exports.getListOfOrg = getListOfOrg;
exports.getOrgByType = getOrgByType;
exports.getFullOrgAdress = getFullOrgAdress;
exports.getTypeOrg = getTypeOrg;
exports.uptOrgData = uptOrgData;
*/
export {
initMapNGA,
getEntriesByCountry,
getSonsEntriesByIdParent,
getEntriesByType,
getEntryByName,
getParentsOnUpt,
getParentsOnAdd,
getProfession,
getZonesByParent,
getAdminDiv,
updateLieux,
addLieux,
addRangeLieux,
deleteLieu,
getConv1Address,
getConv2Address,
getConvMultiAddress,
addAdress,
getListOfOrg,
addOccupation,
getOrgByType,
getFullOrgAdress,
addTypeOrg,
getTypeOrg,
uptOrgData
}