/** * register widget : multiple instance * frontend instance * * @param array $args * @param array $widget_args * @return void * @since 1.0 */ function mgm_sidebar_widget_registration($args, $widget_args = 1) { global $wpdb, $user_ID, $current_user, $mgm_sidebar_widget; extract($args, EXTR_SKIP); if (is_numeric($widget_args)) { $widget_args = array('number' => $widget_args); } $widget_args = wp_parse_args($widget_args, array('number' => -1)); extract($widget_args, EXTR_SKIP); // options init $options = $mgm_sidebar_widget->register_widget; // mgm_pr($options); // check if (!isset($options[$number])) { return; } //skip widget if BUDDYPRESS is loaded if (defined('BP_VERSION')) { return; } //skip registation page: if (in_array(trailingslashit(mgm_current_url()), array(trailingslashit(mgm_get_custom_url('register'))), trailingslashit(mgm_get_custom_url('register', true)))) { return; } // skip if on transactions page: foreach (mgm_get_payment_page_query_vars() as $query_var) { // set if if ($isset_query_var = mgm_get_query_var($query_var)) { return; } } // check if (isset($_GET['method']) && preg_match('/payment_/', $_GET['method'])) { return; } // set $title = isset($options[$number]['title']) ? $options[$number]['title'] : __('Magic Members - Register', 'mgm'); $intro = isset($options[$number]['intro']) ? $options[$number]['intro'] : ''; $use_custom_fields = isset($options[$number]['use_custom_fields']) ? $options[$number]['use_custom_fields'] : true; //Issue #777 $default_subscription_pack = isset($options[$number]['default_subscription_pack']) ? $options[$number]['default_subscription_pack'] : false; // user looged in if (!$user_ID) { // if hide on custom register page $post_id = get_the_ID(); // post custom register if ($post_id > 0) { // if match if (get_permalink($post_id) == mgm_get_custom_url('register')) { return ""; } } // start actual widget echo $before_widget; if ($title) { echo $before_title . $title . $after_title; } // echo $intro; echo mgm_sidebar_user_register_form($use_custom_fields, $default_subscription_pack); echo $after_widget; } }
/** * status widget : register with wordpress * * @param void * @return void * @since 1.0 */ function mgm_sidebar_widget_status_register() { global $wp_registered_widgets, $mgm_sidebar_widget; //skip if on transactions page: foreach (mgm_get_payment_page_query_vars() as $query_var) { // set if if ($isset_quey_var = mgm_get_query_var($query_var)) { return; } } // payment if (isset($_GET['method']) && preg_match('/payment_/', $_GET['method'])) { return; } // $options[$number]['title'] if (!($options = $mgm_sidebar_widget->status_widget)) { $options = array(); } // defaults $widget_ops = array(); $control_ops = array('width' => 400, 'id_base' => 'mgm_sidebar_widget_status'); // widget name $name = __('Magic Members Status', 'mgm'); $registered = false; foreach (array_keys($options) as $o) { // Old widgets can have null values for some reason if (isset($options[$o]['title'])) { $registered = true; $id = "mgm_sidebar_widget_status-{$o}"; // register wp_register_sidebar_widget($id, $name, 'mgm_sidebar_widget_status', $widget_ops, array('number' => $o)); wp_register_widget_control($id, $name, 'mgm_sidebar_widget_status_admin', $control_ops, array('number' => $o)); } } // If there are none, we register the widget's existence with a generic template if (!$registered) { wp_register_sidebar_widget('mgm_sidebar_widget_status-1', $name, 'mgm_sidebar_widget_status', $widget_ops, array('number' => -1)); wp_register_widget_control('mgm_sidebar_widget_status-1', $name, 'mgm_sidebar_widget_status_admin', $control_ops, array('number' => -1)); } }
function mgm_parse_query() { global $wpdb; // pre process hook for parse query do_action('mgm_parse_query_pre_process'); //check file uploads: if ($file_upload = mgm_request_var('file_upload', '', true)) { // option switch ($file_upload) { case 'image': mgm_photo_file_upload(); break; } // no process further exit; } // payment process -------------------- // default $process_payments = false; // check foreach (mgm_get_payment_page_query_vars() as $query_var) { // set if if ($isset_query_var = mgm_get_query_var($query_var)) { // process $process_payments = true; break; } } // If buddy press registration page is used. issue #1085 if (!$process_payments) { $process_payments = mgm_is_bp_registration(); } // check if ($process_payments) { // payment html mgm_get_transaction_page_html(false); // exit exit; } // download flag // wp-ecommerce also uses download as slug, check if (!($download_slug = mgm_get_class('system')->get_setting('download_slug'))) { $download_slug = 'download'; } // download call if ($isset_download_slug = mgm_get_query_var($download_slug)) { // get method $code = mgm_request_var('code', '', true); // check mgm_download_file($code); // exit exit; } }