44 lines
1.5 KiB
JavaScript
44 lines
1.5 KiB
JavaScript
(function () {
|
|
global.dashModule
|
|
.controller('packagesDetailsCtrl', ['$scope', '$sce', packagesDetailsCtrl])
|
|
.directive('packagesDetails', [packagesDetailsDirective]);
|
|
|
|
function packagesDetailsDirective() {
|
|
return {
|
|
restrict: 'E',
|
|
templateUrl: 'packages/html/packagesDetailsTemplate'
|
|
};
|
|
}
|
|
|
|
function packagesDetailsCtrl($scope, $sce) {
|
|
$scope.renderHtml = renderHtml;
|
|
$scope.hasExtraPackages = hasExtraPackages;
|
|
$scope.areAllPayTypesAvailable = areAllPayTypesAvailable;
|
|
$scope.showHideInfoBox = showHideInfoBox;
|
|
$scope.getProductsArray = getProductsArray;
|
|
$scope.productsArray = [];
|
|
|
|
function renderHtml(htmlCode) {
|
|
return $sce.trustAsHtml(htmlCode);
|
|
}
|
|
|
|
function hasExtraPackages(packageObject) {
|
|
return packageObject.packageType === 'standard';
|
|
}
|
|
|
|
function areAllPayTypesAvailable(packagePrices, optionPrices){
|
|
return packagePrices.length === optionPrices.length && packagePrices.every((v,i)=> v.idPaymentType === optionPrices[i]);
|
|
}
|
|
|
|
function showHideInfoBox(optionPackage) {
|
|
optionPackage.isInfoBoxVisible = !optionPackage.isInfoBoxVisible;
|
|
}
|
|
|
|
function getProductsArray(packageInfo) {
|
|
if('products' in packageInfo && packageInfo.products) {
|
|
$scope.productsArray = packageInfo.products.split(',');
|
|
}
|
|
}
|
|
}
|
|
})();
|