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 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.