When a computer, with the Flexera App Portal Web Extension installed, connects to the Flexera App Portal it should use the computer name returned from the Flexera App Portal Web Extension.
When a computer, with the Flexera App Portal Web Extension installed, connects to the Flexera App Portal it returns no computer name. This causes the fallback to be used.
Upon successful detection of the Flexera App Portal Web Extension, the Loader.aspx page schedules two executions of the loader function.

The race condition is that the FlexerAppPortalClient.exe process may not complete or return results within 1 second. Additionally, Flexera support encourage extending the timeout settings via the Flexera App Portal Web Site. This will NEVER change the outcome due to the 1 second hard-coded schedule.
Because the Second is scheduled to execute after 1 second and the First is after 5 seconds, Loader.aspx will process the loader function with empty values and cause the Processor.aspx page to be loaded using the fallback method. If no fallback method is used, the computer name will show as UNKNOWN.
Move the Second/Red line into the Yellow portion of the else statement. Revised function code below.
function detectWebExtension() {
try {
// Set
$body = $('body');
if (document.body.classList.contains("appportalclientinstalled")) {
console.log('addon is installed');
setTimeout(loader, <% =ComputerDiscoveryMethodTimeout%>);
} else {
console.log('determine browser compatability - <% =Browser.Type%> (<% =Browser.Version%>)');
var browser = "<% =Browser.Type.ToLower()%>".search("chrome") >= 0 && <% =Browser.Version%> >= 29
? "Chrome"
: "<% =Browser.Type.ToLower()%>".search("firefox") >= 0 && <% =Browser.Version%> >= 50
? "Firefox"
: "<% =Browser.Type.ToLower()%>".search("opera") >= 0 && <% =Browser.Version%> >= 16
? "Opera"
: "<% =Browser.Type.ToLower()%>".search("edge") >= 0 && <% =Browser.Version%> >= 15
? "Edge"
: "";
switch (browser) {
case 'Chrome':
case 'Firefox':
case 'Opera':
case 'Edge':
console.log('request install of webextension');
//parent.location.href = appRoot + 'Install' + browser + 'WebExtension.aspx';
q = getURLParam("f");
break;
default:
console.log('browser/version does not support WebExtensions.');
q = getURLParam("f");
break;
}
setTimeout(loader, 1000);
}
} catch (e) {
setTimeout(loader, 1000);
}
}