Commit e3e43e8769ab23b83b57c678cf75b16c2717b997

Authored by Michel Felipe de Oliveira Ferreira - SUPDE/DESDR/DE502
1 parent b7dae429
Exists in master and in 1 other branch dev-fixes

Added tabs and two columns main layout into profile-info component

gulp/styles.js
@@ -27,7 +27,8 @@ var buildStyles = function() { @@ -27,7 +27,8 @@ var buildStyles = function() {
27 27
28 var injectFiles = gulp.src([ 28 var injectFiles = gulp.src([
29 path.join(conf.paths.src, '/app/**/*.scss'), 29 path.join(conf.paths.src, '/app/**/*.scss'),
30 - path.join('!' + conf.paths.src, '/app/index.scss') 30 + path.join('!' + conf.paths.src, '/app/index.scss'),
  31 + path.join('!' + conf.paths.src, '/app/layout/scss/*.scss')
31 ], { read: false }); 32 ], { read: false });
32 33
33 var injectOptions = { 34 var injectOptions = {
src/app/index.scss
@@ -16,6 +16,20 @@ $panel-default-text: rgb(44, 62, 80); @@ -16,6 +16,20 @@ $panel-default-text: rgb(44, 62, 80);
16 $link-color: #007EBB; 16 $link-color: #007EBB;
17 $body-bg: #f5f8fa; 17 $body-bg: #f5f8fa;
18 $page-header-border-color: #eee; 18 $page-header-border-color: #eee;
  19 +
  20 +//global bg color
  21 +$main-bg-color: #e7ebee;
  22 +
  23 +//primary colors
  24 +$primary-color: #03a9f4;
  25 +$primary-color-dark: #0288d1;
  26 +
  27 +//GRID - media queries breakpoints
  28 +$break-xxs-min: 420px;
  29 +$break-xs-min: 768px;
  30 +
  31 +$break-xxs-max: ($break-xxs-min - 1);
  32 +$break-xs-max: ($break-xs-min - 1);
19 @import "../../bower_components/bootswatch/flatly/_variables.scss"; 33 @import "../../bower_components/bootswatch/flatly/_variables.scss";
20 34
21 /** 35 /**
@@ -52,3 +66,5 @@ h1, h2, h3, h4, h5 { @@ -52,3 +66,5 @@ h1, h2, h3, h4, h5 {
52 // endinjector 66 // endinjector
53 67
54 @import "../../bower_components/bootswatch/flatly/_bootswatch.scss"; 68 @import "../../bower_components/bootswatch/flatly/_bootswatch.scss";
  69 +@import "layout/scss/mixins";
  70 +@import "layout/scss/bootstrap-overrides";
src/app/layout/scss/_bootstrap-overrides.scss 0 → 100644
@@ -0,0 +1,94 @@ @@ -0,0 +1,94 @@
  1 +/* MAINBOX */
  2 +.main-box {
  3 + border: 1px solid #e7ebee;
  4 + box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
  5 + margin-bottom: 16px;
  6 + /* overflow: hidden; */
  7 + @include border-radius($border-radius-base);
  8 +
  9 + @media (max-width: $break-xs-max) {
  10 + margin-bottom: 10px;
  11 + }
  12 +
  13 + h2 {
  14 + font-size: 1.3em;
  15 + line-height: 29px;
  16 + margin: 0;
  17 + padding: 0;
  18 +
  19 + @media (max-width: $break-xxs-max) {
  20 + margin-bottom: 5px;
  21 + }
  22 + }
  23 + &.no-header {
  24 + padding-top: 20px;
  25 + }
  26 + .main-box-header {
  27 + min-height: 50px;
  28 + padding: 10px 20px;
  29 +
  30 + &.with-border {
  31 + border-bottom: 1px solid #ecf0f1;
  32 + }
  33 + }
  34 + .main-box-body {
  35 + padding: 0 20px 20px 20px;
  36 + }
  37 +}
  38 +
  39 +/* TABS */
  40 +.nav-tabs {
  41 + background: #f9f9f9;
  42 + border-color: transparent;
  43 + margin-bottom: 15px;
  44 + @include border-radius(3px 3px 0 0);
  45 +
  46 + > li > a {
  47 + @include border-radius(0);
  48 + font-size: 1.125em;
  49 + font-weight: 300;
  50 + outline: none;
  51 + color: #555;
  52 + margin-right: 3px;
  53 + }
  54 + > li > a:hover,
  55 + > li > a:focus {
  56 + border-color: transparent;
  57 + @include border-radius(3px 3px 0 0);
  58 + color: #555;
  59 + border-bottom: 0;
  60 + background: rgba(219, 221, 223, 0.46);
  61 + }
  62 + > li.active > a,
  63 + > li.active > a:hover,
  64 + > li.active > a:focus {
  65 + @include border-radius(3px 3px 0 0);
  66 + border-left: 0;
  67 + border-top: 2px solid #03a9f4;
  68 + border-right: 0;
  69 + background: #fff;
  70 + }
  71 +}
  72 +.nav .open > a,
  73 +.nav .open > a:hover,
  74 +.nav .open > a:focus {
  75 + border-color: $main-bg-color;
  76 +}
  77 +.nav .caret {
  78 + border-bottom-color: $primary-color;
  79 + border-top-color: $primary-color;
  80 +}
  81 +.main-box .tabs-header {
  82 + min-height: 50px;
  83 + padding: 10px 20px;
  84 +}
  85 +.main-box .tab-content-body {
  86 + padding: 0 20px 20px 20px;
  87 + margin-bottom: 0;
  88 +}
  89 +.main-box .tab-content {
  90 + padding: 0 10px;
  91 +}
  92 +.tabs-wrapper.tabs-no-header .tab-content {
  93 + padding: 0 20px 20px;
  94 +}
src/app/layout/scss/_mixins.scss 0 → 100644
@@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
  1 +// MIXINS
  2 +@mixin border-radius($radius) {
  3 + border-radius: $radius;
  4 + background-clip: padding-box; /* stops bg color from leaking outside the border: */
  5 +}
src/app/profile/info/profile-info.html
1 -<h3>{{vm.profile.name}}</h3>  
2 -  
3 <div class="profile-wall"> 1 <div class="profile-wall">
4 - <h4>{{"profile.wall" | translate}}</h4>  
5 - <noosfero-activities [activities]="vm.activities"></noosfero-activities> 2 +
  3 + <div class="col-lg-3 col-md-4 col-sm-4">
  4 + <div class="main-box clearfix">
  5 + <header class="main-box-header clearfix">
  6 + <h2>{{vm.profile.name}}</h2>
  7 + </header>
  8 + <div class="main-box-body clearfix">
  9 + <noosfero-profile-image [profile]="vm.profile" class="img-responsive center-block"></noosfero-profile-image>
  10 + <div class="profile-since">
  11 + {{"profile.member_since" | translate}}: {{vm.profile.created_at}}
  12 + </div>
  13 + </div>
  14 + </div>
  15 + </div>
  16 +
  17 + <div class="col-lg-9 col-md-8 col-sm-8">
  18 + <div class="main-box clearfix">
  19 + <uib-tabset active="active">
  20 + <uib-tab index="0" heading="{{ 'activities.title' | translate }}">
  21 + <noosfero-activities [activities]="vm.activities"></noosfero-activities>
  22 + </uib-tab>
  23 + <uib-tab index="0" heading="{{ 'profile.about' | translate }}">
  24 + <!-- Profile data here -->
  25 + </uib-tab>
  26 + </uib-tabset>
  27 + </div>
  28 + </div>
6 </div> 29 </div>
src/languages/en.json
1 -{ 1 +{
2 "noosfero.name" : "Noosfero", 2 "noosfero.name" : "Noosfero",
3 "blocks.profile_image.control_panel": "Control Panel", 3 "blocks.profile_image.control_panel": "Control Panel",
4 "navbar.profile": "Profile", 4 "navbar.profile": "Profile",
@@ -9,7 +9,9 @@ @@ -9,7 +9,9 @@
9 "language.en": "English", 9 "language.en": "English",
10 "language.pt": "Portuguese", 10 "language.pt": "Portuguese",
11 "language.selector": "Language", 11 "language.selector": "Language",
12 - "profile.wall": "Profile Wall", 12 + "profile.member_since": "Member since",
  13 + "profile.about": "About me",
  14 + "activities.title": "Activities",
13 "activities.create_article.description": "has published on", 15 "activities.create_article.description": "has published on",
14 "activities.add_member_in_community.description": "has joined the community", 16 "activities.add_member_in_community.description": "has joined the community",
15 "activities.new_friendship.description": "has made {friends, plural, one{one new friend} other{# new friends}}:", 17 "activities.new_friendship.description": "has made {friends, plural, one{one new friend} other{# new friends}}:",
@@ -22,7 +24,5 @@ @@ -22,7 +24,5 @@
22 "notification.error.default.title": "Oops...", 24 "notification.error.default.title": "Oops...",
23 "notification.profile.not_found": "Page not found", 25 "notification.profile.not_found": "Page not found",
24 "notification.http_error.401.message": "Unauthorized", 26 "notification.http_error.401.message": "Unauthorized",
25 - "notification.http_error.500.message": "Server error",  
26 - "comment.post": "Post",  
27 - "comment.reply": "reply" 27 + "notification.http_error.500.message": "Server error"
28 } 28 }
src/languages/pt.json
1 -{ 1 +{
2 "noosfero.name" : "Noosfero", 2 "noosfero.name" : "Noosfero",
3 "blocks.profile_image.control_panel": "Painel de Controle", 3 "blocks.profile_image.control_panel": "Painel de Controle",
4 "navbar.profile": "Perfil", 4 "navbar.profile": "Perfil",
@@ -10,6 +10,9 @@ @@ -10,6 +10,9 @@
10 "language.pt": "Português", 10 "language.pt": "Português",
11 "language.selector": "Idioma", 11 "language.selector": "Idioma",
12 "profile.wall": "Mural do Perfil", 12 "profile.wall": "Mural do Perfil",
  13 + "profile.member_since": "Membro desde",
  14 + "profile.about": "Meus dados",
  15 + "activities.title": "Atividades",
13 "activities.create_article.description": "publicou em", 16 "activities.create_article.description": "publicou em",
14 "activities.add_member_in_community.description": "entrou na comunidade", 17 "activities.add_member_in_community.description": "entrou na comunidade",
15 "activities.new_friendship.description": "fez {friends, plural, one{um novo amigo} other{# novos amigos}}:", 18 "activities.new_friendship.description": "fez {friends, plural, one{um novo amigo} other{# novos amigos}}:",
@@ -22,7 +25,5 @@ @@ -22,7 +25,5 @@
22 "notification.error.default.title": "Oops...", 25 "notification.error.default.title": "Oops...",
23 "notification.profile.not_found": "Página não encontrada", 26 "notification.profile.not_found": "Página não encontrada",
24 "notification.http_error.401.message": "Não autorizado", 27 "notification.http_error.401.message": "Não autorizado",
25 - "notification.http_error.500.message": "Erro no servidor",  
26 - "comment.post": "Postar",  
27 - "comment.reply": "responder" 28 + "notification.http_error.500.message": "Erro no servidor"
28 } 29 }