messagingapp/msgui/msguiutils/src/msgsendutil.cpp
changeset 67 fc91263aee62
parent 51 3507212d340e
--- a/messagingapp/msgui/msguiutils/src/msgsendutil.cpp	Tue Sep 14 22:54:56 2010 +0530
+++ b/messagingapp/msgui/msguiutils/src/msgsendutil.cpp	Fri Sep 17 20:01:45 2010 +0530
@@ -23,6 +23,8 @@
 // general editor utilities
 #include "UniEditorGenUtils.h"
 
+#include <xqconversions.h>
+#include <commonphoneparser.h> // commonengine
 
 //---------------------------------------------------------------
 // MsgSendUtil::MsgSendUtil
@@ -104,6 +106,32 @@
 }
 
 //---------------------------------------------------------------
+// MsgSendUtil::isValidAddress
+// @see header file
+//--------------------------------------------------------------
+bool MsgSendUtil::isValidAddress(const QString &address)
+{
+    bool isValid = false;
+    if (!address.isEmpty()) {
+
+        HBufC *tempAddr = XQConversions::qStringToS60Desc(address);
+
+        // 1. perform number validation
+        isValid = CommonPhoneParser::IsValidPhoneNumber(*tempAddr, CommonPhoneParser::ESMSNumber);
+
+        // 2. if number validity fails, then perform email addr validation
+        if (!isValid) {
+            // additional check for MMS only
+            UniEditorGenUtils* genUtils = q_check_ptr(new UniEditorGenUtils);
+            isValid = genUtils->IsValidEmailAddress(*tempAddr);
+            delete genUtils;
+        }
+        delete tempAddr;
+    }
+    return isValid;
+}
+
+//---------------------------------------------------------------
 // MsgSendUtil::checkEmailOverSms
 // @see header file
 //--------------------------------------------------------------