Current Path: > home > codekrsu > > ameliagraphics.com > > wp-content > plugins > wp-user-frontend > includes > Admin
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
Forms | Directory | - | - | |
template-parts | Directory | - | - | |
views | Directory | - | - | |
Admin_Installer.php | File | 7984 bytes | January 02 2024 16:35:50. | |
Admin_Settings.php | File | 6505 bytes | February 13 2024 11:27:44. | |
Admin_Subscription.php | File | 80836 bytes | July 15 2025 12:13:42. | |
Admin_Tools.php | File | 21386 bytes | March 19 2025 14:25:12. | |
Admin_Welcome.php | File | 1710 bytes | January 02 2024 16:35:50. | |
Customizer_Options.php | File | 5026 bytes | January 02 2024 16:35:50. | |
Dashboard_Metabox.php | File | 6888 bytes | June 30 2025 16:27:10. | |
List_Table_Subscribers.php | File | 7141 bytes | April 23 2025 15:02:24. | |
List_Table_Transactions.php | File | 18871 bytes | September 12 2024 14:30:42. | |
Menu.php | File | 15789 bytes | August 04 2025 15:46:00. | |
Plugin_Upgrade_Notice.php | File | 2674 bytes | March 19 2025 14:25:12. | |
Posting.php | File | 23792 bytes | March 20 2025 14:31:02. | |
Promotion.php | File | 11527 bytes | March 19 2025 14:25:12. | |
Shortcodes_Button.php | File | 4579 bytes | February 13 2024 11:27:44. | |
Subscription.php | File | 63415 bytes | July 15 2025 12:13:42. | |
Upgrades.php | File | 4195 bytes | July 15 2025 12:13:42. |
<?php namespace WeDevs\Wpuf\Admin; use WeDevs\Wpuf\Traits\FieldableTrait; /** * Admin side posting handler * * Builds custom fields UI for post add/edit screen * and handles value saving. */ class Posting { use FieldableTrait; private static $_instance; public function __construct() { // meta boxes add_action( 'add_meta_boxes', [ $this, 'add_meta_boxes'] ); add_action( 'add_meta_boxes', [ $this, 'add_meta_box_form_select'] ); add_action( 'add_meta_boxes', [ $this, 'add_meta_box_post_lock'] ); // add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_script'] ); add_action( 'wpuf_load_post_forms', [ $this, 'enqueue_script' ] ); // add_action( 'admin_enqueue_scripts', [ $this, 'dequeue_assets' ] ); add_action( 'wpuf_load_registration_forms', [ $this, 'enqueue_script' ] ); add_action( 'save_post', [ $this, 'save_meta'], 100, 2 ); // save the custom fields add_action( 'save_post', [ $this, 'form_selection_metabox_save' ], 1, 2 ); // save edit form id add_action( 'save_post', [ $this, 'post_lock_metabox_save' ], 1, 2 ); // save post lock option } /** * Dequeue assets to avoid conflict * * @since 4.1.0 * * @return void */ public function dequeue_assets() { $post_form_page = 'wpuf-post-forms'; if ( strpos( get_current_screen()->id, $post_form_page ) === false ) { return; } wp_dequeue_style( 'wpuf-form-builder' ); if ( defined( 'WPUF_PRO_VERSION' ) && version_compare( WPUF_PRO_VERSION, '4.1', '<' ) ) { wp_dequeue_style( 'wpuf-form-builder-pro' ); } } public static function init() { if ( !self::$_instance ) { self::$_instance = new self(); } return self::$_instance; } public function enqueue_script() { $api_key = wpuf_get_option( 'gmap_api_key', 'wpuf_general' ); wp_enqueue_style( 'wpuf-admin-form-builder' ); wp_enqueue_style( 'jquery-ui' ); wp_enqueue_script( 'jquery-ui-slider' ); if( ! class_exists('ACF') ) { wp_enqueue_script( 'jquery-ui-datepicker' ); wp_enqueue_script( 'jquery-ui-timepicker', WPUF_ASSET_URI . '/js/jquery-ui-timepicker-addon.js', ['jquery-ui-datepicker'] ); } if ( !empty( $api_key ) ) { wp_enqueue_script( 'wpuf-google-maps' ); } else { add_action( 'admin_head', 'wpuf_hide_google_map_button' ); } wp_enqueue_style( 'wpuf-sweetalert2', WPUF_ASSET_URI . '/vendor/sweetalert2/sweetalert2.css', [], '11.4.8' ); wp_enqueue_script( 'wpuf-sweetalert2', WPUF_ASSET_URI . '/vendor/sweetalert2/sweetalert2.js', [], '11.4.8', true ); // wp_enqueue_script( 'wpuf-upload', WPUF_ASSET_URI . '/js/upload.js', ['jquery', 'plupload-handlers'] ); wp_enqueue_script( 'wpuf-upload' ); wp_localize_script( 'wpuf-upload', 'wpuf_upload', [ 'confirmMsg' => __( 'Are you sure?', 'wp-user-frontend' ), 'delete_it' => __( 'Yes, delete it', 'wp-user-frontend' ), 'cancel_it' => __( 'No, cancel it', 'wp-user-frontend' ), 'ajaxurl' => admin_url( 'admin-ajax.php' ), 'nonce' => wp_create_nonce( 'wpuf_nonce' ), 'plupload' => [ 'url' => admin_url( 'admin-ajax.php' ) . '?nonce=' . wp_create_nonce( 'wpuf-upload-nonce' ), 'flash_swf_url' => includes_url( 'js/plupload/plupload.flash.swf' ), 'filters' => [['title' => __( 'Allowed Files', 'wp-user-frontend' ), 'extensions' => '*']], 'multipart' => true, 'urlstream_upload' => true, 'warning' => __( 'Maximum number of files reached!', 'wp-user-frontend' ), 'size_error' => __( 'The file you have uploaded exceeds the file size limit. Please try again.', 'wp-user-frontend' ), 'type_error' => __( 'You have uploaded an incorrect file type. Please try again.', 'wp-user-frontend' ), ], ] ); } /** * Meta box for all Post form selection * * Registers a meta box in public post types to select the desired WPUF * form select box to assign a form id. * * @since 2.5.2 * * @return void */ public function add_meta_box_form_select() { $post_types = get_post_types( ['public' => true] ); foreach ( $post_types as $post_type ) { add_meta_box( 'wpuf-select-form', __( 'WPUF Form', 'wp-user-frontend' ), [$this, 'form_selection_metabox'], $post_type, 'side', 'high' ); } } /** * Form selection meta box in post types * * Registered via $this->add_meta_box_form_select() * * @since 2.5.2 * * @global object $post */ public function form_selection_metabox() { global $post; $forms = get_posts( ['post_type' => 'wpuf_forms', 'numberposts' => '-1'] ); $selected = get_post_meta( $post->ID, '_wpuf_form_id', true ); ?> <!-- <input type="hidden" name="wpuf_form_select_nonce" value="<?php // echo wp_create_nonce( plugin_basename( __FILE__ ) ); ?>" /> --> <?php wp_nonce_field( plugin_basename( __FILE__ ), 'wpuf_form_select_nonce' ); ?> <select name="wpuf_form_select"> <option value="">--</option> <?php foreach ( $forms as $form ) { ?> <option value="<?php echo esc_attr( $form->ID ); ?>"<?php selected( $selected, $form->ID ); ?>><?php echo esc_html( $form->post_title ); ?></option> <?php } ?> </select> <div> <p><a href="https://wedevs.com/docs/wp-user-frontend-pro/tutorials/purpose-of-the-wpuf-form-metabox/" target="_blank"><?php esc_html_e( 'Learn more', 'wp-user-frontend' ); ?></a></p> </div> <?php } /** * Saves the form ID from form selection meta box * * @since 2.5.2 * * @param int $post_id * @param object $post * * @return int|void */ public function form_selection_metabox_save( $post_id, $post ) { if ( !isset( $_POST['wpuf_form_select'] ) ) { return $post->ID; } $nonce = isset( $_POST['wpuf_form_select_nonce'] ) ? sanitize_key( wp_unslash( $_POST['wpuf_form_select_nonce'] ) ) : ''; if ( isset( $nonce ) && !wp_verify_nonce( $nonce , plugin_basename( __FILE__ ) ) ) { return $post->ID; } // Is the user allowed to edit the post or page? if ( !current_user_can( 'edit_post', $post->ID ) ) { return $post->ID; } $wpuf_form_select = isset( $_POST['wpuf_form_select'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_form_select'] ) ) : ''; update_post_meta( $post->ID, '_wpuf_form_id', $wpuf_form_select ); } /** * Meta box for post lock * * Registers a meta box in public post types to select the desired WPUF * form select box to assign a form id. * * @since 3.0.2 * * @return void */ public function add_meta_box_post_lock() { $post_types = get_post_types( ['public' => true] ); foreach ( $post_types as $post_type ) { add_meta_box( 'wpuf-post-lock', __( 'WPUF Lock User', 'wp-user-frontend' ), [$this, 'post_lock_metabox'], $post_type, 'side', 'high' ); } } /** * Post lock meta box in post types * * Registered via $this->add_meta_box_post_lock() * * @since 3.0.2 * * @global object $post */ public function post_lock_metabox() { global $post; $msg = ''; $edit_post_lock = get_post_meta( $post->ID, '_wpuf_lock_editing_post', true ); $edit_post_lock_time = get_post_meta( $post->ID, '_wpuf_lock_user_editing_post_time', true ); if ( empty( $edit_post_lock_time ) ) { $is_locked = false; } if ( ( !empty( $edit_post_lock_time ) && $edit_post_lock_time < time() ) || $edit_post_lock == 'yes' ) { $is_locked = true; $msg = sprintf( // translators: %s is the post ID. __( 'Post is locked, to allow user to edit this post <a id="wpuf_clear_schedule_lock" data="%s" href="#">Click here</a>', 'wp-user-frontend' ), $post->ID ); } if ( !empty( $edit_post_lock_time ) && $edit_post_lock_time > time() ) { $is_locked = false; $time = date( 'Y-m-d H:i:s', $edit_post_lock_time ); // phpcs:ignore $local_time = get_date_from_gmt( $time, get_option( 'date_format' ) . ' ' . get_option( 'time_format' ) ); $msg = sprintf( // translators: %1$s The time when the post edit access will be locked and %2$s The post ID. __( 'Frontend edit access for this post will be automatically locked after %1$s, <a id="wpuf_clear_schedule_lock" data="%2$s" href="#">Clear Lock</a> Or,', 'wp-user-frontend' ), $local_time, $post->ID ); } ?> <!-- <input type="hidden" name="wpuf_lock_editing_post_nonce" value="<?php // echo wp_create_nonce( plugin_basename( __FILE__ ) ); ?>" /> --> <?php wp_nonce_field( plugin_basename( __FILE__ ), 'wpuf_lock_editing_post_nonce' ); ?> <p> <?php echo wp_kses( $msg, [ 'a' => [ 'href' => [], 'id' => [], 'data' => [], ] ] ); ?> </p> <label> <?php if ( !$is_locked ) { ?> <input type="hidden" name="wpuf_lock_post" value="no"> <input type="checkbox" name="wpuf_lock_post" value="yes" <?php checked( $edit_post_lock, 'yes' ); ?>> <?php esc_html_e( 'Lock Post Permanently', 'wp-user-frontend' ); ?> <?php } ?> </label> <?php if ( !$is_locked ) { ?> <p style="margin-top: 10px"><?php esc_html_e( 'Lock user from editing this post from the frontend dashboard', 'wp-user-frontend' ); ?></p> <?php } ?> <?php } /** * Save the lock post option * * @since 3.0.2 * * @param int $post_id * @param object $post * * @return int|void */ public function post_lock_metabox_save( $post_id, $post ) { $edit_post_lock_time = isset( $_POST['_wpuf_lock_user_editing_post_time'] ) ? sanitize_text_field( wp_unslash( $_POST['_wpuf_lock_user_editing_post_time'] ) ) : ''; if ( !isset( $_POST['wpuf_lock_post'] ) ) { return $post->ID; } $nonce = isset( $_POST['wpuf_lock_editing_post_nonce'] ) ? sanitize_key( wp_unslash( $_POST['wpuf_lock_editing_post_nonce'] ) ) : ''; if ( isset( $nonce ) && !wp_verify_nonce( $nonce, plugin_basename( __FILE__ ) ) ) { return $post->ID; } // Is the user allowed to edit the post or page? if ( !current_user_can( 'edit_post', $post->ID ) ) { return $post->ID; } $wpuf_lock_post = isset( $_POST['wpuf_lock_post'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_lock_post'] ) ) : ''; update_post_meta( $post->ID, '_wpuf_lock_editing_post', $wpuf_lock_post ); } /** * Meta box to show WPUF Custom Fields * * Registers a meta box in public post types to show WPUF Custom Fields * * @since 2.5 * * @return void */ public function add_meta_boxes() { $post_types = get_post_types( ['public' => true] ); foreach ( $post_types as $post_type ) { add_meta_box( 'wpuf-custom-fields', __( 'WPUF Custom Fields', 'wp-user-frontend' ), [$this, 'render_form'], $post_type, 'normal', 'high' ); } } /** * function to hide form custom field * * @since 2.5 * * @return void */ public function hide_form() { ?> <style type="text/css"> #wpuf-custom-fields { display: none; } </style> <?php } /** * generate frontend form field * * @since 2.5 * * @param int $form_id * @param int $post_id * * @return void */ public function render_form( $form_id, $post_id = null ) { global $post; $form_id = get_post_meta( $post->ID, '_wpuf_form_id', true ); $form_settings = wpuf_get_form_settings( $form_id ); /** * There may be incompatibilities with WPUF metabox display when Advanced Custom Fields * is active. By default WPUF metaboxes will be hidden when ACF is detected. However, * you can override that by using the following filter. */ $hide_with_acf = class_exists( 'acf' ) ? apply_filters( 'wpuf_hide_meta_when_acf_active', true ) : false; $acf_enable = wpuf_get_option( 'wpuf_compatibility_acf', 'wpuf_general', 'yes' ); if ( 'yes' === $acf_enable && $hide_with_acf ) { $hide_with_acf = false; } // hide the metabox itself if no form ID is set if ( ! $form_id || $hide_with_acf ) { $this->hide_form(); return; } list( $post_fields, $taxonomy_fields, $custom_fields ) = $this->get_input_fields( $form_id ); if ( empty( $custom_fields ) ) { esc_html_e( 'No custom fields found.', 'wp-user-frontend' ); return; } ?> <?php wp_nonce_field( plugin_basename( __FILE__ ), 'wpuf_cf_update' ); ?> <!-- <input type="hidden" name="wpuf_cf_update" value="<?php // echo wp_create_nonce( plugin_basename( __FILE__ ) ); ?>" /> --> <input type="hidden" name="wpuf_cf_form_id" value="<?php echo esc_attr( $form_id ); ?>" /> <table class="form-table wpuf-cf-table"> <tbody> <script type="text/javascript"> if ( typeof wpuf_conditional_items === 'undefined' ) { wpuf_conditional_items = []; } if ( typeof wpuf_plupload_items === 'undefined' ) { wpuf_plupload_items = []; } if ( typeof wpuf_map_items === 'undefined' ) { wpuf_map_items = []; } </script> <?php $atts = []; wpuf()->fields->render_fields( $custom_fields, $form_id, $atts, $type = 'post', $post->ID ); // wp_nonce_field( 'wpuf_form_add' ); ?> </tbody> </table> <?php $this->scripts_styles(); } public function scripts_styles() { ?> <script type="text/javascript"> jQuery(function($){ var wpuf = { init: function() { $('.wpuf-cf-table').on('click', 'img.wpuf-clone-field', this.cloneField); $('.wpuf-cf-table').on('click', 'img.wpuf-remove-field', this.removeField); $('.wpuf-cf-table').on('click', 'a.wpuf-delete-avatar', this.deleteAvatar); }, cloneField: function(e) { e.preventDefault(); var $div = $(this).closest('tr'); var $clone = $div.clone(); // console.log($clone); //clear the inputs $clone.find('input').val(''); $clone.find(':checked').attr('checked', ''); $div.after($clone); }, removeField: function() { //check if it's the only item var $parent = $(this).closest('tr'); var items = $parent.siblings().andSelf().length; if( items > 1 ) { $parent.remove(); } }, deleteAvatar: function(e) { e.preventDefault(); var data = { action: 'wpuf_delete_avatar', user_id : $('#profile-page').find('#user_id').val(), // _wpnonce: '<?php // echo wp_create_nonce( 'wpuf_nonce' ); ?>' _wpnonce: wpuf_admin_script.nonce }; if ( confirm( $(this).data('confirm') ) ) { $.post(ajaxurl, data, function() { window.location.reload(); }); } } }; wpuf.init(); }); </script> <style type="text/css"> ul.wpuf-attachment-list li { display: inline-block; border: 1px solid #dfdfdf; padding: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; margin-right: 5px; } .wpuf-cf-table table th, .wpuf-cf-table table td{ padding-left: 0 !important; } .wpuf-cf-table .required { color: red;} .wpuf-cf-table textarea { width: 400px; } .wpuf-field-google-map { height: 300px; width: 100%; } .wpuf-form-google-map { height: 300px; width: 100%; } input[type="text"].wpuf-google-map-search { margin-top: 10px !important; border: 1px solid transparent !important; border-radius: 2px 0 0 2px !important; box-sizing: border-box !important; -moz-box-sizing: border-box !important; height: 32px !important; outline: none !important; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3) !important; background-color: #fff !important; text-overflow: ellipsis !important; width: 170px !important; font-family: Roboto !important; font-size: 15px !important; font-weight: 300 !important; padding: 0 11px 0 13px !important; display: none; } .gm-style input[type="text"].wpuf-google-map-search { display: block; } .wpuf-form-google-map-container input[type="text"].wpuf-google-map-search { width: 230px !important; } .wpuf-form-google-map-container.hide-search-box .gm-style input[type="text"].wpuf-google-map-search { display: none; } </style> <?php } /** * save post meta * * @since 2.5 * * @param object $post * * @return void */ // Save the Metabox Data public function save_meta( $post_id, $post = null ) { $wpuf_cf_update = isset( $_POST['wpuf_cf_update'] ) ? sanitize_key( wp_unslash( $_POST['wpuf_cf_update'] ) ) : ''; $wpuf_cf_form_id = isset( $_POST['wpuf_cf_form_id'] ) ? intval( $_POST['wpuf_cf_form_id'] ) : 0; if ( !isset( $post_id ) ) { return; } if ( empty( $wpuf_cf_update ) ) { return $post_id; } if ( isset( $wpuf_cf_update ) && !wp_verify_nonce( $wpuf_cf_update, plugin_basename( __FILE__ ) ) ) { return $post_id; } // Is the user allowed to edit the post or page? if ( !current_user_can( 'edit_post', $post_id ) ) { return $post_id; } list( $post_vars, $tax_vars, $meta_vars ) = self::get_input_fields( $wpuf_cf_form_id ); // WPUF_Frontend_Form_Post::update_post_meta( $meta_vars, $post_id ); $this->update_post_meta( $meta_vars, $post_id ); } /** * Clear Schedule lock * * @since 3.0.2 */ public function clear_schedule_lock() { check_ajax_referer( 'wpuf_nonce', 'nonce' ); if ( ! current_user_can( wpuf_admin_role() ) ) { wp_send_json_error( __( 'Unauthorized operation', 'wp-user-frontend' ) ); } $post_id = isset( $_POST['post_id'] ) ? intval( wp_unslash( $_POST['post_id'] ) ) : ''; if ( !empty( $post_id ) ) { update_post_meta( $post_id, '_wpuf_lock_user_editing_post_time', '' ); update_post_meta( $post_id, '_wpuf_lock_editing_post', 'no' ); } exit; } /** * Get input meta fields separated as post vars, taxonomy and meta vars * * @param int $form_id form id * * @return array */ public static function get_input_fields( $form_id ) { $form_vars = wpuf_get_form_fields( $form_id ); $ignore_lists = ['section_break', 'html']; $post_vars = $meta_vars = $taxonomy_vars = []; foreach ( $form_vars as $key => $value ) { // get column field input fields if ( $value['input_type'] == 'column_field' ) { $inner_fields = $value['inner_fields']; foreach ( $inner_fields as $column_key => $column_fields ) { if ( !empty( $column_fields ) ) { // ignore section break and HTML input type foreach ( $column_fields as $column_field_key => $column_field ) { if ( in_array( $column_field['input_type'], $ignore_lists ) ) { continue; } //separate the post and custom fields if ( isset( $column_field['is_meta'] ) && $column_field['is_meta'] == 'yes' ) { $meta_vars[] = $column_field; continue; } if ( $column_field['input_type'] == 'taxonomy' ) { // don't add "category" if ( $column_field['name'] == 'category' ) { continue; } $taxonomy_vars[] = $column_field; } else { $post_vars[] = $column_field; } } } } continue; } // ignore section break and HTML input type if ( in_array( $value['input_type'], $ignore_lists ) ) { continue; } //separate the post and custom fields if ( isset( $value['is_meta'] ) && $value['is_meta'] == 'yes' ) { $meta_vars[] = $value; continue; } if ( $value['input_type'] == 'taxonomy' ) { // don't add "category" if ( $value['name'] == 'category' ) { continue; } $taxonomy_vars[] = $value; } else { $post_vars[] = $value; } } return [$post_vars, $taxonomy_vars, $meta_vars]; } }
SILENT KILLER Tool