-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathngSignaturePad.min.js
6 lines (6 loc) · 1.47 KB
/
ngSignaturePad.min.js
1
2
3
4
5
6
/**
* ngSignaturePad - v0.1.0 - 2013-12-02
* https://github.com/marcorinck/ngSignaturePad
* Copyright (c) 2013 ; Licensed MIT
*/
angular.module("ngSignaturePad",[]),angular.module("ngSignaturePad").directive("signaturePad",["$window",function(a){"use strict";function b(a){return parseInt(a.css("height"),10)-70}function c(a){return parseInt(a.css("width"),10)-25}function d(){var a=b(h),d=c(h);g.signatureWidth=d,g.signatureHeight=a,f.attr("height",a),f.attr("width",d)}var e,f,g,h,i="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=";return a.addEventListener("resize",function(){g.$apply(function(){var a=e.toDataURL();d(),e.fromDataURL(a)})},!1),a.addEventListener("orientationchange",function(){g.$apply(function(){var a=e.toDataURL();d(),e.fromDataURL(a)})},!1),{restrict:"A",replace:!0,template:'<div class="signature-background"><div class="action"><button ng-click="accept()">OK</button><button " ng-click="clear()">Empty</button></div><div class="signature" ng-style="{height: signatureHeight, width: signatureWidth}" ><canvas></canvas></div></div>',scope:{signature:"=signature",close:"&"},controller:["$scope",function(a){a.accept=function(){e.isEmpty()?(a.signature.dataUrl=i,a.signature.$isEmpty=!0):(a.signature.dataUrl=e.toDataURL(),a.signature.$isEmpty=!1),a.close()},a.clear=function(){e.clear(),d()}}],link:function(a,b){f=b.find("canvas"),g=a,h=b,e=new SignaturePad(f.get(0)),d(),a.signature&&!a.signature.$isEmpty&&a.signature.dataUrl&&e.fromDataURL(a.signature.dataUrl)}}}]);