From aa8711cd270fc04a23dbd8fb42e6eea48db27ce8 Mon Sep 17 00:00:00 2001 From: Victor Costa Date: Tue, 19 Jan 2016 10:23:06 -0300 Subject: [PATCH] Add recent documents block --- bower.json | 3 ++- src/app/components/noosfero-blocks/recent-documents/recent-documents.directive.js | 41 +++++++++++++++++++++++++++++++++++++++++ src/app/components/noosfero-blocks/recent-documents/recent-documents.html | 19 +++++++++++++++++++ src/app/components/noosfero-blocks/recent-documents/recent-documents.scss | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/app/components/noosfero-boxes/box.html | 2 +- src/app/index.module.js | 2 +- 6 files changed, 126 insertions(+), 3 deletions(-) create mode 100644 src/app/components/noosfero-blocks/recent-documents/recent-documents.directive.js create mode 100644 src/app/components/noosfero-blocks/recent-documents/recent-documents.html create mode 100644 src/app/components/noosfero-blocks/recent-documents/recent-documents.scss diff --git a/bower.json b/bower.json index 39cd5c9..6ece352 100644 --- a/bower.json +++ b/bower.json @@ -22,7 +22,8 @@ "bootswatch": "~3.3.6", "angular-moment": "~0.10.3", "lodash": "3.10.1", - "angular-filter": "~0.5.8" + "angular-filter": "~0.5.8", + "angular-deckgrid": "~0.5.0" }, "devDependencies": { "angular-mocks": "~1.4.2" diff --git a/src/app/components/noosfero-blocks/recent-documents/recent-documents.directive.js b/src/app/components/noosfero-blocks/recent-documents/recent-documents.directive.js new file mode 100644 index 0000000..c4f64af --- /dev/null +++ b/src/app/components/noosfero-blocks/recent-documents/recent-documents.directive.js @@ -0,0 +1,41 @@ +(function() { + 'use strict'; + + angular + .module('angular') + .directive('noosferoRecentDocumentsBlock', noosferoRecentDocumentsBlock); + + /** @ngInject */ + function noosferoRecentDocumentsBlock() { + var directive = { + restrict: 'E', + templateUrl: 'app/components/noosfero-blocks/recent-documents/recent-documents.html', + scope: { + block: '=', + owner: '=' + }, + controller: RecentDocumentsController, + controllerAs: 'vm', + bindToController: true + }; + + return directive; + + /** @ngInject */ + function RecentDocumentsController(noosfero, $state) { + var vm = this; + vm.profile = vm.owner; + vm.documents = []; + + vm.openDocument = function(article) { + $state.go("main.profile.page", {page: article.path, profile: article.profile.identifier}); + } + + //FIXME get all text articles + noosfero.profiles.one(vm.profile.id).one('articles').get({content_type: 'TinyMceArticle'}).then(function(result) { + vm.documents = result.articles; + }); + } + } + +})(); diff --git a/src/app/components/noosfero-blocks/recent-documents/recent-documents.html b/src/app/components/noosfero-blocks/recent-documents/recent-documents.html new file mode 100644 index 0000000..ee63a0f --- /dev/null +++ b/src/app/components/noosfero-blocks/recent-documents/recent-documents.html @@ -0,0 +1,19 @@ +
+
+
+ +
+
+
+ +
+ + + +
+
+ + +
+
+
diff --git a/src/app/components/noosfero-blocks/recent-documents/recent-documents.scss b/src/app/components/noosfero-blocks/recent-documents/recent-documents.scss new file mode 100644 index 0000000..d172e0b --- /dev/null +++ b/src/app/components/noosfero-blocks/recent-documents/recent-documents.scss @@ -0,0 +1,62 @@ +.block.recentdocumentsblock { + .deckgrid[deckgrid]::before { + font-size: 0; /* See https://github.com/akoenig/angular-deckgrid/issues/14#issuecomment-35728861 */ + visibility: hidden; + } + .author { + img { + width: 30px; + height: 30px; + } + } + .header { + .subheader { + color: #C1C1C1; + font-size: 10px; + } + } + .post-lead { + color: #8E8E8E; + font-size: 14px; + } +} + +.col-md-2-5 { + .deckgrid[deckgrid]::before { + content: '1 .deck-column'; + } +} + +.col-md-7 { + .block.recentdocumentsblock { + background-color: transparent; + border: 0; + + .deckgrid[deckgrid]::before { + content: '3 .deck-column'; + } + + .panel-heading { + display: none; + } + .panel-body { + padding: 0; + } + + .deckgrid { + .column { + float: left; + } + + .deck-column { + @extend .col-md-4; + padding: 0; + + .a-card { + padding: 10px; + margin: 3px; + } + } + } + } +} diff --git a/src/app/components/noosfero-boxes/box.html b/src/app/components/noosfero-boxes/box.html index 200d6f6..9e2ec64 100644 --- a/src/app/components/noosfero-boxes/box.html +++ b/src/app/components/noosfero-boxes/box.html @@ -1,5 +1,5 @@
-
+

{{block.title}}

diff --git a/src/app/index.module.js b/src/app/index.module.js index 77f75f4..269c924 100644 --- a/src/app/index.module.js +++ b/src/app/index.module.js @@ -5,6 +5,6 @@ .module('angular', ['ngAnimate', 'ngCookies', 'ngStorage', 'ngTouch', 'ngSanitize', 'ngMessages', 'ngAria', 'restangular', 'ui.router', 'ui.bootstrap', 'toastr', - 'angularMoment', 'angular.filter']); + 'angularMoment', 'angular.filter', 'akoenig.deckgrid']); })(); -- libgit2 0.21.2