You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

81 lines
1.8 KiB

angular.module('zuykov')
.controller('NiceCtrl', ['$scope', '$rootScope', function ($scope, $rootScope) {
$scope.selectedCategory = 1;
$scope.filterByCategory = function (nice_class) {
var category = $scope.categories[$scope.selectedCategory - 1];
return (category.classes.indexOf(nice_class.id) !== -1);
};
$scope.selectCategory = function (id) {
$scope.selectedCategory = id;
};
$scope.setClasses = function () {
var classes = [];
$(".service-trademarks-class-form form input[type=checkbox]:checked").prop('checked', false);
for(var i in $scope.nice) {
var el = $scope.nice[i];
if(el.selected) {
classes.push(el.id);
$(".service-trademarks-class-form form input[value=" + el.id + "]").prop('checked', true);
}
}
$rootScope.classes_values = classes;
$rootScope.classes = classes.length || 1;
if($rootScope.classes > 3) {
$rootScope.kz_extra_classes = $rootScope.classes - 3;
}
if($rootScope.classes > 5) {
$rootScope.extra_classes = $rootScope.classes - 5;
}
$scope.countCategories();
};
$scope.countCategories = function () {
for(var index in $scope.categories) {
var category = $scope.categories[index];
category.selected = [];
for(var cl_i in category.classes) {
var class_el = $scope.nice[category.classes[cl_i]-1];
if(class_el.selected) {
category.selected.push(class_el.id);
}
}
}
};
$scope.getClasses = function () {
var classes = $rootScope.classes_values;
for(var i in classes) {
var class_id = classes[i];
$scope.nice[class_id-1].selected = true;
}
$scope.countCategories();
$scope.setClasses();
};
}]);