define(['jquery', 'underscore', 'backbone', 'goatApp/model/MenuCollection', 'goatApp/view/MenuItemView', 'goatApp/support/GoatUtils'], function( $, _, Backbone, MenuCollection, MenuItemView, GoatUtils) { return Backbone.View.extend({ el:'#menuContainer', //TODO: set template initialize: function() { this.collection = new MenuCollection(); this.listenTo(this.collection,'menuData:loaded',this.render); }, // rendering top level menu render: function (model){ //for now, just brute force //TODO: refactor into sub-views/components var items, catItems, stages; items = this.collection.models; // top level items var menuMarkup = ''; var menuUl = $('