diff --git a/cms/envs/common.py b/cms/envs/common.py index bdb3ec6fde..003e29743b 100644 --- a/cms/envs/common.py +++ b/cms/envs/common.py @@ -244,6 +244,7 @@ PIPELINE_JS = { rooted_glob(COMMON_ROOT / 'static/', 'coffee/src/**/*.js') + rooted_glob(PROJECT_ROOT / 'static/', 'coffee/src/**/*.js') ) + ['js/hesitate.js', 'js/base.js', 'js/views/feedback.js', + 'js/models/course.js', 'js/models/section.js', 'js/views/section.js', 'js/models/metadata_model.js', 'js/views/metadata_editor_view.js', 'js/models/textbook.js', 'js/views/textbook.js', diff --git a/cms/static/coffee/spec/models/course_spec.coffee b/cms/static/coffee/spec/models/course_spec.coffee new file mode 100644 index 0000000000..07fe6930f4 --- /dev/null +++ b/cms/static/coffee/spec/models/course_spec.coffee @@ -0,0 +1,9 @@ +describe "CMS.Models.Course", -> + describe "basic", -> + beforeEach -> + @model = new CMS.Models.Course({ + name: "Greek Hero" + }) + + it "should take a name argument", -> + expect(@model.get("name")).toEqual("Greek Hero") diff --git a/cms/static/js/models/course.js b/cms/static/js/models/course.js new file mode 100644 index 0000000000..4f2325e94c --- /dev/null +++ b/cms/static/js/models/course.js @@ -0,0 +1,10 @@ +CMS.Models.Course = Backbone.Model.extend({ + defaults: { + "name": "" + }, + validate: function(attrs, options) { + if (!attrs.name) { + return gettext("You must specify a name"); + } + } +}); diff --git a/cms/templates/base.html b/cms/templates/base.html index 44ebf59170..b53dc2657d 100644 --- a/cms/templates/base.html +++ b/cms/templates/base.html @@ -58,6 +58,18 @@ + % if context_course: + + % endif