You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

acha-framework

Package Overview
Dependencies
Maintainers
1
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

acha-framework - npm Package Compare versions

Comparing version

to
1.0.16

38

index.js

@@ -49,4 +49,4 @@ global.Ioc = require('ym').create();

const fromData = req.body.token || req.query.token;
const fromHeader = req.headers.authorization;
const fromCookie = req.cookies && req.cookies.authorization ? req.cookies.authorization : '';
const fromHeader = req.headers.token;
const fromCookie = req.cookies && req.cookies.token ? req.cookies.token : '';
return fromData || fromHeader || fromCookie;

@@ -803,7 +803,2 @@ };

},
gender: {
type: orm.database.Boolean,
'null': false,
default: false
},
email: {

@@ -902,30 +897,2 @@ type: orm.database.String,

app.post('/api/v1/account/login', captchaService.check, authentication.authenticate_jwt);
app.post('/api/v1/account/register', captchaService.check, function (req, res) {
const user = new database.models.User();
user.username = req.body.username || '';
user.password = req.body.password || '';
const confirmPassword = req.body.confirmPassword || '';
user.email = req.body.email || '';
user.mobile = req.body.mobile || '';
if (user.password !== confirmPassword) {
res.json(OperationResult.failed({ confirmPassword: ['password fields are not match'] }));
return;
}
user.isValid(function (valid) {
var op;
if (!valid) {
op = OperationResult.failed(user.errors);
res.json(op);
return;
}
user.save(function (err) {
if (err) {
op = OperationResult.failed(err);
} else {
op = OperationResult.success(authentication.generate_token(user.uniqueId));
}
res.json(op);
});
});
});
}

@@ -980,2 +947,3 @@ });

}
delete tokens[captcha.key];
next();

@@ -982,0 +950,0 @@ }

2

package.json

@@ -1,1 +0,1 @@

{"license":"","name":"acha-framework","version":"1.0.15","description":"is a modular framework on both client (angular.js) and server (node.js) side, it provides security, orm, ioc, obfuscation and ...","main":"index.js","scripts":{"test":"mocha -r should -R spec"},"author":"Navid Kianfar","dependencies":{"async":"^2.1.5","body-parser":"^1.17.1","caminte":"^0.2.19","captchapng":"0.0.1","compression":"^1.6.2","connect-caminte":"0.0.4","cookie-parser":"^1.4.3","csurf":"^1.9.0","ejs":"^2.5.6","ejs-mate":"^2.3.0","express":"^4.15.2","express-error-handler":"^1.1.0","express-session":"^1.15.1","express-useragent":"^0.2.4","feed":"^0.3.1","fs-extra":"^0.30.0","helmet":"^2.3.0","i18n":"^0.8.3","jsonwebtoken":"^7.3.0","lodash":"^4.17.4","morgan":"^1.8.1","mysql":"^2.13.0","passport":"^0.3.2","passport-facebook-token":"^3.3.0","passport-google-oauth2":"^0.1.6","passport-jwt":"^2.2.1","passport-local":"^1.0.0","pem":"^1.9.4","q":"^1.4.1","skipper":"^0.6.5","sqlite3":"^3.1.8","underscore":"^1.8.3","uuid":"^2.0.3","ym":"^0.1.2"},"caminte":{"adapter":"sqlite3"},"url":"https://github.com/achasoft/acha-framework","emil":"nvd.kianfar@gmail.com","keywords":["angular","api","atom","authentication","express","jwt","modular","mvc","nodejs","oauth","obfuscation","orm","rss","sitemap","startup","token"]}
{"license":"","name":"acha-framework","version":"1.0.16","description":"is a modular framework on both client (angular.js) and server (node.js) side, it provides security, orm, ioc, obfuscation and ...","main":"index.js","scripts":{"test":"mocha -r should -R spec"},"author":"Navid Kianfar","dependencies":{"async":"^2.1.5","body-parser":"^1.17.1","caminte":"^0.2.19","captchapng":"0.0.1","compression":"^1.6.2","connect-caminte":"0.0.4","cookie-parser":"^1.4.3","csurf":"^1.9.0","ejs":"^2.5.6","ejs-mate":"^2.3.0","express":"^4.15.2","express-error-handler":"^1.1.0","express-session":"^1.15.1","express-useragent":"^0.2.4","feed":"^0.3.1","fs-extra":"^0.30.0","helmet":"^2.3.0","i18n":"^0.8.3","jsonwebtoken":"^7.3.0","lodash":"^4.17.4","morgan":"^1.8.1","mysql":"^2.13.0","passport":"^0.3.2","passport-facebook-token":"^3.3.0","passport-google-oauth2":"^0.1.6","passport-jwt":"^2.2.1","passport-local":"^1.0.0","pem":"^1.9.4","q":"^1.4.1","skipper":"^0.6.5","sqlite3":"^3.1.8","underscore":"^1.8.3","uuid":"^2.0.3","ym":"^0.1.2"},"caminte":{"adapter":"sqlite3"},"url":"https://github.com/achasoft/acha-framework","emil":"nvd.kianfar@gmail.com","keywords":["angular","api","atom","authentication","express","jwt","modular","mvc","nodejs","oauth","obfuscation","orm","rss","sitemap","startup","token"]}

@@ -220,2 +220,3 @@ (function ($, angular, underscore, window, document, undefined) {

cssClass: '=?',
triggerRefresh: '=?',
model: '=?'

@@ -236,12 +237,19 @@ },

}
if (angular.isUndefined(scope.model)) {
scope.model = {
value: '',
key: ''
};
}
scope.vm.bind();
scope.vm.refresh();
};
scope.vm.refresh = function () {
scope.vm.refresh = scope.triggerRefresh = function () {
scope.vm.waiting = true;
captchaService.get().then(function (res) {
scope.vm.waiting = false;
if (res.data.status) {
scope.vm.image = 'data:image/png;base64,' + res.data.data.image;
console.log(scope.vm.image);
scope.vm.key = res.data.data.key;
if (res.status) {
scope.vm.image = 'data:image/png;base64,' + res.data.image;
scope.model.key = res.data.key;
scope.model.value = '';
}

@@ -410,4 +418,17 @@ });

'use strict';
angular.module('frontend.directives').directive('dropdown', [function () {
angular.module('frontend.directives').factory('dropdownService', [
'apiService',
function (apiService) {
return {
get: function (backend, data) {
return apiService(backend, data);
}
};
}
]).directive('dropdown', [
'$document',
'$filter',
'dropdownService',
function ($document, $filter, dropdownService) {
return {
restrict: 'E',

@@ -425,2 +446,5 @@ replace: true,

backend: '=?',
onChange: '=?',
placeHolder: '=?',
placeHolderTranslate: '=?',
backendData: '=?'

@@ -430,3 +454,7 @@ },

link: function (scope, element, attr) {
scope.vm = {};
scope.vm = {
plate: false,
waiting: false,
selectedItemText: ''
};
scope.vm.init = function () {

@@ -451,13 +479,59 @@ if (angular.isUndefined(scope.disabled)) {

}
if (angular.isUndefined(scope.readonly)) {
scope.readonly = false;
}
scope.vm.bind();
};
scope.vm.closeElseWhere = function (e) {
scope.$apply(function () {
scope.vm.plate = false;
});
};
scope.vm.prevent = function ($event) {
$event.stopPropagation();
$event.preventDefault();
};
scope.vm.getText = function () {
if (scope.model === undefined || scope.model === null) {
return $filter('textOrTranslate')(scope.placeHolder, scope.placeHolderTranslate);
}
return scope.vm.selectedItemText;
};
scope.vm.toggle = function () {
if (scope.disabled)
return;
scope.vm.plate = !scope.vm.plate;
};
scope.vm.bind = function () {
scope.$on('$destroy', function () {
$document.off('click', scope.vm.closeElseWhere);
});
$document.on('click', scope.vm.closeElseWhere);
scope.$watch('model', function (val, old) {
if (angular.isFunction(scope.onChange)) {
scope.onChange(val, scope.tag);
}
});
scope.$watch('backend', scope.vm.transport);
};
scope.vm.transport = function (backend) {
if (!backend)
return;
scope.vm.waiting = true;
dropdownService.get(backend, scope.backendData).then(function (res) {
scope.vm.waiting = false;
if (res.status) {
scope.items = res.data || [];
}
});
};
scope.vm.onPick = function (item) {
if (scope.disabled)
return;
scope.model = item[scope.valueField];
scope.vm.selectedItemText = item[scope.textField];
scope.vm.plate = false;
};
scope.vm.init();
}
};
}]);
}
]);
}(jQuery, angular, _, window, document));

@@ -502,93 +576,42 @@ (function ($, angular, underscore, window, document, undefined) {

}(jQuery, angular, _, window, document));
// (function ($, angular, underscore, window, document, undefined) {
// 'use strict';
// angular.module('frontend.directives').directive('multiSelect', [
// '$document',
// function ($document) {
// return {
// restrict: 'E',
// replace: true,
// scope: {
// tag: '<?',
// disabled: '=?',
// visible: '=?',
// cssClass: '=?',
// textField: '=?',
// valueField: '=?',
// placeHolderTranslate: '=?',
// placeHolder: '=?',
// items: '=?',
// model: '=?'
// },
// templateUrl: '/templates/framework/directives/multi-select/template.html',
// link: function (scope, element, attr) {
// scope.vm = { plate: false };
// scope.vm.init = function () {
// if (angular.isUndefined(scope.disabled)) {
// scope.disabled = false;
// }
// if (angular.isUndefined(scope.visible)) {
// scope.visible = true;
// }
// if (angular.isUndefined(scope.cssClass)) {
// scope.cssClass = '';
// }
// if (angular.isUndefined(scope.textField)) {
// scope.textField = 'text';
// }
// if (angular.isUndefined(scope.valueField)) {
// scope.valueField = 'value';
// }
// if (angular.isUndefined(scope.model)) {
// scope.model = [];
// }
// if (angular.isUndefined(scope.items)) {
// scope.items = [];
// }
// if (angular.isUndefined(scope.readonly)) {
// scope.readonly = false;
// }
// scope.vm.bind();
// };
// scope.vm.closeElseWhere = function (e) {
// scope.$apply(function () {
// scope.vm.plate = false;
// });
// };
// scope.vm.prevent = function ($event) {
// $event.stopPropagation();
// $event.preventDefault();
// };
// scope.vm.onAdd = function ($event, item) {
// if (scope.disabled)
// return;
// scope.model.add(item);
// };
// scope.vm.onDelete = function ($event, item) {
// $event.preventDefault();
// $event.stopPropagation();
// if (scope.disabled)
// return;
// scope.model.del(item);
// };
// scope.vm.togglePlate = function () {
// if (scope.disabled || scope.readonly)
// return;
// scope.vm.plate = !scope.vm.plate;
// };
// scope.vm.bind = function () {
// scope.$on('$destroy', function () {
// $document.off('click', scope.vm.closeElseWhere);
// });
// $document.on('click', scope.vm.closeElseWhere);
// };
// scope.vm.init();
// }
// };
// }
// ]);
// }(jQuery, angular, _, window, document));
(function ($, angular, underscore, window, document, undefined) {
'use strict';
angular.module('frontend.directives').directive('fileManager', [
'$document',
function ($document) {
return {
restrict: 'E',
replace: true,
scope: {
tag: '<?',
disabled: '=?',
visible: '=?',
cssClass: '=?',
model: '=?'
},
templateUrl: '/templates/framework/directives/file-manager/template.html',
link: function (scope, element, attr) {
scope.vm = {};
scope.vm.init = function () {
if (angular.isUndefined(scope.disabled)) {
scope.disabled = false;
}
if (angular.isUndefined(scope.visible)) {
scope.visible = true;
}
if (angular.isUndefined(scope.cssClass)) {
scope.cssClass = '';
}
scope.vm.bind();
};
scope.vm.bind = function () {
};
scope.vm.init();
}
};
}
]);
}(jQuery, angular, _, window, document));
(function ($, angular, underscore, window, document, undefined) {
'use strict';
angular.module('frontend.directives').directive('filePicker', [function () {

@@ -1139,40 +1162,2 @@ return {

'use strict';
angular.module('frontend.directives').directive('ribbon', [function () {
return {
restrict: 'E',
replace: true,
scope: {
tag: '<?',
disabled: '=?',
visible: '=?',
cssClass: '=?',
model: '=?'
},
templateUrl: '/templates/framework/directives/ribbon/template.html',
link: function (scope, element, attr) {
scope.vm = {};
scope.vm.init = function () {
if (angular.isUndefined(scope.disabled)) {
scope.disabled = false;
}
if (angular.isUndefined(scope.visible)) {
scope.visible = true;
}
if (angular.isUndefined(scope.cssClass)) {
scope.cssClass = '';
}
if (angular.isUndefined(scope.readonly)) {
scope.readonly = false;
}
scope.vm.bind();
};
scope.vm.bind = function () {
};
scope.vm.init();
}
};
}]);
}(jQuery, angular, _, window, document));
(function ($, angular, underscore, window, document, undefined) {
'use strict';
angular.module('frontend.directives').directive('radio', [function () {

@@ -1252,2 +1237,40 @@ return {

'use strict';
angular.module('frontend.directives').directive('ribbon', [function () {
return {
restrict: 'E',
replace: true,
scope: {
tag: '<?',
disabled: '=?',
visible: '=?',
cssClass: '=?',
model: '=?'
},
templateUrl: '/templates/framework/directives/ribbon/template.html',
link: function (scope, element, attr) {
scope.vm = {};
scope.vm.init = function () {
if (angular.isUndefined(scope.disabled)) {
scope.disabled = false;
}
if (angular.isUndefined(scope.visible)) {
scope.visible = true;
}
if (angular.isUndefined(scope.cssClass)) {
scope.cssClass = '';
}
if (angular.isUndefined(scope.readonly)) {
scope.readonly = false;
}
scope.vm.bind();
};
scope.vm.bind = function () {
};
scope.vm.init();
}
};
}]);
}(jQuery, angular, _, window, document));
(function ($, angular, underscore, window, document, undefined) {
'use strict';
angular.module('frontend.directives').directive('slider', [function () {

@@ -1364,3 +1387,5 @@ return {

onEnter: getOption(step, 'on-enter', null),
onEnterValidate: getOption(step, 'on-enter-validate', null),
onExit: getOption(step, 'on-exit', null),
onExitValidate: getOption(step, 'on-exit-validate', null),
content: step.innerHTML

@@ -1387,2 +1412,6 @@ });

onChanged: '<?',
onEnter: '<?',
onExit: '<?',
triggerPick: '=?',
preventPick: '=?',
steps: '=?',

@@ -1406,2 +1435,5 @@ model: '=?'

}
if (angular.isUndefined(scope.preventPick)) {
scope.preventPick = false;
}
if (angular.isUndefined(scope.visible)) {

@@ -1420,3 +1452,3 @@ scope.visible = true;

if (angular.isUndefined(scope.model) && scope.steps.length) {
scope.model = scope.steps[0];
scope.vm.onPick(scope.steps[0]);
}

@@ -1426,6 +1458,51 @@ scope.vm.compile();

};
scope.vm.onPick = function (step) {
scope.vm.onExitValidate = function () {
var func = scope.$parent.$eval(scope.model.onExitValidate);
if (angular.isFunction(func)) {
return func(scope.model);
}
return true;
};
scope.vm.onEnterValidate = function (step) {
var enterValid = true;
var func = scope.$parent.$eval(step.onEnterValidate);
if (angular.isFunction(func)) {
enterValid = func(step);
}
if (enterValid === true) {
scope.vm.setModel(step);
} else if (enterValid && enterValid.then) {
enterValid.then(function () {
scope.vm.setModel(step);
}, function () {
});
}
};
scope.vm.setModel = function (step) {
scope.model = step;
};
scope.vm.prepareForPick = function (step, $event) {
$event.stopPropagation();
$event.preventDefault();
if (scope.preventPick)
return;
scope.vm.onPick(step);
};
scope.vm.onPick = scope.triggerPick = function (step) {
if (scope.disabled || step.disabled)
return;
scope.model = step;
if (!scope.model) {
scope.vm.setModel(step);
return;
}
var exitValid = scope.vm.onExitValidate();
if (exitValid === true) {
scope.vm.onEnterValidate(step);
} else if (exitValid && exitValid.then) {
exitValid.then(function () {
scope.vm.onEnterValidate(step);
}, function () {
});
} else {
}
};

@@ -1436,11 +1513,17 @@ scope.vm.bind = function () {

return;
var onEnter = scope.$eval(val.onEnter);
if (angular.isFunction(onEnter)) {
onEnter(val);
}
if (old) {
var oldOnExit = scope.$eval(old.onExit);
var oldOnExit = scope.$parent.$eval(old.onExit);
if (angular.isFunction(oldOnExit))
oldOnExit(old, val);
if (angular.isFunction(scope.onExit)) {
scope.onExit(old, val);
}
}
var onEnter = scope.$parent.$eval(val.onEnter);
if (angular.isFunction(onEnter)) {
onEnter(val);
}
if (angular.isFunction(scope.onEnter)) {
scope.onEnter(val);
}
if (angular.isFunction(scope.onChanged)) {

@@ -1450,2 +1533,5 @@ scope.onChanged(val);

});
scope.$on('$destroy', function () {
scope.triggerPick = null;
});
};

@@ -1582,2 +1668,4 @@ scope.vm.compile = function () {

cssClass: '=?',
onDemand: '=?',
items: '=?',
model: '=?'

@@ -1587,3 +1675,6 @@ },

link: function (scope, element, attr) {
scope.vm = {};
scope.vm = {
target: element.find('ul.tree'),
initialized: false
};
scope.vm.init = function () {

@@ -1599,4 +1690,4 @@ if (angular.isUndefined(scope.disabled)) {

}
if (angular.isUndefined(scope.readonly)) {
scope.readonly = false;
if (angular.isUndefined(scope.items)) {
scope.items = [];
}

@@ -1618,9 +1709,3 @@ scope.vm.bind();

replace: true,
scope: {
tag: '<?',
disabled: '=?',
visible: '=?',
cssClass: '=?',
model: '=?'
},
scope: { model: '=?' },
templateUrl: '/templates/framework/directives/validation-messages/template.html',

@@ -1630,18 +1715,6 @@ link: function (scope, element, attr) {

scope.vm.init = function () {
if (angular.isUndefined(scope.disabled)) {
scope.disabled = false;
if (angular.isUndefined(scope.model)) {
scope.model = [];
}
if (angular.isUndefined(scope.visible)) {
scope.visible = true;
}
if (angular.isUndefined(scope.cssClass)) {
scope.cssClass = '';
}
if (angular.isUndefined(scope.readonly)) {
scope.readonly = false;
}
scope.vm.bind();
};
scope.vm.bind = function () {
};
scope.vm.init();

@@ -1658,31 +1731,3 @@ }

replace: true,
scope: {
tag: '<?',
disabled: '=?',
visible: '=?',
cssClass: '=?',
model: '=?'
},
templateUrl: '/templates/framework/directives/waiting/template.html',
link: function (scope, element, attr) {
scope.vm = {};
scope.vm.init = function () {
if (angular.isUndefined(scope.disabled)) {
scope.disabled = false;
}
if (angular.isUndefined(scope.visible)) {
scope.visible = true;
}
if (angular.isUndefined(scope.cssClass)) {
scope.cssClass = '';
}
if (angular.isUndefined(scope.readonly)) {
scope.readonly = false;
}
scope.vm.bind();
};
scope.vm.bind = function () {
};
scope.vm.init();
}
templateUrl: '/templates/framework/directives/waiting/template.html'
};

@@ -1693,3 +1738,15 @@ }]);

'use strict';
angular.module('frontend.directives').directive('wizard', [function () {
angular.module('frontend.directives').run([
'$rootScope',
function ($rootScope) {
Object.defineProperty($rootScope, '$WizardContext', {
get: function () {
return this.$parent;
}
});
}
]).directive('wizard', [
'$compile',
'$templateCache',
function ($compile, $templateCache) {
return {

@@ -1703,28 +1760,89 @@ restrict: 'E',

cssClass: '=?',
nextText: '<?',
nextTextTranslate: '=?',
backText: '<?',
backTextTranslate: '=?',
keepScope: '=?',
position: '=?',
onChanged: '<?',
onEnter: '<?',
onExit: '<?',
steps: '=?',
model: '=?'
},
templateUrl: '/templates/framework/directives/wizard/template.html',
link: function (scope, element, attr) {
scope.vm = {};
scope.vm.init = function () {
if (angular.isUndefined(scope.disabled)) {
scope.disabled = false;
compile: function ($$element) {
var content = $$element.html();
$$element.empty();
var templateUrl = '/templates/framework/directives/wizard/template.html';
var template = $templateCache.get(templateUrl);
var $template = $(template);
$template.find('tabs').html(content);
return {
pre: function (scope, element, attr) {
scope.vm = { currentIndex: 0 };
scope.vm.onNext = function () {
var index = scope.steps.indexOf(scope.model);
var target = index + 1;
if (target === scope.steps.length)
return;
if (scope.vm.triggerPick) {
scope.vm.triggerPick(scope.steps[target]);
}
};
scope.vm.onBack = function () {
var index = scope.steps.indexOf(scope.model);
var target = index - 1;
if (target === -1)
return;
if (scope.vm.triggerPick) {
scope.vm.triggerPick(scope.steps[target]);
}
};
scope.vm.init = function () {
if (angular.isUndefined(scope.disabled)) {
scope.disabled = false;
}
if (angular.isUndefined(scope.visible)) {
scope.visible = true;
}
if (angular.isUndefined(scope.cssClass)) {
scope.cssClass = '';
}
if (angular.isUndefined(scope.nextTextTranslate)) {
scope.nextTextTranslate = 'general.next';
}
if (angular.isUndefined(scope.backTextTranslate)) {
scope.backTextTranslate = 'general.previous';
}
scope.vm.compile();
scope.vm.bind();
};
scope.vm.compile = function () {
element.append($template);
$compile($template)(scope);
};
scope.vm.bind = function () {
Object.defineProperty(scope.vm, 'nextDisabled', {
get: function () {
return scope.vm.currentIndex === scope.steps.length - 1;
}
});
Object.defineProperty(scope.vm, 'backDisabled', {
get: function () {
return scope.vm.currentIndex === 0;
}
});
scope.$watch('model', function (val, old) {
if (angular.isUndefined(val))
return;
scope.vm.currentIndex = scope.steps.indexOf(val);
});
};
scope.vm.init();
}
if (angular.isUndefined(scope.visible)) {
scope.visible = true;
}
if (angular.isUndefined(scope.cssClass)) {
scope.cssClass = '';
}
if (angular.isUndefined(scope.readonly)) {
scope.readonly = false;
}
scope.vm.bind();
};
scope.vm.bind = function () {
};
scope.vm.init();
}
};
}]);
}
]);
}(jQuery, angular, _, window, document));

@@ -1,1 +0,1 @@

!function(e,i,n,t,s,d){"use strict";var l=i.module("frontend.directives");l.directive("showPanel",[function(){return{restrict:"A",link:function(e,i,n){var t=e.$eval(n.showPanel)||{},s=i.parent(),d=s.height()+(s.offset().top||t.top||0);i.css({position:"fixed",right:t.right||0,width:s.width()||t.width||"100%",height:t.height||200,top:d})}}}]),l.directive("onEnter",function(){return function(e,i,n){i.bind("keydown keypress",function(i){13===i.which&&(e.$apply(function(){e.$eval(n.onEnter,{event:i})}),i.preventDefault())})}}),l.directive("numberOnly",function(){return{require:"ngModel",link:function(e,i,n,t){function s(e){if(e){var i=e.replace(/[^0-9]/g,"");return i!==e&&(t.$setViewValue(i),t.$render()),i}return d}t.$parsers.push(s)}}})}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").factory("accordionService",function(){var i=function(e,i,n){return e.hasAttribute(i)?e.getAttribute(i):n};return{parse:function(n){var t=[];return e(n).each(function(e,n){t.push({disabled:i(n,"disabled",!1),cssClass:i(n,"css-class",""),title:i(n,"title",""),titleTranslate:i(n,"title-translate",null),icon:i(n,"icon",null),onEnter:i(n,"on-enter",null),onExit:i(n,"on-exit",null),content:n.innerHTML})}),t}}}).directive("accordion",["$compile","$templateCache","accordionService",function(n,t,s){return{restrict:"E",replace:!0,scope:{disabled:"=?",visible:"=?",cssClass:"=?",onChanged:"<?",steps:"=?",model:"=?"},compile:function(d){var l=t.get("/templates/framework/directives/accordion/template.html"),a=d.html();return d.empty(),{pre:function(t,d,r){t.vm={},t.vm.init=function(){i.isUndefined(t.disabled)&&(t.disabled=!1),i.isUndefined(t.visible)&&(t.visible=!0),i.isUndefined(t.cssClass)&&(t.cssClass=""),i.isUndefined(t.steps)&&(t.steps=s.parse(a)),i.isUndefined(t.model)&&t.steps.length&&(t.model=t.steps[0]),t.vm.compile(),t.vm.bind()},t.vm.onPick=function(e){t.disabled||e.disabled||(t.model=e)},t.vm.bind=function(){t.$watch("model",function(e,n){if(e){var s=t.$eval(e.onEnter);if(i.isFunction(s)&&s(e),n){var d=t.$eval(n.onExit);i.isFunction(d)&&d(n,e)}i.isFunction(t.onChanged)&&t.onChanged(e)}})},t.vm.compile=function(){var i=e(l);d.append(i),n(i)(t)},t.vm.init()}}}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("calendar",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",culture:"=?",model:"=?"},templateUrl:"/templates/framework/directives/calendar/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").factory("captchaService",["apiService",function(e){return{get:function(){return e.get("captcha/generate")}}}]).directive("captcha",["captchaService",function(e){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/captcha/template.html",link:function(n,t,s){n.vm={},n.vm.init=function(){i.isUndefined(n.disabled)&&(n.disabled=!1),i.isUndefined(n.visible)&&(n.visible=!0),i.isUndefined(n.cssClass)&&(n.cssClass=""),n.vm.bind()},n.vm.refresh=function(){n.vm.waiting=!0,e.get().then(function(e){n.vm.waiting=!1,e.data.status&&(n.vm.image="data:image/png;base64,"+e.data.data.image,console.log(n.vm.image),n.vm.key=e.data.data.key)})},n.vm.bind=function(){},n.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("checkbox",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",triggerOnInit:"=?",onChange:"<?",disabled:"=?",visible:"=?",cssClass:"=?",labelTranslate:"<?",label:"<?",model:"=?"},templateUrl:"/templates/framework/directives/checkbox/template.html",link:function(e,n,t){e.vm={initialized:!1},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.model)&&(e.model=!1),e.vm.bind()},e.vm.toggle=function(i){i.stopPropagation(),i.preventDefault(),e.disabled||(e.model=!e.model)},e.vm.bind=function(){e.$watch("model",function(n,t){(e.vm.initialized||(e.vm.initialized=!0,e.triggerOnInit))&&e.vm.initialized&&i.isFunction(e.onChange)&&e.onChange(e.model,e.tag)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("combobox",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?",textField:"=?",valueField:"=?",items:"=?",backend:"=?",backendData:"=?"},templateUrl:"/templates/framework/directives/combobox/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.items)&&(e.items=[]),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.textField)&&(e.textField="text"),i.isUndefined(e.valueField)&&(e.valueField="value"),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("datePicker",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",culture:"=?",model:"=?"},templateUrl:"/templates/framework/directives/date-picker/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("dropdown",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?",textField:"=?",valueField:"=?",items:"=?",backend:"=?",backendData:"=?"},templateUrl:"/templates/framework/directives/dropdown/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.items)&&(e.items=[]),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.textField)&&(e.textField="text"),i.isUndefined(e.valueField)&&(e.valueField="value"),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("editor",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/editor/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("filePicker",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",culture:"=?",model:"=?"},templateUrl:"/templates/framework/directives/file-picker/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("formElements",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?",waiting:"=?"},templateUrl:"/templates/framework/directives/form-elements/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.waiting)&&(e.waiting=!1),e.vm.bind()},e.vm.bind=function(){e.$watch("model",function(e,i){})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("gridView",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",culture:"=?",model:"=?"},templateUrl:"/templates/framework/directives/grid-view/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("modal",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/modal/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("multiColumnDropdown",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?",textField:"=?",valueField:"=?",items:"=?",backend:"=?",backendData:"=?"},templateUrl:"/templates/framework/directives/multi-column-dropdown/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.items)&&(e.items=[]),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.textField)&&(e.textField="text"),i.isUndefined(e.valueField)&&(e.valueField="value"),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("multiSelect",["$document",function(e){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",textField:"=?",valueField:"=?",placeHolderTranslate:"=?",placeHolder:"=?",items:"=?",model:"=?"},templateUrl:"/templates/framework/directives/multi-select/template.html",link:function(n,t,s){n.vm={plate:!1},n.vm.init=function(){i.isUndefined(n.disabled)&&(n.disabled=!1),i.isUndefined(n.visible)&&(n.visible=!0),i.isUndefined(n.cssClass)&&(n.cssClass=""),i.isUndefined(n.textField)&&(n.textField="text"),i.isUndefined(n.valueField)&&(n.valueField="value"),i.isUndefined(n.model)&&(n.model=[]),i.isUndefined(n.items)&&(n.items=[]),i.isUndefined(n.readonly)&&(n.readonly=!1),n.vm.bind()},n.vm.closeElseWhere=function(e){n.$apply(function(){n.vm.plate=!1})},n.vm.prevent=function(e){e.stopPropagation(),e.preventDefault()},n.vm.onAdd=function(e,i){n.disabled||n.model.add(i)},n.vm.onDelete=function(e,i){e.preventDefault(),e.stopPropagation(),n.disabled||n.model.del(i)},n.vm.togglePlate=function(){n.disabled||n.readonly||(n.vm.plate=!n.vm.plate)},n.vm.bind=function(){n.$on("$destroy",function(){e.off("click",n.vm.closeElseWhere)}),e.on("click",n.vm.closeElseWhere)},n.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("numbox",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",required:"=?",triggerOnInit:"=?",readonly:"=?",model:"=?"},templateUrl:"/templates/framework/directives/numbox/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.required)&&(e.required=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),e.required&&i.isUndefined(e.model)&&(e.model=0),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.increase=function(){e.disabled||e.readonly||(e.model=parseInt(e.model||0)+1)},e.vm.decrease=function(){e.disabled||e.readonly||(e.model=parseInt(e.model||0)-1)},e.vm.bind=function(){e.$watch("model",function(n,t){(e.vm.initialized||(e.vm.initialized=!0,e.triggerOnInit))&&e.vm.initialized&&i.isFunction(e.onChange)&&e.onChange(e.model,e.tag)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("password",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",placeHolder:"=?",placeHolderTranslate:"=?",prependIcon:"=?",appendIcon:"=?",label:"=?",labelTranslate:"=?",model:"=?",onChanged:"<?",readonly:"=?"},templateUrl:"/templates/framework/directives/password/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){e.$watch("model",function(n,t){if(void 0===n||null===n)return void(e.model="");i.isFunction(e.onChanged)&&e.onChanged(e.model,e.tag,t)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("progressbar",[function(){return{restrict:"E",replace:!0,scope:{disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/progressbar/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.model)&&(e.model=0),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("ribbon",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/ribbon/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("radio",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",onChange:"<?",disabled:"=?",visible:"=?",cssClass:"=?",textField:"=?",valueField:"=?",triggerOnInit:"=?",items:"=?",inline:"=?",model:"=?"},templateUrl:"/templates/framework/directives/radio/template.html",link:function(e,n,t){e.vm={initialized:!1},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.inline)&&(e.inline=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.triggerOnInit)&&(e.triggerOnInit=!1),i.isUndefined(e.items)&&(e.items=[]),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.textField)&&(e.textField="text"),i.isUndefined(e.valueField)&&(e.valueField="value"),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.onPick=function(i){e.disabled||(e.model=i[e.valueField])},e.vm.bind=function(){e.$watch("model",function(n,t){(e.vm.initialized||(e.vm.initialized=!0,e.triggerOnInit))&&e.vm.initialized&&i.isFunction(e.onChange)&&e.onChange(e.model,e.tag,e.items)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("slider",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/slider/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("switch",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/switch/template.html",link:function(e,n,t){e.vm={initialized:!1},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.toggle=function(i){i.stopPropagation(),i.preventDefault(),e.disabled||(e.model=!e.model)},e.vm.bind=function(){e.$watch("model",function(n,t){(e.vm.initialized||(e.vm.initialized=!0,e.triggerOnInit))&&e.vm.initialized&&i.isFunction(e.onChange)&&e.onChange(e.model,e.tag)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").factory("tabsService",function(){var i=function(e,i,n){return e.hasAttribute(i)?e.getAttribute(i):n};return{parse:function(n){var t=[];return e(n).each(function(e,n){t.push({disabled:i(n,"disabled",!1),cssClass:i(n,"css-class",""),title:i(n,"title",""),titleTranslate:i(n,"title-translate",null),icon:i(n,"icon",null),onEnter:i(n,"on-enter",null),onExit:i(n,"on-exit",null),content:n.innerHTML})}),t}}}).directive("tabs",["$compile","$templateCache","tabsService",function(n,t,s){return{restrict:"E",replace:!0,scope:{disabled:"=?",visible:"=?",cssClass:"=?",keepScope:"=?",position:"=?",onChanged:"<?",steps:"=?",model:"=?"},compile:function(d){var l=t.get("/templates/framework/directives/tabs/template.html"),a=d.html();return d.empty(),{pre:function(t,d,r){t.vm={},t.vm.init=function(){i.isUndefined(t.disabled)&&(t.disabled=!1),i.isUndefined(t.keepScope)&&(t.keepScope=!1),i.isUndefined(t.visible)&&(t.visible=!0),i.isUndefined(t.cssClass)&&(t.cssClass=""),i.isUndefined(t.position)&&(t.position="top"),i.isUndefined(t.steps)&&(t.steps=s.parse(a)),i.isUndefined(t.model)&&t.steps.length&&(t.model=t.steps[0]),t.vm.compile(),t.vm.bind()},t.vm.onPick=function(e){t.disabled||e.disabled||(t.model=e)},t.vm.bind=function(){t.$watch("model",function(e,n){if(e){var s=t.$eval(e.onEnter);if(i.isFunction(s)&&s(e),n){var d=t.$eval(n.onExit);i.isFunction(d)&&d(n,e)}i.isFunction(t.onChanged)&&t.onChanged(e)}})},t.vm.compile=function(){var i=e(l);d.append(i),n(i)(t)},t.vm.init()}}}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("tags",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/tags/template.html",link:function(e,n,t){e.vm={query:""},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.model)&&(e.model=[]),e.vm.bind()},e.vm.onAdd=function(){!e.disabled&&e.vm.query&&-1===e.model.indexOf(e.vm.query)&&(e.model.push(e.vm.query),e.vm.query="")},e.vm.onRemove=function(i){e.disabled||e.model.del(i)},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("textbox",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",placeHolder:"=?",placeHolderTranslate:"=?",prependIcon:"=?",appendIcon:"=?",label:"=?",labelTranslate:"=?",model:"=?",onChanged:"<?",readonly:"=?"},templateUrl:"/templates/framework/directives/textbox/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){e.$watch("model",function(n,t){if(void 0===n||null===n)return void(e.model="");i.isFunction(e.onChanged)&&e.onChanged(e.model,e.tag,t)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("tree",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/tree/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("validation-messages",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/validation-messages/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("waiting",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/waiting/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,s,d){"use strict";i.module("frontend.directives").directive("wizard",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/wizard/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document);
!function(e,i,n,t,d,s){"use strict";var l=i.module("frontend.directives");l.directive("showPanel",[function(){return{restrict:"A",link:function(e,i,n){var t=e.$eval(n.showPanel)||{},d=i.parent(),s=d.height()+(d.offset().top||t.top||0);i.css({position:"fixed",right:t.right||0,width:d.width()||t.width||"100%",height:t.height||200,top:s})}}}]),l.directive("onEnter",function(){return function(e,i,n){i.bind("keydown keypress",function(i){13===i.which&&(e.$apply(function(){e.$eval(n.onEnter,{event:i})}),i.preventDefault())})}}),l.directive("numberOnly",function(){return{require:"ngModel",link:function(e,i,n,t){function d(e){if(e){var i=e.replace(/[^0-9]/g,"");return i!==e&&(t.$setViewValue(i),t.$render()),i}return s}t.$parsers.push(d)}}})}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").factory("accordionService",function(){var i=function(e,i,n){return e.hasAttribute(i)?e.getAttribute(i):n};return{parse:function(n){var t=[];return e(n).each(function(e,n){t.push({disabled:i(n,"disabled",!1),cssClass:i(n,"css-class",""),title:i(n,"title",""),titleTranslate:i(n,"title-translate",null),icon:i(n,"icon",null),onEnter:i(n,"on-enter",null),onExit:i(n,"on-exit",null),content:n.innerHTML})}),t}}}).directive("accordion",["$compile","$templateCache","accordionService",function(n,t,d){return{restrict:"E",replace:!0,scope:{disabled:"=?",visible:"=?",cssClass:"=?",onChanged:"<?",steps:"=?",model:"=?"},compile:function(s){var l=t.get("/templates/framework/directives/accordion/template.html"),a=s.html();return s.empty(),{pre:function(t,s,r){t.vm={},t.vm.init=function(){i.isUndefined(t.disabled)&&(t.disabled=!1),i.isUndefined(t.visible)&&(t.visible=!0),i.isUndefined(t.cssClass)&&(t.cssClass=""),i.isUndefined(t.steps)&&(t.steps=d.parse(a)),i.isUndefined(t.model)&&t.steps.length&&(t.model=t.steps[0]),t.vm.compile(),t.vm.bind()},t.vm.onPick=function(e){t.disabled||e.disabled||(t.model=e)},t.vm.bind=function(){t.$watch("model",function(e,n){if(e){var d=t.$eval(e.onEnter);if(i.isFunction(d)&&d(e),n){var s=t.$eval(n.onExit);i.isFunction(s)&&s(n,e)}i.isFunction(t.onChanged)&&t.onChanged(e)}})},t.vm.compile=function(){var i=e(l);s.append(i),n(i)(t)},t.vm.init()}}}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("calendar",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",culture:"=?",model:"=?"},templateUrl:"/templates/framework/directives/calendar/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").factory("captchaService",["apiService",function(e){return{get:function(){return e.get("captcha/generate")}}}]).directive("captcha",["captchaService",function(e){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",triggerRefresh:"=?",model:"=?"},templateUrl:"/templates/framework/directives/captcha/template.html",link:function(n,t,d){n.vm={},n.vm.init=function(){i.isUndefined(n.disabled)&&(n.disabled=!1),i.isUndefined(n.visible)&&(n.visible=!0),i.isUndefined(n.cssClass)&&(n.cssClass=""),i.isUndefined(n.model)&&(n.model={value:"",key:""}),n.vm.bind(),n.vm.refresh()},n.vm.refresh=n.triggerRefresh=function(){n.vm.waiting=!0,e.get().then(function(e){n.vm.waiting=!1,e.status&&(n.vm.image="data:image/png;base64,"+e.data.image,n.model.key=e.data.key,n.model.value="")})},n.vm.bind=function(){},n.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("checkbox",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",triggerOnInit:"=?",onChange:"<?",disabled:"=?",visible:"=?",cssClass:"=?",labelTranslate:"<?",label:"<?",model:"=?"},templateUrl:"/templates/framework/directives/checkbox/template.html",link:function(e,n,t){e.vm={initialized:!1},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.model)&&(e.model=!1),e.vm.bind()},e.vm.toggle=function(i){i.stopPropagation(),i.preventDefault(),e.disabled||(e.model=!e.model)},e.vm.bind=function(){e.$watch("model",function(n,t){(e.vm.initialized||(e.vm.initialized=!0,e.triggerOnInit))&&e.vm.initialized&&i.isFunction(e.onChange)&&e.onChange(e.model,e.tag)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("combobox",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?",textField:"=?",valueField:"=?",items:"=?",backend:"=?",backendData:"=?"},templateUrl:"/templates/framework/directives/combobox/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.items)&&(e.items=[]),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.textField)&&(e.textField="text"),i.isUndefined(e.valueField)&&(e.valueField="value"),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("datePicker",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",culture:"=?",model:"=?"},templateUrl:"/templates/framework/directives/date-picker/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").factory("dropdownService",["apiService",function(e){return{get:function(i,n){return e(i,n)}}}]).directive("dropdown",["$document","$filter","dropdownService",function(e,n,t){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?",textField:"=?",valueField:"=?",items:"=?",backend:"=?",onChange:"=?",placeHolder:"=?",placeHolderTranslate:"=?",backendData:"=?"},templateUrl:"/templates/framework/directives/dropdown/template.html",link:function(d,s,l){d.vm={plate:!1,waiting:!1,selectedItemText:""},d.vm.init=function(){i.isUndefined(d.disabled)&&(d.disabled=!1),i.isUndefined(d.visible)&&(d.visible=!0),i.isUndefined(d.items)&&(d.items=[]),i.isUndefined(d.cssClass)&&(d.cssClass=""),i.isUndefined(d.textField)&&(d.textField="text"),i.isUndefined(d.valueField)&&(d.valueField="value"),d.vm.bind()},d.vm.closeElseWhere=function(e){d.$apply(function(){d.vm.plate=!1})},d.vm.prevent=function(e){e.stopPropagation(),e.preventDefault()},d.vm.getText=function(){return void 0===d.model||null===d.model?n("textOrTranslate")(d.placeHolder,d.placeHolderTranslate):d.vm.selectedItemText},d.vm.toggle=function(){d.disabled||(d.vm.plate=!d.vm.plate)},d.vm.bind=function(){d.$on("$destroy",function(){e.off("click",d.vm.closeElseWhere)}),e.on("click",d.vm.closeElseWhere),d.$watch("model",function(e,n){i.isFunction(d.onChange)&&d.onChange(e,d.tag)}),d.$watch("backend",d.vm.transport)},d.vm.transport=function(e){e&&(d.vm.waiting=!0,t.get(e,d.backendData).then(function(e){d.vm.waiting=!1,e.status&&(d.items=e.data||[])}))},d.vm.onPick=function(e){d.disabled||(d.model=e[d.valueField],d.vm.selectedItemText=e[d.textField],d.vm.plate=!1)},d.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("editor",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/editor/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("fileManager",["$document",function(e){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/file-manager/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("filePicker",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",culture:"=?",model:"=?"},templateUrl:"/templates/framework/directives/file-picker/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("formElements",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?",waiting:"=?"},templateUrl:"/templates/framework/directives/form-elements/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.waiting)&&(e.waiting=!1),e.vm.bind()},e.vm.bind=function(){e.$watch("model",function(e,i){})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("gridView",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",culture:"=?",model:"=?"},templateUrl:"/templates/framework/directives/grid-view/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("modal",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/modal/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("multiColumnDropdown",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?",textField:"=?",valueField:"=?",items:"=?",backend:"=?",backendData:"=?"},templateUrl:"/templates/framework/directives/multi-column-dropdown/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.items)&&(e.items=[]),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.textField)&&(e.textField="text"),i.isUndefined(e.valueField)&&(e.valueField="value"),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("multiSelect",["$document",function(e){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",textField:"=?",valueField:"=?",placeHolderTranslate:"=?",placeHolder:"=?",items:"=?",model:"=?"},templateUrl:"/templates/framework/directives/multi-select/template.html",link:function(n,t,d){n.vm={plate:!1},n.vm.init=function(){i.isUndefined(n.disabled)&&(n.disabled=!1),i.isUndefined(n.visible)&&(n.visible=!0),i.isUndefined(n.cssClass)&&(n.cssClass=""),i.isUndefined(n.textField)&&(n.textField="text"),i.isUndefined(n.valueField)&&(n.valueField="value"),i.isUndefined(n.model)&&(n.model=[]),i.isUndefined(n.items)&&(n.items=[]),i.isUndefined(n.readonly)&&(n.readonly=!1),n.vm.bind()},n.vm.closeElseWhere=function(e){n.$apply(function(){n.vm.plate=!1})},n.vm.prevent=function(e){e.stopPropagation(),e.preventDefault()},n.vm.onAdd=function(e,i){n.disabled||n.model.add(i)},n.vm.onDelete=function(e,i){e.preventDefault(),e.stopPropagation(),n.disabled||n.model.del(i)},n.vm.togglePlate=function(){n.disabled||n.readonly||(n.vm.plate=!n.vm.plate)},n.vm.bind=function(){n.$on("$destroy",function(){e.off("click",n.vm.closeElseWhere)}),e.on("click",n.vm.closeElseWhere)},n.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("numbox",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",required:"=?",triggerOnInit:"=?",readonly:"=?",model:"=?"},templateUrl:"/templates/framework/directives/numbox/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.required)&&(e.required=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),e.required&&i.isUndefined(e.model)&&(e.model=0),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.increase=function(){e.disabled||e.readonly||(e.model=parseInt(e.model||0)+1)},e.vm.decrease=function(){e.disabled||e.readonly||(e.model=parseInt(e.model||0)-1)},e.vm.bind=function(){e.$watch("model",function(n,t){(e.vm.initialized||(e.vm.initialized=!0,e.triggerOnInit))&&e.vm.initialized&&i.isFunction(e.onChange)&&e.onChange(e.model,e.tag)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("password",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",placeHolder:"=?",placeHolderTranslate:"=?",prependIcon:"=?",appendIcon:"=?",label:"=?",labelTranslate:"=?",model:"=?",onChanged:"<?",readonly:"=?"},templateUrl:"/templates/framework/directives/password/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){e.$watch("model",function(n,t){if(void 0===n||null===n)return void(e.model="");i.isFunction(e.onChanged)&&e.onChanged(e.model,e.tag,t)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("progressbar",[function(){return{restrict:"E",replace:!0,scope:{disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/progressbar/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.model)&&(e.model=0),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("radio",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",onChange:"<?",disabled:"=?",visible:"=?",cssClass:"=?",textField:"=?",valueField:"=?",triggerOnInit:"=?",items:"=?",inline:"=?",model:"=?"},templateUrl:"/templates/framework/directives/radio/template.html",link:function(e,n,t){e.vm={initialized:!1},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.inline)&&(e.inline=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.triggerOnInit)&&(e.triggerOnInit=!1),i.isUndefined(e.items)&&(e.items=[]),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.textField)&&(e.textField="text"),i.isUndefined(e.valueField)&&(e.valueField="value"),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.onPick=function(i){e.disabled||(e.model=i[e.valueField])},e.vm.bind=function(){e.$watch("model",function(n,t){(e.vm.initialized||(e.vm.initialized=!0,e.triggerOnInit))&&e.vm.initialized&&i.isFunction(e.onChange)&&e.onChange(e.model,e.tag,e.items)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("ribbon",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/ribbon/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("slider",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/slider/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("switch",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/switch/template.html",link:function(e,n,t){e.vm={initialized:!1},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.toggle=function(i){i.stopPropagation(),i.preventDefault(),e.disabled||(e.model=!e.model)},e.vm.bind=function(){e.$watch("model",function(n,t){(e.vm.initialized||(e.vm.initialized=!0,e.triggerOnInit))&&e.vm.initialized&&i.isFunction(e.onChange)&&e.onChange(e.model,e.tag)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").factory("tabsService",function(){var i=function(e,i,n){return e.hasAttribute(i)?e.getAttribute(i):n};return{parse:function(n){var t=[];return e(n).each(function(e,n){t.push({disabled:i(n,"disabled",!1),cssClass:i(n,"css-class",""),title:i(n,"title",""),titleTranslate:i(n,"title-translate",null),icon:i(n,"icon",null),onEnter:i(n,"on-enter",null),onEnterValidate:i(n,"on-enter-validate",null),onExit:i(n,"on-exit",null),onExitValidate:i(n,"on-exit-validate",null),content:n.innerHTML})}),t}}}).directive("tabs",["$compile","$templateCache","tabsService",function(n,t,d){return{restrict:"E",replace:!0,scope:{disabled:"=?",visible:"=?",cssClass:"=?",keepScope:"=?",position:"=?",onChanged:"<?",onEnter:"<?",onExit:"<?",triggerPick:"=?",preventPick:"=?",steps:"=?",model:"=?"},compile:function(s){var l=t.get("/templates/framework/directives/tabs/template.html"),a=s.html();return s.empty(),{pre:function(t,s,r){t.vm={},t.vm.init=function(){i.isUndefined(t.disabled)&&(t.disabled=!1),i.isUndefined(t.keepScope)&&(t.keepScope=!1),i.isUndefined(t.preventPick)&&(t.preventPick=!1),i.isUndefined(t.visible)&&(t.visible=!0),i.isUndefined(t.cssClass)&&(t.cssClass=""),i.isUndefined(t.position)&&(t.position="top"),i.isUndefined(t.steps)&&(t.steps=d.parse(a)),i.isUndefined(t.model)&&t.steps.length&&t.vm.onPick(t.steps[0]),t.vm.compile(),t.vm.bind()},t.vm.onExitValidate=function(){var e=t.$parent.$eval(t.model.onExitValidate);return!i.isFunction(e)||e(t.model)},t.vm.onEnterValidate=function(e){var n=!0,d=t.$parent.$eval(e.onEnterValidate);i.isFunction(d)&&(n=d(e)),!0===n?t.vm.setModel(e):n&&n.then&&n.then(function(){t.vm.setModel(e)},function(){})},t.vm.setModel=function(e){t.model=e},t.vm.prepareForPick=function(e,i){i.stopPropagation(),i.preventDefault(),t.preventPick||t.vm.onPick(e)},t.vm.onPick=t.triggerPick=function(e){if(!t.disabled&&!e.disabled){if(!t.model)return void t.vm.setModel(e);var i=t.vm.onExitValidate();!0===i?t.vm.onEnterValidate(e):i&&i.then&&i.then(function(){t.vm.onEnterValidate(e)},function(){})}},t.vm.bind=function(){t.$watch("model",function(e,n){if(e){if(n){var d=t.$parent.$eval(n.onExit);i.isFunction(d)&&d(n,e),i.isFunction(t.onExit)&&t.onExit(n,e)}var s=t.$parent.$eval(e.onEnter);i.isFunction(s)&&s(e),i.isFunction(t.onEnter)&&t.onEnter(e),i.isFunction(t.onChanged)&&t.onChanged(e)}}),t.$on("$destroy",function(){t.triggerPick=null})},t.vm.compile=function(){var i=e(l);s.append(i),n(i)(t)},t.vm.init()}}}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("tags",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",model:"=?"},templateUrl:"/templates/framework/directives/tags/template.html",link:function(e,n,t){e.vm={query:""},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.model)&&(e.model=[]),e.vm.bind()},e.vm.onAdd=function(){!e.disabled&&e.vm.query&&-1===e.model.indexOf(e.vm.query)&&(e.model.push(e.vm.query),e.vm.query="")},e.vm.onRemove=function(i){e.disabled||e.model.del(i)},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("textbox",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",placeHolder:"=?",placeHolderTranslate:"=?",prependIcon:"=?",appendIcon:"=?",label:"=?",labelTranslate:"=?",model:"=?",onChanged:"<?",readonly:"=?"},templateUrl:"/templates/framework/directives/textbox/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.readonly)&&(e.readonly=!1),e.vm.bind()},e.vm.bind=function(){e.$watch("model",function(n,t){if(void 0===n||null===n)return void(e.model="");i.isFunction(e.onChanged)&&e.onChanged(e.model,e.tag,t)})},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("tree",[function(){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",onDemand:"=?",items:"=?",model:"=?"},templateUrl:"/templates/framework/directives/tree/template.html",link:function(e,n,t){e.vm={target:n.find("ul.tree"),initialized:!1},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.items)&&(e.items=[]),e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("validation-messages",[function(){return{restrict:"E",replace:!0,scope:{model:"=?"},templateUrl:"/templates/framework/directives/validation-messages/template.html",link:function(e,n,t){e.vm={},e.vm.init=function(){i.isUndefined(e.model)&&(e.model=[])},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").directive("waiting",[function(){return{restrict:"E",replace:!0,templateUrl:"/templates/framework/directives/waiting/template.html"}}])}(jQuery,angular,_,window,document),function(e,i,n,t,d,s){"use strict";i.module("frontend.directives").run(["$rootScope",function(e){Object.defineProperty(e,"$WizardContext",{get:function(){return this.$parent}})}]).directive("wizard",["$compile","$templateCache",function(n,t){return{restrict:"E",replace:!0,scope:{tag:"<?",disabled:"=?",visible:"=?",cssClass:"=?",nextText:"<?",nextTextTranslate:"=?",backText:"<?",backTextTranslate:"=?",keepScope:"=?",position:"=?",onChanged:"<?",onEnter:"<?",onExit:"<?",steps:"=?",model:"=?"},compile:function(d){var s=d.html();d.empty();var l=t.get("/templates/framework/directives/wizard/template.html"),a=e(l);return a.find("tabs").html(s),{pre:function(e,t,d){e.vm={currentIndex:0},e.vm.onNext=function(){var i=e.steps.indexOf(e.model),n=i+1;n!==e.steps.length&&e.vm.triggerPick&&e.vm.triggerPick(e.steps[n])},e.vm.onBack=function(){var i=e.steps.indexOf(e.model),n=i-1;-1!==n&&e.vm.triggerPick&&e.vm.triggerPick(e.steps[n])},e.vm.init=function(){i.isUndefined(e.disabled)&&(e.disabled=!1),i.isUndefined(e.visible)&&(e.visible=!0),i.isUndefined(e.cssClass)&&(e.cssClass=""),i.isUndefined(e.nextTextTranslate)&&(e.nextTextTranslate="general.next"),i.isUndefined(e.backTextTranslate)&&(e.backTextTranslate="general.previous"),e.vm.compile(),e.vm.bind()},e.vm.compile=function(){t.append(a),n(a)(e)},e.vm.bind=function(){Object.defineProperty(e.vm,"nextDisabled",{get:function(){return e.vm.currentIndex===e.steps.length-1}}),Object.defineProperty(e.vm,"backDisabled",{get:function(){return 0===e.vm.currentIndex}}),e.$watch("model",function(n,t){i.isUndefined(n)||(e.vm.currentIndex=e.steps.indexOf(n))})},e.vm.init()}}}}}])}(jQuery,angular,_,window,document);

@@ -98,4 +98,6 @@ (function ($, angular, underscore, window, document, undefined) {

'use strict';
String.prototype.format = function () {
return this;
String.prototype.format = function (parameter) {
return this.replace(/{(\d+)}/g, function (matchItem, index, matchCharPosition, input) {
return parameter[index] ? parameter[index] : matchItem;
});
};

@@ -102,0 +104,0 @@ }());

@@ -1,1 +0,1 @@

!function(t,n,r,i,e,o){"use strict";i.achasoft=i.achasoft||{},i.achasoft.frontend={enums:{},i18n:{},utils:{}},n.module("frontend.library",[]),n.module("frontend.templates",[]),n.module("frontend.layouts",[]),n.module("frontend.services",["frontend.library"]),n.module("frontend.filters",["frontend.library"]),n.module("frontend.directives",["frontend.services","frontend.filters"])}(jQuery,angular,_,window,document),function(t,n){"use strict";Array.prototype.copy=function(){return this.concat([])},Array.prototype.add=function(t,n){var r=this.indexOf(t);return-1!==r?r:!1===n?(this.unshift(t),0):(this.push(t),this.length-1)},Array.prototype.del=function(t){var n=this.indexOf(t);return-1!==n&&this.splice(n,1),n}}(window),function(t,n){"use strict"}(window),function(t,n){"use strict";var r=function(){};t.GregorianCalendar=r}(window),function(t,n){"use strict";var r=function(){};t.HijriCalendar=r}(window),function(t,n){"use strict"}(jQuery),function(t,n){"use strict";t.module("frontend.library").factory("operationResult",function(){var t=function(){this.error=null,this.status=!1,this.data=null};return t.success=function(n){return(new t).success(n)},t.failed=function(n){return(new t).failed(n)},t.prototype.success=function(t){return this.data=t,this.status=!0,this.error=null,this},t.prototype.failed=function(t){return this.data=null,this.status=!1,this.error=t,this},t})}(angular),function(t,n){"use strict";var r=function(){};t.PersianCalendar=r}(window),function(t){"use strict";String.prototype.format=function(){return this}}(),function(t,n){"use strict";t.module("frontend.library").factory("uuid",function(){return function(){function t(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return t()+t()+"-"+t()+"-"+t()+"-"+t()+"-"+t()+t()+t()}})}(angular),function(t,n,r,i,e,o){"use strict";n.module("frontend.layouts")}(jQuery,angular,_,window,document);
!function(t,n,r,e,i,o){"use strict";e.achasoft=e.achasoft||{},e.achasoft.frontend={enums:{},i18n:{},utils:{}},n.module("frontend.library",[]),n.module("frontend.templates",[]),n.module("frontend.layouts",[]),n.module("frontend.services",["frontend.library"]),n.module("frontend.filters",["frontend.library"]),n.module("frontend.directives",["frontend.services","frontend.filters"])}(jQuery,angular,_,window,document),function(t,n){"use strict";Array.prototype.copy=function(){return this.concat([])},Array.prototype.add=function(t,n){var r=this.indexOf(t);return-1!==r?r:!1===n?(this.unshift(t),0):(this.push(t),this.length-1)},Array.prototype.del=function(t){var n=this.indexOf(t);return-1!==n&&this.splice(n,1),n}}(window),function(t,n){"use strict"}(window),function(t,n){"use strict";var r=function(){};t.GregorianCalendar=r}(window),function(t,n){"use strict";var r=function(){};t.HijriCalendar=r}(window),function(t,n){"use strict"}(jQuery),function(t,n){"use strict";t.module("frontend.library").factory("operationResult",function(){var t=function(){this.error=null,this.status=!1,this.data=null};return t.success=function(n){return(new t).success(n)},t.failed=function(n){return(new t).failed(n)},t.prototype.success=function(t){return this.data=t,this.status=!0,this.error=null,this},t.prototype.failed=function(t){return this.data=null,this.status=!1,this.error=t,this},t})}(angular),function(t,n){"use strict";var r=function(){};t.PersianCalendar=r}(window),function(t){"use strict";String.prototype.format=function(t){return this.replace(/{(\d+)}/g,function(n,r,e,i){return t[r]?t[r]:n})}}(),function(t,n){"use strict";t.module("frontend.library").factory("uuid",function(){return function(){function t(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return t()+t()+"-"+t()+"-"+t()+"-"+t()+"-"+t()+t()+t()}})}(angular),function(t,n,r,e,i,o){"use strict";n.module("frontend.layouts")}(jQuery,angular,_,window,document);

@@ -8,5 +8,7 @@ (function ($, angular, underscore, window, document, undefined) {

angular.module('frontend.directives').directive('actionBar', [
'identityService',
'actionBarService',
'layoutTogglers',
function (actionBarService, layoutTogglers) {
'cultureService',
function (identityService, actionBarService, layoutTogglers, culture) {
return {

@@ -26,2 +28,6 @@ restrict: 'E',

};
scope.vm.logout = function () {
identityService.clearToken();
window.location = '/{0}/account/'.format([culture.lang]);
};
scope.vm.onAction = function (button) {

@@ -87,3 +93,5 @@ if (button.action) {

'use strict';
angular.module('frontend.directives').directive('panelWaiting', [function () {
angular.module('frontend.directives').directive('breadcrumbs', [
'breadcrumbsService',
function (breadcrumbsService) {
return {

@@ -93,5 +101,5 @@ restrict: 'E',

scope: {},
templateUrl: '/templates/framework/panel/directives/panel-waiting/template.html',
templateUrl: '/templates/framework/panel/directives/breadcrumbs/template.html',
link: function (scope, element, attr) {
scope.vm = {};
scope.vm = { dataSource: breadcrumbsService };
scope.vm.init = function () {

@@ -105,9 +113,8 @@ scope.vm.bind();

};
}]);
}
]);
}(jQuery, angular, _, window, document));
(function ($, angular, underscore, window, document, undefined) {
'use strict';
angular.module('frontend.directives').directive('breadcrumbs', [
'breadcrumbsService',
function (breadcrumbsService) {
angular.module('frontend.directives').directive('panelWaiting', [function () {
return {

@@ -117,5 +124,5 @@ restrict: 'E',

scope: {},
templateUrl: '/templates/framework/panel/directives/breadcrumbs/template.html',
templateUrl: '/templates/framework/panel/directives/panel-waiting/template.html',
link: function (scope, element, attr) {
scope.vm = { dataSource: breadcrumbsService };
scope.vm = {};
scope.vm.init = function () {

@@ -129,4 +136,3 @@ scope.vm.bind();

};
}
]);
}]);
}(jQuery, angular, _, window, document));

@@ -188,4 +194,7 @@ (function ($, angular, underscore, window, document, undefined) {

angular.module('frontend.directives').directive('sideNavigation', [
'$rootScope',
'$route',
'sideMenuService',
function (sideMenuService) {
'cultureService',
function ($rootScope, $route, sideMenuService, cultureService) {
return {

@@ -204,2 +213,3 @@ restrict: 'E',

scope.vm.bind();
scope.vm.preSelect();
};

@@ -230,3 +240,69 @@ scope.vm.getMenuClass = function (menu) {

};
scope.vm.preSelect = function () {
var menuFound = false;
var hash = window.location.hash;
scope.vm.dataSource.forEach(function (item) {
if (item.url === hash) {
menuFound = true;
scope.vm.selectedMenu = item;
scope.vm.findSub(item);
}
});
if (!menuFound)
scope.vm.findSub();
};
scope.vm.findSub = function (menu) {
var k, i, j;
var hash = window.location.hash;
var subFound = false, menuFound = false;
if (menu && menu.categories) {
for (i = 0; i < menu.categories.length; i++) {
for (j = 0; j < menu.categories[i].menus.length; j++) {
if (menu.categories[i].menus[j].href === hash) {
subFound = true;
scope.vm.selectedSub = menu.categories[i].menus[j];
break;
}
}
if (subFound)
break;
}
return;
}
for (k = 0; k < scope.vm.dataSource.length; k++) {
if (scope.vm.dataSource[k].href === hash) {
scope.vm.selectedMenu = scope.vm.dataSource[k];
menuFound = true;
}
if (!scope.vm.dataSource[k].categories)
continue;
for (i = 0; i < scope.vm.dataSource[k].categories.length; i++) {
for (j = 0; j < scope.vm.dataSource[k].categories[i].menus.length; j++) {
if (scope.vm.dataSource[k].categories[i].menus[j].href === hash) {
subFound = true;
scope.vm.selectedMenu = scope.vm.dataSource[k];
scope.vm.selectedSub = scope.vm.dataSource[k].categories[i].menus[j];
break;
}
}
if (subFound)
break;
}
if (subFound || menuFound)
break;
}
};
scope.vm.bind = function () {
$rootScope.$on('$routeChangeSuccess', function () {
scope.vm.preSelect();
});
setTimeout(function () {
element.slimscroll({
touchScrollStep: 80,
height: $(window).height() - 175,
position: cultureService.rtl ? 'left' : 'right',
size: '3px',
color: '#29c7ca'
});
}, 500);
};

@@ -233,0 +309,0 @@ scope.vm.init();

@@ -1,1 +0,1 @@

!function(e,t,n,i,o,c){"use strict";t.module("frontend.directives")}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("actionBar",["actionBarService","layoutTogglers",function(e,t){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/action-bar/template.html",link:function(n,i,o){n.vm={dataSource:e,currentSet:[],page:1},n.vm.init=function(){n.vm.bind()},n.vm.onAction=function(e){e.action&&e.action(e)},n.vm.getNotificationClass=function(e,t){return 0===t?"notification-upperbody "+e.cssClass:"notification-lowerbody"},n.vm.collapseMenu=function(){t.toggleMenu()},n.vm.onNotificationsChanged=function(){n.vm.page=1,n.vm.setNotificationPage()},n.vm.prev=function(e){e.stopPropagation(),e.preventDefault(),1!==n.vm.page&&(n.vm.page--,n.vm.setNotificationPage())},n.vm.next=function(t){t.stopPropagation(),t.preventDefault();var i=Math.ceil((e.notifications||[]).length%3);n.vm.page>=i||(n.vm.page++,n.vm.setNotificationPage())},n.vm.setNotificationPage=function(){if(e.notifications.length<=3)return void(n.vm.currentSet=e.notifications.concat([]));var t=[],i=3*(n.vm.page-1),o=i+3;for(o>e.notifications.length&&(o=e.notifications.length),i;i<o;i++)t.push(e.notifications[i]);n.vm.currentSet=t},n.vm.bind=function(){n.$watchCollection("vm.dataSource.notifications",n.vm.onNotificationsChanged)},n.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("panelWaiting",[function(){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/panel-waiting/template.html",link:function(e,t,n){e.vm={},e.vm.init=function(){e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("breadcrumbs",["breadcrumbsService",function(e){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/breadcrumbs/template.html",link:function(t,n,i){t.vm={dataSource:e},t.vm.init=function(){t.vm.bind()},t.vm.bind=function(){},t.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("sideBar",["sideBarService","layoutTogglers",function(e,t){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/side-bar/template.html",link:function(n,i,o){n.vm={dataSource:e},n.vm.init=function(){n.vm.bind()},n.vm.bind=function(){},n.vm.close=function(){t.closeSidebar()},n.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("sideMenu",["sideMenuService",function(e){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/side-menu/template.html",link:function(t,n,i){t.vm={dataSource:e},t.vm.init=function(){t.vm.bind()},t.vm.bind=function(){},t.vm.signOut=function(){},t.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("sideNavigation",["sideMenuService",function(e){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/side-navigation/template.html",link:function(t,n,i){t.vm={dataSource:e.menus,selectedMenu:null,selectedSub:null},t.vm.init=function(){t.vm.bind()},t.vm.getMenuClass=function(e){var n=t.vm.selectedMenu===e?"active":"";return n?((e.type||e.categories&&e.categories.length)&&(n+=" open"),n):n},t.vm.getSubMenuClass=function(e){return e===t.vm.selectedSub?"active":""},t.vm.subMenuAction=function(e){t.vm.selectedSub=e,e.action&&e.action(e)},t.vm.menuAction=function(e){t.vm.selectedMenu=e,e.action&&e.action(e)},t.vm.bind=function(){},t.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("sideNavigationExtend",["$compile",function(t){return{restrict:"E",replace:!0,scope:{model:"<",tag:"<?"},compile:function(n){return{pre:function(n,i,o){var c="<0></0>".replace(/0/g,n.model),r=e(c);t(r)(n),i.replaceWith(r)}}}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("toolbar",["toolbarService",function(e){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/toolbar/template.html",link:function(t,n,i){t.vm={dataSource:e},t.vm.init=function(){t.vm.bind()},t.vm.bind=function(){},t.vm.onAction=function(e){e.action&&e.action(e)},t.vm.init()}}}])}(jQuery,angular,_,window,document);
!function(e,t,n,i,o,c){"use strict";t.module("frontend.directives")}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("actionBar",["identityService","actionBarService","layoutTogglers","cultureService",function(e,t,n,o){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/action-bar/template.html",link:function(c,r,a){c.vm={dataSource:t,currentSet:[],page:1},c.vm.init=function(){c.vm.bind()},c.vm.logout=function(){e.clearToken(),i.location="/{0}/account/".format([o.lang])},c.vm.onAction=function(e){e.action&&e.action(e)},c.vm.getNotificationClass=function(e,t){return 0===t?"notification-upperbody "+e.cssClass:"notification-lowerbody"},c.vm.collapseMenu=function(){n.toggleMenu()},c.vm.onNotificationsChanged=function(){c.vm.page=1,c.vm.setNotificationPage()},c.vm.prev=function(e){e.stopPropagation(),e.preventDefault(),1!==c.vm.page&&(c.vm.page--,c.vm.setNotificationPage())},c.vm.next=function(e){e.stopPropagation(),e.preventDefault();var n=Math.ceil((t.notifications||[]).length%3);c.vm.page>=n||(c.vm.page++,c.vm.setNotificationPage())},c.vm.setNotificationPage=function(){if(t.notifications.length<=3)return void(c.vm.currentSet=t.notifications.concat([]));var e=[],n=3*(c.vm.page-1),i=n+3;for(i>t.notifications.length&&(i=t.notifications.length),n;n<i;n++)e.push(t.notifications[n]);c.vm.currentSet=e},c.vm.bind=function(){c.$watchCollection("vm.dataSource.notifications",c.vm.onNotificationsChanged)},c.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("breadcrumbs",["breadcrumbsService",function(e){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/breadcrumbs/template.html",link:function(t,n,i){t.vm={dataSource:e},t.vm.init=function(){t.vm.bind()},t.vm.bind=function(){},t.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("panelWaiting",[function(){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/panel-waiting/template.html",link:function(e,t,n){e.vm={},e.vm.init=function(){e.vm.bind()},e.vm.bind=function(){},e.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("sideBar",["sideBarService","layoutTogglers",function(e,t){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/side-bar/template.html",link:function(n,i,o){n.vm={dataSource:e},n.vm.init=function(){n.vm.bind()},n.vm.bind=function(){},n.vm.close=function(){t.closeSidebar()},n.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("sideMenu",["sideMenuService",function(e){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/side-menu/template.html",link:function(t,n,i){t.vm={dataSource:e},t.vm.init=function(){t.vm.bind()},t.vm.bind=function(){},t.vm.signOut=function(){},t.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("sideNavigation",["$rootScope","$route","sideMenuService","cultureService",function(t,n,o,c){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/side-navigation/template.html",link:function(n,r,a){n.vm={dataSource:o.menus,selectedMenu:null,selectedSub:null},n.vm.init=function(){n.vm.bind(),n.vm.preSelect()},n.vm.getMenuClass=function(e){var t=n.vm.selectedMenu===e?"active":"";return t?((e.type||e.categories&&e.categories.length)&&(t+=" open"),t):t},n.vm.getSubMenuClass=function(e){return e===n.vm.selectedSub?"active":""},n.vm.subMenuAction=function(e){n.vm.selectedSub=e,e.action&&e.action(e)},n.vm.menuAction=function(e){n.vm.selectedMenu=e,e.action&&e.action(e)},n.vm.preSelect=function(){var e=!1,t=i.location.hash;n.vm.dataSource.forEach(function(i){i.url===t&&(e=!0,n.vm.selectedMenu=i,n.vm.findSub(i))}),e||n.vm.findSub()},n.vm.findSub=function(e){var t,o,c,r=i.location.hash,a=!1,u=!1;if(e&&e.categories)for(o=0;o<e.categories.length;o++){for(c=0;c<e.categories[o].menus.length;c++)if(e.categories[o].menus[c].href===r){a=!0,n.vm.selectedSub=e.categories[o].menus[c];break}if(a)break}else for(t=0;t<n.vm.dataSource.length;t++)if(n.vm.dataSource[t].href===r&&(n.vm.selectedMenu=n.vm.dataSource[t],u=!0),n.vm.dataSource[t].categories){for(o=0;o<n.vm.dataSource[t].categories.length;o++){for(c=0;c<n.vm.dataSource[t].categories[o].menus.length;c++)if(n.vm.dataSource[t].categories[o].menus[c].href===r){a=!0,n.vm.selectedMenu=n.vm.dataSource[t],n.vm.selectedSub=n.vm.dataSource[t].categories[o].menus[c];break}if(a)break}if(a||u)break}},n.vm.bind=function(){t.$on("$routeChangeSuccess",function(){n.vm.preSelect()}),setTimeout(function(){r.slimscroll({touchScrollStep:80,height:e(i).height()-175,position:c.rtl?"left":"right",size:"3px",color:"#29c7ca"})},500)},n.vm.init()}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("sideNavigationExtend",["$compile",function(t){return{restrict:"E",replace:!0,scope:{model:"<",tag:"<?"},compile:function(n){return{pre:function(n,i,o){var c="<0></0>".replace(/0/g,n.model),r=e(c);t(r)(n),i.replaceWith(r)}}}}}])}(jQuery,angular,_,window,document),function(e,t,n,i,o,c){"use strict";t.module("frontend.directives").directive("toolbar",["toolbarService",function(e){return{restrict:"E",replace:!0,scope:{},templateUrl:"/templates/framework/panel/directives/toolbar/template.html",link:function(t,n,i){t.vm={dataSource:e},t.vm.init=function(){t.vm.bind()},t.vm.bind=function(){},t.vm.onAction=function(e){e.action&&e.action(e)},t.vm.init()}}}])}(jQuery,angular,_,window,document);

@@ -7,3 +7,3 @@ ;(function(){

$templateCache.put('/templates/framework/panel/directives/action-bar/template.html', '<ul class="af-action-bar header-actions"><li class=actions-stretch-menu id=action-stretch-menu><div class=icon></div></li><li ng-click=vm.collapseMenu() id=action-menu-collapse><a><i class=pe-7s-menu></i></a></li><li ng-if=vm.dataSource.showNotifications class=actions-notification><a class=dropdown-toggle data-toggle=dropdown title="{{:: \'panel.general.notifications\' | translate}}" href=javascript:void(0)><i class=pe-7s-mail></i></a><ul ng-if=vm.dataSource.notifications.length class="dropdown-menu dropdown-arrow pull-right"><li><div class=notification-header><div class=header-title>{{:: \'panel.general.notifications\' | translate}}</div></div><div ng-repeat="notification in vm.currentSet" class="{{vm.getNotificationClass(notification, $index)}}"><div ng-if="$index === 0" class="widget {{notification.cssClass}}"><div class=row><div class="col-lg-6 h-70 w-70 p-5 align-center"><div><img ng-src={{notification.image}} class="w-60 h-60" alt={{notification.author}}></div></div><div class="col-lg-6 h-70 w-m-70 p-5 p-t-10"><div><strong class=f-13>{{notification.author}}</strong></div><div class=f-11>{{notification.subject}}</div></div></div></div><div class=notification-message><div class=message-title>{{notification.title}}</div><div class=message-time><i class="pe-7s-clock v-a-middle"></i> {{notification.date | moment}}</div></div></div><div class=notification-footer><a class=pull-left ng-click=vm.prev($event) href=javascript:void(0)><i class="pe-7s-angle-left-circle f-25"></i></a> <a class=pull-right ng-click=vm.next($event) href=javascript:void(0)><i class="pe-7s-angle-right-circle f-25"></i></a></div></li></ul></li><li ng-repeat="button in vm.dataSource.buttons"><a ng-if=::button.href href={{::button.href}}><i class={{::button.icon}}></i></a> <a ng-if=::!button.href ng-click=vm.onAction(button) href=javascript:void(0)><i class={{::button.icon}}></i></a></li></ul>');
$templateCache.put('/templates/framework/panel/directives/action-bar/template.html', '<ul class="af-action-bar header-actions"><li class=actions-stretch-menu id=action-stretch-menu><div class=icon></div></li><li ng-click=vm.collapseMenu() id=action-menu-collapse><a><i class=pe-7s-menu></i></a></li><li ng-if=vm.dataSource.showNotifications class=actions-notification><a class=dropdown-toggle data-toggle=dropdown title="{{:: \'panel.general.notifications\' | translate}}" href=javascript:void(0)><i class=pe-7s-mail></i></a><ul ng-if=vm.dataSource.notifications.length class="dropdown-menu dropdown-arrow pull-right"><li><div class=notification-header><div class=header-title>{{:: \'panel.general.notifications\' | translate}}</div></div><div ng-repeat="notification in vm.currentSet" class="{{vm.getNotificationClass(notification, $index)}}"><div ng-if="$index === 0" class="widget {{notification.cssClass}}"><div class=row><div class="col-lg-6 h-70 w-70 p-5 align-center"><div><img ng-src={{notification.image}} class="w-60 h-60" alt={{notification.author}}></div></div><div class="col-lg-6 h-70 w-m-70 p-5 p-t-10"><div><strong class=f-13>{{notification.author}}</strong></div><div class=f-11>{{notification.subject}}</div></div></div></div><div class=notification-message><div class=message-title>{{notification.title}}</div><div class=message-time><i class="pe-7s-clock v-a-middle"></i> {{notification.date | moment}}</div></div></div><div class=notification-footer><a class=pull-left ng-click=vm.prev($event) href=javascript:void(0)><i class="pe-7s-angle-left-circle f-25"></i></a> <a class=pull-right ng-click=vm.next($event) href=javascript:void(0)><i class="pe-7s-angle-right-circle f-25"></i></a></div></li></ul></li><li ng-repeat="button in vm.dataSource.buttons"><a ng-if=::button.href href={{::button.href}}><i class={{::button.icon}}></i></a> <a ng-if=::!button.href ng-click=vm.onAction(button) href=javascript:void(0)><i class={{::button.icon}}></i></a></li><li><a ng-click=vm.logout() href=javascript:void(0)><i class=pe-7s-power></i></a></li></ul>');

@@ -10,0 +10,0 @@ $templateCache.put('/templates/framework/panel/directives/breadcrumbs/template.html', '<ul class="af-breadcrumbs breadcrumb"><li ng-repeat="crumb in vm.dataSource.crumbs" class="{{::($last?\'active\':\'\')}}"><a ng-if=::!$last href={{::crumb.href}}><i class={{::crumb.icon}}></i> <span>{{::crumb.title}}</span></a> <a ng-if=::$last href=javascript:void(0)><i class={{::crumb.icon}}></i> <span>{{::crumb.title}}</span></a></li></ul>');

@@ -1,1 +0,1 @@

!function(){"use strict";angular.module("frontend.templates").run(["$templateCache",function(a){a.put("/templates/framework/panel/directives/action-bar/template.html",'<ul class="af-action-bar header-actions"><li class=actions-stretch-menu id=action-stretch-menu><div class=icon></div></li><li ng-click=vm.collapseMenu() id=action-menu-collapse><a><i class=pe-7s-menu></i></a></li><li ng-if=vm.dataSource.showNotifications class=actions-notification><a class=dropdown-toggle data-toggle=dropdown title="{{:: \'panel.general.notifications\' | translate}}" href=javascript:void(0)><i class=pe-7s-mail></i></a><ul ng-if=vm.dataSource.notifications.length class="dropdown-menu dropdown-arrow pull-right"><li><div class=notification-header><div class=header-title>{{:: \'panel.general.notifications\' | translate}}</div></div><div ng-repeat="notification in vm.currentSet" class="{{vm.getNotificationClass(notification, $index)}}"><div ng-if="$index === 0" class="widget {{notification.cssClass}}"><div class=row><div class="col-lg-6 h-70 w-70 p-5 align-center"><div><img ng-src={{notification.image}} class="w-60 h-60" alt={{notification.author}}></div></div><div class="col-lg-6 h-70 w-m-70 p-5 p-t-10"><div><strong class=f-13>{{notification.author}}</strong></div><div class=f-11>{{notification.subject}}</div></div></div></div><div class=notification-message><div class=message-title>{{notification.title}}</div><div class=message-time><i class="pe-7s-clock v-a-middle"></i> {{notification.date | moment}}</div></div></div><div class=notification-footer><a class=pull-left ng-click=vm.prev($event) href=javascript:void(0)><i class="pe-7s-angle-left-circle f-25"></i></a> <a class=pull-right ng-click=vm.next($event) href=javascript:void(0)><i class="pe-7s-angle-right-circle f-25"></i></a></div></li></ul></li><li ng-repeat="button in vm.dataSource.buttons"><a ng-if=::button.href href={{::button.href}}><i class={{::button.icon}}></i></a> <a ng-if=::!button.href ng-click=vm.onAction(button) href=javascript:void(0)><i class={{::button.icon}}></i></a></li></ul>'),a.put("/templates/framework/panel/directives/breadcrumbs/template.html",'<ul class="af-breadcrumbs breadcrumb"><li ng-repeat="crumb in vm.dataSource.crumbs" class="{{::($last?\'active\':\'\')}}"><a ng-if=::!$last href={{::crumb.href}}><i class={{::crumb.icon}}></i> <span>{{::crumb.title}}</span></a> <a ng-if=::$last href=javascript:void(0)><i class={{::crumb.icon}}></i> <span>{{::crumb.title}}</span></a></li></ul>'),a.put("/templates/framework/panel/directives/panel-waiting/template.html","<div class=af-panel-waiting>panel-waiting</div>"),a.put("/templates/framework/panel/directives/side-bar/template.html",'<div class="af-side-bar sidebar form collapsed"><div id=helpbar class=helpbar><div class=sidebar-header><div class=header-title><i class=pe-7s-info></i> <span>{{vm.dataSource.title}}</span></div><div class=header-description>{{vm.dataSource.description}}</div><div ng-click=vm.close() class=header-close><i class=pe-7s-angle-right-circle></i></div></div><div class=sidebar-body>SIDE BAR CONTENT</div></div></div>'),a.put("/templates/framework/panel/directives/side-menu/template.html",'<div class="af-side-menu sidebar menu"><div class=sidebar-header><div class=header-brand><div class=brand-logo><img ng-src="{{:: vm.dataSource.logoPath}}" alt="{{:: vm.dataSource.applicationName}}"></div><div class=brand-slogan><div class=slogan-title>{{:: vm.dataSource.applicationName}}</div></div></div><div class=header-notification><a ng-if=vm.dataSource.notifications.length class=notification href="{{ vm.dataSource.notifications[0].href}}"><i class="{{ vm.dataSource.notifications[0].icon}}"></i> <span class=text>{{ vm.dataSource.notifications[0].title}}</span><div ng-if=vm.dataSource.notifications[0].sub class=more><span class=more-text>{{ vm.dataSource.notifications[0].sub}}</span> <i class="{{ vm.dataSource.notifications[0].subIcon}}"></i></div></a></div></div><div class=sidebar-menu><side-navigation></side-navigation></div><div class=sidebar-footer><div class=footer-avatar><img ng-src="{{ vm.dataSource.user.avatar}}" alt="{{ vm.dataSource.user.fullName}}"></div><div class=footer-user><a href=#/profile>{{ vm.dataSource.user.fullName}}</a></div><div class=footer-links><a href=javascript:void(0) ng-click=vm.signOut() class=links-logout><i class=pe-7s-power></i> <span>{{:: \'panel.general.signOut\' | translate}}</span></a></div></div></div>'),a.put("/templates/framework/panel/directives/side-navigation/template.html",'<ul class="af-action-bar menu"><li ng-repeat="menu in vm.dataSource" class={{vm.getMenuClass(menu)}}><a ng-if=::menu.href href="{{:: menu.href}}" ng-click=vm.menuAction(menu)><i class="{{:: menu.icon}}"></i> <span ng-if=::menu.title>{{:: menu.title}}</span> <span ng-if=::menu.titleTranslate>{{:: menu.titleTranslate | translate}}</span></a> <a ng-if=::!menu.href ng-click=vm.menuAction(menu) href=javascript:void(0)><i class="{{:: menu.icon}}"></i> <span ng-if=::menu.title>{{:: menu.title}}</span> <span ng-if=::menu.titleTranslate>{{:: menu.titleTranslate | translate}}</span></a><ul ng-if="::(menu.type === undefined || menu.type === \'submenu\')"><li ng-repeat-start="cat in menu.categories" class=submenu-title><span ng-if=::cat.title>{{:: cat.title}}</span> <span ng-if=::cat.titleTranslate>{{:: cat.titleTranslate | translate}}</span></li><li ng-repeat="sub in cat.menus"><a ng-if=::sub.href class={{vm.getSubMenuClass(sub)}} href="{{:: sub.href}}"><i class="{{:: sub.icon}}"></i> <span ng-if=::sub.title>{{:: sub.title}}</span> <span ng-if=::sub.titleTranslate>{{:: sub.titleTranslate | translate}}</span></a> <a ng-if=::!sub.href class={{vm.getSubMenuClass(sub)}} ng-click=vm.subMenuAction(sub) href=javascript:void(0)><i class="{{:: sub.icon}}"></i> <span ng-if=::sub.title>{{:: sub.title}}</span> <span ng-if=::sub.titleTranslate>{{:: sub.titleTranslate | translate}}</span></a></li><li ng-repeat-end class=seperator></li></ul><side-navigation-extend ng-if=::menu.type tag=menu model=menu.type></side-navigation-extend></li></ul>'),a.put("/templates/framework/panel/directives/toolbar/template.html",'<div class="af-toolbar content-nav"><div class="navbar navbar-default content-nav-navbar"><div class=navbar-header><a data-toggle=collapse data-target=#navbar-collapse-2 class="navbar-toggle collapsed"><div class=icon></div></a> <a ng-if=::vm.dataSource.title href=javascript:void(0) class=navbar-brand>{{vm.dataSource.title}}</a> <a ng-if=::vm.dataSource.titleTranslate href=javascript:void(0) class=navbar-brand>{{vm.dataSource.titleTranslate | translate}}</a></div><div id=navbar-collapse-2 class="navbar-collapse collapse"><ul class="nav navbar-nav"><li ng-repeat="menu in vm.dataSource.menus" class="dropdown content-nav-navbar-fw"><a href=javascript:void(0) data-toggle=dropdown class=dropdown-toggle><span ng-if=::menu.title>{{:: menu.title}}</span> <span ng-if=::menu.titleTranslate>{{:: menu.titleTranslate | translate}}</span> <i class="dropdown-caret pe-7s-angle-down"></i></a><ul class=dropdown-menu><li><div class="content-nav-navbar-content p-b-0"><ul ng-if="::(menu.type === \'thumbnail\')" class="thumbnail-links row"><li ng-repeat="thumbnail in menu.thumbnails" class=col-sm-4><a ng-if=::thumbnail.href href={{::thumbnail.href}}><i class={{::thumbnail.icon}}></i><div ng-if=::thumbnail.title class=link-title>{{::thumbnail.title}}</div><div ng-if=::thumbnail.titleTranslate class=link-title>{{::thumbnail.titleTranslate | translate}}</div><p>{{::thumbnail.description}}</p></a> <a ng-if=::!thumbnail.href ng-click=vm.onAction(thumbnail) href=javascript:void(0)><i class={{::thumbnail.icon}}></i><div ng-if=::thumbnail.title class=link-title>{{::thumbnail.title}}</div><div ng-if=::thumbnail.titleTranslate class=link-title>{{::thumbnail.titleTranslate | translate}}</div><p>{{::thumbnail.description}}</p></a></li></ul><ul ng-if="::(menu.type === \'categories\')" class="categories-links row"><li ng-repeat="cat in menu.categories" class=col-sm-4><div ng-if=::cat.title class=category-title>{{::cat.title}}</div><div ng-if=::cat.titleTranslate class=category-title>{{::cat.titleTranslate | translate}}</div><ul><li ng-repeat="item in cat.items"><a ng-if=::item.href href={{::item.href}}><i class={{::item.icon}}></i> <span ng-if=::item.title>{{::item.title}}</span> <span ng-if=::item.titleTranslate>{{::item.titleTranslate|translate}}</span></a> <a ng-if=::!item.href href=javascript:void(0) ng-click=vm.onAction(item)><i class={{::item.icon}}></i> <span ng-if=::item.title>{{::item.title}}</span> <span ng-if=::item.titleTranslate>{{::item.titleTranslate|translate}}</span></a></li></ul></li></ul><ul ng-if="::(menu.type === \'gallery\')" class="gallery-links row"><li ng-repeat="item in menu.gallery" class=col-sm-3><a ng-if=::item.href href={{::item.href}}><img ng-src={{::item.image}} alt={{::item.title}}><div class=link-title>{{::item.title}}</div><p>{{::item.description}}</p></a> <a ng-if=::!item.href ng-click=vm.onAction(item) href=javascript:void(0)><img ng-src={{::item.image}} alt={{::item.title}}><div class=link-title>{{::item.title}}</div><p>{{::item.description}}</p></a></li></ul></div></li></ul></li></ul><ul ng-if=vm.dataSource.actions.length class="nav navbar-nav navbar-right"><li class=dropdown><a href=javascript:void(0) data-toggle=dropdown class=dropdown-toggle><span ng-if=::vm.dataSource.actionsTitle>{{::vm.dataSource.actionsTitle}}</span> <span ng-if=::vm.dataSource.actionsTitleTranslate>{{::vm.dataSource.actionsTitleTranslate | translate}}</span> <i class="dropdown-caret pe-7s-angle-down"></i></a><ul class=dropdown-menu><li ng-repeat="action in vm.dataSource.actions" class={{::action.cssClass}} ng-bind-html=action.content|to_trusted_html></li></ul></li></ul></div></div></div>')}])}();
!function(){"use strict";angular.module("frontend.templates").run(["$templateCache",function(a){a.put("/templates/framework/panel/directives/action-bar/template.html",'<ul class="af-action-bar header-actions"><li class=actions-stretch-menu id=action-stretch-menu><div class=icon></div></li><li ng-click=vm.collapseMenu() id=action-menu-collapse><a><i class=pe-7s-menu></i></a></li><li ng-if=vm.dataSource.showNotifications class=actions-notification><a class=dropdown-toggle data-toggle=dropdown title="{{:: \'panel.general.notifications\' | translate}}" href=javascript:void(0)><i class=pe-7s-mail></i></a><ul ng-if=vm.dataSource.notifications.length class="dropdown-menu dropdown-arrow pull-right"><li><div class=notification-header><div class=header-title>{{:: \'panel.general.notifications\' | translate}}</div></div><div ng-repeat="notification in vm.currentSet" class="{{vm.getNotificationClass(notification, $index)}}"><div ng-if="$index === 0" class="widget {{notification.cssClass}}"><div class=row><div class="col-lg-6 h-70 w-70 p-5 align-center"><div><img ng-src={{notification.image}} class="w-60 h-60" alt={{notification.author}}></div></div><div class="col-lg-6 h-70 w-m-70 p-5 p-t-10"><div><strong class=f-13>{{notification.author}}</strong></div><div class=f-11>{{notification.subject}}</div></div></div></div><div class=notification-message><div class=message-title>{{notification.title}}</div><div class=message-time><i class="pe-7s-clock v-a-middle"></i> {{notification.date | moment}}</div></div></div><div class=notification-footer><a class=pull-left ng-click=vm.prev($event) href=javascript:void(0)><i class="pe-7s-angle-left-circle f-25"></i></a> <a class=pull-right ng-click=vm.next($event) href=javascript:void(0)><i class="pe-7s-angle-right-circle f-25"></i></a></div></li></ul></li><li ng-repeat="button in vm.dataSource.buttons"><a ng-if=::button.href href={{::button.href}}><i class={{::button.icon}}></i></a> <a ng-if=::!button.href ng-click=vm.onAction(button) href=javascript:void(0)><i class={{::button.icon}}></i></a></li><li><a ng-click=vm.logout() href=javascript:void(0)><i class=pe-7s-power></i></a></li></ul>'),a.put("/templates/framework/panel/directives/breadcrumbs/template.html",'<ul class="af-breadcrumbs breadcrumb"><li ng-repeat="crumb in vm.dataSource.crumbs" class="{{::($last?\'active\':\'\')}}"><a ng-if=::!$last href={{::crumb.href}}><i class={{::crumb.icon}}></i> <span>{{::crumb.title}}</span></a> <a ng-if=::$last href=javascript:void(0)><i class={{::crumb.icon}}></i> <span>{{::crumb.title}}</span></a></li></ul>'),a.put("/templates/framework/panel/directives/panel-waiting/template.html","<div class=af-panel-waiting>panel-waiting</div>"),a.put("/templates/framework/panel/directives/side-bar/template.html",'<div class="af-side-bar sidebar form collapsed"><div id=helpbar class=helpbar><div class=sidebar-header><div class=header-title><i class=pe-7s-info></i> <span>{{vm.dataSource.title}}</span></div><div class=header-description>{{vm.dataSource.description}}</div><div ng-click=vm.close() class=header-close><i class=pe-7s-angle-right-circle></i></div></div><div class=sidebar-body>SIDE BAR CONTENT</div></div></div>'),a.put("/templates/framework/panel/directives/side-menu/template.html",'<div class="af-side-menu sidebar menu"><div class=sidebar-header><div class=header-brand><div class=brand-logo><img ng-src="{{:: vm.dataSource.logoPath}}" alt="{{:: vm.dataSource.applicationName}}"></div><div class=brand-slogan><div class=slogan-title>{{:: vm.dataSource.applicationName}}</div></div></div><div class=header-notification><a ng-if=vm.dataSource.notifications.length class=notification href="{{ vm.dataSource.notifications[0].href}}"><i class="{{ vm.dataSource.notifications[0].icon}}"></i> <span class=text>{{ vm.dataSource.notifications[0].title}}</span><div ng-if=vm.dataSource.notifications[0].sub class=more><span class=more-text>{{ vm.dataSource.notifications[0].sub}}</span> <i class="{{ vm.dataSource.notifications[0].subIcon}}"></i></div></a></div></div><div class=sidebar-menu><side-navigation></side-navigation></div><div class=sidebar-footer><div class=footer-avatar><img ng-src="{{ vm.dataSource.user.avatar}}" alt="{{ vm.dataSource.user.fullName}}"></div><div class=footer-user><a href=#/profile>{{ vm.dataSource.user.fullName}}</a></div><div class=footer-links><a href=javascript:void(0) ng-click=vm.signOut() class=links-logout><i class=pe-7s-power></i> <span>{{:: \'panel.general.signOut\' | translate}}</span></a></div></div></div>'),a.put("/templates/framework/panel/directives/side-navigation/template.html",'<ul class="af-action-bar menu"><li ng-repeat="menu in vm.dataSource" class={{vm.getMenuClass(menu)}}><a ng-if=::menu.href href="{{:: menu.href}}" ng-click=vm.menuAction(menu)><i class="{{:: menu.icon}}"></i> <span ng-if=::menu.title>{{:: menu.title}}</span> <span ng-if=::menu.titleTranslate>{{:: menu.titleTranslate | translate}}</span></a> <a ng-if=::!menu.href ng-click=vm.menuAction(menu) href=javascript:void(0)><i class="{{:: menu.icon}}"></i> <span ng-if=::menu.title>{{:: menu.title}}</span> <span ng-if=::menu.titleTranslate>{{:: menu.titleTranslate | translate}}</span></a><ul ng-if="::(menu.type === undefined || menu.type === \'submenu\')"><li ng-repeat-start="cat in menu.categories" class=submenu-title><span ng-if=::cat.title>{{:: cat.title}}</span> <span ng-if=::cat.titleTranslate>{{:: cat.titleTranslate | translate}}</span></li><li ng-repeat="sub in cat.menus"><a ng-if=::sub.href class={{vm.getSubMenuClass(sub)}} href="{{:: sub.href}}"><i class="{{:: sub.icon}}"></i> <span ng-if=::sub.title>{{:: sub.title}}</span> <span ng-if=::sub.titleTranslate>{{:: sub.titleTranslate | translate}}</span></a> <a ng-if=::!sub.href class={{vm.getSubMenuClass(sub)}} ng-click=vm.subMenuAction(sub) href=javascript:void(0)><i class="{{:: sub.icon}}"></i> <span ng-if=::sub.title>{{:: sub.title}}</span> <span ng-if=::sub.titleTranslate>{{:: sub.titleTranslate | translate}}</span></a></li><li ng-repeat-end class=seperator></li></ul><side-navigation-extend ng-if=::menu.type tag=menu model=menu.type></side-navigation-extend></li></ul>'),a.put("/templates/framework/panel/directives/toolbar/template.html",'<div class="af-toolbar content-nav"><div class="navbar navbar-default content-nav-navbar"><div class=navbar-header><a data-toggle=collapse data-target=#navbar-collapse-2 class="navbar-toggle collapsed"><div class=icon></div></a> <a ng-if=::vm.dataSource.title href=javascript:void(0) class=navbar-brand>{{vm.dataSource.title}}</a> <a ng-if=::vm.dataSource.titleTranslate href=javascript:void(0) class=navbar-brand>{{vm.dataSource.titleTranslate | translate}}</a></div><div id=navbar-collapse-2 class="navbar-collapse collapse"><ul class="nav navbar-nav"><li ng-repeat="menu in vm.dataSource.menus" class="dropdown content-nav-navbar-fw"><a href=javascript:void(0) data-toggle=dropdown class=dropdown-toggle><span ng-if=::menu.title>{{:: menu.title}}</span> <span ng-if=::menu.titleTranslate>{{:: menu.titleTranslate | translate}}</span> <i class="dropdown-caret pe-7s-angle-down"></i></a><ul class=dropdown-menu><li><div class="content-nav-navbar-content p-b-0"><ul ng-if="::(menu.type === \'thumbnail\')" class="thumbnail-links row"><li ng-repeat="thumbnail in menu.thumbnails" class=col-sm-4><a ng-if=::thumbnail.href href={{::thumbnail.href}}><i class={{::thumbnail.icon}}></i><div ng-if=::thumbnail.title class=link-title>{{::thumbnail.title}}</div><div ng-if=::thumbnail.titleTranslate class=link-title>{{::thumbnail.titleTranslate | translate}}</div><p>{{::thumbnail.description}}</p></a> <a ng-if=::!thumbnail.href ng-click=vm.onAction(thumbnail) href=javascript:void(0)><i class={{::thumbnail.icon}}></i><div ng-if=::thumbnail.title class=link-title>{{::thumbnail.title}}</div><div ng-if=::thumbnail.titleTranslate class=link-title>{{::thumbnail.titleTranslate | translate}}</div><p>{{::thumbnail.description}}</p></a></li></ul><ul ng-if="::(menu.type === \'categories\')" class="categories-links row"><li ng-repeat="cat in menu.categories" class=col-sm-4><div ng-if=::cat.title class=category-title>{{::cat.title}}</div><div ng-if=::cat.titleTranslate class=category-title>{{::cat.titleTranslate | translate}}</div><ul><li ng-repeat="item in cat.items"><a ng-if=::item.href href={{::item.href}}><i class={{::item.icon}}></i> <span ng-if=::item.title>{{::item.title}}</span> <span ng-if=::item.titleTranslate>{{::item.titleTranslate|translate}}</span></a> <a ng-if=::!item.href href=javascript:void(0) ng-click=vm.onAction(item)><i class={{::item.icon}}></i> <span ng-if=::item.title>{{::item.title}}</span> <span ng-if=::item.titleTranslate>{{::item.titleTranslate|translate}}</span></a></li></ul></li></ul><ul ng-if="::(menu.type === \'gallery\')" class="gallery-links row"><li ng-repeat="item in menu.gallery" class=col-sm-3><a ng-if=::item.href href={{::item.href}}><img ng-src={{::item.image}} alt={{::item.title}}><div class=link-title>{{::item.title}}</div><p>{{::item.description}}</p></a> <a ng-if=::!item.href ng-click=vm.onAction(item) href=javascript:void(0)><img ng-src={{::item.image}} alt={{::item.title}}><div class=link-title>{{::item.title}}</div><p>{{::item.description}}</p></a></li></ul></div></li></ul></li></ul><ul ng-if=vm.dataSource.actions.length class="nav navbar-nav navbar-right"><li class=dropdown><a href=javascript:void(0) data-toggle=dropdown class=dropdown-toggle><span ng-if=::vm.dataSource.actionsTitle>{{::vm.dataSource.actionsTitle}}</span> <span ng-if=::vm.dataSource.actionsTitleTranslate>{{::vm.dataSource.actionsTitleTranslate | translate}}</span> <i class="dropdown-caret pe-7s-angle-down"></i></a><ul class=dropdown-menu><li ng-repeat="action in vm.dataSource.actions" class={{::action.cssClass}} ng-bind-html=action.content|to_trusted_html></li></ul></li></ul></div></div></div>')}])}();

@@ -1,1 +0,1 @@

window.Modernizr=function(e,t,n){function r(e){g.cssText=e}function o(e,t){return r(x.join(e+";")+(t||""))}function i(e,t){return typeof e===t}function a(e,t){return!!~(""+e).indexOf(t)}function s(e,t){for(var r in e){var o=e[r];if(!a(o,"-")&&g[o]!==n)return"pfx"!==t||o}return!1}function c(e,t,r){for(var o in e){var a=t[e[o]];if(a!==n)return!1===r?e[o]:i(a,"function")?a.bind(r||t):a}return!1}function u(e,t,n){var r=e.charAt(0).toUpperCase()+e.slice(1),o=(e+" "+w.join(r+" ")+r).split(" ");return i(t,"string")||i(t,"undefined")?s(o,t):(o=(e+" "+$.join(r+" ")+r).split(" "),c(o,t,n))}var l,d,f={},p=t.documentElement,m="modernizr",h=t.createElement(m),g=h.style,v=t.createElement("input"),b=":)",y={}.toString,x=" -webkit- -moz- -o- -ms- ".split(" "),C="Webkit Moz O ms",w=C.split(" "),$=C.toLowerCase().split(" "),E={svg:"http://www.w3.org/2000/svg"},T={},S={},k={},D=[],M=D.slice,O=function(e,n,r,o){var i,a,s,c,u=t.createElement("div"),l=t.body,d=l||t.createElement("body");if(parseInt(r,10))for(;r--;)s=t.createElement("div"),s.id=o?o[r]:m+(r+1),u.appendChild(s);return i=["&#173;",'<style id="s',m,'">',e,"</style>"].join(""),u.id=m,(l?u:d).innerHTML+=i,d.appendChild(u),l||(d.style.background="",d.style.overflow="hidden",c=p.style.overflow,p.style.overflow="hidden",p.appendChild(d)),a=n(u,e),l?u.parentNode.removeChild(u):(d.parentNode.removeChild(d),p.style.overflow=c),!!a},P=function(t){var n=e.matchMedia||e.msMatchMedia;if(n)return n(t)&&n(t).matches||!1;var r;return O("@media "+t+" { #"+m+" { position: absolute; } }",function(t){r="absolute"===(e.getComputedStyle?getComputedStyle(t,null):t.currentStyle).position}),r},j=function(){function e(e,o){o=o||t.createElement(r[e]||"div"),e="on"+e;var a=e in o;return a||(o.setAttribute||(o=t.createElement("div")),o.setAttribute&&o.removeAttribute&&(o.setAttribute(e,""),a=i(o[e],"function"),i(o[e],"undefined")||(o[e]=n),o.removeAttribute(e))),o=null,a}var r={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return e}(),H={}.hasOwnProperty;d=i(H,"undefined")||i(H.call,"undefined")?function(e,t){return t in e&&i(e.constructor.prototype[t],"undefined")}:function(e,t){return H.call(e,t)},Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if("function"!=typeof t)throw new TypeError;var n=M.call(arguments,1),r=function(){if(this instanceof r){var o=function(){};o.prototype=t.prototype;var i=new o,a=t.apply(i,n.concat(M.call(arguments)));return Object(a)===a?a:i}return t.apply(e,n.concat(M.call(arguments)))};return r}),T.flexbox=function(){return u("flexWrap")},T.flexboxlegacy=function(){return u("boxDirection")},T.canvas=function(){var e=t.createElement("canvas");return!(!e.getContext||!e.getContext("2d"))},T.canvastext=function(){return!(!f.canvas||!i(t.createElement("canvas").getContext("2d").fillText,"function"))},T.webgl=function(){return!!e.WebGLRenderingContext},T.touch=function(){var n;return"ontouchstart"in e||e.DocumentTouch&&t instanceof DocumentTouch?n=!0:O(["@media (",x.join("touch-enabled),("),m,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(e){n=9===e.offsetTop}),n},T.geolocation=function(){return"geolocation"in navigator},T.postmessage=function(){return!!e.postMessage},T.websqldatabase=function(){return!!e.openDatabase},T.indexedDB=function(){return!!u("indexedDB",e)},T.hashchange=function(){return j("hashchange",e)&&(t.documentMode===n||t.documentMode>7)},T.history=function(){return!(!e.history||!history.pushState)},T.draganddrop=function(){var e=t.createElement("div");return"draggable"in e||"ondragstart"in e&&"ondrop"in e},T.websockets=function(){return"WebSocket"in e||"MozWebSocket"in e},T.rgba=function(){return r("background-color:rgba(150,255,150,.5)"),a(g.backgroundColor,"rgba")},T.hsla=function(){return r("background-color:hsla(120,40%,100%,.5)"),a(g.backgroundColor,"rgba")||a(g.backgroundColor,"hsla")},T.multiplebgs=function(){return r("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(g.background)},T.backgroundsize=function(){return u("backgroundSize")},T.borderimage=function(){return u("borderImage")},T.borderradius=function(){return u("borderRadius")},T.boxshadow=function(){return u("boxShadow")},T.textshadow=function(){return""===t.createElement("div").style.textShadow},T.opacity=function(){return o("opacity:.55"),/^0.55$/.test(g.opacity)},T.cssanimations=function(){return u("animationName")},T.csscolumns=function(){return u("columnCount")},T.cssgradients=function(){var e="background-image:";return r((e+"-webkit- ".split(" ").join("gradient(linear,left top,right bottom,from(#9f9),to(white));"+e)+x.join("linear-gradient(left top,#9f9, white);"+e)).slice(0,-e.length)),a(g.backgroundImage,"gradient")},T.cssreflections=function(){return u("boxReflect")},T.csstransforms=function(){return!!u("transform")},T.csstransforms3d=function(){var e=!!u("perspective");return e&&"webkitPerspective"in p.style&&O("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(t,n){e=9===t.offsetLeft&&3===t.offsetHeight}),e},T.csstransitions=function(){return u("transition")},T.fontface=function(){var e;return O('@font-face {font-family:"font";src:url("https://")}',function(n,r){var o=t.getElementById("smodernizr"),i=o.sheet||o.styleSheet,a=i?i.cssRules&&i.cssRules[0]?i.cssRules[0].cssText:i.cssText||"":"";e=/src/i.test(a)&&0===a.indexOf(r.split(" ")[0])}),e},T.generatedcontent=function(){var e;return O(["#",m,"{font:0/0 a}#",m,':after{content:"',b,'";visibility:hidden;font:3px/1 a}'].join(""),function(t){e=t.offsetHeight>=3}),e},T.video=function(){var e=t.createElement("video"),n=!1;try{(n=!!e.canPlayType)&&(n=Boolean(n),n.ogg=e.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),n.h264=e.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),n.webm=e.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(e){}return n},T.audio=function(){var e=t.createElement("audio"),n=!1;try{(n=!!e.canPlayType)&&(n=Boolean(n),n.ogg=e.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),n.mp3=e.canPlayType("audio/mpeg;").replace(/^no$/,""),n.wav=e.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),n.m4a=(e.canPlayType("audio/x-m4a;")||e.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(e){}return n},T.localstorage=function(){try{return localStorage.setItem(m,m),localStorage.removeItem(m),!0}catch(e){return!1}},T.sessionstorage=function(){try{return sessionStorage.setItem(m,m),sessionStorage.removeItem(m),!0}catch(e){return!1}},T.webworkers=function(){return!!e.Worker},T.applicationcache=function(){return!!e.applicationCache},T.svg=function(){return!!t.createElementNS&&!!t.createElementNS(E.svg,"svg").createSVGRect},T.inlinesvg=function(){var e=t.createElement("div");return e.innerHTML="<svg/>",(e.firstChild&&e.firstChild.namespaceURI)===E.svg},T.smil=function(){return!!t.createElementNS&&/SVGAnimate/.test(y.call(t.createElementNS(E.svg,"animate")))},T.svgclippaths=function(){return!!t.createElementNS&&/SVGClipPath/.test(y.call(t.createElementNS(E.svg,"clipPath")))};for(var I in T)d(T,I)&&(l=I.toLowerCase(),f[l]=T[I](),D.push((f[l]?"":"no-")+l));return f.input||function(){f.input=function(n){for(var r=0,o=n.length;r<o;r++)k[n[r]]=!!(n[r]in v);return k.list&&(k.list=!(!t.createElement("datalist")||!e.HTMLDataListElement)),k}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),f.inputtypes=function(e){for(var r,o,i,a=0,s=e.length;a<s;a++)v.setAttribute("type",o=e[a]),r="text"!==v.type,r&&(v.value=b,v.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(o)&&v.style.WebkitAppearance!==n?(p.appendChild(v),i=t.defaultView,r=i.getComputedStyle&&"textfield"!==i.getComputedStyle(v,null).WebkitAppearance&&0!==v.offsetHeight,p.removeChild(v)):/^(search|tel)$/.test(o)||(r=/^(url|email)$/.test(o)?v.checkValidity&&!1===v.checkValidity():v.value!==b)),S[e[a]]=!!r;return S}("search tel url email datetime date month week time datetime-local number range color".split(" "))}(),f.addTest=function(e,t){if("object"==typeof e)for(var r in e)d(e,r)&&f.addTest(r,e[r]);else{if(e=e.toLowerCase(),f[e]!==n)return f;t="function"==typeof t?t():t,p.className+=" "+(t?"":"no-")+e,f[e]=t}return f},r(""),h=v=null,function(e,t){function n(e,t){var n=e.createElement("p"),r=e.getElementsByTagName("head")[0]||e.documentElement;return n.innerHTML="x<style>"+t+"</style>",r.insertBefore(n.lastChild,r.firstChild)}function r(){var e=v.elements;return"string"==typeof e?e.split(" "):e}function o(e){var t=g[e[m]];return t||(t={},h++,e[m]=h,g[h]=t),t}function i(e,n,r){if(n||(n=t),l)return n.createElement(e);r||(r=o(n));var i;return i=r.cache[e]?r.cache[e].cloneNode():p.test(e)?(r.cache[e]=r.createElem(e)).cloneNode():r.createElem(e),!i.canHaveChildren||f.test(e)||i.tagUrn?i:r.frag.appendChild(i)}function a(e,n){if(e||(e=t),l)return e.createDocumentFragment();n=n||o(e);for(var i=n.frag.cloneNode(),a=0,s=r(),c=s.length;a<c;a++)i.createElement(s[a]);return i}function s(e,t){t.cache||(t.cache={},t.createElem=e.createElement,t.createFrag=e.createDocumentFragment,t.frag=t.createFrag()),e.createElement=function(n){return v.shivMethods?i(n,e,t):t.createElem(n)},e.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+r().join().replace(/[\w\-]+/g,function(e){return t.createElem(e),t.frag.createElement(e),'c("'+e+'")'})+");return n}")(v,t.frag)}function c(e){e||(e=t);var r=o(e);return!v.shivCSS||u||r.hasCSS||(r.hasCSS=!!n(e,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||s(e,r),e}var u,l,d=e.html5||{},f=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,m="_html5shiv",h=0,g={};!function(){try{var e=t.createElement("a");e.innerHTML="<xyz></xyz>",u="hidden"in e,l=1===e.childNodes.length||function(){t.createElement("a");var e=t.createDocumentFragment();return void 0===e.cloneNode||void 0===e.createDocumentFragment||void 0===e.createElement}()}catch(e){u=!0,l=!0}}();var v={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:"3.7.0",shivCSS:!1!==d.shivCSS,supportsUnknownElements:l,shivMethods:!1!==d.shivMethods,type:"default",shivDocument:c,createElement:i,createDocumentFragment:a};e.html5=v,c(t)}(this,t),f._version="2.8.3",f._prefixes=x,f._domPrefixes=$,f._cssomPrefixes=w,f.mq=P,f.hasEvent=j,f.testProp=function(e){return s([e])},f.testAllProps=u,f.testStyles=O,f.prefixed=function(e,t,n){return t?u(e,t,n):u(e,"pfx")},p.className=p.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+" js "+D.join(" "),f}(this,this.document),angular.module("ivpusic.cookie",["ipCookie"]),angular.module("ipCookie",["ng"]).factory("ipCookie",["$document",function(e){"use strict";function t(e){try{return decodeURIComponent(e)}catch(e){}}return function(){function n(n,r,o){var i,a,s,c,u,l,d,f,p;o=o||{};var m=o.decode||t,h=o.encode||encodeURIComponent;if(void 0!==r)return r="object"==typeof r?JSON.stringify(r):String(r),"number"==typeof o.expires&&(p=o.expires,o.expires=new Date,-1===p?o.expires=new Date("Thu, 01 Jan 1970 00:00:00 GMT"):void 0!==o.expirationUnit?"hours"===o.expirationUnit?o.expires.setHours(o.expires.getHours()+p):"minutes"===o.expirationUnit?o.expires.setMinutes(o.expires.getMinutes()+p):"seconds"===o.expirationUnit?o.expires.setSeconds(o.expires.getSeconds()+p):"milliseconds"===o.expirationUnit?o.expires.setMilliseconds(o.expires.getMilliseconds()+p):o.expires.setDate(o.expires.getDate()+p):o.expires.setDate(o.expires.getDate()+p)),e[0].cookie=[h(n),"=",h(r),o.expires?"; expires="+o.expires.toUTCString():"",o.path?"; path="+o.path:"",o.domain?"; domain="+o.domain:"",o.secure?"; secure":""].join("");for(a=[],f=e[0].cookie,f&&(a=f.split("; ")),i={},d=!1,s=0;s<a.length;++s)if(a[s]){if(c=a[s],u=c.indexOf("="),l=c.substring(0,u),r=m(c.substring(u+1)),angular.isUndefined(r))continue;if(void 0===n||n===l){try{i[l]=JSON.parse(r)}catch(e){i[l]=r}if(n===l)return i[l];d=!0}}return d&&void 0===n?i:void 0}return n.remove=function(e,t){var r=void 0!==n(e);return r&&(t||(t={}),t.expires=-1,n(e,"",t)),r},n}()}]),function(e,t){"use strict";function n(e,t){if(s(e)){t=t||[];for(var n=0,r=e.length;n<r;n++)t[n]=e[n]}else if(c(e)){t=t||{};for(var o in e)"$"===o.charAt(0)&&"$"===o.charAt(1)||(t[o]=e[o])}return t||e}function r(){function e(e,n){return t.extend(Object.create(e),n)}function r(e,t){var n=t.caseInsensitiveMatch,r={originalPath:e,regexp:e},o=r.keys=[];return e=e.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)(\*\?|[\?\*])?/g,function(e,t,n,r){var i="?"===r||"*?"===r?"?":null,a="*"===r||"*?"===r?"*":null;return o.push({name:n,optional:!!i}),t=t||"",(i?"":t)+"(?:"+(i?t:"")+(a&&"(.+?)"||"([^/]+)")+(i||"")+")"+(i||"")}).replace(/([\/$\*])/g,"\\$1"),r.regexp=new RegExp("^"+e+"$",n?"i":""),r}s=t.isArray,c=t.isObject;var o={};this.when=function(e,i){var a=n(i);if(t.isUndefined(a.reloadOnSearch)&&(a.reloadOnSearch=!0),t.isUndefined(a.caseInsensitiveMatch)&&(a.caseInsensitiveMatch=this.caseInsensitiveMatch),o[e]=t.extend(a,e&&r(e,a)),e){var s="/"==e[e.length-1]?e.substr(0,e.length-1):e+"/";o[s]=t.extend({redirectTo:e},r(s,a))}return this},this.caseInsensitiveMatch=!1,this.otherwise=function(e){return"string"==typeof e&&(e={redirectTo:e}),this.when(null,e),this},this.$get=["$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce",function(n,r,i,a,s,c,u){function d(e,t){var n=t.keys,r={};if(!t.regexp)return null;var o=t.regexp.exec(e);if(!o)return null;for(var i=1,a=o.length;i<a;++i){var s=n[i-1],c=o[i];s&&c&&(r[s.name]=c)}return r}function f(e){var r=C.current;b=g(),(y=b&&r&&b.$$route===r.$$route&&t.equals(b.pathParams,r.pathParams)&&!b.reloadOnSearch&&!x)||!r&&!b||n.$broadcast("$routeChangeStart",b,r).defaultPrevented&&e&&e.preventDefault()}function p(){var e=C.current,o=b;y?(e.params=o.params,t.copy(e.params,i),n.$broadcast("$routeUpdate",e)):(o||e)&&(x=!1,C.current=o,o&&o.redirectTo&&(t.isString(o.redirectTo)?r.path(v(o.redirectTo,o.params)).search(o.params).replace():r.url(o.redirectTo(o.pathParams,r.path(),r.search())).replace()),a.when(o).then(m).then(function(r){o==C.current&&(o&&(o.locals=r,t.copy(o.params,i)),n.$broadcast("$routeChangeSuccess",o,e))},function(t){o==C.current&&n.$broadcast("$routeChangeError",o,e,t)}))}function m(e){if(e){var n=t.extend({},e.resolve);t.forEach(n,function(e,r){n[r]=t.isString(e)?s.get(e):s.invoke(e,null,null,r)});var r=h(e);return t.isDefined(r)&&(n.$template=r),a.all(n)}}function h(e){var n,r;return t.isDefined(n=e.template)?t.isFunction(n)&&(n=n(e.params)):t.isDefined(r=e.templateUrl)&&(t.isFunction(r)&&(r=r(e.params)),t.isDefined(r)&&(e.loadedTemplateUrl=u.valueOf(r),n=c(r))),n}function g(){var n,i;return t.forEach(o,function(o,a){!i&&(n=d(r.path(),o))&&(i=e(o,{params:t.extend({},r.search(),n),pathParams:n}),i.$$route=o)}),i||o[null]&&e(o[null],{params:{},pathParams:{}})}function v(e,n){var r=[];return t.forEach((e||"").split(":"),function(e,t){if(0===t)r.push(e);else{var o=e.match(/(\w+)(?:[?*])?(.*)/),i=o[1];r.push(n[i]),r.push(o[2]||""),delete n[i]}}),r.join("")}var b,y,x=!1,C={routes:o,reload:function(){x=!0;var e={defaultPrevented:!1,preventDefault:function(){this.defaultPrevented=!0,x=!1}};n.$evalAsync(function(){f(e),e.defaultPrevented||p()})},updateParams:function(e){if(!this.current||!this.current.$$route)throw l("norout","Tried updating route when with no current route");e=t.extend({},this.current.params,e),r.path(v(this.current.$$route.originalPath,e)),r.search(e)}};return n.$on("$locationChangeStart",f),n.$on("$locationChangeSuccess",p),C}]}function o(){this.$get=function(){return{}}}function i(e,n,r){return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",link:function(o,i,a,s,c){function u(){p&&(r.cancel(p),p=null),d&&(d.$destroy(),d=null),f&&(p=r.leave(f),p.then(function(){p=null}),f=null)}function l(){var a=e.current&&e.current.locals,s=a&&a.$template;if(t.isDefined(s)){var l=o.$new(),p=e.current,g=c(l,function(e){r.enter(e,null,f||i).then(function(){!t.isDefined(m)||m&&!o.$eval(m)||n()}),u()});f=g,d=p.scope=l,d.$emit("$viewContentLoaded"),d.$eval(h)}else u()}var d,f,p,m=a.autoscroll,h=a.onload||"";o.$on("$routeChangeSuccess",l),l()}}}function a(e,t,n){return{restrict:"ECA",priority:-400,link:function(r,o){var i=n.current,a=i.locals;o.html(a.$template);var s=e(o.contents());if(i.controller){a.$scope=r;var c=t(i.controller,a);i.controllerAs&&(r[i.controllerAs]=c),o.data("$ngControllerController",c),o.children().data("$ngControllerController",c)}r[i.resolveAs||"$resolve"]=a,s(r)}}}var s,c,u=t.module("ngRoute",["ng"]).provider("$route",r),l=t.$$minErr("ngRoute");u.provider("$routeParams",o),u.directive("ngView",i),u.directive("ngView",a),i.$inject=["$route","$anchorScroll","$animate"],a.$inject=["$compile","$controller","$route"]}(window,window.angular),function(e){e(["jquery"],function(e){return function(){function t(e,t,n){return m({type:C.error,iconClass:h().iconClasses.error,message:e,optionsOverride:n,title:t})}function n(t,n){return t||(t=h()),v=e("#"+t.containerId),v.length?v:(n&&(v=d(t)),v)}function r(e,t,n){return m({type:C.info,iconClass:h().iconClasses.info,message:e,optionsOverride:n,title:t})}function o(e){b=e}function i(e,t,n){return m({type:C.success,iconClass:h().iconClasses.success,message:e,optionsOverride:n,title:t})}function a(e,t,n){return m({type:C.warning,iconClass:h().iconClasses.warning,message:e,optionsOverride:n,title:t})}function s(e,t){var r=h();v||n(r),l(e,r,t)||u(r)}function c(t){var r=h();if(v||n(r),t&&0===e(":focus",t).length)return void g(t);v.children().length&&v.remove()}function u(t){for(var n=v.children(),r=n.length-1;r>=0;r--)l(e(n[r]),t)}function l(t,n,r){var o=!(!r||!r.force)&&r.force;return!(!t||!o&&0!==e(":focus",t).length)&&(t[n.hideMethod]({duration:n.hideDuration,easing:n.hideEasing,complete:function(){g(t)}}),!0)}function d(t){return v=e("<div/>").attr("id",t.containerId).addClass(t.positionClass),v.appendTo(e(t.target)),v}function f(){return{tapToDismiss:!0,toastClass:"toast",containerId:"toast-container",debug:!1,showMethod:"fadeIn",showDuration:300,showEasing:"swing",onShown:void 0,hideMethod:"fadeOut",hideDuration:1e3,hideEasing:"swing",onHidden:void 0,closeMethod:!1,closeDuration:!1,closeEasing:!1,closeOnHover:!0,extendedTimeOut:1e3,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},iconClass:"toast-info",positionClass:"toast-top-right",timeOut:5e3,titleClass:"toast-title",messageClass:"toast-message",escapeHtml:!1,target:"body",closeHtml:'<button type="button">&times;</button>',closeClass:"toast-close-button",newestOnTop:!0,preventDuplicates:!1,progressBar:!1,progressClass:"toast-progress",rtl:!1}}function p(e){b&&b(e)}function m(t){function r(e){return null==e&&(e=""),e.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function o(){var e="";switch(t.iconClass){case"toast-success":case"toast-info":e="polite";break;default:e="assertive"}T.attr("aria-live",e)}function i(){t.iconClass&&T.addClass(w.toastClass).addClass($)}function a(){w.newestOnTop?v.prepend(T):v.append(T)}function s(){if(t.title){var e=t.title;w.escapeHtml&&(e=r(t.title)),S.append(e).addClass(w.titleClass),T.append(S)}}function c(){if(t.message){var e=t.message;w.escapeHtml&&(e=r(t.message)),k.append(e).addClass(w.messageClass),T.append(k)}}function u(){w.closeButton&&(M.addClass(w.closeClass).attr("role","button"),T.prepend(M))}function l(){w.progressBar&&(D.addClass(w.progressClass),T.prepend(D))}function d(){w.rtl&&T.addClass("rtl")}function f(t){var n=t&&!1!==w.closeMethod?w.closeMethod:w.hideMethod,r=t&&!1!==w.closeDuration?w.closeDuration:w.hideDuration,o=t&&!1!==w.closeEasing?w.closeEasing:w.hideEasing;if(!e(":focus",T).length||t)return clearTimeout(O.intervalId),T[n]({duration:r,easing:o,complete:function(){g(T),clearTimeout(E),w.onHidden&&"hidden"!==P.state&&w.onHidden(),P.state="hidden",P.endTime=new Date,p(P)}})}function m(){(w.timeOut>0||w.extendedTimeOut>0)&&(E=setTimeout(f,w.extendedTimeOut),O.maxHideTime=parseFloat(w.extendedTimeOut),O.hideEta=(new Date).getTime()+O.maxHideTime)}function b(){clearTimeout(E),O.hideEta=0,T.stop(!0,!0)[w.showMethod]({duration:w.showDuration,easing:w.showEasing})}function C(){var e=(O.hideEta-(new Date).getTime())/O.maxHideTime*100;D.width(e+"%")}var w=h(),$=t.iconClass||w.iconClass;if(void 0!==t.optionsOverride&&(w=e.extend(w,t.optionsOverride),$=t.optionsOverride.iconClass||$),!function(e,t){if(e.preventDuplicates){if(t.message===y)return!0;y=t.message}return!1}(w,t)){x++,v=n(w,!0);var E=null,T=e("<div/>"),S=e("<div/>"),k=e("<div/>"),D=e("<div/>"),M=e(w.closeHtml),O={intervalId:null,hideEta:null,maxHideTime:null},P={toastId:x,state:"visible",startTime:new Date,options:w,map:t};return function(){i(),s(),c(),u(),l(),d(),a(),o()}(),function(){T.hide(),T[w.showMethod]({duration:w.showDuration,easing:w.showEasing,complete:w.onShown}),w.timeOut>0&&(E=setTimeout(f,w.timeOut),O.maxHideTime=parseFloat(w.timeOut),O.hideEta=(new Date).getTime()+O.maxHideTime,w.progressBar&&(O.intervalId=setInterval(C,10)))}(),function(){w.closeOnHover&&T.hover(b,m),!w.onclick&&w.tapToDismiss&&T.click(f),w.closeButton&&M&&M.click(function(e){e.stopPropagation?e.stopPropagation():void 0!==e.cancelBubble&&!0!==e.cancelBubble&&(e.cancelBubble=!0),w.onCloseClick&&w.onCloseClick(e),f(!0)}),w.onclick&&T.click(function(e){w.onclick(e),f()})}(),p(P),w.debug&&console&&console.log(P),T}}function h(){return e.extend({},f(),w.options)}function g(e){v||(v=n()),e.is(":visible")||(e.remove(),e=null,0===v.children().length&&(v.remove(),y=void 0))}var v,b,y,x=0,C={error:"error",info:"info",success:"success",warning:"warning"},w={clear:s,remove:c,error:t,getContainer:n,info:r,options:{},subscribe:o,success:i,version:"2.1.3",warning:a};return w}()})}("function"==typeof define&&define.amd?define:function(e,t){"undefined"!=typeof module&&module.exports?module.exports=t(require("jquery")):window.toastr=t(window.jQuery)});
window.Modernizr=function(e,t,n){function r(e){g.cssText=e}function i(e,t){return r(w.join(e+";")+(t||""))}function o(e,t){return typeof e===t}function a(e,t){return!!~(""+e).indexOf(t)}function s(e,t){for(var r in e){var i=e[r];if(!a(i,"-")&&g[i]!==n)return"pfx"!==t||i}return!1}function c(e,t,r){for(var i in e){var a=t[e[i]];if(a!==n)return!1===r?e[i]:o(a,"function")?a.bind(r||t):a}return!1}function l(e,t,n){var r=e.charAt(0).toUpperCase()+e.slice(1),i=(e+" "+C.join(r+" ")+r).split(" ");return o(t,"string")||o(t,"undefined")?s(i,t):(i=(e+" "+$.join(r+" ")+r).split(" "),c(i,t,n))}var u,d,p={},f=t.documentElement,h="modernizr",m=t.createElement(h),g=m.style,v=t.createElement("input"),b=":)",y={}.toString,w=" -webkit- -moz- -o- -ms- ".split(" "),x="Webkit Moz O ms",C=x.split(" "),$=x.toLowerCase().split(" "),E={svg:"http://www.w3.org/2000/svg"},T={},S={},k={},D=[],M=D.slice,O=function(e,n,r,i){var o,a,s,c,l=t.createElement("div"),u=t.body,d=u||t.createElement("body");if(parseInt(r,10))for(;r--;)s=t.createElement("div"),s.id=i?i[r]:h+(r+1),l.appendChild(s);return o=["&#173;",'<style id="s',h,'">',e,"</style>"].join(""),l.id=h,(u?l:d).innerHTML+=o,d.appendChild(l),u||(d.style.background="",d.style.overflow="hidden",c=f.style.overflow,f.style.overflow="hidden",f.appendChild(d)),a=n(l,e),u?l.parentNode.removeChild(l):(d.parentNode.removeChild(d),f.style.overflow=c),!!a},H=function(t){var n=e.matchMedia||e.msMatchMedia;if(n)return n(t)&&n(t).matches||!1;var r;return O("@media "+t+" { #"+h+" { position: absolute; } }",function(t){r="absolute"===(e.getComputedStyle?getComputedStyle(t,null):t.currentStyle).position}),r},P=function(){function e(e,i){i=i||t.createElement(r[e]||"div"),e="on"+e;var a=e in i;return a||(i.setAttribute||(i=t.createElement("div")),i.setAttribute&&i.removeAttribute&&(i.setAttribute(e,""),a=o(i[e],"function"),o(i[e],"undefined")||(i[e]=n),i.removeAttribute(e))),i=null,a}var r={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return e}(),I={}.hasOwnProperty;d=o(I,"undefined")||o(I.call,"undefined")?function(e,t){return t in e&&o(e.constructor.prototype[t],"undefined")}:function(e,t){return I.call(e,t)},Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if("function"!=typeof t)throw new TypeError;var n=M.call(arguments,1),r=function(){if(this instanceof r){var i=function(){};i.prototype=t.prototype;var o=new i,a=t.apply(o,n.concat(M.call(arguments)));return Object(a)===a?a:o}return t.apply(e,n.concat(M.call(arguments)))};return r}),T.flexbox=function(){return l("flexWrap")},T.flexboxlegacy=function(){return l("boxDirection")},T.canvas=function(){var e=t.createElement("canvas");return!(!e.getContext||!e.getContext("2d"))},T.canvastext=function(){return!(!p.canvas||!o(t.createElement("canvas").getContext("2d").fillText,"function"))},T.webgl=function(){return!!e.WebGLRenderingContext},T.touch=function(){var n;return"ontouchstart"in e||e.DocumentTouch&&t instanceof DocumentTouch?n=!0:O(["@media (",w.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(e){n=9===e.offsetTop}),n},T.geolocation=function(){return"geolocation"in navigator},T.postmessage=function(){return!!e.postMessage},T.websqldatabase=function(){return!!e.openDatabase},T.indexedDB=function(){return!!l("indexedDB",e)},T.hashchange=function(){return P("hashchange",e)&&(t.documentMode===n||t.documentMode>7)},T.history=function(){return!(!e.history||!history.pushState)},T.draganddrop=function(){var e=t.createElement("div");return"draggable"in e||"ondragstart"in e&&"ondrop"in e},T.websockets=function(){return"WebSocket"in e||"MozWebSocket"in e},T.rgba=function(){return r("background-color:rgba(150,255,150,.5)"),a(g.backgroundColor,"rgba")},T.hsla=function(){return r("background-color:hsla(120,40%,100%,.5)"),a(g.backgroundColor,"rgba")||a(g.backgroundColor,"hsla")},T.multiplebgs=function(){return r("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(g.background)},T.backgroundsize=function(){return l("backgroundSize")},T.borderimage=function(){return l("borderImage")},T.borderradius=function(){return l("borderRadius")},T.boxshadow=function(){return l("boxShadow")},T.textshadow=function(){return""===t.createElement("div").style.textShadow},T.opacity=function(){return i("opacity:.55"),/^0.55$/.test(g.opacity)},T.cssanimations=function(){return l("animationName")},T.csscolumns=function(){return l("columnCount")},T.cssgradients=function(){var e="background-image:";return r((e+"-webkit- ".split(" ").join("gradient(linear,left top,right bottom,from(#9f9),to(white));"+e)+w.join("linear-gradient(left top,#9f9, white);"+e)).slice(0,-e.length)),a(g.backgroundImage,"gradient")},T.cssreflections=function(){return l("boxReflect")},T.csstransforms=function(){return!!l("transform")},T.csstransforms3d=function(){var e=!!l("perspective");return e&&"webkitPerspective"in f.style&&O("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(t,n){e=9===t.offsetLeft&&3===t.offsetHeight}),e},T.csstransitions=function(){return l("transition")},T.fontface=function(){var e;return O('@font-face {font-family:"font";src:url("https://")}',function(n,r){var i=t.getElementById("smodernizr"),o=i.sheet||i.styleSheet,a=o?o.cssRules&&o.cssRules[0]?o.cssRules[0].cssText:o.cssText||"":"";e=/src/i.test(a)&&0===a.indexOf(r.split(" ")[0])}),e},T.generatedcontent=function(){var e;return O(["#",h,"{font:0/0 a}#",h,':after{content:"',b,'";visibility:hidden;font:3px/1 a}'].join(""),function(t){e=t.offsetHeight>=3}),e},T.video=function(){var e=t.createElement("video"),n=!1;try{(n=!!e.canPlayType)&&(n=Boolean(n),n.ogg=e.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),n.h264=e.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),n.webm=e.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(e){}return n},T.audio=function(){var e=t.createElement("audio"),n=!1;try{(n=!!e.canPlayType)&&(n=Boolean(n),n.ogg=e.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),n.mp3=e.canPlayType("audio/mpeg;").replace(/^no$/,""),n.wav=e.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),n.m4a=(e.canPlayType("audio/x-m4a;")||e.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(e){}return n},T.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(e){return!1}},T.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(e){return!1}},T.webworkers=function(){return!!e.Worker},T.applicationcache=function(){return!!e.applicationCache},T.svg=function(){return!!t.createElementNS&&!!t.createElementNS(E.svg,"svg").createSVGRect},T.inlinesvg=function(){var e=t.createElement("div");return e.innerHTML="<svg/>",(e.firstChild&&e.firstChild.namespaceURI)===E.svg},T.smil=function(){return!!t.createElementNS&&/SVGAnimate/.test(y.call(t.createElementNS(E.svg,"animate")))},T.svgclippaths=function(){return!!t.createElementNS&&/SVGClipPath/.test(y.call(t.createElementNS(E.svg,"clipPath")))};for(var j in T)d(T,j)&&(u=j.toLowerCase(),p[u]=T[j](),D.push((p[u]?"":"no-")+u));return p.input||function(){p.input=function(n){for(var r=0,i=n.length;r<i;r++)k[n[r]]=!!(n[r]in v);return k.list&&(k.list=!(!t.createElement("datalist")||!e.HTMLDataListElement)),k}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),p.inputtypes=function(e){for(var r,i,o,a=0,s=e.length;a<s;a++)v.setAttribute("type",i=e[a]),r="text"!==v.type,r&&(v.value=b,v.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(i)&&v.style.WebkitAppearance!==n?(f.appendChild(v),o=t.defaultView,r=o.getComputedStyle&&"textfield"!==o.getComputedStyle(v,null).WebkitAppearance&&0!==v.offsetHeight,f.removeChild(v)):/^(search|tel)$/.test(i)||(r=/^(url|email)$/.test(i)?v.checkValidity&&!1===v.checkValidity():v.value!==b)),S[e[a]]=!!r;return S}("search tel url email datetime date month week time datetime-local number range color".split(" "))}(),p.addTest=function(e,t){if("object"==typeof e)for(var r in e)d(e,r)&&p.addTest(r,e[r]);else{if(e=e.toLowerCase(),p[e]!==n)return p;t="function"==typeof t?t():t,f.className+=" "+(t?"":"no-")+e,p[e]=t}return p},r(""),m=v=null,function(e,t){function n(e,t){var n=e.createElement("p"),r=e.getElementsByTagName("head")[0]||e.documentElement;return n.innerHTML="x<style>"+t+"</style>",r.insertBefore(n.lastChild,r.firstChild)}function r(){var e=v.elements;return"string"==typeof e?e.split(" "):e}function i(e){var t=g[e[h]];return t||(t={},m++,e[h]=m,g[m]=t),t}function o(e,n,r){if(n||(n=t),u)return n.createElement(e);r||(r=i(n));var o;return o=r.cache[e]?r.cache[e].cloneNode():f.test(e)?(r.cache[e]=r.createElem(e)).cloneNode():r.createElem(e),!o.canHaveChildren||p.test(e)||o.tagUrn?o:r.frag.appendChild(o)}function a(e,n){if(e||(e=t),u)return e.createDocumentFragment();n=n||i(e);for(var o=n.frag.cloneNode(),a=0,s=r(),c=s.length;a<c;a++)o.createElement(s[a]);return o}function s(e,t){t.cache||(t.cache={},t.createElem=e.createElement,t.createFrag=e.createDocumentFragment,t.frag=t.createFrag()),e.createElement=function(n){return v.shivMethods?o(n,e,t):t.createElem(n)},e.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+r().join().replace(/[\w\-]+/g,function(e){return t.createElem(e),t.frag.createElement(e),'c("'+e+'")'})+");return n}")(v,t.frag)}function c(e){e||(e=t);var r=i(e);return!v.shivCSS||l||r.hasCSS||(r.hasCSS=!!n(e,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),u||s(e,r),e}var l,u,d=e.html5||{},p=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,f=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,h="_html5shiv",m=0,g={};!function(){try{var e=t.createElement("a");e.innerHTML="<xyz></xyz>",l="hidden"in e,u=1===e.childNodes.length||function(){t.createElement("a");var e=t.createDocumentFragment();return void 0===e.cloneNode||void 0===e.createDocumentFragment||void 0===e.createElement}()}catch(e){l=!0,u=!0}}();var v={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:"3.7.0",shivCSS:!1!==d.shivCSS,supportsUnknownElements:u,shivMethods:!1!==d.shivMethods,type:"default",shivDocument:c,createElement:o,createDocumentFragment:a};e.html5=v,c(t)}(this,t),p._version="2.8.3",p._prefixes=w,p._domPrefixes=$,p._cssomPrefixes=C,p.mq=H,p.hasEvent=P,p.testProp=function(e){return s([e])},p.testAllProps=l,p.testStyles=O,p.prefixed=function(e,t,n){return t?l(e,t,n):l(e,"pfx")},f.className=f.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+" js "+D.join(" "),p}(this,this.document),angular.module("ivpusic.cookie",["ipCookie"]),angular.module("ipCookie",["ng"]).factory("ipCookie",["$document",function(e){"use strict";function t(e){try{return decodeURIComponent(e)}catch(e){}}return function(){function n(n,r,i){var o,a,s,c,l,u,d,p,f;i=i||{};var h=i.decode||t,m=i.encode||encodeURIComponent;if(void 0!==r)return r="object"==typeof r?JSON.stringify(r):String(r),"number"==typeof i.expires&&(f=i.expires,i.expires=new Date,-1===f?i.expires=new Date("Thu, 01 Jan 1970 00:00:00 GMT"):void 0!==i.expirationUnit?"hours"===i.expirationUnit?i.expires.setHours(i.expires.getHours()+f):"minutes"===i.expirationUnit?i.expires.setMinutes(i.expires.getMinutes()+f):"seconds"===i.expirationUnit?i.expires.setSeconds(i.expires.getSeconds()+f):"milliseconds"===i.expirationUnit?i.expires.setMilliseconds(i.expires.getMilliseconds()+f):i.expires.setDate(i.expires.getDate()+f):i.expires.setDate(i.expires.getDate()+f)),e[0].cookie=[m(n),"=",m(r),i.expires?"; expires="+i.expires.toUTCString():"",i.path?"; path="+i.path:"",i.domain?"; domain="+i.domain:"",i.secure?"; secure":""].join("");for(a=[],p=e[0].cookie,p&&(a=p.split("; ")),o={},d=!1,s=0;s<a.length;++s)if(a[s]){if(c=a[s],l=c.indexOf("="),u=c.substring(0,l),r=h(c.substring(l+1)),angular.isUndefined(r))continue;if(void 0===n||n===u){try{o[u]=JSON.parse(r)}catch(e){o[u]=r}if(n===u)return o[u];d=!0}}return d&&void 0===n?o:void 0}return n.remove=function(e,t){var r=void 0!==n(e);return r&&(t||(t={}),t.expires=-1,n(e,"",t)),r},n}()}]),function(e,t){"use strict";function n(e,t){if(s(e)){t=t||[];for(var n=0,r=e.length;n<r;n++)t[n]=e[n]}else if(c(e)){t=t||{};for(var i in e)"$"===i.charAt(0)&&"$"===i.charAt(1)||(t[i]=e[i])}return t||e}function r(){function e(e,n){return t.extend(Object.create(e),n)}function r(e,t){var n=t.caseInsensitiveMatch,r={originalPath:e,regexp:e},i=r.keys=[];return e=e.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)(\*\?|[\?\*])?/g,function(e,t,n,r){var o="?"===r||"*?"===r?"?":null,a="*"===r||"*?"===r?"*":null;return i.push({name:n,optional:!!o}),t=t||"",(o?"":t)+"(?:"+(o?t:"")+(a&&"(.+?)"||"([^/]+)")+(o||"")+")"+(o||"")}).replace(/([\/$\*])/g,"\\$1"),r.regexp=new RegExp("^"+e+"$",n?"i":""),r}s=t.isArray,c=t.isObject;var i={};this.when=function(e,o){var a=n(o);if(t.isUndefined(a.reloadOnSearch)&&(a.reloadOnSearch=!0),t.isUndefined(a.caseInsensitiveMatch)&&(a.caseInsensitiveMatch=this.caseInsensitiveMatch),i[e]=t.extend(a,e&&r(e,a)),e){var s="/"==e[e.length-1]?e.substr(0,e.length-1):e+"/";i[s]=t.extend({redirectTo:e},r(s,a))}return this},this.caseInsensitiveMatch=!1,this.otherwise=function(e){return"string"==typeof e&&(e={redirectTo:e}),this.when(null,e),this},this.$get=["$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce",function(n,r,o,a,s,c,l){function d(e,t){var n=t.keys,r={};if(!t.regexp)return null;var i=t.regexp.exec(e);if(!i)return null;for(var o=1,a=i.length;o<a;++o){var s=n[o-1],c=i[o];s&&c&&(r[s.name]=c)}return r}function p(e){var r=x.current;b=g(),(y=b&&r&&b.$$route===r.$$route&&t.equals(b.pathParams,r.pathParams)&&!b.reloadOnSearch&&!w)||!r&&!b||n.$broadcast("$routeChangeStart",b,r).defaultPrevented&&e&&e.preventDefault()}function f(){var e=x.current,i=b;y?(e.params=i.params,t.copy(e.params,o),n.$broadcast("$routeUpdate",e)):(i||e)&&(w=!1,x.current=i,i&&i.redirectTo&&(t.isString(i.redirectTo)?r.path(v(i.redirectTo,i.params)).search(i.params).replace():r.url(i.redirectTo(i.pathParams,r.path(),r.search())).replace()),a.when(i).then(h).then(function(r){i==x.current&&(i&&(i.locals=r,t.copy(i.params,o)),n.$broadcast("$routeChangeSuccess",i,e))},function(t){i==x.current&&n.$broadcast("$routeChangeError",i,e,t)}))}function h(e){if(e){var n=t.extend({},e.resolve);t.forEach(n,function(e,r){n[r]=t.isString(e)?s.get(e):s.invoke(e,null,null,r)});var r=m(e);return t.isDefined(r)&&(n.$template=r),a.all(n)}}function m(e){var n,r;return t.isDefined(n=e.template)?t.isFunction(n)&&(n=n(e.params)):t.isDefined(r=e.templateUrl)&&(t.isFunction(r)&&(r=r(e.params)),t.isDefined(r)&&(e.loadedTemplateUrl=l.valueOf(r),n=c(r))),n}function g(){var n,o;return t.forEach(i,function(i,a){!o&&(n=d(r.path(),i))&&(o=e(i,{params:t.extend({},r.search(),n),pathParams:n}),o.$$route=i)}),o||i[null]&&e(i[null],{params:{},pathParams:{}})}function v(e,n){var r=[];return t.forEach((e||"").split(":"),function(e,t){if(0===t)r.push(e);else{var i=e.match(/(\w+)(?:[?*])?(.*)/),o=i[1];r.push(n[o]),r.push(i[2]||""),delete n[o]}}),r.join("")}var b,y,w=!1,x={routes:i,reload:function(){w=!0;var e={defaultPrevented:!1,preventDefault:function(){this.defaultPrevented=!0,w=!1}};n.$evalAsync(function(){p(e),e.defaultPrevented||f()})},updateParams:function(e){if(!this.current||!this.current.$$route)throw u("norout","Tried updating route when with no current route");e=t.extend({},this.current.params,e),r.path(v(this.current.$$route.originalPath,e)),r.search(e)}};return n.$on("$locationChangeStart",p),n.$on("$locationChangeSuccess",f),x}]}function i(){this.$get=function(){return{}}}function o(e,n,r){return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",link:function(i,o,a,s,c){function l(){f&&(r.cancel(f),f=null),d&&(d.$destroy(),d=null),p&&(f=r.leave(p),f.then(function(){f=null}),p=null)}function u(){var a=e.current&&e.current.locals,s=a&&a.$template;if(t.isDefined(s)){var u=i.$new(),f=e.current,g=c(u,function(e){r.enter(e,null,p||o).then(function(){!t.isDefined(h)||h&&!i.$eval(h)||n()}),l()});p=g,d=f.scope=u,d.$emit("$viewContentLoaded"),d.$eval(m)}else l()}var d,p,f,h=a.autoscroll,m=a.onload||"";i.$on("$routeChangeSuccess",u),u()}}}function a(e,t,n){return{restrict:"ECA",priority:-400,link:function(r,i){var o=n.current,a=o.locals;i.html(a.$template);var s=e(i.contents());if(o.controller){a.$scope=r;var c=t(o.controller,a);o.controllerAs&&(r[o.controllerAs]=c),i.data("$ngControllerController",c),i.children().data("$ngControllerController",c)}r[o.resolveAs||"$resolve"]=a,s(r)}}}var s,c,l=t.module("ngRoute",["ng"]).provider("$route",r),u=t.$$minErr("ngRoute");l.provider("$routeParams",i),l.directive("ngView",o),l.directive("ngView",a),o.$inject=["$route","$anchorScroll","$animate"],a.$inject=["$compile","$controller","$route"]}(window,window.angular),function(e){e(["jquery"],function(e){return function(){function t(e,t,n){return h({type:x.error,iconClass:m().iconClasses.error,message:e,optionsOverride:n,title:t})}function n(t,n){return t||(t=m()),v=e("#"+t.containerId),v.length?v:(n&&(v=d(t)),v)}function r(e,t,n){return h({type:x.info,iconClass:m().iconClasses.info,message:e,optionsOverride:n,title:t})}function i(e){b=e}function o(e,t,n){return h({type:x.success,iconClass:m().iconClasses.success,message:e,optionsOverride:n,title:t})}function a(e,t,n){return h({type:x.warning,iconClass:m().iconClasses.warning,message:e,optionsOverride:n,title:t})}function s(e,t){var r=m();v||n(r),u(e,r,t)||l(r)}function c(t){var r=m();if(v||n(r),t&&0===e(":focus",t).length)return void g(t);v.children().length&&v.remove()}function l(t){for(var n=v.children(),r=n.length-1;r>=0;r--)u(e(n[r]),t)}function u(t,n,r){var i=!(!r||!r.force)&&r.force;return!(!t||!i&&0!==e(":focus",t).length)&&(t[n.hideMethod]({duration:n.hideDuration,easing:n.hideEasing,complete:function(){g(t)}}),!0)}function d(t){return v=e("<div/>").attr("id",t.containerId).addClass(t.positionClass),v.appendTo(e(t.target)),v}function p(){return{tapToDismiss:!0,toastClass:"toast",containerId:"toast-container",debug:!1,showMethod:"fadeIn",showDuration:300,showEasing:"swing",onShown:void 0,hideMethod:"fadeOut",hideDuration:1e3,hideEasing:"swing",onHidden:void 0,closeMethod:!1,closeDuration:!1,closeEasing:!1,closeOnHover:!0,extendedTimeOut:1e3,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},iconClass:"toast-info",positionClass:"toast-top-right",timeOut:5e3,titleClass:"toast-title",messageClass:"toast-message",escapeHtml:!1,target:"body",closeHtml:'<button type="button">&times;</button>',closeClass:"toast-close-button",newestOnTop:!0,preventDuplicates:!1,progressBar:!1,progressClass:"toast-progress",rtl:!1}}function f(e){b&&b(e)}function h(t){function r(e){return null==e&&(e=""),e.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function i(){var e="";switch(t.iconClass){case"toast-success":case"toast-info":e="polite";break;default:e="assertive"}T.attr("aria-live",e)}function o(){t.iconClass&&T.addClass(C.toastClass).addClass($)}function a(){C.newestOnTop?v.prepend(T):v.append(T)}function s(){if(t.title){var e=t.title;C.escapeHtml&&(e=r(t.title)),S.append(e).addClass(C.titleClass),T.append(S)}}function c(){if(t.message){var e=t.message;C.escapeHtml&&(e=r(t.message)),k.append(e).addClass(C.messageClass),T.append(k)}}function l(){C.closeButton&&(M.addClass(C.closeClass).attr("role","button"),T.prepend(M))}function u(){C.progressBar&&(D.addClass(C.progressClass),T.prepend(D))}function d(){C.rtl&&T.addClass("rtl")}function p(t){var n=t&&!1!==C.closeMethod?C.closeMethod:C.hideMethod,r=t&&!1!==C.closeDuration?C.closeDuration:C.hideDuration,i=t&&!1!==C.closeEasing?C.closeEasing:C.hideEasing;if(!e(":focus",T).length||t)return clearTimeout(O.intervalId),T[n]({duration:r,easing:i,complete:function(){g(T),clearTimeout(E),C.onHidden&&"hidden"!==H.state&&C.onHidden(),H.state="hidden",H.endTime=new Date,f(H)}})}function h(){(C.timeOut>0||C.extendedTimeOut>0)&&(E=setTimeout(p,C.extendedTimeOut),O.maxHideTime=parseFloat(C.extendedTimeOut),O.hideEta=(new Date).getTime()+O.maxHideTime)}function b(){clearTimeout(E),O.hideEta=0,T.stop(!0,!0)[C.showMethod]({duration:C.showDuration,easing:C.showEasing})}function x(){var e=(O.hideEta-(new Date).getTime())/O.maxHideTime*100;D.width(e+"%")}var C=m(),$=t.iconClass||C.iconClass;if(void 0!==t.optionsOverride&&(C=e.extend(C,t.optionsOverride),$=t.optionsOverride.iconClass||$),!function(e,t){if(e.preventDuplicates){if(t.message===y)return!0;y=t.message}return!1}(C,t)){w++,v=n(C,!0);var E=null,T=e("<div/>"),S=e("<div/>"),k=e("<div/>"),D=e("<div/>"),M=e(C.closeHtml),O={intervalId:null,hideEta:null,maxHideTime:null},H={toastId:w,state:"visible",startTime:new Date,options:C,map:t};return function(){o(),s(),c(),l(),u(),d(),a(),i()}(),function(){T.hide(),T[C.showMethod]({duration:C.showDuration,easing:C.showEasing,complete:C.onShown}),C.timeOut>0&&(E=setTimeout(p,C.timeOut),O.maxHideTime=parseFloat(C.timeOut),O.hideEta=(new Date).getTime()+O.maxHideTime,C.progressBar&&(O.intervalId=setInterval(x,10)))}(),function(){C.closeOnHover&&T.hover(b,h),!C.onclick&&C.tapToDismiss&&T.click(p),C.closeButton&&M&&M.click(function(e){e.stopPropagation?e.stopPropagation():void 0!==e.cancelBubble&&!0!==e.cancelBubble&&(e.cancelBubble=!0),C.onCloseClick&&C.onCloseClick(e),p(!0)}),C.onclick&&T.click(function(e){C.onclick(e),p()})}(),f(H),C.debug&&console&&console.log(H),T}}function m(){return e.extend({},p(),C.options)}function g(e){v||(v=n()),e.is(":visible")||(e.remove(),e=null,0===v.children().length&&(v.remove(),y=void 0))}var v,b,y,w=0,x={error:"error",info:"info",success:"success",warning:"warning"},C={clear:s,remove:c,error:t,getContainer:n,info:r,options:{},subscribe:i,success:o,version:"2.1.3",warning:a};return C}()})}("function"==typeof define&&define.amd?define:function(e,t){"undefined"!=typeof module&&module.exports?module.exports=t(require("jquery")):window.toastr=t(window.jQuery)}),function(e){e.fn.extend({slimScroll:function(n){var r=e.extend({width:"auto",height:"250px",size:"7px",color:"#000",position:"right",distance:"1px",start:"top",opacity:.4,alwaysVisible:!1,disableFadeOut:!1,railVisible:!1,railColor:"#333",railOpacity:.2,railDraggable:!0,railClass:"slimScrollRail",barClass:"slimScrollBar",wrapperClass:"slimScrollDiv",allowPageScroll:!1,wheelStep:20,touchScrollStep:200,borderRadius:"7px",railBorderRadius:"7px"},n);return this.each(function(){function i(t){if(l){t=t||window.event;var n=0;t.wheelDelta&&(n=-t.wheelDelta/120),t.detail&&(n=t.detail/3),e(t.target||t.srcTarget||t.srcElement).closest("."+r.wrapperClass).is(b.parent())&&o(n,!0),t.preventDefault&&!v&&t.preventDefault(),v||(t.returnValue=!1)}}function o(e,t,n){v=!1;var i=e,o=b.outerHeight()-w.outerHeight();t&&(i=parseInt(w.css("top"))+e*parseInt(r.wheelStep)/100*w.outerHeight(),i=Math.min(Math.max(i,0),o),i=0<e?Math.ceil(i):Math.floor(i),w.css({top:i+"px"})),m=parseInt(w.css("top"))/(b.outerHeight()-w.outerHeight()),i=m*(b[0].scrollHeight-b.outerHeight()),n&&(i=e,e=i/b[0].scrollHeight*b.outerHeight(),e=Math.min(Math.max(e,0),o),w.css({top:e+"px"})),b.scrollTop(i),b.trigger("slimscrolling",~~i),s(),c()}function a(){h=Math.max(b.outerHeight()/b[0].scrollHeight*b.outerHeight(),30),w.css({height:h+"px"});var e=h==b.outerHeight()?"none":"block";w.css({display:e})}function s(){a(),clearTimeout(p),m==~~m?(v=r.allowPageScroll,g!=m&&b.trigger("slimscroll",0==~~m?"top":"bottom")):v=!1,g=m,h>=b.outerHeight()?v=!0:(w.stop(!0,!0).fadeIn("fast"),r.railVisible&&x.stop(!0,!0).fadeIn("fast"))}function c(){r.alwaysVisible||(p=setTimeout(function(){r.disableFadeOut&&l||u||d||(w.fadeOut("slow"),x.fadeOut("slow"))},1e3))}var l,u,d,p,f,h,m,g,v=!1,b=e(this);if(b.parent().hasClass(r.wrapperClass)){var y=b.scrollTop(),w=b.closest("."+r.barClass),x=b.closest("."+r.railClass);if(a(),e.isPlainObject(n)){if("height"in n&&"auto"==n.height){b.parent().css("height","auto"),b.css("height","auto");var C=b.parent().parent().height();b.parent().css("height",C),b.css("height",C)}if("scrollTo"in n)y=parseInt(r.scrollTo);else if("scrollBy"in n)y+=parseInt(r.scrollBy);else if("destroy"in n)return w.remove(),x.remove(),void b.unwrap();o(y,!1,!0)}}else if(!(e.isPlainObject(n)&&"destroy"in n)){r.height="auto"==r.height?b.parent().height():r.height,y=e("<div></div>").addClass(r.wrapperClass).css({position:"relative",overflow:"hidden",width:r.width,height:r.height}),b.css({overflow:"hidden",width:r.width,height:r.height});var x=e("<div></div>").addClass(r.railClass).css({width:r.size,height:"100%",position:"absolute",top:0,display:r.alwaysVisible&&r.railVisible?"block":"none","border-radius":r.railBorderRadius,background:r.railColor,opacity:r.railOpacity,zIndex:90}),w=e("<div></div>").addClass(r.barClass).css({background:r.color,width:r.size,position:"absolute",top:0,opacity:r.opacity,display:r.alwaysVisible?"block":"none","border-radius":r.borderRadius,BorderRadius:r.borderRadius,MozBorderRadius:r.borderRadius,WebkitBorderRadius:r.borderRadius,zIndex:99}),C="right"==r.position?{right:r.distance}:{left:r.distance};x.css(C),w.css(C),b.wrap(y),b.parent().append(w),b.parent().append(x),r.railDraggable&&w.bind("mousedown",function(n){var r=e(document);return d=!0,t=parseFloat(w.css("top")),pageY=n.pageY,r.bind("mousemove.slimscroll",function(e){currTop=t+e.pageY-pageY,w.css("top",currTop),o(0,w.position().top,!1)}),r.bind("mouseup.slimscroll",function(e){d=!1,c(),r.unbind(".slimscroll")}),!1}).bind("selectstart.slimscroll",function(e){return e.stopPropagation(),e.preventDefault(),!1}),x.hover(function(){s()},function(){c()}),w.hover(function(){u=!0},function(){u=!1}),b.hover(function(){l=!0,s(),c()},function(){l=!1,c()}),b.bind("touchstart",function(e,t){e.originalEvent.touches.length&&(f=e.originalEvent.touches[0].pageY)}),b.bind("touchmove",function(e){v||e.originalEvent.preventDefault(),e.originalEvent.touches.length&&(o((f-e.originalEvent.touches[0].pageY)/r.touchScrollStep,!0),f=e.originalEvent.touches[0].pageY)}),a(),"bottom"===r.start?(w.css({top:b.outerHeight()-w.outerHeight()}),o(0,!0)):"top"!==r.start&&(o(e(r.start).position().top,null,!0),r.alwaysVisible||w.hide()),window.addEventListener?(this.addEventListener("DOMMouseScroll",i,!1),this.addEventListener("mousewheel",i,!1)):document.attachEvent("onmousewheel",i)}}),this}}),e.fn.extend({slimscroll:e.fn.slimScroll})}(jQuery);

@@ -7,19 +7,11 @@ (function ($, angular, underscore, window, document, undefined) {

function ($http, $q) {
var prefix = function (url) {
var prefix = function (url) {
return '/api/v1/' + url;
};
};
return {
get: function (path, model) {
return $http({
method: 'get',
data: model || {},
url: prefix(path || '')
});
return $http.get(prefix(path || ''), model || {});
},
post: function (path, model) {
return $http({
method: 'get',
data: model || {},
url: prefix(path || '')
});
return $http.post(prefix(path || ''), model || {});
}

@@ -123,2 +115,23 @@ };

'use strict';
angular.module('frontend.services').factory('identityService', [
'ipCookie',
function ($cookie) {
return {
setToken: function (userId, token) {
$cookie('userId', userId);
$cookie('token', token);
},
clearToken: function () {
$cookie.remove('userId');
$cookie.remove('token');
},
getToken: function () {
return $cookie('token');
}
};
}
]);
}(jQuery, angular, _, window, document));
(function ($, angular, underscore, window, document, undefined) {
'use strict';
angular.module('frontend.services').factory('layoutService', [

@@ -125,0 +138,0 @@ '$rootScope',

@@ -1,1 +0,1 @@

!function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("apiService",["$http","$q",function(t,n){var e=function(t){return"/api/v1/"+t};return{get:function(n,r){return t({method:"get",data:r||{},url:e(n||"")})},post:function(n,r){return t({method:"get",data:r||{},url:e(n||"")})}}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").run(["$rootScope","appWaitingService",function(t,n){t.$on("$routeChangeStart",function(){n.start()})}]).factory("appWaitingService",["$rootScope",function(t){return{stop:function(){t.appWaiting=!1},start:function(){t.appWaiting=!0}}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("commonService",["$compile","$rootScope","$timeout","$interval","$location","$q","cultureService","translateService","operationResult","uuid","layoutService",function(t,n,e,r,u,o,i,c,a,f,l){return{$compile:t,$rootScope:n,$timeout:e,$interval:r,$location:u,$q:o,culture:i,translate:c,OperationResult:a,uuid:f,layout:l}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("cultureService",[function(){return{lang:u.getElementsByTagName("html")[0].getAttribute("lang"),rtl:"rtl"===u.getElementsByTagName("html")[0].getAttribute("dir")}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("formService",["$q",function(t){return{validate:function(){return t(function(t,n){t(!0)})},getModel:function(n){return t(function(t,n){t({})})},setModel:function(n,e){return t(function(t,n){t()})}}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("layoutService",["$rootScope",function(t){var n={};return Object.defineProperty(n,"bodyClass",{get:function(){return t.layout||(t.layout={}),t.layout.bodyClass},set:function(n){t.layout||(t.layout={}),t.layout.bodyClass=n}}),n}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("notificationService",[function(){return{error:function(t){},success:function(t){}}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("translateService",[function(){return function(t){return r.achasoft.frontend.i18n[t]||t}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("cultured_date",function(){return function(t){return t}})}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("moment",function(){return function(t){return t}})}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("range",[function(){return function(t,n,e){e||(e=n,n=0);for(var r=n;r<e;r++)t.push(r);return t}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("translate",["translateService",function(t){return function(n){return t(n)}}]),n.module("frontend.filters").filter("textOrTranslate",["translateService",function(t){return function(n,e){return e?t(e):n||""}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("to_trusted_html",["$sce",function(t){return function(n){return t.trustAsHtml(n)}}])}(jQuery,angular,_,window,document);
!function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("apiService",["$http","$q",function(t,n){var e=function(t){return"/api/v1/"+t};return{get:function(n,r){return t.get(e(n||""),r||{})},post:function(n,r){return t.post(e(n||""),r||{})}}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").run(["$rootScope","appWaitingService",function(t,n){t.$on("$routeChangeStart",function(){n.start()})}]).factory("appWaitingService",["$rootScope",function(t){return{stop:function(){t.appWaiting=!1},start:function(){t.appWaiting=!0}}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("commonService",["$compile","$rootScope","$timeout","$interval","$location","$q","cultureService","translateService","operationResult","uuid","layoutService",function(t,n,e,r,u,o,i,c,a,f,s){return{$compile:t,$rootScope:n,$timeout:e,$interval:r,$location:u,$q:o,culture:i,translate:c,OperationResult:a,uuid:f,layout:s}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("cultureService",[function(){return{lang:u.getElementsByTagName("html")[0].getAttribute("lang"),rtl:"rtl"===u.getElementsByTagName("html")[0].getAttribute("dir")}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("formService",["$q",function(t){return{validate:function(){return t(function(t,n){t(!0)})},getModel:function(n){return t(function(t,n){t({})})},setModel:function(n,e){return t(function(t,n){t()})}}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("identityService",["ipCookie",function(t){return{setToken:function(n,e){t("userId",n),t("token",e)},clearToken:function(){t.remove("userId"),t.remove("token")},getToken:function(){return t("token")}}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("layoutService",["$rootScope",function(t){var n={};return Object.defineProperty(n,"bodyClass",{get:function(){return t.layout||(t.layout={}),t.layout.bodyClass},set:function(n){t.layout||(t.layout={}),t.layout.bodyClass=n}}),n}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("notificationService",[function(){return{error:function(t){},success:function(t){}}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.services").factory("translateService",[function(){return function(t){return r.achasoft.frontend.i18n[t]||t}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("cultured_date",function(){return function(t){return t}})}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("moment",function(){return function(t){return t}})}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("range",[function(){return function(t,n,e){e||(e=n,n=0);for(var r=n;r<e;r++)t.push(r);return t}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("translate",["translateService",function(t){return function(n){return t(n)}}]),n.module("frontend.filters").filter("textOrTranslate",["translateService",function(t){return function(n,e){return e?t(e):n||""}}])}(jQuery,angular,_,window,document),function(t,n,e,r,u,o){"use strict";n.module("frontend.filters").filter("to_trusted_html",["$sce",function(t){return function(n){return t.trustAsHtml(n)}}])}(jQuery,angular,_,window,document);

@@ -9,61 +9,61 @@ ;(function(){

$templateCache.put('/templates/framework/directives/accordion/template.html', '<div ng-show=visible class="af-accordion accordion panel-group {{::cssClass}}" role=tablist><div ng-repeat="step in steps" class="panel panel-default"><div class=panel-heading role=tab><div class=panel-title><a role=button href=javascript:void(0) data-toggle=collapse ng-click=vm.onPick(step) class="{{step !== model?\'collapsed\':\'\'}}">&nbsp;{{$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</a></div></div><div class="panel-collapse {{step !== model?\'collapse\':\'\'}}" role=tabpanel><div class=panel-body ng-bind-html=step.content|to_trusted_html></div></div></div></div>');
$templateCache.put('/templates/framework/directives/accordion/template.html', '<div ng-show=visible class="af-accordion af-component accordion panel-group {{::cssClass}}" role=tablist><div ng-repeat="step in steps" class="panel panel-default"><div class=panel-heading role=tab><div class=panel-title><a role=button href=javascript:void(0) data-toggle=collapse ng-click=vm.onPick(step) class="{{step !== model?\'collapsed\':\'\'}}">&nbsp;{{$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</a></div></div><div class="panel-collapse {{step !== model?\'collapse\':\'\'}}" role=tabpanel><div class=panel-body ng-bind-html=step.content|to_trusted_html></div></div></div></div>');
$templateCache.put('/templates/framework/directives/calendar/template.html', '<div class=af-calendar>calendar</div>');
$templateCache.put('/templates/framework/directives/calendar/template.html', '<div class="af-calendar af-component">calendar</div>');
$templateCache.put('/templates/framework/directives/captcha/template.html', '<div class=af-captcha><input type=text ng-model=vm.value ng-readonly=vm.waiting> <img ng-src={{vm.image}}> <button ng-disabled=vm.waiting ng-click=vm.refresh()><i class="fa fa-refresh"></i></button></div>');
$templateCache.put('/templates/framework/directives/captcha/template.html', '<div class="af-captcha af-component"><input type=text ng-model=model.value number-only maxlength=4 ng-readonly=vm.waiting> <img width=80 height=30 ng-src={{vm.image}}> <button ng-disabled=vm.waiting ng-click=vm.refresh()><i class="fa fa-refresh"></i></button></div>');
$templateCache.put('/templates/framework/directives/checkbox/template.html', '<div ng-show=visible class="af-checkbox checkbox {{::cssClass}}" ng-click=vm.toggle($event)><label><input ng-disabled=disabled type=checkbox ng-model=model ng-checked="model===true"> <span class=text>{{::label|textOrTranslate:labelTranslate}}</span></label></div>');
$templateCache.put('/templates/framework/directives/checkbox/template.html', '<div ng-show=visible class="af-checkbox af-component checkbox {{::cssClass}}" ng-click=vm.toggle($event)><label><input ng-disabled=disabled type=checkbox ng-model=model ng-checked="model===true"> <span class=text>{{::label|textOrTranslate:labelTranslate}}</span></label></div>');
$templateCache.put('/templates/framework/directives/combobox/template.html', '<div class=af-combobox>combobox</div>');
$templateCache.put('/templates/framework/directives/combobox/template.html', '<div class="af-combobox af-component">combobox</div>');
$templateCache.put('/templates/framework/directives/date-picker/template.html', '<div class=af-date-picker>date-picker</div>');
$templateCache.put('/templates/framework/directives/date-picker/template.html', '<div class="af-date-picker af-component">date-picker</div>');
$templateCache.put('/templates/framework/directives/dropdown/template.html', '<div class=af-dropdown>dropdown</div>');
$templateCache.put('/templates/framework/directives/dropdown/template.html', '<div ng-show=visible ng-click=vm.prevent($event) class="af-dropdown af-component dropdown {{vm.plate?\'open\':\'\'}} {{::cssClass}}"><button class="btn btn-default dropdown-toggle" ng-disabled=disabled||vm.waiting type=button ng-click=vm.toggle()>&nbsp;{{vm.getText()}} <span class=caret></span></button><ul ng-if=vm.plate class=dropdown-menu><li ng-if=::!item.separator class="{{item[valueField] === model ? \'active\' : \'\'}}" ng-repeat-start="item in items" ng-click=vm.onPick(item)><a href=javascript:void(0)>{{::item[textField]}}</a></li><li ng-repeat-end ng-if=::item.separator role=separator class=divider></li></ul></div>');
$templateCache.put('/templates/framework/directives/editor/template.html', '<div class=af-editor>editor</div>');
$templateCache.put('/templates/framework/directives/editor/template.html', '<div class="af-editor af-component">editor</div>');
$templateCache.put('/templates/framework/directives/file-manager/template.html', '<div ng-show=visible class="af-file-manager {{::cssClass}}"></div>');
$templateCache.put('/templates/framework/directives/file-manager/template.html', '<div ng-show=visible class="af-file-manager noselect af-component {{::cssClass}}"><div class="meta-container clearfix"><div class=info><i class="af-icon af-icon-binders_folder"></i> <span>AchaPlorer</span></div><div class=actions><div class="af-drop-menu af-component"><a class=drop-handler href=javascript:void(0)><i class="af-icon af-icon-settings_3"></i> <span class=menu-title>Administrator</span> <i class="fa fa-caret-down"></i><ul class=menu-items><li><div><i class="af-icon af-icon-settings"></i> <span class=menu-item-title>User settings</span></div></li><li><div><i class="af-icon af-icon-settings_2"></i> <span class=menu-item-title>Administration</span></div></li><li class=separator></li><li><div><i class="af-icon af-icon-exit"></i> <span class=menu-item-title>logout</span></div></li></ul></a></div></div></div><div class=inner-container><ribbon></ribbon><div class="af-navigation-bar af-component clearfix"><div class="path-container clearfix"><div class=parent-button-container><a href=javascript:void(0)><i class="af-icon af-icon-hdd"></i></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i></div></div><div class="path-inner-container slide" style="width: 1610px;"><div class="slide-handler left-slide-handler"><i class="fa fa-chevron-left"></i></div><div class="slide-handler right-slide-handler"><i class="fa fa-chevron-right"></i></div><ul class=root-folders style="left: 0px; width: 1627px;"><li class="root-folder open"><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i><ul class=sub-folders style="display: none;"><li><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a></li><li><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a></li><li><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a></li><li><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a></li></ul></div></li><li class=root-folder><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i></div></li><li class=root-folder><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i></div></li><li class=root-folder><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i></div></li></ul></div><div class=refresh-button-container><button><i class="af-icon af-icon-refresh"></i></button></div></div><div class=search-container><div class="input-group clearfix"><input type=text placeholder=Search....><div class=prefix><button><i class="af-icon af-icon-search"></i></button></div></div></div></div></div><div class="af-split-panel af-component clearfix"><div class="panel folder-explorer-panel fixed"><tree></tree></div><div class=panel-handler><div class=panel-handler-button><button><i class="fa fa-caret-left"></i></button></div></div><div class="panel file-explorer-panel"><div class="af-file-explorer-preview af-component large"><div class="clearfix details-tape"><div class="details name"><span class=details-text>Name</span> <i class="af-icon af-icon-chevron_up"></i><div class=show-settings><i class="af-icon af-icon-chevron_down"></i><ul class=details-menu><li><a href=javascript:void(0)><i></i> <span>Sort Ascending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Sort Descending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Columns</span> <i class="af-icon af-icon-chevron_right"></i></a><ul><li><a href=javascript:void(0)><i></i> <span>Date modified</span></a></li><li><a href=javascript:void(0)><i></i> <span>Type</span></a></li><li><a href=javascript:void(0)><i></i> <span>size</span></a></li></ul></li><li class=separator></li><li></li></ul></div></div><div class="details date-modified"><span class=details-text>Date modified</span><div class=show-settings><i class="af-icon af-icon-chevron_down"></i><ul class=details-menu><li><a href=javascript:void(0)><i></i> <span>Sort Ascending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Sort Descending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Columns</span> <i class="af-icon af-icon-chevron_right"></i></a><ul><li><a href=javascript:void(0)><i></i> <span>Date modified</span></a></li><li><a href=javascript:void(0)><i></i> <span>Type</span></a></li><li><a href=javascript:void(0)><i></i> <span>size</span></a></li></ul></li><li class=separator></li><li></li></ul></div></div><div class="details type"><span class=details-text>Type</span><div class=show-settings><i class="af-icon af-icon-chevron_down"></i><ul class=details-menu><li><a href=javascript:void(0)><i></i> <span>Sort Ascending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Sort Descending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Columns</span> <i class="af-icon af-icon-chevron_right"></i></a><ul><li><a href=javascript:void(0)><i></i> <span>Date modified</span></a></li><li><a href=javascript:void(0)><i></i> <span>Type</span></a></li><li><a href=javascript:void(0)><i></i> <span>size</span></a></li></ul></li><li class=separator></li><li></li></ul></div></div><div class="details size"><span class=details-text>Size</span><div class=show-settings><i class="af-icon af-icon-chevron_down"></i><ul class=details-menu><li><a href=javascript:void(0)><i></i> <span>Sort Ascending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Sort Descending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Columns</span> <i class="af-icon af-icon-chevron_right"></i></a><ul><li><a href=javascript:void(0)><i></i> <span>Date modified</span></a></li><li><a href=javascript:void(0)><i></i> <span>Type</span></a></li><li><a href=javascript:void(0)><i></i> <span>size</span></a></li></ul></li><li class=separator></li><li></li></ul></div></div></div><ul class=navid><li class="clearfix folder"><div class="details name folder-item"><i class="af-icon-50 af-icon-folder"></i> <span>Folder Name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File Folder</span> <span class="details size"></span></li><li class="clearfix folder"><div class="details name folder-item"><i class="af-icon-50 af-icon-folder"></i> <span>Folder Name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File Folder</span> <span class="details size"></span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-file"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-3fr"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-zip"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-aac"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-c_"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-c__"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-bas"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-cbr"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-cbz"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-db2"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-js"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-json"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-mp3"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-mpg"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-pdf"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-pdf_2"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-kml"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-kmz"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li></ul></div></div></div></div>');
$templateCache.put('/templates/framework/directives/file-picker/template.html', '<div class=af-file-picker>file-picker</div>');
$templateCache.put('/templates/framework/directives/file-picker/template.html', '<div class="af-file-picker af-component">file-picker</div>');
$templateCache.put('/templates/framework/directives/file-picker-server/template.html', '<div ng-show=visible class="af-file-picker-server {{::cssClass}}"></div>');
$templateCache.put('/templates/framework/directives/file-picker-server/template.html', '<div ng-show=visible class="af-file-picker-server af-component {{::cssClass}}"></div>');
$templateCache.put('/templates/framework/directives/form-elements/template.html', '<div class=af-form-elements>form-elements</div>');
$templateCache.put('/templates/framework/directives/form-elements/template.html', '<div class="af-form-elements af-component">form-elements</div>');
$templateCache.put('/templates/framework/directives/grid-view/template.html', '<div class=af-grid-view>grid-view</div>');
$templateCache.put('/templates/framework/directives/grid-view/template.html', '<div class="af-grid-view af-component">grid-view</div>');
$templateCache.put('/templates/framework/directives/modal/template.html', '<div class=af-modal>modal</div>');
$templateCache.put('/templates/framework/directives/modal/template.html', '<div class="af-modal af-component">modal</div>');
$templateCache.put('/templates/framework/directives/multi-column-dropdown/template.html', '<div class=af-multi-column-dropdown>multi-column-dropdown</div>');
$templateCache.put('/templates/framework/directives/multi-column-dropdown/template.html', '<div class="af-multi-column-dropdown af-component">multi-column-dropdown</div>');
$templateCache.put('/templates/framework/directives/multi-select/template.html', '<div ng-show=visible class=af-multi-select dir=ltr ng-click=vm.prevent($event)><div style="width: 100%" class="select2 select2-container select2-container--default select2-container--below {{vm.plate?\'select2-container--open\':\'\'}}"><div ng-click=vm.togglePlate() class=selection><div class="select2-selection select2-selection--multiple" role=combobox aria-autocomplete=list aria-haspopup=true aria-expanded=true tabindex=0 aria-owns=select2-e2-results><ul class=select2-selection__rendered><li ng-repeat="item in model" class=select2-selection__choice title={{::item[textField]}}><span ng-click=vm.onDelete($event,item) class=select2-selection__choice__remove role=presentation>×</span> {{::item[textField]}}</li></ul></div></div><span class=dropdown-wrapper aria-hidden=true></span></div><div ng-if=vm.plate show-panel="{width: width, height: panelHeight}" class="select2-container select2-container--default select2-container--open"><span class="select2-dropdown select2-dropdown--below"><span class=select2-results><ul class=select2-results__options role=tree aria-multiselectable=true id=select2-e2-results aria-expanded=true aria-hidden=false><li ng-repeat="item in items" ng-click="vm.onAdd($event, item)" class=select2-results__option role=treeitem aria-selected="{{model.indexOf(item) !== -1}}">{{::item[textField]}}</li></ul></span></span></div></div>');
$templateCache.put('/templates/framework/directives/multi-select/template.html', '<div ng-show=visible class="af-multi-select af-component" dir=ltr ng-click=vm.prevent($event)><div style="width: 100%" class="select2 select2-container select2-container--default select2-container--below {{vm.plate?\'select2-container--open\':\'\'}}"><div ng-click=vm.togglePlate() class=selection><div class="select2-selection select2-selection--multiple" role=combobox aria-autocomplete=list aria-haspopup=true aria-expanded=true tabindex=0 aria-owns=select2-e2-results><ul class=select2-selection__rendered><li ng-repeat="item in model" class=select2-selection__choice title={{::item[textField]}}><span ng-click=vm.onDelete($event,item) class=select2-selection__choice__remove role=presentation>×</span> {{::item[textField]}}</li></ul></div></div><span class=dropdown-wrapper aria-hidden=true></span></div><div ng-if=vm.plate show-panel="{width: width, height: panelHeight}" class="select2-container select2-container--default select2-container--open"><span class="select2-dropdown select2-dropdown--below"><span class=select2-results><ul class=select2-results__options role=tree aria-multiselectable=true id=select2-e2-results aria-expanded=true aria-hidden=false><li ng-repeat="item in items" ng-click="vm.onAdd($event, item)" class=select2-results__option role=treeitem aria-selected="{{model.indexOf(item) !== -1}}">{{::item[textField]}}</li></ul></span></span></div></div>');
$templateCache.put('/templates/framework/directives/numbox/template.html', '<div ng-show=visible class="af-numbox spinbox {{::cssClass}}"><input type=text ng-disabled=disabled ng-readonly=readonly number-only ng-model=model class="form-control input-mini spinbox-input"><div class="spinbox-buttons btn-group btn-group-vertical"><button type=button ng-click=vm.increase() ng-disabled=disabled class="btn btn-default spinbox-up btn-xs"><span class=pe-7s-angle-up></span> <span class=sr-only>Increase</span></button> <button type=button ng-click=vm.decrease() ng-disabled=disabled class="btn btn-default spinbox-down btn-xs"><span class=pe-7s-angle-down></span> <span class=sr-only>Decrease</span></button></div></div>');
$templateCache.put('/templates/framework/directives/numbox/template.html', '<div ng-show=visible class="af-numbox af-component spinbox {{::cssClass}}"><input type=text ng-disabled=disabled ng-readonly=readonly number-only ng-model=model class="form-control input-mini spinbox-input"><div class="spinbox-buttons btn-group btn-group-vertical"><button type=button ng-click=vm.increase() ng-disabled=disabled class="btn btn-default spinbox-up btn-xs"><span class=pe-7s-angle-up></span> <span class=sr-only>Increase</span></button> <button type=button ng-click=vm.decrease() ng-disabled=disabled class="btn btn-default spinbox-down btn-xs"><span class=pe-7s-angle-down></span> <span class=sr-only>Decrease</span></button></div></div>');
$templateCache.put('/templates/framework/directives/password/template.html', '<div ng-show=visible class="af-password {{disabled?\'disabled\':\'\'}} form-group {{::cssClass}}"><div ng-if=::prependIcon class=prepend-icon><input type=password class="form-control input-lg" ng-model=model ng-disabled=disabled ng-readonly=readonly placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::prependIcon}}></i></div><div ng-if=::appendIcon class=append-icon><input type=password class="form-control input-lg" ng-model=model ng-readonly=readonly ng-disabled=disabled placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::appendIcon}}></i></div><label ng-if=::label>{{::label}}</label> <label ng-if=::labelTranslate>{{::labelTranslate|translate}}</label> <input ng-if=::!(prependIcon||appendIcon) ng-model=model ng-readonly=readonly ng-disabled=disabled type=password class="form-control input-lg" placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}></div>');
$templateCache.put('/templates/framework/directives/password/template.html', '<div ng-show=visible class="af-password af-component {{disabled?\'disabled\':\'\'}} form-group {{::cssClass}}"><div ng-if=::prependIcon class=prepend-icon><input type=password class="form-control input-lg" ng-model=model ng-disabled=disabled ng-readonly=readonly placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::prependIcon}}></i></div><div ng-if=::appendIcon class=append-icon><input type=password class="form-control input-lg" ng-model=model ng-readonly=readonly ng-disabled=disabled placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::appendIcon}}></i></div><label ng-if=::label>{{::label}}</label> <label ng-if=::labelTranslate>{{::labelTranslate|translate}}</label> <input ng-if=::!(prependIcon||appendIcon) ng-model=model ng-readonly=readonly ng-disabled=disabled type=password class="form-control input-lg" placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}></div>');
$templateCache.put('/templates/framework/directives/progressbar/template.html', '<div ng-show=visible class="progress {{::cssClass}} {{::(border?\'progress-bordered\':\'\')}}"><div class="progress-bar progress-bar-primary" role=progressbar ng-style="{width: model + \'%\'}"><span class=sr-only>{{model}}% Complete (success)</span></div></div>');
$templateCache.put('/templates/framework/directives/progressbar/template.html', '<div ng-show=visible class="progress af-component {{::cssClass}} {{::(border?\'progress-bordered\':\'\')}}"><div class="progress-bar progress-bar-primary" role=progressbar ng-style="{width: model + \'%\'}"><span class=sr-only>{{model}}% Complete (success)</span></div></div>');
$templateCache.put('/templates/framework/directives/radio/template.html', '<div ng-show=visible class="af-radio form-group {{::cssClass}}"><div ng-repeat="radio in items" ng-click=vm.onPick(radio) class="radio {{::inline?\'radio-inline\':\'\'}}"><label><input type=radio ng-checked="model === radio[valueField]"> <span class=text>{{::radio[textField]}}</span></label></div></div>');
$templateCache.put('/templates/framework/directives/radio/template.html', '<div ng-show=visible class="af-radio af-component form-group {{::cssClass}}"><div ng-repeat="radio in items" ng-click=vm.onPick(radio) class="radio {{::inline?\'radio-inline\':\'\'}}"><label><input type=radio ng-checked="model === radio[valueField]"> <span class=text>{{::radio[textField]}}</span></label></div></div>');
$templateCache.put('/templates/framework/directives/ribbon/template.html', '<div class=af-ribbon>ribbon</div>');
$templateCache.put('/templates/framework/directives/ribbon/template.html', '<div class="af-ribbon af-component"><div class=tabs-container><div class=tabs-header><ul><li class=active><a data-tab=1 href=javascript:void(0)><i class="af-icon af-icon-dossier_folder"></i> <span>Home</span></a></li><li><a data-tab=2 href=javascript:void(0)><i class="af-icon af-icon-columns"></i> <span>View</span></a></li></ul></div><div class=tabs-content><div class="slide-handler left-slide-handler"><i class="fa fa-chevron-left"></i></div><div class="slide-handler right-slide-handler"><i class="fa fa-chevron-right"></i></div><div class="tab-content clearfix active" style="left: 0px; width: 1910px;"><div class=section><div class="section-content clipboard"><div class="button btn-copy"><button><i class="af-icon af-icon-copy"></i> <span>Copy</span></button></div><div class="button btn-paste"><button><i class="af-icon af-icon-paste"></i> <span>Paste</span></button></div><div class="button btn-cut"><button><i class="af-icon af-icon-cut"></i> <span>Cut</span></button></div></div><div class=section-label>Clipboard</div></div><div class=section><div class="section-content organize"><div class="button btn-delete"><button><i class="af-icon af-icon-delete"></i> <span>Delete</span></button></div><div class="button btn-rename"><button><i class="af-icon af-icon-rename"></i> <span>Rename</span></button></div></div><div class=section-label>Organize</div></div><div class=section><div class="section-content new"><div class="button btn-new-folder"><button><i class="af-icon af-icon-new-folder"></i> <span>New Folder</span></button></div></div><div class=section-label>New</div></div><div class=section><div class="section-content transfer"><div class="button btn-download"><button><i class="af-icon af-icon-download"></i> <span>Download</span></button></div><div class="button btn-upload"><button><i class="af-icon af-icon-upload"></i> <span>Upload</span></button></div></div><div class=section-label>Transfer</div></div><div class=section><div class="section-content open"><div class="button btn-open"><button><i class="af-icon af-icon-open"></i> <span>Open</span></button></div><div class="button btn-preview"><button><i class="af-icon af-icon-preview"></i> <span>Preview</span></button></div></div><div class=section-label>Open</div></div><div class=section><div class="section-content compression"><div class="button btn-add-to-zip"><button><i class="af-icon af-icon-archive"></i> <span>Add top zip</span></button></div><div class="af-drop-menu drop-button af-component btn-extract"><a class=drop-handler href=javascript:void(0)><i class="af-icon af-icon-open_archive"></i> <span>Extract all</span> <i class="fa fa-caret-down"></i><ul class=menu-items><li><div><i class="af-icon af-icon-file"></i> <span class=menu-item-title>Extract all here...</span></div></li><li><div><i class="af-icon af-icon-folder"></i> <span class=menu-item-title>Extract in separate folders</span></div></li></ul></a></div></div><div class=section-label>Compression</div></div><div class=section><div class="section-content share"><div class="button inline btn-public-link"><button><i class="af-icon af-icon-add_link"></i> <span>Create public link</span></button></div><div class="button inline btn-manage-public-link"><button><i class="af-icon af-icon-manage_link"></i> <span>Manage public links</span></button></div></div><div class=section-label>Share</div></div><div class=section><div class="section-content select"><div class="button inline btn-select-all"><button class=vw-select-all-btn><i class="af-icon af-icon-select_all"></i> <span>Select all</span></button></div><div class="button inline btn-select-none"><button class=vw-select-none-btn><i class="af-icon af-icon-deselect_all"></i> <span>Select none</span></button></div><div class="button inline btn-select-invert"><button class=vw-invert-selection-btn><i class="af-icon af-icon-invert_selection"></i> <span>invert selection</span></button></div></div><div class=section-label>Select</div></div></div><div class="tab-content clearfix"><div class=section><div class="section-content panes"><div class="button toggle-button active btn-navigatio"><button><i class="af-icon af-icon-close_pane_ltr"></i> <span>Navigation pane</span></button></div></div><div class=section-label>Panes</div></div><div class=section><div class="section-content layout"><div class=section-content-column><div class="button toggle-button inline btn-ex-icon"><button class=vw-x-large-btn><i class="af-icon af-icon-xlarge_icons"></i> <span>Extra large icons</span></button></div><div class="button toggle-button inline btn-m-icon"><button class=vw-medium-btn><i class="af-icon af-icon-medium_icons"></i> <span>Medium icons</span></button></div><div class="button toggle-button inline btn-d-icon"><button class=vw-details-btn><i class="af-icon af-icon-details_icons"></i> <span>Details icons</span></button></div></div><div class=section-content-column><div class="button toggle-button inline active btn-l-icon"><button class=vw-large-btn><i class="af-icon af-icon-large_icons"></i> <span>Large icons</span></button></div><div class="button toggle-button inline btn-s-icon"><button class=vw-small-btn><i class="af-icon af-icon-small_icons"></i> <span>Small icons</span></button></div><div class="button toggle-button inline btn-t-icon"><button class=vw-tiles-btn><i class="af-icon af-icon-tiles_icons"></i> <span>Tiles</span></button></div></div></div><div class=section-label>Layout</div></div></div></div></div></div>');
$templateCache.put('/templates/framework/directives/slider/template.html', '<div class=af-slider>slider</div>');
$templateCache.put('/templates/framework/directives/slider/template.html', '<div class="af-slider af-component">slider</div>');
$templateCache.put('/templates/framework/directives/switch/template.html', '<label ng-show=visible class="af-switch {{::cssClass}}" ng-click=vm.toggle($event)><input ng-disabled=disabled class=switch ng-model=model ng-checked="model===true" type=checkbox> <span class=text></span></label>');
$templateCache.put('/templates/framework/directives/switch/template.html', '<label ng-show=visible class="af-switch af-component {{::cssClass}}" ng-click=vm.toggle($event)><input ng-disabled=disabled class=switch ng-model=model ng-checked="model===true" type=checkbox> <span class=text></span></label>');
$templateCache.put('/templates/framework/directives/tabs/template.html', '<div ng-show=visible class="af-tabs {{::cssClass}} {{:: position === \'right\'? \'tabs-right\':\'\'}} {{:: position === \'left\'? \'tabs-left\':\'\'}}"><ul ng-if="position !== \'bottom\'" class="nav nav-tabs" role=tablist><li role=presentation ng-repeat="step in steps" class="{{step.disabled ?\'disabled\':\'\'}} {{::step.cssClass}} {{step === model ? \'active\' : \'\'}}"><a href=javascript:void(0) role=tab ng-click=vm.onPick(step) data-toggle=tab><i ng-if=::step.icon class={{::$eval(step.icon)}}></i> <span>&nbsp;{{::$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</span></a></li></ul><div class=tab-content><div role=tabpanel ng-repeat="step in steps" ng-if="(keepScope)||(step === model)" ng-bind-html=step.content|to_trusted_html class="tab-pane {{::step.cssClass}} {{step === model ? \'active\' : \'\'}}"></div></div><ul ng-if="position === \'bottom\' || position === undefined" class="nav nav-tabs" role=tablist><li role=presentation ng-repeat="step in steps" class="{{step.disabled ?\'disabled\':\'\'}} {{::step.cssClass}} {{step === model ? \'active\' : \'\'}}"><a href=javascript:void(0) role=tab ng-click=vm.onPick(step) data-toggle=tab><i ng-if=::step.icon class={{::$eval(step.icon)}}></i> <span>&nbsp;{{::$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</span></a></li></ul></div>');
$templateCache.put('/templates/framework/directives/tabs/template.html', '<div ng-show=visible class="af-tabs af-component {{::cssClass}} {{:: position === \'right\'? \'tabs-right\':\'\'}} {{:: position === \'left\'? \'tabs-left\':\'\'}}"><ul ng-if="position !== \'bottom\'" class="nav nav-tabs" role=tablist><li role=presentation ng-repeat="step in steps" class="{{step.disabled ?\'disabled\':\'\'}} {{::step.cssClass}} {{step === model ? \'active\' : \'\'}}"><a href=javascript:void(0) ng-click="vm.prepareForPick(step, $event)"><i ng-if=::step.icon class={{::$eval(step.icon)}}></i> <span>&nbsp;{{::$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</span></a></li></ul><div class=tab-content><div role=tabpanel ng-repeat="step in steps" ng-if="(keepScope)||(step === model)" ng-bind-html=step.content|to_trusted_html class="tab-pane {{::step.cssClass}} {{step === model ? \'active\' : \'\'}}"></div></div><ul ng-if="position === \'bottom\' || position === undefined" class="nav nav-tabs" role=tablist><li role=presentation ng-repeat="step in steps" class="{{step.disabled ?\'disabled\':\'\'}} {{::step.cssClass}} {{step === model ? \'active\' : \'\'}}"><a href=javascript:void(0) role=tab ng-click=vm.onPick(step) data-toggle=tab><i ng-if=::step.icon class={{::$eval(step.icon)}}></i> <span>&nbsp;{{::$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</span></a></li></ul></div>');
$templateCache.put('/templates/framework/directives/tags/template.html', '<div ng-show=visible class="af-tags bootstrap-tagsinput {{::cssClass}}"><span ng-repeat="item in model" class="tag label label-info">{{item}} <span ng-click=vm.onRemove(item) data-role=remove></span></span> <input type=text placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}} ng-model=vm.query on-enter=vm.onAdd() style="width: 10em !important;"></div>');
$templateCache.put('/templates/framework/directives/tags/template.html', '<div ng-show=visible class="af-tags af-component bootstrap-tagsinput {{::cssClass}}"><span ng-repeat="item in model" class="tag label label-info">{{item}} <span ng-click=vm.onRemove(item) data-role=remove></span></span> <input type=text placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}} ng-model=vm.query on-enter=vm.onAdd() style="width: 10em !important;"></div>');
$templateCache.put('/templates/framework/directives/textbox/template.html', '<div ng-show=visible class="af-textbox {{disabled?\'disabled\':\'\'}} form-group {{::cssClass}}"><div ng-if=::prependIcon class=prepend-icon><input type=text class="form-control input-lg" ng-model=model ng-disabled=disabled ng-readonly=readonly placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::prependIcon}}></i></div><div ng-if=::appendIcon class=append-icon><input type=text class="form-control input-lg" ng-model=model ng-readonly=readonly ng-disabled=disabled placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::appendIcon}}></i></div><label ng-if=::label>{{::label}}</label> <label ng-if=::labelTranslate>{{::labelTranslate|translate}}</label> <input ng-if=::!(prependIcon||appendIcon) ng-model=model ng-readonly=readonly ng-disabled=disabled type=text class="form-control input-lg" placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}></div>');
$templateCache.put('/templates/framework/directives/textbox/template.html', '<div ng-show=visible class="af-textbox af-component {{disabled?\'disabled\':\'\'}} form-group {{::cssClass}}"><div ng-if=::prependIcon class=prepend-icon><input type=text class="form-control input-lg" ng-model=model ng-disabled=disabled ng-readonly=readonly placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::prependIcon}}></i></div><div ng-if=::appendIcon class=append-icon><input type=text class="form-control input-lg" ng-model=model ng-readonly=readonly ng-disabled=disabled placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::appendIcon}}></i></div><label ng-if=::label>{{::label}}</label> <label ng-if=::labelTranslate>{{::labelTranslate|translate}}</label> <input ng-if=::!(prependIcon||appendIcon) ng-model=model ng-readonly=readonly ng-disabled=disabled type=text class="form-control input-lg" placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}></div>');
$templateCache.put('/templates/framework/directives/tree/template.html', '<div class=af-tree>tree</div>');
$templateCache.put('/templates/framework/directives/tree/template.html', '<div class="af-tree af-component"><ul class="tree-root-container tree-container"><li class="tree-node expanded"><div class="active selected"><span class=child-info><i class="af-icon af-icon-chevron_down_hover"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div><ul class=tree-container><li class="tree-node expanded"><div class=active><span class=child-info><i class="af-icon af-icon-chevron_down"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div><ul class=tree-container><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li></ul></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li></ul></li><li class="tree-node expanded"><div class=active><span class=child-info><i class="af-icon af-icon-chevron_down"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div><ul class=tree-container><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li></ul></li><li class="tree-node expanded"><div class=active><span class=child-info><i class="af-icon af-icon-chevron_down"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div><ul class=tree-container><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li></ul></li></ul></div>');
$templateCache.put('/templates/framework/directives/validation-messages/template.html', '<div class=af-validation-messages>validation-messages</div>');
$templateCache.put('/templates/framework/directives/validation-messages/template.html', '<div class="af-validation-messages af-component"><ul ng-if=model.length><li ng-repeat="error in model"><i class="{{::(error.icon?error.icon:\'fa fa-info\')}}"></i> <span>{{::error.message}}</span></li></ul></div>');
$templateCache.put('/templates/framework/directives/waiting/template.html', '<div class=af-waiting><div class=inner-container><div class=binding></div><div class=pad><div class="line line1"></div><div class="line line2"></div><div class="line line3"></div></div></div></div>');
$templateCache.put('/templates/framework/directives/waiting/template.html', '<div class="af-waiting af-component"><div class=inner-container><div class=binding></div><div class=pad><div class="line line1"></div><div class="line line2"></div><div class="line line3"></div></div></div></div>');
$templateCache.put('/templates/framework/directives/wizard/template.html', '<div class=af-wizard>wizard</div>');
$templateCache.put('/templates/framework/directives/wizard/template.html', '<div ng-show=visible class="af-wizard af-component {{::cssClass}}"><tabs disabled=disabled tag=tag keep-scope=keepScope position=position on-changed=onChanged on-enter=onEnter on-exit=onExit prevent-pick=true trigger-pick=vm.triggerPick model=model steps=steps></tabs><ul class="navigation clearfix"><li><button class="btn btn-primary next" ng-disabled=disabled||vm.nextDisabled ng-click=vm.onNext()><i class="fa fa-arrow-left"></i> {{::(nextText|textOrTranslate:nextTextTranslate)}}</button></li><li><button class="btn btn-primary back" ng-disabled=disabled||vm.backDisabled ng-click=vm.onBack()>{{::(backText|textOrTranslate:backTextTranslate)}} <i class="fa fa-arrow-right"></i></button></li></ul></div>');

@@ -70,0 +70,0 @@ }]);

@@ -1,1 +0,2 @@

!function(){"use strict";angular.module("frontend.templates").run(["$templateCache",function(e){e.put("/templates/framework/layout/index.html",""),e.put("/templates/framework/directives/accordion/template.html",'<div ng-show=visible class="af-accordion accordion panel-group {{::cssClass}}" role=tablist><div ng-repeat="step in steps" class="panel panel-default"><div class=panel-heading role=tab><div class=panel-title><a role=button href=javascript:void(0) data-toggle=collapse ng-click=vm.onPick(step) class="{{step !== model?\'collapsed\':\'\'}}">&nbsp;{{$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</a></div></div><div class="panel-collapse {{step !== model?\'collapse\':\'\'}}" role=tabpanel><div class=panel-body ng-bind-html=step.content|to_trusted_html></div></div></div></div>'),e.put("/templates/framework/directives/calendar/template.html","<div class=af-calendar>calendar</div>"),e.put("/templates/framework/directives/captcha/template.html",'<div class=af-captcha><input type=text ng-model=vm.value ng-readonly=vm.waiting> <img ng-src={{vm.image}}> <button ng-disabled=vm.waiting ng-click=vm.refresh()><i class="fa fa-refresh"></i></button></div>'),e.put("/templates/framework/directives/checkbox/template.html",'<div ng-show=visible class="af-checkbox checkbox {{::cssClass}}" ng-click=vm.toggle($event)><label><input ng-disabled=disabled type=checkbox ng-model=model ng-checked="model===true"> <span class=text>{{::label|textOrTranslate:labelTranslate}}</span></label></div>'),e.put("/templates/framework/directives/combobox/template.html","<div class=af-combobox>combobox</div>"),e.put("/templates/framework/directives/date-picker/template.html","<div class=af-date-picker>date-picker</div>"),e.put("/templates/framework/directives/dropdown/template.html","<div class=af-dropdown>dropdown</div>"),e.put("/templates/framework/directives/editor/template.html","<div class=af-editor>editor</div>"),e.put("/templates/framework/directives/file-manager/template.html",'<div ng-show=visible class="af-file-manager {{::cssClass}}"></div>'),e.put("/templates/framework/directives/file-picker/template.html","<div class=af-file-picker>file-picker</div>"),e.put("/templates/framework/directives/file-picker-server/template.html",'<div ng-show=visible class="af-file-picker-server {{::cssClass}}"></div>'),e.put("/templates/framework/directives/form-elements/template.html","<div class=af-form-elements>form-elements</div>"),e.put("/templates/framework/directives/grid-view/template.html","<div class=af-grid-view>grid-view</div>"),e.put("/templates/framework/directives/modal/template.html","<div class=af-modal>modal</div>"),e.put("/templates/framework/directives/multi-column-dropdown/template.html","<div class=af-multi-column-dropdown>multi-column-dropdown</div>"),e.put("/templates/framework/directives/multi-select/template.html",'<div ng-show=visible class=af-multi-select dir=ltr ng-click=vm.prevent($event)><div style="width: 100%" class="select2 select2-container select2-container--default select2-container--below {{vm.plate?\'select2-container--open\':\'\'}}"><div ng-click=vm.togglePlate() class=selection><div class="select2-selection select2-selection--multiple" role=combobox aria-autocomplete=list aria-haspopup=true aria-expanded=true tabindex=0 aria-owns=select2-e2-results><ul class=select2-selection__rendered><li ng-repeat="item in model" class=select2-selection__choice title={{::item[textField]}}><span ng-click=vm.onDelete($event,item) class=select2-selection__choice__remove role=presentation>×</span> {{::item[textField]}}</li></ul></div></div><span class=dropdown-wrapper aria-hidden=true></span></div><div ng-if=vm.plate show-panel="{width: width, height: panelHeight}" class="select2-container select2-container--default select2-container--open"><span class="select2-dropdown select2-dropdown--below"><span class=select2-results><ul class=select2-results__options role=tree aria-multiselectable=true id=select2-e2-results aria-expanded=true aria-hidden=false><li ng-repeat="item in items" ng-click="vm.onAdd($event, item)" class=select2-results__option role=treeitem aria-selected="{{model.indexOf(item) !== -1}}">{{::item[textField]}}</li></ul></span></span></div></div>'),e.put("/templates/framework/directives/numbox/template.html",'<div ng-show=visible class="af-numbox spinbox {{::cssClass}}"><input type=text ng-disabled=disabled ng-readonly=readonly number-only ng-model=model class="form-control input-mini spinbox-input"><div class="spinbox-buttons btn-group btn-group-vertical"><button type=button ng-click=vm.increase() ng-disabled=disabled class="btn btn-default spinbox-up btn-xs"><span class=pe-7s-angle-up></span> <span class=sr-only>Increase</span></button> <button type=button ng-click=vm.decrease() ng-disabled=disabled class="btn btn-default spinbox-down btn-xs"><span class=pe-7s-angle-down></span> <span class=sr-only>Decrease</span></button></div></div>'),e.put("/templates/framework/directives/password/template.html",'<div ng-show=visible class="af-password {{disabled?\'disabled\':\'\'}} form-group {{::cssClass}}"><div ng-if=::prependIcon class=prepend-icon><input type=password class="form-control input-lg" ng-model=model ng-disabled=disabled ng-readonly=readonly placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::prependIcon}}></i></div><div ng-if=::appendIcon class=append-icon><input type=password class="form-control input-lg" ng-model=model ng-readonly=readonly ng-disabled=disabled placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::appendIcon}}></i></div><label ng-if=::label>{{::label}}</label> <label ng-if=::labelTranslate>{{::labelTranslate|translate}}</label> <input ng-if=::!(prependIcon||appendIcon) ng-model=model ng-readonly=readonly ng-disabled=disabled type=password class="form-control input-lg" placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}></div>'),e.put("/templates/framework/directives/progressbar/template.html","<div ng-show=visible class=\"progress {{::cssClass}} {{::(border?'progress-bordered':'')}}\"><div class=\"progress-bar progress-bar-primary\" role=progressbar ng-style=\"{width: model + '%'}\"><span class=sr-only>{{model}}% Complete (success)</span></div></div>"),e.put("/templates/framework/directives/radio/template.html",'<div ng-show=visible class="af-radio form-group {{::cssClass}}"><div ng-repeat="radio in items" ng-click=vm.onPick(radio) class="radio {{::inline?\'radio-inline\':\'\'}}"><label><input type=radio ng-checked="model === radio[valueField]"> <span class=text>{{::radio[textField]}}</span></label></div></div>'),e.put("/templates/framework/directives/ribbon/template.html","<div class=af-ribbon>ribbon</div>"),e.put("/templates/framework/directives/slider/template.html","<div class=af-slider>slider</div>"),e.put("/templates/framework/directives/switch/template.html",'<label ng-show=visible class="af-switch {{::cssClass}}" ng-click=vm.toggle($event)><input ng-disabled=disabled class=switch ng-model=model ng-checked="model===true" type=checkbox> <span class=text></span></label>'),e.put("/templates/framework/directives/tabs/template.html","<div ng-show=visible class=\"af-tabs {{::cssClass}} {{:: position === 'right'? 'tabs-right':''}} {{:: position === 'left'? 'tabs-left':''}}\"><ul ng-if=\"position !== 'bottom'\" class=\"nav nav-tabs\" role=tablist><li role=presentation ng-repeat=\"step in steps\" class=\"{{step.disabled ?'disabled':''}} {{::step.cssClass}} {{step === model ? 'active' : ''}}\"><a href=javascript:void(0) role=tab ng-click=vm.onPick(step) data-toggle=tab><i ng-if=::step.icon class={{::$eval(step.icon)}}></i> <span>&nbsp;{{::$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</span></a></li></ul><div class=tab-content><div role=tabpanel ng-repeat=\"step in steps\" ng-if=\"(keepScope)||(step === model)\" ng-bind-html=step.content|to_trusted_html class=\"tab-pane {{::step.cssClass}} {{step === model ? 'active' : ''}}\"></div></div><ul ng-if=\"position === 'bottom' || position === undefined\" class=\"nav nav-tabs\" role=tablist><li role=presentation ng-repeat=\"step in steps\" class=\"{{step.disabled ?'disabled':''}} {{::step.cssClass}} {{step === model ? 'active' : ''}}\"><a href=javascript:void(0) role=tab ng-click=vm.onPick(step) data-toggle=tab><i ng-if=::step.icon class={{::$eval(step.icon)}}></i> <span>&nbsp;{{::$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</span></a></li></ul></div>"),e.put("/templates/framework/directives/tags/template.html",'<div ng-show=visible class="af-tags bootstrap-tagsinput {{::cssClass}}"><span ng-repeat="item in model" class="tag label label-info">{{item}} <span ng-click=vm.onRemove(item) data-role=remove></span></span> <input type=text placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}} ng-model=vm.query on-enter=vm.onAdd() style="width: 10em !important;"></div>'),e.put("/templates/framework/directives/textbox/template.html",'<div ng-show=visible class="af-textbox {{disabled?\'disabled\':\'\'}} form-group {{::cssClass}}"><div ng-if=::prependIcon class=prepend-icon><input type=text class="form-control input-lg" ng-model=model ng-disabled=disabled ng-readonly=readonly placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::prependIcon}}></i></div><div ng-if=::appendIcon class=append-icon><input type=text class="form-control input-lg" ng-model=model ng-readonly=readonly ng-disabled=disabled placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::appendIcon}}></i></div><label ng-if=::label>{{::label}}</label> <label ng-if=::labelTranslate>{{::labelTranslate|translate}}</label> <input ng-if=::!(prependIcon||appendIcon) ng-model=model ng-readonly=readonly ng-disabled=disabled type=text class="form-control input-lg" placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}></div>'),e.put("/templates/framework/directives/tree/template.html","<div class=af-tree>tree</div>"),e.put("/templates/framework/directives/validation-messages/template.html","<div class=af-validation-messages>validation-messages</div>"),e.put("/templates/framework/directives/waiting/template.html",'<div class=af-waiting><div class=inner-container><div class=binding></div><div class=pad><div class="line line1"></div><div class="line line2"></div><div class="line line3"></div></div></div></div>'),e.put("/templates/framework/directives/wizard/template.html","<div class=af-wizard>wizard</div>")}])}();
!function(){"use strict";angular.module("frontend.templates").run(["$templateCache",function(a){a.put("/templates/framework/layout/index.html",""),a.put("/templates/framework/directives/accordion/template.html",'<div ng-show=visible class="af-accordion af-component accordion panel-group {{::cssClass}}" role=tablist><div ng-repeat="step in steps" class="panel panel-default"><div class=panel-heading role=tab><div class=panel-title><a role=button href=javascript:void(0) data-toggle=collapse ng-click=vm.onPick(step) class="{{step !== model?\'collapsed\':\'\'}}">&nbsp;{{$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</a></div></div><div class="panel-collapse {{step !== model?\'collapse\':\'\'}}" role=tabpanel><div class=panel-body ng-bind-html=step.content|to_trusted_html></div></div></div></div>'),a.put("/templates/framework/directives/calendar/template.html",'<div class="af-calendar af-component">calendar</div>'),a.put("/templates/framework/directives/captcha/template.html",'<div class="af-captcha af-component"><input type=text ng-model=model.value number-only maxlength=4 ng-readonly=vm.waiting> <img width=80 height=30 ng-src={{vm.image}}> <button ng-disabled=vm.waiting ng-click=vm.refresh()><i class="fa fa-refresh"></i></button></div>'),a.put("/templates/framework/directives/checkbox/template.html",'<div ng-show=visible class="af-checkbox af-component checkbox {{::cssClass}}" ng-click=vm.toggle($event)><label><input ng-disabled=disabled type=checkbox ng-model=model ng-checked="model===true"> <span class=text>{{::label|textOrTranslate:labelTranslate}}</span></label></div>'),a.put("/templates/framework/directives/combobox/template.html",'<div class="af-combobox af-component">combobox</div>'),a.put("/templates/framework/directives/date-picker/template.html",'<div class="af-date-picker af-component">date-picker</div>'),a.put("/templates/framework/directives/dropdown/template.html","<div ng-show=visible ng-click=vm.prevent($event) class=\"af-dropdown af-component dropdown {{vm.plate?'open':''}} {{::cssClass}}\"><button class=\"btn btn-default dropdown-toggle\" ng-disabled=disabled||vm.waiting type=button ng-click=vm.toggle()>&nbsp;{{vm.getText()}} <span class=caret></span></button><ul ng-if=vm.plate class=dropdown-menu><li ng-if=::!item.separator class=\"{{item[valueField] === model ? 'active' : ''}}\" ng-repeat-start=\"item in items\" ng-click=vm.onPick(item)><a href=javascript:void(0)>{{::item[textField]}}</a></li><li ng-repeat-end ng-if=::item.separator role=separator class=divider></li></ul></div>"),a.put("/templates/framework/directives/editor/template.html",'<div class="af-editor af-component">editor</div>'),a.put("/templates/framework/directives/file-manager/template.html",'<div ng-show=visible class="af-file-manager noselect af-component {{::cssClass}}"><div class="meta-container clearfix"><div class=info><i class="af-icon af-icon-binders_folder"></i> <span>AchaPlorer</span></div><div class=actions><div class="af-drop-menu af-component"><a class=drop-handler href=javascript:void(0)><i class="af-icon af-icon-settings_3"></i> <span class=menu-title>Administrator</span> <i class="fa fa-caret-down"></i><ul class=menu-items><li><div><i class="af-icon af-icon-settings"></i> <span class=menu-item-title>User settings</span></div></li><li><div><i class="af-icon af-icon-settings_2"></i> <span class=menu-item-title>Administration</span></div></li><li class=separator></li><li><div><i class="af-icon af-icon-exit"></i> <span class=menu-item-title>logout</span></div></li></ul></a></div></div></div><div class=inner-container><ribbon></ribbon><div class="af-navigation-bar af-component clearfix"><div class="path-container clearfix"><div class=parent-button-container><a href=javascript:void(0)><i class="af-icon af-icon-hdd"></i></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i></div></div><div class="path-inner-container slide" style="width: 1610px;"><div class="slide-handler left-slide-handler"><i class="fa fa-chevron-left"></i></div><div class="slide-handler right-slide-handler"><i class="fa fa-chevron-right"></i></div><ul class=root-folders style="left: 0px; width: 1627px;"><li class="root-folder open"><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i><ul class=sub-folders style="display: none;"><li><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a></li><li><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a></li><li><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a></li><li><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a></li></ul></div></li><li class=root-folder><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i></div></li><li class=root-folder><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i></div></li><li class=root-folder><a href=javascript:void(0)><i class="af-icon af-icon-folder"></i> <span>Folder Name</span></a><div class=show-sub-folders><i class="af-icon af-icon-chevron_right"></i></div></li></ul></div><div class=refresh-button-container><button><i class="af-icon af-icon-refresh"></i></button></div></div><div class=search-container><div class="input-group clearfix"><input type=text placeholder=Search....><div class=prefix><button><i class="af-icon af-icon-search"></i></button></div></div></div></div></div><div class="af-split-panel af-component clearfix"><div class="panel folder-explorer-panel fixed"><tree></tree></div><div class=panel-handler><div class=panel-handler-button><button><i class="fa fa-caret-left"></i></button></div></div><div class="panel file-explorer-panel"><div class="af-file-explorer-preview af-component large"><div class="clearfix details-tape"><div class="details name"><span class=details-text>Name</span> <i class="af-icon af-icon-chevron_up"></i><div class=show-settings><i class="af-icon af-icon-chevron_down"></i><ul class=details-menu><li><a href=javascript:void(0)><i></i> <span>Sort Ascending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Sort Descending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Columns</span> <i class="af-icon af-icon-chevron_right"></i></a><ul><li><a href=javascript:void(0)><i></i> <span>Date modified</span></a></li><li><a href=javascript:void(0)><i></i> <span>Type</span></a></li><li><a href=javascript:void(0)><i></i> <span>size</span></a></li></ul></li><li class=separator></li><li></li></ul></div></div><div class="details date-modified"><span class=details-text>Date modified</span><div class=show-settings><i class="af-icon af-icon-chevron_down"></i><ul class=details-menu><li><a href=javascript:void(0)><i></i> <span>Sort Ascending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Sort Descending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Columns</span> <i class="af-icon af-icon-chevron_right"></i></a><ul><li><a href=javascript:void(0)><i></i> <span>Date modified</span></a></li><li><a href=javascript:void(0)><i></i> <span>Type</span></a></li><li><a href=javascript:void(0)><i></i> <span>size</span></a></li></ul></li><li class=separator></li><li></li></ul></div></div><div class="details type"><span class=details-text>Type</span><div class=show-settings><i class="af-icon af-icon-chevron_down"></i><ul class=details-menu><li><a href=javascript:void(0)><i></i> <span>Sort Ascending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Sort Descending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Columns</span> <i class="af-icon af-icon-chevron_right"></i></a><ul><li><a href=javascript:void(0)><i></i> <span>Date modified</span></a></li><li><a href=javascript:void(0)><i></i> <span>Type</span></a></li><li><a href=javascript:void(0)><i></i> <span>size</span></a></li></ul></li><li class=separator></li><li></li></ul></div></div><div class="details size"><span class=details-text>Size</span><div class=show-settings><i class="af-icon af-icon-chevron_down"></i><ul class=details-menu><li><a href=javascript:void(0)><i></i> <span>Sort Ascending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Sort Descending</span></a></li><li><a href=javascript:void(0)><i></i> <span>Columns</span> <i class="af-icon af-icon-chevron_right"></i></a><ul><li><a href=javascript:void(0)><i></i> <span>Date modified</span></a></li><li><a href=javascript:void(0)><i></i> <span>Type</span></a></li><li><a href=javascript:void(0)><i></i> <span>size</span></a></li></ul></li><li class=separator></li><li></li></ul></div></div></div><ul class=navid><li class="clearfix folder"><div class="details name folder-item"><i class="af-icon-50 af-icon-folder"></i> <span>Folder Name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File Folder</span> <span class="details size"></span></li><li class="clearfix folder"><div class="details name folder-item"><i class="af-icon-50 af-icon-folder"></i> <span>Folder Name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File Folder</span> <span class="details size"></span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-file"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-3fr"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-zip"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-aac"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-c_"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-c__"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-bas"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-cbr"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-cbz"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-db2"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-js"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-json"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-mp3"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-mpg"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-pdf"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-pdf_2"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-kml"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li><li class="clearfix file"><div class="details name file-item"><i class="af-icon-50 af-icon-kmz"></i> <span>file name</span></div><span class="details date-modified">1/11/2016 3:05PM</span> <span class="details type">File</span> <span class="details size">2,997 KB</span></li></ul></div></div></div></div>'),a.put("/templates/framework/directives/file-picker/template.html",'<div class="af-file-picker af-component">file-picker</div>'),a.put("/templates/framework/directives/file-picker-server/template.html",'<div ng-show=visible class="af-file-picker-server af-component {{::cssClass}}"></div>'),a.put("/templates/framework/directives/form-elements/template.html",'<div class="af-form-elements af-component">form-elements</div>'),a.put("/templates/framework/directives/grid-view/template.html",'<div class="af-grid-view af-component">grid-view</div>'),a.put("/templates/framework/directives/modal/template.html",'<div class="af-modal af-component">modal</div>'),a.put("/templates/framework/directives/multi-column-dropdown/template.html",'<div class="af-multi-column-dropdown af-component">multi-column-dropdown</div>'),a.put("/templates/framework/directives/multi-select/template.html",'<div ng-show=visible class="af-multi-select af-component" dir=ltr ng-click=vm.prevent($event)><div style="width: 100%" class="select2 select2-container select2-container--default select2-container--below {{vm.plate?\'select2-container--open\':\'\'}}"><div ng-click=vm.togglePlate() class=selection><div class="select2-selection select2-selection--multiple" role=combobox aria-autocomplete=list aria-haspopup=true aria-expanded=true tabindex=0 aria-owns=select2-e2-results><ul class=select2-selection__rendered><li ng-repeat="item in model" class=select2-selection__choice title={{::item[textField]}}><span ng-click=vm.onDelete($event,item) class=select2-selection__choice__remove role=presentation>×</span> {{::item[textField]}}</li></ul></div></div><span class=dropdown-wrapper aria-hidden=true></span></div><div ng-if=vm.plate show-panel="{width: width, height: panelHeight}" class="select2-container select2-container--default select2-container--open"><span class="select2-dropdown select2-dropdown--below"><span class=select2-results><ul class=select2-results__options role=tree aria-multiselectable=true id=select2-e2-results aria-expanded=true aria-hidden=false><li ng-repeat="item in items" ng-click="vm.onAdd($event, item)" class=select2-results__option role=treeitem aria-selected="{{model.indexOf(item) !== -1}}">{{::item[textField]}}</li></ul></span></span></div></div>'),a.put("/templates/framework/directives/numbox/template.html",'<div ng-show=visible class="af-numbox af-component spinbox {{::cssClass}}"><input type=text ng-disabled=disabled ng-readonly=readonly number-only ng-model=model class="form-control input-mini spinbox-input"><div class="spinbox-buttons btn-group btn-group-vertical"><button type=button ng-click=vm.increase() ng-disabled=disabled class="btn btn-default spinbox-up btn-xs"><span class=pe-7s-angle-up></span> <span class=sr-only>Increase</span></button> <button type=button ng-click=vm.decrease() ng-disabled=disabled class="btn btn-default spinbox-down btn-xs"><span class=pe-7s-angle-down></span> <span class=sr-only>Decrease</span></button></div></div>'),a.put("/templates/framework/directives/password/template.html",'<div ng-show=visible class="af-password af-component {{disabled?\'disabled\':\'\'}} form-group {{::cssClass}}"><div ng-if=::prependIcon class=prepend-icon><input type=password class="form-control input-lg" ng-model=model ng-disabled=disabled ng-readonly=readonly placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::prependIcon}}></i></div><div ng-if=::appendIcon class=append-icon><input type=password class="form-control input-lg" ng-model=model ng-readonly=readonly ng-disabled=disabled placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::appendIcon}}></i></div><label ng-if=::label>{{::label}}</label> <label ng-if=::labelTranslate>{{::labelTranslate|translate}}</label> <input ng-if=::!(prependIcon||appendIcon) ng-model=model ng-readonly=readonly ng-disabled=disabled type=password class="form-control input-lg" placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}></div>'),a.put("/templates/framework/directives/progressbar/template.html","<div ng-show=visible class=\"progress af-component {{::cssClass}} {{::(border?'progress-bordered':'')}}\"><div class=\"progress-bar progress-bar-primary\" role=progressbar ng-style=\"{width: model + '%'}\"><span class=sr-only>{{model}}% Complete (success)</span></div></div>"),a.put("/templates/framework/directives/radio/template.html",'<div ng-show=visible class="af-radio af-component form-group {{::cssClass}}"><div ng-repeat="radio in items" ng-click=vm.onPick(radio) class="radio {{::inline?\'radio-inline\':\'\'}}"><label><input type=radio ng-checked="model === radio[valueField]"> <span class=text>{{::radio[textField]}}</span></label></div></div>'),a.put("/templates/framework/directives/ribbon/template.html",'<div class="af-ribbon af-component"><div class=tabs-container><div class=tabs-header><ul><li class=active><a data-tab=1 href=javascript:void(0)><i class="af-icon af-icon-dossier_folder"></i> <span>Home</span></a></li><li><a data-tab=2 href=javascript:void(0)><i class="af-icon af-icon-columns"></i> <span>View</span></a></li></ul></div><div class=tabs-content><div class="slide-handler left-slide-handler"><i class="fa fa-chevron-left"></i></div><div class="slide-handler right-slide-handler"><i class="fa fa-chevron-right"></i></div><div class="tab-content clearfix active" style="left: 0px; width: 1910px;"><div class=section><div class="section-content clipboard"><div class="button btn-copy"><button><i class="af-icon af-icon-copy"></i> <span>Copy</span></button></div><div class="button btn-paste"><button><i class="af-icon af-icon-paste"></i> <span>Paste</span></button></div><div class="button btn-cut"><button><i class="af-icon af-icon-cut"></i> <span>Cut</span></button></div></div><div class=section-label>Clipboard</div></div><div class=section><div class="section-content organize"><div class="button btn-delete"><button><i class="af-icon af-icon-delete"></i> <span>Delete</span></button></div><div class="button btn-rename"><button><i class="af-icon af-icon-rename"></i> <span>Rename</span></button></div></div><div class=section-label>Organize</div></div><div class=section><div class="section-content new"><div class="button btn-new-folder"><button><i class="af-icon af-icon-new-folder"></i> <span>New Folder</span></button></div></div><div class=section-label>New</div></div><div class=section><div class="section-content transfer"><div class="button btn-download"><button><i class="af-icon af-icon-download"></i> <span>Download</span></button></div><div class="button btn-upload"><button><i class="af-icon af-icon-upload"></i> <span>Upload</span></button></div></div><div class=section-label>Transfer</div></div><div class=section><div class="section-content open"><div class="button btn-open"><button><i class="af-icon af-icon-open"></i> <span>Open</span></button></div><div class="button btn-preview"><button><i class="af-icon af-icon-preview"></i> <span>Preview</span></button></div></div><div class=section-label>Open</div></div><div class=section><div class="section-content compression"><div class="button btn-add-to-zip"><button><i class="af-icon af-icon-archive"></i> <span>Add top zip</span></button></div><div class="af-drop-menu drop-button af-component btn-extract"><a class=drop-handler href=javascript:void(0)><i class="af-icon af-icon-open_archive"></i> <span>Extract all</span> <i class="fa fa-caret-down"></i><ul class=menu-items><li><div><i class="af-icon af-icon-file"></i> <span class=menu-item-title>Extract all here...</span></div></li><li><div><i class="af-icon af-icon-folder"></i> <span class=menu-item-title>Extract in separate folders</span></div></li></ul></a></div></div><div class=section-label>Compression</div></div><div class=section><div class="section-content share"><div class="button inline btn-public-link"><button><i class="af-icon af-icon-add_link"></i> <span>Create public link</span></button></div><div class="button inline btn-manage-public-link"><button><i class="af-icon af-icon-manage_link"></i> <span>Manage public links</span></button></div></div><div class=section-label>Share</div></div><div class=section><div class="section-content select"><div class="button inline btn-select-all"><button class=vw-select-all-btn><i class="af-icon af-icon-select_all"></i> <span>Select all</span></button></div><div class="button inline btn-select-none"><button class=vw-select-none-btn><i class="af-icon af-icon-deselect_all"></i> <span>Select none</span></button></div><div class="button inline btn-select-invert"><button class=vw-invert-selection-btn><i class="af-icon af-icon-invert_selection"></i> <span>invert selection</span></button></div></div><div class=section-label>Select</div></div></div><div class="tab-content clearfix"><div class=section><div class="section-content panes"><div class="button toggle-button active btn-navigatio"><button><i class="af-icon af-icon-close_pane_ltr"></i> <span>Navigation pane</span></button></div></div><div class=section-label>Panes</div></div><div class=section><div class="section-content layout"><div class=section-content-column><div class="button toggle-button inline btn-ex-icon"><button class=vw-x-large-btn><i class="af-icon af-icon-xlarge_icons"></i> <span>Extra large icons</span></button></div><div class="button toggle-button inline btn-m-icon"><button class=vw-medium-btn><i class="af-icon af-icon-medium_icons"></i> <span>Medium icons</span></button></div><div class="button toggle-button inline btn-d-icon"><button class=vw-details-btn><i class="af-icon af-icon-details_icons"></i> <span>Details icons</span></button></div></div><div class=section-content-column><div class="button toggle-button inline active btn-l-icon"><button class=vw-large-btn><i class="af-icon af-icon-large_icons"></i> <span>Large icons</span></button></div><div class="button toggle-button inline btn-s-icon"><button class=vw-small-btn><i class="af-icon af-icon-small_icons"></i> <span>Small icons</span></button></div><div class="button toggle-button inline btn-t-icon"><button class=vw-tiles-btn><i class="af-icon af-icon-tiles_icons"></i> <span>Tiles</span></button></div></div></div><div class=section-label>Layout</div></div></div></div></div></div>'),a.put("/templates/framework/directives/slider/template.html",'<div class="af-slider af-component">slider</div>'),a.put("/templates/framework/directives/switch/template.html",'<label ng-show=visible class="af-switch af-component {{::cssClass}}" ng-click=vm.toggle($event)><input ng-disabled=disabled class=switch ng-model=model ng-checked="model===true" type=checkbox> <span class=text></span></label>'),a.put("/templates/framework/directives/tabs/template.html","<div ng-show=visible class=\"af-tabs af-component {{::cssClass}} {{:: position === 'right'? 'tabs-right':''}} {{:: position === 'left'? 'tabs-left':''}}\"><ul ng-if=\"position !== 'bottom'\" class=\"nav nav-tabs\" role=tablist><li role=presentation ng-repeat=\"step in steps\" class=\"{{step.disabled ?'disabled':''}} {{::step.cssClass}} {{step === model ? 'active' : ''}}\"><a href=javascript:void(0) ng-click=\"vm.prepareForPick(step, $event)\"><i ng-if=::step.icon class={{::$eval(step.icon)}}></i> <span>&nbsp;{{::$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</span></a></li></ul><div class=tab-content><div role=tabpanel ng-repeat=\"step in steps\" ng-if=\"(keepScope)||(step === model)\" ng-bind-html=step.content|to_trusted_html class=\"tab-pane {{::step.cssClass}} {{step === model ? 'active' : ''}}\"></div></div><ul ng-if=\"position === 'bottom' || position === undefined\" class=\"nav nav-tabs\" role=tablist><li role=presentation ng-repeat=\"step in steps\" class=\"{{step.disabled ?'disabled':''}} {{::step.cssClass}} {{step === model ? 'active' : ''}}\"><a href=javascript:void(0) role=tab ng-click=vm.onPick(step) data-toggle=tab><i ng-if=::step.icon class={{::$eval(step.icon)}}></i> <span>&nbsp;{{::$eval(step.title)|textOrTranslate:$eval(step.titleTranslate)}}</span></a></li></ul></div>"),a.put("/templates/framework/directives/tags/template.html",'<div ng-show=visible class="af-tags af-component bootstrap-tagsinput {{::cssClass}}"><span ng-repeat="item in model" class="tag label label-info">{{item}} <span ng-click=vm.onRemove(item) data-role=remove></span></span> <input type=text placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}} ng-model=vm.query on-enter=vm.onAdd() style="width: 10em !important;"></div>'),a.put("/templates/framework/directives/textbox/template.html",'<div ng-show=visible class="af-textbox af-component {{disabled?\'disabled\':\'\'}} form-group {{::cssClass}}"><div ng-if=::prependIcon class=prepend-icon><input type=text class="form-control input-lg" ng-model=model ng-disabled=disabled ng-readonly=readonly placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::prependIcon}}></i></div><div ng-if=::appendIcon class=append-icon><input type=text class="form-control input-lg" ng-model=model ng-readonly=readonly ng-disabled=disabled placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}> <i class={{::appendIcon}}></i></div><label ng-if=::label>{{::label}}</label> <label ng-if=::labelTranslate>{{::labelTranslate|translate}}</label> <input ng-if=::!(prependIcon||appendIcon) ng-model=model ng-readonly=readonly ng-disabled=disabled type=text class="form-control input-lg" placeholder={{::placeHolder|textOrTranslate:placeHolderTranslate}}></div>'),a.put("/templates/framework/directives/tree/template.html",'<div class="af-tree af-component"><ul class="tree-root-container tree-container"><li class="tree-node expanded"><div class="active selected"><span class=child-info><i class="af-icon af-icon-chevron_down_hover"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div><ul class=tree-container><li class="tree-node expanded"><div class=active><span class=child-info><i class="af-icon af-icon-chevron_down"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div><ul class=tree-container><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li></ul></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li></ul></li><li class="tree-node expanded"><div class=active><span class=child-info><i class="af-icon af-icon-chevron_down"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div><ul class=tree-container><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li></ul></li><li class="tree-node expanded"><div class=active><span class=child-info><i class="af-icon af-icon-chevron_down"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div><ul class=tree-container><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li><li class="tree-node expanded"><div><span class=child-info><i class="af-icon af-icon-chevron_right"></i></span> <span class=node-info><i class="af-icon af-icon-folder"></i> <span class=node-text>Folder Name</span></span></div></li></ul></li></ul></div>'),
a.put("/templates/framework/directives/validation-messages/template.html",'<div class="af-validation-messages af-component"><ul ng-if=model.length><li ng-repeat="error in model"><i class="{{::(error.icon?error.icon:\'fa fa-info\')}}"></i> <span>{{::error.message}}</span></li></ul></div>'),a.put("/templates/framework/directives/waiting/template.html",'<div class="af-waiting af-component"><div class=inner-container><div class=binding></div><div class=pad><div class="line line1"></div><div class="line line2"></div><div class="line line3"></div></div></div></div>'),a.put("/templates/framework/directives/wizard/template.html",'<div ng-show=visible class="af-wizard af-component {{::cssClass}}"><tabs disabled=disabled tag=tag keep-scope=keepScope position=position on-changed=onChanged on-enter=onEnter on-exit=onExit prevent-pick=true trigger-pick=vm.triggerPick model=model steps=steps></tabs><ul class="navigation clearfix"><li><button class="btn btn-primary next" ng-disabled=disabled||vm.nextDisabled ng-click=vm.onNext()><i class="fa fa-arrow-left"></i> {{::(nextText|textOrTranslate:nextTextTranslate)}}</button></li><li><button class="btn btn-primary back" ng-disabled=disabled||vm.backDisabled ng-click=vm.onBack()>{{::(backText|textOrTranslate:backTextTranslate)}} <i class="fa fa-arrow-right"></i></button></li></ul></div>')}])}();

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet