diff --git a/modules/core/client/app/trans-string-en.js b/modules/core/client/app/trans-string-en.js index b90f8049..486fb611 100644 --- a/modules/core/client/app/trans-string-en.js +++ b/modules/core/client/app/trans-string-en.js @@ -619,6 +619,7 @@ //forum FORUMS: { + HOME_INDEX: 'Forums Home', BTN_ADD_FORUM: 'Add New Forum', BTN_EDIT_FORUM: 'Edit Forum', BTN_ADD: '  Add   ', @@ -656,6 +657,7 @@ READONLY: 'Only oper/admin can post new topic', TOPICS: 'Topics', REPLIES: 'Replies', + VIEWS: 'Views', LAST_REPLY: 'Last Reply' } }, diff --git a/modules/core/client/app/trans-string-zh.js b/modules/core/client/app/trans-string-zh.js index 5d21a56c..ebf82ce7 100644 --- a/modules/core/client/app/trans-string-zh.js +++ b/modules/core/client/app/trans-string-zh.js @@ -619,6 +619,7 @@ //forum FORUMS: { + HOME_INDEX: '论坛首页', BTN_ADD_FORUM: '添加版块', BTN_EDIT_FORUM: '编辑版块', BTN_ADD: '  添加  ', @@ -656,6 +657,7 @@ READONLY: '只有管理员可以发起新话题', TOPICS: '主题数', REPLIES: '回贴数', + VIEWS: '查看数', LAST_REPLY: '最近回复' } }, diff --git a/modules/forums/client/controllers/forums-view.client.controller.js b/modules/forums/client/controllers/forums-view.client.controller.js index f06e2032..fe532940 100644 --- a/modules/forums/client/controllers/forums-view.client.controller.js +++ b/modules/forums/client/controllers/forums-view.client.controller.js @@ -6,10 +6,10 @@ .controller('ForumsViewController', ForumsViewController); ForumsViewController.$inject = ['$scope', '$state', '$translate', 'Authentication', 'MeanTorrentConfig', 'ForumsService', 'SideOverlay', '$filter', 'NotifycationService', - 'marked', 'ModalConfirmService']; + 'marked', 'ModalConfirmService', '$stateParams', 'TopicsService']; function ForumsViewController($scope, $state, $translate, Authentication, MeanTorrentConfig, ForumsService, SideOverlay, $filter, NotifycationService, - marked, ModalConfirmService) { + marked, ModalConfirmService, $stateParams, TopicsService) { var vm = this; vm.forumsConfig = MeanTorrentConfig.meanTorrentConfig.forumsConfig; vm.user = Authentication.user; @@ -18,10 +18,26 @@ * init */ vm.init = function () { - ForumsService.query({}, function (items) { - vm.forums = items; - }); - }; + // get forum info by state params + ForumsService.get({ + forumId: $stateParams.forumId + }, function (item) { + console.log(item); + vm.forum = item; + vm.forumPath = [ + {name: vm.forum.name, state: undefined} + ]; + }); + + // get topics list + TopicsService.query({ + forumId: $stateParams.forumId + }, function (topics) { + console.log(topics); + vm.topics = topics; + }); + + }; } }()); diff --git a/modules/forums/client/less/forum.less b/modules/forums/client/less/forum.less index afe929f6..d16f8172 100644 --- a/modules/forums/client/less/forum.less +++ b/modules/forums/client/less/forum.less @@ -25,6 +25,10 @@ } .forum-list { + .pagination { + margin-bottom: 5px; + margin-top: 10px; + } .table-category { border-radius: 6px; } @@ -76,8 +80,10 @@ } .moderators-title { color: #666; + font-size: 12px; } .moderators-list { + font-size: 12px; .moderators-item { &:not(:first-child) { &::before { diff --git a/modules/forums/client/views/admin/configure.client.view.html b/modules/forums/client/views/admin/configure.client.view.html index bf0f1507..3c24f8ab 100644 --- a/modules/forums/client/views/admin/configure.client.view.html +++ b/modules/forums/client/views/admin/configure.client.view.html @@ -1,7 +1,7 @@
- +
diff --git a/modules/forums/client/views/index.client.view.html b/modules/forums/client/views/index.client.view.html index 7434c1a7..0b870552 100644 --- a/modules/forums/client/views/index.client.view.html +++ b/modules/forums/client/views/index.client.view.html @@ -27,7 +27,7 @@
diff --git a/modules/forums/client/views/view.client.view.html b/modules/forums/client/views/view.client.view.html index 3ec2c604..8afaa7da 100644 --- a/modules/forums/client/views/view.client.view.html +++ b/modules/forums/client/views/view.client.view.html @@ -24,4 +24,48 @@
+
+ + +
+
+
+
    +
+
+
+ +
+
+
+ +
+ + + + + + + + + + + + + + + + +
{{'FORUMS.FIELDS.TOPICS' | translate}}{{'FORUMS.FIELDS.REPLIES' | translate}}{{'FORUMS.FIELDS.VIEWS' | translate}}{{'FORUMS.FIELDS.LAST_REPLY' | translate}}
+
+
\ No newline at end of file diff --git a/modules/forums/server/models/topic.server.model.js b/modules/forums/server/models/topic.server.model.js index b616d153..14c8081d 100644 --- a/modules/forums/server/models/topic.server.model.js +++ b/modules/forums/server/models/topic.server.model.js @@ -48,6 +48,10 @@ var ScoreSchema = new Schema({ * Topic Schema */ var TopicSchema = new Schema({ + forum: { + type: Schema.Types.ObjectId, + ref: 'Forum' + }, user: { type: Schema.Types.ObjectId, ref: 'User' @@ -83,6 +87,10 @@ var TopicSchema = new Schema({ type: Schema.Types.ObjectId, ref: 'User' }, + isTop: { + type: Number, + default: 0 + }, lastReplyAt: { type: Date },