Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // User database simulation
- var users = [];
- var defaultUser = {
- 'rights': 1, /* 0 - 3: 0 is banned, 1 is default, 2 is moderator, 3 is admin */
- 'activated': false,
- 'createdAt': null,
- 'updatedAt': null,
- 'username': null,
- 'userId': null,
- 'email': null,
- 'pass': null,
- 'profile': {
- 'sex': null,
- 'age': null,
- 'avatar': null,
- 'updatedAt': null,
- },
- 'messages': {
- 'inbox': [],
- 'outbox': [],
- 'trash': [],
- 'drafts': []
- }
- };
- var defaultMessage = {
- 'id': null,
- 'date': null,
- 'from': null,
- 'to': null,
- 'message': null
- };
- var userManagement = {
- 'register': function(username, email, pass){
- var user = $.extend({}, defaultUser);
- user.username = username;
- user.email = email;
- user.pass = pass;
- user.userId = username + '_' + Math.floor(Date.now() / 1000);
- // If everything is valid, register:
- // User database insert simulation
- users.push(user);
- console.log('Registered', user);
- },
- 'login': function(username, pass) {
- // User database query simulation
- for(var i = 0, l = users.length; i < l; i++) {
- var user = users[i];
- if(user.username === username) {
- if(user.pass === pass) {
- console.log('Logged in', user);
- } else {
- console.log('Pass incorrect');
- }
- } else {
- console.log('User not found');
- }
- }
- },
- 'forgotUsername': function(email) {
- // User database query simulation
- for(var i = 0, l = users.length; i < l; i++) {
- var user = users[i];
- if(user.email === email) {
- console.log('username ['+ user.username +'] send to ' + user.email);
- } else {
- console.log('User not found');
- }
- }
- },
- 'forgotPass': function(username) {
- // User database query simulation
- for(var i = 0, l = users.length; i < l; i++) {
- var user = users[i];
- if(user.username === username) {
- console.log('pass from user ['+ user.username +'] send to ' + user.email);
- } else {
- console.log('User not found');
- }
- }
- },
- 'getUserById': function(userId){
- var key;
- for(var i = 0, l = users.length; i < l; i++) {
- var user = users[i];
- if(user.userId === userId) {
- return user;
- }
- }
- return null;
- },
- 'getUserByUsername': function(username){
- for(var i = 0, l = users.length; i < l; i++) {
- var user = users[i];
- if(user.username === username) {
- return user;
- }
- }
- return null;
- }
- /* TODO: updateProfile, activate */
- }
- var message = {
- 'send': function(fromUserId, toUserId, msg){
- var sender = userManagement.getUserById(fromUserId);
- var receiver = userManagement.getUserById(toUserId);
- var message = $.extend({}, defaultMessage);
- message.id = fromUserId + '_' + Math.floor(Date.now() / 1000);
- message.from = sender.username;
- message.fromUserId = fromUserId;
- message.to = receiver.username
- message.toUserId = toUserId;
- message.message = msg;
- message.date = new Date();
- sender.messages.outbox.push(message);
- receiver.messages.inbox.push(message);
- }
- /* TODO: delete, move etc. */
- }
- userManagement.register('barry', 'barry@test.nl', 'bcf2ibc');
- userManagement.register('john', 'john@test.nl', 'bahjscb');
- userManagement.login('test', 'blabla'); // fail
- userManagement.login('barry', 'blabla'); // fail
- userManagement.login('barry', 'bcf2ibc'); // success
- userManagement.login('John', 'bahjscb'); // success
- //userManagement.forgotPass('barry');
- var barry = userManagement.getUserByUsername('barry');
- var john = userManagement.getUserByUsername('John');
- message.send(barry.userId, john.userId, 'My test message.');
- message.send(barry.userId, john.userId, 'You received my previous message?');
- message.send(john.userId, barry.userId, 'Yes I did received them.');
- console.log(users);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement