Advertisement
KiberInfinity

vk leave all groups

Feb 24th, 2013
485
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. vk_groups = {
  2.    clean:function(){
  3.       var REQ_CNT=1000;
  4.       var DEL_REQ_DELAY=400;
  5.       var SCAN_REQ_DELAY=400;
  6.       var box=null;
  7.       var mids=[];
  8.       var del_offset=0;
  9.       var abort=false; 
  10.       var deldone=function(){
  11.             box.hide();
  12.             vkMsg(IDL("ClearDone"),3000);  
  13.       };
  14.       var del=function(callback){  
  15.          if (abort) return;
  16.          var del_count=mids.length;
  17.          ge('vk_del_msg').innerHTML=vkProgressBar(del_offset,del_count,310,IDL('deleting')+' %');
  18.          var item_id=mids[del_offset];
  19.          if (!item_id){
  20.             ge('vk_del_msg').innerHTML=vkProgressBar(1,1,310,' ');
  21.             del_offset=0;
  22.             callback();
  23.          } else
  24.          dApi.call('groups.leave', {gid:item_id},function(r,t){
  25.             del_offset++;
  26.             setTimeout(function(){del(callback);},DEL_REQ_DELAY);
  27.          });
  28.       };
  29.      
  30.       var _count=0;
  31.       var cur_offset=0;
  32.       var scan=function(){
  33.          if (cur_offset==0) ge('vk_scan_msg').innerHTML=vkProgressBar(cur_offset,2,310,IDL('listreq')+' %');
  34.          
  35.          var params={extended:1};
  36.          params['count']=REQ_CNT;
  37.          params['offset']=cur_offset;
  38.          dApi.call('groups.get',params,function(r){
  39.             if (abort) return;
  40.             var ms=r.response;
  41.             if (!ms[0]){ del(deldone);  return; }
  42.             var _count=ms.shift();
  43.             ge('vk_scan_msg').innerHTML=vkProgressBar(cur_offset,_count,310,IDL('listreq')+' %');
  44.             for (var i=0;i<ms.length;i++) if (!ms[i].is_admin) mids.push(ms[i].gid);
  45.             if (cur_offset<_count){ cur_offset+=REQ_CNT; setTimeout(scan,SCAN_REQ_DELAY);} else del(deldone);
  46.          });
  47.       };
  48.      
  49.       var run=function(){
  50.          
  51.          box=new MessageBox({title: IDL('LeaveGroups'),closeButton:true,width:"350px"});
  52.          box.removeButtons();
  53.          box.addButton(IDL('Cancel'),function(r){abort=true; box.hide();},'no');
  54.          var html='</br><div id="vk_del_msg" style="padding-bottom:10px;"></div><div id="vk_scan_msg"></div>';
  55.          box.content(html).show(); 
  56.          scan();
  57.       };
  58.  
  59.       vkAlertBox(IDL('DelVideos'),IDL('LeaveAllGroupsConfirm'),run,true);
  60.    }
  61. }
  62. vk_groups.clean();
Advertisement
RAW Paste Data Copied
Advertisement