summaryrefslogtreecommitdiff
path: root/plugins/UserInfoEx/src
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/UserInfoEx/src')
-rw-r--r--plugins/UserInfoEx/src/Flags/svc_flags.cpp2
-rw-r--r--plugins/UserInfoEx/src/Flags/svc_flags.h3
-rw-r--r--plugins/UserInfoEx/src/init.cpp8
-rw-r--r--plugins/UserInfoEx/src/psp_options.cpp18
-rw-r--r--plugins/UserInfoEx/src/svc_constants.h1
-rw-r--r--plugins/UserInfoEx/src/svc_email.cpp39
-rw-r--r--plugins/UserInfoEx/src/svc_email.h3
-rw-r--r--plugins/UserInfoEx/src/svc_gender.cpp44
-rw-r--r--plugins/UserInfoEx/src/svc_gender.h3
-rw-r--r--plugins/UserInfoEx/src/svc_homepage.cpp43
-rw-r--r--plugins/UserInfoEx/src/svc_homepage.h2
-rw-r--r--plugins/UserInfoEx/src/svc_phone.cpp42
-rw-r--r--plugins/UserInfoEx/src/svc_phone.h2
13 files changed, 69 insertions, 141 deletions
diff --git a/plugins/UserInfoEx/src/Flags/svc_flags.cpp b/plugins/UserInfoEx/src/Flags/svc_flags.cpp
index 9ee871bd61..907d201e38 100644
--- a/plugins/UserInfoEx/src/Flags/svc_flags.cpp
+++ b/plugins/UserInfoEx/src/Flags/svc_flags.cpp
@@ -421,7 +421,7 @@ void SvcFlagsLoadModule()
**/
void SvcFlagsOnModulesLoaded()
{
- SvcFlagsEnableExtraIcons(db_get_b(NULL, MODNAME, SET_CLIST_EXTRAICON_FLAGS2, 0), FALSE);
+ SvcFlagsEnableExtraIcons(1, FALSE);
/* Status Icon */
HookEvent(ME_MSG_WINDOWEVENT, OnMsgWndEvent);
diff --git a/plugins/UserInfoEx/src/Flags/svc_flags.h b/plugins/UserInfoEx/src/Flags/svc_flags.h
index d8d7867125..64ed5a2244 100644
--- a/plugins/UserInfoEx/src/Flags/svc_flags.h
+++ b/plugins/UserInfoEx/src/Flags/svc_flags.h
@@ -35,7 +35,8 @@ struct FLAGSOPTIONS
BYTE bShowStatusIconFlag;
};
-extern FLAGSOPTIONS gFlagsOpts;
+extern FLAGSOPTIONS gFlagsOpts;
+extern bool g_eiGender, g_eiHome, g_eiEmail, g_eiPhone;
struct MsgWndData
{
diff --git a/plugins/UserInfoEx/src/init.cpp b/plugins/UserInfoEx/src/init.cpp
index dcbc3f6360..394e2da982 100644
--- a/plugins/UserInfoEx/src/init.cpp
+++ b/plugins/UserInfoEx/src/init.cpp
@@ -82,15 +82,11 @@ static int OnModulesLoaded(WPARAM wParam, LPARAM lParam)
// load module to remind user about birthday and a anniversary
SvcReminderOnModulesLoaded();
// load extended intagration services
- SvcEMailOnModulesLoaded();
SvcHomepageLoadModule();
- SvcPhoneLoadModule();
- SvcGenderLoadModule();
SvcFlagsOnModulesLoaded();
-#ifdef _DEBUG // new feature, not in release jet
- NServices::NAvatar::OnModulesLoaded();
-#endif
+ if (SvcEMailEnableExtraIcons() || SvcPhoneEnableExtraIcons() || SvcGenderEnableExtraIcons() || SvcHomepageEnableExtraIcons())
+ pcli->pfnSetAllExtraIcons(0);
// build contact's menuitems
RebuildMenu();
diff --git a/plugins/UserInfoEx/src/psp_options.cpp b/plugins/UserInfoEx/src/psp_options.cpp
index 77433e1779..a79e2ea8be 100644
--- a/plugins/UserInfoEx/src/psp_options.cpp
+++ b/plugins/UserInfoEx/src/psp_options.cpp
@@ -318,10 +318,10 @@ static INT_PTR CALLBACK DlgProc_CommonOpts(HWND hDlg, UINT uMsg, WPARAM wParam,
}
}
// extra icon settings
- DBGetCheckBtn(hDlg, CHECK_OPT_GENDER, SET_CLIST_EXTRAICON_GENDER2, 0);
- DBGetCheckBtn(hDlg, CHECK_OPT_HOMEPAGEICON, SET_CLIST_EXTRAICON_HOMEPAGE, DEFVAL_CLIST_EXTRAICON_HOMEPAGE);
- DBGetCheckBtn(hDlg, CHECK_OPT_EMAILICON, SET_CLIST_EXTRAICON_EMAIL, DEFVAL_CLIST_EXTRAICON_EMAIL);
- DBGetCheckBtn(hDlg, CHECK_OPT_PHONEICON, SET_CLIST_EXTRAICON_PHONE, DEFVAL_CLIST_EXTRAICON_PHONE);
+ CheckDlgButton(hDlg, CHECK_OPT_GENDER, g_eiGender);
+ CheckDlgButton(hDlg, CHECK_OPT_EMAILICON, g_eiEmail);
+ CheckDlgButton(hDlg, CHECK_OPT_PHONEICON, g_eiPhone);
+ CheckDlgButton(hDlg, CHECK_OPT_HOMEPAGEICON, g_eiHome);
CheckDlgButton(hDlg, CHECK_OPT_FLAGSUNKNOWN, gFlagsOpts.bUseUnknownFlag);
CheckDlgButton(hDlg, CHECK_OPT_FLAGSMSGSTATUS, gFlagsOpts.bShowStatusIconFlag);
@@ -361,15 +361,15 @@ static INT_PTR CALLBACK DlgProc_CommonOpts(HWND hDlg, UINT uMsg, WPARAM wParam,
FlagsMsgWndChange++;
}
- SvcGenderEnableExtraIcons(IsDlgButtonChecked(hDlg, CHECK_OPT_GENDER) ? 1 : -1, TRUE);
+ if (SvcHomepageEnableExtraIcons(0 != IsDlgButtonChecked(hDlg, CHECK_OPT_HOMEPAGEICON), true) ||
+ SvcEMailEnableExtraIcons(0 != IsDlgButtonChecked(hDlg, CHECK_OPT_EMAILICON), true) ||
+ SvcPhoneEnableExtraIcons(0 != IsDlgButtonChecked(hDlg, CHECK_OPT_PHONEICON), true) ||
+ SvcGenderEnableExtraIcons(0 != IsDlgButtonChecked(hDlg, CHECK_OPT_GENDER), true))
+ FlagsClistChange = true;
if (FlagsClistChange) pcli->pfnSetAllExtraIcons(NULL);
if (FlagsMsgWndChange) UpdateStatusIcons(NULL);
- SvcHomepageEnableExtraIcons(IsDlgButtonChecked(hDlg, CHECK_OPT_HOMEPAGEICON), TRUE);
- SvcEMailEnableExtraIcons(IsDlgButtonChecked(hDlg, CHECK_OPT_EMAILICON), TRUE);
- SvcPhoneEnableExtraIcons(IsDlgButtonChecked(hDlg, CHECK_OPT_PHONEICON), TRUE);
-
// misc
BYTE bEnabled = IsDlgButtonChecked(hDlg, CHECK_OPT_ZODIACAVATAR);
db_set_b(NULL, MODNAME, SET_ZODIAC_AVATARS, bEnabled);
diff --git a/plugins/UserInfoEx/src/svc_constants.h b/plugins/UserInfoEx/src/svc_constants.h
index 76f9421296..1dc73429a8 100644
--- a/plugins/UserInfoEx/src/svc_constants.h
+++ b/plugins/UserInfoEx/src/svc_constants.h
@@ -69,7 +69,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define SET_CLIST_EXTRAICON_HOMEPAGE "cliHomepage"
#define SET_CLIST_EXTRAICON_EMAIL "cliEmail"
#define SET_CLIST_EXTRAICON_PHONE "cliPhone"
-#define SET_CLIST_EXTRAICON_FLAGS2 "cliFlags"
#define SET_OPT_AUTOTIMEZONE "AutoTimezone"
#define SET_ZODIAC_AVATARS "ZodicAvatars"
#define SET_META_SCAN "MetaScan"
diff --git a/plugins/UserInfoEx/src/svc_email.cpp b/plugins/UserInfoEx/src/svc_email.cpp
index bf337d5788..08306415be 100644
--- a/plugins/UserInfoEx/src/svc_email.cpp
+++ b/plugins/UserInfoEx/src/svc_email.cpp
@@ -28,6 +28,8 @@ static HANDLE ghExtraIconSvc = INVALID_HANDLE_VALUE;
static HANDLE hChangedHook = NULL;
static HANDLE hApplyIconHook = NULL;
+bool g_eiEmail = false;
+
/**
* This function reads the email address of the contact.
*
@@ -201,30 +203,21 @@ void SvcEMailRebuildMenu()
}
/**
-* Force all icons to be reloaded.
-*
-* @param wParam - handle to the contact whose extra icon is to apply
-* @param lParam - not used
-**/
-
-void SvcEMailApplyCListIcons()
-{
- // walk through all the contacts stored in the DB
- for (HANDLE hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact))
- OnCListApplyIcons((WPARAM)hContact, 0);
-}
-
-/**
* Enable or disable the replacement of clist extra icons.
*
* @param bEnable - determines whether icons are enabled or not
* @param bUpdateDB - if true the database setting is updated, too.
**/
-void SvcEMailEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB)
+bool SvcEMailEnableExtraIcons(bool bEnable, bool bUpdateDB)
{
- if (bUpdateDB)
+ bool bChanged;
+
+ if (bUpdateDB) {
+ bChanged = g_eiEmail != bEnable;
db_set_b(NULL, MODNAME, SET_CLIST_EXTRAICON_EMAIL, bEnable);
+ }
+ else bChanged = g_eiEmail = db_get_b(NULL, MODNAME, SET_CLIST_EXTRAICON_EMAIL, DEFVAL_CLIST_EXTRAICON_EMAIL) != 0;
if (bEnable) { // E-mail checked
// hook events
@@ -247,16 +240,8 @@ void SvcEMailEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB)
hApplyIconHook = NULL;
}
}
- SvcEMailApplyCListIcons();
-}
-/**
-* This function initially loads the module upon startup.
-**/
-
-void SvcEMailOnModulesLoaded()
-{
- SvcEMailEnableExtraIcons(db_get_b(NULL, MODNAME, SET_CLIST_EXTRAICON_EMAIL, DEFVAL_CLIST_EXTRAICON_EMAIL), FALSE);
+ return bChanged;
}
/**
@@ -283,6 +268,6 @@ void SvcEMailLoadModule()
void SvcEMailUnloadModule()
{
// unhook event handlers
- UnhookEvent(hChangedHook); hChangedHook = NULL;
- UnhookEvent(hApplyIconHook); hApplyIconHook = NULL;
+ UnhookEvent(hChangedHook); hChangedHook = NULL;
+ UnhookEvent(hApplyIconHook); hApplyIconHook = NULL;
}
diff --git a/plugins/UserInfoEx/src/svc_email.h b/plugins/UserInfoEx/src/svc_email.h
index 4161ebc8f8..d2f7cb3ec7 100644
--- a/plugins/UserInfoEx/src/svc_email.h
+++ b/plugins/UserInfoEx/src/svc_email.h
@@ -23,8 +23,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define _UINFOEX_SVCEMAIL_H_INCLUDED_
void SvcEMailRebuildMenu();
-void SvcEMailEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB = FALSE);
-void SvcEMailOnModulesLoaded();
+bool SvcEMailEnableExtraIcons(bool bEnable = false, bool bUpdateDB = false);
void SvcEMailLoadModule();
void SvcEMailUnloadModule();
diff --git a/plugins/UserInfoEx/src/svc_gender.cpp b/plugins/UserInfoEx/src/svc_gender.cpp
index ebee43c044..6e2af9cf99 100644
--- a/plugins/UserInfoEx/src/svc_gender.cpp
+++ b/plugins/UserInfoEx/src/svc_gender.cpp
@@ -28,6 +28,8 @@ static HANDLE ghExtraIconSvc = INVALID_HANDLE_VALUE;
static HANDLE hChangedHook = NULL;
static HANDLE hApplyIconHook = NULL;
+bool g_eiGender = false;
+
BYTE GenderOf(HANDLE hContact, LPCSTR pszProto)
{
DBVARIANT dbv;
@@ -96,24 +98,6 @@ static int OnContactSettingChanged(HANDLE hContact, DBCONTACTWRITESETTING* pdbcw
return 0;
}
-/***********************************************************************************************************
- * public Module Interface functions
- ***********************************************************************************************************/
-
-/**
- * Force all icons to be reloaded.
- *
- * @param wParam - handle to the contact whose extra icon is to apply
- * @param lParam - not used
- **/
-
-void SvcGenderApplyCListIcons()
-{
- //walk through all the contacts stored in the DB
- for (HANDLE hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact))
- OnCListApplyIcons(hContact, 0);
-}
-
/**
* Enable or disable the replacement of clist extra icons.
*
@@ -121,14 +105,17 @@ void SvcGenderApplyCListIcons()
* @param bUpdateDB - if true the database setting is updated, too.
**/
-void SvcGenderEnableExtraIcons(BYTE bColumn, BYTE bUpdateDB)
+bool SvcGenderEnableExtraIcons(bool bEnable, bool bUpdateDB)
{
- bool bEnable = (bColumn!=((BYTE)-1));
+ bool bChanged;
- if (bUpdateDB)
- db_set_b(NULL, MODNAME, SET_CLIST_EXTRAICON_GENDER2, bColumn);
+ if (bUpdateDB) {
+ bChanged = g_eiGender != bEnable;
+ db_set_b(NULL, MODNAME, SET_CLIST_EXTRAICON_GENDER2, bEnable);
+ }
+ else bChanged = g_eiGender = db_get_b(NULL, MODNAME, SET_CLIST_EXTRAICON_GENDER2, 0) != 0;
- if (bEnable) { // Gender checked or dropdown select
+ if (g_eiGender) { // Gender checked or dropdown select
if (ghExtraIconSvc == INVALID_HANDLE_VALUE)
ghExtraIconSvc = ExtraIcon_Register("gender", LPGEN("Gender (uinfoex)"), ICO_COMMON_MALE);
@@ -149,16 +136,7 @@ void SvcGenderEnableExtraIcons(BYTE bColumn, BYTE bUpdateDB)
hApplyIconHook = NULL;
}
}
- SvcGenderApplyCListIcons();
-}
-
-/**
-* This function initially loads the module upon startup.
-**/
-
-void SvcGenderLoadModule()
-{
- SvcGenderEnableExtraIcons(db_get_b(NULL, MODNAME, SET_CLIST_EXTRAICON_GENDER2, 0), FALSE);
+ return bChanged;
}
/**
diff --git a/plugins/UserInfoEx/src/svc_gender.h b/plugins/UserInfoEx/src/svc_gender.h
index 6103f7f7ae..8c7c892ccf 100644
--- a/plugins/UserInfoEx/src/svc_gender.h
+++ b/plugins/UserInfoEx/src/svc_gender.h
@@ -25,8 +25,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
BYTE GenderOf(HANDLE hContact, LPCSTR pszProto);
BYTE GenderOf(HANDLE hContact);
-void SvcGenderEnableExtraIcons(BYTE bColumn, BYTE bUpdateDB);
-void SvcGenderLoadModule();
+bool SvcGenderEnableExtraIcons(bool bEnable = false, bool bUpdateDB = false);
void SvcGenderUnloadModule();
#endif /* _UINFOEX_SVCGENDER_H_INCLUDED_ */ \ No newline at end of file
diff --git a/plugins/UserInfoEx/src/svc_homepage.cpp b/plugins/UserInfoEx/src/svc_homepage.cpp
index 801855c699..4f411a55d5 100644
--- a/plugins/UserInfoEx/src/svc_homepage.cpp
+++ b/plugins/UserInfoEx/src/svc_homepage.cpp
@@ -21,12 +21,14 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include "commonheaders.h"
-static HGENMENU ghMenuItem = NULL;
-static HANDLE ghExtraIconDef = INVALID_HANDLE_VALUE;
-static HANDLE ghExtraIconSvc = INVALID_HANDLE_VALUE;
+static HGENMENU ghMenuItem = NULL;
+static HANDLE ghExtraIconDef = INVALID_HANDLE_VALUE;
+static HANDLE ghExtraIconSvc = INVALID_HANDLE_VALUE;
-static HANDLE hChangedHook = NULL;
-static HANDLE hApplyIconHook = NULL;
+static HANDLE hChangedHook = NULL;
+static HANDLE hApplyIconHook = NULL;
+
+bool g_eiHome = false;
/**
* This function reads the homepage address of the contact.
@@ -161,32 +163,23 @@ void SvcHomepageRebuildMenu()
}
/**
-* Force all icons to be reloaded.
-*
-* @param wParam - handle to the contact whose extra icon is to apply
-* @param lParam - not used
-**/
-
-void SvcHomepageApplyCListIcons()
-{
- //walk through all the contacts stored in the DB
- for (HANDLE hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact))
- OnCListApplyIcons(hContact, 0);
-}
-
-/**
* Enable or disable the replacement of clist extra icons.
*
* @param bEnable - determines whether icons are enabled or not
* @param bUpdateDB - if true the database setting is updated, too.
**/
-void SvcHomepageEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB)
+bool SvcHomepageEnableExtraIcons(bool bEnable, bool bUpdateDB)
{
- if (bUpdateDB)
- db_set_b(NULL, MODNAME, SET_CLIST_EXTRAICON_HOMEPAGE, bEnable);
+ bool bChanged;
+
+ if (bUpdateDB) {
+ bChanged = g_eiHome != bEnable;
+ db_set_b(NULL, MODNAME, SET_CLIST_EXTRAICON_HOMEPAGE, g_eiHome = bEnable);
+ }
+ else bChanged = g_eiHome = db_get_b(NULL, MODNAME, SET_CLIST_EXTRAICON_HOMEPAGE, DEFVAL_CLIST_EXTRAICON_HOMEPAGE) != 0;
- if (bEnable) {
+ if (g_eiHome) {
// hook events
if (hChangedHook == NULL)
hChangedHook = HookEvent(ME_DB_CONTACT_SETTINGCHANGED, (MIRANDAHOOK)OnContactSettingChanged);
@@ -207,7 +200,7 @@ void SvcHomepageEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB)
hApplyIconHook = NULL;
}
}
- SvcHomepageApplyCListIcons();
+ return bChanged;
}
/**
@@ -220,8 +213,6 @@ void SvcHomepageEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB)
void SvcHomepageLoadModule()
{
CreateServiceFunction(MS_USERINFO_HOMEPAGE_OPENURL, MenuCommand);
- SvcHomepageEnableExtraIcons(
- db_get_b(NULL, MODNAME, SET_CLIST_EXTRAICON_HOMEPAGE, DEFVAL_CLIST_EXTRAICON_HOMEPAGE), FALSE);
}
/**
diff --git a/plugins/UserInfoEx/src/svc_homepage.h b/plugins/UserInfoEx/src/svc_homepage.h
index cdb9f0927a..ba7c826879 100644
--- a/plugins/UserInfoEx/src/svc_homepage.h
+++ b/plugins/UserInfoEx/src/svc_homepage.h
@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define _UINFOEX_SvcHomepage_H_INCLUDED_
void SvcHomepageRebuildMenu();
-void SvcHomepageEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB = FALSE);
+bool SvcHomepageEnableExtraIcons(bool bEnable = false, bool bUpdateDB = false);
void SvcHomepageLoadModule();
void SvcHomepageUnloadModule();
diff --git a/plugins/UserInfoEx/src/svc_phone.cpp b/plugins/UserInfoEx/src/svc_phone.cpp
index e8b0e8cace..5678ec946f 100644
--- a/plugins/UserInfoEx/src/svc_phone.cpp
+++ b/plugins/UserInfoEx/src/svc_phone.cpp
@@ -35,6 +35,8 @@ static HANDLE ghExtraIconSvc = INVALID_HANDLE_VALUE;
static HANDLE hChangedHook = NULL;
static HANDLE hApplyIconHook = NULL;
+bool g_eiPhone = false;
+
/**
* This function reads the contact's phone number from database and returns its type.
*
@@ -117,24 +119,6 @@ static int OnContactSettingChanged(HANDLE hContact, DBCONTACTWRITESETTING* pdbcw
return 0;
}
-/***********************************************************************************************************
- * public Module Interface functions
- ***********************************************************************************************************/
-
-/**
-* Force all icons to be reloaded.
-*
-* @param wParam - handle to the contact whose extra icon is to apply
-* @param lParam - not used
-**/
-
-void SvcPhoneApplyCListIcons()
-{
- //walk through all the contacts stored in the DB
- for (HANDLE hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact))
- OnCListApplyIcons(hContact, 0);
-}
-
/**
* Enable or disable the replacement of clist extra icons.
*
@@ -142,13 +126,18 @@ void SvcPhoneApplyCListIcons()
* @param bUpdateDB - if true the database setting is updated, too.
**/
-void SvcPhoneEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB)
+bool SvcPhoneEnableExtraIcons(bool bEnable, bool bUpdateDB)
{
- if (bUpdateDB)
+ bool bChanged;
+
+ if (bUpdateDB) {
+ bChanged = g_eiPhone != bEnable;
db_set_b(NULL, MODNAME, SET_CLIST_EXTRAICON_PHONE, bEnable);
+ }
+ else bChanged = g_eiPhone = db_get_b(NULL, MODNAME, SET_CLIST_EXTRAICON_PHONE, DEFVAL_CLIST_EXTRAICON_PHONE) != 0;
// force module enabled, if extraicon plugin was found
- if (bEnable) {
+ if (g_eiPhone) {
// hook events
if (hChangedHook == NULL)
hChangedHook = HookEvent(ME_DB_CONTACT_SETTINGCHANGED, (MIRANDAHOOK)OnContactSettingChanged);
@@ -169,16 +158,7 @@ void SvcPhoneEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB)
hApplyIconHook = NULL;
}
}
- SvcPhoneApplyCListIcons();
-}
-
-/**
-* This function initially loads the module upon startup.
-**/
-
-void SvcPhoneLoadModule()
-{
- SvcPhoneEnableExtraIcons(db_get_b(NULL, MODNAME, SET_CLIST_EXTRAICON_PHONE, DEFVAL_CLIST_EXTRAICON_PHONE), FALSE);
+ return bChanged;
}
/**
diff --git a/plugins/UserInfoEx/src/svc_phone.h b/plugins/UserInfoEx/src/svc_phone.h
index 7fd00cd16a..e394168020 100644
--- a/plugins/UserInfoEx/src/svc_phone.h
+++ b/plugins/UserInfoEx/src/svc_phone.h
@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define _UINFOEX_SVCPHONE_H_INCLUDED_
void SvcPhoneApplyCListIcons();
-void SvcPhoneEnableExtraIcons(BYTE bEnable, BYTE bUpdateDB = FALSE);
+bool SvcPhoneEnableExtraIcons(bool bEnable = false, bool bUpdateDB = false);
void SvcPhoneLoadModule();
void SvcPhoneUnloadModule();