Jump to content

Ограничить просмот полей в профиле.

Featured Replies

Posted
comment_114579

Добрый день.
Подскажите пожалуйста как можно ограничить доступ к просмотру полей в профиле пользователей?

В версии 3.4  профиль могли просматривать только зарегистрированные пользователи,  в профиль каждого пользователя были добавлены два поля которые не хотелось бы выставлять на обозрение Гостей.

После обновления до 4.1.16.1 в админке,  в Правах доступа нашел только для этих полей "Отображать в профиле пользователя" (Если выключено, только администрация и пользователь смогут видеть это поле), но мне надо чтобы и группа Зарегистрированные пользователи могли увидеть эти поля.

Как это сделать?    

comment_114580

Можете поставит ограничение кто увидет профил:

ACP -> System -> Aplications -> System -> Profile -> permissions

11.png

comment_114581
7 минут назад, H_A_N сказал:

Добрый день.
Подскажите пожалуйста как можно ограничить доступ к просмотру полей в профиле пользователей?

В версии 3.4  профиль могли просматривать только зарегистрированные пользователи,  в профиль каждого пользователя были добавлены два поля которые не хотелось бы выставлять на обозрение Гостей.

После обновления до 4.1.16.1 в админке,  в Правах доступа нашел только для этих полей "Отображать в профиле пользователя" (Если выключено, только администрация и пользователь смогут видеть это поле), но мне надо чтобы и группа Зарегистрированные пользователи могли увидеть эти поля.

Как это сделать?    

можно гостям запретить видеть профили: 

2016-10-25_21-59-30.png

 

  • Author
comment_114582
Только что, Silence сказал:

Можете поставит ограничение кто увидет профил:

ACP -> System -> Aplications -> System -> Profile -> permissions

11.png

Спасибо, это я уже тоже нашел, но через профиль удобно смотреть и темы пользователя и Галерею и т.д.
Поэтому хочется общий доступ оставить и скрыть только пару полей, а т.к. в админке уже почти есть такая функция (надо только добавить выбор группы для которой это будет действовать, не только Администрацию) надеялся что кто-то уже подобное раализовывал. 

Нечто подобное насколько я понял уже пытались реализовать  в Profile Field Per User Group https://invisionpower.com/files/file/7833-profile-field-per-user-group/
Но если я правильно понял описание, то как раз то что мне надо в последних версиях отключили. 

comment_114589

Перейти ACP -> Customization -> Themes -> ваша тема -> Edit HTML and CSS -> core -> front -> profile -> profile заменить все с ето:

Спойлер

{{if !\IPS\Request::i()->isAjax()}}
<!-- When altering this template be sure to also check for similar in the hovercard -->
<div data-controller='core.front.profile.main'>
	{template="profileHeader" app="core" location="front" group="profile" params="$member, false"}
	<div data-role="profileContent">
{{endif}}
		<div class='ipsColumns ipsColumns_noSpacing ipsColumns_collapseTablet' data-controller="core.front.profile.body">
			<div class='ipsColumn ipsColumn_fixed ipsColumn_veryWide' id='elProfileInfoColumn'>
				<div class='ipsAreaBackground_light ipsPad'>
					{{if settings.reputation_enabled and settings.reputation_show_profile}}
						<div class='cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
							{{if member.group['gbw_view_reps']}}
								<a href="{url="app=core&module=members&controller=profile&id={$member->member_id}&do=reputation" seoTemplate="profile_reputation" seoTitle="$member->members_seo_name"}" data-action="repLog" title="{lang="members_reputation" sprintf="$member->name"}">
							{{endif}}
								<div class='cProfileRepScore ipsPad_half {{if $member->pp_reputation_points > 1}}cProfileRepScore_positive{{elseif $member->pp_reputation_points < 0}}cProfileRepScore_negative{{else}}cProfileRepScore_neutral{{endif}}'>
									<h2 class='ipsType_minorHeading'>{lang="profile_reputation"}</h2>
									<span class='cProfileRepScore_points'>{number="$member->pp_reputation_points"}</span>
									{{if $member->reputation()}}
										<span class='cProfileRepScore_title'>{$member->reputation()}</span>
									{{endif}}
									{{if $member->reputationImage()}}
										<div class='ipsAreaBackground_reset ipsAreaBackground_rounded ipsPad_half ipsType_center'>
											<img src='{file="$member->reputationImage()" extension="core_Theme"}' alt=''>
										</div>
									{{endif}}
								</div>
							{{if member.group['gbw_view_reps']}}
								<p class='ipsType_reset ipsPad_half ipsType_right ipsType_light ipsType_small'>
									{lang="replog_show_activity"} <i class='fa fa-caret-right'></i>
								</p>
							</a>
							{{endif}}
						</div>
					{{endif}}
					
					{{if \IPS\Settings::i()->warn_on and !$member->inGroup( explode( ',', \IPS\Settings::i()->warn_protected ) ) and ( \IPS\Member::loggedIn()->modPermission('mod_see_warn') or ( \IPS\Settings::i()->warn_show_own and \IPS\Member::loggedIn()->member_id == $member->member_id ) )}}
						<div class='cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
							<div id='elWarningInfo' class='ipsPad {{if $member->mod_posts || $member->restrict_post || $member->temp_ban}}ipsAreaBackground_negative{{endif}} ipsClearfix'>
								<i class='ipsPos_left {{if $member->warn_level > 0 || $member->mod_posts || $member->restrict_post || $member->temp_ban}}fa fa-exclamation-triangle{{else}}fa fa-circle-o ipsType_light{{endif}}'></i>
								<div>
									<h2 class='ipsType_sectionHead'>{lang="member_warn_level" pluralize="$member->warn_level"}</h2>
									<br>
									{{if !$member->mod_posts && !$member->restrict_post && !$member->temp_ban}}
										<span>{lang="no_restrictions_applied"}</span>
										<br>
									{{else}}
										<span>{lang="restrictions_applied"}</span>
										<ul class='ipsList_bullets ipsSpacer_top ipsSpacer_half'>
											{{if $member->mod_posts}}
												<li data-ipsTooltip title="{{if $member->mod_posts == -1}}{lang="moderation_modq_perm"}{{else}}{lang="moderation_modq_temp" sprintf="\IPS\DateTime::ts( $member->mod_posts )"}{{endif}}">
													{lang="moderation_modq"}
												</li>
											{{endif}}
											{{if $member->restrict_post}}
												<li data-ipsTooltip title="{{if $member->restrict_post == -1}}{lang="moderation_nopost_perm"}{{else}}{lang="moderation_nopost_temp" sprintf="\IPS\DateTime::ts( $member->restrict_post )"}{{endif}}">
													{lang="moderation_nopost"}
												</li>
											{{endif}}
											{{if $member->temp_ban}}
												<li data-ipsTooltip title="{{if $member->temp_ban == -1}}{lang="moderation_banned_perm"}{{else}}{lang="moderation_banned_temp" sprintf="\IPS\DateTime::ts( $member->temp_ban )"}{{endif}}">
													{lang="moderation_banned"}
												</li>
											{{endif}}
										</ul>
									{{endif}}
									{{if ( member.canWarn( $member ) || ( member.modPermission('can_flag_as_spammer') and !$member->modPermission() and !$member->isAdmin() ) ) and $member->member_id != member.member_id }}
										<br>
										<ul class='{{if member.canWarn( $member ) && member.modPermission('can_flag_as_spammer') and $member->member_id != member.member_id and !$member->modPermission() and !$member->isAdmin()}} ipsButton_split {{else}} ipsList_inline {{endif}}'>
											{{if member.canWarn( $member )}}
												<li>
													<a href='{$addWarningUrl}' id='elWarnUserButton' data-ipsDialog data-ipsDialog-title="{lang="warn_member" sprintf="$member->name"}" class='ipsButton ipsButton_light ipsButton_verySmall' title='{lang="warn_member" sprintf="$member->name"}'>{lang="warn_user"}</a>
												</li>
											{{endif}}
											{{if member.modPermission('can_flag_as_spammer') and $member->member_id != member.member_id and !$member->modPermission() and !$member->isAdmin()}}
												<li>
													{{if $member->members_bitoptions['bw_is_spammer']}}
														<a href='{url="app=core&module=system&controller=moderation&do=flagAsSpammer&id={$member->member_id}&s=0" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall' title='{lang="spam_unflag"}' data-confirm data-confirmSubMessage="{lang="spam_unflag_confirm"}">{lang="spam_unflag"}</a>
													{{else}}
														<a href='{url="app=core&module=system&controller=moderation&do=flagAsSpammer&id={$member->member_id}&s=1" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall' title='{lang="spam_flag"}' data-confirm>{lang="spam_flag"}</a>
													{{endif}}
												</li>
											{{endif}}
										</ul>
									{{endif}}
								</div>
							</div>
							{{if count( $member->warnings( 1 ) )}}
								<div data-role="recentWarnings" class=''>
									<ol class='ipsDataList'>
										{{foreach $member->warnings( 2 ) as $warning}}
											<li class="ipsDataItem" id='elWarningOverview_{$warning->id}'>
												<div class='ipsDataItem_icon ipsType_center'>
													<a href="{url="app=core&module=system&controller=warnings&do=view&id={$member->member_id}&w={$warning->id}" seoTemplate="warn_view" seoTitle="$member->members_seo_name"}" data-ipsDialog data-ipsDialog-size='narrow' class="ipsType_blendLinks" data-ipsTooltip title='{lang="wan_action_points" pluralize="$warning->points"}'>
														<span class="ipsPoints">{$warning->points}</span>
													</a>
												</div>
												<div class='ipsDataItem_main'>
													{{if $warning->canDelete()}}
														<a href="{$warning->url('delete')->csrf()}" title='{lang="revoke_this_warning"}' data-ipsTooltip data-action="revoke" class='ipsPos_right ipsButton ipsButton_small ipsButton_light ipsButton_narrow' data-ipsDialog data-ipsDialog-title='{lang="revoke_this_warning"}' data-ipsDialog-size='medium'><i class="fa fa-undo"></i></a>
													{{endif}}
													<a href="{url="app=core&module=system&controller=warnings&do=view&id={$member->member_id}&w={$warning->id}" seoTemplate="warn_view" seoTitle="$member->members_seo_name"}" data-ipsDialog data-ipsDialog-showFrom='#elWarningOverview_{$warning->id}' data-ipsDialog-size='narrow' class="ipsType_blendLinks" title=''>
														<h4 class="ipsType_reset ipsType_medium ipsType_unbold">
															{{if \IPS\Settings::i()->warnings_acknowledge}}
																{{if $warning->acknowledged}}
																	<strong class='ipsType_success' title='{lang="warning_acknowledged"}' data-ipsTooltip><i class='fa fa-check-circle'></i></strong>
																{{else}}
																	<strong class='ipsType_light' title='{lang="warning_not_acknowledged"}' data-ipsTooltip><i class='fa fa-circle-o'></i></strong>
																{{endif}}
															{{endif}}
															{lang="core_warn_reason_{$warning->reason}"}
														</h4>
														<p class='ipsDataItem_meta ipsType_light'>
															{lang="byline" sprintf="\IPS\Member::load( $warning->moderator )->name"}{datetime="$warning->date"}
														</p>
													</a>
												</div>
											</li>
										{{endforeach}}
									</ol>
									<p class='ipsType_reset ipsType_center ipsType_small ipsPad_half'>
										<a href='{url="app=core&module=system&controller=warnings&id={$member->member_id}" seoTemplate="warn_list" seoTitle="$member->members_seo_name"}' class='ipsButton ipsButton_verySmall ipsButton_light ipsButton_fullWidth' title='{lang="see_all_warnings"}' data-ipsDialog data-ipsDialog-remoteVerify='false' data-ipsDialog-remoteSubmit='false' data-ipsDialog-title="{lang="members_warnings" sprintf="$member->name"}">{lang="see_all_c"}</a>
									</p>
								</div>
							{{endif}}
						</div>
					{{else}}
                        {{if \IPS\Member::loggedIn()->modPermission('can_flag_as_spammer') and !$member->inGroup( explode( ',', \IPS\Settings::i()->warn_protected ) ) and \IPS\Member::loggedIn()->member_id != $member->member_id}}
                            {{if $member->members_bitoptions['bw_is_spammer']}}
                                <a href='{url="app=core&module=system&controller=moderation&do=flagAsSpammer&id={$member->member_id}&s=0" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall ipsButton_fullWidth' title='{lang="spam_unflag"}' data-confirm data-confirmSubMessage="{lang="spam_unflag_confirm"}">{lang="spam_unflag"}</a>
                            {{else}}
                                <a href='{url="app=core&module=system&controller=moderation&do=flagAsSpammer&id={$member->member_id}&s=1" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall ipsButton_fullWidth' title='{lang="spam_flag"}' data-confirm>{lang="spam_flag"}</a>
                            {{endif}}
                        {{endif}}
                    {{endif}}
					{{if count( $followers ) || \IPS\Member::loggedIn()->member_id === $member->member_id}}
						<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom' id='elFollowers' data-feedID='member-{$member->member_id}' data-controller='core.front.profile.followers'>
							{template="followers" group="profile" app="core" params="$member, $followers"}
						</div>
	 				{{endif}}

					<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
						<h2 class='ipsWidget_title ipsType_reset'>{lang='profile_about' sprintf='$member->name'}</h2>
						<div class='ipsWidget_inner ipsPad'>
							{{if $member->group['g_icon'] }}
								<div class='ipsType_center ipsPad_half'><img src='{file="$member->group['g_icon']" extension="core_Theme"}' alt=''></div>
							{{endif}}
                          {{if \IPS\Member::loggedIn()->member_id }}
							<ul class='ipsDataList ipsDataList_reducedSpacing cProfileFields'>
								{{if $member->isOnline() AND $member->location}}
									<li class="ipsDataItem">
										<span class="ipsDataItem_generic ipsDataItem_size3 ipsType_break"><strong>{lang="online_users_location_lang"}</strong></span>
										<span class="ipsDataItem_main">{$member->location()|raw}</span>
									</li>
								{{endif}}
								{{if $member->member_title || $member->rank['title'] || $member->rank['image']}}
									<li class='ipsDataItem'>
										<span class='ipsDataItem_generic ipsDataItem_size3 ipsType_break'><strong>{lang="profile_rank"}</strong></span>
										<div class='ipsDataItem_generic ipsType_break'>
											{{if $member->member_title}}
												{$member->member_title}
												<br>
											{{elseif $member->rank['title']}}
												{$member->rank['title']}
												<br>
											{{endif}}
											{$member->rank['image']|raw}
										</div>
									</li>
								{{endif}}
								{{if $member->birthday}}
									<li class='ipsDataItem'>
										<span class='ipsDataItem_generic ipsDataItem_size3 ipsType_break'><strong>{lang="bday"}</strong></span>
										<span class='ipsDataItem_generic'>{$member->birthday}</span>
									</li>
								{{endif}}
							</ul>
                          {{endif}}
						</div>
					</div>
					{{foreach $sidebarFields as $group => $fields}}
						{{if count( $fields )}}
						<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
							{{if $group != 'core_pfieldgroups_0'}}
                                <h2 class='ipsWidget_title ipsType_reset'>{lang="$group"}</h2>
                            {{endif}}
                            <div class='ipsWidget_inner ipsPad'>
								<ul class='ipsDataList ipsDataList_reducedSpacing cProfileFields'>
									{{foreach $fields as $field => $value}}
										<li class='ipsDataItem ipsType_break'>
											<span class='ipsDataItem_generic ipsDataItem_size3 ipsType_break'><strong>{lang="$field"}</strong></span>
											<span class='ipsDataItem_generic'><div class='ipsType_break ipsContained'>{$value|raw}</div></span>
										</li>
									{{endforeach}}
								</ul>
							</div>
						</div>
						{{endif}}
					{{endforeach}}
					{{if \IPS\Member::loggedIn()->modPermission('can_see_emails')}}
						<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
							<h2 class='ipsWidget_title ipsType_reset'>{lang="profile_contact"}</h2>
							<div class='ipsWidget_inner ipsPad'>
								<ul class='ipsDataList ipsDataList_reducedSpacing'>
									<li class='ipsDataItem'>
										<span class='ipsDataItem_generic ipsDataItem_size3'><strong>{lang="profile_email"}</strong></span>
										<span class='ipsDataItem_generic'>
											<div class='ipsType_break ipsContained'><a href='mailto:{$member->email}' title='{lang="email_this_user"}'>{$member->email}</a></div>
											<span class='ipsType_light ipsType_small'>{lang="profile_email_addresses"}</span>
										</span>
									</li>
								</ul>
							</div>
						</div>
					{{endif}}
					{{if !empty( $visitors ) || \IPS\Member::loggedIn()->member_id == $member->member_id}}
						<div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom' data-controller='core.front.profile.toggleBlock'>
							{template="recentVisitorsBlock" group="profile" params="$member, $visitors"}
						</div>
					{{endif}}
				</div>

			</div>
			<section class='ipsColumn ipsColumn_fluid'>
				{$mainContent|raw}
			</section>
		</div>
{{if !\IPS\Request::i()->isAjax()}}
	</div>
</div>
{{endif}}

 

 

  • Author
comment_114805
В 25.10.2016 в 22:29, Silence сказал:

Перейти ACP -> Customization -> Themes -> ваша тема -> Edit HTML and CSS -> core -> front -> profile -> profile заменить все с ето:

Заменил, проверил, к сожалению как хотелось не заработало.

Гости и все пользователи все равно одинаково видят или не видят Доп поля.

  • Author
comment_114807

Чуть изменив Ваш код удалось скрыть от Гостей ВСЕ поля поля в профиле (Контакты, Информация и Доп. информация)

Но хоте лось бы все таки добиться чтобы скрытым от Гостей оказывалось только нужное мне поле.

{{if !\IPS\Request::i()->isAjax()}}
<!-- When altering this template be sure to also check for similar in the hovercard -->
<div data-controller='core.front.profile.main'>
    {template="profileHeader" app="core" location="front" group="profile" params="$member, false"}
    <div data-role="profileContent">
        {{endif}}
        <div class='ipsColumns ipsColumns_noSpacing ipsColumns_collapseTablet' data-controller="core.front.profile.body">
            <div class='ipsColumn ipsColumn_fixed ipsColumn_veryWide' id='elProfileInfoColumn'>
                <div class='ipsAreaBackground_light ipsPad'>
                    {{if settings.reputation_enabled and settings.reputation_show_profile}}
                    <div class='cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
                        {{if member.group['gbw_view_reps']}}
                        <a href="{url="app=core&module=members&controller=profile&id={$member->member_id}&do=reputation" seoTemplate="profile_reputation" seoTitle="$member->members_seo_name"}" data-action="repLog" title="{lang="members_reputation" sprintf="$member->name"}">
                            {{endif}}
                            <div class='cProfileRepScore ipsPad_half {{if $member->pp_reputation_points > 1}}cProfileRepScore_positive{{elseif $member->pp_reputation_points < 0}}cProfileRepScore_negative{{else}}cProfileRepScore_neutral{{endif}}'>
                                <h2 class='ipsType_minorHeading'>{lang="profile_reputation"}</h2>
                                <span class='cProfileRepScore_points'>{number="$member->pp_reputation_points"}</span>
                                {{if $member->reputation()}}
                                <span class='cProfileRepScore_title'>{$member->reputation()}</span>
                                {{endif}}
                                {{if $member->reputationImage()}}
                                <div class='ipsAreaBackground_reset ipsAreaBackground_rounded ipsPad_half ipsType_center'>
                                    <img src='{file="$member->reputationImage()" extension="core_Theme"}' alt=''>
                                </div>
                                {{endif}}
                            </div>
                            {{if member.group['gbw_view_reps']}}
                            <p class='ipsType_reset ipsPad_half ipsType_right ipsType_light ipsType_small'>
                                {lang="replog_show_activity"} <i class='fa fa-caret-right'></i>
                            </p>
                        </a>
                        {{endif}}
                    </div>
                    {{endif}}

                    {{if \IPS\Settings::i()->warn_on and !$member->inGroup( explode( ',', \IPS\Settings::i()->warn_protected ) ) and ( \IPS\Member::loggedIn()->modPermission('mod_see_warn') or ( \IPS\Settings::i()->warn_show_own and \IPS\Member::loggedIn()->member_id == $member->member_id ) )}}
                    <div class='cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
                        <div id='elWarningInfo' class='ipsPad {{if $member->mod_posts || $member->restrict_post || $member->temp_ban}}ipsAreaBackground_negative{{endif}} ipsClearfix'>
                            <i class='ipsPos_left {{if $member->warn_level > 0 || $member->mod_posts || $member->restrict_post || $member->temp_ban}}fa fa-exclamation-triangle{{else}}fa fa-circle-o ipsType_light{{endif}}'></i>
                            <div>
                                <h2 class='ipsType_sectionHead'>{lang="member_warn_level" pluralize="$member->warn_level"}</h2>
                                <br>
                                {{if !$member->mod_posts && !$member->restrict_post && !$member->temp_ban}}
                                <span>{lang="no_restrictions_applied"}</span>
                                <br>
                                {{else}}
                                <span>{lang="restrictions_applied"}</span>
                                <ul class='ipsList_bullets ipsSpacer_top ipsSpacer_half'>
                                    {{if $member->mod_posts}}
                                    <li data-ipsTooltip title="{{if $member->mod_posts == -1}}{lang="moderation_modq_perm"}{{else}}{lang="moderation_modq_temp" sprintf="\IPS\DateTime::ts( $member->mod_posts )"}{{endif}}">
                                    {lang="moderation_modq"}
                                    </li>
                                    {{endif}}
                                    {{if $member->restrict_post}}
                                    <li data-ipsTooltip title="{{if $member->restrict_post == -1}}{lang="moderation_nopost_perm"}{{else}}{lang="moderation_nopost_temp" sprintf="\IPS\DateTime::ts( $member->restrict_post )"}{{endif}}">
                                    {lang="moderation_nopost"}
                                    </li>
                                    {{endif}}
                                    {{if $member->temp_ban}}
                                    <li data-ipsTooltip title="{{if $member->temp_ban == -1}}{lang="moderation_banned_perm"}{{else}}{lang="moderation_banned_temp" sprintf="\IPS\DateTime::ts( $member->temp_ban )"}{{endif}}">
                                    {lang="moderation_banned"}
                                    </li>
                                    {{endif}}
                                </ul>
                                {{endif}}
                                {{if ( member.canWarn( $member ) || ( member.modPermission('can_flag_as_spammer') and !$member->modPermission() and !$member->isAdmin() ) ) and $member->member_id != member.member_id }}
                                <br>
                                <ul class='{{if member.canWarn( $member ) && member.modPermission('can_flag_as_spammer') and $member->member_id != member.member_id and !$member->modPermission() and !$member->isAdmin()}} ipsButton_split {{else}} ipsList_inline {{endif}}'>
                                {{if member.canWarn( $member )}}
                                <li>
                                    <a href='{$addWarningUrl}' id='elWarnUserButton' data-ipsDialog data-ipsDialog-title="{lang="warn_member" sprintf="$member->name"}" class='ipsButton ipsButton_light ipsButton_verySmall' title='{lang="warn_member" sprintf="$member->name"}'>{lang="warn_user"}</a>
                                </li>
                                {{endif}}
                                {{if member.modPermission('can_flag_as_spammer') and $member->member_id != member.member_id and !$member->modPermission() and !$member->isAdmin()}}
                                <li>
                                    {{if $member->members_bitoptions['bw_is_spammer']}}
                                    <a href='{url="app=core&module=system&controller=moderation&do=flagAsSpammer&id={$member->member_id}&s=0" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall' title='{lang="spam_unflag"}' data-confirm data-confirmSubMessage="{lang="spam_unflag_confirm"}">{lang="spam_unflag"}</a>
                                    {{else}}
                                    <a href='{url="app=core&module=system&controller=moderation&do=flagAsSpammer&id={$member->member_id}&s=1" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall' title='{lang="spam_flag"}' data-confirm>{lang="spam_flag"}</a>
                                    {{endif}}
                                </li>
                                {{endif}}
                                </ul>
                                {{endif}}
                            </div>
                        </div>
                        {{if count( $member->warnings( 1 ) )}}
                        <div data-role="recentWarnings" class=''>
                            <ol class='ipsDataList'>
                                {{foreach $member->warnings( 2 ) as $warning}}
                                <li class="ipsDataItem" id='elWarningOverview_{$warning->id}'>
                                    <div class='ipsDataItem_icon ipsType_center'>
                                        <a href="{url="app=core&module=system&controller=warnings&do=view&id={$member->member_id}&w={$warning->id}" seoTemplate="warn_view" seoTitle="$member->members_seo_name"}" data-ipsDialog data-ipsDialog-size='narrow' class="ipsType_blendLinks" data-ipsTooltip title='{lang="wan_action_points" pluralize="$warning->points"}'>
                                            <span class="ipsPoints">{$warning->points}</span>
                                        </a>
                                    </div>
                                    <div class='ipsDataItem_main'>
                                        {{if $warning->canDelete()}}
                                        <a href="{$warning->url('delete')->csrf()}" title='{lang="revoke_this_warning"}' data-ipsTooltip data-action="revoke" class='ipsPos_right ipsButton ipsButton_small ipsButton_light ipsButton_narrow' data-ipsDialog data-ipsDialog-title='{lang="revoke_this_warning"}' data-ipsDialog-size='medium'><i class="fa fa-undo"></i></a>
                                        {{endif}}
                                        <a href="{url="app=core&module=system&controller=warnings&do=view&id={$member->member_id}&w={$warning->id}" seoTemplate="warn_view" seoTitle="$member->members_seo_name"}" data-ipsDialog data-ipsDialog-showFrom='#elWarningOverview_{$warning->id}' data-ipsDialog-size='narrow' class="ipsType_blendLinks" title=''>
                                            <h4 class="ipsType_reset ipsType_medium ipsType_unbold">
                                                {{if \IPS\Settings::i()->warnings_acknowledge}}
                                                {{if $warning->acknowledged}}
                                                <strong class='ipsType_success' title='{lang="warning_acknowledged"}' data-ipsTooltip><i class='fa fa-check-circle'></i></strong>
                                                {{else}}
                                                <strong class='ipsType_light' title='{lang="warning_not_acknowledged"}' data-ipsTooltip><i class='fa fa-circle-o'></i></strong>
                                                {{endif}}
                                                {{endif}}
                                                {lang="core_warn_reason_{$warning->reason}"}
                                            </h4>
                                            <p class='ipsDataItem_meta ipsType_light'>
                                                {lang="byline" sprintf="\IPS\Member::load( $warning->moderator )->name"}{datetime="$warning->date"}
                                            </p>
                                        </a>
                                    </div>
                                </li>
                                {{endforeach}}
                            </ol>
                            <p class='ipsType_reset ipsType_center ipsType_small ipsPad_half'>
                                <a href='{url="app=core&module=system&controller=warnings&id={$member->member_id}" seoTemplate="warn_list" seoTitle="$member->members_seo_name"}' class='ipsButton ipsButton_verySmall ipsButton_light ipsButton_fullWidth' title='{lang="see_all_warnings"}' data-ipsDialog data-ipsDialog-remoteVerify='false' data-ipsDialog-remoteSubmit='false' data-ipsDialog-title="{lang="members_warnings" sprintf="$member->name"}">{lang="see_all_c"}</a>
                            </p>
                        </div>
                        {{endif}}
                    </div>
                    {{else}}
                    {{if \IPS\Member::loggedIn()->modPermission('can_flag_as_spammer') and !$member->inGroup( explode( ',', \IPS\Settings::i()->warn_protected ) ) and \IPS\Member::loggedIn()->member_id != $member->member_id}}
                    {{if $member->members_bitoptions['bw_is_spammer']}}
                    <a href='{url="app=core&module=system&controller=moderation&do=flagAsSpammer&id={$member->member_id}&s=0" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall ipsButton_fullWidth' title='{lang="spam_unflag"}' data-confirm data-confirmSubMessage="{lang="spam_unflag_confirm"}">{lang="spam_unflag"}</a>
                    {{else}}
                    <a href='{url="app=core&module=system&controller=moderation&do=flagAsSpammer&id={$member->member_id}&s=1" seoTemplate="flag_as_spammer" seoTitle="$member->members_seo_name" csrf="true"}' class='ipsButton ipsButton_light ipsButton_verySmall ipsButton_fullWidth' title='{lang="spam_flag"}' data-confirm>{lang="spam_flag"}</a>
                    {{endif}}
                    {{endif}}
                    {{endif}}
                    {{if count( $followers ) || \IPS\Member::loggedIn()->member_id === $member->member_id}}
                    <div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom' id='elFollowers' data-feedID='member-{$member->member_id}' data-controller='core.front.profile.followers'>
                        {template="followers" group="profile" app="core" params="$member, $followers"}
                    </div>
                    {{endif}}

                    <div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
                        <h2 class='ipsWidget_title ipsType_reset'>{lang='profile_about' sprintf='$member->name'}</h2>
                        <div class='ipsWidget_inner ipsPad'>
                            {{if $member->group['g_icon'] }}
                            <div class='ipsType_center ipsPad_half'><img src='{file="$member->group['g_icon']" extension="core_Theme"}' alt=''></div>
                            {{endif}}

                            <ul class='ipsDataList ipsDataList_reducedSpacing cProfileFields'>
                                {{if $member->isOnline() AND $member->location}}
                                <li class="ipsDataItem">
                                    <span class="ipsDataItem_generic ipsDataItem_size3 ipsType_break"><strong>{lang="online_users_location_lang"}</strong></span>
                                    <span class="ipsDataItem_main">{$member->location()|raw}</span>
                                </li>
                                {{endif}}
                                {{if $member->member_title || $member->rank['title'] || $member->rank['image']}}
                                <li class='ipsDataItem'>
                                    <span class='ipsDataItem_generic ipsDataItem_size3 ipsType_break'><strong>{lang="profile_rank"}</strong></span>
                                    <div class='ipsDataItem_generic ipsType_break'>
                                        {{if $member->member_title}}
                                        {$member->member_title}
                                        <br>
                                        {{elseif $member->rank['title']}}
                                        {$member->rank['title']}
                                        <br>
                                        {{endif}}
                                        {$member->rank['image']|raw}
                                    </div>
                                </li>
                                {{endif}}
                                {{if $member->birthday}}
                                <li class='ipsDataItem'>
                                    <span class='ipsDataItem_generic ipsDataItem_size3 ipsType_break'><strong>{lang="bday"}</strong></span>
                                    <span class='ipsDataItem_generic'>{$member->birthday}</span>
                                </li>
                                {{endif}}
                            </ul>
                        </div>
                    </div>
                    
                    {{foreach $sidebarFields as $group => $fields}}
                    {{if count( $fields )}}
                    <div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
                        {{if $group != 'core_pfieldgroups_0'}}
                        <h2 class='ipsWidget_title ipsType_reset'>{lang="$group"}</h2>
                        {{endif}}
                        <div class='ipsWidget_inner ipsPad'>
                            <ul class='ipsDataList ipsDataList_reducedSpacing cProfileFields'>
                                {{foreach $fields as $field => $value}}
                                {{if \IPS\Member::loggedIn()->member_id > 0 }}
                                <li class='ipsDataItem ipsType_break'>
                                    <span class='ipsDataItem_generic ipsDataItem_size3 ipsType_break'><strong>{lang="$field"}</strong></span>
                                    <span class='ipsDataItem_generic'><div class='ipsType_break ipsContained'>{$value|raw}</div></span>
                                </li>
                                {{endif}}
                                {{endforeach}}
                            </ul>
                        </div>
                    </div>
                    {{endif}}
                    {{endforeach}}
                    
                    {{if \IPS\Member::loggedIn()->modPermission('can_see_emails')}}
                    <div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom'>
                        <h2 class='ipsWidget_title ipsType_reset'>{lang="profile_contact"}</h2>
                        <div class='ipsWidget_inner ipsPad'>
                            <ul class='ipsDataList ipsDataList_reducedSpacing'>
                                <li class='ipsDataItem'>
                                    <span class='ipsDataItem_generic ipsDataItem_size3'><strong>{lang="profile_email"}</strong></span>
                                    <span class='ipsDataItem_generic'>
           <div class='ipsType_break ipsContained'><a href='mailto:{$member->email}' title='{lang="email_this_user"}'>{$member->email}</a></div>
           <span class='ipsType_light ipsType_small'>{lang="profile_email_addresses"}</span>
          </span>
                                </li>
                            </ul>
                        </div>
                    </div>
                    {{endif}}
                    {{if !empty( $visitors ) || \IPS\Member::loggedIn()->member_id == $member->member_id}}
                    <div class='ipsWidget ipsWidget_vertical cProfileSidebarBlock ipsBox ipsSpacer_bottom' data-controller='core.front.profile.toggleBlock'>
                        {template="recentVisitorsBlock" group="profile" params="$member, $visitors"}
                    </div>
                    {{endif}}
                </div>

            </div>
            <section class='ipsColumn ipsColumn_fluid'>
                {$mainContent|raw}
            </section>
        </div>
        {{if !\IPS\Request::i()->isAjax()}}
    </div>
</div>
{{endif}}

 

comment_114808
В 25.10.2016 в 22:05, H_A_N сказал:

Нечто подобное насколько я понял уже пытались реализовать  в Profile Field Per User Group
Но если я правильно понял описание, то как раз то что мне надо в последних версиях отключили.

Не отключили а скорее не смог, потому как малой кровью у него не получилось

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.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.