Hello,
How to add new actions in the comment multimod actions menu?
You have
/**
* Actions to show in comment multi-mod
*
* @param \IPS\Member $member Member (NULL for currently logged in member)
* @return array
*/
public function commentMultimodActions( \IPS\Member $member = NULL )
{
Looks like I can use this.
\applications\forums\dev\html\front\topics\post.phtml
{{if \count( $item->commentMultimodActions() ) and !$comment->mapped('first')}}
<li class='cPost_moderator'><span class='ipsCustomInput'>
<input type="checkbox" name="multimod[{$comment->$idField}]" value="1" data-role="moderation" data-actions="{{if $comment->canSplit()}}split merge{{endif}} {{if $comment->hidden() === -1 AND $comment->canUnhide()}}unhide{{elseif $comment->hidden() === 1 AND $comment->canUnhide()}}approve{{elseif $comment->canHide()}}hide{{endif}} {{if $comment->canDelete()}}delete{{endif}}" data-state='{{if $comment->tableStates()}}{$comment->tableStates()}{{endif}}'>
<span></span>
</span></li>
{{endif}}
All actions are hardcoded.
\applications\core\dev\html\front\global\commentMultimod.phtml
<input type="hidden" name="csrfKey" value="{expression="\IPS\Session::i()->csrfKey"}" />
{{$method = $type . 'MultimodActions';}}
{{if $actions = $item->$method() and \count( $actions )}}
<div class="ipsClearfix">
<div class="ipsAreaBackground ipsPad ipsClearfix ipsJS_hide" data-role="pageActionOptions">
<div class="ipsPos_right">
<select name="modaction" data-role="moderationAction">
{{if \in_array( 'approve', $actions )}}
<option value='approve' data-icon='check-circle'>{lang="approve"}</option>
{{endif}}
{{if \in_array( 'split_merge', $actions )}}
<option value='split' data-icon='expand'>{lang="split"}</option>
<option value='merge' data-icon='level-up'>{lang="merge"}</option>
{{endif}}
{{if \in_array( 'hide', $actions ) or \in_array( 'unhide', $actions )}}
<optgroup label="{lang="hide"}" data-icon='eye' data-action='hide'>
{{if \in_array( 'hide', $actions )}}
<option value='hide'>{lang="hide"}</option>
{{endif}}
{{if \in_array( 'unhide', $actions )}}
<option value='unhide'>{lang="unhide"}</option>
{{endif}}
</optgroup>
{{endif}}
{{if \in_array( 'delete', $actions )}}
<option value='delete' data-icon='trash'>{lang="delete"}</option>
{{endif}}
</select>
<button type="submit" class="ipsButton ipsButton_alternate ipsButton_verySmall">{lang="submit"}</button>
</div>
</div>
</div>
{{endif}}
Again you only check specific actions.
In this case I should to create Template Hooks to add my actions.