major: flatten the project
This commit is contained in:
36
src/views/partials/admin/page-admin-circles-create.pug
Normal file
36
src/views/partials/admin/page-admin-circles-create.pug
Normal file
@ -0,0 +1,36 @@
|
||||
div.content-box__info.flex
|
||||
solid-link(class="backlink right", next='admin-circle-list' data-trans='circle.create.backlink')
|
||||
|
||||
h1.centered(data-trans='circle.create.title')
|
||||
|
||||
div#loader-circles-create.loader.loader-top
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
solid-form.form.button-register(
|
||||
data-src=`${endpoints.circles || endpoints.post.circles}`
|
||||
|
||||
fields='status, name, description'
|
||||
required-status
|
||||
required-name
|
||||
required-description
|
||||
loader-id='loader-circles-create'
|
||||
|
||||
class-status='form-label is-light is-full-width color'
|
||||
class-name='form-label is-light is-full-width input-text-like'
|
||||
class-description='form-label is-light is-full-width input-text-like'
|
||||
|
||||
label-status=''
|
||||
label-name=''
|
||||
label-description=''
|
||||
|
||||
widget-status='hubl-status'
|
||||
|
||||
next='circle'
|
||||
|
||||
submit-button=''
|
||||
|
||||
data-trans='label-status=circle.create.labelStatus;label-name=circle.create.labelName;label-description=circle.create.labelDescription;submit-button=circle.create.buttonSubmit'
|
||||
)
|
126
src/views/partials/admin/page-admin-circles.pug
Normal file
126
src/views/partials/admin/page-admin-circles.pug
Normal file
@ -0,0 +1,126 @@
|
||||
.content-box.flex.full-width.with-form
|
||||
solid-router(default-route='admin-circle-list', hidden)
|
||||
solid-route(name='admin-circle-list')
|
||||
solid-route(name='admin-circle-create')
|
||||
solid-route(name='circle-left')
|
||||
|
||||
div.content-box__header.flex.space-between
|
||||
h1.without-margin(data-trans='circle.list.title')
|
||||
button.mobile-sidebar-button.jsMobileSidebarOpenButton.icon-arrow-left-circle(data-trans='circle.list.buttonMobile')
|
||||
|
||||
include ../circle/page-circle-left.pug
|
||||
|
||||
#admin-circle-list.content-box__height(hidden, data-view="admin-circle-list")
|
||||
|
||||
solid-widget(name='hubl-circle-owner')
|
||||
template
|
||||
solid-display.user-thumb.block.is-spaced(
|
||||
data-src='${await value}'
|
||||
fields='account.picture, sup(name), sub(username)'
|
||||
|
||||
class-account.picture='avatar user-thumb__picture'
|
||||
class-name='user-thumb__name'
|
||||
class-username='user-thumb__username'
|
||||
|
||||
widget-account.picture='hubl-user-avatar'
|
||||
)
|
||||
|
||||
|
||||
div.content-box__info.flex
|
||||
|
||||
div.admin-header.flex
|
||||
|
||||
h3(data-trans='circle.list.subTitle')
|
||||
|
||||
solid-ac-checker(data-src=`${endpoints.circles || (endpoints.post && endpoints.post.circles)}`, permission='acl:Append')
|
||||
solid-link(
|
||||
class='button text-bold text-uppercase reversed button-primary bordered with-icon icon-plus'
|
||||
next='admin-circle-create' data-trans='circle.list.buttonCreate'
|
||||
)
|
||||
|
||||
.table-wrapper
|
||||
.table
|
||||
|
||||
div.table-header.grey-color
|
||||
div.w280(data-trans='circle.list.tableHeader1')
|
||||
div.w280(data-trans='circle.list.tableHeader2')
|
||||
div.w280(data-trans='circle.list.tableHeader3')
|
||||
|
||||
solid-widget(name='hubl-admin-circle-leave-button')
|
||||
template
|
||||
solid-delete(
|
||||
class='circle-leave button text-bold text-uppercase reversed button-secondary bordered with-icon icon-close'
|
||||
data-src="${src}"
|
||||
data-label=''
|
||||
data-trans='data-label=circle.list.buttonQuit'
|
||||
)
|
||||
hubl-reactivity(data-src=`${endpoints.circles || endpoints.get.circles}` target-src='${src}')
|
||||
hubl-reactivity(data-src=`${endpoints.circles || endpoints.get.circles}joinable/` target-src='${src}')
|
||||
hubl-reactivity(bind-user nested-field="circles" target-src='${src}')
|
||||
if (endpoints.post && endpoints.post.circles) && (endpoints.get && endpoints.get.circles)
|
||||
hubl-reactivity(data-src=`${endpoints.post.circles}joinable/` target-src=`${src}`)
|
||||
hubl-reactivity(data-src=`${endpoints.post.circles}` target-src=`${src}`)
|
||||
|
||||
solid-display(
|
||||
class='table-body'
|
||||
|
||||
bind-user
|
||||
nested-field='circles'
|
||||
fields='circle.name, circle.owner, leaveButton'
|
||||
loader-id='loader-admin-circles'
|
||||
|
||||
class-circle.name='w280 border cell-with-name'
|
||||
class-circle.owner='w280 border cell-with-id-card'
|
||||
class-leaveButton='w280 border cell-with-buttons is-spaced'
|
||||
|
||||
action-leaveButton="joinButton"
|
||||
widget-leaveButton="hubl-admin-circle-leave-button"
|
||||
widget-circle.owner='hubl-circle-owner'
|
||||
|
||||
order-by="circle.name"
|
||||
)
|
||||
|
||||
solid-widget(name='hubl-admin-circle-join-button')
|
||||
template
|
||||
solid-form.circle-join.button.text-bold.text-uppercase.reversed.button-primary.bordered.with-icon.icon-arrow-right-circle.flex(
|
||||
data-src='${value}'
|
||||
|
||||
fields='user.username'
|
||||
value-user.username='hubl-workaround-493'
|
||||
widget-user.username='solid-form-hidden'
|
||||
|
||||
submit-button='Rejoindre'
|
||||
data-trans='submit-button=circle.list.buttonJoin'
|
||||
)
|
||||
hubl-reactivity(data-src=`${endpoints.circles || endpoints.get.circles}` target-src='${value}')
|
||||
hubl-reactivity(data-src=`${endpoints.circles || endpoints.get.circles}joinable/` target-src='${value}')
|
||||
hubl-reactivity(bind-user nested-field="circles" target-src='${value}')
|
||||
if (endpoints.post && endpoints.post.circles) && (endpoints.get && endpoints.get.circles)
|
||||
hubl-reactivity(data-src=`${endpoints.post.circles}joinable/` target-src=`${value}`)
|
||||
hubl-reactivity(data-src=`${endpoints.post.circles}` target-src=`${value}`)
|
||||
|
||||
solid-display(
|
||||
class='table-body'
|
||||
|
||||
data-src=`${endpoints.circles || endpoints.get.circles}joinable/`
|
||||
fields='name, owner, members'
|
||||
loader-id='loader-admin-circles'
|
||||
|
||||
class-name='w280 border cell-with-name'
|
||||
class-owner='w280 border cell-with-id-card'
|
||||
widget-owner='hubl-circle-owner'
|
||||
|
||||
class-members='w280 border cell-with-buttons is-spaced'
|
||||
widget-members="hubl-admin-circle-join-button"
|
||||
|
||||
order-by="name"
|
||||
)
|
||||
|
||||
div#loader-admin-circles.loader.loader-top
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
#admin-circle-create.content-box__height(hidden, data-view="admin-circle-create")
|
||||
include page-admin-circles-create.pug
|
54
src/views/partials/admin/page-admin-communities.pug
Normal file
54
src/views/partials/admin/page-admin-communities.pug
Normal file
@ -0,0 +1,54 @@
|
||||
.content-box.flex.full-width.with-form
|
||||
solid-router(default-route='admin-communities-list', hidden)
|
||||
solid-route(name='admin-communities-list')
|
||||
solid-route(name='admin-users-create', use-id)
|
||||
|
||||
div.content-box__header.flex.space-between
|
||||
h1.without-margin(data-trans='communities.title')
|
||||
button.mobile-sidebar-button.jsMobileSidebarOpenButton.icon-arrow-left-circle(data-trans='communities.menuMobile')
|
||||
|
||||
solid-widget(name='hubl-action-community')
|
||||
template
|
||||
solid-ac-checker(data-src="${value}", nested-field="members", permission='acl:Append')
|
||||
solid-link(
|
||||
class='button text-bold text-uppercase reversed button-primary bordered with-icon icon-plus'
|
||||
data-src="${value}"
|
||||
next="admin-users-create"
|
||||
data-trans='communities.linkInvite'
|
||||
)
|
||||
solid-ac-checker(data-src="${value}", nested-field="members", no-permission='acl:Append')
|
||||
div.button.text-bold.text-uppercase.button-disabled(data-trans='communities.noPermission')
|
||||
|
||||
#admin-communities-list.content-box__height(hidden, data-view="admin-communities-list")
|
||||
div.content-box__info.flex
|
||||
div.admin-header.flex
|
||||
h3(data-trans='communities.subTitle')
|
||||
|
||||
.table-wrapper
|
||||
.table
|
||||
div.table-header.grey-color
|
||||
div.w450(data-trans='communities.tableHeader1')
|
||||
div.w370(data-trans='communities.tableHeader2')
|
||||
|
||||
solid-display(
|
||||
class='table-body'
|
||||
bind-user
|
||||
nested-field='communities'
|
||||
fields='community.name, community'
|
||||
loader-id='loader-admin-community'
|
||||
|
||||
class-community.name='w450 border cell-with-name'
|
||||
class-community='w370 border cell-with-buttons is-spaced'
|
||||
widget-community='hubl-action-community'
|
||||
|
||||
order-asc='community.name'
|
||||
)
|
||||
|
||||
div#loader-admin-community.loader.loader-top
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
#admin-users-create.content-box__height(hidden, data-view="admin-users-create")
|
||||
include page-admin-users-create.pug
|
45
src/views/partials/admin/page-admin-projects-create.pug
Normal file
45
src/views/partials/admin/page-admin-projects-create.pug
Normal file
@ -0,0 +1,45 @@
|
||||
div.content-box__info.flex
|
||||
solid-link(class="backlink right" next='admin-project-list' data-trans='project.create.backlink')
|
||||
|
||||
h1.centered(data-trans='project.create.title')
|
||||
|
||||
div#loader-projects-create.loader.loader-top
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
solid-form.form.button-register(
|
||||
data-src=`${endpoints.projects || endpoints.post.projects}`
|
||||
|
||||
fields='status, line-1(customer.name, name), line-2(captain)'
|
||||
required-status
|
||||
required-customer.name
|
||||
required-name
|
||||
required-captain
|
||||
loader-id='loader-projects-create'
|
||||
|
||||
label-status=''
|
||||
widget-status='solid-form-hidden'
|
||||
class-status='form-label is-light is-full-width'
|
||||
value-status="Private"
|
||||
|
||||
label-customer.name=''
|
||||
class-customer.name='form-label is-light is-half-width input-text-like'
|
||||
|
||||
label-name=''
|
||||
class-name='form-label is-light is-half-width input-text-like'
|
||||
|
||||
label-captain=''
|
||||
range-captain=`${endpoints.users || endpoints.get.users}`
|
||||
class-captain='form-label is-light is-half-width'
|
||||
widget-captain='solid-form-dropdown-autocompletion-label'
|
||||
|
||||
class='input-text-like'
|
||||
|
||||
next='project'
|
||||
|
||||
submit-button=''
|
||||
|
||||
data-trans='label-status=project.create.labelStatus;label-customer.name=project.create.labelCustomer;label-name=project.create.labelName;label-captain=project.create.labelCaptain;submit-button=project.create.buttonSubmit'
|
||||
)
|
152
src/views/partials/admin/page-admin-projects.pug
Normal file
152
src/views/partials/admin/page-admin-projects.pug
Normal file
@ -0,0 +1,152 @@
|
||||
.content-box.flex.full-width.with-form
|
||||
solid-router(default-route='admin-project-list', hidden)
|
||||
solid-route(name='admin-project-list')
|
||||
solid-route(name='admin-project-create')
|
||||
solid-route(name='project-left')
|
||||
|
||||
div.content-box__header.flex.space-between
|
||||
h1.without-margin(data-trans='project.list.title')
|
||||
button.mobile-sidebar-button.jsMobileSidebarOpenButton.icon-arrow-left-circle(data-trans='project.list.buttonMobile')
|
||||
|
||||
#project-left(hidden, data-view="project-left")
|
||||
include ../project/page-project-left.pug
|
||||
|
||||
#admin-project-list.content-box__height(hidden, data-view="admin-project-list")
|
||||
|
||||
div.content-box__info.flex
|
||||
div.admin-header.flex
|
||||
h3(data-trans='project.list.subTitle')
|
||||
solid-ac-checker(data-src=`${endpoints.projects || (endpoints.post && endpoints.post.projects)}`, permission='acl:Append')
|
||||
solid-link(
|
||||
class='button text-bold text-uppercase reversed button-primary bordered with-icon icon-plus'
|
||||
next='admin-project-create'
|
||||
data-trans='project.list.buttonCreate'
|
||||
)
|
||||
|
||||
.table-wrapper
|
||||
.table
|
||||
div.table-header.grey-color
|
||||
div.w280(data-trans='project.list.tableHeader1')
|
||||
div.w280(data-trans='project.list.tableHeader2')
|
||||
div.w280(data-trans='project.list.tableHeader3')
|
||||
div.w230(data-trans='project.list.tableHeader4')
|
||||
|
||||
solid-widget(name="hubl-admin-project-leave-button")
|
||||
template
|
||||
solid-delete(
|
||||
class='button text-bold text-uppercase reversed button-secondary bordered with-icon icon-close'
|
||||
data-src="${src}"
|
||||
data-label=''
|
||||
data-trans='data-label=project.list.buttonQuit'
|
||||
)
|
||||
hubl-reactivity(data-src=`${endpoints.projects || endpoints.get.projects}` target-src='${src}')
|
||||
hubl-reactivity(data-src=`${endpoints.projects || endpoints.get.projects}joinable/` target-src='${src}')
|
||||
hubl-reactivity(bind-user nested-field="projects" target-src='${src}')
|
||||
if (endpoints.post && endpoints.post.projects) && (endpoints.get && endpoints.get.projects)
|
||||
hubl-reactivity(data-src=`${endpoints.post.projects}joinable/` target-src=`${src}`)
|
||||
hubl-reactivity(data-src=`${endpoints.post.projects}` target-src=`${src}`)
|
||||
|
||||
solid-widget(name='hubl-project-captain')
|
||||
template
|
||||
solid-display.user-thumb.block.is-spaced(
|
||||
data-src='${await value}'
|
||||
fields='account.picture, sup(name), sub(username)'
|
||||
|
||||
class-account.picture='avatar user-thumb__picture'
|
||||
class-name='user-thumb__name'
|
||||
class-username='user-thumb__username'
|
||||
|
||||
widget-account.picture='hubl-user-avatar'
|
||||
)
|
||||
|
||||
solid-widget(name='hubl-project-admins')
|
||||
template
|
||||
solid-display(
|
||||
data-src='${value}'
|
||||
fields='user'
|
||||
search-fields='is_admin'
|
||||
search-value-is_admin='true'
|
||||
search-widget-is_admin='solid-form-hidden'
|
||||
widget-user='hubl-project-captain'
|
||||
)
|
||||
|
||||
solid-widget(name='hubl-admin-project-leave-button')
|
||||
template
|
||||
solid-delete(
|
||||
class='button text-bold text-uppercase reversed button-secondary bordered with-icon icon-close'
|
||||
data-src="${src}"
|
||||
data-label=''
|
||||
data-trans='data-label=project.list.buttonQuit'
|
||||
)
|
||||
|
||||
solid-display(
|
||||
class='table-body'
|
||||
|
||||
bind-user
|
||||
nested-field="projects"
|
||||
fields='project.name, project.members, project.captain, leaveButton'
|
||||
loader-id='loader-admin-projects'
|
||||
|
||||
class-project.name='w280 cell border cell-with-name'
|
||||
class-project.members='w280 cell border cell-with-id-card'
|
||||
class-project.captain='w280 cell border cell-with-id-card'
|
||||
class-leaveButton='w230 cell border cell-with-buttons is-spaced'
|
||||
|
||||
action-leaveButton="joinButton"
|
||||
widget-leaveButton="hubl-admin-project-leave-button"
|
||||
|
||||
widget-project.captain='hubl-project-captain'
|
||||
widget-project.members='hubl-project-admins'
|
||||
|
||||
order-by="project.name"
|
||||
)
|
||||
|
||||
solid-widget(name='hubl-admin-project-join-button')
|
||||
template
|
||||
solid-form.button.text-bold.text-uppercase.reversed.button-primary.bordered.with-icon.icon-arrow-right-circle.flex(
|
||||
data-src='${src}'
|
||||
nested-field="members"
|
||||
|
||||
fields='user.username'
|
||||
value-user.username='hubl-workaround-493'
|
||||
widget-user.username='solid-form-hidden'
|
||||
|
||||
submit-button=''
|
||||
data-trans='submit-button=project.list.buttonJoin'
|
||||
)
|
||||
hubl-reactivity(data-src=`${endpoints.projects || endpoints.get.projects}` target-src='${src}')
|
||||
hubl-reactivity(data-src=`${endpoints.projects || endpoints.get.projects}joinable/` target-src='${src}')
|
||||
hubl-reactivity(bind-user nested-field="projects" target-src='${src}')
|
||||
if (endpoints.post && endpoints.post.projects) && (endpoints.get && endpoints.get.projects)
|
||||
hubl-reactivity(data-src=`${endpoints.post.projects}joinable/` target-src=`${value}`)
|
||||
hubl-reactivity(data-src=`${endpoints.post.projects}` target-src=`${value}`)
|
||||
|
||||
solid-display(
|
||||
class='table-body'
|
||||
|
||||
data-src=`${endpoints.projects || endpoints.get.projects}joinable/`
|
||||
fields='name, members, captain, joinButton'
|
||||
loader-id='loader-admin-projects'
|
||||
|
||||
class-name='w280 cell border cell-with-name'
|
||||
class-members='w280 cell border cell-with-id-card'
|
||||
class-captain='w280 cell border cell-with-id-card'
|
||||
class-joinButton='w230 cell border cell-with-buttons is-spaced'
|
||||
|
||||
action-joinButton="joinButton" # Workaround: I need members two times
|
||||
widget-joinButton="hubl-admin-project-join-button"
|
||||
|
||||
widget-captain='hubl-project-captain'
|
||||
widget-members='hubl-project-admins'
|
||||
|
||||
order-by="name"
|
||||
)
|
||||
|
||||
div#loader-admin-projects.loader.loader-top
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
#admin-project-create(hidden, data-view="admin-project-create")
|
||||
include page-admin-projects-create.pug
|
65
src/views/partials/admin/page-admin-users-create.pug
Normal file
65
src/views/partials/admin/page-admin-users-create.pug
Normal file
@ -0,0 +1,65 @@
|
||||
div.content-box__info.flex
|
||||
solid-link(class='backlink right', next='admin-communities-list' data-trans='user.create.backlink')
|
||||
|
||||
solid-display.h1-like.centered(
|
||||
bind-resources
|
||||
fields='text, name'
|
||||
value-text=''
|
||||
data-trans='value-text=user.create.title'
|
||||
loader-id='loader-users-title'
|
||||
)
|
||||
|
||||
div#loader-users-title.loader.loader
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
div#loader-users-create.loader.loader-top
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
solid-widget(name='hubl-username-field')
|
||||
template
|
||||
label(data-trans='user.create.labelUsername')
|
||||
input(type="text" title='' pattern="[a-zA-Z0-9]+" label="" data-trans='title=user.create.labelUsernameTitle;label=user.create.labelUsername' name="username" required value="\${value}" data-holder)
|
||||
|
||||
solid-widget(name='hubl-email-field')
|
||||
template
|
||||
label(data-trans='user.create.labelEmail')
|
||||
input(type="email" label='' data-trans='label=user.create.labelEmail' name="email" required value="\${value}" data-holder)
|
||||
|
||||
solid-form.form.button-register#selected-community(
|
||||
bind-resources
|
||||
nested-field='members'
|
||||
|
||||
fields='line-1(user.first_name, user.last_name), line-2(user.username, user.email), user.password'
|
||||
required-user.first_name
|
||||
required-user.last_name
|
||||
required-user.username
|
||||
required-user.email
|
||||
loader-id='loader-users-create'
|
||||
|
||||
class-user.first_name='form-label is-light is-half-width input-text-like'
|
||||
class-user.last_name='form-label is-light is-half-width input-text-like'
|
||||
class-user.username='form-label is-light is-half-width input-text-like'
|
||||
class-user.email='form-label is-light is-half-width input-text-like'
|
||||
|
||||
label-user.first_name=''
|
||||
label-user.last_name=''
|
||||
label-user.username=''
|
||||
label-user.email=''
|
||||
|
||||
value-user.password=''
|
||||
widget-user.password='solid-form-hidden'
|
||||
|
||||
widget-user.username='hubl-username-field'
|
||||
widget-user.email='hubl-email-field'
|
||||
|
||||
next='admin-communities-list'
|
||||
|
||||
submit-button=''
|
||||
data-trans='label-user.first_name=user.create.labelFirstname;label-user.last_name=user.create.labelLastname;label-user.username=user.create.labelUsername;label-user.email=user.create.labelEmail;submit-button=user.create.buttonSubmit'
|
||||
)
|
8
src/views/partials/circle/page-circle-chat.pug
Normal file
8
src/views/partials/circle/page-circle-chat.pug
Normal file
@ -0,0 +1,8 @@
|
||||
.chat-view
|
||||
solid-xmpp-chat(
|
||||
data-authentication='login',
|
||||
data-auto-login='true',
|
||||
data-websocket-url=`${xmppWebsocket || 'wss://jabber.happy-dev.fr/xmpp-websocket'}`,
|
||||
data-i18n='en',
|
||||
bind-resources
|
||||
)
|
103
src/views/partials/circle/page-circle-edit.pug
Normal file
103
src/views/partials/circle/page-circle-edit.pug
Normal file
@ -0,0 +1,103 @@
|
||||
div.content-box__info
|
||||
|
||||
solid-widget(name="circle-edit-members-delete")
|
||||
template
|
||||
solid-ac-checker(permission="acl:Delete" data-src="${src}")
|
||||
solid-delete(
|
||||
class='button text-bold text-uppercase reversed button-secondary bordered with-icon icon-close'
|
||||
data-src="${src}"
|
||||
data-label=''
|
||||
data-trans='data-label=circle.edit.buttonDelete'
|
||||
)
|
||||
|
||||
solid-link(class="backlink right", bind-resources, next='circle-profile' data-trans='circle.edit.backlink')
|
||||
|
||||
solid-ac-checker(permission='acl:Write', bind-resources)
|
||||
h1(data-trans='circle.edit.title')
|
||||
|
||||
div#loader-circle-edit.loader.loader-top
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
solid-form.form.button-register(
|
||||
bind-resources
|
||||
|
||||
fields='status, line-1(name, owner), description'
|
||||
required-status
|
||||
required-name
|
||||
required-owner
|
||||
required-description
|
||||
range-owner=`${endpoints.users || endpoints.get.users}`
|
||||
|
||||
label-status=''
|
||||
widget-status='hubl-status'
|
||||
|
||||
label-name=''
|
||||
label-owner=''
|
||||
label-description=''
|
||||
|
||||
class-name='form-label is-light is-half-width input-text-like'
|
||||
class-owner='form-label is-light is-half-width member-select color'
|
||||
class-description='form-label is-light is-full-width input-text-like'
|
||||
class-status='form-label is-light is-full-width member-select color'
|
||||
|
||||
widget-owner='solid-form-dropdown-autocompletion-label'
|
||||
|
||||
partial=''
|
||||
|
||||
submit-button='Enregistrer'
|
||||
next='circle-information'
|
||||
|
||||
data-trans='label-name=circle.edit.labelStatus;label-name=circle.edit.labelName;label-owner=circle.edit.labelOwner;label-description=circle.edit.labelDescription;submit-button=circle.edit.buttonSubmit'
|
||||
)
|
||||
|
||||
h2(data-trans='circle.edit.subTitle')
|
||||
|
||||
solid-ac-checker(permission='acl:Append', bind-resources, nested-field='members')
|
||||
solid-form.block.select-add(
|
||||
bind-resources
|
||||
nested-field='members'
|
||||
fields='user'
|
||||
range-user=`${endpoints.users || endpoints.get.users}`
|
||||
|
||||
class-user='team'
|
||||
widget-user='solid-form-dropdown-autocompletion'
|
||||
|
||||
submit-button=''
|
||||
data-trans='submit-button=circle.edit.buttonAddMember'
|
||||
)
|
||||
|
||||
.table-wrapper
|
||||
.table
|
||||
div.table-header.grey-color
|
||||
div.w280(data-trans='circle.edit.tableHeader1')
|
||||
div.w162(data-trans='circle.edit.tableHeader2')
|
||||
|
||||
solid-display(
|
||||
class='table-body'
|
||||
bind-resources
|
||||
nested-field='members'
|
||||
fields='classGroup(classGrid(user.account.picture, sup(user.name, user.groups), sub(user.communities))), self'
|
||||
loader-id='loader-circle-edit'
|
||||
|
||||
class-classGroup='w280 cell border cell-with-id-card user-thumb is-spaced'
|
||||
class-user.account.picture='user-thumb__picture avatar'
|
||||
class-user.name='user-thumb__name'
|
||||
class-user.groups='user-thumb__groups'
|
||||
multiple-user.communities
|
||||
multiple-user.communities-fields="community.name"
|
||||
|
||||
widget-user.account.picture='hubl-user-avatar'
|
||||
|
||||
multiple-user.groups
|
||||
multiple-user.groups-fields='name'
|
||||
|
||||
action-self='self'
|
||||
widget-self='circle-edit-members-delete'
|
||||
)
|
||||
|
||||
//- Only to show the table grid
|
||||
div.w162.cell.border
|
||||
|
10
src/views/partials/circle/page-circle-events.pug
Normal file
10
src/views/partials/circle/page-circle-events.pug
Normal file
@ -0,0 +1,10 @@
|
||||
#circle-listevents
|
||||
solid-event(
|
||||
class='w700'
|
||||
bind-resources
|
||||
nested-field="events"
|
||||
range-event-type=`${endpoints.typeevents || (endpoints.get && endpoints.get.typeevents)}`
|
||||
range-event-circle=`${endpoints.circles || (endpoints.get && endpoints.get.circles)}`
|
||||
upload-dir=`${endpoints.uploads || (endpoints.get && endpoints.get.uploads)}`
|
||||
id-prefix='circles'
|
||||
)
|
10
src/views/partials/circle/page-circle-left.pug
Normal file
10
src/views/partials/circle/page-circle-left.pug
Normal file
@ -0,0 +1,10 @@
|
||||
#circle-left(hidden, data-view="circle-left")
|
||||
div.content-box__info.flex(style="padding: 15px")
|
||||
|
||||
p(data-trans='circle.left.paragraphQuit')
|
||||
p
|
||||
span(data-trans='circle.left.paragraphJoin')
|
||||
span
|
||||
solid-link(next="admin-circle-list" data-trans='circle.left.admin')
|
||||
span
|
||||
span(data-trans='circle.left.paragraphContact')
|
9
src/views/partials/circle/page-circle-polls.pug
Normal file
9
src/views/partials/circle/page-circle-polls.pug
Normal file
@ -0,0 +1,9 @@
|
||||
#circle-polls
|
||||
solid-poll(
|
||||
class='w700'
|
||||
id-prefix='circles'
|
||||
bind-resources
|
||||
nested-field="polls"
|
||||
range-base-polls=`${endpoints.pollRangeBase || (endpoints.get && endpoints.get.pollRangeBase)}`
|
||||
upload-dir=`${endpoints.uploads || (endpoints.get && endpoints.get.uploads)}`
|
||||
)
|
117
src/views/partials/circle/page-circle-profile.pug
Normal file
117
src/views/partials/circle/page-circle-profile.pug
Normal file
@ -0,0 +1,117 @@
|
||||
solid-router(default-route='circle-profile', hidden)
|
||||
solid-route(name='circle-profile')
|
||||
solid-route(name='circle-edit')
|
||||
|
||||
#circle-profile(hidden, data-view="circle-profile")
|
||||
|
||||
solid-widget(name='hubl-circle-team-contact')
|
||||
template
|
||||
solid-link(data-src='\${value}', next='messages')
|
||||
|
||||
.content-box__info.flex
|
||||
|
||||
div#loader-circle-profile.loader
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
.flex.space-between.with-padding.mobile-vertical-align
|
||||
solid-display.mobile-margin__bottom(
|
||||
bind-resources
|
||||
fields='creationDateSet(title, creationDate)'
|
||||
loader-id='loader-circle-profile'
|
||||
|
||||
class-title='word-spacing-right'
|
||||
|
||||
value-title=''
|
||||
data-trans='value-title=circle.profile.creationDate'
|
||||
|
||||
widget-creationDate='solid-display-value-date'
|
||||
)
|
||||
solid-ac-checker(permission='acl:Append', bind-resources, nested-field='members')
|
||||
solid-ac-checker(permission='acl:Delete', bind-resources)
|
||||
solid-link(class='button mobile-full-width text-bold text-uppercase reversed button-primary bordered with-icon icon-pencil' next='circle-edit' bind-resources data-trans='circle.profile.buttonModify')
|
||||
solid-ac-checker(no-permission='acl:Delete', bind-resources)
|
||||
solid-link(class='button mobile-full-width text-bold text-uppercase reversed button-primary bordered with-icon icon-pencil' next='circle-edit' bind-resources data-trans='circle.profile.buttonAdd')
|
||||
|
||||
|
||||
div.flex.desktop-button__end
|
||||
solid-ac-checker(permission='acl:Delete', bind-resources)
|
||||
solid-delete(
|
||||
class='button mobile-full-width text-bold text-uppercase button-primary bordered with-icon icon-trash'
|
||||
bind-resources
|
||||
data-label=''
|
||||
data-trans='data-label=circle.profile.buttonDelete'
|
||||
next='admin-circles'
|
||||
)
|
||||
|
||||
solid-widget(name='hubl-circle-leave-button')
|
||||
template
|
||||
solid-ac-checker(no-permission='acl:Delete', data-src="${src}", nested-field="circle")
|
||||
solid-delete(
|
||||
class='button mobile-full-width desktop-btn-margin__left text-bold text-uppercase reversed button-secondary bordered with-icon icon-close'
|
||||
data-src="${src}"
|
||||
data-label=''
|
||||
data-trans='data-label=circle.profile.buttonQuit'
|
||||
next='circle-left'
|
||||
)
|
||||
|
||||
solid-widget(name='hubl-circle-join-button')
|
||||
template
|
||||
button.button.desktop-btn-margin__left.text-bold.text-uppercase.reversed.button-primary.bordered.with-icon.icon-arrow-right-circle.flex
|
||||
solid-form(
|
||||
data-src=''
|
||||
nested-field='members'
|
||||
|
||||
fields='user.username'
|
||||
value-user.username='hubl-workaround-493'
|
||||
widget-user.username='solid-form-hidden'
|
||||
|
||||
submit-button=''
|
||||
data-trans='submit-button=circle.profile.buttonJoin'
|
||||
)
|
||||
|
||||
solid-display(
|
||||
bind-resources
|
||||
nested-field='members'
|
||||
fields='relation'
|
||||
action-relation='relation'
|
||||
widget-relation='hubl-circle-leave-button'
|
||||
search-fields='user'
|
||||
search-widget-user='solid-form-hidden'
|
||||
search-value-user=""
|
||||
empty-widget='hubl-circle-join-button'
|
||||
hubl-inherit-bind-resources='hubl-circle-join-button'
|
||||
hubl-inherit-user-id="search-value-user"
|
||||
)
|
||||
|
||||
h2(data-trans='circle.profile.subTitle')
|
||||
|
||||
solid-widget(name='hubl-circle-user-admin')
|
||||
template ${value ? "Administrateur" : ""}
|
||||
|
||||
solid-display.block(
|
||||
bind-resources
|
||||
nested-field='members'
|
||||
loader-id='loader-circle-profile'
|
||||
fields='classGroup(user.account.picture, sup(user.name, user, is_admin), sub(user.communities))'
|
||||
|
||||
widget-user='hubl-circle-team-contact'
|
||||
|
||||
class-classGroup='user-thumb is-spaced'
|
||||
class-user.account.picture='avatar user-thumb__picture'
|
||||
class-user.name='user-thumb__name'
|
||||
class-user='user-thumb__send'
|
||||
class-is_admin='user-thumb__admin'
|
||||
multiple-user.communities
|
||||
multiple-user.communities-fields="community.name"
|
||||
|
||||
widget-classGroup='solid-set-div'
|
||||
widget-user.account.picture='hubl-user-avatar'
|
||||
widget-is_admin='hubl-circle-user-admin'
|
||||
)
|
||||
|
||||
|
||||
#circle-edit.content-box__height(hidden, data-view="circle-edit")
|
||||
include page-circle-edit.pug
|
11
src/views/partials/circle/page-circle-resources.pug
Normal file
11
src/views/partials/circle/page-circle-resources.pug
Normal file
@ -0,0 +1,11 @@
|
||||
#circle-listresources
|
||||
solid-resource(
|
||||
class='w700'
|
||||
bind-resources
|
||||
nested-field="resources"
|
||||
range-resource-type=`${endpoints.resourcestypes || (endpoints.get && endpoints.get.resourcestypes)}`
|
||||
range-resource-keyword=`${endpoints.resourceskeywords || (endpoints.get && endpoints.get.resourceskeywords)}`
|
||||
range-resource-circle=`${endpoints.circles || (endpoints.get && endpoints.get.circles)}`
|
||||
upload-dir=`${endpoints.uploads || (endpoints.get && endpoints.get.uploads)}`
|
||||
id-prefix='circles'
|
||||
)
|
44
src/views/partials/header.pug
Normal file
44
src/views/partials/header.pug
Normal file
@ -0,0 +1,44 @@
|
||||
.header-left
|
||||
.logo
|
||||
solid-link(next='dashboard')
|
||||
img(src=`${clientLogo || '/images/logo.webp'}` style=`max-height:${clientLogoHeight || '74px'}`)
|
||||
|
||||
span.beta-tag(data-trans='header.beta')
|
||||
|
||||
solid-notifications.notLoggedIn(
|
||||
nested-field="inbox"
|
||||
bind-user
|
||||
)
|
||||
|
||||
details#user-controls.notLoggedIn
|
||||
summary(tabindex='0' role='button')
|
||||
solid-display#user-controls__profile(
|
||||
fields='first_name, account.picture'
|
||||
class-first_name='flex'
|
||||
class-account.picture='avatar'
|
||||
widget-account.picture='hubl-user-avatar'
|
||||
bind-user
|
||||
)
|
||||
#user-controls__panel
|
||||
nav(role="user's functionalities menu")
|
||||
ul
|
||||
if (endpoints.uploads || (endpoints.get && endpoints.get.uploads)) && (endpoints.skills || (endpoints.get && endpoints.get.skills)) && (endpoints.users || (endpoints.get && endpoints.get.users))
|
||||
li
|
||||
solid-link(next='profile' data-trans='header.myProfile')
|
||||
li
|
||||
solid-link(next='admin' data-trans='header.admin')
|
||||
li
|
||||
solid-link(next='about' data-trans='header.about')
|
||||
button(role='log out' onclick="document.querySelector('sib-auth').logout();" data-trans='header.logOut')
|
||||
|
||||
button.loggedIn(role='log in' onclick="document.querySelector('sib-auth').login();" data-trans='header.logIn')
|
||||
|
||||
button.notLoggedIn.mobile-menu-icon.icon-menu#toggleMainMenu
|
||||
|
||||
sib-auth(style='display:none!important')
|
||||
sib-auth-provider(
|
||||
data-authority=`${authority}`
|
||||
data-id=`${authorityName || "authority"}`
|
||||
data-client-name=`${clientName || "Hubl"}`
|
||||
)
|
||||
|
179
src/views/partials/menu-left.pug
Normal file
179
src/views/partials/menu-left.pug
Normal file
@ -0,0 +1,179 @@
|
||||
solid-widget(name='hubl-counter')
|
||||
template
|
||||
solid-badge(data-src="${value == 'badge' ? src : value}")
|
||||
|
||||
solid-widget(name='hubl-menu-jabberid')
|
||||
template
|
||||
div.hidden(
|
||||
data-jabberID="${value}"
|
||||
)
|
||||
|
||||
solid-widget(name='hubl-menu-publicprivate')
|
||||
template
|
||||
div ${value == 'Public' ? '#' : ''}
|
||||
|
||||
solid-widget(name='hubl-create')
|
||||
template
|
||||
p.create
|
||||
span(data-trans="menuLeft.emptyCircleProject.notPartOf")
|
||||
span ${value}.
|
||||
br
|
||||
span(data-trans="menuLeft.emptyCircleProject.createNew")
|
||||
span
|
||||
solid-link(next="${value == 'projet' ? 'admin-projects' : 'admin-circles'}", data-trans="menuLeft.emptyCircleProject.adminPanel")
|
||||
|
||||
solid-widget(name='hubl-menu-fix-url-circle')
|
||||
template
|
||||
solid-link(data-src="${value}" next="circle")
|
||||
solid-display(
|
||||
data-src='${value}'
|
||||
fields='status, name, jabberID, badge'
|
||||
value-badge='${value}'
|
||||
widget-status='hubl-menu-publicprivate'
|
||||
widget-badge='hubl-counter'
|
||||
widget-jabberID='hubl-menu-jabberid'
|
||||
widget-name='solid-display-div'
|
||||
order-by="name"
|
||||
)
|
||||
|
||||
solid-widget(name='hubl-menu-fix-url-project')
|
||||
template
|
||||
solid-link(data-src="${value}" next="project")
|
||||
solid-display(
|
||||
data-src='${value}'
|
||||
fields='status, project(customer.name, name, jabberID), badge'
|
||||
class-name='project-name'
|
||||
class-customer.name='project-customer'
|
||||
value-badge='${value}'
|
||||
widget-status='hubl-menu-publicprivate'
|
||||
widget-jabberID='hubl-menu-jabberid'
|
||||
widget-badge='hubl-counter'
|
||||
widget-name='solid-display-div'
|
||||
order-by="customer.name"
|
||||
)
|
||||
|
||||
|
||||
solid-router#navbar-router(default-route='dashboard')
|
||||
if endpoints.dashboards || (endpoints.get && endpoints.get.dashboards)
|
||||
solid-route.menu(name='dashboard')
|
||||
div.menu-label(data-trans="menuLeft.dashboard")
|
||||
div.menu-icon.icon-home
|
||||
div.divider
|
||||
if publicDirectory && (endpoints.users || (endpoints.get && endpoints.get.users))
|
||||
solid-route.menu(name='members')
|
||||
div.menu-label(data-trans="menuLeft.profileDirectory")
|
||||
div.menu-icon.icon-people
|
||||
div.divider
|
||||
if endpoints.joboffers || (endpoints.get && endpoints.get.joboffers)
|
||||
solid-route.menu(name='job-offers', rdf-type='hd:joboffer')
|
||||
div.menu-label(data-trans="menuLeft.jobBoard")
|
||||
div.menu-icon.icon-briefcase
|
||||
div.divider
|
||||
if endpoints.resources || (endpoints.get && endpoints.get.resources)
|
||||
solid-route.menu(name='resources')
|
||||
div.menu-label(data-trans="menuLeft.resources")
|
||||
div.menu-icon.icon-docs
|
||||
div.divider
|
||||
if endpoints.polls || (endpoints.get && endpoints.get.polls)
|
||||
solid-route.menu(name='polls')
|
||||
div.menu-label(data-trans="menuLeft.gov")
|
||||
div.menu-icon.icon-bubbles
|
||||
div.divider
|
||||
if endpoints.events || (endpoints.get && endpoints.get.events)
|
||||
solid-route.menu(name='events')
|
||||
div.menu-label(data-trans="menuLeft.events")
|
||||
div.menu-icon.icon-calendar
|
||||
div.divider
|
||||
if endpoints.projects || (endpoints.get && endpoints.get.projects)
|
||||
div.menu-wrapper
|
||||
solid-link
|
||||
//- (next='admin-project-list')
|
||||
div.menu
|
||||
div.menu-chevron
|
||||
div.menu-icon.icon-arrow-up
|
||||
//- div.menu-icon.icon-arrow-right-circle
|
||||
div.menu-label(data-trans="menuLeft.projects")
|
||||
div.menu-icon.icon-folder-alt
|
||||
solid-route(name='project', rdf-type='hd:project', use-id='', hidden)
|
||||
div.sub-menu.menu-notification
|
||||
div#loader-projects.loader.loader-menu
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
solid-display.project-tab(
|
||||
bind-user
|
||||
nested-field='projects'
|
||||
fields='project'
|
||||
loader-id='loader-projects'
|
||||
empty-widget='hubl-create'
|
||||
empty-value=''
|
||||
data-trans="empty-value=menuLeft.emptyCircleProject.project"
|
||||
widget-project='hubl-menu-fix-url-project'
|
||||
order-by="project.customer.name"
|
||||
)
|
||||
div.divider
|
||||
if endpoints.circles || (endpoints.get && endpoints.get.circles)
|
||||
div.menu-wrapper
|
||||
solid-link
|
||||
//- (next='admin-circle-list')
|
||||
div.menu
|
||||
div.menu-chevron
|
||||
div.menu-icon.icon-arrow-up
|
||||
//- div.menu-icon.icon-arrow-right-circle
|
||||
div.menu-label(data-trans="menuLeft.circles")
|
||||
div.menu-icon.icon-folder-alt
|
||||
solid-route(name='circle', rdf-type='hd:circle', use-id='', hidden)
|
||||
div.sub-menu.menu-notification
|
||||
div#loader-circles.loader.loader-menu
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
solid-display.circle-tab(
|
||||
bind-user
|
||||
nested-field='circles'
|
||||
fields='circle'
|
||||
loader-id='loader-circles'
|
||||
empty-widget='hubl-create'
|
||||
empty-value=''
|
||||
data-trans="empty-value=menuLeft.emptyCircleProject.circle"
|
||||
widget-circle='hubl-menu-fix-url-circle'
|
||||
order-by="circle.name"
|
||||
)
|
||||
div.divider
|
||||
if endpoints.users || (endpoints.get && endpoints.get.users)
|
||||
div.menu-wrapper
|
||||
div.menu
|
||||
div.menu-chevron
|
||||
div.menu-icon.icon-arrow-up
|
||||
div.menu-label(data-trans="menuLeft.messages")
|
||||
div.menu-icon.icon-envelope-letter
|
||||
solid-route(name='messages', rdf-type='foaf:user', use-id='', hidden)
|
||||
div.sub-menu.menu-notification
|
||||
div#loader-messages.loader.loader-menu
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
solid-display.nosub.message-tab(
|
||||
data-src=`${endpoints.users || (endpoints.get && endpoints.get.users)}`
|
||||
fields='name, chatProfile.jabberID, badge'
|
||||
loader-id='loader-messages'
|
||||
search-fields="name"
|
||||
search-label-name=""
|
||||
data-trans="search-label-name=menuLeft.search"
|
||||
search-widget-name="hubl-search-users"
|
||||
widget-name='solid-display-div'
|
||||
widget-badge='hubl-counter'
|
||||
widget-chatProfile.jabberID='hubl-menu-jabberid'
|
||||
action-badge='badge'
|
||||
order-by='username'
|
||||
next='messages'
|
||||
paginate-by='10'
|
||||
)
|
||||
div.divider
|
||||
|
||||
solid-route(name='admin', hidden)
|
||||
solid-route.menu(name='profile', hidden)
|
||||
solid-route(name='about', hidden)
|
4
src/views/partials/notifications.pug
Normal file
4
src/views/partials/notifications.pug
Normal file
@ -0,0 +1,4 @@
|
||||
//- Templates for notifications
|
||||
|
||||
include notifications/message-circle.pug
|
||||
include notifications/message-private.pug
|
11
src/views/partials/notifications/message-circle.pug
Normal file
11
src/views/partials/notifications/message-circle.pug
Normal file
@ -0,0 +1,11 @@
|
||||
solid-notifications-template(data-rdf-type='hd:circle')
|
||||
template
|
||||
.solid-notification__avatar
|
||||
| ${await author['account.foaf:depiction'] ? `<img src="${await author['account.foaf:depiction']}" style="max-width:100%; max-height: 100%;" />` : `<object type="image/svg+xml" data="/images/alien.svg"></object>`}
|
||||
.solid-notification__content
|
||||
.solid-notification__title ${await author.name}
|
||||
span.solid-notification__title__side
|
||||
span(data-trans='notification.circle.in')
|
||||
span.solid-notification__title__icon ${(await object.status) == 'Public' ? '#' : ''}
|
||||
| ${await object.name}
|
||||
p.solid-notification__summary ${summary}
|
8
src/views/partials/notifications/message-private.pug
Normal file
8
src/views/partials/notifications/message-private.pug
Normal file
@ -0,0 +1,8 @@
|
||||
solid-notifications-template(data-rdf-type='foaf:user')
|
||||
template
|
||||
.solid-notification__avatar
|
||||
| ${await author['account.foaf:depiction'] ? `<img src="${await author['account.foaf:depiction']}" style="max-width:100%; max-height: 100%;" />` : `<object type="image/svg+xml" data="/images/alien.svg"></object>`}
|
||||
.solid-notification__content
|
||||
.solid-notification__title ${await author.name}
|
||||
span.solid-notification__title__side(data-trans='notification.private.private')
|
||||
p.solid-notification__summary ${summary}
|
8
src/views/partials/project/page-project-chat.pug
Normal file
8
src/views/partials/project/page-project-chat.pug
Normal file
@ -0,0 +1,8 @@
|
||||
.content-box.flex.full-width.chat-view
|
||||
solid-xmpp-chat(
|
||||
data-authentication='login',
|
||||
data-auto-login='true',
|
||||
data-websocket-url=`${xmppWebsocket || 'wss://jabber.happy-dev.fr/xmpp-websocket'}`,
|
||||
data-i18n='en',
|
||||
bind-resources
|
||||
)
|
90
src/views/partials/project/page-project-edit.pug
Normal file
90
src/views/partials/project/page-project-edit.pug
Normal file
@ -0,0 +1,90 @@
|
||||
div.content-box__info
|
||||
|
||||
solid-widget(name="project-edit-members-delete")
|
||||
template
|
||||
solid-ac-checker(permission="acl:Delete" data-src="${src}")
|
||||
solid-delete(
|
||||
class='button text-bold text-uppercase reversed button-secondary bordered with-icon icon-close'
|
||||
data-src="${src}"
|
||||
data-label=''
|
||||
data-trans='data-label=project.edit.buttonDelete'
|
||||
)
|
||||
|
||||
solid-link(class='backlink right', bind-resources, next='project-profile' data-trans='project.edit.backlink')
|
||||
|
||||
solid-ac-checker(permission='acl:Write', bind-resources)
|
||||
h1(data-trans='project.edit.title')
|
||||
|
||||
div#loader-project-edit.loader.loader-top
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
solid-form.form.button-register(
|
||||
bind-resources
|
||||
|
||||
fields='line-1(customer.name, name)'
|
||||
required-customer.name
|
||||
required-name
|
||||
|
||||
label-name=''
|
||||
class-name='form-label is-light is-half-width input-text-like'
|
||||
|
||||
label-customer.name=''
|
||||
class-customer.name='form-label is-light is-half-width input-text-like'
|
||||
|
||||
partial=""
|
||||
|
||||
submit-button='Enregistrer'
|
||||
next='project-information'
|
||||
|
||||
data-trans='label-name=project.edit.labelName;label-customer.name=project.edit.labelCustomer;submit-button=project.edit.buttonSubmit'
|
||||
)
|
||||
|
||||
h2(data-trans='project.edit.subTitle')
|
||||
|
||||
solid-ac-checker(permission='acl:Append', bind-resources, nested-field='members')
|
||||
solid-form.block.select-add(
|
||||
bind-resources
|
||||
nested-field='members'
|
||||
fields='user'
|
||||
range-user=`${endpoints.users || endpoints.get.users}`
|
||||
|
||||
class-user='team'
|
||||
label-user=''
|
||||
widget-user='solid-form-dropdown-autocompletion'
|
||||
|
||||
submit-button=''
|
||||
data-trans='submit-button=project.edit.buttonAddMember'
|
||||
)
|
||||
|
||||
.table-wrapper
|
||||
.table
|
||||
div.table-header.grey-color
|
||||
div.w280(data-trans='project.edit.tableHeader1')
|
||||
div.w162(data-trans='project.edit.tableHeader2')
|
||||
|
||||
//-class='table-body'
|
||||
solid-display(
|
||||
class='table-body'
|
||||
bind-resources
|
||||
nested-field='members'
|
||||
fields='classGroup(classGrid(user.account.picture, sup(user.name, user.groups), sub(user.communities))), self'
|
||||
loader-id='loader-project-edit'
|
||||
|
||||
class-classGroup='w280 cell border cell-with-id-card user-thumb is-spaced'
|
||||
class-user.account.picture='user-thumb__picture avatar'
|
||||
class-user.name='user-thumb__name'
|
||||
class-user.groups='user-thumb__groups'
|
||||
multiple-user.communities
|
||||
multiple-user.communities-fields="community.name"
|
||||
|
||||
widget-user.account.picture='hubl-user-avatar'
|
||||
|
||||
multiple-user.groups
|
||||
multiple-user.groups-fields='name'
|
||||
|
||||
action-self='self'
|
||||
widget-self='project-edit-members-delete'
|
||||
)
|
10
src/views/partials/project/page-project-left.pug
Normal file
10
src/views/partials/project/page-project-left.pug
Normal file
@ -0,0 +1,10 @@
|
||||
#project-left
|
||||
div.content-box__info.flex(style="padding: 15px")
|
||||
|
||||
p(data-trans='circle.left.paragraphQuit')
|
||||
p
|
||||
span(data-trans='project.left.paragraphJoin')
|
||||
span
|
||||
solid-link(next="admin-project-list" data-trans='project.left.admin')
|
||||
span
|
||||
span(data-trans='project.left.paragraphContact')
|
15
src/views/partials/project/page-project-picture.pug
Normal file
15
src/views/partials/project/page-project-picture.pug
Normal file
@ -0,0 +1,15 @@
|
||||
div.content-box__info
|
||||
|
||||
solid-link(class='backlink right', bind-resources, next='project-edit' data-trans='project.modifyPicture.backlink')
|
||||
|
||||
h1(data-trans='project.modifyPicture.title')
|
||||
|
||||
solid-picture.project-edit-picture(
|
||||
bind-resources
|
||||
upload-src=`${endpoints.uploads || endpoints.post.uploads}`
|
||||
upload-id="solid-project-edit-picture"
|
||||
nested-fields='customer'
|
||||
fields='logo'
|
||||
next='project-edit'
|
||||
additional='name'
|
||||
)
|
114
src/views/partials/project/page-project-profile.pug
Normal file
114
src/views/partials/project/page-project-profile.pug
Normal file
@ -0,0 +1,114 @@
|
||||
solid-router(default-route='project-profile', hidden)
|
||||
solid-route(name='project-profile')
|
||||
solid-route(name='project-edit')
|
||||
|
||||
#project-profile(hidden, data-view="project-profile")
|
||||
|
||||
solid-widget(name='hubl-project-team-contact')
|
||||
template
|
||||
solid-link(data-src='\${value}', next='messages')
|
||||
|
||||
.content-box__info.flex
|
||||
|
||||
div#loader-project-profile.loader
|
||||
div
|
||||
div
|
||||
div
|
||||
div
|
||||
|
||||
.flex.space-between.with-padding.mobile-vertical-align
|
||||
solid-display.mobile-margin__bottom(
|
||||
bind-resources
|
||||
fields='creationDateSet(title, creationDate)'
|
||||
loader-id='loader-project-profile'
|
||||
|
||||
class-title='word-spacing-right'
|
||||
|
||||
value-title=''
|
||||
data-trans='value-title=project.profile.creationDate'
|
||||
|
||||
widget-creationDate='solid-display-value-date'
|
||||
)
|
||||
solid-ac-checker(permission='acl:Append', bind-resources, nested-field='members')
|
||||
solid-ac-checker(permission='acl:Delete', bind-resources)
|
||||
solid-link(class='button mobile-full-width text-bold text-uppercase reversed button-primary bordered with-icon icon-pencil' next='project-edit' bind-resources data-trans='project.profile.buttonModify')
|
||||
solid-ac-checker(no-permission='acl:Delete', bind-resources)
|
||||
solid-link(class='button mobile-full-width text-bold text-uppercase reversed button-primary bordered with-icon icon-pencil' next='project-edit' bind-resources data-trans='project.profile.buttonAdd')
|
||||
|
||||
div.flex.desktop-button__end
|
||||
solid-ac-checker(permission='acl:Delete', bind-resources)
|
||||
solid-delete(
|
||||
class='button mobile-full-width text-bold text-uppercase button-primary bordered with-icon icon-trash'
|
||||
bind-resources
|
||||
data-label=''
|
||||
data-trans='data-label=project.profile.buttonDelete'
|
||||
next='admin-projects'
|
||||
)
|
||||
|
||||
solid-widget(name='hubl-project-leave-button')
|
||||
template
|
||||
solid-delete(
|
||||
class='button mobile-full-width desktop-btn-margin__left text-bold text-uppercase reversed button-secondary bordered with-icon icon-close'
|
||||
data-src="${src}"
|
||||
data-label=''
|
||||
data-trans='data-label=project.profile.buttonQuit'
|
||||
next='project-left'
|
||||
)
|
||||
|
||||
solid-ac-checker(no-permission='acl:Delete', bind-resources)
|
||||
solid-display(
|
||||
bind-resources
|
||||
nested-field='members'
|
||||
fields='relation'
|
||||
|
||||
action-relation='relation'
|
||||
widget-relation='hubl-project-leave-button'
|
||||
|
||||
search-fields='user'
|
||||
search-widget-user='solid-form-hidden'
|
||||
search-value-user=""
|
||||
|
||||
hubl-inherit-user-id="search-value-user"
|
||||
)
|
||||
|
||||
.flex.space-between
|
||||
solid-display(
|
||||
bind-resources
|
||||
fields='label-captain, captain'
|
||||
|
||||
value-label-captain=''
|
||||
data-trans='value-label-captain=project.profile.captain',
|
||||
class-label-captain='h2-like'
|
||||
widget-captain='hubl-captain'
|
||||
)
|
||||
|
||||
br
|
||||
|
||||
h2(data-trans:'project.profile.subTitle')
|
||||
|
||||
solid-widget(name='hubl-project-user-admin')
|
||||
template ${value ? "Administrateur" : ""}
|
||||
|
||||
solid-display.block(
|
||||
bind-resources
|
||||
nested-field='members'
|
||||
fields='classGroup(user.account.picture, sup(user.name, user, is_admin), sub(user.communities, name))'
|
||||
|
||||
widget-user='hubl-project-team-contact'
|
||||
|
||||
class-classGroup='user-thumb is-spaced'
|
||||
class-user.account.picture='avatar user-thumb__picture'
|
||||
class-user.name='user-thumb__name'
|
||||
class-user='user-thumb__send'
|
||||
class-is_admin='user-thumb__admin'
|
||||
multiple-user.communities
|
||||
multiple-user.communities-fields="community.name"
|
||||
class-name='user-thumb__lead'
|
||||
|
||||
widget-classGroup='solid-set-div'
|
||||
widget-user.account.picture='hubl-user-avatar'
|
||||
widget-is_admin='hubl-project-user-admin'
|
||||
)
|
||||
|
||||
#project-edit.content-box__height(hidden, data-view="project-edit")
|
||||
include page-project-edit.pug
|
3
src/views/partials/widgets.pug
Normal file
3
src/views/partials/widgets.pug
Normal file
@ -0,0 +1,3 @@
|
||||
//- Import your widgets from the `widget`folder here
|
||||
|
||||
include widgets/hubl-user-avatar.pug
|
2
src/views/partials/widgets/hubl-user-avatar.pug
Normal file
2
src/views/partials/widgets/hubl-user-avatar.pug
Normal file
@ -0,0 +1,2 @@
|
||||
solid-widget(name='hubl-user-avatar')
|
||||
template ${value ? `<img src="${value}" style="max-width:100%; max-height: 100%;" />` : `<object type="image/svg+xml" data="/images/alien.svg"></object>`}
|
Reference in New Issue
Block a user