User Tools

Site Tools


web-integration:client-side

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
web-integration:client-side [2019/08/05 12:03]
tjotov [Advanced usage]
web-integration:client-side [2020/02/29 10:53] (current)
mpospisek [Web Integration API - Example]
Line 52: Line 52:
 ===== Web Integration API - Example ===== ===== Web Integration API - Example =====
  
-<code html>+<sxh html>
  
 <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en">
Line 122: Line 122:
 </html> </html>
  
-</code>+</sxh>
  
  
  
-===== Advanced usage =====+===== Detailed description =====
 See also source file "/aducid-resources/js/aducid-api.js" See also source file "/aducid-resources/js/aducid-api.js"
  
-=== Init Params === +==== Communication ====
-Method to pass more parameters like transaction amount, description, etc. +
-<sxh java> +
-    aducid.setInitParams function(param) { +
-        initParams param; +
-    } +
-</sxh> +
- +
-=== Tell server to generate QR / or not to reduce payload === +
-<sxh java> +
-    aducid.setGenerateQr = function(param) { +
-        generateQr = param; +
-    } +
-</sxh> +
- +
-=== QR code targeting using jQuery === +
-<sxh java> +
-    aducid.setQrCode = function(param) { +
-        qrCode = param; +
-    } +
-</sxh> +
- +
-=== QR code text hint jQuery === +
-<sxh java> +
-    aducid.setQrHint = function(param) { +
-        qrHint = param; +
-    } +
-</sxh> +
- +
- +
-=== Debug DOM to display internal messages === +
-<sxh java> +
-    aducid.setDebug = function(param) { +
-        aducidDebug = param; +
-    } +
-</sxh> +
 === Start operation URL === === Start operation URL ===
 Tell Web API where your start operation is. Tell Web API where your start operation is.
Line 181: Line 145:
 </sxh> </sxh>
  
 +=== Proxy method location ===
 +<sxh java>
 +    aducid.setProxyUrl = function(param) {
 +        proxyUrl = param;
 +    }
 +
 +</sxh>
  
 === Tell AJAX to use GET or POST === === Tell AJAX to use GET or POST ===
Line 190: Line 161:
 </sxh> </sxh>
  
-=== Redirect URL for iOS typically provided by server side controler ===+=== Redirect URL set by GUI === 
 +This is usuallly set by server side but can be also managed from client side. Server side has higher priority.
 <sxh java> <sxh java>
     aducid.setRedirectUrl = function(param) {     aducid.setRedirectUrl = function(param) {
Line 197: Line 169:
 </sxh> </sxh>
  
-=== Button bound operation ===+=== Error redirect URL set by GUI === 
 +This is usuallly set by server side but can be also managed from client side. Server side has higher priority.
 <sxh java> <sxh java>
-    aducid.setButton = function(param) { +    aducid.setErrorPage = function(param) { 
-        aducidButton = param+        errorPage = param;
-        param.click(function() { +
-            if (currentRequest != null) instance.startOperation(); +
-            else instance.init(true); +
-        });+
     }     }
 </sxh> </sxh>
  
- +=== Final action === 
-=== Get last binding mode ===+What API should do when operation finishes (not processed on iOS as we use returnUrl directly there)
 <sxh java> <sxh java>
-    aducid.getSessionBinding = function() { +    aducid.processResult = function(result) { 
-        return localStorage['session-binding'];+        alert(result);
     }     }
 </sxh> </sxh>
  
-=== Is binding URI? ===+=== Use push === 
 +Tell Web API if it should use push (QR code was used previously).
 <sxh java> <sxh java>
-    aducid.isURI = function() { +    this.setPush = function(param) { 
-        return instance.getSessionBinding() == "URI";+        push = param == true;
     }     }
 </sxh> </sxh>
-     +==== UI methods ==== 
-=== Is binding QR===+=== Tell server to generate QR / or not to reduce payload ===
 <sxh java> <sxh java>
-    aducid.isQR = function() { +    aducid.setGenerateQr = function(param) { 
-        return instance.getSessionBinding() ="QR";+        generateQr param;
     }     }
 +</sxh>
  
-=== Is this operation going to be authentication (i.e. first operation in chain)? ===+=== QR code targeting using jQuery ===
 <sxh java> <sxh java>
-    aducid.setAuthentication = function() { +    aducid.setQrCode = function(param) { 
-        instance.setSessionBinding(null);+        qrCode = param;
     }     }
 </sxh> </sxh>
  
 +=== QR code text hint jQuery ===
 +<sxh java>
 +    aducid.setQrHint = function(param) {
 +        qrHint = param;
 +    }
 +</sxh>
 +
 +=== Button bound operation ===
 +<sxh java>
 +    aducid.setButton = function(param) {
 +        aducidButton = param;
 +        param.click(function() {
 +            if (currentRequest != null) instance.startOperation();
 +            else instance.init(true);
 +        });
 +    }
 +</sxh>
 === Text hint shown before operation started === === Text hint shown before operation started ===
 <sxh java> <sxh java>
Line 262: Line 250:
     }     }
 </sxh> </sxh>
- 
-=== The most important method === 
-What API should do when operation finishes (not processed on iOS as we use returnUrl directly there) 
-<sxh java> 
-    aducid.processResult = function(result) { 
-        alert(result); 
-    } 
-</sxh> 
- 
-=== How PEIG not installed is treated, marketplace redirect can be used here === 
-<sxh java> 
-    aducid.showPeigError = function() { 
-        alert("peig error - override this function") 
-    } 
-</sxh> 
- 
 === Auxiliary method to animate operation in progress === === Auxiliary method to animate operation in progress ===
 <sxh java> <sxh java>
Line 293: Line 265:
         if (qrCode == null) return;         if (qrCode == null) return;
         qrCode.hide();         qrCode.hide();
 +    }
 +</sxh>
 +==== Advanced methods ====
 +=== Init Params ===
 +Method to pass more parameters like transaction amount, description, etc.
 +<sxh java>
 +    aducid.setInitParams = function(param) {
 +        initParams = param;
 +    }
 +</sxh>
 +
 +=== Debug DOM to display internal messages ===
 +<sxh java>
 +    aducid.setDebug = function(param) {
 +        aducidDebug = param;
 +    }
 +</sxh>
 +
 +=== Is binding URI? ===
 +<sxh java>
 +    aducid.isURI = function() {
 +        return instance.getSessionBinding() == "URI";
 +    }
 +</sxh>
 +    
 +=== Is binding QR? ===
 +<sxh java>
 +    aducid.isQR = function() {
 +        return instance.getSessionBinding() == "QR";
 +    }
 +
 +=== Is this operation going to be authentication (i.e. first operation in chain)? ===
 +<sxh java>
 +    aducid.setAuthentication = function() {
 +        instance.setSessionBinding(null);
 +    }
 +</sxh>
 +
 +=== Get last binding mode ===
 +<sxh java>
 +    aducid.getSessionBinding = function() {
 +        return localStorage['session-binding'];
 +    }
 +</sxh>
 +
 +=== How PEIG not installed is treated, marketplace redirect can be used here ===
 +<sxh java>
 +    aducid.showPeigError = function() {
 +        alert("peig error - override this function")
     }     }
 </sxh> </sxh>
web-integration/client-side.1565006596.txt.gz · Last modified: 2019/08/05 12:03 by tjotov