function widget($args, $instance)
 {
     extract($args, EXTR_SKIP);
     $title = apply_filters('widget_title', $instance['title']);
     echo $args['before_widget'];
     if (!empty($title)) {
         echo $args['before_title'] . $title . $args['after_title'];
     }
     echo qem_event_shortcode($instance, 'widget');
     echo $args['after_widget'];
 }
Пример #2
0
function qem_styles()
{
    if (isset($_POST['Submit']) && check_admin_referer("save_qem")) {
        $options = array('use_head', 'font', 'font-family', 'font-size', 'header-size', 'header-colour', 'width', 'widthtype', 'event_background', 'event_backgroundhex', 'date_colour', 'date_background', 'date_backgroundhex', 'month_background', 'month_backgroundhex', 'month_colour', 'use_custom', 'custom', 'date_bold', 'date_italic', 'date_border_width', 'date_border_colour', 'calender_size', 'event_border', 'icon_corners', 'event_margin', 'line_margin', 'use_dayname', 'use_dayname_inline', 'iconorder', 'cat_border', 'vanilla', 'vanillawidget', 'linktocategories', 'showuncategorised', 'showkeyabove', 'showkeybelow', 'keycaption', 'showcategory', 'showcategorycaption', 'uselabels', 'startlabel', 'finishlabel', 'catallevents', 'catalleventscaption');
        foreach ($options as $item) {
            $style[$item] = stripslashes($_POST[$item]);
            $style[$item] = filter_var($style[$item], FILTER_SANITIZE_STRING);
        }
        update_option('qem_style', $style);
        qem_create_css_file('update');
        qem_admin_notice(__('The form styles have been updated', 'quick-event-manager'));
    }
    if (isset($_POST['Reset']) && check_admin_referer("save_qem")) {
        delete_option('qem_style');
        qem_create_css_file('update');
        qem_admin_notice(__('The style settings have been reset', 'quick-event-manager'));
    }
    $style = qem_get_stored_style();
    ${$style}['font'] = 'checked';
    ${$style}['widthtype'] = 'checked';
    ${$style}['background'] = 'checked';
    ${$style}['event_background'] = 'checked';
    ${$style}['date_background'] = 'checked';
    ${$style}['month_background'] = 'checked';
    ${$style}['icon_corners'] = 'checked';
    ${$style}['iconorder'] = 'checked';
    ${$style}['calender_size'] = 'checked';
    $content = '<style>' . qem_generate_css() . '</style>
    <div class="qem-settings">
    <div class="qem-options">
    <form method="post" action="">
    <table>
    <tr>
    <td colspan="2"><h2>' . __('Event Width', 'quick-event-manager') . '</h2></td></tr>
    <tr>
    <td colspan="2"><input type="radio" name="widthtype" value="percent" ' . $percent . ' /> ' . __('100% (fill the available space)', 'quick-event-manager') . '<br />
    <input type="radio" name="widthtype" value="pixel" ' . $pixel . ' /> ' . __('Pixel (fixed)', 'quick-event-manager') . '<br />
    ' . __('Enter the max-width ', 'quick-event-manager') . ': <input type="text" style="width:4em;" label="width" name="width" value="' . $style['width'] . '" />px ' . __('(Just enter the value, no need to add \'px\')', 'quick-event-manager') . '.</td></tr>
    <tr>
    <td colspan="2"><h2>' . __('Font Options', 'quick-event-manager') . '</h2></td>
    </tr>
    <tr>
    <td colspan="2"><input type="radio" name="font" value="theme" ' . $theme . ' /> ' . __('Use your theme font styles', 'quick-event-manager') . '<br />
	<input type="radio" name="font" value="plugin" ' . $plugin . ' /> ' . __('Use Plugin font styles (enter font family and size below)', 'quick-event-manager') . '</td></tr>
    <tr>
    <td>' . __('Font Family', 'quick-event-manager') . ':</td>
    <td><input type="text" style="" label="font-family" name="font-family" value="' . $style['font-family'] . '" /></td></tr>
    <tr>
    <td>' . __('Font Size', 'quick-event-manager') . ':</td>
    <td><input type="text" style="width:4em;" label="font-size" name="font-size" value="' . $style['font-size'] . '" /><br>
    <span class="description">This is the base font size, you can set the sizes of each part of the listing in the Event Settings.</span></td></tr>
    <tr>
    <td>' . __('Header Size', 'quick-event-manager') . ':</td>
    <td><input type="text" style="width:4em;" label="header-size" name="header-size" value="' . $style['header-size'] . '" /> ' . __('This the size of the title in the event list', 'quick-event-manager') . '.</td>
    </tr>
    <tr>
    <td>' . __('Header Colour', 'quick-event-manager') . ':</td>
    <td><input type="text" class="qem-color" label="header-colour" name="header-colour" value="' . $style['header-colour'] . '" /></td>
    </tr>
    <tr>
    <td colspan="2"><h2>' . __('Calender Icon', 'quick-event-manager') . '</h2></td>
    </tr>
    <tr>
    <td>' . __('Remove styles', 'quick-event-manager') . '</td>
    <td><input type="checkbox" style="margin:0; padding: 0; border: none" name="vanilla"' . $style['vanilla'] . ' value="checked" /> ' . __('Do not style the calendar icon', 'quick-event-manager') . '</td>
    </tr>
    <tr>
    <td style="vertical-align:top;">' . __('Size', 'quick-event-manager') . '</td>
    <td>
	<input type="radio" name="calender_size" value="small" ' . $small . ' /> ' . __('Small', 'quick-event-manager') . ' (40px)<br />
	<input type="radio" name="calender_size" value="medium" ' . $medium . ' /> ' . __('Medium', 'quick-event-manager') . ' (60px)<br />
	<input type="radio" name="calender_size" value="large" ' . $large . ' /> ' . __('Large', 'quick-event-manager') . '(80px)</td>
    </tr>
    <tr>
    <td>' . __('Corners', 'quick-event-manager') . '</td>
    <td>
    <input type="radio" name="icon_corners" value="square" ' . $square . ' /> ' . __('Square', 'quick-event-manager') . '&nbsp;
    <input type="radio" name="icon_corners" value="rounded" ' . $rounded . ' /> ' . __('Rounded', 'quick-event-manager') . '</td>
    </tr>
    <tr>
    <td>' . __('Border Thickness', 'quick-event-manager') . '</td>
    <td><input type="text" style="width:2em;" label="calendar border" name="date_border_width" value="' . $style['date_border_width'] . '" /> px</td>
    </tr>
    <tr>
    <td>' . __('Border Colour', 'quick-event-manager') . ':</td>
    <td><input type="text" class="qem-color" label="calendar border" name="date_border_colour" value="' . $style['date_border_colour'] . '" /><br><span class="description">' . __('There is an option below to use category colours for the icon border', 'quick-event-manager') . '.</span></td>
    </tr>
    <tr>
    <td>' . __('Calendar Icon Order', 'quick-event-manager') . '</td>
    <td>
    <input type="radio" name="iconorder" value="default" ' . $default . ' /> ' . __('DMY', 'quick-event-manager') . '&nbsp;<input type="radio" name="iconorder" value="month" ' . $month . ' /> ' . __('MDY', 'quick-event-manager') . '&nbsp;
    <input type="radio" name="iconorder" value="year" ' . $year . ' /> ' . __('YDM', 'quick-event-manager') . '&nbsp;
    <input type="radio" name="iconorder" value="dm" ' . $dm . ' /> ' . __('DM', 'quick-event-manager') . '&nbsp;<input type="radio" name="iconorder" value="md" ' . $md . ' /> ' . __('MD', 'quick-event-manager') . '</td>
    </tr>
    <tr>
    <td>' . __('Start/Finish Labels', 'quick-event-manager') . '</td>
    <td><input type="checkbox" style="margin:0; padding: 0; border: none" name="uselabels"' . $style['uselabels'] . ' value="checked" /> ' . __('Show start/finish labels', 'quick-event-manager') . '<br>
    ' . __('Start', 'quick-event-manager') . ': <input type="text" style="width:7em;" name="startlabel" value="' . $style['startlabel'] . '" /> ' . __('Finish', 'quick-event-manager') . ': <input type="text" style="width:7em;" name="finishlabel" value="' . $style['finishlabel'] . '" /></td>
    </tr>
    <tr>
    <td>' . __('Day Name', 'quick-event-manager') . '</td>
    <td><input type="checkbox" style="margin:0; padding: 0; border: none" name="use_dayname"' . $style['use_dayname'] . ' value="checked" /> ' . __('Show day name', 'quick-event-manager') . '<br>
    <input type="checkbox" style="margin:0; padding: 0; border: none" name="use_dayname_inline"' . $style['use_dayname_inline'] . ' value="checked" /> ' . __('Show day name inline with date', 'quick-event-manager') . '</td>
    </tr>
    <tr>
    <td style="vertical-align:top;">' . __('Date Background colour', 'quick-event-manager') . '</td>
    <td>
	<input type="radio" name="date_background" value="grey" ' . $grey . ' /> ' . __('Grey', 'quick-event-manager') . '<br />
	<input type="radio" name="date_background" value="red" ' . $red . ' /> ' . __('Red', 'quick-event-manager') . '<br />
	<input type="radio" name="date_background" value="color" ' . $color . ' /> ' . __('Set your own', 'quick-event-manager') . '<br />
    <input type="text" class="qem-color" label="background" name="date_backgroundhex" value="' . $style['date_backgroundhex'] . '" /></td>
    </tr>
    <tr>
    <td>' . __('Date Text Colour', 'quick-event-manager') . '</td>
    <td><input type="text" class="qem-color" label="date colour" name="date_colour" value="' . $style['date_colour'] . '" /></td>
    </tr>
    <tr>
    <td style="vertical-align:top;">' . __('Month Background colour', 'quick-event-manager') . '</td>
    <td>
	<input type="radio" name="month_background" value="mwhite" ' . $mwhite . ' /> ' . __('White', 'quick-event-manager') . '<br />
	<input type="radio" name="month_background" value="colour" ' . $colour . ' /> ' . __('Set your own', 'quick-event-manager') . '<br />
    <input type="text" class="qem-color" name="month_backgroundhex" value="' . $style['month_backgroundhex'] . '" /></td>
    </tr>
    <tr>
    <td>' . __('Month Text Colour', 'quick-event-manager') . '</td>
    <td><input type="text" class="qem-color" label="month colour" name="month_colour" value="' . $style['month_colour'] . '" /></td>
    </tr>
    <tr>
    <td>' . __('Month Text Style', 'quick-event-manager') . '</td>
    <td><input type="checkbox" name="date_bold" value="checked" ' . $style['date_bold'] . ' /> ' . __('Bold', 'quick-event-manager') . '&nbsp;
	<input type="checkbox" name="date_italic" value="checked" ' . $style['date_italic'] . ' /> ' . __('Italic', 'quick-event-manager') . '</td>
    </tr>
	<tr>
    <td colspan="2"><h2>' . __('Event Content', 'quick-event-manager') . '</h2></td>
    </tr>
	<tr>
    <td style="vertical-align:top;">' . __('Event Border', 'quick-event-manager') . '</td>
    <td><input type="checkbox" style="margin:0; padding: 0; border: none" name="event_border"' . $style['event_border'] . ' value="checked" /> ' . __('Add a border to the event post', 'quick-event-manager') . '<br /><span class="description">' . __('Thickness and colour will be the same as the calendar icon', 'quick-event-manager') . '.</span></td>
    </tr>
    <tr>
    <td style="vertical-align:top;">' . __('Event Background Colour', 'quick-event-manager') . '</td>
    <td><input type="radio" name="event_background" value="bgwhite" ' . $bgwhite . ' /> ' . __('White', 'quick-event-manager') . '<br />
	<input type="radio" name="event_background" value="bgtheme" ' . $bgtheme . ' /> ' . __('Use theme colours', 'quick-event-manager') . '<br />
	<input type="radio" name="event_background" value="bgcolor" ' . $bgcolor . ' /> ' . __('Set your own', 'quick-event-manager') . '<br />
	<input type="text" class="qem-color" label="background" name="event_backgroundhex" value="' . $style['event_backgroundhex'] . '" /></td>
    </tr>
    <tr>
    <td style="vertical-align:top;">' . __('Margins and Padding', 'quick-event-manager') . '</td>
    <td><span class="description">' . __('Set the margins and padding of each bit using CSS shortcodes', 'quick-event-manager') . ':</span><br><input type="text" label="line margin" name="line_margin" value="' . $style['line_margin'] . '" /></td>
    </tr>
    <tr>
    <td style="vertical-align:top;">' . __('Event Margin', 'quick-event-manager') . '</td>
    <td><span class="description">' . __('Set the margin or each event using CSS shortcodes', 'quick-event-manager') . ':</span><br>
    <input type="text" label="margin" name="event_margin" value="' . $style['event_margin'] . '" /></td>
    </tr>
    <tr>
    <td colspan="2"><h2>' . __('Categories', 'quick-event-manager') . '</h2></td>
    </tr>
    <tr>
    <td width="30%">' . __('Display category key', 'quick-event-manager') . '</td>
    <td><input type="checkbox" style="margin:0; padding: 0; border: none" name="showkeyabove" ' . $style['showkeyabove'] . ' value="checked" /> ' . __('Show above event list', 'quick-event-manager') . '<br>
    <input type="checkbox" style="margin:0; padding: 0; border: none" name="showkeybelow" ' . $style['showkeybelow'] . ' value="checked" /> ' . __('Show below event list', 'quick-event-manager') . '</td>
    </tr>
    <tr>
    <td width="30%">' . __('Caption', 'quick-event-manager') . '</td>
    <td><input type="text" style="" label="text" name="keycaption" value="' . $style['keycaption'] . '" /></td>
    </tr>
    <tr>
    <td width="30%">' . __('Add link back to all events', 'quick-event-manager') . '</td>
    <td><input type="checkbox" style="margin:0; padding: 0; border: none" name="catallevents" ' . $style['catallevents'] . ' value="checked" /><br><span class="description">' . __('This uses the URL set on the', 'quick-event-manager') . ' <a href="?page=quick-event-manager/settings.php&tab=display">' . __('Event Display', 'quick-event-manager') . '</a> ' . __('page', 'quick-event-manager') . '.</span></td>
    </tr>
    <tr>
    <td width="30%">' . __('Caption', 'quick-event-manager') . '</td>
    <td><input type="text" style="" label="text" name="catalleventscaption" value="' . $style['catalleventscaption'] . '" /></td>
    </tr>
    <tr>
    <td style="vertical-align:top;">' . __('Category Colours', 'quick-event-manager') . '</td><td><input type="checkbox" style="margin:0; padding: 0; border: none" name="cat_border"' . $style['cat_border'] . ' value="checked" /> ' . __('Use category colours for the event border', 'quick-event-manager') . '<br />
    <span class="description">' . __('Options are set on the', 'quick-event-manager') . ' <a href="?page=quick-event-manager/settings.php&tab=calendar">' . __('Calendar Settings', 'quick-event-manager') . '</a> ' . __('page', 'quick-event-manager') . '.</span></td>
    </tr>
    <tr>
    <td width="30%"></td><td><input type="checkbox" style="margin:0; padding: 0; border: none" name="showcategory" ' . $style['showcategory'] . ' value="checked" /> ' . __('Show name of current category', 'quick-event-manager') . '</td>
    </tr>
    <tr>
    <td width="30%"></td>
    <td>' . __('Current category label', 'quick-event-manager') . ':<br><input type="text" style="" label="text" name="showcategorycaption" value="' . $style['showcategorycaption'] . '" /></td>
    </tr>
    <tr>
    <td>' . __('Linking', 'quick-event-manager') . '</td>
    <td><input type="checkbox" style="margin:0; padding: 0; border: none" name="linktocategories" ' . $style['linktocategories'] . ' value="checked" /> ' . __('Link keys to categories', 'quick-event-manager') . '<br>
    <input type="checkbox" style="margin:0; padding: 0; border: none" name="showuncategorised" ' . $style['showuncategorised'] . ' value="checked" /> ' . __('Show uncategorised key', 'quick-event-manager') . '</td>
    </tr>
    </table>
    <h2>' . __('Custom CSS', 'quick-event-manager') . '</h2>
    <p><input type="checkbox" style="margin:0; padding: 0; border: none" name="use_head"' . $style['use_head'] . ' value="checked" /> ' . __('Add styles to document head', 'quick-event-manager') . '. ' . __('Use this option if you are unable to create or save a stylesheet for the plugin', 'quick-event-manager') . '</p>
    <p><input type="checkbox" style="margin:0; padding: 0; border: none" name="use_custom"' . $style['use_custom'] . ' value="checked" /> ' . __('Use Custom CSS', 'quick-event-manager') . '</p>
    <p><textarea style="width:100%;height:100px;" name="custom">' . $style['custom'] . '</textarea></p>
    <p>' . __('To see all the styling use the', 'quick-event-manager') . ' <a href="plugin-editor.php?file=quick-event-manager/quick-event-manager.css">' . __('CSS editor', 'quick-event-manager') . '</a>.</p>
    <p>' . __('The main style wrapper is the <code>.qem</code> class.', 'quick-event-manager') . '</p>
    <p><input type="submit" name="Submit" class="button-primary" style="color: #FFF;" value="' . __('Save Changes', 'quick-event-manager') . '" /> <input type="submit" name="Reset" class="button-primary" style="color: #FFF;" value="' . __('Reset', 'quick-event-manager') . '" onclick="return window.confirm( \'' . __('Are you sure you want to reset the style settings?', 'quick-event-manager') . '\' );"/></p>';
    $content .= wp_nonce_field("save_qem");
    $content .= '</form>
    </div>
    </div>
    <div class="qem-options" style="float:right">
    <h2>' . __('Event List Preview', 'quick-event-manager') . '</h2>
    <p>' . __('Check the event list in your site as the Wordpress Dashboard can do funny things with styles', 'quick-event-manager') . '</p>';
    $atts = array('posts' => '3');
    $content .= qem_event_shortcode($atts, '');
    $content .= '</div>';
    echo $content;
}