mirror of
https://gitlab.com/openstapps/openstapps.git
synced 2026-02-28 20:02:12 +00:00
refactor: pre release cleanup all over the place
This commit is contained in:
@@ -94,12 +94,13 @@ export class AppComponent implements AfterContentInit {
|
|||||||
});
|
});
|
||||||
this.platform.ready().then(async () => {
|
this.platform.ready().then(async () => {
|
||||||
if (Capacitor.isNativePlatform()) {
|
if (Capacitor.isNativePlatform()) {
|
||||||
|
await StatusBar.setStyle({style: Style.Dark});
|
||||||
|
if (Capacitor.getPlatform() === 'android') {
|
||||||
await StatusBar.setBackgroundColor({
|
await StatusBar.setBackgroundColor({
|
||||||
color: getComputedStyle(document.documentElement)
|
color: getComputedStyle(document.documentElement)
|
||||||
.getPropertyValue('--ion-color-primary')
|
.getPropertyValue('--ion-color-primary')
|
||||||
.trim(),
|
.trim(),
|
||||||
});
|
});
|
||||||
await StatusBar.setStyle({style: Style.Dark});
|
|
||||||
await StatusBar.setOverlaysWebView({overlay: false});
|
await StatusBar.setOverlaysWebView({overlay: false});
|
||||||
await NavigationBar.setColor({
|
await NavigationBar.setColor({
|
||||||
color: getComputedStyle(document.documentElement)
|
color: getComputedStyle(document.documentElement)
|
||||||
@@ -108,6 +109,7 @@ export class AppComponent implements AfterContentInit {
|
|||||||
darkButtons: true,
|
darkButtons: true,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
await this.authNotificationsInit();
|
await this.authNotificationsInit();
|
||||||
|
|
||||||
// set order of categories in settings
|
// set order of categories in settings
|
||||||
@@ -120,7 +122,7 @@ export class AppComponent implements AfterContentInit {
|
|||||||
});
|
});
|
||||||
|
|
||||||
window.addEventListener('touchmove', this.touchMoveEvent, true);
|
window.addEventListener('touchmove', this.touchMoveEvent, true);
|
||||||
if (Capacitor.isNativePlatform()) {
|
if (Capacitor.getPlatform() === 'ios') {
|
||||||
Keyboard.setResizeMode({mode: KeyboardResize.None});
|
Keyboard.setResizeMode({mode: KeyboardResize.None});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -46,6 +46,11 @@ export class AddEventActionChipComponent implements OnDestroy {
|
|||||||
*/
|
*/
|
||||||
associatedDateSeries: Promise<SCDateSeries[]>;
|
associatedDateSeries: Promise<SCDateSeries[]>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Color
|
||||||
|
*/
|
||||||
|
color: string;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Disabled
|
* Disabled
|
||||||
*/
|
*/
|
||||||
@@ -56,6 +61,9 @@ export class AddEventActionChipComponent implements OnDestroy {
|
|||||||
*/
|
*/
|
||||||
icon: string;
|
icon: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Current state of icon fill
|
||||||
|
*/
|
||||||
iconFill: boolean;
|
iconFill: boolean;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -98,11 +106,12 @@ export class AddEventActionChipComponent implements OnDestroy {
|
|||||||
*/
|
*/
|
||||||
applyState(state: AddEventStates) {
|
applyState(state: AddEventStates) {
|
||||||
this.state = state;
|
this.state = state;
|
||||||
const {label, icon, disabled, fill} = this.states[state];
|
const {label, icon, disabled, fill, color} = this.states[state];
|
||||||
this.label = label;
|
this.label = label;
|
||||||
this.icon = icon;
|
this.icon = icon;
|
||||||
this.iconFill = fill;
|
this.iconFill = fill;
|
||||||
this.disabled = disabled;
|
this.disabled = disabled;
|
||||||
|
this.color = color;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -28,23 +28,27 @@ export const AddEventStatesMap = {
|
|||||||
fill: true,
|
fill: true,
|
||||||
label: 'data.chips.add_events.ADDED_ALL',
|
label: 'data.chips.add_events.ADDED_ALL',
|
||||||
disabled: false,
|
disabled: false,
|
||||||
|
color: 'success',
|
||||||
},
|
},
|
||||||
[AddEventStates.ADDED_SOME]: {
|
[AddEventStates.ADDED_SOME]: {
|
||||||
icon: SCIcon`event`,
|
icon: SCIcon`event`,
|
||||||
fill: true,
|
fill: true,
|
||||||
label: 'data.chips.add_events.ADDED_SOME',
|
label: 'data.chips.add_events.ADDED_SOME',
|
||||||
disabled: false,
|
disabled: false,
|
||||||
|
color: 'success',
|
||||||
},
|
},
|
||||||
[AddEventStates.REMOVED_ALL]: {
|
[AddEventStates.REMOVED_ALL]: {
|
||||||
icon: SCIcon`calendar_today`,
|
icon: SCIcon`calendar_today`,
|
||||||
fill: false,
|
fill: false,
|
||||||
label: 'data.chips.add_events.REMOVED_ALL',
|
label: 'data.chips.add_events.REMOVED_ALL',
|
||||||
disabled: false,
|
disabled: false,
|
||||||
|
color: 'primary',
|
||||||
},
|
},
|
||||||
[AddEventStates.UNAVAILABLE]: {
|
[AddEventStates.UNAVAILABLE]: {
|
||||||
icon: SCIcon`event_busy`,
|
icon: SCIcon`event_busy`,
|
||||||
fill: false,
|
fill: false,
|
||||||
label: 'data.chips.add_events.UNAVAILABLE',
|
label: 'data.chips.add_events.UNAVAILABLE',
|
||||||
disabled: true,
|
disabled: true,
|
||||||
|
color: 'dark',
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -19,6 +19,8 @@
|
|||||||
@chipTransition
|
@chipTransition
|
||||||
[disabled]="disabled"
|
[disabled]="disabled"
|
||||||
(click)="$event.stopPropagation(); editModal.present()"
|
(click)="$event.stopPropagation(); editModal.present()"
|
||||||
|
[color]="color"
|
||||||
|
[outline]="true"
|
||||||
>
|
>
|
||||||
<ion-icon [name]="icon" [fill]="iconFill"></ion-icon>
|
<ion-icon [name]="icon" [fill]="iconFill"></ion-icon>
|
||||||
<ion-label>{{ label | translate }}</ion-label>
|
<ion-label>{{ label | translate }}</ion-label>
|
||||||
|
|||||||
@@ -19,12 +19,15 @@
|
|||||||
}}</ion-card-header>
|
}}</ion-card-header>
|
||||||
<ion-card-content>
|
<ion-card-content>
|
||||||
<div *ngFor="let offer of offers">
|
<div *ngFor="let offer of offers">
|
||||||
<p *ngIf="offer.inPlace">
|
<ion-grid>
|
||||||
|
<ion-row>
|
||||||
|
<ion-col>
|
||||||
<ion-icon name="pin_drop"></ion-icon>
|
<ion-icon name="pin_drop"></ion-icon>
|
||||||
<a [routerLink]="['/data-detail', offer.inPlace.uid]">{{
|
<a [routerLink]="['/data-detail', offer.inPlace.uid]">
|
||||||
'name' | thingTranslate: offer.inPlace
|
{{ 'name' | thingTranslate: offer.inPlace }}
|
||||||
}}</a
|
</a>
|
||||||
>,
|
</ion-col>
|
||||||
|
<ion-col>
|
||||||
<span
|
<span
|
||||||
*ngIf="
|
*ngIf="
|
||||||
offer.availabilityRange.gt
|
offer.availabilityRange.gt
|
||||||
@@ -32,7 +35,6 @@
|
|||||||
: offer.availabilityRange.gte
|
: offer.availabilityRange.gte
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<ion-icon name="calendar_today"></ion-icon>
|
|
||||||
{{
|
{{
|
||||||
(offer.availabilityRange.gt
|
(offer.availabilityRange.gt
|
||||||
? offer.availabilityRange.gt
|
? offer.availabilityRange.gt
|
||||||
@@ -40,11 +42,15 @@
|
|||||||
) | amDateFormat: 'll'
|
) | amDateFormat: 'll'
|
||||||
}}
|
}}
|
||||||
</span>
|
</span>
|
||||||
</p>
|
</ion-col>
|
||||||
|
</ion-row>
|
||||||
|
</ion-grid>
|
||||||
<ion-grid *ngIf="offer.prices">
|
<ion-grid *ngIf="offer.prices">
|
||||||
<ion-row *ngFor="let group of objectKeys(offer.prices)">
|
<ion-row *ngFor="let group of objectKeys(offer.prices)">
|
||||||
<ion-col>{{ group | titlecase }}</ion-col>
|
<ion-col *ngIf="group !== 'default'">{{
|
||||||
<ion-col width-20 text-right>
|
'data.detail.offers.' + group | translate
|
||||||
|
}}</ion-col>
|
||||||
|
<ion-col *ngIf="group !== 'default'" width-20 text-right>
|
||||||
<p>
|
<p>
|
||||||
{{
|
{{
|
||||||
offer.prices[group] | currency: 'EUR':'symbol':undefined:'de'
|
offer.prices[group] | currency: 'EUR':'symbol':undefined:'de'
|
||||||
|
|||||||
@@ -19,6 +19,8 @@ ion-item {
|
|||||||
@include border-radius-in-parallax(var(--border-radius-default));
|
@include border-radius-in-parallax(var(--border-radius-default));
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
--inner-padding-end: 0;
|
--inner-padding-end: 0;
|
||||||
|
--padding-start: var(--spacing-sm);
|
||||||
|
margin: var(--spacing-sm);
|
||||||
|
|
||||||
ion-thumbnail {
|
ion-thumbnail {
|
||||||
--ion-margin: var(--spacing-xs);
|
--ion-margin: var(--spacing-xs);
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import {
|
|||||||
AnimationBuilder,
|
AnimationBuilder,
|
||||||
AnimationController,
|
AnimationController,
|
||||||
} from '@ionic/angular';
|
} from '@ionic/angular';
|
||||||
|
import {Capacitor} from '@capacitor/core';
|
||||||
import {
|
import {
|
||||||
SCFacet,
|
SCFacet,
|
||||||
SCFeatureConfiguration,
|
SCFeatureConfiguration,
|
||||||
@@ -250,8 +251,10 @@ export class SearchPageComponent implements OnInit, OnDestroy {
|
|||||||
* Hides keyboard in native app environments
|
* Hides keyboard in native app environments
|
||||||
*/
|
*/
|
||||||
hideKeyboard() {
|
hideKeyboard() {
|
||||||
|
if (Capacitor.isNativePlatform()) {
|
||||||
Keyboard.hide();
|
Keyboard.hide();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set starting values (e.g. forced filter, which can be set in components inheriting this one)
|
* Set starting values (e.g. forced filter, which can be set in components inheriting this one)
|
||||||
|
|||||||
@@ -8,15 +8,15 @@
|
|||||||
</ion-col>
|
</ion-col>
|
||||||
<ion-col>
|
<ion-col>
|
||||||
<ion-card *ngIf="item.characteristics">
|
<ion-card *ngIf="item.characteristics">
|
||||||
<ion-card-header>{{
|
<ion-card-header class="no-padding-inline-start">{{
|
||||||
'characteristics' | propertyNameTranslate: item | titlecase
|
'data.types.dish.CHARACTERISTICS' | translate
|
||||||
}}</ion-card-header>
|
}}</ion-card-header>
|
||||||
<ion-card-content
|
<ion-card-content class="no-padding-inline-start">
|
||||||
|
<p
|
||||||
*ngFor="
|
*ngFor="
|
||||||
let characteristic of 'characteristics' | thingTranslate: item
|
let characteristic of 'characteristics' | thingTranslate: item
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<p>
|
|
||||||
<img
|
<img
|
||||||
*ngIf="characteristic.image"
|
*ngIf="characteristic.image"
|
||||||
[src]="characteristic.image"
|
[src]="characteristic.image"
|
||||||
@@ -33,12 +33,6 @@
|
|||||||
*ngIf="item.offers"
|
*ngIf="item.offers"
|
||||||
[offers]="item.offers"
|
[offers]="item.offers"
|
||||||
></stapps-offers-detail>
|
></stapps-offers-detail>
|
||||||
<stapps-simple-card
|
|
||||||
*ngIf="item.additives"
|
|
||||||
[title]="'additives' | propertyNameTranslate: item | titlecase"
|
|
||||||
[content]="'additives' | thingTranslate: item | join: ', '"
|
|
||||||
>
|
|
||||||
</stapps-simple-card>
|
|
||||||
<ion-card *ngIf="item.nutrition">
|
<ion-card *ngIf="item.nutrition">
|
||||||
<ion-card-header>{{
|
<ion-card-header>{{
|
||||||
'data.types.dish.detail.AVG_NUTRITION_INFO' | translate
|
'data.types.dish.detail.AVG_NUTRITION_INFO' | translate
|
||||||
@@ -88,3 +82,9 @@
|
|||||||
</ion-grid>
|
</ion-grid>
|
||||||
</ion-card-content>
|
</ion-card-content>
|
||||||
</ion-card>
|
</ion-card>
|
||||||
|
<stapps-simple-card
|
||||||
|
*ngIf="item.additives"
|
||||||
|
[title]="'additives' | propertyNameTranslate: item | titlecase"
|
||||||
|
[content]="'additives' | thingTranslate: item | join: ', '"
|
||||||
|
>
|
||||||
|
</stapps-simple-card>
|
||||||
|
|||||||
@@ -6,7 +6,9 @@
|
|||||||
<p class="title-sub ion-hide-sm-down">
|
<p class="title-sub ion-hide-sm-down">
|
||||||
{{ 'description' | thingTranslate: item }}
|
{{ 'description' | thingTranslate: item }}
|
||||||
</p>
|
</p>
|
||||||
<p>{{ 'categories' | thingTranslate: item | join: ', ' }}</p>
|
<ion-note>{{
|
||||||
|
'categories' | thingTranslate: item | join: ', '
|
||||||
|
}}</ion-note>
|
||||||
</div>
|
</div>
|
||||||
</ion-col>
|
</ion-col>
|
||||||
<ion-col width-10 text-right>
|
<ion-col width-10 text-right>
|
||||||
|
|||||||
@@ -13,22 +13,43 @@
|
|||||||
~ this program. If not, see <https://www.gnu.org/licenses/>.
|
~ this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<ion-card>
|
<ion-grid>
|
||||||
<ion-card-content>
|
<ion-row>
|
||||||
|
<ion-col>
|
||||||
|
<stapps-simple-card
|
||||||
|
*ngIf="item.type === 'academic event' && item.categories"
|
||||||
|
[title]="'categories' | propertyNameTranslate: item | titlecase"
|
||||||
|
[content]="'categories' | thingTranslate: item"
|
||||||
|
>
|
||||||
|
</stapps-simple-card>
|
||||||
|
</ion-col>
|
||||||
|
<ion-col>
|
||||||
|
<ion-card>
|
||||||
<stapps-add-event-action-chip
|
<stapps-add-event-action-chip
|
||||||
*ngIf="item.type === 'academic event'"
|
*ngIf="item.type === 'academic event'"
|
||||||
[item]="item"
|
[item]="item"
|
||||||
>
|
>
|
||||||
</stapps-add-event-action-chip>
|
</stapps-add-event-action-chip>
|
||||||
</ion-card-content>
|
</ion-card>
|
||||||
</ion-card>
|
</ion-col>
|
||||||
|
</ion-row>
|
||||||
|
</ion-grid>
|
||||||
|
|
||||||
<stapps-simple-card
|
<stapps-simple-card
|
||||||
*ngIf="item.type === 'academic event' && item.categories"
|
*ngIf="item.performers"
|
||||||
[title]="'categories' | propertyNameTranslate: item"
|
[title]="'performers' | propertyNameTranslate: item | titlecase"
|
||||||
[content]="'categories' | thingTranslate: item"
|
[content]="item.performers"
|
||||||
>
|
></stapps-simple-card>
|
||||||
</stapps-simple-card>
|
<stapps-simple-card
|
||||||
|
*ngIf="item.organizers"
|
||||||
|
[title]="'organizers' | propertyNameTranslate: item | titlecase"
|
||||||
|
[content]="item.organizers"
|
||||||
|
></stapps-simple-card>
|
||||||
|
<stapps-simple-card
|
||||||
|
*ngIf="item.type === 'academic event' && item.majors | titlecase"
|
||||||
|
[title]="'majors' | propertyNameTranslate: item"
|
||||||
|
[content]="item.majors"
|
||||||
|
></stapps-simple-card>
|
||||||
<ion-card *ngIf="item.catalogs">
|
<ion-card *ngIf="item.catalogs">
|
||||||
<ion-card-header>{{
|
<ion-card-header>{{
|
||||||
$any('superCatalogs' | propertyNameTranslate: 'catalog') | titlecase
|
$any('superCatalogs' | propertyNameTranslate: 'catalog') | titlecase
|
||||||
@@ -45,18 +66,3 @@
|
|||||||
</event-route-path>
|
</event-route-path>
|
||||||
</ion-card-content>
|
</ion-card-content>
|
||||||
</ion-card>
|
</ion-card>
|
||||||
<stapps-simple-card
|
|
||||||
*ngIf="item.performers"
|
|
||||||
[title]="'performers' | propertyNameTranslate: item"
|
|
||||||
[content]="item.performers"
|
|
||||||
></stapps-simple-card>
|
|
||||||
<stapps-simple-card
|
|
||||||
*ngIf="item.organizers"
|
|
||||||
[title]="'organizers' | propertyNameTranslate: item"
|
|
||||||
[content]="item.organizers"
|
|
||||||
></stapps-simple-card>
|
|
||||||
<stapps-simple-card
|
|
||||||
*ngIf="item.type === 'academic event' && item.majors"
|
|
||||||
[title]="'majors' | propertyNameTranslate: item"
|
|
||||||
[content]="item.majors"
|
|
||||||
></stapps-simple-card>
|
|
||||||
|
|||||||
@@ -2,23 +2,32 @@
|
|||||||
<ion-row *ngIf="item.type === 'academic event'">
|
<ion-row *ngIf="item.type === 'academic event'">
|
||||||
<ion-col>
|
<ion-col>
|
||||||
<div class="ion-text-wrap">
|
<div class="ion-text-wrap">
|
||||||
<ion-label class="title">{{ item.name }}</ion-label>
|
<ion-label class="title">{{ 'name' | thingTranslate: item }}</ion-label>
|
||||||
<p *ngIf="item.description" class="title-sub">{{ item.description }}</p>
|
<p *ngIf="item.description" class="title-sub">
|
||||||
<p *ngIf="item.academicTerms" class="title-sub">
|
{{ 'description' | thingTranslate: item }}
|
||||||
{{ item.academicTerms[0].name }}
|
|
||||||
</p>
|
</p>
|
||||||
<ion-note>{{ item.type }} ({{ item.categories.join(', ') }})</ion-note>
|
<p *ngIf="item.academicTerms" class="title-sub">
|
||||||
|
{{ 'name' | thingTranslate: item.academicTerms[0] }}
|
||||||
|
</p>
|
||||||
|
<ion-note *ngIf="!item.categories">{{
|
||||||
|
'type' | thingTranslate: item
|
||||||
|
}}</ion-note>
|
||||||
|
<ion-note *ngIf="item.categories">
|
||||||
|
{{ 'categories' | thingTranslate: item | join: ', ' }}
|
||||||
|
</ion-note>
|
||||||
</div>
|
</div>
|
||||||
</ion-col>
|
</ion-col>
|
||||||
</ion-row>
|
</ion-row>
|
||||||
<ion-row *ngIf="item.type === 'sport course'">
|
<ion-row *ngIf="item.type === 'sport course'">
|
||||||
<ion-col>
|
<ion-col>
|
||||||
<ion-label class="title">{{ item.name }}</ion-label>
|
<ion-label class="title">{{ 'name' | thingTranslate: item }}</ion-label>
|
||||||
<p *ngIf="item.description" class="title-sub">{{ item.description }}</p>
|
<p *ngIf="item.description" class="title-sub">
|
||||||
<p *ngIf="item.academicTerms" class="title-sub">
|
{{ 'description' | thingTranslate: item }}
|
||||||
{{ item.academicTerms[0].name }}
|
|
||||||
</p>
|
</p>
|
||||||
<ion-note>{{ item.type }}</ion-note>
|
<p *ngIf="item.academicTerms" class="title-sub">
|
||||||
|
{{ 'name' | thingTranslate: item.academicTerms[0] }}
|
||||||
|
</p>
|
||||||
|
<ion-note>{{ 'type' | thingTranslate: item }}</ion-note>
|
||||||
</ion-col>
|
</ion-col>
|
||||||
</ion-row>
|
</ion-row>
|
||||||
</ion-grid>
|
</ion-grid>
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
<ng-container>
|
<ng-container>
|
||||||
<div *ngIf="dishes | async as dishes; else loading">
|
<ng-container *ngIf="dishes | async as dishes; else loading">
|
||||||
|
<ng-container *ngIf="(dishes | json) !== '{}'; else empty">
|
||||||
<ion-segment [(ngModel)]="selectedDay" mode="md">
|
<ion-segment [(ngModel)]="selectedDay" mode="md">
|
||||||
<ion-segment-button
|
<ion-segment-button
|
||||||
*ngFor="let day of dishes | keyvalue"
|
*ngFor="let day of dishes | keyvalue"
|
||||||
@@ -13,8 +14,8 @@
|
|||||||
}}</ion-label>
|
}}</ion-label>
|
||||||
</ion-segment-button>
|
</ion-segment-button>
|
||||||
</ion-segment>
|
</ion-segment>
|
||||||
<div [ngSwitch]="selectedDay">
|
<ng-container [ngSwitch]="selectedDay">
|
||||||
<div *ngFor="let date of dishes | keyvalue">
|
<ng-container *ngFor="let date of dishes | keyvalue">
|
||||||
<ion-list *ngSwitchCase="date.key">
|
<ion-list *ngSwitchCase="date.key">
|
||||||
<ng-container *ngFor="let dish of date.value; index as i">
|
<ng-container *ngFor="let dish of date.value; index as i">
|
||||||
<stapps-data-list-item
|
<stapps-data-list-item
|
||||||
@@ -23,9 +24,10 @@
|
|||||||
></stapps-data-list-item>
|
></stapps-data-list-item>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</ion-list>
|
</ion-list>
|
||||||
</div>
|
</ng-container>
|
||||||
</div>
|
</ng-container>
|
||||||
</div>
|
</ng-container>
|
||||||
|
</ng-container>
|
||||||
<ng-template #loading>
|
<ng-template #loading>
|
||||||
<ion-segment>
|
<ion-segment>
|
||||||
<stapps-skeleton-segment-button
|
<stapps-skeleton-segment-button
|
||||||
@@ -38,4 +40,13 @@
|
|||||||
></stapps-skeleton-list-item>
|
></stapps-skeleton-list-item>
|
||||||
</ion-list>
|
</ion-list>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
<ng-template #empty>
|
||||||
|
<ion-card>
|
||||||
|
<ion-card-header>
|
||||||
|
<ion-label class="title">
|
||||||
|
{{ 'data.types.dish.EMPTY_DISHES' | translate }}
|
||||||
|
</ion-label>
|
||||||
|
</ion-card-header>
|
||||||
|
</ion-card>
|
||||||
|
</ng-template>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
|
|||||||
@@ -289,8 +289,10 @@ export class MapPageComponent {
|
|||||||
* Hides keyboard in native app environments
|
* Hides keyboard in native app environments
|
||||||
*/
|
*/
|
||||||
hideKeyboard() {
|
hideKeyboard() {
|
||||||
|
if (Capacitor.isNativePlatform()) {
|
||||||
Keyboard.hide();
|
Keyboard.hide();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Subscribe to needed observables and get the location status when user is entering the page
|
* Subscribe to needed observables and get the location status when user is entering the page
|
||||||
|
|||||||
@@ -46,6 +46,7 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
}
|
}
|
||||||
|
margin-bottom: var(--spacing-md);
|
||||||
}
|
}
|
||||||
|
|
||||||
ion-button.hidden {
|
ion-button.hidden {
|
||||||
|
|||||||
@@ -33,6 +33,7 @@
|
|||||||
margin-bottom: var(--spacing-md);
|
margin-bottom: var(--spacing-md);
|
||||||
}
|
}
|
||||||
.user-card-wrapper {
|
.user-card-wrapper {
|
||||||
|
margin-bottom: 0;
|
||||||
.user-card {
|
.user-card {
|
||||||
border-radius: var(--border-radius-default);
|
border-radius: var(--border-radius-default);
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ export interface SCSection extends SCThing {
|
|||||||
|
|
||||||
export const profilePageSections: SCSection[] = [
|
export const profilePageSections: SCSection[] = [
|
||||||
{
|
{
|
||||||
name: 'Your StApps',
|
name: '',
|
||||||
links: [
|
links: [
|
||||||
{
|
{
|
||||||
name: 'Favorites',
|
name: 'Favorites',
|
||||||
@@ -89,7 +89,7 @@ export const profilePageSections: SCSection[] = [
|
|||||||
link: ['/catalog'],
|
link: ['/catalog'],
|
||||||
translations: {
|
translations: {
|
||||||
de: {
|
de: {
|
||||||
name: 'Vorlesungs Verzeichnis',
|
name: 'Vorlesungs-verzeichnis',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
...SCSectionLinkConstantValues,
|
...SCSectionLinkConstantValues,
|
||||||
@@ -117,12 +117,12 @@ export const profilePageSections: SCSection[] = [
|
|||||||
...SCSectionLinkConstantValues,
|
...SCSectionLinkConstantValues,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'About StApps',
|
name: 'About Open StApps',
|
||||||
icon: SCIcon`info`,
|
icon: SCIcon`info`,
|
||||||
link: ['/about'],
|
link: ['/about'],
|
||||||
translations: {
|
translations: {
|
||||||
de: {
|
de: {
|
||||||
name: 'Über StApps',
|
name: 'Über Open StApps',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
...SCSectionLinkConstantValues,
|
...SCSectionLinkConstantValues,
|
||||||
@@ -130,7 +130,7 @@ export const profilePageSections: SCSection[] = [
|
|||||||
],
|
],
|
||||||
translations: {
|
translations: {
|
||||||
de: {
|
de: {
|
||||||
name: 'Dein StApps',
|
name: '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
...SCSectionConstantValues,
|
...SCSectionConstantValues,
|
||||||
@@ -164,12 +164,12 @@ export const profilePageSections: SCSection[] = [
|
|||||||
authProvider: 'paia',
|
authProvider: 'paia',
|
||||||
links: [
|
links: [
|
||||||
{
|
{
|
||||||
name: 'Library Search',
|
name: 'Library Catalog',
|
||||||
icon: SCIcon`local_library`,
|
icon: SCIcon`local_library`,
|
||||||
link: ['/hebis-search'],
|
link: ['/hebis-search'],
|
||||||
translations: {
|
translations: {
|
||||||
de: {
|
de: {
|
||||||
name: 'Bibliotheks Suche',
|
name: 'Bibliotheks-katalog',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
...SCSectionLinkConstantValues,
|
...SCSectionLinkConstantValues,
|
||||||
@@ -181,7 +181,7 @@ export const profilePageSections: SCSection[] = [
|
|||||||
link: ['/library-account/profile'],
|
link: ['/library-account/profile'],
|
||||||
translations: {
|
translations: {
|
||||||
de: {
|
de: {
|
||||||
name: 'Bibliotheks Konto',
|
name: 'Bibliotheks-konto',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
...SCSectionLinkConstantValues,
|
...SCSectionLinkConstantValues,
|
||||||
|
|||||||
@@ -66,7 +66,7 @@
|
|||||||
}}</ion-label>
|
}}</ion-label>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
-->
|
-->
|
||||||
<ion-item>
|
<ion-item *ngIf="!isWeb">
|
||||||
<ion-button
|
<ion-button
|
||||||
[disabled]="isWeb || !syncEnabled"
|
[disabled]="isWeb || !syncEnabled"
|
||||||
fill="clear"
|
fill="clear"
|
||||||
@@ -77,10 +77,10 @@
|
|||||||
</ion-button>
|
</ion-button>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
<ion-item *ngIf="isWeb">
|
<ion-item *ngIf="isWeb">
|
||||||
<ion-label color="medium"
|
<ion-label color="medium" class="ion-text-wrap"
|
||||||
><i>{{
|
><b>{{
|
||||||
'settings.calendar.sync.unavailableWeb' | translate
|
'settings.calendar.sync.unavailableWeb' | translate
|
||||||
}}</i></ion-label
|
}}</b></ion-label
|
||||||
>
|
>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
</ion-item-group>
|
</ion-item-group>
|
||||||
|
|||||||
@@ -65,7 +65,7 @@
|
|||||||
"title_morning": "Guten Morgen",
|
"title_morning": "Guten Morgen",
|
||||||
"title_day": "Guten Tag",
|
"title_day": "Guten Tag",
|
||||||
"title_evening": "Guten Abend",
|
"title_evening": "Guten Abend",
|
||||||
"title_night": "Hallo"
|
"title_night": "Gute Nacht"
|
||||||
},
|
},
|
||||||
"navigation": {
|
"navigation": {
|
||||||
"title": "Dashboard",
|
"title": "Dashboard",
|
||||||
@@ -118,7 +118,11 @@
|
|||||||
"POST_OFFICE_BOX": "Postfach"
|
"POST_OFFICE_BOX": "Postfach"
|
||||||
},
|
},
|
||||||
"offers": {
|
"offers": {
|
||||||
"TITLE": "Angebote"
|
"TITLE": "Angebote",
|
||||||
|
"default": "Standard",
|
||||||
|
"employee": "Angestellte",
|
||||||
|
"guest": "Gäste",
|
||||||
|
"student": "Studuierende"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"chips": {
|
"chips": {
|
||||||
@@ -137,6 +141,8 @@
|
|||||||
},
|
},
|
||||||
"types": {
|
"types": {
|
||||||
"dish": {
|
"dish": {
|
||||||
|
"CHARACTERISTICS": "Zutaten",
|
||||||
|
"EMPTY_DISHES": "Keine Angebote verfügbar",
|
||||||
"detail": {
|
"detail": {
|
||||||
"AVG_NUTRITION_INFO": "Durchschnittliche Nährwertangaben",
|
"AVG_NUTRITION_INFO": "Durchschnittliche Nährwertangaben",
|
||||||
"CALORIES": "Brennwert",
|
"CALORIES": "Brennwert",
|
||||||
@@ -429,7 +435,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"profile": {
|
"profile": {
|
||||||
"title": "Studium",
|
"title": "Meine App",
|
||||||
"titleLogins": "Logins",
|
"titleLogins": "Logins",
|
||||||
"titleCourses": "Meine Kurse",
|
"titleCourses": "Meine Kurse",
|
||||||
"role_guest": "Gastnutzer",
|
"role_guest": "Gastnutzer",
|
||||||
|
|||||||
@@ -65,7 +65,7 @@
|
|||||||
"title_morning": "Good Morning",
|
"title_morning": "Good Morning",
|
||||||
"title_day": "Good Day",
|
"title_day": "Good Day",
|
||||||
"title_evening": "Good Evening",
|
"title_evening": "Good Evening",
|
||||||
"title_night": "Hello"
|
"title_night": "Good Night"
|
||||||
},
|
},
|
||||||
"navigation": {
|
"navigation": {
|
||||||
"title": "Dashboard",
|
"title": "Dashboard",
|
||||||
@@ -118,7 +118,11 @@
|
|||||||
"POST_OFFICE_BOX": "post office box"
|
"POST_OFFICE_BOX": "post office box"
|
||||||
},
|
},
|
||||||
"offers": {
|
"offers": {
|
||||||
"TITLE": "offers"
|
"TITLE": "offers",
|
||||||
|
"default": "Default",
|
||||||
|
"employee": "Employees",
|
||||||
|
"guest": "Guests",
|
||||||
|
"student": "Students"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"chips": {
|
"chips": {
|
||||||
@@ -137,6 +141,8 @@
|
|||||||
},
|
},
|
||||||
"types": {
|
"types": {
|
||||||
"dish": {
|
"dish": {
|
||||||
|
"CHARACTERISTICS": "Ingredients",
|
||||||
|
"EMPTY_DISHES": "No Offers Available",
|
||||||
"detail": {
|
"detail": {
|
||||||
"AVG_NUTRITION_INFO": "Average Nutrition Facts",
|
"AVG_NUTRITION_INFO": "Average Nutrition Facts",
|
||||||
"CALORIES": "Calories",
|
"CALORIES": "Calories",
|
||||||
@@ -429,7 +435,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"profile": {
|
"profile": {
|
||||||
"title": "Study",
|
"title": "My App",
|
||||||
"titleLogins": "Logins",
|
"titleLogins": "Logins",
|
||||||
"titleCourses": "My Courses",
|
"titleCourses": "My Courses",
|
||||||
"role_guest": "guest user",
|
"role_guest": "guest user",
|
||||||
|
|||||||
@@ -2,6 +2,10 @@
|
|||||||
padding-right: 0 !important;
|
padding-right: 0 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.no-padding-inline-start {
|
||||||
|
padding-inline-start: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
.display-flex {
|
.display-flex {
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user