Bug 551919 - imapMsgs.properties should used string based identifiers rather than numbers. r=Neil

This commit is contained in:
Suyash Agarwal 2013-07-11 14:02:18 +01:00
Родитель f01e33f0c0
Коммит a078eac306
15 изменённых файлов: 429 добавлений и 838 удалений

Просмотреть файл

@ -7,410 +7,238 @@
#
# Status - opening folder
## @name IMAP_STATUS_SELECTING_MAILBOX
## @loc None
5000=Opening folder %S…
imapStatusSelectingMailbox=Opening folder %S…
# Status - create folder
## @name IMAP_STATUS_CREATING_MAILBOX
## @loc None
5001=Creating folder…
imapStatusCreatingMailbox=Creating folder…
# Status - deleting a folder
## @name IMAP_STATUS_DELETING_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5002): The "%S" below should not be translated.
# LOCALIZATION NOTE (imapStatusDeletingMailbox): The "%S" below should not be translated.
# Instead, insert "%S" in your translation where you wish to display the name
# of the folder being deleted.
5002=Deleting folder %S…
imapStatusDeletingMailbox=Deleting folder %S…
# Status - renaming mailbox
## @name IMAP_STATUS_RENAMING_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5003): The "%S" below should not be translated.
# LOCALIZATION NOTE (imapStatusRenamingMailbox): The "%S" below should not be translated.
# Instead, insert "%S" in your translation where you wish to display the name
# of the folder being renamed.
5003=Renaming folder %S…
imapStatusRenamingMailbox=Renaming folder %S…
# Status - looking for mailboxes
## @name IMAP_STATUS_LOOKING_FOR_MAILBOX
## @loc None
5004=Looking for folders…
imapStatusLookingForMailbox=Looking for folders…
# Status - subscribing to mailbox
## @name IMAP_STATUS_SUBSCRIBE_TO_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5005): The "%S" below should not be translated.
# LOCALIZATION NOTE (imapStatusSubscribeToMailbox): The "%S" below should not be translated.
# Instead, insert "%S" in your translation where you wish to display the name
# of the folder being subscribed to.
5005=Subscribing to folder %S…
imapStatusSubscribeToMailbox=Subscribing to folder %S…
# Status - unsubscribing from mailbox
## @name IMAP_STATUS_UNSUBSCRIBE_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5005): The "%S" below should not be translated.
# LOCALIZATION NOTE (imapStatusUnsubscribeMailbox): The "%S" below should not be translated.
# Instead, insert "%S" in your translation where you wish to display the name
# of the folder being unsubscribed from.
5006=Unsubscribing from folder %S…
imapStatusUnsubscribeMailbox=Unsubscribing from folder %S…
# Status - searching imap folder
## @name IMAP_STATUS_SEARCH_MAILBOX
## @loc None
5007=Searching folder…
# Status - getting message info
## @name IMAP_STATUS_MSG_INFO
## @loc None
5008=Getting message info…
imapStatusSearchMailbox=Searching folder…
# Status - closing a folder
## @name IMAP_STATUS_CLOSE_MAILBOX
## @loc None
5009=Closing folder…
imapStatusCloseMailbox=Closing folder…
# Status - compacting a folder
## @name IMAP_STATUS_EXPUNGING_MAILBOX
## @loc None
5010=Compacting folder…
imapStatusExpungingMailbox=Compacting folder…
# Status - logging out
## @name IMAP_STATUS_LOGGING_OUT
## @loc None
5011=Logging out…
imapStatusLoggingOut=Logging out…
# Status - checking server capabilities
## @name IMAP_STATUS_CHECK_COMPAT
## @loc None
5012=Checking mail server capabilities…
imapStatusCheckCompat=Checking mail server capabilities…
# Status - logging on
## @name IMAP_STATUS_SENDING_LOGIN
## @loc None
5013=Sending login information…
imapStatusSendingLogin=Sending login information…
# Status - auth logon
## @name IMAP_STATUS_SENDING_AUTH_LOGIN
## @loc None
5014=Sending login information…
imapStatusSendingAuthLogin=Sending login information…
## @name IMAP_DOWNLOADING_MESSAGE
## @loc None
5015=Downloading message…
imapDownloadingMessage=Downloading message…
## @name IMAP_GETTING_ACL_FOR_FOLDER
## @loc None
# LOCALIZATION NOTE (Error 5029): Do not translate the word "ACL" below.
5029=Getting folder ACL…
# LOCALIZATION NOTE (imapGettingACLForFolder): Do not translate the word "ACL" below.
imapGettingACLForFolder=Getting folder ACL…
## @name IMAP_GETTING_SERVER_INFO
## @loc None
5030=Getting Server Configuration Info…
imapGettingServerInfo=Getting Server Configuration Info…
## @name IMAP_GETTING_MAILBOX_INFO
## @loc None
5031=Getting Mailbox Configuration Info…
imapGettingMailboxInfo=Getting Mailbox Configuration Info…
## @name IMAP_EMPTY_MIME_PART
## @loc None
5032=This body part will be downloaded on demand.
imapEmptyMimePart=This body part will be downloaded on demand.
## @name IMAP_RECEIVING_MESSAGE_HEADERS_OF
## @loc None
# LOCALIZATION NOTE (Error 5036): Do not translate the word "%1$S", "%2$lu" or "%3$lu" below.
# LOCALIZATION NOTE (imapReceivingMessageHeaders): Do not translate the word "%1$S", "%2$lu" or "%3$lu" below.
# Place the word %1$S in your translation where the name of the server should appear.
# Place the word %2$lu where the number of the header currently being downloaded should appear.
# Place the word %3$lu where the number of headers should appear.
5036=%S Downloading message header %lu of %lu
imapReceivingMessageHeaders=%S Downloading message header %lu of %lu
## @name IMAP_RECEIVING_MESSAGE_FLAGS_OF
## @loc None
# LOCALIZATION NOTE (Error 5037): Do not translate the word "%1$S", "%2$lu" or "%3$lu" below.
# LOCALIZATION NOTE (imapReceivingMessageFlags): Do not translate the word "%1$S", "%2$lu" or "%3$lu" below.
# Place the word %1$S in your translation where the name of the server should appear.
# Place the word %2$lu where the number of the flag currently being downloaded should appear.
# Place the word %3$lu where the number of flags should appear.
5037=%S Downloading message flag %lu of %lu
imapReceivingMessageFlags=%S Downloading message flag %lu of %lu
## @name IMAP_DELETING_MESSAGES
## @loc None
5038=Deleting messages…
imapDeletingMessages=Deleting messages…
## @name IMAP_DELETING_MESSAGE
## @loc None
5039=Deleting message…
imapDeletingMessage=Deleting message…
## @name IMAP_MOVING_MESSAGES_TO
## @loc None
# LOCALIZATION NOTE (Error 5040): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapMovingMessages): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5040=Moving messages to %S…
imapMovingMessages=Moving messages to %S…
## @name IMAP_MOVING_MESSAGE_TO
## @loc None
# LOCALIZATION NOTE (Error 5041): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapMovingMessage): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5041=Moving message to %S…
imapMovingMessage=Moving message to %S…
## @name IMAP_COPYING_MESSAGES_TO
## @loc None
# LOCALIZATION NOTE (Error 5042): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapCopyingMessages): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5042=Copying messages to %S…
imapCopyingMessages=Copying messages to %S…
## @name IMAP_COPYING_MESSAGE_TO
## @loc None
# LOCALIZATION NOTE (Error 5043): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapCopyingMessage): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5043=Copying message to %S…
imapCopyingMessage=Copying message to %S…
## @name IMAP_FOLDER_RECEIVING_MESSAGE_OF
## @loc None
# LOCALIZATION NOTE (Error 5045): Do not translate the word "%S" or "%lu" below.
# LOCALIZATION NOTE (imapFolderReceivingMessageOf): Do not translate the word "%S" or "%lu" below.
# Place the word %S in your translation where the name of the folder should appear.
# Place the word %lu where the number of headers should appear.
5045=%S - Downloading message %lu of %lu
imapFolderReceivingMessageOf=%S - Downloading message %lu of %lu
## @name IMAP_DISCOVERING_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5046): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapDiscoveringMailbox): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5046=Found folder: %S
imapDiscoveringMailbox=Found folder: %S
## @name IMAP_ENTER_PASSWORD_PROMPT
## @loc None
# LOCALIZATION NOTE (Error 5047): Do not translate the word %S below.
# LOCALIZATION NOTE (imapEnterPasswordPrompt): Do not translate the word %S below.
# Place the word "%S" in your translation where the email address
# or the username should appear
5047=Enter your password for %S:
imapEnterPasswordPrompt=Enter your password for %S:
## @name IMAP_SERVER_NOT_IMAP4
## @loc None
# LOCALIZATION NOTE (Error 5048): Do not translate the word "IMAP4" below.
5048=Mail server %S is not an IMAP4 mail server.
# LOCALIZATION NOTE (imapServerNotImap4): Do not translate the word "IMAP4" below.
imapServerNotImap4=Mail server %S is not an IMAP4 mail server.
## @name IMAP_SERVER_SAID
## @loc None
5049=The current command did not succeed. The mail server responded:
# This is intentionally left blank.
imapDone=
## @name IMAP_DONE
## @loc None
5050=
imapEnterPasswordPromptTitle=Mail Server Password Required
## @name IMAP_ENTER_PASSWORD_PROMPT_TITLE
## @loc None
5051=Mail Server Password Required
imapUnknownHostError=Failed to connect to server %S.
## @name IMAP_UNKNOWN_HOST_ERROR
## @loc None
5052=Failed to connect to server %S.
imapConnectionRefusedError=Could not connect to mail server %S; the connection was refused.
## @name IMAP_IMAP_CONNECTION_REFUSED_ERROR
## @loc None
5053=Could not connect to mail server %S; the connection was refused.
## @name IMAP_NET_TIMEOUT_ERROR
## @loc None
5054=Connection to server %S timed out.
imapNetTimeoutError=Connection to server %S timed out.
# Status - no messages to download
## @name IMAP_NO_NEW_MESSAGES
## @loc None
5056=There are no new messages on the server.
imapNoNewMessages=There are no new messages on the server.
## @name IMAP_DEFAULT_ACCOUNT_NAME
## @loc None
5057=Mail for %S
imapDefaultAccountName=Mail for %S
## @name IMAP_SPECIAL_CHAR
## @loc None
5065= The %c character is reserved on this imap server. Please choose another name.
imapSpecialChar= The %c character is reserved on this imap server. Please choose another name.
## @name IMAP_PERSONAL_SHARED_FOLDER_TYPE_NAME
## @loc None
5066=Personal Folder
imapPersonalSharedFolderTypeName=Personal Folder
## @name IMAP_PUBLIC_FOLDER_TYPE_NAME
## @loc None
5067=Public Folder
imapPublicFolderTypeName=Public Folder
## @name IMAP_OTHER_USERS_FOLDER_TYPE_NAME
## @loc None
5068=Other User's Folder
imapOtherUsersFolderTypeName=Other User's Folder
## @name IMAP_PERSONAL_FOLDER_TYPE_DESCRIPTION
## @loc None
5069=This is a personal mail folder. It is not shared.
imapPersonalFolderTypeDescription=This is a personal mail folder. It is not shared.
## @name IMAP_PERSONAL_SHARED_FOLDER_TYPE_DESCRIPTION
## @loc None
5070=This is a personal mail folder. It has been shared.
imapPersonalSharedFolderTypeDescription=This is a personal mail folder. It has been shared.
## @name IMAP_PUBLIC_FOLDER_TYPE_DESCRIPTION
## @loc None
5071=This is a public folder.
imapPublicFolderTypeDescription=This is a public folder.
## @name IMAP_OTHER_USERS_FOLDER_TYPE_DESCRIPTION
## @loc None
5072=This is a mail folder shared by the user '%S'.
imapOtherUsersFolderTypeDescription=This is a mail folder shared by the user '%S'.
## @name IMAP_ACL_FULL_RIGHTS
## @loc None
5073=Full Control
imapAclFullRights=Full Control
## @name IMAP_ACL_LOOKUP_RIGHT
## @loc None
5074=Lookup
imapAclLookupRight=Lookup
## @name IMAP_ACL_READ_RIGHT
## @loc None
5075=Read
imapAclReadRight=Read
## @name IMAP_ACL_SEEN_RIGHT
## @loc None
5076=Set Read/Unread State
imapAclSeenRight=Set Read/Unread State
## @name IMAP_ACL_WRITE_RIGHT
## @loc None
5077=Write
imapAclWriteRight=Write
## @name IMAP_ACL_INSERT_RIGHT
## @loc None
5078=Insert (Copy Into)
imapAclInsertRight=Insert (Copy Into)
## @name IMAP_ACL_POST_RIGHT
## @loc None
5079=Post
imapAclPostRight=Post
## @name IMAP_ACL_CREATE_RIGHT
## @loc None
5080=Create Subfolder
imapAclCreateRight=Create Subfolder
## @name IMAP_ACL_DELETE_RIGHT
## @loc None
5081=Delete Messages
imapAclDeleteRight=Delete Messages
## @name IMAP_ACL_ADMINISTER_RIGHT
## @loc None
5082=Administer Folder
imapAclAdministerRight=Administer Folder
## @name IMAP_SERVER_DOESNT_SUPPORT_ACL
## @loc None
5084=This server does not support shared folders.
imapServerDoesntSupportAcl=This server does not support shared folders.
## @name IMAP_ACL_EXPUNGE_RIGHT
## @loc None
5085=Expunge
imapAclExpungeRight=Expunge
## @name IMAP_SERVER_DISCONNECTED
## @loc None
5090= Server %S has disconnected. The server may have gone down or there may be a network problem.
imapServerDisconnected= Server %S has disconnected. The server may have gone down or there may be a network problem.
# LOCALIZATION NOTE (autoSubscribeText): %1$S is the imap folder.
5092=Would you like to subscribe to %1$S?
imapSubscribePrompt=Would you like to subscribe to %1$S?
## @name IMAP_SERVER_DROPPED_CONNECTION
## @loc None
5093=Unable to connect to your IMAP server. You may have exceeded the maximum number \
imapServerDroppedConnection=Unable to connect to your IMAP server. You may have exceeded the maximum number \
of connections to this server. If so, use the Advanced IMAP Server Settings dialog to \
reduce the number of cached connections.
## @name IMAP_QUOTA_STATUS_FOLDERNOTOPEN
## @loc None
5095=Quota information is not available because the folder is not open.
imapQuotaStatusFolderNotOpen=Quota information is not available because the folder is not open.
## @name IMAP_QUOTA_STATUS_NOTSUPPORTED
## @loc None
5096=This server does not support quotas.
imapQuotaStatusNotSupported=This server does not support quotas.
## @name IMAP_QUOTA_STATUS_NOQUOTA
## @loc None
5097=There are no storage quotas on this folder.
imapQuotaStatusNoQuota=There are no storage quotas on this folder.
# Out of memory
## @name IMAP_OUT_OF_MEMORY
## @loc None
5100=Application is out of memory.
imapOutOfMemory=Application is out of memory.
## @name IMAP_COPYING_MESSAGE_OF
## @loc None
# LOCALIZATION NOTE (Error 5103): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapCopyingMessageOf): Do not translate the word "%S" below.
# Place the word %3$S in your translation where the name of the destination folder should appear.
# Place the word %1$S where the currently copying message should appear.
# Place the word %2$S where the total number of messages should appear.
5103=Copying Message %1$S of %2$S to %3$S
imapCopyingMessageOf=Copying Message %1$S of %2$S to %3$S
## @name IMAP_MOVE_FOLDER_TO_TRASH
## @loc None
# LOCALIZATION NOTE (5105): Do not translate the word %S below.
# LOCALIZATION NOTE (imapMoveFolderToTrash): Do not translate the word %S below.
# "%S" is the the name of the folder.
5105=Are you sure you want to delete the folder '%S'?
imapMoveFolderToTrash=Are you sure you want to delete the folder '%S'?
## @name IMAP_DELETE_NO_TRASH
## @loc None
# LOCALIZATION NOTE (5106): Do not translate the word %S below.
# LOCALIZATION NOTE (imapDeleteNoTrash): Do not translate the word %S below.
# "%S" is the the name of the folder.
5106=Deleting this folder is not undoable and will delete all of the messages it contains, and its sub-folders. Are you sure you still want to delete the folder '%S'?
imapDeleteNoTrash=Deleting this folder is not undoable and will delete all of the messages it contains, and its sub-folders. Are you sure you still want to delete the folder '%S'?
## @name IMAP_DELETE_FOLDER_DIALOG_TITLE
## @loc None
5107=Delete Folder
imapDeleteFolderDialogTitle=Delete Folder
## @name IMAP_DELETE_FOLDER_BUTTON_LABEL
## @loc None
5108=&Delete Folder
imapDeleteFolderButtonLabel=&Delete Folder
## @name IMAP_AUTH_CHANGE_ENCRYPT_TO_PLAIN_SSL
## @loc None
# LOCALIZATION NOTE (5110): %S is the server hostname
5110=The IMAP server %S does not seem to support encrypted passwords. If you just set up this account, please try changing to 'Normal password' as the 'Authentication method' in the 'Account Settings | Server settings'. If it used to work and now suddenly fails, please contact your email administrator or provider.
# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainSSL): %S is the server hostname
imapAuthChangeEncryptToPlainSSL=The IMAP server %S does not seem to support encrypted passwords. If you just set up this account, please try changing to 'Normal password' as the 'Authentication method' in the 'Account Settings | Server settings'. If it used to work and now suddenly fails, please contact your email administrator or provider.
## @name IMAP_AUTH_CHANGE_PLAIN_TO_ENCRYPT
## @loc None
# LOCALIZATION NOTE (5111): %S is the server hostname
5111=The IMAP server %S does not allow plaintext passwords. Please try changing to 'Encrypted password' as the 'Authentication method' in the 'Account Settings | Server settings'.
# LOCALIZATION NOTE (imapAuthChangePlainToEncrypt): %S is the server hostname
imapAuthChangePlainToEncrypt=The IMAP server %S does not allow plaintext passwords. Please try changing to 'Encrypted password' as the 'Authentication method' in the 'Account Settings | Server settings'.
## @name IMAP_AUTH_CHANGE_ENCRYPT_TO_PLAIN_NO_SSL
## @loc None
# LOCALIZATION NOTE (5112): %S is the server hostname
5112=The IMAP server %S does not seem to support encrypted passwords. If you just set up the account, please try changing to 'Password, transmitted insecurely' as the 'Authentication method' in the 'Account Settings | Server settings'. If it used to work and now suddenly fails, this is a common scenario how someone could steal your password.
# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainNoSSL): %S is the server hostname
imapAuthChangeEncryptToPlainNoSSL=The IMAP server %S does not seem to support encrypted passwords. If you just set up the account, please try changing to 'Password, transmitted insecurely' as the 'Authentication method' in the 'Account Settings | Server settings'. If it used to work and now suddenly fails, this is a common scenario how someone could steal your password.
## @name IMAP_AUTH_MECH_NOT_SUPPORTED
## @loc None
# LOCALIZATION NOTE (5113): %S is the server hostname
5113=The IMAP server %S does not support the selected authentication method. Please change the 'Authentication method' in the 'Account Settings | Server settings'.
# LOCALIZATION NOTE (imapAuthMechNotSupported): %S is the server hostname
imapAuthMechNotSupported=The IMAP server %S does not support the selected authentication method. Please change the 'Authentication method' in the 'Account Settings | Server settings'.
## @name IMAP_AUTH_MECH_FAILED
## @loc None
# LOCALIZATION NOTE (5114): %S is the server hostname
5114=All login mechanisms for %S failed. Please check the password or change the 'Authentication method' in the 'Account Settings | Server settings'.
# LOCALIZATION NOTE (imapAuthGssapiFailed): %S is the server hostname
imapAuthGssapiFailed=The Kerberos/GSSAPI ticket was not accepted by the IMAP server %S. Please check that you are logged in to the Kerberos/GSSAPI realm.
## @name IMAP_AUTH_GSSAPI_FAILED
## @loc None
# LOCALIZATION NOTE (5115): %S is the server hostname
5115=The Kerberos/GSSAPI ticket was not accepted by the IMAP server %S. Please check that you are logged in to the Kerberos/GSSAPI realm.
## @name IMAP_LOGIN_DISABLED
## @loc None
# LOCALIZATION NOTE (5116): %S is the account name
5116=You cannot log in to %S because the server doesn't allow plaintext authentication without STARTTLS or SSL/TLS. Try enabling connection security or secure authentication in the account settings.
## @name IMAP_SERVER_COMMAND_FAILED
## @loc None
# LOCALIZATION NOTE (5117):
# LOCALIZATION NOTE (imapServerCommandFailed):
# Place the word %1$S in your translation where the name of the account name should appear.
# Place the word %2$S in your translation where the server response should appear.
5117=The current command did not succeed. The mail server for account %1$S responded: %2$S
imapServerCommandFailed=The current command did not succeed. The mail server for account %1$S responded: %2$S
## @name IMAP_FOLDER_COMMAND_FAILED
## @loc None
# LOCALIZATION NOTE (5118): Do not translate the word %S below.
# LOCALIZATION NOTE (imapFolderCommandFailed): Do not translate the word %S below.
# Place the word %1$S in your translation where the name of the account should appear.
# Place the word %2$S in your translation where the name of the folder should appear.
# Place the word %3$S in your translation where the server response should appear.
5118=The current operation on '%2$S' did not succeed. The mail server for account %1$S responded: %3$S
imapFolderCommandFailed=The current operation on '%2$S' did not succeed. The mail server for account %1$S responded: %3$S
## @name IMAP_SERVER_ALERT
## @loc None
# LOCALIZATION NOTE (5119):
# LOCALIZATION NOTE (imapServerAlert):
# Place the word %1$S in your translation where the name of the account should appear.
# Place the word %2$S in your translation where the alert from the server should appear.
5119=Alert from account %1$S: %2$S
imapServerAlert=Alert from account %1$S: %2$S

Просмотреть файл

@ -91,7 +91,7 @@ interface nsIImapMailFolderSink : nsISupports {
void headerFetchCompleted(in nsIImapProtocol aProtocol);
void setBiffStateAndUpdate(in long biffState);
void progressStatus(in nsIImapProtocol aProtocol, in unsigned long aMsgId, in wstring extraInfo);
void progressStatusString(in nsIImapProtocol aProtocol, in string aMsgId, in wstring extraInfo);
void percentProgress(in nsIImapProtocol aProtocol, in wstring aMessage,
in long long aCurrentProgress, in long long aMaxProgressProgressInfo);

Просмотреть файл

@ -16,7 +16,7 @@ interface nsIImapMockChannel;
* nsIImapServerSink is designed to be used as a proxy to the application's UI
* thread from the running IMAP threads.
*/
[scriptable, uuid(33184087-eadc-4b5d-aad6-14cf6e6a43af)]
[scriptable, uuid(2160c641-e4fa-4bbc-ab8b-d9ba45069027)]
interface nsIImapServerSink : nsISupports {
/**
* Check if the given folder path is a possible IMAP mailbox.
@ -74,8 +74,7 @@ interface nsIImapServerSink : nsISupports {
* mock channel.
*/
void abortQueuedUrls();
AString getImapStringByID(in long msgId);
AString getImapStringByName(in string msgName);
/**
* Alerts the user that the login to the IMAP server failed. Asks whether the
* connection should: retry, cancel, or request a new password.
@ -99,11 +98,10 @@ interface nsIImapServerSink : nsISupports {
* Alerts the user with a localized string. It will attempt to fill in
* the hostname into the string if necessary.
*
* @param aMsgId The id of the string to present to the user..
* @param aMsgName The id of the string to present to the user..
* @param aUrl The running url.
*/
void fEAlertWithID(in long aMsgId, in nsIMsgMailNewsUrl aUrl);
void fEAlertWithName(in string aMsgName, in nsIMsgMailNewsUrl aUrl);
/**
* Takes a response from the server and prepends it with IMAP_SERVER_SAID
*

Просмотреть файл

@ -515,8 +515,9 @@ int32_t nsIMAPBodypart::GenerateEmptyFilling(nsIMAPBodyShell *aShell, bool strea
NS_ENSURE_SUCCESS(rv, 0);
nsAutoString emptyString;
rv = bundle->GetStringFromID(IMAP_EMPTY_MIME_PART,
getter_Copies(emptyString));
rv = bundle->GetStringFromName(
NS_LITERAL_STRING("imapEmptyMimePart").get(),
getter_Copies(emptyString));
if (NS_SUCCEEDED(rv) && !emptyString.IsEmpty())
{
if (stream)

Просмотреть файл

@ -177,7 +177,7 @@ nsImapIncomingServer::GetConstructedPrettyName(nsAString& retval)
}
}
return GetFormattedStringFromID(emailAddress, IMAP_DEFAULT_ACCOUNT_NAME, retval);
return GetFormattedStringFromName(emailAddress, "imapDefaultAccountName", retval);
}
@ -1803,8 +1803,9 @@ nsImapIncomingServer::FEAlert(const nsAString& aAlertString,
nsString tempString(aAlertString);
const PRUnichar *params[] = { hostName.get(), tempString.get() };
rv = m_stringBundle->FormatStringFromID(IMAP_SERVER_ALERT, params, 2,
getter_Copies(message));
rv = m_stringBundle->FormatStringFromName(
NS_LITERAL_STRING("imapServerAlert").get(),
params, 2, getter_Copies(message));
if (NS_SUCCEEDED(rv))
return AlertUser(message, aUrl);
}
@ -1824,7 +1825,7 @@ nsresult nsImapIncomingServer::AlertUser(const nsAString& aString,
}
NS_IMETHODIMP
nsImapIncomingServer::FEAlertWithID(int32_t aMsgId, nsIMsgMailNewsUrl *aUrl)
nsImapIncomingServer::FEAlertWithName(const char* aMsgName, nsIMsgMailNewsUrl *aUrl)
{
// don't bother the user if we're shutting down.
if (m_shuttingDown)
@ -1841,16 +1842,17 @@ nsImapIncomingServer::FEAlertWithID(int32_t aMsgId, nsIMsgMailNewsUrl *aUrl)
if (NS_SUCCEEDED(rv))
{
const PRUnichar *params[] = { hostName.get() };
rv = m_stringBundle->FormatStringFromID(aMsgId, params, 1,
getter_Copies(message));
rv = m_stringBundle->FormatStringFromName(
NS_ConvertASCIItoUTF16(aMsgName).get(),
params, 1,getter_Copies(message));
if (NS_SUCCEEDED(rv))
return AlertUser(message, aUrl);
}
}
// Error condition
message.AssignLiteral("String ID ");
message.AppendInt(aMsgId);
message.AssignLiteral("String Name ");
message.AppendASCII(aMsgName);
FEAlert(message, aUrl);
return NS_OK;
}
@ -1887,7 +1889,7 @@ NS_IMETHODIMP nsImapIncomingServer::FEAlertFromServer(const nsACString& aServer
nullptr
};
uint32_t msgID;
nsString msgName;
int32_t numStrings;
nsString fullMessage;
nsCOMPtr<nsIImapUrl> imapUrl = do_QueryInterface(aUrl);
@ -1910,12 +1912,12 @@ NS_IMETHODIMP nsImapIncomingServer::FEAlertFromServer(const nsACString& aServer
if (folder)
folder->GetPrettyName(folderName);
numStrings = 3;
msgID = IMAP_FOLDER_COMMAND_FAILED;
msgName.AssignLiteral("imapFolderCommandFailed");
formatStrings[1] = folderName.get();
}
else
{
msgID = IMAP_SERVER_COMMAND_FAILED;
msgName.AssignLiteral("imapServerCommandFailed");
numStrings = 2;
}
@ -1925,9 +1927,8 @@ NS_IMETHODIMP nsImapIncomingServer::FEAlertFromServer(const nsACString& aServer
NS_ENSURE_SUCCESS(rv, rv);
if (m_stringBundle)
{
rv = m_stringBundle->FormatStringFromID(msgID,
formatStrings, numStrings,
getter_Copies(fullMessage));
rv = m_stringBundle->FormatStringFromName(msgName.get(),
formatStrings, numStrings, getter_Copies(fullMessage));
NS_ENSURE_SUCCESS(rv, rv);
}
@ -1948,44 +1949,24 @@ nsresult nsImapIncomingServer::GetStringBundle()
}
NS_IMETHODIMP
nsImapIncomingServer::GetImapStringByID(int32_t aMsgId, nsAString& aString)
nsImapIncomingServer::GetImapStringByName(const char* msgName, nsAString& aString)
{
nsresult res = NS_OK;
nsresult rv = NS_OK;
GetStringBundle();
if (m_stringBundle)
{
nsString res_str;
res = m_stringBundle->GetStringFromID(aMsgId, getter_Copies(res_str));
rv = m_stringBundle->GetStringFromName(
NS_ConvertASCIItoUTF16(msgName).get(),
getter_Copies(res_str));
aString.Assign(res_str);
if (NS_SUCCEEDED(res))
return res;
}
aString.AssignLiteral("String ID ");
// mscott: FIX ME
nsString tmpIntStr;
tmpIntStr.AppendInt(aMsgId);
aString.Append(tmpIntStr);
return NS_OK;
}
nsString
nsImapIncomingServer::GetImapStringByName(const nsString &aName)
{
nsString result;
GetStringBundle();
if (m_stringBundle)
{
nsresult rv = m_stringBundle->GetStringFromName(aName.get(),
getter_Copies(result));
if (NS_SUCCEEDED(rv))
return result;
return rv;
}
result.AssignLiteral("Failed to get string named ");
result.Append(aName);
return result;
aString.AssignLiteral("String Name ");
// mscott: FIX ME
aString.AppendASCII(msgName);
return NS_OK;
}
nsresult nsImapIncomingServer::ResetFoldersToUnverified(nsIMsgFolder *parentFolder)
@ -2145,7 +2126,8 @@ nsImapIncomingServer::PromptPassword(nsIMsgWindow *aMsgWindow,
nsACString &aPassword)
{
nsString passwordTitle;
IMAPGetStringByID(IMAP_ENTER_PASSWORD_PROMPT_TITLE, getter_Copies(passwordTitle));
IMAPGetStringByName("imapEnterPasswordPromptTitle",
getter_Copies(passwordTitle));
nsCString promptValue;
GetRealUsername(promptValue);
@ -2155,9 +2137,9 @@ nsImapIncomingServer::PromptPassword(nsIMsgWindow *aMsgWindow,
promptValue.Append(hostName);
nsString passwordText;
nsresult rv = GetFormattedStringFromID(NS_ConvertASCIItoUTF16(promptValue),
IMAP_ENTER_PASSWORD_PROMPT,
passwordText);
nsresult rv = GetFormattedStringFromName(NS_ConvertASCIItoUTF16(promptValue),
"imapEnterPasswordPrompt",
passwordText);
NS_ENSURE_SUCCESS(rv,rv);
rv = GetPasswordWithUI(passwordText, passwordTitle, aMsgWindow, aPassword);
@ -2877,25 +2859,26 @@ nsImapIncomingServer::GeneratePrettyNameForMigration(nsAString& aPrettyName)
}
// Format the pretty name
return GetFormattedStringFromID(constructedPrettyName, IMAP_DEFAULT_ACCOUNT_NAME, aPrettyName);
return GetFormattedStringFromName(constructedPrettyName,
"imapDefaultAccountName",
aPrettyName);
}
nsresult
nsImapIncomingServer::GetFormattedStringFromID(const nsAString& aValue, int32_t aID, nsAString& aResult)
nsImapIncomingServer::GetFormattedStringFromName(const nsAString& aValue,
const char* aName,
nsAString& aResult)
{
nsresult rv = GetStringBundle();
if (m_stringBundle)
{
nsString tmpVal (aValue);
const PRUnichar *formatStrings[] =
{
tmpVal.get(),
};
const PRUnichar *formatStrings[] = { tmpVal.get() };
nsString result;
rv = m_stringBundle->FormatStringFromID(aID,
formatStrings, 1,
getter_Copies(result));
rv = m_stringBundle->FormatStringFromName(
NS_ConvertASCIItoUTF16(aName).get(),
formatStrings, 1, getter_Copies(result));
aResult.Assign(result);
}
return rv;

Просмотреть файл

@ -82,7 +82,6 @@ protected:
bool AllDescendentsAreNoSelect(nsIMsgFolder *parentFolder);
nsresult GetStringBundle();
nsString GetImapStringByName(const nsString &aName);
static nsresult AlertUser(const nsAString& aString, nsIMsgMailNewsUrl *aUrl);
private:
@ -94,7 +93,7 @@ private:
nsresult DoomUrlIfChannelHasError(nsIImapUrl *aImapUrl, bool *urlDoomed);
bool ConnectionTimeOut(nsIImapProtocol* aImapConnection);
nsresult GetFormattedStringFromID(const nsAString& aValue, int32_t aID, nsAString& aResult);
nsresult GetFormattedStringFromName(const nsAString& aValue, const char* aName, nsAString& aResult);
nsresult GetPrefForServerAttribute(const char *prefSuffix, bool *prefValue);
bool CheckSpecialFolder(nsIRDFService *rdf, nsCString &folderUri,
uint32_t folderFlag, nsCString &existingUri);

Просмотреть файл

@ -1603,9 +1603,9 @@ NS_IMETHODIMP nsImapMailFolder::Rename (const nsAString& newName, nsIMsgWindow *
(const PRUnichar*)(intptr_t)m_hierarchyDelimiter
};
nsString alertString;
rv = bundle->FormatStringFromID(IMAP_SPECIAL_CHAR,
formatStrings, 1,
getter_Copies(alertString));
rv = bundle->FormatStringFromName(
NS_LITERAL_STRING("imapSpecialChar").get(),
formatStrings, 1, getter_Copies(alertString));
nsCOMPtr<nsIPrompt> dialog(do_GetInterface(docShell));
if (dialog && !alertString.IsEmpty())
dialog->Alert(nullptr, alertString.get());
@ -2401,19 +2401,22 @@ nsImapMailFolder::DeleteSubFolders(nsIArray* folders, nsIMsgWindow *msgWindow)
const PRUnichar *formatStrings[1] = { folderName.get() };
nsAutoString deleteFolderDialogTitle;
rv = bundle->GetStringFromID(IMAP_DELETE_FOLDER_DIALOG_TITLE,
getter_Copies(deleteFolderDialogTitle));
rv = bundle->GetStringFromName(
NS_LITERAL_STRING("imapDeleteFolderDialogTitle").get(),
getter_Copies(deleteFolderDialogTitle));
NS_ENSURE_SUCCESS(rv, rv);
nsAutoString deleteFolderButtonLabel;
rv = bundle->GetStringFromID(IMAP_DELETE_FOLDER_BUTTON_LABEL,
getter_Copies(deleteFolderButtonLabel));
rv = bundle->GetStringFromName(
NS_LITERAL_STRING("imapDeleteFolderButtonLabel").get(),
getter_Copies(deleteFolderButtonLabel));
NS_ENSURE_SUCCESS(rv, rv);
nsAutoString confirmationStr;
rv = bundle->FormatStringFromID(
(!deleteNoTrash) ? IMAP_MOVE_FOLDER_TO_TRASH : IMAP_DELETE_NO_TRASH,
formatStrings, 1, getter_Copies(confirmationStr));
rv = bundle->FormatStringFromName((deleteNoTrash) ?
NS_LITERAL_STRING("imapDeleteNoTrash").get() :
NS_LITERAL_STRING("imapMoveFolderToTrash").get(),
formatStrings, 1, getter_Copies(confirmationStr));
NS_ENSURE_SUCCESS(rv, rv);
if (!msgWindow)
return NS_ERROR_NULL_POINTER;
@ -2810,7 +2813,7 @@ NS_IMETHODIMP nsImapMailFolder::UpdateImapMailboxInfo(nsIImapProtocol* aProtocol
bool gettingNewMessages;
GetGettingNewMessages(&gettingNewMessages);
if (gettingNewMessages)
ProgressStatus(aProtocol, IMAP_NO_NEW_MESSAGES, nullptr);
ProgressStatusString(aProtocol, "imapNoNewMessages", nullptr);
SetPerformingBiff(false);
}
aSpec->GetNumMessages(&m_numServerTotalMessages);
@ -5887,9 +5890,9 @@ NS_IMETHODIMP
nsImapMailFolder::FillInFolderProps(nsIMsgImapFolderProps *aFolderProps)
{
NS_ENSURE_ARG(aFolderProps);
uint32_t folderTypeStringID;
uint32_t folderTypeDescStringID = 0;
uint32_t folderQuotaStatusStringID;
const char* folderTypeStringID;
const char* folderTypeDescStringID;
const char* folderQuotaStatusStringID;
nsString folderType;
nsString folderTypeDesc;
nsString folderQuotaStatusDesc;
@ -5921,19 +5924,19 @@ nsImapMailFolder::FillInFolderProps(nsIMsgImapFolderProps *aFolderProps)
if(m_folderQuotaDataIsValid)
{
// If so, set quota data
folderQuotaStatusStringID = 0;
folderQuotaStatusStringID = nullptr;
aFolderProps->SetQuotaData(m_folderQuotaRoot, m_folderQuotaUsedKB, m_folderQuotaMaxKB);
}
else
{
// If not, there is no storage quota set on this folder
folderQuotaStatusStringID = IMAP_QUOTA_STATUS_NOQUOTA;
folderQuotaStatusStringID = "imapQuotaStatusNoQuota";
}
}
else
{
// The folder is not open, so no quota information is available
folderQuotaStatusStringID = IMAP_QUOTA_STATUS_FOLDERNOTOPEN;
folderQuotaStatusStringID = "imapQuotaStatusFolderNotOpen";
}
}
else
@ -5942,10 +5945,11 @@ nsImapMailFolder::FillInFolderProps(nsIMsgImapFolderProps *aFolderProps)
// (e.g., because we don't have a connection yet). If the latter, we fall back
// to saying that no information is available because the folder is not open.
folderQuotaStatusStringID = (capability == kCapabilityUndefined) ?
IMAP_QUOTA_STATUS_FOLDERNOTOPEN : IMAP_QUOTA_STATUS_NOTSUPPORTED;
"imapQuotaStatusFolderNotOpen" :
"imapQuotaStatusNotSupported";
}
if(folderQuotaStatusStringID == 0)
if(!folderQuotaStatusStringID)
{
// Display quota data
aFolderProps->ShowQuotaData(true);
@ -5955,7 +5959,8 @@ nsImapMailFolder::FillInFolderProps(nsIMsgImapFolderProps *aFolderProps)
// Hide quota data and show reason why it is not available
aFolderProps->ShowQuotaData(false);
rv = IMAPGetStringByID(folderQuotaStatusStringID, getter_Copies(folderQuotaStatusDesc));
rv = IMAPGetStringByName(folderQuotaStatusStringID,
getter_Copies(folderQuotaStatusDesc));
if (NS_SUCCEEDED(rv))
aFolderProps->SetQuotaStatus(folderQuotaStatusDesc);
}
@ -5965,7 +5970,8 @@ nsImapMailFolder::FillInFolderProps(nsIMsgImapFolderProps *aFolderProps)
// the server doesn't support sharing, and return.
if (!haveACL)
{
rv = IMAPGetStringByID(IMAP_SERVER_DOESNT_SUPPORT_ACL, getter_Copies(folderTypeDesc));
rv = IMAPGetStringByName("imapServerDoesntSupportAcl",
getter_Copies(folderTypeDesc));
if (NS_SUCCEEDED(rv))
aFolderProps->SetFolderTypeDescription(folderTypeDesc);
aFolderProps->ServerDoesntSupportACL();
@ -5974,18 +5980,19 @@ nsImapMailFolder::FillInFolderProps(nsIMsgImapFolderProps *aFolderProps)
}
if (mFlags & nsMsgFolderFlags::ImapPublic)
{
folderTypeStringID = IMAP_PUBLIC_FOLDER_TYPE_NAME;
folderTypeDescStringID = IMAP_PUBLIC_FOLDER_TYPE_DESCRIPTION;
folderTypeStringID = "imapPublicFolderTypeName";
folderTypeDescStringID = "imapPublicFolderTypeDescription";
}
else if (mFlags & nsMsgFolderFlags::ImapOtherUser)
{
folderTypeStringID = IMAP_OTHER_USERS_FOLDER_TYPE_NAME;
folderTypeStringID = "imapOtherUsersFolderTypeName";
nsCString owner;
nsString uniOwner;
GetFolderOwnerUserName(owner);
if (owner.IsEmpty())
{
rv = IMAPGetStringByID(folderTypeStringID, getter_Copies(uniOwner));
rv = IMAPGetStringByName(folderTypeStringID,
getter_Copies(uniOwner));
// Another user's folder, for which we couldn't find an owner name
NS_ASSERTION(false, "couldn't get owner name for other user's folder");
}
@ -5995,25 +6002,29 @@ nsImapMailFolder::FillInFolderProps(nsIMsgImapFolderProps *aFolderProps)
CopyASCIItoUTF16(owner, uniOwner);
}
const PRUnichar *params[] = { uniOwner.get() };
rv = bundle->FormatStringFromID(IMAP_OTHER_USERS_FOLDER_TYPE_DESCRIPTION, params, 1, getter_Copies(folderTypeDesc));
rv = bundle->FormatStringFromName(
NS_LITERAL_STRING("imapOtherUsersFolderTypeDescription").get(),
params, 1, getter_Copies(folderTypeDesc));
}
else if (GetFolderACL()->GetIsFolderShared())
{
folderTypeStringID = IMAP_PERSONAL_SHARED_FOLDER_TYPE_NAME;
folderTypeDescStringID = IMAP_PERSONAL_SHARED_FOLDER_TYPE_DESCRIPTION;
folderTypeStringID = "imapPersonalSharedFolderTypeName";
folderTypeDescStringID = "imapPersonalSharedFolderTypeDescription";
}
else
{
folderTypeStringID = IMAP_PERSONAL_SHARED_FOLDER_TYPE_NAME;
folderTypeDescStringID = IMAP_PERSONAL_FOLDER_TYPE_DESCRIPTION;
folderTypeStringID = "imapPersonalSharedFolderTypeName";
folderTypeDescStringID = "imapPersonalFolderTypeDescription";
}
rv = IMAPGetStringByID(folderTypeStringID, getter_Copies(folderType));
rv = IMAPGetStringByName(folderTypeStringID,
getter_Copies(folderType));
if (NS_SUCCEEDED(rv))
aFolderProps->SetFolderType(folderType);
if (folderTypeDesc.IsEmpty() && folderTypeDescStringID != 0)
rv = IMAPGetStringByID(folderTypeDescStringID, getter_Copies(folderTypeDesc));
if (folderTypeDesc.IsEmpty() && folderTypeDescStringID)
rv = IMAPGetStringByName(folderTypeDescStringID,
getter_Copies(folderTypeDesc));
if (!folderTypeDesc.IsEmpty())
aFolderProps->SetFolderTypeDescription(folderTypeDesc);
@ -6529,7 +6540,8 @@ nsresult nsMsgIMAPFolderACL::CreateACLRightsString(nsAString& aRightsString)
if (GetDoIHaveFullRightsForFolder()) {
nsAutoString result;
rv = bundle->GetStringFromID(IMAP_ACL_FULL_RIGHTS, getter_Copies(result));
rv = bundle->GetStringFromName(NS_LITERAL_STRING("imapAclFullRights").get(),
getter_Copies(result));
aRightsString.Assign(result);
return rv;
}
@ -6537,62 +6549,72 @@ nsresult nsMsgIMAPFolderACL::CreateACLRightsString(nsAString& aRightsString)
{
if (GetCanIReadFolder())
{
bundle->GetStringFromID(IMAP_ACL_READ_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclReadRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
if (GetCanIWriteFolder())
{
if (!aRightsString.IsEmpty()) aRightsString.AppendLiteral(", ");
bundle->GetStringFromID(IMAP_ACL_WRITE_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclWriteRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
if (GetCanIInsertInFolder())
{
if (!aRightsString.IsEmpty()) aRightsString.AppendLiteral(", ");
bundle->GetStringFromID(IMAP_ACL_INSERT_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclInsertRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
if (GetCanILookupFolder())
{
if (!aRightsString.IsEmpty()) aRightsString.AppendLiteral(", ");
bundle->GetStringFromID(IMAP_ACL_LOOKUP_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclLookupRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
if (GetCanIStoreSeenInFolder())
{
if (!aRightsString.IsEmpty()) aRightsString.AppendLiteral(", ");
bundle->GetStringFromID(IMAP_ACL_SEEN_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclSeenRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
if (GetCanIDeleteInFolder())
{
if (!aRightsString.IsEmpty()) aRightsString.AppendLiteral(", ");
bundle->GetStringFromID(IMAP_ACL_DELETE_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclDeleteRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
if (GetCanIExpungeFolder())
{
if (!aRightsString.IsEmpty())
aRightsString.AppendLiteral(", ");
bundle->GetStringFromID(IMAP_ACL_EXPUNGE_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclExpungeRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
if (GetCanICreateSubfolder())
{
if (!aRightsString.IsEmpty()) aRightsString.AppendLiteral(", ");
bundle->GetStringFromID(IMAP_ACL_CREATE_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclCreateRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
if (GetCanIPostToFolder())
{
if (!aRightsString.IsEmpty()) aRightsString.AppendLiteral(", ");
bundle->GetStringFromID(IMAP_ACL_POST_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclPostRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
if (GetCanIAdministerFolder())
{
if (!aRightsString.IsEmpty()) aRightsString.AppendLiteral(", ");
bundle->GetStringFromID(IMAP_ACL_ADMINISTER_RIGHT, getter_Copies(curRight));
bundle->GetStringFromName(NS_LITERAL_STRING("imapAclAdministerRight").get(),
getter_Copies(curRight));
aRightsString.Append(curRight);
}
}
@ -6630,8 +6652,9 @@ nsresult nsImapMailFolder::DisplayStatusMsg(nsIImapUrl *aImapUrl, const nsAStrin
}
NS_IMETHODIMP
nsImapMailFolder::ProgressStatus(nsIImapProtocol* aProtocol,
uint32_t aMsgId, const PRUnichar * extraInfo)
nsImapMailFolder::ProgressStatusString(nsIImapProtocol* aProtocol,
const char* aMsgName,
const PRUnichar * extraInfo)
{
nsString progressMsg;
@ -6641,10 +6664,10 @@ nsImapMailFolder::ProgressStatus(nsIImapProtocol* aProtocol,
{
nsCOMPtr<nsIImapServerSink> serverSink = do_QueryInterface(server);
if (serverSink)
serverSink->GetImapStringByID(aMsgId, progressMsg);
serverSink->GetImapStringByName(aMsgName, progressMsg);
}
if (progressMsg.IsEmpty())
IMAPGetStringByID(aMsgId, getter_Copies(progressMsg));
IMAPGetStringByName(aMsgName, getter_Copies(progressMsg));
if (aProtocol && !progressMsg.IsEmpty())
{
@ -6779,7 +6802,7 @@ nsImapMailFolder::SetUrlState(nsIImapProtocol* aProtocol,
return NS_OK;
if (!isRunning)
{
ProgressStatus(aProtocol, IMAP_DONE, nullptr);
ProgressStatusString(aProtocol, "imapDone", nullptr);
m_urlRunning = false;
// if no protocol, then we're reading from the mem or disk cache
// and we don't want to end the offline download just yet.
@ -8101,9 +8124,9 @@ nsImapMailFolder::CopyStreamMessage(nsIMsgDBHdr* message,
nsCOMPtr <nsIStringBundle> bundle;
rv = IMAPGetStringBundle(getter_AddRefs(bundle));
NS_ENSURE_SUCCESS(rv, rv);
rv = bundle->FormatStringFromID(IMAP_COPYING_MESSAGE_OF,
formatStrings, 3,
getter_Copies(progressText));
rv = bundle->FormatStringFromName(
NS_LITERAL_STRING("imapCopyingMessageOf").get(),
formatStrings, 3, getter_Copies(progressText));
nsCOMPtr <nsIMsgStatusFeedback> statusFeedback;
if (m_copyState->m_msgWindow)
m_copyState->m_msgWindow->GetStatusFeedback(getter_AddRefs(statusFeedback));

Просмотреть файл

@ -455,7 +455,7 @@ nsImapProtocol::nsImapProtocol() : nsMsgProtocol(nullptr),
// used to buffer incoming data by ReadNextLine
m_inputStreamBuffer = new nsMsgLineStreamBuffer(OUTPUT_BUFFER_SIZE, true /* allocate new lines */, false /* leave CRLFs on the returned string */);
m_currentBiffState = nsIMsgFolder::nsMsgBiffState_Unknown;
m_progressStringId = 0;
m_progressStringName.Truncate();
// since these are embedded in the nsImapProtocol object, but passed
// through proxied xpcom methods, just AddRef them here.
@ -1606,7 +1606,7 @@ bool nsImapProtocol::ProcessCurrentURL()
kIMAP4other) ) )
{
if (!DeathSignalReceived() && NS_SUCCEEDED(GetConnectionStatus()))
AlertUserEventUsingId(IMAP_SERVER_NOT_IMAP4);
AlertUserEventUsingName("imapServerNotImap4");
SetConnectionStatus(NS_ERROR_FAILURE); // stop netlib
}
@ -2499,7 +2499,7 @@ void nsImapProtocol::ProcessSelectedStateURL()
|| m_imapAction == nsIImapUrl::nsImapMsgPreview)
{
// multiple messages, fetch them all
SetProgressString(IMAP_FOLDER_RECEIVING_MESSAGE_OF);
SetProgressString("imapFolderReceivingMessageOf");
m_progressIndex = 0;
m_progressCount = CountMessagesInIdString(messageIdString.get());
@ -2513,7 +2513,7 @@ void nsImapProtocol::ProcessSelectedStateURL()
? kBodyStart : kEveryThingRFC822Peek);
if (m_imapAction == nsIImapUrl::nsImapMsgPreview)
HeaderFetchCompleted();
SetProgressString(0);
SetProgressString(nullptr);
}
else
{
@ -2757,8 +2757,9 @@ void nsImapProtocol::ProcessSelectedStateURL()
nsCString messageIdString;
m_runningUrl->GetListOfMessageIds(messageIdString);
ProgressEventFunctionUsingId (HandlingMultipleMessages(messageIdString) ?
IMAP_DELETING_MESSAGES :IMAP_DELETING_MESSAGE);
ProgressEventFunctionUsingName(HandlingMultipleMessages(messageIdString) ?
"imapDeletingMessages" :
"imapDeletingMessage");
Store(messageIdString, "+FLAGS (\\Deleted)", bMessageIdsAreUids);
@ -2864,15 +2865,15 @@ void nsImapProtocol::ProcessSelectedStateURL()
if (m_imapAction == nsIImapUrl::nsImapOnlineMove)
{
if (HandlingMultipleMessages(messageIdString))
ProgressEventFunctionUsingIdWithString (IMAP_MOVING_MESSAGES_TO, destinationMailbox);
ProgressEventFunctionUsingNameWithString("imapMovingMessages", destinationMailbox);
else
ProgressEventFunctionUsingIdWithString (IMAP_MOVING_MESSAGE_TO, destinationMailbox);
ProgressEventFunctionUsingNameWithString("imapMovingMessage", destinationMailbox);
}
else {
if (HandlingMultipleMessages(messageIdString))
ProgressEventFunctionUsingIdWithString (IMAP_COPYING_MESSAGES_TO, destinationMailbox);
ProgressEventFunctionUsingNameWithString("imapCopyingMessages", destinationMailbox);
else
ProgressEventFunctionUsingIdWithString (IMAP_COPYING_MESSAGE_TO, destinationMailbox);
ProgressEventFunctionUsingNameWithString("imapCopyingMessage", destinationMailbox);
}
Copy(messageIdString.get(), destinationMailbox, bMessageIdsAreUids);
PR_FREEIF( destinationMailbox);
@ -2918,13 +2919,13 @@ void nsImapProtocol::ProcessSelectedStateURL()
nsresult rv = m_runningUrl->GetListOfMessageIds(messageIdString);
if (NS_SUCCEEDED(rv))
{
SetProgressString(IMAP_FOLDER_RECEIVING_MESSAGE_OF);
SetProgressString("imapFolderReceivingMessageOf");
m_progressIndex = 0;
m_progressCount = CountMessagesInIdString(messageIdString.get());
FetchMessage(messageIdString, kEveryThingRFC822Peek);
SetProgressString(0);
SetProgressString(nullptr);
if (m_imapMailFolderSink)
{
ImapOnlineCopyState copyStatus;
@ -3108,7 +3109,7 @@ void nsImapProtocol::CreateEscapedMailboxName(const char *rawName, nsCString &es
}
void nsImapProtocol::SelectMailbox(const char *mailboxName)
{
ProgressEventFunctionUsingIdWithString (IMAP_STATUS_SELECTING_MAILBOX, mailboxName);
ProgressEventFunctionUsingNameWithString("imapStatusSelectingMailbox", mailboxName);
IncrementCommandTagNumber();
m_closeNeededBeforeSelect = false; // initial value
@ -4162,19 +4163,19 @@ void nsImapProtocol::FolderMsgDump(uint32_t *msgUids, uint32_t msgCount, nsIMAPe
// lets worry about this progress stuff later.
switch (fields) {
case kHeadersRFC822andUid:
SetProgressString(IMAP_RECEIVING_MESSAGE_HEADERS_OF);
SetProgressString("imapReceivingMessageHeaders");
break;
case kFlags:
SetProgressString(IMAP_RECEIVING_MESSAGE_FLAGS_OF);
SetProgressString("imapReceivingMessageFlags");
break;
default:
SetProgressString(IMAP_FOLDER_RECEIVING_MESSAGE_OF);
SetProgressString("imapFolderReceivingMessageOf");
break;
}
FolderMsgDumpLoop(msgUids, msgCount, fields);
SetProgressString(0);
SetProgressString(nullptr);
}
void nsImapProtocol::WaitForPotentialListOfBodysToFetch(uint32_t **msgIdList, uint32_t &msgCount)
@ -4671,11 +4672,11 @@ char* nsImapProtocol::CreateNewLineFromSocket()
{
case NS_ERROR_UNKNOWN_HOST:
case NS_ERROR_UNKNOWN_PROXY_HOST:
AlertUserEventUsingId(IMAP_UNKNOWN_HOST_ERROR);
AlertUserEventUsingName("imapUnknownHostError");
break;
case NS_ERROR_CONNECTION_REFUSED:
case NS_ERROR_PROXY_CONNECTION_REFUSED:
AlertUserEventUsingId(IMAP_CONNECTION_REFUSED_ERROR);
AlertUserEventUsingName("imapConnectionRefusedError");
break;
case NS_ERROR_NET_TIMEOUT:
case NS_ERROR_NET_RESET:
@ -4701,10 +4702,11 @@ char* nsImapProtocol::CreateNewLineFromSocket()
}
}
if (rv == NS_ERROR_NET_TIMEOUT)
AlertUserEventUsingId(IMAP_NET_TIMEOUT_ERROR);
AlertUserEventUsingName("imapNetTimeoutError");
else
AlertUserEventUsingId(TestFlag(IMAP_RECEIVED_GREETING)
? IMAP_SERVER_DISCONNECTED : IMAP_SERVER_DROPPED_CONNECTION);
AlertUserEventUsingName(TestFlag(IMAP_RECEIVED_GREETING) ?
"imapServerDisconnected" :
"imapServerDroppedConnection");
break;
default:
break;
@ -4958,7 +4960,7 @@ nsImapProtocol::DiscoverMailboxSpec(nsImapMailboxSpec * adoptedBoxSpec)
case kListingForInfoOnly:
{
//UpdateProgressWindowForUpgrade(adoptedBoxSpec->allocatedPathName);
ProgressEventFunctionUsingIdWithString(IMAP_DISCOVERING_MAILBOX,
ProgressEventFunctionUsingNameWithString("imapDiscoveringMailbox",
adoptedBoxSpec->mAllocatedPathName.get());
nsIMAPMailboxInfo *mb = new nsIMAPMailboxInfo(adoptedBoxSpec->mAllocatedPathName,
adoptedBoxSpec->mHierarchySeparator);
@ -4978,7 +4980,7 @@ nsImapProtocol::DiscoverMailboxSpec(nsImapMailboxSpec * adoptedBoxSpec)
}
void
nsImapProtocol::AlertUserEventUsingId(uint32_t aMessageId)
nsImapProtocol::AlertUserEventUsingName(const char* aMessageName)
{
if (m_imapServerSink)
{
@ -4989,7 +4991,8 @@ nsImapProtocol::AlertUserEventUsingId(uint32_t aMessageId)
mailnewsUrl->GetSuppressErrorMsgs(&suppressErrorMsg);
if (!suppressErrorMsg)
m_imapServerSink->FEAlertWithID(aMessageId, mailnewsUrl);
m_imapServerSink->FEAlertWithName(aMessageName,
mailnewsUrl);
}
}
@ -5024,20 +5027,21 @@ void nsImapProtocol::ResetProgressInfo()
{
m_lastProgressTime = 0;
m_lastPercent = -1;
m_lastProgressStringId = (uint32_t) -1;
m_lastProgressStringName.Truncate();
}
void nsImapProtocol::SetProgressString(int32_t stringId)
void nsImapProtocol::SetProgressString(const char * stringName)
{
m_progressStringId = stringId;
if (m_progressStringId && m_imapServerSink)
m_imapServerSink->GetImapStringByID(stringId, m_progressString);
m_progressStringName.Assign(stringName);
if (!m_progressStringName.IsEmpty() && m_imapServerSink)
m_imapServerSink->GetImapStringByName(stringName,
m_progressString);
}
void
nsImapProtocol::ShowProgress()
{
if (!m_progressString.IsEmpty() && m_progressStringId)
if (!m_progressString.IsEmpty() && !m_progressStringName.IsEmpty())
{
PRUnichar *progressString = NULL;
const char *mailboxName = GetServerStateParser().GetSelectedMailboxName();
@ -5059,26 +5063,26 @@ nsImapProtocol::ShowProgress()
}
void
nsImapProtocol::ProgressEventFunctionUsingId(uint32_t aMsgId)
nsImapProtocol::ProgressEventFunctionUsingName(const char* aMsgName)
{
if (m_imapMailFolderSink && aMsgId != m_lastProgressStringId)
if (m_imapMailFolderSink && !m_lastProgressStringName.Equals(aMsgName))
{
m_imapMailFolderSink->ProgressStatus(this, aMsgId, nullptr);
m_lastProgressStringId = aMsgId;
// who's going to free this? Does ProgressStatus complete synchronously?
m_imapMailFolderSink->ProgressStatusString(this, aMsgName, nullptr);
m_lastProgressStringName.Assign(aMsgName);
// who's going to free this? Does ProgressStatusString complete synchronously?
}
}
void
nsImapProtocol::ProgressEventFunctionUsingIdWithString(uint32_t aMsgId, const
char * aExtraInfo)
nsImapProtocol::ProgressEventFunctionUsingNameWithString(const char* aMsgName,
const char * aExtraInfo)
{
if (m_imapMailFolderSink)
{
nsString unicodeStr;
nsresult rv = CopyMUTF7toUTF16(nsDependentCString(aExtraInfo), unicodeStr);
if (NS_SUCCEEDED(rv))
m_imapMailFolderSink->ProgressStatus(this, aMsgId, unicodeStr.get());
m_imapMailFolderSink->ProgressStatusString(this, aMsgName, unicodeStr.get());
}
}
@ -5237,7 +5241,7 @@ nsImapProtocol::Expunge()
if (aclFlags && !(aclFlags & IMAP_ACL_EXPUNGE_FLAG))
return;
ProgressEventFunctionUsingId (IMAP_STATUS_EXPUNGING_MAILBOX);
ProgressEventFunctionUsingName("imapStatusExpungingMailbox");
if(gCheckDeletedBeforeExpunge)
{
@ -5300,7 +5304,7 @@ void nsImapProtocol::StartTLS()
void nsImapProtocol::Capability()
{
ProgressEventFunctionUsingId (IMAP_STATUS_CHECK_COMPAT);
ProgressEventFunctionUsingName("imapStatusCheckCompat");
IncrementCommandTagNumber();
nsCString command(GetServerCommandTag());
@ -5410,7 +5414,7 @@ void nsImapProtocol::Language()
if (!TestFlag(IMAP_ISSUED_LANGUAGE_REQUEST))
{
SetFlag(IMAP_ISSUED_LANGUAGE_REQUEST);
ProgressEventFunctionUsingId (IMAP_STATUS_CHECK_COMPAT);
ProgressEventFunctionUsingName("imapStatusCheckCompat");
IncrementCommandTagNumber();
nsCString command(GetServerCommandTag());
@ -5571,7 +5575,7 @@ void nsImapProtocol::ResetAuthMethods()
nsresult nsImapProtocol::AuthLogin(const char *userName, const nsCString &password, eIMAPCapabilityFlag flag)
{
ProgressEventFunctionUsingId (IMAP_STATUS_SENDING_AUTH_LOGIN);
ProgressEventFunctionUsingName("imapStatusSendingAuthLogin");
IncrementCommandTagNumber();
char * currentCommand=nullptr;
@ -5772,7 +5776,7 @@ nsresult nsImapProtocol::AuthLogin(const char *userName, const nsCString &passwo
else if (flag & kHasAuthOldLoginCapability)
{
PR_LOG(IMAP, PR_LOG_DEBUG, ("old-style auth"));
ProgressEventFunctionUsingId (IMAP_STATUS_SENDING_LOGIN);
ProgressEventFunctionUsingName("imapStatusSendingLogin");
IncrementCommandTagNumber();
nsCString command (GetServerCommandTag());
nsAutoCString escapedUserName;
@ -5815,7 +5819,7 @@ void nsImapProtocol::OnLSubFolders()
char *mailboxName = OnCreateServerSourceFolderPathString();
if (mailboxName)
{
ProgressEventFunctionUsingId(IMAP_STATUS_LOOKING_FOR_MAILBOX);
ProgressEventFunctionUsingName("imapStatusLookingForMailbox");
IncrementCommandTagNumber();
PR_snprintf(m_dataOutputBuf, OUTPUT_BUFFER_SIZE,"%s list \"\" \"%s\"" CRLF, GetServerCommandTag(), mailboxName);
nsresult rv = SendData(m_dataOutputBuf);
@ -6352,7 +6356,7 @@ void nsImapProtocol::Logout(bool shuttingDown /* = false */,
bool waitForResponse /* = true */)
{
if (!shuttingDown)
ProgressEventFunctionUsingId (IMAP_STATUS_LOGGING_OUT);
ProgressEventFunctionUsingName("imapStatusLoggingOut");
/******************************************************************
* due to the undo functionality we cannot issule a close when logout; there
@ -6396,7 +6400,7 @@ void nsImapProtocol::Noop()
void nsImapProtocol::XServerInfo()
{
ProgressEventFunctionUsingId (IMAP_GETTING_SERVER_INFO);
ProgressEventFunctionUsingName("imapGettingServerInfo");
IncrementCommandTagNumber();
nsCString command(GetServerCommandTag());
@ -6409,7 +6413,7 @@ void nsImapProtocol::XServerInfo()
void nsImapProtocol::Netscape()
{
ProgressEventFunctionUsingId (IMAP_GETTING_SERVER_INFO);
ProgressEventFunctionUsingName("imapGettingServerInfo");
IncrementCommandTagNumber();
nsCString command(GetServerCommandTag());
@ -6426,7 +6430,7 @@ void nsImapProtocol::Netscape()
void nsImapProtocol::XMailboxInfo(const char *mailboxName)
{
ProgressEventFunctionUsingId (IMAP_GETTING_MAILBOX_INFO);
ProgressEventFunctionUsingName("imapGettingMailboxInfo");
IncrementCommandTagNumber();
nsCString command(GetServerCommandTag());
@ -7299,7 +7303,7 @@ void nsImapProtocol::DiscoverMailboxList()
// GetServerStateParser().SetReportingErrors(false);
if (total)
{
ProgressEventFunctionUsingId(IMAP_GETTING_ACL_FOR_FOLDER);
ProgressEventFunctionUsingName("imapGettingACLForFolder");
nsIMAPMailboxInfo * mb = nullptr;
do
{
@ -7425,7 +7429,7 @@ bool nsImapProtocol::CreateMailboxRespectingSubscriptions(const char *mailboxNam
void nsImapProtocol::CreateMailbox(const char *mailboxName)
{
ProgressEventFunctionUsingId (IMAP_STATUS_CREATING_MAILBOX);
ProgressEventFunctionUsingName("imapStatusCreatingMailbox");
IncrementCommandTagNumber();
@ -7469,7 +7473,7 @@ void nsImapProtocol::DeleteMailbox(const char *mailboxName)
Close();
ProgressEventFunctionUsingIdWithString (IMAP_STATUS_DELETING_MAILBOX, mailboxName);
ProgressEventFunctionUsingNameWithString("imapStatusDeletingMailbox", mailboxName);
IncrementCommandTagNumber();
@ -7492,7 +7496,7 @@ void nsImapProtocol::RenameMailbox(const char *existingName,
if (FolderIsSelected(existingName))
Close();
ProgressEventFunctionUsingIdWithString (IMAP_STATUS_RENAMING_MAILBOX, existingName);
ProgressEventFunctionUsingNameWithString("imapStatusRenamingMailbox", existingName);
IncrementCommandTagNumber();
@ -7541,7 +7545,7 @@ bool nsImapProtocol::GetListSubscribedIsBrokenOnServer()
void nsImapProtocol::Lsub(const char *mailboxPattern, bool addDirectoryIfNecessary)
{
ProgressEventFunctionUsingId (IMAP_STATUS_LOOKING_FOR_MAILBOX);
ProgressEventFunctionUsingName("imapStatusLookingForMailbox");
IncrementCommandTagNumber();
@ -7574,7 +7578,7 @@ void nsImapProtocol::Lsub(const char *mailboxPattern, bool addDirectoryIfNecessa
void nsImapProtocol::List(const char *mailboxPattern, bool addDirectoryIfNecessary,
bool useXLIST)
{
ProgressEventFunctionUsingId (IMAP_STATUS_LOOKING_FOR_MAILBOX);
ProgressEventFunctionUsingName("imapStatusLookingForMailbox");
IncrementCommandTagNumber();
@ -7602,7 +7606,7 @@ void nsImapProtocol::List(const char *mailboxPattern, bool addDirectoryIfNecessa
void nsImapProtocol::Subscribe(const char *mailboxName)
{
ProgressEventFunctionUsingIdWithString (IMAP_STATUS_SUBSCRIBE_TO_MAILBOX, mailboxName);
ProgressEventFunctionUsingNameWithString("imapStatusSubscribeToMailbox", mailboxName);
IncrementCommandTagNumber();
@ -7621,7 +7625,7 @@ void nsImapProtocol::Subscribe(const char *mailboxName)
void nsImapProtocol::Unsubscribe(const char *mailboxName)
{
ProgressEventFunctionUsingIdWithString (IMAP_STATUS_UNSUBSCRIBE_MAILBOX, mailboxName);
ProgressEventFunctionUsingNameWithString("imapStatusUnsubscribeMailbox", mailboxName);
IncrementCommandTagNumber();
nsCString escapedName;
@ -7689,7 +7693,7 @@ void nsImapProtocol::Search(const char * searchCriteria,
bool notifyHit /* true */)
{
m_notifySearchHit = notifyHit;
ProgressEventFunctionUsingId (IMAP_STATUS_SEARCH_MAILBOX);
ProgressEventFunctionUsingName("imapStatusSearchMailbox");
IncrementCommandTagNumber();
nsCString protocolString(GetServerCommandTag());
@ -8078,7 +8082,7 @@ void nsImapProtocol::Close(bool shuttingDown /* = false */,
command.Append(" close" CRLF);
if (!shuttingDown)
ProgressEventFunctionUsingId (IMAP_STATUS_CLOSE_MAILBOX);
ProgressEventFunctionUsingName("imapStatusCloseMailbox");
GetServerStateParser().ResetFlagInfo();
@ -8256,7 +8260,7 @@ bool nsImapProtocol::TryToLogon()
kHasAuthLoginCapability | kHasAuthPlainCapability) &&
GetServerStateParser().GetCapabilityFlag() & kHasCRAMCapability)
// tell user to change to encrypted pw
AlertUserEventUsingId(IMAP_AUTH_CHANGE_PLAIN_TO_ENCRYPT);
AlertUserEventUsingName("imapAuthChangePlainToEncrypt");
// pref has encrypted pw & server claims to support plaintext pw
else if (m_prefAuthMethods == kHasCRAMCapability &&
GetServerStateParser().GetCapabilityFlag() &
@ -8267,14 +8271,14 @@ bool nsImapProtocol::TryToLogon()
if (m_socketType == nsMsgSocketType::SSL ||
m_socketType == nsMsgSocketType::alwaysSTARTTLS)
// tell user to change to plaintext pw
AlertUserEventUsingId(IMAP_AUTH_CHANGE_ENCRYPT_TO_PLAIN_SSL);
AlertUserEventUsingName("imapAuthChangeEncryptToPlainSSL");
else
// tell user to change to plaintext pw, with big warning
AlertUserEventUsingId(IMAP_AUTH_CHANGE_ENCRYPT_TO_PLAIN_NO_SSL);
AlertUserEventUsingName("imapAuthChangeEncryptToPlainNoSSL");
}
else
// just "change auth method"
AlertUserEventUsingId(IMAP_AUTH_MECH_NOT_SUPPORTED);
AlertUserEventUsingName("imapAuthMechNotSupported");
skipLoop = true;
}
@ -8364,7 +8368,7 @@ bool nsImapProtocol::TryToLogon()
{
// GSSAPI failed, and it's the only available method,
// and it's password-less, so nothing left to do.
AlertUserEventUsingId(IMAP_AUTH_GSSAPI_FAILED);
AlertUserEventUsingName("imapAuthGssapiFailed");
break;
}

Просмотреть файл

@ -235,12 +235,12 @@ public:
// Event handlers for the imap parser.
void DiscoverMailboxSpec(nsImapMailboxSpec * adoptedBoxSpec);
void AlertUserEventUsingId(uint32_t aMessageId);
void AlertUserEventUsingName(const char* aMessageId);
void AlertUserEvent(const char * message);
void AlertUserEventFromServer(const char * aServerEvent);
void ProgressEventFunctionUsingId(uint32_t aMsgId);
void ProgressEventFunctionUsingIdWithString(uint32_t aMsgId, const char *
void ProgressEventFunctionUsingName(const char* aMsgId);
void ProgressEventFunctionUsingNameWithString(const char* aMsgId, const char *
aExtraInfo);
void PercentProgressUpdateEvent(PRUnichar *message, int64_t currentProgress, int64_t maxProgress);
void ShowProgress();
@ -623,13 +623,13 @@ private:
nsString mAcceptLanguages;
// progress stuff
void SetProgressString(int32_t stringId);
void SetProgressString(const char* stringName);
nsString m_progressString;
int32_t m_progressStringId;
nsCString m_progressStringName;
int32_t m_progressIndex;
int32_t m_progressCount;
uint32_t m_lastProgressStringId;
nsCString m_lastProgressStringName;
int32_t m_lastPercent;
int64_t m_lastProgressTime;

Просмотреть файл

@ -97,7 +97,7 @@ bool nsImapServerResponseParser::GetNextLineForParser(char **nextLine)
// message up just in the interrupt case
if (NS_FAILED(fServerConnection.GetConnectionStatus()) &&
!fServerConnection.DeathSignalReceived())
fServerConnection.AlertUserEventUsingId(IMAP_SERVER_DISCONNECTED);
fServerConnection.AlertUserEventUsingName("imapServerDisconnected");
return rv;
}
@ -276,7 +276,7 @@ void nsImapServerResponseParser::ParseIMAPServerResponse(const char *aCurrentCom
void nsImapServerResponseParser::HandleMemoryFailure()
{
fServerConnection.AlertUserEventUsingId(IMAP_OUT_OF_MEMORY);
fServerConnection.AlertUserEventUsingName("imapOutOfMemory");
nsIMAPGenericParser::HandleMemoryFailure();
}
@ -3130,7 +3130,7 @@ bool nsImapServerResponseParser::msg_fetch_literal(bool chunk, int32_t origin)
charsReadSoFar += strlen(fCurrentLine);
if (!fDownloadingHeaders && fCurrentCommandIsSingleMessageFetch)
{
fServerConnection.ProgressEventFunctionUsingId(IMAP_DOWNLOADING_MESSAGE);
fServerConnection.ProgressEventFunctionUsingName("imapDownloadingMessage");
if (fTotalDownloadSize > 0)
fServerConnection.PercentProgressUpdateEvent(0,charsReadSoFar + origin, fTotalDownloadSize);
}

Просмотреть файл

@ -2742,9 +2742,9 @@ NS_IMETHODIMP nsImapService::NewChannel(nsIURI *aURI, nsIChannel **aRetVal)
CopyASCIItoUTF16(fullFolderName, unescapedName);
const PRUnichar *formatStrings[1] = { unescapedName.get() };
rv = bundle->FormatStringFromID(IMAP_SUBSCRIBE_PROMPT,
formatStrings, 1,
getter_Copies(confirmText));
rv = bundle->FormatStringFromName(
NS_LITERAL_STRING("imapSubscribePrompt").get(),
formatStrings, 1, getter_Copies(confirmText));
NS_ENSURE_SUCCESS(rv,rv);
bool confirmResult = false;

Просмотреть файл

@ -17,14 +17,14 @@
extern "C"
nsresult
IMAPGetStringByID(int32_t stringID, PRUnichar **aString)
IMAPGetStringByName(const char* stringName, PRUnichar **aString)
{
nsresult res=NS_OK;
nsCOMPtr <nsIStringBundle> sBundle;
res = IMAPGetStringBundle(getter_AddRefs(sBundle));
if (NS_SUCCEEDED(res) && sBundle)
res = sBundle->GetStringFromID(stringID, aString);
return res;
nsresult rv = IMAPGetStringBundle(getter_AddRefs(sBundle));
if (NS_SUCCEEDED(rv) && sBundle)
rv = sBundle->GetStringFromName(NS_ConvertASCIItoUTF16(stringName).get(),
aString);
return rv;
}
nsresult

Просмотреть файл

@ -9,91 +9,9 @@
PR_BEGIN_EXTERN_C
nsresult IMAPGetStringByID(int32_t stringID, PRUnichar **aString);
nsresult IMAPGetStringByName(const char* stringName, PRUnichar **aString);
nsresult IMAPGetStringBundle(nsIStringBundle **aBundle);
PR_END_EXTERN_C
#define IMAP_STATUS_SELECTING_MAILBOX 5000
#define IMAP_STATUS_CREATING_MAILBOX 5001
#define IMAP_STATUS_DELETING_MAILBOX 5002
#define IMAP_STATUS_RENAMING_MAILBOX 5003
#define IMAP_STATUS_LOOKING_FOR_MAILBOX 5004
#define IMAP_STATUS_SUBSCRIBE_TO_MAILBOX 5005
#define IMAP_STATUS_UNSUBSCRIBE_MAILBOX 5006
#define IMAP_STATUS_SEARCH_MAILBOX 5007
#define IMAP_STATUS_MSG_INFO 5008
#define IMAP_STATUS_CLOSE_MAILBOX 5009
#define IMAP_STATUS_EXPUNGING_MAILBOX 5010
#define IMAP_STATUS_LOGGING_OUT 5011
#define IMAP_STATUS_CHECK_COMPAT 5012
#define IMAP_STATUS_SENDING_LOGIN 5013
#define IMAP_STATUS_SENDING_AUTH_LOGIN 5014
#define IMAP_DOWNLOADING_MESSAGE 5015
#define IMAP_GETTING_ACL_FOR_FOLDER 5029
#define IMAP_GETTING_SERVER_INFO 5030
#define IMAP_GETTING_MAILBOX_INFO 5031
#define IMAP_EMPTY_MIME_PART 5032
#define IMAP_RECEIVING_MESSAGE_HEADERS_OF 5036
#define IMAP_RECEIVING_MESSAGE_FLAGS_OF 5037
#define IMAP_DELETING_MESSAGES 5038
#define IMAP_DELETING_MESSAGE 5039
#define IMAP_MOVING_MESSAGES_TO 5040
#define IMAP_MOVING_MESSAGE_TO 5041
#define IMAP_COPYING_MESSAGES_TO 5042
#define IMAP_COPYING_MESSAGE_TO 5043
#define IMAP_FOLDER_RECEIVING_MESSAGE_OF 5045
#define IMAP_DISCOVERING_MAILBOX 5046
#define IMAP_ENTER_PASSWORD_PROMPT 5047
#define IMAP_SERVER_NOT_IMAP4 5048
#define IMAP_SERVER_SAID 5049
#define IMAP_DONE 5050
#define IMAP_ENTER_PASSWORD_PROMPT_TITLE 5051
#define IMAP_UNKNOWN_HOST_ERROR 5052
#define IMAP_CONNECTION_REFUSED_ERROR 5053
#define IMAP_NET_TIMEOUT_ERROR 5054
#define IMAP_NO_NEW_MESSAGES 5056
#define IMAP_DEFAULT_ACCOUNT_NAME 5057
#define IMAP_SPECIAL_CHAR 5065
#define IMAP_PERSONAL_SHARED_FOLDER_TYPE_NAME 5066
#define IMAP_PUBLIC_FOLDER_TYPE_NAME 5067
#define IMAP_OTHER_USERS_FOLDER_TYPE_NAME 5068
#define IMAP_PERSONAL_FOLDER_TYPE_DESCRIPTION 5069
#define IMAP_PERSONAL_SHARED_FOLDER_TYPE_DESCRIPTION 5070
#define IMAP_PUBLIC_FOLDER_TYPE_DESCRIPTION 5071
#define IMAP_OTHER_USERS_FOLDER_TYPE_DESCRIPTION 5072
#define IMAP_ACL_FULL_RIGHTS 5073
#define IMAP_ACL_LOOKUP_RIGHT 5074
#define IMAP_ACL_READ_RIGHT 5075
#define IMAP_ACL_SEEN_RIGHT 5076
#define IMAP_ACL_WRITE_RIGHT 5077
#define IMAP_ACL_INSERT_RIGHT 5078
#define IMAP_ACL_POST_RIGHT 5079
#define IMAP_ACL_CREATE_RIGHT 5080
#define IMAP_ACL_DELETE_RIGHT 5081
#define IMAP_ACL_ADMINISTER_RIGHT 5082
#define IMAP_SERVER_DOESNT_SUPPORT_ACL 5084
#define IMAP_ACL_EXPUNGE_RIGHT 5085
#define IMAP_SERVER_DISCONNECTED 5090
#define IMAP_SUBSCRIBE_PROMPT 5092
#define IMAP_SERVER_DROPPED_CONNECTION 5093
#define IMAP_QUOTA_STATUS_FOLDERNOTOPEN 5095
#define IMAP_QUOTA_STATUS_NOTSUPPORTED 5096
#define IMAP_QUOTA_STATUS_NOQUOTA 5097
#define IMAP_OUT_OF_MEMORY 5100
#define IMAP_COPYING_MESSAGE_OF 5103
#define IMAP_MOVE_FOLDER_TO_TRASH 5105
#define IMAP_DELETE_NO_TRASH 5106
#define IMAP_DELETE_FOLDER_DIALOG_TITLE 5107
#define IMAP_DELETE_FOLDER_BUTTON_LABEL 5108
#define IMAP_AUTH_CHANGE_ENCRYPT_TO_PLAIN_SSL 5110
#define IMAP_AUTH_CHANGE_PLAIN_TO_ENCRYPT 5111
#define IMAP_AUTH_CHANGE_ENCRYPT_TO_PLAIN_NO_SSL 5112
#define IMAP_AUTH_MECH_NOT_SUPPORTED 5113
#define IMAP_AUTH_MECH_FAILED 5114
#define IMAP_AUTH_GSSAPI_FAILED 5115
#define IMAP_LOGIN_DISABLED 5116
#define IMAP_SERVER_COMMAND_FAILED 5117
#define IMAP_FOLDER_COMMAND_FAILED 5118
#define IMAP_SERVER_ALERT 5119
#endif /* _nsImapStringBundle_H__ */

Просмотреть файл

@ -396,7 +396,7 @@ NS_SYNCRUNNABLEMETHOD5(ImapMailFolderSink, SetUrlState, nsIImapProtocol *, nsIMs
NS_SYNCRUNNABLEMETHOD1(ImapMailFolderSink, ReleaseUrlCacheEntry, nsIMsgMailNewsUrl *)
NS_SYNCRUNNABLEMETHOD1(ImapMailFolderSink, HeaderFetchCompleted, nsIImapProtocol *)
NS_SYNCRUNNABLEMETHOD1(ImapMailFolderSink, SetBiffStateAndUpdate, int32_t)
NS_SYNCRUNNABLEMETHOD3(ImapMailFolderSink, ProgressStatus, nsIImapProtocol*, uint32_t, const PRUnichar *)
NS_SYNCRUNNABLEMETHOD3(ImapMailFolderSink, ProgressStatusString, nsIImapProtocol*, const char*, const PRUnichar *)
NS_SYNCRUNNABLEMETHOD4(ImapMailFolderSink, PercentProgress, nsIImapProtocol*, const PRUnichar *, int64_t, int64_t)
NS_SYNCRUNNABLEMETHOD0(ImapMailFolderSink, ClearFolderRights)
NS_SYNCRUNNABLEMETHOD2(ImapMailFolderSink, SetCopyResponseUid, const char *, nsIImapUrl *)
@ -433,10 +433,10 @@ NS_SYNCRUNNABLEMETHOD2(ImapServerSink, PrepareToRetryUrl, nsIImapUrl *, nsIImapM
NS_SYNCRUNNABLEMETHOD1(ImapServerSink, SuspendUrl, nsIImapUrl *)
NS_SYNCRUNNABLEMETHOD2(ImapServerSink, RetryUrl, nsIImapUrl *, nsIImapMockChannel *)
NS_SYNCRUNNABLEMETHOD0(ImapServerSink, AbortQueuedUrls)
NS_SYNCRUNNABLEMETHOD2(ImapServerSink, GetImapStringByID, int32_t, nsAString &)
NS_SYNCRUNNABLEMETHOD2(ImapServerSink, GetImapStringByName, const char*, nsAString &)
NS_SYNCRUNNABLEMETHOD2(ImapServerSink, PromptLoginFailed, nsIMsgWindow *, int32_t *)
NS_SYNCRUNNABLEMETHOD2(ImapServerSink, FEAlert, const nsAString &, nsIMsgMailNewsUrl *)
NS_SYNCRUNNABLEMETHOD2(ImapServerSink, FEAlertWithID, int32_t, nsIMsgMailNewsUrl *)
NS_SYNCRUNNABLEMETHOD2(ImapServerSink, FEAlertWithName, const char*, nsIMsgMailNewsUrl *)
NS_SYNCRUNNABLEMETHOD2(ImapServerSink, FEAlertFromServer, const nsACString &, nsIMsgMailNewsUrl *)
NS_SYNCRUNNABLEMETHOD0(ImapServerSink, CommitNamespaces)
NS_SYNCRUNNABLEMETHOD3(ImapServerSink, AsyncGetPassword, nsIImapProtocol *, bool, nsACString &)

Просмотреть файл

@ -7,404 +7,241 @@
#
# Status - opening folder
## @name IMAP_STATUS_SELECTING_MAILBOX
## @loc None
5000=Opening folder %S…
imapStatusSelectingMailbox=Opening folder %S…
# Status - create folder
## @name IMAP_STATUS_CREATING_MAILBOX
## @loc None
5001=Creating folder…
imapStatusCreatingMailbox=Creating folder…
# Status - deleting a folder
## @name IMAP_STATUS_DELETING_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5002): The "%S" below should not be translated.
# LOCALIZATION NOTE (imapStatusDeletingMailbox): The "%S" below should not be translated.
# Instead, insert "%S" in your translation where you wish to display the name
# of the folder being deleted.
5002=Deleting folder %S…
imapStatusDeletingMailbox=Deleting folder %S…
# Status - renaming mailbox
## @name IMAP_STATUS_RENAMING_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5003): The "%S" below should not be translated.
# LOCALIZATION NOTE (imapStatusRenamingMailbox): The "%S" below should not be translated.
# Instead, insert "%S" in your translation where you wish to display the name
# of the folder being renamed.
5003=Renaming folder %S…
imapStatusRenamingMailbox=Renaming folder %S…
# Status - looking for mailboxes
## @name IMAP_STATUS_LOOKING_FOR_MAILBOX
## @loc None
5004=Looking for folders…
imapStatusLookingForMailbox=Looking for folders…
# Status - subscribing to mailbox
## @name IMAP_STATUS_SUBSCRIBE_TO_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5005): The "%S" below should not be translated.
# LOCALIZATION NOTE (imapStatusSubscribeToMailbox): The "%S" below should not be translated.
# Instead, insert "%S" in your translation where you wish to display the name
# of the folder being subscribed to.
5005=Subscribing to folder %S…
imapStatusSubscribeToMailbox=Subscribing to folder %S…
# Status - unsubscribing from mailbox
## @name IMAP_STATUS_UNSUBSCRIBE_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5005): The "%S" below should not be translated.
# LOCALIZATION NOTE (imapStatusUnsubscribeMailbox): The "%S" below should not be translated.
# Instead, insert "%S" in your translation where you wish to display the name
# of the folder being unsubscribed from.
5006=Unsubscribing from folder %S…
imapStatusUnsubscribeMailbox=Unsubscribing from folder %S…
# Status - searching imap folder
## @name IMAP_STATUS_SEARCH_MAILBOX
## @loc None
5007=Searching folder…
# Status - getting message info
## @name IMAP_STATUS_MSG_INFO
## @loc None
5008=Getting message info…
imapStatusSearchMailbox=Searching folder…
# Status - closing a folder
## @name IMAP_STATUS_CLOSE_MAILBOX
## @loc None
5009=Closing folder…
imapStatusCloseMailbox=Closing folder…
# Status - compacting a folder
## @name IMAP_STATUS_EXPUNGING_MAILBOX
## @loc None
5010=Compacting folder…
imapStatusExpungingMailbox=Compacting folder…
# Status - logging out
## @name IMAP_STATUS_LOGGING_OUT
## @loc None
5011=Logging out…
imapStatusLoggingOut=Logging out…
# Status - checking server capabilities
## @name IMAP_STATUS_CHECK_COMPAT
## @loc None
5012=Checking mail server capabilities…
imapStatusCheckCompat=Checking mail server capabilities…
# Status - logging on
## @name IMAP_STATUS_SENDING_LOGIN
## @loc None
5013=Sending login information…
imapStatusSendingLogin=Sending login information…
# Status - auth logon
## @name IMAP_STATUS_SENDING_AUTH_LOGIN
## @loc None
5014=Sending login information…
imapStatusSendingAuthLogin=Sending login information…
## @name IMAP_DOWNLOADING_MESSAGE
## @loc None
5015=Downloading message…
# Status - downloading message
imapDownloadingMessage=Downloading message…
## @name IMAP_GETTING_ACL_FOR_FOLDER
## @loc None
# LOCALIZATION NOTE (Error 5029): Do not translate the word "ACL" below.
5029=Getting folder ACL…
# Status - getting acl for folder
# LOCALIZATION NOTE (imapGettingACLForFolder): Do not translate the word "ACL" below.
imapGettingACLForFolder=Getting folder ACL…
## @name IMAP_GETTING_SERVER_INFO
## @loc None
5030=Getting Server Configuration Info…
# Status - getting server info
imapGettingServerInfo=Getting Server Configuration Info…
## @name IMAP_GETTING_MAILBOX_INFO
## @loc None
5031=Getting Mailbox Configuration Info…
# Status - getting mailbox info
imapGettingMailboxInfo=Getting Mailbox Configuration Info…
## @name IMAP_EMPTY_MIME_PART
## @loc None
5032=This body part will be downloaded on demand.
# Status - empty mime part
imapEmptyMimePart=This body part will be downloaded on demand.
## @name IMAP_RECEIVING_MESSAGE_HEADERS_OF
## @loc None
# LOCALIZATION NOTE (Error 5036): Do not translate the word "%S" or "%lu" below.
# LOCALIZATION NOTE (imapReceivingMessageHeaders): Do not translate the word "%S" or "%lu" below.
# Place the word %S in your translation where the name of the server should appear.
# Place the word %lu where the number of headers should appear.
5036=%S Downloading message header %lu of %lu
imapReceivingMessageHeaders=%S Downloading message header %lu of %lu
## @name IMAP_RECEIVING_MESSAGE_FLAGS_OF
## @loc None
# LOCALIZATION NOTE (Error 5037): Do not translate the word "%S" or "%lu" below.
# LOCALIZATION NOTE (imapReceivingMessageFlags): Do not translate the word "%S" or "%lu" below.
# Place the word %S in your translation where the name of the server should appear.
# Place the word %lu where the number of flags should appear.
5037=%S Downloading message flag %lu of %lu
imapReceivingMessageFlags=%S Downloading message flag %lu of %lu
## @name IMAP_DELETING_MESSAGES
## @loc None
5038=Deleting messages…
imapDeletingMessages=Deleting messages…
## @name IMAP_DELETING_MESSAGE
## @loc None
5039=Deleting message…
imapDeletingMessage=Deleting message…
## @name IMAP_MOVING_MESSAGES_TO
## @loc None
# LOCALIZATION NOTE (Error 5040): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapMovingMessages): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5040=Moving messages to %S…
imapMovingMessages=Moving messages to %S…
## @name IMAP_MOVING_MESSAGE_TO
## @loc None
# LOCALIZATION NOTE (Error 5041): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapMovingMessage): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5041=Moving message to %S…
imapMovingMessage=Moving message to %S…
## @name IMAP_COPYING_MESSAGES_TO
## @loc None
# LOCALIZATION NOTE (Error 5042): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapCopyingMessages): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5042=Copying messages to %S…
imapCopyingMessages=Copying messages to %S…
## @name IMAP_COPYING_MESSAGE_TO
## @loc None
# LOCALIZATION NOTE (Error 5043): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapCopyingMessage): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5043=Copying message to %S…
imapCopyingMessage=Copying message to %S…
## @name IMAP_FOLDER_RECEIVING_MESSAGE_OF
## @loc None
# LOCALIZATION NOTE (Error 5045): Do not translate the word "%S" or "%lu" below.
# LOCALIZATION NOTE (imapFolderReceivingMessageOf): Do not translate the word "%S" or "%lu" below.
# Place the word %S in your translation where the name of the folder should appear.
# Place the word %lu where the number of headers should appear.
5045=%S - Downloading message %lu of %lu
imapFolderReceivingMessageOf=%S - Downloading message %lu of %lu
## @name IMAP_DISCOVERING_MAILBOX
## @loc None
# LOCALIZATION NOTE (Error 5046): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapDiscoveringMailbox): Do not translate the word "%S" below.
# Place the word %S in your translation where the name of the folder should appear.
5046=Found folder: %S
imapDiscoveringMailbox=Found folder: %S
## @name IMAP_ENTER_PASSWORD_PROMPT
## @loc None
# LOCALIZATION NOTE (Error 5047): Do not translate the word %S below.
# LOCALIZATION NOTE (imapEnterPasswordPrompt): Do not translate the word %S below.
# Place the word "%S" in your translation where the email address
# or the username should appear
5047=Enter your password for %S:
imapEnterPasswordPrompt=Enter your password for %S:
## @name IMAP_SERVER_NOT_IMAP4
## @loc None
# LOCALIZATION NOTE (Error 5048): Do not translate the word "IMAP4" below.
5048=Mail server %S is not an IMAP4 mail server.
# LOCALIZATION NOTE (imapServerNotImap4): Do not translate the word "IMAP4" below.
imapServerNotImap4=Mail server %S is not an IMAP4 mail server.
## @name IMAP_DONE
## @loc None
5050=
# This is intentionally left blank.
imapDone=
## @name IMAP_ENTER_PASSWORD_PROMPT_TITLE
## @loc None
5051=Mail Server Password Required
imapEnterPasswordPromptTitle=Mail Server Password Required
## @name IMAP_UNKNOWN_HOST_ERROR
## @loc None
5052=Failed to connect to server %S.
imapUnknownHostError=Failed to connect to server %S.
## @name IMAP_IMAP_CONNECTION_REFUSED_ERROR
## @loc None
5053=Could not connect to mail server %S; the connection was refused.
imapConnectionRefusedError=Could not connect to mail server %S; the connection was refused.
## @name IMAP_NET_TIMEOUT_ERROR
## @loc None
5054=Connection to server %S timed out.
imapNetTimeoutError=Connection to server %S timed out.
# Status - no messages to download
## @name IMAP_NO_NEW_MESSAGES
## @loc None
5056=There are no new messages on the server.
imapNoNewMessages=There are no new messages on the server.
## @name IMAP_DEFAULT_ACCOUNT_NAME
## @loc None
5057=Mail for %S
imapDefaultAccountName=Mail for %S
## @name IMAP_SPECIAL_CHAR
## @loc None
5065= The %c character is reserved on this imap server. Please choose another name.
imapSpecialChar= The %c character is reserved on this imap server. Please choose another name.
## @name IMAP_PERSONAL_SHARED_FOLDER_TYPE_NAME
## @loc None
5066=Personal Folder
imapPersonalSharedFolderTypeName=Personal Folder
## @name IMAP_PUBLIC_FOLDER_TYPE_NAME
## @loc None
5067=Public Folder
imapPublicFolderTypeName=Public Folder
## @name IMAP_OTHER_USERS_FOLDER_TYPE_NAME
## @loc None
5068=Other User's Folder
imapOtherUsersFolderTypeName=Other User's Folder
## @name IMAP_PERSONAL_FOLDER_TYPE_DESCRIPTION
## @loc None
5069=This is a personal mail folder. It is not shared.
imapPersonalFolderTypeDescription=This is a personal mail folder. It is not shared.
## @name IMAP_PERSONAL_SHARED_FOLDER_TYPE_DESCRIPTION
## @loc None
5070=This is a personal mail folder. It has been shared.
imapPersonalSharedFolderTypeDescription=This is a personal mail folder. It has been shared.
## @name IMAP_PUBLIC_FOLDER_TYPE_DESCRIPTION
## @loc None
5071=This is a public folder.
imapPublicFolderTypeDescription=This is a public folder.
## @name IMAP_OTHER_USERS_FOLDER_TYPE_DESCRIPTION
## @loc None
5072=This is a mail folder shared by the user '%S'.
imapOtherUsersFolderTypeDescription=This is a mail folder shared by the user '%S'.
## @name IMAP_ACL_FULL_RIGHTS
## @loc None
5073=Full Control
imapAclFullRights=Full Control
## @name IMAP_ACL_LOOKUP_RIGHT
## @loc None
5074=Lookup
imapAclLookupRight=Lookup
## @name IMAP_ACL_READ_RIGHT
## @loc None
5075=Read
imapAclReadRight=Read
## @name IMAP_ACL_SEEN_RIGHT
## @loc None
5076=Set Read/Unread State
imapAclSeenRight=Set Read/Unread State
## @name IMAP_ACL_WRITE_RIGHT
## @loc None
5077=Write
imapAclWriteRight=Write
## @name IMAP_ACL_INSERT_RIGHT
## @loc None
5078=Insert (Copy Into)
imapAclInsertRight=Insert (Copy Into)
## @name IMAP_ACL_POST_RIGHT
## @loc None
5079=Post
imapAclPostRight=Post
## @name IMAP_ACL_CREATE_RIGHT
## @loc None
5080=Create Subfolder
imapAclCreateRight=Create Subfolder
## @name IMAP_ACL_DELETE_RIGHT
## @loc None
5081=Delete Messages
imapAclDeleteRight=Delete Messages
## @name IMAP_ACL_ADMINISTER_RIGHT
## @loc None
5082=Administer Folder
imapAclAdministerRight=Administer Folder
## @name IMAP_SERVER_DOESNT_SUPPORT_ACL
## @loc None
5084=This server does not support shared folders.
imapServerDoesntSupportAcl=This server does not support shared folders.
## @name IMAP_ACL_EXPUNGE_RIGHT
## @loc None
5085=Expunge
imapAclExpungeRight=Expunge
## @name IMAP_SERVER_DISCONNECTED
## @loc None
5090= Server %S has disconnected. The server may have gone down or there may be a network problem.
imapServerDisconnected= Server %S has disconnected. The server may have gone down or there may be a network problem.
# LOCALIZATION NOTE (autoSubscribeText): %1$S is the imap folder.
5092=Would you like to subscribe to %1$S?
imapSubscribePrompt=Would you like to subscribe to %1$S?
## @name IMAP_SERVER_DROPPED_CONNECTION
## @loc None
5093=Unable to connect to your IMAP server. You may have exceeded the maximum number \
imapServerDroppedConnection=Unable to connect to your IMAP server. You may have exceeded the maximum number \
of connections to this server. If so, use the Advanced IMAP Server Settings dialog to \
reduce the number of cached connections.
## @name IMAP_QUOTA_STATUS_FOLDERNOTOPEN
## @loc None
5095=Quota information is not available because the folder is not open.
imapQuotaStatusFolderNotOpen=Quota information is not available because the folder is not open.
## @name IMAP_QUOTA_STATUS_NOTSUPPORTED
## @loc None
5096=This server does not support quotas.
imapQuotaStatusNotSupported=This server does not support quotas.
## @name IMAP_QUOTA_STATUS_NOQUOTA
## @loc None
5097=There are no storage quotas on this folder.
imapQuotaStatusNoQuota=There are no storage quotas on this folder.
# Out of memory
## @name IMAP_OUT_OF_MEMORY
## @loc None
5100=Application is out of memory.
imapOutOfMemory=Application is out of memory.
## @name IMAP_COPYING_MESSAGE_OF
## @loc None
# LOCALIZATION NOTE (Error 5103): Do not translate the word "%S" below.
# LOCALIZATION NOTE (imapCopyingMessageOf): Do not translate the word "%S" below.
# Place the word %3$S in your translation where the name of the destination folder should appear.
# Place the word %1$S where the currently copying message should appear.
# Place the word %2$S where the total number of messages should appear.
5103=Copying Message %1$S of %2$S to %3$S
imapCopyingMessageOf=Copying Message %1$S of %2$S to %3$S
## @name IMAP_MOVE_FOLDER_TO_TRASH
## @loc None
# LOCALIZATION NOTE (5105): Do not translate the word %S below.
# LOCALIZATION NOTE (imapMoveFolderToTrash): Do not translate the word %S below.
# "%S" is the name of the folder.
5105=Are you sure you want to delete the folder '%S'?
imapMoveFolderToTrash=Are you sure you want to delete the folder '%S'?
## @name IMAP_DELETE_NO_TRASH
## @loc None
# LOCALIZATION NOTE (5106): Do not translate the word %S below.
# LOCALIZATION NOTE (imapDeleteNoTrash): Do not translate the word %S below.
# "%S" is the name of the folder.
5106=Deleting this folder is not undoable and will delete all of the messages it contains, and its sub-folders. Are you sure you still want to delete the folder '%S'?
imapDeleteNoTrash=Deleting this folder is not undoable and will delete all of the messages it contains, and its sub-folders. Are you sure you still want to delete the folder '%S'?
## @name IMAP_DELETE_FOLDER_DIALOG_TITLE
## @loc None
5107=Delete Folder
imapDeleteFolderDialogTitle=Delete Folder
## @name IMAP_DELETE_FOLDER_BUTTON_LABEL
## @loc None
5108=&Delete Folder
imapDeleteFolderButtonLabel=&Delete Folder
## @name IMAP_AUTH_CHANGE_ENCRYPT_TO_PLAIN_SSL
## @loc None
# LOCALIZATION NOTE (5110): %S is the server hostname
5110=The IMAP server %S does not seem to support encrypted passwords. If you just set up this account, please try changing to 'Normal password' as the 'Authentication method' in the 'Account Settings | Server settings'. If it used to work and now suddenly fails, please contact your email administrator or provider.
# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainSSL): %S is the server hostname
imapAuthChangeEncryptToPlainSSL=The IMAP server %S does not seem to support encrypted passwords. If you just set up this account, please try changing to 'Normal password' as the 'Authentication method' in the 'Account Settings | Server settings'. If it used to work and now suddenly fails, please contact your email administrator or provider.
## @name IMAP_AUTH_CHANGE_PLAIN_TO_ENCRYPT
## @loc None
# LOCALIZATION NOTE (5111): %S is the server hostname
5111=The IMAP server %S does not allow plaintext passwords. Please try changing to 'Encrypted password' as the 'Authentication method' in the 'Account Settings | Server settings'.
# LOCALIZATION NOTE (imapAuthChangePlainToEncrypt): %S is the server hostname
imapAuthChangePlainToEncrypt=The IMAP server %S does not allow plaintext passwords. Please try changing to 'Encrypted password' as the 'Authentication method' in the 'Account Settings | Server settings'.
## @name IMAP_AUTH_CHANGE_ENCRYPT_TO_PLAIN_NO_SSL
## @loc None
# LOCALIZATION NOTE (5112): %S is the server hostname
5112=The IMAP server %S does not seem to support encrypted passwords. If you just set up the account, please try changing to 'Password, transmitted insecurely' as the 'Authentication method' in the 'Account Settings | Server settings'. If it used to work and now suddenly fails, this is a common scenario how someone could steal your password.
# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainNoSSL): %S is the server hostname
imapAuthChangeEncryptToPlainNoSSL=The IMAP server %S does not seem to support encrypted passwords. If you just set up the account, please try changing to 'Password, transmitted insecurely' as the 'Authentication method' in the 'Account Settings | Server settings'. If it used to work and now suddenly fails, this is a common scenario how someone could steal your password.
## @name IMAP_AUTH_MECH_NOT_SUPPORTED
## @loc None
# LOCALIZATION NOTE (5113): %S is the server hostname
5113=The IMAP server %S does not support the selected authentication method. Please change the 'Authentication method' in the 'Account Settings | Server settings'.
# LOCALIZATION NOTE (imapAuthMechFailed): %S is the server hostname
imapAuthMechFailed=All login mechanisms for %S failed. Please check the password or change the 'Authentication method' in the 'Account Settings | Server settings'.
## @name IMAP_AUTH_MECH_FAILED
## @loc None
# LOCALIZATION NOTE (5114): %S is the server hostname
5114=All login mechanisms for %S failed. Please check the password or change the 'Authentication method' in the 'Account Settings | Server settings'.
# LOCALIZATION NOTE (imapAuthGssapiFailed): %S is the server hostname
imapAuthGssapiFailed=The Kerberos/GSSAPI ticket was not accepted by the IMAP server %S. Please check that you are logged in to the Kerberos/GSSAPI realm.
## @name IMAP_AUTH_GSSAPI_FAILED
## @loc None
# LOCALIZATION NOTE (5115): %S is the server hostname
5115=The Kerberos/GSSAPI ticket was not accepted by the IMAP server %S. Please check that you are logged in to the Kerberos/GSSAPI realm.
## @name IMAP_LOGIN_DISABLED
## @loc None
# LOCALIZATION NOTE (5116): %S is the account name
5116=You cannot log in to %S because the server doesn't allow plaintext authentication without STARTTLS or SSL/TLS. Try enabling connection security or secure authentication in the account settings.
## @name IMAP_SERVER_COMMAND_FAILED
## @loc None
# LOCALIZATION NOTE (5117):
# LOCALIZATION NOTE (imapServerCommandFailed):
# Place the word %1$S in your translation where the name of the account name should appear.
# Place the word %2$S in your translation where the server response should appear.
5117=The current command did not succeed. The mail server for account %1$S responded: %2$S
imapServerCommandFailed=The current command did not succeed. The mail server for account %1$S responded: %2$S
## @name IMAP_FOLDER_COMMAND_FAILED
## @loc None
# LOCALIZATION NOTE (5118): Do not translate the word %S below.
# LOCALIZATION NOTE (imapFolderCommandFailed): Do not translate the word %S below.
# Place the word %1$S in your translation where the name of the account should appear.
# Place the word %2$S in your translation where the name of the folder should appear.
# Place the word %3$S in your translation where the server response should appear.
5118=The current operation on '%2$S' did not succeed. The mail server for account %1$S responded: %3$S
imapFolderCommandFailed=The current operation on '%2$S' did not succeed. The mail server for account %1$S responded: %3$S
## @name IMAP_SERVER_ALERT
## @loc None
# LOCALIZATION NOTE (5119):
# LOCALIZATION NOTE (imapServerAlert):
# Place the word %1$S in your translation where the name of the account should appear.
# Place the word %2$S in your translation where the alert from the server should appear.
5119=Alert from account %1$S: %2$S
imapServerAlert=Alert from account %1$S: %2$S