* Convert build to use a single JavaScript file on the site (instead of downloading each library separately). This also means that all global variables (e.g., `$` for JQuery, `_` for Underscore.js) can be removed. * Remove unused scripts and/or move them to a more appropriate repo * Update the `deploy` script to work with CircleCI's automation * Update markdown display code to allow images to be located with the markdown data files instead of the pre-rendered index pages
41 lines
1.2 KiB
CoffeeScript
41 lines
1.2 KiB
CoffeeScript
###
|
|
Crafting Guide - mod_controller.coffee
|
|
|
|
Copyright (c) 2015 by Redwood Labs
|
|
All rights reserved.
|
|
###
|
|
|
|
BaseController = require './base_controller'
|
|
_ = require 'underscore'
|
|
{Url} = require '../constants'
|
|
|
|
########################################################################################################################
|
|
|
|
module.exports = class ModController extends BaseController
|
|
|
|
constructor: (options={})->
|
|
if not options.model? then throw new Error 'options.model is required'
|
|
options.templateName = 'mod'
|
|
super options
|
|
|
|
# BaseController Overrides #####################################################################
|
|
|
|
onDidRender: ->
|
|
@$link = @$('a')
|
|
@$logo = @$('.logo')
|
|
@$name = @$('.name p')
|
|
@$description = @$('.description p')
|
|
super
|
|
|
|
refresh: ->
|
|
@$link.attr 'href', Url.mod modSlug:@model.slug
|
|
@$logo.attr 'src', Url.modIcon modSlug:@model.slug
|
|
@$name.html @model.name
|
|
@$description.html @model.description
|
|
|
|
# Backbone.View Overrides ######################################################################
|
|
|
|
events: ->
|
|
return _.extend super,
|
|
'click a': 'routeLinkClick'
|