define(['js/views/baseview', 'js/views/course_info_update', 'js/views/course_info_handout'],
    function(BaseView, CourseInfoUpdateView, CourseInfoHandoutView) {
/*  this view should own everything on the page which has controls effecting its operation
   generate other views for the individual editors.
   The render here adds views for each update/handout by delegating to their collections but does not
   generate any html for the surrounding page.
*/

        var CourseInfoEdit = BaseView.extend({
  // takes CMS.Models.CourseInfo as model
            tagName: 'div',

            render: function() {
    // instantiate the ClassInfoUpdateView and delegate the proper dom to it
                new CourseInfoUpdateView({
                    el: $('body.updates'),
                    collection: this.model.get('updates'),
                    base_asset_url: this.model.get('base_asset_url'),
                    push_notification_enabled: this.options.push_notification_enabled
                });

                new CourseInfoHandoutView({
                    el: this.$('#course-handouts-view'),
                    model: this.model.get('handouts'),
                    base_asset_url: this.model.get('base_asset_url')
                });
                return this;
            }
        });
        return CourseInfoEdit;
    }); // end define()
