Move all /item URLs to /crafting
This commit is contained in:
+4
-5
@@ -17,15 +17,14 @@ ROOT = './dist/'
|
|||||||
|
|
||||||
app = express()
|
app = express()
|
||||||
|
|
||||||
app.get '/item(/*)?', (request, response)->
|
serveIndex = (request, response)->
|
||||||
console.log ">>> index.html (for #{request.path})"
|
console.log ">>> index.html (for #{request.path})"
|
||||||
response.set 'Content-Type', 'text/html'
|
response.set 'Content-Type', 'text/html'
|
||||||
response.sendFile 'index.html', root:ROOT
|
response.sendFile 'index.html', root:ROOT
|
||||||
|
|
||||||
app.get '/mod(/*)?', (request, response)->
|
app.get '/crafting(/*)?', serveIndex
|
||||||
console.log ">>> index.html (for #{request.path})"
|
app.get '/item(/*)?', serveIndex
|
||||||
response.set 'Content-Type', 'text/html'
|
app.get '/mod(/*)?', serveIndex
|
||||||
response.sendFile 'index.html', root:ROOT
|
|
||||||
|
|
||||||
app.get '*', (request, response)->
|
app.get '*', (request, response)->
|
||||||
extension = path.extname(request.path)
|
extension = path.extname(request.path)
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
Crafting Guide - item_page.scss
|
Crafting Guide - crafting_page.scss
|
||||||
|
|
||||||
Copyright (c) 2014-2015 by Redwood Labs
|
Copyright (c) 2014-2015 by Redwood Labs
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
.view__item_page {
|
.view__crafting_page {
|
||||||
|
|
||||||
& > div {
|
& > div {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
@@ -10,7 +10,7 @@ All rights reserved.
|
|||||||
@import 'feedback';
|
@import 'feedback';
|
||||||
@import 'inventory';
|
@import 'inventory';
|
||||||
@import 'item';
|
@import 'item';
|
||||||
@import 'item_page';
|
@import 'crafting_page';
|
||||||
@import 'mod';
|
@import 'mod';
|
||||||
@import 'mod_pack';
|
@import 'mod_pack';
|
||||||
@import 'mod_page';
|
@import 'mod_page';
|
||||||
|
|||||||
@@ -53,12 +53,13 @@ ModelState.failed = 'failed'
|
|||||||
exports.Text = Text = {}
|
exports.Text = Text = {}
|
||||||
Text.title = 'Crafting Guide for Minecraft | The Ultimate Step-by-Step Tutorial for Making Anything in Minecraft'
|
Text.title = 'Crafting Guide for Minecraft | The Ultimate Step-by-Step Tutorial for Making Anything in Minecraft'
|
||||||
|
|
||||||
exports.Url = Url = {}
|
exports.Url = Url = {}
|
||||||
Url.itemIcon = _.template "/data/<%= modSlug %>/<%= modVersion %>/images/<%= slug %>.png"
|
Url.crafting = _.template "/crafting/<%= inventoryText %>"
|
||||||
Url.item = _.template "/item/<%= slug %>"
|
Url.itemIcon = _.template "/data/<%= modSlug %>/<%= modVersion %>/images/<%= slug %>.png"
|
||||||
Url.mod = _.template "/mod/<%= modSlug %>"
|
Url.item = _.template "/item/<%= slug %>"
|
||||||
Url.modData = _.template "/data/<%= modSlug %>/mod.cg"
|
Url.mod = _.template "/mod/<%= modSlug %>"
|
||||||
Url.modVersion = _.template "/data/<%= modSlug %>/<%= modVersion %>/mod-version.cg"
|
Url.modData = _.template "/data/<%= modSlug %>/mod.cg"
|
||||||
|
Url.modVersion = _.template "/data/<%= modSlug %>/<%= modVersion %>/mod-version.cg"
|
||||||
Url.modLogoImage = _.template "/data/<%= modSlug %>/logo.png"
|
Url.modLogoImage = _.template "/data/<%= modSlug %>/logo.png"
|
||||||
|
|
||||||
exports.UrlParam = UrlParam = {}
|
exports.UrlParam = UrlParam = {}
|
||||||
|
|||||||
+8
-9
@@ -1,5 +1,5 @@
|
|||||||
###
|
###
|
||||||
Crafting Guide - item_page_controller.coffee
|
Crafting Guide - crafting_page_controller.coffee
|
||||||
|
|
||||||
Copyright (c) 2014-2015 by Redwood Labs
|
Copyright (c) 2014-2015 by Redwood Labs
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
@@ -11,21 +11,22 @@ CraftingTableController = require './crafting_table_controller'
|
|||||||
ImageLoader = require './image_loader'
|
ImageLoader = require './image_loader'
|
||||||
InventoryController = require './inventory_controller'
|
InventoryController = require './inventory_controller'
|
||||||
InventoryParser = require '../models/inventory_parser'
|
InventoryParser = require '../models/inventory_parser'
|
||||||
ItemPage = require '../models/item_page'
|
CraftingPage = require '../models/crafting_page'
|
||||||
ModPackController = require './mod_pack_controller'
|
ModPackController = require './mod_pack_controller'
|
||||||
NameFinder = require '../models/name_finder'
|
NameFinder = require '../models/name_finder'
|
||||||
Storage = require '../models/storage'
|
Storage = require '../models/storage'
|
||||||
{Text} = require '../constants'
|
{Text} = require '../constants'
|
||||||
|
{Url} = require '../constants'
|
||||||
|
|
||||||
########################################################################################################################
|
########################################################################################################################
|
||||||
|
|
||||||
module.exports = class ItemPageController extends BaseController
|
module.exports = class CraftingPageController extends BaseController
|
||||||
|
|
||||||
constructor: (options={})->
|
constructor: (options={})->
|
||||||
options.model ?= new ItemPage modPack:options.modPack
|
options.model ?= new CraftingPage modPack:options.modPack
|
||||||
options.imageLoader ?= new ImageLoader defaultUrl:'/images/unknown.png'
|
options.imageLoader ?= new ImageLoader defaultUrl:'/images/unknown.png'
|
||||||
options.storage ?= new Storage storage:window.localStorage
|
options.storage ?= new Storage storage:window.localStorage
|
||||||
options.templateName = 'item_page'
|
options.templateName = 'crafting_page'
|
||||||
super options
|
super options
|
||||||
|
|
||||||
@_imageLoader = options.imageLoader
|
@_imageLoader = options.imageLoader
|
||||||
@@ -107,7 +108,5 @@ module.exports = class ItemPageController extends BaseController
|
|||||||
|
|
||||||
_updateLocation: ->
|
_updateLocation: ->
|
||||||
text = @_parser.unparse @model.plan.want
|
text = @_parser.unparse @model.plan.want
|
||||||
if @model.plan.want.isEmpty
|
url = Url.crafting inventoryText:text
|
||||||
router.navigate '/'
|
router.navigate url
|
||||||
else
|
|
||||||
router.navigate "/item/#{text}"
|
|
||||||
@@ -5,17 +5,18 @@ Copyright (c) 2014-2015 by Redwood Labs
|
|||||||
All rights reserved.
|
All rights reserved.
|
||||||
###
|
###
|
||||||
|
|
||||||
{DefaultMods} = require './constants'
|
{DefaultMods} = require './constants'
|
||||||
{Duration} = require './constants'
|
{Duration} = require './constants'
|
||||||
{Event} = require './constants'
|
{Event} = require './constants'
|
||||||
HeaderController = require './controllers/header_controller'
|
HeaderController = require './controllers/header_controller'
|
||||||
ItemPageController = require './controllers/item_page_controller'
|
CraftingPageController = require './controllers/crafting_page_controller'
|
||||||
Mod = require './models/mod'
|
Mod = require './models/mod'
|
||||||
ModPack = require './models/mod_pack'
|
ModPack = require './models/mod_pack'
|
||||||
ModPageController = require './controllers/mod_page_controller'
|
ModPageController = require './controllers/mod_page_controller'
|
||||||
{Opacity} = require './constants'
|
{Opacity} = require './constants'
|
||||||
Storage = require './models/storage'
|
Storage = require './models/storage'
|
||||||
UrlParams = require './url_params'
|
UrlParams = require './url_params'
|
||||||
|
{Url} = require './constants'
|
||||||
|
|
||||||
########################################################################################################################
|
########################################################################################################################
|
||||||
|
|
||||||
@@ -54,28 +55,29 @@ module.exports = class CraftingGuideRouter extends Backbone.Router
|
|||||||
@_recordPageView()
|
@_recordPageView()
|
||||||
|
|
||||||
routes:
|
routes:
|
||||||
'': 'root'
|
'': 'root'
|
||||||
'item/:name': 'item'
|
'item/(:inventoryText)': 'crafting'
|
||||||
'mod/:slug': 'mod'
|
'crafting/(:inventoryText)': 'crafting'
|
||||||
|
'mod/:slug': 'mod'
|
||||||
|
|
||||||
# Route Methods ################################################################################
|
# Route Methods ################################################################################
|
||||||
|
|
||||||
root: ->
|
root: ->
|
||||||
params = new UrlParams recipeName:{type:'string'}, count:{type:'integer'}
|
params = new UrlParams recipeName:{type:'string'}, count:{type:'integer'}
|
||||||
|
|
||||||
arg = null
|
text = ''
|
||||||
if params.recipeName?
|
if params.recipeName?
|
||||||
if params.count?
|
if params.count?
|
||||||
arg = "#{params.count}:#{params.recipeName}"
|
text = "#{params.count}:#{params.recipeName}"
|
||||||
else
|
else
|
||||||
arg = "#{params.recipeName}"
|
text = "#{params.recipeName}"
|
||||||
|
|
||||||
@item arg
|
@navigate Url.crafting(inventoryText:text), trigger:true
|
||||||
|
|
||||||
item: (inventoryText)->
|
crafting: (inventoryText)->
|
||||||
controller = new ItemPageController @_defaultOptions
|
controller = new CraftingPageController @_defaultOptions
|
||||||
controller.model.params = inventoryText:inventoryText
|
controller.model.params = inventoryText:inventoryText
|
||||||
@_setPage 'item', controller
|
@_setPage 'crafting', controller
|
||||||
|
|
||||||
mod: (slug)->
|
mod: (slug)->
|
||||||
controller = new ModPageController @_defaultOptions
|
controller = new ModPageController @_defaultOptions
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
###
|
###
|
||||||
Crafting Guide - item_page.coffee
|
Crafting Guide - crafting_page.coffee
|
||||||
|
|
||||||
Copyright (c) 2014-2015 by Redwood Labs
|
Copyright (c) 2014-2015 by Redwood Labs
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
@@ -14,7 +14,7 @@ ModPack = require './mod_pack'
|
|||||||
|
|
||||||
########################################################################################################################
|
########################################################################################################################
|
||||||
|
|
||||||
module.exports = class ItemPage extends BaseModel
|
module.exports = class extends BaseModel
|
||||||
|
|
||||||
constructor: (attributes={}, options={})->
|
constructor: (attributes={}, options={})->
|
||||||
attributes.modPack ?= new ModPack
|
attributes.modPack ?= new ModPack
|
||||||
@@ -169,7 +169,7 @@ module.exports = class Mod extends BaseModel
|
|||||||
@_activeModVersion = modVersion
|
@_activeModVersion = modVersion
|
||||||
@trigger Event.change + ':activeModVersion', this, @_activeModVersion
|
@trigger Event.change + ':activeModVersion', this, @_activeModVersion
|
||||||
|
|
||||||
logger.verbose "#{@name} switched to version #{@_activeVersion}"
|
logger.verbose "#{@slug} switched to version #{@_activeVersion}"
|
||||||
|
|
||||||
if @_activeModVersion?
|
if @_activeModVersion?
|
||||||
@listenTo @_activeModVersion, 'all', -> @trigger.apply this, arguments
|
@listenTo @_activeModVersion, 'all', -> @trigger.apply this, arguments
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
//- All rights reserved.
|
//- All rights reserved.
|
||||||
//-
|
//-
|
||||||
|
|
||||||
.view__item_page
|
.view__crafting_page
|
||||||
.view__inventory.want
|
.view__inventory.want
|
||||||
.view__inventory.have
|
.view__inventory.have
|
||||||
.view__inventory.need
|
.view__inventory.need
|
||||||
Reference in New Issue
Block a user