diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 83adcaf..bc3746f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -54,96 +54,60 @@ test:e2e: ## VALIDATION ## +include: + project: infra/gitlab + ref: master + file: templates/deploy.ci.yml + test1: + extends: .ansible stage: integration environment: name: test1 url: https://test1.startinblox.com - before_script: - - npm ci --cache .npm --prefer-offline --only=production - script: - - echo "$APP_CONFIG_TEST1" > config.json - - echo "$SSH_DEPLOY_KEY" | tr -d '\r' > gitlab.key && chmod 600 gitlab.key - - npm run build - - scp -i gitlab.key -o StrictHostKeyChecking=no -r dist/* test1@astral.startinblox.com:~/front/ only: - /^feature\/.*/ when: manual - tags: - - deploy test2: + extends: .ansible stage: integration environment: name: test2 url: https://test2.startinblox.com - before_script: - - npm ci --cache .npm --prefer-offline --only=production - script: - - echo "$APP_CONFIG_TEST2" > config.json - - echo "$SSH_DEPLOY_KEY" | tr -d '\r' > gitlab.key && chmod 600 gitlab.key - - npm run build - - scp -i gitlab.key -o StrictHostKeyChecking=no -r dist/* test2@astral.startinblox.com:~/front/ only: - /^feature\/.*/ when: manual - tags: - - deploy test3: + extends: .ansible stage: integration environment: name: test3 url: https://test3.startinblox.com - before_script: - - npm ci --cache .npm --prefer-offline --only=production - script: - - echo "$APP_CONFIG_TEST3" > config.json - - echo "$SSH_DEPLOY_KEY" | tr -d '\r' > gitlab.key && chmod 600 gitlab.key - - sed -i -E 's/component-chat@([0-9]+).([0-9]+)/component-chat@beta/g' src/dependencies.pug - - npm run build - - scp -i gitlab.key -o StrictHostKeyChecking=no -r dist/* test3@astral.startinblox.com:~/front/ only: - /^feature\/.*/ when: manual - tags: - - deploy stg1: + extends: .ansible stage: acceptance environment: name: stg1 url: https://stg1.startinblox.com - before_script: - - npm ci --cache .npm --prefer-offline --only=production - script: - - echo "$APP_CONFIG_STG1" > config.json - - echo "$SSH_DEPLOY_KEY" | tr -d '\r' > gitlab.key && chmod 600 gitlab.key - - npm run build - - scp -i gitlab.key -o StrictHostKeyChecking=no -r dist/* stg1@astral.startinblox.com:~/front/ only: - /^release\/.*/ when: manual - tags: - - deploy stg2: + extends: .ansible stage: acceptance environment: name: stg2 url: https://stg2.startinblox.com - before_script: - - npm ci --cache .npm --prefer-offline --only=production - script: - - echo "$APP_CONFIG_STG2" > config.json - - echo "$SSH_DEPLOY_KEY" | tr -d '\r' > gitlab.key && chmod 600 gitlab.key - - npm run build - - scp -i gitlab.key -o StrictHostKeyChecking=no -r dist/* stg2@astral.startinblox.com:~/front/ only: - /^release\/.*/ when: manual - tags: - - deploy ## RELEASE TAGGING ## @@ -967,4 +931,4 @@ woma: - master when: manual tags: - - deploy \ No newline at end of file + - deploy diff --git a/cypress/integration/create-channel.spec.js b/cypress/integration/create-channel.spec.js index b28c0f1..bd6b925 100644 --- a/cypress/integration/create-channel.spec.js +++ b/cypress/integration/create-channel.spec.js @@ -13,7 +13,8 @@ context('Create Channel Browser Testing', () => { it('should login', () => cy.login()); describe('Channel Creation process #1', () => { let channelName = 'Test Channel ', - description = 'Test Description '; + description = 'Test Description ', + subtitle = 'Test Subtitle '; it('should visit the channel creation screen', () => { cy.visit('/admin/admin-circle-create'); cy.location().should((loc) => { @@ -24,10 +25,13 @@ context('Create Channel Browser Testing', () => { cy.randomNum().then(num => { channelName += num; description += num; + subtitle += num; cy.get('#admin-circle-create input[name="name"]').clear().type(channelName); cy.get('#admin-circle-create input[name="name"]').should('have.value', channelName); - cy.get('#admin-circle-create input[name="description"]').clear().type(description); - cy.get('#admin-circle-create input[name="description"]').should('have.value', description); + cy.get('#admin-circle-create input[name="subtitle"]').clear().type(subtitle); + cy.get('#admin-circle-create input[name="subtitle"]').should('have.value', subtitle); + cy.get('#admin-circle-create [name="description"] [contenteditable="true"]').clear().type(description); + cy.get('#admin-circle-create [name="description"] [contenteditable="true"]').should('have.value', description); }); }); it('should click on create channel button', () => { @@ -47,7 +51,8 @@ context('Create Channel Browser Testing', () => { }); describe('Channel Creation process #2', () => { let channelName = 'Test Channel ', - description = 'Test Description '; + description = 'Test Description ', + subtitle = 'Test Subtitle '; it('should visit the channel creation screen', () => { cy.visit('/admin/admin-circle-create'); cy.location().should((loc) => { @@ -58,10 +63,13 @@ context('Create Channel Browser Testing', () => { cy.randomNum().then(num => { channelName += num; description += num; + subtitle += num; cy.get('#admin-circle-create input[name="name"]').clear().type(channelName); cy.get('#admin-circle-create input[name="name"]').should('have.value', channelName); - cy.get('#admin-circle-create input[name="description"]').clear().type(description); - cy.get('#admin-circle-create input[name="description"]').should('have.value', description); + cy.get('#admin-circle-create input[name="subtitle"]').clear().type(subtitle); + cy.get('#admin-circle-create input[name="subtitle"]').should('have.value', subtitle); + cy.get('#admin-circle-create [name="description"] [contenteditable="true"]').clear().type(description); + cy.get('#admin-circle-create [name="description"] [contenteditable="true"]').should('have.value', description); }); }); it('should click on create channel button', () => { @@ -81,7 +89,8 @@ context('Create Channel Browser Testing', () => { }); describe('Channel Creation process #3', () => { let channelName = 'Test Channel ', - description = 'Test Description '; + description = 'Test Description ', + subtitle = 'Test Subtitle '; it('should visit the channel creation screen', () => { cy.visit('/admin/admin-circle-create'); cy.location().should((loc) => { @@ -92,10 +101,13 @@ context('Create Channel Browser Testing', () => { cy.randomNum().then(num => { channelName += num; description += num; + subtitle += num; cy.get('#admin-circle-create input[name="name"]').clear().type(channelName); cy.get('#admin-circle-create input[name="name"]').should('have.value', channelName); - cy.get('#admin-circle-create input[name="description"]').clear().type(description); - cy.get('#admin-circle-create input[name="description"]').should('have.value', description); + cy.get('#admin-circle-create input[name="subtitle"]').clear().type(subtitle); + cy.get('#admin-circle-create input[name="subtitle"]').should('have.value', subtitle); + cy.get('#admin-circle-create [name="description"] [contenteditable="true"]').clear().type(description); + cy.get('#admin-circle-create [name="description"] [contenteditable="true"]').should('have.value', description); }); }); it('should click on create channel button', () => { diff --git a/cypress/integration/create-project.spec.js b/cypress/integration/create-project.spec.js index 8775a1e..690ef35 100644 --- a/cypress/integration/create-project.spec.js +++ b/cypress/integration/create-project.spec.js @@ -30,8 +30,8 @@ context('Create Project Browser Testing', () => { cy.get('#admin-project-create input[name="customer.name"]').should('have.value', customerName); cy.get('#admin-project-create input[name="name"]').clear().type(projectName); cy.get('#admin-project-create input[name="name"]').should('have.value', projectName); - cy.get('#admin-project-create textarea[name="description"]').clear().type(description); - cy.get('#admin-project-create textarea[name="description"]').should('have.value', description); + cy.get('#admin-project-create [name="description"] [contenteditable="true"]').clear().type(description); + cy.get('#admin-project-create [name="description"] [contenteditable="true"]').should('have.value', description); }); }); it('should click on create project button', () => { @@ -68,8 +68,8 @@ context('Create Project Browser Testing', () => { cy.get('#admin-project-create input[name="customer.name"]').should('have.value', customerName); cy.get('#admin-project-create input[name="name"]').clear().type(projectName); cy.get('#admin-project-create input[name="name"]').should('have.value', projectName); - cy.get('#admin-project-create textarea[name="description"]').clear().type(description); - cy.get('#admin-project-create textarea[name="description"]').should('have.value', description); + cy.get('#admin-project-create [name="description"] [contenteditable="true"]').clear().type(description); + cy.get('#admin-project-create [name="description"] [contenteditable="true"]').should('have.value', description); }); }); it('should click on create project button', () => { diff --git a/package-lock.json b/package-lock.json index 0934a83..225a375 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1159,9 +1159,9 @@ } }, "@startinblox/hubl-styling-framework": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@startinblox/hubl-styling-framework/-/hubl-styling-framework-1.4.0.tgz", - "integrity": "sha512-SPkKRrWUzS2TJaesnCumr+DkixODktBbWc2P8kMRNUFBe2hJ+U6vKGtxVmnoPQPcGmm3sJJ4ZC2ZHbeZX1DCHg==" + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/@startinblox/hubl-styling-framework/-/hubl-styling-framework-1.4.4.tgz", + "integrity": "sha512-X52jdEgG283HMtXAyKeM3R0YLVwJuKSsR4ZU+h7CUmLrtZ+iPtHDgIu3Z9f17NmrF94zisy7FZaZvG/CWm1trg==" }, "@types/q": { "version": "1.5.4", diff --git a/package.json b/package.json index 875101a..7b603c6 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "scripts": { "prebuild": "rimraf build", "build": "NODE_ENV='production' node internal/parcel.js", - "watch": "rimraf build && node internal/parcel.js", + "watch": "rimraf build .cache && node internal/parcel.js", "cypress:open": "cypress open", "cypress:verify": "cypress verify", "cypress:info": "cypress info", @@ -45,7 +45,7 @@ ] }, "dependencies": { - "@startinblox/hubl-styling-framework": "^1.4.0", + "@startinblox/hubl-styling-framework": "^1.4.4", "fs-extra": "^9.0.1", "normalize.css": "^8.0.1", "parcel-bundler": "^1.12.4", diff --git a/src/dependencies.pug b/src/dependencies.pug index bd5dcf3..ed6c651 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -16,32 +16,32 @@ if themeChecker if endpoints.get if endpoints.get.events && endpoints.get.typeevents - script(type="module" src="https://cdn.skypack.dev/@startinblox/component-event@1.4" defer) - //- script(type="module" src="/lib/sib-event-component/sib-event.js" defer) + script(type="module" src="https://cdn.skypack.dev/@startinblox/component-event@1.4" defer) + //- script(type="module" src="/lib/sib-event-component/sib-event.js" defer) if endpoints.get.resources && endpoints.get.resourceskeywords && endpoints.get.resourcestypes - //- script(type="module" src="https://cdn.skypack.dev/@startinblox/component-resource@1.2" defer) - //- script(type="module" src="/lib/sib-resource/sib-resource.js" defer) + script(type="module" src="https://cdn.skypack.dev/@startinblox/component-resource@1.2" defer) + //- script(type="module" src="/lib/sib-resource/sib-resource.js" defer) if endpoints.get.joboffers - //- script(type="module" src="https://cdn.skypack.dev/@startinblox/component-job-board@1.3" defer) - script(type="module" src="/lib/solid-job-board/dist/index.js" defer) + //- script(type="module" src="https://cdn.skypack.dev/@startinblox/component-job-board@1.3" defer) + script(type="module" src="/lib/solid-job-board/dist/index.js" defer) if endpoints.get.uploads && endpoints.get.skills && endpoints.get.users - //- script(type="module" src="https://cdn.skypack.dev/@startinblox/component-directory@1.4" defer) - script(type="module" src="/lib/solid-directory/dist/index.js" defer) + //- script(type="module" src="https://cdn.skypack.dev/@startinblox/component-directory@1.4" defer) + script(type="module" src="/lib/solid-directory/dist/index.js" defer) if endpoints.get.dashboards - script(type="module" src="https://cdn.skypack.dev/@startinblox/component-dashboard@beta" defer) - //- script(type="module" src="/lib/solid-dashboard/dist/index.js" defer) + //- script(type="module" src="https://cdn.skypack.dev/@startinblox/component-dashboard@0.7" defer) + script(type="module" src="/lib/solid-dashboard/dist/index.js" defer) if endpoints.get.users - script(type="module" src="https://cdn.skypack.dev/@startinblox/component-chat@1.7" defer) - //- script(type="module" src="/lib/solid-xmpp-chat/dist/index.js" defer) + script(type="module" src="https://cdn.skypack.dev/@startinblox/component-chat@1.7" defer) + //- script(type="module" src="/lib/solid-xmpp-chat/dist/index.js" defer) if endpoints.get.polls - script(type="module" src="https://cdn.skypack.dev/@startinblox/component-poll@1.2" defer) - //- script(type="module" src="/lib/sib-polls-component/index.js" defer) + script(type="module" src="https://cdn.skypack.dev/@startinblox/component-poll@1.2" defer) + //- script(type="module" src="/lib/sib-polls-component/index.js" defer) if endpoints.get.polls || endpoints.get.events || endpoints.get.resources - script(type="module" src="https://cdn.skypack.dev/@startinblox/component-conversation@0.8" defer) + script(type="module" src="https://cdn.skypack.dev/@startinblox/component-conversation@0.8" defer) diff --git a/src/locales/en.json b/src/locales/en.json index fcc8faa..2a8252b 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -70,18 +70,22 @@ "title": " Create a circle", "labelStatus": "Statut du circle", "labelName": "Circle name *", - "labelDescription": "Circle headline *", + "labelSubtitle": "Circle headline *", + "labelDescription": "Circle description", + "descriptionHelp": "You can use markdown", "buttonSubmit": "Save" }, "edit": { "buttonDelete": "Remove", "backlink": "Back", "title": "Edit your circle", - "labelStatus": "Circle status", + "labelStatus": "Circle status *", "labelName": "Circle name *", "labelOwner": "Admin *", - "labelDescription": "Circle headline", - "subTitle": "Members list", + "labelDescription": "Circle description", + "descriptionHelp": "You can use markdown", + "labelSubtitle": "Circle headline *", + "subTitle": "Members list :", "tableHeader1": "Name", "tableHeader2": "Access", "buttonSubmit": "Save", @@ -111,6 +115,7 @@ "buttonDelete": "Remove the circle", "buttonQuit": "Leave the circle", "buttonJoin": "Join the circle", + "description": "Description :", "subTitle": "Members :" } }, @@ -134,6 +139,8 @@ "backlink": "Back", "title": " Create a nouveau project", "labelName": "Project name*", + "labelDescription": "Poject description", + "descriptionHelp": "You can use markdown", "labelCustomer": "Customer name*", "labelDescription": "Description", "labelCaptain": "Project captain*", @@ -146,8 +153,9 @@ "labelName": "Project name *", "labelCustomer": "Customer name *", "labelCaptain": "Capitain *", - "labelDescription": "Description", - "subTitle": "Team members", + "labelDescription": "Project description", + "descriptionHelp": "You can use markdown", + "subTitle": "Team members :", "tableHeader1": "Name", "tableHeader2": "Access", "buttonSubmit": "Save", @@ -183,6 +191,7 @@ "buttonQuit": "Leave the project", "buttonJoin": "Join the project", "captain": "Captain :", + "description": "Description :", "subTitle": "Team :" } }, @@ -213,4 +222,4 @@ "private": "Private", "public": "Public" } -} \ No newline at end of file +} diff --git a/src/locales/es.json b/src/locales/es.json index 6988359..86f3959 100644 --- a/src/locales/es.json +++ b/src/locales/es.json @@ -70,18 +70,22 @@ "title": "Crear un círculo", "labelStatus": "Estado del círculo", "labelName": "Nombre del círculo *", - "labelDescription": "Subtítulo del círculo *", + "labelSubtitle": "Subtítulo del círculo *", + "labelDescription": "Descripción del círculo", + "descriptionHelp": "Puedes usar markdown", "buttonSubmit": "Guardar" }, "edit": { "buttonDelete": "Eliminar", "backlink": "Atrás", "title": "Modificá tu círculo", - "labelStatus": "Estado del círculo", + "labelStatus": "Estado del círculo *", "labelName": "Nombre del círculo *", "labelOwner": "Administrador/a *", - "labelDescription": "Subtítulo del círculo", - "subTitle": "Listado de miembrxs", + "labelSubtitle": "Subtítulo del círculo *", + "labelDescription": "Descripción del círculo", + "descriptionHelp": "Puedes usar markdown", + "subTitle": "Listado de miembrxs: ", "tableHeader1": "Nombre", "tableHeader2": "Acceso", "buttonSubmit": "Guardar", @@ -111,6 +115,7 @@ "buttonDelete": "Eliminar el círculo", "buttonQuit": "Salir del círculo", "buttonJoin": "Unirse al círculo", + "description": "Descripción :", "subTitle": "Miembrxs: " } }, @@ -134,6 +139,8 @@ "backlink": "Atrás", "title": "Crear un proyecto nuevo", "labelName": "Nombre del proyecto *", + "labelDescription": "Descripción del proyecto", + "descriptionHelp": "Puedes usar markdown", "labelCustomer": "Nombre del/la clientx *", "labelDescription": "Description", "labelCaptain": "Líder del proyecto *", @@ -146,8 +153,9 @@ "labelName": "Nombre del proyecto *", "labelCustomer": "Nombre del/la clientx *", "labelCaptain": "Capitain *", - "labelDescription": "Description", - "subTitle": "Lista de miembrxs", + "labelDescription": "Descripción del proyecto", + "descriptionHelp": "Puedes usar markdown", + "subTitle": "Lista de miembrxs: ", "tableHeader1": "Nombre", "tableHeader2": "Acceso", "buttonSubmit": "Guardar", @@ -183,6 +191,7 @@ "buttonQuit": "Salir del proyecto", "buttonJoin": "Unirse al proyecto", "captain": "Líder : ", + "description": "Descripción :", "subTitle": "Equipo : " } }, diff --git a/src/locales/fr.json b/src/locales/fr.json index f0d7cd3..b7bbdee 100644 --- a/src/locales/fr.json +++ b/src/locales/fr.json @@ -70,18 +70,23 @@ "title": "Créer un cercle", "labelStatus": "Statut du cercle", "labelName": "Nom du cercle *", - "labelDescription": "Sous-titre du cercle *", + "labelSubtitle": "Sous-titre du cercle *", + "labelDescription": "Description du cercle", + "descriptionHelp": "Vous pouvez utiliser Markdown", "buttonSubmit": "Enregistrer" }, "edit": { "buttonDelete": "Retirer", "backlink": "Retour", "title": "Modifie ton cercle", - "labelStatus": "Statut du cercle", + "labelStatus": "Statut du cercle *", "labelName": "Nom du cercle *", "labelOwner": "Administrateur ou administratrice *", - "labelDescription": "Sous-titre du cercle", - "subTitle": "Liste des membres", + "labelDescription": "Description du cercle", + "descriptionHelp": "Vous pouvez utiliser Markdown", + "labelSubtitle": "Sous-titre du cercle *", + "labelStatus": "Statut *", + "subTitle": "Liste des membres :", "tableHeader1": "Nom", "tableHeader2": "Accès", "buttonSubmit": "Enregistrer", @@ -111,6 +116,7 @@ "buttonDelete": "Supprimer le cercle", "buttonQuit": "Quitter le cercle", "buttonJoin": "Rejoindre le cercle", + "description": "Description :", "subTitle": "Membres :" } }, @@ -134,6 +140,8 @@ "backlink": "Retour", "title": "Créer un nouveau projet", "labelName": "Nom du projet *", + "labelDescription": "Description du projet", + "descriptionHelp": "Vous pouvez utiliser Markdown", "labelCustomer": "Nom du client*", "labelDescription": "Description", "labelCaptain": "Capitaine du projet*", @@ -146,8 +154,9 @@ "labelName": "Nom du projet *", "labelCustomer": "Nom du client *", "labelCaptain": "Capitaine *", - "labelDescription": "Description", - "subTitle": "Liste des membres", + "labelDescription": "Description du projet", + "descriptionHelp": "Vous pouvez utiliser Markdown", + "subTitle": "Liste des membres :", "tableHeader1": "Nom", "tableHeader2": "Accès", "buttonSubmit": "Enregistrer", @@ -183,6 +192,7 @@ "buttonQuit": "Quitter le projet", "buttonJoin": "Rejoindre le projet", "captain": "Capitaine :", + "description": "Description :", "subTitle": "Equipe :" } }, @@ -213,4 +223,4 @@ "private": "Privé", "public": "Public" } -} \ No newline at end of file +} diff --git a/src/styles/about/_index.scss b/src/styles/about/_index.scss index e8ce196..030fa22 100644 --- a/src/styles/about/_index.scss +++ b/src/styles/about/_index.scss @@ -1,9 +1,5 @@ #about { - p { - line-height: 22px; - } - >div>div>div { min-height: 285px; } diff --git a/src/styles/content/_index.scss b/src/styles/content/_index.scss index 668c345..bdc9673 100644 --- a/src/styles/content/_index.scss +++ b/src/styles/content/_index.scss @@ -166,3 +166,11 @@ main { border: 3px solid white; /* creates padding around scroll thumb */ } } + + +solid-display-value-markdown { + + p { + margin: 0; + } +} diff --git a/src/styles/index.scss b/src/styles/index.scss index 052147d..c00a87a 100644 --- a/src/styles/index.scss +++ b/src/styles/index.scss @@ -32,21 +32,6 @@ solid-display>div { - - -/* Job-offers */ -.job-edit { - position: absolute; - right: 20px; - top: 20px; -} - -.padding-very-xxlarge { - padding-left: 135px; - padding-right: 135px; -} - - $small: "max-width: 768px"; .segment { @@ -121,13 +106,6 @@ $small: "max-width: 768px"; } } -/* Converse */ -@media (max-width: 767.98px) { - #conversejs .converse-chatboxes .chatbox .box-flyout { - width: 100% !important; - } -} - @import 'header/_index'; diff --git a/src/styles/job-offers/_index.scss b/src/styles/job-offers/_index.scss index c62640f..f611322 100644 --- a/src/styles/job-offers/_index.scss +++ b/src/styles/job-offers/_index.scss @@ -1,4 +1,4 @@ -#job-offers>div:first-of-type { +#job-offers #job-offers-board { min-height: calc(100vh - 72px); @media (max-width: 768px) { diff --git a/src/views/page-about.pug b/src/views/page-about.pug index 49eb7f9..441afc2 100644 --- a/src/views/page-about.pug +++ b/src/views/page-about.pug @@ -3,10 +3,10 @@ div.segment.padding-top-small.padding-right-large.padding-bottom-small.padding-l div.segment.lg-two-third.sm-full.margin-top-small.sm-margin-top-xxsmall.padding-right-xlarge.sm-padding-none div.segment.whitespace-normal.shadow.padding-top-xlarge.padding-right-xxlarge.padding-bottom-xxlarge.padding-left-xxlarge.sm-padding-medium.sm-padding-top-xxsmall.sm-padding-bottom-xlarge.text-center - h3.text-color-heading.text-semibold.text-uppercase(data-trans='about.card1.subTitle') + h3.text-color-heading.text-semibold.text-uppercase.line-xlarge(data-trans='about.card1.subTitle') div - p.segment.whitespace-normal.text-large(data-trans='about.card1.paragraph1') - p.segment.whitespace-normal.text-large(data-trans='about.card1.paragraph2') + p.segment.whitespace-normal.text-large.line-xlarge(data-trans='about.card1.paragraph1') + p.segment.whitespace-normal.text-large.line-xlarge(data-trans='about.card1.paragraph2') a.link.text-xlarge(href="https://startinblox.com/fr/" target="_blank") https://startinblox.com/fr/ div.segment.lg-third.sm-full.margin-top-small.text-top @@ -14,5 +14,5 @@ div.segment.padding-top-small.padding-right-large.padding-bottom-small.padding-l div.segment.margin-top-small div.segment.center.icon.icon-xlarge.rounded-third.rounded.rounded-large.icon-envelope.icon-secondary h3.text-color-heading.text-semibold.text-uppercase.text-medium(data-trans='about.card2.subTitle') - p(data-trans='about.card2.paragraph1') + p.line-xlarge(data-trans='about.card2.paragraph1') a.button.text-bold.text-uppercase.color-secondary.bordered(href="https://startinblox.com/fr/#home-contact" target="_blank" data-trans='about.card2.link').main-cta diff --git a/src/views/page-circle.pug b/src/views/page-circle.pug index bfb8a5f..28bbf58 100644 --- a/src/views/page-circle.pug +++ b/src/views/page-circle.pug @@ -18,7 +18,7 @@ nav.jsRightMenu.sidebar.whitespace-normal(role='navigation') span.icon.icon-arrow-right.xxsmall.margin-right-xxsmall a(data-trans='circle.menuRight.fold') solid-route.segment.lg-full.sm-full(name='circle-chat') - li.segment.lg-full.padding-medium + li.segment.lg-full.sm-full.padding-medium span.icon.ci-chat.icon-xlarge.margin-right-medium a(data-trans='circle.menuRight.chat') solid-route.segment.lg-full.sm-full(name='circle-information') @@ -39,5 +39,4 @@ nav.jsRightMenu.sidebar.whitespace-normal(role='navigation') solid-route.segment.lg-full.sm-full(name='circle-polls' use-id) li.segment.lg-full.sm-full.padding-medium span.icon.ci-networking.icon-xlarge.margin-right-medium - a(data-trans='circle.menuRight.polls') - + a(data-trans='circle.menuRight.polls') diff --git a/src/views/partials/admin/page-admin-circles-create.pug b/src/views/partials/admin/page-admin-circles-create.pug index 8648da4..8e55513 100644 --- a/src/views/partials/admin/page-admin-circles-create.pug +++ b/src/views/partials/admin/page-admin-circles-create.pug @@ -1,5 +1,8 @@ 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 - h2.margin-none.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='circle.create.title') + div.segment.lg-half + h2.margin-none.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='circle.create.title') + div.segment.lg-half.sm-hidden.text-right + solid-link(class="backlink", bind-resources, next='admin-circle-list' data-trans='circle.create.backlink') div.segment.lg-full.sm-full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespace-normal div#loader-circles-create.loader.loader-top @@ -11,27 +14,35 @@ div.segment.lg-full.sm-full.padding-large.sm-padding-xsmall.sm-padding-top-mediu solid-form.form( data-src=`${endpoints.circles || endpoints.post.circles}` - fields='status, linebreak, name, description' + fields='status, linebreak, name, subtitle, description, help' required-status required-name - required-description + required-subtitle loader-id='loader-circles-create' class-status='segment margin-bottom-medium lg-half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' class-linebreak='segment lg-half sm-hidden' class-name='segment margin-bottom-medium lg-half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' - class-description='segment margin-bottom-medium lg-half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' + class-subtitle='segment margin-bottom-medium lg-half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' + class-description='segment margin-bottom-xxsmall lg-full sm-full text-small text-semibold text-uppercase text-color-heading' + class-help='segment lg-full sm-full text-small margin-bottom-medium padding-left-small' + label-status='' label-name='' + label-subtitle='' label-description='' + label-help='' widget-status='hubl-status' widget-linebreak='solid-form-hidden' + widget-description='solid-form-richtext-label' + widget-help='solid-form-hidden-label' + 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' + data-trans='label-status=circle.create.labelStatus;label-name=circle.create.labelName;label-description=circle.create.labelDescription;submit-button=circle.create.buttonSubmit;label-subtitle=circle.create.labelSubtitle;label-help=circle.create.descriptionHelp' ) diff --git a/src/views/partials/admin/page-admin-circles.pug b/src/views/partials/admin/page-admin-circles.pug index 6abd3a7..3d1a476 100644 --- a/src/views/partials/admin/page-admin-circles.pug +++ b/src/views/partials/admin/page-admin-circles.pug @@ -76,14 +76,15 @@ solid-router(default-route='admin-circle-list', hidden) class='table-body' bind-user nested-field='circles' - fields='cell1(circle.name, circle.description), cell2(circle.owner), cell3(leaveButton)' + fields='cell1(circle.name, circle.subtitle), cell2(circle.owner), cell3(leaveButton)' loader-id='loader-admin-circles' - class-cell1='segment table-cell lg-third text-left text-top' + class-cell1='segment table-cell lg-third whitespace-normal' class-cell2='segment table-cell lg-third text-center text-left' class-cell3='segment table-cell lg-third text-center' class-circle.name='segment block margin-bottom-xxsmall text-xlarge text-color-heading text-semibold text-letter-spacing-large text-underline ellipsis' + class-circle.subtitle='segment lg-full sm-full' action-leaveButton="joinButton" widget-leaveButton="hubl-admin-circle-leave-button" @@ -102,7 +103,7 @@ solid-router(default-route='admin-circle-list', hidden) value-user.username='hubl-workaround-493' widget-user.username='solid-form-hidden' - submit-button='Rejoindre' + submit-button='' data-trans='submit-button=circle.list.buttonJoin' ) hubl-reactivity(data-src=`${endpoints.circles || endpoints.get.circles}` target-src='${value}') @@ -116,14 +117,15 @@ solid-router(default-route='admin-circle-list', hidden) class='table-body' data-src=`${endpoints.circles || endpoints.get.circles}joinable/` - fields='cell1(name, description), cell2(owner), cell3(members)' + fields='cell1(name, subtitle), cell2(owner), cell3(members)' loader-id='loader-admin-circles' - class-cell1='segment table-cell lg-third text-left text-top' + class-cell1='segment table-cell lg-third whitespace-normal' class-cell2='segment table-cell lg-third text-center text-left' class-cell3='segment table-cell lg-third text-center' class-name='segment block margin-bottom-xxsmall text-xlarge text-color-heading text-semibold text-letter-spacing-large text-underline ellipsis' + class-subtitle='segment lg-full sm-full' widget-owner='hubl-circle-owner' widget-members="hubl-admin-circle-join-button" diff --git a/src/views/partials/admin/page-admin-communities.pug b/src/views/partials/admin/page-admin-communities.pug index a59f450..7bc3f56 100644 --- a/src/views/partials/admin/page-admin-communities.pug +++ b/src/views/partials/admin/page-admin-communities.pug @@ -51,5 +51,5 @@ solid-widget(name='hubl-action-community') div div -#admin-users-create.content-box__height(hidden, data-view="admin-users-create") +#admin-users-create(hidden, data-view="admin-users-create") include page-admin-users-create.pug diff --git a/src/views/partials/admin/page-admin-projects-create.pug b/src/views/partials/admin/page-admin-projects-create.pug index aff9cd1..f18216d 100644 --- a/src/views/partials/admin/page-admin-projects-create.pug +++ b/src/views/partials/admin/page-admin-projects-create.pug @@ -1,5 +1,8 @@ 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 - h2.margin-none.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='project.create.title') + div.segment.lg-half + h2.margin-none.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='project.create.title') + div.segment.lg-half.sm-hidden.text-right + solid-link(class="backlink right", next='admin-project-list' data-trans='project.create.backlink') div.segment.lg-full.sm-full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespace-normal div#loader-projects-create.loader.loader-top @@ -11,7 +14,7 @@ div.segment.lg-full.sm-full.padding-large.sm-padding-xsmall.sm-padding-top-mediu solid-form.form( data-src=`${endpoints.projects || endpoints.post.projects}` - fields='status, customer.name, name, description, captain, linebreak' + fields='status, customer.name, name, description, help, captain, linebreak' range-captain=`${endpoints.users || endpoints.get.users}` required-status @@ -23,23 +26,26 @@ div.segment.lg-full.sm-full.padding-large.sm-padding-xsmall.sm-padding-top-mediu label-status='' label-customer.name='' label-name='' - label-description='Description' + label-description='' + label-help='' label-captain='' class-customer.name='segment margin-bottom-medium lg-half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' class-name='segment margin-bottom-medium lg-half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' - class-description='segment margin-bottom-medium lg-full sm-full text-small text-semibold text-uppercase text-color-heading' + class-description='segment margin-bottom-xxsmall lg-full sm-full text-small text-semibold text-uppercase text-color-heading' + class-help='segment lg-full sm-full text-small margin-bottom-medium padding-left-small' class-captain='segment margin-bottom-medium lg-half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' class-linebreak='segment lg-full sm-hidden' widget-status='solid-form-hidden' value-status='Private' - widget-description='solid-form-textarea-label' + widget-description='solid-form-richtext-label' widget-captain='solid-form-dropdown-autocompletion-label' + widget-help='solid-form-hidden-label' widget-linebreak='solid-form-hidden' submit-button='' next='project' - data-trans='label-status=project.create.labelStatus;label-customer.name=project.create.labelCustomer;label-name=project.create.labelName;label-description=project.create.labelDescription;label-captain=project.create.labelCaptain;submit-button=project.create.buttonSubmit' - ) \ No newline at end of file + data-trans='label-status=project.create.labelStatus;label-customer.name=project.create.labelCustomer;label-name=project.create.labelName;label-description=project.create.labelDescription;label-captain=project.create.labelCaptain;label-help=project.create.descriptionHelp;submit-button=project.create.buttonSubmit' + ) diff --git a/src/views/partials/admin/page-admin-projects.pug b/src/views/partials/admin/page-admin-projects.pug index 1eccbdb..694b7cb 100644 --- a/src/views/partials/admin/page-admin-projects.pug +++ b/src/views/partials/admin/page-admin-projects.pug @@ -95,12 +95,13 @@ solid-router(default-route='admin-project-list', hidden) 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 lg-quarter text-left' + class-cell1='segment table-cell lg-quarter text-left whitespace-normal' class-cell2='segment table-cell lg-quarter text-left' class-cell3='segment table-cell lg-quarter text-left' class-cell4='segment table-cell 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 ellipsis' + class-project.name='segment lg-full sm-full' action-leaveButton="joinButton" widget-leaveButton="hubl-admin-project-leave-button" @@ -139,12 +140,13 @@ solid-router(default-route='admin-project-list', hidden) fields='cell1(customer.name, name), cell2(members), cell3(captain), cell4(joinButton)' loader-id='loader-admin-projects' - class-cell1='segment table-cell lg-quarter text-left' + class-cell1='segment table-cell lg-quarter text-left whitespace-normal' class-cell2='segment table-cell lg-quarter text-left' class-cell3='segment table-cell lg-quarter text-left' class-cell4='segment table-cell 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 ellpsis' + class-name='segment lg-full sm-full' action-joinButton="joinButton" # Workaround: I need members two times widget-joinButton="hubl-admin-project-join-button" diff --git a/src/views/partials/admin/page-admin-users-create.pug b/src/views/partials/admin/page-admin-users-create.pug index 8d6ae22..eede28c 100644 --- a/src/views/partials/admin/page-admin-users-create.pug +++ b/src/views/partials/admin/page-admin-users-create.pug @@ -1,5 +1,8 @@ div.segment.lg-full.sm-full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.padding-large.border-bottom.border-color-grey - h2.margin-none.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='communities.title') + div.segment.lg-half + h2.margin-none.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='communities.title') + div.segment.lg-half.sm-hidden.text-right + solid-link(class="backlink", bind-resources, next='admin-communities-list' data-trans='circle.create.backlink') div.segment.lg-full.sm-full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespace-normal diff --git a/src/views/partials/circle/page-circle-chat.pug b/src/views/partials/circle/page-circle-chat.pug index 79f6f3d..4d2cefc 100644 --- a/src/views/partials/circle/page-circle-chat.pug +++ b/src/views/partials/circle/page-circle-chat.pug @@ -1,7 +1,7 @@ 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 solid-display.text-xxlarge.text-letter-spacing-large( bind-resources - fields='name, dash, description' + fields='name, dash, subtitle' value-dash=' - ' diff --git a/src/views/partials/circle/page-circle-edit.pug b/src/views/partials/circle/page-circle-edit.pug index 025b497..f8c63b8 100644 --- a/src/views/partials/circle/page-circle-edit.pug +++ b/src/views/partials/circle/page-circle-edit.pug @@ -1,23 +1,23 @@ solid-ac-checker(permission='acl:Read', bind-resources) - div.segment.lg-full.padding-large.border-bottom.border-color-grey + div.segment.lg-full.sm-full.padding-large.border-bottom.border-color-grey div.segment.lg-half solid-display.text-xxlarge.text-letter-spacing-large( bind-resources - fields='name, dash, description' + fields='name, dash, subtitle' value-dash=' - ' class-name='text-color-heading text-bold' class-dash='text-color-heading text-bold' ) - div.segment.lg-half.text-right + div.segment.lg-half.sm-hidden.text-right solid-link(class="backlink", bind-resources, next='circle-profile' data-trans='circle.edit.backlink') -div.segment.lg-full.padding-large.whitespace-normal +div.segment.lg-full.sm-full.padding-large.whitespace-normal solid-widget(name="circle-edit-members-delete") template - solid-ac-checker(permission="acl:Delete" data-src="${src}") + solid-ac-checker(permission="acl:Delete", data-src="${src}") solid-delete( class='button text-xsmall text-bold text-uppercase color-secondary bordered' data-src="${src}" @@ -38,24 +38,30 @@ div.segment.lg-full.padding-large.whitespace-normal solid-form.form( bind-resources - fields='name, description, status, owner' + fields='name, subtitle, description, status, owner' required-status required-name required-owner + required-subtitle range-owner=`${endpoints.users || endpoints.get.users}` - label-status='' - widget-status='hubl-status' - label-name='' label-owner='' label-description='' + label-subtitle='' + label-status='' + label-help='' - class-name='segment margin-bottom-medium lg-half padding-right-small text-small text-semibold text-uppercase text-color-heading' - class-description='segment margin-bottom-medium lg-half padding-left-small text-small text-semibold text-uppercase text-color-heading' - class-status='segment margin-bottom-medium lg-half padding-right-small text-small text-semibold text-uppercase text-color-heading whitespace-normal' - class-owner='segment margin-bottom-medium lg-half padding-left-small text-small text-semibold text-uppercase text-color-heading whitespace-normal' + class-name='segment margin-bottom-medium lg-half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' + class-subtitle='segment margin-bottom-medium lg-half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' + class-description='segment margin-bottom-medium lg-full sm-full sm-full text-small text-semibold text-uppercase text-color-heading' + class-status='segment margin-bottom-medium lg-half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' + class-owner='segment margin-bottom-medium lg-half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' + class-help='segment lg-full sm-full text-small margin-bottom-medium padding-left-small' + widget-status='hubl-status' + widget-description='solid-form-richtext-label' + widget-help='solid-form-hidden-label' widget-owner='solid-form-dropdown-autocompletion-label' partial='' @@ -63,10 +69,10 @@ div.segment.lg-full.padding-large.whitespace-normal submit-button='Enregistrer' next='circle-information' - data-trans='label-status=circle.edit.labelStatus;label-name=circle.edit.labelName;label-owner=circle.edit.labelOwner;label-description=circle.edit.labelDescription;submit-button=circle.edit.buttonSubmit' + data-trans='label-status=circle.edit.labelStatus;label-name=circle.edit.labelName;label-owner=circle.edit.labelOwner;label-description=circle.edit.labelDescription;submit-button=circle.edit.buttonSubmit;label-subtitle=circle.edit.labelSubtitle;label-help=circle.edit.descriptionHelp' ) - h3.segment.lg-full.padding-bottom-small.border-bottom.border-color-grey.text-color-heading.text-bold.text-letter-spacing-large(data-trans='circle.edit.subTitle') + h3.segment.lg-full.sm-full.padding-bottom-small.border-bottom.border-color-grey.text-color-heading.text-bold.text-letter-spacing-large(data-trans='circle.edit.subTitle') solid-ac-checker(permission='acl:Append', bind-resources, nested-field='members') solid-form.block.segment.margin-bottom-xlarge.form( @@ -85,8 +91,8 @@ div.segment.lg-full.padding-large.whitespace-normal .segment.table-wrapper .table div.table-header.bg-color-third.text-color-heading - div.segment.table-cell.lg-two-third(data-trans='circle.edit.tableHeader1') - div.segment.table-cell.lg-third(data-trans='circle.edit.tableHeader2') + div.segment.table-cell.lg-half(data-trans='circle.edit.tableHeader1') + div.segment.table-cell.lg-half(data-trans='circle.edit.tableHeader2') solid-display( class='table-body' @@ -95,8 +101,8 @@ div.segment.lg-full.padding-large.whitespace-normal fields='cell(segment1(user.account.picture), segment2(line1(user.name, is_admin), line2(atom, user.communities))), self' loader-id='loader-circle-edit' - class-cell='segment table-cell lg-two-third labelled-avatar two-lines text-left' - class-self='segment table-cell lg-third text-center' + class-cell='segment table-cell lg-half labelled-avatar two-lines text-left' + class-self='segment table-cell lg-half text-center' class-segment1='segment' class-user.account.picture='avatar' @@ -120,4 +126,4 @@ div.segment.lg-full.padding-large.whitespace-normal ) //- Only to show the table grid - div.segment.table-cell.lg-third + div.segment.table-cell.lg-half diff --git a/src/views/partials/circle/page-circle-profile.pug b/src/views/partials/circle/page-circle-profile.pug index 4468c38..11a0d05 100644 --- a/src/views/partials/circle/page-circle-profile.pug +++ b/src/views/partials/circle/page-circle-profile.pug @@ -7,7 +7,7 @@ solid-router(default-route='circle-profile', hidden) 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 solid-display.text-xxlarge.text-letter-spacing-large( bind-resources - fields='name, dash, description' + fields='name, dash, subtitle' value-dash=' - ' @@ -52,48 +52,56 @@ solid-router(default-route='circle-profile', hidden) data-trans='data-label=circle.profile.buttonDelete' next='admin-circles' ) + + h3.text-color-heading.text-bold.text-letter-spacing-large(data-trans='circle.profile.description') + + solid-display.segment.block.sm-hidden.whitespace-normal( + bind-resources + fields='description' + widget-description='solid-display-value-markdown' + ) - 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 text-xsmall text-bold text-uppercase color-secondary bordered' - data-src="${src}" - data-label='' - data-trans='data-label=circle.profile.buttonQuit' - next='circle-left' - ) + 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 text-xsmall text-bold text-uppercase color-secondary bordered' + 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.text-xsmall.text-bold.text-uppercase.reversed.color-secondary.bordered.icon.icon-arrow-right-circle - solid-form( - data-src='' - nested-field='members' + solid-widget(name='hubl-circle-join-button') + template + button.button.text-xsmall.text-bold.text-uppercase.reversed.color-secondary.bordered.icon.icon-arrow-right-circle + solid-form( + data-src='' + nested-field='members' - fields='user.username' - value-user.username='hubl-workaround-493' - widget-user.username='solid-form-hidden' + fields='user.username' + value-user.username='hubl-workaround-493' + widget-user.username='solid-form-hidden' - submit-button='' - data-trans='submit-button=circle.profile.buttonJoin' - ) + 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" - ) + 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" + ) - h3.text-color-heading.text-bold.text-uppercase.text-letter-spacing-large(data-trans='circle.profile.subTitle') + h3.text-color-heading.text-bold.text-letter-spacing-large(data-trans='circle.profile.subTitle') solid-widget(name='hubl-circle-user-admin') template ${value ? "Administrateur" : ""} diff --git a/src/views/partials/header.pug b/src/views/partials/header.pug index 8766e85..0942113 100644 --- a/src/views/partials/header.pug +++ b/src/views/partials/header.pug @@ -104,16 +104,16 @@ div li.segment.padding-small.sm-padding-medium.sm-padding-left-xlarge.border-bottom.border-color-grey div(data-trans='header.admin') ul.text-normal - if (endpoints.users || (endpoints.get && endpoints.get.users)) - solid-route.text-hover(name='admin-communities') + if endpoints.get.users + solid-link.text-hover(next='admin-communities') li.segment.padding-top-small.sm-padding-top-medium a.icon.icon-people.icon-third.icon-small.icon-margin-right-xsmall(data-trans='admin.menuRight.community') - if endpoints.circles || (endpoints.get && endpoints.get.circles) - solid-route.text-hover(name='admin-circles') + if endpoints.get.circles + solid-link.text-hover(next='admin') li.segment.padding-top-small.sm-padding-top-medium a.icon.icon-globe.icon-third.icon-small.icon-margin-right-xsmall(data-trans='admin.menuRight.circles') - if endpoints.projects || (endpoints.get && endpoints.get.projects) - solid-route.text-hover(name='admin-projects') + if endpoints.get.projects + solid-link.text-hover(next='admin-projects') li.segment.padding-top-small.sm-padding-top-medium a.icon.icon-folder-alt.icon-third.icon-small.icon-margin-right-xsmall(data-trans='admin.menuRight.projects') li.border-bottom.border-color-grey diff --git a/src/views/partials/menu-left.pug b/src/views/partials/menu-left.pug index e5bd2e5..a4b77b8 100644 --- a/src/views/partials/menu-left.pug +++ b/src/views/partials/menu-left.pug @@ -140,7 +140,7 @@ solid-router#navbar-router(default-route='dashboard') div.divider if endpoints.get.projects div.menu-wrapper - solid-link.menu.segment.lg-full.sm-full.padding-small.text-semibold.text-color-white.heading-active.bg-color-heading.hover.active(next='admin-project-list') + solid-link.menu.segment.lg-full.sm-full.padding-small.text-semibold.text-color-white.heading-active.bg-color-heading.hover.active(next='admin-projects') div.segment.margin-right-xxsmall div.segment.icon.icon-small.icon-folder-alt div.segment.lg-three-quarter.sm-three-quarter.text-uppercase.text-letter-spacing-large(data-trans="menuLeft.projects") @@ -167,7 +167,7 @@ solid-router#navbar-router(default-route='dashboard') div.divider if endpoints.get.circles div.menu-wrapper - solid-link.menu.segment.lg-full.sm-full.padding-small.text-semibold.text-color-white.heading-active.bg-color-heading.hover.active(next='admin-circle-list') + solid-link.menu.segment.lg-full.sm-full.padding-small.text-semibold.text-color-white.heading-active.bg-color-heading.hover.active(next='admin') div.segment.margin-right-xxsmall div.segment.icon.icon-small.icon-folder-alt div.segment.lg-three-quarter.sm-three-quarter.text-uppercase.text-letter-spacing-large(data-trans="menuLeft.circles") diff --git a/src/views/partials/project/page-project-edit.pug b/src/views/partials/project/page-project-edit.pug index ac75f49..811bbd5 100644 --- a/src/views/partials/project/page-project-edit.pug +++ b/src/views/partials/project/page-project-edit.pug @@ -1,6 +1,6 @@ solid-ac-checker(permission='acl:Read', bind-resources) - div.segment.lg-full.padding-large.border-bottom.border-color-grey - div.segment.lg-half + div.segment.lg-full.sm-full.padding-large.border-bottom.border-color-grey + div.segment.lg-half.sm-full solid-display.text-xxlarge.text-letter-spacing-large( bind-resources fields='const-title1, number, customer.name, dash, name' @@ -14,14 +14,14 @@ solid-ac-checker(permission='acl:Read', bind-resources) value-const-title1='N°' value-dash=' - ' ) - div.segment.lg-half.text-right + div.segment.lg-half.sm-hidden.text-right solid-link(class='backlink', bind-resources, next='project-profile' data-trans='project.edit.backlink') -div.segment.lg-full.padding-large.whitespace-normal +div.segment.lg-full.sm-full.padding-large.whitespace-normal solid-widget(name="project-edit-members-delete") template - solid-ac-checker(permission="acl:Delete" data-src="${src}") + solid-ac-checker(permission="acl:Delete", data-src="${src}") solid-delete( class='button text-xsmall text-bold text-uppercase color-secondary bordered' data-src="${src}" @@ -43,7 +43,7 @@ div.segment.lg-full.padding-large.whitespace-normal solid-form.form( bind-resources - fields='customer.name, name, description, captain, linebreak' + fields='customer.name, name, description, help, captain, linebreak' required-customer.name required-name required-captain @@ -53,26 +53,29 @@ div.segment.lg-full.padding-large.whitespace-normal label-customer.name='' label-description='' label-captain='' + label-help='' - class-customer.name='segment margin-bottom-medium lg-half padding-right-small text-small text-semibold text-uppercase text-color-heading' - class-name='segment margin-bottom-medium lg-half padding-left-small text-small text-semibold text-uppercase text-color-heading' - class-description='segment margin-bottom-medium lg-full text-small text-semibold text-uppercase text-color-heading' - class-captain='segment margin-bottom-medium lg-half padding-right-small text-small text-semibold text-uppercase text-color-heading whitespace-normal' + class-customer.name='segment margin-bottom-medium lg-half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' + class-name='segment margin-bottom-medium lg-half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' + class-description='segment margin-bottom-xxsmall lg-full sm-full text-small text-semibold text-uppercase text-color-heading' + class-captain='segment margin-bottom-medium lg-half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' class-linebreak='segment lg-full' + class-help='segment lg-full sm-full text-small margin-bottom-medium padding-left-small' - widget-description='solid-form-textarea-label' + widget-description='solid-form-richtext-label' widget-captain='solid-form-dropdown-autocompletion-label' widget-linebreak='solid-form-hidden' + widget-help='solid-form-hidden-label' partial="" submit-button='Enregistrer' next='project-information' - data-trans='label-name=project.edit.labelName;label-captain=project.edit.labelCaptain;label-customer.name=project.edit.labelCustomer;label-description=project.edit.labelDescription;submit-button=project.edit.buttonSubmit' + data-trans='label-name=project.edit.labelName;label-captain=project.edit.labelCaptain;label-customer.name=project.edit.labelCustomer;label-description=project.edit.labelDescription;label-help=project.edit.descriptionHelp;submit-button=project.edit.buttonSubmit' ) - h3.segment.lg-full.padding-bottom-small.border-bottom.border-color-grey.text-color-heading.text-bold.text-letter-spacing-large(data-trans='project.edit.subTitle') + h3.segment.lg-full.sm-full.padding-bottom-small.border-bottom.border-color-grey.text-color-heading.text-bold.text-letter-spacing-large(data-trans='project.edit.subTitle') solid-ac-checker(permission='acl:Append', bind-resources, nested-field='members') solid-form.block.segment.margin-bottom-xlarge.form( @@ -81,7 +84,7 @@ div.segment.lg-full.padding-large.whitespace-normal fields='user' range-user=`${endpoints.users || endpoints.get.users}` - class-user='add-member' + class-user='add-member whitespace-normal' label-user='' widget-user='solid-form-dropdown-autocompletion' @@ -92,8 +95,8 @@ div.segment.lg-full.padding-large.whitespace-normal .segment.table-wrapper .table div.table-header.bg-color-third.text-color-heading - div.segment.table-cell.lg-two-third(data-trans='project.edit.tableHeader1') - div.segment.table-cell.lg-third(data-trans='project.edit.tableHeader2') + div.segment.table-cell.lg-half(data-trans='project.edit.tableHeader1') + div.segment.table-cell.lg-half(data-trans='project.edit.tableHeader2') //-class='table-body' solid-display( @@ -103,8 +106,8 @@ div.segment.lg-full.padding-large.whitespace-normal fields='cell(segment1(user.account.picture), segment2(line1(user.name, is_admin), line2(atom, user.communities))), self' loader-id='loader-project-edit' - class-cell='segment table-cell lg-two-third labelled-avatar two-lines text-left' - class-self='segment table-cell lg-third text-center' + class-cell='segment table-cell lg-half labelled-avatar two-lines text-left' + class-self='segment table-cell lg-half text-center' class-segment1='segment' class-user.account.picture='avatar' diff --git a/src/views/partials/project/page-project-profile.pug b/src/views/partials/project/page-project-profile.pug index f2fc3cf..90f9dd9 100644 --- a/src/views/partials/project/page-project-profile.pug +++ b/src/views/partials/project/page-project-profile.pug @@ -93,6 +93,15 @@ solid-router(default-route='project-profile', hidden) widget-captain='hubl-captain' ) + h3.text-color-heading.text-bold.text-letter-spacing-large(data-trans='project.profile.description') + + solid-display.segment.block.sm-hidden.whitespace-normal( + bind-resources + fields='description' + class-description='segment margin-bottom-large whitespace-normal' + widget-description='solid-display-value-markdown' + ) + h3.text-color-heading.text-bold.text-letter-spacing-large(data-trans='project.profile.subTitle') solid-display.segment.lg-full.sm-full.labelled-avatar.two-lines.whitespace-normal.children.lg-children-full.sm-children-full.children-margin-bottom-medium(