wpml-user-jobs-notification-settings.php
931 Bytes
<?php
/**
* Class WPML_Jobs_Notification_Settings
*/
class WPML_User_Jobs_Notification_Settings {
const BLOCK_NEW_NOTIFICATION_FIELD = 'wpml_block_new_email_notifications';
public function add_hooks() {
add_action( 'personal_options_update', array( $this, 'save_new_job_notifications_setting' ) );
add_action( 'edit_user_profile_update', array( $this, 'save_new_job_notifications_setting' ) );
}
/**
* @param int $user_id
*/
public function save_new_job_notifications_setting( $user_id ) {
$val = 1;
if ( array_key_exists( self::BLOCK_NEW_NOTIFICATION_FIELD, $_POST ) ) {
$val = filter_var( $_POST[ self::BLOCK_NEW_NOTIFICATION_FIELD ], FILTER_SANITIZE_NUMBER_INT );
}
update_user_meta( $user_id, self::BLOCK_NEW_NOTIFICATION_FIELD, $val );
}
public static function is_new_job_notification_enabled( $user_id ) {
return ! get_user_meta( $user_id, self::BLOCK_NEW_NOTIFICATION_FIELD, true );
}
}