Commit 527646b3 authored by Johannes Bill's avatar Johannes Bill

added pretifyData script, to get rid of strange php formatting

parent 6aeb8b9c
......@@ -59,6 +59,7 @@ function getShort(info, now, cb) {
module.exports = {
getOHIndex: getOHIndex,
getFull: getFull,
getShort: getShort
getShort: getShort,
pretify: require('./lib/pretifyData').pretify
};
......@@ -123,7 +123,7 @@ function wrapper(_epochSpan) {
}
function getDaySpan(data) {
var dayoptionS = data["dayoption"][0];
var dayoptionS = data["dayoption"];
var dayoption = parseInt(dayoptionS);
if (dayoption < 7) return [dayoption, dayoption];
switch (dayoption) {
......@@ -161,13 +161,13 @@ function wrapper(_epochSpan) {
}
function getHolidays(data) {
var option = data["option"][0];
var option = data["option"];
if (option != "holiday") {
throw new Error('not holiday: ' + option);
}
var timeSpan = getTimeSpan(data);
var holidayId = data["holidayoption"][0];
var holidayId = data["holidayoption"];
var days = [];
for (var year = startYear; year <= endYear; year++) {
......@@ -240,7 +240,7 @@ function wrapper(_epochSpan) {
}
function getOption(data) {
return data["option"][0];
return data["option"];
}
function getOpeningHours(data, option) {
......@@ -292,7 +292,7 @@ function wrapper(_epochSpan) {
var daySpan = getDaySpan(data);
var timeSpan = getTimeSpan(data);
var dateSpan = getDateSpan(data);
var repeatOption = parseInt(data["repeatoption"][0]);
var repeatOption = parseInt(data["repeatoption"]);
var noInMonth;
if (repeatOption <= 4) noInMonth = repeatOption;
......
"use strict";
function pretify(data) {
function pretifyOption(val) {
var ret;
if (typeof val == 'object' && val[0] !== undefined) {
ret = val[0];
}
else if (typeof val == 'string' || typeof val == 'number') {
ret = val;
}
else {
throw new Error('invalid option', val);
}
if (ret === "") ret = undefined;
return ret;
}
function pretifyField(field) {
var ret = {};
for (let key of Object.keys(field)) {
var val = pretifyOption(field[key]);
if (val) ret[key] = val;
}
if (Object.keys(ret).length === 0) ret = undefined;
return ret;
}
var ret = {};
for (let key of Object.keys(data)) {
let fields = data[key];
if (fields) {
var newFields = fields.map(function (field) {
return pretifyField(field);
}).filter(function (field) {
return !!field;
});
ret[key] = newFields;
}
}
return ret;
}
module.exports.pretify = pretify;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment