Skip to content

Commit

Permalink
Merge branch 'feature/issue-1259' into release
Browse files Browse the repository at this point in the history
Closes #1259
  • Loading branch information
phw198 committed Oct 26, 2023
2 parents 5e9f4a4 + 5ebcfd1 commit de24bc5
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 4 deletions.
12 changes: 8 additions & 4 deletions src/OutlookGoogleCalendarSync/OutlookOgcs/OutlookCalendar.cs
Original file line number Diff line number Diff line change
Expand Up @@ -966,9 +966,11 @@ private OlSensitivity getPrivacy(String gVisibility, OlSensitivity? oSensitivity
/// <param name="oBusyStatus">Outlook's current setting</param>
private OlBusyStatus getAvailability(String gTransparency, OlBusyStatus? oBusyStatus) {
SettingsStore.Calendar profile = Sync.Engine.Calendar.Instance.Profile;

List<String> persistOutlookStatus = new List<String> { OlBusyStatus.olTentative.ToString(), OlBusyStatus.olOutOfOffice.ToString(), "olWorkingElsewhere" };

if (!profile.SetEntriesAvailable)
return (gTransparency == "transparent") ? OlBusyStatus.olFree : OlBusyStatus.olBusy;
return (gTransparency == "transparent") ? OlBusyStatus.olFree :
persistOutlookStatus.Contains(oBusyStatus.ToString()) ? (OlBusyStatus)oBusyStatus: OlBusyStatus.olBusy;

OlBusyStatus overrideFbStatus = OlBusyStatus.olFree;
try {
Expand All @@ -982,14 +984,16 @@ private OlBusyStatus getAvailability(String gTransparency, OlBusyStatus? oBusySt
} else {
if (profile.TargetCalendar.Id == Sync.Direction.OutlookToGoogle.Id) { //Availability enforcement is in other direction
if (oBusyStatus == null)
return (gTransparency == "transparent") ? OlBusyStatus.olFree : OlBusyStatus.olBusy;
return (gTransparency == "transparent") ? OlBusyStatus.olFree :
persistOutlookStatus.Contains(oBusyStatus.ToString()) ? (OlBusyStatus)oBusyStatus : OlBusyStatus.olBusy;
else
return (OlBusyStatus)oBusyStatus;
} else {
if (!profile.CreatedItemsOnly || (profile.CreatedItemsOnly && oBusyStatus == null))
return overrideFbStatus;
else
return (gTransparency == "transparent") ? OlBusyStatus.olFree : OlBusyStatus.olBusy;
return (gTransparency == "transparent") ? OlBusyStatus.olFree :
persistOutlookStatus.Contains(oBusyStatus.ToString()) ? (OlBusyStatus)oBusyStatus : OlBusyStatus.olBusy;
}
}
}
Expand Down
1 change: 1 addition & 0 deletions src/OutlookGoogleCalendarSync/SettingsStore/Calendar.cs
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ [DataMember] public Boolean OutlookGalBlocked {
[DataMember] public bool SetEntriesPrivate { get; set; }
[DataMember] public String PrivacyLevel { get; set; }
[DataMember] public bool SetEntriesAvailable { get; set; }
/// <summary>Set availability status for all entries</summary>
[DataMember] public String AvailabilityStatus { get; set; }
[DataMember] public bool SetEntriesColour { get; set; }
/// <summary>Set all Outlook appointments to this OlCategoryColor</summary>
Expand Down

0 comments on commit de24bc5

Please sign in to comment.