HTTP/1.1 200 OK
content-type: text/html; charset=UTF-8
content-length: 26945
connection: close
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<link rel="stylesheet" type="text/css" href="res/ext/resources/css/ext-all.css" />
<link rel="stylesheet" type="text/css" href="css/ext-override.css" />
<link rel="stylesheet" type="text/css" href="css/desktop.css" />
<link type="text/css" rel="stylesheet" href="res/jquery_api/dist/css/jquery-entropizer.min.css" />
<script type="text/javascript" src="res/ext/ext-all.js"></script>
<script type="text/javascript" src="utility/flag.js"></script>
<script type="text/javascript" src="res/jquery_api/lib/jquery.js"></script>
<script type="text/javascript" src="res/jquery_api/lib/entropizer.js"></script>
<script type="text/javascript" src="res/jquery_api/lib/demo/bootstrap.min.js"></script>
<script type="text/javascript" src="res/jquery_api/dist/js/jquery-entropizer.min.js"></script>
<style type="text/css">
#newPwdStrength .entropizer-track {
background-color: #e8e8e8;
border-radius: 2px;
height: 4px;
}
#newPwdStrength .entropizer-bar {
height: 4px;
}
</style>
<script type="text/javascript">
var countDownId = null;
var lastSeconds = 60;
var loadMask = null;
document.title= modeFlag.company + " " + modeFlag.modelName;
function createXMLHttpRequest() {
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
try { return new XMLHttpRequest(); } catch(e) {}
return null;
}
function sendCmd(cmd) {
var objHTTP;
objHTTP = createXMLHttpRequest();
objHTTP.open("GET", cmd , false);
objHTTP.send(null);
return objHTTP.responseText;
}
var setLan = Ext.util.Cookies.get('language');
var map = false;
if (setLan == null) {
if (Ext.isIE || /trident\/7\.0/.test(Ext.userAgent)) {
setLan = navigator.userLanguage.toLowerCase();
}else {
setLan = navigator.language.toLowerCase();
}
if(setLan != "zh-tw")
setLan = setLan.split("-")[0];
}
for (var countryCode in modeFlag.languageMap) {
if (setLan == countryCode) {
map = true;
break;
}
}
if (!map) {
setLan = "en";
}
Ext.util.Cookies.set('language', setLan, new Date(new Date().getTime()+(1000*60*60*24*365*5)));
eval("language="+sendCmd('res/i18n/nls/'+setLan+'/nsa.js'));
function getText (str,args) {
var map = {};
var text = "";
if (args) {
map = (Ext.isObject(args) ? args : Ext.toArray(arguments, 1));
}
if(language.hasOwnProperty(str))
text = language[str];
else
text = str;
if (text){
text = text.replace(/\%\{(\w+)\}/g, function(match, key) {
if (map[key]) {
return map[key];
}
else if (language[key]) {
return language[key];
}
else {
return key;
}
});
}
return text;
}
if (Ext.isIE || /Trident\/7\.0/.test(navigator.userAgent)) {
link = document.createElement("link");
link.href = "css/iefont.css";
link.type = "text/css";
link.rel = "stylesheet";
document.getElementsByTagName("head")[0].appendChild(link);
}
Ext.onReady(function () {
if(Ext.get('noteText'))
Ext.get('noteText').dom.innerHTML = getText('Note') + " : " + getText('Please turn on the Javascript and ActiveX control setting on Internet Explorer.');
var utf8_encode = function(text) {
str = text.replace(/\r\n/g,"\n");
var utftext = [];
for (var n = 0; n < str.length; n++) {
var c = str.charCodeAt(n);
if (c < 128) {
utftext.push(String.fromCharCode(c));
}
else if((c > 127) && (c < 2048)) {
utftext.push(String.fromCharCode((c >> 6) | 192));
utftext.push(String.fromCharCode((c & 63) | 128));
}
else {
utftext.push(String.fromCharCode((c >> 12) | 224));
utftext.push(String.fromCharCode(((c >> 6) & 63) | 128));
utftext.push(String.fromCharCode((c & 63) | 128));
}
}
return utftext.join("");
};
this.submitForm = function () {
var paramObj ={
username: utf8_encode(Ext.get('inputUserSelect-inputEl').getValue()),
password: utf8_encode(Ext.get("inputPasswordSelect-inputEl").getValue())
};
if (Ext.getCmp('keepLog').checked) {
paramObj.reauth_time = 100800; //10 weeks 10*7*24*60 (minutes)
paramObj.lease_time = 100800;
}
Ext.Ajax.request({
url: 'cgi-bin/weblogin.cgi',
method: 'POST',
params: paramObj,
timeout:300000,
scope:this,
success:function(responseObject){
var msg = eval("("+responseObject.responseText+")");
if (msg.errcode == 1) {
Ext.Msg.alert('',getText("CGI initialization error"));
Ext.getCmp('loginBtn').enable();
}
else if (msg.errcode == 2) {
Ext.Msg.alert('',getText("Firmware upgrade in progress. You cannot login to the system the firmware upgrade completes."));
Ext.getCmp('loginBtn').enable();
}
else if (msg.errcode == 3) {
document.getElementById('loginMsg').style.visibility="";
document.getElementById('loadImg').style.visibility="hidden";
document.getElementById("loginMsg").innerHTML="<span id=\"loginMsg\" class= \"login-loginMsg\">"+getText('The username is required.')+"</span>";
Ext.get('inputUser').removeCls('login-inputUser');
Ext.get('inputUser').removeCls('login-inputUserSelect');
Ext.get('inputUser').addCls('login-inputUserError');
Ext.get('iUser').removeCls('login-iUser');
Ext.get('iUser').addCls('login-iUserError');
Ext.getCmp("inputPassword").removeCls("login-inputPasswordSelect");
Ext.getCmp("inputPassword").removeCls("login-inputPasswordError");
Ext.getCmp("inputPassword").addCls("login-inputPassword");
Ext.getCmp("iPassword").removeCls("login-iPasswordError");
Ext.getCmp("iPassword").addCls("login-iPassword");
Ext.getCmp('loginBtn').enable();
}
else if (msg.errcode == 5) {
document.getElementById('loginMsg').style.visibility="";
document.getElementById('loadImg').style.visibility="hidden";
document.getElementById("loginMsg").innerHTML="<span id=\"loginMsg\" class= \"login-loginMsg\">"+getText('The username or password is incorrect.')+"</span></div>";
Ext.get('inputUser').removeCls('login-inputUser');
Ext.get('inputUser').removeCls('login-inputUserSelect');
Ext.get('inputUser').addCls('login-inputUserError');
Ext.get('iUser').removeCls('login-iUser');
Ext.get('iUser').addCls('login-iUserError');
Ext.getCmp("inputPassword").removeCls("login-inputPassword");
Ext.getCmp("inputPassword").removeCls("login-inputPasswordSelect");
Ext.getCmp("inputPassword").addCls("login-inputPasswordError");
Ext.getCmp("iPassword").removeCls("login-iPassword");
Ext.getCmp("iPassword").addCls("login-iPasswordError");
Ext.getCmp('loginBtn').enable();
}
else if (msg.errcode == 7) {
Ext.Msg.alert('',getText("Failed to login, please try again."));
Ext.getCmp('loginBtn').enable();
}
else if (msg.errcode == 8) { //default password
Ext.create('SubWindow', {
id: 'changePwd',
title: '<div align="left">' + getText('Change Password') + '</div>',
toolBarBtns:[
{
text:'Apply',
id: 'modifyPwdApply',
scope:this,
disabled: true,
fn: function(btn) {
if(!Ext.getCmp("newPwd").validate()){
return false;
}
else if (Ext.getCmp("newPwd").getValue() != Ext.getCmp("confirmNewPwd").getValue()) {
Ext.getCmp("newPwd").markInvalid(getText("Your password and confirmation password do not match."));
Ext.getCmp("confirmNewPwd").markInvalid(getText("Your password and confirmation password do not match."));
return false;
}
loadMask.show();
var params = {};
params.uname = Ext.getCmp('inputUserSelect').getValue();
params['old_passwd'] = "1234";
params.passwd = Ext.getCmp('newPwd').getValue();
Ext.Ajax.request({
url: '/cmd,/ck6fup6/user_grp_cgi/cgi_modify_userinfo',
params:{userinfo:JSON.stringify(params),token:Ext.util.Cookies.get('authtok'),whoami:params.uname},
success: function() {
Ext.Ajax.request({
url: 'cgi-bin/setuser.cgi',
params: {"perform": 'logout'},
success: function(responseObject){
location.replace ("/login.html");
},
failure: function(responseObject){
location.replace ("/login.html");
},
scope: this
}, this);
},
scope:this
});
}
},{
text:'Cancel',
scope:this,
fn: function(btn) {
logout();
}
}
],
items: [{
xtype:'panel',
margin:'47 60 0 60',
width: 600,
items: [{
xtype: 'component',
cls:'login-changePwd-text',
margin:'0 0 10 0',
autoEl: {
tag: 'div',
html:getText('Please change your login password within 1 minutes, otherwise you will be logged out.')
}
},
{
xtype: 'textfield',
id: 'newPwd',
margin:'0 0 10 0',
labelWidth:150,
fieldLabel:getText('New Password'),
border: 1,
y: 10,
width: 405,
height: 27,
color: '#939292',
inputType: 'password',
enableKeyEvents: true,
enforceMaxLength: true,
vtype:'userPasswordValid',
listeners: {
keyup: function(field, event) {
if (field.getValue().length != 0 && Ext.getCmp("confirmNewPwd").getValue().length != 0) {
Ext.getCmp('modifyPwdApply').enable();
}else {
Ext.getCmp('modifyPwdApply').disable();
}
}
}
},
{
xtype: 'component',
cls:'login-changePwd-text',
autoEl: {
tag: 'div',
style:'font-size: 12px;margin:0px 0px 5px 160px;text-align:left',
html:getText('Suggest using password with a length over 8')
}
},
{
height: 12,
xtype: 'component',
id: 'newPwdStrength',
margin:'0 0 10 160',
width:300,
autoEl: {
tag: 'div',
cls: 'col-md-10 col-md-offset-2'
}
},
{
xtype: 'textfield',
id: 'confirmNewPwd',
labelWidth:150,
margin:'0 0 15 0',
fieldLabel:getText('Password (Confirm)'),
border: 1,
y: 10,
width: 405,
height: 27,
color: '#939292',
inputType: 'password',
enableKeyEvents: true,
enforceMaxLength: true,
listeners: {
keyup: function(field, event) {
if (field.getValue().length != 0 && Ext.getCmp("newPwd").getValue().length != 0) {
Ext.getCmp('modifyPwdApply').enable();
}else {
Ext.getCmp('modifyPwdApply').disable();
}
}
}
},
{
xtype: 'container',
layout:{type: 'hbox'},
margin:'0 0 10 0',
items: [{
xtype: 'component',
margin:'0 3 0 0',
width:22,
height:20,
autoEl: {
tag: 'img',
src:'res/images/i_waring_s.png'
}
},{
xtype: 'component',
cls:'login-changePwd-text',
autoEl: {
tag: 'div',
style:"color: #d50000; text-align:left",
html:getText('Once the password is set, you will get redirected to the login screen immediately.')
}
}]
},
{
xtype: 'component',
cls:'login-changePwd-text',
autoEl: {
tag: 'div',
style:"color: #d50000; text-align:center;font-weight:bold",
html:getText('Time Remaining') +": <span id='timer'></span> "+getText('seconds')
}
}]
}],
listeners:{
render:function(panel){
if(!loadMask)
loadMask = new Ext.LoadMask(panel.el,{msg:'',msgCls:'loadMask-icon'});
}
}
}).show();
$('#newPwdStrength').entropizer({
target: '#newPwd-inputEl',
update: function(data, ui) {
ui.bar.css({
'background-color': data.color,
'width': data.percent + '%'
});
}
});
document.getElementById('timer').innerHTML = lastSeconds;
countDownId=window.setInterval(timer,1000);
}
else if (msg.errcode == 9 || msg.errcode == 14) { //admin & user
location.replace("../desktop,/");
}
else {
Ext.Msg.alert('',getText("Failed to login, please try again."));
Ext.getCmp('loginBtn').enable();
}
}
})
}
Ext.create('Ext.panel.Panel', {
layout: {
type:'vbox'
},
id: 'bg',
renderTo: 'main'
});
Ext.create('Ext.panel.Panel', {
layout: {
type: 'hbox',
align: 'stretch'
},
items: [{
xtype: 'component',
cls: 'login-nasImage',
width: 456,
},{
xtype: 'panel',
flex:1,
items: [{
cls: 'login-iUser',
id: 'iUser'
},{
cls: 'login-inputUser',
id: 'inputUser',
items: [{
xtype: 'textfield',
id: 'inputUserSelect',
enableKeyEvents: true,
style: {
width: '284px',
height: '46px',
position: 'relative',
left: '10px'
},
listeners: {
scope: this,
keyup: function(field, event){
if ( field.getValue().length == 0 || this.usernameValid.usernameValid(field.getValue()) ) {
Ext.get('inputPassword').removeCls('login-inputPasswordSelect');
Ext.get('iPassword').addCls('login-iPassword');
Ext.get('inputPassword').addCls('login-inputPassword');
Ext.get('iUser').removeCls('login-iUserError');
Ext.get('iUser').addCls('login-iUser');
Ext.get('inputUser').removeCls('login-inputUserError');
Ext.get('inputUser').addCls('login-inputUserSelect');
document.getElementById('loginMsg').style.visibility="hidden";
document.getElementById('loadImg').style.visibility="hidden";
Ext.getCmp('loginBtn').enable();
}
else{
document.getElementById('loginMsg').style.visibility="";
document.getElementById('loginMsg').innerHTML="<span id=loginMsg class=\"login-loginMsg\">"+getText('The username is invalid.')+"</span>";
Ext.get('loading').setStyle('display','');
Ext.get('iUser').addCls('login-iUserError');
Ext.get('inputUser').removeCls('login-inputUserSelect');
Ext.get('inputUser').addCls('login-inputUserError');
Ext.getCmp('loginBtn').disable();
}
if (event.keyCode == 13 ){
login();
}
},
blur: removeFocus
}
}]
},{
cls: 'login-iPassword',
id: 'iPassword'
},{
cls: 'login-inputPassword',
id: 'inputPassword',
items: [{
xtype: 'textfield',
id: 'inputPasswordSelect',
inputType: 'password',
maxLength: 14,
enforceMaxLength: true,
enableKeyEvents: true,
style: {
width: '284px',
height: '46px',
position: 'relative',
left: '10px'
},
listeners: {
blur: removeFocus,
keyup: function(field, event) {
if (event.keyCode == 13 ){
login();
}
}
}
}]
},{
xtype: 'panel',
width: 53,
x: 348,
y: -82,
{
"@category" : "datascan",
"@timestamp" : "2024-11-07T01:27:09.000Z",
"app" : {
"extract" : {
"file" : [
"setuser.cgi",
"weblogin.cgi"
]
},
"http" : {
"bodymd5" : "0539ee7710905b41027145973656de8a",
"bodymmh3" : 281231591,
"component" : [
{
"productvendor" : "Bootstrap",
"product" : "Bootstrap"
}
],
"headermd5" : "e8d25415607c0752cbad91848c6dcf4d",
"headermmh3" : 1654893944
},
"length" : 16384
},
"asn" : "AS20473",
"city" : "Melbourne",
"country" : "AU",
"cpe" : "<enterprise field>: cpe",
"cpecount" : "<enterprise field>: cpecount",
"data" : "HTTP/1.1 200 OK\r\ncontent-type: text/html; charset=UTF-8\r\ncontent-length: 26945\r\nconnection: close\r\n\r\n<html>\n<head>\n\t<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\" />\n\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"res/ext/resources/css/ext-all.css\" />\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/ext-override.css\" />\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/desktop.css\" />\n\t\n\t<link type=\"text/css\" rel=\"stylesheet\" href=\"res/jquery_api/dist/css/jquery-entropizer.min.css\" />\n\n\t<script type=\"text/javascript\" src=\"res/ext/ext-all.js\"></script>\n\t<script type=\"text/javascript\" src=\"utility/flag.js\"></script>\n\t\n\t<script type=\"text/javascript\" src=\"res/jquery_api/lib/jquery.js\"></script>\n <script type=\"text/javascript\" src=\"res/jquery_api/lib/entropizer.js\"></script>\n <script type=\"text/javascript\" src=\"res/jquery_api/lib/demo/bootstrap.min.js\"></script>\n <script type=\"text/javascript\" src=\"res/jquery_api/dist/js/jquery-entropizer.min.js\"></script>\n\t\n\t<style type=\"text/css\">\n\t\t#newPwdStrength .entropizer-track {\n background-color: #e8e8e8;\n border-radius: 2px;\n height: 4px;\n }\n #newPwdStrength .entropizer-bar {\n height: 4px;\n }\n\t</style>\n\t\n\t<script type=\"text/javascript\">\n\t\tvar countDownId = null;\n\t\tvar lastSeconds = 60;\n\t\tvar loadMask = null;\n\t\tdocument.title= modeFlag.company + \" \" + modeFlag.modelName;\n\n\t\tfunction createXMLHttpRequest() {\n\t\t\ttry { return new ActiveXObject(\"Msxml2.XMLHTTP\"); } catch (e) {}\n\t\t\ttry { return new ActiveXObject(\"Microsoft.XMLHTTP\"); } catch (e) {}\n\t\t\ttry { return new XMLHttpRequest(); } catch(e) {}\n\t\t\treturn null;\n\t\t}\n\t\n\t\tfunction sendCmd(cmd) {\n\t\t\tvar objHTTP;\n\t\t\tobjHTTP = createXMLHttpRequest();\n\t\t\tobjHTTP.open(\"GET\", cmd , false);\n\t\t\tobjHTTP.send(null);\n\t\t\treturn objHTTP.responseText;\n\t\t}\n\n\t\tvar setLan = Ext.util.Cookies.get('language');\n\t\tvar map = false;\n\t\t\n\t\tif (setLan == null) {\n\t\t\tif (Ext.isIE || /trident\\/7\\.0/.test(Ext.userAgent)) {\n\t\t\t\tsetLan = navigator.userLanguage.toLowerCase();\n\t\t\t}else {\n\t\t\t\tsetLan = navigator.language.toLowerCase();\n\t\t\t}\n\t\t\tif(setLan != \"zh-tw\")\n\t\t\t\tsetLan = setLan.split(\"-\")[0];\n\t\t}\n\t\t\n\t\tfor (var countryCode in modeFlag.languageMap) {\n\t\t\tif (setLan == countryCode) {\n\t\t\t\tmap = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t\n\t\tif (!map) {\n\t\t\tsetLan = \"en\";\n\t\t}\n\n\t\tExt.util.Cookies.set('language', setLan, new Date(new Date().getTime()+(1000*60*60*24*365*5)));\n\n\t\teval(\"language=\"+sendCmd('res/i18n/nls/'+setLan+'/nsa.js'));\n\n\t\tfunction getText (str,args) {\n\t\t\tvar map = {};\n\t\t\tvar text = \"\";\n\t\t\tif (args) {\n\t\t\t\tmap = (Ext.isObject(args) ? args : Ext.toArray(arguments, 1));\n\t\t\t}\n\n\t\t\tif(language.hasOwnProperty(str))\n\t\t\t\ttext = language[str];\n\t\t\telse\n\t\t\t\ttext = str;\n\n\t\t\tif (text){\n\t\t\t\ttext = text.replace(/\\%\\{(\\w+)\\}/g, function(match, key) {\n\t\t\t\t\tif (map[key]) {\n\t\t\t\t\t\treturn map[key];\n\t\t\t\t\t}\n\t\t\t\t\telse if (language[key]) {\n\t\t\t\t\t\treturn language[key];\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\treturn key;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn text;\n\t\t}\n\t\tif (Ext.isIE || /Trident\\/7\\.0/.test(navigator.userAgent)) {\n\t\t\tlink = document.createElement(\"link\");\n\t\t\tlink.href = \"css/iefont.css\";\n\t\t\tlink.type = \"text/css\";\n\t\t\tlink.rel = \"stylesheet\";\n\t\t\tdocument.getElementsByTagName(\"head\")[0].appendChild(link);\n\t\t}\n\n\t\tExt.onReady(function () {\n\t\t\tif(Ext.get('noteText'))\n\t\t\t\tExt.get('noteText').dom.innerHTML = getText('Note') + \" : \" + getText('Please turn on the Javascript and ActiveX control setting on Internet Explorer.');\n\t\t\tvar utf8_encode = function(text) {\n\t\t\t\tstr = text.replace(/\\r\\n/g,\"\\n\");\n\t\t\t\tvar utftext = [];\n\t\n\t\t\t\tfor (var n = 0; n < str.length; n++) {\n\t\t\t\t\tvar c = str.charCodeAt(n);\n\t\n\t\t\t\t\tif (c < 128) {\n\t\t\t\t\t\tutftext.push(String.fromCharCode(c));\n\t\t\t\t\t}\n\t\t\t\t\telse if((c > 127) && (c < 2048)) {\n\t\t\t\t\t\tutftext.push(String.fromCharCode((c >> 6) | 192));\n\t\t\t\t\t\tutftext.push(String.fromCharCode((c & 63) | 128));\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tutftext.push(String.fromCharCode((c >> 12) | 224));\n\t\t\t\t\t\tutftext.push(String.fromCharCode(((c >> 6) & 63) | 128));\n\t\t\t\t\t\tutftext.push(String.fromCharCode((c & 63) | 128));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn utftext.join(\"\");\n\t\t\t};\n\n\t\t\tthis.submitForm = function () {\n\t\t\t\tvar paramObj ={\n\t\t\t\t\tusername: utf8_encode(Ext.get('inputUserSelect-inputEl').getValue()),\n\t\t\t\t\tpassword: utf8_encode(Ext.get(\"inputPasswordSelect-inputEl\").getValue())\n\t\t\t\t};\n\n\t\t\t\tif (Ext.getCmp('keepLog').checked) {\n\t\t\t\t\tparamObj.reauth_time = 100800; //10 weeks 10*7*24*60 (minutes)\n\t\t\t\t\tparamObj.lease_time = 100800;\n\t\t\t\t}\n\t\n\t\t\t\tExt.Ajax.request({\n\t\t\t\t\turl: 'cgi-bin/weblogin.cgi',\n\t\t\t\t\tmethod: 'POST',\n\t\t\t\t\tparams: paramObj,\n\t\t\t\t\ttimeout:300000,\n\t\t\t\t\tscope:this,\n\t\t\t\t\tsuccess:function(responseObject){\n\t\t\t\t\t\tvar msg = eval(\"(\"+responseObject.responseText+\")\");\n\t\t\t\t\t\tif (msg.errcode == 1) {\n\t\t\t\t\t\t\tExt.Msg.alert('',getText(\"CGI initialization error\"));\n\t\t\t\t\t\t\tExt.getCmp('loginBtn').enable();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (msg.errcode == 2) {\n\t\t\t\t\t\t\tExt.Msg.alert('',getText(\"Firmware upgrade in progress. You cannot login to the system the firmware upgrade completes.\"));\n\t\t\t\t\t\t\tExt.getCmp('loginBtn').enable();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (msg.errcode == 3) {\n\t\t\t\t\t\t\tdocument.getElementById('loginMsg').style.visibility=\"\";\n\t\t\t\t\t\t\tdocument.getElementById('loadImg').style.visibility=\"hidden\";\n\t\t\t\t\t\t\tdocument.getElementById(\"loginMsg\").innerHTML=\"<span id=\\\"loginMsg\\\" class= \\\"login-loginMsg\\\">\"+getText('The username is required.')+\"</span>\";\n\t\t\t\t\t\t\tExt.get('inputUser').removeCls('login-inputUser');\n\t\t\t\t\t\t\tExt.get('inputUser').removeCls('login-inputUserSelect');\n\t\t\t\t\t\t\tExt.get('inputUser').addCls('login-inputUserError');\n\t\t\t\t\t\t\tExt.get('iUser').removeCls('login-iUser');\n\t\t\t\t\t\t\tExt.get('iUser').addCls('login-iUserError');\n\t\t\t\t\t\t\tExt.getCmp(\"inputPassword\").removeCls(\"login-inputPasswordSelect\");\n\t\t\t\t\t\t\tExt.getCmp(\"inputPassword\").removeCls(\"login-inputPasswordError\");\n\t\t\t\t\t\t\tExt.getCmp(\"inputPassword\").addCls(\"login-inputPassword\");\n\t\t\t\t\t\t\tExt.getCmp(\"iPassword\").removeCls(\"login-iPasswordError\");\n\t\t\t\t\t\t\tExt.getCmp(\"iPassword\").addCls(\"login-iPassword\");\n\t\t\t\t\t\t\tExt.getCmp('loginBtn').enable();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (msg.errcode == 5) {\n\t\t\t\t\t\t\tdocument.getElementById('loginMsg').style.visibility=\"\";\n\t\t\t\t\t\t\tdocument.getElementById('loadImg').style.visibility=\"hidden\";\n\t\t\t\t\t\t\tdocument.getElementById(\"loginMsg\").innerHTML=\"<span id=\\\"loginMsg\\\" class= \\\"login-loginMsg\\\">\"+getText('The username or password is incorrect.')+\"</span></div>\";\n\t\t\t\t\t\t\tExt.get('inputUser').removeCls('login-inputUser');\n\t\t\t\t\t\t\tExt.get('inputUser').removeCls('login-inputUserSelect');\n\t\t\t\t\t\t\tExt.get('inputUser').addCls('login-inputUserError');\n\t\t\t\t\t\t\tExt.get('iUser').removeCls('login-iUser');\n\t\t\t\t\t\t\tExt.get('iUser').addCls('login-iUserError');\n\t\t\t\t\t\t\tExt.getCmp(\"inputPassword\").removeCls(\"login-inputPassword\");\n\t\t\t\t\t\t\tExt.getCmp(\"inputPassword\").removeCls(\"login-inputPasswordSelect\");\n\t\t\t\t\t\t\tExt.getCmp(\"inputPassword\").addCls(\"login-inputPasswordError\");\n\t\t\t\t\t\t\tExt.getCmp(\"iPassword\").removeCls(\"login-iPassword\");\n\t\t\t\t\t\t\tExt.getCmp(\"iPassword\").addCls(\"login-iPasswordError\");\n\t\t\t\t\t\t\tExt.getCmp('loginBtn').enable();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (msg.errcode == 7) {\n\t\t\t\t\t\t\tExt.Msg.alert('',getText(\"Failed to login, please try again.\"));\n\t\t\t\t\t\t\tExt.getCmp('loginBtn').enable();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (msg.errcode == 8) {\t//default password\n\t\t\t\t\t\t\tExt.create('SubWindow', {\n\t\t\t\t\t\t\t\tid: 'changePwd',\n\t\t\t\t\t\t\t\ttitle: '<div align=\"left\">' + getText('Change Password') + '</div>',\n\t\t\t\t\t\t\t\ttoolBarBtns:[\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ttext:'Apply',\n\t\t\t\t\t\t\t\t\t\tid: 'modifyPwdApply',\n\t\t\t\t\t\t\t\t\t\tscope:this,\n\t\t\t\t\t\t\t\t\t\tdisabled: true,\n\t\t\t\t\t\t\t\t\t\tfn: function(btn) {\n\t\t\t\t\t\t\t\t\t\t\tif(!Ext.getCmp(\"newPwd\").validate()){\n\t\t\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\telse if (Ext.getCmp(\"newPwd\").getValue() != Ext.getCmp(\"confirmNewPwd\").getValue()) {\n\t\t\t\t\t\t\t\t\t\t\t\tExt.getCmp(\"newPwd\").markInvalid(getText(\"Your password and confirmation password do not match.\"));\n\t\t\t\t\t\t\t\t\t\t\t\tExt.getCmp(\"confirmNewPwd\").markInvalid(getText(\"Your password and confirmation password do not match.\"));\n\t\t\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tloadMask.show();\n\t\t\t\t\t\t\t\t\t\t\tvar params = {};\n\t\t\t\t\t\t\t\t\t\t\tparams.uname = Ext.getCmp('inputUserSelect').getValue();\n\t\t\t\t\t\t\t\t\t\t\tparams['old_passwd'] = \"1234\";\n\t\t\t\t\t\t\t\t\t\t\tparams.passwd = Ext.getCmp('newPwd').getValue();\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tExt.Ajax.request({\n\t\t\t\t\t\t\t\t\t\t\t\turl: '/cmd,/ck6fup6/user_grp_cgi/cgi_modify_userinfo',\n\t\t\t\t\t\t\t\t\t\t\t\tparams:{userinfo:JSON.stringify(params),token:Ext.util.Cookies.get('authtok'),whoami:params.uname},\n\t\t\t\t\t\t\t\t\t\t\t\tsuccess: function() {\n\t\t\t\t\t\t\t\t\t\t\t\t\tExt.Ajax.request({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\turl: 'cgi-bin/setuser.cgi',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparams: {\"perform\": 'logout'},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsuccess: function(responseObject){\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlocation.replace (\"/login.html\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfailure: function(responseObject){\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlocation.replace (\"/login.html\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tscope: this\n\t\t\t\t\t\t\t\t\t\t\t\t\t}, this);\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\tscope:this\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},{\n\t\t\t\t\t\t\t\t\t\ttext:'Cancel',\n\t\t\t\t\t\t\t\t\t\tscope:this,\n\t\t\t\t\t\t\t\t\t\tfn: function(btn) {\n\t\t\t\t\t\t\t\t\t\t\tlogout();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\titems: [{\n\t\t\t\t\t\t\t\t\txtype:'panel',\n\t\t\t\t\t\t\t\t\tmargin:'47 60 0 60',\n\t\t\t\t\t\t\t\t\twidth: 600,\n\t\t\t\t\t\t\t\t\titems: [{\n\t\t\t\t\t\t\t\t\t\txtype: 'component',\n\t\t\t\t\t\t\t\t\t\tcls:'login-changePwd-text',\n\t\t\t\t\t\t\t\t\t\tmargin:'0 0 10 0',\n\t\t\t\t\t\t\t\t\t\tautoEl: {\n\t\t\t\t\t\t\t\t\t\t\ttag: 'div',\n\t\t\t\t\t\t\t\t\t\t\thtml:getText('Please change your login password within 1 minutes, otherwise you will be logged out.')\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\txtype: 'textfield',\n\t\t\t\t\t\t\t\t\t\tid: 'newPwd',\n\t\t\t\t\t\t\t\t\t\tmargin:'0 0 10 0',\n\t\t\t\t\t\t\t\t\t\tlabelWidth:150,\n\t\t\t\t\t\t\t\t\t\tfieldLabel:getText('New Password'),\n\t\t\t\t\t\t\t\t\t\tborder: 1,\n\t\t\t\t\t\t\t\t\t\ty: 10,\n\t\t\t\t\t\t\t\t\t\twidth: 405,\n\t\t\t\t\t\t\t\t\t\theight: 27,\n\t\t\t\t\t\t\t\t\t\tcolor: '#939292',\n\t\t\t\t\t\t\t\t\t\tinputType: 'password',\n\t\t\t\t\t\t\t\t\t\tenableKeyEvents: true,\n\t\t\t\t\t\t\t\t\t\tenforceMaxLength: true,\n\t\t\t\t\t\t\t\t\t\tvtype:'userPasswordValid',\n\t\t\t\t\t\t\t\t\t\tlisteners: {\n\t\t\t\t\t\t\t\t\t\t\tkeyup: function(field, event) {\n\t\t\t\t\t\t\t\t\t\t\t\tif (field.getValue().length != 0 && Ext.getCmp(\"confirmNewPwd\").getValue().length != 0) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tExt.getCmp('modifyPwdApply').enable();\n\t\t\t\t\t\t\t\t\t\t\t\t}else {\n\t\t\t\t\t\t\t\t\t\t\t\t\tExt.getCmp('modifyPwdApply').disable();\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\txtype: 'component',\n\t\t\t\t\t\t\t\t\t\tcls:'login-changePwd-text',\n\t\t\t\t\t\t\t\t\t\tautoEl: {\n\t\t\t\t\t\t\t\t\t\t\ttag: 'div',\n\t\t\t\t\t\t\t\t\t\t\tstyle:'font-size: 12px;margin:0px 0px 5px 160px;text-align:left',\n\t\t\t\t\t\t\t\t\t\t\thtml:getText('Suggest using password with a length over 8')\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\theight: 12,\n\t\t\t\t\t\t\t\t\t\txtype: 'component',\n\t\t\t\t\t\t\t\t\t\tid: 'newPwdStrength',\n\t\t\t\t\t\t\t\t\t\tmargin:'0 0 10 160',\n\t\t\t\t\t\t\t\t\t\twidth:300,\n\t\t\t\t\t\t\t\t\t\tautoEl: {\n\t\t\t\t\t\t\t\t\t\t\ttag: 'div',\n\t\t\t\t\t\t\t\t\t\t\tcls: 'col-md-10 col-md-offset-2'\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\txtype: 'textfield',\n\t\t\t\t\t\t\t\t\t\tid: 'confirmNewPwd',\n\t\t\t\t\t\t\t\t\t\tlabelWidth:150,\n\t\t\t\t\t\t\t\t\t\tmargin:'0 0 15 0',\n\t\t\t\t\t\t\t\t\t\tfieldLabel:getText('Password (Confirm)'),\n\t\t\t\t\t\t\t\t\t\tborder: 1,\n\t\t\t\t\t\t\t\t\t\ty: 10,\n\t\t\t\t\t\t\t\t\t\twidth: 405,\n\t\t\t\t\t\t\t\t\t\theight: 27,\n\t\t\t\t\t\t\t\t\t\tcolor: '#939292',\n\t\t\t\t\t\t\t\t\t\tinputType: 'password',\n\t\t\t\t\t\t\t\t\t\tenableKeyEvents: true,\n\t\t\t\t\t\t\t\t\t\tenforceMaxLength: true,\n\t\t\t\t\t\t\t\t\t\tlisteners: {\n\t\t\t\t\t\t\t\t\t\t\tkeyup: function(field, event) {\n\t\t\t\t\t\t\t\t\t\t\t\tif (field.getValue().length != 0 && Ext.getCmp(\"newPwd\").getValue().length != 0) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tExt.getCmp('modifyPwdApply').enable();\n\t\t\t\t\t\t\t\t\t\t\t\t}else {\n\t\t\t\t\t\t\t\t\t\t\t\t\tExt.getCmp('modifyPwdApply').disable();\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\txtype: 'container',\n\t\t\t\t\t\t\t\t\t\tlayout:{type: 'hbox'},\n\t\t\t\t\t\t\t\t\t\tmargin:'0 0 10 0',\n\t\t\t\t\t\t\t\t\t\titems: [{\n\t\t\t\t\t\t\t\t\t\t\txtype: 'component',\n\t\t\t\t\t\t\t\t\t\t\tmargin:'0 3 0 0',\n\t\t\t\t\t\t\t\t\t\t\twidth:22,\n\t\t\t\t\t\t\t\t\t\t\theight:20,\n\t\t\t\t\t\t\t\t\t\t\tautoEl: {\n\t\t\t\t\t\t\t\t\t\t\t\ttag: 'img',\n\t\t\t\t\t\t\t\t\t\t\t\tsrc:'res/images/i_waring_s.png'\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t},{\n\t\t\t\t\t\t\t\t\t\t\txtype: 'component',\n\t\t\t\t\t\t\t\t\t\t\tcls:'login-changePwd-text',\n\t\t\t\t\t\t\t\t\t\t\tautoEl: {\n\t\t\t\t\t\t\t\t\t\t\t\ttag: 'div',\n\t\t\t\t\t\t\t\t\t\t\t\tstyle:\"color: #d50000; text-align:left\",\n\t\t\t\t\t\t\t\t\t\t\t\thtml:getText('Once the password is set, you will get redirected to the login screen immediately.')\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}]\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\txtype: 'component',\n\t\t\t\t\t\t\t\t\t\tcls:'login-changePwd-text',\n\t\t\t\t\t\t\t\t\t\tautoEl: {\n\t\t\t\t\t\t\t\t\t\t\ttag: 'div',\n\t\t\t\t\t\t\t\t\t\t\tstyle:\"color: #d50000; text-align:center;font-weight:bold\",\n\t\t\t\t\t\t\t\t\t\t\thtml:getText('Time Remaining') +\": <span id='timer'></span> \"+getText('seconds')\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}]\n\t\t\t\t\t\t\t\t}],\n\t\t\t\t\t\t\t\tlisteners:{\n\t\t\t\t\t\t\t\t\trender:function(panel){\n\t\t\t\t\t\t\t\t\t\tif(!loadMask)\n\t\t\t\t\t\t\t\t\t\t\tloadMask = new Ext.LoadMask(panel.el,{msg:'',msgCls:'loadMask-icon'});\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}).show();\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t$('#newPwdStrength').entropizer({\n\t\t\t\t\t\t\t\ttarget: '#newPwd-inputEl',\n\t\t\t\t\t\t\t\tupdate: function(data, ui) {\n\t\t\t\t\t\t\t\t\tui.bar.css({\n\t\t\t\t\t\t\t\t\t\t'background-color': data.color,\n\t\t\t\t\t\t\t\t\t\t'width': data.percent + '%'\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tdocument.getElementById('timer').innerHTML = lastSeconds;\n\t\t\t\t\t\t\tcountDownId=window.setInterval(timer,1000);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (msg.errcode == 9 || msg.errcode == 14) { //admin & user\n\t\t\t\t\t\t\tlocation.replace(\"../desktop,/\");\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tExt.Msg.alert('',getText(\"Failed to login, please try again.\"));\n\t\t\t\t\t\t\tExt.getCmp('loginBtn').enable();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t\t\n\t\t\tExt.create('Ext.panel.Panel', {\n\t\t\t\tlayout: {\n\t\t\t\t\ttype:'vbox'\n\t\t\t\t},\n\t\t\t\tid: 'bg',\n\t\t\t\trenderTo: 'main'\n\t\t\t});\n\n\t\t\tExt.create('Ext.panel.Panel', {\n\t\t\t\tlayout: {\n\t\t\t\t\ttype: 'hbox',\n\t\t\t\t\talign: 'stretch'\n\t\t\t\t},\n\t\t\t\titems: [{\n\t\t\t\t\txtype: 'component',\n\t\t\t\t\tcls: 'login-nasImage',\n\t\t\t\t\twidth: 456,\n\t\t\t\t},{\n\t\t\t\t\txtype: 'panel',\n\t\t\t\t\tflex:1,\n\t\t\t\t\titems: [{\n\t\t\t\t\t\tcls: 'login-iUser',\n\t\t\t\t\t\tid: 'iUser'\n\t\t\t\t\t},{\n\t\t\t\t\t\tcls: 'login-inputUser',\n\t\t\t\t\t\tid: 'inputUser',\n\t\t\t\t\t\titems: [{\n\t\t\t\t\t\t\txtype: 'textfield',\n\t\t\t\t\t\t\tid: 'inputUserSelect',\n\t\t\t\t\t\t\tenableKeyEvents: true,\n\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\twidth: '284px',\n\t\t\t\t\t\t\t\theight: '46px',\n\t\t\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t\t\t\tleft: '10px'\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlisteners: {\n\t\t\t\t\t\t\t\tscope: this,\n\t\t\t\t\t\t\t\tkeyup: function(field, event){\n\t\t\t\t\t\t\t\t\tif ( field.getValue().length == 0 || this.usernameValid.usernameValid(field.getValue()) ) {\n\t\t\t\t\t\t\t\t\t\tExt.get('inputPassword').removeCls('login-inputPasswordSelect');\n\t\t\t\t\t\t\t\t\t\tExt.get('iPassword').addCls('login-iPassword');\n\t\t\t\t\t\t\t\t\t\tExt.get('inputPassword').addCls('login-inputPassword');\n\t\t\t\t\t\t\t\t\t\tExt.get('iUser').removeCls('login-iUserError');\n\t\t\t\t\t\t\t\t\t\tExt.get('iUser').addCls('login-iUser');\n\t\t\t\t\t\t\t\t\t\tExt.get('inputUser').removeCls('login-inputUserError');\n\t\t\t\t\t\t\t\t\t\tExt.get('inputUser').addCls('login-inputUserSelect');\n\t\t\t\t\t\t\t\t\t\tdocument.getElementById('loginMsg').style.visibility=\"hidden\";\n\t\t\t\t\t\t\t\t\t\tdocument.getElementById('loadImg').style.visibility=\"hidden\";\n\t\t\t\t\t\t\t\t\t\tExt.getCmp('loginBtn').enable();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse{\n\t\t\t\t\t\t\t\t\t\tdocument.getElementById('loginMsg').style.visibility=\"\";\n\t\t\t\t\t\t\t\t\t\tdocument.getElementById('loginMsg').innerHTML=\"<span id=loginMsg class=\\\"login-loginMsg\\\">\"+getText('The username is invalid.')+\"</span>\";\n\t\t\t\t\t\t\t\t\t\tExt.get('loading').setStyle('display','');\n\t\t\t\t\t\t\t\t\t\tExt.get('iUser').addCls('login-iUserError');\n\t\t\t\t\t\t\t\t\t\tExt.get('inputUser').removeCls('login-inputUserSelect');\n\t\t\t\t\t\t\t\t\t\tExt.get('inputUser').addCls('login-inputUserError');\n\t\t\t\t\t\t\t\t\t\tExt.getCmp('loginBtn').disable();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (event.keyCode == 13 ){\n\t\t\t\t\t\t\t\t\t\tlogin();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tblur: removeFocus\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}]\n\t\t\t\t\t},{\n\t\t\t\t\t\tcls: 'login-iPassword',\n\t\t\t\t\t\tid: 'iPassword'\n\t\t\t\t\t},{\n\t\t\t\t\t\tcls: 'login-inputPassword',\n\t\t\t\t\t\tid: 'inputPassword',\n\t\t\t\t\t\titems: [{\n\t\t\t\t\t\t\txtype: 'textfield',\n\t\t\t\t\t\t\tid: 'inputPasswordSelect',\n\t\t\t\t\t\t\tinputType: 'password',\n maxLength: 14,\n enforceMaxLength: true,\n\t\t\t\t\t\t\tenableKeyEvents: true,\n\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\twidth: '284px',\n\t\t\t\t\t\t\t\theight: '46px',\n\t\t\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t\t\t\tleft: '10px'\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlisteners: {\n\t\t\t\t\t\t\t\tblur: removeFocus,\n\t\t\t\t\t\t\t\tkeyup: function(field, event) {\n\t\t\t\t\t\t\t\t\tif (event.keyCode == 13 ){\n\t\t\t\t\t\t\t\t\t\tlogin();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}]\n\t\t\t\t\t},{\n\t\t\t\t\t\txtype: 'panel',\n\t\t\t\t\t\twidth: 53,\n\t\t\t\t\t\tx: 348,\n\t\t\t\t\t\ty: -82,\n\t\t\t\t\t",
"datamd5" : "7b4e8d9c5441faea40121a90a3e464a3",
"datammh3" : -1520424184,
"device" : {
"class" : "<enterprise field>: device.class"
},
"domain" : [
"vultrusercontent.com"
],
"geolocus" : {
"asn" : "AS20473",
"continent" : "NA",
"continentname" : "North America",
"country" : "US",
"countryname" : "United States",
"domain" : [
"constant.com"
],
"isineu" : "false",
"latitude" : "37.09024",
"location" : "37.09024,-95.712891",
"longitude" : "-95.712891",
"netname" : "CONSTANT",
"organization" : "The Constant Company, LLC",
"subnet" : "67.219.96.0/20"
},
"host" : [
67
],
"hostname" : [
"67.219.101.87.vultrusercontent.com"
],
"ip" : "67.219.101.87",
"ipv6" : "false",
"latitude" : "-37.8372",
"location" : "-37.8372,144.9354",
"longitude" : "144.9354",
"node" : {
"country" : "<enterprise field>: node.country",
"groupid" : "<enterprise field>: node.groupid",
"id" : "<enterprise field>: node.id",
"physicalcountry" : "<enterprise field>: node.physicalcountry"
},
"organization" : "AS-VULTR",
"os" : "Linux Kernel",
"osvendor" : "Linux",
"port" : 8050,
"protocol" : "http",
"protocolversion" : "1.1",
"reason" : "OK",
"reverse" : [
"67.219.101.87.vultrusercontent.com"
],
"seen_date" : "2024-11-07",
"source" : "datascan",
"status" : 200,
"subdomains" : [
"101.87.vultrusercontent.com",
"219.101.87.vultrusercontent.com",
"87.vultrusercontent.com"
],
"subnet" : "67.219.96.0/20",
"tag" : "<enterprise field>: tag",
"tld" : [
"com"
],
"tls" : "false",
"transport" : "tcp",
"url" : "/"
}