can_share = true;
$this->can_refresh = true;
if ( isset( $args['pub_id'] ) ) {
$this->pub_id = $args['pub_id'];
$embedding = isset( $args['embedding'] ) && true === $args['embedding'];
$wpda_data_tables = new WPDA_Data_Tables();
$this->pub_content = $wpda_data_tables->show(
$this->pub_id,
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
true,
$embedding
);
$wpda_publication = WPDA_Publisher_Model::get_publication( $this->pub_id );
$this->table_name = $wpda_publication['0']['pub_table_name'];
try {
$json = json_decode( $wpda_publication['0']['pub_table_options_advanced'] );
if ( isset( $json->wpda_searchbox ) && ('header' === $json->wpda_searchbox || 'both' === $json->wpda_searchbox) ) {
$this->search_header = true;
}
} catch ( \Exception $e ) {
$this->search_header = false;
}
}
}
public function do_shortcode( $widget ) {
// Not implemented (use Data Tables short code)
}
public function do_embed( $widget, $target_element ) {
}
protected function js( $is_backend = true ) {
?>
search_header ? "post_publication_widget('{$this->table_name}', '{$this->pub_id}');" : '' );
$post_content = "\n\t\t\t\t
\n\t\t\t\t\t{$this->pub_content}\n\t\t\t\t
\n\t\t\t\t\n\t\t\t";
echo $post_content;
// phpcs:ignore WordPress.Security.EscapeOutput
return ob_get_clean();
}
public static function widget() {
$panel_name = ( isset( $_REQUEST['wpda_panel_name'] ) ? sanitize_text_field( wp_unslash( $_REQUEST['wpda_panel_name'] ) ) : '' );
// input var okay.;
$panel_pub_id = ( isset( $_REQUEST['wpda_panel_pub_id'] ) ? sanitize_text_field( wp_unslash( $_REQUEST['wpda_panel_pub_id'] ) ) : '' );
// input var okay.;
$panel_column = ( isset( $_REQUEST['wpda_panel_column'] ) ? sanitize_text_field( wp_unslash( $_REQUEST['wpda_panel_column'] ) ) : '1' );
// input var okay.;
$column_position = ( isset( $_REQUEST['wpda_column_position'] ) ? sanitize_text_field( wp_unslash( $_REQUEST['wpda_column_position'] ) ) : 'prepend' );
// input var okay.;
$widget_sequence_nr = ( isset( $_REQUEST['wpda_widget_sequence_nr'] ) ? sanitize_text_field( wp_unslash( $_REQUEST['wpda_widget_sequence_nr'] ) ) : '1' );
// input var okay.;
$wdg = new WPDA_Widget_Publication(array(
'name' => $panel_name,
'pub_id' => $panel_pub_id,
'column' => $panel_column,
'position' => $column_position,
'widget_id' => $widget_sequence_nr,
));
WPDA::sent_header( 'text/html; charset=UTF-8' );
echo $wdg->container();
// phpcs:ignore WordPress.Security.EscapeOutput
wp_die();
}
public static function refresh() {
echo static::msg( 'ERROR', 'Method not available for this panel type' );
// phpcs:ignore WordPress.Security.EscapeOutput
wp_die();
}
}