propagate from branch 'ca.inverse.sogo.1_3_12' (head 7d5711d36b09624f7b8bf3747c0b7c2d743b3d00)
to branch 'ca.inverse.sogo' (head 15b9d9900d3605d1920661f52678d25d93c587ef) Monotone-Parent: 15b9d9900d3605d1920661f52678d25d93c587ef Monotone-Parent: 7d5711d36b09624f7b8bf3747c0b7c2d743b3d00 Monotone-Revision: ac81d77fda86dad3ce300e48e20f65bd639b24cb Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2012-02-03T16:59:00 Monotone-Branch: ca.inverse.sogomaint-2.0.2
commit
b9266a4e53
13
ChangeLog
13
ChangeLog
|
@ -1,3 +1,14 @@
|
|||
<<<<<<< variant A
|
||||
2012-02-02 Francis Lachapelle <flachapelle@inverse.ca>
|
||||
|
||||
* UI/MailerUI/UIxMailMainFrame.m (-composeAction): recipient
|
||||
addresses are now passed as a JSON-formatted string.
|
||||
|
||||
* UI/MailerUI/UIxMailAccountActions.m (-composeAction): the
|
||||
received "mailto" parameter is now a JSON-formatted string; we
|
||||
parse it accordingly.
|
||||
|
||||
>>>>>>> variant B
|
||||
2012-02-03 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
||||
|
||||
* OpenChange/MAPIStoreSOGo.m (sogo_backend_create_root_folder):
|
||||
|
@ -38,6 +49,8 @@
|
|||
* OpenChange/MAPIApplication.m (-setUserContext:): do not retain
|
||||
the user context.
|
||||
|
||||
####### Ancestor
|
||||
======= end
|
||||
2012-02-01 Francis Lachapelle <flachapelle@inverse.ca>
|
||||
|
||||
* UI/WebServerResources/UIxCalUserRightsEditor.js (onUpdateACL):
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
2012-02-03 Francis Lachapelle <flachapelle@inverse.ca>
|
||||
|
||||
* iCalDailyRecurrenceCalculator.m
|
||||
(-recurrenceRangesWithinCalendarDateRange): handle the case
|
||||
where the occurrence start date doesn't cover the reference period
|
||||
but the end date does.
|
||||
|
||||
2012-01-11 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
||||
|
||||
* NSString+NGCards.m (-asCardAttributeValues): fixed a leak by
|
||||
|
|
|
@ -144,9 +144,12 @@
|
|||
break;
|
||||
}
|
||||
|
||||
if (wrongDay == NO &&
|
||||
([startDate compare: currentStartDate] == NSOrderedAscending ||
|
||||
[startDate compare: currentStartDate] == NSOrderedSame))
|
||||
if (wrongDay == NO)
|
||||
{
|
||||
currentEndDate = [currentStartDate addTimeInterval: [firstRange duration]];
|
||||
if ([startDate compare: currentStartDate] == NSOrderedAscending ||
|
||||
[startDate compare: currentStartDate] == NSOrderedSame ||
|
||||
[startDate compare: currentEndDate] == NSOrderedAscending)
|
||||
{
|
||||
NGCalendarDateRange *r;
|
||||
|
||||
|
@ -158,13 +161,13 @@
|
|||
|
||||
if (isFirStart == YES || wrongDay == NO)
|
||||
{
|
||||
currentEndDate = [currentStartDate addTimeInterval: [firstRange duration]];
|
||||
r = [NGCalendarDateRange calendarDateRangeWithStartDate: currentStartDate
|
||||
endDate: currentEndDate];
|
||||
if ([_r containsDateRange: r] || [_r doesIntersectWithDateRange: r])
|
||||
[ranges addObject: r];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
currentStartDate = [firStart dateByAddingYears: 0 months: 0
|
||||
days: (interval * i)];
|
||||
|
|
|
@ -392,7 +392,7 @@
|
|||
ignoringAttendees: (NSArray *) attendees
|
||||
fromOldEvent: (iCalEvent *) oldEvent
|
||||
{
|
||||
NSMutableArray *updateAttendees, *updateUIDs;
|
||||
NSMutableArray *updateAttendees;
|
||||
NSEnumerator *enumerator;
|
||||
iCalPerson *currentAttendee;
|
||||
NSString *currentUID;
|
||||
|
@ -400,7 +400,6 @@
|
|||
updateAttendees = [NSMutableArray arrayWithArray: [newEvent attendees]];
|
||||
[updateAttendees removeObjectsInArray: attendees];
|
||||
|
||||
updateUIDs = [NSMutableArray arrayWithCapacity: [updateAttendees count]];
|
||||
enumerator = [updateAttendees objectEnumerator];
|
||||
while ((currentAttendee = [enumerator nextObject]))
|
||||
{
|
||||
|
|
|
@ -73,6 +73,15 @@
|
|||
"delegate is a participant" = "The delegate is already a participant.";
|
||||
"delegate is a group" = "The specified address corresponds to a group. You can only delegate to a unique person.";
|
||||
|
||||
"Snooze for " = "Snooze for ";
|
||||
"5 minutes" = "5 minutes";
|
||||
"10 minutes" = "10 minutes";
|
||||
"15 minutes" = "15 minutes";
|
||||
"30 minutes" = "30 minutes";
|
||||
"45 minutes" = "45 minutes";
|
||||
"1 hour" = "1 hour";
|
||||
|
||||
|
||||
/* common buttons */
|
||||
"OK" = "OK";
|
||||
"Cancel" = "Cancel";
|
||||
|
|
|
@ -73,6 +73,15 @@
|
|||
"delegate is a participant" = "Le délégué est déjà un participant.";
|
||||
"delegate is a group" = "L'adresse spécifiée correspond à un groupe. Vous ne pouvez déléguer qu'à une personne.";
|
||||
|
||||
"Snooze for " = "Rappel dans ";
|
||||
"5 minutes" = "5 minutes";
|
||||
"10 minutes" = "10 minutes";
|
||||
"15 minutes" = "15 minutes";
|
||||
"30 minutes" = "30 minutes";
|
||||
"45 minutes" = "45 minutes";
|
||||
"1 hour" = "1 heure";
|
||||
|
||||
|
||||
/* common buttons */
|
||||
"OK" = "OK";
|
||||
"Cancel" = "Annuler";
|
||||
|
|
|
@ -212,7 +212,7 @@
|
|||
SOGoDraftsFolder *drafts;
|
||||
SOGoDraftObject *newDraftMessage;
|
||||
NSString *urlBase, *url, *value, *signature;
|
||||
NSArray *mailTo;
|
||||
id mailTo;
|
||||
NSMutableDictionary *headers;
|
||||
BOOL save;
|
||||
|
||||
|
@ -225,10 +225,13 @@
|
|||
value = [[self request] formValueForKey: @"mailto"];
|
||||
if ([value length] > 0)
|
||||
{
|
||||
mailTo = [[value stringByUnescapingURL] componentsSeparatedByString: @","];
|
||||
[headers setObject: mailTo forKey: @"to"];
|
||||
mailTo = [[value stringByUnescapingURL] objectFromJSONString];
|
||||
if (mailTo && [mailTo isKindOfClass: [NSArray class]])
|
||||
{
|
||||
[headers setObject: (NSArray *) mailTo forKey: @"to"];
|
||||
save = YES;
|
||||
}
|
||||
}
|
||||
|
||||
value = [[self request] formValueForKey: @"subject"];
|
||||
if ([value length] > 0)
|
||||
|
|
|
@ -251,7 +251,7 @@
|
|||
|
||||
if ([addresses count] > 0)
|
||||
parameters = [NSString stringWithFormat: @"?mailto=%@",
|
||||
[addresses componentsJoinedByString: @","]];
|
||||
[addresses jsonRepresentation]];
|
||||
}
|
||||
}
|
||||
else if ([[request formValues] objectForKey: @"mailto"])
|
||||
|
|
|
@ -109,17 +109,15 @@ DIV#filtersListWrapper
|
|||
top: 174px;
|
||||
left: 2em; }
|
||||
|
||||
DIV#filtersListWrapper TD,
|
||||
DIV.bottomToolbar
|
||||
{ -khtml-user-select: none;
|
||||
-moz-user-select: none; }
|
||||
|
||||
TABLE#filtersList
|
||||
{ width: 100%;
|
||||
cursor: default; }
|
||||
|
||||
TR.filterListRow
|
||||
{ background: #ccddec;
|
||||
cursor: pointer; }
|
||||
|
||||
TD.filterListCell
|
||||
{ -moz-user-select: none; }
|
||||
|
||||
TH#activeTableHeader
|
||||
{ width: 50px;
|
||||
text-align: center; }
|
||||
|
|
|
@ -364,6 +364,8 @@ function onFilterMoveDown(event) {
|
|||
function onFilterEdit(event) {
|
||||
_editFilter(this.rowIndex - 1);
|
||||
event.stop();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function copyFilter(originalFilter) {
|
||||
|
|
|
@ -535,9 +535,6 @@ DIV.dTreeNode SPAN._dragOver
|
|||
color: #fff;
|
||||
}
|
||||
|
||||
INPUT.checkBox
|
||||
{ vertical-align: middle; }
|
||||
|
||||
/* resizable columns */
|
||||
|
||||
TABLE TD.resize-handle-active,
|
||||
|
@ -814,9 +811,7 @@ SPAN.caption
|
|||
|
||||
DIV.tabsContainer
|
||||
{ overflow: hidden;
|
||||
padding: 0px 5px;
|
||||
-moz-user-select: none;
|
||||
-khtml-user-select: none; }
|
||||
padding: 0px 5px; }
|
||||
|
||||
DIV.tabsContainer > DIV.scrollToolbar
|
||||
{ position: absolute;
|
||||
|
|
|
@ -84,6 +84,16 @@ DIV#editorTabs TABLE.frame INPUT.textField
|
|||
INPUT.textField._invalid, INPUT.comboBoxField._invalid
|
||||
{ background: #f00 !important; }
|
||||
|
||||
/* SchedulerUI */
|
||||
|
||||
DIV.eventInside.tentative,
|
||||
DIV.eventInside.needs-action
|
||||
{ filter: alpha(opacity=70); }
|
||||
|
||||
DIV.eventInside.delegated,
|
||||
DIV.eventInside.declined
|
||||
{ filter: alpha(opacity=40); }
|
||||
|
||||
/* UIxAppointmentEditor */
|
||||
|
||||
DIV#attendeesMenu LI.separator
|
||||
|
|
|
@ -75,7 +75,7 @@ case "$1" in
|
|||
;;
|
||||
stop)
|
||||
log_daemon_msg "Stopping $DESC" "$NAME"
|
||||
start-stop-daemon --stop --pidfile $PIDFILE --retry=TERM/20/KILL/5
|
||||
start-stop-daemon --stop --pidfile $PIDFILE --retry=TERM/20/KILL/5 --oknodo
|
||||
log_end_msg 0
|
||||
;;
|
||||
restart|force-reload)
|
||||
|
|
Loading…
Reference in New Issue