diff --git a/dal.coffee b/dal.coffee
index 76d2c6c..f85879b 100644
--- a/dal.coffee
+++ b/dal.coffee
@@ -39,13 +39,12 @@ module.exports =
Account
.findOne()
.where('_id', username)
- .select('nickname details is_new firstrun updated migrate')
+ .select('nickname is_new firstrun updated migrate')
.exec cb
update_settings: (username, settings, cb) ->
Account.update _id: username,
nickname: settings.nickname
- details: settings.details
firstrun: settings.firstrun
migrate: settings.migrate,
cb
diff --git a/static/js/models.js b/static/js/models.js
index 3660990..c2b85bd 100644
--- a/static/js/models.js
+++ b/static/js/models.js
@@ -222,7 +222,7 @@ Status = Backbone.Model.extend({
});
-// Represents a user's account details and settings
+// Represents a user's account settings
// This model is a singleton -- there should be only
// one instance of it per account.
Settings = Backbone.Model.extend({
diff --git a/static/js/templates.min.js b/static/js/templates.min.js
index 2c002f0..ee4351c 100644
--- a/static/js/templates.min.js
+++ b/static/js/templates.min.js
@@ -1 +1 @@
-(function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.course=a(function(a,b,c,d,e){function l(a,b){return'\n \n \n Archive Done \n \n \n \n Edit Course \n \n \n \n Add Assignment \n \n '}function m(a,b){var d="",e,f;return d+='\n
',f=c.details,f?e=f.call(a,{hash:{}}):(e=a.details,e=typeof e===i?e():e);if(e||e===0)d+=e;return d+="
\n ",d}function o(a,b){return"\n \n\n
\n \n \n\n
\n ",g=b.title,h=c.keyword,g=h?h.call(b,g,{hash:{}}):l.call(b,"keyword",g,{hash:{}});if(g||g===0)f+=g;f+=" ",h=c.title,h?g=h.call(b,{hash:{}}):(g=b.title,g=typeof g===i?g():g),f+=j(g)+' \n \n \n\n
\n ',g=b.date,h=c.format_date,g=h?h.call(b,g,{hash:{}}):l.call(b,"format_date",g,{hash:{}});if(g||g===0)f+=g;f+='\n \n\n
\n ',g=b.details,g=c["if"].call(b,g,{hash:{},inverse:k.program(5,o,e),fn:k.program(3,n,e)});if(g||g===0)f+=g;return f+='\n \n\n
\n \n \n \n ',f}),b.date_assignment=a(function(a,b,c,d,e){function m(a,b){return" checked "}function n(a,b){var d="",e,f;d+='\n
Show details \n
',f=c.details,f?e=f.call(a,{hash:{}}):(e=a.details,e=typeof e===i?e():e);if(e||e===0)d+=e;return d+="
\n ",d}function o(a,b){return"\n
No additional information \n "}c=c||a.helpers;var f="",g,h,i="function",j=this,k=c.helperMissing,l=this.escapeExpression;f+='
\n
\n ',g=b.title,h=c.keyword,g=h?h.call(b,g,{hash:{}}):k.call(b,"keyword",g,{hash:{}});if(g||g===0)f+=g;f+=" ",h=c.title,h?g=h.call(b,{hash:{}}):(g=b.title,g=typeof g===i?g():g),f+=l(g)+' \n \n \n
\n ',h=c.course,h?g=h.call(b,{hash:{}}):(g=b.course,g=typeof g===i?g():g),f+=l(g)+' \n \n \n
',g=b.date,h=c.format_date,g=h?h.call(b,g,{hash:{}}):k.call(b,"format_date",g,{hash:{}});if(g||g===0)f+=g;f+=' \n\n
\n ',g=b.details,g=c["if"].call(b,g,{hash:{},inverse:j.program(5,o,e),fn:j.program(3,n,e)});if(g||g===0)f+=g;return f+='\n \n\n
\n \n \n \n ',f}),b.dates=a(function(a,b,c,d,e){function m(a,b){var d="",e;d+="\n ",e=a.show_archive_button,e=c["if"].call(a,e,{hash:{},inverse:i.noop,fn:i.program(2,n,b)});if(e||e===0)d+=e;return d+="\n ",d}function n(a,b){var d="",e;d+='\n
\n \n Archive Done \n \n ',d}function o(a,b){return"disabled"}function p(a,b){return'\n
\n \n Add Assignment \n \n '}function q(a,b){var d="",e,f;return d+='\n
\n
',f=c.exclamation,f?e=f.call(a,{hash:{}}):(e=a.exclamation,e=typeof e===j?e():e),d+=k(e)+" No work to do here! \n
\n
\n Go outside and play or something.\n
\n
\n ",d}function r(a,b){return'\n
\n \n \n Done \n Title \n Course \n Due Date \n Details \n Edit \n \n \n \n \n
\n '}c=c||a.helpers;var f="",g,h,i=this,j="function",k=this.escapeExpression,l=c.helperMissing;f+='
\n\n ',h=c.title,h?g=h.call(b,{hash:{}}):(g=b.title,g=typeof g===j?g():g),f+=k(g)+" ",g=b.range,h=c.range_date,g=h?h.call(b,g,{hash:{}}):l.call(b,"range_date",g,{hash:{}});if(g||g===0)f+=g;f+=" \n ",g=b.empty,g=c.unless.call(b,g,{hash:{},inverse:i.noop,fn:i.program(1,m,e)});if(g||g===0)f+=g;f+="\n ",g=b.show_archive_button,g=c["if"].call(b,g,{hash:{},inverse:i.noop,fn:i.program(5,p,e)});if(g||g===0)f+=g;f+="\n \n ",g=b.empty,g=c["if"].call(b,g,{hash:{},inverse:i.program(9,r,e),fn:i.program(7,q,e)});if(g||g===0)f+=g;return f+="\n ",f}),b.edit_assignment=a(function(a,b,c,d,e){function m(a,b){var d="",e;d+="\n ",e=a.details,e=c["if"].call(a,e,{hash:{},inverse:i.noop,fn:i.program(2,n,b)});if(e||e===0)d+=e;return d+="\n ",d}function n(a,b){return'\n
\n note: This assignment came from the school website, so it contains HTML (a computer language). I didn't convert it to "normal text" because formatting would be lost. Feel free to replace it.\n \n '}function o(a,b){return'\n
\n '}function p(a,b){var d="",e,f;d+='\n
\n
Course \n
\n \n ',e=a.course,f=c.course_options,e=f?f.call(a,e,{hash:{}}):j.call(a,"course_options",e,{hash:{}});if(e||e===0)d+=e;return d+="\n \n
\n
\n ",d}c=c||a.helpers;var f="",g,h,i=this,j=c.helperMissing,k="function",l=this.escapeExpression;f+='
',f}),b.edit_course=a(function(a,b,c,d,e){c=c||a.helpers;var f="",g,h,i="function",j=this.escapeExpression;return f+='
\n \n \n
Title\n \n
\n \n \n
\n
\n \n
Teacher\n \n
\n \n \n
\n
\n \n
\n
Uh oh! Something went wrong, lol.
\n
\n
\n \n ',f}),b.home=a(function(a,b,c,d,e){c=c||a.helpers;var f="",g,h,i=c.helperMissing,j=this.escapeExpression;return f+='
\n
Miss me? \n
\n ',h=c.personalize,g=h?h.call(b,"You know the drill %n, just click on a link to the left.",{hash:{}}):i.call(b,"personalize","You know the drill %n, just click on a link to the left.",{hash:{}}),f+=j(g)+"\n
\n
← \n
",f}),b.settings=a(function(a,b,c,d,e){function l(a,b){return" checked "}c=c||a.helpers;var f="",g,h,i="function",j=this.escapeExpression,k=this;f+='
\n \n \n
Nickname \n
\n \n This doesn’t affect anything other than your ego. \n
\n
\n \n
Details by default \n
\n
\n \n This is the just the default when you log in. You can toggle details from the Options menu whenever you want.\n
\n
\n
\n \n ',f}),b.sidebar_courses=a(function(a,b,c,d,e){function k(a,b){var d="",e,f;return d+='\n
\n ',f=c.title,f?e=f.call(a,{hash:{}}):(e=a.title,e=typeof e===h?e():e),d+=i(e)+" \n \n",d}c=c||a.helpers;var f="",g,h="function",i=this.escapeExpression,j=this;f+='\n',g=b.courses,g=c.each.call(b,g,{hash:{},inverse:j.noop,fn:j.program(1,k,e)});if(g||g===0)f+=g;return f+='\n
\n \n Add \n ',f}),b.sidebar_dates=a(function(a,b,c,d,e){function l(a,b){var d="",e,f,g;d+='\n
\n ',e=a.end,f=a.start,g=c.remaining,e=g?g.call(a,f,e,{hash:{}}):j.call(a,"remaining",f,e,{hash:{}});if(e||e===0)d+=e;return d+=" ",g=c.name,g?e=g.call(a,{hash:{}}):(e=a.name,e=typeof e===h?e():e),d+=i(e)+" \n \n",d}c=c||a.helpers;var f="",g,h="function",i=this.escapeExpression,j=c.helperMissing,k=this;f+='\n',g=b.dates,g=c.each.call(b,g,{hash:{},inverse:k.noop,fn:k.program(1,l,e)});if(g||g===0)f+=g;return f}),b.status=a(function(a,b,c,d,e){function m(a,b){var d="",e,f;return d+='
',f=c.link_text,f?e=f.call(a,{hash:{}}):(e=a.link_text,e=typeof e===i?e():e),d+=j(e),d}function n(a,b){return'\n × \n '}c=c||a.helpers;var f="",g,h,i="function",j=this.escapeExpression,k=c.helperMissing,l=this;f+='
\n ',h=c.heading,h?g=h.call(b,{hash:{}}):(g=b.heading,g=typeof g===i?g():g),f+=j(g)+" \n ",g=b.message,h=c.personalize,g=h?h.call(b,g,{hash:{}}):k.call(b,"personalize",g,{hash:{}});if(g||g===0)f+=g;f+=" ",g=b.addable,g=c["if"].call(b,g,{hash:{},inverse:l.noop,fn:l.program(1,m,e)});if(g||g===0)f+=g;f+=" \n ",g=b.closable,g=c["if"].call(b,g,{hash:{},inverse:l.noop,fn:l.program(3,n,e)});if(g||g===0)f+=g;return f+="\n
",f})})()
\ No newline at end of file
+(function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.course=a(function(a,b,c,d,e){function l(a,b){return'\n
\n \n Archive Done \n \n
\n \n Edit Course \n \n
\n \n Add Assignment \n \n '}function m(a,b){var d="",e,f;return d+='\n
\n
',f=c.exclamation,f?e=f.call(a,{hash:{}}):(e=a.exclamation,e=typeof e===i?e():e),d+=j(e)+" No work to do here! \n
\n
\n You've completed ",f=c.archived,f?e=f.call(a,{hash:{}}):(e=a.archived,e=typeof e===i?e():e),d+=j(e)+" assignments in this course to date. Click Options > Show archived to show them.\n \n Or just go outside and play or something.\n
\n
\n ",d}function n(a,b){return'\n
\n \n \n Done \n Title \n Due Date \n Details \n Edit \n \n \n \n \n
\n '}c=c||a.helpers;var f="",g,h,i="function",j=this.escapeExpression,k=this;f+='
\n\n ',h=c.title,h?g=h.call(b,{hash:{}}):(g=b.title,g=typeof g===i?g():g),f+=j(g)+' \n \n ',h=c.teacher,h?g=h.call(b,{hash:{}}):(g=b.teacher,g=typeof g===i?g():g),f+=j(g)+' \n \n ',g=b.show_archive_button,g=c["if"].call(b,g,{hash:{},inverse:k.noop,fn:k.program(1,l,e)});if(g||g===0)f+=g;f+="\n \n ",g=b.empty,g=c["if"].call(b,g,{hash:{},inverse:k.program(5,n,e),fn:k.program(3,m,e)});if(g||g===0)f+=g;return f+="\n ",f}),b.course_assignment=a(function(a,b,c,d,e){function m(a,b){return" checked "}function n(a,b){var d="",e,f;d+='\n
Show details \n
',f=c.details,f?e=f.call(a,{hash:{}}):(e=a.details,e=typeof e===i?e():e);if(e||e===0)d+=e;return d+="
\n ",d}function o(a,b){return"\n
No additional information \n "}c=c||a.helpers;var f="",g,h,i="function",j=this.escapeExpression,k=this,l=c.helperMissing;f+='
\n\n
\n \n \n\n
\n ",g=b.title,h=c.keyword,g=h?h.call(b,g,{hash:{}}):l.call(b,"keyword",g,{hash:{}});if(g||g===0)f+=g;f+=" ",h=c.title,h?g=h.call(b,{hash:{}}):(g=b.title,g=typeof g===i?g():g),f+=j(g)+' \n \n \n\n
\n ',g=b.date,h=c.format_date,g=h?h.call(b,g,{hash:{}}):l.call(b,"format_date",g,{hash:{}});if(g||g===0)f+=g;f+='\n \n\n
\n ',g=b.details,g=c["if"].call(b,g,{hash:{},inverse:k.program(5,o,e),fn:k.program(3,n,e)});if(g||g===0)f+=g;return f+='\n \n\n
\n \n \n \n ',f}),b.date_assignment=a(function(a,b,c,d,e){function m(a,b){return" checked "}function n(a,b){var d="",e,f;d+='\n
Show details \n
',f=c.details,f?e=f.call(a,{hash:{}}):(e=a.details,e=typeof e===i?e():e);if(e||e===0)d+=e;return d+="
\n ",d}function o(a,b){return"\n
No additional information \n "}c=c||a.helpers;var f="",g,h,i="function",j=this,k=c.helperMissing,l=this.escapeExpression;f+='
\n
\n ',g=b.title,h=c.keyword,g=h?h.call(b,g,{hash:{}}):k.call(b,"keyword",g,{hash:{}});if(g||g===0)f+=g;f+=" ",h=c.title,h?g=h.call(b,{hash:{}}):(g=b.title,g=typeof g===i?g():g),f+=l(g)+' \n \n \n
\n ',h=c.course,h?g=h.call(b,{hash:{}}):(g=b.course,g=typeof g===i?g():g),f+=l(g)+' \n \n \n
',g=b.date,h=c.format_date,g=h?h.call(b,g,{hash:{}}):k.call(b,"format_date",g,{hash:{}});if(g||g===0)f+=g;f+=' \n\n
\n ',g=b.details,g=c["if"].call(b,g,{hash:{},inverse:j.program(5,o,e),fn:j.program(3,n,e)});if(g||g===0)f+=g;return f+='\n \n\n
\n \n \n \n ',f}),b.dates=a(function(a,b,c,d,e){function m(a,b){var d="",e;d+="\n ",e=a.show_archive_button,e=c["if"].call(a,e,{hash:{},inverse:i.noop,fn:i.program(2,n,b)});if(e||e===0)d+=e;return d+="\n ",d}function n(a,b){var d="",e;d+='\n
\n \n Archive Done \n \n ',d}function o(a,b){return"disabled"}function p(a,b){return'\n
\n \n Add Assignment \n \n '}function q(a,b){var d="",e,f;return d+='\n
\n
',f=c.exclamation,f?e=f.call(a,{hash:{}}):(e=a.exclamation,e=typeof e===j?e():e),d+=k(e)+" No work to do here! \n
\n
\n Go outside and play or something.\n
\n
\n ",d}function r(a,b){return'\n
\n \n \n Done \n Title \n Course \n Due Date \n Details \n Edit \n \n \n \n \n
\n '}c=c||a.helpers;var f="",g,h,i=this,j="function",k=this.escapeExpression,l=c.helperMissing;f+='
\n\n ',h=c.title,h?g=h.call(b,{hash:{}}):(g=b.title,g=typeof g===j?g():g),f+=k(g)+" ",g=b.range,h=c.range_date,g=h?h.call(b,g,{hash:{}}):l.call(b,"range_date",g,{hash:{}});if(g||g===0)f+=g;f+=" \n ",g=b.empty,g=c.unless.call(b,g,{hash:{},inverse:i.noop,fn:i.program(1,m,e)});if(g||g===0)f+=g;f+="\n ",g=b.show_archive_button,g=c["if"].call(b,g,{hash:{},inverse:i.noop,fn:i.program(5,p,e)});if(g||g===0)f+=g;f+="\n \n ",g=b.empty,g=c["if"].call(b,g,{hash:{},inverse:i.program(9,r,e),fn:i.program(7,q,e)});if(g||g===0)f+=g;return f+="\n ",f}),b.edit_assignment=a(function(a,b,c,d,e){function m(a,b){var d="",e;d+="\n ",e=a.details,e=c["if"].call(a,e,{hash:{},inverse:i.noop,fn:i.program(2,n,b)});if(e||e===0)d+=e;return d+="\n ",d}function n(a,b){return'\n
\n note: This assignment came from the school website, so it contains HTML (a computer language). I didn't convert it to "normal text" because formatting would be lost. Feel free to replace it.\n \n '}function o(a,b){return'\n
\n '}function p(a,b){var d="",e,f;d+='\n
\n
Course \n
\n \n ',e=a.course,f=c.course_options,e=f?f.call(a,e,{hash:{}}):j.call(a,"course_options",e,{hash:{}});if(e||e===0)d+=e;return d+="\n \n
\n
\n ",d}c=c||a.helpers;var f="",g,h,i=this,j=c.helperMissing,k="function",l=this.escapeExpression;f+='
\n \n \n \n
Details \n
\n ',h=c.details,h?g=h.call(b,{hash:{}}):(g=b.details,g=typeof g===k?g():g),f+=l(g)+" \n ",g=b.jbha_id,g=c["if"].call(b,g,{hash:{},inverse:i.program(4,o,e),fn:i.program(1,m,e)});if(g||g===0)f+=g;f+="\n
\n
\n ",g=b.hard_course,g=c.unless.call(b,g,{hash:{},inverse:i.noop,fn:i.program(6,p,e)});if(g||g===0)f+=g;return f+='\n \n \n ',f}),b.edit_course=a(function(a,b,c,d,e){c=c||a.helpers;var f="",g,h,i="function",j=this.escapeExpression;return f+='
\n \n \n
Title\n \n
\n \n \n
\n
\n \n
Teacher\n \n
\n \n \n
\n
\n \n
\n
Uh oh! Something went wrong, lol.
\n
\n
\n \n ',f}),b.home=a(function(a,b,c,d,e){c=c||a.helpers;var f="",g,h,i=c.helperMissing,j=this.escapeExpression;return f+='
\n
Miss me? \n
\n ',h=c.personalize,g=h?h.call(b,"You know the drill %n, just click on a link to the left.",{hash:{}}):i.call(b,"personalize","You know the drill %n, just click on a link to the left.",{hash:{}}),f+=j(g)+"\n
\n
← \n
",f}),b.settings=a(function(a,b,c,d,e){c=c||a.helpers;var f="",g,h,i="function",j=this.escapeExpression;return f+='
\n \n \n
Nickname \n
\n \n This doesn’t affect anything other than your ego. \n
\n
\n \n ',f}),b.sidebar_courses=a(function(a,b,c,d,e){function k(a,b){var d="",e,f;return d+='\n
\n ',f=c.title,f?e=f.call(a,{hash:{}}):(e=a.title,e=typeof e===h?e():e),d+=i(e)+" \n \n",d}c=c||a.helpers;var f="",g,h="function",i=this.escapeExpression,j=this;f+='\n',g=b.courses,g=c.each.call(b,g,{hash:{},inverse:j.noop,fn:j.program(1,k,e)});if(g||g===0)f+=g;return f+='\n
\n \n Add \n ',f}),b.sidebar_dates=a(function(a,b,c,d,e){function l(a,b){var d="",e,f,g;d+='\n
\n ',e=a.end,f=a.start,g=c.remaining,e=g?g.call(a,f,e,{hash:{}}):j.call(a,"remaining",f,e,{hash:{}});if(e||e===0)d+=e;return d+=" ",g=c.name,g?e=g.call(a,{hash:{}}):(e=a.name,e=typeof e===h?e():e),d+=i(e)+" \n \n",d}c=c||a.helpers;var f="",g,h="function",i=this.escapeExpression,j=c.helperMissing,k=this;f+='\n',g=b.dates,g=c.each.call(b,g,{hash:{},inverse:k.noop,fn:k.program(1,l,e)});if(g||g===0)f+=g;return f}),b.status=a(function(a,b,c,d,e){function m(a,b){var d="",e,f;return d+='
',f=c.link_text,f?e=f.call(a,{hash:{}}):(e=a.link_text,e=typeof e===i?e():e),d+=j(e),d}function n(a,b){return'\n × \n '}c=c||a.helpers;var f="",g,h,i="function",j=this.escapeExpression,k=c.helperMissing,l=this;f+='
\n ',h=c.heading,h?g=h.call(b,{hash:{}}):(g=b.heading,g=typeof g===i?g():g),f+=j(g)+" \n ",g=b.message,h=c.personalize,g=h?h.call(b,g,{hash:{}}):k.call(b,"personalize",g,{hash:{}});if(g||g===0)f+=g;f+=" ",g=b.addable,g=c["if"].call(b,g,{hash:{},inverse:l.noop,fn:l.program(1,m,e)});if(g||g===0)f+=g;f+=" \n ",g=b.closable,g=c["if"].call(b,g,{hash:{},inverse:l.noop,fn:l.program(3,n,e)});if(g||g===0)f+=g;return f+="\n
",f})})()
\ No newline at end of file
diff --git a/static/js/views.js b/static/js/views.js
index 9588678..cd2068a 100644
--- a/static/js/views.js
+++ b/static/js/views.js
@@ -82,7 +82,6 @@ SettingsView = Backbone.View.extend({
var that = this;
this.model.save({
nickname: this.$("#nickname").val(),
- details: this.$("#details").is(':checked')
},
{
error: function (model, errors) {
@@ -102,7 +101,6 @@ SettingsView = Backbone.View.extend({
render: function () {
var context = {
- details: this.model.get('details'),
nickname: this.model.get('nickname')
};
this.$(".modal-body").html(this.template(context));
@@ -475,11 +473,12 @@ AssignmentView = Backbone.View.extend({
}
// Only show details if we should be
+ // TODO: Recheck this logic
if (this.showing_details !== null) {
if (this.showing_details === true) {
this.showDetails();
}
- } else if (settings.get('details') || app.showing_details) {
+ } else if (app.showing_details) {
this.showDetails();
}
diff --git a/test/jbha.test.coffee b/test/jbha.test.coffee
index 9f3b03b..04366e0 100644
--- a/test/jbha.test.coffee
+++ b/test/jbha.test.coffee
@@ -39,7 +39,6 @@ describe "dal", ->
_id: String(Math.random())
nickname: "Dr. " + Math.random()
firstrun: false
- details: true
describe "create", ->
it 'should create without error', (done) ->
@@ -65,7 +64,6 @@ describe "dal", ->
should.not.exist err
settings.nickname.should.equal mock_settings.nickname
settings.firstrun.should.equal mock_settings.firstrun
- settings.details.should.equal mock_settings.details
settings.is_new.should.equal true
done()
diff --git a/views/templates/settings.handlebars b/views/templates/settings.handlebars
index 86674ac..3b68350 100644
--- a/views/templates/settings.handlebars
+++ b/views/templates/settings.handlebars
@@ -7,14 +7,5 @@
This doesn’t affect anything other than your ego.
-