feature: project-profile page

- css added or reviewed
- templates added or reviewed (customer, business provider, team)
- modal added and stylised
- routes reviewed
- navbar reviewed (adapted according to the content of the main section
- admin status added
- new staging added.
This commit is contained in:
Gaëlle Morin 2019-12-18 18:50:47 +00:00 committed by Jean-Baptiste Pasquier
parent 255083d2c1
commit 40e103fc00
25 changed files with 485 additions and 565 deletions

View File

@ -29,8 +29,8 @@ html(lang="en")
//- sib-link(class="backlink", next="job-offers") Back //- sib-link(class="backlink", next="job-offers") Back
//- include page-job-offer-edit.pug //- include page-job-offer-edit.pug
//- #project(hidden).with-sidebar #project(hidden).with-sidebar
//- include page-project.pug include page-project.pug
#circle(hidden).with-sidebar #circle(hidden).with-sidebar
include page-circle.pug include page-circle.pug

View File

@ -19,30 +19,32 @@ nav#main__menu
//- sib-route(name='job-offer-create', hidden) //- sib-route(name='job-offer-create', hidden)
//- sib-route(name='job-offer-edit', use-id, hidden) //- sib-route(name='job-offer-edit', use-id, hidden)
div.divider div.divider
//- div.menu-wrapper div.menu-wrapper
//- div.menu div.menu
//- div.menu-chevron div.menu-chevron
//- div.menu-icon.icon-arrow-up div.menu-icon.icon-arrow-up
//- div.menu-label Projects div.menu-label Projects
//- div.menu-icon.icon-folder-alt div.menu-icon.icon-folder-alt
//- sib-route(name='project', rdf-type='hd:project', use-id='', hidden) sib-route(name='project', rdf-type='hd:project', use-id='', hidden)
//- div.sub-menu.menu-notification div.sub-menu.menu-notification
//- sib-display( sib-display(
//- data-src=`${endpoints.projects}` data-src=`${endpoints.projects}`
//- fields='project(customer.name, name), badge' fields='project(customer.name, name), badge'
//- class-customer.name='project-customer' class-customer.name='project-customer'
//- class-name='project-name' class-name='project-name'
//- empty-widget='hd-create' empty-widget='hd-create'
//- empty-value='project' empty-value='project'
//- search-fields='team' search-fields='team'
//- search-widget-team='sib-form-hidden' search-widget-team='sib-form-hidden'
//- search-value-team='-' search-value-team='-'
//- hd-inherit-user-id='search-value-team' hd-inherit-user-id='search-value-team'
//- hd-inherit-widgets hd-inherit-widgets
//- widget-badge='hd-counter' widget-badge='hd-counter'
//- action-badge='badge' action-badge='badge'
//- ) order-by='customer.name'
//- div.divider next='project'
)
div.divider
div.menu-wrapper div.menu-wrapper
div.menu div.menu
div.menu-chevron div.menu-chevron

View File

@ -15,11 +15,11 @@ sib-router(default-route='circle-profile', hidden)
widget-creationDate='sib-display-date' widget-creationDate='sib-display-date'
) )
sib-ac-checker.testblock.circle-edit-button(permission='acl:Append', bind-resources, nested-field='members') sib-ac-checker(permission='acl:Append', bind-resources, nested-field='members')
sib-link(class='button text-bold text-uppercase reversed button-blue bordered with-icon icon-pencil' next='circle-edit' bind-resources) Edit and add Members sib-link(class='button text-bold text-uppercase reversed button-blue bordered with-icon icon-pencil' next='circle-edit' bind-resources) Edit and add Members
h2(name="label-team") Members: h2 Members:
sib-display.block( sib-display.block(
bind-resources bind-resources

View File

@ -1,13 +1,13 @@
.views-container .views-container
.content-box.full-width.with-form .content-box.full-width.with-form
div.content-box__header.with-description div.content-box__header
sib-ac-checker(permission='acl:Read', bind-resources) sib-ac-checker(permission='acl:Read', bind-resources)
sib-display( sib-display(
bind-resources bind-resources
fields='name, description' fields='name, description'
class-name='name' class-name='h1-like'
class-description='description' class-description='h1-aside description'
) )
div.content-box__info div.content-box__info
sib-ac-checker(permission='acl:Read', bind-resources) sib-ac-checker(permission='acl:Read', bind-resources)

View File

@ -1,43 +1,19 @@
sib-widget(name='hd-fieldset-title') div.content-box__info
include templates/hd-user-avatar.pug
sib-widget(name='hd-fieldset-title')
template template
label ${label} label ${label}
sib-widget(name='hd-project-members') sib-link(class='backlink', bind-resources, next='project-profile') Back
template
sib-display.member-info(
data-src='${id}'
fields='user.account.picture, user.name, name'
widget-user.account.picture='sib-display-img'
)
sib-widget(name='hd-member-form')
template
sib-form.member-add(
bind-resources
range-user=`${endpoints.users}`
nested-field='members'
fields='member-form__input(user, name)'
class-user='member-select form-label is-light is-half-width'
label-user='Member'
widget-user='sib-form-auto-completion'
class-name='form-label is-light is-half-width'
label-name='Role'
submit-button='Add'
)
.content-box.with-padding.with-form.full-width
h1 Edit your project h1 Edit your project
sib-form.form-container.block( sib-form.form-container.block(
bind-resources bind-resources
fields='fieldset-info, block-project__info(customer.name, name, customer.logo, description), fieldset-fee, block-project__fee(businessProvider, businessProviderFee), fieldset-customer, block-project__customer(customer.companyRegister, customer.address, customer.firstName, customer.lastName, customer.role, customer.email, customer.phone), fieldset-members, block-project__members(member-form, members)' fields='fieldset-info, block-project__info(customer.name, name, customer.logo, description), fieldset-fee, block-project__fee(businessProvider, businessProviderFee), fieldset-customer, block-project__customer(customer.companyRegister, customer.address, customer.firstName, customer.lastName, customer.role, customer.email, customer.phone)'
class-customer.name='form-label is-light is-half-width' class-customer.name='form-label is-light is-half-width'
class-name='form-label is-light is-half-width' class-name='form-label is-light is-half-width'
@ -78,13 +54,36 @@ sib-widget(name='hd-member-form')
label-customer.phone='Phone' label-customer.phone='Phone'
widget-fieldset-customer='hd-fieldset-title' widget-fieldset-customer='hd-fieldset-title'
class-fieldset-members='fieldset' submit-button='Save'
label-fieldset-members='Team' )
label-members=''
multiple-members='' h2 Members List
widget-members='hd-project-members'
widget-fieldset-members='hd-fieldset-title' sib-form.block.team-form(
widget-member-form='hd-member-form' bind-resources
nested-field='members'
submit-button='Submit' fields='user'
range-user=`${endpoints.users}`
class-user='team form-label is-dark'
label-user=''
widget-user='sib-form-auto-completion'
submit-button='Add a member'
)
.table
div.table-header.grey-color
div Name
div Access
//-class='table-body'
sib-display(
class='table-body'
bind-resources
fields='members'
multiple-members=''
widget-members='team-template-edit'
) )

View File

@ -1,32 +1,99 @@
.content-box.with-padding.full-width sib-router(default-route='project-profile', hidden)
sib-route(name='project-profile')
sib-route(name='project-edit')
include templates/template-business-provider.pug #project-profile(hidden)
include templates/template-customer.pug include templates/hd-business-provider.pug
include templates/template-team.pug include templates/hd-captain.pug
include templates/template-captain.pug include templates/hd-circle-team.pug
include templates/hd-customer.pug
.content-box__info
.space-between
sib-display(
bind-resources
fields='creationDateSet(title, creationDate)'
value-title='Creation date: '
widget-creationDate='sib-display-date'
)
sib-ac-checker(permission='acl:Append', bind-resources, nested-field='members')
sib-link(class='button text-bold text-uppercase reversed button-blue bordered with-icon icon-pencil' next='project-edit' bind-resources) Edit and add Members
.space-between
sib-display(
bind-resources
fields='label-captain, captain'
value-label-captain='Captain:'
class-label-captain='h2-like'
widget-captain='hd-captain'
)
sib-display(
class='customer-logo'
bind-resources
fields='customer.logo'
widget-customer.logo='sib-display-img'
)
h2 Contributions:
sib-link(next='project-contributions-help').button-question__position
button(aria-label='modal activator').icon-question.button-question__color
sib-display( sib-display(
fields='block-title(const-title1, number, customer.name, const-title2, name, entitled, creationDate), infos(block-description(label-description, description), block-logo(customer.logo)), block-lead, block-fee(label-fee, businessProvider), block-customer(label-customer, customer), block-captain(label-captain, captain), block-team(label-team, members)',
value-const-title1='N°',
value-const-title2='-',
value-entitled='Creation date: '
value-label-description='DESCRIPTION:',
widget-customer.logo='sib-display-img',
value-label-fee='FEE:',
widget-businessProvider='template-business-provider'
value-label-customer='CUSTOMER INFORMATIONS:',
widget-customer='customer-template',
value-label-captain='CAPTAIN:',
widget-captain='captain-template',
value-label-team='TEAM:',
widget-members='project-team-template',
multiple-members,
bind-resources bind-resources
fields='businessProvider',
widget-businessProvider='hd-business-provider'
) )
h2 Customer informations:
sib-display.block(
bind-resources
fields='customer'
widget-customer='hd-customer'
)
h2 Team:
sib-display(
bind-resources
fields='team'
widget-team='circle-team-template'
multiple-team
)
sib-widget(name='project-leave-button')
template
sib-delete(
class='button btn-margin-left text-bold text-uppercase reversed button-dark bordered with-icon icon-close'
data-src="${src}"
data-label='Leave Group'
)
sib-display(
class='position-end'
bind-resources
nested-field='members'
fields='relation'
action-relation='relation'
widget-relation='project-leave-button'
search-fields='user'
search-widget-user='sib-form-hidden'
search-value-user=""
hd-inherit-user-id="search-value-user"
hd-inherit-widgets
)
#project-edit(hidden)
include page-project-edit.pug

View File

@ -1,31 +1,44 @@
.views-container .views-container
#project-chat .content-box.full-width.with-form
div.content-box__header
sib-ac-checker(permission='acl:Read', bind-resources)
sib-display(
bind-resources
fields='const-title1, number, customer.name, name'
class-const-title1='h1-like'
class-number='h1-like'
class-customer.name='h1-like'
class-name='h1-aside name'
value-const-title1='N°'
)
div.content-box__info
sib-ac-checker(permission='acl:Read', bind-resources)
#project-chat(hidden)
include page-project-chat.pug include page-project-chat.pug
#project-profile #project-information(hidden)
include page-project-profile.pug include page-project-profile.pug
#project-edit #project-drive(hidden)
include page-project-edit.pug
#project-create
include page-project-create.pug
#project-drive
include page-project-drive.pug include page-project-drive.pug
dialog(id='project-contributions-help').modal
sib-link(next='project-profile')
button.icon-close
img(src='/images/contributions-help.png')
nav.jsRightMenu(role='navigation') nav.jsRightMenu(role='navigation')
sib-router(default-route='project-chat') sib-router(default-route='project-chat')
ul ul
li.jsOffsiteToggle li.jsOffsiteToggle
a Fold menu a Fold menu
sib-route(name='project-chat', use-id) sib-route(name='project-chat')
li li
a Chat a Chat
sib-route(name='project-profile', use-id) sib-route(name='project-information')
li li
a Information a Information
sib-route(name='project-drive', use-id) sib-route(name='project-drive', use-id)
li li
a Drive a Drive
sib-route(name='project-edit', use-id) sib-route(name='project-contributions-help')
li
a Edit
sib-route(name='project-create', use-id)
//- li
//- a Add new

View File

@ -381,74 +381,5 @@
} }
} }
} }
[widget='hd-project-members'] {
display: flex;
flex-wrap: wrap;
width: 100%;
&>label {
display: none;
}
&>div {
align-items: center;
border: 1px solid $color-43-100-50;
border-radius: 3px;
display: flex;
margin: 0 1.5rem 1.5rem 0;
padding: 2.2rem;
.member-info>div {
display: grid;
grid-template-areas: "avatar name"
"avatar role";
grid-column-gap: 15px;
margin-right: 15px;
}
&>button {
cursor: pointer;
background-color: transparent;
border: 1px solid $color-43-100-50;
border-radius: 50%;
color: $color-43-100-50;
height: 22px;
width: 22px;
}
}
&>button {
display: none;
}
sib-display-img {
grid-area: avatar;
align-items: center;
background-color: #e3e8ed;
border-radius: 50%;
display: flex;
height: 45px;
justify-content: center;
overflow: hidden;
width: 45px;
img {
height: 100%;
object-fit: cover;
object-position: center;
width: 100%;
}
}
sib-display-value:first-of-type {
font-weight: 600;
grid-area: name;
}
sib-display-value:last-of-type {
grid-area: role;
}
}
} }
} }

View File

@ -19,37 +19,41 @@ $breakpoints: (phone: 480px,
body { body {
background-color: $color-210-25-95; background-color: $color-210-25-95;
color: $color-213-4-50; color: $color-213-4-50;
display: flex;
flex-direction: column;
font-size: 1.6rem; font-size: 1.6rem;
height: 100vh; min-height: 100vh;
overflow: hidden;
overflow-wrap: break-word; overflow-wrap: break-word;
} }
main { main {
display: flex; display: flex;
flex-direction: row; flex-direction: row;
height: 100%;
max-width: 100%; max-width: 100%;
overflow: hidden;
} }
} }
/* Quick fix. Will be removed later */
#admin-circles {
display: contents;
}
img { img {
max-height: 100%; max-height: 100%;
max-width: 100%; max-width: 100%;
} }
h1, h1,
.h1-like,
h2, h2,
.h2-like,
h3, h3,
h4, h4,
h5, h5,
h6 { h6 {
color: $color-216-4-22; font-weight: bold;
font-weight: 600;
padding: 0;
/*span { /*span {
font-weight: 400; font-weight: 400;
@ -61,15 +65,26 @@ h6 {
}*/ }*/
} }
h1 { .h2-like {
font-size: 2rem; display: block;
margin: 14.94px 0;
width: 100%;
} }
h2 { h1, .h1-like {
color: $color-233-18-29;
font-size: 2rem; font-size: 2rem;
text-transform: uppercase;
}
h2, .h2-like {
color: $color-216-4-22;
font-size: 1.8rem;
text-transform: uppercase;
} }
h3 { h3 {
color: $color-216-4-22;
font-size: 1.7rem; font-size: 1.7rem;
} }
@ -101,7 +116,7 @@ h5 {
flex: 1; flex: 1;
font-size: 1.6rem; font-size: 1.6rem;
margin: 0 auto; margin: 0 auto;
min-height: calc(100vh - 84px); min-height: 100%;
} }
&.with-padding { &.with-padding {
@ -110,21 +125,54 @@ h5 {
} }
.content-box__header { .content-box__header {
padding: 1.9rem 3rem; border-bottom: 1px solid $color-221-51-90;
padding: 3rem;
div { div {
color: $color-233-18-29;
display: flex;
font-size: 2rem;
&>* { .h1-aside {
align-self: center; font-size: 1.8rem;
&:not(:empty)::before {
color: $color-233-18-29;
content: '- ';
font-size: 2rem;
font-weight: bold;
margin-left: 0.60rem;
}
}
.description {
color: $color-215-6-63;
} }
.name { .name {
font-size: 2rem; color: $color-233-18-29;
font-weight: bold; font-weight: normal;
margin: 1.1rem 0; }
}
}
.modal {
color: white;
margin: 75px;
padding: 40px;
max-height: 85vh;
text-align: center;
img {
max-width: 75%;
}
sib-link {
font-size: 2.7rem;
position: absolute;
right: 32px;
top: 32px;
button {
color: $color-233-18-29;
} }
} }
} }
@ -134,30 +182,6 @@ h5 {
border: 0; border: 0;
} }
.content-box__header.with-description {
border-bottom: 1px solid $color-221-51-90;
div {
.name {
text-transform: uppercase;
}
.description {
color: $color-215-6-63;
font-size: 1.8rem;
&:not(:empty)::before {
color: $color-216-4-22;
content: '- ';
font-size: 2rem;
font-weight: bold;
margin-left: 0.60rem;
}
}
}
}
.backlink { .backlink {
@include icon('arrow-left-circle'); @include icon('arrow-left-circle');
color: $color-233-18-29; color: $color-233-18-29;
@ -191,6 +215,10 @@ h5 {
padding-bottom: 1.4rem; padding-bottom: 1.4rem;
} }
.position-end {
text-align: end;
}
.section { .section {
border-bottom: 1px solid $color-221-51-90; border-bottom: 1px solid $color-221-51-90;
padding: 4.5rem; padding: 4.5rem;
@ -202,7 +230,6 @@ h5 {
@import 'form'; @import 'form';
@import 'header'; @import 'header';
@import 'menu-left'; @import 'menu-left';
@import 'user-avatar';
// Button global CSS // Button global CSS
sib-delete, sib-delete,

View File

@ -3,7 +3,8 @@
color: $color-0-0-100; color: $color-0-0-100;
display: block; display: block;
max-width: 250px; max-width: 250px;
overflow: auto; min-height: calc(100vh - 83px); /* 83px = nav height */
flex: 1;
/*transition: flex-basis 0.5s ease-in-out;*/ /*transition: flex-basis 0.5s ease-in-out;*/
&.open { &.open {

View File

@ -1,29 +0,0 @@
.project-profile-user-avatar {
align-self: center;
grid-column: 1 / span 1;
grid-row: 1 / span 2;
display: inline;
* {
height: 100%;
width: 100%;
}
div {
background-color: $color-0-0-100;
border-radius: 50%;
height: 7vh;
overflow: hidden;
position: relative;
width: 7vh;
img {
height: 100%;
left: 0;
object-fit: cover;
position: absolute;
top: 0;
width: 100%;
}
}
}

View File

@ -8,11 +8,10 @@
display: flex; display: flex;
flex-direction: row; flex-direction: row;
align-items: stretch; align-items: stretch;
overflow-x: hidden; overflow: hidden;
.views-container { .views-container {
flex: 1 0 0; flex: 1 0 0;
overflow-y: auto;
-webkit-backface-visibility: hidden; -webkit-backface-visibility: hidden;
&.sidebar-is-closed { &.sidebar-is-closed {
@ -26,6 +25,7 @@
} }
nav { nav {
background: $color-210-25-95;
transition: all 0.5s; transition: all 0.5s;
>sib-router { >sib-router {

View File

@ -10,8 +10,9 @@
div#viewport { div#viewport {
display: flex; display: flex;
flex-grow: 1; flex: 1;
flex-shrink: 1; /*height: auto;
min-height: 100vh;*/
overflow-y: auto; overflow-y: auto;
@import 'components/index'; @import 'components/index';
@import 'layout/members/index'; @import 'layout/members/index';

View File

@ -3,12 +3,6 @@
#admin-circle-list, #admin-circle-list,
#admin-circle-create { #admin-circle-create {
h2 {
font-size: 1.7rem;
font-weight: bold;
text-transform: uppercase;
}
.content-box__info { .content-box__info {
@extend %padding-block; @extend %padding-block;
display: flex; display: flex;

View File

@ -1 +1,2 @@
@import 'project-profile' @import 'project';
@import 'project-profile';

View File

@ -1,188 +1,81 @@
#project-profile { #project-profile {
[name^='block-']:not([name='block-title']) { .button-question__position {
margin-top: 5.1rem;
[name^='label-'] {
display: block;
font-weight: bold;
margin: 1.4rem 0;
text-transform: uppercase;
@extend h2;
}
sib-display-value:not(:first-of-type),
ul,
[name*='job'] {
font-size: 1.5rem;
}
}
[name='block-title'] {
border-bottom: 1px solid $color-221-51-90;
display: flex;
padding-bottom: 3.4rem;
>* {
color: $color-216-4-22;
font-size: 2rem;
font-weight: bold;
padding-right: 0.85rem;
text-transform: uppercase;
}
>[name^='const-'] {
padding: 0;
}
>sib-display-value[name='name'] {
padding-left: 0.85rem;
}
> :nth-child(5) {
color: $color-233-18-29;
font-weight: normal;
text-transform: none;
}
[name='entitled'] {
margin-left: auto;
}
> :nth-last-child(-n+2) {
color: $color-213-4-50;
font-size: 1.6rem;
font-weight: normal;
text-transform: none;
}
}
[name='infos'] {
display: flex;
justify-content: space-between;
[name='description'] {
display: flex;
flex-direction: column;
width: 90%;
}
[name='block-logo'] {
box-sizing: border-box;
display: block;
height: 8.5vh;
position: relative; position: relative;
text-align: end; bottom: 5px;
width: 15vw;
}
} }
[name='businessProvider'] { .button-question__color {
color: $color-216-4-22;
ul {
list-style: none;
padding-left: 0;
li {
&:first-child {
margin-bottom: 0.5em;
} }
span { .customer-box {
font-weight: bold;
}
}
}
}
#clientBox {
display: flex; display: flex;
margin: 1.7rem auto; margin: 1.6rem 0;
max-width: 100%;
>* { >* {
border: 1px solid $color-221-51-90; border: 1px solid $color-221-51-90;
flex: 1 1 auto; flex: 0 1 50%;
justify-content: space-between; padding: 1.7rem 2rem;
margin: 0 -0.1rem -0.1rem 0;
min-width: 25vw;
padding: 0;
h5 {
margin-left: 2rem;
margin-top: 2rem;
}
ul {
font-size: 1.5rem;
list-style: none;
margin: -2.04rem 0 3.74rem -2.04rem;
li {
span {
font-weight: bold;
}
}
}
&:first-child { &:first-child {
li {
span { li:last-child {
margin-right: 0.3em; margin-top: 3rem;
p {
margin-top: 0.8rem;
}
} }
&:first-child { span {
margin-bottom: 0.5em; margin-right: 0.6rem;
}
} }
&:last-child { &:last-child {
margin-top: 2.4em; border-left: none;
}
}
}
&:not(:first-child) {
padding-left: 5.1rem;
li { li {
margin-bottom: 1.7rem; margin-bottom: 1.5rem;
&:last-child {
margin-top: 2.2rem;
}
&::before {
color: $color-43-100-50;
font-size: 2.2rem;
padding: 0 1rem 0 0;
}
} }
} }
} }
} }
[name='block-team'], [name='block-captain'] { .customer-logo {
label { box-sizing: border-box;
display: none; display: flex;
height: 8.5vh;
justify-content: flex-end;
margin-top: 20px;
text-align: end;
width: 15vw;
} }
sib-display.project-profile-user-avatar { hd-captain>sib-display>div,
circle-team-template>sib-display>div { /* Maybe move it in main.scss. /!\ some fields are different */
display: grid;
grid-column-gap: 1.6rem;
grid-template-columns: 7vh auto;
grid-template-rows: repeat(2, 5.2vh);
>[name='account.picture'] {
align-items: center;
align-self: center; align-self: center;
background-color: $color-213-20-91;
border-radius: 50%;
display: flex;
grid-column: 1 / span 1; grid-column: 1 / span 1;
grid-row: 1 / span 2; grid-row: 1 / span 2;
div {
background-color: $color-0-0-100;
border-radius: 50%;
height: 7vh; height: 7vh;
justify-content: center;
overflow: hidden; overflow: hidden;
position: relative; position: relative;
width: 7vh; width: 7vh;
img { img {
background-color: white;
height: 100%; height: 100%;
left: 0; left: 0;
object-fit: cover; object-fit: cover;
@ -190,44 +83,68 @@
top: 0; top: 0;
width: 100%; width: 100%;
} }
object {
height: 45%;
width: 45%;
} }
} }
project-team-template[name='members'], captain-template[name='captain'] { >[name='sup'] {
display: grid;
grid-column-gap: 1.6rem;
grid-template-columns: 7vh auto;
grid-template-rows: repeat(2, 5.2vh);
> div:nth-child(2) {
align-self: end; align-self: end;
display: flex; display: flex;
grid-column: 2 / span 1; grid-column: 2 / span 1;
grid-row: 1 / span 1; grid-row: 1 / span 1;
margin-bottom: 0.50rem;
span { [name='name'] {
align-self: center;
font-weight: 600; font-weight: 600;
} }
span ~ sib-display { sib-multiple {
> div {
display: flex; display: flex;
margin-left: 1rem; margin-left: 1rem;
sib-multiple [name='name'] { [name='groups'] {
@extend %user-role; @extend %user-role;
} }
} }
} }
}
> span:nth-child(3) { >[name='sub'] {
align-self: start; align-self: start;
grid-column: 2 / span 1; grid-column: 2 / span 1;
grid-row: 2 / span 1; grid-row: 2 / span 1;
margin-top: 0.50rem;
>[name$='profile.city']:not(:empty) {
@include mdi('atom');
align-items: center;
display: flex;
&::before {
color: $color-43-100-50;
margin-right: 0.50rem;
}
}
}
}
ul {
list-style: none;
padding-left: 0;
li {
margin-bottom: 0.5em;
&::before {
color: $color-43-100-50;
font-size: 2.2rem;
margin: 0 1rem 0 0;
}
span {
font-weight: bold;
} }
} }
} }

View File

@ -0,0 +1,8 @@
#project-profile {
.content-box__info {
@extend %padding-block;
display: flex;
flex-direction: column;
}
}

View File

@ -0,0 +1,6 @@
sib-widget(name='hd-business-provider')
template
ul
li #[span Happy Dev Paris:] 5%
li #[span Business provider:] ${await value.name ? await value.name : ""} ${await value.name ? "," : ""} ${await value.fee ? await value.fee:0}%

View File

@ -0,0 +1,11 @@
include hd-user-avatar.pug
sib-widget(name='hd-captain')
template
sib-display(
data-src="${await value}"
fields='account.picture, sup(name), sub(profile.city)'
widget-account.picture='hd-user-avatar'
)

View File

@ -0,0 +1,19 @@
sib-widget(name='hd-customer')
template
div.customer-box
div
h3 Client:
ul
li #[span Business name:]${await value.name}
li #[span Company register:]${await value.companyRegister}
li
span Address:
br
p ${await value.address}
div
h3 Contact:
ul
li(class='mdi-account-outline') #[span ${await value.firstName} ${await value.lastName}], ${await value.role}
li(class='mdi-email-outline')
a(href='mailto:${await value.email}') ${await value.email}
li(class='mdi-cellphone-iphone') ${await value.phone}

View File

@ -1,6 +0,0 @@
sib-widget(name='template-business-provider')
template
ul
li #[span Happy Dev Paris:] 5%
li #[span Business provider:] ${value.name}, ${value.fee ? value.fee:0}%

View File

@ -1,23 +0,0 @@
include hd-user-avatar.pug
sib-widget(name='captain-template')
template
sib-display.project-profile-user-avatar(
data-src="${value ? value['@id'] : ''}"
fields='account.picture',
widget-account.picture='hd-user-avatar'
)
div(name='user.thumb')
sib-display(
data-src="${value ? value['@id'] : ''}"
fields='name'
)
sib-display(
data-src="${value ? value['@id'] : ''}",
fields='name'
nested-field="groups"
)
sib-display(
data-src="${value ? value['@id'] : ''}"
fields='username'
)

View File

@ -1,20 +0,0 @@
sib-widget(name='customer-template')
template
div#clientBox
div
h5 Client:
ul
li #[span Business name:]${value.name}
li #[span Company register:]${value.companyRegister}
li
span Address:
br
p ${value.address}
div
h5 Contact:
ul
li(class='mdi-account-outline') #[span ${value.firstName} ${value.lastName}], ${value.role}
li(class='mdi-email-outline')
a(href='mailto:${value.email}') ${value.email}
li(class='mdi-cellphone-iphone') ${value.phone}

View File

@ -2,23 +2,24 @@ include hd-user-avatar.pug
sib-widget(name='project-team-template') sib-widget(name='project-team-template')
template template
sib-display.project-profile-user-avatar( sib-display(
data-src="${value.user ? value.user['@id'] : ''}" data-src='${await value}'
fields='account.picture', fields='account.picture, sup(user.name, is_admin, user.groups), sub(user.profile.city)'
class-user.name='user-name'
class-is_admin='tag-admin'
class-user.groups='tag-group'
class-user.profile.city='city'
widget-account.picture='hd-user-avatar' widget-account.picture='hd-user-avatar'
) widget-is_admin='hd-user-admin'
div(name='user.thumb') widget-user.groups='hd-user-groups'
sib-display(
data-src="${value.user ? value.user['@id'] : ''}" multiple-user.groups=''
fields='name'
)
sib-display(
data-src="${value.user ? value.user['@id'] : ''}",
fields='name'
nested-field="groups"
)
sib-display(
data-src="${value.user ? value.user['@id'] : ''}"
fields='username'
) )
sib-widget(name='hd-user-admin')
template ${await value ? "Administrator" : ""}
sib-widget(name='hd-user-groups')
template ${await value.name}

Binary file not shown.

After

Width:  |  Height:  |  Size: 800 KiB