messagingapp/msgui/appengine/src/conversationsengineutility.cpp
changeset 25 84d9eb65b26f
parent 23 238255e8b033
child 27 e4592d119491
child 37 518b245aa84c
equal deleted inserted replaced
23:238255e8b033 25:84d9eb65b26f
    11  *
    11  *
    12  * Contributors:
    12  * Contributors:
    13  *
    13  *
    14  * Description: Utility class for conersationengine.
    14  * Description: Utility class for conersationengine.
    15  */
    15  */
       
    16 #include <QFile>
       
    17 #include <qversitcontactimporter.h>
       
    18 #include <qversitdocument.h>
       
    19 #include <qversitreader.h>
       
    20 #include <qtcontacts.h>
       
    21 #include <qmobilityglobal.h>
       
    22 #include <senduiconsts.h>
       
    23 
    16 #include "conversationsengineutility.h"
    24 #include "conversationsengineutility.h"
    17 #include "convergedmessage.h"
    25 #include "convergedmessage.h"
    18 #include <senduiconsts.h>
    26 
       
    27 QTM_USE_NAMESPACE
       
    28 
    19 
    29 
    20 //---------------------------------------------------------------
    30 //---------------------------------------------------------------
    21 // ConversationsEngineUtility::messageType
    31 // ConversationsEngineUtility::messageType
    22 // @see header
    32 // @see header
    23 //---------------------------------------------------------------
    33 //---------------------------------------------------------------
    24 int ConversationsEngineUtility::messageType(TCsType value)
    34 int ConversationsEngineUtility::messageType(TCsType value)
    25     {
    35 {
    26     int mMessageType;
    36     int mMessageType;
    27     switch(value)
    37     switch (value) {
    28         {
    38     case ECsSMS:
    29         case ECsSMS:
    39         mMessageType = ConvergedMessage::Sms;
    30             mMessageType = ConvergedMessage::Sms;
    40         break;
    31             break;
    41     case ECsMMS:
    32         case ECsMMS:
    42     case ECsAudio:
    33             mMessageType = ConvergedMessage::Mms;
    43         mMessageType = ConvergedMessage::Mms;
    34             break;
    44         break;
    35         case ECsBioMsg:
    45     case ECsBioMsg:
    36             mMessageType = ConvergedMessage::BioMsg;
    46     case ECsRingingTone:
    37             break;
    47     case ECsProvisioning:
    38         case ECsBlueTooth:
    48     case ECsBioMsg_VCard:
    39             mMessageType = ConvergedMessage::BT;
    49     case ECsBioMsg_VCal:
    40             break;
    50         mMessageType = ConvergedMessage::BioMsg;
    41         case ECsRingingTone:
    51         break;
    42             mMessageType = ConvergedMessage::RingingTone;
    52     case ECsBlueTooth:
    43             break;
    53         mMessageType = ConvergedMessage::BT;
    44         case ECsProvisioning:
    54         break;
    45             mMessageType = ConvergedMessage::Provisioning;
    55     case ECsMmsNotification:
    46             break;
    56         mMessageType = ConvergedMessage::MmsNotification;
    47 		case ECsBioMsg_VCard:
    57         break;
    48             mMessageType = ConvergedMessage::VCard;
    58     default:
    49             break;
    59         mMessageType = ConvergedMessage::None;
    50 		case ECsBioMsg_VCal:
    60         break;
    51 		        mMessageType = ConvergedMessage::VCal;
    61     }
    52             break;
       
    53         default:
       
    54             mMessageType = ConvergedMessage::Sms;
       
    55             break;
       
    56         }
       
    57     return mMessageType;
    62     return mMessageType;
    58     }
    63 }
    59 
    64 
    60 //---------------------------------------------------------------
    65 //---------------------------------------------------------------
    61 // ConversationsEngineUtility::mapMsgType
    66 // ConversationsEngineUtility::mapMsgType
    62 // @see header
    67 // @see header
    63 //---------------------------------------------------------------
    68 //---------------------------------------------------------------
    64 int ConversationsEngineUtility::messageType(TInt32 value)
    69 int ConversationsEngineUtility::messageType(TInt32 value)
    65     {
    70 {
    66     int type = ConvergedMessage::Sms;
    71     int type;
    67     
    72     switch (value) {
    68     switch(value)
    73     case KSenduiMtmSmsUidValue:
    69         {
    74         type = ConvergedMessage::Sms;
    70         case KSenduiMtmSmsUidValue:
    75         break;
    71             type = ConvergedMessage::Sms;
    76     case KSenduiMtmBtUidValue:
    72             break;
    77         type = ConvergedMessage::BT;
    73         case KSenduiMtmBtUidValue:
    78         break;
    74             type = ConvergedMessage::BT;
    79     case KSenduiMtmMmsUidValue:
    75             break;
    80         type = ConvergedMessage::Mms;
    76         case KSenduiMtmMmsUidValue:
    81         break;
    77             type = ConvergedMessage::Mms;
    82     case KSenduiMtmBioUidValue:
    78             break;
    83         type = ConvergedMessage::BioMsg;
    79         case KSenduiMtmBioUidValue:
    84         break;
    80             type = ConvergedMessage::BioMsg;
    85     default:
    81             break;
    86         type = ConvergedMessage::None;
    82         default:
    87         break;
    83             type =ConvergedMessage::Sms;
    88     }
    84             break;
    89     return type;
       
    90 }
       
    91 
       
    92 //---------------------------------------------------------------
       
    93 // ConversationsEngineUtility::messageSubType
       
    94 // @see header
       
    95 //---------------------------------------------------------------
       
    96 int ConversationsEngineUtility::messageSubType(TCsType value)
       
    97 {
       
    98     int messageSubType;
       
    99     switch (value) {
       
   100     case ECsRingingTone:
       
   101         messageSubType = ConvergedMessage::RingingTone;
       
   102         break;
       
   103     case ECsProvisioning:
       
   104         messageSubType = ConvergedMessage::Provisioning;
       
   105         break;
       
   106     case ECsBioMsg_VCard:
       
   107         messageSubType = ConvergedMessage::VCard;
       
   108         break;
       
   109     case ECsBioMsg_VCal:
       
   110         messageSubType = ConvergedMessage::VCal;
       
   111         break;
       
   112     case ECsAudio:
       
   113         messageSubType = ConvergedMessage::Audio;
       
   114         break;
       
   115     default:
       
   116         messageSubType = ConvergedMessage::None;
       
   117         break;
       
   118     }
       
   119     return messageSubType;
       
   120 }
       
   121 
       
   122 //---------------------------------------------------------------
       
   123 // ConversationsEngineUtility::getVcardDisplayName
       
   124 // @see header
       
   125 //---------------------------------------------------------------
       
   126 QString ConversationsEngineUtility::getVcardDisplayName(QString filePath)
       
   127 {
       
   128     QString displayName;
       
   129     //open file for parsing
       
   130     QFile file(filePath);
       
   131     if (!file.open(QIODevice::ReadOnly)) {
       
   132         return displayName;
       
   133     }
       
   134     // parse contents
       
   135     QVersitReader reader;
       
   136     reader.setDevice(&file);
       
   137     if (reader.startReading()) {
       
   138         if (reader.waitForFinished()) {
       
   139             QList<QVersitDocument> versitDocuments = reader.results();
       
   140             // Use the resulting document
       
   141             if (versitDocuments.count() > 0) {
       
   142                 QVersitContactImporter importer;
       
   143                 QList<QContact> contacts = importer.importContacts(versitDocuments);
       
   144                 // get display-name
       
   145                 if (contacts.count() > 0) {
       
   146                     QContactManager* contactManager = new QContactManager("symbian");
       
   147                     displayName = contactManager->synthesizedDisplayLabel(contacts[0]);
       
   148                     delete contactManager;
       
   149                 }
       
   150             }
    85         }
   151         }
    86     return (type);
       
    87     }
   152     }
       
   153     file.close();
    88 
   154 
       
   155     return displayName;
       
   156 }
    89 
   157 
    90 // End of file
   158 // End of file