cobuild-angular-stack
Version:
Base stack angular sass jade gulp
107 lines (94 loc) • 3.35 kB
JavaScript
(function () {
'use strict';
angular.module('uniko.guest')
.controller('GuestSearchController', GuestSearchController);
GuestSearchController.$inject = ['$scope', '$state', '$stateParams', 'CoupleAccount', '$analytics', '$translate'];
function GuestSearchController($scope, $state, $stateParams, CoupleAccount, $analytics, $translate) {
$scope.filterName = $stateParams.criteria || '';
$scope.date = {};
$scope.minDate = moment().format('DD-MM-YYYY');
$scope.optionsDate = {
singleDatePicker: true,
applyClass: 'btn-inverse',
minDate: moment().add(-30,"days"),
locale: {
format : "DD-MM-YYYY",
applyLabel: "Aceptar",
cancelLabel: 'Cancelar',
"daysOfWeek": [
"Do",
"Lu",
"Ma",
"Mi",
"Ju",
"Vi",
"Sa"
],
"monthNames": [
"Enero",
"Febrero",
"Marzo",
"Abril",
"Mayo",
"Junio",
"Julio",
"Agosto",
"Septiembre",
"Octubre",
"Noviembre",
"Diciembre"
],
},
eventHandlers: {
'cancel.daterangepicker': function (ev, picker) {
$scope.date = null;
$scope.serach();
},
'apply.daterangepicker': function (ev, picker) {
$scope.serach();
}
}
};
$scope.$watch('filterName', function (newVal, oldValue) {
$scope.serach();
});
$scope.startSearch = function() {
$scope.date = {};
$scope.filterName = '';
$scope.serach();
}
$scope.serach = function() {
var val = $scope.filterName || '';
var urlFragments = val.split('/');
if (urlFragments.length > 1) {
val = urlFragments[urlFragments.length - 1];
}
var where = {
names: val,
url: val,
payment_state: 2,
isDisabled: false,
is_active: true
}
if($scope.date._isValid) {
where.endDate = $scope.date.format("YYYY-MM-DD");
where.endDate = moment(where.endDate);
where.endDate = where.endDate.add(1, 'day').format("YYYY-MM-DD");
where.startDate = $scope.date.format("YYYY-MM-DD");
}
var criteria = {
filter: {
where: where,
order: 'weddingData.date DESC'
}
};
if (!val) {
criteria.filter.limit = 10;
criteria.filter.where.fromNow = true;
criteria.filter.order = 'weddingData.date ASC';
}
console.log('Criteria = ', criteria);
$scope.coupleAccounts = CoupleAccount.filterAdvanced(criteria);
}
}
})();