1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 | exports.loadModule = function(fs){
|
13 | var ret = fs.existsSync("module.json");
|
14 | if(ret){
|
15 | return JSON.parse(fs.readFileSync('module.json', 'utf8'));
|
16 | }else{
|
17 | return ret;
|
18 | }
|
19 | }
|
20 |
|
21 | exports.saveModule = function(fs,module,app){
|
22 |
|
23 | fs.open("./"+app+"/module.json",'w+',function(err,fd){
|
24 | fs.write(fd,JSON.stringify(module));
|
25 | })
|
26 |
|
27 | }
|
28 |
|
29 | exports.saveNewModule = function(fs,module){
|
30 | fs.open("./module.json",'w+',function(err,fd){
|
31 | fs.write(fd,JSON.stringify(module));
|
32 | })
|
33 | }
|
34 |
|
35 | exports.insertNewModule = function(moduleData,module){
|
36 |
|
37 | var newModule = {};
|
38 | newModule = moduleData;
|
39 | module[module.length]=moduleData;
|
40 |
|
41 | }
|
42 |
|
43 | exports.installModule = function(moduleManager,http,fs,config,indexGen,moduleRepo,namePackage,shelljs,cssGen,states,stateManager){
|
44 | var options = {
|
45 | host: 'www.angelocarraggi.altervista.org',
|
46 | port: 80,
|
47 | path: '/ng-make/module.php'
|
48 | };
|
49 |
|
50 |
|
51 | http.get(options, function(res) {
|
52 |
|
53 |
|
54 |
|
55 | res.setEncoding('utf8');
|
56 | res.on('data', function (chunk) {
|
57 | var module = moduleManager.loadModule(fs);
|
58 |
|
59 | moduleRepo=JSON.parse(chunk);
|
60 | var repoData = {};
|
61 | var i=0;
|
62 | moduleRepo.forEach(function(val,id){
|
63 | if(namePackage == val.name){
|
64 | repoData = val;
|
65 | i++;
|
66 |
|
67 | }
|
68 | });
|
69 | var err=0;
|
70 | module.forEach(function(val,id){
|
71 | if(namePackage==val.name){
|
72 | err=1;
|
73 | }
|
74 | });
|
75 | if(err==1){
|
76 | console.log("[ FAIL ] This module has been installed!");
|
77 | process.exit();
|
78 | }
|
79 | if(i==0){
|
80 | console.log('This package name doesn\'t exists view all package with: \'ng-make module list\'');
|
81 | return 0;
|
82 | }
|
83 | var usageName = repoData.usage;
|
84 | var installcmd = repoData.installcmd;
|
85 | var arrCmd = installcmd.split(',');
|
86 | arrCmd.forEach(function(val,id){
|
87 | shelljs.exec(val);
|
88 | })
|
89 |
|
90 | if(repoData.usageName=""){
|
91 |
|
92 | }else{
|
93 |
|
94 | console.log("usageName="+repoData.usage);
|
95 | var arrUsageName = usageName.split(',');
|
96 | arrUsageName.forEach(function(val,id){
|
97 | var file = fs.readFileSync('settings/app.js','utf8');
|
98 | file = file.replace("//%Anchor",","+val+"\n//%Anchor");
|
99 | fs.open('settings/app.js','w+',function(err,fd){
|
100 | fs.write(fd,file);
|
101 | })
|
102 | })
|
103 |
|
104 | }
|
105 |
|
106 | var pathjs = repoData.pathjs;
|
107 | var arrPathJS = pathjs.split(',');
|
108 | arrPathJS.forEach(function(val,id){
|
109 | indexGen.addingScriptDependency(config,val,fs);
|
110 | })
|
111 |
|
112 | var pathcss = repoData.pathcss;
|
113 | var arrPathCSS = pathcss.split(',');
|
114 | arrPathCSS.forEach(function(val,id){
|
115 | indexGen.addingCSSDependency(val,fs);
|
116 | })
|
117 | var module = moduleManager.loadModule(fs);
|
118 | module[module.length]=repoData;
|
119 | moduleManager.saveNewModule(fs,module);
|
120 | if(states==false){
|
121 |
|
122 | }else{
|
123 | if(repoData.usageCtrl!=""){
|
124 | stateManager.updateControllerFile(repoData.usageCtrl,fs,states);
|
125 | }
|
126 | }
|
127 | });
|
128 | }).on('error', function(e) {
|
129 | console.log("Got error: " + e.message);
|
130 | });
|
131 | }
|
132 |
|
133 | exports.addModule = function(moduleData,config,fs,indexGen){
|
134 |
|
135 | var file = fs.readFileSync('settings/app.js','utf8');
|
136 | file = file.replace("//%Anchor",",'"+moduleData.usageName+"'\n//%Anchor");
|
137 | fs.open('settings/app.js','w+',function(err,fd){
|
138 | fs.write(fd,file);
|
139 | })
|
140 |
|
141 |
|
142 |
|
143 |
|
144 | fs.open('js/'+moduleData.name+".js",'w+',function(err,fd){
|
145 | fs.write(fd, "'use strict';\nangular.module(\'"+moduleData.usageName+"\',[]);\n");
|
146 | })
|
147 |
|
148 | indexGen.addingScriptDependency(config,moduleData.path,fs);
|
149 |
|
150 | }
|
151 |
|
152 | exports.listModuleRepo = function(http,moduleRepo,cmdMan){
|
153 | var options = {
|
154 | host: 'www.angelocarraggi.altervista.org',
|
155 | port: 80,
|
156 | path: '/ng-make/module.php'
|
157 | };
|
158 |
|
159 |
|
160 | http.get(options, function(res) {
|
161 |
|
162 |
|
163 |
|
164 | res.setEncoding('utf8');
|
165 | res.on('data', function (chunk) {
|
166 |
|
167 | moduleRepo=JSON.parse(chunk);
|
168 |
|
169 | cmdMan.printModulesRepository(moduleRepo);
|
170 | });
|
171 | }).on('error', function(e) {
|
172 | console.log("Got error: " + e.message);
|
173 | });
|
174 | }
|
175 |
|
176 | exports.listInstalled = function(moduleManager,fs){
|
177 |
|
178 | console.log( "██╗███╗ ██╗███████╗████████╗ █████╗ ██╗ ██╗ ███████╗██████╗ ███╗ ███╗ ██████╗ ██████╗ ██╗ ██╗██╗ ███████╗");
|
179 | console.log( "██║████╗ ██║██╔════╝╚══██╔══╝██╔══██╗██║ ██║ ██╔════╝██╔══██╗ ████╗ ████║██╔═══██╗██╔══██╗██║ ██║██║ ██╔════╝");
|
180 | console.log( "██║██╔██╗ ██║███████╗ ██║ ███████║██║ ██║ █████╗ ██║ ██║ ██╔████╔██║██║ ██║██║ ██║██║ ██║██║ █████╗ ");
|
181 | console.log( "██║██║╚██╗██║╚════██║ ██║ ██╔══██║██║ ██║ ██╔══╝ ██║ ██║ ██║╚██╔╝██║██║ ██║██║ ██║██║ ██║██║ ██╔══╝ ");
|
182 | console.log( "██║██║ ╚████║███████║ ██║ ██║ ██║███████╗███████╗███████╗██████╔╝ ██║ ╚═╝ ██║╚██████╔╝██████╔╝╚██████╔╝███████╗███████╗");
|
183 | console.log( "╚═╝╚═╝ ╚═══╝╚══════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚══════╝╚══════╝╚═════╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝╚══════╝");
|
184 | console.log( " ");
|
185 | var module = moduleManager.loadModule(fs);
|
186 | module.forEach(function(val,id){
|
187 | if(id!=0){
|
188 | console.log(val.name);
|
189 | }
|
190 | })
|
191 |
|
192 | }
|
193 |
|
194 |
|
195 |
|
196 |
|
197 |
|
198 |
|
199 |
|
200 |
|
201 |
|
202 |
|
203 |
|
204 |
|
205 |
|
206 |
|
207 |
|
208 |
|
209 |
|
210 |
|
211 |
|
212 |
|
213 |
|
214 |
|
215 |
|
216 |
|
\ | No newline at end of file |