vmbx/vmbxengine/src/vmbxpbkstore.cpp
changeset 31 a2467631ae02
parent 27 7eb70891911c
child 32 1f002146abb4
--- a/vmbx/vmbxengine/src/vmbxpbkstore.cpp	Fri Jun 11 14:07:16 2010 +0300
+++ b/vmbx/vmbxengine/src/vmbxpbkstore.cpp	Wed Jun 23 18:49:32 2010 +0300
@@ -176,7 +176,22 @@
         if ( KErrNone == newErr )
             {
             // get als line info
-            simEntry->SetVmbxAlsLineType( VmbxUtilities::AlsLine() );
+            TVmbxAlsLineType alsLine = VmbxUtilities::AlsLine();
+            simEntry->SetVmbxAlsLineType( alsLine );
+            // ALS line on
+            if ( EVmbxAlsLineDefault != alsLine )
+                {
+                // ALS line on, only should write to 6f17,
+                // so just check 6f17 file write access
+                iPhoneBookType = EVMBXPhoneBook;
+                }
+            // ALS line off
+            else
+                {
+                // ALS line on, only should write to 6fc7,
+                //so just check 6fc7 file write access
+                iPhoneBookType = EMBDNPhoneBook;
+                }
             simEntry->SetVoiceMailboxType( EVmbxVoice );
             simEntry->SetServiceId( KVmbxServiceVoice );
             TRAPD( err, SimReadL( *simEntry ) );
@@ -271,7 +286,7 @@
             if ( iPhoneBookType == EMBDNPhoneBook )
                 {
                 RMobilePhone::TMobilePhoneVoicemailIdsV3 mbdnInfo;
-                result = GetMbdnInfo( VmbxUtilities::AlsLine(), mbdnInfo );
+                result = GetMbdnInfo( mbdnInfo );
 
                 if ( KErrNone == result )
                     {
@@ -324,8 +339,7 @@
 // CVmbxPbkStore::GetMbdnInfo
 // ---------------------------------------------------------------------------
 //
-TInt CVmbxPbkStore::GetMbdnInfo( const TVmbxAlsLineType aAlsLine,
-            RMobilePhone::TMobilePhoneVoicemailIdsV3& aInfo )
+TInt CVmbxPbkStore::GetMbdnInfo( RMobilePhone::TMobilePhoneVoicemailIdsV3& aInfo )
     {
     VMBLOGSTRING( "VMBX: CVmbxPbkStore::GetMbdnInfo =>" );
     TInt result( KErrInUse );
@@ -344,7 +358,7 @@
         SetActive();
         iWait->Start();
 
-        VMBLOGSTRING2( "VMBX: CVmbxPbkStore::GetMbdnInfo: iVoice value %I",
+        VMBLOGSTRING2( "VMBX: CVmbxPbkStore::GetMbdnInfo: iVoice original value %I",
                                                              aInfo.iVoice );
         if ( iStatus.Int() == KErrNotFound )
             {
@@ -356,12 +370,12 @@
             {
             result = iStatus.Int();
             }
-
-        if ( EVmbxAlsLineDefault == aAlsLine )
+        TVmbxAlsLineType alsLine = VmbxUtilities::AlsLine();
+        if ( EVmbxAlsLineDefault == alsLine )
             {
             aInfo.iVoice =  EVmbxAlsLine1;
             }
-        VMBLOGSTRING2( "VMBX: CVmbxPbkStore::GetMbdnInfo: aInfo.iVoice %I",
+        VMBLOGSTRING2( "VMBX: CVmbxPbkStore::GetMbdnInfo: iVoice last value %I",
             aInfo.iVoice );
         }
     VMBLOGSTRING2( "VMBX: CVmbxPbkStore::GetMbdnInfo: result %I<=",
@@ -476,7 +490,7 @@
     if ( iPhoneBookType == EMBDNPhoneBook )
         {
         RMobilePhone::TMobilePhoneVoicemailIdsV3 mbdnInfo;
-        result = GetMbdnInfo( EVmbxAlsLine1, mbdnInfo );
+        result = GetMbdnInfo( mbdnInfo );
         if ( KErrNone == result )
             {
             VMBLOGSTRING( "start MBDN PhoneBook read" );