Jump to content

Making members not to be allow to remove their like


Azhaurn

Recommended Posts

9 hours ago, Jrock said:

Their own or someone elses? If you want to disable negative reputation as a whole, and only allow positive, you can do that via the ACP. Just search "reputation" in the search box.

Their own. Sorry, forget to mention It. If they give reputation, they can't remove it.

Link to comment
Share on other sites

I haven't tried it in latest version but it works to previous version that I had to apply. If it's not working, reply to take a look.

From your theme's templates open the: core > front > global > reputation and delete or (better) comment the bellow content:

<a href='{$content->url( 'unreact' )->csrf()}' class='ipsReact_unreact {{if $content->reacted() == FALSE}}ipsHide{{endif}}' data-action='unreact' data-ipsTooltip title='{lang="reaction_remove"}'>&times;</a>

Also, open the core > front > global > reputationMini and do the same thing as above:

<li>
	<a href='{$content->url( 'unreact' )->csrf()}' class='ipsReact_unreact {{if $content->reacted() == FALSE}}ipsHide{{endif}}' data-action='unreact' data-ipsTooltip title='{lang="reaction_remove"}'>&times;</a>
</li>

 

Edited by Corona
  • Thanks 1
Link to comment
Share on other sites

8 hours ago, Corona said:

I haven't tried it in latest version but it works to previous version that I had to apply. If it's not working, reply to take a look.

From your theme's templates open the: core > front > global > reputation and delete or (better) comment the bellow content:

<a href='{$content->url( 'unreact' )->csrf()}' class='ipsReact_unreact {{if $content->reacted() == FALSE}}ipsHide{{endif}}' data-action='unreact' data-ipsTooltip title='{lang="reaction_remove"}'>&times;</a>


<a href='{$content->url( 'unreact' )->csrf()}' class='ipsReact_unreact {{if $content->reacted() == FALSE}}ipsHide{{endif}}' data-action='unreact' data-ipsTooltip title='{lang="reaction_remove"}'>&times;</a>

 Also, open the core > front > global > reputationMini and do the same thing as above:

<li> <a href='{$content->url( 'unreact' )->csrf()}' class='ipsReact_unreact {{if $content->reacted() == FALSE}}ipsHide{{endif}}' data-action='unreact' data-ipsTooltip title='{lang="reaction_remove"}'>&times;</a> </li>


<li>
	<a href='{$content->url( 'unreact' )->csrf()}' class='ipsReact_unreact {{if $content->reacted() == FALSE}}ipsHide{{endif}}' data-action='unreact' data-ipsTooltip title='{lang="reaction_remove"}'>&times;</a>
</li>

 

Thank you for trying to help me out but it's not working :(  It's still possible to remove my like on another post

Link to comment
Share on other sites

Is it correct the version on your user info panel? I mean you run 4.1? If yes try to comment the below content:

core > front > global > reputation

{{if $content->canGiveReputation( -1 )}}
<a href='{$content->url( 'rep' )->setQueryString( 'rep', -1 )->csrf()}' data-action="giveReputation" class='ipsButton ipsButton_like ipsButton_veryLight'><i class='fa fa-times'></i> <span class='ipsHide' data-role='repCount'>{$content->reputation()}</span> {lang="unlike"}</a>
{{endif}}

and

core > front > global > reputationMini

{{if $canRepDown}}
<a href='{$giveRepUrl->setQueryString( array( 'rep' => -1, 'mini' => 1 ) )->csrf()}' data-action="giveReputation">{lang="unlike"}</a>
{{endif}}

 

  • Thanks 1
Link to comment
Share on other sites

I'm using 4.4, I couldn't find the code you commented.

reputation
 

Spoiler

{{if \IPS\IPS::classUsesTrait( $content, 'IPS\Content\Reactable' ) and settings.reputation_enabled and $enabledReactions = \IPS\Content\Reaction::enabledReactions()}}
	<div data-controller='core.front.core.reaction' class='ipsItemControls_right ipsClearfix {{if $extraClass}}{$extraClass}{{endif}}'>	
		<div class='ipsReact ipsPos_right'>
			{{if \IPS\Settings::i()->reaction_count_display == 'count'}}
				{{$reactionCount = $content->reactionCount();}}
				<div class='ipsReact_reactCountOnly {{if $reactionCount >= 1}}ipsAreaBackground_positive{{elseif $reactionCount < 0}}ipsAreaBackground_negative{{else}}ipsAreaBackground_light{{endif}} ipsType_blendLinks {{if !count( $content->reactions() )}}ipsHide{{endif}}' data-role='reactCount'>
					{{if \IPS\Member::loggedIn()->group['gbw_view_reps']}}
						<a href='{$content->url('showReactions')}' data-ipsTooltip title='{lang="see_who_reacted" escape="true"}' data-ipsDialog data-ipsDialog-title='{lang="see_who_reacted" escape="true"}'>
					{{endif}}
					<span data-role='reactCountText'>{$reactionCount}</span>
					{{if \IPS\Member::loggedIn()->group['gbw_view_reps']}}
						</a>
					{{endif}}
				</div>
			{{else}}
				{{$reactBlurb = $content->reactBlurb();}}
				<div class='ipsReact_blurb {{if !$reactBlurb}}ipsHide{{endif}}' data-role='reactionBlurb'>
					{{if $reactBlurb}}
						{template="reactionBlurb" group="global" app="core" params="$content"}
					{{endif}}
				</div>
			{{endif}}
			
			{{if $content->canReact()}}
				{{$defaultReaction = reset( $enabledReactions );}}
				{{$reactButton = ( $reacted = $content->reacted() and isset( $enabledReactions[ $reacted->id ] ) ) ? $enabledReactions[ $reacted->id ] : $defaultReaction;}}

				<div class='ipsReact_types' data-role='reactionInteraction' data-unreact="{$content->url( 'unreact' )->csrf()}">
					{{if !\IPS\Content\Reaction::isLikeMode()}}
						<ul class='ipsList_inline' data-role='reactTypes'>
							{{foreach $enabledReactions as $reaction}}
								{{if $reaction->id == $reactButton->id}}
									{{continue;}}
								{{endif}}

								<li>
									<a href='{$content->url( 'react' )->setQueryString( 'reaction', $reaction->id )->csrf()}' class='ipsReact_reaction' data-role="reaction" {{if $reaction->id == $defaultReaction->id}}data-defaultReaction{{endif}}>
										<img src='{file="$reaction->_icon" extension="core_Reaction"}' alt="{lang="reaction_title_{$reaction->id}" escape="true"}" data-ipsTooltip title="{lang="reaction_title_{$reaction->id}" escape="true"}">
										<span class='ipsReact_name'>{lang="reaction_title_{$reaction->id}"}</span>
									</a>
								</li>
							{{endforeach}}
						</ul>
					{{endif}}

					<span class='ipsReact_button {{if $reacted !== FALSE}}ipsReact_reacted{{endif}}' data-action='reactLaunch'>
						<a href='{$content->url( 'react' )->setQueryString( 'reaction', $reactButton->id )->csrf()}' class='ipsReact_reaction' data-role="reaction" {{if $reactButton->id == $defaultReaction->id}}data-defaultReaction{{endif}}>
							<img src='{file="$reactButton->_icon" extension="core_Reaction"}' alt="{lang="reaction_title_{$reactButton->id}" escape="true"}" data-ipsTooltip title="{lang="reaction_title_{$reactButton->id}" escape="true"}">
							<span class='ipsReact_name'>{lang="reaction_title_{$reactButton->id}"}</span>
						</a>
					</span>

					<a href='{$content->url( 'unreact' )->csrf()}' class='ipsReact_unreact {{if $reacted == FALSE}}ipsHide{{endif}}' data-action='unreact' data-ipsTooltip title='{lang="reaction_remove"}'>&times;</a>
				</div>
			{{endif}}
		</div>
	</div>
{{endif}}

 

reputationMini

Spoiler

{{$allowRep = TRUE;}}
<div data-controller='core.front.core.reaction' class='ipsReact ipsReact_mini {{if !$allowRep}}ipsReact_miniNoInteraction{{endif}}'>
	
	{{if $content}}
		{{if \IPS\Settings::i()->reaction_count_display == 'count'}}
			<div class='ipsReact_reactCountOnly ipsReact_reactCountOnly_mini {{if $content->reactionCount() >= 1}}ipsAreaBackground_positive{{elseif $content->reactionCount() < 0}}ipsAreaBackground_negative{{else}}ipsAreaBackground_light{{endif}} ipsType_blendLinks {{if !count( $content->reactions() )}}ipsHide{{endif}}' data-role='reactCount'>
				{{if \IPS\Member::loggedIn()->group['gbw_view_reps']}}
					<a href='{$content->url('showReactions')}' data-ipsTooltip title='{lang="see_who_reacted" escape="true"}' data-ipsDialog data-ipsDialog-title='{lang="see_who_reacted" escape="true"}'>
				{{endif}}
				<span data-role='reactCountText'>{$content->reactionCount()}</span>
				{{if \IPS\Member::loggedIn()->group['gbw_view_reps']}}
					</a>
				{{endif}}
			</div>
		{{else}}
			<div class='ipsReact_blurb {{if !$content->reactBlurb()}}ipsHide{{endif}}' data-role='reactionBlurb'>
				{{if $content->reactBlurb()}}
					{template="reactionBlurb" group="global" app="core" params="$content"}
				{{endif}}
			</div>
		{{endif}}
		
		{{if $content->canReact()}}
			{{$reactButton = NULL;}}
			{{$defaultReaction = NULL;}}
	
			{{foreach \IPS\Content\Reaction::roots() AS $id => $reaction}}
				{{if !$defaultReaction}}
					{{$defaultReaction = $reaction;}}
				{{endif}}
				{{if ( $content->reacted() !== FALSE && $reaction->id == $content->reacted()->id ) || ( $content->reacted() === FALSE )}}
					{{$reactButton = $reaction;}}
					{{break;}}
				{{endif}}
			{{endforeach}}
			{{if $allowRep}}
				{{if \IPS\Settings::i()->reaction_count_display !== 'count'}}
					<span class='ipsReact_count' data-role="reactCount">
						<a href='{$content->url('showReactions')}' data-ipsDialog data-ipsDialog-title='{lang="see_who_reacted"}'>
							{expression="count( $content->reactions() )"}
						</a>
					</span>
				{{endif}}
				<div class='ipsReact_types' data-role='reactionInteraction' data-unreact="{$content->url( 'unreact' )->csrf()}">
					{{if !\IPS\Content\Reaction::isLikeMode()}}
						<ul class='ipsList_inline' data-role='reactTypes'>
							{{foreach \IPS\Content\Reaction::roots() AS $id => $reaction}}
							{{if $reaction->id == $reactButton->id OR $reaction->_enabled === FALSE}}
							{{continue;}}
							{{endif}}
	
								<li>
									<a href='{$content->url( 'react' )->setQueryString( 'reaction', $reaction->id )->csrf()}' class='ipsReact_reaction' data-role="reaction" {{if $reaction->id == $defaultReaction->id}}data-defaultReaction{{endif}}>
										<img src='{file="$reaction->_icon" extension="core_Reaction"}' alt="{lang="reaction_title_{$reaction->id}" escape="true"}" data-ipsTooltip title="{lang="reaction_title_{$reaction->id}" escape="true"}">
										<span class='ipsReact_name'>{lang="reaction_title_{$reaction->id}"}</span>
									</a>
								</li>
							{{endforeach}}
							<li>
									<a href='{$content->url( 'unreact' )->csrf()}' class='ipsReact_unreact {{if $content->reacted() == FALSE}}ipsHide{{endif}}' data-action='unreact' data-ipsTooltip title='{lang="reaction_remove"}'>&times;</a>
							</li>
						</ul>
					{{endif}}
	
					<span class='ipsReact_button {{if $content->reacted() !== FALSE}}ipsReact_reacted{{endif}}' data-action='reactLaunch'>
						<a href='{$content->url( 'react' )->setQueryString( 'reaction', $reactButton->id )->csrf()}' class='ipsReact_reaction' data-role="reaction" {{if $reactButton->id == $defaultReaction->id}}data-defaultReaction{{endif}}>
							<img src='{file="$reactButton->_icon" extension="core_Reaction"}' alt="{lang="reaction_title_{$reactButton->id}" escape="true"}" data-ipsTooltip title="{lang="reaction_title_{$reactButton->id}" escape="true"}">
							<span class='ipsReact_name'>{lang="reaction_title_{$reactButton->id}"}</span>
						</a>
					</span>
				</div>
			{{endif}}
		{{endif}}
	{{endif}}
</div>

 

Thanks again for trying to help me!

Link to comment
Share on other sites

  • 2 weeks later...
49 minutes ago, S!r.ReaDy said:

In 4.4 is called 

<a href='{$content->url( 'unreact' )->csrf()}


<a href='{$content->url( 'unreact' )->csrf()}

 Comment / delete in both files  the part with the "unreact" and you good to go.

It worked, but if I click on the rep image, I still can remove my own like.

Link to comment
Share on other sites

15 minutes ago, S!r.ReaDy said:

Then you didnt remove completly. It should remove the X sign in the corner that once clicked you remove the like. Check again.

Yep, it removes the X sign but if I click in the rep img, it still removes my like

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...