angular.module("app").service("core",["$http","$controller","$q","message",function(e,r,n,t){if(window.dropperCore)return window.dropperCore;var i={settings:{},fn:{_listeners:{},on:function(e,r){i.fn._listeners||(i.fn._listeners={}),i.fn._listeners[e]||(i.fn._listeners[e]=[]),i.fn._listeners[e].indexOf(r)>=0||i.fn._listeners[e].push(r)},trigger:function(e,r){if(!i.fn._listeners||!i.fn._listeners[e])return[];for(var n=[],t=0;t<i.fn._listeners[e].length;t++){var s=i.fn._listeners[e][t];"function"==typeof s&&n.push(s.apply(this,r))}return n},onReload:function(e){i.fn.on("reload",e)},onReloading:function(e){i.fn.on("reloading",e)},loadSettings:function(){var e=n.defer();return $.ajax({type:"POST",dataType:"JSON",url:window.kk_shop_url,data:{kk_dropper_settings:!0,kk_dropper_admin_pass:window.kk_admin_secret},success:function(r){i.settings&&delete i.settings,i.settings=r.settings,i.latestRevision=i.settings.meta,t.notifyUpgrades(r.upgradeInfos),e.resolve(i.settings)},error:function(r){e.reject(r),t.errorHTML("Fehler beim Laden der Dropper Einstellungen!",'&bull;&nbsp;<a href="https://kreativkonzentrat.de/Wiki?page=dropper/faq" target="_blank">Troubleshooting & FAQs</a><br>&bull;&nbsp;<a href="https://kreativkonzentrat.de/Dropper?ticket" target="_blank">Support-Ticket erstellen</a>'),t.error("Fehler beim Laden der Dropper Einstellungen!",r)}}),e.promise},reload:function(){var e=n.defer();return $.ajax({type:"POST",dataType:"JSON",url:window.kk_shop_url,data:{kk_dropper_core_data:!0,kk_dropper_admin_pass:window.kk_admin_secret},success:function(r){for(var t in i)"fn"!==t&&"settings"!==t&&"latestRevision"!==t&&delete i[t];$.extend(!0,i,r),i.adminUser=window.kk_admin_user;var s=i.fn.trigger("reloading",[i]);s&&s.length?n.all(s).then((function(){e.resolve(i),i.fn.trigger("reload",[i])})):(e.resolve(i),i.fn.trigger("reload",[i]))},error:function(r){e.reject(r),t.errorHTML("Fehler bei der Dropper Initialisierung!",'&bull;&nbsp;<a href="https://kreativkonzentrat.de/Wiki?page=dropper/faq" target="_blank">Troubleshooting & FAQs</a><br>&bull;&nbsp;<a href="https://kreativkonzentrat.de/Dropper?ticket" target="_blank">Support-Ticket erstellen</a>'),t.error("Fehler bei der Dropper Initialisierung!",r)}}),e.promise},checkLicenceErrors:function(){var e="";for(var r in i.dropLicenses){var n=i.dropLicenses[r];!0===n.isError&&(e+="<p><strong>"+r+"</strong>: "+n.reason,e+="</p>")}""!==e&&(e+='<p><a class="btn btn-small btn-danger" href="mailto:info@kreativkonzentrat.de?subject=Drops%20Lizenzfehler&body=Fehlernachricht%20hier%20pasten">Fehler melden</a></p>',t.errorHTML("Oups, Lizenzfehler sind aufgetreten",e))},checkDropErrors:function(){var e="";if(i.settings&&i.settings.drops&&i.settings.drops.length>0)for(var r=0;r<i.settings.drops.length;r++){var n=i.settings.drops[r],s=n._internal.dropId;if(i.templates[s]){if(!i.dropLicenses[s]||0==i.dropLicenses[s].isValid){var o=i.templates[s].name?i.templates[s].name:s;e+="<p><strong>"+n._internal.name+"</strong> inaktiv: Drop '"+o+"' hat keine gültige Lizenz.</p>"}}else e+="<p><strong>"+n._internal.name+"</strong> inaktiv: Drop '"+s+"' konnte nicht gefunden werden oder ist korrupt.</p>"}""!==e&&t.errorHTML("Einige Drops sind inaktiv!",e)}}};return window.dropperCore=i,window.dropperCore}]);