UNPKG

unserver-unify

Version:

155 lines (140 loc) 4.05 kB
'use strict'; angular.module('bamboo.course').controller('SubjectsCtrl', function($scope, loginService, ApiService, deviceDetector) { var self = this; var colorarray = ['panel-grey', 'panel-red', 'panel-blue', 'panel-sea', 'panel-green', 'panel-orange']; this.pageSize=9; this.toggledrop = function() { if ($scope.dropdown) { $scope.dropdown = false; } else { $scope.dropdown = true; } } this.picUrl = ApiService.SHOST + "/subject/"; this.defaultCoursePhoto = ApiService.SHOST + "/public/images/videos.png"; var page = 1; var option; this.pageChanged = function(newPage) { page = newPage; getInfo(); }; this.nextPage = function() { page++; getInfo(); } function getInfo() { var info = { action: "getenablesubjects", start: (page-1)*(self.pageSize || 9) , limit: self.pageSize || 9, }; if (option) { info.search={ category : option, } } console.log(info); return ApiService.post('/subject', info).then(function(result) { console.log(result.data.data); self.courses = result.data.data.items; //$scope.displayCourses =[].concat($scope.courses); $scope.totalCount = result.data.data.counter; angular.forEach(self.courses,function(item,index){ if(item.photo){ item.photourl=self.picUrl+item.photo; }else{ item.photourl=self.defaultCoursePhoto; } }) }); } getInfo(); this.list = function(key, title) { self.courses = []; option=key; page=1; getInfo(); }; function getArray(obj, array, level, parent) { if ((typeof obj) === "object") { for (var key in obj) { var fullkey; if (parent == '') { fullkey = key; } else { fullkey = parent + "," + key; } var _i = { key: fullkey, value: level, title: key, items: [], }; array.push(_i); var info = obj[key]; if (typeof info === "object") { getArray(info, _i.items, level + 1, fullkey); } } } } if (loginService.school.subjectcatdoc) { ApiService.get("/schooldoc/" + loginService.school.subjectcatdoc).then(function(result) { if (result.data.success && result.data.data) { console.log(result.data.data); var cat = result.data.data.content || {}; // console.log(result); var catList = []; getArray(cat, catList, 0, ''); console.log(catList); $scope.catitems = catList; } }); var info={ action:"getSubjectCatNumber", } ApiService.post('/subject', info).then(function(result) { console.log(result); if(result.data.success){ console.log(result.data.data); self.catNumber=result.data.data; } }); } /*function generateCategoryList() { var catList = []; getArray(self.category, catList, 0, ''); console.log(catList); if (!self.categorykeys) { $scope.catitems = catList; } else { var keyindex = {}; var results = []; angular.forEach(catList, function(val, index) { var key = val.title; keyindex[key] = val; }) angular.forEach(self.categorykeys, function(key, index) { if (keyindex[key]) { results.push(keyindex[key]); } }) angular.forEach(keyindex, function(val, key) { var found = false; for (var i = 0; i < results.length; i++) { var record = results[i].title; if (record == key) { found = true; break; } } if (!found) { results.push(val); } }) $scope.catitems = results; } // console.log($scope.catitems ); } generateCategoryList();*/ });