get_charset_collate(); $sql = "CREATE TABLE $table_name ( id bigint(9) NOT NULL AUTO_INCREMENT, date datetime DEFAULT '0000-00-00 00:00:00' NOT NULL, userid bigint(20) NOT NULL, donationid bigint(20) NOT NULL, projectid bigint(20) NOT NULL, UNIQUE KEY id (id) ) $charset_collate;"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); } public static function add_options(){ $general_settings = self::general_section_settings(); $message_settings = self::message_section_settings(); $shortcode_settings = self::shortcode_section_settings(); add_option( 'wc_qd_general', $general_settings); add_option('wc_qd_message', $message_settings); add_option('wc_qd_shortcode',$shortcode_settings); add_option('wc_qd_anh_notices', ''); $message = __('Please Configure Any One Payment Gatway To Get Plugin Work :) ', WC_QD_TXT); $message = sprintf( __( '

Please Configure Any One Payment Gatway To Get Plugin Work :)

%s Config Gateway %s %s

', WC_QD_TXT), '','', wc_qd_remove_link('class="button" ') ); wc_qd_notice($message,'error',array('times' => 0,'wraper' => false)); } private static function general_section_settings(){ $s = array(); $s['section_id'] = 'general'; $s[WC_QD_DB_SETTINGS.'_redirect_user'] = 'checkout'; $s[WC_QD_DB_SETTINGS.'_already_exist_redirect_user'] = 'cart'; return $s; } private static function message_section_settings(){ $s = array(); $s['section_id'] = 'message'; $s[WC_QD_DB_SETTINGS.'_donation_with_other_products'] = 'Unable To Process Donation. Kindly Complete The Exist Order '; $s[WC_QD_DB_SETTINGS.'_empty_donation_msg'] = 'Please Enter A Donation Amount'; $s[WC_QD_DB_SETTINGS.'_donation_already_exist'] = 'Donation Already Exist In Cart. Kindly Complete The Existing'; $s[WC_QD_DB_SETTINGS.'_invalid_donation_msg'] = 'Invalid Donation Amount Entered [{donation_amount}]'; $s[WC_QD_DB_SETTINGS.'_min_rda_msg'] = 'Please Enter Minimum of {min_amount}.'; $s[WC_QD_DB_SETTINGS.'_max_rda_msg'] = 'Please Enter Maximum of {max_amount}.'; return $s; } private static function shortcode_section_settings(){ $s['section_id'] = 'shortcode'; $s[WC_QD_DB_SETTINGS.'_default_render_type'] = 'select'; $s[WC_QD_DB_SETTINGS.'_shortcode_show_errors'] = 'true'; $s[WC_QD_DB_SETTINGS.'_pre_selected_project'] = ''; return $s; } /** * Create Donation Product In WooCommerce * @return int donation Post id */ public static function create_simple_donation(){ $userID = 1; if(get_current_user_id()){ $userID = get_current_user_id(); } $post = array( 'post_author' => $userID, 'post_content' => 'Used For Donation', 'post_status' => 'publish', 'post_title' => 'Donation', 'post_type' => 'product', ); $post_id = wp_insert_post($post); update_post_meta($post_id, '_stock_status', 'instock'); update_post_meta($post_id, '_tax_status', 'none'); update_post_meta($post_id, '_tax_class', 'zero-rate'); update_post_meta($post_id, '_visibility', 'hidden'); update_post_meta($post_id, '_stock', ''); update_post_meta($post_id, '_virtual', 'yes'); update_post_meta($post_id, '_featured', 'no'); update_post_meta($post_id, '_manage_stock', "no" ); update_post_meta($post_id, '_sold_individually', "yes" ); update_post_meta($post_id, '_sku', 'checkout-donation'); return $post_id; } /** * Gets ALl Core Templates */ public static function get_template_list(){ $core_tempalte_list = WC_Admin_Status::scan_template_files( WC_QD_TEMPLATE ); return $core_tempalte_list; } /** * Checks For Template Version */ public static function check_template_files(){ $template_files = self::get_template_list(); $outdated = false; if(is_array($template_files)){ foreach($template_files as $file){ $theme_file = false; if ( file_exists( get_stylesheet_directory() . '/' . $file ) ) { $theme_file = get_stylesheet_directory() . '/' . $file; } elseif ( file_exists( get_stylesheet_directory() . WC_QD_THEME_TEMPLATE . $file ) ) { $theme_file = get_stylesheet_directory() . WC_QD_THEME_TEMPLATE . $file; } elseif ( file_exists( get_template_directory() . '/' . $file ) ) { $theme_file = get_template_directory() . '/' . $file; } elseif( file_exists( get_template_directory() . WC_QD_THEME_TEMPLATE . $file ) ) { $theme_file = get_template_directory() . WC_QD_THEME_TEMPLATE . $file; } if ( $theme_file !== false ) { $core_version = WC_Admin_Status::get_file_version(WC_QD_TEMPLATE.$file); $theme_version = WC_Admin_Status::get_file_version( $theme_file ); if ( $core_version && $theme_version && version_compare( $theme_version, $core_version, '<' ) ) { $outdated = true; break; } } } if ( $outdated ) { $theme = wp_get_theme(); $message = sprintf( __( '

Your theme (%s) contains outdated copies of some WooCommerce Quick Donation template files. These files may need updating to ensure they are compatible with the current version of WooCommerce Quick Donation. You can see which files are affected from the %ssystem status page%s. If in doubt, check with the author of the theme.

%sLear More About Templates%s %s

', WC_QD_TXT), esc_html( $theme['Name'] ), '','', '','', wc_qd_remove_link('class="button" ') ); wc_qd_notice($message,'error',array('times' => 0,'wraper' => false)); } } } } ?>