See ChangeLog

Monotone-Parent: 03944000f318b9e9a2fdb399e581d287d2e421a7
Monotone-Revision: 8001653b7ad76335a3a051884e3e11e04395f3d8

Monotone-Author: ludovic@Sophos.ca
Monotone-Date: 2010-10-21T20:12:47
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Ludovic Marcotte 2010-10-21 20:12:47 +00:00
parent 5426344d78
commit 9b3cbdae66
19 changed files with 79 additions and 18 deletions

View File

@ -1,3 +1,7 @@
2010-10-21 Ludovic Marcotte <lmarcotte@inverse.ca>
* Changes required for http://sogo.nu/bugs/view.php?id=795
2010-10-19 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/SOGo/SOGoContentObject.m (-davContentLength): fixed a

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Tarefa Confidencial)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Event Invitation: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(enviado por %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}has invited you to %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Event Cancelled: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Tasca confidencial)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Invitació a l'esdeveniment: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(enviada per %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText} us ha invitat a %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText} us ha invitat a %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Esdeveniment suspès: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Skrytý úkol)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Pozvání na událost: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(poslal/a %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}Vás pozval/a na %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}Vás pozval/a na %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Zrušení události: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Vertrouwelijke taak)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Event Invitation: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(sent by %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}has invited you to %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Event Cancelled: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Confidential task)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Event Invitation: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(sent by %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}has invited you to %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Event Cancelled: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Tâche confidentielle)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Invitation à la réunion : \"%{Summary}\"";
"(sent by %{SentBy}) " = "(envoyé par %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}vous a invité à la réunion « %{Summary} ».";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}vous a invité à la réunion « %{Summary} ».\n\nDébut: %{StartDate} à %{StartTime}\nFin: %{EndDate} à %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Réunion annulée : « %{Summary} »";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Vertrauliche Aufgabe)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Termin Einladung: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(gesendet von %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}hat Sie eingeladen zu %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}hat Sie eingeladen zu %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Termin abgesagt: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Bizalmas feladat)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Event Invitation: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(%{SentBy} által elküldve) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}has invited you to %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Event Cancelled: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Attività confidenziale)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Invito Evento: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(inviato da %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}ti ha invitato al %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}ti ha invitato al %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Evento cancellato: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Zadanie poufne)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Zaproszenie na wydarzenie: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(wysłane przez %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}zaprosił cię na %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}zaprosił cię na %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Wydarzenie anulowane: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Confidential task)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Event Invitation: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(послал %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}has invited you to %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Event Cancelled: \"%{Summary}\"";

View File

@ -21,9 +21,11 @@
#import <NGCards/iCalEvent.h>
#import <NGObjWeb/WOContext+SoObjects.h>
#import <SOGo/NSDictionary+Utilities.h>
#import <SOGo/NSObject+Utilities.h>
#import <SOGo/SOGoDateFormatter.h>
#import <SOGo/SOGoUser.h>
#import "iCalPerson+SOGo.h"
#import "SOGoAptMailNotification.h"
@ -33,6 +35,34 @@
@implementation SOGoAptMailInvitation
- (void) setupValues
{
SOGoDateFormatter *dateFormatter;
NSCalendarDate *date;
NSString *description;
[super setupValues];
dateFormatter = [[context activeUser] dateFormatterInContext: context];
date = [self newStartDate];
[values setObject: [dateFormatter shortFormattedDate: date]
forKey: @"StartDate"];
[values setObject: [dateFormatter formattedTime: date]
forKey: @"StartTime"];
date = [self newEndDate];
[values setObject: [dateFormatter shortFormattedDate: date]
forKey: @"EndDate"];
[values setObject: [dateFormatter formattedTime: date]
forKey: @"EndTime"];
description = [[self apt] comment];
[values setObject: (description ? description : @"")
forKey: @"Description"];
}
- (NSString *) getSubject
{
NSString *subjectFormat;
@ -53,7 +83,7 @@
if (!values)
[self setupValues];
bodyFormat = [self labelForKey: @"%{Organizer} %{SentByText}has invited you to %{Summary}."
bodyFormat = [self labelForKey: @"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}"
inContext: context];
return [values keysWithFormat: bodyFormat];

View File

@ -1,6 +1,6 @@
/*
Copyright (C) 2006-2010 Inverse inc.
Copyright (C) 2000-2005 SKYRIX Software AG
Copyright (C) 2006-2009 Inverse inc.
This file is part of OpenGroupware.org.
@ -43,6 +43,8 @@
NSTimeZone *viewTZ;
NSCalendarDate *oldStartDate;
NSCalendarDate *newStartDate;
NSCalendarDate *oldEndDate;
NSCalendarDate *newEndDate;
NSString *organizerName;
NSMutableDictionary *values;
}
@ -61,6 +63,9 @@
- (NSCalendarDate *) oldStartDate;
- (NSCalendarDate *) newStartDate;
- (NSCalendarDate *) oldEndDate;
- (NSCalendarDate *) newEndDate;
- (NSString *) getSubject;
- (NSString *) getBody;

View File

@ -62,6 +62,8 @@
[viewTZ release];
[oldStartDate release];
[newStartDate release];
[oldEndDate release];
[newEndDate release];
[super dealloc];
}
@ -115,6 +117,26 @@
return newStartDate;
}
- (NSCalendarDate *) oldEndDate
{
if (!oldEndDate)
{
ASSIGN (oldEndDate, [[self previousApt] endDate]);
[oldEndDate setTimeZone: viewTZ];
}
return oldEndDate;
}
- (NSCalendarDate *) newEndDate
{
if (!newEndDate)
{
ASSIGN (newEndDate, [[self apt] endDate]);
[newEndDate setTimeZone: viewTZ];
}
return newEndDate;
}
- (NSString *) summary
{
return [apt summary];

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Tarea confidencial)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Event Invitation: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(sent by %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}has invited you to %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Event Cancelled: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Konfidentiell uppgift)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Event Invitation: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(sent by %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}has invited you to %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Event Cancelled: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Конфіденційне завдання)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Запрошення на подію: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(надіслано %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText} запросив вас до %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText} запросив вас до %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Подію скасовано: \"%{Summary}\"";

View File

@ -35,7 +35,7 @@ vtodo_class2 = "(Tasg gyfrinachol)";
/* Invitation */
"Event Invitation: \"%{Summary}\"" = "Event Invitation: \"%{Summary}\"";
"(sent by %{SentBy}) " = "(anfon gan %{SentBy}) ";
"%{Organizer} %{SentByText}has invited you to %{Summary}." = "%{Organizer} %{SentByText}has invited you to %{Summary}.";
"%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}" = "%{Organizer} %{SentByText}has invited you to %{Summary}.\n\nStart: %{StartDate} at %{StartTime}\nEnd: %{EndDate} at %{EndTime}\nDescription: %{Description}";
/* Deletion */
"Event Cancelled: \"%{Summary}\"" = "Event Cancelled: \"%{Summary}\"";