mirror of
https://github.com/StarCitizenTools/mediawiki-skins-Citizen.git
synced 2024-12-03 02:17:21 +00:00
48deb87709
Co-authored-by: Hannes Kruse <hannes@octofox.de>
45 lines
900 B
JavaScript
45 lines
900 B
JavaScript
const config = require( '../config.json' );
|
|
|
|
/**
|
|
* Build URL used for fetch request
|
|
*
|
|
* @param {string} input
|
|
* @return {string} url
|
|
*/
|
|
function getUrl( input ) {
|
|
const endpoint = config.wgScriptPath + '/rest.php/v1/search/title?q=',
|
|
query = '&limit=' + config.wgCitizenMaxSearchResults;
|
|
|
|
return endpoint + input + query;
|
|
}
|
|
|
|
/**
|
|
* Map raw response to Results object
|
|
*
|
|
* @param {Object} data
|
|
* @return {Object} Results
|
|
*/
|
|
function convertDataToResults( data ) {
|
|
const results = [];
|
|
|
|
data = data?.pages ?? [];
|
|
|
|
for ( let i = 0; i < data.length; i++ ) {
|
|
results[ i ] = {
|
|
id: data[ i ].id,
|
|
title: data[ i ].title,
|
|
description: data[ i ].description
|
|
};
|
|
if ( data[ i ].thumbnail && data[ i ].thumbnail.url ) {
|
|
results[ i ].thumbnail = data[ i ].thumbnail.url;
|
|
}
|
|
}
|
|
|
|
return results;
|
|
}
|
|
|
|
module.exports = {
|
|
getUrl: getUrl,
|
|
convertDataToResults: convertDataToResults
|
|
};
|