Monotone-Parent: 76b80b70d982a6797653b57df9258fed33df4bd9

Monotone-Revision: 43873f327e4f2327b78f3b1c2f2c079cbe5f76d0

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2007-10-26T15:35:51
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2007-10-26 15:35:51 +00:00
parent 941605d08f
commit 116df618ef
9 changed files with 116 additions and 14 deletions

View File

@@ -1,5 +1,15 @@
2007-10-26 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* UI/PreferencesUI/UIxPreferences.m ([UIxPreferences -messageCheckList])
([UIxPreferences -itemMessageCheckText])
([UIxPreferences -userMessageCheck])
([UIxPreferences -setUserMessageCheck:newMessageCheck]): new
methods for handling the retrieval of new messages automatically.
* SoObjects/SOGo/SOGoUser.m ([SOGoUser -messageCheck]): new method
that returns the interval of time between automatic message
retrievals.
* UI/MailerUI/UIxMailListView.m ([UIxMailListView
-defaultAction]): now expunges the last folder marked for expunge.

View File

@@ -112,6 +112,7 @@ extern NSString *SOGoWeekStartFirstFullWeek;
- (NSArray *) allIdentities;
- (NSDictionary *) primaryIdentity;
- (NSString *) messageForwarding;
- (NSString *) messageCheck;
/* folders */

View File

@@ -499,6 +499,18 @@ NSString *SOGoWeekStartFirstFullWeek = @"FirstFullWeek";
return messageForwarding;
}
- (NSString *) messageCheck
{
NSString *messageCheck;
messageCheck
= [[self userDefaults] stringForKey: @"MessageCheck"];
if (![messageCheck length])
messageCheck = @"manually";
return messageCheck;
}
/* folders */
// TODO: those methods should check whether the traversal stack in the context

View File

@@ -68,6 +68,16 @@
"reminderTime_4800" = "2 days";
/* Mailer */
"Check for new mail:" = "Check for new mail:";
"messagecheck_manually" = "Manually";
"messagecheck_every_minute" = "Every minute";
"messagecheck_every_2_minutes" = "Every 2 minutes";
"messagecheck_every_5_minutes" = "Every 5 minutes";
"messagecheck_every_10_minutes" = "Every 10 minutes";
"messagecheck_every_20_minutes" = "Every 20 minutes";
"messagecheck_every_30_minutes" = "Every 30 minutes";
"messagecheck_once_per_hour" = "Once per hour";
"Forward messages:" = "Forward messages:";
"messageforward_inline" = "Inline";
"messageforward_attached" = "As Attachment";

View File

@@ -65,6 +65,16 @@
"reminderTime_4800" = "2 journées";
/* Mailer */
"Check for new mail:" = "Vérifier l'arrivée de messages:";
"messagecheck_manually" = "Manuellement";
"messagecheck_every_minute" = "Chaque minute";
"messagecheck_every_2_minutes" = "Toutes les 2 minutes";
"messagecheck_every_5_minutes" = "Toutes les 5 minutes";
"messagecheck_every_10_minutes" = "Toutes les 10 minutes";
"messagecheck_every_20_minutes" = "Toutes les 20 minutes";
"messagecheck_every_30_minutes" = "Toutes les 30 minutes";
"messagecheck_once_per_hour" = "Une fois par heure";
"Forward messages:" = "Transérer les messages :";
"messageforward_inline" = "intégrés";
"messageforward_attached" = "en pièces jointes";

View File

@@ -65,6 +65,16 @@
"reminderTime_4800" = "2 Tage";
/* Mailer */
"Check for new mail:" = "Check for new mail:";
"messagecheck_manually" = "Manually";
"messagecheck_every_minute" = "Every minute";
"messagecheck_every_2_minutes" = "Every 2 minutes";
"messagecheck_every_5_minutes" = "Every 5 minutes";
"messagecheck_every_10_minutes" = "Every 10 minutes";
"messagecheck_every_20_minutes" = "Every 20 minutes";
"messagecheck_every_30_minutes" = "Every 30 minutes";
"messagecheck_once_per_hour" = "Once per hour";
"Forward messages:" = "Nachrichten weiterleiten:";
"messageforward_inline" = "Eingebunden";
"messageforward_attached" = "Als Anhang";

View File

@@ -421,6 +421,30 @@ static BOOL shouldDisplayPasswordChange = NO;
}
/* Mailer */
- (NSArray *) messageCheckList
{
return [NSArray arrayWithObjects: @"manually", @"every_minute",
@"every_2_minutes", @"every_5_minutes", @"every_10_minutes",
@"every_20_minutes", @"every_30_minutes", @"once_per_hour",
nil];
}
- (NSString *) itemMessageCheckText
{
return [self labelForKey:
[NSString stringWithFormat: @"messagecheck_%@", item]];
}
- (NSString *) userMessageCheck
{
return [user messageCheck];
}
- (void) setUserMessageCheck: (NSString *) newMessageCheck
{
[userDefaults setObject: newMessageCheck forKey: @"MessageCheck"];
}
- (NSArray *) messageForwardingList
{
return [NSArray arrayWithObjects: @"inline", @"attached", nil];

View File

@@ -25,8 +25,8 @@
</ul>
<div id="generalView" class="tab">
<label><var:string label:value="Current Time Zone :"/>
<var:popup list="timeZonesList" item="item"
string="item" selection="userTimeZone" /></label><br/>
<var:popup list="timeZonesList" item="item"
string="item" selection="userTimeZone" /></label><br/>
<br/>
<div id="dateTimeFormat">
<label><var:string label:value="Short Date Format :"/>
@@ -58,7 +58,7 @@
/></label><br/>
<label><var:string label:value="First week of year :"/>
<var:popup list="firstWeekList" item="item"
string="itemFirstWeekText" selection="userFirstWeek"
string="itemFirstWeekText" selection="userFirstWeek"
/></label><br/>
<br/>
<label><input class="checkBox"
@@ -74,23 +74,25 @@
string="itemReminderTimeText" selection="userReminderTime"/></label>
</div>
<div id="mailOptionsView" class="tab">
<label><var:string label:value="Check for new mail:"/>
<var:popup list="messageCheckList" item="item"
string="itemMessageCheckText" selection="userMessageCheck"/></label><br/>
<label><var:string label:value="Forward messages:"/>
<var:popup list="messageForwardingList" item="item"
string="itemMessageForwardingText" selection="userMessageForwarding"/></label><br/>
<!-- <label><input
const:name="inTheOffice" type="radio" const:value="YES"
var:selection="inTheOffice"/>
<var:string label:value="I'm currently in the office"/></label><br/>
<label><input
const:name="inTheOffice" type="radio" const:value="YES"
var:selection="inTheOffice"/>
<var:string label:value="I'm currently in the office"/></label><br/>
<label><input
const:name="inTheOffice" type="radio" const:value="NO"
var:selection="inTheOffice"/>
<var:string label:value="I'm currently out of the office"/></label><br/>
const:name="inTheOffice" type="radio" const:value="NO"
var:selection="inTheOffice"/>
<var:string label:value="I'm currently out of the office"/></label><br/>
<br/>
<div id="outOfOfficeMessage">
<label><var:string label:value="AutoReply only once to each sender with the following text :"/><br/>
<textarea const:name="autoReplyText" var:value="autoReplyText"/>
</label>
</div>
<label><var:string label:value="AutoReply only once to each sender with the following text :"/><br/>
<textarea const:name="autoReplyText" var:value="autoReplyText"/>
</label> -->
</div>
<var:if condition="shouldDisplayPasswordChange">
<div id="passwordView" class="tab">

View File

@@ -18,6 +18,8 @@ var pageContent;
var deleteMessageRequestCount = 0;
var messageCheckTimer;
/* mail list */
function openMessageWindow(msguid, url) {
@@ -1106,9 +1108,30 @@ function initMailer(event) {
if (!document.body.hasClassName("popup")) {
// initDnd();
initMailboxTree();
initMessageCheckTimer();
}
}
function initMessageCheckTimer() {
var messageCheck = userDefaults["MessageCheck"];
if (messageCheck && messageCheck != "manually") {
var interval;
if (messageCheck == "once_per_hour")
interval = 3600;
else if (messageCheck == "every_minute")
interval = 60;
else {
interval = parseInt(messageCheck.substr(6)) * 60;
}
messageCheckTimer = window.setInterval(onMessageCheckCallback,
interval * 1000);
}
}
function onMessageCheckCallback(event) {
refreshMailbox();
}
function initMailboxTree() {
mailboxTree = new dTree("mailboxTree");
mailboxTree.config.folderLinks = true;