summaryrefslogtreecommitdiff
path: root/protocols/SkypeWeb
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/SkypeWeb')
-rw-r--r--protocols/SkypeWeb/src/skype_chats.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/protocols/SkypeWeb/src/skype_chats.cpp b/protocols/SkypeWeb/src/skype_chats.cpp
new file mode 100644
index 0000000000..ff3cbc607f
--- /dev/null
+++ b/protocols/SkypeWeb/src/skype_chats.cpp
@@ -0,0 +1,27 @@
+#include "common.h"
+
+MCONTACT CSkypeProto::AddChatRoom(const char *chatname)
+{
+ MCONTACT hContact = GetContact(chatname);
+ if (!hContact)
+ {
+ hContact = (MCONTACT)CallService(MS_DB_CONTACT_ADD, 0, 0);
+ CallService(MS_PROTO_ADDTOCONTACT, hContact, (LPARAM)m_szModuleName);
+
+ setString(hContact, "ChatID", chatname);
+
+ TCHAR title[MAX_PATH];
+ mir_sntprintf(title, SIZEOF(title), _T("%s #%d"), TranslateT("Groupchat"), chatname);
+ setTString(hContact, "Nick", title);
+
+ DBVARIANT dbv;
+ if (!db_get_s(NULL, "Chat", "AddToGroup", &dbv, DBVT_TCHAR))
+ {
+ db_set_ts(hContact, "CList", "Group", dbv.ptszVal);
+ db_free(&dbv);
+ }
+
+ setByte(hContact, "ChatRoom", 1);
+ }
+ return hContact;
+} \ No newline at end of file