{"id":2748,"date":"2024-11-16T23:31:38","date_gmt":"2024-11-16T21:31:38","guid":{"rendered":"https:\/\/elearning-darfur-sd.net\/?page_id=2748"},"modified":"2024-11-16T23:36:22","modified_gmt":"2024-11-16T21:36:22","slug":"login","status":"publish","type":"page","link":"https:\/\/elearning-darfur-sd.net\/en\/login\/","title":{"rendered":"login"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2748\" class=\"elementor elementor-2748\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-c70fddf elementor-section-height-min-height elementor-section-boxed elementor-section-height-default elementor-section-items-middle wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no\" data-id=\"c70fddf\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;shape_divider_bottom&quot;:&quot;tilt&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t<div class=\"elementor-shape elementor-shape-bottom\" aria-hidden=\"true\" data-negative=\"false\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 1000 100\" preserveAspectRatio=\"none\">\n\t<path class=\"elementor-shape-fill\" d=\"M0,6V0h1000v100L0,6z\"\/>\n<\/svg>\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-86a6471\" data-id=\"86a6471\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1a3b7cb elementor-widget elementor-widget-heading\" data-id=\"1a3b7cb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h6 class=\"elementor-heading-title elementor-size-default\">\u062a\u0648\u0627\u0635\u0644 \u0645\u0639\u0646\u0627<\/h6>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-87dabd7 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible\" data-id=\"87dabd7\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;,&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-e5812f8\" data-id=\"e5812f8\" data-element_type=\"column\" data-e-type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f5a74d3 elementor-widget__width-initial elementor-widget elementor-widget-html\" data-id=\"f5a74d3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\r\n<!doctype html>\r\n<html dir=\"ltr\" lang=\"en\">\r\n\r\n<head>\r\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1, user-scalable=no\">\r\n    <link rel=\"manifest\" href=\"\/manifest.json\">\r\n    <link rel=\"mask-icon\" href=\"\/safari-pinned-tab.svg\" color=\"#5bbad5\">\r\n    <meta name=\"apple-mobile-web-app-title\" content=\"Classera\">\r\n    <meta name=\"application-name\" content=\"Classera\">\r\n    <meta name=\"theme-color\" content=\"#444\">\r\n    <link href='https:\/\/fonts.googleapis.com\/css?family=Roboto:300,400,500,600' rel='stylesheet' type='text\/css'>\r\n    \r\n    <meta name=\"robots\" content=\"index, follow\" \/>\r\n    <meta name=\"google-site-verification\" content=\"Cdwi3c0dL3ESW3KcqmMi4yuipRp0MmTlo1BHVMqpX-A\" \/>\r\n    <meta name=\"keywords\" content=\"lms, learning, education, learning management system, schools, university, elearning, classroom, academy, teaching, Best LMS, training, platform \">\r\n    <!-- Hotjar Tracking Code for Classera V14 -->\r\n<script>\r\n    (function(h,o,t,j,a,r){\r\n        h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};\r\n        h._hjSettings={hjid:3797888,hjsv:6};\r\n        a=o.getElementsByTagName('head')[0];\r\n        r=o.createElement('script');r.async=1;\r\n        r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;\r\n        a.appendChild(r);\r\n    })(window,document,'https:\/\/static.hotjar.com\/c\/hotjar-','.js?sv=');\r\n<\/script><link rel=\"apple-touch-icon\" sizes=\"180x180\" href=\"\/apple-touch-icon.png\"><link rel=\"icon\" type=\"image\/png\" href=\"\/favicon-32x32.png\" sizes=\"32x32\"><link rel=\"icon\" type=\"image\/png\" href=\"\/favicon-16x16.png\" sizes=\"16x16\"><link rel=\"shortcut icon\" href=\"\/favicon.ico\"\/><meta name=\"description\" content=\"Learning Management System  - We help Classrooms, Schools and Districts re tool to inspire their students with Personalized Learning protocols designed to unleash hidden talent\" \/><title>Login | Classera<\/title><link rel=\"stylesheet\" type=\"text\/css\" href=\"https:\/\/v14-cdn.classera.com\/css\/bootstrap\/bootstrap.min.css?837f947b-cf74-5ced-bdcc-3d35ababa67e\"\/><link rel=\"stylesheet\" type=\"text\/css\" href=\"https:\/\/v14-cdn.classera.com\/css\/assets\/font-awesome.min.css?477d3afe-be86-56cf-b2b3-25290c1a9aa7\"\/><link rel=\"stylesheet\" type=\"text\/css\" href=\"https:\/\/v14-cdn.classera.com\/css\/custom_login_style.css?101\"\/><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jQuery\/jquery-2.2.4.min.js?fcedf410-6638-5bbc-ae4e-e5856d98ebb2\"><\/script><link rel=\"stylesheet\" type=\"text\/css\" href=\"https:\/\/v14-cdn.classera.com\/css\/Alert_container.css?57b17246-0814-5dc4-ad14-28e4d6c972f1\"\/>\r\n    <meta content=\"text\/html; charset=utf-8\" http-equiv=\"Content-Type\" \/>\r\n    <title>\u062a\u0633\u062c\u064a\u0644 \u0627\u0644\u062f\u062e\u0648\u0644<\/title>\r\n    \r\n        <style>\r\n        \r\n      :root{\r\n             \r\n                --primary-color: rgb(81 221 247);\r\n                --secondary-color: rgb(0 135 217);\r\n                --forgot-color: rgb(1 167 229);\r\n            \r\n\r\n        }\r\n        body{\r\n                        \r\n        }  \r\n\r\n        body:before {\r\n                      }\r\n        .learning-never-stop-section  {\r\n                      }\r\n    \r\n        \r\n        \r\n                               \r\n\r\n         \r\n         \r\n                  \r\n        \r\n        \r\n\r\n        \r\n        \r\n        \r\n            <\/style>\r\n    <link rel=\"stylesheet\" type=\"text\/css\" href=\"https:\/\/v14-cdn.classera.com\/css\/specific_login_style_for_classera.css?101\"\/> \r\n\r\n<style>\r\n    \r\n\r\n \r\n \r\n\r\n#header .btn-lang button{\r\n    }\r\n.log-gm p{\r\n    }\r\n.login-with-links-wrapper .login-with-social-btn label{\r\n    }\r\nbody{\r\n    }\r\n#login_wrapper input[type=text], #login_wrapper input[type=password]{\r\n    }\r\n<\/style>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Gulzar&family=Hind:wght@300;400;500;600;700&display=swap\" rel=\"stylesheet\"> \r\n<style>\r\n        <\/style>\r\n<\/head>\r\n<body class=\"main-body\">\r\n<div class=\"container main-body-container\">\r\n    <div id=\"header\" class=\" \">\r\n            <div id=\"login_logo\"  class=\"\" style=\"padding:0;\">\r\n                <img decoding=\"async\" src=\"https:\/\/v14-cdn.classera.com\/img\/classera_logo_white.png?93c14775-d6a8-51df-97b2-7553b96c8787\" class=\"classera_login_logo\" alt=\"\"\/>            <\/div>\r\n                         <div class=\"btn-lang\">\r\n                    <div class=\"dropdown\">\r\n      <button class=\"btn btn-default dropdown-toggle\" type=\"button\" style=\"font-size: .8em;\" data-toggle=\"dropdown\">\r\n        <i class=\"fa fa-globe\"><\/i>\r\n        \u0627\u0644\u0644\u063a\u0629 \r\n        <span class=\"fa fa-chevron-down\"><\/span>\r\n\r\n      <\/button>\r\n        <ul class=\"dropdown-menu\"><li><a href=\"\/languages\/en\">English<\/a><\/li><li><a href=\"\/languages\/ar\">\u0639\u0631\u0628\u064a<\/a><\/li><li><a href=\"\/languages\/pt\">Portugu\u00eas<\/a><\/li><li><a href=\"\/languages\/de\">Deutsch<\/a><\/li><li><a href=\"\/languages\/fr\">Fran\u00e7ais<\/a><\/li><li><a href=\"\/languages\/ru\">\u0420\u0443\u0441\u0441\u043a\u0438\u0439<\/a><\/li><li><a href=\"\/languages\/es\">Espa\u00f1ola<\/a><\/li><li><a href=\"\/languages\/ms\">Malaysia<\/a><\/li><li><a href=\"\/languages\/id\">Indonesian<\/a><\/li><li><a href=\"\/languages\/th\">Thai<\/a><\/li><li><a href=\"\/languages\/ur\">Urdu<\/a><\/li><li><a href=\"\/languages\/uz\">Uzbek<\/a><\/li><li><a href=\"\/languages\/tr\">T\u00fcrk\u00e7e<\/a><\/li><\/ul>    <\/div>\r\n            <\/div>\r\n    <\/div>\r\n    <div class=\"row main-wrapper\">\r\n        <!-- <i class=\"rect left-rect\"><\/i>\r\n        <i class=\"rect right-rect\"><\/i> -->\r\n                    <div class=\"login-grid-wrapper\">\r\n                <div class=\"col-md-7 col-sm-12 col-xs-12 welcome-section-wrapper\">\r\n                                            <h3>\u0623\u0647\u0644\u0627 \u0628\u0643 \u0641\u064a<\/h3>\r\n                        <h1> \u0627\u0644\u0645\u062a\u0639\u0629 \u0627\u0644\u062d\u0642\u064a\u0642\u064a\u0629 \u0644\u0644\u062a\u0639\u0644\u0645 \u0627\u0644\u0630\u0643\u064a<\/h1>\r\n                                    <\/div>\r\n                <div class=\"main-login-container col-md-5  col-sm-12 col-xs-12 text-center\">\r\n                                <h4 class=\"login_to_classera_label hidden\"> \u062a\u0633\u062c\u064a\u0644 \u0627\u0644\u062f\u062e\u0648\u0644<\/h4>\r\n                                        <div id=\"content_wrapper\">\r\n                <div id=\"login_wrapper\">\r\n                    <div class=\"row form-box\">\r\n                        <div class=\"ministries_logos_wrapper\">\r\n                                                     \r\n                        <\/div>\r\n                        <div class=\"error-message\"><\/div><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/msal.js?14747dae-8450-50d1-b2b1-79530beba8bd\" defer=\"defer\"><\/script><link rel=\"stylesheet\" type=\"text\/css\" href=\"https:\/\/v14-cdn.classera.com\/css\/custom_login_style_ara.css?0d714996-ec65-53a5-a192-63b103ed6311\"\/><link rel=\"stylesheet\" type=\"text\/css\" href=\"https:\/\/v14-cdn.classera.com\/css\/face_login.css?c712575d-1eee-501b-8ca1-d58e8000abe4\"\/><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/face_login.js?f70e2320-3771-5a7f-aabe-e33b147e9cac\" defer=\"defer\"><\/script>\r\n<style>\r\n  #UserLoginForm .password-wrapper {\r\n    position: relative;\r\n  }\r\n\r\n  #UserLoginForm .password-wrapper .fa {\r\n    position: absolute;\r\n    bottom: 20px;\r\n    right: 20px;\r\n  }\r\n\t#flashMessage {\r\n    word-break: break-all;\r\n    white-space: pre-wrap;\r\n    height: auto;  \r\n    color: #e5301c;\r\n  }\r\n  #flashMessage.success_flash2,\r\n  #flashMessage.success_flash3{\r\n    color: #2a2a2a !important;\r\n    margin-bottom: 3px;\r\n    padding: 7px 10px;\r\n    background: rgba(255, 255, 255, 0.5);\r\n    border-radius: 5px;\r\n  }\r\n  #flashMessage.success_flash3.pass::before{\r\n    display: none;\r\n  }\r\n\r\n  #flashMessage.success_message_login{\r\n    background: #66BB6A !important;\r\n  }\r\n  #flashMessage.success_message_login:before{\r\n      content: '\\f00c' !important;\r\n  }\r\n<\/style>\r\n\r\n    <style>\r\n      #UserLoginForm .password-wrapper .fa {\r\n        position: absolute;\r\n        bottom: 20px;\r\n        right: auto;\r\n        left: 20px;\r\n      }\r\n    <\/style>\r\n    <div class=\"login-form-box-top\">\r\n\r\n  <div class=\"col-lg-12 text-center \">\r\n    \r\n  \t<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=\"\u0627\u0633\u0645 \u0627\u0644\u062f\u062e\u0648\u0644\" 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=\"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631\" class=\"input-lg form-control form-control\" maxlength=\"40\" tabindex=\"2\" type=\"password\" id=\"UserPassword\" required=\"required\"\/><\/div><\/fieldset>       <\/div>\r\n  \r\n  <div class=\"form-group row col-lg-12 login-actions\">\r\n  \t<div class=\"btn-forgot-container\"><a href=\"\/users\/reset\" class=\" btn-link btn-forgot white\" tabindex=\"4\">\u0623\u0646\u0633\u064a\u062a \u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u062f\u062e\u0648\u0644\u061f<\/a><\/div>   \r\n    <input  class=\"btn  btn-lg btn-login btn btn-default\" tabindex=\"3\"  type=\"submit\" value=\"\u062a\u0633\u062c\u064a\u0644 \u0627\u0644\u062f\u062e\u0648\u0644\"\/>\r\n  <\/div>\r\n<\/div>\r\n\r\n<div class=\"form-group col-lg-12 log-gm\">\r\n\t<p>\u0623\u0648 \u0633\u062c\u0644 \u0627\u0644\u062f\u062e\u0648\u0644 \u0639\u0646 \u0637\u0631\u064a\u0642<\/p><video autoplay id=\"face_login\" style=\"display: none;\"><\/video>   <div class=\"login-with-links-wrapper\">\r\n      <a href=\"#\" class=\"login-with-social-btn btn-microsoft btn-micro-google\" id=\"signInButtonLive\"><i class=\"fa fa-windows\"><\/i><label>\u0645\u0627\u064a\u0643\u0631\u0648\u0633\u0648\u0641\u062a<\/label><\/a><a href=\"#\" class=\"login-with-social-btn btn-google btn-micro-google\" id=\"signInButton\"><img decoding=\"async\" src=\"https:\/\/v14-cdn.classera.com\/img\/google_logo_colored.png?4c645810-a5df-5113-8784-d51b6bdc6307\" alt=\"\"\/><label>\u062c\u0648\u062c\u0644<\/label><\/a>    <\/div>\r\n  \r\n\t\r\n<\/div>\r\n\r\n\r\n<script type=\"text\/javascript\">\r\nvar translations = {\r\n  youAreNotAlone: \"\u0644\u0633\u062a \u0644\u0648\u062d\u062f\u0643\",\r\n  whoAreYou: \"\u0644\u0645 \u0646\u062a\u0645\u0643\u0646 \u0645\u0646 \u0627\u0644\u062a\u062d\u0642\u0642 \u0645\u0646\u0643\",\r\n  whereAreYou: \"\u0644\u0627 \u0646\u0633\u062a\u0637\u064a\u0639 \u0631\u0624\u064a\u062a\u0643\",\r\n  noCamera: \"\u0644\u0627 \u064a\u0648\u062c\u062f \u0643\u0627\u0645\u064a\u0631\u0627\",\r\n  notMe: \"\u0647\u0630\u0627 \u0644\u064a\u0633 \u0627\u0646\u0627\",\r\n  hello: \"\u0645\u0631\u062d\u0628\u0627\u064b\",\r\n  faceTimedOut: \"\u0644\u0645 \u0646\u062a\u0645\u0643\u0646 \u0645\u0646 \u0627\u0644\u062a\u062d\u0642\u0642 \u0645\u0646 \u0648\u062c\u0647\u0643 \u060c \u062a\u0623\u0643\u062f \u0645\u0646 \u0625\u0636\u0627\u0641\u0629 \u0648\u062c\u0647\u0643 \u0641\u064a \u0635\u0641\u062d\u0629 \u062a\u0639\u062f\u064a\u0644 \u0627\u0644\u0645\u0644\u0641 \u0627\u0644\u0634\u062e\u0635\u064a.\"\r\n};\r\nvar base_url = \"https:\/\/me.classera.com\/\";\r\nif(!!window.localStorage)\r\n  window.localStorage.clear();\r\nif(!!window.sessionStorage){\r\n  Object.keys(window.sessionStorage).filter(function(key){\r\n    return !~key.indexOf('adal') && !~key.indexOf('msal')\r\n  }).forEach(function(key){\r\n    delete window.sessionStorage[key];\r\n  })\r\n}\r\n\r\nif(navigator && navigator.serviceWorker && navigator.serviceWorker.controller)\r\n  navigator.serviceWorker.controller.postMessage({\r\n    clear_dt_cache: true\r\n  });\r\n\r\n  function recaptchaCallback() {\r\n  $('.btn-login').removeAttr('disabled');\r\n};\r\n  \r\njQuery(document).ready(function() {\r\n  try {\r\n\r\n var text=document.getElementsByClassName(\"success_flash2\")[0].innerHTML;\r\n document.getElementsByClassName(\"success_flash2\")[0].innerHTML=\"\";\r\n\r\n if(text.length > 0){\r\n  var up = text.split(\",,,,\");\r\n  document.getElementById(\"UserUsername\").value = up[0];\r\n  document.getElementById(\"UserPassword\").value = up[1];\r\n }\r\n} catch (error) {\r\n  $('#UserUsername').attr('placeholder',\"\u0627\u0633\u0645 \u0627\u0644\u062f\u062e\u0648\u0644\"); \r\n  $('#UserPassword').attr('placeholder',\"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631\");\r\n\r\n}\r\n\r\n\r\n   \/\/ Add the eye symbol to the password field\r\n  var form = jQuery('#UserLoginForm');\r\n    var passwordField = form.find('input#UserPassword');\r\n    passwordField.parents('.form-group').addClass('password-wrapper');\r\n    passwordField.after('<i class=\"fa fa-eye\" aria-hidden=\"true\"><\/i>'); \r\n\r\n    form.find('.password-wrapper .fa').click(function () {\r\n        if (passwordField.attr('type') === 'password') {\r\n            passwordField.attr('type', 'text');\r\n        } else {\r\n            passwordField.attr('type', 'password');\r\n        }\r\n    });\r\n    \/\/ Add the warning symbol to the password field\r\n    jQuery('#UserPassword').after('<i class=\"caps-warning fa fa-warning\"><\/i>');\r\n\r\n    \/\/check the caps lock key if it's ON\/OFF on click and keydown\r\n    jQuery('body').on('click keydown', '#UserPassword', function (e) {\r\n        var capsState = event.getModifierState(\"CapsLock\");\r\n        if (capsState) {\r\n            jQuery('.caps-warning').show();\r\n            jQuery('.password-wrapper .fa-eye').hide();\r\n            jQuery('.caps-warning').attr('title','Caps lock is on');\r\n        } else {\r\n            jQuery('.caps-warning').hide();\r\n            jQuery('.password-wrapper .fa-eye').show();\r\n\r\n        }\r\n\r\n    });\r\n\r\n    jQuery('#NoorsignInButton').click(function() {\r\n      var url = 'https:\/\/fg-classera-saml.moe.gov.sa\/request.php'\r\n      window.location.href = url;\r\n  });\r\n\r\n  jQuery('#signInButton').click(function() {\r\n    jQuery(this).attr('href','https:\/\/accounts.google.com\/o\/oauth2\/auth?scope=' +\r\n      'https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fplus.login https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&' +\r\n      'state=c751c3dc5b65bb011aa76fe6f8b48054&' +\r\n      'redirect_uri=https:\/\/me.classera.com\/users\/google_login&'+\r\n      'response_type=code&' +\r\n      'client_id=351910993865-5t7sb3re5j9gbkv1vserb2djbef0ljud.apps.googleusercontent.com&' +\r\n      'access_type=offline');\r\n      return true; \/\/ Continue with the new href.\r\n  });\r\n\r\n\r\n  var _msal = new msal.PublicClientApplication({\r\n    auth: {\r\n      clientId: \"df717cd3-94a4-4685-85b5-bb5c4fd9a48c\",\r\n      redirect_uri: 'https:\/\/me.classera.com\/'\r\n    },\r\n\tsystem: {\r\n\t\t  allowRedirectInIframe: true,\r\n\t  }\r\n  });\r\n\r\n  _msal.handleRedirectPromise().then(handleResponse).catch(function(err){\r\n      console.error(err);\r\n  });\r\n\r\n  function handleResponse(resp) {\r\n      if(resp && resp.accessToken){\r\n        loginMicrosoft(resp.accessToken)\r\n      }\r\n  }\r\n\r\n  jQuery('#signInButtonLive').on('click', azureLogin);\r\n\r\n  function azureLogin(){\r\n    try {\r\n      _msal.loginRedirect({\r\n          scopes: [\"User.Read\"]\r\n      });\r\n    } catch (err) {\r\n      console.error(err);\r\n    }\r\n  }\r\n\r\n\r\n  function loginMicrosoft(access_token){\r\n    var $form = jQuery('<form class=\"hide microsoft_login\" method=\"post\" action=\"https:\/\/me.classera.com\/users\/microsoft_login\">'+\r\n          '<input type=\"hidden\" id=\"access_token\" name=\"access_token\"\/>'+\r\n        '<\/form>');\r\n\r\n    $form.find('#access_token').val(access_token);\r\n    jQuery('body').append($form);\r\n    $form.submit();\r\n  }\r\n\r\n\r\n  $('.btn-micro-google').attr('tabindex' ,5);\r\n\r\n});\r\n<\/script>\r\n<script>\r\n  const success_flash2 = $('.success_flash2.pass'); \/\/ jQuery object\r\n\r\n  if (success_flash2.length >= 1) {\r\n      const inputString = success_flash2.html();\r\n      const delimiter = \",,,,\";\r\n      const values = inputString.split(delimiter);\r\n\r\n      if (values.length >= 2) {\r\n          const firstValue = values[0];\r\n          const secondValue = values[1];\r\n          $(\"#UserUsername\").val(firstValue);\r\n          $(\"#UserPassword\").val(secondValue);\r\n          $(\".success_flash2.pass\").hide();\r\n      }\r\n  }\r\n<\/script>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\t\t<\/div>\r\n                    <\/div> <!-- end login-grid-wrapper -->\r\n        \t\t<div class=\"row\">\r\n\t\t\t<div class=\"col-md-12 text-center copyright\">\r\n\t\t\t\u0643\u0644\u0627\u0633\u064a\u0631\u0627 &copy; 2024.\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t\t<div class=\"row\">\r\n\t\t\t<!-- Loading Common Site Scripts -->\r\n<script>\r\n\tvar lang = 'eng';\r\n\tvar sub_env = '';\r\n\tvar config = {\r\n\t\t'.chosen-select'           : {search_contains:true},\r\n\t\t'.chosen-select-deselect'  : {allow_single_deselect:true},\r\n\t\t'.chosen-select-no-single' : {disable_search_threshold:10},\r\n\t\t'.chosen-select-no-results': {no_results_text:\"None\"},\r\n\t\t'.chosen-select-width'     : {width:\"95%\"}\r\n\t};\r\n\tjQuery(function(){\r\n\t\tObject.keys(config).forEach(function(selector){\r\n\t\t\tif(jQuery('select'+selector).length)\r\n\t\t\t\tjQuery('select'+selector).chosen(config[selector]);\r\n\t\t});\r\n\t});\r\n\t\t\tvar school_id = null;\r\n\t\tvar school_group_id = null;\r\n\t\tvar role_id = null;\r\n\t\r\n  $('.page-body form:not(.finshedLoad)').append('<div class=\"formMask\">'+'<div class=\"formLoading\"><\/div>'+'<\/div><div class=\"formProgress\"><\/div>');\r\n<\/script>\r\n\r\n<script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jquery.jclock-2.2.1.js?45a47e18-0248-5da6-adfd-40c90a4678fb\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jqGrid\/grid.locale-en.js?fa5d2193-b51d-5c15-a651-7152cafdf2da\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jqGrid\/jquery.jqGrid.min4.4.js?c25ff191-a029-5341-aa4b-8e3fb2233b85\" defer=\"defer\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jQuery\/jquery-ui\/jquery-ui-1.10.3.custom.min.js?3ae1a267-f950-5d2e-a41e-d934a5282daa\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/chosen.jquery.js?93af13bb-6687-5664-a404-6106e67b9265\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jqlight.lazyloadxt.min.js?a1ff6bea-b5e1-585d-8ab7-e993a290eb02\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/classeraCombinedScripts2.js?3a6dddcf-6059-5431-978f-0539d6da0658\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/defaultformatters.js?75e47bf4-fad8-5193-b963-c9f3bcecd222\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jquery.scrolling-tabs.js?aa536b2f-3b38-5bde-b010-f0ceb88bc98b\"><\/script>\r\n<!--[if lt IE 9]>\r\n<script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/picnet.table.filter.min.js?f81b3ad8-b8dc-5531-95fc-2d200b6fb680\"><\/script><![endif]-->\r\n\r\n<script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/bootstrap\/bootstrap.min.js?c1cd8076-6019-58f7-98c4-372b2cdc390b\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/bootstrap\/tagsinput\/bootstrap-tagsinput.min.js?9823c2e4-1562-5f8f-87a9-0a7e6d0cb524\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/Alert_container.js?8e81bd8e-34bc-5669-8342-6f11b4caeb0e\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/socket_io.js?ba724010-a5ea-50eb-bd39-681b83c9d22f\" defer=\"defer\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/bootstrap\/slimscroll\/jquery.slimscroll.min.js?7b50cfc0-ca56-52ea-a74e-9eb2a6e16685\" defer=\"defer\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/beyond.js?e369d4d2-38be-5748-999c-adf53d3647d6\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jQuery\/table_export\/tableExport.min.js?e160855d-aa8e-5de5-995b-ebec31a2e05a\" defer=\"defer\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jQuery\/table_export\/libs\/FileSaver\/FileSaver.min.js?f9ab909b-08c3-5979-b71e-89f1607f1a6d\" defer=\"defer\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/xlsx.full.min.js?ab1f6b6e-914e-52e1-94a6-5cd72e4a8732\" defer=\"defer\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/jquery.ezdz.min.js?37e9ea83-4e7b-55dc-a966-7673292607cd\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/formDesign.js?cfd5a0bd-27d5-54ce-b16b-5dda285efa44\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/upload_file_bar.js?a68b43fe-7ed3-542d-940d-5af55d7ad362\"><\/script><script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/sweet_alert\/sweet-alert.js?112596c5-6d70-529c-b1b7-46d0321cf293\"><\/script>\r\n<script type=\"text\/javascript\">\r\n  var  blockedByThisUser = '\u062a\u0645 \u062d\u0638\u0631\u0643 \u0645\u0646 \u0642\u0628\u0644 \u0647\u0630\u0627 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645';\r\n  var  WriteYourMessage = '\u0627\u0643\u062a\u0628 \u0631\u0633\u0627\u0644\u062a\u0643 \u0647\u0646\u0627 ...';\r\n  var  disableStudentChat = '\u062a\u0639\u0637\u064a\u0644 \u062f\u0631\u062f\u0634\u0629 \u0627\u0644\u0637\u0644\u0627\u0628';\r\n  var  AppearOnline = '\u0627\u0638\u0647\u0631 \u0643\u0645\u062a\u0635\u0644';\r\n  var  AppearOffline = '\u0627\u0638\u0647\u0631 \u0643\u063a\u064a\u0631 \u0645\u062a\u0635\u0644';\r\n  var  unblock = '\u0627\u0644\u063a\u0627\u0621 \u0627\u0644\u062d\u0638\u0631';\r\n  var  BlocksUsersList = '\u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645\u064a\u0646 \u0627\u0644\u0645\u062d\u0638\u0648\u0631\u064a\u0646';\r\n  var  NoUsersBlocked = '\u0644\u0627 \u064a\u0648\u062c\u062f \u0645\u0633\u062a\u062e\u062f\u0645\u0648\u0646 \u0645\u062d\u0638\u0648\u0631\u064a\u0646';\r\n  var  Disable = '\u062a\u0639\u0637\u064a\u0644';\r\n  var  Activate = '\u062a\u0641\u0639\u064a\u0644';\r\n  var  BlockThisUser = '\u062d\u0636\u0631 \u0647\u0630\u0627 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645';\r\n  var  chatText = '\u0627\u0644\u062f\u0631\u062f\u0634\u0629';\r\n  var  searchText = '\u0628\u062d\u062b...';\r\n  var  seenText = '\u062a\u0645\u062a \u0631\u0624\u064a\u062a\u0647';\r\n  var  disableStudentsChatText = '\u062a\u0639\u0637\u064a\u0644 \u0627\u0644\u062f\u0631\u062f\u0634\u0629 \u0639\u0646\u062f \u0627\u0644\u0637\u0644\u0627\u0628';\r\n  var  disableSelectedStudentsText = '\u062a\u0639\u0637\u064a\u0644 \u0627\u0644\u0637\u0644\u0627\u0628 \u0627\u0644\u0645\u062d\u062f\u062f\u064a\u0646';\r\n  var  selectSectionText = '\u0627\u062e\u062a\u0631 \u0641\u0635\u0644';\r\n  var  selectAllText = '\u0625\u062e\u062a\u0631 \u0627\u0644\u0643\u0644';\r\n  var  showDisabledText = '\u0627\u0638\u0647\u0631 \u0627\u0644\u0637\u0644\u0627\u0628 \u0627\u0644\u0645\u0639\u0637\u0644\u064a\u0646';\r\n  var  activateSelectedStudentsText = '\u0641\u0639\u0644 \u0627\u0644\u0637\u0644\u0627\u0628 \u0627\u0644\u0645\u062d\u062f\u062f\u064a\u0646';\r\n  var menuTranaslate = '\u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u062c\u0627\u0646\u0628\u064a\u0629';\r\n  var TopMenuTranaslate = '\u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0639\u0644\u0648\u064a\u0629';\r\n  var allNotificationsBtn = '\u0625\u0634\u0639\u0627\u0631\u0627\u062a';\r\n  var languageTranslate = '\u0627\u0644\u0644\u063a\u0629';\r\n  var groupNameTranslate = 'Group Name';\r\n  var doneTranslate = '\u062a\u0645';\r\n  var createGroupTranslate = '\u0625\u0646\u0634\u0627\u0621 \u0645\u062c\u0645\u0648\u0639\u0629';\r\n  var GroupsTitleTranslate = '\u0627\u0644\u0645\u062c\u0645\u0648\u0639\u0627\u062a';\r\n  var LeaveGroupTranslate = '\u063a\u0627\u062f\u0631 \u0627\u0644\u0645\u062c\u0645\u0648\u0639\u0629';\r\n  var DeleteGroupTranslate = '\u062d\u0630\u0641 \u0627\u0644\u0645\u062c\u0645\u0648\u0639\u0629';\r\n  var DeleteUserFromGroupTranslate = '\u062d\u0630\u0641 \u0645\u0634\u062a\u0631\u0643';\r\n  var AddUserToGroupTranslate = '\u0625\u0636\u0627\u0641\u0629 \u0645\u0634\u062a\u0631\u0643';\r\n  var areYouSureTranslate = '\u0647\u0644 \u0627\u0646\u062a \u0645\u062a\u0623\u0643\u062f\u061f';\r\n  var YesTranslate = '\u0646\u0639\u0645 ';\r\n  var NoTranslate = '\u0644\u0627';\r\n\r\n\r\n  var rolesLocals = {}\r\n\r\n  \/\/Handle broken avatars\r\n  jQuery('[src*=\"s3.amazonaws\"][src*=\"profilepic\"],[src*=\"signed.classera\"][src*=\"profilepic\"]').on('error', function(e){\r\n    jQuery(this).attr('src', '\/img\/thumb.png');\r\n  });\r\n<\/script>\r\n\r\n    \t\t<script type=\"text\/javascript\" src=\"https:\/\/v14-cdn.classera.com\/js\/bootstrap\/bootstrap-datetimepicker.js?7d4e7508-b177-5fdb-b409-de1f5a901157\" defer=\"defer\"><\/script>\r\n<script type=\"text\/javascript\">\r\n\tjQuery('[src*=\"s3.amazonaws\"][src*=\"profilepic\"]').on('error', function(e){\r\n\t\tjQuery(this).attr('src', '\/img\/thumb.png');\r\n\t});\r\n  \r\n\tjQuery(function(){\r\n\r\n\t\tsetTimeout(function(){jQuery('.nav-tabs').scrollingTabs('refresh');}, 1000);\r\n\r\n\t\tjQuery('input.datetimepicker').datetimepicker({\r\n\t\t\tweekStart: 1,\r\n\t\t\ttodayBtn:  1,\r\n\t\t\tautoclose: 1,\r\n\t\t\ttodayHighlight: 1,\r\n\t\t\tstartView: 2,\r\n\t\t\tforceParse: 0,\r\n\t\t\tshowMeridian: 1,\r\n\t\t\tampm: true,\r\n\t\t\tshowSecond: false,\r\n\t\t\ttimeFormat: 'hh:mm:ss',\r\n\t\t\tdateFormat: 'yy-mm-dd',\r\n\t\t\torientation: \"top left\"\r\n\t\t  }).on('show', function(ev){\r\n\t\t\t$('input.datetimepicker, input.datepicker, input#_m_date_grid, input.timepicker').not(ev.target).datetimepicker('hide');\r\n\t\t  });\r\n\r\n\t\tjQuery('input.datepicker').datetimepicker({\r\n\t\t\tweekStart: 1,\r\n\t\t\ttodayBtn:  1,\r\n\t\t\tautoclose: 1,\r\n\t\t\ttodayHighlight: 1,\r\n\t\t\tstartView: 2,\r\n\t\t\tminView: 2,\r\n\t\t\tforceParse: 0,\r\n\t\t\tformat: 'yyyy-mm-dd',\r\n\t\t  }).on('show', function(ev){\r\n\t\t\t$('input.datetimepicker, input.datepicker, input#_m_date_grid, input.timepicker').not(ev.target).datetimepicker('hide');\r\n\t\t  });\r\n\r\n\t\tjQuery('input#_m_date_grid').datetimepicker({\r\n\t\t\tweekStart: 1,\r\n\t\t\ttodayBtn:  1,\r\n\t\t\tautoclose: 1,\r\n\t\t\ttodayHighlight: 1,\r\n\t\t\tstartView: 2,\r\n\t\t\tminView: 2,\r\n\t\t\tforceParse: 0,\r\n\t\t\tformat: 'yyyy-mm-dd'\r\n\t\t}).on('changeDate', function(ev){jQuery('#_m_date_grid').keyup();}).on('show', function(ev){\r\n\t\t\t$('input.datetimepicker, input.datepicker, input#_m_date_grid, input.timepicker').not(ev.target).datetimepicker('hide');\r\n\t\t  });\r\n\r\n\t\tjQuery('input.timepicker').datetimepicker({\r\n\t\t  weekStart: 1,\r\n\t\t  todayBtn:  1,\r\n\t\t  autoclose: 1,\r\n\t\t  todayHighlight: 1,\r\n\t\t  startView: 1,\r\n\t\t  minView: 0,\r\n\t\t  maxView: 1,\r\n\t\t  forceParse: 0,\r\n\t\t  format: 'hh:ii:ss',\r\n\t\t}).on('show', function(ev){\r\n\t\t\t$('input.datetimepicker, input.datepicker, input#_m_date_grid, input.timepicker').not(ev.target).datetimepicker('hide');\r\n\t\t  });\r\n\t});\r\n<\/script>\r\n\r\n\r\n<script>var showHijri = false;<\/script>\r\n\r\n<div id=\"lala-alert-container\">\r\n\t<div id=\"lala-alert-wrapper\"><\/div>\r\n<\/div>\r\n\r\n\r\n<script type=\"text\/javascript\">\r\nfunction DoCellData(cell, row, col, data) {}\r\nfunction DoBeforeAutotable(table, headers, rows, AutotableSettings) {}\r\n\r\nfunction s2ab(s) {\r\n  if(typeof ArrayBuffer !== 'undefined') {\r\n    var buf = new ArrayBuffer(s.length);\r\n    var view = new Uint8Array(buf);\r\n    for (var i=0; i!=s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;\r\n    return buf;\r\n  } else {\r\n    var buf = new Array(s.length);\r\n    for (var i=0; i!=s.length; ++i) buf[i] = s.charCodeAt(i) & 0xFF;\r\n    return buf;\r\n  }\r\n}\r\n\r\n\r\nfunction export_table_to_excel(table_index) {\r\n\r\n\r\n  var $table_html= jQuery('#excel[data-table-index=\"'+table_index+'\"]').parent().parent().parent().parent().find('table.table').clone();\r\n\r\n  if($table_html==\"registration_approval_table\")\r\n      $table_html.find('tr[style*=\"display: none\"]').remove();\r\n\r\n    if($table_html.attr('id')==\"study_plan\"){\r\n      $table_html.find('td[style*=\"display: none\"]').remove();\r\n      $table_html.find('th[style*=\"display: none\"]').remove();\r\n      $table_html.find('th[class*=\"course_img\"]').remove();\r\n      $table_html.find('td[class*=\"course_img\"]').remove();\r\n    }\r\n    $table_html.find('td[class*=\"trueImg\"]').html('\u0635\u062d\u064a\u062d');\r\n    $table_html.find('td[class*=\"falseImg\"]').html('\u062e\u0637\u0623');\r\n  \/\/ if($table_html.attr('id')==\"students_list\")\r\n  \/\/   {\r\n  \/\/     $table_html.find(\"td:first-child input:checkbox:not(:checked)\").closest('tr').remove();\r\n  \/\/     $table_html.find(\"tr td:first-child\").remove();\r\n  \/\/     $table_html.find(\"th:first-child\").remove();\r\n  \/\/   }\r\n      \r\n  $table_html.find('tr.filters').remove();\r\n  $table_html.find('td.hidden').remove();\r\n  $table_html.find('th.hidden').remove();\r\n  $table_html.find('tr.hiddenFromExport').remove();\r\n  $table_html.find('.hide_excel').remove();\r\n\r\n  var wb = XLSX.utils.table_to_book( $table_html[0], {sheet:\"Sheet 1\", raw: true});\r\n  var wbout = XLSX.write(wb, {bookType:'xlsx', bookSST:true, type: 'binary'});\r\n  var fname = 'table_export.' + 'xlsx';\r\n  try {\r\n    saveAs(new Blob([s2ab(wbout)],{type:\"application\/octet-stream\"}), fname);\r\n  } catch(e) { if(typeof console != 'undefined') console.log(e, wbout); }\r\n  return wbout;\r\n}\r\n\r\n\r\n\r\njQuery(document).ready(function(){ \r\n\/\/alert(jQuery('table.exportable').html());\r\n\r\n jQuery('table.table').not('.ui-jqgrid-btable, .dataTable, .no-export').each(function(i){\r\n  $(this).before('<div class=\"row hidden-print\"><div class=\"col-lg-7 col-md-4 col-xs-12 col-sm-10 col-md-offset-8 col-sm-offset-2 col-lg-offset-5\"><div class=\"export_icons row inner text-center\"><a class=\"btn btn-success btn-sm white\" title=\"\u062a\u0635\u062f\u064a\u0631 \u0625\u0644\u0649 \u0625\u0643\u0633\u0644\" type=\"submit\"  data-table-index=\"excel_'+i+'\" id=\"excel\" onclick=\"export_table_to_excel(\\'excel_'+i+'\\');\"><li class=\"fa fa-file-excel-o\"><\/li>\u062a\u0635\u062f\u064a\u0631 \u0625\u0644\u0649 \u0625\u0643\u0633\u0644<\/a><\/div><\/div><\/div>');\r\n })\r\n\r\n\t\t\/\/ \tjQuery('#excel').click(function(){\r\n\r\n\t\t\/\/ \t\t\/\/alert(jQuery(this).parent().parent().parent().parent().html());\r\n\t\t\/\/ \t\tjQuery(this).parent().parent().parent().parent().find('table.table').tableExport({type:'csv'\r\n  \/\/                         });\r\n\t\t\/\/ });\r\n});\r\n<\/script>\r\n\r\n\t\r\n\r\n\t\r\n\r\n\r\n\r\n\r\n<script type=\"text\/javascript\">\r\n\t  $('.i_agree').on('click', function(e){\r\n    $(\".terms_conditions\").modal('hide');\r\n    $.ajax({\r\n\t\t  method: \"POST\",\r\n\t\t  url: base_url+'users\/accept_terms_conditions',\r\n\t\t  contentType: false,\r\n\t\t  processData: false,\r\n\t\t  data: {accpet:1}\r\n\t\t})\r\n\t  .done(function( msg ) {\r\n\t   $('#evidence_accreditation_Modal').modal('hide');\r\n\t  });\r\n\t});\r\n\t$('[data-target=\"#evidence_accreditation_Modal\"]').on('click', function(e){\r\n\t  window.scroll(0, 0);\r\n\t  $(\"#content_wrapper\").addClass('main_bg');\r\n\t  html2canvas(document.querySelector(\"#content_wrapper\")).then(function(canvas){\r\n\t\t$('.screenshot-preview').attr('src', canvas.toDataURL());\r\n    $(\"#content_wrapper\").removeClass('main_bg');\r\n\t  });\r\n\t});\r\n\r\n\t$('#AccreditationDataAddForm').on('submit', function(e){\r\n\t  e.preventDefault();\r\n\r\n\t  var fileData;\r\n\t  var blob = dataURItoBlob($('.screenshot-preview').attr('src'));\r\n\t  fileData = new FormData();\r\n\t  fileData.append('file', blob, 'screenshot.png');\r\n\t  fileData.append('accreditation_factor_id', $('#AccreditationDataAccreditationFactorId').val());\r\n\t  fileData.append('description', $('#AccreditationDataDescription').val());\r\n\t  fileData.append('url', window.location.href);\r\n\r\n\t  $.ajax({\r\n\t\t  method: \"POST\",\r\n\t\t  url: $('#AccreditationDataAddForm').attr('action'),\r\n\t\t  contentType: false,\r\n\t\t  processData: false,\r\n\t\t  data: fileData\r\n\t\t})\r\n\t  .done(function( msg ) {\r\n\t   $('#evidence_accreditation_Modal').modal('hide');\r\n\t  });\r\n\r\n\t})\r\n\r\n\tfunction dataURItoBlob(dataURI) {\r\n\t\t\/\/ convert base64\/URLEncoded data component to raw binary data held in a string\r\n\t\tvar byteString;\r\n\t\tif (dataURI.split(',')[0].indexOf('base64') >= 0)\r\n\t\t\tbyteString = atob(dataURI.split(',')[1]);\r\n\t\telse\r\n\t\t\tbyteString = unescape(dataURI.split(',')[1]);\r\n\r\n\t\t\/\/ separate out the mime component\r\n\t\tvar mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];\r\n\r\n\t\t\/\/ write the bytes of the string to a typed array\r\n\t\tvar ia = new Uint8Array(byteString.length);\r\n\t\tfor (var i = 0; i < byteString.length; i++) {\r\n\t\t\tia[i] = byteString.charCodeAt(i);\r\n\t\t}\r\n\r\n\t\treturn new Blob([ia], {type:mimeString});\r\n\t}\r\n<\/script>\r\n<!-- ME site tag (gtag.js) - Google Analytics -->\r\n<!-- <script async src=\"https:\/\/www.googletagmanager.com\/gtag\/js?id=UA-160434912-1\"><\/script>\r\n<script>\r\n  window.dataLayer = window.dataLayer || [];\r\n  function gtag(){dataLayer.push(arguments);}\r\n  gtag('js', new Date());\r\n\r\n  gtag('config', 'UA-160434912-1');\r\n<\/script> -->\r\n  \r\n\r\n \r\n\t<!-- ME -->\r\n\t<!-- <script type=\"text\/javascript\">\r\n\t  var _paq = window._paq || [];\r\n\t  \/* tracker methods like \"setCustomDimension\" should be called before \"trackPageView\" *\/\r\n\t  _paq.push(['trackPageView']);\r\n\t  _paq.push(['enableLinkTracking']);\r\n\t  (function() {\r\n\t\tvar u=\"https:\/\/analytics.classera.com\/\";\r\n\t\t_paq.push(['setTrackerUrl', u+'matomo.php']);\r\n\t\t_paq.push(['setSiteId', '1']);\r\n\t\tvar d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];\r\n\t\tg.type='text\/javascript'; g.async=true; g.defer=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);\r\n\t  })();\r\n\t<\/script> -->\r\n\t<!-- End Matomo Code -->\r\n\t\r\n\t<!-- New-Relic code -->\r\n\t\t\t<script type=\"text\/javascript\">\r\n\t\t\twindow.NREUM||(NREUM={});NREUM.init={distributed_tracing:{enabled:true},privacy:{cookies_enabled:true}};\r\n\t\t\twindow.NREUM||(NREUM={}),__nr_require=function(t,e,n){function r(n){if(!e[n]){var o=e[n]={exports:{}};t[n][0].call(o.exports,function(e){var o=t[n][1][e];return r(o||e)},o,o.exports)}return e[n].exports}if(\"function\"==typeof __nr_require)return __nr_require;for(var o=0;o<n.length;o++)r(n[o]);return r}({1:[function(t,e,n){function r(t){try{c.console&&console.log(t)}catch(e){}}var o,i=t(\"ee\"),a=t(27),c={};try{o=localStorage.getItem(\"__nr_flags\").split(\",\"),console&&\"function\"==typeof console.log&&(c.console=!0,o.indexOf(\"dev\")!==-1&&(c.dev=!0),o.indexOf(\"nr_dev\")!==-1&&(c.nrDev=!0))}catch(s){}c.nrDev&&i.on(\"internal-error\",function(t){r(t.stack)}),c.dev&&i.on(\"fn-err\",function(t,e,n){r(n.stack)}),c.dev&&(r(\"NR AGENT IN DEVELOPMENT MODE\"),r(\"flags: \"+a(c,function(t,e){return t}).join(\", \")))},{}],2:[function(t,e,n){function r(t,e,n,r,c){try{l?l-=1:o(c||new UncaughtException(t,e,n),!0)}catch(f){try{i(\"ierr\",[f,s.now(),!0])}catch(d){}}return\"function\"==typeof u&&u.apply(this,a(arguments))}function UncaughtException(t,e,n){this.message=t||\"Uncaught error with no additional information\",this.sourceURL=e,this.line=n}function o(t,e){var n=e?null:s.now();i(\"err\",[t,n])}var i=t(\"handle\"),a=t(28),c=t(\"ee\"),s=t(\"loader\"),f=t(\"gos\"),u=window.onerror,d=!1,p=\"nr@seenError\",l=0;s.features.err=!0,t(1),window.onerror=r;try{throw new Error}catch(h){\"stack\"in h&&(t(13),t(12),\"addEventListener\"in window&&t(6),s.xhrWrappable&&t(14),d=!0)}c.on(\"fn-start\",function(t,e,n){d&&(l+=1)}),c.on(\"fn-err\",function(t,e,n){d&&!n[p]&&(f(n,p,function(){return!0}),this.thrown=!0,o(n))}),c.on(\"fn-end\",function(){d&&!this.thrown&&l>0&&(l-=1)}),c.on(\"internal-error\",function(t){i(\"ierr\",[t,s.now(),!0])})},{}],3:[function(t,e,n){t(\"loader\").features.ins=!0},{}],4:[function(t,e,n){function r(){_++,T=g.hash,this[u]=y.now()}function o(){_--,g.hash!==T&&i(0,!0);var t=y.now();this[h]=~~this[h]+t-this[u],this[d]=t}function i(t,e){E.emit(\"newURL\",[\"\"+g,e])}function a(t,e){t.on(e,function(){this[e]=y.now()})}var c=\"-start\",s=\"-end\",f=\"-body\",u=\"fn\"+c,d=\"fn\"+s,p=\"cb\"+c,l=\"cb\"+s,h=\"jsTime\",m=\"fetch\",v=\"addEventListener\",w=window,g=w.location,y=t(\"loader\");if(w[v]&&y.xhrWrappable){var x=t(10),b=t(11),E=t(8),R=t(6),O=t(13),N=t(7),M=t(14),P=t(9),S=t(\"ee\"),C=S.get(\"tracer\");t(16),y.features.spa=!0;var T,_=0;S.on(u,r),S.on(p,r),S.on(d,o),S.on(l,o),S.buffer([u,d,\"xhr-done\",\"xhr-resolved\"]),R.buffer([u]),O.buffer([\"setTimeout\"+s,\"clearTimeout\"+c,u]),M.buffer([u,\"new-xhr\",\"send-xhr\"+c]),N.buffer([m+c,m+\"-done\",m+f+c,m+f+s]),E.buffer([\"newURL\"]),x.buffer([u]),b.buffer([\"propagate\",p,l,\"executor-err\",\"resolve\"+c]),C.buffer([u,\"no-\"+u]),P.buffer([\"new-jsonp\",\"cb-start\",\"jsonp-error\",\"jsonp-end\"]),a(M,\"send-xhr\"+c),a(S,\"xhr-resolved\"),a(S,\"xhr-done\"),a(N,m+c),a(N,m+\"-done\"),a(P,\"new-jsonp\"),a(P,\"jsonp-end\"),a(P,\"cb-start\"),E.on(\"pushState-end\",i),E.on(\"replaceState-end\",i),w[v](\"hashchange\",i,!0),w[v](\"load\",i,!0),w[v](\"popstate\",function(){i(0,_>1)},!0)}},{}],5:[function(t,e,n){function r(t){}if(window.performance&&window.performance.timing&&window.performance.getEntriesByType){var o=t(\"ee\"),i=t(\"handle\"),a=t(13),c=t(12),s=\"learResourceTimings\",f=\"addEventListener\",u=\"resourcetimingbufferfull\",d=\"bstResource\",p=\"resource\",l=\"-start\",h=\"-end\",m=\"fn\"+l,v=\"fn\"+h,w=\"bstTimer\",g=\"pushState\",y=t(\"loader\");y.features.stn=!0,t(8),\"addEventListener\"in window&&t(6);var x=NREUM.o.EV;o.on(m,function(t,e){var n=t[0];n instanceof x&&(this.bstStart=y.now())}),o.on(v,function(t,e){var n=t[0];n instanceof x&&i(\"bst\",[n,e,this.bstStart,y.now()])}),a.on(m,function(t,e,n){this.bstStart=y.now(),this.bstType=n}),a.on(v,function(t,e){i(w,[e,this.bstStart,y.now(),this.bstType])}),c.on(m,function(){this.bstStart=y.now()}),c.on(v,function(t,e){i(w,[e,this.bstStart,y.now(),\"requestAnimationFrame\"])}),o.on(g+l,function(t){this.time=y.now(),this.startPath=location.pathname+location.hash}),o.on(g+h,function(t){i(\"bstHist\",[location.pathname+location.hash,this.startPath,this.time])}),f in window.performance&&(window.performance[\"c\"+s]?window.performance[f](u,function(t){i(d,[window.performance.getEntriesByType(p)]),window.performance[\"c\"+s]()},!1):window.performance[f](\"webkit\"+u,function(t){i(d,[window.performance.getEntriesByType(p)]),window.performance[\"webkitC\"+s]()},!1)),document[f](\"scroll\",r,{passive:!0}),document[f](\"keypress\",r,!1),document[f](\"click\",r,!1)}},{}],6:[function(t,e,n){function r(t){for(var e=t;e&&!e.hasOwnProperty(u);)e=Object.getPrototypeOf(e);e&&o(e)}function o(t){c.inPlace(t,[u,d],\"-\",i)}function i(t,e){return t[1]}var a=t(\"ee\").get(\"events\"),c=t(\"wrap-function\")(a,!0),s=t(\"gos\"),f=XMLHttpRequest,u=\"addEventListener\",d=\"removeEventListener\";e.exports=a,\"getPrototypeOf\"in Object?(r(document),r(window),r(f.prototype)):f.prototype.hasOwnProperty(u)&&(o(window),o(f.prototype)),a.on(u+\"-start\",function(t,e){var n=t[1],r=s(n,\"nr@wrapped\",function(){function t(){if(\"function\"==typeof n.handleEvent)return n.handleEvent.apply(n,arguments)}var e={object:t,\"function\":n}[typeof n];return e?c(e,\"fn-\",null,e.name||\"anonymous\"):n});this.wrapped=t[1]=r}),a.on(d+\"-start\",function(t){t[1]=this.wrapped||t[1]})},{}],7:[function(t,e,n){function r(t,e,n){var r=t[e];\"function\"==typeof r&&(t[e]=function(){var t=i(arguments),e={};o.emit(n+\"before-start\",[t],e);var a;e[m]&&e[m].dt&&(a=e[m].dt);var c=r.apply(this,t);return o.emit(n+\"start\",[t,a],c),c.then(function(t){return o.emit(n+\"end\",[null,t],c),t},function(t){throw o.emit(n+\"end\",[t],c),t})})}var o=t(\"ee\").get(\"fetch\"),i=t(28),a=t(27);e.exports=o;var c=window,s=\"fetch-\",f=s+\"body-\",u=[\"arrayBuffer\",\"blob\",\"json\",\"text\",\"formData\"],d=c.Request,p=c.Response,l=c.fetch,h=\"prototype\",m=\"nr@context\";d&&p&&l&&(a(u,function(t,e){r(d[h],e,f),r(p[h],e,f)}),r(c,\"fetch\",s),o.on(s+\"end\",function(t,e){var n=this;if(e){var r=e.headers.get(\"content-length\");null!==r&&(n.rxSize=r),o.emit(s+\"done\",[null,e],n)}else o.emit(s+\"done\",[t],n)}))},{}],8:[function(t,e,n){var r=t(\"ee\").get(\"history\"),o=t(\"wrap-function\")(r);e.exports=r;var i=window.history&&window.history.constructor&&window.history.constructor.prototype,a=window.history;i&&i.pushState&&i.replaceState&&(a=i),o.inPlace(a,[\"pushState\",\"replaceState\"],\"-\")},{}],9:[function(t,e,n){function r(t){function e(){s.emit(\"jsonp-end\",[],p),t.removeEventListener(\"load\",e,!1),t.removeEventListener(\"error\",n,!1)}function n(){s.emit(\"jsonp-error\",[],p),s.emit(\"jsonp-end\",[],p),t.removeEventListener(\"load\",e,!1),t.removeEventListener(\"error\",n,!1)}var r=t&&\"string\"==typeof t.nodeName&&\"script\"===t.nodeName.toLowerCase();if(r){var o=\"function\"==typeof t.addEventListener;if(o){var a=i(t.src);if(a){var u=c(a),d=\"function\"==typeof u.parent[u.key];if(d){var p={};f.inPlace(u.parent,[u.key],\"cb-\",p),t.addEventListener(\"load\",e,!1),t.addEventListener(\"error\",n,!1),s.emit(\"new-jsonp\",[t.src],p)}}}}}function o(){return\"addEventListener\"in window}function i(t){var e=t.match(u);return e?e[1]:null}function a(t,e){var n=t.match(p),r=n[1],o=n[3];return o?a(o,e[r]):e[r]}function c(t){var e=t.match(d);return e&&e.length>=3?{key:e[2],parent:a(e[1],window)}:{key:t,parent:window}}var s=t(\"ee\").get(\"jsonp\"),f=t(\"wrap-function\")(s);if(e.exports=s,o()){var u=\/[?&](?:callback|cb)=([^&#]+)\/,d=\/(.*)\\.([^.]+)\/,p=\/^(\\w+)(\\.|$)(.*)$\/,l=[\"appendChild\",\"insertBefore\",\"replaceChild\"];Node&&Node.prototype&&Node.prototype.appendChild?f.inPlace(Node.prototype,l,\"dom-\"):(f.inPlace(HTMLElement.prototype,l,\"dom-\"),f.inPlace(HTMLHeadElement.prototype,l,\"dom-\"),f.inPlace(HTMLBodyElement.prototype,l,\"dom-\")),s.on(\"dom-start\",function(t){r(t[0])})}},{}],10:[function(t,e,n){var r=t(\"ee\").get(\"mutation\"),o=t(\"wrap-function\")(r),i=NREUM.o.MO;e.exports=r,i&&(window.MutationObserver=function(t){return this instanceof i?new i(o(t,\"fn-\")):i.apply(this,arguments)},MutationObserver.prototype=i.prototype)},{}],11:[function(t,e,n){function r(t){var e=a.context(),n=c(t,\"executor-\",e),r=new f(n);return a.context(r).getCtx=function(){return e},a.emit(\"new-promise\",[r,e],e),r}function o(t,e){return e}var i=t(\"wrap-function\"),a=t(\"ee\").get(\"promise\"),c=i(a),s=t(27),f=NREUM.o.PR;e.exports=a,f&&(window.Promise=r,[\"all\",\"race\"].forEach(function(t){var e=f[t];f[t]=function(n){function r(t){return function(){a.emit(\"propagate\",[null,!o],i),o=o||!t}}var o=!1;s(n,function(e,n){Promise.resolve(n).then(r(\"all\"===t),r(!1))});var i=e.apply(f,arguments),c=f.resolve(i);return c}}),[\"resolve\",\"reject\"].forEach(function(t){var e=f[t];f[t]=function(t){var n=e.apply(f,arguments);return t!==n&&a.emit(\"propagate\",[t,!0],n),n}}),f.prototype[\"catch\"]=function(t){return this.then(null,t)},f.prototype=Object.create(f.prototype,{constructor:{value:r}}),s(Object.getOwnPropertyNames(f),function(t,e){try{r[e]=f[e]}catch(n){}}),a.on(\"executor-start\",function(t){t[0]=c(t[0],\"resolve-\",this),t[1]=c(t[1],\"resolve-\",this)}),a.on(\"executor-err\",function(t,e,n){t[1](n)}),c.inPlace(f.prototype,[\"then\"],\"then-\",o),a.on(\"then-start\",function(t,e){this.promise=e,t[0]=c(t[0],\"cb-\",this),t[1]=c(t[1],\"cb-\",this)}),a.on(\"then-end\",function(t,e,n){this.nextPromise=n;var r=this.promise;a.emit(\"propagate\",[r,!0],n)}),a.on(\"cb-end\",function(t,e,n){a.emit(\"propagate\",[n,!0],this.nextPromise)}),a.on(\"propagate\",function(t,e,n){this.getCtx&&!e||(this.getCtx=function(){if(t instanceof Promise)var e=a.context(t);return e&&e.getCtx?e.getCtx():this})}),r.toString=function(){return\"\"+f})},{}],12:[function(t,e,n){var r=t(\"ee\").get(\"raf\"),o=t(\"wrap-function\")(r),i=\"equestAnimationFrame\";e.exports=r,o.inPlace(window,[\"r\"+i,\"mozR\"+i,\"webkitR\"+i,\"msR\"+i],\"raf-\"),r.on(\"raf-start\",function(t){t[0]=o(t[0],\"fn-\")})},{}],13:[function(t,e,n){function r(t,e,n){t[0]=a(t[0],\"fn-\",null,n)}function o(t,e,n){this.method=n,this.timerDuration=isNaN(t[1])?0:+t[1],t[0]=a(t[0],\"fn-\",this,n)}var i=t(\"ee\").get(\"timer\"),a=t(\"wrap-function\")(i),c=\"setTimeout\",s=\"setInterval\",f=\"clearTimeout\",u=\"-start\",d=\"-\";e.exports=i,a.inPlace(window,[c,\"setImmediate\"],c+d),a.inPlace(window,[s],s+d),a.inPlace(window,[f,\"clearImmediate\"],f+d),i.on(s+u,r),i.on(c+u,o)},{}],14:[function(t,e,n){function r(t,e){d.inPlace(e,[\"onreadystatechange\"],\"fn-\",c)}function o(){var t=this,e=u.context(t);t.readyState>3&&!e.resolved&&(e.resolved=!0,u.emit(\"xhr-resolved\",[],t)),d.inPlace(t,g,\"fn-\",c)}function i(t){y.push(t),h&&(b?b.then(a):v?v(a):(E=-E,R.data=E))}function a(){for(var t=0;t<y.length;t++)r([],y[t]);y.length&&(y=[])}function c(t,e){return e}function s(t,e){for(var n in t)e[n]=t[n];return e}t(6);var f=t(\"ee\"),u=f.get(\"xhr\"),d=t(\"wrap-function\")(u),p=NREUM.o,l=p.XHR,h=p.MO,m=p.PR,v=p.SI,w=\"readystatechange\",g=[\"onload\",\"onerror\",\"onabort\",\"onloadstart\",\"onloadend\",\"onprogress\",\"ontimeout\"],y=[];e.exports=u;var x=window.XMLHttpRequest=function(t){var e=new l(t);try{u.emit(\"new-xhr\",[e],e),e.addEventListener(w,o,!1)}catch(n){try{u.emit(\"internal-error\",[n])}catch(r){}}return e};if(s(l,x),x.prototype=l.prototype,d.inPlace(x.prototype,[\"open\",\"send\"],\"-xhr-\",c),u.on(\"send-xhr-start\",function(t,e){r(t,e),i(e)}),u.on(\"open-xhr-start\",r),h){var b=m&&m.resolve();if(!v&&!m){var E=1,R=document.createTextNode(E);new h(a).observe(R,{characterData:!0})}}else f.on(\"fn-end\",function(t){t[0]&&t[0].type===w||a()})},{}],15:[function(t,e,n){function r(t){if(!c(t))return null;var e=window.NREUM;if(!e.loader_config)return null;var n=(e.loader_config.accountID||\"\").toString()||null,r=(e.loader_config.agentID||\"\").toString()||null,f=(e.loader_config.trustKey||\"\").toString()||null;if(!n||!r)return null;var h=l.generateSpanId(),m=l.generateTraceId(),v=Date.now(),w={spanId:h,traceId:m,timestamp:v};return(t.sameOrigin||s(t)&&p())&&(w.traceContextParentHeader=o(h,m),w.traceContextStateHeader=i(h,v,n,r,f)),(t.sameOrigin&&!u()||!t.sameOrigin&&s(t)&&d())&&(w.newrelicHeader=a(h,m,v,n,r,f)),w}function o(t,e){return\"00-\"+e+\"-\"+t+\"-01\"}function i(t,e,n,r,o){var i=0,a=\"\",c=1,s=\"\",f=\"\";return o+\"@nr=\"+i+\"-\"+c+\"-\"+n+\"-\"+r+\"-\"+t+\"-\"+a+\"-\"+s+\"-\"+f+\"-\"+e}function a(t,e,n,r,o,i){var a=\"btoa\"in window&&\"function\"==typeof window.btoa;if(!a)return null;var c={v:[0,1],d:{ty:\"Browser\",ac:r,ap:o,id:t,tr:e,ti:n}};return i&&r!==i&&(c.d.tk=i),btoa(JSON.stringify(c))}function c(t){return f()&&s(t)}function s(t){var e=!1,n={};if(\"init\"in NREUM&&\"distributed_tracing\"in NREUM.init&&(n=NREUM.init.distributed_tracing),t.sameOrigin)e=!0;else if(n.allowed_origins instanceof Array)for(var r=0;r<n.allowed_origins.length;r++){var o=h(n.allowed_origins[r]);if(t.hostname===o.hostname&&t.protocol===o.protocol&&t.port===o.port){e=!0;break}}return e}function f(){return\"init\"in NREUM&&\"distributed_tracing\"in NREUM.init&&!!NREUM.init.distributed_tracing.enabled}function u(){return\"init\"in NREUM&&\"distributed_tracing\"in NREUM.init&&!!NREUM.init.distributed_tracing.exclude_newrelic_header}function d(){return\"init\"in NREUM&&\"distributed_tracing\"in NREUM.init&&NREUM.init.distributed_tracing.cors_use_newrelic_header!==!1}function p(){return\"init\"in NREUM&&\"distributed_tracing\"in NREUM.init&&!!NREUM.init.distributed_tracing.cors_use_tracecontext_headers}var l=t(24),h=t(17);e.exports={generateTracePayload:r,shouldGenerateTrace:c}},{}],16:[function(t,e,n){function r(t){var e=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(var r=0;r<p;r++)t.removeEventListener(d[r],this.listener,!1);e.aborted||(n.duration=a.now()-this.startTime,this.loadCaptureCalled||4!==t.readyState?null==e.status&&(e.status=0):i(this,t),n.cbTime=this.cbTime,u.emit(\"xhr-done\",[t],t),c(\"xhr\",[e,n,this.startTime]))}}function o(t,e){var n=s(e),r=t.params;r.host=n.hostname+\":\"+n.port,r.pathname=n.pathname,t.parsedOrigin=s(e),t.sameOrigin=t.parsedOrigin.sameOrigin}function i(t,e){t.params.status=e.status;var n=v(e,t.lastSize);if(n&&(t.metrics.rxSize=n),t.sameOrigin){var r=e.getResponseHeader(\"X-NewRelic-App-Data\");r&&(t.params.cat=r.split(\", \").pop())}t.loadCaptureCalled=!0}var a=t(\"loader\");if(a.xhrWrappable){var c=t(\"handle\"),s=t(17),f=t(15).generateTracePayload,u=t(\"ee\"),d=[\"load\",\"error\",\"abort\",\"timeout\"],p=d.length,l=t(\"id\"),h=t(21),m=t(20),v=t(18),w=window.XMLHttpRequest;a.features.xhr=!0,t(14),t(7),u.on(\"new-xhr\",function(t){var e=this;e.totalCbs=0,e.called=0,e.cbTime=0,e.end=r,e.ended=!1,e.xhrGuids={},e.lastSize=null,e.loadCaptureCalled=!1,t.addEventListener(\"load\",function(n){i(e,t)},!1),h&&(h>34||h<10)||window.opera||t.addEventListener(\"progress\",function(t){e.lastSize=t.loaded},!1)}),u.on(\"open-xhr-start\",function(t){this.params={method:t[0]},o(this,t[1]),this.metrics={}}),u.on(\"open-xhr-end\",function(t,e){\"loader_config\"in NREUM&&\"xpid\"in NREUM.loader_config&&this.sameOrigin&&e.setRequestHeader(\"X-NewRelic-ID\",NREUM.loader_config.xpid);var n=f(this.parsedOrigin);if(n){var r=!1;n.newrelicHeader&&(e.setRequestHeader(\"newrelic\",n.newrelicHeader),r=!0),n.traceContextParentHeader&&(e.setRequestHeader(\"traceparent\",n.traceContextParentHeader),n.traceContextStateHeader&&e.setRequestHeader(\"tracestate\",n.traceContextStateHeader),r=!0),r&&(this.dt=n)}}),u.on(\"send-xhr-start\",function(t,e){var n=this.metrics,r=t[0],o=this;if(n&&r){var i=m(r);i&&(n.txSize=i)}this.startTime=a.now(),this.listener=function(t){try{\"abort\"!==t.type||o.loadCaptureCalled||(o.params.aborted=!0),(\"load\"!==t.type||o.called===o.totalCbs&&(o.onloadCalled||\"function\"!=typeof e.onload))&&o.end(e)}catch(n){try{u.emit(\"internal-error\",[n])}catch(r){}}};for(var c=0;c<p;c++)e.addEventListener(d[c],this.listener,!1)}),u.on(\"xhr-cb-time\",function(t,e,n){this.cbTime+=t,e?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&\"function\"==typeof n.onload||this.end(n)}),u.on(\"xhr-load-added\",function(t,e){var n=\"\"+l(t)+!!e;this.xhrGuids&&!this.xhrGuids[n]&&(this.xhrGuids[n]=!0,this.totalCbs+=1)}),u.on(\"xhr-load-removed\",function(t,e){var n=\"\"+l(t)+!!e;this.xhrGuids&&this.xhrGuids[n]&&(delete this.xhrGuids[n],this.totalCbs-=1)}),u.on(\"addEventListener-end\",function(t,e){e instanceof w&&\"load\"===t[0]&&u.emit(\"xhr-load-added\",[t[1],t[2]],e)}),u.on(\"removeEventListener-end\",function(t,e){e instanceof w&&\"load\"===t[0]&&u.emit(\"xhr-load-removed\",[t[1],t[2]],e)}),u.on(\"fn-start\",function(t,e,n){e instanceof w&&(\"onload\"===n&&(this.onload=!0),(\"load\"===(t[0]&&t[0].type)||this.onload)&&(this.xhrCbStart=a.now()))}),u.on(\"fn-end\",function(t,e){this.xhrCbStart&&u.emit(\"xhr-cb-time\",[a.now()-this.xhrCbStart,this.onload,e],e)}),u.on(\"fetch-before-start\",function(t){function e(t,e){var n=!1;return e.newrelicHeader&&(t.set(\"newrelic\",e.newrelicHeader),n=!0),e.traceContextParentHeader&&(t.set(\"traceparent\",e.traceContextParentHeader),e.traceContextStateHeader&&t.set(\"tracestate\",e.traceContextStateHeader),n=!0),n}var n,r=t[1]||{};\"string\"==typeof t[0]?n=t[0]:t[0]&&t[0].url&&(n=t[0].url),n&&(this.parsedOrigin=s(n),this.sameOrigin=this.parsedOrigin.sameOrigin);var o=f(this.parsedOrigin);if(o&&(o.newrelicHeader||o.traceContextParentHeader))if(\"string\"==typeof t[0]){var i={};for(var a in r)i[a]=r[a];i.headers=new Headers(r.headers||{}),e(i.headers,o)&&(this.dt=o),t.length>1?t[1]=i:t.push(i)}else t[0]&&t[0].headers&&e(t[0].headers,o)&&(this.dt=o)})}},{}],17:[function(t,e,n){var r={};e.exports=function(t){if(t in r)return r[t];var e=document.createElement(\"a\"),n=window.location,o={};e.href=t,o.port=e.port;var i=e.href.split(\":\/\/\");!o.port&&i[1]&&(o.port=i[1].split(\"\/\")[0].split(\"@\").pop().split(\":\")[1]),o.port&&\"0\"!==o.port||(o.port=\"https\"===i[0]?\"443\":\"80\"),o.hostname=e.hostname||n.hostname,o.pathname=e.pathname,o.protocol=i[0],\"\/\"!==o.pathname.charAt(0)&&(o.pathname=\"\/\"+o.pathname);var a=!e.protocol||\":\"===e.protocol||e.protocol===n.protocol,c=e.hostname===document.domain&&e.port===n.port;return o.sameOrigin=a&&(!e.hostname||c),\"\/\"===o.pathname&&(r[t]=o),o}},{}],18:[function(t,e,n){function r(t,e){var n=t.responseType;return\"json\"===n&&null!==e?e:\"arraybuffer\"===n||\"blob\"===n||\"json\"===n?o(t.response):\"text\"===n||\"\"===n||void 0===n?o(t.responseText):void 0}var o=t(20);e.exports=r},{}],19:[function(t,e,n){function r(){}function o(t,e,n){return function(){return i(t,[f.now()].concat(c(arguments)),e?null:this,n),e?void 0:this}}var i=t(\"handle\"),a=t(27),c=t(28),s=t(\"ee\").get(\"tracer\"),f=t(\"loader\"),u=NREUM;\"undefined\"==typeof window.newrelic&&(newrelic=u);var d=[\"setPageViewName\",\"setCustomAttribute\",\"setErrorHandler\",\"finished\",\"addToTrace\",\"inlineHit\",\"addRelease\"],p=\"api-\",l=p+\"ixn-\";a(d,function(t,e){u[e]=o(p+e,!0,\"api\")}),u.addPageAction=o(p+\"addPageAction\",!0),u.setCurrentRouteName=o(p+\"routeName\",!0),e.exports=newrelic,u.interaction=function(){return(new r).get()};var h=r.prototype={createTracer:function(t,e){var n={},r=this,o=\"function\"==typeof e;return i(l+\"tracer\",[f.now(),t,n],r),function(){if(s.emit((o?\"\":\"no-\")+\"fn-start\",[f.now(),r,o],n),o)try{return e.apply(this,arguments)}catch(t){throw s.emit(\"fn-err\",[arguments,this,t],n),t}finally{s.emit(\"fn-end\",[f.now()],n)}}}};a(\"actionText,setName,setAttribute,save,ignore,onEnd,getContext,end,get\".split(\",\"),function(t,e){h[e]=o(l+e)}),newrelic.noticeError=function(t,e){\"string\"==typeof t&&(t=new Error(t)),i(\"err\",[t,f.now(),!1,e])}},{}],20:[function(t,e,n){e.exports=function(t){if(\"string\"==typeof t&&t.length)return t.length;if(\"object\"==typeof t){if(\"undefined\"!=typeof ArrayBuffer&&t instanceof ArrayBuffer&&t.byteLength)return t.byteLength;if(\"undefined\"!=typeof Blob&&t instanceof Blob&&t.size)return t.size;if(!(\"undefined\"!=typeof FormData&&t instanceof FormData))try{return JSON.stringify(t).length}catch(e){return}}}},{}],21:[function(t,e,n){var r=0,o=navigator.userAgent.match(\/Firefox[\\\/\\s](\\d+\\.\\d+)\/);o&&(r=+o[1]),e.exports=r},{}],22:[function(t,e,n){function r(){return c.exists&&performance.now?Math.round(performance.now()):(i=Math.max((new Date).getTime(),i))-a}function o(){return i}var i=(new Date).getTime(),a=i,c=t(29);e.exports=r,e.exports.offset=a,e.exports.getLastTimestamp=o},{}],23:[function(t,e,n){function r(t,e){var n=t.getEntries();n.forEach(function(t){\"first-paint\"===t.name?d(\"timing\",[\"fp\",Math.floor(t.startTime)]):\"first-contentful-paint\"===t.name&&d(\"timing\",[\"fcp\",Math.floor(t.startTime)])})}function o(t,e){var n=t.getEntries();n.length>0&&d(\"lcp\",[n[n.length-1]])}function i(t){t.getEntries().forEach(function(t){t.hadRecentInput||d(\"cls\",[t])})}function a(t){if(t instanceof h&&!v){var e=Math.round(t.timeStamp),n={type:t.type};e<=p.now()?n.fid=p.now()-e:e>p.offset&&e<=Date.now()?(e-=p.offset,n.fid=p.now()-e):e=p.now(),v=!0,d(\"timing\",[\"fi\",e,n])}}function c(t){d(\"pageHide\",[p.now(),t])}if(!(\"init\"in NREUM&&\"page_view_timing\"in NREUM.init&&\"enabled\"in NREUM.init.page_view_timing&&NREUM.init.page_view_timing.enabled===!1)){var s,f,u,d=t(\"handle\"),p=t(\"loader\"),l=t(26),h=NREUM.o.EV;if(\"PerformanceObserver\"in window&&\"function\"==typeof window.PerformanceObserver){s=new PerformanceObserver(r);try{s.observe({entryTypes:[\"paint\"]})}catch(m){}f=new PerformanceObserver(o);try{f.observe({entryTypes:[\"largest-contentful-paint\"]})}catch(m){}u=new PerformanceObserver(i);try{u.observe({type:\"layout-shift\",buffered:!0})}catch(m){}}if(\"addEventListener\"in document){var v=!1,w=[\"click\",\"keydown\",\"mousedown\",\"pointerdown\",\"touchstart\"];w.forEach(function(t){document.addEventListener(t,a,!1)})}l(c)}},{}],24:[function(t,e,n){function r(){function t(){return e?15&e[n++]:16*Math.random()|0}var e=null,n=0,r=window.crypto||window.msCrypto;r&&r.getRandomValues&&(e=r.getRandomValues(new Uint8Array(31)));for(var o,i=\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\",a=\"\",c=0;c<i.length;c++)o=i[c],\"x\"===o?a+=t().toString(16):\"y\"===o?(o=3&t()|8,a+=o.toString(16)):a+=o;return a}function o(){return a(16)}function i(){return a(32)}function a(t){function e(){return n?15&n[r++]:16*Math.random()|0}var n=null,r=0,o=window.crypto||window.msCrypto;o&&o.getRandomValues&&Uint8Array&&(n=o.getRandomValues(new Uint8Array(31)));for(var i=[],a=0;a<t;a++)i.push(e().toString(16));return i.join(\"\")}e.exports={generateUuid:r,generateSpanId:o,generateTraceId:i}},{}],25:[function(t,e,n){function r(t,e){if(!o)return!1;if(t!==o)return!1;if(!e)return!0;if(!i)return!1;for(var n=i.split(\".\"),r=e.split(\".\"),a=0;a<r.length;a++)if(r[a]!==n[a])return!1;return!0}var o=null,i=null,a=\/Version\\\/(\\S+)\\s+Safari\/;if(navigator.userAgent){var c=navigator.userAgent,s=c.match(a);s&&c.indexOf(\"Chrome\")===-1&&c.indexOf(\"Chromium\")===-1&&(o=\"Safari\",i=s[1])}e.exports={agent:o,version:i,match:r}},{}],26:[function(t,e,n){function r(t){function e(){t(a&&document[a]?document[a]:document[o]?\"hidden\":\"visible\")}\"addEventListener\"in document&&i&&document.addEventListener(i,e,!1)}e.exports=r;var o,i,a;\"undefined\"!=typeof document.hidden?(o=\"hidden\",i=\"visibilitychange\",a=\"visibilityState\"):\"undefined\"!=typeof document.msHidden?(o=\"msHidden\",i=\"msvisibilitychange\"):\"undefined\"!=typeof document.webkitHidden&&(o=\"webkitHidden\",i=\"webkitvisibilitychange\",a=\"webkitVisibilityState\")},{}],27:[function(t,e,n){function r(t,e){var n=[],r=\"\",i=0;for(r in t)o.call(t,r)&&(n[i]=e(r,t[r]),i+=1);return n}var o=Object.prototype.hasOwnProperty;e.exports=r},{}],28:[function(t,e,n){function r(t,e,n){e||(e=0),\"undefined\"==typeof n&&(n=t?t.length:0);for(var r=-1,o=n-e||0,i=Array(o<0?0:o);++r<o;)i[r]=t[e+r];return i}e.exports=r},{}],29:[function(t,e,n){e.exports={exists:\"undefined\"!=typeof window.performance&&window.performance.timing&&\"undefined\"!=typeof window.performance.timing.navigationStart}},{}],ee:[function(t,e,n){function r(){}function o(t){function e(t){return t&&t instanceof r?t:t?s(t,c,i):i()}function n(n,r,o,i){if(!p.aborted||i){t&&t(n,r,o);for(var a=e(o),c=m(n),s=c.length,f=0;f<s;f++)c[f].apply(a,r);var d=u[y[n]];return d&&d.push([x,n,r,a]),a}}function l(t,e){g[t]=m(t).concat(e)}function h(t,e){var n=g[t];if(n)for(var r=0;r<n.length;r++)n[r]===e&&n.splice(r,1)}function m(t){return g[t]||[]}function v(t){return d[t]=d[t]||o(n)}function w(t,e){f(t,function(t,n){e=e||\"feature\",y[n]=e,e in u||(u[e]=[])})}var g={},y={},x={on:l,addEventListener:l,removeEventListener:h,emit:n,get:v,listeners:m,context:e,buffer:w,abort:a,aborted:!1};return x}function i(){return new r}function a(){(u.api||u.feature)&&(p.aborted=!0,u=p.backlog={})}var c=\"nr@context\",s=t(\"gos\"),f=t(27),u={},d={},p=e.exports=o();p.backlog=u},{}],gos:[function(t,e,n){function r(t,e,n){if(o.call(t,e))return t[e];var r=n();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!1}),r}catch(i){}return t[e]=r,r}var o=Object.prototype.hasOwnProperty;e.exports=r},{}],handle:[function(t,e,n){function r(t,e,n,r){o.buffer([t],r),o.emit(t,e,n)}var o=t(\"ee\").get(\"handle\");e.exports=r,r.ee=o},{}],id:[function(t,e,n){function r(t){var e=typeof t;return!t||\"object\"!==e&&\"function\"!==e?-1:t===window?0:a(t,i,function(){return o++})}var o=1,i=\"nr@id\",a=t(\"gos\");e.exports=r},{}],loader:[function(t,e,n){function r(){if(!b++){var t=x.info=NREUM.info,e=p.getElementsByTagName(\"script\")[0];if(setTimeout(f.abort,3e4),!(t&&t.licenseKey&&t.applicationID&&e))return f.abort();s(g,function(e,n){t[e]||(t[e]=n)});var n=a();c(\"mark\",[\"onload\",n+x.offset],null,\"api\"),c(\"timing\",[\"load\",n]);var r=p.createElement(\"script\");r.src=\"https:\/\/\"+t.agent,e.parentNode.insertBefore(r,e)}}function o(){\"complete\"===p.readyState&&i()}function i(){c(\"mark\",[\"domContent\",a()+x.offset],null,\"api\")}var a=t(22),c=t(\"handle\"),s=t(27),f=t(\"ee\"),u=t(25),d=window,p=d.document,l=\"addEventListener\",h=\"attachEvent\",m=d.XMLHttpRequest,v=m&&m.prototype;NREUM.o={ST:setTimeout,SI:d.setImmediate,CT:clearTimeout,XHR:m,REQ:d.Request,EV:d.Event,PR:d.Promise,MO:d.MutationObserver};var w=\"\"+location,g={beacon:\"bam.nr-data.net\",errorBeacon:\"bam.nr-data.net\",agent:\"js-agent.newrelic.com\/nr-spa-1184.min.js\"},y=m&&v&&v[l]&&!\/CriOS\/.test(navigator.userAgent),x=e.exports={offset:a.getLastTimestamp(),now:a,origin:w,features:{},xhrWrappable:y,userAgent:u};t(19),t(23),p[l]?(p[l](\"DOMContentLoaded\",i,!1),d[l](\"load\",r,!1)):(p[h](\"onreadystatechange\",o),d[h](\"onload\",r)),c(\"mark\",[\"firstbyte\",a.getLastTimestamp()],null,\"api\");var b=0},{}],\"wrap-function\":[function(t,e,n){function r(t){return!(t&&t instanceof Function&&t.apply&&!t[a])}var o=t(\"ee\"),i=t(28),a=\"nr@original\",c=Object.prototype.hasOwnProperty,s=!1;e.exports=function(t,e){function n(t,e,n,o){function nrWrapper(){var r,a,c,s;try{a=this,r=i(arguments),c=\"function\"==typeof n?n(r,a):n||{}}catch(f){p([f,\"\",[r,a,o],c])}u(e+\"start\",[r,a,o],c);try{return s=t.apply(a,r)}catch(d){throw u(e+\"err\",[r,a,d],c),d}finally{u(e+\"end\",[r,a,s],c)}}return r(t)?t:(e||(e=\"\"),nrWrapper[a]=t,d(t,nrWrapper),nrWrapper)}function f(t,e,o,i){o||(o=\"\");var a,c,s,f=\"-\"===o.charAt(0);for(s=0;s<e.length;s++)c=e[s],a=t[c],r(a)||(t[c]=n(a,f?c+o:o,i,c))}function u(n,r,o){if(!s||e){var i=s;s=!0;try{t.emit(n,r,o,e)}catch(a){p([a,n,r,o])}s=i}}function d(t,e){if(Object.defineProperty&&Object.keys)try{var n=Object.keys(t);return n.forEach(function(n){Object.defineProperty(e,n,{get:function(){return t[n]},set:function(e){return t[n]=e,e}})}),e}catch(r){p([r])}for(var o in t)c.call(t,o)&&(e[o]=t[o]);return e}function p(e){try{t.emit(\"internal-error\",e)}catch(n){}}return t||(t=o),n.inPlace=f,n.flag=a,n}},{}]},{},[\"loader\",2,16,5,3,4]);\r\n\t\t\tNREUM.loader_config={accountID:\"2936276\",trustKey:\"2936276\",agentID:\"770763740\",licenseKey:\"NRJS-0f449824576a6bb0745\",applicationID:\"767866219\"};\r\n\t\t\tNREUM.info={beacon:\"bam.nr-data.net\",errorBeacon:\"bam.nr-data.net\",licenseKey:\"NRJS-0f449824576a6bb0745\",applicationID:\"767866219\",sa:1};\r\n\t\t<\/script>\r\n\t\t<!-- End New-Relic code -->\r\n\t\r\n<!-- PopUp announcment  -->\r\n  \r\n<!-- PopUp announcment -->\r\n\r\n<!-- activation_program_announcements -->\r\n\r\n \r\n   \r\n\r\n<!-- end competition popub -->\r\n\r\n<!-- National days -->\r\n\r\n\r\n<!-- Al-aqsa Terms & conditions -->\r\n\r\n<!-- Edumall Popup -->\r\n    \r\n          \r\n<script type=\"text\/javascript\">\r\n        $(window).load(function(){\r\n        $('#edumallModal').modal()\r\n            ,$(\"#close\").click(function(){\r\n             $('#edumallModal').fadeOut();\r\n            })\r\n        });\r\n<\/script><!-- End Edumall Popup -->\r\n\r\n<!-- email_confirm Popup -->\r\n<script>\r\n  $(window).load(function(){\r\n    $('.page-sidebar a[title]').tooltip();\r\n  })\r\n<\/script>\r\n<!-- End email_confirm Popup -->\r\n\r\n<!-- \r\n\r\nVersions : LTI 1.3 and LTI 1.0\r\n\r\nLoading LTI Partners in Sidbar for SSO And On Public Library also for all roles layout\r\n\r\n\tSSO & LIBRARY\r\n\tschadmin_bs.ctb\r\n\tteacher_bs.ctb\r\n\tstudent_bs.ctb\r\n\r\n\tLIBRARY JUST\r\n\tmanager_bs.ctb\r\n\tteachersupervisor_bs.ctb\r\n-->\r\n\r\n<style>\r\n\t.lti-partner-icon {\r\n\t\twidth: 25px;\r\n    \theight: 25px;\r\n    \tborder-radius: 50%;\r\n    \tmargin-left: 10px;\r\n\t}\r\n    .courses-grid {\r\n        display: grid;\r\n        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\r\n        gap: 20px;\r\n    }\r\n\r\n    .lti-course-item {\r\n        background-color: #f9f9f9;\r\n        padding: 15px;\r\n        border-radius: 5px;\r\n    }\r\n\r\n    .lti-course-link {\r\n        text-decoration: none;\r\n        color: #333;\r\n        display: flex;\r\n        flex-direction: column;\r\n        align-items: center;\r\n    }\r\n\r\n    .lti-course-title {\r\n        text-align: center;\r\n    }\r\n    .lti-course-group > .btn:first-child {\r\n        margin: 0;\r\n        -webkit-border-radius: 15px;\r\n        -webkit-background-clip: padding-box;\r\n        -moz-border-radius: 15px;\r\n        -moz-background-clip: padding;\r\n        border-radius: 15px;\r\n        background-clip: padding-box;\r\n    }\r\n<\/style>\r\n\r\n<script type=\"text\/javascript\">\r\n\/\/ Constants\r\nconst LTI_CONSTANTS = {\r\n    ROLES: {\r\n        TEACHER: \"4\",\r\n        STUDENT: \"6\",\r\n        TEACHER_SUPERVISOR: \"11\",\r\n        SUPER_ADMIN: \"2\"\r\n    },\r\n    ELEMENTS: {\r\n        SSO_1P3: $(\"#signInEduPartners1p3\"),\r\n        SSO_1P0: $(\"#signInEduPartners1p0\"),\r\n        LIBRARY_1P3: $(\"#publicLibWithEduPartners1p3\"),\r\n        LIBRARY_1P0: $(\"#publicLibWithEduPartners1p0\")\r\n    },\r\n    URLS: {\r\n        TEACHER_COURSES: \"\/education_partners\/get_all_teacher_courses\",\r\n        STUDENT_COURSES: \"\/lectures\/coursesListTitles\",\r\n        LIBRARY: \"\/LtiProviders\/deeplink_partners_resources\",\r\n        LTI_1P0_AUTH: \"\/LtiProviders\/lti_1p0_auth\"\r\n    },\r\n    SESSION: {\r\n        ROLE: \"\",\r\n        DEPLOYMENT_ID: \"\",\r\n        PASSED_COURSE_ID: \"\"\r\n    }\r\n};\r\n\r\n\/\/ Utility functions\r\nconst LTIUtils = {\r\n    createLoginHintData(data) {\r\n        return this.safeBtoa(JSON.stringify(data));\r\n    },\r\n\r\n    createIconHtml(configIconUrl, nickName) {\r\n        return configIconUrl ? \r\n            `<img decoding=\"async\" src=\"${configIconUrl}\" alt=\"${nickName} Icon\" class=\"partner-icon lti-partner-icon\">` : '';\r\n    },\r\n\r\n    getTranslatedName(LtiData) {\r\n        return i18n.isPrimary(lang) ? \r\n            (LtiData.nick_name || LtiData.nick_name_ara) : \r\n            (LtiData.nick_name_ara || LtiData.nick_name);\r\n    },\r\n\r\n    safeBtoa(input) {\r\n        return btoa(encodeURIComponent(input).replace(\/%([0-9A-F]{2})\/g, \r\n            (match, p1) => String.fromCharCode(parseInt(p1, 16))));\r\n    },\r\n\r\n    showCoursesMenu() {\r\n        $('.lti-course-group').append('<div id=\"lti_courses_menu_mask\"><\/div>');\r\n        $('.lti-courses-menu').show().html('<img decoding=\"async\" src=\"\/img\/ios_loading.gif\" class=\"lti_courses_loader\" alt=\"loading...\"\/>');\r\n        $('.navbar').addClass('lti-courses-menu-active');\r\n    }\r\n};\r\n\r\n\/\/ LTI Core functionality\r\nconst LTICore = {\r\n    loadData(sectionId, version1p3, version1p0) {\r\n        $.ajax({\r\n            url: \"\/EducationPartners\/ajax_automation_partners_checker\",\r\n            type: 'POST',\r\n            success: data => {\r\n                try {\r\n                    $(`#${sectionId}${version1p3}, #${sectionId}${version1p0}`).html('');\r\n                    if (data) this.renderData(data);\r\n                } catch (error) {\r\n                    console.error(error);\r\n                }\r\n            },\r\n            error: error => {\r\n                console.error(error);\r\n                $(`#${sectionId}${version1p3}, #${sectionId}${version1p0}`).html('');\r\n            }\r\n        });\r\n    },\r\n\r\n    renderData(data) {\r\n        Object.values(LTI_CONSTANTS.ELEMENTS).forEach(element => element.empty());\r\n        \r\n        data.forEach(value => {\r\n            const version = value.PartnersAutomations.version;\r\n            if (version === 'version_1.0') {\r\n                this.loadVersion1p0(value);\r\n            } else if (version === 'version_1.3') {\r\n                this.loadVersion1p3(value);\r\n            }\r\n        });\r\n    },\r\n\r\n    \/\/ Load LTI Version 1.0\r\n    loadVersion1p0(data) {\r\n        const LtiData = data.PartnersAutomations;\r\n        const PartnerData = data.EducationalPartner;\r\n        const PartnerSchoolData = data.EducationalPartnerSchool;\r\n\r\n        const nickName = LTIUtils.getTranslatedName(LtiData);\r\n        const classeraHostName = LtiData.iss;\r\n        const ltiVersion = LtiData.version;\r\n        const usersNeedSso = LtiData.users_need_sso;\r\n        const configPartnerId = LtiData.id;\r\n        const launchUrl = LtiData.launch_url;\r\n        const ssoTargetLinkUri = LtiData.target_link_uri;\r\n        const deepLinkTargetLinkUri = LtiData.deep_link_uri;\r\n        const toollDescription = LtiData.tool_description;\r\n        const deepLinkEnable = LtiData.deep_link_enable;\r\n        const isLibrary = LtiData.is_library;\r\n        const partnerId = LtiData.partner_id;\r\n        const  usersEnabledToEmbedingContent = LtiData.users_enabled_embed;\r\n        const clientId = LtiData.client_id;\r\n        const configIconUrl = LtiData.icon_url;\r\n        const selectCourseBeforeSSO = LtiData.select_course_before_sso;\r\n        const acceptPresentationDocumentTargets = LtiData.accept_presentation_document_targets;\r\n        const supportSSO = usersNeedSso.includes(LTI_CONSTANTS.SESSION.ROLE) ? true : false;\r\n\r\n        const ssoLoginHintData = LTIUtils.createLoginHintData({\r\n            config_partner_id: configPartnerId,\r\n            partner_id: partnerId,\r\n            config_partner_name: nickName,\r\n            passed_course_id: LTI_CONSTANTS.SESSION.PASSED_COURSE_ID,\r\n            lti_source: 'SSO_LOGIN'\r\n        });\r\n        \r\n        const deepLinkLoginHintData = LTIUtils.createLoginHintData({\r\n            config_partner_id: configPartnerId,\r\n            partner_id: partnerId,\r\n            config_partner_name: nickName,\r\n            config_icon_url: configIconUrl,\r\n            accept_presentation_document_targets: acceptPresentationDocumentTargets,\r\n            lti_version: ltiVersion,\r\n            lti_source: 'Library',\r\n            lti_tool_support_sso: supportSSO\r\n        });\r\n        \r\n        \/\/ URLS\r\n        const urlLibrary = `${LTI_CONSTANTS.URLS.LIBRARY}\/login_hint:${deepLinkLoginHintData}`;\r\n        const urlSSOVersion1p0 = `${LTI_CONSTANTS.URLS.LTI_1P0_AUTH}\/login_hint:${ssoLoginHintData}`;\r\n        const urlDeepLinkingVersion1p0 = `${LTI_CONSTANTS.URLS.LTI_1P0_AUTH}\/login_hint:${deepLinkLoginHintData}`;\r\n\r\n        const iconHtml = LTIUtils.createIconHtml(configIconUrl, nickName);\r\n        \r\n        \/\/ Load SSO For Users in SideBar\r\n        if (selectCourseBeforeSSO == true && (LTI_CONSTANTS.SESSION.ROLE == LTI_CONSTANTS.ROLES.TEACHER || LTI_CONSTANTS.SESSION.ROLE == LTI_CONSTANTS.ROLES.STUDENT)) {\r\n            if (PartnerData.is_has_customize && PartnerSchoolData?.courses?.length > 0) {\r\n                const encodedData = LTIUtils.safeBtoa(JSON.stringify(PartnerSchoolData.courses));\r\n                LTI_CONSTANTS.ELEMENTS.SSO_1P0.append(`<li class=\"tab-sidebar-list\"><a onClick=\"renderCustomizedCourses('${urlSSOVersion1p0}', '${encodedData}', '1.0')\">${iconHtml}${i18n.translate(nickName)}<\/a><\/li>`);\r\n            } else {\r\n                LTI_CONSTANTS.ELEMENTS.SSO_1P0.append(`<li class=\"tab-sidebar-list\"><a onClick=\"ltiGetCoursesV1('${urlSSOVersion1p0}')\">${iconHtml}${i18n.translate(nickName)}<\/a><\/li>`);\r\n            }\r\n        } else {\r\n            LTI_CONSTANTS.ELEMENTS.SSO_1P0.append(`<li class=\"tab-sidebar-list\"><a href=\"${urlSSOVersion1p0}\" target=\"_blank\">${iconHtml}${i18n.translate(nickName)}<\/a><\/li>`);\r\n        }\r\n\r\n        \/\/ Load Libraries For Users in SideBar\r\n        if (isLibrary == true) {\r\n            LTI_CONSTANTS.ELEMENTS.LIBRARY_1P0.append(`<li class=\"tab-sidebar-list\"><a href=\"${urlLibrary}\" target=\"_blank\">${iconHtml}${i18n.translate(nickName)} ${i18n.translate('Library')}<\/a><\/li>`);\r\n        }\r\n    },\r\n\r\n    \/\/ Load LTI Version 1.3\r\n    loadVersion1p3(data) {\r\n        const LtiData = data.PartnersAutomations;\r\n        const PartnerData = data.EducationalPartner;\r\n        const PartnerSchoolData = data.EducationalPartnerSchool;\r\n\r\n        const nickName = LTIUtils.getTranslatedName(LtiData);\r\n        const classeraHostName \t\t\t= LtiData.iss;\r\n        const  ltiVersion \t\t\t\t\t= LtiData.version;\r\n        const usersNeedSso \t\t\t\t= LtiData.users_need_sso;\r\n        const configPartnerId \t\t\t= LtiData.id;\r\n        const launchUrl \t\t\t\t\t= LtiData.launch_url;\r\n        const ssoTargetLinkUri \t\t\t= LtiData.target_link_uri;\r\n        const deepLinkTargetLinkUri \t\t= LtiData.deep_link_uri;\r\n        const toollDescription\t\t= LtiData.tool_description;\r\n        const deepLinkEnable \t\t\t\t= LtiData.deep_link_enable;\r\n        const isLibrary \t\t\t\t\t= LtiData.is_library;\r\n        const partnerId \t\t\t\t\t= LtiData.partner_id;\r\n        const usersEnabledToEmbedingContent = LtiData.users_enabled_embed;\r\n        const clientId \t\t\t\t\t= LtiData.client_id;\r\n        const configIconUrl = LtiData.icon_url;\r\n        const acceptPresentationDocumentTargets = LtiData.accept_presentation_document_targets;\r\n        const selectCourseBeforeSSO = LtiData.select_course_before_sso;\r\n        const supportSSO = usersNeedSso.includes(LTI_CONSTANTS.SESSION.ROLE) ? true : false;\r\n\r\n        \/\/ Check if launchUrl already contains query parameters\r\n        const launchUrlHasQuery = launchUrl.includes('?');\r\n\r\n        const ssoLoginHintData = LTIUtils.createLoginHintData({\r\n            config_partner_id: configPartnerId,\r\n            lti_source: 'SSO_LOGIN'\r\n        });\r\n        const deepLinkLoginHintData = LTIUtils.createLoginHintData({\r\n            config_partner_id: configPartnerId,\r\n            partner_id: partnerId,\r\n            config_partner_name: nickName,\r\n            config_icon_url: configIconUrl,\r\n            accept_presentation_document_targets: acceptPresentationDocumentTargets,\r\n            lti_version: ltiVersion,\r\n            lti_source: 'Library',\r\n            lti_tool_support_sso: supportSSO\r\n        });\r\n        const ltiMessageHintData = '';\r\n        \r\n        \/\/ URLS\r\n        const urlLibrary = `${LTI_CONSTANTS.URLS.LIBRARY}\/login_hint:${deepLinkLoginHintData}`;\r\n        const urlSSOVersion1p3 = `${launchUrl}${launchUrlHasQuery ? '&' : '?'}iss=${classeraHostName}&login_hint=${ssoLoginHintData}&target_link_uri=${ssoTargetLinkUri}&client_id=${clientId}&deployment_id=${LTI_CONSTANTS.SESSION.DEPLOYMENT_ID}`;\r\n        const urlDeepLinkingVersion1p3 = `${launchUrl}${launchUrlHasQuery ? '&' : '?'}iss=${classeraHostName}&login_hint=${deepLinkLoginHintData}&target_link_uri=${deepLinkTargetLinkUri}&lti_message_hint=${ltiMessageHintData}&client_id=${clientId}&deployment_id=${LTI_CONSTANTS.SESSION.DEPLOYMENT_ID}`;\r\n\r\n        const iconHtml = LTIUtils.createIconHtml(configIconUrl, nickName);\r\n\r\n        \/\/ Load SSO For Users in SideBar\r\n        if (selectCourseBeforeSSO == true && (LTI_CONSTANTS.SESSION.ROLE == LTI_CONSTANTS.ROLES.TEACHER || LTI_CONSTANTS.SESSION.ROLE == LTI_CONSTANTS.ROLES.STUDENT)) {\r\n            if (PartnerData.is_has_customize && PartnerSchoolData?.courses?.length > 0) {\r\n                const encodedData = LTIUtils.safeBtoa(JSON.stringify(PartnerSchoolData.courses));\r\n                LTI_CONSTANTS.ELEMENTS.SSO_1P3.append(`<li class=\"tab-sidebar-list\"><a onClick=\"renderCustomizedCourses('${urlSSOVersion1p3}', '${encodedData}', '1.3')\">${iconHtml}${i18n.translate(nickName)}<\/a><\/li>`);\r\n            } else {\r\n                LTI_CONSTANTS.ELEMENTS.SSO_1P3.append(`<li class=\"tab-sidebar-list\"><a onClick=\"ltiGetCoursesV3('${urlSSOVersion1p3}')\">${iconHtml}${i18n.translate(nickName)}<\/a><\/li>`);\r\n            }\r\n        } else {\r\n            LTI_CONSTANTS.ELEMENTS.SSO_1P3.append(`<li class=\"tab-sidebar-list\"><a href=\"${urlSSOVersion1p3}\" target=\"_blank\">${iconHtml}${i18n.translate(nickName)}<\/a><\/li>`);\r\n        }\r\n\r\n        \/\/ Load Libraries For Users in SideBar\r\n        if(isLibrary == true){\r\n            LTI_CONSTANTS.ELEMENTS.LIBRARY_1P3.append(`<li class=\"tab-sidebar-list\"><a href=\"${urlLibrary}\" target=\"_blank\">${iconHtml} ${i18n.translate(nickName)} Library<\/a><\/li>`);\r\n        }\r\n    }\r\n};\r\n\r\n\/\/ Course handling functionality\r\nconst CourseHandler = {\r\n    getCourses(ltiUrl, version) {\r\n        const role = LTI_CONSTANTS.SESSION.ROLE;\r\n        if (![LTI_CONSTANTS.ROLES.TEACHER, LTI_CONSTANTS.ROLES.STUDENT].includes(role)) {\r\n            window.open(ltiUrl, '_blank');\r\n            return;\r\n        }\r\n\r\n        LTIUtils.showCoursesMenu();\r\n        \r\n        const url = role === LTI_CONSTANTS.ROLES.TEACHER ? \r\n            LTI_CONSTANTS.URLS.TEACHER_COURSES : \r\n            LTI_CONSTANTS.URLS.STUDENT_COURSES;\r\n\r\n        this.fetchAndRenderCourses(url, ltiUrl, version);\r\n    },\r\n\r\n    fetchAndRenderCourses(url, ltiUrl, version) {\r\n        jQuery.get(url, {}, data => {\r\n            if (!data || !Object.keys(data.courses).length) {\r\n                window.open(ltiUrl, '_blank');\r\n                return;\r\n            }\r\n            this.renderCoursesGrid(data.courses, ltiUrl, version);\r\n        }, 'json');\r\n    },\r\n\r\n    renderCoursesGrid(courses, ltiUrl, version) {\r\n        const gridHtml = this.generateCoursesGrid(courses, ltiUrl, version);\r\n        $('.lti-courses-menu').html(`\r\n            <h3 class=\"lti-courses-menu-label\">\r\n                <i class=\"fa fa-briefcase\" aria-hidden=\"true\"><\/i>\r\n                ${i18n.translate(\"Choose a course\")}\r\n            <\/h3>\r\n            ${gridHtml}\r\n        `);\r\n    },\r\n\r\n    generateCoursesGrid(courses, ltiUrl, version) {\r\n        let lti_courses_grid = '<div class=\"courses-grid\">';\r\n\r\n        courses.forEach(course => {\r\n            const courseId = course.LectureDetailsView?.course_id || course.Course?.id || \"\";\r\n            const courseTitle = course.LectureDetailsView?.course_title || course.Lecture?.course_title || \"Untitled Course\";\r\n            const courseIcon = course.LectureDetailsView?.course_icon_path || course.Course?.course_icon_path || \"\";\r\n            const fullCourseTitle = `${courseTitle} ${course.LectureDetailsView?.level_title ? `\/ ${course.LectureDetailsView?.level_title}` : \"\"}`;\r\n            const ltiCourseLink = version === '1.3' ? \r\n                `${ltiUrl}&lti_message_hint=${courseId}` : \r\n                `${ltiUrl}\/course_id:${courseId}`;\r\n\r\n            const iconHtml = courseIcon || '<i class=\"fa fa-book\" aria-hidden=\"true\"><\/i>';\r\n\r\n            lti_courses_grid += `\r\n                <div class=\"lti-course-item\">\r\n                    <a href=\"${ltiCourseLink}\" target=\"_blank\" class=\"lti-course-link\">\r\n                        ${iconHtml}\r\n                        <span class=\"lti-course-title\">${fullCourseTitle}<\/span>\r\n                    <\/a>\r\n                <\/div>`;\r\n        });\r\n\r\n        lti_courses_grid += '<\/div>';\r\n\r\n        return lti_courses_grid;\r\n    },\r\n    renderCustomizedCourses(ltiUrl, encodedData, version) {\r\n        $('.lti-course-group').append('<div id=\"lti_courses_menu_mask\"><\/div>');\r\n        $('.lti-courses-menu').show();\r\n        $('.navbar').addClass('lti-courses-menu-active');\r\n        $('.lti-courses-menu').html('<img decoding=\"async\" src=\"\/img\/ios_loading.gif\" class=\"lti_courses_loader\" alt=\"loading...\"\/>');\r\n\r\n\t\tconst coursesIds = JSON.parse(atob(encodedData));\r\n\t\tconst url = \"\/education_partners_school\/get_customized_courses_by_ids\";\r\n\r\n\t\tjQuery.get(url, { course_ids: coursesIds })\r\n\t\t.done(function(response) {\r\n\t\t\tlet data;\r\n\t\t\ttry {\r\n\t\t\t\tdata = JSON.parse(response);\r\n\t\t\t} catch (e) {\r\n\t\t\t\tconsole.error(\"Error parsing JSON response:\", e);\r\n\t\t\t\t$('.lti-courses-menu').html('Error processing course data');\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif (!data || !data.length) {\r\n\t\t\t\t$('.lti-courses-menu').html('No courses available for this partner');\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tlet lti_courses_grid = '<div class=\"courses-grid\">';\r\n\r\n\t\t\tdata.forEach(item => {\r\n\t\t\t\tconst course = item.Course || {};\r\n\t\t\t\tconst level = item.Level || {};\r\n\t\t\t\tconst courseId = course.id || \"\";\r\n\t\t\t\tconst courseTitle = course.course_title || \"Untitled Course\";\r\n\t\t\t\tconst levelTitle = course.level_title || \"N\/A\";\r\n\t\t\t\tconst courseIcon = course.course_icon_path || \"\";\r\n\t\t\t\tconst fullCourseTitle = `${courseTitle} \/ ${levelTitle}`;\r\n\t\t\t\tconst ltiCourseLink = version === '1.3' ? \r\n\t\t\t\t\t`${ltiUrl}&lti_message_hint=${courseId}` : \r\n\t\t\t\t\t`${ltiUrl}\/course_id:${courseId}`;\r\n\r\n\t\t\t\tconst iconHtml = courseIcon || '<i class=\"fa fa-book\" aria-hidden=\"true\"><\/i>';\r\n\r\n\t\t\t\tlti_courses_grid += `\r\n\t\t\t\t\t<div class=\"lti-course-item\">\r\n\t\t\t\t\t\t<a href=\"${ltiCourseLink}\" target=\"_blank\" class=\"lti-course-link\">\r\n\t\t\t\t\t\t\t${iconHtml}\r\n\t\t\t\t\t\t\t<span class=\"lti-course-title\">${fullCourseTitle}<\/span>\r\n\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t<\/div>`;\r\n\t\t\t});\r\n\r\n\t\t\tlti_courses_grid += '<\/div>';\r\n\r\n\t\t\t$('.lti-courses-menu').html(`\r\n\t\t\t\t<h3 class=\"lti-courses-menu-label\">\r\n\t\t\t\t\t<i class=\"fa fa-briefcase\" aria-hidden=\"true\"><\/i>\r\n\t\t\t\t\tChoose a course\r\n\t\t\t\t<\/h3>\r\n\t\t\t\t${lti_courses_grid}\r\n\t\t\t`);\r\n\t\t})\r\n\t\t.fail(function() {\r\n\t\t\t$('.lti-courses-menu').html('Error loading courses');\r\n\t\t});\r\n\t},\r\n};\r\n\r\n\/\/ Event Handlers\r\n$(document).on('click', '.signInEduPartners', () => LTICore.loadData('signInEduPartners', '1p3', '1p0'));\r\n$(document).on('click', '.publicLibMenu', () => LTICore.loadData('publicLibWithEduPartners', '1p3', '1p0'));\r\n$(document).on('click', '#lti_courses_menu_mask', () => {\r\n    $('.lti-courses-menu').hide();\r\n    $('#lti_courses_menu_mask').remove();\r\n    $('.navbar').removeClass('lti-courses-menu-active');\r\n});\r\n\r\n\/\/ Global function declarations\r\nwindow.renderCustomizedCourses = (ltiUrl, encodedData, version) => \r\n    CourseHandler.renderCustomizedCourses(ltiUrl, encodedData, version);\r\nwindow.ltiGetCoursesV1 = ltiUrl => \r\n    CourseHandler.getCourses(ltiUrl, '1.0');\r\nwindow.ltiGetCoursesV3 = ltiUrl => \r\n    CourseHandler.getCourses(ltiUrl, '1.3');\r\n<\/script>\r\n\r\n<div class=\"btn-group lti-course-group\">\r\n\t<ul class=\"lti-courses-menu\" style=\"display:none\" role=\"menu\"><\/ul>\r\n<\/div><script type=\"text\/javascript\">\r\n    $(document).ready(function() {\r\n        var isextraRolesForPartnersOpend = localStorage.getItem('extraRolesForPartnersOpend');\r\n\r\n        if (isextraRolesForPartnersOpend === 'true') {\r\n            loadAdditionalUsers();\r\n        }\r\n    });\r\n\r\n    $(document).on('click', '.extraRolesForPartners', function() {\r\n        var sectionId = 'extraRolesForPartners';\r\n        var isextraRolesForPartnersOpend = localStorage.getItem('extraRolesForPartnersOpend');\r\n\r\n        if (isextraRolesForPartnersOpend !== 'true') {\r\n            localStorage.setItem('extraRolesForPartnersOpend', 'true');\r\n            loadAdditionalUsers();\r\n        }\r\n    });\r\n\r\n    function loadAdditionalUsers() {\r\n        console.log(\"Loading start\");\r\n        $(\".extraRolesForPartners\").find('.sub-menu').first().append(\"<li class ='tab-sidebar-list' id='AdditionalUsersSSOLoading'>\" + \"<div style='width: 50px;' class='classera_loading2'><img src='https:\/\/v14-cdn.classera.com\/img\/classera_loading.gif?64f555e9-5c86-5527-b19c-d43d651d3f1e' class='loading' alt='Loading..' style='width:50px;'='style='width:50px;''\/><\/div>\" + \"<\/li>\");\r\n        console.log(\"Loading done\");\r\n        $.ajax({\r\n            url: \"\/EdupartnerAdditionalUsers\/getAdditionalSSOButtons\",\r\n            method: \"POST\",\r\n            success: function(data) {\r\n                \/\/ console.log(data);\r\n                \/\/ decodedData = JSON.parse(data);\r\n                $('#AdditionalUsersSSOLoading').hide();\r\n                if (Object.entries(data).length > 0) {\r\n                    data.forEach((index) => {\r\n                        $(\".extraRolesForPartners\").find('.sub-menu').first().append(\"<li class ='tab-sidebar-list'>\" + index.partnerSSOLink + \"<\/li>\");\r\n                    });\r\n                }\r\n            }\r\n        });\r\n    }\r\n<\/script><script>\r\n    let classera_db;\r\n\r\n    const request_open_db = indexedDB.open('CS_DB', 1);\r\n\r\n    request_open_db.onupgradeneeded = function(event) {\r\n        classera_db = event.target.result;\r\n        const objectStore = classera_db.createObjectStore('pop_up_events', { keyPath: 'id', autoIncrement: true }); \r\n        objectStore.createIndex('event_name', 'event_name', { unique: true });\r\n        objectStore.createIndex('show_event', 'show_event', { unique: false });\r\n    };\r\n\r\n    request_open_db.onsuccess = function(event) {\r\n        classera_db = event.target.result;\r\n        console.log('Database CS opened successfully');\r\n    };\r\n\r\n    request_open_db.onerror = function(event) {\r\n        console.log('Error opening  database CS:', event.target.errorCode);\r\n    };\r\n\r\n     function addEvent(eventName, showEvent) {\r\n        const transaction = classera_db.transaction(['pop_up_events'], 'readwrite');\r\n        const objectStore = transaction.objectStore('pop_up_events');\r\n        const request = objectStore.add({ event_name: eventName, show_event: showEvent });\r\n         request.onsuccess = function() {\r\n            console.log('event added to the database');\r\n        };\r\n\r\n        request.onerror = function(event) {\r\n            console.log('Error adding event:', event.target.error.message, event.target.error.code);\r\n        };\r\n    }\r\n    function checkEventInClaasseraDb(event_key) {\r\n        return new Promise((resolve, reject) => {\r\n            const transaction = classera_db.transaction(['pop_up_events'], 'readonly');\r\n            const objectStore = transaction.objectStore('pop_up_events');\r\n            const event_index = objectStore.index('event_name');\r\n            const request = event_index.get(event_key); \r\n            request.onsuccess = function(event) {\r\n                if (request.result) {\r\n                    resolve(request.result); \/\/ Resolve the promise with the event data\r\n                } else {\r\n                    resolve(null); \/\/ Resolve with null if no event is found\r\n                }\r\n            };\r\n\r\n            request.onerror = function(event) {\r\n                reject('Error fetching user: ' + event.target.errorCode); \/\/ Reject the promise on error\r\n            };\r\n        });\r\n    }\r\n<\/script><div class=\"feedback-poll-container hidden\">\r\n    <div class=\"feedback-slider-mask\" onclick=\"closeFeedbackMenu()\"><\/div>\r\n    <div class=\"poll-button-container cursor-pointer\">\r\n        <div class=\"poll-button flex items-center\" onclick=\"openFeedbackForm()\">\r\n            <i class=\"icon-poll-icon-svg\"><\/i>\r\n            <h4>Have Feedback?<\/h4>\r\n        <\/div>\r\n    <\/div>\r\n    <div class=\"poll-slider-container\" data-page=\"1\">\r\n        <div class=\"poll-loading flex items-center justify-center hidden\">\r\n            <span class=\"gg-spinner\"><\/span>\r\n        <\/div>\r\n        <span onclick=\"closeFeedbackMenu()\" class=\"icon-close cursor-pointer close-poll\"><\/span>\r\n        <div class=\"slide-container\">\r\n            <div class=\"poll-form-container\">\r\n                \r\n                <div class=\"form-icon-container\"><i class=\"icon-poll-icon-svg form-icon\"><\/i><\/div>\r\n                <h4 class=\"margin-bottom-5\">On a scale of 1-10, how would you rate your experience with Classera?<\/h4>\r\n                <p class=\"feedback-importance\"> Your feedback is important for us<\/p>\r\n                <ul class=\"flex items-center feedback-values-list\">\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"1\">1<\/li>\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"2\">2<\/li>\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"3\">3<\/li>\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"4\">4<\/li>\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"5\">5<\/li>\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"6\">6<\/li>\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"7\">7<\/li>\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"8\">8<\/li>\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"9\">9<\/li>\r\n                    <li class=\"feedback-value cursor-pointer\" data-feedback-value=\"10\">10<\/li>\r\n                <\/ul>\r\n                <div class=\"flex justify-space-between\">\r\n                    <p>Not likely<\/p>\r\n                    <p>Extremely likely<\/p>\r\n                <\/div>\r\n                <div>\r\n                    <h4>Tell us what do you think (optional)<\/h4>\r\n                    <textarea name=\"feedback-description\" id=\"feedback-description\"><\/textarea>\r\n                <\/div>\r\n            <\/div>\r\n            <div class=\"actions-container margin-top-10\">\r\n                <button class=\"btn submit\" onclick=\"submitFeedback()\">\u062a\u0633\u0644\u064a\u0645<\/button>\r\n                <button class=\"btn\" onclick=\"feedbackLater()\">Maybe Later<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n    <div class=\"poll-slider-container\" data-page=\"2\">\r\n        <span onclick=\"closeFeedbackMenu()\" class=\"icon-close cursor-pointer close-poll\"><\/span>\r\n        <div class=\"slide-container\">\r\n            <div class=\"poll-form-container\">\r\n                <div class=\"form-icon-container\"><i class=\"icon-poll-icon-empty form-icon\"><\/i><span class=\"icon-check\"><\/span><\/div>\r\n                <h4 class=\"margin-bottom-5\">Thank you for sharing your answer with us.<\/h4>\r\n                <p> We are committed to continuously improving!<\/p>\r\n            <\/div>\r\n            <div class=\"actions-container margin-top-10\">\r\n                <button class=\"btn submit\" onclick=\"closeFeedbackMenu('afterSubmit')\">\u062a\u0645<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n<script>\r\n    let feedbackSubmitted = false;\r\n    function openFeedbackForm(){\r\n        $('.feedback-poll-container').addClass('slider-opened');\r\n        $('.poll-slider-container[data-page=\"1\"]').addClass('active');\r\n    }\r\n    function closeFeedbackMenu(){\r\n        $('.feedback-poll-container').removeClass('slider-opened');\r\n        $('.poll-slider-container').removeClass('active');\r\n        if(feedbackSubmitted){\r\n            $('.feedback-poll-container').empty();\r\n        }\r\n    }\r\n    $('.feedback-value').on('click',function(){\r\n        $('.feedback-value').removeClass('selected');\r\n        $(this).addClass('selected');\r\n        $('.feedback-importance').removeClass('danger');\r\n    })\r\n    function submitFeedback(){\r\n        $('.feedback-importance').removeClass('danger');\r\n        $('.poll-loading').removeClass('hidden');\r\n        if(!$('.feedback-value.selected').length){\r\n            $('.feedback-importance').addClass('danger');\r\n             $('.poll-loading').addClass('hidden');\r\n            return;\r\n        }\r\n        let feedbackValue = $('.feedback-value.selected').attr('data-feedback-value');\r\n        let payload = {\r\n            score: $('.feedback-value.selected').attr('data-feedback-value'),\r\n            notes: $('#feedback-description').val()\r\n        }\r\n        $.ajax({\r\n            url: '\/ratings\/saveNpsData',\r\n            dataType: 'json',\r\n            method: 'post',\r\n            data: payload,\r\n            success: function(res){\r\n                submitSuccess();\r\n            },\r\n            error: function(err){\r\n                submitSuccess();\r\n            },\r\n        })\r\n    }\r\n    function submitSuccess(){\r\n        $('.poll-slider-container[data-page=\"1\"]').removeClass('active');\r\n        $('.poll-loading').removeClass('hidden');\r\n        $('.poll-slider-container[data-page=\"2\"]').addClass('active');\r\n        $('.poll-loading').addClass('hidden');\r\n        addEvent('feedback', false);\r\n        feedbackSubmitted = true;\r\n    }\r\n    function feedbackLater(){\r\n        localStorage.setItem('feedbackLater' , true);\r\n        closeFeedbackMenu();\r\n        $('.feedback-poll-container').empty();\r\n\r\n    }\r\n    $(window).load(function(){\r\n        \/\/ we check from \/Elements\/client_side_db.ctp\r\n        checkEventInClaasseraDb('feedback')\r\n        .then(event => {\r\n            if (!event && !localStorage.getItem('feedbackLater')) {\r\n                $('.feedback-poll-container').removeClass('hidden');\r\n            } else{\r\n                $('.feedback-poll-container').empty();\r\n            }\r\n        })\r\n        .catch(error => {\r\n            $('.feedback-poll-container').removeClass('hidden');\r\n        });\r\n    })\r\n<\/script>\t\t<\/div>\r\n\t<\/div>\r\n    <div class=\"learning-never-stop-section\">\r\n        <a href=\"https:\/\/mea.classera.com\/en\/lnse\" target=\"_blank\"><img decoding=\"async\" src=\"https:\/\/v14-cdn.classera.com\/img\/learning-login-ar.png?8c675c07-845c-5490-8d55-e76698c998ee\" alt=\"Lerning Never Stops\" class=\"learning-never-stop-img\"\/><\/a>    <\/div>\r\n<\/div>\r\n\r\n\r\n<script type=\"text\/javascript\">\r\n    var _gaq = _gaq || [];\r\n    _gaq.push(['_setAccount', 'UA-30903319-1']);\r\n    _gaq.push(['_trackPageview']);\r\n\r\n    (function() {\r\n        var ga = document.createElement('script'); ga.type = 'text\/javascript'; ga.async = true;\r\n        ga.src = ('https:' == document.location.protocol ? 'https:\/\/ssl' : 'http:\/\/www') + '.google-analytics.com\/ga.js';\r\n        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r\n    })();\r\n<\/script>\r\n\r\n<script>\r\n    documentIsReady(function(){\r\n        \/\/check if css style is applied to logo if not then something went wrong\r\n        var logo = document.querySelector('#login_logo');\r\n        if (logo && getComputedStyle(logo).maxWidth == 'none') {\r\n            var script = document.createElement('script');\r\n            script.onload = cdnFallBack;\r\n            script.src = \"\/js\/jQuery\/jquery-2.2.4.min.js\";\r\n            document.getElementsByTagName('head')[0].appendChild(script);\r\n        };\r\n    });\r\n    function cdnFallBack(){\r\n        jQuery(function(){\r\n            console.log('init cdn fallback ', jQuery('[href*=\"https:\/\/v14-cdn.classera.com\"], [src*=\"https:\/\/v14-cdn.classera.com\"]').length, ' items');\r\n            jQuery('[href*=\"https:\/\/v14-cdn.classera.com\"]').each(function(){\r\n                elem = jQuery(this);\r\n                var href = elem.attr('href').replace('https:\/\/v14-cdn.classera.com', '');\r\n                elem.attr('href', href);\r\n            })\r\n            jQuery('[src*=\"https:\/\/v14-cdn.classera.com\"]').each(function(){\r\n                elem = jQuery(this);\r\n                var src = elem.attr('src').replace('https:\/\/v14-cdn.classera.com', '');\r\n                elem.attr('src', src);\r\n            })\r\n            jQuery('.loadingCheck').removeClass('loadingCheck');\r\n        })\r\n    }\r\n\r\n    function documentIsReady(fn) {\r\n        if (document.readyState != 'loading'){\r\n            fn();\r\n        } else {\r\n            document.addEventListener('DOMContentLoaded', fn);\r\n        }\r\n    }\r\n<\/script>\r\n<script>\r\n$(function(){\r\n    $('#UserUsername').on('focus', function(){\r\n        $('.main-wrapper').addClass('user-active');\r\n    });\r\n\r\n    $('#UserUsername').on('blur', function(){\r\n        $('.main-wrapper').removeClass('user-active');\r\n    });\r\n\r\n    $('#UserPassword').on('focus', function(){\r\n        $('.main-wrapper').addClass('password-active');\r\n    });\r\n\r\n    $('#UserPassword').on('blur', function(){\r\n        $('.main-wrapper').removeClass('password-active');\r\n    });\r\n});\r\n\r\n\r\n    if(!$('#UserResetForm').length && !$('#UserResendUsernameForm').length){\r\n        $('.login_to_classera_label').removeClass('hidden');\r\n    }\r\n\r\n<\/script>\r\n<style>\r\n#UserLoginForm .password-wrapper .fa {\r\n    position: absolute;\r\n    bottom: 17px;\r\n    cursor: pointer;\r\n    color: white !important;\r\n}\r\n#UserPassword:-webkit-autofill~i.fa.fa-eye{\r\n    color: black !important;\r\n}\r\n<\/style>\r\n<script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML=\"window.__CF$cv$params={r:'8e3a96e0fd5270e7',t:'MTczMTc5MjcwMi4wMDAwMDA='};var a=document.createElement('script');a.nonce='';a.src='\/cdn-cgi\/challenge-platform\/scripts\/jsd\/main.js';document.getElementsByTagName('head')[0].appendChild(a);\";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();<\/script><script defer src=\"https:\/\/static.cloudflareinsights.com\/beacon.min.js\/vcd15cbe7772f49c399c6a5babf22c1241717689176015\" integrity=\"sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==\" data-cf-beacon='{\"rayId\":\"8e3a96e0fd5270e7\",\"serverTiming\":{\"name\":{\"cfExtPri\":true,\"cfL4\":true,\"cfSpeedBrain\":true,\"cfCacheStatus\":true}},\"version\":\"2024.10.5\",\"token\":\"0cb6598b99a94ad0b0394e6acd442ac9\"}' crossorigin=\"anonymous\"><\/script>\r\n<\/body>\r\n<\/html>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-90107bc elementor-section-full_width elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no\" data-id=\"90107bc\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-18f76ba\" data-id=\"18f76ba\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u062a\u0648\u0627\u0635\u0644 \u0645\u0639\u0646\u0627 Login | Classera \u062a\u0633\u062c\u064a\u0644 \u0627\u0644\u062f\u062e\u0648\u0644 \u0627\u0644\u0644\u063a\u0629 English \u0639\u0631\u0628\u064a Portugu\u00eas Deutsch Fran\u00e7ais \u0420\u0443\u0441\u0441\u043a\u0438\u0439 Espa\u00f1ola Malaysia Indonesian Thai Urdu Uzbek T\u00fcrk\u00e7e \u0623\u0647\u0644\u0627 \u0628\u0643 \u0641\u064a \u0627\u0644\u0645\u062a\u0639\u0629 \u0627\u0644\u062d\u0642\u064a\u0642\u064a\u0629 \u0644\u0644\u062a\u0639\u0644\u0645 \u0627\u0644\u0630\u0643\u064a \u062a\u0633\u062c\u064a\u0644 \u0627\u0644\u062f\u062e\u0648\u0644 \u0623\u0646\u0633\u064a\u062a \u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u062f\u062e\u0648\u0644\u061f \u0623\u0648 \u0633\u062c\u0644 \u0627\u0644\u062f\u062e\u0648\u0644 \u0639\u0646 \u0637\u0631\u064a\u0642 \u0645\u0627\u064a\u0643\u0631\u0648\u0633\u0648\u0641\u062a\u062c\u0648\u062c\u0644 \u0643\u0644\u0627\u0633\u064a\u0631\u0627 &copy; 2024. Have Feedback? On a scale of 1-10, how would you rate your experience with Classera? Your feedback is important for us 1 2 3 4 5 6 7 8 9 10 Not likely Extremely likely Tell us what do you think (optional) \u062a\u0633\u0644\u064a\u0645 Maybe Later Thank you for sharing your answer with us. We are committed to continuously improving! \u062a\u0645<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","footnotes":""},"class_list":["post-2748","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/elearning-darfur-sd.net\/en\/wp-json\/wp\/v2\/pages\/2748","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/elearning-darfur-sd.net\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/elearning-darfur-sd.net\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/elearning-darfur-sd.net\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/elearning-darfur-sd.net\/en\/wp-json\/wp\/v2\/comments?post=2748"}],"version-history":[{"count":8,"href":"https:\/\/elearning-darfur-sd.net\/en\/wp-json\/wp\/v2\/pages\/2748\/revisions"}],"predecessor-version":[{"id":2756,"href":"https:\/\/elearning-darfur-sd.net\/en\/wp-json\/wp\/v2\/pages\/2748\/revisions\/2756"}],"wp:attachment":[{"href":"https:\/\/elearning-darfur-sd.net\/en\/wp-json\/wp\/v2\/media?parent=2748"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}