Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93
/home/sportsfe.../httpdocs/wp-conte.../plugins/wordpres.../includes/compatib...
File: class-wws-dokan.php
<?php
[0] Fix | Delete
defined( 'ABSPATH' ) || exit;
[1] Fix | Delete
[2] Fix | Delete
class WWS_Compatibility_Dokan {
[3] Fix | Delete
[4] Fix | Delete
public function __construct() {
[5] Fix | Delete
// Admin actions.
[6] Fix | Delete
add_action( 'admin_menu', array( $this, 'admin_menu' ) );
[7] Fix | Delete
add_action( 'admin_init', array( $this, 'register_setting' ) );
[8] Fix | Delete
[9] Fix | Delete
if ( 'yes' === $this->get_setting( 'status' ) ) {
[10] Fix | Delete
// Dokan hooks.
[11] Fix | Delete
add_action( 'dokan_product_edit_after_options', array( $this, 'edit_product_fields' ), 80, 1 );
[12] Fix | Delete
add_action( 'dokan_product_updated', array( $this, 'save_product_fields' ), 50, 2 );
[13] Fix | Delete
[14] Fix | Delete
add_action( 'wws_admin_post_metabox_notice', array( $this, 'admin_post_metabox_notice' ) );
[15] Fix | Delete
}
[16] Fix | Delete
}
[17] Fix | Delete
[18] Fix | Delete
/**
[19] Fix | Delete
* Add plugin sub page.
[20] Fix | Delete
*
[21] Fix | Delete
* @return void
[22] Fix | Delete
*/
[23] Fix | Delete
public function admin_menu() {
[24] Fix | Delete
add_submenu_page(
[25] Fix | Delete
'wc-whatsapp-support',
[26] Fix | Delete
esc_html__( 'Dokan Multivendor', 'wc-wws' ),
[27] Fix | Delete
esc_html__( 'Dokan Multivendor', 'wc-wws' ),
[28] Fix | Delete
'manage_options',
[29] Fix | Delete
'wc-whatsapp-support_dokan',
[30] Fix | Delete
array( $this, 'admin_dokan_page' )
[31] Fix | Delete
);
[32] Fix | Delete
}
[33] Fix | Delete
[34] Fix | Delete
/**
[35] Fix | Delete
* Register plugin options.
[36] Fix | Delete
*
[37] Fix | Delete
* @return void
[38] Fix | Delete
*/
[39] Fix | Delete
public function register_setting() {
[40] Fix | Delete
register_setting( 'wws_dokan_multivendor_option_group', 'wws_dokan_multivendor_settings', array( $this, 'sanitize_settings' ) );
[41] Fix | Delete
}
[42] Fix | Delete
[43] Fix | Delete
/**
[44] Fix | Delete
* Sanitize admin settings.
[45] Fix | Delete
*
[46] Fix | Delete
* @param array $input
[47] Fix | Delete
* @return array
[48] Fix | Delete
*/
[49] Fix | Delete
public function sanitize_settings( $input ) {
[50] Fix | Delete
$input['status'] = isset( $input['status'] ) ? 'yes' : 'no';
[51] Fix | Delete
[52] Fix | Delete
return $input;
[53] Fix | Delete
}
[54] Fix | Delete
[55] Fix | Delete
/**
[56] Fix | Delete
* Admin Dokan settings.
[57] Fix | Delete
*
[58] Fix | Delete
* @return void
[59] Fix | Delete
*/
[60] Fix | Delete
public function admin_dokan_page() {
[61] Fix | Delete
?>
[62] Fix | Delete
<div class="wrap">
[63] Fix | Delete
<h1><?php esc_html_e( 'WordPress WhatsApp Support For Dokan Multivendor', 'wc-wws' ); ?></h1>
[64] Fix | Delete
<?php settings_errors(); ?>
[65] Fix | Delete
<hr>
[66] Fix | Delete
[67] Fix | Delete
<form action="options.php" method="post">
[68] Fix | Delete
<?php settings_fields( 'wws_dokan_multivendor_option_group' ); ?>
[69] Fix | Delete
[70] Fix | Delete
<table class="form-table">
[71] Fix | Delete
<tbody>
[72] Fix | Delete
<tr>
[73] Fix | Delete
<th scope="row">
[74] Fix | Delete
<label for=""><?php esc_html_e( 'WhatsApp Support For Dokan', 'wc-wws' ); ?></label>
[75] Fix | Delete
</th>
[76] Fix | Delete
<td>
[77] Fix | Delete
<input
[78] Fix | Delete
type="checkbox"
[79] Fix | Delete
name="wws_dokan_multivendor_settings[status]"
[80] Fix | Delete
<?php checked( 'yes', $this->get_setting( 'status' ) ); ?> > <?php esc_html_e( 'Enable/ Disable', 'wc-wws' ); ?>
[81] Fix | Delete
<p class="description"><?php esc_html_e( 'You can enable or disable WordPress WhatsApp Support for Dokan vendors.', 'wc-wws' ); ?></p>
[82] Fix | Delete
<p class="description"><?php esc_html_e( "This feature allow vendors to add WhatsApp Number for customer support from their Dokan's edit product page.", 'wc-wws' ); ?></p>
[83] Fix | Delete
</td>
[84] Fix | Delete
</tr>
[85] Fix | Delete
</tbody>
[86] Fix | Delete
</table>
[87] Fix | Delete
<?php submit_button(); ?>
[88] Fix | Delete
</form>
[89] Fix | Delete
</div>
[90] Fix | Delete
<?php
[91] Fix | Delete
}
[92] Fix | Delete
[93] Fix | Delete
/**
[94] Fix | Delete
* Display settings on Dokan edit product page for vendors.
[95] Fix | Delete
*
[96] Fix | Delete
* @param int $post_id
[97] Fix | Delete
* @return void
[98] Fix | Delete
*/
[99] Fix | Delete
public function edit_product_fields( $post_id ) {
[100] Fix | Delete
?>
[101] Fix | Delete
<div class="dokan-other-options dokan-edit-row dokan-clearfix ">
[102] Fix | Delete
<div class="dokan-section-heading" data-togglehandler="dokan_other_options">
[103] Fix | Delete
<h2><i class="fa fa-whatsapp" aria-hidden="true"></i> <?php esc_html_e( 'WhatsApp Support', 'wc-wws' ); ?></h2>
[104] Fix | Delete
<p><?php esc_html_e( 'You can add your WhatsApp number on your product page.', 'wc-wws' ); ?></p>
[105] Fix | Delete
<a href="#" class="dokan-section-toggle">
[106] Fix | Delete
<i class="fa fa-sort-desc fa-flip-vertical" aria-hidden="true" style="margin-top: 9px;"></i>
[107] Fix | Delete
</a>
[108] Fix | Delete
<div class="dokan-clearfix"></div>
[109] Fix | Delete
</div>
[110] Fix | Delete
[111] Fix | Delete
<div class="dokan-section-content">
[112] Fix | Delete
[113] Fix | Delete
<div class="dokan-form-group">
[114] Fix | Delete
<label for="_wws_support_contact_number" class="form-label"><?php esc_html_e( 'Your WhatsApp Number', 'wc-wws' ); ?></label>
[115] Fix | Delete
<input
[116] Fix | Delete
type="number"
[117] Fix | Delete
name="_wws_support_contact_number"
[118] Fix | Delete
id="_wws_support_contact_number"
[119] Fix | Delete
class="dokan-form-control"
[120] Fix | Delete
min="0"
[121] Fix | Delete
step="1"
[122] Fix | Delete
value="<?php echo esc_attr( get_post_meta( $post_id, '_wws_support_contact_number', true ) ); ?>">
[123] Fix | Delete
<p class="help-block"><?php esc_html_e( 'Enter mobile phone number with the international country code, without + character. Example: 911234567890 for (+91) 1234567890', 'wc-wws' ); ?></p>
[124] Fix | Delete
</div>
[125] Fix | Delete
[126] Fix | Delete
</div>
[127] Fix | Delete
</div>
[128] Fix | Delete
<?php
[129] Fix | Delete
}
[130] Fix | Delete
[131] Fix | Delete
/**
[132] Fix | Delete
* Display admin metabox notice.
[133] Fix | Delete
*
[134] Fix | Delete
* @return void
[135] Fix | Delete
*/
[136] Fix | Delete
public function admin_post_metabox_notice() {
[137] Fix | Delete
?>
[138] Fix | Delete
<h4>
[139] Fix | Delete
<?php esc_html_e( 'WordPress WhatsApp Support for Dokan is enabled. These settings are managing by the vendors. Admin can also override and change settings for vendors.', 'wc-wws' ); ?><br/>
[140] Fix | Delete
<hr>
[141] Fix | Delete
</h4>
[142] Fix | Delete
<?php
[143] Fix | Delete
}
[144] Fix | Delete
[145] Fix | Delete
/**
[146] Fix | Delete
* Save settings by vendors.
[147] Fix | Delete
*
[148] Fix | Delete
* @param int $post_id
[149] Fix | Delete
* @param array $postdata
[150] Fix | Delete
* @return void
[151] Fix | Delete
*/
[152] Fix | Delete
public function save_product_fields( $post_id, $postdata ) {
[153] Fix | Delete
if ( ! empty( $postdata['_wws_support_contact_number'] ) ) {
[154] Fix | Delete
update_post_meta( $post_id, '_wws_support_contact_number', sanitize_textarea_field( $postdata['_wws_support_contact_number'] ) );
[155] Fix | Delete
} else {
[156] Fix | Delete
delete_post_meta( $post_id, '_wws_support_contact_number' );
[157] Fix | Delete
}
[158] Fix | Delete
}
[159] Fix | Delete
[160] Fix | Delete
/**
[161] Fix | Delete
* Get Dokan settings for WordPress WhatsApp Support.
[162] Fix | Delete
*
[163] Fix | Delete
* @param string $data
[164] Fix | Delete
* @return string
[165] Fix | Delete
*/
[166] Fix | Delete
private function get_setting( $data ) {
[167] Fix | Delete
if ( ! isset( $data ) ) {
[168] Fix | Delete
return false;
[169] Fix | Delete
}
[170] Fix | Delete
[171] Fix | Delete
$setting = get_option( 'wws_dokan_multivendor_settings' );
[172] Fix | Delete
[173] Fix | Delete
if ( ! isset( $setting[ $data ] ) ) {
[174] Fix | Delete
return false;
[175] Fix | Delete
}
[176] Fix | Delete
[177] Fix | Delete
return $setting[ $data ];
[178] Fix | Delete
}
[179] Fix | Delete
[180] Fix | Delete
}
[181] Fix | Delete
[182] Fix | Delete
new WWS_Compatibility_Dokan;
[183] Fix | Delete
[184] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function