Опубликовано: 31 марта 201213 г Приветствую, Эксперты!Не получается убрать то, что в чёрном квадрате прямоугольнике.Искал в этих php файлах не нашел тег "friends" (я смотрел в исходнике, по идее он так называется :unsure: )1-ый <?php class frq_global { public $registry; public function __construct() { $this->registry = ipsRegistry::instance(); $this->settings =& $this->registry->fetchSettings(); } public function getOutput() { if($this->settings['frq_on'] != "1") return ""; $toggle_code_uf = ($this->settings['frq_toggle'] == 'none') ? "$('frq_uf_'+id).toggle()" : "Effect.toggle('frq_uf_'+id,'{$this->settings['frq_toggle']}')"; $toggle_code_wp = ($this->settings['frq_toggle'] == 'none') ? "$('frq_wp_'+id).toggle()" : "Effect.toggle('frq_wp_'+id,'{$this->settings['frq_toggle']}')"; return <<<HTML <script type='text/javascript'> var frq_hide_warn = {$this->settings['frq_hide_warn']}; var frq_hide_fields = {$this->settings['frq_hide_fields']}; function frq_toggle(id) { if(frq_hide_fields == 1) {$toggle_code_uf}; if(frq_hide_warn == 1 && $('frq_wp_'+id)) {$toggle_code_wp}; } function frq_put_to_editor(string){ if( !in_use ) { if( $('fast-reply_toolbar_1') ){ $('fast-reply_toolbar_1').show(); } if( $('fast-reply_toolbar_2') ){ $('fast-reply_toolbar_2').show(); } $('fast-reply_textarea').removeClassName('unloaded_editor').value = ''; ipb.editors[ 'fast-reply' ] = new ipb.editor( 'fast-reply', USE_RTE ); $( ipb.editors['fast-reply'] ).resize_to( 250 ); in_use = 1; } if(USE_RTE) { var text = ipb.editors[ 'fast-reply' ].editor_get_contents(); if(text == "\\n<br\\n") ipb.editors[ 'fast-reply' ].editor_set_content(string); else ipb.editors[ 'fast-reply' ].editor_set_content(text + '<br />' + string); } else document.getElementById("fast-reply_textarea").value += string; } function frq_nick(nick) { frq_put_to_editor('[b][member="'+nick+'"][/b], '); } function frq_quote(nick, pid) { txt = ''; if (window.getSelection) txt = window.getSelection().toString(); else if (document.getSelection) txt = document.getSelection(); else if (document.selection) txt = document.selection.createRange().text; if(txt == '') { items = $$('#post_id_'+pid+' div'); for (var i = 0; i < items.size(); i++) { if(items[i].hasClassName('entry-content')) { if (window.getSelection) { var range = document.createRange(); range.selectNode(items[i]); window.getSelection().addRange(range); txt = window.getSelection().toString(); } else if (document.getSelection) { var range = document.createRange(); range.selectNode(items[i]); document.getSelection().addRange(range); txt = document.getSelection(); } else if (document.selection) { var range = document.body.createTextRange(); range.moveToElementText(items[i]); range.select(); txt = document.getSelection(); } } } } if(USE_RTE) code = "[quote name='"+nick+"' post='"+pid+"']<br />"+txt+"<br />[/quote]<br />"; else code = "[quote name='"+nick+"' post='"+pid+"']\\n"+txt+"\\n[/quote]\\n"; frq_put_to_editor(code); sel = false; if (document.selection && document.selection.empty) document.selection.empty(); if (window.getSelection) sel = window.getSelection(); if (document.getSelection) sel = document.getSelection(); if(sel && sel.removeAllRanges) sel.removeAllRanges(); } </script> HTML; } } 2-ой class frq extends pinAwardsProMiniProfileCab { function userInfoPane($author, $contentid, $options) { $code = parent::userInfoPane($author, $contentid, $options); if($this->settings['frq_on'] != "1" || ipsRegistry::$current_application != 'forums' || !$author['member_id']) return $code; $safe_name = str_replace('"', '\"', $author['members_display_name']); $quote_args = '"'.$safe_name.'","'.$contentid.'"'; $anchors = array( '1' => (intval($this->settings['frq_anchors']) > 0) ? "#editor_fast-reply" : "javascript:void(0);", '2' => (intval($this->settings['frq_anchors']) > 0) ? "#editor_fast-reply" : "javascript:void(0);", '3' => (intval($this->settings['frq_anchors']) > 1) ? "#entry{$contentid}" : "javascript:void(0);", ); $buttons = ($this->settings['frq_on_nick'] == "1") ? "<li><a href='{$anchors[1]}' title='{$this->settings['frq_alt_nick']}' class='frq_nick' onclick='frq_nick(\"{$safe_name}\")' ><img alt='{$this->settings['frq_alt_nick']}' src='{$this->settings['img_url']}/{$this->settings['frq_icon_nick']}' ></a></li>" : ""; $buttons .= ($this->settings['frq_on_quote'] == "1") ? "<li><a href='{$anchors[2]}' title='{$this->settings['frq_alt_quote']}' class='frq_quote' onclick='frq_quote({$quote_args})' ><img alt='{$this->settings['frq_alt_quote']}' src='{$this->settings['img_url']}/{$this->settings['frq_icon_quote']}'></a></li>" : ""; $buttons .= ($this->settings['frq_on_info'] == "1") ? "<li><a href='{$anchors[3]}' title='{$this->settings['frq_alt_info']}' class='frq_info' onclick='frq_toggle({$contentid})'><img alt='{$this->settings['frq_alt_info']}' src='{$this->settings['img_url']}/{$this->settings['frq_icon_info']}' ></a></li>" : ""; $has_uc = false; $parts = explode("</ul>", $code); foreach($parts as $id => $subcode) { if(strpos($subcode, "user_controls") !== false) { $has_uc = true; $parts[$id] .= $buttons; } } $code = implode("</ul>", $parts); if(!$has_uc) $code = str_replace("<ul class='user_fields", "<ul class='user_controls clear'>{$buttons}</ul><ul class='user_fields", $code); $display = ($this->settings['frq_hide_fields'] == "1") ? "style='display:none;'" : ""; $code = str_replace("class='user_fields", "id='frq_uf_{$contentid}' {$display} class='user_fields", $code); $display = ($this->settings['frq_hide_warn'] == "1") ? "style='display:none;'" : ""; $code = str_replace("class='warn_panel", "id='frq_wp_{$contentid}' {$display} class='warn_panel", $code); return $code; } }
Опубликовано: 31 марта 201213 г frq_ это хук ритсуки быстрого цитирования и вставки ника.Ваши кнопки дефолтные и находятся в Глобальные -> userInfoPane Добавить в друзья: <if test="friendop:|:$this->memberData['member_id'] AND $this->memberData['member_id'] != $author['member_id'] && $this->settings['friends_enabled'] AND $this->memberData['g_can_add_friends'] && $author['member_id']"> <if test="isfriend:|:IPSMember::checkFriendStatus( $author['member_id'] )"> <li class='mini_friend_toggle is_friend' id='friend_{$contentid}_{$author['member_id']}'><a href='{parse url="app=members&module=profile§ion=friends&do=remove&member_id={$author['member_id']}&secure_key={$this->member->form_hash}" base="public"}' title='{$this->lang->words['remove_friend']}'>{parse replacement="remove_friend"}</a></li> <else /> <li class='mini_friend_toggle is_not_friend' id='friend_{$contentid}_{$author['member_id']}'><a href='{parse url="app=members&module=profile§ion=friends&do=add&member_id={$author['member_id']}&secure_key={$this->member->form_hash}" base="public"}' title='{$this->lang->words['add_friend']}'>{parse replacement="add_friend"}</a></li> </if> </if> Отправить сообщение: <if test="sendpm:|:$this->memberData['g_use_pm'] AND $this->memberData['member_id'] != $author['member_id'] AND $this->memberData['members_disable_pm'] == 0 AND IPSLib::moduleIsEnabled( 'messaging', 'members' ) && $author['member_id']"> <li class='pm_button' id='pm_{$contentid}_{$author['member_id']}'><a href='{parse url="app=members&module=messaging§ion=send&do=form&fromMemberID={$author['member_id']}" base="public"}' title='{$this->lang->words['pm_member']}'>{parse replacement="send_msg"}</a></li> </if>
Опубликовано: 31 марта 201213 г Автор Ваши кнопки дефолтные и находятся в Глобальные -> userInfoPaneЭто т.е. если я их от туда уберу - то они "скинуться" и в профиле? Сейчас убрал первый, сохранил и система выдала мне ошибку :D
Опубликовано: 31 марта 201213 г Нет, за профиль отвечает другой шаблон. Сейчас убрал первый, сохранил и система выдала мне ошибкуНеправильно удалили код, какой-то тег (скорее всего ) пропустили, или лишний захватили.
Опубликовано: 31 марта 201213 г Автор Если хотите глобально убрать проще тогда отключить "дружбу". Нет, глобально мне не нужно. Мне только нужно как на первом скриншоте (см. 1 пост). Повторюсь: Сейчас убрал первый, сохранил и система выдала мне ошибку :D Как мне быть?
Опубликовано: 31 марта 201213 г Как мне быть?Отменить изменения и пробовать снова, пока не сделайте правильно.
Опубликовано: 31 марта 201213 г Автор Неправильно удалили код, какой-то тег (скорее всего </if>) пропустили, или лишний захватили. Отменить изменения и пробовать снова, пока не сделайте правильно. Да, да, да :) Это я написал до того как Вы дополнили своё сообщение, сейчас попробую еще раз. Хех, да вы Гений! Благодарю за помощь. UPD: если Вас не затруднит, не могли бы проверить на ошибки? Всё же лучше пробежаться по коду глазами мастера. :) <ul class='user_details'> <if test="avatar:|:$author['member_id'] AND $author['avatar']"> <li class='avatar'><a href="{parse url="showuser={$author['member_id']}" template="showuser" seotitle="{$author['members_seo_name']}" base="public"}" title="{$this->lang->words['view_profile']}">{$author['avatar']}</a></li> <else /> <li class='avatar'>{$author['avatar']}</li> </if> <if test="membertitle:|:$author['title']"> <li class='title'>{$author['title']}</li> </if> <if test="rankimage:|:$author['member_rank_img']"> <li class='group_icon'> <if test="rankimageimage:|:$author['member_rank_img_i'] == 'img'"> <img src='{$author['member_rank_img']}' alt='' /> <else /> {$author['member_rank_img']} </if> </li> </if> </ul> <div style='margin: 0 auto;'> <if test="xhtmlftw:|:$this->memberData['member_id'] != $author['member_id'] OR ($author['has_blog'] AND IPSLib::appIsInstalled( 'blog' )) OR ($author['has_gallery'] AND IPSLib::appIsInstalled( 'gallery' ))"> <ul class='user_controls clear'> <if test="hasblog:|:$author['has_blog'] AND IPSLib::appIsInstalled( 'blog' ) AND $author['has_blog'] != 'recache'"> <li><a href='{parse url="app=blog&show_members_blogs={$author['member_id']}" base="public"}' title='{$this->lang->words['view_blog']}'>{parse replacement="blog_link"}</a></li> </if> <if test="hasgallery:|:$author['has_gallery'] AND IPSLib::appIsInstalled( 'gallery' )"> <li><a href='{parse url="app=gallery&module=user§ion=user&user={$author['member_id']}" base="public"}' title='{$this->lang->words['view_gallery']}'>{parse replacement="gallery_link"}</a></li> </if> </ul> </if> </div> <ul class='user_fields'> <li> <span class='ft'>{$this->lang->words['m_group']}</span> <span class='fc'>{$author['_group_formatted']}</span> </li> <if test="ismember:|:$author['member_id']"> <li> <span class='ft'>{$this->lang->words['m_posts']}</span> <span class='fc'>{parse expression="$this->registry->getClass('class_localization')->formatNumber( intval( $author['posts'] ) )"}</span> </li> <li> <span class='ft'>{$this->lang->words['m_joined']}</span> <span class='fc'>{parse date="$author['joined']" format="joined"}</span> </li> </if> <if test="authorcfields:|:$author['custom_fields'] != """> <foreach loop="customFieldsOuter:$author['custom_fields'] as $group => $data"> <foreach loop="customFields:$author['custom_fields'][ $group ] as $field"> <if test="$field != ''"> <li> {$field} </li> </if> </foreach> </foreach> </if> </ul> <if test="authorwarn:|:$author['warn_percent'] !== NULL"> <br class='clear' /> <div class='warn_panel clear rounded'> <if test="$this->settings['warn_show_rating']"> <strong><a href='{parse url="app=members&module=warn§ion=warn&do=view&mid={$author['member_id']}" base="public"}' id='warn_link_{$contentid}_{$author['member_id']}' title='{$this->lang->words['warn_view_history']}' class='warn_link'>{$this->lang->words['warn_status']}</a></strong> <p class='rating_mode user_warn' title='{$this->lang->words['warn_level']} {$author['warn_percent']}%'> <if test="changewarn:|:$author['can_edit_warn']"> <a href='{parse url="app=members&module=warn§ion=warn&type=minus&mid={$author['member_id']}&t=0&st=0" base="public"}' title='{$this->lang->words['warn_decrease']}'><img src='{$this->settings['img_url']}/warn_minus.gif' alt='{$this->lang->words['minus']}' class='warn_edit down' /></a> </if> < {$this->settings['warn_min']} ( {$author['warn_level']} ) {$this->settings['warn_max']} > <if test="changewarn:|:$author['can_edit_warn']"> <a href='{parse url="app=members&module=warn§ion=warn&type=add&mid={$author['member_id']}&t={$this->request['t']}&st={$this->request['st']}" base="public"}' title='{$this->lang->words['warn_increase']}'><img src='{$this->settings['img_url']}/warn_add.gif' alt='{$this->lang->words['add']}' class='warn_edit up' /></a> </if> </p> <else /> <if test="changewarn:|:$author['can_edit_warn']"> <a href='{parse url="app=members&module=warn§ion=warn&type=add&mid={$author['member_id']}&t={$this->request['t']}&st={$this->request['st']}" base="public"}' title='{$this->lang->words['warn_increase']}'><img src='{$this->settings['img_url']}/warn_add.gif' alt='{$this->lang->words['add']}' class='warn_edit up' /></a><a href='{parse url="app=members&module=warn§ion=warn&type=minus&mid={$author['member_id']}&t=0&st=0" base="public"}' title='{$this->lang->words['warn_decrease']}'><img src='{$this->settings['img_url']}/warn_minus.gif' alt='{$this->lang->words['minus']}' class='warn_edit down' /></a> </if> <strong><a href='{parse url="app=members&module=warn§ion=warn&do=view&mid={$author['member_id']}" base="public"}' id='warn_link_{$contentid}_{$author['member_id']}' title='{$this->lang->words['warn_view_history']}' class='warn_link'>{$this->lang->words['warn_status']}</a></strong> <if test="highwarn:|:$author['warn_percent'] >= 80"> <p class='progress_bar user_warn limit' title='{$this->lang->words['warn_level']} {$author['warn_percent']}%'> <else /> <p class='progress_bar user_warn' title='{$this->lang->words['warn_level']} {$author['warn_percent']}%'> </if> <span style='width: {$author['warn_percent']}%'><span>{$this->lang->words['warn_level']} {$author['warn_percent']}%</span></span> </p> </if> </div> </if> Изменено 31 марта 201213 г пользователем Dmitriy
Приветствую, Эксперты!
Не получается убрать то, что в чёрном квадрате прямоугольнике.
Искал в этих php файлах не нашел тег "friends" (я смотрел в исходнике, по идее он так называется :unsure: )
1-ый
<?php class frq_global { public $registry; public function __construct() { $this->registry = ipsRegistry::instance(); $this->settings =& $this->registry->fetchSettings(); } public function getOutput() { if($this->settings['frq_on'] != "1") return ""; $toggle_code_uf = ($this->settings['frq_toggle'] == 'none') ? "$('frq_uf_'+id).toggle()" : "Effect.toggle('frq_uf_'+id,'{$this->settings['frq_toggle']}')"; $toggle_code_wp = ($this->settings['frq_toggle'] == 'none') ? "$('frq_wp_'+id).toggle()" : "Effect.toggle('frq_wp_'+id,'{$this->settings['frq_toggle']}')"; return <<<HTML <script type='text/javascript'> var frq_hide_warn = {$this->settings['frq_hide_warn']}; var frq_hide_fields = {$this->settings['frq_hide_fields']}; function frq_toggle(id) { if(frq_hide_fields == 1) {$toggle_code_uf}; if(frq_hide_warn == 1 && $('frq_wp_'+id)) {$toggle_code_wp}; } function frq_put_to_editor(string){ if( !in_use ) { if( $('fast-reply_toolbar_1') ){ $('fast-reply_toolbar_1').show(); } if( $('fast-reply_toolbar_2') ){ $('fast-reply_toolbar_2').show(); } $('fast-reply_textarea').removeClassName('unloaded_editor').value = ''; ipb.editors[ 'fast-reply' ] = new ipb.editor( 'fast-reply', USE_RTE ); $( ipb.editors['fast-reply'] ).resize_to( 250 ); in_use = 1; } if(USE_RTE) { var text = ipb.editors[ 'fast-reply' ].editor_get_contents(); if(text == "\\n<br\\n") ipb.editors[ 'fast-reply' ].editor_set_content(string); else ipb.editors[ 'fast-reply' ].editor_set_content(text + '<br />' + string); } else document.getElementById("fast-reply_textarea").value += string; } function frq_nick(nick) { frq_put_to_editor('[b][member="'+nick+'"][/b], '); } function frq_quote(nick, pid) { txt = ''; if (window.getSelection) txt = window.getSelection().toString(); else if (document.getSelection) txt = document.getSelection(); else if (document.selection) txt = document.selection.createRange().text; if(txt == '') { items = $$('#post_id_'+pid+' div'); for (var i = 0; i < items.size(); i++) { if(items[i].hasClassName('entry-content')) { if (window.getSelection) { var range = document.createRange(); range.selectNode(items[i]); window.getSelection().addRange(range); txt = window.getSelection().toString(); } else if (document.getSelection) { var range = document.createRange(); range.selectNode(items[i]); document.getSelection().addRange(range); txt = document.getSelection(); } else if (document.selection) { var range = document.body.createTextRange(); range.moveToElementText(items[i]); range.select(); txt = document.getSelection(); } } } } if(USE_RTE) code = "[quote name='"+nick+"' post='"+pid+"']<br />"+txt+"<br />[/quote]<br />"; else code = "[quote name='"+nick+"' post='"+pid+"']\\n"+txt+"\\n[/quote]\\n"; frq_put_to_editor(code); sel = false; if (document.selection && document.selection.empty) document.selection.empty(); if (window.getSelection) sel = window.getSelection(); if (document.getSelection) sel = document.getSelection(); if(sel && sel.removeAllRanges) sel.removeAllRanges(); } </script> HTML; } }2-ой
class frq extends pinAwardsProMiniProfileCab { function userInfoPane($author, $contentid, $options) { $code = parent::userInfoPane($author, $contentid, $options); if($this->settings['frq_on'] != "1" || ipsRegistry::$current_application != 'forums' || !$author['member_id']) return $code; $safe_name = str_replace('"', '\"', $author['members_display_name']); $quote_args = '"'.$safe_name.'","'.$contentid.'"'; $anchors = array( '1' => (intval($this->settings['frq_anchors']) > 0) ? "#editor_fast-reply" : "javascript:void(0);", '2' => (intval($this->settings['frq_anchors']) > 0) ? "#editor_fast-reply" : "javascript:void(0);", '3' => (intval($this->settings['frq_anchors']) > 1) ? "#entry{$contentid}" : "javascript:void(0);", ); $buttons = ($this->settings['frq_on_nick'] == "1") ? "<li><a href='{$anchors[1]}' title='{$this->settings['frq_alt_nick']}' class='frq_nick' onclick='frq_nick(\"{$safe_name}\")' ><img alt='{$this->settings['frq_alt_nick']}' src='{$this->settings['img_url']}/{$this->settings['frq_icon_nick']}' ></a></li>" : ""; $buttons .= ($this->settings['frq_on_quote'] == "1") ? "<li><a href='{$anchors[2]}' title='{$this->settings['frq_alt_quote']}' class='frq_quote' onclick='frq_quote({$quote_args})' ><img alt='{$this->settings['frq_alt_quote']}' src='{$this->settings['img_url']}/{$this->settings['frq_icon_quote']}'></a></li>" : ""; $buttons .= ($this->settings['frq_on_info'] == "1") ? "<li><a href='{$anchors[3]}' title='{$this->settings['frq_alt_info']}' class='frq_info' onclick='frq_toggle({$contentid})'><img alt='{$this->settings['frq_alt_info']}' src='{$this->settings['img_url']}/{$this->settings['frq_icon_info']}' ></a></li>" : ""; $has_uc = false; $parts = explode("</ul>", $code); foreach($parts as $id => $subcode) { if(strpos($subcode, "user_controls") !== false) { $has_uc = true; $parts[$id] .= $buttons; } } $code = implode("</ul>", $parts); if(!$has_uc) $code = str_replace("<ul class='user_fields", "<ul class='user_controls clear'>{$buttons}</ul><ul class='user_fields", $code); $display = ($this->settings['frq_hide_fields'] == "1") ? "style='display:none;'" : ""; $code = str_replace("class='user_fields", "id='frq_uf_{$contentid}' {$display} class='user_fields", $code); $display = ($this->settings['frq_hide_warn'] == "1") ? "style='display:none;'" : ""; $code = str_replace("class='warn_panel", "id='frq_wp_{$contentid}' {$display} class='warn_panel", $code); return $code; } }