diff --git a/src/index.pug b/src/index.pug index ab13cbd..b453254 100644 --- a/src/index.pug +++ b/src/index.pug @@ -35,6 +35,9 @@ html(lang="en") #circle(hidden).with-sidebar include page-circle.pug + #circle-admin(hidden).no-sidebar + include page-circle-admin.pug + #messages(hidden).with-sidebar include page-messages.pug diff --git a/src/page-circle-admin.pug b/src/page-circle-admin.pug new file mode 100644 index 0000000..2731be5 --- /dev/null +++ b/src/page-circle-admin.pug @@ -0,0 +1,44 @@ +sib-widget(name='circle-admin-leave-button-template') + template + sib-ac-checker( + permission="acl:Delete" + data-src="${await value['@id']}" + ) + sib-delete( + data-src="${await value['@id']}" + data-label='Leave the circle' + ) + +sib-widget(name='circle-admin-join-button-template') + template + sib-form.circle-admin-join-button( + data-src='${src}' + nested-field='members' + fields='user' + widget-user='sib-form-dropdown' + label-user='' + range-user=`${endpoints.users}` + submit-button='Join' + set-user-id-select="user" + ) + +h1 Circles + +div + //- Search a circle + +div.table-header + div.cell Name + div.cell Admins + div.cell Join + +sib-display.table-body( + data-src=`${endpoints.circles}` + fields="name,own(owner.name,owner.account['@id']),members,button" + + widget-members='circle-admin-leave-button-template' + multiple-members + + widget-button='circle-admin-join-button-template' + action-button='button' +) \ No newline at end of file diff --git a/src/styles/base/main.scss b/src/styles/base/main.scss index d399909..47b8d5c 100644 --- a/src/styles/base/main.scss +++ b/src/styles/base/main.scss @@ -273,4 +273,5 @@ sib-delete { // Other base components @import 'form'; @import 'header'; -@import 'menu-left'; \ No newline at end of file +@import 'menu-left'; +@import 'user-avatar'; \ No newline at end of file diff --git a/src/styles/base/user-avatar.scss b/src/styles/base/user-avatar.scss new file mode 100644 index 0000000..0c93093 --- /dev/null +++ b/src/styles/base/user-avatar.scss @@ -0,0 +1,29 @@ +.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%; + } + } +} \ No newline at end of file diff --git a/src/styles/layout/circle/_index.scss b/src/styles/layout/circle/_index.scss index 6efac3d..350cfc1 100644 --- a/src/styles/layout/circle/_index.scss +++ b/src/styles/layout/circle/_index.scss @@ -1,2 +1,3 @@ @import 'circle-profile'; -@import 'circle-edit'; \ No newline at end of file +@import 'circle-edit'; +@import 'circle-admin'; \ No newline at end of file diff --git a/src/styles/layout/circle/circle-admin.scss b/src/styles/layout/circle/circle-admin.scss new file mode 100644 index 0000000..04813c0 --- /dev/null +++ b/src/styles/layout/circle/circle-admin.scss @@ -0,0 +1,3 @@ +.circle-admin-join-button select[name='user'] { + display: none; +} \ No newline at end of file diff --git a/src/styles/layout/project-profile/project-profile.scss b/src/styles/layout/project-profile/project-profile.scss index dab9962..0770e3a 100644 --- a/src/styles/layout/project-profile/project-profile.scss +++ b/src/styles/layout/project-profile/project-profile.scss @@ -231,13 +231,4 @@ } } } - - .project-profile-user-avatar { - display: inline; - - * { - height: 100%; - width: 100%; - } - } } \ No newline at end of file