Notice (8): Undefined index: self_learner [APP/View/Layouts/login.ctp, line 766]Code Context <div class="col-md-7 col-sm-12 col-xs-12 welcome-section-wrapper">
<?php if(getenv("SUB_ENV") == "PK" || $subdomain == 'pkt'){ ?>
<?php if ($this->passedArgs['self_learner']){ ?>
$viewFile = '/var/www/pk-smile/app/View/Layouts/login.ctp'
$dataForView = array(
'title_for_layout' => 'Login',
'manualUrl' => null,
'loadingGif' => 'https://s3.amazonaws.com/classera/static.classera.com/img/classera_loading.gif',
'terms_and_conditions_url' => 'https://s3.amazonaws.com/classera/static.classera.com/fg/moe/terms_and_conditions.pdf',
'debugToolbarPanels' => array(
'history' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'history_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'session' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'session_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'request' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'request_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'sql_log' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'sql_log_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'timer' => array(
'content' => null,
'elementName' => 'timer_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'log' => array(
'content' => object(DebugKitLog) {},
'elementName' => 'log_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'variables' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'variables_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'environment' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'environment_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'include' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'include_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
)
),
'debugToolbarJavascript' => array(
'libs' => 'DebugKit./js/js_debug_toolbar'
),
'debugToolbarCss' => array(
(int) 0 => 'DebugKit./css/debug_toolbar.css'
),
'display_captcha' => false,
'is_login' => true,
'content_for_layout' => '<div class="error-message"><div id="authMessage" class="message">You are not authorized to access that location.</div>
</div><script type="text/javascript" src="/js/msal.js" defer="defer"></script><link rel="stylesheet" type="text/css" href="/css/face_login.css"/><script type="text/javascript" src="/js/face_login.js" defer="defer"></script>
<style>
#UserLoginForm .password-wrapper {
position: relative;
}
#UserLoginForm .password-wrapper .fa {
position: absolute;
bottom: 20px;
right: 20px;
}
#flashMessage {
word-break: break-all;
white-space: pre-wrap;
height: auto;
color: #e5301c;
}
#flashMessage.success_flash2,
#flashMessage.success_flash3{
color: #2a2a2a !important;
margin-bottom: 3px;
padding: 7px 10px;
background: rgba(255, 255, 255, 0.5);
border-radius: 5px;
}
#flashMessage.success_flash3.pass::before{
display: none;
}
#flashMessage.success_message_login{
background: #66BB6A !important;
}
#flashMessage.success_message_login:before{
content: '\f00c' !important;
}
</style>
<div class="login-form-box-top">
<div class="col-lg-12 text-center ">
<form action="/users/login" role="form" id="UserLoginForm" method="post" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST"/></div><fieldset><div class="form-group required"><label for="UserUsername" class="control-label"></label><input name="data[User][username]" placeholder="Login Name" class="input-lg form-control form-control" maxlength="100" tabindex="1" type="text" id="UserUsername" required="required"/></div><div class="form-group required"><label for="UserPassword" class="control-label"></label><input name="data[User][password]" placeholder="Password" class="input-lg form-control form-control" maxlength="40" tabindex="2" type="password" id="UserPassword" required="required"/></div></fieldset> </div>
<div class="form-group row col-lg-12 login-actions">
<div class="btn-forgot-container"><a href="/users/reset" class=" btn-link btn-forgot white" tabindex="4">Forgot Password?</a></div>
<input class="btn btn-lg btn-login btn btn-default" tabindex="3" type="submit" value="Login"/>
</div>
</div>
<div class="form-group col-lg-12 log-gm">
<p>Or Login With</p><video autoplay id="face_login" style="display: none;"></video> <div class="login-with-links-wrapper">
<a href="#" class="login-with-social-btn btn-microsoft btn-micro-google" id="signInButtonLive"><i class="fa fa-windows"></i><label>Microsoft</label></a><a href="#" class="login-with-social-btn btn-google btn-micro-google" id="signInButton"><img src="/img/google_logo_colored.png" alt=""/><label>Google</label></a> </div>
</div>
<script type="text/javascript">
var translations = {
youAreNotAlone: "You are not alone",
whoAreYou: "We are unable to verify you",
whereAreYou: "Can't see you",
noCamera: "No cameras found",
notMe: "This is not me",
hello: "Hello",
faceTimedOut: "We couldn't verify your face make sure that you have defined your face in the edit profile page."
};
var base_url = "https://pk-smile.classera.com/";
if(!!window.localStorage)
window.localStorage.clear();
if(!!window.sessionStorage){
Object.keys(window.sessionStorage).filter(function(key){
return !~key.indexOf('adal') && !~key.indexOf('msal')
}).forEach(function(key){
delete window.sessionStorage[key];
})
}
if(navigator && navigator.serviceWorker && navigator.serviceWorker.controller)
navigator.serviceWorker.controller.postMessage({
clear_dt_cache: true
});
function recaptchaCallback() {
$('.btn-login').removeAttr('disabled');
};
jQuery(document).ready(function() {
try {
var text=document.getElementsByClassName("success_flash2")[0].innerHTML;
document.getElementsByClassName("success_flash2")[0].innerHTML="";
if(text.length > 0){
var up = text.split(",,,,");
document.getElementById("UserUsername").value = up[0];
document.getElementById("UserPassword").value = up[1];
}
} catch (error) {
$('#UserUsername').attr('placeholder',"Login Name");
$('#UserPassword').attr('placeholder',"Password");
}
// Add the eye symbol to the password field
var form = jQuery('#UserLoginForm');
var passwordField = form.find('input#UserPassword');
passwordField.parents('.form-group').addClass('password-wrapper');
passwordField.after('<i class="fa fa-eye" aria-hidden="true"></i>');
form.find('.password-wrapper .fa').click(function () {
if (passwordField.attr('type') === 'password') {
passwordField.attr('type', 'text');
} else {
passwordField.attr('type', 'password');
}
});
// Add the warning symbol to the password field
jQuery('#UserPassword').after('<i class="caps-warning fa fa-warning"></i>');
//check the caps lock key if it's ON/OFF on click and keydown
jQuery('body').on('click keydown', '#UserPassword', function (e) {
var capsState = event.getModifierState("CapsLock");
if (capsState) {
jQuery('.caps-warning').show();
jQuery('.password-wrapper .fa-eye').hide();
jQuery('.caps-warning').attr('title','Caps lock is on');
} else {
jQuery('.caps-warning').hide();
jQuery('.password-wrapper .fa-eye').show();
}
});
jQuery('#NoorsignInButton').click(function() {
var url = 'https://fg-classera-saml.moe.gov.sa/request.php'
window.location.href = url;
});
jQuery('#signInButton').click(function() {
jQuery(this).attr('href','https://accounts.google.com/o/oauth2/auth?scope=' +
'https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fplus.login https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&' +
'state=36a018ab032d6853ea0f03f30e7a8b86&' +
'redirect_uri=https://pk-smile.classera.com/users/google_login&'+
'response_type=code&' +
'client_id=351910993865-5t7sb3re5j9gbkv1vserb2djbef0ljud.apps.googleusercontent.com&' +
'access_type=offline');
return true; // Continue with the new href.
});
var _msal = new msal.PublicClientApplication({
auth: {
clientId: "df717cd3-94a4-4685-85b5-bb5c4fd9a48c",
redirect_uri: 'https://pk-smile.classera.com/'
},
system: {
allowRedirectInIframe: true,
}
});
_msal.handleRedirectPromise().then(handleResponse).catch(function(err){
console.error(err);
});
function handleResponse(resp) {
if(resp && resp.accessToken){
loginMicrosoft(resp.accessToken)
}
}
jQuery('#signInButtonLive').on('click', azureLogin);
function azureLogin(){
try {
_msal.loginRedirect({
scopes: ["User.Read"]
});
} catch (err) {
console.error(err);
}
}
function loginMicrosoft(access_token){
var $form = jQuery('<form class="hide microsoft_login" method="post" action="https://pk-smile.classera.com/users/microsoft_login">'+
'<input type="hidden" id="access_token" name="access_token"/>'+
'</form>');
$form.find('#access_token').val(access_token);
jQuery('body').append($form);
$form.submit();
}
$('.btn-micro-google').attr('tabindex' ,5);
});
</script>
<script>
const success_flash2 = $('.success_flash2.pass'); // jQuery object
if (success_flash2.length >= 1) {
const inputString = success_flash2.html();
const delimiter = ",,,,";
const values = inputString.split(delimiter);
if (values.length >= 2) {
const firstValue = values[0];
const secondValue = values[1];
$("#UserUsername").val(firstValue);
$("#UserPassword").val(secondValue);
$(".success_flash2.pass").hide();
}
}
</script>
',
'scripts_for_layout' => ''
)
$title_for_layout = 'Login'
$manualUrl = null
$loadingGif = 'https://s3.amazonaws.com/classera/static.classera.com/img/classera_loading.gif'
$terms_and_conditions_url = 'https://s3.amazonaws.com/classera/static.classera.com/fg/moe/terms_and_conditions.pdf'
$debugToolbarPanels = array(
'history' => array(
'content' => array(
(int) 0 => array(
[maximum depth reached]
)
),
'elementName' => 'history_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'session' => array(
'content' => array(
'Config' => array(
[maximum depth reached]
),
'CAuth' => array(
[maximum depth reached]
),
'Message' => array(
[maximum depth reached]
),
'Auth' => array(
[maximum depth reached]
),
'glogin_state' => '36a018ab032d6853ea0f03f30e7a8b86'
),
'elementName' => 'session_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'request' => array(
'content' => array(
'params' => array(
[maximum depth reached]
),
'url' => 'login',
'query' => array(
[maximum depth reached]
),
'data' => array([maximum depth reached]),
'cookie' => array([maximum depth reached]),
'get' => array(
[maximum depth reached]
),
'currentRoute' => object(CakeRoute) {}
),
'elementName' => 'request_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'sql_log' => array(
'content' => array(
'connections' => array(
[maximum depth reached]
),
'threshold' => (int) 20
),
'elementName' => 'sql_log_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'timer' => array(
'content' => null,
'elementName' => 'timer_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'log' => array(
'content' => object(DebugKitLog) {},
'elementName' => 'log_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'variables' => array(
'content' => array(
'display_captcha' => false,
'is_login' => true,
'$request->data' => array([maximum depth reached])
),
'elementName' => 'variables_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'environment' => array(
'content' => array(
'php' => array(
[maximum depth reached]
),
'cake' => array(
[maximum depth reached]
),
'app' => array(
[maximum depth reached]
)
),
'elementName' => 'environment_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'include' => array(
'content' => array(
'core' => array(
[maximum depth reached]
),
'app' => array(
[maximum depth reached]
),
'plugins' => array(
[maximum depth reached]
),
'paths' => array(
[maximum depth reached]
)
),
'elementName' => 'include_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
)
)
$debugToolbarJavascript = array(
'libs' => 'DebugKit./js/js_debug_toolbar'
)
$debugToolbarCss = array(
(int) 0 => 'DebugKit./css/debug_toolbar.css'
)
$display_captcha = false
$is_login = true
$content_for_layout = '<div class="error-message"><div id="authMessage" class="message">You are not authorized to access that location.</div>
</div><script type="text/javascript" src="/js/msal.js" defer="defer"></script><link rel="stylesheet" type="text/css" href="/css/face_login.css"/><script type="text/javascript" src="/js/face_login.js" defer="defer"></script>
<style>
#UserLoginForm .password-wrapper {
position: relative;
}
#UserLoginForm .password-wrapper .fa {
position: absolute;
bottom: 20px;
right: 20px;
}
#flashMessage {
word-break: break-all;
white-space: pre-wrap;
height: auto;
color: #e5301c;
}
#flashMessage.success_flash2,
#flashMessage.success_flash3{
color: #2a2a2a !important;
margin-bottom: 3px;
padding: 7px 10px;
background: rgba(255, 255, 255, 0.5);
border-radius: 5px;
}
#flashMessage.success_flash3.pass::before{
display: none;
}
#flashMessage.success_message_login{
background: #66BB6A !important;
}
#flashMessage.success_message_login:before{
content: '\f00c' !important;
}
</style>
<div class="login-form-box-top">
<div class="col-lg-12 text-center ">
<form action="/users/login" role="form" id="UserLoginForm" method="post" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST"/></div><fieldset><div class="form-group required"><label for="UserUsername" class="control-label"></label><input name="data[User][username]" placeholder="Login Name" class="input-lg form-control form-control" maxlength="100" tabindex="1" type="text" id="UserUsername" required="required"/></div><div class="form-group required"><label for="UserPassword" class="control-label"></label><input name="data[User][password]" placeholder="Password" class="input-lg form-control form-control" maxlength="40" tabindex="2" type="password" id="UserPassword" required="required"/></div></fieldset> </div>
<div class="form-group row col-lg-12 login-actions">
<div class="btn-forgot-container"><a href="/users/reset" class=" btn-link btn-forgot white" tabindex="4">Forgot Password?</a></div>
<input class="btn btn-lg btn-login btn btn-default" tabindex="3" type="submit" value="Login"/>
</div>
</div>
<div class="form-group col-lg-12 log-gm">
<p>Or Login With</p><video autoplay id="face_login" style="display: none;"></video> <div class="login-with-links-wrapper">
<a href="#" class="login-with-social-btn btn-microsoft btn-micro-google" id="signInButtonLive"><i class="fa fa-windows"></i><label>Microsoft</label></a><a href="#" class="login-with-social-btn btn-google btn-micro-google" id="signInButton"><img src="/img/google_logo_colored.png" alt=""/><label>Google</label></a> </div>
</div>
<script type="text/javascript">
var translations = {
youAreNotAlone: "You are not alone",
whoAreYou: "We are unable to verify you",
whereAreYou: "Can't see you",
noCamera: "No cameras found",
notMe: "This is not me",
hello: "Hello",
faceTimedOut: "We couldn't verify your face make sure that you have defined your face in the edit profile page."
};
var base_url = "https://pk-smile.classera.com/";
if(!!window.localStorage)
window.localStorage.clear();
if(!!window.sessionStorage){
Object.keys(window.sessionStorage).filter(function(key){
return !~key.indexOf('adal') && !~key.indexOf('msal')
}).forEach(function(key){
delete window.sessionStorage[key];
})
}
if(navigator && navigator.serviceWorker && navigator.serviceWorker.controller)
navigator.serviceWorker.controller.postMessage({
clear_dt_cache: true
});
function recaptchaCallback() {
$('.btn-login').removeAttr('disabled');
};
jQuery(document).ready(function() {
try {
var text=document.getElementsByClassName("success_flash2")[0].innerHTML;
document.getElementsByClassName("success_flash2")[0].innerHTML="";
if(text.length > 0){
var up = text.split(",,,,");
document.getElementById("UserUsername").value = up[0];
document.getElementById("UserPassword").value = up[1];
}
} catch (error) {
$('#UserUsername').attr('placeholder',"Login Name");
$('#UserPassword').attr('placeholder',"Password");
}
// Add the eye symbol to the password field
var form = jQuery('#UserLoginForm');
var passwordField = form.find('input#UserPassword');
passwordField.parents('.form-group').addClass('password-wrapper');
passwordField.after('<i class="fa fa-eye" aria-hidden="true"></i>');
form.find('.password-wrapper .fa').click(function () {
if (passwordField.attr('type') === 'password') {
passwordField.attr('type', 'text');
} else {
passwordField.attr('type', 'password');
}
});
// Add the warning symbol to the password field
jQuery('#UserPassword').after('<i class="caps-warning fa fa-warning"></i>');
//check the caps lock key if it's ON/OFF on click and keydown
jQuery('body').on('click keydown', '#UserPassword', function (e) {
var capsState = event.getModifierState("CapsLock");
if (capsState) {
jQuery('.caps-warning').show();
jQuery('.password-wrapper .fa-eye').hide();
jQuery('.caps-warning').attr('title','Caps lock is on');
} else {
jQuery('.caps-warning').hide();
jQuery('.password-wrapper .fa-eye').show();
}
});
jQuery('#NoorsignInButton').click(function() {
var url = 'https://fg-classera-saml.moe.gov.sa/request.php'
window.location.href = url;
});
jQuery('#signInButton').click(function() {
jQuery(this).attr('href','https://accounts.google.com/o/oauth2/auth?scope=' +
'https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fplus.login https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&' +
'state=36a018ab032d6853ea0f03f30e7a8b86&' +
'redirect_uri=https://pk-smile.classera.com/users/google_login&'+
'response_type=code&' +
'client_id=351910993865-5t7sb3re5j9gbkv1vserb2djbef0ljud.apps.googleusercontent.com&' +
'access_type=offline');
return true; // Continue with the new href.
});
var _msal = new msal.PublicClientApplication({
auth: {
clientId: "df717cd3-94a4-4685-85b5-bb5c4fd9a48c",
redirect_uri: 'https://pk-smile.classera.com/'
},
system: {
allowRedirectInIframe: true,
}
});
_msal.handleRedirectPromise().then(handleResponse).catch(function(err){
console.error(err);
});
function handleResponse(resp) {
if(resp && resp.accessToken){
loginMicrosoft(resp.accessToken)
}
}
jQuery('#signInButtonLive').on('click', azureLogin);
function azureLogin(){
try {
_msal.loginRedirect({
scopes: ["User.Read"]
});
} catch (err) {
console.error(err);
}
}
function loginMicrosoft(access_token){
var $form = jQuery('<form class="hide microsoft_login" method="post" action="https://pk-smile.classera.com/users/microsoft_login">'+
'<input type="hidden" id="access_token" name="access_token"/>'+
'</form>');
$form.find('#access_token').val(access_token);
jQuery('body').append($form);
$form.submit();
}
$('.btn-micro-google').attr('tabindex' ,5);
});
</script>
<script>
const success_flash2 = $('.success_flash2.pass'); // jQuery object
if (success_flash2.length >= 1) {
const inputString = success_flash2.html();
const delimiter = ",,,,";
const values = inputString.split(delimiter);
if (values.length >= 2) {
const firstValue = values[0];
const secondValue = values[1];
$("#UserUsername").val(firstValue);
$("#UserPassword").val(secondValue);
$(".success_flash2.pass").hide();
}
}
</script>
'
$scripts_for_layout = ''
$domain = 'https://pk-smile.classera.com/'
$subdomain = 'pk-smile'
$is_classera_style = true
include - APP/View/Layouts/login.ctp, line 766
View::_evaluate() - CORE/Cake/View/View.php, line 971
View::_render() - CORE/Cake/View/View.php, line 933
View::renderLayout() - CORE/Cake/View/View.php, line 546
View::render() - CORE/Cake/View/View.php, line 481
Controller::render() - CORE/Cake/Controller/Controller.php, line 968
Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 200
Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167
[main] - APP/webroot/index.php, line 137
COLLABORATIVE LEARNING
Learn Today & Have A Bright Future
Notice (8): Undefined index: self_learner [APP/View/Layouts/login.ctp, line 802]Code Context <?php } ?>
<?php elseif(getenv('SUB_ENV') == 'PK'): ?>
<?php if ($this->passedArgs['self_learner']){ ?>
$viewFile = '/var/www/pk-smile/app/View/Layouts/login.ctp'
$dataForView = array(
'title_for_layout' => 'Login',
'manualUrl' => null,
'loadingGif' => 'https://s3.amazonaws.com/classera/static.classera.com/img/classera_loading.gif',
'terms_and_conditions_url' => 'https://s3.amazonaws.com/classera/static.classera.com/fg/moe/terms_and_conditions.pdf',
'debugToolbarPanels' => array(
'history' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'history_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'session' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'session_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'request' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'request_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'sql_log' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'sql_log_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'timer' => array(
'content' => null,
'elementName' => 'timer_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'log' => array(
'content' => object(DebugKitLog) {},
'elementName' => 'log_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'variables' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'variables_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'environment' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'environment_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'include' => array(
'content' => array(
[maximum depth reached]
),
'elementName' => 'include_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
)
),
'debugToolbarJavascript' => array(
'libs' => 'DebugKit./js/js_debug_toolbar'
),
'debugToolbarCss' => array(
(int) 0 => 'DebugKit./css/debug_toolbar.css'
),
'display_captcha' => false,
'is_login' => true,
'content_for_layout' => '<div class="error-message"><div id="authMessage" class="message">You are not authorized to access that location.</div>
</div><script type="text/javascript" src="/js/msal.js" defer="defer"></script><link rel="stylesheet" type="text/css" href="/css/face_login.css"/><script type="text/javascript" src="/js/face_login.js" defer="defer"></script>
<style>
#UserLoginForm .password-wrapper {
position: relative;
}
#UserLoginForm .password-wrapper .fa {
position: absolute;
bottom: 20px;
right: 20px;
}
#flashMessage {
word-break: break-all;
white-space: pre-wrap;
height: auto;
color: #e5301c;
}
#flashMessage.success_flash2,
#flashMessage.success_flash3{
color: #2a2a2a !important;
margin-bottom: 3px;
padding: 7px 10px;
background: rgba(255, 255, 255, 0.5);
border-radius: 5px;
}
#flashMessage.success_flash3.pass::before{
display: none;
}
#flashMessage.success_message_login{
background: #66BB6A !important;
}
#flashMessage.success_message_login:before{
content: '\f00c' !important;
}
</style>
<div class="login-form-box-top">
<div class="col-lg-12 text-center ">
<form action="/users/login" role="form" id="UserLoginForm" method="post" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST"/></div><fieldset><div class="form-group required"><label for="UserUsername" class="control-label"></label><input name="data[User][username]" placeholder="Login Name" class="input-lg form-control form-control" maxlength="100" tabindex="1" type="text" id="UserUsername" required="required"/></div><div class="form-group required"><label for="UserPassword" class="control-label"></label><input name="data[User][password]" placeholder="Password" class="input-lg form-control form-control" maxlength="40" tabindex="2" type="password" id="UserPassword" required="required"/></div></fieldset> </div>
<div class="form-group row col-lg-12 login-actions">
<div class="btn-forgot-container"><a href="/users/reset" class=" btn-link btn-forgot white" tabindex="4">Forgot Password?</a></div>
<input class="btn btn-lg btn-login btn btn-default" tabindex="3" type="submit" value="Login"/>
</div>
</div>
<div class="form-group col-lg-12 log-gm">
<p>Or Login With</p><video autoplay id="face_login" style="display: none;"></video> <div class="login-with-links-wrapper">
<a href="#" class="login-with-social-btn btn-microsoft btn-micro-google" id="signInButtonLive"><i class="fa fa-windows"></i><label>Microsoft</label></a><a href="#" class="login-with-social-btn btn-google btn-micro-google" id="signInButton"><img src="/img/google_logo_colored.png" alt=""/><label>Google</label></a> </div>
</div>
<script type="text/javascript">
var translations = {
youAreNotAlone: "You are not alone",
whoAreYou: "We are unable to verify you",
whereAreYou: "Can't see you",
noCamera: "No cameras found",
notMe: "This is not me",
hello: "Hello",
faceTimedOut: "We couldn't verify your face make sure that you have defined your face in the edit profile page."
};
var base_url = "https://pk-smile.classera.com/";
if(!!window.localStorage)
window.localStorage.clear();
if(!!window.sessionStorage){
Object.keys(window.sessionStorage).filter(function(key){
return !~key.indexOf('adal') && !~key.indexOf('msal')
}).forEach(function(key){
delete window.sessionStorage[key];
})
}
if(navigator && navigator.serviceWorker && navigator.serviceWorker.controller)
navigator.serviceWorker.controller.postMessage({
clear_dt_cache: true
});
function recaptchaCallback() {
$('.btn-login').removeAttr('disabled');
};
jQuery(document).ready(function() {
try {
var text=document.getElementsByClassName("success_flash2")[0].innerHTML;
document.getElementsByClassName("success_flash2")[0].innerHTML="";
if(text.length > 0){
var up = text.split(",,,,");
document.getElementById("UserUsername").value = up[0];
document.getElementById("UserPassword").value = up[1];
}
} catch (error) {
$('#UserUsername').attr('placeholder',"Login Name");
$('#UserPassword').attr('placeholder',"Password");
}
// Add the eye symbol to the password field
var form = jQuery('#UserLoginForm');
var passwordField = form.find('input#UserPassword');
passwordField.parents('.form-group').addClass('password-wrapper');
passwordField.after('<i class="fa fa-eye" aria-hidden="true"></i>');
form.find('.password-wrapper .fa').click(function () {
if (passwordField.attr('type') === 'password') {
passwordField.attr('type', 'text');
} else {
passwordField.attr('type', 'password');
}
});
// Add the warning symbol to the password field
jQuery('#UserPassword').after('<i class="caps-warning fa fa-warning"></i>');
//check the caps lock key if it's ON/OFF on click and keydown
jQuery('body').on('click keydown', '#UserPassword', function (e) {
var capsState = event.getModifierState("CapsLock");
if (capsState) {
jQuery('.caps-warning').show();
jQuery('.password-wrapper .fa-eye').hide();
jQuery('.caps-warning').attr('title','Caps lock is on');
} else {
jQuery('.caps-warning').hide();
jQuery('.password-wrapper .fa-eye').show();
}
});
jQuery('#NoorsignInButton').click(function() {
var url = 'https://fg-classera-saml.moe.gov.sa/request.php'
window.location.href = url;
});
jQuery('#signInButton').click(function() {
jQuery(this).attr('href','https://accounts.google.com/o/oauth2/auth?scope=' +
'https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fplus.login https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&' +
'state=36a018ab032d6853ea0f03f30e7a8b86&' +
'redirect_uri=https://pk-smile.classera.com/users/google_login&'+
'response_type=code&' +
'client_id=351910993865-5t7sb3re5j9gbkv1vserb2djbef0ljud.apps.googleusercontent.com&' +
'access_type=offline');
return true; // Continue with the new href.
});
var _msal = new msal.PublicClientApplication({
auth: {
clientId: "df717cd3-94a4-4685-85b5-bb5c4fd9a48c",
redirect_uri: 'https://pk-smile.classera.com/'
},
system: {
allowRedirectInIframe: true,
}
});
_msal.handleRedirectPromise().then(handleResponse).catch(function(err){
console.error(err);
});
function handleResponse(resp) {
if(resp && resp.accessToken){
loginMicrosoft(resp.accessToken)
}
}
jQuery('#signInButtonLive').on('click', azureLogin);
function azureLogin(){
try {
_msal.loginRedirect({
scopes: ["User.Read"]
});
} catch (err) {
console.error(err);
}
}
function loginMicrosoft(access_token){
var $form = jQuery('<form class="hide microsoft_login" method="post" action="https://pk-smile.classera.com/users/microsoft_login">'+
'<input type="hidden" id="access_token" name="access_token"/>'+
'</form>');
$form.find('#access_token').val(access_token);
jQuery('body').append($form);
$form.submit();
}
$('.btn-micro-google').attr('tabindex' ,5);
});
</script>
<script>
const success_flash2 = $('.success_flash2.pass'); // jQuery object
if (success_flash2.length >= 1) {
const inputString = success_flash2.html();
const delimiter = ",,,,";
const values = inputString.split(delimiter);
if (values.length >= 2) {
const firstValue = values[0];
const secondValue = values[1];
$("#UserUsername").val(firstValue);
$("#UserPassword").val(secondValue);
$(".success_flash2.pass").hide();
}
}
</script>
',
'scripts_for_layout' => ''
)
$title_for_layout = 'Login'
$manualUrl = null
$loadingGif = 'https://s3.amazonaws.com/classera/static.classera.com/img/classera_loading.gif'
$terms_and_conditions_url = 'https://s3.amazonaws.com/classera/static.classera.com/fg/moe/terms_and_conditions.pdf'
$debugToolbarPanels = array(
'history' => array(
'content' => array(
(int) 0 => array(
[maximum depth reached]
)
),
'elementName' => 'history_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'session' => array(
'content' => array(
'Config' => array(
[maximum depth reached]
),
'CAuth' => array(
[maximum depth reached]
),
'Message' => array(
[maximum depth reached]
),
'Auth' => array(
[maximum depth reached]
),
'glogin_state' => '36a018ab032d6853ea0f03f30e7a8b86'
),
'elementName' => 'session_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'request' => array(
'content' => array(
'params' => array(
[maximum depth reached]
),
'url' => 'login',
'query' => array(
[maximum depth reached]
),
'data' => array([maximum depth reached]),
'cookie' => array([maximum depth reached]),
'get' => array(
[maximum depth reached]
),
'currentRoute' => object(CakeRoute) {}
),
'elementName' => 'request_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'sql_log' => array(
'content' => array(
'connections' => array(
[maximum depth reached]
),
'threshold' => (int) 20
),
'elementName' => 'sql_log_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'timer' => array(
'content' => null,
'elementName' => 'timer_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'log' => array(
'content' => object(DebugKitLog) {},
'elementName' => 'log_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'variables' => array(
'content' => array(
'display_captcha' => false,
'is_login' => true,
'$request->data' => array([maximum depth reached])
),
'elementName' => 'variables_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'environment' => array(
'content' => array(
'php' => array(
[maximum depth reached]
),
'cake' => array(
[maximum depth reached]
),
'app' => array(
[maximum depth reached]
)
),
'elementName' => 'environment_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
),
'include' => array(
'content' => array(
'core' => array(
[maximum depth reached]
),
'app' => array(
[maximum depth reached]
),
'plugins' => array(
[maximum depth reached]
),
'paths' => array(
[maximum depth reached]
)
),
'elementName' => 'include_panel',
'plugin' => 'DebugKit',
'title' => null,
'disableTimer' => true
)
)
$debugToolbarJavascript = array(
'libs' => 'DebugKit./js/js_debug_toolbar'
)
$debugToolbarCss = array(
(int) 0 => 'DebugKit./css/debug_toolbar.css'
)
$display_captcha = false
$is_login = true
$content_for_layout = '<div class="error-message"><div id="authMessage" class="message">You are not authorized to access that location.</div>
</div><script type="text/javascript" src="/js/msal.js" defer="defer"></script><link rel="stylesheet" type="text/css" href="/css/face_login.css"/><script type="text/javascript" src="/js/face_login.js" defer="defer"></script>
<style>
#UserLoginForm .password-wrapper {
position: relative;
}
#UserLoginForm .password-wrapper .fa {
position: absolute;
bottom: 20px;
right: 20px;
}
#flashMessage {
word-break: break-all;
white-space: pre-wrap;
height: auto;
color: #e5301c;
}
#flashMessage.success_flash2,
#flashMessage.success_flash3{
color: #2a2a2a !important;
margin-bottom: 3px;
padding: 7px 10px;
background: rgba(255, 255, 255, 0.5);
border-radius: 5px;
}
#flashMessage.success_flash3.pass::before{
display: none;
}
#flashMessage.success_message_login{
background: #66BB6A !important;
}
#flashMessage.success_message_login:before{
content: '\f00c' !important;
}
</style>
<div class="login-form-box-top">
<div class="col-lg-12 text-center ">
<form action="/users/login" role="form" id="UserLoginForm" method="post" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST"/></div><fieldset><div class="form-group required"><label for="UserUsername" class="control-label"></label><input name="data[User][username]" placeholder="Login Name" class="input-lg form-control form-control" maxlength="100" tabindex="1" type="text" id="UserUsername" required="required"/></div><div class="form-group required"><label for="UserPassword" class="control-label"></label><input name="data[User][password]" placeholder="Password" class="input-lg form-control form-control" maxlength="40" tabindex="2" type="password" id="UserPassword" required="required"/></div></fieldset> </div>
<div class="form-group row col-lg-12 login-actions">
<div class="btn-forgot-container"><a href="/users/reset" class=" btn-link btn-forgot white" tabindex="4">Forgot Password?</a></div>
<input class="btn btn-lg btn-login btn btn-default" tabindex="3" type="submit" value="Login"/>
</div>
</div>
<div class="form-group col-lg-12 log-gm">
<p>Or Login With</p><video autoplay id="face_login" style="display: none;"></video> <div class="login-with-links-wrapper">
<a href="#" class="login-with-social-btn btn-microsoft btn-micro-google" id="signInButtonLive"><i class="fa fa-windows"></i><label>Microsoft</label></a><a href="#" class="login-with-social-btn btn-google btn-micro-google" id="signInButton"><img src="/img/google_logo_colored.png" alt=""/><label>Google</label></a> </div>
</div>
<script type="text/javascript">
var translations = {
youAreNotAlone: "You are not alone",
whoAreYou: "We are unable to verify you",
whereAreYou: "Can't see you",
noCamera: "No cameras found",
notMe: "This is not me",
hello: "Hello",
faceTimedOut: "We couldn't verify your face make sure that you have defined your face in the edit profile page."
};
var base_url = "https://pk-smile.classera.com/";
if(!!window.localStorage)
window.localStorage.clear();
if(!!window.sessionStorage){
Object.keys(window.sessionStorage).filter(function(key){
return !~key.indexOf('adal') && !~key.indexOf('msal')
}).forEach(function(key){
delete window.sessionStorage[key];
})
}
if(navigator && navigator.serviceWorker && navigator.serviceWorker.controller)
navigator.serviceWorker.controller.postMessage({
clear_dt_cache: true
});
function recaptchaCallback() {
$('.btn-login').removeAttr('disabled');
};
jQuery(document).ready(function() {
try {
var text=document.getElementsByClassName("success_flash2")[0].innerHTML;
document.getElementsByClassName("success_flash2")[0].innerHTML="";
if(text.length > 0){
var up = text.split(",,,,");
document.getElementById("UserUsername").value = up[0];
document.getElementById("UserPassword").value = up[1];
}
} catch (error) {
$('#UserUsername').attr('placeholder',"Login Name");
$('#UserPassword').attr('placeholder',"Password");
}
// Add the eye symbol to the password field
var form = jQuery('#UserLoginForm');
var passwordField = form.find('input#UserPassword');
passwordField.parents('.form-group').addClass('password-wrapper');
passwordField.after('<i class="fa fa-eye" aria-hidden="true"></i>');
form.find('.password-wrapper .fa').click(function () {
if (passwordField.attr('type') === 'password') {
passwordField.attr('type', 'text');
} else {
passwordField.attr('type', 'password');
}
});
// Add the warning symbol to the password field
jQuery('#UserPassword').after('<i class="caps-warning fa fa-warning"></i>');
//check the caps lock key if it's ON/OFF on click and keydown
jQuery('body').on('click keydown', '#UserPassword', function (e) {
var capsState = event.getModifierState("CapsLock");
if (capsState) {
jQuery('.caps-warning').show();
jQuery('.password-wrapper .fa-eye').hide();
jQuery('.caps-warning').attr('title','Caps lock is on');
} else {
jQuery('.caps-warning').hide();
jQuery('.password-wrapper .fa-eye').show();
}
});
jQuery('#NoorsignInButton').click(function() {
var url = 'https://fg-classera-saml.moe.gov.sa/request.php'
window.location.href = url;
});
jQuery('#signInButton').click(function() {
jQuery(this).attr('href','https://accounts.google.com/o/oauth2/auth?scope=' +
'https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fplus.login https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&' +
'state=36a018ab032d6853ea0f03f30e7a8b86&' +
'redirect_uri=https://pk-smile.classera.com/users/google_login&'+
'response_type=code&' +
'client_id=351910993865-5t7sb3re5j9gbkv1vserb2djbef0ljud.apps.googleusercontent.com&' +
'access_type=offline');
return true; // Continue with the new href.
});
var _msal = new msal.PublicClientApplication({
auth: {
clientId: "df717cd3-94a4-4685-85b5-bb5c4fd9a48c",
redirect_uri: 'https://pk-smile.classera.com/'
},
system: {
allowRedirectInIframe: true,
}
});
_msal.handleRedirectPromise().then(handleResponse).catch(function(err){
console.error(err);
});
function handleResponse(resp) {
if(resp && resp.accessToken){
loginMicrosoft(resp.accessToken)
}
}
jQuery('#signInButtonLive').on('click', azureLogin);
function azureLogin(){
try {
_msal.loginRedirect({
scopes: ["User.Read"]
});
} catch (err) {
console.error(err);
}
}
function loginMicrosoft(access_token){
var $form = jQuery('<form class="hide microsoft_login" method="post" action="https://pk-smile.classera.com/users/microsoft_login">'+
'<input type="hidden" id="access_token" name="access_token"/>'+
'</form>');
$form.find('#access_token').val(access_token);
jQuery('body').append($form);
$form.submit();
}
$('.btn-micro-google').attr('tabindex' ,5);
});
</script>
<script>
const success_flash2 = $('.success_flash2.pass'); // jQuery object
if (success_flash2.length >= 1) {
const inputString = success_flash2.html();
const delimiter = ",,,,";
const values = inputString.split(delimiter);
if (values.length >= 2) {
const firstValue = values[0];
const secondValue = values[1];
$("#UserUsername").val(firstValue);
$("#UserPassword").val(secondValue);
$(".success_flash2.pass").hide();
}
}
</script>
'
$scripts_for_layout = ''
$domain = 'https://pk-smile.classera.com/'
$subdomain = 'pk-smile'
$is_classera_style = true
include - APP/View/Layouts/login.ctp, line 802
View::_evaluate() - CORE/Cake/View/View.php, line 971
View::_render() - CORE/Cake/View/View.php, line 933
View::renderLayout() - CORE/Cake/View/View.php, line 546
View::render() - CORE/Cake/View/View.php, line 481
Controller::render() - CORE/Cake/Controller/Controller.php, line 968
Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 200
Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167
[main] - APP/webroot/index.php, line 137
Login to In-School Children Module