commit
b98e7d4d0a
|
@ -22,19 +22,19 @@
|
||||||
</ion-item-divider>
|
</ion-item-divider>
|
||||||
<core-loading [hideUntil]="loaded" [fullscreen]="false">
|
<core-loading [hideUntil]="loaded" [fullscreen]="false">
|
||||||
|
|
||||||
<ion-row class="ion-no-padding ion-justify-content-between ion-align-items-center" *ngIf="hasCourses">
|
<ion-row class="ion-justify-content-between ion-align-items-center addon-block-myoverview-filter" *ngIf="hasCourses">
|
||||||
<ion-col size="auto" class="ion-no-padding" *ngIf="filters.enabled">
|
<ion-col size="auto" *ngIf="filters.enabled">
|
||||||
<core-combobox interface="modal" [label]="'core.courses.filtermycourses' | translate" (onChange)="filterOptionsChanged($event)"
|
<core-combobox interface="modal" [label]="'core.courses.filtermycourses' | translate" (onChange)="filterOptionsChanged($event)"
|
||||||
icon="fas-filter" [badge]="filters.count" [modalOptions]="filterModalOptions">
|
icon="fas-filter" [badge]="filters.count" [modalOptions]="filterModalOptions">
|
||||||
</core-combobox>
|
</core-combobox>
|
||||||
</ion-col>
|
</ion-col>
|
||||||
<ion-col class="ion-no-padding">
|
<ion-col>
|
||||||
<!-- Filter courses. -->
|
<!-- Filter courses. -->
|
||||||
<ion-searchbar class="ion-hide-md-down" [(ngModel)]="textFilter" (ionInput)="filterTextChanged($event.target)"
|
<ion-searchbar class="ion-hide-md-down" [(ngModel)]="textFilter" (ionInput)="filterTextChanged($event.target)"
|
||||||
(ionCancel)="filterTextChanged($event.target)" [placeholder]="'core.filter' | translate">
|
(ionCancel)="filterTextChanged($event.target)" [placeholder]="'core.filter' | translate">
|
||||||
</ion-searchbar>
|
</ion-searchbar>
|
||||||
</ion-col>
|
</ion-col>
|
||||||
<ion-col size="auto" class="ion-no-padding" *ngIf="sort.enabled">
|
<ion-col size="auto" *ngIf="sort.enabled">
|
||||||
<core-combobox [label]="'core.sortby' | translate" [selection]="sort.selected" (onChange)="sortCourses($event)"
|
<core-combobox [label]="'core.sortby' | translate" [selection]="sort.selected" (onChange)="sortCourses($event)"
|
||||||
icon="fas-sort-amount-down-alt">
|
icon="fas-sort-amount-down-alt">
|
||||||
<ion-select-option class="ion-text-wrap" value="fullname">
|
<ion-select-option class="ion-text-wrap" value="fullname">
|
||||||
|
@ -48,7 +48,7 @@
|
||||||
</ion-select-option>
|
</ion-select-option>
|
||||||
</core-combobox>
|
</core-combobox>
|
||||||
</ion-col>
|
</ion-col>
|
||||||
<ion-col size="auto" class="ion-no-padding" *ngIf="isLayoutSwitcherAvailable">
|
<ion-col size="auto" *ngIf="isLayoutSwitcherAvailable">
|
||||||
<ion-button *ngIf="layout == 'card'" fill="outline" (click)="toggleLayout('list')"
|
<ion-button *ngIf="layout == 'card'" fill="outline" (click)="toggleLayout('list')"
|
||||||
[attr.aria-label]="'addon.block_myoverview.list' | translate">
|
[attr.aria-label]="'addon.block_myoverview.list' | translate">
|
||||||
<ion-icon slot="icon-only" name="fas-list"></ion-icon>
|
<ion-icon slot="icon-only" name="fas-list"></ion-icon>
|
||||||
|
@ -59,8 +59,8 @@
|
||||||
</ion-button>
|
</ion-button>
|
||||||
</ion-col>
|
</ion-col>
|
||||||
</ion-row>
|
</ion-row>
|
||||||
<ion-row class="ion-no-padding ion-hide-md-up" *ngIf="hasCourses">
|
<ion-row class="ion-hide-md-up addon-block-myoverview-filter" *ngIf="hasCourses">
|
||||||
<ion-col class="ion-no-padding">
|
<ion-col>
|
||||||
<!-- Filter courses. -->
|
<!-- Filter courses. -->
|
||||||
<ion-searchbar [(ngModel)]="textFilter" (ionInput)="filterTextChanged($event.target)"
|
<ion-searchbar [(ngModel)]="textFilter" (ionInput)="filterTextChanged($event.target)"
|
||||||
(ionCancel)="filterTextChanged($event.target)" [placeholder]="'core.filter' | translate">
|
(ionCancel)="filterTextChanged($event.target)" [placeholder]="'core.filter' | translate">
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
:host {
|
||||||
|
ion-row.addon-block-myoverview-filter {
|
||||||
|
padding: 4px 8px 0px 8px;
|
||||||
|
|
||||||
|
ion-col {
|
||||||
|
padding: 0 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ion-button,
|
||||||
|
core-combobox ::ng-deep ion-button {
|
||||||
|
margin: 0;
|
||||||
|
ion-icon {
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
::ng-deep ion-searchbar {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -39,6 +39,7 @@ const FILTER_PRIORITY: AddonBlockMyOverviewTimeFilters[] = ['all', 'inprogress',
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'addon-block-myoverview',
|
selector: 'addon-block-myoverview',
|
||||||
templateUrl: 'addon-block-myoverview.html',
|
templateUrl: 'addon-block-myoverview.html',
|
||||||
|
styleUrls: ['myoverview.scss'],
|
||||||
})
|
})
|
||||||
export class AddonBlockMyOverviewComponent extends CoreBlockBaseComponent implements OnInit, OnDestroy {
|
export class AddonBlockMyOverviewComponent extends CoreBlockBaseComponent implements OnInit, OnDestroy {
|
||||||
|
|
||||||
|
|
|
@ -36,20 +36,24 @@
|
||||||
|
|
||||||
<!-- Retake and ongoing score. -->
|
<!-- Retake and ongoing score. -->
|
||||||
<ion-item class="ion-text-wrap" *ngIf="showRetake && !eolData && !processData">
|
<ion-item class="ion-text-wrap" *ngIf="showRetake && !eolData && !processData">
|
||||||
<p>{{ 'addon.mod_lesson.attempt' | translate:{$a: retake} }}</p>
|
<ion-label>
|
||||||
|
<p>{{ 'addon.mod_lesson.attempt' | translate:{$a: retake} }}</p>
|
||||||
|
</ion-label>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
<ion-item *ngIf="pageData && pageData.ongoingscore && !eolData && !processData"
|
<ion-item *ngIf="pageData && pageData.ongoingscore && !eolData && !processData"
|
||||||
class="addon-mod_lesson-ongoingscore ion-text-wrap">
|
class="addon-mod_lesson-ongoingscore ion-text-wrap">
|
||||||
{{ pageData.ongoingscore }}
|
<ion-label>{{ pageData.ongoingscore }}</ion-label>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
|
|
||||||
<!-- Page content. -->
|
<!-- Page content. -->
|
||||||
<ion-card *ngIf="!eolData && !processData">
|
<ion-card *ngIf="!eolData && !processData">
|
||||||
<!-- Content page. -->
|
<!-- Content page. -->
|
||||||
<ion-item class="ion-text-wrap" *ngIf="!question && pageContent">
|
<ion-item class="ion-text-wrap" *ngIf="!question && pageContent">
|
||||||
<core-format-text [component]="component" [componentId]="lesson.coursemodule" [text]="pageContent" contextLevel="module"
|
<ion-label>
|
||||||
[contextInstanceId]="lesson.coursemodule" [courseId]="courseId">
|
<core-format-text [component]="component" [componentId]="lesson.coursemodule" [text]="pageContent"
|
||||||
</core-format-text>
|
contextLevel="module" [contextInstanceId]="lesson.coursemodule" [courseId]="courseId">
|
||||||
|
</core-format-text>
|
||||||
|
</ion-label>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
|
|
||||||
<!-- Question page. -->
|
<!-- Question page. -->
|
||||||
|
@ -71,20 +75,24 @@
|
||||||
|
|
||||||
<!-- Short answer. -->
|
<!-- Short answer. -->
|
||||||
<ion-item class="ion-text-wrap" *ngSwitchCase="'shortanswer'">
|
<ion-item class="ion-text-wrap" *ngSwitchCase="'shortanswer'">
|
||||||
<ion-input [type]="question.input!.type" placeholder="{{ 'addon.mod_lesson.youranswer' | translate }}"
|
<ion-label>
|
||||||
[id]="question.input!.id" [formControlName]="question.input!.name" autocorrect="off"
|
<ion-input [type]="question.input!.type" placeholder="{{ 'addon.mod_lesson.youranswer' | translate }}"
|
||||||
[maxlength]="question.input!.maxlength">
|
[id]="question.input!.id" [formControlName]="question.input!.name" autocorrect="off"
|
||||||
</ion-input>
|
[maxlength]="question.input!.maxlength">
|
||||||
|
</ion-input>
|
||||||
|
</ion-label>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
|
|
||||||
<!-- Essay. -->
|
<!-- Essay. -->
|
||||||
<ng-container *ngSwitchCase="'essay'">
|
<ng-container *ngSwitchCase="'essay'">
|
||||||
<ion-item *ngIf="question.textarea">
|
<ion-item *ngIf="question.textarea">
|
||||||
<core-rich-text-editor placeholder="{{ 'addon.mod_lesson.youranswer' | translate }}"
|
<ion-label>
|
||||||
[control]="question.control" [component]="component" [componentId]="lesson?.coursemodule"
|
<core-rich-text-editor placeholder="{{ 'addon.mod_lesson.youranswer' | translate }}"
|
||||||
[autoSave]="true" contextLevel="module" [contextInstanceId]="lesson?.coursemodule"
|
[control]="question.control" [component]="component" [componentId]="lesson?.coursemodule"
|
||||||
elementId="answer_editor">
|
[autoSave]="true" contextLevel="module" [contextInstanceId]="lesson?.coursemodule"
|
||||||
</core-rich-text-editor>
|
elementId="answer_editor">
|
||||||
|
</core-rich-text-editor>
|
||||||
|
</ion-label>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
<ion-item class="ion-text-wrap" *ngIf="!question.textarea && question.useranswer">
|
<ion-item class="ion-text-wrap" *ngIf="!question.textarea && question.useranswer">
|
||||||
<ion-label>
|
<ion-label>
|
||||||
|
|
|
@ -10,11 +10,11 @@
|
||||||
</ion-header>
|
</ion-header>
|
||||||
<ion-content>
|
<ion-content>
|
||||||
<core-loading [hideUntil]="loaded">
|
<core-loading [hideUntil]="loaded">
|
||||||
<div class="ion-padding-horizontal ion-text-wrap" *ngIf="downloadedCourses.length">
|
<div class="ion-padding-horizontal ion-text-wrap" *ngIf="spaceUsage">
|
||||||
<h2>{{ 'addon.storagemanager.alldata' | translate }}</h2>
|
<h2>{{ 'addon.storagemanager.alldata' | translate }}</h2>
|
||||||
</div>
|
</div>
|
||||||
<ion-card>
|
<ion-card *ngIf="spaceUsage">
|
||||||
<ion-item class="ion-text-wrap total" *ngIf="spaceUsage">
|
<ion-item class="ion-text-wrap total">
|
||||||
<ion-label>
|
<ion-label>
|
||||||
<p class="item-heading ion-text-wrap">{{ 'addon.storagemanager.totalspaceusage' | translate }}</p>
|
<p class="item-heading ion-text-wrap">{{ 'addon.storagemanager.totalspaceusage' | translate }}</p>
|
||||||
<ion-badge color="light" *ngIf="spaceUsage.spaceUsage">{{ spaceUsage.spaceUsage | coreBytesToSize }}</ion-badge>
|
<ion-badge color="light" *ngIf="spaceUsage.spaceUsage">{{ spaceUsage.spaceUsage | coreBytesToSize }}</ion-badge>
|
||||||
|
@ -27,7 +27,7 @@
|
||||||
</ion-item>
|
</ion-item>
|
||||||
</ion-card>
|
</ion-card>
|
||||||
|
|
||||||
<div class="ion-padding-horizontal ion-text-wrap" *ngIf="downloadedCourses.length">
|
<div class="ion-padding-horizontal ion-text-wrap">
|
||||||
<h2>{{ 'addon.storagemanager.downloadedcourses' | translate }}</h2>
|
<h2>{{ 'addon.storagemanager.downloadedcourses' | translate }}</h2>
|
||||||
</div>
|
</div>
|
||||||
<ion-card>
|
<ion-card>
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" preserveAspectRatio="xMinYMid meet" overflow="visible"/> height="16" viewBox="0 0 16 16" preserveAspectRatio="xMinYMid meet" overflow="visible"></svg>
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" preserveAspectRatio="xMinYMid meet" overflow="visible"/>
|
||||||
|
|
Before Width: | Height: | Size: 214 B After Width: | Height: | Size: 120 B |
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
ion-select,
|
ion-select,
|
||||||
ion-button {
|
ion-button {
|
||||||
--icon-margin: 0 8px;
|
--icon-margin: 0 4px;
|
||||||
--background: var(--core-combobox-background);
|
--background: var(--core-combobox-background);
|
||||||
--background-hover: black;
|
--background-hover: black;
|
||||||
--background-activated: black;
|
--background-activated: black;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<core-loading [hideUntil]="loaded" [fullscreen]="false">
|
<core-loading [hideUntil]="loaded" [fullscreen]="false">
|
||||||
<ion-row class="ion-justify-content-between ion-align-items-center ion-no-padding ion-wrap" *ngIf="previousModule || nextModule">
|
<ion-row class="ion-justify-content-between ion-align-items-center ion-no-padding ion-wrap" *ngIf="previousModule || nextModule">
|
||||||
<ion-col size="auto" class="ion-no-padding">
|
<ion-col size="auto" class="ion-no-padding core-course-module-navigation-arrow">
|
||||||
<ion-button fill="clear" class="core-course-previous-module" *ngIf="previousModule" (click)="goToActivity(false)"
|
<ion-button fill="clear" class="core-course-previous-module" *ngIf="previousModule" (click)="goToActivity(false)"
|
||||||
[attr.aria-label]="'core.course.gotopreviousactivity' | translate">
|
[attr.aria-label]="'core.course.gotopreviousactivity' | translate">
|
||||||
<ion-icon name="fas-arrow-left" slot="icon-only" aria-hidden="true"></ion-icon>
|
<ion-icon name="fas-arrow-left" slot="icon-only" aria-hidden="true"></ion-icon>
|
||||||
|
@ -13,7 +13,7 @@
|
||||||
[moduleId]="currentModule.id" [showManualCompletion]="true" (completionChanged)="completionChanged.emit($event)">
|
[moduleId]="currentModule.id" [showManualCompletion]="true" (completionChanged)="completionChanged.emit($event)">
|
||||||
</core-course-module-completion>
|
</core-course-module-completion>
|
||||||
</ion-col>
|
</ion-col>
|
||||||
<ion-col size="auto" class="ion-no-padding">
|
<ion-col size="auto" class="ion-no-padding core-course-module-navigation-arrow">
|
||||||
<ion-button fill="clear" class="core-course-next-module" *ngIf="nextModule" (click)="goToActivity(true)"
|
<ion-button fill="clear" class="core-course-next-module" *ngIf="nextModule" (click)="goToActivity(true)"
|
||||||
[attr.aria-label]="'core.course.gotonextactivity' | translate">
|
[attr.aria-label]="'core.course.gotonextactivity' | translate">
|
||||||
<ion-icon name="fas-arrow-right" slot="icon-only" aria-hidden="true"></ion-icon>
|
<ion-icon name="fas-arrow-right" slot="icon-only" aria-hidden="true"></ion-icon>
|
||||||
|
|
|
@ -25,6 +25,10 @@
|
||||||
margin-top: var(--button-vertical-margin);
|
margin-top: var(--button-vertical-margin);
|
||||||
margin-bottom: var(--button-vertical-margin);
|
margin-bottom: var(--button-vertical-margin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.core-course-module-navigation-arrow {
|
||||||
|
min-width: 48px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
:host-context(.core-iframe-fullscreen) {
|
:host-context(.core-iframe-fullscreen) {
|
||||||
|
|
|
@ -5,7 +5,8 @@
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
<ion-title>
|
<ion-title>
|
||||||
<h1>
|
<h1>
|
||||||
<core-format-text [text]="siteName" contextLevel="system" [contextInstanceId]="0"></core-format-text>
|
<core-format-text [text]="siteName" contextLevel="system" [contextInstanceId]="0" class="core-header-sitename">
|
||||||
|
</core-format-text>
|
||||||
<img src="assets/img/top_logo.png" class="core-header-logo" [alt]="siteName">
|
<img src="assets/img/top_logo.png" class="core-header-logo" [alt]="siteName">
|
||||||
</h1>
|
</h1>
|
||||||
</ion-title>
|
</ion-title>
|
||||||
|
|
|
@ -1,5 +1,3 @@
|
||||||
@import "~theme/globals";
|
|
||||||
|
|
||||||
:host ::ng-deep ion-item-divider {
|
:host ::ng-deep ion-item-divider {
|
||||||
display: none !important;
|
display: none !important;
|
||||||
}
|
}
|
||||||
|
@ -14,18 +12,5 @@
|
||||||
core-block ::ng-deep ion-card.addon-block-myoverview {
|
core-block ::ng-deep ion-card.addon-block-myoverview {
|
||||||
--border-width: 0;
|
--border-width: 0;
|
||||||
--background: transparent;
|
--background: transparent;
|
||||||
}
|
margin: 0;
|
||||||
|
|
||||||
@if ($core-dashboard-logo) {
|
|
||||||
.in-toolbar h1 .core-header-logo {
|
|
||||||
max-height: calc(var(--core-header-toolbar-height) - 24px);
|
|
||||||
}
|
|
||||||
|
|
||||||
.in-toolbar h1 core-format-text {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
} @else {
|
|
||||||
.in-toolbar h1 .core-header-logo {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,5 +8,5 @@ core-user-avatar {
|
||||||
|
|
||||||
:host-context(ion-toolbar) core-user-avatar ::ng-deep img,
|
:host-context(ion-toolbar) core-user-avatar ::ng-deep img,
|
||||||
:host-context(ion-tab-bar) core-user-avatar ::ng-deep img {
|
:host-context(ion-tab-bar) core-user-avatar ::ng-deep img {
|
||||||
padding: 2px !important;
|
padding: 6px !important;
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,8 @@
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
<ion-title>
|
<ion-title>
|
||||||
<h1>
|
<h1>
|
||||||
<core-format-text [text]="siteName" contextLevel="system" [contextInstanceId]="0"></core-format-text>
|
<core-format-text [text]="siteName" contextLevel="system" [contextInstanceId]="0" class="core-header-sitename">
|
||||||
|
</core-format-text>
|
||||||
<img src="assets/img/top_logo.png" class="core-header-logo" [alt]="siteName">
|
<img src="assets/img/top_logo.png" class="core-header-logo" [alt]="siteName">
|
||||||
</h1>
|
</h1>
|
||||||
</ion-title>
|
</ion-title>
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
@import "~theme/globals";
|
|
||||||
|
|
||||||
@if ($core-dashboard-logo) {
|
|
||||||
.in-toolbar h1 .core-header-logo {
|
|
||||||
max-height: calc(var(--core-header-toolbar-height) - 24px);
|
|
||||||
}
|
|
||||||
|
|
||||||
.in-toolbar h1 core-format-text {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
} @else {
|
|
||||||
.in-toolbar h1 .core-header-logo {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -29,7 +29,6 @@ import { CoreMainMenuDeepLinkManager } from '@features/mainmenu/classes/deep-lin
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'page-core-mainmenu-home',
|
selector: 'page-core-mainmenu-home',
|
||||||
templateUrl: 'home.html',
|
templateUrl: 'home.html',
|
||||||
styleUrls: ['home.scss'],
|
|
||||||
})
|
})
|
||||||
export class CoreMainMenuHomePage implements OnInit {
|
export class CoreMainMenuHomePage implements OnInit {
|
||||||
|
|
||||||
|
|
|
@ -2,14 +2,14 @@
|
||||||
min-height: var(--a11y-min-target-size);
|
min-height: var(--a11y-min-target-size);
|
||||||
display: block;
|
display: block;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
margin: 8px;
|
||||||
|
|
||||||
ion-card {
|
ion-card {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 0;
|
left: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
z-index: 4;
|
z-index: 4;
|
||||||
margin-top: 8px;
|
margin: 0;
|
||||||
margin-bottom: 8px;
|
|
||||||
--border-color: var(--core-search-box-border-color);
|
--border-color: var(--core-search-box-border-color);
|
||||||
--border-radius: var(--core-search-box-border-radius);
|
--border-radius: var(--core-search-box-border-radius);
|
||||||
--background: var(--core-search-box-background);
|
--background: var(--core-search-box-background);
|
||||||
|
|
|
@ -16,12 +16,12 @@
|
||||||
<ion-refresher-content pullingText="{{ 'core.pulltorefresh' | translate }}"></ion-refresher-content>
|
<ion-refresher-content pullingText="{{ 'core.pulltorefresh' | translate }}"></ion-refresher-content>
|
||||||
</ion-refresher>
|
</ion-refresher>
|
||||||
<ion-grid class="safe-area-padding">
|
<ion-grid class="safe-area-padding">
|
||||||
<ion-row>
|
<ion-row class="ion-no-padding ion-wrap">
|
||||||
<ion-col size="12" [attr.col-sm-6]="collections && collections.length > 1 ? '' : null">
|
<ion-col class="ion-no-padding" size="12" size-sm="6" [attr.col-sm-6]="collections && collections.length > 1 ? '' : null">
|
||||||
<core-search-box (onSubmit)="searchTags($event)" (onClear)="searchTags('')" [initialSearch]="query" [disabled]="searching"
|
<core-search-box (onSubmit)="searchTags($event)" (onClear)="searchTags('')" [initialSearch]="query" [disabled]="searching"
|
||||||
autocorrect="off" [spellcheck]="false" [autoFocus]="false" [lengthCheck]="0" searchArea="CoreTag"></core-search-box>
|
autocorrect="off" [spellcheck]="false" [autoFocus]="false" [lengthCheck]="0" searchArea="CoreTag"></core-search-box>
|
||||||
</ion-col>
|
</ion-col>
|
||||||
<ion-col size="12" size-sm="6" *ngIf="collections && collections.length > 1">
|
<ion-col class="ion-no-padding" size="12" size-sm="6" *ngIf="collections && collections.length > 1">
|
||||||
<core-combobox [selection]="collectionId" (onChange)="searchTags($event)" [disabled]="searching">
|
<core-combobox [selection]="collectionId" (onChange)="searchTags($event)" [disabled]="searching">
|
||||||
<ion-select-option class="ion-text-wrap" [value]="0">
|
<ion-select-option class="ion-text-wrap" [value]="0">
|
||||||
{{ 'core.tag.inalltagcoll' | translate }}
|
{{ 'core.tag.inalltagcoll' | translate }}
|
||||||
|
|
|
@ -119,53 +119,6 @@ body {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ion-header ion-title{
|
|
||||||
h1, h2, .subheading {
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
white-space: nowrap;
|
|
||||||
overflow: hidden;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.filter_mathjaxloader_equation div {
|
|
||||||
display: inline !important;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ion-app.md ion-header ion-title{
|
|
||||||
@include padding(0, 20px);
|
|
||||||
|
|
||||||
h1, h2, .subheading {
|
|
||||||
font-size: 20px;
|
|
||||||
font-weight: 500;
|
|
||||||
letter-spacing: .0125em;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 + h2,
|
|
||||||
h1 + .subheading {
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: 400;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ion-app.ios ion-header ion-title {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: center;
|
|
||||||
|
|
||||||
h1, h2, .subheading {
|
|
||||||
font-size: 17px;
|
|
||||||
font-weight: 600;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 + h2,
|
|
||||||
h1 + .subheading {
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: 400;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Correctly inherit ion-text-wrap onto labels.
|
// Correctly inherit ion-text-wrap onto labels.
|
||||||
.item ion-label core-format-text .core-format-text-content > *,
|
.item ion-label core-format-text .core-format-text-content > *,
|
||||||
.fake-ion-item core-format-text .core-format-text-content > * {
|
.fake-ion-item core-format-text .core-format-text-content > * {
|
||||||
|
@ -196,32 +149,109 @@ ion-toolbar {
|
||||||
--min-height: var(--core-header-toolbar-height);
|
--min-height: var(--core-header-toolbar-height);
|
||||||
}
|
}
|
||||||
|
|
||||||
ion-header ion-toolbar {
|
// Header.
|
||||||
ion-back-button,
|
ion-header {
|
||||||
.in-toolbar.button-clear {
|
z-index: 12; // To hide ion-slides on scroll.
|
||||||
--color: var(--core-header-toolbar-color);
|
|
||||||
--ion-toolbar-color: var(--core-header-toolbar-color);
|
|
||||||
--border-radius: var(--huge-radius);
|
|
||||||
}
|
|
||||||
|
|
||||||
.button.button-clear,
|
ion-toolbar {
|
||||||
.button.button-solid {
|
ion-spinner {
|
||||||
--background: transparent;
|
margin: 10px;
|
||||||
--color: var(--core-header-toolbar-color);
|
}
|
||||||
--primary: var(--core-header-toolbar-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
.button.button-clear.button-has-icon-only,
|
ion-back-button,
|
||||||
.button.button-solid.button-has-icon-only {
|
.in-toolbar.button-clear {
|
||||||
--border-radius: var(--huge-radius);
|
--color: var(--core-header-toolbar-color);
|
||||||
width: 48px;
|
--ion-toolbar-color: var(--core-header-toolbar-color);
|
||||||
height: 48px;
|
--border-radius: var(--huge-radius);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.button.button-clear,
|
||||||
|
.button.button-solid {
|
||||||
|
--background: transparent;
|
||||||
|
--color: var(--core-header-toolbar-color);
|
||||||
|
--primary: var(--core-header-toolbar-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.button.button-clear.button-has-icon-only,
|
||||||
|
.button.button-solid.button-has-icon-only {
|
||||||
|
--border-radius: var(--huge-radius);
|
||||||
|
width: var(--a11y-min-target-size);
|
||||||
|
height: var(--a11y-min-target-size);
|
||||||
|
ion-icon {
|
||||||
|
font-size: 24px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.core-navbar-button-hidden {
|
.core-navbar-button-hidden {
|
||||||
display: none !important;
|
display: none !important;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ion-title {
|
||||||
|
@include padding(0, 16px);
|
||||||
|
|
||||||
|
h1, h2, .subheading {
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.filter_mathjaxloader_equation div {
|
||||||
|
display: inline !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
.core-header-logo {
|
||||||
|
max-height: var(--core-mainpage-headerlogo-maxheight);
|
||||||
|
display: var( --core-mainpage-headerlogo-display);
|
||||||
|
}
|
||||||
|
|
||||||
|
.core-header-sitename {
|
||||||
|
display: var(--core-mainpage-sitename-display);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
h1, h2, .subheading {
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: 500;
|
||||||
|
letter-spacing: .0125em;
|
||||||
|
text-align: start;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 + h2,
|
||||||
|
h1 + .subheading {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.ios {
|
||||||
|
position: static;
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
left: auto;
|
||||||
|
right: auto;
|
||||||
|
top: auto;
|
||||||
|
text-align: start;
|
||||||
|
|
||||||
|
h1, h2, .subheading {
|
||||||
|
font-size: 17px;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 + h2,
|
||||||
|
h1 + .subheading {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ion-tabs.hide-header ion-header {
|
||||||
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
ion-footer ion-toolbar.ion-color-contrast {
|
ion-footer ion-toolbar.ion-color-contrast {
|
||||||
|
@ -310,6 +340,10 @@ ion-button ion-spinner {
|
||||||
--color: inherit !important;
|
--color: inherit !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ion-button.button-has-icon-only {
|
||||||
|
margin: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
ion-button:not(.button-has-icon-only):not(.button-small) > ion-icon {
|
ion-button:not(.button-has-icon-only):not(.button-small) > ion-icon {
|
||||||
min-width: 20px;
|
min-width: 20px;
|
||||||
}
|
}
|
||||||
|
@ -470,19 +504,6 @@ core-split-view.menu-and-content {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Header.
|
|
||||||
ion-header {
|
|
||||||
z-index: 12; // To hide ion-slides on scroll.
|
|
||||||
}
|
|
||||||
ion-tabs.hide-header ion-header {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
ion-toolbar {
|
|
||||||
ion-spinner {
|
|
||||||
margin: 10px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Iframe fullscreen manage.
|
// Iframe fullscreen manage.
|
||||||
// Using router outlet to avoid changing styles on modals.
|
// Using router outlet to avoid changing styles on modals.
|
||||||
body.core-iframe-fullscreen ion-router-outlet {
|
body.core-iframe-fullscreen ion-router-outlet {
|
||||||
|
@ -944,7 +965,16 @@ ion-searchbar {
|
||||||
top: 4px;
|
top: 4px;
|
||||||
}
|
}
|
||||||
.searchbar-search-icon.md {
|
.searchbar-search-icon.md {
|
||||||
top: 12px;
|
}
|
||||||
|
|
||||||
|
.searchbar-input,
|
||||||
|
.sc-ion-searchbar-md.searchbar-input,
|
||||||
|
.sc-ion-searchbar-ios.searchbar-input {
|
||||||
|
@include padding-horizontal(48px);
|
||||||
|
}
|
||||||
|
|
||||||
|
.searchbar-input {
|
||||||
|
@include padding-horizontal(48px);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -111,7 +111,7 @@
|
||||||
--core-bottom-tabs-background-selected: transparent;
|
--core-bottom-tabs-background-selected: transparent;
|
||||||
--core-bottom-tabs-badge-color: var(--brand);
|
--core-bottom-tabs-badge-color: var(--brand);
|
||||||
--core-bottom-tabs-badge-text-color: var(--brand-contrast);
|
--core-bottom-tabs-badge-text-color: var(--brand-contrast);
|
||||||
--bottom-tabs-size: 56px;
|
--bottom-tabs-size: 48px;
|
||||||
ion-tab-bar.mainmenu-tabs {
|
ion-tab-bar.mainmenu-tabs {
|
||||||
--background: var(--core-bottom-tabs-background);
|
--background: var(--core-bottom-tabs-background);
|
||||||
--color: var(--core-bottom-tabs-color);
|
--color: var(--core-bottom-tabs-color);
|
||||||
|
@ -126,12 +126,12 @@
|
||||||
|
|
||||||
--core-header-toolbar-button-image-size: var(--a11y-min-target-size);
|
--core-header-toolbar-button-image-size: var(--a11y-min-target-size);
|
||||||
--core-header-toolbar-background: var(--white);
|
--core-header-toolbar-background: var(--white);
|
||||||
--core-header-toolbar-border-width: 1px;
|
--core-header-toolbar-border-width: 0px;
|
||||||
--core-header-toolbar-border-color: var(--stroke);
|
--core-header-toolbar-border-color: var(--stroke);
|
||||||
--core-header-toolbar-color: var(--gray-900);
|
--core-header-toolbar-color: var(--gray-900);
|
||||||
--core-header-toolbar-height: 56px;
|
--core-header-toolbar-height: 48px;
|
||||||
html.ios {
|
html.ios {
|
||||||
--core-header-toolbar-height: 54px;
|
--core-header-toolbar-height: 48px;
|
||||||
}
|
}
|
||||||
|
|
||||||
ion-header ion-toolbar {
|
ion-header ion-toolbar {
|
||||||
|
@ -220,7 +220,7 @@
|
||||||
--core-tab-color-active: var(--dark);
|
--core-tab-color-active: var(--dark);
|
||||||
--core-tab-border-color-active: var(--brand);
|
--core-tab-border-color-active: var(--brand);
|
||||||
--core-tab-font-weight-active: normal;
|
--core-tab-font-weight-active: normal;
|
||||||
--core-tabs-height: 56px;
|
--core-tabs-height: 48px;
|
||||||
core-tabs, core-tabs-outlet {
|
core-tabs, core-tabs-outlet {
|
||||||
ion-slide {
|
ion-slide {
|
||||||
--background: var(--core-tab-background);
|
--background: var(--core-tab-background);
|
||||||
|
@ -363,4 +363,14 @@
|
||||||
@each $type, $value in $activity-icon-colors {
|
@each $type, $value in $activity-icon-colors {
|
||||||
--activity#{$type}: #{$value};
|
--activity#{$type}: #{$value};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
--core-mainpage-sitename-display: none;
|
||||||
|
--core-mainpage-headerlogo-display: none;
|
||||||
|
--core-mainpage-headerlogo-maxheight: calc(var(--core-header-toolbar-height) - 16px);
|
||||||
|
|
||||||
|
@if ($core-dashboard-logo) {
|
||||||
|
--core-mainpage-headerlogo-display: inline;
|
||||||
|
} @else {
|
||||||
|
--core-mainpage-sitename-display: inline;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue