FindYou_admin Опубликовано 23 июня, 2014 Жалоба Поделиться Опубликовано 23 июня, 2014 Описание: эта фича позволит рассказать о сообществе у себя на стене(как в вк) Скриншоты: в архиве Скачать: https://yadi.sk/d/V_JEvyGSUYDpD Ссылка на комментарий Поделиться на другие сайты Поделиться
Velman Опубликовано 2 октября, 2016 Жалоба Поделиться Опубликовано 2 октября, 2016 Спасибо. Забираю. Ссылка на комментарий Поделиться на другие сайты Поделиться
SSapeRR Опубликовано 19 июня, 2022 Жалоба Поделиться Опубликовано 19 июня, 2022 (изменено) Немного доработал "фичу") Теперь учитываются гендер пользователя и обложка группы. Установка такая же: 1. В profile.js после "var groups = {" вставляем: Спойлер //Поделиться сообществом wall_tell_g: function(id){ $('#invitemsg').addClass('public_invite_text'); $('#invitemsg').show("slow").text('Ваши друзья увидят ссылку на это сообщество в своих новостных лентах.'); $.post('/index.php?go=groups&act=wall_tell_g', {id: id}, function(data){ if(data == 1) addAllErr(lang_wall_tell_tes); }); }, 2. В groups.php добавляем после case "deladmin" ... break; : Спойлер //################### Рассказать друзьям о сообществе ###################// case "wall_tell_g": NoAjaxQuery(); $rid = intval($_POST['id']); $row1 = $db->super_query("SELECT title, descr, photo, cover FROM `".PREFIX."_communities` WHERE id = '{$rid}'"); $genderrow = $db->super_query("SELECT user_sex FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'"); if ($genderrow['user_sex'] == 2) { $gendertext = 'поделилась сообществом'; } else { $gendertext = 'поделился сообществом'; } if($row1['photo']){ $rava = '/uploads/groups/'.$rid.'/'.$row1['photo']; }else{ $rava = '{theme}/images/no_ava.gif'; } if ($row1['cover']) { $coverimg = '/uploads/groups/'.$rid.'/'.$row1['cover']; } if($row1){ if ($row1['cover']) { //Вставляем себе на стену (если у сообщества есть обложка) $db->query("INSERT INTO `".PREFIX."_wall` SET author_user_id = '{$user_id}', for_user_id = '{$user_id}', text = '<a href=\"/public{$rid}\" onclick=\"Page.Go(this.href); return false;\"><img src=\"{$coverimg}\" style=\"max-width: 330px;\"><div class=\"public_ava_rep_normal\"><img src=\"{$rava}\" style=\"width: 100px;\"><div class=\"public_text_rep\">{$row1['title']}</div></div></a>', add_date = '{$server_time}', fast_comm_id = 0, type = '{$gendertext}'"); $dbid = $db->insert_id(); $db->query("UPDATE `".PREFIX."_users` SET user_wall_num = user_wall_num+1 WHERE user_id = '{$user_id}'"); //Вставляем в ленту новостей $db->query("INSERT INTO `".PREFIX."_news` SET ac_user_id = '{$user_id}', action_type = 1, action_text = '<a href=\"/public{$rid}\" onclick=\"Page.Go(this.href); return false;\"><img src=\"{$coverimg}\" style=\"max-width: 330px;\"><div class=\"public_ava_rep_normal\"><img src=\"{$rava}\" style=\"width: 100px;\"><div class=\"public_text_rep\">{$row1['title']}</div></div></a>', obj_id = '{$dbid}', action_time = '{$server_time}'"); //Чистим кеш mozg_clear_cache_file("user_{$user_id}/profile_{$user_id}"); } else { //Вставляем себе на стену (если у сообщества нет обложки) $db->query("INSERT INTO `".PREFIX."_wall` SET author_user_id = '{$user_id}', for_user_id = '{$user_id}', text = '<a href=\"/public{$rid}\" onclick=\"Page.Go(this.href); return false;\"><div class=\"public_ava_rep_noobl\"><img src=\"{$rava}\" style=\"width: 100px;\"><div class=\"public_text_rep\">{$row1['title']}</div></div></a>', add_date = '{$server_time}', fast_comm_id = 0, type = '{$gendertext}'"); $dbid = $db->insert_id(); $db->query("UPDATE `".PREFIX."_users` SET user_wall_num = user_wall_num+1 WHERE user_id = '{$user_id}'"); //Вставляем в ленту новостей $db->query("INSERT INTO `".PREFIX."_news` SET ac_user_id = '{$user_id}', action_type = 1, action_text = '<a href=\"/public{$rid}\" onclick=\"Page.Go(this.href); return false;\"><div class=\"public_ava_rep_noobl\"><img src=\"{$rava}\" style=\"width: 100px;\"><div class=\"public_text_rep\">{$row1['title']}</div></div></a>', obj_id = '{$dbid}', action_time = '{$server_time}'"); //Чистим кеш mozg_clear_cache_file("user_{$user_id}/profile_{$user_id}"); } } else { echo 1; } die(); break; 3. В style.css добавляем в удобное место: Спойлер .group_share, .event_share, .group_checkin {padding-top: 5px;} .group_share .photo, .event_share .photo {width: 75px;height: 75px;padding: 3px 0 0;overflow: hidden;} .group_share .photo img, .event_share .photo img { width: 75px; border-radius: 60px; -moz-border-radius: 60px; -webkit-border-radius: 60px; } .group_share .info, .event_share .info {overflow: hidden;padding: 5px 10px;} .group_share .title, .event_share .title, .group_checkin .title {font-weight: bold;} .group_share .desc {color: #777;padding: 5px 0 0;line-height: 140%;} .group_tell_img { background: url(../images/transp.png) no-repeat -33px -279px; width: 11px; height: 11px; margin-top: 2px; } .public_invite_text { font-family: 'Montserrat Medium', sans-serif; font-size: 12px; color: #00cc00; margin-top: 5px; cursor: default; } .public_text_rep { margin-left: 109px; margin-top: -25px; margin-bottom: 10px; font-family: 'Montserrat Medium',sans-serif; font-size: 14px; max-width: 150px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .public_ava_rep_normal { margin-top: -75px; margin-left: 10px; max-width: 310px; } .public_ava_rep_noobl { margin-top: 10px; margin-left: 10px; max-width: 310px; float:left; } .public_ava_rep_normal img, .public_ava_rep_noobl img{ box-shadow: 0px 1px 2px rgb(0 0 0 / 35%); -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.345); -webkit-box-shadow: 0px 1px 2px rgb(0 0 0 / 35%); } 4. И в /templates/вашшаблон/public/main.tpl после <a> с текстом "Пригласить друзей" вставляем: Спойлер <div id="invitemsg" class=""><a href="/public{id}" onClick="groups.wall_tell_g('{id}'); return false"><div class="group_tell_img" style="opacity:1;float: left;margin-left: 2px;margin-right: 9px;"></div>Рассказать друзьям</a></div> Стили подправьте плиз сами) Результат (скрины в спойлере): Спойлер Изменено 19 июня, 2022 пользователем SSapeRR случайно нажал на ctrl =) 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения