Version Description
- iCal parser updated. Specifically:
- Improved timezone handling
- Support for 'COUNT' property
- Improved error & warning feedback
- Handle GEO tag
- Import venue latitude/longtitude
- Themes can switch off plug-in template handling from functions.php with
add_theme_support( 'event-organiser' )
- Added support for
event_occurrence__not_in
ineo_get_events()
andWP_Query()
- Improved MP6 compatability
- Add filter
eventorganiser_blog_is_24
(determines whether time-input should be 12 hour or 24 hour). - Schedule meta for weekly schedule now optional (defaults to 'start' date)
- Unit tests added (largely for date generation & iCal parsing/generation)
- Fixes venues not appearing in Appearance > Menus
- Fixes bug with importing events that have no dates
- Fixes bug with importing all-day events across timezones
- Fixes bug with occurrence picker
- Fixes bug with modal overlay
- Code refactoring (old iCal parser removed)
- Updated translations: Arabic, Czech, Danish, German, Greek, Persian,
- Added translations: Indonesian
Download this release
Release Info
Developer | stephenharris |
Plugin | Event Organiser |
Version | 2.4 |
Comparing to | |
See all releases |
Code changes from version 2.3.2 to 2.4
- .gitignore +3 -0
- Gruntfile.js +13 -0
- classes/class-eo-calendar-widget.php +6 -1
- classes/class-eo-venue-list-table.php +1 -1
- classes/class-eo-widget-categories.php +1 -1
- classes/class-eventorganiser-shortcodes.php +3 -1
- composer.json +23 -0
- composer.lock +439 -0
- css/eventorganiser-admin-classic.css +1 -1
- css/eventorganiser-admin-fresh.css +1 -1
- css/eventorganiser-admin-style.css +1 -1
- css/fullcalendar.css +2 -2
- event-organiser-calendar.php +1 -1
- event-organiser-settings.php +4 -1
- event-organiser.php +2 -6
- includes/class-eo-ical-parser.php +269 -52
- includes/class-event-organiser-im-export.php +128 -537
- includes/event-organiser-archives.php +8 -3
- includes/event-organiser-cpt.php +3 -3
- includes/event-organiser-event-functions.php +6 -0
- includes/event-organiser-install.php +4 -0
- includes/event-organiser-register.php +11 -27
- includes/event-organiser-templates.php +1 -1
- includes/event-organiser-utility-functions.php +1 -1
- includes/event.php +92 -29
- js/admin-calendar.js +3 -3
- js/admin-calendar.min.js +2 -2
- js/edit-event-controller.min.js +2 -2
- js/event-manager.min.js +1 -1
- js/event.js +3 -2
- js/event.min.js +2 -2
- js/frontend.min.js +2 -2
- js/fullcalendar.min.js +2 -2
- js/time-picker.min.js +2 -2
- js/venues.min.js +2 -2
- languages/eventorganiser-ar.mo +0 -0
- languages/eventorganiser-ar.po +26 -26
- languages/eventorganiser-cs_CZ.mo +0 -0
- languages/eventorganiser-cs_CZ.po +26 -26
- languages/eventorganiser-da_DK.mo +0 -0
- languages/eventorganiser-da_DK.po +25 -25
- languages/eventorganiser-de_DE.mo +0 -0
- languages/eventorganiser-de_DE.po +40 -111
- languages/eventorganiser-el.mo +0 -0
- languages/eventorganiser-el.po +25 -25
- languages/eventorganiser-fa_IR.mo +0 -0
- languages/eventorganiser-fa_IR.po +32 -32
- languages/eventorganiser-id_ID.mo +0 -0
- languages/eventorganiser-id_ID.po +1791 -0
- languages/eventorganiser-nl_NL.po +0 -31
- languages/eventorganiser-pl_PL.po +1 -1
- languages/eventorganiser.pot +83 -83
- package.json +3 -2
- readme.md +32 -10
- readme.txt +24 -2
- templates/archive-event.php +1 -1
- templates/taxonomy-event-category.php +1 -1
- templates/taxonomy-event-tag.php +1 -1
- templates/taxonomy-event-venue.php +1 -1
.gitignore
CHANGED
@@ -6,4 +6,7 @@
|
|
6 |
apigen
|
7 |
documentation
|
8 |
dist
|
|
|
|
|
9 |
node_modules
|
|
6 |
apigen
|
7 |
documentation
|
8 |
dist
|
9 |
+
vendor
|
10 |
+
tests
|
11 |
node_modules
|
12 |
+
/composer.phar
|
Gruntfile.js
CHANGED
@@ -82,10 +82,21 @@ module.exports = function(grunt) {
|
|
82 |
},
|
83 |
},
|
84 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
});
|
86 |
|
87 |
|
88 |
|
|
|
89 |
grunt.loadNpmTasks('grunt-shell');
|
90 |
|
91 |
grunt.loadNpmTasks('grunt-contrib-uglify');
|
@@ -96,6 +107,8 @@ grunt.loadNpmTasks('grunt-contrib-jshint');
|
|
96 |
|
97 |
grunt.loadNpmTasks('grunt-wp-readme-to-markdown');
|
98 |
|
|
|
|
|
99 |
// Default task(s).
|
100 |
grunt.registerTask('default', ['uglify']);
|
101 |
|
82 |
},
|
83 |
},
|
84 |
},
|
85 |
+
phpunit: {
|
86 |
+
classes: {
|
87 |
+
dir: 'tests'
|
88 |
+
},
|
89 |
+
options: {
|
90 |
+
bin: 'vendor/bin/phpunit',
|
91 |
+
bootstrap: 'tests/phpunit.php',
|
92 |
+
colors: true
|
93 |
+
}
|
94 |
+
}
|
95 |
});
|
96 |
|
97 |
|
98 |
|
99 |
+
|
100 |
grunt.loadNpmTasks('grunt-shell');
|
101 |
|
102 |
grunt.loadNpmTasks('grunt-contrib-uglify');
|
107 |
|
108 |
grunt.loadNpmTasks('grunt-wp-readme-to-markdown');
|
109 |
|
110 |
+
grunt.loadNpmTasks('grunt-phpunit');
|
111 |
+
|
112 |
// Default task(s).
|
113 |
grunt.registerTask('default', ['uglify']);
|
114 |
|
classes/class-eo-calendar-widget.php
CHANGED
@@ -179,7 +179,11 @@ class EO_Calendar_Widget extends WP_Widget
|
|
179 |
if( ( !defined( 'WP_DEBUG' ) || !WP_DEBUG ) && $calendar && is_array( $calendar ) && isset( $calendar[$key] ) ){
|
180 |
return $calendar[$key];
|
181 |
}
|
182 |
-
|
|
|
|
|
|
|
|
|
183 |
//Month details
|
184 |
$first_day_of_month= intval( $month->format('N') ); //0=sun,...,6=sat
|
185 |
$days_in_month= intval( $month->format('t') ); // 28-31
|
@@ -206,6 +210,7 @@ class EO_Calendar_Widget extends WP_Widget
|
|
206 |
'numberposts'=>-1,
|
207 |
'showrepeats'=>1,
|
208 |
);
|
|
|
209 |
if( $args['show-long'] ){
|
210 |
$args['event_start_before'] = $end;
|
211 |
$args['event_end_after'] = $start;
|
179 |
if( ( !defined( 'WP_DEBUG' ) || !WP_DEBUG ) && $calendar && is_array( $calendar ) && isset( $calendar[$key] ) ){
|
180 |
return $calendar[$key];
|
181 |
}
|
182 |
+
|
183 |
+
//Parse defaults
|
184 |
+
$args['show-long'] = isset( $args['show-long'] ) ? $args['show-long'] : false;
|
185 |
+
$args['link-to-single'] = isset( $args['link-to-single'] ) ? $args['link-to-single'] : false;
|
186 |
+
|
187 |
//Month details
|
188 |
$first_day_of_month= intval( $month->format('N') ); //0=sun,...,6=sat
|
189 |
$days_in_month= intval( $month->format('t') ); // 28-31
|
210 |
'numberposts'=>-1,
|
211 |
'showrepeats'=>1,
|
212 |
);
|
213 |
+
|
214 |
if( $args['show-long'] ){
|
215 |
$args['event_start_before'] = $end;
|
216 |
$args['event_end_after'] = $start;
|
classes/class-eo-venue-list-table.php
CHANGED
@@ -190,4 +190,4 @@ class EO_Venue_List_Table extends WP_List_Table {
|
|
190 |
|
191 |
}
|
192 |
|
193 |
-
}?>
|
190 |
|
191 |
}
|
192 |
|
193 |
+
}?>
|
classes/class-eo-widget-categories.php
CHANGED
@@ -43,7 +43,7 @@ class EO_Widget_Categories extends WP_Widget {
|
|
43 |
$cat_args['walker'] = new EO_Walker_TaxonomyDropdown();
|
44 |
$cat_args['value'] = 'slug';
|
45 |
$cat_args['show_option_none'] = __('Select Category');
|
46 |
-
wp_dropdown_categories(apply_filters('
|
47 |
?>
|
48 |
|
49 |
<script type='text/javascript'>
|
43 |
$cat_args['walker'] = new EO_Walker_TaxonomyDropdown();
|
44 |
$cat_args['value'] = 'slug';
|
45 |
$cat_args['show_option_none'] = __('Select Category');
|
46 |
+
wp_dropdown_categories(apply_filters('eventorganiser_widget_event_categories_dropdown_args', $cat_args));
|
47 |
?>
|
48 |
|
49 |
<script type='text/javascript'>
|
classes/class-eventorganiser-shortcodes.php
CHANGED
@@ -33,9 +33,11 @@ class EventOrganiser_Shortcodes {
|
|
33 |
}
|
34 |
}
|
35 |
|
36 |
-
/*
|
37 |
$atts = wp_parse_args($atts,array(
|
38 |
'showpastevents'=>1,
|
|
|
|
|
39 |
));
|
40 |
|
41 |
self::$add_script = true;
|
33 |
}
|
34 |
}
|
35 |
|
36 |
+
/* Parse defaults */
|
37 |
$atts = wp_parse_args($atts,array(
|
38 |
'showpastevents'=>1,
|
39 |
+
'show-long' => 0, //TODO provide shortcode support
|
40 |
+
'link-to-single' => 0,//TODO provide shortcode support
|
41 |
));
|
42 |
|
43 |
self::$add_script = true;
|
composer.json
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "stephenharris/event-organiser",
|
3 |
+
"description": "Event management plug-in for WordPress",
|
4 |
+
"keywords": ["events", "wordpress"],
|
5 |
+
"homepage": "http://wp-event-organiser.com",
|
6 |
+
"type": "wordpress-plugin",
|
7 |
+
"license": "GPL-3.0+",
|
8 |
+
"authors": [
|
9 |
+
{
|
10 |
+
"name": "Stephen Harris",
|
11 |
+
"email": "contact@stephenharris.info",
|
12 |
+
"homepage": "http://www.stephenharris.info"
|
13 |
+
}
|
14 |
+
],
|
15 |
+
"support": {
|
16 |
+
"forum": "http://wp-event-organiser.com/forums",
|
17 |
+
"issues": "https://github.com/stephenharris/Event-Organiser/issues"
|
18 |
+
},
|
19 |
+
"require-dev": {
|
20 |
+
"phpunit/phpunit": "3.7.*"
|
21 |
+
}
|
22 |
+
}
|
23 |
+
|
composer.lock
ADDED
@@ -0,0 +1,439 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"_readme": [
|
3 |
+
"This file locks the dependencies of your project to a known state",
|
4 |
+
"Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file"
|
5 |
+
],
|
6 |
+
"hash": "ad18c69a12257fcc6c30c20c88fcbd40",
|
7 |
+
"packages": [
|
8 |
+
|
9 |
+
],
|
10 |
+
"packages-dev": [
|
11 |
+
{
|
12 |
+
"name": "phpunit/php-code-coverage",
|
13 |
+
"version": "1.2.13",
|
14 |
+
"source": {
|
15 |
+
"type": "git",
|
16 |
+
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
|
17 |
+
"reference": "466e7cd2554b4e264c9e3f31216d25ac0e5f3d94"
|
18 |
+
},
|
19 |
+
"dist": {
|
20 |
+
"type": "zip",
|
21 |
+
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/466e7cd2554b4e264c9e3f31216d25ac0e5f3d94",
|
22 |
+
"reference": "466e7cd2554b4e264c9e3f31216d25ac0e5f3d94",
|
23 |
+
"shasum": ""
|
24 |
+
},
|
25 |
+
"require": {
|
26 |
+
"php": ">=5.3.3",
|
27 |
+
"phpunit/php-file-iterator": ">=1.3.0@stable",
|
28 |
+
"phpunit/php-text-template": ">=1.1.1@stable",
|
29 |
+
"phpunit/php-token-stream": ">=1.1.3@stable"
|
30 |
+
},
|
31 |
+
"require-dev": {
|
32 |
+
"phpunit/phpunit": "3.7.*@dev"
|
33 |
+
},
|
34 |
+
"suggest": {
|
35 |
+
"ext-dom": "*",
|
36 |
+
"ext-xdebug": ">=2.0.5"
|
37 |
+
},
|
38 |
+
"type": "library",
|
39 |
+
"extra": {
|
40 |
+
"branch-alias": {
|
41 |
+
"dev-master": "1.2.x-dev"
|
42 |
+
}
|
43 |
+
},
|
44 |
+
"autoload": {
|
45 |
+
"classmap": [
|
46 |
+
"PHP/"
|
47 |
+
]
|
48 |
+
},
|
49 |
+
"notification-url": "https://packagist.org/downloads/",
|
50 |
+
"include-path": [
|
51 |
+
""
|
52 |
+
],
|
53 |
+
"license": [
|
54 |
+
"BSD-3-Clause"
|
55 |
+
],
|
56 |
+
"authors": [
|
57 |
+
{
|
58 |
+
"name": "Sebastian Bergmann",
|
59 |
+
"email": "sb@sebastian-bergmann.de",
|
60 |
+
"role": "lead"
|
61 |
+
}
|
62 |
+
],
|
63 |
+
"description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
|
64 |
+
"homepage": "https://github.com/sebastianbergmann/php-code-coverage",
|
65 |
+
"keywords": [
|
66 |
+
"coverage",
|
67 |
+
"testing",
|
68 |
+
"xunit"
|
69 |
+
],
|
70 |
+
"time": "2013-09-10 08:14:32"
|
71 |
+
},
|
72 |
+
{
|
73 |
+
"name": "phpunit/php-file-iterator",
|
74 |
+
"version": "1.3.4",
|
75 |
+
"source": {
|
76 |
+
"type": "git",
|
77 |
+
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
|
78 |
+
"reference": "acd690379117b042d1c8af1fafd61bde001bf6bb"
|
79 |
+
},
|
80 |
+
"dist": {
|
81 |
+
"type": "zip",
|
82 |
+
"url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/acd690379117b042d1c8af1fafd61bde001bf6bb",
|
83 |
+
"reference": "acd690379117b042d1c8af1fafd61bde001bf6bb",
|
84 |
+
"shasum": ""
|
85 |
+
},
|
86 |
+
"require": {
|
87 |
+
"php": ">=5.3.3"
|
88 |
+
},
|
89 |
+
"type": "library",
|
90 |
+
"autoload": {
|
91 |
+
"classmap": [
|
92 |
+
"File/"
|
93 |
+
]
|
94 |
+
},
|
95 |
+
"notification-url": "https://packagist.org/downloads/",
|
96 |
+
"include-path": [
|
97 |
+
""
|
98 |
+
],
|
99 |
+
"license": [
|
100 |
+
"BSD-3-Clause"
|
101 |
+
],
|
102 |
+
"authors": [
|
103 |
+
{
|
104 |
+
"name": "Sebastian Bergmann",
|
105 |
+
"email": "sb@sebastian-bergmann.de",
|
106 |
+
"role": "lead"
|
107 |
+
}
|
108 |
+
],
|
109 |
+
"description": "FilterIterator implementation that filters files based on a list of suffixes.",
|
110 |
+
"homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
|
111 |
+
"keywords": [
|
112 |
+
"filesystem",
|
113 |
+
"iterator"
|
114 |
+
],
|
115 |
+
"time": "2013-10-10 15:34:57"
|
116 |
+
},
|
117 |
+
{
|
118 |
+
"name": "phpunit/php-text-template",
|
119 |
+
"version": "1.1.4",
|
120 |
+
"source": {
|
121 |
+
"type": "git",
|
122 |
+
"url": "https://github.com/sebastianbergmann/php-text-template.git",
|
123 |
+
"reference": "5180896f51c5b3648ac946b05f9ec02be78a0b23"
|
124 |
+
},
|
125 |
+
"dist": {
|
126 |
+
"type": "zip",
|
127 |
+
"url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5180896f51c5b3648ac946b05f9ec02be78a0b23",
|
128 |
+
"reference": "5180896f51c5b3648ac946b05f9ec02be78a0b23",
|
129 |
+
"shasum": ""
|
130 |
+
},
|
131 |
+
"require": {
|
132 |
+
"php": ">=5.3.3"
|
133 |
+
},
|
134 |
+
"type": "library",
|
135 |
+
"autoload": {
|
136 |
+
"classmap": [
|
137 |
+
"Text/"
|
138 |
+
]
|
139 |
+
},
|
140 |
+
"notification-url": "https://packagist.org/downloads/",
|
141 |
+
"include-path": [
|
142 |
+
""
|
143 |
+
],
|
144 |
+
"license": [
|
145 |
+
"BSD-3-Clause"
|
146 |
+
],
|
147 |
+
"authors": [
|
148 |
+
{
|
149 |
+
"name": "Sebastian Bergmann",
|
150 |
+
"email": "sb@sebastian-bergmann.de",
|
151 |
+
"role": "lead"
|
152 |
+
}
|
153 |
+
],
|
154 |
+
"description": "Simple template engine.",
|
155 |
+
"homepage": "https://github.com/sebastianbergmann/php-text-template/",
|
156 |
+
"keywords": [
|
157 |
+
"template"
|
158 |
+
],
|
159 |
+
"time": "2012-10-31 18:15:28"
|
160 |
+
},
|
161 |
+
{
|
162 |
+
"name": "phpunit/php-timer",
|
163 |
+
"version": "1.0.5",
|
164 |
+
"source": {
|
165 |
+
"type": "git",
|
166 |
+
"url": "https://github.com/sebastianbergmann/php-timer.git",
|
167 |
+
"reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c"
|
168 |
+
},
|
169 |
+
"dist": {
|
170 |
+
"type": "zip",
|
171 |
+
"url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
|
172 |
+
"reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
|
173 |
+
"shasum": ""
|
174 |
+
},
|
175 |
+
"require": {
|
176 |
+
"php": ">=5.3.3"
|
177 |
+
},
|
178 |
+
"type": "library",
|
179 |
+
"autoload": {
|
180 |
+
"classmap": [
|
181 |
+
"PHP/"
|
182 |
+
]
|
183 |
+
},
|
184 |
+
"notification-url": "https://packagist.org/downloads/",
|
185 |
+
"include-path": [
|
186 |
+
""
|
187 |
+
],
|
188 |
+
"license": [
|
189 |
+
"BSD-3-Clause"
|
190 |
+
],
|
191 |
+
"authors": [
|
192 |
+
{
|
193 |
+
"name": "Sebastian Bergmann",
|
194 |
+
"email": "sb@sebastian-bergmann.de",
|
195 |
+
"role": "lead"
|
196 |
+
}
|
197 |
+
],
|
198 |
+
"description": "Utility class for timing",
|
199 |
+
"homepage": "https://github.com/sebastianbergmann/php-timer/",
|
200 |
+
"keywords": [
|
201 |
+
"timer"
|
202 |
+
],
|
203 |
+
"time": "2013-08-02 07:42:54"
|
204 |
+
},
|
205 |
+
{
|
206 |
+
"name": "phpunit/php-token-stream",
|
207 |
+
"version": "1.2.1",
|
208 |
+
"source": {
|
209 |
+
"type": "git",
|
210 |
+
"url": "https://github.com/sebastianbergmann/php-token-stream.git",
|
211 |
+
"reference": "5220af2a7929aa35cf663d97c89ad3d50cf5fa3e"
|
212 |
+
},
|
213 |
+
"dist": {
|
214 |
+
"type": "zip",
|
215 |
+
"url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/5220af2a7929aa35cf663d97c89ad3d50cf5fa3e",
|
216 |
+
"reference": "5220af2a7929aa35cf663d97c89ad3d50cf5fa3e",
|
217 |
+
"shasum": ""
|
218 |
+
},
|
219 |
+
"require": {
|
220 |
+
"ext-tokenizer": "*",
|
221 |
+
"php": ">=5.3.3"
|
222 |
+
},
|
223 |
+
"type": "library",
|
224 |
+
"extra": {
|
225 |
+
"branch-alias": {
|
226 |
+
"dev-master": "1.2-dev"
|
227 |
+
}
|
228 |
+
},
|
229 |
+
"autoload": {
|
230 |
+
"classmap": [
|
231 |
+
"PHP/"
|
232 |
+
]
|
233 |
+
},
|
234 |
+
"notification-url": "https://packagist.org/downloads/",
|
235 |
+
"include-path": [
|
236 |
+
""
|
237 |
+
],
|
238 |
+
"license": [
|
239 |
+
"BSD-3-Clause"
|
240 |
+
],
|
241 |
+
"authors": [
|
242 |
+
{
|
243 |
+
"name": "Sebastian Bergmann",
|
244 |
+
"email": "sb@sebastian-bergmann.de",
|
245 |
+
"role": "lead"
|
246 |
+
}
|
247 |
+
],
|
248 |
+
"description": "Wrapper around PHP's tokenizer extension.",
|
249 |
+
"homepage": "https://github.com/sebastianbergmann/php-token-stream/",
|
250 |
+
"keywords": [
|
251 |
+
"tokenizer"
|
252 |
+
],
|
253 |
+
"time": "2013-09-13 04:58:23"
|
254 |
+
},
|
255 |
+
{
|
256 |
+
"name": "phpunit/phpunit",
|
257 |
+
"version": "3.7.28",
|
258 |
+
"source": {
|
259 |
+
"type": "git",
|
260 |
+
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
261 |
+
"reference": "3b97c8492bcafbabe6b6fbd2ab35f2f04d932a8d"
|
262 |
+
},
|
263 |
+
"dist": {
|
264 |
+
"type": "zip",
|
265 |
+
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3b97c8492bcafbabe6b6fbd2ab35f2f04d932a8d",
|
266 |
+
"reference": "3b97c8492bcafbabe6b6fbd2ab35f2f04d932a8d",
|
267 |
+
"shasum": ""
|
268 |
+
},
|
269 |
+
"require": {
|
270 |
+
"ext-dom": "*",
|
271 |
+
"ext-pcre": "*",
|
272 |
+
"ext-reflection": "*",
|
273 |
+
"ext-spl": "*",
|
274 |
+
"php": ">=5.3.3",
|
275 |
+
"phpunit/php-code-coverage": "~1.2.1",
|
276 |
+
"phpunit/php-file-iterator": ">=1.3.1",
|
277 |
+
"phpunit/php-text-template": ">=1.1.1",
|
278 |
+
"phpunit/php-timer": ">=1.0.4",
|
279 |
+
"phpunit/phpunit-mock-objects": "~1.2.0",
|
280 |
+
"symfony/yaml": "~2.0"
|
281 |
+
},
|
282 |
+
"require-dev": {
|
283 |
+
"pear-pear/pear": "1.9.4"
|
284 |
+
},
|
285 |
+
"suggest": {
|
286 |
+
"ext-json": "*",
|
287 |
+
"ext-simplexml": "*",
|
288 |
+
"ext-tokenizer": "*",
|
289 |
+
"phpunit/php-invoker": ">=1.1.0,<1.2.0"
|
290 |
+
},
|
291 |
+
"bin": [
|
292 |
+
"composer/bin/phpunit"
|
293 |
+
],
|
294 |
+
"type": "library",
|
295 |
+
"extra": {
|
296 |
+
"branch-alias": {
|
297 |
+
"dev-master": "3.7.x-dev"
|
298 |
+
}
|
299 |
+
},
|
300 |
+
"autoload": {
|
301 |
+
"classmap": [
|
302 |
+
"PHPUnit/"
|
303 |
+
]
|
304 |
+
},
|
305 |
+
"notification-url": "https://packagist.org/downloads/",
|
306 |
+
"include-path": [
|
307 |
+
"",
|
308 |
+
"../../symfony/yaml/"
|
309 |
+
],
|
310 |
+
"license": [
|
311 |
+
"BSD-3-Clause"
|
312 |
+
],
|
313 |
+
"authors": [
|
314 |
+
{
|
315 |
+
"name": "Sebastian Bergmann",
|
316 |
+
"email": "sebastian@phpunit.de",
|
317 |
+
"role": "lead"
|
318 |
+
}
|
319 |
+
],
|
320 |
+
"description": "The PHP Unit Testing framework.",
|
321 |
+
"homepage": "http://www.phpunit.de/",
|
322 |
+
"keywords": [
|
323 |
+
"phpunit",
|
324 |
+
"testing",
|
325 |
+
"xunit"
|
326 |
+
],
|
327 |
+
"time": "2013-10-17 07:27:40"
|
328 |
+
},
|
329 |
+
{
|
330 |
+
"name": "phpunit/phpunit-mock-objects",
|
331 |
+
"version": "1.2.3",
|
332 |
+
"source": {
|
333 |
+
"type": "git",
|
334 |
+
"url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
|
335 |
+
"reference": "5794e3c5c5ba0fb037b11d8151add2a07fa82875"
|
336 |
+
},
|
337 |
+
"dist": {
|
338 |
+
"type": "zip",
|
339 |
+
"url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/5794e3c5c5ba0fb037b11d8151add2a07fa82875",
|
340 |
+
"reference": "5794e3c5c5ba0fb037b11d8151add2a07fa82875",
|
341 |
+
"shasum": ""
|
342 |
+
},
|
343 |
+
"require": {
|
344 |
+
"php": ">=5.3.3",
|
345 |
+
"phpunit/php-text-template": ">=1.1.1@stable"
|
346 |
+
},
|
347 |
+
"suggest": {
|
348 |
+
"ext-soap": "*"
|
349 |
+
},
|
350 |
+
"type": "library",
|
351 |
+
"autoload": {
|
352 |
+
"classmap": [
|
353 |
+
"PHPUnit/"
|
354 |
+
]
|
355 |
+
},
|
356 |
+
"notification-url": "https://packagist.org/downloads/",
|
357 |
+
"include-path": [
|
358 |
+
""
|
359 |
+
],
|
360 |
+
"license": [
|
361 |
+
"BSD-3-Clause"
|
362 |
+
],
|
363 |
+
"authors": [
|
364 |
+
{
|
365 |
+
"name": "Sebastian Bergmann",
|
366 |
+
"email": "sb@sebastian-bergmann.de",
|
367 |
+
"role": "lead"
|
368 |
+
}
|
369 |
+
],
|
370 |
+
"description": "Mock Object library for PHPUnit",
|
371 |
+
"homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
|
372 |
+
"keywords": [
|
373 |
+
"mock",
|
374 |
+
"xunit"
|
375 |
+
],
|
376 |
+
"time": "2013-01-13 10:24:48"
|
377 |
+
},
|
378 |
+
{
|
379 |
+
"name": "symfony/yaml",
|
380 |
+
"version": "v2.3.6",
|
381 |
+
"target-dir": "Symfony/Component/Yaml",
|
382 |
+
"source": {
|
383 |
+
"type": "git",
|
384 |
+
"url": "https://github.com/symfony/Yaml.git",
|
385 |
+
"reference": "6bb881b948368482e1abf1a75c08bcf88a1c5fc3"
|
386 |
+
},
|
387 |
+
"dist": {
|
388 |
+
"type": "zip",
|
389 |
+
"url": "https://api.github.com/repos/symfony/Yaml/zipball/6bb881b948368482e1abf1a75c08bcf88a1c5fc3",
|
390 |
+
"reference": "6bb881b948368482e1abf1a75c08bcf88a1c5fc3",
|
391 |
+
"shasum": ""
|
392 |
+
},
|
393 |
+
"require": {
|
394 |
+
"php": ">=5.3.3"
|
395 |
+
},
|
396 |
+
"type": "library",
|
397 |
+
"extra": {
|
398 |
+
"branch-alias": {
|
399 |
+
"dev-master": "2.3-dev"
|
400 |
+
}
|
401 |
+
},
|
402 |
+
"autoload": {
|
403 |
+
"psr-0": {
|
404 |
+
"Symfony\\Component\\Yaml\\": ""
|
405 |
+
}
|
406 |
+
},
|
407 |
+
"notification-url": "https://packagist.org/downloads/",
|
408 |
+
"license": [
|
409 |
+
"MIT"
|
410 |
+
],
|
411 |
+
"authors": [
|
412 |
+
{
|
413 |
+
"name": "Fabien Potencier",
|
414 |
+
"email": "fabien@symfony.com"
|
415 |
+
},
|
416 |
+
{
|
417 |
+
"name": "Symfony Community",
|
418 |
+
"homepage": "http://symfony.com/contributors"
|
419 |
+
}
|
420 |
+
],
|
421 |
+
"description": "Symfony Yaml Component",
|
422 |
+
"homepage": "http://symfony.com",
|
423 |
+
"time": "2013-09-22 18:04:39"
|
424 |
+
}
|
425 |
+
],
|
426 |
+
"aliases": [
|
427 |
+
|
428 |
+
],
|
429 |
+
"minimum-stability": "stable",
|
430 |
+
"stability-flags": [
|
431 |
+
|
432 |
+
],
|
433 |
+
"platform": [
|
434 |
+
|
435 |
+
],
|
436 |
+
"platform-dev": [
|
437 |
+
|
438 |
+
]
|
439 |
+
}
|
css/eventorganiser-admin-classic.css
CHANGED
@@ -38,7 +38,7 @@
|
|
38 |
----------------------------------*/
|
39 |
|
40 |
/* Overlays */
|
41 |
-
.ui-widget-overlay { position:
|
42 |
|
43 |
|
44 |
/*
|
38 |
----------------------------------*/
|
39 |
|
40 |
/* Overlays */
|
41 |
+
.ui-widget-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; }
|
42 |
|
43 |
|
44 |
/*
|
css/eventorganiser-admin-fresh.css
CHANGED
@@ -38,7 +38,7 @@
|
|
38 |
----------------------------------*/
|
39 |
|
40 |
/* Overlays */
|
41 |
-
.ui-widget-overlay { position:
|
42 |
|
43 |
|
44 |
/*
|
38 |
----------------------------------*/
|
39 |
|
40 |
/* Overlays */
|
41 |
+
.ui-widget-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; }
|
42 |
|
43 |
|
44 |
/*
|
css/eventorganiser-admin-style.css
CHANGED
@@ -26,7 +26,7 @@
|
|
26 |
/* Calendar View*/
|
27 |
.fc-button-next,.fc-button-prev {margin-top:2px;}
|
28 |
.fc-text-arrow{line-height:0em;}
|
29 |
-
.fc-button-prev .ui-button-text,.fc-button-next .ui-button-text{padding-top:0.
|
30 |
.fc-button{line-height:1em;height: 2.2em;line-height: 2.2em;}
|
31 |
.event.past-event{opacity:0.5;}
|
32 |
form.eo_cal .ui-autocomplete-input{width:220px;}
|
26 |
/* Calendar View*/
|
27 |
.fc-button-next,.fc-button-prev {margin-top:2px;}
|
28 |
.fc-text-arrow{line-height:0em;}
|
29 |
+
.fc-button-prev .ui-button-text,.fc-button-next .ui-button-text{padding-top:0.1em;}
|
30 |
.fc-button{line-height:1em;height: 2.2em;line-height: 2.2em;}
|
31 |
.event.past-event{opacity:0.5;}
|
32 |
form.eo_cal .ui-autocomplete-input{width:220px;}
|
css/fullcalendar.css
CHANGED
@@ -6,10 +6,10 @@
|
|
6 |
|
7 |
/*styling for calendar view tabs */
|
8 |
.view-button{float:right;height: 30px;line-height: 28px;margin-top: 3px;padding: 0 11px;}
|
9 |
-
.view-button.active{border-color: #dfdfdf #dfdfdf #FFFFFF;border-style: solid;border-width: 1px;font-size: 120%;}
|
10 |
|
11 |
/*calendar view conainer */
|
12 |
-
|
|
|
13 |
|
14 |
/* loading text */
|
15 |
#loading{position:absolute;bottom:0;font-size: 16px;line-height: 16px;margin-bottom: 5px;}
|
6 |
|
7 |
/*styling for calendar view tabs */
|
8 |
.view-button{float:right;height: 30px;line-height: 28px;margin-top: 3px;padding: 0 11px;}
|
|
|
9 |
|
10 |
/*calendar view conainer */
|
11 |
+
#calendar-view{clear: both;height: 34px;margin-bottom: 15px;border-bottom: 1px solid #dfdfdf;padding-right: 100px;position: relative;}
|
12 |
+
#calendar-view .nav-tab{ font-size: 15px }
|
13 |
|
14 |
/* loading text */
|
15 |
#loading{position:absolute;bottom:0;font-size: 16px;line-height: 16px;margin-bottom: 5px;}
|
event-organiser-calendar.php
CHANGED
@@ -231,7 +231,7 @@ class EventOrganiser_Calendar_Page extends EventOrganiser_Admin_Page
|
|
231 |
<div id="calendar-view">
|
232 |
<span id='loading' style='display:none'><?php _e( 'Loading…' );?></span>
|
233 |
<?php foreach( $views as $id => $label )
|
234 |
-
printf( '<a href="#" class="view-button %s" id="%s">%s</a>', ( $id == $current ? 'active' : '' ), $id, $label );
|
235 |
?>
|
236 |
</div>
|
237 |
|
231 |
<div id="calendar-view">
|
232 |
<span id='loading' style='display:none'><?php _e( 'Loading…' );?></span>
|
233 |
<?php foreach( $views as $id => $label )
|
234 |
+
printf( '<a href="#" class="nav-tab view-button %s" id="%s">%s</a>', ( $id == $current ? 'nav-tab-active' : '' ), $id, $label );
|
235 |
?>
|
236 |
</div>
|
237 |
|
event-organiser-settings.php
CHANGED
@@ -552,8 +552,11 @@ class EventOrganiser_Settings_Page extends EventOrganiser_Admin_Page{
|
|
552 |
|
553 |
function display_permissions(){
|
554 |
global $wp_roles;
|
555 |
-
|
556 |
?>
|
|
|
|
|
|
|
557 |
<table class="widefat fixed posts">
|
558 |
<thead>
|
559 |
<tr>
|
552 |
|
553 |
function display_permissions(){
|
554 |
global $wp_roles;
|
555 |
+
|
556 |
?>
|
557 |
+
<h4> <?php _e( 'Event management permissions', 'eventorganiser' ); ?></h4>
|
558 |
+
<p> <?php _e( 'Set permissions for events and venue management', 'eventorganiser' ); ?> </p>
|
559 |
+
|
560 |
<table class="widefat fixed posts">
|
561 |
<thead>
|
562 |
<tr>
|
event-organiser.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/*
|
3 |
Plugin Name: Event Organiser
|
4 |
Plugin URI: http://www.wp-event-organiser.com
|
5 |
-
Version: 2.
|
6 |
Description: Creates a custom post type 'events' with features such as reoccurring events, venues, Google Maps, calendar views and events and venue pages
|
7 |
Author: Stephen Harris
|
8 |
Author URI: http://www.stephenharris.info
|
@@ -38,7 +38,7 @@ Domain Path: /languages
|
|
38 |
/**
|
39 |
* Set the plug-in database version
|
40 |
*/
|
41 |
-
define( 'EVENT_ORGANISER_VER', '2.
|
42 |
|
43 |
|
44 |
add_action( 'after_setup_theme', '_eventorganiser_set_constants' );
|
@@ -203,10 +203,6 @@ if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
|
|
203 |
require_once(EVENT_ORGANISER_DIR.'includes/event-organiser-ajax.php');
|
204 |
}
|
205 |
|
206 |
-
if( defined( 'WP_DEBUG' ) && WP_DEBUG ){
|
207 |
-
add_action( 'register_sidebar', '_eventorganiser_check_sidebars' );
|
208 |
-
}
|
209 |
-
|
210 |
/****** Functions ******/
|
211 |
require_once(EVENT_ORGANISER_DIR.'includes/event-organiser-event-functions.php');
|
212 |
require_once(EVENT_ORGANISER_DIR.'includes/event-organiser-venue-functions.php');
|
2 |
/*
|
3 |
Plugin Name: Event Organiser
|
4 |
Plugin URI: http://www.wp-event-organiser.com
|
5 |
+
Version: 2.4
|
6 |
Description: Creates a custom post type 'events' with features such as reoccurring events, venues, Google Maps, calendar views and events and venue pages
|
7 |
Author: Stephen Harris
|
8 |
Author URI: http://www.stephenharris.info
|
38 |
/**
|
39 |
* Set the plug-in database version
|
40 |
*/
|
41 |
+
define( 'EVENT_ORGANISER_VER', '2.4' );
|
42 |
|
43 |
|
44 |
add_action( 'after_setup_theme', '_eventorganiser_set_constants' );
|
203 |
require_once(EVENT_ORGANISER_DIR.'includes/event-organiser-ajax.php');
|
204 |
}
|
205 |
|
|
|
|
|
|
|
|
|
206 |
/****** Functions ******/
|
207 |
require_once(EVENT_ORGANISER_DIR.'includes/event-organiser-event-functions.php');
|
208 |
require_once(EVENT_ORGANISER_DIR.'includes/event-organiser-venue-functions.php');
|
includes/class-eo-ical-parser.php
CHANGED
@@ -1,4 +1,7 @@
|
|
1 |
<?php
|
|
|
|
|
|
|
2 |
|
3 |
/**
|
4 |
* Parses a local or remote ICAL file
|
@@ -12,6 +15,7 @@
|
|
12 |
* $ical->venues; //Array of venue names
|
13 |
* $ical->categories; //Array of category names
|
14 |
* $ical->errors; //Array of WP_Error errors
|
|
|
15 |
* </code>
|
16 |
*
|
17 |
* You can configire default settings by passing an array to the class constructor.
|
@@ -35,14 +39,20 @@ class EO_ICAL_Parser{
|
|
35 |
|
36 |
var $events = array();
|
37 |
var $venues = array();
|
|
|
38 |
var $categories = array();
|
|
|
|
|
39 |
var $errors = array();
|
|
|
40 |
|
41 |
var $events_parsed = 0;
|
42 |
var $venue_parsed = 0;
|
43 |
var $categories_parsed = 0;
|
44 |
|
45 |
var $current_event = array();
|
|
|
|
|
46 |
|
47 |
/**
|
48 |
* Constructor with settings passed as arguments
|
@@ -86,9 +96,10 @@ class EO_ICAL_Parser{
|
|
86 |
$this->ical_array = $this->url_to_array( $file );
|
87 |
|
88 |
}else{
|
89 |
-
$this->ical_array = WP_Error(
|
|
|
90 |
__( 'There was an error detecting ICAL source.', 'eventorgansier' )
|
91 |
-
|
92 |
}
|
93 |
|
94 |
if( is_wp_error( $this->ical_array ) )
|
@@ -175,10 +186,11 @@ class EO_ICAL_Parser{
|
|
175 |
protected function parse_ical_array(){
|
176 |
|
177 |
$state = "NONE";//Initial state
|
|
|
178 |
|
179 |
//Read through each line
|
180 |
-
for ( $
|
181 |
-
$buff = trim( $this->ical_array[$
|
182 |
|
183 |
if( !empty( $buff ) ):
|
184 |
$line = explode(':',$buff,2);
|
@@ -194,22 +206,31 @@ class EO_ICAL_Parser{
|
|
194 |
//If END:VEVENT, add event to parsed events and clear $event
|
195 |
if( $property=='END' && $value=='VEVENT' ){
|
196 |
$state = "VCALENDAR";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
197 |
$this->events[] = $this->current_event;
|
198 |
$this->current_event = array();
|
199 |
|
200 |
//Otherwise, parse event property
|
201 |
}else{
|
202 |
try{
|
203 |
-
while( isset( $this->ical_array[$
|
204 |
//Remove initial white space {@link http://www.ietf.org/rfc/rfc2445.txt Section 4.1}
|
205 |
-
$value .= substr( $this->ical_array[$
|
206 |
-
$
|
207 |
}
|
208 |
|
209 |
$this->parse_event_property( $property, $value, $modifiers );
|
210 |
|
211 |
}catch( Exception $e ){
|
212 |
-
$this->report_error( $
|
213 |
$state = "VCALENDAR";//Abort parsing event
|
214 |
}
|
215 |
}
|
@@ -226,12 +247,7 @@ class EO_ICAL_Parser{
|
|
226 |
$state = "NONE";
|
227 |
|
228 |
}elseif($property=='X-WR-TIMEZONE'){
|
229 |
-
|
230 |
-
$this->calendar_timezone = $this->parse_timezone($value);
|
231 |
-
}catch(Exception $e){
|
232 |
-
$this->report_error( $n+1, 'timezone-parser-error', $e->getMessage() );
|
233 |
-
break;
|
234 |
-
}
|
235 |
}
|
236 |
|
237 |
//Other
|
@@ -254,7 +270,24 @@ class EO_ICAL_Parser{
|
|
254 |
|
255 |
$this->errors[] = new WP_Error(
|
256 |
$type,
|
257 |
-
sprintf( __( 'Line
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
258 |
);
|
259 |
}
|
260 |
|
@@ -267,6 +300,7 @@ class EO_ICAL_Parser{
|
|
267 |
if( !empty( $modifiers ) ):
|
268 |
foreach( $modifiers as $modifier ):
|
269 |
if ( stristr( $modifier, 'TZID' ) ){
|
|
|
270 |
$date_tz = $this->parse_timezone( substr( $modifier, 5 ) );
|
271 |
|
272 |
}elseif( stristr( $modifier, 'VALUE' ) ){
|
@@ -389,11 +423,20 @@ class EO_ICAL_Parser{
|
|
389 |
$this->current_event['post_status'] = isset( $map[$value] ) ? $map[$value] : $this->default_status;
|
390 |
break;
|
391 |
|
392 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
393 |
case 'URL':
|
394 |
$this->current_event['url'] = $value;
|
395 |
break;
|
396 |
|
|
|
397 |
endswitch;
|
398 |
|
399 |
}
|
@@ -428,12 +471,103 @@ class EO_ICAL_Parser{
|
|
428 |
* @param string $tzid - the value of the ICAL TZID property
|
429 |
* @return DateTimeZone - the timezone with the given identifier or false if it isn't recognised
|
430 |
*/
|
431 |
-
|
|
|
432 |
$tzid = str_replace( '-', '/', $tzid );
|
433 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
434 |
return $tz;
|
435 |
}
|
436 |
|
|
|
|
|
437 |
/**
|
438 |
* Takes a date in ICAL and returns a datetime object
|
439 |
*
|
@@ -447,10 +581,15 @@ class EO_ICAL_Parser{
|
|
447 |
preg_match('/^(\d{8})*/', $ical_date, $matches);
|
448 |
|
449 |
if( count( $matches ) !=2 ){
|
450 |
-
throw new Exception(
|
|
|
|
|
|
|
|
|
451 |
}
|
452 |
|
453 |
-
|
|
|
454 |
|
455 |
return $datetime;
|
456 |
}
|
@@ -480,7 +619,11 @@ class EO_ICAL_Parser{
|
|
480 |
$tz = new DateTimeZone('UTC');
|
481 |
|
482 |
}else{
|
483 |
-
throw new Exception(
|
|
|
|
|
|
|
|
|
484 |
return false;
|
485 |
}
|
486 |
|
@@ -508,56 +651,130 @@ class EO_ICAL_Parser{
|
|
508 |
$property = $prop_value[0];
|
509 |
$value = $prop_value[1];
|
510 |
|
511 |
-
switch($property):
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
|
516 |
-
|
517 |
-
|
518 |
break;
|
519 |
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
|
|
|
|
|
|
526 |
|
527 |
-
|
|
|
528 |
break;
|
529 |
|
530 |
-
|
531 |
-
|
532 |
break;
|
533 |
|
534 |
-
|
535 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
536 |
break;
|
537 |
endswitch;
|
538 |
|
539 |
-
|
540 |
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
546 |
|
547 |
-
}elseif(isset($bymonthday)){
|
548 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
549 |
|
550 |
}else{
|
551 |
throw new Exception('Incomplete scheduling information');
|
552 |
}
|
553 |
|
554 |
-
|
555 |
-
preg_match('/([a-zA-Z,]+)/', $byday, $matches);
|
556 |
-
$rule_array['schedule_meta'] =explode(',',$matches[1]);
|
557 |
|
558 |
-
|
559 |
|
560 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
561 |
}
|
562 |
|
563 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
<?php
|
2 |
+
//TODO How does UNTIL=[DATE] as opposed to UNTIL=[DATE-TIME] affect "foreign" recurring events
|
3 |
+
//TODO Resolve issue (1) below
|
4 |
+
//TODO Detect issue (2) and issue error notices
|
5 |
|
6 |
/**
|
7 |
* Parses a local or remote ICAL file
|
15 |
* $ical->venues; //Array of venue names
|
16 |
* $ical->categories; //Array of category names
|
17 |
* $ical->errors; //Array of WP_Error errors
|
18 |
+
* $ical->warnings; //Array of WP_Error 'warnings'. This are "non-fatal" errors (e.g. warnings about timezone 'guessing').
|
19 |
* </code>
|
20 |
*
|
21 |
* You can configire default settings by passing an array to the class constructor.
|
39 |
|
40 |
var $events = array();
|
41 |
var $venues = array();
|
42 |
+
var $venue_meta = array();
|
43 |
var $categories = array();
|
44 |
+
|
45 |
+
|
46 |
var $errors = array();
|
47 |
+
var $warnings = array();
|
48 |
|
49 |
var $events_parsed = 0;
|
50 |
var $venue_parsed = 0;
|
51 |
var $categories_parsed = 0;
|
52 |
|
53 |
var $current_event = array();
|
54 |
+
|
55 |
+
var $line = 0; //Current line being parsed
|
56 |
|
57 |
/**
|
58 |
* Constructor with settings passed as arguments
|
96 |
$this->ical_array = $this->url_to_array( $file );
|
97 |
|
98 |
}else{
|
99 |
+
$this->ical_array = new WP_Error(
|
100 |
+
'invalid-ical-source',
|
101 |
__( 'There was an error detecting ICAL source.', 'eventorgansier' )
|
102 |
+
);
|
103 |
}
|
104 |
|
105 |
if( is_wp_error( $this->ical_array ) )
|
186 |
protected function parse_ical_array(){
|
187 |
|
188 |
$state = "NONE";//Initial state
|
189 |
+
$this->line = 1;
|
190 |
|
191 |
//Read through each line
|
192 |
+
for ( $this->line = 1; $this->line <= count ( $this->ical_array ) && empty( $this->errors ); $this->line++ ):
|
193 |
+
$buff = trim( $this->ical_array[$this->line-1] );
|
194 |
|
195 |
if( !empty( $buff ) ):
|
196 |
$line = explode(':',$buff,2);
|
206 |
//If END:VEVENT, add event to parsed events and clear $event
|
207 |
if( $property=='END' && $value=='VEVENT' ){
|
208 |
$state = "VCALENDAR";
|
209 |
+
|
210 |
+
//Now we've finished passing the event, move venue data to $this->venue_meta
|
211 |
+
if( isset( $this->current_event['geo'] ) && !empty( $this->current_event['event-venue'] ) ){
|
212 |
+
$venue = $this->current_event['event-venue'];
|
213 |
+
$this->venue_meta[$venue]['latitude'] = $this->current_event['geo']['lat'];
|
214 |
+
$this->venue_meta[$venue]['longtitude'] = $this->current_event['geo']['lng'];
|
215 |
+
unset( $this->current_event['geo'] );
|
216 |
+
}
|
217 |
+
|
218 |
$this->events[] = $this->current_event;
|
219 |
$this->current_event = array();
|
220 |
|
221 |
//Otherwise, parse event property
|
222 |
}else{
|
223 |
try{
|
224 |
+
while( isset( $this->ical_array[$this->line] ) && $this->ical_array[$this->line-1][0] == ' ' ){
|
225 |
//Remove initial white space {@link http://www.ietf.org/rfc/rfc2445.txt Section 4.1}
|
226 |
+
$value .= substr( $this->ical_array[$this->line-1], 1 );
|
227 |
+
$this->line++;
|
228 |
}
|
229 |
|
230 |
$this->parse_event_property( $property, $value, $modifiers );
|
231 |
|
232 |
}catch( Exception $e ){
|
233 |
+
$this->report_error( $this->line, 'event-property-error', $e->getMessage() );
|
234 |
$state = "VCALENDAR";//Abort parsing event
|
235 |
}
|
236 |
}
|
247 |
$state = "NONE";
|
248 |
|
249 |
}elseif($property=='X-WR-TIMEZONE'){
|
250 |
+
$this->calendar_timezone = $this->parse_timezone($value);
|
|
|
|
|
|
|
|
|
|
|
251 |
}
|
252 |
|
253 |
//Other
|
270 |
|
271 |
$this->errors[] = new WP_Error(
|
272 |
$type,
|
273 |
+
sprintf( __( '[Line %1$d]', 'eventorganiser' ), $line ).' '.$message,
|
274 |
+
array( 'line' => $line )
|
275 |
+
);
|
276 |
+
}
|
277 |
+
|
278 |
+
/**
|
279 |
+
* Report an warnings with an iCal file
|
280 |
+
* @ignore
|
281 |
+
* @param int $line The line on which the error occurs.
|
282 |
+
* @param string $type The type of error
|
283 |
+
* @param string $message Verbose error message
|
284 |
+
*/
|
285 |
+
protected function report_warning( $line, $type, $message ){
|
286 |
+
|
287 |
+
$this->warnings[] = new WP_Error(
|
288 |
+
$type,
|
289 |
+
sprintf( __( '[Line %1$d]', 'eventorganiser' ), $line ).' '.$message,
|
290 |
+
array( 'line' => $line )
|
291 |
);
|
292 |
}
|
293 |
|
300 |
if( !empty( $modifiers ) ):
|
301 |
foreach( $modifiers as $modifier ):
|
302 |
if ( stristr( $modifier, 'TZID' ) ){
|
303 |
+
|
304 |
$date_tz = $this->parse_timezone( substr( $modifier, 5 ) );
|
305 |
|
306 |
}elseif( stristr( $modifier, 'VALUE' ) ){
|
423 |
$this->current_event['post_status'] = isset( $map[$value] ) ? $map[$value] : $this->default_status;
|
424 |
break;
|
425 |
|
426 |
+
case 'GEO':
|
427 |
+
$lat_lng = array_map( 'floatval', explode( ';', $value ) );
|
428 |
+
if( count( $lat_lng ) === 2 ){
|
429 |
+
$keys = array( 'lat', 'lng' );
|
430 |
+
$this->current_event['geo'] = array_combine( $keys, $lat_lng );
|
431 |
+
}
|
432 |
+
break;
|
433 |
+
|
434 |
+
//An url associated with the event
|
435 |
case 'URL':
|
436 |
$this->current_event['url'] = $value;
|
437 |
break;
|
438 |
|
439 |
+
|
440 |
endswitch;
|
441 |
|
442 |
}
|
471 |
* @param string $tzid - the value of the ICAL TZID property
|
472 |
* @return DateTimeZone - the timezone with the given identifier or false if it isn't recognised
|
473 |
*/
|
474 |
+
public function parse_timezone( $tzid ){
|
475 |
+
|
476 |
$tzid = str_replace( '-', '/', $tzid );
|
477 |
+
$tzid = trim( $tzid, '\'"' );
|
478 |
+
|
479 |
+
//Try just using the passed timezone ID
|
480 |
+
try{
|
481 |
+
$tz = new DateTimeZone( $tzid );
|
482 |
+
}catch( exception $e ){
|
483 |
+
$tz = null;
|
484 |
+
}
|
485 |
+
|
486 |
+
//If we have something like (GMT+01.00) Amsterdam / Berlin / Bern / Rome / Stockholm / Vienna lets try the cities
|
487 |
+
if( is_null( $tz ) && preg_match( '/GMT(?P<offset>.+)\)(?P<cities>.+)?/', $tzid, $matches ) ){
|
488 |
+
|
489 |
+
if( $matches['cities'] ){
|
490 |
+
$parts = explode( '/', $matches['cities'] );
|
491 |
+
$tz_cities = array_map( 'trim', $parts );
|
492 |
+
$identifiers = timezone_identifiers_list();
|
493 |
+
|
494 |
+
foreach( $tz_cities as $tz_city ){
|
495 |
+
|
496 |
+
$tz_city = ucfirst( strtolower( $tz_city ) );
|
497 |
+
|
498 |
+
foreach( $identifiers as $identifier ){
|
499 |
+
|
500 |
+
$parts = explode('/', $identifier );
|
501 |
+
$city = array_pop( $parts );
|
502 |
+
|
503 |
+
if( $city != $tz_city )
|
504 |
+
continue;
|
505 |
+
|
506 |
+
try{
|
507 |
+
$tz = new DateTimeZone( $identifier );
|
508 |
+
break 2;
|
509 |
+
}catch( exception $e ){
|
510 |
+
$tz = null;
|
511 |
+
}
|
512 |
+
}
|
513 |
+
}
|
514 |
+
}
|
515 |
+
|
516 |
+
if( $tz == null && $matches['offset'] ){
|
517 |
+
|
518 |
+
$offset = (int) str_replace( '/', '-', trim( $matches['offset'] ) );
|
519 |
+
|
520 |
+
if( $offset == 0 ){
|
521 |
+
$tz = new DateTimeZone( 'UTC' );
|
522 |
+
}else{
|
523 |
+
$offset *= 3600; // convert hour offset to seconds
|
524 |
+
$allowed_zones = timezone_abbreviations_list();
|
525 |
+
|
526 |
+
foreach ( $allowed_zones as $abbr ):
|
527 |
+
foreach ( $abbr as $city ):
|
528 |
+
if ( $city['offset'] == $offset ){
|
529 |
+
try{
|
530 |
+
$tz = new DateTimeZone( $city['timezone_id'] );
|
531 |
+
break 2;
|
532 |
+
}catch( exception $e ){
|
533 |
+
$tz = null;
|
534 |
+
}
|
535 |
+
}
|
536 |
+
endforeach;
|
537 |
+
endforeach;
|
538 |
+
}
|
539 |
+
}
|
540 |
+
}
|
541 |
+
|
542 |
+
//If we have something like /mozilla.org/20070129_1/Europe/Berlin
|
543 |
+
if( is_null( $tz ) && preg_match( '#(/?)mozilla.org/([\d_]+)/(?P<tzid>.+)#', $tzid, $matches ) ){
|
544 |
+
try{
|
545 |
+
$tz = new DateTimeZone( $matches['tzid'] );
|
546 |
+
}catch( exception $e ){
|
547 |
+
$tz = null;
|
548 |
+
}
|
549 |
+
}
|
550 |
+
|
551 |
+
//Let plugins over-ride this
|
552 |
+
$tz = apply_filters( 'eventorganiser_ical_timezone', $tz, $tzid );
|
553 |
+
|
554 |
+
if ( ! ($tz instanceof DateTimeZone ) ) {
|
555 |
+
$tz = eo_get_blog_timezone();
|
556 |
+
}
|
557 |
+
|
558 |
+
if( $tz->getName() != $tzid ){
|
559 |
+
$this->report_warning(
|
560 |
+
$this->line,
|
561 |
+
'timezone-parser-warning',
|
562 |
+
sprintf( 'Unknown timezone "%s" interpreted as "%s".', $tzid, $tz->getName() )
|
563 |
+
);
|
564 |
+
}
|
565 |
+
|
566 |
return $tz;
|
567 |
}
|
568 |
|
569 |
+
|
570 |
+
|
571 |
/**
|
572 |
* Takes a date in ICAL and returns a datetime object
|
573 |
*
|
581 |
preg_match('/^(\d{8})*/', $ical_date, $matches);
|
582 |
|
583 |
if( count( $matches ) !=2 ){
|
584 |
+
throw new Exception(
|
585 |
+
sprintf(
|
586 |
+
__( 'Invalid date "%s". Date expected in YYYYMMDD format.', 'eventorganiser' ),
|
587 |
+
$ical_date
|
588 |
+
));
|
589 |
}
|
590 |
|
591 |
+
//No time is given, so ignore timezone. (So use blog timezone).
|
592 |
+
$datetime = new DateTime( $matches[1], eo_get_blog_timezone() );
|
593 |
|
594 |
return $datetime;
|
595 |
}
|
619 |
$tz = new DateTimeZone('UTC');
|
620 |
|
621 |
}else{
|
622 |
+
throw new Exception(
|
623 |
+
sprintf(
|
624 |
+
__( 'Invalid datetime "%s". Date expected in YYYYMMDDTHHiissZ or YYYYMMDDTHHiiss format.', 'eventorganiser' ),
|
625 |
+
$ical_date
|
626 |
+
));
|
627 |
return false;
|
628 |
}
|
629 |
|
651 |
$property = $prop_value[0];
|
652 |
$value = $prop_value[1];
|
653 |
|
654 |
+
switch( $property ):
|
655 |
+
case 'FREQ':
|
656 |
+
$rule_array['schedule'] =strtolower($value);
|
657 |
+
break;
|
658 |
|
659 |
+
case 'INTERVAL':
|
660 |
+
$rule_array['frequency'] =intval($value);
|
661 |
break;
|
662 |
|
663 |
+
case 'UNTIL':
|
664 |
+
//Is the scheduled end a date-time or just a date?
|
665 |
+
if(preg_match('/^((\d{8}T\d{6})(Z)?)/', $value))
|
666 |
+
$date = $this->parse_ical_datetime( $value, new DateTimeZone('UTC') );
|
667 |
+
else
|
668 |
+
$date = $this->parse_ical_date( $value );
|
669 |
+
|
670 |
+
$rule_array['schedule_last'] = $date;
|
671 |
+
break;
|
672 |
|
673 |
+
case 'COUNT':
|
674 |
+
$rule_array['number_occurrences'] = absint( $value );
|
675 |
break;
|
676 |
|
677 |
+
case 'BYDAY':
|
678 |
+
$byday = $value;
|
679 |
break;
|
680 |
|
681 |
+
case 'BYMONTHDAY':
|
682 |
+
$bymonthday = $value;
|
683 |
+
break;
|
684 |
+
|
685 |
+
//Not supported with warning
|
686 |
+
case 'BYSECOND':
|
687 |
+
case 'BYMINUTE':
|
688 |
+
case 'BYHOUR':
|
689 |
+
case 'BYYEARDAY':
|
690 |
+
case 'BYWEEKNO':
|
691 |
+
case 'BYSETPOS':
|
692 |
+
$this->report_warning(
|
693 |
+
$this->line,
|
694 |
+
'unsupported-recurrence-rule',
|
695 |
+
sprintf(
|
696 |
+
'Feed contains unrecognised recurrence rule: "%s" and may have not been imported correctly.',
|
697 |
+
$property
|
698 |
+
)
|
699 |
+
);
|
700 |
+
break;
|
701 |
+
|
702 |
+
//Not supported without warning
|
703 |
+
case 'WKST':
|
704 |
break;
|
705 |
endswitch;
|
706 |
|
707 |
+
endforeach;
|
708 |
|
709 |
+
//Meta-data for Weekly and Monthly schedules
|
710 |
+
if( $rule_array['schedule']=='monthly' ):
|
711 |
+
|
712 |
+
if( isset( $byday ) ){
|
713 |
+
preg_match_all('/(-?\d+)([a-zA-Z]+)/', $byday, $matches);
|
714 |
+
|
715 |
+
if ( count( $matches[0] ) > 1 ){
|
716 |
+
$this->report_warning(
|
717 |
+
$this->line,
|
718 |
+
'unsupported-recurrence-rule',
|
719 |
+
sprintf(
|
720 |
+
'Feed contains unsupported value for "%s" and may have not been imported correctly.',
|
721 |
+
$property
|
722 |
+
)
|
723 |
+
);
|
724 |
+
}
|
725 |
+
|
726 |
+
$rule_array['schedule_meta'] ='BYDAY='.$matches[0][0];
|
727 |
|
728 |
+
}elseif( isset( $bymonthday ) ){
|
729 |
+
|
730 |
+
$days = explode( ',', $bymonthday );
|
731 |
+
|
732 |
+
if ( count( $days ) > 1 ){
|
733 |
+
$this->report_warning(
|
734 |
+
$this->line,
|
735 |
+
'unsupported-recurrence-rule',
|
736 |
+
sprintf(
|
737 |
+
'Feed contains unsupported value for "%s" and may have not been imported correctly.',
|
738 |
+
$property
|
739 |
+
)
|
740 |
+
);
|
741 |
+
}
|
742 |
+
|
743 |
+
$rule_array['schedule_meta'] ='BYMONTHDAY='.$days[0];
|
744 |
|
745 |
}else{
|
746 |
throw new Exception('Incomplete scheduling information');
|
747 |
}
|
748 |
|
749 |
+
elseif( $rule_array['schedule'] == 'weekly' ):
|
750 |
+
preg_match( '/([a-zA-Z,]+)/', $byday, $matches );
|
751 |
+
$rule_array['schedule_meta'] = explode(',',$matches[1]);
|
752 |
|
753 |
+
endif;
|
754 |
|
755 |
+
//If importing indefinately recurring, recurr up to some large point in time.
|
756 |
+
//TODO make a log of this somewhere.
|
757 |
+
if( empty( $rule_array['schedule_last'] ) && empty( $rule_array['number_occurrences'] ) ){
|
758 |
+
$rule_array['schedule_last'] = new DateTime( '2038-01-19 00:00:00' );
|
759 |
+
|
760 |
+
$this->report_warning(
|
761 |
+
$this->line,
|
762 |
+
'indefinitely-recurring-event',
|
763 |
+
"Feed contained an indefinitely recurring event. This event will recurr until 2038-01-19."
|
764 |
+
);
|
765 |
+
}
|
766 |
+
|
767 |
+
return $rule_array;
|
768 |
}
|
769 |
|
770 |
+
}
|
771 |
+
|
772 |
+
/*
|
773 |
+
* * Known issue (1): recurrence is sometimes not translated properly across timezones.
|
774 |
+
* - ICAL has event recurring every month on the 2nd at 02:00 (2am) UTC time.
|
775 |
+
* - Importing blog has New York Time Zone (UTC -4/5).
|
776 |
+
* - Then event recurs every month on the **1st** at 22:00 (10pm) New York Time
|
777 |
+
* - The **2nd** is not corrected to **1st**.
|
778 |
+
*
|
779 |
+
* * Known issue (2): cannot import events with a recurrence schedule EO doesn't understand.
|
780 |
+
*/
|
includes/class-event-organiser-im-export.php
CHANGED
@@ -1,4 +1,6 @@
|
|
1 |
<?php
|
|
|
|
|
2 |
/**
|
3 |
* Event importer / exporter
|
4 |
*/
|
@@ -10,15 +12,6 @@ if ( ! function_exists( 'add_action' ) ) {
|
|
10 |
|
11 |
/**
|
12 |
* Event Organiser Import/Export handler
|
13 |
-
*
|
14 |
-
* This needs refactoring and should use the EO_ICAL_Parser();
|
15 |
-
*
|
16 |
-
* Known issue: recurrence is sometimes not translated properly across timezones.
|
17 |
-
* - ICAL has event recurring every month on the 2nd at 02:00 (2am) UTC time.
|
18 |
-
* - Importing blog has New York Time Zone (UTC -4/5).
|
19 |
-
* - Then event recurres every month on the **1st** at 22:00 (10pm) New York Time
|
20 |
-
* - The **2nd** is not corrected to **1st**.
|
21 |
-
*
|
22 |
*/
|
23 |
class Event_Organiser_Im_Export {
|
24 |
|
@@ -39,7 +32,7 @@ class Event_Organiser_Im_Export {
|
|
39 |
public function __construct() {
|
40 |
global $pagenow, $EO_Errors;
|
41 |
|
42 |
-
if(!isset($EO_Errors)) $EO_Errors = new WP_Error();
|
43 |
|
44 |
if( is_feed('eo-events') && eventorganiser_get_option('feed') ){
|
45 |
$this->get_export_file();
|
@@ -89,9 +82,9 @@ class Event_Organiser_Im_Export {
|
|
89 |
|
90 |
|
91 |
/**
|
92 |
-
*
|
93 |
*
|
94 |
-
* @since
|
95 |
*/
|
96 |
public function get_im_export_markup() {
|
97 |
?>
|
@@ -119,23 +112,21 @@ class Event_Organiser_Im_Export {
|
|
119 |
<?php
|
120 |
}
|
121 |
|
122 |
-
/**
|
123 |
-
* Gets an ICAL file of events in the database, to be downloaded
|
124 |
-
|
125 |
-
|
126 |
-
*/
|
127 |
public function get_export_file() {
|
128 |
$filename = urlencode( 'event-organiser_' . date('Y-m-d') . '.ics' );
|
129 |
$this->export_events( $filename, 'text/calendar' );
|
130 |
}
|
131 |
|
132 |
-
/**
|
133 |
-
* Creates an ICAL file of events in the database
|
134 |
-
|
135 |
-
|
136 |
-
*
|
137 |
-
|
138 |
-
*/
|
139 |
public function export_events( $filename, $filetype ){
|
140 |
//Collect output
|
141 |
ob_start();
|
@@ -157,543 +148,143 @@ class Event_Organiser_Im_Export {
|
|
157 |
}
|
158 |
|
159 |
|
160 |
-
/**
|
161 |
-
* Reads in an ICAL file into an array, then parses the array and inserts events into database
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
*/
|
167 |
-
function import_file($cal_file){
|
168 |
global $EO_Errors;
|
169 |
|
170 |
-
if ( !
|
171 |
wp_die( __('You do not have sufficient permissions to import events.','eventorganiser') );
|
172 |
|
|
|
|
|
173 |
|
174 |
-
|
175 |
-
$
|
176 |
-
|
177 |
-
|
178 |
-
$
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
if(!$file_handle)
|
194 |
-
return false;
|
195 |
-
|
196 |
-
//Feed lines into array
|
197 |
-
while (!feof($file_handle) ):
|
198 |
-
$line_of_text = fgets($file_handle, 4096);
|
199 |
-
$lines[]= $line_of_text;
|
200 |
-
endwhile;
|
201 |
-
|
202 |
-
fclose($file_handle);
|
203 |
-
|
204 |
-
return $lines;
|
205 |
-
}
|
206 |
-
|
207 |
-
/**
|
208 |
-
* Parses through an array of lines (of an ICAL file), creates events and inserts them as they are found.
|
209 |
-
|
210 |
-
* @since 1.1.0
|
211 |
-
*
|
212 |
-
* @param array - $lines, array of lines of an ICAL file
|
213 |
-
*/
|
214 |
-
function import_events($lines){
|
215 |
-
global $EO_Errors;
|
216 |
-
$state = "NONE";
|
217 |
-
$error = false;
|
218 |
-
|
219 |
-
$error_count =0;
|
220 |
-
$event_count =0;
|
221 |
-
|
222 |
-
$event_array = array();
|
223 |
-
$event_array['event'] = array();
|
224 |
-
$event_array['event_post'] = array();
|
225 |
-
$event_array['event_meta'] = array();
|
226 |
-
|
227 |
-
//Get Blog timezone, set Calendar timezone to this by default
|
228 |
-
$blog_tz = eo_get_blog_timezone();
|
229 |
-
$cal_tz =$blog_tz;
|
230 |
-
$output="";
|
231 |
-
|
232 |
-
//Record number of venues / categories created
|
233 |
-
global $eventorganiser_venues_created,$eventorganiser_cats_created;
|
234 |
-
$eventorganiser_venues_created = 0;
|
235 |
-
$eventorganiser_cats_created = 0;
|
236 |
-
|
237 |
-
//Read through each line
|
238 |
-
for ( $n = 0; $n < count ( $lines ) && ! $error; $n++ ):
|
239 |
-
$buff = trim($lines[$n]);
|
240 |
-
|
241 |
-
if(!empty($buff)):
|
242 |
-
$line = explode(':',$buff,2);
|
243 |
-
|
244 |
-
//On the right side of the line we may have DTSTART;TZID= or DTSTART;VALUE=
|
245 |
-
$modifiers = explode (';', $line[0]);
|
246 |
-
$property =array_shift($modifiers);
|
247 |
-
$value = (isset($line[1]) ? trim($line[1]) : '');
|
248 |
-
|
249 |
-
//If we are in EVENT state
|
250 |
-
if ($state == "VEVENT") {
|
251 |
-
|
252 |
-
//If END:VEVENT, insert event into database
|
253 |
-
if($property=='END' && $value=='VEVENT'){
|
254 |
-
$state = "VCALENDAR";
|
255 |
-
|
256 |
-
//Insert new post from objects
|
257 |
-
$post_id = eo_insert_event($event_array['event_post'],$event_array['event']);
|
258 |
-
|
259 |
-
if(!$post_id || is_wp_error($post_id) ){
|
260 |
-
$error_count++;
|
261 |
-
}
|
262 |
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
while( isset( $lines[$n+1] ) && $lines[$n+1][0] == ' ' ){
|
267 |
-
//Remove initial white space {@link http://www.ietf.org/rfc/rfc2445.txt Section 4.1}
|
268 |
-
$value .= substr( $lines[$n+1], 1 );
|
269 |
-
$n++;
|
270 |
-
}
|
271 |
-
$event_array = $this->parse_Event_Property($event_array,$property,$value,$modifiers,$blog_tz,$cal_tz);
|
272 |
-
|
273 |
-
}catch(Exception $e){
|
274 |
-
$error_count++;
|
275 |
-
$preamble= sprintf( __('Line: %1$d','eventorganiser'),$n+1);
|
276 |
-
$EO_Errors->add('eo_error', $preamble.' '.$e->getMessage());
|
277 |
-
|
278 |
-
//Abort parsing event
|
279 |
-
$state = "VCALENDAR";
|
280 |
-
}
|
281 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
282 |
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
$state = "VEVENT";
|
289 |
-
$event_count++;
|
290 |
-
$event_array['event'] = array();
|
291 |
-
$event_array['event_post'] = array();
|
292 |
-
$event_array['event_meta'] = array();
|
293 |
-
|
294 |
-
}elseif ( $property=='END' && $value=='VCALENDAR'){
|
295 |
-
$state = "NONE";
|
296 |
-
|
297 |
-
}elseif($property=='X-WR-TIMEZONE'){
|
298 |
-
try{
|
299 |
-
$cal_tz = self::parse_TZID($value);
|
300 |
-
}catch(Exception $e){
|
301 |
-
$preamble= sprintf( __('Line: %1$d','eventorganiser'),$n+1);
|
302 |
-
$EO_Errors->add('eo_error', $preamble.' '.$e->getMessage());
|
303 |
-
break;
|
304 |
-
}
|
305 |
}
|
306 |
-
|
307 |
-
}elseif($state == "NONE" && $property=='BEGIN' && $value=='VCALENDAR') {
|
308 |
-
$state = "VCALENDAR";
|
309 |
}
|
310 |
-
|
311 |
-
endif; //If line is not empty
|
312 |
-
endfor; //For each line
|
313 |
-
|
314 |
-
//Display message
|
315 |
-
if($event_count ==0):
|
316 |
-
$EO_Errors->add('eo_error', __("No events were imported.",'eventorganiser'));
|
317 |
-
elseif($error_count >0):
|
318 |
-
$EO_Errors->add('eo_error',sprintf( __('There was an error with %1$d of %2$d events in the ical file'),$error_count, $event_count));
|
319 |
-
else:
|
320 |
-
|
321 |
-
if($event_count==1)
|
322 |
-
$message=__("1 event was successfully imported",'eventorganiser').".";
|
323 |
-
else
|
324 |
-
$message= sprintf( __("%d events were successfully imported",'eventorganiser'),$event_count).".";
|
325 |
-
|
326 |
-
if($eventorganiser_venues_created==1){
|
327 |
-
$message.= " ".__("1 venue was created",'eventorganiser').".";
|
328 |
-
}elseif($eventorganiser_venues_created>1){
|
329 |
-
$message .= " ".sprintf( __("%d venues were created",'eventorganiser'),$eventorganiser_venues_created).".";
|
330 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
331 |
|
332 |
-
if
|
333 |
-
|
334 |
-
|
335 |
-
|
|
|
|
|
|
|
|
|
336 |
}
|
|
|
|
|
337 |
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
/**
|
344 |
-
* Returns the supplied array with the additional data parsed from the given property-value pair
|
345 |
-
* May require the blog and/or calendar time-zone in date manipulations
|
346 |
-
* May also require modifiers in date manipulations (e.g. TZID, VALUE)
|
347 |
-
*
|
348 |
-
* @since 1.1.0
|
349 |
-
*
|
350 |
-
* @param array $event_array - array of event details to be added to
|
351 |
-
* @param string $property - the property being parsed
|
352 |
-
* @param string $value - the value of the property being parsed
|
353 |
-
* @param string $modifiers - array of modifiers associated with the property
|
354 |
-
* @param DateTimeZone $blog_tz - blog's timezone
|
355 |
-
* @param DateTimeZone $cal_tzid - calendar's default timezone
|
356 |
-
* @return DateTimeZone - the timezone with the given identifier or false if it isn't recognised
|
357 |
-
*/
|
358 |
-
function parse_Event_Property($event_array,$property,$value,$modifiers,$blog_tz,$cal_tz){
|
359 |
-
extract($event_array);
|
360 |
-
|
361 |
-
$import_venues = (isset($_POST['eo_import_venue']) ? true : false);
|
362 |
-
$import_cats = (isset($_POST['eo_import_cat']) ? true : false);
|
363 |
-
|
364 |
-
$date_tz="";
|
365 |
-
|
366 |
-
if(!empty($modifiers)):
|
367 |
-
foreach($modifiers as $modifier):
|
368 |
-
if (stristr($modifier, 'TZID')){
|
369 |
-
$date_tz = self::parse_TZID(substr($modifier, 5));
|
370 |
-
|
371 |
-
}elseif(stristr($modifier, 'VALUE')){
|
372 |
-
$meta = substr($modifier, 6);
|
373 |
}
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
//Date properties
|
383 |
-
case 'UID':
|
384 |
-
$event_meta['_eventorganiser_uid'] = $value;
|
385 |
-
break;
|
386 |
-
case 'CREATED':
|
387 |
-
case 'DTSTART':
|
388 |
-
case 'DTEND':
|
389 |
-
if(isset($meta) && $meta=='DATE'):
|
390 |
-
$date = $this->parse_icalDate($value, $blog_tz);
|
391 |
-
$allday=1;
|
392 |
-
else:
|
393 |
-
$date = $this->parse_icalDateTime($value, $date_tz);
|
394 |
-
$allday=0;
|
395 |
-
endif;
|
396 |
-
|
397 |
-
if(empty($date))
|
398 |
-
break;
|
399 |
-
|
400 |
-
switch($property):
|
401 |
-
case'DTSTART':
|
402 |
-
$event['start']= $date;
|
403 |
-
$event['all_day']=$allday;
|
404 |
-
break;
|
405 |
|
406 |
-
|
407 |
-
if($allday==1)
|
408 |
-
$date->modify('-1 second');
|
409 |
-
$event['end']= $date;
|
410 |
-
break;
|
411 |
-
|
412 |
-
case 'CREATED':
|
413 |
-
$date->setTimezone(new DateTimeZone('utc'));
|
414 |
-
$event_post['post_date_gmt']= $date->format('Y-m-d H:i:s');
|
415 |
-
break;
|
416 |
-
|
417 |
-
endswitch;
|
418 |
-
break;
|
419 |
-
|
420 |
-
case 'EXDATE':
|
421 |
-
case 'RDATE':
|
422 |
-
//The modifiers have been dealt with above. We do similiar to above, except for an array of dates...
|
423 |
-
$value_array = explode(',',$value);
|
424 |
-
|
425 |
-
//Note, we only consider the Date part and ignore the time
|
426 |
-
foreach($value_array as $val):
|
427 |
-
$date = $this->parse_icalDate($val, $blog_tz);
|
428 |
-
if( $property == 'EXDATE' ){
|
429 |
-
$event['exclude'][] = $date;
|
430 |
-
}else{
|
431 |
-
$event['include'][] = $date;
|
432 |
-
}
|
433 |
-
endforeach;
|
434 |
|
435 |
-
|
436 |
-
|
437 |
-
//Reoccurrence rule properties
|
438 |
-
case 'RRULE':
|
439 |
-
$event += $this->parse_RRule($value);
|
440 |
-
break;
|
441 |
-
|
442 |
-
//The event's summary (AKA post title)
|
443 |
-
case 'SUMMARY':
|
444 |
-
$event_post['post_title']=$this->parse_icalText($value);
|
445 |
-
break;
|
446 |
-
|
447 |
-
//The event's description (AKA post content)
|
448 |
-
case 'DESCRIPTION':
|
449 |
-
$event_post['post_content']=$this->parse_icalText($value);
|
450 |
-
break;
|
451 |
-
|
452 |
-
//Event venues, assign to existing venue - or if set, create new one
|
453 |
-
case 'LOCATION':
|
454 |
-
$venue_ids = array();
|
455 |
-
if( !empty($value) ):
|
456 |
-
$venue_name = trim($value);
|
457 |
-
$venue = get_term_by('name',$venue_name,'event-venue');
|
458 |
-
if($venue){
|
459 |
-
$venue_ids[] = (int) $venue->term_id;
|
460 |
-
|
461 |
-
}elseif($import_venues){
|
462 |
-
//Create new venue, get ID. Count of venues created++
|
463 |
-
global $eventorganiser_venues_created;
|
464 |
-
$return = eo_insert_venue($venue_name);
|
465 |
-
|
466 |
-
if( !is_wp_error($return) && !$return ){
|
467 |
-
$venue_ids[] = (int) $return['term_id'];
|
468 |
-
$eventorganiser_venues_created++;
|
469 |
-
$event['venue']= $return['term_id']; //XXX This is depreciated
|
470 |
-
}
|
471 |
-
}
|
472 |
-
$venue_ids = array_filter($venue_ids);
|
473 |
-
if(!empty($venue_ids)){
|
474 |
-
$event_post['tax_input']['event-venue']=$venue_ids;
|
475 |
-
}
|
476 |
-
endif;
|
477 |
-
break;
|
478 |
-
|
479 |
-
//Event categories, assign to existing categories - or if set, create new ones
|
480 |
-
case 'CATEGORIES':
|
481 |
-
$cats=explode(',',$value);
|
482 |
-
$cat_ids = array();
|
483 |
-
if(!empty($cats)):
|
484 |
-
foreach ($cats as $cat_name):
|
485 |
-
$cat_name = trim($cat_name);
|
486 |
-
$cat = get_term_by('name',$cat_name,'event-category');
|
487 |
-
if($cat){
|
488 |
-
$cat_ids[] = (int) $cat->term_id;
|
489 |
-
}elseif($import_cats){
|
490 |
-
//Create new category, get ID. Count of cats created++
|
491 |
-
global $eventorganiser_cats_created;
|
492 |
-
$return = wp_insert_term($cat_name,'event-category',array());
|
493 |
-
if(!is_wp_error($return)){
|
494 |
-
$cat_ids[] = (int) $return['term_id'];
|
495 |
-
$eventorganiser_cats_created++;
|
496 |
-
}
|
497 |
-
}
|
498 |
-
endforeach;
|
499 |
-
|
500 |
-
$cat_ids = array_filter($cat_ids);
|
501 |
-
if(!empty($cat_ids))
|
502 |
-
$event_post['tax_input']['event-category']=$cat_ids;
|
503 |
-
endif;
|
504 |
-
break;
|
505 |
-
|
506 |
-
//The event's status
|
507 |
-
case 'STATUS':
|
508 |
-
switch($value):
|
509 |
-
case 'CONFIRMED':
|
510 |
-
$event_post['post_status'] = 'publish';
|
511 |
-
break;
|
512 |
-
|
513 |
-
case 'CANCELLED':
|
514 |
-
$event_post['post_status'] = 'trash';
|
515 |
-
break;
|
516 |
-
|
517 |
-
default:
|
518 |
-
$event_post['post_status'] = 'draft';
|
519 |
-
endswitch;
|
520 |
-
break;
|
521 |
|
522 |
-
//An url associated with the event
|
523 |
-
case 'URL':
|
524 |
-
$event_meta['eo_url']=$value;
|
525 |
-
break;
|
526 |
-
|
527 |
-
endswitch;
|
528 |
-
|
529 |
-
$event_array= array('event'=>$event,'event_post'=>$event_post,'event_meta'=>$event_meta);
|
530 |
-
|
531 |
-
return $event_array;
|
532 |
-
}
|
533 |
-
|
534 |
-
/**
|
535 |
-
* Takes escaped text and returns the text unescaped.
|
536 |
-
|
537 |
-
* @since 1.1.0
|
538 |
-
*
|
539 |
-
* @param string $text - the escaped test
|
540 |
-
* @return string $text - the text, unescaped.
|
541 |
-
*/
|
542 |
-
function parse_icalText($text){
|
543 |
-
//Get rid of carriage returns:
|
544 |
-
$text = str_replace("\r\n","\n",$text);
|
545 |
-
$text = str_replace("\r","\n",$text);
|
546 |
|
547 |
-
|
548 |
-
|
549 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
550 |
|
551 |
-
|
552 |
-
|
553 |
-
$
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
/**
|
559 |
-
* Takes a date-time in ICAL and returns a datetime object
|
560 |
-
|
561 |
-
* @since 1.1.0
|
562 |
-
*
|
563 |
-
* @param string $tzid - the value of the ICAL TZID property
|
564 |
-
* @return DateTimeZone - the timezone with the given identifier or false if it isn't recognised
|
565 |
-
*/
|
566 |
-
function parse_TZID($tzid){
|
567 |
-
$tzid = str_replace('-','/',$tzid);
|
568 |
-
$tz = new DateTimeZone($tzid);
|
569 |
-
return $tz;
|
570 |
-
}
|
571 |
-
|
572 |
-
/**
|
573 |
-
* Takes a date in ICAL and returns a datetime object
|
574 |
-
|
575 |
-
* @since 1.1.0
|
576 |
-
*
|
577 |
-
* @param string $ical_date - date in ICAL format
|
578 |
-
* @param DateTimeZone $blog_tz - Blog timezone object
|
579 |
-
* @return DateTime - the $ical_date as DateTime object
|
580 |
-
*/
|
581 |
-
function parse_icalDate($ical_date, $blog_tz){
|
582 |
-
//Expects: YYYYMMDD;
|
583 |
-
preg_match('/^(\d{8})*/', $ical_date, $matches);
|
584 |
-
|
585 |
-
if(count($matches)!=2){
|
586 |
-
throw new Exception(__('Invalid date. Date expected in YYYYMMDD format.','eventorganiser'));
|
587 |
}
|
588 |
-
|
589 |
-
$datetime = new DateTime($matches[1],$blog_tz);
|
590 |
-
|
591 |
-
return $datetime;
|
592 |
-
}
|
593 |
-
|
594 |
-
/**
|
595 |
-
* Takes a date-time in ICAL and returns a datetime object
|
596 |
-
|
597 |
-
* @since 1.1.0
|
598 |
-
*
|
599 |
-
* @param string $ical_date - date-time in ICAL format
|
600 |
-
* @param DateTimeZone $blog_tz - Blog timezone object
|
601 |
-
* @return DateTime - the $ical_date as DateTime object
|
602 |
-
*/
|
603 |
-
function parse_icalDateTime($ical_date,$tz){
|
604 |
-
/*
|
605 |
-
Expects
|
606 |
-
utc: YYYYMMDDTHHiissZ
|
607 |
-
local: YYYYMMDDTHHiiss
|
608 |
-
*/
|
609 |
-
preg_match('/^((\d{8}T\d{6})(Z)?)/', $ical_date, $matches);
|
610 |
|
611 |
-
if(count($
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
$
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
|
|
|
|
620 |
}
|
621 |
-
|
622 |
-
$
|
623 |
-
|
624 |
-
|
625 |
-
|
626 |
-
|
627 |
-
|
628 |
-
|
629 |
-
|
630 |
-
* @since 1.1.0
|
631 |
-
*
|
632 |
-
* @param string $RRule - the value of the ICAL RRule property
|
633 |
-
* @return array - a reoccurrence rule array as understood by Event Organiser
|
634 |
-
*/
|
635 |
-
function parse_RRule($RRule){
|
636 |
-
//RRule is a sequence of rule parts seperated by ';'
|
637 |
-
$rule_parts = explode(';',$RRule);
|
638 |
-
|
639 |
-
foreach ($rule_parts as $rule_part):
|
640 |
-
|
641 |
-
//Each rule part is of the form PROPERTY=VALUE
|
642 |
-
$prop_value = explode('=',$rule_part, 2);
|
643 |
-
$property = $prop_value[0];
|
644 |
-
$value = $prop_value[1];
|
645 |
-
|
646 |
-
switch($property):
|
647 |
-
case 'FREQ':
|
648 |
-
$rule_array['schedule'] =strtolower($value);
|
649 |
-
break;
|
650 |
-
|
651 |
-
case 'INTERVAL':
|
652 |
-
$rule_array['frequency'] =intval($value);
|
653 |
-
break;
|
654 |
-
|
655 |
-
case 'UNTIL':
|
656 |
-
//Is the scheduled end a date-time or just a date?
|
657 |
-
if(preg_match('/^((\d{8}T\d{6})(Z)?)/', $value))
|
658 |
-
$date = $this->parse_icalDateTime($value, new DateTimeZone('UTC'));
|
659 |
-
else
|
660 |
-
$date = $this->parse_icalDate($value, new DateTimeZone('UTC'));
|
661 |
-
|
662 |
-
$rule_array['schedule_last'] = $date;
|
663 |
-
break;
|
664 |
-
|
665 |
-
case 'BYDAY':
|
666 |
-
$byday = $value;
|
667 |
-
break;
|
668 |
-
|
669 |
-
case 'BYMONTHDAY':
|
670 |
-
$bymonthday = $value;
|
671 |
-
break;
|
672 |
-
endswitch;
|
673 |
|
674 |
-
endforeach;
|
675 |
|
676 |
-
//Meta-data for Weekly and Monthly schedules
|
677 |
-
if($rule_array['schedule']=='monthly'):
|
678 |
-
if(isset($byday)){
|
679 |
-
preg_match('/(\d+)([a-zA-Z]+)/', $byday, $matches);
|
680 |
-
$rule_array['schedule_meta'] ='BYDAY='.$matches[1].$matches[2];
|
681 |
-
|
682 |
-
}elseif(isset($bymonthday)){
|
683 |
-
$rule_array['schedule_meta'] ='BYMONTHDAY='.$bymonthday;
|
684 |
-
|
685 |
-
}else{
|
686 |
-
throw new Exception('Incomplete scheduling information');
|
687 |
-
}
|
688 |
-
|
689 |
-
elseif($rule_array['schedule']=='weekly'):
|
690 |
-
preg_match('/([a-zA-Z,]+)/', $byday, $matches);
|
691 |
-
$rule_array['schedule_meta'] =explode(',',$matches[1]);
|
692 |
-
|
693 |
-
endif;
|
694 |
-
|
695 |
-
return $rule_array;
|
696 |
}
|
697 |
|
698 |
-
|
699 |
-
} // end class
|
1 |
<?php
|
2 |
+
//TODO import events (check for duplicates: UID)
|
3 |
+
//TODO check importing venues.
|
4 |
/**
|
5 |
* Event importer / exporter
|
6 |
*/
|
12 |
|
13 |
/**
|
14 |
* Event Organiser Import/Export handler
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
*/
|
16 |
class Event_Organiser_Im_Export {
|
17 |
|
32 |
public function __construct() {
|
33 |
global $pagenow, $EO_Errors;
|
34 |
|
35 |
+
if( !isset( $EO_Errors ) ) $EO_Errors = new WP_Error();
|
36 |
|
37 |
if( is_feed('eo-events') && eventorganiser_get_option('feed') ){
|
38 |
$this->get_export_file();
|
82 |
|
83 |
|
84 |
/**
|
85 |
+
* Get markup for ex- and import on settings page
|
86 |
*
|
87 |
+
* @since 1.0.0
|
88 |
*/
|
89 |
public function get_im_export_markup() {
|
90 |
?>
|
112 |
<?php
|
113 |
}
|
114 |
|
115 |
+
/**
|
116 |
+
* Gets an ICAL file of events in the database, to be downloaded
|
117 |
+
* @since 1.0.0
|
118 |
+
*/
|
|
|
119 |
public function get_export_file() {
|
120 |
$filename = urlencode( 'event-organiser_' . date('Y-m-d') . '.ics' );
|
121 |
$this->export_events( $filename, 'text/calendar' );
|
122 |
}
|
123 |
|
124 |
+
/**
|
125 |
+
* Creates an ICAL file of events in the database
|
126 |
+
* @since 1.0.0
|
127 |
+
* @param string filename - the name of the file to be created
|
128 |
+
* @param string filetype - the type of the file ('text/calendar')
|
129 |
+
*/
|
|
|
130 |
public function export_events( $filename, $filetype ){
|
131 |
//Collect output
|
132 |
ob_start();
|
148 |
}
|
149 |
|
150 |
|
151 |
+
/**
|
152 |
+
* Reads in an ICAL file into an array, then parses the array and inserts events into database
|
153 |
+
* @since 1.1.0
|
154 |
+
* @param string $cal_file - the file to import
|
155 |
+
*/
|
156 |
+
function import_file( $ical_file ){
|
|
|
|
|
157 |
global $EO_Errors;
|
158 |
|
159 |
+
if ( !current_user_can( 'manage_options' ) || !current_user_can( 'edit_events' ) )
|
160 |
wp_die( __('You do not have sufficient permissions to import events.','eventorganiser') );
|
161 |
|
162 |
+
$ical = new EO_ICAL_Parser();
|
163 |
+
$ical->parse( $ical_file );
|
164 |
|
165 |
+
$import_venues = ( isset($_POST['eo_import_venue'] ) ? true : false);
|
166 |
+
$import_cats = ( isset($_POST['eo_import_cat'] ) ? true : false);
|
167 |
+
|
168 |
+
$events_imported = 0;
|
169 |
+
$events_updated = 0;
|
170 |
+
$venues_imported = 0;
|
171 |
+
$categories_imported = 0;
|
172 |
+
|
173 |
+
if( $import_venues && $ical->venues ){
|
174 |
+
|
175 |
+
foreach( $ical->venues as $venue ){
|
176 |
+
if( !eo_get_venue_by( 'name', $venue ) ){
|
177 |
+
$args = array();
|
178 |
+
|
179 |
+
//If lat/lng meta data is set, include that
|
180 |
+
if( isset( $ical->venue_meta[$venue]['latitude'] ) && isset( $ical->venue_meta[$venue]['longtitude'] ) ){
|
181 |
+
$args['latitude'] = $ical->venue_meta[$venue]['latitude'];
|
182 |
+
$args['longtitude'] = $ical->venue_meta[$venue]['longtitude'];
|
183 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
184 |
|
185 |
+
$new_venue = eo_insert_venue( $venue, $args );
|
186 |
+
if( !is_wp_error( $new_venue ) && $new_venue ){
|
187 |
+
$venues_imported++;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
188 |
}
|
189 |
+
}
|
190 |
+
}
|
191 |
+
|
192 |
+
}
|
193 |
+
|
194 |
+
if( $import_cats && $ical->categories ){
|
195 |
|
196 |
+
foreach( $ical->categories as $category ){
|
197 |
+
if( !get_term_by( 'name', $category, 'event-category' ) ){
|
198 |
+
$new_cat = wp_insert_term( $category, 'event-category', array() );
|
199 |
+
if( !is_wp_error( $new_cat ) && $new_cat ){
|
200 |
+
$categories_imported++;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
201 |
}
|
|
|
|
|
|
|
202 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
203 |
}
|
204 |
+
|
205 |
+
}
|
206 |
+
|
207 |
+
foreach( $ical->events as $event ){
|
208 |
+
//TODO refactor eo_insert_event & eo_update_event...
|
209 |
+
|
210 |
+
$uid = !empty( $event['uid'] ) ? $event['uid'] : false;
|
211 |
|
212 |
+
//TODO Check if event already exists
|
213 |
+
//$found_event = eo_get_event_by_uid( $uid );
|
214 |
+
|
215 |
+
//Create event
|
216 |
+
if( !empty( $event['event-venue'] ) ){
|
217 |
+
$venue = eo_get_venue_by( 'name', $event['event-venue'] );
|
218 |
+
if( $venue )
|
219 |
+
$event['tax_input']['event-venue'][] = intval( $venue->term_id );
|
220 |
}
|
221 |
+
|
222 |
+
if( !empty( $event['event-category'] ) ){
|
223 |
|
224 |
+
$event['tax_input']['event-category'] = array();
|
225 |
+
foreach( $event['event-category'] as $category ){
|
226 |
+
$cat = get_term_by( 'name', $category, 'event-category' );
|
227 |
+
if( $cat )
|
228 |
+
$event['tax_input']['event-category'][] = intval( $cat->term_id );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
229 |
}
|
230 |
+
}
|
231 |
+
|
232 |
+
$event_id = eo_insert_event( $event );
|
233 |
+
if( is_wp_error( $event_id ) ){
|
234 |
+
$ical->errors[] = $event_id;
|
235 |
+
}else{
|
236 |
+
$events_updated++;
|
237 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
238 |
|
239 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
240 |
|
241 |
+
if( $events_updated == 0 )
|
242 |
+
$EO_Errors->add( 'eo_error', __( "No events were imported.", 'eventorganiser' ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
243 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
244 |
|
245 |
+
if( count( $ical->errors ) > 0 ){
|
246 |
+
foreach( $ical->errors as $error ){
|
247 |
+
$codes = $error->get_error_codes();
|
248 |
+
foreach( $codes as $code ){
|
249 |
+
$error_messages = $error->get_error_messages();
|
250 |
+
foreach( $error_messages as $error_message ){
|
251 |
+
$EO_Errors->add( 'eo_error', '<strong>' . __( 'Error:', 'eventorganiser' ) . '</strong> '. $error_message );
|
252 |
+
}
|
253 |
+
}
|
254 |
+
}
|
255 |
+
}
|
256 |
|
257 |
+
$message = array();
|
258 |
+
|
259 |
+
if( $ical->warnings ){
|
260 |
+
foreach( $ical->warnings as $warning ){
|
261 |
+
$message[] = '<strong>' . __( 'Warning:', 'eventorganiser' ) . '</strong> ' . $warning->get_error_message();
|
262 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
263 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
264 |
|
265 |
+
if( count( $ical->events ) == 1 )
|
266 |
+
$message[] = __( "1 event was successfully imported", 'eventorganiser' );
|
267 |
+
|
268 |
+
elseif( count( $ical->events ) > 1 )
|
269 |
+
$message[] = sprintf( __( "%d events were successfully imported",'eventorganiser'), count( $ical->events ) ).".";
|
270 |
+
|
271 |
+
if( $venues_imported == 1 ){
|
272 |
+
$message[] = __("1 venue was created",'eventorganiser');
|
273 |
+
|
274 |
+
}elseif( $venues_imported > 1 ){
|
275 |
+
$message[] = sprintf( __( "%d venues were created",'eventorganiser' ), $venues_imported );
|
276 |
}
|
277 |
+
|
278 |
+
if( $categories_imported == 1 ){
|
279 |
+
$message[] = __( "1 category was created", 'eventorganiser' );
|
280 |
+
|
281 |
+
}elseif( $categories_imported > 1 ){
|
282 |
+
$message[] = sprintf( __("%d categories were created",'eventorganiser'), $categories_imported );
|
283 |
+
}
|
284 |
+
|
285 |
+
$EO_Errors->add( 'eo_notice', implode( '<br/>', $message ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
286 |
|
|
|
287 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
288 |
}
|
289 |
|
290 |
+
} // end class
|
|
includes/event-organiser-archives.php
CHANGED
@@ -419,17 +419,22 @@ function eventorganiser_events_where( $where, $query ){
|
|
419 |
if( eventorganiser_is_event_query( $query, true ) ):
|
420 |
|
421 |
//If we only want events (or occurrences of events) that belong to a particular 'event'
|
422 |
-
if(isset($query->query_vars['event_series'])):
|
423 |
$series_id =$query->query_vars['event_series'];
|
424 |
$where .= $wpdb->prepare(" AND {$wpdb->eo_events}.post_id =%d ",$series_id);
|
425 |
endif;
|
426 |
|
427 |
-
if(isset($query->query_vars['event_occurrence_id'])):
|
428 |
$occurrence_id =$query->query_vars['event_occurrence_id'];
|
429 |
$where .= $wpdb->prepare(" AND {$wpdb->eo_events}.event_id=%d ",$occurrence_id);
|
430 |
endif;
|
431 |
|
432 |
-
if(isset($query->query_vars['
|
|
|
|
|
|
|
|
|
|
|
433 |
$occurrence__in = implode(', ', array_map( 'intval', $query->query_vars['event_occurrence__in'] ) );
|
434 |
$where .= " AND {$wpdb->eo_events}.event_id IN({$occurrence__in}) ";
|
435 |
endif;
|
419 |
if( eventorganiser_is_event_query( $query, true ) ):
|
420 |
|
421 |
//If we only want events (or occurrences of events) that belong to a particular 'event'
|
422 |
+
if( isset( $query->query_vars['event_series'] ) ):
|
423 |
$series_id =$query->query_vars['event_series'];
|
424 |
$where .= $wpdb->prepare(" AND {$wpdb->eo_events}.post_id =%d ",$series_id);
|
425 |
endif;
|
426 |
|
427 |
+
if( isset( $query->query_vars['event_occurrence_id'] ) ):
|
428 |
$occurrence_id =$query->query_vars['event_occurrence_id'];
|
429 |
$where .= $wpdb->prepare(" AND {$wpdb->eo_events}.event_id=%d ",$occurrence_id);
|
430 |
endif;
|
431 |
|
432 |
+
if( isset( $query->query_vars['event_occurrence__not_in'] ) ):
|
433 |
+
$occurrence__not_in = implode(', ', array_map( 'intval', $query->query_vars['event_occurrence__not_in'] ) );
|
434 |
+
$where .= " AND {$wpdb->eo_events}.event_id NOT IN({$occurrence__not_in}) ";
|
435 |
+
endif;
|
436 |
+
|
437 |
+
if( isset( $query->query_vars['event_occurrence__in'] ) ):
|
438 |
$occurrence__in = implode(', ', array_map( 'intval', $query->query_vars['event_occurrence__in'] ) );
|
439 |
$where .= " AND {$wpdb->eo_events}.event_id IN({$occurrence__in}) ";
|
440 |
endif;
|
includes/event-organiser-cpt.php
CHANGED
@@ -26,7 +26,7 @@ function eventorganiser_create_event_taxonomies() {
|
|
26 |
|
27 |
$venue_labels = array(
|
28 |
'name' => __( 'Event Venues','eventorganiser' ),
|
29 |
-
'singular_name' => _x( '
|
30 |
'search_items' => __( 'Search Venues', 'eventorganiser' ),
|
31 |
'all_items' => __( 'All Venues', 'eventorganiser' ),
|
32 |
'view_item' => __( 'View Venue', 'eventorganiser' ),
|
@@ -43,7 +43,7 @@ function eventorganiser_create_event_taxonomies() {
|
|
43 |
'hierarchical' => false,
|
44 |
'labels' => $venue_labels,
|
45 |
'public'=> true,
|
46 |
-
'show_in_nav_menus'=>
|
47 |
'show_ui' => false,//Use custom UI
|
48 |
'update_count_callback' => '_update_post_term_count',
|
49 |
'query_var' => true,
|
@@ -191,7 +191,7 @@ $args = array(
|
|
191 |
),
|
192 |
'has_archive' => $events_slug,
|
193 |
'hierarchical' => false,
|
194 |
-
'menu_icon' => EVENT_ORGANISER_URL.'css/images/eoicon-16.png',
|
195 |
'menu_position' => apply_filters('eventorganiser_menu_position',5),
|
196 |
'supports' => eventorganiser_get_option('supports'),
|
197 |
);
|
26 |
|
27 |
$venue_labels = array(
|
28 |
'name' => __( 'Event Venues','eventorganiser' ),
|
29 |
+
'singular_name' => _x( 'Venue', 'taxonomy singular name', 'eventorganiser' ),
|
30 |
'search_items' => __( 'Search Venues', 'eventorganiser' ),
|
31 |
'all_items' => __( 'All Venues', 'eventorganiser' ),
|
32 |
'view_item' => __( 'View Venue', 'eventorganiser' ),
|
43 |
'hierarchical' => false,
|
44 |
'labels' => $venue_labels,
|
45 |
'public'=> true,
|
46 |
+
'show_in_nav_menus'=>true,
|
47 |
'show_ui' => false,//Use custom UI
|
48 |
'update_count_callback' => '_update_post_term_count',
|
49 |
'query_var' => true,
|
191 |
),
|
192 |
'has_archive' => $events_slug,
|
193 |
'hierarchical' => false,
|
194 |
+
'menu_icon' => ( defined( 'MP6' ) && MP6 ? false : EVENT_ORGANISER_URL.'css/images/eoicon-16.png' ),
|
195 |
'menu_position' => apply_filters('eventorganiser_menu_position',5),
|
196 |
'supports' => eventorganiser_get_option('supports'),
|
197 |
);
|
includes/event-organiser-event-functions.php
CHANGED
@@ -1427,6 +1427,12 @@ function eo_get_event_meta_list( $post_id=0 ){
|
|
1427 |
function eo_get_event_archive_link( $year=false,$month=false, $day=false){
|
1428 |
global $wp_rewrite;
|
1429 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1430 |
$archive = get_post_type_archive_link('event');
|
1431 |
|
1432 |
if( $year == false && $month == false && $day == false )
|
1427 |
function eo_get_event_archive_link( $year=false,$month=false, $day=false){
|
1428 |
global $wp_rewrite;
|
1429 |
|
1430 |
+
if( $year instanceof DateTime ){
|
1431 |
+
$day = (int) $year->format( 'd' );
|
1432 |
+
$month = (int) $year->format( 'm' );
|
1433 |
+
$year = (int) $year->format( 'Y' );
|
1434 |
+
}
|
1435 |
+
|
1436 |
$archive = get_post_type_archive_link('event');
|
1437 |
|
1438 |
if( $year == false && $month == false && $day == false )
|
includes/event-organiser-install.php
CHANGED
@@ -10,6 +10,10 @@
|
|
10 |
function eventorganiser_install( $is_networkwide = false ){
|
11 |
global $wpdb;
|
12 |
|
|
|
|
|
|
|
|
|
13 |
// Is this multisite and did the user click network activate?
|
14 |
$is_multisite = ( function_exists('is_multisite') && is_multisite() );
|
15 |
|
10 |
function eventorganiser_install( $is_networkwide = false ){
|
11 |
global $wpdb;
|
12 |
|
13 |
+
if( !defined( 'EVENT_ORGANISER_URL' ) ){
|
14 |
+
define( 'EVENT_ORGANISER_URL', plugin_dir_url( EVENT_ORGANISER_DIR.'event-organiser.php' ) );
|
15 |
+
}
|
16 |
+
|
17 |
// Is this multisite and did the user click network activate?
|
18 |
$is_multisite = ( function_exists('is_multisite') && is_multisite() );
|
19 |
|
includes/event-organiser-register.php
CHANGED
@@ -432,15 +432,18 @@ function eventorganiser_screen_retina_icon(){
|
|
432 |
|
433 |
$screen_id = get_current_screen()->id;
|
434 |
|
435 |
-
if (
|
436 |
//MP6 tweaks - ongoing and limited.
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
|
|
|
|
443 |
}
|
|
|
444 |
if( !in_array($screen_id, array('event','edit-event','edit-event-tag','edit-event-category','event_page_venues','event_page_calendar')) )
|
445 |
return;
|
446 |
|
@@ -784,23 +787,4 @@ function _eventorganiser_autofill_city(){
|
|
784 |
}
|
785 |
add_action('admin_post_eo-autofillcity','_eventorganiser_autofill_city');
|
786 |
|
787 |
-
|
788 |
-
delete_option( 'eo_wp_footer_present' );
|
789 |
-
delete_option( 'eo_sidebar_correct' );
|
790 |
-
}
|
791 |
-
add_action( 'switch_theme', '_eventorganiser_theme_check_results' );
|
792 |
-
|
793 |
-
function _eventorganiser_check_sidebars( $sidebar ){
|
794 |
-
$before_widget = $sidebar['before_widget'];
|
795 |
-
|
796 |
-
if( did_action( 'register_sidebar') > 1 && ( -1 == get_option( 'eo_sidebar_correct' ) ) )
|
797 |
-
return;
|
798 |
-
|
799 |
-
if( strpos( $before_widget, '%1$s' ) == false || strpos( $before_widget, '%2$s' ) == false ){
|
800 |
-
update_option( 'eo_sidebar_correct', -1 );
|
801 |
-
}else{
|
802 |
-
update_option( 'eo_sidebar_correct', 1 );
|
803 |
-
}
|
804 |
-
}
|
805 |
-
|
806 |
-
?>
|
432 |
|
433 |
$screen_id = get_current_screen()->id;
|
434 |
|
435 |
+
if ( defined( 'MP6' ) && MP6 ) {
|
436 |
//MP6 tweaks - ongoing and limited.
|
437 |
+
?>
|
438 |
+
<style>
|
439 |
+
.icon16.icon-post:before, #adminmenu #menu-posts-event div.wp-menu-image:before {content: '\f145';}
|
440 |
+
body.event_page_calendar #calendar-view .view-button.active{ border-color: #dfdfdf #dfdfdf #eee }
|
441 |
+
.ui-datepicker select {height: 2em;}
|
442 |
+
.form-table .ui-datepicker-calendar td, .form-table .ui-datepicker-calendar th {font-size: 12px;}
|
443 |
+
</style>
|
444 |
+
<?php
|
445 |
}
|
446 |
+
|
447 |
if( !in_array($screen_id, array('event','edit-event','edit-event-tag','edit-event-category','event_page_venues','event_page_calendar')) )
|
448 |
return;
|
449 |
|
787 |
}
|
788 |
add_action('admin_post_eo-autofillcity','_eventorganiser_autofill_city');
|
789 |
|
790 |
+
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/event-organiser-templates.php
CHANGED
@@ -220,7 +220,7 @@ function eventorganiser_is_event_template($templatePath,$context=''){
|
|
220 |
function eventorganiser_set_template( $template ){
|
221 |
|
222 |
//Has EO template handling been turned off?
|
223 |
-
if( !eventorganiser_get_option('templates') )
|
224 |
return $template;
|
225 |
|
226 |
//If WordPress couldn't find an 'event' template use plug-in instead:
|
220 |
function eventorganiser_set_template( $template ){
|
221 |
|
222 |
//Has EO template handling been turned off?
|
223 |
+
if( !eventorganiser_get_option('templates') || get_theme_support( 'event-organiser' ) )
|
224 |
return $template;
|
225 |
|
226 |
//If WordPress couldn't find an 'event' template use plug-in instead:
|
includes/event-organiser-utility-functions.php
CHANGED
@@ -1044,7 +1044,7 @@ function eo_blog_is_24(){
|
|
1044 |
$is24 = false;
|
1045 |
}
|
1046 |
|
1047 |
-
return $is24;
|
1048 |
}
|
1049 |
|
1050 |
/**
|
1044 |
$is24 = false;
|
1045 |
}
|
1046 |
|
1047 |
+
return apply_filters( 'eventorganiser_blog_is_24', $is24 );
|
1048 |
}
|
1049 |
|
1050 |
/**
|
includes/event.php
CHANGED
@@ -24,6 +24,8 @@
|
|
24 |
* * `start` => start date (of first occurrence) as a datetime object
|
25 |
* * `end` => end date (of first occurrence) as a datetime object
|
26 |
* * `schedule_last` => **START** date of last occurrence (or upper-bound thereof) as a datetime object
|
|
|
|
|
27 |
* * `include` => array of datetime objects to include in the schedule
|
28 |
* * `exclude` => array of datetime objects to exclude in the schedule
|
29 |
*
|
@@ -50,7 +52,7 @@ function eo_update_event( $post_id, $event_data = array(), $post_data = array()
|
|
50 |
}
|
51 |
|
52 |
$event_keys = array_flip( array( 'start', 'end', 'schedule', 'schedule_meta', 'frequency',
|
53 |
-
'all_day', 'schedule_last', 'include', 'exclude', 'occurs_by') );
|
54 |
|
55 |
$post_keys = array_flip( array(
|
56 |
'post_title','post_content','post_status', 'post_type','post_author','ping_status','post_parent','menu_order',
|
@@ -98,6 +100,20 @@ function eo_update_event( $post_id, $event_data = array(), $post_data = array()
|
|
98 |
if( $key == 'schedule_last' && in_array( $event_data['schedule'], array( 'once', 'custom' ) ) )
|
99 |
continue;
|
100 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
101 |
$diff[]=$key;
|
102 |
$delete_existing = true;
|
103 |
break;
|
@@ -147,6 +163,8 @@ function eo_update_event( $post_id, $event_data = array(), $post_data = array()
|
|
147 |
* * `start` => start date (of first occurrence) as a datetime object
|
148 |
* * `end` => end date (of first occurrence) as a datetime object
|
149 |
* * `schedule_last` => **START** date of last occurrence (or upper-bound thereof) as a datetime object
|
|
|
|
|
150 |
* * `include` => array of datetime objects to include in the schedule
|
151 |
* * `exclude` => array of datetime objects to exclude in the schedule
|
152 |
*
|
@@ -194,7 +212,7 @@ function eo_insert_event( $post_data = array(), $event_data = array() ){
|
|
194 |
}
|
195 |
|
196 |
$event_keys = array_flip( array( 'start', 'end', 'schedule', 'schedule_meta', 'frequency',
|
197 |
-
'all_day', 'schedule_last', 'include', 'exclude', 'occurs_by') );
|
198 |
|
199 |
$post_keys = array_flip( array(
|
200 |
'post_title','post_content','post_status', 'post_type','post_author','ping_status','post_parent','menu_order',
|
@@ -233,18 +251,38 @@ function eo_insert_event( $post_data = array(), $event_data = array() ){
|
|
233 |
}
|
234 |
|
235 |
/**
|
236 |
-
* Deletes all occurrences for an event (removes them from the eo_events table).
|
237 |
-
* Triggers {@see `eventorganiser_delete_event`} (this action is used to break the caches).
|
238 |
-
* @since 1.5
|
239 |
*
|
|
|
|
|
|
|
|
|
240 |
* @param int $post_id the event's (post) ID to be deleted
|
|
|
|
|
241 |
*/
|
242 |
-
function eo_delete_event_occurrences($post_id){
|
243 |
global $wpdb;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
244 |
|
245 |
-
do_action( 'eventorganiser_delete_event', $post_id ); //Deprecated - do not use!
|
246 |
-
do_action( 'eventorganiser_delete_event_occurrences', $post_id );
|
247 |
-
$del = $wpdb->get_results($wpdb->prepare("DELETE FROM $wpdb->eo_events WHERE post_id=%d",$post_id));
|
248 |
}
|
249 |
add_action( 'delete_post', 'eo_delete_event_occurrences', 10 );
|
250 |
|
@@ -322,7 +360,7 @@ add_action( 'delete_post', 'eo_delete_event_occurrences', 10 );
|
|
322 |
unset($event_data['end']);
|
323 |
unset($event_data['schedule_start']);
|
324 |
unset($event_data['schedule_last']);
|
325 |
-
|
326 |
update_post_meta( $post_id,'_eventorganiser_event_schedule', $event_data);
|
327 |
update_post_meta( $post_id,'_eventorganiser_schedule_start_start', $start->format('Y-m-d H:i:s'));
|
328 |
update_post_meta( $post_id,'_eventorganiser_schedule_start_finish', $end->format('Y-m-d H:i:s'));
|
@@ -368,6 +406,7 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
368 |
$event_details = wp_parse_args($event_details, array(
|
369 |
'schedule'=>'once',
|
370 |
'schedule_meta'=>'',
|
|
|
371 |
'frequency'=>1,
|
372 |
'all_day'=>0,
|
373 |
'duration_str'=>'',
|
@@ -429,6 +468,7 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
429 |
'schedule_meta'=>'',
|
430 |
'frequency'=>1,
|
431 |
'schedule_last'=>'',
|
|
|
432 |
'exclude'=>array(),
|
433 |
'include'=>array(),
|
434 |
);
|
@@ -439,12 +479,29 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
439 |
$exclude = array_udiff($exclude, $include, '_eventorganiser_compare_dates');
|
440 |
$include = array_udiff($include, $exclude, '_eventorganiser_compare_dates');
|
441 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
442 |
//Check dates are supplied and are valid
|
443 |
if( !($start instanceof DateTime) )
|
444 |
return new WP_Error('eo_error',__('Start date not provided.','eventorganiser'));
|
445 |
|
446 |
if( !($end instanceof DateTime) )
|
447 |
$end = clone $start;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
448 |
|
449 |
if( 'once' == $schedule || !($schedule_last instanceof DateTime) )
|
450 |
$schedule_last = clone $start;
|
@@ -464,20 +521,12 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
464 |
$H = intval($start->format('H'));
|
465 |
$i = intval($start->format('i'));
|
466 |
|
467 |
-
//White list schedule
|
468 |
-
if( !in_array($schedule, array('once','daily','weekly','monthly','yearly','custom')) )
|
469 |
-
return new WP_Error('eo_error',__('Schedule not recognised.','eventorganiser'));
|
470 |
-
|
471 |
-
//Ensure event frequency is a positive integer. Else set to 1.
|
472 |
-
$frequency = max(absint($frequency),1);
|
473 |
-
$all_day = (int) $all_day ;
|
474 |
|
475 |
$start_days =array();
|
476 |
$workaround='';
|
477 |
$icaldays = array('SU','MO','TU','WE','TH','FR','SA');
|
478 |
$weekdays = array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
|
479 |
-
$ical2day = array('SU'=>'Sunday','MO'=>'Monday','TU'=>'Tuesday',
|
480 |
-
'WE'=>'Wednesday','TH'=>'Thursday','FR'=>'Friday','SA'=>'Saturday',);
|
481 |
|
482 |
//Set up schedule
|
483 |
switch( $schedule ) :
|
@@ -497,7 +546,7 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
497 |
break;
|
498 |
|
499 |
case 'weekly':
|
500 |
-
$schedule_meta = array_filter($schedule_meta);
|
501 |
if( !empty($schedule_meta) && is_array($schedule_meta) ):
|
502 |
foreach ($schedule_meta as $day):
|
503 |
$start_day = clone $start;
|
@@ -571,6 +620,7 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
571 |
//Now we have setup and validated the schedules - loop through and generate occurrences
|
572 |
foreach($start_days as $index => $start_day):
|
573 |
$current = clone $start_day;
|
|
|
574 |
|
575 |
switch($workaround):
|
576 |
//Not really a workaround. Just add the occurrence and finish.
|
@@ -581,10 +631,11 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
581 |
|
582 |
//Loops for monthly events that require php5.3 functionality
|
583 |
case 'php5.2':
|
584 |
-
while( $current <= $schedule_last ):
|
585 |
$current->setTime($H,$i );
|
586 |
$occurrences[] = clone $current;
|
587 |
$current = _eventorganiser_php52_modify($current,$interval);
|
|
|
588 |
endwhile;
|
589 |
break;
|
590 |
|
@@ -596,7 +647,7 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
596 |
$current_month= clone $start_day;
|
597 |
$current_month = date_create($current_month->format('Y-m-1'));
|
598 |
|
599 |
-
while( $current_month
|
600 |
$month_int = intval($current_month->format('m'));
|
601 |
$year_int = intval($current_month->format('Y'));
|
602 |
|
@@ -604,6 +655,7 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
604 |
$current = new DateTime($day_int.'-'.$month_int.'-'.$year_int, $timezone);
|
605 |
$current->setTime($H,$i );
|
606 |
$occurrences[] = clone $current;
|
|
|
607 |
}
|
608 |
$current_month->modify($interval);
|
609 |
endwhile;
|
@@ -614,7 +666,7 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
614 |
$current_year = clone $current;
|
615 |
$current_year->modify('-1 day');
|
616 |
|
617 |
-
while($current_year
|
618 |
$is_leap_year = (int) $current_year->format('L');
|
619 |
|
620 |
if( $is_leap_year ){
|
@@ -622,17 +674,19 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
622 |
$current->modify('+1 day');
|
623 |
$current->setTime($H,$i );
|
624 |
$occurrences[] = clone $current;
|
|
|
625 |
}
|
626 |
|
627 |
-
$current_year->modify($interval);
|
628 |
endwhile;
|
629 |
break;
|
630 |
|
631 |
default:
|
632 |
-
while($current <= $schedule_last):
|
633 |
$current->setTime($H,$i );
|
634 |
$occurrences[] = clone $current;
|
635 |
-
$current->modify($interval);
|
|
|
636 |
endwhile;
|
637 |
break;
|
638 |
|
@@ -640,7 +694,12 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
640 |
endforeach;
|
641 |
|
642 |
//Now schedule meta is set up and occurrences are generated.
|
643 |
-
|
|
|
|
|
|
|
|
|
|
|
644 |
//Add inclusions, removes exceptions and duplicates
|
645 |
if( defined( 'WP_DEBUG' ) && WP_DEBUG ){
|
646 |
//Make sure 'included' dates doesn't appear in generate date
|
@@ -652,6 +711,10 @@ function eo_get_event_schedule( $post_id=0 ){
|
|
652 |
|
653 |
//Sort occurrences
|
654 |
sort($occurrences);
|
|
|
|
|
|
|
|
|
655 |
$schedule_start = clone $occurrences[0];
|
656 |
$schedule_last = clone end($occurrences);
|
657 |
|
@@ -760,8 +823,8 @@ function eventorganiser_generate_ics_rrule($post_id=0){
|
|
760 |
}
|
761 |
|
762 |
//Update post meta and delete date from events table
|
763 |
-
update_post_meta( $post_id,'_eventorganiser_event_schedule',$event_details);
|
764 |
-
|
765 |
|
766 |
//Clear cache
|
767 |
_eventorganiser_delete_calendar_cache();
|
24 |
* * `start` => start date (of first occurrence) as a datetime object
|
25 |
* * `end` => end date (of first occurrence) as a datetime object
|
26 |
* * `schedule_last` => **START** date of last occurrence (or upper-bound thereof) as a datetime object
|
27 |
+
* * `number_occurrences` => Instead of specifying `schedule_last` you can specify the number of occurrence a recurring event should have.
|
28 |
+
* This is only used if `schedule_last` is not, and for daily, weekly, monthly or yearly recurring events.
|
29 |
* * `include` => array of datetime objects to include in the schedule
|
30 |
* * `exclude` => array of datetime objects to exclude in the schedule
|
31 |
*
|
52 |
}
|
53 |
|
54 |
$event_keys = array_flip( array( 'start', 'end', 'schedule', 'schedule_meta', 'frequency',
|
55 |
+
'all_day', 'schedule_last', 'include', 'exclude', 'occurs_by', 'number_occurrences' ) );
|
56 |
|
57 |
$post_keys = array_flip( array(
|
58 |
'post_title','post_content','post_status', 'post_type','post_author','ping_status','post_parent','menu_order',
|
100 |
if( $key == 'schedule_last' && in_array( $event_data['schedule'], array( 'once', 'custom' ) ) )
|
101 |
continue;
|
102 |
|
103 |
+
if( $key == 'schedule_last' && empty( $event_data['schedule_last'] ) && !empty( $event_data['number_occurrences'] ) ){
|
104 |
+
//Schedule_last is not used. Ignore this if number_occurrences match
|
105 |
+
if( $event_data['number_occurrences'] == $prev['number_occurrences'] ){
|
106 |
+
continue;
|
107 |
+
}
|
108 |
+
}
|
109 |
+
|
110 |
+
if( $key == 'number_occurrences' && !empty( $event_data['schedule_last'] ) ){
|
111 |
+
//schedule_last is being used. Ignore number_occurrences.
|
112 |
+
if( $event_data['schedule_last'] == $prev['schedule_last'] ){
|
113 |
+
continue;
|
114 |
+
}
|
115 |
+
}
|
116 |
+
|
117 |
$diff[]=$key;
|
118 |
$delete_existing = true;
|
119 |
break;
|
163 |
* * `start` => start date (of first occurrence) as a datetime object
|
164 |
* * `end` => end date (of first occurrence) as a datetime object
|
165 |
* * `schedule_last` => **START** date of last occurrence (or upper-bound thereof) as a datetime object
|
166 |
+
* * `number_occurrences` => Instead of specifying `schedule_last` you can specify the number of occurrence a recurring event should have.
|
167 |
+
* This is only used if `schedule_last` is not, and for daily, weekly, monthly or yearly recurring events.
|
168 |
* * `include` => array of datetime objects to include in the schedule
|
169 |
* * `exclude` => array of datetime objects to exclude in the schedule
|
170 |
*
|
212 |
}
|
213 |
|
214 |
$event_keys = array_flip( array( 'start', 'end', 'schedule', 'schedule_meta', 'frequency',
|
215 |
+
'all_day', 'schedule_last', 'include', 'exclude', 'occurs_by', 'number_occurrences' ) );
|
216 |
|
217 |
$post_keys = array_flip( array(
|
218 |
'post_title','post_content','post_status', 'post_type','post_author','ping_status','post_parent','menu_order',
|
251 |
}
|
252 |
|
253 |
/**
|
254 |
+
* Deletes all occurrences for an event (removes them from the eo_events table).
|
255 |
+
* Triggers {@see `eventorganiser_delete_event`} (this action is used to break the caches).
|
|
|
256 |
*
|
257 |
+
* **Don't call this unless you know what you're doing**.
|
258 |
+
*
|
259 |
+
* @since 1.5
|
260 |
+
* @access private
|
261 |
* @param int $post_id the event's (post) ID to be deleted
|
262 |
+
* @param int|array $occurrence_ids Occurrence ID (or array of IDs) for specificaly occurrences to delete. If empty/false, deletes all.
|
263 |
+
*
|
264 |
*/
|
265 |
+
function eo_delete_event_occurrences( $post_id, $occurrence_ids = false ){
|
266 |
global $wpdb;
|
267 |
+
//TODO use this in break/remove occurrence
|
268 |
+
|
269 |
+
//Let's just ensure empty is cast as false
|
270 |
+
$occurrence_ids = ( empty( $occurrence_ids ) ? false : $occurrence_ids );
|
271 |
+
|
272 |
+
if( $occurrence_ids !== false ){
|
273 |
+
$occurrence_ids = (array) $occurrence_ids;
|
274 |
+
$occurrence_ids = array_map( 'absint', $occurrence_ids );
|
275 |
+
$occurrence_ids_in = implode( ', ', $occurrence_ids );
|
276 |
+
$raw_sql = "DELETE FROM $wpdb->eo_events WHERE post_id=%d AND event_id IN( $occurrence_id_in )";
|
277 |
+
}else{
|
278 |
+
$raw_sql = "DELETE FROM $wpdb->eo_events WHERE post_id=%d";
|
279 |
+
}
|
280 |
+
|
281 |
+
do_action( 'eventorganiser_delete_event', $post_id, $occurrence_ids ); //Deprecated - do not use!
|
282 |
+
do_action( 'eventorganiser_delete_event_occurrences', $post_id, $occurrence_ids );
|
283 |
+
|
284 |
+
$del = $wpdb->get_results( $wpdb->prepare( $raw_sql, $post_id ) );
|
285 |
|
|
|
|
|
|
|
286 |
}
|
287 |
add_action( 'delete_post', 'eo_delete_event_occurrences', 10 );
|
288 |
|
360 |
unset($event_data['end']);
|
361 |
unset($event_data['schedule_start']);
|
362 |
unset($event_data['schedule_last']);
|
363 |
+
|
364 |
update_post_meta( $post_id,'_eventorganiser_event_schedule', $event_data);
|
365 |
update_post_meta( $post_id,'_eventorganiser_schedule_start_start', $start->format('Y-m-d H:i:s'));
|
366 |
update_post_meta( $post_id,'_eventorganiser_schedule_start_finish', $end->format('Y-m-d H:i:s'));
|
406 |
$event_details = wp_parse_args($event_details, array(
|
407 |
'schedule'=>'once',
|
408 |
'schedule_meta'=>'',
|
409 |
+
'number_occurrences' => 0, //Number occurrences according to recurrence rule. Not necessarily the #occurrences (after includes/excludes)
|
410 |
'frequency'=>1,
|
411 |
'all_day'=>0,
|
412 |
'duration_str'=>'',
|
468 |
'schedule_meta'=>'',
|
469 |
'frequency'=>1,
|
470 |
'schedule_last'=>'',
|
471 |
+
'number_occurrences' => 0,
|
472 |
'exclude'=>array(),
|
473 |
'include'=>array(),
|
474 |
);
|
479 |
$exclude = array_udiff($exclude, $include, '_eventorganiser_compare_dates');
|
480 |
$include = array_udiff($include, $exclude, '_eventorganiser_compare_dates');
|
481 |
|
482 |
+
//White list schedule
|
483 |
+
if( !in_array($schedule, array('once','daily','weekly','monthly','yearly','custom')) )
|
484 |
+
return new WP_Error('eo_error',__('Schedule not recognised.','eventorganiser'));
|
485 |
+
|
486 |
+
//Ensure event frequency is a positive integer. Else set to 1.
|
487 |
+
$frequency = max(absint($frequency),1);
|
488 |
+
$all_day = (int) $all_day;
|
489 |
+
$number_occurrences = absint( $number_occurrences );
|
490 |
+
|
491 |
//Check dates are supplied and are valid
|
492 |
if( !($start instanceof DateTime) )
|
493 |
return new WP_Error('eo_error',__('Start date not provided.','eventorganiser'));
|
494 |
|
495 |
if( !($end instanceof DateTime) )
|
496 |
$end = clone $start;
|
497 |
+
|
498 |
+
//If use 'number_occurrences' to limit recurring event, set dummy 'schedule_last' date.
|
499 |
+
if( !($schedule_last instanceof DateTime) && $number_occurrences && in_array( $schedule, array( 'daily','weekly','monthly','yearly' ) ) ){
|
500 |
+
//Set dummy "last occurrance" date.
|
501 |
+
$schedule_last = clone $start;
|
502 |
+
}else{
|
503 |
+
$number_occurrences = 0;
|
504 |
+
}
|
505 |
|
506 |
if( 'once' == $schedule || !($schedule_last instanceof DateTime) )
|
507 |
$schedule_last = clone $start;
|
521 |
$H = intval($start->format('H'));
|
522 |
$i = intval($start->format('i'));
|
523 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
524 |
|
525 |
$start_days =array();
|
526 |
$workaround='';
|
527 |
$icaldays = array('SU','MO','TU','WE','TH','FR','SA');
|
528 |
$weekdays = array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
|
529 |
+
$ical2day = array('SU'=>'Sunday','MO'=>'Monday','TU'=>'Tuesday','WE'=>'Wednesday','TH'=>'Thursday','FR'=>'Friday','SA'=>'Saturday');
|
|
|
530 |
|
531 |
//Set up schedule
|
532 |
switch( $schedule ) :
|
546 |
break;
|
547 |
|
548 |
case 'weekly':
|
549 |
+
$schedule_meta = ( $schedule_meta ? array_filter($schedule_meta) : array() );
|
550 |
if( !empty($schedule_meta) && is_array($schedule_meta) ):
|
551 |
foreach ($schedule_meta as $day):
|
552 |
$start_day = clone $start;
|
620 |
//Now we have setup and validated the schedules - loop through and generate occurrences
|
621 |
foreach($start_days as $index => $start_day):
|
622 |
$current = clone $start_day;
|
623 |
+
$occurrence_n = 0;
|
624 |
|
625 |
switch($workaround):
|
626 |
//Not really a workaround. Just add the occurrence and finish.
|
631 |
|
632 |
//Loops for monthly events that require php5.3 functionality
|
633 |
case 'php5.2':
|
634 |
+
while( $current <= $schedule_last || $occurrence_n < $number_occurrences ):
|
635 |
$current->setTime($H,$i );
|
636 |
$occurrences[] = clone $current;
|
637 |
$current = _eventorganiser_php52_modify($current,$interval);
|
638 |
+
$occurrence_n++;
|
639 |
endwhile;
|
640 |
break;
|
641 |
|
647 |
$current_month= clone $start_day;
|
648 |
$current_month = date_create($current_month->format('Y-m-1'));
|
649 |
|
650 |
+
while( $current_month <= $schedule_last || $occurrence_n < $number_occurrences ):
|
651 |
$month_int = intval($current_month->format('m'));
|
652 |
$year_int = intval($current_month->format('Y'));
|
653 |
|
655 |
$current = new DateTime($day_int.'-'.$month_int.'-'.$year_int, $timezone);
|
656 |
$current->setTime($H,$i );
|
657 |
$occurrences[] = clone $current;
|
658 |
+
$occurrence_n++;
|
659 |
}
|
660 |
$current_month->modify($interval);
|
661 |
endwhile;
|
666 |
$current_year = clone $current;
|
667 |
$current_year->modify('-1 day');
|
668 |
|
669 |
+
while( $current_year <= $schedule_last || $occurrence_n < $number_occurrences ):
|
670 |
$is_leap_year = (int) $current_year->format('L');
|
671 |
|
672 |
if( $is_leap_year ){
|
674 |
$current->modify('+1 day');
|
675 |
$current->setTime($H,$i );
|
676 |
$occurrences[] = clone $current;
|
677 |
+
$occurrence_n++;
|
678 |
}
|
679 |
|
680 |
+
$current_year->modify( $interval );
|
681 |
endwhile;
|
682 |
break;
|
683 |
|
684 |
default:
|
685 |
+
while( $current <= $schedule_last || $occurrence_n < $number_occurrences ):
|
686 |
$current->setTime($H,$i );
|
687 |
$occurrences[] = clone $current;
|
688 |
+
$current->modify( $interval );
|
689 |
+
$occurrence_n++;
|
690 |
endwhile;
|
691 |
break;
|
692 |
|
694 |
endforeach;
|
695 |
|
696 |
//Now schedule meta is set up and occurrences are generated.
|
697 |
+
if( $number_occurrences > 0 ){
|
698 |
+
//If recurrence is limited by #occurrences. Do that here.
|
699 |
+
sort( $occurrences );
|
700 |
+
$occurrences = array_slice( $occurrences, 0, $number_occurrences );
|
701 |
+
}
|
702 |
+
|
703 |
//Add inclusions, removes exceptions and duplicates
|
704 |
if( defined( 'WP_DEBUG' ) && WP_DEBUG ){
|
705 |
//Make sure 'included' dates doesn't appear in generate date
|
711 |
|
712 |
//Sort occurrences
|
713 |
sort($occurrences);
|
714 |
+
|
715 |
+
if( empty( $occurrences ) || !$occurrences[0] || !( $occurrences[0] instanceof DateTime ) ){
|
716 |
+
return new WP_Error('eo_error',__('Event does not contain any dates.','eventorganiser'));
|
717 |
+
}
|
718 |
$schedule_start = clone $occurrences[0];
|
719 |
$schedule_last = clone end($occurrences);
|
720 |
|
823 |
}
|
824 |
|
825 |
//Update post meta and delete date from events table
|
826 |
+
update_post_meta( $post_id,'_eventorganiser_event_schedule',$event_details);
|
827 |
+
eo_delete_event_occurrences( $post_id, $event_id );
|
828 |
|
829 |
//Clear cache
|
830 |
_eventorganiser_delete_calendar_cache();
|
js/admin-calendar.js
CHANGED
@@ -243,9 +243,9 @@ eventorganiser.versionCompare = function(left, right) {
|
|
243 |
/* View tabs */
|
244 |
$('.view-button').click(function (event) {
|
245 |
event.preventDefault();
|
246 |
-
$('.view-button').removeClass('active');
|
247 |
calendar.fullCalendar('changeView', $(this).attr('id'));
|
248 |
-
$(this).addClass('active');
|
249 |
});
|
250 |
|
251 |
/* GoTo 'mini calendar' */
|
@@ -1327,4 +1327,4 @@ $.widget("ui.selectmenu", {
|
|
1327 |
return false;
|
1328 |
};
|
1329 |
|
1330 |
-
}));
|
243 |
/* View tabs */
|
244 |
$('.view-button').click(function (event) {
|
245 |
event.preventDefault();
|
246 |
+
$('.view-button').removeClass('nav-tab-active');
|
247 |
calendar.fullCalendar('changeView', $(this).attr('id'));
|
248 |
+
$(this).addClass('nav-tab-active');
|
249 |
});
|
250 |
|
251 |
/* GoTo 'mini calendar' */
|
1327 |
return false;
|
1328 |
};
|
1329 |
|
1330 |
+
}));
|
js/admin-calendar.min.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
/*! event-organiser 2.
|
2 |
-
var eventorganiser=eventorganiser||{};eventorganiser.versionCompare=function(a,b){if("stringstring"!=typeof a+typeof b)return!1;for(var c=a.split("."),d=b.split("."),e=0,f=Math.max(c.length,d.length);f>e;e++){if(c[e]&&!d[e]&&parseInt(c[e],10)>0||parseInt(c[e],10)>parseInt(d[e],10))return 1;if(d[e]&&!c[e]&&parseInt(d[e],10)>0||parseInt(c[e],10)<parseInt(d[e],10))return-1}return 0},function(a){function b(a){var b,c=/^\s*(\d{4})-(\d\d)-(\d\d)\s*$/,d=new Date(0/0),e=c.exec(a);return e&&(b=+e[2],d.setFullYear(e[1],b-1,e[3]),b!=d.getMonth()+1&&d.setTime(0/0)),d}a(document).ready(function(){function c(){var b=a("<span class='fc-header-goto'><input type='hidden' id='miniCalendar'/></span>");return b}function d(b){var c=b.categories,d="<select class='eo-cal-filter' id='eo-event-cat'>";d+="<option value=''>"+b.buttonText.cat+"</option>";for(var e=0;e<c.length;e++)d+="<option class='cat-slug-"+c[e].slug+" cat' value='"+c[e].slug+"'>"+c[e].name+"</option>";return d+="</select>",a("<span class='fc-header-dropdown filter-category'></span>").append(d)}function e(b){var c=b.venues,d="<select class='eo-cal-filter' id='eo-event-venue'>";d+="<option value=''>"+b.buttonText.venue+"</option>";for(var e=0;e<c.length;e++)d+="<option value='"+c[e].term_id+"'>"+c[e].name+"</option>";return d+="</select>",a("<span class='fc-header-dropdown filter-venue'></span>").append(d)}a("#eo-dialog-tabs").tabs(),a(".eo-dialog").dialog({autoOpen:!1,dialogClass:"eo-admin-calendar-dialog",width:527,modal:!0}),a("#events-meta").parent().find(".ui-dialog-titlebar-close").appendTo(".ui-tabs-nav").closest(".ui-dialog").children(".ui-dialog-titlebar").remove();var f=a("#eofc_time_format").is(":checked")?"HH:mm":"h:mmtt",g=b(jQuery.cookie("eo_admin_cal_last_viewed_date"));"[object Date]"===Object.prototype.toString.call(g)?isNaN(g.getTime())&&(g=new Date):g=new Date;var h=jQuery("#eo_admin_calendar").fullCalendar({firstDay:parseInt(EO_Ajax.startday,10),date:g.getDate(),month:g.getMonth(),year:g.getFullYear(),defaultView:a.cookie("eo_admin_cal_last_view")?a.cookie("eo_admin_cal_last_view"):"month",editable:!1,lazyFetching:"true",eventColor:"#21759B",theme:!0,customButtons:{category:d,venue:e,"goto":c},buttonText:{today:EO_Ajax.locale.today,month:EO_Ajax.locale.month,week:EO_Ajax.locale.week,day:EO_Ajax.locale.day,cat:EO_Ajax.locale.cat,venue:EO_Ajax.locale.venue},monthNames:EO_Ajax.locale.monthNames,monthNamesShort:EO_Ajax.locale.monthAbbrev,dayNames:EO_Ajax.locale.dayNames,dayNamesShort:EO_Ajax.locale.dayAbbrev,header:{left:"title",center:"category venue",right:"prev goto today next"},buttonIcons:!1,buttonui:!0,events:function(a,b,c){jQuery.ajax({url:EO_Ajax.ajaxurl+"?action=event-admin-cal",dataType:"JSON",data:{start:jQuery.fullCalendar.formatDate(a,"yyyy-MM-dd"),end:jQuery.fullCalendar.formatDate(b,"yyyy-MM-dd")},success:function(a){c(a)}})},categories:EO_Ajax.categories,venues:EO_Ajax.venues,selectable:!0,selectHelper:!0,eventRender:function(a){var b=jQuery(".filter-category .eo-cal-filter").val(),c=jQuery(".filter-venue .eo-cal-filter").val();return"undefined"!=typeof b&&""!=b&&jQuery.inArray(b,a.category)<0?"<div></div>":"undefined"!=typeof c&&""!=c&&c!=a.venue?"<div></div>":void 0},viewDisplay:function(b){var c=jQuery.fullCalendar.formatDate(b.start,"yyyy-MM-dd"),d=b.name,e=new Date;e=new Date(e.getTime()+6e5),a.cookie("eo_admin_cal_last_viewed_date",c,{expires:e}),a.cookie("eo_admin_cal_last_view",d,{expires:e})},weekMode:"variable",aspectRatio:1.5,loading:function(a){a?jQuery("#loading").show():jQuery("#loading").hide()},timeFormat:f,axisFormat:f,eventClick:function(b,c){c.preventDefault(),jQuery("#eo-dialog-tabs ul li").each(function(){var c=a(this).attr("id").substring(14);jQuery("#eo-dialog-tabs #"+a(this).attr("id")+"-content").html(b[c])}),a("#events-meta").dialog("open")},select:function(b,c,d,e){if(EO_Ajax.perm_edit){e.preventDefault();var g,h="yyyy-MM-dd",i=jQuery(this)[0].calendar.options,j=jQuery.fullCalendar.formatDate(b,h),k=jQuery.fullCalendar.formatDate(b,"HH:mm"),l=jQuery.fullCalendar.formatDate(c,h),m=jQuery.fullCalendar.formatDate(c,"HH:mm");d?(f="ddd, dS MMMM",d=1):(f="ddd, dS MMMM h(:mm)tt",d=0),j==l?(g=jQuery.fullCalendar.formatDate(b,f,i),d||(g=g+" — "+jQuery.fullCalendar.formatDate(c,"h(:mm)tt",i))):g=jQuery.fullCalendar.formatDate(b,f,i)+" — "+jQuery.fullCalendar.formatDate(c,f,i),a("#eo_event_create_cal input[name='eo_event[event_title]']").val(""),a("#eo_event_create_cal input.ui-autocomplete-input").val(""),a("#eo_event_create_cal textarea[name='eo_event[event_content]']").val(""),a("#eo_event_create_cal input[name='eo_event[StartDate]']").val(j),a("#eo_event_create_cal input[name='eo_event[StartTime]']").val(k),a("#eo_event_create_cal input[name='eo_event[EndDate]']").val(l),a("#eo_event_create_cal input[name='eo_event[FinishTime]']").val(m),a("#eo_event_create_cal input[name='eo_event[allday]']").val(d),a("#eo_event_create_cal td#date").html(g),a("#eo_event_create_cal").dialog("open"),a("form.eo_cal input[type='submit']").removeAttr("disabled"),a("form.eo_cal input#reset").click(function(){a("#eo_event_create_cal").dialog("close")})}}});a("#eofc_time_format").change(function(){f=a("#eofc_time_format").is(":checked")?"HH:mm":"h:mmtt",h.fullCalendar("option","timeFormat",f),a.post(ajaxurl,{action:"eofc-format-time",is24:a("#eofc_time_format").is(":checked")})}),a(".view-button").click(function(b){b.preventDefault(),a(".view-button").removeClass("active"),h.fullCalendar("changeView",a(this).attr("id")),a(this).addClass("active")}),a("#miniCalendar").datepicker({dateFormat:"DD, d MM, yy",firstDay:parseInt(EO_Ajax.startday,10),changeMonth:!0,monthNamesShort:EO_Ajax.locale.monthAbbrev,dayNamesMin:EO_Ajax.locale.dayAbbrev,changeYear:!0,showOn:"button",buttonText:EO_Ajax.locale.gotodate,onSelect:function(a){h.fullCalendar("gotoDate",new Date(Date.parse(a)))}}),a("button.ui-datepicker-trigger").button(),a.widget("ui.combobox",{_create:function(){var b=this.element.hide(),c=b.children(":selected"),d=c.val()?c.text():"",e=a("<span>").addClass("ui-combobox eo-venue-input").insertAfter(b),f={delay:0,minLength:0,source:function(b,c){a.getJSON(EO_Ajax.ajaxurl+"?callback=?&action=eo-search-venue",b,function(b){var d=a.map(b,function(a){return a.label=a.name,a});c(d)})},select:function(b,c){a("#venue_select").removeAttr("selected"),a("#venue_select").val(c.item.term_id)}},g=a("<input>").appendTo(e).val(d).addClass("ui-combobox-input").autocomplete(f).addClass("ui-widget-content ui-corner-left"),h=a.ui?a.ui.version||0:-1,i=eventorganiser.versionCompare(h,"1.10")>=0?"ui-autocomplete":"autocomplete";g.data(i)._renderItem=function(b,c){if(0===c.term_id)return a("<li></li>").data(i+"-item",c).append("<a>"+c.label+"</a>").appendTo(b);var d=[c.venue_address,c.venue_city,c.venue_state,c.venue_postcode,c.venue_country],e=a.grep(d,function(a){return a}).join(", "),f=eventorganiser.versionCompare(h,"1.10")>=0?"ui-autocomplete-item":"item.autocomplete";return a("<li></li>").data(f,c).append("<a>"+c.label+"</br> <span style='font-size: 0.8em'><em>"+e+"</span></em></a>").appendTo(b)};var j=a("<span>").addClass("eo-venue-combobox-buttons").appendTo(e);a("<a style='vertical-align: top;margin: 0px -1px;padding: 0px;height: 21px;'>").attr("title","Show All Items").appendTo(j).button({icons:{primary:"ui-icon-triangle-1-s"},text:!1}).removeClass("ui-corner-all").addClass("ui-corner-right ui-combobox-toggle ui-combobox-button").click(function(){return g.autocomplete("widget").is(":visible")?(g.autocomplete("close"),void 0):(a(this).blur(),g.autocomplete("search","").focus(),void 0)})}}),a("#venue_select").combobox(),a(".eo-cal-filter").change(function(){h.fullCalendar("rerenderEvents")}),a(".filter-venue .eo-cal-filter").selectmenu({wrapperElement:"<span class='fc-header-filter'></span>"}),a(".filter-category .eo-cal-filter").selectmenu({wrapperElement:"<span class='fc-header-filter'></span>",icons:[{find:".cat"}]});var i=a("#eo-event-venue-button").width()+30;a("#eo-event-venue-button").width(i+"px"),a("#eo-event-venue-menu").width(i+"px");var j=a("#eo-event-cat-button").width()+30;a("#eo-event-cat-button").width(j+"px"),a("#eo-event-cat-menu").width(j+"px")})}(jQuery),function(a){a.widget("ui.selectmenu",{options:{appendTo:"body",typeAhead:1e3,style:"dropdown",positionOptions:null,width:null,menuWidth:null,handleWidth:26,maxHeight:null,icons:null,format:null,escapeHtml:!1,bgImage:function(){}},_create:function(){var b=this,c=this.options,d=a.ui?a.ui.version||0:-1,e=eventorganiser.versionCompare(d,"1.9")>=0?this.element.uniqueId().attr("id"):this.element.attr("id")||"ui-selectmenu-"+Math.random().toString(16).slice(2,10);this.ids=[e,e+"-button",e+"-menu"],this._safemouseup=!0,this.isOpen=!1,this.newelement=a("<a />",{"class":"ui-selectmenu ui-widget ui-state-default ui-corner-all",id:this.ids[1],role:"button",href:"#nogo",tabindex:this.element.attr("disabled")?1:0,"aria-haspopup":!0,"aria-owns":this.ids[2]}),this.newelementWrap=a("<span />").append(this.newelement).insertAfter(this.element);var f=this.element.attr("tabindex");f&&this.newelement.attr("tabindex",f),this.newelement.data("selectelement",this.element),this.selectmenuIcon=a('<span class="ui-selectmenu-icon ui-icon"></span>').prependTo(this.newelement),this.newelement.prepend('<span class="ui-selectmenu-status" />'),this.element.bind({"click.selectmenu":function(a){b.newelement.focus(),a.preventDefault()}}),this.newelement.bind("mousedown.selectmenu",function(a){b._toggle(a,!0),"popup"==c.style&&(b._safemouseup=!1,setTimeout(function(){b._safemouseup=!0},300)),a.preventDefault()}).bind("click.selectmenu",function(a){a.preventDefault()}).bind("keydown.selectmenu",function(c){var d=!1;switch(c.keyCode){case a.ui.keyCode.ENTER:d=!0;break;case a.ui.keyCode.SPACE:b._toggle(c);break;case a.ui.keyCode.UP:c.altKey?b.open(c):b._moveSelection(-1);break;case a.ui.keyCode.DOWN:c.altKey?b.open(c):b._moveSelection(1);break;case a.ui.keyCode.LEFT:b._moveSelection(-1);break;case a.ui.keyCode.RIGHT:b._moveSelection(1);break;case a.ui.keyCode.TAB:d=!0;break;case a.ui.keyCode.PAGE_UP:case a.ui.keyCode.HOME:b.index(0);break;case a.ui.keyCode.PAGE_DOWN:case a.ui.keyCode.END:b.index(b._optionLis.length);break;default:d=!0}return d}).bind("keypress.selectmenu",function(a){return a.which>0&&b._typeAhead(a.which,"mouseup"),!0}).bind("mouseover.selectmenu",function(){c.disabled||a(this).addClass("ui-state-hover")}).bind("mouseout.selectmenu",function(){c.disabled||a(this).removeClass("ui-state-hover")}).bind("focus.selectmenu",function(){c.disabled||a(this).addClass("ui-state-focus")}).bind("blur.selectmenu",function(){c.disabled||a(this).removeClass("ui-state-focus")}),a(document).bind("mousedown.selectmenu-"+this.ids[0],function(c){b.isOpen&&!a(c.target).closest("#"+b.ids[1]).length&&b.close(c)}),this.element.bind("click.selectmenu",function(){b._refreshValue()}).bind("focus.selectmenu",function(){b.newelement&&b.newelement[0].focus()}),c.width||(c.width=this.element.outerWidth()),this.newelement.width(c.width),this.element.hide(),this.list=a("<ul />",{"class":"ui-widget ui-widget-content","aria-hidden":!0,role:"listbox","aria-labelledby":this.ids[1],id:this.ids[2]}),this.listWrap=a("<div />",{"class":"ui-selectmenu-menu"}).append(this.list).appendTo(c.appendTo),this.list.bind("keydown.selectmenu",function(c){var d=!1;switch(c.keyCode){case a.ui.keyCode.UP:c.altKey?b.close(c,!0):b._moveFocus(-1);break;case a.ui.keyCode.DOWN:c.altKey?b.close(c,!0):b._moveFocus(1);break;case a.ui.keyCode.LEFT:b._moveFocus(-1);break;case a.ui.keyCode.RIGHT:b._moveFocus(1);break;case a.ui.keyCode.HOME:b._moveFocus(":first");break;case a.ui.keyCode.PAGE_UP:b._scrollPage("up");break;case a.ui.keyCode.PAGE_DOWN:b._scrollPage("down");break;case a.ui.keyCode.END:b._moveFocus(":last");break;case a.ui.keyCode.ENTER:case a.ui.keyCode.SPACE:b.close(c,!0),a(c.target).parents("li:eq(0)").trigger("mouseup");break;case a.ui.keyCode.TAB:d=!0,b.close(c,!0),a(c.target).parents("li:eq(0)").trigger("mouseup");break;case a.ui.keyCode.ESCAPE:b.close(c,!0);break;default:d=!0}return d}).bind("keypress.selectmenu",function(a){return a.which>0&&b._typeAhead(a.which,"focus"),!0}).bind("mousedown.selectmenu mouseup.selectmenu",function(){return!1}),a(window).bind("resize.selectmenu-"+this.ids[0],a.proxy(b.close,this))},_init:function(){var b=this,c=this.options,d=[];this.element.find("option").each(function(){var e=a(this);d.push({value:e.attr("value"),text:b._formatText(e.text(),e),selected:e.attr("selected"),disabled:e.attr("disabled"),classes:e.attr("class"),typeahead:e.attr("typeahead"),parentOptGroup:e.parent("optgroup"),bgImage:c.bgImage.call(e)})});var e="popup"==b.options.style?" ui-state-active":"";if(this.list.html(""),d.length)for(var f=0;f<d.length;f++){var g={role:"presentation"};d[f].disabled&&(g["class"]="ui-state-disabled");var h={html:d[f].text||" ",href:"#nogo",tabindex:-1,role:"option","aria-selected":!1};d[f].disabled&&(h["aria-disabled"]=d[f].disabled),d[f].typeahead&&(h.typeahead=d[f].typeahead);var i=a("<a/>",h).bind("focus.selectmenu",function(){a(this).parent().mouseover()}).bind("blur.selectmenu",function(){a(this).parent().mouseout()}),j=a("<li/>",g).append(i).data("index",f).addClass(d[f].classes).data("optionClasses",d[f].classes||"").bind("mouseup.selectmenu",function(c){return!b._safemouseup||b._disabled(c.currentTarget)||b._disabled(a(c.currentTarget).parents("ul > li.ui-selectmenu-group "))||(b.index(a(this).data("index")),b.select(c),b.close(c,!0)),!1}).bind("click.selectmenu",function(){return!1}).bind("mouseover.selectmenu",function(c){a(this).hasClass("ui-state-disabled")||a(this).parent("ul").parent("li").hasClass("ui-state-disabled")||(c.optionValue=b.element[0].options[a(this).data("index")].value,b._trigger("hover",c,b._uiHash()),b._selectedOptionLi().addClass(e),b._focusedOptionLi().removeClass("ui-selectmenu-item-focus ui-state-hover"),a(this).removeClass("ui-state-active").addClass("ui-selectmenu-item-focus ui-state-hover"))}).bind("mouseout.selectmenu",function(c){a(this).is(b._selectedOptionLi())&&a(this).addClass(e),c.optionValue=b.element[0].options[a(this).data("index")].value,b._trigger("blur",c,b._uiHash()),a(this).removeClass("ui-selectmenu-item-focus ui-state-hover")});if(d[f].parentOptGroup.length){var k="ui-selectmenu-group-"+this.element.find("optgroup").index(d[f].parentOptGroup);this.list.find("li."+k).length?this.list.find("li."+k+":last ul").append(j):a('<li role="presentation" class="ui-selectmenu-group '+k+(d[f].parentOptGroup.attr("disabled")?' ui-state-disabled" aria-disabled="true"':'"')+'><span class="ui-selectmenu-group-label">'+d[f].parentOptGroup.attr("label")+"</span><ul></ul></li>").appendTo(this.list).find("ul").append(j)}else j.appendTo(this.list);if(c.icons)for(var l in c.icons)if(j.is(c.icons[l].find)){j.data("optionClasses",d[f].classes+" ui-selectmenu-hasIcon").addClass("ui-selectmenu-hasIcon");var m=c.icons[l].icon||"";j.find("a:eq(0)").prepend('<span class="ui-selectmenu-item-icon ui-icon '+m+'"></span>'),d[f].bgImage&&j.find("span").css("background-image",d[f].bgImage)}}else a(' <li role="presentation"><a href="#nogo" tabindex="-1" role="option"></a></li>').appendTo(this.list);var n="dropdown"==c.style;this.newelement.toggleClass("ui-selectmenu-dropdown",n).toggleClass("ui-selectmenu-popup",!n),this.list.toggleClass("ui-selectmenu-menu-dropdown ui-corner-bottom",n).toggleClass("ui-selectmenu-menu-popup ui-corner-all",!n).find("li:first").toggleClass("ui-corner-top",!n).end().find("li:last").addClass("ui-corner-bottom"),this.selectmenuIcon.toggleClass("ui-icon-triangle-1-s",n).toggleClass("ui-icon-triangle-2-n-s",!n),"dropdown"==c.style?this.list.width(c.menuWidth?c.menuWidth:c.width):this.list.width(c.menuWidth?c.menuWidth:c.width-c.handleWidth),this.list.css("height","auto");var o=this.listWrap.height(),p=a(window).height(),q=c.maxHeight?Math.min(c.maxHeight,p):p/3;o>q&&this.list.height(q),this._optionLis=this.list.find("li:not(.ui-selectmenu-group)"),this.element.attr("disabled")?this.disable():this.enable(),this._refreshValue(),this._selectedOptionLi().addClass("ui-selectmenu-item-focus"),clearTimeout(this.refreshTimeout),this.refreshTimeout=window.setTimeout(function(){b._refreshPosition()},200)},destroy:function(){this.element.removeData(this.widgetName).removeClass("ui-selectmenu-disabled ui-state-disabled").removeAttr("aria-disabled").unbind(".selectmenu"),a(window).unbind(".selectmenu-"+this.ids[0]),a(document).unbind(".selectmenu-"+this.ids[0]),this.newelementWrap.remove(),this.listWrap.remove(),this.element.unbind(".selectmenu").show(),a.Widget.prototype.destroy.apply(this,arguments)},_typeAhead:function(a,b){var c=this,d=String.fromCharCode(a).toLowerCase(),e=null,f=null;c._typeAhead_timer&&(window.clearTimeout(c._typeAhead_timer),c._typeAhead_timer=void 0),c._typeAhead_chars=(void 0===c._typeAhead_chars?"":c._typeAhead_chars).concat(d),c._typeAhead_chars.length<2||c._typeAhead_chars.substr(-2,1)===d&&c._typeAhead_cycling?(c._typeAhead_cycling=!0,e=d):(c._typeAhead_cycling=!1,e=c._typeAhead_chars);for(var g=("focus"!==b?this._selectedOptionLi().data("index"):this._focusedOptionLi().data("index"))||0,h=0;h<this._optionLis.length;h++){var i=this._optionLis.eq(h).text().substr(0,e.length).toLowerCase();if(i===e)if(c._typeAhead_cycling){if(null===f&&(f=h),h>g){f=h;break}}else f=h}null!==f&&this._optionLis.eq(f).find("a").trigger(b),c._typeAhead_timer=window.setTimeout(function(){c._typeAhead_timer=void 0,c._typeAhead_chars=void 0,c._typeAhead_cycling=void 0},c.options.typeAhead)},_uiHash:function(){var b=this.index();return{index:b,option:a("option",this.element).get(b),value:this.element[0].value}},open:function(a){if("true"!=this.newelement.attr("aria-disabled")){var b=this,c=this.options,d=this._selectedOptionLi(),e=d.find("a");b._closeOthers(a),b.newelement.addClass("ui-state-active"),b.list.attr("aria-hidden",!1),b.listWrap.addClass("ui-selectmenu-open"),"dropdown"==c.style?b.newelement.removeClass("ui-corner-all").addClass("ui-corner-top"):this.list.css("left",-5e3).scrollTop(this.list.scrollTop()+d.position().top-this.list.outerHeight()/2+d.outerHeight()/2).css("left","auto"),b._refreshPosition(),e.length&&e[0].focus(),b.isOpen=!0,b._trigger("open",a,b._uiHash())}},close:function(a,b){this.newelement.is(".ui-state-active")&&(this.newelement.removeClass("ui-state-active"),this.listWrap.removeClass("ui-selectmenu-open"),this.list.attr("aria-hidden",!0),"dropdown"==this.options.style&&this.newelement.removeClass("ui-corner-top").addClass("ui-corner-all"),b&&this.newelement.focus(),this.isOpen=!1,this._trigger("close",a,this._uiHash()))},change:function(a){this.element.trigger("change"),this._trigger("change",a,this._uiHash())},select:function(a){return this._disabled(a.currentTarget)?!1:(this._trigger("select",a,this._uiHash()),void 0)},widget:function(){return this.listWrap.add(this.newelementWrap)},_closeOthers:function(b){a(".ui-selectmenu.ui-state-active").not(this.newelement).each(function(){a(this).data("selectelement").selectmenu("close",b)}),a(".ui-selectmenu.ui-state-hover").trigger("mouseout")},_toggle:function(a,b){this.isOpen?this.close(a,b):this.open(a)},_formatText:function(b,c){return this.options.format?b=this.options.format(b,c):this.options.escapeHtml&&(b=a("<div />").text(b).html()),b},_selectedIndex:function(){return this.element[0].selectedIndex},_selectedOptionLi:function(){return this._optionLis.eq(this._selectedIndex())},_focusedOptionLi:function(){return this.list.find(".ui-selectmenu-item-focus")},_moveSelection:function(a,b){if(!this.options.disabled){var c=parseInt(this._selectedOptionLi().data("index")||0,10),d=c+a;if(0>d&&(d=0),d>this._optionLis.size()-1&&(d=this._optionLis.size()-1),d===b)return!1;this._optionLis.eq(d).hasClass("ui-state-disabled")?(a>0?++a:--a,this._moveSelection(a,d)):this._optionLis.eq(d).trigger("mouseover").trigger("mouseup")}},_moveFocus:function(a,b){if(isNaN(a))var c=parseInt(this._optionLis.filter(a).data("index"),10);else var d=parseInt(this._focusedOptionLi().data("index")||0,10),c=d+a;if(0>c&&(c=0),c>this._optionLis.size()-1&&(c=this._optionLis.size()-1),c===b)return!1;var e="ui-selectmenu-item-"+Math.round(1e3*Math.random());this._focusedOptionLi().find("a:eq(0)").attr("id",""),this._optionLis.eq(c).hasClass("ui-state-disabled")?(a>0?++a:--a,this._moveFocus(a,c)):this._optionLis.eq(c).find("a:eq(0)").attr("id",e).focus(),this.list.attr("aria-activedescendant",e)},_scrollPage:function(a){var b=Math.floor(this.list.outerHeight()/this._optionLis.first().outerHeight());b="up"==a?-b:b,this._moveFocus(b)},_setOption:function(a,b){this.options[a]=b,"disabled"==a&&(b&&this.close(),this.element.add(this.newelement).add(this.list)[b?"addClass":"removeClass"]("ui-selectmenu-disabled ui-state-disabled").attr("aria-disabled",b))},disable:function(a,b){"undefined"==typeof a?this._setOption("disabled",!0):"optgroup"==b?this._toggleOptgroup(a,!1):this._toggleOption(a,!1)},enable:function(a,b){"undefined"==typeof a?this._setOption("disabled",!1):"optgroup"==b?this._toggleOptgroup(a,!0):this._toggleOption(a,!0)},_disabled:function(b){return a(b).hasClass("ui-state-disabled")},_toggleOption:function(a,b){var c=this._optionLis.eq(a);c&&(c.toggleClass("ui-state-disabled",b).find("a").attr("aria-disabled",!b),b?this.element.find("option").eq(a).attr("disabled","disabled"):this.element.find("option").eq(a).removeAttr("disabled"))},_toggleOptgroup:function(a,b){var c=this.list.find("li.ui-selectmenu-group-"+a);c&&(c.toggleClass("ui-state-disabled",b).attr("aria-disabled",!b),b?this.element.find("optgroup").eq(a).attr("disabled","disabled"):this.element.find("optgroup").eq(a).removeAttr("disabled"))},index:function(b){return arguments.length?this._disabled(a(this._optionLis[b]))||b==this._selectedIndex()?!1:(this.element[0].selectedIndex=b,this._refreshValue(),this.change(),void 0):this._selectedIndex()},value:function(a){return arguments.length&&a!=this.element[0].value?(this.element[0].value=a,this._refreshValue(),this.change(),void 0):this.element[0].value},_refreshValue:function(){var a="popup"==this.options.style?" ui-state-active":"",b="ui-selectmenu-item-"+Math.round(1e3*Math.random());this.list.find(".ui-selectmenu-item-selected").removeClass("ui-selectmenu-item-selected"+a).find("a").attr("aria-selected","false").attr("id",""),this._selectedOptionLi().addClass("ui-selectmenu-item-selected"+a).find("a").attr("aria-selected","true").attr("id",b);var c=this.newelement.data("optionClasses")?this.newelement.data("optionClasses"):"",d=this._selectedOptionLi().data("optionClasses")?this._selectedOptionLi().data("optionClasses"):"";this.newelement.removeClass(c).data("optionClasses",d).addClass(d).find(".ui-selectmenu-status").html(this._selectedOptionLi().find("a:eq(0)").html()),this.list.attr("aria-activedescendant",b)},_refreshPosition:function(){var b=this.options,c={of:this.newelement,my:"left top",at:"left bottom",collision:"flip"};if("popup"==b.style){var d=this._selectedOptionLi();c.my="left top"+(this.list.offset().top-d.offset().top-(this.newelement.outerHeight()+d.outerHeight())/2),c.collision="fit"}this.listWrap.removeAttr("style").zIndex(this.element.zIndex()+2).position(a.extend(c,b.positionOptions))}})}(jQuery),function(a){var b;"function"==typeof b&&b.amd?b(["jquery"],a):a(jQuery)}(function(a){function b(a){return a}function c(a){return decodeURIComponent(a.replace(e," "))}function d(a){0===a.indexOf('"')&&(a=a.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return f.json?JSON.parse(a):a}catch(b){}}var e=/\+/g,f=a.cookie=function(e,g,h){if(void 0!==g){if(h=a.extend({},f.defaults,h),"number"==typeof h.expires){var i=h.expires,j=h.expires=new Date;j.setDate(j.getDate()+i)}return g=f.json?JSON.stringify(g):String(g),document.cookie=[f.raw?e:encodeURIComponent(e),"=",f.raw?g:encodeURIComponent(g),h.expires?"; expires="+h.expires.toUTCString():"",h.path?"; path="+h.path:"",h.domain?"; domain="+h.domain:"",h.secure?"; secure":""].join("")}for(var k=f.raw?b:c,l=document.cookie.split("; "),m=e?void 0:{},n=0,o=l.length;o>n;n++){var p=l[n].split("="),q=k(p.shift()),r=k(p.join("="));if(e&&e===q){m=d(r);break}e||(m[q]=d(r))}return m};f.defaults={},a.removeCookie=function(b,c){return void 0!==a.cookie(b)?(a.cookie(b,"",a.extend({},c,{expires:-1})),!0):!1}});
|
1 |
+
/*! event-organiser 2.4.0 2013-10-29 18:47 */
|
2 |
+
var eventorganiser=eventorganiser||{};eventorganiser.versionCompare=function(a,b){if("stringstring"!=typeof a+typeof b)return!1;for(var c=a.split("."),d=b.split("."),e=0,f=Math.max(c.length,d.length);f>e;e++){if(c[e]&&!d[e]&&parseInt(c[e],10)>0||parseInt(c[e],10)>parseInt(d[e],10))return 1;if(d[e]&&!c[e]&&parseInt(d[e],10)>0||parseInt(c[e],10)<parseInt(d[e],10))return-1}return 0},function(a){function b(a){var b,c=/^\s*(\d{4})-(\d\d)-(\d\d)\s*$/,d=new Date(0/0),e=c.exec(a);return e&&(b=+e[2],d.setFullYear(e[1],b-1,e[3]),b!=d.getMonth()+1&&d.setTime(0/0)),d}a(document).ready(function(){function c(){var b=a("<span class='fc-header-goto'><input type='hidden' id='miniCalendar'/></span>");return b}function d(b){var c=b.categories,d="<select class='eo-cal-filter' id='eo-event-cat'>";d+="<option value=''>"+b.buttonText.cat+"</option>";for(var e=0;e<c.length;e++)d+="<option class='cat-slug-"+c[e].slug+" cat' value='"+c[e].slug+"'>"+c[e].name+"</option>";return d+="</select>",a("<span class='fc-header-dropdown filter-category'></span>").append(d)}function e(b){var c=b.venues,d="<select class='eo-cal-filter' id='eo-event-venue'>";d+="<option value=''>"+b.buttonText.venue+"</option>";for(var e=0;e<c.length;e++)d+="<option value='"+c[e].term_id+"'>"+c[e].name+"</option>";return d+="</select>",a("<span class='fc-header-dropdown filter-venue'></span>").append(d)}a("#eo-dialog-tabs").tabs(),a(".eo-dialog").dialog({autoOpen:!1,dialogClass:"eo-admin-calendar-dialog",width:527,modal:!0}),a("#events-meta").parent().find(".ui-dialog-titlebar-close").appendTo(".ui-tabs-nav").closest(".ui-dialog").children(".ui-dialog-titlebar").remove();var f=a("#eofc_time_format").is(":checked")?"HH:mm":"h:mmtt",g=b(jQuery.cookie("eo_admin_cal_last_viewed_date"));"[object Date]"===Object.prototype.toString.call(g)?isNaN(g.getTime())&&(g=new Date):g=new Date;var h=jQuery("#eo_admin_calendar").fullCalendar({firstDay:parseInt(EO_Ajax.startday,10),date:g.getDate(),month:g.getMonth(),year:g.getFullYear(),defaultView:a.cookie("eo_admin_cal_last_view")?a.cookie("eo_admin_cal_last_view"):"month",editable:!1,lazyFetching:"true",eventColor:"#21759B",theme:!0,customButtons:{category:d,venue:e,"goto":c},buttonText:{today:EO_Ajax.locale.today,month:EO_Ajax.locale.month,week:EO_Ajax.locale.week,day:EO_Ajax.locale.day,cat:EO_Ajax.locale.cat,venue:EO_Ajax.locale.venue},monthNames:EO_Ajax.locale.monthNames,monthNamesShort:EO_Ajax.locale.monthAbbrev,dayNames:EO_Ajax.locale.dayNames,dayNamesShort:EO_Ajax.locale.dayAbbrev,header:{left:"title",center:"category venue",right:"prev goto today next"},buttonIcons:!1,buttonui:!0,events:function(a,b,c){jQuery.ajax({url:EO_Ajax.ajaxurl+"?action=event-admin-cal",dataType:"JSON",data:{start:jQuery.fullCalendar.formatDate(a,"yyyy-MM-dd"),end:jQuery.fullCalendar.formatDate(b,"yyyy-MM-dd")},success:function(a){c(a)}})},categories:EO_Ajax.categories,venues:EO_Ajax.venues,selectable:!0,selectHelper:!0,eventRender:function(a){var b=jQuery(".filter-category .eo-cal-filter").val(),c=jQuery(".filter-venue .eo-cal-filter").val();return"undefined"!=typeof b&&""!=b&&jQuery.inArray(b,a.category)<0?"<div></div>":"undefined"!=typeof c&&""!=c&&c!=a.venue?"<div></div>":void 0},viewDisplay:function(b){var c=jQuery.fullCalendar.formatDate(b.start,"yyyy-MM-dd"),d=b.name,e=new Date;e=new Date(e.getTime()+6e5),a.cookie("eo_admin_cal_last_viewed_date",c,{expires:e}),a.cookie("eo_admin_cal_last_view",d,{expires:e})},weekMode:"variable",aspectRatio:1.5,loading:function(a){a?jQuery("#loading").show():jQuery("#loading").hide()},timeFormat:f,axisFormat:f,eventClick:function(b,c){c.preventDefault(),jQuery("#eo-dialog-tabs ul li").each(function(){var c=a(this).attr("id").substring(14);jQuery("#eo-dialog-tabs #"+a(this).attr("id")+"-content").html(b[c])}),a("#events-meta").dialog("open")},select:function(b,c,d,e){if(EO_Ajax.perm_edit){e.preventDefault();var g,h="yyyy-MM-dd",i=jQuery(this)[0].calendar.options,j=jQuery.fullCalendar.formatDate(b,h),k=jQuery.fullCalendar.formatDate(b,"HH:mm"),l=jQuery.fullCalendar.formatDate(c,h),m=jQuery.fullCalendar.formatDate(c,"HH:mm");d?(f="ddd, dS MMMM",d=1):(f="ddd, dS MMMM h(:mm)tt",d=0),j==l?(g=jQuery.fullCalendar.formatDate(b,f,i),d||(g=g+" — "+jQuery.fullCalendar.formatDate(c,"h(:mm)tt",i))):g=jQuery.fullCalendar.formatDate(b,f,i)+" — "+jQuery.fullCalendar.formatDate(c,f,i),a("#eo_event_create_cal input[name='eo_event[event_title]']").val(""),a("#eo_event_create_cal input.ui-autocomplete-input").val(""),a("#eo_event_create_cal textarea[name='eo_event[event_content]']").val(""),a("#eo_event_create_cal input[name='eo_event[StartDate]']").val(j),a("#eo_event_create_cal input[name='eo_event[StartTime]']").val(k),a("#eo_event_create_cal input[name='eo_event[EndDate]']").val(l),a("#eo_event_create_cal input[name='eo_event[FinishTime]']").val(m),a("#eo_event_create_cal input[name='eo_event[allday]']").val(d),a("#eo_event_create_cal td#date").html(g),a("#eo_event_create_cal").dialog("open"),a("form.eo_cal input[type='submit']").removeAttr("disabled"),a("form.eo_cal input#reset").click(function(){a("#eo_event_create_cal").dialog("close")})}}});a("#eofc_time_format").change(function(){f=a("#eofc_time_format").is(":checked")?"HH:mm":"h:mmtt",h.fullCalendar("option","timeFormat",f),a.post(ajaxurl,{action:"eofc-format-time",is24:a("#eofc_time_format").is(":checked")})}),a(".view-button").click(function(b){b.preventDefault(),a(".view-button").removeClass("nav-tab-active"),h.fullCalendar("changeView",a(this).attr("id")),a(this).addClass("nav-tab-active")}),a("#miniCalendar").datepicker({dateFormat:"DD, d MM, yy",firstDay:parseInt(EO_Ajax.startday,10),changeMonth:!0,monthNamesShort:EO_Ajax.locale.monthAbbrev,dayNamesMin:EO_Ajax.locale.dayAbbrev,changeYear:!0,showOn:"button",buttonText:EO_Ajax.locale.gotodate,onSelect:function(a){h.fullCalendar("gotoDate",new Date(Date.parse(a)))}}),a("button.ui-datepicker-trigger").button(),a.widget("ui.combobox",{_create:function(){var b=this.element.hide(),c=b.children(":selected"),d=c.val()?c.text():"",e=a("<span>").addClass("ui-combobox eo-venue-input").insertAfter(b),f={delay:0,minLength:0,source:function(b,c){a.getJSON(EO_Ajax.ajaxurl+"?callback=?&action=eo-search-venue",b,function(b){var d=a.map(b,function(a){return a.label=a.name,a});c(d)})},select:function(b,c){a("#venue_select").removeAttr("selected"),a("#venue_select").val(c.item.term_id)}},g=a("<input>").appendTo(e).val(d).addClass("ui-combobox-input").autocomplete(f).addClass("ui-widget-content ui-corner-left"),h=a.ui?a.ui.version||0:-1,i=eventorganiser.versionCompare(h,"1.10")>=0?"ui-autocomplete":"autocomplete";g.data(i)._renderItem=function(b,c){if(0===c.term_id)return a("<li></li>").data(i+"-item",c).append("<a>"+c.label+"</a>").appendTo(b);var d=[c.venue_address,c.venue_city,c.venue_state,c.venue_postcode,c.venue_country],e=a.grep(d,function(a){return a}).join(", "),f=eventorganiser.versionCompare(h,"1.10")>=0?"ui-autocomplete-item":"item.autocomplete";return a("<li></li>").data(f,c).append("<a>"+c.label+"</br> <span style='font-size: 0.8em'><em>"+e+"</span></em></a>").appendTo(b)};var j=a("<span>").addClass("eo-venue-combobox-buttons").appendTo(e);a("<a style='vertical-align: top;margin: 0px -1px;padding: 0px;height: 21px;'>").attr("title","Show All Items").appendTo(j).button({icons:{primary:"ui-icon-triangle-1-s"},text:!1}).removeClass("ui-corner-all").addClass("ui-corner-right ui-combobox-toggle ui-combobox-button").click(function(){return g.autocomplete("widget").is(":visible")?(g.autocomplete("close"),void 0):(a(this).blur(),g.autocomplete("search","").focus(),void 0)})}}),a("#venue_select").combobox(),a(".eo-cal-filter").change(function(){h.fullCalendar("rerenderEvents")}),a(".filter-venue .eo-cal-filter").selectmenu({wrapperElement:"<span class='fc-header-filter'></span>"}),a(".filter-category .eo-cal-filter").selectmenu({wrapperElement:"<span class='fc-header-filter'></span>",icons:[{find:".cat"}]});var i=a("#eo-event-venue-button").width()+30;a("#eo-event-venue-button").width(i+"px"),a("#eo-event-venue-menu").width(i+"px");var j=a("#eo-event-cat-button").width()+30;a("#eo-event-cat-button").width(j+"px"),a("#eo-event-cat-menu").width(j+"px")})}(jQuery),function(a){a.widget("ui.selectmenu",{options:{appendTo:"body",typeAhead:1e3,style:"dropdown",positionOptions:null,width:null,menuWidth:null,handleWidth:26,maxHeight:null,icons:null,format:null,escapeHtml:!1,bgImage:function(){}},_create:function(){var b=this,c=this.options,d=a.ui?a.ui.version||0:-1,e=eventorganiser.versionCompare(d,"1.9")>=0?this.element.uniqueId().attr("id"):this.element.attr("id")||"ui-selectmenu-"+Math.random().toString(16).slice(2,10);this.ids=[e,e+"-button",e+"-menu"],this._safemouseup=!0,this.isOpen=!1,this.newelement=a("<a />",{"class":"ui-selectmenu ui-widget ui-state-default ui-corner-all",id:this.ids[1],role:"button",href:"#nogo",tabindex:this.element.attr("disabled")?1:0,"aria-haspopup":!0,"aria-owns":this.ids[2]}),this.newelementWrap=a("<span />").append(this.newelement).insertAfter(this.element);var f=this.element.attr("tabindex");f&&this.newelement.attr("tabindex",f),this.newelement.data("selectelement",this.element),this.selectmenuIcon=a('<span class="ui-selectmenu-icon ui-icon"></span>').prependTo(this.newelement),this.newelement.prepend('<span class="ui-selectmenu-status" />'),this.element.bind({"click.selectmenu":function(a){b.newelement.focus(),a.preventDefault()}}),this.newelement.bind("mousedown.selectmenu",function(a){b._toggle(a,!0),"popup"==c.style&&(b._safemouseup=!1,setTimeout(function(){b._safemouseup=!0},300)),a.preventDefault()}).bind("click.selectmenu",function(a){a.preventDefault()}).bind("keydown.selectmenu",function(c){var d=!1;switch(c.keyCode){case a.ui.keyCode.ENTER:d=!0;break;case a.ui.keyCode.SPACE:b._toggle(c);break;case a.ui.keyCode.UP:c.altKey?b.open(c):b._moveSelection(-1);break;case a.ui.keyCode.DOWN:c.altKey?b.open(c):b._moveSelection(1);break;case a.ui.keyCode.LEFT:b._moveSelection(-1);break;case a.ui.keyCode.RIGHT:b._moveSelection(1);break;case a.ui.keyCode.TAB:d=!0;break;case a.ui.keyCode.PAGE_UP:case a.ui.keyCode.HOME:b.index(0);break;case a.ui.keyCode.PAGE_DOWN:case a.ui.keyCode.END:b.index(b._optionLis.length);break;default:d=!0}return d}).bind("keypress.selectmenu",function(a){return a.which>0&&b._typeAhead(a.which,"mouseup"),!0}).bind("mouseover.selectmenu",function(){c.disabled||a(this).addClass("ui-state-hover")}).bind("mouseout.selectmenu",function(){c.disabled||a(this).removeClass("ui-state-hover")}).bind("focus.selectmenu",function(){c.disabled||a(this).addClass("ui-state-focus")}).bind("blur.selectmenu",function(){c.disabled||a(this).removeClass("ui-state-focus")}),a(document).bind("mousedown.selectmenu-"+this.ids[0],function(c){b.isOpen&&!a(c.target).closest("#"+b.ids[1]).length&&b.close(c)}),this.element.bind("click.selectmenu",function(){b._refreshValue()}).bind("focus.selectmenu",function(){b.newelement&&b.newelement[0].focus()}),c.width||(c.width=this.element.outerWidth()),this.newelement.width(c.width),this.element.hide(),this.list=a("<ul />",{"class":"ui-widget ui-widget-content","aria-hidden":!0,role:"listbox","aria-labelledby":this.ids[1],id:this.ids[2]}),this.listWrap=a("<div />",{"class":"ui-selectmenu-menu"}).append(this.list).appendTo(c.appendTo),this.list.bind("keydown.selectmenu",function(c){var d=!1;switch(c.keyCode){case a.ui.keyCode.UP:c.altKey?b.close(c,!0):b._moveFocus(-1);break;case a.ui.keyCode.DOWN:c.altKey?b.close(c,!0):b._moveFocus(1);break;case a.ui.keyCode.LEFT:b._moveFocus(-1);break;case a.ui.keyCode.RIGHT:b._moveFocus(1);break;case a.ui.keyCode.HOME:b._moveFocus(":first");break;case a.ui.keyCode.PAGE_UP:b._scrollPage("up");break;case a.ui.keyCode.PAGE_DOWN:b._scrollPage("down");break;case a.ui.keyCode.END:b._moveFocus(":last");break;case a.ui.keyCode.ENTER:case a.ui.keyCode.SPACE:b.close(c,!0),a(c.target).parents("li:eq(0)").trigger("mouseup");break;case a.ui.keyCode.TAB:d=!0,b.close(c,!0),a(c.target).parents("li:eq(0)").trigger("mouseup");break;case a.ui.keyCode.ESCAPE:b.close(c,!0);break;default:d=!0}return d}).bind("keypress.selectmenu",function(a){return a.which>0&&b._typeAhead(a.which,"focus"),!0}).bind("mousedown.selectmenu mouseup.selectmenu",function(){return!1}),a(window).bind("resize.selectmenu-"+this.ids[0],a.proxy(b.close,this))},_init:function(){var b=this,c=this.options,d=[];this.element.find("option").each(function(){var e=a(this);d.push({value:e.attr("value"),text:b._formatText(e.text(),e),selected:e.attr("selected"),disabled:e.attr("disabled"),classes:e.attr("class"),typeahead:e.attr("typeahead"),parentOptGroup:e.parent("optgroup"),bgImage:c.bgImage.call(e)})});var e="popup"==b.options.style?" ui-state-active":"";if(this.list.html(""),d.length)for(var f=0;f<d.length;f++){var g={role:"presentation"};d[f].disabled&&(g["class"]="ui-state-disabled");var h={html:d[f].text||" ",href:"#nogo",tabindex:-1,role:"option","aria-selected":!1};d[f].disabled&&(h["aria-disabled"]=d[f].disabled),d[f].typeahead&&(h.typeahead=d[f].typeahead);var i=a("<a/>",h).bind("focus.selectmenu",function(){a(this).parent().mouseover()}).bind("blur.selectmenu",function(){a(this).parent().mouseout()}),j=a("<li/>",g).append(i).data("index",f).addClass(d[f].classes).data("optionClasses",d[f].classes||"").bind("mouseup.selectmenu",function(c){return!b._safemouseup||b._disabled(c.currentTarget)||b._disabled(a(c.currentTarget).parents("ul > li.ui-selectmenu-group "))||(b.index(a(this).data("index")),b.select(c),b.close(c,!0)),!1}).bind("click.selectmenu",function(){return!1}).bind("mouseover.selectmenu",function(c){a(this).hasClass("ui-state-disabled")||a(this).parent("ul").parent("li").hasClass("ui-state-disabled")||(c.optionValue=b.element[0].options[a(this).data("index")].value,b._trigger("hover",c,b._uiHash()),b._selectedOptionLi().addClass(e),b._focusedOptionLi().removeClass("ui-selectmenu-item-focus ui-state-hover"),a(this).removeClass("ui-state-active").addClass("ui-selectmenu-item-focus ui-state-hover"))}).bind("mouseout.selectmenu",function(c){a(this).is(b._selectedOptionLi())&&a(this).addClass(e),c.optionValue=b.element[0].options[a(this).data("index")].value,b._trigger("blur",c,b._uiHash()),a(this).removeClass("ui-selectmenu-item-focus ui-state-hover")});if(d[f].parentOptGroup.length){var k="ui-selectmenu-group-"+this.element.find("optgroup").index(d[f].parentOptGroup);this.list.find("li."+k).length?this.list.find("li."+k+":last ul").append(j):a('<li role="presentation" class="ui-selectmenu-group '+k+(d[f].parentOptGroup.attr("disabled")?' ui-state-disabled" aria-disabled="true"':'"')+'><span class="ui-selectmenu-group-label">'+d[f].parentOptGroup.attr("label")+"</span><ul></ul></li>").appendTo(this.list).find("ul").append(j)}else j.appendTo(this.list);if(c.icons)for(var l in c.icons)if(j.is(c.icons[l].find)){j.data("optionClasses",d[f].classes+" ui-selectmenu-hasIcon").addClass("ui-selectmenu-hasIcon");var m=c.icons[l].icon||"";j.find("a:eq(0)").prepend('<span class="ui-selectmenu-item-icon ui-icon '+m+'"></span>'),d[f].bgImage&&j.find("span").css("background-image",d[f].bgImage)}}else a(' <li role="presentation"><a href="#nogo" tabindex="-1" role="option"></a></li>').appendTo(this.list);var n="dropdown"==c.style;this.newelement.toggleClass("ui-selectmenu-dropdown",n).toggleClass("ui-selectmenu-popup",!n),this.list.toggleClass("ui-selectmenu-menu-dropdown ui-corner-bottom",n).toggleClass("ui-selectmenu-menu-popup ui-corner-all",!n).find("li:first").toggleClass("ui-corner-top",!n).end().find("li:last").addClass("ui-corner-bottom"),this.selectmenuIcon.toggleClass("ui-icon-triangle-1-s",n).toggleClass("ui-icon-triangle-2-n-s",!n),"dropdown"==c.style?this.list.width(c.menuWidth?c.menuWidth:c.width):this.list.width(c.menuWidth?c.menuWidth:c.width-c.handleWidth),this.list.css("height","auto");var o=this.listWrap.height(),p=a(window).height(),q=c.maxHeight?Math.min(c.maxHeight,p):p/3;o>q&&this.list.height(q),this._optionLis=this.list.find("li:not(.ui-selectmenu-group)"),this.element.attr("disabled")?this.disable():this.enable(),this._refreshValue(),this._selectedOptionLi().addClass("ui-selectmenu-item-focus"),clearTimeout(this.refreshTimeout),this.refreshTimeout=window.setTimeout(function(){b._refreshPosition()},200)},destroy:function(){this.element.removeData(this.widgetName).removeClass("ui-selectmenu-disabled ui-state-disabled").removeAttr("aria-disabled").unbind(".selectmenu"),a(window).unbind(".selectmenu-"+this.ids[0]),a(document).unbind(".selectmenu-"+this.ids[0]),this.newelementWrap.remove(),this.listWrap.remove(),this.element.unbind(".selectmenu").show(),a.Widget.prototype.destroy.apply(this,arguments)},_typeAhead:function(a,b){var c=this,d=String.fromCharCode(a).toLowerCase(),e=null,f=null;c._typeAhead_timer&&(window.clearTimeout(c._typeAhead_timer),c._typeAhead_timer=void 0),c._typeAhead_chars=(void 0===c._typeAhead_chars?"":c._typeAhead_chars).concat(d),c._typeAhead_chars.length<2||c._typeAhead_chars.substr(-2,1)===d&&c._typeAhead_cycling?(c._typeAhead_cycling=!0,e=d):(c._typeAhead_cycling=!1,e=c._typeAhead_chars);for(var g=("focus"!==b?this._selectedOptionLi().data("index"):this._focusedOptionLi().data("index"))||0,h=0;h<this._optionLis.length;h++){var i=this._optionLis.eq(h).text().substr(0,e.length).toLowerCase();if(i===e)if(c._typeAhead_cycling){if(null===f&&(f=h),h>g){f=h;break}}else f=h}null!==f&&this._optionLis.eq(f).find("a").trigger(b),c._typeAhead_timer=window.setTimeout(function(){c._typeAhead_timer=void 0,c._typeAhead_chars=void 0,c._typeAhead_cycling=void 0},c.options.typeAhead)},_uiHash:function(){var b=this.index();return{index:b,option:a("option",this.element).get(b),value:this.element[0].value}},open:function(a){if("true"!=this.newelement.attr("aria-disabled")){var b=this,c=this.options,d=this._selectedOptionLi(),e=d.find("a");b._closeOthers(a),b.newelement.addClass("ui-state-active"),b.list.attr("aria-hidden",!1),b.listWrap.addClass("ui-selectmenu-open"),"dropdown"==c.style?b.newelement.removeClass("ui-corner-all").addClass("ui-corner-top"):this.list.css("left",-5e3).scrollTop(this.list.scrollTop()+d.position().top-this.list.outerHeight()/2+d.outerHeight()/2).css("left","auto"),b._refreshPosition(),e.length&&e[0].focus(),b.isOpen=!0,b._trigger("open",a,b._uiHash())}},close:function(a,b){this.newelement.is(".ui-state-active")&&(this.newelement.removeClass("ui-state-active"),this.listWrap.removeClass("ui-selectmenu-open"),this.list.attr("aria-hidden",!0),"dropdown"==this.options.style&&this.newelement.removeClass("ui-corner-top").addClass("ui-corner-all"),b&&this.newelement.focus(),this.isOpen=!1,this._trigger("close",a,this._uiHash()))},change:function(a){this.element.trigger("change"),this._trigger("change",a,this._uiHash())},select:function(a){return this._disabled(a.currentTarget)?!1:(this._trigger("select",a,this._uiHash()),void 0)},widget:function(){return this.listWrap.add(this.newelementWrap)},_closeOthers:function(b){a(".ui-selectmenu.ui-state-active").not(this.newelement).each(function(){a(this).data("selectelement").selectmenu("close",b)}),a(".ui-selectmenu.ui-state-hover").trigger("mouseout")},_toggle:function(a,b){this.isOpen?this.close(a,b):this.open(a)},_formatText:function(b,c){return this.options.format?b=this.options.format(b,c):this.options.escapeHtml&&(b=a("<div />").text(b).html()),b},_selectedIndex:function(){return this.element[0].selectedIndex},_selectedOptionLi:function(){return this._optionLis.eq(this._selectedIndex())},_focusedOptionLi:function(){return this.list.find(".ui-selectmenu-item-focus")},_moveSelection:function(a,b){if(!this.options.disabled){var c=parseInt(this._selectedOptionLi().data("index")||0,10),d=c+a;if(0>d&&(d=0),d>this._optionLis.size()-1&&(d=this._optionLis.size()-1),d===b)return!1;this._optionLis.eq(d).hasClass("ui-state-disabled")?(a>0?++a:--a,this._moveSelection(a,d)):this._optionLis.eq(d).trigger("mouseover").trigger("mouseup")}},_moveFocus:function(a,b){if(isNaN(a))var c=parseInt(this._optionLis.filter(a).data("index"),10);else var d=parseInt(this._focusedOptionLi().data("index")||0,10),c=d+a;if(0>c&&(c=0),c>this._optionLis.size()-1&&(c=this._optionLis.size()-1),c===b)return!1;var e="ui-selectmenu-item-"+Math.round(1e3*Math.random());this._focusedOptionLi().find("a:eq(0)").attr("id",""),this._optionLis.eq(c).hasClass("ui-state-disabled")?(a>0?++a:--a,this._moveFocus(a,c)):this._optionLis.eq(c).find("a:eq(0)").attr("id",e).focus(),this.list.attr("aria-activedescendant",e)},_scrollPage:function(a){var b=Math.floor(this.list.outerHeight()/this._optionLis.first().outerHeight());b="up"==a?-b:b,this._moveFocus(b)},_setOption:function(a,b){this.options[a]=b,"disabled"==a&&(b&&this.close(),this.element.add(this.newelement).add(this.list)[b?"addClass":"removeClass"]("ui-selectmenu-disabled ui-state-disabled").attr("aria-disabled",b))},disable:function(a,b){"undefined"==typeof a?this._setOption("disabled",!0):"optgroup"==b?this._toggleOptgroup(a,!1):this._toggleOption(a,!1)},enable:function(a,b){"undefined"==typeof a?this._setOption("disabled",!1):"optgroup"==b?this._toggleOptgroup(a,!0):this._toggleOption(a,!0)},_disabled:function(b){return a(b).hasClass("ui-state-disabled")},_toggleOption:function(a,b){var c=this._optionLis.eq(a);c&&(c.toggleClass("ui-state-disabled",b).find("a").attr("aria-disabled",!b),b?this.element.find("option").eq(a).attr("disabled","disabled"):this.element.find("option").eq(a).removeAttr("disabled"))},_toggleOptgroup:function(a,b){var c=this.list.find("li.ui-selectmenu-group-"+a);c&&(c.toggleClass("ui-state-disabled",b).attr("aria-disabled",!b),b?this.element.find("optgroup").eq(a).attr("disabled","disabled"):this.element.find("optgroup").eq(a).removeAttr("disabled"))},index:function(b){return arguments.length?this._disabled(a(this._optionLis[b]))||b==this._selectedIndex()?!1:(this.element[0].selectedIndex=b,this._refreshValue(),this.change(),void 0):this._selectedIndex()},value:function(a){return arguments.length&&a!=this.element[0].value?(this.element[0].value=a,this._refreshValue(),this.change(),void 0):this.element[0].value},_refreshValue:function(){var a="popup"==this.options.style?" ui-state-active":"",b="ui-selectmenu-item-"+Math.round(1e3*Math.random());this.list.find(".ui-selectmenu-item-selected").removeClass("ui-selectmenu-item-selected"+a).find("a").attr("aria-selected","false").attr("id",""),this._selectedOptionLi().addClass("ui-selectmenu-item-selected"+a).find("a").attr("aria-selected","true").attr("id",b);var c=this.newelement.data("optionClasses")?this.newelement.data("optionClasses"):"",d=this._selectedOptionLi().data("optionClasses")?this._selectedOptionLi().data("optionClasses"):"";this.newelement.removeClass(c).data("optionClasses",d).addClass(d).find(".ui-selectmenu-status").html(this._selectedOptionLi().find("a:eq(0)").html()),this.list.attr("aria-activedescendant",b)},_refreshPosition:function(){var b=this.options,c={of:this.newelement,my:"left top",at:"left bottom",collision:"flip"};if("popup"==b.style){var d=this._selectedOptionLi();c.my="left top"+(this.list.offset().top-d.offset().top-(this.newelement.outerHeight()+d.outerHeight())/2),c.collision="fit"}this.listWrap.removeAttr("style").zIndex(this.element.zIndex()+2).position(a.extend(c,b.positionOptions))}})}(jQuery),function(a){var b;"function"==typeof b&&b.amd?b(["jquery"],a):a(jQuery)}(function(a){function b(a){return a}function c(a){return decodeURIComponent(a.replace(e," "))}function d(a){0===a.indexOf('"')&&(a=a.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return f.json?JSON.parse(a):a}catch(b){}}var e=/\+/g,f=a.cookie=function(e,g,h){if(void 0!==g){if(h=a.extend({},f.defaults,h),"number"==typeof h.expires){var i=h.expires,j=h.expires=new Date;j.setDate(j.getDate()+i)}return g=f.json?JSON.stringify(g):String(g),document.cookie=[f.raw?e:encodeURIComponent(e),"=",f.raw?g:encodeURIComponent(g),h.expires?"; expires="+h.expires.toUTCString():"",h.path?"; path="+h.path:"",h.domain?"; domain="+h.domain:"",h.secure?"; secure":""].join("")}for(var k=f.raw?b:c,l=document.cookie.split("; "),m=e?void 0:{},n=0,o=l.length;o>n;n++){var p=l[n].split("="),q=k(p.shift()),r=k(p.join("="));if(e&&e===q){m=d(r);break}e||(m[q]=d(r))}return m};f.defaults={},a.removeCookie=function(b,c){return void 0!==a.cookie(b)?(a.cookie(b,"",a.extend({},c,{expires:-1})),!0):!1}});
|
js/edit-event-controller.min.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
/*! event-organiser 2.
|
2 |
-
var eventorganiser=eventorganiser||{};eventorganiser.versionCompare=function(a,b){if("stringstring"!=typeof a+typeof b)return!1;for(var c=a.split("."),d=b.split("."),e=Math.max(c.length,d.length),f=0;e>f;f++){if(c[f]&&!d[f]&&parseInt(c[f],10)>0||parseInt(c[f],10)>parseInt(d[f],10))return 1;if(d[f]&&!c[f]&&parseInt(d[f],10)>0||parseInt(c[f],10)<parseInt(d[f],10))return-1}return 0},jQuery(document).ready(function(a){var b;eventOrganiserSchedulePicker.init({views:{start_date:"#eventorganiser_detail #from_date",start_time:"#HWSEvent_time",end_date:"#eventorganiser_detail #to_date",end_time:"#HWSEvent_time2",occurrence_picker:"#eo_occurrence_datepicker",occurrence_picker_toggle:".eo_occurrence_toggle",schedule_last_date:"#recend",schedule:"#HWSEventInput_Req",is_all_day:"#eo_allday",frequency:"#HWSEvent_freq",week_repeat:"#dayofweekrepeat",month_repeat:"#dayofmonthrepeat",recurrence_section:".reocurrence_row",include:"#eo_occurrence_includes",exclude:"#eo_occurrence_excludes",schedule_span:"#recpan",summary:"#event_summary"},format:EO_Ajax_Event.format,is24hour:Boolean(EO_Ajax_Event.is24hour),startday:EO_Ajax_Event.startday,schedule:window.eventOrganiserSchedule,locale:EO_Ajax_Event.locale,editable:"once"==a("#HWSEventInput_Req").val()||"custom"==a("#HWSEventInput_Req").val()}),a("#HWSEvent_rec").click(function(){window.eventOrganiserSchedulePicker.options.editable=a("#HWSEvent_rec").is(":checked"),window.eventOrganiserSchedulePicker.update_form()}),a.widget("ui.combobox",{_create:function(){var c=this.element.hide(),d=c.children(":selected"),e=d.val()?d.text():"",f=a("<span>").addClass("ui-combobox eo-venue-input").insertAfter(c),g={delay:0,minLength:0,source:function(b,c){a.getJSON(EO_Ajax_Event.ajaxurl+"?callback=?&action=eo-search-venue",b,function(b){var d=a.map(b,function(a){return a.label=a.name,a});c(d)})},select:function(b,c){a("tr.venue_row").length>0&&(0==c.item.term_id?(a("tr.venue_row").hide(),a("#eventorganiser_event_detail tr.eo-add-new-venue").hide()):(a("tr.venue_row").show(),a("#eventorganiser_event_detail tr.eo-add-new-venue").hide()),eo_initialize_map(c.item.venue_lat,c.item.venue_lng),a("#eo_venue_Lat").val(c.item.venue_lat),a("#eo_venue_Lng").val(c.item.venue_lng)),a("#venue_select").removeAttr("selected"),a("#venue_select").val(c.item.term_id)}},h=a("<input>").appendTo(f).val(e).addClass("ui-combobox-input").autocomplete(g).addClass("ui-widget-content ui-corner-left"),i=a.ui?a.ui.version||0:-1,j=eventorganiser.versionCompare(i,"1.10")>=0?"ui-autocomplete":"autocomplete";h.data(j)._renderItem=function(b,c){if(0==c.term_id)return a("<li></li>").data(j+"-item",c).append("<a>"+c.label+"</a>").appendTo(b);var d=[c.venue_address,c.venue_city,c.venue_state,c.venue_postcode,c.venue_country],e=a.grep(d,function(a){return a}).join(", "),f=eventorganiser.versionCompare(i,"1.10")>=0?"ui-autocomplete-item":"item.autocomplete";return a("<li></li>").data(f,c).append("<a>"+c.label+"</br> <span style='font-size: 0.8em'><em>"+e+"</span></em></a>").appendTo(b)};var k=a("<span>").addClass("eo-venue-combobox-buttons").appendTo(f);a("<a style='vertical-align: top;margin: 0px -1px;padding: 0px;height: 21px;'>").attr("title","Show All Items").appendTo(k).button({icons:{primary:"ui-icon-triangle-1-s"},text:!1}).removeClass("ui-corner-all").addClass("ui-corner-right ui-combobox-toggle ui-combobox-button").click(function(){return h.autocomplete("widget").is(":visible")?(h.autocomplete("close"),void 0):(a(this).blur(),h.autocomplete("search","").focus(),void 0)}),"event"==pagenow&&EO_Ajax_Event.current_user_can.manage_venues&&a("<a style='vertical-align: top;margin: 0px -1px;padding: 0px;height: 21px;'>").attr("title","Create New Venue").appendTo(k).button({icons:{primary:"ui-icon-plus"},text:!1}).removeClass("ui-corner-all").addClass("ui-corner-right add-new-venue ui-combobox-button").click(function(){a("#eventorganiser_event_detail tr.eo-add-new-venue").show(),a("tr.venue_row").show(),b={id:a("#venue_select").val(),label:a(".eo-venue-input input").val(),lat:a("#eo_venue_Lat").val(),lng:a("#eo_venue_Lng").val()},a("#venue_select").removeAttr("selected").val(0),a(".eo-venue-combobox-select").hide(),a(".eo-venue-input input").val(""),eo_initialize_map(0,0);var c=EO_Ajax_Event.location;c?(c=c.split("/"),c=c[c.length-1],eventorganiser_code_address(c)):map.setZoom(1),a(this).blur()})}}),a("#venue_select").combobox(),a(".eo-add-new-venue-cancel").click(function(c){c.preventDefault(),a(".eo-venue-combobox-select").show(),a(".eo-add-new-venue input").val(""),eo_initialize_map(b.lat,b.lng),a("#venue_select").val(b.id),a(".eo-venue-input input").val(b.label),a("#eventorganiser_event_detail tr.eo-add-new-venue").hide()})});
|
1 |
+
/*! event-organiser 2.4.0 2013-10-29 18:47 */
|
2 |
+
var eventorganiser=eventorganiser||{};eventorganiser.versionCompare=function(a,b){if("stringstring"!=typeof a+typeof b)return!1;for(var c=a.split("."),d=b.split("."),e=Math.max(c.length,d.length),f=0;e>f;f++){if(c[f]&&!d[f]&&parseInt(c[f],10)>0||parseInt(c[f],10)>parseInt(d[f],10))return 1;if(d[f]&&!c[f]&&parseInt(d[f],10)>0||parseInt(c[f],10)<parseInt(d[f],10))return-1}return 0},jQuery(document).ready(function(a){var b;eventOrganiserSchedulePicker.init({views:{start_date:"#eventorganiser_detail #from_date",start_time:"#HWSEvent_time",end_date:"#eventorganiser_detail #to_date",end_time:"#HWSEvent_time2",occurrence_picker:"#eo_occurrence_datepicker",occurrence_picker_toggle:".eo_occurrence_toggle",schedule_last_date:"#recend",schedule:"#HWSEventInput_Req",is_all_day:"#eo_allday",frequency:"#HWSEvent_freq",week_repeat:"#dayofweekrepeat",month_repeat:"#dayofmonthrepeat",recurrence_section:".reocurrence_row",include:"#eo_occurrence_includes",exclude:"#eo_occurrence_excludes",schedule_span:"#recpan",summary:"#event_summary"},format:EO_Ajax_Event.format,is24hour:Boolean(EO_Ajax_Event.is24hour),startday:EO_Ajax_Event.startday,schedule:window.eventOrganiserSchedule,locale:EO_Ajax_Event.locale,editable:"once"==a("#HWSEventInput_Req").val()||"custom"==a("#HWSEventInput_Req").val()}),a("#HWSEvent_rec").click(function(){window.eventOrganiserSchedulePicker.options.editable=a("#HWSEvent_rec").is(":checked"),window.eventOrganiserSchedulePicker.update_form()}),a.widget("ui.combobox",{_create:function(){var c=this.element.hide(),d=c.children(":selected"),e=d.val()?d.text():"",f=a("<span>").addClass("ui-combobox eo-venue-input").insertAfter(c),g={delay:0,minLength:0,source:function(b,c){a.getJSON(EO_Ajax_Event.ajaxurl+"?callback=?&action=eo-search-venue",b,function(b){var d=a.map(b,function(a){return a.label=a.name,a});c(d)})},select:function(b,c){a("tr.venue_row").length>0&&(0==c.item.term_id?(a("tr.venue_row").hide(),a("#eventorganiser_event_detail tr.eo-add-new-venue").hide()):(a("tr.venue_row").show(),a("#eventorganiser_event_detail tr.eo-add-new-venue").hide()),eo_initialize_map(c.item.venue_lat,c.item.venue_lng),a("#eo_venue_Lat").val(c.item.venue_lat),a("#eo_venue_Lng").val(c.item.venue_lng)),a("#venue_select").removeAttr("selected"),a("#venue_select").val(c.item.term_id)}},h=a("<input>").appendTo(f).val(e).addClass("ui-combobox-input").autocomplete(g).addClass("ui-widget-content ui-corner-left"),i=a.ui?a.ui.version||0:-1,j=eventorganiser.versionCompare(i,"1.10")>=0?"ui-autocomplete":"autocomplete";h.data(j)._renderItem=function(b,c){if(0==c.term_id)return a("<li></li>").data(j+"-item",c).append("<a>"+c.label+"</a>").appendTo(b);var d=[c.venue_address,c.venue_city,c.venue_state,c.venue_postcode,c.venue_country],e=a.grep(d,function(a){return a}).join(", "),f=eventorganiser.versionCompare(i,"1.10")>=0?"ui-autocomplete-item":"item.autocomplete";return a("<li></li>").data(f,c).append("<a>"+c.label+"</br> <span style='font-size: 0.8em'><em>"+e+"</span></em></a>").appendTo(b)};var k=a("<span>").addClass("eo-venue-combobox-buttons").appendTo(f);a("<a style='vertical-align: top;margin: 0px -1px;padding: 0px;height: 21px;'>").attr("title","Show All Items").appendTo(k).button({icons:{primary:"ui-icon-triangle-1-s"},text:!1}).removeClass("ui-corner-all").addClass("ui-corner-right ui-combobox-toggle ui-combobox-button").click(function(){return h.autocomplete("widget").is(":visible")?(h.autocomplete("close"),void 0):(a(this).blur(),h.autocomplete("search","").focus(),void 0)}),"event"==pagenow&&EO_Ajax_Event.current_user_can.manage_venues&&a("<a style='vertical-align: top;margin: 0px -1px;padding: 0px;height: 21px;'>").attr("title","Create New Venue").appendTo(k).button({icons:{primary:"ui-icon-plus"},text:!1}).removeClass("ui-corner-all").addClass("ui-corner-right add-new-venue ui-combobox-button").click(function(){a("#eventorganiser_event_detail tr.eo-add-new-venue").show(),a("tr.venue_row").show(),b={id:a("#venue_select").val(),label:a(".eo-venue-input input").val(),lat:a("#eo_venue_Lat").val(),lng:a("#eo_venue_Lng").val()},a("#venue_select").removeAttr("selected").val(0),a(".eo-venue-combobox-select").hide(),a(".eo-venue-input input").val(""),eo_initialize_map(0,0);var c=EO_Ajax_Event.location;c?(c=c.split("/"),c=c[c.length-1],eventorganiser_code_address(c)):map.setZoom(1),a(this).blur()})}}),a("#venue_select").combobox(),a(".eo-add-new-venue-cancel").click(function(c){c.preventDefault(),a(".eo-venue-combobox-select").show(),a(".eo-add-new-venue input").val(""),eo_initialize_map(b.lat,b.lng),a("#venue_select").val(b.id),a(".eo-venue-input input").val(b.label),a("#eventorganiser_event_detail tr.eo-add-new-venue").hide()})});
|
js/event-manager.min.js
CHANGED
@@ -2,4 +2,4 @@
|
|
2 |
* Module: WP-JS-Hooks
|
3 |
* Props: Carl Danley & 10up
|
4 |
*/
|
5 |
-
!function(a,b){"use strict";a.document;var c=function(){var a=this,c={actions:{},filters:{}};a.addAction=function(b,c,d){return e(b)===!1||"function"!=typeof c?a:(d=parseInt(d||10,10),f("actions",b,c,d),a)},a.doAction=function(){var b=Array.prototype.slice.call(arguments),c=b.shift();return e(c)===!1?a:(h("actions",c,b),a)},a.removeAction=function(b){return e(b)===!1?a:(d("actions",b),a)},a.addFilter=function(b,c,d){return e(b)===!1||"function"!=typeof c?a:(d=parseInt(d||10,10),f("filters",b,c,d),a)},a.applyFilters=function(){var b=Array.prototype.slice.call(arguments),c=b.shift();return e(c)===!1?a:h("filters",c,b)},a.applyFilter=function(){var b=Array.prototype.slice.call(arguments),c=b.shift();return e(c)===!1?a:h("filters",c,b)},a.removeFilter=function(b){return e(b)===!1?a:(d("filters",b),a)};var d=function(a,b){c[a][b]&&(c[a][b]=[])},e=function(a){if("string"!=typeof a)return!1;var b=a.replace(/^\s+|\s+$/i,"").split("."),c=b.shift();return b=b.join("."),""!==c&&""!==b},f=function(a,b,d,e){var f={callback:d,priority:e},h=c[a][b];h?(h.push(f),h=g(h)):h=[f],c[a][b]=h},g=function(a){for(var b,c,d,e=1,f=a.length;f>e;e++){for(b=a[e],c=e;(d=a[c-1])&&d.priority>b.priority;)a[c]=a[c-1],--c;a[c]=b}return a},h=function(a,d,e){var f=c[a][d];if("undefined"==typeof f)return"filters"===a?e[0]:!1;for(var g=0,h=f.length;h>g;g++)"actions"===a?f[g].callback.apply(b,e):e[0]=f[g].callback.apply(b,e);return"actions"===a?!0:e[0]}};a.wp=a.wp||{},a.wp.hooks=new c}(window);
|
2 |
* Module: WP-JS-Hooks
|
3 |
* Props: Carl Danley & 10up
|
4 |
*/
|
5 |
+
!function(a,b){"use strict";a.document;var c=function(){var a=this,c={actions:{},filters:{}};a.addAction=function(b,c,d){return e(b)===!1||"function"!=typeof c?a:(d=parseInt(d||10,10),f("actions",b,c,d),a)},a.doAction=function(){var b=Array.prototype.slice.call(arguments),c=b.shift();return e(c)===!1?a:(h("actions",c,b),a)},a.removeAction=function(b){return e(b)===!1?a:(d("actions",b),a)},a.addFilter=function(b,c,d){return e(b)===!1||"function"!=typeof c?a:(d=parseInt(d||10,10),f("filters",b,c,d),a)},a.applyFilters=function(){var b=Array.prototype.slice.call(arguments),c=b.shift();return e(c)===!1?a:h("filters",c,b)},a.applyFilter=function(){var b=Array.prototype.slice.call(arguments),c=b.shift();return e(c)===!1?a:h("filters",c,b)},a.removeFilter=function(b){return e(b)===!1?a:(d("filters",b),a)};var d=function(a,b){c[a][b]&&(c[a][b]=[])},e=function(a){if("string"!=typeof a)return!1;var b=a.replace(/^\s+|\s+$/i,"").split("."),c=b.shift();return b=b.join("."),""!==c&&""!==b},f=function(a,b,d,e){var f={callback:d,priority:e},h=c[a][b];h?(h.push(f),h=g(h)):h=[f],c[a][b]=h},g=function(a){for(var b,c,d,e=1,f=a.length;f>e;e++){for(b=a[e],c=e;(d=a[c-1])&&d.priority>b.priority;)a[c]=a[c-1],--c;a[c]=b}return a},h=function(a,d,e){var f=c[a][d];if("undefined"==typeof f)return"filters"===a?e[0]:!1;for(var g=0,h=f.length;h>g;g++)"actions"===a?f[g].callback.apply(b,e):e[0]=f[g].callback.apply(b,e);return"actions"===a?!0:e[0]}};a.wp=a.wp||{},a.wp.hooks=new c}(window);
|
js/event.js
CHANGED
@@ -114,8 +114,8 @@ function eo_generate_dates_by_schedule_rule( rule, month_start,month_end ){
|
|
114 |
var matches = rule.schedule_meta.match(/BYDAY=(\d+)(MO|TU|WE|TH|FR|SA|SU)/);
|
115 |
var n = parseInt( matches[1], 10 ) -1; //0=>first,1=>second,...,4=>last
|
116 |
var occurrence_day = rule.start.getDay(), occurence_date;
|
117 |
-
|
118 |
-
if (n >=
|
119 |
//Last day
|
120 |
var month_end_day = month_end.getDay();
|
121 |
occurence_date = month_end.getDate() + (occurrence_day - month_end_day - 7) % 7;
|
@@ -298,6 +298,7 @@ window.eventOrganiserSchedulePicker = {
|
|
298 |
|
299 |
$('html').click(function() {
|
300 |
dp.hide();
|
|
|
301 |
});
|
302 |
}
|
303 |
|
114 |
var matches = rule.schedule_meta.match(/BYDAY=(\d+)(MO|TU|WE|TH|FR|SA|SU)/);
|
115 |
var n = parseInt( matches[1], 10 ) -1; //0=>first,1=>second,...,4=>last
|
116 |
var occurrence_day = rule.start.getDay(), occurence_date;
|
117 |
+
|
118 |
+
if (n >= 4) {
|
119 |
//Last day
|
120 |
var month_end_day = month_end.getDay();
|
121 |
occurence_date = month_end.getDate() + (occurrence_day - month_end_day - 7) % 7;
|
298 |
|
299 |
$('html').click(function() {
|
300 |
dp.hide();
|
301 |
+
$(views.occurrence_picker_toggle).val(locale.showDates);
|
302 |
});
|
303 |
}
|
304 |
|
js/event.min.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
/*! event-organiser 2.
|
2 |
-
var eo_include_dates,eo_exclude_dates,eo_viewing_month;!function(a){function b(b,c,d){var e,f,g=new Array("SU","MO","TU","WE","TH","FR","SA"),h=[];switch(b.schedule){case"once":case"custom":var i=a.datepicker.formatDate("yy-mm-dd",b.start);return h.push(i),h;case"daily":b.start<c?(e=Math.abs((c-b.start)/864e5)-1,e%=b.frequency):e=parseInt(b.start.getDate(),10);var j=b.frequency,k=[],l=new Date(c);l.setDate(c.getDate()+(e-1)),k.push(l);break;case"weekly":var m=c.getDay();k=[],a.each(b.schedule_meta,function(a,d){a=g.indexOf(d),l=new Date(b.start),l.setDate(b.start.getDate()+(a-b.start.getDay()+7)%7),c>l&&(e=Math.abs((c-b.start)/864e5),e-=e%(7*b.frequency),l.setDate(l.getDate()+e)),k.push(l)}),j=7*b.frequency;break;case"monthly":var n=12*(c.getFullYear()-b.start.getFullYear())+(c.getMonth()-b.start.getMonth());if(0!==n%b.frequency)return;if(b.schedule_meta.match(/BYMONTHDAY=(\d+)/)){var o=b.start.getDate(),p=d.getDate();p>=o&&(f=new Date(c.getFullYear(),c.getMonth(),o))}else{var q,r=b.schedule_meta.match(/BYDAY=(\d+)(MO|TU|WE|TH|FR|SA|SU)/),s=parseInt(r[1],10)-1,t=b.start.getDay();if(s>=5){var u=d.getDay();q=d.getDate()+(t-u-7)%7}else{m=c.getDay();var v=(t-m+7)%7;q=v+7*s+1}f=new Date(c),f.setDate(q)}return f<=b.schedule_last&&(i=a.datepicker.formatDate("yy-mm-dd",f),h.push(i)),h;case"yearly":var w=c.getFullYear()-b.start.getFullYear();if(0!==w%b.frequency)return h;var x=new Date(c.getFullYear(),b.start.getMonth(),b.start.getDate());return c.getMonth()==b.start.getMonth()&&x.getMonth()==b.start.getMonth()&&(f=new Date(b.start),f.setYear(c.getFullYear()),f<=b.schedule_last&&(i=a.datepicker.formatDate("yy-mm-dd",f),h.push(i))),h;default:return h}for(var y in k)for(f=new Date(k[y]);d>=f&&f<=b.schedule_last;)i=a.datepicker.formatDate("yy-mm-dd",f),h.push(i),f.setDate(f.getDate()+j);return h}Array.prototype.indexOf||(Array.prototype.indexOf=function(a){var b=this.length,c=Number(arguments[1])||0;for(c=0>c?Math.ceil(c):Math.floor(c),0>c&&(c+=b);b>c;c++)if(c in this&&this[c]===a)return c;return-1}),Date.prototype.eoGetOrdinal=function(){var a=this.getDate();switch(a){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th"}},window.eventOrganiserSchedulePicker={init:function(b){var c=this;this.options=b,this.schedule=b.schedule,this.set_up_datepickers(),this.set_up_timepickers(),a(".event-date :input").change(function(){c.update_schedule(),c.update_form(),a(this).hasClass("eo-all-day-toggle")||c.update_occurrencepicker_rules()}),this.update_schedule(),this.update_form();var d=new Date;eo_viewing_month=[d.getFullYear(),d.getMonth()+1],this.schedule.generate_dates_by_rule(d.getFullYear(),d.getMonth()+1,{})},set_up_datepickers:function(){var b=this,c=this.options.views,d=this.options.locale;if(a(c.start_date).data("eo-datepicker","start"),a(c.end_date).data("eo-datepicker","end"),a(c.is_all_day).addClass("eo-all-day-toggle"),a(c.schedule_last_date))var e=a(c.schedule_last_date).datepicker({dateFormat:this.options.format,changeMonth:!0,changeYear:!0,monthNamesShort:d.monthAbbrev,dayNamesMin:d.dayAbbrev,firstDay:parseInt(this.options.startday,10)}).data("eo-datepicker","schedule_last");var f=a(c.start_date+", "+c.end_date).datepicker({dateFormat:this.options.format,changeMonth:!0,changeYear:!0,monthNamesShort:d.monthAbbrev,dayNamesMin:d.dayAbbrev,firstDay:parseInt(this.options.startday,10),onSelect:function(c){var d="start"==a(this).data("eo-datepicker")?"minDate":"maxDate",g=a(this).data("datepicker"),h=a.datepicker.parseDate(g.settings.dateFormat||a.datepicker._defaults.dateFormat,c,g.settings);f.not(this).datepicker("option",d,h),"from_date"==this.id&&e.datepicker("option","minDate",h),b.update_schedule(),b.update_occurrencepicker_rules(),b.update_form()}}),g=a(c.occurrence_picker);g.length>0&&(g.datepicker({dateFormat:"yy-mm-dd",changeMonth:!0,changeYear:!0,monthNamesShort:d.monthAbbrev,dayNamesMin:d.dayAbbrev,firstDay:parseInt(this.options.startday,10),onSelect:function(b){eventOrganiserSchedule.add_or_remove_date(b),a(eventOrganiserSchedulePicker.options.views.include).val(eventOrganiserSchedule.include.join(",\r\n")),a(eventOrganiserSchedulePicker.options.views.exclude).val(eventOrganiserSchedule.exclude.join(",\r\n"))},beforeShowDay:function(b){var c=a.datepicker.formatDate("yy-mm-dd",b),d=eventOrganiserSchedule.is_date_eventful(c);return d[0]?[!0,"ui-state-active",""]:[!0,"ui-state-disabled",""]},onChangeMonthYear:eventOrganiserSchedule.generate_dates_by_rule}).hide().find(".ui-datepicker-inline").click(function(a){a||(a=window.event),a.cancelBubble=!0,a.stopPropagation&&a.stopPropagation()}),a("html").click(function(){g.hide()})),a(c.occurrence_picker_toggle).click(function(b){b.preventDefault(),b.stopPropagation(),g.toggle(),g.is(":visible")?(a(this).val(d.hideDates),a(c.occurrence_picker).datepicker("refresh")):a(this).val(d.showDates)})},update_occurrencepicker_rules:function(){eo_exclude_dates=[],eo_include_dates=[],this.schedule.generate_dates_by_rule(eo_viewing_month[0],eo_viewing_month[1],{}),a(this.options.views.occurrence_picker).datepicker("refresh")},set_up_timepickers:function(){var b=this.options,c=this.options.views;a(c.start_time+", "+c.end_time).timepicker({showPeriodLabels:!b.is24hour,showPeriod:!this.options.is24hour,showLeadingZero:b.is24hour,periodSeparator:"",amPmText:b.locale.meridian,hourText:b.locale.hour,minuteText:b.locale.minute}).addClass("eo-time-picker")},update_schedule:function(){var b=new Array("SU","MO","TU","WE","TH","FR","SA"),c=this.options.views,d={schedule:a(c.schedule).val(),frequency:parseInt(a(c.frequency).val(),10),schedule_last:a(c.schedule_last_date).datepicker("getDate"),start:a(c.start_date).datepicker("getDate"),end:a(c.end_date).datepicker("getDate"),is_all_day:a(c.is_all_day).attr("checked"),include:a(c.include).length>0?a(c.include).val().split(","):[],exclude:a(c.exclude).length>0?a(c.exclude).val().split(","):[]};if("weekly"==d.schedule){if(d.schedule_meta=[],0===a(c.week_repeat+" :checkbox:checked").length){var e=d.start.getDay();a(c.week_repeat+" :checkbox[value='"+b[e]+"']").attr("checked",!0)}a(c.week_repeat+" :checkbox:checked").each(function(){d.schedule_meta.push(a(this).val())})}else if("monthly"==d.schedule)if("BYMONTHDAY="==a(c.month_repeat+" :radio:checked").val())d.schedule_meta="BYMONTHDAY="+d.start.getDate();else{var f=d.start.getDay()%7,g=parseInt(Math.floor((d.start.getDate()-1)/7),10);d.schedule_meta="BYDAY="+(g+1)+b[f]}this.schedule=eventOrganiserSchedule.init(d),eo_exclude_dates=d.exclude,eo_include_dates=d.include},update_form:function(){var b=this.options.views,c=this.options.locale,d=this.schedule,e=700;switch(a(".event-date :input").attr("disabled",!this.options.editable).toggleClass("ui-state-disabled",!this.options.editable),this.options.editable&&a(b.start_time+", "+b.end_time).attr("disabled",d.is_all_day).toggleClass("ui-state-disabled",d.is_all_day),"once"==d.schedule||"custom"==d.schedule?(a(b.recurrence_section+" :input").attr("disabled",!0),a(b.recurrence_section).hide()):(a(b.recurrence_section+" :input").attr("disabled",!1),a(b.recurrence_section).fadeIn(e)),d.schedule){case"once":case"custom":a(d.frequency).val("1"),a(b.month_repeat+", "+b.week_repeat).show();break;case"weekly":d.frequency>1?a(b.schedule_span).text(c.weeks):a(b.schedule_span).text(c.week),a(b.week_repeat).fadeIn(e),a(b.week_repeat+" :input").attr("disabled",!1),a(b.month_repeat).hide(),a(b.month_repeat+" :input").attr("disabled",!0);break;case"monthly":d.frequency>1?a(b.schedule_span).text(c.months):a(b.schedule_span).text(c.month),a(b.month_repeat).fadeIn(e),a(b.month_repeat+" :input").attr("disabled",!1),a(b.week_repeat).hide(),a(b.week_repeat+" :input").attr("disabled",!0);break;case"daily":d.frequency>1?a(b.schedule_span).text(c.days):a(b.schedule_span).text(c.day),a(b.week_repeat+", "+b.month_repeat).hide(),a(b.week_repeat+" :input, "+b.month_repeat+" :input").attr("disabled",!0);break;case"yearly":d.frequency>1?a(b.schedule_span).text(c.years):a(b.schedule_span).text(c.year),a(b.week_repeat+", "+b.month_repeat).hide(),a(b.week_repeat+" :input, "+b.month_repeat+" :input").attr("disabled",!0)}null===a("#venue_select").val()&&a("tr.venue_row").hide(),a(b.summary).html(d.generate_summary(c))}},eventOrganiserSchedule={self:this,init:function(b){var c={schedule:"once",frequency:1,schedule_last:new Date,start:new Date,end:new Date,is_all_day:!1,dates_by_rule:[]};b=a.extend({},c,b);for(var d in b)this[d]=b[d];return this},generate_dates_by_rule:function(a,c){var d=new Date(a,c-1,1),e=new Date(a,c,1),f=new Date(e-1);eventOrganiserSchedule.schedule_last<d||eventOrganiserSchedule.start>f||(eventOrganiserSchedule.dates_by_rule=b(eventOrganiserSchedule,d,f))},generate_summary:function(b){var c=b.weekDay,d=b.summary+" ",e={monthNamesShort:b.monthAbbrev,dayNamesMin:b.dayAbbrev,monthNames:b.monthNames},f=this.schedule,g=new Array("SU","MO","TU","WE","TH","FR","SA");switch(f){case"once":return"This event will be a one-time event";case"custom":case"daily":d+=this.frequency>1?sprintf(b.dayPlural,this.frequency):b.daySingle;break;case"weekly":d+=this.frequency>1?sprintf(b.weekPlural,this.frequency):b.weekSingle;var h=a.map(this.schedule_meta,function(a){return c[g.indexOf(a)]});d+=" "+h.join(", ");break;case"monthly":if(d+=this.frequency>1?sprintf(b.monthPlural,this.frequency):b.monthSingle,this.schedule_meta.match(/BYMONTHDAY=(\d+)/))d=d+" "+this.start.getDate()+this.start.eoGetOrdinal();else{var i=this.schedule_meta.match(/BYDAY=(\d+)(MO|TU|WE|TH|FR|SA|SU)/),j=parseInt(i[1],10)-1;d=d+" "+b.occurrence[j]+" "+c[g.indexOf(i[2])]}break;case"yearly":d+=this.frequency>1?sprintf(b.yearPlural,this.frequency):b.yearSingle,d=d+" "+a.datepicker.formatDate("MM d",this.start,e)+this.start.eoGetOrdinal()}return null!==this.schedule_last&&(d=d+" "+b.until+" "+a.datepicker.formatDate("MM d'"+this.schedule_last.eoGetOrdinal()+"' yy",this.schedule_last,e)),d},is_date_eventful:function(b){var c=a.inArray(b,eventOrganiserSchedule.dates_by_rule);if(c>-1){var d=a.inArray(b,eventOrganiserSchedule.exclude);return d>-1?[!1,d]:[!0,-1]}var e=a.inArray(b,eventOrganiserSchedule.include);return e>-1?[!0,e]:[!1,-1]},add_or_remove_date:function(b){var c,d=eventOrganiserSchedule.is_date_eventful(b);d[0]?(c=d[1],c>-1?eventOrganiserSchedule.include.splice(c,1):a.inArray(b,eventOrganiserSchedule.exclude)<0&&eventOrganiserSchedule.exclude.push(b)):(c=d[1],c>-1?eventOrganiserSchedule.exclude.splice(c,1):a.inArray(b,eventOrganiserSchedule.include)<0&&eventOrganiserSchedule.include.push(b)),eo_exclude_dates=eventOrganiserSchedule.exclude,eo_include_dates=eventOrganiserSchedule.include}}}(jQuery),function(a){function b(a){return Object.prototype.toString.call(a).slice(8,-1).toLowerCase()}function c(a,b){for(var c=[];b>0;c[--b]=a);return c.join("")}var d=function(){return d.cache.hasOwnProperty(arguments[0])||(d.cache[arguments[0]]=d.parse(arguments[0])),d.format.call(null,d.cache[arguments[0]],arguments)};d.format=function(a,e){var f,g,h,i,j,k,l,m=1,n=a.length,o="",p=[];for(g=0;n>g;g++)if(o=b(a[g]),"string"===o)p.push(a[g]);else if("array"===o){if(i=a[g],i[2])for(f=e[m],h=0;h<i[2].length;h++){if(!f.hasOwnProperty(i[2][h]))throw d('[sprintf] property "%s" does not exist',i[2][h]);f=f[i[2][h]]}else f=i[1]?e[i[1]]:e[m++];if(/[^s]/.test(i[8])&&"number"!=b(f))throw d("[sprintf] expecting number but found %s",b(f));switch(i[8]){case"b":f=f.toString(2);break;case"c":f=String.fromCharCode(f);break;case"d":f=parseInt(f,10);break;case"e":f=i[7]?f.toExponential(i[7]):f.toExponential();break;case"f":f=i[7]?parseFloat(f).toFixed(i[7]):parseFloat(f);break;case"o":f=f.toString(8);break;case"s":f=(f=String(f))&&i[7]?f.substring(0,i[7]):f;break;case"u":f>>>=0;break;case"x":f=f.toString(16);break;case"X":f=f.toString(16).toUpperCase()}f=/[def]/.test(i[8])&&i[3]&&f>=0?"+"+f:f,k=i[4]?"0"==i[4]?"0":i[4].charAt(1):" ",l=i[6]-String(f).length,j=i[6]?c(k,l):"",p.push(i[5]?f+j:j+f)}return p.join("")},d.cache={},d.parse=function(a){for(var b=a,c=[],d=[],e=0;b;){if(null!==(c=/^[^\x25]+/.exec(b)))d.push(c[0]);else if(null!==(c=/^\x25{2}/.exec(b)))d.push("%");else{if(null===(c=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(b)))throw"[sprintf] huh?";if(c[2]){e|=1;var f=[],g=c[2],h=[];if(null===(h=/^([a-z_][a-z_\d]*)/i.exec(g)))throw"[sprintf] huh?";for(f.push(h[1]);""!==(g=g.substring(h[0].length));)if(null!==(h=/^\.([a-z_][a-z_\d]*)/i.exec(g)))f.push(h[1]);else{if(null===(h=/^\[(\d+)\]/.exec(g)))throw"[sprintf] huh?";f.push(h[1])}c[2]=f}else e|=2;if(3===e)throw"[sprintf] mixing positional and named placeholders is not (yet) supported";d.push(c)}b=b.substring(c[0].length)}return d};var e=function(a,b,c){return c=b.slice(0),c.splice(0,0,a),d.apply(null,c)};a.sprintf=d,a.vsprintf=e}("undefined"!=typeof exports?exports:window);
|
1 |
+
/*! event-organiser 2.4.0 2013-10-29 18:47 */
|
2 |
+
var eo_include_dates,eo_exclude_dates,eo_viewing_month;!function(a){function b(b,c,d){var e,f,g=new Array("SU","MO","TU","WE","TH","FR","SA"),h=[];switch(b.schedule){case"once":case"custom":var i=a.datepicker.formatDate("yy-mm-dd",b.start);return h.push(i),h;case"daily":b.start<c?(e=Math.abs((c-b.start)/864e5)-1,e%=b.frequency):e=parseInt(b.start.getDate(),10);var j=b.frequency,k=[],l=new Date(c);l.setDate(c.getDate()+(e-1)),k.push(l);break;case"weekly":var m=c.getDay();k=[],a.each(b.schedule_meta,function(a,d){a=g.indexOf(d),l=new Date(b.start),l.setDate(b.start.getDate()+(a-b.start.getDay()+7)%7),c>l&&(e=Math.abs((c-b.start)/864e5),e-=e%(7*b.frequency),l.setDate(l.getDate()+e)),k.push(l)}),j=7*b.frequency;break;case"monthly":var n=12*(c.getFullYear()-b.start.getFullYear())+(c.getMonth()-b.start.getMonth());if(0!==n%b.frequency)return;if(b.schedule_meta.match(/BYMONTHDAY=(\d+)/)){var o=b.start.getDate(),p=d.getDate();p>=o&&(f=new Date(c.getFullYear(),c.getMonth(),o))}else{var q,r=b.schedule_meta.match(/BYDAY=(\d+)(MO|TU|WE|TH|FR|SA|SU)/),s=parseInt(r[1],10)-1,t=b.start.getDay();if(s>=4){var u=d.getDay();q=d.getDate()+(t-u-7)%7}else{m=c.getDay();var v=(t-m+7)%7;q=v+7*s+1}f=new Date(c),f.setDate(q)}return f<=b.schedule_last&&(i=a.datepicker.formatDate("yy-mm-dd",f),h.push(i)),h;case"yearly":var w=c.getFullYear()-b.start.getFullYear();if(0!==w%b.frequency)return h;var x=new Date(c.getFullYear(),b.start.getMonth(),b.start.getDate());return c.getMonth()==b.start.getMonth()&&x.getMonth()==b.start.getMonth()&&(f=new Date(b.start),f.setYear(c.getFullYear()),f<=b.schedule_last&&(i=a.datepicker.formatDate("yy-mm-dd",f),h.push(i))),h;default:return h}for(var y in k)for(f=new Date(k[y]);d>=f&&f<=b.schedule_last;)i=a.datepicker.formatDate("yy-mm-dd",f),h.push(i),f.setDate(f.getDate()+j);return h}Array.prototype.indexOf||(Array.prototype.indexOf=function(a){var b=this.length,c=Number(arguments[1])||0;for(c=0>c?Math.ceil(c):Math.floor(c),0>c&&(c+=b);b>c;c++)if(c in this&&this[c]===a)return c;return-1}),Date.prototype.eoGetOrdinal=function(){var a=this.getDate();switch(a){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th"}},window.eventOrganiserSchedulePicker={init:function(b){var c=this;this.options=b,this.schedule=b.schedule,this.set_up_datepickers(),this.set_up_timepickers(),a(".event-date :input").change(function(){c.update_schedule(),c.update_form(),a(this).hasClass("eo-all-day-toggle")||c.update_occurrencepicker_rules()}),this.update_schedule(),this.update_form();var d=new Date;eo_viewing_month=[d.getFullYear(),d.getMonth()+1],this.schedule.generate_dates_by_rule(d.getFullYear(),d.getMonth()+1,{})},set_up_datepickers:function(){var b=this,c=this.options.views,d=this.options.locale;if(a(c.start_date).data("eo-datepicker","start"),a(c.end_date).data("eo-datepicker","end"),a(c.is_all_day).addClass("eo-all-day-toggle"),a(c.schedule_last_date))var e=a(c.schedule_last_date).datepicker({dateFormat:this.options.format,changeMonth:!0,changeYear:!0,monthNamesShort:d.monthAbbrev,dayNamesMin:d.dayAbbrev,firstDay:parseInt(this.options.startday,10)}).data("eo-datepicker","schedule_last");var f=a(c.start_date+", "+c.end_date).datepicker({dateFormat:this.options.format,changeMonth:!0,changeYear:!0,monthNamesShort:d.monthAbbrev,dayNamesMin:d.dayAbbrev,firstDay:parseInt(this.options.startday,10),onSelect:function(c){var d="start"==a(this).data("eo-datepicker")?"minDate":"maxDate",g=a(this).data("datepicker"),h=a.datepicker.parseDate(g.settings.dateFormat||a.datepicker._defaults.dateFormat,c,g.settings);f.not(this).datepicker("option",d,h),"from_date"==this.id&&e.datepicker("option","minDate",h),b.update_schedule(),b.update_occurrencepicker_rules(),b.update_form()}}),g=a(c.occurrence_picker);g.length>0&&(g.datepicker({dateFormat:"yy-mm-dd",changeMonth:!0,changeYear:!0,monthNamesShort:d.monthAbbrev,dayNamesMin:d.dayAbbrev,firstDay:parseInt(this.options.startday,10),onSelect:function(b){eventOrganiserSchedule.add_or_remove_date(b),a(eventOrganiserSchedulePicker.options.views.include).val(eventOrganiserSchedule.include.join(",\r\n")),a(eventOrganiserSchedulePicker.options.views.exclude).val(eventOrganiserSchedule.exclude.join(",\r\n"))},beforeShowDay:function(b){var c=a.datepicker.formatDate("yy-mm-dd",b),d=eventOrganiserSchedule.is_date_eventful(c);return d[0]?[!0,"ui-state-active",""]:[!0,"ui-state-disabled",""]},onChangeMonthYear:eventOrganiserSchedule.generate_dates_by_rule}).hide().find(".ui-datepicker-inline").click(function(a){a||(a=window.event),a.cancelBubble=!0,a.stopPropagation&&a.stopPropagation()}),a("html").click(function(){g.hide(),a(c.occurrence_picker_toggle).val(d.showDates)})),a(c.occurrence_picker_toggle).click(function(b){b.preventDefault(),b.stopPropagation(),g.toggle(),g.is(":visible")?(a(this).val(d.hideDates),a(c.occurrence_picker).datepicker("refresh")):a(this).val(d.showDates)})},update_occurrencepicker_rules:function(){eo_exclude_dates=[],eo_include_dates=[],this.schedule.generate_dates_by_rule(eo_viewing_month[0],eo_viewing_month[1],{}),a(this.options.views.occurrence_picker).datepicker("refresh")},set_up_timepickers:function(){var b=this.options,c=this.options.views;a(c.start_time+", "+c.end_time).timepicker({showPeriodLabels:!b.is24hour,showPeriod:!this.options.is24hour,showLeadingZero:b.is24hour,periodSeparator:"",amPmText:b.locale.meridian,hourText:b.locale.hour,minuteText:b.locale.minute}).addClass("eo-time-picker")},update_schedule:function(){var b=new Array("SU","MO","TU","WE","TH","FR","SA"),c=this.options.views,d={schedule:a(c.schedule).val(),frequency:parseInt(a(c.frequency).val(),10),schedule_last:a(c.schedule_last_date).datepicker("getDate"),start:a(c.start_date).datepicker("getDate"),end:a(c.end_date).datepicker("getDate"),is_all_day:a(c.is_all_day).attr("checked"),include:a(c.include).length>0?a(c.include).val().split(","):[],exclude:a(c.exclude).length>0?a(c.exclude).val().split(","):[]};if("weekly"==d.schedule){if(d.schedule_meta=[],0===a(c.week_repeat+" :checkbox:checked").length){var e=d.start.getDay();a(c.week_repeat+" :checkbox[value='"+b[e]+"']").attr("checked",!0)}a(c.week_repeat+" :checkbox:checked").each(function(){d.schedule_meta.push(a(this).val())})}else if("monthly"==d.schedule)if("BYMONTHDAY="==a(c.month_repeat+" :radio:checked").val())d.schedule_meta="BYMONTHDAY="+d.start.getDate();else{var f=d.start.getDay()%7,g=parseInt(Math.floor((d.start.getDate()-1)/7),10);d.schedule_meta="BYDAY="+(g+1)+b[f]}this.schedule=eventOrganiserSchedule.init(d),eo_exclude_dates=d.exclude,eo_include_dates=d.include},update_form:function(){var b=this.options.views,c=this.options.locale,d=this.schedule,e=700;switch(a(".event-date :input").attr("disabled",!this.options.editable).toggleClass("ui-state-disabled",!this.options.editable),this.options.editable&&a(b.start_time+", "+b.end_time).attr("disabled",d.is_all_day).toggleClass("ui-state-disabled",d.is_all_day),"once"==d.schedule||"custom"==d.schedule?(a(b.recurrence_section+" :input").attr("disabled",!0),a(b.recurrence_section).hide()):(a(b.recurrence_section+" :input").attr("disabled",!1),a(b.recurrence_section).fadeIn(e)),d.schedule){case"once":case"custom":a(d.frequency).val("1"),a(b.month_repeat+", "+b.week_repeat).show();break;case"weekly":d.frequency>1?a(b.schedule_span).text(c.weeks):a(b.schedule_span).text(c.week),a(b.week_repeat).fadeIn(e),a(b.week_repeat+" :input").attr("disabled",!1),a(b.month_repeat).hide(),a(b.month_repeat+" :input").attr("disabled",!0);break;case"monthly":d.frequency>1?a(b.schedule_span).text(c.months):a(b.schedule_span).text(c.month),a(b.month_repeat).fadeIn(e),a(b.month_repeat+" :input").attr("disabled",!1),a(b.week_repeat).hide(),a(b.week_repeat+" :input").attr("disabled",!0);break;case"daily":d.frequency>1?a(b.schedule_span).text(c.days):a(b.schedule_span).text(c.day),a(b.week_repeat+", "+b.month_repeat).hide(),a(b.week_repeat+" :input, "+b.month_repeat+" :input").attr("disabled",!0);break;case"yearly":d.frequency>1?a(b.schedule_span).text(c.years):a(b.schedule_span).text(c.year),a(b.week_repeat+", "+b.month_repeat).hide(),a(b.week_repeat+" :input, "+b.month_repeat+" :input").attr("disabled",!0)}null===a("#venue_select").val()&&a("tr.venue_row").hide(),a(b.summary).html(d.generate_summary(c))}},eventOrganiserSchedule={self:this,init:function(b){var c={schedule:"once",frequency:1,schedule_last:new Date,start:new Date,end:new Date,is_all_day:!1,dates_by_rule:[]};b=a.extend({},c,b);for(var d in b)this[d]=b[d];return this},generate_dates_by_rule:function(a,c){var d=new Date(a,c-1,1),e=new Date(a,c,1),f=new Date(e-1);eventOrganiserSchedule.schedule_last<d||eventOrganiserSchedule.start>f||(eventOrganiserSchedule.dates_by_rule=b(eventOrganiserSchedule,d,f))},generate_summary:function(b){var c=b.weekDay,d=b.summary+" ",e={monthNamesShort:b.monthAbbrev,dayNamesMin:b.dayAbbrev,monthNames:b.monthNames},f=this.schedule,g=new Array("SU","MO","TU","WE","TH","FR","SA");switch(f){case"once":return"This event will be a one-time event";case"custom":case"daily":d+=this.frequency>1?sprintf(b.dayPlural,this.frequency):b.daySingle;break;case"weekly":d+=this.frequency>1?sprintf(b.weekPlural,this.frequency):b.weekSingle;var h=a.map(this.schedule_meta,function(a){return c[g.indexOf(a)]});d+=" "+h.join(", ");break;case"monthly":if(d+=this.frequency>1?sprintf(b.monthPlural,this.frequency):b.monthSingle,this.schedule_meta.match(/BYMONTHDAY=(\d+)/))d=d+" "+this.start.getDate()+this.start.eoGetOrdinal();else{var i=this.schedule_meta.match(/BYDAY=(\d+)(MO|TU|WE|TH|FR|SA|SU)/),j=parseInt(i[1],10)-1;d=d+" "+b.occurrence[j]+" "+c[g.indexOf(i[2])]}break;case"yearly":d+=this.frequency>1?sprintf(b.yearPlural,this.frequency):b.yearSingle,d=d+" "+a.datepicker.formatDate("MM d",this.start,e)+this.start.eoGetOrdinal()}return null!==this.schedule_last&&(d=d+" "+b.until+" "+a.datepicker.formatDate("MM d'"+this.schedule_last.eoGetOrdinal()+"' yy",this.schedule_last,e)),d},is_date_eventful:function(b){var c=a.inArray(b,eventOrganiserSchedule.dates_by_rule);if(c>-1){var d=a.inArray(b,eventOrganiserSchedule.exclude);return d>-1?[!1,d]:[!0,-1]}var e=a.inArray(b,eventOrganiserSchedule.include);return e>-1?[!0,e]:[!1,-1]},add_or_remove_date:function(b){var c,d=eventOrganiserSchedule.is_date_eventful(b);d[0]?(c=d[1],c>-1?eventOrganiserSchedule.include.splice(c,1):a.inArray(b,eventOrganiserSchedule.exclude)<0&&eventOrganiserSchedule.exclude.push(b)):(c=d[1],c>-1?eventOrganiserSchedule.exclude.splice(c,1):a.inArray(b,eventOrganiserSchedule.include)<0&&eventOrganiserSchedule.include.push(b)),eo_exclude_dates=eventOrganiserSchedule.exclude,eo_include_dates=eventOrganiserSchedule.include}}}(jQuery),function(a){function b(a){return Object.prototype.toString.call(a).slice(8,-1).toLowerCase()}function c(a,b){for(var c=[];b>0;c[--b]=a);return c.join("")}var d=function(){return d.cache.hasOwnProperty(arguments[0])||(d.cache[arguments[0]]=d.parse(arguments[0])),d.format.call(null,d.cache[arguments[0]],arguments)};d.format=function(a,e){var f,g,h,i,j,k,l,m=1,n=a.length,o="",p=[];for(g=0;n>g;g++)if(o=b(a[g]),"string"===o)p.push(a[g]);else if("array"===o){if(i=a[g],i[2])for(f=e[m],h=0;h<i[2].length;h++){if(!f.hasOwnProperty(i[2][h]))throw d('[sprintf] property "%s" does not exist',i[2][h]);f=f[i[2][h]]}else f=i[1]?e[i[1]]:e[m++];if(/[^s]/.test(i[8])&&"number"!=b(f))throw d("[sprintf] expecting number but found %s",b(f));switch(i[8]){case"b":f=f.toString(2);break;case"c":f=String.fromCharCode(f);break;case"d":f=parseInt(f,10);break;case"e":f=i[7]?f.toExponential(i[7]):f.toExponential();break;case"f":f=i[7]?parseFloat(f).toFixed(i[7]):parseFloat(f);break;case"o":f=f.toString(8);break;case"s":f=(f=String(f))&&i[7]?f.substring(0,i[7]):f;break;case"u":f>>>=0;break;case"x":f=f.toString(16);break;case"X":f=f.toString(16).toUpperCase()}f=/[def]/.test(i[8])&&i[3]&&f>=0?"+"+f:f,k=i[4]?"0"==i[4]?"0":i[4].charAt(1):" ",l=i[6]-String(f).length,j=i[6]?c(k,l):"",p.push(i[5]?f+j:j+f)}return p.join("")},d.cache={},d.parse=function(a){for(var b=a,c=[],d=[],e=0;b;){if(null!==(c=/^[^\x25]+/.exec(b)))d.push(c[0]);else if(null!==(c=/^\x25{2}/.exec(b)))d.push("%");else{if(null===(c=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(b)))throw"[sprintf] huh?";if(c[2]){e|=1;var f=[],g=c[2],h=[];if(null===(h=/^([a-z_][a-z_\d]*)/i.exec(g)))throw"[sprintf] huh?";for(f.push(h[1]);""!==(g=g.substring(h[0].length));)if(null!==(h=/^\.([a-z_][a-z_\d]*)/i.exec(g)))f.push(h[1]);else{if(null===(h=/^\[(\d+)\]/.exec(g)))throw"[sprintf] huh?";f.push(h[1])}c[2]=f}else e|=2;if(3===e)throw"[sprintf] mixing positional and named placeholders is not (yet) supported";d.push(c)}b=b.substring(c[0].length)}return d};var e=function(a,b,c){return c=b.slice(0),c.splice(0,0,a),d.apply(null,c)};a.sprintf=d,a.vsprintf=e}("undefined"!=typeof exports?exports:window);
|
js/frontend.min.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
/*! event-organiser 2.
|
2 |
-
function eveorg_getParameterByName(a,b){a=a.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var c="[\\?&]"+a+"=([^&#]*)",d=new RegExp(c),e=d.exec(b);return null===e?"":decodeURIComponent(e[1].replace(/\+/g," "))}function eo_load_map(){for(var a=eventorganiser.map,b=0;b<a.length;b++)if(null!==document.getElementById("eo_venue_map-"+(b+1))){eventorganiser.map[b].markers={};var c=a[b].locations,d={zoom:a[b].zoom,scrollwheel:a[b].scrollwheel,zoomControl:a[b].zoomcontrol,rotateControl:a[b].rotatecontrol,panControl:a[b].pancontrol,overviewMapControl:a[b].overviewmapcontrol,streetViewControl:a[b].streetviewcontrol,draggable:a[b].draggable,mapTypeControl:a[b].maptypecontrol,mapTypeId:google.maps.MapTypeId[a[b].maptypeid]};d=wp.hooks.applyFilters("eventorganiser.google_map_options",d);for(var e=new google.maps.Map(document.getElementById("eo_venue_map-"+(b+1)),d),f=new google.maps.LatLngBounds,g=[],h=0;h<c.length;h++){var i=c[h].lat,j=c[h].lng;if(void 0!==i&&void 0!==j){g.push(new google.maps.LatLng(i,j)),f.extend(g[h]);var k={venue_id:c[h].venue_id,position:g[h],map:e,content:c[h].tooltipContent,icon:c[h].icon};k=wp.hooks.applyFilters("eventorganiser.venue_marker_options",k);var l=new google.maps.Marker(k);eventorganiser.map[b].markers[c[h].venue_id]=l,a[b].tooltip&&google.maps.event.addListener(l,"click",eventorganiser_venue_tooltip)}}c.length>1?e.fitBounds(f):e.setCenter(g[0])}}function eventorganiser_venue_tooltip(){var a=this.getMap(),b=this.getMap().getProjection().fromLatLngToPoint(this.position),c=a.getProjection().fromLatLngToPoint(a.getBounds().getNorthEast()),d=a.getProjection().fromLatLngToPoint(a.getBounds().getSouthWest()),e=Math.pow(2,a.getZoom());b=new google.maps.Point((b.x-d.x)*e,(b.y-c.y)*e),wp.hooks.doAction("eventorganiser.venue_marker_clicked",this);var f=[b.x,b.y];return this.tooltip?(this.tooltip.qtip("api").set("position.target",f),this.tooltip.qtip("show"),void 0):(jQuery(this.getMap().getDiv()).css({overflow:"visible"}),this.tooltip=jQuery("<div />").qtip({content:{text:this.content},border:{radius:4,width:3},style:{classes:"ui-tooltip-shadow",widget:!0},position:{at:"right center",my:"top center",target:f,container:jQuery(this.getMap().getDiv())},show:{ready:!0,event:!1,solo:!0},hide:{event:"mouseleave unfocus"}}),void 0)}var eventorganiser=eventorganiser||{};!function(a){jQuery(document).ready(function(){function b(b){var c=b.categories,d="<select class='eo-cal-filter' id='eo-event-cat'>";d+="<option value=''>"+b.buttonText.cat+"</option>";for(var e=0;e<c.length;e++)d+="<option class='cat-colour-"+c[e].colour+" cat' value='"+c[e].slug+"'>"+c[e].name+"</option>";d+="</select>";var f=a("<span class='fc-header-dropdown filter-category'></span>");return f.append(d),f}function c(){var b=a("<span class='fc-header-goto'><input type='hidden' class='eo-mini-calendar'/></span>");return b}function d(b){var c=b.venues,d="<select class='eo-cal-filter' id='eo-event-venue'>";d+="<option value=''>"+b.buttonText.venue+"</option>";for(var e=0;e<c.length;e++)d+="<option value='"+c[e].term_id+"'>"+c[e].name+"</option>";d+="</select>";var f=a("<span class='fc-header-dropdown filter-venue'></span>");return f.append(d),f}function e(b,c){a.ajax({url:EOAjaxFront.adminajax,dataType:"JSON",data:{action:"eo_widget_agenda",instance_number:c.number,direction:b,start:c.StartDate,end:c.EndDate},success:function(a){return jQuery.isArray(a)&&a[0]?(c.StartDate=a[0].StartDate,c.EndDate=a[a.length-1].StartDate,f(a,c),void 0):!1}})}function f(b,c){var d=a("#"+c.id+"_container"),e=d.find("ul.dates"),f=e.find("li");a(f).remove();var g=!1;for(k=0;k<b.length;k++){var h,i;new Date(b[k].StartDate),(g===!1||g!=b[k].StartDate&&"day"==c.mode)&&(g=b[k].StartDate,h=a('<li class="date" >'+b[k].display+'<ul class="a-date"></ul></li>'),e.append(h)),i=c.add_to_google?a('<li class="event"></li>').append('<span class="cat"></span><span><strong>'+b[k].time+": </strong></span>"+b[k].post_title).append('<div class="meta" style="display:none;"><span>'+b[k].link+"</span><span> </span><span>"+b[k].Glink+"</span></div>"):a('<li class="event"></li>').append("<a class='eo-agenda-event-permalink' href='"+b[k].event_url+"'><span class='cat'></span><span><strong>"+b[k].time+": </strong></span>"+b[k].post_title+"</a>"),i.find("span.cat").css({background:b[k].color}),h.append(i)}f=e.find("li");var j=d.find("ul li.event");j.on("click",function(){a(this).find(".meta").toggle("400")})}if(a("#eo-upcoming-dates").length>0&&a("#eo-upcoming-dates").find("li:gt(4)").length>0){var g=5,h={more:EOAjaxFront.locale.ShowMore,less:EOAjaxFront.locale.ShowLess};a("#eo-upcoming-dates").find("li:gt("+(g-1)+")").hide().end().after(a('<a href="#" id="eo-upcoming-dates-less">'+h.less+'</a> <span id="eo-upcoming-dates-pipe">|</span> <a href="#" id="eo-upcoming-dates-more">'+h.more+"</a>")),a("#eo-upcoming-dates-pipe").hide(),a("#eo-upcoming-dates-less").hide().click(function(b){b.preventDefault();var c=Math.floor((a("#eo-upcoming-dates li:visible").length-1)/g)*g-1;a("#eo-upcoming-dates li:gt("+c+")").hide(),a("#eo-upcoming-dates-more,#eo-upcoming-dates-pipe").show(),a("#eo-upcoming-dates li:visible").length<=g&&a("#eo-upcoming-dates-less,#eo-upcoming-dates-pipe").hide()}),a("#eo-upcoming-dates-more").click(function(b){b.preventDefault(),a("#eo-upcoming-dates-less,#eo-upcoming-dates-pipe, #eo-upcoming-dates li:hidden:lt("+g+")").show();var c=a("#eo-upcoming-dates-pipe").offset();a("html, body").animate({scrollTop:Math.max(c.top+40-a(window).height(),a(window).scrollTop())}),0===a("#eo-upcoming-dates li:hidden").length&&a("#eo-upcoming-dates-more,#eo-upcoming-dates-pipe").hide()})}if(a(".eo-fullcalendar").length>0){for(var i,j=eventorganiser.calendars,k=0;k<j.length;k++){var l="#eo_fullcalendar_"+(k+1);"undefined"==typeof j[k].category&&(j[k].category=""),"undefined"==typeof j[k].venue&&(j[k].venue="");var m={id:l,year:j[k].year?j[k].year:void 0,month:j[k].month?j[k].month:void 0,date:j[k].date?j[k].date:void 0,category:j[k].event_category,venue:j[k].event_venue,customButtons:{category:b,venue:d,"goto":c},theme:j[k].theme,categories:eventorganiser.fullcal.categories,venues:eventorganiser.fullcal.venues,timeFormatphp:j[k].timeformatphp,timeFormat:j[k].timeformat,editable:!1,tooltip:j[k].tooltip,firstDay:parseInt(eventorganiser.fullcal.firstDay,10),weekends:j[k].weekends,allDaySlot:j[k].alldayslot,allDayText:j[k].alldaytext,axisFormat:j[k].axisformat,minTime:j[k].mintime,maxTime:j[k].maxtime,columnFormat:{month:j[k].columnformatmonth,week:j[k].columnformatweek,day:j[k].columnformatday},titleFormat:{month:j[k].titleformatmonth,week:j[k].titleformatweek,day:j[k].titleformatday},header:{left:j[k].headerleft,center:j[k].headercenter,right:j[k].headerright},eventRender:function(b,c,d){var e=a(d.calendar.options.id).find(".filter-category .eo-cal-filter").val(),f=a(d.calendar.options.id).find(".filter-venue .eo-cal-filter").val();return"undefined"!=typeof e&&""!==e&&a.inArray(e,b.category)<0?"<div></div>":"undefined"!=typeof f&&""!==f&&f!=b.venue?"<div></div>":wp.hooks.applyFilters("eventorganiser.fullcalendar_render_event",!0,b,c,d)?(d.calendar.options.tooltip&&a(c).qtip({content:{text:b.description,button:"x",title:b.title},position:{my:"top center",at:"bottom center",viewport:a(window),adjust:{method:"shift none"}},hide:{fixed:!0,delay:500,effect:function(){a(this).fadeOut("50")}},border:{radius:4,width:3},style:{classes:"ui-tooltip-shadow",widget:!0,tip:"topMiddle"}}),void 0):"<div></div>"},buttonText:{today:EOAjaxFront.locale.today,month:EOAjaxFront.locale.month,week:EOAjaxFront.locale.week,day:EOAjaxFront.locale.day,cat:EOAjaxFront.locale.cat,venue:EOAjaxFront.locale.venue},monthNames:EOAjaxFront.locale.monthNames,monthNamesShort:EOAjaxFront.locale.monthAbbrev,dayNames:EOAjaxFront.locale.dayNames,dayNamesShort:EOAjaxFront.locale.dayAbbrev,eventColor:"#21759B",defaultView:j[k].defaultview,lazyFetching:"true",events:function(b,c,d,e){var f={start:jQuery.fullCalendar.formatDate(b,"yyyy-MM-dd"),end:jQuery.fullCalendar.formatDate(c,"yyyy-MM-dd"),timeformat:e.timeFormatphp,users_events:e.users_events};"undefined"!=typeof e.category&&""!==e.category&&(f.category=e.category),"undefined"!=typeof e.venue&&""!==e.venue&&(f.venue=e.venue),f=wp.hooks.applyFilters("eventorganiser.fullcalendar_request",f,b,c,d,e),a.ajax({url:eventorganiser.ajaxurl+"?action=eventorganiser-fullcal",dataType:"JSON",data:f,success:d,complete:function(a,b){}})},selectable:!1,weekMode:"variable",aspectRatio:1.5,loading:function(b){var c=a("#"+a(this).attr("id")+"_loading");b?(window.clearTimeout(i),i=window.setTimeout(function(){c.show()},1e3)):(window.clearTimeout(i),c.hide())}};m=wp.hooks.applyFilters("eventorganiser.fullcalendar_options",m,j[k]),a(l).fullCalendar(m)}a(".eo-cal-filter").change(function(){a(".eo-fullcalendar").fullCalendar("rerenderEvents")}),a(".eo-mini-calendar").datepicker({dateFormat:"DD, d MM, yy",changeMonth:!0,changeYear:!0,firstDay:parseInt(eventorganiser.fullcal.firstDay,10),buttonText:EOAjaxFront.locale.gotodate,monthNamesShort:EOAjaxFront.locale.monthAbbrev,dayNamesMin:EOAjaxFront.locale.dayAbbrev,showOn:"button",onSelect:function(b){var c=a(this).parents("div.eo-fullcalendar").attr("id");a("#"+c).fullCalendar("gotoDate",new Date(Date.parse(b)))}})}if(a(".eo_widget_calendar").length>0&&(a(".eo_widget_calendar tfoot").unbind("click"),a(".eo_widget_calendar").off("click").on("click","tfoot a",function(b){b.preventDefault();var c=a(this).closest(".eo_widget_calendar").attr("id"),d={showpastevents:1,"show-long":0,"link-to-single":0};"undefined"!=typeof EOAjax&&"undefined"!=typeof eventorganiser.widget_calendars&&(d=eventorganiser.widget_calendars[c]),"undefined"!=typeof eo_widget_cal&&(d=eo_widget_cal[c]),d.eo_month=eveorg_getParameterByName("eo_month",a(this).attr("href")),a.getJSON(EOAjaxFront.adminajax+"?action=eo_widget_cal",d,function(b){a("#"+c+"_content").html(b)})})),a(".eo-agenda-widget").length>0){for(var n in eo_widget_agenda){n=eo_widget_agenda[n];var o=new Date;n.StartDate=a.fullCalendar.formatDate(o,"yyyy-MM-dd"),n.EndDate=n.StartDate,e(1,n)}a(".eo-agenda-widget .agenda-nav span.button").click(function(b){var c=a(this).parents(".eo-agenda-widget").attr("id");n=eo_widget_agenda[c],b.preventDefault();var d=!1;if(a(this).hasClass("next"))d="+1";else if(a(this).hasClass("prev"))d="-1";else{var f=a(this).parent();d=f.hasClass("prev")?"-1":"+1"}e(d,n)})}})}(jQuery);
|
1 |
+
/*! event-organiser 2.4.0 2013-10-29 18:47 */
|
2 |
+
function eveorg_getParameterByName(a,b){a=a.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var c="[\\?&]"+a+"=([^&#]*)",d=new RegExp(c),e=d.exec(b);return null===e?"":decodeURIComponent(e[1].replace(/\+/g," "))}function eo_load_map(){for(var a=eventorganiser.map,b=0;b<a.length;b++)if(null!==document.getElementById("eo_venue_map-"+(b+1))){eventorganiser.map[b].markers={};var c=a[b].locations,d={zoom:a[b].zoom,scrollwheel:a[b].scrollwheel,zoomControl:a[b].zoomcontrol,rotateControl:a[b].rotatecontrol,panControl:a[b].pancontrol,overviewMapControl:a[b].overviewmapcontrol,streetViewControl:a[b].streetviewcontrol,draggable:a[b].draggable,mapTypeControl:a[b].maptypecontrol,mapTypeId:google.maps.MapTypeId[a[b].maptypeid]};d=wp.hooks.applyFilters("eventorganiser.google_map_options",d);for(var e=new google.maps.Map(document.getElementById("eo_venue_map-"+(b+1)),d),f=new google.maps.LatLngBounds,g=[],h=0;h<c.length;h++){var i=c[h].lat,j=c[h].lng;if(void 0!==i&&void 0!==j){g.push(new google.maps.LatLng(i,j)),f.extend(g[h]);var k={venue_id:c[h].venue_id,position:g[h],map:e,content:c[h].tooltipContent,icon:c[h].icon};k=wp.hooks.applyFilters("eventorganiser.venue_marker_options",k);var l=new google.maps.Marker(k);eventorganiser.map[b].markers[c[h].venue_id]=l,a[b].tooltip&&google.maps.event.addListener(l,"click",eventorganiser_venue_tooltip)}}c.length>1?e.fitBounds(f):e.setCenter(g[0])}}function eventorganiser_venue_tooltip(){var a=this.getMap(),b=this.getMap().getProjection().fromLatLngToPoint(this.position),c=a.getProjection().fromLatLngToPoint(a.getBounds().getNorthEast()),d=a.getProjection().fromLatLngToPoint(a.getBounds().getSouthWest()),e=Math.pow(2,a.getZoom());b=new google.maps.Point((b.x-d.x)*e,(b.y-c.y)*e),wp.hooks.doAction("eventorganiser.venue_marker_clicked",this);var f=[b.x,b.y];return this.tooltip?(this.tooltip.qtip("api").set("position.target",f),this.tooltip.qtip("show"),void 0):(jQuery(this.getMap().getDiv()).css({overflow:"visible"}),this.tooltip=jQuery("<div />").qtip({content:{text:this.content},border:{radius:4,width:3},style:{classes:"ui-tooltip-shadow",widget:!0},position:{at:"right center",my:"top center",target:f,container:jQuery(this.getMap().getDiv())},show:{ready:!0,event:!1,solo:!0},hide:{event:"mouseleave unfocus"}}),void 0)}var eventorganiser=eventorganiser||{};!function(a){jQuery(document).ready(function(){function b(b){var c=b.categories,d="<select class='eo-cal-filter' id='eo-event-cat'>";d+="<option value=''>"+b.buttonText.cat+"</option>";for(var e=0;e<c.length;e++)d+="<option class='cat-colour-"+c[e].colour+" cat' value='"+c[e].slug+"'>"+c[e].name+"</option>";d+="</select>";var f=a("<span class='fc-header-dropdown filter-category'></span>");return f.append(d),f}function c(){var b=a("<span class='fc-header-goto'><input type='hidden' class='eo-mini-calendar'/></span>");return b}function d(b){var c=b.venues,d="<select class='eo-cal-filter' id='eo-event-venue'>";d+="<option value=''>"+b.buttonText.venue+"</option>";for(var e=0;e<c.length;e++)d+="<option value='"+c[e].term_id+"'>"+c[e].name+"</option>";d+="</select>";var f=a("<span class='fc-header-dropdown filter-venue'></span>");return f.append(d),f}function e(b,c){a.ajax({url:EOAjaxFront.adminajax,dataType:"JSON",data:{action:"eo_widget_agenda",instance_number:c.number,direction:b,start:c.StartDate,end:c.EndDate},success:function(a){return jQuery.isArray(a)&&a[0]?(c.StartDate=a[0].StartDate,c.EndDate=a[a.length-1].StartDate,f(a,c),void 0):!1}})}function f(b,c){var d=a("#"+c.id+"_container"),e=d.find("ul.dates"),f=e.find("li");a(f).remove();var g=!1;for(k=0;k<b.length;k++){var h,i;new Date(b[k].StartDate),(g===!1||g!=b[k].StartDate&&"day"==c.mode)&&(g=b[k].StartDate,h=a('<li class="date" >'+b[k].display+'<ul class="a-date"></ul></li>'),e.append(h)),i=c.add_to_google?a('<li class="event"></li>').append('<span class="cat"></span><span><strong>'+b[k].time+": </strong></span>"+b[k].post_title).append('<div class="meta" style="display:none;"><span>'+b[k].link+"</span><span> </span><span>"+b[k].Glink+"</span></div>"):a('<li class="event"></li>').append("<a class='eo-agenda-event-permalink' href='"+b[k].event_url+"'><span class='cat'></span><span><strong>"+b[k].time+": </strong></span>"+b[k].post_title+"</a>"),i.find("span.cat").css({background:b[k].color}),h.append(i)}f=e.find("li");var j=d.find("ul li.event");j.on("click",function(){a(this).find(".meta").toggle("400")})}if(a("#eo-upcoming-dates").length>0&&a("#eo-upcoming-dates").find("li:gt(4)").length>0){var g=5,h={more:EOAjaxFront.locale.ShowMore,less:EOAjaxFront.locale.ShowLess};a("#eo-upcoming-dates").find("li:gt("+(g-1)+")").hide().end().after(a('<a href="#" id="eo-upcoming-dates-less">'+h.less+'</a> <span id="eo-upcoming-dates-pipe">|</span> <a href="#" id="eo-upcoming-dates-more">'+h.more+"</a>")),a("#eo-upcoming-dates-pipe").hide(),a("#eo-upcoming-dates-less").hide().click(function(b){b.preventDefault();var c=Math.floor((a("#eo-upcoming-dates li:visible").length-1)/g)*g-1;a("#eo-upcoming-dates li:gt("+c+")").hide(),a("#eo-upcoming-dates-more,#eo-upcoming-dates-pipe").show(),a("#eo-upcoming-dates li:visible").length<=g&&a("#eo-upcoming-dates-less,#eo-upcoming-dates-pipe").hide()}),a("#eo-upcoming-dates-more").click(function(b){b.preventDefault(),a("#eo-upcoming-dates-less,#eo-upcoming-dates-pipe, #eo-upcoming-dates li:hidden:lt("+g+")").show();var c=a("#eo-upcoming-dates-pipe").offset();a("html, body").animate({scrollTop:Math.max(c.top+40-a(window).height(),a(window).scrollTop())}),0===a("#eo-upcoming-dates li:hidden").length&&a("#eo-upcoming-dates-more,#eo-upcoming-dates-pipe").hide()})}if(a(".eo-fullcalendar").length>0){for(var i,j=eventorganiser.calendars,k=0;k<j.length;k++){var l="#eo_fullcalendar_"+(k+1);"undefined"==typeof j[k].category&&(j[k].category=""),"undefined"==typeof j[k].venue&&(j[k].venue="");var m={id:l,year:j[k].year?j[k].year:void 0,month:j[k].month?j[k].month:void 0,date:j[k].date?j[k].date:void 0,category:j[k].event_category,venue:j[k].event_venue,customButtons:{category:b,venue:d,"goto":c},theme:j[k].theme,categories:eventorganiser.fullcal.categories,venues:eventorganiser.fullcal.venues,timeFormatphp:j[k].timeformatphp,timeFormat:j[k].timeformat,editable:!1,tooltip:j[k].tooltip,firstDay:parseInt(eventorganiser.fullcal.firstDay,10),weekends:j[k].weekends,allDaySlot:j[k].alldayslot,allDayText:j[k].alldaytext,axisFormat:j[k].axisformat,minTime:j[k].mintime,maxTime:j[k].maxtime,columnFormat:{month:j[k].columnformatmonth,week:j[k].columnformatweek,day:j[k].columnformatday},titleFormat:{month:j[k].titleformatmonth,week:j[k].titleformatweek,day:j[k].titleformatday},header:{left:j[k].headerleft,center:j[k].headercenter,right:j[k].headerright},eventRender:function(b,c,d){var e=a(d.calendar.options.id).find(".filter-category .eo-cal-filter").val(),f=a(d.calendar.options.id).find(".filter-venue .eo-cal-filter").val();return"undefined"!=typeof e&&""!==e&&a.inArray(e,b.category)<0?"<div></div>":"undefined"!=typeof f&&""!==f&&f!=b.venue?"<div></div>":wp.hooks.applyFilters("eventorganiser.fullcalendar_render_event",!0,b,c,d)?(d.calendar.options.tooltip&&a(c).qtip({content:{text:b.description,button:"x",title:b.title},position:{my:"top center",at:"bottom center",viewport:a(window),adjust:{method:"shift none"}},hide:{fixed:!0,delay:500,effect:function(){a(this).fadeOut("50")}},border:{radius:4,width:3},style:{classes:"ui-tooltip-shadow",widget:!0,tip:"topMiddle"}}),void 0):"<div></div>"},buttonText:{today:EOAjaxFront.locale.today,month:EOAjaxFront.locale.month,week:EOAjaxFront.locale.week,day:EOAjaxFront.locale.day,cat:EOAjaxFront.locale.cat,venue:EOAjaxFront.locale.venue},monthNames:EOAjaxFront.locale.monthNames,monthNamesShort:EOAjaxFront.locale.monthAbbrev,dayNames:EOAjaxFront.locale.dayNames,dayNamesShort:EOAjaxFront.locale.dayAbbrev,eventColor:"#21759B",defaultView:j[k].defaultview,lazyFetching:"true",events:function(b,c,d,e){var f={start:jQuery.fullCalendar.formatDate(b,"yyyy-MM-dd"),end:jQuery.fullCalendar.formatDate(c,"yyyy-MM-dd"),timeformat:e.timeFormatphp,users_events:e.users_events};"undefined"!=typeof e.category&&""!==e.category&&(f.category=e.category),"undefined"!=typeof e.venue&&""!==e.venue&&(f.venue=e.venue),f=wp.hooks.applyFilters("eventorganiser.fullcalendar_request",f,b,c,d,e),a.ajax({url:eventorganiser.ajaxurl+"?action=eventorganiser-fullcal",dataType:"JSON",data:f,success:d,complete:function(a,b){}})},selectable:!1,weekMode:"variable",aspectRatio:1.5,loading:function(b){var c=a("#"+a(this).attr("id")+"_loading");b?(window.clearTimeout(i),i=window.setTimeout(function(){c.show()},1e3)):(window.clearTimeout(i),c.hide())}};m=wp.hooks.applyFilters("eventorganiser.fullcalendar_options",m,j[k]),a(l).fullCalendar(m)}a(".eo-cal-filter").change(function(){a(".eo-fullcalendar").fullCalendar("rerenderEvents")}),a(".eo-mini-calendar").datepicker({dateFormat:"DD, d MM, yy",changeMonth:!0,changeYear:!0,firstDay:parseInt(eventorganiser.fullcal.firstDay,10),buttonText:EOAjaxFront.locale.gotodate,monthNamesShort:EOAjaxFront.locale.monthAbbrev,dayNamesMin:EOAjaxFront.locale.dayAbbrev,showOn:"button",onSelect:function(b){var c=a(this).parents("div.eo-fullcalendar").attr("id");a("#"+c).fullCalendar("gotoDate",new Date(Date.parse(b)))}})}if(a(".eo_widget_calendar").length>0&&(a(".eo_widget_calendar tfoot").unbind("click"),a(".eo_widget_calendar").off("click").on("click","tfoot a",function(b){b.preventDefault();var c=a(this).closest(".eo_widget_calendar").attr("id"),d={showpastevents:1,"show-long":0,"link-to-single":0};"undefined"!=typeof EOAjax&&"undefined"!=typeof eventorganiser.widget_calendars&&(d=eventorganiser.widget_calendars[c]),"undefined"!=typeof eo_widget_cal&&(d=eo_widget_cal[c]),d.eo_month=eveorg_getParameterByName("eo_month",a(this).attr("href")),a.getJSON(EOAjaxFront.adminajax+"?action=eo_widget_cal",d,function(b){a("#"+c+"_content").html(b)})})),a(".eo-agenda-widget").length>0){for(var n in eo_widget_agenda){n=eo_widget_agenda[n];var o=new Date;n.StartDate=a.fullCalendar.formatDate(o,"yyyy-MM-dd"),n.EndDate=n.StartDate,e(1,n)}a(".eo-agenda-widget .agenda-nav span.button").click(function(b){var c=a(this).parents(".eo-agenda-widget").attr("id");n=eo_widget_agenda[c],b.preventDefault();var d=!1;if(a(this).hasClass("next"))d="+1";else if(a(this).hasClass("prev"))d="-1";else{var f=a(this).parent();d=f.hasClass("prev")?"-1":"+1"}e(d,n)})}})}(jQuery);
|
js/fullcalendar.min.js
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
-
/*! event-organiser 2.
|
2 |
!function(a,b){function c(b){a.extend(!0,sb,b)}function d(c,d,j){function k(a){$?(y(),x(),G(),t(a)):l()}function l(){_=d.theme?"ui":"fc",c.addClass("fc"),d.isRTL?c.addClass("fc-rtl"):c.addClass("fc-ltr"),d.theme&&c.addClass("ui-widget"),$=a("<div class='fc-content' style='position:relative'/>").prependTo(c),Y=new e(X,d),Z=Y.render(),Z&&c.prepend(Z),s(d.defaultView),a(window).resize(A),r()||n()}function n(){setTimeout(function(){!ab.start&&r()&&t()},0)}function o(){a(window).unbind("resize",A),Y.destroy(),$.remove(),c.removeClass("fc fc-rtl ui-widget")}function p(){return 0!==hb.offsetWidth}function r(){return 0!==a("body")[0].offsetWidth}function s(b){if(!ab||b!=ab.name){kb++,I();var c,d=ab;d?((d.beforeHide||P)(),O($,$.height()),d.element.hide()):O($,1),$.css("overflow","hidden"),ab=ib[b],ab?ab.element.show():ab=ib[b]=new vb[b](c=db=a("<div class='fc-view fc-view-"+b+"' style='position:absolute'/>").appendTo($),X),d&&Y.deactivateButton(d.name),Y.activateButton(b),t(),$.css("overflow",""),d&&O($,1),c||(ab.afterShow||P)(),kb--}}function t(a){if(p()){kb++,I(),cb===b&&y();var d=!1;!ab.start||a||lb<ab.start||lb>=ab.end?(ab.render(lb,a||0),z(!0),d=!0):ab.sizeDirty?(ab.clearEvents(),z(),d=!0):ab.eventsDirty&&(ab.clearEvents(),d=!0),ab.sizeDirty=!1,ab.eventsDirty=!1,B(d),bb=c.outerWidth(),Y.updateTitle(ab.title);var e=new Date;e>=ab.start&&e<ab.end?Y.disableButton("today"):Y.enableButton("today"),kb--,ab.trigger("viewDisplay",hb)}}function w(){x(),p()&&(y(),z(),I(),ab.clearEvents(),ab.renderEvents(mb),ab.sizeDirty=!1)}function x(){a.each(ib,function(a,b){b.sizeDirty=!0})}function y(){cb=d.contentHeight?d.contentHeight:d.height?d.height-(Z?Z.height():0)-K($):Math.round($.width()/Math.max(d.aspectRatio,.5))}function z(a){kb++,ab.setHeight(cb,a),db&&(db.css("position","relative"),db=null),ab.setWidth($.width(),a),kb--}function A(){if(!kb)if(ab.start){var a=++jb;setTimeout(function(){a==jb&&!kb&&p()&&bb!=(bb=c.outerWidth())&&(kb++,w(),ab.trigger("windowResize",hb),kb--)},200)}else n()}function B(a){!d.lazyFetching||fb(ab.visStart,ab.visEnd)?C():a&&F()}function C(){gb(ab.visStart,ab.visEnd,d)}function D(a){mb=a,F()}function E(a){F(a)}function F(a){G(),p()&&(ab.clearEvents(),ab.renderEvents(mb,a),ab.eventsDirty=!1)}function G(){a.each(ib,function(a,b){b.eventsDirty=!0})}function H(a,c,d){ab.select(a,c,d===b?!0:d)}function I(){ab&&ab.unselect()}function J(){t(-1)}function L(){t(1)}function M(){g(lb,-1),t()}function N(){g(lb,1),t()}function Q(){lb=new Date,t()}function R(a,b,c){a instanceof Date?lb=m(a):q(lb,a,b,c),t()}function S(a,c,d){a!==b&&g(lb,a),c!==b&&h(lb,c),d!==b&&i(lb,d),t()}function T(){return m(lb)}function U(){return ab}function V(a,c){return c===b?d[a]:("height"==a||"contentHeight"==a||"aspectRatio"==a?(d[a]=c,w()):(d[a]=c,F()),void 0)}function W(a,b){return d[a]?d[a].apply(b||hb,Array.prototype.slice.call(arguments,2)):void 0}var X=this;X.options=d,X.render=k,X.destroy=o,X.refetchEvents=C,X.reportEvents=D,X.reportEventChange=E,X.rerenderEvents=F,X.changeView=s,X.select=H,X.unselect=I,X.prev=J,X.next=L,X.prevYear=M,X.nextYear=N,X.today=Q,X.gotoDate=R,X.incrementDate=S,X.formatDate=function(a,b){return u(a,b,d)},X.formatDates=function(a,b,c){return v(a,b,c,d)},X.getDate=T,X.getView=U,X.option=V,X.trigger=W,f.call(X,d,j);var Y,Z,$,_,ab,bb,cb,db,eb,fb=X.isFetchNeeded,gb=X.fetchEvents,hb=c[0],ib={},jb=0,kb=0,lb=new Date,mb=[];q(lb,d.year,d.month,d.date),d.droppable&&a(document).bind("dragstart",function(b,c){var e=b.target,f=a(e);if(!f.parents(".fc").length){var g=d.dropAccept;(a.isFunction(g)?g.call(e,f):f.is(g))&&(eb=e,ab.dragStart(eb,b,c))}}).bind("dragstop",function(a,b){eb&&(ab.dragStop(eb,a,b),eb=null)})}function e(b,c){function d(){m=c.theme?"ui":"fc";var b=c.header;return b?n=a("<table class='fc-header' style='width:100%'/>").append(a("<tr/>").append(f("left")).append(f("center")).append(f("right"))):void 0}function e(){n.remove()}function f(d){var e=a("<td class='fc-header-"+d+"'/>"),f=c.header[d];return f&&a.each(f.split(" "),function(d){d>0&&e.append("<span class='fc-header-space'/>");var f;a.each(this.split(","),function(d,g){if("title"==g)e.append("<span class='fc-header-title'><h2> </h2></span>"),f&&f.addClass(m+"-corner-right"),f=null;else if(a.isFunction(c.customButtons[g])){var h=c.customButtons[g](c);e.append(h)}else{var i;if(b[g]?i=b[g]:vb[g]&&(i=function(){l.removeClass(m+"-state-hover"),b.changeView(g)}),i){var j=c.theme?T(c.buttonIcons,g):null,k=T(c.buttonText,g);if(c.buttonui){var l=a("<span class='fc-button fc-button-"+g+" "+m+"-state-default'>"+k+"</span>");l.button()}else var l=a("<span class='fc-button fc-button-"+g+" "+m+"-state-default'>"+"<span class='fc-button-inner'>"+"<span class='fc-button-content'>"+(j?"<span class='fc-icon-wrap'><span class='ui-icon ui-icon-"+j+"'/>"+"</span>":k)+"</span>"+"<span class='fc-button-effect'><span></span></span>"+"</span>"+"</span>");l&&(l.click(function(){l.hasClass(m+"-state-disabled")||i()}).mousedown(function(){l.not("."+m+"-state-active").not("."+m+"-state-disabled").addClass(m+"-state-hover")},function(){l.removeClass(m+"-state-hover").removeClass(m+"-state-down")}).appendTo(e),W(l),f||l.addClass(m+"-corner-left"),f=l)}}}),f&&f.addClass(m+"-corner-right")}),e}function g(a){n.find("h2").html(a)}function h(a){n.find("span.fc-button-"+a).addClass(m+"-state-active")}function i(a){n.find("span.fc-button-"+a).removeClass(m+"-state-active")}function j(a){n.find("span.fc-button-"+a).addClass(m+"-state-disabled")}function k(a){n.find("span.fc-button-"+a).removeClass(m+"-state-disabled")}var l=this;l.render=d,l.destroy=e,l.updateTitle=g,l.activateButton=h,l.deactivateButton=i,l.disableButton=j,l.enableButton=k;var m,n=a([])}function f(c,d){function e(a,b){return!y||y>a||b>z}function f(a,b,c){y=a,z=b,I=[];var d=++F,e=E.length;G=e;for(var f=0;e>f;f++)g(E[f],d,c)}function g(b,c,d){h(b,function(e){if(c==F){if(e){d.eventDataTransform&&(e=a.map(e,d.eventDataTransform)),b.eventDataTransform&&(e=a.map(e,b.eventDataTransform));for(var f=0;f<e.length;f++)e[f].source=b,t(e[f]);I=I.concat(e)}G--,G||C(I)}},d)}function h(b,d){var e,f,g=ub.sourceFetchers;for(e=0;e<g.length;e++){if(f=g[e](b,y,z,d),f===!0)return;if("object"==typeof f)return h(f,d,c),void 0}var i=b.events;if(i)a.isFunction(i)?(q(),i(m(y),m(z),function(a){d(a),s()},c)):a.isArray(i)?d(i):d();else{var j=b.url;if(j){var k=b.success,l=b.error,n=b.complete,o=a.extend({},b.data||{}),p=_(b.startParam,c.startParam),r=_(b.endParam,c.endParam);p&&(o[p]=Math.round(+y/1e3)),r&&(o[r]=Math.round(+z/1e3)),q(),a.ajax(a.extend({},wb,b,{data:o,success:function(b){b=b||[];var c=$(k,this,arguments);a.isArray(c)&&(b=c),d(b)},error:function(){$(l,this,arguments),d()},complete:function(){$(n,this,arguments),s()}}))}else d()}}function i(a){a=j(a),a&&(G++,g(a,F))}function j(b){return a.isFunction(b)||a.isArray(b)?b={events:b}:"string"==typeof b&&(b={url:b}),"object"==typeof b?(u(b),E.push(b),b):void 0}function k(b){E=a.grep(E,function(a){return!v(a,b)}),I=a.grep(I,function(a){return!v(a.source,b)}),C(I)}function l(a){var b,c,d=I.length,e=B().defaultEventEnd,f=a.start-a._start,g=a.end?a.end-(a._end||e(a)):0;for(b=0;d>b;b++)c=I[b],c._id==a._id&&c!=a&&(c.start=new Date(+c.start+f),c.end=a.end?c.end?new Date(+c.end+g):new Date(+e(c)+g):null,c.title=a.title,c.url=a.url,c.allDay=a.allDay,c.className=a.className,c.editable=a.editable,c.color=a.color,c.backgroundColor=a.backgroundColor,c.borderColor=a.borderColor,c.textColor=a.textColor,t(c));t(a),C(I)}function n(a,b){t(a),a.source||(b&&(D.events.push(a),a.source=D),I.push(a)),C(I)}function o(b){if(b){if(!a.isFunction(b)){var c=b+"";b=function(a){return a._id==c}}I=a.grep(I,b,!0);for(var d=0;d<E.length;d++)a.isArray(E[d].events)&&(E[d].events=a.grep(E[d].events,b,!0))}else{I=[];for(var d=0;d<E.length;d++)a.isArray(E[d].events)&&(E[d].events=[])}C(I)}function p(b){return a.isFunction(b)?a.grep(I,b):b?(b+="",a.grep(I,function(a){return a._id==b})):I}function q(){H++||A("loading",null,!0)}function s(){--H||A("loading",null,!1)}function t(a){var d=a.source||{},e=_(d.ignoreTimezone,c.ignoreTimezone);a._id=a._id||(a.id===b?"_fc"+xb++:a.id+""),a.date&&(a.start||(a.start=a.date),delete a.date),a._start=m(a.start=r(a.start,e)),a.end=r(a.end,e),a.end&&a.end<=a.start&&(a.end=null),a._end=a.end?m(a.end):null,a.allDay===b&&(a.allDay=_(d.allDayDefault,c.allDayDefault)),a.className?"string"==typeof a.className&&(a.className=a.className.split(/\s+/)):a.className=[]}function u(a){a.className?"string"==typeof a.className&&(a.className=a.className.split(/\s+/)):a.className=[];for(var b=ub.sourceNormalizers,c=0;c<b.length;c++)b[c](a)}function v(a,b){return a&&b&&w(a)==w(b)}function w(a){return("object"==typeof a?a.events||a.url:"")||a}var x=this;x.isFetchNeeded=e,x.fetchEvents=f,x.addEventSource=i,x.removeEventSource=k,x.updateEvent=l,x.renderEvent=n,x.removeEvents=o,x.clientEvents=p,x.normalizeEvent=t;for(var y,z,A=x.trigger,B=x.getView,C=x.reportEvents,D={events:[]},E=[D],F=0,G=0,H=0,I=[],J=0;J<d.length;J++)j(d[J])}function g(a,b,c){return a.setFullYear(a.getFullYear()+b),c||l(a),a}function h(a,b,c){if(+a){var d=a.getMonth()+b,e=m(a);for(e.setDate(1),e.setMonth(d),a.setMonth(d),c||l(a);a.getMonth()!=e.getMonth();)a.setDate(a.getDate()+(e>a?1:-1))}return a}function i(a,b,c){if(+a){var d=a.getDate()+b,e=m(a);e.setHours(9),e.setDate(d),a.setDate(d),c||l(a),j(a,e)}return a}function j(a,b){if(+a)for(;a.getDate()!=b.getDate();)a.setTime(+a+(b>a?1:-1)*Ab)}function k(a,b){return a.setMinutes(a.getMinutes()+b),a}function l(a){return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a}function m(a,b){return b?l(new Date(+a)):new Date(+a)}function n(){var a,b=0;do a=new Date(1970,b++,1);while(a.getHours());return a}function o(a,b,c){for(b=b||1;!a.getDay()||c&&1==a.getDay()||!c&&6==a.getDay();)i(a,b);return a}function p(a,b){return Math.round((m(a,!0)-m(b,!0))/zb)}function q(a,c,d,e){c!==b&&c!=a.getFullYear()&&(a.setDate(1),a.setMonth(0),a.setFullYear(c)),d!==b&&d!=a.getMonth()&&(a.setDate(1),a.setMonth(d)),e!==b&&a.setDate(e)}function r(a,c){return"object"==typeof a?a:"number"==typeof a?new Date(1e3*a):"string"==typeof a?a.match(/^\d+(\.\d+)?$/)?new Date(1e3*parseFloat(a)):(c===b&&(c=!0),s(a,c)||(a?new Date(a):null)):null}function s(a,b){var c=a.match(/^([0-9]{4})(-([0-9]{2})(-([0-9]{2})([T ]([0-9]{2}):([0-9]{2})(:([0-9]{2})(\.([0-9]+))?)?(Z|(([-+])([0-9]{2})(:?([0-9]{2}))?))?)?)?)?$/);if(!c)return null;var d=new Date(c[1],0,1);if(b||!c[13]){var e=new Date(c[1],0,1,9,0);c[3]&&(d.setMonth(c[3]-1),e.setMonth(c[3]-1)),c[5]&&(d.setDate(c[5]),e.setDate(c[5])),j(d,e),c[7]&&d.setHours(c[7]),c[8]&&d.setMinutes(c[8]),c[10]&&d.setSeconds(c[10]),c[12]&&d.setMilliseconds(1e3*Number("0."+c[12])),j(d,e)}else if(d.setUTCFullYear(c[1],c[3]?c[3]-1:0,c[5]||1),d.setUTCHours(c[7]||0,c[8]||0,c[10]||0,c[12]?1e3*Number("0."+c[12]):0),c[14]){var f=60*Number(c[16])+(c[18]?Number(c[18]):0);f*="-"==c[15]?1:-1,d=new Date(+d+1e3*60*f)}return d}function t(a){if("number"==typeof a)return 60*a;if("object"==typeof a)return 60*a.getHours()+a.getMinutes();var b=a.match(/(\d+)(?::(\d+))?\s*(\w+)?/);if(b){var c=parseInt(b[1],10);return b[3]&&(c%=12,"p"==b[3].toLowerCase().charAt(0)&&(c+=12)),60*c+(b[2]?parseInt(b[2],10):0)}}function u(a,b,c){return v(a,null,b,c)}function v(a,b,c,d){d=d||sb;var e,f,g,h,i=a,j=b,k=c.length,l="";for(e=0;k>e;e++)if(f=c.charAt(e),"'"==f){for(g=e+1;k>g;g++)if("'"==c.charAt(g)){i&&(l+=g==e+1?"'":c.substring(e+1,g),e=g);break}}else if("("==f){for(g=e+1;k>g;g++)if(")"==c.charAt(g)){var m=u(i,c.substring(e+1,g),d);parseInt(m.replace(/\D/,""),10)&&(l+=m),e=g;break}}else if("["==f){for(g=e+1;k>g;g++)if("]"==c.charAt(g)){var n=c.substring(e+1,g),m=u(i,n,d);m!=u(j,n,d)&&(l+=m),e=g;break}}else if("{"==f)i=b,j=a;else if("}"==f)i=a,j=b;else{for(g=k;g>e;g--)if(h=Cb[c.substring(e,g)]){i&&(l+=h(i,d)),e=g-1;break}g==e&&i&&(l+=f)}return l}function w(a){var b,c=new Date(a.getTime());return c.setDate(c.getDate()+4-(c.getDay()||7)),b=c.getTime(),c.setMonth(0),c.setDate(1),Math.floor(Math.round((b-c)/864e5)/7)+1}function x(a){return a.end?y(a.end,a.allDay):i(m(a.start),1)}function y(a,b){return a=m(a),b||a.getHours()||a.getMinutes()?i(a,1):l(a)}function z(a,b){return 100*(b.msLength-a.msLength)+(a.event.start-b.event.start)}function A(a,b){return a.end>b.start&&a.start<b.end}function B(a,b,c,d){var e,f,g,h,i,j,k,l,n=[],o=a.length;for(e=0;o>e;e++)f=a[e],g=f.start,h=b[e],h>c&&d>g&&(c>g?(i=m(c),k=!1):(i=g,k=!0),h>d?(j=m(d),l=!1):(j=h,l=!0),n.push({event:f,start:i,end:j,isStart:k,isEnd:l,msLength:j-i}));return n.sort(z)}function C(a){var b,c,d,e,f,g=[],h=a.length;for(b=0;h>b;b++){for(c=a[b],d=0;;){if(e=!1,g[d])for(f=0;f<g[d].length;f++)if(A(g[d][f],c)){e=!0;break}if(!e)break;d++}g[d]?g[d].push(c):g[d]=[c]}return g}function D(c,d,e){c.unbind("mouseover").mouseover(function(c){for(var f,g,h,i=c.target;i!=this;)f=i,i=i.parentNode;(g=f._fci)!==b&&(f._fci=b,h=d[g],e(h.event,h.element,h),a(c.target).trigger(c)),c.stopPropagation()})}function E(b,c,d){for(var e,f=0;f<b.length;f++)e=a(b[f]),e.width(Math.max(0,c-G(e,d)))}function F(b,c,d){for(var e,f=0;f<b.length;f++)e=a(b[f]),e.height(Math.max(0,c-K(e,d)))}function G(a,b){return H(a)+J(a)+(b?I(a):0)}function H(b){return(parseFloat(a.css(b[0],"paddingLeft",!0))||0)+(parseFloat(a.css(b[0],"paddingRight",!0))||0)}function I(b){return(parseFloat(a.css(b[0],"marginLeft",!0))||0)+(parseFloat(a.css(b[0],"marginRight",!0))||0)}function J(b){return(parseFloat(a.css(b[0],"borderLeftWidth",!0))||0)+(parseFloat(a.css(b[0],"borderRightWidth",!0))||0)}function K(a,b){return L(a)+N(a)+(b?M(a):0)}function L(b){return(parseFloat(a.css(b[0],"paddingTop",!0))||0)+(parseFloat(a.css(b[0],"paddingBottom",!0))||0)}function M(b){return(parseFloat(a.css(b[0],"marginTop",!0))||0)+(parseFloat(a.css(b[0],"marginBottom",!0))||0)}function N(b){return(parseFloat(a.css(b[0],"borderTopWidth",!0))||0)+(parseFloat(a.css(b[0],"borderBottomWidth",!0))||0)}function O(a,b){b="number"==typeof b?b+"px":b,a.each(function(a,c){c.style.cssText+=";min-height:"+b+";_height:"+b})}function P(){}function Q(a,b){return a-b}function R(a){return Math.max.apply(Math,a)}function S(a){return(10>a?"0":"")+a}function T(a,c){if(a[c]!==b)return a[c];for(var d,e=c.split(/(?=[A-Z])/),f=e.length-1;f>=0;f--)if(d=a[e[f].toLowerCase()],d!==b)return d;return a[""]}function U(a){return a.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,""").replace(/\n/g,"<br />")}function V(a){return a.id+"/"+a.className+"/"+a.style.cssText.replace(/(^|;)\s*(top|left|width|height)\s*:[^;]*/gi,"")}function W(a){a.attr("unselectable","on").css("MozUserSelect","none").bind("selectstart.ui",function(){return!1})}function X(a){a.children().removeClass("fc-first fc-last").filter(":first-child").addClass("fc-first").end().filter(":last-child").addClass("fc-last")}function Y(a,b){a.each(function(a,c){c.className=c.className.replace(/^fc-\w*/,"fc-"+yb[b.getDay()])})}function Z(a,b){var c=a.source||{},d=a.color,e=c.color,f=b("eventColor"),g=a.backgroundColor||d||c.backgroundColor||e||b("eventBackgroundColor")||f,h=a.borderColor||d||c.borderColor||e||b("eventBorderColor")||f,i=a.textColor||c.textColor||b("eventTextColor"),j=[];return g&&j.push("background-color:"+g),h&&j.push("border-color:"+h),i&&j.push("color:"+i),j.join(";")}function $(b,c,d){if(a.isFunction(b)&&(b=[b]),b){var e,f;for(e=0;e<b.length;e++)f=b[e].apply(c,d)||f;return f}}function _(){for(var a=0;a<arguments.length;a++)if(arguments[a]!==b)return arguments[a]}function ab(a,b){function c(a,b){b&&(h(a,b),a.setDate(1));var c=m(a,!0);c.setDate(1);var j=h(m(c),1),k=m(c),l=m(j),n=e("firstDay"),p=e("weekends")?0:1;p&&(o(k),o(l,-1,!0)),i(k,-((k.getDay()-Math.max(n,p)+7)%7)),i(l,(7-l.getDay()+Math.max(n,p))%7);var q=Math.round((l-k)/(7*zb));"fixed"==e("weekMode")&&(i(l,7*(6-q)),q=6),d.title=g(c,e("titleFormat")),d.start=c,d.end=j,d.visStart=k,d.visEnd=l,f(q,p?5:7,!0)}var d=this;d.render=c,db.call(d,a,b,"month");var e=d.opt,f=d.renderBasic,g=b.formatDate}function bb(a,b){function c(a,b){b&&i(a,7*b);var c=i(m(a),-((a.getDay()-e("firstDay")+7)%7)),h=i(m(c),7),j=m(c),k=m(h),l=e("weekends");l||(o(j),o(k,-1,!0)),d.title=g(j,i(m(k),-1),e("titleFormat")),d.start=c,d.end=h,d.visStart=j,d.visEnd=k,f(1,l?7:5,!1)}var d=this;d.render=c,db.call(d,a,b,"basicWeek");var e=d.opt,f=d.renderBasic,g=b.formatDates}function cb(a,b){function c(a,b){b&&(i(a,b),e("weekends")||o(a,0>b?-1:1)),d.title=g(a,e("titleFormat")),d.start=d.visStart=m(a,!0),d.end=d.visEnd=i(m(d.start),1),f(1,1,!1)}var d=this;d.render=c,db.call(d,a,b,"basicDay");var e=d.opt,f=d.renderBasic,g=b.formatDate}function db(b,c,d){function e(a,b,c){cb=a,db=b,f();var d=!S;d?g():Bb(),h(c)}function f(){ib=zb("isRTL"),ib?(jb=-1,lb=db-1):(jb=1,lb=0),qb=zb("firstDay"),sb=zb("weekends")?0:1,tb=zb("theme")?"ui":"fc",ub=zb("columnFormat"),vb=zb("weekNumbers"),wb=zb("weekNumberTitle"),xb="iso"!=zb("weekNumberCalculation")?"w":"W"}function g(){Z=a("<div style='position:absolute;z-index:8;top:0;left:0'/>").appendTo(b)}function h(c){var d,e,f,g,h="",i=tb+"-widget-header",j=tb+"-widget-content",k=N.start.getMonth(),m=l(new Date);for(h+="<table class='fc-border-separate' style='width:100%' cellspacing='0'><thead><tr>",vb&&(h+="<th class='fc-week-number "+i+"'/>"),d=0;db>d;d++)f=F(0,d),h+="<th class='fc-day-header fc-"+yb[f.getDay()]+" "+i+"'/>";for(h+="</tr></thead><tbody>",d=0;cb>d;d++){for(h+="<tr class='fc-week'>",vb&&(h+="<td class='fc-week-number "+j+"'>"+"<div/>"+"</td>"),e=0;db>e;e++)f=F(d,e),g=["fc-day","fc-"+yb[f.getDay()],j],f.getMonth()!=k&&g.push("fc-other-month"),+f==+m&&(g.push("fc-today"),g.push(tb+"-state-highlight")),h+="<td class='"+g.join(" ")+"'"+" data-date='"+Fb(f,"yyyy-MM-dd")+"'"+">"+"<div>",c&&(h+="<div class='fc-day-number'>"+f.getDate()+"</div>"),h+="<div class='fc-day-content'><div style='position:relative'> </div></div></div></td>";h+="</tr>"}h+="</tbody></table>",L(),P&&P.remove(),P=a(h).appendTo(b),Q=P.find("thead"),R=Q.find(".fc-day-header"),S=P.find("tbody"),T=S.find("tr"),U=S.find(".fc-day"),V=T.find("td:first-child"),Y=T.eq(0).find(".fc-day-content > div"),X(Q.add(Q.find("tr"))),X(T),T.eq(0).addClass("fc-first"),T.filter(":last").addClass("fc-last"),vb&&Q.find(".fc-week-number").text(wb),R.each(function(b,c){var d=G(b);a(c).text(Fb(d,ub))}),vb&&S.find(".fc-week-number > div").each(function(b,c){var d=F(b,0);a(c).text(Fb(d,xb))}),U.each(function(b,c){var d=G(b);Ab("dayRender",N,d,a(c))}),n(U)}function j(b){_=b;var c,d,e,f=_-Q.height();"variable"==zb("weekMode")?c=d=Math.floor(f/(1==cb?2:6)):(c=Math.floor(f/cb),d=f-c*(cb-1)),V.each(function(b,f){cb>b&&(e=a(f),O(e.find("> div"),(b==cb-1?d:c)-K(e)))}),M()}function k(a){$=a,hb.clear(),bb=0,vb&&(bb=Q.find("th.fc-week-number").outerWidth()),ab=Math.floor(($-bb)/db),E(R.slice(0,-1),ab)}function n(a){a.click(o).mousedown(Eb)}function o(b){if(!zb("selectable")){var c=s(a(this).data("date"));Ab("dayClick",this,c,!0,b)}}function q(a,b,c){c&&fb.build();for(var d=m(N.visStart),e=i(m(d),db),f=0;cb>f;f++){var g=new Date(Math.max(d,a)),h=new Date(Math.min(e,b));if(h>g){var j,k;ib?(j=p(h,d)*jb+lb+1,k=p(g,d)*jb+lb+1):(j=p(g,d),k=p(h,d)),n(r(f,j,f,k-1))}i(d,7),i(e,7)}}function r(a,c,d,e){var f=fb.rect(a,c,d,e,b);return Cb(f,b)}function t(a){return m(a)}function u(a,b){q(a,i(m(b),1),!0)}function v(){Db()}function w(a,b,c){var d=C(a),e=U[d.row*db+d.col];Ab("dayClick",e,a,b,c)}function x(a,b){gb.start(function(a){Db(),a&&r(a.row,a.col,a.row,a.col)},b)}function y(a,b,c){var d=gb.stop();if(Db(),d){var e=D(d);Ab("drop",a,e,!0,b,c)}}function z(a){return m(a.start)}function A(a){return hb.left(a)}function B(a){return hb.right(a)}function C(a){return{row:Math.floor(p(a,N.visStart)/7),col:H(a.getDay())}}function D(a){return F(a.row,a.col)}function F(a,b){return i(m(N.visStart),7*a+b*jb+lb)}function G(a){return F(Math.floor(a/db),a%db)}function H(a){return(a-Math.max(qb,sb)+db)%db*jb+lb}function I(a){return T.eq(a)}function J(){var a=0;return vb&&(a+=bb),{left:a,right:$}}function L(){O(b,b.height())}function M(){O(b,1)}var N=this;N.renderBasic=e,N.setHeight=j,N.setWidth=k,N.renderDayOverlay=q,N.defaultSelectionEnd=t,N.renderSelection=u,N.clearSelection=v,N.reportDayClick=w,N.dragStart=x,N.dragStop=y,N.defaultEventEnd=z,N.getHoverListener=function(){return gb},N.colContentLeft=A,N.colContentRight=B,N.dayOfWeekCol=H,N.dateCell=C,N.cellDate=D,N.cellIsAllDay=function(){return!0},N.allDayRow=I,N.allDayBounds=J,N.getRowCnt=function(){return cb},N.getColCnt=function(){return db},N.getColWidth=function(){return ab},N.getDaySegmentContainer=function(){return Z},kb.call(N,b,c,d),nb.call(N),mb.call(N),eb.call(N);var P,Q,R,S,T,U,V,Y,Z,$,_,ab,bb,cb,db,fb,gb,hb,ib,jb,lb,qb,sb,tb,ub,vb,wb,xb,zb=N.opt,Ab=N.trigger,Bb=N.clearEvents,Cb=N.renderOverlay,Db=N.clearOverlays,Eb=N.daySelectionMousedown,Fb=c.formatDate;W(b.addClass("fc-grid")),fb=new ob(function(b,c){var d,e,f;R.each(function(b,g){d=a(g),e=d.offset().left,b&&(f[1]=e),f=[e],c[b]=f}),f[1]=e+d.outerWidth(),T.each(function(c,g){cb>c&&(d=a(g),e=d.offset().top,c&&(f[1]=e),f=[e],b[c]=f)}),f[1]=e+d.outerHeight()}),gb=new pb(fb),hb=new rb(function(a){return Y.eq(a)})}function eb(){function b(a,b){n(a),A(d(a),b),j("eventAfterAllRender")}function c(){o(),t().empty()}function d(b){var c,d,e,f,h,j,k=y(),l=z(),n=m(g.visStart),o=i(m(n),l),p=a.map(b,x),q=[];for(c=0;k>c;c++){for(d=C(B(b,p,n,o)),e=0;e<d.length;e++)for(f=d[e],h=0;h<f.length;h++)j=f[h],j.row=c,j.level=e,q.push(j);i(n,7),i(o,7)}return q}function e(a,b,c){k(a)&&f(a,b),c.isEnd&&l(a)&&D(a,b,c),p(a,b)}function f(a,b){var c,d=u();b.draggable({zIndex:9,delay:50,opacity:h("dragOpacity"),revertDuration:h("dragRevertDuration"),start:function(e,f){j("eventDragStart",b,a,e,f),r(a,b),d.start(function(d,e,f,g){b.draggable("option","revert",!d||!f&&!g),w(),d?(c=7*f+g*(h("isRTL")?-1:1),v(i(m(a.start),c),i(x(a),c))):c=0},e,"drag")},stop:function(e,f){d.stop(),w(),j("eventDragStop",b,a,e,f),c?s(this,a,c,0,a.allDay,e,f):(b.css("filter",""),q(a,b))}})}var g=this;g.renderEvents=b,g.compileDaySegs=d,g.clearEvents=c,g.bindDaySeg=e,lb.call(g);var h=g.opt,j=g.trigger,k=g.isEventDraggable,l=g.isEventResizable,n=g.reportEvents,o=g.reportEventClear,p=g.eventElementHandlers,q=g.showEvents,r=g.hideEvents,s=g.eventDrop,t=g.getDaySegmentContainer,u=g.getHoverListener,v=g.renderDayOverlay,w=g.clearOverlays,y=g.getRowCnt,z=g.getColCnt,A=g.renderDaySegs,D=g.resizableDayEvent}function fb(a,b){function c(a,b){b&&i(a,7*b);var c=i(m(a),-((a.getDay()-e("firstDay")+7)%7)),h=i(m(c),7),j=m(c),k=m(h),l=e("weekends");l||(o(j),o(k,-1,!0)),d.title=g(j,i(m(k),-1),e("titleFormat")),d.start=c,d.end=h,d.visStart=j,d.visEnd=k,f(l?7:5)}var d=this;d.render=c,hb.call(d,a,b,"agendaWeek");var e=d.opt,f=d.renderAgenda,g=b.formatDates}function gb(a,b){function c(a,b){b&&(i(a,b),e("weekends")||o(a,0>b?-1:1));var c=m(a,!0),h=i(m(c),1);d.title=g(a,e("titleFormat")),d.start=d.visStart=c,d.end=d.visEnd=h,f(1)}var d=this;d.render=c,hb.call(d,a,b,"agendaDay");var e=d.opt,f=d.renderAgenda,g=b.formatDate}function hb(c,d,e){function f(a){Kb=a,g(),ab?cc():h(),j()}function g(){Qb=ac("theme")?"ui":"fc",Sb=ac("weekends")?0:1,Rb=ac("firstDay"),(Tb=ac("isRTL"))?(Ub=-1,Vb=Kb-1):(Ub=1,Vb=0),Wb=t(ac("minTime")),Xb=t(ac("maxTime")),Yb=ac("columnFormat"),Zb=ac("weekNumbers"),$b=ac("weekNumberTitle"),_b="iso"!=ac("weekNumberCalculation")?"w":"W",Hb=ac("snapMinutes")||ac("slotMinutes")}function h(){var b,d,e,f,g,h=Qb+"-widget-header",i=Qb+"-widget-content",j=0==ac("slotMinutes")%15;for(b="<table style='width:100%' class='fc-agenda-days fc-border-separate' cellspacing='0'><thead><tr>",b+=Zb?"<th class='fc-agenda-axis fc-week-number "+h+"'/>":"<th class='fc-agenda-axis "+h+"'> </th>",d=0;Kb>d;d++)b+="<th class='fc- fc-col"+d+" "+h+"'/>";for(b+="<th class='fc-agenda-gutter "+h+"'> </th>"+"</tr>"+"</thead>"+"<tbody>"+"<tr>"+"<th class='fc-agenda-axis "+h+"'> </th>",d=0;Kb>d;d++)b+="<td class='fc- fc-col"+d+" "+i+"'>"+"<div>"+"<div class='fc-day-content'>"+"<div style='position:relative'> </div>"+"</div>"+"</div>"+"</td>";for(b+="<td class='fc-agenda-gutter "+i+"'> </td>"+"</tr>"+"</tbody>"+"</table>",ab=a(b).appendTo(c),bb=ab.find("thead"),cb=bb.find("th").slice(1,-1),db=ab.find("tbody"),eb=db.find("td").slice(0,-1),fb=eb.find("div.fc-day-content div"),gb=eb.eq(0),hb=gb.find("> div"),X(bb.add(bb.find("tr"))),X(db.add(db.find("tr"))),yb=bb.find("th:first"),zb=ab.find(".fc-agenda-gutter"),jb=a("<div style='position:absolute;z-index:2;left:0;width:100%'/>").appendTo(c),ac("allDaySlot")?(lb=a("<div style='position:absolute;z-index:8;top:0;left:0'/>").appendTo(jb),b="<table style='width:100%' class='fc-agenda-allday' cellspacing='0'><tr><th class='"+h+" fc-agenda-axis'>"+ac("allDayText")+"</th>"+"<td>"+"<div class='fc-day-content'><div style='position:relative'/></div>"+"</td>"+"<th class='"+h+" fc-agenda-gutter'> </th>"+"</tr>"+"</table>",qb=a(b).appendTo(jb),sb=qb.find("tr"),v(sb.find("td")),yb=yb.add(qb.find("th:first")),zb=zb.add(qb.find("th.fc-agenda-gutter")),jb.append("<div class='fc-agenda-divider "+h+"'>"+"<div class='fc-agenda-divider-inner'/>"+"</div>")):lb=a([]),tb=a("<div style='position:absolute;width:100%;overflow-x:hidden;overflow-y:auto'/>").appendTo(jb),ub=a("<div style='position:relative;width:100%;overflow:hidden'/>").appendTo(tb),vb=a("<div style='position:absolute;z-index:8;top:0;left:0'/>").appendTo(ub),b="<table class='fc-agenda-slots' style='width:100%' cellspacing='0'><tbody>",e=n(),f=k(m(e),Xb),k(e,Wb),Lb=0,d=0;f>e;d++)g=e.getMinutes(),b+="<tr class='fc-slot"+d+" "+(g?"fc-minor":"")+"'>"+"<th class='fc-agenda-axis "+h+"'>"+(j&&g?" ":jc(e,ac("axisFormat")))+"</th>"+"<td class='"+i+"'>"+"<div style='position:relative'> </div>"+"</td>"+"</tr>",k(e,ac("slotMinutes")),Lb++;b+="</tbody></table>",wb=a(b).appendTo(ub),xb=wb.find("div:first"),w(wb.find("td")),yb=yb.add(wb.find("th:first"))}function j(){var a,b,c,d,e=l(new Date);if(Zb){var f=jc(H(0),_b);Tb?f+=$b:f=$b+f,bb.find(".fc-week-number").text(f)}for(a=0;Kb>a;a++)d=H(a),b=cb.eq(a),b.html(jc(d,Yb)),c=eb.eq(a),+d==+e?c.addClass(Qb+"-state-highlight fc-today"):c.removeClass(Qb+"-state-highlight fc-today"),Y(b.add(c),d)}function o(a,c){a===b&&(a=Cb),Cb=a,kc={};var d=db.position().top,e=tb.position().top,f=Math.min(a-d,wb.height()+e+1);hb.height(f-K(gb)),jb.css("top",d),tb.height(f-e-1),Gb=xb.height()+1,Ib=ac("slotMinutes")/Hb,Jb=Gb/Ib,c&&r()}function q(b){Bb=b,Ob.clear(),Db=0,E(yb.width("").each(function(b,c){Db=Math.max(Db,a(c).outerWidth())}),Db);var c=tb[0].clientWidth;Fb=tb.width()-c,Fb?(E(zb,Fb),zb.show().prev().removeClass("fc-last")):zb.hide().prev().addClass("fc-last"),Eb=Math.floor((c-Db)/Kb),E(cb.slice(0,-1),Eb)}function r(){function a(){tb.scrollTop(d)}var b=n(),c=m(b);c.setHours(ac("firstHour"));var d=L(b,c)+1;a(),setTimeout(a,0)}function s(){Pb=tb.scrollTop()}function u(){tb.scrollTop(Pb)}function v(a){a.click(x).mousedown(hc)}function w(a){a.click(x).mousedown(U)}function x(a){if(!ac("selectable")){var b=Math.min(Kb-1,Math.floor((a.pageX-ab.offset().left-Db)/Eb)),c=H(b),d=this.parentNode.className.match(/fc-slot(\d+)/);if(d){var e=parseInt(d[1])*ac("slotMinutes"),f=Math.floor(e/60);c.setHours(f),c.setMinutes(e%60+Wb),bc("dayClick",eb[b],c,!1,a)}else bc("dayClick",eb[b],c,!0,a)}}function y(a,b,c){c&&Mb.build();var d,e,f=m(_.visStart);Tb?(d=p(b,f)*Ub+Vb+1,e=p(a,f)*Ub+Vb+1):(d=p(a,f),e=p(b,f)),d=Math.max(0,d),e=Math.min(Kb,e),e>d&&v(z(0,d,0,e-1))}function z(a,b,c,d){var e=Mb.rect(a,b,c,d,jb);return dc(e,jb)}function A(a,b){for(var c=m(_.visStart),d=i(m(c),1),e=0;Kb>e;e++){var f=new Date(Math.max(c,a)),g=new Date(Math.min(d,b));if(g>f){var h=e*Ub+Vb,j=Mb.rect(0,h,0,h,ub),k=L(c,f),l=L(c,g);j.top=k,j.height=l-k,w(dc(j,ub))}i(c,1),i(d,1)}}function B(a){return Ob.left(a)}function C(a){return Ob.right(a)}function D(a){return{row:Math.floor(p(a,_.visStart)/7),col:J(a.getDay())}}function G(a){var b=H(a.col),c=a.row;return ac("allDaySlot")&&c--,c>=0&&k(b,Wb+c*Hb),b}function H(a){return i(m(_.visStart),a*Ub+Vb)}function I(a){return ac("allDaySlot")&&!a.row}function J(a){return(a-Math.max(Rb,Sb)+Kb)%Kb*Ub+Vb}function L(a,c){if(a=m(a,!0),c<k(m(a),Wb))return 0;if(c>=k(m(a),Xb))return wb.height();var d=ac("slotMinutes"),e=60*c.getHours()+c.getMinutes()-Wb,f=Math.floor(e/d),g=kc[f];return g===b&&(g=kc[f]=wb.find("tr:eq("+f+") td div")[0].offsetTop),Math.max(0,Math.round(g-1+Gb*(e%d/d)))}function M(){return{left:Db,right:Bb-Fb}}function N(){return sb}function O(a){var b=m(a.start);return a.allDay?b:k(b,ac("defaultEventMinutes"))}function P(a,b){return b?m(a):k(m(a),ac("slotMinutes"))}function R(a,b,c){c?ac("allDaySlot")&&y(a,i(m(b),1),!0):S(a,b)}function S(b,c){var d=ac("selectHelper");if(Mb.build(),d){var e=p(b,_.visStart)*Ub+Vb;if(e>=0&&Kb>e){var f=Mb.rect(0,e,0,e,ub),g=L(b,b),h=L(b,c);if(h>g){if(f.top=g,f.height=h-g,f.left+=2,f.width-=5,a.isFunction(d)){var i=d(b,c);i&&(f.position="absolute",f.zIndex=8,Ab=a(i).css(f).appendTo(ub))}else f.isStart=!0,f.isEnd=!0,Ab=a(ic({title:"",start:b,end:c,className:["fc-select-helper"],editable:!1},f)),Ab.css("opacity",ac("dragOpacity"));Ab&&(w(Ab),ub.append(Ab),E(Ab,f.width,!0),F(Ab,f.height,!0))}}}else A(b,c)}function T(){ec(),Ab&&(Ab.remove(),Ab=null)}function U(b){if(1==b.which&&ac("selectable")){gc(b);var c;Nb.start(function(a,b){if(T(),a&&a.col==b.col&&!I(a)){var d=G(b),e=G(a);c=[d,k(m(d),Hb),e,k(m(e),Hb)].sort(Q),S(c[0],c[3])}else c=null},b),a(document).one("mouseup",function(a){Nb.stop(),c&&(+c[0]==+c[1]&&V(c[0],!1,a),fc(c[0],c[3],!1,a))})}}function V(a,b,c){bc("dayClick",eb[J(a.getDay())],a,b,c)}function Z(a,b){Nb.start(function(a){if(ec(),a)if(I(a))z(a.row,a.col,a.row,a.col);else{var b=G(a),c=k(m(b),ac("defaultEventMinutes"));A(b,c)}},b)}function $(a,b,c){var d=Nb.stop();ec(),d&&bc("drop",a,G(d),I(d),b,c)}var _=this;_.renderAgenda=f,_.setWidth=q,_.setHeight=o,_.beforeHide=s,_.afterShow=u,_.defaultEventEnd=O,_.timePosition=L,_.dayOfWeekCol=J,_.dateCell=D,_.cellDate=G,_.cellIsAllDay=I,_.allDayRow=N,_.allDayBounds=M,_.getHoverListener=function(){return Nb},_.colContentLeft=B,_.colContentRight=C,_.getDaySegmentContainer=function(){return lb},_.getSlotSegmentContainer=function(){return vb},_.getMinMinute=function(){return Wb},_.getMaxMinute=function(){return Xb},_.getBodyContent=function(){return ub},_.getRowCnt=function(){return 1},_.getColCnt=function(){return Kb},_.getColWidth=function(){return Eb},_.getSnapHeight=function(){return Jb},_.getSnapMinutes=function(){return Hb},_.defaultSelectionEnd=P,_.renderDayOverlay=y,_.renderSelection=R,_.clearSelection=T,_.reportDayClick=V,_.dragStart=Z,_.dragStop=$,kb.call(_,c,d,e),nb.call(_),mb.call(_),ib.call(_);var ab,bb,cb,db,eb,fb,gb,hb,jb,lb,qb,sb,tb,ub,vb,wb,xb,yb,zb,Ab,Bb,Cb,Db,Eb,Fb,Gb,Hb,Ib,Jb,Kb,Lb,Mb,Nb,Ob,Pb,Qb,Rb,Sb,Tb,Ub,Vb,Wb,Xb,Yb,Zb,$b,_b,ac=_.opt,bc=_.trigger,cc=_.clearEvents,dc=_.renderOverlay,ec=_.clearOverlays,fc=_.reportSelection,gc=_.unselect,hc=_.daySelectionMousedown,ic=_.slotSegHtml,jc=d.formatDate,kc={};W(c.addClass("fc-agenda")),Mb=new ob(function(b,c){function d(a){return Math.max(i,Math.min(j,a))}var e,f,g;cb.each(function(b,d){e=a(d),f=e.offset().left,b&&(g[1]=f),g=[f],c[b]=g}),g[1]=f+e.outerWidth(),ac("allDaySlot")&&(e=sb,f=e.offset().top,b[0]=[f,f+e.outerHeight()]);for(var h=ub.offset().top,i=tb.offset().top,j=i+tb.outerHeight(),k=0;Lb*Ib>k;k++)b.push([d(h+Jb*k),d(h+Jb*(k+1))])}),Nb=new pb(Mb),Ob=new rb(function(a){return fb.eq(a)})}function ib(){function c(a,b){y(a);var c,d=a.length,g=[],i=[];for(c=0;d>c;c++)a[c].allDay?g.push(a[c]):i.push(a[c]);s("allDaySlot")&&(Q(e(g),b),E()),h(f(i),b),t("eventAfterAllRender")}function d(){z(),H().empty(),I().empty()}function e(b){var c,d,e,f,g=C(B(b,a.map(b,x),r.visStart,r.visEnd)),h=g.length,i=[];for(c=0;h>c;c++)for(d=g[c],e=0;e<d.length;e++)f=d[e],f.row=0,f.level=c,i.push(f);return i}function f(b){var c,d,e,f,h,j,l=S(),n=M(),o=L(),p=k(m(r.visStart),n),q=a.map(b,g),s=[];for(c=0;l>c;c++){for(d=C(B(b,q,p,k(m(p),o-n))),jb(d),e=0;e<d.length;e++)for(f=d[e],h=0;h<f.length;h++)j=f[h],j.col=c,j.level=e,s.push(j);
|
3 |
-
i(p,1,!0)}return s}function g(a){return a.end?m(a.end):k(m(a.start),s("defaultEventMinutes"))}function h(c,d){var e,f,g,h,i,k,l,m,o,p,q,u,v,w,x,y,z,A,B,C,E,F,H=c.length,J="",L={},M={},Q=I(),R=S();for((C=s("isRTL"))?(E=-1,F=R-1):(E=1,F=0),e=0;H>e;e++)f=c[e],g=f.event,h=N(f.start,f.start),i=N(f.start,f.end),k=f.col,l=f.level,m=f.forward||0,o=O(k*E+F),p=P(k*E+F)-o,p=Math.min(p-6,.95*p),q=l?p/(l+m+1):m?2*(p/(m+1)-6):p,u=o+p/(l+m+1)*l*E+(C?p-q:0),f.top=h,f.left=u,f.outerWidth=q,f.outerHeight=i-h,J+=j(g,f);for(Q[0].innerHTML=J,v=Q.children(),e=0;H>e;e++)f=c[e],g=f.event,w=a(v[e]),x=t("eventRender",g,g,w,r),x===!1?w.remove():(x&&x!==!0&&(w.remove(),w=a(x).css({position:"absolute",top:f.top,left:f.left}).appendTo(Q)),f.element=w,g._id===d?n(g,w,f):w[0]._fci=e,$(g,w));for(D(Q,c,n),e=0;H>e;e++)f=c[e],(w=f.element)&&(z=L[y=f.key=V(w[0])],f.vsides=z===b?L[y]=K(w,!0):z,z=M[y],f.hsides=z===b?M[y]=G(w,!0):z,A=w.find(".fc-event-title"),A.length&&(f.contentTop=A[0].offsetTop));for(e=0;H>e;e++)f=c[e],(w=f.element)&&(w[0].style.width=Math.max(0,f.outerWidth-f.hsides)+"px",B=Math.max(0,f.outerHeight-f.vsides),w[0].style.height=B+"px",g=f.event,f.contentTop!==b&&B-f.contentTop<10&&(w.find("div.fc-event-time").text(gb(g.start,s("timeFormat"))+" - "+g.title),w.find("div.fc-event-title").remove()),t("eventAfterRender",g,g,w))}function j(a,b){var c="<",d=a.url,e=Z(a,s),f=["fc-event","fc-event-vert"];return u(a)&&f.push("fc-event-draggable"),b.isStart&&f.push("fc-event-start"),b.isEnd&&f.push("fc-event-end"),f=f.concat(a.className),a.source&&(f=f.concat(a.source.className||[])),c+=d?"a href='"+U(a.url)+"'":"div",c+=" class='"+f.join(" ")+"'"+" style='position:absolute;z-index:8;top:"+b.top+"px;left:"+b.left+"px;"+e+"'"+">"+"<div class='fc-event-inner'>"+"<div class='fc-event-time'>"+U(hb(a.start,a.end,s("timeFormat")))+"</div>"+"<div class='fc-event-title'>"+U(a.title)+"</div>"+"</div>"+"<div class='fc-event-bg'></div>",b.isEnd&&v(a)&&(c+="<div class='ui-resizable-handle ui-resizable-s'>=</div>"),c+="</"+(d?"a":"div")+">"}function l(a,b,c){u(a)&&o(a,b,c.isStart),c.isEnd&&v(a)&&R(a,b,c),A(a,b)}function n(a,b,c){var d=b.find("div.fc-event-time");u(a)&&p(a,b,d),c.isEnd&&v(a)&&q(a,b,d),A(a,b)}function o(a,b,c){function d(){h||(b.width(e).height("").draggable("option","grid",null),h=!0)}var e,f,g,h=!0,j=s("isRTL")?-1:1,k=J(),l=T(),n=W(),o=X(),p=M();b.draggable({zIndex:9,opacity:s("dragOpacity","month"),revertDuration:s("dragRevertDuration"),start:function(p,q){t("eventDragStart",b,a,p,q),ab(a,b),e=b.width(),k.start(function(e,k,p,q){eb(),e?(f=!1,g=q*j,e.row?c?h&&(b.width(l-10),F(b,n*Math.round((a.end?(a.end-a.start)/Bb:s("defaultEventMinutes"))/o)),b.draggable("option","grid",[l,1]),h=!1):f=!0:(db(i(m(a.start),g),i(x(a),g)),d()),f=f||h&&!g):(d(),f=!0),b.draggable("option","revert",f)},p,"drag")},stop:function(c,e){if(k.stop(),eb(),t("eventDragStop",b,a,c,e),f)d(),b.css("filter",""),_(a,b);else{var i=0;h||(i=Math.round((b.offset().top-Y().offset().top)/n)*o+p-(60*a.start.getHours()+a.start.getMinutes())),bb(this,a,g,i,h,c,e)}}})}function p(a,b,c){function d(b){var d,e=k(m(a.start),b);a.end&&(d=k(m(a.end),b)),c.text(hb(e,d,s("timeFormat")))}function e(){l&&(c.css("display",""),b.draggable("option","grid",[q,r]),l=!1)}var f,g,h,j,l=!1,n=s("isRTL")?-1:1,o=J(),p=S(),q=T(),r=W(),u=X();b.draggable({zIndex:9,scroll:!1,grid:[q,r],axis:1==p?"y":!1,opacity:s("dragOpacity"),revertDuration:s("dragRevertDuration"),start:function(d,k){t("eventDragStart",b,a,d,k),ab(a,b),f=b.position(),h=j=0,o.start(function(d,f,h,j){b.draggable("option","revert",!d),eb(),d&&(g=j*n,s("allDaySlot")&&!d.row?(l||(l=!0,c.hide(),b.draggable("option","grid",null)),db(i(m(a.start),g),i(x(a),g))):e())},d,"drag")},drag:function(a,b){h=Math.round((b.position.top-f.top)/r)*u,h!=j&&(l||d(h),j=h)},stop:function(c,i){var j=o.stop();eb(),t("eventDragStop",b,a,c,i),j&&(g||h||l)?bb(this,a,g,l?0:h,l,c,i):(e(),b.css("filter",""),b.css(f),d(0),_(a,b))}})}function q(a,b,c){var d,e,f=W(),g=X();b.resizable({handles:{s:".ui-resizable-handle"},grid:f,start:function(c,f){d=e=0,ab(a,b),b.css("z-index",9),t("eventResizeStart",this,a,c,f)},resize:function(h,i){d=Math.round((Math.max(f,b.height())-i.originalSize.height)/f),d!=e&&(c.text(hb(a.start,d||a.end?k(w(a),g*d):null,s("timeFormat"))),e=d)},stop:function(c,e){t("eventResizeStop",this,a,c,e),d?cb(this,a,0,g*d,c,e):(b.css("z-index",8),_(a,b))}})}var r=this;r.renderEvents=c,r.compileDaySegs=e,r.clearEvents=d,r.slotSegHtml=j,r.bindDaySeg=l,lb.call(r);var s=r.opt,t=r.trigger,u=r.isEventDraggable,v=r.isEventResizable,w=r.eventEnd,y=r.reportEvents,z=r.reportEventClear,A=r.eventElementHandlers,E=r.setHeight,H=r.getDaySegmentContainer,I=r.getSlotSegmentContainer,J=r.getHoverListener,L=r.getMaxMinute,M=r.getMinMinute,N=r.timePosition,O=r.colContentLeft,P=r.colContentRight,Q=r.renderDaySegs,R=r.resizableDayEvent,S=r.getColCnt,T=r.getColWidth,W=r.getSnapHeight,X=r.getSnapMinutes,Y=r.getBodyContent,$=r.reportEventElement,_=r.showEvents,ab=r.hideEvents,bb=r.eventDrop,cb=r.eventResize,db=r.renderDayOverlay,eb=r.clearOverlays,fb=r.calendar,gb=fb.formatDate,hb=fb.formatDates}function jb(a){var b,c,d,e,f,g;for(b=a.length-1;b>0;b--)for(e=a[b],c=0;c<e.length;c++)for(f=e[c],d=0;d<a[b-1].length;d++)g=a[b-1][d],A(f,g)&&(g.forward=Math.max(g.forward||0,(f.forward||0)+1))}function kb(a,c,d){function e(a,b){var c=F[a];return"object"==typeof c?T(c,b||d):c}function f(a,b){return c.trigger.apply(c,[a,b||y].concat(Array.prototype.slice.call(arguments,2),[y]))}function g(a){return j(a)&&!e("disableDragging")}function h(a){return j(a)&&!e("disableResizing")}function j(a){return _(a.editable,(a.source||{}).editable,e("editable"))}function l(a){C={};var b,c,d=a.length;for(b=0;d>b;b++)c=a[b],C[c._id]?C[c._id].push(c):C[c._id]=[c]}function n(a){return a.end?m(a.end):z(a)}function o(a,b){D.push(b),E[a._id]?E[a._id].push(b):E[a._id]=[b]}function p(){D=[],E={}}function q(a,b){b.click(function(c){return b.hasClass("ui-draggable-dragging")||b.hasClass("ui-resizable-resizing")?void 0:f("eventClick",this,a,c)}).hover(function(b){f("eventMouseover",this,a,b)},function(b){f("eventMouseout",this,a,b)})}function r(a,b){t(a,b,"show")}function s(a,b){t(a,b,"hide")}function t(a,b,c){var d,e=E[a._id],f=e.length;for(d=0;f>d;d++)b&&e[d][0]==b[0]||e[d][c]()}function u(a,b,c,d,e,g,h){var i=b.allDay,j=b._id;w(C[j],c,d,e),f("eventDrop",a,b,c,d,e,function(){w(C[j],-c,-d,i),B(j)},g,h),B(j)}function v(a,b,c,d,e,g){var h=b._id;x(C[h],c,d),f("eventResize",a,b,c,d,function(){x(C[h],-c,-d),B(h)},e,g),B(h)}function w(a,c,d,e){d=d||0;for(var f,g=a.length,h=0;g>h;h++)f=a[h],e!==b&&(f.allDay=e),k(i(f.start,c,!0),d),f.end&&(f.end=k(i(f.end,c,!0),d)),A(f,F)}function x(a,b,c){c=c||0;for(var d,e=a.length,f=0;e>f;f++)d=a[f],d.end=k(i(n(d),b,!0),c),A(d,F)}var y=this;y.element=a,y.calendar=c,y.name=d,y.opt=e,y.trigger=f,y.isEventDraggable=g,y.isEventResizable=h,y.reportEvents=l,y.eventEnd=n,y.reportEventElement=o,y.reportEventClear=p,y.eventElementHandlers=q,y.showEvents=r,y.hideEvents=s,y.eventDrop=u,y.eventResize=v;var z=y.defaultEventEnd,A=c.normalizeEvent,B=c.reportEventChange,C={},D=[],E={},F=c.options}function lb(){function c(a,b){var c,d,i,m,q,r,s,t,u=N(),v=B(),w=C(),x=0,y=a.length;for(u[0].innerHTML=e(a),f(a,u.children()),g(a),h(a,u,b),j(a),k(a),l(a),c=n(),d=0;v>d;d++){for(i=0,m=[],q=0;w>q;q++)m[q]=0;for(;y>x&&(r=a[x]).row==d;){for(s=R(m.slice(r.startCol,r.endCol)),r.top=s,s+=r.outerHeight,t=r.startCol;t<r.endCol;t++)m[t]=s;x++}c[d].height(R(m))}p(a,o(c))}function d(b,c,d){var g,h,i,m=a("<div/>"),q=N(),r=b.length;for(m[0].innerHTML=e(b),g=m.children(),q.append(g),f(b,g),j(b),k(b),l(b),p(b,o(n())),g=[],h=0;r>h;h++)i=b[h].element,i&&(b[h].row===c&&i.css("top",d),g.push(i[0]));return a(g)}function e(a){var b,c,d,e,f,g,h,i,j,k,l=s("isRTL"),m=a.length,n=F(),o=n.left,p=n.right,q="";for(b=0;m>b;b++)c=a[b],d=c.event,f=["fc-event","fc-event-hori"],u(d)&&f.push("fc-event-draggable"),c.isStart&&f.push("fc-event-start"),c.isEnd&&f.push("fc-event-end"),l?(g=J(c.end.getDay()-1),h=J(c.start.getDay()),i=c.isEnd?H(g):o,j=c.isStart?I(h):p):(g=J(c.start.getDay()),h=J(c.end.getDay()-1),i=c.isStart?H(g):o,j=c.isEnd?I(h):p),f=f.concat(d.className),d.source&&(f=f.concat(d.source.className||[])),e=d.url,k=Z(d,s),q+=e?"<a href='"+U(e)+"'":"<div",q+=" class='"+f.join(" ")+"'"+" style='position:absolute;z-index:8;left:"+i+"px;"+k+"'"+">"+"<div class='fc-event-inner'>",!d.allDay&&c.isStart&&(q+="<span class='fc-event-time'>"+U(P(d.start,d.end,s("timeFormat")))+"</span>"),q+="<span class='fc-event-title'>"+U(d.title)+"</span>"+"</div>",c.isEnd&&v(d)&&(q+="<div class='ui-resizable-handle ui-resizable-"+(l?"w":"e")+"'>"+" "+"</div>"),q+="</"+(e?"a":"div")+">",c.left=i,c.outerWidth=j-i,c.startCol=g,c.endCol=h+1;return q}function f(b,c){var d,e,f,g,h,i=b.length;for(d=0;i>d;d++)e=b[d],f=e.event,g=a(c[d]),h=t("eventRender",f,f,g,r),h===!1?g.remove():(h&&h!==!0&&(h=a(h).css({position:"absolute",left:e.left}),g.replaceWith(h),g=h),e.element=g)}function g(a){var b,c,d,e=a.length;for(b=0;e>b;b++)c=a[b],d=c.element,d&&x(c.event,d)}function h(a,b,c){var d,e,f,g,h=a.length;for(d=0;h>d;d++)e=a[d],f=e.element,f&&(g=e.event,g._id===c?O(g,f,e):f[0]._fci=d);D(b,a,O)}function j(a){var c,d,e,f,g,h=a.length,i={};for(c=0;h>c;c++)d=a[c],e=d.element,e&&(f=d.key=V(e[0]),g=i[f],g===b&&(g=i[f]=G(e,!0)),d.hsides=g)}function k(a){var b,c,d,e=a.length;for(b=0;e>b;b++)c=a[b],d=c.element,d&&(d[0].style.width=Math.max(0,c.outerWidth-c.hsides)+"px")}function l(a){var c,d,e,f,g,h=a.length,i={};for(c=0;h>c;c++)d=a[c],e=d.element,e&&(f=d.key,g=i[f],g===b&&(g=i[f]=M(e)),d.outerHeight=e[0].offsetHeight+g)}function n(){var a,b=B(),c=[];for(a=0;b>a;a++)c[a]=E(a).find("div.fc-day-content > div");return c}function o(a){var b,c=a.length,d=[];for(b=0;c>b;b++)d[b]=a[b][0].offsetTop;return d}function p(a,b){var c,d,e,f,g=a.length;for(c=0;g>c;c++)d=a[c],e=d.element,e&&(e[0].style.top=b[d.row]+(d.top||0)+"px",f=d.event,t("eventAfterRender",f,f,e))}function q(b,c,e){var f=s("isRTL"),g=f?"w":"e",h=c.find(".ui-resizable-"+g),j=!1;W(c),c.mousedown(function(a){a.preventDefault()}).click(function(a){j&&(a.preventDefault(),a.stopImmediatePropagation())}),h.mousedown(function(h){function k(c){t("eventResizeStop",this,b,c),a("body").css("cursor",""),o.stop(),S(),l&&A(this,b,l,0,c),setTimeout(function(){j=!1},0)}if(1==h.which){j=!0;var l,n,o=r.getHoverListener(),p=B(),q=C(),s=f?-1:1,u=f?q-1:0,v=c.css("top"),x=a.extend({},b),D=K(b.start);T(),a("body").css("cursor",g+"-resize").one("mouseup",k),t("eventResizeStart",this,b,h),o.start(function(a,c){if(a){var h=Math.max(D.row,a.row),j=a.col;1==p&&(h=0),h==D.row&&(j=f?Math.min(D.col,j):Math.max(D.col,j)),l=7*h+j*s+u-(7*c.row+c.col*s+u);var k=i(w(b),l,!0);if(l){x.end=k;var o=n;n=d(L([x]),e.row,v),n.find("*").css("cursor",g+"-resize"),o&&o.remove(),z(b)}else n&&(y(b),n.remove(),n=null);S(),Q(b.start,i(m(k),1))}},h)}})}var r=this;r.renderDaySegs=c,r.resizableDayEvent=q;var s=r.opt,t=r.trigger,u=r.isEventDraggable,v=r.isEventResizable,w=r.eventEnd,x=r.reportEventElement,y=r.showEvents,z=r.hideEvents,A=r.eventResize,B=r.getRowCnt,C=r.getColCnt;r.getColWidth;var E=r.allDayRow,F=r.allDayBounds,H=r.colContentLeft,I=r.colContentRight,J=r.dayOfWeekCol,K=r.dateCell,L=r.compileDaySegs,N=r.getDaySegmentContainer,O=r.bindDaySeg,P=r.calendar.formatDates,Q=r.renderDayOverlay,S=r.clearOverlays,T=r.clearSelection}function mb(){function b(a,b,e){c(),b||(b=i(a,e)),j(a,b,e),d(a,b,e)}function c(a){l&&(l=!1,k(),h("unselect",null,a))}function d(a,b,c,d){l=!0,h("select",null,a,b,c,d)}function e(b){var e=f.cellDate,h=f.cellIsAllDay,i=f.getHoverListener(),l=f.reportDayClick;if(1==b.which&&g("selectable")){c(b);var m;i.start(function(a,b){k(),a&&h(a)?(m=[e(b),e(a)].sort(Q),j(m[0],m[1],!0)):m=null},b),a(document).one("mouseup",function(a){i.stop(),m&&(+m[0]==+m[1]&&l(m[0],!0,a),d(m[0],m[1],!0,a))})}}var f=this;f.select=b,f.unselect=c,f.reportSelection=d,f.daySelectionMousedown=e;var g=f.opt,h=f.trigger,i=f.defaultSelectionEnd,j=f.renderSelection,k=f.clearSelection,l=!1;g("selectable")&&g("unselectAuto")&&a(document).mousedown(function(b){var d=g("unselectCancel");d&&a(b.target).parents(d).length||c(b)})}function nb(){function b(b,c){var d=f.shift();return d||(d=a("<div class='fc-cell-overlay' style='position:absolute;z-index:3'/>")),d[0].parentNode!=c[0]&&d.appendTo(c),e.push(d.css(b).show()),d}function c(){for(var a;a=e.shift();)f.push(a.hide().unbind())}var d=this;d.renderOverlay=b,d.clearOverlays=c;var e=[],f=[]}function ob(a){var b,c,d=this;d.build=function(){b=[],c=[],a(b,c)},d.cell=function(a,d){var e,f=b.length,g=c.length,h=-1,i=-1;for(e=0;f>e;e++)if(d>=b[e][0]&&d<b[e][1]){h=e;break}for(e=0;g>e;e++)if(a>=c[e][0]&&a<c[e][1]){i=e;break}return h>=0&&i>=0?{row:h,col:i}:null},d.rect=function(a,d,e,f,g){var h=g.offset();return{top:b[a][0]-h.top,left:c[d][0]-h.left,width:c[f][1]-c[d][0],height:b[e][1]-b[a][0]}}}function pb(b){function c(a){qb(a);var c=b.cell(a.pageX,a.pageY);(!c!=!g||c&&(c.row!=g.row||c.col!=g.col))&&(c?(f||(f=c),e(c,f,c.row-f.row,c.col-f.col)):e(c,f),g=c)}var d,e,f,g,h=this;h.start=function(h,i,j){e=h,f=g=null,b.build(),c(i),d=j||"mousemove",a(document).bind(d,c)},h.stop=function(){return a(document).unbind(d,c),g}}function qb(a){a.pageX===b&&(a.pageX=a.originalEvent.pageX,a.pageY=a.originalEvent.pageY)}function rb(a){function c(b){return e[b]=e[b]||a(b)}var d=this,e={},f={},g={};d.left=function(a){return f[a]=f[a]===b?c(a).position().left:f[a]},d.right=function(a){return g[a]=g[a]===b?d.left(a)+c(a).width():g[a]},d.clear=function(){e={},f={},g={}}}var sb={defaultView:"month",aspectRatio:1.35,header:{left:"title",center:"",right:"today prev,next"},weekends:!0,weekNumbers:!1,weekNumberCalculation:"iso",weekNumberTitle:"W",allDayDefault:!0,ignoreTimezone:!0,lazyFetching:!0,startParam:"start",endParam:"end",titleFormat:{month:"MMMM yyyy",week:"MMM d[ yyyy]{ '—'[ MMM] d yyyy}",day:"dddd, MMM d, yyyy"},columnFormat:{month:"ddd",week:"ddd M/d",day:"dddd M/d"},timeFormat:{"":"h(:mm)t"},isRTL:!1,firstDay:0,monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],buttonText:{prev:"<span class='fc-text-arrow'>‹</span>",next:"<span class='fc-text-arrow'>›</span>",prevYear:"<span class='fc-text-arrow'>«</span>",nextYear:"<span class='fc-text-arrow'>»</span>",today:"today",month:"month",week:"week",day:"day"},theme:!1,buttonIcons:{prev:"circle-triangle-w",next:"circle-triangle-e"},unselectAuto:!0,dropAccept:"*"},tb={header:{left:"next,prev today",center:"",right:"title"},buttonText:{prev:"<span class='fc-text-arrow'>›</span>",next:"<span class='fc-text-arrow'>‹</span>",prevYear:"<span class='fc-text-arrow'>»</span>",nextYear:"<span class='fc-text-arrow'>«</span>"},buttonIcons:{prev:"circle-triangle-e",next:"circle-triangle-w"}},ub=a.fullCalendar={version:"1.6.1"},vb=ub.views={};a.fn.fullCalendar=function(c){if("string"==typeof c){var e,f=Array.prototype.slice.call(arguments,1);return this.each(function(){var d=a.data(this,"fullCalendar");if(d&&a.isFunction(d[c])){var g=d[c].apply(d,f);e===b&&(e=g),"destroy"==c&&a.removeData(this,"fullCalendar")}}),e!==b?e:this}var g=c.eventSources||[];return delete c.eventSources,c.events&&(g.push(c.events),delete c.events),c=a.extend(!0,{},sb,c.isRTL||c.isRTL===b&&sb.isRTL?tb:{},c),this.each(function(b,e){var f=a(e),h=new d(f,c,g);f.data("fullCalendar",h),h.render()}),this},ub.sourceNormalizers=[],ub.sourceFetchers=[];var wb={dataType:"json",cache:!1},xb=1;ub.addDays=i,ub.cloneDate=m,ub.parseDate=r,ub.parseISO8601=s,ub.parseTime=t,ub.formatDate=u,ub.formatDates=v;var yb=["sun","mon","tue","wed","thu","fri","sat"],zb=864e5,Ab=36e5,Bb=6e4,Cb={s:function(a){return a.getSeconds()},ss:function(a){return S(a.getSeconds())},m:function(a){return a.getMinutes()},mm:function(a){return S(a.getMinutes())},h:function(a){return a.getHours()%12||12},hh:function(a){return S(a.getHours()%12||12)},H:function(a){return a.getHours()},HH:function(a){return S(a.getHours())},d:function(a){return a.getDate()},dd:function(a){return S(a.getDate())},ddd:function(a,b){return b.dayNamesShort[a.getDay()]},dddd:function(a,b){return b.dayNames[a.getDay()]},M:function(a){return a.getMonth()+1},MM:function(a){return S(a.getMonth()+1)},MMM:function(a,b){return b.monthNamesShort[a.getMonth()]},MMMM:function(a,b){return b.monthNames[a.getMonth()]},yy:function(a){return(a.getFullYear()+"").substring(2)},yyyy:function(a){return a.getFullYear()},t:function(a){return a.getHours()<12?"a":"p"},tt:function(a){return a.getHours()<12?"am":"pm"},T:function(a){return a.getHours()<12?"A":"P"},TT:function(a){return a.getHours()<12?"AM":"PM"},u:function(a){return u(a,"yyyy-MM-dd'T'HH:mm:ss'Z'")},S:function(a){var b=a.getDate();return b>10&&20>b?"th":["st","nd","rd"][b%10-1]||"th"},w:function(a,b){return b.weekNumberCalculation(a)},W:function(a){return w(a)}};ub.dateFormatters=Cb,ub.applyAll=$,vb.month=ab,vb.basicWeek=bb,vb.basicDay=cb,c({weekMode:"fixed"}),vb.agendaWeek=fb,vb.agendaDay=gb,c({allDaySlot:!0,allDayText:"all-day",firstHour:6,slotMinutes:30,defaultEventMinutes:120,axisFormat:"h(:mm)tt",timeFormat:{agenda:"h:mm{ - h:mm}"},dragOpacity:{agenda:.5},minTime:0,maxTime:24})}(jQuery);
|
1 |
+
/*! event-organiser 2.4.0 2013-10-29 18:47 */
|
2 |
!function(a,b){function c(b){a.extend(!0,sb,b)}function d(c,d,j){function k(a){$?(y(),x(),G(),t(a)):l()}function l(){_=d.theme?"ui":"fc",c.addClass("fc"),d.isRTL?c.addClass("fc-rtl"):c.addClass("fc-ltr"),d.theme&&c.addClass("ui-widget"),$=a("<div class='fc-content' style='position:relative'/>").prependTo(c),Y=new e(X,d),Z=Y.render(),Z&&c.prepend(Z),s(d.defaultView),a(window).resize(A),r()||n()}function n(){setTimeout(function(){!ab.start&&r()&&t()},0)}function o(){a(window).unbind("resize",A),Y.destroy(),$.remove(),c.removeClass("fc fc-rtl ui-widget")}function p(){return 0!==hb.offsetWidth}function r(){return 0!==a("body")[0].offsetWidth}function s(b){if(!ab||b!=ab.name){kb++,I();var c,d=ab;d?((d.beforeHide||P)(),O($,$.height()),d.element.hide()):O($,1),$.css("overflow","hidden"),ab=ib[b],ab?ab.element.show():ab=ib[b]=new vb[b](c=db=a("<div class='fc-view fc-view-"+b+"' style='position:absolute'/>").appendTo($),X),d&&Y.deactivateButton(d.name),Y.activateButton(b),t(),$.css("overflow",""),d&&O($,1),c||(ab.afterShow||P)(),kb--}}function t(a){if(p()){kb++,I(),cb===b&&y();var d=!1;!ab.start||a||lb<ab.start||lb>=ab.end?(ab.render(lb,a||0),z(!0),d=!0):ab.sizeDirty?(ab.clearEvents(),z(),d=!0):ab.eventsDirty&&(ab.clearEvents(),d=!0),ab.sizeDirty=!1,ab.eventsDirty=!1,B(d),bb=c.outerWidth(),Y.updateTitle(ab.title);var e=new Date;e>=ab.start&&e<ab.end?Y.disableButton("today"):Y.enableButton("today"),kb--,ab.trigger("viewDisplay",hb)}}function w(){x(),p()&&(y(),z(),I(),ab.clearEvents(),ab.renderEvents(mb),ab.sizeDirty=!1)}function x(){a.each(ib,function(a,b){b.sizeDirty=!0})}function y(){cb=d.contentHeight?d.contentHeight:d.height?d.height-(Z?Z.height():0)-K($):Math.round($.width()/Math.max(d.aspectRatio,.5))}function z(a){kb++,ab.setHeight(cb,a),db&&(db.css("position","relative"),db=null),ab.setWidth($.width(),a),kb--}function A(){if(!kb)if(ab.start){var a=++jb;setTimeout(function(){a==jb&&!kb&&p()&&bb!=(bb=c.outerWidth())&&(kb++,w(),ab.trigger("windowResize",hb),kb--)},200)}else n()}function B(a){!d.lazyFetching||fb(ab.visStart,ab.visEnd)?C():a&&F()}function C(){gb(ab.visStart,ab.visEnd,d)}function D(a){mb=a,F()}function E(a){F(a)}function F(a){G(),p()&&(ab.clearEvents(),ab.renderEvents(mb,a),ab.eventsDirty=!1)}function G(){a.each(ib,function(a,b){b.eventsDirty=!0})}function H(a,c,d){ab.select(a,c,d===b?!0:d)}function I(){ab&&ab.unselect()}function J(){t(-1)}function L(){t(1)}function M(){g(lb,-1),t()}function N(){g(lb,1),t()}function Q(){lb=new Date,t()}function R(a,b,c){a instanceof Date?lb=m(a):q(lb,a,b,c),t()}function S(a,c,d){a!==b&&g(lb,a),c!==b&&h(lb,c),d!==b&&i(lb,d),t()}function T(){return m(lb)}function U(){return ab}function V(a,c){return c===b?d[a]:("height"==a||"contentHeight"==a||"aspectRatio"==a?(d[a]=c,w()):(d[a]=c,F()),void 0)}function W(a,b){return d[a]?d[a].apply(b||hb,Array.prototype.slice.call(arguments,2)):void 0}var X=this;X.options=d,X.render=k,X.destroy=o,X.refetchEvents=C,X.reportEvents=D,X.reportEventChange=E,X.rerenderEvents=F,X.changeView=s,X.select=H,X.unselect=I,X.prev=J,X.next=L,X.prevYear=M,X.nextYear=N,X.today=Q,X.gotoDate=R,X.incrementDate=S,X.formatDate=function(a,b){return u(a,b,d)},X.formatDates=function(a,b,c){return v(a,b,c,d)},X.getDate=T,X.getView=U,X.option=V,X.trigger=W,f.call(X,d,j);var Y,Z,$,_,ab,bb,cb,db,eb,fb=X.isFetchNeeded,gb=X.fetchEvents,hb=c[0],ib={},jb=0,kb=0,lb=new Date,mb=[];q(lb,d.year,d.month,d.date),d.droppable&&a(document).bind("dragstart",function(b,c){var e=b.target,f=a(e);if(!f.parents(".fc").length){var g=d.dropAccept;(a.isFunction(g)?g.call(e,f):f.is(g))&&(eb=e,ab.dragStart(eb,b,c))}}).bind("dragstop",function(a,b){eb&&(ab.dragStop(eb,a,b),eb=null)})}function e(b,c){function d(){m=c.theme?"ui":"fc";var b=c.header;return b?n=a("<table class='fc-header' style='width:100%'/>").append(a("<tr/>").append(f("left")).append(f("center")).append(f("right"))):void 0}function e(){n.remove()}function f(d){var e=a("<td class='fc-header-"+d+"'/>"),f=c.header[d];return f&&a.each(f.split(" "),function(d){d>0&&e.append("<span class='fc-header-space'/>");var f;a.each(this.split(","),function(d,g){if("title"==g)e.append("<span class='fc-header-title'><h2> </h2></span>"),f&&f.addClass(m+"-corner-right"),f=null;else if(a.isFunction(c.customButtons[g])){var h=c.customButtons[g](c);e.append(h)}else{var i;if(b[g]?i=b[g]:vb[g]&&(i=function(){l.removeClass(m+"-state-hover"),b.changeView(g)}),i){var j=c.theme?T(c.buttonIcons,g):null,k=T(c.buttonText,g);if(c.buttonui){var l=a("<span class='fc-button fc-button-"+g+" "+m+"-state-default'>"+k+"</span>");l.button()}else var l=a("<span class='fc-button fc-button-"+g+" "+m+"-state-default'>"+"<span class='fc-button-inner'>"+"<span class='fc-button-content'>"+(j?"<span class='fc-icon-wrap'><span class='ui-icon ui-icon-"+j+"'/>"+"</span>":k)+"</span>"+"<span class='fc-button-effect'><span></span></span>"+"</span>"+"</span>");l&&(l.click(function(){l.hasClass(m+"-state-disabled")||i()}).mousedown(function(){l.not("."+m+"-state-active").not("."+m+"-state-disabled").addClass(m+"-state-hover")},function(){l.removeClass(m+"-state-hover").removeClass(m+"-state-down")}).appendTo(e),W(l),f||l.addClass(m+"-corner-left"),f=l)}}}),f&&f.addClass(m+"-corner-right")}),e}function g(a){n.find("h2").html(a)}function h(a){n.find("span.fc-button-"+a).addClass(m+"-state-active")}function i(a){n.find("span.fc-button-"+a).removeClass(m+"-state-active")}function j(a){n.find("span.fc-button-"+a).addClass(m+"-state-disabled")}function k(a){n.find("span.fc-button-"+a).removeClass(m+"-state-disabled")}var l=this;l.render=d,l.destroy=e,l.updateTitle=g,l.activateButton=h,l.deactivateButton=i,l.disableButton=j,l.enableButton=k;var m,n=a([])}function f(c,d){function e(a,b){return!y||y>a||b>z}function f(a,b,c){y=a,z=b,I=[];var d=++F,e=E.length;G=e;for(var f=0;e>f;f++)g(E[f],d,c)}function g(b,c,d){h(b,function(e){if(c==F){if(e){d.eventDataTransform&&(e=a.map(e,d.eventDataTransform)),b.eventDataTransform&&(e=a.map(e,b.eventDataTransform));for(var f=0;f<e.length;f++)e[f].source=b,t(e[f]);I=I.concat(e)}G--,G||C(I)}},d)}function h(b,d){var e,f,g=ub.sourceFetchers;for(e=0;e<g.length;e++){if(f=g[e](b,y,z,d),f===!0)return;if("object"==typeof f)return h(f,d,c),void 0}var i=b.events;if(i)a.isFunction(i)?(q(),i(m(y),m(z),function(a){d(a),s()},c)):a.isArray(i)?d(i):d();else{var j=b.url;if(j){var k=b.success,l=b.error,n=b.complete,o=a.extend({},b.data||{}),p=_(b.startParam,c.startParam),r=_(b.endParam,c.endParam);p&&(o[p]=Math.round(+y/1e3)),r&&(o[r]=Math.round(+z/1e3)),q(),a.ajax(a.extend({},wb,b,{data:o,success:function(b){b=b||[];var c=$(k,this,arguments);a.isArray(c)&&(b=c),d(b)},error:function(){$(l,this,arguments),d()},complete:function(){$(n,this,arguments),s()}}))}else d()}}function i(a){a=j(a),a&&(G++,g(a,F))}function j(b){return a.isFunction(b)||a.isArray(b)?b={events:b}:"string"==typeof b&&(b={url:b}),"object"==typeof b?(u(b),E.push(b),b):void 0}function k(b){E=a.grep(E,function(a){return!v(a,b)}),I=a.grep(I,function(a){return!v(a.source,b)}),C(I)}function l(a){var b,c,d=I.length,e=B().defaultEventEnd,f=a.start-a._start,g=a.end?a.end-(a._end||e(a)):0;for(b=0;d>b;b++)c=I[b],c._id==a._id&&c!=a&&(c.start=new Date(+c.start+f),c.end=a.end?c.end?new Date(+c.end+g):new Date(+e(c)+g):null,c.title=a.title,c.url=a.url,c.allDay=a.allDay,c.className=a.className,c.editable=a.editable,c.color=a.color,c.backgroundColor=a.backgroundColor,c.borderColor=a.borderColor,c.textColor=a.textColor,t(c));t(a),C(I)}function n(a,b){t(a),a.source||(b&&(D.events.push(a),a.source=D),I.push(a)),C(I)}function o(b){if(b){if(!a.isFunction(b)){var c=b+"";b=function(a){return a._id==c}}I=a.grep(I,b,!0);for(var d=0;d<E.length;d++)a.isArray(E[d].events)&&(E[d].events=a.grep(E[d].events,b,!0))}else{I=[];for(var d=0;d<E.length;d++)a.isArray(E[d].events)&&(E[d].events=[])}C(I)}function p(b){return a.isFunction(b)?a.grep(I,b):b?(b+="",a.grep(I,function(a){return a._id==b})):I}function q(){H++||A("loading",null,!0)}function s(){--H||A("loading",null,!1)}function t(a){var d=a.source||{},e=_(d.ignoreTimezone,c.ignoreTimezone);a._id=a._id||(a.id===b?"_fc"+xb++:a.id+""),a.date&&(a.start||(a.start=a.date),delete a.date),a._start=m(a.start=r(a.start,e)),a.end=r(a.end,e),a.end&&a.end<=a.start&&(a.end=null),a._end=a.end?m(a.end):null,a.allDay===b&&(a.allDay=_(d.allDayDefault,c.allDayDefault)),a.className?"string"==typeof a.className&&(a.className=a.className.split(/\s+/)):a.className=[]}function u(a){a.className?"string"==typeof a.className&&(a.className=a.className.split(/\s+/)):a.className=[];for(var b=ub.sourceNormalizers,c=0;c<b.length;c++)b[c](a)}function v(a,b){return a&&b&&w(a)==w(b)}function w(a){return("object"==typeof a?a.events||a.url:"")||a}var x=this;x.isFetchNeeded=e,x.fetchEvents=f,x.addEventSource=i,x.removeEventSource=k,x.updateEvent=l,x.renderEvent=n,x.removeEvents=o,x.clientEvents=p,x.normalizeEvent=t;for(var y,z,A=x.trigger,B=x.getView,C=x.reportEvents,D={events:[]},E=[D],F=0,G=0,H=0,I=[],J=0;J<d.length;J++)j(d[J])}function g(a,b,c){return a.setFullYear(a.getFullYear()+b),c||l(a),a}function h(a,b,c){if(+a){var d=a.getMonth()+b,e=m(a);for(e.setDate(1),e.setMonth(d),a.setMonth(d),c||l(a);a.getMonth()!=e.getMonth();)a.setDate(a.getDate()+(e>a?1:-1))}return a}function i(a,b,c){if(+a){var d=a.getDate()+b,e=m(a);e.setHours(9),e.setDate(d),a.setDate(d),c||l(a),j(a,e)}return a}function j(a,b){if(+a)for(;a.getDate()!=b.getDate();)a.setTime(+a+(b>a?1:-1)*Ab)}function k(a,b){return a.setMinutes(a.getMinutes()+b),a}function l(a){return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a}function m(a,b){return b?l(new Date(+a)):new Date(+a)}function n(){var a,b=0;do a=new Date(1970,b++,1);while(a.getHours());return a}function o(a,b,c){for(b=b||1;!a.getDay()||c&&1==a.getDay()||!c&&6==a.getDay();)i(a,b);return a}function p(a,b){return Math.round((m(a,!0)-m(b,!0))/zb)}function q(a,c,d,e){c!==b&&c!=a.getFullYear()&&(a.setDate(1),a.setMonth(0),a.setFullYear(c)),d!==b&&d!=a.getMonth()&&(a.setDate(1),a.setMonth(d)),e!==b&&a.setDate(e)}function r(a,c){return"object"==typeof a?a:"number"==typeof a?new Date(1e3*a):"string"==typeof a?a.match(/^\d+(\.\d+)?$/)?new Date(1e3*parseFloat(a)):(c===b&&(c=!0),s(a,c)||(a?new Date(a):null)):null}function s(a,b){var c=a.match(/^([0-9]{4})(-([0-9]{2})(-([0-9]{2})([T ]([0-9]{2}):([0-9]{2})(:([0-9]{2})(\.([0-9]+))?)?(Z|(([-+])([0-9]{2})(:?([0-9]{2}))?))?)?)?)?$/);if(!c)return null;var d=new Date(c[1],0,1);if(b||!c[13]){var e=new Date(c[1],0,1,9,0);c[3]&&(d.setMonth(c[3]-1),e.setMonth(c[3]-1)),c[5]&&(d.setDate(c[5]),e.setDate(c[5])),j(d,e),c[7]&&d.setHours(c[7]),c[8]&&d.setMinutes(c[8]),c[10]&&d.setSeconds(c[10]),c[12]&&d.setMilliseconds(1e3*Number("0."+c[12])),j(d,e)}else if(d.setUTCFullYear(c[1],c[3]?c[3]-1:0,c[5]||1),d.setUTCHours(c[7]||0,c[8]||0,c[10]||0,c[12]?1e3*Number("0."+c[12]):0),c[14]){var f=60*Number(c[16])+(c[18]?Number(c[18]):0);f*="-"==c[15]?1:-1,d=new Date(+d+1e3*60*f)}return d}function t(a){if("number"==typeof a)return 60*a;if("object"==typeof a)return 60*a.getHours()+a.getMinutes();var b=a.match(/(\d+)(?::(\d+))?\s*(\w+)?/);if(b){var c=parseInt(b[1],10);return b[3]&&(c%=12,"p"==b[3].toLowerCase().charAt(0)&&(c+=12)),60*c+(b[2]?parseInt(b[2],10):0)}}function u(a,b,c){return v(a,null,b,c)}function v(a,b,c,d){d=d||sb;var e,f,g,h,i=a,j=b,k=c.length,l="";for(e=0;k>e;e++)if(f=c.charAt(e),"'"==f){for(g=e+1;k>g;g++)if("'"==c.charAt(g)){i&&(l+=g==e+1?"'":c.substring(e+1,g),e=g);break}}else if("("==f){for(g=e+1;k>g;g++)if(")"==c.charAt(g)){var m=u(i,c.substring(e+1,g),d);parseInt(m.replace(/\D/,""),10)&&(l+=m),e=g;break}}else if("["==f){for(g=e+1;k>g;g++)if("]"==c.charAt(g)){var n=c.substring(e+1,g),m=u(i,n,d);m!=u(j,n,d)&&(l+=m),e=g;break}}else if("{"==f)i=b,j=a;else if("}"==f)i=a,j=b;else{for(g=k;g>e;g--)if(h=Cb[c.substring(e,g)]){i&&(l+=h(i,d)),e=g-1;break}g==e&&i&&(l+=f)}return l}function w(a){var b,c=new Date(a.getTime());return c.setDate(c.getDate()+4-(c.getDay()||7)),b=c.getTime(),c.setMonth(0),c.setDate(1),Math.floor(Math.round((b-c)/864e5)/7)+1}function x(a){return a.end?y(a.end,a.allDay):i(m(a.start),1)}function y(a,b){return a=m(a),b||a.getHours()||a.getMinutes()?i(a,1):l(a)}function z(a,b){return 100*(b.msLength-a.msLength)+(a.event.start-b.event.start)}function A(a,b){return a.end>b.start&&a.start<b.end}function B(a,b,c,d){var e,f,g,h,i,j,k,l,n=[],o=a.length;for(e=0;o>e;e++)f=a[e],g=f.start,h=b[e],h>c&&d>g&&(c>g?(i=m(c),k=!1):(i=g,k=!0),h>d?(j=m(d),l=!1):(j=h,l=!0),n.push({event:f,start:i,end:j,isStart:k,isEnd:l,msLength:j-i}));return n.sort(z)}function C(a){var b,c,d,e,f,g=[],h=a.length;for(b=0;h>b;b++){for(c=a[b],d=0;;){if(e=!1,g[d])for(f=0;f<g[d].length;f++)if(A(g[d][f],c)){e=!0;break}if(!e)break;d++}g[d]?g[d].push(c):g[d]=[c]}return g}function D(c,d,e){c.unbind("mouseover").mouseover(function(c){for(var f,g,h,i=c.target;i!=this;)f=i,i=i.parentNode;(g=f._fci)!==b&&(f._fci=b,h=d[g],e(h.event,h.element,h),a(c.target).trigger(c)),c.stopPropagation()})}function E(b,c,d){for(var e,f=0;f<b.length;f++)e=a(b[f]),e.width(Math.max(0,c-G(e,d)))}function F(b,c,d){for(var e,f=0;f<b.length;f++)e=a(b[f]),e.height(Math.max(0,c-K(e,d)))}function G(a,b){return H(a)+J(a)+(b?I(a):0)}function H(b){return(parseFloat(a.css(b[0],"paddingLeft",!0))||0)+(parseFloat(a.css(b[0],"paddingRight",!0))||0)}function I(b){return(parseFloat(a.css(b[0],"marginLeft",!0))||0)+(parseFloat(a.css(b[0],"marginRight",!0))||0)}function J(b){return(parseFloat(a.css(b[0],"borderLeftWidth",!0))||0)+(parseFloat(a.css(b[0],"borderRightWidth",!0))||0)}function K(a,b){return L(a)+N(a)+(b?M(a):0)}function L(b){return(parseFloat(a.css(b[0],"paddingTop",!0))||0)+(parseFloat(a.css(b[0],"paddingBottom",!0))||0)}function M(b){return(parseFloat(a.css(b[0],"marginTop",!0))||0)+(parseFloat(a.css(b[0],"marginBottom",!0))||0)}function N(b){return(parseFloat(a.css(b[0],"borderTopWidth",!0))||0)+(parseFloat(a.css(b[0],"borderBottomWidth",!0))||0)}function O(a,b){b="number"==typeof b?b+"px":b,a.each(function(a,c){c.style.cssText+=";min-height:"+b+";_height:"+b})}function P(){}function Q(a,b){return a-b}function R(a){return Math.max.apply(Math,a)}function S(a){return(10>a?"0":"")+a}function T(a,c){if(a[c]!==b)return a[c];for(var d,e=c.split(/(?=[A-Z])/),f=e.length-1;f>=0;f--)if(d=a[e[f].toLowerCase()],d!==b)return d;return a[""]}function U(a){return a.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,""").replace(/\n/g,"<br />")}function V(a){return a.id+"/"+a.className+"/"+a.style.cssText.replace(/(^|;)\s*(top|left|width|height)\s*:[^;]*/gi,"")}function W(a){a.attr("unselectable","on").css("MozUserSelect","none").bind("selectstart.ui",function(){return!1})}function X(a){a.children().removeClass("fc-first fc-last").filter(":first-child").addClass("fc-first").end().filter(":last-child").addClass("fc-last")}function Y(a,b){a.each(function(a,c){c.className=c.className.replace(/^fc-\w*/,"fc-"+yb[b.getDay()])})}function Z(a,b){var c=a.source||{},d=a.color,e=c.color,f=b("eventColor"),g=a.backgroundColor||d||c.backgroundColor||e||b("eventBackgroundColor")||f,h=a.borderColor||d||c.borderColor||e||b("eventBorderColor")||f,i=a.textColor||c.textColor||b("eventTextColor"),j=[];return g&&j.push("background-color:"+g),h&&j.push("border-color:"+h),i&&j.push("color:"+i),j.join(";")}function $(b,c,d){if(a.isFunction(b)&&(b=[b]),b){var e,f;for(e=0;e<b.length;e++)f=b[e].apply(c,d)||f;return f}}function _(){for(var a=0;a<arguments.length;a++)if(arguments[a]!==b)return arguments[a]}function ab(a,b){function c(a,b){b&&(h(a,b),a.setDate(1));var c=m(a,!0);c.setDate(1);var j=h(m(c),1),k=m(c),l=m(j),n=e("firstDay"),p=e("weekends")?0:1;p&&(o(k),o(l,-1,!0)),i(k,-((k.getDay()-Math.max(n,p)+7)%7)),i(l,(7-l.getDay()+Math.max(n,p))%7);var q=Math.round((l-k)/(7*zb));"fixed"==e("weekMode")&&(i(l,7*(6-q)),q=6),d.title=g(c,e("titleFormat")),d.start=c,d.end=j,d.visStart=k,d.visEnd=l,f(q,p?5:7,!0)}var d=this;d.render=c,db.call(d,a,b,"month");var e=d.opt,f=d.renderBasic,g=b.formatDate}function bb(a,b){function c(a,b){b&&i(a,7*b);var c=i(m(a),-((a.getDay()-e("firstDay")+7)%7)),h=i(m(c),7),j=m(c),k=m(h),l=e("weekends");l||(o(j),o(k,-1,!0)),d.title=g(j,i(m(k),-1),e("titleFormat")),d.start=c,d.end=h,d.visStart=j,d.visEnd=k,f(1,l?7:5,!1)}var d=this;d.render=c,db.call(d,a,b,"basicWeek");var e=d.opt,f=d.renderBasic,g=b.formatDates}function cb(a,b){function c(a,b){b&&(i(a,b),e("weekends")||o(a,0>b?-1:1)),d.title=g(a,e("titleFormat")),d.start=d.visStart=m(a,!0),d.end=d.visEnd=i(m(d.start),1),f(1,1,!1)}var d=this;d.render=c,db.call(d,a,b,"basicDay");var e=d.opt,f=d.renderBasic,g=b.formatDate}function db(b,c,d){function e(a,b,c){cb=a,db=b,f();var d=!S;d?g():Bb(),h(c)}function f(){ib=zb("isRTL"),ib?(jb=-1,lb=db-1):(jb=1,lb=0),qb=zb("firstDay"),sb=zb("weekends")?0:1,tb=zb("theme")?"ui":"fc",ub=zb("columnFormat"),vb=zb("weekNumbers"),wb=zb("weekNumberTitle"),xb="iso"!=zb("weekNumberCalculation")?"w":"W"}function g(){Z=a("<div style='position:absolute;z-index:8;top:0;left:0'/>").appendTo(b)}function h(c){var d,e,f,g,h="",i=tb+"-widget-header",j=tb+"-widget-content",k=N.start.getMonth(),m=l(new Date);for(h+="<table class='fc-border-separate' style='width:100%' cellspacing='0'><thead><tr>",vb&&(h+="<th class='fc-week-number "+i+"'/>"),d=0;db>d;d++)f=F(0,d),h+="<th class='fc-day-header fc-"+yb[f.getDay()]+" "+i+"'/>";for(h+="</tr></thead><tbody>",d=0;cb>d;d++){for(h+="<tr class='fc-week'>",vb&&(h+="<td class='fc-week-number "+j+"'>"+"<div/>"+"</td>"),e=0;db>e;e++)f=F(d,e),g=["fc-day","fc-"+yb[f.getDay()],j],f.getMonth()!=k&&g.push("fc-other-month"),+f==+m&&(g.push("fc-today"),g.push(tb+"-state-highlight")),h+="<td class='"+g.join(" ")+"'"+" data-date='"+Fb(f,"yyyy-MM-dd")+"'"+">"+"<div>",c&&(h+="<div class='fc-day-number'>"+f.getDate()+"</div>"),h+="<div class='fc-day-content'><div style='position:relative'> </div></div></div></td>";h+="</tr>"}h+="</tbody></table>",L(),P&&P.remove(),P=a(h).appendTo(b),Q=P.find("thead"),R=Q.find(".fc-day-header"),S=P.find("tbody"),T=S.find("tr"),U=S.find(".fc-day"),V=T.find("td:first-child"),Y=T.eq(0).find(".fc-day-content > div"),X(Q.add(Q.find("tr"))),X(T),T.eq(0).addClass("fc-first"),T.filter(":last").addClass("fc-last"),vb&&Q.find(".fc-week-number").text(wb),R.each(function(b,c){var d=G(b);a(c).text(Fb(d,ub))}),vb&&S.find(".fc-week-number > div").each(function(b,c){var d=F(b,0);a(c).text(Fb(d,xb))}),U.each(function(b,c){var d=G(b);Ab("dayRender",N,d,a(c))}),n(U)}function j(b){_=b;var c,d,e,f=_-Q.height();"variable"==zb("weekMode")?c=d=Math.floor(f/(1==cb?2:6)):(c=Math.floor(f/cb),d=f-c*(cb-1)),V.each(function(b,f){cb>b&&(e=a(f),O(e.find("> div"),(b==cb-1?d:c)-K(e)))}),M()}function k(a){$=a,hb.clear(),bb=0,vb&&(bb=Q.find("th.fc-week-number").outerWidth()),ab=Math.floor(($-bb)/db),E(R.slice(0,-1),ab)}function n(a){a.click(o).mousedown(Eb)}function o(b){if(!zb("selectable")){var c=s(a(this).data("date"));Ab("dayClick",this,c,!0,b)}}function q(a,b,c){c&&fb.build();for(var d=m(N.visStart),e=i(m(d),db),f=0;cb>f;f++){var g=new Date(Math.max(d,a)),h=new Date(Math.min(e,b));if(h>g){var j,k;ib?(j=p(h,d)*jb+lb+1,k=p(g,d)*jb+lb+1):(j=p(g,d),k=p(h,d)),n(r(f,j,f,k-1))}i(d,7),i(e,7)}}function r(a,c,d,e){var f=fb.rect(a,c,d,e,b);return Cb(f,b)}function t(a){return m(a)}function u(a,b){q(a,i(m(b),1),!0)}function v(){Db()}function w(a,b,c){var d=C(a),e=U[d.row*db+d.col];Ab("dayClick",e,a,b,c)}function x(a,b){gb.start(function(a){Db(),a&&r(a.row,a.col,a.row,a.col)},b)}function y(a,b,c){var d=gb.stop();if(Db(),d){var e=D(d);Ab("drop",a,e,!0,b,c)}}function z(a){return m(a.start)}function A(a){return hb.left(a)}function B(a){return hb.right(a)}function C(a){return{row:Math.floor(p(a,N.visStart)/7),col:H(a.getDay())}}function D(a){return F(a.row,a.col)}function F(a,b){return i(m(N.visStart),7*a+b*jb+lb)}function G(a){return F(Math.floor(a/db),a%db)}function H(a){return(a-Math.max(qb,sb)+db)%db*jb+lb}function I(a){return T.eq(a)}function J(){var a=0;return vb&&(a+=bb),{left:a,right:$}}function L(){O(b,b.height())}function M(){O(b,1)}var N=this;N.renderBasic=e,N.setHeight=j,N.setWidth=k,N.renderDayOverlay=q,N.defaultSelectionEnd=t,N.renderSelection=u,N.clearSelection=v,N.reportDayClick=w,N.dragStart=x,N.dragStop=y,N.defaultEventEnd=z,N.getHoverListener=function(){return gb},N.colContentLeft=A,N.colContentRight=B,N.dayOfWeekCol=H,N.dateCell=C,N.cellDate=D,N.cellIsAllDay=function(){return!0},N.allDayRow=I,N.allDayBounds=J,N.getRowCnt=function(){return cb},N.getColCnt=function(){return db},N.getColWidth=function(){return ab},N.getDaySegmentContainer=function(){return Z},kb.call(N,b,c,d),nb.call(N),mb.call(N),eb.call(N);var P,Q,R,S,T,U,V,Y,Z,$,_,ab,bb,cb,db,fb,gb,hb,ib,jb,lb,qb,sb,tb,ub,vb,wb,xb,zb=N.opt,Ab=N.trigger,Bb=N.clearEvents,Cb=N.renderOverlay,Db=N.clearOverlays,Eb=N.daySelectionMousedown,Fb=c.formatDate;W(b.addClass("fc-grid")),fb=new ob(function(b,c){var d,e,f;R.each(function(b,g){d=a(g),e=d.offset().left,b&&(f[1]=e),f=[e],c[b]=f}),f[1]=e+d.outerWidth(),T.each(function(c,g){cb>c&&(d=a(g),e=d.offset().top,c&&(f[1]=e),f=[e],b[c]=f)}),f[1]=e+d.outerHeight()}),gb=new pb(fb),hb=new rb(function(a){return Y.eq(a)})}function eb(){function b(a,b){n(a),A(d(a),b),j("eventAfterAllRender")}function c(){o(),t().empty()}function d(b){var c,d,e,f,h,j,k=y(),l=z(),n=m(g.visStart),o=i(m(n),l),p=a.map(b,x),q=[];for(c=0;k>c;c++){for(d=C(B(b,p,n,o)),e=0;e<d.length;e++)for(f=d[e],h=0;h<f.length;h++)j=f[h],j.row=c,j.level=e,q.push(j);i(n,7),i(o,7)}return q}function e(a,b,c){k(a)&&f(a,b),c.isEnd&&l(a)&&D(a,b,c),p(a,b)}function f(a,b){var c,d=u();b.draggable({zIndex:9,delay:50,opacity:h("dragOpacity"),revertDuration:h("dragRevertDuration"),start:function(e,f){j("eventDragStart",b,a,e,f),r(a,b),d.start(function(d,e,f,g){b.draggable("option","revert",!d||!f&&!g),w(),d?(c=7*f+g*(h("isRTL")?-1:1),v(i(m(a.start),c),i(x(a),c))):c=0},e,"drag")},stop:function(e,f){d.stop(),w(),j("eventDragStop",b,a,e,f),c?s(this,a,c,0,a.allDay,e,f):(b.css("filter",""),q(a,b))}})}var g=this;g.renderEvents=b,g.compileDaySegs=d,g.clearEvents=c,g.bindDaySeg=e,lb.call(g);var h=g.opt,j=g.trigger,k=g.isEventDraggable,l=g.isEventResizable,n=g.reportEvents,o=g.reportEventClear,p=g.eventElementHandlers,q=g.showEvents,r=g.hideEvents,s=g.eventDrop,t=g.getDaySegmentContainer,u=g.getHoverListener,v=g.renderDayOverlay,w=g.clearOverlays,y=g.getRowCnt,z=g.getColCnt,A=g.renderDaySegs,D=g.resizableDayEvent}function fb(a,b){function c(a,b){b&&i(a,7*b);var c=i(m(a),-((a.getDay()-e("firstDay")+7)%7)),h=i(m(c),7),j=m(c),k=m(h),l=e("weekends");l||(o(j),o(k,-1,!0)),d.title=g(j,i(m(k),-1),e("titleFormat")),d.start=c,d.end=h,d.visStart=j,d.visEnd=k,f(l?7:5)}var d=this;d.render=c,hb.call(d,a,b,"agendaWeek");var e=d.opt,f=d.renderAgenda,g=b.formatDates}function gb(a,b){function c(a,b){b&&(i(a,b),e("weekends")||o(a,0>b?-1:1));var c=m(a,!0),h=i(m(c),1);d.title=g(a,e("titleFormat")),d.start=d.visStart=c,d.end=d.visEnd=h,f(1)}var d=this;d.render=c,hb.call(d,a,b,"agendaDay");var e=d.opt,f=d.renderAgenda,g=b.formatDate}function hb(c,d,e){function f(a){Kb=a,g(),ab?cc():h(),j()}function g(){Qb=ac("theme")?"ui":"fc",Sb=ac("weekends")?0:1,Rb=ac("firstDay"),(Tb=ac("isRTL"))?(Ub=-1,Vb=Kb-1):(Ub=1,Vb=0),Wb=t(ac("minTime")),Xb=t(ac("maxTime")),Yb=ac("columnFormat"),Zb=ac("weekNumbers"),$b=ac("weekNumberTitle"),_b="iso"!=ac("weekNumberCalculation")?"w":"W",Hb=ac("snapMinutes")||ac("slotMinutes")}function h(){var b,d,e,f,g,h=Qb+"-widget-header",i=Qb+"-widget-content",j=0==ac("slotMinutes")%15;for(b="<table style='width:100%' class='fc-agenda-days fc-border-separate' cellspacing='0'><thead><tr>",b+=Zb?"<th class='fc-agenda-axis fc-week-number "+h+"'/>":"<th class='fc-agenda-axis "+h+"'> </th>",d=0;Kb>d;d++)b+="<th class='fc- fc-col"+d+" "+h+"'/>";for(b+="<th class='fc-agenda-gutter "+h+"'> </th>"+"</tr>"+"</thead>"+"<tbody>"+"<tr>"+"<th class='fc-agenda-axis "+h+"'> </th>",d=0;Kb>d;d++)b+="<td class='fc- fc-col"+d+" "+i+"'>"+"<div>"+"<div class='fc-day-content'>"+"<div style='position:relative'> </div>"+"</div>"+"</div>"+"</td>";for(b+="<td class='fc-agenda-gutter "+i+"'> </td>"+"</tr>"+"</tbody>"+"</table>",ab=a(b).appendTo(c),bb=ab.find("thead"),cb=bb.find("th").slice(1,-1),db=ab.find("tbody"),eb=db.find("td").slice(0,-1),fb=eb.find("div.fc-day-content div"),gb=eb.eq(0),hb=gb.find("> div"),X(bb.add(bb.find("tr"))),X(db.add(db.find("tr"))),yb=bb.find("th:first"),zb=ab.find(".fc-agenda-gutter"),jb=a("<div style='position:absolute;z-index:2;left:0;width:100%'/>").appendTo(c),ac("allDaySlot")?(lb=a("<div style='position:absolute;z-index:8;top:0;left:0'/>").appendTo(jb),b="<table style='width:100%' class='fc-agenda-allday' cellspacing='0'><tr><th class='"+h+" fc-agenda-axis'>"+ac("allDayText")+"</th>"+"<td>"+"<div class='fc-day-content'><div style='position:relative'/></div>"+"</td>"+"<th class='"+h+" fc-agenda-gutter'> </th>"+"</tr>"+"</table>",qb=a(b).appendTo(jb),sb=qb.find("tr"),v(sb.find("td")),yb=yb.add(qb.find("th:first")),zb=zb.add(qb.find("th.fc-agenda-gutter")),jb.append("<div class='fc-agenda-divider "+h+"'>"+"<div class='fc-agenda-divider-inner'/>"+"</div>")):lb=a([]),tb=a("<div style='position:absolute;width:100%;overflow-x:hidden;overflow-y:auto'/>").appendTo(jb),ub=a("<div style='position:relative;width:100%;overflow:hidden'/>").appendTo(tb),vb=a("<div style='position:absolute;z-index:8;top:0;left:0'/>").appendTo(ub),b="<table class='fc-agenda-slots' style='width:100%' cellspacing='0'><tbody>",e=n(),f=k(m(e),Xb),k(e,Wb),Lb=0,d=0;f>e;d++)g=e.getMinutes(),b+="<tr class='fc-slot"+d+" "+(g?"fc-minor":"")+"'>"+"<th class='fc-agenda-axis "+h+"'>"+(j&&g?" ":jc(e,ac("axisFormat")))+"</th>"+"<td class='"+i+"'>"+"<div style='position:relative'> </div>"+"</td>"+"</tr>",k(e,ac("slotMinutes")),Lb++;b+="</tbody></table>",wb=a(b).appendTo(ub),xb=wb.find("div:first"),w(wb.find("td")),yb=yb.add(wb.find("th:first"))}function j(){var a,b,c,d,e=l(new Date);if(Zb){var f=jc(H(0),_b);Tb?f+=$b:f=$b+f,bb.find(".fc-week-number").text(f)}for(a=0;Kb>a;a++)d=H(a),b=cb.eq(a),b.html(jc(d,Yb)),c=eb.eq(a),+d==+e?c.addClass(Qb+"-state-highlight fc-today"):c.removeClass(Qb+"-state-highlight fc-today"),Y(b.add(c),d)}function o(a,c){a===b&&(a=Cb),Cb=a,kc={};var d=db.position().top,e=tb.position().top,f=Math.min(a-d,wb.height()+e+1);hb.height(f-K(gb)),jb.css("top",d),tb.height(f-e-1),Gb=xb.height()+1,Ib=ac("slotMinutes")/Hb,Jb=Gb/Ib,c&&r()}function q(b){Bb=b,Ob.clear(),Db=0,E(yb.width("").each(function(b,c){Db=Math.max(Db,a(c).outerWidth())}),Db);var c=tb[0].clientWidth;Fb=tb.width()-c,Fb?(E(zb,Fb),zb.show().prev().removeClass("fc-last")):zb.hide().prev().addClass("fc-last"),Eb=Math.floor((c-Db)/Kb),E(cb.slice(0,-1),Eb)}function r(){function a(){tb.scrollTop(d)}var b=n(),c=m(b);c.setHours(ac("firstHour"));var d=L(b,c)+1;a(),setTimeout(a,0)}function s(){Pb=tb.scrollTop()}function u(){tb.scrollTop(Pb)}function v(a){a.click(x).mousedown(hc)}function w(a){a.click(x).mousedown(U)}function x(a){if(!ac("selectable")){var b=Math.min(Kb-1,Math.floor((a.pageX-ab.offset().left-Db)/Eb)),c=H(b),d=this.parentNode.className.match(/fc-slot(\d+)/);if(d){var e=parseInt(d[1])*ac("slotMinutes"),f=Math.floor(e/60);c.setHours(f),c.setMinutes(e%60+Wb),bc("dayClick",eb[b],c,!1,a)}else bc("dayClick",eb[b],c,!0,a)}}function y(a,b,c){c&&Mb.build();var d,e,f=m(_.visStart);Tb?(d=p(b,f)*Ub+Vb+1,e=p(a,f)*Ub+Vb+1):(d=p(a,f),e=p(b,f)),d=Math.max(0,d),e=Math.min(Kb,e),e>d&&v(z(0,d,0,e-1))}function z(a,b,c,d){var e=Mb.rect(a,b,c,d,jb);return dc(e,jb)}function A(a,b){for(var c=m(_.visStart),d=i(m(c),1),e=0;Kb>e;e++){var f=new Date(Math.max(c,a)),g=new Date(Math.min(d,b));if(g>f){var h=e*Ub+Vb,j=Mb.rect(0,h,0,h,ub),k=L(c,f),l=L(c,g);j.top=k,j.height=l-k,w(dc(j,ub))}i(c,1),i(d,1)}}function B(a){return Ob.left(a)}function C(a){return Ob.right(a)}function D(a){return{row:Math.floor(p(a,_.visStart)/7),col:J(a.getDay())}}function G(a){var b=H(a.col),c=a.row;return ac("allDaySlot")&&c--,c>=0&&k(b,Wb+c*Hb),b}function H(a){return i(m(_.visStart),a*Ub+Vb)}function I(a){return ac("allDaySlot")&&!a.row}function J(a){return(a-Math.max(Rb,Sb)+Kb)%Kb*Ub+Vb}function L(a,c){if(a=m(a,!0),c<k(m(a),Wb))return 0;if(c>=k(m(a),Xb))return wb.height();var d=ac("slotMinutes"),e=60*c.getHours()+c.getMinutes()-Wb,f=Math.floor(e/d),g=kc[f];return g===b&&(g=kc[f]=wb.find("tr:eq("+f+") td div")[0].offsetTop),Math.max(0,Math.round(g-1+Gb*(e%d/d)))}function M(){return{left:Db,right:Bb-Fb}}function N(){return sb}function O(a){var b=m(a.start);return a.allDay?b:k(b,ac("defaultEventMinutes"))}function P(a,b){return b?m(a):k(m(a),ac("slotMinutes"))}function R(a,b,c){c?ac("allDaySlot")&&y(a,i(m(b),1),!0):S(a,b)}function S(b,c){var d=ac("selectHelper");if(Mb.build(),d){var e=p(b,_.visStart)*Ub+Vb;if(e>=0&&Kb>e){var f=Mb.rect(0,e,0,e,ub),g=L(b,b),h=L(b,c);if(h>g){if(f.top=g,f.height=h-g,f.left+=2,f.width-=5,a.isFunction(d)){var i=d(b,c);i&&(f.position="absolute",f.zIndex=8,Ab=a(i).css(f).appendTo(ub))}else f.isStart=!0,f.isEnd=!0,Ab=a(ic({title:"",start:b,end:c,className:["fc-select-helper"],editable:!1},f)),Ab.css("opacity",ac("dragOpacity"));Ab&&(w(Ab),ub.append(Ab),E(Ab,f.width,!0),F(Ab,f.height,!0))}}}else A(b,c)}function T(){ec(),Ab&&(Ab.remove(),Ab=null)}function U(b){if(1==b.which&&ac("selectable")){gc(b);var c;Nb.start(function(a,b){if(T(),a&&a.col==b.col&&!I(a)){var d=G(b),e=G(a);c=[d,k(m(d),Hb),e,k(m(e),Hb)].sort(Q),S(c[0],c[3])}else c=null},b),a(document).one("mouseup",function(a){Nb.stop(),c&&(+c[0]==+c[1]&&V(c[0],!1,a),fc(c[0],c[3],!1,a))})}}function V(a,b,c){bc("dayClick",eb[J(a.getDay())],a,b,c)}function Z(a,b){Nb.start(function(a){if(ec(),a)if(I(a))z(a.row,a.col,a.row,a.col);else{var b=G(a),c=k(m(b),ac("defaultEventMinutes"));A(b,c)}},b)}function $(a,b,c){var d=Nb.stop();ec(),d&&bc("drop",a,G(d),I(d),b,c)}var _=this;_.renderAgenda=f,_.setWidth=q,_.setHeight=o,_.beforeHide=s,_.afterShow=u,_.defaultEventEnd=O,_.timePosition=L,_.dayOfWeekCol=J,_.dateCell=D,_.cellDate=G,_.cellIsAllDay=I,_.allDayRow=N,_.allDayBounds=M,_.getHoverListener=function(){return Nb},_.colContentLeft=B,_.colContentRight=C,_.getDaySegmentContainer=function(){return lb},_.getSlotSegmentContainer=function(){return vb},_.getMinMinute=function(){return Wb},_.getMaxMinute=function(){return Xb},_.getBodyContent=function(){return ub},_.getRowCnt=function(){return 1},_.getColCnt=function(){return Kb},_.getColWidth=function(){return Eb},_.getSnapHeight=function(){return Jb},_.getSnapMinutes=function(){return Hb},_.defaultSelectionEnd=P,_.renderDayOverlay=y,_.renderSelection=R,_.clearSelection=T,_.reportDayClick=V,_.dragStart=Z,_.dragStop=$,kb.call(_,c,d,e),nb.call(_),mb.call(_),ib.call(_);var ab,bb,cb,db,eb,fb,gb,hb,jb,lb,qb,sb,tb,ub,vb,wb,xb,yb,zb,Ab,Bb,Cb,Db,Eb,Fb,Gb,Hb,Ib,Jb,Kb,Lb,Mb,Nb,Ob,Pb,Qb,Rb,Sb,Tb,Ub,Vb,Wb,Xb,Yb,Zb,$b,_b,ac=_.opt,bc=_.trigger,cc=_.clearEvents,dc=_.renderOverlay,ec=_.clearOverlays,fc=_.reportSelection,gc=_.unselect,hc=_.daySelectionMousedown,ic=_.slotSegHtml,jc=d.formatDate,kc={};W(c.addClass("fc-agenda")),Mb=new ob(function(b,c){function d(a){return Math.max(i,Math.min(j,a))}var e,f,g;cb.each(function(b,d){e=a(d),f=e.offset().left,b&&(g[1]=f),g=[f],c[b]=g}),g[1]=f+e.outerWidth(),ac("allDaySlot")&&(e=sb,f=e.offset().top,b[0]=[f,f+e.outerHeight()]);for(var h=ub.offset().top,i=tb.offset().top,j=i+tb.outerHeight(),k=0;Lb*Ib>k;k++)b.push([d(h+Jb*k),d(h+Jb*(k+1))])}),Nb=new pb(Mb),Ob=new rb(function(a){return fb.eq(a)})}function ib(){function c(a,b){y(a);var c,d=a.length,g=[],i=[];for(c=0;d>c;c++)a[c].allDay?g.push(a[c]):i.push(a[c]);s("allDaySlot")&&(Q(e(g),b),E()),h(f(i),b),t("eventAfterAllRender")}function d(){z(),H().empty(),I().empty()}function e(b){var c,d,e,f,g=C(B(b,a.map(b,x),r.visStart,r.visEnd)),h=g.length,i=[];for(c=0;h>c;c++)for(d=g[c],e=0;e<d.length;e++)f=d[e],f.row=0,f.level=c,i.push(f);return i}function f(b){var c,d,e,f,h,j,l=S(),n=M(),o=L(),p=k(m(r.visStart),n),q=a.map(b,g),s=[];for(c=0;l>c;c++){for(d=C(B(b,q,p,k(m(p),o-n))),jb(d),e=0;e<d.length;e++)for(f=d[e],h=0;h<f.length;h++)j=f[h],j.col=c,j.level=e,s.push(j);
|
3 |
+
i(p,1,!0)}return s}function g(a){return a.end?m(a.end):k(m(a.start),s("defaultEventMinutes"))}function h(c,d){var e,f,g,h,i,k,l,m,o,p,q,u,v,w,x,y,z,A,B,C,E,F,H=c.length,J="",L={},M={},Q=I(),R=S();for((C=s("isRTL"))?(E=-1,F=R-1):(E=1,F=0),e=0;H>e;e++)f=c[e],g=f.event,h=N(f.start,f.start),i=N(f.start,f.end),k=f.col,l=f.level,m=f.forward||0,o=O(k*E+F),p=P(k*E+F)-o,p=Math.min(p-6,.95*p),q=l?p/(l+m+1):m?2*(p/(m+1)-6):p,u=o+p/(l+m+1)*l*E+(C?p-q:0),f.top=h,f.left=u,f.outerWidth=q,f.outerHeight=i-h,J+=j(g,f);for(Q[0].innerHTML=J,v=Q.children(),e=0;H>e;e++)f=c[e],g=f.event,w=a(v[e]),x=t("eventRender",g,g,w,r),x===!1?w.remove():(x&&x!==!0&&(w.remove(),w=a(x).css({position:"absolute",top:f.top,left:f.left}).appendTo(Q)),f.element=w,g._id===d?n(g,w,f):w[0]._fci=e,$(g,w));for(D(Q,c,n),e=0;H>e;e++)f=c[e],(w=f.element)&&(z=L[y=f.key=V(w[0])],f.vsides=z===b?L[y]=K(w,!0):z,z=M[y],f.hsides=z===b?M[y]=G(w,!0):z,A=w.find(".fc-event-title"),A.length&&(f.contentTop=A[0].offsetTop));for(e=0;H>e;e++)f=c[e],(w=f.element)&&(w[0].style.width=Math.max(0,f.outerWidth-f.hsides)+"px",B=Math.max(0,f.outerHeight-f.vsides),w[0].style.height=B+"px",g=f.event,f.contentTop!==b&&B-f.contentTop<10&&(w.find("div.fc-event-time").text(gb(g.start,s("timeFormat"))+" - "+g.title),w.find("div.fc-event-title").remove()),t("eventAfterRender",g,g,w))}function j(a,b){var c="<",d=a.url,e=Z(a,s),f=["fc-event","fc-event-vert"];return u(a)&&f.push("fc-event-draggable"),b.isStart&&f.push("fc-event-start"),b.isEnd&&f.push("fc-event-end"),f=f.concat(a.className),a.source&&(f=f.concat(a.source.className||[])),c+=d?"a href='"+U(a.url)+"'":"div",c+=" class='"+f.join(" ")+"'"+" style='position:absolute;z-index:8;top:"+b.top+"px;left:"+b.left+"px;"+e+"'"+">"+"<div class='fc-event-inner'>"+"<div class='fc-event-time'>"+U(hb(a.start,a.end,s("timeFormat")))+"</div>"+"<div class='fc-event-title'>"+U(a.title)+"</div>"+"</div>"+"<div class='fc-event-bg'></div>",b.isEnd&&v(a)&&(c+="<div class='ui-resizable-handle ui-resizable-s'>=</div>"),c+="</"+(d?"a":"div")+">"}function l(a,b,c){u(a)&&o(a,b,c.isStart),c.isEnd&&v(a)&&R(a,b,c),A(a,b)}function n(a,b,c){var d=b.find("div.fc-event-time");u(a)&&p(a,b,d),c.isEnd&&v(a)&&q(a,b,d),A(a,b)}function o(a,b,c){function d(){h||(b.width(e).height("").draggable("option","grid",null),h=!0)}var e,f,g,h=!0,j=s("isRTL")?-1:1,k=J(),l=T(),n=W(),o=X(),p=M();b.draggable({zIndex:9,opacity:s("dragOpacity","month"),revertDuration:s("dragRevertDuration"),start:function(p,q){t("eventDragStart",b,a,p,q),ab(a,b),e=b.width(),k.start(function(e,k,p,q){eb(),e?(f=!1,g=q*j,e.row?c?h&&(b.width(l-10),F(b,n*Math.round((a.end?(a.end-a.start)/Bb:s("defaultEventMinutes"))/o)),b.draggable("option","grid",[l,1]),h=!1):f=!0:(db(i(m(a.start),g),i(x(a),g)),d()),f=f||h&&!g):(d(),f=!0),b.draggable("option","revert",f)},p,"drag")},stop:function(c,e){if(k.stop(),eb(),t("eventDragStop",b,a,c,e),f)d(),b.css("filter",""),_(a,b);else{var i=0;h||(i=Math.round((b.offset().top-Y().offset().top)/n)*o+p-(60*a.start.getHours()+a.start.getMinutes())),bb(this,a,g,i,h,c,e)}}})}function p(a,b,c){function d(b){var d,e=k(m(a.start),b);a.end&&(d=k(m(a.end),b)),c.text(hb(e,d,s("timeFormat")))}function e(){l&&(c.css("display",""),b.draggable("option","grid",[q,r]),l=!1)}var f,g,h,j,l=!1,n=s("isRTL")?-1:1,o=J(),p=S(),q=T(),r=W(),u=X();b.draggable({zIndex:9,scroll:!1,grid:[q,r],axis:1==p?"y":!1,opacity:s("dragOpacity"),revertDuration:s("dragRevertDuration"),start:function(d,k){t("eventDragStart",b,a,d,k),ab(a,b),f=b.position(),h=j=0,o.start(function(d,f,h,j){b.draggable("option","revert",!d),eb(),d&&(g=j*n,s("allDaySlot")&&!d.row?(l||(l=!0,c.hide(),b.draggable("option","grid",null)),db(i(m(a.start),g),i(x(a),g))):e())},d,"drag")},drag:function(a,b){h=Math.round((b.position.top-f.top)/r)*u,h!=j&&(l||d(h),j=h)},stop:function(c,i){var j=o.stop();eb(),t("eventDragStop",b,a,c,i),j&&(g||h||l)?bb(this,a,g,l?0:h,l,c,i):(e(),b.css("filter",""),b.css(f),d(0),_(a,b))}})}function q(a,b,c){var d,e,f=W(),g=X();b.resizable({handles:{s:".ui-resizable-handle"},grid:f,start:function(c,f){d=e=0,ab(a,b),b.css("z-index",9),t("eventResizeStart",this,a,c,f)},resize:function(h,i){d=Math.round((Math.max(f,b.height())-i.originalSize.height)/f),d!=e&&(c.text(hb(a.start,d||a.end?k(w(a),g*d):null,s("timeFormat"))),e=d)},stop:function(c,e){t("eventResizeStop",this,a,c,e),d?cb(this,a,0,g*d,c,e):(b.css("z-index",8),_(a,b))}})}var r=this;r.renderEvents=c,r.compileDaySegs=e,r.clearEvents=d,r.slotSegHtml=j,r.bindDaySeg=l,lb.call(r);var s=r.opt,t=r.trigger,u=r.isEventDraggable,v=r.isEventResizable,w=r.eventEnd,y=r.reportEvents,z=r.reportEventClear,A=r.eventElementHandlers,E=r.setHeight,H=r.getDaySegmentContainer,I=r.getSlotSegmentContainer,J=r.getHoverListener,L=r.getMaxMinute,M=r.getMinMinute,N=r.timePosition,O=r.colContentLeft,P=r.colContentRight,Q=r.renderDaySegs,R=r.resizableDayEvent,S=r.getColCnt,T=r.getColWidth,W=r.getSnapHeight,X=r.getSnapMinutes,Y=r.getBodyContent,$=r.reportEventElement,_=r.showEvents,ab=r.hideEvents,bb=r.eventDrop,cb=r.eventResize,db=r.renderDayOverlay,eb=r.clearOverlays,fb=r.calendar,gb=fb.formatDate,hb=fb.formatDates}function jb(a){var b,c,d,e,f,g;for(b=a.length-1;b>0;b--)for(e=a[b],c=0;c<e.length;c++)for(f=e[c],d=0;d<a[b-1].length;d++)g=a[b-1][d],A(f,g)&&(g.forward=Math.max(g.forward||0,(f.forward||0)+1))}function kb(a,c,d){function e(a,b){var c=F[a];return"object"==typeof c?T(c,b||d):c}function f(a,b){return c.trigger.apply(c,[a,b||y].concat(Array.prototype.slice.call(arguments,2),[y]))}function g(a){return j(a)&&!e("disableDragging")}function h(a){return j(a)&&!e("disableResizing")}function j(a){return _(a.editable,(a.source||{}).editable,e("editable"))}function l(a){C={};var b,c,d=a.length;for(b=0;d>b;b++)c=a[b],C[c._id]?C[c._id].push(c):C[c._id]=[c]}function n(a){return a.end?m(a.end):z(a)}function o(a,b){D.push(b),E[a._id]?E[a._id].push(b):E[a._id]=[b]}function p(){D=[],E={}}function q(a,b){b.click(function(c){return b.hasClass("ui-draggable-dragging")||b.hasClass("ui-resizable-resizing")?void 0:f("eventClick",this,a,c)}).hover(function(b){f("eventMouseover",this,a,b)},function(b){f("eventMouseout",this,a,b)})}function r(a,b){t(a,b,"show")}function s(a,b){t(a,b,"hide")}function t(a,b,c){var d,e=E[a._id],f=e.length;for(d=0;f>d;d++)b&&e[d][0]==b[0]||e[d][c]()}function u(a,b,c,d,e,g,h){var i=b.allDay,j=b._id;w(C[j],c,d,e),f("eventDrop",a,b,c,d,e,function(){w(C[j],-c,-d,i),B(j)},g,h),B(j)}function v(a,b,c,d,e,g){var h=b._id;x(C[h],c,d),f("eventResize",a,b,c,d,function(){x(C[h],-c,-d),B(h)},e,g),B(h)}function w(a,c,d,e){d=d||0;for(var f,g=a.length,h=0;g>h;h++)f=a[h],e!==b&&(f.allDay=e),k(i(f.start,c,!0),d),f.end&&(f.end=k(i(f.end,c,!0),d)),A(f,F)}function x(a,b,c){c=c||0;for(var d,e=a.length,f=0;e>f;f++)d=a[f],d.end=k(i(n(d),b,!0),c),A(d,F)}var y=this;y.element=a,y.calendar=c,y.name=d,y.opt=e,y.trigger=f,y.isEventDraggable=g,y.isEventResizable=h,y.reportEvents=l,y.eventEnd=n,y.reportEventElement=o,y.reportEventClear=p,y.eventElementHandlers=q,y.showEvents=r,y.hideEvents=s,y.eventDrop=u,y.eventResize=v;var z=y.defaultEventEnd,A=c.normalizeEvent,B=c.reportEventChange,C={},D=[],E={},F=c.options}function lb(){function c(a,b){var c,d,i,m,q,r,s,t,u=N(),v=B(),w=C(),x=0,y=a.length;for(u[0].innerHTML=e(a),f(a,u.children()),g(a),h(a,u,b),j(a),k(a),l(a),c=n(),d=0;v>d;d++){for(i=0,m=[],q=0;w>q;q++)m[q]=0;for(;y>x&&(r=a[x]).row==d;){for(s=R(m.slice(r.startCol,r.endCol)),r.top=s,s+=r.outerHeight,t=r.startCol;t<r.endCol;t++)m[t]=s;x++}c[d].height(R(m))}p(a,o(c))}function d(b,c,d){var g,h,i,m=a("<div/>"),q=N(),r=b.length;for(m[0].innerHTML=e(b),g=m.children(),q.append(g),f(b,g),j(b),k(b),l(b),p(b,o(n())),g=[],h=0;r>h;h++)i=b[h].element,i&&(b[h].row===c&&i.css("top",d),g.push(i[0]));return a(g)}function e(a){var b,c,d,e,f,g,h,i,j,k,l=s("isRTL"),m=a.length,n=F(),o=n.left,p=n.right,q="";for(b=0;m>b;b++)c=a[b],d=c.event,f=["fc-event","fc-event-hori"],u(d)&&f.push("fc-event-draggable"),c.isStart&&f.push("fc-event-start"),c.isEnd&&f.push("fc-event-end"),l?(g=J(c.end.getDay()-1),h=J(c.start.getDay()),i=c.isEnd?H(g):o,j=c.isStart?I(h):p):(g=J(c.start.getDay()),h=J(c.end.getDay()-1),i=c.isStart?H(g):o,j=c.isEnd?I(h):p),f=f.concat(d.className),d.source&&(f=f.concat(d.source.className||[])),e=d.url,k=Z(d,s),q+=e?"<a href='"+U(e)+"'":"<div",q+=" class='"+f.join(" ")+"'"+" style='position:absolute;z-index:8;left:"+i+"px;"+k+"'"+">"+"<div class='fc-event-inner'>",!d.allDay&&c.isStart&&(q+="<span class='fc-event-time'>"+U(P(d.start,d.end,s("timeFormat")))+"</span>"),q+="<span class='fc-event-title'>"+U(d.title)+"</span>"+"</div>",c.isEnd&&v(d)&&(q+="<div class='ui-resizable-handle ui-resizable-"+(l?"w":"e")+"'>"+" "+"</div>"),q+="</"+(e?"a":"div")+">",c.left=i,c.outerWidth=j-i,c.startCol=g,c.endCol=h+1;return q}function f(b,c){var d,e,f,g,h,i=b.length;for(d=0;i>d;d++)e=b[d],f=e.event,g=a(c[d]),h=t("eventRender",f,f,g,r),h===!1?g.remove():(h&&h!==!0&&(h=a(h).css({position:"absolute",left:e.left}),g.replaceWith(h),g=h),e.element=g)}function g(a){var b,c,d,e=a.length;for(b=0;e>b;b++)c=a[b],d=c.element,d&&x(c.event,d)}function h(a,b,c){var d,e,f,g,h=a.length;for(d=0;h>d;d++)e=a[d],f=e.element,f&&(g=e.event,g._id===c?O(g,f,e):f[0]._fci=d);D(b,a,O)}function j(a){var c,d,e,f,g,h=a.length,i={};for(c=0;h>c;c++)d=a[c],e=d.element,e&&(f=d.key=V(e[0]),g=i[f],g===b&&(g=i[f]=G(e,!0)),d.hsides=g)}function k(a){var b,c,d,e=a.length;for(b=0;e>b;b++)c=a[b],d=c.element,d&&(d[0].style.width=Math.max(0,c.outerWidth-c.hsides)+"px")}function l(a){var c,d,e,f,g,h=a.length,i={};for(c=0;h>c;c++)d=a[c],e=d.element,e&&(f=d.key,g=i[f],g===b&&(g=i[f]=M(e)),d.outerHeight=e[0].offsetHeight+g)}function n(){var a,b=B(),c=[];for(a=0;b>a;a++)c[a]=E(a).find("div.fc-day-content > div");return c}function o(a){var b,c=a.length,d=[];for(b=0;c>b;b++)d[b]=a[b][0].offsetTop;return d}function p(a,b){var c,d,e,f,g=a.length;for(c=0;g>c;c++)d=a[c],e=d.element,e&&(e[0].style.top=b[d.row]+(d.top||0)+"px",f=d.event,t("eventAfterRender",f,f,e))}function q(b,c,e){var f=s("isRTL"),g=f?"w":"e",h=c.find(".ui-resizable-"+g),j=!1;W(c),c.mousedown(function(a){a.preventDefault()}).click(function(a){j&&(a.preventDefault(),a.stopImmediatePropagation())}),h.mousedown(function(h){function k(c){t("eventResizeStop",this,b,c),a("body").css("cursor",""),o.stop(),S(),l&&A(this,b,l,0,c),setTimeout(function(){j=!1},0)}if(1==h.which){j=!0;var l,n,o=r.getHoverListener(),p=B(),q=C(),s=f?-1:1,u=f?q-1:0,v=c.css("top"),x=a.extend({},b),D=K(b.start);T(),a("body").css("cursor",g+"-resize").one("mouseup",k),t("eventResizeStart",this,b,h),o.start(function(a,c){if(a){var h=Math.max(D.row,a.row),j=a.col;1==p&&(h=0),h==D.row&&(j=f?Math.min(D.col,j):Math.max(D.col,j)),l=7*h+j*s+u-(7*c.row+c.col*s+u);var k=i(w(b),l,!0);if(l){x.end=k;var o=n;n=d(L([x]),e.row,v),n.find("*").css("cursor",g+"-resize"),o&&o.remove(),z(b)}else n&&(y(b),n.remove(),n=null);S(),Q(b.start,i(m(k),1))}},h)}})}var r=this;r.renderDaySegs=c,r.resizableDayEvent=q;var s=r.opt,t=r.trigger,u=r.isEventDraggable,v=r.isEventResizable,w=r.eventEnd,x=r.reportEventElement,y=r.showEvents,z=r.hideEvents,A=r.eventResize,B=r.getRowCnt,C=r.getColCnt;r.getColWidth;var E=r.allDayRow,F=r.allDayBounds,H=r.colContentLeft,I=r.colContentRight,J=r.dayOfWeekCol,K=r.dateCell,L=r.compileDaySegs,N=r.getDaySegmentContainer,O=r.bindDaySeg,P=r.calendar.formatDates,Q=r.renderDayOverlay,S=r.clearOverlays,T=r.clearSelection}function mb(){function b(a,b,e){c(),b||(b=i(a,e)),j(a,b,e),d(a,b,e)}function c(a){l&&(l=!1,k(),h("unselect",null,a))}function d(a,b,c,d){l=!0,h("select",null,a,b,c,d)}function e(b){var e=f.cellDate,h=f.cellIsAllDay,i=f.getHoverListener(),l=f.reportDayClick;if(1==b.which&&g("selectable")){c(b);var m;i.start(function(a,b){k(),a&&h(a)?(m=[e(b),e(a)].sort(Q),j(m[0],m[1],!0)):m=null},b),a(document).one("mouseup",function(a){i.stop(),m&&(+m[0]==+m[1]&&l(m[0],!0,a),d(m[0],m[1],!0,a))})}}var f=this;f.select=b,f.unselect=c,f.reportSelection=d,f.daySelectionMousedown=e;var g=f.opt,h=f.trigger,i=f.defaultSelectionEnd,j=f.renderSelection,k=f.clearSelection,l=!1;g("selectable")&&g("unselectAuto")&&a(document).mousedown(function(b){var d=g("unselectCancel");d&&a(b.target).parents(d).length||c(b)})}function nb(){function b(b,c){var d=f.shift();return d||(d=a("<div class='fc-cell-overlay' style='position:absolute;z-index:3'/>")),d[0].parentNode!=c[0]&&d.appendTo(c),e.push(d.css(b).show()),d}function c(){for(var a;a=e.shift();)f.push(a.hide().unbind())}var d=this;d.renderOverlay=b,d.clearOverlays=c;var e=[],f=[]}function ob(a){var b,c,d=this;d.build=function(){b=[],c=[],a(b,c)},d.cell=function(a,d){var e,f=b.length,g=c.length,h=-1,i=-1;for(e=0;f>e;e++)if(d>=b[e][0]&&d<b[e][1]){h=e;break}for(e=0;g>e;e++)if(a>=c[e][0]&&a<c[e][1]){i=e;break}return h>=0&&i>=0?{row:h,col:i}:null},d.rect=function(a,d,e,f,g){var h=g.offset();return{top:b[a][0]-h.top,left:c[d][0]-h.left,width:c[f][1]-c[d][0],height:b[e][1]-b[a][0]}}}function pb(b){function c(a){qb(a);var c=b.cell(a.pageX,a.pageY);(!c!=!g||c&&(c.row!=g.row||c.col!=g.col))&&(c?(f||(f=c),e(c,f,c.row-f.row,c.col-f.col)):e(c,f),g=c)}var d,e,f,g,h=this;h.start=function(h,i,j){e=h,f=g=null,b.build(),c(i),d=j||"mousemove",a(document).bind(d,c)},h.stop=function(){return a(document).unbind(d,c),g}}function qb(a){a.pageX===b&&(a.pageX=a.originalEvent.pageX,a.pageY=a.originalEvent.pageY)}function rb(a){function c(b){return e[b]=e[b]||a(b)}var d=this,e={},f={},g={};d.left=function(a){return f[a]=f[a]===b?c(a).position().left:f[a]},d.right=function(a){return g[a]=g[a]===b?d.left(a)+c(a).width():g[a]},d.clear=function(){e={},f={},g={}}}var sb={defaultView:"month",aspectRatio:1.35,header:{left:"title",center:"",right:"today prev,next"},weekends:!0,weekNumbers:!1,weekNumberCalculation:"iso",weekNumberTitle:"W",allDayDefault:!0,ignoreTimezone:!0,lazyFetching:!0,startParam:"start",endParam:"end",titleFormat:{month:"MMMM yyyy",week:"MMM d[ yyyy]{ '—'[ MMM] d yyyy}",day:"dddd, MMM d, yyyy"},columnFormat:{month:"ddd",week:"ddd M/d",day:"dddd M/d"},timeFormat:{"":"h(:mm)t"},isRTL:!1,firstDay:0,monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],buttonText:{prev:"<span class='fc-text-arrow'>‹</span>",next:"<span class='fc-text-arrow'>›</span>",prevYear:"<span class='fc-text-arrow'>«</span>",nextYear:"<span class='fc-text-arrow'>»</span>",today:"today",month:"month",week:"week",day:"day"},theme:!1,buttonIcons:{prev:"circle-triangle-w",next:"circle-triangle-e"},unselectAuto:!0,dropAccept:"*"},tb={header:{left:"next,prev today",center:"",right:"title"},buttonText:{prev:"<span class='fc-text-arrow'>›</span>",next:"<span class='fc-text-arrow'>‹</span>",prevYear:"<span class='fc-text-arrow'>»</span>",nextYear:"<span class='fc-text-arrow'>«</span>"},buttonIcons:{prev:"circle-triangle-e",next:"circle-triangle-w"}},ub=a.fullCalendar={version:"1.6.1"},vb=ub.views={};a.fn.fullCalendar=function(c){if("string"==typeof c){var e,f=Array.prototype.slice.call(arguments,1);return this.each(function(){var d=a.data(this,"fullCalendar");if(d&&a.isFunction(d[c])){var g=d[c].apply(d,f);e===b&&(e=g),"destroy"==c&&a.removeData(this,"fullCalendar")}}),e!==b?e:this}var g=c.eventSources||[];return delete c.eventSources,c.events&&(g.push(c.events),delete c.events),c=a.extend(!0,{},sb,c.isRTL||c.isRTL===b&&sb.isRTL?tb:{},c),this.each(function(b,e){var f=a(e),h=new d(f,c,g);f.data("fullCalendar",h),h.render()}),this},ub.sourceNormalizers=[],ub.sourceFetchers=[];var wb={dataType:"json",cache:!1},xb=1;ub.addDays=i,ub.cloneDate=m,ub.parseDate=r,ub.parseISO8601=s,ub.parseTime=t,ub.formatDate=u,ub.formatDates=v;var yb=["sun","mon","tue","wed","thu","fri","sat"],zb=864e5,Ab=36e5,Bb=6e4,Cb={s:function(a){return a.getSeconds()},ss:function(a){return S(a.getSeconds())},m:function(a){return a.getMinutes()},mm:function(a){return S(a.getMinutes())},h:function(a){return a.getHours()%12||12},hh:function(a){return S(a.getHours()%12||12)},H:function(a){return a.getHours()},HH:function(a){return S(a.getHours())},d:function(a){return a.getDate()},dd:function(a){return S(a.getDate())},ddd:function(a,b){return b.dayNamesShort[a.getDay()]},dddd:function(a,b){return b.dayNames[a.getDay()]},M:function(a){return a.getMonth()+1},MM:function(a){return S(a.getMonth()+1)},MMM:function(a,b){return b.monthNamesShort[a.getMonth()]},MMMM:function(a,b){return b.monthNames[a.getMonth()]},yy:function(a){return(a.getFullYear()+"").substring(2)},yyyy:function(a){return a.getFullYear()},t:function(a){return a.getHours()<12?"a":"p"},tt:function(a){return a.getHours()<12?"am":"pm"},T:function(a){return a.getHours()<12?"A":"P"},TT:function(a){return a.getHours()<12?"AM":"PM"},u:function(a){return u(a,"yyyy-MM-dd'T'HH:mm:ss'Z'")},S:function(a){var b=a.getDate();return b>10&&20>b?"th":["st","nd","rd"][b%10-1]||"th"},w:function(a,b){return b.weekNumberCalculation(a)},W:function(a){return w(a)}};ub.dateFormatters=Cb,ub.applyAll=$,vb.month=ab,vb.basicWeek=bb,vb.basicDay=cb,c({weekMode:"fixed"}),vb.agendaWeek=fb,vb.agendaDay=gb,c({allDaySlot:!0,allDayText:"all-day",firstHour:6,slotMinutes:30,defaultEventMinutes:120,axisFormat:"h(:mm)tt",timeFormat:{agenda:"h:mm{ - h:mm}"},dragOpacity:{agenda:.5},minTime:0,maxTime:24})}(jQuery);
|
js/time-picker.min.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
/*! event-organiser 2.
|
2 |
-
!function($){function Timepicker(){this._curInst=null,this._disabledInputs=[],this._timepickerShowing=!1,this._inDialog=!1,this._dialogClass="ui-timepicker-dialog",this._mainDivId="ui-timepicker-div",this._inlineClass="ui-timepicker-inline",this._currentClass="ui-timepicker-current",this._dayOverClass="ui-timepicker-days-cell-over",this.regional=[],this.regional[""]={hourText:"Hour",minuteText:"Minute",amPmText:["AM","PM"],closeButtonText:"Done",nowButtonText:"Now",deselectButtonText:"Deselect"},this._defaults={showOn:"focus",button:null,showAnim:"fadeIn",showOptions:{},appendText:"",beforeShow:null,onSelect:null,onClose:null,timeSeparator:":",periodSeparator:" ",showPeriod:!1,showPeriodLabels:!0,showLeadingZero:!0,showMinutesLeadingZero:!0,altField:"",defaultTime:"now",myPosition:"left top",atPosition:"left bottom",onHourShow:null,onMinuteShow:null,hours:{starts:0,ends:23},minutes:{starts:0,ends:55,interval:5},rows:4,showHours:!0,showMinutes:!0,optionalMinutes:!1,showCloseButton:!1,showNowButton:!1,showDeselectButton:!1},$.extend(this._defaults,this.regional[""]),this.tpDiv=$('<div id="'+this._mainDivId+'" class="ui-timepicker ui-widget ui-helper-clearfix ui-corner-all " style="display: none"></div>')}function extendRemove(a,b){$.extend(a,b);for(var c in b)(null==b[c]||void 0==b[c])&&(a[c]=b[c]);return a}$.extend($.ui,{timepicker:{version:"0.3.1"}});var PROP_NAME="timepicker",tpuuid=(new Date).getTime();$.extend(Timepicker.prototype,{markerClassName:"hasTimepicker",log:function(){},_widgetTimepicker:function(){return this.tpDiv},setDefaults:function(a){return extendRemove(this._defaults,a||{}),this},_attachTimepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("time:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline="div"==nodeName||"span"==nodeName;target.id||(this.uuid+=1,target.id="tp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),"input"==nodeName?(this._connectTimepicker(target,inst),this._setTimeFromField(inst)):inline&&this._inlineTimepicker(target,inst)},_newInst:function(a,b){var c=a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:c,input:a,inline:b,tpDiv:b?$('<div class="'+this._inlineClass+' ui-timepicker ui-widget ui-helper-clearfix"></div>'):this.tpDiv}},_connectTimepicker:function(a,b){var c=$(a);b.append=$([]),b.trigger=$([]),c.hasClass(this.markerClassName)||(this._attachments(c,b),c.addClass(this.markerClassName).keydown(this._doKeyDown).keyup(this._doKeyUp).bind("setData.timepicker",function(a,c,d){b.settings[c]=d}).bind("getData.timepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b))},_doKeyDown:function(a){var b=$.timepicker._getInst(a.target),c=!0;if(b._keyEvent=!0,$.timepicker._timepickerShowing)switch(a.keyCode){case 9:$.timepicker._hideTimepicker(),c=!1;break;case 13:return $.timepicker._updateSelectedValue(b),$.timepicker._hideTimepicker(),!1;case 27:$.timepicker._hideTimepicker();break;default:c=!1}else 36==a.keyCode&&a.ctrlKey?$.timepicker._showTimepicker(this):c=!1;c&&(a.preventDefault(),a.stopPropagation())},_doKeyUp:function(a){var b=$.timepicker._getInst(a.target);$.timepicker._setTimeFromField(b),$.timepicker._updateTimepicker(b)},_attachments:function(a,b){var c=this._get(b,"appendText"),d=this._get(b,"isRTL");b.append&&b.append.remove(),c&&(b.append=$('<span class="'+this._appendClass+'">'+c+"</span>"),a[d?"before":"after"](b.append)),a.unbind("focus.timepicker",this._showTimepicker),a.unbind("click.timepicker",this._adjustZIndex),b.trigger&&b.trigger.remove();var e=this._get(b,"showOn");if(("focus"==e||"both"==e)&&(a.bind("focus.timepicker",this._showTimepicker),a.bind("click.timepicker",this._adjustZIndex)),"button"==e||"both"==e){var f=this._get(b,"button");$(f).bind("click.timepicker",function(){return $.timepicker._timepickerShowing&&$.timepicker._lastInput==a[0]?$.timepicker._hideTimepicker():b.input.is(":disabled")||$.timepicker._showTimepicker(a[0]),!1})}},_inlineTimepicker:function(a,b){var c=$(a);c.hasClass(this.markerClassName)||(c.addClass(this.markerClassName).append(b.tpDiv).bind("setData.timepicker",function(a,c,d){b.settings[c]=d}).bind("getData.timepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b),this._setTimeFromField(b),this._updateTimepicker(b),b.tpDiv.show())},_adjustZIndex:function(a){a=a.target||a;var b=$.timepicker._getInst(a);b.tpDiv.css("zIndex",$.timepicker._getZIndex(a)+1)},_showTimepicker:function(a){if(a=a.target||a,"input"!=a.nodeName.toLowerCase()&&(a=$("input",a.parentNode)[0]),!$.timepicker._isDisabledTimepicker(a)&&$.timepicker._lastInput!=a){$.timepicker._hideTimepicker();var b=$.timepicker._getInst(a);$.timepicker._curInst&&$.timepicker._curInst!=b&&$.timepicker._curInst.tpDiv.stop(!0,!0);var c=$.timepicker._get(b,"beforeShow");extendRemove(b.settings,c?c.apply(a,[a,b]):{}),b.lastVal=null,$.timepicker._lastInput=a,$.timepicker._setTimeFromField(b),$.timepicker._inDialog&&(a.value=""),$.timepicker._pos||($.timepicker._pos=$.timepicker._findPos(a),$.timepicker._pos[1]+=a.offsetHeight);var d=!1;$(a).parents().each(function(){return d|="fixed"==$(this).css("position"),!d}),d&&$.browser.opera&&($.timepicker._pos[0]-=document.documentElement.scrollLeft,$.timepicker._pos[1]-=document.documentElement.scrollTop);var e={left:$.timepicker._pos[0],top:$.timepicker._pos[1]};if($.timepicker._pos=null,b.tpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.timepicker._updateTimepicker(b),b.inline||"object"!=typeof $.ui.position||(b.tpDiv.position({of:b.input,my:$.timepicker._get(b,"myPosition"),at:$.timepicker._get(b,"atPosition"),collision:"flip"}),e=b.tpDiv.offset(),$.timepicker._pos=[e.top,e.left]),b._hoursClicked=!1,b._minutesClicked=!1,e=$.timepicker._checkOffset(b,e,d),b.tpDiv.css({position:$.timepicker._inDialog&&$.blockUI?"static":d?"fixed":"absolute",display:"none",left:e.left+"px",top:e.top+"px"}),!b.inline){var f=$.timepicker._get(b,"showAnim"),g=$.timepicker._get(b,"duration"),h=function(){$.timepicker._timepickerShowing=!0;var a=$.timepicker._getBorders(b.tpDiv);b.tpDiv.find("iframe.ui-timepicker-cover").css({left:-a[0],top:-a[1],width:b.tpDiv.outerWidth(),height:b.tpDiv.outerHeight()})};$.timepicker._adjustZIndex(a),$.effects&&$.effects[f]?b.tpDiv.show(f,$.timepicker._get(b,"showOptions"),g,h):b.tpDiv[f||"show"](f?g:null,h),f&&g||h(),b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus(),$.timepicker._curInst=b}}},_getZIndex:function(a){for(var b,c,d=$(a);d.length&&d[0]!==document;){if(b=d.css("position"),("absolute"===b||"relative"===b||"fixed"===b)&&(c=parseInt(d.css("zIndex"),10),!isNaN(c)&&0!==c))return c;d=d.parent()}},_refreshTimepicker:function(a){var b=this._getInst(a);b&&this._updateTimepicker(b)},_updateTimepicker:function(a){a.tpDiv.empty().append(this._generateHTML(a)),this._rebindDialogEvents(a)},_rebindDialogEvents:function(a){var b=$.timepicker._getBorders(a.tpDiv),c=this;a.tpDiv.find("iframe.ui-timepicker-cover").css({left:-b[0],top:-b[1],width:a.tpDiv.outerWidth(),height:a.tpDiv.outerHeight()}).end().find(".ui-timepicker-minute-cell").unbind().bind("click",{fromDoubleClick:!1},$.proxy($.timepicker.selectMinutes,this)).bind("dblclick",{fromDoubleClick:!0},$.proxy($.timepicker.selectMinutes,this)).end().find(".ui-timepicker-hour-cell").unbind().bind("click",{fromDoubleClick:!1},$.proxy($.timepicker.selectHours,this)).bind("dblclick",{fromDoubleClick:!0},$.proxy($.timepicker.selectHours,this)).end().find(".ui-timepicker td a").unbind().bind("mouseout",function(){$(this).removeClass("ui-state-hover"),-1!=this.className.indexOf("ui-timepicker-prev")&&$(this).removeClass("ui-timepicker-prev-hover"),-1!=this.className.indexOf("ui-timepicker-next")&&$(this).removeClass("ui-timepicker-next-hover")}).bind("mouseover",function(){c._isDisabledTimepicker(a.inline?a.tpDiv.parent()[0]:a.input[0])||($(this).parents(".ui-timepicker-calendar").find("a").removeClass("ui-state-hover"),$(this).addClass("ui-state-hover"),-1!=this.className.indexOf("ui-timepicker-prev")&&$(this).addClass("ui-timepicker-prev-hover"),-1!=this.className.indexOf("ui-timepicker-next")&&$(this).addClass("ui-timepicker-next-hover"))}).end().find("."+this._dayOverClass+" a").trigger("mouseover").end().find(".ui-timepicker-now").bind("click",function(a){$.timepicker.selectNow(a)}).end().find(".ui-timepicker-deselect").bind("click",function(a){$.timepicker.deselectTime(a)}).end().find(".ui-timepicker-close").bind("click",function(){$.timepicker._hideTimepicker()}).end()},_generateHTML:function(a){var b,c,d,e,f=1==this._get(a,"showPeriod"),g=1==this._get(a,"showPeriodLabels"),h=1==this._get(a,"showLeadingZero"),i=1==this._get(a,"showHours"),j=1==this._get(a,"showMinutes"),k=this._get(a,"amPmText"),l=this._get(a,"rows"),m=0,n=0,o=0,p=0,q=0,r=0,s=Array(),t=this._get(a,"hours"),u=null,v=0,w=this._get(a,"hourText"),x=this._get(a,"showCloseButton"),y=this._get(a,"closeButtonText"),z=this._get(a,"showNowButton"),A=this._get(a,"nowButtonText"),B=this._get(a,"showDeselectButton"),C=this._get(a,"deselectButtonText"),D=x||z||B;for(b=t.starts;b<=t.ends;b++)s.push(b);if(u=Math.ceil(s.length/l),g){for(v=0;v<s.length;v++)s[v]<12?o++:p++;v=0,m=Math.floor(o/s.length*l),n=Math.floor(p/s.length*l),l!=m+n&&(o&&(!p||!m||n&&o/m>=p/n)?m++:n++),q=Math.min(m,1),r=m+1,u=Math.ceil(Math.max(o/m,p/n))}if(e='<table class="ui-timepicker-table ui-widget-content ui-corner-all"><tr>',i){for(e+='<td class="ui-timepicker-hours"><div class="ui-timepicker-title ui-widget-header ui-helper-clearfix ui-corner-all">'+w+"</div>"+'<table class="ui-timepicker">',c=1;l>=c;c++){for(e+="<tr>",c==q&&g&&(e+='<th rowspan="'+m.toString()+'" class="periods" scope="row">'+k[0]+"</th>"),c==r&&g&&(e+='<th rowspan="'+n.toString()+'" class="periods" scope="row">'+k[1]+"</th>"),d=1;u>=d;d++)g&&r>c&&s[v]>=12?e+=this._generateHTMLHourCell(a,void 0,f,h):(e+=this._generateHTMLHourCell(a,s[v],f,h),v++);e+="</tr>"}e+="</tr></table></td>"}if(j&&(e+='<td class="ui-timepicker-minutes">',e+=this._generateHTMLMinutes(a),e+="</td>"),e+="</tr>",D){var E='<tr><td colspan="3"><div class="ui-timepicker-buttonpane ui-widget-content">';z&&(E+='<button type="button" class="ui-timepicker-now ui-state-default ui-corner-all" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" >'+A+"</button>"),B&&(E+='<button type="button" class="ui-timepicker-deselect ui-state-default ui-corner-all" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" >'+C+"</button>"),x&&(E+='<button type="button" class="ui-timepicker-close ui-state-default ui-corner-all" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" >'+y+"</button>"),e+=E+"</div></td></tr>"}return e+="</table>",e+=$.browser.msie&&parseInt($.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-timepicker-cover" frameborder="0"></iframe>':""},_updateMinuteDisplay:function(a){var b=this._generateHTMLMinutes(a);a.tpDiv.find("td.ui-timepicker-minutes").html(b),this._rebindDialogEvents(a)},_generateHTMLMinutes:function(a){var b,c,d="",e=this._get(a,"rows"),f=Array(),g=this._get(a,"minutes"),h=null,i=0,j=1==this._get(a,"showMinutesLeadingZero"),k=this._get(a,"onMinuteShow"),l=this._get(a,"minuteText");for(g.starts||(g.starts=0),g.ends||(g.ends=59),b=g.starts;b<=g.ends;b+=g.interval)f.push(b);if(h=Math.round(f.length/e+.49),k&&0==k.apply(a.input?a.input[0]:null,[a.hours,a.minutes]))for(i=0;i<f.length;i+=1)if(b=f[i],k.apply(a.input?a.input[0]:null,[a.hours,b])){a.minutes=b;break}for(d+='<div class="ui-timepicker-title ui-widget-header ui-helper-clearfix ui-corner-all">'+l+"</div>"+'<table class="ui-timepicker">',i=0,c=1;e>=c;c++){for(d+="<tr>";c*h>i;){b=f[i];var m="";void 0!==b&&(m=10>b&&j?"0"+b.toString():b.toString()),d+=this._generateHTMLMinuteCell(a,b,m),i++}d+="</tr>"}return d+="</table>"},_generateHTMLHourCell:function(a,b,c,d){var e=b;b>12&&c&&(e=b-12),0==e&&c&&(e=12),10>e&&d&&(e="0"+e);var f="",g=!0,h=this._get(a,"onHourShow");return void 0==b?f='<td><span class="ui-state-default ui-state-disabled"> </span></td>':(h&&(g=h.apply(a.input?a.input[0]:null,[b])),f=g?'<td class="ui-timepicker-hour-cell" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" data-hour="'+b.toString()+'">'+'<a class="ui-state-default '+(b==a.hours?"ui-state-active":"")+'">'+e.toString()+"</a></td>":'<td><span class="ui-state-default ui-state-disabled '+(b==a.hours?" ui-state-active ":" ")+'">'+e.toString()+"</span>"+"</td>")},_generateHTMLMinuteCell:function(a,b,c){var d="",e=!0,f=this._get(a,"onMinuteShow");return f&&(e=f.apply(a.input?a.input[0]:null,[a.hours,b])),d=void 0==b?'<td><span class="ui-state-default ui-state-disabled"> </span></td>':e?'<td class="ui-timepicker-minute-cell" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" data-minute="'+b.toString()+'" >'+'<a class="ui-state-default '+(b==a.minutes?"ui-state-active":"")+'" >'+c+"</a></td>":'<td><span class="ui-state-default ui-state-disabled" >'+c+"</span>"+"</td>"},_destroyTimepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();$.removeData(a,PROP_NAME),"input"==d?(c.append.remove(),c.trigger.remove(),b.removeClass(this.markerClassName).unbind("focus.timepicker",this._showTimepicker).unbind("click.timepicker",this._adjustZIndex)):("div"==d||"span"==d)&&b.removeClass(this.markerClassName).empty()}},_enableTimepicker:function(a){var b=$(a),c=b.attr("id"),d=$.data(a,PROP_NAME);if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if("input"==e){a.disabled=!1;var f=this._get(d,"button");$(f).removeClass("ui-state-disabled").disabled=!1,d.trigger.filter("button").each(function(){this.disabled=!1}).end()}else if("div"==e||"span"==e){var g=b.children("."+this._inlineClass);g.children().removeClass("ui-state-disabled"),g.find("button").each(function(){this.disabled=!1})}this._disabledInputs=$.map(this._disabledInputs,function(a){return a==c?null:a})}},_disableTimepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();if("input"==d){var e=this._get(c,"button");$(e).addClass("ui-state-disabled").disabled=!0,a.disabled=!0,c.trigger.filter("button").each(function(){this.disabled=!0}).end()}else if("div"==d||"span"==d){var f=b.children("."+this._inlineClass);f.children().addClass("ui-state-disabled"),f.find("button").each(function(){this.disabled=!0})}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b}),this._disabledInputs[this._disabledInputs.length]=b.attr("id")}},_isDisabledTimepicker:function(a){if(!a)return!1;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return!0;return!1},_checkOffset:function(a,b,c){var d=a.tpDiv.outerWidth(),e=a.tpDiv.outerHeight(),f=a.input?a.input.outerWidth():0,g=a.input?a.input.outerHeight():0,h=document.documentElement.clientWidth+$(document).scrollLeft(),i=document.documentElement.clientHeight+$(document).scrollTop();return b.left-=this._get(a,"isRTL")?d-f:0,b.left-=c&&b.left==a.input.offset().left?$(document).scrollLeft():0,b.top-=c&&b.top==a.input.offset().top+g?$(document).scrollTop():0,b.left-=Math.min(b.left,b.left+d>h&&h>d?Math.abs(b.left+d-h):0),b.top-=Math.min(b.top,b.top+e>i&&i>e?Math.abs(e+g):0),b},_findPos:function(a){for(var b=this._getInst(a),c=this._get(b,"isRTL");a&&("hidden"==a.type||1!=a.nodeType);)a=a[c?"previousSibling":"nextSibling"];var d=$(a).offset();return[d.left,d.top]},_getBorders:function(a){var b=function(a){return{thin:1,medium:2,thick:3}[a]||a};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkExternalClick:function(a){if($.timepicker._curInst){var b=$(a.target);b[0].id==$.timepicker._mainDivId||0!=b.parents("#"+$.timepicker._mainDivId).length||b.hasClass($.timepicker.markerClassName)||b.hasClass($.timepicker._triggerClass)||!$.timepicker._timepickerShowing||$.timepicker._inDialog&&$.blockUI||$.timepicker._hideTimepicker()}},_hideTimepicker:function(a){var b=this._curInst;if(b&&(!a||b==$.data(a,PROP_NAME))&&this._timepickerShowing){var c=this._get(b,"showAnim"),d=this._get(b,"duration"),e=function(){$.timepicker._tidyDialog(b),this._curInst=null};$.effects&&$.effects[c]?b.tpDiv.hide(c,$.timepicker._get(b,"showOptions"),d,e):b.tpDiv["slideDown"==c?"slideUp":"fadeIn"==c?"fadeOut":"hide"](c?d:null,e),c||e(),this._timepickerShowing=!1,this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.tpDiv))),this._inDialog=!1;var f=this._get(b,"onClose");f&&f.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b])}},_tidyDialog:function(a){a.tpDiv.removeClass(this._dialogClass).unbind(".ui-timepicker")},_getInst:function(a){try{return $.data(a,PROP_NAME)}catch(b){throw"Missing instance data for this timepicker"}},_get:function(a,b){return void 0!==a.settings[b]?a.settings[b]:this._defaults[b]},_setTimeFromField:function(a){if(a.input.val()!=a.lastVal){var b=this._get(a,"defaultTime"),c="now"==b?this._getCurrentTimeRounded(a):b;if(0==a.inline&&""!=a.input.val()&&(c=a.input.val()),c instanceof Date)a.hours=c.getHours(),a.minutes=c.getMinutes();else{var d=a.lastVal=c;if(""==c)a.hours=-1,a.minutes=-1;else{var e=this.parseTime(a,d);a.hours=e.hours,a.minutes=e.minutes}}$.timepicker._updateTimepicker(a)}},_optionTimepicker:function(a,b,c){var d=this._getInst(a);if(2==arguments.length&&"string"==typeof b)return"defaults"==b?$.extend({},$.timepicker._defaults):d?"all"==b?$.extend({},d.settings):this._get(d,b):null;var e=b||{};"string"==typeof b&&(e={},e[b]=c),d&&(this._curInst==d&&this._hideTimepicker(),extendRemove(d.settings,e),this._updateTimepicker(d))},_setTimeTimepicker:function(a,b){var c=this._getInst(a);c&&(this._setTime(c,b),this._updateTimepicker(c),this._updateAlternate(c,b))},_setTime:function(a,b,c){var d=a.hours,e=a.minutes;b=this.parseTime(a,b),a.hours=b.hours,a.minutes=b.minutes,d==a.hours&&e==a.minuts||c||a.input.trigger("change"),this._updateTimepicker(a),this._updateSelectedValue(a)},_getCurrentTimeRounded:function(){var a=new Date,b=a.getMinutes(),c=5*Math.round(b/5);return a.setMinutes(c),a},parseTime:function(a,b){var c=new Object;c.hours=-1,c.minutes=-1;var d=this._get(a,"timeSeparator"),e=this._get(a,"amPmText"),f=this._get(a,"showHours"),g=this._get(a,"showMinutes"),h=this._get(a,"optionalMinutes"),i=1==this._get(a,"showPeriod"),j=b.indexOf(d);if(-1!=j?(c.hours=parseInt(b.substr(0,j),10),c.minutes=parseInt(b.substr(j+1),10)):!f||g&&!h?!f&&g&&(c.minutes=parseInt(b,10)):c.hours=parseInt(b,10),f){var k=b.toUpperCase();c.hours<12&&i&&-1!=k.indexOf(e[1].toUpperCase())&&(c.hours+=12),12==c.hours&&i&&-1!=k.indexOf(e[0].toUpperCase())&&(c.hours=0)}return c},selectNow:function(a){var b=$(a.target).attr("data-timepicker-instance-id"),c=$(b),d=this._getInst(c[0]),e=new Date;d.hours=e.getHours(),d.minutes=e.getMinutes(),this._updateSelectedValue(d),this._updateTimepicker(d),this._hideTimepicker()},deselectTime:function(a){var b=$(a.target).attr("data-timepicker-instance-id"),c=$(b),d=this._getInst(c[0]);d.hours=-1,d.minutes=-1,this._updateSelectedValue(d),this._hideTimepicker()},selectHours:function(a){var b=$(a.currentTarget),c=b.attr("data-timepicker-instance-id"),d=parseInt(b.attr("data-hour")),e=a.data.fromDoubleClick,f=$(c),g=this._getInst(f[0]),h=1==this._get(g,"showMinutes");if($.timepicker._isDisabledTimepicker(f.attr("id")))return!1;b.parents(".ui-timepicker-hours:first").find("a").removeClass("ui-state-active"),b.children("a").addClass("ui-state-active"),g.hours=d;var i=this._get(g,"onMinuteShow");return i&&this._updateMinuteDisplay(g),this._updateSelectedValue(g),g._hoursClicked=!0,(g._minutesClicked||e||0==h)&&$.timepicker._hideTimepicker(),!1},selectMinutes:function(a){var b=$(a.currentTarget),c=b.attr("data-timepicker-instance-id"),d=parseInt(b.attr("data-minute")),e=a.data.fromDoubleClick,f=$(c),g=this._getInst(f[0]),h=1==this._get(g,"showHours");return $.timepicker._isDisabledTimepicker(f.attr("id"))?!1:(b.parents(".ui-timepicker-minutes:first").find("a").removeClass("ui-state-active"),b.children("a").addClass("ui-state-active"),g.minutes=d,this._updateSelectedValue(g),g._minutesClicked=!0,g._hoursClicked||e||0==h?($.timepicker._hideTimepicker(),!1):!1)},_updateSelectedValue:function(a){var b=this._getParsedTime(a);a.input&&(a.input.val(b),a.input.trigger("change"));var c=this._get(a,"onSelect");return c&&c.apply(a.input?a.input[0]:null,[b,a]),this._updateAlternate(a,b),b},_getParsedTime:function(a){if(-1==a.hours&&-1==a.minutes)return"";(a.hours<a.hours.starts||a.hours>a.hours.ends)&&(a.hours=0),(a.minutes<a.minutes.starts||a.minutes>a.minutes.ends)&&(a.minutes=0);var b="",c=1==this._get(a,"showPeriod"),d=1==this._get(a,"showLeadingZero"),e=1==this._get(a,"showHours"),f=1==this._get(a,"showMinutes"),g=1==this._get(a,"optionalMinutes"),h=this._get(a,"amPmText"),i=a.hours?a.hours:0,j=a.minutes?a.minutes:0,k=i?i:0,l="";c&&(0==a.hours&&(k=12),a.hours<12?b=h[0]:(b=h[1],k>12&&(k-=12)));var m=k.toString();d&&10>k&&(m="0"+m);var n=j.toString();return 10>j&&(n="0"+n),e&&(l+=m),!e||!f||g&&0==n||(l+=this._get(a,"timeSeparator")),!f||g&&0==n||(l+=n),e&&b.length>0&&(l+=this._get(a,"periodSeparator")+b),l},_updateAlternate:function(a,b){var c=this._get(a,"altField");c&&$(c).each(function(a,c){$(c).val(b)})},_getTimeTimepicker:function(a){var b=this._getInst(a);return this._getParsedTime(b)},_getHourTimepicker:function(a){var b=this._getInst(a);return void 0==b?-1:b.hours},_getMinuteTimepicker:function(a){var b=this._getInst(a);return void 0==b?-1:b.minutes}}),$.fn.timepicker=function(a){$.timepicker.initialized||($(document).mousedown($.timepicker._checkExternalClick).find("body").append($.timepicker.tpDiv),$.timepicker.initialized=!0);var b=Array.prototype.slice.call(arguments,1);return"string"!=typeof a||"getTime"!=a&&"getHour"!=a&&"getMinute"!=a?"option"==a&&2==arguments.length&&"string"==typeof arguments[1]?$.timepicker["_"+a+"Timepicker"].apply($.timepicker,[this[0]].concat(b)):this.each(function(){"string"==typeof a?$.timepicker["_"+a+"Timepicker"].apply($.timepicker,[this].concat(b)):$.timepicker._attachTimepicker(this,a)}):$.timepicker["_"+a+"Timepicker"].apply($.timepicker,[this[0]].concat(b))},$.timepicker=new Timepicker,$.timepicker.initialized=!1,$.timepicker.uuid=(new Date).getTime(),$.timepicker.version="0.3.1",window["TP_jQuery_"+tpuuid]=$}(jQuery);
|
1 |
+
/*! event-organiser 2.4.0 2013-10-29 18:47 */
|
2 |
+
!function($){function Timepicker(){this._curInst=null,this._disabledInputs=[],this._timepickerShowing=!1,this._inDialog=!1,this._dialogClass="ui-timepicker-dialog",this._mainDivId="ui-timepicker-div",this._inlineClass="ui-timepicker-inline",this._currentClass="ui-timepicker-current",this._dayOverClass="ui-timepicker-days-cell-over",this.regional=[],this.regional[""]={hourText:"Hour",minuteText:"Minute",amPmText:["AM","PM"],closeButtonText:"Done",nowButtonText:"Now",deselectButtonText:"Deselect"},this._defaults={showOn:"focus",button:null,showAnim:"fadeIn",showOptions:{},appendText:"",beforeShow:null,onSelect:null,onClose:null,timeSeparator:":",periodSeparator:" ",showPeriod:!1,showPeriodLabels:!0,showLeadingZero:!0,showMinutesLeadingZero:!0,altField:"",defaultTime:"now",myPosition:"left top",atPosition:"left bottom",onHourShow:null,onMinuteShow:null,hours:{starts:0,ends:23},minutes:{starts:0,ends:55,interval:5},rows:4,showHours:!0,showMinutes:!0,optionalMinutes:!1,showCloseButton:!1,showNowButton:!1,showDeselectButton:!1},$.extend(this._defaults,this.regional[""]),this.tpDiv=$('<div id="'+this._mainDivId+'" class="ui-timepicker ui-widget ui-helper-clearfix ui-corner-all " style="display: none"></div>')}function extendRemove(a,b){$.extend(a,b);for(var c in b)(null==b[c]||void 0==b[c])&&(a[c]=b[c]);return a}$.extend($.ui,{timepicker:{version:"0.3.1"}});var PROP_NAME="timepicker",tpuuid=(new Date).getTime();$.extend(Timepicker.prototype,{markerClassName:"hasTimepicker",log:function(){},_widgetTimepicker:function(){return this.tpDiv},setDefaults:function(a){return extendRemove(this._defaults,a||{}),this},_attachTimepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("time:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline="div"==nodeName||"span"==nodeName;target.id||(this.uuid+=1,target.id="tp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),"input"==nodeName?(this._connectTimepicker(target,inst),this._setTimeFromField(inst)):inline&&this._inlineTimepicker(target,inst)},_newInst:function(a,b){var c=a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:c,input:a,inline:b,tpDiv:b?$('<div class="'+this._inlineClass+' ui-timepicker ui-widget ui-helper-clearfix"></div>'):this.tpDiv}},_connectTimepicker:function(a,b){var c=$(a);b.append=$([]),b.trigger=$([]),c.hasClass(this.markerClassName)||(this._attachments(c,b),c.addClass(this.markerClassName).keydown(this._doKeyDown).keyup(this._doKeyUp).bind("setData.timepicker",function(a,c,d){b.settings[c]=d}).bind("getData.timepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b))},_doKeyDown:function(a){var b=$.timepicker._getInst(a.target),c=!0;if(b._keyEvent=!0,$.timepicker._timepickerShowing)switch(a.keyCode){case 9:$.timepicker._hideTimepicker(),c=!1;break;case 13:return $.timepicker._updateSelectedValue(b),$.timepicker._hideTimepicker(),!1;case 27:$.timepicker._hideTimepicker();break;default:c=!1}else 36==a.keyCode&&a.ctrlKey?$.timepicker._showTimepicker(this):c=!1;c&&(a.preventDefault(),a.stopPropagation())},_doKeyUp:function(a){var b=$.timepicker._getInst(a.target);$.timepicker._setTimeFromField(b),$.timepicker._updateTimepicker(b)},_attachments:function(a,b){var c=this._get(b,"appendText"),d=this._get(b,"isRTL");b.append&&b.append.remove(),c&&(b.append=$('<span class="'+this._appendClass+'">'+c+"</span>"),a[d?"before":"after"](b.append)),a.unbind("focus.timepicker",this._showTimepicker),a.unbind("click.timepicker",this._adjustZIndex),b.trigger&&b.trigger.remove();var e=this._get(b,"showOn");if(("focus"==e||"both"==e)&&(a.bind("focus.timepicker",this._showTimepicker),a.bind("click.timepicker",this._adjustZIndex)),"button"==e||"both"==e){var f=this._get(b,"button");$(f).bind("click.timepicker",function(){return $.timepicker._timepickerShowing&&$.timepicker._lastInput==a[0]?$.timepicker._hideTimepicker():b.input.is(":disabled")||$.timepicker._showTimepicker(a[0]),!1})}},_inlineTimepicker:function(a,b){var c=$(a);c.hasClass(this.markerClassName)||(c.addClass(this.markerClassName).append(b.tpDiv).bind("setData.timepicker",function(a,c,d){b.settings[c]=d}).bind("getData.timepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b),this._setTimeFromField(b),this._updateTimepicker(b),b.tpDiv.show())},_adjustZIndex:function(a){a=a.target||a;var b=$.timepicker._getInst(a);b.tpDiv.css("zIndex",$.timepicker._getZIndex(a)+1)},_showTimepicker:function(a){if(a=a.target||a,"input"!=a.nodeName.toLowerCase()&&(a=$("input",a.parentNode)[0]),!$.timepicker._isDisabledTimepicker(a)&&$.timepicker._lastInput!=a){$.timepicker._hideTimepicker();var b=$.timepicker._getInst(a);$.timepicker._curInst&&$.timepicker._curInst!=b&&$.timepicker._curInst.tpDiv.stop(!0,!0);var c=$.timepicker._get(b,"beforeShow");extendRemove(b.settings,c?c.apply(a,[a,b]):{}),b.lastVal=null,$.timepicker._lastInput=a,$.timepicker._setTimeFromField(b),$.timepicker._inDialog&&(a.value=""),$.timepicker._pos||($.timepicker._pos=$.timepicker._findPos(a),$.timepicker._pos[1]+=a.offsetHeight);var d=!1;$(a).parents().each(function(){return d|="fixed"==$(this).css("position"),!d}),d&&$.browser.opera&&($.timepicker._pos[0]-=document.documentElement.scrollLeft,$.timepicker._pos[1]-=document.documentElement.scrollTop);var e={left:$.timepicker._pos[0],top:$.timepicker._pos[1]};if($.timepicker._pos=null,b.tpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.timepicker._updateTimepicker(b),b.inline||"object"!=typeof $.ui.position||(b.tpDiv.position({of:b.input,my:$.timepicker._get(b,"myPosition"),at:$.timepicker._get(b,"atPosition"),collision:"flip"}),e=b.tpDiv.offset(),$.timepicker._pos=[e.top,e.left]),b._hoursClicked=!1,b._minutesClicked=!1,e=$.timepicker._checkOffset(b,e,d),b.tpDiv.css({position:$.timepicker._inDialog&&$.blockUI?"static":d?"fixed":"absolute",display:"none",left:e.left+"px",top:e.top+"px"}),!b.inline){var f=$.timepicker._get(b,"showAnim"),g=$.timepicker._get(b,"duration"),h=function(){$.timepicker._timepickerShowing=!0;var a=$.timepicker._getBorders(b.tpDiv);b.tpDiv.find("iframe.ui-timepicker-cover").css({left:-a[0],top:-a[1],width:b.tpDiv.outerWidth(),height:b.tpDiv.outerHeight()})};$.timepicker._adjustZIndex(a),$.effects&&$.effects[f]?b.tpDiv.show(f,$.timepicker._get(b,"showOptions"),g,h):b.tpDiv[f||"show"](f?g:null,h),f&&g||h(),b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus(),$.timepicker._curInst=b}}},_getZIndex:function(a){for(var b,c,d=$(a);d.length&&d[0]!==document;){if(b=d.css("position"),("absolute"===b||"relative"===b||"fixed"===b)&&(c=parseInt(d.css("zIndex"),10),!isNaN(c)&&0!==c))return c;d=d.parent()}},_refreshTimepicker:function(a){var b=this._getInst(a);b&&this._updateTimepicker(b)},_updateTimepicker:function(a){a.tpDiv.empty().append(this._generateHTML(a)),this._rebindDialogEvents(a)},_rebindDialogEvents:function(a){var b=$.timepicker._getBorders(a.tpDiv),c=this;a.tpDiv.find("iframe.ui-timepicker-cover").css({left:-b[0],top:-b[1],width:a.tpDiv.outerWidth(),height:a.tpDiv.outerHeight()}).end().find(".ui-timepicker-minute-cell").unbind().bind("click",{fromDoubleClick:!1},$.proxy($.timepicker.selectMinutes,this)).bind("dblclick",{fromDoubleClick:!0},$.proxy($.timepicker.selectMinutes,this)).end().find(".ui-timepicker-hour-cell").unbind().bind("click",{fromDoubleClick:!1},$.proxy($.timepicker.selectHours,this)).bind("dblclick",{fromDoubleClick:!0},$.proxy($.timepicker.selectHours,this)).end().find(".ui-timepicker td a").unbind().bind("mouseout",function(){$(this).removeClass("ui-state-hover"),-1!=this.className.indexOf("ui-timepicker-prev")&&$(this).removeClass("ui-timepicker-prev-hover"),-1!=this.className.indexOf("ui-timepicker-next")&&$(this).removeClass("ui-timepicker-next-hover")}).bind("mouseover",function(){c._isDisabledTimepicker(a.inline?a.tpDiv.parent()[0]:a.input[0])||($(this).parents(".ui-timepicker-calendar").find("a").removeClass("ui-state-hover"),$(this).addClass("ui-state-hover"),-1!=this.className.indexOf("ui-timepicker-prev")&&$(this).addClass("ui-timepicker-prev-hover"),-1!=this.className.indexOf("ui-timepicker-next")&&$(this).addClass("ui-timepicker-next-hover"))}).end().find("."+this._dayOverClass+" a").trigger("mouseover").end().find(".ui-timepicker-now").bind("click",function(a){$.timepicker.selectNow(a)}).end().find(".ui-timepicker-deselect").bind("click",function(a){$.timepicker.deselectTime(a)}).end().find(".ui-timepicker-close").bind("click",function(){$.timepicker._hideTimepicker()}).end()},_generateHTML:function(a){var b,c,d,e,f=1==this._get(a,"showPeriod"),g=1==this._get(a,"showPeriodLabels"),h=1==this._get(a,"showLeadingZero"),i=1==this._get(a,"showHours"),j=1==this._get(a,"showMinutes"),k=this._get(a,"amPmText"),l=this._get(a,"rows"),m=0,n=0,o=0,p=0,q=0,r=0,s=Array(),t=this._get(a,"hours"),u=null,v=0,w=this._get(a,"hourText"),x=this._get(a,"showCloseButton"),y=this._get(a,"closeButtonText"),z=this._get(a,"showNowButton"),A=this._get(a,"nowButtonText"),B=this._get(a,"showDeselectButton"),C=this._get(a,"deselectButtonText"),D=x||z||B;for(b=t.starts;b<=t.ends;b++)s.push(b);if(u=Math.ceil(s.length/l),g){for(v=0;v<s.length;v++)s[v]<12?o++:p++;v=0,m=Math.floor(o/s.length*l),n=Math.floor(p/s.length*l),l!=m+n&&(o&&(!p||!m||n&&o/m>=p/n)?m++:n++),q=Math.min(m,1),r=m+1,u=Math.ceil(Math.max(o/m,p/n))}if(e='<table class="ui-timepicker-table ui-widget-content ui-corner-all"><tr>',i){for(e+='<td class="ui-timepicker-hours"><div class="ui-timepicker-title ui-widget-header ui-helper-clearfix ui-corner-all">'+w+"</div>"+'<table class="ui-timepicker">',c=1;l>=c;c++){for(e+="<tr>",c==q&&g&&(e+='<th rowspan="'+m.toString()+'" class="periods" scope="row">'+k[0]+"</th>"),c==r&&g&&(e+='<th rowspan="'+n.toString()+'" class="periods" scope="row">'+k[1]+"</th>"),d=1;u>=d;d++)g&&r>c&&s[v]>=12?e+=this._generateHTMLHourCell(a,void 0,f,h):(e+=this._generateHTMLHourCell(a,s[v],f,h),v++);e+="</tr>"}e+="</tr></table></td>"}if(j&&(e+='<td class="ui-timepicker-minutes">',e+=this._generateHTMLMinutes(a),e+="</td>"),e+="</tr>",D){var E='<tr><td colspan="3"><div class="ui-timepicker-buttonpane ui-widget-content">';z&&(E+='<button type="button" class="ui-timepicker-now ui-state-default ui-corner-all" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" >'+A+"</button>"),B&&(E+='<button type="button" class="ui-timepicker-deselect ui-state-default ui-corner-all" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" >'+C+"</button>"),x&&(E+='<button type="button" class="ui-timepicker-close ui-state-default ui-corner-all" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" >'+y+"</button>"),e+=E+"</div></td></tr>"}return e+="</table>",e+=$.browser.msie&&parseInt($.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-timepicker-cover" frameborder="0"></iframe>':""},_updateMinuteDisplay:function(a){var b=this._generateHTMLMinutes(a);a.tpDiv.find("td.ui-timepicker-minutes").html(b),this._rebindDialogEvents(a)},_generateHTMLMinutes:function(a){var b,c,d="",e=this._get(a,"rows"),f=Array(),g=this._get(a,"minutes"),h=null,i=0,j=1==this._get(a,"showMinutesLeadingZero"),k=this._get(a,"onMinuteShow"),l=this._get(a,"minuteText");for(g.starts||(g.starts=0),g.ends||(g.ends=59),b=g.starts;b<=g.ends;b+=g.interval)f.push(b);if(h=Math.round(f.length/e+.49),k&&0==k.apply(a.input?a.input[0]:null,[a.hours,a.minutes]))for(i=0;i<f.length;i+=1)if(b=f[i],k.apply(a.input?a.input[0]:null,[a.hours,b])){a.minutes=b;break}for(d+='<div class="ui-timepicker-title ui-widget-header ui-helper-clearfix ui-corner-all">'+l+"</div>"+'<table class="ui-timepicker">',i=0,c=1;e>=c;c++){for(d+="<tr>";c*h>i;){b=f[i];var m="";void 0!==b&&(m=10>b&&j?"0"+b.toString():b.toString()),d+=this._generateHTMLMinuteCell(a,b,m),i++}d+="</tr>"}return d+="</table>"},_generateHTMLHourCell:function(a,b,c,d){var e=b;b>12&&c&&(e=b-12),0==e&&c&&(e=12),10>e&&d&&(e="0"+e);var f="",g=!0,h=this._get(a,"onHourShow");return void 0==b?f='<td><span class="ui-state-default ui-state-disabled"> </span></td>':(h&&(g=h.apply(a.input?a.input[0]:null,[b])),f=g?'<td class="ui-timepicker-hour-cell" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" data-hour="'+b.toString()+'">'+'<a class="ui-state-default '+(b==a.hours?"ui-state-active":"")+'">'+e.toString()+"</a></td>":'<td><span class="ui-state-default ui-state-disabled '+(b==a.hours?" ui-state-active ":" ")+'">'+e.toString()+"</span>"+"</td>")},_generateHTMLMinuteCell:function(a,b,c){var d="",e=!0,f=this._get(a,"onMinuteShow");return f&&(e=f.apply(a.input?a.input[0]:null,[a.hours,b])),d=void 0==b?'<td><span class="ui-state-default ui-state-disabled"> </span></td>':e?'<td class="ui-timepicker-minute-cell" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" data-minute="'+b.toString()+'" >'+'<a class="ui-state-default '+(b==a.minutes?"ui-state-active":"")+'" >'+c+"</a></td>":'<td><span class="ui-state-default ui-state-disabled" >'+c+"</span>"+"</td>"},_destroyTimepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();$.removeData(a,PROP_NAME),"input"==d?(c.append.remove(),c.trigger.remove(),b.removeClass(this.markerClassName).unbind("focus.timepicker",this._showTimepicker).unbind("click.timepicker",this._adjustZIndex)):("div"==d||"span"==d)&&b.removeClass(this.markerClassName).empty()}},_enableTimepicker:function(a){var b=$(a),c=b.attr("id"),d=$.data(a,PROP_NAME);if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if("input"==e){a.disabled=!1;var f=this._get(d,"button");$(f).removeClass("ui-state-disabled").disabled=!1,d.trigger.filter("button").each(function(){this.disabled=!1}).end()}else if("div"==e||"span"==e){var g=b.children("."+this._inlineClass);g.children().removeClass("ui-state-disabled"),g.find("button").each(function(){this.disabled=!1})}this._disabledInputs=$.map(this._disabledInputs,function(a){return a==c?null:a})}},_disableTimepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();if("input"==d){var e=this._get(c,"button");$(e).addClass("ui-state-disabled").disabled=!0,a.disabled=!0,c.trigger.filter("button").each(function(){this.disabled=!0}).end()}else if("div"==d||"span"==d){var f=b.children("."+this._inlineClass);f.children().addClass("ui-state-disabled"),f.find("button").each(function(){this.disabled=!0})}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b}),this._disabledInputs[this._disabledInputs.length]=b.attr("id")}},_isDisabledTimepicker:function(a){if(!a)return!1;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return!0;return!1},_checkOffset:function(a,b,c){var d=a.tpDiv.outerWidth(),e=a.tpDiv.outerHeight(),f=a.input?a.input.outerWidth():0,g=a.input?a.input.outerHeight():0,h=document.documentElement.clientWidth+$(document).scrollLeft(),i=document.documentElement.clientHeight+$(document).scrollTop();return b.left-=this._get(a,"isRTL")?d-f:0,b.left-=c&&b.left==a.input.offset().left?$(document).scrollLeft():0,b.top-=c&&b.top==a.input.offset().top+g?$(document).scrollTop():0,b.left-=Math.min(b.left,b.left+d>h&&h>d?Math.abs(b.left+d-h):0),b.top-=Math.min(b.top,b.top+e>i&&i>e?Math.abs(e+g):0),b},_findPos:function(a){for(var b=this._getInst(a),c=this._get(b,"isRTL");a&&("hidden"==a.type||1!=a.nodeType);)a=a[c?"previousSibling":"nextSibling"];var d=$(a).offset();return[d.left,d.top]},_getBorders:function(a){var b=function(a){return{thin:1,medium:2,thick:3}[a]||a};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkExternalClick:function(a){if($.timepicker._curInst){var b=$(a.target);b[0].id==$.timepicker._mainDivId||0!=b.parents("#"+$.timepicker._mainDivId).length||b.hasClass($.timepicker.markerClassName)||b.hasClass($.timepicker._triggerClass)||!$.timepicker._timepickerShowing||$.timepicker._inDialog&&$.blockUI||$.timepicker._hideTimepicker()}},_hideTimepicker:function(a){var b=this._curInst;if(b&&(!a||b==$.data(a,PROP_NAME))&&this._timepickerShowing){var c=this._get(b,"showAnim"),d=this._get(b,"duration"),e=function(){$.timepicker._tidyDialog(b),this._curInst=null};$.effects&&$.effects[c]?b.tpDiv.hide(c,$.timepicker._get(b,"showOptions"),d,e):b.tpDiv["slideDown"==c?"slideUp":"fadeIn"==c?"fadeOut":"hide"](c?d:null,e),c||e(),this._timepickerShowing=!1,this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.tpDiv))),this._inDialog=!1;var f=this._get(b,"onClose");f&&f.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b])}},_tidyDialog:function(a){a.tpDiv.removeClass(this._dialogClass).unbind(".ui-timepicker")},_getInst:function(a){try{return $.data(a,PROP_NAME)}catch(b){throw"Missing instance data for this timepicker"}},_get:function(a,b){return void 0!==a.settings[b]?a.settings[b]:this._defaults[b]},_setTimeFromField:function(a){if(a.input.val()!=a.lastVal){var b=this._get(a,"defaultTime"),c="now"==b?this._getCurrentTimeRounded(a):b;if(0==a.inline&&""!=a.input.val()&&(c=a.input.val()),c instanceof Date)a.hours=c.getHours(),a.minutes=c.getMinutes();else{var d=a.lastVal=c;if(""==c)a.hours=-1,a.minutes=-1;else{var e=this.parseTime(a,d);a.hours=e.hours,a.minutes=e.minutes}}$.timepicker._updateTimepicker(a)}},_optionTimepicker:function(a,b,c){var d=this._getInst(a);if(2==arguments.length&&"string"==typeof b)return"defaults"==b?$.extend({},$.timepicker._defaults):d?"all"==b?$.extend({},d.settings):this._get(d,b):null;var e=b||{};"string"==typeof b&&(e={},e[b]=c),d&&(this._curInst==d&&this._hideTimepicker(),extendRemove(d.settings,e),this._updateTimepicker(d))},_setTimeTimepicker:function(a,b){var c=this._getInst(a);c&&(this._setTime(c,b),this._updateTimepicker(c),this._updateAlternate(c,b))},_setTime:function(a,b,c){var d=a.hours,e=a.minutes;b=this.parseTime(a,b),a.hours=b.hours,a.minutes=b.minutes,d==a.hours&&e==a.minuts||c||a.input.trigger("change"),this._updateTimepicker(a),this._updateSelectedValue(a)},_getCurrentTimeRounded:function(){var a=new Date,b=a.getMinutes(),c=5*Math.round(b/5);return a.setMinutes(c),a},parseTime:function(a,b){var c=new Object;c.hours=-1,c.minutes=-1;var d=this._get(a,"timeSeparator"),e=this._get(a,"amPmText"),f=this._get(a,"showHours"),g=this._get(a,"showMinutes"),h=this._get(a,"optionalMinutes"),i=1==this._get(a,"showPeriod"),j=b.indexOf(d);if(-1!=j?(c.hours=parseInt(b.substr(0,j),10),c.minutes=parseInt(b.substr(j+1),10)):!f||g&&!h?!f&&g&&(c.minutes=parseInt(b,10)):c.hours=parseInt(b,10),f){var k=b.toUpperCase();c.hours<12&&i&&-1!=k.indexOf(e[1].toUpperCase())&&(c.hours+=12),12==c.hours&&i&&-1!=k.indexOf(e[0].toUpperCase())&&(c.hours=0)}return c},selectNow:function(a){var b=$(a.target).attr("data-timepicker-instance-id"),c=$(b),d=this._getInst(c[0]),e=new Date;d.hours=e.getHours(),d.minutes=e.getMinutes(),this._updateSelectedValue(d),this._updateTimepicker(d),this._hideTimepicker()},deselectTime:function(a){var b=$(a.target).attr("data-timepicker-instance-id"),c=$(b),d=this._getInst(c[0]);d.hours=-1,d.minutes=-1,this._updateSelectedValue(d),this._hideTimepicker()},selectHours:function(a){var b=$(a.currentTarget),c=b.attr("data-timepicker-instance-id"),d=parseInt(b.attr("data-hour")),e=a.data.fromDoubleClick,f=$(c),g=this._getInst(f[0]),h=1==this._get(g,"showMinutes");if($.timepicker._isDisabledTimepicker(f.attr("id")))return!1;b.parents(".ui-timepicker-hours:first").find("a").removeClass("ui-state-active"),b.children("a").addClass("ui-state-active"),g.hours=d;var i=this._get(g,"onMinuteShow");return i&&this._updateMinuteDisplay(g),this._updateSelectedValue(g),g._hoursClicked=!0,(g._minutesClicked||e||0==h)&&$.timepicker._hideTimepicker(),!1},selectMinutes:function(a){var b=$(a.currentTarget),c=b.attr("data-timepicker-instance-id"),d=parseInt(b.attr("data-minute")),e=a.data.fromDoubleClick,f=$(c),g=this._getInst(f[0]),h=1==this._get(g,"showHours");return $.timepicker._isDisabledTimepicker(f.attr("id"))?!1:(b.parents(".ui-timepicker-minutes:first").find("a").removeClass("ui-state-active"),b.children("a").addClass("ui-state-active"),g.minutes=d,this._updateSelectedValue(g),g._minutesClicked=!0,g._hoursClicked||e||0==h?($.timepicker._hideTimepicker(),!1):!1)},_updateSelectedValue:function(a){var b=this._getParsedTime(a);a.input&&(a.input.val(b),a.input.trigger("change"));var c=this._get(a,"onSelect");return c&&c.apply(a.input?a.input[0]:null,[b,a]),this._updateAlternate(a,b),b},_getParsedTime:function(a){if(-1==a.hours&&-1==a.minutes)return"";(a.hours<a.hours.starts||a.hours>a.hours.ends)&&(a.hours=0),(a.minutes<a.minutes.starts||a.minutes>a.minutes.ends)&&(a.minutes=0);var b="",c=1==this._get(a,"showPeriod"),d=1==this._get(a,"showLeadingZero"),e=1==this._get(a,"showHours"),f=1==this._get(a,"showMinutes"),g=1==this._get(a,"optionalMinutes"),h=this._get(a,"amPmText"),i=a.hours?a.hours:0,j=a.minutes?a.minutes:0,k=i?i:0,l="";c&&(0==a.hours&&(k=12),a.hours<12?b=h[0]:(b=h[1],k>12&&(k-=12)));var m=k.toString();d&&10>k&&(m="0"+m);var n=j.toString();return 10>j&&(n="0"+n),e&&(l+=m),!e||!f||g&&0==n||(l+=this._get(a,"timeSeparator")),!f||g&&0==n||(l+=n),e&&b.length>0&&(l+=this._get(a,"periodSeparator")+b),l},_updateAlternate:function(a,b){var c=this._get(a,"altField");c&&$(c).each(function(a,c){$(c).val(b)})},_getTimeTimepicker:function(a){var b=this._getInst(a);return this._getParsedTime(b)},_getHourTimepicker:function(a){var b=this._getInst(a);return void 0==b?-1:b.hours},_getMinuteTimepicker:function(a){var b=this._getInst(a);return void 0==b?-1:b.minutes}}),$.fn.timepicker=function(a){$.timepicker.initialized||($(document).mousedown($.timepicker._checkExternalClick).find("body").append($.timepicker.tpDiv),$.timepicker.initialized=!0);var b=Array.prototype.slice.call(arguments,1);return"string"!=typeof a||"getTime"!=a&&"getHour"!=a&&"getMinute"!=a?"option"==a&&2==arguments.length&&"string"==typeof arguments[1]?$.timepicker["_"+a+"Timepicker"].apply($.timepicker,[this[0]].concat(b)):this.each(function(){"string"==typeof a?$.timepicker["_"+a+"Timepicker"].apply($.timepicker,[this].concat(b)):$.timepicker._attachTimepicker(this,a)}):$.timepicker["_"+a+"Timepicker"].apply($.timepicker,[this[0]].concat(b))},$.timepicker=new Timepicker,$.timepicker.initialized=!1,$.timepicker.uuid=(new Date).getTime(),$.timepicker.version="0.3.1",window["TP_jQuery_"+tpuuid]=$}(jQuery);
|
js/venues.min.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
/*! event-organiser 2.
|
2 |
-
function eo_initialize_map(a,b){if("undefined"!=typeof google){var c=new google.maps.LatLng(a,b),d={zoom:15,center:c,mapTypeId:google.maps.MapTypeId.ROADMAP};if(map=new google.maps.Map(document.getElementById("venuemap"),d),"undefined"!=typeof EO_Venue)var e=!0;else var e=!1;marker=new google.maps.Marker({position:c,map:map,draggable:e,icon:eo_venue.marker?eo_venue.marker:null}),"undefined"!=typeof EO_Venue&&google.maps.event.addListener(marker,"dragend",function(a){jQuery("#eo_venue_Lat").val(a.latLng.lat().toFixed(6)),jQuery("#eo_venue_Lng").val(a.latLng.lng().toFixed(6)),map.setCenter(marker.position)})}}function eventorganiser_code_address(a){var b=new google.maps.Geocoder;b.geocode({address:a},function(a,b){if(b==google.maps.GeocoderStatus.OK){if(marker.setMap(null),map.setCenter(a[0].geometry.location),"undefined"!=typeof EO_Venue)var c=!0;else var c=!1;marker=new google.maps.Marker({map:map,position:a[0].geometry.location,draggable:c,icon:eo_venue.marker?eo_venue.marker:null}),map.setZoom(15),"undefined"!=typeof EO_Venue&&google.maps.event.addListener(marker,"dragend",function(a){jQuery("#eo_venue_Lat").val(a.latLng.lat().toFixed(6)),jQuery("#eo_venue_Lng").val(a.latLng.lng().toFixed(6)),map.setCenter(marker.position)}),jQuery("#eo_venue_Lat").val(a[0].geometry.location.lat()),jQuery("#eo_venue_Lng").val(a[0].geometry.location.lng())}})}var map,marker,eo_venue=eo_venue||{marker:!1};jQuery(document).ready(function(){if("undefined"!=typeof EO_Venue&&postboxes.add_postbox_toggles(pagenow),"undefined"!=typeof google){var a=jQuery("#eo_venue_Lat").val(),b=jQuery("#eo_venue_Lng").val();if("undefined"!=typeof a&&"undefined"!=typeof b){if(eo_initialize_map(a,b),0==a&&0==b){if("undefined"!=typeof EO_Venue){var c=EO_Venue.location.split("/");c=c[c.length-1]}"undefined"!=typeof c&&c?eventorganiser_code_address(c):map.setZoom(1)}jQuery(".eo_addressInput").change(function(){var a=[];jQuery(".eo_addressInput").each(function(){a.push(jQuery(this).val())}),eventorganiser_code_address(a.join(", "))})}}});
|
1 |
+
/*! event-organiser 2.4.0 2013-10-29 18:47 */
|
2 |
+
function eo_initialize_map(a,b){if("undefined"!=typeof google){var c=new google.maps.LatLng(a,b),d={zoom:15,center:c,mapTypeId:google.maps.MapTypeId.ROADMAP};if(map=new google.maps.Map(document.getElementById("venuemap"),d),"undefined"!=typeof EO_Venue)var e=!0;else var e=!1;marker=new google.maps.Marker({position:c,map:map,draggable:e,icon:eo_venue.marker?eo_venue.marker:null}),"undefined"!=typeof EO_Venue&&google.maps.event.addListener(marker,"dragend",function(a){jQuery("#eo_venue_Lat").val(a.latLng.lat().toFixed(6)),jQuery("#eo_venue_Lng").val(a.latLng.lng().toFixed(6)),map.setCenter(marker.position)})}}function eventorganiser_code_address(a){var b=new google.maps.Geocoder;b.geocode({address:a},function(a,b){if(b==google.maps.GeocoderStatus.OK){if(marker.setMap(null),map.setCenter(a[0].geometry.location),"undefined"!=typeof EO_Venue)var c=!0;else var c=!1;marker=new google.maps.Marker({map:map,position:a[0].geometry.location,draggable:c,icon:eo_venue.marker?eo_venue.marker:null}),map.setZoom(15),"undefined"!=typeof EO_Venue&&google.maps.event.addListener(marker,"dragend",function(a){jQuery("#eo_venue_Lat").val(a.latLng.lat().toFixed(6)),jQuery("#eo_venue_Lng").val(a.latLng.lng().toFixed(6)),map.setCenter(marker.position)}),jQuery("#eo_venue_Lat").val(a[0].geometry.location.lat()),jQuery("#eo_venue_Lng").val(a[0].geometry.location.lng())}})}var map,marker,eo_venue=eo_venue||{marker:!1};jQuery(document).ready(function(){if("undefined"!=typeof EO_Venue&&postboxes.add_postbox_toggles(pagenow),"undefined"!=typeof google){var a=jQuery("#eo_venue_Lat").val(),b=jQuery("#eo_venue_Lng").val();if("undefined"!=typeof a&&"undefined"!=typeof b){if(eo_initialize_map(a,b),0==a&&0==b){if("undefined"!=typeof EO_Venue){var c=EO_Venue.location.split("/");c=c[c.length-1]}"undefined"!=typeof c&&c?eventorganiser_code_address(c):map.setZoom(1)}jQuery(".eo_addressInput").change(function(){var a=[];jQuery(".eo_addressInput").each(function(){a.push(jQuery(this).val())}),eventorganiser_code_address(a.join(", "))})}}});
|
languages/eventorganiser-ar.mo
CHANGED
Binary file
|
languages/eventorganiser-ar.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr "Project-Id-Version: Event Organiser\n"
|
3 |
"Report-Msgid-Bugs-To: stephenh1988@gmail.com\n"
|
4 |
"POT-Creation-Date: 2008-09-01 09:37+0000\n"
|
5 |
-
"PO-Revision-Date: 2013-09-21
|
6 |
"Last-Translator: stephenharris <stephenh1988@gmail.com>\n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: Arabic\n"
|
@@ -89,11 +89,6 @@ msgstr ""
|
|
89 |
msgid "A list or dropdown of event venues"
|
90 |
msgstr ""
|
91 |
|
92 |
-
#: ../event-organiser-go-pro.php:82
|
93 |
-
msgid "Add action information on your venue pages with venue custom fields, or give "
|
94 |
-
"your venues more attentioned with their own 'featured image'"
|
95 |
-
msgstr ""
|
96 |
-
|
97 |
#: ../event-organiser-settings.php:132
|
98 |
msgid "Add an 'events' link to the navigation menu:"
|
99 |
msgstr ""
|
@@ -102,6 +97,11 @@ msgstr ""
|
|
102 |
msgid "Add Event"
|
103 |
msgstr ""
|
104 |
|
|
|
|
|
|
|
|
|
|
|
105 |
#: ../event-organiser-venues.php:230
|
106 |
#: ../event-organiser-venues.php:268
|
107 |
msgid "Add New"
|
@@ -160,15 +160,15 @@ msgid "All dates and times must be entered in the specified format. This format
|
|
160 |
"changed in the settings page."
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: ../event-organiser-edit.php:117
|
164 |
-
msgid "All day"
|
165 |
-
msgstr "طوال اليوم"
|
166 |
-
|
167 |
#: ../includes/event-organiser-ajax.php:540
|
168 |
#: ../includes/event-organiser-event-functions.php:1297
|
169 |
msgid "All Day"
|
170 |
msgstr ""
|
171 |
|
|
|
|
|
|
|
|
|
172 |
#: ../includes/event-organiser-cpt.php:146
|
173 |
msgid "All events"
|
174 |
msgstr ""
|
@@ -347,14 +347,14 @@ msgstr ""
|
|
347 |
msgid "Date Format:"
|
348 |
msgstr "تنسيق التاريخ"
|
349 |
|
350 |
-
#: ../event-organiser-calendar.php:55
|
351 |
-
msgid "day"
|
352 |
-
msgstr "يوم"
|
353 |
-
|
354 |
#: ../event-organiser-calendar.php:229
|
355 |
msgid "Day"
|
356 |
msgstr "يوم"
|
357 |
|
|
|
|
|
|
|
|
|
358 |
#: ../event-organiser-settings.php:271
|
359 |
msgid "Day archive"
|
360 |
msgstr ""
|
@@ -1043,14 +1043,14 @@ msgstr ""
|
|
1043 |
msgid "mm-dd-yyyy"
|
1044 |
msgstr ""
|
1045 |
|
1046 |
-
#: ../event-organiser-calendar.php:57
|
1047 |
-
msgid "month"
|
1048 |
-
msgstr "شهر"
|
1049 |
-
|
1050 |
#: ../event-organiser-calendar.php:229
|
1051 |
msgid "Month"
|
1052 |
msgstr "شهر"
|
1053 |
|
|
|
|
|
|
|
|
|
1054 |
#: ../event-organiser-settings.php:270
|
1055 |
msgid "Month archive"
|
1056 |
msgstr ""
|
@@ -1631,14 +1631,14 @@ msgstr ""
|
|
1631 |
msgid "Venue Location"
|
1632 |
msgstr ""
|
1633 |
|
1634 |
-
#: ../event-organiser-edit.php:221
|
1635 |
-
msgid "Venue Name"
|
1636 |
-
msgstr "اسم العنوان"
|
1637 |
-
|
1638 |
#: ../event-organiser-venues.php:399
|
1639 |
msgid "Venue name"
|
1640 |
msgstr ""
|
1641 |
|
|
|
|
|
|
|
|
|
1642 |
#: ../event-organiser-settings.php:220
|
1643 |
msgid "Venue page:"
|
1644 |
msgstr "صفحة العنوان"
|
@@ -1689,14 +1689,14 @@ msgstr ""
|
|
1689 |
msgid "View will take you to the venue's page"
|
1690 |
msgstr ""
|
1691 |
|
1692 |
-
#: ../event-organiser-calendar.php:56
|
1693 |
-
msgid "week"
|
1694 |
-
msgstr "أسبوع"
|
1695 |
-
|
1696 |
#: ../event-organiser-calendar.php:229
|
1697 |
msgid "Week"
|
1698 |
msgstr "أسبوع"
|
1699 |
|
|
|
|
|
|
|
|
|
1700 |
#: ../event-organiser-edit.php:126
|
1701 |
msgid "weekly"
|
1702 |
msgstr "أسبوعياً"
|
2 |
msgstr "Project-Id-Version: Event Organiser\n"
|
3 |
"Report-Msgid-Bugs-To: stephenh1988@gmail.com\n"
|
4 |
"POT-Creation-Date: 2008-09-01 09:37+0000\n"
|
5 |
+
"PO-Revision-Date: 2013-09-21 17:45:20+0000\n"
|
6 |
"Last-Translator: stephenharris <stephenh1988@gmail.com>\n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: Arabic\n"
|
89 |
msgid "A list or dropdown of event venues"
|
90 |
msgstr ""
|
91 |
|
|
|
|
|
|
|
|
|
|
|
92 |
#: ../event-organiser-settings.php:132
|
93 |
msgid "Add an 'events' link to the navigation menu:"
|
94 |
msgstr ""
|
97 |
msgid "Add Event"
|
98 |
msgstr ""
|
99 |
|
100 |
+
#: ../event-organiser-go-pro.php:82
|
101 |
+
msgid "Add information on your venue pages with venue custom fields, or give your "
|
102 |
+
"venues more attentioned with their own 'featured image'"
|
103 |
+
msgstr ""
|
104 |
+
|
105 |
#: ../event-organiser-venues.php:230
|
106 |
#: ../event-organiser-venues.php:268
|
107 |
msgid "Add New"
|
160 |
"changed in the settings page."
|
161 |
msgstr ""
|
162 |
|
|
|
|
|
|
|
|
|
163 |
#: ../includes/event-organiser-ajax.php:540
|
164 |
#: ../includes/event-organiser-event-functions.php:1297
|
165 |
msgid "All Day"
|
166 |
msgstr ""
|
167 |
|
168 |
+
#: ../event-organiser-edit.php:117
|
169 |
+
msgid "All day"
|
170 |
+
msgstr "طوال اليوم"
|
171 |
+
|
172 |
#: ../includes/event-organiser-cpt.php:146
|
173 |
msgid "All events"
|
174 |
msgstr ""
|
347 |
msgid "Date Format:"
|
348 |
msgstr "تنسيق التاريخ"
|
349 |
|
|
|
|
|
|
|
|
|
350 |
#: ../event-organiser-calendar.php:229
|
351 |
msgid "Day"
|
352 |
msgstr "يوم"
|
353 |
|
354 |
+
#: ../event-organiser-calendar.php:55
|
355 |
+
msgid "day"
|
356 |
+
msgstr "يوم"
|
357 |
+
|
358 |
#: ../event-organiser-settings.php:271
|
359 |
msgid "Day archive"
|
360 |
msgstr ""
|
1043 |
msgid "mm-dd-yyyy"
|
1044 |
msgstr ""
|
1045 |
|
|
|
|
|
|
|
|
|
1046 |
#: ../event-organiser-calendar.php:229
|
1047 |
msgid "Month"
|
1048 |
msgstr "شهر"
|
1049 |
|
1050 |
+
#: ../event-organiser-calendar.php:57
|
1051 |
+
msgid "month"
|
1052 |
+
msgstr "شهر"
|
1053 |
+
|
1054 |
#: ../event-organiser-settings.php:270
|
1055 |
msgid "Month archive"
|
1056 |
msgstr ""
|
1631 |
msgid "Venue Location"
|
1632 |
msgstr ""
|
1633 |
|
|
|
|
|
|
|
|
|
1634 |
#: ../event-organiser-venues.php:399
|
1635 |
msgid "Venue name"
|
1636 |
msgstr ""
|
1637 |
|
1638 |
+
#: ../event-organiser-edit.php:221
|
1639 |
+
msgid "Venue Name"
|
1640 |
+
msgstr "اسم العنوان"
|
1641 |
+
|
1642 |
#: ../event-organiser-settings.php:220
|
1643 |
msgid "Venue page:"
|
1644 |
msgstr "صفحة العنوان"
|
1689 |
msgid "View will take you to the venue's page"
|
1690 |
msgstr ""
|
1691 |
|
|
|
|
|
|
|
|
|
1692 |
#: ../event-organiser-calendar.php:229
|
1693 |
msgid "Week"
|
1694 |
msgstr "أسبوع"
|
1695 |
|
1696 |
+
#: ../event-organiser-calendar.php:56
|
1697 |
+
msgid "week"
|
1698 |
+
msgstr "أسبوع"
|
1699 |
+
|
1700 |
#: ../event-organiser-edit.php:126
|
1701 |
msgid "weekly"
|
1702 |
msgstr "أسبوعياً"
|
languages/eventorganiser-cs_CZ.mo
CHANGED
Binary file
|
languages/eventorganiser-cs_CZ.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr "Project-Id-Version: Event Organiser\n"
|
3 |
"Report-Msgid-Bugs-To: stephenh1988@gmail.com\n"
|
4 |
"POT-Creation-Date: 2008-09-01 09:37+0000\n"
|
5 |
-
"PO-Revision-Date: 2013-09-21 17:
|
6 |
"Last-Translator: stephenharris <stephenh1988@gmail.com>\n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: Czech (Czech Republic)\n"
|
@@ -89,11 +89,6 @@ msgstr ""
|
|
89 |
msgid "A list or dropdown of event venues"
|
90 |
msgstr ""
|
91 |
|
92 |
-
#: ../event-organiser-go-pro.php:82
|
93 |
-
msgid "Add action information on your venue pages with venue custom fields, or give "
|
94 |
-
"your venues more attentioned with their own 'featured image'"
|
95 |
-
msgstr ""
|
96 |
-
|
97 |
#: ../event-organiser-settings.php:132
|
98 |
msgid "Add an 'events' link to the navigation menu:"
|
99 |
msgstr ""
|
@@ -102,6 +97,11 @@ msgstr ""
|
|
102 |
msgid "Add Event"
|
103 |
msgstr "Přidat událost"
|
104 |
|
|
|
|
|
|
|
|
|
|
|
105 |
#: ../event-organiser-venues.php:230
|
106 |
#: ../event-organiser-venues.php:268
|
107 |
msgid "Add New"
|
@@ -160,15 +160,15 @@ msgid "All dates and times must be entered in the specified format. This format
|
|
160 |
"changed in the settings page."
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: ../event-organiser-edit.php:117
|
164 |
-
msgid "All day"
|
165 |
-
msgstr ""
|
166 |
-
|
167 |
#: ../includes/event-organiser-ajax.php:540
|
168 |
#: ../includes/event-organiser-event-functions.php:1297
|
169 |
msgid "All Day"
|
170 |
msgstr "Celodenní"
|
171 |
|
|
|
|
|
|
|
|
|
172 |
#: ../includes/event-organiser-cpt.php:146
|
173 |
msgid "All events"
|
174 |
msgstr "Všechny události"
|
@@ -351,14 +351,14 @@ msgstr ""
|
|
351 |
msgid "Date Format:"
|
352 |
msgstr "Formát data:"
|
353 |
|
354 |
-
#: ../event-organiser-calendar.php:55
|
355 |
-
msgid "day"
|
356 |
-
msgstr "den"
|
357 |
-
|
358 |
#: ../event-organiser-calendar.php:229
|
359 |
msgid "Day"
|
360 |
msgstr "Den"
|
361 |
|
|
|
|
|
|
|
|
|
362 |
#: ../event-organiser-settings.php:271
|
363 |
msgid "Day archive"
|
364 |
msgstr "Denní archiv"
|
@@ -1053,14 +1053,14 @@ msgstr "Minuta"
|
|
1053 |
msgid "mm-dd-yyyy"
|
1054 |
msgstr "mm-dd-yyyy"
|
1055 |
|
1056 |
-
#: ../event-organiser-calendar.php:57
|
1057 |
-
msgid "month"
|
1058 |
-
msgstr "měsíc"
|
1059 |
-
|
1060 |
#: ../event-organiser-calendar.php:229
|
1061 |
msgid "Month"
|
1062 |
msgstr "Měsíc"
|
1063 |
|
|
|
|
|
|
|
|
|
1064 |
#: ../event-organiser-settings.php:270
|
1065 |
msgid "Month archive"
|
1066 |
msgstr "Měsíční archiv"
|
@@ -1660,14 +1660,14 @@ msgstr ""
|
|
1660 |
msgid "Venue Location"
|
1661 |
msgstr "Adresa místa"
|
1662 |
|
1663 |
-
#: ../event-organiser-edit.php:221
|
1664 |
-
msgid "Venue Name"
|
1665 |
-
msgstr "Název místa"
|
1666 |
-
|
1667 |
#: ../event-organiser-venues.php:399
|
1668 |
msgid "Venue name"
|
1669 |
msgstr "Název místa"
|
1670 |
|
|
|
|
|
|
|
|
|
1671 |
#: ../event-organiser-settings.php:220
|
1672 |
msgid "Venue page:"
|
1673 |
msgstr "Stránka místa:"
|
@@ -1718,14 +1718,14 @@ msgstr "Ukázat místo"
|
|
1718 |
msgid "View will take you to the venue's page"
|
1719 |
msgstr "'Zobrazit' vás přenese na stránku místa."
|
1720 |
|
1721 |
-
#: ../event-organiser-calendar.php:56
|
1722 |
-
msgid "week"
|
1723 |
-
msgstr "týden"
|
1724 |
-
|
1725 |
#: ../event-organiser-calendar.php:229
|
1726 |
msgid "Week"
|
1727 |
msgstr "Týden"
|
1728 |
|
|
|
|
|
|
|
|
|
1729 |
#: ../event-organiser-edit.php:126
|
1730 |
msgid "weekly"
|
1731 |
msgstr "týdně"
|
2 |
msgstr "Project-Id-Version: Event Organiser\n"
|
3 |
"Report-Msgid-Bugs-To: stephenh1988@gmail.com\n"
|
4 |
"POT-Creation-Date: 2008-09-01 09:37+0000\n"
|
5 |
+
"PO-Revision-Date: 2013-09-21 17:45:20+0000\n"
|
6 |
"Last-Translator: stephenharris <stephenh1988@gmail.com>\n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: Czech (Czech Republic)\n"
|
89 |
msgid "A list or dropdown of event venues"
|
90 |
msgstr ""
|
91 |
|
|
|
|
|
|
|
|
|
|
|
92 |
#: ../event-organiser-settings.php:132
|
93 |
msgid "Add an 'events' link to the navigation menu:"
|
94 |
msgstr ""
|
97 |
msgid "Add Event"
|
98 |
msgstr "Přidat událost"
|
99 |
|
100 |
+
#: ../event-organiser-go-pro.php:82
|
101 |
+
msgid "Add information on your venue pages with venue custom fields, or give your "
|
102 |
+
"venues more attentioned with their own 'featured image'"
|
103 |
+
msgstr ""
|
104 |
+
|
105 |
#: ../event-organiser-venues.php:230
|
106 |
#: ../event-organiser-venues.php:268
|
107 |
msgid "Add New"
|
160 |
"changed in the settings page."
|
161 |
msgstr ""
|
162 |
|
|
|
|
|
|
|
|
|
163 |
#: ../includes/event-organiser-ajax.php:540
|
164 |
#: ../includes/event-organiser-event-functions.php:1297
|
165 |
msgid "All Day"
|
166 |
msgstr "Celodenní"
|
167 |
|
168 |
+
#: ../event-organiser-edit.php:117
|
169 |
+
msgid "All day"
|
170 |
+
msgstr ""
|
171 |
+
|
172 |
#: ../includes/event-organiser-cpt.php:146
|
173 |
msgid "All events"
|
174 |
msgstr "Všechny události"
|
351 |
msgid "Date Format:"
|
352 |
msgstr "Formát data:"
|
353 |
|
|
|
|
|
|
|
|
|
354 |
#: ../event-organiser-calendar.php:229
|
355 |
msgid "Day"
|
356 |
msgstr "Den"
|
357 |
|
358 |
+
#: ../event-organiser-calendar.php:55
|
359 |
+
msgid "day"
|
360 |
+
msgstr "den"
|
361 |
+
|
362 |
#: ../event-organiser-settings.php:271
|
363 |
msgid "Day archive"
|
364 |
msgstr "Denní archiv"
|
1053 |
msgid "mm-dd-yyyy"
|
1054 |
msgstr "mm-dd-yyyy"
|
1055 |
|
|
|
|
|
|
|
|
|
1056 |
#: ../event-organiser-calendar.php:229
|
1057 |
msgid "Month"
|
1058 |
msgstr "Měsíc"
|
1059 |
|
1060 |
+
#: ../event-organiser-calendar.php:57
|
1061 |
+
msgid "month"
|
1062 |
+
msgstr "měsíc"
|
1063 |
+
|
1064 |
#: ../event-organiser-settings.php:270
|
1065 |
msgid "Month archive"
|
1066 |
msgstr "Měsíční archiv"
|
1660 |
msgid "Venue Location"
|
1661 |
msgstr "Adresa místa"
|
1662 |
|
|
|
|
|
|
|
|
|
1663 |
#: ../event-organiser-venues.php:399
|
1664 |
msgid "Venue name"
|
1665 |
msgstr "Název místa"
|
1666 |
|
1667 |
+
#: ../event-organiser-edit.php:221
|
1668 |
+
msgid "Venue Name"
|
1669 |
+
msgstr "Název místa"
|
1670 |
+
|
1671 |
#: ../event-organiser-settings.php:220
|
1672 |
msgid "Venue page:"
|
1673 |
msgstr "Stránka místa:"
|
1718 |
msgid "View will take you to the venue's page"
|
1719 |
msgstr "'Zobrazit' vás přenese na stránku místa."
|
1720 |
|
|
|
|
|
|
|
|
|
1721 |
#: ../event-organiser-calendar.php:229
|
1722 |
msgid "Week"
|
1723 |
msgstr "Týden"
|
1724 |
|
1725 |
+
#: ../event-organiser-calendar.php:56
|
1726 |
+
msgid "week"
|
1727 |
+
msgstr "týden"
|
1728 |
+
|
1729 |
#: ../event-organiser-edit.php:126
|
1730 |
msgid "weekly"
|
1731 |
msgstr "týdně"
|
languages/eventorganiser-da_DK.mo
CHANGED
Binary file
|
languages/eventorganiser-da_DK.po
CHANGED
@@ -89,11 +89,6 @@ msgstr "En liste eller drop-down memnu af begivenhedskategorier"
|
|
89 |
msgid "A list or dropdown of event venues"
|
90 |
msgstr "En liste eller drop-down af begivenhedssteder"
|
91 |
|
92 |
-
#: ../event-organiser-go-pro.php:82
|
93 |
-
msgid "Add action information on your venue pages with venue custom fields, or give "
|
94 |
-
"your venues more attentioned with their own 'featured image'"
|
95 |
-
msgstr ""
|
96 |
-
|
97 |
#: ../event-organiser-settings.php:132
|
98 |
msgid "Add an 'events' link to the navigation menu:"
|
99 |
msgstr "Tilføj et link for 'begivenheder' til menuen:"
|
@@ -102,6 +97,11 @@ msgstr "Tilføj et link for 'begivenheder' til menuen:"
|
|
102 |
msgid "Add Event"
|
103 |
msgstr "Tilføj begivenhed"
|
104 |
|
|
|
|
|
|
|
|
|
|
|
105 |
#: ../event-organiser-venues.php:230
|
106 |
#: ../event-organiser-venues.php:268
|
107 |
msgid "Add New"
|
@@ -161,15 +161,15 @@ msgid "All dates and times must be entered in the specified format. This format
|
|
161 |
msgstr "Alle datoer og tider skal indtastes i det specificerede format. Dette format "
|
162 |
"kan ændres på indstillingssiden."
|
163 |
|
164 |
-
#: ../event-organiser-edit.php:117
|
165 |
-
msgid "All day"
|
166 |
-
msgstr "Hele dagen"
|
167 |
-
|
168 |
#: ../includes/event-organiser-ajax.php:540
|
169 |
#: ../includes/event-organiser-event-functions.php:1297
|
170 |
msgid "All Day"
|
171 |
msgstr "Hele dagen"
|
172 |
|
|
|
|
|
|
|
|
|
173 |
#: ../includes/event-organiser-cpt.php:146
|
174 |
msgid "All events"
|
175 |
msgstr "Alle begivenheder"
|
@@ -353,14 +353,14 @@ msgstr ""
|
|
353 |
msgid "Date Format:"
|
354 |
msgstr "Dato-format:"
|
355 |
|
356 |
-
#: ../event-organiser-calendar.php:55
|
357 |
-
msgid "day"
|
358 |
-
msgstr "dag"
|
359 |
-
|
360 |
#: ../event-organiser-calendar.php:229
|
361 |
msgid "Day"
|
362 |
msgstr "Dag"
|
363 |
|
|
|
|
|
|
|
|
|
364 |
#: ../event-organiser-settings.php:271
|
365 |
msgid "Day archive"
|
366 |
msgstr ""
|
@@ -1068,14 +1068,14 @@ msgstr "Minut"
|
|
1068 |
msgid "mm-dd-yyyy"
|
1069 |
msgstr "mm-dd-yyyy"
|
1070 |
|
1071 |
-
#: ../event-organiser-calendar.php:57
|
1072 |
-
msgid "month"
|
1073 |
-
msgstr "måned"
|
1074 |
-
|
1075 |
#: ../event-organiser-calendar.php:229
|
1076 |
msgid "Month"
|
1077 |
msgstr "Måned"
|
1078 |
|
|
|
|
|
|
|
|
|
1079 |
#: ../event-organiser-settings.php:270
|
1080 |
msgid "Month archive"
|
1081 |
msgstr ""
|
@@ -1670,14 +1670,14 @@ msgstr ""
|
|
1670 |
msgid "Venue Location"
|
1671 |
msgstr "Stedlokation"
|
1672 |
|
1673 |
-
#: ../event-organiser-edit.php:221
|
1674 |
-
msgid "Venue Name"
|
1675 |
-
msgstr ""
|
1676 |
-
|
1677 |
#: ../event-organiser-venues.php:399
|
1678 |
msgid "Venue name"
|
1679 |
msgstr "Stednavn"
|
1680 |
|
|
|
|
|
|
|
|
|
1681 |
#: ../event-organiser-settings.php:220
|
1682 |
msgid "Venue page:"
|
1683 |
msgstr "Side til sted:"
|
@@ -1728,14 +1728,14 @@ msgstr "Vis sted"
|
|
1728 |
msgid "View will take you to the venue's page"
|
1729 |
msgstr "Vis vil føre dig til stedets side"
|
1730 |
|
1731 |
-
#: ../event-organiser-calendar.php:56
|
1732 |
-
msgid "week"
|
1733 |
-
msgstr "uge"
|
1734 |
-
|
1735 |
#: ../event-organiser-calendar.php:229
|
1736 |
msgid "Week"
|
1737 |
msgstr "Uge"
|
1738 |
|
|
|
|
|
|
|
|
|
1739 |
#: ../event-organiser-edit.php:126
|
1740 |
msgid "weekly"
|
1741 |
msgstr "ugentligt"
|
89 |
msgid "A list or dropdown of event venues"
|
90 |
msgstr "En liste eller drop-down af begivenhedssteder"
|
91 |
|
|
|
|
|
|
|
|
|
|
|
92 |
#: ../event-organiser-settings.php:132
|
93 |
msgid "Add an 'events' link to the navigation menu:"
|
94 |
msgstr "Tilføj et link for 'begivenheder' til menuen:"
|
97 |
msgid "Add Event"
|
98 |
msgstr "Tilføj begivenhed"
|
99 |
|
100 |
+
#: ../event-organiser-go-pro.php:82
|
101 |
+
msgid "Add information on your venue pages with venue custom fields, or give your "
|
102 |
+
"venues more attentioned with their own 'featured image'"
|
103 |
+
msgstr ""
|
104 |
+
|
105 |
#: ../event-organiser-venues.php:230
|
106 |
#: ../event-organiser-venues.php:268
|
107 |
msgid "Add New"
|
161 |
msgstr "Alle datoer og tider skal indtastes i det specificerede format. Dette format "
|
162 |
"kan ændres på indstillingssiden."
|
163 |
|
|
|
|
|
|
|
|
|
164 |
#: ../includes/event-organiser-ajax.php:540
|
165 |
#: ../includes/event-organiser-event-functions.php:1297
|
166 |
msgid "All Day"
|
167 |
msgstr "Hele dagen"
|
168 |
|
169 |
+
#: ../event-organiser-edit.php:117
|
170 |
+
msgid "All day"
|
171 |
+
msgstr "Hele dagen"
|
172 |
+
|
173 |
#: ../includes/event-organiser-cpt.php:146
|
174 |
msgid "All events"
|
175 |
msgstr "Alle begivenheder"
|
353 |
msgid "Date Format:"
|
354 |
msgstr "Dato-format:"
|
355 |
|
|
|
|
|
|
|
|
|
356 |
#: ../event-organiser-calendar.php:229
|
357 |
msgid "Day"
|
358 |
msgstr "Dag"
|
359 |
|
360 |
+
#: ../event-organiser-calendar.php:55
|
361 |
+
msgid "day"
|
362 |
+
msgstr "dag"
|
363 |
+
|
364 |
#: ../event-organiser-settings.php:271
|
365 |
msgid "Day archive"
|
366 |
msgstr ""
|
1068 |
msgid "mm-dd-yyyy"
|
1069 |
msgstr "mm-dd-yyyy"
|
1070 |
|
|
|
|
|
|
|
|
|
1071 |
#: ../event-organiser-calendar.php:229
|
1072 |
msgid "Month"
|
1073 |
msgstr "Måned"
|
1074 |
|
1075 |
+
#: ../event-organiser-calendar.php:57
|
1076 |
+
msgid "month"
|
1077 |
+
msgstr "måned"
|
1078 |
+
|
1079 |
#: ../event-organiser-settings.php:270
|
1080 |
msgid "Month archive"
|
1081 |
msgstr ""
|
1670 |
msgid "Venue Location"
|
1671 |
msgstr "Stedlokation"
|
1672 |
|
|
|
|
|
|
|
|
|
1673 |
#: ../event-organiser-venues.php:399
|
1674 |
msgid "Venue name"
|
1675 |
msgstr "Stednavn"
|
1676 |
|
1677 |
+
#: ../event-organiser-edit.php:221
|
1678 |
+
msgid "Venue Name"
|
1679 |
+
msgstr ""
|
1680 |
+
|
1681 |
#: ../event-organiser-settings.php:220
|
1682 |
msgid "Venue page:"
|
1683 |
msgstr "Side til sted:"
|
1728 |
msgid "View will take you to the venue's page"
|
1729 |
msgstr "Vis vil føre dig til stedets side"
|
1730 |
|
|
|
|
|
|
|
|
|
1731 |
#: ../event-organiser-calendar.php:229
|
1732 |
msgid "Week"
|
1733 |
msgstr "Uge"
|
1734 |
|
1735 |
+
#: ../event-organiser-calendar.php:56
|
1736 |
+
msgid "week"
|
1737 |
+
msgstr "uge"
|
1738 |
+
|
1739 |
#: ../event-organiser-edit.php:126
|
1740 |
msgid "weekly"
|
1741 |
msgstr "ugentligt"
|
languages/eventorganiser-de_DE.mo
CHANGED
Binary file
|
languages/eventorganiser-de_DE.po
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr "Project-Id-Version: Event Organiser\n"
|
3 |
"Report-Msgid-Bugs-To: stephenh1988@gmail.com\n"
|
4 |
"POT-Creation-Date: 2008-09-01 09:37+0000\n"
|
5 |
-
"PO-Revision-Date: 2013-
|
6 |
-
"Last-Translator:
|
7 |
"Language-Team: \n"
|
8 |
"Language: German (Germany)\n"
|
9 |
"MIME-Version: 1.0\n"
|
@@ -97,11 +97,6 @@ msgstr "Eine Liste der Event Kategorien"
|
|
97 |
msgid "A list or dropdown of event venues"
|
98 |
msgstr "Eine Liste oder Dropdown von Veranstaltungsstätten"
|
99 |
|
100 |
-
#: ../event-organiser-go-pro.php:82
|
101 |
-
msgid "Add action information on your venue pages with venue custom fields, or give "
|
102 |
-
"your venues more attentioned with their own 'featured image'"
|
103 |
-
msgstr ""
|
104 |
-
|
105 |
#: ../event-organiser-settings.php:132
|
106 |
msgid "Add an 'events' link to the navigation menu:"
|
107 |
msgstr "Einen \"Termin\"-Link zum Navigationsmenü hinzufügen:"
|
@@ -110,6 +105,11 @@ msgstr "Einen \"Termin\"-Link zum Navigationsmenü hinzufügen:"
|
|
110 |
msgid "Add Event"
|
111 |
msgstr "Termin hinzufügen"
|
112 |
|
|
|
|
|
|
|
|
|
|
|
113 |
#: ../event-organiser-venues.php:230
|
114 |
#: ../event-organiser-venues.php:268
|
115 |
msgid "Add New"
|
@@ -149,7 +149,7 @@ msgstr "Veranstaltungsort hinzufügen"
|
|
149 |
|
150 |
#: ../event-organiser-settings.php:57
|
151 |
msgid "Add-on Licence keys"
|
152 |
-
msgstr ""
|
153 |
|
154 |
#: ../event-organiser-go-pro.php:76
|
155 |
msgid "Additional shortcodes & improved UI"
|
@@ -169,15 +169,15 @@ msgid "All dates and times must be entered in the specified format. This format
|
|
169 |
msgstr "Alle Daten und Zeiten müssen in einem bestimmten Format eingegeben werden. "
|
170 |
"Dieses Format kann unter \"Einstellungen\" geändert werden."
|
171 |
|
172 |
-
#: ../event-organiser-edit.php:117
|
173 |
-
msgid "All day"
|
174 |
-
msgstr "Ganztags"
|
175 |
-
|
176 |
#: ../includes/event-organiser-ajax.php:540
|
177 |
#: ../includes/event-organiser-event-functions.php:1297
|
178 |
msgid "All Day"
|
179 |
msgstr "Ganztägig"
|
180 |
|
|
|
|
|
|
|
|
|
181 |
#: ../includes/event-organiser-cpt.php:146
|
182 |
msgid "All events"
|
183 |
msgstr "Alle Termine"
|
@@ -338,7 +338,7 @@ msgstr "Benutzerdefiniertes Feld aktualisiert."
|
|
338 |
|
339 |
#: ../event-organiser-settings.php:115
|
340 |
msgid "Custom Fields"
|
341 |
-
msgstr "
|
342 |
|
343 |
#: ../includes/event-organiser-event-functions.php:706
|
344 |
msgid "custom reoccurrence"
|
@@ -364,14 +364,14 @@ msgstr ""
|
|
364 |
msgid "Date Format:"
|
365 |
msgstr "Datumsformat:"
|
366 |
|
367 |
-
#: ../event-organiser-calendar.php:55
|
368 |
-
msgid "day"
|
369 |
-
msgstr "Tag"
|
370 |
-
|
371 |
#: ../event-organiser-calendar.php:229
|
372 |
msgid "Day"
|
373 |
msgstr "Tag"
|
374 |
|
|
|
|
|
|
|
|
|
375 |
#: ../event-organiser-settings.php:271
|
376 |
msgid "Day archive"
|
377 |
msgstr "Tagesarchiv"
|
@@ -390,7 +390,7 @@ msgstr "Tage"
|
|
390 |
|
391 |
#: ../event-organiser-settings.php:143
|
392 |
msgid "dd-mm-yyyy"
|
393 |
-
msgstr "
|
394 |
|
395 |
#: ../event-organiser-debug.php:555
|
396 |
msgid "Debug mode"
|
@@ -433,7 +433,7 @@ msgstr "DESC"
|
|
433 |
|
434 |
#: ../event-organiser-settings.php:229
|
435 |
msgid "Disable CSS:"
|
436 |
-
msgstr ""
|
437 |
|
438 |
#: ../includes/event-organiser-register.php:648
|
439 |
msgid "Dismiss"
|
@@ -476,7 +476,7 @@ msgstr "Exportdatei downloaden"
|
|
476 |
|
477 |
#: ../event-organiser-debug.php:84
|
478 |
msgid "Download system information file"
|
479 |
-
msgstr ""
|
480 |
|
481 |
#: ../includes/event-organiser-ajax.php:255
|
482 |
msgid "Draft"
|
@@ -608,7 +608,8 @@ msgstr ""
|
|
608 |
#: ../event-organiser-add-ons.php:99
|
609 |
msgid "Event Organiser offers a range of extension which add additional features to "
|
610 |
"the plug-in."
|
611 |
-
msgstr ""
|
|
|
612 |
|
613 |
#: ../event-organiser-go-pro.php:55
|
614 |
msgid "Event Organiser Pro is a premium add-on bringing advanced booking management "
|
@@ -798,7 +799,7 @@ msgstr "Termine exportieren"
|
|
798 |
|
799 |
#: ../event-organiser-add-ons.php:20
|
800 |
msgid "Extensions"
|
801 |
-
msgstr ""
|
802 |
|
803 |
#: ../includes/class-event-organiser-im-export.php:68
|
804 |
msgid "File Error encountered: %d"
|
@@ -994,7 +995,7 @@ msgstr "Abgelaufene Termine einschließen"
|
|
994 |
|
995 |
#: ../event-organiser-edit.php:180
|
996 |
msgid "Include/Exclude occurrences"
|
997 |
-
msgstr "Vorkommen ein- und
|
998 |
|
999 |
#: ../includes/class-event-organiser-im-export.php:586
|
1000 |
#: ../includes/class-eo-ical-parser.php:449
|
@@ -1078,16 +1079,16 @@ msgstr "Minute"
|
|
1078 |
|
1079 |
#: ../event-organiser-settings.php:144
|
1080 |
msgid "mm-dd-yyyy"
|
1081 |
-
msgstr "mm-
|
1082 |
-
|
1083 |
-
#: ../event-organiser-calendar.php:57
|
1084 |
-
msgid "month"
|
1085 |
-
msgstr "Monat"
|
1086 |
|
1087 |
#: ../event-organiser-calendar.php:229
|
1088 |
msgid "Month"
|
1089 |
msgstr "Monat"
|
1090 |
|
|
|
|
|
|
|
|
|
1091 |
#: ../event-organiser-settings.php:270
|
1092 |
msgid "Month archive"
|
1093 |
msgstr "Monatsarchiv"
|
@@ -1187,53 +1188,7 @@ msgstr "Vorkommen gelöscht"
|
|
1187 |
|
1188 |
#: ../includes/event.php:744
|
1189 |
msgid "Occurrence not deleted. Occurrence not found."
|
1190 |
-
msgstr ""
|
1191 |
-
|
1192 |
-
#: ../event-organiser-edit.php:146
|
1193 |
-
#: ../templates/shortcode-event-list.php:52
|
1194 |
-
msgid "on"
|
1195 |
-
msgstr "am"
|
1196 |
-
|
1197 |
-
#: ../event-organiser-edit.php:126
|
1198 |
-
msgid "once"
|
1199 |
-
msgstr "einmal"
|
1200 |
-
|
1201 |
-
#: ../includes/event-organiser-event-functions.php:703
|
1202 |
-
msgid "one time only"
|
1203 |
-
msgstr "einmalig"
|
1204 |
-
|
1205 |
-
#: ../includes/event-organiser-cpt.php:448
|
1206 |
-
msgid "Only pre-existing venues can be selected. To add a venue, go to the venues "
|
1207 |
-
"page."
|
1208 |
-
msgstr "Nur bereits bestehenden Veranstaltungsorte können ausgewählt werden. Um "
|
1209 |
-
"einen Ort hinzuzufügen, gehen Sie zur Seite \"Veranstaltungsorte\"."
|
1210 |
-
|
1211 |
-
#: ../classes/class-eo-event-list-widget.php:55
|
1212 |
-
msgid "Order by"
|
1213 |
-
msgstr "Sortieren nach"
|
1214 |
-
|
1215 |
-
#: ../event-organiser-settings.php:112
|
1216 |
-
#: ../event-organiser-edit.php:31
|
1217 |
-
#: ../event-organiser-manage.php:23
|
1218 |
-
msgid "Organiser"
|
1219 |
-
msgstr "Organiser"
|
1220 |
-
|
1221 |
-
#: ../includes/event-organiser-cpt.php:458
|
1222 |
-
#: ../includes/event-organiser-cpt.php:477
|
1223 |
-
msgid "Overview"
|
1224 |
-
msgstr "Übersicht"
|
1225 |
-
|
1226 |
-
#: ../event-organiser-settings.php:630
|
1227 |
-
msgid "Page list (fallback)"
|
1228 |
-
msgstr "Seitenliste (Sicherung)"
|
1229 |
-
|
1230 |
-
#: ../event-organiser-calendar.php:191
|
1231 |
-
msgid "Occurrence deleted."
|
1232 |
-
msgstr "Vorkommen gelöscht"
|
1233 |
-
|
1234 |
-
#: ../includes/event.php:744
|
1235 |
-
msgid "Occurrence not deleted. Occurrence not found."
|
1236 |
-
msgstr ""
|
1237 |
|
1238 |
#: ../event-organiser-edit.php:146
|
1239 |
#: ../templates/shortcode-event-list.php:52
|
@@ -1273,32 +1228,6 @@ msgstr "Übersicht"
|
|
1273 |
msgid "Page list (fallback)"
|
1274 |
msgstr "Seitenliste (Sicherung)"
|
1275 |
|
1276 |
-
#: ../includes/event-organiser-cpt.php:446
|
1277 |
-
msgid "Only pre-existing venues can be selected. To add a venue, go to the venues "
|
1278 |
-
"page."
|
1279 |
-
msgstr "Nur bereits bestehenden Veranstaltungsorte können ausgewählt werden. Um "
|
1280 |
-
"einen Ort hinzuzufügen, gehen Sie zur Seite \"Veranstaltungsorte\"."
|
1281 |
-
|
1282 |
-
#: ../classes/class-eo-event-list-widget.php:55
|
1283 |
-
msgid "Order by"
|
1284 |
-
msgstr "Sortieren nach"
|
1285 |
-
|
1286 |
-
#: ../event-organiser-settings.php:96
|
1287 |
-
#: ../event-organiser-edit.php:28
|
1288 |
-
#: ../event-organiser-manage.php:22
|
1289 |
-
msgid "Organiser"
|
1290 |
-
msgstr "Organiser"
|
1291 |
-
|
1292 |
-
#: ../includes/event-organiser-cpt.php:456
|
1293 |
-
#: ../includes/event-organiser-cpt.php:475
|
1294 |
-
msgid "Overview"
|
1295 |
-
msgstr "Übersicht"
|
1296 |
-
|
1297 |
-
#: ../event-organiser-settings.php:554
|
1298 |
-
msgid "Page list (fallback)"
|
1299 |
-
msgstr "Seitenliste (Sicherung)"
|
1300 |
-
|
1301 |
-
#: ../includes/event-organiser-cpt.php:63
|
1302 |
#: ../includes/event-organiser-cpt.php:64
|
1303 |
#: ../includes/event-organiser-cpt.php:65
|
1304 |
msgid "Parent Category"
|
@@ -1398,7 +1327,7 @@ msgstr "Zeitplan wurde nicht erkannt."
|
|
1398 |
|
1399 |
#: ../event-organiser-debug.php:556
|
1400 |
msgid "Script mode"
|
1401 |
-
msgstr ""
|
1402 |
|
1403 |
#: ../includes/event-organiser-cpt.php:62
|
1404 |
msgid "Search Categories"
|
@@ -1762,14 +1691,14 @@ msgstr ""
|
|
1762 |
msgid "Venue Location"
|
1763 |
msgstr "Veranstaltungsort Location"
|
1764 |
|
1765 |
-
#: ../event-organiser-edit.php:221
|
1766 |
-
msgid "Venue Name"
|
1767 |
-
msgstr "Veranstatungsort"
|
1768 |
-
|
1769 |
#: ../event-organiser-venues.php:399
|
1770 |
msgid "Venue name"
|
1771 |
msgstr "Veranstaltungsort Name"
|
1772 |
|
|
|
|
|
|
|
|
|
1773 |
#: ../event-organiser-settings.php:220
|
1774 |
msgid "Venue page:"
|
1775 |
msgstr "Veranstaltungsort Seite:"
|
@@ -1820,14 +1749,14 @@ msgstr "Veranstaltungsort zeigen"
|
|
1820 |
msgid "View will take you to the venue's page"
|
1821 |
msgstr "'Ansehen' bringt Sie zur Seite des Veranstaltungsortes."
|
1822 |
|
1823 |
-
#: ../event-organiser-calendar.php:56
|
1824 |
-
msgid "week"
|
1825 |
-
msgstr "Woche"
|
1826 |
-
|
1827 |
#: ../event-organiser-calendar.php:229
|
1828 |
msgid "Week"
|
1829 |
msgstr "Woche"
|
1830 |
|
|
|
|
|
|
|
|
|
1831 |
#: ../event-organiser-edit.php:126
|
1832 |
msgid "weekly"
|
1833 |
msgstr "wöchentlich"
|
@@ -1927,5 +1856,5 @@ msgstr "Möglicherweise müssen Sie gehen zu WordPress Einstellungen > Permalink
|
|
1927 |
|
1928 |
#: ../event-organiser-settings.php:145
|
1929 |
msgid "yyyy-mm-dd"
|
1930 |
-
msgstr "
|
1931 |
|
2 |
msgstr "Project-Id-Version: Event Organiser\n"
|
3 |
"Report-Msgid-Bugs-To: stephenh1988@gmail.com\n"
|
4 |
"POT-Creation-Date: 2008-09-01 09:37+0000\n"
|
5 |
+
"PO-Revision-Date: 2013-10-03 10:54:25+0000\n"
|
6 |
+
"Last-Translator: Thomas <seagreenlion@gmail.com>\n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: German (Germany)\n"
|
9 |
"MIME-Version: 1.0\n"
|
97 |
msgid "A list or dropdown of event venues"
|
98 |
msgstr "Eine Liste oder Dropdown von Veranstaltungsstätten"
|
99 |
|
|
|
|
|
|
|
|
|
|
|
100 |
#: ../event-organiser-settings.php:132
|
101 |
msgid "Add an 'events' link to the navigation menu:"
|
102 |
msgstr "Einen \"Termin\"-Link zum Navigationsmenü hinzufügen:"
|
105 |
msgid "Add Event"
|
106 |
msgstr "Termin hinzufügen"
|
107 |
|
108 |
+
#: ../event-organiser-go-pro.php:82
|
109 |
+
msgid "Add information on your venue pages with venue custom fields, or give your "
|
110 |
+
"venues more attentioned with their own 'featured image'"
|
111 |
+
msgstr ""
|
112 |
+
|
113 |
#: ../event-organiser-venues.php:230
|
114 |
#: ../event-organiser-venues.php:268
|
115 |
msgid "Add New"
|
149 |
|
150 |
#: ../event-organiser-settings.php:57
|
151 |
msgid "Add-on Licence keys"
|
152 |
+
msgstr "Lizenz Schlüssel der Erweiterung"
|
153 |
|
154 |
#: ../event-organiser-go-pro.php:76
|
155 |
msgid "Additional shortcodes & improved UI"
|
169 |
msgstr "Alle Daten und Zeiten müssen in einem bestimmten Format eingegeben werden. "
|
170 |
"Dieses Format kann unter \"Einstellungen\" geändert werden."
|
171 |
|
|
|
|
|
|
|
|
|
172 |
#: ../includes/event-organiser-ajax.php:540
|
173 |
#: ../includes/event-organiser-event-functions.php:1297
|
174 |
msgid "All Day"
|
175 |
msgstr "Ganztägig"
|
176 |
|
177 |
+
#: ../event-organiser-edit.php:117
|
178 |
+
msgid "All day"
|
179 |
+
msgstr "Ganztags"
|
180 |
+
|
181 |
#: ../includes/event-organiser-cpt.php:146
|
182 |
msgid "All events"
|
183 |
msgstr "Alle Termine"
|
338 |
|
339 |
#: ../event-organiser-settings.php:115
|
340 |
msgid "Custom Fields"
|
341 |
+
msgstr "Benutzerdefinierte Felder"
|
342 |
|
343 |
#: ../includes/event-organiser-event-functions.php:706
|
344 |
msgid "custom reoccurrence"
|
364 |
msgid "Date Format:"
|
365 |
msgstr "Datumsformat:"
|
366 |
|
|
|
|
|
|
|
|
|
367 |
#: ../event-organiser-calendar.php:229
|
368 |
msgid "Day"
|
369 |
msgstr "Tag"
|
370 |
|
371 |
+
#: ../event-organiser-calendar.php:55
|
372 |
+
msgid "day"
|
373 |
+
msgstr "Tag"
|
374 |
+
|
375 |
#: ../event-organiser-settings.php:271
|
376 |
msgid "Day archive"
|
377 |
msgstr "Tagesarchiv"
|
390 |
|
391 |
#: ../event-organiser-settings.php:143
|
392 |
msgid "dd-mm-yyyy"
|
393 |
+
msgstr "tt-mm-jjjj"
|
394 |
|
395 |
#: ../event-organiser-debug.php:555
|
396 |
msgid "Debug mode"
|
433 |
|
434 |
#: ../event-organiser-settings.php:229
|
435 |
msgid "Disable CSS:"
|
436 |
+
msgstr "CSS ausschalten"
|
437 |
|
438 |
#: ../includes/event-organiser-register.php:648
|
439 |
msgid "Dismiss"
|
476 |
|
477 |
#: ../event-organiser-debug.php:84
|
478 |
msgid "Download system information file"
|
479 |
+
msgstr "Herunterladen der Systeminfomationsdatei"
|
480 |
|
481 |
#: ../includes/event-organiser-ajax.php:255
|
482 |
msgid "Draft"
|
608 |
#: ../event-organiser-add-ons.php:99
|
609 |
msgid "Event Organiser offers a range of extension which add additional features to "
|
610 |
"the plug-in."
|
611 |
+
msgstr "Event Organiser bietet eine Reihe von Erweiterungen an, welche zusätzliche "
|
612 |
+
"Funktionen zum plug-in hinzu fügen."
|
613 |
|
614 |
#: ../event-organiser-go-pro.php:55
|
615 |
msgid "Event Organiser Pro is a premium add-on bringing advanced booking management "
|
799 |
|
800 |
#: ../event-organiser-add-ons.php:20
|
801 |
msgid "Extensions"
|
802 |
+
msgstr "Erweiterung"
|
803 |
|
804 |
#: ../includes/class-event-organiser-im-export.php:68
|
805 |
msgid "File Error encountered: %d"
|
995 |
|
996 |
#: ../event-organiser-edit.php:180
|
997 |
msgid "Include/Exclude occurrences"
|
998 |
+
msgstr "Vorkommen ein- und ausschliessen"
|
999 |
|
1000 |
#: ../includes/class-event-organiser-im-export.php:586
|
1001 |
#: ../includes/class-eo-ical-parser.php:449
|
1079 |
|
1080 |
#: ../event-organiser-settings.php:144
|
1081 |
msgid "mm-dd-yyyy"
|
1082 |
+
msgstr "mm-tt-jjjj"
|
|
|
|
|
|
|
|
|
1083 |
|
1084 |
#: ../event-organiser-calendar.php:229
|
1085 |
msgid "Month"
|
1086 |
msgstr "Monat"
|
1087 |
|
1088 |
+
#: ../event-organiser-calendar.php:57
|
1089 |
+
msgid "month"
|
1090 |
+
msgstr "Monat"
|
1091 |
+
|
1092 |
#: ../event-organiser-settings.php:270
|
1093 |
msgid "Month archive"
|
1094 |
msgstr "Monatsarchiv"
|
1188 |
|
1189 |
#: ../includes/event.php:744
|
1190 |
msgid "Occurrence not deleted. Occurrence not found."
|
1191 |
+
msgstr "Ereignis nicht gelöscht bzw. nicht gefunden"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1192 |
|
1193 |
#: ../event-organiser-edit.php:146
|
1194 |
#: ../templates/shortcode-event-list.php:52
|
1228 |
msgid "Page list (fallback)"
|
1229 |
msgstr "Seitenliste (Sicherung)"
|
1230 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1231 |
#: ../includes/event-organiser-cpt.php:64
|
1232 |
#: ../includes/event-organiser-cpt.php:65
|
1233 |
msgid "Parent Category"
|
1327 |
|
1328 |
#: ../event-organiser-debug.php:556
|
1329 |
msgid "Script mode"
|
1330 |
+
msgstr "Script Modus"
|
1331 |
|
1332 |
#: ../includes/event-organiser-cpt.php:62
|
1333 |
msgid "Search Categories"
|
1691 |
msgid "Venue Location"
|
1692 |
msgstr "Veranstaltungsort Location"
|
1693 |
|
|
|
|
|
|
|
|
|
1694 |
#: ../event-organiser-venues.php:399
|
1695 |
msgid "Venue name"
|
1696 |
msgstr "Veranstaltungsort Name"
|
1697 |
|
1698 |
+
#: ../event-organiser-edit.php:221
|
1699 |
+
msgid "Venue Name"
|
1700 |
+
msgstr "Veranstatungsort"
|
1701 |
+
|
1702 |
#: ../event-organiser-settings.php:220
|
1703 |
msgid "Venue page:"
|
1704 |
msgstr "Veranstaltungsort Seite:"
|
1749 |
msgid "View will take you to the venue's page"
|
1750 |
msgstr "'Ansehen' bringt Sie zur Seite des Veranstaltungsortes."
|
1751 |
|
|
|
|
|
|
|
|
|
1752 |
#: ../event-organiser-calendar.php:229
|
1753 |
msgid "Week"
|
1754 |
msgstr "Woche"
|
1755 |
|
1756 |
+
#: ../event-organiser-calendar.php:56
|
1757 |
+
msgid "week"
|
1758 |
+
msgstr "Woche"
|
1759 |
+
|
1760 |
#: ../event-organiser-edit.php:126
|
1761 |
msgid "weekly"
|
1762 |
msgstr "wöchentlich"
|
1856 |
|
1857 |
#: ../event-organiser-settings.php:145
|
1858 |
msgid "yyyy-mm-dd"
|
1859 |
+
msgstr "jjjj-mm-tt"
|
1860 |
|
languages/eventorganiser-el.mo
CHANGED
Binary file
|
languages/eventorganiser-el.po
CHANGED
@@ -96,11 +96,6 @@ msgstr "Μιά λίστα ή αναπτυσσόμενη λίστα των κατ
|
|
96 |
msgid "A list or dropdown of event venues"
|
97 |
msgstr "Μιά λίστα ή αναπτυσσόμενη λίστα των τοποθεσιών."
|
98 |
|
99 |
-
#: ../event-organiser-go-pro.php:82
|
100 |
-
msgid "Add action information on your venue pages with venue custom fields, or give "
|
101 |
-
"your venues more attentioned with their own 'featured image'"
|
102 |
-
msgstr ""
|
103 |
-
|
104 |
#: ../event-organiser-settings.php:132
|
105 |
msgid "Add an 'events' link to the navigation menu:"
|
106 |
msgstr "Πρόσθεσε Event σύνδεση στο μενού πλοήγησης"
|
@@ -109,6 +104,11 @@ msgstr "Πρόσθεσε Event σύνδεση στο μενού πλοήγηση
|
|
109 |
msgid "Add Event"
|
110 |
msgstr "Προσθήκη Event"
|
111 |
|
|
|
|
|
|
|
|
|
|
|
112 |
#: ../event-organiser-venues.php:230
|
113 |
#: ../event-organiser-venues.php:268
|
114 |
msgid "Add New"
|
@@ -168,15 +168,15 @@ msgid "All dates and times must be entered in the specified format. This format
|
|
168 |
msgstr "Όλες οι ημερομηνίες και οι ώρες πρέπει να αναγράφονται με συγκεκριμένο "
|
169 |
"τρόπο. Αυτή η μορφή μπορεί να αλλάξει στην σελίδα ρυθμίσεων."
|
170 |
|
171 |
-
#: ../event-organiser-edit.php:117
|
172 |
-
msgid "All day"
|
173 |
-
msgstr "Ολοήμερο"
|
174 |
-
|
175 |
#: ../includes/event-organiser-ajax.php:540
|
176 |
#: ../includes/event-organiser-event-functions.php:1297
|
177 |
msgid "All Day"
|
178 |
msgstr "Ολοήμερο"
|
179 |
|
|
|
|
|
|
|
|
|
180 |
#: ../includes/event-organiser-cpt.php:146
|
181 |
msgid "All events"
|
182 |
msgstr "Όλα τα event"
|
@@ -361,14 +361,14 @@ msgstr ""
|
|
361 |
msgid "Date Format:"
|
362 |
msgstr "Διαμόρφωση Ημερομηνίας"
|
363 |
|
364 |
-
#: ../event-organiser-calendar.php:55
|
365 |
-
msgid "day"
|
366 |
-
msgstr "Ημέρα"
|
367 |
-
|
368 |
#: ../event-organiser-calendar.php:229
|
369 |
msgid "Day"
|
370 |
msgstr "Ημέρα"
|
371 |
|
|
|
|
|
|
|
|
|
372 |
#: ../event-organiser-settings.php:271
|
373 |
msgid "Day archive"
|
374 |
msgstr "Αρχείο ανα Ημέρα"
|
@@ -1084,14 +1084,14 @@ msgstr "Λεπτό"
|
|
1084 |
msgid "mm-dd-yyyy"
|
1085 |
msgstr "mm-dd-yyyy"
|
1086 |
|
1087 |
-
#: ../event-organiser-calendar.php:57
|
1088 |
-
msgid "month"
|
1089 |
-
msgstr "Μήνας"
|
1090 |
-
|
1091 |
#: ../event-organiser-calendar.php:229
|
1092 |
msgid "Month"
|
1093 |
msgstr "Μήνας"
|
1094 |
|
|
|
|
|
|
|
|
|
1095 |
#: ../event-organiser-settings.php:270
|
1096 |
msgid "Month archive"
|
1097 |
msgstr "Αρχείο ανα Μήνα"
|
@@ -1694,14 +1694,14 @@ msgstr ""
|
|
1694 |
msgid "Venue Location"
|
1695 |
msgstr "Τοποθεσία χώρου"
|
1696 |
|
1697 |
-
#: ../event-organiser-edit.php:221
|
1698 |
-
msgid "Venue Name"
|
1699 |
-
msgstr "Ονομα Τοποθεσίας"
|
1700 |
-
|
1701 |
#: ../event-organiser-venues.php:399
|
1702 |
msgid "Venue name"
|
1703 |
msgstr "Ονομασία χώρου"
|
1704 |
|
|
|
|
|
|
|
|
|
1705 |
#: ../event-organiser-settings.php:220
|
1706 |
msgid "Venue page:"
|
1707 |
msgstr "Τοποθεσίες"
|
@@ -1752,14 +1752,14 @@ msgstr "Εμφάνιση τοποθεσίας"
|
|
1752 |
msgid "View will take you to the venue's page"
|
1753 |
msgstr "Η Εμφάνιση θα οδηγήσει σην σελίδα με τις τοποθεσίες."
|
1754 |
|
1755 |
-
#: ../event-organiser-calendar.php:56
|
1756 |
-
msgid "week"
|
1757 |
-
msgstr "Εβδομάδα"
|
1758 |
-
|
1759 |
#: ../event-organiser-calendar.php:229
|
1760 |
msgid "Week"
|
1761 |
msgstr "Εβδομάδα"
|
1762 |
|
|
|
|
|
|
|
|
|
1763 |
#: ../event-organiser-edit.php:126
|
1764 |
msgid "weekly"
|
1765 |
msgstr "Εβδομαδιαία"
|
96 |
msgid "A list or dropdown of event venues"
|
97 |
msgstr "Μιά λίστα ή αναπτυσσόμενη λίστα των τοποθεσιών."
|
98 |
|
|
|
|
|
|
|
|
|
|
|
99 |
#: ../event-organiser-settings.php:132
|
100 |
msgid "Add an 'events' link to the navigation menu:"
|
101 |
msgstr "Πρόσθεσε Event σύνδεση στο μενού πλοήγησης"
|
104 |
msgid "Add Event"
|
105 |
msgstr "Προσθήκη Event"
|
106 |
|
107 |
+
#: ../event-organiser-go-pro.php:82
|
108 |
+
msgid "Add information on your venue pages with venue custom fields, or give your "
|
109 |
+
"venues more attentioned with their own 'featured image'"
|
110 |
+
msgstr ""
|
111 |
+
|
112 |
#: ../event-organiser-venues.php:230
|
113 |
#: ../event-organiser-venues.php:268
|
114 |
msgid "Add New"
|
168 |
msgstr "Όλες οι ημερομηνίες και οι ώρες πρέπει να αναγράφονται με συγκεκριμένο "
|
169 |
"τρόπο. Αυτή η μορφή μπορεί να αλλάξει στην σελίδα ρυθμίσεων."
|
170 |
|
|
|
|
|
|
|
|
|
171 |
#: ../includes/event-organiser-ajax.php:540
|
172 |
#: ../includes/event-organiser-event-functions.php:1297
|
173 |
msgid "All Day"
|
174 |
msgstr "Ολοήμερο"
|
175 |
|
176 |
+
#: ../event-organiser-edit.php:117
|
177 |
+
msgid "All day"
|
178 |
+
msgstr "Ολοήμερο"
|
179 |
+
|
180 |
#: ../includes/event-organiser-cpt.php:146
|
181 |
msgid "All events"
|
182 |
msgstr "Όλα τα event"
|
361 |
msgid "Date Format:"
|
362 |
msgstr "Διαμόρφωση Ημερομηνίας"
|
363 |
|
|
|
|
|
|
|
|
|
364 |
#: ../event-organiser-calendar.php:229
|
365 |
msgid "Day"
|
366 |
msgstr "Ημέρα"
|
367 |
|
368 |
+
#: ../event-organiser-calendar.php:55
|
369 |
+
msgid "day"
|
370 |
+
msgstr "Ημέρα"
|
371 |
+
|
372 |
#: ../event-organiser-settings.php:271
|
373 |
msgid "Day archive"
|
374 |
msgstr "Αρχείο ανα Ημέρα"
|
1084 |
msgid "mm-dd-yyyy"
|
1085 |
msgstr "mm-dd-yyyy"
|
1086 |
|
|
|
|
|
|
|
|
|
1087 |
#: ../event-organiser-calendar.php:229
|
1088 |
msgid "Month"
|
1089 |
msgstr "Μήνας"
|
1090 |
|
1091 |
+
#: ../event-organiser-calendar.php:57
|
1092 |
+
msgid "month"
|
1093 |
+
msgstr "Μήνας"
|
1094 |
+
|
1095 |
#: ../event-organiser-settings.php:270
|
1096 |
msgid "Month archive"
|
1097 |
msgstr "Αρχείο ανα Μήνα"
|
1694 |
msgid "Venue Location"
|
1695 |
msgstr "Τοποθεσία χώρου"
|
1696 |
|
|
|
|
|
|
|
|
|
1697 |
#: ../event-organiser-venues.php:399
|
1698 |
msgid "Venue name"
|
1699 |
msgstr "Ονομασία χώρου"
|
1700 |
|
1701 |
+
#: ../event-organiser-edit.php:221
|
1702 |
+
msgid "Venue Name"
|
1703 |
+
msgstr "Ονομα Τοποθεσίας"
|
1704 |
+
|
1705 |
#: ../event-organiser-settings.php:220
|
1706 |
msgid "Venue page:"
|
1707 |
msgstr "Τοποθεσίες"
|
1752 |
msgid "View will take you to the venue's page"
|
1753 |
msgstr "Η Εμφάνιση θα οδηγήσει σην σελίδα με τις τοποθεσίες."
|
1754 |
|
|
|
|
|
|
|
|
|
1755 |
#: ../event-organiser-calendar.php:229
|
1756 |
msgid "Week"
|
1757 |
msgstr "Εβδομάδα"
|
1758 |
|
1759 |
+
#: ../event-organiser-calendar.php:56
|
1760 |
+
msgid "week"
|
1761 |
+
msgstr "Εβδομάδα"
|
1762 |
+
|
1763 |
#: ../event-organiser-edit.php:126
|
1764 |
msgid "weekly"
|
1765 |
msgstr "Εβδομαδιαία"
|
languages/eventorganiser-fa_IR.mo
CHANGED
Binary file
|
languages/eventorganiser-fa_IR.po
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr "Project-Id-Version: Event Organiser\n"
|
3 |
"Report-Msgid-Bugs-To: stephenh1988@gmail.com\n"
|
4 |
"POT-Creation-Date: 2008-09-01 09:37+0000\n"
|
5 |
-
"PO-Revision-Date: 2013-09-
|
6 |
-
"Last-Translator:
|
7 |
"Language-Team: \n"
|
8 |
"Language: Persian (Iran, Islamic Republic of)\n"
|
9 |
"MIME-Version: 1.0\n"
|
@@ -89,11 +89,6 @@ msgstr ""
|
|
89 |
msgid "A list or dropdown of event venues"
|
90 |
msgstr ""
|
91 |
|
92 |
-
#: ../event-organiser-go-pro.php:82
|
93 |
-
msgid "Add action information on your venue pages with venue custom fields, or give "
|
94 |
-
"your venues more attentioned with their own 'featured image'"
|
95 |
-
msgstr ""
|
96 |
-
|
97 |
#: ../event-organiser-settings.php:132
|
98 |
msgid "Add an 'events' link to the navigation menu:"
|
99 |
msgstr ""
|
@@ -102,6 +97,11 @@ msgstr ""
|
|
102 |
msgid "Add Event"
|
103 |
msgstr "افزودن رویداد"
|
104 |
|
|
|
|
|
|
|
|
|
|
|
105 |
#: ../event-organiser-venues.php:230
|
106 |
#: ../event-organiser-venues.php:268
|
107 |
msgid "Add New"
|
@@ -125,7 +125,7 @@ msgstr "افزودن مکان"
|
|
125 |
|
126 |
#: ../includes/event-organiser-cpt.php:106
|
127 |
msgid "Add or remove tags"
|
128 |
-
msgstr ""
|
129 |
|
130 |
#: ../includes/event-organiser-cpt.php:38
|
131 |
msgid "Add or remove venues"
|
@@ -160,15 +160,15 @@ msgid "All dates and times must be entered in the specified format. This format
|
|
160 |
"changed in the settings page."
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: ../event-organiser-edit.php:117
|
164 |
-
msgid "All day"
|
165 |
-
msgstr "تمام روز"
|
166 |
-
|
167 |
#: ../includes/event-organiser-ajax.php:540
|
168 |
#: ../includes/event-organiser-event-functions.php:1297
|
169 |
msgid "All Day"
|
170 |
msgstr "تمام روز"
|
171 |
|
|
|
|
|
|
|
|
|
172 |
#: ../includes/event-organiser-cpt.php:146
|
173 |
msgid "All events"
|
174 |
msgstr "تمامی رویدادها"
|
@@ -267,7 +267,7 @@ msgstr ""
|
|
267 |
|
268 |
#: ../includes/event-organiser-cpt.php:104
|
269 |
msgid "Choose from the most used tags"
|
270 |
-
msgstr ""
|
271 |
|
272 |
#: ../includes/event-organiser-cpt.php:437
|
273 |
msgid "Choose the reoccurrence end date. No further occurrences are added after "
|
@@ -347,14 +347,14 @@ msgstr ""
|
|
347 |
msgid "Date Format:"
|
348 |
msgstr "فرمت تاریخ"
|
349 |
|
350 |
-
#: ../event-organiser-calendar.php:55
|
351 |
-
msgid "day"
|
352 |
-
msgstr "روز"
|
353 |
-
|
354 |
#: ../event-organiser-calendar.php:229
|
355 |
msgid "Day"
|
356 |
msgstr "روز"
|
357 |
|
|
|
|
|
|
|
|
|
358 |
#: ../event-organiser-settings.php:271
|
359 |
msgid "Day archive"
|
360 |
msgstr "بایگانی روزانه"
|
@@ -642,7 +642,7 @@ msgstr "رویداد به روز شد"
|
|
642 |
|
643 |
#: ../includes/event-organiser-cpt.php:217
|
644 |
msgid "Event updated. <a href=\"%s\">View event</a>"
|
645 |
-
msgstr ""
|
646 |
|
647 |
#: ../classes/class-eo-calendar-widget.php:88
|
648 |
msgid "Event venue"
|
@@ -1043,14 +1043,14 @@ msgstr "دقیقه"
|
|
1043 |
msgid "mm-dd-yyyy"
|
1044 |
msgstr ""
|
1045 |
|
1046 |
-
#: ../event-organiser-calendar.php:57
|
1047 |
-
msgid "month"
|
1048 |
-
msgstr "ماه"
|
1049 |
-
|
1050 |
#: ../event-organiser-calendar.php:229
|
1051 |
msgid "Month"
|
1052 |
msgstr "ماه"
|
1053 |
|
|
|
|
|
|
|
|
|
1054 |
#: ../event-organiser-settings.php:270
|
1055 |
msgid "Month archive"
|
1056 |
msgstr "بایگانی ماهانه"
|
@@ -1105,7 +1105,7 @@ msgstr "رویدادی یافت نشد"
|
|
1105 |
|
1106 |
#: ../includes/event-organiser-cpt.php:150
|
1107 |
msgid "No events found in Trash"
|
1108 |
-
msgstr ""
|
1109 |
|
1110 |
#: ../includes/class-event-organiser-im-export.php:316
|
1111 |
msgid "No events were imported."
|
@@ -1341,7 +1341,7 @@ msgstr ""
|
|
1341 |
|
1342 |
#: ../includes/event-organiser-cpt.php:107
|
1343 |
msgid "Separate tags with commas"
|
1344 |
-
msgstr ""
|
1345 |
|
1346 |
#: ../includes/event-organiser-cpt.php:39
|
1347 |
msgid "Separate venues with commas"
|
@@ -1631,14 +1631,14 @@ msgstr ""
|
|
1631 |
msgid "Venue Location"
|
1632 |
msgstr "آدرس مکان"
|
1633 |
|
1634 |
-
#: ../event-organiser-edit.php:221
|
1635 |
-
msgid "Venue Name"
|
1636 |
-
msgstr "نام مکان"
|
1637 |
-
|
1638 |
#: ../event-organiser-venues.php:399
|
1639 |
msgid "Venue name"
|
1640 |
msgstr "نام مکان"
|
1641 |
|
|
|
|
|
|
|
|
|
1642 |
#: ../event-organiser-settings.php:220
|
1643 |
msgid "Venue page:"
|
1644 |
msgstr "صفحه مکان:"
|
@@ -1689,14 +1689,14 @@ msgstr "نمایش مکان"
|
|
1689 |
msgid "View will take you to the venue's page"
|
1690 |
msgstr ""
|
1691 |
|
1692 |
-
#: ../event-organiser-calendar.php:56
|
1693 |
-
msgid "week"
|
1694 |
-
msgstr "هفته"
|
1695 |
-
|
1696 |
#: ../event-organiser-calendar.php:229
|
1697 |
msgid "Week"
|
1698 |
msgstr "هفته"
|
1699 |
|
|
|
|
|
|
|
|
|
1700 |
#: ../event-organiser-edit.php:126
|
1701 |
msgid "weekly"
|
1702 |
msgstr "هفتگی"
|
2 |
msgstr "Project-Id-Version: Event Organiser\n"
|
3 |
"Report-Msgid-Bugs-To: stephenh1988@gmail.com\n"
|
4 |
"POT-Creation-Date: 2008-09-01 09:37+0000\n"
|
5 |
+
"PO-Revision-Date: 2013-09-29 05:10:28+0000\n"
|
6 |
+
"Last-Translator: chinestan <chinestan@mihanmail.ir>\n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: Persian (Iran, Islamic Republic of)\n"
|
9 |
"MIME-Version: 1.0\n"
|
89 |
msgid "A list or dropdown of event venues"
|
90 |
msgstr ""
|
91 |
|
|
|
|
|
|
|
|
|
|
|
92 |
#: ../event-organiser-settings.php:132
|
93 |
msgid "Add an 'events' link to the navigation menu:"
|
94 |
msgstr ""
|
97 |
msgid "Add Event"
|
98 |
msgstr "افزودن رویداد"
|
99 |
|
100 |
+
#: ../event-organiser-go-pro.php:82
|
101 |
+
msgid "Add information on your venue pages with venue custom fields, or give your "
|
102 |
+
"venues more attentioned with their own 'featured image'"
|
103 |
+
msgstr ""
|
104 |
+
|
105 |
#: ../event-organiser-venues.php:230
|
106 |
#: ../event-organiser-venues.php:268
|
107 |
msgid "Add New"
|
125 |
|
126 |
#: ../includes/event-organiser-cpt.php:106
|
127 |
msgid "Add or remove tags"
|
128 |
+
msgstr " افزودن یا حذف کردن برچسب"
|
129 |
|
130 |
#: ../includes/event-organiser-cpt.php:38
|
131 |
msgid "Add or remove venues"
|
160 |
"changed in the settings page."
|
161 |
msgstr ""
|
162 |
|
|
|
|
|
|
|
|
|
163 |
#: ../includes/event-organiser-ajax.php:540
|
164 |
#: ../includes/event-organiser-event-functions.php:1297
|
165 |
msgid "All Day"
|
166 |
msgstr "تمام روز"
|
167 |
|
168 |
+
#: ../event-organiser-edit.php:117
|
169 |
+
msgid "All day"
|
170 |
+
msgstr "تمام روز"
|
171 |
+
|
172 |
#: ../includes/event-organiser-cpt.php:146
|
173 |
msgid "All events"
|
174 |
msgstr "تمامی رویدادها"
|
267 |
|
268 |
#: ../includes/event-organiser-cpt.php:104
|
269 |
msgid "Choose from the most used tags"
|
270 |
+
msgstr "از میان برچسبهایی که بیشتر استفاده شده اند ، انتخاب کنید"
|
271 |
|
272 |
#: ../includes/event-organiser-cpt.php:437
|
273 |
msgid "Choose the reoccurrence end date. No further occurrences are added after "
|
347 |
msgid "Date Format:"
|
348 |
msgstr "فرمت تاریخ"
|
349 |
|
|
|
|
|
|
|
|
|
350 |
#: ../event-organiser-calendar.php:229
|
351 |
msgid "Day"
|
352 |
msgstr "روز"
|
353 |
|
354 |
+
#: ../event-organiser-calendar.php:55
|
355 |
+
msgid "day"
|
356 |
+
msgstr "روز"
|
357 |
+
|
358 |
#: ../event-organiser-settings.php:271
|
359 |
msgid "Day archive"
|
360 |
msgstr "بایگانی روزانه"
|
642 |
|
643 |
#: ../includes/event-organiser-cpt.php:217
|
644 |
msgid "Event updated. <a href=\"%s\">View event</a>"
|
645 |
+
msgstr "رویداد بروز شد. <a href=\"%s\">مشاهده صفحه رویداد</a>"
|
646 |
|
647 |
#: ../classes/class-eo-calendar-widget.php:88
|
648 |
msgid "Event venue"
|
1043 |
msgid "mm-dd-yyyy"
|
1044 |
msgstr ""
|
1045 |
|
|
|
|
|
|
|
|
|
1046 |
#: ../event-organiser-calendar.php:229
|
1047 |
msgid "Month"
|
1048 |
msgstr "ماه"
|
1049 |
|
1050 |
+
#: ../event-organiser-calendar.php:57
|
1051 |
+
msgid "month"
|
1052 |
+
msgstr "ماه"
|
1053 |
+
|
1054 |
#: ../event-organiser-settings.php:270
|
1055 |
msgid "Month archive"
|
1056 |
msgstr "بایگانی ماهانه"
|
1105 |
|
1106 |
#: ../includes/event-organiser-cpt.php:150
|
1107 |
msgid "No events found in Trash"
|
1108 |
+
msgstr "رویدادی در سطل زباله یافت نشد"
|
1109 |
|
1110 |
#: ../includes/class-event-organiser-im-export.php:316
|
1111 |
msgid "No events were imported."
|
1341 |
|
1342 |
#: ../includes/event-organiser-cpt.php:107
|
1343 |
msgid "Separate tags with commas"
|
1344 |
+
msgstr "برچسب ها را با کاما جدا کنید"
|
1345 |
|
1346 |
#: ../includes/event-organiser-cpt.php:39
|
1347 |
msgid "Separate venues with commas"
|
1631 |
msgid "Venue Location"
|
1632 |
msgstr "آدرس مکان"
|
1633 |
|
|
|
|
|
|
|
|
|
1634 |
#: ../event-organiser-venues.php:399
|
1635 |
msgid "Venue name"
|
1636 |
msgstr "نام مکان"
|
1637 |
|
1638 |
+
#: ../event-organiser-edit.php:221
|
1639 |
+
msgid "Venue Name"
|
1640 |
+
msgstr "نام مکان"
|
1641 |
+
|
1642 |
#: ../event-organiser-settings.php:220
|
1643 |
msgid "Venue page:"
|
1644 |
msgstr "صفحه مکان:"
|
1689 |
msgid "View will take you to the venue's page"
|
1690 |
msgstr ""
|
1691 |
|
|
|
|
|
|
|
|
|
1692 |
#: ../event-organiser-calendar.php:229
|
1693 |
msgid "Week"
|
1694 |
msgstr "هفته"
|
1695 |
|
1696 |
+
#: ../event-organiser-calendar.php:56
|
1697 |
+
msgid "week"
|
1698 |
+
msgstr "هفته"
|
1699 |
+
|
1700 |
#: ../event-organiser-edit.php:126
|
1701 |
msgid "weekly"
|
1702 |
msgstr "هفتگی"
|
languages/eventorganiser-id_ID.mo
ADDED
Binary file
|
languages/eventorganiser-id_ID.po
ADDED
@@ -0,0 +1,1791 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr "Project-Id-Version: Event Organiser\n"
|
3 |
+
"Report-Msgid-Bugs-To: stephenh1988@gmail.com\n"
|
4 |
+
"POT-Creation-Date: 2008-09-01 09:37+0000\n"
|
5 |
+
"PO-Revision-Date: 2013-10-21 23:33:37+0000\n"
|
6 |
+
"Last-Translator: Ebta <ebta.setiawan@gmail.com>\n"
|
7 |
+
"Language-Team: \n"
|
8 |
+
"Language: Indonesian (Indonesia)\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
""
|
13 |
+
|
14 |
+
#: ../templates/taxonomy-event-category.php:49
|
15 |
+
#: ../templates/taxonomy-event-category.php:107
|
16 |
+
#: ../templates/archive-event.php:56
|
17 |
+
#: ../templates/archive-event.php:111
|
18 |
+
#: ../templates/taxonomy-event-tag.php:49
|
19 |
+
#: ../templates/taxonomy-event-tag.php:107
|
20 |
+
#: ../templates/taxonomy-event-venue.php:49
|
21 |
+
#: ../templates/taxonomy-event-venue.php:106
|
22 |
+
msgid " <span class=\"meta-nav\">←</span> Newer events"
|
23 |
+
msgstr ""
|
24 |
+
|
25 |
+
#: ../includes/class-event-organiser-im-export.php:335
|
26 |
+
msgid "%d categories were created"
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#: ../includes/class-event-organiser-im-export.php:324
|
30 |
+
msgid "%d events were successfully imported"
|
31 |
+
msgstr ""
|
32 |
+
|
33 |
+
#: ../includes/class-event-organiser-im-export.php:329
|
34 |
+
msgid "%d venues were created"
|
35 |
+
msgstr "% lokasi sudah dibuat"
|
36 |
+
|
37 |
+
#: ../event-organiser-debug.php:416
|
38 |
+
msgid "%s has only been tested up to %s %s"
|
39 |
+
msgstr ""
|
40 |
+
|
41 |
+
#: ../event-organiser-debug.php:423
|
42 |
+
msgid "%s requires %s version %s or higher"
|
43 |
+
msgstr ""
|
44 |
+
|
45 |
+
#: ../event-organiser-manage.php:200
|
46 |
+
msgid "— No Change —"
|
47 |
+
msgstr ""
|
48 |
+
|
49 |
+
#: ../classes/class-eo-event-list-widget.php:90
|
50 |
+
msgid "'No events' message"
|
51 |
+
msgstr ""
|
52 |
+
|
53 |
+
#: ../includes/class-event-organiser-im-export.php:333
|
54 |
+
msgid "1 category was created"
|
55 |
+
msgstr "1 kategori sudah dibuat"
|
56 |
+
|
57 |
+
#: ../includes/class-event-organiser-im-export.php:322
|
58 |
+
msgid "1 event was successfully imported"
|
59 |
+
msgstr ""
|
60 |
+
|
61 |
+
#: ../includes/class-event-organiser-im-export.php:327
|
62 |
+
msgid "1 venue was created"
|
63 |
+
msgstr "1 lokasi sudah dibuat"
|
64 |
+
|
65 |
+
#: ../event-organiser-calendar.php:210
|
66 |
+
msgid "24 hour time"
|
67 |
+
msgstr ""
|
68 |
+
|
69 |
+
#: ../includes/event-organiser-register.php:604
|
70 |
+
msgid "<h4>City & State Fields Added</h4>City and state / province fields for "
|
71 |
+
"venues have now been added. </br> If you'd like, Event Organiser can <a "
|
72 |
+
"href='%s'>attempt to auto-fill them</a>. You can always manually change the "
|
73 |
+
"details aftewards."
|
74 |
+
msgstr ""
|
75 |
+
|
76 |
+
#: ../includes/event-organiser-register.php:611
|
77 |
+
msgid "<h4>The Default Templates Have Changed</h4>Don't panic! If you've set up "
|
78 |
+
"your own templates in your theme you won't notice any change. </br> If you "
|
79 |
+
"haven't and want the old templates back, <a "
|
80 |
+
"href='http://wp-event-organiser.com/blog/new-default-templates-in-1-7'>see "
|
81 |
+
"this post<a/>."
|
82 |
+
msgstr ""
|
83 |
+
|
84 |
+
#: ../classes/class-eo-widget-categories.php:10
|
85 |
+
msgid "A list or dropdown of event categories"
|
86 |
+
msgstr ""
|
87 |
+
|
88 |
+
#: ../classes/class-eo-widget-venues.php:11
|
89 |
+
msgid "A list or dropdown of event venues"
|
90 |
+
msgstr ""
|
91 |
+
|
92 |
+
#: ../event-organiser-settings.php:132
|
93 |
+
msgid "Add an 'events' link to the navigation menu:"
|
94 |
+
msgstr ""
|
95 |
+
|
96 |
+
#: ../includes/event-organiser-cpt.php:483
|
97 |
+
msgid "Add Event"
|
98 |
+
msgstr ""
|
99 |
+
|
100 |
+
#: ../event-organiser-go-pro.php:82
|
101 |
+
msgid "Add information on your venue pages with venue custom fields, or give your "
|
102 |
+
"venues more attentioned with their own 'featured image'"
|
103 |
+
msgstr ""
|
104 |
+
|
105 |
+
#: ../event-organiser-venues.php:230
|
106 |
+
#: ../event-organiser-venues.php:268
|
107 |
+
msgid "Add New"
|
108 |
+
msgstr ""
|
109 |
+
|
110 |
+
#: ../includes/event-organiser-cpt.php:68
|
111 |
+
msgid "Add New Category"
|
112 |
+
msgstr "Tambah Kategori Baru"
|
113 |
+
|
114 |
+
#: ../includes/event-organiser-cpt.php:143
|
115 |
+
msgid "Add New Event"
|
116 |
+
msgstr "Tambah Agenda Baru"
|
117 |
+
|
118 |
+
#: ../includes/event-organiser-cpt.php:101
|
119 |
+
msgid "Add New Tag"
|
120 |
+
msgstr "Tambah Kata Kunci Baru"
|
121 |
+
|
122 |
+
#: ../event-organiser-venues.php:272
|
123 |
+
msgid "Add New Venue"
|
124 |
+
msgstr ""
|
125 |
+
|
126 |
+
#: ../includes/event-organiser-cpt.php:106
|
127 |
+
msgid "Add or remove tags"
|
128 |
+
msgstr "Tambah atau hapus kata-kata kunci"
|
129 |
+
|
130 |
+
#: ../includes/event-organiser-cpt.php:38
|
131 |
+
msgid "Add or remove venues"
|
132 |
+
msgstr "Tambah atau hapus tempat/lokasi"
|
133 |
+
|
134 |
+
#: ../includes/event-organiser-ajax.php:545
|
135 |
+
msgid "Add To Google Calendar"
|
136 |
+
msgstr "Tambahkan ke Google Calendar"
|
137 |
+
|
138 |
+
#: ../event-organiser-venues.php:345
|
139 |
+
msgid "Add Venue"
|
140 |
+
msgstr ""
|
141 |
+
|
142 |
+
#: ../event-organiser-settings.php:57
|
143 |
+
msgid "Add-on Licence keys"
|
144 |
+
msgstr ""
|
145 |
+
|
146 |
+
#: ../event-organiser-go-pro.php:76
|
147 |
+
msgid "Additional shortcodes & improved UI"
|
148 |
+
msgstr ""
|
149 |
+
|
150 |
+
#: ../includes/event-organiser-venue-functions.php:882
|
151 |
+
msgid "Address"
|
152 |
+
msgstr ""
|
153 |
+
|
154 |
+
#: ../includes/event-organiser-cpt.php:63
|
155 |
+
msgid "All Categories"
|
156 |
+
msgstr "Semua Kategori"
|
157 |
+
|
158 |
+
#: ../includes/event-organiser-cpt.php:428
|
159 |
+
msgid "All dates and times must be entered in the specified format. This format can "
|
160 |
+
"changed in the settings page."
|
161 |
+
msgstr ""
|
162 |
+
|
163 |
+
#: ../includes/event-organiser-ajax.php:540
|
164 |
+
#: ../includes/event-organiser-event-functions.php:1297
|
165 |
+
msgid "All Day"
|
166 |
+
msgstr "Setiap hari"
|
167 |
+
|
168 |
+
#: ../event-organiser-edit.php:117
|
169 |
+
msgid "All day"
|
170 |
+
msgstr ""
|
171 |
+
|
172 |
+
#: ../includes/event-organiser-cpt.php:146
|
173 |
+
msgid "All events"
|
174 |
+
msgstr "Semua Agenda"
|
175 |
+
|
176 |
+
#: ../includes/event-organiser-cpt.php:95
|
177 |
+
msgid "All Tags"
|
178 |
+
msgstr "Semua Kata-kata Kunci"
|
179 |
+
|
180 |
+
#: ../includes/event-organiser-cpt.php:31
|
181 |
+
msgid "All Venues"
|
182 |
+
msgstr "Semua Tempat/Lokasi"
|
183 |
+
|
184 |
+
#: ../templates/taxonomy-event-category.php:120
|
185 |
+
msgid "Apologies, but no events were found for the requested category. "
|
186 |
+
msgstr ""
|
187 |
+
|
188 |
+
#: ../templates/taxonomy-event-tag.php:120
|
189 |
+
msgid "Apologies, but no events were found for the requested tag. "
|
190 |
+
msgstr ""
|
191 |
+
|
192 |
+
#: ../templates/taxonomy-event-venue.php:118
|
193 |
+
msgid "Apologies, but no events were found for the requested venue. "
|
194 |
+
msgstr ""
|
195 |
+
|
196 |
+
#: ../templates/archive-event.php:123
|
197 |
+
msgid "Apologies, but no results were found for the requested archive. "
|
198 |
+
msgstr ""
|
199 |
+
|
200 |
+
#: ../event-organiser-settings.php:168
|
201 |
+
msgid "Are current events past?"
|
202 |
+
msgstr ""
|
203 |
+
|
204 |
+
#: ../classes/class-eo-event-list-widget.php:61
|
205 |
+
msgid "ASC"
|
206 |
+
msgstr ""
|
207 |
+
|
208 |
+
#: ../includes/event-organiser-cpt.php:616
|
209 |
+
msgid "Assign the category a colour."
|
210 |
+
msgstr ""
|
211 |
+
|
212 |
+
#: ../event-organiser-settings.php:112
|
213 |
+
msgid "Author"
|
214 |
+
msgstr ""
|
215 |
+
|
216 |
+
#: ../event-organiser-debug.php:76
|
217 |
+
msgid "Below any <strong>known</strong> plug-in and theme conflicts are highlighted "
|
218 |
+
"in red."
|
219 |
+
msgstr ""
|
220 |
+
|
221 |
+
#: ../includes/event-organiser-ajax.php:347
|
222 |
+
msgid "Break this series"
|
223 |
+
msgstr ""
|
224 |
+
|
225 |
+
#: ../event-organiser-go-pro.php:56
|
226 |
+
msgid "But that's not all …"
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: ../includes/event-organiser-cpt.php:479
|
230 |
+
msgid "By clicking the relevant tab, you can view events in Month, Week or Day "
|
231 |
+
"mode. You can also filter the events by events by category and venue. The "
|
232 |
+
"'go to date' button allows you to quickly jump to a specific date."
|
233 |
+
msgstr ""
|
234 |
+
|
235 |
+
#: ../event-organiser-calendar.php:203
|
236 |
+
msgid "Calendar options"
|
237 |
+
msgstr ""
|
238 |
+
|
239 |
+
#: ../event-organiser-calendar.php:22
|
240 |
+
#: ../event-organiser-calendar.php:23
|
241 |
+
msgid "Calendar View"
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: ../event-organiser-edit.php:239
|
245 |
+
#: ../event-organiser-calendar.php:282
|
246 |
+
#: ../event-organiser-calendar.php:289
|
247 |
+
msgid "Cancel"
|
248 |
+
msgstr ""
|
249 |
+
|
250 |
+
#: ../event-organiser-manage.php:26
|
251 |
+
msgid "Categories"
|
252 |
+
msgstr ""
|
253 |
+
|
254 |
+
#: ../event-organiser-settings.php:235
|
255 |
+
msgid "Check this option to prevent any stylesheets from Event Organiser being "
|
256 |
+
"loaded on the front-end"
|
257 |
+
msgstr ""
|
258 |
+
|
259 |
+
#: ../event-organiser-edit.php:76
|
260 |
+
msgid "Check to edit this event and its reoccurrences"
|
261 |
+
msgstr ""
|
262 |
+
|
263 |
+
#: ../event-organiser-settings.php:600
|
264 |
+
msgid "Choose a custom permalink structure for events, venues, event categories and "
|
265 |
+
"event tags."
|
266 |
+
msgstr ""
|
267 |
+
|
268 |
+
#: ../includes/event-organiser-cpt.php:104
|
269 |
+
msgid "Choose from the most used tags"
|
270 |
+
msgstr "Pilih kata-kata kunci yang sering digunakan"
|
271 |
+
|
272 |
+
#: ../includes/event-organiser-cpt.php:437
|
273 |
+
msgid "Choose the reoccurrence end date. No further occurrences are added after "
|
274 |
+
"this date, but an occurrence that starts before may finish after this date."
|
275 |
+
msgstr ""
|
276 |
+
|
277 |
+
#: ../includes/event-organiser-venue-functions.php:883
|
278 |
+
msgid "City"
|
279 |
+
msgstr "Kota"
|
280 |
+
|
281 |
+
#: ../includes/event-organiser-cpt.php:610
|
282 |
+
#: ../includes/event-organiser-cpt.php:633
|
283 |
+
msgid "Color"
|
284 |
+
msgstr ""
|
285 |
+
|
286 |
+
#: ../event-organiser-settings.php:116
|
287 |
+
msgid "Comments"
|
288 |
+
msgstr ""
|
289 |
+
|
290 |
+
#: ../includes/event-organiser-venue-functions.php:886
|
291 |
+
msgid "Country"
|
292 |
+
msgstr "Negara"
|
293 |
+
|
294 |
+
#: ../event-organiser-calendar.php:244
|
295 |
+
msgid "Create an event"
|
296 |
+
msgstr ""
|
297 |
+
|
298 |
+
#: ../includes/event-organiser-cpt.php:423
|
299 |
+
msgid "Creating events"
|
300 |
+
msgstr ""
|
301 |
+
|
302 |
+
#: ../includes/event-organiser-cpt.php:424
|
303 |
+
msgid "Creating events:"
|
304 |
+
msgstr ""
|
305 |
+
|
306 |
+
#: ../event-organiser-calendar.php:239
|
307 |
+
msgid "Current date/time"
|
308 |
+
msgstr ""
|
309 |
+
|
310 |
+
#: ../event-organiser-edit.php:127
|
311 |
+
msgid "custom"
|
312 |
+
msgstr ""
|
313 |
+
|
314 |
+
#: ../includes/event-organiser-cpt.php:219
|
315 |
+
msgid "Custom field deleted."
|
316 |
+
msgstr ""
|
317 |
+
|
318 |
+
#: ../includes/event-organiser-cpt.php:218
|
319 |
+
msgid "Custom field updated."
|
320 |
+
msgstr ""
|
321 |
+
|
322 |
+
#: ../event-organiser-settings.php:115
|
323 |
+
msgid "Custom Fields"
|
324 |
+
msgstr ""
|
325 |
+
|
326 |
+
#: ../includes/event-organiser-event-functions.php:706
|
327 |
+
msgid "custom reoccurrence"
|
328 |
+
msgstr ""
|
329 |
+
|
330 |
+
#: ../event-organiser-edit.php:126
|
331 |
+
msgid "daily"
|
332 |
+
msgstr ""
|
333 |
+
|
334 |
+
#: ../event-organiser-debug.php:533
|
335 |
+
msgid "Database character set"
|
336 |
+
msgstr ""
|
337 |
+
|
338 |
+
#: ../event-organiser-debug.php:532
|
339 |
+
msgid "Database tables"
|
340 |
+
msgstr ""
|
341 |
+
|
342 |
+
#: ../event-organiser-debug.php:531
|
343 |
+
msgid "Databse Prefix"
|
344 |
+
msgstr ""
|
345 |
+
|
346 |
+
#: ../event-organiser-settings.php:137
|
347 |
+
msgid "Date Format:"
|
348 |
+
msgstr ""
|
349 |
+
|
350 |
+
#: ../event-organiser-calendar.php:229
|
351 |
+
msgid "Day"
|
352 |
+
msgstr ""
|
353 |
+
|
354 |
+
#: ../event-organiser-calendar.php:55
|
355 |
+
msgid "day"
|
356 |
+
msgstr ""
|
357 |
+
|
358 |
+
#: ../event-organiser-settings.php:271
|
359 |
+
msgid "Day archive"
|
360 |
+
msgstr ""
|
361 |
+
|
362 |
+
#: ../event-organiser-edit.php:161
|
363 |
+
msgid "day of month"
|
364 |
+
msgstr ""
|
365 |
+
|
366 |
+
#: ../event-organiser-edit.php:165
|
367 |
+
msgid "day of week"
|
368 |
+
msgstr ""
|
369 |
+
|
370 |
+
#: ../includes/event-organiser-register.php:218
|
371 |
+
msgid "days"
|
372 |
+
msgstr ""
|
373 |
+
|
374 |
+
#: ../event-organiser-settings.php:143
|
375 |
+
msgid "dd-mm-yyyy"
|
376 |
+
msgstr ""
|
377 |
+
|
378 |
+
#: ../event-organiser-debug.php:555
|
379 |
+
msgid "Debug mode"
|
380 |
+
msgstr ""
|
381 |
+
|
382 |
+
#: ../includes/event-organiser-cpt.php:492
|
383 |
+
msgid "Debugging Event Organiser"
|
384 |
+
msgstr ""
|
385 |
+
|
386 |
+
#: ../classes/class-eo-venue-list-table.php:70
|
387 |
+
#: ../classes/class-eo-venue-list-table.php:127
|
388 |
+
msgid "Delete"
|
389 |
+
msgstr ""
|
390 |
+
|
391 |
+
#: ../event-organiser-settings.php:36
|
392 |
+
#: ../event-organiser.php:103
|
393 |
+
msgid "Delete Events"
|
394 |
+
msgstr ""
|
395 |
+
|
396 |
+
#: ../event-organiser-settings.php:180
|
397 |
+
msgid "Delete expired events:"
|
398 |
+
msgstr ""
|
399 |
+
|
400 |
+
#: ../event-organiser-settings.php:38
|
401 |
+
#: ../event-organiser.php:105
|
402 |
+
msgid "Delete Other's Events"
|
403 |
+
msgstr ""
|
404 |
+
|
405 |
+
#: ../includes/event-organiser-ajax.php:333
|
406 |
+
msgid "Delete this occurrence"
|
407 |
+
msgstr ""
|
408 |
+
|
409 |
+
#: ../includes/event-organiser-cpt.php:468
|
410 |
+
msgid "Delete will permanently remove the venue"
|
411 |
+
msgstr ""
|
412 |
+
|
413 |
+
#: ../classes/class-eo-event-list-widget.php:62
|
414 |
+
msgid "DESC"
|
415 |
+
msgstr ""
|
416 |
+
|
417 |
+
#: ../event-organiser-settings.php:229
|
418 |
+
msgid "Disable CSS:"
|
419 |
+
msgstr ""
|
420 |
+
|
421 |
+
#: ../includes/event-organiser-register.php:648
|
422 |
+
msgid "Dismiss"
|
423 |
+
msgstr ""
|
424 |
+
|
425 |
+
#: ../includes/event-organiser-register.php:647
|
426 |
+
msgid "Dismiss this notice"
|
427 |
+
msgstr ""
|
428 |
+
|
429 |
+
#: ../classes/class-eo-widget-categories.php:96
|
430 |
+
msgid "Display as dropdown"
|
431 |
+
msgstr ""
|
432 |
+
|
433 |
+
#: ../event-organiser-settings.php:129
|
434 |
+
#: ../event-organiser-settings.php:156
|
435 |
+
msgid "Display past events on calendars, event lists and archives (this can be "
|
436 |
+
"over-ridden by shortcode attributes and widget options)."
|
437 |
+
msgstr ""
|
438 |
+
|
439 |
+
#: ../classes/class-eo-calendar-widget.php:22
|
440 |
+
msgid "Displays a calendar of your events"
|
441 |
+
msgstr ""
|
442 |
+
|
443 |
+
#: ../classes/class-eo-event-list-widget.php:22
|
444 |
+
msgid "Displays a list of events"
|
445 |
+
msgstr ""
|
446 |
+
|
447 |
+
#: ../classes/class-eo-agenda-widget.php:11
|
448 |
+
msgid "Displays a list of events, grouped by date"
|
449 |
+
msgstr ""
|
450 |
+
|
451 |
+
#: ../event-organiser-settings.php:626
|
452 |
+
msgid "Do not add to menu"
|
453 |
+
msgstr ""
|
454 |
+
|
455 |
+
#: ../includes/class-event-organiser-im-export.php:104
|
456 |
+
msgid "Download Export File"
|
457 |
+
msgstr ""
|
458 |
+
|
459 |
+
#: ../event-organiser-debug.php:84
|
460 |
+
msgid "Download system information file"
|
461 |
+
msgstr ""
|
462 |
+
|
463 |
+
#: ../includes/event-organiser-ajax.php:255
|
464 |
+
msgid "Draft"
|
465 |
+
msgstr ""
|
466 |
+
|
467 |
+
#: ../templates/single-event.php:71
|
468 |
+
msgid "Edit"
|
469 |
+
msgstr ""
|
470 |
+
|
471 |
+
#: ../includes/event-organiser-cpt.php:66
|
472 |
+
msgid "Edit Category"
|
473 |
+
msgstr "Sunting Kategori"
|
474 |
+
|
475 |
+
#: ../includes/event-organiser-ajax.php:314
|
476 |
+
#: ../includes/event-organiser-cpt.php:144
|
477 |
+
msgid "Edit Event"
|
478 |
+
msgstr ""
|
479 |
+
|
480 |
+
#: ../event-organiser-settings.php:34
|
481 |
+
#: ../event-organiser.php:101
|
482 |
+
msgid "Edit Events"
|
483 |
+
msgstr ""
|
484 |
+
|
485 |
+
#: ../event-organiser-settings.php:37
|
486 |
+
#: ../event-organiser.php:104
|
487 |
+
msgid "Edit Others' Events"
|
488 |
+
msgstr ""
|
489 |
+
|
490 |
+
#: ../includes/event-organiser-cpt.php:99
|
491 |
+
msgid "Edit Tag"
|
492 |
+
msgstr "Sunting Kata Kunci"
|
493 |
+
|
494 |
+
#: ../includes/event-organiser-cpt.php:467
|
495 |
+
msgid "Edit takes you to the editing screen for that venue. You can also reach that "
|
496 |
+
"screen by clicking on the venue title."
|
497 |
+
msgstr ""
|
498 |
+
|
499 |
+
#: ../event-organiser-venues.php:267
|
500 |
+
msgid "Edit Venue"
|
501 |
+
msgstr ""
|
502 |
+
|
503 |
+
#: ../event-organiser-settings.php:244
|
504 |
+
msgid "Enable event pretty permalinks:"
|
505 |
+
msgstr ""
|
506 |
+
|
507 |
+
#: ../event-organiser-settings.php:189
|
508 |
+
msgid "Enable events ICAL feed:"
|
509 |
+
msgstr ""
|
510 |
+
|
511 |
+
#: ../event-organiser-settings.php:206
|
512 |
+
msgid "Enable templates:"
|
513 |
+
msgstr ""
|
514 |
+
|
515 |
+
#: ../includes/event-organiser-ajax.php:283
|
516 |
+
msgid "End"
|
517 |
+
msgstr ""
|
518 |
+
|
519 |
+
#: ../event-organiser-edit.php:105
|
520 |
+
#: ../event-organiser-manage.php:28
|
521 |
+
msgid "End Date/Time"
|
522 |
+
msgstr ""
|
523 |
+
|
524 |
+
#: ../event-organiser-edit.php:88
|
525 |
+
msgid "Ensure dates are entered in %1$s format and times in %2$s (24 hour) format"
|
526 |
+
msgstr ""
|
527 |
+
|
528 |
+
#: ../event-organiser-manage.php:19
|
529 |
+
msgid "Event"
|
530 |
+
msgstr ""
|
531 |
+
|
532 |
+
#: ../event-organiser-settings.php:263
|
533 |
+
msgid "Event (archive)"
|
534 |
+
msgstr ""
|
535 |
+
|
536 |
+
#: ../event-organiser-settings.php:254
|
537 |
+
msgid "Event (single)"
|
538 |
+
msgstr ""
|
539 |
+
|
540 |
+
#: ../event-organiser-settings.php:282
|
541 |
+
msgid "Event Categories"
|
542 |
+
msgstr ""
|
543 |
+
|
544 |
+
#: ../classes/class-eo-event-list-widget.php:39
|
545 |
+
#: ../classes/class-eo-calendar-widget.php:77
|
546 |
+
msgid "Event categories"
|
547 |
+
msgstr ""
|
548 |
+
|
549 |
+
#: ../templates/taxonomy-event-category.php:31
|
550 |
+
msgid "Event Category Archives: %s"
|
551 |
+
msgstr ""
|
552 |
+
|
553 |
+
#: ../classes/class-eo-agenda-widget.php:43
|
554 |
+
msgid "Event date/time format"
|
555 |
+
msgstr ""
|
556 |
+
|
557 |
+
#: ../event-organiser-edit.php:376
|
558 |
+
msgid "Event dates were not saved."
|
559 |
+
msgstr ""
|
560 |
+
|
561 |
+
#: ../event-organiser-calendar.php:310
|
562 |
+
msgid "Event Detail"
|
563 |
+
msgstr ""
|
564 |
+
|
565 |
+
#: ../event-organiser-edit.php:14
|
566 |
+
#: ../event-organiser-calendar.php:308
|
567 |
+
msgid "Event Details"
|
568 |
+
msgstr ""
|
569 |
+
|
570 |
+
#: ../includes/event-organiser-cpt.php:229
|
571 |
+
msgid "Event draft updated. <a target=\"_blank\" href=\"%s\">Preview event</a>"
|
572 |
+
msgstr ""
|
573 |
+
|
574 |
+
#: ../classes/class-eo-event-list-widget.php:78
|
575 |
+
msgid "Event list widget placeholders"
|
576 |
+
msgstr ""
|
577 |
+
|
578 |
+
#: ../event-organiser-settings.php:29
|
579 |
+
msgid "Event Organiser"
|
580 |
+
msgstr ""
|
581 |
+
|
582 |
+
#: ../event-organiser-add-ons.php:19
|
583 |
+
#: ../event-organiser-add-ons.php:95
|
584 |
+
msgid "Event Organiser Extensions"
|
585 |
+
msgstr ""
|
586 |
+
|
587 |
+
#: ../event-organiser-add-ons.php:99
|
588 |
+
msgid "Event Organiser offers a range of extension which add additional features to "
|
589 |
+
"the plug-in."
|
590 |
+
msgstr ""
|
591 |
+
|
592 |
+
#: ../event-organiser-go-pro.php:55
|
593 |
+
msgid "Event Organiser Pro is a premium add-on bringing advanced booking management "
|
594 |
+
"to Event Organiser."
|
595 |
+
msgstr ""
|
596 |
+
|
597 |
+
#: ../event-organiser-settings.php:28
|
598 |
+
msgid "Event Organiser Settings"
|
599 |
+
msgstr ""
|
600 |
+
|
601 |
+
#: ../event-organiser-settings.php:219
|
602 |
+
msgid "Event page:"
|
603 |
+
msgstr ""
|
604 |
+
|
605 |
+
#: ../includes/event-organiser-cpt.php:223
|
606 |
+
msgid "Event published. <a href=\"%s\">View event</a>"
|
607 |
+
msgstr ""
|
608 |
+
|
609 |
+
#: ../includes/event-organiser-cpt.php:222
|
610 |
+
msgid "Event restored to revision from %s"
|
611 |
+
msgstr ""
|
612 |
+
|
613 |
+
#: ../includes/event-organiser-cpt.php:224
|
614 |
+
msgid "Event saved."
|
615 |
+
msgstr ""
|
616 |
+
|
617 |
+
#: ../includes/event-organiser-cpt.php:226
|
618 |
+
msgid "Event scheduled for: <strong>%1$s</strong>. <a target=\"_blank\" "
|
619 |
+
"href=\"%2$s\">Preview event</a>"
|
620 |
+
msgstr ""
|
621 |
+
|
622 |
+
#: ../includes/event-organiser-cpt.php:225
|
623 |
+
msgid "Event submitted. <a target=\"_blank\" href=\"%s\">Preview event</a>"
|
624 |
+
msgstr ""
|
625 |
+
|
626 |
+
#: ../templates/taxonomy-event-tag.php:31
|
627 |
+
msgid "Event Tag Archives: %s"
|
628 |
+
msgstr ""
|
629 |
+
|
630 |
+
#: ../event-organiser-settings.php:118
|
631 |
+
#: ../event-organiser-settings.php:290
|
632 |
+
msgid "Event Tags"
|
633 |
+
msgstr ""
|
634 |
+
|
635 |
+
#: ../event-organiser-calendar.php:253
|
636 |
+
msgid "Event Title"
|
637 |
+
msgstr ""
|
638 |
+
|
639 |
+
#: ../includes/event-organiser-cpt.php:220
|
640 |
+
msgid "Event updated."
|
641 |
+
msgstr ""
|
642 |
+
|
643 |
+
#: ../includes/event-organiser-cpt.php:217
|
644 |
+
msgid "Event updated. <a href=\"%s\">View event</a>"
|
645 |
+
msgstr ""
|
646 |
+
|
647 |
+
#: ../classes/class-eo-calendar-widget.php:88
|
648 |
+
msgid "Event venue"
|
649 |
+
msgstr ""
|
650 |
+
|
651 |
+
#: ../includes/event-organiser-cpt.php:28
|
652 |
+
msgid "Event Venues"
|
653 |
+
msgstr "Tempat/Lokasi Agenda"
|
654 |
+
|
655 |
+
#: ../event-organiser.php:127
|
656 |
+
#: ../event-organiser-venues.php:432
|
657 |
+
#: ../templates/archive-event.php:42
|
658 |
+
msgid "Events"
|
659 |
+
msgstr ""
|
660 |
+
|
661 |
+
#: ../classes/class-eo-agenda-widget.php:19
|
662 |
+
msgid "Events Agenda"
|
663 |
+
msgstr ""
|
664 |
+
|
665 |
+
#: ../event-organiser-settings.php:218
|
666 |
+
msgid "Events archives:"
|
667 |
+
msgstr ""
|
668 |
+
|
669 |
+
#: ../templates/taxonomy-event-venue.php:31
|
670 |
+
msgid "Events at: %s"
|
671 |
+
msgstr ""
|
672 |
+
|
673 |
+
#: ../event-organiser-calendar.php:225
|
674 |
+
msgid "Events Calendar"
|
675 |
+
msgstr ""
|
676 |
+
|
677 |
+
#: ../event-organiser-settings.php:221
|
678 |
+
msgid "Events Category page:"
|
679 |
+
msgstr ""
|
680 |
+
|
681 |
+
#: ../event-organiser-manage.php:148
|
682 |
+
msgid "Events within %d months"
|
683 |
+
msgstr ""
|
684 |
+
|
685 |
+
#: ../event-organiser-manage.php:146
|
686 |
+
msgid "Events within %d weeks"
|
687 |
+
msgstr ""
|
688 |
+
|
689 |
+
#: ../event-organiser-manage.php:147
|
690 |
+
msgid "Events within 1 month"
|
691 |
+
msgstr ""
|
692 |
+
|
693 |
+
#: ../event-organiser-manage.php:145
|
694 |
+
msgid "Events within 1 week"
|
695 |
+
msgstr ""
|
696 |
+
|
697 |
+
#: ../event-organiser-manage.php:149
|
698 |
+
msgid "Events within 1 year"
|
699 |
+
msgstr ""
|
700 |
+
|
701 |
+
#: ../event-organiser-manage.php:144
|
702 |
+
msgid "Events within 24 hours"
|
703 |
+
msgstr ""
|
704 |
+
|
705 |
+
#: ../templates/archive-event.php:34
|
706 |
+
#: ../templates/archive-event.php:37
|
707 |
+
#: ../templates/archive-event.php:40
|
708 |
+
msgid "Events: "
|
709 |
+
msgstr ""
|
710 |
+
|
711 |
+
#: ../includes/event-organiser-register.php:226
|
712 |
+
#: ../includes/event-organiser-event-functions.php:715
|
713 |
+
msgid "every %d days"
|
714 |
+
msgstr ""
|
715 |
+
|
716 |
+
#: ../includes/event-organiser-register.php:230
|
717 |
+
#: ../includes/event-organiser-event-functions.php:736
|
718 |
+
msgid "every %d months on the"
|
719 |
+
msgstr ""
|
720 |
+
|
721 |
+
#: ../includes/event-organiser-register.php:228
|
722 |
+
#: ../includes/event-organiser-event-functions.php:723
|
723 |
+
msgid "every %d weeks on"
|
724 |
+
msgstr ""
|
725 |
+
|
726 |
+
#: ../includes/event-organiser-event-functions.php:767
|
727 |
+
msgid "every %d years"
|
728 |
+
msgstr "tiap %d tahun"
|
729 |
+
|
730 |
+
#: ../includes/event-organiser-register.php:232
|
731 |
+
msgid "every %d years on the"
|
732 |
+
msgstr ""
|
733 |
+
|
734 |
+
#: ../includes/event-organiser-register.php:225
|
735 |
+
#: ../includes/event-organiser-event-functions.php:713
|
736 |
+
msgid "every day"
|
737 |
+
msgstr ""
|
738 |
+
|
739 |
+
#: ../includes/event-organiser-register.php:229
|
740 |
+
#: ../includes/event-organiser-event-functions.php:734
|
741 |
+
msgid "every month on the"
|
742 |
+
msgstr ""
|
743 |
+
|
744 |
+
#: ../includes/event-organiser-register.php:227
|
745 |
+
#: ../includes/event-organiser-event-functions.php:721
|
746 |
+
msgid "every week on"
|
747 |
+
msgstr ""
|
748 |
+
|
749 |
+
#: ../includes/event-organiser-event-functions.php:765
|
750 |
+
msgid "every year"
|
751 |
+
msgstr "tiap tahun"
|
752 |
+
|
753 |
+
#: ../includes/event-organiser-register.php:231
|
754 |
+
msgid "every year on the"
|
755 |
+
msgstr ""
|
756 |
+
|
757 |
+
#: ../event-organiser-settings.php:114
|
758 |
+
msgid "Excerpt"
|
759 |
+
msgstr ""
|
760 |
+
|
761 |
+
#: ../event-organiser-settings.php:198
|
762 |
+
msgid "Exclude events from searches:"
|
763 |
+
msgstr ""
|
764 |
+
|
765 |
+
#: ../event-organiser-manage.php:143
|
766 |
+
msgid "Expired events"
|
767 |
+
msgstr ""
|
768 |
+
|
769 |
+
#: ../event-organiser-settings.php:21
|
770 |
+
msgid "Export"
|
771 |
+
msgstr ""
|
772 |
+
|
773 |
+
#: ../includes/class-event-organiser-im-export.php:98
|
774 |
+
msgid "Export Events"
|
775 |
+
msgstr ""
|
776 |
+
|
777 |
+
#: ../event-organiser-add-ons.php:20
|
778 |
+
msgid "Extensions"
|
779 |
+
msgstr ""
|
780 |
+
|
781 |
+
#: ../includes/class-event-organiser-im-export.php:68
|
782 |
+
msgid "File Error encountered: %d"
|
783 |
+
msgstr ""
|
784 |
+
|
785 |
+
#: ../includes/class-event-organiser-im-export.php:80
|
786 |
+
msgid "File size: %s. File type: %s"
|
787 |
+
msgstr ""
|
788 |
+
|
789 |
+
#: ../event-organiser-go-pro.php:90
|
790 |
+
#: ../event-organiser-add-ons.php:130
|
791 |
+
msgid "Find out more …"
|
792 |
+
msgstr ""
|
793 |
+
|
794 |
+
#: ../includes/event-organiser-register.php:235
|
795 |
+
#: ../includes/event-organiser-event-functions.php:693
|
796 |
+
msgid "first"
|
797 |
+
msgstr ""
|
798 |
+
|
799 |
+
#: ../event-organiser-go-pro.php:71
|
800 |
+
msgid "Flexible Booking Options"
|
801 |
+
msgstr ""
|
802 |
+
|
803 |
+
#: ../event-organiser-settings.php:212
|
804 |
+
msgid "For each of the pages, the corresponding template is used. To use your own "
|
805 |
+
"template simply give it the same name and store in your theme folder. By "
|
806 |
+
"default, if Event Organiser cannot find a template in your theme directory, "
|
807 |
+
"it will use its own default template. To prevent this, uncheck this option. "
|
808 |
+
"WordPress will then decide which template from your theme's folder to use."
|
809 |
+
msgstr ""
|
810 |
+
|
811 |
+
#: ../includes/event-organiser-cpt.php:490
|
812 |
+
msgid "For more information"
|
813 |
+
msgstr ""
|
814 |
+
|
815 |
+
#: ../event-organiser-settings.php:224
|
816 |
+
msgid "For more information see documentation <a href='%s'>on editing the "
|
817 |
+
"templates</a>"
|
818 |
+
msgstr ""
|
819 |
+
|
820 |
+
#: ../includes/event-organiser-register.php:235
|
821 |
+
#: ../includes/event-organiser-event-functions.php:693
|
822 |
+
msgid "fourth"
|
823 |
+
msgstr ""
|
824 |
+
|
825 |
+
#: ../event-organiser-manage.php:142
|
826 |
+
msgid "Future events"
|
827 |
+
msgstr ""
|
828 |
+
|
829 |
+
#: ../event-organiser-settings.php:18
|
830 |
+
#: ../event-organiser-settings.php:58
|
831 |
+
msgid "General"
|
832 |
+
msgstr ""
|
833 |
+
|
834 |
+
#: ../event-organiser-go-pro.php:52
|
835 |
+
msgid "Get Event Organiser Pro"
|
836 |
+
msgstr ""
|
837 |
+
|
838 |
+
#: ../event-organiser-go-pro.php:24
|
839 |
+
msgid "Get Event Organiser Pro Add-On"
|
840 |
+
msgstr ""
|
841 |
+
|
842 |
+
#: ../event-organiser-venues.php:412
|
843 |
+
msgid "Get Link"
|
844 |
+
msgstr ""
|
845 |
+
|
846 |
+
#: ../event-organiser-go-pro.php:77
|
847 |
+
msgid "Give your users the ability to search and filter through your events with "
|
848 |
+
"the event search shortcode. Event Organiser Pro also adds a text editor "
|
849 |
+
"button to make inserting and configuring your shortcodes that bit easier. "
|
850 |
+
msgstr ""
|
851 |
+
|
852 |
+
#: ../event-organiser-go-pro.php:25
|
853 |
+
msgid "Go Pro"
|
854 |
+
msgstr ""
|
855 |
+
|
856 |
+
#: ../includes/event-organiser-cpt.php:493
|
857 |
+
msgid "Go Pro!"
|
858 |
+
msgstr ""
|
859 |
+
|
860 |
+
#: ../event-organiser-calendar.php:58
|
861 |
+
msgid "go to date"
|
862 |
+
msgstr ""
|
863 |
+
|
864 |
+
#: ../event-organiser-go-pro.php:96
|
865 |
+
msgid "Go to Event Organiser settings"
|
866 |
+
msgstr ""
|
867 |
+
|
868 |
+
#: ../classes/class-eo-agenda-widget.php:31
|
869 |
+
msgid "Group by"
|
870 |
+
msgstr ""
|
871 |
+
|
872 |
+
#: ../classes/class-eo-agenda-widget.php:39
|
873 |
+
msgid "Group date format"
|
874 |
+
msgstr ""
|
875 |
+
|
876 |
+
#: ../event-organiser-settings.php:159
|
877 |
+
msgid "Group occurrences"
|
878 |
+
msgstr ""
|
879 |
+
|
880 |
+
#: ../includes/event-organiser-register.php:212
|
881 |
+
msgid "Hide dates"
|
882 |
+
msgstr "Sembunyikan tanggal"
|
883 |
+
|
884 |
+
#: ../includes/event-organiser-register.php:215
|
885 |
+
msgid "Hour"
|
886 |
+
msgstr "Jam"
|
887 |
+
|
888 |
+
#: ../includes/event-organiser-cpt.php:465
|
889 |
+
msgid "Hovering over a row in the venues list will display action links that allow "
|
890 |
+
"you to manage that venue. You can perform the following actions:"
|
891 |
+
msgstr ""
|
892 |
+
|
893 |
+
#: ../event-organiser-settings.php:177
|
894 |
+
msgid "If 'no' is selected, an occurrence of an event is only past when it has "
|
895 |
+
"finished. Otherwise, an occurrence is considered 'past' as soon as it "
|
896 |
+
"starts."
|
897 |
+
msgstr ""
|
898 |
+
|
899 |
+
#: ../includes/event-organiser-cpt.php:438
|
900 |
+
msgid "If monthly reoccurrence is selected, select whether this should repeat on "
|
901 |
+
"that date of the month (e.g. on the 24th) or on the day of the month (e.g. "
|
902 |
+
"on the third Tuesday) "
|
903 |
+
msgstr ""
|
904 |
+
|
905 |
+
#: ../event-organiser-settings.php:165
|
906 |
+
msgid "If selected only one occurrence of an event will be displayed on event lists "
|
907 |
+
"and archives (this can be over-ridden by shortcode attributes and widget "
|
908 |
+
"options."
|
909 |
+
msgstr ""
|
910 |
+
|
911 |
+
#: ../event-organiser-settings.php:186
|
912 |
+
msgid "If selected the event will be automatically trashed 24 hours after the last "
|
913 |
+
"occurrence finishes."
|
914 |
+
msgstr ""
|
915 |
+
|
916 |
+
#: ../event-organiser-settings.php:195
|
917 |
+
msgid "If selected, visitors can subscribe to your events with the url: %s"
|
918 |
+
msgstr ""
|
919 |
+
|
920 |
+
#: ../includes/event-organiser-cpt.php:439
|
921 |
+
msgid "If weekly reoccurrence is selected, select which days of the week the event "
|
922 |
+
"should be repeated. If no days are selected, the day of the start date is "
|
923 |
+
"used"
|
924 |
+
msgstr ""
|
925 |
+
|
926 |
+
#: ../event-organiser-settings.php:250
|
927 |
+
msgid "If you have pretty permalinks enabled, select to have pretty premalinks for "
|
928 |
+
"events."
|
929 |
+
msgstr ""
|
930 |
+
|
931 |
+
#: ../event-organiser-settings.php:21
|
932 |
+
msgid "Import"
|
933 |
+
msgstr ""
|
934 |
+
|
935 |
+
#: ../includes/class-event-organiser-im-export.php:110
|
936 |
+
msgid "Import an ICS file."
|
937 |
+
msgstr ""
|
938 |
+
|
939 |
+
#: ../includes/class-event-organiser-im-export.php:112
|
940 |
+
msgid "Import categories"
|
941 |
+
msgstr ""
|
942 |
+
|
943 |
+
#: ../includes/class-event-organiser-im-export.php:107
|
944 |
+
msgid "Import Events"
|
945 |
+
msgstr ""
|
946 |
+
|
947 |
+
#: ../includes/class-event-organiser-im-export.php:111
|
948 |
+
msgid "Import venues"
|
949 |
+
msgstr ""
|
950 |
+
|
951 |
+
#: ../classes/class-eo-agenda-widget.php:47
|
952 |
+
msgid "Include 'Add To Google' link"
|
953 |
+
msgstr ""
|
954 |
+
|
955 |
+
#: ../classes/class-eo-event-list-widget.php:66
|
956 |
+
#: ../classes/class-eo-calendar-widget.php:46
|
957 |
+
msgid "Include past events"
|
958 |
+
msgstr ""
|
959 |
+
|
960 |
+
#: ../event-organiser-edit.php:180
|
961 |
+
msgid "Include/Exclude occurrences"
|
962 |
+
msgstr ""
|
963 |
+
|
964 |
+
#: ../includes/class-event-organiser-im-export.php:586
|
965 |
+
#: ../includes/class-eo-ical-parser.php:449
|
966 |
+
msgid "Invalid date. Date expected in YYYYMMDD format."
|
967 |
+
msgstr "Format tanggal salah, yang benar YYYYMMDD"
|
968 |
+
|
969 |
+
#: ../includes/class-event-organiser-im-export.php:618
|
970 |
+
#: ../includes/class-eo-ical-parser.php:482
|
971 |
+
msgid "Invalid datetime. Date expected in YYYYMMDDTHHiissZ or YYYYMMDDTHHiiss "
|
972 |
+
"format."
|
973 |
+
msgstr "Tanggal dan jam salah. Yang benar dengan format YYYYMMDDTHHiissZ or "
|
974 |
+
"YYYYMMDDTHHiiss"
|
975 |
+
|
976 |
+
#: ../includes/class-event-organiser-im-export.php:78
|
977 |
+
msgid "Invalid file uploaded. The file must be a ics calendar file of type "
|
978 |
+
"'text/calendar', no larger than 2MB."
|
979 |
+
msgstr ""
|
980 |
+
|
981 |
+
#: ../includes/event.php:548
|
982 |
+
msgid "Invalid monthly schedule (invalid ordinal)"
|
983 |
+
msgstr ""
|
984 |
+
|
985 |
+
#: ../event-organiser-debug.php:245
|
986 |
+
msgid "Known plug-in & theme conflicts, highlighted in red, may be minor or have a "
|
987 |
+
"simple resolution. Please contact support."
|
988 |
+
msgstr ""
|
989 |
+
|
990 |
+
#: ../includes/event-organiser-register.php:235
|
991 |
+
#: ../includes/event-organiser-event-functions.php:693
|
992 |
+
msgid "last"
|
993 |
+
msgstr ""
|
994 |
+
|
995 |
+
#: ../templates/taxonomy-event-category.php:48
|
996 |
+
#: ../templates/taxonomy-event-category.php:106
|
997 |
+
#: ../templates/archive-event.php:55
|
998 |
+
#: ../templates/archive-event.php:110
|
999 |
+
#: ../templates/taxonomy-event-tag.php:48
|
1000 |
+
#: ../templates/taxonomy-event-tag.php:106
|
1001 |
+
#: ../templates/taxonomy-event-venue.php:48
|
1002 |
+
#: ../templates/taxonomy-event-venue.php:105
|
1003 |
+
msgid "Later events <span class=\"meta-nav\">→</span>"
|
1004 |
+
msgstr ""
|
1005 |
+
|
1006 |
+
#: ../includes/class-event-organiser-im-export.php:275
|
1007 |
+
#: ../includes/class-event-organiser-im-export.php:301
|
1008 |
+
#: ../includes/class-eo-ical-parser.php:257
|
1009 |
+
msgid "Line: %1$d"
|
1010 |
+
msgstr ""
|
1011 |
+
|
1012 |
+
#: ../classes/class-eo-calendar-widget.php:66
|
1013 |
+
msgid "Link directly to event for days with only one event"
|
1014 |
+
msgstr ""
|
1015 |
+
|
1016 |
+
#: ../classes/class-eo-event-list-widget.php:41
|
1017 |
+
#: ../classes/class-eo-calendar-widget.php:80
|
1018 |
+
msgid "List category slug(s), seperate by comma. Leave blank for all"
|
1019 |
+
msgstr ""
|
1020 |
+
|
1021 |
+
#: ../event-organiser-calendar.php:232
|
1022 |
+
msgid "Loading…"
|
1023 |
+
msgstr ""
|
1024 |
+
|
1025 |
+
#: ../includes/event-organiser-cpt.php:228
|
1026 |
+
msgid "M j, Y @ G:i"
|
1027 |
+
msgstr ""
|
1028 |
+
|
1029 |
+
#: ../event-organiser-settings.php:41
|
1030 |
+
#: ../event-organiser.php:108
|
1031 |
+
msgid "Manage Event Categories & Tags"
|
1032 |
+
msgstr ""
|
1033 |
+
|
1034 |
+
#: ../event-organiser-settings.php:40
|
1035 |
+
#: ../event-organiser.php:107
|
1036 |
+
msgid "Manage Venues"
|
1037 |
+
msgstr ""
|
1038 |
+
|
1039 |
+
#: ../includes/event-organiser-register.php:216
|
1040 |
+
msgid "Minute"
|
1041 |
+
msgstr "Menit"
|
1042 |
+
|
1043 |
+
#: ../event-organiser-settings.php:144
|
1044 |
+
msgid "mm-dd-yyyy"
|
1045 |
+
msgstr ""
|
1046 |
+
|
1047 |
+
#: ../event-organiser-calendar.php:229
|
1048 |
+
msgid "Month"
|
1049 |
+
msgstr ""
|
1050 |
+
|
1051 |
+
#: ../event-organiser-calendar.php:57
|
1052 |
+
msgid "month"
|
1053 |
+
msgstr ""
|
1054 |
+
|
1055 |
+
#: ../event-organiser-settings.php:270
|
1056 |
+
msgid "Month archive"
|
1057 |
+
msgstr ""
|
1058 |
+
|
1059 |
+
#: ../event-organiser-edit.php:127
|
1060 |
+
msgid "monthly"
|
1061 |
+
msgstr ""
|
1062 |
+
|
1063 |
+
#: ../includes/event-organiser-register.php:222
|
1064 |
+
msgid "months"
|
1065 |
+
msgstr ""
|
1066 |
+
|
1067 |
+
#: ../event-organiser-debug.php:72
|
1068 |
+
msgid "Most bugs arise from theme or plug-in conflicts. You can check this by "
|
1069 |
+
"disabling all other plug-ins and switching to TwentyTweleve."
|
1070 |
+
msgstr ""
|
1071 |
+
|
1072 |
+
#: ../includes/event-organiser-cpt.php:69
|
1073 |
+
msgid "New Category Name"
|
1074 |
+
msgstr "Nama Kategori baru"
|
1075 |
+
|
1076 |
+
#: ../includes/event-organiser-cpt.php:145
|
1077 |
+
msgid "New Event"
|
1078 |
+
msgstr "Agenda Baru"
|
1079 |
+
|
1080 |
+
#: ../includes/event-organiser-cpt.php:102
|
1081 |
+
msgid "New Tag Name"
|
1082 |
+
msgstr "Kata Kunci Baru"
|
1083 |
+
|
1084 |
+
#: ../includes/event-organiser-cpt.php:36
|
1085 |
+
msgid "New Venue Name"
|
1086 |
+
msgstr "Tempat/Lokasi baru"
|
1087 |
+
|
1088 |
+
#: ../classes/class-eo-calendar-widget.php:260
|
1089 |
+
msgid "Next month"
|
1090 |
+
msgstr ""
|
1091 |
+
|
1092 |
+
#: ../event-organiser-debug.php:178
|
1093 |
+
#: ../event-organiser-debug.php:182
|
1094 |
+
#: ../event-organiser-debug.php:186
|
1095 |
+
#: ../event-organiser-settings.php:174
|
1096 |
+
msgid "No"
|
1097 |
+
msgstr ""
|
1098 |
+
|
1099 |
+
#: ../includes/event-organiser-cpt.php:70
|
1100 |
+
msgid "No categories found"
|
1101 |
+
msgstr "Kategori tidak ditemukan"
|
1102 |
+
|
1103 |
+
#: ../includes/event-organiser-cpt.php:149
|
1104 |
+
msgid "No events found"
|
1105 |
+
msgstr "Agenda tidak ditemukan"
|
1106 |
+
|
1107 |
+
#: ../includes/event-organiser-cpt.php:150
|
1108 |
+
msgid "No events found in Trash"
|
1109 |
+
msgstr ""
|
1110 |
+
|
1111 |
+
#: ../includes/class-event-organiser-im-export.php:316
|
1112 |
+
msgid "No events were imported."
|
1113 |
+
msgstr ""
|
1114 |
+
|
1115 |
+
#: ../includes/class-event-organiser-im-export.php:75
|
1116 |
+
msgid "No file detected."
|
1117 |
+
msgstr ""
|
1118 |
+
|
1119 |
+
#: ../includes/event-organiser-cpt.php:103
|
1120 |
+
msgid "No tags found"
|
1121 |
+
msgstr "Kata kunci tidak ditemukan"
|
1122 |
+
|
1123 |
+
#: ../includes/event-organiser-ajax.php:594
|
1124 |
+
msgid "No Venue"
|
1125 |
+
msgstr "Tidak ada tempat/lokasi"
|
1126 |
+
|
1127 |
+
#: ../includes/event-organiser-cpt.php:37
|
1128 |
+
msgid "No venues found"
|
1129 |
+
msgstr "Tempat/Lokasi tidak ditemukan"
|
1130 |
+
|
1131 |
+
#: ../event-organiser-settings.php:571
|
1132 |
+
msgid "None"
|
1133 |
+
msgstr ""
|
1134 |
+
|
1135 |
+
#: ../templates/taxonomy-event-category.php:116
|
1136 |
+
#: ../templates/archive-event.php:119
|
1137 |
+
#: ../templates/taxonomy-event-tag.php:116
|
1138 |
+
#: ../templates/taxonomy-event-venue.php:115
|
1139 |
+
msgid "Nothing Found"
|
1140 |
+
msgstr ""
|
1141 |
+
|
1142 |
+
#: ../classes/class-eo-event-list-widget.php:35
|
1143 |
+
msgid "Number of events"
|
1144 |
+
msgstr ""
|
1145 |
+
|
1146 |
+
#: ../event-organiser-calendar.php:191
|
1147 |
+
msgid "Occurrence deleted."
|
1148 |
+
msgstr ""
|
1149 |
+
|
1150 |
+
#: ../includes/event.php:744
|
1151 |
+
msgid "Occurrence not deleted. Occurrence not found."
|
1152 |
+
msgstr ""
|
1153 |
+
|
1154 |
+
#: ../event-organiser-edit.php:146
|
1155 |
+
#: ../templates/shortcode-event-list.php:52
|
1156 |
+
msgid "on"
|
1157 |
+
msgstr ""
|
1158 |
+
|
1159 |
+
#: ../event-organiser-edit.php:126
|
1160 |
+
msgid "once"
|
1161 |
+
msgstr ""
|
1162 |
+
|
1163 |
+
#: ../includes/event-organiser-event-functions.php:703
|
1164 |
+
msgid "one time only"
|
1165 |
+
msgstr "sekali waktu saja"
|
1166 |
+
|
1167 |
+
#: ../includes/event-organiser-cpt.php:448
|
1168 |
+
msgid "Only pre-existing venues can be selected. To add a venue, go to the venues "
|
1169 |
+
"page."
|
1170 |
+
msgstr ""
|
1171 |
+
|
1172 |
+
#: ../classes/class-eo-event-list-widget.php:55
|
1173 |
+
msgid "Order by"
|
1174 |
+
msgstr ""
|
1175 |
+
|
1176 |
+
#: ../event-organiser-settings.php:112
|
1177 |
+
#: ../event-organiser-edit.php:31
|
1178 |
+
#: ../event-organiser-manage.php:23
|
1179 |
+
msgid "Organiser"
|
1180 |
+
msgstr ""
|
1181 |
+
|
1182 |
+
#: ../includes/event-organiser-cpt.php:458
|
1183 |
+
#: ../includes/event-organiser-cpt.php:477
|
1184 |
+
msgid "Overview"
|
1185 |
+
msgstr ""
|
1186 |
+
|
1187 |
+
#: ../event-organiser-settings.php:630
|
1188 |
+
msgid "Page list (fallback)"
|
1189 |
+
msgstr ""
|
1190 |
+
|
1191 |
+
#: ../includes/event-organiser-cpt.php:64
|
1192 |
+
#: ../includes/event-organiser-cpt.php:65
|
1193 |
+
msgid "Parent Category"
|
1194 |
+
msgstr "Kategori Induk"
|
1195 |
+
|
1196 |
+
#: ../event-organiser-venues.php:405
|
1197 |
+
msgid "Permalink:"
|
1198 |
+
msgstr ""
|
1199 |
+
|
1200 |
+
#: ../event-organiser-settings.php:20
|
1201 |
+
msgid "Permalinks"
|
1202 |
+
msgstr ""
|
1203 |
+
|
1204 |
+
#: ../event-organiser-settings.php:19
|
1205 |
+
msgid "Permissions"
|
1206 |
+
msgstr ""
|
1207 |
+
|
1208 |
+
#: ../event-organiser-settings.php:601
|
1209 |
+
msgid "Please note to enable these structures you must first have pretty permalinks "
|
1210 |
+
"enabled on WordPress in Settings > Permalinks."
|
1211 |
+
msgstr ""
|
1212 |
+
|
1213 |
+
#: ../includes/event-organiser-cpt.php:96
|
1214 |
+
msgid "Popular Tags"
|
1215 |
+
msgstr "Kata-kata Kunci Populer"
|
1216 |
+
|
1217 |
+
#: ../includes/event-organiser-venue-functions.php:885
|
1218 |
+
msgid "Post Code"
|
1219 |
+
msgstr "Kode Pos"
|
1220 |
+
|
1221 |
+
#: ../classes/class-eo-calendar-widget.php:257
|
1222 |
+
msgid "Previous month"
|
1223 |
+
msgstr ""
|
1224 |
+
|
1225 |
+
#: ../includes/event-organiser-ajax.php:253
|
1226 |
+
msgid "Private"
|
1227 |
+
msgstr ""
|
1228 |
+
|
1229 |
+
#: ../includes/event-organiser-ajax.php:251
|
1230 |
+
msgid "Protected"
|
1231 |
+
msgstr ""
|
1232 |
+
|
1233 |
+
#: ../event-organiser-calendar.php:285
|
1234 |
+
msgid "Publish Event"
|
1235 |
+
msgstr ""
|
1236 |
+
|
1237 |
+
#: ../event-organiser-settings.php:35
|
1238 |
+
#: ../event-organiser.php:102
|
1239 |
+
msgid "Publish Events"
|
1240 |
+
msgstr ""
|
1241 |
+
|
1242 |
+
#: ../event-organiser-settings.php:39
|
1243 |
+
#: ../event-organiser.php:106
|
1244 |
+
msgid "Read Private Events"
|
1245 |
+
msgstr ""
|
1246 |
+
|
1247 |
+
#: ../event-organiser-edit.php:124
|
1248 |
+
msgid "Reoccurence:"
|
1249 |
+
msgstr ""
|
1250 |
+
|
1251 |
+
#: ../event-organiser-manage.php:29
|
1252 |
+
msgid "Reoccurrence"
|
1253 |
+
msgstr ""
|
1254 |
+
|
1255 |
+
#: ../event-organiser-edit.php:140
|
1256 |
+
msgid "Repeat every"
|
1257 |
+
msgstr ""
|
1258 |
+
|
1259 |
+
#: ../includes/event-organiser-cpt.php:433
|
1260 |
+
msgid "Repeating events"
|
1261 |
+
msgstr ""
|
1262 |
+
|
1263 |
+
#: ../event-organiser-settings.php:117
|
1264 |
+
msgid "Revisions"
|
1265 |
+
msgstr ""
|
1266 |
+
|
1267 |
+
#: ../event-organiser-settings.php:560
|
1268 |
+
msgid "Role"
|
1269 |
+
msgstr ""
|
1270 |
+
|
1271 |
+
#: ../event-organiser-venues.php:154
|
1272 |
+
msgid "Save"
|
1273 |
+
msgstr ""
|
1274 |
+
|
1275 |
+
#: ../event-organiser-calendar.php:281
|
1276 |
+
msgid "Save Draft"
|
1277 |
+
msgstr ""
|
1278 |
+
|
1279 |
+
#: ../includes/event.php:458
|
1280 |
+
msgid "Schedule end date is before is before the start date."
|
1281 |
+
msgstr ""
|
1282 |
+
|
1283 |
+
#: ../includes/event.php:470
|
1284 |
+
msgid "Schedule not recognised."
|
1285 |
+
msgstr ""
|
1286 |
+
|
1287 |
+
#: ../event-organiser-debug.php:556
|
1288 |
+
msgid "Script mode"
|
1289 |
+
msgstr ""
|
1290 |
+
|
1291 |
+
#: ../includes/event-organiser-cpt.php:62
|
1292 |
+
msgid "Search Categories"
|
1293 |
+
msgstr "Cari Kategori"
|
1294 |
+
|
1295 |
+
#: ../includes/event-organiser-cpt.php:148
|
1296 |
+
msgid "Search events"
|
1297 |
+
msgstr "Cari agenda"
|
1298 |
+
|
1299 |
+
#: ../event-organiser-venues.php:233
|
1300 |
+
msgid "Search results for “%s”"
|
1301 |
+
msgstr ""
|
1302 |
+
|
1303 |
+
#: ../includes/event-organiser-cpt.php:94
|
1304 |
+
msgid "Search Tags"
|
1305 |
+
msgstr "Pencarian Kata-kata Kunci"
|
1306 |
+
|
1307 |
+
#: ../event-organiser-venues.php:243
|
1308 |
+
msgid "Search Venues"
|
1309 |
+
msgstr ""
|
1310 |
+
|
1311 |
+
#: ../includes/event-organiser-register.php:235
|
1312 |
+
#: ../includes/event-organiser-event-functions.php:693
|
1313 |
+
msgid "second"
|
1314 |
+
msgstr ""
|
1315 |
+
|
1316 |
+
#: ../includes/event-organiser-cpt.php:491
|
1317 |
+
msgid "See the <a %s> documentation</a>"
|
1318 |
+
msgstr ""
|
1319 |
+
|
1320 |
+
#: ../event-organiser-edit.php:211
|
1321 |
+
msgid "Select a venue"
|
1322 |
+
msgstr ""
|
1323 |
+
|
1324 |
+
#: ../classes/class-eo-widget-categories.php:45
|
1325 |
+
msgid "Select Category"
|
1326 |
+
msgstr ""
|
1327 |
+
|
1328 |
+
#: ../event-organiser-settings.php:107
|
1329 |
+
msgid "Select which features events should support"
|
1330 |
+
msgstr ""
|
1331 |
+
|
1332 |
+
#: ../includes/event-organiser-cpt.php:444
|
1333 |
+
#: ../includes/event-organiser-cpt.php:445
|
1334 |
+
msgid "Selecting a venue"
|
1335 |
+
msgstr ""
|
1336 |
+
|
1337 |
+
#: ../event-organiser-go-pro.php:72
|
1338 |
+
msgid "Sell tickets for specific dates or sell tickets for all dates of an event - "
|
1339 |
+
"such as booking places on a course. You can offer multiple tickets, and "
|
1340 |
+
"customise the booking form to suit your needs."
|
1341 |
+
msgstr ""
|
1342 |
+
|
1343 |
+
#: ../includes/event-organiser-cpt.php:107
|
1344 |
+
msgid "Separate tags with commas"
|
1345 |
+
msgstr "Pisahkan kata kunci (tag) dengan tanda koma"
|
1346 |
+
|
1347 |
+
#: ../includes/event-organiser-cpt.php:39
|
1348 |
+
msgid "Separate venues with commas"
|
1349 |
+
msgstr "Pisahkan tempat/lokasi dengan tanda koma"
|
1350 |
+
|
1351 |
+
#: ../event-organiser-settings.php:555
|
1352 |
+
msgid "Set permissions for events and venue management"
|
1353 |
+
msgstr ""
|
1354 |
+
|
1355 |
+
#: ../includes/event-organiser-register.php:335
|
1356 |
+
msgid "Settings"
|
1357 |
+
msgstr ""
|
1358 |
+
|
1359 |
+
#: ../event-organiser-edit.php:183
|
1360 |
+
msgid "Show dates"
|
1361 |
+
msgstr ""
|
1362 |
+
|
1363 |
+
#: ../classes/class-eo-widget-categories.php:99
|
1364 |
+
msgid "Show hierarchy"
|
1365 |
+
msgstr ""
|
1366 |
+
|
1367 |
+
#: ../includes/event-organiser-register.php:52
|
1368 |
+
msgid "Show Less"
|
1369 |
+
msgstr "Tampilkan sedikit saja"
|
1370 |
+
|
1371 |
+
#: ../classes/class-eo-calendar-widget.php:56
|
1372 |
+
msgid "Show long events"
|
1373 |
+
msgstr ""
|
1374 |
+
|
1375 |
+
#: ../includes/event-organiser-register.php:51
|
1376 |
+
msgid "Show More"
|
1377 |
+
msgstr "Tampilkan lebih banyak"
|
1378 |
+
|
1379 |
+
#: ../event-organiser-settings.php:123
|
1380 |
+
#: ../event-organiser-settings.php:150
|
1381 |
+
msgid "Show past events:"
|
1382 |
+
msgstr ""
|
1383 |
+
|
1384 |
+
#: ../event-organiser-venues.php:431
|
1385 |
+
msgid "Slug"
|
1386 |
+
msgstr ""
|
1387 |
+
|
1388 |
+
#: ../includes/event-organiser-cpt.php:436
|
1389 |
+
msgid "Specify how regularly the event should repeat (default 1)"
|
1390 |
+
msgstr ""
|
1391 |
+
|
1392 |
+
#: ../templates/event-meta-event-single.php:58
|
1393 |
+
#: ../includes/event-organiser-ajax.php:282
|
1394 |
+
msgid "Start"
|
1395 |
+
msgstr ""
|
1396 |
+
|
1397 |
+
#: ../classes/class-eo-event-list-widget.php:57
|
1398 |
+
msgid "Start date"
|
1399 |
+
msgstr ""
|
1400 |
+
|
1401 |
+
#: ../includes/event.php:445
|
1402 |
+
msgid "Start date not provided."
|
1403 |
+
msgstr ""
|
1404 |
+
|
1405 |
+
#: ../includes/event.php:455
|
1406 |
+
msgid "Start date occurs after end date."
|
1407 |
+
msgstr ""
|
1408 |
+
|
1409 |
+
#: ../event-organiser-edit.php:92
|
1410 |
+
#: ../event-organiser-manage.php:27
|
1411 |
+
msgid "Start Date/Time"
|
1412 |
+
msgstr ""
|
1413 |
+
|
1414 |
+
#: ../includes/event-organiser-venue-functions.php:884
|
1415 |
+
msgid "State / Province"
|
1416 |
+
msgstr "Propinsi"
|
1417 |
+
|
1418 |
+
#: ../event-organiser-calendar.php:291
|
1419 |
+
msgid "Submit for Review"
|
1420 |
+
msgstr ""
|
1421 |
+
|
1422 |
+
#: ../event-organiser-debug.php:13
|
1423 |
+
#: ../event-organiser-debug.php:14
|
1424 |
+
#: ../event-organiser-debug.php:59
|
1425 |
+
msgid "System Info"
|
1426 |
+
msgstr ""
|
1427 |
+
|
1428 |
+
#: ../templates/event-meta-event-single.php:73
|
1429 |
+
#: ../includes/event-organiser-event-functions.php:1388
|
1430 |
+
#: ../includes/event-organiser-cpt.php:105
|
1431 |
+
msgid "Tags"
|
1432 |
+
msgstr ""
|
1433 |
+
|
1434 |
+
#: ../classes/class-eo-event-list-widget.php:76
|
1435 |
+
msgid "Template (leave blank for default)"
|
1436 |
+
msgstr ""
|
1437 |
+
|
1438 |
+
#: ../event-organiser-settings.php:59
|
1439 |
+
msgid "Templates"
|
1440 |
+
msgstr ""
|
1441 |
+
|
1442 |
+
#: ../event-organiser-debug.php:67
|
1443 |
+
msgid "The 'system info' link in under the Events admin tab is only visible to "
|
1444 |
+
"admins and only when <code>WP_DEBUG</code> is set to <code>true</code>."
|
1445 |
+
msgstr ""
|
1446 |
+
|
1447 |
+
#: ../includes/event-organiser-cpt.php:427
|
1448 |
+
msgid "The end date is the date the event finishes. If the event is a reoccuring "
|
1449 |
+
"event, this is the end date of the first occurrence."
|
1450 |
+
msgstr ""
|
1451 |
+
|
1452 |
+
#: ../includes/class-event-organiser-im-export.php:101
|
1453 |
+
msgid "The export button below generates an ICS file of your events that can be "
|
1454 |
+
"imported in to other calendar applications such as Google Calendar."
|
1455 |
+
msgstr ""
|
1456 |
+
|
1457 |
+
#: ../includes/event-organiser-cpt.php:426
|
1458 |
+
msgid "The start date is the date the event starts. If the event is a reoccuring "
|
1459 |
+
"event, this is the start date of the first occurrence."
|
1460 |
+
msgstr ""
|
1461 |
+
|
1462 |
+
#: ../classes/class-eventorganiser-shortcodes.php:356
|
1463 |
+
msgid "There is no excerpt because this is a protected post."
|
1464 |
+
msgstr ""
|
1465 |
+
|
1466 |
+
#: ../includes/class-eo-ical-parser.php:90
|
1467 |
+
msgid "There was an error detecting ICAL source."
|
1468 |
+
msgstr ""
|
1469 |
+
|
1470 |
+
#: ../includes/class-eo-ical-parser.php:136
|
1471 |
+
msgid "There was an error fetching the feed. Response code: %s."
|
1472 |
+
msgstr ""
|
1473 |
+
|
1474 |
+
#: ../includes/class-eo-ical-parser.php:156
|
1475 |
+
msgid "There was an error opening the ICAL file."
|
1476 |
+
msgstr ""
|
1477 |
+
|
1478 |
+
#: ../includes/class-event-organiser-im-export.php:318
|
1479 |
+
msgid "There was an error with %1$d of %2$d events in the ical file"
|
1480 |
+
msgstr ""
|
1481 |
+
|
1482 |
+
#: ../includes/event-organiser-register.php:235
|
1483 |
+
#: ../includes/event-organiser-event-functions.php:693
|
1484 |
+
msgid "third"
|
1485 |
+
msgstr ""
|
1486 |
+
|
1487 |
+
#: ../event-organiser-settings.php:147
|
1488 |
+
msgid "This alters the default format for inputting dates."
|
1489 |
+
msgstr ""
|
1490 |
+
|
1491 |
+
#: ../templates/event-meta-event-single.php:50
|
1492 |
+
msgid "This event finished on %s"
|
1493 |
+
msgstr ""
|
1494 |
+
|
1495 |
+
#: ../includes/event-organiser-cpt.php:230
|
1496 |
+
msgid "This event has been broken from a recurring event."
|
1497 |
+
msgstr ""
|
1498 |
+
|
1499 |
+
#: ../templates/event-meta-event-single.php:46
|
1500 |
+
msgid "This event is running from %1$s until %2$s. It is next occurring on %3$s"
|
1501 |
+
msgstr ""
|
1502 |
+
|
1503 |
+
#: ../includes/event-organiser-ajax.php:308
|
1504 |
+
msgid "This event reoccurs"
|
1505 |
+
msgstr ""
|
1506 |
+
|
1507 |
+
#: ../templates/single-event.php:60
|
1508 |
+
msgid "This event was posted by <a href=\"%5$s\">%4$s</a>. Bookmark the <a "
|
1509 |
+
"href=\"%2$s\" title=\"Permalink to %3$s\" rel=\"bookmark\">permalink</a>."
|
1510 |
+
msgstr ""
|
1511 |
+
|
1512 |
+
#: ../templates/single-event.php:58
|
1513 |
+
msgid "This event was posted in %1$s by <a href=\"%5$s\">%4$s</a>. Bookmark the <a "
|
1514 |
+
"href=\"%2$s\" title=\"Permalink to %3$s\" rel=\"bookmark\">permalink</a>."
|
1515 |
+
msgstr ""
|
1516 |
+
|
1517 |
+
#: ../includes/event-organiser-register.php:233
|
1518 |
+
msgid "This event will repeat"
|
1519 |
+
msgstr ""
|
1520 |
+
|
1521 |
+
#: ../event-organiser-edit.php:75
|
1522 |
+
msgid "This is a reoccurring event"
|
1523 |
+
msgstr ""
|
1524 |
+
|
1525 |
+
#: ../includes/event-organiser-cpt.php:459
|
1526 |
+
msgid "This is the list of all saved events. Note that <strong> reoccurring events "
|
1527 |
+
"appear as a single row </strong> in the table and the start and end date "
|
1528 |
+
"refers to the first occurrence of that event."
|
1529 |
+
msgstr ""
|
1530 |
+
|
1531 |
+
#: ../event-organiser-debug.php:65
|
1532 |
+
msgid "This page highlights useful information for debugging. If you're reporting a "
|
1533 |
+
"bug, please include this information."
|
1534 |
+
msgstr ""
|
1535 |
+
|
1536 |
+
#: ../includes/event-organiser-cpt.php:478
|
1537 |
+
msgid "This page shows all (occurrances of) events. You can view the summary of an "
|
1538 |
+
"event by clicking on it. If you have the necessary permissions, a link to "
|
1539 |
+
"the event's edit page will appear also."
|
1540 |
+
msgstr ""
|
1541 |
+
|
1542 |
+
#: ../event-organiser-settings.php:113
|
1543 |
+
msgid "Thumbnail"
|
1544 |
+
msgstr ""
|
1545 |
+
|
1546 |
+
#: ../classes/class-eo-event-list-widget.php:31
|
1547 |
+
#: ../classes/class-eo-event-list-widget.php:58
|
1548 |
+
#: ../classes/class-eo-calendar-widget.php:36
|
1549 |
+
#: ../classes/class-eo-agenda-widget.php:27
|
1550 |
+
msgid "Title"
|
1551 |
+
msgstr ""
|
1552 |
+
|
1553 |
+
#: ../classes/class-eo-widget-categories.php:92
|
1554 |
+
msgid "Title:"
|
1555 |
+
msgstr ""
|
1556 |
+
|
1557 |
+
#: ../event-organiser-debug.php:74
|
1558 |
+
msgid "To help speed things along, if you report a bug please indicate if you have "
|
1559 |
+
"done so. Once the plug-in or theme has been identified it is often easy to "
|
1560 |
+
"resolve the issue."
|
1561 |
+
msgstr ""
|
1562 |
+
|
1563 |
+
#: ../includes/event-organiser-cpt.php:434
|
1564 |
+
msgid "To repeat an event according to some regular pattern, use the reoccurrence "
|
1565 |
+
"dropdown menu to select how the event is to repeat. Further options then "
|
1566 |
+
"appear, "
|
1567 |
+
msgstr ""
|
1568 |
+
|
1569 |
+
#: ../event-organiser-calendar.php:54
|
1570 |
+
msgid "today"
|
1571 |
+
msgstr ""
|
1572 |
+
|
1573 |
+
#: ../event-organiser-debug.php:444
|
1574 |
+
msgid "unknown"
|
1575 |
+
msgstr ""
|
1576 |
+
|
1577 |
+
#: ../event-organiser-edit.php:170
|
1578 |
+
msgid "until"
|
1579 |
+
msgstr ""
|
1580 |
+
|
1581 |
+
#: ../templates/event-meta-event-single.php:88
|
1582 |
+
msgid "Upcoming Dates"
|
1583 |
+
msgstr ""
|
1584 |
+
|
1585 |
+
#: ../includes/event-organiser-cpt.php:67
|
1586 |
+
msgid "Update Category"
|
1587 |
+
msgstr "Perbarui Kategori"
|
1588 |
+
|
1589 |
+
#: ../includes/event-organiser-cpt.php:100
|
1590 |
+
msgid "Update Tag"
|
1591 |
+
msgstr "Perbarui Kata Kunci"
|
1592 |
+
|
1593 |
+
#: ../event-organiser-venues.php:345
|
1594 |
+
msgid "Update Venue"
|
1595 |
+
msgstr ""
|
1596 |
+
|
1597 |
+
#: ../includes/class-event-organiser-im-export.php:116
|
1598 |
+
msgid "Upload ICS file"
|
1599 |
+
msgstr ""
|
1600 |
+
|
1601 |
+
#: ../includes/event-organiser-cpt.php:447
|
1602 |
+
msgid "Use the venues input field to search for existing venues"
|
1603 |
+
msgstr ""
|
1604 |
+
|
1605 |
+
#: ../event-organiser-edit.php:208
|
1606 |
+
#: ../event-organiser-manage.php:25
|
1607 |
+
#: ../event-organiser-venues.php:424
|
1608 |
+
msgid "Venue"
|
1609 |
+
msgstr ""
|
1610 |
+
|
1611 |
+
#: ../event-organiser-venues.php:170
|
1612 |
+
msgid "Venue <strong>created</strong>"
|
1613 |
+
msgstr ""
|
1614 |
+
|
1615 |
+
#: ../event-organiser-venues.php:171
|
1616 |
+
msgid "Venue <strong>updated</strong>"
|
1617 |
+
msgstr ""
|
1618 |
+
|
1619 |
+
#: ../event-organiser-venues.php:86
|
1620 |
+
msgid "Venue <strong>was not</strong> created"
|
1621 |
+
msgstr ""
|
1622 |
+
|
1623 |
+
#: ../event-organiser-venues.php:49
|
1624 |
+
msgid "Venue <strong>was not</strong> updated"
|
1625 |
+
msgstr ""
|
1626 |
+
|
1627 |
+
#: ../event-organiser-go-pro.php:81
|
1628 |
+
msgid "Venue custom fields & thumbnails"
|
1629 |
+
msgstr ""
|
1630 |
+
|
1631 |
+
#: ../event-organiser-venues.php:300
|
1632 |
+
msgid "Venue Location"
|
1633 |
+
msgstr ""
|
1634 |
+
|
1635 |
+
#: ../event-organiser-venues.php:399
|
1636 |
+
msgid "Venue name"
|
1637 |
+
msgstr ""
|
1638 |
+
|
1639 |
+
#: ../event-organiser-edit.php:221
|
1640 |
+
msgid "Venue Name"
|
1641 |
+
msgstr ""
|
1642 |
+
|
1643 |
+
#: ../event-organiser-settings.php:220
|
1644 |
+
msgid "Venue page:"
|
1645 |
+
msgstr ""
|
1646 |
+
|
1647 |
+
#: ../event-organiser-venues.php:172
|
1648 |
+
msgid "Venue(s) <strong>deleted</strong>"
|
1649 |
+
msgstr ""
|
1650 |
+
|
1651 |
+
#: ../event-organiser-venues.php:142
|
1652 |
+
msgid "Venue(s) <strong>were not </strong> deleted"
|
1653 |
+
msgstr ""
|
1654 |
+
|
1655 |
+
#: ../event-organiser-settings.php:274
|
1656 |
+
#: ../event-organiser-venues.php:13
|
1657 |
+
#: ../event-organiser-venues.php:14
|
1658 |
+
#: ../event-organiser-venues.php:162
|
1659 |
+
#: ../event-organiser-venues.php:229
|
1660 |
+
msgid "Venues"
|
1661 |
+
msgstr ""
|
1662 |
+
|
1663 |
+
#: ../includes/event-organiser-ajax.php:544
|
1664 |
+
msgid "View"
|
1665 |
+
msgstr "Lihat"
|
1666 |
+
|
1667 |
+
#: ../event-organiser-calendar.php:59
|
1668 |
+
#: ../event-organiser-manage.php:114
|
1669 |
+
msgid "View all categories"
|
1670 |
+
msgstr ""
|
1671 |
+
|
1672 |
+
#: ../event-organiser-manage.php:141
|
1673 |
+
msgid "View all events"
|
1674 |
+
msgstr ""
|
1675 |
+
|
1676 |
+
#: ../event-organiser-calendar.php:60
|
1677 |
+
#: ../event-organiser-manage.php:128
|
1678 |
+
msgid "View all venues"
|
1679 |
+
msgstr ""
|
1680 |
+
|
1681 |
+
#: ../includes/event-organiser-cpt.php:147
|
1682 |
+
msgid "View Event"
|
1683 |
+
msgstr "Lihat Agenda"
|
1684 |
+
|
1685 |
+
#: ../event-organiser-venues.php:413
|
1686 |
+
msgid "View Venue"
|
1687 |
+
msgstr ""
|
1688 |
+
|
1689 |
+
#: ../includes/event-organiser-cpt.php:469
|
1690 |
+
msgid "View will take you to the venue's page"
|
1691 |
+
msgstr ""
|
1692 |
+
|
1693 |
+
#: ../event-organiser-calendar.php:229
|
1694 |
+
msgid "Week"
|
1695 |
+
msgstr ""
|
1696 |
+
|
1697 |
+
#: ../event-organiser-calendar.php:56
|
1698 |
+
msgid "week"
|
1699 |
+
msgstr ""
|
1700 |
+
|
1701 |
+
#: ../event-organiser-edit.php:126
|
1702 |
+
msgid "weekly"
|
1703 |
+
msgstr ""
|
1704 |
+
|
1705 |
+
#: ../includes/event-organiser-register.php:220
|
1706 |
+
msgid "weeks"
|
1707 |
+
msgstr ""
|
1708 |
+
|
1709 |
+
#: ../event-organiser-calendar.php:249
|
1710 |
+
msgid "When"
|
1711 |
+
msgstr ""
|
1712 |
+
|
1713 |
+
#: ../event-organiser-calendar.php:257
|
1714 |
+
msgid "Where"
|
1715 |
+
msgstr ""
|
1716 |
+
|
1717 |
+
#: ../includes/event-organiser-register.php:223
|
1718 |
+
msgid "year"
|
1719 |
+
msgstr ""
|
1720 |
+
|
1721 |
+
#: ../event-organiser-settings.php:269
|
1722 |
+
msgid "Year archive"
|
1723 |
+
msgstr ""
|
1724 |
+
|
1725 |
+
#: ../event-organiser-edit.php:127
|
1726 |
+
msgid "yearly"
|
1727 |
+
msgstr ""
|
1728 |
+
|
1729 |
+
#: ../includes/event-organiser-register.php:224
|
1730 |
+
msgid "years"
|
1731 |
+
msgstr ""
|
1732 |
+
|
1733 |
+
#: ../event-organiser-debug.php:178
|
1734 |
+
#: ../event-organiser-debug.php:182
|
1735 |
+
#: ../event-organiser-debug.php:186
|
1736 |
+
#: ../event-organiser-settings.php:175
|
1737 |
+
msgid "Yes"
|
1738 |
+
msgstr ""
|
1739 |
+
|
1740 |
+
#: ../includes/event-organiser-cpt.php:484
|
1741 |
+
msgid "You can create an event on this Calendar, by clicking on day or dragging "
|
1742 |
+
"over multiple days (in Month view) or multiple times (in Week and Day view). "
|
1743 |
+
"You can give the event a title, specify a venue and provide a descripton. "
|
1744 |
+
"The event can be immediately published or saved as a draft. In any case, the "
|
1745 |
+
"event is created and you are forwarded to that event's edit page."
|
1746 |
+
msgstr ""
|
1747 |
+
|
1748 |
+
#: ../classes/class-eo-event-list-widget.php:80
|
1749 |
+
msgid "You can use specified tags as placeholders for event information which you "
|
1750 |
+
"want to appear in the widget. <a href=\"%s\" target=\"_blank\"> Find out "
|
1751 |
+
"more</a>."
|
1752 |
+
msgstr ""
|
1753 |
+
|
1754 |
+
#: ../event-organiser-venues.php:115
|
1755 |
+
msgid "You do not have permission to delete this venue"
|
1756 |
+
msgstr ""
|
1757 |
+
|
1758 |
+
#: ../event-organiser-venues.php:42
|
1759 |
+
#: ../event-organiser-venues.php:71
|
1760 |
+
msgid "You do not have permission to edit this venue."
|
1761 |
+
msgstr ""
|
1762 |
+
|
1763 |
+
#: ../event-organiser-venues.php:37
|
1764 |
+
msgid "You do not have permission to manage venues"
|
1765 |
+
msgstr ""
|
1766 |
+
|
1767 |
+
#: ../event-organiser-calendar.php:107
|
1768 |
+
msgid "You do not have sufficient permissions to create events. "
|
1769 |
+
msgstr ""
|
1770 |
+
|
1771 |
+
#: ../event-organiser-calendar.php:181
|
1772 |
+
msgid "You do not have sufficient permissions to delete this event. "
|
1773 |
+
msgstr ""
|
1774 |
+
|
1775 |
+
#: ../event-organiser-calendar.php:163
|
1776 |
+
msgid "You do not have sufficient permissions to edit this event. "
|
1777 |
+
msgstr ""
|
1778 |
+
|
1779 |
+
#: ../includes/class-event-organiser-im-export.php:171
|
1780 |
+
msgid "You do not have sufficient permissions to import events."
|
1781 |
+
msgstr ""
|
1782 |
+
|
1783 |
+
#: ../event-organiser-settings.php:602
|
1784 |
+
msgid "You may also need to go to WordPress Settings > Permalinks and click 'Save "
|
1785 |
+
"Changes' before any changes will take effect."
|
1786 |
+
msgstr ""
|
1787 |
+
|
1788 |
+
#: ../event-organiser-settings.php:145
|
1789 |
+
msgid "yyyy-mm-dd"
|
1790 |
+
msgstr ""
|
1791 |
+
|
languages/eventorganiser-nl_NL.po
CHANGED
@@ -1207,37 +1207,6 @@ msgstr "Overzicht"
|
|
1207 |
msgid "Page list (fallback)"
|
1208 |
msgstr ""
|
1209 |
|
1210 |
-
#: ../event-organiser-settings.php:112
|
1211 |
-
#: ../event-organiser-edit.php:31
|
1212 |
-
#: ../event-organiser-manage.php:23
|
1213 |
-
msgid "Organiser"
|
1214 |
-
msgstr "Organisator"
|
1215 |
-
|
1216 |
-
#: ../includes/event-organiser-cpt.php:458
|
1217 |
-
#: ../includes/event-organiser-cpt.php:477
|
1218 |
-
msgid "Overview"
|
1219 |
-
msgstr "Overzicht"
|
1220 |
-
|
1221 |
-
#: ../event-organiser-settings.php:630
|
1222 |
-
msgid "Page list (fallback)"
|
1223 |
-
msgstr ""
|
1224 |
-
|
1225 |
-
#: ../event-organiser-settings.php:96
|
1226 |
-
#: ../event-organiser-edit.php:28
|
1227 |
-
#: ../event-organiser-manage.php:22
|
1228 |
-
msgid "Organiser"
|
1229 |
-
msgstr "Organisator"
|
1230 |
-
|
1231 |
-
#: ../includes/event-organiser-cpt.php:456
|
1232 |
-
#: ../includes/event-organiser-cpt.php:475
|
1233 |
-
msgid "Overview"
|
1234 |
-
msgstr "Overzicht"
|
1235 |
-
|
1236 |
-
#: ../event-organiser-settings.php:554
|
1237 |
-
msgid "Page list (fallback)"
|
1238 |
-
msgstr ""
|
1239 |
-
|
1240 |
-
#: ../includes/event-organiser-cpt.php:63
|
1241 |
#: ../includes/event-organiser-cpt.php:64
|
1242 |
#: ../includes/event-organiser-cpt.php:65
|
1243 |
msgid "Parent Category"
|
1207 |
msgid "Page list (fallback)"
|
1208 |
msgstr ""
|
1209 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1210 |
#: ../includes/event-organiser-cpt.php:64
|
1211 |
#: ../includes/event-organiser-cpt.php:65
|
1212 |
msgid "Parent Category"
|
languages/eventorganiser-pl_PL.po
CHANGED
@@ -401,7 +401,7 @@ msgstr "Usuń"
|
|
401 |
#: ../event-organiser-settings.php:36
|
402 |
#: ../event-organiser.php:103
|
403 |
msgid "Delete Events"
|
404 |
-
msgstr "
|
405 |
|
406 |
#: ../event-organiser-settings.php:180
|
407 |
msgid "Delete expired events:"
|
401 |
#: ../event-organiser-settings.php:36
|
402 |
#: ../event-organiser.php:103
|
403 |
msgid "Delete Events"
|
404 |
+
msgstr "Usuwanie wydarzeń"
|
405 |
|
406 |
#: ../event-organiser-settings.php:180
|
407 |
msgid "Delete expired events:"
|
languages/eventorganiser.pot
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Event Organiser\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2013-
|
6 |
-
"PO-Revision-Date: 2013-
|
7 |
"Last-Translator: Stephen Harris <contact@stephenharris.info>\n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: \n"
|
@@ -105,14 +105,12 @@ msgstr ""
|
|
105 |
msgid "Export"
|
106 |
msgstr ""
|
107 |
|
108 |
-
#: ../event-organiser-
|
109 |
-
msgid "
|
110 |
msgstr ""
|
111 |
|
112 |
-
#: ../event-organiser-
|
113 |
-
|
114 |
-
#: ../event-organiser-settings.php:173
|
115 |
-
msgid "Yes"
|
116 |
msgstr ""
|
117 |
|
118 |
#: ../event-organiser-settings.php:34
|
@@ -350,35 +348,39 @@ msgstr ""
|
|
350 |
msgid "Event Categories"
|
351 |
msgstr ""
|
352 |
|
353 |
-
#: ../event-organiser-settings.php:
|
|
|
|
|
|
|
|
|
354 |
msgid "Set permissions for events and venue management"
|
355 |
msgstr ""
|
356 |
|
357 |
-
#: ../event-organiser-settings.php:
|
358 |
msgid "Role"
|
359 |
msgstr ""
|
360 |
|
361 |
-
#: ../event-organiser-settings.php:
|
362 |
msgid "None"
|
363 |
msgstr ""
|
364 |
|
365 |
-
#: ../event-organiser-settings.php:
|
366 |
msgid "Choose a custom permalink structure for events, venues, event categories and event tags."
|
367 |
msgstr ""
|
368 |
|
369 |
-
#: ../event-organiser-settings.php:
|
370 |
msgid "Please note to enable these structures you must first have pretty permalinks enabled on WordPress in Settings > Permalinks."
|
371 |
msgstr ""
|
372 |
|
373 |
-
#: ../event-organiser-settings.php:
|
374 |
msgid "You may also need to go to WordPress Settings > Permalinks and click 'Save Changes' before any changes will take effect."
|
375 |
msgstr ""
|
376 |
|
377 |
-
#: ../event-organiser-settings.php:
|
378 |
msgid "Do not add to menu"
|
379 |
msgstr ""
|
380 |
|
381 |
-
#: ../event-organiser-settings.php:
|
382 |
msgid "Page list (fallback)"
|
383 |
msgstr ""
|
384 |
|
@@ -447,7 +449,6 @@ msgid "Repeat every"
|
|
447 |
msgstr ""
|
448 |
|
449 |
#: ../event-organiser-edit.php:146
|
450 |
-
#: ../templates/shortcode-event-list.php:52
|
451 |
msgid "on"
|
452 |
msgstr ""
|
453 |
|
@@ -665,7 +666,6 @@ msgstr ""
|
|
665 |
|
666 |
#: ../event-organiser.php:127
|
667 |
#: ../event-organiser-venues.php:432
|
668 |
-
#: ../templates/archive-event.php:42
|
669 |
msgid "Events"
|
670 |
msgstr ""
|
671 |
|
@@ -922,13 +922,10 @@ msgid "This event finished on %s"
|
|
922 |
msgstr ""
|
923 |
|
924 |
#: ../templates/event-meta-event-single.php:58
|
925 |
-
#: ../includes/event-organiser-ajax.php:282
|
926 |
msgid "Start"
|
927 |
msgstr ""
|
928 |
|
929 |
#: ../templates/event-meta-event-single.php:73
|
930 |
-
#: ../includes/event-organiser-event-functions.php:1388
|
931 |
-
#: ../includes/event-organiser-cpt.php:105
|
932 |
msgid "Tags"
|
933 |
msgstr ""
|
934 |
|
@@ -975,6 +972,7 @@ msgid "All Day"
|
|
975 |
msgstr ""
|
976 |
|
977 |
#: ../includes/event-organiser-ajax.php:544
|
|
|
978 |
msgid "View"
|
979 |
msgstr ""
|
980 |
|
@@ -1101,44 +1099,48 @@ msgstr ""
|
|
1101 |
msgid "Settings"
|
1102 |
msgstr ""
|
1103 |
|
1104 |
-
#: ../includes/event-organiser-register.php:
|
1105 |
#, php-format
|
1106 |
msgid "<h4>City & State Fields Added</h4>City and state / province fields for venues have now been added. </br> If you'd like, Event Organiser can <a href='%s'>attempt to auto-fill them</a>. You can always manually change the details aftewards."
|
1107 |
msgstr ""
|
1108 |
|
1109 |
-
#: ../includes/event-organiser-register.php:
|
1110 |
msgid "<h4>The Default Templates Have Changed</h4>Don't panic! If you've set up your own templates in your theme you won't notice any change. </br> If you haven't and want the old templates back, <a href='http://wp-event-organiser.com/blog/new-default-templates-in-1-7'>see this post<a/>."
|
1111 |
msgstr ""
|
1112 |
|
1113 |
-
#: ../includes/event-organiser-register.php:
|
1114 |
msgid "Dismiss this notice"
|
1115 |
msgstr ""
|
1116 |
|
1117 |
-
#: ../includes/event-organiser-register.php:
|
1118 |
msgid "Dismiss"
|
1119 |
msgstr ""
|
1120 |
|
1121 |
-
#: ../includes/event.php:
|
|
|
|
|
|
|
|
|
1122 |
msgid "Start date not provided."
|
1123 |
msgstr ""
|
1124 |
|
1125 |
-
#: ../includes/event.php:
|
1126 |
msgid "Start date occurs after end date."
|
1127 |
msgstr ""
|
1128 |
|
1129 |
-
#: ../includes/event.php:
|
1130 |
msgid "Schedule end date is before is before the start date."
|
1131 |
msgstr ""
|
1132 |
|
1133 |
-
#: ../includes/event.php:
|
1134 |
-
msgid "
|
1135 |
msgstr ""
|
1136 |
|
1137 |
-
#: ../includes/event.php:
|
1138 |
-
msgid "
|
1139 |
msgstr ""
|
1140 |
|
1141 |
-
#: ../includes/event.php:
|
1142 |
msgid "Occurrence not deleted. Occurrence not found."
|
1143 |
msgstr ""
|
1144 |
|
@@ -1179,118 +1181,105 @@ msgstr ""
|
|
1179 |
msgid "every %d years"
|
1180 |
msgstr ""
|
1181 |
|
1182 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1183 |
#, php-format
|
1184 |
msgid "File Error encountered: %d"
|
1185 |
msgstr ""
|
1186 |
|
1187 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1188 |
msgid "No file detected."
|
1189 |
msgstr ""
|
1190 |
|
1191 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1192 |
msgid "Invalid file uploaded. The file must be a ics calendar file of type 'text/calendar', no larger than 2MB."
|
1193 |
msgstr ""
|
1194 |
|
1195 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1196 |
#, php-format
|
1197 |
msgid "File size: %s. File type: %s"
|
1198 |
msgstr ""
|
1199 |
|
1200 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1201 |
msgid "Export Events"
|
1202 |
msgstr ""
|
1203 |
|
1204 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1205 |
msgid "The export button below generates an ICS file of your events that can be imported in to other calendar applications such as Google Calendar."
|
1206 |
msgstr ""
|
1207 |
|
1208 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1209 |
msgid "Download Export File"
|
1210 |
msgstr ""
|
1211 |
|
1212 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1213 |
msgid "Import Events"
|
1214 |
msgstr ""
|
1215 |
|
1216 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1217 |
msgid "Import an ICS file."
|
1218 |
msgstr ""
|
1219 |
|
1220 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1221 |
msgid "Import venues"
|
1222 |
msgstr ""
|
1223 |
|
1224 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1225 |
msgid "Import categories"
|
1226 |
msgstr ""
|
1227 |
|
1228 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1229 |
msgid "Upload ICS file"
|
1230 |
msgstr ""
|
1231 |
|
1232 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1233 |
msgid "You do not have sufficient permissions to import events."
|
1234 |
msgstr ""
|
1235 |
|
1236 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1237 |
-
|
1238 |
-
#: ../includes/class-eo-ical-parser.php:257
|
1239 |
-
#, php-format
|
1240 |
-
msgid "Line: %1$d"
|
1241 |
msgstr ""
|
1242 |
|
1243 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1244 |
-
msgid "
|
1245 |
msgstr ""
|
1246 |
|
1247 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1248 |
-
|
1249 |
-
msgid "There was an error with %1$d of %2$d events in the ical file"
|
1250 |
msgstr ""
|
1251 |
|
1252 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1253 |
msgid "1 event was successfully imported"
|
1254 |
msgstr ""
|
1255 |
|
1256 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1257 |
#, php-format
|
1258 |
msgid "%d events were successfully imported"
|
1259 |
msgstr ""
|
1260 |
|
1261 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1262 |
msgid "1 venue was created"
|
1263 |
msgstr ""
|
1264 |
|
1265 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1266 |
#, php-format
|
1267 |
msgid "%d venues were created"
|
1268 |
msgstr ""
|
1269 |
|
1270 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1271 |
msgid "1 category was created"
|
1272 |
msgstr ""
|
1273 |
|
1274 |
-
#: ../includes/class-event-organiser-im-export.php:
|
1275 |
#, php-format
|
1276 |
msgid "%d categories were created"
|
1277 |
msgstr ""
|
1278 |
|
1279 |
-
#: ../includes/class-event-organiser-im-export.php:586
|
1280 |
-
#: ../includes/class-eo-ical-parser.php:449
|
1281 |
-
msgid "Invalid date. Date expected in YYYYMMDD format."
|
1282 |
-
msgstr ""
|
1283 |
-
|
1284 |
-
#: ../includes/class-event-organiser-im-export.php:618
|
1285 |
-
#: ../includes/class-eo-ical-parser.php:482
|
1286 |
-
msgid "Invalid datetime. Date expected in YYYYMMDDTHHiissZ or YYYYMMDDTHHiiss format."
|
1287 |
-
msgstr ""
|
1288 |
-
|
1289 |
#: ../includes/event-organiser-cpt.php:28
|
1290 |
msgid "Event Venues"
|
1291 |
msgstr ""
|
1292 |
|
1293 |
#: ../includes/event-organiser-cpt.php:31
|
|
|
1294 |
msgid "All Venues"
|
1295 |
msgstr ""
|
1296 |
|
@@ -1593,19 +1582,35 @@ msgstr ""
|
|
1593 |
msgid "Assign the category a colour."
|
1594 |
msgstr ""
|
1595 |
|
1596 |
-
#: ../includes/class-eo-ical-parser.php:
|
1597 |
msgid "There was an error detecting ICAL source."
|
1598 |
msgstr ""
|
1599 |
|
1600 |
-
#: ../includes/class-eo-ical-parser.php:
|
1601 |
#, php-format
|
1602 |
msgid "There was an error fetching the feed. Response code: %s."
|
1603 |
msgstr ""
|
1604 |
|
1605 |
-
#: ../includes/class-eo-ical-parser.php:
|
1606 |
msgid "There was an error opening the ICAL file."
|
1607 |
msgstr ""
|
1608 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1609 |
#: ../classes/class-eo-widget-categories.php:10
|
1610 |
msgid "A list or dropdown of event categories"
|
1611 |
msgstr ""
|
@@ -1637,8 +1642,6 @@ msgstr ""
|
|
1637 |
|
1638 |
#: ../classes/class-eo-event-list-widget.php:31
|
1639 |
#: ../classes/class-eo-event-list-widget.php:58
|
1640 |
-
#: ../classes/class-eo-calendar-widget.php:36
|
1641 |
-
#: ../classes/class-eo-agenda-widget.php:27
|
1642 |
msgid "Title"
|
1643 |
msgstr ""
|
1644 |
|
@@ -1647,12 +1650,10 @@ msgid "Number of events"
|
|
1647 |
msgstr ""
|
1648 |
|
1649 |
#: ../classes/class-eo-event-list-widget.php:39
|
1650 |
-
#: ../classes/class-eo-calendar-widget.php:77
|
1651 |
msgid "Event categories"
|
1652 |
msgstr ""
|
1653 |
|
1654 |
#: ../classes/class-eo-event-list-widget.php:41
|
1655 |
-
#: ../classes/class-eo-calendar-widget.php:80
|
1656 |
msgid "List category slug(s), seperate by comma. Leave blank for all"
|
1657 |
msgstr ""
|
1658 |
|
@@ -1673,7 +1674,6 @@ msgid "DESC"
|
|
1673 |
msgstr ""
|
1674 |
|
1675 |
#: ../classes/class-eo-event-list-widget.php:66
|
1676 |
-
#: ../classes/class-eo-calendar-widget.php:46
|
1677 |
msgid "Include past events"
|
1678 |
msgstr ""
|
1679 |
|
@@ -1714,15 +1714,15 @@ msgstr ""
|
|
1714 |
msgid "Event venue"
|
1715 |
msgstr ""
|
1716 |
|
1717 |
-
#: ../classes/class-eo-calendar-widget.php:
|
1718 |
msgid "Previous month"
|
1719 |
msgstr ""
|
1720 |
|
1721 |
-
#: ../classes/class-eo-calendar-widget.php:
|
1722 |
msgid "Next month"
|
1723 |
msgstr ""
|
1724 |
|
1725 |
-
#: ../classes/class-eventorganiser-shortcodes.php:
|
1726 |
msgid "There is no excerpt because this is a protected post."
|
1727 |
msgstr ""
|
1728 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Event Organiser\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2013-10-29 18:11+0100\n"
|
6 |
+
"PO-Revision-Date: 2013-10-29 18:11+0100\n"
|
7 |
"Last-Translator: Stephen Harris <contact@stephenharris.info>\n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: \n"
|
105 |
msgid "Export"
|
106 |
msgstr ""
|
107 |
|
108 |
+
#: ../event-organiser-settings.php:28
|
109 |
+
msgid "Event Organiser Settings"
|
110 |
msgstr ""
|
111 |
|
112 |
+
#: ../event-organiser-settings.php:29
|
113 |
+
msgid "Event Organiser"
|
|
|
|
|
114 |
msgstr ""
|
115 |
|
116 |
#: ../event-organiser-settings.php:34
|
348 |
msgid "Event Categories"
|
349 |
msgstr ""
|
350 |
|
351 |
+
#: ../event-organiser-settings.php:557
|
352 |
+
msgid "Event management permissions"
|
353 |
+
msgstr ""
|
354 |
+
|
355 |
+
#: ../event-organiser-settings.php:558
|
356 |
msgid "Set permissions for events and venue management"
|
357 |
msgstr ""
|
358 |
|
359 |
+
#: ../event-organiser-settings.php:563
|
360 |
msgid "Role"
|
361 |
msgstr ""
|
362 |
|
363 |
+
#: ../event-organiser-settings.php:574
|
364 |
msgid "None"
|
365 |
msgstr ""
|
366 |
|
367 |
+
#: ../event-organiser-settings.php:603
|
368 |
msgid "Choose a custom permalink structure for events, venues, event categories and event tags."
|
369 |
msgstr ""
|
370 |
|
371 |
+
#: ../event-organiser-settings.php:604
|
372 |
msgid "Please note to enable these structures you must first have pretty permalinks enabled on WordPress in Settings > Permalinks."
|
373 |
msgstr ""
|
374 |
|
375 |
+
#: ../event-organiser-settings.php:605
|
376 |
msgid "You may also need to go to WordPress Settings > Permalinks and click 'Save Changes' before any changes will take effect."
|
377 |
msgstr ""
|
378 |
|
379 |
+
#: ../event-organiser-settings.php:629
|
380 |
msgid "Do not add to menu"
|
381 |
msgstr ""
|
382 |
|
383 |
+
#: ../event-organiser-settings.php:633
|
384 |
msgid "Page list (fallback)"
|
385 |
msgstr ""
|
386 |
|
449 |
msgstr ""
|
450 |
|
451 |
#: ../event-organiser-edit.php:146
|
|
|
452 |
msgid "on"
|
453 |
msgstr ""
|
454 |
|
666 |
|
667 |
#: ../event-organiser.php:127
|
668 |
#: ../event-organiser-venues.php:432
|
|
|
669 |
msgid "Events"
|
670 |
msgstr ""
|
671 |
|
922 |
msgstr ""
|
923 |
|
924 |
#: ../templates/event-meta-event-single.php:58
|
|
|
925 |
msgid "Start"
|
926 |
msgstr ""
|
927 |
|
928 |
#: ../templates/event-meta-event-single.php:73
|
|
|
|
|
929 |
msgid "Tags"
|
930 |
msgstr ""
|
931 |
|
972 |
msgstr ""
|
973 |
|
974 |
#: ../includes/event-organiser-ajax.php:544
|
975 |
+
#: ../classes/class-eo-venue-list-table.php:71
|
976 |
msgid "View"
|
977 |
msgstr ""
|
978 |
|
1099 |
msgid "Settings"
|
1100 |
msgstr ""
|
1101 |
|
1102 |
+
#: ../includes/event-organiser-register.php:607
|
1103 |
#, php-format
|
1104 |
msgid "<h4>City & State Fields Added</h4>City and state / province fields for venues have now been added. </br> If you'd like, Event Organiser can <a href='%s'>attempt to auto-fill them</a>. You can always manually change the details aftewards."
|
1105 |
msgstr ""
|
1106 |
|
1107 |
+
#: ../includes/event-organiser-register.php:614
|
1108 |
msgid "<h4>The Default Templates Have Changed</h4>Don't panic! If you've set up your own templates in your theme you won't notice any change. </br> If you haven't and want the old templates back, <a href='http://wp-event-organiser.com/blog/new-default-templates-in-1-7'>see this post<a/>."
|
1109 |
msgstr ""
|
1110 |
|
1111 |
+
#: ../includes/event-organiser-register.php:650
|
1112 |
msgid "Dismiss this notice"
|
1113 |
msgstr ""
|
1114 |
|
1115 |
+
#: ../includes/event-organiser-register.php:651
|
1116 |
msgid "Dismiss"
|
1117 |
msgstr ""
|
1118 |
|
1119 |
+
#: ../includes/event.php:484
|
1120 |
+
msgid "Schedule not recognised."
|
1121 |
+
msgstr ""
|
1122 |
+
|
1123 |
+
#: ../includes/event.php:493
|
1124 |
msgid "Start date not provided."
|
1125 |
msgstr ""
|
1126 |
|
1127 |
+
#: ../includes/event.php:511
|
1128 |
msgid "Start date occurs after end date."
|
1129 |
msgstr ""
|
1130 |
|
1131 |
+
#: ../includes/event.php:514
|
1132 |
msgid "Schedule end date is before is before the start date."
|
1133 |
msgstr ""
|
1134 |
|
1135 |
+
#: ../includes/event.php:596
|
1136 |
+
msgid "Invalid monthly schedule (invalid ordinal)"
|
1137 |
msgstr ""
|
1138 |
|
1139 |
+
#: ../includes/event.php:716
|
1140 |
+
msgid "Event does not contain any dates."
|
1141 |
msgstr ""
|
1142 |
|
1143 |
+
#: ../includes/event.php:806
|
1144 |
msgid "Occurrence not deleted. Occurrence not found."
|
1145 |
msgstr ""
|
1146 |
|
1181 |
msgid "every %d years"
|
1182 |
msgstr ""
|
1183 |
|
1184 |
+
#: ../includes/class-event-organiser-im-export.php:61
|
1185 |
#, php-format
|
1186 |
msgid "File Error encountered: %d"
|
1187 |
msgstr ""
|
1188 |
|
1189 |
+
#: ../includes/class-event-organiser-im-export.php:68
|
1190 |
msgid "No file detected."
|
1191 |
msgstr ""
|
1192 |
|
1193 |
+
#: ../includes/class-event-organiser-im-export.php:71
|
1194 |
msgid "Invalid file uploaded. The file must be a ics calendar file of type 'text/calendar', no larger than 2MB."
|
1195 |
msgstr ""
|
1196 |
|
1197 |
+
#: ../includes/class-event-organiser-im-export.php:73
|
1198 |
#, php-format
|
1199 |
msgid "File size: %s. File type: %s"
|
1200 |
msgstr ""
|
1201 |
|
1202 |
+
#: ../includes/class-event-organiser-im-export.php:91
|
1203 |
msgid "Export Events"
|
1204 |
msgstr ""
|
1205 |
|
1206 |
+
#: ../includes/class-event-organiser-im-export.php:94
|
1207 |
msgid "The export button below generates an ICS file of your events that can be imported in to other calendar applications such as Google Calendar."
|
1208 |
msgstr ""
|
1209 |
|
1210 |
+
#: ../includes/class-event-organiser-im-export.php:97
|
1211 |
msgid "Download Export File"
|
1212 |
msgstr ""
|
1213 |
|
1214 |
+
#: ../includes/class-event-organiser-im-export.php:100
|
1215 |
msgid "Import Events"
|
1216 |
msgstr ""
|
1217 |
|
1218 |
+
#: ../includes/class-event-organiser-im-export.php:103
|
1219 |
msgid "Import an ICS file."
|
1220 |
msgstr ""
|
1221 |
|
1222 |
+
#: ../includes/class-event-organiser-im-export.php:104
|
1223 |
msgid "Import venues"
|
1224 |
msgstr ""
|
1225 |
|
1226 |
+
#: ../includes/class-event-organiser-im-export.php:105
|
1227 |
msgid "Import categories"
|
1228 |
msgstr ""
|
1229 |
|
1230 |
+
#: ../includes/class-event-organiser-im-export.php:109
|
1231 |
msgid "Upload ICS file"
|
1232 |
msgstr ""
|
1233 |
|
1234 |
+
#: ../includes/class-event-organiser-im-export.php:160
|
1235 |
msgid "You do not have sufficient permissions to import events."
|
1236 |
msgstr ""
|
1237 |
|
1238 |
+
#: ../includes/class-event-organiser-im-export.php:242
|
1239 |
+
msgid "No events were imported."
|
|
|
|
|
|
|
1240 |
msgstr ""
|
1241 |
|
1242 |
+
#: ../includes/class-event-organiser-im-export.php:251
|
1243 |
+
msgid "Error:"
|
1244 |
msgstr ""
|
1245 |
|
1246 |
+
#: ../includes/class-event-organiser-im-export.php:261
|
1247 |
+
msgid "Warning:"
|
|
|
1248 |
msgstr ""
|
1249 |
|
1250 |
+
#: ../includes/class-event-organiser-im-export.php:266
|
1251 |
msgid "1 event was successfully imported"
|
1252 |
msgstr ""
|
1253 |
|
1254 |
+
#: ../includes/class-event-organiser-im-export.php:269
|
1255 |
#, php-format
|
1256 |
msgid "%d events were successfully imported"
|
1257 |
msgstr ""
|
1258 |
|
1259 |
+
#: ../includes/class-event-organiser-im-export.php:272
|
1260 |
msgid "1 venue was created"
|
1261 |
msgstr ""
|
1262 |
|
1263 |
+
#: ../includes/class-event-organiser-im-export.php:275
|
1264 |
#, php-format
|
1265 |
msgid "%d venues were created"
|
1266 |
msgstr ""
|
1267 |
|
1268 |
+
#: ../includes/class-event-organiser-im-export.php:279
|
1269 |
msgid "1 category was created"
|
1270 |
msgstr ""
|
1271 |
|
1272 |
+
#: ../includes/class-event-organiser-im-export.php:282
|
1273 |
#, php-format
|
1274 |
msgid "%d categories were created"
|
1275 |
msgstr ""
|
1276 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1277 |
#: ../includes/event-organiser-cpt.php:28
|
1278 |
msgid "Event Venues"
|
1279 |
msgstr ""
|
1280 |
|
1281 |
#: ../includes/event-organiser-cpt.php:31
|
1282 |
+
#: ../classes/class-eo-event-list-widget.php:47
|
1283 |
msgid "All Venues"
|
1284 |
msgstr ""
|
1285 |
|
1582 |
msgid "Assign the category a colour."
|
1583 |
msgstr ""
|
1584 |
|
1585 |
+
#: ../includes/class-eo-ical-parser.php:101
|
1586 |
msgid "There was an error detecting ICAL source."
|
1587 |
msgstr ""
|
1588 |
|
1589 |
+
#: ../includes/class-eo-ical-parser.php:147
|
1590 |
#, php-format
|
1591 |
msgid "There was an error fetching the feed. Response code: %s."
|
1592 |
msgstr ""
|
1593 |
|
1594 |
+
#: ../includes/class-eo-ical-parser.php:167
|
1595 |
msgid "There was an error opening the ICAL file."
|
1596 |
msgstr ""
|
1597 |
|
1598 |
+
#: ../includes/class-eo-ical-parser.php:273
|
1599 |
+
#: ../includes/class-eo-ical-parser.php:289
|
1600 |
+
#, php-format
|
1601 |
+
msgid "[Line %1$d]"
|
1602 |
+
msgstr ""
|
1603 |
+
|
1604 |
+
#: ../includes/class-eo-ical-parser.php:586
|
1605 |
+
#, php-format
|
1606 |
+
msgid "Invalid date \"%s\". Date expected in YYYYMMDD format."
|
1607 |
+
msgstr ""
|
1608 |
+
|
1609 |
+
#: ../includes/class-eo-ical-parser.php:624
|
1610 |
+
#, php-format
|
1611 |
+
msgid "Invalid datetime \"%s\". Date expected in YYYYMMDDTHHiissZ or YYYYMMDDTHHiiss format."
|
1612 |
+
msgstr ""
|
1613 |
+
|
1614 |
#: ../classes/class-eo-widget-categories.php:10
|
1615 |
msgid "A list or dropdown of event categories"
|
1616 |
msgstr ""
|
1642 |
|
1643 |
#: ../classes/class-eo-event-list-widget.php:31
|
1644 |
#: ../classes/class-eo-event-list-widget.php:58
|
|
|
|
|
1645 |
msgid "Title"
|
1646 |
msgstr ""
|
1647 |
|
1650 |
msgstr ""
|
1651 |
|
1652 |
#: ../classes/class-eo-event-list-widget.php:39
|
|
|
1653 |
msgid "Event categories"
|
1654 |
msgstr ""
|
1655 |
|
1656 |
#: ../classes/class-eo-event-list-widget.php:41
|
|
|
1657 |
msgid "List category slug(s), seperate by comma. Leave blank for all"
|
1658 |
msgstr ""
|
1659 |
|
1674 |
msgstr ""
|
1675 |
|
1676 |
#: ../classes/class-eo-event-list-widget.php:66
|
|
|
1677 |
msgid "Include past events"
|
1678 |
msgstr ""
|
1679 |
|
1714 |
msgid "Event venue"
|
1715 |
msgstr ""
|
1716 |
|
1717 |
+
#: ../classes/class-eo-calendar-widget.php:262
|
1718 |
msgid "Previous month"
|
1719 |
msgstr ""
|
1720 |
|
1721 |
+
#: ../classes/class-eo-calendar-widget.php:265
|
1722 |
msgid "Next month"
|
1723 |
msgstr ""
|
1724 |
|
1725 |
+
#: ../classes/class-eventorganiser-shortcodes.php:359
|
1726 |
msgid "There is no excerpt because this is a protected post."
|
1727 |
msgstr ""
|
1728 |
|
package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
{
|
2 |
"name": "event-organiser",
|
3 |
-
"version": "2.
|
4 |
"description": "Event mangement plugin for WordPress",
|
5 |
"main": "Gruntfile.js",
|
6 |
"repository": {
|
@@ -18,6 +18,7 @@
|
|
18 |
"grunt-contrib-jshint": "~0.6.3",
|
19 |
"grunt-shell": "~0.3.1",
|
20 |
"grunt-contrib-compress": "~0.5.2",
|
21 |
-
"grunt-wp-readme-to-markdown": "~0.
|
|
|
22 |
}
|
23 |
}
|
1 |
{
|
2 |
"name": "event-organiser",
|
3 |
+
"version": "2.4.0",
|
4 |
"description": "Event mangement plugin for WordPress",
|
5 |
"main": "Gruntfile.js",
|
6 |
"repository": {
|
18 |
"grunt-contrib-jshint": "~0.6.3",
|
19 |
"grunt-shell": "~0.3.1",
|
20 |
"grunt-contrib-compress": "~0.5.2",
|
21 |
+
"grunt-wp-readme-to-markdown": "~0.4.0",
|
22 |
+
"grunt-phpunit": "~0.3.0"
|
23 |
}
|
24 |
}
|
readme.md
CHANGED
@@ -3,8 +3,8 @@
|
|
3 |
**Donate link:** http://www.wp-event-organiser.com/donate
|
4 |
**Tags:** events, event, event categories, event organizer, events calendar, event management, ical, locations, google map, widget, venues, maps, gigs, shows,
|
5 |
**Requires at least:** 3.3
|
6 |
-
**Tested up to:** 3.
|
7 |
-
**Stable tag:** 2.
|
8 |
**License:** GPLv3
|
9 |
|
10 |
Create and maintain events, including complex reoccurring patterns, venue management (with Google maps), calendars and customisable event lists
|
@@ -201,6 +201,28 @@ More information on shortcodes is [available here](http://wp-event-organiser.com
|
|
201 |
|
202 |
## Changelog ##
|
203 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
### 2.3.2 ###
|
205 |
* Fixes bug (introduced in 2.3) with iCal export feed.
|
206 |
* Fixes conflict with Easy Content Types
|
@@ -219,8 +241,8 @@ More information on shortcodes is [available here](http://wp-event-organiser.com
|
|
219 |
* Adds option to disable front-end stylesheets
|
220 |
* Set event text colour (fullCalendar) according to event colour. Thanks to @mperry2. [See #108](https://github.com/stephenharris/Event-Organiser/pull/#108).
|
221 |
* Adds data attributes to widget calendar
|
222 |
-
|
223 |
-
|
224 |
* Checked compatability with 3.6.1
|
225 |
* Deprecated `eo_get_the_GoogleLink()` in favour of `eo_get_add_to_google_link()`. Fixes bugs.
|
226 |
* Fixes bug with quick edit (venue disappearing)
|
@@ -252,7 +274,7 @@ More information on shortcodes is [available here](http://wp-event-organiser.com
|
|
252 |
* Adds `eo_get_event_category_feed()` and `eo_get_event_venue_feed()` functions. See [docs](http://codex.wp-event-organiser.com).
|
253 |
* Fixes errors with "Organiser" metabox. [#106](https://github.com/stephenharris/Event-Organiser/pull/106)
|
254 |
* Fixes bug with `eo_get_event_classes()` function
|
255 |
-
|
256 |
* Added 'link to single event' option for widget calendar. If a day has only one event, link directly to that event, not the day archive.###
|
257 |
* Fixes conflict with Yoast SEO plug-in ( http://wordpress.org/support/topic/events-are-missing-information?replies=6 )
|
258 |
* Fixes colours not appearing on admin calendar drop-down [#109](https://github.com/stephenharris/Event-Organiser/pull/109)
|
@@ -422,9 +444,9 @@ More information on shortcodes is [available here](http://wp-event-organiser.com
|
|
422 |
* 'Under the hood' improvements
|
423 |
* Improved documentation & source-code comments
|
424 |
* More tags for shortcode & event list widget template - [see this page](http://wp-event-organiser.com/documentation/shortcodes/event-list-shortcode/)
|
425 |
-
|
426 |
* Various bug fixes and major code refactoring (especially of javascript).
|
427 |
-
|
428 |
|
429 |
A special thanks to **kuemerle** and **csaba-erdei**.
|
430 |
|
@@ -489,7 +511,7 @@ A special thanks to **kuemerle** and **csaba-erdei**.
|
|
489 |
* Fixes a weekly schedule bug, occurs for some users.
|
490 |
|
491 |
### 1.4 ###
|
492 |
-
|
493 |
* Introduces support for venue meta data and custom metaboxes (see )
|
494 |
* Improved venue admin page UI
|
495 |
|
@@ -510,7 +532,7 @@ A special thanks to **kuemerle** and **csaba-erdei**.
|
|
510 |
|
511 |
### 1.3.3 ###
|
512 |
* Added 'no events' option for event list widget
|
513 |
-
|
514 |
* Added hook `eventorganiser_calendar_event_link` to alter full calendar event link
|
515 |
* Added `eo_has_event_started`, `eo_has_event_finished`, `eo_event_color`,`eo_get_blog_timezone` functions
|
516 |
* Fixed the following bugs
|
@@ -589,7 +611,7 @@ A special thanks to **kuemerle** and **csaba-erdei**.
|
|
589 |
* Option to decide when event is past
|
590 |
* Show all occurrences of an event or 'group occurrences'
|
591 |
* Improved user-interface
|
592 |
-
|
593 |
* Localisation (currently translations for French and Portugese (Brazil) are included)
|
594 |
* Improved default templates
|
595 |
* Fixed bugs [reported here](http://www.harriswebsolutions.co.uk/event-organiser/forums/forum/bugs/)
|
3 |
**Donate link:** http://www.wp-event-organiser.com/donate
|
4 |
**Tags:** events, event, event categories, event organizer, events calendar, event management, ical, locations, google map, widget, venues, maps, gigs, shows,
|
5 |
**Requires at least:** 3.3
|
6 |
+
**Tested up to:** 3.7.1
|
7 |
+
**Stable tag:** 2.4
|
8 |
**License:** GPLv3
|
9 |
|
10 |
Create and maintain events, including complex reoccurring patterns, venue management (with Google maps), calendars and customisable event lists
|
201 |
|
202 |
## Changelog ##
|
203 |
|
204 |
+
### 2.4 ###
|
205 |
+
* iCal parser updated. Specifically:
|
206 |
+
- Improved timezone handling
|
207 |
+
- Support for 'COUNT' property
|
208 |
+
- Improved error & warning feedback
|
209 |
+
- Handle GEO tag
|
210 |
+
- Import venue latitude/longtitude
|
211 |
+
* Themes can switch off plug-in template handling from functions.php with `add_theme_support( 'event-organiser' )`
|
212 |
+
* Added support for `event_occurrence__not_in` in `eo_get_events()` and `WP_Query()`
|
213 |
+
* Improved MP6 compatability
|
214 |
+
* Add filter `eventorganiser_blog_is_24` (determines whether time-input should be 12 hour or 24 hour).
|
215 |
+
* Schedule meta for weekly schedule now optional (defaults to 'start' date)
|
216 |
+
* Unit tests added (largely for date generation & iCal parsing/generation)
|
217 |
+
* Fixes venues not appearing in Appearance > Menus
|
218 |
+
* Fixes bug with importing events that have no dates
|
219 |
+
* Fixes bug with importing all-day events across timezones
|
220 |
+
* Fixes bug with occurrence picker
|
221 |
+
* Fixes bug with modal overlay
|
222 |
+
* Code refactoring (old iCal parser removed)
|
223 |
+
* Updated translations: Arabic, Czech, Danish, German, Greek, Persian,
|
224 |
+
* Added translations: Indonesian
|
225 |
+
|
226 |
### 2.3.2 ###
|
227 |
* Fixes bug (introduced in 2.3) with iCal export feed.
|
228 |
* Fixes conflict with Easy Content Types
|
241 |
* Adds option to disable front-end stylesheets
|
242 |
* Set event text colour (fullCalendar) according to event colour. Thanks to @mperry2. [See #108](https://github.com/stephenharris/Event-Organiser/pull/#108).
|
243 |
* Adds data attributes to widget calendar
|
244 |
+
* Added translations: Arabic, Spanish (Peru), Persian, Slovakian, Slovenian
|
245 |
+
* Updated translations: Czech, German, Dutch, Portuguese (Portugal), Turkish, Ukrainian, Chinese
|
246 |
* Checked compatability with 3.6.1
|
247 |
* Deprecated `eo_get_the_GoogleLink()` in favour of `eo_get_add_to_google_link()`. Fixes bugs.
|
248 |
* Fixes bug with quick edit (venue disappearing)
|
274 |
* Adds `eo_get_event_category_feed()` and `eo_get_event_venue_feed()` functions. See [docs](http://codex.wp-event-organiser.com).
|
275 |
* Fixes errors with "Organiser" metabox. [#106](https://github.com/stephenharris/Event-Organiser/pull/106)
|
276 |
* Fixes bug with `eo_get_event_classes()` function
|
277 |
+
* Added 'show long events' otion for widget calendar: Show all days of events spanning multiple days on the widget calendar, not just the first.
|
278 |
* Added 'link to single event' option for widget calendar. If a day has only one event, link directly to that event, not the day archive.###
|
279 |
* Fixes conflict with Yoast SEO plug-in ( http://wordpress.org/support/topic/events-are-missing-information?replies=6 )
|
280 |
* Fixes colours not appearing on admin calendar drop-down [#109](https://github.com/stephenharris/Event-Organiser/pull/109)
|
444 |
* 'Under the hood' improvements
|
445 |
* Improved documentation & source-code comments
|
446 |
* More tags for shortcode & event list widget template - [see this page](http://wp-event-organiser.com/documentation/shortcodes/event-list-shortcode/)
|
447 |
+
* Extra hooks available, see: http://wp-event-organiser.com/documentation/developers/hooks/
|
448 |
* Various bug fixes and major code refactoring (especially of javascript).
|
449 |
+
* Improved default location for venues: https://github.com/stephenh1988/Event-Organiser/issues/3
|
450 |
|
451 |
A special thanks to **kuemerle** and **csaba-erdei**.
|
452 |
|
511 |
* Fixes a weekly schedule bug, occurs for some users.
|
512 |
|
513 |
### 1.4 ###
|
514 |
+
* A big update: venue address data migrated to new venue meta table
|
515 |
* Introduces support for venue meta data and custom metaboxes (see )
|
516 |
* Improved venue admin page UI
|
517 |
|
532 |
|
533 |
### 1.3.3 ###
|
534 |
* Added 'no events' option for event list widget
|
535 |
+
* Added template tags for widget/shortcode: `%cat_color%` and `%event_excerpt%`
|
536 |
* Added hook `eventorganiser_calendar_event_link` to alter full calendar event link
|
537 |
* Added `eo_has_event_started`, `eo_has_event_finished`, `eo_event_color`,`eo_get_blog_timezone` functions
|
538 |
* Fixed the following bugs
|
611 |
* Option to decide when event is past
|
612 |
* Show all occurrences of an event or 'group occurrences'
|
613 |
* Improved user-interface
|
614 |
+
* Added template functions: `eo_get_the_occurrences`, `eo_get_the_venues`, `eo_event_venue_dropdown`, `eo_event_category_dropdown`, `eo_is_allday`, `eo_get_the_GoogleLink`, `eo_get_events_feed`. See [template functions documentation](http://www.harriswebsolutions.co.uk/event-organiser/documentation/function-reference/)
|
615 |
* Localisation (currently translations for French and Portugese (Brazil) are included)
|
616 |
* Improved default templates
|
617 |
* Fixed bugs [reported here](http://www.harriswebsolutions.co.uk/event-organiser/forums/forum/bugs/)
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: stephenharris
|
|
3 |
Donate link: http://www.wp-event-organiser.com/donate
|
4 |
Tags: events, event, event categories, event organizer, events calendar, event management, ical, locations, google map, widget, venues, maps, gigs, shows,
|
5 |
Requires at least: 3.3
|
6 |
-
Tested up to: 3.
|
7 |
-
Stable tag: 2.
|
8 |
License: GPLv3
|
9 |
|
10 |
Create and maintain events, including complex reoccurring patterns, venue management (with Google maps), calendars and customisable event lists
|
@@ -189,6 +189,28 @@ More information on shortcodes is [available here](http://wp-event-organiser.com
|
|
189 |
|
190 |
== Changelog ==
|
191 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
192 |
= 2.3.2 =
|
193 |
* Fixes bug (introduced in 2.3) with iCal export feed.
|
194 |
* Fixes conflict with Easy Content Types
|
3 |
Donate link: http://www.wp-event-organiser.com/donate
|
4 |
Tags: events, event, event categories, event organizer, events calendar, event management, ical, locations, google map, widget, venues, maps, gigs, shows,
|
5 |
Requires at least: 3.3
|
6 |
+
Tested up to: 3.7.1
|
7 |
+
Stable tag: 2.4
|
8 |
License: GPLv3
|
9 |
|
10 |
Create and maintain events, including complex reoccurring patterns, venue management (with Google maps), calendars and customisable event lists
|
189 |
|
190 |
== Changelog ==
|
191 |
|
192 |
+
= 2.4 =
|
193 |
+
* iCal parser updated. Specifically:
|
194 |
+
- Improved timezone handling
|
195 |
+
- Support for 'COUNT' property
|
196 |
+
- Improved error & warning feedback
|
197 |
+
- Handle GEO tag
|
198 |
+
- Import venue latitude/longtitude
|
199 |
+
* Themes can switch off plug-in template handling from functions.php with `add_theme_support( 'event-organiser' )`
|
200 |
+
* Added support for `event_occurrence__not_in` in `eo_get_events()` and `WP_Query()`
|
201 |
+
* Improved MP6 compatability
|
202 |
+
* Add filter `eventorganiser_blog_is_24` (determines whether time-input should be 12 hour or 24 hour).
|
203 |
+
* Schedule meta for weekly schedule now optional (defaults to 'start' date)
|
204 |
+
* Unit tests added (largely for date generation & iCal parsing/generation)
|
205 |
+
* Fixes venues not appearing in Appearance > Menus
|
206 |
+
* Fixes bug with importing events that have no dates
|
207 |
+
* Fixes bug with importing all-day events across timezones
|
208 |
+
* Fixes bug with occurrence picker
|
209 |
+
* Fixes bug with modal overlay
|
210 |
+
* Code refactoring (old iCal parser removed)
|
211 |
+
* Updated translations: Arabic, Czech, Danish, German, Greek, Persian,
|
212 |
+
* Added translations: Indonesian
|
213 |
+
|
214 |
= 2.3.2 =
|
215 |
* Fixes bug (introduced in 2.3) with iCal export feed.
|
216 |
* Fixes conflict with Easy Content Types
|
templates/archive-event.php
CHANGED
@@ -90,7 +90,7 @@ get_header(); ?>
|
|
90 |
<!-- Display event meta list -->
|
91 |
<?php echo eo_get_event_meta_list(); ?>
|
92 |
|
93 |
-
<!-- Event
|
94 |
<?php the_excerpt(); ?>
|
95 |
|
96 |
</div><!-- .event-entry-meta -->
|
90 |
<!-- Display event meta list -->
|
91 |
<?php echo eo_get_event_meta_list(); ?>
|
92 |
|
93 |
+
<!-- Show Event text as 'the_excerpt' or 'the_content' -->
|
94 |
<?php the_excerpt(); ?>
|
95 |
|
96 |
</div><!-- .event-entry-meta -->
|
templates/taxonomy-event-category.php
CHANGED
@@ -87,7 +87,7 @@ get_header(); ?>
|
|
87 |
<!-- Display event meta list -->
|
88 |
<?php echo eo_get_event_meta_list(); ?>
|
89 |
|
90 |
-
<!-- Event
|
91 |
<?php the_excerpt(); ?>
|
92 |
|
93 |
</div><!-- .event-entry-meta -->
|
87 |
<!-- Display event meta list -->
|
88 |
<?php echo eo_get_event_meta_list(); ?>
|
89 |
|
90 |
+
<!-- Show Event text as 'the_excerpt' or 'the_content' -->
|
91 |
<?php the_excerpt(); ?>
|
92 |
|
93 |
</div><!-- .event-entry-meta -->
|
templates/taxonomy-event-tag.php
CHANGED
@@ -87,7 +87,7 @@ get_header(); ?>
|
|
87 |
<!-- Display event meta list -->
|
88 |
<?php echo eo_get_event_meta_list(); ?>
|
89 |
|
90 |
-
<!-- Event
|
91 |
<?php the_excerpt(); ?>
|
92 |
|
93 |
</div><!-- .event-entry-meta -->
|
87 |
<!-- Display event meta list -->
|
88 |
<?php echo eo_get_event_meta_list(); ?>
|
89 |
|
90 |
+
<!-- Show Event text as 'the_excerpt' or 'the_content' -->
|
91 |
<?php the_excerpt(); ?>
|
92 |
|
93 |
</div><!-- .event-entry-meta -->
|
templates/taxonomy-event-venue.php
CHANGED
@@ -87,7 +87,7 @@ get_header(); ?>
|
|
87 |
<!-- Display event meta list -->
|
88 |
<?php echo eo_get_event_meta_list(); ?>
|
89 |
|
90 |
-
<!-- Event
|
91 |
<?php the_excerpt(); ?>
|
92 |
|
93 |
</div><!-- .event-entry-meta -->
|
87 |
<!-- Display event meta list -->
|
88 |
<?php echo eo_get_event_meta_list(); ?>
|
89 |
|
90 |
+
<!-- Show Event text as 'the_excerpt' or 'the_content' -->
|
91 |
<?php the_excerpt(); ?>
|
92 |
|
93 |
</div><!-- .event-entry-meta -->
|