-define ['app', 'marionette', 'vent',
-        'models/mix/mixItem', 'views/mix/mixListLayout', 'views/mix/mixListView', 'views/mix/mixDetailView'
-        'views/mix/mixEditView', 'views/user/userProfileView',
-        'models/user/userItem', 'views/user/userListView', 'views/user/userEditView'],
-(App, Marionette, vent,
- MixItem, MixListLayout, MixListView, MixDetailView,
- MixEditView, UserProfileView,
- UserItem, UserListView, UserEditView)->
+define ['app', 'marionette', 'vent', 'utils'
+        'views/mix/mixListLayout', 'views/mix/mixListView', 'views/mix/mixDetailView'
+        'views/mix/mixEditView', 'views/user/userProfileView', 'views/user/userListView', 'views/user/userEditView',
+        'models/mix/mixItem', 'models/mix/mixCollection', 'models/user/userItem'],
+(App, Marionette, vent, utils,
+ MixListLayout, MixListView, MixDetailView,
+ MixEditView, UserProfileView, UserListView, UserEditView,
+ MixItem, MixCollection, UserItem)->
     class DssController extends Marionette.Controller
+
+        initialize: ->
+          @listenTo(vent, "mix:random", @showRandomMix)
 
         home: ->
             console.log "Controller: home"
             @showMixList()
-            true
 
         showMixList: (options) ->
             app = require('app')
             app.contentRegion.show(new MixListLayout(options or {order_by: 'latest'}))
-            true
 
         showMixListType: (type) ->
             @showMixList({order_by: type})
-            true
 
         showMix: (slug)->
             console.log "Controller: showMix"

                error: (a, b, c) ->
                    console.log("Error fetching user")
            )


        showUserFavourites: (slug) ->
            console.log("Controller: showUserFavourites")

            app = require('app')
            app.contentRegion.show(new ChatView())


        showUserList: ->
            console.log("Controller: showUserList")
            app = require('app')
