5 октября, 201311 yr comment_45115 spoken, автор странный и версию скина на cвоём сайте не пишет, на официальном IPS лежит Pulse 1.0.13, его и использую Link to comment https://ipbmafia.ru/topic/2768-pulse-v1010/?&do=findComment&comment=45115 Share on other sites Больше вариантов
8 октября, 201311 yr comment_45433 порыл boardIndexTemplate и кое-как реализовал интеграцию иконок в зависимости включены родные иконки или нет. всё работает, но только одно маленькое "но", тему которого я уже поднимал... названия форумов при наведении подчёркиваются, и если бы только одни названия... система захватывает ещё и неразрывные пробелы. пытался убрать подчёркивания, добавляя text-decoration: none; к стилям элементов - безрезультатно. это подчёркивание ещё очень сильно мешает если установить хук Members Viewing Forums вот пример со скриншотами boardIndexTemplate под спойлером {parse js_module="board"} {parse variable="sidebar_enabled" default="$show_side_blocks"} <if test="boardIndexTop:|:true"></if> <div id='board_index' class='ipsLayout <if test="sideBarEnabledL:|:$this->templateVars['sidebar_enabled']">ipsLayout_withright</if> ipsLayout_largeright clearfix <if test="sidebarclosed:|:IPSCookie::get('hide_sidebar') == '1'">no_sidebar</if>'> <div id='categories' class='ipsLayout_content clearfix'> <!-- CATS AND FORUMS --> <if test="cats_forums:|:is_array( $cat_data ) AND count( $cat_data )"> <foreach loop="categories:$cat_data as $_data"> <if test="cat_has_forums:|:is_array( $_data['forum_data'] ) AND count( $_data['forum_data'] )"> <div id='category_{$_data['cat_data']['id']}' class='category_block block_wrap'> <h3 class='maintitle'> <a class='toggle right' href='#' title="{parse expression="sprintf( $this->lang->words['toggle_cat'], IPSText::striptags( IPSText::htmlspecialchars($_data['cat_data']['name'] ) ) )"}">{parse expression="sprintf( $this->lang->words['toggle_cat'], IPSText::striptags( IPSText::htmlspecialchars($_data['cat_data']['name'] ) ) )"}</a> <a href="{parse url="showforum={$_data['cat_data']['id']}" seotitle="{$_data['cat_data']['name_seo']}" template="showforum" base="public"}" title='{parse expression="sprintf( $this->lang->words['view_cat'], $_data['cat_data']['name'] )"}'>{$_data['cat_data']['name']}</a> </h3> <if test="$this->settings['pulseEnableForumIcons']=='0'"> <div class='ipsBox table_wrap'> <div class='ipsBox_container'> <table class='ipb_table' summary="{$this->lang->words['forums_in_cat']} '{$_data['cat_data']['name']}'"> <tr class='header hide'> <th scope='col' class='col_c_forum'>{$this->lang->words['cat_name']}</th> <th scope='col' class='col_c_stats stats'>{$this->lang->words['stats']}</th> <if test="canSeeLastInfoHeader:|:$this->memberData['gbw_view_last_info']"><th scope='col' class='col_c_post'>{$this->lang->words['last_post_info']}</th></if> </tr> <!-- / CAT HEADER --> <foreach loop="forums:$_data['forum_data'] as $forum_id => $forum_data"> <if test="forumRedirect:|:$forum_data['redirect_on']"> <tr class='redirect_forum' id='f_{$forum_data['id']}'> <td <if test="canSeeLastInfoRedirect:|:$this->memberData['gbw_view_last_info']">colspan='2'</if> class='col_c_forum'> <h4><a href="{parse url="showforum={$forum_data['id']}" seotitle="{$forum_data['name_seo']}" template="showforum" base="public"}" title='{$forum_data['name']}'><if test="$forum_data['_name']">{$forum_data['_name']}<else />{$forum_data['name']}</if></a></h4> <p class='desc'>{$forum_data['description']}</p> </td> <td class='desc'> <ul class='last_post ipsType_small'> <li class='desc lighter'><em>{parse format_number="$forum_data['redirect_hits']"} {$this->lang->words['rd_hits']}</em></li> </ul> </td> </tr> <else /> <tr class='<if test="$this->settings['pulseRemoveFade']=='0'">tableFade</if> <if test="hasUnreadClass:|:$forum_data['_has_unread']">unread</if>'> <td class='col_c_forum'> <h4> <if test="hasQueuedAndCanSeeIcon:|:!empty($forum_data['_has_queued_and_can_see_icon'])"> <a href='{parse url="showforum={$forum_data['id']}&modfilter=unapproved" seotitle="{$forum_data['name_seo']}" template="showforum" base="public"}' title='{$this->lang->words['view_unapproved']}' class='ipsBadge ipsBadge_orange' data-tooltip="{parse expression="sprintf( $this->lang->words['f_queued'], $forum_data['queued_topics'], $forum_data['queued_posts'])"}" style='vertical-align: top'>{$this->lang->words['f_queued_badge']}</a> </if> <a href="{parse url="showforum={$forum_data['id']}" seotitle="{$forum_data['name_seo']}" template="showforum" base="public"}" title='{$forum_data['name']}'><if test="$forum_data['_name']">{$forum_data['_name']}<else />{$forum_data['name']}</if></a> </h4> <!-- Tom's No new & new posts icons --> <if test="hasUnread:|:$forum_data['_has_unread']"> <span class="icon_new_posts"><a id='forum_img_{$forum_data['id']}' href="{parse url="app=forums&module=forums&section=markasread&marktype=forum&forumid={$forum_data['id']}&returntoforumid={$this->request['f']}&i=1" base="public"}" data-tooltip="{$this->lang->words['bi_markread']}" class='forum_marker'>Новые сообщения</a></span> <else /> <span class="icon_hide"></span> </if> <!-- /Tom's No new & new posts icons --> <if test="showSubForums:|:$forum_data['show_subforums'] AND count( $forum_data['subforums'] ) AND $forum_data['show_subforums']"> <br /> <ol class='ipsList_inline ipsType_small subforums' id='subforums_{$forum_data['id']}'> <foreach loop="subforums:$forum_data['subforums'] as $__id => $__data"> <if test="showSubForumsLit:|__data[3]"><li class='unread'><else /><li></if> <a href="{parse url="showforum={$__data[0]}" seotitle="{$__data[2]}" template="showforum" base="public"}" title='{parse expression="IPSText::striptags( IPSText::htmlspecialchars($__data[1]) )"}'>{$__data[1]}</a><if test="isNotLast:|: empty($__data[4] )">,</if> </li> </foreach> </ol> </if> <p class='desc __forum_desc ipsType_small'>{$forum_data['description']}</p> </td> <td class='fadeStats col_c_stats ipsType_small'> <ul> <li><strong>{$forum_data['topics']}</strong> {$this->lang->words['topics']}</li> <li><strong>{$forum_data['posts']}</strong> {$this->lang->words['replies']}</li> </ul> </td> <if test="canSeeLastInfo:|:$this->memberData['gbw_view_last_info']"> <td class='fadeLastPost col_c_post'> <if test="hideLastInfo:|:$forum_data['hide_last_info']"> <ul class='last_post ipsType_small'> <li class='desc lighter'><em>{$this->lang->words['f_protected']}</em></li> </ul> <else /> <if test="hideTopicInTitle:|:$forum_data['_hide_last_date']"> {parse template="userSmallPhoto" group="global" params="array('member_id' => $forum_data['last_poster_id'], 'members_seo_name' => $forum_data['seo_last_name'], 'pp_small_photo' => $forum_data['pp_small_photo'], 'alt' => '' )"} <else /> {parse template="userSmallPhoto" group="global" params="array('member_id' => $forum_data['last_poster_id'], 'members_seo_name' => $forum_data['seo_last_name'], 'pp_small_photo' => $forum_data['pp_small_photo'], 'alt' => sprintf( $this->lang->words['bindex_userphoto_alt'], $forum_data['last_title'], $forum_data['members_display_name'] ) )"} </if> <ul class='last_post ipsType_small'> <if test="!$forum_data['last_id']"> <li class='desc lighter'><em>{$this->lang->words['f_none']}</em></li> <else /> <li> {$forum_data['last_topic_title']} </li> <if test="lastPosterID:|:$forum_data['last_poster_id']"> <li>{$this->lang->words['by']} {parse template="userHoverCard" group="global" params="$forum_data"}</li> </if> <if test="hideDateUrl:|:$forum_data['_hide_last_date']"> <li class='desc lighter blend_links'>{parse date="$forum_data['last_post']" format="DATE"}</li> <else /> <li class='desc lighter blend_links'><a href='{parse url="showtopic={$forum_data['last_id']}&view=getlastpost" base="public" template="showtopic" seotitle="{$forum_data['seo_last_title']}"}' title='{$this->lang->words['view_last_post']}'>{parse date="$forum_data['last_post']" format="DATE"}</a></li> </if> </if> </ul> </if> </td> </if> </tr> </if> </foreach> </table> </div> </div> <else /> <div class='ipsBox table_wrap'> <div class='ipsBox_container'> <table class='ipb_table' summary="{$this->lang->words['forums_in_cat']} '{$_data['cat_data']['name']}'"> <tr class='header hide'> <th scope='col' class='col_c_icon'> </th> <th scope='col' class='col_c_forum'>{$this->lang->words['cat_name']}</th> <th scope='col' class='col_c_stats stats'>{$this->lang->words['stats']}</th> <if test="canSeeLastInfoHeader:|:$this->memberData['gbw_view_last_info']"><th scope='col' class='col_c_post'>{$this->lang->words['last_post_info']}</th></if> </tr> <!-- / CAT HEADER --> <foreach loop="forums:$_data['forum_data'] as $forum_id => $forum_data"> <if test="forumRedirect:|:$forum_data['redirect_on']"> <tr class='redirect_forum' id='f_{$forum_data['id']}'> <td class='col_c_icon'> <img src='{$this->settings['img_url']}/f_redirect.png' /> </td> <td <if test="canSeeLastInfoRedirect:|:$this->memberData['gbw_view_last_info']">colspan='2'</if> class='col_c_forum'> <h4><a href="{parse url="showforum={$forum_data['id']}" seotitle="{$forum_data['name_seo']}" template="showforum" base="public"}" title='{$forum_data['name']}'><if test="$forum_data['_name']">{$forum_data['_name']}<else />{$forum_data['name']}</if></a></h4> <p class='desc'>{$forum_data['description']}</p> </td> <td class='desc'> <ul class='last_post ipsType_small'> <li class='desc lighter'><em>{parse format_number="$forum_data['redirect_hits']"} {$this->lang->words['rd_hits']}</em></li> </ul> </td> </tr> <else /> <tr class='<if test="$this->settings['pulseRemoveFade']=='0'">tableFade</if> <if test="hasUnreadClass:|:$forum_data['_has_unread']">unread</if>'> <td class='col_c_icon'> <if test="hasUnread:|:$forum_data['_has_unread']"> <a id='forum_img_{$forum_data['id']}' href="{parse url="app=forums&module=forums§ion=markasread&marktype=forum&forumid={$forum_data['id']}&returntoforumid={$this->request['f']}&i=1" base="public"}" data-tooltip="{$this->lang->words['bi_markread']}" class='forum_marker'><if test="$forum_data['icon'] != '' AND $forum_data['icon'] !='0'">{$forum_data['icon']}<else /><img src='{$this->settings['img_url']}/f_icon.png' /></if></a> <else /> <if test="$forum_data['icon'] != '' AND $forum_data['icon'] !='0'">{$forum_data['icon']}<else /><img src='{$this->settings['img_url']}/f_icon_read.png' /></if> </if> </td> <td class='col_c_forum'> <h4> <if test="hasQueuedAndCanSeeIcon:|:!empty($forum_data['_has_queued_and_can_see_icon'])"> <a href='{parse url="showforum={$forum_data['id']}&modfilter=unapproved" seotitle="{$forum_data['name_seo']}" template="showforum" base="public"}' title='{$this->lang->words['view_unapproved']}' class='ipsBadge ipsBadge_orange' data-tooltip="{parse expression="sprintf( $this->lang->words['f_queued'], $forum_data['queued_topics'], $forum_data['queued_posts'])"}" style='vertical-align: top'>{$this->lang->words['f_queued_badge']}</a> </if> <a href="{parse url="showforum={$forum_data['id']}" seotitle="{$forum_data['name_seo']}" template="showforum" base="public"}" title='{$forum_data['name']}'><if test="$forum_data['_name']">{$forum_data['_name']}<else />{$forum_data['name']}</if></a> </h4> <if test="showSubForums:|:$forum_data['show_subforums'] AND count( $forum_data['subforums'] ) AND $forum_data['show_subforums']"> <br /> <ol class='ipsList_inline ipsType_small subforums' id='subforums_{$forum_data['id']}'> <foreach loop="subforums:$forum_data['subforums'] as $__id => $__data"> <if test="showSubForumsLit:|__data[3]"><li class='unread'><else /><li></if> <a href="{parse url="showforum={$__data[0]}" seotitle="{$__data[2]}" template="showforum" base="public"}" title='{parse expression="IPSText::striptags( IPSText::htmlspecialchars($__data[1]) )"}'>{$__data[1]}</a><if test="isNotLast:|: empty($__data[4] )">,</if> </li> </foreach> </ol> </if> <p class='desc __forum_desc ipsType_small'>{$forum_data['description']}</p> </td> <td class='col_c_stats ipsType_small'> <ul> <li><strong>{$forum_data['topics']}</strong> {$this->lang->words['topics']}</li> <li><strong>{$forum_data['posts']}</strong> {$this->lang->words['replies']}</li> </ul> </td> <if test="canSeeLastInfo:|:$this->memberData['gbw_view_last_info']"> <td class='col_c_post'> <if test="hideLastInfo:|:$forum_data['hide_last_info']"> <ul class='last_post ipsType_small'> <li class='desc lighter'><em>{$this->lang->words['f_protected']}</em></li> </ul> <else /> <if test="hideTopicInTitle:|:$forum_data['_hide_last_date']"> {parse template="userSmallPhoto" group="global" params="array('member_id' => $forum_data['last_poster_id'], 'members_seo_name' => $forum_data['seo_last_name'], 'pp_small_photo' => $forum_data['pp_small_photo'], 'alt' => '' )"} <else /> {parse template="userSmallPhoto" group="global" params="array('member_id' => $forum_data['last_poster_id'], 'members_seo_name' => $forum_data['seo_last_name'], 'pp_small_photo' => $forum_data['pp_small_photo'], 'alt' => sprintf( $this->lang->words['bindex_userphoto_alt'], $forum_data['last_title'], $forum_data['members_display_name'] ) )"} </if> <ul class='last_post ipsType_small'> <if test="!$forum_data['last_id']"> <li class='desc lighter'><em>{$this->lang->words['f_none']}</em></li> <else /> <li> {$forum_data['last_topic_title']} </li> <if test="lastPosterID:|:$forum_data['last_poster_id']"> <li>{$this->lang->words['by']} {parse template="userHoverCard" group="global" params="$forum_data"}</li> </if> <if test="hideDateUrl:|:$forum_data['_hide_last_date']"> <li class='desc lighter blend_links'>{parse date="$forum_data['last_post']" format="DATE"}</li> <else /> <li class='desc lighter blend_links'><a href='{parse url="showtopic={$forum_data['last_id']}&view=getlastpost" base="public" template="showtopic" seotitle="{$forum_data['seo_last_title']}"}' title='{$this->lang->words['view_last_post']}'>{parse date="$forum_data['last_post']" format="DATE"}</a></li> </if> </if> </ul> </if> </td> </if> </tr> </if> </foreach> </table> </div> </div> </if> <br /> </div> </if> </foreach> </if> </div> <if test="sideBarEnabled2:|:$this->templateVars['sidebar_enabled']"> <div id='index_stats' class='ipsLayout_right clearfix' <if test="sidebarclosed2:|:IPSCookie::get('hide_sidebar') == '1'">style='display: none'</if>> <foreach loop="side_blocks:$side_blocks as $block"> {$block} </foreach> </div> <!--/ <a href='#' id='toggle_sidebar' title='{$this->lang->words['toggle_sidebar']}' data-closed="{$this->lang->words['_laquo']}" data-open="×"> </a> /--> </if> </div> <script type='text/javascript'> //<![CDATA[ var markerURL = ipb.vars['base_url'] + "app=forums&module=ajax§ion=markasread&i=1"; // Ajax URL so don't use & var unreadIcon = "<span class='readHideMe'></span>"; <if test="markercatforums:|:is_array( $cat_data ) AND count( $cat_data )"> <foreach loop="markercategories:$cat_data as $_data"> <if test="markerhasforums:|:is_array( $_data['forum_data'] ) AND count( $_data['forum_data'] )"> <foreach loop="markerforums:$_data['forum_data'] as $forum_id => $forum_data"> <if test="markernotredirect:|:!$forum_data['redirect_on']"> <if test="markerhasunread:|:$forum_data['_has_unread']"> <if test="$this->settings['dp3_fi_mode'] == 'replace'">var unreadIcon = "{$forum_data['icon_read']}";</if> ipb.global.registerMarker( "forum_img_{$forum_data['id']}", "{$forum_data['img_new_post']}", markerURL + "&forumid={$forum_data['id']}" ); </if> </if> </foreach> </if> </foreach> </if> //]]> </script> <if test="showTotals:|:$this->settings['show_totals']"> <div id='board_stats'> <ul class='ipsType_small ipsList_inline'> <li class='clear'> <span class='value'>{$stats['info']['total_posts']}</span> {$this->lang->words['total_posts']} </li> <li class='clear'> <span class='value'>{$stats['info']['mem_count']}</span> {$this->lang->words['total_members']} </li> <li class='clear'> {IPSMember::makeProfileLink( $stats['info']['last_mem_name'], $stats['info']['last_mem_id'], $stats['info']['last_mem_seo'], 'value' )} {$this->lang->words['newest_member']} </li> <li class='clear' data-tooltip="{$stats['info']['most_time']}"> <span class='value'>{$stats['info']['most_online']}</span> {$this->lang->words['online_at_once']} </li> </ul> </div> </if> <div id='board_statistics' class='statistics clearfix'> <ul id='stat_links' class='ipsList_inline right ipsType_small'> <if test="statsLinks:|:1==1"> <!-- Hook point --> <li><a href="{parse url="app=forums&module=extras&section=stats&do=leaders" base="public"}" title="{$this->lang->words['sm_forum_leaders_title']}">{$this->lang->words['sm_forum_leaders']}</a></li> <li><a href="{parse url="app=forums&module=extras&section=stats" base="public"}" title="{$this->lang->words['sm_all_posters_title']}">{$this->lang->words['sm_today_posters']}</a></li> <li><a href="{parse url="app=members&module=list&max_results=20&sort_key=posts&sort_order=desc&filter=ALL" base="public" seotitle="false"}" title="{$this->lang->words['sm_overall_posters_title']}">{$this->lang->words['sm_overall_posters']}</a></li> <if test="reputationEnabled:|:$this->settings['reputation_enabled']"> <li> <a href="{parse url="app=members&module=reputation&section=most" base="public" template="most_liked" seotitle="most_liked"}" title="<if test="reputationTypeTitle:|:$this->settings['reputation_point_types'] == 'like'">{$this->lang->words['most_rep_likes']}<else />{$this->lang->words['most_rep_rep']}</if>"> <if test="reputationType:|:$this->settings['reputation_point_types'] == 'like'"> {$this->lang->words['most_rep_likes']} <else /> {$this->lang->words['most_rep_rep']} </if> </a> </li> </if> </if> </ul> <if test="showActive:|:$this->settings['show_active'] && $this->memberData['gbw_view_online_lists']"> <h4 class='statistics_head'>{parse expression="sprintf( $this->lang->words['online_right_now'], $stats['TOTAL'] )"} {$this->lang->words['active_users']}</h4> <p class='statistics_brief desc'> {parse expression="sprintf( $this->lang->words['active_users_detail'], $stats['MEMBERS'], $stats['GUESTS'], $stats['ANON'] )"} <if test="onlineListEnabled:|:$this->settings['allow_online_list']"> <a href='{parse url="app=members&module=online&sort_order=desc" base="public"}' title='{$this->lang->words['online_link']}'>({$this->lang->words['online_link']})</a></if> </p> </if> <if test="activeNames:|:count($stats['NAMES']) && $this->settings['show_active']"> <br /> <p> <span class='name'>{parse expression="implode( ",</span> <span class='name'>", $stats['NAMES'] )"}</span> </p> </if> </div> быть может кто-нибудь сможет помочь в удалении подчёркивания или как сделать, чтобы соседние элемнтыпробелы не захватывались? ссылка в профиле, гости видят ошибку Edited 8 октября, 201311 yr by Lordbl4 Link to comment https://ipbmafia.ru/topic/2768-pulse-v1010/?&do=findComment&comment=45433 Share on other sites Больше вариантов
9 октября, 201311 yr comment_45439 .category_block .ipb_table h4:hover { color: #2b343c; text-decoration: underline; } Вот откуда ноги растут Вашего подчеркивания. Link to comment https://ipbmafia.ru/topic/2768-pulse-v1010/?&do=findComment&comment=45439 Share on other sites Больше вариантов
9 октября, 201311 yr comment_45441 LvsF, большое спасибо, я этого параметра в упор не видел буду думать теперь, как подчёркивание нормальное сделать Link to comment https://ipbmafia.ru/topic/2768-pulse-v1010/?&do=findComment&comment=45441 Share on other sites Больше вариантов
29 ноября, 201310 yr comment_47908 раньше не замечал, но когда смотрел глазами пользователя на внешний вид - наткнулся на странную проблему: администратор и пользователь по разному видят блоки на странице профиля пользователя под спойлером нагляные изображения вот так видит пользователь свой профиль на данном стиле вот так видит пользователь профиль администратора с заполненными полями на данном стиле вот так видит пользователь свой профиль на стандартном стиле вот так видит пользователь профиль администратора с заполненными полями на стандартном стиле вот так видит администратор свой профиль на данном стиле вот так видит администратор профиль пользователя на данном стиле отсюда следует вопрос: как вернуть надпись "Контактная информация" в данный стиль для пользователей и сделать так, чтобы блок отображался для всех групп пользователей одинаково? в режиме производительности то же самое, к тому же проверял на не изменённом стиле (код не трогал) вот profileModern от данного стиля {parse js_module="status"} {parse js_module="rating"} {parse js_module="profile"} <script type='text/javascript'> //<![CDATA[ ipb.profile.viewingProfile = parseInt( {$member['member_id']} ); <if test="$this->memberData['member_id']"> ipb.templates['remove_friend'] = "<a href='{parse url="app=members&section=friends&module=profile&do=remove&member_id={$member['member_id']}" base="public"}' title='{$this->lang->words['remove_as_friend']}'><img src='{$this->settings['img_url']}/user_delete.png' alt='{$this->lang->words['remove_as_friend']}' /> {$this->lang->words['remove_as_friend']}</a>"; ipb.templates['add_friend'] = "<a href='{parse url="app=members&section=friends&module=profile&do=add&member_id={$member['member_id']}" base="public"}' title='{$this->lang->words['add_me_friend']}'><img src='{$this->settings['img_url']}/user_add.png' alt='{$this->lang->words['add_me_friend']}' /> {$this->lang->words['add_me_friend']}</a>"; </if> ipb.templates['edit_status'] = "<span id='edit_status'><input type='text' class='input_text' style='width: 60%' id='updated_status' maxlength='150' /> <input type='submit' value='{$this->lang->words['save']}' class='input_submit' id='save_status' /> <a href='#' id='cancel_status' class='cancel' title='{$this->lang->words['cancel']}'>{$this->lang->words['cancel']}</a></span>"; <if test="friendsEnabled:|:$this->settings['friends_enabled'] AND $this->memberData['g_can_add_friends']"> <if test="jsIsFriend:|:IPSMember::checkFriendStatus( $member['member_id'] )"> ipb.profile.isFriend = true; <else /> ipb.profile.isFriend = false; </if> </if> //]]> </script> <if test="hasCustomization:|:is_array($member['customization']) AND $member['customization']['type']"> {parse template="customizeProfile" group="profile" params="$member"} </if> <div class='clear vcard' id='profile_background'> <div class='ipsVerticalTabbed ipsLayout ipsLayout_withleft ipsLayout_smallleft clearfix'> <div class='ipsVerticalTabbed_tabs ipsLayout_left' id='profile_tabs'> <p class='short photo_holder'> <if test="canEditPic:|$this->memberData['member_id'] && $member['member_id'] == $this->memberData['member_id']) AND (IPSMember::canUploadPhoto($member, TRUE))"> <a data-clicklaunch="launchPhotoEditor" href="{parse url="app=members&module=profile&section=photo" base="public"}" id='change_photo' class='ipsType_smaller ipsPad' title='{$this->lang->words['change_photo_desc']}'>{$this->lang->words['change_photo_link']}</a> </if> <img class="ipsUserPhoto" id='profile_photo' src='{$member['pp_main_photo']}' alt="{parse expression="sprintf($this->lang->words['users_photo'],$member['members_display_name'])"}" /> </p> <if test="haswarn:|:$member['show_warn']"> <div class='warn_panel clear ipsType_small'> <strong><a href='{parse url="app=members&module=profile&section=warnings&member={$member['member_id']}&from_app=members" base="public"}' id='warn_link_xxx_{$member['member_id']}' title='{$this->lang->words['warn_view_history']}'>{parse expression="sprintf( $this->lang->words['warn_status'], $member['warn_level'] )"}</a></strong> <if test="highwarn:|:$member['warn_percent'] >= 80"> <p class='progress_bar user_warn limit' title='{$this->lang->words['warn_level']} {$member['warn_percent']}%'> <else /> <p class='progress_bar user_warn' title='{$this->lang->words['warn_level']} {$member['warn_percent']}%'> </if> <span style='width: {$member['warn_percent']}%'><span>{$this->lang->words['warn_level']} {$member['warn_percent']}%</span></span> </p> </div> </if> <ul class='clear'> <li id='tab_link_core:info' class='tab_toggle <if test="$default_tab == 'core:info'">active</if>' data-tabid='user_info'><a href='#'>{$this->lang->words['pp_tab_info']}</a></li> <foreach loop="tabs:$tabs as $tab"> <li id='tab_link_{$tab['app']}:{$tab['plugin_key']}' class='<if test="tabactive:|:$tab['app'].':'.$tab['plugin_key'] == $default_tab || $this->request['tab'] == $tab['plugin_key']">active</if> tab_toggle' data-tabid='{$tab['plugin_key']}'><a href='{parse url="showuser={$member['member_id']}&tab={$tab['plugin_key']}" seotitle="{$member['members_seo_name']}" template="showuser" base="public"}' title='{$this->lang->words['view']} {$tab['_lang']}'>{$tab['_lang']}</a></li> </foreach> </ul> </div> <div class='ipsVerticalTabbed_content ipsLayout_content ipsBox_container' id='profile_content' style='padding-left: 7px; padding-right: 10px; width: 99%'> <div> <div id='profile_content_main'> <if test="canEditUser:|$this->memberData['member_id'] && $member['member_id'] == $this->memberData['member_id']) || $this->memberData['g_is_supmod'] == 1 || ($this->memberData['member_id'] && $member['member_id'] != $this->memberData['member_id'])"> <ul class='editProfileWrap topic_buttons right'> <if test="weAreSupmod:|:$this->memberData['g_is_supmod'] == 1 && $member['member_id'] != $this->memberData['member_id']"> <li><a href='{parse url="app=core&module=modcp&do=editmember&auth_key={$this->member->form_hash}&mid={$member['member_id']}&pf={$member['member_id']}" base="public"}'><img src="{$this->settings['img_url']}/icons/d-edit.png" alt='' /> {$this->lang->words['supmod_edit_member']}</a></li> </if> <if test="weAreOwner:|:$this->memberData['member_id'] && $member['member_id'] == $this->memberData['member_id']"> <li><a href='{parse url="app=core&module=usercp&tab=core" base="public"}'><img src="{$this->settings['img_url']}/icons/d-edit.png" alt='' /> {$this->lang->words['edit_profile']}</a></li> </if> <if test="supModCustomization:|$member['member_id'] == $this->memberData['member_id'] ) AND $member['customization']['type']"> <li class='non_button'><a href='{parse url="showuser={$member['member_id']}&secure_key={$this->member->form_hash}&removeCustomization=1" seotitle="{$member['members_seo_name']}" template="showuser" base="public"}'>{$this->lang->words['cust_remove']}</a></li> </if> </ul> </if> <div id='user_info_cell'> <h1 class='ipsType_pagetitle'> <span class='fn nickname'>{$member['members_display_name']}</span> </h1> {$this->lang->words['m_member_since']} {parse date="$member['joined']" format="DATE"}<br /> <if test="hasWarns:|:!empty( $warns )"> <foreach loop="warnsLoop:array( 'ban', 'suspend', 'rpa', 'mq' ) as $k"> <if test="warnIsSet:|:isset( $warns[ $k ] )"> <span class='ipsBadge ipsBadge_red<if test="warnClickable:|:$warns[ $k ]"> clickable</if>' <if test="warnPopup:|:$warns[ $k ]">onclick='warningPopup( this, {$warns[ $k ]} )'</if>>{$this->lang->words[ 'warnings_profile_badge_' . $k ]}</span> </if> </foreach> </if> <if test="onlineDetails:|:$member['_online'] && ($member['online_extra'] != $this->lang->words['not_online'])"> <span class='ipsBadge ipsBadge_green reset_cursor' data-tooltip="{parse expression="strip_tags($member['online_extra'])"}">{$this->lang->words['online_online']}</span> <else /> <span class='ipsBadge ipsBadge_lightgrey reset_cursor'>{$this->lang->words['online_offline']}</span> </if> <span class='desc lighter'>{$this->lang->words['m_last_active']} {$member['_last_active']}</span> </div> <if test="userStatus:|:$status['status_id'] && $this->settings['su_enabled']"> <div id='user_status_cell'> <div id='user_latest_status'> <div> {parse expression="IPSText::truncate( strip_tags( $status['status_content'] ), 180 )"} <span class='ipsType_smaller desc lighter blend_links'><a href='{parse url="app=members&module=profile&section=status&type=single&status_id={$status['status_id']}" seotitle="array($status['member_id'], $status['members_seo_name'])" template="members_status_single" base="public"}'>{$this->lang->words['ps_updated']} {parse date="$status['status_date']" format="manual{%d %b}" relative="true"} · {parse expression="intval($status['status_replies'])"} {$this->lang->words['ps_comments']}</a></span> </div> </div> </div> </if> <if test="allowRate:|:$this->settings['pp_allow_member_rate']"> <span class='rating left clear' style='margin-bottom: 10px'> <if test="noRateYourself:|:$this->memberData['member_id'] == $member['member_id'] || !$this->memberData['member_id']"> <if test="rate1:|:$member['pp_rating_real'] >= 1">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate2:|:$member['pp_rating_real'] >= 2">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate3:|:$member['pp_rating_real'] >= 3">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate4:|:$member['pp_rating_real'] >= 4">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate5:|:$member['pp_rating_real'] >= 5">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><span id='rating_text' class='desc'></span> <else /> <a href='#' id='user_rate_1' title='{$this->lang->words['m_rate_1']}'><if test="rated1:|:$member['pp_rating_real'] >= 1">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a><a href='#' id='user_rate_2' title='{$this->lang->words['m_rate_2']}'><if test="rated2:|:$member['pp_rating_real'] >= 2">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a><a href='#' id='user_rate_3' title='{$this->lang->words['m_rate_3']}'><if test="rated3:|:$member['pp_rating_real'] >= 3">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a><a href='#' id='user_rate_4' title='{$this->lang->words['m_rate_4']}'><if test="rated4:|:$member['pp_rating_real'] >= 4">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a><a href='#' id='user_rate_5' title='{$this->lang->words['m_rate_5']}'><if test="rated5:|:$member['pp_rating_real'] >= 5">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a> <span id='rating_text' class='desc'></span> <script type='text/javascript'> rating = new ipb.rating( 'user_rate_', { url: ipb.vars['base_url'] + 'app=members&module=ajax§ion=rate&member_id={$member['member_id']}&md5check=' + ipb.vars['secure_hash'], cur_rating: <if test="hasrating:|:isset($member['pp_rating_real'])">{$member['pp_rating_real']}<else />0</if>, rated: null, allow_rate: ( {$this->memberData['member_id']} != 0 ) ? 1 : 0, show_rate_text: false } ); </script> </if> </span> </if> <ul class='ipsList_inline' id='user_utility_links'> <if test="noFriendYourself:|:$this->memberData['member_id'] AND $this->memberData['member_id'] != $member['member_id'] && $this->settings['friends_enabled'] AND $this->memberData['g_can_add_friends']"> <li id='friend_toggle' class='ipsButton_secondary'> <if test="isFriend:|:IPSMember::checkFriendStatus( $member['member_id'] )"> <a href='{parse url="app=members&section=friends&module=profile&do=remove&member_id={$member['member_id']}&secure_key={$this->member->form_hash}" base="public"}' title='{$this->lang->words['remove_friend']}'><img src='{$this->settings['img_url']}/user_delete.png' alt='{$this->lang->words['remove_friend']}' /> {$this->lang->words['remove_as_friend']}</a> <else /> <a href='{parse url="app=members&section=friends&module=profile&do=add&member_id={$member['member_id']}&secure_key={$this->member->form_hash}" base="public"}' title='{$this->lang->words['add_friend']}'><img src='{$this->settings['img_url']}/user_add.png' alt='{$this->lang->words['add_friend']}' /> {$this->lang->words['add_me_friend']}</a> </if> </li> </if> <if test="pmlink:|$member['member_id'] != $this->memberData['member_id']) AND $this->memberData['g_use_pm'] AND $this->memberData['members_disable_pm'] == 0 AND IPSLib::moduleIsEnabled( 'messaging', 'members' ) AND $member['members_disable_pm'] == 0"> <li class='pm_button' id='pm_xxx_{$member['member_id']}'><a href='{parse url="app=members&module=messaging&section=send&do=form&fromMemberID={$member['member_id']}" base="public"}' title='{$this->lang->words['pm_this_member']}' class='ipsButton_secondary'>{parse replacement="send_msg"} {$this->lang->words['send_message']}</a></li> </if> <li> <a href='{parse url="app=core&module=search&do=user_activity&mid={$member['member_id']}" base="public"}' class='ipsButton_secondary'>{parse replacement="find_topics_link"} {$this->lang->words['gbl_find_my_content']}</a> </li> </ul> </div> <div id='profile_panes_wrap' class='clearfix'> <div id='pane_core:info' class='ipsLayout ipsLayout_withright ipsLayout_largeright clearfix' <if test="$default_tab != 'core:info'">style='display: none'</if>> <div class='ipsLayout_content' style='width: 98% !important;'> <if test="$member['pp_about_me']"> <div class='general_box clearfix'> <h3 class="gnrlbox_bdr_right">{$this->lang->words['pp_tab_aboutme']}</h3> <div class='ipsPad'> {$member['pp_about_me']} </div> </div> <hr/> </if> <div class='general_box clearfix'> <h3>{$this->lang->words['community_stats']}</h3> <br /> <ul class='ipsList_data clearfix'> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_group']}</span> <span class='row_data'>{$member['g_title']}</span> </li> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_posts']}</span> <span class='row_data'>{parse format_number="$member['posts']"}</span> </li> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_profile_views']}</span> <span class='row_data'>{parse format_number="$member['members_profile_views']"}</span> </li> <if test="member_title:|:$member['title'] != ''"> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_member_title']}</span> <span class='row_data'>{$member['title']}</span> </li> </if> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_age_prefix']}</span> <if test="member_age:|:$member['_age'] > 0"> <span class='row_data'>{$member['_age']} {$this->lang->words['m_years_old']}</span> <else /> <span class='row_data desc lighter'>{$this->lang->words['m_age_unknown']}</span> </if> </li> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_birthday_prefix']}</span> <if test="member_birthday:|:$member['bday_day']"> <span class='row_data'>{$member['_bday_month']} {$member['bday_day']}<if test="member_bday_year:|:$member['bday_year']">, {$member['bday_year']}</if></span> <else /> <span class='row_data desc lighter'>{$this->lang->words['m_bday_unknown']}</span> </if> </li> <if test="pcfields:|:$member['custom_fields']['profile_info'] != """> <foreach loop="pcfieldsLoop:$member['custom_fields']['profile_info'] as $key => $value"> <if test="!empty($value)"> <li class='clear clearfix'> {$value} </li> </if> </foreach> </if> </ul> <br /> </div> <if test="pcfieldsOther:|:$member['custom_fields']"> <foreach loop="pcfieldsOtherLoop:$member['custom_fields'] as $group => $mdata"> <if test="pcfieldsOtherLoopCheck:|:$group != 'profile_info' AND $group != 'contact'"> <if test="pcfieldsOtherLoopCheck2:|:is_array( $member['custom_fields'][ $group ] ) AND count( $member['custom_fields'][ $group ] )"> <div class='general_box clearfix' id='custom_fields_{$group}'> <h3 class='bar'>{$member['custom_field_groups'][ $group ]}</h3> <br /> <ul class='ipsList_data clearfix'> <foreach loop="pcfieldsOtherLoopCheckInner:$member['custom_fields'][ $group ] as $key => $value"> <li class='clear clearfix'> {$value} </li> </foreach> </ul> <br /> </div> </if> </if> </foreach> </if> <if test="hasContactFields:|:$this->memberData['g_access_cp'] == 1 || is_array( $member['custom_fields']['contact'] )"> <div class='general_box clearfix'> <if test="showContactHead:|:$this->memberData['g_access_cp'] == 1 || $show_contact"> <h3>{$this->lang->words['contact_info']}</h3> <br /> </if> <ul class='ipsList_data clearfix'> <if test="isadmin:|:$this->memberData['g_access_cp'] == 1"> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_email']}</span> <span class='row_data'> <a href='mailto:{$member['email']}'>{$member['email']}</a> </span> </li> </if> <if test="member_contact_fields:|:is_array( $member['custom_fields']['contact'])"> <foreach loop="cfields:$member['custom_fields']['contact'] as $field"> {$field} </foreach> </if> </ul> </div> </if> </div> <div class='ipsLayout_right' style='margin-right: -280px !important; width: 300px !important; padding: 0px !important;'> <if test="ourReputation:|:$this->settings['reputation_enabled'] && $this->settings['reputation_show_profile']"> <if test="RepPositive:|:$member['pp_reputation_points'] > 0"> <div class='reputation positive' data-tooltip="{parse expression="sprintf( $this->lang->words['rep_description'], $member['members_display_name'], $member['pp_reputation_points'])"}"> </if> <if test="RepNegative:|:$member['pp_reputation_points'] < 0"> <div class='reputation negative' data-tooltip="{parse expression="sprintf( $this->lang->words['rep_description'], $member['members_display_name'], $member['pp_reputation_points'])"}"> </if> <if test="RepZero:|:$member['pp_reputation_points'] == 0"> <div class='reputation zero' data-tooltip="{parse expression="sprintf( $this->lang->words['rep_description'], $member['members_display_name'], $member['pp_reputation_points'])"}"> </if> <span class='number'>{$member['pp_reputation_points']}</span> <if test="RepText:|:$member['author_reputation'] && $member['author_reputation']['text']"> <span class='title'>{$member['author_reputation']['text']}</span> </if> <if test="RepImage:|:$member['author_reputation'] && $member['author_reputation']['image']"> <span class='image'><img src='{$member['author_reputation']['image']}' alt='{$this->lang->words['m_reputation']}' /></span> </if> </div> <br /> </if> <if test="checkModTools:|$member['spamStatus'] !== NULL && $member['member_id'] != $this->memberData['member_id']) || ($this->memberData['g_mem_info'] && $this->settings['auth_allow_dnames']) || (($member['member_id'] != $this->memberData['member_id'] AND $this->memberData['g_is_supmod'] ) AND $member['customization']['type'])"> <div class='general_box clearfix' style='margin-bottom: 15px;'> <h3>{$this->lang->words['user_tools']}</h3> <ul class='ipsPad bordered non_top'> <if test="authorspammer:|:$member['spamStatus'] !== NULL && $member['member_id'] != $this->memberData['member_id']"> <if test="authorspammerinner:|:$member['spamStatus'] === TRUE"> <li><a href='#' onclick="return ipb.global.toggleFlagSpammer({$member['member_id']}, false)">{parse replacement="spammer_on"} {$this->lang->words['spm_on']}</a></li> <else /> <li><a href='{$this->settings['base_url']}app=core&module=modcp&do=setAsSpammer&member_id={$member['member_id']}&auth_key={$this->member->form_hash}' onclick="return ipb.global.toggleFlagSpammer({$member['member_id']}, true)">{parse replacement="spammer_off"} {$this->lang->words['spm_off']}</a></li> </if> </if> <if test="dnameHistory:|:$this->memberData['member_id'] && $this->memberData['g_mem_info'] && $this->settings['auth_allow_dnames']"> <li id='dname_history'><a href='{parse url="app=members&module=profile&section=dname&id={$member['member_id']}" base="public"}' title='{$this->lang->words['view_dname_history']}'>{parse replacement="display_name"} {$this->lang->words['display_name_history']}</a></li> </if> <if test="supModCustomizationDisable:|$member['member_id'] != $this->memberData['member_id'] AND $this->memberData['g_is_supmod'] ) AND $member['customization']['type']"> <li><strong><a href='{parse url="showuser={$member['member_id']}&secure_key={$this->member->form_hash}&removeCustomization=1" seotitle="{$member['members_seo_name']}" template="showuser" base="public"}'><img src='{$this->settings['img_url']}/delete.png' alt='-' /> {$this->lang->words['cust_remove']}</a></strong></li> <li><strong><a href='{parse url="showuser={$member['member_id']}&secure_key={$this->member->form_hash}&removeCustomization=1&disableCustomization=1" seotitle="{$member['members_seo_name']}" template="showuser" base="public"}'><img src='{$this->settings['img_url']}/delete.png' alt='-' /> {$this->lang->words['cust_disable']}</a></strong></li> </if> </ul> </div> </if> <if test="$member['pp_setting_count_friends'] and $this->settings['friends_enabled']"> <div class='general_box clearfix' id='friends_overview' style='margin-bottom: 15px;'> <h3>{$this->lang->words['m_title_friends']}</h3> <div class='ipsPad bordered non_top'> <if test="hasFriends:|:count($friends) AND is_array($friends)"> <foreach loop="friendsLoop:$friends as $friend"> <a href='{parse url="showuser={$friend['member_id']}" base="public" template="showuser" seotitle="{$friend['members_seo_name']}"}' class='ipsUserPhotoLink'> <img src='{$friend['pp_mini_photo']}' class='ipsUserPhoto ipsUserPhoto_mini' data-tooltip='{$friend['members_display_name']}' /> </a> </foreach> <else /> <p class='desc'> {$member['members_display_name']} {$this->lang->words['no_friends_yet']} </p> </if> </div> </div> </if> <if test="latest_visitors:|:$member['pp_setting_count_visitors']"> <div class='general_box clearfix' style='margin-bottom: 15px;'> <h3>{$this->lang->words['latest_visitors']}</h3> <if test="has_visitors:|:is_array( $visitors ) && count( $visitors )"> <ul class='ipsList_withminiphoto ipsPad bordered non_top'> <foreach loop="latest_visitors_loop:$visitors as $visitor"> <li class='clearfix'> <if test="visitorismember:|:$visitor['member_id']"> <a href='{parse url="showuser={$visitor['member_id']}" seotitle="{$visitor['members_seo_name']}" template="showuser" base="public"}' title='{$this->lang->words['view_profile']}' class='ipsUserPhotoLink left'><img src='{$visitor['pp_mini_photo']}' alt='{$this->lang->words['photo']}' class='ipsUserPhoto ipsUserPhoto_mini' /></a> <else /> <img src='{$visitor['pp_mini_photo']}' alt='{$this->lang->words['photo']}' class='ipsUserPhoto ipsUserPhoto_mini left' /> </if> <div class='list_content'> {parse template="userHoverCard" group="global" params="$visitor"} <br /> <span class='desc lighter'>{$visitor['_visited_date']}</span> </div> </li> </foreach> </ul> <else /> <p class='ipsPad desc'>{$this->lang->words['no_latest_visitors']}</p> </if> </div> </if> </div> </div> <if test="$default_tab != 'core:info'"> <div id='pane_{$default_tab}'> {$default_tab_content} </div> </if> </div> </div> </div> </div> </div> <if test="thisIsNotUs:|$this->memberData['member_id'] && $member['member_id'] != $this->memberData['member_id'])"> <br /> <ul class='topic_buttons'> <li class='non_button clearfix'><a href='{parse url="app=core&module=reports&section=reports&rcom=profiles&member_id={$member['member_id']}" base="public"}'>{$this->lang->words['report_member']}</a></li> </ul> </if> <script type='text/javascript'> $("profile_content").setStyle( { minHeight: $('profile_tabs').measure('margin-box-height') + 138 + "px" } ); </script> <!-- ******************************************************************************************* --> {parse template="include_highlighter" group="global" params=""} и вот родной {parse js_module="status"} {parse js_module="rating"} {parse js_module="profile"} <script type='text/javascript'> //<![CDATA[ ipb.profile.viewingProfile = parseInt( {$member['member_id']} ); <if test="$this->memberData['member_id']"> ipb.templates['remove_friend'] = "<a href='{parse url="app=members&section=friends&module=profile&do=remove&member_id={$member['member_id']}" base="public"}' title='{$this->lang->words['remove_as_friend']}'><img src='{$this->settings['img_url']}/user_delete.png' alt='{$this->lang->words['remove_as_friend']}' /> {$this->lang->words['remove_as_friend']}</a>"; ipb.templates['add_friend'] = "<a href='{parse url="app=members&section=friends&module=profile&do=add&member_id={$member['member_id']}" base="public"}' title='{$this->lang->words['add_me_friend']}'><img src='{$this->settings['img_url']}/user_add.png' alt='{$this->lang->words['add_me_friend']}' /> {$this->lang->words['add_me_friend']}</a>"; </if> ipb.templates['edit_status'] = "<span id='edit_status'><input type='text' class='input_text' style='width: 60%' id='updated_status' maxlength='150' /> <input type='submit' value='{$this->lang->words['save']}' class='input_submit' id='save_status' /> <a href='#' id='cancel_status' class='cancel' title='{$this->lang->words['cancel']}'>{$this->lang->words['cancel']}</a></span>"; <if test="friendsEnabled:|:$this->settings['friends_enabled'] AND $this->memberData['g_can_add_friends']"> <if test="jsIsFriend:|:IPSMember::checkFriendStatus( $member['member_id'] )"> ipb.profile.isFriend = true; <else /> ipb.profile.isFriend = false; </if> </if> //]]> </script> <if test="hasCustomization:|:is_array($member['customization']) AND $member['customization']['type']"> {parse template="customizeProfile" group="profile" params="$member"} </if> <if test="canEditUser:|$this->memberData['member_id'] && $member['member_id'] == $this->memberData['member_id']) || $this->memberData['g_is_supmod'] == 1 || ($this->memberData['member_id'] && $member['member_id'] != $this->memberData['member_id'])"> <ul class='topic_buttons'> <if test="weAreSupmod:|:$this->memberData['g_is_supmod'] == 1 && $member['member_id'] != $this->memberData['member_id']"> <li><a href='{parse url="app=core&module=modcp&do=editmember&auth_key={$this->member->form_hash}&mid={$member['member_id']}&pf={$member['member_id']}" base="public"}'>{$this->lang->words['supmod_edit_member']}</a></li> </if> <if test="weAreOwner:|:$this->memberData['member_id'] && $member['member_id'] == $this->memberData['member_id']"> <li><a href='{parse url="app=core&module=usercp&tab=core" base="public"}'>{$this->lang->words['edit_profile']}</a></li> </if> <if test="supModCustomization:|$member['member_id'] == $this->memberData['member_id'] ) AND $member['customization']['type']"> <li class='non_button'><a href='{parse url="showuser={$member['member_id']}&secure_key={$this->member->form_hash}&removeCustomization=1" seotitle="{$member['members_seo_name']}" template="showuser" base="public"}'>{$this->lang->words['cust_remove']}</a></li> </if> </ul> </if> <div class='ipsBox clear vcard' id='profile_background'> <div class='ipsVerticalTabbed ipsLayout ipsLayout_withleft ipsLayout_smallleft clearfix'> <div class='ipsVerticalTabbed_tabs ipsLayout_left' id='profile_tabs'> <p class='short photo_holder'> <if test="canEditPic:|$this->memberData['member_id'] && $member['member_id'] == $this->memberData['member_id']) AND (IPSMember::canUploadPhoto($member, TRUE))"> <a data-clicklaunch="launchPhotoEditor" href="{parse url="app=members&module=profile&section=photo" base="public"}" id='change_photo' class='ipsType_smaller ipsPad' title='{$this->lang->words['change_photo_desc']}'>{$this->lang->words['change_photo_link']}</a> </if> <img class="ipsUserPhoto" id='profile_photo' src='{$member['pp_main_photo']}' alt="{parse expression="sprintf($this->lang->words['users_photo'],$member['members_display_name'])"}" /> </p> <if test="haswarn:|:$member['show_warn']"> <div class='warn_panel clear ipsType_small'> <strong><a href='{parse url="app=members&module=profile&section=warnings&member={$member['member_id']}&from_app=members" base="public"}' id='warn_link_xxx_{$member['member_id']}' title='{$this->lang->words['warn_view_history']}'>{parse expression="sprintf( $this->lang->words['warn_status'], $member['warn_level'] )"}</a></strong> </div> </if> <ul class='clear'> <li id='tab_link_core:info' class='tab_toggle <if test="$default_tab == 'core:info'">active</if>' data-tabid='user_info'><a href='#'>{$this->lang->words['pp_tab_info']}</a></li> <foreach loop="tabs:$tabs as $tab"> <li id='tab_link_{$tab['app']}:{$tab['plugin_key']}' class='<if test="tabactive:|:$tab['app'].':'.$tab['plugin_key'] == $default_tab || $this->request['tab'] == $tab['plugin_key']">active</if> tab_toggle' data-tabid='{$tab['plugin_key']}'><a href='{parse url="showuser={$member['member_id']}&tab={$tab['plugin_key']}" seotitle="{$member['members_seo_name']}" template="showuser" base="public"}' title='{$this->lang->words['view']} {$tab['_lang']}'>{$tab['_lang']}</a></li> </foreach> </ul> </div> <div class='ipsVerticalTabbed_content ipsLayout_content ipsBox_container' id='profile_content'> <div class='ipsPad'> <div id='profile_content_main'> <div id='user_info_cell'> <h1 class='ipsType_pagetitle'> <span class='fn nickname'>{$member['members_display_name']}</span> </h1> {$this->lang->words['m_member_since']} {parse date="$member['joined']" format="DATE"}<br /> <if test="hasWarns:|:!empty( $warns )"> <foreach loop="warnsLoop:array( 'ban', 'suspend', 'rpa', 'mq' ) as $k"> <if test="warnIsSet:|:isset( $warns[ $k ] )"> <span class='ipsBadge ipsBadge_red<if test="warnClickable:|:$warns[ $k ]"> clickable</if>' <if test="warnPopup:|:$warns[ $k ]">onclick='warningPopup( this, {$warns[ $k ]} )'</if>>{$this->lang->words[ 'warnings_profile_badge_' . $k ]}</span> </if> </foreach> </if> <if test="onlineDetails:|:$member['_online'] && ($member['online_extra'] != $this->lang->words['not_online'])"> <span class='ipsBadge ipsBadge_green reset_cursor' data-tooltip="{parse expression="strip_tags($member['online_extra'])"}">{$this->lang->words['online_online']}</span> <else /> <span class='ipsBadge ipsBadge_lightgrey reset_cursor'>{$this->lang->words['online_offline']}</span> </if> <span class='desc lighter'>{$this->lang->words['m_last_active']} {$member['_last_active']}</span> </div> <if test="userStatus:|:$status['status_id'] && $this->settings['su_enabled']"> <div id='user_status_cell'> <div id='user_latest_status'> <div> {parse expression="IPSText::truncate( strip_tags( $status['status_content'] ), 180 )"} <span class='ipsType_smaller desc lighter blend_links'><a href='{parse url="app=members&module=profile&section=status&type=single&status_id={$status['status_id']}" seotitle="array($status['member_id'], $status['members_seo_name'])" template="members_status_single" base="public"}'>{$this->lang->words['ps_updated']} {parse date="$status['status_date']" format="manual{%d %b}" relative="true"} · {parse expression="intval($status['status_replies'])"} {$this->lang->words['ps_comments']}</a></span> </div> </div> </div> </if> <if test="allowRate:|:$this->settings['pp_allow_member_rate']"> <span class='rating left clear' style='margin-bottom: 10px'> <if test="noRateYourself:|:$this->memberData['member_id'] == $member['member_id'] || !$this->memberData['member_id']"> <if test="rate1:|:$member['pp_rating_real'] >= 1">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate2:|:$member['pp_rating_real'] >= 2">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate3:|:$member['pp_rating_real'] >= 3">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate4:|:$member['pp_rating_real'] >= 4">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate5:|:$member['pp_rating_real'] >= 5">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><span id='rating_text' class='desc'></span> <else /> <a href='#' id='user_rate_1' title='{$this->lang->words['m_rate_1']}'><if test="rated1:|:$member['pp_rating_real'] >= 1">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a><a href='#' id='user_rate_2' title='{$this->lang->words['m_rate_2']}'><if test="rated2:|:$member['pp_rating_real'] >= 2">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a><a href='#' id='user_rate_3' title='{$this->lang->words['m_rate_3']}'><if test="rated3:|:$member['pp_rating_real'] >= 3">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a><a href='#' id='user_rate_4' title='{$this->lang->words['m_rate_4']}'><if test="rated4:|:$member['pp_rating_real'] >= 4">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a><a href='#' id='user_rate_5' title='{$this->lang->words['m_rate_5']}'><if test="rated5:|:$member['pp_rating_real'] >= 5">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if></a> <span id='rating_text' class='desc'></span> <script type='text/javascript'> rating = new ipb.rating( 'user_rate_', { url: ipb.vars['base_url'] + 'app=members&module=ajax§ion=rate&member_id={$member['member_id']}&md5check=' + ipb.vars['secure_hash'], cur_rating: <if test="hasrating:|:isset($member['pp_rating_real'])">{$member['pp_rating_real']}<else />0</if>, rated: null, allow_rate: ( {$this->memberData['member_id']} != 0 ) ? 1 : 0, show_rate_text: false } ); </script> </if> </span> </if> <ul class='ipsList_inline' id='user_utility_links'> <if test="noFriendYourself:|:$this->memberData['member_id'] AND $this->memberData['member_id'] != $member['member_id'] && $this->settings['friends_enabled'] AND $this->memberData['g_can_add_friends']"> <li id='friend_toggle' class='ipsButton_secondary'> <if test="isFriend:|:IPSMember::checkFriendStatus( $member['member_id'] )"> <a href='{parse url="app=members&section=friends&module=profile&do=remove&member_id={$member['member_id']}&secure_key={$this->member->form_hash}" base="public"}' title='{$this->lang->words['remove_friend']}'><img src='{$this->settings['img_url']}/user_delete.png' alt='{$this->lang->words['remove_friend']}' /> {$this->lang->words['remove_as_friend']}</a> <else /> <a href='{parse url="app=members&section=friends&module=profile&do=add&member_id={$member['member_id']}&secure_key={$this->member->form_hash}" base="public"}' title='{$this->lang->words['add_friend']}'><img src='{$this->settings['img_url']}/user_add.png' alt='{$this->lang->words['add_friend']}' /> {$this->lang->words['add_me_friend']}</a> </if> </li> </if> <if test="pmlink:|$member['member_id'] != $this->memberData['member_id']) AND $this->memberData['g_use_pm'] AND $this->memberData['members_disable_pm'] == 0 AND IPSLib::moduleIsEnabled( 'messaging', 'members' ) AND $member['members_disable_pm'] == 0"> <li class='pm_button' id='pm_xxx_{$member['member_id']}'><a href='{parse url="app=members&module=messaging&section=send&do=form&fromMemberID={$member['member_id']}" base="public"}' title='{$this->lang->words['pm_this_member']}' class='ipsButton_secondary'>{parse replacement="send_msg"} {$this->lang->words['send_message']}</a></li> </if> <li> <a href='{parse url="app=core&module=search&do=user_activity&mid={$member['member_id']}" base="public"}' class='ipsButton_secondary'>{parse replacement="find_topics_link"} {$this->lang->words['gbl_find_my_content']}</a> </li> </ul> </div> <div id='profile_panes_wrap' class='clearfix'> <div id='pane_core:info' class='ipsLayout ipsLayout_withright ipsLayout_largeright clearfix' <if test="$default_tab != 'core:info'">style='display: none'</if>> <div class='ipsLayout_content'> <if test="$member['pp_about_me']"> <div class='general_box clearfix' id='about_me'> <h3>{$this->lang->words['pp_tab_aboutme']}</h3> <div class='ipsPad'> {$member['pp_about_me']} </div> </div> <hr/> </if> <div class='general_box clearfix'> <h3>{$this->lang->words['community_stats']}</h3> <br /> <ul class='ipsList_data clearfix'> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_group']}</span> <span class='row_data'>{$member['g_title']}</span> </li> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_posts']}</span> <span class='row_data'>{parse format_number="$member['posts']"}</span> </li> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_profile_views']}</span> <span class='row_data'>{parse format_number="$member['members_profile_views']"}</span> </li> <if test="member_title:|:$member['title'] != ''"> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_member_title']}</span> <span class='row_data'>{$member['title']}</span> </li> </if> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_age_prefix']}</span> <if test="member_age:|:$member['_age'] > 0"> <span class='row_data'>{$member['_age']} {$this->lang->words['m_years_old']}</span> <else /> <span class='row_data desc lighter'>{$this->lang->words['m_age_unknown']}</span> </if> </li> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_birthday_prefix']}</span> <if test="member_birthday:|:$member['bday_day']"> <span class='row_data'>{$member['_bday_month']} {$member['bday_day']}<if test="member_bday_year:|:$member['bday_year']">, {$member['bday_year']}</if></span> <else /> <span class='row_data desc lighter'>{$this->lang->words['m_bday_unknown']}</span> </if> </li> <if test="pcfields:|:$member['custom_fields']['profile_info'] != """> <foreach loop="pcfieldsLoop:$member['custom_fields']['profile_info'] as $key => $value"> <if test="!empty($value)"> <li class='clear clearfix'> {$value} </li> </if> </foreach> </if> </ul> <br /> </div> <if test="pcfieldsOther:|:$member['custom_fields']"> <foreach loop="pcfieldsOtherLoop:$member['custom_fields'] as $group => $mdata"> <if test="pcfieldsOtherLoopCheck:|:$group != 'profile_info' AND $group != 'contact'"> <if test="pcfieldsOtherLoopCheck2:|:is_array( $member['custom_fields'][ $group ] ) AND count( $member['custom_fields'][ $group ] )"> <div class='general_box clearfix' id='custom_fields_{$group}'> <h3 class='bar'>{$member['custom_field_groups'][ $group ]}</h3> <br /> <ul class='ipsList_data clearfix'> <foreach loop="pcfieldsOtherLoopCheckInner:$member['custom_fields'][ $group ] as $key => $value"> <li class='clear clearfix'> {$value} </li> </foreach> </ul> <br /> </div> </if> </if> </foreach> </if> <if test="hasContactFields:|:$this->memberData['g_access_cp'] == 1 || is_array( $member['custom_fields']['contact'] )"> <div class='general_box clearfix'> <if test="showContactHead:|:$this->memberData['g_access_cp'] == 1 || $show_contact"> <h3>{$this->lang->words['contact_info']}</h3> <br /> </if> <ul class='ipsList_data clearfix'> <if test="isadmin:|:$this->memberData['g_access_cp'] == 1"> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_email']}</span> <span class='row_data'> <a href='mailto:{$member['email']}'>{$member['email']}</a> </span> </li> </if> <if test="member_contact_fields:|:is_array( $member['custom_fields']['contact'])"> <foreach loop="cfields:$member['custom_fields']['contact'] as $field"> {$field} </foreach> </if> </ul> </div> </if> </div> <div class='ipsLayout_right'> <if test="ourReputation:|:$this->settings['reputation_enabled'] && $this->settings['reputation_show_profile']"> <if test="RepPositive:|:$member['pp_reputation_points'] > 0"> <div class='reputation positive' data-tooltip="{parse expression="sprintf( $this->lang->words['rep_description'], $member['members_display_name'], $member['pp_reputation_points'])"}"> </if> <if test="RepNegative:|:$member['pp_reputation_points'] < 0"> <div class='reputation negative' data-tooltip="{parse expression="sprintf( $this->lang->words['rep_description'], $member['members_display_name'], $member['pp_reputation_points'])"}"> </if> <if test="RepZero:|:$member['pp_reputation_points'] == 0"> <div class='reputation zero' data-tooltip="{parse expression="sprintf( $this->lang->words['rep_description'], $member['members_display_name'], $member['pp_reputation_points'])"}"> </if> <span class='number'>{$member['pp_reputation_points']}</span> <if test="RepText:|:$member['author_reputation'] && $member['author_reputation']['text']"> <span class='title'>{$member['author_reputation']['text']}</span> </if> <if test="RepImage:|:$member['author_reputation'] && $member['author_reputation']['image']"> <span class='image'><img src='{$member['author_reputation']['image']}' alt='{$this->lang->words['m_reputation']}' /></span> </if> </div> <br /> </if> <if test="checkModTools:|$member['spamStatus'] !== NULL && $member['member_id'] != $this->memberData['member_id']) || ($this->memberData['g_mem_info'] && $this->settings['auth_allow_dnames']) || (($member['member_id'] != $this->memberData['member_id'] AND $this->memberData['g_is_supmod'] ) AND $member['customization']['type'])"> <div class='general_box clearfix'> <h3>{$this->lang->words['user_tools']}</h3> <ul class='ipsPad'> <if test="authorspammer:|:$member['spamStatus'] !== NULL && $member['member_id'] != $this->memberData['member_id']"> <if test="authorspammerinner:|:$member['spamStatus'] === TRUE"> <li><a href='#' onclick="return ipb.global.toggleFlagSpammer({$member['member_id']}, false)">{parse replacement="spammer_on"} {$this->lang->words['spm_on']}</a></li> <else /> <li><a href='{$this->settings['base_url']}app=core&module=modcp&do=setAsSpammer&member_id={$member['member_id']}&auth_key={$this->member->form_hash}' onclick="return ipb.global.toggleFlagSpammer({$member['member_id']}, true)">{parse replacement="spammer_off"} {$this->lang->words['spm_off']}</a></li> </if> </if> <if test="dnameHistory:|:$this->memberData['member_id'] && $this->memberData['g_mem_info'] && $this->settings['auth_allow_dnames']"> <li id='dname_history'><a href='{parse url="app=members&module=profile&section=dname&id={$member['member_id']}" base="public"}' title='{$this->lang->words['view_dname_history']}'>{parse replacement="display_name"} {$this->lang->words['display_name_history']}</a></li> </if> <if test="supModCustomizationDisable:|$member['member_id'] != $this->memberData['member_id'] AND $this->memberData['g_is_supmod'] ) AND $member['customization']['type']"> <li><strong><a href='{parse url="showuser={$member['member_id']}&secure_key={$this->member->form_hash}&removeCustomization=1" seotitle="{$member['members_seo_name']}" template="showuser" base="public"}'><img src='{$this->settings['img_url']}/delete.png' alt='-' /> {$this->lang->words['cust_remove']}</a></strong></li> <li><strong><a href='{parse url="showuser={$member['member_id']}&secure_key={$this->member->form_hash}&removeCustomization=1&disableCustomization=1" seotitle="{$member['members_seo_name']}" template="showuser" base="public"}'><img src='{$this->settings['img_url']}/delete.png' alt='-' /> {$this->lang->words['cust_disable']}</a></strong></li> </if> </ul> </div> </if> <if test="$member['pp_setting_count_friends'] and $this->settings['friends_enabled']"> <div class='general_box clearfix' id='friends_overview'> <h3>{$this->lang->words['m_title_friends']}</h3> <div class='ipsPad'> <if test="hasFriends:|:count($friends) AND is_array($friends)"> <foreach loop="friendsLoop:$friends as $friend"> <a href='{parse url="showuser={$friend['member_id']}" base="public" template="showuser" seotitle="{$friend['members_seo_name']}"}' class='ipsUserPhotoLink'> <img src='{$friend['pp_mini_photo']}' class='ipsUserPhoto ipsUserPhoto_mini' data-tooltip='{$friend['members_display_name']}' /> </a> </foreach> <else /> <p class='desc'> {$member['members_display_name']} {$this->lang->words['no_friends_yet']} </p> </if> </div> </div> </if> <if test="latest_visitors:|:$member['pp_setting_count_visitors']"> <div class='general_box clearfix'> <h3>{$this->lang->words['latest_visitors']}</h3> <if test="has_visitors:|:is_array( $visitors ) && count( $visitors )"> <ul class='ipsList_withminiphoto ipsPad'> <foreach loop="latest_visitors_loop:$visitors as $visitor"> <li class='clearfix'> <if test="visitorismember:|:$visitor['member_id']"> <a href='{parse url="showuser={$visitor['member_id']}" seotitle="{$visitor['members_seo_name']}" template="showuser" base="public"}' title='{$this->lang->words['view_profile']}' class='ipsUserPhotoLink left'><img src='{$visitor['pp_mini_photo']}' alt='{$this->lang->words['photo']}' class='ipsUserPhoto ipsUserPhoto_mini' /></a> <else /> <img src='{$visitor['pp_mini_photo']}' alt='{$this->lang->words['photo']}' class='ipsUserPhoto ipsUserPhoto_mini left' /> </if> <div class='list_content'> {parse template="userHoverCard" group="global" params="$visitor"} <br /> <span class='desc lighter'>{$visitor['_visited_date']}</span> </div> </li> </foreach> </ul> <else /> <p class='ipsPad desc'>{$this->lang->words['no_latest_visitors']}</p> </if> </div> </if> </div> </div> <if test="$default_tab != 'core:info'"> <div id='pane_{$default_tab}'> {$default_tab_content} </div> </if> </div> </div> </div> </div> </div> <if test="thisIsNotUs:|$this->memberData['member_id'] && $member['member_id'] != $this->memberData['member_id'])"> <br /> <ul class='topic_buttons'> <li class='non_button clearfix'><a href='{parse url="app=core&module=reports&section=reports&rcom=profiles&member_id={$member['member_id']}" base="public"}'>{$this->lang->words['report_member']}</a></li> </ul> </if> <script type='text/javascript'> $("profile_content").setStyle( { minHeight: $('profile_tabs').measure('margin-box-height') + 138 + "px" } ); </script> <!-- ******************************************************************************************* --> {parse template="include_highlighter" group="global" params=""} Link to comment https://ipbmafia.ru/topic/2768-pulse-v1010/?&do=findComment&comment=47908 Share on other sites Больше вариантов
29 ноября, 201310 yr comment_47931 частично разобрался, вот код блока контактной информации <if test="hasContactFields:|:$this->memberData['g_access_cp'] == 1 || is_array( $member['custom_fields']['contact'] )"> <div class='general_box clearfix'> <if test="showContactHead:|:$this->memberData['g_access_cp'] == 1 || $show_contact"> <h3>{$this->lang->words['contact_info']}</h3> <br /> </if> <ul class='ipsList_data clearfix'> <if test="isadmin:|:$this->memberData['g_access_cp'] == 1"> <li class='clear clearfix'> <span class='row_title'>{$this->lang->words['m_email']}</span> <span class='row_data'> <a href='mailto:{$member['email']}'>{$member['email']}</a> </span> </li> </if> <if test="member_contact_fields:|:is_array( $member['custom_fields']['contact'])"> <foreach loop="cfields:$member['custom_fields']['contact'] as $field"> {$field} </foreach> </if> </ul> </div> </if> но непонятно зачем показ заголовка блока заключен в условие <if test="showContactHead:|:$this->memberData['g_access_cp'] == 1 || $show_contact"> <h3>{$this->lang->words['contact_info']}</h3> <br /> </if> такое условие есть у меня и в стандартном стиле, но в нём оно почему то работает корректно...если убрать условие - в принципе проблема решается, но не корректная работа в данном стиле остаётся загадкой Link to comment https://ipbmafia.ru/topic/2768-pulse-v1010/?&do=findComment&comment=47931 Share on other sites Больше вариантов
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.