unserver-unify
Version:
126 lines (123 loc) • 4.67 kB
JavaScript
;
angular.module('bamboo.event').controller('EventEnrollCtrl', function($scope, $rootScope, $location,fullWidthService, loginService, ApiService, CommonService, $state, $stateParams, $filter) {
var _self = this;
this.id = $stateParams.id;
//var time=$stateParams.time;
console.log($stateParams.time);
var time=this.time=new Date(parseInt($stateParams.time))
this.item = {time:time};
console.log(this.item);
var defaultEventPhoto = 'assets/images/event_no-img1.jpg';
this.imageFolderPrefix = ApiService.SHOST + '/public/' + ApiService.RES + '/' + 'schoolevent' + '/';
this.publicUrl = ApiService.SHOST + "/public/images/";
this.eventPicUrl = ApiService.SHOST + "/public/" + ApiService.RES + "/schoolevent/";
$rootScope.fullwidthflag = true;
$scope.$on("$destroy", function() {
console.log('-- destroy --');
console.log($state.current.name);
fullWidthService.listen();
});
this.enroll = function() {
if (loginService.user) {
var info = {
id: _self.id,
action: 'addrecord',
time:time,
};
ApiService.post("/event", info).then(function(result) {
if (result.data.success) {
CommonService.showInfo('{{"Enroll Application submitted!" || translate}}');
} else {
CommonService.showError(result.data.error);
}
})
} else {
if (!_self.item.fullname || !_self.item.email) {
CommonService.showError("{{'Incomplete Infomation' || translate}}");
} else {
var info = {
id: _self.id,
object: _self.item,
}
ApiService.post("/eventrecord", info).then(function(result) {
if (result.data.success) {
//CommonService.showInfo('{{"Enroll Application submitted!" || translate}}');
$scope.register = true;
} else {
CommonService.showError(result.data.error);
}
})
}
}
}
function getRecent() {
var info = {
action: "getrecents",
}
if (ApiService.school.excludedepartmentFlag) {
info.action = "getgrouprecents";
}
ApiService.post("/event", info).then(function(result) {
if (result.data.success) {
// console.log(result.data.data);
_self.weeks = result.data.data.weeks;
_self.coming = result.data.data.coming;
angular.forEach(_self.weeks, function(item, index) {
var startDate = $filter('date')(item.start, "yyyy/MM/d");
var endDate = $filter('date')(item.time, "yyyy/MM/d");
if (startDate == endDate) {
item.display = startDate;
} else {
item.display = startDate + ' - ' + endDate;
}
});
angular.forEach(_self.coming, function(item, index) {
var startDate = $filter('date')(item.start, "yyyy/MM/d");
var endDate = $filter('date')(item.time, "yyyy/MM/d");
if (startDate == endDate) {
item.display = startDate;
} else {
item.display = startDate + ' - ' + endDate;
}
});
}
// console.log(result.data);
});
}
getRecent();
function getInfo() {
ApiService.get("/events/" + _self.id).then(function(result) {
if (result.data.success) {
_self.event = result.data.data;
console.log(_self.event);
if (_self.event.registrationFlag) {
if (_self.event.registrationEnd) {
var end = new Date(_self.event.registrationEnd);
var now = new Date();
if (end > now) {
_self.event.enroll = true;
}
} else {
_self.event.enroll = true;
}
}
var startDate = $filter('date')(_self.event.start, "dd.MM.yyyy");
var endDate = $filter('date')(_self.event.time, "dd.MM.yyyy");
if (startDate == endDate) {
_self.displayDate = startDate;
_self.displayOriginDate = _self.event.start;
} else {
_self.displayDate = startDate + ' - ' + endDate;
}
//if()
if (_self.event.starttime && _self.event.endtime) {
var _starttime = $filter('date')(_self.event.starttime, "shortTime");
var _endtime = $filter('date')(_self.event.endtime, "shortTime");
_self.displayTime = _starttime + ' - ' + _endtime;
}
_self.imageUrl = _self.event.photo ? _self.eventPicUrl + _self.event._id + '/' + _self.event.photo : _self.defaultEventPhoto;
}
});
}
getInfo();
});