199 lines
7.2 KiB
JavaScript
199 lines
7.2 KiB
JavaScript
|
|
app.controller('ActivityController',
|
|
['$anchorScroll', '$location','$scope', '$http', '$timeout', 'auth', 'rms', 'common','alertService',
|
|
function($anchorScroll, $location,$scope, $http, $timeout, auth, rms, common, alertService){
|
|
$scope.replaceUrl = function(url){
|
|
return url;
|
|
};
|
|
|
|
$scope.menus = ['所有动态', '课程动态', '项目动态'];
|
|
|
|
$scope.alertService = alertService.create();
|
|
console.log("ActivityController load");
|
|
|
|
$scope.page = rms.get('page') || 0;
|
|
$scope.activities = rms.get("activities") || [];
|
|
$scope.has_more = rms.get("has_more");
|
|
|
|
$scope.course_page = rms.get('course_page') || 0;
|
|
$scope.course_activities = rms.get("course_activities") || [];
|
|
$scope.course_has_more = rms.get("course_has_more");
|
|
|
|
$scope.project_page = rms.get('project_page') || 0;
|
|
$scope.project_activities = rms.get("project_activities") || [];
|
|
$scope.project_has_more = rms.get("project_has_more");
|
|
|
|
$scope.loadActData = function(index,page){
|
|
container_type = "All";
|
|
switch(index){
|
|
case 1:
|
|
container_type = "All";
|
|
$scope.page = page;
|
|
break;
|
|
case 2:
|
|
container_type = "Course";
|
|
$scope.course_page = page;
|
|
break;
|
|
case 3:
|
|
container_type = "Project";
|
|
$scope.project_page = page;
|
|
break;
|
|
}
|
|
|
|
$http({
|
|
method: 'POST',
|
|
url: apiUrl+ "activities",
|
|
data: {token: auth.token(), page: page, container_type: container_type}
|
|
}).then(function successCallback(response) {
|
|
if(response.data.page >0) {
|
|
switch(response.data.container_type){
|
|
case "All":
|
|
$scope.activities = $scope.activities.concat(response.data.data);
|
|
break;
|
|
case "Course":
|
|
$scope.course_activities = $scope.course_activities.concat(response.data.data);
|
|
break;
|
|
case "Project":
|
|
$scope.project_activities = $scope.project_activities.concat(response.data.data);
|
|
break;
|
|
case 3:
|
|
}
|
|
} else {
|
|
switch(response.data.container_type){
|
|
case "All":
|
|
$scope.activities = response.data.data;
|
|
break;
|
|
case "Course":
|
|
$scope.course_activities = response.data.data;
|
|
break;
|
|
case "Project":
|
|
$scope.project_activities = response.data.data;
|
|
break;
|
|
case 3:
|
|
}
|
|
}
|
|
|
|
switch(response.data.container_type){
|
|
case "All":
|
|
rms.save("activities", $scope.activities);
|
|
$scope.has_more = (response.data.count + response.data.page * 10) < response.data.all_count;
|
|
rms.save('has_more', $scope.has_more);
|
|
rms.save('page', response.data.page);
|
|
break;
|
|
case "Course":
|
|
rms.save("course_activities", $scope.course_activities);
|
|
$scope.course_has_more = (response.data.count + response.data.page * 10) < response.data.all_count;
|
|
rms.save('course_has_more', $scope.course_has_more);
|
|
rms.save('course_page', response.data.page);
|
|
break;
|
|
case "Project":
|
|
rms.save("project_activities", $scope.project_activities);
|
|
$scope.project_has_more = (response.data.count + response.data.page * 10) < response.data.all_count;
|
|
rms.save('project_has_more', $scope.project_has_more);
|
|
rms.save('project_page', response.data.page);
|
|
break;
|
|
case 3:
|
|
}
|
|
console.log(response.data);
|
|
|
|
}, function errorCallback(response) {
|
|
});
|
|
};
|
|
|
|
$scope.tab = function(index){
|
|
$scope.currentTab = index;
|
|
switch(index){
|
|
//ALL
|
|
case 1:
|
|
if($scope.activities.length<=0){
|
|
$scope.loadActData(index,0);
|
|
}
|
|
break;
|
|
//Course
|
|
case 2:
|
|
if($scope.course_activities.length<=0){
|
|
$scope.loadActData(index,0);
|
|
}
|
|
break;
|
|
//Project
|
|
case 3:
|
|
if($scope.project_activities.length<=0){
|
|
$scope.loadActData(index,0);
|
|
}
|
|
break;
|
|
}
|
|
rms.save("tab_num",$scope.currentTab);
|
|
}
|
|
|
|
|
|
$scope.currentTab = rms.get('tab_num') || 1;
|
|
|
|
if($scope.activities.length<=0){
|
|
$scope.loadActData('tab_num',0);
|
|
} else {
|
|
$timeout(function(){
|
|
window.scrollTo(0, rms.get("yoffset"));
|
|
});
|
|
}
|
|
|
|
//跳到详情页
|
|
$scope.goDetail = function(type, act_id,id){
|
|
rms.save("yoffset", document.documentElement.scrollTop || document.body.scrollTop);
|
|
rms.save("activities",$scope.activities);
|
|
rms.save("course_activities",$scope.course_activities);
|
|
rms.save("project_activities",$scope.project_activities);
|
|
$location.path('/'+type+'/'+act_id);
|
|
}
|
|
|
|
$scope.addPraise = function(act){
|
|
for(var i in $scope.activities){
|
|
if($scope.activities[i].act_id == act.act_id){
|
|
$scope.activities[i].praise_count += 1;
|
|
$scope.activities[i].has_praise = true;
|
|
break;
|
|
}
|
|
}
|
|
for(var i in $scope.course_activities){
|
|
if($scope.course_activities[i].act_id == act.act_id){
|
|
$scope.course_activities[i].praise_count += 1;
|
|
$scope.course_activities[i].has_praise = true;
|
|
break;
|
|
}
|
|
}
|
|
for(var i in $scope.project_activities){
|
|
if($scope.project_activities[i].act_id == act.act_id){
|
|
$scope.project_activities[i].praise_count += 1;
|
|
$scope.project_activities[i].has_praise = true;
|
|
break;
|
|
}
|
|
}
|
|
|
|
common.addCommonPraise(act);
|
|
};
|
|
|
|
$scope.decreasePraise = function(act){
|
|
for(var i in $scope.activities){
|
|
if($scope.activities[i].act_id == act.act_id){
|
|
$scope.activities[i].praise_count -= 1;
|
|
$scope.activities[i].has_praise = false;
|
|
break;
|
|
}
|
|
}
|
|
for(var i in $scope.course_activities){
|
|
if($scope.course_activities[i].act_id == act.act_id){
|
|
$scope.course_activities[i].praise_count -= 1;
|
|
$scope.course_activities[i].has_praise = false;
|
|
break;
|
|
}
|
|
}
|
|
for(var i in $scope.project_activities){
|
|
if($scope.project_activities[i].act_id == act.act_id){
|
|
$scope.project_activities[i].praise_count -= 1;
|
|
$scope.project_activities[i].has_praise = false;
|
|
break;
|
|
}
|
|
}
|
|
|
|
common.decreaseCommonPraise(act);
|
|
};
|
|
}]); |