Anton Shestakov <av6@dwimlabs.net>, Sat, 02 Apr 2016 18:09:39 +0800
index: add a sidebar for controls (so far it's just the disconnect button)
js/register.js
Permissions: -rw-r--r--
// Generated by CoffeeScript 1.10.0 var ProfileData, RegistrationData, registerfn, savefn, extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }, hasProp = {}.hasOwnProperty; RegistrationData = (function(superClass) { extend(RegistrationData, superClass); function RegistrationData() { return RegistrationData.__super__.constructor.apply(this, arguments); RegistrationData.prototype.defaults = { RegistrationData.prototype.validate = function(attrs, options) { var ref, ref1, ref2, ref3, ref4; this.unset('username-errors'); this.unset('password1-errors'); this.unset('password2-errors'); if (((ref = attrs.username) != null ? ref : '').trim() === '') { this.set('username-errors', ['This field is required.']); if (((ref1 = attrs.password1) != null ? ref1 : '') === '') { this.set('password1-errors', ['This field is required.']); if (((ref2 = attrs.password1) != null ? ref2 : '') !== ((ref3 = attrs.password2) != null ? ref3 : '')) { this.set('password2-errors', ['Passwords must match.']); } else if (((ref4 = attrs.password2) != null ? ref4 : '') === '') { this.set('password2-errors', ['This field is required.']); return this.has('username-errors') || this.has('password1-errors') || this.has('password2-errors'); ProfileData = (function(superClass) { extend(ProfileData, superClass); return ProfileData.__super__.constructor.apply(this, arguments); ProfileData.prototype.defaults = { window.regData = new RegistrationData(); window.vcData = new ProfileData(); registerfn = function() { return X.register(regData.get('username').trim(), regData.get('password1')); var data, failcb, file, okcb, reader; fullname: vcData.get('fullname').trim(), nickname: vcData.get('nickname').trim() console.debug('vcard is set!', arguments); $('[data-step="vcard"]').addClass('uk-hidden'); return location.href = '/'; console.warn('vcard is NOT set!', arguments); return $('[data-msg="save-failed"]').removeClass('uk-hidden'); file = $('#avatar').get(0).files[0]; reader = new FileReader(); reader.onloadend = function() { return X.savevCard(data, okcb, failcb); return reader.readAsDataURL(file); return X.savevCard(data, okcb, failcb); window.regRivet = rivets.bind($('[data-form="registration"]'), { window.vcRivet = rivets.bind($('[data-form="vcard"]'), { window.X = new Tram.XMPPInterface(); X.on('register', function() { return $('[data-step="registration"]').removeClass('uk-hidden'); X.on('registered', function() { return $('[data-step="registration"]').addClass('uk-hidden'); X.on('regifail', function() { return $('[data-msg="registration-closed"]').removeClass('uk-hidden'); X.on('conflict', function() { return regData.set('username-errors', ['A user with this username already exists.']); X.on('notacceptable', function() { return $('[data-msg="registration-failed"]').removeClass('uk-hidden'); X.on('connected', function() { vcData.set('nickname', regData.get('username').trim()); $('[data-step="vcard"]').removeClass('uk-hidden'); return $('#fullname').focus(); $('[data-form="registration"], [data-form="vcard"]').each(function() { return $form.find('input').on('keydown', function(e) { if ((!this.required || this.value !== '') && e.keyCode === 13) { index = $form.find('input').index(this); $next = $form.find('input').eq(index + 1); if ($next.length !== 0) { return $form.find('button').trigger('click'); //# sourceMappingURL=register.js.map