lemonldap-ng/lemonldap-ng-manager/site/htdocs/static/js/llApp.min.js
2017-03-24 15:03:40 +00:00

1 line
4.1 KiB
JavaScript

(function(){var a;a=angular.module("llApp",["ngAria"]);a.provider("$translator",function(){var m,p,i,g,h,f,n,l,b,d,e,o;o={};p=decodeURIComponent(document.cookie);if(p.match(/llnglanguage=(\w+)/)){o.lang=RegExp.$1}else{if(navigator){h=[];f=[];d=[navigator.language];if(navigator.languages){d=navigator.languages}for(i=0,n=d.length;i<n;i++){b=d[i];e=window.availableLanguages;for(g=0,l=e.length;g<l;g++){m=e[g];if(m===b){h.push(m)}else{if(m.substring(0,1)===b.substring(0,1)){f.push(m)}}}}o.lang=h[0]?h[0]:f[0]?f[0]:"en"}else{o.lang="en"}}o.deferredTr=[];o.translationFields={};o.translate=function(c){if(o.translationFields[c]){c=o.translationFields[c]}return c};o.translateField=function(c,j){return o.translate(c[j])};o.translateP=function(c){if(c&&o.translationFields.portal){c=c.replace(/__(\w+)__/g,function(k,j){return o.translate(j)})}return c};this.$get=["$q","$http",function(c,j){o.last="";o.init=function(q){var k;if(!q){q=o.lang}k=new Date();k.setTime(k.getTime()+30*86400000);document.cookie="llnglanguage="+q+"; expires="+(k.toUTCString())+"; path=/";k=c.defer();if(o.last!==q){o.last=q;j.get(window.staticPrefix+"languages/"+q+".json").then(function(u){var v,r,t,s;o.translationFields=u.data;s=o.deferredTr;for(r=0,t=s.length;r<t;r++){v=s[r];v.e[v.f](o.translationFields[v.m])}o.deferredTr=[];return k.resolve("Translation files loaded")},function(r){return k.reject("")})}else{k.resolve("No change")}return k.promise};return o}];return this});a.directive("trspan",["$translator",function(b){return{restrict:"A",replace:false,transclude:true,scope:{trspan:"@"},link:function(d,e,c){if(b.translationFields.portal){c.trspan=b.translate(c.trspan)}else{b.deferredTr.push({e:e,f:"text",m:c.trspan})}return e.text(c.trspan)},template:""}}]);a.provider("$htmlParams",function(){this.$get=function(){var b;b={};return{set:function(c,d){return b[c]=d},menu:function(){return b.menu},params:function(){return b.params}}};return this});a.directive("script",["$htmlParams",function(b){return{restrict:"E",terminal:true,compile:function(g,c){var h,d,f;if(f=c.type.match(/text\/(menu|parameters)/)){try{return b.set(f[1],JSON.parse(g[0].text))}catch(d){h=d;console.log("Parsing error:",h)}}}}}]);a.controller("ModalInstanceCtrl",["$scope","$uibModalInstance","elem","set","init",function(b,f,e,i,h){var d,c,g;g=null;b.elem=e;b.set=i;b.result=h;b.staticPrefix=window.staticPrefix;d=e("currentNode");b.translateP=e("translateP");if(d){c=d.data;b.currentNode=d}b.ok=function(){i("result",b.result);return f.close(true)};b.cancel=function(){if(d){b.currentNode.data=c}return f.dismiss("cancel")};return b.inSelect=function(o){var m,l,k,n;n=b.currentNode.select;for(l=0,k=n.length;l<k;l++){m=n[l];if(m.k===o){return true}}return false}}]);a.directive("onReadFile",["$parse",function(b){return{restrict:"A",scope:false,link:function(f,d,c){var e;e=b(c.onReadFile);return d.on("change",function(h){var g;g=new FileReader();g.onload=function(i){return f.$apply(function(){return e(f,{$fileContent:i.target.result})})};return g.readAsText((h.srcElement||h.target).files[0])})}}}]);a.directive("resizer",["$document",function(d){var b,c;b=null;c=null;return function(g,f,e){var h,i;f.on("mousedown",function(j){if(e.resizer==="vertical"){c=$(e.resizerRight).width()+$(e.resizerLeft).width()}else{b=$(e.resizerTop).height()+$(e.resizerBottom).height()}j.preventDefault();d.on("mousemove",h);return d.on("mouseup",i)});h=function(k){var j,l;if(e.resizer==="vertical"){j=k.pageX;if(e.resizerMax&&j>e.resizerMax){j=parseInt(e.resizerMax)}$(e.resizerLeft).css({width:j+"px"});return $(e.resizerRight).css({width:(c-j)+"px"})}else{l=k.pageY-$("#navbar").height();$(e.resizerTop).css({height:l+"px"});return $(e.resizerBottom).css({height:(b-l)+"px"})}};return i=function(){d.unbind("mousemove",h);return d.unbind("mouseup",i)}}}]);a.factory("$lmhttp",["$q","$location",function(b,c){return{responseError:function(d){if(d.status===401&&window.portal){return window.location=(window.portal+"?url=")+window.btoa(window.location).replace(/\//,"_")}else{return b.reject(d)}}}}]);a.config(["$httpProvider",function(b){return b.interceptors.push("$lmhttp")}])}).call(this);