| Server IP : 103.234.187.230 / Your IP : 216.73.216.216 Web Server : Apache System : Linux lserver42043-ind.megavelocity.net 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64 User : apache ( 48) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/vanguarddmc.com/public/js/ng/ |
Upload File : |
app.filter('sumOfValue', function () {
return function (data, key) {
if (angular.isUndefined(data) || angular.isUndefined(key))
return 0;
var sum = 0;
angular.forEach(data, function (value) {
sum = sum + parseInt(value[key], 10);
});
return sum;
}
});
app.controller("CarListingController", ['$scope', '$http', '$location', '$filter', '$window', function ($scope, $http, $location, $filter, $window) {
//var url = SITEURL+"public/data/dynamic/finalresultflight.json";
var url = SITEURL + "car/index/getcarsearch";
//console.log($scope);
$scope.loadingCar = true;
$scope.FilterloadingCar = true;
$scope.totalCars = 0;
$scope.class_status = false;
$scope.reverse = false;
$scope.totalAmount = 'totalAmount';
$scope.CarName = [];
$scope.CarCategory = [];
$scope.CarSeats = [];
$scope.ArrPriceUnique = [];
var absUrl = $location.absUrl();
var sURLVariables = absUrl.split('?');
// console.log(sURLVariables);
$http({
method: "POST",
url: url,
data: sURLVariables[1],
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(function successCallback(response) {
//console.log(response.data.resultSet);
$scope.loadingCar = true;
$scope.FilterloadingCar = true;
$scope.resultSet = $scope.resultSetFilter = response.data.resultSet;
//console.log(response.data);
$scope.CarName = response.data.carName;
$scope.CarCategory = response.data.vehicleCategory;
$scope.CarSeats = response.data.vehicleSeat;
$scope.ArrPriceUnique = response.data.ArrPriceUnique;
$scope.MinriceRange = response.data.MinriceRange;
$scope.MaxriceRange = response.data.MaxriceRange;
$('#priceRage').val($scope.MinriceRange + '-' + $scope.MaxriceRange);
$("#slider").slider({
range: true,
min: $scope.MinriceRange,
max: $scope.MaxriceRange,
values: [$scope.MinriceRange, $scope.MaxriceRange],
slide: function (event, ui) {
// Get values
var min = ui.values[0];
var max = ui.values[1];
$('.maxvalue_text_left').val(min);
$('.maxvalue_text_right').val(max);
$('#priceRage').val(min + '-' + max);
}
});
}, function errorCallback(response) {
}).finally(function () {
$scope.loadingCar = false;
$scope.FilterloadingCar = false;
$scope.orderby = 'totalAmount';
$scope.orderval = false;
$scope.limit = 1000; // total result
$scope.limitRound = 1000; // total result
$scope.totalCars = $scope.count.length; // total result
//console.log($scope.Cars);
//console.log($scope.CarName);
});
$scope.sortBy = function (totalAmount) {
console.log($scope.reverse);
$scope.reverse = ($scope.totalAmount === totalAmount) ? !$scope.reverse : false;
$scope.totalAmount = totalAmount;
};
$scope.filterData = function () {
// declare the variable here
var filterSTR = { 'CarName': [], 'CarCategory': [], 'CarSeats': [], 'price': [] };
angular.element('.filter-box input:checkbox').each(function () {
if ($(this).is(":checked")) {
if ($(this).hasClass('filter-car')) {
filterSTR.CarName.push($(this).val());
} else if ($(this).hasClass('filter-category')) {
filterSTR.CarCategory.push($(this).val());
} else if ($(this).hasClass('filter-seats')) {
filterSTR.CarSeats.push($(this).val());
} else if ($(this).hasClass('filter-price')) {
filterSTR.price.push($(this).val());
}
}
});
// if filter has any value
if ((filterSTR.CarName.length > 0) || (filterSTR.CarCategory.length > 0) || (filterSTR.CarSeats.length > 0) || (filterSTR.price.length > 0)) {
//console.log(filterSTR);
$scope.resultSet = this.filterFromArray($scope.resultSetFilter, filterSTR);
} else {
$scope.resultSet = $scope.resultSetFilter;
// console.log($scope.resultSet);
}
};
$scope.filterFromArray = function (data, filterSTR) {
// console.log(filterSTR);
var resultsetFiltered = [];
resultsetFiltered = $scope.applyCarFilter(data, filterSTR.CarName);
resultsetFiltered = $scope.applyCarCategoryFilter(resultsetFiltered, filterSTR.CarCategory);
resultsetFiltered = $scope.applySeatsFilter(resultsetFiltered, filterSTR.CarSeats);
resultsetFiltered = $scope.applyPriceRangeFilter(resultsetFiltered, filterSTR.price);
return resultsetFiltered;
};
$scope.applyPriceRangeFilter = function (data, priceArr) {
var resultsetFiltered = [];
if (priceArr.length == 0) {
return data;
}
$.each(data, function (index, element) {
var totalAmount = (Math.round(element.totalAmount));
if (priceArr.length > 0) {
$.each(priceArr, function (indexinn, elementinn) {
var elementinnSP = elementinn;
if (totalAmount >= elementinnSP) {
resultsetFiltered.push(element);
}
});
}
});
return resultsetFiltered;
};
$scope.applyCarFilter = function (data, nightArr) {
//number of nights
//console.log(data);
var resultsetFiltered = [];
if (nightArr.length == 0) {
return data;
}
$.each(data, function (index, element) {
if (nightArr.length > 0) {
// console.log(element);
$.each(nightArr, function (indexinn, elementinn) {
if (elementinn == element.vehicle) {
resultsetFiltered.push(element);
}
});
}
});
return resultsetFiltered;
};
$scope.applyCarCategoryFilter = function (data, nightArr) {
//number of nights
//console.log(data);
var resultsetFiltered = [];
if (nightArr.length == 0) {
return data;
}
$.each(data, function (index, element) {
if (nightArr.length > 0) {
//console.log(element);
$.each(nightArr, function (indexinn, elementinn) {
if (elementinn == element.VehicleCategory) {
resultsetFiltered.push(element);
}
});
}
});
return resultsetFiltered;
};
$scope.applySeatsFilter = function (data, nightArr) {
//number of nights
//console.log(data);
var resultsetFiltered = [];
if (nightArr.length == 0) {
return data;
}
$.each(data, function (index, element) {
if (nightArr.length > 0) {
// console.log(element);
$.each(nightArr, function (indexinn, elementinn) {
if(elementinn == element.seatingCapacity) {
resultsetFiltered.push(element);
}
});
}
});
return resultsetFiltered;
};
$scope.bookNow = function ($scope,carindex,data) {
//console.log(data);
var totalPrice = $('#totalamt'+ carindex).html();
var numberofcars = $('.selectcars'+carindex).val();
var url = SITEURL + "car/index/book-noow";
var jsonString = JSON.stringify($scope.item);
$http({
method: "POST",
url: url,
data: { totalPrice: totalPrice, numberofcars:numberofcars, data:data },
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(function successCallback(response) {
if (response.data.success) {
$window.location.href = response.data.url;
} else {
alert(response.data.message);
}
}, function errorCallback(response) {
alert(response.data.message);
});
};
}]);