My Calendar - Version 1.3.8

Version Description

  • Fixed problem with CSS editing which effectively disabled CSS unless a specific choice had been made for pages to show CSS
Download this release

Release Info

Developer joedolson
Plugin Icon 128x128 My Calendar
Version 1.3.8
Comparing to
See all releases

Code changes from version 1.2.1 to 1.3.8

my-calendar-event-manager.php CHANGED
@@ -6,7 +6,6 @@ function edit_my_calendar() {
6
  ?>
7
 
8
  <?php
9
- update_option('ko_calendar_imported','false');
10
  if ( get_option('ko_calendar_imported') != 'true' ) {
11
  if (function_exists('check_calendar')) {
12
  echo "<div id='message' class='updated'>";
@@ -17,12 +16,12 @@ if ( get_option('ko_calendar_imported') != 'true' ) {
17
  <form method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-config">
18
  <div>
19
  <input type="hidden" name="import" value="true" />
20
- <input type="submit" value="Import from Calendar" name="import-calendar" class="button-primary" />
21
  </div>
22
  </form>
23
  <?php
24
  echo "<p>";
25
- _e('Calendar Import has received limited testing. Although it is possible that it could fail to import your events correctly, it should not have any impact on your existing Calendar database. If you encounter any problems, <a href="http://www.joedolson.com/contact.php">please contact me</a>!','my-calendar');
26
  echo "</p>";
27
  echo "</div>";
28
  }
@@ -77,9 +76,21 @@ if ( $action == 'add' ) {
77
  $end = !empty($_POST['event_end']) ? $_POST['event_end'] : $begin;
78
  $time = !empty($_POST['event_time']) ? $_POST['event_time'] : '';
79
  $recur = !empty($_POST['event_recur']) ? $_POST['event_recur'] : '';
80
- $repeats = !empty($_POST['event_repeats']) ? $_POST['event_repeats'] : '';
81
  $category = !empty($_POST['event_category']) ? $_POST['event_category'] : '';
82
  $linky = !empty($_POST['event_link']) ? $_POST['event_link'] : '';
 
 
 
 
 
 
 
 
 
 
 
 
83
  $event_label = !empty($_POST['event_label']) ? $_POST['event_label'] : '';
84
  $event_street = !empty($_POST['event_street']) ? $_POST['event_street'] : '';
85
  $event_street2 = !empty($_POST['event_street2']) ? $_POST['event_street2'] : '';
@@ -87,7 +98,7 @@ if ( $action == 'add' ) {
87
  $event_state = !empty($_POST['event_state']) ? $_POST['event_state'] : '';
88
  $event_postcode = !empty($_POST['event_postcode']) ? $_POST['event_postcode'] : '';
89
  $event_country = !empty($_POST['event_country']) ? $_POST['event_country'] : '';
90
-
91
  // Deal with the fools who have left magic quotes turned on
92
  if ( ini_get('magic_quotes_gpc') ) {
93
  $title = stripslashes($title);
@@ -184,7 +195,7 @@ if ( $action == 'add' ) {
184
  event_end='" . mysql_real_escape_string($end) . "',
185
  event_time='" . mysql_real_escape_string($time) . "',
186
  event_recur='" . mysql_real_escape_string($recur) . "',
187
- event_repeats='" . mysql_real_escape_string($repeats) . "',
188
  event_author=".$current_user->ID.",
189
  event_category=".mysql_real_escape_string($category).",
190
  event_link='".mysql_real_escape_string($linky)."',
@@ -197,9 +208,8 @@ if ( $action == 'add' ) {
197
  event_country='".mysql_real_escape_string($event_country)."'";
198
 
199
  $wpdb->get_results($sql);
200
-
201
  $sql = "SELECT event_id FROM " . MY_CALENDAR_TABLE . " WHERE event_title='" . mysql_real_escape_string($title) . "'"
202
- . " AND event_desc='" . mysql_real_escape_string($desc) . "' AND event_begin='" . mysql_real_escape_string($begin) . "' AND event_end='" . mysql_real_escape_string($end) . "' AND event_recur='" . mysql_real_escape_string($recur) . "' AND event_repeats='" . mysql_real_escape_string($repeats) . "' LIMIT 1";
203
  $result = $wpdb->get_results($sql);
204
 
205
  if ( empty($result) || empty($result[0]->event_id) ) {
@@ -238,9 +248,21 @@ if ( $action == 'add' ) {
238
  $end = !empty($_POST['event_end']) ? $_POST['event_end'] : $begin;
239
  $time = !empty($_POST['event_time']) ? $_POST['event_time'] : '';
240
  $recur = !empty($_POST['event_recur']) ? $_POST['event_recur'] : '';
241
- $repeats = !empty($_POST['event_repeats']) ? $_POST['event_repeats'] : '';
242
  $category = !empty($_POST['event_category']) ? $_POST['event_category'] : '';
243
  $linky = !empty($_POST['event_link']) ? $_POST['event_link'] : '';
 
 
 
 
 
 
 
 
 
 
 
 
244
  $event_label = !empty($_POST['event_label']) ? $_POST['event_label'] : '';
245
  $event_street = !empty($_POST['event_street']) ? $_POST['event_street'] : '';
246
  $event_street2 = !empty($_POST['event_street2']) ? $_POST['event_street2'] : '';
@@ -248,6 +270,7 @@ if ( $action == 'add' ) {
248
  $event_state = !empty($_POST['event_state']) ? $_POST['event_state'] : '';
249
  $event_postcode = !empty($_POST['event_postcode']) ? $_POST['event_postcode'] : '';
250
  $event_country = !empty($_POST['event_country']) ? $_POST['event_country'] : '';
 
251
  $event_author = !empty($_POST['event_author']) ? $_POST['event_author'] : '';
252
 
253
  if ( mc_can_edit_event( $event_author ) ) {
@@ -355,7 +378,7 @@ if ( $action == 'add' ) {
355
  event_end='" . mysql_real_escape_string($end) . "',
356
  event_time='" . mysql_real_escape_string($time) . "',
357
  event_recur='" . mysql_real_escape_string($recur) . "',
358
- event_repeats='" . mysql_real_escape_string($repeats) . "',
359
  event_category=".mysql_real_escape_string($category).",
360
  event_link='".mysql_real_escape_string($linky)."',
361
  event_label='".mysql_real_escape_string($event_label)."',
@@ -463,7 +486,24 @@ if ( $action == 'add' ) {
463
 
464
  <h2><?php _e('Manage Events','my-calendar'); ?></h2>
465
 
466
- <?php jd_events_display_list();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
467
  }
468
  ?>
469
  </div>
@@ -513,10 +553,10 @@ function jd_events_edit_form($mode='add', $event_id=false) {
513
  <fieldset>
514
  <legend><?php _e('Enter your Event Information','my-calendar'); ?></legend>
515
  <p>
516
- <label for="event_title"><?php _e('Event Title','my-calendar'); ?></label> <input type="text" id="event_title" name="event_title" class="input" size="40" maxlength="60" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_title); ?>" />
517
  </p>
518
  <p>
519
- <label for="event_desc"><?php _e('Event Description (<abbr title="hypertext markup language">HTML</abbr> allowed)','my-calendar'); ?></label><br /><textarea id="event_desc" name="event_desc" class="input" rows="5" cols="50"><?php if ( !empty($data) ) echo htmlspecialchars($data->event_desc); ?></textarea>
520
  </p>
521
  <p>
522
  <label for="event_category"><?php _e('Event Category','my-calendar'); ?></label>
@@ -541,7 +581,7 @@ function jd_events_edit_form($mode='add', $event_id=false) {
541
  <label for="event_link"><?php _e('Event Link (Optional)','my-calendar'); ?></label> <input type="text" id="event_link" name="event_link" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_link); ?>" />
542
  </p>
543
  <p>
544
- <label for="event_begin"><?php _e('Start Date (YYYY-MM-DD)','my-calendar'); ?></label> <input type="text" id="event_begin" name="event_begin" class="calendar_input" size="12" value="<?php if ( !empty($data) ) { echo htmlspecialchars($data->event_begin);} else {echo date("Y-m-d");} ?>" />
545
  </p>
546
  <p>
547
  <label for="event_end"><?php _e('End Date (YYYY-MM-DD) (Optional)','calendar'); ?></label> <input type="text" name="event_end" id="event_end" class="calendar_input" size="12" value="<?php if ( !empty($data) ) {echo htmlspecialchars($data->event_end);} ?>" />
@@ -553,10 +593,10 @@ function jd_events_edit_form($mode='add', $event_id=false) {
553
  if ($data->event_time == "00:00:00") {
554
  echo '';
555
  } else {
556
- echo date("H:i",strtotime(htmlspecialchars($data->event_time)));
557
  }
558
  } else {
559
- echo date("H:i",strtotime(current_time('mysql')));
560
  }
561
  ?>" /> <?php _e('Optional, set blank if your event is an all-day event or does not happen at a specific time.','my-calendar'); ?> <?php _e('Current time difference from GMT is ','my-calendar'); echo get_option('gmt_offset'); _e(' hour(s)', 'my-calendar'); ?>
562
  </p>
@@ -601,20 +641,42 @@ function jd_events_edit_form($mode='add', $event_id=false) {
601
  <p>
602
  <?php _e('All location fields are optional: <em>insufficient information may result in an inaccurate map</em>.','my-calendar'); ?>
603
  </p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
604
  <p>
605
- <label for="event_label"><?php _e('Name of Location (e.g. <em>Joe\'s Bar and Grill</em>)','my-calendar'); ?></label> <input type="text" id="event_label" name="event_label" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_label); ?>" />
606
  </p>
607
  <p>
608
- <label for="event_street"><?php _e('Street Address','my-calendar'); ?></label> <input type="text" id="event_street" name="event_street" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_street); ?>" />
609
  </p>
610
  <p>
611
- <label for="event_street2"><?php _e('Street Address (2)','my-calendar'); ?></label> <input type="text" id="event_street2" name="event_street2" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_street2); ?>" />
612
  </p>
613
  <p>
614
- <label for="event_city"><?php _e('City','my-calendar'); ?></label> <input type="text" id="event_city" name="event_city" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_city); ?>" /> <label for="event_state"><?php _e('State/Province','my-calendar'); ?></label> <input type="text" id="event_state" name="event_state" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_state); ?>" /> <label for="event_postcode"><?php _e('Postal Code','my-calendar'); ?></label> <input type="text" id="event_postcode" name="event_postcode" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_postcode); ?>" />
615
  </p>
616
  <p>
617
- <label for="event_country"><?php _e('Country','my-calendar'); ?></label> <input type="text" id="event_country" name="event_country" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_country); ?>" />
618
  </p>
619
  </fieldset>
620
  <?php } ?>
@@ -630,25 +692,61 @@ function jd_events_edit_form($mode='add', $event_id=false) {
630
  <?php
631
  }
632
  // Used on the manage events admin page to display a list of events
633
- function jd_events_display_list() {
634
  global $wpdb;
635
-
636
- $events = $wpdb->get_results("SELECT * FROM " . MY_CALENDAR_TABLE . " ORDER BY event_begin DESC");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
637
 
638
  if ( !empty($events) ) {
639
  ?>
640
  <table class="widefat page fixed" id="my-calendar-admin-table" summary="Table of Calendar Events">
641
  <thead>
642
  <tr>
643
- <th class="manage-column n4" scope="col"><?php _e('ID','my-calendar') ?></th>
644
- <th class="manage-column" scope="col"><?php _e('Title','my-calendar') ?></th>
645
- <th class="manage-column n8" scope="col"><?php _e('Description','my-calendar') ?></th>
646
- <th class="manage-column" scope="col"><?php _e('Start Date','my-calendar') ?></th>
647
  <?php /* <th class="manage-column" scope="col"><?php _e('End Date','my-calendar') ?></th> */ ?>
648
  <th class="manage-column n6" scope="col"><?php _e('Recurs','my-calendar') ?></th>
649
  <th class="manage-column n6" scope="col"><?php _e('Repeats','my-calendar') ?></th>
650
- <th class="manage-column" scope="col"><?php _e('Author','my-calendar') ?></th>
651
- <th class="manage-column" scope="col"><?php _e('Category','my-calendar') ?></th>
652
  <th class="manage-column n7" scope="col"><?php _e('Edit / Delete','my-calendar') ?></th>
653
  </tr>
654
  </thead>
@@ -660,8 +758,8 @@ function jd_events_display_list() {
660
  ?>
661
  <tr class="<?php echo $class; ?>">
662
  <th scope="row"><?php echo $event->event_id; ?></th>
663
- <td><?php echo $event->event_title; ?></td>
664
- <td><?php echo $event->event_desc; ?></td>
665
  <td><?php echo $event->event_begin; ?></td>
666
  <?php /* <td><?php echo $event->event_end; ?></td> */ ?>
667
  <td>
@@ -688,7 +786,7 @@ function jd_events_display_list() {
688
  $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".$event->event_category;
689
  $this_cat = $wpdb->get_row($sql);
690
  ?>
691
- <td style="background-color:<?php echo $this_cat->category_color;?>;"><?php echo $this_cat->category_name; ?></td>
692
  <?php unset($this_cat); ?>
693
  <td>
694
  <?php if ( mc_can_edit_event( $event->event_author ) ) { ?>
6
  ?>
7
 
8
  <?php
 
9
  if ( get_option('ko_calendar_imported') != 'true' ) {
10
  if (function_exists('check_calendar')) {
11
  echo "<div id='message' class='updated'>";
16
  <form method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-config">
17
  <div>
18
  <input type="hidden" name="import" value="true" />
19
+ <input type="submit" value="<?php _e('Import from Calendar','my-calendar'); ?>" name="import-calendar" class="button-primary" />
20
  </div>
21
  </form>
22
  <?php
23
  echo "<p>";
24
+ _e('Although it is possible that this import could fail to import your events correctly, it should not have any impact on your existing Calendar database. If you encounter any problems, <a href="http://www.joedolson.com/contact.php">please contact me</a>!','my-calendar');
25
  echo "</p>";
26
  echo "</div>";
27
  }
76
  $end = !empty($_POST['event_end']) ? $_POST['event_end'] : $begin;
77
  $time = !empty($_POST['event_time']) ? $_POST['event_time'] : '';
78
  $recur = !empty($_POST['event_recur']) ? $_POST['event_recur'] : '';
79
+ $repeats = !empty($_POST['event_repeats']) ? $_POST['event_repeats'] : 0;
80
  $category = !empty($_POST['event_category']) ? $_POST['event_category'] : '';
81
  $linky = !empty($_POST['event_link']) ? $_POST['event_link'] : '';
82
+ $event_preset = !empty($_POST['event_preset']) ? $_POST['event_preset'] : '';
83
+ if ($event_preset != 'none') {
84
+ $sql = "SELECT * FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id = $event_preset";
85
+ $location = $wpdb->get_row($sql);
86
+ $event_label = $location->location_label;
87
+ $event_street = $location->location_street;
88
+ $event_street2 = $location->location_street2;
89
+ $event_city = $location->location_city;
90
+ $event_state = $location->location_state;
91
+ $event_postcode = $location->location_postcode;
92
+ $event_country = $location->location_country;
93
+ } else {
94
  $event_label = !empty($_POST['event_label']) ? $_POST['event_label'] : '';
95
  $event_street = !empty($_POST['event_street']) ? $_POST['event_street'] : '';
96
  $event_street2 = !empty($_POST['event_street2']) ? $_POST['event_street2'] : '';
98
  $event_state = !empty($_POST['event_state']) ? $_POST['event_state'] : '';
99
  $event_postcode = !empty($_POST['event_postcode']) ? $_POST['event_postcode'] : '';
100
  $event_country = !empty($_POST['event_country']) ? $_POST['event_country'] : '';
101
+ }
102
  // Deal with the fools who have left magic quotes turned on
103
  if ( ini_get('magic_quotes_gpc') ) {
104
  $title = stripslashes($title);
195
  event_end='" . mysql_real_escape_string($end) . "',
196
  event_time='" . mysql_real_escape_string($time) . "',
197
  event_recur='" . mysql_real_escape_string($recur) . "',
198
+ event_repeats=" . mysql_real_escape_string($repeats) . ",
199
  event_author=".$current_user->ID.",
200
  event_category=".mysql_real_escape_string($category).",
201
  event_link='".mysql_real_escape_string($linky)."',
208
  event_country='".mysql_real_escape_string($event_country)."'";
209
 
210
  $wpdb->get_results($sql);
 
211
  $sql = "SELECT event_id FROM " . MY_CALENDAR_TABLE . " WHERE event_title='" . mysql_real_escape_string($title) . "'"
212
+ . " AND event_desc='" . mysql_real_escape_string($desc) . "' AND event_begin='" . mysql_real_escape_string($begin) . "' AND event_end='" . mysql_real_escape_string($end) . "' AND event_recur='" . mysql_real_escape_string($recur) . "' AND event_repeats=" . mysql_real_escape_string($repeats) . " LIMIT 1";
213
  $result = $wpdb->get_results($sql);
214
 
215
  if ( empty($result) || empty($result[0]->event_id) ) {
248
  $end = !empty($_POST['event_end']) ? $_POST['event_end'] : $begin;
249
  $time = !empty($_POST['event_time']) ? $_POST['event_time'] : '';
250
  $recur = !empty($_POST['event_recur']) ? $_POST['event_recur'] : '';
251
+ $repeats = !empty($_POST['event_repeats']) ? $_POST['event_repeats'] : 0;
252
  $category = !empty($_POST['event_category']) ? $_POST['event_category'] : '';
253
  $linky = !empty($_POST['event_link']) ? $_POST['event_link'] : '';
254
+ $event_preset = !empty($_POST['event_preset']) ? $_POST['event_preset'] : '';
255
+ if ($event_preset != 'none') {
256
+ $sql = "SELECT * FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id = $event_preset";
257
+ $location = $wpdb->get_row($sql);
258
+ $event_label = $location->location_label;
259
+ $event_street = $location->location_street;
260
+ $event_street2 = $location->location_street2;
261
+ $event_city = $location->location_city;
262
+ $event_state = $location->location_state;
263
+ $event_postcode = $location->location_postcode;
264
+ $event_country = $location->location_country;
265
+ } else {
266
  $event_label = !empty($_POST['event_label']) ? $_POST['event_label'] : '';
267
  $event_street = !empty($_POST['event_street']) ? $_POST['event_street'] : '';
268
  $event_street2 = !empty($_POST['event_street2']) ? $_POST['event_street2'] : '';
270
  $event_state = !empty($_POST['event_state']) ? $_POST['event_state'] : '';
271
  $event_postcode = !empty($_POST['event_postcode']) ? $_POST['event_postcode'] : '';
272
  $event_country = !empty($_POST['event_country']) ? $_POST['event_country'] : '';
273
+ }
274
  $event_author = !empty($_POST['event_author']) ? $_POST['event_author'] : '';
275
 
276
  if ( mc_can_edit_event( $event_author ) ) {
378
  event_end='" . mysql_real_escape_string($end) . "',
379
  event_time='" . mysql_real_escape_string($time) . "',
380
  event_recur='" . mysql_real_escape_string($recur) . "',
381
+ event_repeats=" . mysql_real_escape_string($repeats) . ",
382
  event_category=".mysql_real_escape_string($category).",
383
  event_link='".mysql_real_escape_string($linky)."',
384
  event_label='".mysql_real_escape_string($event_label)."',
486
 
487
  <h2><?php _e('Manage Events','my-calendar'); ?></h2>
488
 
489
+ <?php
490
+
491
+ if ( isset( $_GET['sort'] ) ) {
492
+ $sortby = (int) $_GET['sort'];
493
+ } else {
494
+ $sortby = 'default';
495
+ }
496
+
497
+ if ( isset( $_GET['order'] ) ) {
498
+ if ( $_GET['order'] == 'ASC' ) {
499
+ $sortdir = 'ASC';
500
+ } else {
501
+ $sortdir = 'default';
502
+ }
503
+ } else {
504
+ $sortdir = 'default';
505
+ }
506
+ jd_events_display_list($sortby,$sortdir);
507
  }
508
  ?>
509
  </div>
553
  <fieldset>
554
  <legend><?php _e('Enter your Event Information','my-calendar'); ?></legend>
555
  <p>
556
+ <label for="event_title"><?php _e('Event Title','my-calendar'); ?></label> <input type="text" id="event_title" name="event_title" class="input" size="40" maxlength="60" value="<?php if ( !empty($data) ) echo htmlspecialchars(stripslashes($data->event_title)); ?>" />
557
  </p>
558
  <p>
559
+ <label for="event_desc"><?php _e('Event Description (<abbr title="hypertext markup language">HTML</abbr> allowed)','my-calendar'); ?></label><br /><textarea id="event_desc" name="event_desc" class="input" rows="5" cols="50"><?php if ( !empty($data) ) echo htmlspecialchars(stripslashes($data->event_desc)); ?></textarea>
560
  </p>
561
  <p>
562
  <label for="event_category"><?php _e('Event Category','my-calendar'); ?></label>
581
  <label for="event_link"><?php _e('Event Link (Optional)','my-calendar'); ?></label> <input type="text" id="event_link" name="event_link" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->event_link); ?>" />
582
  </p>
583
  <p>
584
+ <label for="event_begin"><?php _e('Start Date (YYYY-MM-DD)','my-calendar'); ?></label> <input type="text" id="event_begin" name="event_begin" class="calendar_input" size="12" value="<?php if ( !empty($data) ) { echo htmlspecialchars($data->event_begin);} else {echo date_i18n("Y-m-d");} ?>" />
585
  </p>
586
  <p>
587
  <label for="event_end"><?php _e('End Date (YYYY-MM-DD) (Optional)','calendar'); ?></label> <input type="text" name="event_end" id="event_end" class="calendar_input" size="12" value="<?php if ( !empty($data) ) {echo htmlspecialchars($data->event_end);} ?>" />
593
  if ($data->event_time == "00:00:00") {
594
  echo '';
595
  } else {
596
+ echo date_i18n("H:i",strtotime(htmlspecialchars($data->event_time)));
597
  }
598
  } else {
599
+ echo date_i18n("H:i",strtotime(current_time('mysql')));
600
  }
601
  ?>" /> <?php _e('Optional, set blank if your event is an all-day event or does not happen at a specific time.','my-calendar'); ?> <?php _e('Current time difference from GMT is ','my-calendar'); echo get_option('gmt_offset'); _e(' hour(s)', 'my-calendar'); ?>
602
  </p>
641
  <p>
642
  <?php _e('All location fields are optional: <em>insufficient information may result in an inaccurate map</em>.','my-calendar'); ?>
643
  </p>
644
+ <?php $locations = $wpdb->get_results("SELECT location_id,location_label FROM " . MY_CALENDAR_LOCATIONS_TABLE . " ORDER BY location_id ASC");
645
+ if ( !empty($locations) ) {
646
+ ?>
647
+ <p>
648
+ <label for="event_preset"><?php _e('Choose a preset location:','my-calendar'); ?></label> <select name="event_preset" id="event_preset">
649
+ <option value="none"> -- </option>
650
+ <?php
651
+ foreach ( $locations as $location ) {
652
+ echo "<option value=\"".$location->location_id."\">".stripslashes($location->location_label)."</option>";
653
+ }
654
+ ?>
655
+
656
+ </select>
657
+ </p>
658
+ <?php
659
+ } else {
660
+ ?>
661
+ <input type="hidden" name="event_preset" value="none" />
662
+ <p><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations"><?php _e('Add recurring locations for later use.','my-calendar'); ?></a></p>
663
+ <?php
664
+ }
665
+ ?>
666
  <p>
667
+ <label for="event_label"><?php _e('Name of Location (e.g. <em>Joe\'s Bar and Grill</em>)','my-calendar'); ?></label> <input type="text" id="event_label" name="event_label" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars(stripslashes($data->event_label)); ?>" />
668
  </p>
669
  <p>
670
+ <label for="event_street"><?php _e('Street Address','my-calendar'); ?></label> <input type="text" id="event_street" name="event_street" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars(stripslashes($data->event_street)); ?>" />
671
  </p>
672
  <p>
673
+ <label for="event_street2"><?php _e('Street Address (2)','my-calendar'); ?></label> <input type="text" id="event_street2" name="event_street2" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars(stripslashes($data->event_street2)); ?>" />
674
  </p>
675
  <p>
676
+ <label for="event_city"><?php _e('City','my-calendar'); ?></label> <input type="text" id="event_city" name="event_city" class="input" size="40" value="<?php if ( !empty($data) ) echo htmlspecialchars(stripslashes($data->event_city)); ?>" /> <label for="event_state"><?php _e('State/Province','my-calendar'); ?></label> <input type="text" id="event_state" name="event_state" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars(stripslashes($data->event_state)); ?>" /> <label for="event_postcode"><?php _e('Postal Code','my-calendar'); ?></label> <input type="text" id="event_postcode" name="event_postcode" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars(stripslashes($data->event_postcode)); ?>" />
677
  </p>
678
  <p>
679
+ <label for="event_country"><?php _e('Country','my-calendar'); ?></label> <input type="text" id="event_country" name="event_country" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars(stripslashes($data->event_country)); ?>" />
680
  </p>
681
  </fieldset>
682
  <?php } ?>
692
  <?php
693
  }
694
  // Used on the manage events admin page to display a list of events
695
+ function jd_events_display_list($sortby='default',$sortdir='default') {
696
  global $wpdb;
697
+ if ($sortby == 'default') {
698
+ $sortbyvalue = 'event_begin';
699
+ } else {
700
+ switch ($sortby) {
701
+ case 1:
702
+ $sortbyvalue = 'event_ID';
703
+ break;
704
+ case 2:
705
+ $sortbyvalue = 'event_title';
706
+ break;
707
+ case 3:
708
+ $sortbyvalue = 'event_desc';
709
+ break;
710
+ case 4:
711
+ $sortbyvalue = 'event_begin';
712
+ break;
713
+ case 5 :
714
+ $sortbyvalue = 'event_author';
715
+ break;
716
+ case 6:
717
+ $sortbyvalue = 'event_category';
718
+ break;
719
+ default:
720
+ $sortbyvalue = 'event_begin';
721
+ }
722
+ }
723
+ if ($sortdir == 'default') {
724
+ $sortbydirection = 'DESC';
725
+ } else {
726
+ $sortbydirection = $sortdir;
727
+ }
728
+ $events = $wpdb->get_results("SELECT * FROM " . MY_CALENDAR_TABLE . " ORDER BY $sortbyvalue $sortbydirection");
729
+
730
+ if ($sortbydirection == 'DESC') {
731
+ $sorting = "&amp;order=ASC";
732
+ } else {
733
+ $sorting = '';
734
+ }
735
 
736
  if ( !empty($events) ) {
737
  ?>
738
  <table class="widefat page fixed" id="my-calendar-admin-table" summary="Table of Calendar Events">
739
  <thead>
740
  <tr>
741
+ <th class="manage-column n4" scope="col"><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;sort=1<?php echo $sorting; ?>"><?php _e('ID','my-calendar') ?></a></th>
742
+ <th class="manage-column" scope="col"><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;sort=2<?php echo $sorting; ?>"><?php _e('Title','my-calendar') ?></a></th>
743
+ <th class="manage-column n8" scope="col"><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;sort=3<?php echo $sorting; ?>"><?php _e('Description','my-calendar') ?></a></th>
744
+ <th class="manage-column" scope="col"><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;sort=4<?php echo $sorting; ?>"><?php _e('Start Date','my-calendar') ?></a></th>
745
  <?php /* <th class="manage-column" scope="col"><?php _e('End Date','my-calendar') ?></th> */ ?>
746
  <th class="manage-column n6" scope="col"><?php _e('Recurs','my-calendar') ?></th>
747
  <th class="manage-column n6" scope="col"><?php _e('Repeats','my-calendar') ?></th>
748
+ <th class="manage-column" scope="col"><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;sort=5<?php echo $sorting; ?>"><?php _e('Author','my-calendar') ?></a></th>
749
+ <th class="manage-column" scope="col"><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;sort=6<?php echo $sorting; ?>"><?php _e('Category','my-calendar') ?></a></th>
750
  <th class="manage-column n7" scope="col"><?php _e('Edit / Delete','my-calendar') ?></th>
751
  </tr>
752
  </thead>
758
  ?>
759
  <tr class="<?php echo $class; ?>">
760
  <th scope="row"><?php echo $event->event_id; ?></th>
761
+ <td><?php echo htmlentities(stripslashes($event->event_title)); ?></td>
762
+ <td><?php echo htmlentities(stripslashes($event->event_desc)); ?></td>
763
  <td><?php echo $event->event_begin; ?></td>
764
  <?php /* <td><?php echo $event->event_end; ?></td> */ ?>
765
  <td>
786
  $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".$event->event_category;
787
  $this_cat = $wpdb->get_row($sql);
788
  ?>
789
+ <td><div class="category-color" style="background-color:<?php echo $this_cat->category_color;?>;"> </div> <?php echo stripslashes($this_cat->category_name); ?></td>
790
  <?php unset($this_cat); ?>
791
  <td>
792
  <?php if ( mc_can_edit_event( $event->event_author ) ) { ?>
my-calendar-fi.mo ADDED
Binary file
my-calendar-fi.po ADDED
@@ -0,0 +1,1071 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Translation of the WordPress plugin My Calendar 1.3.0 by Joseph C Dolson.
2
+ # Copyright (C) 2010 Joseph C Dolson
3
+ # This file is distributed under the same license as the My Calendar package.
4
+ # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
5
+ #
6
+ msgid ""
7
+ msgstr ""
8
+ "Project-Id-Version: My Calendar 1.3.0\n"
9
+ "Report-Msgid-Bugs-To: http://wordpress.org/tag/my-calendar\n"
10
+ "POT-Creation-Date: 2010-06-04 00:23+0000\n"
11
+ "PO-Revision-Date: 2010-06-28 21:29+0200\n"
12
+ "Last-Translator: Ilpo Puhakka <ilpo.puhakka@gmail.com>\n"
13
+ "Language-Team: Mediajalostamo <info@mediajalostamo.fi>\n"
14
+ "MIME-Version: 1.0\n"
15
+ "Content-Type: text/plain; charset=UTF-8\n"
16
+ "Content-Transfer-Encoding: 8bit\n"
17
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
+ "X-Poedit-Language: Finnish\n"
19
+ "X-Poedit-Country: FINLAND\n"
20
+
21
+ #: my-calendar-categories.php:37
22
+ msgid "Category added successfully"
23
+ msgstr "Luokka lisätty onnistuneesti"
24
+
25
+ #: my-calendar-categories.php:43
26
+ msgid "Category deleted successfully"
27
+ msgstr "Luokka poistettu onnistuneesti"
28
+
29
+ #: my-calendar-categories.php:48
30
+ #: my-calendar-categories.php:60
31
+ msgid "Edit Category"
32
+ msgstr "Muokkaa luokkaa"
33
+
34
+ #: my-calendar-categories.php:52
35
+ msgid "Category Editor"
36
+ msgstr "Luokan muokkaustyökalu"
37
+
38
+ #: my-calendar-categories.php:61
39
+ #: my-calendar-categories.php:114
40
+ #: my-calendar-categories.php:152
41
+ msgid "Category Name"
42
+ msgstr "Luokan nimi"
43
+
44
+ #: my-calendar-categories.php:62
45
+ #: my-calendar-categories.php:115
46
+ msgid "Category Color (Hex format)"
47
+ msgstr "Luokan väri (Heksa-arvo)"
48
+
49
+ #: my-calendar-categories.php:63
50
+ #: my-calendar-categories.php:116
51
+ #: my-calendar-categories.php:154
52
+ msgid "Category Icon"
53
+ msgstr "Luokan ikoni"
54
+
55
+ #: my-calendar-categories.php:85
56
+ #: my-calendar-locations.php:60
57
+ msgid "Save Changes"
58
+ msgstr "Tallenna muutokset"
59
+
60
+ #: my-calendar-categories.php:95
61
+ msgid "Category edited successfully"
62
+ msgstr "Luokkaa muokattu onnistuneesti"
63
+
64
+ #: my-calendar-categories.php:101
65
+ #: my-calendar-categories.php:113
66
+ #: my-calendar-categories.php:133
67
+ msgid "Add Category"
68
+ msgstr "Lisää luokka"
69
+
70
+ #: my-calendar-categories.php:105
71
+ msgid "Add New Category"
72
+ msgstr "Lisää uusi luokka"
73
+
74
+ #: my-calendar-categories.php:139
75
+ #: my-calendar.php:131
76
+ msgid "Manage Categories"
77
+ msgstr "Hallitse luokkia"
78
+
79
+ #: my-calendar-categories.php:151
80
+ #: my-calendar-event-manager.php:740
81
+ #: my-calendar-locations.php:127
82
+ msgid "ID"
83
+ msgstr "ID"
84
+
85
+ #: my-calendar-categories.php:153
86
+ msgid "Category Color"
87
+ msgstr "Luokan väri"
88
+
89
+ #: my-calendar-categories.php:155
90
+ #: my-calendar-categories.php:169
91
+ #: my-calendar-event-manager.php:792
92
+ #: my-calendar-locations.php:129
93
+ #: my-calendar-locations.php:141
94
+ msgid "Edit"
95
+ msgstr "Muokkaa"
96
+
97
+ #: my-calendar-categories.php:156
98
+ #: my-calendar-categories.php:175
99
+ #: my-calendar-event-manager.php:57
100
+ #: my-calendar-event-manager.php:792
101
+ #: my-calendar-locations.php:130
102
+ #: my-calendar-locations.php:142
103
+ msgid "Delete"
104
+ msgstr "Poista"
105
+
106
+ #: my-calendar-categories.php:172
107
+ #: my-calendar-event-manager.php:778
108
+ #: my-calendar.php:972
109
+ msgid "N/A"
110
+ msgstr "N/A"
111
+
112
+ #: my-calendar-categories.php:175
113
+ #: my-calendar-locations.php:142
114
+ msgid "Are you sure you want to delete this category?"
115
+ msgstr "Haluatko varmasti poistaa tämän luokan?"
116
+
117
+ #: my-calendar-categories.php:186
118
+ msgid "There are no categories in the database - something has gone wrong!"
119
+ msgstr "Luokkia ei ole tietokannassa – jossain on tapahtunut virhe!"
120
+
121
+ #: my-calendar-event-manager.php:13
122
+ #: my-calendar-settings.php:195
123
+ msgid "My Calendar has identified that you have the Calendar plugin by Kieran O'Shea installed. You can import those events and categories into the My Calendar database. Would you like to import these events?"
124
+ msgstr "My Calendar on huomannut, että teillä on Kieran O'Shean kalenterilisäosa asennettuna. Voit tuoda nämä tapahtumat ja kategoriat tietokantaan. Haluatko tuoda näitä tapahtumia?"
125
+
126
+ #: my-calendar-event-manager.php:19
127
+ #: my-calendar-settings.php:201
128
+ msgid "Import from Calendar"
129
+ msgstr "Tuo kalenterista"
130
+
131
+ #: my-calendar-event-manager.php:24
132
+ msgid "Although it is possible that this import could fail to import your events correctly, it should not have any impact on your existing Calendar database. If you encounter any problems, <a href=\"http://www.joedolson.com/contact.php\">please contact me</a>!"
133
+ msgstr "On mahdollista, että tuontityökalu epäonnistuu tapahtumien oikeanlaisessa siirrossa. Tällä ei kuitenkaan ole mitään vaikutusta nykyiseen kalenteritietokantaan. Jos kohtaat ongelmia, <a href=\"http://www.joedolson.com/contact.php\">ota yhteyttä lisäosan kehittäjään</a>!"
134
+
135
+ #: my-calendar-event-manager.php:52
136
+ msgid "Delete Event"
137
+ msgstr "Poista tapahtuma"
138
+
139
+ #: my-calendar-event-manager.php:52
140
+ msgid "Are you sure you want to delete this event?"
141
+ msgstr "Haluatko varmasti poistaa tämän tapahtuman?"
142
+
143
+ #: my-calendar-event-manager.php:65
144
+ msgid "You do not have permission to delete that event."
145
+ msgstr "Sinulla ei ole riittäviä oikeuksia tapahtuman poistamiseen."
146
+
147
+ #: my-calendar-event-manager.php:142
148
+ #: my-calendar-event-manager.php:147
149
+ #: my-calendar-event-manager.php:152
150
+ #: my-calendar-event-manager.php:162
151
+ #: my-calendar-event-manager.php:170
152
+ #: my-calendar-event-manager.php:179
153
+ #: my-calendar-event-manager.php:187
154
+ #: my-calendar-event-manager.php:217
155
+ #: my-calendar-event-manager.php:325
156
+ #: my-calendar-event-manager.php:330
157
+ #: my-calendar-event-manager.php:335
158
+ #: my-calendar-event-manager.php:345
159
+ #: my-calendar-event-manager.php:353
160
+ #: my-calendar-event-manager.php:362
161
+ #: my-calendar-event-manager.php:370
162
+ #: my-calendar-event-manager.php:442
163
+ #: my-calendar-event-manager.php:457
164
+ msgid "Error"
165
+ msgstr "Virhe"
166
+
167
+ #: my-calendar-event-manager.php:142
168
+ #: my-calendar-event-manager.php:325
169
+ msgid "Your event end date must be either after or the same as your event begin date"
170
+ msgstr "Tapahtumasi loppumispäivän pitää olla joko jälkeen tai samaan aikaan kuin alkamisajankohdan"
171
+
172
+ #: my-calendar-event-manager.php:147
173
+ #: my-calendar-event-manager.php:330
174
+ msgid "Your date formatting is correct but one or more of your dates is invalid. Check for number of days in month and leap year related errors."
175
+ msgstr "Sinun päivämääräsi muotoilu on oikea, mutta yksi tai useampi päivämääristä on pätemätön. Tarkista montako päivää kuukaudessa on ja ettei ole karkausvuosi."
176
+
177
+ #: my-calendar-event-manager.php:152
178
+ #: my-calendar-event-manager.php:335
179
+ msgid "Both start and end dates must be entered and be in the format YYYY-MM-DD"
180
+ msgstr "Sekä alku- ja päättymisajankohta on merkittävä ja oltava muodossa VVVV-KK-PP"
181
+
182
+ #: my-calendar-event-manager.php:162
183
+ #: my-calendar-event-manager.php:345
184
+ msgid "The time field must either be blank or be entered in the format hh:mm"
185
+ msgstr "Aikakentän on joko oltava tyhjä tai merkittävä muodossa hh:mm"
186
+
187
+ #: my-calendar-event-manager.php:170
188
+ #: my-calendar-event-manager.php:353
189
+ msgid "The URL entered must either be prefixed with http:// or be completely blank"
190
+ msgstr "URL on syötettävä joko etuliitteellä http:// tai se voi olla täysin tyhjä"
191
+
192
+ #: my-calendar-event-manager.php:179
193
+ #: my-calendar-event-manager.php:362
194
+ msgid "The event title must be between 1 and 60 characters in length."
195
+ msgstr "Tapahtuman otsikon on oltava 1–60 merkkiä pitkä."
196
+
197
+ #: my-calendar-event-manager.php:187
198
+ #: my-calendar-event-manager.php:370
199
+ msgid "The repetition value must be 0 unless a type of recurrance is selected in which case the repetition value must be 0 or higher"
200
+ msgstr "Toisto-arvon on oltava 0, paitsi jos toiston tyyppi on valittu, jolloin sen on oltava 0 tai suurempi."
201
+
202
+ #: my-calendar-event-manager.php:217
203
+ msgid "An event with the details you submitted could not be found in the database. This may indicate a problem with your database or the way in which it is configured."
204
+ msgstr "Julkaisemillasi tiedoilla olevaa tapahtumaa ei löydy tietokannasta. Tämä voi johtua ongelmasta tietokannassa tai sen asetuksissa."
205
+
206
+ #: my-calendar-event-manager.php:221
207
+ msgid "Event added. It will now show in your calendar."
208
+ msgstr "Tapahtuma lisätty. Se näkyy nyt kalenterissa."
209
+
210
+ #: my-calendar-event-manager.php:302
211
+ #: my-calendar-event-manager.php:401
212
+ msgid "Failure"
213
+ msgstr "Virhe"
214
+
215
+ #: my-calendar-event-manager.php:302
216
+ msgid "You can't update an event if you haven't submitted an event id"
217
+ msgstr "Et voi päivittää tapahtumaa jos et ole syöttänyt tapahtuman id-tunnusta"
218
+
219
+ #: my-calendar-event-manager.php:401
220
+ msgid "The database failed to return data to indicate the event has been updated sucessfully. This may indicate a problem with your database or the way in which it is configured."
221
+ msgstr "Tietokanta ei onnistunut palauttamaan tietoja osoittaen että tapahtuma olisi päivitetty onnistuneesti. Tämä voi olla ongelma tietokannassa tai siinä, miten se on määritetty."
222
+
223
+ #: my-calendar-event-manager.php:405
224
+ msgid "Event updated successfully"
225
+ msgstr "Tapahtuma päivitetty onnistuneesti"
226
+
227
+ #: my-calendar-event-manager.php:433
228
+ msgid "You do not have sufficient permissions to edit that event."
229
+ msgstr "Sinulla ei ole riittäviä käyttäjäoikeuksia tapahtuman muokkaamiseen."
230
+
231
+ #: my-calendar-event-manager.php:442
232
+ msgid "You can't delete an event if you haven't submitted an event id"
233
+ msgstr "Et voi poistaa tapahtumaa jos et ole syöttänyt tapahtuman id-tunnusta."
234
+
235
+ #: my-calendar-event-manager.php:453
236
+ msgid "Event deleted successfully"
237
+ msgstr "Tapahtuma poistettu onnistuneesti"
238
+
239
+ #: my-calendar-event-manager.php:457
240
+ msgid "Despite issuing a request to delete, the event still remains in the database. Please investigate."
241
+ msgstr "Vaikka yritit poistaa tapahtuman, se näkyy edelleen tietokannassa. Ole hyvä ja tutki tietokantasi."
242
+
243
+ #: my-calendar-event-manager.php:472
244
+ #: my-calendar-event-manager.php:545
245
+ msgid "Edit Event"
246
+ msgstr "Muokkaa tapahtumaa"
247
+
248
+ #: my-calendar-event-manager.php:476
249
+ msgid "You must provide an event id in order to edit it"
250
+ msgstr "Sinun on syötettävä tapahtuman id-tunnus, jotta voit muokata sitä"
251
+
252
+ #: my-calendar-event-manager.php:482
253
+ msgid "Add Event"
254
+ msgstr "Lisää tapahtuma"
255
+
256
+ #: my-calendar-event-manager.php:487
257
+ msgid "Manage Events"
258
+ msgstr "Hallitse tapahtumia"
259
+
260
+ #: my-calendar-event-manager.php:521
261
+ msgid "Sorry! That's an invalid event key."
262
+ msgstr "Väärä tapahtuman avain."
263
+
264
+ #: my-calendar-event-manager.php:526
265
+ msgid "Sorry! We couldn't find an event with that ID."
266
+ msgstr "Tapahtumaa syöttämällä id-tunnuksella ei löydy."
267
+
268
+ #: my-calendar-event-manager.php:545
269
+ msgid "Add an Event"
270
+ msgstr "Lisää tapahtuma"
271
+
272
+ #: my-calendar-event-manager.php:554
273
+ msgid "Enter your Event Information"
274
+ msgstr "Syötä tapahtuman tiedot"
275
+
276
+ #: my-calendar-event-manager.php:556
277
+ msgid "Event Title"
278
+ msgstr "Tapahtuman nimi"
279
+
280
+ #: my-calendar-event-manager.php:559
281
+ msgid "Event Description (<abbr title=\"hypertext markup language\">HTML</abbr> allowed)"
282
+ msgstr "Tapahtuman kuvaus (<abbr title=\"hypertext markup language\">HTML</abbr> sallittu)"
283
+
284
+ #: my-calendar-event-manager.php:562
285
+ msgid "Event Category"
286
+ msgstr "Tapahtuman luokka"
287
+
288
+ #: my-calendar-event-manager.php:581
289
+ msgid "Event Link (Optional)"
290
+ msgstr "Tapahtuman linkki (valinnainen)"
291
+
292
+ #: my-calendar-event-manager.php:584
293
+ msgid "Start Date (YYYY-MM-DD)"
294
+ msgstr "Aloituspäivä (VVVV-KK-PP)"
295
+
296
+ #: my-calendar-event-manager.php:587
297
+ msgid "End Date (YYYY-MM-DD) (Optional)"
298
+ msgstr "Loppumispäivä (VVVV-KK-PP) (Valinnainen)"
299
+
300
+ #: my-calendar-event-manager.php:590
301
+ msgid "Time (hh:mm)"
302
+ msgstr "Aika (tt:mm)"
303
+
304
+ #: my-calendar-event-manager.php:601
305
+ msgid "Optional, set blank if your event is an all-day event or does not happen at a specific time."
306
+ msgstr "Valinnainen. Jätä tyhjäksi, jos tapahtuma on koko päivän kestävä tapahtuma tai ei tapahdu tiettyyn aikaan."
307
+
308
+ #: my-calendar-event-manager.php:601
309
+ msgid "Current time difference from GMT is "
310
+ msgstr "Nykyinen aikaero GMT:stä on "
311
+
312
+ #: my-calendar-event-manager.php:601
313
+ msgid " hour(s)"
314
+ msgstr " tunti(a)"
315
+
316
+ #: my-calendar-event-manager.php:605
317
+ msgid "Recurring Events"
318
+ msgstr "Toistuvat tapahtumat"
319
+
320
+ #: my-calendar-event-manager.php:626
321
+ msgid "Repeats for"
322
+ msgstr "Toistokerrat"
323
+
324
+ #: my-calendar-event-manager.php:627
325
+ msgid "Units"
326
+ msgstr "Toistoväli"
327
+
328
+ #: my-calendar-event-manager.php:628
329
+ msgid "Does not recur"
330
+ msgstr "Ei toistu"
331
+
332
+ #: my-calendar-event-manager.php:629
333
+ #: my-calendar-event-manager.php:768
334
+ msgid "Daily"
335
+ msgstr "Päivittäin"
336
+
337
+ #: my-calendar-event-manager.php:630
338
+ #: my-calendar-event-manager.php:769
339
+ msgid "Weekly"
340
+ msgstr "Viikottain"
341
+
342
+ #: my-calendar-event-manager.php:631
343
+ msgid "Bi-weekly"
344
+ msgstr "Joka toinen viikko"
345
+
346
+ #: my-calendar-event-manager.php:632
347
+ #: my-calendar-event-manager.php:771
348
+ msgid "Monthly"
349
+ msgstr "Kuukausittain"
350
+
351
+ #: my-calendar-event-manager.php:633
352
+ msgid "Annually"
353
+ msgstr "Vuosittain"
354
+
355
+ #: my-calendar-event-manager.php:635
356
+ msgid "Entering 0 means forever, if a unit is selected. If the recurrance unit is left at \"Does not recur,\" the event will not reoccur."
357
+ msgstr "Jos toistoväli on valittuna, 0 tarkoittaa ikuista toistoa. Jos toistoväli jätetään tilaan \"ei toistu \", tapahtuma ei toistu."
358
+
359
+ #: my-calendar-event-manager.php:642
360
+ #: my-calendar-locations.php:41
361
+ #: my-calendar-locations.php:90
362
+ msgid "All location fields are optional: <em>insufficient information may result in an inaccurate map</em>."
363
+ msgstr "Kaikki paikkaan liittyvät kentät ovat valinnaisia: <em>Puutteellisten tietojen antaminen saattaa johtaa epätarkkaan karttaan</em>."
364
+
365
+ #: my-calendar-event-manager.php:648
366
+ msgid "Choose a preset location:"
367
+ msgstr "Valitse aiemmin käytetty paikka:"
368
+
369
+ #: my-calendar-event-manager.php:661
370
+ msgid "Add recurring locations for later use."
371
+ msgstr "Lisää toistuva paikka myöhempää käyttöä varten."
372
+
373
+ #: my-calendar-event-manager.php:666
374
+ #: my-calendar-locations.php:44
375
+ #: my-calendar-locations.php:93
376
+ msgid "Name of Location (e.g. <em>Joe's Bar and Grill</em>)"
377
+ msgstr "Paikan nimi "
378
+
379
+ #: my-calendar-event-manager.php:669
380
+ #: my-calendar-locations.php:47
381
+ #: my-calendar-locations.php:96
382
+ msgid "Street Address"
383
+ msgstr "Katuosoite"
384
+
385
+ #: my-calendar-event-manager.php:672
386
+ #: my-calendar-locations.php:50
387
+ #: my-calendar-locations.php:99
388
+ msgid "Street Address (2)"
389
+ msgstr "Katuosoite (2)"
390
+
391
+ #: my-calendar-event-manager.php:675
392
+ #: my-calendar-locations.php:53
393
+ #: my-calendar-locations.php:102
394
+ msgid "City"
395
+ msgstr "Kaupunki"
396
+
397
+ #: my-calendar-event-manager.php:675
398
+ #: my-calendar-locations.php:53
399
+ #: my-calendar-locations.php:102
400
+ msgid "State/Province"
401
+ msgstr "Maakunta"
402
+
403
+ #: my-calendar-event-manager.php:675
404
+ #: my-calendar-locations.php:53
405
+ #: my-calendar-locations.php:102
406
+ msgid "Postal Code"
407
+ msgstr "Postinumero"
408
+
409
+ #: my-calendar-event-manager.php:678
410
+ #: my-calendar-locations.php:56
411
+ #: my-calendar-locations.php:105
412
+ msgid "Country"
413
+ msgstr "Maa"
414
+
415
+ #: my-calendar-event-manager.php:683
416
+ msgid "Save Event"
417
+ msgstr "Tallenna tapahtuma"
418
+
419
+ #: my-calendar-event-manager.php:741
420
+ #: my-calendar-widgets.php:32
421
+ #: my-calendar-widgets.php:113
422
+ msgid "Title"
423
+ msgstr "Nimi"
424
+
425
+ #: my-calendar-event-manager.php:742
426
+ msgid "Description"
427
+ msgstr "Kuvaus"
428
+
429
+ #: my-calendar-event-manager.php:743
430
+ msgid "Start Date"
431
+ msgstr "Alkamisajankohta"
432
+
433
+ #: my-calendar-event-manager.php:745
434
+ msgid "Recurs"
435
+ msgstr "Toistoväli"
436
+
437
+ #: my-calendar-event-manager.php:746
438
+ msgid "Repeats"
439
+ msgstr "Toistokerrat"
440
+
441
+ #: my-calendar-event-manager.php:747
442
+ #: my-calendar-settings.php:152
443
+ msgid "Author"
444
+ msgstr "Lisääjä"
445
+
446
+ #: my-calendar-event-manager.php:748
447
+ msgid "Category"
448
+ msgstr "Luokka"
449
+
450
+ #: my-calendar-event-manager.php:749
451
+ msgid "Edit / Delete"
452
+ msgstr "Muokkaa / Poista"
453
+
454
+ #: my-calendar-event-manager.php:767
455
+ msgid "Never"
456
+ msgstr "Ei koskaan"
457
+
458
+ #: my-calendar-event-manager.php:770
459
+ msgid "Bi-Weekly"
460
+ msgstr "Joka toinen viikko"
461
+
462
+ #: my-calendar-event-manager.php:772
463
+ msgid "Yearly"
464
+ msgstr "Vuosittain"
465
+
466
+ #: my-calendar-event-manager.php:779
467
+ msgid "Forever"
468
+ msgstr "Toistaiseksi"
469
+
470
+ #: my-calendar-event-manager.php:780
471
+ msgid "Times"
472
+ msgstr "kertaa"
473
+
474
+ #: my-calendar-event-manager.php:802
475
+ msgid "There are no events in the database!"
476
+ msgstr "Tietokannassa ei ole tapahtumia!"
477
+
478
+ #: my-calendar-help.php:6
479
+ msgid "How to use My Calendar"
480
+ msgstr "My Calendar käyttöohjeet"
481
+
482
+ #: my-calendar-help.php:11
483
+ msgid "Shortcode Syntax"
484
+ msgstr "Tagien merkkausohje"
485
+
486
+ #: my-calendar-help.php:16
487
+ msgid "This basic shortcode will show the calendar on a post or page including all categories and the category key, in a traditional month-by-month format."
488
+ msgstr "Tämä tagi näyttää kalenterin joko artikkelissa tai sivulla siten, että mukana on kaikki kategoriat perinteisessä kuukausittaisessa näkymässä."
489
+
490
+ #: my-calendar-help.php:19
491
+ msgid "The shortcode supports three attributes, <code>category</code>, <code>format</code> and <code>showkey</code>. There is currently only one alternate option for <code>format</code> &mdash; <code>list</code> &mdash; which will show the calendar in a list format, skipping dates without any events. The <code>category</code> attribute requires either the name of or ID number one of your event categories (the name is case-sensitive). This will show a calendar only including events in that category. Multiple categories can be specified by separating the category names or IDs using the pipe character: <code>|</code>. Setting <code>showkey</code> to <code>no</code> will prevent the category key from being displayed &mdash; this can be useful with single-category output."
492
+ msgstr "Tämä tagi tukee kolmea atribuuttia, <code>category</code>, <code>format</code> and <code>showkey</code>. Tällä hetkellä on vain yksi vaihtoehtoinen asetus, <code>format</code> &mdash; <code>list</code> &mdash; joka näyttää kalenterin listanäkymänä ja ohittaa päivämäärät ilman tapahtumia. <code>category</code> -atribuutti tarvitsee joko nimen tai id-tunnuksen jostain tapahtumaluokasta. Tällöin koodi näyttää tapahtumat vain valitusta luokasta. Voit valita useampia luokkia erottamalla id-tunnukset tai luokan nimet toisistaan pystyviivalla: <code>|</code>.Asettamalla <code>showkey</code> -tagin atribuutiksi <code>no</code> voit estää tapahtumaluokan avainta näkymästä. Tämä on käyttökelpoista etenkin yhden luokan kalentereissa."
493
+
494
+ #: my-calendar-help.php:22
495
+ msgid "This shortcode displays the output of the Upcoming Events widget. Without attributes, it will display using the settings in your widget; the attributes are used to override the widget settings. The <code>before</code> and <code>after</code> attributes should be numbers; the <code>type</code> attribute can be either \"event\" or \"date\", and the <code>category</code> attribute works the same way as the category attribute on the main calendar shortcode. Templates work using the template codes listed below."
496
+ msgstr "Tämä tagi näyttää samat tiedot kuin Tulevat tapahtumat vimpain. Ilman atribuutteja se käyttää samoja asetuksia kuin vimpain. Atribuutteja käytetään korvaamaan vimpaimen asetukset. <code>before</code> ja <code>after</code>-atribuuteille annetaan numeroarvoja. <code>type</code>-atribuutti voi olla joko \"event\" tai \"date\", ja <code>category</code>-atribuutti toimii samaan tapaan kuin category-atribuutti muissakin tageissa. <code>template</code>-atribuutti toimii alla listattuilla arvoilla."
497
+
498
+ #: my-calendar-help.php:25
499
+ msgid "Predictably enough, this shortcode displays the output of the Today's Events widget, with two configurable attributes: category and template."
500
+ msgstr "Tämä tagi näyttää Tapahtumat tänään -vimpaimen sisällön. Se toimii kuten yllä."
501
+
502
+ #: my-calendar-help.php:33
503
+ msgid "Category Icons"
504
+ msgstr "Luokkien ikonit"
505
+
506
+ #: my-calendar-help.php:36
507
+ msgid "My Calendar is designed to manage multiple calendars. The basis for these calendars are categories; you can easily setup a calendar page which includes all categories, or you can dedicate separate pages to calendars in each category. For an example, this might be useful for you in managing the tour calendars for multiple bands; event calendars for a variety of locations, etc."
508
+ msgstr "My Calendar on suunniteltu useiden kalentereiden hallintaan. Voit laittaa luokkien tapahtumat näkymään joko samalla sivulla tai sitten eri luokissa olevat tapahtumat eri sivuille. Tämä voi olla hyödyllistä, jos hallinnoit esimerkiksi kahdelle eri kohderyhmälle tarkoitettuja tapahtumia. "
509
+
510
+ #: my-calendar-help.php:39
511
+ msgid "The pre-installed category icons may not be especially useful for your needs or design. I'm assuming that you're going to upload your own icons -- all you need to do is upload them to the plugin's icons folder, and they'll be available for immediate use, or place them in a folder at \"my-calendar-custom\" to avoid having them overwritten by upgrades."
512
+ msgstr "Oletusikonit eivät välttämättä sovellu käyttöösi eikä sivustosi ulkoasuun. Voit lisätä omia tunnuskuvia lisäämällä ne lisäosan icons-kansioon. Kuitenkin välttyäksesi niiden katoamiselta lisäosaa päivitettäessä, sinun on luotava kansio \"my-calendar-custom\" wp-content/plugins -kansioon. "
513
+
514
+ #: my-calendar-help.php:39
515
+ msgid "Your icons folder is:"
516
+ msgstr "Sinun icons-kansio on:"
517
+
518
+ #: my-calendar-help.php:39
519
+ msgid "You can alternately place icons in:"
520
+ msgstr "Vaihtoehtoisesti voi ladata ikonit kansioon: "
521
+
522
+ #: my-calendar-help.php:47
523
+ msgid "Widget Templating"
524
+ msgstr "Vimpainten atribuutit"
525
+
526
+ #: my-calendar-help.php:50
527
+ msgid "These codes are available in calendar widgets to create your own custom calendar format."
528
+ msgstr "Voit käyttää näitä tageja vimpaimissa muotoillaksesi kalenterin haluamasi näköiseksi."
529
+
530
+ #: my-calendar-help.php:54
531
+ msgid "Displays the name of the category the event is in."
532
+ msgstr "Näyttää sen luokan nimen, jossa tapahtuma on."
533
+
534
+ #: my-calendar-help.php:57
535
+ msgid "Displays the title of the event."
536
+ msgstr "Näyttää tapahtuman otsikon."
537
+
538
+ #: my-calendar-help.php:60
539
+ msgid "Displays the start time for the event."
540
+ msgstr "Näyttää tapahtuman alkamisajankohdan."
541
+
542
+ #: my-calendar-help.php:63
543
+ msgid "Displays the date on which the event begins."
544
+ msgstr "Näyttää päivämäärän, jolloin tapahtuma alkaa. "
545
+
546
+ #: my-calendar-help.php:66
547
+ msgid "Displays the date on which the event ends."
548
+ msgstr "Näyttää päivämäärän, jolloin tapahtuma loppuu."
549
+
550
+ #: my-calendar-help.php:69
551
+ msgid "Displays the WordPress author who posted the event."
552
+ msgstr "Näyttää WordPress-käyttäjän, joka julkaisi tapahtuman."
553
+
554
+ #: my-calendar-help.php:72
555
+ msgid "Displays the URL provided for the event."
556
+ msgstr "Näyttää tapahtumaan liitetyn linkin polun."
557
+
558
+ #: my-calendar-help.php:75
559
+ msgid "Displays the description of the event."
560
+ msgstr "Näyttää tapahtuman kuvauksen."
561
+
562
+ #: my-calendar-help.php:78
563
+ msgid "Displays title of the event as a link if a URL is present, or the title alone if no URL is available."
564
+ msgstr "Näyttää tapahtuman otsikon linkkinä, jos tapahtumaan on liitetty linkki."
565
+
566
+ #: my-calendar-help.php:81
567
+ msgid "Displays the name of the location of the event."
568
+ msgstr "Näyttää tapahtumapaikan nimen."
569
+
570
+ #: my-calendar-help.php:84
571
+ msgid "Displays the first line of the site address."
572
+ msgstr "Näyttää tapahtumapaikan osoitteen ensimmäisen rivin."
573
+
574
+ #: my-calendar-help.php:87
575
+ msgid "Displays the second line of the site address."
576
+ msgstr "Näyttää tapahtumapaikan osoitteen toisen rivin."
577
+
578
+ #: my-calendar-help.php:90
579
+ msgid "Displays the city for the event."
580
+ msgstr "Näyttää kaupungin, jossa tapahtuma on."
581
+
582
+ #: my-calendar-help.php:93
583
+ msgid "Displays the state for the event."
584
+ msgstr "Näyttää tapahtuman maakunnan."
585
+
586
+ #: my-calendar-help.php:96
587
+ msgid "Displays the postcode for the event."
588
+ msgstr "Näyttää tapahtuman postinumeron."
589
+
590
+ #: my-calendar-help.php:99
591
+ msgid "Displays the country for the event location."
592
+ msgstr "Näyttää tapahtumapaikan sijaintimaan."
593
+
594
+ #: my-calendar-help.php:102
595
+ msgid "Displays the event address in <a href=\"http://microformats.org/wiki/hcard\">hcard</a> format."
596
+ msgstr "Näyttää tapahtuman osoitteen <a href=\"http://microformats.org/wiki/hcard\">hcard</a>-muodossa."
597
+
598
+ #: my-calendar-help.php:105
599
+ msgid "Displays a link to a Google Map of the event, if sufficient address information is available. If not, will be empty."
600
+ msgstr "Näyttää linkin tapahtuman Google Karttaan, jos osoitetiedot ovat olemassa."
601
+
602
+ #: my-calendar-locations.php:18
603
+ msgid "Location added successfully"
604
+ msgstr "Tapahtumapaikka lisätty onnistuneesti"
605
+
606
+ #: my-calendar-locations.php:22
607
+ msgid "Location deleted successfully"
608
+ msgstr "Tapahtumapaikka poistettu onnistuneesti"
609
+
610
+ #: my-calendar-locations.php:27
611
+ msgid "Edit Location"
612
+ msgstr "Muokkaa tapahtumapaikkaa"
613
+
614
+ #: my-calendar-locations.php:31
615
+ msgid "Location Editor"
616
+ msgstr "Tapahtumapaikkatyökalu"
617
+
618
+ #: my-calendar-locations.php:70
619
+ msgid "Location edited successfully"
620
+ msgstr "Tapahtumapaikkaa muokattu onnistuneesti"
621
+
622
+ #: my-calendar-locations.php:76
623
+ #: my-calendar-locations.php:109
624
+ msgid "Add Location"
625
+ msgstr "Lisää tapahtumapaikka"
626
+
627
+ #: my-calendar-locations.php:80
628
+ msgid "Add New Location"
629
+ msgstr "Lisää uusi tapahtumapaikka"
630
+
631
+ #: my-calendar-locations.php:115
632
+ #: my-calendar.php:132
633
+ msgid "Manage Locations"
634
+ msgstr "Hallitse tapahtumapaikkoja"
635
+
636
+ #: my-calendar-locations.php:128
637
+ msgid "Location"
638
+ msgstr "Tapahtumapaikka"
639
+
640
+ #: my-calendar-locations.php:150
641
+ msgid "There are no locations in the database yet!"
642
+ msgstr "Tietokannassa ei vielä ole tapahtumapaikkoja!"
643
+
644
+ #: my-calendar-locations.php:154
645
+ msgid "Please note: editing or deleting locations stored for re-use will have no effect on any event previously scheduled at that location. The location database exists purely as a shorthand method to enter frequently used locations into event records."
646
+ msgstr "Huomaathan: tapahtumapaikkojen muokkaaminen tai poistaminen ei vaikuta jo luotuihin tapahtumiin. Tapahtumapaikkatietokanta on olemassa vain, jotta tapahtumien lisääminen olisi vaivattomampaa."
647
+
648
+ #: my-calendar-settings.php:67
649
+ msgid "Categories imported successfully."
650
+ msgstr "Luokat tuotu onnistuneesti."
651
+
652
+ #: my-calendar-settings.php:69
653
+ msgid "Categories not imported."
654
+ msgstr "Luokkia ei tuotu."
655
+
656
+ #: my-calendar-settings.php:72
657
+ msgid "Events imported successfully."
658
+ msgstr "Tapahtumat tuotu onnistuneesti."
659
+
660
+ #: my-calendar-settings.php:74
661
+ msgid "Events not imported."
662
+ msgstr "Tapahtumia ei tuotu."
663
+
664
+ #: my-calendar-settings.php:116
665
+ msgid "Settings saved"
666
+ msgstr "Asetukset tallennettu"
667
+
668
+ #: my-calendar-settings.php:139
669
+ msgid "My Calendar Options"
670
+ msgstr "My Calendar asetukset"
671
+
672
+ #: my-calendar-settings.php:143
673
+ msgid "Calendar Settings"
674
+ msgstr "Kalenterin asetukset"
675
+
676
+ #: my-calendar-settings.php:147
677
+ msgid "Primary Calendar Options"
678
+ msgstr "Ensisijaiset kalenteriasetukset"
679
+
680
+ #: my-calendar-settings.php:149
681
+ msgid "Choose the lowest user group that may manage events"
682
+ msgstr "Valitse heikoin rooli, jolla on oikeudet muokata tapahtumia"
683
+
684
+ #: my-calendar-settings.php:150
685
+ msgid "Subscriber"
686
+ msgstr "Tilaaja"
687
+
688
+ #: my-calendar-settings.php:151
689
+ msgid "Contributor"
690
+ msgstr "Avustaja"
691
+
692
+ #: my-calendar-settings.php:153
693
+ msgid "Editor"
694
+ msgstr "Päätoimittaja"
695
+
696
+ #: my-calendar-settings.php:154
697
+ msgid "Administrator"
698
+ msgstr "Pääkäyttäjä"
699
+
700
+ #: my-calendar-settings.php:158
701
+ msgid "Do you want to display the author name on events?"
702
+ msgstr "Haluatko näyttää tapahtuman julkaisijan nimen tapahtumien yhteydessä?"
703
+
704
+ #: my-calendar-settings.php:159
705
+ #: my-calendar-settings.php:168
706
+ msgid "Yes"
707
+ msgstr "Kyllä"
708
+
709
+ #: my-calendar-settings.php:160
710
+ #: my-calendar-settings.php:169
711
+ msgid "No"
712
+ msgstr "Ei"
713
+
714
+ #: my-calendar-settings.php:164
715
+ msgid "Show Heading for Calendar"
716
+ msgstr "Näytä otsikko kalenterille"
717
+
718
+ #: my-calendar-settings.php:167
719
+ msgid "Display a jumpbox for changing month and year quickly?"
720
+ msgstr "Näytetäänkö hyppylaatikko, jolla voit muuttaa tapahtuman kuukauden ja vuoden nopeasti?"
721
+
722
+ #: my-calendar-settings.php:173
723
+ msgid "In list mode, show how many months of events at a time:"
724
+ msgstr "Kuinka monen kuukauden tapahtumat näytetään listanäkymässä?"
725
+
726
+ #: my-calendar-settings.php:176
727
+ msgid "Date format in list mode"
728
+ msgstr "Päivämäärän muoto listanäkymässä"
729
+
730
+ #: my-calendar-settings.php:177
731
+ msgid "Date format uses the same syntax as the <a href=\"http://php.net/date\">PHP <code>date()</code> function</a>. Save option to update sample output."
732
+ msgstr "Päivämäärän muoto käyttää samaa syntaksia kuin <a href=\"http://php.net/date\">PHP <code>date()</code> funktio</a>. Tallenne niin näet esimerkin oikeassa muodossa."
733
+
734
+ #: my-calendar-settings.php:180
735
+ msgid "Show Link to Google Map (when sufficient address information is available.)"
736
+ msgstr "Näytä linkki Google Karttoihin (vain kun osoitetiedot ovat saatavilla)"
737
+
738
+ #: my-calendar-settings.php:181
739
+ msgid "Show Event Address in Details"
740
+ msgstr "Näytä tapahtuman osoite yksityiskohtaisten tietojen joukossa"
741
+
742
+ #: my-calendar-settings.php:185
743
+ msgid "Save Settings"
744
+ msgstr "Tallenna asetukset"
745
+
746
+ #: my-calendar-styles.php:36
747
+ msgid "Style Settings saved"
748
+ msgstr "Tyyliasetukset tallennettu"
749
+
750
+ #: my-calendar-styles.php:54
751
+ msgid "My Calendar Styles"
752
+ msgstr "My Calendar tyylit"
753
+
754
+ #: my-calendar-styles.php:58
755
+ msgid "Calendar Style Settings"
756
+ msgstr "Kalenterin tyyliasetukset"
757
+
758
+ #: my-calendar-styles.php:62
759
+ msgid "CSS Style Options"
760
+ msgstr "CSS-tyyliasetukset"
761
+
762
+ #: my-calendar-styles.php:64
763
+ msgid "Reset the My Calendar stylesheet to the default"
764
+ msgstr "Palauta My Calendar oletusasetukset"
765
+
766
+ #: my-calendar-styles.php:64
767
+ msgid "Disable My Calendar Stylesheet"
768
+ msgstr "Älä käytä My Calendar tyylisivua"
769
+
770
+ #: my-calendar-styles.php:67
771
+ msgid "Edit the stylesheet for My Calendar"
772
+ msgstr "Muokkaa My Calendar tyylisivua"
773
+
774
+ #: my-calendar-styles.php:71
775
+ msgid "Calendar Behaviors: Calendar View"
776
+ msgstr "Kalenterin käyttäytyminen: kalenterinäkymä"
777
+
778
+ #: my-calendar-styles.php:73
779
+ msgid "Reset the My Calendar Calendar Javascript"
780
+ msgstr "Palauta kalenterinäkymän oletus Javascript"
781
+
782
+ #: my-calendar-styles.php:73
783
+ msgid "Disable Calendar Javascript Effects"
784
+ msgstr "Älä käytä kalenterinäkymän Javascript efektejä"
785
+
786
+ #: my-calendar-styles.php:76
787
+ msgid "Edit the jQuery scripts for My Calendar in Calendar format"
788
+ msgstr "Muokkaa kalenterinäkymän jQuery-skriptejä"
789
+
790
+ #: my-calendar-styles.php:80
791
+ msgid "Calendar Behaviors: List View"
792
+ msgstr "Kalenterin käyttäytyminen: listanäkymä"
793
+
794
+ #: my-calendar-styles.php:82
795
+ msgid "Reset the My Calendar List Javascript"
796
+ msgstr "Palauta listanäkymän oletus Javascript"
797
+
798
+ #: my-calendar-styles.php:82
799
+ msgid "Disable List Javascript Effects"
800
+ msgstr "Älä käytä listanäkymän Javascript efektejä"
801
+
802
+ #: my-calendar-styles.php:85
803
+ msgid "Edit the jQuery scripts for My Calendar in List format"
804
+ msgstr "Muokkaa listanäkymän jQuery-skriptejä"
805
+
806
+ #: my-calendar-styles.php:89
807
+ msgid "Save"
808
+ msgstr "Tallenna"
809
+
810
+ #: my-calendar-widgets.php:11
811
+ #: my-calendar-widgets.php:42
812
+ #: my-calendar-widgets.php:43
813
+ msgid "Today's Events"
814
+ msgstr "Tapahtumat tänään"
815
+
816
+ #: my-calendar-widgets.php:36
817
+ #: my-calendar-widgets.php:117
818
+ msgid "Template"
819
+ msgstr "Kaava"
820
+
821
+ #: my-calendar-widgets.php:56
822
+ #: my-calendar-widgets.php:143
823
+ #: my-calendar-widgets.php:144
824
+ msgid "Upcoming Events"
825
+ msgstr "Tulevat tapahtumat"
826
+
827
+ #: my-calendar-widgets.php:121
828
+ msgid "Widget Options"
829
+ msgstr "Vimpaimen asetukset"
830
+
831
+ #: my-calendar-widgets.php:123
832
+ msgid "Display upcoming events by:"
833
+ msgstr "Tapahtumien näyttölogiikka"
834
+
835
+ #: my-calendar-widgets.php:124
836
+ msgid "Events (e.g. 2 past, 3 future)"
837
+ msgstr "Tapahtumat (esim. 2 mennyttä, 3 tulevaa)"
838
+
839
+ #: my-calendar-widgets.php:125
840
+ msgid "Dates (e.g. 4 days past, 5 forward)"
841
+ msgstr "Päivät (esim. 4 viimeisintä, 5 tulevaa)"
842
+
843
+ #: my-calendar-widgets.php:129
844
+ msgid "events into the future;"
845
+ msgstr "tulevaa tapahtumaa, "
846
+
847
+ #: my-calendar-widgets.php:130
848
+ msgid "events from the past"
849
+ msgstr "mennyttä tapahtumaa"
850
+
851
+ #: my-calendar-widgets.php:133
852
+ msgid "days into the future;"
853
+ msgstr "tulevaa päivää"
854
+
855
+ #: my-calendar-widgets.php:134
856
+ msgid "days from the past"
857
+ msgstr "mennyttä päivää"
858
+
859
+ #: my-calendar-widgets.php:137
860
+ msgid "Show only this category:"
861
+ msgstr "näytä vain tästä luokasta (nimi tai id):"
862
+
863
+ #: my-calendar-widgets.php:250
864
+ msgid "There are no events currently scheduled."
865
+ msgstr "Tapahtumia ei juuri nyt ole."
866
+
867
+ #: my-calendar.php:48
868
+ #: my-calendar.php:133
869
+ msgid "Settings"
870
+ msgstr "Asetukset"
871
+
872
+ #: my-calendar.php:69
873
+ msgid "Get Support"
874
+ msgstr "Tuki"
875
+
876
+ #: my-calendar.php:70
877
+ msgid "Make a Donation"
878
+ msgstr "Tee lahjoitus"
879
+
880
+ #. #-#-#-#-# plugin.pot (My Calendar 1.3.0) #-#-#-#-#
881
+ #. Plugin Name of the plugin/theme
882
+ #: my-calendar.php:124
883
+ msgid "My Calendar"
884
+ msgstr "Kalenteri"
885
+
886
+ #: my-calendar.php:127
887
+ msgid "Add/Edit Events"
888
+ msgstr "Lisää/muokkaa tapahtumia"
889
+
890
+ #: my-calendar.php:134
891
+ msgid "Style Editor"
892
+ msgstr "Tyyliasetukset"
893
+
894
+ #: my-calendar.php:135
895
+ msgid "My Calendar Help"
896
+ msgstr "My Calendar opastus"
897
+
898
+ #: my-calendar.php:135
899
+ msgid "Help"
900
+ msgstr "Opastus"
901
+
902
+ #: my-calendar.php:833
903
+ #: my-calendar.php:837
904
+ #: my-calendar.php:847
905
+ #: my-calendar.php:849
906
+ msgid "Next Events"
907
+ msgstr "Seuraavat tapahtumat"
908
+
909
+ #: my-calendar.php:862
910
+ #: my-calendar.php:866
911
+ #: my-calendar.php:876
912
+ #: my-calendar.php:878
913
+ msgid "Previous Events"
914
+ msgstr "Edelliset tapahtumat"
915
+
916
+ #: my-calendar.php:966
917
+ msgid "Event Details"
918
+ msgstr "Tapahtuman tiedot"
919
+
920
+ #: my-calendar.php:972
921
+ msgid "Not Applicable"
922
+ msgstr "Ei saatavilla"
923
+
924
+ #: my-calendar.php:980
925
+ msgid "Posted by"
926
+ msgstr "Julkaisija: "
927
+
928
+ #: my-calendar.php:1659
929
+ msgid "Month"
930
+ msgstr "Kuukausi"
931
+
932
+ #: my-calendar.php:1660
933
+ #: my-calendar.php:1723
934
+ msgid "January"
935
+ msgstr "tammikuu"
936
+
937
+ #: my-calendar.php:1661
938
+ #: my-calendar.php:1723
939
+ msgid "February"
940
+ msgstr "helmikuu"
941
+
942
+ #: my-calendar.php:1662
943
+ #: my-calendar.php:1723
944
+ msgid "March"
945
+ msgstr "maaliskuu"
946
+
947
+ #: my-calendar.php:1663
948
+ #: my-calendar.php:1723
949
+ msgid "April"
950
+ msgstr "huhtikuu"
951
+
952
+ #: my-calendar.php:1664
953
+ #: my-calendar.php:1723
954
+ msgid "May"
955
+ msgstr "toukokuu"
956
+
957
+ #: my-calendar.php:1665
958
+ #: my-calendar.php:1723
959
+ msgid "June"
960
+ msgstr "kesäkuu"
961
+
962
+ #: my-calendar.php:1666
963
+ #: my-calendar.php:1723
964
+ msgid "July"
965
+ msgstr "heinäkuu"
966
+
967
+ #: my-calendar.php:1667
968
+ #: my-calendar.php:1723
969
+ msgid "August"
970
+ msgstr "elokuu"
971
+
972
+ #: my-calendar.php:1668
973
+ #: my-calendar.php:1723
974
+ msgid "September"
975
+ msgstr "syyskuu"
976
+
977
+ #: my-calendar.php:1669
978
+ #: my-calendar.php:1723
979
+ msgid "October"
980
+ msgstr "lokakuu"
981
+
982
+ #: my-calendar.php:1670
983
+ #: my-calendar.php:1723
984
+ msgid "November"
985
+ msgstr "marraskuu"
986
+
987
+ #: my-calendar.php:1671
988
+ #: my-calendar.php:1723
989
+ msgid "December"
990
+ msgstr "joulukuu"
991
+
992
+ #: my-calendar.php:1673
993
+ msgid "Year"
994
+ msgstr "Vuosi"
995
+
996
+ #: my-calendar.php:1698
997
+ msgid "Go"
998
+ msgstr "Mene"
999
+
1000
+ #: my-calendar.php:1716
1001
+ #: my-calendar.php:1719
1002
+ msgid "<abbr title=\"Sunday\">Sun</abbr>"
1003
+ msgstr "<abbr title=\"Sunnuntai\">Su</abbr>"
1004
+
1005
+ #: my-calendar.php:1716
1006
+ #: my-calendar.php:1719
1007
+ msgid "<abbr title=\"Monday\">Mon</abbr>"
1008
+ msgstr "<abbr title=\"Maanantai\">Ma</abbr>"
1009
+
1010
+ #: my-calendar.php:1716
1011
+ #: my-calendar.php:1719
1012
+ msgid "<abbr title=\"Tuesday\">Tues</abbr>"
1013
+ msgstr "<abbr title=\"Tiistai\">Ti</abbr>"
1014
+
1015
+ #: my-calendar.php:1716
1016
+ #: my-calendar.php:1719
1017
+ msgid "<abbr title=\"Wednesday\">Wed</abbr>"
1018
+ msgstr "<abbr title=\"Keskiviikko\">Ke</abbr>"
1019
+
1020
+ #: my-calendar.php:1716
1021
+ #: my-calendar.php:1719
1022
+ msgid "<abbr title=\"Thursday\">Thur</abbr>"
1023
+ msgstr "<abbr title=\"Torstai\">To</abbr>"
1024
+
1025
+ #: my-calendar.php:1716
1026
+ #: my-calendar.php:1719
1027
+ msgid "<abbr title=\"Friday\">Fri</abbr>"
1028
+ msgstr "<abbr title=\"Perjantai\">Pe</abbr>"
1029
+
1030
+ #: my-calendar.php:1716
1031
+ #: my-calendar.php:1719
1032
+ msgid "<abbr title=\"Saturday\">Sat</abbr>"
1033
+ msgstr "<abbr title=\"Lauantai\">La</abbr>"
1034
+
1035
+ #: my-calendar.php:1778
1036
+ msgid "and"
1037
+ msgstr "ja"
1038
+
1039
+ #: my-calendar.php:1806
1040
+ #: my-calendar.php:1810
1041
+ msgid "Calendar"
1042
+ msgstr "Kalenteri"
1043
+
1044
+ #: my-calendar.php:1814
1045
+ msgid "Events in"
1046
+ msgstr "Tapahtumat"
1047
+
1048
+ #: my-calendar.php:1923
1049
+ msgid "There are no events scheduled during this period."
1050
+ msgstr "Tällä aikavälillä ei ole tapahtumia."
1051
+
1052
+ #: my-calendar.php:1933
1053
+ msgid "Category Key"
1054
+ msgstr "Luokan avain"
1055
+
1056
+ #. Plugin URI of the plugin/theme
1057
+ msgid "http://www.joedolson.com/articles/my-calendar/"
1058
+ msgstr "http://www.joedolson.com/articles/my-calendar/"
1059
+
1060
+ #. Description of the plugin/theme
1061
+ msgid "Accessible WordPress event calendar plugin. Show events from multiple calendars on pages, in posts, or in widgets."
1062
+ msgstr "Tapahtumakalenteri Wordpressiin. Näytä tapahtumia useasta eri kalenterista sivuilla, artikkeleissa tai vimpaimissa."
1063
+
1064
+ #. Author of the plugin/theme
1065
+ msgid "Joseph C Dolson"
1066
+ msgstr "Joseph C Dolson"
1067
+
1068
+ #. Author URI of the plugin/theme
1069
+ msgid "http://www.joedolson.com"
1070
+ msgstr "http://www.joedolson.com"
1071
+
my-calendar-help.php CHANGED
@@ -15,14 +15,14 @@ function my_calendar_help() {
15
  <li><code>[my_calendar]</code><br />
16
  <?php _e('This basic shortcode will show the calendar on a post or page including all categories and the category key, in a traditional month-by-month format.','my-calendar'); ?>
17
  </li>
18
- <li><code>[my_calendar category="General" format="list" showkey="no"]</code><br />
19
- <?php _e('The shortcode supports three attributes, <code>category</code>, <code>format</code> and <code>showkey</code>. There is currently only one alternate option for <code>format</code> &mdash; <code>list</code> &mdash; which will show the calendar in a list format, skipping dates without any events. The <code>category</code> attribute requires either the name of or ID number one of your event categories (the name is case-sensitive). This will show a calendar only including events in that category. Setting <code>showkey</code> to <code>no</code> will prevent the category key from being displayed &mdash; this can be useful with single-category output.','my-calendar'); ?>
20
  </li>
21
- <li><code>[my_calendar_upcoming before="3" after="3" type="event" category="General"]</code><br />
22
- <?php _e('This shortcode displays the output of the Upcoming Events widget. Without attributes, it will display using the settings in your widget; the attributes are used to override the widget settings.The <code>before</code> and <code>after</code> attributes should be numbers; the <code>type</code> attribute can be either "event" or "date", and the <code>category</code> attribute works the same way as the category attribute on the main calendar shortcode.','my-calendar'); ?>
23
  </li>
24
- <li><code>[my_calendar_today category="General"]</code><br />
25
- <?php _e('Predictably enough, this shortcode displays the output of the Today\'s Events widget, with one configurable category attribute.','my-calendar'); ?>
26
  </li>
27
  </ul>
28
  </div>
15
  <li><code>[my_calendar]</code><br />
16
  <?php _e('This basic shortcode will show the calendar on a post or page including all categories and the category key, in a traditional month-by-month format.','my-calendar'); ?>
17
  </li>
18
+ <li><code>[my_calendar category="General|Other" format="list" showkey="no"]</code><br />
19
+ <?php _e('The shortcode supports three attributes, <code>category</code>, <code>format</code> and <code>showkey</code>. There is currently only one alternate option for <code>format</code> &mdash; <code>list</code> &mdash; which will show the calendar in a list format, skipping dates without any events. The <code>category</code> attribute requires either the name of or ID number one of your event categories (the name is case-sensitive). This will show a calendar only including events in that category. Multiple categories can be specified by separating the category names or IDs using the pipe character: <code>|</code>. Setting <code>showkey</code> to <code>no</code> will prevent the category key from being displayed &mdash; this can be useful with single-category output.','my-calendar'); ?>
20
  </li>
21
+ <li><code>[my_calendar_upcoming before="3" after="3" type="event" category="General" template="{title} {date}"]</code><br />
22
+ <?php _e('This shortcode displays the output of the Upcoming Events widget. Without attributes, it will display using the settings in your widget; the attributes are used to override the widget settings. The <code>before</code> and <code>after</code> attributes should be numbers; the <code>type</code> attribute can be either "event" or "days", and the <code>category</code> attribute works the same way as the category attribute on the main calendar shortcode. Templates work using the template codes listed below.','my-calendar'); ?>
23
  </li>
24
+ <li><code>[my_calendar_today category="" template="{title} {date}"]</code><br />
25
+ <?php _e('Predictably enough, this shortcode displays the output of the Today\'s Events widget, with two configurable attributes: category and template.','my-calendar'); ?>
26
  </li>
27
  </ul>
28
  </div>
my-calendar-locations.php ADDED
@@ -0,0 +1,164 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ // Function to handle the management of locations
3
+
4
+ function my_calendar_manage_locations() {
5
+ global $wpdb;
6
+
7
+ // My Calendar must be installed and upgraded before this will work
8
+ check_my_calendar();
9
+
10
+
11
+ ?>
12
+ <div class="wrap">
13
+ <?php
14
+ // We do some checking to see what we're doing
15
+ if (isset($_POST['mode']) && $_POST['mode'] == 'add') {
16
+ $sql = "INSERT INTO " . MY_CALENDAR_LOCATIONS_TABLE . " SET location_label='".mysql_real_escape_string($_POST['location_label'])."', location_street='".mysql_real_escape_string($_POST['location_street'])."', location_street2='".mysql_real_escape_string($_POST['location_street2'])."', location_city='".mysql_real_escape_string($_POST['location_city'])."', location_state='".mysql_real_escape_string($_POST['location_state'])."', location_postcode='".mysql_real_escape_string($_POST['location_postcode'])."', location_country='".mysql_real_escape_string($_POST['location_country'])."'";
17
+ $wpdb->get_results($sql);
18
+ echo "<div class=\"updated\"><p><strong>".__('Location added successfully','my-calendar')."</strong></p></div>";
19
+ } else if (isset($_GET['mode']) && isset($_GET['location_id']) && $_GET['mode'] == 'delete') {
20
+ $sql = "DELETE FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id=".mysql_real_escape_string($_GET['location_id']);
21
+ $wpdb->get_results($sql);
22
+ echo "<div class=\"updated\"><p><strong>".__('Location deleted successfully','my-calendar')."</strong></p></div>";
23
+ } else if (isset($_GET['mode']) && isset($_GET['location_id']) && $_GET['mode'] == 'edit' && !isset($_POST['mode'])) {
24
+ $sql = "SELECT * FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id=".mysql_real_escape_string($_GET['location_id']);
25
+ $cur_loc = $wpdb->get_row($sql);
26
+ ?>
27
+ <h2><?php _e('Edit Location','my-calendar'); ?></h2>
28
+ <?php jd_show_support_box(); ?>
29
+ <div id="poststuff" class="jd-my-calendar">
30
+ <div class="postbox">
31
+ <h3><?php _e('Location Editor','my-calendar'); ?></h3>
32
+ <div class="inside">
33
+ <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations">
34
+ <div>
35
+ <input type="hidden" name="mode" value="edit" />
36
+ <input type="hidden" name="location_id" value="<?php echo $cur_loc->location_id ?>" />
37
+ </div>
38
+ <fieldset>
39
+ <legend>Event Location</legend>
40
+ <p>
41
+ <?php _e('All location fields are optional: <em>insufficient information may result in an inaccurate map</em>.','my-calendar'); ?>
42
+ </p>
43
+ <p>
44
+ <label for="location_label"><?php _e('Name of Location (e.g. <em>Joe\'s Bar and Grill</em>)','my-calendar'); ?></label> <input type="text" id="location_label" name="location_label" class="input" size="40" value="<?php if ( !empty($cur_loc) ) echo htmlspecialchars(stripslashes($cur_loc->location_label)); ?>" />
45
+ </p>
46
+ <p>
47
+ <label for="location_street"><?php _e('Street Address','my-calendar'); ?></label> <input type="text" id="location_street" name="location_street" class="input" size="40" value="<?php if ( !empty($cur_loc) ) echo htmlspecialchars(stripslashes($cur_loc->location_street)); ?>" />
48
+ </p>
49
+ <p>
50
+ <label for="location_street2"><?php _e('Street Address (2)','my-calendar'); ?></label> <input type="text" id="location_street2" name="location_street2" class="input" size="40" value="<?php if ( !empty($cur_loc) ) echo htmlspecialchars(stripslashes($cur_loc->location_street2)); ?>" />
51
+ </p>
52
+ <p>
53
+ <label for="location_city"><?php _e('City','my-calendar'); ?></label> <input type="text" id="location_city" name="location_city" class="input" size="40" value="<?php if ( !empty($cur_loc) ) echo htmlspecialchars(stripslashes($cur_loc->location_city)); ?>" /> <label for="location_state"><?php _e('State/Province','my-calendar'); ?></label> <input type="text" id="location_state" name="location_state" class="input" size="10" value="<?php if ( !empty($cur_loc) ) echo htmlspecialchars($cur_loc->location_state); ?>" /> <label for="location_postcode"><?php _e('Postal Code','my-calendar'); ?></label> <input type="text" id="location_postcode" name="location_postcode" class="input" size="10" value="<?php if ( !empty($cur_loc) ) echo htmlspecialchars($cur_loc->location_postcode); ?>" />
54
+ </p>
55
+ <p>
56
+ <label for="location_country"><?php _e('Country','my-calendar'); ?></label> <input type="text" id="location_country" name="location_country" class="input" size="10" value="<?php if ( !empty($cur_loc) ) echo htmlspecialchars(stripslashes($cur_loc->location_country)); ?>" />
57
+ </p>
58
+ </fieldset>
59
+ <p>
60
+ <input type="submit" name="save" class="button-primary" value="<?php _e('Save Changes','my-calendar'); ?> &raquo;" />
61
+ </p>
62
+ </form>
63
+ </div>
64
+ </div>
65
+ </div>
66
+ <?php
67
+ } else if (isset($_POST['mode']) && isset($_POST['location_id']) && isset($_POST['location_label']) && isset($_POST['location_street']) && $_POST['mode'] == 'edit') {
68
+ $sql = "UPDATE " . MY_CALENDAR_LOCATIONS_TABLE . " SET location_label='".mysql_real_escape_string($_POST['location_label'])."', location_street='".mysql_real_escape_string($_POST['location_street'])."', location_street2='".mysql_real_escape_string($_POST['location_street2'])."', location_city='".mysql_real_escape_string($_POST['location_city'])."', location_state='".mysql_real_escape_string($_POST['location_state'])."', location_postcode='".mysql_real_escape_string($_POST['location_postcode'])."', location_country='".mysql_real_escape_string($_POST['location_country'])."' WHERE location_id=".mysql_real_escape_string($_POST['location_id']);
69
+ $wpdb->get_results($sql);
70
+ echo "<div class=\"updated\"><p><strong>".__('Location edited successfully','my-calendar')."</strong></p></div>";
71
+ }
72
+
73
+ if ($_GET['mode'] != 'edit' || $_POST['mode'] == 'edit') {
74
+ ?>
75
+
76
+ <h2><?php _e('Add Location','my-calendar'); ?></h2>
77
+ <?php jd_show_support_box(); ?>
78
+ <div id="poststuff" class="jd-my-calendar">
79
+ <div class="postbox">
80
+ <h3><?php _e('Add New Location','my-calendar'); ?></h3>
81
+ <div class="inside">
82
+ <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations">
83
+ <div>
84
+ <input type="hidden" name="mode" value="add" />
85
+ <input type="hidden" name="location_id" value="" />
86
+ </div>
87
+ <fieldset>
88
+ <legend>Event Location</legend>
89
+ <p>
90
+ <?php _e('All location fields are optional: <em>insufficient information may result in an inaccurate map</em>.','my-calendar'); ?>
91
+ </p>
92
+ <p>
93
+ <label for="location_label"><?php _e('Name of Location (e.g. <em>Joe\'s Bar and Grill</em>)','my-calendar'); ?></label> <input type="text" id="location_label" name="location_label" class="input" size="40" value="" />
94
+ </p>
95
+ <p>
96
+ <label for="location_street"><?php _e('Street Address','my-calendar'); ?></label> <input type="text" id="location_street" name="location_street" class="input" size="40" value="" />
97
+ </p>
98
+ <p>
99
+ <label for="location_street2"><?php _e('Street Address (2)','my-calendar'); ?></label> <input type="text" id="location_street2" name="location_street2" class="input" size="40" value="" />
100
+ </p>
101
+ <p>
102
+ <label for="location_city"><?php _e('City','my-calendar'); ?></label> <input type="text" id="location_city" name="location_city" class="input" size="40" value="" /> <label for="location_state"><?php _e('State/Province','my-calendar'); ?></label> <input type="text" id="location_state" name="location_state" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->location_state); ?>" /> <label for="location_postcode"><?php _e('Postal Code','my-calendar'); ?></label> <input type="text" id="location_postcode" name="location_postcode" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->location_postcode); ?>" />
103
+ </p>
104
+ <p>
105
+ <label for="location_country"><?php _e('Country','my-calendar'); ?></label> <input type="text" id="location_country" name="location_country" class="input" size="10" value="" />
106
+ </p>
107
+ </fieldset>
108
+ <p>
109
+ <input type="submit" name="save" class="button-primary" value="<?php _e('Add Location','my-calendar'); ?> &raquo;" />
110
+ </p>
111
+ </form>
112
+ </div>
113
+ </div>
114
+ </div>
115
+ <h2><?php _e('Manage Locations','my-calendar'); ?></h2>
116
+ <?php
117
+
118
+ // We pull the locations from the database
119
+ $locations = $wpdb->get_results("SELECT * FROM " . MY_CALENDAR_LOCATIONS_TABLE . " ORDER BY location_id ASC");
120
+
121
+ if ( !empty($locations) )
122
+ {
123
+ ?>
124
+ <table class="widefat page fixed" id="my-calendar-location-listing" summary="Manage Locations Listing">
125
+ <thead>
126
+ <tr>
127
+ <th class="manage-column" scope="col"><?php _e('ID','my-calendar') ?></th>
128
+ <th class="manage-column" scope="col"><?php _e('Location','my-calendar') ?></th>
129
+ <th class="manage-column" scope="col"><?php _e('Edit','my-calendar') ?></th>
130
+ <th class="manage-column" scope="col"><?php _e('Delete','my-calendar') ?></th>
131
+ </tr>
132
+ </thead>
133
+ <?php
134
+ $class = '';
135
+ foreach ( $locations as $location ) {
136
+ $class = ($class == 'alternate') ? '' : 'alternate';
137
+ ?>
138
+ <tr class="<?php echo $class; ?>">
139
+ <th scope="row"><?php echo $location->location_id; ?></th>
140
+ <td><?php echo stripslashes($location->location_label) . "<br />" . stripslashes($location->location_street) . "<br />" . stripslashes($location->location_street2) . "<br />" . stripslashes($location->location_city) . ", " . stripslashes($location->location_state) . " " . stripslashes($location->location_postcode); ?></td>
141
+ <td><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations&amp;mode=edit&amp;location_id=<?php echo $location->location_id;?>" class='edit'><?php echo __('Edit','my-calendar'); ?></a></td>
142
+ <td><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations&amp;mode=delete&amp;location_id=<?php echo $category->location_id;?>" class="delete" onclick="return confirm('<?php echo __('Are you sure you want to delete this category?','my-calendar'); ?>')"><?php echo __('Delete','my-calendar'); ?></a></td>
143
+ </tr>
144
+ <?php
145
+ }
146
+ ?>
147
+ </table>
148
+ <?php
149
+ } else {
150
+ echo '<p>'.__('There are no locations in the database yet!','my-calendar').'</p>';
151
+ }
152
+ ?>
153
+ <p>
154
+ <em><?php _e('Please note: editing or deleting locations stored for re-use will have no effect on any event previously scheduled at that location. The location database exists purely as a shorthand method to enter frequently used locations into event records.','my-calendar'); ?>
155
+ </p>
156
+ </div>
157
+
158
+ <?php
159
+ }
160
+ ?>
161
+ </div>
162
+ <?php
163
+ }
164
+ ?>
my-calendar-settings.php CHANGED
@@ -1,16 +1,18 @@
1
  <?php
2
  // Display the admin configuration page
3
 
4
- if ($_POST['import'] == 'true') {
5
- my_calendar_import();
6
- }
7
-
8
  function my_calendar_import() {
9
  if ( get_option('ko_calendar_imported') != 'true' ) {
10
  global $wpdb;
 
11
  define('KO_CALENDAR_TABLE', $wpdb->prefix . 'calendar');
12
  define('KO_CALENDAR_CATS', $wpdb->prefix . 'calendar_categories');
13
  $events = $wpdb->get_results("SELECT * FROM " . KO_CALENDAR_TABLE, 'ARRAY_A');
 
14
  $sql = "";
15
  foreach ($events as $key) {
16
  $title = mysql_real_escape_string($key['event_title']);
@@ -24,7 +26,7 @@ global $wpdb;
24
  $category = mysql_real_escape_string($key['event_category']);
25
  $linky = mysql_real_escape_string($key['event_link']);
26
 
27
- $sql .= "INSERT INTO " . MY_CALENDAR_TABLE . " SET
28
  event_title='" . ($title) . "',
29
  event_desc='" . ($desc) . "',
30
  event_begin='" . ($begin) . "',
@@ -34,24 +36,33 @@ global $wpdb;
34
  event_repeats='" . ($repeats) . "',
35
  event_author=".($author).",
36
  event_category=".($category).",
37
- event_link='".($linky)."';";
 
 
 
38
  }
39
  $cats = $wpdb->get_results("SELECT * FROM " . KO_CALENDAR_CATS, 'ARRAY_A');
 
 
40
  $catsql = "";
41
  foreach ($cats as $key) {
42
  $name = mysql_real_escape_string($key['category_name']);
43
  $color = mysql_real_escape_string($key['category_colour']);
44
  $id = mysql_real_escape_string($key['category_id']);
45
 
46
- if ($id != '1') {
47
- $catsql .= "INSERT INTO " . MY_CALENDAR_CATEGORIES_TABLE . " SET
48
- category_id='".$id."',
49
- category_name='".$name."',
50
- category_color='".$color."';";
51
- }
52
- }
53
- $cats_results = $wpdb->query($catsql);
54
- $events_results = $wpdb->query($sql);
 
 
 
 
55
  if ($cats_results !== false) {
56
  $message = __('Categories imported successfully.','my-calendar');
57
  } else {
@@ -62,19 +73,21 @@ global $wpdb;
62
  } else {
63
  $e_message = __('Events not imported.','my-calendar');
64
  }
65
- $return_value = "<div id='message' class='updated fade'><p><strong>$message</strong><br /><strong>$e_message</strong></p></div>";
66
  echo $return_value;
67
- add_option( 'ko_calendar_imported','true' );
 
 
68
  }
69
  }
70
 
71
  function edit_my_calendar_config() {
72
- global $wpdb, $initial_style;
73
 
74
  // We can't use this page unless My Calendar is installed/upgraded
75
  check_my_calendar();
76
 
77
- if (isset($_POST['permissions']) && isset($_POST['style'])) {
78
 
79
  if ($_POST['permissions'] == 'subscriber') { $new_perms = 'read'; }
80
  else if ($_POST['permissions'] == 'contributor') { $new_perms = 'edit_posts'; }
@@ -83,45 +96,38 @@ function edit_my_calendar_config() {
83
  else if ($_POST['permissions'] == 'admin') { $new_perms = 'manage_options'; }
84
  else { $new_perms = 'manage_options'; }
85
 
86
- $my_calendar_style = $_POST['style'];
87
  $my_calendar_show_months = (int) $_POST['my_calendar_show_months'];
88
  $my_calendar_date_format = $_POST['my_calendar_date_format'];
89
 
90
  $disp_author = ($_POST['display_author']=='on')?'true':'false';
91
  $disp_jump = ($_POST['display_jump']=='on')?'true':'false';
92
- $use_styles = ($_POST['use_styles']=='on')?'true':'false';
93
  $my_calendar_show_map = ($_POST['my_calendar_show_map']=='on')?'true':'false';
94
  $my_calendar_show_address = ($_POST['my_calendar_show_address']=='on')?'true':'false';
 
 
 
 
95
 
96
  update_option('can_manage_events',$new_perms);
97
- update_option('my_calendar_style',$my_calendar_style);
98
  update_option('display_author',$disp_author);
99
  update_option('display_jump',$disp_jump);
100
- update_option('my_calendar_use_styles',$use_styles);
101
  update_option('my_calendar_show_months',$my_calendar_show_months);
102
  update_option('my_calendar_date_format',$my_calendar_date_format);
103
  update_option('my_calendar_show_map',$my_calendar_show_map);
104
  update_option('my_calendar_show_address',$my_calendar_show_address);
105
- update_option('calendar_javascript', (int) $_POST['calendar_javascript']);
106
- update_option('list_javascript', (int) $_POST['list_javascript']);
107
- // Check to see if we are replacing the original style
108
-
109
- if ( $_POST['reset_styles'] == 'on') {
110
- update_option('my_calendar_style',$initial_style);
111
- }
112
  echo "<div class=\"updated\"><p><strong>".__('Settings saved','my-calendar').".</strong></p></div>";
113
  }
114
 
115
  // Pull the values out of the database that we need for the form
116
  $allowed_group = get_option('can_manage_events');
117
- $my_calendar_style = stripcslashes(get_option('my_calendar_style'));
118
- $my_calendar_use_styles = get_option('my_calendar_use_styles');
119
  $my_calendar_show_months = get_option('my_calendar_show_months');
120
  $my_calendar_show_map = get_option('my_calendar_show_map');
121
  $my_calendar_show_address = get_option('my_calendar_show_address');
122
  $disp_author = get_option('display_author');
123
- $calendar_javascript = get_option('calendar_javascript');
124
- $list_javascript = get_option('list_javascript');
125
  // checkbox
126
  $disp_jump = get_option('display_jump');
127
  //checkbox
@@ -144,62 +150,66 @@ function edit_my_calendar_config() {
144
  <div class="inside">
145
  <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-config">
146
  <fieldset>
147
- <legend><?php _e('Primary Calendar Options','my-calendar'); ?></legend>
148
  <p>
149
  <label for="permissions"><?php _e('Choose the lowest user group that may manage events','my-calendar'); ?></label> <select id="permissions" name="permissions">
150
- <option value="subscriber"<?php echo $subscriber_selected ?>><?php _e('Subscriber','my-calendar')?></option>
151
- <option value="contributor" <?php echo $contributor_selected ?>><?php _e('Contributor','my-calendar')?></option>
152
- <option value="author" <?php echo $author_selected ?>><?php _e('Author','my-calendar')?></option>
153
- <option value="editor" <?php echo $editor_selected ?>><?php _e('Editor','my-calendar')?></option>
154
- <option value="admin" <?php echo $admin_selected ?>><?php _e('Administrator','my-calendar')?></option>
155
- </select>
156
  </p>
 
 
 
157
  <p>
158
  <label for="display_author"><?php _e('Do you want to display the author name on events?','my-calendar'); ?></label> <select id="display_author" name="display_author">
159
- <option value="on" <?php jd_cal_checkSelect('display_author','true'); ?>><?php _e('Yes','my-calendar') ?></option>
160
- <option value="off" <?php jd_cal_checkSelect('display_author','false'); ?>><?php _e('No','my-calendar') ?></option>
161
- </select>
162
  </p>
 
163
  <p>
164
  <label for="display_jump"><?php _e('Display a jumpbox for changing month and year quickly?','my-calendar'); ?></label> <select id="display_jump" name="display_jump">
165
- <option value="on" <?php jd_cal_checkSelect('display_jump','true'); ?>><?php _e('Yes','my-calendar') ?></option>
166
- <option value="off" <?php jd_cal_checkSelect('display_jump','false'); ?>><?php _e('No','my-calendar') ?></option>
167
- </select>
168
  </p>
169
  <p>
170
  <label for="my_calendar_show_months"><?php _e('In list mode, show how many months of events at a time:','my-calendar'); ?></label> <input type="text" size="3" id="my_calendar_show_months" name="my_calendar_show_months" value="<?php echo $my_calendar_show_months; ?>" />
171
  </p>
172
  <p>
173
- <label for="my_calendar_date_format"><?php _e('Date format in list mode','my-calendar'); ?></label> <input type="text" id="my_calendar_date_format" name="my_calendar_date_format" value="<?php if ( get_option('my_calendar_date_format') == "") { echo get_option('date_format'); } else { echo get_option( 'my_calendar_date_format'); } ?>" /> Current: <?php if ( get_option('my_calendar_date_format') == '') { echo date(get_option('date_format')); } else { echo date(get_option('my_calendar_date_format')); } ?><br />
174
  <small><?php _e('Date format uses the same syntax as the <a href="http://php.net/date">PHP <code>date()</code> function</a>. Save option to update sample output.','my-calendar'); ?></small>
175
  </p>
176
  <p>
177
- <input type="checkbox" id="my_calendar_show_map" name="my_calendar_show_map" <?php jd_cal_checkCheckbox('my_calendar_show_map','true'); ?> /> <label for="my_calendar_show_map"><?php _e('Show Link to Google Map (when sufficient address information is available.)','my-calendar'); ?></label><br />
178
- <input type="checkbox" id="my_calendar_show_address" name="my_calendar_show_address" <?php jd_cal_checkCheckbox('my_calendar_show_address','true'); ?> /> <label for="my_calendar_show_address"><?php _e('Show Event Address in Details','my-calendar'); ?></label>
 
 
179
  </p>
180
- </fieldset>
181
- <fieldset>
182
- <legend><?php _e('Calendar Styles','my-calendar'); ?></legend>
183
  <p>
184
- <input type="checkbox" id="reset_styles" name="reset_styles" /> <label for="reset_styles"><?php _e('Reset the My Calendar style to default','my-calendar'); ?></label><br />
185
- <input type="checkbox" id="use_styles" name="use_styles" <?php jd_cal_checkCheckbox('my_calendar_use_styles','true'); ?> /> <label for="use_styles"><?php _e('Disable My Calendar Stylesheet','my-calendar'); ?></label>
186
- </p>
187
  <p>
188
- <label for="style"><?php _e('Edit the stylesheet for My Calendar','my-calendar'); ?></label><br /><textarea id="style" name="style" rows="10" cols="60" tabindex="2"><?php echo $my_calendar_style; ?></textarea>
189
- </p>
190
- </fieldset>
191
- <fieldset>
192
- <legend><?php _e('Calendar Behaviors','my-calendar'); ?></legend>
193
  <p>
194
- <input type="checkbox" id="list_javascript" name="list_javascript" value="1" <?php jd_cal_checkCheckbox('list_javascript',1); ?> /> <label for="list_javascript"><?php _e('Disable List Javascript Effects','my-calendar'); ?></label><br />
195
- <input type="checkbox" id="calendar_javascript" name="calendar_javascript" value="1" <?php jd_cal_checkCheckbox('calendar_javascript',1); ?>/> <label for="calendar_javascript"><?php _e('Disable Calendar Javascript Effects','my-calendar'); ?></label>
196
  </p>
197
  <p>
198
- <input type="submit" name="save" class="button-primary" value="<?php _e('Save','my-calendar'); ?> &raquo;" />
 
 
 
 
199
  </p>
200
  </form>
201
  <?php
202
- if ( get_option('ko_calendar_imported') != 'true' ) {
 
 
203
  if (function_exists('check_calendar')) {
204
  echo "<div class='import'>";
205
  echo "<p>";
@@ -209,7 +219,7 @@ if ( get_option('ko_calendar_imported') != 'true' ) {
209
  <form method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-config">
210
  <div>
211
  <input type="hidden" name="import" value="true" />
212
- <input type="submit" value="Import from Calendar" name="import-calendar" class="button-primary" />
213
  </div>
214
  </form>
215
  <?php
1
  <?php
2
  // Display the admin configuration page
3
 
4
+ if ($_POST['import'] == 'true') {
5
+ my_calendar_import();
6
+ }
7
+
8
  function my_calendar_import() {
9
  if ( get_option('ko_calendar_imported') != 'true' ) {
10
  global $wpdb;
11
+ $wpdb->hide_errors();
12
  define('KO_CALENDAR_TABLE', $wpdb->prefix . 'calendar');
13
  define('KO_CALENDAR_CATS', $wpdb->prefix . 'calendar_categories');
14
  $events = $wpdb->get_results("SELECT * FROM " . KO_CALENDAR_TABLE, 'ARRAY_A');
15
+ $wpdb->print_error();
16
  $sql = "";
17
  foreach ($events as $key) {
18
  $title = mysql_real_escape_string($key['event_title']);
26
  $category = mysql_real_escape_string($key['event_category']);
27
  $linky = mysql_real_escape_string($key['event_link']);
28
 
29
+ $sql = "INSERT INTO " . MY_CALENDAR_TABLE . " SET
30
  event_title='" . ($title) . "',
31
  event_desc='" . ($desc) . "',
32
  event_begin='" . ($begin) . "',
36
  event_repeats='" . ($repeats) . "',
37
  event_author=".($author).",
38
  event_category=".($category).",
39
+ event_link='".($linky)."';
40
+ ";
41
+ $events_results = $wpdb->query($sql);
42
+ $wpdb->print_error();
43
  }
44
  $cats = $wpdb->get_results("SELECT * FROM " . KO_CALENDAR_CATS, 'ARRAY_A');
45
+ $wpdb->print_error();
46
+
47
  $catsql = "";
48
  foreach ($cats as $key) {
49
  $name = mysql_real_escape_string($key['category_name']);
50
  $color = mysql_real_escape_string($key['category_colour']);
51
  $id = mysql_real_escape_string($key['category_id']);
52
 
53
+ $catsql = "INSERT INTO " . MY_CALENDAR_CATEGORIES_TABLE . " SET
54
+ category_id='".$id."',
55
+ category_name='".$name."',
56
+ category_color='".$color."'
57
+ ON DUPLICATE KEY UPDATE
58
+ category_name='".$name."',
59
+ category_color='".$color."';
60
+ ";
61
+ $cats_results = $wpdb->query($catsql);
62
+ $wpdb->print_error();
63
+ }
64
+
65
+
66
  if ($cats_results !== false) {
67
  $message = __('Categories imported successfully.','my-calendar');
68
  } else {
73
  } else {
74
  $e_message = __('Events not imported.','my-calendar');
75
  }
76
+ $return_value = "<div id='message' class='updated fade'><ul><li>$message</li><li>$e_message</li></ul></div>";
77
  echo $return_value;
78
+ if ( $cats_results !== false && $events_results !== false ) {
79
+ update_option( 'ko_calendar_imported','true' );
80
+ }
81
  }
82
  }
83
 
84
  function edit_my_calendar_config() {
85
+ global $wpdb;
86
 
87
  // We can't use this page unless My Calendar is installed/upgraded
88
  check_my_calendar();
89
 
90
+ if (isset($_POST['permissions'])) {
91
 
92
  if ($_POST['permissions'] == 'subscriber') { $new_perms = 'read'; }
93
  else if ($_POST['permissions'] == 'contributor') { $new_perms = 'edit_posts'; }
96
  else if ($_POST['permissions'] == 'admin') { $new_perms = 'manage_options'; }
97
  else { $new_perms = 'manage_options'; }
98
 
 
99
  $my_calendar_show_months = (int) $_POST['my_calendar_show_months'];
100
  $my_calendar_date_format = $_POST['my_calendar_date_format'];
101
 
102
  $disp_author = ($_POST['display_author']=='on')?'true':'false';
103
  $disp_jump = ($_POST['display_jump']=='on')?'true':'false';
 
104
  $my_calendar_show_map = ($_POST['my_calendar_show_map']=='on')?'true':'false';
105
  $my_calendar_show_address = ($_POST['my_calendar_show_address']=='on')?'true':'false';
106
+ $my_calendar_show_heading = ($_POST['my_calendar_show_heading']=='on')?'true':'false';
107
+ $my_calendar_notime_text = $_POST['my_calendar_notime_text'];
108
+ $my_calendar_hide_icons = ($_POST['my_calendar_hide_icons']=='on')?'true':'false';
109
+ $my_calendar_caption = $_POST['my_calendar_caption'];
110
 
111
  update_option('can_manage_events',$new_perms);
 
112
  update_option('display_author',$disp_author);
113
  update_option('display_jump',$disp_jump);
 
114
  update_option('my_calendar_show_months',$my_calendar_show_months);
115
  update_option('my_calendar_date_format',$my_calendar_date_format);
116
  update_option('my_calendar_show_map',$my_calendar_show_map);
117
  update_option('my_calendar_show_address',$my_calendar_show_address);
118
+ update_option('my_calendar_show_heading',$my_calendar_show_heading);
119
+ update_option('my_calendar_notime_text',$my_calendar_notime_text);
120
+ update_option('my_calendar_hide_icons',$my_calendar_hide_icons);
121
+ update_option('my_calendar_caption',$my_calendar_caption);
 
 
 
122
  echo "<div class=\"updated\"><p><strong>".__('Settings saved','my-calendar').".</strong></p></div>";
123
  }
124
 
125
  // Pull the values out of the database that we need for the form
126
  $allowed_group = get_option('can_manage_events');
 
 
127
  $my_calendar_show_months = get_option('my_calendar_show_months');
128
  $my_calendar_show_map = get_option('my_calendar_show_map');
129
  $my_calendar_show_address = get_option('my_calendar_show_address');
130
  $disp_author = get_option('display_author');
 
 
131
  // checkbox
132
  $disp_jump = get_option('display_jump');
133
  //checkbox
150
  <div class="inside">
151
  <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-config">
152
  <fieldset>
153
+ <legend><?php _e('Calendar Options: Management','my-calendar'); ?></legend>
154
  <p>
155
  <label for="permissions"><?php _e('Choose the lowest user group that may manage events','my-calendar'); ?></label> <select id="permissions" name="permissions">
156
+ <option value="subscriber"<?php echo $subscriber_selected ?>><?php _e('Subscriber','my-calendar')?></option>
157
+ <option value="contributor" <?php echo $contributor_selected ?>><?php _e('Contributor','my-calendar')?></option>
158
+ <option value="author" <?php echo $author_selected ?>><?php _e('Author','my-calendar')?></option>
159
+ <option value="editor" <?php echo $editor_selected ?>><?php _e('Editor','my-calendar')?></option>
160
+ <option value="admin" <?php echo $admin_selected ?>><?php _e('Administrator','my-calendar')?></option>
161
+ </select>
162
  </p>
163
+ </fieldset>
164
+ <fieldset>
165
+ <legend><?php _e('Calendar Options: Output','my-calendar'); ?></legend>
166
  <p>
167
  <label for="display_author"><?php _e('Do you want to display the author name on events?','my-calendar'); ?></label> <select id="display_author" name="display_author">
168
+ <option value="on" <?php jd_cal_checkSelect('display_author','true'); ?>><?php _e('Yes','my-calendar') ?></option>
169
+ <option value="off" <?php jd_cal_checkSelect('display_author','false'); ?>><?php _e('No','my-calendar') ?></option>
170
+ </select>
171
  </p>
172
+
173
  <p>
174
  <label for="display_jump"><?php _e('Display a jumpbox for changing month and year quickly?','my-calendar'); ?></label> <select id="display_jump" name="display_jump">
175
+ <option value="on" <?php jd_cal_checkSelect('display_jump','true'); ?>><?php _e('Yes','my-calendar') ?></option>
176
+ <option value="off" <?php jd_cal_checkSelect('display_jump','false'); ?>><?php _e('No','my-calendar') ?></option>
177
+ </select>
178
  </p>
179
  <p>
180
  <label for="my_calendar_show_months"><?php _e('In list mode, show how many months of events at a time:','my-calendar'); ?></label> <input type="text" size="3" id="my_calendar_show_months" name="my_calendar_show_months" value="<?php echo $my_calendar_show_months; ?>" />
181
  </p>
182
  <p>
183
+ <label for="my_calendar_date_format"><?php _e('Date format in list mode','my-calendar'); ?></label> <input type="text" id="my_calendar_date_format" name="my_calendar_date_format" value="<?php if ( get_option('my_calendar_date_format') == "") { echo get_option('date_format'); } else { echo get_option( 'my_calendar_date_format'); } ?>" /> Current: <?php if ( get_option('my_calendar_date_format') == '') { echo date_i18n(get_option('date_format')); } else { echo date_i18n(get_option('my_calendar_date_format')); } ?><br />
184
  <small><?php _e('Date format uses the same syntax as the <a href="http://php.net/date">PHP <code>date()</code> function</a>. Save option to update sample output.','my-calendar'); ?></small>
185
  </p>
186
  <p>
187
+ <input type="checkbox" id="my_calendar_show_heading" name="my_calendar_show_heading" <?php jd_cal_checkCheckbox('my_calendar_show_heading','true'); ?> /> <label for="my_calendar_show_heading"><?php _e('Show Heading for Calendar','my-calendar'); ?></label>
188
+ </p>
189
+ <p>
190
+ <label for="my_calendar_notime_text"><?php _e('Label for events without a specific time'); ?></label> <input type="text" id="my_calendar_notime_text" name="my_calendar_notime_text" value="<?php if ( get_option('my_calendar_notime_text') == "") { _e('N/A','my-calendar'); } else { echo stripslashes( get_option('my_calendar_notime_text') ); } ?>" />
191
  </p>
 
 
 
192
  <p>
193
+ <label for="my_calendar_caption"><?php _e('Additional caption text','my-calendar'); ?></label> <input type="text" id="my_calendar_caption" name="my_calendar_caption" value="<?php echo stripslashes( get_option('my_calendar_caption') ); ?>" /><br /><small><?php _e('The calendar caption is the text containing the displayed month and year in either list or calendar format. This text will be displayed following that existing text.'); ?></small>
194
+ </p>
 
195
  <p>
196
+ <input type="checkbox" id="my_calendar_hide_icons" name="my_calendar_hide_icons" <?php jd_cal_checkCheckbox('my_calendar_hide_icons','true'); ?> /> <label for="my_calendar_hide_icons"><?php _e('Hide category icons in output','my-calendar'); ?></label>
197
+ </p>
 
 
 
198
  <p>
199
+ <input type="checkbox" id="my_calendar_show_map" name="my_calendar_show_map" <?php jd_cal_checkCheckbox('my_calendar_show_map','true'); ?> /> <label for="my_calendar_show_map"><?php _e('Show Link to Google Map (when sufficient address information is available.)','my-calendar'); ?></label>
 
200
  </p>
201
  <p>
202
+ <input type="checkbox" id="my_calendar_show_address" name="my_calendar_show_address" <?php jd_cal_checkCheckbox('my_calendar_show_address','true'); ?> /> <label for="my_calendar_show_address"><?php _e('Show Event Address in Details','my-calendar'); ?></label>
203
+ </p>
204
+ </fieldset>
205
+ <p>
206
+ <input type="submit" name="save" class="button-primary" value="<?php _e('Save Settings','my-calendar'); ?> &raquo;" />
207
  </p>
208
  </form>
209
  <?php
210
+ //update_option( 'ko_calendar_imported','false' );
211
+
212
+ if ( get_option( 'ko_calendar_imported' ) != 'true' ) {
213
  if (function_exists('check_calendar')) {
214
  echo "<div class='import'>";
215
  echo "<p>";
219
  <form method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-config">
220
  <div>
221
  <input type="hidden" name="import" value="true" />
222
+ <input type="submit" value="<?php _e('Import from Calendar','my-calendar'); ?>" name="import-calendar" class="button-primary" />
223
  </div>
224
  </form>
225
  <?php
my-calendar-styles.php ADDED
@@ -0,0 +1,110 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ // Display the admin configuration page
3
+
4
+ function edit_my_calendar_styles() {
5
+ global $wpdb, $initial_style, $initial_listjs, $initial_caljs;
6
+
7
+ // We can't use this page unless My Calendar is installed/upgraded
8
+ check_my_calendar();
9
+
10
+ if ( isset($_POST['style'] ) ) {
11
+
12
+ $my_calendar_style = $_POST['style'];
13
+ $my_calendar_caljs = $_POST['my_calendar_caljs'];
14
+ $my_calendar_listjs = $_POST['my_calendar_listjs'];
15
+
16
+
17
+ $use_styles = ($_POST['use_styles']=='on')?'true':'false';
18
+
19
+ update_option('my_calendar_style',$my_calendar_style);
20
+ update_option('my_calendar_use_styles',$use_styles);
21
+ update_option('calendar_javascript', (int) $_POST['calendar_javascript']);
22
+ update_option('list_javascript', (int) $_POST['list_javascript']);
23
+ update_option('my_calendar_listjs',$my_calendar_listjs);
24
+ update_option('my_calendar_caljs',$my_calendar_caljs);
25
+ $my_calendar_show_css = ($_POST['my_calendar_show_css']=='')?'':$_POST['my_calendar_show_css'];
26
+ update_option('my_calendar_show_css',$my_calendar_show_css);
27
+ // Check to see if we are replacing the original style
28
+
29
+ if ( $_POST['reset_styles'] == 'on') {
30
+ update_option('my_calendar_style',$initial_style);
31
+ }
32
+ if ( $_POST['reset_caljs'] == 'on') {
33
+ update_option('my_calendar_listjs',$initial_listjs);
34
+ }
35
+ if ( $_POST['reset_listjs'] == 'on') {
36
+ update_option('my_calendar_caljs',$initial_caljs);
37
+ }
38
+ echo "<div class=\"updated\"><p><strong>".__('Style Settings saved','my-calendar').".</strong></p></div>";
39
+ }
40
+
41
+ $my_calendar_style = stripcslashes(get_option('my_calendar_style'));
42
+ $my_calendar_use_styles = get_option('my_calendar_use_styles');
43
+
44
+ $my_calendar_listjs = stripcslashes(get_option('my_calendar_listjs'));
45
+ $list_javascript = get_option('list_javascript');
46
+
47
+ $my_calendar_caljs = stripcslashes(get_option('my_calendar_caljs'));
48
+ $calendar_javascript = get_option('calendar_javascript');
49
+
50
+ $my_calendar_show_css = stripcslashes(get_option('my_calendar_show_css'));
51
+
52
+
53
+ // Now we render the form
54
+
55
+
56
+ ?>
57
+ <div class="wrap">
58
+
59
+ <h2><?php _e('My Calendar Styles','my-calendar'); ?></h2>
60
+ <?php jd_show_support_box(); ?>
61
+ <div id="poststuff" class="jd-my-calendar">
62
+ <div class="postbox">
63
+ <h3><?php _e('Calendar Style Settings','my-calendar'); ?></h3>
64
+ <div class="inside">
65
+ <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-styles">
66
+ <fieldset>
67
+ <legend><?php _e('CSS Style Options','my-calendar'); ?></legend>
68
+ <p>
69
+ <input type="checkbox" id="reset_styles" name="reset_styles" /> <label for="reset_styles"><?php _e('Reset the My Calendar stylesheet to the default','my-calendar'); ?></label> <input type="checkbox" id="use_styles" name="use_styles" <?php jd_cal_checkCheckbox('my_calendar_use_styles','true'); ?> /> <label for="use_styles"><?php _e('Disable My Calendar Stylesheet','my-calendar'); ?></label>
70
+ </p>
71
+ <p>
72
+ <label for="style"><?php _e('Edit the stylesheet for My Calendar','my-calendar'); ?></label><br /><textarea id="style" name="style" rows="30" cols="80"><?php echo $my_calendar_style; ?></textarea>
73
+ </p>
74
+ <p>
75
+ <label for="my_calendar_show_css"><?php _e('Show CSS only on these pages (comma separated page IDs)','my-calendar'); ?></label> <input type="text" id="my_calendar_show_css" name="my_calendar_show_css" value="<?php echo $my_calendar_show_css; ?>" />
76
+ </p>
77
+ </fieldset>
78
+ <fieldset>
79
+ <legend><?php _e('Calendar Behaviors: Calendar View','my-calendar'); ?></legend>
80
+ <p>
81
+ <input type="checkbox" id="reset_caljs" name="reset_caljs" /> <label for="reset_caljs"><?php _e('Reset the My Calendar Calendar Javascript','my-calendar'); ?></label> <input type="checkbox" id="calendar_javascript" name="calendar_javascript" value="1" <?php jd_cal_checkCheckbox('calendar_javascript',1); ?>/> <label for="calendar_javascript"><?php _e('Disable Calendar Javascript Effects','my-calendar'); ?></label>
82
+ </p>
83
+ <p>
84
+ <label for="calendar-javascript"><?php _e('Edit the jQuery scripts for My Calendar in Calendar format','my-calendar'); ?></label><br /><textarea id="calendar-javascript" name="my_calendar_caljs" rows="10" cols="80"><?php echo $my_calendar_caljs; ?></textarea>
85
+ </p>
86
+ </fieldset>
87
+ <fieldset>
88
+ <legend><?php _e('Calendar Behaviors: List View','my-calendar'); ?></legend>
89
+ <p>
90
+ <input type="checkbox" id="reset_listjs" name="reset_listjs" /> <label for="reset_listjs"><?php _e('Reset the My Calendar List Javascript','my-calendar'); ?></label> <input type="checkbox" id="list_javascript" name="list_javascript" value="1" <?php jd_cal_checkCheckbox('list_javascript',1); ?> /> <label for="list_javascript"><?php _e('Disable List Javascript Effects','my-calendar'); ?></label>
91
+ </p>
92
+ <p>
93
+ <label for="list-javascript"><?php _e('Edit the jQuery scripts for My Calendar in List format','my-calendar'); ?></label><br /><textarea id="list-javascript" name="my_calendar_listjs" rows="10" cols="80"><?php echo $my_calendar_listjs; ?></textarea>
94
+ </p>
95
+ </fieldset>
96
+ <p>
97
+ <input type="submit" name="save" class="button-primary" value="<?php _e('Save','my-calendar'); ?> &raquo;" />
98
+ </p>
99
+ </form>
100
+ </div>
101
+
102
+ </div>
103
+ </div>
104
+ </div>
105
+ <?php
106
+
107
+
108
+ }
109
+
110
+ ?>
my-calendar-widgets.php CHANGED
@@ -12,7 +12,7 @@ function init_my_calendar_today() {
12
  $the_events = my_calendar_todays_events();
13
  if ($the_events != '') {
14
  echo $before_widget;
15
- echo $before_title . $widget_title . $after_title;
16
  echo $the_events;
17
  echo $after_widget;
18
  }
@@ -21,20 +21,29 @@ function init_my_calendar_today() {
21
  function my_calendar_today_control() {
22
  $widget_title = get_option('my_calendar_today_title');
23
  $widget_template = get_option('my_calendar_today_template');
 
 
24
  if (isset($_POST['my_calendar_today_title'])) {
25
  update_option('my_calendar_today_title',strip_tags($_POST['my_calendar_today_title']));
26
  }
27
  if (isset($_POST['my_calendar_today_template'])) {
28
  update_option('my_calendar_today_template',$_POST['my_calendar_today_template']);
29
- }
 
 
 
30
  ?>
31
  <p>
32
  <label for="my_calendar_today_title"><?php _e('Title','my-calendar'); ?>:</label><br />
33
- <input class="widefat" type="text" id="my_calendar_today_title" name="my_calendar_today_title" value="<?php echo $widget_title; ?>"/>
34
  </p>
35
  <p>
36
  <label for="my_calendar_today_template"><?php _e('Template','my-calendar'); ?></label><br />
37
  <textarea class="widefat" rows="8" cols="20" id="my_calendar_today_template" name="my_calendar_today_template"><?php echo stripcslashes($widget_template); ?></textarea>
 
 
 
 
38
  </p>
39
  <?php
40
  }
@@ -57,7 +66,7 @@ function init_my_calendar_upcoming() {
57
  $the_events = my_calendar_upcoming_events();
58
  if ($the_events != '') {
59
  echo $before_widget;
60
- echo $before_title . $widget_title . $after_title;
61
  echo $the_events;
62
  echo $after_widget;
63
  }
@@ -70,6 +79,8 @@ function init_my_calendar_upcoming() {
70
  $past_days = get_option('display_past_days');
71
  $upcoming_events = get_option('display_upcoming_events');
72
  $past_events = get_option('display_past_events');
 
 
73
 
74
  if (isset($_POST['my_calendar_upcoming_title'])) {
75
  update_option('my_calendar_upcoming_title',strip_tags($_POST['my_calendar_upcoming_title']));
@@ -144,12 +155,11 @@ function init_my_calendar_upcoming() {
144
 
145
 
146
  // Widget upcoming events
147
- function my_calendar_upcoming_events($before='default',$after='default',$type='default',$category='default') {
148
  global $wpdb;
149
 
150
  // This function cannot be called unless calendar is up to date
151
  check_my_calendar();
152
- $template = get_option('my_calendar_upcoming_template');
153
  $offset = get_option('gmt_offset');
154
  $today = date('Y',time()+(60*60*$offset)).'-'.date('m',time()+(60*60*$offset)).'-'.date('d',time()+(60*60*$offset));
155
 
@@ -181,18 +191,37 @@ function my_calendar_upcoming_events($before='default',$after='default',$type='d
181
  } else {
182
  $category = $category;
183
  }
 
 
 
 
 
 
184
 
185
  $day_count = -($past_days);
186
  $output = "<ul>";
187
 
188
- if ($display_upcoming_type == "date") {
189
  while ($day_count < $future_days+1) {
190
  list($y,$m,$d) = split("-",date("Y-m-d",mktime($day_count*24,0,0,date("m"),date("d"),date("Y"))));
191
  $events = my_calendar_grab_events( $y,$m,$d,$category );
192
-
193
  @usort($events, "my_calendar_time_cmp");
194
  foreach($events as $event) {
195
  $event_details = event_as_array($event);
 
 
 
 
 
 
 
 
 
 
 
 
 
196
  $output .= "<li>".jd_draw_widget_event($event_details,$template)."</li>";
197
  }
198
  $day_count = $day_count+1;
@@ -251,15 +280,25 @@ function my_calendar_upcoming_events($before='default',$after='default',$type='d
251
  }
252
 
253
  // Widget todays events
254
- function my_calendar_todays_events() {
255
  global $wpdb;
256
 
257
  // This function cannot be called unless calendar is up to date
258
  check_my_calendar();
259
 
260
- $template = get_option('my_calendar_today_template');
261
 
262
- $events = my_calendar_grab_events(date("Y"),date("m"),date("d"));
 
 
 
 
 
 
 
 
 
 
 
263
  if (count($events) != 0) {
264
  $output = "<ul>";
265
  }
@@ -268,9 +307,9 @@ function my_calendar_todays_events() {
268
  $event_details = event_as_array($event);
269
 
270
  if (get_option('my_calendar_date_format') != '') {
271
- $date = date(get_option('my_calendar_date_format'),time());
272
  } else {
273
- $date = date(get_option('date_format'),time());
274
  }
275
  // correct displayed time to today
276
  $event_details['date'] = $date;
@@ -279,7 +318,9 @@ function my_calendar_todays_events() {
279
  if (count($events) != 0) {
280
  $output .= "</ul>";
281
  return $output;
282
- }
 
 
283
  }
284
 
285
  function jd_draw_widget_event($array,$template) {
@@ -341,18 +382,22 @@ if (strlen($map_string) > 10) {
341
  }
342
 
343
  if (get_option('my_calendar_date_format') != '') {
344
- $date = date(get_option('my_calendar_date_format'),strtotime($event->event_begin));
345
- $date_end = date(get_option('my_calendar_date_format'),strtotime($event->event_end));
346
  } else {
347
- $date = date(get_option('date_format'),strtotime($event->event_begin));
348
- $date_end = date(get_option('date_format'),strtotime($event->event_end));
349
  }
350
 
351
 
352
  $details = array();
353
  $details['category'] = stripslashes($category_name->category_name);
354
  $details['title'] = stripslashes($event->event_title);
 
 
 
355
  $details['time'] = date(get_option('time_format'),strtotime($event->event_time));
 
356
  $details['author'] = $e->display_name;
357
  $details['link'] = $event->event_link;
358
  $details['description'] = stripslashes($event->event_desc);
12
  $the_events = my_calendar_todays_events();
13
  if ($the_events != '') {
14
  echo $before_widget;
15
+ echo $before_title . stripslashes($widget_title) . $after_title;
16
  echo $the_events;
17
  echo $after_widget;
18
  }
21
  function my_calendar_today_control() {
22
  $widget_title = get_option('my_calendar_today_title');
23
  $widget_template = get_option('my_calendar_today_template');
24
+ $widget_text = get_option('my_calendar_no_events_text');
25
+
26
  if (isset($_POST['my_calendar_today_title'])) {
27
  update_option('my_calendar_today_title',strip_tags($_POST['my_calendar_today_title']));
28
  }
29
  if (isset($_POST['my_calendar_today_template'])) {
30
  update_option('my_calendar_today_template',$_POST['my_calendar_today_template']);
31
+ }
32
+ if (isset($_POST['my_calendar_no_events_text'])) {
33
+ update_option('my_calendar_no_events_text',$_POST['my_calendar_no_events_text']);
34
+ }
35
  ?>
36
  <p>
37
  <label for="my_calendar_today_title"><?php _e('Title','my-calendar'); ?>:</label><br />
38
+ <input class="widefat" type="text" id="my_calendar_today_title" name="my_calendar_today_title" value="<?php echo stripslashes($widget_title); ?>"/>
39
  </p>
40
  <p>
41
  <label for="my_calendar_today_template"><?php _e('Template','my-calendar'); ?></label><br />
42
  <textarea class="widefat" rows="8" cols="20" id="my_calendar_today_template" name="my_calendar_today_template"><?php echo stripcslashes($widget_template); ?></textarea>
43
+ </p>
44
+ <p>
45
+ <label for="my_calendar_no_events_text"><?php _e('Show this text if there are no events today:','my-calendar'); ?></label><br />
46
+ <input class="widefat" type="text" id="my_calendar_no_events_text" name="my_calendar_no_events_text" value="<?php echo stripcslashes($widget_text); ?>" /></textarea>
47
  </p>
48
  <?php
49
  }
66
  $the_events = my_calendar_upcoming_events();
67
  if ($the_events != '') {
68
  echo $before_widget;
69
+ echo $before_title . stripslashes($widget_title) . $after_title;
70
  echo $the_events;
71
  echo $after_widget;
72
  }
79
  $past_days = get_option('display_past_days');
80
  $upcoming_events = get_option('display_upcoming_events');
81
  $past_events = get_option('display_past_events');
82
+ $display_in_category = get_option('display_in_category');
83
+
84
 
85
  if (isset($_POST['my_calendar_upcoming_title'])) {
86
  update_option('my_calendar_upcoming_title',strip_tags($_POST['my_calendar_upcoming_title']));
155
 
156
 
157
  // Widget upcoming events
158
+ function my_calendar_upcoming_events($before='default',$after='default',$type='default',$category='default',$template='default') {
159
  global $wpdb;
160
 
161
  // This function cannot be called unless calendar is up to date
162
  check_my_calendar();
 
163
  $offset = get_option('gmt_offset');
164
  $today = date('Y',time()+(60*60*$offset)).'-'.date('m',time()+(60*60*$offset)).'-'.date('d',time()+(60*60*$offset));
165
 
191
  } else {
192
  $category = $category;
193
  }
194
+
195
+ if ($template == 'default') {
196
+ $template = get_option('my_calendar_upcoming_template');
197
+ } else {
198
+ $template = $template;
199
+ }
200
 
201
  $day_count = -($past_days);
202
  $output = "<ul>";
203
 
204
+ if ($display_upcoming_type == "days") {
205
  while ($day_count < $future_days+1) {
206
  list($y,$m,$d) = split("-",date("Y-m-d",mktime($day_count*24,0,0,date("m"),date("d"),date("Y"))));
207
  $events = my_calendar_grab_events( $y,$m,$d,$category );
208
+ $current_date = "$y-$m-$d";
209
  @usort($events, "my_calendar_time_cmp");
210
  foreach($events as $event) {
211
  $event_details = event_as_array($event);
212
+ $date_diff = jd_date_diff($event_details['date'],$event_details['date_end']);
213
+
214
+ if (get_option('my_calendar_date_format') != '') {
215
+ $date = date_i18n(get_option('my_calendar_date_format'),strtotime($current_date));
216
+ $date_end = date_i18n(get_option('my_calendar_date_format'),strtotime(my_calendar_add_date($current_date,$datediff)));
217
+ } else {
218
+ $date = date_i18n(get_option('date_format'),strtotime($current_date));
219
+ $date_end = date_i18n(get_option('date_format'),strtotime(my_calendar_add_date($current_date,$datediff)));
220
+ }
221
+
222
+ $event_details['date'] = $date;
223
+ $event_details['date_end'] = $date_end;
224
+
225
  $output .= "<li>".jd_draw_widget_event($event_details,$template)."</li>";
226
  }
227
  $day_count = $day_count+1;
280
  }
281
 
282
  // Widget todays events
283
+ function my_calendar_todays_events($category='default',$template='default') {
284
  global $wpdb;
285
 
286
  // This function cannot be called unless calendar is up to date
287
  check_my_calendar();
288
 
 
289
 
290
+ if ($template == 'default') {
291
+ $template = get_option('my_calendar_today_template');
292
+ } else {
293
+ $template = $template;
294
+ }
295
+ if ($category == 'default') {
296
+ $category = null;
297
+ } else {
298
+ $category = $category;
299
+ }
300
+
301
+ $events = my_calendar_grab_events(date("Y"),date("m"),date("d"),$category);
302
  if (count($events) != 0) {
303
  $output = "<ul>";
304
  }
307
  $event_details = event_as_array($event);
308
 
309
  if (get_option('my_calendar_date_format') != '') {
310
+ $date = date_i18n(get_option('my_calendar_date_format'),time());
311
  } else {
312
+ $date = date_i18n(get_option('date_format'),time());
313
  }
314
  // correct displayed time to today
315
  $event_details['date'] = $date;
318
  if (count($events) != 0) {
319
  $output .= "</ul>";
320
  return $output;
321
+ } else {
322
+ return stripslashes( get_option('my_calendar_no_events_text') );
323
+ }
324
  }
325
 
326
  function jd_draw_widget_event($array,$template) {
382
  }
383
 
384
  if (get_option('my_calendar_date_format') != '') {
385
+ $date = date_i18n(get_option('my_calendar_date_format'),strtotime($event->event_begin));
386
+ $date_end = date_i18n(get_option('my_calendar_date_format'),strtotime($event->event_end));
387
  } else {
388
+ $date = date_i18n(get_option('date_format'),strtotime($event->event_begin));
389
+ $date_end = date_i18n(get_option('date_format'),strtotime($event->event_end));
390
  }
391
 
392
 
393
  $details = array();
394
  $details['category'] = stripslashes($category_name->category_name);
395
  $details['title'] = stripslashes($event->event_title);
396
+ if ($event->event_time == '00:00:00' ) {
397
+ $details['time'] = __('N/A','my-calendar');
398
+ } else {
399
  $details['time'] = date(get_option('time_format'),strtotime($event->event_time));
400
+ }
401
  $details['author'] = $e->display_name;
402
  $details['link'] = $event->event_link;
403
  $details['description'] = stripslashes($event->event_desc);
my-calendar.php CHANGED
@@ -5,7 +5,7 @@ Plugin URI: http://www.joedolson.com/articles/my-calendar/
5
  Description: Accessible WordPress event calendar plugin. Show events from multiple calendars on pages, in posts, or in widgets.
6
  Author: Joseph C Dolson
7
  Author URI: http://www.joedolson.com
8
- Version: 1.2.1
9
  */
10
  /* Copyright 2009 Joe Dolson (email : joe@joedolson.com)
11
 
@@ -31,6 +31,8 @@ global $wpdb;
31
  // Define the tables used in My Calendar
32
  define('MY_CALENDAR_TABLE', $wpdb->prefix . 'my_calendar');
33
  define('MY_CALENDAR_CATEGORIES_TABLE', $wpdb->prefix . 'my_calendar_categories');
 
 
34
  // Create a master category for My Calendar and its sub-pages
35
  add_action('admin_menu', 'my_calendar_menu');
36
  // Add the function that puts style information in the header
@@ -50,8 +52,10 @@ add_filter('plugin_action_links', 'jd_calendar_plugin_action', -10, 2);
50
 
51
  include(dirname(__FILE__).'/my-calendar-settings.php' );
52
  include(dirname(__FILE__).'/my-calendar-categories.php' );
 
53
  include(dirname(__FILE__).'/my-calendar-help.php' );
54
  include(dirname(__FILE__).'/my-calendar-event-manager.php' );
 
55
  include(dirname(__FILE__).'/my-calendar-widgets.php' );
56
  include(dirname(__FILE__).'/date-utilities.php' );
57
 
@@ -89,11 +93,24 @@ function mc_deal_with_deleted_user($id) {
89
 
90
  // Function to add the calendar style into the header
91
  function my_calendar_wp_head() {
92
- global $wpdb;
93
  // If the calendar isn't installed or upgraded this won't work
94
  check_my_calendar();
95
  $styles = stripcslashes(get_option('my_calendar_style'));
96
  if ( get_option('my_calendar_use_styles') != 'true' ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
97
  echo "
98
  <style type=\"text/css\">
99
  <!--
@@ -101,6 +118,8 @@ echo "
101
  $styles
102
  -->
103
  </style>";
 
 
104
  }
105
  }
106
 
@@ -125,8 +144,10 @@ function my_calendar_menu() {
125
  add_action( "admin_head", 'my_calendar_add_styles' );
126
  // Note only admin can change calendar options
127
  add_submenu_page('my-calendar', __('Manage Categories','my-calendar'), __('Manage Categories','my-calendar'), 'manage_options', 'my-calendar-categories', 'my_calendar_manage_categories');
 
128
  add_submenu_page('my-calendar', __('Settings','my-calendar'), __('Settings','my-calendar'), 'manage_options', 'my-calendar-config', 'edit_my_calendar_config');
129
- add_submenu_page('my-calendar', __('My Calendar Help','my-calendar'), __('Help','my-calendar'), 'manage_options', 'my-calendar-help', 'my_calendar_help');
 
130
  }
131
  }
132
  add_action( "admin_menu", 'my_calendar_add_javascript' );
@@ -175,43 +196,27 @@ function my_calendar_add_display_javascript() {
175
  add_action('init','my_calendar_add_display_javascript');
176
 
177
  function my_calendar_calendar_javascript() {
 
 
 
 
 
 
 
 
 
 
178
  if ( get_option('calendar_javascript') != 1 ) {
179
  ?>
180
  <script type='text/javascript'>
181
- var $j = jQuery.noConflict();
182
-
183
- $j(document).ready(function() {
184
- $j('.calendar-event').children().not('h3').hide();
185
- $j('.calendar-event h3').toggle(
186
- function() {
187
- $j('.calendar-event').children().not('h3').hide();
188
- $j(this).parent().children().not('h3').show('fast');
189
- },
190
- function() {
191
- $j('.calendar-event').children().not('h3').hide('fast');
192
- }
193
- );
194
- });
195
  </script>
196
  <?php
197
  }
198
  if ( get_option('list_javascript') != 1 ) {
199
  ?>
200
  <script type='text/javascript'>
201
- var $j = jQuery.noConflict();
202
-
203
- $j(document).ready(function() {
204
- $j('#calendar-list li').children().not('.event-date').hide();
205
- $j('.event-date').toggle(
206
- function() {
207
- $j('#calendar-list li').children().not('.event-date').hide();
208
- $j(this).parent().children().not('.event-date').show('fast');
209
- },
210
- function() {
211
- $j('#calendar-list li').children().not('.event-date').hide('fast');
212
- }
213
- );
214
- });
215
  </script>
216
  <?php
217
  }
@@ -273,11 +278,20 @@ border: 1px solid #aaa;
273
  border-radius: 5px;
274
  margin: 15px 0;
275
  }
276
- .n4 {width: 16px;}
277
  .n5 {width: 32px;}
278
  .n6 {width: 64px;}
279
  .n7 {width: 128px;}
280
  .n8 {width: 256px;}
 
 
 
 
 
 
 
 
 
281
  //-->
282
  </style>';
283
  }
@@ -297,19 +311,18 @@ function my_calendar_insert_upcoming($atts) {
297
  'before' => 'default',
298
  'after' => 'default',
299
  'type' => 'default',
300
- 'category' => 'default'
 
301
  ), $atts));
302
- return my_calendar_upcoming_events($before, $after, $type, $category);
303
  }
304
 
305
  function my_calendar_insert_today($atts) {
306
  extract(shortcode_atts(array(
307
- 'before' => '',
308
- 'after' => '',
309
- 'type' => '',
310
- 'category' => ''
311
  ), $atts));
312
- return my_calendar_today_events($before, $after, $type, $category);
313
  }
314
 
315
 
@@ -326,9 +339,40 @@ function check_my_calendar() {
326
  // then it is upgraded. (Or will be, once there's a need.)
327
 
328
  // Lets see if this is first run and create a table if it is!
329
- global $wpdb, $initial_style;
 
 
 
330
 
331
- // default styles will go into the options table on a new install
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
332
  $initial_style = "
333
  #jd-calendar * {
334
  margin: 0;
@@ -355,7 +399,7 @@ border-collapse:collapse;
355
  vertical-align:top;
356
  border:1px solid #eee;
357
  text-align:left;
358
- width:60px;
359
  height:70px;
360
  padding:2px!important;
361
  }
@@ -411,7 +455,10 @@ margin:5px 0;
411
  padding:5px 5px 0;
412
  color: #333;
413
  }
414
-
 
 
 
415
  #jd-calendar #calendar-list li {
416
  padding:5px;
417
  list-style-type: none;
@@ -473,11 +520,19 @@ padding: 0;
473
  #jd-calendar .category-key li {
474
  margin: 2px 10px;
475
  }
476
- #jd-calendar .category-icon {
477
  margin-right:5px;
478
- margin-bottom:5px;
479
  vertical-align:middle;
480
  }
 
 
 
 
 
 
 
 
 
481
 
482
  #calendar-list li {
483
  text-indent:0;
@@ -610,12 +665,21 @@ $default_template = "<strong>{date}</strong> &#8211; {link_title}<br /><span>{ti
610
  $my_calendar_exists = true;
611
  $current_version = get_option('my_calendar_version');
612
  // check whether installed version matches most recent version, establish upgrade process.
613
- }
614
  }
615
  }
616
  if ( $my_calendar_exists == false ) {
617
  $new_install = true;
618
- }
 
 
 
 
 
 
 
 
 
619
 
620
  // Now we've determined what the current install is or isn't
621
  if ( $new_install == true ) {
@@ -648,7 +712,7 @@ $default_template = "<strong>{date}</strong> &#8211; {link_title}<br /><span>{ti
648
  add_option('display_todays','true');
649
  add_option('display_upcoming','true');
650
  add_option('display_upcoming_days',7);
651
- add_option('my_calendar_version','1.0');
652
  add_option('display_upcoming_type','false');
653
  add_option('display_upcoming_events',3);
654
  add_option('display_past_days',0);
@@ -663,6 +727,10 @@ $default_template = "<strong>{date}</strong> &#8211; {link_title}<br /><span>{ti
663
  add_option('my_calendar_upcoming_title','Upcoming Events');
664
  add_option('calendar_javascript',0);
665
  add_option('list_javascript',0);
 
 
 
 
666
  $sql = "UPDATE " . MY_CALENDAR_TABLE . " SET event_category=1";
667
  $wpdb->get_results($sql);
668
 
@@ -676,13 +744,70 @@ $default_template = "<strong>{date}</strong> &#8211; {link_title}<br /><span>{ti
676
  $wpdb->get_results($sql);
677
  $sql = "INSERT INTO " . MY_CALENDAR_CATEGORIES_TABLE . " SET category_id=1, category_name='General', category_color='#ffffff', category_icon='event.png'";
678
  $wpdb->get_results($sql);
679
- }
680
-
681
- // placeholder for future upgrades
 
 
 
 
 
 
 
 
 
 
 
 
682
 
 
683
  switch ($upgrade_path) {
684
- case $upgrade_path == FALSE:
685
  break;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
686
  default:
687
  break;
688
  }
@@ -738,12 +863,12 @@ function my_calendar_permalink_prefix() {
738
  }
739
 
740
  // Configure the "Next" link in the calendar
741
- function my_calendar_next_link($cur_year,$cur_month) {
742
  $mod_rewrite_months = array(1=>'jan','feb','mar','apr','may','jun','jul','aug','sept','oct','nov','dec');
743
  $next_year = $cur_year + 1;
744
 
745
  $num_months = get_option('my_calendar_show_months');
746
- if ($num_months <= 1) {
747
  if ($cur_month == 12) {
748
  return '<a href="' . my_calendar_permalink_prefix() . 'month=jan&amp;yr=' . $next_year . '" rel="nofollow">'.__('Next Events','my-calendar').' &raquo;</a>';
749
  } else {
@@ -767,12 +892,12 @@ $num_months = get_option('my_calendar_show_months');
767
  }
768
 
769
  // Configure the "Previous" link in the calendar
770
- function my_calendar_prev_link($cur_year,$cur_month) {
771
  $mod_rewrite_months = array(1=>'jan','feb','mar','apr','may','jun','jul','aug','sept','oct','nov','dec');
772
  $last_year = $cur_year - 1;
773
 
774
  $num_months = get_option('my_calendar_show_months');
775
- if ($num_months <= 1) {
776
  if ($cur_month == 1) {
777
  return '<a href="' . my_calendar_permalink_prefix() . 'month=dec&amp;yr='. $last_year .'" rel="nofollow">&laquo; '.__('Previous Events','my-calendar').'</a>';
778
  } else {
@@ -818,6 +943,9 @@ function my_calendar_draw_event($event, $type="calendar") {
818
  $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".$event->event_category;
819
  $cat_details = $wpdb->get_row($sql);
820
  $style = "background-color:".$cat_details->category_color.";";
 
 
 
821
  if ($cat_details->category_icon != "") {
822
  if ( file_exists( WP_PLUGIN_DIR . '/my-calendar-custom/' ) ) {
823
  $path = '/my-calendar-custom';
@@ -828,13 +956,14 @@ function my_calendar_draw_event($event, $type="calendar") {
828
  } else {
829
  $image = "";
830
  }
 
831
  $location_string = $event->event_street.$event->event_street2.$event->event_city.$event->event_state.$event->event_postcode.$event->event_country;
832
- if (($display_address == 'true' || $display_map == 'true') && strlen($location_string) > 5) {
833
  $map_string = $event->event_street.' '.$event->event_street2.' '.$event->event_city.' '.$event->event_state.' '.$event->event_postcode.' '.$event->event_country;
834
 
835
  $address .= '<div class="address vcard">';
836
 
837
- if ($display_address == 'true' && strlen($location_string) > 5) {
838
  $address .= "<div class=\"adr\">";
839
  if ($event->event_label != "") {
840
  $address .= "<strong class=\"org\">".stripslashes($event->event_label)."</strong><br />";
@@ -859,8 +988,7 @@ function my_calendar_draw_event($event, $type="calendar") {
859
  }
860
  $address .= "</div>";
861
  }
862
- if ($display_map == 'true') {
863
- if (strlen($location_string) > 5) {
864
  $map_string = str_replace(" ","+",$map_string);
865
  if ($event->event_label != "") {
866
  $map_label = stripslashes($event->event_label);
@@ -869,7 +997,6 @@ function my_calendar_draw_event($event, $type="calendar") {
869
  }
870
  $map = "<a href=\"http://maps.google.com/maps?f=q&amp;z=15&amp;q=$map_string\">Map<span> to $map_label</span></a>";
871
  $address .= "<div class=\"url map\">$map</div>";
872
- }
873
  }
874
  $address .= "</div>";
875
  }
@@ -884,7 +1011,13 @@ $my_calendar_directory = get_bloginfo( 'wpurl' ) . '/' . PLUGINDIR . '/' . dirna
884
  if ($event->event_time != "00:00:00") {
885
  $header_details .= "<span class='event-time'>".date(get_option('time_format'), strtotime($event->event_time)) . "</span>\n";
886
  } else {
887
- $header_details .= "<span class='event-time'><abbr title='".__('Not Applicable','my-calendar')."'>".__('N/A','my-calendar')."</abbr></span>\n";
 
 
 
 
 
 
888
  }
889
  $header_details .= "<div class='sub-details'>";
890
  if ($type != "calendar") {
@@ -894,7 +1027,7 @@ $my_calendar_directory = get_bloginfo( 'wpurl' ) . '/' . PLUGINDIR . '/' . dirna
894
  $e = get_userdata($event->event_author);
895
  $header_details .= '<span class="event-author">'.__('Posted by', 'my-calendar').': <span class="author-name">'.$e->display_name."</span></span><br />\n ";
896
  }
897
- if ($display_address == 'true' || $display_map == 'true') {
898
  $header_details .= $address;
899
  }
900
 
@@ -910,16 +1043,49 @@ $my_calendar_directory = get_bloginfo( 'wpurl' ) . '/' . PLUGINDIR . '/' . dirna
910
  function mc_get_all_events($category) {
911
  global $wpdb;
912
  if ( $category!='default' ) {
913
- if (is_numeric($category)) {
914
- $select_category = " WHERE event_category = $category";
915
- } else {
916
- $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$category'");
917
- $category_id = $cat->category_id;
918
- if (!$category_id) {
919
- //if the requested category doesn't exist, fail silently
920
- $select_category = "";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
921
  } else {
922
- $select_category = " WHERE event_category = $category_id";
 
 
 
 
 
 
 
923
  }
924
  }
925
  } else {
@@ -941,7 +1107,7 @@ global $wpdb;
941
  for ($i=$numback;$i<=$numforward;$i++) {
942
  $begin = my_calendar_add_date($orig_begin,$i,0,0);
943
  $end = my_calendar_add_date($orig_end,$i,0,0);
944
- ${$i} = clone $event;
945
  ${$i}->event_begin = $begin;
946
  ${$i}->event_end = $end;
947
  $arr_events[]=${$i};
@@ -951,7 +1117,7 @@ global $wpdb;
951
  for ($i=$numback;$i<=$numforward;$i++) {
952
  $begin = my_calendar_add_date($orig_begin,($i*7),0,0);
953
  $end = my_calendar_add_date($orig_end,($i*7),0,0);
954
- ${$i} = clone $event;
955
  ${$i}->event_begin = $begin;
956
  ${$i}->event_end = $end;
957
  $arr_events[]=${$i};
@@ -961,7 +1127,7 @@ global $wpdb;
961
  for ($i=$numback;$i<=$numforward;$i++) {
962
  $begin = my_calendar_add_date($orig_begin,($i*14),0,0);
963
  $end = my_calendar_add_date($orig_end,($i*14),0,0);
964
- ${$i} = clone $event;
965
  ${$i}->event_begin = $begin;
966
  ${$i}->event_end = $end;
967
  $arr_events[]=${$i};
@@ -971,7 +1137,7 @@ global $wpdb;
971
  for ($i=$numback;$i<=$numforward;$i++) {
972
  $begin = my_calendar_add_date($orig_begin,0,$i,0);
973
  $end = my_calendar_add_date($orig_end,0,$i,0);
974
- ${$i} = clone $event;
975
  ${$i}->event_begin = $begin;
976
  ${$i}->event_end = $end;
977
  $arr_events[]=${$i};
@@ -981,7 +1147,7 @@ global $wpdb;
981
  for ($i=$numback;$i<=$numforward;$i++) {
982
  $begin = my_calendar_add_date($orig_begin,0,0,$i);
983
  $end = my_calendar_add_date($orig_end,0,0,$i);
984
- ${$i} = clone $event;
985
  ${$i}->event_begin = $begin;
986
  ${$i}->event_end = $end;
987
  $arr_events[]=${$i};
@@ -1006,7 +1172,7 @@ global $wpdb;
1006
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1007
  $this_date = my_calendar_add_date($event_begin,($realStart),0,0);
1008
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1009
- ${$realStart} = clone $event;
1010
  ${$realStart}->event_begin = $this_date;
1011
  $arr_events[] = ${$realStart};
1012
  }
@@ -1017,7 +1183,7 @@ global $wpdb;
1017
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1018
  $this_date = my_calendar_add_date($event_begin,$realDays,0,0);
1019
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) == true ) {
1020
- ${$realDays} = clone $event;
1021
  ${$realDays}->event_begin = $this_date;
1022
  $arr_events[] = ${$realDays};
1023
  }
@@ -1045,7 +1211,7 @@ global $wpdb;
1045
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1046
  $this_date = my_calendar_add_date($event_begin,($realStart*7),0,0);
1047
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1048
- ${$realStart} = clone $event;
1049
  ${$realStart}->event_begin = $this_date;
1050
  $arr_events[] = ${$realStart};
1051
  }
@@ -1056,7 +1222,7 @@ global $wpdb;
1056
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1057
  $this_date = my_calendar_add_date($event_begin,($realDays*7),0,0);
1058
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1059
- ${$realDays} = clone $event;
1060
  ${$realDays}->event_begin = $this_date;
1061
  $arr_events[] = ${$realDays};
1062
  }
@@ -1084,7 +1250,7 @@ global $wpdb;
1084
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1085
  $this_date = my_calendar_add_date($event_begin,($realStart*14),0,0);
1086
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1087
- ${$realStart} = clone $event;
1088
  ${$realStart}->event_begin = $this_date;
1089
  $arr_events[] = ${$realStart};
1090
  }
@@ -1095,7 +1261,7 @@ global $wpdb;
1095
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1096
  $this_date = my_calendar_add_date($event_begin,($realDays*14),0,0);
1097
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1098
- ${$realDays} = clone $event;
1099
  ${$realDays}->event_begin = $this_date;
1100
  $arr_events[] = ${$realDays};
1101
  }
@@ -1123,7 +1289,7 @@ global $wpdb;
1123
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1124
  $this_date = my_calendar_add_date($event_begin,0,$realStart,0);
1125
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1126
- ${$realStart} = clone $event;
1127
  ${$realStart}->event_begin = $this_date;
1128
  $arr_events[] = ${$realStart};
1129
  }
@@ -1134,7 +1300,7 @@ global $wpdb;
1134
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1135
  $this_date = my_calendar_add_date($event_begin,0,$realDays,0);
1136
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) == true ) {
1137
- ${$realDays} = clone $event;
1138
  ${$realDays}->event_begin = $this_date;
1139
  $arr_events[] = ${$realDays};
1140
  }
@@ -1162,7 +1328,7 @@ global $wpdb;
1162
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1163
  $this_date = my_calendar_add_date($event_begin,0,0,$realStart);
1164
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1165
- ${$realStart} = clone $event;
1166
  ${$realStart}->event_begin = $this_date;
1167
  $arr_events[] = ${$realStart};
1168
  }
@@ -1173,7 +1339,7 @@ global $wpdb;
1173
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1174
  $this_date = my_calendar_add_date($event_begin,0,0,$realDays);
1175
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) == true ) {
1176
- ${$realDays} = clone $event;
1177
  ${$realDays}->event_begin = $this_date;
1178
  $arr_events[] = ${$realDays};
1179
  }
@@ -1194,19 +1360,57 @@ global $wpdb;
1194
  }
1195
  // Grab all events for the requested date from calendar
1196
  function my_calendar_grab_events($y,$m,$d,$category=null) {
 
 
 
 
 
1197
  global $wpdb;
1198
 
1199
  if ( $category!=null ) {
1200
- if (is_numeric($category)) {
1201
- $select_category = "event_category = $category AND";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1202
  } else {
1203
- $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$category'");
1204
- $category_id = $cat->category_id;
1205
- if (!$category_id) {
1206
- //if the requested category doesn't exist, fail silently
1207
- $select_category = "";
1208
  } else {
1209
- $select_category = "event_category = $category_id AND";
 
 
 
 
 
 
 
1210
  }
1211
  }
1212
  }
@@ -1624,14 +1828,17 @@ function my_calendar($name,$format,$category,$showkey) {
1624
  }
1625
 
1626
  $days_in_month = date("t", mktime (0,0,0,$c_month,1,$c_year));
 
1627
  if ($category != "" && $category != "all") {
1628
- $category_label = $category . ' ';
1629
  } else {
1630
  $category_label = "";
1631
  }
1632
  // Start the calendar and add header and navigation
1633
  $my_calendar_body .= "<div id=\"jd-calendar\">";
1634
  // Add the calendar table and heading
 
 
1635
  if ($format == "calendar") {
1636
  $my_calendar_body .= '<div class="my-calendar-header">';
1637
 
@@ -1641,26 +1848,26 @@ function my_calendar($name,$format,$category,$showkey) {
1641
  if ($date_switcher == 'true') {
1642
  $my_calendar_body .= mc_build_date_switcher();
1643
  }
1644
-
1645
  // The header of the calendar table and the links. Note calls to link functions
1646
  $my_calendar_body .= '
1647
  <div class="my-calendar-nav">
1648
  <ul>
1649
- <li class="my-calendar-prev">' . my_calendar_prev_link($c_year,$c_month) . '</li>
1650
- <li class="my-calendar-next">' . my_calendar_next_link($c_year,$c_month) . '</li>
1651
  </ul>
1652
  </div>
1653
  </div>';
1654
  $my_calendar_body .= "\n<table class=\"my-calendar-table\" summary=\"$category_label".__('Calendar','my-calendar')."\">\n";
1655
- $my_calendar_body .= '<caption class="my-calendar-month">'.$name_months[(int)$c_month].' '.$c_year."</caption>\n";
1656
  } else {
1657
- $my_calendar_body .= "\n<h2 class=\"my-calendar-header\">$category_label".__('Calendar','my-calendar')."</h2>\n";
1658
-
 
1659
  $num_months = get_option('my_calendar_show_months');
1660
  if ($num_months <= 1) {
1661
- $my_calendar_body .= '<h3 class="my-calendar-month">'.__('Events in','my-calendar').' '.$name_months[(int)$c_month].' '.$c_year."</h3>\n";
1662
  } else {
1663
- $my_calendar_body .= '<h3 class="my-calendar-month">'.$name_months[(int)$c_month].'&thinsp;&ndash;&thinsp;'.$name_months[(int)$c_month+$num_months-1].' '.$c_year."</h3>\n";
1664
  }
1665
  $my_calendar_body .= '<div class="my-calendar-header">';
1666
 
@@ -1675,8 +1882,8 @@ function my_calendar($name,$format,$category,$showkey) {
1675
  $my_calendar_body .= '
1676
  <div class="my-calendar-nav">
1677
  <ul>
1678
- <li class="my-calendar-prev">' . my_calendar_prev_link($c_year,$c_month) . '</li>
1679
- <li class="my-calendar-next">' . my_calendar_next_link($c_year,$c_month) . '</li>
1680
  </ul>
1681
  </div>
1682
  </div>';
@@ -1747,7 +1954,7 @@ if ($date_format == "") {
1747
  $add_month = 1;
1748
  }
1749
  $c_month = (int) $c_month + $add_month;
1750
- for ($i=1; $i<=$days_in_month; $i++) {
1751
  $grabbed_events = my_calendar_grab_events($c_year,$c_month,$i,$category);
1752
  if (count($grabbed_events)) {
1753
  if ( get_option('list_javascript') != 1) {
@@ -1756,15 +1963,15 @@ if ($date_format == "") {
1756
  } else {
1757
  $is_anchor = $is_close_anchor = "";
1758
  }
1759
- $my_calendar_body .= "<li$class><strong class=\"event-date\">$is_anchor".date($date_format,mktime(0,0,0,$c_month,$i,$c_year))."$is_close_anchor</strong>".my_calendar_draw_events($grabbed_events, $format)."</li>";
1760
  $num_events++;
1761
  }
1762
  if (my_calendar_is_odd($num_events)) {
1763
- $class = " class='odd'";
1764
  } else {
1765
- $class = "";
1766
- }
1767
- }
1768
  }
1769
  if ($num_events == 0) {
1770
  $my_calendar_body .= "<li class='no-events'>".__('There are no events scheduled during this period.','my-calendar') . "</li>";
@@ -1778,16 +1985,18 @@ if ($date_format == "") {
1778
  $cat_details = $wpdb->get_results($sql);
1779
  $my_calendar_body .= '<div class="category-key">
1780
  <h3>'.__('Category Key','my-calendar')."</h3>\n<ul>\n";
 
1781
  if ( file_exists( WP_PLUGIN_DIR . '/my-calendar-custom/' ) ) {
1782
  $path = '/my-calendar-custom';
1783
  } else {
1784
  $path = '/my-calendar/icons';
1785
  }
1786
  foreach($cat_details as $cat_detail) {
1787
- if ($cat_detail->category_icon != "") {
 
1788
  $my_calendar_body .= '<li><span class="category-color-sample"><img src="'.WP_PLUGIN_URL.$path.'/'.$cat_detail->category_icon.'" alt="" style="background:'.$cat_detail->category_color.';" /></span>'.$cat_detail->category_name."</li>\n";
1789
  } else {
1790
- $my_calendar_body .= '<li><span class="category-color-sample" style="background:'.$cat_detail->category_color.';"> &nbsp; </span>'.$cat_detail->category_name."</li>\n";
1791
  }
1792
  }
1793
  $my_calendar_body .= "</ul>\n</div>";
@@ -1815,6 +2024,15 @@ function mc_can_edit_event($author_id) {
1815
  return false;
1816
  }
1817
  }
1818
-
 
 
 
 
 
 
 
 
 
1819
 
1820
  ?>
5
  Description: Accessible WordPress event calendar plugin. Show events from multiple calendars on pages, in posts, or in widgets.
6
  Author: Joseph C Dolson
7
  Author URI: http://www.joedolson.com
8
+ Version: 1.3.8
9
  */
10
  /* Copyright 2009 Joe Dolson (email : joe@joedolson.com)
11
 
31
  // Define the tables used in My Calendar
32
  define('MY_CALENDAR_TABLE', $wpdb->prefix . 'my_calendar');
33
  define('MY_CALENDAR_CATEGORIES_TABLE', $wpdb->prefix . 'my_calendar_categories');
34
+ define('MY_CALENDAR_LOCATIONS_TABLE', $wpdb->prefix . 'my_calendar_locations');
35
+
36
  // Create a master category for My Calendar and its sub-pages
37
  add_action('admin_menu', 'my_calendar_menu');
38
  // Add the function that puts style information in the header
52
 
53
  include(dirname(__FILE__).'/my-calendar-settings.php' );
54
  include(dirname(__FILE__).'/my-calendar-categories.php' );
55
+ include(dirname(__FILE__).'/my-calendar-locations.php' );
56
  include(dirname(__FILE__).'/my-calendar-help.php' );
57
  include(dirname(__FILE__).'/my-calendar-event-manager.php' );
58
+ include(dirname(__FILE__).'/my-calendar-styles.php' );
59
  include(dirname(__FILE__).'/my-calendar-widgets.php' );
60
  include(dirname(__FILE__).'/date-utilities.php' );
61
 
93
 
94
  // Function to add the calendar style into the header
95
  function my_calendar_wp_head() {
96
+ global $wpdb, $wp_query;
97
  // If the calendar isn't installed or upgraded this won't work
98
  check_my_calendar();
99
  $styles = stripcslashes(get_option('my_calendar_style'));
100
  if ( get_option('my_calendar_use_styles') != 'true' ) {
101
+
102
+ $this_post = $wp_query->get_queried_object();
103
+ if (is_object($this_post)) {
104
+ $id = $this_post->ID;
105
+ }
106
+ if ( get_option( 'my_calendar_show_css' ) != '' ) {
107
+ $array = explode( ",",get_option( 'my_calendar_show_css' ) );
108
+ if (!is_array($array)) {
109
+ $array = array();
110
+ }
111
+ }
112
+ if ( @in_array( $id, $array ) || get_option( 'my_calendar_show_css' ) == '' ) {
113
+
114
  echo "
115
  <style type=\"text/css\">
116
  <!--
118
  $styles
119
  -->
120
  </style>";
121
+
122
+ }
123
  }
124
  }
125
 
144
  add_action( "admin_head", 'my_calendar_add_styles' );
145
  // Note only admin can change calendar options
146
  add_submenu_page('my-calendar', __('Manage Categories','my-calendar'), __('Manage Categories','my-calendar'), 'manage_options', 'my-calendar-categories', 'my_calendar_manage_categories');
147
+ add_submenu_page('my-calendar', __('Manage Locations','my-calendar'), __('Manage Locations','my-calendar'), 'manage_options', 'my-calendar-locations', 'my_calendar_manage_locations');
148
  add_submenu_page('my-calendar', __('Settings','my-calendar'), __('Settings','my-calendar'), 'manage_options', 'my-calendar-config', 'edit_my_calendar_config');
149
+ add_submenu_page('my-calendar', __('Style Editor','my-calendar'), __('Style Editor','my-calendar'), 'manage_options', 'my-calendar-styles', 'edit_my_calendar_styles');
150
+ add_submenu_page('my-calendar', __('My Calendar Help','my-calendar'), __('Help','my-calendar'), 'manage_options', 'my-calendar-help', 'my_calendar_help');
151
  }
152
  }
153
  add_action( "admin_menu", 'my_calendar_add_javascript' );
196
  add_action('init','my_calendar_add_display_javascript');
197
 
198
  function my_calendar_calendar_javascript() {
199
+ $list_js = stripcslashes( get_option( 'my_calendar_listjs' ) );
200
+ $cal_js = stripcslashes( get_option( 'my_calendar_caljs' ) );
201
+
202
+ if ( get_option('calendar_javascript') != 1 || get_option('list_javascript') != 1 ) {
203
+ //echo '<script type="text/javascript">
204
+ //var $j = jQuery.noConflict();
205
+ //$j(\'html\').addClass(\'js\');
206
+ //</script>';
207
+ }
208
+
209
  if ( get_option('calendar_javascript') != 1 ) {
210
  ?>
211
  <script type='text/javascript'>
212
+ <?php echo $cal_js; ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
213
  </script>
214
  <?php
215
  }
216
  if ( get_option('list_javascript') != 1 ) {
217
  ?>
218
  <script type='text/javascript'>
219
+ <?php echo $list_js; ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
220
  </script>
221
  <?php
222
  }
278
  border-radius: 5px;
279
  margin: 15px 0;
280
  }
281
+ .n4 {width: 32px;}
282
  .n5 {width: 32px;}
283
  .n6 {width: 64px;}
284
  .n7 {width: 128px;}
285
  .n8 {width: 256px;}
286
+ .category-color {
287
+ width: 1.2em;
288
+ height: 1.2em;
289
+ display: inline-block;
290
+ -moz-border-radius: 3px;
291
+ -webkit-border-radius: 3px;
292
+ border-radius: 3px;
293
+ border: 1px solid #000;
294
+ }
295
  //-->
296
  </style>';
297
  }
311
  'before' => 'default',
312
  'after' => 'default',
313
  'type' => 'default',
314
+ 'category' => 'default',
315
+ 'template' => 'default'
316
  ), $atts));
317
+ return my_calendar_upcoming_events($before, $after, $type, $category, $template);
318
  }
319
 
320
  function my_calendar_insert_today($atts) {
321
  extract(shortcode_atts(array(
322
+ 'category' => 'default',
323
+ 'template' => 'default'
 
 
324
  ), $atts));
325
+ return my_calendar_todays_events($category, $template);
326
  }
327
 
328
 
339
  // then it is upgraded. (Or will be, once there's a need.)
340
 
341
  // Lets see if this is first run and create a table if it is!
342
+ global $wpdb, $initial_style, $initial_listjs, $initial_caljs;
343
+
344
+ // defaults will go into the options table on a new install
345
+ $initial_listjs = 'var $j = jQuery.noConflict();
346
 
347
+ $j(document).ready(function() {
348
+ $j("#calendar-list li").children().not(".event-date").hide();
349
+ $j("#calendar-list li.current-day").children().show();
350
+ $j(".event-date").toggle(
351
+ function() {
352
+ $j("#calendar-list li").children().not(".event-date").hide();
353
+ $j(this).parent().children().not(".event-date").show("fast");
354
+ },
355
+ function() {
356
+ $j("#calendar-list li").children().not(".event-date").hide("fast");
357
+ }
358
+ );
359
+ });';
360
+
361
+ $initial_caljs = 'var $j = jQuery.noConflict();
362
+
363
+ $j(document).ready(function() {
364
+ $j(".calendar-event").children().not("h3").hide();
365
+ $j(".calendar-event h3").toggle(
366
+ function() {
367
+ $j(".calendar-event").children().not("h3").hide();
368
+ $j(this).parent().children().not("h3").show("fast");
369
+ },
370
+ function() {
371
+ $j(".calendar-event").children().not("h3").hide("fast");
372
+ }
373
+ );
374
+ });';
375
+
376
  $initial_style = "
377
  #jd-calendar * {
378
  margin: 0;
399
  vertical-align:top;
400
  border:1px solid #eee;
401
  text-align:left;
402
+ width:13%;
403
  height:70px;
404
  padding:2px!important;
405
  }
455
  padding:5px 5px 0;
456
  color: #333;
457
  }
458
+ #jd-calendar #calendar-list {
459
+ margin: 0;
460
+ padding: 0;
461
+ }
462
  #jd-calendar #calendar-list li {
463
  padding:5px;
464
  list-style-type: none;
520
  #jd-calendar .category-key li {
521
  margin: 2px 10px;
522
  }
523
+ #jd-calendar .category-key span {
524
  margin-right:5px;
 
525
  vertical-align:middle;
526
  }
527
+ #jd-calendar .category-key .no-icon {
528
+ width: 10px;
529
+ height: 10px;
530
+ display: inline-block;
531
+ border: 1px solid #555;
532
+ -moz-border-radius: 2px;
533
+ -webkit-border-radius: 2px;
534
+ border-radius: 2px;
535
+ }
536
 
537
  #calendar-list li {
538
  text-indent:0;
665
  $my_calendar_exists = true;
666
  $current_version = get_option('my_calendar_version');
667
  // check whether installed version matches most recent version, establish upgrade process.
668
+ }
669
  }
670
  }
671
  if ( $my_calendar_exists == false ) {
672
  $new_install = true;
673
+ } else if ( version_compare( $current_version,"1.3.0","<" ) ) {
674
+ $upgrade_path = "1.3.0";
675
+ if ( version_compare( $current_version, "1.3.8","<" ) && version_compare( $current_version, "1.3.0",">" ) ) {
676
+ update_option('my_calendar_show_css','');
677
+ }
678
+ // having determined upgrade path, assign new version number
679
+ update_option( 'my_calendar_version' , '1.3.8' );
680
+
681
+ }
682
+
683
 
684
  // Now we've determined what the current install is or isn't
685
  if ( $new_install == true ) {
712
  add_option('display_todays','true');
713
  add_option('display_upcoming','true');
714
  add_option('display_upcoming_days',7);
715
+ add_option('my_calendar_version','1.3.8');
716
  add_option('display_upcoming_type','false');
717
  add_option('display_upcoming_events',3);
718
  add_option('display_past_days',0);
727
  add_option('my_calendar_upcoming_title','Upcoming Events');
728
  add_option('calendar_javascript',0);
729
  add_option('list_javascript',0);
730
+ add_option('my_calendar_listjs',$initial_listjs);
731
+ add_option('my_calendar_caljs',$initial_caljs);
732
+ add_option('my_calendar_notime_text','N/A');
733
+ add_option('my_calendar_hide_icons','false');
734
  $sql = "UPDATE " . MY_CALENDAR_TABLE . " SET event_category=1";
735
  $wpdb->get_results($sql);
736
 
744
  $wpdb->get_results($sql);
745
  $sql = "INSERT INTO " . MY_CALENDAR_CATEGORIES_TABLE . " SET category_id=1, category_name='General', category_color='#ffffff', category_icon='event.png'";
746
  $wpdb->get_results($sql);
747
+
748
+ $sql = "CREATE TABLE " . MY_CALENDAR_LOCATIONS_TABLE . " (
749
+ location_id INT(11) NOT NULL AUTO_INCREMENT,
750
+ location_label VARCHAR(60) NOT NULL ,
751
+ location_street VARCHAR(60) NOT NULL ,
752
+ location_street2 VARCHAR(60) NOT NULL ,
753
+ location_city VARCHAR(60) NOT NULL ,
754
+ location_state VARCHAR(60) NOT NULL ,
755
+ location_postcode VARCHAR(10) NOT NULL ,
756
+ location_country VARCHAR(60) NOT NULL ,
757
+ PRIMARY KEY (location_id)
758
+ )";
759
+ $wpdb->get_results($sql);
760
+
761
+ }
762
 
763
+ // switch for different upgrade paths
764
  switch ($upgrade_path) {
765
+ case FALSE:
766
  break;
767
+ case '1.3.0':
768
+ add_option('my_calendar_listjs',$initial_listjs);
769
+ add_option('my_calendar_caljs',$initial_caljs);
770
+ add_option('my_calendar_show_heading','true');
771
+ $sql = "CREATE TABLE " . MY_CALENDAR_LOCATIONS_TABLE . " (
772
+ location_id INT(11) NOT NULL AUTO_INCREMENT,
773
+ location_label VARCHAR(60) NOT NULL ,
774
+ location_street VARCHAR(60) NOT NULL ,
775
+ location_street2 VARCHAR(60) NOT NULL ,
776
+ location_city VARCHAR(60) NOT NULL ,
777
+ location_state VARCHAR(60) NOT NULL ,
778
+ location_postcode VARCHAR(10) NOT NULL ,
779
+ location_country VARCHAR(60) NOT NULL ,
780
+ PRIMARY KEY (location_id)
781
+ )";
782
+ $wpdb->get_results($sql);
783
+
784
+ /*
785
+ if the user has fully uninstalled the plugin but kept the database of events, this will restore default settings.
786
+ */
787
+ if ( get_option( 'my_calendar_uninstalled' ) == 'true' ) {
788
+ add_option('can_manage_events','edit_posts');
789
+ add_option('my_calendar_style',"$initial_style");
790
+ add_option('display_author','false');
791
+ add_option('display_jump','false');
792
+ add_option('display_todays','true');
793
+ add_option('display_upcoming','true');
794
+ add_option('display_upcoming_days',7);
795
+ add_option('my_calendar_version','1.3.1');
796
+ add_option('display_upcoming_type','false');
797
+ add_option('display_upcoming_events',3);
798
+ add_option('display_past_days',0);
799
+ add_option('display_past_events',2);
800
+ add_option('my_calendar_use_styles','false');
801
+ add_option('my_calendar_show_months',1);
802
+ add_option('my_calendar_show_map','true');
803
+ add_option('my_calendar_show_address','false');
804
+ add_option('my_calendar_today_template',$default_template);
805
+ add_option('my_calendar_upcoming_template',$default_template);
806
+ add_option('my_calendar_today_title','Today\'s Events');
807
+ add_option('my_calendar_upcoming_title','Upcoming Events');
808
+ add_option('calendar_javascript',0);
809
+ add_option('list_javascript',0);
810
+ }
811
  default:
812
  break;
813
  }
863
  }
864
 
865
  // Configure the "Next" link in the calendar
866
+ function my_calendar_next_link($cur_year,$cur_month,$format) {
867
  $mod_rewrite_months = array(1=>'jan','feb','mar','apr','may','jun','jul','aug','sept','oct','nov','dec');
868
  $next_year = $cur_year + 1;
869
 
870
  $num_months = get_option('my_calendar_show_months');
871
+ if ($num_months <= 1 || $format=="calendar") {
872
  if ($cur_month == 12) {
873
  return '<a href="' . my_calendar_permalink_prefix() . 'month=jan&amp;yr=' . $next_year . '" rel="nofollow">'.__('Next Events','my-calendar').' &raquo;</a>';
874
  } else {
892
  }
893
 
894
  // Configure the "Previous" link in the calendar
895
+ function my_calendar_prev_link($cur_year,$cur_month,$format) {
896
  $mod_rewrite_months = array(1=>'jan','feb','mar','apr','may','jun','jul','aug','sept','oct','nov','dec');
897
  $last_year = $cur_year - 1;
898
 
899
  $num_months = get_option('my_calendar_show_months');
900
+ if ($num_months <= 1 || $format=="calendar") {
901
  if ($cur_month == 1) {
902
  return '<a href="' . my_calendar_permalink_prefix() . 'month=dec&amp;yr='. $last_year .'" rel="nofollow">&laquo; '.__('Previous Events','my-calendar').'</a>';
903
  } else {
943
  $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".$event->event_category;
944
  $cat_details = $wpdb->get_row($sql);
945
  $style = "background-color:".$cat_details->category_color.";";
946
+ if ( get_option('my_calendar_hide_icons')=='true' ) {
947
+ $image = "";
948
+ } else {
949
  if ($cat_details->category_icon != "") {
950
  if ( file_exists( WP_PLUGIN_DIR . '/my-calendar-custom/' ) ) {
951
  $path = '/my-calendar-custom';
956
  } else {
957
  $image = "";
958
  }
959
+ }
960
  $location_string = $event->event_street.$event->event_street2.$event->event_city.$event->event_state.$event->event_postcode.$event->event_country;
961
+ if (($display_address == 'true' || $display_map == 'true') && strlen($location_string) > 0 ) {
962
  $map_string = $event->event_street.' '.$event->event_street2.' '.$event->event_city.' '.$event->event_state.' '.$event->event_postcode.' '.$event->event_country;
963
 
964
  $address .= '<div class="address vcard">';
965
 
966
+ if ($display_address == 'true') {
967
  $address .= "<div class=\"adr\">";
968
  if ($event->event_label != "") {
969
  $address .= "<strong class=\"org\">".stripslashes($event->event_label)."</strong><br />";
988
  }
989
  $address .= "</div>";
990
  }
991
+ if ($display_map == 'true' && strlen($location_string) > 0 ) {
 
992
  $map_string = str_replace(" ","+",$map_string);
993
  if ($event->event_label != "") {
994
  $map_label = stripslashes($event->event_label);
997
  }
998
  $map = "<a href=\"http://maps.google.com/maps?f=q&amp;z=15&amp;q=$map_string\">Map<span> to $map_label</span></a>";
999
  $address .= "<div class=\"url map\">$map</div>";
 
1000
  }
1001
  $address .= "</div>";
1002
  }
1011
  if ($event->event_time != "00:00:00") {
1012
  $header_details .= "<span class='event-time'>".date(get_option('time_format'), strtotime($event->event_time)) . "</span>\n";
1013
  } else {
1014
+ $header_details .= "<span class='event-time'>";
1015
+ if ( get_option('my_calendar_notime_text') == '' || get_option('my_calendar_notime_text') == "N/A" ) {
1016
+ $header_details .= "<abbr title='".__('Not Applicable','my-calendar')."'>".__('N/A','my-calendar')."</abbr>\n";
1017
+ } else {
1018
+ $header_details .= get_option('my_calendar_notime_text');
1019
+ }
1020
+ $header_details .= "</span>";
1021
  }
1022
  $header_details .= "<div class='sub-details'>";
1023
  if ($type != "calendar") {
1027
  $e = get_userdata($event->event_author);
1028
  $header_details .= '<span class="event-author">'.__('Posted by', 'my-calendar').': <span class="author-name">'.$e->display_name."</span></span><br />\n ";
1029
  }
1030
+ if (($display_address == 'true' || $display_map == 'true') && strlen($location_string) > 0 ) {
1031
  $header_details .= $address;
1032
  }
1033
 
1043
  function mc_get_all_events($category) {
1044
  global $wpdb;
1045
  if ( $category!='default' ) {
1046
+ if ( strpos( $category, "|" ) ) {
1047
+ $categories = explode( "|", $category );
1048
+ $numcat = count($categories);
1049
+ $i = 1;
1050
+ foreach ($categories as $key) {
1051
+ if ( is_numeric($key) ) {
1052
+ if ($i == 1) {
1053
+ $select_category .= " WHERE (";
1054
+ }
1055
+ $select_category .= " event_category = $key";
1056
+ if ($i < $numcat) {
1057
+ $select_category .= " OR ";
1058
+ } else if ($i == $numcat) {
1059
+ $select_cateory .= ") ";
1060
+ }
1061
+ $i++;
1062
+ } else {
1063
+ $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$key'");
1064
+ $category_id = $cat->category_id;
1065
+ if ($i == 1) {
1066
+ $select_category .= " WHERE (";
1067
+ }
1068
+ $select_category .= " event_category = $category_id";
1069
+ if ($i < $numcat) {
1070
+ $select_category .= " OR ";
1071
+ } else if ($i == $numcat) {
1072
+ $select_category .= ") ";
1073
+ }
1074
+ $i++;
1075
+ }
1076
+ }
1077
+ } else {
1078
+ if (is_numeric($category)) {
1079
+ $select_category = " WHERE event_category = $category";
1080
  } else {
1081
+ $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$category'");
1082
+ $category_id = $cat->category_id;
1083
+ if (!$category_id) {
1084
+ //if the requested category doesn't exist, fail silently
1085
+ $select_category = "";
1086
+ } else {
1087
+ $select_category = " WHERE event_category = $category_id";
1088
+ }
1089
  }
1090
  }
1091
  } else {
1107
  for ($i=$numback;$i<=$numforward;$i++) {
1108
  $begin = my_calendar_add_date($orig_begin,$i,0,0);
1109
  $end = my_calendar_add_date($orig_end,$i,0,0);
1110
+ ${$i} = clone($event);
1111
  ${$i}->event_begin = $begin;
1112
  ${$i}->event_end = $end;
1113
  $arr_events[]=${$i};
1117
  for ($i=$numback;$i<=$numforward;$i++) {
1118
  $begin = my_calendar_add_date($orig_begin,($i*7),0,0);
1119
  $end = my_calendar_add_date($orig_end,($i*7),0,0);
1120
+ ${$i} = clone($event);
1121
  ${$i}->event_begin = $begin;
1122
  ${$i}->event_end = $end;
1123
  $arr_events[]=${$i};
1127
  for ($i=$numback;$i<=$numforward;$i++) {
1128
  $begin = my_calendar_add_date($orig_begin,($i*14),0,0);
1129
  $end = my_calendar_add_date($orig_end,($i*14),0,0);
1130
+ ${$i} = clone($event);
1131
  ${$i}->event_begin = $begin;
1132
  ${$i}->event_end = $end;
1133
  $arr_events[]=${$i};
1137
  for ($i=$numback;$i<=$numforward;$i++) {
1138
  $begin = my_calendar_add_date($orig_begin,0,$i,0);
1139
  $end = my_calendar_add_date($orig_end,0,$i,0);
1140
+ ${$i} = clone($event);
1141
  ${$i}->event_begin = $begin;
1142
  ${$i}->event_end = $end;
1143
  $arr_events[]=${$i};
1147
  for ($i=$numback;$i<=$numforward;$i++) {
1148
  $begin = my_calendar_add_date($orig_begin,0,0,$i);
1149
  $end = my_calendar_add_date($orig_end,0,0,$i);
1150
+ ${$i} = clone($event);
1151
  ${$i}->event_begin = $begin;
1152
  ${$i}->event_end = $end;
1153
  $arr_events[]=${$i};
1172
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1173
  $this_date = my_calendar_add_date($event_begin,($realStart),0,0);
1174
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1175
+ ${$realStart} = clone($event);
1176
  ${$realStart}->event_begin = $this_date;
1177
  $arr_events[] = ${$realStart};
1178
  }
1183
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1184
  $this_date = my_calendar_add_date($event_begin,$realDays,0,0);
1185
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) == true ) {
1186
+ ${$realDays} = clone($event);
1187
  ${$realDays}->event_begin = $this_date;
1188
  $arr_events[] = ${$realDays};
1189
  }
1211
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1212
  $this_date = my_calendar_add_date($event_begin,($realStart*7),0,0);
1213
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1214
+ ${$realStart} = clone($event);
1215
  ${$realStart}->event_begin = $this_date;
1216
  $arr_events[] = ${$realStart};
1217
  }
1222
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1223
  $this_date = my_calendar_add_date($event_begin,($realDays*7),0,0);
1224
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1225
+ ${$realDays} = clone($event);
1226
  ${$realDays}->event_begin = $this_date;
1227
  $arr_events[] = ${$realDays};
1228
  }
1250
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1251
  $this_date = my_calendar_add_date($event_begin,($realStart*14),0,0);
1252
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1253
+ ${$realStart} = clone($event);
1254
  ${$realStart}->event_begin = $this_date;
1255
  $arr_events[] = ${$realStart};
1256
  }
1261
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1262
  $this_date = my_calendar_add_date($event_begin,($realDays*14),0,0);
1263
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1264
+ ${$realDays} = clone($event);
1265
  ${$realDays}->event_begin = $this_date;
1266
  $arr_events[] = ${$realDays};
1267
  }
1289
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1290
  $this_date = my_calendar_add_date($event_begin,0,$realStart,0);
1291
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1292
+ ${$realStart} = clone($event);
1293
  ${$realStart}->event_begin = $this_date;
1294
  $arr_events[] = ${$realStart};
1295
  }
1300
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1301
  $this_date = my_calendar_add_date($event_begin,0,$realDays,0);
1302
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) == true ) {
1303
+ ${$realDays} = clone($event);
1304
  ${$realDays}->event_begin = $this_date;
1305
  $arr_events[] = ${$realDays};
1306
  }
1328
  for ($realStart;$realStart<=$realFinish;$realStart++) { // jump forward to near present.
1329
  $this_date = my_calendar_add_date($event_begin,0,0,$realStart);
1330
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) ) {
1331
+ ${$realStart} = clone($event);
1332
  ${$realStart}->event_begin = $this_date;
1333
  $arr_events[] = ${$realStart};
1334
  }
1339
  for ($realDays;$realDays<=$fDays;$realDays++) { // for each event within plus or minus range, mod date and add to array.
1340
  $this_date = my_calendar_add_date($event_begin,0,0,$realDays);
1341
  if ( my_calendar_date_comp( $event->event_begin,$this_date ) == true ) {
1342
+ ${$realDays} = clone($event);
1343
  ${$realDays}->event_begin = $this_date;
1344
  $arr_events[] = ${$realDays};
1345
  }
1360
  }
1361
  // Grab all events for the requested date from calendar
1362
  function my_calendar_grab_events($y,$m,$d,$category=null) {
1363
+
1364
+ if (!checkdate($m,$d,$y)) {
1365
+ return;
1366
+ }
1367
+
1368
  global $wpdb;
1369
 
1370
  if ( $category!=null ) {
1371
+ if ( strpos( $category, "|" ) ) {
1372
+ $categories = explode( "|", $category );
1373
+ $numcat = count($categories);
1374
+ $i = 1;
1375
+ foreach ($categories as $key) {
1376
+ if ( is_numeric($key) ) {
1377
+ if ($i == 1) {
1378
+ $select_category .= "(";
1379
+ }
1380
+ $select_category .= " event_category = $key";
1381
+ if ($i < $numcat) {
1382
+ $select_category .= " OR ";
1383
+ } else if ($i == $numcat) {
1384
+ $select_category .= ") AND";
1385
+ }
1386
+ $i++;
1387
+ } else {
1388
+ $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$key'");
1389
+ $category_id = $cat->category_id;
1390
+ if ($i == 1) {
1391
+ $select_category .= "(";
1392
+ }
1393
+ $select_category .= " event_category = $category_id";
1394
+ if ($i < $numcat) {
1395
+ $select_category .= " OR ";
1396
+ } else if ($i == $numcat) {
1397
+ $select_category .= ") AND";
1398
+ }
1399
+ $i++;
1400
+ }
1401
+ }
1402
  } else {
1403
+ if (is_numeric($category)) {
1404
+ $select_category = "event_category = $category AND";
 
 
 
1405
  } else {
1406
+ $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$category'");
1407
+ $category_id = $cat->category_id;
1408
+ if (!$category_id) {
1409
+ //if the requested category doesn't exist, fail silently
1410
+ $select_category = "";
1411
+ } else {
1412
+ $select_category = "event_category = $category_id AND";
1413
+ }
1414
  }
1415
  }
1416
  }
1828
  }
1829
 
1830
  $days_in_month = date("t", mktime (0,0,0,$c_month,1,$c_year));
1831
+ $and = __("and",'my-calendar');
1832
  if ($category != "" && $category != "all") {
1833
+ $category_label = str_replace("|"," $and ",$category) . ' ';
1834
  } else {
1835
  $category_label = "";
1836
  }
1837
  // Start the calendar and add header and navigation
1838
  $my_calendar_body .= "<div id=\"jd-calendar\">";
1839
  // Add the calendar table and heading
1840
+ $caption_text = stripslashes( get_option('my_calendar_caption') );
1841
+
1842
  if ($format == "calendar") {
1843
  $my_calendar_body .= '<div class="my-calendar-header">';
1844
 
1848
  if ($date_switcher == 'true') {
1849
  $my_calendar_body .= mc_build_date_switcher();
1850
  }
 
1851
  // The header of the calendar table and the links. Note calls to link functions
1852
  $my_calendar_body .= '
1853
  <div class="my-calendar-nav">
1854
  <ul>
1855
+ <li class="my-calendar-prev">' . my_calendar_prev_link($c_year,$c_month,$format) . '</li>
1856
+ <li class="my-calendar-next">' . my_calendar_next_link($c_year,$c_month,$format) . '</li>
1857
  </ul>
1858
  </div>
1859
  </div>';
1860
  $my_calendar_body .= "\n<table class=\"my-calendar-table\" summary=\"$category_label".__('Calendar','my-calendar')."\">\n";
1861
+ $my_calendar_body .= '<caption class="my-calendar-month">'.$name_months[(int)$c_month].' '.$c_year.$caption_text."</caption>\n";
1862
  } else {
1863
+ if ( get_option('my_calendar_show_heading') == 'true' ) {
1864
+ $my_calendar_body .= "\n<h2 class=\"my-calendar-heading\">$category_label".__('Calendar','my-calendar')."</h2>\n";
1865
+ }
1866
  $num_months = get_option('my_calendar_show_months');
1867
  if ($num_months <= 1) {
1868
+ $my_calendar_body .= '<h3 class="my-calendar-month">'.__('Events in','my-calendar').' '.$name_months[(int)$c_month].' '.$c_year.$caption_text."</h3>\n";
1869
  } else {
1870
+ $my_calendar_body .= '<h3 class="my-calendar-month">'.$name_months[(int)$c_month].'&thinsp;&ndash;&thinsp;'.$name_months[(int)$c_month+$num_months-1].' '.$c_year.$caption_text."</h3>\n";
1871
  }
1872
  $my_calendar_body .= '<div class="my-calendar-header">';
1873
 
1882
  $my_calendar_body .= '
1883
  <div class="my-calendar-nav">
1884
  <ul>
1885
+ <li class="my-calendar-prev">' . my_calendar_prev_link($c_year,$c_month,$format) . '</li>
1886
+ <li class="my-calendar-next">' . my_calendar_next_link($c_year,$c_month,$format) . '</li>
1887
  </ul>
1888
  </div>
1889
  </div>';
1954
  $add_month = 1;
1955
  }
1956
  $c_month = (int) $c_month + $add_month;
1957
+ for ($i=1; $i<=31; $i++) {
1958
  $grabbed_events = my_calendar_grab_events($c_year,$c_month,$i,$category);
1959
  if (count($grabbed_events)) {
1960
  if ( get_option('list_javascript') != 1) {
1963
  } else {
1964
  $is_anchor = $is_close_anchor = "";
1965
  }
1966
+ $my_calendar_body .= "<li class='$class".(date("Ymd", mktime (0,0,0,$c_month,$i,$c_year))==date("Ymd",time()+(60*60*$offset))?' current-day':'')."'><strong class=\"event-date\">$is_anchor".date_i18n($date_format,mktime(0,0,0,$c_month,$i,$c_year))."$is_close_anchor</strong>".my_calendar_draw_events($grabbed_events, $format)."</li>";
1967
  $num_events++;
1968
  }
1969
  if (my_calendar_is_odd($num_events)) {
1970
+ $class = "odd";
1971
  } else {
1972
+ $class = "even";
1973
+ }
1974
+ }
1975
  }
1976
  if ($num_events == 0) {
1977
  $my_calendar_body .= "<li class='no-events'>".__('There are no events scheduled during this period.','my-calendar') . "</li>";
1985
  $cat_details = $wpdb->get_results($sql);
1986
  $my_calendar_body .= '<div class="category-key">
1987
  <h3>'.__('Category Key','my-calendar')."</h3>\n<ul>\n";
1988
+
1989
  if ( file_exists( WP_PLUGIN_DIR . '/my-calendar-custom/' ) ) {
1990
  $path = '/my-calendar-custom';
1991
  } else {
1992
  $path = '/my-calendar/icons';
1993
  }
1994
  foreach($cat_details as $cat_detail) {
1995
+
1996
+ if ($cat_detail->category_icon != "" && get_option('my_calendar_hide_icons')!='true') {
1997
  $my_calendar_body .= '<li><span class="category-color-sample"><img src="'.WP_PLUGIN_URL.$path.'/'.$cat_detail->category_icon.'" alt="" style="background:'.$cat_detail->category_color.';" /></span>'.$cat_detail->category_name."</li>\n";
1998
  } else {
1999
+ $my_calendar_body .= '<li><span class="category-color-sample no-icon" style="background:'.$cat_detail->category_color.';"> &nbsp; </span>'.$cat_detail->category_name."</li>\n";
2000
  }
2001
  }
2002
  $my_calendar_body .= "</ul>\n</div>";
2024
  return false;
2025
  }
2026
  }
2027
+
2028
+ // compatibility of clone keyword between PHP 5 and 4
2029
+ if (version_compare(phpversion(), '5.0') < 0) {
2030
+ eval('
2031
+ function clone($object) {
2032
+ return $object;
2033
+ }
2034
+ ');
2035
+ }
2036
+
2037
 
2038
  ?>
my-calendar.pot CHANGED
@@ -1,4 +1,4 @@
1
- # Translation of the WordPress plugin My Calendar 1.1.0 by Joseph C Dolson.
2
  # Copyright (C) 2010 Joseph C Dolson
3
  # This file is distributed under the same license as the My Calendar package.
4
  # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
@@ -6,9 +6,9 @@
6
  #, fuzzy
7
  msgid ""
8
  msgstr ""
9
- "Project-Id-Version: My Calendar 1.1.0\n"
10
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/my-calendar\n"
11
- "POT-Creation-Date: 2010-05-10 18:21+0000\n"
12
  "PO-Revision-Date: 2010-MO-DA HO:MI+ZONE\n"
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -46,7 +46,7 @@ msgstr ""
46
  msgid "Category Icon"
47
  msgstr ""
48
 
49
- #: my-calendar-categories.php:85
50
  msgid "Save Changes"
51
  msgstr ""
52
 
@@ -63,11 +63,12 @@ msgstr ""
63
  msgid "Add New Category"
64
  msgstr ""
65
 
66
- #: my-calendar-categories.php:139 my-calendar.php:127
67
  msgid "Manage Categories"
68
  msgstr ""
69
 
70
- #: my-calendar-categories.php:151 my-calendar-event-manager.php:643
 
71
  msgid "ID"
72
  msgstr ""
73
 
@@ -76,21 +77,24 @@ msgid "Category Color"
76
  msgstr ""
77
 
78
  #: my-calendar-categories.php:155 my-calendar-categories.php:169
79
- #: my-calendar-event-manager.php:695
 
80
  msgid "Edit"
81
  msgstr ""
82
 
83
  #: my-calendar-categories.php:156 my-calendar-categories.php:175
84
- #: my-calendar-event-manager.php:58 my-calendar-event-manager.php:695
 
85
  msgid "Delete"
86
  msgstr ""
87
 
88
- #: my-calendar-categories.php:172 my-calendar-event-manager.php:681
89
- #: my-calendar.php:883
 
90
  msgid "N/A"
91
  msgstr ""
92
 
93
- #: my-calendar-categories.php:175
94
  msgid "Are you sure you want to delete this category?"
95
  msgstr ""
96
 
@@ -98,338 +102,358 @@ msgstr ""
98
  msgid "There are no categories in the database - something has gone wrong!"
99
  msgstr ""
100
 
101
- #: my-calendar-event-manager.php:14 my-calendar-settings.php:206
102
  msgid ""
103
  "My Calendar has identified that you have the Calendar plugin by Kieran "
104
  "O'Shea installed. You can import those events and categories into the My "
105
  "Calendar database. Would you like to import these events?"
106
  msgstr ""
107
 
108
- #: my-calendar-event-manager.php:25
 
 
 
 
109
  msgid ""
110
- "Calendar Import has received limited testing. Although it is possible that "
111
- "it could fail to import your events correctly, it should not have any impact "
112
- "on your existing Calendar database. If you encounter any problems, <a href="
113
- "\"http://www.joedolson.com/contact.php\">please contact me</a>!"
114
  msgstr ""
115
 
116
- #: my-calendar-event-manager.php:53
117
  msgid "Delete Event"
118
  msgstr ""
119
 
120
- #: my-calendar-event-manager.php:53
121
  msgid "Are you sure you want to delete this event?"
122
  msgstr ""
123
 
124
- #: my-calendar-event-manager.php:66
125
  msgid "You do not have permission to delete that event."
126
  msgstr ""
127
 
128
- #: my-calendar-event-manager.php:131 my-calendar-event-manager.php:136
129
- #: my-calendar-event-manager.php:141 my-calendar-event-manager.php:151
130
- #: my-calendar-event-manager.php:159 my-calendar-event-manager.php:168
131
- #: my-calendar-event-manager.php:176 my-calendar-event-manager.php:207
132
- #: my-calendar-event-manager.php:302 my-calendar-event-manager.php:307
133
- #: my-calendar-event-manager.php:312 my-calendar-event-manager.php:322
134
- #: my-calendar-event-manager.php:330 my-calendar-event-manager.php:339
135
- #: my-calendar-event-manager.php:347 my-calendar-event-manager.php:419
136
- #: my-calendar-event-manager.php:434
137
  msgid "Error"
138
  msgstr ""
139
 
140
- #: my-calendar-event-manager.php:131 my-calendar-event-manager.php:302
141
  msgid ""
142
  "Your event end date must be either after or the same as your event begin date"
143
  msgstr ""
144
 
145
- #: my-calendar-event-manager.php:136 my-calendar-event-manager.php:307
146
  msgid ""
147
  "Your date formatting is correct but one or more of your dates is invalid. "
148
  "Check for number of days in month and leap year related errors."
149
  msgstr ""
150
 
151
- #: my-calendar-event-manager.php:141 my-calendar-event-manager.php:312
152
  msgid ""
153
  "Both start and end dates must be entered and be in the format YYYY-MM-DD"
154
  msgstr ""
155
 
156
- #: my-calendar-event-manager.php:151 my-calendar-event-manager.php:322
157
  msgid "The time field must either be blank or be entered in the format hh:mm"
158
  msgstr ""
159
 
160
- #: my-calendar-event-manager.php:159 my-calendar-event-manager.php:330
161
  msgid ""
162
  "The URL entered must either be prefixed with http:// or be completely blank"
163
  msgstr ""
164
 
165
- #: my-calendar-event-manager.php:168 my-calendar-event-manager.php:339
166
  msgid "The event title must be between 1 and 60 characters in length."
167
  msgstr ""
168
 
169
- #: my-calendar-event-manager.php:176 my-calendar-event-manager.php:347
170
  msgid ""
171
  "The repetition value must be 0 unless a type of recurrance is selected in "
172
  "which case the repetition value must be 0 or higher"
173
  msgstr ""
174
 
175
- #: my-calendar-event-manager.php:207
176
  msgid ""
177
  "An event with the details you submitted could not be found in the database. "
178
  "This may indicate a problem with your database or the way in which it is "
179
  "configured."
180
  msgstr ""
181
 
182
- #: my-calendar-event-manager.php:211
183
  msgid "Event added. It will now show in your calendar."
184
  msgstr ""
185
 
186
- #: my-calendar-event-manager.php:279 my-calendar-event-manager.php:378
187
  msgid "Failure"
188
  msgstr ""
189
 
190
- #: my-calendar-event-manager.php:279
191
  msgid "You can't update an event if you haven't submitted an event id"
192
  msgstr ""
193
 
194
- #: my-calendar-event-manager.php:378
195
  msgid ""
196
  "The database failed to return data to indicate the event has been updated "
197
  "sucessfully. This may indicate a problem with your database or the way in "
198
  "which it is configured."
199
  msgstr ""
200
 
201
- #: my-calendar-event-manager.php:382
202
  msgid "Event updated successfully"
203
  msgstr ""
204
 
205
- #: my-calendar-event-manager.php:410
206
  msgid "You do not have sufficient permissions to edit that event."
207
  msgstr ""
208
 
209
- #: my-calendar-event-manager.php:419
210
  msgid "You can't delete an event if you haven't submitted an event id"
211
  msgstr ""
212
 
213
- #: my-calendar-event-manager.php:430
214
  msgid "Event deleted successfully"
215
  msgstr ""
216
 
217
- #: my-calendar-event-manager.php:434
218
  msgid ""
219
  "Despite issuing a request to delete, the event still remains in the "
220
  "database. Please investigate."
221
  msgstr ""
222
 
223
- #: my-calendar-event-manager.php:449 my-calendar-event-manager.php:505
224
  msgid "Edit Event"
225
  msgstr ""
226
 
227
- #: my-calendar-event-manager.php:453
228
  msgid "You must provide an event id in order to edit it"
229
  msgstr ""
230
 
231
- #: my-calendar-event-manager.php:459
232
  msgid "Add Event"
233
  msgstr ""
234
 
235
- #: my-calendar-event-manager.php:464
236
  msgid "Manage Events"
237
  msgstr ""
238
 
239
- #: my-calendar-event-manager.php:481
240
  msgid "Sorry! That's an invalid event key."
241
  msgstr ""
242
 
243
- #: my-calendar-event-manager.php:486
244
  msgid "Sorry! We couldn't find an event with that ID."
245
  msgstr ""
246
 
247
- #: my-calendar-event-manager.php:505
248
  msgid "Add an Event"
249
  msgstr ""
250
 
251
- #: my-calendar-event-manager.php:514
252
  msgid "Enter your Event Information"
253
  msgstr ""
254
 
255
- #: my-calendar-event-manager.php:516
256
  msgid "Event Title"
257
  msgstr ""
258
 
259
- #: my-calendar-event-manager.php:519
260
  msgid ""
261
  "Event Description (<abbr title=\"hypertext markup language\">HTML</abbr> "
262
  "allowed)"
263
  msgstr ""
264
 
265
- #: my-calendar-event-manager.php:522
266
  msgid "Event Category"
267
  msgstr ""
268
 
269
- #: my-calendar-event-manager.php:541
270
  msgid "Event Link (Optional)"
271
  msgstr ""
272
 
273
- #: my-calendar-event-manager.php:544
274
  msgid "Start Date (YYYY-MM-DD)"
275
  msgstr ""
276
 
277
- #: my-calendar-event-manager.php:547
278
  msgid "End Date (YYYY-MM-DD) (Optional)"
279
  msgstr ""
280
 
281
- #: my-calendar-event-manager.php:550
282
  msgid "Time (hh:mm)"
283
  msgstr ""
284
 
285
- #: my-calendar-event-manager.php:561
286
  msgid ""
287
  "Optional, set blank if your event is an all-day event or does not happen at "
288
  "a specific time."
289
  msgstr ""
290
 
291
- #: my-calendar-event-manager.php:561
292
  msgid "Current time difference from GMT is "
293
  msgstr ""
294
 
295
- #: my-calendar-event-manager.php:561
296
  msgid " hour(s)"
297
  msgstr ""
298
 
299
- #: my-calendar-event-manager.php:565
300
  msgid "Recurring Events"
301
  msgstr ""
302
 
303
- #: my-calendar-event-manager.php:586
304
  msgid "Repeats for"
305
  msgstr ""
306
 
307
- #: my-calendar-event-manager.php:587
308
  msgid "Units"
309
  msgstr ""
310
 
311
- #: my-calendar-event-manager.php:588
312
  msgid "Does not recur"
313
  msgstr ""
314
 
315
- #: my-calendar-event-manager.php:589 my-calendar-event-manager.php:671
316
  msgid "Daily"
317
  msgstr ""
318
 
319
- #: my-calendar-event-manager.php:590 my-calendar-event-manager.php:672
320
  msgid "Weekly"
321
  msgstr ""
322
 
323
- #: my-calendar-event-manager.php:591
324
  msgid "Bi-weekly"
325
  msgstr ""
326
 
327
- #: my-calendar-event-manager.php:592 my-calendar-event-manager.php:674
328
  msgid "Monthly"
329
  msgstr ""
330
 
331
- #: my-calendar-event-manager.php:593
332
  msgid "Annually"
333
  msgstr ""
334
 
335
- #: my-calendar-event-manager.php:595
336
  msgid ""
337
  "Entering 0 means forever, if a unit is selected. If the recurrance unit is "
338
  "left at \"Does not recur,\" the event will not reoccur."
339
  msgstr ""
340
 
341
- #: my-calendar-event-manager.php:602
 
342
  msgid ""
343
  "All location fields are optional: <em>insufficient information may result in "
344
  "an inaccurate map</em>."
345
  msgstr ""
346
 
347
- #: my-calendar-event-manager.php:605
 
 
 
 
 
 
 
 
 
348
  msgid "Name of Location (e.g. <em>Joe's Bar and Grill</em>)"
349
  msgstr ""
350
 
351
- #: my-calendar-event-manager.php:608
 
352
  msgid "Street Address"
353
  msgstr ""
354
 
355
- #: my-calendar-event-manager.php:611
 
356
  msgid "Street Address (2)"
357
  msgstr ""
358
 
359
- #: my-calendar-event-manager.php:614
 
360
  msgid "City"
361
  msgstr ""
362
 
363
- #: my-calendar-event-manager.php:614
 
364
  msgid "State/Province"
365
  msgstr ""
366
 
367
- #: my-calendar-event-manager.php:614
 
368
  msgid "Postal Code"
369
  msgstr ""
370
 
371
- #: my-calendar-event-manager.php:617
 
372
  msgid "Country"
373
  msgstr ""
374
 
375
- #: my-calendar-event-manager.php:622
376
  msgid "Save Event"
377
  msgstr ""
378
 
379
- #: my-calendar-event-manager.php:644 my-calendar-widgets.php:32
380
- #: my-calendar-widgets.php:111
381
  msgid "Title"
382
  msgstr ""
383
 
384
- #: my-calendar-event-manager.php:645
385
  msgid "Description"
386
  msgstr ""
387
 
388
- #: my-calendar-event-manager.php:646
389
  msgid "Start Date"
390
  msgstr ""
391
 
392
- #: my-calendar-event-manager.php:648
393
  msgid "Recurs"
394
  msgstr ""
395
 
396
- #: my-calendar-event-manager.php:649
397
  msgid "Repeats"
398
  msgstr ""
399
 
400
- #: my-calendar-event-manager.php:650 my-calendar-settings.php:152
401
  msgid "Author"
402
  msgstr ""
403
 
404
- #: my-calendar-event-manager.php:651
405
  msgid "Category"
406
  msgstr ""
407
 
408
- #: my-calendar-event-manager.php:652
409
  msgid "Edit / Delete"
410
  msgstr ""
411
 
412
- #: my-calendar-event-manager.php:670
413
  msgid "Never"
414
  msgstr ""
415
 
416
- #: my-calendar-event-manager.php:673
417
  msgid "Bi-Weekly"
418
  msgstr ""
419
 
420
- #: my-calendar-event-manager.php:675
421
  msgid "Yearly"
422
  msgstr ""
423
 
424
- #: my-calendar-event-manager.php:682
425
  msgid "Forever"
426
  msgstr ""
427
 
428
- #: my-calendar-event-manager.php:683
429
  msgid "Times"
430
  msgstr ""
431
 
432
- #: my-calendar-event-manager.php:705
433
  msgid "There are no events in the database!"
434
  msgstr ""
435
 
@@ -455,26 +479,28 @@ msgid ""
455
  "which will show the calendar in a list format, skipping dates without any "
456
  "events. The <code>category</code> attribute requires either the name of or "
457
  "ID number one of your event categories (the name is case-sensitive). This "
458
- "will show a calendar only including events in that category. Setting "
459
- "<code>showkey</code> to <code>no</code> will prevent the category key from "
460
- "being displayed &mdash; this can be useful with single-category output."
 
 
461
  msgstr ""
462
 
463
  #: my-calendar-help.php:22
464
  msgid ""
465
  "This shortcode displays the output of the Upcoming Events widget. Without "
466
  "attributes, it will display using the settings in your widget; the "
467
- "attributes are used to override the widget settings.The <code>before</code> "
468
  "and <code>after</code> attributes should be numbers; the <code>type</code> "
469
- "attribute can be either \"event\" or \"date\", and the <code>category</code> "
470
  "attribute works the same way as the category attribute on the main calendar "
471
- "shortcode."
472
  msgstr ""
473
 
474
  #: my-calendar-help.php:25
475
  msgid ""
476
  "Predictably enough, this shortcode displays the output of the Today's Events "
477
- "widget, with one configurable category attribute."
478
  msgstr ""
479
 
480
  #: my-calendar-help.php:33
@@ -596,336 +622,463 @@ msgid ""
596
  "information is available. If not, will be empty."
597
  msgstr ""
598
 
599
- #: my-calendar-settings.php:56
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
600
  msgid "Categories imported successfully."
601
  msgstr ""
602
 
603
- #: my-calendar-settings.php:58
604
  msgid "Categories not imported."
605
  msgstr ""
606
 
607
- #: my-calendar-settings.php:61
608
  msgid "Events imported successfully."
609
  msgstr ""
610
 
611
- #: my-calendar-settings.php:63
612
  msgid "Events not imported."
613
  msgstr ""
614
 
615
- #: my-calendar-settings.php:112
616
  msgid "Settings saved"
617
  msgstr ""
618
 
619
- #: my-calendar-settings.php:139
620
  msgid "My Calendar Options"
621
  msgstr ""
622
 
623
- #: my-calendar-settings.php:143
624
  msgid "Calendar Settings"
625
  msgstr ""
626
 
627
- #: my-calendar-settings.php:147
628
- msgid "Primary Calendar Options"
629
  msgstr ""
630
 
631
- #: my-calendar-settings.php:149
632
  msgid "Choose the lowest user group that may manage events"
633
  msgstr ""
634
 
635
- #: my-calendar-settings.php:150
636
  msgid "Subscriber"
637
  msgstr ""
638
 
639
- #: my-calendar-settings.php:151
640
  msgid "Contributor"
641
  msgstr ""
642
 
643
- #: my-calendar-settings.php:153
644
  msgid "Editor"
645
  msgstr ""
646
 
647
- #: my-calendar-settings.php:154
648
  msgid "Administrator"
649
  msgstr ""
650
 
651
- #: my-calendar-settings.php:158
 
 
 
 
652
  msgid "Do you want to display the author name on events?"
653
  msgstr ""
654
 
655
- #: my-calendar-settings.php:159 my-calendar-settings.php:165
656
  msgid "Yes"
657
  msgstr ""
658
 
659
- #: my-calendar-settings.php:160 my-calendar-settings.php:166
660
  msgid "No"
661
  msgstr ""
662
 
663
- #: my-calendar-settings.php:164
664
  msgid "Display a jumpbox for changing month and year quickly?"
665
  msgstr ""
666
 
667
- #: my-calendar-settings.php:170
668
  msgid "In list mode, show how many months of events at a time:"
669
  msgstr ""
670
 
671
- #: my-calendar-settings.php:173
672
  msgid "Date format in list mode"
673
  msgstr ""
674
 
675
- #: my-calendar-settings.php:174
676
  msgid ""
677
  "Date format uses the same syntax as the <a href=\"http://php.net/date\">PHP "
678
  "<code>date()</code> function</a>. Save option to update sample output."
679
  msgstr ""
680
 
681
- #: my-calendar-settings.php:177
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
682
  msgid ""
683
  "Show Link to Google Map (when sufficient address information is available.)"
684
  msgstr ""
685
 
686
- #: my-calendar-settings.php:178
687
  msgid "Show Event Address in Details"
688
  msgstr ""
689
 
690
- #: my-calendar-settings.php:182
691
- msgid "Calendar Styles"
692
  msgstr ""
693
 
694
- #: my-calendar-settings.php:184
695
- msgid "Reset the My Calendar style to default"
 
 
 
 
696
  msgstr ""
697
 
698
- #: my-calendar-settings.php:185
 
 
 
 
 
 
 
 
 
 
 
 
699
  msgid "Disable My Calendar Stylesheet"
700
  msgstr ""
701
 
702
- #: my-calendar-settings.php:188
703
  msgid "Edit the stylesheet for My Calendar"
704
  msgstr ""
705
 
706
- #: my-calendar-settings.php:192
707
- msgid "Calendar Behaviors"
708
  msgstr ""
709
 
710
- #: my-calendar-settings.php:194
711
- msgid "Disable List Javascript Effects"
 
 
 
 
712
  msgstr ""
713
 
714
- #: my-calendar-settings.php:195
715
  msgid "Disable Calendar Javascript Effects"
716
  msgstr ""
717
 
718
- #: my-calendar-settings.php:198
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
719
  msgid "Save"
720
  msgstr ""
721
 
722
- #: my-calendar-widgets.php:11 my-calendar-widgets.php:42
723
- #: my-calendar-widgets.php:43
724
  msgid "Today's Events"
725
  msgstr ""
726
 
727
- #: my-calendar-widgets.php:36 my-calendar-widgets.php:115
728
  msgid "Template"
729
  msgstr ""
730
 
731
- #: my-calendar-widgets.php:56 my-calendar-widgets.php:141
732
- #: my-calendar-widgets.php:142
 
 
 
 
733
  msgid "Upcoming Events"
734
  msgstr ""
735
 
736
- #: my-calendar-widgets.php:119
737
  msgid "Widget Options"
738
  msgstr ""
739
 
740
- #: my-calendar-widgets.php:121
741
  msgid "Display upcoming events by:"
742
  msgstr ""
743
 
744
- #: my-calendar-widgets.php:122
745
  msgid "Events (e.g. 2 past, 3 future)"
746
  msgstr ""
747
 
748
- #: my-calendar-widgets.php:123
749
  msgid "Dates (e.g. 4 days past, 5 forward)"
750
  msgstr ""
751
 
752
- #: my-calendar-widgets.php:127
753
  msgid "events into the future;"
754
  msgstr ""
755
 
756
- #: my-calendar-widgets.php:128
757
  msgid "events from the past"
758
  msgstr ""
759
 
760
- #: my-calendar-widgets.php:131
761
  msgid "days into the future;"
762
  msgstr ""
763
 
764
- #: my-calendar-widgets.php:132
765
  msgid "days from the past"
766
  msgstr ""
767
 
768
- #: my-calendar-widgets.php:135
769
  msgid "Show only this category:"
770
  msgstr ""
771
 
772
- #: my-calendar-widgets.php:243
773
  msgid "There are no events currently scheduled."
774
  msgstr ""
775
 
776
- #: my-calendar.php:46 my-calendar.php:128
777
  msgid "Settings"
778
  msgstr ""
779
 
780
- #: my-calendar.php:65
781
  msgid "Get Support"
782
  msgstr ""
783
 
784
- #: my-calendar.php:66
785
  msgid "Make a Donation"
786
  msgstr ""
787
 
788
- #. #-#-#-#-# plugin.pot (My Calendar 1.1.0) #-#-#-#-#
789
  #. Plugin Name of the plugin/theme
790
- #: my-calendar.php:120
791
  msgid "My Calendar"
792
  msgstr ""
793
 
794
- #: my-calendar.php:123
795
  msgid "Add/Edit Events"
796
  msgstr ""
797
 
798
- #: my-calendar.php:129
 
 
 
 
799
  msgid "My Calendar Help"
800
  msgstr ""
801
 
802
- #: my-calendar.php:129
803
  msgid "Help"
804
  msgstr ""
805
 
806
- #: my-calendar.php:744 my-calendar.php:748 my-calendar.php:758
807
- #: my-calendar.php:760
808
  msgid "Next Events"
809
  msgstr ""
810
 
811
- #: my-calendar.php:773 my-calendar.php:777 my-calendar.php:787
812
- #: my-calendar.php:789
813
  msgid "Previous Events"
814
  msgstr ""
815
 
816
- #: my-calendar.php:877
817
  msgid "Event Details"
818
  msgstr ""
819
 
820
- #: my-calendar.php:883
821
  msgid "Not Applicable"
822
  msgstr ""
823
 
824
- #: my-calendar.php:891
825
  msgid "Posted by"
826
  msgstr ""
827
 
828
- #: my-calendar.php:1502
829
  msgid "Month"
830
  msgstr ""
831
 
832
- #: my-calendar.php:1503 my-calendar.php:1566
833
  msgid "January"
834
  msgstr ""
835
 
836
- #: my-calendar.php:1504 my-calendar.php:1566
837
  msgid "February"
838
  msgstr ""
839
 
840
- #: my-calendar.php:1505 my-calendar.php:1566
841
  msgid "March"
842
  msgstr ""
843
 
844
- #: my-calendar.php:1506 my-calendar.php:1566
845
  msgid "April"
846
  msgstr ""
847
 
848
- #: my-calendar.php:1507 my-calendar.php:1566
849
  msgid "May"
850
  msgstr ""
851
 
852
- #: my-calendar.php:1508 my-calendar.php:1566
853
  msgid "June"
854
  msgstr ""
855
 
856
- #: my-calendar.php:1509 my-calendar.php:1566
857
  msgid "July"
858
  msgstr ""
859
 
860
- #: my-calendar.php:1510 my-calendar.php:1566
861
  msgid "August"
862
  msgstr ""
863
 
864
- #: my-calendar.php:1511 my-calendar.php:1566
865
  msgid "September"
866
  msgstr ""
867
 
868
- #: my-calendar.php:1512 my-calendar.php:1566
869
  msgid "October"
870
  msgstr ""
871
 
872
- #: my-calendar.php:1513 my-calendar.php:1566
873
  msgid "November"
874
  msgstr ""
875
 
876
- #: my-calendar.php:1514 my-calendar.php:1566
877
  msgid "December"
878
  msgstr ""
879
 
880
- #: my-calendar.php:1516
881
  msgid "Year"
882
  msgstr ""
883
 
884
- #: my-calendar.php:1541
885
  msgid "Go"
886
  msgstr ""
887
 
888
- #: my-calendar.php:1559 my-calendar.php:1562
889
  msgid "<abbr title=\"Sunday\">Sun</abbr>"
890
  msgstr ""
891
 
892
- #: my-calendar.php:1559 my-calendar.php:1562
893
  msgid "<abbr title=\"Monday\">Mon</abbr>"
894
  msgstr ""
895
 
896
- #: my-calendar.php:1559 my-calendar.php:1562
897
  msgid "<abbr title=\"Tuesday\">Tues</abbr>"
898
  msgstr ""
899
 
900
- #: my-calendar.php:1559 my-calendar.php:1562
901
  msgid "<abbr title=\"Wednesday\">Wed</abbr>"
902
  msgstr ""
903
 
904
- #: my-calendar.php:1559 my-calendar.php:1562
905
  msgid "<abbr title=\"Thursday\">Thur</abbr>"
906
  msgstr ""
907
 
908
- #: my-calendar.php:1559 my-calendar.php:1562
909
  msgid "<abbr title=\"Friday\">Fri</abbr>"
910
  msgstr ""
911
 
912
- #: my-calendar.php:1559 my-calendar.php:1562
913
  msgid "<abbr title=\"Saturday\">Sat</abbr>"
914
  msgstr ""
915
 
916
- #: my-calendar.php:1648 my-calendar.php:1651
 
 
 
 
917
  msgid "Calendar"
918
  msgstr ""
919
 
920
- #: my-calendar.php:1655
921
  msgid "Events in"
922
  msgstr ""
923
 
924
- #: my-calendar.php:1764
925
  msgid "There are no events scheduled during this period."
926
  msgstr ""
927
 
928
- #: my-calendar.php:1774
929
  msgid "Category Key"
930
  msgstr ""
931
 
1
+ # Translation of the WordPress plugin My Calendar 1.3.8 by Joseph C Dolson.
2
  # Copyright (C) 2010 Joseph C Dolson
3
  # This file is distributed under the same license as the My Calendar package.
4
  # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
6
  #, fuzzy
7
  msgid ""
8
  msgstr ""
9
+ "Project-Id-Version: My Calendar 1.3.8\n"
10
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/my-calendar\n"
11
+ "POT-Creation-Date: 2010-06-30 15:09+0000\n"
12
  "PO-Revision-Date: 2010-MO-DA HO:MI+ZONE\n"
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
46
  msgid "Category Icon"
47
  msgstr ""
48
 
49
+ #: my-calendar-categories.php:85 my-calendar-locations.php:60
50
  msgid "Save Changes"
51
  msgstr ""
52
 
63
  msgid "Add New Category"
64
  msgstr ""
65
 
66
+ #: my-calendar-categories.php:139 my-calendar.php:146
67
  msgid "Manage Categories"
68
  msgstr ""
69
 
70
+ #: my-calendar-categories.php:151 my-calendar-event-manager.php:741
71
+ #: my-calendar-locations.php:127
72
  msgid "ID"
73
  msgstr ""
74
 
77
  msgstr ""
78
 
79
  #: my-calendar-categories.php:155 my-calendar-categories.php:169
80
+ #: my-calendar-event-manager.php:793 my-calendar-locations.php:129
81
+ #: my-calendar-locations.php:141
82
  msgid "Edit"
83
  msgstr ""
84
 
85
  #: my-calendar-categories.php:156 my-calendar-categories.php:175
86
+ #: my-calendar-event-manager.php:57 my-calendar-event-manager.php:793
87
+ #: my-calendar-locations.php:130 my-calendar-locations.php:142
88
  msgid "Delete"
89
  msgstr ""
90
 
91
+ #: my-calendar-categories.php:172 my-calendar-event-manager.php:779
92
+ #: my-calendar-settings.php:190 my-calendar-widgets.php:397
93
+ #: my-calendar.php:1016
94
  msgid "N/A"
95
  msgstr ""
96
 
97
+ #: my-calendar-categories.php:175 my-calendar-locations.php:142
98
  msgid "Are you sure you want to delete this category?"
99
  msgstr ""
100
 
102
  msgid "There are no categories in the database - something has gone wrong!"
103
  msgstr ""
104
 
105
+ #: my-calendar-event-manager.php:13 my-calendar-settings.php:216
106
  msgid ""
107
  "My Calendar has identified that you have the Calendar plugin by Kieran "
108
  "O'Shea installed. You can import those events and categories into the My "
109
  "Calendar database. Would you like to import these events?"
110
  msgstr ""
111
 
112
+ #: my-calendar-event-manager.php:19 my-calendar-settings.php:222
113
+ msgid "Import from Calendar"
114
+ msgstr ""
115
+
116
+ #: my-calendar-event-manager.php:24
117
  msgid ""
118
+ "Although it is possible that this import could fail to import your events "
119
+ "correctly, it should not have any impact on your existing Calendar database. "
120
+ "If you encounter any problems, <a href=\"http://www.joedolson.com/contact.php"
121
+ "\">please contact me</a>!"
122
  msgstr ""
123
 
124
+ #: my-calendar-event-manager.php:52
125
  msgid "Delete Event"
126
  msgstr ""
127
 
128
+ #: my-calendar-event-manager.php:52
129
  msgid "Are you sure you want to delete this event?"
130
  msgstr ""
131
 
132
+ #: my-calendar-event-manager.php:65
133
  msgid "You do not have permission to delete that event."
134
  msgstr ""
135
 
136
+ #: my-calendar-event-manager.php:142 my-calendar-event-manager.php:147
137
+ #: my-calendar-event-manager.php:152 my-calendar-event-manager.php:162
138
+ #: my-calendar-event-manager.php:170 my-calendar-event-manager.php:179
139
+ #: my-calendar-event-manager.php:187 my-calendar-event-manager.php:217
140
+ #: my-calendar-event-manager.php:325 my-calendar-event-manager.php:330
141
+ #: my-calendar-event-manager.php:335 my-calendar-event-manager.php:345
142
+ #: my-calendar-event-manager.php:353 my-calendar-event-manager.php:362
143
+ #: my-calendar-event-manager.php:370 my-calendar-event-manager.php:442
144
+ #: my-calendar-event-manager.php:457
145
  msgid "Error"
146
  msgstr ""
147
 
148
+ #: my-calendar-event-manager.php:142 my-calendar-event-manager.php:325
149
  msgid ""
150
  "Your event end date must be either after or the same as your event begin date"
151
  msgstr ""
152
 
153
+ #: my-calendar-event-manager.php:147 my-calendar-event-manager.php:330
154
  msgid ""
155
  "Your date formatting is correct but one or more of your dates is invalid. "
156
  "Check for number of days in month and leap year related errors."
157
  msgstr ""
158
 
159
+ #: my-calendar-event-manager.php:152 my-calendar-event-manager.php:335
160
  msgid ""
161
  "Both start and end dates must be entered and be in the format YYYY-MM-DD"
162
  msgstr ""
163
 
164
+ #: my-calendar-event-manager.php:162 my-calendar-event-manager.php:345
165
  msgid "The time field must either be blank or be entered in the format hh:mm"
166
  msgstr ""
167
 
168
+ #: my-calendar-event-manager.php:170 my-calendar-event-manager.php:353
169
  msgid ""
170
  "The URL entered must either be prefixed with http:// or be completely blank"
171
  msgstr ""
172
 
173
+ #: my-calendar-event-manager.php:179 my-calendar-event-manager.php:362
174
  msgid "The event title must be between 1 and 60 characters in length."
175
  msgstr ""
176
 
177
+ #: my-calendar-event-manager.php:187 my-calendar-event-manager.php:370
178
  msgid ""
179
  "The repetition value must be 0 unless a type of recurrance is selected in "
180
  "which case the repetition value must be 0 or higher"
181
  msgstr ""
182
 
183
+ #: my-calendar-event-manager.php:217
184
  msgid ""
185
  "An event with the details you submitted could not be found in the database. "
186
  "This may indicate a problem with your database or the way in which it is "
187
  "configured."
188
  msgstr ""
189
 
190
+ #: my-calendar-event-manager.php:221
191
  msgid "Event added. It will now show in your calendar."
192
  msgstr ""
193
 
194
+ #: my-calendar-event-manager.php:302 my-calendar-event-manager.php:401
195
  msgid "Failure"
196
  msgstr ""
197
 
198
+ #: my-calendar-event-manager.php:302
199
  msgid "You can't update an event if you haven't submitted an event id"
200
  msgstr ""
201
 
202
+ #: my-calendar-event-manager.php:401
203
  msgid ""
204
  "The database failed to return data to indicate the event has been updated "
205
  "sucessfully. This may indicate a problem with your database or the way in "
206
  "which it is configured."
207
  msgstr ""
208
 
209
+ #: my-calendar-event-manager.php:405
210
  msgid "Event updated successfully"
211
  msgstr ""
212
 
213
+ #: my-calendar-event-manager.php:433
214
  msgid "You do not have sufficient permissions to edit that event."
215
  msgstr ""
216
 
217
+ #: my-calendar-event-manager.php:442
218
  msgid "You can't delete an event if you haven't submitted an event id"
219
  msgstr ""
220
 
221
+ #: my-calendar-event-manager.php:453
222
  msgid "Event deleted successfully"
223
  msgstr ""
224
 
225
+ #: my-calendar-event-manager.php:457
226
  msgid ""
227
  "Despite issuing a request to delete, the event still remains in the "
228
  "database. Please investigate."
229
  msgstr ""
230
 
231
+ #: my-calendar-event-manager.php:472 my-calendar-event-manager.php:545
232
  msgid "Edit Event"
233
  msgstr ""
234
 
235
+ #: my-calendar-event-manager.php:476
236
  msgid "You must provide an event id in order to edit it"
237
  msgstr ""
238
 
239
+ #: my-calendar-event-manager.php:482
240
  msgid "Add Event"
241
  msgstr ""
242
 
243
+ #: my-calendar-event-manager.php:487
244
  msgid "Manage Events"
245
  msgstr ""
246
 
247
+ #: my-calendar-event-manager.php:521
248
  msgid "Sorry! That's an invalid event key."
249
  msgstr ""
250
 
251
+ #: my-calendar-event-manager.php:526
252
  msgid "Sorry! We couldn't find an event with that ID."
253
  msgstr ""
254
 
255
+ #: my-calendar-event-manager.php:545
256
  msgid "Add an Event"
257
  msgstr ""
258
 
259
+ #: my-calendar-event-manager.php:554
260
  msgid "Enter your Event Information"
261
  msgstr ""
262
 
263
+ #: my-calendar-event-manager.php:556
264
  msgid "Event Title"
265
  msgstr ""
266
 
267
+ #: my-calendar-event-manager.php:559
268
  msgid ""
269
  "Event Description (<abbr title=\"hypertext markup language\">HTML</abbr> "
270
  "allowed)"
271
  msgstr ""
272
 
273
+ #: my-calendar-event-manager.php:562
274
  msgid "Event Category"
275
  msgstr ""
276
 
277
+ #: my-calendar-event-manager.php:581
278
  msgid "Event Link (Optional)"
279
  msgstr ""
280
 
281
+ #: my-calendar-event-manager.php:584
282
  msgid "Start Date (YYYY-MM-DD)"
283
  msgstr ""
284
 
285
+ #: my-calendar-event-manager.php:587
286
  msgid "End Date (YYYY-MM-DD) (Optional)"
287
  msgstr ""
288
 
289
+ #: my-calendar-event-manager.php:590
290
  msgid "Time (hh:mm)"
291
  msgstr ""
292
 
293
+ #: my-calendar-event-manager.php:601
294
  msgid ""
295
  "Optional, set blank if your event is an all-day event or does not happen at "
296
  "a specific time."
297
  msgstr ""
298
 
299
+ #: my-calendar-event-manager.php:601
300
  msgid "Current time difference from GMT is "
301
  msgstr ""
302
 
303
+ #: my-calendar-event-manager.php:601
304
  msgid " hour(s)"
305
  msgstr ""
306
 
307
+ #: my-calendar-event-manager.php:605
308
  msgid "Recurring Events"
309
  msgstr ""
310
 
311
+ #: my-calendar-event-manager.php:626
312
  msgid "Repeats for"
313
  msgstr ""
314
 
315
+ #: my-calendar-event-manager.php:627
316
  msgid "Units"
317
  msgstr ""
318
 
319
+ #: my-calendar-event-manager.php:628
320
  msgid "Does not recur"
321
  msgstr ""
322
 
323
+ #: my-calendar-event-manager.php:629 my-calendar-event-manager.php:769
324
  msgid "Daily"
325
  msgstr ""
326
 
327
+ #: my-calendar-event-manager.php:630 my-calendar-event-manager.php:770
328
  msgid "Weekly"
329
  msgstr ""
330
 
331
+ #: my-calendar-event-manager.php:631
332
  msgid "Bi-weekly"
333
  msgstr ""
334
 
335
+ #: my-calendar-event-manager.php:632 my-calendar-event-manager.php:772
336
  msgid "Monthly"
337
  msgstr ""
338
 
339
+ #: my-calendar-event-manager.php:633
340
  msgid "Annually"
341
  msgstr ""
342
 
343
+ #: my-calendar-event-manager.php:635
344
  msgid ""
345
  "Entering 0 means forever, if a unit is selected. If the recurrance unit is "
346
  "left at \"Does not recur,\" the event will not reoccur."
347
  msgstr ""
348
 
349
+ #: my-calendar-event-manager.php:642 my-calendar-locations.php:41
350
+ #: my-calendar-locations.php:90
351
  msgid ""
352
  "All location fields are optional: <em>insufficient information may result in "
353
  "an inaccurate map</em>."
354
  msgstr ""
355
 
356
+ #: my-calendar-event-manager.php:648
357
+ msgid "Choose a preset location:"
358
+ msgstr ""
359
+
360
+ #: my-calendar-event-manager.php:662
361
+ msgid "Add recurring locations for later use."
362
+ msgstr ""
363
+
364
+ #: my-calendar-event-manager.php:667 my-calendar-locations.php:44
365
+ #: my-calendar-locations.php:93
366
  msgid "Name of Location (e.g. <em>Joe's Bar and Grill</em>)"
367
  msgstr ""
368
 
369
+ #: my-calendar-event-manager.php:670 my-calendar-locations.php:47
370
+ #: my-calendar-locations.php:96
371
  msgid "Street Address"
372
  msgstr ""
373
 
374
+ #: my-calendar-event-manager.php:673 my-calendar-locations.php:50
375
+ #: my-calendar-locations.php:99
376
  msgid "Street Address (2)"
377
  msgstr ""
378
 
379
+ #: my-calendar-event-manager.php:676 my-calendar-locations.php:53
380
+ #: my-calendar-locations.php:102
381
  msgid "City"
382
  msgstr ""
383
 
384
+ #: my-calendar-event-manager.php:676 my-calendar-locations.php:53
385
+ #: my-calendar-locations.php:102
386
  msgid "State/Province"
387
  msgstr ""
388
 
389
+ #: my-calendar-event-manager.php:676 my-calendar-locations.php:53
390
+ #: my-calendar-locations.php:102
391
  msgid "Postal Code"
392
  msgstr ""
393
 
394
+ #: my-calendar-event-manager.php:679 my-calendar-locations.php:56
395
+ #: my-calendar-locations.php:105
396
  msgid "Country"
397
  msgstr ""
398
 
399
+ #: my-calendar-event-manager.php:684
400
  msgid "Save Event"
401
  msgstr ""
402
 
403
+ #: my-calendar-event-manager.php:742 my-calendar-widgets.php:37
404
+ #: my-calendar-widgets.php:122
405
  msgid "Title"
406
  msgstr ""
407
 
408
+ #: my-calendar-event-manager.php:743
409
  msgid "Description"
410
  msgstr ""
411
 
412
+ #: my-calendar-event-manager.php:744
413
  msgid "Start Date"
414
  msgstr ""
415
 
416
+ #: my-calendar-event-manager.php:746
417
  msgid "Recurs"
418
  msgstr ""
419
 
420
+ #: my-calendar-event-manager.php:747
421
  msgid "Repeats"
422
  msgstr ""
423
 
424
+ #: my-calendar-event-manager.php:748 my-calendar-settings.php:158
425
  msgid "Author"
426
  msgstr ""
427
 
428
+ #: my-calendar-event-manager.php:749
429
  msgid "Category"
430
  msgstr ""
431
 
432
+ #: my-calendar-event-manager.php:750
433
  msgid "Edit / Delete"
434
  msgstr ""
435
 
436
+ #: my-calendar-event-manager.php:768
437
  msgid "Never"
438
  msgstr ""
439
 
440
+ #: my-calendar-event-manager.php:771
441
  msgid "Bi-Weekly"
442
  msgstr ""
443
 
444
+ #: my-calendar-event-manager.php:773
445
  msgid "Yearly"
446
  msgstr ""
447
 
448
+ #: my-calendar-event-manager.php:780
449
  msgid "Forever"
450
  msgstr ""
451
 
452
+ #: my-calendar-event-manager.php:781
453
  msgid "Times"
454
  msgstr ""
455
 
456
+ #: my-calendar-event-manager.php:803
457
  msgid "There are no events in the database!"
458
  msgstr ""
459
 
479
  "which will show the calendar in a list format, skipping dates without any "
480
  "events. The <code>category</code> attribute requires either the name of or "
481
  "ID number one of your event categories (the name is case-sensitive). This "
482
+ "will show a calendar only including events in that category. Multiple "
483
+ "categories can be specified by separating the category names or IDs using "
484
+ "the pipe character: <code>|</code>. Setting <code>showkey</code> to "
485
+ "<code>no</code> will prevent the category key from being displayed &mdash; "
486
+ "this can be useful with single-category output."
487
  msgstr ""
488
 
489
  #: my-calendar-help.php:22
490
  msgid ""
491
  "This shortcode displays the output of the Upcoming Events widget. Without "
492
  "attributes, it will display using the settings in your widget; the "
493
+ "attributes are used to override the widget settings. The <code>before</code> "
494
  "and <code>after</code> attributes should be numbers; the <code>type</code> "
495
+ "attribute can be either \"event\" or \"days\", and the <code>category</code> "
496
  "attribute works the same way as the category attribute on the main calendar "
497
+ "shortcode. Templates work using the template codes listed below."
498
  msgstr ""
499
 
500
  #: my-calendar-help.php:25
501
  msgid ""
502
  "Predictably enough, this shortcode displays the output of the Today's Events "
503
+ "widget, with two configurable attributes: category and template."
504
  msgstr ""
505
 
506
  #: my-calendar-help.php:33
622
  "information is available. If not, will be empty."
623
  msgstr ""
624
 
625
+ #: my-calendar-locations.php:18
626
+ msgid "Location added successfully"
627
+ msgstr ""
628
+
629
+ #: my-calendar-locations.php:22
630
+ msgid "Location deleted successfully"
631
+ msgstr ""
632
+
633
+ #: my-calendar-locations.php:27
634
+ msgid "Edit Location"
635
+ msgstr ""
636
+
637
+ #: my-calendar-locations.php:31
638
+ msgid "Location Editor"
639
+ msgstr ""
640
+
641
+ #: my-calendar-locations.php:70
642
+ msgid "Location edited successfully"
643
+ msgstr ""
644
+
645
+ #: my-calendar-locations.php:76 my-calendar-locations.php:109
646
+ msgid "Add Location"
647
+ msgstr ""
648
+
649
+ #: my-calendar-locations.php:80
650
+ msgid "Add New Location"
651
+ msgstr ""
652
+
653
+ #: my-calendar-locations.php:115 my-calendar.php:147
654
+ msgid "Manage Locations"
655
+ msgstr ""
656
+
657
+ #: my-calendar-locations.php:128
658
+ msgid "Location"
659
+ msgstr ""
660
+
661
+ #: my-calendar-locations.php:150
662
+ msgid "There are no locations in the database yet!"
663
+ msgstr ""
664
+
665
+ #: my-calendar-locations.php:154
666
+ msgid ""
667
+ "Please note: editing or deleting locations stored for re-use will have no "
668
+ "effect on any event previously scheduled at that location. The location "
669
+ "database exists purely as a shorthand method to enter frequently used "
670
+ "locations into event records."
671
+ msgstr ""
672
+
673
+ #: my-calendar-settings.php:67
674
  msgid "Categories imported successfully."
675
  msgstr ""
676
 
677
+ #: my-calendar-settings.php:69
678
  msgid "Categories not imported."
679
  msgstr ""
680
 
681
+ #: my-calendar-settings.php:72
682
  msgid "Events imported successfully."
683
  msgstr ""
684
 
685
+ #: my-calendar-settings.php:74
686
  msgid "Events not imported."
687
  msgstr ""
688
 
689
+ #: my-calendar-settings.php:122
690
  msgid "Settings saved"
691
  msgstr ""
692
 
693
+ #: my-calendar-settings.php:145
694
  msgid "My Calendar Options"
695
  msgstr ""
696
 
697
+ #: my-calendar-settings.php:149
698
  msgid "Calendar Settings"
699
  msgstr ""
700
 
701
+ #: my-calendar-settings.php:153
702
+ msgid "Calendar Options: Management"
703
  msgstr ""
704
 
705
+ #: my-calendar-settings.php:155
706
  msgid "Choose the lowest user group that may manage events"
707
  msgstr ""
708
 
709
+ #: my-calendar-settings.php:156
710
  msgid "Subscriber"
711
  msgstr ""
712
 
713
+ #: my-calendar-settings.php:157
714
  msgid "Contributor"
715
  msgstr ""
716
 
717
+ #: my-calendar-settings.php:159
718
  msgid "Editor"
719
  msgstr ""
720
 
721
+ #: my-calendar-settings.php:160
722
  msgid "Administrator"
723
  msgstr ""
724
 
725
+ #: my-calendar-settings.php:165
726
+ msgid "Calendar Options: Output"
727
+ msgstr ""
728
+
729
+ #: my-calendar-settings.php:167
730
  msgid "Do you want to display the author name on events?"
731
  msgstr ""
732
 
733
+ #: my-calendar-settings.php:168 my-calendar-settings.php:175
734
  msgid "Yes"
735
  msgstr ""
736
 
737
+ #: my-calendar-settings.php:169 my-calendar-settings.php:176
738
  msgid "No"
739
  msgstr ""
740
 
741
+ #: my-calendar-settings.php:174
742
  msgid "Display a jumpbox for changing month and year quickly?"
743
  msgstr ""
744
 
745
+ #: my-calendar-settings.php:180
746
  msgid "In list mode, show how many months of events at a time:"
747
  msgstr ""
748
 
749
+ #: my-calendar-settings.php:183
750
  msgid "Date format in list mode"
751
  msgstr ""
752
 
753
+ #: my-calendar-settings.php:184
754
  msgid ""
755
  "Date format uses the same syntax as the <a href=\"http://php.net/date\">PHP "
756
  "<code>date()</code> function</a>. Save option to update sample output."
757
  msgstr ""
758
 
759
+ #: my-calendar-settings.php:187
760
+ msgid "Show Heading for Calendar"
761
+ msgstr ""
762
+
763
+ #: my-calendar-settings.php:190
764
+ msgid "Label for events without a specific time"
765
+ msgstr ""
766
+
767
+ #: my-calendar-settings.php:193
768
+ msgid "Additional caption text"
769
+ msgstr ""
770
+
771
+ #: my-calendar-settings.php:193
772
+ msgid ""
773
+ "The calendar caption is the text containing the displayed month and year in "
774
+ "either list or calendar format. This text will be displayed following that "
775
+ "existing text."
776
+ msgstr ""
777
+
778
+ #: my-calendar-settings.php:196
779
+ msgid "Hide category icons in output"
780
+ msgstr ""
781
+
782
+ #: my-calendar-settings.php:199
783
  msgid ""
784
  "Show Link to Google Map (when sufficient address information is available.)"
785
  msgstr ""
786
 
787
+ #: my-calendar-settings.php:202
788
  msgid "Show Event Address in Details"
789
  msgstr ""
790
 
791
+ #: my-calendar-settings.php:206
792
+ msgid "Save Settings"
793
  msgstr ""
794
 
795
+ #: my-calendar-styles.php:38
796
+ msgid "Style Settings saved"
797
+ msgstr ""
798
+
799
+ #: my-calendar-styles.php:59
800
+ msgid "My Calendar Styles"
801
  msgstr ""
802
 
803
+ #: my-calendar-styles.php:63
804
+ msgid "Calendar Style Settings"
805
+ msgstr ""
806
+
807
+ #: my-calendar-styles.php:67
808
+ msgid "CSS Style Options"
809
+ msgstr ""
810
+
811
+ #: my-calendar-styles.php:69
812
+ msgid "Reset the My Calendar stylesheet to the default"
813
+ msgstr ""
814
+
815
+ #: my-calendar-styles.php:69
816
  msgid "Disable My Calendar Stylesheet"
817
  msgstr ""
818
 
819
+ #: my-calendar-styles.php:72
820
  msgid "Edit the stylesheet for My Calendar"
821
  msgstr ""
822
 
823
+ #: my-calendar-styles.php:75
824
+ msgid "Show CSS only on these pages (comma separated page IDs)"
825
  msgstr ""
826
 
827
+ #: my-calendar-styles.php:79
828
+ msgid "Calendar Behaviors: Calendar View"
829
+ msgstr ""
830
+
831
+ #: my-calendar-styles.php:81
832
+ msgid "Reset the My Calendar Calendar Javascript"
833
  msgstr ""
834
 
835
+ #: my-calendar-styles.php:81
836
  msgid "Disable Calendar Javascript Effects"
837
  msgstr ""
838
 
839
+ #: my-calendar-styles.php:84
840
+ msgid "Edit the jQuery scripts for My Calendar in Calendar format"
841
+ msgstr ""
842
+
843
+ #: my-calendar-styles.php:88
844
+ msgid "Calendar Behaviors: List View"
845
+ msgstr ""
846
+
847
+ #: my-calendar-styles.php:90
848
+ msgid "Reset the My Calendar List Javascript"
849
+ msgstr ""
850
+
851
+ #: my-calendar-styles.php:90
852
+ msgid "Disable List Javascript Effects"
853
+ msgstr ""
854
+
855
+ #: my-calendar-styles.php:93
856
+ msgid "Edit the jQuery scripts for My Calendar in List format"
857
+ msgstr ""
858
+
859
+ #: my-calendar-styles.php:97
860
  msgid "Save"
861
  msgstr ""
862
 
863
+ #: my-calendar-widgets.php:11 my-calendar-widgets.php:51
864
+ #: my-calendar-widgets.php:52
865
  msgid "Today's Events"
866
  msgstr ""
867
 
868
+ #: my-calendar-widgets.php:41 my-calendar-widgets.php:126
869
  msgid "Template"
870
  msgstr ""
871
 
872
+ #: my-calendar-widgets.php:45
873
+ msgid "Show this text if there are no events today:"
874
+ msgstr ""
875
+
876
+ #: my-calendar-widgets.php:65 my-calendar-widgets.php:152
877
+ #: my-calendar-widgets.php:153
878
  msgid "Upcoming Events"
879
  msgstr ""
880
 
881
+ #: my-calendar-widgets.php:130
882
  msgid "Widget Options"
883
  msgstr ""
884
 
885
+ #: my-calendar-widgets.php:132
886
  msgid "Display upcoming events by:"
887
  msgstr ""
888
 
889
+ #: my-calendar-widgets.php:133
890
  msgid "Events (e.g. 2 past, 3 future)"
891
  msgstr ""
892
 
893
+ #: my-calendar-widgets.php:134
894
  msgid "Dates (e.g. 4 days past, 5 forward)"
895
  msgstr ""
896
 
897
+ #: my-calendar-widgets.php:138
898
  msgid "events into the future;"
899
  msgstr ""
900
 
901
+ #: my-calendar-widgets.php:139
902
  msgid "events from the past"
903
  msgstr ""
904
 
905
+ #: my-calendar-widgets.php:142
906
  msgid "days into the future;"
907
  msgstr ""
908
 
909
+ #: my-calendar-widgets.php:143
910
  msgid "days from the past"
911
  msgstr ""
912
 
913
+ #: my-calendar-widgets.php:146
914
  msgid "Show only this category:"
915
  msgstr ""
916
 
917
+ #: my-calendar-widgets.php:272
918
  msgid "There are no events currently scheduled."
919
  msgstr ""
920
 
921
+ #: my-calendar.php:48 my-calendar.php:148
922
  msgid "Settings"
923
  msgstr ""
924
 
925
+ #: my-calendar.php:69
926
  msgid "Get Support"
927
  msgstr ""
928
 
929
+ #: my-calendar.php:70
930
  msgid "Make a Donation"
931
  msgstr ""
932
 
933
+ #. #-#-#-#-# plugin.pot (My Calendar 1.3.8) #-#-#-#-#
934
  #. Plugin Name of the plugin/theme
935
+ #: my-calendar.php:139
936
  msgid "My Calendar"
937
  msgstr ""
938
 
939
+ #: my-calendar.php:142
940
  msgid "Add/Edit Events"
941
  msgstr ""
942
 
943
+ #: my-calendar.php:149
944
+ msgid "Style Editor"
945
+ msgstr ""
946
+
947
+ #: my-calendar.php:150
948
  msgid "My Calendar Help"
949
  msgstr ""
950
 
951
+ #: my-calendar.php:150
952
  msgid "Help"
953
  msgstr ""
954
 
955
+ #: my-calendar.php:873 my-calendar.php:877 my-calendar.php:887
956
+ #: my-calendar.php:889
957
  msgid "Next Events"
958
  msgstr ""
959
 
960
+ #: my-calendar.php:902 my-calendar.php:906 my-calendar.php:916
961
+ #: my-calendar.php:918
962
  msgid "Previous Events"
963
  msgstr ""
964
 
965
+ #: my-calendar.php:1008
966
  msgid "Event Details"
967
  msgstr ""
968
 
969
+ #: my-calendar.php:1016
970
  msgid "Not Applicable"
971
  msgstr ""
972
 
973
+ #: my-calendar.php:1028
974
  msgid "Posted by"
975
  msgstr ""
976
 
977
+ #: my-calendar.php:1712
978
  msgid "Month"
979
  msgstr ""
980
 
981
+ #: my-calendar.php:1713 my-calendar.php:1776
982
  msgid "January"
983
  msgstr ""
984
 
985
+ #: my-calendar.php:1714 my-calendar.php:1776
986
  msgid "February"
987
  msgstr ""
988
 
989
+ #: my-calendar.php:1715 my-calendar.php:1776
990
  msgid "March"
991
  msgstr ""
992
 
993
+ #: my-calendar.php:1716 my-calendar.php:1776
994
  msgid "April"
995
  msgstr ""
996
 
997
+ #: my-calendar.php:1717 my-calendar.php:1776
998
  msgid "May"
999
  msgstr ""
1000
 
1001
+ #: my-calendar.php:1718 my-calendar.php:1776
1002
  msgid "June"
1003
  msgstr ""
1004
 
1005
+ #: my-calendar.php:1719 my-calendar.php:1776
1006
  msgid "July"
1007
  msgstr ""
1008
 
1009
+ #: my-calendar.php:1720 my-calendar.php:1776
1010
  msgid "August"
1011
  msgstr ""
1012
 
1013
+ #: my-calendar.php:1721 my-calendar.php:1776
1014
  msgid "September"
1015
  msgstr ""
1016
 
1017
+ #: my-calendar.php:1722 my-calendar.php:1776
1018
  msgid "October"
1019
  msgstr ""
1020
 
1021
+ #: my-calendar.php:1723 my-calendar.php:1776
1022
  msgid "November"
1023
  msgstr ""
1024
 
1025
+ #: my-calendar.php:1724 my-calendar.php:1776
1026
  msgid "December"
1027
  msgstr ""
1028
 
1029
+ #: my-calendar.php:1726
1030
  msgid "Year"
1031
  msgstr ""
1032
 
1033
+ #: my-calendar.php:1751
1034
  msgid "Go"
1035
  msgstr ""
1036
 
1037
+ #: my-calendar.php:1769 my-calendar.php:1772
1038
  msgid "<abbr title=\"Sunday\">Sun</abbr>"
1039
  msgstr ""
1040
 
1041
+ #: my-calendar.php:1769 my-calendar.php:1772
1042
  msgid "<abbr title=\"Monday\">Mon</abbr>"
1043
  msgstr ""
1044
 
1045
+ #: my-calendar.php:1769 my-calendar.php:1772
1046
  msgid "<abbr title=\"Tuesday\">Tues</abbr>"
1047
  msgstr ""
1048
 
1049
+ #: my-calendar.php:1769 my-calendar.php:1772
1050
  msgid "<abbr title=\"Wednesday\">Wed</abbr>"
1051
  msgstr ""
1052
 
1053
+ #: my-calendar.php:1769 my-calendar.php:1772
1054
  msgid "<abbr title=\"Thursday\">Thur</abbr>"
1055
  msgstr ""
1056
 
1057
+ #: my-calendar.php:1769 my-calendar.php:1772
1058
  msgid "<abbr title=\"Friday\">Fri</abbr>"
1059
  msgstr ""
1060
 
1061
+ #: my-calendar.php:1769 my-calendar.php:1772
1062
  msgid "<abbr title=\"Saturday\">Sat</abbr>"
1063
  msgstr ""
1064
 
1065
+ #: my-calendar.php:1831
1066
+ msgid "and"
1067
+ msgstr ""
1068
+
1069
+ #: my-calendar.php:1860 my-calendar.php:1864
1070
  msgid "Calendar"
1071
  msgstr ""
1072
 
1073
+ #: my-calendar.php:1868
1074
  msgid "Events in"
1075
  msgstr ""
1076
 
1077
+ #: my-calendar.php:1977
1078
  msgid "There are no events scheduled during this period."
1079
  msgstr ""
1080
 
1081
+ #: my-calendar.php:1987
1082
  msgid "Category Key"
1083
  msgstr ""
1084
 
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: joedolson
3
  Donate link: http://www.joedolson.com/donate.php
4
  Tags: calendar, dates, times, events, scheduling
5
  Requires at least: 2.7
6
- Tested up to: 3.0 beta1
7
  Stable tag: trunk
8
 
9
  Accessible WordPress event calendar plugin. Show events from multiple calendars on pages, in posts, or in widgets.
@@ -18,7 +18,6 @@ Features:
18
 
19
  * Monthly view of events
20
  * List view of events; multiple months can be viewed at once.
21
- * Events can have a timestamp (optional)
22
  * Events can display their author (optional)
23
  * Events can span more than one day
24
  * Events can include location information
@@ -32,19 +31,21 @@ Features:
32
  * Highly configurable widget to show upcoming events
33
  * Widget templating to control what information is displayed in widget output.
34
  * Extensive settings panel for administration
35
- * Edit or disable default CSS from the settings page
36
  * Optional drop down boxes to quickly change month and year
37
  * User groups other than admin can be permitted to manage events
38
  * Events can be placed into categories
39
- * A calendar of events can be displayed including a single category or all categories
40
  * Events can be links pointing to a location of your choice
41
  * Import method from Kieran's Calendar plugin
 
42
 
43
  Languages available:
44
 
45
  * American English (Default)
46
  * Brazilian Portuguese ([Daniel Prata](daniel@grudaemmim.com.br))
47
  * Spanish ([Esteban Truelsegaard](http://www.netmdp.com))
 
48
 
49
  == Installation ==
50
 
@@ -56,14 +57,82 @@ Languages available:
56
 
57
  My Calendar -> Add/Edit Events
58
  My Calendar -> Manage Categories
59
- My Calendar -> Settings
 
 
60
 
 
61
  4. Edit or create a page on your blog which includes the shortcode [my_calendar] and visit
62
  the page you have edited or created. You should see your calendar. Visit My Calendar -> Help for assistance
63
  with shortcode options or widget configuration.
64
 
65
  == Changelog ==
66
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
67
  = 1.2.1 =
68
 
69
  * Corrected a typo which broke the upcoming events widget.
@@ -113,6 +182,15 @@ Languages available:
113
 
114
  Hey, give me a break. I'm only going to release this with one default CSS - it works pretty well with Kubrick or Twenty Ten, and should be usable in many other themes. However, I'm not about to make any guarantees that it'll work with your theme. If you want it to look a particular way, you'll need to do some customization.
115
 
 
 
 
 
 
 
 
 
 
116
 
117
  == Screenshots ==
118
 
3
  Donate link: http://www.joedolson.com/donate.php
4
  Tags: calendar, dates, times, events, scheduling
5
  Requires at least: 2.7
6
+ Tested up to: 3.0
7
  Stable tag: trunk
8
 
9
  Accessible WordPress event calendar plugin. Show events from multiple calendars on pages, in posts, or in widgets.
18
 
19
  * Monthly view of events
20
  * List view of events; multiple months can be viewed at once.
 
21
  * Events can display their author (optional)
22
  * Events can span more than one day
23
  * Events can include location information
31
  * Highly configurable widget to show upcoming events
32
  * Widget templating to control what information is displayed in widget output.
33
  * Extensive settings panel for administration
34
+ * Edit or disable default CSS and default JavaScript from the style editor
35
  * Optional drop down boxes to quickly change month and year
36
  * User groups other than admin can be permitted to manage events
37
  * Events can be placed into categories
38
+ * Calendar can be displayed including a single category, all categories, or a selection of categories
39
  * Events can be links pointing to a location of your choice
40
  * Import method from Kieran's Calendar plugin
41
+ * Help information within the plugin for shortcodes and widget templates.
42
 
43
  Languages available:
44
 
45
  * American English (Default)
46
  * Brazilian Portuguese ([Daniel Prata](daniel@grudaemmim.com.br))
47
  * Spanish ([Esteban Truelsegaard](http://www.netmdp.com))
48
+ * German ([Norman Scorpion](http://myscorpion.de)
49
 
50
  == Installation ==
51
 
57
 
58
  My Calendar -> Add/Edit Events
59
  My Calendar -> Manage Categories
60
+ My Calendar -> Manage Locations
61
+ My Calendar -> Settings
62
+ My Calendar -> Style Editor
63
 
64
+
65
  4. Edit or create a page on your blog which includes the shortcode [my_calendar] and visit
66
  the page you have edited or created. You should see your calendar. Visit My Calendar -> Help for assistance
67
  with shortcode options or widget configuration.
68
 
69
  == Changelog ==
70
 
71
+ = 1.3.8 =
72
+
73
+ * Fixed problem with CSS editing which effectively disabled CSS unless a specific choice had been made for pages to show CSS
74
+
75
+ = 1.3.7 =
76
+
77
+ * Aren't you enjoying the daily upgrades? I made a mistake in 1.3.5 which hid text in an incorrect way, causing problems in some contexts.
78
+
79
+ = 1.3.6 =
80
+
81
+ * Fixed an issue where not having defined Pages to show CSS resulted in a PHP warning for some configs.
82
+
83
+ = 1.3.5 =
84
+
85
+ * Fix for flash of unstyled content issue.
86
+ * Added configuration for time text on events with non-specific time.
87
+ * Fixed bug where, in list views with multiple months, events occurring on days which did not exist in the previous month were not rendered. (Such as March 30th where previous month was February.)
88
+ * Fixed bug where the multi-month view setting for lists caused previous/next events buttons to skip months in calendar view.
89
+ * Added option to disable category icons.
90
+ * Added option to insert text in calendar caption/title area, appended to the month/year information.
91
+ * Fixed a bug where it was not possible to choose the "Show by days" option in the upcoming events widget.
92
+ * Updated documentation to match
93
+ * Fixed a bug where upcoming events in Days mode did not display correct date
94
+ * Added an option to define text to be displayed in place of Today's Events widget if there are no events scheduled.
95
+ * Minor changes to default CSS
96
+ * Ability to show CSS and JavaScript only on selected pages.
97
+
98
+ = 1.3.4 =
99
+
100
+ * Fixed a bug with map link and address display which I forgot to deal with in previous release.
101
+
102
+ = 1.3.3 =
103
+
104
+ * Fixed bug with upgrade path which caused locations database to be created on every activation (also cause of errors with some other plugins). (Thanks to Steven J. Kiernan)
105
+ * Made clone object PHP 4 compatible (Thanks to Peder Lindkvist)
106
+ * Corrected errors in shortcode functions for today's events
107
+ * Corrected rendering of non-specific time events as happening at midnight in widget output
108
+
109
+ = 1.3.2 =
110
+
111
+ * Fixed bugs with unstripped slashes in output
112
+ * Fixed a bug where users could not add location information in events if they had not added any recurring locations
113
+ * Removed requirement that address string must be five characters to display a link
114
+
115
+ = 1.3.1 =
116
+
117
+ * Corrected incorrect primary key in upgrade path.
118
+ * Added version incrementing in upgrade path.
119
+
120
+ = 1.3.0 =
121
+
122
+ * Fixed a CSS class which was applied to an incorrect element.
123
+ * Revisions to the Calendar import methods
124
+ * Moved style editing to its own page
125
+ * Added JavaScript editing to allow for customization of jQuery behaviors.
126
+ * Internationalized date formats
127
+ * Shortcode support for multiple categories.
128
+ * Shortcode support for custom templates in upcoming and today's events
129
+ * Added a settings option to eliminate the heading in list format display.
130
+ * Fixed a bug which treated the event repetition value as a string on event adding or updating, not allowing some users to use '0' as an event repetition.
131
+ * Made events listing sortable in admin view
132
+ * Minor revisions in admin UI.
133
+ * Added database storage for frequently used venues or event locations.
134
+ * Modified JavaScript for list display to automatically expand events scheduled for today.
135
+
136
  = 1.2.1 =
137
 
138
  * Corrected a typo which broke the upcoming events widget.
182
 
183
  Hey, give me a break. I'm only going to release this with one default CSS - it works pretty well with Kubrick or Twenty Ten, and should be usable in many other themes. However, I'm not about to make any guarantees that it'll work with your theme. If you want it to look a particular way, you'll need to do some customization.
184
 
185
+ = Why are past events showing up in my upcoming events widget? =
186
+
187
+ The upcoming events widget has a number of options, including the choice to display any number of past or future events. The default settings allow for both, so if you only want future events to be shown you'll need to change the settings.
188
+
189
+ = I don't want to show event categories in my widgets. How can I change that? =
190
+
191
+ The widgets both use templates to determine what they'll display. You can edit those templates to show whatever you need within your list of events. The available shortcodes can be found on the plugin's Help page.
192
+
193
+
194
 
195
  == Screenshots ==
196
 
uninstall.php CHANGED
@@ -34,6 +34,12 @@ delete_option('display_past_events');
34
  delete_option('display_past_days');
35
  delete_option('ko_calendar_imported');
36
  delete_option('display_in_category');
37
-
 
 
 
 
 
 
38
  }
39
  ?>
34
  delete_option('display_past_days');
35
  delete_option('ko_calendar_imported');
36
  delete_option('display_in_category');
37
+ delete_option('my_calendar_show_heading');
38
+ delete_option('my_calendar_listjs');
39
+ delete_option('my_calendar_caljs');
40
+ delete_option('my_calendar_notime_text');
41
+ delete_option('my_calendar_hide_icons');
42
+ delete_option('my_calendar_caption');
43
+ add_option('my_calendar_uninstalled','true');
44
  }
45
  ?>