X-Git-Url: https://git.josue.xyz/?a=blobdiff_plain;f=_webi%2Fua-detect.js;h=c0483cb2ee6904c3cb47e65ac68f992d1d77ca0f;hb=72406c4e0d438b76da054be8d5eff42d08312498;hp=89c18c8919d166d71d67aca0b778d8c6b788c6d3;hpb=a91488aff4bc94fabb4f11728d3149b6fbcd0bb8;p=webi-installers%2F.git diff --git a/_webi/ua-detect.js b/_webi/ua-detect.js index 89c18c8..c0483cb 100644 --- a/_webi/ua-detect.js +++ b/_webi/ua-detect.js @@ -1,5 +1,27 @@ 'use strict'; +function getRequest(req) { + var ua = req.headers['user-agent'] || ''; + var os = req.query.os; + var arch = req.query.arch; + var scheme = req.socket.encrypted ? 'https' : 'http'; + var host = req.headers.host || 'beta.webinstall.dev'; + var url = scheme + '://' + host + '/api/debug'; + if (os && arch) { + ua = os + ' ' + arch; + } else if (os || arch) { + ua = os || arch; + } + + return { + unix: 'curl -fsSA "$(uname -a)" ' + url, + windows: 'curl.exe -fsSA "MS $Env:PROCESSOR_ARCHITECTURE" ' + url, + ua: ua, + os: uaDetect.os(ua), + arch: uaDetect.arch(ua) + }; +} + function getOs(ua) { if ('-' === ua) { return '-'; @@ -56,5 +78,7 @@ function getArch(ua) { } } -module.exports.os = getOs; -module.exports.arch = getArch; +var uaDetect = module.exports; +uaDetect.os = getOs; +uaDetect.arch = getArch; +uaDetect.request = getRequest;