Roman_Jarckov

startCmd

Jan 24th, 2021 (edited)
283
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. hm.hear(/^\/start/i, async (ctx) => {
  2.     try {
  3.         if(ctx.chat){return ctx.send(`Беседа уже активирована!`);}
  4.         let { items }   = await vk.api.messages.getConversationMembers({peer_id: ctx.peerId});
  5.         let check       = utils.findOBJ(items, 'member_id', ctx.senderId);
  6.         let isBotChat   = utils.findOBJ(items, 'member_id', -ctx.$groupId);
  7.         if(!check){return ctx.send(`❗ Недостаточно прав!`);}
  8.         if(check.object.is_owner || check.object.is_admin){
  9.             for(let i = 0; i < items.length; i++){
  10.                 if(items[i].is_admin && items[i].member_id == -ctx.$groupId){
  11.                     let chat = await chats.create(ctx.chatId);
  12.                     if(!chat){return ctx.send(`Беседа уже активирована!`);}
  13.                     for(let j = 0; j < items.length; j++){
  14.                         if(items[j].member_id > 0){
  15.                             await users.add(items[j].member_id, ctx.chatId, (items[j].is_owner) ? users.roles.chatCreator : users.roles.user)
  16.                         }
  17.                     }
  18.                     return ctx.send(`Беседа успешно активирована!`);
  19.                 }
  20.             }
  21.         } else if(isBotChat && isBotChat.object.is_owner && check.object.is_admin) {
  22.             for(let i = 0; i < items.length; i++){
  23.                 if(items[i].is_admin && items[i].member_id == -ctx.$groupId){
  24.                     let chat = await chats.create(ctx.chatId);
  25.                     if(!chat){return ctx.send(`Беседа уже активирована!`);}
  26.                     for(let j = 0; j < items.length; j++){
  27.                         if(items[j].member_id > 0){
  28.                             await users.add(items[j].member_id, ctx.chatId, (items[j].is_owner) ? users.roles.chatCreator : users.roles.user);
  29.                         }
  30.                     }
  31.                     return ctx.send(`Беседа успешно активирована!`);
  32.                 }
  33.             }
  34.         } else {
  35.             return ctx.send(`У Вас недостаточно прав для активации данной конференции.`);
  36.         }
  37.     } catch (error) {
  38.         console.log(`[/start] ERROR > ${error}`);
  39.         if(error.code && error.code == 917){ return ctx.send(`❗ Вы не выдали мне права администратора!`); }
  40.         return utils.hearError(ctx, '/start', error);
  41.     }
  42. });
Add Comment
Please, Sign In to add comment