unserver-unify
Version:
97 lines (88 loc) • 2.96 kB
JavaScript
;
angular.module('bamboo.sharedrive').controller('shareDriveController', function($scope, loginService, userBizModel, driveBizModel, ApiService, departmentBizModel, previewFileHelper) {
var self = this;
var driveType = "department";
console.log(loginService.user);
$scope.displayedItems = [];
this.docsUrl = ApiService.SHOST + '/sharedrive/' ;
this.setDriveType = function(type) {
console.log(type);
driveType = type;
self.docsUrl = ApiService.SHOST + '/sharedrive/' ;
}
self.currUser = loginService.user || {};
function loadDrives(category) {
driveBizModel.getSharedDrive(category).then(function(res) {
console.log(res);
if (res) {
$scope.schooldisplayedItems = $scope.displayedItems.concat(res.items);
$scope.schoolSharecounter = res.counter || 0;
} else {
$scope.schoolSharecounter = 0;
}
});
}
loadDrives();
driveBizModel.getDriveCategoty().then(function(category) {
self.cateList = category;
});
self.onChange = function() {
loadDrives($scope.typeModal);
}
if (self.currUser.grole == 'admin' || self.currUser.is_admin) {
departmentBizModel.getAllDepartment().then(function(deps) {
self.mydeps = deps || [];
console.log(deps);
});
} else {
departmentBizModel.getMyDepartment().then(function(mydeps) {
console.log(mydeps);
self.mydeps = mydeps;
});
}
function searchByDep(id) {
if (!id) return;
driveBizModel.getDriveByDepId(id, driveType).then(function(res) {
if (res) {
// $scope.displayedItems = [];
$scope.displayedItems = res.items;
$scope.counter = res.counter || 0;
} else {
$scope.counter = 0;
}
});
}
this.searchByDep = searchByDep;
// $scope.$watch('categoryModal', function() {
// searchByDep($scope.categoryModal);
// });
$scope.preview = function(obj, baseUrl) {
console.log(obj, absUrl);
var absUrl = baseUrl +obj.groupType+'/'+ obj.filename;
previewFileHelper.preview(obj.filename, absUrl);
}
//......... Pagination ...............
this.getitems = function(tableState) {
var limit = 10;
var start = tableState.pagination.start;
var search = tableState.search.predicateObject;
var info = {
start: start,
limit: limit,
action: "getenablesharefiles",
type: 'school',
sort:tableState.sort,
search:search,
};
console.log(info);
ApiService.post("/drive", info).then(function(result) {
if (result.data.success) {
console.log(result.data.data);
$scope.displayedItems = result.data.data.items;
// console.log($scope.displayedItems);
$scope.total = result.data.data.counter;
tableState.pagination.numberOfPages = Math.ceil(result.data.data.counter / limit);
}
});
}
});