function renderLogin() { global $oscTemplate; $lwa_config = LoginWithAmazon_Tools::get_config(); $csrf_token = LoginWithAmazon_Tools::get_csrf_token(); if ($lwa_config['client_id'] && $csrf_token) { $lwa_client_id = $lwa_config['client_id']; $popup = 'true'; if (empty($_SERVER['HTTPS'])) { $popup = 'false'; } $output = '<script type="text/javascript">' . "\n"; $output .= 'var client_id = \'' . $lwa_client_id . '\';' . "\n"; $output .= 'var popup = ' . $popup . ';' . "\n"; $output .= 'var login_success_url = \'' . tep_href_link('loginwithamazon.php', '', 'SSL') . '\';' . "\n"; $output .= 'function r(f){/in/.test(document.readyState)?setTimeout(\'r(\'+f+\')\',9):f()}' . "\n"; $output .= "\n r(function(){\n var amazon_root = document.createElement('div');\n amazon_root.setAttribute('id', 'amazon-root');\n document.body.appendChild(amazon_root);\n window.onAmazonLoginReady = function() {\n amazon.Login.setClientId(client_id);\n amazon.Login.setUseCookie(true);\n elements = document.getElementsByTagName('a');\n for(var i=0; i<elements.length; i++){\n if (elements[i] && elements[i].getAttribute('href') && elements[i].getAttribute('href').indexOf('logoff.php', elements[i].getAttribute('href').length - 10) !== -1) { \n elements[i].onclick = function() { \n amazon.Login.logout();\n }\n }\n }\n };\n (function(d) {\n var a = d.createElement('script'); a.type = 'text/javascript';\n a.async = true; a.id = 'amazon-login-sdk';\n a.src = 'https://api-cdn.amazon.com/sdk/login1.js';\n d.getElementById('amazon-root').appendChild(a);\n })(document);\n\n var loginWithAmazonButton = document.createElement('div');\n loginWithAmazonButton.setAttribute('id', 'LoginWithAmazon');\n loginWithAmazonButton.setAttribute('style', 'clear:both;float:right;cursor:pointer;');\n loginWithAmazonButton.innerHTML = '<img border=\"0\" alt=\"Login with Amazon\" src=\"https://images-na.ssl-images-amazon.com/images/G/01/lwa/btnLWA_gold_156x32.png\" width=\"156\" height=\"32\" />';\n\n var loginForm = \$('form[name=login]');\n if(loginForm.length > 0) {\n loginForm = loginForm[0];\n loginForm.parentNode.insertBefore(loginWithAmazonButton, loginForm.nextSibling);\n document.getElementById('LoginWithAmazon').onclick = function() {\n var loginOptions = {\n scope : 'profile',\n state: '" . $csrf_token . "',\n popup: popup,\n };\n amazon.Login.authorize(loginOptions, login_success_url);\n return false;\n }\n }\n var registerForm = \$('form[name=create_account]');\n if(registerForm.length > 0) {\n registerForm = registerForm[0];\n loginWithAmazonButton.setAttribute('style', 'clear:both;float:right;cursor:pointer;margin-top:10px;');\n \$(registerForm).append(loginWithAmazonButton);\n document.getElementById('LoginWithAmazon').onclick = function() {\n var loginOptions = {\n scope : 'profile',\n state: '" . $csrf_token . "',\n popup: popup,\n };\n amazon.Login.authorize(loginOptions, login_success_url);\n return false;\n }\n }\n });\n " . "\n"; $output .= '</script>' . "\n"; $oscTemplate->addBlock($output . "\n", $this->group); } }