From 6d94c961f17634aba51327c815c20942557db9b3 Mon Sep 17 00:00:00 2001
From: Dani Palou
Date: Thu, 18 Jul 2019 12:56:55 +0200
Subject: [PATCH] MOBILE-3021 calendar: Improve event page display
---
scripts/langindex.json | 6 ++--
.../calendar/addon-calendar-calendar.html | 1 +
.../components/calendar/calendar.scss | 7 +++++
src/addon/calendar/lang/en.json | 1 +
src/addon/calendar/pages/event/event.html | 28 ++++++++++++++-----
src/addon/calendar/pages/event/event.ts | 25 ++++-------------
src/assets/lang/en.json | 1 +
7 files changed, 41 insertions(+), 28 deletions(-)
diff --git a/scripts/langindex.json b/scripts/langindex.json
index d80355727..aa47c8821 100644
--- a/scripts/langindex.json
+++ b/scripts/langindex.json
@@ -30,6 +30,7 @@
"addon.block_badges.pluginname": "block_badges",
"addon.block_blogmenu.pluginname": "block_blog_menu",
"addon.block_blogrecent.nocourses": "block_blog_recent",
+ "addon.block_blogrecent.pluginname": "block_blog_recent",
"addon.block_blogtags.pluginname": "block_blog_tags",
"addon.block_calendarmonth.pluginname": "block_calendar_month",
"addon.block_calendarupcoming.pluginname": "block_calendar_upcoming",
@@ -51,12 +52,12 @@
"addon.block_newsitems.pluginname": "block_news_items",
"addon.block_onlineusers.pluginname": "block_online_users",
"addon.block_privatefiles.pluginname": "block_private_files",
+ "addon.block_recentactivity.pluginname": "block_recent_activity",
"addon.block_recentlyaccessedcourses.nocourses": "block_recentlyaccessedcourses",
"addon.block_recentlyaccessedcourses.pluginname": "block_recentlyaccessedcourses",
"addon.block_recentlyaccesseditems.noitems": "block_recentlyaccesseditems",
- "addon.block_recentactivity.pluginname": "block_recent_activity",
+ "addon.block_recentlyaccesseditems.pluginname": "block_recentlyaccesseditems",
"addon.block_rssclient.pluginname": "block_rss_client",
- "addon.block_glossaryrandom.pluginname": "block_glossary_random",
"addon.block_selfcompletion.pluginname": "block_selfcompletion",
"addon.block_sitemainmenu.pluginname": "block_site_main_menu",
"addon.block_starredcourses.nocourses": "block_starredcourses",
@@ -149,6 +150,7 @@
"addon.calendar.upcomingevents": "calendar",
"addon.calendar.wed": "calendar",
"addon.calendar.wednesday": "calendar",
+ "addon.calendar.when": "calendar",
"addon.calendar.yesterday": "calendar",
"addon.competency.activities": "tool_lp",
"addon.competency.competencies": "competency",
diff --git a/src/addon/calendar/components/calendar/addon-calendar-calendar.html b/src/addon/calendar/components/calendar/addon-calendar-calendar.html
index ea373d297..1cc977fdf 100644
--- a/src/addon/calendar/components/calendar/addon-calendar-calendar.html
+++ b/src/addon/calendar/components/calendar/addon-calendar-calendar.html
@@ -43,6 +43,7 @@
+
{{ event.timestart * 1000 | coreFormatDate: timeFormat }}
{{event.name}}
diff --git a/src/addon/calendar/components/calendar/calendar.scss b/src/addon/calendar/components/calendar/calendar.scss
index af7182c32..b764187e4 100644
--- a/src/addon/calendar/components/calendar/calendar.scss
+++ b/src/addon/calendar/components/calendar/calendar.scss
@@ -48,4 +48,11 @@ ion-app.app-root addon-calendar-calendar {
background-color: $calendar-event-site-color;
}
}
+
+ .core-module-icon {
+ @include margin-horizontal(1px, 1px);
+ width: 16px;
+ height: 16px;
+ display: inline;
+ }
}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/en.json b/src/addon/calendar/lang/en.json
index 8d19b4559..be2bab15a 100644
--- a/src/addon/calendar/lang/en.json
+++ b/src/addon/calendar/lang/en.json
@@ -65,5 +65,6 @@
"upcomingevents": "Upcoming events",
"wed": "Wed",
"wednesday": "Wednesday",
+ "when": "When",
"yesterday": "Yesterday"
}
\ No newline at end of file
diff --git a/src/addon/calendar/pages/event/event.html b/src/addon/calendar/pages/event/event.html
index 6e64b6fe0..366327f66 100644
--- a/src/addon/calendar/pages/event/event.html
+++ b/src/addon/calendar/pages/event/event.html
@@ -1,6 +1,10 @@
-
+
+
+
+
+
@@ -26,14 +30,26 @@
-
+
+
-
-
+ {{ 'addon.calendar.eventname' | translate }}
+
{{ 'core.deletedoffline' | translate }}
+
+ {{ 'addon.calendar.when' | translate }}
+
+
+ {{ 'core.deletedoffline' | translate }}
+
+
+
+ {{ 'addon.calendar.eventtype' | translate }}
+ {{ 'addon.calendar.type' + event.formattedType | translate }}
+
{{ 'core.course' | translate}}
@@ -46,10 +62,8 @@
{{ 'core.category' | translate}}
-
-
{{event.moduleName}}
-
+ {{ 'core.description' | translate}}
diff --git a/src/addon/calendar/pages/event/event.ts b/src/addon/calendar/pages/event/event.ts
index 7af265152..fb9354748 100644
--- a/src/addon/calendar/pages/event/event.ts
+++ b/src/addon/calendar/pages/event/event.ts
@@ -57,7 +57,6 @@ export class AddonCalendarEventPage implements OnDestroy {
notificationMax: string;
notificationTimeText: string;
event: any = {};
- title: string;
courseName: string;
groupName: string;
courseUrl = '';
@@ -236,8 +235,6 @@ export class AddonCalendarEventPage implements OnDestroy {
this.courseUrl = '';
this.moduleUrl = '';
- // Guess event title.
- let title = this.translate.instant('addon.calendar.type' + event.eventtype);
if (event.moduleIcon) {
// It's a module event, translate the module name to the current language.
const name = this.courseProvider.translateModuleName(event.modulename);
@@ -245,27 +242,12 @@ export class AddonCalendarEventPage implements OnDestroy {
event.moduleName = name;
}
- // Calculate the title of the page;
- if (title == 'addon.calendar.type' + event.eventtype) {
- title = this.translate.instant('core.mod_' + event.modulename + '.' + event.eventtype);
-
- if (title == 'core.mod_' + event.modulename + '.' + event.eventtype) {
- title = name;
- }
- }
-
// Get the module URL.
if (canGetById) {
this.moduleUrl = event.url;
}
- } else {
- if (title == 'addon.calendar.type' + event.eventtype) {
- title = event.name;
- }
}
- this.title = title;
-
// If the event belongs to a course, get the course name and the URL to view it.
if (canGetById && event.course && event.course.id != this.siteHomeId) {
this.courseName = event.course.fullname;
@@ -403,7 +385,12 @@ export class AddonCalendarEventPage implements OnDestroy {
refreshEvent(sync?: boolean, showErrors?: boolean): Promise {
this.syncIcon = 'spinner';
- return this.calendarProvider.invalidateEvent(this.eventId).catch(() => {
+ const promises = [];
+
+ promises.push(this.calendarProvider.invalidateEvent(this.eventId));
+ promises.push(this.calendarProvider.invalidateTimeFormat());
+
+ return Promise.all(promises).catch(() => {
// Ignore errors.
}).then(() => {
return this.fetchEvent(sync, showErrors);
diff --git a/src/assets/lang/en.json b/src/assets/lang/en.json
index b78160d84..a8564ee92 100644
--- a/src/assets/lang/en.json
+++ b/src/assets/lang/en.json
@@ -149,6 +149,7 @@
"addon.calendar.upcomingevents": "Upcoming events",
"addon.calendar.wed": "Wed",
"addon.calendar.wednesday": "Wednesday",
+ "addon.calendar.when": "When",
"addon.calendar.yesterday": "Yesterday",
"addon.competency.activities": "Activities",
"addon.competency.competencies": "Competencies",