emailservices/nmutilities/src/emailmailboxinfo_p.cpp
changeset 43 99bcbff212ad
parent 40 2c62ef3caffd
child 74 6c59112cfd31
equal deleted inserted replaced
42:139d4b7b2938 43:99bcbff212ad
    13  *
    13  *
    14  * Description:  mailbox branding object
    14  * Description:  mailbox branding object
    15  *
    15  *
    16  */
    16  */
    17 
    17 
       
    18 #include "emailtrace.h"
       
    19 
    18 #include "emailmailboxinfo_p.h"
    20 #include "emailmailboxinfo_p.h"
    19 #include "nmutilitiescommonheaders.h"
    21 #include "nmutilitiescommonheaders.h"
    20 #include "nmcenrepkeys.h"
    22 #include "nmcenrepkeys.h"
    21 #include <QRegExp>
    23 #include <QRegExp>
    22 #include <QStringList>
    24 #include <QStringList>
    44      private constructor
    46      private constructor
    45  */
    47  */
    46 EmailMailboxInfoPrivate::EmailMailboxInfoPrivate() :
    48 EmailMailboxInfoPrivate::EmailMailboxInfoPrivate() :
    47     QObject(NULL)
    49     QObject(NULL)
    48 {
    50 {
       
    51     NM_FUNCTION;
       
    52     
    49     XQSettingsManager manager;
    53     XQSettingsManager manager;
    50     XQCentralRepositorySettingsKey rccKey(EMAIL_CENREP, RCC_PATH);
    54     XQCentralRepositorySettingsKey rccKey(EMAIL_CENREP, RCC_PATH);
    51 
    55 
    52     XQCentralRepositorySettingsKey wlbKey(EMAIL_CENREP, WLB_BRAND_NAME);
    56     XQCentralRepositorySettingsKey wlbKey(EMAIL_CENREP, WLB_BRAND_NAME);
    53 
    57 
    56 /*!
    60 /*!
    57      private destructor
    61      private destructor
    58  */
    62  */
    59 EmailMailboxInfoPrivate::~EmailMailboxInfoPrivate()
    63 EmailMailboxInfoPrivate::~EmailMailboxInfoPrivate()
    60 {
    64 {
    61 
    65     NM_FUNCTION;
    62 }
    66 }
    63 
    67 
    64 /*!
    68 /*!
    65     gets instance of EmailMailboxInfoPrivate
    69     gets instance of EmailMailboxInfoPrivate
    66     \return instance of EmailMailboxInfoPrivate
    70     \return instance of EmailMailboxInfoPrivate
    67  */
    71  */
    68 EmailMailboxInfoPrivate* EmailMailboxInfoPrivate::getInstance()
    72 EmailMailboxInfoPrivate* EmailMailboxInfoPrivate::getInstance()
    69 {
    73 {
       
    74     NM_FUNCTION;
       
    75     
    70     if (!mSelf) {
    76     if (!mSelf) {
    71         mSelf = new EmailMailboxInfoPrivate();
    77         mSelf = new EmailMailboxInfoPrivate();
    72     }
    78     }
    73     mReferenceCount++;
    79     mReferenceCount++;
    74     return mSelf;
    80     return mSelf;
    78     releases pointer to instance of EmailMailboxInfoPrivate
    84     releases pointer to instance of EmailMailboxInfoPrivate
    79     \param pointer to instance of EmailMailboxInfoPrivate object
    85     \param pointer to instance of EmailMailboxInfoPrivate object
    80  */
    86  */
    81 void EmailMailboxInfoPrivate::releaseInstance(EmailMailboxInfoPrivate *&instance)
    87 void EmailMailboxInfoPrivate::releaseInstance(EmailMailboxInfoPrivate *&instance)
    82 {
    88 {
       
    89     NM_FUNCTION;
       
    90     
    83     if (instance) {
    91     if (instance) {
    84         mReferenceCount--;
    92         mReferenceCount--;
    85         instance = NULL;
    93         instance = NULL;
    86     }
    94     }
    87     if (mReferenceCount < 1) {
    95     if (mReferenceCount < 1) {
    95     \param branding identifier
   103     \param branding identifier
    96     \return branding name
   104     \return branding name
    97  */
   105  */
    98 QString EmailMailboxInfoPrivate::name(const QVariant &identifier)
   106 QString EmailMailboxInfoPrivate::name(const QVariant &identifier)
    99 {
   107 {
       
   108     NM_FUNCTION;
       
   109     
   100     QString returnValue = "";
   110     QString returnValue = "";
   101     QString domainName = "";
   111     QString domainName = "";
   102     if (identifier.canConvert<QString> ()) {
   112     if (identifier.canConvert<QString> ()) {
   103         domainName = identifier.value<QString> ();
   113         domainName = identifier.value<QString> ();
   104     }
   114     }
   118     \param branding identifier
   128     \param branding identifier
   119     \return branding icon
   129     \return branding icon
   120  */
   130  */
   121 QString EmailMailboxInfoPrivate::icon(const QVariant &identifier)
   131 QString EmailMailboxInfoPrivate::icon(const QVariant &identifier)
   122 {
   132 {
       
   133     NM_FUNCTION;
       
   134     
   123     QString returnValue = "";
   135     QString returnValue = "";
   124     QString domainName = "";
   136     QString domainName = "";
   125     if (identifier.canConvert<QString> ()) {
   137     if (identifier.canConvert<QString> ()) {
   126         domainName = identifier.value<QString> ();
   138         domainName = identifier.value<QString> ();
   127         int delimIndex = domainName.lastIndexOf('@');
   139         int delimIndex = domainName.lastIndexOf('@');
   142     goes through cenrep to find matching branding details
   154     goes through cenrep to find matching branding details
   143     \param brandingId (i.e. domain name)
   155     \param brandingId (i.e. domain name)
   144  */
   156  */
   145 void EmailMailboxInfoPrivate::processCenRepRecords(const QString &brandingId)
   157 void EmailMailboxInfoPrivate::processCenRepRecords(const QString &brandingId)
   146 {
   158 {
       
   159     NM_FUNCTION;
       
   160     
   147     bool found = false;
   161     bool found = false;
   148     QString name;
   162     QString name;
   149     QString icon;
   163     QString icon;
   150 
   164 
   151     XQSettingsManager cenRepManager;
   165     XQSettingsManager cenRepManager;
   217     gets current country code
   231     gets current country code
   218     \return current country id
   232     \return current country id
   219  */
   233  */
   220 quint8 EmailMailboxInfoPrivate::getCurrentCountryL() const
   234 quint8 EmailMailboxInfoPrivate::getCurrentCountryL() const
   221 {
   235 {
       
   236     NM_FUNCTION;
       
   237     
   222     CTzLocalizer* localizer = CTzLocalizer::NewLC();
   238     CTzLocalizer* localizer = CTzLocalizer::NewLC();
   223 
   239 
   224     CTzLocalizedCity* city = localizer->GetFrequentlyUsedZoneCityL(
   240     CTzLocalizedCity* city = localizer->GetFrequentlyUsedZoneCityL(
   225         CTzLocalizedTimeZone::ECurrentZone);
   241         CTzLocalizedTimeZone::ECurrentZone);
   226     CleanupStack::PushL(city);
   242     CleanupStack::PushL(city);
   241     verifies if timezone is set for Germany or UK
   257     verifies if timezone is set for Germany or UK
   242     \return true if timezone is UK or Germany, false otherwise
   258     \return true if timezone is UK or Germany, false otherwise
   243  */
   259  */
   244 bool EmailMailboxInfoPrivate::verifyTimeZone() const
   260 bool EmailMailboxInfoPrivate::verifyTimeZone() const
   245 {
   261 {
       
   262     NM_FUNCTION;
       
   263     
   246     quint8 timeZone = 0;
   264     quint8 timeZone = 0;
   247     bool retVal = false;
   265     bool retVal = false;
   248     TRAPD(err, timeZone = getCurrentCountryL());
   266     TRAPD(err, timeZone = getCurrentCountryL());
   249 
   267 
   250     if (err == KErrNone && (timeZone == KGermanyTzId || timeZone == KUKTzId)) {
   268     if (err == KErrNone && (timeZone == KGermanyTzId || timeZone == KUKTzId)) {
   257     modifies branding name "Gmail" according to UK and Germany law rules
   275     modifies branding name "Gmail" according to UK and Germany law rules
   258     \param brandingName name of branding
   276     \param brandingName name of branding
   259  */
   277  */
   260 void EmailMailboxInfoPrivate::verifyMailAccountName(QString &brandingName) const
   278 void EmailMailboxInfoPrivate::verifyMailAccountName(QString &brandingName) const
   261 {
   279 {
       
   280     NM_FUNCTION;
       
   281     
   262     QSystemNetworkInfo *networkInfo = new QSystemNetworkInfo();
   282     QSystemNetworkInfo *networkInfo = new QSystemNetworkInfo();
   263     QString currentMCC = networkInfo->currentMobileCountryCode();
   283     QString currentMCC = networkInfo->currentMobileCountryCode();
   264 
   284 
   265     if (brandingName == KBrandNameGmail) {
   285     if (brandingName == KBrandNameGmail) {
   266         if (currentMCC.size() > 0) {
   286         if (currentMCC.size() > 0) {