unserver-unify
Version:
70 lines (68 loc) • 2.59 kB
JavaScript
;
angular.module('bamboo.comadmin').controller('ClassSelectDlgCtrl', function($scope, ApiService, loginService, setting, $uibModalInstance, CommonService) {
this.setting = setting; // save the current course id
var self = this;
var firstTime=true;
this.getClasses = function(tableState) {
if (firstTime) {
if (CommonService.classTableState) {
tableState.pagination = CommonService.classTableState.pagination;
tableState.sort = CommonService.classTableState.sort;
tableState.search = CommonService.classTableState.search;
}
firstTime = false;
}
CommonService.classTableState=self.tableState = tableState;
// console.log(tableState);
var _limit = tableState.pagination.number;
var start = tableState.pagination.start;
// set department id to use the input did(which should only display the classes under that department)
// or display all calsses and can switch between department based on user's select
var info = {
start: start,
limit: _limit,
sort: tableState.sort,
search: tableState.search.predicateObject,
action: 'getclasses',
};
if (info.search && info.search.status) {
delete info.search.status;
}
console.log(info);
ApiService.post("/classes", info).then(function(result) {
// console.log(result);
if (result.data.success) {
console.log(result.data.data.items);
var data = result.data.data;
$scope.items = [];
// class info post-processing, do not display existing classes
if (data.items && data.items.length > 0) {
var allClasses = data.items;
for (var i = 0; i < allClasses.length; i += 1) {
var thisOneExisting = false;
if (setting.existclasses) {
var existingClasses = setting.existclasses;
for (var j = 0; j < existingClasses.length; j += 1) {
if (allClasses[i]._id === existingClasses[j]._id) {
thisOneExisting = true;
break;
}
}
}
if (!thisOneExisting) {
$scope.items.push(allClasses[i]);
}
}
}
tableState.pagination.numberOfPages = parseInt(data.counter / _limit + 0.99);
}
});
};
if(setting.select){
$scope.select = setting.select;
}else{
$scope.select=function(id,name){
$uibModalInstance.close({_id:id,name:name});
}
}
});