kphp Опубликовано 12 октября, 2019 Жалоба Поделиться Опубликовано 12 октября, 2019 (изменено) 1 заходим в system\modules открыть там файл groups.php ишим //################### Страница загрузки главного фото сообщества ###################// case "loadphoto_page": NoAjaxQuery(); $tpl->load_template('groups/load_photo.tpl'); $tpl->set('{id}', $_POST['id']); $tpl->compile('content'); AjaxTpl(); die(); break; //################### Загрузка и изминение главного фото сообщества ###################// case "loadphoto": NoAjaxQuery(); $id = intval($_GET['id']); //Проверка на то, что фото обновляет адмиH $row = $db->super_query("SELECT admin, photo, del, ban FROM `".PREFIX."_communities` WHERE id = '{$id}'"); if(stripos($row['admin'], "u{$user_id}|") !== false AND $row['del'] == 0 AND $row['ban'] == 0){ //Разришенные форматы $allowed_files = array('jpg', 'jpeg', 'jpe', 'png', 'gif'); //Получаем данные о фотографии $image_tmp = $_FILES['uploadfile']['tmp_name']; $image_name = totranslit($_FILES['uploadfile']['name']); // оригинальное название для оприделения формата $image_rename = substr(md5($server_time+rand(1,100000)), 0, 20); // имя фотографии $image_size = $_FILES['uploadfile']['size']; // размер файла $type = end(explode(".", $image_name)); // формат файла //Проверям если, формат верный то пропускаем if(in_array(strtolower($type), $allowed_files)){ if($image_size < 5000000){ $res_type = strtolower('.'.$type); $upload_dir = ROOT_DIR."/uploads/groups/{$id}/"; if(move_uploaded_file($image_tmp, $upload_dir.$image_rename.$res_type)){ //Подключаем класс для фотографий include ENGINE_DIR.'/classes/images.php'; $tmb = new thumbnail($upload_dir.$image_rename.$res_type); $tmb->size_auto(770); $tmb->jpeg_quality(95); $tmb->save($upload_dir.'o_'.$image_rename.$res_type); //Создание оригинала 200 $tmb = new thumbnail($upload_dir.$image_rename.$res_type); $tmb->size_auto(200, 1); $tmb->jpeg_quality(97); $tmb->save($upload_dir.$image_rename.$res_type); //Создание маленькой копии 100 $tmb = new thumbnail($upload_dir.$image_rename.$res_type); $tmb->size_auto('100x100'); $tmb->jpeg_quality('100'); $tmb->save($upload_dir.'100_'.$image_rename.$res_type); //Создание маленькой копии 50 $tmb = new thumbnail($upload_dir.$image_rename.$res_type); $tmb->size_auto('50x50'); $tmb->jpeg_quality('100'); $tmb->save($upload_dir.'50_'.$image_rename.$res_type); if($row['photo']){ @unlink($upload_dir.$row['photo']); @unlink($upload_dir.'50_'.$row['photo']); @unlink($upload_dir.'100_'.$row['photo']); } //Добавляем на стену $wall_text = "<div class=\"profile_update_photo\"><a href=\"\" onClick=\"epage.vPhoto2(\'{$id}\', \'o_{$image_rename}{$res_type}\'); return false\"><img src=\"/uploads/groups/{$id}/o_{$image_rename}{$res_type}\" style=\"margin-top:3px\"></a></div>"; $db->query("INSERT INTO `".PREFIX."_communities_wall` SET public_id = '{$id}', text = '{$wall_text}', add_date = '{$server_time}', type = 'в сообществе обновилась фотография:'"); $dbid = $db->insert_id(); $db->query("UPDATE `".PREFIX."_communities` SET rec_num = rec_num+1 WHERE id = '{$id}'"); //Вставляем фотографию $db->query("UPDATE `".PREFIX."_communities` SET photo = '{$image_rename}{$res_type}' WHERE id = '{$id}'"); //Результат для ответа echo $image_rename.$res_type; mozg_clear_cache_folder('groups'); } else echo 'big_size'; } else echo 'big_size'; } else echo 'bad_format'; } die(); break; Заменить на //################### Страница загрузки главного фото сообщества ###################// case "loadphoto_page": NoAjaxQuery(); $tpl->load_template('groups/load_photo.tpl'); $tpl->set('{id}', $_POST['id']); $tpl->compile('content'); AjaxTpl(); die(); break; //################### Загрузка и изменение главного фото сообщества ###################// case "loadphoto": NoAjaxQuery(); $id = intval($_GET['id']); //Проверка на то, что фото обновляет админ $row = $db->super_query("SELECT admin, photo, del, ban FROM `".PREFIX."_communities` WHERE id = '{$id}'"); if(stripos($row['admin'], "u{$user_id}|") !== false AND $row['del'] == 0 AND $row['ban'] == 0){ //Разрешенные форматы $allowed_files = array('jpg', 'jpeg', 'jpe', 'png', 'gif'); //Получаем данные о фотографии $image_tmp = $_FILES['uploadfile']['tmp_name']; $image_name = totranslit($_FILES['uploadfile']['name']); // оригинальное название для определения формата $image_rename = substr(md5($server_time+rand(1,100000)), 0, 20); // имя фотографии $image_size = $_FILES['uploadfile']['size']; // размер файла $type = end(explode(".", $image_name)); // формат файла //Проверяем если, формат верный то пропускаем if(in_array(strtolower($type), $allowed_files)){ if($image_size < 5000000){ $res_type = strtolower('.'.$type); $upload_dir = ROOT_DIR."/uploads/groups/{$id}/"; if(move_uploaded_file($image_tmp, $upload_dir.$image_rename.$res_type)){ //Подключаем класс для фотографий include ENGINE_DIR.'/classes/images.php'; //Создание оригинала $tmb = new thumbnail($upload_dir.$image_rename.$res_type); $tmb->size_auto('200', 1); $tmb->jpeg_quality('100'); $tmb->save($upload_dir.$image_rename.$res_type); //Создание маленькой копии 100 $tmb = new thumbnail($upload_dir.$image_rename.$res_type); $tmb->size_auto('100x100'); $tmb->jpeg_quality('100'); $tmb->save($upload_dir.'100_'.$image_rename.$res_type); //Создание маленькой копии 50 $tmb = new thumbnail($upload_dir.$image_rename.$res_type); $tmb->size_auto('50x50'); $tmb->jpeg_quality('100'); $tmb->save($upload_dir.'50_'.$image_rename.$res_type); $check_system_albums = $db->super_query("SELECT aid, cover FROM `".PREFIX."_communities_albums` WHERE pid = '{$id}' AND system = 1"); if(!$check_system_albums) { $hash = md5(md5($server_time).$name.$descr.md5($user_info['user_id']).md5($user_info['user_email']).$_IP); $date_create = date('Y-m-d H:i:s', $server_time); $sql_ = $db->query("INSERT INTO `".PREFIX."_communities_albums` (pid, name, descr, ahash, adate, position, system) VALUES ('{$id}', 'Фотографии со страницы сообщества', '', '{$hash}', '{$date_create}', '0', '1')"); $aid_fors = $db->insert_id(); $db->query("UPDATE `".PREFIX."_communities` SET albums_num = albums_num+1 WHERE id = '{$id}'"); } else $aid_fors = $check_system_albums['aid']; $date = date('Y-m-d H:i:s', $server_time); $position_all = $_SESSION['position_all']; if($position_all){ $position_all = $position_all+1; $_SESSION['position_all'] = $position_all; } else { $position_all = 100000; $_SESSION['position_all'] = $position_all; } $db->query("INSERT INTO `".PREFIX."_communities_photos` (album_id, photo_name, pid, date, position, userid) VALUES ('{$aid_fors}', '{$image_rename}{$res_type}', '{$id}', '{$date}', '{$position_all}', '0')"); if(!$check_system_albums['cover'] OR !$check_system_albums) $db->query("UPDATE `".PREFIX."_communities_albums` SET cover = '{$image_rename}{$res_type}' WHERE aid = '{$aid_fors}'"); $db->query("UPDATE `".PREFIX."_communities_albums` SET photo_num = photo_num+1, adate = '{$date}' WHERE aid = '{$aid_fors}'"); $wall_text = "<div class=\"profile_update_photo\"><a href=\"\" onclick=\"epage.vPhoto(\'{$id}\', \'{$image_rename}\'); return false\" ><img src=\"/uploads/groups/{$id}/{$image_rename}{$res_type}\" style=\"margin-top:3px\"></a></div>"; $dbid = $db->insert_id(); //Вставляем фотографию $db->query("UPDATE `".PREFIX."_communities` SET photo = '{$image_rename}{$res_type}' WHERE id = '{$id}'"); //Результат для ответа echo $image_rename.$res_type; mozg_clear_cache_folder('groups'); } else echo 'big_size'; } else echo 'big_size'; } else echo 'bad_format'; } die(); break; автор неизвестен вырезано из сборки mixnet pro Изменено 12 октября, 2019 пользователем kphp Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения