Contact Form 7 - Version 4.8

Version Description

  • Stopped using jquery.form.js.
  • Added custom REST API endpoints for Ajax form submissions.
  • WPCF7_FormTag class implements ArrayAccess interface.
  • WPCF7_FormTagsManager::filter() filters form-tags based on features they support.
  • New form-tag features: do-not-store, display-block, and display-hidden
  • Removed inappropriate content from h1 headings.
  • Added the support of size:invisible option to the reCAPTCHA form-tag.
Download this release

Release Info

Developer takayukister
Plugin Icon 128x128 Contact Form 7
Version 4.8
Comparing to
See all releases

Code changes from version 4.7 to 4.8

Files changed (52) hide show
  1. admin/admin.php +10 -4
  2. admin/edit-contact-form.php +11 -5
  3. admin/js/scripts.js +15 -15
  4. admin/js/tag-generator.js +18 -18
  5. includes/config-validator.php +0 -2
  6. includes/contact-form.php +19 -18
  7. includes/controller.php +18 -129
  8. includes/form-tag.php +28 -5
  9. includes/form-tags-manager.php +56 -35
  10. includes/formatting.php +6 -1
  11. includes/js/jquery-ui/themes/smoothness/images/animated-overlay.gif +0 -0
  12. includes/js/jquery-ui/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  13. includes/js/jquery-ui/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  14. includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  15. includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  16. includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  17. includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  18. includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  19. includes/js/jquery-ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  20. includes/js/jquery-ui/themes/smoothness/images/ui-icons_222222_256x240.png +0 -0
  21. includes/js/jquery-ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  22. includes/js/jquery-ui/themes/smoothness/images/ui-icons_454545_256x240.png +0 -0
  23. includes/js/jquery-ui/themes/smoothness/images/ui-icons_888888_256x240.png +0 -0
  24. includes/js/jquery-ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  25. includes/js/jquery-ui/themes/smoothness/jquery-ui.css +125 -77
  26. includes/js/jquery-ui/themes/smoothness/jquery-ui.min.css +5 -3
  27. includes/js/jquery-ui/themes/smoothness/{jquery.ui.theme.css → theme.css} +29 -25
  28. includes/js/jquery.form.js +0 -1277
  29. includes/js/jquery.form.min.js +0 -11
  30. includes/js/scripts.js +345 -372
  31. includes/mail.php +20 -25
  32. includes/rest-api.php +83 -0
  33. includes/submission.php +26 -4
  34. modules/acceptance.php +16 -10
  35. modules/akismet.php +5 -4
  36. modules/checkbox.php +16 -14
  37. modules/count.php +0 -3
  38. modules/date.php +2 -5
  39. modules/file.php +0 -4
  40. modules/flamingo.php +10 -6
  41. modules/hidden.php +6 -3
  42. modules/number.php +2 -5
  43. modules/quiz.php +24 -13
  44. modules/really-simple-captcha.php +169 -108
  45. modules/recaptcha.php +62 -39
  46. modules/response.php +2 -1
  47. modules/select.php +7 -6
  48. modules/submit.php +0 -2
  49. modules/text.php +17 -12
  50. modules/textarea.php +0 -4
  51. readme.txt +14 -21
  52. wp-contact-form-7.php +4 -4
admin/admin.php CHANGED
@@ -330,7 +330,7 @@ function wpcf7_admin_enqueue_scripts( $hook_suffix ) {
330
$config_validator->collect_error_messages();
331
}
332
333
- wp_localize_script( 'wpcf7-admin', '_wpcf7', $args );
334
335
add_thickbox();
336
@@ -361,11 +361,15 @@ function wpcf7_admin_management_page() {
361
?>
362
<div class="wrap">
363
364
- <h1><?php
365
echo esc_html( __( 'Contact Forms', 'contact-form-7' ) );
366
367
if ( current_user_can( 'wpcf7_edit_contact_forms' ) ) {
368
- echo ' <a href="' . esc_url( menu_page_url( 'wpcf7-new', false ) ) . '" class="add-new-h2">' . esc_html( __( 'Add New', 'contact-form-7' ) ) . '</a>';
369
}
370
371
if ( ! empty( $_REQUEST['s'] ) ) {
@@ -373,7 +377,9 @@ function wpcf7_admin_management_page() {
373
. __( 'Search results for &#8220;%s&#8221;', 'contact-form-7' )
374
. '</span>', esc_html( $_REQUEST['s'] ) );
375
}
376
- ?></h1>
377
378
<?php do_action( 'wpcf7_admin_warnings' ); ?>
379
<?php wpcf7_welcome_panel(); ?>
330
$config_validator->collect_error_messages();
331
}
332
333
+ wp_localize_script( 'wpcf7-admin', 'wpcf7', $args );
334
335
add_thickbox();
336
361
?>
362
<div class="wrap">
363
364
+ <h1 class="wp-heading-inline"><?php
365
echo esc_html( __( 'Contact Forms', 'contact-form-7' ) );
366
+ ?></h1>
367
368
+ <?php
369
if ( current_user_can( 'wpcf7_edit_contact_forms' ) ) {
370
+ echo sprintf( '<a href="%1$s" class="add-new-h2">%2$s</a>',
371
+ esc_url( menu_page_url( 'wpcf7-new', false ) ),
372
+ esc_html( __( 'Add New', 'contact-form-7' ) ) );
373
}
374
375
if ( ! empty( $_REQUEST['s'] ) ) {
377
. __( 'Search results for &#8220;%s&#8221;', 'contact-form-7' )
378
. '</span>', esc_html( $_REQUEST['s'] ) );
379
}
380
+ ?>
381
+
382
+ <hr class="wp-header-end">
383
384
<?php do_action( 'wpcf7_admin_warnings' ); ?>
385
<?php wpcf7_welcome_panel(); ?>
admin/edit-contact-form.php CHANGED
@@ -31,18 +31,24 @@ function wpcf7_admin_save_button( $post_id ) {
31
32
?><div class="wrap">
33
34
- <h1><?php
35
if ( $post->initial() ) {
36
echo esc_html( __( 'Add New Contact Form', 'contact-form-7' ) );
37
} else {
38
echo esc_html( __( 'Edit Contact Form', 'contact-form-7' ) );
39
-
40
- if ( current_user_can( 'wpcf7_edit_contact_forms' ) ) {
41
- echo ' <a href="' . esc_url( menu_page_url( 'wpcf7-new', false ) ) . '" class="add-new-h2">' . esc_html( __( 'Add New', 'contact-form-7' ) ) . '</a>';
42
- }
43
}
44
?></h1>
45
46
<?php do_action( 'wpcf7_admin_warnings' ); ?>
47
<?php do_action( 'wpcf7_admin_notices' ); ?>
48
31
32
?><div class="wrap">
33
34
+ <h1 class="wp-heading-inline"><?php
35
if ( $post->initial() ) {
36
echo esc_html( __( 'Add New Contact Form', 'contact-form-7' ) );
37
} else {
38
echo esc_html( __( 'Edit Contact Form', 'contact-form-7' ) );
39
}
40
?></h1>
41
42
+ <?php
43
+ if ( ! $post->initial() && current_user_can( 'wpcf7_edit_contact_forms' ) ) {
44
+ echo sprintf( '<a href="%1$s" class="add-new-h2">%2$s</a>',
45
+ esc_url( menu_page_url( 'wpcf7-new', false ) ),
46
+ esc_html( __( 'Add New', 'contact-form-7' ) ) );
47
+ }
48
+ ?>
49
+
50
+ <hr class="wp-header-end">
51
+
52
<?php do_action( 'wpcf7_admin_warnings' ); ?>
53
<?php do_action( 'wpcf7_admin_notices' ); ?>
54
admin/js/scripts.js CHANGED
@@ -2,7 +2,7 @@
2
3
'use strict';
4
5
- if ( typeof _wpcf7 === 'undefined' || _wpcf7 === null ) {
6
return;
7
}
8
@@ -25,7 +25,7 @@
25
} );
26
27
$( '#contact-form-editor' ).tabs( {
28
- active: _wpcf7.activeTab,
29
activate: function( event, ui ) {
30
$( '#active-tab' ).val( ui.newTab.index() );
31
}
@@ -77,14 +77,14 @@
77
78
$.ajax( {
79
method: 'POST',
80
- url: _wpcf7.apiSettings.root +
81
'contact-form-7/v1/contact-forms/' + postId,
82
beforeSend: function( xhr ) {
83
- xhr.setRequestHeader( 'X-WP-Nonce', _wpcf7.apiSettings.nonce );
84
},
85
data: data
86
} ).done( function( response ) {
87
- _wpcf7.configValidator.errors = response.config_errors;
88
$.wpcf7UpdateConfigErrors();
89
} );
90
} );
@@ -111,8 +111,8 @@
111
} );
112
113
if ( changed ) {
114
- event.returnValue = _wpcf7.saveAlert;
115
- return _wpcf7.saveAlert;
116
}
117
} );
118
@@ -140,7 +140,7 @@
140
};
141
142
$.wpcf7UpdateConfigErrors = function() {
143
- var errors = _wpcf7.configValidator.errors;
144
var errorCount = {
145
total: 0,
146
};
@@ -166,7 +166,7 @@
166
'class': 'external dashicons dashicons-external'
167
} ).append( $( '<span></span>' ).attr( {
168
'class': 'screen-reader-text'
169
- } ).text( _wpcf7.configValidator.howToCorrect ) );
170
171
$li = $li.append( ' ' ).append( $link );
172
}
@@ -212,11 +212,11 @@
212
.append( '<span class="dashicons dashicons-warning"></span> ' );
213
214
if ( 1 < errorCount[tab] ) {
215
- var manyErrorsInTab = _wpcf7.configValidator.manyErrorsInTab
216
.replace( '%d', errorCount[tab] );
217
$tabPanelError.append( manyErrorsInTab );
218
} else {
219
- $tabPanelError.append( _wpcf7.configValidator.oneErrorInTab );
220
}
221
}
222
} );
@@ -231,18 +231,18 @@
231
232
if ( 1 < errorCount.total ) {
233
$warning.append(
234
- _wpcf7.configValidator.manyErrors.replace( '%d', errorCount.total )
235
);
236
} else {
237
- $warning.append( _wpcf7.configValidator.oneError );
238
}
239
240
var $link = $( '<a></a>' ).attr( {
241
- 'href': _wpcf7.configValidator.docUrl,
242
'class': 'external dashicons dashicons-external'
243
} ).append( $( '<span></span>' ).attr( {
244
'class': 'screen-reader-text'
245
- } ).text( _wpcf7.configValidator.howToCorrect ) );
246
247
$warning.append( ' ' ).append( $link );
248
2
3
'use strict';
4
5
+ if ( typeof wpcf7 === 'undefined' || wpcf7 === null ) {
6
return;
7
}
8
25
} );
26
27
$( '#contact-form-editor' ).tabs( {
28
+ active: wpcf7.activeTab,
29
activate: function( event, ui ) {
30
$( '#active-tab' ).val( ui.newTab.index() );
31
}
77
78
$.ajax( {
79
method: 'POST',
80
+ url: wpcf7.apiSettings.root +
81
'contact-form-7/v1/contact-forms/' + postId,
82
beforeSend: function( xhr ) {
83
+ xhr.setRequestHeader( 'X-WP-Nonce', wpcf7.apiSettings.nonce );
84
},
85
data: data
86
} ).done( function( response ) {
87
+ wpcf7.configValidator.errors = response.config_errors;
88
$.wpcf7UpdateConfigErrors();
89
} );
90
} );
111
} );
112
113
if ( changed ) {
114
+ event.returnValue = wpcf7.saveAlert;
115
+ return wpcf7.saveAlert;
116
}
117
} );
118
140
};
141
142
$.wpcf7UpdateConfigErrors = function() {
143
+ var errors = wpcf7.configValidator.errors;
144
var errorCount = {
145
total: 0,
146
};
166
'class': 'external dashicons dashicons-external'
167
} ).append( $( '<span></span>' ).attr( {
168
'class': 'screen-reader-text'
169
+ } ).text( wpcf7.configValidator.howToCorrect ) );
170
171
$li = $li.append( ' ' ).append( $link );
172
}
212
.append( '<span class="dashicons dashicons-warning"></span> ' );
213
214
if ( 1 < errorCount[tab] ) {
215
+ var manyErrorsInTab = wpcf7.configValidator.manyErrorsInTab
216
.replace( '%d', errorCount[tab] );
217
$tabPanelError.append( manyErrorsInTab );
218
} else {
219
+ $tabPanelError.append( wpcf7.configValidator.oneErrorInTab );
220
}
221
}
222
} );
231
232
if ( 1 < errorCount.total ) {
233
$warning.append(
234
+ wpcf7.configValidator.manyErrors.replace( '%d', errorCount.total )
235
);
236
} else {
237
+ $warning.append( wpcf7.configValidator.oneError );
238
}
239
240
var $link = $( '<a></a>' ).attr( {
241
+ 'href': wpcf7.configValidator.docUrl,
242
'class': 'external dashicons dashicons-external'
243
} ).append( $( '<span></span>' ).attr( {
244
'class': 'screen-reader-text'
245
+ } ).text( wpcf7.configValidator.howToCorrect ) );
246
247
$warning.append( ' ' ).append( $link );
248
admin/js/tag-generator.js CHANGED
@@ -2,15 +2,15 @@
2
3
'use strict';
4
5
- if ( typeof _wpcf7 === 'undefined' || _wpcf7 === null ) {
6
return;
7
}
8
9
- _wpcf7.taggen = {};
10
11
$( function() {
12
$( 'form.tag-generator-panel' ).each( function() {
13
- _wpcf7.taggen.update( $( this ) );
14
} );
15
} );
16
@@ -20,19 +20,19 @@
20
21
$( 'form.tag-generator-panel .control-box :input' ).change( function() {
22
var $form = $( this ).closest( 'form.tag-generator-panel' );
23
- _wpcf7.taggen.normalize( $( this ) );
24
- _wpcf7.taggen.update( $form );
25
} );
26
27
$( 'input.insert-tag' ).click( function() {
28
var $form = $( this ).closest( 'form.tag-generator-panel' );
29
var tag = $form.find( 'input.tag' ).val();
30
- _wpcf7.taggen.insert( tag );
31
tb_remove(); // close thickbox
32
return false;
33
} );
34
35
- _wpcf7.taggen.update = function( $form ) {
36
var id = $form.attr( 'data-id' );
37
var name = '';
38
var name_fields = $form.find( 'input[name="name"]' );
@@ -46,8 +46,8 @@
46
}
47
}
48
49
- if ( $.isFunction( _wpcf7.taggen.update[ id ] ) ) {
50
- return _wpcf7.taggen.update[ id ].call( this, $form );
51
}
52
53
$form.find( 'input.tag' ).each( function() {
@@ -61,7 +61,7 @@
61
tag_type += '*';
62
}
63
64
- var components = _wpcf7.taggen.compose( tag_type, $form );
65
$( this ).val( components );
66
} );
67
@@ -72,14 +72,14 @@
72
} );
73
};
74
75
- _wpcf7.taggen.update.captcha = function( $form ) {
76
- var captchac = _wpcf7.taggen.compose( 'captchac', $form );
77
- var captchar = _wpcf7.taggen.compose( 'captchar', $form );
78
79
$form.find( 'input.tag' ).val( captchac + ' ' + captchar );
80
};
81
82
- _wpcf7.taggen.compose = function( tagType, $form ) {
83
var name = $form.find( 'input[name="name"]' ).val();
84
var scope = $form.find( '.scope.' + tagType );
85
@@ -156,7 +156,7 @@
156
return '[' + components + ']';
157
};
158
159
- _wpcf7.taggen.normalize = function( $input ) {
160
var val = $input.val();
161
162
if ( $input.is( 'input[name="name"]' ) ) {
@@ -205,17 +205,17 @@
205
$input.val( val );
206
207
if ( $input.is( ':checkbox.exclusive' ) ) {
208
- _wpcf7.taggen.exclusiveCheckbox( $input );
209
}
210
};
211
212
- _wpcf7.taggen.exclusiveCheckbox = function( $cb ) {
213
if ( $cb.is( ':checked' ) ) {
214
$cb.siblings( ':checkbox.exclusive' ).prop( 'checked', false );
215
}
216
};
217
218
- _wpcf7.taggen.insert = function( content ) {
219
$( 'textarea#wpcf7-form' ).each( function() {
220
this.focus();
221
2
3
'use strict';
4
5
+ if ( typeof wpcf7 === 'undefined' || wpcf7 === null ) {
6
return;
7
}
8
9
+ wpcf7.taggen = {};
10
11
$( function() {
12
$( 'form.tag-generator-panel' ).each( function() {
13
+ wpcf7.taggen.update( $( this ) );
14
} );
15
} );
16
20
21
$( 'form.tag-generator-panel .control-box :input' ).change( function() {
22
var $form = $( this ).closest( 'form.tag-generator-panel' );
23
+ wpcf7.taggen.normalize( $( this ) );
24
+ wpcf7.taggen.update( $form );
25
} );
26
27
$( 'input.insert-tag' ).click( function() {
28
var $form = $( this ).closest( 'form.tag-generator-panel' );
29
var tag = $form.find( 'input.tag' ).val();
30
+ wpcf7.taggen.insert( tag );
31
tb_remove(); // close thickbox
32
return false;
33
} );
34
35
+ wpcf7.taggen.update = function( $form ) {
36
var id = $form.attr( 'data-id' );
37
var name = '';
38
var name_fields = $form.find( 'input[name="name"]' );
46
}
47
}
48
49
+ if ( $.isFunction( wpcf7.taggen.update[ id ] ) ) {
50
+ return wpcf7.taggen.update[ id ].call( this, $form );
51
}
52
53
$form.find( 'input.tag' ).each( function() {
61
tag_type += '*';
62
}
63
64
+ var components = wpcf7.taggen.compose( tag_type, $form );
65
$( this ).val( components );
66
} );
67
72
} );
73
};
74
75
+ wpcf7.taggen.update.captcha = function( $form ) {
76
+ var captchac = wpcf7.taggen.compose( 'captchac', $form );
77
+ var captchar = wpcf7.taggen.compose( 'captchar', $form );
78
79
$form.find( 'input.tag' ).val( captchac + ' ' + captchar );
80
};
81
82
+ wpcf7.taggen.compose = function( tagType, $form ) {
83
var name = $form.find( 'input[name="name"]' ).val();
84
var scope = $form.find( '.scope.' + tagType );
85
156
return '[' + components + ']';
157
};
158
159
+ wpcf7.taggen.normalize = function( $input ) {
160
var val = $input.val();
161
162
if ( $input.is( 'input[name="name"]' ) ) {
205
$input.val( val );
206
207
if ( $input.is( ':checkbox.exclusive' ) ) {
208
+ wpcf7.taggen.exclusiveCheckbox( $input );
209
}
210
};
211
212
+ wpcf7.taggen.exclusiveCheckbox = function( $cb ) {
213
if ( $cb.is( ':checked' ) ) {
214
$cb.siblings( ':checkbox.exclusive' ).prop( 'checked', false );
215
}
216
};
217
218
+ wpcf7.taggen.insert = function( content ) {
219
$( 'textarea#wpcf7-form' ).each( function() {
220
this.focus();
221
includes/config-validator.php CHANGED
@@ -323,8 +323,6 @@ class WPCF7_ConfigValidator {
323
$fields_count = 0;
324
325
foreach ( $tags as $tag ) {
326
- $tag = new WPCF7_FormTag( $tag );
327
-
328
$is_multiple_controls_container = wpcf7_form_tag_supports(
329
$tag->type, 'multiple-controls-container' );
330
323
$fields_count = 0;
324
325
foreach ( $tags as $tag ) {
326
$is_multiple_controls_container = wpcf7_form_tag_supports(
327
$tag->type, 'multiple-controls-container' );
328
includes/contact-form.php CHANGED
@@ -398,14 +398,19 @@ class WPCF7_ContactForm {
398
399
private function form_hidden_fields() {
400
$hidden_fields = array(
401
- '_wpcf7' => $this->id,
402
'_wpcf7_version' => WPCF7_VERSION,
403
- '_wpcf7_locale' => $this->locale,
404
'_wpcf7_unit_tag' => $this->unit_tag,
405
);
406
407
if ( WPCF7_VERIFY_NONCE ) {
408
- $hidden_fields['_wpnonce'] = wpcf7_create_nonce( $this->id );
409
}
410
411
$hidden_fields += (array) apply_filters(
@@ -592,7 +597,7 @@ class WPCF7_ContactForm {
592
$mailtags = array();
593
594
foreach ( (array) $tags as $tag ) {
595
- $type = trim( $tag['type'], ' *' );
596
597
if ( empty( $type ) ) {
598
continue;
@@ -606,7 +611,7 @@ class WPCF7_ContactForm {
606
}
607
}
608
609
- $mailtags[] = $tag['name'];
610
}
611
612
$mailtags = array_unique( array_filter( $mailtags ) );
@@ -643,7 +648,7 @@ class WPCF7_ContactForm {
643
}
644
}
645
646
- public function submit( $ajax = false ) {
647
$submission = WPCF7_Submission::get_instance( $this );
648
649
$result = array(
@@ -658,23 +663,19 @@ class WPCF7_ContactForm {
658
}
659
660
if ( $submission->is( 'mail_sent' ) ) {
661
- if ( $ajax ) {
662
- $on_sent_ok = $this->additional_setting( 'on_sent_ok', false );
663
664
- if ( ! empty( $on_sent_ok ) ) {
665
- $result['scripts_on_sent_ok'] = array_map(
666
- 'wpcf7_strip_quote', $on_sent_ok );
667
- }
668
}
669
}
670
671
- if ( $ajax ) {
672
- $on_submit = $this->additional_setting( 'on_submit', false );
673
674
- if ( ! empty( $on_submit ) ) {
675
- $result['scripts_on_submit'] = array_map(
676
- 'wpcf7_strip_quote', $on_submit );
677
- }
678
}
679
680
do_action( 'wpcf7_submit', $this, $result );
398
399
private function form_hidden_fields() {
400
$hidden_fields = array(
401
+ '_wpcf7' => $this->id(),
402
'_wpcf7_version' => WPCF7_VERSION,
403
+ '_wpcf7_locale' => $this->locale(),
404
'_wpcf7_unit_tag' => $this->unit_tag,
405
+ '_wpcf7_container_post' => 0,
406
);
407
408
+ if ( in_the_loop() ) {
409
+ $hidden_fields['_wpcf7_container_post'] = (int) get_the_ID();
410
+ }
411
+
412
if ( WPCF7_VERIFY_NONCE ) {
413
+ $hidden_fields['_wpcf7_nonce'] = wpcf7_create_nonce( $this->id );
414
}
415
416
$hidden_fields += (array) apply_filters(
597
$mailtags = array();
598
599
foreach ( (array) $tags as $tag ) {
600
+ $type = $tag->basetype;
601
602
if ( empty( $type ) ) {
603
continue;
611
}
612
}
613
614
+ $mailtags[] = $tag->name;
615
}
616
617
$mailtags = array_unique( array_filter( $mailtags ) );
648
}
649
}
650
651
+ public function submit() {
652
$submission = WPCF7_Submission::get_instance( $this );
653
654
$result = array(
663
}
664
665
if ( $submission->is( 'mail_sent' ) ) {
666
+ $on_sent_ok = $this->additional_setting( 'on_sent_ok', false );
667
668
+ if ( ! empty( $on_sent_ok ) ) {
669
+ $result['scripts_on_sent_ok'] = array_map(
670
+ 'wpcf7_strip_quote', $on_sent_ok );
671
}
672
}
673
674
+ $on_submit = $this->additional_setting( 'on_submit', false );
675
676
+ if ( ! empty( $on_submit ) ) {
677
+ $result['scripts_on_submit'] = array_map(
678
+ 'wpcf7_strip_quote', $on_submit );
679
}
680
681
do_action( 'wpcf7_submit', $this, $result );
includes/controller.php CHANGED
@@ -3,127 +3,17 @@
3
add_action( 'wp_loaded', 'wpcf7_control_init' );
4
5
function wpcf7_control_init() {
6
- if ( ! isset( $_SERVER['REQUEST_METHOD'] ) ) {
7
return;
8
}
9
10
- if ( 'GET' == $_SERVER['REQUEST_METHOD'] ) {
11
- if ( isset( $_GET['_wpcf7_is_ajax_call'] ) ) {
12
- wpcf7_ajax_onload();
13
- }
14
- }
15
-
16
- if ( 'POST' == $_SERVER['REQUEST_METHOD'] ) {
17
- if ( isset( $_POST['_wpcf7_is_ajax_call'] ) ) {
18
- wpcf7_ajax_json_echo();
19
- }
20
-
21
- wpcf7_submit_nonajax();
22
- }
23
- }
24
-
25
- function wpcf7_ajax_onload() {
26
- $echo = '';
27
- $items = array();
28
-
29
- if ( isset( $_GET['_wpcf7'] )
30
- && $contact_form = wpcf7_contact_form( (int) $_GET['_wpcf7'] ) ) {
31
- $items = apply_filters( 'wpcf7_ajax_onload', $items );
32
- }
33
-
34
- $echo = wp_json_encode( $items );
35
-
36
- if ( wpcf7_is_xhr() ) {
37
- @header( 'Content-Type: application/json; charset=' . get_option( 'blog_charset' ) );
38
- echo $echo;
39
- }
40
-
41
- exit();
42
- }
43
-
44
- function wpcf7_ajax_json_echo() {
45
- $echo = '';
46
-
47
if ( isset( $_POST['_wpcf7'] ) ) {
48
- $id = (int) $_POST['_wpcf7'];
49
- $unit_tag = wpcf7_sanitize_unit_tag( $_POST['_wpcf7_unit_tag'] );
50
-
51
- if ( $contact_form = wpcf7_contact_form( $id ) ) {
52
- $items = array(
53
- 'mailSent' => false,
54
- 'into' => '#' . $unit_tag,
55
- 'captcha' => null,
56
- );
57
-
58
- $result = $contact_form->submit( true );
59
-
60
- if ( ! empty( $result['message'] ) ) {
61
- $items['message'] = $result['message'];
62
- }
63
-
64
- if ( 'mail_sent' == $result['status'] ) {
65
- $items['mailSent'] = true;
66
- }
67
-
68
- if ( 'validation_failed' == $result['status'] ) {
69
- $invalids = array();
70
-
71
- foreach ( $result['invalid_fields'] as $name => $field ) {
72
- $invalids[] = array(
73
- 'into' => 'span.wpcf7-form-control-wrap.'
74
- . sanitize_html_class( $name ),
75
- 'message' => $field['reason'],
76
- 'idref' => $field['idref'],
77
- );
78
- }
79
-
80
- $items['invalids'] = $invalids;
81
- }
82
-
83
- if ( 'spam' == $result['status'] ) {
84
- $items['spam'] = true;
85
- }
86
-
87
- if ( ! empty( $result['scripts_on_sent_ok'] ) ) {
88
- $items['onSentOk'] = $result['scripts_on_sent_ok'];
89
- }
90
-
91
- if ( ! empty( $result['scripts_on_submit'] ) ) {
92
- $items['onSubmit'] = $result['scripts_on_submit'];
93
- }
94
-
95
- $items = apply_filters( 'wpcf7_ajax_json_echo', $items, $result );
96
- }
97
- }
98
-
99
- $echo = wp_json_encode( $items );
100
-
101
- if ( wpcf7_is_xhr() ) {
102
- @header( 'Content-Type: application/json; charset=' . get_option( 'blog_charset' ) );
103
- echo $echo;
104
- } else {
105
- @header( 'Content-Type: text/html; charset=' . get_option( 'blog_charset' ) );
106
- echo '<textarea>' . $echo . '</textarea>';
107
- }
108
-
109
- exit();
110
- }
111
-
112
- function wpcf7_is_xhr() {
113
- if ( ! isset( $_SERVER['HTTP_X_REQUESTED_WITH'] ) ) {
114
- return false;
115
- }
116
117
- return $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest';
118
- }
119
-
120
- function wpcf7_submit_nonajax() {
121
- if ( ! isset( $_POST['_wpcf7'] ) ) {
122
- return;
123
- }
124
-
125
- if ( $contact_form = wpcf7_contact_form( (int) $_POST['_wpcf7'] ) ) {
126
- $contact_form->submit();
127
}
128
}
129
@@ -154,13 +44,6 @@ function wpcf7_do_enqueue_scripts() {
154
}
155
156
function wpcf7_enqueue_scripts() {
157
- // jquery.form.js originally bundled with WordPress is out of date and deprecated
158
- // so we need to deregister it and re-register the latest one
159
- wp_deregister_script( 'jquery-form' );
160
- wp_register_script( 'jquery-form',
161
- wpcf7_plugin_url( 'includes/js/jquery.form.min.js' ),
162
- array( 'jquery' ), '3.51.0-2014.06.20', true );
163
-
164
$in_footer = true;
165
166
if ( 'header' === wpcf7_load_js() ) {
@@ -169,9 +52,13 @@ function wpcf7_enqueue_scripts() {
169
170
wp_enqueue_script( 'contact-form-7',
171
wpcf7_plugin_url( 'includes/js/scripts.js' ),
172
- array( 'jquery', 'jquery-form' ), WPCF7_VERSION, $in_footer );
173
174
- $_wpcf7 = array(
175
'recaptcha' => array(
176
'messages' => array(
177
'empty' =>
@@ -181,14 +68,14 @@ function wpcf7_enqueue_scripts() {
181
);
182
183
if ( defined( 'WP_CACHE' ) && WP_CACHE ) {
184
- $_wpcf7['cached'] = 1;
185
}
186
187
if ( wpcf7_support_html5_fallback() ) {
188
- $_wpcf7['jqueryUi'] = 1;
189
}
190
191
- wp_localize_script( 'contact-form-7', '_wpcf7', $_wpcf7 );
192
193
do_action( 'wpcf7_enqueue_scripts' );
194
}
@@ -231,6 +118,8 @@ function wpcf7_html5_fallback() {
231
232
if ( wpcf7_style_is() ) {
233
wp_enqueue_style( 'jquery-ui-smoothness',
234
- wpcf7_plugin_url( 'includes/js/jquery-ui/themes/smoothness/jquery-ui.min.css' ), array(), '1.10.3', 'screen' );
235
}
236
}
3
add_action( 'wp_loaded', 'wpcf7_control_init' );
4
5
function wpcf7_control_init() {
6
+ if ( isset( $_SERVER['HTTP_X_REQUESTED_WITH'] )
7
+ && 'XMLHttpRequest' == $_SERVER['HTTP_X_REQUESTED_WITH'] ) {
8
return;
9
}
10
11
if ( isset( $_POST['_wpcf7'] ) ) {
12
+ $contact_form = wpcf7_contact_form( (int) $_POST['_wpcf7'] );
13
14
+ if ( $contact_form ) {
15
+ $contact_form->submit();
16
+ }
17
}
18
}
19
44
}
45
46
function wpcf7_enqueue_scripts() {
47
$in_footer = true;
48
49
if ( 'header' === wpcf7_load_js() ) {
52
53
wp_enqueue_script( 'contact-form-7',
54
wpcf7_plugin_url( 'includes/js/scripts.js' ),
55
+ array( 'jquery' ), WPCF7_VERSION, $in_footer );
56
57
+ $wpcf7 = array(
58
+ 'apiSettings' => array(
59
+ 'root' => esc_url_raw( get_rest_url() ),
60
+ 'namespace' => 'contact-form-7/v1',
61
+ ),
62
'recaptcha' => array(
63
'messages' => array(
64
'empty' =>
68
);
69
70
if ( defined( 'WP_CACHE' ) && WP_CACHE ) {
71
+ $wpcf7['cached'] = 1;
72
}
73
74
if ( wpcf7_support_html5_fallback() ) {
75
+ $wpcf7['jqueryUi'] = 1;
76
}
77
78
+ wp_localize_script( 'contact-form-7', 'wpcf7', $wpcf7 );
79
80
do_action( 'wpcf7_enqueue_scripts' );
81
}
118
119
if ( wpcf7_style_is() ) {
120
wp_enqueue_style( 'jquery-ui-smoothness',
121
+ wpcf7_plugin_url(
122
+ 'includes/js/jquery-ui/themes/smoothness/jquery-ui.min.css' ),
123
+ array(), '1.11.4', 'screen' );
124
}
125
}
includes/form-tag.php CHANGED
@@ -1,6 +1,6 @@
1
<?php
2
3
- class WPCF7_FormTag {
4
5
public $type;
6
public $basetype;
@@ -13,10 +13,12 @@ class WPCF7_FormTag {
13
public $attr = '';
14
public $content = '';
15
16
- public function __construct( $tag ) {
17
- foreach ( $tag as $key => $value ) {
18
- if ( property_exists( __CLASS__, $key ) ) {
19
- $this->{$key} = $value;
20
}
21
}
22
}
@@ -319,4 +321,25 @@ class WPCF7_FormTag {
319
320
return $result;
321
}
322
}
1
<?php
2
3
+ class WPCF7_FormTag implements ArrayAccess {
4
5
public $type;
6
public $basetype;
13
public $attr = '';
14
public $content = '';
15
16
+ public function __construct( $tag = array() ) {
17
+ if ( is_array( $tag ) || $tag instanceof self ) {
18
+ foreach ( $tag as $key => $value ) {
19
+ if ( property_exists( __CLASS__, $key ) ) {
20
+ $this->{$key} = $value;
21
+ }
22
}
23
}
24
}
321
322
return $result;
323
}
324
+
325
+ public function offsetSet( $offset, $value ) {
326
+ if ( property_exists( __CLASS__, $offset ) ) {
327
+ $this->{$offset} = $value;
328
+ }
329
+ }
330
+
331
+ public function offsetGet( $offset ) {
332
+ if ( property_exists( __CLASS__, $offset ) ) {
333
+ return $this->{$offset};
334
+ }
335
+
336
+ return null;
337
+ }
338
+
339
+ public function offsetExists( $offset ) {
340
+ return property_exists( __CLASS__, $offset );
341
+ }
342
+
343
+ public function offsetUnset( $offset ) {
344
+ }
345
}
includes/form-tags-manager.php CHANGED
@@ -85,13 +85,35 @@ class WPCF7_FormTagsManager {
85
}
86
87
public function tag_type_supports( $tag, $feature ) {
88
if ( isset( $this->tag_types[$tag]['features'] ) ) {
89
- return ! empty( $this->tag_types[$tag]['features'][$feature] );
90
}
91
92
return false;
93
}
94
95
private function sanitize_tag_type( $tag ) {
96
$tag = preg_replace( '/[^a-zA-Z0-9_*]+/', '_', $tag );
97
$tag = rtrim( $tag, '_' );
@@ -172,11 +194,11 @@ class WPCF7_FormTagsManager {
172
}
173
}
174
175
- public function filter( $content, $cond ) {
176
- if ( is_array( $content ) ) {
177
- $tags = $content;
178
- } elseif ( is_string( $content ) ) {
179
- $tags = $this->scan( $content );
180
} else {
181
$tags = $this->scanned_tags;
182
}
@@ -185,42 +207,39 @@ class WPCF7_FormTagsManager {
185
return array();
186
}
187
188
- if ( ! is_array( $cond ) || empty( $cond ) ) {
189
- return $tags;
190
- }
191
192
- for ( $i = 0, $size = count( $tags ); $i < $size; $i++ ) {
193
194
- if ( isset( $cond['type'] ) ) {
195
- if ( is_string( $cond['type'] ) && ! empty( $cond['type'] ) ) {
196
- if ( $tags[$i]['type'] != $cond['type'] ) {
197
- unset( $tags[$i] );
198
- continue;
199
- }
200
- } elseif ( is_array( $cond['type'] ) ) {
201
- if ( ! in_array( $tags[$i]['type'], $cond['type'] ) ) {
202
- unset( $tags[$i] );
203
- continue;
204
- }
205
- }
206
}
207
208
- if ( isset( $cond['name'] ) ) {
209
- if ( is_string( $cond['name'] ) && ! empty( $cond['name'] ) ) {
210
- if ( $tags[$i]['name'] != $cond['name'] ) {
211
- unset ( $tags[$i] );
212
- continue;
213
- }
214
- } elseif ( is_array( $cond['name'] ) ) {
215
- if ( ! in_array( $tags[$i]['name'], $cond['name'] ) ) {
216
- unset( $tags[$i] );
217
- continue;
218
- }
219
- }
220
}
221
}
222
223
- return array_values( $tags );
224
}
225
226
private function tag_regex() {
@@ -298,6 +317,8 @@ class WPCF7_FormTagsManager {
298
299
$scanned_tag = apply_filters( 'wpcf7_form_tag', $scanned_tag, $replace );
300
301
$this->scanned_tags[] = $scanned_tag;
302
303
if ( $replace ) {
85
}
86
87
public function tag_type_supports( $tag, $feature ) {
88
+ $feature = array_filter( (array) $feature );
89
+
90
if ( isset( $this->tag_types[$tag]['features'] ) ) {
91
+ return (bool) array_intersect(
92
+ array_keys( array_filter( $this->tag_types[$tag]['features'] ) ),
93
+ $feature );
94
}
95
96
return false;
97
}
98
99
+ public function collect_tag_types( $feature = null ) {
100
+ $tag_types = array_keys( $this->tag_types );
101
+
102
+ if ( empty( $feature ) ) {
103
+ return $tag_types;
104
+ }
105
+
106
+ $output = array();
107
+
108
+ foreach ( $tag_types as $tag ) {
109
+ if ( $this->tag_type_supports( $tag, $feature ) ) {
110
+ $output[] = $tag;
111
+ }
112
+ }
113
+
114
+ return $output;
115
+ }
116
+
117
private function sanitize_tag_type( $tag ) {
118
$tag = preg_replace( '/[^a-zA-Z0-9_*]+/', '_', $tag );
119
$tag = rtrim( $tag, '_' );
194
}
195
}
196
197
+ public function filter( $input, $cond ) {
198
+ if ( is_array( $input ) ) {
199
+ $tags = $input;
200
+ } elseif ( is_string( $input ) ) {
201
+ $tags = $this->scan( $input );
202
} else {
203
$tags = $this->scanned_tags;
204
}
207
return array();
208
}
209
210
+ $cond = wp_parse_args( $cond, array(
211
+ 'type' => array(),
212
+ 'name' => array(),
213
+ 'feature' => '',
214
+ ) );
215
216
+ $cond['type'] = array_filter( (array) $cond['type'] );
217
+ $cond['name'] = array_filter( (array) $cond['name'] );
218
+ $cond['feature'] = is_string( $cond['feature'] )
219
+ ? trim( $cond['feature'] ) : '';
220
221
+ $output = array();
222
+
223
+ foreach ( $tags as $tag ) {
224
+ $tag = new WPCF7_FormTag( $tag );
225
+
226
+ if ( $cond['type'] && ! in_array( $tag->type, $cond['type'], true ) ) {
227
+ continue;
228
}
229
230
+ if ( $cond['name'] && ! in_array( $tag->name, $cond['name'], true ) ) {
231
+ continue;
232
+ }
233
+
234
+ if ( $cond['feature']
235
+ && ! $this->tag_type_supports( $tag->type, $cond['feature'] ) ) {
236
+ continue;
237
}
238
+
239
+ $output[] = $tag;
240
}
241
242
+ return $output;
243
}
244
245
private function tag_regex() {
317
318
$scanned_tag = apply_filters( 'wpcf7_form_tag', $scanned_tag, $replace );
319
320
+ $scanned_tag = new WPCF7_FormTag( $scanned_tag );
321
+
322
$this->scanned_tags[] = $scanned_tag;
323
324
if ( $replace ) {
includes/formatting.php CHANGED
@@ -14,7 +14,12 @@ function wpcf7_autop( $pee, $br = 1 ) {
14
$pee = preg_replace( '!(</' . $allblocks . '>)!', "$1\n\n", $pee );
15
16
/* wpcf7: take care of [response], [recaptcha], and [hidden] tags */
17
- $block_hidden_form_tags = '(?:response|recaptcha|hidden)';
18
$pee = preg_replace( '!(\[' . $block_hidden_form_tags . '[^]]*\])!',
19
"\n$1\n\n", $pee );
20
14
$pee = preg_replace( '!(</' . $allblocks . '>)!', "$1\n\n", $pee );
15
16
/* wpcf7: take care of [response], [recaptcha], and [hidden] tags */
17
+ $form_tags_manager = WPCF7_FormTagsManager::get_instance();
18
+ $block_hidden_form_tags = $form_tags_manager->collect_tag_types(
19
+ array( 'display-block', 'display-hidden' ) );
20
+ $block_hidden_form_tags = sprintf( '(?:%s)',
21
+ implode( '|', $block_hidden_form_tags ) );
22
+
23
$pee = preg_replace( '!(\[' . $block_hidden_form_tags . '[^]]*\])!',
24
"\n$1\n\n", $pee );
25
includes/js/jquery-ui/themes/smoothness/images/animated-overlay.gif DELETED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-icons_222222_256x240.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-icons_454545_256x240.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-icons_888888_256x240.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png CHANGED
Binary file
includes/js/jquery-ui/themes/smoothness/jquery-ui.css CHANGED
@@ -1,8 +1,8 @@
1
- /*! jQuery UI - v1.10.3 - 2013-05-03
2
* http://jqueryui.com
3
- * Includes: jquery.ui.core.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css
4
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
5
- * Copyright 2013 jQuery Foundation and other contributors Licensed MIT */
6
7
/* Layout helpers
8
----------------------------------*/
@@ -48,7 +48,7 @@
48
left: 0;
49
position: absolute;
50
opacity: 0;
51
- filter:Alpha(Opacity=0);
52
}
53
54
.ui-front {
@@ -90,16 +90,14 @@
90
display: block;
91
cursor: pointer;
92
position: relative;
93
- margin-top: 2px;
94
padding: .5em .5em .5em .7em;
95
min-height: 0; /* support: IE7 */
96
}
97
.ui-accordion .ui-accordion-icons {
98
padding-left: 2.2em;
99
}
100
- .ui-accordion .ui-accordion-noicons {
101
- padding-left: .7em;
102
- }
103
.ui-accordion .ui-accordion-icons .ui-accordion-icons {
104
padding-left: 2.2em;
105
}
@@ -274,12 +272,9 @@ button.ui-button::-moz-focus-inner {
274
font-size: 1em;
275
margin: 1px 0;
276
}
277
- .ui-datepicker select.ui-datepicker-month-year {
278
- width: 100%;
279
- }
280
.ui-datepicker select.ui-datepicker-month,
281
.ui-datepicker select.ui-datepicker-year {
282
- width: 49%;
283
}
284
.ui-datepicker table {
285
width: 100%;
@@ -393,6 +388,7 @@ button.ui-button::-moz-focus-inner {
393
border-left-width: 1px;
394
}
395
.ui-dialog {
396
position: absolute;
397
top: 0;
398
left: 0;
@@ -415,7 +411,7 @@ button.ui-button::-moz-focus-inner {
415
position: absolute;
416
right: .3em;
417
top: 50%;
418
- width: 21px;
419
margin: -10px 0 0 0;
420
padding: 1px;
421
height: 20px;
@@ -451,74 +447,62 @@ button.ui-button::-moz-focus-inner {
451
.ui-draggable .ui-dialog-titlebar {
452
cursor: move;
453
}
454
.ui-menu {
455
list-style: none;
456
- padding: 2px;
457
margin: 0;
458
display: block;
459
outline: none;
460
}
461
.ui-menu .ui-menu {
462
- margin-top: -3px;
463
position: absolute;
464
}
465
.ui-menu .ui-menu-item {
466
margin: 0;
467
- padding: 0;
468
- width: 100%;
469
/* support: IE10, see #8844 */
470
- list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
471
}
472
.ui-menu .ui-menu-divider {
473
- margin: 5px -2px 5px -2px;
474
height: 0;
475
font-size: 0;
476
line-height: 0;
477
border-width: 1px 0 0 0;
478
}
479
- .ui-menu .ui-menu-item a {
480
- text-decoration: none;
481
- display: block;
482
- padding: 2px .4em;
483
- line-height: 1.5;
484
- min-height: 0; /* support: IE7 */
485
- font-weight: normal;
486
- }
487
- .ui-menu .ui-menu-item a.ui-state-focus,
488
- .ui-menu .ui-menu-item a.ui-state-active {
489
- font-weight: normal;
490
margin: -1px;
491
}
492
493
- .ui-menu .ui-state-disabled {
494
- font-weight: normal;
495
- margin: .4em 0 .2em;
496
- line-height: 1.5;
497
- }
498
- .ui-menu .ui-state-disabled a {
499
- cursor: default;
500
- }
501
-
502
/* icon support */
503
.ui-menu-icons {
504
position: relative;
505
}
506
- .ui-menu-icons .ui-menu-item a {
507
- position: relative;
508
padding-left: 2em;
509
}
510
511
/* left-aligned */
512
.ui-menu .ui-icon {
513
position: absolute;
514
- top: .2em;
515
left: .2em;
516
}
517
518
/* right-aligned */
519
.ui-menu .ui-menu-icon {
520
- position: static;
521
- float: right;
522
}
523
.ui-progressbar {
524
height: 2em;
@@ -530,9 +514,9 @@ button.ui-button::-moz-focus-inner {
530
height: 100%;
531
}
532
.ui-progressbar .ui-progressbar-overlay {
533
- background: url("images/animated-overlay.gif");
534
height: 100%;
535
- filter: alpha(opacity=25);
536
opacity: 0.25;
537
}
538
.ui-progressbar-indeterminate .ui-progressbar-value {
@@ -545,6 +529,8 @@ button.ui-button::-moz-focus-inner {
545
position: absolute;
546
font-size: 0.1px;
547
display: block;
548
}
549
.ui-resizable-disabled .ui-resizable-handle,
550
.ui-resizable-autohide .ui-resizable-handle {
@@ -606,11 +592,64 @@ button.ui-button::-moz-focus-inner {
606
right: -5px;
607
top: -5px;
608
}
609
.ui-selectable-helper {
610
position: absolute;
611
z-index: 100;
612
border: 1px dotted black;
613
}
614
.ui-slider {
615
position: relative;
616
text-align: left;
@@ -621,6 +660,8 @@ button.ui-button::-moz-focus-inner {
621
width: 1.2em;
622
height: 1.2em;
623
cursor: default;
624
}
625
.ui-slider .ui-slider-range {
626
position: absolute;
@@ -631,7 +672,7 @@ button.ui-button::-moz-focus-inner {
631
background-position: 0 0;
632
}
633
634
- /* For IE8 - See #6727 */
635
.ui-slider.ui-state-disabled .ui-slider-handle,
636
.ui-slider.ui-state-disabled .ui-slider-range {
637
filter: inherit;
@@ -674,6 +715,10 @@ button.ui-button::-moz-focus-inner {
674
.ui-slider-vertical .ui-slider-range-max {
675
top: 0;
676
}
677
.ui-spinner {
678
position: relative;
679
display: inline-block;
@@ -704,13 +749,13 @@ button.ui-button::-moz-focus-inner {
704
overflow: hidden;
705
right: 0;
706
}
707
- /* more specificity required here to overide default borders */
708
.ui-spinner a.ui-spinner-button {
709
border-top: none;
710
border-bottom: none;
711
border-right: none;
712
}
713
- /* vertical centre icon */
714
.ui-spinner .ui-icon {
715
position: absolute;
716
margin-top: -8px;
@@ -747,7 +792,7 @@ button.ui-button::-moz-focus-inner {
747
padding: 0;
748
white-space: nowrap;
749
}
750
- .ui-tabs .ui-tabs-nav li a {
751
float: left;
752
padding: .5em 1em;
753
text-decoration: none;
@@ -756,13 +801,12 @@ button.ui-button::-moz-focus-inner {
756
margin-bottom: -1px;
757
padding-bottom: 1px;
758
}
759
- .ui-tabs .ui-tabs-nav li.ui-tabs-active a,
760
- .ui-tabs .ui-tabs-nav li.ui-state-disabled a,
761
- .ui-tabs .ui-tabs-nav li.ui-tabs-loading a {
762
cursor: text;
763
}
764
- .ui-tabs .ui-tabs-nav li a, /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
765
- .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a {
766
cursor: pointer;
767
}
768
.ui-tabs .ui-tabs-panel {
@@ -801,7 +845,7 @@ body .ui-tooltip {
801
}
802
.ui-widget-content {
803
border: 1px solid #aaaaaa;
804
- background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;
805
color: #222222;
806
}
807
.ui-widget-content a {
@@ -809,7 +853,7 @@ body .ui-tooltip {
809
}
810
.ui-widget-header {
811
border: 1px solid #aaaaaa;
812
- background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;
813
color: #222222;
814
font-weight: bold;
815
}
@@ -823,7 +867,7 @@ body .ui-tooltip {
823
.ui-widget-content .ui-state-default,
824
.ui-widget-header .ui-state-default {
825
border: 1px solid #d3d3d3;
826
- background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;
827
font-weight: normal;
828
color: #555555;
829
}
@@ -840,14 +884,18 @@ body .ui-tooltip {
840
.ui-widget-content .ui-state-focus,
841
.ui-widget-header .ui-state-focus {
842
border: 1px solid #999999;
843
- background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;
844
font-weight: normal;
845
color: #212121;
846
}
847
.ui-state-hover a,
848
.ui-state-hover a:hover,
849
.ui-state-hover a:link,
850
- .ui-state-hover a:visited {
851
color: #212121;
852
text-decoration: none;
853
}
@@ -855,7 +903,7 @@ body .ui-tooltip {
855
.ui-widget-content .ui-state-active,
856
.ui-widget-header .ui-state-active {
857
border: 1px solid #aaaaaa;
858
- background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;
859
font-weight: normal;
860
color: #212121;
861
}
@@ -872,7 +920,7 @@ body .ui-tooltip {
872
.ui-widget-content .ui-state-highlight,
873
.ui-widget-header .ui-state-highlight {
874
border: 1px solid #fcefa1;
875
- background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;
876
color: #363636;
877
}
878
.ui-state-highlight a,
@@ -884,7 +932,7 @@ body .ui-tooltip {
884
.ui-widget-content .ui-state-error,
885
.ui-widget-header .ui-state-error {
886
border: 1px solid #cd0a0a;
887
- background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;
888
color: #cd0a0a;
889
}
890
.ui-state-error a,
@@ -906,18 +954,18 @@ body .ui-tooltip {
906
.ui-widget-content .ui-priority-secondary,
907
.ui-widget-header .ui-priority-secondary {
908
opacity: .7;
909
- filter:Alpha(Opacity=70);
910
font-weight: normal;
911
}
912
.ui-state-disabled,
913
.ui-widget-content .ui-state-disabled,
914
.ui-widget-header .ui-state-disabled {
915
opacity: .35;
916
- filter:Alpha(Opacity=35);
917
background-image: none;
918
}
919
.ui-state-disabled .ui-icon {
920
- filter:Alpha(Opacity=35); /* For IE8 - See #6059 */
921
}
922
923
/* Icons
@@ -930,27 +978,27 @@ body .ui-tooltip {
930
}
931
.ui-icon,
932
.ui-widget-content .ui-icon {
933
- background-image: url(images/ui-icons_222222_256x240.png);
934
}
935
.ui-widget-header .ui-icon {
936
- background-image: url(images/ui-icons_222222_256x240.png);
937
}
938
.ui-state-default .ui-icon {
939
- background-image: url(images/ui-icons_888888_256x240.png);
940
}
941
.ui-state-hover .ui-icon,
942
.ui-state-focus .ui-icon {
943
- background-image: url(images/ui-icons_454545_256x240.png);
944
}
945
.ui-state-active .ui-icon {
946
- background-image: url(images/ui-icons_454545_256x240.png);
947
}
948
.ui-state-highlight .ui-icon {
949
- background-image: url(images/ui-icons_2e83ff_256x240.png);
950
}
951
.ui-state-error .ui-icon,
952
.ui-state-error-text .ui-icon {
953
- background-image: url(images/ui-icons_cd0a0a_256x240.png);
954
}
955
956
/* positioning */
@@ -1163,15 +1211,15 @@ body .ui-tooltip {
1163
1164
/* Overlays */
1165
.ui-widget-overlay {
1166
- background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
1167
opacity: .3;
1168
- filter: Alpha(Opacity=30);
1169
}
1170
.ui-widget-shadow {
1171
margin: -8px 0 0 -8px;
1172
padding: 8px;
1173
- background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
1174
opacity: .3;
1175
- filter: Alpha(Opacity=30);
1176
border-radius: 8px;
1177
}
1
+ /*! jQuery UI - v1.11.4 - 2015-03-11
2
* http://jqueryui.com
3
+ * Includes: core.css, accordion.css, autocomplete.css, button.css, datepicker.css, dialog.css, draggable.css, menu.css, progressbar.css, resizable.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
4
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
5
+ * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
6
7
/* Layout helpers
8
----------------------------------*/
48
left: 0;
49
position: absolute;
50
opacity: 0;
51
+ filter:Alpha(Opacity=0); /* support: IE8 */
52
}
53
54
.ui-front {
90
display: block;
91
cursor: pointer;
92
position: relative;
93
+ margin: 2px 0 0 0;
94
padding: .5em .5em .5em .7em;
95
min-height: 0; /* support: IE7 */
96
+ font-size: 100%;
97
}
98
.ui-accordion .ui-accordion-icons {
99
padding-left: 2.2em;
100
}
101
.ui-accordion .ui-accordion-icons .ui-accordion-icons {
102
padding-left: 2.2em;
103
}
272
font-size: 1em;
273
margin: 1px 0;
274
}
275
.ui-datepicker select.ui-datepicker-month,
276
.ui-datepicker select.ui-datepicker-year {
277
+ width: 45%;
278
}
279
.ui-datepicker table {
280
width: 100%;
388
border-left-width: 1px;
389
}
390
.ui-dialog {
391
+ overflow: hidden;
392
position: absolute;
393
top: 0;
394
left: 0;
411
position: absolute;
412
right: .3em;
413
top: 50%;
414
+ width: 20px;
415
margin: -10px 0 0 0;
416
padding: 1px;
417
height: 20px;
447
.ui-draggable .ui-dialog-titlebar {
448
cursor: move;
449
}
450
+ .ui-draggable-handle {
451
+ -ms-touch-action: none;
452
+ touch-action: none;
453
+ }
454
.ui-menu {
455
list-style: none;
456
+ padding: 0;
457
margin: 0;
458
display: block;
459
outline: none;
460
}
461
.ui-menu .ui-menu {
462
position: absolute;
463
}
464
.ui-menu .ui-menu-item {
465
+ position: relative;
466
margin: 0;
467
+ padding: 3px 1em 3px .4em;
468
+ cursor: pointer;
469
+ min-height: 0; /* support: IE7 */
470
/* support: IE10, see #8844 */
471
+ list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
472
}
473
.ui-menu .ui-menu-divider {
474
+ margin: 5px 0;
475
height: 0;
476
font-size: 0;
477
line-height: 0;
478
border-width: 1px 0 0 0;
479
}
480
+ .ui-menu .ui-state-focus,
481
+ .ui-menu .ui-state-active {
482
margin: -1px;
483
}
484
485
/* icon support */
486
.ui-menu-icons {
487
position: relative;
488
}
489
+ .ui-menu-icons .ui-menu-item {
490
padding-left: 2em;
491
}
492
493
/* left-aligned */
494
.ui-menu .ui-icon {
495
position: absolute;
496
+ top: 0;
497
+ bottom: 0;
498
left: .2em;
499
+ margin: auto 0;
500
}
501
502
/* right-aligned */
503
.ui-menu .ui-menu-icon {
504
+ left: auto;
505
+ right: 0;
506
}
507
.ui-progressbar {
508
height: 2em;
514
height: 100%;
515
}
516
.ui-progressbar .ui-progressbar-overlay {
517
+ background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");
518
height: 100%;
519
+ filter: alpha(opacity=25); /* support: IE8 */
520
opacity: 0.25;
521
}
522
.ui-progressbar-indeterminate .ui-progressbar-value {
529
position: absolute;
530
font-size: 0.1px;
531
display: block;
532
+ -ms-touch-action: none;
533
+ touch-action: none;
534
}
535
.ui-resizable-disabled .ui-resizable-handle,
536
.ui-resizable-autohide .ui-resizable-handle {
592
right: -5px;
593
top: -5px;
594
}
595
+ .ui-selectable {
596
+ -ms-touch-action: none;
597
+ touch-action: none;
598
+ }
599
.ui-selectable-helper {
600
position: absolute;
601
z-index: 100;
602
border: 1px dotted black;
603
}
604
+ .ui-selectmenu-menu {
605
+ padding: 0;
606
+ margin: 0;
607
+ position: absolute;
608
+ top: 0;
609
+ left: 0;
610
+ display: none;
611
+ }
612
+ .ui-selectmenu-menu .ui-menu {
613
+ overflow: auto;
614
+ /* Support: IE7 */
615
+ overflow-x: hidden;
616
+ padding-bottom: 1px;
617
+ }
618
+ .ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
619
+ font-size: 1em;
620
+ font-weight: bold;
621
+ line-height: 1.5;
622
+ padding: 2px 0.4em;
623
+ margin: 0.5em 0 0 0;
624
+ height: auto;
625
+ border: 0;
626
+ }
627
+ .ui-selectmenu-open {
628
+ display: block;
629
+ }
630
+ .ui-selectmenu-button {
631
+ display: inline-block;
632
+ overflow: hidden;
633
+ position: relative;
634
+ text-decoration: none;
635
+ cursor: pointer;
636
+ }
637
+ .ui-selectmenu-button span.ui-icon {
638
+ right: 0.5em;
639
+ left: auto;
640
+ margin-top: -8px;
641
+ position: absolute;
642
+ top: 50%;
643
+ }
644
+ .ui-selectmenu-button span.ui-selectmenu-text {
645
+ text-align: left;
646
+ padding: 0.4em 2.1em 0.4em 1em;
647
+ display: block;
648
+ line-height: 1.4;
649
+ overflow: hidden;
650
+ text-overflow: ellipsis;
651
+ white-space: nowrap;
652
+ }
653
.ui-slider {
654
position: relative;
655
text-align: left;
660
width: 1.2em;
661
height: 1.2em;
662
cursor: default;
663
+ -ms-touch-action: none;
664
+ touch-action: none;
665
}
666
.ui-slider .ui-slider-range {
667
position: absolute;
672
background-position: 0 0;
673
}
674
675
+ /* support: IE8 - See #6727 */
676
.ui-slider.ui-state-disabled .ui-slider-handle,
677
.ui-slider.ui-state-disabled .ui-slider-range {
678
filter: inherit;
715
.ui-slider-vertical .ui-slider-range-max {
716
top: 0;
717
}
718
+ .ui-sortable-handle {
719
+ -ms-touch-action: none;
720
+ touch-action: none;
721
+ }
722
.ui-spinner {
723
position: relative;
724
display: inline-block;
749
overflow: hidden;
750
right: 0;
751
}
752
+ /* more specificity required here to override default borders */
753
.ui-spinner a.ui-spinner-button {
754
border-top: none;
755
border-bottom: none;
756
border-right: none;
757
}
758
+ /* vertically center icon */
759
.ui-spinner .ui-icon {
760
position: absolute;
761
margin-top: -8px;
792
padding: 0;
793
white-space: nowrap;
794
}
795
+ .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
796
float: left;
797
padding: .5em 1em;
798
text-decoration: none;
801
margin-bottom: -1px;
802
padding-bottom: 1px;
803
}
804
+ .ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
805
+ .ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
806
+ .ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
807
cursor: text;
808
}
809
+ .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
810
cursor: pointer;
811
}
812
.ui-tabs .ui-tabs-panel {
845
}
846
.ui-widget-content {
847
border: 1px solid #aaaaaa;
848
+ background: #ffffff url("images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x;
849
color: #222222;
850
}
851
.ui-widget-content a {
853
}
854
.ui-widget-header {
855
border: 1px solid #aaaaaa;
856
+ background: #cccccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x;
857
color: #222222;
858
font-weight: bold;
859
}
867
.ui-widget-content .ui-state-default,
868
.ui-widget-header .ui-state-default {
869
border: 1px solid #d3d3d3;
870
+ background: #e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;
871
font-weight: normal;
872
color: #555555;
873
}
884
.ui-widget-content .ui-state-focus,
885
.ui-widget-header .ui-state-focus {
886
border: 1px solid #999999;
887
+ background: #dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x;
888
font-weight: normal;
889
color: #212121;
890
}
891
.ui-state-hover a,
892
.ui-state-hover a:hover,
893
.ui-state-hover a:link,
894
+ .ui-state-hover a:visited,
895
+ .ui-state-focus a,
896
+ .ui-state-focus a:hover,
897
+ .ui-state-focus a:link,
898
+ .ui-state-focus a:visited {
899
color: #212121;
900
text-decoration: none;
901
}
903
.ui-widget-content .ui-state-active,
904
.ui-widget-header .ui-state-active {
905
border: 1px solid #aaaaaa;
906
+ background: #ffffff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;
907
font-weight: normal;
908
color: #212121;
909
}
920
.ui-widget-content .ui-state-highlight,
921
.ui-widget-header .ui-state-highlight {
922
border: 1px solid #fcefa1;
923
+ background: #fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x;
924
color: #363636;
925
}
926
.ui-state-highlight a,
932
.ui-widget-content .ui-state-error,
933
.ui-widget-header .ui-state-error {
934
border: 1px solid #cd0a0a;
935
+ background: #fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;
936
color: #cd0a0a;
937
}
938
.ui-state-error a,
954
.ui-widget-content .ui-priority-secondary,
955
.ui-widget-header .ui-priority-secondary {
956
opacity: .7;
957
+ filter:Alpha(Opacity=70); /* support: IE8 */
958
font-weight: normal;
959
}
960
.ui-state-disabled,
961
.ui-widget-content .ui-state-disabled,
962
.ui-widget-header .ui-state-disabled {
963
opacity: .35;
964
+ filter:Alpha(Opacity=35); /* support: IE8 */
965
background-image: none;
966
}
967
.ui-state-disabled .ui-icon {
968
+ filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */
969
}
970
971
/* Icons
978
}
979
.ui-icon,
980
.ui-widget-content .ui-icon {
981
+ background-image: url("images/ui-icons_222222_256x240.png");
982
}
983
.ui-widget-header .ui-icon {
984
+ background-image: url("images/ui-icons_222222_256x240.png");
985
}
986
.ui-state-default .ui-icon {
987
+ background-image: url("images/ui-icons_888888_256x240.png");
988
}
989
.ui-state-hover .ui-icon,
990
.ui-state-focus .ui-icon {
991
+ background-image: url("images/ui-icons_454545_256x240.png");
992
}
993
.ui-state-active .ui-icon {
994
+ background-image: url("images/ui-icons_454545_256x240.png");
995
}
996
.ui-state-highlight .ui-icon {
997
+ background-image: url("images/ui-icons_2e83ff_256x240.png");
998
}
999
.ui-state-error .ui-icon,
1000
.ui-state-error-text .ui-icon {
1001
+ background-image: url("images/ui-icons_cd0a0a_256x240.png");
1002
}
1003
1004
/* positioning */
1211
1212
/* Overlays */
1213
.ui-widget-overlay {
1214
+ background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;
1215
opacity: .3;
1216
+ filter: Alpha(Opacity=30); /* support: IE8 */
1217
}
1218
.ui-widget-shadow {
1219
margin: -8px 0 0 -8px;
1220
padding: 8px;
1221
+ background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;
1222
opacity: .3;
1223
+ filter: Alpha(Opacity=30); /* support: IE8 */
1224
border-radius: 8px;
1225
}
includes/js/jquery-ui/themes/smoothness/jquery-ui.min.css CHANGED
@@ -1,5 +1,7 @@
1
- /*! jQuery UI - v1.10.3 - 2013-05-03
2
* http://jqueryui.com
3
- * Includes: jquery.ui.core.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css
4
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
5
- * Copyright 2013 jQuery Foundation and other contributors Licensed MIT */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin-top:2px;padding:.5em .5em .5em .7em;min-height:0}.ui-accordion .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-noicons{padding-left:.7em}.ui-accordion .ui-accordion-icons .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-accordion-header-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month-year{width:100%}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:700;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-dialog{position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:21px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:0;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-menu{list-style:none;padding:2px;margin:0;display:block;outline:0}.ui-menu .ui-menu{margin-top:-3px;position:absolute}.ui-menu .ui-menu-item{margin:0;padding:0;width:100%;list-style-image:url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)}.ui-menu .ui-menu-divider{margin:5px -2px 5px -2px;height:0;font-size:0;line-height:0;border-width:1px 0 0}.ui-menu .ui-menu-item a{text-decoration:none;display:block;padding:2px .4em;line-height:1.5;min-height:0;font-weight:400}.ui-menu .ui-menu-item a.ui-state-focus,.ui-menu .ui-menu-item a.ui-state-active{font-weight:400;margin:-1px}.ui-menu .ui-state-disabled{font-weight:400;margin:.4em 0 .2em;line-height:1.5}.ui-menu .ui-state-disabled a{cursor:default}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item a{position:relative;padding-left:2em}.ui-menu .ui-icon{position:absolute;top:.2em;left:.2em}.ui-menu .ui-menu-icon{position:static;float:right}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url(images/animated-overlay.gif);height:100%;filter:alpha(opacity=25);opacity:.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:.1px;display:block}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted #000}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:0;background:0;color:inherit;padding:0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:22px}.ui-spinner-button{width:16px;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top:0;border-bottom:0;border-right:0}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav li a{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active a,.ui-tabs .ui-tabs-nav li.ui-state-disabled a,.ui-tabs .ui-tabs-nav li.ui-tabs-loading a{cursor:text}.ui-tabs .ui-tabs-nav li a,.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:0}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-state-default .ui-icon{background-image:url(images/ui-icons_888888_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-active .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_2e83ff_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cd0a0a_256x240.png)}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
1
+ /*! jQuery UI - v1.11.4 - 2015-03-11
2
* http://jqueryui.com
3
+ * Includes: core.css, accordion.css, autocomplete.css, button.css, datepicker.css, dialog.css, draggable.css, menu.css, progressbar.css, resizable.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
4
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
5
+ * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
6
+
7
+ .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin:2px 0 0 0;padding:.5em .5em .5em .7em;min-height:0;font-size:100%}.ui-accordion .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-icons .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-accordion-header-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:45%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-dialog{overflow:hidden;position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:none}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{position:relative;margin:0;padding:3px 1em 3px .4em;cursor:pointer;min-height:0;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");height:100%;filter:alpha(opacity=25);opacity:0.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-selectmenu-menu{padding:0;margin:0;position:absolute;top:0;left:0;display:none}.ui-selectmenu-menu .ui-menu{overflow:auto;overflow-x:hidden;padding-bottom:1px}.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup{font-size:1em;font-weight:bold;line-height:1.5;padding:2px 0.4em;margin:0.5em 0 0 0;height:auto;border:0}.ui-selectmenu-open{display:block}.ui-selectmenu-button{display:inline-block;overflow:hidden;position:relative;text-decoration:none;cursor:pointer}.ui-selectmenu-button span.ui-icon{right:0.5em;left:auto;margin-top:-8px;position:absolute;top:50%}.ui-selectmenu-button span.ui-selectmenu-text{text-align:left;padding:0.4em 2.1em 0.4em 1em;display:block;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;color:inherit;padding:0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:22px}.ui-spinner-button{width:16px;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav .ui-tabs-anchor{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor{cursor:text}.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff url("images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_888888_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_2e83ff_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cd0a0a_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
includes/js/jquery-ui/themes/smoothness/{jquery.ui.theme.css → theme.css} RENAMED
@@ -1,12 +1,12 @@
1
/*!
2
- * jQuery UI CSS Framework 1.10.3
3
* http://jqueryui.com
4
*
5
- * Copyright 2013 jQuery Foundation and other contributors
6
* Released under the MIT license.
7
* http://jquery.org/license
8
*
9
- * http://docs.jquery.com/UI/Theming/API
10
*
11
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
12
*/
@@ -30,7 +30,7 @@
30
}
31
.ui-widget-content {
32
border: 1px solid #aaaaaa;
33
- background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;
34
color: #222222;
35
}
36
.ui-widget-content a {
@@ -38,7 +38,7 @@
38
}
39
.ui-widget-header {
40
border: 1px solid #aaaaaa;
41
- background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;
42
color: #222222;
43
font-weight: bold;
44
}
@@ -52,7 +52,7 @@
52
.ui-widget-content .ui-state-default,
53
.ui-widget-header .ui-state-default {
54
border: 1px solid #d3d3d3;
55
- background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;
56
font-weight: normal;
57
color: #555555;
58
}
@@ -69,14 +69,18 @@
69
.ui-widget-content .ui-state-focus,
70
.ui-widget-header .ui-state-focus {
71
border: 1px solid #999999;
72
- background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;
73
font-weight: normal;
74
color: #212121;
75
}
76
.ui-state-hover a,
77
.ui-state-hover a:hover,
78
.ui-state-hover a:link,
79
- .ui-state-hover a:visited {
80
color: #212121;
81
text-decoration: none;
82
}
@@ -84,7 +88,7 @@
84
.ui-widget-content .ui-state-active,
85
.ui-widget-header .ui-state-active {
86
border: 1px solid #aaaaaa;
87
- background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;
88
font-weight: normal;
89
color: #212121;
90
}
@@ -101,7 +105,7 @@
101
.ui-widget-content .ui-state-highlight,
102
.ui-widget-header .ui-state-highlight {
103
border: 1px solid #fcefa1;
104
- background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;
105
color: #363636;
106
}
107
.ui-state-highlight a,
@@ -113,7 +117,7 @@
113
.ui-widget-content .ui-state-error,
114
.ui-widget-header .ui-state-error {
115
border: 1px solid #cd0a0a;
116
- background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;
117
color: #cd0a0a;
118
}
119
.ui-state-error a,
@@ -135,18 +139,18 @@
135
.ui-widget-content .ui-priority-secondary,
136
.ui-widget-header .ui-priority-secondary {
137
opacity: .7;
138
- filter:Alpha(Opacity=70);
139
font-weight: normal;
140
}
141
.ui-state-disabled,
142
.ui-widget-content .ui-state-disabled,
143
.ui-widget-header .ui-state-disabled {
144
opacity: .35;
145
- filter:Alpha(Opacity=35);
146
background-image: none;
147
}
148
.ui-state-disabled .ui-icon {
149
- filter:Alpha(Opacity=35); /* For IE8 - See #6059 */
150
}
151
152
/* Icons
@@ -159,27 +163,27 @@
159
}
160
.ui-icon,
161
.ui-widget-content .ui-icon {
162
- background-image: url(images/ui-icons_222222_256x240.png);
163
}
164
.ui-widget-header .ui-icon {
165
- background-image: url(images/ui-icons_222222_256x240.png);
166
}
167
.ui-state-default .ui-icon {
168
- background-image: url(images/ui-icons_888888_256x240.png);
169
}
170
.ui-state-hover .ui-icon,
171
.ui-state-focus .ui-icon {
172
- background-image: url(images/ui-icons_454545_256x240.png);
173
}
174
.ui-state-active .ui-icon {
175
- background-image: url(images/ui-icons_454545_256x240.png);
176
}
177
.ui-state-highlight .ui-icon {
178
- background-image: url(images/ui-icons_2e83ff_256x240.png);
179
}
180
.ui-state-error .ui-icon,
181
.ui-state-error-text .ui-icon {
182
- background-image: url(images/ui-icons_cd0a0a_256x240.png);
183
}
184
185
/* positioning */
@@ -392,15 +396,15 @@
392
393
/* Overlays */
394
.ui-widget-overlay {
395
- background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
396
opacity: .3;
397
- filter: Alpha(Opacity=30);
398
}
399
.ui-widget-shadow {
400
margin: -8px 0 0 -8px;
401
padding: 8px;
402
- background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
403
opacity: .3;
404
- filter: Alpha(Opacity=30);
405
border-radius: 8px;
406
}
1
/*!
2
+ * jQuery UI CSS Framework 1.11.4
3
* http://jqueryui.com
4
*
5
+ * Copyright jQuery Foundation and other contributors
6
* Released under the MIT license.
7
* http://jquery.org/license
8
*
9
+ * http://api.jqueryui.com/category/theming/
10
*
11
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
12
*/
30
}
31
.ui-widget-content {
32
border: 1px solid #aaaaaa;
33
+ background: #ffffff url("images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x;
34
color: #222222;
35
}
36
.ui-widget-content a {
38
}
39
.ui-widget-header {
40
border: 1px solid #aaaaaa;
41
+ background: #cccccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x;
42
color: #222222;
43
font-weight: bold;
44
}
52
.ui-widget-content .ui-state-default,
53
.ui-widget-header .ui-state-default {
54
border: 1px solid #d3d3d3;
55
+ background: #e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;
56
font-weight: normal;
57
color: #555555;
58
}
69
.ui-widget-content .ui-state-focus,
70
.ui-widget-header .ui-state-focus {
71
border: 1px solid #999999;
72
+ background: #dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x;
73
font-weight: normal;
74
color: #212121;
75
}
76
.ui-state-hover a,
77
.ui-state-hover a:hover,
78
.ui-state-hover a:link,
79
+ .ui-state-hover a:visited,
80
+ .ui-state-focus a,
81
+ .ui-state-focus a:hover,
82
+ .ui-state-focus a:link,
83
+ .ui-state-focus a:visited {
84
color: #212121;
85
text-decoration: none;
86
}
88
.ui-widget-content .ui-state-active,
89
.ui-widget-header .ui-state-active {
90
border: 1px solid #aaaaaa;
91
+ background: #ffffff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;
92
font-weight: normal;
93
color: #212121;
94
}
105
.ui-widget-content .ui-state-highlight,
106
.ui-widget-header .ui-state-highlight {
107
border: 1px solid #fcefa1;
108
+ background: #fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x;
109
color: #363636;
110
}
111
.ui-state-highlight a,
117
.ui-widget-content .ui-state-error,
118
.ui-widget-header .ui-state-error {
119
border: 1px solid #cd0a0a;
120
+ background: #fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;
121
color: #cd0a0a;
122
}
123
.ui-state-error a,
139
.ui-widget-content .ui-priority-secondary,
140
.ui-widget-header .ui-priority-secondary {
141
opacity: .7;
142
+ filter:Alpha(Opacity=70); /* support: IE8 */
143
font-weight: normal;
144
}
145
.ui-state-disabled,
146
.ui-widget-content .ui-state-disabled,
147
.ui-widget-header .ui-state-disabled {
148
opacity: .35;
149
+ filter:Alpha(Opacity=35); /* support: IE8 */
150
background-image: none;
151
}
152
.ui-state-disabled .ui-icon {
153
+ filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */
154
}
155
156
/* Icons
163
}
164
.ui-icon,
165
.ui-widget-content .ui-icon {
166
+ background-image: url("images/ui-icons_222222_256x240.png");
167
}
168
.ui-widget-header .ui-icon {
169
+ background-image: url("images/ui-icons_222222_256x240.png");
170
}
171
.ui-state-default .ui-icon {
172
+ background-image: url("images/ui-icons_888888_256x240.png");
173
}
174
.ui-state-hover .ui-icon,
175
.ui-state-focus .ui-icon {
176
+ background-image: url("images/ui-icons_454545_256x240.png");
177
}
178
.ui-state-active .ui-icon {
179
+ background-image: url("images/ui-icons_454545_256x240.png");
180
}
181
.ui-state-highlight .ui-icon {
182
+ background-image: url("images/ui-icons_2e83ff_256x240.png");
183
}
184
.ui-state-error .ui-icon,
185
.ui-state-error-text .ui-icon {
186
+ background-image: url("images/ui-icons_cd0a0a_256x240.png");
187
}
188
189
/* positioning */
396
397
/* Overlays */
398
.ui-widget-overlay {
399
+ background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;
400
opacity: .3;
401
+ filter: Alpha(Opacity=30); /* support: IE8 */
402
}
403
.ui-widget-shadow {
404
margin: -8px 0 0 -8px;
405
padding: 8px;
406
+ background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;
407
opacity: .3;
408
+ filter: Alpha(Opacity=30); /* support: IE8 */
409
border-radius: 8px;
410
}
includes/js/jquery.form.js DELETED
@@ -1,1277 +0,0 @@
1
- /*!
2
- * jQuery Form Plugin
3
- * version: 3.51.0-2014.06.20
4
- * Requires jQuery v1.5 or later
5
- * Copyright (c) 2014 M. Alsup
6
- * Examples and documentation at: http://malsup.com/jquery/form/
7
- * Project repository: https://github.com/malsup/form
8
- * Dual licensed under the MIT and GPL licenses.
9
- * https://github.com/malsup/form#copyright-and-license
10
- */
11
- /*global ActiveXObject */
12
-
13
- // AMD support
14
- (function (factory) {
15
- "use strict";
16
- if (typeof define === 'function' && define.amd) {
17
- // using AMD; register as anon module
18
- define(['jquery'], factory);
19
- } else {
20
- // no AMD; invoke directly
21
- factory( (typeof(jQuery) != 'undefined') ? jQuery : window.Zepto );
22
- }
23
- }
24
-
25
- (function($) {
26
- "use strict";
27
-
28
- /*
29
- Usage Note:
30
- -----------
31
- Do not use both ajaxSubmit and ajaxForm on the same form. These
32
- functions are mutually exclusive. Use ajaxSubmit if you want
33
- to bind your own submit handler to the form. For example,
34
-
35
- $(document).ready(function() {
36
- $('#myForm').on('submit', function(e) {
37
- e.preventDefault(); // <-- important
38
- $(this).ajaxSubmit({
39
- target: '#output'
40
- });
41
- });
42
- });
43
-
44
- Use ajaxForm when you want the plugin to manage all the event binding
45
- for you. For example,
46
-
47
- $(document).ready(function() {
48
- $('#myForm').ajaxForm({
49
- target: '#output'
50
- });
51
- });
52
-
53
- You can also use ajaxForm with delegation (requires jQuery v1.7+), so the
54
- form does not have to exist when you invoke ajaxForm:
55
-
56
- $('#myForm').ajaxForm({
57
- delegation: true,
58
- target: '#output'
59
- });
60
-
61
- When using ajaxForm, the ajaxSubmit function will be invoked for you
62
- at the appropriate time.
63
- */
64
-
65
- /**
66
- * Feature detection
67
- */
68
- var feature = {};
69
- feature.fileapi = $("<input type='file'/>").get(0).files !== undefined;
70
- feature.formdata = window.FormData !== undefined;
71
-
72
- var hasProp = !!$.fn.prop;
73
-
74
- // attr2 uses prop when it can but checks the return type for
75
- // an expected string. this accounts for the case where a form
76
- // contains inputs with names like "action" or "method"; in those
77
- // cases "prop" returns the element
78
- $.fn.attr2 = function() {
79
- if ( ! hasProp ) {
80
- return this.attr.apply(this, arguments);
81
- }
82
- var val = this.prop.apply(this, arguments);
83
- if ( ( val && val.jquery ) || typeof val === 'string' ) {
84
- return val;
85
- }
86
- return this.attr.apply(this, arguments);
87
- };
88
-
89
- /**
90
- * ajaxSubmit() provides a mechanism for immediately submitting
91
- * an HTML form using AJAX.
92
- */
93
- $.fn.ajaxSubmit = function(options) {
94
- /*jshint scripturl:true */
95
-
96
- // fast fail if nothing selected (http://dev.jquery.com/ticket/2752)
97
- if (!this.length) {
98
- log('ajaxSubmit: skipping submit process - no element selected');
99
- return this;
100
- }
101
-
102
- var method, action, url, $form = this;
103
-
104
- if (typeof options == 'function') {
105
- options = { success: options };
106
- }
107
- else if ( options === undefined ) {
108
- options = {};
109
- }
110
-
111
- method = options.type || this.attr2('method');
112
- action = options.url || this.attr2('action');
113
-
114
- url = (typeof action === 'string') ? $.trim(action) : '';
115
- url = url || window.location.href || '';
116
- if (url) {
117
- // clean url (don't include hash vaue)
118
- url = (url.match(/^([^#]+)/)||[])[1];
119
- }
120
-
121
- options = $.extend(true, {
122
- url: url,
123
- success: $.ajaxSettings.success,
124
- type: method || $.ajaxSettings.type,
125
- iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank'
126
- }, options);
127
-
128
- // hook for manipulating the form data before it is extracted;
129
- // convenient for use with rich editors like tinyMCE or FCKEditor
130
- var veto = {};
131
- this.trigger('form-pre-serialize', [this, options, veto]);
132
- if (veto.veto) {
133
- log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
134
- return this;
135
- }
136
-
137
- // provide opportunity to alter form data before it is serialized
138
- if (options.beforeSerialize && options.beforeSerialize(this, options) === false) {
139
- log('ajaxSubmit: submit aborted via beforeSerialize callback');
140
- return this;
141
- }
142
-
143
- var traditional = options.traditional;
144
- if ( traditional === undefined ) {
145
- traditional = $.ajaxSettings.traditional;
146
- }
147
-
148
- var elements = [];
149
- var qx, a = this.formToArray(options.semantic, elements);
150
- if (options.data) {
151
- options.extraData = options.data;
152
- qx = $.param(options.data, traditional);
153
- }
154
-
155
- // give pre-submit callback an opportunity to abort the submit
156
- if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) {
157
- log('ajaxSubmit: submit aborted via beforeSubmit callback');
158
- return this;
159
- }
160
-
161
- // fire vetoable 'validate' event
162
- this.trigger('form-submit-validate', [a, this, options, veto]);
163
- if (veto.veto) {
164
- log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
165
- return this;
166
- }
167
-
168
- var q = $.param(a, traditional);
169
- if (qx) {
170
- q = ( q ? (q + '&' + qx) : qx );
171
- }
172
- if (options.type.toUpperCase() == 'GET') {
173
- options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q;
174
- options.data = null; // data is null for 'get'
175
- }
176
- else {
177
- options.data = q; // data is the query string for 'post'
178
- }
179
-
180
- var callbacks = [];
181
- if (options.resetForm) {
182
- callbacks.push(function() { $form.resetForm(); });
183
- }
184
- if (options.clearForm) {
185
- callbacks.push(function() { $form.clearForm(options.includeHidden); });
186
- }
187
-
188
- // perform a load on the target only if dataType is not provided
189
- if (!options.dataType && options.target) {
190
- var oldSuccess = options.success || function(){};
191
- callbacks.push(function(data) {
192
- var fn = options.replaceTarget ? 'replaceWith' : 'html';
193
- $(options.target)[fn](data).each(oldSuccess, arguments);
194
- });
195
- }
196
- else if (options.success) {
197
- callbacks.push(options.success);
198
- }
199
-
200
- options.success = function(data, status, xhr) { // jQuery 1.4+ passes xhr as 3rd arg
201
- var context = options.context || this ; // jQuery 1.4+ supports scope context
202
- for (var i=0, max=callbacks.length; i < max; i++) {
203
- callbacks[i].apply(context, [data, status, xhr || $form, $form]);
204
- }
205
- };
206
-
207
- if (options.error) {
208
- var oldError = options.error;
209
- options.error = function(xhr, status, error) {
210
- var context = options.context || this;
211
- oldError.apply(context, [xhr, status, error, $form]);
212
- };
213
- }
214
-
215
- if (options.complete) {
216
- var oldComplete = options.complete;
217
- options.complete = function(xhr, status) {
218
- var context = options.context || this;
219
- oldComplete.apply(context, [xhr, status, $form]);
220
- };
221
- }
222
-
223
- // are there files to upload?
224
-
225
- // [value] (issue #113), also see comment:
226
- // https://github.com/malsup/form/commit/588306aedba1de01388032d5f42a60159eea9228#commitcomment-2180219
227
- var fileInputs = $('input[type=file]:enabled', this).filter(function() { return $(this).val() !== ''; });
228
-
229
- var hasFileInputs = fileInputs.length > 0;
230
- var mp = 'multipart/form-data';
231
- var multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp);
232
-
233
- var fileAPI = feature.fileapi && feature.formdata;
234
- log("fileAPI :" + fileAPI);
235
- var shouldUseFrame = (hasFileInputs || multipart) && !fileAPI;
236
-
237
- var jqxhr;
238
-
239
- // options.iframe allows user to force iframe mode
240
- // 06-NOV-09: now defaulting to iframe mode if file input is detected
241
- if (options.iframe !== false && (options.iframe || shouldUseFrame)) {
242
- // hack to fix Safari hang (thanks to Tim Molendijk for this)
243
- // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d
244
- if (options.closeKeepAlive) {
245
- $.get(options.closeKeepAlive, function() {
246
- jqxhr = fileUploadIframe(a);
247
- });
248
- }
249
- else {
250
- jqxhr = fileUploadIframe(a);
251
- }
252
- }
253
- else if ((hasFileInputs || multipart) && fileAPI) {
254
- jqxhr = fileUploadXhr(a);
255
- }
256
- else {
257
- jqxhr = $.ajax(options);
258
- }
259
-
260
- $form.removeData('jqxhr').data('jqxhr', jqxhr);
261
-
262
- // clear element array
263
- for (var k=0; k < elements.length; k++) {
264
- elements[k] = null;
265
- }
266
-
267
- // fire 'notify' event
268
- this.trigger('form-submit-notify', [this, options]);
269
- return this;
270
-
271
- // utility fn for deep serialization
272
- function deepSerialize(extraData){
273
- var serialized = $.param(extraData, options.traditional).split('&');
274
- var len = serialized.length;
275
- var result = [];
276
- var i, part;
277
- for (i=0; i < len; i++) {
278
- // #252; undo param space replacement
279
- serialized[i] = serialized[i].replace(/\+/g,' ');
280
- part = serialized[i].split('=');
281
- // #278; use array instead of object storage, favoring array serializations
282
- result.push([decodeURIComponent(part[0]), decodeURIComponent(part[1])]);
283
- }
284
- return result;
285
- }
286
-
287
- // XMLHttpRequest Level 2 file uploads (big hat tip to francois2metz)
288
- function fileUploadXhr(a) {
289
- var formdata = new FormData();
290
-
291
- for (var i=0; i < a.length; i++) {
292
- formdata.append(a[i].name, a[i].value);
293
- }
294
-
295
- if (options.extraData) {
296
- var serializedData = deepSerialize(options.extraData);
297
- for (i=0; i < serializedData.length; i++) {
298
- if (serializedData[i]) {
299
- formdata.append(serializedData[i][0], serializedData[i][1]);
300
- }
301
- }
302
- }
303
-
304
- options.data = null;
305
-
306
- var s = $.extend(true, {}, $.ajaxSettings, options, {
307
- contentType: false,
308
- processData: false,
309
- cache: false,
310
- type: method || 'POST'
311
- });
312
-
313
- if (options.uploadProgress) {
314
- // workaround because jqXHR does not expose upload property
315
- s.xhr = function() {
316
- var xhr = $.ajaxSettings.xhr();
317
- if (xhr.upload) {
318
- xhr.upload.addEventListener('progress', function(event) {
319
- var percent = 0;
320
- var position = event.loaded || event.position; /*event.position is deprecated*/
321
- var total = event.total;
322
- if (event.lengthComputable) {
323
- percent = Math.ceil(position / total * 100);
324
- }
325
- options.uploadProgress(event, position, total, percent);
326
- }, false);
327
- }
328
- return xhr;
329
- };
330
- }
331
-
332
- s.data = null;
333
- var beforeSend = s.beforeSend;
334
- s.beforeSend = function(xhr, o) {
335
- //Send FormData() provided by user
336
- if (options.formData) {
337
- o.data = options.formData;
338
- }
339
- else {
340
- o.data = formdata;
341
- }
342
- if(beforeSend) {
343
- beforeSend.call(this, xhr, o);
344
- }
345
- };
346
- return $.ajax(s);
347
- }
348
-
349
- // private function for handling file uploads (hat tip to YAHOO!)
350
- function fileUploadIframe(a) {
351
- var form = $form[0], el, i, s, g, id, $io, io, xhr, sub, n, timedOut, timeoutHandle;
352
- var deferred = $.Deferred();
353
-
354
- // #341
355
- deferred.abort = function(status) {
356
- xhr.abort(status);
357
- };
358
-
359
- if (a) {
360
- // ensure that every serialized input is still enabled
361
- for (i=0; i < elements.length; i++) {
362
- el = $(elements[i]);
363
- if ( hasProp ) {
364
- el.prop('disabled', false);
365
- }
366
- else {
367
- el.removeAttr('disabled');
368
- }
369
- }
370
- }
371
-
372
- s = $.extend(true, {}, $.ajaxSettings, options);
373
- s.context = s.context || s;
374
- id = 'jqFormIO' + (new Date().getTime());
375
- if (s.iframeTarget) {
376
- $io = $(s.iframeTarget);
377
- n = $io.attr2('name');
378
- if (!n) {
379
- $io.attr2('name', id);
380
- }
381
- else {
382
- id = n;
383
- }
384
- }
385
- else {
386
- $io = $('<iframe name="' + id + '" src="'+ s.iframeSrc +'" />');
387
- $io.css({ position: 'absolute', top: '-1000px', left: '-1000px' });
388
- }
389
- io = $io[0];
390
-
391
-
392
- xhr = { // mock object
393
- aborted: 0,
394
- responseText: null,
395
- responseXML: null,
396
- status: 0,
397
- statusText: 'n/a',
398
- getAllResponseHeaders: function() {},
399
- getResponseHeader: function() {},
400
- setRequestHeader: function() {},
401
- abort: function(status) {
402
- var e = (status === 'timeout' ? 'timeout' : 'aborted');
403
- log('aborting upload... ' + e);
404
- this.aborted = 1;
405
-
406
- try { // #214, #257
407
- if (io.contentWindow.document.execCommand) {
408
- io.contentWindow.document.execCommand('Stop');
409
- }
410
- }
411
- catch(ignore) {}
412
-
413
- $io.attr('src', s.iframeSrc); // abort op in progress
414
- xhr.error = e;
415
- if (s.error) {
416
- s.error.call(s.context, xhr, e, status);
417
- }
418
- if (g) {
419
- $.event.trigger("ajaxError", [xhr, s, e]);
420
- }
421
- if (s.complete) {
422
- s.complete.call(s.context, xhr, e);
423
- }
424
- }
425
- };
426
-
427
- g = s.global;
428
- // trigger ajax global events so that activity/block indicators work like normal
429
- if (g && 0 === $.active++) {
430
- $.event.trigger("ajaxStart");
431
- }
432
- if (g) {
433
- $.event.trigger("ajaxSend", [xhr, s]);
434
- }
435
-
436
- if (s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false) {
437
- if (s.global) {
438
- $.active--;
439
- }
440
- deferred.reject();
441
- return deferred;
442
- }
443
- if (xhr.aborted) {
444
- deferred.reject();
445
- return deferred;
446
- }
447
-
448
- // add submitting element to data if we know it
449
- sub = form.clk;
450
- if (sub) {
451
- n = sub.name;
452
- if (n && !sub.disabled) {
453
- s.extraData = s.extraData || {};
454
- s.extraData[n] = sub.value;
455
- if (sub.type == "image") {
456
- s.extraData[n+'.x'] = form.clk_x;
457
- s.extraData[n+'.y'] = form.clk_y;
458
- }
459
- }
460
- }
461