Commit b5c6a79c authored by mntmn's avatar mntmn
Browse files

Merge branch 'mnt' of github.com:mntmn/spacedeck-open into mnt

parents 8e11b6c4 a92b915b
......@@ -196,27 +196,29 @@ SpacedeckUsers = {
this.password_reset_confirm_error = null;
this.password_reset_send = false;
if(password != password_confirmation) {
if (password != password_confirmation) {
this.password_reset_confirm_error = "Passwords do not match.";
return;
}
if(password.length < 5) {
if (password.length < 5) {
this.password_reset_confirm_error = "Password too short (must have at least 5 characters).";
return;
}
confirm_password_reset(password, this.reset_token, function(parsed,req) {
if(req.status==201){
if (req.status==201) {
alert("New password set successfully.");
this.active_view = "login";
} else {
alert("An unknown error occured.");
}
}.bind(this), function(req) {
if (req.status==404) {
var msg = "user not found";
alert("Error: Unknown user.");
} else {
var msg = "error: " + req.statusText;
alert("Error: "+req.statusText);
}
this.password_reset_confirm_error = msg;
}.bind(this));
},
......
......@@ -289,15 +289,10 @@ router.post('/password_reset_requests/:confirm_token/confirm', function(req, res
if (user) {
bcrypt.genSalt(10, (err, salt) => {
bcrypt.hash(password, salt, function(err, hash) {
user.password_hash = hash;
user.password_token = null;
user.save(function(err, updatedUser){
if (err) {
res.sendStatus(400);
} else {
res.sendStatus(201);
}
user.save().then(function(updatedUser) {
res.sendStatus(201);
});
});
});
......
......@@ -57,7 +57,7 @@
</div>
<div class="form-group">
<input class="input" id="user-password-confirmation" required type="password" v-model="signup_password_confirmation" placeholder="[[__("password_confirmation")]]">
<input class="input" id="user-password-confirmation" required type="password" v-model="signup_password_confirmation" placeholder="Repeat Password">
</div>
</div>
......@@ -98,8 +98,8 @@
</form>
</div>
<div class="content" v-if="password_reset_send==true">
<h4>[[__("password_confirmation")]]</h4>
[[__("password_check_inbox")]]
<h4>Reset Password</h4>
Please check your email inbox.
</div>
</div>
......@@ -110,11 +110,11 @@
<div class="tight">
<div class="form-group">
<input class="input" id="user-password" type="password" v-model="signup_password" placeholder="[[__("password")]]">
<input class="input" id="user-password" type="password" v-model="signup_password" placeholder="New Password">
</div>
<div class="form-group">
<input class="input" id="user-password" type="password" v-model="signup_password_confirmation" placeholder="[[__("password_confirmation")]]">
<input class="input" id="user-password" type="password" v-model="signup_password_confirmation" placeholder="Repeat Password">
</div>
</div>
......
<div class="modal" v-if="active_modal == 'create-space'" v-cloak>
<div class="modal-wrapper">
<div class="modal-dialog">
<button type="button" class="btn btn-icon btn-light btn-round close" v-on="click : close_modal()">
<span class="icon icon-cross-1"></span>
</button>
<div class="modal-content">
<div class="modal-body labels-inline">
<div class="modal-section p-5">
What would you like to create?
<div>
<input type="text" v-model="create_space_title" placeholder="Title">
</div>
<div>
<button class="btn" v-on="click: create_space('space','whiteboard')">Whiteboard</button>
</div>
<div>
<button class="btn" v-on="click: create_space('space','collection')">Note Collection</button>
</div>
<div>
<button class="btn" v-on="click: create_space('space','article')">Article</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="modal" v-if="active_modal == 'login'" v-cloak>
<div class="modal-wrapper">
<div class="modal-dialog">
<button type="button" class="btn btn-icon btn-light btn-round close" v-on:click="close_modal()">
<span class="icon icon-cross-1"></span>
</button>
<div class="modal-content">
<div class="modal-body">
<div class="modal-section no-b">
<div id="account-forms-modal">
<div v-show="active_modal_view != 'signup'">
<div class="content">
<form>
<h4>Login</h4>
<div class="tight">
<div class="form-group">
<input class="input" type="text" focus-me="true" v-model="login_email" placeholder="Email">
</div>
<div class="form-group">
<input class="input" type="password" v-model="login_password" placeholder="Password">
</div>
</div>
<span type="submit" class="btn btn-primary btn-xl btn-block btn-round" v-on:click="login_submit_modal(login_email, login_password, $event)">
<span v-show="!loading_user">Log In</span>
<span v-show="loading_user">Logging in…</span>
</span>
<div class="center alert alert-danger" v-if="login_error" v-model="login_error"></div>
<span class="btn btn-link btn-block" v-on:click="active_modal_view='signup'">Create a new account</span>
</form>
</div>
</div>
<div v-show="active_modal_view == 'signup'">
<div class="content">
<form>
<h4>Sign Up</h4>
<div class="tight">
<div class="form-group">
<input class="input" type="text" id="user-name" v-model="name" placeholder="Name">
</div>
<div class="form-group">
<input class="input" type="email" id="user-email" v-model="email" placeholder="Email">
</div>
<div class="form-group">
<input class="input" id="user-password" type="password" v-model="password" placeholder="Password">
</div>
<div class="form-group">
<input class="input" id="user-password-confirmation" type="password" v-model="password_confirmation" placeholder="Repeat Password">
</div>
</div>
<div class="text-center" style="margin-top: -7px; margin-bottom: 30px;"><small>By signing up you agree to our <a href="/terms.html" target="_blank">TOS</a> and <a href="/privacy.html" target="_blank">Privacy Policy.</a></small><br/>
</div>
<span class="btn btn-primary btn-xl btn-round btn-block" v-on:click="signup_submit_modal($event, name, email, password, password_confirmation)">
<span v-if="!creating_user">Sign Up</span>
<span v-if="creating_user">Signing Up…</span>
</span>
<div class="center alert alert-danger" v-if="signup_error">{{signup_error}}</div>
<span class="btn btn-link btn-block" v-on:click="active_modal_view='login'">I already have an account</span>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="modal" v-if="active_modal == 'pdfoptions'" v-cloak>
<div class="modal-wrapper">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="btn btn-icon btn-light btn-round close" v-on:click=" close_modal()">
<span class="icon icon-cross-1"></span>
</button>
</div>
<div class="modal-body">
<p class="lead text-center">PDF Import</p>
<div class="plans-box">
<table class="plans-table">
<tr>
<td>
<p>Thumbnail and Download Link</p>
<button class="btn btn-primary btn-round btn-sm" v-on:click=" approve_pdf_upload($event, null, 'classic')">Classic Import</button>
</td>
<td>
<p>Each Page as Image, displayed as Grid</p>
<button class="btn btn-primary btn-round btn-sm" v-on:click=" approve_pdf_upload($event, pdf_export_with_zones, 'grid')">Grid Import</button><br>
<input type="checkbox" v-model="pdf_export_with_zones" /> With Zones?
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="modal" v-if="active_modal == 'space-share'" v-cloak>
<div class="modal-wrapper">
<div class="modal-dialog">
<button type="button" class="btn btn-icon btn-light btn-round close" v-on="click : close_modal()">
<span class="icon icon-cross-1"></span>
</button>
<div class="modal-content">
<div class="modal-body">
<div class="modal-section no-b">
<p class="lead">Share &quot;{{active_space.name}}&quot;</p>
</div>
<div class="modal-section no-b">
<p class="lead">Or Copy &amp; Paste this Link</p>
<p>
<span class="input">{{share_base_url}}{{active_space._id}}</span>
</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="modal" v-if="active_modal == 'support'" v-cloak>
<div class="modal-wrapper">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="btn btn-icon btn-light btn-round close" v-on:click="close_modal()">
<span class="icon icon-cross-1"></span>
</button>
<h4 class="modal-title">Send Feedback</h4>
</div>
<div class="modal-body">
<div class="modal-section">
<p>
Have a question, feedback or an idea for improvement? Send us a quick message using the box below and we'll get back to you as soon as possible.
</p>
<div class="form-group">
<textarea v-model="feedback_text" class="input" autofocus></textarea>
</div>
<div class="form-group">
<button class="btn btn-primary btn-round btn-sm" v-on:click="send_feedback(feedback_text)">Send Feedback</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
......@@ -77,8 +77,6 @@
{% include "./partials/modal/access.html" %}
{% include "./partials/modal/folder-settings.html" %}
{% include "./partials/modal/support.html" %}
{% include "./partials/modal/login.html" %}
</body>
<script type="text/javascript">
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment