Separate IC2-Classic and IC2-Exp
This commit is contained in:
Executable
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
BASE_DIR="$1"
|
||||
for FILE in $(ls $BASE_DIR/images); do
|
||||
NAME=$(basename -s.png $FILE)
|
||||
DIR="$BASE_DIR/$NAME"
|
||||
IMG_DEST="$DIR/icon.png"
|
||||
|
||||
mkdir -p $DIR
|
||||
mv "$BASE_DIR/images/$FILE" "$IMG_DEST"
|
||||
done
|
||||
+38
-9
@@ -1,18 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
OUTPUT_DIR='./static'
|
||||
SCRIPT='/tmp/phantomjs_render.coffee'
|
||||
USAGE=<<END
|
||||
USAGE: prerender <options>
|
||||
|
||||
if [[ "$1" != "" ]]; then
|
||||
SITEMAP_FILE="$1"
|
||||
else
|
||||
SITEMAP_FILE='./src/pages/sitemap.txt'
|
||||
fi
|
||||
Options:
|
||||
|
||||
--force : overwrite existing files (default skips)
|
||||
--clean : remove all files before starting
|
||||
--only <pattern> : restrict rendering to the given pattern
|
||||
--output <dir> : output directory (default: ./static)
|
||||
--sitemap <file> : sitemap file (default: ./static/sitemap.txt
|
||||
|
||||
END
|
||||
|
||||
CLEAN="yes"
|
||||
FORCE="no"
|
||||
OUTPUT_DIR="./static"
|
||||
SITEMAP_FILE="./static/sitemap.txt"
|
||||
while [[ "$1" != "" ]]; do
|
||||
case "$1" in
|
||||
"--force") FORCE="yes";;
|
||||
"--help") echo $USAGE; exit 0;;
|
||||
"--clean") CLEAN="yes";;
|
||||
"--only") shift; ONLY="$1";;
|
||||
"--output") shift; OUTPUT_DIR="$1";;
|
||||
"--sitemap") shift; SITEMAP_FILE="$1";;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
SCRIPT='/tmp/prerender_script.coffee'
|
||||
cat > $SCRIPT <<END
|
||||
url = require('system').args[1]
|
||||
page = require('webpage').create()
|
||||
path = "#{url}".replace(/http:\/\/[^/]*/, '').replace(/^\//, '').replace(/\/$/, '')
|
||||
path = "#{url}".replace(/http:\/\/[^/]*/, '').replace(/^\//, '')
|
||||
localUrl = "http://localhost:8000/#{path}"
|
||||
|
||||
page.open localUrl, (status)->
|
||||
@@ -26,15 +47,23 @@ page.open localUrl, (status)->
|
||||
), 5000
|
||||
END
|
||||
|
||||
if [[ "$CLEAN" == "yes" ]]; then
|
||||
find "$OUTPUT_DIR/browse" -name "*.html" | xargs rm
|
||||
fi
|
||||
|
||||
cat $SITEMAP_FILE | while read URL; do
|
||||
OUTPUT_FILE=$(sed 's/http:\/\/[^/]*\///' <<< $URL)
|
||||
OUTPUT_FILE="$OUTPUT_DIR/$OUTPUT_FILE/index.html"
|
||||
OUTPUT_FILE=$(sed 's/\/\//\//' <<< $OUTPUT_FILE)
|
||||
|
||||
if [[ ! -e "$OUTPUT_FILE" ]]; then
|
||||
if [[ ! -e "$OUTPUT_FILE" || "$FORCE" == "yes" ]]; then
|
||||
mkdir -p $(dirname "$OUTPUT_FILE")
|
||||
echo "prerendering $URL into $OUTPUT_FILE"
|
||||
phantomjs --web-security=false --load-images=false $SCRIPT "$URL" >"$OUTPUT_FILE" 2>/dev/null
|
||||
if [[ "$?" != "0" ]]; then
|
||||
echo "An error occured rendering $URL"
|
||||
rm "$OUTPUT_FILE" 2>/dev/null
|
||||
fi
|
||||
else
|
||||
echo "Skipping $URL..."
|
||||
fi
|
||||
|
||||
+2
-2
@@ -20,9 +20,9 @@ app = express()
|
||||
|
||||
app.get '*/$', (request, response)->
|
||||
response.set 'Content-Type', 'text/html'
|
||||
filePath = "#{request.path}index.html"
|
||||
filePath = "#{request.path}index.html".replace /^\//, ''
|
||||
fs.stat "#{ROOT}#{filePath}", (err, stats)->
|
||||
if stats.isFile()
|
||||
if not err?
|
||||
response.sendFile filePath, root:ROOT
|
||||
console.log ">>> #{filePath} (for #{request.path})"
|
||||
else
|
||||
|
||||
+10
-9
@@ -1,16 +1,17 @@
|
||||
#!/usr/bin/env coffee
|
||||
|
||||
Logger = require '../src/scripts/logger'
|
||||
Logger = require '../src/coffee/logger'
|
||||
|
||||
global._ = require 'underscore'
|
||||
global.Backbone = require 'backbone'
|
||||
global.logger = new Logger level:Logger.FATAL
|
||||
|
||||
require '../src/scripts/underscore_mixins'
|
||||
require '../src/coffee/underscore_mixins'
|
||||
|
||||
Mod = require '../src/scripts/models/mod'
|
||||
ModParser = require '../src/scripts/models/mod_parser'
|
||||
ModVersionParser = require '../src/scripts/models/mod_version_parser'
|
||||
{DefaultMods} = require '../src/coffee/constants'
|
||||
Mod = require '../src/coffee/models/mod'
|
||||
ModParser = require '../src/coffee/models/mod_parser'
|
||||
ModVersionParser = require '../src/coffee/models/mod_version_parser'
|
||||
fs = require 'fs'
|
||||
|
||||
modSlugs = {}
|
||||
@@ -25,17 +26,17 @@ urls = [
|
||||
"#{base}/craft/"
|
||||
]
|
||||
|
||||
for modSlug in fs.readdirSync './src/data'
|
||||
continue if modSlug[0] is '.'
|
||||
for modSlug in DefaultMods
|
||||
modSlugs[modSlug] = modSlug
|
||||
|
||||
mod = new Mod slug:modSlug
|
||||
modParser = new ModParser model:mod
|
||||
modParser.parse fs.readFileSync "./src/data/#{modSlug}/mod.cg", 'utf-8'
|
||||
modParser.parse fs.readFileSync "./static/data/#{modSlug}/mod.cg", 'utf-8'
|
||||
|
||||
mod.eachModVersion (modVersion)->
|
||||
modVersionDataFile = "./static/data/#{modSlug}/#{modVersion.version}/mod-version.cg"
|
||||
modVersionParser = new ModVersionParser model:modVersion
|
||||
modVersionParser.parse fs.readFileSync "./src/data/#{modSlug}/#{modVersion.version}/mod-version.cg", 'utf-8'
|
||||
modVersionParser.parse fs.readFileSync modVersionDataFile, 'utf-8'
|
||||
|
||||
modVersion.eachItem (item)->
|
||||
itemSlugs[item.slug] = item.slug
|
||||
|
||||
Reference in New Issue
Block a user