#!/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
