Closed
Bug 57839
Opened 24 years ago
Closed 23 years ago
'Local Folders' not created after cancel Wiz & import settings
Categories
(SeaMonkey :: MailNews: Account Configuration, defect, P2)
Tracking
(Not tracked)
VERIFIED
FIXED
mozilla0.9.2
People
(Reporter: nbaca, Assigned: chuang)
References
Details
(Whiteboard: [nsbeta1+][PDT+]have fix)
Attachments
(5 files)
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
Details | Diff | Splinter Review |
Branch build 2000-10-23-09MN6: NT4
Overview: In a new profile cancel out of the Account Wizard and Import. The
problem is that "Local Folders" is never created.
Steps to reproduce:
1. Create a new profile
2. Open mail and the Account Wizard appears
3. Select the 'Cancel' button and focus is in the 3-pane
4. Select File|Import and the Mail Import Wizard appears
5. Select the Mail radio button, select Next
6. Select Eudora, select Next
7. After it finishes importing select the Finish button
Actual Results: A Eudora folder appears but "Local Folders" is not created.
It also does not appear in Account Settings. Adding another type of account
(i.e. POP) also did not create a "Local Folders".
Expected Results: A "Local Folders" account should exist even if you have only
imported an account. This is important because you may add other types of
account such as IMAP or a Newsgroup which automatically depends on these folders
to exist.
Reporter | ||
Comment 1•24 years ago
|
||
Interesting...the Eudora folder has the same folders that "Local Folders" would
have (i.e. Unsent Messages, Sent, Drafts, Templates...). I suppose that the
Eudora folder is taking the place of "Local Folders".
The IMAP 'Copies and Folders' settings point to Eudora. When creating a message
I can successfully Save as Draft, Save as Template and sent messages are copied
to the Eudora Sent folder. So in general this is working.
When creating a message and selecting File|Send Later, the message never gets t
the Unsent Messages folder but I'll log a seperate bug on this issue.
Reporter | ||
Updated•24 years ago
|
QA Contact: esther → nbaca
Reporter | ||
Comment 2•24 years ago
|
||
Marking nsbeta1. Shouldn't we see a Local Folders folder or should we assume
that the imported "Mail" account takes the place of Local Folders.
If "Settings" are imported then a Local Folders folder is created.
Keywords: nsbeta1
Comment 3•24 years ago
|
||
marking nsbeta1-
Reporter | ||
Comment 4•24 years ago
|
||
Changing nsbeta1- back to nsbeta1. I would like this reconsidered because:
1. Now the "Unsent Messages" folder no longer appears which makes the Send Later
function fail. This is a basic function that should work.
Steps to reproduce:
- Open Account Settings, Copies and Folders panel and deselect the checkbox for
the Sent folder.
- Create a new message
- File|Send Later
Actual Results: A message appears "Your Send operation was successful, but
copying the message to your Sent folder failed. Would you like to return to the
composer window?". I'm not sure why this message appears since I disabled the
option to place a copy in the Sent folder. After selecting OK, the message
reappears in the Compose window. I tried selecting "File|Send Unsent Messages"
but there is no indication that a message is sent and it is never received.
2. This was not mentioned before but since the Local Folders subfolders do not
exist then the preformatted templates (American Greetings) also do not appear.
Not sure if this is important for contractural reasons. If it is then I can log
a seperate bug in Bugscape.
Reporter | ||
Comment 5•24 years ago
|
||
Update....
- File|Import|Eudora "Mail", creates a folder structure similar to Local Folders
which includes the Unsent Messages Folder and the Templates.
- File|Import|Eudora "Settings", does Not create a folder structure similar to
Local Folders.
Workaround: Add another account (POP, IMAP or News) and Local Folders and all
its folders also appear such as Unsent Messages. I was able to use the Send
Later function using this workaround.
Reporter | ||
Comment 6•24 years ago
|
||
Changing Summary from "Local Folders" not created after canceling Wiz and
Importing" to "'Local Folders' not created after cancel Wiz & import settings"
Summary: "Local Folders" not created after canceling Wiz and Importing → 'Local Folders' not created after cancel Wiz & import settings
Comment 7•24 years ago
|
||
marking nsbeta1+ and moving to mozilla0.9
Priority: P3 → P2
Whiteboard: [nsbeta1+]
Target Milestone: Future → mozilla0.9
Reporter | ||
Comment 11•24 years ago
|
||
*** Bug 82506 has been marked as a duplicate of this bug. ***
Comment 12•24 years ago
|
||
to fix this, use get the nsIMessengerMigrator service and use the
createLocalMailAccount() method on that interface.
Assignee | ||
Comment 13•24 years ago
|
||
Assignee | ||
Comment 14•24 years ago
|
||
The fix checks if the local folder exists, then create it when import mail is
successful.
Status: NEW → ASSIGNED
Whiteboard: [nsbeta1+] → [nsbeta1+]Have Fix
Comment 15•24 years ago
|
||
adding PDT+. Please check into trunk as soon as possible.
Whiteboard: [nsbeta1+]Have Fix → [nsbeta1+][PDT+]Have Fix
Comment 16•24 years ago
|
||
r=bhuvan.
Comment 17•23 years ago
|
||
while reviewing your fix, I think there is another problem with importing that
will affect your fix.
when the user successfully import settings, we need to call
verifyLocalFoldersAccount() [which currently lives in AccountWizard.js]
if the user cancelled, we need to check if local folders exists, and if not,
create it. (which is what your patch does.) the logic your patch should be
moved into a new function. you can't call verifyLocalFoldersAccount(), because
you will not have an account.
Comment 18•23 years ago
|
||
yes, what I described is a seperate bug, but you can fix it cleanly here.
create a new profile. before launching mail, import outlook express settings.
launch mail, you will not have a "local folders" account.
I'll go log another bug for that.
Your fix should be like this:
+ if (isMail) {
+ if (good) {
+ verifyLocalFoldersAccount(account);
+ }
+ else {
+ verifyLocalFoldersAccount(null);
+ }
+ }
and then you'll have to fix verifyLocalFoldersAccount() work properly when
called with null.
Comment 19•23 years ago
|
||
I logged the other issue as #85219, but you should fix them together.
removing "have fix" from status whiteboard.
Whiteboard: [nsbeta1+][PDT+]Have Fix → [nsbeta1+][PDT+]
Assignee | ||
Comment 20•23 years ago
|
||
Assignee | ||
Comment 21•23 years ago
|
||
Assignee | ||
Comment 22•23 years ago
|
||
The fix is for importing Mail and Settings before the mail window open or after
cancel the Mail account wizard (this bug and bug85219). There are two patches,
one in importDialog.js and one in nsMsgAccountManager.cpp.
The fix is checking if Local Folder exists. If not, create the Local Folder
after import is succeeded. I can't do the code as Seth suggested since the
acctMgr.localFoldersServer(used to check if the local folder exists)is valid
after the importing the Mail even though there's no Local Folder.
The fix in nsMsgAccountManager.cpp is needed when importing from navigator.
(m_prefs is not initialized).
Whiteboard: [nsbeta1+][PDT+] → [nsbeta1+][PDT+]have fix
Comment 23•23 years ago
|
||
can you elaborate on why GetLocalFoldersServer() succeeds? which server is it
finding?
I can see why it would succeed when importing eudora mail, but not eudora settings.
here's why:
when you import settings, you'll create "pop3" or "imap" servers. when you
import mail, we'll create "none" servers. "Local Folders" is an example of a
"none" server.
GetLocalFoldersServer() will look for the server that matches ("nobody","Local
Folders","none"), and work down to any "none" server.
so, if the user starts up, and imports mail from eudora (not settings, just the
mail), we'll have a "none" server and GetLocalFoldersServer() will return
success! and, in that case, "local folders" will not get created (which is the
bug we are trying to fix, except for "mail" not "settings").
what if you removed the last test in GetLocalFoldersServer()?
we currently do this:
rv = FindServer("nobody","Local Folders","none",aServer);
rv = FindServer("nobody",nsnull,"none",aServer);
rv = FindServer(nsnull,"Local Folders","none",aServer);
rv = FindServer(nsnull,nsnull,"none",aServer);
that last test is too eager. if we remove it, GetLocalFoldersServer() will not
succeed when importing eudora mail. (can you check this theory out?)
I believe the original reason GetLocalFoldersServer() did all those tests was we
switched from "LocalMail" -> "Local Folders" at one point, so we had to handle
both. but we can remove the final test, and still be safe.
to summarize:
your fix looks like it will work "'Local Folders' not created after cancel Wiz &
import settings", but not for "'Local Folders' not created after cancel Wiz &
import mail"
I think you can fix both cases by tweaking GetLocalFoldersServer()
can you investigate that and if I'm right, attach a new patch?
Assignee | ||
Comment 24•23 years ago
|
||
This patch works for the following cases.
For a new profile or a profile without mail account->
1. Importing Mail for Outlook Express, Outlook and Eudora.
a. From Navigator, do import.
b. From Mail window, Cancel the Mail account Wizard, do import.
2. Importing Setting Outlook Express, Outlook and Eudora.
a. From Navigator, do import.
b. From Mail window, Cancel the Mail account Wizard, do import.
Local folder is created for all cases (12 cases).
I check localFoldersServer (GetLocalFoldersServer()) before the import starts,
so for a new profile in either cases "Mail" or Setting", there's no local folder
exists. After the import is done, I called the createLocalMailAccount() if I
have to create it.
I can't check localFoldersServer after the import is done for importing "Mail",
the localFoldersServer is valid even if there's no local folder created. Maybe
it's a bug in account manager, but I don't think it's part of this bug.
Comment 25•23 years ago
|
||
ok, "I check localFoldersServer (GetLocalFoldersServer()) before the import
starts" that explains why it works.
please add a comment to your code about why you have to check it before you
import. the reason is if you check after importing mail (not settings), we'll
have created an account with an incoming server of type "none", and
(GetLocalFoldersServer() will find and return that.
once you add that comment, sr=sspitzer
Assignee | ||
Comment 26•23 years ago
|
||
Assignee | ||
Comment 27•23 years ago
|
||
Assignee | ||
Comment 28•23 years ago
|
||
I have added the comment in the import patch. This fix has two patches, one
import and one in base/src.
Assignee | ||
Comment 29•23 years ago
|
||
getting drivers approval
Comment 30•23 years ago
|
||
sr=sspitzer on the final patch.
Comment 31•23 years ago
|
||
a= asa@mozilla.org for checkin to the trunk.
(on behalf of drivers)
Blocks: 83989
Assignee | ||
Comment 32•23 years ago
|
||
Fix checked in
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Reporter | ||
Comment 33•23 years ago
|
||
Build 2001-06-20-04: WinMe
Build 2001-06-20-08: Mac 9.04
Verified Fixed
(Checked all scenarios that Candice stated on Windows, and Eudora scenarios on
the Mac)
Status: RESOLVED → VERIFIED
Updated•20 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•