Files
website/scripts/sitemap
T

52 lines
1.4 KiB
CoffeeScript
Executable File

#!/usr/bin/env coffee
Logger = require '../src/scripts/logger'
global._ = require 'underscore'
global.Backbone = require 'backbone'
global.logger = new Logger level:Logger.FATAL
require '../src/scripts/underscore_mixins'
Mod = require '../src/scripts/models/mod'
ModParser = require '../src/scripts/models/mod_parser'
ModVersionParser = require '../src/scripts/models/mod_version_parser'
fs = require 'fs'
modSlugs = {}
itemSlugs = {}
base = 'http://crafting-guide.com'
urls = [
base
"#{base}/configure"
"#{base}/browse"
"#{base}/craft"
]
for modSlug in fs.readdirSync './src/data'
continue if modSlug[0] is '.'
modSlugs[modSlug] = modSlug
mod = new Mod slug:modSlug
modParser = new ModParser model:mod
modParser.parse fs.readFileSync "./src/data/#{modSlug}/mod.cg", 'utf-8'
mod.eachModVersion (modVersion)->
modVersionParser = new ModVersionParser model:modVersion
modVersionParser.parse fs.readFileSync "./src/data/#{modSlug}/#{modVersion.version}/mod-version.cg", 'utf-8'
modVersion.eachItem (item)->
itemSlugs[item.slug] = item.slug
for modSlug in _.values(modSlugs).sort()
urls.push base + "/browse/#{modSlug}"
for key in _.keys(itemSlugs).sort()
itemSlug = itemSlugs[key]
urls.push base + "/browse/#{itemSlug.mod}/#{itemSlug.item}"
for url in urls
console.log url