]>
git.immae.eu Git - perso/Immae/Projets/Nodejs/Surfer.git/blob - cli/config.js
5 var fs
= require('fs'),
6 path
= require('path'),
7 safe
= require('safetydance'),
8 _
= require('underscore');
10 exports
= module
.exports
= {
18 server: function () { return get('server'); },
19 accessToken: function () { return get('accessToken'); }
22 var HOME
= process
.env
.HOME
|| process
.env
.HOMEPATH
|| process
.env
.USERPROFILE
;
23 var CONFIG_FILE_PATH
= path
.join(HOME
, '.surfer.json');
25 var gConfig
= (function () {
26 return safe
.JSON
.parse(safe
.fs
.readFileSync(CONFIG_FILE_PATH
)) || {};
30 fs
.writeFileSync(CONFIG_FILE_PATH
, JSON
.stringify(gConfig
, null, 4));
34 safe
.fs
.unlinkSync(CONFIG_FILE_PATH
);
37 function set(key
, value
) {
38 if (typeof key
=== 'object') {
39 _
.extend(gConfig
, key
);
41 safe
.set(gConfig
, key
, value
);
47 return safe
.query(gConfig
, key
);
50 function unset(key
/*, .... */) {
51 for (var i
= 0; i
< arguments
.length
; i
++) {
52 gConfig
= safe
.unset(gConfig
, arguments
[i
]);
58 function has(key
/*, ... */) {
59 for (var i
= 0; i
< arguments
.length
; i
++) {
60 if (!(arguments
[i
] in gConfig
)) return false;