CINXE.COM
Populi Login
<!DOCTYPE html> <html lang="en"> <head> <!--For security reasons, meta tags must live before the anything else--> <meta charset="UTF-8" /> <meta name="ROBOTS" content="noindex, nofollow" /> <meta name="application-name" content="Populi" /> <title>Populi Login</title> <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png?v=oLJb48QEl0"> <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png?v=oLJb48QEl0"> <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png?v=oLJb48QEl0"> <link rel="manifest" href="/site.webmanifest?v=oLJb48QEl0"> <link rel="mask-icon" href="/safari-pinned-tab.svg?v=oLJb48QEl3" color="#1b2b36"> <link rel="shortcut icon" href="/favicon.ico?v=oLJb48QEl03"> <meta name="apple-mobile-web-app-title" content="Populi"> <meta name="application-name" content="Populi"> <meta name="msapplication-TileColor" content="#2bb0ec"> <meta name="theme-color" content="#ffffff"> <!-- Stylesheets --> <link rel="stylesheet" href="https://d3bvw51884uqkr.cloudfront.net/d07c56db6042c243d8733600a74a0e5ba07621cc/css/globalvars.css" type="text/css" media="screen, projection" /> <link rel="stylesheet" href="https://d3bvw51884uqkr.cloudfront.net/d07c56db6042c243d8733600a74a0e5ba07621cc/css/global.css" type="text/css" media="screen, projection" /> <link rel="stylesheet" href="https://d3bvw51884uqkr.cloudfront.net/d07c56db6042c243d8733600a74a0e5ba07621cc/css/screen.css" type="text/css" media="screen, projection" /> <link rel="stylesheet" href="https://d3bvw51884uqkr.cloudfront.net/d07c56db6042c243d8733600a74a0e5ba07621cc/css/plugins.css" type="text/css" media="screen, projection" /> <script type="text/javascript" src="https://d3bvw51884uqkr.cloudfront.net/d07c56db6042c243d8733600a74a0e5ba07621cc/javascript/global.js"></script> <script type="text/javascript"> // Make sure they are using an approved broswer function browser_fail() { window.location.replace('/browserfail.php'); } $(document).ready(function() { browser_fail(); }); $(document).ready(function() { $('#timezone').val( Intl.DateTimeFormat().resolvedOptions().timeZone ); }); function loginSubmit(){ var bUsername = $('#username-field').val(); var bPassword = $('#password-field').val(); if(bUsername && bPassword){ $('#loginForm').get(0).submit(); } else{ if(!bPassword){ inputError($('#password-field')); } if(!bUsername){ inputError($('#username-field')); } } } function inputError(poThis){ $(poThis).addClass('empty_field').focus().keypress(function(){$(this).removeClass('empty_field')}); } function focusLoginInput(){ if($('#username-field').val()){ $('#password-field').focus(); } else{ $('#username-field').focus(); } } function submitEmailForm(){ var bSubmit = true; var strVal = $.trim($('#email').val()); var bPassed = is_valid_email_address(strVal); if(!bPassed && strVal != '') { $.jGrowl('Please enter a valid email address.', {theme: 'growlerror'}); inputError($('#email')); bSubmit = false; } else if( !$('#email').val().length ){ inputError($('#email')); bSubmit = false; } if(bSubmit){ var form = $("#pwemailform"); $.post(form.attr('action'), form.serialize()).done(function(response){ $.jGrowl(response); }).fail(function(response){ $.jGrowl(response.responseText, {theme: 'growlerror'}); }); } } function toggleRemember(){ if($('#remember_username').val() == 0){ $('#remember_username').val(1); $('.remember-button').addClass('remembering'); } else{ $('#remember_username').val(0); $('.remember-button').removeClass('remembering'); } } function checkForMultiFactor( psUserName ){ if( $.trim(psUserName).match(/\.populi$/) ){ $('#multifactor_auth_otp_div').slideDown('fast', 'swing'); } else{ $('#multifactor_auth_otp_div').slideUp('fast', 'swing'); } } jQuery.fn.wiggle = function(o) { var d = { speed: 50, wiggles: 3, travel: 5, callback: null }; var o = jQuery.extend(d, o); return this.each( function() { var cache = this; var wrap = jQuery(this).wrap('<div class="wiggle-wrap"></div>').css("position","relative"); var calls = 0; for (i=1;i<=o.wiggles;i++) { jQuery(this).animate({ left: "-=" + o.travel }, o.speed).animate({ left: "+=" + o.travel*2 }, o.speed*2).animate({ left: "-=" + o.travel }, o.speed, function() { calls++; if (jQuery(cache).parent().hasClass('wiggle-wrap')) { jQuery(cache).parent().replaceWith(cache); } if (calls == o.wiggles && jQuery.isFunction(o.callback)) { o.callback(); } }); } }); }; function toggle_forgot(){ if($('#loginForm').is(':visible')){ $('#loginForm').hide(); $('#pwemailform').show(); $('#email').focus(); } else { $('#pwemailform').hide(); $('#loginForm').show(); $('#username-field').focus(); } /*This nonsense fixes failed redraw in Safari*/ $('body').height('99.999999%'); setTimeout(function(){ $('body').height('auto'); }, 1); } function shake_login_box(){ $('#loginbox').wiggle({ speed:40, travel:20, wiggles:2, callback: focusLoginInput }); } $(document).ready(function(){ setTimeout(focusLoginInput, 100); }); function syncRemember(poThis){ if($(poThis).val() == ''){ $('#remember_username').val(1); $('.remember-button').addClass('remembering'); } else{ $('#remember_username').val(0); $('.remember-button').removeClass('remembering'); } } </script> <style type="text/css"> body>.header { background-color: #000000; } body>.header h1 { color: #e40000; } body>.header .nav a { color: #eded24; } body>.header .nav a::after { background-color: #eded24; } @media (prefers-color-scheme: dark) { body.theme-auto>.header { background-color: #000000; } body.theme-auto>.header h1 { color: #e40000; } body.theme-auto>.header .nav a { color: #eded24; } body.theme-auto>.header .nav a::after { background-color: #eded24; } } body.theme-dark>.header { background-color: #000000; } body.theme-dark>.header h1 { color: #e40000; } body.theme-dark>.header .nav a { color: #eded24; } body.theme-dark>.header .nav a::after { background-color: #eded24; } html, body { overflow:auto; } body { padding-top:5em; background-color:var(--black-075);} #loginbox { width:300px; margin:3.5em auto 0; padding:24px 24px 18px; background-color:var(--white); border-radius:3px; box-shadow: 0 1px 3px rgba(var(--shadow-rgb),.1); overflow:hidden;} #loginbox h1 { text-align:center; font-size:2.5em; } #loginbox label { float:none; width:auto; font-size:15px; } #loginbox input[type="password"], #loginbox input[type="text"] { font-size:18px; height:30px; padding:0 6px; width:100%; border-radius:3px; } #username-field, #password-field { padding:0 87px 0 6px !important; } #loginbox form { margin-top: 2em; } #loginbox img { display:block; margin:0 auto; max-width:200px; max-height:200px; } #loginbox .button { float:right; } #loginbox a:hover { text-decoration:underline; } div.jGrowl { padding-top:1.25em; } .error, .notice { font-size:1em; text-align:center; line-height:1.5em; padding:1.25em; position:absolute; top:0; left:0; right:0; border-radius:0; } .error { background:var(--red-400); color:var(--white); } .notice { background-color:var(--yellow-100); color:var(--yellow-800); } #main { background-color:transparent; border:none; position:relative; left:0; top:0; right:0; bottom:0; padding:0; overflow:hidden; } .footer { width:300px; margin:0 auto !important; text-align:right !important; } .footer a { color:var(--black-650); } .footer a:hover{ color:var(--black-850); text-decoration:underline; } #loginForm { display:block; } #pwemailform { display:none; } #password-field { margin-bottom:0 !important; } #email { margin-bottom:1em !important; } .empty_field { border-color:var(--red-400) !important; background-color:var(--red-100) !important; } .empty_field::-webkit-input-placeholder { color:var(--red-500); } .empty_field:-moz-placeholder { color:var(--red-500); } .login-input-wrapper { position:relative; margin-bottom:1.5em; } .input-button { position: absolute; top: 1px; right: 1px; height: 28px; line-height: 28px; width: 80px; text-align: center; border-radius: 0 3px 3px 0; background-color: var(--black-050); text-decoration: none !important; color: var(--black-650) !important; font-size: 13px; border-left: 1px solid var(--black-100); overflow-x: hidden; } .remembering { background-color: var(--green-050); color:var(--green-800) !important; } .sso_message { margin:54px -24px -18px; background: var(--black-050); text-align: center; padding:3px; font-size: 12px; } </style> </head> <body id="content"> <script type="text/javascript"> //Override our best guess from the UserAgent with better guesses $(document).ready(function(){ var device_params = $.device_info(); $('#os_name').val( device_params.os ); $('#os_version').val( device_params.os_version ); $('#browser_user_agent').val( navigator.userAgent ); $('#browser_type').val( device_params.browser_type ); $('#browser_major_version').val( device_params.browser_major_version ); $('#os_type').val( device_params.os_type ); var width = screen.width; var height = screen.height; $('#screen_min').val( Math.min(width, height) ); $('#screen_max').val( Math.max(width, height) ); $('#viewport_width').val( $(window).width() ); $('#viewport_height').val( $(window).height() ); $('#browser_fingerprint').val( new Fingerprint({canvas: true}).get() ); }); </script> <noscript> <p class="error">Javascript must be enabled in order to access Populi.</p> </noscript> <div id="loginbox" class="clear"> <h1> <img src="https://d2h8qhew3fx4cx.cloudfront.net/client/1731/3f0f3fc4c8240cbbade4360296eb600f/348a5985bcb486550222959bd68fb145_large.jpeg" alt="EC-Council University" /> </h1> <form name="login" id="loginForm" action="/router/logins/login" method="post" autocomplete="off" onsubmit="loginSubmit(); return false;" style=""> <div class="login-input-wrapper"> <input id="username-field" type="text" placeholder="Username" title="Username" tabIndex="1" name="username" value="" onblur="checkForMultiFactor($(this).val());" autocorrect="off" autocapitalize="off" /> <a href="#" class="input-button remember-button " onclick="toggleRemember(); return false;">Remember</a> </div> <div class="login-input-wrapper"> <input id="password-field" type="password" placeholder="Password" title="Password" tabIndex="2" name="password" value="" /> <a href="#" class="input-button toggle-password-input-type" data-password-input-dom-id="#password-field" data-show-text="Show" data-hide-text="Hide" tabindex="-1">Show</a> </div> <div id="multifactor_auth_otp_div" class="login-input-wrapper" style="display:none; clear:right;"> <input id="multifactor_auth_otp" placeholder="Security Device Code" type="text" tabindex="3" name="multifactor_auth_otp"/> </div> <button type="submit" class="button" tabindex="3" style="clear:right;"><span>Log In</span></button> <span style="float:left; width:216px; font-size:13px;" class="txt-inline_with_form_elements txt-clr-subtle"> <a href="#" onclick="toggle_forgot(); return false;"> Forgot your username or password? </a> </span> <input type="hidden" name="device[app_type]" value="BROWSER"/> <input type="hidden" name="device[type]" value="COMPUTER"/> <input type="hidden" id="os_type" name="device[os_type]" value=""/> <input type="hidden" id="os_name" name="device[os_name]" value=""/> <input type="hidden" id="os_version" name="device[os_version]" value=""/> <input type="hidden" id="model_name" name="device[model_name]" value=""/> <input type="hidden" id="app_version" name="device[app_version]" value=""/> <input type="hidden" id="screen_min" name="device[screen_min]" value=""/> <input type="hidden" id="screen_max" name="device[screen_max]" value=""/> <input type="hidden" id="browser_type" name="device[browser_type]" value=""/> <input type="hidden" id="browser_major_version" name="device[browser_major_version]" value=""/> <input type="hidden" id="browser_user_agent" name="device[browser_user_agent]" value=""/> <input type="hidden" name="device[uuid]" value="ebaa1ed156f3213a94322706770823f8"/> <input type="hidden" id="remember_username" name="remember_username" value="0" /> <input type="hidden" id="timezone" name="timezone" value="" /> <input type="hidden" id="browser_fingerprint" name="browser_fingerprint" value="" /> <input type="hidden" id="viewport_width" name="viewport_width" value=""/> <input type="hidden" id="viewport_height" name="viewport_height" value=""/> </form> <form name="pwemailform" autocomplete="off" id="pwemailform" action="/router/logins/forgot" method="post" onsubmit="submitEmailForm(); return false;"> <p> Please enter the non-Populi email that was used to set up your account. You will receive an email with instructions on how to reset your password. </p> <input type="text" name="email" id="email" placeholder="Email" title="Email" /> <button type="submit" class="button"><span>Send</span></button> <span style="float:left; width:216px; font-size:13px;" class="txt-inline_with_form_elements txt-clr-subtle"> <a href="#" onclick="toggle_forgot(); return false;"> Return to Login Screen </a> </span> </form> </div><!--/end #loginbox--> <div class="footer"> <a href="https://populi.co/legal/terms/" style="float:left;" target="_blank">Terms of Service</a> © <a href="https://populi.co" target="_blank">Populi</a> 2025 </div> </body> </html>