Issues (5)

MMM-Smappee.js (3 issues)

1
/* Magic Mirror
2
 * Module: Smappee
3
 *
4
 * By Christopher Fenner http://github.com/CFenner
5
 * MIT Licensed.
6
 */
7
Module.register('MMM-Smappee', {
0 ignored issues
show
The variable Module seems to be never declared. If this is a global, consider adding a /** global: Module */ comment.

This checks looks for references to variables that have not been declared. This is most likey a typographical error or a variable has been renamed.

To learn more about declaring variables in Javascript, see the MDN.

Loading history...
8
  defaults: {
9
    animationSpeed: 1000,
10
    client: {
11
      id: '',
12
      secret: ''
13
    },
14
    user: {
15
      id: '',
16
      password: ''
17
    },
18
    location: {
19
      id: '',
20
      name: ''
21
    },
22
    showTimestamp: false,
23
    updateInterval: 60000
24
  },
25
  // Load translations files
26
  getTranslations: function() {
27
    return {
28
      en: "i18n/en.json",
29
      de: "i18n/de.json"
30
    };
31
  },
32
  //getScripts: function() {return [];},
33
  //getStyles: function() {return [];},
34
  getDom: function() {
35
    var wrapper = document.createElement("div");
36
37
    if (!this.loaded) {
38
      wrapper.innerHTML = this.translate('LOADING');
39
      return wrapper;
40
    } else {
41
      var moduleInfo = document.createElement('div'), valueWrapper, value;
42
  
43
      valueWrapper = document.createElement('div');
44
      valueWrapper.setAttribute('class', 'small');
45
      valueWrapper.innerHTML = this.translate('CURRENT_CONSUMPTION') + ' ';
46
      value = document.createElement('span');
47
      value.setAttribute('class', 'wi weathericon wi-lightning bright');
48
      valueWrapper.appendChild(value);
49
      if(this.config.showTimestamp){
50
        value = document.createElement('div');
51
        value.innerHTML = moment(this.consumption.timestamp).fromNow();
52
        valueWrapper.appendChild(value);
53
      }
54
      moduleInfo.appendChild(valueWrapper);
55
56
      valueWrapper = document.createElement('div');
57
      value = document.createElement('span');
58
      value.innerHTML = this.consumption.consumption * 10 + ' W';
59
      value.setAttribute('class', 'bright');
60
      valueWrapper.appendChild(value);
61
      moduleInfo.appendChild(valueWrapper);
62
63
      valueWrapper = document.createElement('div');
64
      valueWrapper.setAttribute('class', 'small');
65
      valueWrapper.innerHTML = this.translate('PERMANENT_CONSUMPTION') + ' ';
66
      value = document.createElement('span');
67
      value.setAttribute('class', 'wi weathericon wi-night-clear bright');
68
      valueWrapper.appendChild(value);
69
      moduleInfo.appendChild(valueWrapper);
70
71
      valueWrapper = document.createElement('div');
72
      value = document.createElement('span');
73
      value.innerHTML = this.consumption.alwaysOn + ' W';
74
      value.setAttribute('class', 'bright');
75
      valueWrapper.appendChild(value);
76
      moduleInfo.appendChild(valueWrapper);
77
  
78
      wrapper.appendChild(moduleInfo);
79
    }
80
    return wrapper;
81
  },
82
  start: function() {
83
    Log.info('Starting module: ' + this.name);
0 ignored issues
show
The variable Log seems to be never declared. If this is a global, consider adding a /** global: Log */ comment.

This checks looks for references to variables that have not been declared. This is most likey a typographical error or a variable has been renamed.

To learn more about declaring variables in Javascript, see the MDN.

Loading history...
84
    Log.info(this.data.classes);
85
    this.loaded = false;
86
    this.consumption = '';
87
    this.update(this);
88
  },
89
  update: function(self) {
90
    var location = self.config.location;
91
    self.sendSocketNotification('SMAPPEE_LOAD', self.config);
92
    setTimeout(self.update, self.config.updateInterval, self);
93
  },
94
  process: function(payload){
95
    this.consumption = payload;
96
		this.loaded = true;
97
		this.updateDom(this.config.animationSpeed);
98
  },
99
  socketNotificationReceived: function(notification, payload) {
100
    if (notification === 'SMAPPEE_DATA') { //  && this.config.location === payload.location
101
      Log.info('received SMAPPEE_DATA');
0 ignored issues
show
The variable Log seems to be never declared. If this is a global, consider adding a /** global: Log */ comment.

This checks looks for references to variables that have not been declared. This is most likey a typographical error or a variable has been renamed.

To learn more about declaring variables in Javascript, see the MDN.

Loading history...
102
103
      this.process(payload);
104
    }
105
  }
106
});
107