Anton Shestakov <av6@dwimlabs.net>, Sun, 29 May 2016 22:32:42 +0800
messages: have a default Message stamp ("now"), use it as a shortcut
Messages collection already has a comparator(), _splittable() and _foldable()
that all depend on a defined stamp.
register.html
Permissions: -rw-r--r--
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Registration
</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.26.3/css/uikit.min.css" integrity="sha384-xXvgKX0nqIAdfmZif+SmbHMmxUu7U5VBRN1ZHBtvC78A4FR13hYO2ZGox0fuPw57" crossorigin="anonymous"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.26.3/css/components/progress.min.css" integrity="sha384-bIJ95i9/8BfHJp1jB2T0Z8G87VlsMIvRaEK5RYT7eym8N8sbeVEj/GvyaxKBLSdz" crossorigin="anonymous"> <link rel="stylesheet" href="/css/tram-im.css"> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js" integrity="sha384-rY/jv8mMhqDabXSo+UCggqKtdmBfd3qC2/KvyTDNQ6PcUJXaxK1tMepoQda4g5vB" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js" integrity="sha384-FZY+KSLVXVyc1qAlqH9oCx1JEOlQh6iXfw3o2n3Iy32qGjXmUPWT9I0Z9e9wxYe3" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.3.3/backbone-min.js" integrity="sha384-NNt9ocJfZhIg2c5PbM5G2a3tTaeXhEfqCHWHNB7htzaWKn8MwFkzVyGdzLA8QMX7" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/rivets/0.8.1/rivets.bundled.min.js" integrity="sha384-KIB/b1UL6HC6He/9mc3AYNV0GjyVXGWnwqbSo3hoD6BOYi+XPtqjLtZ99Mevz4I4" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.26.3/js/uikit.min.js" integrity="sha384-6OYggLGXv4OPaVsh9O/0baGeEYFu1r1FE3+sNtPeDk6JofnNNZb2sHKzUa7wum04" crossorigin="anonymous"></script> <script src="/vendor/strophejs/strophe.min.js"></script> <script src="/vendor/strophejs-plugins/register/strophe.register.js"></script> <script src="/vendor/strophejs-plugins/vcard/strophe.vcard.js"></script> <div class="uk-progress uk-progress-mini page-progress" data-app="progress" rv-hide="model:progress | eq undefined"> <div class="uk-progress-bar" rv-style="model:progress | fn view.getStyle"></div> <div class="smart-container"> <div class="uk-alert" data-step="noscript"> <p class="uk-text-center">This page needs JavaScript to work.
</p> <small>It uses resources from cdnjs.cloudflare.com.
</small> $('[data-step="noscript"]').addClass('uk-hidden'); <div class="uk-alert uk-alert-danger uk-hidden" data-msg="registration-closed">Registration is closed at the moment.
</div> <div class="uk-form uk-form-horizontal uk-hidden" data-step="registration" data-form="registration"> <div class="uk-form-row"> <label for="username" class="uk-form-label">Username
</label> <div class="uk-form-controls"> <input id="username" type="text" class="uk-width-1-1" required autofocus rv-value="form:username" rv-class-uk-form-danger="form:username-errors"> <div class="uk-text-danger" rv-each-error="form:username-errors">{ error }
</div> <div class="uk-form-row"> <label for="password1" class="uk-form-label">Password
</label> <div class="uk-form-controls"> <input id="password1" type="password" class="uk-width-1-1" required rv-value="form:password1" rv-class-uk-form-danger="form:password1-errors"> <div class="uk-text-danger" rv-each-error="form:password1-errors">{ error }
</div> <div class="uk-form-row"> <label for="password2" class="uk-form-label">Confirmation
</label> <div class="uk-form-controls"> <input id="password2" type="password" class="uk-width-1-1" required rv-value="form:password2" rv-class-uk-form-danger="form:password2-errors"> <div class="uk-text-danger" rv-each-error="form:password2-errors">{ error }
</div> <div class="uk-form-row"> <div class="uk-form-controls"> <div class="uk-alert uk-alert-danger uk-hidden" data-msg="registration-failed">Unspecified error, sorry.
</div> <button type="button" class="uk-button uk-button-primary" rv-on-click="register">Register
</button> <a class="uk-float-right uk-button uk-button-link" href="/">Log in
</a> <div class="uk-form uk-form-horizontal uk-hidden" data-step="profile" data-form="profile"> <div class="uk-form-row"> <label for="fullname" class="uk-form-label">Full Name
</label> <div class="uk-form-controls"> <input id="fullname" class="uk-width-1-1" type="text" rv-value="form:fullname"> <div class="uk-form-row"> <label for="nickname" class="uk-form-label">Nickname
</label> <div class="uk-form-controls"> <input id="nickname" class="uk-width-1-1" type="text" rv-value="form:nickname"> <div class="uk-form-row"> <label for="avatar" class="uk-form-label">Avatar
</label> <div class="uk-form-controls"> <input id="avatar" type="file" accept="image/*" value=""> <div class="uk-text-danger" rv-each-error="form:avatar-errors">{ error }
</div> <li>has width and height between 32 and 96 pixels
</li> <li>ideally is a square image
</li> <li>is less than 64k in size
</li> <li>is in a widespread format (png, gif or jpeg)
</li> <div class="uk-form-row"> <div class="uk-form-controls"> <button class="uk-button uk-button-primary" rv-on-click="save">Save
</button> <button class="uk-button uk-button-danger uk-float-right" rv-on-click="cancel">Cancel registration
</button> <div class="uk-alert uk-alert-danger uk-hidden" data-msg="save-failed">Couldn't save profile.
</div> <script src='/js/tram.js'></script> <script src='/js/rivets.js'></script> <script src='/js/xmpp.js'></script> <script src='/js/progress.js'></script> <script src='/js/forms.js'></script> <script src='/config.js'></script> <script src='/js/register.js'></script>