hubl/src/views/partials/admin/page-admin-projects.pug

167 lines
7.5 KiB
Plaintext

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')
#project-left(hidden, data-view="project-left")
include ../project/page-project-left.pug
#admin-project-list(hidden, data-view="admin-project-list")
div.segment.lg-full.sm-full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey.whitespace-normal
h2.lg-margin-none.sm-margin-none.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='project.list.title')
div.segment.lg-full.sm-full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespace-normal
div.segment.lg-full.sm-full.margin-bottom-xlarge.whitespace-normal
div.segment.lg-half.sm-full
h3.text-color-heading.text-semibold.text-letter-spacing-large(data-trans='project.list.subTitle')
div.segment.lg-half.sm-full.text-right
solid-ac-checker(data-src=`${endpoints.projects || (endpoints.post && endpoints.post.projects)}`, permission='acl:Append')
solid-link(
class='segment sm-full button text-xsmall text-bold text-uppercase text-center reversed color-secondary bordered icon icon-plus'
next='admin-project-create'
data-trans='project.list.buttonCreate'
)
.segment.table-wrapper
.table
div.table-header.bg-color-third.text-color-heading
div.segment.table-cell.lg-quarter(data-trans='project.list.tableHeader1')
div.segment.table-cell.lg-quarter(data-trans='project.list.tableHeader2')
div.segment.table-cell.lg-quarter(data-trans='project.list.tableHeader3')
div.segment.table-cell.lg-quarter(data-trans='project.list.tableHeader4')
solid-widget(name="hubl-admin-project-leave-button")
template
solid-delete(
class='button text-xsmall text-bold text-uppercase color-secondary bordered'
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.labelled-avatar.two-lines(
data-src='${await value}'
fields='segment1(account.picture), segment2(line1(name), line2(at, username))'
class-segment1='segment'
class-account.picture='avatar'
class-segment2='segment lg-three-quarter margin-left-xsmall'
class-line1='block'
class-name='text-semibold text-color-heading text-sub'
class-line2='block'
class-username=''
widget-account.picture='hubl-user-avatar'
value-at='@'
)
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-xsmall text-bold text-uppercase color-secondary bordered'
data-src="${src}"
data-label=''
data-trans='data-label=project.list.buttonQuit'
)
solid-display(
class='table-body'
bind-user
nested-field="projects"
fields='cell1(project.customer.name, project.name), cell2(project.members), cell3(project.captain), cell4(leaveButton)'
loader-id='loader-admin-projects'
class-cell1='segment table-cell padding-xsmall lg-quarter text-left'
class-cell2='segment table-cell padding-xsmall lg-quarter text-left'
class-cell3='segment table-cell padding-top-xsmall padding-right-small padding-bottom-xsmall padding-left-small lg-quarter text-left'
class-cell4='segment table-cell padding-xsmall lg-quarter text-center'
class-project.customer.name='segment block margin-bottom-xxsmall text-xlarge text-color-heading text-semibold text-letter-spacing-large text-underline'
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(
class='button text-xsmall text-bold text-uppercase reversed color-secondary bordered icon icon-arrow-right-circle'
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='cell1(customer.name, name), cell2(members), cell3(captain), cell4(joinButton)'
loader-id='loader-admin-projects'
class-cell1='segment table-cell padding-xsmall lg-quarter text-left'
class-cell2='segment table-cell padding-xsmall lg-quarter text-left'
class-cell3='segment table-cell padding-top-xsmall padding-right-small padding-bottom-xsmall padding-left-small lg-quarter text-left'
class-cell4='segment table-cell padding-xsmall lg-quarter text-center'
class-customer.name='segment block margin-bottom-xxsmall text-xlarge text-color-heading text-semibold text-letter-spacing-large text-underline'
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