Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- include_once("methods.php");
- class GROUP{
- public $name;
- public $mime;
- public $task;
- public $uploadfile;
- public $gid;
- public function __construct($task,$name,$img,$mime,$onlyone=false,$copy=false){
- if($copy){
- $this->name = file_get_contents("tasks/".$task."/group_name.txt");
- $this->uploadfile = file_get_contents("tasks/".$task."/group_img.txt");
- // file_put_contents("tasks/".$task."/group_img.txt",$this->uploadfile);
- echo 999;
- $this->mime = mime_content_type($this->uploadfile);
- }else{
- $this->name = $name;
- $this->uploadfile = $img;
- $this->mime = $mime;
- }
- file_put_contents("tasks/".$task."/group_name.txt",$this->name);
- file_put_contents("tasks/".$task."/group_img.txt",$this->uploadfile);
- $this->task = $task;
- $this->create($onlyone);
- $this->set_avatar();
- }
- private function set_avatar(){
- }
- public static function leave($gid,$user){
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, "http://m.vk.com/club".$gid."?act=leave")) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rhcut'));
- $result = curl_exec($curl);
- curl_close($curl);
- file_put_contents("leave.log",$result);
- $tags = preg_match('|<form action="(/club.*?)" method="post">|sei',$result,$regs);
- if(count($regs)===0){
- echo 'error';
- // exit;
- }
- $link = $regs[1];
- ////////////////////////////////
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, "http://m.vk.com".$link)) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rchut'));
- // curl_setopt($curl,CURLOPT_POST,true);
- // curl_setopt($curl,CURLOPT_POSTFIELDS,array(
- // '_ajax'=> '1',
- // 'hash' => $hash
- // ));
- $result = curl_exec($curl);
- curl_close($curl);
- file_put_contents("leave_answer.log",$result);
- }
- private function create($onlyone){
- $uploadfile = $this->uploadfile;
- if($onlyone == false) $accs = explode("\n",file_get_contents("tasks/".$this->task."/accounts.txt"));
- else {
- $accs = array($onlyone);
- }
- rm_by_val("",$accs);
- UI::vkgg_success("Всего аккаунтов: ".count($accs)."<br/>");
- echo str_repeat(' ',1024*64);
- flush();
- foreach($accs as $e){
- $errs = 0;
- start:
- $errs++;
- $acc = explode(":",$e);
- $login = $acc[0];
- $password = $acc[1];
- $plogin = $acc[2];
- $dog = strrpos($acc[3],"@");
- $ppassword = substr($acc[3],0,$dog);
- $proxy = substr($acc[3],$dog+1,strlen($acc[3]));
- $phost = $proxy;
- $pport = $acc[4];
- $hash = md5($login);
- $user = new login($login,$password,$plogin.":".$ppassword."@".$phost.":".$pport);
- if(!$user->join()) {
- UI::vkgg_error("Ошибка авторизации");
- echo str_repeat(' ',1024*64);
- flush();
- rm_by_val($e,$accs);
- file_put_contents("tasks/".$this->task."/accounts.txt",implode("\n",$accs));
- file_put_contents("tasks/".$this->task."/blocked.txt",$e."\n",FILE_APPEND);
- continue;
- }
- ////////////////////////////////////////////
- echo str_repeat(' ',1024*64);
- flush();
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, "http://m.vk.com/groups?act=new ")) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rcutv'));
- $result = curl_exec($curl);
- file_put_contents("log_for_checking.log.txt",$result."\n\n\n".$this->name."\n\n\n".$uploadfile);
- curl_close($curl);
- $tags = preg_match('|<form action="(/groups\?act=create.*?)" method="post">|sei',$result,$regs);
- if(count($regs)===0){
- if(!$user->join()){
- UI::vkgg_error("Ошибка авторизации");
- echo str_repeat(' ',1024*64);
- flush();
- rm_by_val($e,$accs);
- file_put_contents("tasks/".$this->task."/accounts.txt",implode("\n",$accs));
- file_put_contents("tasks/".$this->task."/blocked.txt",$e."\n",FILE_APPEND);
- continue;
- }else{
- if(strpos($result,"act=blocked")){
- UI::vkgg_error("Пользователь заблокирован. Необходима ручная разблокировка по смс-коду");
- echo str_repeat(' ',1024*64);
- flush();
- rm_by_val($e,$accs);
- file_put_contents("tasks/".$this->task."/accounts.txt",implode("\n",$accs));
- file_put_contents("tasks/".$this->task."/blocked.txt",$e."\n",FILE_APPEND);
- continue;
- }
- if($errs>2){
- UI::vkgg_error("Возможно, вк вас блокирует");
- echo str_repeat(' ',1024*64);
- flush();
- rm_by_val($e,$accs);
- file_put_contents("tasks/".$this->task."/accounts.txt",implode("\n",$accs));
- file_put_contents("tasks/".$this->task."/blocked.txt",$e."\n",FILE_APPEND);
- continue;
- }
- UI::vkgg_error("Пользователь заблокирован. Но, может, и нет. Пробуем еще раз");sleep(3);
- goto start;
- }
- }
- $errs=0;
- echo str_repeat(' ',1024*64);
- flush();
- $link = $regs[1];
- $data = array();
- $data['title'] = ''.$this->name;
- $data['type'] = "0";
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, "http://m.vk.com".$link)) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rcuthfv'));
- if( !curl_setopt($curl,CURLOPT_POST, true)) ui_net_error();
- if( !curl_setopt($curl,CURLOPT_POSTFIELDS, $data))ui_net_error();
- $result = curl_exec($curl);
- curl_close($curl);
- file_put_contents("fromthefuture.log.txt",$result."\n\n\n".$this->name."\n\n\n".$uploadfile);
- if(strpos($result,'<div class="captcha_form">')){
- UI::vkgg_success("Ожидаем капчу для создания группы...<br/>");
- $tags = preg_match('|nput type="hidden" name="captcha_sid" value="(.*?)"><input type="hidden" name="tit|sei',$result,$regs);
- if(count($regs)===0){
- UI::vkgg_error("Ошибка. Возможно, сервера вконтакте неисправны");
- rm_by_val($e,$accs);
- file_put_contents("tasks/".$this->task."/accounts.txt",implode("\n",$accs));
- file_put_contents("tasks/".$this->task."/blocked.txt",$e."\n",FILE_APPEND);
- continue;
- }
- echo str_repeat(' ',1024*64);
- flush();
- $sid = $regs[1];
- $key = sendCaptcha($sid);
- $tags = preg_match('|<form action="(/groups\?act=create.*?)" method="post">|sei',$result,$regs);
- if(count($regs)===0){
- echo "Ошибка. Создать группу невозможно, так как пользователя ".$login." временно заблокировали";
- rm_by_val($e,$accs);
- file_put_contents("tasks/".$this->task."/accounts.txt",implode("\n",$accs));
- file_put_contents("tasks/".$this->task."/blocked.txt",$e."\n",FILE_APPEND);
- continue;
- }
- echo str_repeat(' ',1024*64);
- flush();
- $link = $regs[1];
- // $key = sendCaptcha($sid);
- $data = array();
- $data['title'] = $this->name;
- $data['type'] = "0";
- $data['captcha_sid'] = $sid;
- $data['captcha_key'] = $key;
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, "http://m.vk.com".$link)) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rcuthf'));
- if( !curl_setopt($curl,CURLOPT_POST, true)) ui_net_error();
- if( !curl_setopt($curl,CURLOPT_POSTFIELDS, $data))ui_net_error();
- $result = curl_exec($curl);
- curl_close($curl);
- }
- echo str_repeat(' ',1024*64);
- flush();
- $tags = preg_match('|/club(.*?)\?act|sei',$result,$regs);
- if(count($regs)===0){
- UI::vkgg_error("Ошибка. Группу создать не удалось, так как пользователя ".$login." временно заблокировали<br/>");
- rm_by_val($e,$accs);
- file_put_contents("tasks/".$this->task."/accounts.txt",implode("\n",$accs));
- file_put_contents("tasks/".$this->task."/blocked.txt",$e."\n",FILE_APPEND);
- continue;
- }
- $gid = $regs[1];
- $this->gid = $gid;
- $groups = explode("\n",file_get_contents("tasks/".$this->task."/group.txt"));
- $was = false;
- foreach($groups as &$val){
- if(explode(":",$val)[0] == $login){
- $val = explode(":",$val)[0].":".$gid;
- $was = true;
- file_put_contents("tasks/".$this->task."/group.txt",implode("\n",$groups));
- break;
- }
- }
- echo str_repeat(' ',1024*64);
- flush();
- if(!$was) file_put_contents("tasks/".$this->task."/group.txt",$login.":".$gid."\n",FILE_APPEND);
- UI::vkgg_success("Группа <a target='_blank' href='http://vk.com/club".$gid."'>club".$gid."</a> создана...<br/>");
- echo str_repeat(' ',1024*64);
- flush();
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, "https://vk.com/al_page.php")) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rcutv'));
- if( !curl_setopt($curl,CURLOPT_POST, true)) ui_net_error();
- if( !curl_setopt($curl,CURLOPT_POSTFIELDS, array(
- 'act' => "a_get_contacts",
- 'al' => '1',
- 'oid' => "-".(int)$gid
- )))ui_net_error();
- $result = curl_exec($curl);
- curl_close($curl);
- UI::vkgg_error("пампам");
- file_put_contents("contact.log",$result);
- $tags = preg_match('|"Page\.deleteContact\(-\d+, \d+, \'(.*?)\'\)">|sei',$result,$regs);
- if(count($regs)===0){
- UI::vkgg_error("Не удается найти хеш на странице. Вероятно, VK что-то изменил. Пропускаем.");
- continue;
- }
- $hash = $regs[1];
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, "https://vk.com/al_page.php")) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rhctv'));
- if( !curl_setopt($curl,CURLOPT_POST, true)) ui_net_error();
- curl_setopt($curl,CURLOPT_HTTPHEADER,array(
- 'X-Requested-With: XMLHttpRequest',
- 'Referer: https://vk.com/club125261858'));
- if( !curl_setopt($curl,CURLOPT_POSTFIELDS, array(
- 'act' => "a_delete_contact",
- 'al' => '1',
- 'hash' =>$hash,
- 'mid' => (int)$user->get_id(),
- 'oid' => "-".(int)$gid
- )))ui_net_error();
- $result = curl_exec($curl);
- curl_close($curl);
- $this->gid=$gid;
- file_put_contents("mega_log.log.txt",$result."\n\n\n".$hash." ".$user->get_id()." ".$gid);
- //
- ///////////////////////NOW LOADING PHOTO///////////////////////
- //
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, "http://m.vk.com/")) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rcuptv'));
- $result = curl_exec($curl);
- curl_close($curl);
- UI::vkgg_success("Теперь пытаемся изменить аватарку...");
- ////////////////////////////////////
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, "https://m.vk.com/album-".$this->gid."_0?act=add")) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rhcuv'));
- $result = curl_exec($curl);
- curl_close($curl);
- file_put_contents("url_taked.log",$result);
- UI::vkgg_success("URL получен..");
- //////////////////////////////////////////////
- $tags = preg_match('|<form action="(https://.*?)" method="post" enctype="multipart/for|sei',$result,$regs);
- if(count($regs)===0){
- UI::vkgg_error("Не удается найти ссылку на странице. Вероятно, VK что-то изменил. Пропускаем изменение аватарки.");
- continue;
- }
- $url = $regs[1];
- ///////////////////////////////////////////
- $curl = curl_init();
- if( !curl_setopt($curl,CURLOPT_URL, $url)) ui_net_error();
- curl_setopt_array($curl,$user->make_opts('rcutfv'));
- $result = curl_exec($curl);
- curl_close($curl);
- /////////////////////////////////
- $data = [
- 'photo' => new CurlFile($this->uploadfile, $this->mime, $this->uploadfile),
- '__extra'=>'1'
- ];
- $tries = 0;
- tryImage:
- $tries++;
- if($tries>0) {
- UI::vkgg_error("попытка номер <b>#".$tries."</b>");
- echo str_repeat(' ',1024*64);
- flush();
- }
- $ch = curl_init();
- // echo $url;
- curl_setopt($ch, CURLOPT_URL, str_replace(array("\n","\r"),'',$url));
- curl_setopt_array($ch,$user->make_opts('rhcutv'));
- curl_setopt($ch, CURLOPT_POST, 1);
- curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
- curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
- $res = curl_exec($ch);
- curl_close($ch);
- UI::vkgg_success("Аватарка загружена...");
- if(strpos($res, "add&m=118")){
- UI::vkgg_error("Выбрана слишком маленькая фотография! Фотография не должна быть меньше 200x200 px<br/>");
- exit;
- }elseif(strpos($res, "add&m=117")){
- UI::vkgg_error("Выбранное изображение некорректно<br/>");
- exit;
- }
- $tags = preg_match('|Location: (.*?)\n|m',$res,$regs);
- if(count($regs)===0){
- if($tries<3){
- sleep(4);
- goto tryImage;
- }
- UI::vkgg_error("Почему-то фото не удается поменять. Попробуйте позже");
- continue;
- }
- UI::vkgg_success("почти...");
- $url = $regs[1];
- echo str_repeat(' ',1024*64);
- flush();
- for($j=0;$j<2;$j++){
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, str_replace(array("\n","\r"),"",$url));
- curl_setopt_array($ch,$user->make_opts('hrcutv'));
- $res = curl_exec($ch);
- curl_close($ch);
- }
- UI::vkgg_success("Фотография изменена!");
- if(!is_dir("stats/".$this->gid)) mkdir("stats/".$this->gid);
- file_put_contents("stats/".$this->gid."/user.txt",$login);
- file_put_contents("stats/all_groups.txt",$this->gid."\n",FILE_APPEND);
- self::leave($this->gid,$user);
- // self::leave($gid,$user);
- }
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement