stuff for primary email attribute

git-svn-id: svn://10.0.0.236/branches/MAIL_05312002_BRANCH@125161 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
shliang%netscape.com
2002-07-14 00:05:15 +00:00
parent c832ba7812
commit 81deeb0156
4 changed files with 25 additions and 3 deletions

View File

@@ -65,6 +65,7 @@
#define kNicknameColumn "NickName"
#define kPriEmailColumn "PrimaryEmail"
#define k2ndEmailColumn "SecondEmail"
#define kPrimaryColumn "Primary"
#define kPreferMailFormatColumn "PreferMailFormat"
#define kWorkPhoneColumn "WorkPhone"
#define kHomePhoneColumn "HomePhone"

View File

@@ -348,7 +348,7 @@ NS_IMETHODIMP nsAbCardProperty::GetCardValue(const char *attrname, PRUnichar **v
case 'P':
switch (attrname[2]) {
case 'e':
PRUint32 format;
PRUint32 format;
rv = GetPreferMailFormat(&format);
const PRUnichar *formatStr;
@@ -370,7 +370,10 @@ NS_IMETHODIMP nsAbCardProperty::GetCardValue(const char *attrname, PRUnichar **v
rv = GetPagerNumber(value);
break;
case 'i':
rv = GetPrimaryEmail(value);
if (attrname[7] == 'E')
rv = GetPrimaryEmail(value);
else
rv = GetPrimary(*value);
break;
default:
rv = NS_ERROR_UNEXPECTED;
@@ -571,7 +574,10 @@ NS_IMETHODIMP nsAbCardProperty::SetCardValue(const char *attrname, const PRUnich
rv = SetPagerNumber(value);
break;
case 'i':
rv = SetPrimaryEmail(value);
if (attrname[7] == 'E')
rv = SetPrimaryEmail(value);
else
rv = SetPrimary(*value);
break;
default:
rv = NS_ERROR_UNEXPECTED;

View File

@@ -106,6 +106,7 @@ nsAddrDatabase::nsAddrDatabase()
m_NickNameColumnToken(0),
m_PriEmailColumnToken(0),
m_2ndEmailColumnToken(0),
m_PrimaryColumnToken(0),
m_WorkPhoneColumnToken(0),
m_HomePhoneColumnToken(0),
m_FaxColumnToken(0),
@@ -1054,6 +1055,7 @@ nsresult nsAddrDatabase::InitMDBInfo()
GetStore()->StringToToken(GetEnv(), kPriEmailColumn, &m_PriEmailColumnToken);
GetStore()->StringToToken(GetEnv(), kLowerPriEmailColumn, &m_LowerPriEmailColumnToken);
GetStore()->StringToToken(GetEnv(), k2ndEmailColumn, &m_2ndEmailColumnToken);
GetStore()->StringToToken(GetEnv(), k2ndEmailColumn, &m_PrimaryColumnToken);
GetStore()->StringToToken(GetEnv(), kPreferMailFormatColumn, &m_MailFormatColumnToken);
GetStore()->StringToToken(GetEnv(), kWorkPhoneColumn, &m_WorkPhoneColumnToken);
GetStore()->StringToToken(GetEnv(), kHomePhoneColumn, &m_HomePhoneColumnToken);
@@ -1158,6 +1160,10 @@ nsresult nsAddrDatabase::AddAttributeColumnsToRow(nsIAbCard *card, nsIMdbRow *ca
card->GetSecondEmail(getter_Copies(unicodeStr));
Add2ndEmail(cardRow, NS_ConvertUCS2toUTF8(unicodeStr).get());
PRUint16 primary = 0;
card->GetPrimary(&primary);
AddPrimary(cardRow, primary);
PRUint32 format = nsIAbPreferMailFormat::unknown;
card->GetPreferMailFormat(&format);
@@ -2343,6 +2349,11 @@ nsresult nsAddrDatabase::GetCardFromDB(nsIAbCard *newCard, nsIMdbRow* cardRow)
newCard->SetSecondEmail(tempString.get());
}
PRUint32 primary = 0;
err = GetIntColumn(cardRow, m_PrimaryColumnToken, &primary, 0);
if (NS_SUCCEEDED(err))
newCard->SetPrimary(primary);
PRUint32 format = nsIAbPreferMailFormat::unknown;
err = GetIntColumn(cardRow, m_MailFormatColumnToken, &format, 0);
if (NS_SUCCEEDED(err))

View File

@@ -120,6 +120,9 @@ public:
NS_IMETHOD Add2ndEmail(nsIMdbRow * row, const char * value)
{ return AddCharStringColumn(row, m_2ndEmailColumnToken, value); }
NS_IMETHOD AddPrimary(nsIMdbRow * row, PRUint16 value)
{ return AddIntColumn(row, m_PrimaryColumnToken, value); }
NS_IMETHOD AddPreferMailFormat(nsIMdbRow * row, PRUint32 value)
{ return AddIntColumn(row, m_MailFormatColumnToken, value); }
@@ -350,6 +353,7 @@ protected:
mdb_token m_NickNameColumnToken;
mdb_token m_PriEmailColumnToken;
mdb_token m_2ndEmailColumnToken;
mdb_token m_PrimaryColumnToken;
mdb_token m_WorkPhoneColumnToken;
mdb_token m_HomePhoneColumnToken;
mdb_token m_FaxColumnToken;