Esempio n. 1
0
/**
 * Display a select list for venues.
 *
 * @since	1.3
 * @param	arr		$args	See $defaults.
 * @return	str		The select list.
 */
function mdjm_venue_dropdown($args = array())
{
    $defaults = array('name' => '_mdjm_event_venue', 'id' => '', 'selected' => '', 'first_entry' => '', 'first_entry_value' => '', 'class' => '', 'required' => false, 'echo' => true);
    $args = wp_parse_args($args, $defaults);
    $args['id'] = !empty($args['id']) ? $args['id'] : $args['name'];
    $required = !empty($args['required']) ? ' required' : '';
    $output = '';
    $venues = mdjm_get_venues();
    $output .= '<select name="' . $args['name'] . '" id="' . $args['name'] . '" class="' . $args['class'] . '"' . $required . '>';
    if (!empty($args['first_entry'])) {
        $output .= '<option value="' . $args['first_entry_value'] . '">' . esc_attr($args['first_entry']) . '</option>';
    }
    if (!empty($venues)) {
        foreach ($venues as $venue) {
            $address = mdjm_get_event_venue_meta($venue->ID, 'address');
            $town = mdjm_get_event_venue_meta($venue->ID, 'town');
            $option = esc_attr($venue->post_title);
            $option .= !empty($town) ? ' (' . esc_attr($town) . ')' : '';
            $title = !empty($address) ? implode("\n", $address) : '';
            $selected = !empty($args['selected']) ? selected($args['selected'], $venue->ID, false) : '';
            $output .= '<option value="' . $venue->ID . '" title="' . $title . '"' . $selected . '>' . $option . '</option>';
        }
    } else {
        $output .= '<option value="" disabled="disabled">' . apply_filters('mdjm_no_venues', __('No venues exist', 'mobile-dj-manager')) . '</option>';
    }
    $output .= '</select>';
    if (!empty($args['echo'])) {
        echo $output;
    } else {
        return $output;
    }
}
Esempio n. 2
0
/**
 * Adds a new venue from the events screen.
 *
 * @since	1.3.7
 */
function mdjm_add_venue_ajax()
{
    $venue_id = false;
    $venue_list = '';
    $result = array();
    $venue_name = '';
    $venue_meta = array();
    foreach ($_POST as $key => $value) {
        if ($key == 'action') {
            continue;
        } elseif ($key == 'venue_name') {
            $venue_name = $value;
        } else {
            $venue_meta[$key] = strip_tags(addslashes($value));
        }
    }
    $venue_id = mdjm_add_venue($venue_name, $venue_meta);
    $venues = mdjm_get_venues();
    $venue_list .= '<option value="manual">' . __('  - Enter Manually - ', 'mobile-dj-manager') . '</option>' . "\r\n";
    $venue_list .= '<option value="client">' . __('  - Use Client Address - ', 'mobile-dj-manager') . '</option>' . "\r\n";
    if (!empty($venues)) {
        foreach ($venues as $venue) {
            $venue_list .= sprintf('<option value="%1$s"%2$s>%3$s</option>', $venue->ID, $venue->ID == $venue_id ? ' selected="selected"' : '', $venue->post_title);
        }
    }
    if (empty($venue_id)) {
        $result = array('type' => 'error', 'message' => __('Unable to add venue', 'mobile-dj-manager'));
    } else {
        $result = array('type' => 'success', 'venue_id' => $venue_id, 'venue_list' => $venue_list);
    }
    echo json_encode($result);
    die;
}
 /**
  * Renders an HTML Dropdown of all Transaction Types
  *
  * @access	public
  * @since	1.3.7
  * @param	arr		$args		See @defaults
  * @return	str		$output		Venue dropdown
  */
 public function venue_dropdown($args = array())
 {
     $defaults = array('name' => 'venue_id', 'class' => 'mdjm-venue-select', 'id' => '', 'selected' => 0, 'chosen' => false, 'placeholder' => null, 'multiple' => false, 'allow_add' => true, 'show_option_all' => false, 'show_option_none' => __(' - Select Venue - '), 'data' => array());
     $args = wp_parse_args($args, $defaults);
     if ($args['allow_add']) {
         $args['options'] = array('manual' => __('  - Enter Manually - ', 'mobile-dj-manager'), 'client' => __('  - Use Client Address - ', 'mobile-dj-manager'));
     }
     $venues = mdjm_get_venues();
     if ($venues) {
         foreach ($venues as $venue) {
             $args['options'][$venue->ID] = $venue->post_title;
         }
     }
     $output = $this->select($args);
     return $output;
 }