All files / piscosour/lib disclaimer.js

0% Statements 0/24
0% Branches 0/8
0% Functions 0/4
0% Lines 0/24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47                                                                                             
'use strict';
 
const fs = require('fs');
const path = require('path');
const fsUtils = require('./utils/fsUtils');
const home = process.env.HOME ? process.env.HOME : process.env.HOMEPATH;
const file = path.join(home, '.piscosour', 'piscosour.json');
const uuid = require('uuid');
 
module.exports = {
 
  _write: function(config) {
    fs.writeFileSync(file, JSON.stringify(config, null, 2));
  },
  _read: function() {
    if (!fsUtils.exists(file)) {
      fsUtils.createDir(path.join(home, '.piscosour'));
      return {
        analytics: {
          userok: {}
        }
      };
    } else {
      let config = fsUtils.readConfig(file);
      if (!config.analytics) {
        config.analytics = {
          userok: {}
        };
      }
      if (!config.analytics.userok) {
        config.analytics.userok = {};
      }
      return config;
    }
  },
  ok: function(name) {
    const config = this._read();
    config.analytics.uuid = uuid.v4();
    config.analytics.userok[name] = true;
    this._write(config);
  },
  ko: function(name) {
    const config = this._read();
    config.analytics.userok[name] = false;
    this._write(config);
  }
};