Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Magic Mirror
- * Module: MMM-EventHorizon
- *
- * By Geo
- *
- */
- Module.register("MMM-EventHorizon", {
- defaults: {
- size: "small", // small, medium or large
- countUp: "yes", // Count up after timer ends
- date: "2018-07-04",
- time: "00:00:01", // (HH:MM:SS) Exact time you want timer to end
- text1: "Describe event here", // 2 lines of text during timer
- text2: "And here too!", // 2 lines of text during timer
- endText1: "When timer ends", // 2 lines of text when timer ends
- endText2: "Say something here", // 2 lines of text when timer ends
- },
- getStyles: function () {
- return ["MMM-EventHorizon.css"];
- },
- getScripts: function () {
- return [
- 'moment.js'
- ];
- },
- start: function () {
- this.scheduleUpdate();
- },
- scheduleUpdate: function (delay) {
- var loadTime = 1000 //this.config.updateInterval;
- if (typeof delay !== "undefined" && delay >= 0) {
- loadTime = delay;
- }
- var self = this;
- setInterval(function () {
- this.updateDom();
- }, loadTime);
- },
- getDom: function () {
- var wrapper = document.querySelector('#AgeLeo');
- if (!wrapper) {
- document.createElement("div");
- wrapper.id = "AgeLeo";
- wrapper.innerHTML = '<p>👶 Léo est né il y a:</p>';
- wrapper.innerHTML += '<p id="countUpDate"></p>';
- }
- var dateLeo = new Date(1535451060000); // Tue Aug 28 2018 12:11:00 GMT+0200
- var now = new Date();
- var momentDate1 = moment(dateLeo);
- var momentDate2 = moment(now);
- //On déclare les intervalles voulus ainsi que leurs libellés
- var intervals = [{
- type: "years",
- label: "ans",
- value: 0
- },
- {
- type: "months",
- label: "mois",
- value: 0
- },
- {
- type: "weeks",
- label: "semaines",
- value: 0
- },
- {
- type: "days",
- label: "jours",
- value: 0
- },
- {
- type: "hours",
- label: "heures",
- value: 0
- },
- {
- type: "minutes",
- label: "minutes",
- value: 0
- },
- {
- type: "seconds",
- label: "secondes",
- value: 0
- }
- ];
- //On calcule les intervalles
- for (var i = 0; i < intervals.length; i++) {
- var diff = momentDate2.diff(momentDate1, intervals[i].type);
- momentDate1.add(diff, intervals[i].type);
- intervals[i].value = diff;
- }
- var output = "";
- //On les mets en forme ici
- //Pour chaque intervalle, on choisit comment l'afficher
- //Ici je les colle les uns à la suite des autres
- for (var i = 0; i < intervals.length; i++) {
- output += intervals[i].value + intervals[i].label + " ";
- }
- wrapper.innerHTML = output;
- return wrapper;
- }
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement