Chromium Code Reviews| Index: google_apis/test/embedded_setup_chromeos.html |
| diff --git a/google_apis/test/embedded_setup_chromeos.html b/google_apis/test/embedded_setup_chromeos.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..fc95c835ae88d401410ee5c44e1669e2339855c1 |
| --- /dev/null |
| +++ b/google_apis/test/embedded_setup_chromeos.html |
| @@ -0,0 +1,97 @@ |
| +<!-- <HTML> --> |
|
Nikita (slow)
2015/04/07 12:37:48
Does it have to be in comment?
Dmitry Polukhin
2015/04/07 13:24:40
Done.
|
| +<HEAD> |
|
Nikita (slow)
2015/04/07 12:37:48
nit: lowercase here and below
Dmitry Polukhin
2015/04/07 13:24:40
Done.
|
| +<SCRIPT> |
| +var gaia = gaia || {}; |
| +gaia.chromeOSLogin = {}; |
| + |
| +gaia.chromeOSLogin.parent_webview_signin_url_ = 'chrome://chrome-signin'; |
| +gaia.chromeOSLogin.parent_webview_oob_url_ = 'chrome://oobe'; |
| +gaia.chromeOSLogin.parent_webview_ = undefined; |
| +gaia.chromeOSLogin.parent_webview_url_ = undefined; |
| + |
| +gaia.chromeOSLogin.registerHtml5Listener = function() { |
| + var onMessage = function(e) { |
| + if (e.origin == gaia.chromeOSLogin.parent_webview_signin_url_ || |
| + e.origin == gaia.chromeOSLogin.parent_webview_oob_url_) { |
| + gaia.chromeOSLogin.parent_webview_ = e.source; |
| + gaia.chromeOSLogin.parent_webview_url_ = e.origin; |
| + } |
| + }; |
| + window.addEventListener('message', onMessage); |
| +} |
| + |
| +gaia.chromeOSLogin.attemptLogin = function(email, password) { |
| + var msg = { |
| + 'method': 'attemptLogin', |
| + 'email': email, |
| + 'password': password, |
| + }; |
| + gaia.chromeOSLogin.parent_webview_.postMessage(msg, |
| + gaia.chromeOSLogin.parent_webview_url_); |
| +}; |
| + |
| +gaia.chromeOSLogin.backButton = function(show) { |
| + var msg = { |
| + 'method': 'backButton', |
| + 'show': show, |
| + }; |
| + gaia.chromeOSLogin.parent_webview_.postMessage(msg, |
| + gaia.chromeOSLogin.parent_webview_url_); |
| +}; |
| + |
| +function goNext() { |
| + if (!document.getElementById("page1").hidden) { |
| + document.getElementById("page1").hidden = true; |
| + document.getElementById("page2").hidden = false; |
| + history.pushState({}, "", window.location.pathname + "#challengepassword"); |
| + |
| + request = new XMLHttpRequest(); |
| + request.open('POST', '/_/embedded/lookup/accountlookup', true); |
| + request.onreadystatechange = function() { |
| + if (request.readyState == 4 && request.status == 200) { |
|
Nikita (slow)
2015/04/07 12:37:48
nit: "4" - extract constant.
Dmitry Polukhin
2015/04/07 13:24:40
Discussed and decided to keep as is in tests. 200
|
| + if (request.getResponseHeader("continue")) |
| + location.assign(request.getResponseHeader("continue")); |
| + } |
| + }; |
| + var email = document.getElementById("identifier").value; |
| + request.send('identifier=' + encodeURIComponent(email)); |
| + |
| + gaia.chromeOSLogin.backButton(true); |
| + } else if (!document.getElementById("page2").hidden) { |
| + var email = document.getElementById("identifier").value; |
| + var password = document.getElementById("password").value; |
| + |
| + request = new XMLHttpRequest(); |
| + request.open('POST', '/_/embedded/signin/challenge', true); |
| + request.onreadystatechange = function() { |
| + if (request.readyState == 4 && request.status == 200) { |
| + history.pushState({}, "", window.location.pathname + "#close"); |
| + } |
| + }; |
| + request.send('identifier=' + encodeURIComponent(email)); |
| + |
| + gaia.chromeOSLogin.attemptLogin(email, password); |
|
Nikita (slow)
2015/04/07 12:37:48
should follow "B-2" scenario
* Call clearOldAttem
Dmitry Polukhin
2015/04/07 13:24:40
Done.
|
| + } |
| +} |
| + |
| +function onLoad() { |
| + gaia.chromeOSLogin.registerHtml5Listener(); |
| + document.getElementById("page1").hidden = false; |
| + history.replaceState({}, "", window.location.pathname + "#identifier"); |
| +} |
| + |
| +</script> |
| +</head> |
| +<body onload='onLoad();'> |
| + Local Auth Server:<br> |
| + <div id="page1" hidden> |
| + <input id="identifier" name="identifier" type="email" spellcheck="false" autocomplete="off" formnovalidate=""> |
| + </div> |
| + <div id="page2" hidden> |
| + Password |
| + <input id="password" name="password" type="password" spellcheck="false" autocomplete="off" formnovalidate=""> |
| + </div><br> |
| + <div id='nextButton' onclick='goNext();'>Next</div> |
| +</body> |
| +</html> |