]>
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'); }
21 var HOME
= process
.env
.HOME
|| process
.env
.HOMEPATH
|| process
.env
.USERPROFILE
;
22 var CONFIG_FILE_PATH
= path
.join(HOME
, '.surfer.json');
24 var gConfig
= (function () {
25 return safe
.JSON
.parse(safe
.fs
.readFileSync(CONFIG_FILE_PATH
)) || {};
29 fs
.writeFileSync(CONFIG_FILE_PATH
, JSON
.stringify(gConfig
, null, 4));
33 safe
.fs
.unlinkSync(CONFIG_FILE_PATH
);
36 function set(key
, value
) {
37 if (typeof key
=== 'object') {
38 _
.extend(gConfig
, key
);
40 safe
.set(gConfig
, key
, value
);
46 return safe
.query(gConfig
, key
);
49 function unset(key
/*, .... */) {
50 for (var i
= 0; i
< arguments
.length
; i
++) {
51 gConfig
= safe
.unset(gConfig
, arguments
[i
]);
57 function has(key
/*, ... */) {
58 for (var i
= 0; i
< arguments
.length
; i
++) {
59 if (!(arguments
[i
] in gConfig
)) return false;