diff --git a/config.sample.federated.json b/config.sample.federated.json index a17abca78ebfb03ed2170d5e94e456ed7b56e077..7c8bd6f12b5ef0fa67206c70f77a3da26513a677 100644 --- a/config.sample.federated.json +++ b/config.sample.federated.json @@ -6,6 +6,7 @@ "clientLogoHeight": "32px", "clientCSS": "/path/to/custom.css", "authorityName": "djangoldp-server-name", + "publicDirectory": false, "endpoints": { "get": { "circles": "http://localhost:8000/circles/", diff --git a/config.sample.json b/config.sample.json index 0197c371bd0878f260dc52757ecdfadd99eed294..9649336e8b25915678129ee63d12ccaf61d92e78 100644 --- a/config.sample.json +++ b/config.sample.json @@ -6,6 +6,7 @@ "clientLogoHeight": "32px", "clientCSS": "/path/to/custom.css", "authorityName": "djangoldp-server-name", + "publicDirectory": false, "endpoints": { "circles": "http://localhost:8000/circles/", "projects": "http://localhost:8000/projects/", diff --git a/src/dependencies.pug b/src/dependencies.pug index 95d17f8ea4454caefe7f2d21475c0686a3637b0d..a70d24b3aedfdb19287c45a34d2b83909d9a4d24 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -1,24 +1,33 @@ -script(type="module" src="https://unpkg.com/@startinblox/oidc@0.8") script(src="/scripts/index.js") -//- local -//- script(type="module" src="/lib/sib-router/src/index.js") -//- script(type="module" src="/lib/sib-chat/sib-chat.js") -//- script(type="module" src="/lib/sib-notifications/sib-notifications.js") -//- script(type="module" src="/lib/sib-event/sib-event.js") -//- script(type="module" src="/lib/sib-conversation/sib-conversation.js") -//- script(type="module" src="/lib/sib-directory/sib-directory.js") -//- script(type="module" src="/lib/sib-job-board/sib-job-board.js") - -//- CDN -script(type="module" src="https://unpkg.com/@startinblox/core@0.9") -script(type="module" src="https://unpkg.com/@startinblox/router@0.7") -script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.4") -script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.3") -script(type="module" src="https://unpkg.com/@startinblox/component-event@0.1") -//- script(type="module" src="https://unpkg.com/@startinblox/component-conversation@0.3") -//- script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.3") -//- script(type="module" src="https://unpkg.com/@startinblox/component-job-board@0.3") +//- Scripts - use add `"libLocal" = true` on config.json to use your local `lib` folder +if libLocal + script(type="module" src="/lib/sib-oidc/index.js") + script(type="module" src="/lib/sib-router/src/index.js") + script(type="module" src="/lib/sib-notifications/index.js") + if endpoints.users || (endpoints.get && endpoints.get.users) + script(type="module" src="/lib/sib-chat/sib-chat.js") + if endpoints.events || (endpoints.get && endpoints.get.events) + script(type="module" src="/lib/sib-event/sib-event.js") + if endpoints.joboffers || (endpoints.get && endpoints.get.joboffers) + script(type="module" src="/lib/sib-job-board/sib-job-board.js") + script(type="module" src="/lib/sib-conversation/sib-conversation.js") + if publicDirectory && (endpoints.users || (endpoints.get && endpoints.get.users)) + script(type="module" src="/lib/sib-directory/sib-directory.js") +else + script(type="module" src="https://unpkg.com/@startinblox/oidc@0.8") + script(type="module" src="https://unpkg.com/@startinblox/core@0.9") + script(type="module" src="https://unpkg.com/@startinblox/router@0.7") + script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.3") + if endpoints.users || (endpoints.get && endpoints.get.users) + script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.4") + if endpoints.events || (endpoints.get && endpoints.get.events) + script(type="module" src="https://unpkg.com/@startinblox/component-event@0.1") + if endpoints.joboffers || (endpoints.get && endpoints.get.joboffers) + script(type="module" src="https://unpkg.com/@startinblox/component-job-board@0.3") + script(type="module" src="https://unpkg.com/@startinblox/component-conversation@0.3") + if publicDirectory && (endpoints.users || (endpoints.get && endpoints.get.users)) + script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.3") //- Stylesheets link(rel='stylesheet', href='/styles/index.css') diff --git a/src/header.pug b/src/header.pug index a198a38748ec86534c127a55efc0d07ba6016b6c..ef567557d4f758673a2db9985ca6ea714a790219 100644 --- a/src/header.pug +++ b/src/header.pug @@ -7,7 +7,7 @@ //- i#search-icon.icon-magnifier(aria-hidden='true') //- i#close-search-icon.icon-close(aria-hidden='true') -sib-notifications( +sib-notifications.notLoggedIn( nested-field="inbox" bind-user ) @@ -22,13 +22,22 @@ details#user-controls.notLoggedIn bind-user ) #user-controls__panel - include page-user-panel.pug - -button(role='log in' onclick="document.querySelector('sib-auth').login();") Login + nav(role="user's functionalities menu") + ul + if publicDirectory && (endpoints.users || (endpoints.get && endpoints.get.users)) + li + sib-link(next='my-profile') My profile + //-li + sib-link(next='user-settings') Settings + li + sib-link(next='admin') Admin + button(role='log out' onclick="document.querySelector('sib-auth').logout();") Log out + +button.loggedIn(role='log in' onclick="document.querySelector('sib-auth').login();") Login button.notLoggedIn.mobile-menu-icon.icon-menu#toggleMainMenu -sib-auth +sib-auth(style='display:none!important') sib-auth-provider( data-authority=`${authority}` data-id=`${authorityName || "authority"}` diff --git a/src/index.pug b/src/index.pug index 26454a249ccb6aaa642299b1b17dad2ac13bc1ff..0eae9a5e93483106994bd096006b7cddae356d07 100644 --- a/src/index.pug +++ b/src/index.pug @@ -13,23 +13,18 @@ html(lang="en") body header#header(role='banner') include header.pug - main + + main.notLoggedIn include menu-left.pug div#viewport - //- #members(hidden).no-sidebar - //- include page-members-directory.pug - - //- #job-offers(hidden).no-sidebar - //- include page-job-offers.pug - - //- #job-offer-create(hidden).no-sidebar - //- sib-link(class="backlink", next="job-offers") Back - //- include page-job-offer-create.pug + if publicDirectory && (endpoints.users || (endpoints.get && endpoints.get.users)) + #members(hidden).no-sidebar + include page-directory.pug - //- #job-offer-edit(hidden).no-sidebar - //- sib-link(class="backlink", next="job-offers") Back - //- include page-job-offer-edit.pug + if endpoints.joboffers || (endpoints.get && endpoints.get.joboffers) + #job-offers(hidden).no-sidebar + include page-job-offers.pug if endpoints.projects || (endpoints.get && endpoints.get.projects) #project(hidden).with-sidebar @@ -48,7 +43,4 @@ html(lang="en") include page-events.pug #admin(hidden).with-sidebar - include page-admin.pug - - //- #my-profile(hidden).no-sidebar - //- include page-user-profile.pug + include page-admin.pug \ No newline at end of file diff --git a/src/menu-left.pug b/src/menu-left.pug index 4b1ac4103248c960e4f20ef685a94bb6792e56f1..02e0e59f34f60574c6b42ee1271dd3fc5a382073 100644 --- a/src/menu-left.pug +++ b/src/menu-left.pug @@ -7,18 +7,40 @@ sib-widget(name='hd-create') p.create You are not part of any ${value} yet. To create a new one, you can go to the sib-link(next='admin') administration panel +sib-widget(name='menu-fix-url-circle') + template + sib-display( + data-src='${value}' + fields='name, badge' + value-badge='${value}' + widget-badge='hd-counter' + widget-name='sib-display-div' + ) + +sib-widget(name='menu-fix-url-project') + template + sib-display( + data-src='${value}' + fields='project(customer.name, name), badge' + class-name='project-name' + class-customer.name='project-customer' + value-badge='${value}' + widget-badge='hd-counter' + widget-name='sib-display-div' + ) + nav#main__menu.jsLeftMenu sib-router#navbar-router(default-route='members') - //- sib-route.menu(name='members') - //- div.menu-label Members - //- div.menu-icon.icon-people - //- div.divider - //- sib-route.menu(name='job-offers', rdf-type='hd:joboffer') - //- div.menu-label Job offers - //- div.menu-icon.icon-briefcase - //- sib-route(name='job-offer-create', hidden) - //- sib-route(name='job-offer-edit', use-id, hidden) - //- div.divider + if publicDirectory && (endpoints.users || (endpoints.get && endpoints.get.users)) + sib-route.menu(name='members') + div.menu-label Members + div.menu-icon.icon-people + div.divider + if endpoints.joboffers || (endpoints.get && endpoints.get.joboffers) + sib-route.menu(name='job-offers', rdf-type='hd:joboffer') + div.menu-label Job offers + div.menu-icon.icon-briefcase + div.divider if endpoints.events || (endpoints.get && endpoints.get.events) sib-route.menu(name='events') div.menu-label Events @@ -35,20 +57,13 @@ nav#main__menu.jsLeftMenu sib-route(name='project', rdf-type='hd:project', use-id='', hidden) div.sub-menu.menu-notification sib-display.project-tab( - data-src=`${endpoints.projects || (endpoints.get && endpoints.get.projects)}` - fields='project(customer.name, name), badge' - class-customer.name='project-customer' - class-name='project-name' + bind-user + nested-field='projects' + fields='project' empty-widget='hd-create' empty-value='project' - search-fields='team' - search-widget-team='sib-form-hidden' - search-value-team='-' - hd-inherit-user-id='search-value-team' - hd-inherit-widgets - widget-badge='hd-counter' - action-badge='badge' - order-by='customer.name' + widget-project='menu-fix-url-project' + order-by='project.customer.name' next='project' ) div.divider @@ -62,22 +77,13 @@ nav#main__menu.jsLeftMenu div.menu-icon.icon-folder-alt sib-route(name='circle', rdf-type='hd:circle', use-id='', hidden) div.sub-menu.menu-notification - sib-widget(name='menu-circle-fix-url') - template - sib-display( - data-src='${value}' - fields='name, badge' - value-badge='${value}' - widget-badge='hd-counter' - widget-name='sib-display-div' - ) sib-display( bind-user nested-field='circles' fields='circle' empty-widget='hd-create' empty-value='circle' - widget-circle='menu-circle-fix-url' + widget-circle='menu-fix-url-circle' order-by='circle.name' next='circle' ) diff --git a/src/page-admin.pug b/src/page-admin.pug index c396fd4d54f8d5bbb9e63aaa2d947475946dbd45..4876a37d623b23572f419a157eb38f11d796df62 100644 --- a/src/page-admin.pug +++ b/src/page-admin.pug @@ -1,20 +1,22 @@ .views-container.sidebar-is-closed if endpoints.circles || (endpoints.get && endpoints.get.circles) #admin-circles(hidden) - include page-admin-circles.pug + include views/admin/page-admin-circles.pug if endpoints.projects || (endpoints.get && endpoints.get.projects) #admin-projects(hidden) - include page-admin-projects.pug - //- #admin-users(hidden) - include page-admin-users.pug + include views/admin/page-admin-projects.pug + if publicDirectory && (endpoints.users || (endpoints.get && endpoints.get.users)) + #admin-users(hidden) + include views/admin/page-admin-users.pug nav.jsRightMenu(role='navigation') sib-router(default-route='admin-circles') ul li.jsOffsiteToggle a Fold menu - //- sib-route(name='admin-users') - li - a Users + if publicDirectory && (endpoints.users || (endpoints.get && endpoints.get.users)) + sib-route(name='admin-users') + li + a Users if endpoints.circles || (endpoints.get && endpoints.get.circles) sib-route(name='admin-circles') li diff --git a/src/page-circle.pug b/src/page-circle.pug index e938ee36fd8a1a0934bef96d95adb6a8fc885bc0..9f8409369fffb5081c2e86b28c148e500cbe18f3 100644 --- a/src/page-circle.pug +++ b/src/page-circle.pug @@ -13,9 +13,9 @@ div.content-box__info sib-ac-checker(permission='acl:Read', bind-resources) #circle-chat(hidden) - include page-circle-chat.pug + include views/circle/page-circle-chat.pug #circle-information(hidden) - include page-circle-profile.pug + include views/circle/page-circle-profile.pug nav.jsRightMenu(role='navigation') sib-router(default-route='circle-chat') diff --git a/src/page-members-directory.pug b/src/page-directory.pug similarity index 99% rename from src/page-members-directory.pug rename to src/page-directory.pug index 7b835cf490ae3c19e2482b133b3abdc64a68986f..e8f8c3c4e20630b73e144362a75722bc2a14f857 100644 --- a/src/page-members-directory.pug +++ b/src/page-directory.pug @@ -3,4 +3,3 @@ sib-directory( range-groups=`${endpoints.groups || endpoints.get.groups}`, range-skills=`${endpoints.skills || endpoints.get.skills}` ) - diff --git a/src/page-job-offers.pug b/src/page-job-offers.pug index 1772d1fbc1dc40406977c5404390b45c10463045..b7cb1868950fab615f47a911bf53dcf32a359e62 100644 --- a/src/page-job-offers.pug +++ b/src/page-job-offers.pug @@ -1,10 +1,25 @@ -.job-offers__container - sib-job-board( - data-src=`${endpoints.joboffers || endpoints.get.joboffers}`, - range-skills=`${endpoints.skills || endpoints.get.skills}` - ) - - div.job-offers__newoffer - sib-link(next="job-offer-create").plus-button - div.icon-plus - div Post a new offer +.content-box.full-width + #job-offer-board + .job-offers__container + sib-job-board( + data-src=`${endpoints.joboffers || endpoints.get.joboffers}`, + range-skills=`${endpoints.skills || endpoints.get.skills}` + ) + + div.job-offers__newoffer + sib-link(next="job-offer-create").plus-button + div.icon-plus + div Post a new offer + + #job-offer-create(hidden) + sib-link(class="backlink", next="job-offers") Back + include views/job-offer/page-job-offer-create.pug + + #job-offer-edit(hidden) + sib-link(class="backlink", next="job-offers") Back + include views/job-offer/page-job-offer-edit.pug + +sib-router(default-route='job-offer-board') + sib-route(name='job-offer-board') + sib-route(name='job-offer-create') + sib-route(name='job-offer-edit') \ No newline at end of file diff --git a/src/page-project.pug b/src/page-project.pug index ae2e06cacc3c73c1b1c04eb36d1aa58f4a53332a..ffb9269ecbd352e126026ed7622ca787e1d3e141 100644 --- a/src/page-project.pug +++ b/src/page-project.pug @@ -19,9 +19,9 @@ div.content-box__info sib-ac-checker(permission='acl:Read', bind-resources) #project-chat(hidden) - include page-project-chat.pug + include views/project/page-project-chat.pug #project-information(hidden) - include page-project-profile.pug + include views/project/page-project-profile.pug dialog(id='project-contributions-help').modal sib-link(next='project-profile') diff --git a/src/page-user-panel.pug b/src/page-user-panel.pug deleted file mode 100644 index 6e6c3103990af145fdeb82dd7fa9c58bb18fe3a2..0000000000000000000000000000000000000000 --- a/src/page-user-panel.pug +++ /dev/null @@ -1,9 +0,0 @@ -nav(role="user's functionalities menu") - ul - //- li - //- sib-link(next='my-profile') My profile - //-li - sib-link(next='user-settings') Settings - li - sib-link(next='admin') Admin - button(role='log out' onclick="document.querySelector('sib-auth').logout();") Log out diff --git a/src/scripts/index.js b/src/scripts/index.js index 4b7e6fe1080f5cd686338603e41fc0d271922725..8a868838447ecad8248c129cc1581fc387495fa0 100644 --- a/src/scripts/index.js +++ b/src/scripts/index.js @@ -1,52 +1,47 @@ -function recursiveAdaptWidgets(prefix, element, user) { - //- This function is a workaround for the currently unworking populate - //- Feel free to see examples on page-circles- - - element.querySelectorAll("[" + prefix + "-user-id]").forEach(el => { - el.setAttribute(el.getAttribute(prefix + "-user-id"), user["@id"]); - }); - - if (element != document) { - //- Allow to bind-user on selected attribute - if (element.getAttribute(prefix + "-user-id")) { - element.setAttribute( - element.getAttribute(prefix + "-user-id"), - user["@id"] - ); - } +function applyAdapt(prefix, sibDisplay, user) { + + //- Allow to bind-user on selected attribute + if (sibDisplay.getAttribute(prefix + "-user-id")) { + sibDisplay.setAttribute( + sibDisplay.getAttribute(prefix + "-user-id"), + user["@id"] + ); + } - //- Allow to set data-src to a children sib-form - if (element.getAttribute(prefix + "-bind-resources")) { - let form = element.querySelector( - element.getAttribute(prefix + "-bind-resources") + " sib-form" + //- Allow to set data-src to a children sib-form + if (sibDisplay.getAttribute(prefix + "-bind-resources")) { + let form = sibDisplay.querySelector( + sibDisplay.getAttribute(prefix + "-bind-resources") + " sib-form" + ); + if (form) { + form.setAttribute( + "data-src", + sibDisplay.component.resourceId.replace("members/", "") ); - if (form) { - form.setAttribute( - "data-src", - element.component.resourceId.replace("members/", "") - ); - } - } - - //- Allow to put user on a targetted search field - if (element.getAttribute(prefix + "-bind-user2input")) { - element.querySelector( - element.getAttribute(prefix + "-bind-user2input") - ).value = user["@id"]; } + } - //- In case your sib-display use a multiple, you have to target sub-sib-display auto-generated - if (element.getAttribute(prefix + "-widgets-multiple") !== null) { - element.querySelectorAll("div > sib-display").forEach(el => { - el.setAttribute(prefix + "-widgets", ""); - }); - } + //- Allow to put user on a targetted search field + if (sibDisplay.getAttribute(prefix + "-bind-user2input")) { + sibDisplay.querySelector( + sibDisplay.getAttribute(prefix + "-bind-user2input") + ).value = user["@id"]; } +} - //- This function is hooked every time a sib-something with prefix+"-widgets" is populated - element.querySelectorAll("[" + prefix + "-widgets]").forEach(elementChild => { - elementChild.addEventListener("populate", () => { - recursiveAdaptWidgets(prefix, elementChild, user); +function recursiveAdaptWidgets(prefix, element, user) { + + element.addEventListener("populate", () => { + + //- This function is a workaround for the currently unworking populate + //- Feel free to see examples on page-circles- + element.querySelectorAll("[" + prefix + "-user-id]").forEach(el => { + el.setAttribute(el.getAttribute(prefix + "-user-id"), user["@id"]); + }); + applyAdapt(prefix, element, user); + + document.querySelectorAll('sib-display, sib-form').forEach(sibDisplay => { + applyAdapt(prefix, sibDisplay, user); }); }); } @@ -125,6 +120,7 @@ async function refreshResource(event) { if(resourceId.includes('circle') && user != null) { let userId = user['@id']; refreshSibDisplays(userId + "circles/"); + refreshSibDisplays(resourceId.split('/').slice(0,4).join('/')+'/joinable/'); } //clear cache on this resource @@ -218,10 +214,12 @@ document.addEventListener("DOMContentLoaded", function(event) { .forEach(el => (el.style.visibility = "visible")); // Hide login button if already logged document - .querySelector('button[role="log in"]') + .querySelector('.loggedIn') .setAttribute("style", "display:none !important"); - // Set current user id on set-user-id of sib-display - recursiveAdaptWidgets("hd-inherit", document, user); + document.querySelectorAll('sib-display, sib-form').forEach(element => { + // Set current user id on set-user-id of sib-display + recursiveAdaptWidgets("hd-inherit", element, user); + }); for (leaveBtn of document.querySelectorAll( "admin-circle-leave > sib-ac-checker:not([hidden])" )) { @@ -230,6 +228,8 @@ document.addEventListener("DOMContentLoaded", function(event) { "display:none !important" ); // Hide Join button } + } else { + document.querySelector('sib-auth').login(); } }) .catch(error => console.log(error)); diff --git a/src/styles/base/header.scss b/src/styles/base/header.scss index 850e1daa6ae8a6279697360f6f95b14b726e0534..b33026620533fe886380e48db3ea1e133a2a553d 100644 --- a/src/styles/base/header.scss +++ b/src/styles/base/header.scss @@ -56,10 +56,6 @@ } } - .notLoggedIn { - visibility: hidden; - } - sib-notifications { @include breakpoint(sm) { diff --git a/src/styles/base/main.scss b/src/styles/base/main.scss index 4aae4ef524a21ae5b44083bedbb36c1b55af3486..32b1174e01a99c2d6c3ec7ca6f045d7da018772e 100644 --- a/src/styles/base/main.scss +++ b/src/styles/base/main.scss @@ -35,6 +35,10 @@ $breakpoints: (phone: 480px, backface-visibility: hidden; /*will-change: overflow;*/ } + + .notLoggedIn { + visibility: hidden; + } } /* Add scrollbar to the left and right menu, and to the content */ @@ -471,7 +475,7 @@ a, } } - &.test { + &.flex { display: flex; } diff --git a/src/styles/base/menu-left.scss b/src/styles/base/menu-left.scss index 8ffd616de46c59e1e78f764a1b06f4d346c9e095..c1a38a871f28905f62e716f11a64a975c47c7f7e 100644 --- a/src/styles/base/menu-left.scss +++ b/src/styles/base/menu-left.scss @@ -29,7 +29,7 @@ display: flex; flex-direction: row-reverse; font-weight: bold; - padding: 1.6rem; + padding: 1.2rem; &[active] { background-color: $color-46-100-67; @@ -97,10 +97,9 @@ .project-tab>div>sib-display>div:nth-child(1) { sib-set-default[name='project'] { - padding: 1rem 1rem 1rem 3.2rem; .project-customer, - .project-name { + .project-name>div { display: block; overflow: hidden; text-overflow: ellipsis; @@ -113,6 +112,7 @@ } .project-name { + display: block; padding-left: 14px; width: calc(150px - 10px); /* 10px = padding of the sib-set-default = better alignment */ @@ -126,7 +126,7 @@ /* End of specific styles of "Projects" tab */ >sib-display.nosub>div>sib-display>div { - padding: 1rem 1rem 1rem 3.2rem; + padding: 1rem 1rem 1rem 3rem; } sib-display>div { @@ -145,8 +145,9 @@ >div { color: $color-244-10-70; cursor: pointer; - >menu-circle-fix-url>sib-display>div { - padding: 1rem 1rem 1rem 3.2rem; + >menu-fix-url-circle>sib-display>div, + >menu-fix-url-project>sib-display>div { + padding: 1rem 1rem 1rem 3rem; } } @@ -156,7 +157,8 @@ } &>sib-display[active]>div, - &>sib-display>div>menu-circle-fix-url>sib-display[active]>div { + &>sib-display>div>menu-fix-url-circle>sib-display[active]>div, + &>sib-display>div>menu-fix-url-project>sib-display[active]>div { background-color: $color-46-100-67; color: $color-233-18-29; font-weight: bold; @@ -164,11 +166,13 @@ } &.menu-notification { - > sib-display > div > sib-display > div > menu-circle-fix-url { + > sib-display > div > sib-display > div > menu-fix-url-circle, + > sib-display > div > sib-display > div > menu-fix-url-project { flex: 1; } > sib-display > div > sib-display > div, - > sib-display > div > sib-display > div > menu-circle-fix-url > sib-display > div { + > sib-display > div > sib-display > div > menu-fix-url-circle > sib-display > div, + > sib-display > div > sib-display > div > menu-fix-url-project > sib-display > div { display: flex; sib-display-div { flex: 3; diff --git a/src/styles/layout/events/_index.scss b/src/styles/layout/events/_index.scss index a28b32f124df463d61911f433fc2a7833eb5ebb7..be4ff7d79b624f8779e921b4c4545c5340de22b9 100644 --- a/src/styles/layout/events/_index.scss +++ b/src/styles/layout/events/_index.scss @@ -1 +1 @@ -@import 'events'; \ No newline at end of file +@import 'events.scss'; \ No newline at end of file diff --git a/src/styles/layout/events/events.scss b/src/styles/layout/events/events.scss index 73a75c3afdddd694297ac3618d59f24a0c88b8e2..3b38a7e020ebfe8e0903b71a7e55b90c1cc48010 100644 --- a/src/styles/layout/events/events.scss +++ b/src/styles/layout/events/events.scss @@ -1,7 +1,3 @@ -$color-203-87-19: hsl(203, 87.8%, 19.2%); -$color-357-67-45: hsl(357,67.5%,45.9%); -$color-212-4-50: hsl(212.7,4.3%,50%); -$color-0-0-22: hsl(0,0%,22.7%); #events { width: 100%; font-family: "Facit"; diff --git a/src/styles/layout/project-profile/project-profile.scss b/src/styles/layout/project-profile/project-profile.scss index ab8f6cb1b64535ea15f42c7884b617aeac09d25e..f2126457d378ac60cdec107f2acb4d21890b3278 100644 --- a/src/styles/layout/project-profile/project-profile.scss +++ b/src/styles/layout/project-profile/project-profile.scss @@ -163,6 +163,14 @@ span { font-weight: bold; + + &.link-color { + color: $color-244-73-62; + } + + &.norm-weight { + font-weight: normal; + } } } } diff --git a/src/templates/hd-customer.pug b/src/templates/hd-customer.pug index 51563c2f1e36ae5dbcc4c4c473ebd393992cbcaf..813aa81ac56b09dec28b75a8b2cc23b2e3620781 100644 --- a/src/templates/hd-customer.pug +++ b/src/templates/hd-customer.pug @@ -12,6 +12,6 @@ sib-widget(name='hd-customer') ul li #[span(class='mdi-account-outline') ${await value.firstName} ${await value.lastName ? await value.lastName : ""}]${await value.role ? `, ${await value.role}` : ""} li - span(class='mdi-email-outline') + span(class='link-color norm-weight mdi-email-outline') a(href='mailto:${await value.email}') ${await value.email} - span ${await value.phone ? `<li><span class='mdi-cellphone-iphone'>${await value.phone}</span></li>` : ``} + span ${await value.phone ? `<li><span class='norm-weight mdi-cellphone-iphone'>${await value.phone}</span></li>` : ``} diff --git a/src/page-admin-circles-create.pug b/src/views/admin/page-admin-circles-create.pug similarity index 100% rename from src/page-admin-circles-create.pug rename to src/views/admin/page-admin-circles-create.pug diff --git a/src/page-admin-circles.pug b/src/views/admin/page-admin-circles.pug similarity index 53% rename from src/page-admin-circles.pug rename to src/views/admin/page-admin-circles.pug index 110dc4b9de58b2b07eae6b73823a8966948a3939..c4428bdcfe64015b36baef423348585133c257ce 100644 --- a/src/page-admin-circles.pug +++ b/src/views/admin/page-admin-circles.pug @@ -9,12 +9,11 @@ #circle-left(hidden) - include page-circle-left.pug + include ../circle/page-circle-left.pug #admin-circle-list(hidden) - - include templates/hd-user-avatar.pug + include ../../templates/hd-user-avatar.pug sib-widget(name='circle-owner') template @@ -52,57 +51,49 @@ data-label='Leave circle' ) - sib-widget(name='admin-circle-join-button') - template - button.button.text-bold.text-uppercase.reversed.button-blue.bordered.with-icon.icon-arrow-right-circle.test - sib-form( - data-src='' - nested-field='members' + sib-display( + class='table-body' - fields='user.@id' - label-user.@id='' - value-user.@id='' - widget-user.@id='sib-form-hidden' + bind-user + nested-field='circles' + fields='circle.name, circle.owner, leaveButton' - hd-inherit-bind-user2input="input[name='user.@id']" - hd-inherit-widgets + class-circle.name='w33 cell border cell-with-name' + class-circle.owner='w33 cell border cell-with-id-card' + class-leaveButton='w33 cell border cell-with-buttons' - submit-button='Join Circle' - ) + action-leaveButton="joinButton" + widget-leaveButton="admin-circle-leave-button" + widget-circle.owner='circle-owner' + ) - sib-widget(name="admin-circle-buttons") + sib-widget(name='admin-circle-join-button') template - sib-display( - data-src='${src}' - nested-field='members' - fields='relation' - action-relation='relation' - widget-relation='admin-circle-leave-button' - search-fields='user' - search-widget-user='sib-form-hidden' - search-value-user="-" - empty-widget='admin-circle-join-button' - hd-inherit-bind-resources='admin-circle-join-button' - hd-inherit-user-id="search-value-user" - hd-inherit-widgets + sib-form.button.text-bold.text-uppercase.reversed.button-blue.bordered.with-icon.icon-arrow-right-circle.flex( + data-src='${value}' + + fields='user.@id' + label-user.@id='' + value-user.@id='self' + widget-user.@id='sib-form-hidden' + + hd-inherit-bind-user2input="input[name='user.@id']" + + submit-button='Join Circle' ) sib-display( class='table-body' - data-src=`${endpoints.circles || endpoints.get.circles}` - fields='name, owner, buttons' + data-src=`${endpoints.circles || endpoints.get.circles}joinable/` + fields='name, owner, members' class-name='w33 cell border cell-with-name' class-owner='w33 cell border cell-with-id-card' - class-buttons='w33 cell border cell-with-buttons' - - widget-buttons="admin-circle-buttons" - action-buttons="buttons" - hd-inherit-widgets - hd-inherit-widgets-multiple - widget-owner='circle-owner' + + class-members='w33 cell border cell-with-buttons' + widget-members="admin-circle-join-button" ) diff --git a/src/page-admin-projects-create.pug b/src/views/admin/page-admin-projects-create.pug similarity index 100% rename from src/page-admin-projects-create.pug rename to src/views/admin/page-admin-projects-create.pug diff --git a/src/page-admin-projects.pug b/src/views/admin/page-admin-projects.pug similarity index 94% rename from src/page-admin-projects.pug rename to src/views/admin/page-admin-projects.pug index 53ecedefa2ce417ee186bea820efd99031812728..d93aa33202ab59cf52b5922402359a9923ebcf9c 100644 --- a/src/page-admin-projects.pug +++ b/src/views/admin/page-admin-projects.pug @@ -8,10 +8,10 @@ h1.title-left.without-margin Administration #project-left(hidden) - include page-project-left.pug + include ../project/page-project-left.pug #admin-project-list(hidden) - include templates/hd-user-avatar.pug + include ../../templates/hd-user-avatar.pug div.content-box__info div.admin-header @@ -68,7 +68,6 @@ search-widget-user='sib-form-hidden' search-value-user="-" hd-inherit-user-id="search-value-user" - hd-inherit-widgets ) sib-display( @@ -84,8 +83,6 @@ widget-buttons="admin-project-buttons" action-buttons="buttons" - hd-inherit-widgets - hd-inherit-widgets-multiple widget-captain='project-captain' widget-members='project-admins' diff --git a/src/page-admin-users.pug b/src/views/admin/page-admin-users.pug similarity index 100% rename from src/page-admin-users.pug rename to src/views/admin/page-admin-users.pug diff --git a/src/page-circle-chat.pug b/src/views/circle/page-circle-chat.pug similarity index 100% rename from src/page-circle-chat.pug rename to src/views/circle/page-circle-chat.pug diff --git a/src/page-circle-edit.pug b/src/views/circle/page-circle-edit.pug similarity index 98% rename from src/page-circle-edit.pug rename to src/views/circle/page-circle-edit.pug index 266781becf1126033175d708dcbb4ef10c80f8b3..f1ab588a7a5f2eb65c40795dd8e2b9f61a8b21d0 100644 --- a/src/page-circle-edit.pug +++ b/src/views/circle/page-circle-edit.pug @@ -1,6 +1,6 @@ div.content-box__info - include templates/hd-user-avatar.pug + include ../../templates/hd-user-avatar.pug sib-widget(name='hd-user-groups') template ${await value.name} diff --git a/src/page-circle-left.pug b/src/views/circle/page-circle-left.pug similarity index 100% rename from src/page-circle-left.pug rename to src/views/circle/page-circle-left.pug diff --git a/src/page-circle-profile.pug b/src/views/circle/page-circle-profile.pug similarity index 95% rename from src/page-circle-profile.pug rename to src/views/circle/page-circle-profile.pug index cd4e302245d669c83414fa2c045a70f80be1becc..6172590254b06976e3b81b35697647f51db34f1e 100644 --- a/src/page-circle-profile.pug +++ b/src/views/circle/page-circle-profile.pug @@ -3,7 +3,7 @@ sib-router(default-route='circle-profile', hidden) sib-route(name='circle-edit') #circle-profile(hidden) - include templates/hd-circle-team.pug + include ../../templates/hd-circle-team.pug .content-box__info .space-between @@ -49,7 +49,7 @@ sib-router(default-route='circle-profile', hidden) sib-widget(name='circle-join-button') template - button.button.btn-margin-left.text-bold.text-uppercase.reversed.button-dark.bordered.with-icon.icon-arrow-right-circle.test + button.button.btn-margin-left.text-bold.text-uppercase.reversed.button-dark.bordered.with-icon.icon-arrow-right-circle.flex sib-form( data-src='' nested-field='members' @@ -60,7 +60,6 @@ sib-router(default-route='circle-profile', hidden) widget-user.@id='sib-form-hidden' hd-inherit-bind-user2input="input[name='user.@id']" - hd-inherit-widgets submit-button='Join Circle' ) @@ -77,7 +76,6 @@ sib-router(default-route='circle-profile', hidden) empty-widget='circle-join-button' hd-inherit-bind-resources='circle-join-button' hd-inherit-user-id="search-value-user" - hd-inherit-widgets ) diff --git a/src/page-job-offer-create.pug b/src/views/job-offer/page-job-offer-create.pug similarity index 100% rename from src/page-job-offer-create.pug rename to src/views/job-offer/page-job-offer-create.pug diff --git a/src/page-job-offer-edit.pug b/src/views/job-offer/page-job-offer-edit.pug similarity index 100% rename from src/page-job-offer-edit.pug rename to src/views/job-offer/page-job-offer-edit.pug diff --git a/src/page-project-chat.pug b/src/views/project/page-project-chat.pug similarity index 100% rename from src/page-project-chat.pug rename to src/views/project/page-project-chat.pug diff --git a/src/page-project-edit.pug b/src/views/project/page-project-edit.pug similarity index 97% rename from src/page-project-edit.pug rename to src/views/project/page-project-edit.pug index 63f9938f85e2573a39da58e47cc5cb32b7423d3b..61e5aa2e8eb2b41aa496e894e4eb7bb1ddad629a 100644 --- a/src/page-project-edit.pug +++ b/src/views/project/page-project-edit.pug @@ -1,6 +1,6 @@ div.content-box__info - include templates/hd-user-avatar.pug + include ../../templates/hd-user-avatar.pug sib-widget(name='hd-fieldset-title') template diff --git a/src/page-project-left.pug b/src/views/project/page-project-left.pug similarity index 100% rename from src/page-project-left.pug rename to src/views/project/page-project-left.pug diff --git a/src/page-project-profile.pug b/src/views/project/page-project-profile.pug similarity index 91% rename from src/page-project-profile.pug rename to src/views/project/page-project-profile.pug index aefb717d932d0e069d5b476c71b60acd342068e5..62ac1d668d14358455f7940f1f2f5b136d6b0cfa 100644 --- a/src/page-project-profile.pug +++ b/src/views/project/page-project-profile.pug @@ -3,11 +3,11 @@ sib-router(default-route='project-profile', hidden) sib-route(name='project-edit') #project-profile(hidden) - include templates/hd-business-provider.pug - include templates/hd-captain.pug - include templates/hd-circle-team.pug - include templates/hd-customer.pug - include templates/hd-project-team.pug + include ../../templates/hd-business-provider.pug + include ../../templates/hd-captain.pug + include ../../templates/hd-circle-team.pug + include ../../templates/hd-customer.pug + include ../../templates/hd-project-team.pug .content-box__info @@ -94,7 +94,6 @@ sib-router(default-route='project-profile', hidden) search-value-user="" hd-inherit-user-id="search-value-user" - hd-inherit-widgets )