Skip to content

Instantly share code, notes, and snippets.

@akd3vs
Created June 6, 2012 05:03
Show Gist options
  • Save akd3vs/2880024 to your computer and use it in GitHub Desktop.
Save akd3vs/2880024 to your computer and use it in GitHub Desktop.
Titan
(function($){
$.fn.titan = function(){
var $parent = this,
isLoggin = false;
this.user = {
data:{},
validate: function(user,password,fn){
var it = this;
socket.user.emit('validate',{u:user,p:password},function(data){
if(data.response && data.success == true){
it.login(data.response.uid,data.response.user);
//nos logueamos con el navegador
$.cookie('titandata',data.session);
//recibimos y enviamos el callback de events.login
fn(true);
}else{
utils.alert(data.reazon,2);
}
});
},
registry: function(user,email,password,fn){
var it = this;
socket.user.emit('registry',{u:user,e:email,p:password},function(result,data){
if(result == true){
if(data.validate == true){
utils.alert('Debes validar tu correo electronico para poder ingresar.');
}else{
it.login(data.uid,data.u);
fn(true);
}
}else{
console.log(data);
var strAlert = [];
if(data.e)
strAlert[strAlert.length] = 'email';
if(data.u)
strAlert[strAlert.length] = 'nombre de usuario';
var strAlert_ = strAlert.join(' y ');
utils.alert(strAlert_+' en uso');
}
});
},
auth: function(hash,cb){
var it = this;
socket.user.emit('auth',{s:hash}, function(data){
if(data.result == true){
it.login(data.uid,data.user);
$parent.content.getIndex();
}
});
},
login: function(uid,user){
this.data = {
uid:uid,
user:user
}
isLoggin = true;
}
},
this.events = {
//todo inicia aqui
login: function(e,user,password,fn){
//validamos
$parent.user.validate(user, password,function(data){
//aplicamos un callback a user.validate
//y retornamos el callback de jquery para que se aplique
fn(data);
});
},
registry: function(e,user,email,password,fn){
$parent.user.registry(user,email,password,function(data){
fn(data)
});
},
auth: function(session,fn){
$parent.user.auth(session, function(data){
fn(data);
});
}
},
this.content = {
getIndex: function(){
if(isLoggin){
console.log($parent.user.data);
socket.blog.emit('getPage',{part:'blog-index.jade',s:$.cookie('titandata'),u:$parent.user.data.uid},function(data){
//console.log(data);
$('#content-wrapper').html(data.html);
});
}
}
};
return this;
}
})(jQuery);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment