ipsservices/ipssosaoplugin/src/IpsSosAOMboxLogic.cpp
changeset 4 e7aa27f58ae1
parent 0 8466d47a6819
child 12 f5907b1a1053
child 18 578830873419
--- a/ipsservices/ipssosaoplugin/src/IpsSosAOMboxLogic.cpp	Tue Jan 26 11:45:42 2010 +0200
+++ b/ipsservices/ipssosaoplugin/src/IpsSosAOMboxLogic.cpp	Tue Feb 02 00:02:40 2010 +0200
@@ -23,6 +23,8 @@
 #endif // _DEBUG*/
 //</cmail>
 
+#include <cmmanager.h>
+
 #include "emailtrace.h"
 #include "IpsSosAOMboxLogic.h"
 #include "ipssetdataapi.h"
@@ -753,13 +755,20 @@
     {
     FUNC_LOG;
     TBool ret = ETrue;
-    LoadSettingsL();
-    if ( ( iExtendedSettings->EmailNotificationState() == EMailEmnHomeOnly 
-          || iExtendedSettings->AlwaysOnlineState() == EMailAoHomeOnly
-          || iExtendedSettings->RoamHomeOnlyFlag() ) && iIsRoaming )
+
+    RCmManager cmManager;
+    cmManager.OpenLC();
+    TCmGenConnSettings OccSettings;
+    
+    //ask roaming settings from occ
+    cmManager.ReadGenConnSettingsL(OccSettings);
+    if(OccSettings.iSeamlessnessVisitor == ECmCellularDataUsageDisabled && iIsRoaming)
         {
         ret = EFalse;
         }
+    
+    CleanupStack::PopAndDestroy(&cmManager); // cmManager
+    
     return ret;          
     }
 
@@ -778,9 +787,7 @@
     iExtendedSettings->SetFirstEmnReceived( ETrue );
     
     //if alwaysonline was allowed to roam, so will EMN be.
-    iExtendedSettings->SetEmailNotificationState(
-            iExtendedSettings->AlwaysOnlineState() == 
-            EMailAoAlways ? EMailEmnAutomatic : EMailEmnHomeOnly );
+    iExtendedSettings->SetEmailNotificationState( EMailEmnAutomatic );
     
     
     // set always online state off when emn is on