The current adsense implementation only places ads on desktop-sized screens. This change allows ads of the appropriate size to be displayed on any device. fixes #224
65 lines
2.0 KiB
CoffeeScript
65 lines
2.0 KiB
CoffeeScript
#
|
|
# Crafting Guide - browse_page_controller.coffee
|
|
#
|
|
# Copyright © 2014-2016 by Redwood Labs
|
|
# All rights reserved.
|
|
#
|
|
|
|
ModTileController = require './mod_tile/mod_tile_controller'
|
|
PageController = require '../page_controller'
|
|
|
|
########################################################################################################################
|
|
|
|
module.exports = class BrowsePageController extends PageController
|
|
|
|
constructor: (options={})->
|
|
if not options.modPack then throw new Error 'options.modPack is required'
|
|
options.templateName = 'browse_page'
|
|
super options
|
|
|
|
@_modPack = options.modPack
|
|
@_tileControllers = []
|
|
|
|
# PageController Overrides #####################################################################
|
|
|
|
getMetaDescription: ->
|
|
return c.text.browseDescription()
|
|
|
|
getTitle: ->
|
|
return "Browse"
|
|
|
|
# BaseController Overrides #####################################################################
|
|
|
|
onDidRender: ->
|
|
@$tileContainer = @$('.tile_container')
|
|
|
|
refresh: ->
|
|
@_refreshModTiles()
|
|
super
|
|
|
|
# Backbone.View Overrides ######################################################################
|
|
|
|
events: ->
|
|
return _.extend super,
|
|
'click a': 'routeLinkClick'
|
|
|
|
# Private Methods ##############################################################################
|
|
|
|
_refreshModTiles: ->
|
|
index = 0
|
|
mods = @_modPack.getAllMods()
|
|
for mod in mods
|
|
controller = @_tileControllers[index]
|
|
if not controller
|
|
controller = new ModTileController model:mod, router:@router
|
|
controller.render()
|
|
@$tileContainer.append controller.$el
|
|
@_tileControllers.push controller
|
|
else
|
|
controller.model = mod
|
|
index++
|
|
|
|
while @_tileControllers.length > mods.length
|
|
controller = @_tileControllers.pop()
|
|
controller.remove()
|