Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
mvArts

Как скрыть содержимое профиля админа

Recommended Posts

Сообсвенно вопрос, как скрыть все информацию в профиле админа. только аватар и имя. какие надо теги прописать что бы было видно все профили кроме админв

Share this post


Link to post
Share on other sites

Никак. Единственный вариант - запретить просмотр профилей администраторов.

Есть еще вариант с добавлением условий в шаблоне профиля, но судя по всему, самостоятельно вы с ним врядли разберетесь. Кроме того, есть еще вероятность что пользователь сменит стиль где эти условия не прописаны и сможет узнать всю секретную информацию об администраторе.

  • Upvote 1

Share this post


Link to post
Share on other sites
Кроме того, есть еще вероятность что пользователь сменит стиль где эти условия не прописаны и сможет узнать всю секретную информацию об администраторов.

Это не важно. Нужно только на том шаблоне который я делаю.

Единственный вариант - запретить просмотр профилей администраторов.

и как это сделать? в админке есть? я смотрел не нашел

Есть еще вариант с добавлением условий в шаблоне профиля, но судя по всему, самостоятельно вы с ним врядли разберетесь.

если профиль id=1 то скрыть соержиое если нет то показать как то так надо.

Share this post


Link to post
Share on other sites

если профиль id=1 то скрыть соержиое если нет то показать как то так надо.

 

Открыть \admin\applications\members\modules_public\profile\view.php

 

Найти

	if ( !$this->memberData['g_mem_info'] && ( $this->memberData['member_id'] != $member['member_id'] ) )
	{
		$this->registry->output->showError( 'profiles_off', 10245, null, null, 403 );
	}

Ниже добавить

	if( ! $this->memberData['g_access_cp'] AND $member['g_access_cp'] )
	{
		$this->registry->output->showError( 'profiles_off', 10245.1, null, null, 403 );
	}

 

Это запретит всем не администраторам просматривать профили администраторов. Администраторы - это те кто имеют доступ в АЦ

  • Upvote 2

Share this post


Link to post
Share on other sites

а можно как то оставить только имя на старнице?

Share this post


Link to post
Share on other sites

а можно как то оставить только имя на старнице?

А смысл?

 

I. Первый вариант - добавить условия в шаблоне, убрав таким способом ненужные элементы.

 

II. Второй вариант - создать отдельный шаблон со своей версткой. Мне ближе и проще именно этот способ.

Внешний Вид -> Шаблон -> Добавить новый

Название шаблона: profileModern_2

Добавить в группу: skin_profile

Переменные данных: $member

 

HTML код шаблона:

{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='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'>
			<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>
	</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="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>
				</div>
			</div>
		</div>
	</div>
</div>
</div>

<!-- ******************************************************************************************* -->
{parse template="include_highlighter" group="global" params=""}

 

В admin\applications\members\modules_public\profile\view.php

вместо кода из предыдущего сообщения, добавить этот:

 

	if( ! $this->memberData['g_access_cp'] AND $member['g_access_cp'] )
	{
		$member = IPSMember::buildDisplayData( $member );

		$this->request['member_id'] = intval( $this->request['showuser'] );
		$this->member_name	= $member['members_display_name'];

		$this->DB->insert( 'profile_portal_views', array( 'views_member_id' => $member['member_id'] ), true );

		$this->output		= $this->registry->getClass('output')->getTemplate('profile')->profileModern_2( $member );

		return;
	}

  • Upvote 1

Share this post


Link to post
Share on other sites
А смысл?

Сам главный администратор не хочет выдавать свои данные. хочет как на вк скрытые профили только с именем.

 

как тебя отблагодарить?

Share this post


Link to post
Share on other sites

Осталось только заменить {$member['pp_main_photo']} на http://vk.com/images/deactivated_an.png и вставить надпись по середине и в точь будет как на ВК.

  • Upvote 1

Share this post


Link to post
Share on other sites

хочет как на вк скрытые профили только с именем.

Ну и для полного счастья - поддержка друзей, они тоже смогут просматривать закрытый профиль.

 

	if( ! $this->memberData['g_access_cp'] AND $member['g_access_cp'] )
	{
		$isFriend = false;

		if( $this->memberData['member_id'] )
		{
			$row = $this->DB->buildAndFetch( array( 'select' => 'COUNT(*) as cnt', 'from' => 'profile_friends', 'where' => 'friends_member_id='.intval( $member['member_id'] ).' AND friends_friend_id='.$this->memberData['member_id'].' AND friends_approved=1', 'limit' => array(0,1) ) );
			$isFriend = ( $row['cnt'] ) ? true : false;
		}

		if( ! $isFriend )
		{
			$member = IPSMember::buildDisplayData( $member );

			$this->request['member_id'] = intval( $this->request['showuser'] );
			$this->member_name	= $member['members_display_name'];

			$this->DB->insert( 'profile_portal_views', array( 'views_member_id' => $member['member_id'] ), true );

			$this->output		= $this->registry->getClass('output')->getTemplate('profile')->profileModern_2( $member );

			return;
		}
	}

 

В профиле только включить "Модерировать запросы на дружбу". Иначе будут добавляться друзья на автомате.

 

 

как тебя отблагодарить?

WebMoney, Donate...

  • Upvote 1

Share this post


Link to post
Share on other sites

а как сделать как тут? типо только у главных администраторов ничего нет

post-54828-0-61682500-1375346026_thumb.jpg

Share this post


Link to post
Share on other sites

<if test="!$author['g_access_cp']">то, что будет отображаться у юзеров, а у админов(точнее юзеров, имеющих доступ в АЦ) скрыто</if>

Шаблон userInfoPane

  • Upvote 3
  • Downvote 1

Share this post


Link to post
Share on other sites

спасибо) нечайно минус постввил( хотел плюс

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...