Skip to content

Commit 3e2913b

Browse files
Merge pull request #13743 from nucleogenesis/user-table-misc-polish
User Table Style Updates
2 parents 1e954b3 + e20852c commit 3e2913b

File tree

5 files changed

+62
-32
lines changed

5 files changed

+62
-32
lines changed

kolibri/plugins/facility/assets/src/views/FacilityAppBarPage.vue

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
<template>
22

3-
<AppBarPage :title="title">
3+
<AppBarPage
4+
:title="title"
5+
:appearanceOverrides="appearanceOverrides"
6+
>
47
<template #default="{ pageContentHeight }">
5-
<div style="max-width: 1000px; margin: 0 auto">
6-
<slot :pageContentHeight="pageContentHeight"></slot>
7-
</div>
8+
<slot :pageContentHeight="pageContentHeight"></slot>
89
</template>
910
</AppBarPage>
1011

@@ -30,6 +31,11 @@
3031
type: String,
3132
default: null,
3233
},
34+
appearanceOverrides: {
35+
type: Object,
36+
required: false,
37+
default: null,
38+
},
3339
},
3440
computed: {
3541
/* Returns the given appBarTitle prop if given, otherwise will return

kolibri/plugins/facility/assets/src/views/users/NewUsersPage.vue

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,13 @@
77
<template #default="{ pageContentHeight }">
88
<KPageContainer
99
class="page-container"
10-
:style="{ maxHeight: pageContentHeight + 24 + 'px' }"
10+
:style="{ maxHeight: pageContentHeight + 24 + 'px', padding: '2em 2em 1em' }"
1111
>
12-
<p>
13-
<KRouterLink
14-
:to="$store.getters.facilityPageLinks.UserPage"
15-
icon="back"
16-
:text="backToUsers$()"
17-
/>
18-
</p>
12+
<KRouterLink
13+
:to="$store.getters.facilityPageLinks.UserPage"
14+
icon="back"
15+
:text="backToUsers$()"
16+
/>
1917
<div class="new-users-page-header">
2018
<h1>{{ newUsers$() }}</h1>
2119
<div>
@@ -331,18 +329,23 @@
331329
<style lang="scss" scoped>
332330
333331
.page-container {
332+
position: relative;
334333
display: flex;
335334
flex-direction: column;
336335
max-width: 1000px;
337-
margin: 24px auto;
336+
margin: 0 auto auto;
338337
}
339338
340339
.new-users-page-header {
341340
display: flex;
342341
gap: 16px;
343342
align-items: center;
344343
justify-content: space-between;
345-
margin-bottom: 16px;
344+
margin: 1em 0 1.5em;
345+
346+
h1 {
347+
margin: 0;
348+
}
346349
}
347350
348351
.empty-new-users {
@@ -374,4 +377,11 @@
374377
}
375378
}
376379
380+
/deep/ .main-wrapper {
381+
// The default padding causes root scroll which defeats
382+
// the purpose of our maxHeight style on the KPageContainer.
383+
// Uses !important because the overridden style is inline
384+
padding-bottom: 0 !important;
385+
}
386+
377387
</style>

kolibri/plugins/facility/assets/src/views/users/UsersRootPage/index.vue

Lines changed: 27 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,28 @@
11
<template>
22

3-
<FacilityAppBarPage>
3+
<FacilityAppBarPage
4+
class="wrapper"
5+
:appearanceOverrides="{
6+
maxWidth: '1440px',
7+
margin: '0 auto',
8+
padding: '2em',
9+
}"
10+
>
411
<template #default="{ pageContentHeight }">
512
<!-- Adding 24 pixels to the max height to prevent having too much bottom padding space -->
613
<KPageContainer
714
class="flex-column"
8-
:style="{ maxHeight: pageContentHeight + 24 + 'px' }"
15+
:style="{ maxHeight: pageContentHeight - 48 + 'px', padding: '2em 2em 1em' }"
916
>
10-
<p>
11-
<KRouterLink
12-
v-if="userIsMultiFacilityAdmin"
13-
:to="{
14-
name: $store.getters.facilityPageLinks.AllFacilitiesPage.name,
15-
params: { subtopicName: 'UserPage' },
16-
}"
17-
icon="back"
18-
:text="coreString('changeLearningFacility')"
19-
/>
20-
</p>
17+
<KRouterLink
18+
v-if="userIsMultiFacilityAdmin"
19+
:to="{
20+
name: $store.getters.facilityPageLinks.AllFacilitiesPage.name,
21+
params: { subtopicName: 'UserPage' },
22+
}"
23+
icon="back"
24+
:text="coreString('changeLearningFacility')"
25+
/>
2126
<div class="users-page-header">
2227
<h1>{{ coreString('usersLabel') }}</h1>
2328
<div class="users-page-header-actions">
@@ -335,10 +340,10 @@
335340
gap: 16px;
336341
align-items: center;
337342
justify-content: space-between;
338-
margin-bottom: 16px;
343+
margin-bottom: 1.5em;
339344
340345
h1 {
341-
margin: 16px 0;
346+
margin: 0;
342347
}
343348
344349
.users-page-header-actions {
@@ -355,4 +360,11 @@
355360
flex-direction: column;
356361
}
357362
363+
/deep/ .main-wrapper {
364+
// The default padding causes root scroll which defeats
365+
// the purpose of our maxHeight style on the KPageContainer.
366+
// Uses !important because the overridden style is inline
367+
padding-bottom: 0 !important;
368+
}
369+
358370
</style>

kolibri/plugins/facility/assets/src/views/users/common/UsersTable.vue

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -711,7 +711,6 @@
711711
712712
.move-down {
713713
position: relative;
714-
margin-top: 24px;
715714
}
716715
717716
.role-badge {
@@ -731,6 +730,8 @@
731730
.search-filter-section {
732731
display: flex;
733732
justify-content: start;
733+
// Ensure space enough for keyboard nav outline before table content
734+
padding-bottom: 0.5em;
734735
}
735736
736737
.user-type-icon {
@@ -742,7 +743,7 @@
742743
}
743744
744745
.filter-button {
745-
padding-top: 8px;
746+
padding-top: 10px;
746747
margin-left: 1em;
747748
}
748749

packages/kolibri-common/components/PaginatedListContainerWithBackend.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,8 @@
125125
<style lang="scss" scoped>
126126
127127
.pagination-nav {
128-
margin-bottom: 8px;
128+
/* Ensure space for pagination buttons on touch devices */
129+
margin-top: 1em;
129130
text-align: right;
130131
}
131132

0 commit comments

Comments
 (0)