Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
calendar_dm.php
calendar_default.php
6 changes: 5 additions & 1 deletion css/main.css
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ body, html {
.lower-third
{
position: absolute;
top: 66.666%;
top: 85%;
height: 200px;
margin-top: -100px;
line-height: 100px;
Expand Down Expand Up @@ -194,6 +194,10 @@ body, html {
display: none;
}

.ontime {
margin-top: 20px;
}

@font-face {
font-family: 'HelveticaNeue-UltraLight';
src: url('font/HelveticaNeue-UltraLight.eot'); /* IE9 Compat Modes */
Expand Down
6 changes: 3 additions & 3 deletions index.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,17 @@

<div class="top left"><div class="date small dimmed"></div><div class="time"></div><div class="calendar xxsmall"></div></div>
<div class="top right"><div class="windsun small dimmed"></div><div class="temp"></div><div class="forecast small dimmed"></div></div>
<div class="center-ver center-hor"><div class="dishwasher light">Vaatwasser is klaar!</div></div>
<div class="lower-third center-hor"><div class="compliment light"></div></div>
<div class="bottom center-hor"><div class="news medium"></div></div>
<div class="bottom center-hor"><div class="news medium"></div><div class="ontime xxsmall dimmed"></div></div>

</div>

<script src="js/jquery.js"></script>
<script src="js/jquery.feedToJSON.js"></script>
<script src="js/ical_parser.js"></script>
<script src="js/moment-with-langs.min.js"></script>
<script src="js/moment-with-locales.js"></script>
<script src="js/config.js"></script>
<script src="js/rrule.js"></script>
<script src="js/main.js?nocache=<?php echo md5(microtime()) ?>"></script>
<script src="js/socket.io.min.js"></script>

Expand Down
20 changes: 8 additions & 12 deletions js/config.js
Original file line number Diff line number Diff line change
@@ -1,29 +1,25 @@
// for navigator language
var lang = window.navigator.language;
//var lang = window.navigator.language;
// you can change the language
//var lang = 'en';
var lang = 'de';

//change weather params here:
//units: metric or imperial
var weatherParams = {
'q':'Baarn,Netherlands',
'q':'Schwabach,Germany',
'units':'metric',
'lang':lang
};

var feed = 'http://feeds.nos.nl/nosjournaal?format=rss';
//var feed = 'http://feeds.nos.nl/nosjournaal?format=rss';
//var feed = 'http://www.nu.nl/feeds/rss/achterklap.rss';
//var feed = 'http://www.nu.nl/feeds/rss/opmerkelijk.rss';
//var feed = 'http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml';
var feed = 'http://www.spiegel.de/schlagzeilen/tops/index.rss';

// compliments:
var compliments = [
'Hey, handsome!',
'Hi, sexy!',
'Hello, beauty!',
'You look sexy!',
'Wow, you look hot!',
'Looking good today!',
'You look nice!',
'Enjoy your day!'
'Gut schaust aus!',
'Viel Spa&szlig; heute!',
'Einen sch&ouml;nen Tag!'
];
57 changes: 48 additions & 9 deletions js/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,9 @@ jQuery(document).ready(function($) {
var lastCompliment;
var compliment;

moment.lang(lang);
moment.locale(lang);

/*
//connect do Xbee monitor
var socket = io.connect('http://rpi-alarm.local:8082');
socket.on('dishwasher', function (dishwasherReady) {
Expand All @@ -59,7 +60,7 @@ jQuery(document).ready(function($) {
$('.lower-third').fadeIn(2000);
}
});

*/

(function checkVersion()
{
Expand All @@ -75,7 +76,19 @@ jQuery(document).ready(function($) {
checkVersion();
}, 3000);
})();


(function checkOnTime()
{
$.getJSON('ontime.php', {}, function(json, textStatus) {
if (json) {
$('.ontime').html("Aus in "+json.ontime+" Sekunden");
}
});
setTimeout(function() {
checkOnTime();
}, 500);
})();

(function updateTime()
{
var now = moment();
Expand All @@ -95,7 +108,7 @@ jQuery(document).ready(function($) {
new ical_parser("calendar.php", function(cal){
events = cal.getEvents();
eventList = [];

for (var i in events) {
var e = events[i];
for (var key in e) {
Expand All @@ -116,7 +129,7 @@ jQuery(document).ready(function($) {

if (mainKey == 'DTSTART') e.startDate = dt;
if (mainKey == 'DTEND') e.endDate = dt;
}
}
}

if (e.startDate == undefined){
Expand All @@ -130,17 +143,43 @@ jQuery(document).ready(function($) {
var seconds = moment(e.startDate).diff(moment(), 'seconds');
var startDate = moment(e.startDate);
}

//only add fututre events, days doesn't work, we need to check seconds
if (seconds >= 0) {
if (seconds <= 60*60*5 || seconds >= 60*60*24*2) {
if (seconds <= 60*60*5 || seconds >= 60*60*24*7) {
var time_string = moment(startDate).fromNow();
}else {
var time_string = moment(startDate).calendar()
}
eventList.push({'description':e.SUMMARY,'seconds':seconds,'days':time_string});
if (!e.RRULE) {
eventList.push({'description':e.SUMMARY,'seconds':seconds,'days':time_string});
}
e.seconds = seconds;
}
};

// Special handling for rrule events
if (e.RRULE) {
var options = new RRule.parseString(e.RRULE);
options.dtstart = e.startDate;
var rule = new RRule(options);

var dates = rule.between(new Date(), new Date(2016,11,31), true, function (date, i){return i < 10});
for (date in dates) {
var dt = new Date(dates[date]);
var days = moment(dt).diff(moment(), 'days');
var seconds = moment(dt).diff(moment(), 'seconds');
var startDate = moment(dt);
if (seconds >= 0) {
if (seconds <= 60*60*5 || seconds >= 60*60*24*7) {
var time_string = moment(dt).fromNow();
} else {
var time_string = moment(dt).calendar()
}
eventList.push({'description':e.SUMMARY,'seconds':seconds,'days':time_string});
}
}
}
};
eventList.sort(function(a,b){return a.seconds-b.seconds});

setTimeout(function() {
Expand Down
Loading