Added new modules to help prevent Cross Site Request Forgery
[sdnc/oam.git] / admportal / server / router / routes / network.js
index c64beae..30aa66b 100644 (file)
@@ -20,12 +20,15 @@ var finalJson={};
 var platform;\r
 var req,res;\r
 var preloadVersion;  // 1607, 1610, etc...\r
+var proc_error = false;\r
+var filename;\r
 \r
 puts = helpers.puts;\r
 putd = helpers.putd;\r
 \r
 network.go = function(lreq,lres,cb,dir) {\r
   puts("Processing NETWORK workbook");\r
+       proc_error = false;\r
   req = lreq;\r
   res = lres;\r
   callback = cb;\r
@@ -49,7 +52,8 @@ function doGeneral() {
     helpers.readCsv(indir, newFileName, gotGeneral);\r
   }\r
   else {\r
-    callback(csvFilename + ' file is missing from upload.');\r
+    puts('general file is missing from upload.');\r
+               proc_error=true;\r
   }\r
 }\r
 \r
@@ -57,8 +61,9 @@ function gotGeneral(err, jsonObj) {
   if (err) {\r
     puts("\nError!");\r
     putd(err);\r
-    callback('General.csv file is missing from upload.');\r
-    return;\r
+    proc_error=true;\r
+               callback('General.csv file is missing from upload.');\r
+               return;\r
   }\r
   csvGeneral = jsonObj;\r
   puts("\nRead this: ");\r
@@ -77,7 +82,10 @@ function doSubnets() {
     helpers.readCsv(indir, newFileName, gotSubnets);\r
   }\r
   else {\r
+               puts('subnets file is missing from upload.');\r
+    proc_error=true;\r
     callback(csvFilename + ' file is missing from upload.');\r
+               return;\r
   }\r
 }\r
 \r
@@ -85,6 +93,7 @@ function gotSubnets(err, jsonObj) {
   if (err) {\r
     puts("\nError!");\r
     putd(err);\r
+               proc_error=true;\r
     callback('Subnets.csv file is missing from upload.');\r
     return;\r
   }\r
@@ -108,7 +117,10 @@ function doVpnBindings() {
     helpers.readCsv(indir, newFileName, gotVpnBindings);\r
   }\r
   else {\r
+               puts('vnp-bindings file is missing from upload.');\r
+    proc_error=true;\r
     callback(csvFilename + ' file is missing from upload.');\r
+               return;\r
   }\r
 }\r
 \r
@@ -116,6 +128,7 @@ function gotVpnBindings(err, jsonObj) {
   if (err) {\r
     puts("\nError!");\r
     putd(err);\r
+               proc_error=true;\r
     callback('VPN-Bindings.csv file is missing from upload.');\r
     return;\r
   }\r
@@ -140,7 +153,10 @@ function doPolicies() {
     helpers.readCsv(indir, newFileName, gotPolicies);\r
   }\r
   else {\r
+               puts('policies file is missing from upload.');\r
+    proc_error=true;\r
     callback(csvFilename + ' file is missing from upload.');\r
+               return;\r
   }\r
 }\r
 \r
@@ -148,6 +164,7 @@ function gotPolicies(err, jsonObj) {
   if (err) {\r
     puts("\nError!");\r
     putd(err);\r
+               proc_error=true;\r
     callback('Policies.csv file is missing from upload.');\r
     return;\r
   }\r
@@ -178,7 +195,10 @@ function doNetRoutes() {
     helpers.readCsv(indir, newFileName, gotNetRoutes);\r
   }\r
   else {\r
+               puts('network-routes file is missing from upload.');\r
+    proc_error=true;\r
     callback(csvFilename + ' file is missing from upload.');\r
+               return;\r
   }\r
 }\r
 \r
@@ -186,6 +206,7 @@ function gotNetRoutes(err, jsonObj) {
   if (err) {\r
     puts("\nError!");\r
     putd(err);\r
+               proc_error=true;\r
     callback('Network-Routes.csv file is missing from upload.');\r
     return;\r
   }\r
@@ -218,6 +239,21 @@ function processJson() {
   processPolicies();\r
   processNetRoutes();\r
   assembleJson();\r
+       outputJson();\r
+\r
+       puts('proc_error=');\r
+  putd(proc_error);\r
+  if ( proc_error ){\r
+    puts('callback with failure');\r
+    callback('Error was encountered processing upload.');\r
+    return;\r
+  }\r
+  else\r
+  {\r
+    puts('callback with success');\r
+       callback(null,  finalJson, filename);\r
+    return;\r
+       }\r
 }\r
 \r
 // ASSEMBLE AND OUTPUT RESULTS\r
@@ -256,7 +292,7 @@ function assembleJson() {
 \r
   finalJson = {"input": networkInput};\r
 \r
-  outputJson();\r
+  //outputJson();\r
 }\r
 \r
 function outputJson() {\r
@@ -265,7 +301,7 @@ function outputJson() {
   puts(JSON.stringify(finalJson,null,2));\r
   puts("\n");\r
   puts("\n");\r
-  var unixTime, fullpath_filename, filename;\r
+  var unixTime, fullpath_filename;\r
   unixTime = moment().unix();\r
   if (platform=='portal') {\r
     fullpath_filename = process.cwd() + "/uploads/" + unixTime + ".net_worksheet.json";\r
@@ -275,7 +311,7 @@ function outputJson() {
     filename = "output.json." + unixTime;\r
   }\r
   helpers.writeOutput(req, fullpath_filename, JSON.stringify(finalJson,null,2), callback);\r
-  callback(null,  finalJson, filename);\r
+  //callback(null,  finalJson, filename);\r
 }\r
 \r
 \r
@@ -288,7 +324,9 @@ function processGeneral() {
 \r
   if ( (preloadVersion!='1607') && (preloadVersion!='1610') ) {\r
     puts("\nError - incorrect version of preload worksheet.");\r
-    callback('Error - incorrect version of preload worksheet.');\r
+               proc_error=true;\r
+    //callback('Error - incorrect version of preload worksheet.');\r
+               return;\r
   }\r
 \r
   rawJson['network-name'] = getParam(csvGeneral, 'field2', 'network-name', 'field3');\r