whois.handle: AMAZON-LHR
whois.name: Amazon Data Services UK
whois.cidrs: 18.168.0.0/14
whois.created: 2020-09-10T00:00:00.000000
whois.updated: 2021-02-10T00:00:00.000000
whois.allocation_type: REALLOCATION
whois.handle: ADSU
whois.name: Amazon Data Services UK
whois.street: Amazon Development Centre London\nLeadenhall Court\nOne Leadenhall Street
whois.city: London
whois.postal_code: EC3V 1PP
whois.country: GB
whois.handle: AEA8-ARIN
whois.name: Amazon EC2 Abuse
whois.email: trustandsafety@support.aws.com
whois.handle: IPMAN40-ARIN
whois.name: IP Management
whois.email: ipmanagement@amazon.com
whois.handle: ANO24-ARIN
whois.name: Amazon EC2 Network Operations
whois.email: amzn-noc-contact@amazon.com
services.protocol: HTTP
services.transport_protocol: TCP
services.scan_time: 2025-07-28T01:53:22.007848
services.banner: HTTP/1.1 404 Not Found
  Date:  <REDACTED>
  Server: Apache
  Content-Length: 260
  Content-Type: text/html; charset=iso-8859-1
  
services.source: OSI_APPLICATION_LAYER
services.part: a
services.vendor: Apache
services.product: HTTPD
services.cpe: cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*
services.path: /
services.endpoint_type: HTTP
services.scan_time: 2025-07-28T01:53:22.007848
services.uri: http://18.170.180.254/
services.protocol: HTTP/1.1
services.status_reason: Not Found
services.key: Date
services.headers: <REDACTED>
services.key: Server
services.headers: Apache
services.key: Content-Length
services.headers: 260
services.key: Content-Type
services.headers: text/html; charset=iso-8859-1
services.html_tags: <title>404 Not Found</title>
services.body: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
  <html><head>
  <title>404 Not Found</title>
  </head><body>
  <h1>Not Found</h1>
  <p>The requested URL was not found on this server.</p>
  <hr>
  <address>Apache Server at 18.170.180.254 Port 80</address>
  </body></html>
  
services.body_hash_sha1: sha1:971cf5de192df7082aa1ec5b5ddc97aa6a2da931
services.supported_versions: HTTP/1.1
services.protocol: HTTP
services.transport_protocol: TCP
services.scan_time: 2025-07-27T10:25:29.100402
services.banner: HTTP/1.1 200 OK
  Date:  <REDACTED>
  Server: Apache
  Expires: Thu, 19 Nov 1981 08:52:00 GMT
  Cache-Control: no-store, no-cache, must-revalidate
  Pragma: no-cache
  Set-Cookie: nxcsrf=9b0d97aa988d4d3b96f2e80261679c9c; Expires=Sun, 27-Jul-2025 11:25:32 GMT; Max-Age=3600; Path=%2F; Secure; SameSite=Strict
  Set-Cookie: nexsysonev3=fsdtmeu1h96juu7okb5ljuds7au8ft4b; expires=Sun, 27-Jul-2025 12:25:32 GMT; Max-Age=7200; path=/; SameSite=Lax; secure; HttpOnly
  Upgrade: h2
  Connection: Upgrade
  Vary: Accept-Encoding
  Content-Encoding: gzip
  Access-Control-Allow-Origin: *.mastec.com
  Cache-Control: private, must-revalidate
  Content-Length: 5335
  Content-Type: text/html; charset=UTF-8
  
services.version_selected: TLSv1_3
services.cipher_selected: TLS_AES_256_GCM_SHA384
services.fingerprint_sha256: 7fa4ff68ec04a99d7528d5085f94907f4d1dd1c5381bacdc832ed5c960214676
services.subject_dn: C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA
services.issuer_dn: C=US, ST=New Jersey, L=Jersey City, O=The USERTRUST Network, CN=USERTrust RSA Certification Authority
services.fingerprint_sha256: 68b9c761219a5b1f0131784474665db61bbdb109e00f05ca9f74244ee5f5f52b
services.subject_dn: C=US, ST=New Jersey, L=Jersey City, O=The USERTRUST Network, CN=USERTrust RSA Certification Authority
services.issuer_dn: C=GB, ST=Greater Manchester, L=Salford, O=Comodo CA Limited, CN=AAA Certificate Services
services.fingerprint_sha256: d7a7a0fb5d7e2731d771e9484ebcdef71d5f0c3e0a2948782bc83ee0ea699ef4
services.subject_dn: C=GB, ST=Greater Manchester, L=Salford, O=Comodo CA Limited, CN=AAA Certificate Services
services.issuer_dn: C=GB, ST=Greater Manchester, L=Salford, O=Comodo CA Limited, CN=AAA Certificate Services
services.ja4s: t130200_1302_a56c5b993250
services.version: TLSv1_3
services.ja4s: t130200_1302_a56c5b993250
services.version: TLSv1_2
services.ja4s: t120200_c030_344b4dce5a52
services.version: TLSv1_1
services.ja4s: t110200_c014_344b4dce5a52
services.version: TLSv1_0
services.ja4s: t100200_c014_344b4dce5a52
services.names: *.nexsysone.com nexsysone.com
services.issuer_dn: C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA
services.common_name: Sectigo RSA Domain Validation Secure Server CA
services.country: GB
services.locality: Salford
services.province: Greater Manchester
services.organization: Sectigo Limited
services.subject_dn: CN=*.nexsysone.com
services.common_name: *.nexsysone.com
services.scan_time: 2025-07-20T01:32:38.938589
services.source: OSI_APPLICATION_LAYER
services.part: a
services.vendor: Apache
services.product: HTTPD
services.cpe: cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*
services.value: bootstrap
services.value: fingerprintjs
services.value: jquery
services.value: login-page
services.path: /nexsysonev3/
services.endpoint_type: HTTP
services.scan_time: 2025-07-27T10:25:29.100402
services.uri: https://18.170.180.254/nexsysonev3/
services.protocol: HTTP/1.1
services.status_reason: OK
services.key: Vary
services.headers: Accept-Encoding
services.key: Access-Control-Allow-Origin
services.headers: *.mastec.com
services.key: Server
services.headers: Apache
services.key: Upgrade
services.headers: h2
services.key: Expires
services.headers: Thu, 19 Nov 1981 08:52:00 GMT
services.key: Cache-Control
services.headers: no-store, no-cache, must-revalidate private, must-revalidate
services.key: Content-Type
services.headers: text/html; charset=UTF-8
services.key: Pragma
services.headers: no-cache
services.key: Date
services.headers: <REDACTED>
services.key: Set-Cookie
services.headers: nxcsrf=9b0d97aa988d4d3b96f2e80261679c9c; Expires=Sun, 27-Jul-2025 11:25:32 GMT; Max-Age=3600; Path=%2F; Secure; SameSite=Strict nexsysonev3=fsdtmeu1h96juu7okb5ljuds7au8ft4b; expires=Sun, 27-Jul-2025 12:25:32 GMT; Max-Age=7200; path=/; SameSite=Lax; secure; HttpOnly
services.key: Content-Encoding
services.headers: gzip
services.key: Connection
services.headers: Upgrade
services.key: Content-Length
services.headers: 5335
services.html_tags: <title>NexSysOne | Login</title> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="theme-color" content="#001f3f"> <meta name="msapplication-navbutton-color" content="#001f3f"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"> <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
services.body: <!DOCTYPE html>
  <html>
  
  <head>
      <base href="https://18.170.180.254/nexsysonev3/" />
      <meta charset="utf-8">
      <meta http-equiv="X-UA-Compatible" content="IE=edge">
      <title>NexSysOne | Login</title>
  
  	<!-- Color the browser elements -->
  	<!-- Chrome, Firefox OS and Opera -->
  	<meta name="theme-color" content="#001f3f">
  	<!-- Windows Phone -->
  	<meta name="msapplication-navbutton-color" content="#001f3f">
  	<!-- iOS Safari -->
  	<meta name="apple-mobile-web-app-capable" content="yes">
  	<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
  
      <!-- Tell the browser to be responsive to screen width -->
      <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
      <!-- Bootstrap 3.3.5 -->
      <link rel="stylesheet" href="css/bootstrap/bootstrap.min.css">
      <!-- Font Awesome -->
      <link rel="stylesheet" href="css/fontcss/font-awesome.min.css">
      <!-- Ionicons -->
      <link rel="stylesheet" href="css/fontcss/ionicons.min.css">
      <!-- Theme style -->
      <link rel="stylesheet" href="css/app/navy/nexsysone/nexsysone.min.css">
      <link rel="stylesheet" href="css/app/navy/nexsysone/nexsysone.css"> 
  	<link rel="stylesheet" href="css/app/nexsysone-dark.min.css">
      <!-- Alertify -->
      <link rel="stylesheet" href="css/alertify/alertify.css">
      <!-- jBox -->
      <link rel="stylesheet" href="js/jbox/jbox.css">
      <!-- WaitMe -->
  	<link href="css/waitme/waitme.css" rel="stylesheet"/>
      <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
      <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
      <!--[if lt IE 9]>
          <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
          <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
      <![endif]-->
      <style>
      	.login-page
  		{
  			background-image: url('./img/wave.png');
  		    background-position: center;
  		    background-repeat: repeat-x;
  		    background-size: contain;
  		}
      	.direct-chat-text:before
      	{
  			border-width: 10px;
  		}
  		.highlight {
  		    background-color: #fff34d;
  		    -moz-box-shadow: 0 1px 4px rgba(146, 146, 146, 0.7); /* FF3.5+ */
  		    -webkit-box-shadow: 0 4px 1px rgba(146, 146, 146, 0.7); /* Saf3.0+, Chrome */
  		    box-shadow: 0 1px 4px rgba(146, 146, 146, 0.7); /* Opera 10.5+, IE 9.0 */
  		    border-radius: 2px;
  		    color: #4d4d4d;
  		}
  
  		.highlight {
  		    padding:0px 1px 1px;
  		}
  		.copyright
  		{
  			position: absolute;
      		bottom: 0px;
  		}
  		.btn-primary,.btn-primary{
  			/* background-color: #001f3f !important;
  			border-color: #001f3f !important;
  			color: #fff !important; */
  		}
  		.ellipsis{
  			white-space: nowrap;
  			overflow: hidden;
  			text-overflow: ellipsis;
  		}
          /* Chrome, Safari, Edge, Opera */
          input::-webkit-outer-spin-button,
          input::-webkit-inner-spin-button {
            -webkit-appearance: none;
            margin: 0;
          }
  
          /* Firefox */
          input[type=number] {
            -moz-appearance: textfield;
          }
      </style>
  </head>
  
  <body class="hold-transition login-page">
  <div class="alert alert-dismissible bg-white cookies-alert" style="padding: 10px;margin: 2px 4px;background-color: rgba(255, 255, 255, 0.75);position: absolute;top: 0px;display:none;">
  	    <button type="button" class="close" data-dismiss="alert" aria-hidden="true" style="margin: 0px 20px;" onclick="acceptcookies()">×</button>
  	    <h4 style="margin: 0px 0px 5px;"><i class="icon fa fa-warning" style="margin-right: 5px;"></i>Cookies Alert!</h4>
  	    <p style="line-height: 1em;font-size: 12px;">We use cookies to ensure that we give you the best experience on this website. 
  If you continue without changing your settings, we´ll assume that you are happy to receive all cookies on this website. 
  However, you can change your cookie settings at any time. 
  Please be aware that if you change your cookie settings, we can no longer guarantee our website to function properly. 
  Some functions of the site may be lost, while you may no longer be able to see certain websites. 
  <!--To read more about cookies see our Cookie Statement.--></p>
  	  </div>
  <div class="login-box" style="display: none;">
  	
                
      <!-- <div class="login-box" > -->
  	<div class="card card-primary card-outline">
  		<div class="card-header text-center">
  				<span class="logo-lg">
                  	<img src="img/common/logo/nxso.png" style="max-width: 100%;"/>
                  	<img src="img/common/logo/nxso-dark.png" style="max-width: 100%;display: none;" class="darkmode"/>
                  </span>
  			            	<div class="mt-2" style="font-family: system-ui;font-size: 20px;font-weight: 600;">QA</div>
  			        </div>
          <!-- /.login-logo -->
  		
  		<!-- Login Expired Message -->
  			        <div class="card-body">
  	            <p class="login-box-msg"></p>
  	            <form id="loginForm" action="login/authentication" method="post">
  	            	<input class="unauthorised" type="hidden" name="fingerprint" value=""/>
  	            	<input class="unauthorised" type="hidden" name="nxcsrf" value=""/>
  	            	<input class="unauthorised" type="hidden" name="lat" value="0"/>
  	            	<input class="unauthorised" type="hidden" name="lng" value="0"/>
  	            	<input class="unauthorised" type="hidden" name="timezone" value="0"/>
  					<div class="input-group mb-3">
  					<input type="text" class="form-control" placeholder="Username" data-validation-engine="validate[required]" data-errormessage-value-missing="Username is required!" name="username" id="username" autocomplete="off">
  						<div class="input-group-append">
  							<div class="input-group-text">
  							<span class="fa fa-user"></span>
  							</div>
  						</div>
  					</div>
  					<div class="input-group mb-3">
  						<input type="password" class="form-control" placeholder="Password" data-validation-engine="validate[required]" data-errormessage-value-missing="Password is required!" name="password" id="password" autocomplete="new-password">
  						<div class="input-group-append">
  							<div class="input-group-text">
  							<span class="fa fa-lock"></span>
  							</div>
  						</div>
  					</div>
  					<div class="row unauthorised">
  						<div class="col-8">
  							<div class="icheck-primary">
  							<input name="remember" type="checkbox">
  							<label for="remember">
  								Remember Me
  							</label>
  							</div>
  						</div>
  						<!-- /.col -->
  						<div class="col-4">
  							<button type="submit" class="btn btn-primary btn-block">Sign In</button>
  						</div>
  						<!-- /.col -->
  					</div>
  															<div class="social-auth-links text-center mt-2">
  																	</div>
  					<p class="mt-2 mb-1 text-right unauthorised">
  						<a class="mt-1 small forgotpasswordbtn" style="margin-top: 5px;" href="javascript:void(0)">Forgot password</a>
  					</p>
  	            </form>
  	        </div>
  				
          <!-- /.login-card-body -->
          <div class="user-card-body"></div>
      </div>
  
      <div id="license-agreement" class="modal" role="dialog" data-backdrop="static"></div>
      
      <div id="customer-display" class="modal" role="dialog" data-backdrop="static">
          <div class="modal-dialog modal-lg">
              <div class="modal-content" id="customerSection">
                  <div class="modal-header">
                      <h4 class="modal-title">CUSTOMERS</h4>
                      <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                  </div>
                  <div class="modal-body">
                  	<input class="form-control search" placeholder="Search customer..." style="margin-bottom: 5px;"/>
                      <div class="row" style="height:400px;overflow-y:auto;padding-top: 10px;">
                          <div class="row col-md-12" id="customer-list">
                          </div>
                      </div>
                  </div>
                  <div class="modal-footer" style="display: inline;">
                  	<img src="img/common/copyright.png" alt="nexsysone" class="mt-3"/>
                      <a href="login/logout" class="btn btn-danger float-right">Logout</a>
                      <a href="javascript:" class="btn btn-primary float-right" data-dismiss="modal">Close</a>
                  </div>
              </div>
          </div>
      </div>
  	
  	<div class="modal fade" id="mainmodal" role="dialog" aria-hidden="true">
  		<div class="modal-dialog" style="margin: 15% auto;">
  			<div class="modal-content">
  				<div class="modal-header">
  					<h4 class="modal-title"></h4>
  					<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
  				</div>
  				<div class="modal-body pb-2 pt-2">
  				</div>
  				<div class="modal-footer"></div>
  			</div>
  		</div>
  	</div>
  		</div>
      <div class="copyright">&copy; 2024 - <small>Rev.59109a1 Testing
  </small>~ Powered by <a style="display: inline;" href="http://nexsysone.com" target="_blank"><img src="img/common/copyright.png" alt="nexsysone"/></a></div>
  
      <!-- jQuery 2.1.4 -->
      <script src="js/jquery/jquery.js"></script>
      <!-- Bootstrap 3.3.5 -->
      <script src="js/bootstrap/bootstrap.min.js"></script>
  	<!-- jquery-cookie -->
  	<!-- url https://github.com/js-cookie/js-cookie -->
  	<script src="js/jquerycookie/jquery.cookie.js"></script>
      <!-- WaitMe -->
      <script src="js/waitme/waitme.min.js"></script>
  	<!-- ably.io jScript -->
  	<script type="text/javascript" src="//cdn.ably.io/lib/ably.min-1.js"></script>
  	<!-- Realtime jScript -->
  	<script src="js/ortc/ortc.js"></script>
  	<!-- ifvisible -->
  	<!-- For app lock usage -->
  	<script src="js/ifvisible/ifvisible.min.js"></script>
  	<!-- Find And Replace DOM Text -->
  	<script src="js/replacetext/jquery.replacetext.min.js"></script>
      <!--  JSONtoHTML -->
      <script src="js/json2html/json2html.js"></script>
      <script src="js/json2html/jquery.json2html.js"></script>
      <!-- Validation -->
      <script src="js/validation/jquery.validationEngine.js"></script>
      <script src="js/validation/jquery.validationEngine-en.js"></script>
  	<!-- Alertify -->
  	<script src="js/alertify/alertify.js"></script>
  	<!-- Browser Finger Print -->
  	<script src="js/fingerprint/fingerprint2.min.js"></script>
      <!-- JBox -->
      <script src="js/jbox/jbox.js"></script>
      <!-- Common -->
      <script src="js/app/nexsysone/nexsysone.js"></script>
      
      <script>
      	/* Base Tool Color */
  		var nxBaseAppColor = "#001f3f";
      	var loginpage = true; // to escape getLoginSession function in global.js
      </script>
      
      <script src="js/app/common/global.js"></script>
      <script src="js/app/common/login.js?2025072710"></script>
  </body>            
  </html>
  
  <script>
  var restrictaccess = false;
  var mfa_enabled = null;
  var geoLocationTimer;
  $(function () 
  {
  	if (getParameterByName('nxCookies') != "")
  		Cookies.set('nxCookies', getParameterByName('nxCookies'))
  	
  	getGeoLocation();
  	
  	$('input[name="timezone"]').val(Intl.DateTimeFormat().resolvedOptions().timeZone);
  
  	$('.forgotpasswordbtn').click( function () 
  	{
  		forgotpassword();
  	})
  	
  	if (parseInt(Cookies.get('nxCookies')) == 1)
  		$('.cookies-alert').remove();
  	else
  		$('.cookies-alert').show();
  
  	if (Cookies.get('nxFingerPrint') == undefined)
  	{
  		// Browser finger print
  		new Fingerprint2().get(function(result, components)
  		{
  			Cookies.set('nxFingerPrint', result, { expires: 365 });
  			$('input[name="fingerprint"]').val(result)
  		});
  	}
  	
  	$('input[name="fingerprint"]').val(Cookies.get('nxFingerPrint'));
  	
  	nxHighlightSearch('#customer-display .modal-body', 'div.customerdiv', 'Search customer...');
  	
  	// To check if browser fingerprint register
  	if (restrictaccess)
  	{
  		setTimeout(function () 
  		{
  			showWaitMe('#loginForm', 'Please wait while checking your access...');
  			new Fingerprint2().get(function(result, components)
  			{
  				$.ajax({
  					url: 'login/fingerprintcheck',
  					type: 'POST',
  					data: { nxcsrf : getNxCsrf(),
  							fingerprint : result 
  						},
  					success: function( response ) 
  					{
  						hideWaitMe('#loginForm');
  						var result = jQuery.parseJSON(response);
  						
  						if (result.length == 0)
  						{
  							
  							showRegistratioForm();
  							showLoginError('Unrecognized access detected. Please submit registration to grant your access.')
  							alertify.error('Unrecognized access detected. Please submit registration to grant your access.');
  							
  						}
  					},
  					error: function (request, status, error) 
  					{
  						hideWaitMe('#loginForm');
  				   	}
  				});
  			});
  
  		}, 1000);
  	}
  	
  	
  	})
  
  function showLoginError(msg)
  {
  	var html = "<div class='alert alert-danger text-center' style='padding: 6px;border-radius: 0px;'>"+msg+"</div>";
      $('.social-auth-links').html(html);
  }
  
  function showRegistratioForm()
  {
  	var registratioForm = {"tag":"form","role":"form","children":[
  							{"tag":"input","type":"hidden","class":"form-control","name":"fingerprint","html":""},
  						    {"tag":"div","class":"card-body pb-0","children":[
  						        {"tag":"div","class":"form-group mb-1","children":[
  						            {"tag":"input","type":"text","class":"form-control","name":"userid","placeholder":"User ID","html":""},
  						          ]},
  						        {"tag":"div","class":"form-group mb-0","children":[
  						            {"tag":"input","type":"email","class":"form-control","name":"email","placeholder":"Email","html":""},
  						          ]},
  						      ]}
  						  ]};
    
  	$('#mainmodal').modal({
  	    backdrop: 'static',
  	    keyboard: false
  	})
  	
  	$('#mainmodal .modal-title').text('Access Request');
  	
  	$('#mainmodal .modal-body').empty();
  	$('#mainmodal .modal-body').json2html([0], registratioForm);
  	
  	// Browser finger print
  	if (Cookies.get('nxFingerPrint') == undefined)
  	{
  		// Browser finger print
  		new Fingerprint2().get(function(result, components)
  		{
  			Cookies.set('nxFingerPrint', result, { expires: 365 });
  			$('#mainmodal .modal-body input[name="fingerprint"]').val(result)
  		});
  	} else {
  		$('#mainmodal .modal-body input[name="fingerprint"]').val(Cookies.get('nxFingerPrint'));
  	}
  
  	$('#mainmodal .modal-body input').on('keyup', function () 
  	{
  		if (validdateEmail($('#mainmodal .modal-body input[name="email"]').val()) && 
  			$('#mainmodal .modal-body input[name="userid"]').val() != '')
  		{
  			$('#mainmodal .modal-footer button').attr('disabled', false);
  		} else {
  			$('#mainmodal .modal-footer button').attr('disabled', true);
  		}
  	})
  	
  	$('#mainmodal .modal-footer').empty();
  	$('#mainmodal .modal-footer').append('<button class="btn btn-primary" disabled>Submit</button>');
  	
  	$('#mainmodal .modal-footer button').click( function () 
  	{
  		if (!validdateEmail($('#mainmodal .modal-body input[name="email"]').val()) ||
  			$('#mainmodal .modal-body input[name="user_id"]').val() == '')
  		{
  			$('#mainmodal .modal-footer button').attr('disabled', false);
  			return;
  		}
  		
  		alertify.confirm(nxLanguageTextTranslate("Confirm to submit?"), function (e) {
  			if (e) 
  			{
  				showWaitMe('#mainmodal .modal-content');	
  				$.ajax({
  					url: 'login/fingerprintregister',
  					type: 'POST',
  					data: { nxcsrf : getNxCsrf(),
  							fingerprint : $('#mainmodal .modal-body input[name="fingerprint"]').val(),
  							userid : $('#mainmodal .modal-body input[name="userid"]').val(),
  							email : $('#mainmodal .modal-body input[name="email"]').val() 
  						},
  					success: function( response ) 
  					{
  						hideWaitMe('#mainmodal .modal-content');
  						var result = jQuery.parseJSON(response);
  						
  						if (result.status)
  						{
  							
  							$('#mainmodal').modal('hide'); 
  							alertify.success(nxLanguageTextTranslate("Your access request has been sent and waiting for approval."));
  							
  						} else {
  							
  							if (result.errmsg != undefined)
  								alertify.error(nxLanguageTextTranslate(result.errmsg))
  							else
  								alertify.error(nxLanguageTextTranslate("Failed to submit access request. Please try again."))
  							
  						}
  					},
  					error: function (request, status, error) 
  					{
  						hideWaitMe('#mainmodal .modal-content');    	
  						alertify.error(nxLanguageTextTranslate("Failed to submit access request. Please try again."))   
  				   	}
  				});
  			} 
  			return false;
  		});	
  	})
  }
  
  function acceptcookies()
  {
  	$('.cookies-alert').remove();
  	Cookies.set('nxCookies', 1, { expires: 365 });
  }
  
  function getGeoLocation()
  {	
  	/*showWaitMe('#loginForm')*/
  	if (navigator.geolocation) 
  	{
  	    navigator.geolocation.getCurrentPosition( function(position) 
  	    {
  			/*hideWaitMe('#loginForm');*/
  
  	    	setTimeout("getGeoLocationFail()", 3000);
  	    	
  	        var lat = position.coords.latitude;
  	        var lng = position.coords.longitude;
  			
  	        $('input[name="lat"]').val(lat)
  	        $('input[name="lng"]').val(lng)
  			
  	    }, function(error) {
  		    	
  	        /*hideWaitMe('#loginForm');*/
  
  	    });
  	}
  }
  
  function getGeoLocationFail()
  {
  	/*hideWaitMe('#loginForm');*/
  }
  
  function forgotpassword()
  {
  	$('#mainmodal').modal({
  	    backdrop: 'static',
  	    keyboard: false
  	})
  	
  	$('#mainmodal .modal-title').html('Reset password');
  	
  	$('#mainmodal .modal-body').empty();
  	$('#mainmodal .modal-body').append('<input name="userid" class="form-control" style="margin-bottom: 5px;" placeholder="User ID"/>');
  	$('#mainmodal .modal-body').append('<input name="email" class="form-control" placeholder="Email address"/>');
  	
  	$('#mainmodal .modal-body input').on('keyup', function () 
  	{
  		if (validdateEmail($('#mainmodal .modal-body input[name="email"]').val()) && 
  			$('#mainmodal .modal-body input[name="userid"]').val() != '')
  		{
  			$('#mainmodal .modal-footer button').attr('disabled', false);
  		} else {
  			$('#mainmodal .modal-footer button').attr('disabled', true);
  		}
  	})
  	
  	$('#mainmodal .modal-footer').empty();
  	$('#mainmodal .modal-footer').append('<button class="btn btn-primary float-right" disabled>Reset</button>');
  	$('#mainmodal .modal-footer button').click(function () 
  	{
  		showWaitMe('#mainmodal .modal-content');
  		$.ajax({
  			url: 'login/resetpassword',
  			type: 'POST',
  			data: { nxcsrf : getNxCsrf(),
  					userid : $('#mainmodal .modal-body input[name="userid"]').val(),
  					email : $('#mainmodal .modal-body input[name="email"]').val() 
  					},
  			success: function( response ) 
  			{
  				hideWaitMe('#mainmodal .modal-content');
  				var result = jQuery.parseJSON(response);
  				
  				if (result.status)
  				{
  
  					$('#mainmodal').modal('hide');
  					alertify.success('Password has been reset.<br>New password has been sent to email shortly.');	
  					
  				} else {
  
  					alertify.error(result.errmsg);
  
  				}
  			},
  			error: function (request, status, error) 
  			{
  				hideWaitMe('#mainmodal .modal-content');
  				alertify.error('Error to reset password. Please try again');
  		    }
  		});
  	})
  }
  </script>
services.body_hash_sha1: sha1:989d3dbaa1b107bd787dc6cb6943b049aba086f5
services.supported_versions: HTTP/1.1 HTTP/2
[binary data, 14 values, 334 bytes]