TabbedBrowser.js
[app.wkmirror] / nsinject.js
index d201dc0..2e0a585 100644 (file)
@@ -113,17 +113,25 @@ NS = {
         this.id = id;
         var timeout = 10;
         
-        console.log("document.location" + document.location);
+        console.log("document.location= " + document.location);
+         
+        if (!(window.location + '').match(/netsuite/)) {
+            // try
+            console.log("REDIRECT");
+            window.location = "https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=52"; // empty account register..
+            return;
+        }
         
         
         // we really just want to send a series of download requests..
         //https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=403
         
          
-        NS.downloaddata(
+        NS.downloadgetdata(
             'https://system.netsuite.com/app/common/search/searchresults.csv' +
             '?searchtype=Transaction' + 
             '&Transaction_ACCOUNT=' + id +
+            '&Transaction_DEPARTMENT=2' + // hk
             '&sortcol=Transaction_TRANDATE_raw' +
             '&sortdir=ASC'+
             '&csv=Export'+
@@ -132,19 +140,20 @@ NS = {
             '&style=NORMAL'+
             '&report='+
             '&grid='+
-            '&searchid=118'+
+            '&searchid=120'+
             '&dle=F',
+            
             {
-                id: data.id,
-                reportaction: 'exportcsv',
-                apptype: 'html',
-                visibleranges: '0,' +  reportTable.getTotalRowCount()
+                id: id,
+                pref : 'HK-Account'
+                //reportaction: 'exportcsv',
+                //apptype: 'html',
+                //visibleranges: '0,' +  reportTable.getTotalRowCount()
             }
             
         );
         
-        
-        
+         
         return;
         
         
@@ -279,6 +288,86 @@ NS = {
     },
     
     
+    downloadgetdata : function (url,data) {
+        
+       
+        var xmlhttp = new XMLHttpRequest();
+                    
+        xmlhttp.open("GET", url,true);
+        xmlhttp.responseType = 'arraybuffer';
+        //xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
+        //var kv = [];
+        //for(var i in data) {
+        //    kv.push(i +'=' + encodeURIComponent(  data[i]));
+        //}
+        
+
+        xmlhttp.onload=function() {
+           
+            var ar= [];
+             
+            var r = new Uint8Array(xmlhttp.response);
+            for (i=0;i<r.byteLength;i++) {
+                ar.push(r[i]);
+            }
+            
+            // location name for location download.
+            var pref = data.pref;
+            
+            console.log(
+                JSON.stringify ({
+                    requesturl : url,
+                    method: 'nsdownloadpage',
+                    filename : pref+ '-' + NS.id + '.csv',
+                    headers : xmlhttp.getAllResponseHeaders(),
+                    contentType:xmlhttp.getResponseHeader("Content-Type"),
+                    data: ar
+                }));
+           
+            if (data.pref == 'SG-Account') {
+                console.log(
+                    JSON.stringify ({
+                        method : 'exit'
+                    })
+                );
+                return;
+            }
+            NS.downloadgetdata(
+                'https://system.netsuite.com/app/common/search/searchresults.csv' +
+                '?searchtype=Transaction' + 
+                '&Transaction_ACCOUNT=' + data.id +
+                '&Transaction_DEPARTMENT=1' + // sg
+                '&sortcol=Transaction_TRANDATE_raw' +
+                '&sortdir=ASC'+
+                '&csv=Export'+
+                '&OfficeXML=F'+
+                '&pdf='+
+                '&style=NORMAL'+
+                '&report='+
+                '&grid='+
+                '&searchid=120'+
+                '&dle=F',
+                
+                {
+                    id: data.id,
+                    pref: 'SG-Account'
+                    //reportaction: 'exportcsv',
+                    //apptype: 'html',
+                    //visibleranges: '0,' +  reportTable.getTotalRowCount()
+                }
+                
+            );
+            
+           
+           
+        }
+        
+        xmlhttp.send();
+           
+    },
+    
+    
+    
     downloaddata : function (url,data) {