summaryrefslogtreecommitdiff
path: root/MySpace/MySpace.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'MySpace/MySpace.cpp')
-rw-r--r--MySpace/MySpace.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/MySpace/MySpace.cpp b/MySpace/MySpace.cpp
index cb1da5d..aa229b5 100644
--- a/MySpace/MySpace.cpp
+++ b/MySpace/MySpace.cpp
@@ -60,6 +60,19 @@ int ModulesLoaded(WPARAM wParam, LPARAM lParam) {
return 0;
}
+void SetAllOffline() {
+ char *proto;
+ HANDLE hContact = ( HANDLE )CallService( MS_DB_CONTACT_FINDFIRST, 0, 0 );
+ while ( hContact != NULL )
+ {
+ proto = ( char* )CallService( MS_PROTO_GETCONTACTBASEPROTO, ( WPARAM )hContact,0 );
+ if ( proto && !strcmp( MODULE, proto)) {
+ DBWriteContactSettingWord(hContact, MODULE, "Status", ID_STATUS_OFFLINE);
+ }
+ hContact = ( HANDLE )CallService( MS_DB_CONTACT_FINDNEXT,( WPARAM )hContact, 0 );
+ }
+}
+
HANDLE hModulesLoaded;
extern "C" __declspec (dllexport) int Load(PLUGINLINK *link) {
DuplicateHandle( GetCurrentProcess(), GetCurrentThread(), GetCurrentProcess(), &mainThread, THREAD_SET_CONTEXT, FALSE, 0 );
@@ -76,6 +89,8 @@ extern "C" __declspec (dllexport) int Load(PLUGINLINK *link) {
RegisterProto();
CreateProtoServices();
+ SetAllOffline();
+
// hook modules loaded
hModulesLoaded = HookEvent(ME_SYSTEM_MODULESLOADED, ModulesLoaded);
return 0;