summaryrefslogtreecommitdiff
path: root/protocols/VKontakte/src/vkjs.js
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/VKontakte/src/vkjs.js')
-rw-r--r--protocols/VKontakte/src/vkjs.js50
1 files changed, 43 insertions, 7 deletions
diff --git a/protocols/VKontakte/src/vkjs.js b/protocols/VKontakte/src/vkjs.js
index 7feb127504..f40a515a40 100644
--- a/protocols/VKontakte/src/vkjs.js
+++ b/protocols/VKontakte/src/vkjs.js
@@ -1,4 +1,4 @@
-// Copyright (c) 2013-24 Miranda NG team (https://miranda-ng.org)
+// Copyright (c) 2013-25 Miranda NG team (https://miranda-ng.org)
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation version 2
@@ -17,6 +17,37 @@
// 4. Create additional version(s) stored procedure (if required)
+// Stored procedure name: RetrieveUsersFrameInfo = Begin
+// Arguments:
+// Args.userids
+// Args.fields
+// Args.norepeat
+// Args.setonline
+
+// ver 1
+var Req =[];
+if (Args.setonline == 1) {
+ API.account.setOnline();
+ Req = API.friends.getRequests({ "extended": 0, "need_mutual": 0, "out": 0 });
+};
+var res = [];
+var US = API.users.get({ "user_ids": Args.userids, "fields": Args.fields, "name_case": "nom" });
+var index = US.length;
+while (index > 0) {
+ index = index - 1;
+ if (US[index].online != 0) {
+ res.push(US[index]);
+ };
+};
+return { "freeoffline": 1, "norepeat": parseInt(Args.norepeat), "usercount": res.length, "users": res , "requests": Req};
+
+// ver 2
+if (Args.setonline == 1)
+ API.account.setOnline();
+var res = API.users.get({ "user_ids": Args.userids, "fields": Args.fields, "name_case": "nom" });
+return { "freeoffline": 0, "norepeat": parseInt(Args.norepeat), "usercount": res.length, "users": res, "requests": API.friends.getRequests({ "extended": 0, "need_mutual": 0, "out": 0 })};
+// Stored procedure name: RetrieveUsersFrameInfo = End
+
// Stored procedure name: RetrieveUserInfo = Begin
// Arguments:
// Args.userid
@@ -38,7 +69,7 @@ if (Args.setonline == 1)
API.account.setOnline();
var US = [];
var res = API.users.get({ "user_ids": API.friends.getOnline(), "fields": Args.fields, "name_case": "nom" });
-var t = 10;
+var t = 3;
while (t > 0) {
US = API.users.get({ "user_ids": Args.userids, "fields": Args.fields, "name_case": "nom" });
var index = US.length;
@@ -141,7 +172,8 @@ if (index > 0) {
};
Idx = Idx + 1;
};
- var FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
+ var FUsers = [];
+ if (Uids.length > 0) FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
return { "count": index, "datetime": parseInt(Args.time), "items": ret, "fwd_users": FUsers, "once": parseInt(Args.once), "rcount": parseInt(Args.reqcount) };
} else {
return{"count":0,"datetime":parseInt(Args.time),"items":[],"fwd_users":[],"once":parseInt(Args.once),"rcount":parseInt(Args.reqcount)};
@@ -187,7 +219,8 @@ while (Idx < FMsgs.length) {
};
Idx = Idx + 1;
};
-var FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
+var FUsers = [];
+if (Uids.length > 0) FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
var Conv = API.messages.getConversationsById({"peer_ids": ConvIds});
return { "Msgs": Msgs, "fwd_users": FUsers, "conv":Conv };
// Stored procedure name: RetrieveMessagesConversationByIds = End
@@ -329,7 +362,8 @@ while (Idx < FMsgs.length) {
};
Idx = Idx + 1;
};
-var FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
+var FUsers = [];
+if (Uids.length > 0) FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
var MsgUsers = API.users.get({ "user_ids": ChatMsg.items@.user_id, "fields":"id,first_name,last_name"});
return { "info": Info, "users": ChatUsers, "msgs": ChatMsg, "fwd_users": FUsers, "msgs_users": MsgUsers };
@@ -363,7 +397,8 @@ while (Idx < FMsgs.length) {
};
Idx = Idx + 1;
};
-var FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
+var FUsers = [];
+if (Uids.length > 0) FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
var GUsers = [];
if(GUids.length>0){
GUsers = API.groups.getById({ "group_ids": GUids });
@@ -402,7 +437,8 @@ while (Idx < FMsgs.length) {
};
Idx = Idx + 1;
};
-var FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
+var FUsers = [];
+if (Uids.length > 0) FUsers = API.users.get({ "user_ids": Uids, "name_case": "gen" });
var GUsers = [];
if(GUids.length>0){
GUsers = API.groups.getById({ "group_ids": GUids });