/** * Renders Bank Transfer Payment Form * * If user will select Bank Transfer as a payment method, this function will render * payment instructions. * * It is executed in third step in [adverts_add] shortcode. * * @param array $data Payment data * @return array */ function adext_bank_transfer_render($data) { $price = $data["price"]; $payment_id = $data["payment_id"]; $atts = array("class" => "adverts-success"); $repl = array("{total}" => adverts_price($price), "{order_number}" => str_pad($payment_id, 6, "0", STR_PAD_LEFT)); $html = str_replace(array_keys($repl), array_values($repl), adverts_config("bank_transfer.custom_text")); $html = apply_filters("adext_bank_transfer_custom_text", $html, $data); return array("result" => 1, "html" => Adverts_Html::build("div", $atts, wpautop($html)), "execute" => null, "execute_id" => ""); }
/** * Form radio input(s) renderer * * Prints (to browser) HTML for <input type="radio" /> input * * $field params: * - name: string * - value: mixed (scalar or array) * - options: array (for example array(array("value"=>1, "text"=>"title")) ) * * @param array $field * @since 0.1 * @return void */ function adverts_field_radio($field) { $opts = ""; $i = 1; if (!isset($field["value"])) { $value = null; } else { $value = $field["value"]; } foreach ($field["options"] as $opt) { $checkbox = new Adverts_Html("input", array("type" => "radio", "name" => $field["name"], "id" => $field["name"] . '_' . $i, "value" => $opt["value"], "checked" => $opt["value"] == $value ? "checked" : null)); $label = new Adverts_Html("label", array("for" => $field["name"] . '_' . $i), $checkbox->render() . ' ' . $opt["text"]); $opts .= "<div>" . $label->render() . "</div>"; $i++; } echo Adverts_Html::build("div", array("class" => "adverts-form-input-group"), $opts); }
/** * Front-end display of widget. * * @see WP_Widget::widget() * * @param array $args Widget arguments. * @param array $instance Saved values from database. */ function widget($args, $instance) { global $term; $instance = wp_parse_args((array) $instance, $this->defaults); $home_url = null; $child_of = 0; $parent_id = 0; if ($instance["top_only"]) { $current = false; } else { $current = get_term_by('slug', $term, 'advert_category'); } if ($current !== false) { $child_of = $current->term_id; $parent_id = $current->parent; } include_once ADVERTS_PATH . '/includes/class-html.php'; if ($parent_id) { $parent = get_term_by('term_id', $parent_id, 'advert_category'); $link = get_term_link($parent); $home_url = Adverts_Html::build("a", array("href" => $link, 'title' => $parent->name), sprintf(__("Go Up (%s)", "adverts"), $parent->name)); } else { if ($current !== false) { $home_url = Adverts_Html::build("a", array("href" => site_url()), __("Go Up (Home)", "adverts")); } } extract($args, EXTR_SKIP); $terms = get_terms('advert_category', array('hide_empty' => (int) $instance['hide_empty'], 'parent' => $child_of)); wp_enqueue_style('adverts-frontend'); wp_enqueue_style('adverts-icons'); echo $before_widget; $title = empty($instance['title']) ? ' ' : apply_filters('widget_title', $instance['title']); if (!empty($title)) { echo $before_title . $title . $after_title; } // WIDGET CODE GOES HERE ?> <div class="wpjb adverts-widget adverts-widget-categories"> <div class="adverts-grid adverts-grid-compact"> <?php if ($home_url) { ?> <div class="adverts-grid-row"> <div class="adverts-col-100"> <span class="adverts-widget-grid-link"> <em><?php echo $home_url; ?> </em> <span class="adverts-icon-up-open" style="vertical-align: middle"></span> </span> </div> </div> <?php } ?> <?php if (!empty($terms)) { ?> <?php foreach ($terms as $term_item) { ?> <?php $icon = adverts_taxonomy_get("advert_category", $term_item->term_id, "advert_category_icon", "folder"); ?> <div class="adverts-grid-row"> <div class="adverts-col-100"> <span class="adverts-widget-grid-link <?php echo "adverts-icon-" . $icon; ?> "> <a href="<?php esc_attr_e(get_term_link($term_item)); ?> "><?php esc_html_e($term_item->name); ?> </a> <?php if ($instance['show_count']) { ?> (<?php echo adverts_category_post_count($term_item); ?> ) <?php } ?> </span> </div> </div> <?php } ?> <?php } else { ?> <div class="adverts-grid-row"> <div class="adverts-col-100"> <span><?php _e("No categories found.", "adverts"); ?> </span> </div> </div> <?php } ?> </div> </div> <?php echo $after_widget; }