Skip to content

Commit

Permalink
If no users, show setup.html page
Browse files Browse the repository at this point in the history
  • Loading branch information
Ilya Radchenko committed Feb 18, 2015
1 parent 87a66a4 commit eb4db73
Show file tree
Hide file tree
Showing 3 changed files with 129 additions and 14 deletions.
2 changes: 1 addition & 1 deletion lib/models/user.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ var bcrypt = require('bcrypt');
var InviteCode = require('./invite');

var UserSchema = new Schema({
email: { type: String, required: true, index: true },
email: { type: String, required: true, index: true, unique: true },
salt: { type: String, required: true },
hash: { type: String, required: true },
resetPasswordToken: String,
Expand Down
32 changes: 19 additions & 13 deletions lib/routes/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ var TEST_AND_DEPLOY = 'TEST_AND_DEPLOY';
/*
* GET home page dashboard
*/

exports.index = function(req, res){
// Work-around for Safari/Express etags bug on cookie logout.
// Without it, Safari will cache the logged-in version despite logout!
Expand All @@ -47,18 +46,25 @@ exports.index = function(req, res){
});
}

jobs.latestJobs(req.user, true, function (err, jobs) {
var availableProviders = Object.keys(common.userConfigs.provider).map(function(k){
return common.userConfigs.provider[k]
})

res.render('index.html', {
jobs: jobs,
availableProviders: availableProviders,
flash: req.flash(),
version: pjson.version
})
})
User.find(function (err, users) {
if (!users || !users.length) {
res.render('setup.html', {});
}
else {
jobs.latestJobs(req.user, true, function (err, jobs) {
var availableProviders = Object.keys(common.userConfigs.provider).map(function(k){
return common.userConfigs.provider[k];
});

res.render('index.html', {
jobs: jobs,
availableProviders: availableProviders,
flash: req.flash(),
version: pjson.version
});
});
}
});
};

exports.setConfig = function (req, res) {
Expand Down
109 changes: 109 additions & 0 deletions lib/views/setup.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
{% extends "base.html" %}

{% block bodyContent %}
<div class="row-fluid" ng-app="setup" ng-controller="Setup" class="ng-cloak">
{% for messages in flash %}
{% for message in messages %}
<div class="alert alert-info">{{ message|raw }}</div>
{% endfor %}
{% endfor %}

<h3>Setup Strider</h3>

<div class="row-fluid">
<div class="span6">
<form class="strider-basics">
<fieldset>
<legend>Basics</legend>

<label for="basic-servername">Server Name</label>
<input id="basic-servername" type="text" placeholder="Publically visible url" required=true>
<span class="help-block">Publicaly accessible URL for this instance of Strider, e.g. ci.mydomain.com</span>
</fieldset>
</form>
</div>

<div class="span6">
<form class="strider-db">
<fieldset>
<legend>Database</legend>

<label>Host</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>

<label>Port</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>

<label>User</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>

<label>Password</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>
</fieldset>
</form>
</div>
</div>

<div class="row-fluid">
<div class="span6">
<form class="strider-db">
<fieldset>
<legend>Email</legend>

<label>Host</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>

<label>Port</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>

<label>User</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>

<label>Password</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>

<label>From Email Address</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>
</fieldset>
</form>
</div>

<div class="span6">
<form class="strider-admin">
<fieldset>
<legend>Admin User</legend>

<label>Email</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>

<label>Password</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>

<label>Password Confirm</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>
</fieldset>
</form>
</div>
</div>

<div class="row-fluid">
<div class="span12">
<div class="form-actions">
<button type="submit" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
{% endblock %}

0 comments on commit eb4db73

Please sign in to comment.