Skip to content

Instantly share code, notes, and snippets.

@Akellacom
Created May 18, 2016 04:40
Show Gist options
  • Save Akellacom/ecd7ab24d7a1f427a17a2343fbb4b95b to your computer and use it in GitHub Desktop.
Save Akellacom/ecd7ab24d7a1f427a17a2343fbb4b95b to your computer and use it in GitHub Desktop.
var timeout = 20;
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type= 'text/javascript';
script.src= 'https://code.jquery.com/jquery-2.1.0.min.js';
head.appendChild(script);
function checkJQLoaded(){return typeof $ != 'undefined' && $.fn != 'undefined';}
var loadJQ = setInterval(function () {
timeout--;
if (checkJQLoaded()) {
loadAllAccounts();
clearInterval(loadJQ);
return;
}
else if (timeout > 0) {
return;
}
else {
alert('Что-то я не могу загрузить JQuery. '
+ 'Попробуйте обновить страницу и сделать всё заново!');
clearInterval(loadJQ);
}
}, 100);
var allCnt = 0;
var dogsCnt = 0;
var accountsCnt;
function loadAllAccounts(){
var initialHeight = 0; var stops = 0;
accountsCnt = $('div#gedit_users_summary_members').text()
.replace(/\D/g, '');
var sInterval = setInterval(function(){
if (initialHeight == document.body.clientHeight
&& $('img.gedit_user_img').length+15 > accountsCnt){
stops++;
if (stops > 30
&& $('img.gedit_user_img').length+15 > accountsCnt) {
clearInterval(sInterval); go(); return;
}
} else {
stops = 0;
}
initialHeight = document.body.clientHeight;
$('a#gedit_users_more_members').click();
scrollTo(0, 9999999999);
}, 100);
}
function go(){
$('img.gedit_user_img').each(function(){
var src = $(this).attr('src');
allCnt++;
if (src != '/images/deactivated_200.png' && src != '/images/deactivated_100.png')
$(this).parent().parent().parent().hide();
else
dogsCnt++;
});
if (confirm('Всего обработано подписчиков: ' + allCnt
+ '; собачек: '
+ dogsCnt + ' (' + (100*dogsCnt/allCnt).toFixed(2) + '%)\n'
+ 'Удаляем собачек?')){
var dogsArray = $('img[src="/images/deactivated_200.png"],img[src="/images/deactivated_100.png"]');
var currentDogIndex = 0;
var dogsInterval = setInterval(
function(){
if (!dogsArray[currentDogIndex]){
clearInterval(dogsInterval);
return;
}
$(dogsArray[currentDogIndex]).parent().parent().parent()
.find("a.gedit_user_action").last().click();
currentDogIndex++;
},
1000
);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment