Skip to content

Commit

Permalink
Allow returning raw URL for entry approval and search clear links
Browse files Browse the repository at this point in the history
  • Loading branch information
mrcasual committed Apr 29, 2024
1 parent 225a797 commit fa45dce
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 9 deletions.
9 changes: 7 additions & 2 deletions includes/class-gravityview-entry-approval-merge-tags.php
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,7 @@ protected function replace_merge_tag( $matches = array(), $text = '', $form = ar
'text' => $approval_link_text,
'form_id' => (int) $form['id'],
'action' => $action,
'format' => 'html',
'atts' => []
];

Expand All @@ -243,14 +244,18 @@ protected function replace_merge_tag( $matches = array(), $text = '', $form = ar
*
* @since TBD
*
* @param array{url: string, text: string, form_id: int, action: string, atts: array} $approval_link_params
* @param array{url: string, text: string, form_id: int, action: string, format: string, atts: array} $approval_link_params
*/
$approval_link_params = wp_parse_args(
apply_filters( 'gk/gravityview/entry/approval-link/params', $approval_link_params ),
$approval_link_params
);

$approval_link = gravityview_get_link( esc_html( $approval_link_params['url'] ), esc_html( $approval_link_params['text'] ), $approval_link_params['atts'] );
if ( 'text' === ( $approval_link_params['format'] ?? '' ) ) {
$approval_link = $approval_link_params['url'];
} else {
$approval_link = gravityview_get_link( esc_html( $approval_link_params['url'] ), esc_html( $approval_link_params['text'] ), $approval_link_params['atts'] );
}

$text = str_replace( $full_tag, $approval_link, $text );
}
Expand Down
19 changes: 12 additions & 7 deletions includes/widgets/search-widget/class-search-widget.php
Original file line number Diff line number Diff line change
Expand Up @@ -2146,30 +2146,35 @@ public static function the_clear_search_button() {
$gravityview_view = GravityView_View::getInstance();

if ( $gravityview_view->search_clear ) {

$url = strtok( add_query_arg( array() ), '?' );

$clear_button_params = [
'url' => $url,
'text' => esc_html__( 'Clear', 'gk-gravityview' ),
'atts' => [ 'class' => 'button gv-search-clear'],
'url' => $url,
'text' => esc_html__( 'Clear', 'gk-gravityview' ),
'view_id' => $gravityview_view->getViewId(),
'format' => 'html',
'atts' => [ 'class' => 'button gv-search-clear' ],
];

/**
* Modifies search widget's Clear button parameters.
*
* @filter `gravityview/widget/search/clear-button/params`
*
* @since 2.21
* @since 2.21
*
* @param array{url: string, text: string, atts: array} $clear_button_params
* @param array{url: string, text: string, view_id: int, atts: array} $clear_button_params
*/
$clear_button_params = wp_parse_args(
apply_filters( 'gk/gravityview/widget/search/clear-button/params', $clear_button_params ),
$clear_button_params
);

echo gravityview_get_link( $clear_button_params['url'], $clear_button_params['text'], $clear_button_params['atts'] );
if ( 'text' === ( $clear_button_params['format'] ?? '' ) ) {
echo $clear_button_params['url'];
} else {
echo gravityview_get_link( $clear_button_params['url'], $clear_button_params['text'], $clear_button_params['atts'] );
}
}
}

Expand Down

0 comments on commit fa45dce

Please sign in to comment.