Newer
Older
Shane Tomlinson
committed
/*globals: BrowserIDNetwork: true */
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is Mozilla BrowserID.
*
* The Initial Developer of the Original Code is Mozilla.
* Portions created by the Initial Developer are Copyright (C) 2011
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
$(function() {
if ($('#emailList')) {
display_saved_ids();
}
});
function display_saved_ids()
{
var emails = {};
BrowserIDIdentities.checkAuthenticationAndSync(function(authenticated) {
if (authenticated) {
$("body").addClass("authenticated");
emails = getEmails();
displayEmails();
}
Shane Tomlinson
committed
});
Shane Tomlinson
committed
function displayEmails() {
$('#cancellink').click(function() {
if (confirm('Are you sure you want to cancel your account?')) {
BrowserIDNetwork.cancelUser(function() {
Lloyd Hilaiel
committed
document.location="/";
});
Shane Tomlinson
committed
}
});
Shane Tomlinson
committed
$("#emailList").empty();
_(emails).each(function(data, e) {
var block = $("<div>").addClass("emailblock");
var label = $("<div>").addClass("email").text(e);
var meta = $("<div>").addClass("meta");
Shane Tomlinson
committed
var pub = $("<div class='keyblock'>").text(data.pub);
pub.hide();
var linkblock = $("<div>");
var puba = $("<a>").text("[show public key]");
// var priva = $("<a>").text("[show private key]");
puba.click(function() {pub.show()});
// priva.click(function() {priv.show()});
linkblock.append(puba);
// linkblock.append(" / ");
// linkblock.append(priva);
var deauth = $("<button>").text("Forget this Email");
meta.append(deauth);
deauth.click(function() {
Lloyd Hilaiel
committed
// remove email from server
Shane Tomlinson
committed
BrowserIDNetwork.removeEmail(e, display_saved_ids);
Lloyd Hilaiel
committed
});
Shane Tomlinson
committed
var d = new Date(data.created);
var datestamp = $("<div class='date'>").text("Signed in at " + d.toLocaleString());
Shane Tomlinson
committed
meta.append(datestamp);
meta.append(linkblock);
block.append(label);
block.append(meta);
// block.append(priv);
block.append(pub);
$("#emailList").append(block);
});
}