/
utils.min.js
1 lines (1 loc) · 2.38 KB
/
utils.min.js
1
var Shareabouts=Shareabouts||{};(function(e){"use strict";e.Util={setPrettyDateLang:function(e){moment.lang(e)},getPrettyDateTime:function(e,t){return t?moment(e).format(t):moment(e).fromNow()},getAttrs:function(e){var t={};return _.each(e.serializeArray(),function(e){t[e.name]=e.value}),t},isSupported:function(e){switch(e.browser.name){case"Chrome":case"Firefox":case"Safari":return!0;case"Microsoft Internet Explorer":var t=e.browser.version.indexOf("."),r=parseInt(e.browser.version.substr(0,t),10);if(r>7)return!0}return!1},fileInputSupported:function(){var e=document.createElement("input");return e.setAttribute("type","file"),e.disabled===!1},console:window.console||{log:function(){},debug:function(){},info:function(){},warn:function(){},error:function(){}},fixImageOrientation:function(e,t){var r=document.createElement("canvas"),a=r.getContext("2d"),n=e.width,i=e.height;switch(t){case 5:case 6:case 7:case 8:r.width=e.height,r.height=e.width;break;default:r.width=e.width,r.height=e.height}switch(t){case 1:break;case 2:a.translate(n,0),a.scale(-1,1);break;case 3:a.translate(n,i),a.rotate(Math.PI);break;case 4:a.translate(0,i),a.scale(1,-1);break;case 5:a.rotate(.5*Math.PI),a.scale(1,-1);break;case 6:a.rotate(.5*Math.PI),a.translate(0,-i);break;case 7:a.rotate(.5*Math.PI),a.translate(n,-i),a.scale(-1,1);break;case 8:a.rotate(-.5*Math.PI),a.translate(-n,0);break;default:}return a.drawImage(e,0,0),r},fileToCanvas:function(t,r,a){var n=new FileReader;n.onloadend=function(){var n=EXIF.readFromBinaryFile(new BinaryFile(this.result)),i=n.Orientation;loadImage(t,function(t){var a=e.Util.fixImageOrientation(t,i);r(a)},a)},n.readAsBinaryString(t)},wrapHandler:function(e,t,r){var a=function(a){t.trigger(e,a),r&&r.apply(this,arguments)};return a},callWithRetries:function(e,t,r){var a=Array.prototype.slice.call(arguments,3),n=_.last(a),i=n.error,o=0;n||(n={},a.push(n)),n.error=function(){t>o?(o++,setTimeout(function(){e.apply(r,a)},100*o)):i&&i.apply(r,arguments)},e.apply(r,a)},cookies:{save:function(e,t,r){var a;if(r){var n=new Date;n.setTime(n.getTime()+1e3*60*60*24*r),a="; expires="+n.toGMTString()}else a="";document.cookie=e+"="+t+a+"; path=/"},get:function(e){for(var t=e+"=",r=document.cookie.split(";"),a=0;r.length>a;a++){for(var n=r[a];" "===n.charAt(0);)n=n.substring(1,n.length);if(0===n.indexOf(t))return n.substring(t.length,n.length)}return null},destroy:function(e){this.save(e,"",-1)}}}})(Shareabouts);