Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc7f84fd authored by Vincent Bourgmayer's avatar Vincent Bourgmayer
Browse files

refactor(ImportActivity): extract code to start 'EditEventActivity' from...

refactor(ImportActivity): extract code to start 'EditEventActivity' from 'parseCalFile() into a dedicated method' method
parent 5203913a
Loading
Loading
Loading
Loading
+61 −58
Original line number Diff line number Diff line
@@ -149,41 +149,46 @@ public class ImportActivity extends Activity {
        }

        if (events.size() ==  1) {
            VEvent event = calendar.getAllEvents().getFirst();
            startInsertEventActivity(event);
        }
    }

    private void startInsertEventActivity(VEvent event) {
        Intent calIntent = new Intent(Intent.ACTION_INSERT);
        calIntent.setType("vnd.android.cursor.item/event");

            VEvent firstEvent = calendar.getAllEvents().getFirst();
        calIntent.putExtra(CalendarContract.Events.TITLE,
                    IcalendarUtils.uncleanseString(firstEvent.getProperty(VEvent.SUMMARY)));
                IcalendarUtils.uncleanseString(event.getProperty(VEvent.SUMMARY)));
        calIntent.putExtra(CalendarContract.Events.EVENT_LOCATION,
                    IcalendarUtils.uncleanseString(firstEvent.getProperty(VEvent.LOCATION)));
                IcalendarUtils.uncleanseString(event.getProperty(VEvent.LOCATION)));
        calIntent.putExtra(CalendarContract.Events.DESCRIPTION,
                    IcalendarUtils.uncleanseString(firstEvent.getProperty(VEvent.DESCRIPTION)));
                IcalendarUtils.uncleanseString(event.getProperty(VEvent.DESCRIPTION)));
        calIntent.putExtra(ExtendedProperty.URL,
                    IcalendarUtils.uncleanseString(firstEvent.getProperty(VEvent.URL)));
                IcalendarUtils.uncleanseString(event.getProperty(VEvent.URL)));
        calIntent.putExtra(CalendarContract.Events.ORGANIZER,
                    IcalendarUtils.uncleanseString(firstEvent.getProperty(VEvent.ORGANIZER)));
                IcalendarUtils.uncleanseString(event.getProperty(VEvent.ORGANIZER)));
        calIntent.putExtra(CalendarContract.Events.RRULE,
                    IcalendarUtils.uncleanseString(firstEvent.getProperty(VEvent.RRULE)));
                IcalendarUtils.uncleanseString(event.getProperty(VEvent.RRULE)));

            if (firstEvent.mAttendees.size() > 0) {
        if (event.mAttendees.size() > 0) {
            StringBuilder builder = new StringBuilder();
                for (Attendee attendee : firstEvent.mAttendees) {
            for (Attendee attendee : event.mAttendees) {
                builder.append(attendee.mEmail);
                builder.append(",");
            }
            calIntent.putExtra(Intent.EXTRA_EMAIL, builder.toString());
        }

            String dtStart = firstEvent.getProperty(VEvent.DTSTART);
            String dtStartParam = firstEvent.getPropertyParameters(VEvent.DTSTART);
        String dtStart = event.getProperty(VEvent.DTSTART);
        String dtStartParam = event.getPropertyParameters(VEvent.DTSTART);
        if (!TextUtils.isEmpty(dtStart)) {
            calIntent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME,
                    getLocalTimeFromString(dtStart, dtStartParam));
        }

            String dtEnd = firstEvent.getProperty(VEvent.DTEND);
            String dtEndParam = firstEvent.getPropertyParameters(VEvent.DTEND);
        String dtEnd = event.getProperty(VEvent.DTEND);
        String dtEndParam = event.getPropertyParameters(VEvent.DTEND);
        if (dtEnd != null && !TextUtils.isEmpty(dtEnd)) {
            calIntent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME,
                    getLocalTimeFromString(dtEnd, dtEndParam));
@@ -202,12 +207,11 @@ public class ImportActivity extends Activity {
        }
        //Check if some special property which say it is a "All-Day" event.

            String microsoft_all_day_event = firstEvent.getProperty("X-MICROSOFT-CDO-ALLDAYEVENT");
        String microsoft_all_day_event = event.getProperty("X-MICROSOFT-CDO-ALLDAYEVENT");
        if (!TextUtils.isEmpty(microsoft_all_day_event) && microsoft_all_day_event.equals("TRUE")) {
            calIntent.putExtra(CalendarContract.EXTRA_EVENT_ALL_DAY, true);
        }


        calIntent.putExtra(EditEventActivity.EXTRA_READ_ONLY, true);

        try {
@@ -218,7 +222,6 @@ public class ImportActivity extends Activity {
            finish();
        }
    }
    }

    private boolean isTimeStartOfDay(String dtStart, String dtStartParam) {
        // convert to epoch milli seconds