diff --git a/ghost/admin/app/styles/components/modals.css b/ghost/admin/app/styles/components/modals.css index 8360b7675c..73043cf750 100644 --- a/ghost/admin/app/styles/components/modals.css +++ b/ghost/admin/app/styles/components/modals.css @@ -8,7 +8,6 @@ /* explicit modal container so that background and content can be animated individually */ .fullscreen-modal-container { display: flex; - align-items: center; justify-content: center; visibility: hidden; position: fixed; @@ -58,7 +57,7 @@ } .fullscreen-modal-action { - margin: 2vh 0 10vh 0; + margin: 6vw 0; } @@ -105,7 +104,7 @@ .modal-header h1 { display: inline-block; - margin: 0 25px 0 0; + margin: -5px 25px 0 0; font-size: 2.2rem; line-height: 1.15em; font-weight: 600; @@ -145,6 +144,9 @@ /* Content Modifiers /* ---------------------------------------------------------- */ +.modal-body fieldset { + margin: 0; +} /* Login styles */ .modal-body .login-form { diff --git a/ghost/admin/app/styles/layouts/apps.css b/ghost/admin/app/styles/layouts/apps.css index 50784032f0..8d838dec1f 100644 --- a/ghost/admin/app/styles/layouts/apps.css +++ b/ghost/admin/app/styles/layouts/apps.css @@ -13,6 +13,10 @@ /* Main Layout /* ---------------------------------------------------------- */ +.apps-grid-container { + margin: 2vw 0; +} + .apps-grid-title { display: block; margin-bottom: 5px; @@ -47,6 +51,9 @@ } .apps-card-app { + display: flex; + align-items: center; + justify-content: space-between; overflow: hidden; padding: 14px; height: 75px; @@ -54,43 +61,28 @@ transition: background 0.3s ease; } -.apps-card-app:not(last-child) { - border-bottom: rgba(0,0,0,0.1) 1px solid; -} - -.apps-card-app:first-of-type { +.apps-grid-cell:first-child .apps-card-app { border-top: none; } -.apps-card-content { - position: relative; +.apps-card-left { display: flex; + align-items: center; } -.apps-card-content > .gh-btn { - position: absolute; - top: 5px; - right: 20px; -} -.apps-card-content > .apps-configured { - position: absolute; - top: 13px; - right: 29px; +.apps-card-right { display: flex; + align-items: center; +} + +.apps-configured { + display: flex; + align-items: center; +} + +.apps-configured i { + margin-left: 15px; color: var(--midgrey); - white-space: nowrap; -} - -.apps-configured > span { - padding-right: 14px; - font-size: 1.3rem; -} - -.apps-configured > i { - position: absolute; - top: 2px; - right: 0; - font-size: 1.1rem; } .apps-card-app-icon { @@ -104,15 +96,14 @@ } .apps-card-meta { - position: relative; display: flex; flex-direction: column; + padding: 0 70px 0 0; } .apps-card-app-title { + margin: 0; overflow: hidden; - margin: 4px 0 0 0; - padding: 0 70px 0 0; text-overflow: ellipsis; white-space: nowrap; font-size: 1.7rem; @@ -251,7 +242,4 @@ flex-direction: column; align-items: flex-start; } - .apps-card-content > .apps-configured { - right: 15px; - } } diff --git a/ghost/admin/app/styles/layouts/main.css b/ghost/admin/app/styles/layouts/main.css index b1e2e6b4f3..c8a742742e 100644 --- a/ghost/admin/app/styles/layouts/main.css +++ b/ghost/admin/app/styles/layouts/main.css @@ -380,11 +380,11 @@ body > .ember-view:not(.liquid-target-container) { top: 0; left: 0; z-index: 1000; - width: 205px; + width: 250px; height: 100%; transition: transform 0.20s; /* translate3d for GPU accelerated animation - http://bit.ly/1EY1Xhx */ - transform: translate3d(-190px,0,0); + transform: translate3d(-235px,0,0); } /* THE FUTURE: Super sexy background blur for Webkit - http://cl.ly/b1rG */ @@ -462,6 +462,7 @@ body > .ember-view:not(.liquid-target-container) { padding: 2.9vw 4vw 3vw 4vw; margin: 0 auto; overflow-y: auto; + max-width: 1200px; } .gh-canvas-header { diff --git a/ghost/admin/app/styles/layouts/users.css b/ghost/admin/app/styles/layouts/users.css index ea564cdded..c9fd5b880b 100644 --- a/ghost/admin/app/styles/layouts/users.css +++ b/ghost/admin/app/styles/layouts/users.css @@ -1,55 +1,17 @@ /* Users /ghost/settings/users/ /* ---------------------------------------------------------- */ -.users-list-wrapper { - overflow: auto; - height: 100%; -} - - -/* User list -/* ---------------------------------------------------------- */ - -.invited-users { - margin-bottom: 34px; -} - -.user-list-title { - margin-bottom: 14px; - color: #a1a1a1; - font-size: 13px; - font-weight: normal; -} - -.user-list-item { - display: flex; - justify-content: start; - align-items: center; - padding: 0 15px; - height: 68px; - border-top: 1px solid #dfe1e3; -} - -/* Only apply these styles to anchor tags (pending invited are divs) */ -a.user-list-item { - text-decoration: none; -} - -@media (min-width: 601px) { - a.user-list-item:hover { - background: color(#dfe1e3 lightness(+10%)); - } - a.user-list-item:last-of-type:hover { - box-shadow: inset 0 -1px 0 #dfe1e3; - } +.gh-invited-users .apps-grid-cell:hover { + background: none; } .user-list-item-icon { position: relative; display: block; overflow: hidden; - width: 35px; - height: 35px; + margin-right: 15px; + width: 40px; + height: 40px; background: #dfe1e3; border-radius: 100%; color: transparent; @@ -70,11 +32,13 @@ a.user-list-item { .user-list-item-figure { position: relative; display: block; - width: 35px; - height: 35px; + width: 40px; + height: 40px; + margin-right: 15px; background-position: center center; background-size: cover; - border-radius: 35px; + border-radius: 100%; + box-shadow: #fff 0 0 0 3px; } .user-list-item-figure img { @@ -86,51 +50,8 @@ a.user-list-item { opacity: 0; } -.user-list-item-body { - flex: 1 1 auto; - align-items: stretch; - padding-left: 15px; - line-height: 1; -} - -.user-list-item-body .name { - display: inline-block; - color: var(--darkgrey); - font-size: 15px; - font-weight: 400; -} - -.user-list-item-body .description { - display: inline-block; - margin-top: 3px; - color: #a1a1a1; - white-space: nowrap; - font-size: 12px; -} - -.user-list-item-body .description-error { - display: inline-block; - margin-top: 3px; - color: var(--red); - white-space: nowrap; - font-size: 12px; -} - -.user-list-item-aside .user-list-action { - float: left; - margin-right: 20px; -} - -.user-list-item-aside .role-label { - float: left; - margin-top: -1px; -} - -.user-list-item-aside .role-label + .role-label { - margin-left: 5px; -} - .user-list-action { + margin-right: 15px; text-decoration: underline; text-transform: uppercase; font-size: 11px; @@ -140,36 +61,45 @@ a.user-list-item { /* Role Labels /* ---------------------------------------------------------- */ -.role-label { - display: inline-block; - padding: 6px 8px; - background: #eee; - color: rgba(0, 0, 0, 0.5); - text-transform: uppercase; - font-size: 9px; - line-height: 1; - font-weight: 400; +.gh-badge.owner { + border: color(var(--darkgrey) blackness(+8%)) 1px solid; + background: linear-gradient( + color(var(--darkgrey) whiteness(+10%)), + color(var(--darkgrey) blackness(+4%)) + ); } -.role-label.owner { - background: var(--darkgrey); - color: rgba(255, 255, 255, 0.8); +.gh-badge.administrator { + border: color(var(--red) blackness(+8%)) 1px solid; + background: linear-gradient( + color(var(--red) whiteness(+10%)), + color(var(--red) blackness(+4%)) + ); } -.role-label.administrator { - background: var(--red); - color: rgba(255, 255, 255, 0.8); +.gh-badge.editor { + border: color(var(--blue) blackness(+8%)) 1px solid; + background: linear-gradient( + color(var(--blue) whiteness(+10%)), + color(var(--blue) blackness(+4%)) + ); } -.role-label.editor { - background: var(--blue); - color: rgba(255, 255, 255, 0.8); +.gh-badge.author { + border: color(var(--lightgrey) blackness(+8%)) 1px solid; + color: color(var(--midgrey) l(+5%)); + background: #fff; } /* User invitation modal /* ---------------------------------------------------------- */ +.invite-new-user .modal-content { + width: 100%; + max-width: 600px; +} + .invite-new-user .form-group { margin-bottom: 0; padding: 0; @@ -188,7 +118,7 @@ a.user-list-item { .invite-new-user .form-group:nth-of-type(2) { float: left; - margin-left: 5%; + margin-left: 10px; width: 35%; } diff --git a/ghost/admin/app/styles/patterns/forms.css b/ghost/admin/app/styles/patterns/forms.css index dac067b714..908271c481 100644 --- a/ghost/admin/app/styles/patterns/forms.css +++ b/ghost/admin/app/styles/patterns/forms.css @@ -272,7 +272,6 @@ textarea { .gh-select { position: relative; display: block; - overflow: hidden; padding: 0; max-width: 100%; width: 100%; diff --git a/ghost/admin/app/templates/-user-list-item.hbs b/ghost/admin/app/templates/-user-list-item.hbs index 53cbe03f84..9554e04629 100644 --- a/ghost/admin/app/templates/-user-list-item.hbs +++ b/ghost/admin/app/templates/-user-list-item.hbs @@ -1,18 +1,25 @@ - - - - -
- - {{user.name}} - -
- Last seen: {{component.lastLoginUTC}} +
+ {{#link-to 'team.user' user.slug}} +
+
+ + + +
+

{{user.name}}

+

Last seen: {{component.lastLoginUTC}}

+
+
+
+
+ {{#unless session.user.isAuthor}} + {{#each user.roles as |role|}} + {{role.name}} + {{/each}} + {{/unless}} + +
+
+
+ {{/link-to}}
- diff --git a/ghost/admin/app/templates/settings/apps-loading.hbs b/ghost/admin/app/templates/settings/apps-loading.hbs index f424f616e8..c1c24e1482 100644 --- a/ghost/admin/app/templates/settings/apps-loading.hbs +++ b/ghost/admin/app/templates/settings/apps-loading.hbs @@ -1,9 +1,9 @@ -
-
- {{#gh-view-title openMobileMenu="openMobileMenu"}}Apps{{/gh-view-title}} +
+
+

Apps

{{gh-loading-spinner}}
-
\ No newline at end of file +
diff --git a/ghost/admin/app/templates/settings/apps.hbs b/ghost/admin/app/templates/settings/apps.hbs index f7e76622da..a469f7fcef 100644 --- a/ghost/admin/app/templates/settings/apps.hbs +++ b/ghost/admin/app/templates/settings/apps.hbs @@ -1,3 +1,3 @@ -
+
{{outlet}}
diff --git a/ghost/admin/app/templates/settings/apps/index.hbs b/ghost/admin/app/templates/settings/apps/index.hbs index 43648defc5..3925ddce67 100644 --- a/ghost/admin/app/templates/settings/apps/index.hbs +++ b/ghost/admin/app/templates/settings/apps/index.hbs @@ -1,55 +1,57 @@ -
- {{#gh-view-title openMobileMenu="openMobileMenu"}}Apps{{/gh-view-title}} +
+

Apps

-
-
- Available integrations -
-
- {{#link-to "settings.apps.slack" id="slack-link"}} -
-
-
-
-

Slack

-

A team communication tool

-
-
- {{#if slack.isActive}} - Active - {{else}} - Configure - {{/if}} - -
+
+ Available integrations +
+
+ {{#link-to "settings.apps.slack" id="slack-link"}} +
+
+
+
+

Slack

+

A team communication tool

-
- {{/link-to}} -
- -
- {{#link-to "settings.apps.amp" id="amp-link"}} -
-
-
-
-

AMP

-

Google Accelerated Mobile Pages

-
-
- {{#if amp}} - Active - {{else}} - Configure - {{/if}} - -
+
+
+
+ {{#if slack.isActive}} + Active + {{else}} + Configure + {{/if}} +
-
- {{/link-to}} -
+
+
+ {{/link-to}}
-

(More coming soon!)

-
+ +
+ {{#link-to "settings.apps.amp" id="amp-link"}} +
+
+
+
+

AMP

+

Google Accelerated Mobile Pages

+
+
+
+
+ {{#if amp}} + Active + {{else}} + Configure + {{/if}} + +
+
+
+ {{/link-to}} +
+
+

(More coming soon!)

diff --git a/ghost/admin/app/templates/team/index-loading.hbs b/ghost/admin/app/templates/team/index-loading.hbs index 54bbc9bdfc..94a78fc36f 100644 --- a/ghost/admin/app/templates/team/index-loading.hbs +++ b/ghost/admin/app/templates/team/index-loading.hbs @@ -1,10 +1,10 @@
-
- {{#gh-view-title openMobileMenu="openMobileMenu"}}Team{{/gh-view-title}} +
+

Team Members

{{!-- Do not show Invite user button to authors --}} {{#unless session.user.isAuthor}}
- +
{{/unless}}
diff --git a/ghost/admin/app/templates/team/index.hbs b/ghost/admin/app/templates/team/index.hbs index 88c9aca85f..dd3c497c4c 100644 --- a/ghost/admin/app/templates/team/index.hbs +++ b/ghost/admin/app/templates/team/index.hbs @@ -1,6 +1,6 @@ -
-
- {{#gh-view-title openMobileMenu="openMobileMenu"}}Team{{/gh-view-title}} +
+
+

Team Members

{{!-- Do not show Invite user button to authors --}} {{#unless session.user.isAuthor}}
@@ -12,67 +12,79 @@ {{#if showInviteUserModal}} {{gh-fullscreen-modal "invite-new-user" close=(action "toggleInviteUserModal") - modifier="action"}} + modifier="action wide"}} {{/if}} {{#gh-infinite-scroll fetch="loadNextPage" isLoading=isLoading tagName="section" - classNames="view-content team" + classNames="gh-team" }} - {{!-- Do not show invited users to authors --}} - {{#unless session.user.isAuthor}} - {{#if invites}} -
-

Invited users

- {{#each sortedInvites as |invite|}} - {{#gh-user-invited invite=invite reload="reload" as |component|}} -
- ic -
- {{invite.email}}
- {{#if invite.pending}} - - Invitation not sent - please try again - - {{else}} - - Invitation sent: {{component.createdAt}}, - expires {{component.expiresAt}} - - {{/if}} + + {{!-- Show invited users to everyone except authors --}} + {{#unless session.user.isAuthor}} + {{#if invites}} +
+ Invited users +
+ + {{#each sortedInvites as |invite|}} + {{#gh-user-invited invite=invite reload="reload" as |component|}} +
+
+
+ ic +
+

{{invite.email}}

+

+ {{#if invite.pending}} + + Invitation not sent - please try again + + {{else}} + + Invitation sent: {{component.createdAt}}, + expires {{component.expiresAt}} + + {{/if}} +

+
- -
- {{/gh-user-invited}} - {{/each}} -
- {{/if}} - {{/unless}} + {{invite.role.name}} + {{/if}} +
+
+ + + {{/gh-user-invited}} + {{/each}} -
-

Active users

+ +
+ {{/if}} + {{/unless}} + +
+ Active users +
{{#each users key="id" as |user|}} {{!-- For authors only shows users as a list, otherwise show users with links to user page --}} {{#unless session.user.isAuthor}} {{#gh-user-active user=user as |component|}} - {{#link-to 'team.user' user.slug class="user-list-item"}} - {{partial 'user-list-item'}} - {{/link-to}} + {{partial 'user-list-item'}} {{/gh-user-active}} {{else}} {{#gh-user-active user=user as |component|}} @@ -80,6 +92,8 @@ {{/gh-user-active}} {{/unless}} {{/each}} -
+ +
+ {{/gh-infinite-scroll}}