From 00e6ef49ba68ad12bc6924622bfa57e241f20c59 Mon Sep 17 00:00:00 2001 From: Michael Gordeev Date: Tue, 24 Dec 2019 16:06:52 +0300 Subject: [PATCH] Fixed calendar export, disable reminders option has been removed from menu --- .../GUT.Schedule/Activities/MainActivity.cs | 6 +++--- GUT.Schedule/GUT.Schedule/Calendar.cs | 18 ++++++++++-------- GUT.Schedule/GUT.Schedule/Models/DataSet.cs | 2 +- .../Resources/layout/activity_main.xml | 5 +++++ 4 files changed, 19 insertions(+), 12 deletions(-) diff --git a/GUT.Schedule/GUT.Schedule/Activities/MainActivity.cs b/GUT.Schedule/GUT.Schedule/Activities/MainActivity.cs index 672a8b7..88c528a 100644 --- a/GUT.Schedule/GUT.Schedule/Activities/MainActivity.cs +++ b/GUT.Schedule/GUT.Schedule/Activities/MainActivity.cs @@ -35,7 +35,7 @@ namespace GUT.Schedule course.SetList(this, "1234".ToCharArray()); reminder.SetList(this, new string[] { - "Нет", + //"Нет", "Во время начала", "За 5 мин", "За 10 мин" @@ -65,13 +65,13 @@ namespace GUT.Schedule Course = course.SelectedItemPosition + 1, AddGroupToTitle = groupTitle.Checked, Calendar = Calendar.Calendars[calendar.SelectedItemPosition].Id, - Reminder = reminder.SelectedItemPosition switch + Reminder = reminder.SelectedItemPosition * 5 /*switch { 1 => 0, 2 => 5, 3 => 10, _ => null - } + }*/ }; StartActivity(new Intent(this, typeof(ExportActivity))); diff --git a/GUT.Schedule/GUT.Schedule/Calendar.cs b/GUT.Schedule/GUT.Schedule/Calendar.cs index a21c6ad..3b1a7b7 100644 --- a/GUT.Schedule/GUT.Schedule/Calendar.cs +++ b/GUT.Schedule/GUT.Schedule/Calendar.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.Threading.Tasks; using Android.App; using Android.Database; using Android.Net; @@ -45,7 +46,7 @@ namespace GUT.Schedule } - public static void Export(IEnumerable schedule) + public static void Export(IEnumerable schedule) { DataSet data = Data.DataSet; @@ -66,26 +67,27 @@ namespace GUT.Schedule eventValues.Put(CalendarContract.Events.InterfaceConsts.Availability, 0); - eventValues.Put(CalendarContract.Events.InterfaceConsts.HasAlarm, data.Reminder.HasValue); + eventValues.Put(CalendarContract.Events.InterfaceConsts.HasAlarm, 1); eventValues.Put(CalendarContract.Events.InterfaceConsts.Dtstart, item.StartTime.ToUnixTime()); eventValues.Put(CalendarContract.Events.InterfaceConsts.Dtend, Extensions.ToUnixTime(item.EndTime)); eventValues.Put(CalendarContract.Events.InterfaceConsts.EventTimezone, TimeZone.Default.ID); eventValues.Put(CalendarContract.Events.InterfaceConsts.EventEndTimezone, TimeZone.Default.ID); - eventValues.Put(CalendarContract.Reminders.InterfaceConsts.CustomAppPackage, "bonch.schedule"); + eventValues.Put(CalendarContract.Events.InterfaceConsts.CustomAppPackage, Application.Context.PackageName); Uri response = Application.Context.ContentResolver.Insert(CalendarContract.Events.ContentUri, eventValues); + // Settings reminder Android.Content.ContentValues reminderValues = new Android.Content.ContentValues(); reminderValues.Put(CalendarContract.Reminders.InterfaceConsts.EventId, long.Parse(response.LastPathSegment)); - reminderValues.Put(CalendarContract.Reminders.InterfaceConsts.CustomAppPackage, "bonch.schedule"); - - // Fuck Android! - reminderValues.Put(CalendarContract.Reminders.InterfaceConsts.Minutes, data.Reminder?.ToString()); - // P.S. I mean fuck Android! + reminderValues.Put(CalendarContract.Reminders.InterfaceConsts.Minutes, data.Reminder); Application.Context.ContentResolver.Insert(CalendarContract.Reminders.ContentUri, reminderValues); + + // TODO: Add ability to completely disable reminders + // Fuck Android! + // P.S. I mean fuck Android! } } } diff --git a/GUT.Schedule/GUT.Schedule/Models/DataSet.cs b/GUT.Schedule/GUT.Schedule/Models/DataSet.cs index 4739fdc..c093f5f 100644 --- a/GUT.Schedule/GUT.Schedule/Models/DataSet.cs +++ b/GUT.Schedule/GUT.Schedule/Models/DataSet.cs @@ -6,7 +6,7 @@ public string Faculty { get; set; } public int Course { get; set; } public string Group { get; set; } - public int? Reminder { get; set; } + public int Reminder { get; set; } public bool AddGroupToTitle { get; set; } } } \ No newline at end of file diff --git a/GUT.Schedule/GUT.Schedule/Resources/layout/activity_main.xml b/GUT.Schedule/GUT.Schedule/Resources/layout/activity_main.xml index dbfa4e8..7de7661 100644 --- a/GUT.Schedule/GUT.Schedule/Resources/layout/activity_main.xml +++ b/GUT.Schedule/GUT.Schedule/Resources/layout/activity_main.xml @@ -136,6 +136,11 @@ android:layout_width="match_parent" android:layout_height="wrap_content"/> + +