Commit ef160243 authored by Johannes Bill's avatar Johannes Bill

refactor

parent 186b2c17
...@@ -11,9 +11,8 @@ var _epochEnd = new Date(_epochStart.getTime() + 130 * 24 * 3600000); ...@@ -11,9 +11,8 @@ var _epochEnd = new Date(_epochStart.getTime() + 130 * 24 * 3600000);
//var _epochEnd = new Date(2015, 0, 0); //var _epochEnd = new Date(2015, 0, 0);
var epochSpan = [_epochStart, _epochEnd]; var epochSpan = [_epochStart, _epochEnd];
function setEpocheSpan(startDate, endDate) { function setEpocheSpan(_epocheSpan) {
epochSpan[0] = startDate; epochSpan = _epocheSpan;
epochSpan[1] = endDate;
} }
function calculateOpeningHours(json) { function calculateOpeningHours(json) {
...@@ -24,7 +23,7 @@ function calculateOpeningHours(json) { ...@@ -24,7 +23,7 @@ function calculateOpeningHours(json) {
var jsonExcl = json[excludeString]; var jsonExcl = json[excludeString];
if (!jsonIncl) { if (!jsonIncl) {
throw 'no openinghours model found'; throw new Error('no openinghours model found');
} }
var resultIncl = []; var resultIncl = [];
...@@ -78,7 +77,7 @@ function getDaySpan(data) { ...@@ -78,7 +77,7 @@ function getDaySpan(data) {
case 10: case 10:
return [1, 6]; return [1, 6];
default: default:
throw ("Invalid day option: " + dayoption); throw new Error("Invalid day option: " + dayoption);
} }
} }
...@@ -105,7 +104,7 @@ function parseDate(date, addOneDay) { ...@@ -105,7 +104,7 @@ function parseDate(date, addOneDay) {
function getHolidays(data) { function getHolidays(data) {
var option = data["option"]["0"]; var option = data["option"]["0"];
if (option != "holiday") { if (option != "holiday") {
throw 'not holiday: ' + option; throw new Error('not holiday: ' + option);
} }
var timeSpan = getTimeSpan(data); var timeSpan = getTimeSpan(data);
...@@ -157,7 +156,7 @@ function getOpeningHours(data, option) { ...@@ -157,7 +156,7 @@ function getOpeningHours(data, option) {
case "": case "":
return []; return [];
default: default:
throw "option not supported: " + option; throw new Error("option not supported: " + option);
return []; return [];
} }
} }
...@@ -198,7 +197,7 @@ function getOpeningHoursRepeatable(data) { ...@@ -198,7 +197,7 @@ function getOpeningHoursRepeatable(data) {
case 28: case 28:
return tmUtils.standardFromTillDay(daySpan, timeSpan, dateSpan, epochSpan, repeatOption); return tmUtils.standardFromTillDay(daySpan, timeSpan, dateSpan, epochSpan, repeatOption);
default: default:
throw "invalid repeatoption"; throw new Error("invalid repeatoption");
} }
} }
} }
......
...@@ -16,7 +16,7 @@ function createWeekView(data, now) { ...@@ -16,7 +16,7 @@ function createWeekView(data, now) {
var content = '<div class="weekview-container"><table class="weekview-table">'; var content = '<div class="weekview-container"><table class="weekview-table">';
content += '<tbody>'; content += '<tbody>';
for(var i = 0; i < noOfDays; i++) { for (var i = 0; i < noOfDays; i++) {
var day = oHours[i]; var day = oHours[i];
content += '<tr class="weekview-tr">'; content += '<tr class="weekview-tr">';
content += '<td class="weekview-td-first">' + formatDate(day.date) + '</td>'; content += '<td class="weekview-td-first">' + formatDate(day.date) + '</td>';
...@@ -45,7 +45,7 @@ function createMonthView(data, now, monthOffset) { ...@@ -45,7 +45,7 @@ function createMonthView(data, now, monthOffset) {
startDate.setDate(2 - startDate.getDay()); startDate.setDate(2 - startDate.getDay());
var endDate = new Date(now.getFullYear(), currentMonth + 1, 1); var endDate = new Date(now.getFullYear(), currentMonth + 1, 1);
if(endDate.getDay() != 1) if (endDate.getDay() != 1)
endDate.setDate(9 - endDate.getDay()); endDate.setDate(9 - endDate.getDay());
var oHours = transformData(data, startDate, endDate); var oHours = transformData(data, startDate, endDate);
...@@ -54,7 +54,7 @@ function createMonthView(data, now, monthOffset) { ...@@ -54,7 +54,7 @@ function createMonthView(data, now, monthOffset) {
content += '<div class="monthview-month">' + moment(monthDate).format("MMMM") + '</div>'; content += '<div class="monthview-month">' + moment(monthDate).format("MMMM") + '</div>';
content += '<table class="monthview-table"><thead class="monthview-thead"><tr>'; content += '<table class="monthview-table"><thead class="monthview-thead"><tr>';
for(var i = 0; i < 7; i++) { for (var i = 0; i < 7; i++) {
content += '<th class="monthview-th">' + moment(oHours[i].date).format("dd") + '</th>'; content += '<th class="monthview-th">' + moment(oHours[i].date).format("dd") + '</th>';
} }
content += '</tr></thead>'; content += '</tr></thead>';
...@@ -62,13 +62,13 @@ function createMonthView(data, now, monthOffset) { ...@@ -62,13 +62,13 @@ function createMonthView(data, now, monthOffset) {
for (var i = 0; i < oHours.length; i++) { for (var i = 0; i < oHours.length; i++) {
var day = oHours[i]; var day = oHours[i];
if(i % 7 == 0) if (i % 7 == 0)
content += '<tr class="monthview-tr">'; content += '<tr class="monthview-tr">';
if(day.date.getMonth() == currentMonth) { if (day.date.getMonth() == currentMonth) {
var cls; var cls;
var tooltip; var tooltip;
if(day.oHours.length == 0) { if (day.oHours.length == 0) {
tooltip = ""; tooltip = "";
cls = " monthview-empty"; cls = " monthview-empty";
} }
...@@ -80,16 +80,16 @@ function createMonthView(data, now, monthOffset) { ...@@ -80,16 +80,16 @@ function createMonthView(data, now, monthOffset) {
tooltip.push(formatTime(e[0]) + " - " + formatTime(e[1])); tooltip.push(formatTime(e[0]) + " - " + formatTime(e[1]));
} }
tooltip = tooltip.join("<br>"); tooltip = tooltip.join("<br>");
tooltip = ' data-uk-tooltip title="' + tooltip +'"'; tooltip = ' data-uk-tooltip title="' + tooltip + '"';
} }
content += '<td class="monthview-td' + cls +'"'+ tooltip+'>' + moment(day.date).format("D") + '</td>'; content += '<td class="monthview-td' + cls + '"' + tooltip + '>' + moment(day.date).format("D") + '</td>';
} }
else { else {
content += '<td class="monthview-td monthview-exclude"></td>'; content += '<td class="monthview-td monthview-exclude"></td>';
} }
if(i % 7 == 6) if (i % 7 == 6)
content += '</tr>'; content += '</tr>';
} }
...@@ -99,13 +99,21 @@ function createMonthView(data, now, monthOffset) { ...@@ -99,13 +99,21 @@ function createMonthView(data, now, monthOffset) {
function create3MonthView(data, now) { function create3MonthView(data, now) {
var content = '<div class="monthview-container">'; var content = '<div class="monthview-container">';
for(var i = 0; i < 3; i++) { for (var i = 0; i < 3; i++) {
content += createMonthView(data, now, i); content += createMonthView(data, now, i);
} }
content += '</div>'; content += '</div>';
return content; return content;
} }
function getView(data, now) {
var content = '<div class="view-container">';
content += createWeekView(data, now);
content += create3MonthView(data, now);
content += '</div>';
return content;
}
function getMaxNoOfItemsPerDay(oHours) { function getMaxNoOfItemsPerDay(oHours) {
var max = 0; var max = 0;
for (var i = 0; i < oHours.length; i++) { for (var i = 0; i < oHours.length; i++) {
...@@ -157,15 +165,13 @@ function compareDate(date1, date2) { ...@@ -157,15 +165,13 @@ function compareDate(date1, date2) {
return diff; return diff;
} }
var fs = require('fs'); function getPropperEpocheSpan(now) {
var epocheStart = new Date(now.getFullYear(), now.getMonth(), 1 - 4);
var data = dateArray.getData(require('./../testData/testHof.json')); var epocheEnd = new Date(now.getFullYear(), now.getMonth() + 3, 1);
console.log(data); console.log(epocheStart);
var view = create3MonthView(data, new Date(), 0); console.log(epocheEnd);
view += createWeekView(data, new Date()); return [epocheStart, epocheEnd];
console.log(); }
fs.writeFile(process.env["HOME"] + '/Desktop/bla.html', view, function(err) { module.exports.getView = getView;
if(err) console.log(err); module.exports.getPropperEpocheSpan = getPropperEpocheSpan;
else console.log("file saved"); \ No newline at end of file
});
\ No newline at end of file
...@@ -43,7 +43,9 @@ function Holidays(year) { ...@@ -43,7 +43,9 @@ function Holidays(year) {
}; };
var easterSundays = { var easterSundays = {
2014: new Date(2014, 3, 20) 2014: new Date(2014, 3, 20),
2015: new Date(2015, 3, 5),
2016: new Date(2016, 2, 27)
}; };
function getEasterSunday() { function getEasterSunday() {
...@@ -52,7 +54,7 @@ function Holidays(year) { ...@@ -52,7 +54,7 @@ function Holidays(year) {
function getFixedHolidays(fixedHolidays, object) { function getFixedHolidays(fixedHolidays, object) {
var result = object || {}; var result = object || {};
for(var key in fixedHolidays) { for (var key in fixedHolidays) {
var dateString = fixedHolidays[key]; var dateString = fixedHolidays[key];
var date = parseInt(dateString.slice(0, 2)); var date = parseInt(dateString.slice(0, 2));
var month = parseInt(dateString.slice(2, 4)); var month = parseInt(dateString.slice(2, 4));
...@@ -64,7 +66,7 @@ function Holidays(year) { ...@@ -64,7 +66,7 @@ function Holidays(year) {
function getVariableHolidaysMap(offsets, object) { function getVariableHolidaysMap(offsets, object) {
var result = object || {}; var result = object || {};
var easterDate = getEasterSunday(); var easterDate = getEasterSunday();
for(var key in offsets) { for (var key in offsets) {
var offset = offsets[key]; var offset = offsets[key];
result[key] = new Date(year, easterDate.getMonth(), easterDate.getDate() + offset); result[key] = new Date(year, easterDate.getMonth(), easterDate.getDate() + offset);
} }
...@@ -74,15 +76,15 @@ function Holidays(year) { ...@@ -74,15 +76,15 @@ function Holidays(year) {
var holidays = getFixedHolidays(fixedHolidays); var holidays = getFixedHolidays(fixedHolidays);
holidays = getVariableHolidaysMap(variableOffsets, holidays); holidays = getVariableHolidaysMap(variableOffsets, holidays);
this.getHoliday = function(id) { this.getHoliday = function (id) {
if(id == 0) { if (id == 0) {
var result = []; var result = [];
for(var key in holidays) { for (var key in holidays) {
result.push(holidays[key]); result.push(holidays[key]);
} }
return result; return result;
} }
if(id in holidays) if (id in holidays)
return [holidays[id]]; return [holidays[id]];
console.error("invalid holiday id " + id); console.error("invalid holiday id " + id);
return null; return null;
......
var mysql = require('mysql'); var mysql = require('mysql');
var dateArray = require('../lib/dateArray'); var dateArray = require('../lib/dateArray');
var dateView = require('../lib/dateView');
var fs = require('fs'); var fs = require('fs');
var tmUtils = require('../lib/timeUtils'); var tmUtils = require('../lib/timeUtils');
...@@ -9,8 +11,8 @@ var excludeString = "bb74c170-b06f-4d2b-ab88-2f6bf9ce8068"; ...@@ -9,8 +11,8 @@ var excludeString = "bb74c170-b06f-4d2b-ab88-2f6bf9ce8068";
var connection = mysql.createConnection({ var connection = mysql.createConnection({
host: 'localhost', host: 'localhost',
user: 'root', user: 'read',
password: 'bla', password: 'read',
database: 'regiostart' database: 'regiostart'
}); });
...@@ -29,9 +31,9 @@ connection.query('SELECT name, elements FROM cms_zoo_item WHERE type = "company" ...@@ -29,9 +31,9 @@ connection.query('SELECT name, elements FROM cms_zoo_item WHERE type = "company"
} }
catch(err) catch(err)
{ {
console.log(err, name); console.log(err.message, name);
var result = []; var result = [];
fs.writeFileSync(process.env["HOME"] + '/Desktop/invalid/' + name + '.json', json); fs.writeFileSync(process.env["HOME"] + '/Desktop/oHours/invalid' + name + '.json', json);
} }
if(result.length > 0) { if(result.length > 0) {
......
var dateView = require('../lib/dateView');
var dateArray = require('../lib/dateArray');
var fs = require('fs');
var now = new Date(2014, 4, 1);
dateArray.setEpocheSpan(dateView.getPropperEpocheSpan(now));
var data = dateArray.getData(require('./../testData/testHof.json'));
console.log(data);
var view = dateView.getView(data, now, 0);
fs.writeFile(process.env["HOME"] + '/Desktop/bla.html', view, function (err) {
if (err) console.log(err);
else console.log("file saved");
});
\ No newline at end of file
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