Booking Calendar - Version 4.1.5

Version Description

  • Support WordPress 3.6
Download this release

Release Info

Developer wpdevelop
Plugin Icon 128x128 Booking Calendar
Version 4.1.5
Comparing to
See all releases

Code changes from version 4.1.4 to 4.1.5

css/jquery-ui.css CHANGED
@@ -21,6 +21,7 @@
21
  border: 1px solid #AAAAAA;
22
  position: relative;
23
  overflow:visible !important;
 
24
  }
25
  .ui-resizable-handle {
26
  position: absolute;
@@ -90,30 +91,31 @@ body .ui-resizable-autohide .ui-resizable-handle { display: none; } /* use 'body
90
  top: 0px;
91
  }
92
  .ui-dialog-titlebar {
93
- /*resets*/margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none;
94
- padding: .5em 1.5em .5em 1em;
95
- color: #fff;
96
- border-bottom: 1px solid #DFDFDF;
97
- font-size: 1em;
98
- font-weight: bold;
99
- position: relative;
100
- -moz-border-radius:3px 3px 0 0;
101
- -webkit-border-radius:3px 3px 0 0;
102
- background: #777;
103
-
104
  }
 
105
  .ui-dialog-title {
106
  padding-left: 25px;
107
  }
108
  .ui-dialog-titlebar-close {
109
- /*resets*/margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none;
110
- background: url(../img/my-close.png) 0 0 no-repeat;
111
- position: absolute;
112
- right: -15px;
113
- top: -13px;
114
- width: 28px;
115
- height: 28px;
116
- z-index: 100;
 
117
  }
118
  .ui-dialog-titlebar-close-hover, .ui-dialog-titlebar-close:hover {
119
  background: url(../img/my-close.png) 0 0 no-repeat;
@@ -132,14 +134,22 @@ body .ui-resizable-autohide .ui-resizable-handle { display: none; } /* use 'body
132
  .ui-dialog-buttonpane {
133
  position: absolute;
134
  bottom: 0;
135
- width: 100%;
136
  text-align: center;
137
  border-top: 1px solid #DFDFDF;
138
  background: #ffffff;
139
  padding: 10px 0px;
 
 
 
 
 
 
 
140
  }
141
  .ui-dialog-buttonpane button {
142
  margin-right: 5px;
 
143
  }
144
  /* This file skins dialog */
145
  .ui-dialog.ui-draggable .ui-dialog-titlebar,
@@ -177,6 +187,7 @@ body .ui-resizable-autohide .ui-resizable-handle { display: none; } /* use 'body
177
  #wpdev_bk-dialog {
178
  padding: 0;
179
  padding-bottom: 25px;
 
180
  }
181
  .wpdev_bk-dialog-content {
182
  margin: 15px;
21
  border: 1px solid #AAAAAA;
22
  position: relative;
23
  overflow:visible !important;
24
+ z-index: 300005 !important;
25
  }
26
  .ui-resizable-handle {
27
  position: absolute;
91
  top: 0px;
92
  }
93
  .ui-dialog-titlebar {
94
+ /*resets*/margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none;
95
+ padding: .5em 1.5em .5em 1em;
96
+ color: #fff;
97
+ border-bottom: 1px solid #DFDFDF;
98
+ font-size: 1em;
99
+ font-weight: bold;
100
+ position: relative;
101
+ -moz-border-radius:3px 3px 0 0;
102
+ -webkit-border-radius:3px 3px 0 0;
103
+ background: url("../img/calendar-16x16.png") no-repeat scroll 10px 50% #777777 !important; /*#777;*/
 
104
  }
105
+
106
  .ui-dialog-title {
107
  padding-left: 25px;
108
  }
109
  .ui-dialog-titlebar-close {
110
+ /*resets*/margin: 0; padding: 0; border: 0 !important; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none;
111
+ background: url(../img/my-close.png) 0 0 no-repeat !important;
112
+ position: absolute!important;
113
+ right: 0px!important;
114
+ top: 2px!important;
115
+ margin:0px!important;
116
+ width: 28px!important;
117
+ height: 28px!important;
118
+ z-index: 100!important;
119
  }
120
  .ui-dialog-titlebar-close-hover, .ui-dialog-titlebar-close:hover {
121
  background: url(../img/my-close.png) 0 0 no-repeat;
134
  .ui-dialog-buttonpane {
135
  position: absolute;
136
  bottom: 0;
137
+ width: 685px;
138
  text-align: center;
139
  border-top: 1px solid #DFDFDF;
140
  background: #ffffff;
141
  padding: 10px 0px;
142
+ padding: 0 !important;
143
+ text-align: center;
144
+ }
145
+ .ui-dialog-buttonpane .ui-dialog-buttonset{
146
+ float: none !important;
147
+ padding: 5px;
148
+ text-align: center;
149
  }
150
  .ui-dialog-buttonpane button {
151
  margin-right: 5px;
152
+ float:none;
153
  }
154
  /* This file skins dialog */
155
  .ui-dialog.ui-draggable .ui-dialog-titlebar,
187
  #wpdev_bk-dialog {
188
  padding: 0;
189
  padding-bottom: 25px;
190
+ height:330px !important;
191
  }
192
  .wpdev_bk-dialog-content {
193
  margin: 15px;
img/Form-fields-64x64.png ADDED
Binary file
lib/wpdev-bk-edit-toolbar-buttons.php ADDED
@@ -0,0 +1,537 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php if ( (! isset( $_GET['merchant_return_link'] ) ) && (! isset( $_GET['payed_booking'] ) ) && (!function_exists ('get_option') ) ) { die('You do not have permission to direct access to this file !!!'); }
2
+
3
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4
+ // C u s t o m b u t t o n s ///////////////////////////////////////////////////////////////////////////////////////////////////////
5
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
6
+
7
+ if (!defined('WP_BK_PREFIX')) define('WP_BK_PREFIX', 'wpdev_bk' );
8
+ if (!defined('WP_BK_ICON_URL')) define('WP_BK_ICON_URL', WPDEV_BK_PLUGIN_URL . '/img/calendar-16x16.png' );
9
+ if (!defined('WP_BK_SETTINGS_CUSTOM_BUTTONS_FUNC_NAME_FROM_JS_FILE')) define('WP_BK_SETTINGS_CUSTOM_BUTTONS_FUNC_NAME_FROM_JS_FILE', 'set_bk_buttons'); //Edit this name at the JS file of custom buttons
10
+ if (!defined('WP_BK_SETTINGS_CUSTOM_EDITOR_BUTTON_ROW')) define('WP_BK_SETTINGS_CUSTOM_EDITOR_BUTTON_ROW', 1 );
11
+
12
+ function wpdev_bk_get_custom_buttons_settings() {
13
+ return array(
14
+ 'booking_insert' => array(
15
+ 'hint' => __('Insert booking calendar', 'wpdev-booking'),
16
+ 'title'=> __('Booking calendar', 'wpdev-booking'),
17
+ 'img'=> WP_BK_ICON_URL,
18
+ 'js_func_name_click' => 'booking_click',
19
+ 'bookmark' => 'booking',
20
+ 'class' => 'bookig_buttons',
21
+ 'is_close_bookmark' =>0
22
+ )
23
+ );
24
+ }
25
+
26
+ // C u s t o m b u t t o n s /////////////////////////////////////////////////////////////////////
27
+ function wpdev_bk_add_custom_buttons() {
28
+ // Don't bother doing this stuff if the current user lacks permissions
29
+ if ( ! current_user_can('edit_posts') && ! current_user_can('edit_pages') ) return;
30
+
31
+ // Add only in Rich Editor mode
32
+ if ( ( in_array( basename($_SERVER['PHP_SELF']), array('post-new.php', 'page-new.php', 'post.php', 'page.php') ) ) /*&& ( get_user_option('rich_editing') == 'true')*/ ) {
33
+
34
+ add_filter("mce_external_plugins", "wpdev_bk_mce_external_plugins" );
35
+
36
+ add_action( 'edit_form_advanced', 'wpdev_bk_add_custom_button_function' );
37
+ add_action( 'edit_page_form', 'wpdev_bk_add_custom_button_function' );
38
+
39
+ if ( 1 == WP_BK_SETTINGS_CUSTOM_EDITOR_BUTTON_ROW )
40
+ add_filter( 'mce_buttons', 'wpdev_bk_mce_buttons' );
41
+ else
42
+ add_filter( 'mce_buttons_' . WP_BK_SETTINGS_CUSTOM_EDITOR_BUTTON_ROW , 'wpdev_bk_mce_buttons' );
43
+
44
+ add_action( 'admin_head', 'wpdev_bk_custom_button_dialog_CSS' );
45
+ add_action( 'admin_footer', 'wpdev_bk_custom_button_dalog_structure_DIV' );
46
+
47
+ wp_enqueue_script( 'jquery-ui-dialog' );
48
+ wp_enqueue_style( 'wpdev-bk-jquery-ui', WPDEV_BK_PLUGIN_URL. '/css/jquery-ui.css', array(), 'wpdev-bk', 'screen' );
49
+ }
50
+ }
51
+
52
+ // Add button code to the tiny editor
53
+ function wpdev_bk_insert_wpdev_button() {
54
+
55
+ if ( count(wpdev_bk_get_custom_buttons_settings() ) > 0) {
56
+ ?> <script type="text/javascript"> <?php
57
+
58
+ echo ' function '. WP_BK_SETTINGS_CUSTOM_BUTTONS_FUNC_NAME_FROM_JS_FILE.'(ed, url) {';
59
+
60
+ $custom_buttons_settings = wpdev_bk_get_custom_buttons_settings();
61
+ foreach ( $custom_buttons_settings as $type => $props ) {
62
+ echo "if ( typeof ".$props['js_func_name_click']." == 'undefined' ) return;";
63
+ echo " ed.addButton('". WP_BK_PREFIX . '_' . $type ."', {";
64
+ echo " title : '". $props['hint'] ."',";
65
+ echo " image : '". $props['img'] ."',";
66
+ echo " onclick : function() {";
67
+ echo " ". $props['js_func_name_click'] ."('". $type ."');";
68
+ echo " }";
69
+ echo " });";
70
+ }
71
+ echo '}';
72
+
73
+ ?> </script> <?php
74
+ }
75
+ }
76
+
77
+ // Load the custom TinyMCE plugin
78
+ function wpdev_bk_mce_external_plugins( $plugins ) {
79
+ $plugins[WP_BK_PREFIX . '_quicktags'] = WPDEV_BK_PLUGIN_URL.'/js/custom_buttons/editor_plugin.js';
80
+ return $plugins;
81
+ }
82
+
83
+ // Add the custom TinyMCE buttons
84
+ function wpdev_bk_mce_buttons( $buttons ) {
85
+ //array_push( $buttons, "separator", 'wpdev_booking_insert', "separator" );
86
+ array_push( $buttons, "separator");
87
+ $custom_buttons_settings = wpdev_bk_get_custom_buttons_settings();
88
+ foreach ( $custom_buttons_settings as $type => $strings ) {
89
+ array_push( $buttons, WP_BK_PREFIX . '_' . $type );
90
+ }
91
+
92
+ return $buttons;
93
+ }
94
+
95
+ // Add the old style buttons to the non-TinyMCE editor views and output all of the JS for the button function + dialog box
96
+ function wpdev_bk_add_custom_button_function() {
97
+ $buttonshtml = '';
98
+ $datajs='';
99
+ $custom_buttons_settings = wpdev_bk_get_custom_buttons_settings();
100
+ foreach ( $custom_buttons_settings as $type => $props ) {
101
+
102
+ $buttonshtml .= '<input type="button" class="ed_button" onclick="'.$props['js_func_name_click'].'(\'' . $type . '\')" title="' . $props['hint'] . '" value="' . $props['title'] . '" />';
103
+
104
+ $datajs.= " wpdev_bk_Data['$type'] = {\n";
105
+ $datajs.= ' title: "' . esc_js( $props['title'] ) . '",' . "\n";
106
+ $datajs.= ' tag: "' . esc_js( $props['bookmark'] ) . '",' . "\n";
107
+ $datajs.= ' tag_close: "' . esc_js( $props['is_close_bookmark'] ) . '",' . "\n";
108
+ $datajs.= ' cal_count: "' . get_bk_option( 'booking_client_cal_count' ) . '"' . "\n";
109
+ $datajs.= "\n };\n";
110
+ }
111
+ ?><script type="text/javascript">
112
+ // <![CDATA[
113
+ var wpdev_bk_Data={};
114
+ <?php echo $datajs; ?>
115
+ var selected_booking_shortcode = 'bookingform';
116
+ // Set default heights (IE sucks) if ( jQuery.browser.msie ) { }
117
+
118
+ // This function is run when a button is clicked. It creates a dialog box for the user to input the data.
119
+ function booking_click( tag ) {
120
+
121
+ // Open the dialog while setting the width, height, title, buttons, etc. of it
122
+ var buttons = { "<?php echo esc_js(__('Ok', 'wpdev-booking')); ?>": wpdev_bk_ButtonOk,
123
+ "<?php echo esc_js(__('Cancel', 'wpdev-booking')); ?>": wpdev_bk_DialogClose
124
+ };
125
+ var title = wpdev_bk_Data[tag]["title"]; //'&lt;img src="<?php echo WP_BK_ICON_URL; ?>" /&ht; ' +
126
+
127
+ jQuery("#wpdev_bk-dialog").dialog({
128
+ autoOpen: false,
129
+ width: 700,
130
+ buttons:buttons,
131
+ draggable:false,
132
+ hide: 'slide',
133
+ resizable: false,
134
+ modal: true,
135
+ title: title
136
+ });/**/
137
+ // Reset the dialog box incase it's been used before
138
+ //jQuery("#wpdev_bk-dialog input").val("");
139
+ jQuery("#calendar_tag_name").val(wpdev_bk_Data[tag]['tag']);
140
+ jQuery("#calendar_tag_close").val(wpdev_bk_Data[tag]['tag_close']);
141
+ jQuery("#calendar_count").val(wpdev_bk_Data[tag]['cal_count']);
142
+ // Style the jQuery-generated buttons by adding CSS classes and add second CSS class to the "Okay" button
143
+ jQuery(".ui-dialog button").addClass("button").each(function(){
144
+ if ( "<?php echo esc_js(__('Ok', 'wpdev-booking')); ?>" == jQuery(this).html() ) jQuery(this).addClass("button-highlighted");
145
+ });
146
+
147
+ // Do some hackery on any links in the message -- jQuery(this).click() works weird with the dialogs, so we can't use it
148
+ jQuery("#wpdev_bk-dialog-content a").each(function(){
149
+ jQuery(this).attr("onclick", 'window.open( "' + jQuery(this).attr("href") + '", "_blank" );return false;' );
150
+ });
151
+
152
+ // Show the dialog now that it's done being manipulated
153
+ jQuery("#wpdev_bk-dialog").dialog("open");
154
+
155
+ // Focus the input field
156
+ jQuery("#wpdev_bk-dialog-input").focus();
157
+ }
158
+
159
+ // Close + reset
160
+ function wpdev_bk_DialogClose() {
161
+ jQuery("#wpdev_bk-dialog").dialog("close");
162
+ }
163
+
164
+ // Callback function for the "Okay" button
165
+ function wpdev_bk_ButtonOk() {
166
+
167
+ var cal_tag = selected_booking_shortcode;
168
+ if ( cal_tag == '' ) return wpdev_bk_DialogClose();
169
+ var text = '';
170
+ if (cal_tag == 'bookingform') { // Select the specific shortcode, depence from selection in shortcode section.
171
+
172
+ if (jQuery("#calendar_or_form").val() == 'form') cal_tag = 'booking';
173
+ if (jQuery("#calendar_or_form").val() == 'calendar') cal_tag = 'bookingcalendar';
174
+ if (jQuery("#calendar_or_form").val() == 'onlyform') cal_tag = 'bookingform';
175
+
176
+ text += '[' + cal_tag;
177
+
178
+ // Parameters Start:
179
+ if (jQuery("#calendar_type").length != 0 ) text += ' ' + 'type=' + jQuery("#calendar_type").val() ;
180
+
181
+ if (jQuery("#booking_form_type").length != 0 ) text += ' ' + 'form_type=\'' + jQuery("#booking_form_type").val() + '\'';
182
+
183
+ if (cal_tag != 'bookingform') {
184
+
185
+ if ( jQuery("#calendar_count").length != 0 ) text += ' ' + 'nummonths=' + jQuery("#calendar_count").val();
186
+
187
+ if ( jQuery("#start_month_active").attr('checked') ) text += ' ' + 'startmonth=\''+ jQuery("#year_start_month").val() +'-'+ jQuery("#month_start_month").val() + '\'';
188
+
189
+ } else { // Booking Form
190
+ text += ' ' + 'selected_dates=\''+ jQuery("#day_popup").val() +'.'+ jQuery("#month_popup").val()+'.'+ jQuery("#year_popup").val() +'\'';
191
+ }
192
+
193
+ <?php //if ( class_exists('wpdev_bk_biz_m')) { ?>
194
+ if ( ( jQuery("#bookingcalendar_options").length != 0 ) && (jQuery("#bookingcalendar_options").val()!='') ) text += ' ' + 'options=\'' + jQuery("#bookingcalendar_options").val() + '\'';
195
+ <?php //} ?>
196
+ // Parameters End !
197
+
198
+ } else if (cal_tag == 'bookingsearch') { // Select search form or search results
199
+
200
+ var selected_bookingsearch_type = jQuery("#bookingsearch_type:checked");
201
+ if (selected_bookingsearch_type.val() == 'bookingsearch') cal_tag = 'bookingsearch';
202
+ if (selected_bookingsearch_type.val() == 'bookingsearchresults') cal_tag = 'bookingsearchresults';
203
+
204
+ text += '[' + cal_tag;
205
+
206
+
207
+ if (cal_tag == 'bookingsearch' ) {
208
+ // Parameters Start:
209
+ if ( jQuery("#search_at_diff_page").attr('checked') ) {
210
+ text += ' ' + 'searchresults=\''+ jQuery("#bookingsearch_searchresults").val() + '\'';
211
+ }
212
+
213
+ if (jQuery("#bookingsearch_noresultstitle").length != 0 ) text += ' ' + 'noresultstitle=\'' + jQuery("#bookingsearch_noresultstitle").val() + '\'';
214
+ if (jQuery("#bookingsearch_searchresultstitle").length != 0 ) text += ' ' + 'searchresultstitle=\'' + jQuery("#bookingsearch_searchresultstitle").val() + '\'';
215
+
216
+ <?php if ( class_exists('wpdev_bk_multiuser')) { ?>
217
+ if ( ( jQuery("#bookingsearch_users").length != 0 ) && (jQuery("#bookingsearch_users").val()!='') ) text += ' ' + 'users=\'' + jQuery("#bookingsearch_users").val() + '\'';
218
+ <?php } ?>
219
+ // Parameters End !
220
+ }
221
+
222
+ } else if (cal_tag == 'bookingselect') { // Select search form or search results
223
+ text += '[' + cal_tag;
224
+
225
+ // Parameters Start:
226
+ if ( jQuery("#bookingselect_title").length != 0 ) text += ' ' + 'label=\'' + jQuery("#bookingselect_title").val()+ '\'';
227
+ if ( jQuery("#bookingselect_form_type").length != 0 ) text += ' ' + 'form_type=\'' + jQuery("#bookingselect_form_type").val()+ '\'';
228
+ if ( jQuery("#bookingselect_calendar_count").length != 0 ) text += ' ' + 'nummonths=' + jQuery("#bookingselect_calendar_count").val();
229
+ if ( jQuery("#bookingselect_resources").length != 0 ) {
230
+ var selectedOptions = jQuery('#bookingselect_resources option:selected');
231
+ var selectedValues = jQuery.map(selectedOptions ,function(option) { if (option.value != '') {return option.value;} }).join(',');
232
+ text += ' ' + 'type=\'' + selectedValues+ '\'';
233
+ }
234
+ // Parameters End !
235
+
236
+ } else {
237
+ text += '[' + cal_tag;
238
+ }
239
+ text += ']';
240
+
241
+ if ( jQuery("#calendar_tag_close").length != 0 )
242
+ if ( jQuery("#calendar_tag_close").val() != 0)
243
+ text += '[/' + cal_tag + ']';
244
+
245
+ wpdev_bk_send_to_editor(text);
246
+ wpdev_bk_DialogClose();
247
+ }
248
+
249
+ function wpdev_bk_send_to_editor(h) {
250
+ var ed, mce = typeof(tinymce) != 'undefined', qt = typeof(QTags) != 'undefined';
251
+
252
+ if ( !wpActiveEditor ) {
253
+ if ( mce && tinymce.activeEditor ) {
254
+ ed = tinymce.activeEditor;
255
+ wpActiveEditor = ed.id;
256
+ } else if ( !qt ) {
257
+ return false;
258
+ }
259
+ } else if ( mce ) {
260
+ if ( tinymce.activeEditor && (tinymce.activeEditor.id == 'mce_fullscreen' || tinymce.activeEditor.id == 'wp_mce_fullscreen') )
261
+ ed = tinymce.activeEditor;
262
+ else
263
+ ed = tinymce.get(wpActiveEditor);
264
+ }
265
+
266
+ if ( ed && !ed.isHidden() ) {
267
+ // restore caret position on IE
268
+ if ( tinymce.isIE && ed.windowManager.insertimagebookmark )
269
+ ed.selection.moveToBookmark(ed.windowManager.insertimagebookmark);
270
+
271
+ if ( h.indexOf('[caption') !== -1 ) {
272
+ if ( ed.wpSetImgCaption )
273
+ h = ed.wpSetImgCaption(h);
274
+ } else if ( h.indexOf('[gallery') !== -1 ) {
275
+ if ( ed.plugins.wpgallery )
276
+ h = ed.plugins.wpgallery._do_gallery(h);
277
+ } else if ( h.indexOf('[embed') === 0 ) {
278
+ if ( ed.plugins.wordpress )
279
+ h = ed.plugins.wordpress._setEmbed(h);
280
+ }
281
+
282
+ ed.execCommand('mceInsertContent', false, h);
283
+ } else if ( qt ) {
284
+ QTags.insertContent(h);
285
+ } else {
286
+ document.getElementById(wpActiveEditor).value += h;
287
+ }
288
+
289
+ try{tb_remove();}catch(e){};
290
+ }
291
+
292
+ function add_booking_html_button(){ // Add the buttons to the HTML view
293
+ if (jQuery("#ed_toolbar").length == 0) setTimeout("add_booking_html_button()",100);
294
+ else jQuery("#ed_toolbar").append('<?php echo wp_specialchars_decode(esc_js( $buttonshtml ), ENT_COMPAT); ?>');
295
+ }
296
+
297
+ // On page load...
298
+ jQuery(document).ready(function(){
299
+
300
+ setTimeout("add_booking_html_button()",100);
301
+
302
+ // If the Enter key is pressed inside an input in the dialog, do the "Okay" button event
303
+ jQuery("#wpdev_bk-dialog :input").keyup(function(event){
304
+ if ( 13 == event.keyCode ) // 13 == Enter
305
+ wpdev_bk_ButtonOkay();
306
+ });
307
+
308
+ // Make help links open in a new window to avoid loosing the post contents
309
+ jQuery("#wpdev_bk-dialog-slide a").each(function(){
310
+ jQuery(this).click(function(){
311
+ window.open( jQuery(this).attr("href"), "_blank" );
312
+ return false;
313
+ });
314
+ });
315
+ });
316
+ // ]]>
317
+ </script><?php
318
+ }
319
+
320
+ // Output the <div> used to display the dialog box
321
+ function wpdev_bk_custom_button_dalog_structure_DIV() { ?>
322
+ <div class="hidden">
323
+ <div id="wpdev_bk-dialog">
324
+ <div class="wpdev_bk-dialog-content">
325
+ <div class="wpdev_bk-dialog-inputs">
326
+
327
+ <?php
328
+ $is_can = apply_bk_filter('multiuser_is_user_can_be_here', true, 'only_super_admin');
329
+ if ($is_can) make_bk_action('show_tabs_inside_insertion_popup_window');
330
+ ?>
331
+
332
+
333
+ <div id="popup_new_reservation" style="display:block;width:auto;" class="booking_configuration_dialog">
334
+ <div id="popup_new_reservation_main_content">
335
+
336
+ <?php if( get_bk_version() !== 'free' ) {
337
+ $types_list = get_bk_types(false, false); ?>
338
+ <div class="field">
339
+ <div style="float:left;">
340
+ <label for="calendar_type"><?php _e('Booking resource:', 'wpdev-booking'); ?></label>
341
+ <select id="calendar_type" name="calendar_type">
342
+ <?php foreach ($types_list as $tl) { ?>
343
+ <option value="<?php echo $tl->id; ?>"
344
+ style="<?php if (isset($tl->parent)) if ($tl->parent == 0 ) { echo 'font-weight:bold;'; } else { echo 'font-size:11px;padding-left:20px;'; } ?>"
345
+ ><?php echo $tl->title; ?></option>
346
+ <?php } ?>
347
+ </select>
348
+ </div>
349
+ <div class="description"><?php _e('For booking, select type of booking resource', 'wpdev-booking'); ?></div>
350
+ </div>
351
+ <?php } ?>
352
+
353
+ <?php
354
+ $is_can = apply_bk_filter('multiuser_is_user_can_be_here', true, 'only_super_admin');
355
+ if ($is_can) make_bk_action('wpdev_show_bk_form_selection') ;
356
+ ?>
357
+
358
+ <div class="field">
359
+ <div style="float:left;">
360
+ <label for="calendar_count"><?php _e('Visible months:', 'wpdev-booking'); ?></label>
361
+ <!--input id="calendar_count" name="calendar_count" class="input" type="text" value="<?php echo get_bk_option( 'booking_client_cal_count' ); ?>" -->
362
+ <select id="calendar_count" name="calendar_count" >
363
+ <option value="1" <?php if (get_bk_option( 'booking_client_cal_count' )== '1') echo ' selected="SELECTED" ' ?> >1</option>
364
+ <option value="2" <?php if (get_bk_option( 'booking_client_cal_count' )== '2') echo ' selected="SELECTED" ' ?> >2</option>
365
+ <option value="3" <?php if (get_bk_option( 'booking_client_cal_count' )== '3') echo ' selected="SELECTED" ' ?> >3</option>
366
+ <option value="4" <?php if (get_bk_option( 'booking_client_cal_count' )== '4') echo ' selected="SELECTED" ' ?> >4</option>
367
+ <option value="5" <?php if (get_bk_option( 'booking_client_cal_count' )== '5') echo ' selected="SELECTED" ' ?> >5</option>
368
+ <option value="6" <?php if (get_bk_option( 'booking_client_cal_count' )== '6') echo ' selected="SELECTED" ' ?> >6</option>
369
+ <option value="7" <?php if (get_bk_option( 'booking_client_cal_count' )== '7') echo ' selected="SELECTED" ' ?> >7</option>
370
+ <option value="8" <?php if (get_bk_option( 'booking_client_cal_count' )== '8') echo ' selected="SELECTED" ' ?> >8</option>
371
+ <option value="9" <?php if (get_bk_option( 'booking_client_cal_count' )== '9') echo ' selected="SELECTED" ' ?> >9</option>
372
+ <option value="10" <?php if (get_bk_option( 'booking_client_cal_count' )== '10') echo ' selected="SELECTED" ' ?> >10</option>
373
+ <option value="11" <?php if (get_bk_option( 'booking_client_cal_count' )== '11') echo ' selected="SELECTED" ' ?> >11</option>
374
+ <option value="12" <?php if (get_bk_option( 'booking_client_cal_count' )== '12') echo ' selected="SELECTED" ' ?> >12</option>
375
+ </select>
376
+ </div>
377
+ <div class="description"><?php _e('Select number of month to show for calendar.', 'wpdev-booking'); ?></div>
378
+ </div>
379
+
380
+ <div class="field">
381
+ <div style="float:left;">
382
+ <label for="calendar_count"><?php _e('Start month:', 'wpdev-booking'); ?></label>
383
+ <input id="start_month_active" name="start_month_active" onchange="javascript:if(! this.checked){ jQuery('select.start_month').attr('disabled', 'disabled'); } else {jQuery('select.start_month').removeAttr('disabled');}" type="checkbox" style="pading:0px;margin:0px;width:auto;" />
384
+ <select class="start_month" id="year_start_month" disabled="DISABLED" name="year_start_month" style="width:65px;" > <?php for ($mi = 2011; $mi < 2030; $mi++) { echo '<option value="'.$mi.'" >'.$mi.'</option>'; } ?> </select> /
385
+ <select class="start_month" id="month_start_month" disabled="DISABLED" name="month_start_month" style="width:50px;" > <?php for ($mi = 1; $mi < 13; $mi++) { if ($mi<10) {$mi ='0'.$mi;} echo '<option value="'.$mi.'" >'.$mi.'</option>'; } ?> </select>
386
+ </div>
387
+
388
+ <div class="description" style="float:left;width:300px;"><?php _e('Select start month of calendar', 'wpdev-booking'); ?></div>
389
+ </div>
390
+
391
+ <div class="field">
392
+ <div style="float:left;">
393
+ <label for="calendar_count"><?php _e('Show:', 'wpdev-booking'); ?></label>
394
+ <select id="calendar_or_form" name="calendar_or_form" style="width:210px;" onchange="
395
+ javascript: if(this.value=='onlyform') document.getElementById('dates_for_form').style.display='block'; else document.getElementById('dates_for_form').style.display='none';
396
+ ">
397
+ <option value="form"><?php _e('Booking form with calendar', 'wpdev-booking'); ?></option>
398
+ <option value="calendar"><?php _e('Only availability calendar', 'wpdev-booking'); ?></option>
399
+ <?php if (class_exists('wpdev_bk_biz_l')) { ?><option value="onlyform"><?php _e('Only booking form', 'wpdev-booking'); ?></option><?php } ?>
400
+ </select>
401
+ <?php if (class_exists('wpdev_bk_biz_l')) { ?><div style="float:right;margin-left:5px;display:none;" id="dates_for_form"> <?php _e('for','wpdev-booking'); ?>
402
+ <select id="year_popup" name="year_popup" style="width:65px;" > <?php for ($mi = 2010; $mi < 2030; $mi++) { echo '<option value="'.$mi.'" >'.$mi.'</option>'; } ?> </select> /
403
+ <select id="month_popup" name="month_popup" style="width:50px;" > <?php for ($mi = 1; $mi < 13; $mi++) { if ($mi<10) {$mi ='0'.$mi;} echo '<option value="'.$mi.'" >'.$mi.'</option>'; } ?> </select> /
404
+ <select id="day_popup" name="day_popup" style="width:50px;" > <?php for ($mi = 1; $mi < 32; $mi++) { if ($mi<10) {$mi ='0'.$mi;} echo '<option value="'.$mi.'" >'.$mi.'</option>'; } ?> </select> <?php _e('date','wpdev-booking'); ?>.
405
+ </div><?php } ?>
406
+ </div>
407
+ <div style="height:1px;clear:both;"></div>
408
+ <div class="description" style="float:left;margin-left:160px;width:auto;"><?php _e('Select what you want to show: the entire booking form, or the availability calendar only.', 'wpdev-booking'); ?></div>
409
+ </div>
410
+
411
+ <?php make_bk_action('show_additional_arguments_for_shortcode'); ?>
412
+ </div>
413
+
414
+
415
+ <div style="height:1px;clear:both;width:100%;"></div>
416
+ <div style="width:100%;display:none;">
417
+ <div style="color:#21759B;cursor: pointer;font-weight: bold;float:left;"
418
+ onclick="javascript: jQuery('.bk_show_options_parameter').toggle(1);
419
+ jQuery('#togle_options_parameter').slideToggle('normal');
420
+ jQuery('#popup_new_reservation_main_content').slideToggle('normal');"
421
+ style="text-decoration: none;font-weight: bold;font-size: 11px;">
422
+ <span class="bk_show_options_parameter">+ <span style="border-bottom:1px dashed #21759B;"><?php _e('Show advanced settings', 'wpdev-booking'); ?></span></span>
423
+ <span class="bk_show_options_parameter" style="display:none;">- <span style="border-bottom:1px dashed #21759B;"><?php _e('Hide advanced settings', 'wpdev-booking'); ?></span></span>
424
+ </div>
425
+ <div class="bk_show_options_parameter description" style="color:#777;width: 480px;"><?php
426
+ printf(__('Setting advanced parameters of the calendar. %sLike width, height and structure %s', 'wpdev-booking'),'<em>','</em>');
427
+ if ( class_exists('wpdev_bk_biz_m'))
428
+ printf(__('%s or minimum and fixed number of days selection for the specific day of week or season.%s', 'wpdev-booking'),'<em>','</em>'); ?></div>
429
+ <div style="height:1px;clear:both;width:100%;"></div>
430
+ </div>
431
+ <div style="height:1px;clear:both;width:100%;"></div>
432
+ <div class="field0" id="togle_options_parameter" style="display:none;margin:10px;">
433
+ <div class="bk_help_message" style="margin:5px 0px;"><?php printf(__('Please read more about the possible customizations of these %soptions%s %shere%s', 'wpdev-booking'),'<strong>','</strong>','<a href="http://wpbookingcalendar.com/help/booking-calendar-shortcodes/" target="_blank">','</a>'); ?></div>
434
+ <strong><span for="bookingcalendar_options"><?php _e('Options:', 'wpdev-booking'); ?></span></strong><br/>
435
+ <textarea id="bookingcalendar_options" name="bookingcalendar_options" style="width:100%; height:50px;"></textarea>
436
+ <span class="description" style="width:99%;">
437
+ <?php printf(__('Specify the full width of calendar, height of date cell and number of months in one row. ', 'wpdev-booking')); ?><br/>
438
+ <div style="margin-left:35px;">
439
+ <strong><?php _e('Description','wpdev-booking'); ?>: </strong>
440
+ "<?php echo(__('Calendar have 2 months in a row, the cell height is 30px and calendar full width 568px (possible to use percentage for width: 100%)', 'wpdev-booking')); ?>"<br/>
441
+ <strong><?php _e('Code Example','wpdev-booking'); ?>: </strong>
442
+ <?php echo '<code>{calendar months_num_in_row=2 width=568px cell_height=30px}</code>'; ?>
443
+ </div><br/>
444
+ <?php if ( class_exists('wpdev_bk_biz_m')) { ?>
445
+ <?php printf(__('Specify that during certain seasons (or days of week), the specific minimum number of days must be booked. ', 'wpdev-booking')); ?><br/>
446
+ <div style="margin-left:35px;">
447
+ <strong><?php _e('Description','wpdev-booking'); ?>: </strong>
448
+ "<?php printf(__('Visitor can select only 4 days starting at Monday, 3 or 7 days – Friday, 2 days – Saturday, etc…', 'wpdev-booking')); ?>"<br/>
449
+ <strong><?php _e('Code Example','wpdev-booking'); ?>: </strong>
450
+ <?php echo '<code>{select-day condition="weekday" for="1" value="4"},{select-day condition="weekday" for="5" value="3,7"},{select-day condition="weekday" for="6" value="2"}</code>'; ?>
451
+ </div>
452
+ <?php } ?>
453
+ </span>
454
+ </div>
455
+
456
+
457
+ </div>
458
+
459
+ <?php make_bk_action('show_insertion_popup_shortcode_for_bookingedit'); ?>
460
+
461
+ <input id="calendar_tag_name" name="calendar_tag_name" class="input" type="hidden" >
462
+ <input id="calendar_tag_close" name="calendar_tag_close" class="input" type="hidden" >
463
+ </div>
464
+ </div>
465
+ </div>
466
+ </div>
467
+ <div id="wpdev_bk-precacher">
468
+ <img src="<?php echo WPDEV_BK_PLUGIN_URL.'/js/custom_buttons//img_dialog_ui/333333_7x7_arrow_right.gif'; ?>" alt="" />
469
+ <img src="<?php echo WPDEV_BK_PLUGIN_URL.'/js/custom_buttons/img_dialog_ui/333333_7x7_arrow_down.gif'; ?>" alt="" />
470
+ </div><?php
471
+ }
472
+
473
+ // Hide TinyMCE buttons the user doesn't want to see + some misc editor CSS
474
+ function wpdev_bk_custom_button_dialog_CSS() {
475
+ global $user_ID;
476
+ // Attempt to match the dialog box to the admin colors
477
+ if ( 'classic' == get_user_option('admin_color', $user_ID) ) {
478
+ $color = '#fff';
479
+ $background = '#777';
480
+ } else {
481
+ $color = '#fff';
482
+ $background = '#777';
483
+ }?>
484
+ <style type='text/css'>
485
+ #wpdev_bk-precacher {
486
+ display: none;
487
+ }
488
+ .ui-dialog-titlebar {
489
+ color: <?php echo $color; ?>;
490
+ background: <?php echo $background; ?>;
491
+ }
492
+ <?php
493
+ $custom_buttons_settings = wpdev_bk_get_custom_buttons_settings();
494
+ foreach ($custom_buttons_settings as $type => $props) {
495
+ echo '#content_' . WP_BK_PREFIX . '_' . $type . ' img.mceIcon{
496
+ width:16px;
497
+ height:16px;
498
+ margin:2px auto;0
499
+ }';
500
+ }
501
+ ?>
502
+ .ui-dialog-title img{
503
+ margin:3px auto;
504
+ width:16px;
505
+ height:16px;
506
+ }
507
+ #wpdev_bk-dialog .field {
508
+ height:30px;
509
+ line-height:25px;
510
+ margin:0px 0px 5px;}
511
+ #wpdev_bk-dialog .field label {float:left; padding-right:10px;width:155px;text-align:left; font-weight:bold;}
512
+ #wpdev_bk-dialog .wpdev_bk-dialog-inputs {float:left;}
513
+ #wpdev_bk-dialog input ,#wpdev_bk-dialog select { width:120px; }
514
+ #wpdev_bk-dialog .input_check {width:10px; margin:5px 10px;text-align:center;}
515
+ #wpdev_bk-dialog .dialog-wraper {float:left;width:100%;}
516
+ #wpdev_bk-dialog .description {
517
+ color:#666666;
518
+ float:right;
519
+ padding:0 5px;
520
+ text-align:left;
521
+ width:350px;
522
+ }
523
+ .ui-dialog-buttonset button { margin:0 5px !important}
524
+ .bk_help_message{
525
+ background-color: #FFFFE0;
526
+ border: 1px solid #E6DB55;
527
+ border-radius: 3px;
528
+ margin:0 0 10px;
529
+ padding: 5px;
530
+ width: 98%;
531
+ color:#777;
532
+ }
533
+ <?php make_bk_action('show_insertion_popup_css_for_tabs'); ?>
534
+ </style>
535
+ <?php
536
+ }
537
+ ?>
lib/wpdev-booking-class.php CHANGED
@@ -35,8 +35,11 @@ class wpdev_booking {
35
  add_action('wp_head',array(&$this, 'client_side_print_booking_head'));
36
 
37
  // Add custom buttons
38
- add_action( 'init', array(&$this,'add_custom_buttons') );
39
- add_action( 'admin_head', array(&$this,'insert_wpdev_button'));
 
 
 
40
 
41
  // Remove the scripts, which generated conflicts
42
  add_action('admin_init', array(&$this, 'wpdevbk_remove_conflict_scripts'), 999);
35
  add_action('wp_head',array(&$this, 'client_side_print_booking_head'));
36
 
37
  // Add custom buttons
38
+ // add_action( 'init', array(&$this,'add_custom_buttons') );
39
+ // add_action( 'admin_head', array(&$this,'insert_wpdev_button'));
40
+ // Add custom buttons
41
+ add_action( 'init', 'wpdev_bk_add_custom_buttons') ;
42
+ add_action( 'admin_head', 'wpdev_bk_insert_wpdev_button');
43
 
44
  // Remove the scripts, which generated conflicts
45
  add_action('admin_init', array(&$this, 'wpdevbk_remove_conflict_scripts'), 999);
readme.txt CHANGED
@@ -2,14 +2,15 @@
2
  Contributors: wpdevelop
3
  Donate link: http://wpbookingcalendar.com/buy/
4
  Tags: booking calendar, booking, bookings, to book, calendar, reservation, calendar, hotel, rooms, rent, appointment, scheduling, availability, availability calendar, event, events, event calendar, resource scheduling, rental, meeting scheduling, reservation plugin, accommodations, bookable, bookable events
5
- Requires at least: 2.7
6
- Tested up to: 3.5.2
7
- Stable tag: 4.1.4
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
  Booking Calendar - its plugin for online reservation and availability checking service for your site.
12
  == Description ==
 
13
 
14
  This Wordpress plugin will enable <strong>online booking services</strong> for your site. Visitors to your site will be able to <strong>check availability</strong> of apartments, houses, hotel rooms, or services you offer. They can also <strong>make reservations and appointments</strong> with the ability to choose from multi-day, single day, or by the hour booking. Your clients can even view and register for upcoming events. With integrated payment support of popular payment systems your clients can pay online.
15
 
@@ -35,8 +36,8 @@ You can view a live demo of Booking Calendar in action <a href="http://wpbooking
35
  * Booking calendar widget
36
  * Validations of required form fields and email field
37
  * Multi language support ( Check all available languages at this <a href="http://wordpress.org/extend/plugins/booking/other_notes/">page</a> )
38
- * Much more ... Check all other features <a href="http://wpbookingcalendar.com/features/" title="Booking Calendar Live Demo">here</a>.
39
-
40
 
41
  == Installation ==
42
  <strong style="color:#f50;">Because of update CSS and JS files, please clear browser cache, after you made this update!!!</strong>
@@ -65,6 +66,8 @@ If you have any further questions, please fill free to <a href="mailto:info@wpbo
65
  9. General Booking Settings page.
66
  10. Booking Listing (Filters tab) admin panel. Apply filter, for looking of your required bookings.
67
  == Changelog ==
 
 
68
  = 4.1.4 =
69
  * Fix several warning notices in the plugin, if the WP_DEBUG constant is set to true at the config.php file.
70
  * Showing one calendar and the warning message if at the same visible page is showing booking forms or calendars of the same booking resource more than one time.
2
  Contributors: wpdevelop
3
  Donate link: http://wpbookingcalendar.com/buy/
4
  Tags: booking calendar, booking, bookings, to book, calendar, reservation, calendar, hotel, rooms, rent, appointment, scheduling, availability, availability calendar, event, events, event calendar, resource scheduling, rental, meeting scheduling, reservation plugin, accommodations, bookable, bookable events
5
+ Requires at least: 3.2
6
+ Tested up to: 3.6
7
+ Stable tag: 4.1.5
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
  Booking Calendar - its plugin for online reservation and availability checking service for your site.
12
  == Description ==
13
+ [Plugin Homepage](http://wpbookingcalendar.com/) | [Features](http://wpbookingcalendar.com/features/) | [Support Forum](http://wpbookingcalendar.com/support/) | [FAQ](http://wpbookingcalendar.com/faq/) | [Premium Demos](http://wpbookingcalendar.com/demo/)
14
 
15
  This Wordpress plugin will enable <strong>online booking services</strong> for your site. Visitors to your site will be able to <strong>check availability</strong> of apartments, houses, hotel rooms, or services you offer. They can also <strong>make reservations and appointments</strong> with the ability to choose from multi-day, single day, or by the hour booking. Your clients can even view and register for upcoming events. With integrated payment support of popular payment systems your clients can pay online.
16
 
36
  * Booking calendar widget
37
  * Validations of required form fields and email field
38
  * Multi language support ( Check all available languages at this <a href="http://wordpress.org/extend/plugins/booking/other_notes/">page</a> )
39
+ * Much more ...
40
+ * Check all other features <a href="http://wpbookingcalendar.com/features/" title="Booking Calendar Features list">here</a>.
41
 
42
  == Installation ==
43
  <strong style="color:#f50;">Because of update CSS and JS files, please clear browser cache, after you made this update!!!</strong>
66
  9. General Booking Settings page.
67
  10. Booking Listing (Filters tab) admin panel. Apply filter, for looking of your required bookings.
68
  == Changelog ==
69
+ = 4.1.5 =
70
+ * Support WordPress 3.6
71
  = 4.1.4 =
72
  * Fix several warning notices in the plugin, if the WP_DEBUG constant is set to true at the config.php file.
73
  * Showing one calendar and the warning message if at the same visible page is showing booking forms or calendars of the same booking resource more than one time.
wpdev-booking.php CHANGED
@@ -3,10 +3,10 @@
3
  Plugin Name: Booking Calendar
4
  Plugin URI: http://wpbookingcalendar.com/demo/
5
  Description: Online reservation and availability checking service for your site.
6
- Version: 4.1.4
7
  Author: wpdevelop
8
  Author URI: http://wpbookingcalendar.com/
9
- Tested WordPress Versions: 2.8.3 - 3.5.2
10
  */
11
 
12
  /* Copyright 2009 - 2013 www.wpbookingcalendar.com (email: info@wpbookingcalendar.com),
@@ -33,6 +33,9 @@ Tested WordPress Versions: 2.8.3 - 3.5.2
33
  -----------------------------------------------
34
  Change Log and Features for Future Releases :
35
  -----------------------------------------------
 
 
 
36
  = 4.1.4 =
37
  * Personal / Business Small / Business Medium / Business Large / MultiUser versions features:
38
  *
@@ -171,6 +174,9 @@ Change Log and Features for Future Releases :
171
  if (file_exists(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-bk-lib.php')) { // S u p p o r t l i b
172
  require_once(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-bk-lib.php' ); }
173
 
 
 
 
174
  if (file_exists(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-booking-class.php')) // C L A S S B o o k i n g
175
  { require_once(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-booking-class.php' ); }
176
 
3
  Plugin Name: Booking Calendar
4
  Plugin URI: http://wpbookingcalendar.com/demo/
5
  Description: Online reservation and availability checking service for your site.
6
+ Version: 4.1.5
7
  Author: wpdevelop
8
  Author URI: http://wpbookingcalendar.com/
9
+ Tested WordPress Versions: 3.2 - 3.6
10
  */
11
 
12
  /* Copyright 2009 - 2013 www.wpbookingcalendar.com (email: info@wpbookingcalendar.com),
33
  -----------------------------------------------
34
  Change Log and Features for Future Releases :
35
  -----------------------------------------------
36
+ = 4.1.5 =
37
+ * Support WordPress 3.6
38
+
39
  = 4.1.4 =
40
  * Personal / Business Small / Business Medium / Business Large / MultiUser versions features:
41
  *
174
  if (file_exists(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-bk-lib.php')) { // S u p p o r t l i b
175
  require_once(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-bk-lib.php' ); }
176
 
177
+ if (file_exists(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-bk-edit-toolbar-buttons.php')) { // B o o k i n g B u t t o n s in E d i t t o o l b a r
178
+ require_once(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-bk-edit-toolbar-buttons.php' ); }
179
+
180
  if (file_exists(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-booking-class.php')) // C L A S S B o o k i n g
181
  { require_once(WPDEV_BK_PLUGIN_DIR. '/lib/wpdev-booking-class.php' ); }
182