Jump to content

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


H_A_N
 Share

Recommended Posts

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

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

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

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

Link to comment
Share on other sites

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

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

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

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

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

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

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

 

Link to comment
Share on other sites

Только что, 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/
Но если я правильно понял описание, то как раз то что мне надо в последних версиях отключили. 

Link to comment
Share on other sites

Перейти 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}}

 

 

Link to comment
Share on other sites

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

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

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

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

Link to comment
Share on other sites

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

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

{{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}}

 

Link to comment
Share on other sites

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

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

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

Link to comment
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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Ваша ссылка была автоматически строена.   Отображать как обычную ссылку

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...