function mc_generator($type) { ?> <form action="<?php echo admin_url('admin.php?page=my-calendar-help'); ?> " method="POST" id="my-calendar-generate"> <fieldset> <legend><strong><?php echo ucfirst($type); ?> </strong>: <?php _e('Shortcode Attributes', 'my-calendar'); ?> </legend> <div id="mc-generator" class="generator"> <div><input type="hidden" name="_wpnonce" value="<?php echo wp_create_nonce('my-calendar-generator'); ?> "/></div> <input type='hidden' name='shortcode' value='<?php esc_attr_e($type); ?> '/> <?php // Common Elements to all Shortcodes ?> <p><?php echo my_calendar_categories_list('select', 'admin'); ?> </p> <p> <label for="ltype"><?php _e('Location filter type:', 'my-calendar'); ?> </label> <select name="ltype" id="ltype"> <option value="" selected="selected"><?php _e('All locations', 'my-calendar'); ?> </option> <option value='event_label'><?php _e('Location Name', 'my-calendar'); ?> </option> <option value='event_city'><?php _e('City', 'my-calendar'); ?> </option> <option value='event_state'><?php _e('State', 'my-calendar'); ?> </option> <option value='event_postcode'><?php _e('Postal Code', 'my-calendar'); ?> </option> <option value='event_country'><?php _e('Country', 'my-calendar'); ?> </option> <option value='event_region'><?php _e('Region', 'my-calendar'); ?> </option> </select> </p> <p> <label for="lvalue" id='lval'><?php _e('Location filter value:', 'my-calendar'); ?> </label> <input type="text" name="lvalue" id="lvalue" aria-labelledby='lval location-info' /> </p> <p id='location-info'> <?php _e('<strong>Note:</strong> If you provide a location filter value, it must be an exact match for that information as saved with your events. (e.g. "Saint Paul" is not equivalent to "saint paul" or "St. Paul")', 'my-calendar'); ?> </p> <?php // Grab users and list them $users = my_calendar_getUsers(); $options = ''; foreach ($users as $u) { $options = '<option value="' . $u->ID . '">' . esc_html($u->display_name) . "</option>\n"; } ?> <p> <label for="author"><?php _e('Limit by Author', 'my-calendar'); ?> </label> <select name="author[]" id="author" multiple="multiple"> <option value="all"><?php _e('All authors', 'my-calendar'); ?> </option> <option value="current"><?php _e('Currently logged-in user', 'my-calendar'); ?> </option> <?php echo $options; ?> </select> </p> <p> <label for="host"><?php _e('Limit by Host', 'my-calendar'); ?> </label> <select name="host[]" id="host" multiple="multiple"> <option value="all"><?php _e('All hosts', 'my-calendar'); ?> </option> <option value="current"><?php _e('Currently logged-in user', 'my-calendar'); ?> </option> <?php echo $options; ?> </select> </p> <?php // Main shortcode only if ($type == 'main') { ?> <p> <label for="format"><?php _e('Format', 'my-calendar'); ?> </label> <select name="format" id="format"> <option value="calendar" selected="selected"><?php _e('Grid', 'my-calendar'); ?> </option> <option value="list"><?php _e('List', 'my-calendar'); ?> </option> </select> </p> <p> <label for="time"><?php _e('Time Segment', 'my-calendar'); ?> </label> <select name="time" id="time"> <option value="month" selected="selected"><?php _e('Month', 'my-calendar'); ?> </option> <option value="month+1"><?php _e('Next Month', 'my-calendar'); ?> </option> <option value="week"><?php _e('Week', 'my-calendar'); ?> </option> <option value="day"><?php _e('Day', 'my-calendar'); ?> </option> </select> </p> <p> <label for="year"><?php _e('Year', 'my-calendar'); ?> </label> <select name="year" id="year"> <option value=''><?php _e('Default', 'my-calendar'); ?> </option> <?php global $wpdb; $mcdb = $wpdb; $query = "SELECT event_begin FROM " . MY_CALENDAR_TABLE . " WHERE event_approved = 1 AND event_flagged <> 1 ORDER BY event_begin ASC LIMIT 0 , 1"; $year1 = date('Y', strtotime($mcdb->get_var($query))); $diff1 = date('Y') - $year1; $past = $diff1; $future = apply_filters('mc_jumpbox_future_years', 5, false); $fut = 1; $f = ''; $p = ''; $offset = 60 * 60 * get_option('gmt_offset'); while ($past > 0) { $p .= '<option value="'; $p .= date("Y", time() + $offset) - $past; $p .= '">'; $p .= date("Y", time() + $offset) - $past . "</option>\n"; $past = $past - 1; } while ($fut < $future) { $f .= '<option value="'; $f .= date("Y", time() + $offset) + $fut; $f .= '">'; $f .= date("Y", time() + $offset) + $fut . "</option>\n"; $fut = $fut + 1; } echo $p . '<option value="' . date("Y") . '">' . date("Y") . "</option>\n" . $f; ?> </select> </p> <p> <label for="month"><?php _e('Month', 'my-calendar'); ?> </label> <select name="month" id="month"> <option value=''><?php _e('Default', 'my-calendar'); ?> </option> <?php $months = ''; for ($i = 1; $i <= 12; $i++) { $months .= "<option value='{$i}'>" . date_i18n('F', mktime(0, 0, 0, $i, 1)) . '</option>' . "\n"; } echo $months; ?> </select> </p> <p> <label for="day"><?php _e('Day', 'my-calendar'); ?> </label> <select name="day" id="day"> <option value=''><?php _e('Default', 'my-calendar'); ?> </option> <?php $days = ''; for ($i = 1; $i <= 31; $i++) { $days .= "<option value='{$i}'>" . $i . '</option>' . "\n"; } echo $days; ?> </select> </p> <p id='navigation-info'> <?php _e("For navigational fields above and below the calendar: the defaults specified in your settings will be used if the attribute is left blank. Use <code>none</code> to hide all navigation elements.", 'my-calendar'); ?> </p> <p> <label for="above" id='labove'><?php _e('Navigation above calendar', 'my-calendar'); ?> </label> <input type="text" name="above" id="above" value="nav,toggle,jump,print,timeframe" aria-labelledby='labove navigation-info' /><br/> </p> <p> <label for="below" id='lbelow'><?php _e('Navigation below calendar', 'my-calendar'); ?> </label> <input type="text" name="below" id="below" value="key,feeds" aria-labelledby='lbelow navigation-info' /><br/> </p> <?php } if ($type == 'upcoming' || $type == 'today') { // Upcoming Events & Today's Events shortcodes ?> <p> <label for="fallback"><?php _e('Fallback Text', 'my-calendar'); ?> </label> <input type="text" name="fallback" id="fallback" value="" /> </p> <p> <label for="template"><?php _e('Template', 'my-calendar'); ?> </label> <textarea cols="40" rows="4" name="template" id="template"><?php echo htmlentities("<strong>{date}</strong>, {time}: {link_title}"); ?> </textarea> </p> <?php } if ($type == 'upcoming') { // Upcoming events only ?> <p> <label for="before"><?php _e('Events/Days Before Current Day', 'my-calendar'); ?> </label> <input type="number" name="before" id="before" value="" /> </p> <p> <label for="after"><?php _e('Events/Days After Current Day', 'my-calendar'); ?> </label> <input type="number" name="after" id="after" value="" /> </p> <p> <label for="skip"><?php _e('Events/Days to Skip', 'my-calendar'); ?> </label> <input type="number" name="skip" id="skip" value="" /> </p> <p> <label for="show_today"><?php _e('Fallback', 'my-calendar'); ?> </label> <input type="checkbox" name="show_today" id="show_today" value="yes"/> </p> <p> <label for="type"><?php _e('Type of Upcoming Events List', 'my-calendar'); ?> </label> <select name="type" id="type"> <option value="event" selected="selected"><?php _e('Events', 'my-calendar'); ?> </option> <option value="month"><?php _e('Current Month', 'my-calendar'); ?> </option> <option value="month+1"><?php _e('Next Month', 'my-calendar'); ?> </option> <option value="month+2"><?php _e('2nd Month Out', 'my-calendar'); ?> </option> <option value="month+3"><?php _e('3rd Month Out', 'my-calendar'); ?> </option> <option value="month+4"><?php _e('4th Month Out', 'my-calendar'); ?> </option> <option value="month+5"><?php _e('5th Month Out', 'my-calendar'); ?> </option> <option value="month+6"><?php _e('6th Month Out', 'my-calendar'); ?> </option> <option value="month+7"><?php _e('7th Month Out', 'my-calendar'); ?> </option> <option value="month+8"><?php _e('8th Month Out', 'my-calendar'); ?> </option> <option value="month+9"><?php _e('9th Month Out', 'my-calendar'); ?> </option> <option value="month+10"><?php _e('10th Month Out', 'my-calendar'); ?> </option> <option value="month+11"><?php _e('11th Month Out', 'my-calendar'); ?> </option> <option value="month+12"><?php _e('12th Month Out', 'my-calendar'); ?> </option> <option value="year"><?php _e('Current Year', 'my-calendar'); ?> </option> <option value="days"><?php _e('Days', 'my-calendar'); ?> </option> </select> </p> <p> <label for="order"><?php _e('Event Order', 'my-calendar'); ?> </label> <select name="order" id="order"> <option value="asc" selected="selected"><?php _e('Ascending', 'my-calendar'); ?> </option> <option value="desc"><?php _e('Descending', 'my-calendar'); ?> </option> </select> </p> <?php } ?> </div> </fieldset> <p> <input type="submit" class="button-primary" name="generator" value="<?php _e('Generate Shortcode', 'my-calendar'); ?> "/> </p> </form><?php }
function mc_filters($args) { $fields = explode(',', $args); $return = false; $current_url = mc_get_current_url(); $form = "\n\t<div id='mc_filters'>\n\t\t<form action='" . $current_url . "' method='get'>\n"; $qsa = array(); parse_str($_SERVER['QUERY_STRING'], $qsa); if (!isset($_GET['cid'])) { $form .= '<input type="hidden" name="cid" value="all" />'; } foreach ($qsa as $name => $argument) { $name = esc_attr(strip_tags($name)); $argument = esc_attr(strip_tags($argument)); if ($name == 'access' || $name == 'mcat' || $name == 'ltype' || $name == 'lvalue' && in_array($name, $args)) { } else { $form .= ' <input type="hidden" name="' . $name . '" value="' . $argument . '" />' . "\n"; } } foreach ($fields as $show) { $show = trim($show); switch ($show) { case 'categories': $form .= my_calendar_categories_list('form', 'public', 'group'); $return = true; break; case 'locations': $form .= my_calendar_locations_list('form', 'saved', 'name', 'group'); $return = true; break; case 'access': $form .= mc_access_list('form', 'group'); $return = true; break; } } $form .= "<p><input type='submit' value='" . esc_attr(__('Filter Events', 'my-calendar')) . "' /></p>\n\t</form></div>"; if ($return) { return $form; } }
function my_calendar_categories($atts) { extract(shortcode_atts(array('show' => 'list'), $atts, 'my_calendar_categories')); return my_calendar_categories_list($show); }
function mc_generator($type) { ?> <form action="<?php echo admin_url('admin.php?page=my-calendar-help'); ?> " method="POST" id="my-calendar-generate"> <fieldset> <legend><strong><?php echo ucfirst($type); ?> </strong>: <?php _e('Shortcode Attributes', 'my-calendar'); ?> </legend> <div id="mc-generator" class="generator"> <input type='hidden' name='shortcode' value='<?php echo $type; ?> '/> <?php // Common Elements to all Shortcodes ?> <p><?php echo my_calendar_categories_list('select', 'admin'); ?> </p> <p> <label for="ltype"><?php _e('Location filter type:', 'my-calendar'); ?> </label> <select name="ltype" id="ltype"> <option value="" selected="selected"><?php _e('All locations', 'my-calendar'); ?> </option> <option value='event_label'><?php _e('Location Name', 'my-calendar'); ?> </option> <option value='event_city'><?php _e('City', 'my-calendar'); ?> </option> <option value='event_state'><?php _e('State', 'my-calendar'); ?> </option> <option value='event_postcode'><?php _e('Postal Code', 'my-calendar'); ?> </option> <option value='event_country'><?php _e('Country', 'my-calendar'); ?> </option> <option value='event_region'><?php _e('Region', 'my-calendar'); ?> </option> </select> </p> <p> <label for="lvalue" id='lval'><?php _e('Location filter value:', 'my-calendar'); ?> </label> <input type="text" name="lvalue" id="lvalue" aria-labelledby='lval location-info'/> </p> <p id='location-info'> <?php _e('<strong>Note:</strong> If you provide a location filter value, it must be an exact match for that information as saved with your events. (e.g. "Saint Paul" is not equivalent to "saint paul" or "St. Paul")', 'my-calendar'); ?> </p> <?php // Grab users and list them $users = my_calendar_getUsers(); $options = ''; foreach ($users as $u) { $options = '<option value="' . $u->ID . '">' . $u->display_name . "</option>\n"; } ?> <p> <label for="author"><?php _e('Limit by Author', 'my-calendar'); ?> </label> <select name="author[]" id="author" multiple="multiple"> <option value="all"><?php _e('All authors', 'my-calendar'); ?> </option> <option value="current"><?php _e('Currently logged-in user', 'my-calendar'); ?> </option> <?php echo $options; ?> </select> </p> <p> <label for="host"><?php _e('Limit by Host', 'my-calendar'); ?> </label> <select name="host[]" id="host" multiple="multiple"> <option value="all"><?php _e('All hosts', 'my-calendar'); ?> </option> <option value="current"><?php _e('Currently logged-in user', 'my-calendar'); ?> </option> <?php echo $options; ?> </select> </p> <?php // Main shortcode only if ($type == 'main') { ?> <p> <label for="format"><?php _e('Format', 'my-calendar'); ?> </label> <select name="format" id="format"> <option value="calendar" selected="selected"><?php _e('Grid', 'my-calendar'); ?> </option> <option value="list"><?php _e('List', 'my-calendar'); ?> </option> </select> </p> <p> <label for="time"><?php _e('Time Segment', 'my-calendar'); ?> </label> <select name="time" id="time"> <option value="month" selected="selected"><?php _e('Month', 'my-calendar'); ?> </option> <option value="month+1"><?php _e('Next Month', 'my-calendar'); ?> </option> <option value="week"><?php _e('Week', 'my-calendar'); ?> </option> <option value="day"><?php _e('Day', 'my-calendar'); ?> </option> </select> </p> <p id='navigation-info'> <?php _e("For navigational fields above and below the calendar: the defaults specified in your settings will be used if the attribute is left blank. Use <code>none</code> to hide all navigation elements.", 'my-calendar'); ?> </p> <p> <label for="above" id='labove'><?php _e('Navigation above calendar', 'my-calendar'); ?> </label> <input type="text" name="above" id="above" value="nav,toggle,jump,print,timeframe" aria-labelledby='labove navigation-info'/><br/> </p> <p> <label for="below" id='lbelow'><?php _e('Navigation below calendar', 'my-calendar'); ?> </label> <input type="text" name="below" id="below" value="key,feeds" aria-labelledby='lbelow navigation-info'/><br/> </p> <?php } if ($type == 'upcoming' || $type == 'today') { // Upcoming Events & Today's Events shortcodes ?> <p> <label for="fallback"><?php _e('Fallback Text', 'my-calendar'); ?> </label> <input type="text" name="fallback" id="fallback" value=""/> </p> <p> <label for="template"><?php _e('Template', 'my-calendar'); ?> </label> <textarea cols="40" rows="4" name="template" id="template"><?php echo htmlentities("<strong>{date}</strong>, {time}: {link_title}"); ?> </textarea> </p> <?php } if ($type == 'upcoming') { // Upcoming events only ?> <p> <label for="before"><?php _e('Events/Days Before Current Day', 'my-calendar'); ?> </label> <input type="number" name="before" id="before" value=""/> </p> <p> <label for="after"><?php _e('Events/Days After Current Day', 'my-calendar'); ?> </label> <input type="number" name="after" id="after" value=""/> </p> <p> <label for="skip"><?php _e('Events/Days to Skip', 'my-calendar'); ?> </label> <input type="number" name="skip" id="skip" value=""/> </p> <p> <label for="show_today"><?php _e('Fallback', 'my-calendar'); ?> </label> <input type="checkbox" name="show_today" id="show_today" value="yes"/> </p> <p> <label for="type"><?php _e('Type of Upcoming Events List', 'my-calendar'); ?> </label> <select name="type" id="type"> <option value="event" selected="selected"><?php _e('Events', 'my-calendar'); ?> </option> <option value="month"><?php _e('Current Month', 'my-calendar'); ?> </option> <option value="month+1"><?php _e('Next Month', 'my-calendar'); ?> </option> <option value="month+2"><?php _e('2nd Month Out', 'my-calendar'); ?> </option> <option value="month+3"><?php _e('3rd Month Out', 'my-calendar'); ?> </option> <option value="month+4"><?php _e('4th Month Out', 'my-calendar'); ?> </option> <option value="month+5"><?php _e('5th Month Out', 'my-calendar'); ?> </option> <option value="month+6"><?php _e('6th Month Out', 'my-calendar'); ?> </option> <option value="month+7"><?php _e('7th Month Out', 'my-calendar'); ?> </option> <option value="month+8"><?php _e('8th Month Out', 'my-calendar'); ?> </option> <option value="month+9"><?php _e('9th Month Out', 'my-calendar'); ?> </option> <option value="month+10"><?php _e('10th Month Out', 'my-calendar'); ?> </option> <option value="month+11"><?php _e('11th Month Out', 'my-calendar'); ?> </option> <option value="month+12"><?php _e('12th Month Out', 'my-calendar'); ?> </option> <option value="year"><?php _e('Current Year', 'my-calendar'); ?> </option> <option value="days"><?php _e('Days', 'my-calendar'); ?> </option> </select> </p> <p> <label for="order"><?php _e('Event Order', 'my-calendar'); ?> </label> <select name="order" id="order"> <option value="asc" selected="selected"><?php _e('Ascending', 'my-calendar'); ?> </option> <option value="desc"><?php _e('Descending', 'my-calendar'); ?> </option> </select> </p> <?php } ?> </div> </fieldset> <p> <input type="submit" class="button-primary" name="generator" value="<?php _e('Generate Shortcode', 'my-calendar'); ?> "/> </p> </form><?php }