paco_sako/js/todo.js

57 lines
1.3 KiB
JavaScript

var user = gun.user();
function UI(say, id){
var li = $('#' + id).get(0) || $('<li>').attr('id', id).appendTo('ul');
$(li).text(say);
};
function auth(alias, pass){
$('#message').text('Looking up alias "' + alias + '"...').show();
gun.get('~@' + alias).once(function(){
$('#message').text('Signing in as "' + alias + '"...').show();
user.auth(alias, pass, function (ack){
if (ack.err) {
$('#message').text(ack.err).show();
} else {
$('#message').hide();
$('#pass').val('');
$('#sign').hide();
$('#todo').show();
user.get('said').map().once(UI);
}
});
});
};
$('#up').on('click', function(e){
var alias = $('#alias').val();
var pass = $('#pass').val();
$('#message').text('Creating alias "' + alias + '"...').show();
user.create(alias, pass, function (ack){
if (ack.err) {
$('#message').text(ack.err).show();
} else {
auth(alias, pass);
}
});
});
$('#sign').on('submit', function(e){
e.preventDefault();
auth($('#alias').val(), $('#pass').val());
});
$('#said').on('submit', function(e){
e.preventDefault();
if(!user.is){ return }
user.get('said').set($('#say').val());
$('#say').val('');
});
$('#sign_out').on('click', function (){
$('ul').empty();
user.leave();
$('#sign').show();
$('#todo').hide();
});