Closed Bug 124449 Opened 23 years ago Closed 19 years ago

"Send Later" fails after deleting the default account in this case, can't define another Unsent Messages folder

Categories

(SeaMonkey :: MailNews: Message Display, defect, P2)

x86
All
defect

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 40692
mozilla1.2alpha

People

(Reporter: nbaca, Assigned: Bienvenu)

References

Details

Trunk 2002-02-04: WinMe

This is probably a dupe but I couldn't find the orignal bug.

Overview: "Send Later" fails after deleting the default account in this case.
Since there is no way in the UI to define an Unsent Messages folder the user can
never use the "Send Later" feature for this profile.

Steps to reproduce:
1. In Comm 4.x open a profile with a POP account
2. In 4.x create a message and do a Send Later (you'll notice that the account
has an Unsent Messages folder)
3. Select File|Unsent Messages
4. Exit from 4.x
5. Migrate the same profile into 6.x (Unsent Messages folder is still in the POP
account)
6. Add a second mail account to the profile so 2 mail accounts are present (now
both accounts will use the Unsent Messages folder in the first POP account when
performing a Send Later)
7. Delete the first POP account
8. Create a message and select File|Send Later

Actual Results: It fails because it can't find the Unsent Messages folder, even
though another one exists under Local Folders.  Exit/Restart the app and the
problem still exists. There is no way to define another Unsent Messages folder

Workaround: I don't see an obvious workaround in the UI. Is there a pref that
can be edited or added?

Expected Results: If it can't find an Unsent Messages folder then it should use
the one that is under Local Folders or give me the option in the prefs to define
an Unsent Messages folder.
Marking nsbeta1 because there should be a way for user's to control what Unsent
Messages folder to use. Atleast supply a workaround for this case.
Keywords: nsbeta1
this issue seems to be mentioned in bug 122019 Comment #4
QA Contact: esther → nbaca
Status: NEW → ASSIGNED
Keywords: nsbeta1nsbeta1+
Priority: -- → P2
Target Milestone: --- → mozilla1.0
nsbeta1- per ADT triage, ->1.2, blocks 'miracle bug' 122274
Blocks: 122274
Keywords: nsbeta1+nsbeta1-
Target Milestone: mozilla1.0 → mozilla1.2
I think I am experiencing this same problem using 1.4b (5/14 nightly build).

The "Send Later" function generates a "Send Later Error" dialog that says:

"Unable to save your message in order to send it later.  Please verify
that your Mail & Newsgroups account settings are correct and try again."

Initially, I did not have an "Unsent Messages" folder so I created one and
restarted Mozilla.  The problem still occurs.
problem still occurs with brandnew Mozilla 1.4 RC2. If I compose an email and
then press File -> Send Later the email even seems to be lost!! very ugly!
I also experienced this problem when I messed a bit with my accounts. I have 2 
and the Local Folders is 3rd. Then I found out a workaround. There is a pref in 
prefs.js which specifies the 'unsent messages' folder, it is called 
mail.default_sendlater_uri . Edit this and all is ok. 

The default is
pref("mail.default_sendlater_uri","mailbox://nobody@Local%20Folders/Unsent%
20Messages");

I don't know how it can point somewhere else (set in prefs.js), maybe it has 
something to do with a default account (as called by the reporter). Anyway, if 
you set it back to "Local Folders/Unsent Messages", there should be no problems 
later. Local folders should never be deleted (although they easily can be, if 
no such hidden function is using them). Of course, now you will have to have 
Local Folders open (expanded) to see the unsent messages, which takes vertical 
space...

I hope this helps.
I'm not sure if this is related, but at least twice now trying to use "Send
Later" has made those messages evaporate forever. (This is a major bummer.) I
have had to delete (or lost) a couple profiles due to disk failures and so that
is similar to the bug here. But, I am on a PC running Debian GNU/Linux and using
a Mozilla 1.5b recent nightly build. I think the first time this happened I was
probably on 1.5a or a 1.4 build.

Possible workaround: Tell users to always "save as draft" before using "send
later". At least that's what I'm going to try to avoid losing any more messages.
I confirm, it does not work under 1.6b.
See also bug 155439
I may have found a workaround for this bug.

This is what I have done:
1. I have created 'Unsent Folder' folder in my default account.
2. I have opened about:config and searched for mail.default_sendlater_uri
3. I have edited (modified) the content from th enonexisting NS 4.7x path to new
Mozilla path, eg something like
mailbox://username@accountfolder.net/Unsent%20Messages
4. Restarted Mozilla and tried again and it works now!
Yeah, this is what I said in comment 6, I just left more space for experimenting :)

Another workaround could be to set the second account to be the default and then
delete the first one.

The migration of profiles from NN4x probably isn't important in this problem.
I meant, isn't important because MailNews should detect this case even if the
account wasn't migrated from NN. I think the correct fix for this bug would be
to detect if the current target of the default_send_later_uri is invalidated -
the folder is moved or (whole account) deleted. The target even doesn't need to
be in the default account. And somebody could even delete Local Folders (if it
isn't protected very good). Therefore, anytime the target dissappears, ask the
user what to do now - allow to select another account and create Unsent Messages
folder there if not existant.

OS is All and the target milestone is old ;)
Assignee: sspitzer → bienvenu
Status: ASSIGNED → NEW
(In reply to comment #4)
> The "Send Later" function generates a "Send Later Error" dialog that says:
> 
> "Unable to save your message in order to send it later.  Please verify
> that your Mail & Newsgroups account settings are correct and try again."

My previous suggestion would be a bit slow, it would have to observe all folder
manipulations and be harder to code. What about this:
1. In the above mentioned error dialog, write the folder where Moz tried to
write the message and failed (simply paste the value of default_sendlater_uri,
maybe format it somehow).
2. The user would immediatelly see what is the problem. He would see that that
folder doesn't exist. Because he deleted it. "Verify your account settings"
isn't much helpful and scares off inexperienced users.
3. Offer the user to select a new folder for Unsent messages. There already
exist widgets to allow selection of mail folder. There just has to be a
possibility to create a new one. After the user selects the path, it is written
as the new value of default_sendlater_uri. And the message is automatically
saved again. If that fails again, continue at step 1 :)

Of course offer some cancel button somewhere.

I think this would be much easier to code (for somebody who knows Moz
internals), it reuses existing functions. No need to add some new checks into
folder operations. And it would even work if someone deleted the sendlater_uri
folder while Moz was not running (manually editing prefs.js and disk folder).

David: OS: All, Severity: at least major. Only(!) migrated Netscape users can be
hit by this and can't use MailNews once this happens. It is broken for them and
have no way to fix it without knowledge of this workaround (editing hidden
prefs). This isn't nice.
Product: Browser → Seamonkey

*** This bug has been marked as a duplicate of 40692 ***
Status: NEW → RESOLVED
Closed: 19 years ago
OS: Windows ME → All
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.