Adds core/mode. Lots of changes to make installation more flexible.

This commit is contained in:
Lars Jung 2012-08-17 16:35:25 +02:00
parent fd89ea1d90
commit f1a2a44079
14 changed files with 116 additions and 82 deletions

View file

@ -1,16 +1,11 @@
modulejs.define('parser/generic-json', ['_', '$', 'core/settings', 'model/entry'], function (_, $, settings, Entry) {
modulejs.define('parser/generic-json', ['_', '$', 'core/mode', 'core/settings', 'model/entry'], function (_, $, mode, settings, Entry) {
var parser = {
id: 'generic-json',
mode: null,
server: {
name: null,
version: null
}
},
var parseJson = function (absHref, json) {
parseJson = function (absHref, json) {
mode.id = json.id;
mode.serverName = json.serverName;
mode.serverVersion = json.serverVersion;
if (_.has(json, 'customHeader')) {
settings.custom.header = json.customHeader;
@ -18,13 +13,6 @@ modulejs.define('parser/generic-json', ['_', '$', 'core/settings', 'model/entry'
if (_.has(json, 'customFooter')) {
settings.custom.footer = json.customFooter;
}
if (_.has(json, 'mode')) {
parser.mode = json.mode;
}
if (_.has(json, 'server')) {
parser.server = json.server;
}
return _.map(json.entries, function (jsonEntry) {
return Entry.get(jsonEntry.absHref, jsonEntry.time, jsonEntry.size, jsonEntry.status, jsonEntry.content);
@ -49,7 +37,10 @@ modulejs.define('parser/generic-json', ['_', '$', 'core/settings', 'model/entry'
return parseJsonStr(absHref, $id.text());
};
parser.parse = parse;
mode.dataType = 'generic-json';
return parser;
return {
dataType: 'generic-json',
parse: parse
};
});