diff --git a/ChangeLog b/ChangeLog index a11bb4f30..ca2baad7c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,19 @@ +2010-08-31 Wolfgang Sourdeau + + * UI/WebServerResources/UIxMailEditor.js + (onMenuCheckReturnReceipt): new function. + (getMenus): added entries for initializing the new "Options" menu + as well as the "Priority" menu. + + * UI/MailerUI/UIxMailEditor.m (-setReceipt, -receipt): new + accessors for the "receipt" hidden input field, meant to interract + the the "return receipt" entry in the "Options" menu. + (-setReplyTo, -replyTo): removed obsolete methods. + + * SoObjects/Mailer/SOGoDraftObject.m (-setHeaders:) + (-mimeHeaderMapWithHeaders:excluding:): added handling for the + "Disposition-Notification-To" header. + 2010-08-30 Wolfgang Sourdeau * Tools/SOGoToolRemoveDoubles.m, UI/MailerUI/UIxMailFormatter.m: diff --git a/SoObjects/Mailer/SOGoDraftObject.m b/SoObjects/Mailer/SOGoDraftObject.m index 45773d087..254733493 100644 --- a/SoObjects/Mailer/SOGoDraftObject.m +++ b/SoObjects/Mailer/SOGoDraftObject.m @@ -186,7 +186,7 @@ static NSString *userAgent = nil; { id headerValue; unsigned int count; - NSString *messageID, *priority; + NSString *messageID, *priority, *pureSender; for (count = 0; count < 8; count++) { @@ -206,7 +206,6 @@ static NSString *userAgent = nil; } priority = [newHeaders objectForKey: @"priority"]; - if (!priority || [priority isEqualToString: @"NORMAL"]) { [headers removeObjectForKey: @"X-Priority"]; @@ -227,6 +226,15 @@ static NSString *userAgent = nil; { [headers setObject: @"5 (Lowest)" forKey: @"X-Priority"]; } + + if ([[newHeaders objectForKey: @"receipt"] isEqualToString: @"true"]) + { + pureSender = [[newHeaders objectForKey: @"from"] pureEMailAddress]; + if (pureSender) + [headers setObject: pureSender forKey: @"Disposition-Notification-To"]; + } + else + [headers removeObjectForKey: @"Disposition-Notification-To"]; } - (NSDictionary *) headers @@ -446,7 +454,6 @@ static NSString *userAgent = nil; while ((currentAddress = [addresses nextObject])) if ([currentAddress email]) [_ma addObject: [currentAddress email]]; - } - (void) _addRecipients: (NSArray *) recipients @@ -1328,6 +1335,9 @@ static NSString *userAgent = nil; if ([(s = [headers objectForKey: @"X-Priority"]) length] > 0) [map setObject: s forKey: @"X-Priority"]; + if ([(s = [headers objectForKey: @"Disposition-Notification-To"]) length] > 0) + [map setObject: s + forKey: @"Disposition-Notification-To"]; [self _addHeaders: _headers toHeaderMap: map]; diff --git a/UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings b/UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings index ac9de99c3..c798d8eed 100644 --- a/UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings +++ b/UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Contatos"; "Attach" = "Anexo"; "Save" = "Salvar"; -"Priority" = "Prioridade"; +"Options" = "Options"; "Size" = "Size"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Editar Rascunho..."; "Load Images" = "Carregar Imagens"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Prioridade"; "highest" = "Muito Alta"; "high" = "Alta"; "normal" = "Normal"; diff --git a/UI/MailerUI/Czech.lproj/Localizable.strings b/UI/MailerUI/Czech.lproj/Localizable.strings index 6732c4285..be933a78b 100644 --- a/UI/MailerUI/Czech.lproj/Localizable.strings +++ b/UI/MailerUI/Czech.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Kontakty"; "Attach" = "Přiložit"; "Save" = "Uložit"; -"Priority" = "Priorita"; +"Options" = "Options"; "Size" = "Velikost"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Upravit koncept..."; "Load Images" = "Nahrát obrázky"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Priorita"; "highest" = "Nejvyšší"; "high" = "Vysoká"; "normal" = "Normální"; diff --git a/UI/MailerUI/Dutch.lproj/Localizable.strings b/UI/MailerUI/Dutch.lproj/Localizable.strings index 25f1817a0..067336106 100644 --- a/UI/MailerUI/Dutch.lproj/Localizable.strings +++ b/UI/MailerUI/Dutch.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Adresboek"; "Attach" = "Bijlage"; "Save" = "Opslaan"; -"Priority" = "Prioriteit"; +"Options" = "Options"; "Size" = "Size"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Concept aanpassen..."; "Load Images" = "Afbeeldingen laden"; +"Return Receipt" = "Ontvangstbevestiging"; + +"Priority" = "Prioriteit"; "highest" = "Hoogste"; "high" = "Hoog"; "normal" = "Normaal"; diff --git a/UI/MailerUI/English.lproj/Localizable.strings b/UI/MailerUI/English.lproj/Localizable.strings index 2f41dcc15..19e1fba1a 100644 --- a/UI/MailerUI/English.lproj/Localizable.strings +++ b/UI/MailerUI/English.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Contacts"; "Attach" = "Attach"; "Save" = "Save"; -"Priority" = "Priority"; +"Options" = "Options"; "Size" = "Size"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Edit Draft..."; "Load Images" = "Load Images"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Priority"; "highest" = "Highest"; "high" = "High"; "normal" = "Normal"; diff --git a/UI/MailerUI/French.lproj/Localizable.strings b/UI/MailerUI/French.lproj/Localizable.strings index fa5d3d137..4bfaa91e8 100644 --- a/UI/MailerUI/French.lproj/Localizable.strings +++ b/UI/MailerUI/French.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Contacts"; "Attach" = "Joindre"; "Save" = "Enregistrer"; -"Priority" = "Priorité"; +"Options" = "Options"; "Size" = "Taille"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Modifier le brouillon..."; "Load Images" = "Télécharger les images"; +"Return Receipt" = "Accusé de réception"; + +"Priority" = "Priorité"; "highest" = "Maximale"; "high" = "Haute"; "normal" = "Normale"; diff --git a/UI/MailerUI/German.lproj/Localizable.strings b/UI/MailerUI/German.lproj/Localizable.strings index 1101be331..f6426d63e 100644 --- a/UI/MailerUI/German.lproj/Localizable.strings +++ b/UI/MailerUI/German.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Kontakte"; "Attach" = "Anhang"; "Save" = "Speichern"; -"Priority" = "Priorität"; +"Options" = "Options"; "Size" = "Größe"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Entwurf bearbeiten..."; "Load Images" = "Bilder laden"; +"Return Receipt" = "Empfangsbestätigung"; + +"Priority" = "Priorität"; "highest" = "Sehr hoch"; "high" = "Hoch"; "normal" = "Normal"; diff --git a/UI/MailerUI/Hungarian.lproj/Localizable.strings b/UI/MailerUI/Hungarian.lproj/Localizable.strings index 2fabea2b6..f4ef0db5a 100644 --- a/UI/MailerUI/Hungarian.lproj/Localizable.strings +++ b/UI/MailerUI/Hungarian.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Kapcsolatok"; "Attach" = "Melléklet"; "Save" = "Mentés"; -"Priority" = "Sürgősség"; +"Options" = "Options"; "Size" = "Méret"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Piszkozat szerkesztése..."; "Load Images" = "Képek betöltése"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Sürgősség"; "highest" = "nagyon sürgős"; "high" = "sürgős"; "normal" = "átlagos"; diff --git a/UI/MailerUI/Italian.lproj/Localizable.strings b/UI/MailerUI/Italian.lproj/Localizable.strings index 8eb0e648c..5d0437224 100644 --- a/UI/MailerUI/Italian.lproj/Localizable.strings +++ b/UI/MailerUI/Italian.lproj/Localizable.strings @@ -21,7 +21,7 @@ "Contacts" = "Contatti"; "Attach" = "Allegato"; "Save" = "Salva"; -"Priority" = "Priorità"; +"Options" = "Options"; "Size" = "Size"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Modifica bozza..."; "Load Images" = "Carica Immagini"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Priorità"; "highest" = "Molto alta"; "high" = "Alta"; "normal" = "Normale"; diff --git a/UI/MailerUI/Polish.lproj/Localizable.strings b/UI/MailerUI/Polish.lproj/Localizable.strings index 8dd760398..2019e5334 100644 --- a/UI/MailerUI/Polish.lproj/Localizable.strings +++ b/UI/MailerUI/Polish.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Kontakty"; "Attach" = "Załącz"; "Save" = "Zapisz"; -"Priority" = "Priorytet"; +"Options" = "Options"; "Size" = "Rozmiar"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Edytuj szkic..."; "Load Images" = "Załaduj obrazki"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Priorytet"; "highest" = "Najwyższy"; "high" = "Wysoki"; "normal" = "Normalny"; diff --git a/UI/MailerUI/Russian.lproj/Localizable.strings b/UI/MailerUI/Russian.lproj/Localizable.strings index 3e9739d99..11bb418f0 100644 --- a/UI/MailerUI/Russian.lproj/Localizable.strings +++ b/UI/MailerUI/Russian.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Адресная книга"; "Attach" = "Вложить"; "Save" = "Сохранить"; -"Priority" = "Важность"; +"Options" = "Options"; "Size" = "Size"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Редактировать черновик..."; "Load Images" = "Загрузить изображения"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Важность"; "highest" = "Самый высокий"; "high" = "Высокий"; "normal" = "Обычный"; diff --git a/UI/MailerUI/Spanish.lproj/Localizable.strings b/UI/MailerUI/Spanish.lproj/Localizable.strings index c83a033a9..dfbcfc901 100644 --- a/UI/MailerUI/Spanish.lproj/Localizable.strings +++ b/UI/MailerUI/Spanish.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Contactos"; "Attach" = "Adjuntar"; "Save" = "Guardar"; -"Priority" = "Priority"; +"Options" = "Options"; "Size" = "Size"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Modificar borrador..."; "Load Images" = "Load Images"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Priority"; "highest" = "Highest"; "high" = "High"; "normal" = "Normal"; diff --git a/UI/MailerUI/Swedish.lproj/Localizable.strings b/UI/MailerUI/Swedish.lproj/Localizable.strings index c193721a1..d337d07d2 100644 --- a/UI/MailerUI/Swedish.lproj/Localizable.strings +++ b/UI/MailerUI/Swedish.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Kontakter"; "Attach" = "Bifoga"; "Save" = "Spara"; -"Priority" = "Prioritet"; +"Options" = "Options"; "Size" = "Storlek"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Redigera utkast..."; "Load Images" = "Ladda bilder"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Prioritet"; "highest" = "Högst"; "high" = "Hög"; "normal" = "Normal"; diff --git a/UI/MailerUI/Toolbars/SOGoDraftObject.toolbar b/UI/MailerUI/Toolbars/SOGoDraftObject.toolbar index e9bdfd5bf..9a677f406 100644 --- a/UI/MailerUI/Toolbars/SOGoDraftObject.toolbar +++ b/UI/MailerUI/Toolbars/SOGoDraftObject.toolbar @@ -6,7 +6,9 @@ image = "tb-compose-send-flat-24x24.png"; cssClass = "tbicon_send"; label = "Send"; - tooltip = "Send this message now"; }, + tooltip = "Send this message now"; } + ), + ( { link = "#"; onclick = "return onContactAdd(null);"; image = "tb-compose-contacts-flat-24x24.png"; @@ -27,10 +29,11 @@ cssClass = "tbicon_save"; label = "Save"; tooltip = "Save this message"; }, - { link = "#"; + { link = "#"; hasMenu = YES; - label = "Priority"; - onclick = "return onSelectPriority(event);"; - image = "priority.png"; }, + onclick = "return onSelectOptions(event);"; + image = "options.png"; + cssClass = "tbicon_options"; + label = "Options"; } ) ) diff --git a/UI/MailerUI/UIxMailEditor.m b/UI/MailerUI/UIxMailEditor.m index 347634452..6821c34da 100644 --- a/UI/MailerUI/UIxMailEditor.m +++ b/UI/MailerUI/UIxMailEditor.m @@ -78,6 +78,7 @@ SOGoMailFolder *sentFolder; NSString *priority; + NSString *receipt; id item; /* these are for the inline attachment list */ @@ -97,8 +98,8 @@ static NSArray *infoKeys = nil; if (!infoKeys) infoKeys = [[NSArray alloc] initWithObjects: @"subject", @"to", @"cc", @"bcc", - @"from", @"replyTo", @"inReplyTo", - @"priority", nil]; + @"from", @"inReplyTo", + @"priority", @"receipt", nil]; } - (id) init @@ -106,6 +107,7 @@ static NSArray *infoKeys = nil; if ((self = [super init])) { priority = @"NORMAL"; + receipt = nil; } return self; @@ -115,6 +117,7 @@ static NSArray *infoKeys = nil; { [item release]; [priority release]; + [receipt release]; [sentFolder release]; [fromEMails release]; [from release]; @@ -158,7 +161,7 @@ static NSArray *infoKeys = nil; - (void) setPriority: (NSString *) _priority { - ASSIGN(priority, _priority); + ASSIGN (priority, _priority); } - (NSString *) priority @@ -166,6 +169,16 @@ static NSArray *infoKeys = nil; return priority; } +- (void) setReceipt: (NSString *) newReceipt +{ + ASSIGN (receipt, newReceipt); +} + +- (NSString *) receipt +{ + return receipt; +} + - (NSString *) itemPriorityText { return [self labelForKey: [NSString stringWithFormat: @"%@", [item lowercaseString]]]; @@ -221,16 +234,6 @@ static NSArray *infoKeys = nil; return from; } -// - (void) setReplyTo: (NSString *) ignore -// { -// } - -// - (NSString *) replyTo -// { -// /* we are here for future extensibility */ -// return @""; -// } - - (void) setSubject: (NSString *) newSubject { ASSIGN (subject, newSubject); diff --git a/UI/MailerUI/Ukrainian.lproj/Localizable.strings b/UI/MailerUI/Ukrainian.lproj/Localizable.strings index 18795da8a..7ff93d679 100644 --- a/UI/MailerUI/Ukrainian.lproj/Localizable.strings +++ b/UI/MailerUI/Ukrainian.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Адреса"; "Attach" = "Вкладення"; "Save" = "Зберегти"; -"Priority" = "Важливість"; +"Options" = "Options"; "Size" = "Розмір"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Редагувати чернетку..."; "Load Images" = "Завантажити зображення"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Важливість"; "highest" = "Найвища"; "high" = "Висока"; "normal" = "Звичайна"; diff --git a/UI/MailerUI/Welsh.lproj/Localizable.strings b/UI/MailerUI/Welsh.lproj/Localizable.strings index 2ffb7f51b..900781413 100644 --- a/UI/MailerUI/Welsh.lproj/Localizable.strings +++ b/UI/MailerUI/Welsh.lproj/Localizable.strings @@ -18,7 +18,7 @@ "Contacts" = "Cysylltiadau"; "Attach" = "Atodi"; "Save" = "Cadw"; -"Priority" = "Blaenoriaeth"; +"Options" = "Options"; "Size" = "Size"; /* Tooltips */ @@ -109,6 +109,9 @@ "Edit Draft..." = "Golygu Drafft..."; "Load Images" = "Llwytho Delweddau"; +"Return Receipt" = "Return Receipt"; + +"Priority" = "Blaenoriaeth"; "highest" = "Uchaf"; "high" = "Uchel"; "normal" = "Normal"; diff --git a/UI/Templates/MailerUI/UIxMailEditor.wox b/UI/Templates/MailerUI/UIxMailEditor.wox index bad3ead4b..3a37c4bb9 100644 --- a/UI/Templates/MailerUI/UIxMailEditor.wox +++ b/UI/Templates/MailerUI/UIxMailEditor.wox @@ -32,7 +32,15 @@ -