/* global Log, Module, moment, config */ /* Magic Mirror * Module: Clock * * By Michael Teeuw http://michaelteeuw.nl * MIT Licensed. */ Module.register('clock',{ // Module config defaults. defaults: { timeFormat: config.timeFormat, displaySeconds: true, }, // Define required scripts. getScripts: function() { return ['moment.js']; }, // Define start sequence. start: function() { Log.info('Starting module: ' + this.name); // Schedule update interval. var self = this; setInterval(function() { self.updateDom(); }, 1000); // Set locale. moment.locale(config.language); }, // Override dom generator. getDom: function() { // Create wrappers. var wrapper = document.createElement("div"); var dateWrapper = document.createElement("div"); var timeWrapper = document.createElement("div"); var secondsWrapper = document.createElement("sup"); // Style Wrappers dateWrapper.className = "date normal medium"; timeWrapper.className = "time bright large light"; secondsWrapper.className = "dimmed"; // Set content of wrappers. dateWrapper.innerHTML = moment().format('dddd, LL'); timeWrapper.innerHTML = moment().format((this.config.timeFormat === 24) ? 'HH:mm' : ('hh:mm')); secondsWrapper.innerHTML = moment().format('ss'); // Combine wrappers. wrapper.appendChild(dateWrapper); wrapper.appendChild(timeWrapper); if (this.config.displaySeconds) { timeWrapper.appendChild(secondsWrapper); } // Return the wrapper to the dom. return wrapper; } });