Comments – wpDiscuz - Version 3.2.0

Version Description

  • Added: Simple CAPTCHA generation and storage types (file system or sessions)
  • Added: Guest commenter username control (max/min length)
  • Added: Uses guest email to detect registered account (Sometimes registered users comment as guest using the same email address. wpDiscuz can detect the account role using guest email and display commenter label correctly.)
  • Added: Addon system for wpDiscuz extension.
  • Added: Better symmetric and responsive comment form. However please note, this change doesn't have any relation to the new wpDiscuz UI/UX. It'll available next month.
  • Added: German (de_DE) translation, thanks to Richard Rein
  • Updated: Polish (pl_PL) translation, thanks to Radosaw Rak
  • Changed: Anonymous user emails and filled comment form
  • Security: Prevented possible Reflected XSS found on wpDiscuz 3.1.4. Thanks to Kacper Szurek
  • Fixed Bug: Incorrect comment escaping/slashing
  • Fixed Bug: CSS issues related to hard clear both attribute
  • Optimized:
    • CAPTCHA reloader icon: 352 > 208 Bytes
    • Comment individual link icon: 1,184 > 132 Bytes
    • Vote up icon: 2,974 > 255 Bytes
    • Vote down icon: 2,986 > 253 Bytes

IMPORTANT:

  • If you have JetPack installed please deactivate JatPack comments, it affects wpDiscuz
  • If you have a Cache Plugin and CDN, please delete all caches and purge CDN after wpDiscuz update.
Download this release

Release Info

Developer AdvancedCoding
Plugin Icon 128x128 Comments – wpDiscuz
Version 3.2.0
Comparing to
See all releases

Code changes from version 3.1.4 to 3.2.0

Files changed (54) hide show
  1. assets/addons/censore/header-off.png +0 -0
  2. assets/addons/censore/header.png +0 -0
  3. assets/addons/mycred/header-off.png +0 -0
  4. assets/addons/mycred/header.png +0 -0
  5. assets/addons/recaptcha/header-off.png +0 -0
  6. assets/addons/recaptcha/header.png +0 -0
  7. assets/addons/recaptcha/recaptcha-icon.jpeg +0 -0
  8. assets/css/fv.min.css +0 -1
  9. assets/css/options-css.min.css +10 -5
  10. assets/css/wpdiscuz-rtl.min.css +21 -3
  11. assets/css/wpdiscuz.min.css +1112 -1
  12. assets/img/captcha-loading.png +0 -0
  13. assets/img/gc/1.png +0 -0
  14. assets/img/gc/2.png +0 -0
  15. assets/img/gc/3.png +0 -0
  16. assets/img/gc/4.png +0 -0
  17. assets/img/gc/5.png +0 -0
  18. assets/img/icon-link.gif +0 -0
  19. assets/img/progressbar.gif +0 -0
  20. assets/img/thumbs-down.png +0 -0
  21. assets/img/thumbs-up.png +0 -0
  22. assets/js/wpdiscuz-options.js +4 -0
  23. assets/js/wpdiscuz-options.min.js +1 -1
  24. assets/js/wpdiscuz.js +67 -35
  25. assets/js/wpdiscuz.min.js +1 -1
  26. assets/{js → third-party/autogrow}/jquery.autogrowtextarea.min.js +0 -0
  27. assets/third-party/contenthover/jquery.contenthover.min.js +16 -0
  28. assets/{js → third-party/cookie}/jquery.cookie.js +0 -0
  29. assets/{js → third-party/cookie}/jquery.cookie.min.js +0 -0
  30. assets/third-party/jquery-ui/index.html +0 -0
  31. assets/third-party/jquery-ui/jquery-ui.min.js +0 -423
  32. assets/{js → third-party/validator}/validator.js +0 -0
  33. assets/third-party/validator/validator.min.css +2 -0
  34. assets/{js → third-party/validator}/validator.min.js +1 -1
  35. class.WpdiscuzCore.php +132 -100
  36. languages/wpdiscuz-de_DE.mo +0 -0
  37. languages/wpdiscuz-de_DE.po +1342 -0
  38. languages/wpdiscuz-pl_PL.mo +0 -0
  39. languages/wpdiscuz-pl_PL.po +237 -217
  40. options/class.WpdiscuzOptions.php +25 -1
  41. options/class.WpdiscuzOptionsSerialized.php +58 -4
  42. options/html-addons.php +85 -0
  43. options/html-options.php +16 -5
  44. options/options-layouts/settings-addons.php +28 -0
  45. options/options-layouts/settings-general.php +43 -25
  46. options/options-layouts/settings-integrations.php +3 -4
  47. options/options-layouts/settings-show-hide.php +24 -7
  48. options/phrases-layouts/phrases-notification.php +22 -0
  49. readme.txt +29 -4
  50. templates/comment/class.WpdiscuzWalker.php +15 -13
  51. templates/comment/comment-form.php +9 -9
  52. utils/captcha/captcha.php +49 -0
  53. utils/class.WpdiscuzEmailHelper.php +5 -5
  54. utils/class.WpdiscuzHelper.php +108 -98
assets/addons/censore/header-off.png ADDED
Binary file
assets/addons/censore/header.png ADDED
Binary file
assets/addons/mycred/header-off.png ADDED
Binary file
assets/addons/mycred/header.png ADDED
Binary file
assets/addons/recaptcha/header-off.png ADDED
Binary file
assets/addons/recaptcha/header.png ADDED
Binary file
assets/addons/recaptcha/recaptcha-icon.jpeg DELETED
Binary file
assets/css/fv.min.css DELETED
@@ -1 +0,0 @@
1
- .wpdiscuz-item .tooltip{float:left;top:2px;left:7px;position:relative;z-index:2}.wpdiscuz-item .tooltip:hover{z-index:3}.wpdiscuz-item .tooltip>span{display:inline-block;width:15px;height:15px;line-height:15px;font-size:.9em;font-weight:bold;text-align:center;color:#FFF;cursor:help;background-color:#00aeef;position:relative;border-radius:10px}.wpdiscuz-item .tooltip .content{opacity:0;width:200px;background-color:#333;color:#FFF;font-size:.9em;position:absolute;top:0;left:20px;padding:8px;border-radius:6px;pointer-events:none;transition:.2s cubic-bezier(0.1,0.1,0.25,2);-webkit-transition:.3s cubic-bezier(0.1,0.2,0.5,2.2);-moz-transition:.3s cubic-bezier(0.1,0.2,0.5,2.2)}.wpdiscuz-item .tooltip p{padding:0}.wpdiscuz-item .tooltip.down .content{left:auto;right:0;top:30px}.wpdiscuz-item .tooltip:hover .content{opacity:1;left:36px}.wpdiscuz-item .tooltip .content b{height:0;width:0;border-color:#333 #333 transparent transparent;border-style:solid;border-width:9px 7px;position:absolute;left:-14px;top:8px}.wpdiscuz-item .tooltip.down .content b{left:auto;right:6px;top:-10px;border-width:5px;border-color:transparent #333 #333 transparent}.wpdiscuz-item .alert{float:left;margin:0;padding:2px 10px;color:#d00;border-radius:3px 4px 4px 3px;background-color:#ffe8e8;white-space:pre;position:relative;left:-15px;opacity:0;z-index:1;transition:.15s ease-out}.wpdiscuz-item .alert{max-width:100%;position:absolute;top:-15px;font-size:12px}.wpdiscuz-item.bad .alert{left:0;opacity:1;padding:2px 4px;line-height:14px}@keyframes shake{15%{transform:translateX(-5px)}30%{transform:translateX(5px)}45%{transform:translateX(-3px)}60%{transform:translateX(3px)}75%{transform:translateX(2px)}100%{transform:none}}@-webkit-keyframes shake{25%{-webkit-transform:translateX(-6px)}75%{-webkit-transform:translateX(6px)}}form fieldset{clear:both;margin:0 0 10px 0}form .wpdiscuz-item{padding:5px 0;position:relative;height:2em;font-family:Lato,sans-serif}form .wpdiscuz-item.wpdiscuz-items{height:auto}.wpdiscuz-item label,.wpdiscuz-item .label{float:left;cursor:pointer}.wpdiscuz-item label span,.wpdiscuz-item .label{float:left;width:160px;text-transform:capitalize;line-height:2em}.wpdiscuz-item input,.wpdiscuz-item textarea{float:left;padding:3px 4px;width:210px;-webkit-transition:.2s;-moz-transition:.2s;transition:.2s}.wpdiscuz-item input[type=checkbox]{width:auto}.label ~ label{vertical-align:middle;margin:.3em 1.2em 0 0}.wpdiscuz-item input.short{width:90px}.wpdiscuz-item input:focus:not([type="checkbox"]),.wpdiscuz-item textarea:focus{box-shadow:0 0 4px #bcbcbc;border:1px solid #bcbcbc}.wpdiscuz-item select{float:left;width:220px;padding:2px 0;margin:0;border:1px solid #CCC;text-transform:capitalize}.wpdiscuz-item select option{padding:1px}.wpdiscuz-item>.extra{float:left;font-size:.9em;color:#999;line-height:2em;margin-left:13px}.wpdiscuz-item.multi .input{float:left}.wpdiscuz-item.multi input{float:left;margin-right:5px;width:35px;text-align:center}form .wpdiscuz-item.multi input:nth-last-child(-n+2){margin:0}.wpdiscuz-item.wpdiscuz-items input{border-top:5px solid #e1e1e1;margin:0 0 0 160px}.bad input,.bad select,.bad textarea{box-shadow:0 0 4px -2px #ce5454;position:relative;left:0}.wc_comm_form input{box-shadow:0 0 4px -2px #d4d0ba}.wc_comm_form textarea{box-shadow:0 0 4px -2px #d4d0ba}
 
assets/css/options-css.min.css CHANGED
@@ -7,9 +7,14 @@
7
  .wc-form .resp-tabs-container.integrationsChild {margin-bottom: 5px;}
8
 
9
  /*addons*/
10
- /* #menu-comments ul > li:nth-child(3) a{ color:#25ACEA!important; text-shadow: 1px 1px 1px #000; } */
11
  .wpdiscuz_addons_page .wpdiscuz-addons-wrapper {box-sizing: border-box;}
12
- .wpdiscuz_addons_page .wpdiscuz-addon-block {width: 32%; height: 250px; max-height: 250px; float: left; margin-left: 1%; margin-bottom: 10px; background: #eee;}
13
- .wpdiscuz_addons_page .wpdiscuz-addon-block .addon-thumb {float: left; margin: 10px;}
14
- .wpdiscuz_addons_page .wpdiscuz-addon-block .addon-info {display: inline; margin-top: 10px;}
15
- .wpdiscuz_addons_page .addon-isactive {margin: 20px;}
 
 
 
 
 
7
  .wc-form .resp-tabs-container.integrationsChild {margin-bottom: 5px;}
8
 
9
  /*addons*/
10
+ #menu-comments ul > li:nth-child(3) a{ color:#25ACEA!important; text-shadow: 1px 1px 1px #000; }
11
  .wpdiscuz_addons_page .wpdiscuz-addons-wrapper {box-sizing: border-box;}
12
+ .wpdiscuz_addons_page .wpdiscuz-addon-block {width: 330px; padding-top:10px; height:auto; float: left; margin-right: 1%; margin-bottom: 20px; background: #fff; border: 2px solid #e5e5e5; box-shadow: 0 3px 3px rgba(0, 0, 0, 0.04);}
13
+ .wpdiscuz_addons_page .wpdiscuz-addon-block .addon-thumb {float:none; width: 310px; padding:10px; margin-top:2px; height:180px;}
14
+ .wpdiscuz_addons_page .wpdiscuz-addon-block .addon-info {display:block; margin:0px; background:#07B290; padding:10px 15px; border:3px solid #fff; border-top:none; margin-top:10px;}
15
+ .wpdiscuz_addons_page .wpdiscuz-addon-block .addon-title { font-size:16px; font-weight:bold; color:#FFFFFF; margin:0px; line-height:18px; display:inline-block; text-decoration:none;}
16
+ .wpdiscuz_addons_page .wpdiscuz-addon-block .addon-title:hover { color:#D8FF6D;}
17
+ .wpdiscuz_addons_page .wpdiscuz-addon-block .addon-desc { font-size:13px; color:#FFFFFF; margin:0px; line-height:18px; margin:0px; padding:10px 0px 0px 0px; font-style:italic;}
18
+ .wpdiscuz_addons_page .wpdiscuz-addon-block .addon-isactive {margin: 0px; padding:10px; background:#e5e5e5; text-align:center;}
19
+ .wpdiscuz_addons_page .wpdiscuz-addon-block .addon-button{ margin-bottom:10px;}
20
+ .wpdiscuz_addons_page .wpdiscuz-addon-block .note-installed { padding:10px 20px; background:#fff; border: 1px solid #ddd; box-shadow: 0 3px 3px rgba(0, 0, 0, 0.04); color:#07B290; font-size:14px; margin-top:20px; }
assets/css/wpdiscuz-rtl.min.css CHANGED
@@ -1,9 +1,15 @@
 
1
  #wpcomm .wc-field-comment .wc-field-textarea{margin-left:2px;margin-right:65px}
2
  #wpcomm .wc-form-wrapper .avatar{margin-top:0}
3
  #wpcomm .wc-field-comment .wc-field-avatararea{float:right}
4
- #wpcomm .wc-field-submit{float:left; text-align:left;}
5
- #wpcomm .wc-field-captcha{float:right; text-align: right;}
6
- #wpcomm .wc_notification_checkboxes{text-align:left;}
 
 
 
 
 
7
  #wpcomm .wc-comment .wc-comment-right{margin-left:0;margin-right:70px}
8
  #wpcomm .wc-comment-author{float:right; text-align: right;}
9
  #wpcomm .wc-comment-date{float:left}
@@ -21,17 +27,29 @@
21
  #wpcomm .wc_comment_level-3{ margin-right: 40px!important; margin-left: 0px!important;}
22
  #wpcomm .wc_comment_level-4 { margin-right: 40px!important; margin-left: 0px!important; }
23
  #wpcomm .wc_comment_level-5 { margin-right: 40px!important; margin-left: 0px!important; }
 
 
 
 
 
24
  @media screen and (max-width:600px){
25
  #wpcomm .wc-field-comment .wc-field-textarea{ margin-right: 30px; }
 
26
  #wpcomm .wc-reply{ margin-right:25px!important }
27
  #wpcomm .wc_comment_level-3{ margin-right:0px!important; }
28
  #wpcomm .wc_comment_level-4{ margin-right:0px!important; }
29
  #wpcomm .wc_comment_level-5{ margin-right:0px!important; }
 
 
 
 
 
30
  #wpcomm .wc-comment .wc-comment-right{ margin-right: 55px!important; }
31
  #wpcomm .wc-reply .wc-comment-right{ margin-right: 55px!important; }
32
  }
33
  @media screen and (max-width:420px){
34
  #wpcomm .wc-field-comment .wc-field-textarea{ margin-right: 0px; }
 
35
  #wpcomm .wc-comment .wc-comment-right, #wpcomm .wc-reply .wc-comment-right{ margin-right:0px!important; }
36
  #wpcomm .wc-comment .wc-comment-left .avatar{ float:right!important; }
37
  #wpcomm .wc-comment .wc-comment-left .wc-comment-label{ margin-right:33px; }
1
+ #wpcomm .wc-comment-title{ text-align:left;}
2
  #wpcomm .wc-field-comment .wc-field-textarea{margin-left:2px;margin-right:65px}
3
  #wpcomm .wc-form-wrapper .avatar{margin-top:0}
4
  #wpcomm .wc-field-comment .wc-field-avatararea{float:right}
5
+ #wpcomm .wc-form-footer { margin-right: 65px; margin-left: 0px; }
6
+ #wpcomm .wc-author-data { float: right;text-align: right;}
7
+ #wpcomm .wc-form-submit { float: left;text-align: left;}
8
+ #wpcomm .wc-field-captcha{ float:right; text-align: left;}
9
+ #wpcomm .wc_notification_checkboxes{ text-align:left;}
10
+ #wpcomm .wc-field-captcha .wc-captcha-label{ float:left; text-align:left;}
11
+ #wpcomm .wc-field-captcha .wc-captcha-input{ float:right; }
12
+ #wpcomm .wc-field-submit { clear:right; text-align:left; }
13
  #wpcomm .wc-comment .wc-comment-right{margin-left:0;margin-right:70px}
14
  #wpcomm .wc-comment-author{float:right; text-align: right;}
15
  #wpcomm .wc-comment-date{float:left}
27
  #wpcomm .wc_comment_level-3{ margin-right: 40px!important; margin-left: 0px!important;}
28
  #wpcomm .wc_comment_level-4 { margin-right: 40px!important; margin-left: 0px!important; }
29
  #wpcomm .wc_comment_level-5 { margin-right: 40px!important; margin-left: 0px!important; }
30
+ #wpcomm .wc_comment_level-6 { margin-right: 40px!important; margin-left: 0px!important; }
31
+ #wpcomm .wc_comment_level-7 { margin-right: 40px!important; margin-left: 0px!important; }
32
+ #wpcomm .wc_comment_level-8 { margin-right: 40px!important; margin-left: 0px!important; }
33
+ #wpcomm .wc_comment_level-9 { margin-right: 40px!important; margin-left: 0px!important; }
34
+ #wpcomm .wc_comment_level-10 { margin-right: 40px!important; margin-left: 0px!important; }
35
  @media screen and (max-width:600px){
36
  #wpcomm .wc-field-comment .wc-field-textarea{ margin-right: 30px; }
37
+ #wpcomm .wc-form-footer{ margin-right:30px; }
38
  #wpcomm .wc-reply{ margin-right:25px!important }
39
  #wpcomm .wc_comment_level-3{ margin-right:0px!important; }
40
  #wpcomm .wc_comment_level-4{ margin-right:0px!important; }
41
  #wpcomm .wc_comment_level-5{ margin-right:0px!important; }
42
+ #wpcomm .wc_comment_level-6{ margin-right:0px!important; }
43
+ #wpcomm .wc_comment_level-7{ margin-right:0px!important; }
44
+ #wpcomm .wc_comment_level-8{ margin-right:0px!important; }
45
+ #wpcomm .wc_comment_level-9{ margin-right:0px!important; }
46
+ #wpcomm .wc_comment_level-10{ margin-right:0px!important; }
47
  #wpcomm .wc-comment .wc-comment-right{ margin-right: 55px!important; }
48
  #wpcomm .wc-reply .wc-comment-right{ margin-right: 55px!important; }
49
  }
50
  @media screen and (max-width:420px){
51
  #wpcomm .wc-field-comment .wc-field-textarea{ margin-right: 0px; }
52
+ #wpcomm .wc-form-footer{ margin-right:0px; }
53
  #wpcomm .wc-comment .wc-comment-right, #wpcomm .wc-reply .wc-comment-right{ margin-right:0px!important; }
54
  #wpcomm .wc-comment .wc-comment-left .avatar{ float:right!important; }
55
  #wpcomm .wc-comment .wc-comment-left .wc-comment-label{ margin-right:33px; }
assets/css/wpdiscuz.min.css CHANGED
@@ -1 +1,1112 @@
1
- #wpcomm * { box-sizing:border-box; }#wpcomm span{ display:inline; }#wpcomm{ margin:15px 5px;padding:1px 0 10px 0;border-top:#ddd solid 1px }#wc-comment-header{ padding:20px 5px 1px 5px;display:block;float:none;clear:both;font-size:18px }#wpcomm form .wpdiscuz-item{ display:block; height:auto;}.wpdiscuz-item input{border-radius:0;height:auto;width:auto}#wpcomm form{ margin:0!important;padding:0!important;background:none;border:0;width:auto!important }#wpcomm form div{ margin:0 }#wc_show_hide_loggedin_username{padding:10px 5px 5px 5px;font-size:13px}#wpcomm .wc_new_comment_and_replies{margin:0;padding:0;width:100%;height:auto;background:transparent}#wpcomm .wc_new_comment_and_replies .wc_new_comment{float:right;display:none;padding:3px 10px;font-size:12px;margin:1px 0 1px 3px;cursor:pointer;color:#fff;line-height:15px}#wpcomm .wc_new_comment_and_replies .wc_new_reply{float:right;display:none;padding:3px 10px;font-size:12px;margin:1px 0 1px 1px;cursor:pointer;color:#fff;line-height:15px}#wpcomm .wc-comment-bar{width:100%;padding:0;display:block}#wpcomm .wc-comment-title{margin:0;line-height:18px;font-weight:bold;padding:10px;margin-bottom:10px;font-size:13px;text-align:right;border-bottom:#ccc dotted 1px;padding-bottom:10px}#wpcomm .wc-form-wrapper{padding:10px;margin-top:0px;border:1px solid #f1f1f1;clear:both;}#wpcomm .wc-author-data{margin-bottom:0px}#wpcomm .wc-field-name{width:49%;float:left}#wpcomm .wc-field-email{width:49%;float:right;text-align:right}#wpcomm .wc-field-comment{margin:5px auto 1px auto}#wpcomm .wc-field-comment .wc-field-avatararea{width:60px;float:left}#wpcomm .wc-field-comment .wc-field-textarea{margin-left:65px}#wpcomm .wc-field-captcha{width:49%;float:left;text-align:left;margin:0;height:auto!important}#wpcomm .wc-field-submit{width:49%;float:right;text-align:right;margin:0;padding:5px 0 13px 0;}#wpcomm .wc-field-website{width:100%;padding:0 0 10px 0;margin:0;display:block}#wpcomm .wc-field-name input[type="text"]{width:99%;max-width:100%;padding:3px 5px;font-size:14px;margin:0;height:29px}#wpcomm .wc-field-website input[type="url"],#wpcomm .wc-field-website input[type="text"]{width:100%;max-width:100%;padding:3px 5px;font-size:14px;margin:0;height:29px}#wpcomm .wc-field-email input[type="email"]{width:100%;max-width:100%;padding:3px 5px;font-size:14px;margin:0;height:29px}#wpcomm .wc-field-captcha input[type="text"]{max-width:45%;min-width:85px;padding:3px 5px;font-size:14px;margin:0 5px 2px 0;height:27px}#wpcomm .wc-field-submit input[type="button"]{margin:1px;border:#ddd 1px solid;font-size:13px;line-height:16px;padding:6px 15px;clear:both;float:none}#wpcomm .captcha_msg{color:#999;font-family:Lato,sans-serif;font-size:13px;line-height:18px;display:block;clear:both;padding:5px 0 0 0}#wpcomm .wc-field-comment textarea,#wpcomm .wc-comment .wc-comment-right textarea{width:100%;max-width:100%;height:48px;min-height:48px!important;padding:5px;box-sizing:border-box;border-radius:0}#wpcomm .wc-label{display:block;font-size:14px;padding:5px}#wpcomm .wc_manage_subscribtions{cursor:pointer;padding:0 0 5px 0;display:block;font-size:13px;line-height:16px;font-family:Lato,sans-serif}#wpcomm .wc_notification_checkboxes{padding:7px 0 7px 0;text-align:right;display:none;border-top:1px dotted #ddd;line-height:18px;font-size:13px}#wpcomm .wc_notification_checkboxes input[type="checkbox"],#wpcomm .wc_notification_checkboxes input[type="radio"]{overflow:none;width:inherit;font-size:13px;margin:0;padding:0;display:inline;clear:both;float:none;max-height:20px;margin:0 3px}#wpcomm .wc_notification_checkboxes label{clear:both;float:none;font-weight:normal}#wpcomm .wc-label-comment-notify{display:inline;font-size:13px;padding:0;margin:0;border:0;line-height:15px;text-decoration:none;color:#999;font-family:Lato,sans-serif;cursor:pointer}#wpcomm .wc-label-reply-notify,#wpcomm .wc-notification-none{display:inline;font-size:13px;padding:0;margin:0;border:0;line-height:15px;text-decoration:none;color:#999;font-family:Lato,sans-serif;cursor:pointer}#wpcomm .wc-label-all-reply-notify{display:inline;font-size:13px;padding:0;margin:0;border:0;line-height:15px;text-decoration:none;color:#999;font-family:Lato,sans-serif;cursor:pointer}#wpcomm .wc-field-captcha .wc-label{font-size:14px;padding:5px;text-align:center;display:inline}#wpcomm input[type="text"],#wpcomm input[type="email"],#wpcomm input[type="url"],#wpcomm textarea{font-size:14px;color:#777;font-family:Lato,sans-serif;box-sizing:border-box;margin:0;clear:both;float:none;display:inline}#wpcomm .wc-copyright{margin:0 0 0 auto;text-align:right;display:block;padding-top:2px}#wpcomm .wc-copyright a{font-size:9px;color:#aaa;cursor:help;text-decoration:none;margin:0;padding:0;border:0}#wpcomm .wc-thread-wrapper{padding:10px 0;margin-bottom:10px}#wpcomm .wc-comment{margin-bottom:13px}#wpcomm .wc-comment .wc-field-submit{padding:5px 0 5px 0}#wpcomm .wc-comment .wc-form-wrapper{padding:10px 10px 7px 10px}#wpcomm .wc-comment .wc-comment-left{width:62px;float:left;text-align:center;font-family:Lato,sans-serif;line-height:16px}#wpcomm .wc-comment .wc-comment-right{margin-left:70px;border:#f5f5f5 1px solid;padding:10px 10px 3px 10px; display:block; }#wpcomm .wc-reply .wc-comment-right{margin-left:70px;border:#f5f5f5 1px solid;padding:10px 10px 3px 10px}#wpcomm .wc-reply{margin-top:10px;margin-bottom:0;margin-left:40px}#wpcomm .wc-must-login{margin:0;font-size:14px;line-height:16px;padding:10px;text-align:center}#wpcomm hr{background-color:rgba(0,0,0,0.1);border:0 none;height:1px;margin:10px 0}#wpcomm .avatar{border:1px solid rgba(0,0,0,0.1);padding:2px;margin:0 auto;float:none;display:inline;width:48px;height:auto}#wpcomm .wc-form-wrapper .avatar{margin-top:3px}#wpcomm .wc-comment-text{text-align:left;padding-bottom:5px;line-height:20px;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}#wpcomm .wc-comment-text img{max-width:90%;height:auto}#wpcomm .wc-comment-header{margin-bottom:7px;font-family:Lato,sans-serif}#wpcomm .wc-comment-author{font-size:16px;width:40%;float:left;white-space:normal; text-align:left;}#wpcomm .wc-comment-author a{font-size:16px;white-space:normal;text-decoration:none; line-height:25px; }#wpcomm .wc-comment-label{color:#fff;padding:2px 5px;font-size:12px;margin:4px auto;text-align:center;display:table;line-height:16px}#wpcomm .wc-comment-date{font-size:12px;color:#999;float:right;text-align:right;white-space:nowrap;line-height:23px}#wpcomm .wc-comment-footer{font-size:12px;font-weight:normal;color:#999;margin-top:12px;min-height:28px;font-family:Lato,sans-serif; text-align:left;}#wpcomm .wc-comment-footer a,#wpcomm .wc-comment-footer span.wc_editable_comment,#wpcomm .wc-comment-footer span.wc_save_edited_comment,#wpcomm span.wc_cancel_edit{text-decoration:none;font-size:13px;font-weight:bold;cursor:pointer}#wpcomm .wc-comment-footer .share_buttons_box img{vertical-align:middle}#wpcomm .wc-comment-footer .wc-voted{color:#666;cursor:default}#wpcomm .wc-comment-footer .wc-vote-img-up{padding:0;margin:0 0 -2px 0;vertical-align:baseline;display:inline;float:none;clear:both;border:0;background:transparent;width:16px;height:16px;border-radius:0;box-shadow:none;box-sizing:border-box}#wpcomm .wc-comment-footer .wc-vote-img-down{padding:0;margin:0 0 -6px 0;vertical-align:baseline;display:inline;float:none;clear:both;border:0;background:transparent;width:16px;height:16px;border-radius:0;box-shadow:none;box-sizing:border-box}#wpcomm .wc-comment-footer .wc-vote-result{padding:2px 6px 2px 5px;color:#fff;font-size:12px;font-weight:bold;display:inline;margin-right:5px}#wpcomm .wc-toggle{float:right;text-align:right;padding-right:0;margin-right:0;color:#999;cursor:pointer;font-size:12px;white-space:nowrap; line-height:24px;}#wpcomm .wpdiscuz-item{background:0;border-radius:0;box-shadow:none}#wc_response_info img{margin:0 auto 0 auto;box-shadow:none}#wpcomm .share_buttons_box img{display:inline!important;width:16px;height:16px}#wpcomm .wc-captcha-label img{display:inline!important;border:0;padding:0 0 0 2px;margin:0;vertical-align:middle}#wpcomm .wc-reply-link,#wpcomm .wc-vote-link,#wpcomm .wc-share-link{cursor:pointer;font-size:13px;font-weight:bold}#wpcomm .wc-form-footer{display:none}#wpcomm .wc-field-captcha .wc-captcha-label{padding:0;display:inline-block}#wpcomm .wc_captcha_refresh_img{cursor:pointer;margin-left:3px;}#wpcomm .wc_captcha_refresh_img img{max-width:16px!important;max-height:16px!important;}#wpcomm .share_buttons_box{display:none}#wpcomm .wc-comment.wc-no-left-margin{margin-left:0!important}.wc-load-more-submit-wrap{width:100%;text-align:center;margin-bottom:20px;margin-top:25px}.wc-load-more-submit{width:auto!important;padding:10px 20px;text-align:center;background-color:#fafafa;border-radius:3px;color:#555;cursor:pointer}.wc-load-more-submit:hover{background-image:-moz-linear-gradient(center top,#f4f4f4,#e6e6e6);background-repeat:repeat-x;box-shadow:0 1px 2px rgba(64,64,64,0.1);color:#7c7c7c}#wpcomm #bywpdiscuz{display:none}#wpcomm .by-wpdiscuz{text-align:right;border-top:#ddd solid 1px;padding:1px 1px 1px 1px}#wpcomm .by-wpdiscuz a{font-size:11px;font-weight:bold;text-align:right;color:#ccc;padding:1px;margin:0;line-height:12px;border:0;text-decoration:none}#wpcomm .wpdimg{border:0;padding:0;margin:0;height:12px;cursor:pointer;display:inline;clear:both}#wc_unsubscribe_message{margin:10px auto 1px auto;padding:10px;text-align:center;border:#0d0 1px dotted;background:#cfc}.wc_unsubscribe_message{font-size:14px;color:#444}#wpcomm .wc_comment_level-3{margin-left:40px!important}#wpcomm .wc_comment_level-4{margin-left:40px!important}#wpcomm .wc_comment_level-5{margin-left:40px!important}#wpcomm .wc_editable_div{-moz-appearance:textfield-multiline;-webkit-appearance:textarea;border:1px solid #ccc;border-radius:0;font:medium -moz-fixed;font:-webkit-small-control;overflow:auto;resize:both;box-sizing:border-box;height:46px;max-width:100%;min-height:46px!important;padding:5px;width:100%}#wpcomm .wc_cancel_edit{display:none}#wpcomm .wc-comment-text p{margin-bottom:10px}#wpcomm .wc-comment-right textarea.wc_edit_comment{height:80px;}#wpcomm .wc_social_plugin_wrapper{width:auto;}#wpcomm .wc_comm_form .wc_secondary_form{clear:both}#wpcomm .wc_comm_form .wc-field-comment{clear:both}#wpcomm .wp-social-login-widget{margin-bottom:15px; }#wpcomm .wc_social_plugin_wrapper .wp-social-login-connect-with{float:left;font-size:13px;padding:2px 7px 0 0;text-transform:uppercase}#wpcomm .wc_social_plugin_wrapper .wp-social-login-provider-list{padding:1px;text-align:left;margin-bottom:-10px}#wpcomm .wc-secondary-forms-social-content .wp-social-login-provider-list{padding:1px;text-align:right}#wpcomm .wc-secondary-forms-social-content .wp-social-login-provider-list img{width:20px;height:20px;float:none;display:inline;border:0}#wpcomm .wc_social_plugin_wrapper .wp-social-login-provider-list img{width:24px;height:24px;float:none;display:inline;border:0}#wpcomm .wc_social_plugin_wrapper .social_connect_ui{padding:0;clear:both;margin:0;margin-top:-20px;margin-bottom:-10px}#wpcomm .wc_social_plugin_wrapper .comment-form-social-connect{display:inherit;padding:0;margin:0;float:left;line-height:35px;padding-right:10px}#wpcomm .wc_social_plugin_wrapper .social_connect_form img{width:24px;height:24px;float:none;display:inline;border:0}#wpcomm .wc_social_plugin_wrapper .social_connect_form{float:left;line-height:35px;text-align:left;vertical-align:middle}#wpcomm .wc_social_plugin_wrapper .comment-form-social-connect label{display:inherit;padding:0;margin:0;font-style:normal;font-weight:normal;border:0;font-size:13px;text-transform:uppercase}#social_connect_facebook_auth,#social_connect_twitter_auth,#social_connect_google_auth,#social_connect_google_plus_auth,#social_connect_yahoo_auth,#social_connect_wordpress_auth{clear:both;padding:0;margin:0}#wpcomm .wc-secondary-forms-social-content .social_connect_ui{padding:0;clear:both;margin:0;text-align:right}#wpcomm .wc-secondary-forms-social-content .comment-form-social-connect{display:inherit;padding:0;margin:0;float:left;line-height:35px;padding-right:10px}#wpcomm .wc-secondary-forms-social-content .social_connect_form img{width:24px;height:24px;float:none;display:inline;border:0}#wpcomm .wc-secondary-forms-social-content .social_connect_form{float:left;width:100%;text-align:right;padding:0 0 5px 0;line-height:20px;vertical-align:middle}#wpcomm .wc-secondary-forms-social-content .comment-form-social-connect label{display:inherit;padding:0;margin:0;font-style:normal;font-weight:normal;border:0;font-size:13px;text-transform:uppercase}#wpcomm input[type="text"], #wpcomm input[type="email"], #wpcomm input[type="password"], #wpcomm input[type="url"]{ line-height: inherit!important;}#wpcomm .wc-comment-text ol li, #wpcomm .wc-comment-text ul li{ margin-left:20px; }#wpcomm .wc-comment-text blockquote { font-size: inherit; line-height: inherit; margin-bottom: 1em; margin-left: 1em; padding-left: 1em; }.wpdiscuz-nofollow,.wpdiscuz-nofollow:hover{text-decoration: none!important;}#wpcomm .wc-field-comment textarea, #wpcomm .wc-comment .wc-comment-right textarea{ display: inline; }#wpcomm .input-text, #wpcomm input[type="text"], #wpcomm input[type="input"], #wpcomm input[type="password"], #wpcomm input[type="email"], #wpcomm input[type="number"], #wpcomm input[type="url"], #wpcomm input[type="tel"], #wpcomm input[type="search"], #wpcomm textarea, #wpcomm select{ margin:0px;}.wc_msg_required_fields,.wc_invalid_field,.wc_invalid_captcha, .wc_error_url_text,.wc_error_email_text,.wpdiscuz-sendmail-error, .wc_msg_comment_text_min_length,.wc_msg_comment_text_max_length, .wc_login_to_vote, .wc_deny_voting_from_same_ip, .wc_self_vote, .wc_vote_only_one_time, .wc_voting_error,.wc_comment_edit_not_possible,.wc_comment_not_updated,.wc_comment_not_edited{ background-color: #FCE8E8 !important; font-size:14px; text-align:center; color:#CE4A66; border:#F2D3D2 1px solid; padding:5px 10px; width:100%; box-sizing:border-box; margin:5px 0px; border-radius:3px; }.wc_held_for_moderate{ background-color: #FCE6BF; font-size:14px; text-align:center; color:#D3760C; border:#F9C975 1px solid; padding:5px 10px; width:100%; box-sizing:border-box; margin:5px 0px; border-radius:3px; }.wc-label a:focus{ outline:none; }.wpdiscuz-loading-bar{ position: fixed; text-align:center; right: 0; width: 50px; border:none; background:transparent; z-index:999999; display: none;}.wpdiscuz-loading-bar-auth{ top:32px; }.wpdiscuz-loading-bar-unauth{ top:0px; }.wpdiscuz-loading-bar .wpdiscuz-loading-bar-img{max-width:32px!important;height:auto;}.wpdiscuz-vote-sorting-desc,.wpdiscuz-vote-sorting-asc{ text-align:center; border:none; z-index:999999; cursor: pointer; display: inline-block;}.wpdiscuz-front-actions{ width:100%; box-sizing:border-box; padding:5px 10px; margin-bottom:10px;border-right: 1px solid #f1f1f1;border-left: 1px solid #f1f1f1; text-align: right;}.wpdiscuz-subscribe-bar{ width:100%; box-sizing:border-box; padding:10px; margin-bottom:10px;border-right: 1px solid #f1f1f1;border-left: 1px solid #f1f1f1;}.wpdiscuz_select { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAANCAYAAAC+ct6XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RjBBRUQ1QTQ1QzkxMTFFMDlDNDdEQzgyNUE1RjI4MTEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RjBBRUQ1QTU1QzkxMTFFMDlDNDdEQzgyNUE1RjI4MTEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGMEFFRDVBMjVDOTExMUUwOUM0N0RDODI1QTVGMjgxMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGMEFFRDVBMzVDOTExMUUwOUM0N0RDODI1QTVGMjgxMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pk5mU4QAAACUSURBVHjaYmRgYJD6////MwY6AyaGAQIspCieM2cOjKkIxCFA3A0TSElJoZ3FUCANxAeAWA6IOYG4iR5BjWwpCDQCcSnNgxoIVJCDFwnwA/FHWlp8EIpHSKoGgiggLkITewrEcbQO6mVAbAbE+VD+a3IsJTc7FQAxDxD7AbEzEF+jR1DDywtoCr9DbhwzDlRZDRBgACYqHJO9bkklAAAAAElFTkSuQmCC") no-repeat scroll right center!important; border-radius: 0; border: 1px solid lightgray!important; box-shadow:none!important; height:28px!important; padding: 3px 22px 3px 3px!important; font-size:13px!important; -moz-appearance:none!important; -webkit-appearance:none!important; outline: 0 none!important; text-indent: 0.01px; text-overflow: ""!important; width:100%!important; box-sizing:border-box !important; line-height:20px!important; clear:both; float:none!important; margin:0px!important; }.wc-secondary-form-wrapper{ margin-top:10px!important; }#wpcomm .wpdiscuz-subscribe-form-intro{ font-size:14px; float:left; display:block; padding:3px 10px 3px 1px; line-height:20px; box-sizing:border-box; white-space:nowrap; }#wpcomm .wpdiscuz-subscribe-form-option{ font-size:13px; float:left; display:block; padding-right:5px; box-sizing:border-box; }#wpcomm .wpdiscuz-subscribe-form-email{ font-size:14px; float:left; display:block; padding:0 5px 0 0; box-sizing:border-box; width:30%; }#wpcomm .wpdiscuz-subscribe-form-button{ font-size:14px; float:left; display:block;box-sizing:border-box; }#wpcomm .wpdiscuz-subscribe-form-email select{ width:100%!important; }#wpcomm .wpdiscuz-subscribe-form-email input[type="email"]{ font-size:13px!important; padding:3px!important; width:100%!important; height:auto!important; line-height:20px!important; box-sizing:border-box !important; clear: both; float: none; margin:0px; }#wpcomm .wpdiscuz-subscribe-form-button input[type="submit"]{ font-size:16px!important; min-height:29px!important; height:29px!important; padding:1px 3px 5px 3px!important; width:40px; line-height:14px!important; box-sizing:border-box !important; border: 1px solid #ddd; clear: both; float: none; margin:0px; }#wpcomm .wc-comment-link{ font-size:12px; float:right; text-align:right; line-height:20px; height:15px; padding:0px 0px 0px 10px; }#wpcomm .wc-comment-link .wc-comment-img-link{ cursor:pointer; height:10px; }#wpcomm .wpdiscuz_subscribe_status{ font-size:12px; padding-top:6px; }#wpcomm .wpdiscuz_subscribe_status a{ font-size:12px; }.tooltipster-content input[type="text"].wc-comment-link-input{ padding:2px; width:100%; font-size:13px; color:#777777; } #wpcomm .page-numbers{ padding:2px 7px; font-size:14px; margin:20px 1px; line-height: 33px; background:#FFFFFF; } #wpcomm span.current{ color:#FFFFFF; } @media screen and (max-width:1000px){#wpcomm .wc-field-captcha input[type="text"]{max-width:45%;min-width:90px}} @media screen and (max-width:850px){#wpcomm .wc-field-captcha input[type="text"]{max-width:35%;min-width:90px}} @media screen and (max-width:790px){#wpcomm .wc-field-captcha input[type="text"]{max-width:30%;min-width:80px}} @media screen and (max-width:690px){#wpcomm .wc-field-captcha input[type="text"]{max-width:30%;min-width:80px}} @media screen and (max-width:600px){#wpcomm .wpdiscuz-subscribe-form-option{ width:100%!important; padding:0px!important; } #wpcomm .wpdiscuz-subscribe-form-email{ width:100%!important; padding:0px!important; margin-top:5px; } #wpcomm .wpdiscuz-subscribe-form-button{ width:100%!important; padding:0px!important; } #wpcomm .wpdiscuz-subscribe-form-button input[type="submit"]{ width:100%!important; margin-top:5px;} #wpcomm .wc-field-comment .wc-field-avatararea{ width:25px; } #wpcomm .wc-field-comment .wc-field-avatararea .avatar{ width:25px; } #wpcomm .wc-field-comment .wc-field-textarea{ margin-left: 30px; } #wpcomm .wc-field-name{ width:100%; } #wpcomm .wc-field-email{ width:100%; } #wpcomm .wc-field-submit input[type="button"]{ width:100%; } #wpcomm .wc-field-captcha input[type="text"]{ max-width: 100%; width: 100%; } #wpcomm .wc-field-name input[type="text"]{ max-width: 100%; width: 100%; } #wpcomm .wc-captcha-label img{ padding:0px; margin-top:8px; } #wpcomm .wc-field-website{ padding-bottom: 8px; } #wpcomm .wc-reply{ margin-left:25px!important } #wpcomm .wc_comment_level-3{ margin-left:0px!important; } #wpcomm .wc_comment_level-4{ margin-left:0px!important; } #wpcomm .wc_comment_level-5{ margin-left:0px!important; } #wpcomm .wc-comment-text{ font-size:13px!important; } #wpcomm .wc-comment .wc-comment-left{ width: 40px!important; } #wpcomm .wc-comment .wc-comment-left .avatar{ width: 40px!important; } #wpcomm .wc-comment .wc-comment-right{ margin-left: 55px!important; } #wpcomm .wc-reply .wc-comment-right{ margin-left: 55px!important; } #wpcomm .wc-toggle{ font-size:11px; line-height:12px; padding-top:40px; padding-bottom:5px; } #wpcomm .share_buttons_box{ margin-top:9px;}} @media screen and (max-width:420px){ #wpcomm .wc-toggle{ font-size:11px; line-height:12px; padding-top:35px; padding-bottom:5px; } #wpcomm .wpdiscuz-sort-buttons, #wpcomm .wpdiscuz-sort-button{ font-size:11px!important; } #wpcomm .wc-captcha-label .wc_captcha_img{ width:70%;} #wpcomm .wc-share-link{ line-height:30px;} #wpcomm .wc-field-comment .wc-field-textarea{ margin-left: 0px; } #wpcomm .wc-field-comment .wc-field-avatararea .avatar{ width:0px; display: none;} #wpcomm .wc-comment .wc-comment-left{ float:none!important; margin-bottom:8px; width:100%!important; } #wpcomm .wc-comment .wc-comment-right, #wpcomm .wc-reply .wc-comment-right{ margin-left:0px!important; } #wpcomm .wc-comment .wc-comment-left .avatar{ width:25px!important; height:25px!important; margin:0px 5px 0px 0px!important; float:left!important; display:block!important; } #wpcomm .wc-comment .wc-comment-left .wc-comment-label{ font-size:13px; padding:6px 5px 5px 5px; line-height:14px; display:block-inline!important; margin-left:33px; } #wpcomm .wc-field-submit input[type="button"]{ width:99%; font-size:10px; padding:5px 2px; } .wpdiscuz_auth .wc-field-submit{width: 100%!important;} .wpdiscuz_auth .wc_notification_checkboxes{ text-align: left!important; }}#wpcomm .wpdiscuz-hidden{display:none;}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #wpcomm * {
2
+ box-sizing: border-box;
3
+ }
4
+ #wpcomm span {
5
+ display: inline;
6
+ }
7
+ #wpcomm .clearfix{
8
+ clear:both;
9
+ }
10
+ #wpcomm {
11
+ padding: 1px 0 10px 0;
12
+ border-top: #ddd solid 1px;
13
+ max-width:950px;
14
+ margin:15px auto;
15
+ }
16
+ #wc-comment-header {
17
+ padding: 20px 5px 1px 5px;
18
+ display: block;
19
+ float: none;
20
+ clear: both;
21
+ font-size: 18px;
22
+ max-width:950px;
23
+ margin:0px auto;
24
+ }
25
+ #wpcomm form .wpdiscuz-item {
26
+ display: block;
27
+ height: auto;
28
+ }
29
+ .wpdiscuz-item input {
30
+ border-radius: 0;
31
+ height: auto;
32
+ width: auto
33
+ }
34
+ #wpcomm form {
35
+ margin: 0!important;
36
+ padding: 0!important;
37
+ background: none;
38
+ border: 0;
39
+ width: auto!important
40
+ }
41
+ #wpcomm form div {
42
+ margin: 0
43
+ }
44
+ #wc_show_hide_loggedin_username {
45
+ padding: 10px 5px 5px 5px;
46
+ font-size: 13px
47
+ }
48
+ #wpcomm .wc_new_comment_and_replies {
49
+ margin: 0;
50
+ padding: 0;
51
+ width: 100%;
52
+ height: auto;
53
+ background: transparent
54
+ }
55
+ #wpcomm .wc_new_comment_and_replies .wc_new_comment {
56
+ float: right;
57
+ display: none;
58
+ padding: 3px 10px;
59
+ font-size: 12px;
60
+ margin: 1px 0 1px 3px;
61
+ cursor: pointer;
62
+ color: #fff;
63
+ line-height: 15px
64
+ }
65
+ #wpcomm .wc_new_comment_and_replies .wc_new_reply {
66
+ float: right;
67
+ display: none;
68
+ padding: 3px 10px;
69
+ font-size: 12px;
70
+ margin: 1px 0 1px 1px;
71
+ cursor: pointer;
72
+ color: #fff;
73
+ line-height: 15px
74
+ }
75
+ #wpcomm .wc-comment-bar {
76
+ width: 100%;
77
+ padding: 0;
78
+ display: block
79
+ }
80
+ #wpcomm .wc-comment-title {
81
+ margin: 0;
82
+ line-height: 18px;
83
+ font-weight: bold;
84
+ padding: 10px;
85
+ margin-bottom: 10px;
86
+ font-size: 13px;
87
+ text-align: right;
88
+ border-bottom: #ccc dotted 1px;
89
+ padding-bottom: 10px
90
+ }
91
+ #wpcomm .wc-form-wrapper {
92
+ padding: 10px;
93
+ margin-top: 0px;
94
+ border: 1px solid #f1f1f1;
95
+ clear: both;
96
+ }
97
+ #wpcomm .wc-field-comment {
98
+ margin: 5px auto 1px auto
99
+ }
100
+ #wpcomm .wc-field-comment .wc-field-avatararea {
101
+ width: 60px;
102
+ float: left
103
+ }
104
+ #wpcomm .wc-field-comment .wc-field-textarea {
105
+ margin-left: 65px
106
+ }
107
+ #wpcomm .wc-field-name input[type="text"] {
108
+ width: 100%;
109
+ max-width: 100%;
110
+ padding: 3px 5px;
111
+ font-size: 14px;
112
+ margin: 0;
113
+ height: 29px
114
+ }
115
+ #wpcomm .wc-field-website input[type="url"], #wpcomm .wc-field-website input[type="text"] {
116
+ width: 100%;
117
+ max-width: 100%;
118
+ padding: 3px 5px;
119
+ font-size: 14px;
120
+ margin: 0;
121
+ height: 29px
122
+ }
123
+ #wpcomm .wc-field-email input[type="email"] {
124
+ width: 100%;
125
+ max-width: 100%;
126
+ padding: 3px 5px;
127
+ font-size: 14px;
128
+ margin: 0;
129
+ height: 29px
130
+ }
131
+
132
+ #wpcomm .wc-field-submit input[type="button"] {
133
+ margin: 1px;
134
+ border: #ddd 1px solid;
135
+ font-size: 13px;
136
+ line-height: 16px;
137
+ padding: 6px 15px;
138
+ clear: both;
139
+ float: none
140
+ }
141
+ #wpcomm .captcha_msg {
142
+ color: #999;
143
+ font-family: Lato, sans-serif;
144
+ font-size: 13px;
145
+ line-height: 18px;
146
+ display: block;
147
+ clear: both;
148
+ padding: 5px 0 0 0
149
+ }
150
+ #wpcomm .wc-field-comment textarea, #wpcomm .wc-comment .wc-comment-right textarea {
151
+ width: 100%;
152
+ max-width: 100%;
153
+ height: 48px;
154
+ min-height: 48px!important;
155
+ padding: 5px;
156
+ box-sizing: border-box;
157
+ border-radius: 0
158
+ }
159
+
160
+ #wpcomm .wc_manage_subscribtions {
161
+ cursor: pointer;
162
+ padding: 0 0 5px 0;
163
+ display: block;
164
+ font-size: 13px;
165
+ line-height: 16px;
166
+ font-family: Lato, sans-serif
167
+ }
168
+ #wpcomm .wc_notification_checkboxes {
169
+ padding: 1px 0 7px 0;
170
+ text-align: right;
171
+ display: none;
172
+ line-height: 18px;
173
+ font-size: 13px
174
+ }
175
+ #wpcomm .wc_notification_checkboxes input[type="checkbox"], #wpcomm .wc_notification_checkboxes input[type="radio"] {
176
+ overflow: none;
177
+ width: inherit;
178
+ font-size: 13px;
179
+ padding: 0;
180
+ display: inline;
181
+ clear: both;
182
+ float: none;
183
+ max-height: 20px;
184
+ margin: 0 3px
185
+ }
186
+ #wpcomm .wc_notification_checkboxes label {
187
+ clear: both;
188
+ float: none;
189
+ font-weight: normal
190
+ }
191
+ #wpcomm .wc-label-comment-notify {
192
+ display: inline;
193
+ font-size: 13px;
194
+ padding: 0;
195
+ margin: 0;
196
+ border: 0;
197
+ line-height: 15px;
198
+ text-decoration: none;
199
+ color: #999;
200
+ font-family: Lato, sans-serif;
201
+ cursor: pointer
202
+ }
203
+ #wpcomm .wc-label-reply-notify, #wpcomm .wc-notification-none {
204
+ display: inline;
205
+ font-size: 13px;
206
+ padding: 0;
207
+ margin: 0;
208
+ border: 0;
209
+ line-height: 15px;
210
+ text-decoration: none;
211
+ color: #999;
212
+ font-family: Lato, sans-serif;
213
+ cursor: pointer
214
+ }
215
+ #wpcomm .wc-label-all-reply-notify {
216
+ display: inline;
217
+ font-size: 13px;
218
+ padding: 0;
219
+ margin: 0;
220
+ border: 0;
221
+ line-height: 15px;
222
+ text-decoration: none;
223
+ color: #999;
224
+ font-family: Lato, sans-serif;
225
+ cursor: pointer
226
+ }
227
+ #wpcomm input[type="text"], #wpcomm input[type="email"], #wpcomm input[type="url"], #wpcomm textarea {
228
+ font-size: 14px;
229
+ color: #777;
230
+ font-family: Lato, sans-serif;
231
+ box-sizing: border-box;
232
+ margin: 0;
233
+ clear: both;
234
+ float: none;
235
+ display: inline
236
+ }
237
+ #wpcomm .wc-copyright {
238
+ margin: 0 0 0 auto;
239
+ text-align: right;
240
+ display: block;
241
+ padding-top: 2px
242
+ }
243
+ #wpcomm .wc-copyright a {
244
+ font-size: 9px;
245
+ color: #aaa;
246
+ cursor: help;
247
+ text-decoration: none;
248
+ margin: 0;
249
+ padding: 0;
250
+ border: 0
251
+ }
252
+ #wpcomm .wc-thread-wrapper {
253
+ padding: 10px 0;
254
+ margin-bottom: 10px
255
+ }
256
+ #wpcomm .wc-comment {
257
+ margin-bottom: 13px
258
+ }
259
+ #wpcomm .wc-comment .wc-form-wrapper {
260
+ padding: 10px 10px 7px 10px
261
+ }
262
+ #wpcomm .wc-comment .wc-comment-left {
263
+ width: 62px;
264
+ float: left;
265
+ text-align: center;
266
+ font-family: Lato, sans-serif;
267
+ line-height: 16px
268
+ }
269
+ #wpcomm .wc-comment .wc-comment-right {
270
+ margin-left: 70px;
271
+ border: #f5f5f5 1px solid;
272
+ padding: 10px 10px 3px 10px;
273
+ display: block;
274
+ }
275
+ #wpcomm .wc-reply .wc-comment-right {
276
+ margin-left: 70px;
277
+ border: #f5f5f5 1px solid;
278
+ padding: 10px 10px 3px 10px
279
+ }
280
+ #wpcomm .wc-reply {
281
+ margin-top: 10px;
282
+ margin-bottom: 0;
283
+ margin-left: 40px
284
+ }
285
+ #wpcomm .wc-must-login {
286
+ margin: 0;
287
+ font-size: 14px;
288
+ line-height: 16px;
289
+ padding: 10px;
290
+ text-align: center
291
+ }
292
+ #wpcomm hr {
293
+ background-color: rgba(0,0,0,0.1);
294
+ border: 0 none;
295
+ height: 1px;
296
+ margin: 10px auto;
297
+ }
298
+ #wpcomm .avatar {
299
+ border: 1px solid rgba(0,0,0,0.1);
300
+ padding: 2px;
301
+ margin: 0 auto;
302
+ float: none;
303
+ display: inline;
304
+ width: 48px;
305
+ height: auto
306
+ }
307
+ #wpcomm .wc-form-wrapper .avatar {
308
+ margin-top: 3px
309
+ }
310
+ #wpcomm .wc-comment-text {
311
+ text-align: left;
312
+ padding-bottom: 5px;
313
+ line-height: 20px;
314
+ white-space: -moz-pre-wrap;
315
+ white-space: -pre-wrap;
316
+ white-space: -o-pre-wrap;
317
+ word-wrap: break-word
318
+ }
319
+ #wpcomm .wc-comment-text img {
320
+ max-width: 90%;
321
+ height: auto
322
+ }
323
+ #wpcomm .wc-comment-header {
324
+ margin-bottom: 7px;
325
+ font-family: Lato, sans-serif
326
+ }
327
+ #wpcomm .wc-comment-author {
328
+ font-size: 16px;
329
+ width: 40%;
330
+ float: left;
331
+ white-space: normal;
332
+ text-align: left;
333
+ }
334
+ #wpcomm .wc-comment-author a {
335
+ font-size: 16px;
336
+ white-space: normal;
337
+ text-decoration: none;
338
+ line-height: 25px;
339
+ }
340
+ #wpcomm .wc-comment-label {
341
+ color: #fff;
342
+ padding: 2px 5px;
343
+ font-size: 12px;
344
+ margin: 4px auto;
345
+ text-align: center;
346
+ display: table;
347
+ line-height: 16px
348
+ }
349
+ #wpcomm .wc-comment-date {
350
+ font-size: 12px;
351
+ color: #999;
352
+ float: right;
353
+ text-align: right;
354
+ white-space: nowrap;
355
+ line-height: 23px
356
+ }
357
+ #wpcomm .wc-comment-footer {
358
+ font-size: 12px;
359
+ font-weight: normal;
360
+ color: #999;
361
+ margin-top: 12px;
362
+ min-height: 28px;
363
+ font-family: Lato, sans-serif;
364
+ text-align: left;
365
+ }
366
+ #wpcomm .wc-comment-footer a, #wpcomm .wc-comment-footer span.wc_editable_comment, #wpcomm .wc-comment-footer span.wc_save_edited_comment, #wpcomm span.wc_cancel_edit {
367
+ text-decoration: none;
368
+ font-size: 13px;
369
+ font-weight: bold;
370
+ cursor: pointer
371
+ }
372
+ #wpcomm .wc-comment-footer .share_buttons_box img {
373
+ vertical-align: middle
374
+ }
375
+ #wpcomm .wc-comment-footer .wc-voted {
376
+ color: #666;
377
+ cursor: default
378
+ }
379
+ #wpcomm .wc-comment-footer .wc-vote-img-up {
380
+ padding: 0;
381
+ margin: 0 0 -2px 0;
382
+ vertical-align: baseline;
383
+ display: inline;
384
+ float: none;
385
+ clear: both;
386
+ border: 0;
387
+ background: transparent;
388
+ width: 16px;
389
+ height: 16px;
390
+ border-radius: 0;
391
+ box-shadow: none;
392
+ box-sizing: border-box
393
+ }
394
+ #wpcomm .wc-comment-footer .wc-vote-img-down {
395
+ padding: 0;
396
+ margin: 0 0 -6px 0;
397
+ vertical-align: baseline;
398
+ display: inline;
399
+ float: none;
400
+ clear: both;
401
+ border: 0;
402
+ background: transparent;
403
+ width: 16px;
404
+ height: 16px;
405
+ border-radius: 0;
406
+ box-shadow: none;
407
+ box-sizing: border-box
408
+ }
409
+ #wpcomm .wc-comment-footer .wc-vote-result {
410
+ padding: 2px 6px 2px 5px;
411
+ color: #fff;
412
+ font-size: 12px;
413
+ font-weight: bold;
414
+ display: inline;
415
+ margin-right: 5px
416
+ }
417
+ #wpcomm .wc-toggle {
418
+ float: right;
419
+ text-align: right;
420
+ padding-right: 0;
421
+ margin-right: 0;
422
+ color: #999;
423
+ cursor: pointer;
424
+ font-size: 12px;
425
+ white-space: nowrap;
426
+ line-height: 24px;
427
+ }
428
+ #wpcomm .wpdiscuz-item {
429
+ background: 0;
430
+ border-radius: 0;
431
+ box-shadow: none
432
+ }
433
+ #wc_response_info img {
434
+ margin: 0 auto 0 auto;
435
+ box-shadow: none
436
+ }
437
+ #wpcomm .share_buttons_box img {
438
+ display: inline!important;
439
+ width: 16px;
440
+ height: 16px
441
+ }
442
+ #wpcomm .wc-reply-link, #wpcomm .wc-vote-link, #wpcomm .wc-share-link {
443
+ cursor: pointer;
444
+ font-size: 13px;
445
+ font-weight: bold
446
+ }
447
+ #wpcomm .share_buttons_box {
448
+ display: none
449
+ }
450
+ #wpcomm .wc-comment.wc-no-left-margin {
451
+ margin-left: 0!important
452
+ }
453
+ .wc-load-more-submit-wrap {
454
+ width: 100%;
455
+ text-align: center;
456
+ margin-bottom: 20px;
457
+ margin-top: 25px
458
+ }
459
+ .wc-load-more-submit {
460
+ width: auto!important;
461
+ padding: 10px 20px;
462
+ text-align: center;
463
+ background-color: #fafafa;
464
+ border-radius: 3px;
465
+ color: #555;
466
+ cursor: pointer
467
+ }
468
+ .wc-load-more-submit:hover {
469
+ background-image: -moz-linear-gradient(center top, #f4f4f4, #e6e6e6);
470
+ background-repeat: repeat-x;
471
+ box-shadow: 0 1px 2px rgba(64,64,64,0.1);
472
+ color: #7c7c7c
473
+ }
474
+ #wpcomm #bywpdiscuz {
475
+ display: none
476
+ }
477
+ #wpcomm .by-wpdiscuz {
478
+ text-align: right;
479
+ border-top: #ddd solid 1px;
480
+ padding: 1px 1px 1px 1px
481
+ }
482
+ #wpcomm .by-wpdiscuz a {
483
+ font-size: 11px;
484
+ font-weight: bold;
485
+ text-align: right;
486
+ color: #ccc;
487
+ padding: 1px;
488
+ margin: 0;
489
+ line-height: 12px;
490
+ border: 0;
491
+ text-decoration: none
492
+ }
493
+ #wpcomm .wpdimg {
494
+ border: 0;
495
+ padding: 0;
496
+ margin: 0;
497
+ height: 12px;
498
+ cursor: pointer;
499
+ display: inline;
500
+ clear: both
501
+ }
502
+ #wc_unsubscribe_message {
503
+ margin: 10px auto 1px auto;
504
+ padding: 10px;
505
+ text-align: center;
506
+ border: #0d0 1px dotted;
507
+ background: #cfc
508
+ }
509
+ .wc_unsubscribe_message {
510
+ font-size: 14px;
511
+ color: #444
512
+ }
513
+ #wpcomm .wc_comment_level-3 {
514
+ margin-left: 40px!important
515
+ }
516
+ #wpcomm .wc_comment_level-4 {
517
+ margin-left: 40px!important
518
+ }
519
+ #wpcomm .wc_comment_level-5 {
520
+ margin-left: 40px!important
521
+ }
522
+ #wpcomm .wc_editable_div {
523
+ -moz-appearance: textfield-multiline;
524
+ -webkit-appearance: textarea;
525
+ border: 1px solid #ccc;
526
+ border-radius: 0;
527
+ font: medium -moz-fixed;
528
+ font: -webkit-small-control;
529
+ overflow: auto;
530
+ resize: both;
531
+ box-sizing: border-box;
532
+ height: 46px;
533
+ max-width: 100%;
534
+ min-height: 46px!important;
535
+ padding: 5px;
536
+ width: 100%
537
+ }
538
+ #wpcomm .wc_cancel_edit {
539
+ display: none
540
+ }
541
+ #wpcomm .wc-comment-text p {
542
+ margin-bottom: 10px
543
+ }
544
+ #wpcomm .wc-comment-right textarea.wc_edit_comment {
545
+ height: 80px;
546
+ }
547
+ #wpcomm .wc_social_plugin_wrapper {
548
+ width: auto;
549
+ }
550
+ #wpcomm .wc_comm_form .wc_secondary_form {
551
+ clear: both
552
+ }
553
+ #wpcomm .wc_comm_form .wc-field-comment {
554
+ clear: both
555
+ }
556
+ #wpcomm .wp-social-login-widget {
557
+ margin-bottom: 15px;
558
+ }
559
+ #wpcomm .wc_social_plugin_wrapper .wp-social-login-connect-with {
560
+ float: left;
561
+ font-size: 13px;
562
+ padding: 2px 7px 0 0;
563
+ text-transform: uppercase
564
+ }
565
+ #wpcomm .wc_social_plugin_wrapper .wp-social-login-provider-list {
566
+ padding: 1px;
567
+ text-align: left;
568
+ margin-bottom: -10px
569
+ }
570
+ #wpcomm .wc-secondary-forms-social-content .wp-social-login-provider-list {
571
+ padding: 1px;
572
+ text-align: right
573
+ }
574
+ #wpcomm .wc-secondary-forms-social-content .wp-social-login-provider-list img {
575
+ width: 20px;
576
+ height: 20px;
577
+ float: none;
578
+ display: inline;
579
+ border: 0
580
+ }
581
+ #wpcomm .wc_social_plugin_wrapper .wp-social-login-provider-list img {
582
+ width: 24px;
583
+ height: 24px;
584
+ float: none;
585
+ display: inline;
586
+ border: 0
587
+ }
588
+ #wpcomm .wc_social_plugin_wrapper .social_connect_ui {
589
+ padding: 0;
590
+ clear: both;
591
+ margin: 0;
592
+ margin-top: -20px;
593
+ margin-bottom: -10px
594
+ }
595
+ #wpcomm .wc_social_plugin_wrapper .comment-form-social-connect {
596
+ display: inherit;
597
+ padding: 0;
598
+ margin: 0;
599
+ float: left;
600
+ line-height: 35px;
601
+ padding-right: 10px
602
+ }
603
+ #wpcomm .wc_social_plugin_wrapper .social_connect_form img {
604
+ width: 24px;
605
+ height: 24px;
606
+ float: none;
607
+ display: inline;
608
+ border: 0
609
+ }
610
+ #wpcomm .wc_social_plugin_wrapper .social_connect_form {
611
+ float: left;
612
+ line-height: 35px;
613
+ text-align: left;
614
+ vertical-align: middle
615
+ }
616
+ #wpcomm .wc_social_plugin_wrapper .comment-form-social-connect label {
617
+ display: inherit;
618
+ padding: 0;
619
+ margin: 0;
620
+ font-style: normal;
621
+ font-weight: normal;
622
+ border: 0;
623
+ font-size: 13px;
624
+ text-transform: uppercase
625
+ }
626
+ #social_connect_facebook_auth, #social_connect_twitter_auth, #social_connect_google_auth, #social_connect_google_plus_auth, #social_connect_yahoo_auth, #social_connect_wordpress_auth {
627
+ clear: both;
628
+ padding: 0;
629
+ margin: 0
630
+ }
631
+ #wpcomm .wc-secondary-forms-social-content .social_connect_ui {
632
+ padding: 0;
633
+ clear: both;
634
+ margin: 0;
635
+ text-align: right
636
+ }
637
+ #wpcomm .wc-secondary-forms-social-content .comment-form-social-connect {
638
+ display: inherit;
639
+ padding: 0;
640
+ margin: 0;
641
+ float: left;
642
+ line-height: 35px;
643
+ padding-right: 10px
644
+ }
645
+ #wpcomm .wc-secondary-forms-social-content .social_connect_form img {
646
+ width: 24px;
647
+ height: 24px;
648
+ float: none;
649
+ display: inline;
650
+ border: 0
651
+ }
652
+ #wpcomm .wc-secondary-forms-social-content .social_connect_form {
653
+ float: left;
654
+ width: 100%;
655
+ text-align: right;
656
+ padding: 0 0 5px 0;
657
+ line-height: 20px;
658
+ vertical-align: middle
659
+ }
660
+ #wpcomm .wc-secondary-forms-social-content .comment-form-social-connect label {
661
+ display: inherit;
662
+ padding: 0;
663
+ margin: 0;
664
+ font-style: normal;
665
+ font-weight: normal;
666
+ border: 0;
667
+ font-size: 13px;
668
+ text-transform: uppercase
669
+ }
670
+ #wpcomm input[type="text"], #wpcomm input[type="email"], #wpcomm input[type="password"], #wpcomm input[type="url"] {
671
+ line-height: inherit!important;
672
+ }
673
+ #wpcomm .wc-comment-text ol li, #wpcomm .wc-comment-text ul li {
674
+ margin-left: 20px;
675
+ }
676
+ #wpcomm .wc-comment-text blockquote {
677
+ font-size: inherit;
678
+ line-height: inherit;
679
+ margin-bottom: 1em;
680
+ margin-left: 1em;
681
+ padding-left: 1em;
682
+ }
683
+ .wpdiscuz-nofollow, .wpdiscuz-nofollow:hover {
684
+ text-decoration: none!important;
685
+ }
686
+ #wpcomm .wc-field-comment textarea, #wpcomm .wc-comment .wc-comment-right textarea {
687
+ display: inline;
688
+ }
689
+ #wpcomm .input-text, #wpcomm input[type="text"], #wpcomm input[type="input"], #wpcomm input[type="password"], #wpcomm input[type="email"], #wpcomm input[type="number"], #wpcomm input[type="url"], #wpcomm input[type="tel"], #wpcomm input[type="search"], #wpcomm textarea, #wpcomm select {
690
+ margin: 0px;
691
+ }
692
+ .wc_msg_required_fields, .wc_invalid_field, .wc_invalid_captcha, .wc_error_url_text, .wc_error_email_text, .wpdiscuz-sendmail-error, .wc_msg_comment_text_min_length, .wc_msg_comment_text_max_length, .wc_login_to_vote, .wc_deny_voting_from_same_ip, .wc_self_vote, .wc_vote_only_one_time, .wc_voting_error, .wc_comment_edit_not_possible, .wc_comment_not_updated, .wc_comment_not_edited {
693
+ background-color: #FCE8E8 !important;
694
+ font-size: 14px;
695
+ text-align: center;
696
+ color: #CE4A66;
697
+ border: #F2D3D2 1px solid;
698
+ padding: 5px 10px;
699
+ width: 100%;
700
+ box-sizing: border-box;
701
+ margin: 5px 0px;
702
+ border-radius: 3px;
703
+ }
704
+ .wc_held_for_moderate {
705
+ background-color: #FCE6BF;
706
+ font-size: 14px;
707
+ text-align: center;
708
+ color: #D3760C;
709
+ border: #F9C975 1px solid;
710
+ padding: 5px 10px;
711
+ width: 100%;
712
+ box-sizing: border-box;
713
+ margin: 5px 0px;
714
+ border-radius: 3px;
715
+ }
716
+ .wpdiscuz-loading-bar {
717
+ position: fixed;
718
+ text-align: center;
719
+ right: 0;
720
+ width: 50px;
721
+ border: none;
722
+ background: transparent;
723
+ z-index: 999999;
724
+ display: none;
725
+ }
726
+ .wpdiscuz-loading-bar-auth {
727
+ top: 32px;
728
+ }
729
+ .wpdiscuz-loading-bar-unauth {
730
+ top: 0px;
731
+ }
732
+ .wpdiscuz-loading-bar .wpdiscuz-loading-bar-img {
733
+ max-width: 32px!important;
734
+ height: auto;
735
+ }
736
+ .wpdiscuz-vote-sorting-desc, .wpdiscuz-vote-sorting-asc {
737
+ text-align: center;
738
+ border: none;
739
+ z-index: 999999;
740
+ cursor: pointer;
741
+ display: inline-block;
742
+ }
743
+ .wpdiscuz-front-actions {
744
+ width: 100%;
745
+ box-sizing: border-box;
746
+ padding: 5px 10px;
747
+ margin-bottom: 10px;
748
+ border-right: 1px solid #f1f1f1;
749
+ border-left: 1px solid #f1f1f1;
750
+ text-align: right;
751
+ }
752
+ .wpdiscuz-subscribe-bar {
753
+ width: 100%;
754
+ box-sizing: border-box;
755
+ padding: 10px;
756
+ margin-bottom: 10px;
757
+ border-right: 1px solid #f1f1f1;
758
+ border-left: 1px solid #f1f1f1;
759
+ }
760
+ .wpdiscuz_select {
761
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAANCAYAAAC+ct6XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RjBBRUQ1QTQ1QzkxMTFFMDlDNDdEQzgyNUE1RjI4MTEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RjBBRUQ1QTU1QzkxMTFFMDlDNDdEQzgyNUE1RjI4MTEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGMEFFRDVBMjVDOTExMUUwOUM0N0RDODI1QTVGMjgxMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGMEFFRDVBMzVDOTExMUUwOUM0N0RDODI1QTVGMjgxMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pk5mU4QAAACUSURBVHjaYmRgYJD6////MwY6AyaGAQIspCieM2cOjKkIxCFA3A0TSElJoZ3FUCANxAeAWA6IOYG4iR5BjWwpCDQCcSnNgxoIVJCDFwnwA/FHWlp8EIpHSKoGgiggLkITewrEcbQO6mVAbAbE+VD+a3IsJTc7FQAxDxD7AbEzEF+jR1DDywtoCr9DbhwzDlRZDRBgACYqHJO9bkklAAAAAElFTkSuQmCC") no-repeat scroll right center!important;
762
+ border-radius: 0;
763
+ border: 1px solid lightgray!important;
764
+ box-shadow: none!important;
765
+ height: 28px!important;
766
+ padding: 3px 22px 3px 3px!important;
767
+ font-size: 13px!important;
768
+ -moz-appearance: none!important;
769
+ -webkit-appearance: none!important;
770
+ outline: 0 none!important;
771
+ text-indent: 0.01px;
772
+ text-overflow: ""!important;
773
+ width: 100%!important;
774
+ box-sizing: border-box !important;
775
+ line-height: 20px!important;
776
+ clear: both;
777
+ float: none!important;
778
+ margin: 0px!important;
779
+ }
780
+ .wc-secondary-form-wrapper {
781
+ margin-top: 10px!important;
782
+ }
783
+ #wpcomm .wpdiscuz-subscribe-form-intro {
784
+ font-size: 14px;
785
+ float: left;
786
+ display: block;
787
+ padding: 3px 10px 3px 1px;
788
+ line-height: 20px;
789
+ box-sizing: border-box;
790
+ white-space: nowrap;
791
+ }
792
+ #wpcomm .wpdiscuz-subscribe-form-option {
793
+ font-size: 13px;
794
+ float: left;
795
+ display: block;
796
+ padding-right: 5px;
797
+ box-sizing: border-box;
798
+ }
799
+ #wpcomm .wpdiscuz-subscribe-form-email {
800
+ font-size: 14px;
801
+ float: left;
802
+ display: block;
803
+ padding: 0 5px 0 0;
804
+ box-sizing: border-box;
805
+ width: 30%;
806
+ }
807
+ #wpcomm .wpdiscuz-subscribe-form-button {
808
+ font-size: 14px;
809
+ float: left;
810
+ display: block;
811
+ box-sizing: border-box;
812
+ }
813
+ #wpcomm .wpdiscuz-subscribe-form-email select {
814
+ width: 100%!important;
815
+ }
816
+ #wpcomm .wpdiscuz-subscribe-form-email input[type="email"] {
817
+ font-size: 13px!important;
818
+ padding: 3px!important;
819
+ width: 100%!important;
820
+ height: auto!important;
821
+ line-height: 20px!important;
822
+ box-sizing: border-box !important;
823
+ clear: both;
824
+ float: none;
825
+ margin: 0px;
826
+ }
827
+ #wpcomm .wpdiscuz-subscribe-form-button input[type="submit"] {
828
+ font-size: 16px!important;
829
+ min-height: 29px!important;
830
+ height: 29px!important;
831
+ padding: 1px 3px 5px 3px!important;
832
+ width: 40px;
833
+ line-height: 14px!important;
834
+ box-sizing: border-box !important;
835
+ border: 1px solid #ddd;
836
+ clear: both;
837
+ float: none;
838
+ margin: 0px;
839
+ }
840
+ #wpcomm .wc-comment-link {
841
+ font-size: 12px;
842
+ float: right;
843
+ text-align: right;
844
+ line-height: 20px;
845
+ height: 15px;
846
+ padding: 0px 0px 0px 10px;
847
+ }
848
+ #wpcomm .wc-comment-link .wc-comment-img-link {
849
+ cursor: pointer;
850
+ height: 10px;
851
+ }
852
+ #wpcomm .wpdiscuz_subscribe_status {
853
+ font-size: 12px;
854
+ padding-top: 6px;
855
+ }
856
+ #wpcomm .wpdiscuz_subscribe_status a {
857
+ font-size: 12px;
858
+ }
859
+ .tooltipster-content input[type="text"].wc-comment-link-input {
860
+ padding: 2px;
861
+ width: 100%;
862
+ font-size: 13px;
863
+ color: #777777;
864
+ }
865
+ #wpcomm .page-numbers {
866
+ padding: 2px 7px;
867
+ font-size: 14px;
868
+ margin: 20px 1px;
869
+ line-height: 33px;
870
+ background: #FFFFFF;
871
+ }
872
+ #wpcomm span.current {
873
+ color: #FFFFFF;
874
+ }
875
+
876
+
877
+
878
+
879
+
880
+
881
+
882
+
883
+
884
+
885
+ #wpcomm .wc-form-footer {
886
+ display: none;
887
+ margin-left:65px;
888
+ }
889
+ #wpcomm .wc-author-data {
890
+ width: 48%;
891
+ float: left;
892
+ margin: 0;
893
+ text-align: left;
894
+ }
895
+ #wpcomm .wc-form-submit {
896
+ width: 50%;
897
+ float: right;
898
+ margin: 0;
899
+ text-align: right;
900
+ padding:0px 0px 5px 0px;
901
+ }
902
+ #wpcomm .wc-field-name {
903
+ width: 100%;
904
+ float: none;
905
+ text-align: left;
906
+ }
907
+ #wpcomm .wc-field-email {
908
+ width: 100%;
909
+ float: none;
910
+ text-align: left;
911
+ }
912
+ #wpcomm .wc-field-website {
913
+ width: 100%;
914
+ float: none;
915
+ text-align: left;
916
+ }
917
+ #wpcomm .wc-field-captcha { text-align: right; width: 100%; height: auto!important; padding:3px 0px 9px 0px; border-bottom:1px dotted #ccc; }
918
+ #wpcomm .wc-field-captcha .wc-captcha-label{ float:right; display:block; width:111px; text-align:right; padding:0px 0px 0px 0px; }
919
+ #wpcomm .wc-field-captcha .wc-captcha-label .wc_captcha_img { display: inline!important; border: 0; padding: 0px; margin: 0; vertical-align:top; box-sizing:content-box; width:80px; height:26px; border-bottom:2px solid #E6E6E6; }
920
+ #wpcomm .wc-field-captcha .wc-captcha-label a{ margin:0px; display:inline; padding:0px; text-decoration:none; height:auto; width:auto; }
921
+ #wpcomm .wc-field-captcha .wc-captcha-input{ float:left; display:block; min-width:30px; width:calc(100% - 112px); }
922
+ #wpcomm .wc-field-captcha .wc-captcha-input input[type="text"] { width: 100%; padding: 3px 5px; font-size: 14px; height: 28px; }
923
+ #wpcomm .wc-field-captcha .wc-captcha-label .wc_captcha_refresh_img { cursor: pointer;}
924
+ #wpcomm .wc-field-captcha .wc-captcha-label .wc_captcha_refresh_img img { max-width: 16px!important; max-height: 16px!important; box-sizing:content-box; margin: 0px; display: inline!important; background-color:#E6E6E6; padding:5px; border:1px solid #E4E4E4; border-left:1px solid #d9d9d9; vertical-align:top; }
925
+ #wpcomm .wc-label a:focus { outline: none;}
926
+ #wpcomm .wc-field-submit { padding:5px 0px 0px 5px; clear:left; }
927
+
928
+
929
+
930
+ @media screen and (max-width:650px) {
931
+ #wpcomm .wpdiscuz-subscribe-form-option {
932
+ width: 100%!important;
933
+ padding: 0px!important;
934
+ }
935
+ #wpcomm .wpdiscuz-subscribe-form-email {
936
+ width: 100%!important;
937
+ padding: 0px!important;
938
+ margin-top: 5px;
939
+ }
940
+ #wpcomm .wpdiscuz-subscribe-form-button {
941
+ width: 100%!important;
942
+ padding: 0px!important;
943
+ }
944
+ #wpcomm .wpdiscuz-subscribe-form-button input[type="submit"] {
945
+ width: 100%!important;
946
+ margin-top: 5px;
947
+ }
948
+ #wpcomm .wc-field-comment .wc-field-avatararea {
949
+ width: 25px;
950
+ }
951
+ #wpcomm .wc-field-comment .wc-field-avatararea .avatar {
952
+ width: 25px;
953
+ }
954
+ #wpcomm .wc-field-comment .wc-field-textarea {
955
+ margin-left: 30px;
956
+ }
957
+ #wpcomm .wc-form-footer{
958
+ margin-left:0px;
959
+ }
960
+ #wpcomm .wc-author-data{
961
+ width: 100%;
962
+ float:none;
963
+ display:block;
964
+ }
965
+ #wpcomm .wc-form-submit {
966
+ width: 100%;
967
+ float:none;
968
+ display:block;
969
+ padding: 0;
970
+ }
971
+ #wpcomm .wc-field-submit input[type="button"] {
972
+ max-width:200px;
973
+ }
974
+
975
+
976
+ #wpcomm .wc-field-captcha {
977
+ width: 100%;
978
+ margin:0px auto;
979
+ display:block;
980
+ float:none;
981
+ }
982
+ #wpcomm .wc-field-captcha .wc-captcha-label {
983
+ padding-left:0px;
984
+ width:115px;
985
+ }
986
+ #wpcomm .wc-field-captcha .wc-captcha-input{ width:calc(100% - 116px); }
987
+
988
+ #wpcomm .wc-reply {
989
+ margin-left: 25px!important
990
+ }
991
+ #wpcomm .wc_comment_level-3 {
992
+ margin-left: 0px!important;
993
+ }
994
+ #wpcomm .wc_comment_level-4 {
995
+ margin-left: 0px!important;
996
+ }
997
+ #wpcomm .wc_comment_level-5 {
998
+ margin-left: 0px!important;
999
+ }
1000
+ #wpcomm .wc_comment_level-5 {
1001
+ margin-left: 0px!important;
1002
+ }
1003
+ #wpcomm .wc_comment_level-6 {
1004
+ margin-left: 0px!important;
1005
+ }
1006
+ #wpcomm .wc_comment_level-7 {
1007
+ margin-left: 0px!important;
1008
+ }
1009
+ #wpcomm .wc_comment_level-8 {
1010
+ margin-left: 0px!important;
1011
+ }
1012
+ #wpcomm .wc_comment_level-9 {
1013
+ margin-left: 0px!important;
1014
+ }
1015
+ #wpcomm .wc_comment_level-10 {
1016
+ margin-left: 0px!important;
1017
+ }
1018
+ #wpcomm .wc-comment-text {
1019
+ font-size: 13px!important;
1020
+ }
1021
+ #wpcomm .wc-comment .wc-comment-left {
1022
+ width: 40px;
1023
+ }
1024
+ #wpcomm .wc-comment .wc-comment-left .avatar {
1025
+ width: 40px;
1026
+ }
1027
+ #wpcomm .wc-comment .wc-comment-right {
1028
+ margin-left: 55px;
1029
+ }
1030
+ #wpcomm .wc-reply .wc-comment-right {
1031
+ margin-left: 55px;
1032
+ }
1033
+ #wpcomm .wc-toggle {
1034
+ font-size: 11px;
1035
+ line-height: 12px;
1036
+ padding-top: 40px;
1037
+ padding-bottom: 5px;
1038
+ }
1039
+ #wpcomm .share_buttons_box {
1040
+ margin-top: 9px;
1041
+ }
1042
+ #wpcomm .wc_notification_checkboxes{ text-align:right; }
1043
+ #wpcomm .wc-field-submit{ text-align:right; }
1044
+ }
1045
+
1046
+ @media screen and (max-width:420px) {
1047
+ #wpcomm .wc-toggle {
1048
+ font-size: 11px;
1049
+ line-height: 12px;
1050
+ padding-top: 35px;
1051
+ padding-bottom: 5px;
1052
+ }
1053
+ #wpcomm .wpdiscuz-sort-buttons, #wpcomm .wpdiscuz-sort-button {
1054
+ font-size: 11px!important;
1055
+ }
1056
+ #wpcomm .wc-share-link {
1057
+ line-height: 30px;
1058
+ }
1059
+ #wpcomm .wc-field-comment .wc-field-textarea {
1060
+ margin-left: 0px;
1061
+ }
1062
+ #wpcomm .wc-field-comment .wc-field-avatararea .avatar {
1063
+ width: 0px;
1064
+ display: none;
1065
+ }
1066
+ #wpcomm .wc-comment .wc-comment-left {
1067
+ float: none!important;
1068
+ margin-bottom: 8px;
1069
+ width: 100%!important;
1070
+ }
1071
+ #wpcomm .wc-comment .wc-comment-right, #wpcomm .wc-reply .wc-comment-right {
1072
+ margin-left: 0px!important;
1073
+ }
1074
+ #wpcomm .wc-comment .wc-comment-left .avatar {
1075
+ width: 25px!important;
1076
+ height: 25px!important;
1077
+ margin: 0px 5px 0px 0px!important;
1078
+ float: left!important;
1079
+ display: block!important;
1080
+ }
1081
+ #wpcomm .wc-comment .wc-comment-left .wc-comment-label {
1082
+ font-size: 13px;
1083
+ padding: 6px 5px 5px 5px;
1084
+ line-height: 14px;
1085
+ display: block-inline!important;
1086
+ margin-left: 33px;
1087
+ }
1088
+ #wpcomm .wc-field-submit input[type="button"] {
1089
+ width: 99%;
1090
+ font-size: 10px;
1091
+ padding: 5px 2px;
1092
+ }
1093
+ .wpdiscuz_auth .wc-field-submit {
1094
+ width: 100%!important;
1095
+ }
1096
+ .wpdiscuz_auth .wc_notification_checkboxes {
1097
+ text-align: left!important;
1098
+ }
1099
+ }
1100
+ #wpcomm .wpdiscuz-hidden {
1101
+ display: none;
1102
+ }
1103
+ .wpdiscuz_top_clearing{
1104
+ clear:both;
1105
+ }
1106
+ .wpdiscuz_clear{
1107
+ clear:both;
1108
+ }
1109
+
1110
+
1111
+
1112
+
assets/img/captcha-loading.png CHANGED
Binary file
assets/img/gc/1.png DELETED
Binary file
assets/img/gc/2.png DELETED
Binary file
assets/img/gc/3.png DELETED
Binary file
assets/img/gc/4.png DELETED
Binary file
assets/img/gc/5.png DELETED
Binary file
assets/img/icon-link.gif CHANGED
Binary file
assets/img/progressbar.gif DELETED
Binary file
assets/img/thumbs-down.png CHANGED
Binary file
assets/img/thumbs-up.png CHANGED
Binary file
assets/js/wpdiscuz-options.js CHANGED
@@ -1,6 +1,10 @@
1
  jQuery(document).ready(function ($) {
2
  if (location.href.indexOf('wpdiscuz_options_page') >= 0) {
3
  $('.wpdiscuz-color-picker').colorPicker();
 
 
 
 
4
  }
5
 
6
  if ($('#show_sorting_buttons').attr('checked')) {
1
  jQuery(document).ready(function ($) {
2
  if (location.href.indexOf('wpdiscuz_options_page') >= 0) {
3
  $('.wpdiscuz-color-picker').colorPicker();
4
+
5
+ if (!$('ul.wpdiscuz-addons-options').html().trim()) {
6
+ $('#wpdiscuz-addons-options').remove();
7
+ }
8
  }
9
 
10
  if ($('#show_sorting_buttons').attr('checked')) {
assets/js/wpdiscuz-options.min.js CHANGED
@@ -1,2 +1,2 @@
1
 
2
- jQuery(document).ready(function(a){if(location.href.indexOf("wpdiscuz_options_page")>=0){a(".wpdiscuz-color-picker").colorPicker()}if(a("#show_sorting_buttons").attr("checked")){a("#row_mostVotedByDefault").removeClass("wc-hidden")}else{a("#row_mostVotedByDefault").addClass("wc-hidden")}a("#show_sorting_buttons").change(function(){if(a(this).is(":checked")){a("#row_mostVotedByDefault").removeClass("wc-hidden")}else{a("#row_mostVotedByDefault").addClass("wc-hidden")}})});
1
 
2
+ jQuery(document).ready(function(a){if(location.href.indexOf("wpdiscuz_options_page")>=0){a(".wpdiscuz-color-picker").colorPicker();if(!a("ul.wpdiscuz-addons-options").html().trim()){a("#wpdiscuz-addons-options").remove()}}if(a("#show_sorting_buttons").attr("checked")){a("#row_mostVotedByDefault").removeClass("wc-hidden")}else{a("#row_mostVotedByDefault").addClass("wc-hidden")}a("#show_sorting_buttons").change(function(){if(a(this).is(":checked")){a("#row_mostVotedByDefault").removeClass("wc-hidden")}else{a("#row_mostVotedByDefault").addClass("wc-hidden")}})});
assets/js/wpdiscuz.js CHANGED
@@ -1,15 +1,16 @@
1
  jQuery(document).ready(function ($) {
2
- $('body').addClass('wpdiscuz_313');
3
  wpdiscuzValidator.message['invalid'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_invalid_field;
4
  wpdiscuzValidator.message['empty'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_empty_text;
5
  wpdiscuzValidator.message['email'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_email_text;
6
  wpdiscuzValidator.message['url'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_url_text;
7
- wpdiscuzValidator.message['min'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_msg_comment_text_min_length;
8
- wpdiscuzValidator.message['max'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_msg_comment_text_max_length;
9
 
10
  var isUserLoggedIn = wpdiscuz_ajax_obj.wpdiscuz_options.is_user_logged_in;
11
  var isShowCaptchaForGuests = wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide == 0 && !isUserLoggedIn;
12
  var isShowCaptchaForMembers = wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide_for_members > 0 && isUserLoggedIn;
 
13
  var commentListLoadType = wpdiscuz_ajax_obj.wpdiscuz_options.commentListLoadType;
14
  var wordpressIsPaginate = wpdiscuz_ajax_obj.wpdiscuz_options.wordpressIsPaginate;
15
  var wpdiscuzPostId = wpdiscuz_ajax_obj.wpdiscuz_options.wc_post_id;
@@ -24,6 +25,7 @@ jQuery(document).ready(function ($) {
24
  var wpdiscuzCommentOrderBy = 'comment_date_gmt';
25
  var wpdiscuzReplyArray = [];
26
  var wpdiscuzCommentArray = [];
 
27
 
28
  addTooltipster();
29
  loginButtonsClone();
@@ -82,13 +84,9 @@ jQuery(document).ready(function ($) {
82
 
83
  $(document).delegate('.wc-new-loaded-comment', 'mouseenter', function () {
84
  if ($(this).hasClass('wc-reply')) {
85
- $('>.wc-comment-right', this).animate({
86
- backgroundColor: wpdiscuz_ajax_obj.wpdiscuz_options.wc_reply_bg_color
87
- }, 1500);
88
  } else {
89
- $('>.wc-comment-right', this).animate({
90
- backgroundColor: wpdiscuz_ajax_obj.wpdiscuz_options.wc_comment_bg_color
91
- }, 1500);
92
  }
93
  });
94
  //============================== CAPTCHA ============================== //
@@ -96,32 +94,51 @@ jQuery(document).ready(function ($) {
96
  changeCaptchaImage($(this));
97
  });
98
  function changeCaptchaImage(reloadImage) {
99
- if (isShowCaptchaForGuests || isShowCaptchaForMembers) {
100
  var form = reloadImage.parents('.wc-form-wrapper');
101
- var isMain = form.hasClass('wc-secondary-form-wrapper') ? 0 : 1;
102
- var uniqueId = getUniqueID(reloadImage, isMain);
103
- var data = 'uniqueId=' + uniqueId;
104
- var ajaxObject = getAjaxObject('generateCaptcha', data);
105
- ajaxObject.done(function (response) {
106
- try {
107
- var obj = $.parseJSON(response);
108
- if (obj.code == 1) {
109
- var captchaImg = $(reloadImage).prev().children('.wc_captcha_img');
110
- var src = captchaImg.attr('src');
111
- var lastSlashIndex = src.lastIndexOf('/') + 1;
112
- var newSrc = src.substring(0, lastSlashIndex) + obj.message;
113
- captchaImg.attr('src', newSrc);
114
- var keyField = $('.wpdiscuz-cnonce', form);
115
- keyField.attr('id', obj.key);
116
- keyField.attr('value', obj.key);
 
 
 
 
 
 
 
 
 
 
 
 
117
  }
118
- } catch (e) {
119
- console.log(e);
120
- }
121
- $('.wpdiscuz-loading-bar').hide();
122
- });
123
  }
124
  }
 
 
 
 
 
 
 
 
 
125
  //============================== CAPTCHA ============================== //
126
  //============================== ADD COMMENT FUNCTION ============================== //
127
 
@@ -142,16 +159,26 @@ jQuery(document).ready(function ($) {
142
 
143
  if (wpdiscuzValidator.checkAll(wcForm)) {
144
  var data = wcForm.serialize() + '&wc_comment_depth=' + depth;
145
- if (isShowCaptchaForGuests || isShowCaptchaForMembers) {
146
  var image = $('.wc_captcha_img', wcForm);
147
  var src = image.attr('src');
148
  var lastIndex = src.lastIndexOf('/') + 1;
149
  var fileName = src.substring(lastIndex);
150
  data += '&fileName=' + fileName;
151
  }
 
 
 
 
 
 
 
 
 
152
  if (wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs) {
153
  data += '&wpdiscuz_zs=' + wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs;
154
- }
 
155
  getAjaxObject('addComment', data).done(function (response) {
156
  var messageKey = '';
157
  var message = '';
@@ -196,6 +223,7 @@ jQuery(document).ready(function ($) {
196
  });
197
  }
198
  changeCaptchaImage($('.wc_captcha_refresh_img', wcForm));
 
199
  });
200
 
201
  function notifySubscribers(obj) {
@@ -228,10 +256,10 @@ jQuery(document).ready(function ($) {
228
  }
229
 
230
  function setCookieInForm() {
231
- if ($.cookie('wc_author_name')) {
232
  $('.wc_comm_form .wc_name').val($.cookie('wc_author_name'));
233
  }
234
- if ($.cookie('wc_author_email')) {
235
  $('.wc_comm_form .wc_email').val($.cookie('wc_author_email'));
236
  }
237
  if ($.cookie('wc_author_website')) {
@@ -771,5 +799,9 @@ jQuery(document).ready(function ($) {
771
  }
772
  });
773
  }
 
 
 
 
774
  //============================== FUNCTIONS ============================== //
775
  });
1
  jQuery(document).ready(function ($) {
2
+ $('body').addClass('wpdiscuz_' + wpdiscuz_ajax_obj.wpdiscuz_options.version);
3
  wpdiscuzValidator.message['invalid'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_invalid_field;
4
  wpdiscuzValidator.message['empty'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_empty_text;
5
  wpdiscuzValidator.message['email'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_email_text;
6
  wpdiscuzValidator.message['url'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_url_text;
7
+ wpdiscuzValidator.message['min'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_msg_input_min_length;
8
+ wpdiscuzValidator.message['max'] = wpdiscuz_ajax_obj.wpdiscuz_options.wc_msg_input_max_length;
9
 
10
  var isUserLoggedIn = wpdiscuz_ajax_obj.wpdiscuz_options.is_user_logged_in;
11
  var isShowCaptchaForGuests = wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide == 0 && !isUserLoggedIn;
12
  var isShowCaptchaForMembers = wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide_for_members > 0 && isUserLoggedIn;
13
+ var isCaptchaInSession = wpdiscuz_ajax_obj.wpdiscuz_options.isCaptchaInSession;
14
  var commentListLoadType = wpdiscuz_ajax_obj.wpdiscuz_options.commentListLoadType;
15
  var wordpressIsPaginate = wpdiscuz_ajax_obj.wpdiscuz_options.wordpressIsPaginate;
16
  var wpdiscuzPostId = wpdiscuz_ajax_obj.wpdiscuz_options.wc_post_id;
25
  var wpdiscuzCommentOrderBy = 'comment_date_gmt';
26
  var wpdiscuzReplyArray = [];
27
  var wpdiscuzCommentArray = [];
28
+ var wpdiscuzRecaptcha = wpdiscuz_ajax_obj.wpdiscuz_options.wpDiscuzReCaptcha;
29
 
30
  addTooltipster();
31
  loginButtonsClone();
84
 
85
  $(document).delegate('.wc-new-loaded-comment', 'mouseenter', function () {
86
  if ($(this).hasClass('wc-reply')) {
87
+ $('>.wc-comment-right', this).css('backgroundColor', wpdiscuz_ajax_obj.wpdiscuz_options.wc_reply_bg_color);
 
 
88
  } else {
89
+ $('>.wc-comment-right', this).css('backgroundColor', wpdiscuz_ajax_obj.wpdiscuz_options.wc_comment_bg_color);
 
 
90
  }
91
  });
92
  //============================== CAPTCHA ============================== //
94
  changeCaptchaImage($(this));
95
  });
96
  function changeCaptchaImage(reloadImage) {
97
+ if (!wpdiscuzRecaptcha && (isShowCaptchaForGuests || isShowCaptchaForMembers)) {
98
  var form = reloadImage.parents('.wc-form-wrapper');
99
+ var keyField = $('.wpdiscuz-cnonce', form);
100
+ if (isCaptchaInSession) {
101
+ var uuId = getUUID();
102
+ var captchaImg = $(reloadImage).prev().children('.wc_captcha_img');
103
+ var src = captchaImg.attr('src');
104
+ var fileUrl = src.substring(0, src.indexOf('=') + 1);
105
+ captchaImg.attr('src', fileUrl + uuId + '&r=' + Math.random());
106
+ keyField.attr('id', uuId);
107
+ keyField.attr('value', uuId);
108
+ } else {
109
+ var isMain = form.hasClass('wc-secondary-form-wrapper') ? 0 : 1;
110
+ var uniqueId = getUniqueID(reloadImage, isMain);
111
+ var data = 'uniqueId=' + uniqueId;
112
+ var ajaxObject = getAjaxObject('generateCaptcha', data);
113
+ ajaxObject.done(function (response) {
114
+ try {
115
+ var obj = $.parseJSON(response);
116
+ if (obj.code == 1) {
117
+ var captchaImg = $(reloadImage).prev().children('.wc_captcha_img');
118
+ var src = captchaImg.attr('src');
119
+ var lastSlashIndex = src.lastIndexOf('/') + 1;
120
+ var newSrc = src.substring(0, lastSlashIndex) + obj.message;
121
+ captchaImg.attr('src', newSrc);
122
+ keyField.attr('id', obj.key);
123
+ keyField.attr('value', obj.key);
124
+ }
125
+ } catch (e) {
126
+ console.log(e);
127
  }
128
+ $('.wpdiscuz-loading-bar').hide();
129
+ });
130
+ }
 
 
131
  }
132
  }
133
+
134
+ function getUUID() {
135
+ var chars = '123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
136
+ var uuId = 'c';
137
+ for (i = 0; i < 13; i++) {
138
+ uuId += chars[Math.floor(Math.random() * (chars.length - 1) + 1)];
139
+ }
140
+ return uuId;
141
+ }
142
  //============================== CAPTCHA ============================== //
143
  //============================== ADD COMMENT FUNCTION ============================== //
144
 
159
 
160
  if (wpdiscuzValidator.checkAll(wcForm)) {
161
  var data = wcForm.serialize() + '&wc_comment_depth=' + depth;
162
+ if (!wpdiscuzRecaptcha && (isShowCaptchaForGuests || isShowCaptchaForMembers) && !isCaptchaInSession) {
163
  var image = $('.wc_captcha_img', wcForm);
164
  var src = image.attr('src');
165
  var lastIndex = src.lastIndexOf('/') + 1;
166
  var fileName = src.substring(lastIndex);
167
  data += '&fileName=' + fileName;
168
  }
169
+
170
+ if ($.cookie('wc_author_name') && !$('.wc_name', wcForm).val()) {
171
+ data += '&wc_name=' + $.cookie('wc_author_name');
172
+ }
173
+
174
+ if ($.cookie('wc_author_email') && !$('.wc_email', wcForm).val()) {
175
+ data += '&wc_email=' + $.cookie('wc_author_email');
176
+ }
177
+
178
  if (wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs) {
179
  data += '&wpdiscuz_zs=' + wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs;
180
+ }
181
+
182
  getAjaxObject('addComment', data).done(function (response) {
183
  var messageKey = '';
184
  var message = '';
223
  });
224
  }
225
  changeCaptchaImage($('.wc_captcha_refresh_img', wcForm));
226
+ wpdiscuzReset();
227
  });
228
 
229
  function notifySubscribers(obj) {
256
  }
257
 
258
  function setCookieInForm() {
259
+ if ($.cookie('wc_author_name') && $.cookie('wc_author_name').indexOf('Anonymous') < 0) {
260
  $('.wc_comm_form .wc_name').val($.cookie('wc_author_name'));
261
  }
262
+ if ($.cookie('wc_author_email') && $.cookie('wc_author_email').indexOf('@example.com') < 0) {
263
  $('.wc_comm_form .wc_email').val($.cookie('wc_author_email'));
264
  }
265
  if ($.cookie('wc_author_website')) {
799
  }
800
  });
801
  }
802
+
803
+ function wpdiscuzReset() {
804
+ $('.wpdiscuz_reset').val('');
805
+ }
806
  //============================== FUNCTIONS ============================== //
807
  });
assets/js/wpdiscuz.min.js CHANGED
@@ -1,2 +1,2 @@
1
 
2
- jQuery(document).ready(function(D){D("body").addClass("wpdiscuz_313");wpdiscuzValidator.message.invalid=wpdiscuz_ajax_obj.wpdiscuz_options.wc_invalid_field;wpdiscuzValidator.message.empty=wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_empty_text;wpdiscuzValidator.message.email=wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_email_text;wpdiscuzValidator.message.url=wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_url_text;wpdiscuzValidator.message.min=wpdiscuz_ajax_obj.wpdiscuz_options.wc_msg_comment_text_min_length;wpdiscuzValidator.message.max=wpdiscuz_ajax_obj.wpdiscuz_options.wc_msg_comment_text_max_length;var Q=wpdiscuz_ajax_obj.wpdiscuz_options.is_user_logged_in;var q=wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide==0&&!Q;var P=wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide_for_members>0&&Q;var B=wpdiscuz_ajax_obj.wpdiscuz_options.commentListLoadType;var U=wpdiscuz_ajax_obj.wpdiscuz_options.wordpressIsPaginate;var n=wpdiscuz_ajax_obj.wpdiscuz_options.wc_post_id;var j=wpdiscuz_ajax_obj.wpdiscuz_options.commentListUpdateType;var i=wpdiscuz_ajax_obj.wpdiscuz_options.commentListUpdateTimer;var x=wpdiscuz_ajax_obj.wpdiscuz_options.liveUpdateGuests;var R=wpdiscuz_ajax_obj.wpdiscuz_options.loadLastCommentId;var a=wpdiscuz_ajax_obj.wpdiscuz_options.wordpress_comment_order;var H=wpdiscuz_ajax_obj.wpdiscuz_options.commentsVoteOrder;var z=wpdiscuz_ajax_obj.wpdiscuz_options.storeCommenterData;var b=1;var l="comment_date_gmt";var L=[];var u=[];E();g();f();if(H){D(".wpdiscuz-vote-sort-up").addClass("wpdiscuz-sort-button-active");l="by_vote"}else{D(".wpdiscuz-date-sort-"+a).addClass("wpdiscuz-sort-button-active")}D("#wc_unsubscribe_message").delay(7000).fadeOut(1500,function(){D(this).remove();location.href=location.href.substring(0,location.href.indexOf("subscribeAnchor")-1)});if(D(".wc_main_comm_form").length){e()}D(document).delegate(".wc-reply-link","click",function(){if(D(this).hasClass("wpdiscuz-clonned")){D("#wc-secondary-form-wrapper-"+m(D(this),0)).slideToggle(700)}else{h(D(this))}e()});D(document).delegate("textarea.wc_comment","focus",function(){if(!(D(this).next(".autogrow-textarea-mirror").length)){D(this).autoGrow()}var X=D(this).parents(".wc-form-wrapper");D(".wc-form-footer",X).slideDown(700)});D(document).delegate(".wc-share-link","click",function(){var X=D(this).parents(".wc-comment-right");D(".share_buttons_box",X).slideToggle(1000)});D(document).delegate(".wpdiscuz-nofollow,.wc_captcha_refresh_img,.wc-toggle,.wc-load-more-link","click",function(X){X.preventDefault()});D(document).delegate(".wc-toggle","click",function(){var Y=m(D(this),0);var X=D(this);D("#wc-comm-"+Y+"> .wc-reply").slideToggle(700,function(){if(D(this).is(":hidden")){X.html(wpdiscuz_ajax_obj.wpdiscuz_options.wc_show_replies_text+" &or;")}else{X.html(wpdiscuz_ajax_obj.wpdiscuz_options.wc_hide_replies_text+" &and;")}})});D(document).delegate(".wc-new-loaded-comment","mouseenter",function(){if(D(this).hasClass("wc-reply")){D(">.wc-comment-right",this).animate({backgroundColor:wpdiscuz_ajax_obj.wpdiscuz_options.wc_reply_bg_color},1500)}else{D(">.wc-comment-right",this).animate({backgroundColor:wpdiscuz_ajax_obj.wpdiscuz_options.wc_comment_bg_color},1500)}});D(document).delegate(".wc_captcha_refresh_img","click",function(){O(D(this))});function O(ab){if(q||P){var Z=ab.parents(".wc-form-wrapper");var X=Z.hasClass("wc-secondary-form-wrapper")?0:1;var ac=m(ab,X);var aa="uniqueId="+ac;var Y=d("generateCaptcha",aa);Y.done(function(ae){try{var ai=D.parseJSON(ae);if(ai.code==1){var ag=D(ab).prev().children(".wc_captcha_img");var ak=ag.attr("src");var ad=ak.lastIndexOf("/")+1;var af=ak.substring(0,ad)+ai.message;ag.attr("src",af);var aj=D(".wpdiscuz-cnonce",Z);aj.attr("id",ai.key);aj.attr("value",ai.key)}}catch(ah){console.log(ah)}D(".wpdiscuz-loading-bar").hide()})}}D(document).delegate(".wc_comm_submit","click",function(){var ab=1;var Y=D(this).parents("form");if(!Y.hasClass("wc_main_comm_form")){ab=C(D(this).parents(".wc-comment"))}if(!wpdiscuz_ajax_obj.wpdiscuz_options.is_email_field_required&&D(".wc_email",Y).val()){D(".wc_email",Y).attr("required","required")}if(!wpdiscuz_ajax_obj.wpdiscuz_options.is_email_field_required&&!(D(".wc_email",Y).val())){D(".wc_email",Y).removeAttr("required");D(".wc_email",Y).next(".alert").html("")}if(wpdiscuzValidator.checkAll(Y)){var X=Y.serialize()+"&wc_comment_depth="+ab;if(q||P){var Z=D(".wc_captcha_img",Y);var aa=Z.attr("src");var ad=aa.lastIndexOf("/")+1;var ac=aa.substring(ad);X+="&fileName="+ac}if(wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs){X+="&wpdiscuz_zs="+wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs}d("addComment",X).done(function(af){var ag="";var ah="";try{var aj=D.parseJSON(af);ag=aj.code;if(parseInt(ag)>=0){var ae=aj.is_main;ah=aj.message;D(".wc_header_text_count").html(aj.wc_all_comments_count_new);if(ae){D(".wc-thread-wrapper").prepend(ah)}else{D("#wc-secondary-form-wrapper-"+ag).slideToggle(700);if(aj.is_in_same_container==1){D("#wc-secondary-form-wrapper-"+ag).after(ah)}else{D("#wc-secondary-form-wrapper-"+ag).after(ah.replace("wc-reply","wc-reply wc-no-left-margin"))}}o(aj);T(aj);t(Y,aj);Y.get(0).reset();e();f();D(".wc_comment",Y).css("height","45.6px")}else{ah=wpdiscuz_ajax_obj.wpdiscuz_options[ag];s(Y,ag,ah,true)}}catch(ai){if(af.indexOf("<")>=0&&af.indexOf(">")>=0){ah=ai}else{ah=af}s(Y,"wc_invalid_field",ah,true)}E();D(".wpdiscuz-loading-bar").hide()})}O(D(".wc_captcha_refresh_img",Y))});function o(Z){if(!Z.held_moderate){var Y="comment_id="+Z.new_comment_id+"&email="+Z.user_email+"&isParent="+Z.is_main;var X=d("checkNotificationType",Y);X.done(function(aa){try{Z=D.parseJSON(aa)}catch(ab){console.log(ab)}})}}function T(Z){if(Z.redirect>0&&Z.new_comment_id){var Y="commentId="+Z.new_comment_id;var X=d("redirect",Y);X.done(function(aa){Z=D.parseJSON(aa);if(Z.code==1){setTimeout(function(){window.location.href=Z.redirect_to},5000)}})}}function e(){if(D.cookie("wc_author_name")){D(".wc_comm_form .wc_name").val(D.cookie("wc_author_name"))}if(D.cookie("wc_author_email")){D(".wc_comm_form .wc_email").val(D.cookie("wc_author_email"))}if(D.cookie("wc_author_website")){D(".wc_comm_form .wc_website").val(D.cookie("wc_author_website"))}}function t(Z,aa){var Y="";var X="";if(D(".wc_email",Z).val()){Y=D(".wc_email",Z).val()}else{Y=aa.user_email}if(D(".wc_name",Z).val()){X=D(".wc_name",Z).val()}else{X=aa.user_name}console.log(z);if(z==null){D.cookie("wc_author_email",Y);D.cookie("wc_author_name",X);D.cookie("wc_author_website",D(".wc_website",Z).val())}else{z=parseInt(z);D.cookie("wc_author_email",Y,{expires:z,path:"/"});D.cookie("wc_author_name",X,{expires:z,path:"/"});D.cookie("wc_author_website",D(".wc_website",Z).val(),{expires:z,path:"/"})}}var S;D(document).delegate(".wc_editable_comment","click",function(){var aa=m(D(this),0);var X=V(aa);var Z=D(this);var Y="commentId="+X;S=D("#wc-comm-"+aa+" .wc-comment-text").html();d("editComment",Y).done(function(ac){try{var ag=D.parseJSON(ac);var ae="";var ad=ag.code;if(parseInt(ad)>=0){var ab='<textarea required="required" name="wc_comment" class="wc_comment wc_field_input wc_edit_comment" id="wc_edit_comment-'+aa+'" style="min-height: 2em;">'+ag.message+"</textarea>";D("#wc-comm-"+aa+" > .wc-comment-right .wc-comment-text").replaceWith(ab);document.getElementById("wc_edit_comment-"+aa).focus();D("#wc-comm-"+aa+" > .wc-comment-right .wc-comment-footer .wc_save_edited_comment").show();ab="";D("#wc-comm-"+aa+" > .wc-comment-right .wc-comment-footer .wc_editable_comment").hide();D("#wc-comm-"+aa+" > .wc-comment-right .wc-comment-footer .wc_cancel_edit").show()}else{ae=wpdiscuz_ajax_obj.wpdiscuz_options[ad];s(Z,ad,ae,false)}}catch(af){console.log(af)}D(".wpdiscuz-loading-bar").hide()})});D(document).delegate(".wc_save_edited_comment","click",function(){var ac=m(D(this));var Y=V(ac);var X=D("#wc-comm-"+ac+" textarea#wc_edit_comment-"+ac);var Z=X.val();var ab=D(this);if(D.trim(Z).length>0){var aa="commentId="+Y+"&commentContent="+Z;d("saveEditedComment",aa).done(function(ad){try{var ah=D.parseJSON(ad);var ae=ah.code;var af="";if(parseInt(ae)>=0){I(ac,ah.message)}else{af=wpdiscuz_ajax_obj.wpdiscuz_options[ae];s(ab,ae,af,false)}X="";Z=""}catch(ag){console.log(ag)}D(".wpdiscuz-loading-bar").hide()})}});D(document).delegate(".wc_cancel_edit","click",function(){var X=m(D(this));I(X,S)});function I(Z,Y){D("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-footer .wc_editable_comment").show();D("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-footer .wc_cancel_edit").hide();D("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-footer .wc_save_edited_comment").hide();var X='<div class="wc-comment-text">'+k(Y)+"</div>";D("#wc-comm-"+Z+" #wc_edit_comment-"+Z).replaceWith(X)}function k(aa,Z){var Y=(Z||typeof Z==="undefined")?"<br/>":"<br>";var X=(aa+"").replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,"$1"+Y+"$2");return X.replace("<br><br>","<br/>")}D(document).delegate(".wc-load-more-submit","click",function(){G()});var p=D("#wpdiscuzHasMoreComments").val();var F=false;if(B==2&&!U){D(".wc-load-more-submit").parents(".wpdiscuz-comment-pagination").hide();D(window).scroll(function(){var X=document.getElementById("wcThreadWrapper").scrollHeight;if(D(window).scrollTop()>=X&&F===false&&p==1){F=true;G()}})}function G(){var X;X="offset="+b+"&orderBy="+l+"&order="+a+"&lastParentId="+v();b++;d("loadMoreComments",X).done(function(Y){try{var aa=D.parseJSON(Y);D(".wpdiscuz-comment-pagination").before(aa.comment_list);r(aa);D(".wpdiscuz_single").remove();F=false;f()}catch(Z){console.log(Z)}E();D(".wpdiscuz-loading-bar").hide();D(".wc-load-more-submit").blur()})}function r(Y){var X=0;if(Y.is_show_load_more==false){X=0;p=0;D(".wc-load-more-submit").parents(".wpdiscuz-comment-pagination").hide()}else{N(Y.last_parent_id);p=1;X=1}D("#wpdiscuzHasMoreComments").val(X)}D(document).delegate(".wc_vote","click",function(){var X=D(this);var aa="";var ab="";var Y=D(this).parents(".wc-comment-right").attr("id");Y=Y.substring(Y.lastIndexOf("-")+1);var Z;if(D(this).hasClass("wc-up")){Z=1}else{Z=-1}var ac="commentId="+Y+"&voteType="+Z;d("voteOnComment",ac).done(function(ad){try{var af=D.parseJSON(ad);aa=af.code;if(parseInt(aa)>=0){var ag=D(".wc-comment-footer .wc-vote-result",D("#comment-"+Y));D(ag).text(parseInt(D(ag).text())+Z)}else{ab=wpdiscuz_ajax_obj.wpdiscuz_options[aa];s(X,aa,ab,false)}}catch(ae){console.log(ae)}D(".wpdiscuz-loading-bar").hide()})});D(document).delegate(".wpdiscuz-sort-button","click",function(){p=D("#wpdiscuzHasMoreComments").val();if(!(D(this).hasClass("wpdiscuz-sort-button-active"))){var aa=D(this);if(D(this).hasClass("wpdiscuz-vote-sort-up")){l="by_vote";a="desc"}else{l="comment_date_gmt";a=D(this).hasClass("wpdiscuz-date-sort-desc")?"desc":"asc"}var Z="orderBy="+l+"&order="+a;var X="";var Y="";d("wpdiscuzSorting",Z).done(function(ab){try{var ad=D.parseJSON(ab);X=ad.code;Y=ad.message;if(parseInt(X)>0){D("#wpcomm .wc-thread-wrapper .wc-comment").each(function(){D(this).remove()});D("#wpcomm .wc-thread-wrapper").prepend(Y);b=parseInt(ad.loadCount)}else{}K(aa);r(ad)}catch(ac){console.log(ac)}f();E();D(".wpdiscuz-loading-bar").hide()})}});function K(X){D(".wpdiscuz-sort-buttons .wpdiscuz-sort-button").each(function(){D(this).removeClass("wpdiscuz-sort-button-active")});X.addClass("wpdiscuz-sort-button-active")}function W(){var ab=location.href;var aa=ab.match(/#comment\-(\d+)/);if(aa!==null){var Y=aa[1];if(!D("#comment-"+Y).length){var Z="commentId="+Y;var X=d("getSingleComment",Z);X.done(function(ac){try{var ae=D.parseJSON(ac);D(".wc-thread-wrapper").prepend(ae.message);D("html, body").animate({scrollTop:D(".wc-thread-wrapper").offset().top},1000)}catch(ad){console.log(ad)}E();D(".wpdiscuz-loading-bar").hide()})}}}W();if(j>0&&R&&(Q||(!Q&&!x))){setInterval(M,parseInt(i)*1000)}function M(){var aa=A();var Y=(D.cookie("wc_author_email")!=undefined&&D.cookie("wc_author_email")!="")?D.cookie("wc_author_email"):"";var Z="loadLastCommentId="+R+"&visibleCommentIds="+aa+"&email="+Y;var X=d("liveUpdate",Z);X.done(function(ac){try{var ah=D.parseJSON(ac);if(ah.code==1){if(j==1){y(ah)}else{u=u.concat(ah.message.comments);L=L.concat(ah.message.author_replies);var ad=u.length;var ab=L.length;if(ad>0){var af=ad+" ";af+=ad>1?wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_comments_button_text:wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_comment_button_text;D(".wc_new_comment").html(af).show()}else{D(".wc_new_comment").hide()}if(ab>0){var ae=ab+" ";ae+=ab>1?wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_replies_button_text:wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_reply_button_text;D(".wc_new_reply").html(ae).show()}else{D(".wc_new_reply").hide()}}D(".wc_header_text_count").html(ah.wc_all_comments_count_new);R=ah.loadLastCommentId}}catch(ag){console.log(ag)}E();D(".wpdiscuz-loading-bar").hide()})}function y(aa){if(aa.message!==undefined){var X;var Z=aa.message;for(var Y=0;Y<Z.length;Y++){X=Z[Y];w(X.comment_parent,X.comment_html)}f()}}D(document).delegate(".wc-update-on-click","click",function(){var X;var Y=D(this);if(Y.hasClass("wc_new_comment")){X="newCommentIds="+u.join()}else{X="newCommentIds="+L.join()}d("updateOnClick",X).done(function(Z){try{var ab=D.parseJSON(Z);y(ab);if(Y.hasClass("wc_new_comment")){u=[];D(".wc_new_comment").hide()}else{L=[];D(".wc_new_reply").hide()}}catch(aa){console.log(aa)}E();D(".wpdiscuz-loading-bar").hide()})});D(document).delegate(".wpdiscuz-readmore","click",function(){var Z=m(D(this));var X=V(Z);var Y="commentId="+X;d("readMore",Y).done(function(aa){try{var ac=D.parseJSON(aa);if(ac.code){D("#comment-"+X+" > .wc-comment-text").html(" "+ac.message);D("#wpdiscuz-readmore-"+Z).remove()}}catch(ab){console.log(ab)}D(".wpdiscuz-loading-bar").hide()})});function s(ab,Y,aa,Z){var X;var ac;if(Z){ac=ab.parents(".wc-form-wrapper")}else{ac=ab.closest(".wc-comment")}X=ac.children(".wpdiscuz-comment-message");X.addClass(Y);X.html(aa);X.show().delay(4000).fadeOut(1000,function(){X.removeClass();X.addClass("wpdiscuz-comment-message");X.html("")})}function h(Y){var Z=m(Y,0);D("#wpdiscuz_form_anchor-"+Z).before(J(Z));var X=D("#wc-secondary-form-wrapper-"+Z);X.slideToggle(700,function(){Y.addClass("wpdiscuz-clonned")});O(D(".wc_captcha_refresh_img",X))}function J(Y){var X=D("#wpdiscuz_hidden_secondary_form").html();return X.replace(/wpdiscuzuniqueid/g,Y)}function m(Z,Y){var X="";if(Y){X=Z.parents(".wc-main-form-wrapper").attr("id")}else{X=Z.parents(".wc-comment").attr("id")}var aa=X.substring(X.lastIndexOf("-")+1);return aa}function V(X){return X.substring(0,X.indexOf("_"))}function v(){var X=D(".wc-load-more-link").attr("href");return X.substring(X.lastIndexOf("=")+1)}function N(X){var Y=D(".wc-load-more-link").attr("href");D(".wc-load-more-link").attr("href",Y.replace(/[\d]+$/m,X));if(B!=2){D(".wpdiscuz-comment-pagination").show()}}function C(Z){var Y=Z.attr("class");var X=Y.split(" ");var aa="";D.each(X,function(ab,ac){if("wc_comment_level"===c(ac,false)){aa=c(ac,true)}});return parseInt(aa)+1}function c(X,Y){var Z="";if(Y){Z=X.substring(X.indexOf("-")+1)}else{Z=X.substring(0,X.indexOf("-"))}return Z}function w(Z,Y){if(Z==0){D(".wc-thread-wrapper").prepend(Y)}else{var X=m(D("#comment-"+Z),0);D("#wpdiscuz_form_anchor-"+X).after(Y)}}function A(){var Z;var X;var Y="";D(".wc-comment-right").each(function(){Z=m(D(this),0);X=V(Z);Y+=X+","});return Y}function E(){D(".wc-comment-img-link").tooltipster({trigger:"click",contentAsHTML:true,interactive:true,multiple:true});D(".wc_tooltipster").tooltipster({offsetY:2,multiple:true})}function g(){if(D(".wc_social_plugin_wrapper .wp-social-login-provider-list").length){D(".wc_social_plugin_wrapper .wp-social-login-provider-list").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(D(".wc_social_plugin_wrapper .the_champ_login_container").length){D(".wc_social_plugin_wrapper .the_champ_login_container").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(D(".wc_social_plugin_wrapper .social_connect_form").length){D(".wc_social_plugin_wrapper .social_connect_form").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(D(".wc_social_plugin_wrapper .oneall_social_login_providers").length){D(".wc_social_plugin_wrapper .oneall_social_login .oneall_social_login_providers").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}}}}}function f(){D("#wcThreadWrapper .wc-comment").each(function(X){if(D("> .wc-reply",this).length){D("> .wc-comment-right .wc-comment-footer .wc-toggle",this).removeClass("wpdiscuz-hidden")}})}function d(Y,X){if(Y!=="liveUpdate"){D(".wpdiscuz-loading-bar").show()}X+="&postId="+n;return D.ajax({type:"POST",url:wpdiscuz_ajax_obj.url,data:{wpdiscuzAjaxData:X,action:Y}})}});
1
 
2
+ jQuery(document).ready(function(H){H("body").addClass("wpdiscuz_"+wpdiscuz_ajax_obj.wpdiscuz_options.version);wpdiscuzValidator.message.invalid=wpdiscuz_ajax_obj.wpdiscuz_options.wc_invalid_field;wpdiscuzValidator.message.empty=wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_empty_text;wpdiscuzValidator.message.email=wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_email_text;wpdiscuzValidator.message.url=wpdiscuz_ajax_obj.wpdiscuz_options.wc_error_url_text;wpdiscuzValidator.message.min=wpdiscuz_ajax_obj.wpdiscuz_options.wc_msg_input_min_length;wpdiscuzValidator.message.max=wpdiscuz_ajax_obj.wpdiscuz_options.wc_msg_input_max_length;var V=wpdiscuz_ajax_obj.wpdiscuz_options.is_user_logged_in;var t=wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide==0&&!V;var U=wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide_for_members>0&&V;var B=wpdiscuz_ajax_obj.wpdiscuz_options.isCaptchaInSession;var F=wpdiscuz_ajax_obj.wpdiscuz_options.commentListLoadType;var Z=wpdiscuz_ajax_obj.wpdiscuz_options.wordpressIsPaginate;var q=wpdiscuz_ajax_obj.wpdiscuz_options.wc_post_id;var l=wpdiscuz_ajax_obj.wpdiscuz_options.commentListUpdateType;var k=wpdiscuz_ajax_obj.wpdiscuz_options.commentListUpdateTimer;var A=wpdiscuz_ajax_obj.wpdiscuz_options.liveUpdateGuests;var W=wpdiscuz_ajax_obj.wpdiscuz_options.loadLastCommentId;var a=wpdiscuz_ajax_obj.wpdiscuz_options.wordpress_comment_order;var L=wpdiscuz_ajax_obj.wpdiscuz_options.commentsVoteOrder;var D=wpdiscuz_ajax_obj.wpdiscuz_options.storeCommenterData;var b=1;var o="comment_date_gmt";var Q=[];var x=[];var n=wpdiscuz_ajax_obj.wpdiscuz_options.wpDiscuzReCaptcha;I();h();f();if(L){H(".wpdiscuz-vote-sort-up").addClass("wpdiscuz-sort-button-active");o="by_vote"}else{H(".wpdiscuz-date-sort-"+a).addClass("wpdiscuz-sort-button-active")}H("#wc_unsubscribe_message").delay(7000).fadeOut(1500,function(){H(this).remove();location.href=location.href.substring(0,location.href.indexOf("subscribeAnchor")-1)});if(H(".wc_main_comm_form").length){e()}H(document).delegate(".wc-reply-link","click",function(){if(H(this).hasClass("wpdiscuz-clonned")){H("#wc-secondary-form-wrapper-"+p(H(this),0)).slideToggle(700)}else{j(H(this))}e()});H(document).delegate("textarea.wc_comment","focus",function(){if(!(H(this).next(".autogrow-textarea-mirror").length)){H(this).autoGrow()}var ac=H(this).parents(".wc-form-wrapper");H(".wc-form-footer",ac).slideDown(700)});H(document).delegate(".wc-share-link","click",function(){var ac=H(this).parents(".wc-comment-right");H(".share_buttons_box",ac).slideToggle(1000)});H(document).delegate(".wpdiscuz-nofollow,.wc_captcha_refresh_img,.wc-toggle,.wc-load-more-link","click",function(ac){ac.preventDefault()});H(document).delegate(".wc-toggle","click",function(){var ad=p(H(this),0);var ac=H(this);H("#wc-comm-"+ad+"> .wc-reply").slideToggle(700,function(){if(H(this).is(":hidden")){ac.html(wpdiscuz_ajax_obj.wpdiscuz_options.wc_show_replies_text+" &or;")}else{ac.html(wpdiscuz_ajax_obj.wpdiscuz_options.wc_hide_replies_text+" &and;")}})});H(document).delegate(".wc-new-loaded-comment","mouseenter",function(){if(H(this).hasClass("wc-reply")){H(">.wc-comment-right",this).css("backgroundColor",wpdiscuz_ajax_obj.wpdiscuz_options.wc_reply_bg_color)}else{H(">.wc-comment-right",this).css("backgroundColor",wpdiscuz_ajax_obj.wpdiscuz_options.wc_comment_bg_color)}});H(document).delegate(".wc_captcha_refresh_img","click",function(){T(H(this))});function T(al){if(!n&&(t||U)){var ad=al.parents(".wc-form-wrapper");var af=H(".wpdiscuz-cnonce",ad);if(B){var ae=g();var am=H(al).prev().children(".wc_captcha_img");var ac=am.attr("src");var ai=ac.substring(0,ac.indexOf("=")+1);am.attr("src",ai+ae+"&r="+Math.random());af.attr("id",ae);af.attr("value",ae)}else{var aj=ad.hasClass("wc-secondary-form-wrapper")?0:1;var ah=p(al,aj);var ag="uniqueId="+ah;var ak=d("generateCaptcha",ag);ak.done(function(ao){try{var at=H.parseJSON(ao);if(at.code==1){var aq=H(al).prev().children(".wc_captcha_img");var au=aq.attr("src");var an=au.lastIndexOf("/")+1;var ap=au.substring(0,an)+at.message;aq.attr("src",ap);af.attr("id",at.key);af.attr("value",at.key)}}catch(ar){console.log(ar)}H(".wpdiscuz-loading-bar").hide()})}}}function g(){var ac="123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";var ad="c";for(i=0;i<13;i++){ad+=ac[Math.floor(Math.random()*(ac.length-1)+1)]}return ad}H(document).delegate(".wc_comm_submit","click",function(){var ag=1;var ad=H(this).parents("form");if(!ad.hasClass("wc_main_comm_form")){ag=G(H(this).parents(".wc-comment"))}if(!wpdiscuz_ajax_obj.wpdiscuz_options.is_email_field_required&&H(".wc_email",ad).val()){H(".wc_email",ad).attr("required","required")}if(!wpdiscuz_ajax_obj.wpdiscuz_options.is_email_field_required&&!(H(".wc_email",ad).val())){H(".wc_email",ad).removeAttr("required");H(".wc_email",ad).next(".alert").html("")}if(wpdiscuzValidator.checkAll(ad)){var ac=ad.serialize()+"&wc_comment_depth="+ag;if(!n&&(t||U)&&!B){var ae=H(".wc_captcha_img",ad);var af=ae.attr("src");var ai=af.lastIndexOf("/")+1;var ah=af.substring(ai);ac+="&fileName="+ah}if(H.cookie("wc_author_name")&&!H(".wc_name",ad).val()){ac+="&wc_name="+H.cookie("wc_author_name")}if(H.cookie("wc_author_email")&&!H(".wc_email",ad).val()){ac+="&wc_email="+H.cookie("wc_author_email")}if(wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs){ac+="&wpdiscuz_zs="+wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs}d("addComment",ac).done(function(ak){var al="";var am="";try{var ao=H.parseJSON(ak);al=ao.code;if(parseInt(al)>=0){var aj=ao.is_main;am=ao.message;H(".wc_header_text_count").html(ao.wc_all_comments_count_new);if(aj){H(".wc-thread-wrapper").prepend(am)}else{H("#wc-secondary-form-wrapper-"+al).slideToggle(700);if(ao.is_in_same_container==1){H("#wc-secondary-form-wrapper-"+al).after(am)}else{H("#wc-secondary-form-wrapper-"+al).after(am.replace("wc-reply","wc-reply wc-no-left-margin"))}}r(ao);Y(ao);w(ad,ao);ad.get(0).reset();e();f();H(".wc_comment",ad).css("height","45.6px")}else{am=wpdiscuz_ajax_obj.wpdiscuz_options[al];v(ad,al,am,true)}}catch(an){if(ak.indexOf("<")>=0&&ak.indexOf(">")>=0){am=an}else{am=ak}v(ad,"wc_invalid_field",am,true)}I();H(".wpdiscuz-loading-bar").hide()})}T(H(".wc_captcha_refresh_img",ad));P()});function r(ae){if(!ae.held_moderate){var ad="comment_id="+ae.new_comment_id+"&email="+ae.user_email+"&isParent="+ae.is_main;var ac=d("checkNotificationType",ad);ac.done(function(af){try{ae=H.parseJSON(af)}catch(ag){console.log(ag)}})}}function Y(ae){if(ae.redirect>0&&ae.new_comment_id){var ad="commentId="+ae.new_comment_id;var ac=d("redirect",ad);ac.done(function(af){ae=H.parseJSON(af);if(ae.code==1){setTimeout(function(){window.location.href=ae.redirect_to},5000)}})}}function e(){if(H.cookie("wc_author_name")&&H.cookie("wc_author_name").indexOf("Anonymous")<0){H(".wc_comm_form .wc_name").val(H.cookie("wc_author_name"))}if(H.cookie("wc_author_email")&&H.cookie("wc_author_email").indexOf("@example.com")<0){H(".wc_comm_form .wc_email").val(H.cookie("wc_author_email"))}if(H.cookie("wc_author_website")){H(".wc_comm_form .wc_website").val(H.cookie("wc_author_website"))}}function w(ae,af){var ad="";var ac="";if(H(".wc_email",ae).val()){ad=H(".wc_email",ae).val()}else{ad=af.user_email}if(H(".wc_name",ae).val()){ac=H(".wc_name",ae).val()}else{ac=af.user_name}console.log(D);if(D==null){H.cookie("wc_author_email",ad);H.cookie("wc_author_name",ac);H.cookie("wc_author_website",H(".wc_website",ae).val())}else{D=parseInt(D);H.cookie("wc_author_email",ad,{expires:D,path:"/"});H.cookie("wc_author_name",ac,{expires:D,path:"/"});H.cookie("wc_author_website",H(".wc_website",ae).val(),{expires:D,path:"/"})}}var X;H(document).delegate(".wc_editable_comment","click",function(){var af=p(H(this),0);var ac=aa(af);var ae=H(this);var ad="commentId="+ac;X=H("#wc-comm-"+af+" .wc-comment-text").html();d("editComment",ad).done(function(ah){try{var al=H.parseJSON(ah);var aj="";var ai=al.code;if(parseInt(ai)>=0){var ag='<textarea required="required" name="wc_comment" class="wc_comment wc_field_input wc_edit_comment" id="wc_edit_comment-'+af+'" style="min-height: 2em;">'+al.message+"</textarea>";H("#wc-comm-"+af+" > .wc-comment-right .wc-comment-text").replaceWith(ag);document.getElementById("wc_edit_comment-"+af).focus();H("#wc-comm-"+af+" > .wc-comment-right .wc-comment-footer .wc_save_edited_comment").show();ag="";H("#wc-comm-"+af+" > .wc-comment-right .wc-comment-footer .wc_editable_comment").hide();H("#wc-comm-"+af+" > .wc-comment-right .wc-comment-footer .wc_cancel_edit").show()}else{aj=wpdiscuz_ajax_obj.wpdiscuz_options[ai];v(ae,ai,aj,false)}}catch(ak){console.log(ak)}H(".wpdiscuz-loading-bar").hide()})});H(document).delegate(".wc_save_edited_comment","click",function(){var ah=p(H(this));var ad=aa(ah);var ac=H("#wc-comm-"+ah+" textarea#wc_edit_comment-"+ah);var ae=ac.val();var ag=H(this);if(H.trim(ae).length>0){var af="commentId="+ad+"&commentContent="+ae;d("saveEditedComment",af).done(function(ai){try{var am=H.parseJSON(ai);var aj=am.code;var ak="";if(parseInt(aj)>=0){M(ah,am.message)}else{ak=wpdiscuz_ajax_obj.wpdiscuz_options[aj];v(ag,aj,ak,false)}ac="";ae=""}catch(al){console.log(al)}H(".wpdiscuz-loading-bar").hide()})}});H(document).delegate(".wc_cancel_edit","click",function(){var ac=p(H(this));M(ac,X)});function M(ae,ad){H("#wc-comm-"+ae+" > .wc-comment-right .wc-comment-footer .wc_editable_comment").show();H("#wc-comm-"+ae+" > .wc-comment-right .wc-comment-footer .wc_cancel_edit").hide();H("#wc-comm-"+ae+" > .wc-comment-right .wc-comment-footer .wc_save_edited_comment").hide();var ac='<div class="wc-comment-text">'+m(ad)+"</div>";H("#wc-comm-"+ae+" #wc_edit_comment-"+ae).replaceWith(ac)}function m(af,ae){var ad=(ae||typeof ae==="undefined")?"<br/>":"<br>";var ac=(af+"").replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,"$1"+ad+"$2");return ac.replace("<br><br>","<br/>")}H(document).delegate(".wc-load-more-submit","click",function(){K()});var s=H("#wpdiscuzHasMoreComments").val();var J=false;if(F==2&&!Z){H(".wc-load-more-submit").parents(".wpdiscuz-comment-pagination").hide();H(window).scroll(function(){var ac=document.getElementById("wcThreadWrapper").scrollHeight;if(H(window).scrollTop()>=ac&&J===false&&s==1){J=true;K()}})}function K(){var ac;ac="offset="+b+"&orderBy="+o+"&order="+a+"&lastParentId="+y();b++;d("loadMoreComments",ac).done(function(ad){try{var af=H.parseJSON(ad);H(".wpdiscuz-comment-pagination").before(af.comment_list);u(af);H(".wpdiscuz_single").remove();J=false;f()}catch(ae){console.log(ae)}I();H(".wpdiscuz-loading-bar").hide();H(".wc-load-more-submit").blur()})}function u(ad){var ac=0;if(ad.is_show_load_more==false){ac=0;s=0;H(".wc-load-more-submit").parents(".wpdiscuz-comment-pagination").hide()}else{S(ad.last_parent_id);s=1;ac=1}H("#wpdiscuzHasMoreComments").val(ac)}H(document).delegate(".wc_vote","click",function(){var ac=H(this);var af="";var ag="";var ad=H(this).parents(".wc-comment-right").attr("id");ad=ad.substring(ad.lastIndexOf("-")+1);var ae;if(H(this).hasClass("wc-up")){ae=1}else{ae=-1}var ah="commentId="+ad+"&voteType="+ae;d("voteOnComment",ah).done(function(ai){try{var ak=H.parseJSON(ai);af=ak.code;if(parseInt(af)>=0){var al=H(".wc-comment-footer .wc-vote-result",H("#comment-"+ad));H(al).text(parseInt(H(al).text())+ae)}else{ag=wpdiscuz_ajax_obj.wpdiscuz_options[af];v(ac,af,ag,false)}}catch(aj){console.log(aj)}H(".wpdiscuz-loading-bar").hide()})});H(document).delegate(".wpdiscuz-sort-button","click",function(){s=H("#wpdiscuzHasMoreComments").val();if(!(H(this).hasClass("wpdiscuz-sort-button-active"))){var af=H(this);if(H(this).hasClass("wpdiscuz-vote-sort-up")){o="by_vote";a="desc"}else{o="comment_date_gmt";a=H(this).hasClass("wpdiscuz-date-sort-desc")?"desc":"asc"}var ae="orderBy="+o+"&order="+a;var ac="";var ad="";d("wpdiscuzSorting",ae).done(function(ag){try{var ai=H.parseJSON(ag);ac=ai.code;ad=ai.message;if(parseInt(ac)>0){H("#wpcomm .wc-thread-wrapper .wc-comment").each(function(){H(this).remove()});H("#wpcomm .wc-thread-wrapper").prepend(ad);b=parseInt(ai.loadCount)}else{}O(af);u(ai)}catch(ah){console.log(ah)}f();I();H(".wpdiscuz-loading-bar").hide()})}});function O(ac){H(".wpdiscuz-sort-buttons .wpdiscuz-sort-button").each(function(){H(this).removeClass("wpdiscuz-sort-button-active")});ac.addClass("wpdiscuz-sort-button-active")}function ab(){var ag=location.href;var af=ag.match(/#comment\-(\d+)/);if(af!==null){var ad=af[1];if(!H("#comment-"+ad).length){var ae="commentId="+ad;var ac=d("getSingleComment",ae);ac.done(function(ah){try{var aj=H.parseJSON(ah);H(".wc-thread-wrapper").prepend(aj.message);H("html, body").animate({scrollTop:H(".wc-thread-wrapper").offset().top},1000)}catch(ai){console.log(ai)}I();H(".wpdiscuz-loading-bar").hide()})}}}ab();if(l>0&&W&&(V||(!V&&!A))){setInterval(R,parseInt(k)*1000)}function R(){var af=E();var ad=(H.cookie("wc_author_email")!=undefined&&H.cookie("wc_author_email")!="")?H.cookie("wc_author_email"):"";var ae="loadLastCommentId="+W+"&visibleCommentIds="+af+"&email="+ad;var ac=d("liveUpdate",ae);ac.done(function(ah){try{var am=H.parseJSON(ah);if(am.code==1){if(l==1){C(am)}else{x=x.concat(am.message.comments);Q=Q.concat(am.message.author_replies);var ai=x.length;var ag=Q.length;if(ai>0){var ak=ai+" ";ak+=ai>1?wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_comments_button_text:wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_comment_button_text;H(".wc_new_comment").html(ak).show()}else{H(".wc_new_comment").hide()}if(ag>0){var aj=ag+" ";aj+=ag>1?wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_replies_button_text:wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_reply_button_text;H(".wc_new_reply").html(aj).show()}else{H(".wc_new_reply").hide()}}H(".wc_header_text_count").html(am.wc_all_comments_count_new);W=am.loadLastCommentId}}catch(al){console.log(al)}I();H(".wpdiscuz-loading-bar").hide()})}function C(af){if(af.message!==undefined){var ac;var ae=af.message;for(var ad=0;ad<ae.length;ad++){ac=ae[ad];z(ac.comment_parent,ac.comment_html)}f()}}H(document).delegate(".wc-update-on-click","click",function(){var ac;var ad=H(this);if(ad.hasClass("wc_new_comment")){ac="newCommentIds="+x.join()}else{ac="newCommentIds="+Q.join()}d("updateOnClick",ac).done(function(ae){try{var ag=H.parseJSON(ae);C(ag);if(ad.hasClass("wc_new_comment")){x=[];H(".wc_new_comment").hide()}else{Q=[];H(".wc_new_reply").hide()}}catch(af){console.log(af)}I();H(".wpdiscuz-loading-bar").hide()})});H(document).delegate(".wpdiscuz-readmore","click",function(){var ae=p(H(this));var ac=aa(ae);var ad="commentId="+ac;d("readMore",ad).done(function(af){try{var ah=H.parseJSON(af);if(ah.code){H("#comment-"+ac+" > .wc-comment-text").html(" "+ah.message);H("#wpdiscuz-readmore-"+ae).remove()}}catch(ag){console.log(ag)}H(".wpdiscuz-loading-bar").hide()})});function v(ag,ad,af,ae){var ac;var ah;if(ae){ah=ag.parents(".wc-form-wrapper")}else{ah=ag.closest(".wc-comment")}ac=ah.children(".wpdiscuz-comment-message");ac.addClass(ad);ac.html(af);ac.show().delay(4000).fadeOut(1000,function(){ac.removeClass();ac.addClass("wpdiscuz-comment-message");ac.html("")})}function j(ad){var ae=p(ad,0);H("#wpdiscuz_form_anchor-"+ae).before(N(ae));var ac=H("#wc-secondary-form-wrapper-"+ae);ac.slideToggle(700,function(){ad.addClass("wpdiscuz-clonned")});T(H(".wc_captcha_refresh_img",ac))}function N(ad){var ac=H("#wpdiscuz_hidden_secondary_form").html();return ac.replace(/wpdiscuzuniqueid/g,ad)}function p(ae,ad){var ac="";if(ad){ac=ae.parents(".wc-main-form-wrapper").attr("id")}else{ac=ae.parents(".wc-comment").attr("id")}var af=ac.substring(ac.lastIndexOf("-")+1);return af}function aa(ac){return ac.substring(0,ac.indexOf("_"))}function y(){var ac=H(".wc-load-more-link").attr("href");return ac.substring(ac.lastIndexOf("=")+1)}function S(ac){var ad=H(".wc-load-more-link").attr("href");H(".wc-load-more-link").attr("href",ad.replace(/[\d]+$/m,ac));if(F!=2){H(".wpdiscuz-comment-pagination").show()}}function G(ae){var ad=ae.attr("class");var ac=ad.split(" ");var af="";H.each(ac,function(ag,ah){if("wc_comment_level"===c(ah,false)){af=c(ah,true)}});return parseInt(af)+1}function c(ac,ad){var ae="";if(ad){ae=ac.substring(ac.indexOf("-")+1)}else{ae=ac.substring(0,ac.indexOf("-"))}return ae}function z(ae,ad){if(ae==0){H(".wc-thread-wrapper").prepend(ad)}else{var ac=p(H("#comment-"+ae),0);H("#wpdiscuz_form_anchor-"+ac).after(ad)}}function E(){var ae;var ac;var ad="";H(".wc-comment-right").each(function(){ae=p(H(this),0);ac=aa(ae);ad+=ac+","});return ad}function I(){H(".wc-comment-img-link").tooltipster({trigger:"click",contentAsHTML:true,interactive:true,multiple:true});H(".wc_tooltipster").tooltipster({offsetY:2,multiple:true})}function h(){if(H(".wc_social_plugin_wrapper .wp-social-login-provider-list").length){H(".wc_social_plugin_wrapper .wp-social-login-provider-list").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(H(".wc_social_plugin_wrapper .the_champ_login_container").length){H(".wc_social_plugin_wrapper .the_champ_login_container").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(H(".wc_social_plugin_wrapper .social_connect_form").length){H(".wc_social_plugin_wrapper .social_connect_form").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(H(".wc_social_plugin_wrapper .oneall_social_login_providers").length){H(".wc_social_plugin_wrapper .oneall_social_login .oneall_social_login_providers").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}}}}}function f(){H("#wcThreadWrapper .wc-comment").each(function(ac){if(H("> .wc-reply",this).length){H("> .wc-comment-right .wc-comment-footer .wc-toggle",this).removeClass("wpdiscuz-hidden")}})}function d(ad,ac){if(ad!=="liveUpdate"){H(".wpdiscuz-loading-bar").show()}ac+="&postId="+q;return H.ajax({type:"POST",url:wpdiscuz_ajax_obj.url,data:{wpdiscuzAjaxData:ac,action:ad}})}function P(){H(".wpdiscuz_reset").val("")}});
assets/{js → third-party/autogrow}/jquery.autogrowtextarea.min.js RENAMED
File without changes
assets/third-party/contenthover/jquery.contenthover.min.js ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * ContentHover jQuery plugin v0.1
3
+ * http://www.backslash.gr/demos/contenthover-jquery-plugin/
4
+ *
5
+ * Copyright 2011 by Nikos Tsaganos
6
+ * http://www.backslash.gr/
7
+ */
8
+ (function($){var methods={init:function(options){var defaults={data_selector:'.contenthover',width:0,height:0,overlay_width:0,overlay_height:0,overlay_x_position:'center',overlay_y_position:'bottom',overlay_background:'',overlay_opacity:1,effect:'fade',fade_speed:400,slide_speed:400,slide_direction:'bottom',zindex:2,wrapper_class:'ch_wrapper',normal_class:'ch_normal',hover_class:'ch_hover',onshow:function(){},onhide:function(){}},settings=$.extend({},defaults,options);return this.each(function(){var $this=$(this),w=$this.width()?$this.width():settings.width,h=$this.height()?$this.height():settings.height,overlay_w=settings.overlay_width?settings.overlay_width:w,overlay_h=settings.overlay_height?settings.overlay_height:h,$data=$this.next(settings.data_selector);if($data.length){$data.hide();var $ch_wrapper=$('<div>').addClass('ch_element').addClass(settings.wrapper_class).css({'width':w,'height':h,'position':'relative','overflow':'hidden'}).insertAfter($this);var $ch_normal=$('<div>').addClass(settings.normal_class).css({'width':w,'height':h,'position':'absolute','z-index':settings.zindex}).appendTo($ch_wrapper);$this.clone().appendTo($ch_normal);$this.hide();var $ch_hover=$('<div>').addClass(settings.hover_class).css({'width':overlay_w,'height':overlay_h,'position':'absolute','z-index':settings.zindex-1}).appendTo($ch_wrapper);$data.clone().show().appendTo($ch_hover);var ch_hover_css={};if(settings.overlay_background){ch_hover_css.background=settings.overlay_background;}
9
+ if(settings.overlay_opacity<1){ch_hover_css.opacity=settings.overlay_opacity;}
10
+ if(settings.overlay_x_position=='left'){ch_hover_css.left=0;}else if(settings.overlay_x_position=='right'){ch_hover_css.left=(w-overlay_w)+'px';}else{ch_hover_css.left=(w/2-overlay_w/2)+'px';}
11
+ if(settings.overlay_y_position=='top'){ch_hover_css.top=0;}else if(settings.overlay_y_position=='bottom'){ch_hover_css.top=(h-overlay_h)+'px';}else{ch_hover_css.top=(h/2-overlay_h/2)+'px';}
12
+ $ch_hover.css(ch_hover_css);if(settings.effect=='slide'){var initial_css={};if(settings.slide_direction=='top'){initial_css={top:('-'+overlay_h+'px')};}
13
+ if(settings.slide_direction=='bottom'){initial_css={top:h+'px'};}
14
+ if(settings.slide_direction=='left'){initial_css={left:('-'+overlay_w+'px')};}
15
+ if(settings.slide_direction=='right'){initial_css={left:w+'px'};}
16
+ $ch_hover.css('z-index',settings.zindex+1).css(initial_css);$ch_wrapper.hover(function(){$ch_hover.stop(true,true).animate({'top':ch_hover_css.top,'left':ch_hover_css.left},settings.slide_speed,settings.onshow());},function(){$ch_hover.stop(true,true).animate(initial_css,settings.slide_speed,settings.onhide());});}else if(settings.effect=='fade'){$ch_hover.css('z-index',settings.zindex+1).hide();$ch_wrapper.hover(function(){$ch_hover.stop(true,true).fadeIn(settings.fade_speed,settings.onshow());},function(){$ch_hover.stop(true,true).fadeOut(settings.fade_speed,settings.onhide());});}else{$ch_hover.css('z-index',settings.zindex+1).hide();$ch_wrapper.hover(function(){$ch_hover.show(0,settings.onshow());},function(){$ch_hover.hide(0,settings.onhide());});}}});},stop:function(){return this.each(function(){var $this=$(this),$data=$this.next('.ch_element');$this.show();$data.remove();$this.unbind('.contenthover');});},destroy:function(){return this.each(function(){$(this).show();$('.ch_element').remove();$(window).unbind('.contenthover');});}};$.fn.contenthover=function(method){if(methods[method]){return methods[method].apply(this,Array.prototype.slice.call(arguments,1));}else if(typeof method==='object'||!method){return methods.init.apply(this,arguments);}else{$.error('Method '+method+' does not exist in contentHover plugin.');}};})(jQuery);
assets/{js → third-party/cookie}/jquery.cookie.js RENAMED
File without changes
assets/{js → third-party/cookie}/jquery.cookie.min.js RENAMED
File without changes
assets/third-party/jquery-ui/index.html DELETED
File without changes
assets/third-party/jquery-ui/jquery-ui.min.js DELETED
@@ -1,423 +0,0 @@
1
- /*! jQuery UI - v1.11.2 - 2014-10-16
2
- * http://jqueryui.com
3
- * Includes: core.js, widget.js, mouse.js, position.js, accordion.js, autocomplete.js, button.js, datepicker.js, dialog.js, draggable.js, droppable.js, effect.js, effect-blind.js, effect-bounce.js, effect-clip.js, effect-drop.js, effect-explode.js, effect-fade.js, effect-fold.js, effect-highlight.js, effect-puff.js, effect-pulsate.js, effect-scale.js, effect-shake.js, effect-size.js, effect-slide.js, effect-transfer.js, menu.js, progressbar.js, resizable.js, selectable.js, selectmenu.js, slider.js, sortable.js, spinner.js, tabs.js, tooltip.js
4
- * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
5
- (function(a){if(typeof define==="function"&&define.amd){define(["jquery"],a)}else{a(jQuery)}}(function(I){
6
- /*!
7
- * jQuery UI Core 1.11.2
8
- * http://jqueryui.com
9
- *
10
- * Copyright 2014 jQuery Foundation and other contributors
11
- * Released under the MIT license.
12
- * http://jquery.org/license
13
- *
14
- * http://api.jqueryui.com/category/ui-core/
15
- */
16
- I.ui=I.ui||{};I.extend(I.ui,{version:"1.11.2",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}});I.fn.extend({scrollParent:function(ag){var af=this.css("position"),ae=af==="absolute",ah=ag?/(auto|scroll|hidden)/:/(auto|scroll)/,ai=this.parents().filter(function(){var aj=I(this);if(ae&&aj.css("position")==="static"){return false}return ah.test(aj.css("overflow")+aj.css("overflow-y")+aj.css("overflow-x"))}).eq(0);return af==="fixed"||!ai.length?I(this[0].ownerDocument||document):ai},uniqueId:(function(){var ae=0;return function(){return this.each(function(){if(!this.id){this.id="ui-id-"+(++ae)}})}})(),removeUniqueId:function(){return this.each(function(){if(/^ui-id-\d+$/.test(this.id)){I(this).removeAttr("id")}})}});function v(ag,ae){var ai,ah,af,aj=ag.nodeName.toLowerCase();if("area"===aj){ai=ag.parentNode;ah=ai.name;if(!ag.href||!ah||ai.nodeName.toLowerCase()!=="map"){return false}af=I("img[usemap='#"+ah+"']")[0];return !!af&&w(af)}return(/input|select|textarea|button|object/.test(aj)?!ag.disabled:"a"===aj?ag.href||ae:ae)&&w(ag)}function w(ae){return I.expr.filters.visible(ae)&&!I(ae).parents().addBack().filter(function(){return I.css(this,"visibility")==="hidden"}).length}I.extend(I.expr[":"],{data:I.expr.createPseudo?I.expr.createPseudo(function(ae){return function(af){return !!I.data(af,ae)}}):function(ag,af,ae){return !!I.data(ag,ae[3])},focusable:function(ae){return v(ae,!isNaN(I.attr(ae,"tabindex")))},tabbable:function(ag){var ae=I.attr(ag,"tabindex"),af=isNaN(ae);return(af||ae>=0)&&v(ag,!af)}});if(!I("<a>").outerWidth(1).jquery){I.each(["Width","Height"],function(ag,ae){var af=ae==="Width"?["Left","Right"]:["Top","Bottom"],ah=ae.toLowerCase(),aj={innerWidth:I.fn.innerWidth,innerHeight:I.fn.innerHeight,outerWidth:I.fn.outerWidth,outerHeight:I.fn.outerHeight};function ai(am,al,ak,an){I.each(af,function(){al-=parseFloat(I.css(am,"padding"+this))||0;if(ak){al-=parseFloat(I.css(am,"border"+this+"Width"))||0}if(an){al-=parseFloat(I.css(am,"margin"+this))||0}});return al}I.fn["inner"+ae]=function(ak){if(ak===undefined){return aj["inner"+ae].call(this)}return this.each(function(){I(this).css(ah,ai(this,ak)+"px")})};I.fn["outer"+ae]=function(ak,al){if(typeof ak!=="number"){return aj["outer"+ae].call(this,ak)}return this.each(function(){I(this).css(ah,ai(this,ak,true,al)+"px")})}})}if(!I.fn.addBack){I.fn.addBack=function(ae){return this.add(ae==null?this.prevObject:this.prevObject.filter(ae))}}if(I("<a>").data("a-b","a").removeData("a-b").data("a-b")){I.fn.removeData=(function(ae){return function(af){if(arguments.length){return ae.call(this,I.camelCase(af))}else{return ae.call(this)}}})(I.fn.removeData)}I.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());I.fn.extend({focus:(function(ae){return function(af,ag){return typeof af==="number"?this.each(function(){var ah=this;setTimeout(function(){I(ah).focus();if(ag){ag.call(ah)}},af)}):ae.apply(this,arguments)}})(I.fn.focus),disableSelection:(function(){var ae="onselectstart" in document.createElement("div")?"selectstart":"mousedown";return function(){return this.bind(ae+".ui-disableSelection",function(af){af.preventDefault()})}})(),enableSelection:function(){return this.unbind(".ui-disableSelection")},zIndex:function(ah){if(ah!==undefined){return this.css("zIndex",ah)}if(this.length){var af=I(this[0]),ae,ag;while(af.length&&af[0]!==document){ae=af.css("position");if(ae==="absolute"||ae==="relative"||ae==="fixed"){ag=parseInt(af.css("zIndex"),10);if(!isNaN(ag)&&ag!==0){return ag}}af=af.parent()}}return 0}});I.ui.plugin={add:function(af,ag,ai){var ae,ah=I.ui[af].prototype;for(ae in ai){ah.plugins[ae]=ah.plugins[ae]||[];ah.plugins[ae].push([ag,ai[ae]])}},call:function(ae,ah,ag,af){var ai,aj=ae.plugins[ah];if(!aj){return}if(!af&&(!ae.element[0].parentNode||ae.element[0].parentNode.nodeType===11)){return}for(ai=0;ai<aj.length;ai++){if(ae.options[aj[ai][0]]){aj[ai][1].apply(ae.element,ag)}}}};
17
- /*!
18
- * jQuery UI Widget 1.11.2
19
- * http://jqueryui.com
20
- *
21
- * Copyright 2014 jQuery Foundation and other contributors
22
- * Released under the MIT license.
23
- * http://jquery.org/license
24
- *
25
- * http://api.jqueryui.com/jQuery.widget/
26
- */
27
- var O=0,i=Array.prototype.slice;I.cleanData=(function(ae){return function(af){var ah,ai,ag;for(ag=0;(ai=af[ag])!=null;ag++){try{ah=I._data(ai,"events");if(ah&&ah.remove){I(ai).triggerHandler("remove")}}catch(aj){}}ae(af)}})(I.cleanData);I.widget=function(ae,af,am){var aj,ak,ah,al,ag={},ai=ae.split(".")[0];ae=ae.split(".")[1];aj=ai+"-"+ae;if(!am){am=af;af=I.Widget}I.expr[":"][aj.toLowerCase()]=function(an){return !!I.data(an,aj)};I[ai]=I[ai]||{};ak=I[ai][ae];ah=I[ai][ae]=function(an,ao){if(!this._createWidget){return new ah(an,ao)}if(arguments.length){this._createWidget(an,ao)}};I.extend(ah,ak,{version:am.version,_proto:I.extend({},am),_childConstructors:[]});al=new af();al.options=I.widget.extend({},al.options);I.each(am,function(ao,an){if(!I.isFunction(an)){ag[ao]=an;return}ag[ao]=(function(){var ap=function(){return af.prototype[ao].apply(this,arguments)},aq=function(ar){return af.prototype[ao].apply(this,ar)};return function(){var au=this._super,ar=this._superApply,at;this._super=ap;this._superApply=aq;at=an.apply(this,arguments);this._super=au;this._superApply=ar;return at}})()});ah.prototype=I.widget.extend(al,{widgetEventPrefix:ak?(al.widgetEventPrefix||ae):ae},ag,{constructor:ah,namespace:ai,widgetName:ae,widgetFullName:aj});if(ak){I.each(ak._childConstructors,function(ao,ap){var an=ap.prototype;I.widget(an.namespace+"."+an.widgetName,ah,ap._proto)});delete ak._childConstructors}else{af._childConstructors.push(ah)}I.widget.bridge(ae,ah);return ah};I.widget.extend=function(aj){var af=i.call(arguments,1),ai=0,ae=af.length,ag,ah;for(;ai<ae;ai++){for(ag in af[ai]){ah=af[ai][ag];if(af[ai].hasOwnProperty(ag)&&ah!==undefined){if(I.isPlainObject(ah)){aj[ag]=I.isPlainObject(aj[ag])?I.widget.extend({},aj[ag],ah):I.widget.extend({},ah)}else{aj[ag]=ah}}}}return aj};I.widget.bridge=function(af,ae){var ag=ae.prototype.widgetFullName||af;I.fn[af]=function(aj){var ah=typeof aj==="string",ai=i.call(arguments,1),ak=this;aj=!ah&&ai.length?I.widget.extend.apply(null,[aj].concat(ai)):aj;if(ah){this.each(function(){var am,al=I.data(this,ag);if(aj==="instance"){ak=al;return false}if(!al){return I.error("cannot call methods on "+af+" prior to initialization; attempted to call method '"+aj+"'")}if(!I.isFunction(al[aj])||aj.charAt(0)==="_"){return I.error("no such method '"+aj+"' for "+af+" widget instance")}am=al[aj].apply(al,ai);if(am!==al&&am!==undefined){ak=am&&am.jquery?ak.pushStack(am.get()):am;return false}})}else{this.each(function(){var al=I.data(this,ag);if(al){al.option(aj||{});if(al._init){al._init()}}else{I.data(this,ag,new ae(aj,this))}})}return ak}};I.Widget=function(){};I.Widget._childConstructors=[];I.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:false,create:null},_createWidget:function(ae,af){af=I(af||this.defaultElement||this)[0];this.element=I(af);this.uuid=O++;this.eventNamespace="."+this.widgetName+this.uuid;this.bindings=I();this.hoverable=I();this.focusable=I();if(af!==this){I.data(af,this.widgetFullName,this);this._on(true,this.element,{remove:function(ag){if(ag.target===af){this.destroy()}}});this.document=I(af.style?af.ownerDocument:af.document||af);this.window=I(this.document[0].defaultView||this.document[0].parentWindow)}this.options=I.widget.extend({},this.options,this._getCreateOptions(),ae);this._create();this._trigger("create",null,this._getCreateEventData());this._init()},_getCreateOptions:I.noop,_getCreateEventData:I.noop,_create:I.noop,_init:I.noop,destroy:function(){this._destroy();this.element.unbind(this.eventNamespace).removeData(this.widgetFullName).removeData(I.camelCase(this.widgetFullName));this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled ui-state-disabled");this.bindings.unbind(this.eventNamespace);this.hoverable.removeClass("ui-state-hover");this.focusable.removeClass("ui-state-focus")},_destroy:I.noop,widget:function(){return this.element},option:function(ah,ai){var ae=ah,aj,ag,af;if(arguments.length===0){return I.widget.extend({},this.options)}if(typeof ah==="string"){ae={};aj=ah.split(".");ah=aj.shift();if(aj.length){ag=ae[ah]=I.widget.extend({},this.options[ah]);for(af=0;af<aj.length-1;af++){ag[aj[af]]=ag[aj[af]]||{};ag=ag[aj[af]]}ah=aj.pop();if(arguments.length===1){return ag[ah]===undefined?null:ag[ah]}ag[ah]=ai}else{if(arguments.length===1){return this.options[ah]===undefined?null:this.options[ah]}ae[ah]=ai}}this._setOptions(ae);return this},_setOptions:function(ae){var af;for(af in ae){this._setOption(af,ae[af])}return this},_setOption:function(ae,af){this.options[ae]=af;if(ae==="disabled"){this.widget().toggleClass(this.widgetFullName+"-disabled",!!af);if(af){this.hoverable.removeClass("ui-state-hover");this.focusable.removeClass("ui-state-focus")}}return this},enable:function(){return this._setOptions({disabled:false})},disable:function(){return this._setOptions({disabled:true})},_on:function(ah,ag,af){var ai,ae=this;if(typeof ah!=="boolean"){af=ag;ag=ah;ah=false}if(!af){af=ag;ag=this.element;ai=this.widget()}else{ag=ai=I(ag);this.bindings=this.bindings.add(ag)}I.each(af,function(ao,an){function al(){if(!ah&&(ae.options.disabled===true||I(this).hasClass("ui-state-disabled"))){return}return(typeof an==="string"?ae[an]:an).apply(ae,arguments)}if(typeof an!=="string"){al.guid=an.guid=an.guid||al.guid||I.guid++}var am=ao.match(/^([\w:-]*)\s*(.*)$/),ak=am[1]+ae.eventNamespace,aj=am[2];if(aj){ai.delegate(aj,ak,al)}else{ag.bind(ak,al)}})},_off:function(af,ae){ae=(ae||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace;af.unbind(ae).undelegate(ae);this.bindings=I(this.bindings.not(af).get());this.focusable=I(this.focusable.not(af).get());this.hoverable=I(this.hoverable.not(af).get())},_delay:function(ah,ag){function af(){return(typeof ah==="string"?ae[ah]:ah).apply(ae,arguments)}var ae=this;return setTimeout(af,ag||0)},_hoverable:function(ae){this.hoverable=this.hoverable.add(ae);this._on(ae,{mouseenter:function(af){I(af.currentTarget).addClass("ui-state-hover")},mouseleave:function(af){I(af.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(ae){this.focusable=this.focusable.add(ae);this._on(ae,{focusin:function(af){I(af.currentTarget).addClass("ui-state-focus")},focusout:function(af){I(af.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(ae,af,ag){var aj,ai,ah=this.options[ae];ag=ag||{};af=I.Event(af);af.type=(ae===this.widgetEventPrefix?ae:this.widgetEventPrefix+ae).toLowerCase();af.target=this.element[0];ai=af.originalEvent;if(ai){for(aj in ai){if(!(aj in af)){af[aj]=ai[aj]}}}this.element.trigger(af,ag);return !(I.isFunction(ah)&&ah.apply(this.element[0],[af].concat(ag))===false||af.isDefaultPrevented())}};I.each({show:"fadeIn",hide:"fadeOut"},function(af,ae){I.Widget.prototype["_"+af]=function(ai,ah,ak){if(typeof ah==="string"){ah={effect:ah}}var aj,ag=!ah?af:ah===true||typeof ah==="number"?ae:ah.effect||ae;ah=ah||{};if(typeof ah==="number"){ah={duration:ah}}aj=!I.isEmptyObject(ah);ah.complete=ak;if(ah.delay){ai.delay(ah.delay)}if(aj&&I.effects&&I.effects.effect[ag]){ai[af](ah)}else{if(ag!==af&&ai[ag]){ai[ag](ah.duration,ah.easing,ak)}else{ai.queue(function(al){I(this)[af]();if(ak){ak.call(ai[0])}al()})}}}});var J=I.widget;
28
- /*!
29
- * jQuery UI Mouse 1.11.2
30
- * http://jqueryui.com
31
- *
32
- * Copyright 2014 jQuery Foundation and other contributors
33
- * Released under the MIT license.
34
- * http://jquery.org/license
35
- *
36
- * http://api.jqueryui.com/mouse/
37
- */
38
- var b=false;I(document).mouseup(function(){b=false});var G=I.widget("ui.mouse",{version:"1.11.2",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var ae=this;this.element.bind("mousedown."+this.widgetName,function(af){return ae._mouseDown(af)}).bind("click."+this.widgetName,function(af){if(true===I.data(af.target,ae.widgetName+".preventClickEvent")){I.removeData(af.target,ae.widgetName+".preventClickEvent");af.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName);if(this._mouseMoveDelegate){this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)}},_mouseDown:function(ag){if(b){return}this._mouseMoved=false;(this._mouseStarted&&this._mouseUp(ag));this._mouseDownEvent=ag;var af=this,ah=(ag.which===1),ae=(typeof this.options.cancel==="string"&&ag.target.nodeName?I(ag.target).closest(this.options.cancel).length:false);if(!ah||ae||!this._mouseCapture(ag)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){af.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(ag)&&this._mouseDelayMet(ag)){this._mouseStarted=(this._mouseStart(ag)!==false);if(!this._mouseStarted){ag.preventDefault();return true}}if(true===I.data(ag.target,this.widgetName+".preventClickEvent")){I.removeData(ag.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(ai){return af._mouseMove(ai)};this._mouseUpDelegate=function(ai){return af._mouseUp(ai)};this.document.bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);ag.preventDefault();b=true;return true},_mouseMove:function(ae){if(this._mouseMoved){if(I.ui.ie&&(!document.documentMode||document.documentMode<9)&&!ae.button){return this._mouseUp(ae)}else{if(!ae.which){return this._mouseUp(ae)}}}if(ae.which||ae.button){this._mouseMoved=true}if(this._mouseStarted){this._mouseDrag(ae);return ae.preventDefault()}if(this._mouseDistanceMet(ae)&&this._mouseDelayMet(ae)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,ae)!==false);(this._mouseStarted?this._mouseDrag(ae):this._mouseUp(ae))}return !this._mouseStarted},_mouseUp:function(ae){this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(ae.target===this._mouseDownEvent.target){I.data(ae.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(ae)}b=false;return false},_mouseDistanceMet:function(ae){return(Math.max(Math.abs(this._mouseDownEvent.pageX-ae.pageX),Math.abs(this._mouseDownEvent.pageY-ae.pageY))>=this.options.distance)},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}});
39
- /*!
40
- * jQuery UI Position 1.11.2
41
- * http://jqueryui.com
42
- *
43
- * Copyright 2014 jQuery Foundation and other contributors
44
- * Released under the MIT license.
45
- * http://jquery.org/license
46
- *
47
- * http://api.jqueryui.com/position/
48
- */
49
- (function(){I.ui=I.ui||{};var al,ao,am=Math.max,ar=Math.abs,ap=Math.round,ag=/left|center|right/,aj=/top|center|bottom/,ae=/[\+\-]\d+(\.[\d]+)?%?/,an=/^\w+/,af=/%$/,ai=I.fn.position;function aq(av,au,at){return[parseFloat(av[0])*(af.test(av[0])?au/100:1),parseFloat(av[1])*(af.test(av[1])?at/100:1)]}function ak(at,au){return parseInt(I.css(at,au),10)||0}function ah(au){var at=au[0];if(at.nodeType===9){return{width:au.width(),height:au.height(),offset:{top:0,left:0}}}if(I.isWindow(at)){return{width:au.width(),height:au.height(),offset:{top:au.scrollTop(),left:au.scrollLeft()}}}if(at.preventDefault){return{width:0,height:0,offset:{top:at.pageY,left:at.pageX}}}return{width:au.outerWidth(),height:au.outerHeight(),offset:au.offset()}}I.position={scrollbarWidth:function(){if(al!==undefined){return al}var au,at,aw=I("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),av=aw.children()[0];I("body").append(aw);au=av.offsetWidth;aw.css("overflow","scroll");at=av.offsetWidth;if(au===at){at=aw[0].clientWidth}aw.remove();return(al=au-at)},getScrollInfo:function(ax){var aw=ax.isWindow||ax.isDocument?"":ax.element.css("overflow-x"),av=ax.isWindow||ax.isDocument?"":ax.element.css("overflow-y"),au=aw==="scroll"||(aw==="auto"&&ax.width<ax.element[0].scrollWidth),at=av==="scroll"||(av==="auto"&&ax.height<ax.element[0].scrollHeight);return{width:at?I.position.scrollbarWidth():0,height:au?I.position.scrollbarWidth():0}},getWithinInfo:function(au){var av=I(au||window),at=I.isWindow(av[0]),aw=!!av[0]&&av[0].nodeType===9;return{element:av,isWindow:at,isDocument:aw,offset:av.offset()||{left:0,top:0},scrollLeft:av.scrollLeft(),scrollTop:av.scrollTop(),width:at||aw?av.width():av.outerWidth(),height:at||aw?av.height():av.outerHeight()}}};I.fn.position=function(aD){if(!aD||!aD.of){return ai.apply(this,arguments)}aD=I.extend({},aD);var aE,aA,ay,aC,ax,at,az=I(aD.of),aw=I.position.getWithinInfo(aD.within),au=I.position.getScrollInfo(aw),aB=(aD.collision||"flip").split(" "),av={};at=ah(az);if(az[0].preventDefault){aD.at="left top"}aA=at.width;ay=at.height;aC=at.offset;ax=I.extend({},aC);I.each(["my","at"],function(){var aH=(aD[this]||"").split(" "),aG,aF;if(aH.length===1){aH=ag.test(aH[0])?aH.concat(["center"]):aj.test(aH[0])?["center"].concat(aH):["center","center"]}aH[0]=ag.test(aH[0])?aH[0]:"center";aH[1]=aj.test(aH[1])?aH[1]:"center";aG=ae.exec(aH[0]);aF=ae.exec(aH[1]);av[this]=[aG?aG[0]:0,aF?aF[0]:0];aD[this]=[an.exec(aH[0])[0],an.exec(aH[1])[0]]});if(aB.length===1){aB[1]=aB[0]}if(aD.at[0]==="right"){ax.left+=aA}else{if(aD.at[0]==="center"){ax.left+=aA/2}}if(aD.at[1]==="bottom"){ax.top+=ay}else{if(aD.at[1]==="center"){ax.top+=ay/2}}aE=aq(av.at,aA,ay);ax.left+=aE[0];ax.top+=aE[1];return this.each(function(){var aG,aP,aI=I(this),aK=aI.outerWidth(),aH=aI.outerHeight(),aJ=ak(this,"marginLeft"),aF=ak(this,"marginTop"),aO=aK+aJ+ak(this,"marginRight")+au.width,aN=aH+aF+ak(this,"marginBottom")+au.height,aL=I.extend({},ax),aM=aq(av.my,aI.outerWidth(),aI.outerHeight());if(aD.my[0]==="right"){aL.left-=aK}else{if(aD.my[0]==="center"){aL.left-=aK/2}}if(aD.my[1]==="bottom"){aL.top-=aH}else{if(aD.my[1]==="center"){aL.top-=aH/2}}aL.left+=aM[0];aL.top+=aM[1];if(!ao){aL.left=ap(aL.left);aL.top=ap(aL.top)}aG={marginLeft:aJ,marginTop:aF};I.each(["left","top"],function(aR,aQ){if(I.ui.position[aB[aR]]){I.ui.position[aB[aR]][aQ](aL,{targetWidth:aA,targetHeight:ay,elemWidth:aK,elemHeight:aH,collisionPosition:aG,collisionWidth:aO,collisionHeight:aN,offset:[aE[0]+aM[0],aE[1]+aM[1]],my:aD.my,at:aD.at,within:aw,elem:aI})}});if(aD.using){aP=function(aT){var aV=aC.left-aL.left,aS=aV+aA-aK,aU=aC.top-aL.top,aR=aU+ay-aH,aQ={target:{element:az,left:aC.left,top:aC.top,width:aA,height:ay},element:{element:aI,left:aL.left,top:aL.top,width:aK,height:aH},horizontal:aS<0?"left":aV>0?"right":"center",vertical:aR<0?"top":aU>0?"bottom":"middle"};if(aA<aK&&ar(aV+aS)<aA){aQ.horizontal="center"}if(ay<aH&&ar(aU+aR)<ay){aQ.vertical="middle"}if(am(ar(aV),ar(aS))>am(ar(aU),ar(aR))){aQ.important="horizontal"}else{aQ.important="vertical"}aD.using.call(this,aT,aQ)}}aI.offset(I.extend(aL,{using:aP}))})};I.ui.position={fit:{left:function(ax,aw){var av=aw.within,az=av.isWindow?av.scrollLeft:av.offset.left,aB=av.width,ay=ax.left-aw.collisionPosition.marginLeft,aA=az-ay,au=ay+aw.collisionWidth-aB-az,at;if(aw.collisionWidth>aB){if(aA>0&&au<=0){at=ax.left+aA+aw.collisionWidth-aB-az;ax.left+=aA-at}else{if(au>0&&aA<=0){ax.left=az}else{if(aA>au){ax.left=az+aB-aw.collisionWidth}else{ax.left=az}}}}else{if(aA>0){ax.left+=aA}else{if(au>0){ax.left-=au}else{ax.left=am(ax.left-ay,ax.left)}}}},top:function(aw,av){var au=av.within,aA=au.isWindow?au.scrollTop:au.offset.top,aB=av.within.height,ay=aw.top-av.collisionPosition.marginTop,az=aA-ay,ax=ay+av.collisionHeight-aB-aA,at;if(av.collisionHeight>aB){if(az>0&&ax<=0){at=aw.top+az+av.collisionHeight-aB-aA;aw.top+=az-at}else{if(ax>0&&az<=0){aw.top=aA}else{if(az>ax){aw.top=aA+aB-av.collisionHeight}else{aw.top=aA}}}}else{if(az>0){aw.top+=az}else{if(ax>0){aw.top-=ax}else{aw.top=am(aw.top-ay,aw.top)}}}}},flip:{left:function(az,ay){var ax=ay.within,aD=ax.offset.left+ax.scrollLeft,aG=ax.width,av=ax.isWindow?ax.scrollLeft:ax.offset.left,aA=az.left-ay.collisionPosition.marginLeft,aE=aA-av,au=aA+ay.collisionWidth-aG-av,aC=ay.my[0]==="left"?-ay.elemWidth:ay.my[0]==="right"?ay.elemWidth:0,aF=ay.at[0]==="left"?ay.targetWidth:ay.at[0]==="right"?-ay.targetWidth:0,aw=-2*ay.offset[0],at,aB;if(aE<0){at=az.left+aC+aF+aw+ay.collisionWidth-aG-aD;if(at<0||at<ar(aE)){az.left+=aC+aF+aw}}else{if(au>0){aB=az.left-ay.collisionPosition.marginLeft+aC+aF+aw-av;if(aB>0||ar(aB)<au){az.left+=aC+aF+aw}}}},top:function(ay,ax){var aw=ax.within,aF=aw.offset.top+aw.scrollTop,aG=aw.height,at=aw.isWindow?aw.scrollTop:aw.offset.top,aA=ay.top-ax.collisionPosition.marginTop,aC=aA-at,az=aA+ax.collisionHeight-aG-at,aD=ax.my[1]==="top",aB=aD?-ax.elemHeight:ax.my[1]==="bottom"?ax.elemHeight:0,aH=ax.at[1]==="top"?ax.targetHeight:ax.at[1]==="bottom"?-ax.targetHeight:0,av=-2*ax.offset[1],aE,au;if(aC<0){au=ay.top+aB+aH+av+ax.collisionHeight-aG-aF;if((ay.top+aB+aH+av)>aC&&(au<0||au<ar(aC))){ay.top+=aB+aH+av}}else{if(az>0){aE=ay.top-ax.collisionPosition.marginTop+aB+aH+av-at;if((ay.top+aB+aH+av)>az&&(aE>0||ar(aE)<az)){ay.top+=aB+aH+av}}}}},flipfit:{left:function(){I.ui.position.flip.left.apply(this,arguments);I.ui.position.fit.left.apply(this,arguments)},top:function(){I.ui.position.flip.top.apply(this,arguments);I.ui.position.fit.top.apply(this,arguments)}}};(function(){var ax,az,au,aw,av,at=document.getElementsByTagName("body")[0],ay=document.createElement("div");ax=document.createElement(at?"div":"body");au={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"};if(at){I.extend(au,{position:"absolute",left:"-1000px",top:"-1000px"})}for(av in au){ax.style[av]=au[av]}ax.appendChild(ay);az=at||document.documentElement;az.insertBefore(ax,az.firstChild);ay.style.cssText="position: absolute; left: 10.7432222px;";aw=I(ay).offset().left;ao=aw>10&&aw<11;ax.innerHTML="";az.removeChild(ax)})()})();var P=I.ui.position;
50
- /*!
51
- * jQuery UI Accordion 1.11.2
52
- * http://jqueryui.com
53
- *
54
- * Copyright 2014 jQuery Foundation and other contributors
55
- * Released under the MIT license.
56
- * http://jquery.org/license
57
- *
58
- * http://api.jqueryui.com/accordion/
59
- */
60
- var ad=I.widget("ui.accordion",{version:"1.11.2",options:{active:0,animate:{},collapsible:false,event:"click",header:"> li > :first-child,> :not(li):even",heightStyle:"auto",icons:{activeHeader:"ui-icon-triangle-1-s",header:"ui-icon-triangle-1-e"},activate:null,beforeActivate:null},hideProps:{borderTopWidth:"hide",borderBottomWidth:"hide",paddingTop:"hide",paddingBottom:"hide",height:"hide"},showProps:{borderTopWidth:"show",borderBottomWidth:"show",paddingTop:"show",paddingBottom:"show",height:"show"},_create:function(){var ae=this.options;this.prevShow=this.prevHide=I();this.element.addClass("ui-accordion ui-widget ui-helper-reset").attr("role","tablist");if(!ae.collapsible&&(ae.active===false||ae.active==null)){ae.active=0}this._processPanels();if(ae.active<0){ae.active+=this.headers.length}this._refresh()},_getCreateEventData:function(){return{header:this.active,panel:!this.active.length?I():this.active.next()}},_createIcons:function(){var ae=this.options.icons;if(ae){I("<span>").addClass("ui-accordion-header-icon ui-icon "+ae.header).prependTo(this.headers);this.active.children(".ui-accordion-header-icon").removeClass(ae.header).addClass(ae.activeHeader);this.headers.addClass("ui-accordion-icons")}},_destroyIcons:function(){this.headers.removeClass("ui-accordion-icons").children(".ui-accordion-header-icon").remove()},_destroy:function(){var ae;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role");this.headers.removeClass("ui-accordion-header ui-accordion-header-active ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("aria-controls").removeAttr("tabIndex").removeUniqueId();this._destroyIcons();ae=this.headers.next().removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-state-disabled").css("display","").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeUniqueId();if(this.options.heightStyle!=="content"){ae.css("height","")}},_setOption:function(ae,af){if(ae==="active"){this._activate(af);return}if(ae==="event"){if(this.options.event){this._off(this.headers,this.options.event)}this._setupEvents(af)}this._super(ae,af);if(ae==="collapsible"&&!af&&this.options.active===false){this._activate(0)}if(ae==="icons"){this._destroyIcons();if(af){this._createIcons()}}if(ae==="disabled"){this.element.toggleClass("ui-state-disabled",!!af).attr("aria-disabled",af);this.headers.add(this.headers.next()).toggleClass("ui-state-disabled",!!af)}},_keydown:function(ah){if(ah.altKey||ah.ctrlKey){return}var ai=I.ui.keyCode,ag=this.headers.length,ae=this.headers.index(ah.target),af=false;switch(ah.keyCode){case ai.RIGHT:case ai.DOWN:af=this.headers[(ae+1)%ag];break;case ai.LEFT:case ai.UP:af=this.headers[(ae-1+ag)%ag];break;case ai.SPACE:case ai.ENTER:this._eventHandler(ah);break;case ai.HOME:af=this.headers[0];break;case ai.END:af=this.headers[ag-1];break}if(af){I(ah.target).attr("tabIndex",-1);I(af).attr("tabIndex",0);af.focus();ah.preventDefault()}},_panelKeyDown:function(ae){if(ae.keyCode===I.ui.keyCode.UP&&ae.ctrlKey){I(ae.currentTarget).prev().focus()}},refresh:function(){var ae=this.options;this._processPanels();if((ae.active===false&&ae.collapsible===true)||!this.headers.length){ae.active=false;this.active=I()}else{if(ae.active===false){this._activate(0)}else{if(this.active.length&&!I.contains(this.element[0],this.active[0])){if(this.headers.length===this.headers.find(".ui-state-disabled").length){ae.active=false;this.active=I()}else{this._activate(Math.max(0,ae.active-1))}}else{ae.active=this.headers.index(this.active)}}}this._destroyIcons();this._refresh()},_processPanels:function(){var af=this.headers,ae=this.panels;this.headers=this.element.find(this.options.header).addClass("ui-accordion-header ui-state-default ui-corner-all");this.panels=this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom").filter(":not(.ui-accordion-content-active)").hide();if(ae){this._off(af.not(this.headers));this._off(ae.not(this.panels))}},_refresh:function(){var ah,af=this.options,ae=af.heightStyle,ag=this.element.parent();this.active=this._findActive(af.active).addClass("ui-accordion-header-active ui-state-active ui-corner-top").removeClass("ui-corner-all");this.active.next().addClass("ui-accordion-content-active").show();this.headers.attr("role","tab").each(function(){var al=I(this),ak=al.uniqueId().attr("id"),ai=al.next(),aj=ai.uniqueId().attr("id");al.attr("aria-controls",aj);ai.attr("aria-labelledby",ak)}).next().attr("role","tabpanel");this.headers.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1}).next().attr({"aria-hidden":"true"}).hide();if(!this.active.length){this.headers.eq(0).attr("tabIndex",0)}else{this.active.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0}).next().attr({"aria-hidden":"false"})}this._createIcons();this._setupEvents(af.event);if(ae==="fill"){ah=ag.height();this.element.siblings(":visible").each(function(){var aj=I(this),ai=aj.css("position");if(ai==="absolute"||ai==="fixed"){return}ah-=aj.outerHeight(true)});this.headers.each(function(){ah-=I(this).outerHeight(true)});this.headers.next().each(function(){I(this).height(Math.max(0,ah-I(this).innerHeight()+I(this).height()))}).css("overflow","auto")}else{if(ae==="auto"){ah=0;this.headers.next().each(function(){ah=Math.max(ah,I(this).css("height","").height())}).height(ah)}}},_activate:function(ae){var af=this._findActive(ae)[0];if(af===this.active[0]){return}af=af||this.active[0];this._eventHandler({target:af,currentTarget:af,preventDefault:I.noop})},_findActive:function(ae){return typeof ae==="number"?this.headers.eq(ae):I()},_setupEvents:function(af){var ae={keydown:"_keydown"};if(af){I.each(af.split(" "),function(ah,ag){ae[ag]="_eventHandler"})}this._off(this.headers.add(this.headers.next()));this._on(this.headers,ae);this._on(this.headers.next(),{keydown:"_panelKeyDown"});this._hoverable(this.headers);this._focusable(this.headers)},_eventHandler:function(ae){var am=this.options,ah=this.active,ai=I(ae.currentTarget),ak=ai[0]===ah[0],af=ak&&am.collapsible,ag=af?I():ai.next(),aj=ah.next(),al={oldHeader:ah,oldPanel:aj,newHeader:af?I():ai,newPanel:ag};ae.preventDefault();if((ak&&!am.collapsible)||(this._trigger("beforeActivate",ae,al)===false)){return}am.active=af?false:this.headers.index(ai);this.active=ak?I():ai;this._toggle(al);ah.removeClass("ui-accordion-header-active ui-state-active");if(am.icons){ah.children(".ui-accordion-header-icon").removeClass(am.icons.activeHeader).addClass(am.icons.header)}if(!ak){ai.removeClass("ui-corner-all").addClass("ui-accordion-header-active ui-state-active ui-corner-top");if(am.icons){ai.children(".ui-accordion-header-icon").removeClass(am.icons.header).addClass(am.icons.activeHeader)}ai.next().addClass("ui-accordion-content-active")}},_toggle:function(ag){var ae=ag.newPanel,af=this.prevShow.length?this.prevShow:ag.oldPanel;this.prevShow.add(this.prevHide).stop(true,true);this.prevShow=ae;this.prevHide=af;if(this.options.animate){this._animate(ae,af,ag)}else{af.hide();ae.show();this._toggleComplete(ag)}af.attr({"aria-hidden":"true"});af.prev().attr("aria-selected","false");if(ae.length&&af.length){af.prev().attr({tabIndex:-1,"aria-expanded":"false"})}else{if(ae.length){this.headers.filter(function(){return I(this).attr("tabIndex")===0}).attr("tabIndex",-1)}}ae.attr("aria-hidden","false").prev().attr({"aria-selected":"true",tabIndex:0,"aria-expanded":"true"})},_animate:function(ae,am,ai){var al,ak,ah,aj=this,an=0,ao=ae.length&&(!am.length||(ae.index()<am.index())),ag=this.options.animate||{},ap=ao&&ag.down||ag,af=function(){aj._toggleComplete(ai)};if(typeof ap==="number"){ah=ap}if(typeof ap==="string"){ak=ap}ak=ak||ap.easing||ag.easing;ah=ah||ap.duration||ag.duration;if(!am.length){return ae.animate(this.showProps,ah,ak,af)}if(!ae.length){return am.animate(this.hideProps,ah,ak,af)}al=ae.show().outerHeight();am.animate(this.hideProps,{duration:ah,easing:ak,step:function(aq,ar){ar.now=Math.round(aq)}});ae.hide().animate(this.showProps,{duration:ah,easing:ak,complete:af,step:function(aq,ar){ar.now=Math.round(aq);if(ar.prop!=="height"){an+=ar.now}else{if(aj.options.heightStyle!=="content"){ar.now=Math.round(al-am.outerHeight()-an);an=0}}}})},_toggleComplete:function(af){var ae=af.oldPanel;ae.removeClass("ui-accordion-content-active").prev().removeClass("ui-corner-top").addClass("ui-corner-all");if(ae.length){ae.parent()[0].className=ae.parent()[0].className}this._trigger("activate",null,af)}});
61
- /*!
62
- * jQuery UI Menu 1.11.2
63
- * http://jqueryui.com
64
- *
65
- * Copyright 2014 jQuery Foundation and other contributors
66
- * Released under the MIT license.
67
- * http://jquery.org/license
68
- *
69
- * http://api.jqueryui.com/menu/
70
- */
71
- var aa=I.widget("ui.menu",{version:"1.11.2",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-carat-1-e"},items:"> *",menus:"ul",position:{my:"left-1 top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element;this.mouseHandled=false;this.element.uniqueId().addClass("ui-menu ui-widget ui-widget-content").toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length).attr({role:this.options.role,tabIndex:0});if(this.options.disabled){this.element.addClass("ui-state-disabled").attr("aria-disabled","true")}this._on({"mousedown .ui-menu-item":function(ae){ae.preventDefault()},"click .ui-menu-item":function(ae){var af=I(ae.target);if(!this.mouseHandled&&af.not(".ui-state-disabled").length){this.select(ae);if(!ae.isPropagationStopped()){this.mouseHandled=true}if(af.has(".ui-menu").length){this.expand(ae)}else{if(!this.element.is(":focus")&&I(this.document[0].activeElement).closest(".ui-menu").length){this.element.trigger("focus",[true]);if(this.active&&this.active.parents(".ui-menu").length===1){clearTimeout(this.timer)}}}}},"mouseenter .ui-menu-item":function(ae){if(this.previousFilter){return}var af=I(ae.currentTarget);af.siblings(".ui-state-active").removeClass("ui-state-active");this.focus(ae,af)},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(ag,ae){var af=this.active||this.element.find(this.options.items).eq(0);if(!ae){this.focus(ag,af)}},blur:function(ae){this._delay(function(){if(!I.contains(this.element[0],this.document[0].activeElement)){this.collapseAll(ae)}})},keydown:"_keydown"});this.refresh();this._on(this.document,{click:function(ae){if(this._closeOnDocumentClick(ae)){this.collapseAll(ae)}this.mouseHandled=false}})},_destroy:function(){this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeClass("ui-menu ui-widget ui-widget-content ui-menu-icons ui-front").removeAttr("role").removeAttr("tabIndex").removeAttr("aria-labelledby").removeAttr("aria-expanded").removeAttr("aria-hidden").removeAttr("aria-disabled").removeUniqueId().show();this.element.find(".ui-menu-item").removeClass("ui-menu-item").removeAttr("role").removeAttr("aria-disabled").removeUniqueId().removeClass("ui-state-hover").removeAttr("tabIndex").removeAttr("role").removeAttr("aria-haspopup").children().each(function(){var ae=I(this);if(ae.data("ui-menu-submenu-carat")){ae.remove()}});this.element.find(".ui-menu-divider").removeClass("ui-menu-divider ui-widget-content")},_keydown:function(ai){var af,ah,aj,ag,ae=true;switch(ai.keyCode){case I.ui.keyCode.PAGE_UP:this.previousPage(ai);break;case I.ui.keyCode.PAGE_DOWN:this.nextPage(ai);break;case I.ui.keyCode.HOME:this._move("first","first",ai);break;case I.ui.keyCode.END:this._move("last","last",ai);break;case I.ui.keyCode.UP:this.previous(ai);break;case I.ui.keyCode.DOWN:this.next(ai);break;case I.ui.keyCode.LEFT:this.collapse(ai);break;case I.ui.keyCode.RIGHT:if(this.active&&!this.active.is(".ui-state-disabled")){this.expand(ai)}break;case I.ui.keyCode.ENTER:case I.ui.keyCode.SPACE:this._activate(ai);break;case I.ui.keyCode.ESCAPE:this.collapse(ai);break;default:ae=false;ah=this.previousFilter||"";aj=String.fromCharCode(ai.keyCode);ag=false;clearTimeout(this.filterTimer);if(aj===ah){ag=true}else{aj=ah+aj}af=this._filterMenuItems(aj);af=ag&&af.index(this.active.next())!==-1?this.active.nextAll(".ui-menu-item"):af;if(!af.length){aj=String.fromCharCode(ai.keyCode);af=this._filterMenuItems(aj)}if(af.length){this.focus(ai,af);this.previousFilter=aj;this.filterTimer=this._delay(function(){delete this.previousFilter},1000)}else{delete this.previousFilter}}if(ae){ai.preventDefault()}},_activate:function(ae){if(!this.active.is(".ui-state-disabled")){if(this.active.is("[aria-haspopup='true']")){this.expand(ae)}else{this.select(ae)}}},refresh:function(){var ai,af,ah=this,ag=this.options.icons.submenu,ae=this.element.find(this.options.menus);this.element.toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length);ae.filter(":not(.ui-menu)").addClass("ui-menu ui-widget ui-widget-content ui-front").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var al=I(this),ak=al.parent(),aj=I("<span>").addClass("ui-menu-icon ui-icon "+ag).data("ui-menu-submenu-carat",true);ak.attr("aria-haspopup","true").prepend(aj);al.attr("aria-labelledby",ak.attr("id"))});ai=ae.add(this.element);af=ai.find(this.options.items);af.not(".ui-menu-item").each(function(){var aj=I(this);if(ah._isDivider(aj)){aj.addClass("ui-widget-content ui-menu-divider")}});af.not(".ui-menu-item, .ui-menu-divider").addClass("ui-menu-item").uniqueId().attr({tabIndex:-1,role:this._itemRole()});af.filter(".ui-state-disabled").attr("aria-disabled","true");if(this.active&&!I.contains(this.element[0],this.active[0])){this.blur()}},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(ae,af){if(ae==="icons"){this.element.find(".ui-menu-icon").removeClass(this.options.icons.submenu).addClass(af.submenu)}if(ae==="disabled"){this.element.toggleClass("ui-state-disabled",!!af).attr("aria-disabled",af)}this._super(ae,af)},focus:function(af,ae){var ah,ag;this.blur(af,af&&af.type==="focus");this._scrollIntoView(ae);this.active=ae.first();ag=this.active.addClass("ui-state-focus").removeClass("ui-state-active");if(this.options.role){this.element.attr("aria-activedescendant",ag.attr("id"))}this.active.parent().closest(".ui-menu-item").addClass("ui-state-active");if(af&&af.type==="keydown"){this._close()}else{this.timer=this._delay(function(){this._close()},this.delay)}ah=ae.children(".ui-menu");if(ah.length&&af&&(/^mouse/.test(af.type))){this._startOpening(ah)}this.activeMenu=ae.parent();this._trigger("focus",af,{item:ae})},_scrollIntoView:function(ah){var ak,ag,ai,ae,af,aj;if(this._hasScroll()){ak=parseFloat(I.css(this.activeMenu[0],"borderTopWidth"))||0;ag=parseFloat(I.css(this.activeMenu[0],"paddingTop"))||0;ai=ah.offset().top-this.activeMenu.offset().top-ak-ag;ae=this.activeMenu.scrollTop();af=this.activeMenu.height();aj=ah.outerHeight();if(ai<0){this.activeMenu.scrollTop(ae+ai)}else{if(ai+aj>af){this.activeMenu.scrollTop(ae+ai-af+aj)}}}},blur:function(af,ae){if(!ae){clearTimeout(this.timer)}if(!this.active){return}this.active.removeClass("ui-state-focus");this.active=null;this._trigger("blur",af,{item:this.active})},_startOpening:function(ae){clearTimeout(this.timer);if(ae.attr("aria-hidden")!=="true"){return}this.timer=this._delay(function(){this._close();this._open(ae)},this.delay)},_open:function(af){var ae=I.extend({of:this.active},this.options.position);clearTimeout(this.timer);this.element.find(".ui-menu").not(af.parents(".ui-menu")).hide().attr("aria-hidden","true");af.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(ae)},collapseAll:function(af,ae){clearTimeout(this.timer);this.timer=this._delay(function(){var ag=ae?this.element:I(af&&af.target).closest(this.element.find(".ui-menu"));if(!ag.length){ag=this.element}this._close(ag);this.blur(af);this.activeMenu=ag},this.delay)},_close:function(ae){if(!ae){ae=this.active?this.active.parent():this.element}ae.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false").end().find(".ui-state-active").not(".ui-state-focus").removeClass("ui-state-active")},_closeOnDocumentClick:function(ae){return !I(ae.target).closest(".ui-menu").length},_isDivider:function(ae){return !/[^\-\u2014\u2013\s]/.test(ae.text())},collapse:function(af){var ae=this.active&&this.active.parent().closest(".ui-menu-item",this.element);if(ae&&ae.length){this._close();this.focus(af,ae)}},expand:function(af){var ae=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();if(ae&&ae.length){this._open(ae.parent());this._delay(function(){this.focus(af,ae)})}},next:function(ae){this._move("next","first",ae)},previous:function(ae){this._move("prev","last",ae)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(ah,af,ag){var ae;if(this.active){if(ah==="first"||ah==="last"){ae=this.active[ah==="first"?"prevAll":"nextAll"](".ui-menu-item").eq(-1)}else{ae=this.active[ah+"All"](".ui-menu-item").eq(0)}}if(!ae||!ae.length||!this.active){ae=this.activeMenu.find(this.options.items)[af]()}this.focus(ag,ae)},nextPage:function(ag){var af,ah,ae;if(!this.active){this.next(ag);return}if(this.isLastItem()){return}if(this._hasScroll()){ah=this.active.offset().top;ae=this.element.height();this.active.nextAll(".ui-menu-item").each(function(){af=I(this);return af.offset().top-ah-ae<0});this.focus(ag,af)}else{this.focus(ag,this.activeMenu.find(this.options.items)[!this.active?"first":"last"]())}},previousPage:function(ag){var af,ah,ae;if(!this.active){this.next(ag);return}if(this.isFirstItem()){return}if(this._hasScroll()){ah=this.active.offset().top;ae=this.element.height();this.active.prevAll(".ui-menu-item").each(function(){af=I(this);return af.offset().top-ah+ae>0});this.focus(ag,af)}else{this.focus(ag,this.activeMenu.find(this.options.items).first())}},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(ae){this.active=this.active||I(ae.target).closest(".ui-menu-item");var af={item:this.active};if(!this.active.has(".ui-menu").length){this.collapseAll(ae,true)}this._trigger("select",ae,af)},_filterMenuItems:function(ag){var ae=ag.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"),af=new RegExp("^"+ae,"i");return this.activeMenu.find(this.options.items).filter(".ui-menu-item").filter(function(){return af.test(I.trim(I(this).text()))})}});
72
- /*!
73
- * jQuery UI Autocomplete 1.11.2
74
- * http://jqueryui.com
75
- *
76
- * Copyright 2014 jQuery Foundation and other contributors
77
- * Released under the MIT license.
78
- * http://jquery.org/license
79
- *
80
- * http://api.jqueryui.com/autocomplete/
81
- */
82
- I.widget("ui.autocomplete",{version:"1.11.2",defaultElement:"<input>",options:{appendTo:null,autoFocus:false,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,_create:function(){var ag,ae,ah,aj=this.element[0].nodeName.toLowerCase(),ai=aj==="textarea",af=aj==="input";this.isMultiLine=ai?true:af?false:this.element.prop("isContentEditable");this.valueMethod=this.element[ai||af?"val":"text"];this.isNewMenu=true;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off");this._on(this.element,{keydown:function(ak){if(this.element.prop("readOnly")){ag=true;ah=true;ae=true;return}ag=false;ah=false;ae=false;var al=I.ui.keyCode;switch(ak.keyCode){case al.PAGE_UP:ag=true;this._move("previousPage",ak);break;case al.PAGE_DOWN:ag=true;this._move("nextPage",ak);break;case al.UP:ag=true;this._keyEvent("previous",ak);break;case al.DOWN:ag=true;this._keyEvent("next",ak);break;case al.ENTER:if(this.menu.active){ag=true;ak.preventDefault();this.menu.select(ak)}break;case al.TAB:if(this.menu.active){this.menu.select(ak)}break;case al.ESCAPE:if(this.menu.element.is(":visible")){if(!this.isMultiLine){this._value(this.term)}this.close(ak);ak.preventDefault()}break;default:ae=true;this._searchTimeout(ak);break}},keypress:function(ak){if(ag){ag=false;if(!this.isMultiLine||this.menu.element.is(":visible")){ak.preventDefault()}return}if(ae){return}var al=I.ui.keyCode;switch(ak.keyCode){case al.PAGE_UP:this._move("previousPage",ak);break;case al.PAGE_DOWN:this._move("nextPage",ak);break;case al.UP:this._keyEvent("previous",ak);break;case al.DOWN:this._keyEvent("next",ak);break}},input:function(ak){if(ah){ah=false;ak.preventDefault();return}this._searchTimeout(ak)},focus:function(){this.selectedItem=null;this.previous=this._value()},blur:function(ak){if(this.cancelBlur){delete this.cancelBlur;return}clearTimeout(this.searching);this.close(ak);this._change(ak)}});this._initSource();this.menu=I("<ul>").addClass("ui-autocomplete ui-front").appendTo(this._appendTo()).menu({role:null}).hide().menu("instance");this._on(this.menu.element,{mousedown:function(ak){ak.preventDefault();this.cancelBlur=true;this._delay(function(){delete this.cancelBlur});var al=this.menu.element[0];if(!I(ak.target).closest(".ui-menu-item").length){this._delay(function(){var am=this;this.document.one("mousedown",function(an){if(an.target!==am.element[0]&&an.target!==al&&!I.contains(al,an.target)){am.close()}})})}},menufocus:function(am,an){var ak,al;if(this.isNewMenu){this.isNewMenu=false;if(am.originalEvent&&/^mouse/.test(am.originalEvent.type)){this.menu.blur();this.document.one("mousemove",function(){I(am.target).trigger(am.originalEvent)});return}}al=an.item.data("ui-autocomplete-item");if(false!==this._trigger("focus",am,{item:al})){if(am.originalEvent&&/^key/.test(am.originalEvent.type)){this._value(al.value)}}ak=an.item.attr("aria-label")||al.value;if(ak&&I.trim(ak).length){this.liveRegion.children().hide();I("<div>").text(ak).appendTo(this.liveRegion)}},menuselect:function(am,an){var al=an.item.data("ui-autocomplete-item"),ak=this.previous;if(this.element[0]!==this.document[0].activeElement){this.element.focus();this.previous=ak;this._delay(function(){this.previous=ak;this.selectedItem=al})}if(false!==this._trigger("select",am,{item:al})){this._value(al.value)}this.term=this._value();this.close(am);this.selectedItem=al}});this.liveRegion=I("<span>",{role:"status","aria-live":"assertive","aria-relevant":"additions"}).addClass("ui-helper-hidden-accessible").appendTo(this.document[0].body);this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching);this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete");this.menu.element.remove();this.liveRegion.remove()},_setOption:function(ae,af){this._super(ae,af);if(ae==="source"){this._initSource()}if(ae==="appendTo"){this.menu.element.appendTo(this._appendTo())}if(ae==="disabled"&&af&&this.xhr){this.xhr.abort()}},_appendTo:function(){var ae=this.options.appendTo;if(ae){ae=ae.jquery||ae.nodeType?I(ae):this.document.find(ae).eq(0)}if(!ae||!ae[0]){ae=this.element.closest(".ui-front")}if(!ae.length){ae=this.document[0].body}return ae},_initSource:function(){var ag,ae,af=this;if(I.isArray(this.options.source)){ag=this.options.source;this.source=function(ai,ah){ah(I.ui.autocomplete.filter(ag,ai.term))}}else{if(typeof this.options.source==="string"){ae=this.options.source;this.source=function(ai,ah){if(af.xhr){af.xhr.abort()}af.xhr=I.ajax({url:ae,data:ai,dataType:"json",success:function(aj){ah(aj)},error:function(){ah([])}})}}else{this.source=this.options.source}}},_searchTimeout:function(ae){clearTimeout(this.searching);this.searching=this._delay(function(){var ag=this.term===this._value(),af=this.menu.element.is(":visible"),ah=ae.altKey||ae.ctrlKey||ae.metaKey||ae.shiftKey;if(!ag||(ag&&!af&&!ah)){this.selectedItem=null;this.search(null,ae)}},this.options.delay)},search:function(af,ae){af=af!=null?af:this._value();this.term=this._value();if(af.length<this.options.minLength){return this.close(ae)}if(this._trigger("search",ae)===false){return}return this._search(af)},_search:function(ae){this.pending++;this.element.addClass("ui-autocomplete-loading");this.cancelSearch=false;this.source({term:ae},this._response())},_response:function(){var ae=++this.requestIndex;return I.proxy(function(af){if(ae===this.requestIndex){this.__response(af)}this.pending--;if(!this.pending){this.element.removeClass("ui-autocomplete-loading")}},this)},__response:function(ae){if(ae){ae=this._normalize(ae)}this._trigger("response",null,{content:ae});if(!this.options.disabled&&ae&&ae.length&&!this.cancelSearch){this._suggest(ae);this._trigger("open")}else{this._close()}},close:function(ae){this.cancelSearch=true;this._close(ae)},_close:function(ae){if(this.menu.element.is(":visible")){this.menu.element.hide();this.menu.blur();this.isNewMenu=true;this._trigger("close",ae)}},_change:function(ae){if(this.previous!==this._value()){this._trigger("change",ae,{item:this.selectedItem})}},_normalize:function(ae){if(ae.length&&ae[0].label&&ae[0].value){return ae}return I.map(ae,function(af){if(typeof af==="string"){return{label:af,value:af}}return I.extend({},af,{label:af.label||af.value,value:af.value||af.label})})},_suggest:function(ae){var af=this.menu.element.empty();this._renderMenu(af,ae);this.isNewMenu=true;this.menu.refresh();af.show();this._resizeMenu();af.position(I.extend({of:this.element},this.options.position));if(this.options.autoFocus){this.menu.next()}},_resizeMenu:function(){var ae=this.menu.element;ae.outerWidth(Math.max(ae.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(af,ae){var ag=this;I.each(ae,function(ah,ai){ag._renderItemData(af,ai)})},_renderItemData:function(ae,af){return this._renderItem(ae,af).data("ui-autocomplete-item",af)},_renderItem:function(ae,af){return I("<li>").text(af.label).appendTo(ae)},_move:function(af,ae){if(!this.menu.element.is(":visible")){this.search(null,ae);return}if(this.menu.isFirstItem()&&/^previous/.test(af)||this.menu.isLastItem()&&/^next/.test(af)){if(!this.isMultiLine){this._value(this.term)}this.menu.blur();return}this.menu[af](ae)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(af,ae){if(!this.isMultiLine||this.menu.element.is(":visible")){this._move(af,ae);ae.preventDefault()}}});I.extend(I.ui.autocomplete,{escapeRegex:function(ae){return ae.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(ag,ae){var af=new RegExp(I.ui.autocomplete.escapeRegex(ae),"i");return I.grep(ag,function(ah){return af.test(ah.label||ah.value||ah)})}});I.widget("ui.autocomplete",I.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(ae){return ae+(ae>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(af){var ae;this._superApply(arguments);if(this.options.disabled||this.cancelSearch){return}if(af&&af.length){ae=this.options.messages.results(af.length)}else{ae=this.options.messages.noResults}this.liveRegion.children().hide();I("<div>").text(ae).appendTo(this.liveRegion)}});var c=I.ui.autocomplete;
83
- /*!
84
- * jQuery UI Button 1.11.2
85
- * http://jqueryui.com
86
- *
87
- * Copyright 2014 jQuery Foundation and other contributors
88
- * Released under the MIT license.
89
- * http://jquery.org/license
90
- *
91
- * http://api.jqueryui.com/button/
92
- */
93
- var r,Y="ui-button ui-widget ui-state-default ui-corner-all",y="ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only",n=function(){var ae=I(this);setTimeout(function(){ae.find(":ui-button").button("refresh")},1)},z=function(af){var ae=af.name,ag=af.form,ah=I([]);if(ae){ae=ae.replace(/'/g,"\\'");if(ag){ah=I(ag).find("[name='"+ae+"'][type=radio]")}else{ah=I("[name='"+ae+"'][type=radio]",af.ownerDocument).filter(function(){return !this.form})}}return ah};I.widget("ui.button",{version:"1.11.2",defaultElement:"<button>",options:{disabled:null,text:true,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset"+this.eventNamespace).bind("reset"+this.eventNamespace,n);if(typeof this.options.disabled!=="boolean"){this.options.disabled=!!this.element.prop("disabled")}else{this.element.prop("disabled",this.options.disabled)}this._determineButtonType();this.hasTitle=!!this.buttonElement.attr("title");var ag=this,ae=this.options,ah=this.type==="checkbox"||this.type==="radio",af=!ah?"ui-state-active":"";if(ae.label===null){ae.label=(this.type==="input"?this.buttonElement.val():this.buttonElement.html())}this._hoverable(this.buttonElement);this.buttonElement.addClass(Y).attr("role","button").bind("mouseenter"+this.eventNamespace,function(){if(ae.disabled){return}if(this===r){I(this).addClass("ui-state-active")}}).bind("mouseleave"+this.eventNamespace,function(){if(ae.disabled){return}I(this).removeClass(af)}).bind("click"+this.eventNamespace,function(ai){if(ae.disabled){ai.preventDefault();ai.stopImmediatePropagation()}});this._on({focus:function(){this.buttonElement.addClass("ui-state-focus")},blur:function(){this.buttonElement.removeClass("ui-state-focus")}});if(ah){this.element.bind("change"+this.eventNamespace,function(){ag.refresh()})}if(this.type==="checkbox"){this.buttonElement.bind("click"+this.eventNamespace,function(){if(ae.disabled){return false}})}else{if(this.type==="radio"){this.buttonElement.bind("click"+this.eventNamespace,function(){if(ae.disabled){return false}I(this).addClass("ui-state-active");ag.buttonElement.attr("aria-pressed","true");var ai=ag.element[0];z(ai).not(ai).map(function(){return I(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed","false")})}else{this.buttonElement.bind("mousedown"+this.eventNamespace,function(){if(ae.disabled){return false}I(this).addClass("ui-state-active");r=this;ag.document.one("mouseup",function(){r=null})}).bind("mouseup"+this.eventNamespace,function(){if(ae.disabled){return false}I(this).removeClass("ui-state-active")}).bind("keydown"+this.eventNamespace,function(ai){if(ae.disabled){return false}if(ai.keyCode===I.ui.keyCode.SPACE||ai.keyCode===I.ui.keyCode.ENTER){I(this).addClass("ui-state-active")}}).bind("keyup"+this.eventNamespace+" blur"+this.eventNamespace,function(){I(this).removeClass("ui-state-active")});if(this.buttonElement.is("a")){this.buttonElement.keyup(function(ai){if(ai.keyCode===I.ui.keyCode.SPACE){I(this).click()}})}}}this._setOption("disabled",ae.disabled);this._resetButton()},_determineButtonType:function(){var ae,ag,af;if(this.element.is("[type=checkbox]")){this.type="checkbox"}else{if(this.element.is("[type=radio]")){this.type="radio"}else{if(this.element.is("input")){this.type="input"}else{this.type="button"}}}if(this.type==="checkbox"||this.type==="radio"){ae=this.element.parents().last();ag="label[for='"+this.element.attr("id")+"']";this.buttonElement=ae.find(ag);if(!this.buttonElement.length){ae=ae.length?ae.siblings():this.element.siblings();this.buttonElement=ae.filter(ag);if(!this.buttonElement.length){this.buttonElement=ae.find(ag)}}this.element.addClass("ui-helper-hidden-accessible");af=this.element.is(":checked");if(af){this.buttonElement.addClass("ui-state-active")}this.buttonElement.prop("aria-pressed",af)}else{this.buttonElement=this.element}},widget:function(){return this.buttonElement},_destroy:function(){this.element.removeClass("ui-helper-hidden-accessible");this.buttonElement.removeClass(Y+" ui-state-active "+y).removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html());if(!this.hasTitle){this.buttonElement.removeAttr("title")}},_setOption:function(ae,af){this._super(ae,af);if(ae==="disabled"){this.widget().toggleClass("ui-state-disabled",!!af);this.element.prop("disabled",!!af);if(af){if(this.type==="checkbox"||this.type==="radio"){this.buttonElement.removeClass("ui-state-focus")}else{this.buttonElement.removeClass("ui-state-focus ui-state-active")}}return}this._resetButton()},refresh:function(){var ae=this.element.is("input, button")?this.element.is(":disabled"):this.element.hasClass("ui-button-disabled");if(ae!==this.options.disabled){this._setOption("disabled",ae)}if(this.type==="radio"){z(this.element[0]).each(function(){if(I(this).is(":checked")){I(this).button("widget").addClass("ui-state-active").attr("aria-pressed","true")}else{I(this).button("widget").removeClass("ui-state-active").attr("aria-pressed","false")}})}else{if(this.type==="checkbox"){if(this.element.is(":checked")){this.buttonElement.addClass("ui-state-active").attr("aria-pressed","true")}else{this.buttonElement.removeClass("ui-state-active").attr("aria-pressed","false")}}}},_resetButton:function(){if(this.type==="input"){if(this.options.label){this.element.val(this.options.label)}return}var ai=this.buttonElement.removeClass(y),ag=I("<span></span>",this.document[0]).addClass("ui-button-text").html(this.options.label).appendTo(ai.empty()).text(),af=this.options.icons,ae=af.primary&&af.secondary,ah=[];if(af.primary||af.secondary){if(this.options.text){ah.push("ui-button-text-icon"+(ae?"s":(af.primary?"-primary":"-secondary")))}if(af.primary){ai.prepend("<span class='ui-button-icon-primary ui-icon "+af.primary+"'></span>")}if(af.secondary){ai.append("<span class='ui-button-icon-secondary ui-icon "+af.secondary+"'></span>")}if(!this.options.text){ah.push(ae?"ui-button-icons-only":"ui-button-icon-only");if(!this.hasTitle){ai.attr("title",I.trim(ag))}}}else{ah.push("ui-button-text-only")}ai.addClass(ah.join(" "))}});I.widget("ui.buttonset",{version:"1.11.2",options:{items:"button, input[type=button], input[type=submit], input[type=reset], input[type=checkbox], input[type=radio], a, :data(ui-button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(ae,af){if(ae==="disabled"){this.buttons.button("option",ae,af)}this._super(ae,af)},refresh:function(){var af=this.element.css("direction")==="rtl",ae=this.element.find(this.options.items),ag=ae.filter(":ui-button");ae.not(":ui-button").button();ag.button("refresh");this.buttons=ae.map(function(){return I(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(af?"ui-corner-right":"ui-corner-left").end().filter(":last").addClass(af?"ui-corner-left":"ui-corner-right").end().end()},_destroy:function(){this.element.removeClass("ui-buttonset");this.buttons.map(function(){return I(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy")}});var q=I.ui.button;
94
- /*!
95
- * jQuery UI Datepicker 1.11.2
96
- * http://jqueryui.com
97
- *
98
- * Copyright 2014 jQuery Foundation and other contributors
99
- * Released under the MIT license.
100
- * http://jquery.org/license
101
- *
102
- * http://api.jqueryui.com/datepicker/
103
- */
104
- I.extend(I.ui,{datepicker:{version:"1.11.2"}});var l;function t(af){var ae,ag;while(af.length&&af[0]!==document){ae=af.css("position");if(ae==="absolute"||ae==="relative"||ae==="fixed"){ag=parseInt(af.css("zIndex"),10);if(!isNaN(ag)&&ag!==0){return ag}}af=af.parent()}return 0}function ac(){this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._datepickerShowing=false;this._inDialog=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass="ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:""};this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:"c-10:c+10",showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false,autoSize:false,disabled:false};I.extend(this._defaults,this.regional[""]);this.regional.en=I.extend(true,{},this.regional[""]);this.regional["en-US"]=I.extend(true,{},this.regional.en);this.dpDiv=h(I("<div id='"+this._mainDivId+"' class='ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>"))}I.extend(ac.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(ae){x(this._defaults,ae||{});return this},_attachDatepicker:function(ah,ae){var ai,ag,af;ai=ah.nodeName.toLowerCase();ag=(ai==="div"||ai==="span");if(!ah.id){this.uuid+=1;ah.id="dp"+this.uuid}af=this._newInst(I(ah),ag);af.settings=I.extend({},ae||{});if(ai==="input"){this._connectDatepicker(ah,af)}else{if(ag){this._inlineDatepicker(ah,af)}}},_newInst:function(af,ae){var ag=af[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1");return{id:ag,input:af,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:ae,dpDiv:(!ae?this.dpDiv:h(I("<div class='"+this._inlineClass+" ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>")))}},_connectDatepicker:function(ag,af){var ae=I(ag);af.append=I([]);af.trigger=I([]);if(ae.hasClass(this.markerClassName)){return}this._attachments(ae,af);ae.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp);this._autoSize(af);I.data(ag,"datepicker",af);if(af.settings.disabled){this._disableDatepicker(ag)}},_attachments:function(ag,aj){var af,ai,ae,ak=this._get(aj,"appendText"),ah=this._get(aj,"isRTL");if(aj.append){aj.append.remove()}if(ak){aj.append=I("<span class='"+this._appendClass+"'>"+ak+"</span>");ag[ah?"before":"after"](aj.append)}ag.unbind("focus",this._showDatepicker);if(aj.trigger){aj.trigger.remove()}af=this._get(aj,"showOn");if(af==="focus"||af==="both"){ag.focus(this._showDatepicker)}if(af==="button"||af==="both"){ai=this._get(aj,"buttonText");ae=this._get(aj,"buttonImage");aj.trigger=I(this._get(aj,"buttonImageOnly")?I("<img/>").addClass(this._triggerClass).attr({src:ae,alt:ai,title:ai}):I("<button type='button'></button>").addClass(this._triggerClass).html(!ae?ai:I("<img/>").attr({src:ae,alt:ai,title:ai})));ag[ah?"before":"after"](aj.trigger);aj.trigger.click(function(){if(I.datepicker._datepickerShowing&&I.datepicker._lastInput===ag[0]){I.datepicker._hideDatepicker()}else{if(I.datepicker._datepickerShowing&&I.datepicker._lastInput!==ag[0]){I.datepicker._hideDatepicker();I.datepicker._showDatepicker(ag[0])}else{I.datepicker._showDatepicker(ag[0])}}return false})}},_autoSize:function(ak){if(this._get(ak,"autoSize")&&!ak.inline){var ah,af,ag,aj,ai=new Date(2009,12-1,20),ae=this._get(ak,"dateFormat");if(ae.match(/[DM]/)){ah=function(al){af=0;ag=0;for(aj=0;aj<al.length;aj++){if(al[aj].length>af){af=al[aj].length;ag=aj}}return ag};ai.setMonth(ah(this._get(ak,(ae.match(/MM/)?"monthNames":"monthNamesShort"))));ai.setDate(ah(this._get(ak,(ae.match(/DD/)?"dayNames":"dayNamesShort")))+20-ai.getDay())}ak.input.attr("size",this._formatDate(ak,ai).length)}},_inlineDatepicker:function(af,ae){var ag=I(af);if(ag.hasClass(this.markerClassName)){return}ag.addClass(this.markerClassName).append(ae.dpDiv);I.data(af,"datepicker",ae);this._setDate(ae,this._getDefaultDate(ae),true);this._updateDatepicker(ae);this._updateAlternate(ae);if(ae.settings.disabled){this._disableDatepicker(af)}ae.dpDiv.css("display","block")},_dialogDatepicker:function(al,af,aj,ag,ak){var ae,ao,ai,an,am,ah=this._dialogInst;if(!ah){this.uuid+=1;ae="dp"+this.uuid;this._dialogInput=I("<input type='text' id='"+ae+"' style='position: absolute; top: -100px; width: 0px;'/>");this._dialogInput.keydown(this._doKeyDown);I("body").append(this._dialogInput);ah=this._dialogInst=this._newInst(this._dialogInput,false);ah.settings={};I.data(this._dialogInput[0],"datepicker",ah)}x(ah.settings,ag||{});af=(af&&af.constructor===Date?this._formatDate(ah,af):af);this._dialogInput.val(af);this._pos=(ak?(ak.length?ak:[ak.pageX,ak.pageY]):null);if(!this._pos){ao=document.documentElement.clientWidth;ai=document.documentElement.clientHeight;an=document.documentElement.scrollLeft||document.body.scrollLeft;am=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[(ao/2)-100+an,(ai/2)-150+am]}this._dialogInput.css("left",(this._pos[0]+20)+"px").css("top",this._pos[1]+"px");ah.settings.onSelect=aj;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);if(I.blockUI){I.blockUI(this.dpDiv)}I.data(this._dialogInput[0],"datepicker",ah);return this},_destroyDatepicker:function(ag){var ah,ae=I(ag),af=I.data(ag,"datepicker");if(!ae.hasClass(this.markerClassName)){return}ah=ag.nodeName.toLowerCase();I.removeData(ag,"datepicker");if(ah==="input"){af.append.remove();af.trigger.remove();ae.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)}else{if(ah==="div"||ah==="span"){ae.removeClass(this.markerClassName).empty()}}},_enableDatepicker:function(ah){var ai,ag,ae=I(ah),af=I.data(ah,"datepicker");if(!ae.hasClass(this.markerClassName)){return}ai=ah.nodeName.toLowerCase();if(ai==="input"){ah.disabled=false;af.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else{if(ai==="div"||ai==="span"){ag=ae.children("."+this._inlineClass);ag.children().removeClass("ui-state-disabled");ag.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",false)}}this._disabledInputs=I.map(this._disabledInputs,function(aj){return(aj===ah?null:aj)})},_disableDatepicker:function(ah){var ai,ag,ae=I(ah),af=I.data(ah,"datepicker");if(!ae.hasClass(this.markerClassName)){return}ai=ah.nodeName.toLowerCase();if(ai==="input"){ah.disabled=true;af.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else{if(ai==="div"||ai==="span"){ag=ae.children("."+this._inlineClass);ag.children().addClass("ui-state-disabled");ag.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",true)}}this._disabledInputs=I.map(this._disabledInputs,function(aj){return(aj===ah?null:aj)});this._disabledInputs[this._disabledInputs.length]=ah},_isDisabledDatepicker:function(af){if(!af){return false}for(var ae=0;ae<this._disabledInputs.length;ae++){if(this._disabledInputs[ae]===af){return true}}return false},_getInst:function(af){try{return I.data(af,"datepicker")}catch(ae){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(ak,af,aj){var ag,ae,ai,al,ah=this._getInst(ak);if(arguments.length===2&&typeof af==="string"){return(af==="defaults"?I.extend({},I.datepicker._defaults):(ah?(af==="all"?I.extend({},ah.settings):this._get(ah,af)):null))}ag=af||{};if(typeof af==="string"){ag={};ag[af]=aj}if(ah){if(this._curInst===ah){this._hideDatepicker()}ae=this._getDateDatepicker(ak,true);ai=this._getMinMaxDate(ah,"min");al=this._getMinMaxDate(ah,"max");x(ah.settings,ag);if(ai!==null&&ag.dateFormat!==undefined&&ag.minDate===undefined){ah.settings.minDate=this._formatDate(ah,ai)}if(al!==null&&ag.dateFormat!==undefined&&ag.maxDate===undefined){ah.settings.maxDate=this._formatDate(ah,al)}if("disabled" in ag){if(ag.disabled){this._disableDatepicker(ak)}else{this._enableDatepicker(ak)}}this._attachments(I(ak),ah);this._autoSize(ah);this._setDate(ah,ae);this._updateAlternate(ah);this._updateDatepicker(ah)}},_changeDatepicker:function(ag,ae,af){this._optionDatepicker(ag,ae,af)},_refreshDatepicker:function(af){var ae=this._getInst(af);if(ae){this._updateDatepicker(ae)}},_setDateDatepicker:function(ag,ae){var af=this._getInst(ag);if(af){this._setDate(af,ae);this._updateDatepicker(af);this._updateAlternate(af)}},_getDateDatepicker:function(ag,ae){var af=this._getInst(ag);if(af&&!af.inline){this._setDateFromField(af,ae)}return(af?this._getDate(af):null)},_doKeyDown:function(ah){var af,ae,aj,ai=I.datepicker._getInst(ah.target),ak=true,ag=ai.dpDiv.is(".ui-datepicker-rtl");ai._keyEvent=true;if(I.datepicker._datepickerShowing){switch(ah.keyCode){case 9:I.datepicker._hideDatepicker();ak=false;break;case 13:aj=I("td."+I.datepicker._dayOverClass+":not(."+I.datepicker._currentClass+")",ai.dpDiv);if(aj[0]){I.datepicker._selectDay(ah.target,ai.selectedMonth,ai.selectedYear,aj[0])}af=I.datepicker._get(ai,"onSelect");if(af){ae=I.datepicker._formatDate(ai);af.apply((ai.input?ai.input[0]:null),[ae,ai])}else{I.datepicker._hideDatepicker()}return false;case 27:I.datepicker._hideDatepicker();break;case 33:I.datepicker._adjustDate(ah.target,(ah.ctrlKey?-I.datepicker._get(ai,"stepBigMonths"):-I.datepicker._get(ai,"stepMonths")),"M");break;case 34:I.datepicker._adjustDate(ah.target,(ah.ctrlKey?+I.datepicker._get(ai,"stepBigMonths"):+I.datepicker._get(ai,"stepMonths")),"M");break;case 35:if(ah.ctrlKey||ah.metaKey){I.datepicker._clearDate(ah.target)}ak=ah.ctrlKey||ah.metaKey;break;case 36:if(ah.ctrlKey||ah.metaKey){I.datepicker._gotoToday(ah.target)}ak=ah.ctrlKey||ah.metaKey;break;case 37:if(ah.ctrlKey||ah.metaKey){I.datepicker._adjustDate(ah.target,(ag?+1:-1),"D")}ak=ah.ctrlKey||ah.metaKey;if(ah.originalEvent.altKey){I.datepicker._adjustDate(ah.target,(ah.ctrlKey?-I.datepicker._get(ai,"stepBigMonths"):-I.datepicker._get(ai,"stepMonths")),"M")}break;case 38:if(ah.ctrlKey||ah.metaKey){I.datepicker._adjustDate(ah.target,-7,"D")}ak=ah.ctrlKey||ah.metaKey;break;case 39:if(ah.ctrlKey||ah.metaKey){I.datepicker._adjustDate(ah.target,(ag?-1:+1),"D")}ak=ah.ctrlKey||ah.metaKey;if(ah.originalEvent.altKey){I.datepicker._adjustDate(ah.target,(ah.ctrlKey?+I.datepicker._get(ai,"stepBigMonths"):+I.datepicker._get(ai,"stepMonths")),"M")}break;case 40:if(ah.ctrlKey||ah.metaKey){I.datepicker._adjustDate(ah.target,+7,"D")}ak=ah.ctrlKey||ah.metaKey;break;default:ak=false}}else{if(ah.keyCode===36&&ah.ctrlKey){I.datepicker._showDatepicker(this)}else{ak=false}}if(ak){ah.preventDefault();ah.stopPropagation()}},_doKeyPress:function(ag){var af,ae,ah=I.datepicker._getInst(ag.target);if(I.datepicker._get(ah,"constrainInput")){af=I.datepicker._possibleChars(I.datepicker._get(ah,"dateFormat"));ae=String.fromCharCode(ag.charCode==null?ag.keyCode:ag.charCode);return ag.ctrlKey||ag.metaKey||(ae<" "||!af||af.indexOf(ae)>-1)}},_doKeyUp:function(ag){var ae,ah=I.datepicker._getInst(ag.target);if(ah.input.val()!==ah.lastVal){try{ae=I.datepicker.parseDate(I.datepicker._get(ah,"dateFormat"),(ah.input?ah.input.val():null),I.datepicker._getFormatConfig(ah));if(ae){I.datepicker._setDateFromField(ah);I.datepicker._updateAlternate(ah);I.datepicker._updateDatepicker(ah)}}catch(af){}}return true},_showDatepicker:function(af){af=af.target||af;if(af.nodeName.toLowerCase()!=="input"){af=I("input",af.parentNode)[0]}if(I.datepicker._isDisabledDatepicker(af)||I.datepicker._lastInput===af){return}var ah,al,ag,aj,ak,ae,ai;ah=I.datepicker._getInst(af);if(I.datepicker._curInst&&I.datepicker._curInst!==ah){I.datepicker._curInst.dpDiv.stop(true,true);if(ah&&I.datepicker._datepickerShowing){I.datepicker._hideDatepicker(I.datepicker._curInst.input[0])}}al=I.datepicker._get(ah,"beforeShow");ag=al?al.apply(af,[af,ah]):{};if(ag===false){return}x(ah.settings,ag);ah.lastVal=null;I.datepicker._lastInput=af;I.datepicker._setDateFromField(ah);if(I.datepicker._inDialog){af.value=""}if(!I.datepicker._pos){I.datepicker._pos=I.datepicker._findPos(af);I.datepicker._pos[1]+=af.offsetHeight}aj=false;I(af).parents().each(function(){aj|=I(this).css("position")==="fixed";return !aj});ak={left:I.datepicker._pos[0],top:I.datepicker._pos[1]};I.datepicker._pos=null;ah.dpDiv.empty();ah.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});I.datepicker._updateDatepicker(ah);ak=I.datepicker._checkOffset(ah,ak,aj);ah.dpDiv.css({position:(I.datepicker._inDialog&&I.blockUI?"static":(aj?"fixed":"absolute")),display:"none",left:ak.left+"px",top:ak.top+"px"});if(!ah.inline){ae=I.datepicker._get(ah,"showAnim");ai=I.datepicker._get(ah,"duration");ah.dpDiv.css("z-index",t(I(af))+1);I.datepicker._datepickerShowing=true;if(I.effects&&I.effects.effect[ae]){ah.dpDiv.show(ae,I.datepicker._get(ah,"showOptions"),ai)}else{ah.dpDiv[ae||"show"](ae?ai:null)}if(I.datepicker._shouldFocusInput(ah)){ah.input.focus()}I.datepicker._curInst=ah}},_updateDatepicker:function(ah){this.maxRows=4;l=ah;ah.dpDiv.empty().append(this._generateHTML(ah));this._attachHandlers(ah);var aj,ae=this._getNumberOfMonths(ah),ai=ae[1],ag=17,af=ah.dpDiv.find("."+this._dayOverClass+" a");if(af.length>0){p.apply(af.get(0))}ah.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");if(ai>1){ah.dpDiv.addClass("ui-datepicker-multi-"+ai).css("width",(ag*ai)+"em")}ah.dpDiv[(ae[0]!==1||ae[1]!==1?"add":"remove")+"Class"]("ui-datepicker-multi");ah.dpDiv[(this._get(ah,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");if(ah===I.datepicker._curInst&&I.datepicker._datepickerShowing&&I.datepicker._shouldFocusInput(ah)){ah.input.focus()}if(ah.yearshtml){aj=ah.yearshtml;setTimeout(function(){if(aj===ah.yearshtml&&ah.yearshtml){ah.dpDiv.find("select.ui-datepicker-year:first").replaceWith(ah.yearshtml)}aj=ah.yearshtml=null},0)}},_shouldFocusInput:function(ae){return ae.input&&ae.input.is(":visible")&&!ae.input.is(":disabled")&&!ae.input.is(":focus")},_checkOffset:function(aj,ah,ag){var ai=aj.dpDiv.outerWidth(),am=aj.dpDiv.outerHeight(),al=aj.input?aj.input.outerWidth():0,ae=aj.input?aj.input.outerHeight():0,ak=document.documentElement.clientWidth+(ag?0:I(document).scrollLeft()),af=document.documentElement.clientHeight+(ag?0:I(document).scrollTop());ah.left-=(this._get(aj,"isRTL")?(ai-al):0);ah.left-=(ag&&ah.left===aj.input.offset().left)?I(document).scrollLeft():0;ah.top-=(ag&&ah.top===(aj.input.offset().top+ae))?I(document).scrollTop():0;ah.left-=Math.min(ah.left,(ah.left+ai>ak&&ak>ai)?Math.abs(ah.left+ai-ak):0);ah.top-=Math.min(ah.top,(ah.top+am>af&&af>am)?Math.abs(am+ae):0);return ah},_findPos:function(ah){var ae,ag=this._getInst(ah),af=this._get(ag,"isRTL");while(ah&&(ah.type==="hidden"||ah.nodeType!==1||I.expr.filters.hidden(ah))){ah=ah[af?"previousSibling":"nextSibling"]}ae=I(ah).offset();return[ae.left,ae.top]},_hideDatepicker:function(ag){var af,aj,ai,ae,ah=this._curInst;if(!ah||(ag&&ah!==I.data(ag,"datepicker"))){return}if(this._datepickerShowing){af=this._get(ah,"showAnim");aj=this._get(ah,"duration");ai=function(){I.datepicker._tidyDialog(ah)};if(I.effects&&(I.effects.effect[af]||I.effects[af])){ah.dpDiv.hide(af,I.datepicker._get(ah,"showOptions"),aj,ai)}else{ah.dpDiv[(af==="slideDown"?"slideUp":(af==="fadeIn"?"fadeOut":"hide"))]((af?aj:null),ai)}if(!af){ai()}this._datepickerShowing=false;ae=this._get(ah,"onClose");if(ae){ae.apply((ah.input?ah.input[0]:null),[(ah.input?ah.input.val():""),ah])}this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if(I.blockUI){I.unblockUI();I("body").append(this.dpDiv)}}this._inDialog=false}},_tidyDialog:function(ae){ae.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(af){if(!I.datepicker._curInst){return}var ae=I(af.target),ag=I.datepicker._getInst(ae[0]);if(((ae[0].id!==I.datepicker._mainDivId&&ae.parents("#"+I.datepicker._mainDivId).length===0&&!ae.hasClass(I.datepicker.markerClassName)&&!ae.closest("."+I.datepicker._triggerClass).length&&I.datepicker._datepickerShowing&&!(I.datepicker._inDialog&&I.blockUI)))||(ae.hasClass(I.datepicker.markerClassName)&&I.datepicker._curInst!==ag)){I.datepicker._hideDatepicker()}},_adjustDate:function(ai,ah,ag){var af=I(ai),ae=this._getInst(af[0]);if(this._isDisabledDatepicker(af[0])){return}this._adjustInstDate(ae,ah+(ag==="M"?this._get(ae,"showCurrentAtPos"):0),ag);this._updateDatepicker(ae)},_gotoToday:function(ah){var ae,ag=I(ah),af=this._getInst(ag[0]);if(this._get(af,"gotoCurrent")&&af.currentDay){af.selectedDay=af.currentDay;af.drawMonth=af.selectedMonth=af.currentMonth;af.drawYear=af.selectedYear=af.currentYear}else{ae=new Date();af.selectedDay=ae.getDate();af.drawMonth=af.selectedMonth=ae.getMonth();af.drawYear=af.selectedYear=ae.getFullYear()}this._notifyChange(af);this._adjustDate(ag)},_selectMonthYear:function(ai,ae,ah){var ag=I(ai),af=this._getInst(ag[0]);af["selected"+(ah==="M"?"Month":"Year")]=af["draw"+(ah==="M"?"Month":"Year")]=parseInt(ae.options[ae.selectedIndex].value,10);this._notifyChange(af);this._adjustDate(ag)},_selectDay:function(aj,ah,ae,ai){var af,ag=I(aj);if(I(ai).hasClass(this._unselectableClass)||this._isDisabledDatepicker(ag[0])){return}af=this._getInst(ag[0]);af.selectedDay=af.currentDay=I("a",ai).html();af.selectedMonth=af.currentMonth=ah;af.selectedYear=af.currentYear=ae;this._selectDate(aj,this._formatDate(af,af.currentDay,af.currentMonth,af.currentYear))},_clearDate:function(af){var ae=I(af);this._selectDate(ae,"")},_selectDate:function(ai,ae){var af,ah=I(ai),ag=this._getInst(ah[0]);ae=(ae!=null?ae:this._formatDate(ag));if(ag.input){ag.input.val(ae)}this._updateAlternate(ag);af=this._get(ag,"onSelect");if(af){af.apply((ag.input?ag.input[0]:null),[ae,ag])}else{if(ag.input){ag.input.trigger("change")}}if(ag.inline){this._updateDatepicker(ag)}else{this._hideDatepicker();this._lastInput=ag.input[0];if(typeof(ag.input[0])!=="object"){ag.input.focus()}this._lastInput=null}},_updateAlternate:function(ai){var ah,ag,ae,af=this._get(ai,"altField");if(af){ah=this._get(ai,"altFormat")||this._get(ai,"dateFormat");ag=this._getDate(ai);ae=this.formatDate(ah,ag,this._getFormatConfig(ai));I(af).each(function(){I(this).val(ae)})}},noWeekends:function(af){var ae=af.getDay();return[(ae>0&&ae<6),""]},iso8601Week:function(ae){var af,ag=new Date(ae.getTime());ag.setDate(ag.getDate()+4-(ag.getDay()||7));af=ag.getTime();ag.setMonth(0);ag.setDate(1);return Math.floor(Math.round((af-ag)/86400000)/7)+1},parseDate:function(av,ap,ax){if(av==null||ap==null){throw"Invalid arguments"}ap=(typeof ap==="object"?ap.toString():ap+"");if(ap===""){return null}var ah,ar,af,aw=0,ak=(ax?ax.shortYearCutoff:null)||this._defaults.shortYearCutoff,ag=(typeof ak!=="string"?ak:new Date().getFullYear()%100+parseInt(ak,10)),an=(ax?ax.dayNamesShort:null)||this._defaults.dayNamesShort,az=(ax?ax.dayNames:null)||this._defaults.dayNames,ae=(ax?ax.monthNamesShort:null)||this._defaults.monthNamesShort,ai=(ax?ax.monthNames:null)||this._defaults.monthNames,aj=-1,aA=-1,au=-1,am=-1,at=false,ay,ao=function(aC){var aD=(ah+1<av.length&&av.charAt(ah+1)===aC);if(aD){ah++}return aD},aB=function(aE){var aC=ao(aE),aF=(aE==="@"?14:(aE==="!"?20:(aE==="y"&&aC?4:(aE==="o"?3:2)))),aH=(aE==="y"?aF:1),aG=new RegExp("^\\d{"+aH+","+aF+"}"),aD=ap.substring(aw).match(aG);if(!aD){throw"Missing number at position "+aw}aw+=aD[0].length;return parseInt(aD[0],10)},al=function(aD,aE,aG){var aC=-1,aF=I.map(ao(aD)?aG:aE,function(aI,aH){return[[aH,aI]]}).sort(function(aI,aH){return -(aI[1].length-aH[1].length)});I.each(aF,function(aI,aJ){var aH=aJ[1];if(ap.substr(aw,aH.length).toLowerCase()===aH.toLowerCase()){aC=aJ[0];aw+=aH.length;return false}});if(aC!==-1){return aC+1}else{throw"Unknown name at position "+aw}},aq=function(){if(ap.charAt(aw)!==av.charAt(ah)){throw"Unexpected literal at position "+aw}aw++};for(ah=0;ah<av.length;ah++){if(at){if(av.charAt(ah)==="'"&&!ao("'")){at=false}else{aq()}}else{switch(av.charAt(ah)){case"d":au=aB("d");break;case"D":al("D",an,az);break;case"o":am=aB("o");break;case"m":aA=aB("m");break;case"M":aA=al("M",ae,ai);break;case"y":aj=aB("y");break;case"@":ay=new Date(aB("@"));aj=ay.getFullYear();aA=ay.getMonth()+1;au=ay.getDate();break;case"!":ay=new Date((aB("!")-this._ticksTo1970)/10000);aj=ay.getFullYear();aA=ay.getMonth()+1;au=ay.getDate();break;case"'":if(ao("'")){aq()}else{at=true}break;default:aq()}}}if(aw<ap.length){af=ap.substr(aw);if(!/^\s+/.test(af)){throw"Extra/unparsed characters found in date: "+af}}if(aj===-1){aj=new Date().getFullYear()}else{if(aj<100){aj+=new Date().getFullYear()-new Date().getFullYear()%100+(aj<=ag?0:-100)}}if(am>-1){aA=1;au=am;do{ar=this._getDaysInMonth(aj,aA-1);if(au<=ar){break}aA++;au-=ar}while(true)}ay=this._daylightSavingAdjust(new Date(aj,aA-1,au));if(ay.getFullYear()!==aj||ay.getMonth()+1!==aA||ay.getDate()!==au){throw"Invalid date"}return ay},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(((1970-1)*365+Math.floor(1970/4)-Math.floor(1970/100)+Math.floor(1970/400))*24*60*60*10000000),formatDate:function(an,ah,ai){if(!ah){return""}var ap,aq=(ai?ai.dayNamesShort:null)||this._defaults.dayNamesShort,af=(ai?ai.dayNames:null)||this._defaults.dayNames,al=(ai?ai.monthNamesShort:null)||this._defaults.monthNamesShort,aj=(ai?ai.monthNames:null)||this._defaults.monthNames,ao=function(ar){var at=(ap+1<an.length&&an.charAt(ap+1)===ar);if(at){ap++}return at},ae=function(au,av,ar){var at=""+av;if(ao(au)){while(at.length<ar){at="0"+at}}return at},ak=function(ar,au,at,av){return(ao(ar)?av[au]:at[au])},ag="",am=false;if(ah){for(ap=0;ap<an.length;ap++){if(am){if(an.charAt(ap)==="'"&&!ao("'")){am=false}else{ag+=an.charAt(ap)}}else{switch(an.charAt(ap)){case"d":ag+=ae("d",ah.getDate(),2);break;case"D":ag+=ak("D",ah.getDay(),aq,af);break;case"o":ag+=ae("o",Math.round((new Date(ah.getFullYear(),ah.getMonth(),ah.getDate()).getTime()-new Date(ah.getFullYear(),0,0).getTime())/86400000),3);break;case"m":ag+=ae("m",ah.getMonth()+1,2);break;case"M":ag+=ak("M",ah.getMonth(),al,aj);break;case"y":ag+=(ao("y")?ah.getFullYear():(ah.getYear()%100<10?"0":"")+ah.getYear()%100);break;case"@":ag+=ah.getTime();break;case"!":ag+=ah.getTime()*10000+this._ticksTo1970;break;case"'":if(ao("'")){ag+="'"}else{am=true}break;default:ag+=an.charAt(ap)}}}}return ag},_possibleChars:function(ai){var ah,ag="",af=false,ae=function(aj){var ak=(ah+1<ai.length&&ai.charAt(ah+1)===aj);if(ak){ah++}return ak};for(ah=0;ah<ai.length;ah++){if(af){if(ai.charAt(ah)==="'"&&!ae("'")){af=false}else{ag+=ai.charAt(ah)}}else{switch(ai.charAt(ah)){case"d":case"m":case"y":case"@":ag+="0123456789";break;case"D":case"M":return null;case"'":if(ae("'")){ag+="'"}else{af=true}break;default:ag+=ai.charAt(ah)}}}return ag},_get:function(af,ae){return af.settings[ae]!==undefined?af.settings[ae]:this._defaults[ae]},_setDateFromField:function(aj,ag){if(aj.input.val()===aj.lastVal){return}var ae=this._get(aj,"dateFormat"),al=aj.lastVal=aj.input?aj.input.val():null,ak=this._getDefaultDate(aj),af=ak,ah=this._getFormatConfig(aj);try{af=this.parseDate(ae,al,ah)||ak}catch(ai){al=(ag?"":al)}aj.selectedDay=af.getDate();aj.drawMonth=aj.selectedMonth=af.getMonth();aj.drawYear=aj.selectedYear=af.getFullYear();aj.currentDay=(al?af.getDate():0);aj.currentMonth=(al?af.getMonth():0);aj.currentYear=(al?af.getFullYear():0);this._adjustInstDate(aj)},_getDefaultDate:function(ae){return this._restrictMinMax(ae,this._determineDate(ae,this._get(ae,"defaultDate"),new Date()))},_determineDate:function(ai,af,aj){var ah=function(al){var ak=new Date();ak.setDate(ak.getDate()+al);return ak},ag=function(ar){try{return I.datepicker.parseDate(I.datepicker._get(ai,"dateFormat"),ar,I.datepicker._getFormatConfig(ai))}catch(aq){}var al=(ar.toLowerCase().match(/^c/)?I.datepicker._getDate(ai):null)||new Date(),am=al.getFullYear(),ap=al.getMonth(),ak=al.getDate(),ao=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,an=ao.exec(ar);while(an){switch(an[2]||"d"){case"d":case"D":ak+=parseInt(an[1],10);break;case"w":case"W":ak+=parseInt(an[1],10)*7;break;case"m":case"M":ap+=parseInt(an[1],10);ak=Math.min(ak,I.datepicker._getDaysInMonth(am,ap));break;case"y":case"Y":am+=parseInt(an[1],10);ak=Math.min(ak,I.datepicker._getDaysInMonth(am,ap));break}an=ao.exec(ar)}return new Date(am,ap,ak)},ae=(af==null||af===""?aj:(typeof af==="string"?ag(af):(typeof af==="number"?(isNaN(af)?aj:ah(af)):new Date(af.getTime()))));ae=(ae&&ae.toString()==="Invalid Date"?aj:ae);if(ae){ae.setHours(0);ae.setMinutes(0);ae.setSeconds(0);ae.setMilliseconds(0)}return this._daylightSavingAdjust(ae)},_daylightSavingAdjust:function(ae){if(!ae){return null}ae.setHours(ae.getHours()>12?ae.getHours()+2:0);return ae},_setDate:function(ak,ah,aj){var ae=!ah,ag=ak.selectedMonth,ai=ak.selectedYear,af=this._restrictMinMax(ak,this._determineDate(ak,ah,new Date()));ak.selectedDay=ak.currentDay=af.getDate();ak.drawMonth=ak.selectedMonth=ak.currentMonth=af.getMonth();ak.drawYear=ak.selectedYear=ak.currentYear=af.getFullYear();if((ag!==ak.selectedMonth||ai!==ak.selectedYear)&&!aj){this._notifyChange(ak)}this._adjustInstDate(ak);if(ak.input){ak.input.val(ae?"":this._formatDate(ak))}},_getDate:function(af){var ae=(!af.currentYear||(af.input&&af.input.val()==="")?null:this._daylightSavingAdjust(new Date(af.currentYear,af.currentMonth,af.currentDay)));return ae},_attachHandlers:function(af){var ae=this._get(af,"stepMonths"),ag="#"+af.id.replace(/\\\\/g,"\\");af.dpDiv.find("[data-handler]").map(function(){var ah={prev:function(){I.datepicker._adjustDate(ag,-ae,"M")},next:function(){I.datepicker._adjustDate(ag,+ae,"M")},hide:function(){I.datepicker._hideDatepicker()},today:function(){I.datepicker._gotoToday(ag)},selectDay:function(){I.datepicker._selectDay(ag,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this);return false},selectMonth:function(){I.datepicker._selectMonthYear(ag,this,"M");return false},selectYear:function(){I.datepicker._selectMonthYear(ag,this,"Y");return false}};I(this).bind(this.getAttribute("data-event"),ah[this.getAttribute("data-handler")])})},_generateHTML:function(aV){var ay,ax,aQ,aI,ai,aZ,aT,aM,a2,aG,a6,ap,ar,aq,af,aY,an,aB,a1,aO,a7,aA,aF,ao,aj,aR,aK,aN,aL,am,aD,at,aU,aX,ah,a0,a4,aJ,au,aW=new Date(),az=this._daylightSavingAdjust(new Date(aW.getFullYear(),aW.getMonth(),aW.getDate())),a3=this._get(aV,"isRTL"),a5=this._get(aV,"showButtonPanel"),aP=this._get(aV,"hideIfNoPrevNext"),aE=this._get(aV,"navigationAsDateFormat"),av=this._getNumberOfMonths(aV),al=this._get(aV,"showCurrentAtPos"),aH=this._get(aV,"stepMonths"),aC=(av[0]!==1||av[1]!==1),ag=this._daylightSavingAdjust((!aV.currentDay?new Date(9999,9,9):new Date(aV.currentYear,aV.currentMonth,aV.currentDay))),ak=this._getMinMaxDate(aV,"min"),aw=this._getMinMaxDate(aV,"max"),ae=aV.drawMonth-al,aS=aV.drawYear;if(ae<0){ae+=12;aS--}if(aw){ay=this._daylightSavingAdjust(new Date(aw.getFullYear(),aw.getMonth()-(av[0]*av[1])+1,aw.getDate()));ay=(ak&&ay<ak?ak:ay);while(this._daylightSavingAdjust(new Date(aS,ae,1))>ay){ae--;if(ae<0){ae=11;aS--}}}aV.drawMonth=ae;aV.drawYear=aS;ax=this._get(aV,"prevText");ax=(!aE?ax:this.formatDate(ax,this._daylightSavingAdjust(new Date(aS,ae-aH,1)),this._getFormatConfig(aV)));aQ=(this._canAdjustMonth(aV,-1,aS,ae)?"<a class='ui-datepicker-prev ui-corner-all' data-handler='prev' data-event='click' title='"+ax+"'><span class='ui-icon ui-icon-circle-triangle-"+(a3?"e":"w")+"'>"+ax+"</span></a>":(aP?"":"<a class='ui-datepicker-prev ui-corner-all ui-state-disabled' title='"+ax+"'><span class='ui-icon ui-icon-circle-triangle-"+(a3?"e":"w")+"'>"+ax+"</span></a>"));aI=this._get(aV,"nextText");aI=(!aE?aI:this.formatDate(aI,this._daylightSavingAdjust(new Date(aS,ae+aH,1)),this._getFormatConfig(aV)));ai=(this._canAdjustMonth(aV,+1,aS,ae)?"<a class='ui-datepicker-next ui-corner-all' data-handler='next' data-event='click' title='"+aI+"'><span class='ui-icon ui-icon-circle-triangle-"+(a3?"w":"e")+"'>"+aI+"</span></a>":(aP?"":"<a class='ui-datepicker-next ui-corner-all ui-state-disabled' title='"+aI+"'><span class='ui-icon ui-icon-circle-triangle-"+(a3?"w":"e")+"'>"+aI+"</span></a>"));aZ=this._get(aV,"currentText");aT=(this._get(aV,"gotoCurrent")&&aV.currentDay?ag:az);aZ=(!aE?aZ:this.formatDate(aZ,aT,this._getFormatConfig(aV)));aM=(!aV.inline?"<button type='button' class='ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all' data-handler='hide' data-event='click'>"+this._get(aV,"closeText")+"</button>":"");a2=(a5)?"<div class='ui-datepicker-buttonpane ui-widget-content'>"+(a3?aM:"")+(this._isInRange(aV,aT)?"<button type='button' class='ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all' data-handler='today' data-event='click'>"+aZ+"</button>":"")+(a3?"":aM)+"</div>":"";aG=parseInt(this._get(aV,"firstDay"),10);aG=(isNaN(aG)?0:aG);a6=this._get(aV,"showWeek");ap=this._get(aV,"dayNames");ar=this._get(aV,"dayNamesMin");aq=this._get(aV,"monthNames");af=this._get(aV,"monthNamesShort");aY=this._get(aV,"beforeShowDay");an=this._get(aV,"showOtherMonths");aB=this._get(aV,"selectOtherMonths");a1=this._getDefaultDate(aV);aO="";a7;for(aA=0;aA<av[0];aA++){aF="";this.maxRows=4;for(ao=0;ao<av[1];ao++){aj=this._daylightSavingAdjust(new Date(aS,ae,aV.selectedDay));aR=" ui-corner-all";aK="";if(aC){aK+="<div class='ui-datepicker-group";if(av[1]>1){switch(ao){case 0:aK+=" ui-datepicker-group-first";aR=" ui-corner-"+(a3?"right":"left");break;case av[1]-1:aK+=" ui-datepicker-group-last";aR=" ui-corner-"+(a3?"left":"right");break;default:aK+=" ui-datepicker-group-middle";aR="";break}}aK+="'>"}aK+="<div class='ui-datepicker-header ui-widget-header ui-helper-clearfix"+aR+"'>"+(/all|left/.test(aR)&&aA===0?(a3?ai:aQ):"")+(/all|right/.test(aR)&&aA===0?(a3?aQ:ai):"")+this._generateMonthYearHeader(aV,ae,aS,ak,aw,aA>0||ao>0,aq,af)+"</div><table class='ui-datepicker-calendar'><thead><tr>";aN=(a6?"<th class='ui-datepicker-week-col'>"+this._get(aV,"weekHeader")+"</th>":"");for(a7=0;a7<7;a7++){aL=(a7+aG)%7;aN+="<th scope='col'"+((a7+aG+6)%7>=5?" class='ui-datepicker-week-end'":"")+"><span title='"+ap[aL]+"'>"+ar[aL]+"</span></th>"}aK+=aN+"</tr></thead><tbody>";am=this._getDaysInMonth(aS,ae);if(aS===aV.selectedYear&&ae===aV.selectedMonth){aV.selectedDay=Math.min(aV.selectedDay,am)}aD=(this._getFirstDayOfMonth(aS,ae)-aG+7)%7;at=Math.ceil((aD+am)/7);aU=(aC?this.maxRows>at?this.maxRows:at:at);this.maxRows=aU;aX=this._daylightSavingAdjust(new Date(aS,ae,1-aD));for(ah=0;ah<aU;ah++){aK+="<tr>";a0=(!a6?"":"<td class='ui-datepicker-week-col'>"+this._get(aV,"calculateWeek")(aX)+"</td>");for(a7=0;a7<7;a7++){a4=(aY?aY.apply((aV.input?aV.input[0]:null),[aX]):[true,""]);aJ=(aX.getMonth()!==ae);au=(aJ&&!aB)||!a4[0]||(ak&&aX<ak)||(aw&&aX>aw);a0+="<td class='"+((a7+aG+6)%7>=5?" ui-datepicker-week-end":"")+(aJ?" ui-datepicker-other-month":"")+((aX.getTime()===aj.getTime()&&ae===aV.selectedMonth&&aV._keyEvent)||(a1.getTime()===aX.getTime()&&a1.getTime()===aj.getTime())?" "+this._dayOverClass:"")+(au?" "+this._unselectableClass+" ui-state-disabled":"")+(aJ&&!an?"":" "+a4[1]+(aX.getTime()===ag.getTime()?" "+this._currentClass:"")+(aX.getTime()===az.getTime()?" ui-datepicker-today":""))+"'"+((!aJ||an)&&a4[2]?" title='"+a4[2].replace(/'/g,"&#39;")+"'":"")+(au?"":" data-handler='selectDay' data-event='click' data-month='"+aX.getMonth()+"' data-year='"+aX.getFullYear()+"'")+">"+(aJ&&!an?"&#xa0;":(au?"<span class='ui-state-default'>"+aX.getDate()+"</span>":"<a class='ui-state-default"+(aX.getTime()===az.getTime()?" ui-state-highlight":"")+(aX.getTime()===ag.getTime()?" ui-state-active":"")+(aJ?" ui-priority-secondary":"")+"' href='#'>"+aX.getDate()+"</a>"))+"</td>";aX.setDate(aX.getDate()+1);aX=this._daylightSavingAdjust(aX)}aK+=a0+"</tr>"}ae++;if(ae>11){ae=0;aS++}aK+="</tbody></table>"+(aC?"</div>"+((av[0]>0&&ao===av[1]-1)?"<div class='ui-datepicker-row-break'></div>":""):"");aF+=aK}aO+=aF}aO+=a2;aV._keyEvent=false;return aO},_generateMonthYearHeader:function(ai,ag,aq,ak,ao,ar,am,ae){var aw,af,ax,au,aj,at,ap,al,ah=this._get(ai,"changeMonth"),ay=this._get(ai,"changeYear"),az=this._get(ai,"showMonthAfterYear"),an="<div class='ui-datepicker-title'>",av="";if(ar||!ah){av+="<span class='ui-datepicker-month'>"+am[ag]+"</span>"}else{aw=(ak&&ak.getFullYear()===aq);af=(ao&&ao.getFullYear()===aq);av+="<select class='ui-datepicker-month' data-handler='selectMonth' data-event='change'>";for(ax=0;ax<12;ax++){if((!aw||ax>=ak.getMonth())&&(!af||ax<=ao.getMonth())){av+="<option value='"+ax+"'"+(ax===ag?" selected='selected'":"")+">"+ae[ax]+"</option>"}}av+="</select>"}if(!az){an+=av+(ar||!(ah&&ay)?"&#xa0;":"")}if(!ai.yearshtml){ai.yearshtml="";if(ar||!ay){an+="<span class='ui-datepicker-year'>"+aq+"</span>"}else{au=this._get(ai,"yearRange").split(":");aj=new Date().getFullYear();at=function(aB){var aA=(aB.match(/c[+\-].*/)?aq+parseInt(aB.substring(1),10):(aB.match(/[+\-].*/)?aj+parseInt(aB,10):parseInt(aB,10)));return(isNaN(aA)?aj:aA)};ap=at(au[0]);al=Math.max(ap,at(au[1]||""));ap=(ak?Math.max(ap,ak.getFullYear()):ap);al=(ao?Math.min(al,ao.getFullYear()):al);ai.yearshtml+="<select class='ui-datepicker-year' data-handler='selectYear' data-event='change'>";for(;ap<=al;ap++){ai.yearshtml+="<option value='"+ap+"'"+(ap===aq?" selected='selected'":"")+">"+ap+"</option>"}ai.yearshtml+="</select>";an+=ai.yearshtml;ai.yearshtml=null}}an+=this._get(ai,"yearSuffix");if(az){an+=(ar||!(ah&&ay)?"&#xa0;":"")+av}an+="</div>";return an},_adjustInstDate:function(ah,ak,aj){var ag=ah.drawYear+(aj==="Y"?ak:0),ai=ah.drawMonth+(aj==="M"?ak:0),ae=Math.min(ah.selectedDay,this._getDaysInMonth(ag,ai))+(aj==="D"?ak:0),af=this._restrictMinMax(ah,this._daylightSavingAdjust(new Date(ag,ai,ae)));ah.selectedDay=af.getDate();ah.drawMonth=ah.selectedMonth=af.getMonth();ah.drawYear=ah.selectedYear=af.getFullYear();if(aj==="M"||aj==="Y"){this._notifyChange(ah)}},_restrictMinMax:function(ah,af){var ag=this._getMinMaxDate(ah,"min"),ai=this._getMinMaxDate(ah,"max"),ae=(ag&&af<ag?ag:af);return(ai&&ae>ai?ai:ae)},_notifyChange:function(af){var ae=this._get(af,"onChangeMonthYear");if(ae){ae.apply((af.input?af.input[0]:null),[af.selectedYear,af.selectedMonth+1,af])}},_getNumberOfMonths:function(af){var ae=this._get(af,"numberOfMonths");return(ae==null?[1,1]:(typeof ae==="number"?[1,ae]:ae))},_getMinMaxDate:function(af,ae){return this._determineDate(af,this._get(af,ae+"Date"),null)},_getDaysInMonth:function(ae,af){return 32-this._daylightSavingAdjust(new Date(ae,af,32)).getDate()},_getFirstDayOfMonth:function(ae,af){return new Date(ae,af,1).getDay()},_canAdjustMonth:function(ah,aj,ag,ai){var ae=this._getNumberOfMonths(ah),af=this._daylightSavingAdjust(new Date(ag,ai+(aj<0?aj:ae[0]*ae[1]),1));if(aj<0){af.setDate(this._getDaysInMonth(af.getFullYear(),af.getMonth()))}return this._isInRange(ah,af)},_isInRange:function(ai,ag){var af,al,ah=this._getMinMaxDate(ai,"min"),ae=this._getMinMaxDate(ai,"max"),am=null,aj=null,ak=this._get(ai,"yearRange");if(ak){af=ak.split(":");al=new Date().getFullYear();am=parseInt(af[0],10);aj=parseInt(af[1],10);if(af[0].match(/[+\-].*/)){am+=al}if(af[1].match(/[+\-].*/)){aj+=al}}return((!ah||ag.getTime()>=ah.getTime())&&(!ae||ag.getTime()<=ae.getTime())&&(!am||ag.getFullYear()>=am)&&(!aj||ag.getFullYear()<=aj))},_getFormatConfig:function(ae){var af=this._get(ae,"shortYearCutoff");af=(typeof af!=="string"?af:new Date().getFullYear()%100+parseInt(af,10));return{shortYearCutoff:af,dayNamesShort:this._get(ae,"dayNamesShort"),dayNames:this._get(ae,"dayNames"),monthNamesShort:this._get(ae,"monthNamesShort"),monthNames:this._get(ae,"monthNames")}},_formatDate:function(ah,ae,ai,ag){if(!ae){ah.currentDay=ah.selectedDay;ah.currentMonth=ah.selectedMonth;ah.currentYear=ah.selectedYear}var af=(ae?(typeof ae==="object"?ae:this._daylightSavingAdjust(new Date(ag,ai,ae))):this._daylightSavingAdjust(new Date(ah.currentYear,ah.currentMonth,ah.currentDay)));return this.formatDate(this._get(ah,"dateFormat"),af,this._getFormatConfig(ah))}});function h(af){var ae="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return af.delegate(ae,"mouseout",function(){I(this).removeClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!==-1){I(this).removeClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!==-1){I(this).removeClass("ui-datepicker-next-hover")}}).delegate(ae,"mouseover",p)}function p(){if(!I.datepicker._isDisabledDatepicker(l.inline?l.dpDiv.parent()[0]:l.input[0])){I(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");I(this).addClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!==-1){I(this).addClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!==-1){I(this).addClass("ui-datepicker-next-hover")}}}function x(ag,af){I.extend(ag,af);for(var ae in af){if(af[ae]==null){ag[ae]=af[ae]}}return ag}I.fn.datepicker=function(af){if(!this.length){return this}if(!I.datepicker.initialized){I(document).mousedown(I.datepicker._checkExternalClick);I.datepicker.initialized=true}if(I("#"+I.datepicker._mainDivId).length===0){I("body").append(I.datepicker.dpDiv)}var ae=Array.prototype.slice.call(arguments,1);if(typeof af==="string"&&(af==="isDisabled"||af==="getDate"||af==="widget")){return I.datepicker["_"+af+"Datepicker"].apply(I.datepicker,[this[0]].concat(ae))}if(af==="option"&&arguments.length===2&&typeof arguments[1]==="string"){return I.datepicker["_"+af+"Datepicker"].apply(I.datepicker,[this[0]].concat(ae))}return this.each(function(){typeof af==="string"?I.datepicker["_"+af+"Datepicker"].apply(I.datepicker,[this].concat(ae)):I.datepicker._attachDatepicker(this,af)})};I.datepicker=new ac();I.datepicker.initialized=false;I.datepicker.uuid=new Date().getTime();I.datepicker.version="1.11.2";var E=I.datepicker;
105
- /*!
106
- * jQuery UI Draggable 1.11.2
107
- * http://jqueryui.com
108
- *
109
- * Copyright 2014 jQuery Foundation and other contributors
110
- * Released under the MIT license.
111
- * http://jquery.org/license
112
- *
113
- * http://api.jqueryui.com/draggable/
114
- */
115
- I.widget("ui.draggable",I.ui.mouse,{version:"1.11.2",widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false,drag:null,start:null,stop:null},_create:function(){if(this.options.helper==="original"){this._setPositionRelative()}if(this.options.addClasses){this.element.addClass("ui-draggable")}if(this.options.disabled){this.element.addClass("ui-draggable-disabled")}this._setHandleClassName();this._mouseInit()},_setOption:function(ae,af){this._super(ae,af);if(ae==="handle"){this._removeHandleClassName();this._setHandleClassName()}},_destroy:function(){if((this.helper||this.element).is(".ui-draggable-dragging")){this.destroyOnClear=true;return}this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._removeHandleClassName();this._mouseDestroy()},_mouseCapture:function(ae){var af=this.options;this._blurActiveElement(ae);if(this.helper||af.disabled||I(ae.target).closest(".ui-resizable-handle").length>0){return false}this.handle=this._getHandle(ae);if(!this.handle){return false}this._blockFrames(af.iframeFix===true?"iframe":af.iframeFix);return true},_blockFrames:function(ae){this.iframeBlocks=this.document.find(ae).map(function(){var af=I(this);return I("<div>").css("position","absolute").appendTo(af.parent()).outerWidth(af.outerWidth()).outerHeight(af.outerHeight()).offset(af.offset())[0]})},_unblockFrames:function(){if(this.iframeBlocks){this.iframeBlocks.remove();delete this.iframeBlocks}},_blurActiveElement:function(ag){var ae=this.document[0];if(!this.handleElement.is(ag.target)){return}try{if(ae.activeElement&&ae.activeElement.nodeName.toLowerCase()!=="body"){I(ae.activeElement).blur()}}catch(af){}},_mouseStart:function(ae){var af=this.options;this.helper=this._createHelper(ae);this.helper.addClass("ui-draggable-dragging");this._cacheHelperProportions();if(I.ui.ddmanager){I.ui.ddmanager.current=this}this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent(true);this.offsetParent=this.helper.offsetParent();this.hasFixedAncestor=this.helper.parents().filter(function(){return I(this).css("position")==="fixed"}).length>0;this.positionAbs=this.element.offset();this._refreshOffsets(ae);this.originalPosition=this.position=this._generatePosition(ae,false);this.originalPageX=ae.pageX;this.originalPageY=ae.pageY;(af.cursorAt&&this._adjustOffsetFromHelper(af.cursorAt));this._setContainment();if(this._trigger("start",ae)===false){this._clear();return false}this._cacheHelperProportions();if(I.ui.ddmanager&&!af.dropBehaviour){I.ui.ddmanager.prepareOffsets(this,ae)}this._normalizeRightBottom();this._mouseDrag(ae,true);if(I.ui.ddmanager){I.ui.ddmanager.dragStart(this,ae)}return true},_refreshOffsets:function(ae){this.offset={top:this.positionAbs.top-this.margins.top,left:this.positionAbs.left-this.margins.left,scroll:false,parent:this._getParentOffset(),relative:this._getRelativeOffset()};this.offset.click={left:ae.pageX-this.offset.left,top:ae.pageY-this.offset.top}},_mouseDrag:function(ae,ag){if(this.hasFixedAncestor){this.offset.parent=this._getParentOffset()}this.position=this._generatePosition(ae,true);this.positionAbs=this._convertPositionTo("absolute");if(!ag){var af=this._uiHash();if(this._trigger("drag",ae,af)===false){this._mouseUp({});return false}this.position=af.position}this.helper[0].style.left=this.position.left+"px";this.helper[0].style.top=this.position.top+"px";if(I.ui.ddmanager){I.ui.ddmanager.drag(this,ae)}return false},_mouseStop:function(af){var ae=this,ag=false;if(I.ui.ddmanager&&!this.options.dropBehaviour){ag=I.ui.ddmanager.drop(this,af)}if(this.dropped){ag=this.dropped;this.dropped=false}if((this.options.revert==="invalid"&&!ag)||(this.options.revert==="valid"&&ag)||this.options.revert===true||(I.isFunction(this.options.revert)&&this.options.revert.call(this.element,ag))){I(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){if(ae._trigger("stop",af)!==false){ae._clear()}})}else{if(this._trigger("stop",af)!==false){this._clear()}}return false},_mouseUp:function(ae){this._unblockFrames();if(I.ui.ddmanager){I.ui.ddmanager.dragStop(this,ae)}if(this.handleElement.is(ae.target)){this.element.focus()}return I.ui.mouse.prototype._mouseUp.call(this,ae)},cancel:function(){if(this.helper.is(".ui-draggable-dragging")){this._mouseUp({})}else{this._clear()}return this},_getHandle:function(ae){return this.options.handle?!!I(ae.target).closest(this.element.find(this.options.handle)).length:true},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element;this.handleElement.addClass("ui-draggable-handle")},_removeHandleClassName:function(){this.handleElement.removeClass("ui-draggable-handle")},_createHelper:function(af){var ah=this.options,ag=I.isFunction(ah.helper),ae=ag?I(ah.helper.apply(this.element[0],[af])):(ah.helper==="clone"?this.element.clone().removeAttr("id"):this.element);if(!ae.parents("body").length){ae.appendTo((ah.appendTo==="parent"?this.element[0].parentNode:ah.appendTo))}if(ag&&ae[0]===this.element[0]){this._setPositionRelative()}if(ae[0]!==this.element[0]&&!(/(fixed|absolute)/).test(ae.css("position"))){ae.css("position","absolute")}return ae},_setPositionRelative:function(){if(!(/^(?:r|a|f)/).test(this.element.css("position"))){this.element[0].style.position="relative"}},_adjustOffsetFromHelper:function(ae){if(typeof ae==="string"){ae=ae.split(" ")}if(I.isArray(ae)){ae={left:+ae[0],top:+ae[1]||0}}if("left" in ae){this.offset.click.left=ae.left+this.margins.left}if("right" in ae){this.offset.click.left=this.helperProportions.width-ae.right+this.margins.left}if("top" in ae){this.offset.click.top=ae.top+this.margins.top}if("bottom" in ae){this.offset.click.top=this.helperProportions.height-ae.bottom+this.margins.top}},_isRootNode:function(ae){return(/(html|body)/i).test(ae.tagName)||ae===this.document[0]},_getParentOffset:function(){var af=this.offsetParent.offset(),ae=this.document[0];if(this.cssPosition==="absolute"&&this.scrollParent[0]!==ae&&I.contains(this.scrollParent[0],this.offsetParent[0])){af.left+=this.scrollParent.scrollLeft();af.top+=this.scrollParent.scrollTop()}if(this._isRootNode(this.offsetParent[0])){af={top:0,left:0}}return{top:af.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:af.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition!=="relative"){return{top:0,left:0}}var ae=this.element.position(),af=this._isRootNode(this.scrollParent[0]);return{top:ae.top-(parseInt(this.helper.css("top"),10)||0)+(!af?this.scrollParent.scrollTop():0),left:ae.left-(parseInt(this.helper.css("left"),10)||0)+(!af?this.scrollParent.scrollLeft():0)}},_cacheMargins:function(){this.margins={left:(parseInt(this.element.css("marginLeft"),10)||0),top:(parseInt(this.element.css("marginTop"),10)||0),right:(parseInt(this.element.css("marginRight"),10)||0),bottom:(parseInt(this.element.css("marginBottom"),10)||0)}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var af,ai,ag,ah=this.options,ae=this.document[0];this.relativeContainer=null;if(!ah.containment){this.containment=null;return}if(ah.containment==="window"){this.containment=[I(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,I(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,I(window).scrollLeft()+I(window).width()-this.helperProportions.width-this.margins.left,I(window).scrollTop()+(I(window).height()||ae.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];return}if(ah.containment==="document"){this.containment=[0,0,I(ae).width()-this.helperProportions.width-this.margins.left,(I(ae).height()||ae.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];return}if(ah.containment.constructor===Array){this.containment=ah.containment;return}if(ah.containment==="parent"){ah.containment=this.helper[0].parentNode}ai=I(ah.containment);ag=ai[0];if(!ag){return}af=/(scroll|auto)/.test(ai.css("overflow"));this.containment=[(parseInt(ai.css("borderLeftWidth"),10)||0)+(parseInt(ai.css("paddingLeft"),10)||0),(parseInt(ai.css("borderTopWidth"),10)||0)+(parseInt(ai.css("paddingTop"),10)||0),(af?Math.max(ag.scrollWidth,ag.offsetWidth):ag.offsetWidth)-(parseInt(ai.css("borderRightWidth"),10)||0)-(parseInt(ai.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(af?Math.max(ag.scrollHeight,ag.offsetHeight):ag.offsetHeight)-(parseInt(ai.css("borderBottomWidth"),10)||0)-(parseInt(ai.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom];this.relativeContainer=ai},_convertPositionTo:function(af,ah){if(!ah){ah=this.position}var ae=af==="absolute"?1:-1,ag=this._isRootNode(this.scrollParent[0]);return{top:(ah.top+this.offset.relative.top*ae+this.offset.parent.top*ae-((this.cssPosition==="fixed"?-this.offset.scroll.top:(ag?0:this.offset.scroll.top))*ae)),left:(ah.left+this.offset.relative.left*ae+this.offset.parent.left*ae-((this.cssPosition==="fixed"?-this.offset.scroll.left:(ag?0:this.offset.scroll.left))*ae))}},_generatePosition:function(af,al){var ae,am,an,ah,ag=this.options,ak=this._isRootNode(this.scrollParent[0]),aj=af.pageX,ai=af.pageY;if(!ak||!this.offset.scroll){this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}}if(al){if(this.containment){if(this.relativeContainer){am=this.relativeContainer.offset();ae=[this.containment[0]+am.left,this.containment[1]+am.top,this.containment[2]+am.left,this.containment[3]+am.top]}else{ae=this.containment}if(af.pageX-this.offset.click.left<ae[0]){aj=ae[0]+this.offset.click.left}if(af.pageY-this.offset.click.top<ae[1]){ai=ae[1]+this.offset.click.top}if(af.pageX-this.offset.click.left>ae[2]){aj=ae[2]+this.offset.click.left}if(af.pageY-this.offset.click.top>ae[3]){ai=ae[3]+this.offset.click.top}}if(ag.grid){an=ag.grid[1]?this.originalPageY+Math.round((ai-this.originalPageY)/ag.grid[1])*ag.grid[1]:this.originalPageY;ai=ae?((an-this.offset.click.top>=ae[1]||an-this.offset.click.top>ae[3])?an:((an-this.offset.click.top>=ae[1])?an-ag.grid[1]:an+ag.grid[1])):an;ah=ag.grid[0]?this.originalPageX+Math.round((aj-this.originalPageX)/ag.grid[0])*ag.grid[0]:this.originalPageX;aj=ae?((ah-this.offset.click.left>=ae[0]||ah-this.offset.click.left>ae[2])?ah:((ah-this.offset.click.left>=ae[0])?ah-ag.grid[0]:ah+ag.grid[0])):ah}if(ag.axis==="y"){aj=this.originalPageX}if(ag.axis==="x"){ai=this.originalPageY}}return{top:(ai-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(this.cssPosition==="fixed"?-this.offset.scroll.top:(ak?0:this.offset.scroll.top))),left:(aj-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(this.cssPosition==="fixed"?-this.offset.scroll.left:(ak?0:this.offset.scroll.left)))}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");if(this.helper[0]!==this.element[0]&&!this.cancelHelperRemoval){this.helper.remove()}this.helper=null;this.cancelHelperRemoval=false;if(this.destroyOnClear){this.destroy()}},_normalizeRightBottom:function(){if(this.options.axis!=="y"&&this.helper.css("right")!=="auto"){this.helper.width(this.helper.width());this.helper.css("right","auto")}if(this.options.axis!=="x"&&this.helper.css("bottom")!=="auto"){this.helper.height(this.helper.height());this.helper.css("bottom","auto")}},_trigger:function(ae,af,ag){ag=ag||this._uiHash();I.ui.plugin.call(this,ae,[af,ag,this],true);if(/^(drag|start|stop)/.test(ae)){this.positionAbs=this._convertPositionTo("absolute");ag.offset=this.positionAbs}return I.Widget.prototype._trigger.call(this,ae,af,ag)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});I.ui.plugin.add("draggable","connectToSortable",{start:function(ag,ah,ae){var af=I.extend({},ah,{item:ae.element});ae.sortables=[];I(ae.options.connectToSortable).each(function(){var ai=I(this).sortable("instance");if(ai&&!ai.options.disabled){ae.sortables.push(ai);ai.refreshPositions();ai._trigger("activate",ag,af)}})},stop:function(ag,ah,ae){var af=I.extend({},ah,{item:ae.element});ae.cancelHelperRemoval=false;I.each(ae.sortables,function(){var ai=this;if(ai.isOver){ai.isOver=0;ae.cancelHelperRemoval=true;ai.cancelHelperRemoval=false;ai._storedCSS={position:ai.placeholder.css("position"),top:ai.placeholder.css("top"),left:ai.placeholder.css("left")};ai._mouseStop(ag);ai.options.helper=ai.options._helper}else{ai.cancelHelperRemoval=true;ai._trigger("deactivate",ag,af)}})},drag:function(af,ag,ae){I.each(ae.sortables,function(){var ah=false,ai=this;ai.positionAbs=ae.positionAbs;ai.helperProportions=ae.helperProportions;ai.offset.click=ae.offset.click;if(ai._intersectsWith(ai.containerCache)){ah=true;I.each(ae.sortables,function(){this.positionAbs=ae.positionAbs;this.helperProportions=ae.helperProportions;this.offset.click=ae.offset.click;if(this!==ai&&this._intersectsWith(this.containerCache)&&I.contains(ai.element[0],this.element[0])){ah=false}return ah})}if(ah){if(!ai.isOver){ai.isOver=1;ai.currentItem=ag.helper.appendTo(ai.element).data("ui-sortable-item",true);ai.options._helper=ai.options.helper;ai.options.helper=function(){return ag.helper[0]};af.target=ai.currentItem[0];ai._mouseCapture(af,true);ai._mouseStart(af,true,true);ai.offset.click.top=ae.offset.click.top;ai.offset.click.left=ae.offset.click.left;ai.offset.parent.left-=ae.offset.parent.left-ai.offset.parent.left;ai.offset.parent.top-=ae.offset.parent.top-ai.offset.parent.top;ae._trigger("toSortable",af);ae.dropped=ai.element;I.each(ae.sortables,function(){this.refreshPositions()});ae.currentItem=ae.element;ai.fromOutside=ae}if(ai.currentItem){ai._mouseDrag(af);ag.position=ai.position}}else{if(ai.isOver){ai.isOver=0;ai.cancelHelperRemoval=true;ai.options._revert=ai.options.revert;ai.options.revert=false;ai._trigger("out",af,ai._uiHash(ai));ai._mouseStop(af,true);ai.options.revert=ai.options._revert;ai.options.helper=ai.options._helper;if(ai.placeholder){ai.placeholder.remove()}ae._refreshOffsets(af);ag.position=ae._generatePosition(af,true);ae._trigger("fromSortable",af);ae.dropped=false;I.each(ae.sortables,function(){this.refreshPositions()})}}})}});I.ui.plugin.add("draggable","cursor",{start:function(ag,ah,ae){var af=I("body"),ai=ae.options;if(af.css("cursor")){ai._cursor=af.css("cursor")}af.css("cursor",ai.cursor)},stop:function(af,ag,ae){var ah=ae.options;if(ah._cursor){I("body").css("cursor",ah._cursor)}}});I.ui.plugin.add("draggable","opacity",{start:function(ag,ah,ae){var af=I(ah.helper),ai=ae.options;if(af.css("opacity")){ai._opacity=af.css("opacity")}af.css("opacity",ai.opacity)},stop:function(af,ag,ae){var ah=ae.options;if(ah._opacity){I(ag.helper).css("opacity",ah._opacity)}}});I.ui.plugin.add("draggable","scroll",{start:function(af,ag,ae){if(!ae.scrollParentNotHidden){ae.scrollParentNotHidden=ae.helper.scrollParent(false)}if(ae.scrollParentNotHidden[0]!==ae.document[0]&&ae.scrollParentNotHidden[0].tagName!=="HTML"){ae.overflowOffset=ae.scrollParentNotHidden.offset()}},drag:function(ah,ai,ag){var aj=ag.options,af=false,ak=ag.scrollParentNotHidden[0],ae=ag.document[0];if(ak!==ae&&ak.tagName!=="HTML"){if(!aj.axis||aj.axis!=="x"){if((ag.overflowOffset.top+ak.offsetHeight)-ah.pageY<aj.scrollSensitivity){ak.scrollTop=af=ak.scrollTop+aj.scrollSpeed}else{if(ah.pageY-ag.overflowOffset.top<aj.scrollSensitivity){ak.scrollTop=af=ak.scrollTop-aj.scrollSpeed}}}if(!aj.axis||aj.axis!=="y"){if((ag.overflowOffset.left+ak.offsetWidth)-ah.pageX<aj.scrollSensitivity){ak.scrollLeft=af=ak.scrollLeft+aj.scrollSpeed}else{if(ah.pageX-ag.overflowOffset.left<aj.scrollSensitivity){ak.scrollLeft=af=ak.scrollLeft-aj.scrollSpeed}}}}else{if(!aj.axis||aj.axis!=="x"){if(ah.pageY-I(ae).scrollTop()<aj.scrollSensitivity){af=I(ae).scrollTop(I(ae).scrollTop()-aj.scrollSpeed)}else{if(I(window).height()-(ah.pageY-I(ae).scrollTop())<aj.scrollSensitivity){af=I(ae).scrollTop(I(ae).scrollTop()+aj.scrollSpeed)}}}if(!aj.axis||aj.axis!=="y"){if(ah.pageX-I(ae).scrollLeft()<aj.scrollSensitivity){af=I(ae).scrollLeft(I(ae).scrollLeft()-aj.scrollSpeed)}else{if(I(window).width()-(ah.pageX-I(ae).scrollLeft())<aj.scrollSensitivity){af=I(ae).scrollLeft(I(ae).scrollLeft()+aj.scrollSpeed)}}}}if(af!==false&&I.ui.ddmanager&&!aj.dropBehaviour){I.ui.ddmanager.prepareOffsets(ag,ah)}}});I.ui.plugin.add("draggable","snap",{start:function(af,ag,ae){var ah=ae.options;ae.snapElements=[];I(ah.snap.constructor!==String?(ah.snap.items||":data(ui-draggable)"):ah.snap).each(function(){var aj=I(this),ai=aj.offset();if(this!==ae.element[0]){ae.snapElements.push({item:this,width:aj.outerWidth(),height:aj.outerHeight(),top:ai.top,left:ai.left})}})},drag:function(aq,an,ah){var ae,aw,aj,ak,ap,am,al,ax,ar,ai,ao=ah.options,av=ao.snapTolerance,au=an.offset.left,at=au+ah.helperProportions.width,ag=an.offset.top,af=ag+ah.helperProportions.height;for(ar=ah.snapElements.length-1;ar>=0;ar--){ap=ah.snapElements[ar].left-ah.margins.left;am=ap+ah.snapElements[ar].width;al=ah.snapElements[ar].top-ah.margins.top;ax=al+ah.snapElements[ar].height;if(at<ap-av||au>am+av||af<al-av||ag>ax+av||!I.contains(ah.snapElements[ar].item.ownerDocument,ah.snapElements[ar].item)){if(ah.snapElements[ar].snapping){(ah.options.snap.release&&ah.options.snap.release.call(ah.element,aq,I.extend(ah._uiHash(),{snapItem:ah.snapElements[ar].item})))}ah.snapElements[ar].snapping=false;continue}if(ao.snapMode!=="inner"){ae=Math.abs(al-af)<=av;aw=Math.abs(ax-ag)<=av;aj=Math.abs(ap-at)<=av;ak=Math.abs(am-au)<=av;if(ae){an.position.top=ah._convertPositionTo("relative",{top:al-ah.helperProportions.height,left:0}).top}if(aw){an.position.top=ah._convertPositionTo("relative",{top:ax,left:0}).top}if(aj){an.position.left=ah._convertPositionTo("relative",{top:0,left:ap-ah.helperProportions.width}).left}if(ak){an.position.left=ah._convertPositionTo("relative",{top:0,left:am}).left}}ai=(ae||aw||aj||ak);if(ao.snapMode!=="outer"){ae=Math.abs(al-ag)<=av;aw=Math.abs(ax-af)<=av;aj=Math.abs(ap-au)<=av;ak=Math.abs(am-at)<=av;if(ae){an.position.top=ah._convertPositionTo("relative",{top:al,left:0}).top}if(aw){an.position.top=ah._convertPositionTo("relative",{top:ax-ah.helperProportions.height,left:0}).top}if(aj){an.position.left=ah._convertPositionTo("relative",{top:0,left:ap}).left}if(ak){an.position.left=ah._convertPositionTo("relative",{top:0,left:am-ah.helperProportions.width}).left}}if(!ah.snapElements[ar].snapping&&(ae||aw||aj||ak||ai)){(ah.options.snap.snap&&ah.options.snap.snap.call(ah.element,aq,I.extend(ah._uiHash(),{snapItem:ah.snapElements[ar].item})))}ah.snapElements[ar].snapping=(ae||aw||aj||ak||ai)}}});I.ui.plugin.add("draggable","stack",{start:function(ag,ah,ae){var af,aj=ae.options,ai=I.makeArray(I(aj.stack)).sort(function(al,ak){return(parseInt(I(al).css("zIndex"),10)||0)-(parseInt(I(ak).css("zIndex"),10)||0)});if(!ai.length){return}af=parseInt(I(ai[0]).css("zIndex"),10)||0;I(ai).each(function(ak){I(this).css("zIndex",af+ak)});this.css("zIndex",(af+ai.length))}});I.ui.plugin.add("draggable","zIndex",{start:function(ag,ah,ae){var af=I(ah.helper),ai=ae.options;if(af.css("zIndex")){ai._zIndex=af.css("zIndex")}af.css("zIndex",ai.zIndex)},stop:function(af,ag,ae){var ah=ae.options;if(ah._zIndex){I(ag.helper).css("zIndex",ah._zIndex)}}});var X=I.ui.draggable;
116
- /*!
117
- * jQuery UI Resizable 1.11.2
118
- * http://jqueryui.com
119
- *
120
- * Copyright 2014 jQuery Foundation and other contributors
121
- * Released under the MIT license.
122
- * http://jquery.org/license
123
- *
124
- * http://api.jqueryui.com/resizable/
125
- */
126
- I.widget("ui.resizable",I.ui.mouse,{version:"1.11.2",widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(ae){return parseInt(ae,10)||0},_isNumber:function(ae){return !isNaN(parseInt(ae,10))},_hasScroll:function(ah,af){if(I(ah).css("overflow")==="hidden"){return false}var ae=(af&&af==="left")?"scrollLeft":"scrollTop",ag=false;if(ah[ae]>0){return true}ah[ae]=1;ag=(ah[ae]>0);ah[ae]=0;return ag},_create:function(){var ak,af,ai,ag,ae,ah=this,aj=this.options;this.element.addClass("ui-resizable");I.extend(this,{_aspectRatio:!!(aj.aspectRatio),aspectRatio:aj.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:aj.helper||aj.ghost||aj.animate?aj.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(I("<div class='ui-wrapper' style='overflow: hidden;'></div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=aj.handles||(!I(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor===String){if(this.handles==="all"){this.handles="n,e,s,w,se,sw,ne,nw"}ak=this.handles.split(",");this.handles={};for(af=0;af<ak.length;af++){ai=I.trim(ak[af]);ae="ui-resizable-"+ai;ag=I("<div class='ui-resizable-handle "+ae+"'></div>");ag.css({zIndex:aj.zIndex});if("se"===ai){ag.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[ai]=".ui-resizable-"+ai;this.element.append(ag)}}this._renderAxis=function(ap){var am,an,al,ao;ap=ap||this.element;for(am in this.handles){if(this.handles[am].constructor===String){this.handles[am]=this.element.children(this.handles[am]).first().show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){an=I(this.handles[am],this.element);ao=/sw|ne|nw|se|n|s/.test(am)?an.outerHeight():an.outerWidth();al=["padding",/ne|nw|n/.test(am)?"Top":/se|sw|s/.test(am)?"Bottom":/^e$/.test(am)?"Right":"Left"].join("");ap.css(al,ao);this._proportionallyResize()}if(!I(this.handles[am]).length){continue}}};this._renderAxis(this.element);this._handles=I(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!ah.resizing){if(this.className){ag=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}ah.axis=ag&&ag[1]?ag[1]:"se"}});if(aj.autoHide){this._handles.hide();I(this.element).addClass("ui-resizable-autohide").mouseenter(function(){if(aj.disabled){return}I(this).removeClass("ui-resizable-autohide");ah._handles.show()}).mouseleave(function(){if(aj.disabled){return}if(!ah.resizing){I(this).addClass("ui-resizable-autohide");ah._handles.hide()}})}this._mouseInit()},_destroy:function(){this._mouseDestroy();var af,ae=function(ag){I(ag).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){ae(this.element);af=this.element;this.originalElement.css({position:af.css("position"),width:af.outerWidth(),height:af.outerHeight(),top:af.css("top"),left:af.css("left")}).insertAfter(af);af.remove()}this.originalElement.css("resize",this.originalResizeStyle);ae(this.originalElement);return this},_mouseCapture:function(ag){var af,ah,ae=false;for(af in this.handles){ah=I(this.handles[af])[0];if(ah===ag.target||I.contains(ah,ag.target)){ae=true}}return !this.options.disabled&&ae},_mouseStart:function(af){var aj,ag,ai,ah=this.options,ae=this.element;this.resizing=true;this._renderProxy();aj=this._num(this.helper.css("left"));ag=this._num(this.helper.css("top"));if(ah.containment){aj+=I(ah.containment).scrollLeft()||0;ag+=I(ah.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:aj,top:ag};this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:ae.width(),height:ae.height()};this.originalSize=this._helper?{width:ae.outerWidth(),height:ae.outerHeight()}:{width:ae.width(),height:ae.height()};this.sizeDiff={width:ae.outerWidth()-ae.width(),height:ae.outerHeight()-ae.height()};this.originalPosition={left:aj,top:ag};this.originalMousePosition={left:af.pageX,top:af.pageY};this.aspectRatio=(typeof ah.aspectRatio==="number")?ah.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);ai=I(".ui-resizable-"+this.axis).css("cursor");I("body").css("cursor",ai==="auto"?this.axis+"-resize":ai);ae.addClass("ui-resizable-resizing");this._propagate("start",af);return true},_mouseDrag:function(aj){var ak,ai,al=this.originalMousePosition,af=this.axis,ag=(aj.pageX-al.left)||0,ae=(aj.pageY-al.top)||0,ah=this._change[af];this._updatePrevProperties();if(!ah){return false}ak=ah.apply(this,[aj,ag,ae]);this._updateVirtualBoundaries(aj.shiftKey);if(this._aspectRatio||aj.shiftKey){ak=this._updateRatio(ak,aj)}ak=this._respectSize(ak,aj);this._updateCache(ak);this._propagate("resize",aj);ai=this._applyChanges();if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}if(!I.isEmptyObject(ai)){this._updatePrevProperties();this._trigger("resize",aj,this.ui());this._applyChanges()}return false},_mouseStop:function(ah){this.resizing=false;var ag,ae,af,ak,an,aj,am,ai=this.options,al=this;if(this._helper){ag=this._proportionallyResizeElements;ae=ag.length&&(/textarea/i).test(ag[0].nodeName);af=ae&&this._hasScroll(ag[0],"left")?0:al.sizeDiff.height;ak=ae?0:al.sizeDiff.width;an={width:(al.helper.width()-ak),height:(al.helper.height()-af)};aj=(parseInt(al.element.css("left"),10)+(al.position.left-al.originalPosition.left))||null;am=(parseInt(al.element.css("top"),10)+(al.position.top-al.originalPosition.top))||null;if(!ai.animate){this.element.css(I.extend(an,{top:am,left:aj}))}al.helper.height(al.size.height);al.helper.width(al.size.width);if(this._helper&&!ai.animate){this._proportionallyResize()}}I("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",ah);if(this._helper){this.helper.remove()}return false},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left};this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var ae={};if(this.position.top!==this.prevPosition.top){ae.top=this.position.top+"px"}if(this.position.left!==this.prevPosition.left){ae.left=this.position.left+"px"}if(this.size.width!==this.prevSize.width){ae.width=this.size.width+"px"}if(this.size.height!==this.prevSize.height){ae.height=this.size.height+"px"}this.helper.css(ae);return ae},_updateVirtualBoundaries:function(ag){var ai,ah,af,ak,ae,aj=this.options;ae={minWidth:this._isNumber(aj.minWidth)?aj.minWidth:0,maxWidth:this._isNumber(aj.maxWidth)?aj.maxWidth:Infinity,minHeight:this._isNumber(aj.minHeight)?aj.minHeight:0,maxHeight:this._isNumber(aj.maxHeight)?aj.maxHeight:Infinity};if(this._aspectRatio||ag){ai=ae.minHeight*this.aspectRatio;af=ae.minWidth/this.aspectRatio;ah=ae.maxHeight*this.aspectRatio;ak=ae.maxWidth/this.aspectRatio;if(ai>ae.minWidth){ae.minWidth=ai}if(af>ae.minHeight){ae.minHeight=af}if(ah<ae.maxWidth){ae.maxWidth=ah}if(ak<ae.maxHeight){ae.maxHeight=ak}}this._vBoundaries=ae},_updateCache:function(ae){this.offset=this.helper.offset();if(this._isNumber(ae.left)){this.position.left=ae.left}if(this._isNumber(ae.top)){this.position.top=ae.top}if(this._isNumber(ae.height)){this.size.height=ae.height}if(this._isNumber(ae.width)){this.size.width=ae.width}},_updateRatio:function(ag){var ah=this.position,af=this.size,ae=this.axis;if(this._isNumber(ag.height)){ag.width=(ag.height*this.aspectRatio)}else{if(this._isNumber(ag.width)){ag.height=(ag.width/this.aspectRatio)}}if(ae==="sw"){ag.left=ah.left+(af.width-ag.width);ag.top=null}if(ae==="nw"){ag.top=ah.top+(af.height-ag.height);ag.left=ah.left+(af.width-ag.width)}return ag},_respectSize:function(aj){var ag=this._vBoundaries,am=this.axis,ao=this._isNumber(aj.width)&&ag.maxWidth&&(ag.maxWidth<aj.width),ak=this._isNumber(aj.height)&&ag.maxHeight&&(ag.maxHeight<aj.height),ah=this._isNumber(aj.width)&&ag.minWidth&&(ag.minWidth>aj.width),an=this._isNumber(aj.height)&&ag.minHeight&&(ag.minHeight>aj.height),af=this.originalPosition.left+this.originalSize.width,al=this.position.top+this.size.height,ai=/sw|nw|w/.test(am),ae=/nw|ne|n/.test(am);if(ah){aj.width=ag.minWidth}if(an){aj.height=ag.minHeight}if(ao){aj.width=ag.maxWidth}if(ak){aj.height=ag.maxHeight}if(ah&&ai){aj.left=af-ag.minWidth}if(ao&&ai){aj.left=af-ag.maxWidth}if(an&&ae){aj.top=al-ag.minHeight}if(ak&&ae){aj.top=al-ag.maxHeight}if(!aj.width&&!aj.height&&!aj.left&&aj.top){aj.top=null}else{if(!aj.width&&!aj.height&&!aj.top&&aj.left){aj.left=null}}return aj},_getPaddingPlusBorderDimensions:function(ag){var af=0,ah=[],ai=[ag.css("borderTopWidth"),ag.css("borderRightWidth"),ag.css("borderBottomWidth"),ag.css("borderLeftWidth")],ae=[ag.css("paddingTop"),ag.css("paddingRight"),ag.css("paddingBottom"),ag.css("paddingLeft")];for(;af<4;af++){ah[af]=(parseInt(ai[af],10)||0);ah[af]+=(parseInt(ae[af],10)||0)}return{height:ah[0]+ah[2],width:ah[1]+ah[3]}},_proportionallyResize:function(){if(!this._proportionallyResizeElements.length){return}var ag,af=0,ae=this.helper||this.element;for(;af<this._proportionallyResizeElements.length;af++){ag=this._proportionallyResizeElements[af];if(!this.outerDimensions){this.outerDimensions=this._getPaddingPlusBorderDimensions(ag)}ag.css({height:(ae.height()-this.outerDimensions.height)||0,width:(ae.width()-this.outerDimensions.width)||0})}},_renderProxy:function(){var ae=this.element,af=this.options;this.elementOffset=ae.offset();if(this._helper){this.helper=this.helper||I("<div style='overflow:hidden;'></div>");this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++af.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(af,ae){return{width:this.originalSize.width+ae}},w:function(ag,ae){var af=this.originalSize,ah=this.originalPosition;return{left:ah.left+ae,width:af.width-ae}},n:function(ah,af,ae){var ag=this.originalSize,ai=this.originalPosition;return{top:ai.top+ae,height:ag.height-ae}},s:function(ag,af,ae){return{height:this.originalSize.height+ae}},se:function(ag,af,ae){return I.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[ag,af,ae]))},sw:function(ag,af,ae){return I.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[ag,af,ae]))},ne:function(ag,af,ae){return I.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[ag,af,ae]))},nw:function(ag,af,ae){return I.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[ag,af,ae]))}},_propagate:function(af,ae){I.ui.plugin.call(this,af,[ae,this.ui()]);(af!=="resize"&&this._trigger(af,ae,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});I.ui.plugin.add("resizable","animate",{stop:function(ah){var am=I(this).resizable("instance"),aj=am.options,ag=am._proportionallyResizeElements,ae=ag.length&&(/textarea/i).test(ag[0].nodeName),af=ae&&am._hasScroll(ag[0],"left")?0:am.sizeDiff.height,al=ae?0:am.sizeDiff.width,ai={width:(am.size.width-al),height:(am.size.height-af)},ak=(parseInt(am.element.css("left"),10)+(am.position.left-am.originalPosition.left))||null,an=(parseInt(am.element.css("top"),10)+(am.position.top-am.originalPosition.top))||null;am.element.animate(I.extend(ai,an&&ak?{top:an,left:ak}:{}),{duration:aj.animateDuration,easing:aj.animateEasing,step:function(){var ao={width:parseInt(am.element.css("width"),10),height:parseInt(am.element.css("height"),10),top:parseInt(am.element.css("top"),10),left:parseInt(am.element.css("left"),10)};if(ag&&ag.length){I(ag[0]).css({width:ao.width,height:ao.height})}am._updateCache(ao);am._propagate("resize",ah)}})}});I.ui.plugin.add("resizable","containment",{start:function(){var am,ag,ao,ae,al,ah,ap,an=I(this).resizable("instance"),ak=an.options,aj=an.element,af=ak.containment,ai=(af instanceof I)?af.get(0):(/parent/.test(af))?aj.parent().get(0):af;if(!ai){return}an.containerElement=I(ai);if(/document/.test(af)||af===document){an.containerOffset={left:0,top:0};an.containerPosition={left:0,top:0};an.parentData={element:I(document),left:0,top:0,width:I(document).width(),height:I(document).height()||document.body.parentNode.scrollHeight}}else{am=I(ai);ag=[];I(["Top","Right","Left","Bottom"]).each(function(ar,aq){ag[ar]=an._num(am.css("padding"+aq))});an.containerOffset=am.offset();an.containerPosition=am.position();an.containerSize={height:(am.innerHeight()-ag[3]),width:(am.innerWidth()-ag[1])};ao=an.containerOffset;ae=an.containerSize.height;al=an.containerSize.width;ah=(an._hasScroll(ai,"left")?ai.scrollWidth:al);ap=(an._hasScroll(ai)?ai.scrollHeight:ae);an.parentData={element:ai,left:ao.left,top:ao.top,width:ah,height:ap}}},resize:function(af){var al,aq,ak,ai,am=I(this).resizable("instance"),ah=am.options,ao=am.containerOffset,an=am.position,ap=am._aspectRatio||af.shiftKey,ae={top:0,left:0},ag=am.containerElement,aj=true;if(ag[0]!==document&&(/static/).test(ag.css("position"))){ae=ao}if(an.left<(am._helper?ao.left:0)){am.size.width=am.size.width+(am._helper?(am.position.left-ao.left):(am.position.left-ae.left));if(ap){am.size.height=am.size.width/am.aspectRatio;aj=false}am.position.left=ah.helper?ao.left:0}if(an.top<(am._helper?ao.top:0)){am.size.height=am.size.height+(am._helper?(am.position.top-ao.top):am.position.top);if(ap){am.size.width=am.size.height*am.aspectRatio;aj=false}am.position.top=am._helper?ao.top:0}ak=am.containerElement.get(0)===am.element.parent().get(0);ai=/relative|absolute/.test(am.containerElement.css("position"));if(ak&&ai){am.offset.left=am.parentData.left+am.position.left;am.offset.top=am.parentData.top+am.position.top}else{am.offset.left=am.element.offset().left;am.offset.top=am.element.offset().top}al=Math.abs(am.sizeDiff.width+(am._helper?am.offset.left-ae.left:(am.offset.left-ao.left)));aq=Math.abs(am.sizeDiff.height+(am._helper?am.offset.top-ae.top:(am.offset.top-ao.top)));if(al+am.size.width>=am.parentData.width){am.size.width=am.parentData.width-al;if(ap){am.size.height=am.size.width/am.aspectRatio;aj=false}}if(aq+am.size.height>=am.parentData.height){am.size.height=am.parentData.height-aq;if(ap){am.size.width=am.size.height*am.aspectRatio;aj=false}}if(!aj){am.position.left=am.prevPosition.left;am.position.top=am.prevPosition.top;am.size.width=am.prevSize.width;am.size.height=am.prevSize.height}},stop:function(){var aj=I(this).resizable("instance"),af=aj.options,ak=aj.containerOffset,ae=aj.containerPosition,ag=aj.containerElement,ah=I(aj.helper),am=ah.offset(),al=ah.outerWidth()-aj.sizeDiff.width,ai=ah.outerHeight()-aj.sizeDiff.height;if(aj._helper&&!af.animate&&(/relative/).test(ag.css("position"))){I(this).css({left:am.left-ae.left-ak.left,width:al,height:ai})}if(aj._helper&&!af.animate&&(/static/).test(ag.css("position"))){I(this).css({left:am.left-ae.left-ak.left,width:al,height:ai})}}});I.ui.plugin.add("resizable","alsoResize",{start:function(){var ae=I(this).resizable("instance"),ag=ae.options,af=function(ah){I(ah).each(function(){var ai=I(this);ai.data("ui-resizable-alsoresize",{width:parseInt(ai.width(),10),height:parseInt(ai.height(),10),left:parseInt(ai.css("left"),10),top:parseInt(ai.css("top"),10)})})};if(typeof(ag.alsoResize)==="object"&&!ag.alsoResize.parentNode){if(ag.alsoResize.length){ag.alsoResize=ag.alsoResize[0];af(ag.alsoResize)}else{I.each(ag.alsoResize,function(ah){af(ah)})}}else{af(ag.alsoResize)}},resize:function(ag,ai){var af=I(this).resizable("instance"),aj=af.options,ah=af.originalSize,al=af.originalPosition,ak={height:(af.size.height-ah.height)||0,width:(af.size.width-ah.width)||0,top:(af.position.top-al.top)||0,left:(af.position.left-al.left)||0},ae=function(am,an){I(am).each(function(){var aq=I(this),ar=I(this).data("ui-resizable-alsoresize"),ap={},ao=an&&an.length?an:aq.parents(ai.originalElement[0]).length?["width","height"]:["width","height","top","left"];I.each(ao,function(at,av){var au=(ar[av]||0)+(ak[av]||0);if(au&&au>=0){ap[av]=au||null}});aq.css(ap)})};if(typeof(aj.alsoResize)==="object"&&!aj.alsoResize.nodeType){I.each(aj.alsoResize,function(am,an){ae(am,an)})}else{ae(aj.alsoResize)}},stop:function(){I(this).removeData("resizable-alsoresize")}});I.ui.plugin.add("resizable","ghost",{start:function(){var af=I(this).resizable("instance"),ag=af.options,ae=af.size;af.ghost=af.originalElement.clone();af.ghost.css({opacity:0.25,display:"block",position:"relative",height:ae.height,width:ae.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof ag.ghost==="string"?ag.ghost:"");af.ghost.appendTo(af.helper)},resize:function(){var ae=I(this).resizable("instance");if(ae.ghost){ae.ghost.css({position:"relative",height:ae.size.height,width:ae.size.width})}},stop:function(){var ae=I(this).resizable("instance");if(ae.ghost&&ae.helper){ae.helper.get(0).removeChild(ae.ghost.get(0))}}});I.ui.plugin.add("resizable","grid",{resize:function(){var ah,am=I(this).resizable("instance"),aq=am.options,ak=am.size,al=am.originalSize,an=am.originalPosition,aw=am.axis,ae=typeof aq.grid==="number"?[aq.grid,aq.grid]:aq.grid,au=(ae[0]||1),at=(ae[1]||1),aj=Math.round((ak.width-al.width)/au)*au,ai=Math.round((ak.height-al.height)/at)*at,ao=al.width+aj,ar=al.height+ai,ag=aq.maxWidth&&(aq.maxWidth<ao),ap=aq.maxHeight&&(aq.maxHeight<ar),av=aq.minWidth&&(aq.minWidth>ao),af=aq.minHeight&&(aq.minHeight>ar);aq.grid=ae;if(av){ao+=au}if(af){ar+=at}if(ag){ao-=au}if(ap){ar-=at}if(/^(se|s|e)$/.test(aw)){am.size.width=ao;am.size.height=ar}else{if(/^(ne)$/.test(aw)){am.size.width=ao;am.size.height=ar;am.position.top=an.top-ai}else{if(/^(sw)$/.test(aw)){am.size.width=ao;am.size.height=ar;am.position.left=an.left-aj}else{if(ar-at<=0||ao-au<=0){ah=am._getPaddingPlusBorderDimensions(this)}if(ar-at>0){am.size.height=ar;am.position.top=an.top-ai}else{ar=at-ah.height;am.size.height=ar;am.position.top=an.top+al.height-ar}if(ao-au>0){am.size.width=ao;am.position.left=an.left-aj}else{ao=at-ah.height;am.size.width=ao;am.position.left=an.left+al.width-ao}}}}}});var N=I.ui.resizable;
127
- /*!
128
- * jQuery UI Dialog 1.11.2
129
- * http://jqueryui.com
130
- *
131
- * Copyright 2014 jQuery Foundation and other contributors
132
- * Released under the MIT license.
133
- * http://jquery.org/license
134
- *
135
- * http://api.jqueryui.com/dialog/
136
- */
137
- var V=I.widget("ui.dialog",{version:"1.11.2",options:{appendTo:"body",autoOpen:true,buttons:[],closeOnEscape:true,closeText:"Close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:null,maxWidth:null,minHeight:150,minWidth:150,modal:false,position:{my:"center",at:"center",of:window,collision:"fit",using:function(af){var ae=I(this).css(af).offset().top;if(ae<0){I(this).css("top",af.top-ae)}}},resizable:true,show:null,title:null,width:300,beforeClose:null,close:null,drag:null,dragStart:null,dragStop:null,focus:null,open:null,resize:null,resizeStart:null,resizeStop:null},sizeRelatedOptions:{buttons:true,height:true,maxHeight:true,maxWidth:true,minHeight:true,minWidth:true,width:true},resizableRelatedOptions:{maxHeight:true,maxWidth:true,minHeight:true,minWidth:true},_create:function(){this.originalCss={display:this.element[0].style.display,width:this.element[0].style.width,minHeight:this.element[0].style.minHeight,maxHeight:this.element[0].style.maxHeight,height:this.element[0].style.height};this.originalPosition={parent:this.element.parent(),index:this.element.parent().children().index(this.element)};this.originalTitle=this.element.attr("title");this.options.title=this.options.title||this.originalTitle;this._createWrapper();this.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(this.uiDialog);this._createTitlebar();this._createButtonPane();if(this.options.draggable&&I.fn.draggable){this._makeDraggable()}if(this.options.resizable&&I.fn.resizable){this._makeResizable()}this._isOpen=false;this._trackFocus()},_init:function(){if(this.options.autoOpen){this.open()}},_appendTo:function(){var ae=this.options.appendTo;if(ae&&(ae.jquery||ae.nodeType)){return I(ae)}return this.document.find(ae||"body").eq(0)},_destroy:function(){var af,ae=this.originalPosition;this._destroyOverlay();this.element.removeUniqueId().removeClass("ui-dialog-content ui-widget-content").css(this.originalCss).detach();this.uiDialog.stop(true,true).remove();if(this.originalTitle){this.element.attr("title",this.originalTitle)}af=ae.parent.children().eq(ae.index);if(af.length&&af[0]!==this.element[0]){af.before(this.element)}else{ae.parent.append(this.element)}},widget:function(){return this.uiDialog},disable:I.noop,enable:I.noop,close:function(ah){var ag,af=this;if(!this._isOpen||this._trigger("beforeClose",ah)===false){return}this._isOpen=false;this._focusedElement=null;this._destroyOverlay();this._untrackInstance();if(!this.opener.filter(":focusable").focus().length){try{ag=this.document[0].activeElement;if(ag&&ag.nodeName.toLowerCase()!=="body"){I(ag).blur()}}catch(ae){}}this._hide(this.uiDialog,this.options.hide,function(){af._trigger("close",ah)})},isOpen:function(){return this._isOpen},moveToTop:function(){this._moveToTop()},_moveToTop:function(ai,af){var ah=false,ae=this.uiDialog.siblings(".ui-front:visible").map(function(){return +I(this).css("z-index")}).get(),ag=Math.max.apply(null,ae);if(ag>=+this.uiDialog.css("z-index")){this.uiDialog.css("z-index",ag+1);ah=true}if(ah&&!af){this._trigger("focus",ai)}return ah},open:function(){var ae=this;if(this._isOpen){if(this._moveToTop()){this._focusTabbable()}return}this._isOpen=true;this.opener=I(this.document[0].activeElement);this._size();this._position();this._createOverlay();this._moveToTop(null,true);if(this.overlay){this.overlay.css("z-index",this.uiDialog.css("z-index")-1)}this._show(this.uiDialog,this.options.show,function(){ae._focusTabbable();ae._trigger("focus")});this._makeFocusTarget();this._trigger("open")},_focusTabbable:function(){var ae=this._focusedElement;if(!ae){ae=this.element.find("[autofocus]")}if(!ae.length){ae=this.element.find(":tabbable")}if(!ae.length){ae=this.uiDialogButtonPane.find(":tabbable")}if(!ae.length){ae=this.uiDialogTitlebarClose.filter(":tabbable")}if(!ae.length){ae=this.uiDialog}ae.eq(0).focus()},_keepFocus:function(ae){function af(){var ah=this.document[0].activeElement,ag=this.uiDialog[0]===ah||I.contains(this.uiDialog[0],ah);if(!ag){this._focusTabbable()}}ae.preventDefault();af.call(this);this._delay(af)},_createWrapper:function(){this.uiDialog=I("<div>").addClass("ui-dialog ui-widget ui-widget-content ui-corner-all ui-front "+this.options.dialogClass).hide().attr({tabIndex:-1,role:"dialog"}).appendTo(this._appendTo());this._on(this.uiDialog,{keydown:function(ag){if(this.options.closeOnEscape&&!ag.isDefaultPrevented()&&ag.keyCode&&ag.keyCode===I.ui.keyCode.ESCAPE){ag.preventDefault();this.close(ag);return}if(ag.keyCode!==I.ui.keyCode.TAB||ag.isDefaultPrevented()){return}var af=this.uiDialog.find(":tabbable"),ah=af.filter(":first"),ae=af.filter(":last");if((ag.target===ae[0]||ag.target===this.uiDialog[0])&&!ag.shiftKey){this._delay(function(){ah.focus()});ag.preventDefault()}else{if((ag.target===ah[0]||ag.target===this.uiDialog[0])&&ag.shiftKey){this._delay(function(){ae.focus()});ag.preventDefault()}}},mousedown:function(ae){if(this._moveToTop(ae)){this._focusTabbable()}}});if(!this.element.find("[aria-describedby]").length){this.uiDialog.attr({"aria-describedby":this.element.uniqueId().attr("id")})}},_createTitlebar:function(){var ae;this.uiDialogTitlebar=I("<div>").addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(this.uiDialog);this._on(this.uiDialogTitlebar,{mousedown:function(af){if(!I(af.target).closest(".ui-dialog-titlebar-close")){this.uiDialog.focus()}}});this.uiDialogTitlebarClose=I("<button type='button'></button>").button({label:this.options.closeText,icons:{primary:"ui-icon-closethick"},text:false}).addClass("ui-dialog-titlebar-close").appendTo(this.uiDialogTitlebar);this._on(this.uiDialogTitlebarClose,{click:function(af){af.preventDefault();this.close(af)}});ae=I("<span>").uniqueId().addClass("ui-dialog-title").prependTo(this.uiDialogTitlebar);this._title(ae);this.uiDialog.attr({"aria-labelledby":ae.attr("id")})},_title:function(ae){if(!this.options.title){ae.html("&#160;")}ae.text(this.options.title)},_createButtonPane:function(){this.uiDialogButtonPane=I("<div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix");this.uiButtonSet=I("<div>").addClass("ui-dialog-buttonset").appendTo(this.uiDialogButtonPane);this._createButtons()},_createButtons:function(){var af=this,ae=this.options.buttons;this.uiDialogButtonPane.remove();this.uiButtonSet.empty();if(I.isEmptyObject(ae)||(I.isArray(ae)&&!ae.length)){this.uiDialog.removeClass("ui-dialog-buttons");return}I.each(ae,function(ag,ah){var ai,aj;ah=I.isFunction(ah)?{click:ah,text:ag}:ah;ah=I.extend({type:"button"},ah);ai=ah.click;ah.click=function(){ai.apply(af.element[0],arguments)};aj={icons:ah.icons,text:ah.showText};delete ah.icons;delete ah.showText;I("<button></button>",ah).button(aj).appendTo(af.uiButtonSet)});this.uiDialog.addClass("ui-dialog-buttons");this.uiDialogButtonPane.appendTo(this.uiDialog)},_makeDraggable:function(){var ag=this,af=this.options;function ae(ah){return{position:ah.position,offset:ah.offset}}this.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(ah,ai){I(this).addClass("ui-dialog-dragging");ag._blockFrames();ag._trigger("dragStart",ah,ae(ai))},drag:function(ah,ai){ag._trigger("drag",ah,ae(ai))},stop:function(ah,ai){var ak=ai.offset.left-ag.document.scrollLeft(),aj=ai.offset.top-ag.document.scrollTop();af.position={my:"left top",at:"left"+(ak>=0?"+":"")+ak+" top"+(aj>=0?"+":"")+aj,of:ag.window};I(this).removeClass("ui-dialog-dragging");ag._unblockFrames();ag._trigger("dragStop",ah,ae(ai))}})},_makeResizable:function(){var aj=this,ah=this.options,ai=ah.resizable,ae=this.uiDialog.css("position"),ag=typeof ai==="string"?ai:"n,e,s,w,se,sw,ne,nw";function af(ak){return{originalPosition:ak.originalPosition,originalSize:ak.originalSize,position:ak.position,size:ak.size}}this.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:this.element,maxWidth:ah.maxWidth,maxHeight:ah.maxHeight,minWidth:ah.minWidth,minHeight:this._minHeight(),handles:ag,start:function(ak,al){I(this).addClass("ui-dialog-resizing");aj._blockFrames();aj._trigger("resizeStart",ak,af(al))},resize:function(ak,al){aj._trigger("resize",ak,af(al))},stop:function(ak,al){var ao=aj.uiDialog.offset(),an=ao.left-aj.document.scrollLeft(),am=ao.top-aj.document.scrollTop();ah.height=aj.uiDialog.height();ah.width=aj.uiDialog.width();ah.position={my:"left top",at:"left"+(an>=0?"+":"")+an+" top"+(am>=0?"+":"")+am,of:aj.window};I(this).removeClass("ui-dialog-resizing");aj._unblockFrames();aj._trigger("resizeStop",ak,af(al))}}).css("position",ae)},_trackFocus:function(){this._on(this.widget(),{focusin:function(ae){this._makeFocusTarget();this._focusedElement=I(ae.target)}})},_makeFocusTarget:function(){this._untrackInstance();this._trackingInstances().unshift(this)},_untrackInstance:function(){var af=this._trackingInstances(),ae=I.inArray(this,af);if(ae!==-1){af.splice(ae,1)}},_trackingInstances:function(){var ae=this.document.data("ui-dialog-instances");if(!ae){ae=[];this.document.data("ui-dialog-instances",ae)}return ae},_minHeight:function(){var ae=this.options;return ae.height==="auto"?ae.minHeight:Math.min(ae.minHeight,ae.height)},_position:function(){var ae=this.uiDialog.is(":visible");if(!ae){this.uiDialog.show()}this.uiDialog.position(this.options.position);if(!ae){this.uiDialog.hide()}},_setOptions:function(ag){var ah=this,af=false,ae={};I.each(ag,function(ai,aj){ah._setOption(ai,aj);if(ai in ah.sizeRelatedOptions){af=true}if(ai in ah.resizableRelatedOptions){ae[ai]=aj}});if(af){this._size();this._position()}if(this.uiDialog.is(":data(ui-resizable)")){this.uiDialog.resizable("option",ae)}},_setOption:function(ag,ah){var af,ai,ae=this.uiDialog;if(ag==="dialogClass"){ae.removeClass(this.options.dialogClass).addClass(ah)}if(ag==="disabled"){return}this._super(ag,ah);if(ag==="appendTo"){this.uiDialog.appendTo(this._appendTo())}if(ag==="buttons"){this._createButtons()}if(ag==="closeText"){this.uiDialogTitlebarClose.button({label:""+ah})}if(ag==="draggable"){af=ae.is(":data(ui-draggable)");if(af&&!ah){ae.draggable("destroy")}if(!af&&ah){this._makeDraggable()}}if(ag==="position"){this._position()}if(ag==="resizable"){ai=ae.is(":data(ui-resizable)");if(ai&&!ah){ae.resizable("destroy")}if(ai&&typeof ah==="string"){ae.resizable("option","handles",ah)}if(!ai&&ah!==false){this._makeResizable()}}if(ag==="title"){this._title(this.uiDialogTitlebar.find(".ui-dialog-title"))}},_size:function(){var ae,ag,ah,af=this.options;this.element.show().css({width:"auto",minHeight:0,maxHeight:"none",height:0});if(af.minWidth>af.width){af.width=af.minWidth}ae=this.uiDialog.css({height:"auto",width:af.width}).outerHeight();ag=Math.max(0,af.minHeight-ae);ah=typeof af.maxHeight==="number"?Math.max(0,af.maxHeight-ae):"none";if(af.height==="auto"){this.element.css({minHeight:ag,maxHeight:ah,height:"auto"})}else{this.element.height(Math.max(0,af.height-ae))}if(this.uiDialog.is(":data(ui-resizable)")){this.uiDialog.resizable("option","minHeight",this._minHeight())}},_blockFrames:function(){this.iframeBlocks=this.document.find("iframe").map(function(){var ae=I(this);return I("<div>").css({position:"absolute",width:ae.outerWidth(),height:ae.outerHeight()}).appendTo(ae.parent()).offset(ae.offset())[0]})},_unblockFrames:function(){if(this.iframeBlocks){this.iframeBlocks.remove();delete this.iframeBlocks}},_allowInteraction:function(ae){if(I(ae.target).closest(".ui-dialog").length){return true}return !!I(ae.target).closest(".ui-datepicker").length},_createOverlay:function(){if(!this.options.modal){return}var ae=true;this._delay(function(){ae=false});if(!this.document.data("ui-dialog-overlays")){this._on(this.document,{focusin:function(af){if(ae){return}if(!this._allowInteraction(af)){af.preventDefault();this._trackingInstances()[0]._focusTabbable()}}})}this.overlay=I("<div>").addClass("ui-widget-overlay ui-front").appendTo(this._appendTo());this._on(this.overlay,{mousedown:"_keepFocus"});this.document.data("ui-dialog-overlays",(this.document.data("ui-dialog-overlays")||0)+1)},_destroyOverlay:function(){if(!this.options.modal){return}if(this.overlay){var ae=this.document.data("ui-dialog-overlays")-1;if(!ae){this.document.unbind("focusin").removeData("ui-dialog-overlays")}else{this.document.data("ui-dialog-overlays",ae)}this.overlay.remove();this.overlay=null}}});
138
- /*!
139
- * jQuery UI Droppable 1.11.2
140
- * http://jqueryui.com
141
- *
142
- * Copyright 2014 jQuery Foundation and other contributors
143
- * Released under the MIT license.
144
- * http://jquery.org/license
145
- *
146
- * http://api.jqueryui.com/droppable/
147
- */
148
- I.widget("ui.droppable",{version:"1.11.2",widgetEventPrefix:"drop",options:{accept:"*",activeClass:false,addClasses:true,greedy:false,hoverClass:false,scope:"default",tolerance:"intersect",activate:null,deactivate:null,drop:null,out:null,over:null},_create:function(){var af,ag=this.options,ae=ag.accept;this.isover=false;this.isout=true;this.accept=I.isFunction(ae)?ae:function(ah){return ah.is(ae)};this.proportions=function(){if(arguments.length){af=arguments[0]}else{return af?af:af={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight}}};this._addToManager(ag.scope);ag.addClasses&&this.element.addClass("ui-droppable")},_addToManager:function(ae){I.ui.ddmanager.droppables[ae]=I.ui.ddmanager.droppables[ae]||[];I.ui.ddmanager.droppables[ae].push(this)},_splice:function(ae){var af=0;for(;af<ae.length;af++){if(ae[af]===this){ae.splice(af,1)}}},_destroy:function(){var ae=I.ui.ddmanager.droppables[this.options.scope];this._splice(ae);this.element.removeClass("ui-droppable ui-droppable-disabled")},_setOption:function(af,ag){if(af==="accept"){this.accept=I.isFunction(ag)?ag:function(ah){return ah.is(ag)}}else{if(af==="scope"){var ae=I.ui.ddmanager.droppables[this.options.scope];this._splice(ae);this._addToManager(ag)}}this._super(af,ag)},_activate:function(af){var ae=I.ui.ddmanager.current;if(this.options.activeClass){this.element.addClass(this.options.activeClass)}if(ae){this._trigger("activate",af,this.ui(ae))}},_deactivate:function(af){var ae=I.ui.ddmanager.current;if(this.options.activeClass){this.element.removeClass(this.options.activeClass)}if(ae){this._trigger("deactivate",af,this.ui(ae))}},_over:function(af){var ae=I.ui.ddmanager.current;if(!ae||(ae.currentItem||ae.element)[0]===this.element[0]){return}if(this.accept.call(this.element[0],(ae.currentItem||ae.element))){if(this.options.hoverClass){this.element.addClass(this.options.hoverClass)}this._trigger("over",af,this.ui(ae))}},_out:function(af){var ae=I.ui.ddmanager.current;if(!ae||(ae.currentItem||ae.element)[0]===this.element[0]){return}if(this.accept.call(this.element[0],(ae.currentItem||ae.element))){if(this.options.hoverClass){this.element.removeClass(this.options.hoverClass)}this._trigger("out",af,this.ui(ae))}},_drop:function(af,ag){var ae=ag||I.ui.ddmanager.current,ah=false;if(!ae||(ae.currentItem||ae.element)[0]===this.element[0]){return false}this.element.find(":data(ui-droppable)").not(".ui-draggable-dragging").each(function(){var ai=I(this).droppable("instance");if(ai.options.greedy&&!ai.options.disabled&&ai.options.scope===ae.options.scope&&ai.accept.call(ai.element[0],(ae.currentItem||ae.element))&&I.ui.intersect(ae,I.extend(ai,{offset:ai.element.offset()}),ai.options.tolerance,af)){ah=true;return false}});if(ah){return false}if(this.accept.call(this.element[0],(ae.currentItem||ae.element))){if(this.options.activeClass){this.element.removeClass(this.options.activeClass)}if(this.options.hoverClass){this.element.removeClass(this.options.hoverClass)}this._trigger("drop",af,this.ui(ae));return this.element}return false},ui:function(ae){return{draggable:(ae.currentItem||ae.element),helper:ae.helper,position:ae.position,offset:ae.positionAbs}}});I.ui.intersect=(function(){function ae(ag,af,ah){return(ag>=af)&&(ag<(af+ah))}return function(aq,ak,ao,ag){if(!ak.offset){return false}var ai=(aq.positionAbs||aq.position.absolute).left+aq.margins.left,an=(aq.positionAbs||aq.position.absolute).top+aq.margins.top,ah=ai+aq.helperProportions.width,am=an+aq.helperProportions.height,aj=ak.offset.left,ap=ak.offset.top,af=aj+ak.proportions().width,al=ap+ak.proportions().height;switch(ao){case"fit":return(aj<=ai&&ah<=af&&ap<=an&&am<=al);case"intersect":return(aj<ai+(aq.helperProportions.width/2)&&ah-(aq.helperProportions.width/2)<af&&ap<an+(aq.helperProportions.height/2)&&am-(aq.helperProportions.height/2)<al);case"pointer":return ae(ag.pageY,ap,ak.proportions().height)&&ae(ag.pageX,aj,ak.proportions().width);case"touch":return((an>=ap&&an<=al)||(am>=ap&&am<=al)||(an<ap&&am>al))&&((ai>=aj&&ai<=af)||(ah>=aj&&ah<=af)||(ai<aj&&ah>af));default:return false}}})();I.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(ah,aj){var ag,af,ae=I.ui.ddmanager.droppables[ah.options.scope]||[],ai=aj?aj.type:null,ak=(ah.currentItem||ah.element).find(":data(ui-droppable)").addBack();droppablesLoop:for(ag=0;ag<ae.length;ag++){if(ae[ag].options.disabled||(ah&&!ae[ag].accept.call(ae[ag].element[0],(ah.currentItem||ah.element)))){continue}for(af=0;af<ak.length;af++){if(ak[af]===ae[ag].element[0]){ae[ag].proportions().height=0;continue droppablesLoop}}ae[ag].visible=ae[ag].element.css("display")!=="none";if(!ae[ag].visible){continue}if(ai==="mousedown"){ae[ag]._activate.call(ae[ag],aj)}ae[ag].offset=ae[ag].element.offset();ae[ag].proportions({width:ae[ag].element[0].offsetWidth,height:ae[ag].element[0].offsetHeight})}},drop:function(ae,af){var ag=false;I.each((I.ui.ddmanager.droppables[ae.options.scope]||[]).slice(),function(){if(!this.options){return}if(!this.options.disabled&&this.visible&&I.ui.intersect(ae,this,this.options.tolerance,af)){ag=this._drop.call(this,af)||ag}if(!this.options.disabled&&this.visible&&this.accept.call(this.element[0],(ae.currentItem||ae.element))){this.isout=true;this.isover=false;this._deactivate.call(this,af)}});return ag},dragStart:function(ae,af){ae.element.parentsUntil("body").bind("scroll.droppable",function(){if(!ae.options.refreshPositions){I.ui.ddmanager.prepareOffsets(ae,af)}})},drag:function(ae,af){if(ae.options.refreshPositions){I.ui.ddmanager.prepareOffsets(ae,af)}I.each(I.ui.ddmanager.droppables[ae.options.scope]||[],function(){if(this.options.disabled||this.greedyChild||!this.visible){return}var aj,ah,ag,ai=I.ui.intersect(ae,this,this.options.tolerance,af),ak=!ai&&this.isover?"isout":(ai&&!this.isover?"isover":null);if(!ak){return}if(this.options.greedy){ah=this.options.scope;ag=this.element.parents(":data(ui-droppable)").filter(function(){return I(this).droppable("instance").options.scope===ah});if(ag.length){aj=I(ag[0]).droppable("instance");aj.greedyChild=(ak==="isover")}}if(aj&&ak==="isover"){aj.isover=false;aj.isout=true;aj._out.call(aj,af)}this[ak]=true;this[ak==="isout"?"isover":"isout"]=false;this[ak==="isover"?"_over":"_out"].call(this,af);if(aj&&ak==="isout"){aj.isout=false;aj.isover=true;aj._over.call(aj,af)}})},dragStop:function(ae,af){ae.element.parentsUntil("body").unbind("scroll.droppable");if(!ae.options.refreshPositions){I.ui.ddmanager.prepareOffsets(ae,af)}}};var d=I.ui.droppable;
149
- /*!
150
- * jQuery UI Effects 1.11.2
151
- * http://jqueryui.com
152
- *
153
- * Copyright 2014 jQuery Foundation and other contributors
154
- * Released under the MIT license.
155
- * http://jquery.org/license
156
- *
157
- * http://api.jqueryui.com/category/effects-core/
158
- */
159
- var k="ui-effects-",s=I;I.effects={effect:{}};
160
- /*!
161
- * jQuery Color Animations v2.1.2
162
- * https://github.com/jquery/jquery-color
163
- *
164
- * Copyright 2014 jQuery Foundation and other contributors
165
- * Released under the MIT license.
166
- * http://jquery.org/license
167
- *
168
- * Date: Wed Jan 16 08:47:09 2013 -0600
169
- */
170
- (function(at,ah){var ao="backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor color columnRuleColor outlineColor textDecorationColor textEmphasisColor",al=/^([\-+])=\s*(\d+\.?\d*)/,ak=[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(au){return[au[1],au[2],au[3],au[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(au){return[au[1]*2.55,au[2]*2.55,au[3]*2.55,au[4]]}},{re:/#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/,parse:function(au){return[parseInt(au[1],16),parseInt(au[2],16),parseInt(au[3],16)]}},{re:/#([a-f0-9])([a-f0-9])([a-f0-9])/,parse:function(au){return[parseInt(au[1]+au[1],16),parseInt(au[2]+au[2],16),parseInt(au[3]+au[3],16)]}},{re:/hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,space:"hsla",parse:function(au){return[au[1],au[2]/100,au[3]/100,au[4]]}}],ai=at.Color=function(av,aw,au,ax){return new at.Color.fn.parse(av,aw,au,ax)},an={rgba:{props:{red:{idx:0,type:"byte"},green:{idx:1,type:"byte"},blue:{idx:2,type:"byte"}}},hsla:{props:{hue:{idx:0,type:"degrees"},saturation:{idx:1,type:"percent"},lightness:{idx:2,type:"percent"}}}},ar={"byte":{floor:true,max:255},percent:{max:1},degrees:{mod:360,floor:true}},aq=ai.support={},af=at("<p>")[0],ae,ap=at.each;af.style.cssText="background-color:rgba(1,1,1,.5)";aq.rgba=af.style.backgroundColor.indexOf("rgba")>-1;ap(an,function(au,av){av.cache="_"+au;av.props.alpha={idx:3,type:"percent",def:1}});function am(av,ax,aw){var au=ar[ax.type]||{};if(av==null){return(aw||!ax.def)?null:ax.def}av=au.floor?~~av:parseFloat(av);if(isNaN(av)){return ax.def}if(au.mod){return(av+au.mod)%au.mod}return 0>av?0:au.max<av?au.max:av}function aj(au){var aw=ai(),av=aw._rgba=[];au=au.toLowerCase();ap(ak,function(aB,aC){var az,aA=aC.re.exec(au),ay=aA&&aC.parse(aA),ax=aC.space||"rgba";if(ay){az=aw[ax](ay);aw[an[ax].cache]=az[an[ax].cache];av=aw._rgba=az._rgba;return false}});if(av.length){if(av.join()==="0,0,0,0"){at.extend(av,ae.transparent)}return aw}return ae[au]}ai.fn=at.extend(ai.prototype,{parse:function(aA,ay,au,az){if(aA===ah){this._rgba=[null,null,null,null];return this}if(aA.jquery||aA.nodeType){aA=at(aA).css(ay);ay=ah}var ax=this,aw=at.type(aA),av=this._rgba=[];if(ay!==ah){aA=[aA,ay,au,az];aw="array"}if(aw==="string"){return this.parse(aj(aA)||ae._default)}if(aw==="array"){ap(an.rgba.props,function(aB,aC){av[aC.idx]=am(aA[aC.idx],aC)});return this}if(aw==="object"){if(aA instanceof ai){ap(an,function(aB,aC){if(aA[aC.cache]){ax[aC.cache]=aA[aC.cache].slice()}})}else{ap(an,function(aC,aD){var aB=aD.cache;ap(aD.props,function(aE,aF){if(!ax[aB]&&aD.to){if(aE==="alpha"||aA[aE]==null){return}ax[aB]=aD.to(ax._rgba)}ax[aB][aF.idx]=am(aA[aE],aF,true)});if(ax[aB]&&at.inArray(null,ax[aB].slice(0,3))<0){ax[aB][3]=1;if(aD.from){ax._rgba=aD.from(ax[aB])}}})}return this}},is:function(aw){var au=ai(aw),ax=true,av=this;ap(an,function(ay,aA){var aB,az=au[aA.cache];if(az){aB=av[aA.cache]||aA.to&&aA.to(av._rgba)||[];ap(aA.props,function(aC,aD){if(az[aD.idx]!=null){ax=(az[aD.idx]===aB[aD.idx]);return ax}})}return ax});return ax},_space:function(){var au=[],av=this;ap(an,function(aw,ax){if(av[ax.cache]){au.push(aw)}});return au.pop()},transition:function(av,aB){var aw=ai(av),ax=aw._space(),ay=an[ax],az=this.alpha()===0?ai("transparent"):this,aA=az[ay.cache]||ay.to(az._rgba),au=aA.slice();aw=aw[ay.cache];ap(ay.props,function(aF,aH){var aE=aH.idx,aD=aA[aE],aC=aw[aE],aG=ar[aH.type]||{};if(aC===null){return}if(aD===null){au[aE]=aC}else{if(aG.mod){if(aC-aD>aG.mod/2){aD+=aG.mod}else{if(aD-aC>aG.mod/2){aD-=aG.mod}}}au[aE]=am((aC-aD)*aB+aD,aH)}});return this[ax](au)},blend:function(ax){if(this._rgba[3]===1){return this}var aw=this._rgba.slice(),av=aw.pop(),au=ai(ax)._rgba;return ai(at.map(aw,function(ay,az){return(1-av)*au[az]+av*ay}))},toRgbaString:function(){var av="rgba(",au=at.map(this._rgba,function(aw,ax){return aw==null?(ax>2?1:0):aw});if(au[3]===1){au.pop();av="rgb("}return av+au.join()+")"},toHslaString:function(){var av="hsla(",au=at.map(this.hsla(),function(aw,ax){if(aw==null){aw=ax>2?1:0}if(ax&&ax<3){aw=Math.round(aw*100)+"%"}return aw});if(au[3]===1){au.pop();av="hsl("}return av+au.join()+")"},toHexString:function(au){var av=this._rgba.slice(),aw=av.pop();if(au){av.push(~~(aw*255))}return"#"+at.map(av,function(ax){ax=(ax||0).toString(16);return ax.length===1?"0"+ax:ax}).join("")},toString:function(){return this._rgba[3]===0?"transparent":this.toRgbaString()}});ai.fn.parse.prototype=ai.fn;function ag(aw,av,au){au=(au+1)%1;if(au*6<1){return aw+(av-aw)*au*6}if(au*2<1){return av}if(au*3<2){return aw+(av-aw)*((2/3)-au)*6}return aw}an.hsla.to=function(aw){if(aw[0]==null||aw[1]==null||aw[2]==null){return[null,null,null,aw[3]]}var au=aw[0]/255,az=aw[1]/255,aA=aw[2]/255,aC=aw[3],aB=Math.max(au,az,aA),ax=Math.min(au,az,aA),aD=aB-ax,aE=aB+ax,av=aE*0.5,ay,aF;if(ax===aB){ay=0}else{if(au===aB){ay=(60*(az-aA)/aD)+360}else{if(az===aB){ay=(60*(aA-au)/aD)+120}else{ay=(60*(au-az)/aD)+240}}}if(aD===0){aF=0}else{if(av<=0.5){aF=aD/aE}else{aF=aD/(2-aE)}}return[Math.round(ay)%360,aF,av,aC==null?1:aC]};an.hsla.from=function(ay){if(ay[0]==null||ay[1]==null||ay[2]==null){return[null,null,null,ay[3]]}var ax=ay[0]/360,aw=ay[1],av=ay[2],au=ay[3],az=av<=0.5?av*(1+aw):av+aw-av*aw,aA=2*av-az;return[Math.round(ag(aA,az,ax+(1/3))*255),Math.round(ag(aA,az,ax)*255),Math.round(ag(aA,az,ax-(1/3))*255),au]};ap(an,function(av,ax){var aw=ax.props,au=ax.cache,az=ax.to,ay=ax.from;ai.fn[av]=function(aE){if(az&&!this[au]){this[au]=az(this._rgba)}if(aE===ah){return this[au].slice()}var aB,aD=at.type(aE),aA=(aD==="array"||aD==="object")?aE:arguments,aC=this[au].slice();ap(aw,function(aF,aH){var aG=aA[aD==="object"?aF:aH.idx];if(aG==null){aG=aC[aH.idx]}aC[aH.idx]=am(aG,aH)});if(ay){aB=ai(ay(aC));aB[au]=aC;return aB}else{return ai(aC)}};ap(aw,function(aA,aB){if(ai.fn[aA]){return}ai.fn[aA]=function(aF){var aH=at.type(aF),aE=(aA==="alpha"?(this._hsla?"hsla":"rgba"):av),aD=this[aE](),aG=aD[aB.idx],aC;if(aH==="undefined"){return aG}if(aH==="function"){aF=aF.call(this,aG);aH=at.type(aF)}if(aF==null&&aB.empty){return this}if(aH==="string"){aC=al.exec(aF);if(aC){aF=aG+parseFloat(aC[2])*(aC[1]==="+"?1:-1)}}aD[aB.idx]=aF;return this[aE](aD)}})});ai.hook=function(av){var au=av.split(" ");ap(au,function(aw,ax){at.cssHooks[ax]={set:function(aB,aC){var az,aA,ay="";if(aC!=="transparent"&&(at.type(aC)!=="string"||(az=aj(aC)))){aC=ai(az||aC);if(!aq.rgba&&aC._rgba[3]!==1){aA=ax==="backgroundColor"?aB.parentNode:aB;while((ay===""||ay==="transparent")&&aA&&aA.style){try{ay=at.css(aA,"backgroundColor");aA=aA.parentNode}catch(aD){}}aC=aC.blend(ay&&ay!=="transparent"?ay:"_default")}aC=aC.toRgbaString()}try{aB.style[ax]=aC}catch(aD){}}};at.fx.step[ax]=function(ay){if(!ay.colorInit){ay.start=ai(ay.elem,ax);ay.end=ai(ay.end);ay.colorInit=true}at.cssHooks[ax].set(ay.elem,ay.start.transition(ay.end,ay.pos))}})};ai.hook(ao);at.cssHooks.borderColor={expand:function(av){var au={};ap(["Top","Right","Bottom","Left"],function(ax,aw){au["border"+aw+"Color"]=av});return au}};ae=at.Color.names={aqua:"#00ffff",black:"#000000",blue:"#0000ff",fuchsia:"#ff00ff",gray:"#808080",green:"#008000",lime:"#00ff00",maroon:"#800000",navy:"#000080",olive:"#808000",purple:"#800080",red:"#ff0000",silver:"#c0c0c0",teal:"#008080",white:"#ffffff",yellow:"#ffff00",transparent:[null,null,null,0],_default:"#ffffff"}})(s);(function(){var af=["add","remove","toggle"],ag={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};I.each(["borderLeftStyle","borderRightStyle","borderBottomStyle","borderTopStyle"],function(ai,aj){I.fx.step[aj]=function(ak){if(ak.end!=="none"&&!ak.setAttr||ak.pos===1&&!ak.setAttr){s.style(ak.elem,aj,ak.end);ak.setAttr=true}}});function ah(am){var aj,ai,ak=am.ownerDocument.defaultView?am.ownerDocument.defaultView.getComputedStyle(am,null):am.currentStyle,al={};if(ak&&ak.length&&ak[0]&&ak[ak[0]]){ai=ak.length;while(ai--){aj=ak[ai];if(typeof ak[aj]==="string"){al[I.camelCase(aj)]=ak[aj]}}}else{for(aj in ak){if(typeof ak[aj]==="string"){al[aj]=ak[aj]}}}return al}function ae(ai,ak){var am={},aj,al;for(aj in ak){al=ak[aj];if(ai[aj]!==al){if(!ag[aj]){if(I.fx.step[aj]||!isNaN(parseFloat(al))){am[aj]=al}}}}return am}if(!I.fn.addBack){I.fn.addBack=function(ai){return this.add(ai==null?this.prevObject:this.prevObject.filter(ai))}}I.effects.animateClass=function(ai,aj,am,al){var ak=I.speed(aj,am,al);return this.queue(function(){var ap=I(this),an=ap.attr("class")||"",ao,aq=ak.children?ap.find("*").addBack():ap;aq=aq.map(function(){var ar=I(this);return{el:ar,start:ah(this)}});ao=function(){I.each(af,function(ar,at){if(ai[at]){ap[at+"Class"](ai[at])}})};ao();aq=aq.map(function(){this.end=ah(this.el[0]);this.diff=ae(this.start,this.end);return this});ap.attr("class",an);aq=aq.map(function(){var au=this,ar=I.Deferred(),at=I.extend({},ak,{queue:false,complete:function(){ar.resolve(au)}});this.el.animate(this.diff,at);return ar.promise()});I.when.apply(I,aq.get()).done(function(){ao();I.each(arguments,function(){var ar=this.el;I.each(this.diff,function(at){ar.css(at,"")})});ak.complete.call(ap[0])})})};I.fn.extend({addClass:(function(ai){return function(ak,aj,am,al){return aj?I.effects.animateClass.call(this,{add:ak},aj,am,al):ai.apply(this,arguments)}})(I.fn.addClass),removeClass:(function(ai){return function(ak,aj,am,al){return arguments.length>1?I.effects.animateClass.call(this,{remove:ak},aj,am,al):ai.apply(this,arguments)}})(I.fn.removeClass),toggleClass:(function(ai){return function(al,ak,aj,an,am){if(typeof ak==="boolean"||ak===undefined){if(!aj){return ai.apply(this,arguments)}else{return I.effects.animateClass.call(this,(ak?{add:al}:{remove:al}),aj,an,am)}}else{return I.effects.animateClass.call(this,{toggle:al},ak,aj,an)}}})(I.fn.toggleClass),switchClass:function(ai,ak,aj,am,al){return I.effects.animateClass.call(this,{add:ak,remove:ai},aj,am,al)}})})();(function(){I.extend(I.effects,{version:"1.11.2",save:function(ah,ai){for(var ag=0;ag<ai.length;ag++){if(ai[ag]!==null){ah.data(k+ai[ag],ah[0].style[ai[ag]])}}},restore:function(ah,aj){var ai,ag;for(ag=0;ag<aj.length;ag++){if(aj[ag]!==null){ai=ah.data(k+aj[ag]);if(ai===undefined){ai=""}ah.css(aj[ag],ai)}}},setMode:function(ag,ah){if(ah==="toggle"){ah=ag.is(":hidden")?"show":"hide"}return ah},getBaseline:function(ah,ai){var aj,ag;switch(ah[0]){case"top":aj=0;break;case"middle":aj=0.5;break;case"bottom":aj=1;break;default:aj=ah[0]/ai.height}switch(ah[1]){case"left":ag=0;break;case"center":ag=0.5;break;case"right":ag=1;break;default:ag=ah[1]/ai.width}return{x:ag,y:aj}},createWrapper:function(ah){if(ah.parent().is(".ui-effects-wrapper")){return ah.parent()}var ai={width:ah.outerWidth(true),height:ah.outerHeight(true),"float":ah.css("float")},al=I("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),ag={width:ah.width(),height:ah.height()},ak=document.activeElement;try{ak.id}catch(aj){ak=document.body}ah.wrap(al);if(ah[0]===ak||I.contains(ah[0],ak)){I(ak).focus()}al=ah.parent();if(ah.css("position")==="static"){al.css({position:"relative"});ah.css({position:"relative"})}else{I.extend(ai,{position:ah.css("position"),zIndex:ah.css("z-index")});I.each(["top","left","bottom","right"],function(am,an){ai[an]=ah.css(an);if(isNaN(parseInt(ai[an],10))){ai[an]="auto"}});ah.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}ah.css(ag);return al.css(ai).show()},removeWrapper:function(ag){var ah=document.activeElement;if(ag.parent().is(".ui-effects-wrapper")){ag.parent().replaceWith(ag);if(ag[0]===ah||I.contains(ag[0],ah)){I(ah).focus()}}return ag},setTransition:function(ah,aj,ag,ai){ai=ai||{};I.each(aj,function(al,ak){var am=ah.cssUnit(ak);if(am[0]>0){ai[ak]=am[0]*ag+am[1]}});return ai}});function ae(ah,ag,ai,aj){if(I.isPlainObject(ah)){ag=ah;ah=ah.effect}ah={effect:ah};if(ag==null){ag={}}if(I.isFunction(ag)){aj=ag;ai=null;ag={}}if(typeof ag==="number"||I.fx.speeds[ag]){aj=ai;ai=ag;ag={}}if(I.isFunction(ai)){aj=ai;ai=null}if(ag){I.extend(ah,ag)}ai=ai||ag.duration;ah.duration=I.fx.off?0:typeof ai==="number"?ai:ai in I.fx.speeds?I.fx.speeds[ai]:I.fx.speeds._default;ah.complete=aj||ag.complete;return ah}function af(ag){if(!ag||typeof ag==="number"||I.fx.speeds[ag]){return true}if(typeof ag==="string"&&!I.effects.effect[ag]){return true}if(I.isFunction(ag)){return true}if(typeof ag==="object"&&!ag.effect){return true}return false}I.fn.extend({effect:function(){var ai=ae.apply(this,arguments),ak=ai.mode,ag=ai.queue,ah=I.effects.effect[ai.effect];if(I.fx.off||!ah){if(ak){return this[ak](ai.duration,ai.complete)}else{return this.each(function(){if(ai.complete){ai.complete.call(this)}})}}function aj(an){var ao=I(this),am=ai.complete,ap=ai.mode;function al(){if(I.isFunction(am)){am.call(ao[0])}if(I.isFunction(an)){an()}}if(ao.is(":hidden")?ap==="hide":ap==="show"){ao[ap]();al()}else{ah.call(ao[0],ai,al)}}return ag===false?this.each(aj):this.queue(ag||"fx",aj)},show:(function(ag){return function(ai){if(af(ai)){return ag.apply(this,arguments)}else{var ah=ae.apply(this,arguments);ah.mode="show";return this.effect.call(this,ah)}}})(I.fn.show),hide:(function(ag){return function(ai){if(af(ai)){return ag.apply(this,arguments)}else{var ah=ae.apply(this,arguments);ah.mode="hide";return this.effect.call(this,ah)}}})(I.fn.hide),toggle:(function(ag){return function(ai){if(af(ai)||typeof ai==="boolean"){return ag.apply(this,arguments)}else{var ah=ae.apply(this,arguments);ah.mode="toggle";return this.effect.call(this,ah)}}})(I.fn.toggle),cssUnit:function(ag){var ah=this.css(ag),ai=[];I.each(["em","px","%","pt"],function(aj,ak){if(ah.indexOf(ak)>0){ai=[parseFloat(ah),ak]}});return ai}})})();(function(){var ae={};I.each(["Quad","Cubic","Quart","Quint","Expo"],function(ag,af){ae[af]=function(ah){return Math.pow(ah,ag+2)}});I.extend(ae,{Sine:function(af){return 1-Math.cos(af*Math.PI/2)},Circ:function(af){return 1-Math.sqrt(1-af*af)},Elastic:function(af){return af===0||af===1?af:-Math.pow(2,8*(af-1))*Math.sin(((af-1)*80-7.5)*Math.PI/15)},Back:function(af){return af*af*(3*af-2)},Bounce:function(ah){var af,ag=4;while(ah<((af=Math.pow(2,--ag))-1)/11){}return 1/Math.pow(4,3-ag)-7.5625*Math.pow((af*3-2)/22-ah,2)}});I.each(ae,function(ag,af){I.easing["easeIn"+ag]=af;I.easing["easeOut"+ag]=function(ah){return 1-af(1-ah)};I.easing["easeInOut"+ag]=function(ah){return ah<0.5?af(ah*2)/2:1-af(ah*-2+2)/2}})})();var T=I.effects;
171
- /*!
172
- * jQuery UI Effects Blind 1.11.2
173
- * http://jqueryui.com
174
- *
175
- * Copyright 2014 jQuery Foundation and other contributors
176
- * Released under the MIT license.
177
- * http://jquery.org/license
178
- *
179
- * http://api.jqueryui.com/blind-effect/
180
- */
181
- var Z=I.effects.effect.blind=function(ag,am){var ah=I(this),aq=/up|down|vertical/,ap=/up|left|vertical|horizontal/,ar=["position","top","bottom","left","right","height","width"],an=I.effects.setMode(ah,ag.mode||"hide"),at=ag.direction||"up",aj=aq.test(at),ai=aj?"height":"width",ao=aj?"top":"left",av=ap.test(at),al={},au=an==="show",af,ae,ak;if(ah.parent().is(".ui-effects-wrapper")){I.effects.save(ah.parent(),ar)}else{I.effects.save(ah,ar)}ah.show();af=I.effects.createWrapper(ah).css({overflow:"hidden"});ae=af[ai]();ak=parseFloat(af.css(ao))||0;al[ai]=au?ae:0;if(!av){ah.css(aj?"bottom":"right",0).css(aj?"top":"left","auto").css({position:"absolute"});al[ao]=au?ak:ae+ak}if(au){af.css(ai,0);if(!av){af.css(ao,ak+ae)}}af.animate(al,{duration:ag.duration,easing:ag.easing,queue:false,complete:function(){if(an==="hide"){ah.hide()}I.effects.restore(ah,ar);I.effects.removeWrapper(ah);am()}})};
182
- /*!
183
- * jQuery UI Effects Bounce 1.11.2
184
- * http://jqueryui.com
185
- *
186
- * Copyright 2014 jQuery Foundation and other contributors
187
- * Released under the MIT license.
188
- * http://jquery.org/license
189
- *
190
- * http://api.jqueryui.com/bounce-effect/
191
- */
192
- var S=I.effects.effect.bounce=function(an,am){var ae=I(this),af=["position","top","bottom","left","right","height","width"],al=I.effects.setMode(ae,an.mode||"effect"),ak=al==="hide",aw=al==="show",ax=an.direction||"up",ag=an.distance,aj=an.times||5,ay=aj*2+(aw||ak?1:0),av=an.duration/ay,ap=an.easing,ah=(ax==="up"||ax==="down")?"top":"left",ao=(ax==="up"||ax==="left"),au,ai,at,aq=ae.queue(),ar=aq.length;if(aw||ak){af.push("opacity")}I.effects.save(ae,af);ae.show();I.effects.createWrapper(ae);if(!ag){ag=ae[ah==="top"?"outerHeight":"outerWidth"]()/3}if(aw){at={opacity:1};at[ah]=0;ae.css("opacity",0).css(ah,ao?-ag*2:ag*2).animate(at,av,ap)}if(ak){ag=ag/Math.pow(2,aj-1)}at={};at[ah]=0;for(au=0;au<aj;au++){ai={};ai[ah]=(ao?"-=":"+=")+ag;ae.animate(ai,av,ap).animate(at,av,ap);ag=ak?ag*2:ag/2}if(ak){ai={opacity:0};ai[ah]=(ao?"-=":"+=")+ag;ae.animate(ai,av,ap)}ae.queue(function(){if(ak){ae.hide()}I.effects.restore(ae,af);I.effects.removeWrapper(ae);am()});if(ar>1){aq.splice.apply(aq,[1,0].concat(aq.splice(ar,ay+1)))}ae.dequeue()};
193
- /*!
194
- * jQuery UI Effects Clip 1.11.2
195
- * http://jqueryui.com
196
- *
197
- * Copyright 2014 jQuery Foundation and other contributors
198
- * Released under the MIT license.
199
- * http://jquery.org/license
200
- *
201
- * http://api.jqueryui.com/clip-effect/
202
- */
203
- var D=I.effects.effect.clip=function(ah,ak){var ai=I(this),ao=["position","top","bottom","left","right","height","width"],an=I.effects.setMode(ai,ah.mode||"hide"),aq=an==="show",ap=ah.direction||"vertical",am=ap==="vertical",ar=am?"height":"width",al=am?"top":"left",aj={},af,ag,ae;I.effects.save(ai,ao);ai.show();af=I.effects.createWrapper(ai).css({overflow:"hidden"});ag=(ai[0].tagName==="IMG")?af:ai;ae=ag[ar]();if(aq){ag.css(ar,0);ag.css(al,ae/2)}aj[ar]=aq?ae:0;aj[al]=aq?0:ae/2;ag.animate(aj,{queue:false,duration:ah.duration,easing:ah.easing,complete:function(){if(!aq){ai.hide()}I.effects.restore(ai,ao);I.effects.removeWrapper(ai);ak()}})};
204
- /*!
205
- * jQuery UI Effects Drop 1.11.2
206
- * http://jqueryui.com
207
- *
208
- * Copyright 2014 jQuery Foundation and other contributors
209
- * Released under the MIT license.
210
- * http://jquery.org/license
211
- *
212
- * http://api.jqueryui.com/drop-effect/
213
- */
214
- var o=I.effects.effect.drop=function(af,aj){var ag=I(this),al=["position","top","bottom","left","right","opacity","height","width"],ak=I.effects.setMode(ag,af.mode||"hide"),an=ak==="show",am=af.direction||"left",ah=(am==="up"||am==="down")?"top":"left",ao=(am==="up"||am==="left")?"pos":"neg",ai={opacity:an?1:0},ae;I.effects.save(ag,al);ag.show();I.effects.createWrapper(ag);ae=af.distance||ag[ah==="top"?"outerHeight":"outerWidth"](true)/2;if(an){ag.css("opacity",0).css(ah,ao==="pos"?-ae:ae)}ai[ah]=(an?(ao==="pos"?"+=":"-="):(ao==="pos"?"-=":"+="))+ae;ag.animate(ai,{queue:false,duration:af.duration,easing:af.easing,complete:function(){if(ak==="hide"){ag.hide()}I.effects.restore(ag,al);I.effects.removeWrapper(ag);aj()}})};
215
- /*!
216
- * jQuery UI Effects Explode 1.11.2
217
- * http://jqueryui.com
218
- *
219
- * Copyright 2014 jQuery Foundation and other contributors
220
- * Released under the MIT license.
221
- * http://jquery.org/license
222
- *
223
- * http://api.jqueryui.com/explode-effect/
224
- */
225
- var Q=I.effects.effect.explode=function(ar,aq){var ak=ar.pieces?Math.round(Math.sqrt(ar.pieces)):3,af=ak,ae=I(this),am=I.effects.setMode(ae,ar.mode||"hide"),aw=am==="show",ai=ae.show().css("visibility","hidden").offset(),at=Math.ceil(ae.outerWidth()/af),ap=Math.ceil(ae.outerHeight()/ak),aj=[],av,au,ag,ao,an,al;function ax(){aj.push(this);if(aj.length===ak*af){ah()}}for(av=0;av<ak;av++){ao=ai.top+av*ap;al=av-(ak-1)/2;for(au=0;au<af;au++){ag=ai.left+au*at;an=au-(af-1)/2;ae.clone().appendTo("body").wrap("<div></div>").css({position:"absolute",visibility:"visible",left:-au*at,top:-av*ap}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:at,height:ap,left:ag+(aw?an*at:0),top:ao+(aw?al*ap:0),opacity:aw?0:1}).animate({left:ag+(aw?0:an*at),top:ao+(aw?0:al*ap),opacity:aw?1:0},ar.duration||500,ar.easing,ax)}}function ah(){ae.css({visibility:"visible"});I(aj).remove();if(!aw){ae.hide()}aq()}};
226
- /*!
227
- * jQuery UI Effects Fade 1.11.2
228
- * http://jqueryui.com
229
- *
230
- * Copyright 2014 jQuery Foundation and other contributors
231
- * Released under the MIT license.
232
- * http://jquery.org/license
233
- *
234
- * http://api.jqueryui.com/fade-effect/
235
- */
236
- var R=I.effects.effect.fade=function(ah,ae){var af=I(this),ag=I.effects.setMode(af,ah.mode||"toggle");af.animate({opacity:ag},{queue:false,duration:ah.duration,easing:ah.easing,complete:ae})};
237
- /*!
238
- * jQuery UI Effects Fold 1.11.2
239
- * http://jqueryui.com
240
- *
241
- * Copyright 2014 jQuery Foundation and other contributors
242
- * Released under the MIT license.
243
- * http://jquery.org/license
244
- *
245
- * http://api.jqueryui.com/fold-effect/
246
- */
247
- var F=I.effects.effect.fold=function(ag,ak){var ah=I(this),ap=["position","top","bottom","left","right","height","width"],am=I.effects.setMode(ah,ag.mode||"hide"),at=am==="show",an=am==="hide",av=ag.size||15,ao=/([0-9]+)%/.exec(av),au=!!ag.horizFirst,al=at!==au,ai=al?["width","height"]:["height","width"],aj=ag.duration/2,af,ae,ar={},aq={};I.effects.save(ah,ap);ah.show();af=I.effects.createWrapper(ah).css({overflow:"hidden"});ae=al?[af.width(),af.height()]:[af.height(),af.width()];if(ao){av=parseInt(ao[1],10)/100*ae[an?0:1]}if(at){af.css(au?{height:0,width:av}:{height:av,width:0})}ar[ai[0]]=at?ae[0]:av;aq[ai[1]]=at?ae[1]:0;af.animate(ar,aj,ag.easing).animate(aq,aj,ag.easing,function(){if(an){ah.hide()}I.effects.restore(ah,ap);I.effects.removeWrapper(ah);ak()})};
248
- /*!
249
- * jQuery UI Effects Highlight 1.11.2
250
- * http://jqueryui.com
251
- *
252
- * Copyright 2014 jQuery Foundation and other contributors
253
- * Released under the MIT license.
254
- * http://jquery.org/license
255
- *
256
- * http://api.jqueryui.com/highlight-effect/
257
- */
258
- var M=I.effects.effect.highlight=function(aj,ae){var ag=I(this),af=["backgroundImage","backgroundColor","opacity"],ai=I.effects.setMode(ag,aj.mode||"show"),ah={backgroundColor:ag.css("backgroundColor")};if(ai==="hide"){ah.opacity=0}I.effects.save(ag,af);ag.show().css({backgroundImage:"none",backgroundColor:aj.color||"#ffff99"}).animate(ah,{queue:false,duration:aj.duration,easing:aj.easing,complete:function(){if(ai==="hide"){ag.hide()}I.effects.restore(ag,af);ae()}})};
259
- /*!
260
- * jQuery UI Effects Size 1.11.2
261
- * http://jqueryui.com
262
- *
263
- * Copyright 2014 jQuery Foundation and other contributors
264
- * Released under the MIT license.
265
- * http://jquery.org/license
266
- *
267
- * http://api.jqueryui.com/size-effect/
268
- */
269
- var a=I.effects.effect.size=function(an,am){var ar,ak,al,ae=I(this),aq=["position","top","bottom","left","right","width","height","overflow","opacity"],ap=["position","top","bottom","left","right","overflow","opacity"],ao=["width","height","overflow"],ai=["fontSize"],au=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],af=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],aj=I.effects.setMode(ae,an.mode||"effect"),at=an.restore||aj!=="effect",ax=an.scale||"both",av=an.origin||["middle","center"],aw=ae.css("position"),ag=at?aq:ap,ah={height:0,width:0,outerHeight:0,outerWidth:0};if(aj==="show"){ae.show()}ar={height:ae.height(),width:ae.width(),outerHeight:ae.outerHeight(),outerWidth:ae.outerWidth()};if(an.mode==="toggle"&&aj==="show"){ae.from=an.to||ah;ae.to=an.from||ar}else{ae.from=an.from||(aj==="show"?ah:ar);ae.to=an.to||(aj==="hide"?ah:ar)}al={from:{y:ae.from.height/ar.height,x:ae.from.width/ar.width},to:{y:ae.to.height/ar.height,x:ae.to.width/ar.width}};if(ax==="box"||ax==="both"){if(al.from.y!==al.to.y){ag=ag.concat(au);ae.from=I.effects.setTransition(ae,au,al.from.y,ae.from);ae.to=I.effects.setTransition(ae,au,al.to.y,ae.to)}if(al.from.x!==al.to.x){ag=ag.concat(af);ae.from=I.effects.setTransition(ae,af,al.from.x,ae.from);ae.to=I.effects.setTransition(ae,af,al.to.x,ae.to)}}if(ax==="content"||ax==="both"){if(al.from.y!==al.to.y){ag=ag.concat(ai).concat(ao);ae.from=I.effects.setTransition(ae,ai,al.from.y,ae.from);ae.to=I.effects.setTransition(ae,ai,al.to.y,ae.to)}}I.effects.save(ae,ag);ae.show();I.effects.createWrapper(ae);ae.css("overflow","hidden").css(ae.from);if(av){ak=I.effects.getBaseline(av,ar);ae.from.top=(ar.outerHeight-ae.outerHeight())*ak.y;ae.from.left=(ar.outerWidth-ae.outerWidth())*ak.x;ae.to.top=(ar.outerHeight-ae.to.outerHeight)*ak.y;ae.to.left=(ar.outerWidth-ae.to.outerWidth)*ak.x}ae.css(ae.from);if(ax==="content"||ax==="both"){au=au.concat(["marginTop","marginBottom"]).concat(ai);af=af.concat(["marginLeft","marginRight"]);ao=aq.concat(au).concat(af);ae.find("*[width]").each(function(){var az=I(this),ay={height:az.height(),width:az.width(),outerHeight:az.outerHeight(),outerWidth:az.outerWidth()};if(at){I.effects.save(az,ao)}az.from={height:ay.height*al.from.y,width:ay.width*al.from.x,outerHeight:ay.outerHeight*al.from.y,outerWidth:ay.outerWidth*al.from.x};az.to={height:ay.height*al.to.y,width:ay.width*al.to.x,outerHeight:ay.height*al.to.y,outerWidth:ay.width*al.to.x};if(al.from.y!==al.to.y){az.from=I.effects.setTransition(az,au,al.from.y,az.from);az.to=I.effects.setTransition(az,au,al.to.y,az.to)}if(al.from.x!==al.to.x){az.from=I.effects.setTransition(az,af,al.from.x,az.from);az.to=I.effects.setTransition(az,af,al.to.x,az.to)}az.css(az.from);az.animate(az.to,an.duration,an.easing,function(){if(at){I.effects.restore(az,ao)}})})}ae.animate(ae.to,{queue:false,duration:an.duration,easing:an.easing,complete:function(){if(ae.to.opacity===0){ae.css("opacity",ae.from.opacity)}if(aj==="hide"){ae.hide()}I.effects.restore(ae,ag);if(!at){if(aw==="static"){ae.css({position:"relative",top:ae.to.top,left:ae.to.left})}else{I.each(["top","left"],function(ay,az){ae.css(az,function(aB,aD){var aC=parseInt(aD,10),aA=ay?ae.to.left:ae.to.top;if(aD==="auto"){return aA+"px"}return aC+aA+"px"})})}}I.effects.removeWrapper(ae);am()}})};
270
- /*!
271
- * jQuery UI Effects Scale 1.11.2
272
- * http://jqueryui.com
273
- *
274
- * Copyright 2014 jQuery Foundation and other contributors
275
- * Released under the MIT license.
276
- * http://jquery.org/license
277
- *
278
- * http://api.jqueryui.com/scale-effect/
279
- */
280
- var f=I.effects.effect.scale=function(ae,ah){var af=I(this),an=I.extend(true,{},ae),ai=I.effects.setMode(af,ae.mode||"effect"),aj=parseInt(ae.percent,10)||(parseInt(ae.percent,10)===0?0:(ai==="hide"?0:100)),al=ae.direction||"both",am=ae.origin,ag={height:af.height(),width:af.width(),outerHeight:af.outerHeight(),outerWidth:af.outerWidth()},ak={y:al!=="horizontal"?(aj/100):1,x:al!=="vertical"?(aj/100):1};an.effect="size";an.queue=false;an.complete=ah;if(ai!=="effect"){an.origin=am||["middle","center"];an.restore=true}an.from=ae.from||(ai==="show"?{height:0,width:0,outerHeight:0,outerWidth:0}:ag);an.to={height:ag.height*ak.y,width:ag.width*ak.x,outerHeight:ag.outerHeight*ak.y,outerWidth:ag.outerWidth*ak.x};if(an.fade){if(ai==="show"){an.from.opacity=0;an.to.opacity=1}if(ai==="hide"){an.from.opacity=1;an.to.opacity=0}}af.effect(an)};
281
- /*!
282
- * jQuery UI Effects Puff 1.11.2
283
- * http://jqueryui.com
284
- *
285
- * Copyright 2014 jQuery Foundation and other contributors
286
- * Released under the MIT license.
287
- * http://jquery.org/license
288
- *
289
- * http://api.jqueryui.com/puff-effect/
290
- */
291
- var ab=I.effects.effect.puff=function(al,ae){var aj=I(this),ak=I.effects.setMode(aj,al.mode||"hide"),ah=ak==="hide",ai=parseInt(al.percent,10)||150,ag=ai/100,af={height:aj.height(),width:aj.width(),outerHeight:aj.outerHeight(),outerWidth:aj.outerWidth()};I.extend(al,{effect:"scale",queue:false,fade:true,mode:ak,complete:ae,percent:ah?ai:100,from:ah?af:{height:af.height*ag,width:af.width*ag,outerHeight:af.outerHeight*ag,outerWidth:af.outerWidth*ag}});aj.effect(al)};
292
- /*!
293
- * jQuery UI Effects Pulsate 1.11.2
294
- * http://jqueryui.com
295
- *
296
- * Copyright 2014 jQuery Foundation and other contributors
297
- * Released under the MIT license.
298
- * http://jquery.org/license
299
- *
300
- * http://api.jqueryui.com/pulsate-effect/
301
- */
302
- var H=I.effects.effect.pulsate=function(ae,ai){var ag=I(this),al=I.effects.setMode(ag,ae.mode||"show"),ap=al==="show",am=al==="hide",aq=(ap||al==="hide"),an=((ae.times||5)*2)+(aq?1:0),ah=ae.duration/an,ao=0,ak=ag.queue(),af=ak.length,aj;if(ap||!ag.is(":visible")){ag.css("opacity",0).show();ao=1}for(aj=1;aj<an;aj++){ag.animate({opacity:ao},ah,ae.easing);ao=1-ao}ag.animate({opacity:ao},ah,ae.easing);ag.queue(function(){if(am){ag.hide()}ai()});if(af>1){ak.splice.apply(ak,[1,0].concat(ak.splice(af,an+1)))}ag.dequeue()};
303
- /*!
304
- * jQuery UI Effects Shake 1.11.2
305
- * http://jqueryui.com
306
- *
307
- * Copyright 2014 jQuery Foundation and other contributors
308
- * Released under the MIT license.
309
- * http://jquery.org/license
310
- *
311
- * http://api.jqueryui.com/shake-effect/
312
- */
313
- var C=I.effects.effect.shake=function(am,al){var ae=I(this),af=["position","top","bottom","left","right","height","width"],ak=I.effects.setMode(ae,am.mode||"effect"),av=am.direction||"left",ag=am.distance||20,aj=am.times||3,aw=aj*2+1,aq=Math.round(am.duration/aw),ai=(av==="up"||av==="down")?"top":"left",ah=(av==="up"||av==="left"),au={},at={},ar={},ap,an=ae.queue(),ao=an.length;I.effects.save(ae,af);ae.show();I.effects.createWrapper(ae);au[ai]=(ah?"-=":"+=")+ag;at[ai]=(ah?"+=":"-=")+ag*2;ar[ai]=(ah?"-=":"+=")+ag*2;ae.animate(au,aq,am.easing);for(ap=1;ap<aj;ap++){ae.animate(at,aq,am.easing).animate(ar,aq,am.easing)}ae.animate(at,aq,am.easing).animate(au,aq/2,am.easing).queue(function(){if(ak==="hide"){ae.hide()}I.effects.restore(ae,af);I.effects.removeWrapper(ae);al()});if(ao>1){an.splice.apply(an,[1,0].concat(an.splice(ao,aw+1)))}ae.dequeue()};
314
- /*!
315
- * jQuery UI Effects Slide 1.11.2
316
- * http://jqueryui.com
317
- *
318
- * Copyright 2014 jQuery Foundation and other contributors
319
- * Released under the MIT license.
320
- * http://jquery.org/license
321
- *
322
- * http://api.jqueryui.com/slide-effect/
323
- */
324
- var B=I.effects.effect.slide=function(ag,ak){var ah=I(this),am=["position","top","bottom","left","right","width","height"],al=I.effects.setMode(ah,ag.mode||"show"),ao=al==="show",an=ag.direction||"left",ai=(an==="up"||an==="down")?"top":"left",af=(an==="up"||an==="left"),ae,aj={};I.effects.save(ah,am);ah.show();ae=ag.distance||ah[ai==="top"?"outerHeight":"outerWidth"](true);I.effects.createWrapper(ah).css({overflow:"hidden"});if(ao){ah.css(ai,af?(isNaN(ae)?"-"+ae:-ae):ae)}aj[ai]=(ao?(af?"+=":"-="):(af?"-=":"+="))+ae;ah.animate(aj,{queue:false,duration:ag.duration,easing:ag.easing,complete:function(){if(al==="hide"){ah.hide()}I.effects.restore(ah,am);I.effects.removeWrapper(ah);ak()}})};
325
- /*!
326
- * jQuery UI Effects Transfer 1.11.2
327
- * http://jqueryui.com
328
- *
329
- * Copyright 2014 jQuery Foundation and other contributors
330
- * Released under the MIT license.
331
- * http://jquery.org/license
332
- *
333
- * http://api.jqueryui.com/transfer-effect/
334
- */
335
- var m=I.effects.effect.transfer=function(af,aj){var ah=I(this),am=I(af.to),ap=am.css("position")==="fixed",al=I("body"),an=ap?al.scrollTop():0,ao=ap?al.scrollLeft():0,ae=am.offset(),ai={top:ae.top-an,left:ae.left-ao,height:am.innerHeight(),width:am.innerWidth()},ak=ah.offset(),ag=I("<div class='ui-effects-transfer'></div>").appendTo(document.body).addClass(af.className).css({top:ak.top-an,left:ak.left-ao,height:ah.innerHeight(),width:ah.innerWidth(),position:ap?"fixed":"absolute"}).animate(ai,af.duration,af.easing,function(){ag.remove();aj()})};
336
- /*!
337
- * jQuery UI Progressbar 1.11.2
338
- * http://jqueryui.com
339
- *
340
- * Copyright 2014 jQuery Foundation and other contributors
341
- * Released under the MIT license.
342
- * http://jquery.org/license
343
- *
344
- * http://api.jqueryui.com/progressbar/
345
- */
346
- var U=I.widget("ui.progressbar",{version:"1.11.2",options:{max:100,value:0,change:null,complete:null},min:0,_create:function(){this.oldValue=this.options.value=this._constrainedValue();this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min});this.valueDiv=I("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").appendTo(this.element);this._refreshValue()},_destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");this.valueDiv.remove()},value:function(ae){if(ae===undefined){return this.options.value}this.options.value=this._constrainedValue(ae);this._refreshValue()},_constrainedValue:function(ae){if(ae===undefined){ae=this.options.value}this.indeterminate=ae===false;if(typeof ae!=="number"){ae=0}return this.indeterminate?false:Math.min(this.options.max,Math.max(this.min,ae))},_setOptions:function(ae){var af=ae.value;delete ae.value;this._super(ae);this.options.value=this._constrainedValue(af);this._refreshValue()},_setOption:function(ae,af){if(ae==="max"){af=Math.max(this.min,af)}if(ae==="disabled"){this.element.toggleClass("ui-state-disabled",!!af).attr("aria-disabled",af)}this._super(ae,af)},_percentage:function(){return this.indeterminate?100:100*(this.options.value-this.min)/(this.options.max-this.min)},_refreshValue:function(){var af=this.options.value,ae=this._percentage();this.valueDiv.toggle(this.indeterminate||af>this.min).toggleClass("ui-corner-right",af===this.options.max).width(ae.toFixed(0)+"%");this.element.toggleClass("ui-progressbar-indeterminate",this.indeterminate);if(this.indeterminate){this.element.removeAttr("aria-valuenow");if(!this.overlayDiv){this.overlayDiv=I("<div class='ui-progressbar-overlay'></div>").appendTo(this.valueDiv)}}else{this.element.attr({"aria-valuemax":this.options.max,"aria-valuenow":af});if(this.overlayDiv){this.overlayDiv.remove();this.overlayDiv=null}}if(this.oldValue!==af){this.oldValue=af;this._trigger("change")}if(af===this.options.max){this._trigger("complete")}}});
347
- /*!
348
- * jQuery UI Selectable 1.11.2
349
- * http://jqueryui.com
350
- *
351
- * Copyright 2014 jQuery Foundation and other contributors
352
- * Released under the MIT license.
353
- * http://jquery.org/license
354
- *
355
- * http://api.jqueryui.com/selectable/
356
- */
357
- var e=I.widget("ui.selectable",I.ui.mouse,{version:"1.11.2",options:{appendTo:"body",autoRefresh:true,distance:0,filter:"*",tolerance:"touch",selected:null,selecting:null,start:null,stop:null,unselected:null,unselecting:null},_create:function(){var af,ae=this;this.element.addClass("ui-selectable");this.dragged=false;this.refresh=function(){af=I(ae.options.filter,ae.element[0]);af.addClass("ui-selectee");af.each(function(){var ag=I(this),ah=ag.offset();I.data(this,"selectable-item",{element:this,$element:ag,left:ah.left,top:ah.top,right:ah.left+ag.outerWidth(),bottom:ah.top+ag.outerHeight(),startselected:false,selected:ag.hasClass("ui-selected"),selecting:ag.hasClass("ui-selecting"),unselecting:ag.hasClass("ui-unselecting")})})};this.refresh();this.selectees=af.addClass("ui-selectee");this._mouseInit();this.helper=I("<div class='ui-selectable-helper'></div>")},_destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item");this.element.removeClass("ui-selectable ui-selectable-disabled");this._mouseDestroy()},_mouseStart:function(ag){var af=this,ae=this.options;this.opos=[ag.pageX,ag.pageY];if(this.options.disabled){return}this.selectees=I(ae.filter,this.element[0]);this._trigger("start",ag);I(ae.appendTo).append(this.helper);this.helper.css({left:ag.pageX,top:ag.pageY,width:0,height:0});if(ae.autoRefresh){this.refresh()}this.selectees.filter(".ui-selected").each(function(){var ah=I.data(this,"selectable-item");ah.startselected=true;if(!ag.metaKey&&!ag.ctrlKey){ah.$element.removeClass("ui-selected");ah.selected=false;ah.$element.addClass("ui-unselecting");ah.unselecting=true;af._trigger("unselecting",ag,{unselecting:ah.element})}});I(ag.target).parents().addBack().each(function(){var ah,ai=I.data(this,"selectable-item");if(ai){ah=(!ag.metaKey&&!ag.ctrlKey)||!ai.$element.hasClass("ui-selected");ai.$element.removeClass(ah?"ui-unselecting":"ui-selected").addClass(ah?"ui-selecting":"ui-unselecting");ai.unselecting=!ah;ai.selecting=ah;ai.selected=ah;if(ah){af._trigger("selecting",ag,{selecting:ai.element})}else{af._trigger("unselecting",ag,{unselecting:ai.element})}return false}})},_mouseDrag:function(al){this.dragged=true;if(this.options.disabled){return}var ai,ak=this,ag=this.options,af=this.opos[0],aj=this.opos[1],ae=al.pageX,ah=al.pageY;if(af>ae){ai=ae;ae=af;af=ai}if(aj>ah){ai=ah;ah=aj;aj=ai}this.helper.css({left:af,top:aj,width:ae-af,height:ah-aj});this.selectees.each(function(){var am=I.data(this,"selectable-item"),an=false;if(!am||am.element===ak.element[0]){return}if(ag.tolerance==="touch"){an=(!(am.left>ae||am.right<af||am.top>ah||am.bottom<aj))}else{if(ag.tolerance==="fit"){an=(am.left>af&&am.right<ae&&am.top>aj&&am.bottom<ah)}}if(an){if(am.selected){am.$element.removeClass("ui-selected");am.selected=false}if(am.unselecting){am.$element.removeClass("ui-unselecting");am.unselecting=false}if(!am.selecting){am.$element.addClass("ui-selecting");am.selecting=true;ak._trigger("selecting",al,{selecting:am.element})}}else{if(am.selecting){if((al.metaKey||al.ctrlKey)&&am.startselected){am.$element.removeClass("ui-selecting");am.selecting=false;am.$element.addClass("ui-selected");am.selected=true}else{am.$element.removeClass("ui-selecting");am.selecting=false;if(am.startselected){am.$element.addClass("ui-unselecting");am.unselecting=true}ak._trigger("unselecting",al,{unselecting:am.element})}}if(am.selected){if(!al.metaKey&&!al.ctrlKey&&!am.startselected){am.$element.removeClass("ui-selected");am.selected=false;am.$element.addClass("ui-unselecting");am.unselecting=true;ak._trigger("unselecting",al,{unselecting:am.element})}}}});return false},_mouseStop:function(af){var ae=this;this.dragged=false;I(".ui-unselecting",this.element[0]).each(function(){var ag=I.data(this,"selectable-item");ag.$element.removeClass("ui-unselecting");ag.unselecting=false;ag.startselected=false;ae._trigger("unselected",af,{unselected:ag.element})});I(".ui-selecting",this.element[0]).each(function(){var ag=I.data(this,"selectable-item");ag.$element.removeClass("ui-selecting").addClass("ui-selected");ag.selecting=false;ag.selected=true;ag.startselected=true;ae._trigger("selected",af,{selected:ag.element})});this._trigger("stop",af);this.helper.remove();return false}});
358
- /*!
359
- * jQuery UI Selectmenu 1.11.2
360
- * http://jqueryui.com
361
- *
362
- * Copyright 2014 jQuery Foundation and other contributors
363
- * Released under the MIT license.
364
- * http://jquery.org/license
365
- *
366
- * http://api.jqueryui.com/selectmenu
367
- */
368
- var W=I.widget("ui.selectmenu",{version:"1.11.2",defaultElement:"<select>",options:{appendTo:null,disabled:null,icons:{button:"ui-icon-triangle-1-s"},position:{my:"left top",at:"left bottom",collision:"none"},width:null,change:null,close:null,focus:null,open:null,select:null},_create:function(){var ae=this.element.uniqueId().attr("id");this.ids={element:ae,button:ae+"-button",menu:ae+"-menu"};this._drawButton();this._drawMenu();if(this.options.disabled){this.disable()}},_drawButton:function(){var af=this,ae=this.element.attr("tabindex");this.label=I("label[for='"+this.ids.element+"']").attr("for",this.ids.button);this._on(this.label,{click:function(ag){this.button.focus();ag.preventDefault()}});this.element.hide();this.button=I("<span>",{"class":"ui-selectmenu-button ui-widget ui-state-default ui-corner-all",tabindex:ae||this.options.disabled?-1:0,id:this.ids.button,role:"combobox","aria-expanded":"false","aria-autocomplete":"list","aria-owns":this.ids.menu,"aria-haspopup":"true"}).insertAfter(this.element);I("<span>",{"class":"ui-icon "+this.options.icons.button}).prependTo(this.button);this.buttonText=I("<span>",{"class":"ui-selectmenu-text"}).appendTo(this.button);this._setText(this.buttonText,this.element.find("option:selected").text());this._resizeButton();this._on(this.button,this._buttonEvents);this.button.one("focusin",function(){if(!af.menuItems){af._refreshMenu()}});this._hoverable(this.button);this._focusable(this.button)},_drawMenu:function(){var ae=this;this.menu=I("<ul>",{"aria-hidden":"true","aria-labelledby":this.ids.button,id:this.ids.menu});this.menuWrap=I("<div>",{"class":"ui-selectmenu-menu ui-front"}).append(this.menu).appendTo(this._appendTo());this.menuInstance=this.menu.menu({role:"listbox",select:function(af,ag){af.preventDefault();ae._setSelection();ae._select(ag.item.data("ui-selectmenu-item"),af)},focus:function(ag,ah){var af=ah.item.data("ui-selectmenu-item");if(ae.focusIndex!=null&&af.index!==ae.focusIndex){ae._trigger("focus",ag,{item:af});if(!ae.isOpen){ae._select(af,ag)}}ae.focusIndex=af.index;ae.button.attr("aria-activedescendant",ae.menuItems.eq(af.index).attr("id"))}}).menu("instance");this.menu.addClass("ui-corner-bottom").removeClass("ui-corner-all");this.menuInstance._off(this.menu,"mouseleave");this.menuInstance._closeOnDocumentClick=function(){return false};this.menuInstance._isDivider=function(){return false}},refresh:function(){this._refreshMenu();this._setText(this.buttonText,this._getSelectedItem().text());if(!this.options.width){this._resizeButton()}},_refreshMenu:function(){this.menu.empty();var af,ae=this.element.find("option");if(!ae.length){return}this._parseOptions(ae);this._renderMenu(this.menu,this.items);this.menuInstance.refresh();this.menuItems=this.menu.find("li").not(".ui-selectmenu-optgroup");af=this._getSelectedItem();this.menuInstance.focus(null,af);this._setAria(af.data("ui-selectmenu-item"));this._setOption("disabled",this.element.prop("disabled"))},open:function(ae){if(this.options.disabled){return}if(!this.menuItems){this._refreshMenu()}else{this.menu.find(".ui-state-focus").removeClass("ui-state-focus");this.menuInstance.focus(null,this._getSelectedItem())}this.isOpen=true;this._toggleAttr();this._resizeMenu();this._position();this._on(this.document,this._documentClick);this._trigger("open",ae)},_position:function(){this.menuWrap.position(I.extend({of:this.button},this.options.position))},close:function(ae){if(!this.isOpen){return}this.isOpen=false;this._toggleAttr();this.range=null;this._off(this.document);this._trigger("close",ae)},widget:function(){return this.button},menuWidget:function(){return this.menu},_renderMenu:function(ag,af){var ah=this,ae="";I.each(af,function(ai,aj){if(aj.optgroup!==ae){I("<li>",{"class":"ui-selectmenu-optgroup ui-menu-divider"+(aj.element.parent("optgroup").prop("disabled")?" ui-state-disabled":""),text:aj.optgroup}).appendTo(ag);ae=aj.optgroup}ah._renderItemData(ag,aj)})},_renderItemData:function(ae,af){return this._renderItem(ae,af).data("ui-selectmenu-item",af)},_renderItem:function(af,ag){var ae=I("<li>");if(ag.disabled){ae.addClass("ui-state-disabled")}this._setText(ae,ag.label);return ae.appendTo(af)},_setText:function(ae,af){if(af){ae.text(af)}else{ae.html("&#160;")}},_move:function(ai,ah){var ag,af,ae=".ui-menu-item";if(this.isOpen){ag=this.menuItems.eq(this.focusIndex)}else{ag=this.menuItems.eq(this.element[0].selectedIndex);ae+=":not(.ui-state-disabled)"}if(ai==="first"||ai==="last"){af=ag[ai==="first"?"prevAll":"nextAll"](ae).eq(-1)}else{af=ag[ai+"All"](ae).eq(0)}if(af.length){this.menuInstance.focus(ah,af)}},_getSelectedItem:function(){return this.menuItems.eq(this.element[0].selectedIndex)},_toggle:function(ae){this[this.isOpen?"close":"open"](ae)},_setSelection:function(){var ae;if(!this.range){return}if(window.getSelection){ae=window.getSelection();ae.removeAllRanges();ae.addRange(this.range)}else{this.range.select()}this.button.focus()},_documentClick:{mousedown:function(ae){if(!this.isOpen){return}if(!I(ae.target).closest(".ui-selectmenu-menu, #"+this.ids.button).length){this.close(ae)}}},_buttonEvents:{mousedown:function(){var ae;if(window.getSelection){ae=window.getSelection();if(ae.rangeCount){this.range=ae.getRangeAt(0)}}else{this.range=document.selection.createRange()}},click:function(ae){this._setSelection();this._toggle(ae)},keydown:function(af){var ae=true;switch(af.keyCode){case I.ui.keyCode.TAB:case I.ui.keyCode.ESCAPE:this.close(af);ae=false;break;case I.ui.keyCode.ENTER:if(this.isOpen){this._selectFocusedItem(af)}break;case I.ui.keyCode.UP:if(af.altKey){this._toggle(af)}else{this._move("prev",af)}break;case I.ui.keyCode.DOWN:if(af.altKey){this._toggle(af)}else{this._move("next",af)}break;case I.ui.keyCode.SPACE:if(this.isOpen){this._selectFocusedItem(af)}else{this._toggle(af)}break;case I.ui.keyCode.LEFT:this._move("prev",af);break;case I.ui.keyCode.RIGHT:this._move("next",af);break;case I.ui.keyCode.HOME:case I.ui.keyCode.PAGE_UP:this._move("first",af);break;case I.ui.keyCode.END:case I.ui.keyCode.PAGE_DOWN:this._move("last",af);break;default:this.menu.trigger(af);ae=false}if(ae){af.preventDefault()}}},_selectFocusedItem:function(af){var ae=this.menuItems.eq(this.focusIndex);if(!ae.hasClass("ui-state-disabled")){this._select(ae.data("ui-selectmenu-item"),af)}},_select:function(af,ae){var ag=this.element[0].selectedIndex;this.element[0].selectedIndex=af.index;this._setText(this.buttonText,af.label);this._setAria(af);this._trigger("select",ae,{item:af});if(af.index!==ag){this._trigger("change",ae,{item:af})}this.close(ae)},_setAria:function(ae){var af=this.menuItems.eq(ae.index).attr("id");this.button.attr({"aria-labelledby":af,"aria-activedescendant":af});this.menu.attr("aria-activedescendant",af)},_setOption:function(ae,af){if(ae==="icons"){this.button.find("span.ui-icon").removeClass(this.options.icons.button).addClass(af.button)}this._super(ae,af);if(ae==="appendTo"){this.menuWrap.appendTo(this._appendTo())}if(ae==="disabled"){this.menuInstance.option("disabled",af);this.button.toggleClass("ui-state-disabled",af).attr("aria-disabled",af);this.element.prop("disabled",af);if(af){this.button.attr("tabindex",-1);this.close()}else{this.button.attr("tabindex",0)}}if(ae==="width"){this._resizeButton()}},_appendTo:function(){var ae=this.options.appendTo;if(ae){ae=ae.jquery||ae.nodeType?I(ae):this.document.find(ae).eq(0)}if(!ae||!ae[0]){ae=this.element.closest(".ui-front")}if(!ae.length){ae=this.document[0].body}return ae},_toggleAttr:function(){this.button.toggleClass("ui-corner-top",this.isOpen).toggleClass("ui-corner-all",!this.isOpen).attr("aria-expanded",this.isOpen);this.menuWrap.toggleClass("ui-selectmenu-open",this.isOpen);this.menu.attr("aria-hidden",!this.isOpen)},_resizeButton:function(){var ae=this.options.width;if(!ae){ae=this.element.show().outerWidth();this.element.hide()}this.button.outerWidth(ae)},_resizeMenu:function(){this.menu.outerWidth(Math.max(this.button.outerWidth(),this.menu.width("").outerWidth()+1))},_getCreateOptions:function(){return{disabled:this.element.prop("disabled")}},_parseOptions:function(ae){var af=[];ae.each(function(ah,aj){var ai=I(aj),ag=ai.parent("optgroup");af.push({element:ai,index:ah,value:ai.attr("value"),label:ai.text(),optgroup:ag.attr("label")||"",disabled:ag.prop("disabled")||ai.prop("disabled")})});this.items=af},_destroy:function(){this.menuWrap.remove();this.button.remove();this.element.show();this.element.removeUniqueId();this.label.attr("for",this.ids.element)}});
369
- /*!
370
- * jQuery UI Slider 1.11.2
371
- * http://jqueryui.com
372
- *
373
- * Copyright 2014 jQuery Foundation and other contributors
374
- * Released under the MIT license.
375
- * http://jquery.org/license
376
- *
377
- * http://api.jqueryui.com/slider/
378
- */
379
- var g=I.widget("ui.slider",I.ui.mouse,{version:"1.11.2",widgetEventPrefix:"slide",options:{animate:false,distance:0,max:100,min:0,orientation:"horizontal",range:false,step:1,value:0,values:null,change:null,slide:null,start:null,stop:null},numPages:5,_create:function(){this._keySliding=false;this._mouseSliding=false;this._animateOff=true;this._handleIndex=null;this._detectOrientation();this._mouseInit();this._calculateNewMax();this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget ui-widget-content ui-corner-all");this._refresh();this._setOption("disabled",this.options.disabled);this._animateOff=false},_refresh:function(){this._createRange();this._createHandles();this._setupEvents();this._refreshValue()},_createHandles:function(){var ah,ae,af=this.options,aj=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),ai="<span class='ui-slider-handle ui-state-default ui-corner-all' tabindex='0'></span>",ag=[];ae=(af.values&&af.values.length)||1;if(aj.length>ae){aj.slice(ae).remove();aj=aj.slice(0,ae)}for(ah=aj.length;ah<ae;ah++){ag.push(ai)}this.handles=aj.add(I(ag.join("")).appendTo(this.element));this.handle=this.handles.eq(0);this.handles.each(function(ak){I(this).data("ui-slider-handle-index",ak)})},_createRange:function(){var ae=this.options,af="";if(ae.range){if(ae.range===true){if(!ae.values){ae.values=[this._valueMin(),this._valueMin()]}else{if(ae.values.length&&ae.values.length!==2){ae.values=[ae.values[0],ae.values[0]]}else{if(I.isArray(ae.values)){ae.values=ae.values.slice(0)}}}}if(!this.range||!this.range.length){this.range=I("<div></div>").appendTo(this.element);af="ui-slider-range ui-widget-header ui-corner-all"}else{this.range.removeClass("ui-slider-range-min ui-slider-range-max").css({left:"",bottom:""})}this.range.addClass(af+((ae.range==="min"||ae.range==="max")?" ui-slider-range-"+ae.range:""))}else{if(this.range){this.range.remove()}this.range=null}},_setupEvents:function(){this._off(this.handles);this._on(this.handles,this._handleEvents);this._hoverable(this.handles);this._focusable(this.handles)},_destroy:function(){this.handles.remove();if(this.range){this.range.remove()}this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-widget ui-widget-content ui-corner-all");this._mouseDestroy()},_mouseCapture:function(ag){var ak,an,af,ai,am,ao,aj,ae,al=this,ah=this.options;if(ah.disabled){return false}this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();ak={x:ag.pageX,y:ag.pageY};an=this._normValueFromMouse(ak);af=this._valueMax()-this._valueMin()+1;this.handles.each(function(ap){var aq=Math.abs(an-al.values(ap));if((af>aq)||(af===aq&&(ap===al._lastChangedValue||al.values(ap)===ah.min))){af=aq;ai=I(this);am=ap}});ao=this._start(ag,am);if(ao===false){return false}this._mouseSliding=true;this._handleIndex=am;ai.addClass("ui-state-active").focus();aj=ai.offset();ae=!I(ag.target).parents().addBack().is(".ui-slider-handle");this._clickOffset=ae?{left:0,top:0}:{left:ag.pageX-aj.left-(ai.width()/2),top:ag.pageY-aj.top-(ai.height()/2)-(parseInt(ai.css("borderTopWidth"),10)||0)-(parseInt(ai.css("borderBottomWidth"),10)||0)+(parseInt(ai.css("marginTop"),10)||0)};if(!this.handles.hasClass("ui-state-hover")){this._slide(ag,am,an)}this._animateOff=true;return true},_mouseStart:function(){return true},_mouseDrag:function(ag){var ae={x:ag.pageX,y:ag.pageY},af=this._normValueFromMouse(ae);this._slide(ag,this._handleIndex,af);return false},_mouseStop:function(ae){this.handles.removeClass("ui-state-active");this._mouseSliding=false;this._stop(ae,this._handleIndex);this._change(ae,this._handleIndex);this._handleIndex=null;this._clickOffset=null;this._animateOff=false;return false},_detectOrientation:function(){this.orientation=(this.options.orientation==="vertical")?"vertical":"horizontal"},_normValueFromMouse:function(af){var ae,ai,ah,ag,aj;if(this.orientation==="horizontal"){ae=this.elementSize.width;ai=af.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{ae=this.elementSize.height;ai=af.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}ah=(ai/ae);if(ah>1){ah=1}if(ah<0){ah=0}if(this.orientation==="vertical"){ah=1-ah}ag=this._valueMax()-this._valueMin();aj=this._valueMin()+ah*ag;return this._trimAlignValue(aj)},_start:function(ag,af){var ae={handle:this.handles[af],value:this.value()};if(this.options.values&&this.options.values.length){ae.value=this.values(af);ae.values=this.values()}return this._trigger("start",ag,ae)},_slide:function(ai,ah,ag){var ae,af,aj;if(this.options.values&&this.options.values.length){ae=this.values(ah?0:1);if((this.options.values.length===2&&this.options.range===true)&&((ah===0&&ag>ae)||(ah===1&&ag<ae))){ag=ae}if(ag!==this.values(ah)){af=this.values();af[ah]=ag;aj=this._trigger("slide",ai,{handle:this.handles[ah],value:ag,values:af});ae=this.values(ah?0:1);if(aj!==false){this.values(ah,ag)}}}else{if(ag!==this.value()){aj=this._trigger("slide",ai,{handle:this.handles[ah],value:ag});if(aj!==false){this.value(ag)}}}},_stop:function(ag,af){var ae={handle:this.handles[af],value:this.value()};if(this.options.values&&this.options.values.length){ae.value=this.values(af);ae.values=this.values()}this._trigger("stop",ag,ae)},_change:function(ag,af){if(!this._keySliding&&!this._mouseSliding){var ae={handle:this.handles[af],value:this.value()};if(this.options.values&&this.options.values.length){ae.value=this.values(af);ae.values=this.values()}this._lastChangedValue=af;this._trigger("change",ag,ae)}},value:function(ae){if(arguments.length){this.options.value=this._trimAlignValue(ae);this._refreshValue();this._change(null,0);return}return this._value()},values:function(af,ai){var ah,ae,ag;if(arguments.length>1){this.options.values[af]=this._trimAlignValue(ai);this._refreshValue();this._change(null,af);return}if(arguments.length){if(I.isArray(arguments[0])){ah=this.options.values;ae=arguments[0];for(ag=0;ag<ah.length;ag+=1){ah[ag]=this._trimAlignValue(ae[ag]);this._change(null,ag)}this._refreshValue()}else{if(this.options.values&&this.options.values.length){return this._values(af)}else{return this.value()}}}else{return this._values()}},_setOption:function(af,ag){var ae,ah=0;if(af==="range"&&this.options.range===true){if(ag==="min"){this.options.value=this._values(0);this.options.values=null}else{if(ag==="max"){this.options.value=this._values(this.options.values.length-1);this.options.values=null}}}if(I.isArray(this.options.values)){ah=this.options.values.length}if(af==="disabled"){this.element.toggleClass("ui-state-disabled",!!ag)}this._super(af,ag);switch(af){case"orientation":this._detectOrientation();this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation);this._refreshValue();this.handles.css(ag==="horizontal"?"bottom":"left","");break;case"value":this._animateOff=true;this._refreshValue();this._change(null,0);this._animateOff=false;break;case"values":this._animateOff=true;this._refreshValue();for(ae=0;ae<ah;ae+=1){this._change(null,ae)}this._animateOff=false;break;case"step":case"min":case"max":this._animateOff=true;this._calculateNewMax();this._refreshValue();this._animateOff=false;break;case"range":this._animateOff=true;this._refresh();this._animateOff=false;break}},_value:function(){var ae=this.options.value;ae=this._trimAlignValue(ae);return ae},_values:function(ae){var ah,ag,af;if(arguments.length){ah=this.options.values[ae];ah=this._trimAlignValue(ah);return ah}else{if(this.options.values&&this.options.values.length){ag=this.options.values.slice();for(af=0;af<ag.length;af+=1){ag[af]=this._trimAlignValue(ag[af])}return ag}else{return[]}}},_trimAlignValue:function(ah){if(ah<=this._valueMin()){return this._valueMin()}if(ah>=this._valueMax()){return this._valueMax()}var ae=(this.options.step>0)?this.options.step:1,ag=(ah-this._valueMin())%ae,af=ah-ag;if(Math.abs(ag)*2>=ae){af+=(ag>0)?ae:(-ae)}return parseFloat(af.toFixed(5))},_calculateNewMax:function(){var ae=(this.options.max-this._valueMin())%this.options.step;this.max=this.options.max-ae},_valueMin:function(){return this.options.min},_valueMax:function(){return this.max},_refreshValue:function(){var aj,ai,am,ak,an,ah=this.options.range,ag=this.options,al=this,af=(!this._animateOff)?ag.animate:false,ae={};if(this.options.values&&this.options.values.length){this.handles.each(function(ao){ai=(al.values(ao)-al._valueMin())/(al._valueMax()-al._valueMin())*100;ae[al.orientation==="horizontal"?"left":"bottom"]=ai+"%";I(this).stop(1,1)[af?"animate":"css"](ae,ag.animate);if(al.options.range===true){if(al.orientation==="horizontal"){if(ao===0){al.range.stop(1,1)[af?"animate":"css"]({left:ai+"%"},ag.animate)}if(ao===1){al.range[af?"animate":"css"]({width:(ai-aj)+"%"},{queue:false,duration:ag.animate})}}else{if(ao===0){al.range.stop(1,1)[af?"animate":"css"]({bottom:(ai)+"%"},ag.animate)}if(ao===1){al.range[af?"animate":"css"]({height:(ai-aj)+"%"},{queue:false,duration:ag.animate})}}}aj=ai})}else{am=this.value();ak=this._valueMin();an=this._valueMax();ai=(an!==ak)?(am-ak)/(an-ak)*100:0;ae[this.orientation==="horizontal"?"left":"bottom"]=ai+"%";this.handle.stop(1,1)[af?"animate":"css"](ae,ag.animate);if(ah==="min"&&this.orientation==="horizontal"){this.range.stop(1,1)[af?"animate":"css"]({width:ai+"%"},ag.animate)}if(ah==="max"&&this.orientation==="horizontal"){this.range[af?"animate":"css"]({width:(100-ai)+"%"},{queue:false,duration:ag.animate})}if(ah==="min"&&this.orientation==="vertical"){this.range.stop(1,1)[af?"animate":"css"]({height:ai+"%"},ag.animate)}if(ah==="max"&&this.orientation==="vertical"){this.range[af?"animate":"css"]({height:(100-ai)+"%"},{queue:false,duration:ag.animate})}}},_handleEvents:{keydown:function(ai){var aj,ag,af,ah,ae=I(ai.target).data("ui-slider-handle-index");switch(ai.keyCode){case I.ui.keyCode.HOME:case I.ui.keyCode.END:case I.ui.keyCode.PAGE_UP:case I.ui.keyCode.PAGE_DOWN:case I.ui.keyCode.UP:case I.ui.keyCode.RIGHT:case I.ui.keyCode.DOWN:case I.ui.keyCode.LEFT:ai.preventDefault();if(!this._keySliding){this._keySliding=true;I(ai.target).addClass("ui-state-active");aj=this._start(ai,ae);if(aj===false){return}}break}ah=this.options.step;if(this.options.values&&this.options.values.length){ag=af=this.values(ae)}else{ag=af=this.value()}switch(ai.keyCode){case I.ui.keyCode.HOME:af=this._valueMin();break;case I.ui.keyCode.END:af=this._valueMax();break;case I.ui.keyCode.PAGE_UP:af=this._trimAlignValue(ag+((this._valueMax()-this._valueMin())/this.numPages));break;case I.ui.keyCode.PAGE_DOWN:af=this._trimAlignValue(ag-((this._valueMax()-this._valueMin())/this.numPages));break;case I.ui.keyCode.UP:case I.ui.keyCode.RIGHT:if(ag===this._valueMax()){return}af=this._trimAlignValue(ag+ah);break;case I.ui.keyCode.DOWN:case I.ui.keyCode.LEFT:if(ag===this._valueMin()){return}af=this._trimAlignValue(ag-ah);break}this._slide(ai,ae,af)},keyup:function(af){var ae=I(af.target).data("ui-slider-handle-index");if(this._keySliding){this._keySliding=false;this._stop(af,ae);this._change(af,ae);I(af.target).removeClass("ui-state-active")}}}});
380
- /*!
381
- * jQuery UI Sortable 1.11.2
382
- * http://jqueryui.com
383
- *
384
- * Copyright 2014 jQuery Foundation and other contributors
385
- * Released under the MIT license.
386
- * http://jquery.org/license
387
- *
388
- * http://api.jqueryui.com/sortable/
389
- */
390
- var A=I.widget("ui.sortable",I.ui.mouse,{version:"1.11.2",widgetEventPrefix:"sort",ready:false,options:{appendTo:"parent",axis:false,connectWith:false,containment:false,cursor:"auto",cursorAt:false,dropOnEmpty:true,forcePlaceholderSize:false,forceHelperSize:false,grid:false,handle:false,helper:"original",items:"> *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1000,activate:null,beforeStop:null,change:null,deactivate:null,out:null,over:null,receive:null,remove:null,sort:null,start:null,stop:null,update:null},_isOverAxis:function(af,ae,ag){return(af>=ae)&&(af<(ae+ag))},_isFloating:function(ae){return(/left|right/).test(ae.css("float"))||(/inline|table-cell/).test(ae.css("display"))},_create:function(){var ae=this.options;this.containerCache={};this.element.addClass("ui-sortable");this.refresh();this.floating=this.items.length?ae.axis==="x"||this._isFloating(this.items[0].item):false;this.offset=this.element.offset();this._mouseInit();this._setHandleClassName();this.ready=true},_setOption:function(ae,af){this._super(ae,af);if(ae==="handle"){this._setHandleClassName()}},_setHandleClassName:function(){this.element.find(".ui-sortable-handle").removeClass("ui-sortable-handle");I.each(this.items,function(){(this.instance.options.handle?this.item.find(this.instance.options.handle):this.item).addClass("ui-sortable-handle")})},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").find(".ui-sortable-handle").removeClass("ui-sortable-handle");this._mouseDestroy();for(var ae=this.items.length-1;ae>=0;ae--){this.items[ae].item.removeData(this.widgetName+"-item")}return this},_mouseCapture:function(ag,ah){var ae=null,ai=false,af=this;if(this.reverting){return false}if(this.options.disabled||this.options.type==="static"){return false}this._refreshItems(ag);I(ag.target).parents().each(function(){if(I.data(this,af.widgetName+"-item")===af){ae=I(this);return false}});if(I.data(ag.target,af.widgetName+"-item")===af){ae=I(ag.target)}if(!ae){return false}if(this.options.handle&&!ah){I(this.options.handle,ae).find("*").addBack().each(function(){if(this===ag.target){ai=true}});if(!ai){return false}}this.currentItem=ae;this._removeCurrentsFromItems();return true},_mouseStart:function(ah,ai,af){var ag,ae,aj=this.options;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(ah);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};I.extend(this.offset,{click:{left:ah.pageX-this.offset.left,top:ah.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");this.originalPosition=this._generatePosition(ah);this.originalPageX=ah.pageX;this.originalPageY=ah.pageY;(aj.cursorAt&&this._adjustOffsetFromHelper(aj.cursorAt));this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};if(this.helper[0]!==this.currentItem[0]){this.currentItem.hide()}this._createPlaceholder();if(aj.containment){this._setContainment()}if(aj.cursor&&aj.cursor!=="auto"){ae=this.document.find("body");this.storedCursor=ae.css("cursor");ae.css("cursor",aj.cursor);this.storedStylesheet=I("<style>*{ cursor: "+aj.cursor+" !important; }</style>").appendTo(ae)}if(aj.opacity){if(this.helper.css("opacity")){this._storedOpacity=this.helper.css("opacity")}this.helper.css("opacity",aj.opacity)}if(aj.zIndex){if(this.helper.css("zIndex")){this._storedZIndex=this.helper.css("zIndex")}this.helper.css("zIndex",aj.zIndex)}if(this.scrollParent[0]!==document&&this.scrollParent[0].tagName!=="HTML"){this.overflowOffset=this.scrollParent.offset()}this._trigger("start",ah,this._uiHash());if(!this._preserveHelperProportions){this._cacheHelperProportions()}if(!af){for(ag=this.containers.length-1;ag>=0;ag--){this.containers[ag]._trigger("activate",ah,this._uiHash(this))}}if(I.ui.ddmanager){I.ui.ddmanager.current=this}if(I.ui.ddmanager&&!aj.dropBehaviour){I.ui.ddmanager.prepareOffsets(this,ah)}this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(ah);return true},_mouseDrag:function(ai){var ag,ah,af,ak,aj=this.options,ae=false;this.position=this._generatePosition(ai);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs){this.lastPositionAbs=this.positionAbs}if(this.options.scroll){if(this.scrollParent[0]!==document&&this.scrollParent[0].tagName!=="HTML"){if((this.overflowOffset.top+this.scrollParent[0].offsetHeight)-ai.pageY<aj.scrollSensitivity){this.scrollParent[0].scrollTop=ae=this.scrollParent[0].scrollTop+aj.scrollSpeed}else{if(ai.pageY-this.overflowOffset.top<aj.scrollSensitivity){this.scrollParent[0].scrollTop=ae=this.scrollParent[0].scrollTop-aj.scrollSpeed}}if((this.overflowOffset.left+this.scrollParent[0].offsetWidth)-ai.pageX<aj.scrollSensitivity){this.scrollParent[0].scrollLeft=ae=this.scrollParent[0].scrollLeft+aj.scrollSpeed}else{if(ai.pageX-this.overflowOffset.left<aj.scrollSensitivity){this.scrollParent[0].scrollLeft=ae=this.scrollParent[0].scrollLeft-aj.scrollSpeed}}}else{if(ai.pageY-I(document).scrollTop()<aj.scrollSensitivity){ae=I(document).scrollTop(I(document).scrollTop()-aj.scrollSpeed)}else{if(I(window).height()-(ai.pageY-I(document).scrollTop())<aj.scrollSensitivity){ae=I(document).scrollTop(I(document).scrollTop()+aj.scrollSpeed)}}if(ai.pageX-I(document).scrollLeft()<aj.scrollSensitivity){ae=I(document).scrollLeft(I(document).scrollLeft()-aj.scrollSpeed)}else{if(I(window).width()-(ai.pageX-I(document).scrollLeft())<aj.scrollSensitivity){ae=I(document).scrollLeft(I(document).scrollLeft()+aj.scrollSpeed)}}}if(ae!==false&&I.ui.ddmanager&&!aj.dropBehaviour){I.ui.ddmanager.prepareOffsets(this,ai)}}this.positionAbs=this._convertPositionTo("absolute");if(!this.options.axis||this.options.axis!=="y"){this.helper[0].style.left=this.position.left+"px"}if(!this.options.axis||this.options.axis!=="x"){this.helper[0].style.top=this.position.top+"px"}for(ag=this.items.length-1;ag>=0;ag--){ah=this.items[ag];af=ah.item[0];ak=this._intersectsWithPointer(ah);if(!ak){continue}if(ah.instance!==this.currentContainer){continue}if(af!==this.currentItem[0]&&this.placeholder[ak===1?"next":"prev"]()[0]!==af&&!I.contains(this.placeholder[0],af)&&(this.options.type==="semi-dynamic"?!I.contains(this.element[0],af):true)){this.direction=ak===1?"down":"up";if(this.options.tolerance==="pointer"||this._intersectsWithSides(ah)){this._rearrange(ai,ah)}else{break}this._trigger("change",ai,this._uiHash());break}}this._contactContainers(ai);if(I.ui.ddmanager){I.ui.ddmanager.drag(this,ai)}this._trigger("sort",ai,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(ag,ai){if(!ag){return}if(I.ui.ddmanager&&!this.options.dropBehaviour){I.ui.ddmanager.drop(this,ag)}if(this.options.revert){var af=this,aj=this.placeholder.offset(),ae=this.options.axis,ah={};if(!ae||ae==="x"){ah.left=aj.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollLeft)}if(!ae||ae==="y"){ah.top=aj.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollTop)}this.reverting=true;I(this.helper).animate(ah,parseInt(this.options.revert,10)||500,function(){af._clear(ag)})}else{this._clear(ag,ai)}return false},cancel:function(){if(this.dragging){this._mouseUp({target:null});if(this.options.helper==="original"){this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else{this.currentItem.show()}for(var ae=this.containers.length-1;ae>=0;ae--){this.containers[ae]._trigger("deactivate",null,this._uiHash(this));if(this.containers[ae].containerCache.over){this.containers[ae]._trigger("out",null,this._uiHash(this));this.containers[ae].containerCache.over=0}}}if(this.placeholder){if(this.placeholder[0].parentNode){this.placeholder[0].parentNode.removeChild(this.placeholder[0])}if(this.options.helper!=="original"&&this.helper&&this.helper[0].parentNode){this.helper.remove()}I.extend(this,{helper:null,dragging:false,reverting:false,_noFinalSort:null});if(this.domPosition.prev){I(this.domPosition.prev).after(this.currentItem)}else{I(this.domPosition.parent).prepend(this.currentItem)}}return this},serialize:function(ag){var ae=this._getItemsAsjQuery(ag&&ag.connected),af=[];ag=ag||{};I(ae).each(function(){var ah=(I(ag.item||this).attr(ag.attribute||"id")||"").match(ag.expression||(/(.+)[\-=_](.+)/));if(ah){af.push((ag.key||ah[1]+"[]")+"="+(ag.key&&ag.expression?ah[1]:ah[2]))}});if(!af.length&&ag.key){af.push(ag.key+"=")}return af.join("&")},toArray:function(ag){var ae=this._getItemsAsjQuery(ag&&ag.connected),af=[];ag=ag||{};ae.each(function(){af.push(I(ag.item||this).attr(ag.attribute||"id")||"")});return af},_intersectsWith:function(ap){var ag=this.positionAbs.left,af=ag+this.helperProportions.width,an=this.positionAbs.top,am=an+this.helperProportions.height,ah=ap.left,ae=ah+ap.width,aq=ap.top,al=aq+ap.height,ar=this.offset.click.top,ak=this.offset.click.left,aj=(this.options.axis==="x")||((an+ar)>aq&&(an+ar)<al),ao=(this.options.axis==="y")||((ag+ak)>ah&&(ag+ak)<ae),ai=aj&&ao;if(this.options.tolerance==="pointer"||this.options.forcePointerForContainers||(this.options.tolerance!=="pointer"&&this.helperProportions[this.floating?"width":"height"]>ap[this.floating?"width":"height"])){return ai}else{return(ah<ag+(this.helperProportions.width/2)&&af-(this.helperProportions.width/2)<ae&&aq<an+(this.helperProportions.height/2)&&am-(this.helperProportions.height/2)<al)}},_intersectsWithPointer:function(ag){var ah=(this.options.axis==="x")||this._isOverAxis(this.positionAbs.top+this.offset.click.top,ag.top,ag.height),af=(this.options.axis==="y")||this._isOverAxis(this.positionAbs.left+this.offset.click.left,ag.left,ag.width),aj=ah&&af,ae=this._getDragVerticalDirection(),ai=this._getDragHorizontalDirection();if(!aj){return false}return this.floating?(((ai&&ai==="right")||ae==="down")?2:1):(ae&&(ae==="down"?2:1))},_intersectsWithSides:function(ah){var af=this._isOverAxis(this.positionAbs.top+this.offset.click.top,ah.top+(ah.height/2),ah.height),ag=this._isOverAxis(this.positionAbs.left+this.offset.click.left,ah.left+(ah.width/2),ah.width),ae=this._getDragVerticalDirection(),ai=this._getDragHorizontalDirection();if(this.floating&&ai){return((ai==="right"&&ag)||(ai==="left"&&!ag))}else{return ae&&((ae==="down"&&af)||(ae==="up"&&!af))}},_getDragVerticalDirection:function(){var ae=this.positionAbs.top-this.lastPositionAbs.top;return ae!==0&&(ae>0?"down":"up")},_getDragHorizontalDirection:function(){var ae=this.positionAbs.left-this.lastPositionAbs.left;return ae!==0&&(ae>0?"right":"left")},refresh:function(ae){this._refreshItems(ae);this._setHandleClassName();this.refreshPositions();return this},_connectWith:function(){var ae=this.options;return ae.connectWith.constructor===String?[ae.connectWith]:ae.connectWith},_getItemsAsjQuery:function(ae){var ag,af,al,ai,aj=[],ah=[],ak=this._connectWith();if(ak&&ae){for(ag=ak.length-1;ag>=0;ag--){al=I(ak[ag]);for(af=al.length-1;af>=0;af--){ai=I.data(al[af],this.widgetFullName);if(ai&&ai!==this&&!ai.options.disabled){ah.push([I.isFunction(ai.options.items)?ai.options.items.call(ai.element):I(ai.options.items,ai.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),ai])}}}}ah.push([I.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):I(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]);function am(){aj.push(this)}for(ag=ah.length-1;ag>=0;ag--){ah[ag][0].each(am)}return I(aj)},_removeCurrentsFromItems:function(){var ae=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=I.grep(this.items,function(ag){for(var af=0;af<ae.length;af++){if(ae[af]===ag.item[0]){return false}}return true})},_refreshItems:function(ae){this.items=[];this.containers=[this];var ai,ag,an,aj,am,af,ap,ao,ak=this.items,ah=[[I.isFunction(this.options.items)?this.options.items.call(this.element[0],ae,{item:this.currentItem}):I(this.options.items,this.element),this]],al=this._connectWith();if(al&&this.ready){for(ai=al.length-1;ai>=0;ai--){an=I(al[ai]);for(ag=an.length-1;ag>=0;ag--){aj=I.data(an[ag],this.widgetFullName);if(aj&&aj!==this&&!aj.options.disabled){ah.push([I.isFunction(aj.options.items)?aj.options.items.call(aj.element[0],ae,{item:this.currentItem}):I(aj.options.items,aj.element),aj]);this.containers.push(aj)}}}}for(ai=ah.length-1;ai>=0;ai--){am=ah[ai][1];af=ah[ai][0];for(ag=0,ao=af.length;ag<ao;ag++){ap=I(af[ag]);ap.data(this.widgetName+"-item",am);ak.push({item:ap,instance:am,width:0,height:0,left:0,top:0})}}},refreshPositions:function(ae){if(this.offsetParent&&this.helper){this.offset.parent=this._getParentOffset()}var ag,ah,af,ai;for(ag=this.items.length-1;ag>=0;ag--){ah=this.items[ag];if(ah.instance!==this.currentContainer&&this.currentContainer&&ah.item[0]!==this.currentItem[0]){continue}af=this.options.toleranceElement?I(this.options.toleranceElement,ah.item):ah.item;if(!ae){ah.width=af.outerWidth();ah.height=af.outerHeight()}ai=af.offset();ah.left=ai.left;ah.top=ai.top}if(this.options.custom&&this.options.custom.refreshContainers){this.options.custom.refreshContainers.call(this)}else{for(ag=this.containers.length-1;ag>=0;ag--){ai=this.containers[ag].element.offset();this.containers[ag].containerCache.left=ai.left;this.containers[ag].containerCache.top=ai.top;this.containers[ag].containerCache.width=this.containers[ag].element.outerWidth();this.containers[ag].containerCache.height=this.containers[ag].element.outerHeight()}}return this},_createPlaceholder:function(af){af=af||this;var ae,ag=af.options;if(!ag.placeholder||ag.placeholder.constructor===String){ae=ag.placeholder;ag.placeholder={element:function(){var ai=af.currentItem[0].nodeName.toLowerCase(),ah=I("<"+ai+">",af.document[0]).addClass(ae||af.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper");if(ai==="tr"){af.currentItem.children().each(function(){I("<td>&#160;</td>",af.document[0]).attr("colspan",I(this).attr("colspan")||1).appendTo(ah)})}else{if(ai==="img"){ah.attr("src",af.currentItem.attr("src"))}}if(!ae){ah.css("visibility","hidden")}return ah},update:function(ah,ai){if(ae&&!ag.forcePlaceholderSize){return}if(!ai.height()){ai.height(af.currentItem.innerHeight()-parseInt(af.currentItem.css("paddingTop")||0,10)-parseInt(af.currentItem.css("paddingBottom")||0,10))}if(!ai.width()){ai.width(af.currentItem.innerWidth()-parseInt(af.currentItem.css("paddingLeft")||0,10)-parseInt(af.currentItem.css("paddingRight")||0,10))}}}}af.placeholder=I(ag.placeholder.element.call(af.element,af.currentItem));af.currentItem.after(af.placeholder);ag.placeholder.update(af,af.placeholder)},_contactContainers:function(ae){var aj,ah,an,ak,al,ap,aq,ai,am,ag,af=null,ao=null;for(aj=this.containers.length-1;aj>=0;aj--){if(I.contains(this.currentItem[0],this.containers[aj].element[0])){continue}if(this._intersectsWith(this.containers[aj].containerCache)){if(af&&I.contains(this.containers[aj].element[0],af.element[0])){continue}af=this.containers[aj];ao=aj}else{if(this.containers[aj].containerCache.over){this.containers[aj]._trigger("out",ae,this._uiHash(this));this.containers[aj].containerCache.over=0}}}if(!af){return}if(this.containers.length===1){if(!this.containers[ao].containerCache.over){this.containers[ao]._trigger("over",ae,this._uiHash(this));this.containers[ao].containerCache.over=1}}else{an=10000;ak=null;am=af.floating||this._isFloating(this.currentItem);al=am?"left":"top";ap=am?"width":"height";ag=am?"clientX":"clientY";for(ah=this.items.length-1;ah>=0;ah--){if(!I.contains(this.containers[ao].element[0],this.items[ah].item[0])){continue}if(this.items[ah].item[0]===this.currentItem[0]){continue}aq=this.items[ah].item.offset()[al];ai=false;if(ae[ag]-aq>this.items[ah][ap]/2){ai=true}if(Math.abs(ae[ag]-aq)<an){an=Math.abs(ae[ag]-aq);ak=this.items[ah];this.direction=ai?"up":"down"}}if(!ak&&!this.options.dropOnEmpty){return}if(this.currentContainer===this.containers[ao]){if(!this.currentContainer.containerCache.over){this.containers[ao]._trigger("over",ae,this._uiHash());this.currentContainer.containerCache.over=1}return}ak?this._rearrange(ae,ak,null,true):this._rearrange(ae,null,this.containers[ao].element,true);this._trigger("change",ae,this._uiHash());this.containers[ao]._trigger("change",ae,this._uiHash(this));this.currentContainer=this.containers[ao];this.options.placeholder.update(this.currentContainer,this.placeholder);this.containers[ao]._trigger("over",ae,this._uiHash(this));this.containers[ao].containerCache.over=1}},_createHelper:function(af){var ag=this.options,ae=I.isFunction(ag.helper)?I(ag.helper.apply(this.element[0],[af,this.currentItem])):(ag.helper==="clone"?this.currentItem.clone():this.currentItem);if(!ae.parents("body").length){I(ag.appendTo!=="parent"?ag.appendTo:this.currentItem[0].parentNode)[0].appendChild(ae[0])}if(ae[0]===this.currentItem[0]){this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}}if(!ae[0].style.width||ag.forceHelperSize){ae.width(this.currentItem.width())}if(!ae[0].style.height||ag.forceHelperSize){ae.height(this.currentItem.height())}return ae},_adjustOffsetFromHelper:function(ae){if(typeof ae==="string"){ae=ae.split(" ")}if(I.isArray(ae)){ae={left:+ae[0],top:+ae[1]||0}}if("left" in ae){this.offset.click.left=ae.left+this.margins.left}if("right" in ae){this.offset.click.left=this.helperProportions.width-ae.right+this.margins.left}if("top" in ae){this.offset.click.top=ae.top+this.margins.top}if("bottom" in ae){this.offset.click.top=this.helperProportions.height-ae.bottom+this.margins.top}},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var ae=this.offsetParent.offset();if(this.cssPosition==="absolute"&&this.scrollParent[0]!==document&&I.contains(this.scrollParent[0],this.offsetParent[0])){ae.left+=this.scrollParent.scrollLeft();ae.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]===document.body||(this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()==="html"&&I.ui.ie)){ae={top:0,left:0}}return{top:ae.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:ae.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition==="relative"){var ae=this.currentItem.position();return{top:ae.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:ae.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else{return{top:0,left:0}}},_cacheMargins:function(){this.margins={left:(parseInt(this.currentItem.css("marginLeft"),10)||0),top:(parseInt(this.currentItem.css("marginTop"),10)||0)}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var af,ah,ae,ag=this.options;if(ag.containment==="parent"){ag.containment=this.helper[0].parentNode}if(ag.containment==="document"||ag.containment==="window"){this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,I(ag.containment==="document"?document:window).width()-this.helperProportions.width-this.margins.left,(I(ag.containment==="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]}if(!(/^(document|window|parent)$/).test(ag.containment)){af=I(ag.containment)[0];ah=I(ag.containment).offset();ae=(I(af).css("overflow")!=="hidden");this.containment=[ah.left+(parseInt(I(af).css("borderLeftWidth"),10)||0)+(parseInt(I(af).css("paddingLeft"),10)||0)-this.margins.left,ah.top+(parseInt(I(af).css("borderTopWidth"),10)||0)+(parseInt(I(af).css("paddingTop"),10)||0)-this.margins.top,ah.left+(ae?Math.max(af.scrollWidth,af.offsetWidth):af.offsetWidth)-(parseInt(I(af).css("borderLeftWidth"),10)||0)-(parseInt(I(af).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,ah.top+(ae?Math.max(af.scrollHeight,af.offsetHeight):af.offsetHeight)-(parseInt(I(af).css("borderTopWidth"),10)||0)-(parseInt(I(af).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_convertPositionTo:function(ag,ai){if(!ai){ai=this.position}var af=ag==="absolute"?1:-1,ae=this.cssPosition==="absolute"&&!(this.scrollParent[0]!==document&&I.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,ah=(/(html|body)/i).test(ae[0].tagName);return{top:(ai.top+this.offset.relative.top*af+this.offset.parent.top*af-((this.cssPosition==="fixed"?-this.scrollParent.scrollTop():(ah?0:ae.scrollTop()))*af)),left:(ai.left+this.offset.relative.left*af+this.offset.parent.left*af-((this.cssPosition==="fixed"?-this.scrollParent.scrollLeft():ah?0:ae.scrollLeft())*af))}},_generatePosition:function(ah){var aj,ai,ak=this.options,ag=ah.pageX,af=ah.pageY,ae=this.cssPosition==="absolute"&&!(this.scrollParent[0]!==document&&I.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,al=(/(html|body)/i).test(ae[0].tagName);if(this.cssPosition==="relative"&&!(this.scrollParent[0]!==document&&this.scrollParent[0]!==this.offsetParent[0])){this.offset.relative=this._getRelativeOffset()}if(this.originalPosition){if(this.containment){if(ah.pageX-this.offset.click.left<this.containment[0]){ag=this.containment[0]+this.offset.click.left}if(ah.pageY-this.offset.click.top<this.containment[1]){af=this.containment[1]+this.offset.click.top}if(ah.pageX-this.offset.click.left>this.containment[2]){ag=this.containment[2]+this.offset.click.left}if(ah.pageY-this.offset.click.top>this.containment[3]){af=this.containment[3]+this.offset.click.top}}if(ak.grid){aj=this.originalPageY+Math.round((af-this.originalPageY)/ak.grid[1])*ak.grid[1];af=this.containment?((aj-this.offset.click.top>=this.containment[1]&&aj-this.offset.click.top<=this.containment[3])?aj:((aj-this.offset.click.top>=this.containment[1])?aj-ak.grid[1]:aj+ak.grid[1])):aj;ai=this.originalPageX+Math.round((ag-this.originalPageX)/ak.grid[0])*ak.grid[0];ag=this.containment?((ai-this.offset.click.left>=this.containment[0]&&ai-this.offset.click.left<=this.containment[2])?ai:((ai-this.offset.click.left>=this.containment[0])?ai-ak.grid[0]:ai+ak.grid[0])):ai}}return{top:(af-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+((this.cssPosition==="fixed"?-this.scrollParent.scrollTop():(al?0:ae.scrollTop())))),left:(ag-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+((this.cssPosition==="fixed"?-this.scrollParent.scrollLeft():al?0:ae.scrollLeft())))}},_rearrange:function(ai,ah,af,ag){af?af[0].appendChild(this.placeholder[0]):ah.item[0].parentNode.insertBefore(this.placeholder[0],(this.direction==="down"?ah.item[0]:ah.item[0].nextSibling));this.counter=this.counter?++this.counter:1;var ae=this.counter;this._delay(function(){if(ae===this.counter){this.refreshPositions(!ag)}})},_clear:function(af,ah){this.reverting=false;var ae,ai=[];if(!this._noFinalSort&&this.currentItem.parent().length){this.placeholder.before(this.currentItem)}this._noFinalSort=null;if(this.helper[0]===this.currentItem[0]){for(ae in this._storedCSS){if(this._storedCSS[ae]==="auto"||this._storedCSS[ae]==="static"){this._storedCSS[ae]=""}}this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else{this.currentItem.show()}if(this.fromOutside&&!ah){ai.push(function(aj){this._trigger("receive",aj,this._uiHash(this.fromOutside))})}if((this.fromOutside||this.domPosition.prev!==this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!==this.currentItem.parent()[0])&&!ah){ai.push(function(aj){this._trigger("update",aj,this._uiHash())})}if(this!==this.currentContainer){if(!ah){ai.push(function(aj){this._trigger("remove",aj,this._uiHash())});ai.push((function(aj){return function(ak){aj._trigger("receive",ak,this._uiHash(this))}}).call(this,this.currentContainer));ai.push((function(aj){return function(ak){aj._trigger("update",ak,this._uiHash(this))}}).call(this,this.currentContainer))}}function ag(al,aj,ak){return function(am){ak._trigger(al,am,aj._uiHash(aj))}}for(ae=this.containers.length-1;ae>=0;ae--){if(!ah){ai.push(ag("deactivate",this,this.containers[ae]))}if(this.containers[ae].containerCache.over){ai.push(ag("out",this,this.containers[ae]));this.containers[ae].containerCache.over=0}}if(this.storedCursor){this.document.find("body").css("cursor",this.storedCursor);this.storedStylesheet.remove()}if(this._storedOpacity){this.helper.css("opacity",this._storedOpacity)}if(this._storedZIndex){this.helper.css("zIndex",this._storedZIndex==="auto"?"":this._storedZIndex)}this.dragging=false;if(!ah){this._trigger("beforeStop",af,this._uiHash())}this.placeholder[0].parentNode.removeChild(this.placeholder[0]);if(!this.cancelHelperRemoval){if(this.helper[0]!==this.currentItem[0]){this.helper.remove()}this.helper=null}if(!ah){for(ae=0;ae<ai.length;ae++){ai[ae].call(this,af)}this._trigger("stop",af,this._uiHash())}this.fromOutside=false;return !this.cancelHelperRemoval},_trigger:function(){if(I.Widget.prototype._trigger.apply(this,arguments)===false){this.cancel()}},_uiHash:function(ae){var af=ae||this;return{helper:af.helper,placeholder:af.placeholder||I([]),position:af.position,originalPosition:af.originalPosition,offset:af.positionAbs,item:af.currentItem,sender:ae?ae.element:null}}});
391
- /*!
392
- * jQuery UI Spinner 1.11.2
393
- * http://jqueryui.com
394
- *
395
- * Copyright 2014 jQuery Foundation and other contributors
396
- * Released under the MIT license.
397
- * http://jquery.org/license
398
- *
399
- * http://api.jqueryui.com/spinner/
400
- */
401
- function u(ae){return function(){var af=this.element.val();ae.apply(this,arguments);this._refresh();if(af!==this.element.val()){this._trigger("change")}}}var K=I.widget("ui.spinner",{version:"1.11.2",defaultElement:"<input>",widgetEventPrefix:"spin",options:{culture:null,icons:{down:"ui-icon-triangle-1-s",up:"ui-icon-triangle-1-n"},incremental:true,max:null,min:null,numberFormat:null,page:10,step:1,change:null,spin:null,start:null,stop:null},_create:function(){this._setOption("max",this.options.max);this._setOption("min",this.options.min);this._setOption("step",this.options.step);if(this.value()!==""){this._value(this.element.val(),true)}this._draw();this._on(this._events);this._refresh();this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_getCreateOptions:function(){var ae={},af=this.element;I.each(["min","max","step"],function(ag,ah){var ai=af.attr(ah);if(ai!==undefined&&ai.length){ae[ah]=ai}});return ae},_events:{keydown:function(ae){if(this._start(ae)&&this._keydown(ae)){ae.preventDefault()}},keyup:"_stop",focus:function(){this.previous=this.element.val()},blur:function(ae){if(this.cancelBlur){delete this.cancelBlur;return}this._stop();this._refresh();if(this.previous!==this.element.val()){this._trigger("change",ae)}},mousewheel:function(ae,af){if(!af){return}if(!this.spinning&&!this._start(ae)){return false}this._spin((af>0?1:-1)*this.options.step,ae);clearTimeout(this.mousewheelTimer);this.mousewheelTimer=this._delay(function(){if(this.spinning){this._stop(ae)}},100);ae.preventDefault()},"mousedown .ui-spinner-button":function(af){var ae;ae=this.element[0]===this.document[0].activeElement?this.previous:this.element.val();function ag(){var ah=this.element[0]===this.document[0].activeElement;if(!ah){this.element.focus();this.previous=ae;this._delay(function(){this.previous=ae})}}af.preventDefault();ag.call(this);this.cancelBlur=true;this._delay(function(){delete this.cancelBlur;ag.call(this)});if(this._start(af)===false){return}this._repeat(null,I(af.currentTarget).hasClass("ui-spinner-up")?1:-1,af)},"mouseup .ui-spinner-button":"_stop","mouseenter .ui-spinner-button":function(ae){if(!I(ae.currentTarget).hasClass("ui-state-active")){return}if(this._start(ae)===false){return false}this._repeat(null,I(ae.currentTarget).hasClass("ui-spinner-up")?1:-1,ae)},"mouseleave .ui-spinner-button":"_stop"},_draw:function(){var ae=this.uiSpinner=this.element.addClass("ui-spinner-input").attr("autocomplete","off").wrap(this._uiSpinnerHtml()).parent().append(this._buttonHtml());this.element.attr("role","spinbutton");this.buttons=ae.find(".ui-spinner-button").attr("tabIndex",-1).button().removeClass("ui-corner-all");if(this.buttons.height()>Math.ceil(ae.height()*0.5)&&ae.height()>0){ae.height(ae.height())}if(this.options.disabled){this.disable()}},_keydown:function(af){var ae=this.options,ag=I.ui.keyCode;switch(af.keyCode){case ag.UP:this._repeat(null,1,af);return true;case ag.DOWN:this._repeat(null,-1,af);return true;case ag.PAGE_UP:this._repeat(null,ae.page,af);return true;case ag.PAGE_DOWN:this._repeat(null,-ae.page,af);return true}return false},_uiSpinnerHtml:function(){return"<span class='ui-spinner ui-widget ui-widget-content ui-corner-all'></span>"},_buttonHtml:function(){return"<a class='ui-spinner-button ui-spinner-up ui-corner-tr'><span class='ui-icon "+this.options.icons.up+"'>&#9650;</span></a><a class='ui-spinner-button ui-spinner-down ui-corner-br'><span class='ui-icon "+this.options.icons.down+"'>&#9660;</span></a>"},_start:function(ae){if(!this.spinning&&this._trigger("start",ae)===false){return false}if(!this.counter){this.counter=1}this.spinning=true;return true},_repeat:function(af,ae,ag){af=af||500;clearTimeout(this.timer);this.timer=this._delay(function(){this._repeat(40,ae,ag)},af);this._spin(ae*this.options.step,ag)},_spin:function(af,ae){var ag=this.value()||0;if(!this.counter){this.counter=1}ag=this._adjustValue(ag+af*this._increment(this.counter));if(!this.spinning||this._trigger("spin",ae,{value:ag})!==false){this._value(ag);this.counter++}},_increment:function(ae){var af=this.options.incremental;if(af){return I.isFunction(af)?af(ae):Math.floor(ae*ae*ae/50000-ae*ae/500+17*ae/200+1)}return 1},_precision:function(){var ae=this._precisionOf(this.options.step);if(this.options.min!==null){ae=Math.max(ae,this._precisionOf(this.options.min))}return ae},_precisionOf:function(af){var ag=af.toString(),ae=ag.indexOf(".");return ae===-1?0:ag.length-ae-1},_adjustValue:function(ag){var af,ah,ae=this.options;af=ae.min!==null?ae.min:0;ah=ag-af;ah=Math.round(ah/ae.step)*ae.step;ag=af+ah;ag=parseFloat(ag.toFixed(this._precision()));if(ae.max!==null&&ag>ae.max){return ae.max}if(ae.min!==null&&ag<ae.min){return ae.min}return ag},_stop:function(ae){if(!this.spinning){return}clearTimeout(this.timer);clearTimeout(this.mousewheelTimer);this.counter=0;this.spinning=false;this._trigger("stop",ae)},_setOption:function(ae,af){if(ae==="culture"||ae==="numberFormat"){var ag=this._parse(this.element.val());this.options[ae]=af;this.element.val(this._format(ag));return}if(ae==="max"||ae==="min"||ae==="step"){if(typeof af==="string"){af=this._parse(af)}}if(ae==="icons"){this.buttons.first().find(".ui-icon").removeClass(this.options.icons.up).addClass(af.up);this.buttons.last().find(".ui-icon").removeClass(this.options.icons.down).addClass(af.down)}this._super(ae,af);if(ae==="disabled"){this.widget().toggleClass("ui-state-disabled",!!af);this.element.prop("disabled",!!af);this.buttons.button(af?"disable":"enable")}},_setOptions:u(function(ae){this._super(ae)}),_parse:function(ae){if(typeof ae==="string"&&ae!==""){ae=window.Globalize&&this.options.numberFormat?Globalize.parseFloat(ae,10,this.options.culture):+ae}return ae===""||isNaN(ae)?null:ae},_format:function(ae){if(ae===""){return""}return window.Globalize&&this.options.numberFormat?Globalize.format(ae,this.options.numberFormat,this.options.culture):ae},_refresh:function(){this.element.attr({"aria-valuemin":this.options.min,"aria-valuemax":this.options.max,"aria-valuenow":this._parse(this.element.val())})},isValid:function(){var ae=this.value();if(ae===null){return false}return ae===this._adjustValue(ae)},_value:function(ag,ae){var af;if(ag!==""){af=this._parse(ag);if(af!==null){if(!ae){af=this._adjustValue(af)}ag=this._format(af)}}this.element.val(ag);this._refresh()},_destroy:function(){this.element.removeClass("ui-spinner-input").prop("disabled",false).removeAttr("autocomplete").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");this.uiSpinner.replaceWith(this.element)},stepUp:u(function(ae){this._stepUp(ae)}),_stepUp:function(ae){if(this._start()){this._spin((ae||1)*this.options.step);this._stop()}},stepDown:u(function(ae){this._stepDown(ae)}),_stepDown:function(ae){if(this._start()){this._spin((ae||1)*-this.options.step);this._stop()}},pageUp:u(function(ae){this._stepUp((ae||1)*this.options.page)}),pageDown:u(function(ae){this._stepDown((ae||1)*this.options.page)}),value:function(ae){if(!arguments.length){return this._parse(this.element.val())}u(this._value).call(this,ae)},widget:function(){return this.uiSpinner}});
402
- /*!
403
- * jQuery UI Tabs 1.11.2
404
- * http://jqueryui.com
405
- *
406
- * Copyright 2014 jQuery Foundation and other contributors
407
- * Released under the MIT license.
408
- * http://jquery.org/license
409
- *
410
- * http://api.jqueryui.com/tabs/
411
- */
412
- var j=I.widget("ui.tabs",{version:"1.11.2",delay:300,options:{active:null,collapsible:false,event:"click",heightStyle:"content",hide:null,show:null,activate:null,beforeActivate:null,beforeLoad:null,load:null},_isLocal:(function(){var ae=/#.*$/;return function(ag){var ai,ah;ag=ag.cloneNode(false);ai=ag.href.replace(ae,"");ah=location.href.replace(ae,"");try{ai=decodeURIComponent(ai)}catch(af){}try{ah=decodeURIComponent(ah)}catch(af){}return ag.hash.length>1&&ai===ah}})(),_create:function(){var af=this,ae=this.options;this.running=false;this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all").toggleClass("ui-tabs-collapsible",ae.collapsible);this._processTabs();ae.active=this._initialActive();if(I.isArray(ae.disabled)){ae.disabled=I.unique(ae.disabled.concat(I.map(this.tabs.filter(".ui-state-disabled"),function(ag){return af.tabs.index(ag)}))).sort()}if(this.options.active!==false&&this.anchors.length){this.active=this._findActive(ae.active)}else{this.active=I()}this._refresh();if(this.active.length){this.load(ae.active)}},_initialActive:function(){var af=this.options.active,ae=this.options.collapsible,ag=location.hash.substring(1);if(af===null){if(ag){this.tabs.each(function(ah,ai){if(I(ai).attr("aria-controls")===ag){af=ah;return false}})}if(af===null){af=this.tabs.index(this.tabs.filter(".ui-tabs-active"))}if(af===null||af===-1){af=this.tabs.length?0:false}}if(af!==false){af=this.tabs.index(this.tabs.eq(af));if(af===-1){af=ae?false:0}}if(!ae&&af===false&&this.anchors.length){af=0}return af},_getCreateEventData:function(){return{tab:this.active,panel:!this.active.length?I():this._getPanelForTab(this.active)}},_tabKeydown:function(ag){var af=I(this.document[0].activeElement).closest("li"),ae=this.tabs.index(af),ah=true;if(this._handlePageNav(ag)){return}switch(ag.keyCode){case I.ui.keyCode.RIGHT:case I.ui.keyCode.DOWN:ae++;break;case I.ui.keyCode.UP:case I.ui.keyCode.LEFT:ah=false;ae--;break;case I.ui.keyCode.END:ae=this.anchors.length-1;break;case I.ui.keyCode.HOME:ae=0;break;case I.ui.keyCode.SPACE:ag.preventDefault();clearTimeout(this.activating);this._activate(ae);return;case I.ui.keyCode.ENTER:ag.preventDefault();clearTimeout(this.activating);this._activate(ae===this.options.active?false:ae);return;default:return}ag.preventDefault();clearTimeout(this.activating);ae=this._focusNextTab(ae,ah);if(!ag.ctrlKey){af.attr("aria-selected","false");this.tabs.eq(ae).attr("aria-selected","true");this.activating=this._delay(function(){this.option("active",ae)},this.delay)}},_panelKeydown:function(ae){if(this._handlePageNav(ae)){return}if(ae.ctrlKey&&ae.keyCode===I.ui.keyCode.UP){ae.preventDefault();this.active.focus()}},_handlePageNav:function(ae){if(ae.altKey&&ae.keyCode===I.ui.keyCode.PAGE_UP){this._activate(this._focusNextTab(this.options.active-1,false));return true}if(ae.altKey&&ae.keyCode===I.ui.keyCode.PAGE_DOWN){this._activate(this._focusNextTab(this.options.active+1,true));return true}},_findNextTab:function(af,ag){var ae=this.tabs.length-1;function ah(){if(af>ae){af=0}if(af<0){af=ae}return af}while(I.inArray(ah(),this.options.disabled)!==-1){af=ag?af+1:af-1}return af},_focusNextTab:function(ae,af){ae=this._findNextTab(ae,af);this.tabs.eq(ae).focus();return ae},_setOption:function(ae,af){if(ae==="active"){this._activate(af);return}if(ae==="disabled"){this._setupDisabled(af);return}this._super(ae,af);if(ae==="collapsible"){this.element.toggleClass("ui-tabs-collapsible",af);if(!af&&this.options.active===false){this._activate(0)}}if(ae==="event"){this._setupEvents(af)}if(ae==="heightStyle"){this._setupHeightStyle(af)}},_sanitizeSelector:function(ae){return ae?ae.replace(/[!"$%&'()*+,.\/:;<=>?@\[\]\^`{|}~]/g,"\\$&"):""},refresh:function(){var af=this.options,ae=this.tablist.children(":has(a[href])");af.disabled=I.map(ae.filter(".ui-state-disabled"),function(ag){return ae.index(ag)});this._processTabs();if(af.active===false||!this.anchors.length){af.active=false;this.active=I()}else{if(this.active.length&&!I.contains(this.tablist[0],this.active[0])){if(this.tabs.length===af.disabled.length){af.active=false;this.active=I()}else{this._activate(this._findNextTab(Math.max(0,af.active-1),false))}}else{af.active=this.tabs.index(this.active)}}this._refresh()},_refresh:function(){this._setupDisabled(this.options.disabled);this._setupEvents(this.options.event);this._setupHeightStyle(this.options.heightStyle);this.tabs.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1});this.panels.not(this._getPanelForTab(this.active)).hide().attr({"aria-hidden":"true"});if(!this.active.length){this.tabs.eq(0).attr("tabIndex",0)}else{this.active.addClass("ui-tabs-active ui-state-active").attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0});this._getPanelForTab(this.active).show().attr({"aria-hidden":"false"})}},_processTabs:function(){var ag=this,ah=this.tabs,af=this.anchors,ae=this.panels;this.tablist=this._getList().addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").attr("role","tablist").delegate("> li","mousedown"+this.eventNamespace,function(ai){if(I(this).is(".ui-state-disabled")){ai.preventDefault()}}).delegate(".ui-tabs-anchor","focus"+this.eventNamespace,function(){if(I(this).closest("li").is(".ui-state-disabled")){this.blur()}});this.tabs=this.tablist.find("> li:has(a[href])").addClass("ui-state-default ui-corner-top").attr({role:"tab",tabIndex:-1});this.anchors=this.tabs.map(function(){return I("a",this)[0]}).addClass("ui-tabs-anchor").attr({role:"presentation",tabIndex:-1});this.panels=I();this.anchors.each(function(an,al){var ai,aj,am,ak=I(al).uniqueId().attr("id"),ao=I(al).closest("li"),ap=ao.attr("aria-controls");if(ag._isLocal(al)){ai=al.hash;am=ai.substring(1);aj=ag.element.find(ag._sanitizeSelector(ai))}else{am=ao.attr("aria-controls")||I({}).uniqueId()[0].id;ai="#"+am;aj=ag.element.find(ai);if(!aj.length){aj=ag._createPanel(am);aj.insertAfter(ag.panels[an-1]||ag.tablist)}aj.attr("aria-live","polite")}if(aj.length){ag.panels=ag.panels.add(aj)}if(ap){ao.data("ui-tabs-aria-controls",ap)}ao.attr({"aria-controls":am,"aria-labelledby":ak});aj.attr("aria-labelledby",ak)});this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").attr("role","tabpanel");if(ah){this._off(ah.not(this.tabs));this._off(af.not(this.anchors));this._off(ae.not(this.panels))}},_getList:function(){return this.tablist||this.element.find("ol,ul").eq(0)},_createPanel:function(ae){return I("<div>").attr("id",ae).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").data("ui-tabs-destroy",true)},_setupDisabled:function(ag){if(I.isArray(ag)){if(!ag.length){ag=false}else{if(ag.length===this.anchors.length){ag=true}}}for(var af=0,ae;(ae=this.tabs[af]);af++){if(ag===true||I.inArray(af,ag)!==-1){I(ae).addClass("ui-state-disabled").attr("aria-disabled","true")}else{I(ae).removeClass("ui-state-disabled").removeAttr("aria-disabled")}}this.options.disabled=ag},_setupEvents:function(af){var ae={};if(af){I.each(af.split(" "),function(ah,ag){ae[ag]="_eventHandler"})}this._off(this.anchors.add(this.tabs).add(this.panels));this._on(true,this.anchors,{click:function(ag){ag.preventDefault()}});this._on(this.anchors,ae);this._on(this.tabs,{keydown:"_tabKeydown"});this._on(this.panels,{keydown:"_panelKeydown"});this._focusable(this.tabs);this._hoverable(this.tabs)},_setupHeightStyle:function(ae){var ag,af=this.element.parent();if(ae==="fill"){ag=af.height();ag-=this.element.outerHeight()-this.element.height();this.element.siblings(":visible").each(function(){var ai=I(this),ah=ai.css("position");if(ah==="absolute"||ah==="fixed"){return}ag-=ai.outerHeight(true)});this.element.children().not(this.panels).each(function(){ag-=I(this).outerHeight(true)});this.panels.each(function(){I(this).height(Math.max(0,ag-I(this).innerHeight()+I(this).height()))}).css("overflow","auto")}else{if(ae==="auto"){ag=0;this.panels.each(function(){ag=Math.max(ag,I(this).height("").height())}).height(ag)}}},_eventHandler:function(ae){var an=this.options,ai=this.active,aj=I(ae.currentTarget),ah=aj.closest("li"),al=ah[0]===ai[0],af=al&&an.collapsible,ag=af?I():this._getPanelForTab(ah),ak=!ai.length?I():this._getPanelForTab(ai),am={oldTab:ai,oldPanel:ak,newTab:af?I():ah,newPanel:ag};ae.preventDefault();if(ah.hasClass("ui-state-disabled")||ah.hasClass("ui-tabs-loading")||this.running||(al&&!an.collapsible)||(this._trigger("beforeActivate",ae,am)===false)){return}an.active=af?false:this.tabs.index(ah);this.active=al?I():ah;if(this.xhr){this.xhr.abort()}if(!ak.length&&!ag.length){I.error("jQuery UI Tabs: Mismatching fragment identifier.")}if(ag.length){this.load(this.tabs.index(ah),ae)}this._toggle(ae,am)},_toggle:function(ak,aj){var ai=this,ae=aj.newPanel,ah=aj.oldPanel;this.running=true;function ag(){ai.running=false;ai._trigger("activate",ak,aj)}function af(){aj.newTab.closest("li").addClass("ui-tabs-active ui-state-active");if(ae.length&&ai.options.show){ai._show(ae,ai.options.show,ag)}else{ae.show();ag()}}if(ah.length&&this.options.hide){this._hide(ah,this.options.hide,function(){aj.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active");af()})}else{aj.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active");ah.hide();af()}ah.attr("aria-hidden","true");aj.oldTab.attr({"aria-selected":"false","aria-expanded":"false"});if(ae.length&&ah.length){aj.oldTab.attr("tabIndex",-1)}else{if(ae.length){this.tabs.filter(function(){return I(this).attr("tabIndex")===0}).attr("tabIndex",-1)}}ae.attr("aria-hidden","false");aj.newTab.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0})},_activate:function(af){var ae,ag=this._findActive(af);if(ag[0]===this.active[0]){return}if(!ag.length){ag=this.active}ae=ag.find(".ui-tabs-anchor")[0];this._eventHandler({target:ae,currentTarget:ae,preventDefault:I.noop})},_findActive:function(ae){return ae===false?I():this.tabs.eq(ae)},_getIndex:function(ae){if(typeof ae==="string"){ae=this.anchors.index(this.anchors.filter("[href$='"+ae+"']"))}return ae},_destroy:function(){if(this.xhr){this.xhr.abort()}this.element.removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible");this.tablist.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").removeAttr("role");this.anchors.removeClass("ui-tabs-anchor").removeAttr("role").removeAttr("tabIndex").removeUniqueId();this.tablist.unbind(this.eventNamespace);this.tabs.add(this.panels).each(function(){if(I.data(this,"ui-tabs-destroy")){I(this).remove()}else{I(this).removeClass("ui-state-default ui-state-active ui-state-disabled ui-corner-top ui-corner-bottom ui-widget-content ui-tabs-active ui-tabs-panel").removeAttr("tabIndex").removeAttr("aria-live").removeAttr("aria-busy").removeAttr("aria-selected").removeAttr("aria-labelledby").removeAttr("aria-hidden").removeAttr("aria-expanded").removeAttr("role")}});this.tabs.each(function(){var ae=I(this),af=ae.data("ui-tabs-aria-controls");if(af){ae.attr("aria-controls",af).removeData("ui-tabs-aria-controls")}else{ae.removeAttr("aria-controls")}});this.panels.show();if(this.options.heightStyle!=="content"){this.panels.css("height","")}},enable:function(ae){var af=this.options.disabled;if(af===false){return}if(ae===undefined){af=false}else{ae=this._getIndex(ae);if(I.isArray(af)){af=I.map(af,function(ag){return ag!==ae?ag:null})}else{af=I.map(this.tabs,function(ag,ah){return ah!==ae?ah:null})}}this._setupDisabled(af)},disable:function(ae){var af=this.options.disabled;if(af===true){return}if(ae===undefined){af=true}else{ae=this._getIndex(ae);if(I.inArray(ae,af)!==-1){return}if(I.isArray(af)){af=I.merge([ae],af).sort()}else{af=[ae]}}this._setupDisabled(af)},load:function(ag,ak){ag=this._getIndex(ag);var aj=this,ah=this.tabs.eq(ag),af=ah.find(".ui-tabs-anchor"),ae=this._getPanelForTab(ah),ai={tab:ah,panel:ae};if(this._isLocal(af[0])){return}this.xhr=I.ajax(this._ajaxSettings(af,ak,ai));if(this.xhr&&this.xhr.statusText!=="canceled"){ah.addClass("ui-tabs-loading");ae.attr("aria-busy","true");this.xhr.success(function(al){setTimeout(function(){ae.html(al);aj._trigger("load",ak,ai)},1)}).complete(function(am,al){setTimeout(function(){if(al==="abort"){aj.panels.stop(false,true)}ah.removeClass("ui-tabs-loading");ae.removeAttr("aria-busy");if(am===aj.xhr){delete aj.xhr}},1)})}},_ajaxSettings:function(ae,ah,ag){var af=this;return{url:ae.attr("href"),beforeSend:function(aj,ai){return af._trigger("beforeLoad",ah,I.extend({jqXHR:aj,ajaxSettings:ai},ag))}}},_getPanelForTab:function(ae){var af=I(ae).attr("aria-controls");return this.element.find(this._sanitizeSelector("#"+af))}});
413
- /*!
414
- * jQuery UI Tooltip 1.11.2
415
- * http://jqueryui.com
416
- *
417
- * Copyright 2014 jQuery Foundation and other contributors
418
- * Released under the MIT license.
419
- * http://jquery.org/license
420
- *
421
- * http://api.jqueryui.com/tooltip/
422
- */
423
- var L=I.widget("ui.tooltip",{version:"1.11.2",options:{content:function(){var ae=I(this).attr("title")||"";return I("<a>").text(ae).html()},hide:true,items:"[title]:not([disabled])",position:{my:"left top+15",at:"left bottom",collision:"flipfit flip"},show:true,tooltipClass:null,track:false,close:null,open:null},_addDescribedBy:function(af,ag){var ae=(af.attr("aria-describedby")||"").split(/\s+/);ae.push(ag);af.data("ui-tooltip-id",ag).attr("aria-describedby",I.trim(ae.join(" ")))},_removeDescribedBy:function(ag){var ah=ag.data("ui-tooltip-id"),af=(ag.attr("aria-describedby")||"").split(/\s+/),ae=I.inArray(ah,af);if(ae!==-1){af.splice(ae,1)}ag.removeData("ui-tooltip-id");af=I.trim(af.join(" "));if(af){ag.attr("aria-describedby",af)}else{ag.removeAttr("aria-describedby")}},_create:function(){this._on({mouseover:"open",focusin:"open"});this.tooltips={};this.parents={};if(this.options.disabled){this._disable()}this.liveRegion=I("<div>").attr({role:"log","aria-live":"assertive","aria-relevant":"additions"}).addClass("ui-helper-hidden-accessible").appendTo(this.document[0].body)},_setOption:function(ae,ag){var af=this;if(ae==="disabled"){this[ag?"_disable":"_enable"]();this.options[ae]=ag;return}this._super(ae,ag);if(ae==="content"){I.each(this.tooltips,function(ai,ah){af._updateContent(ah.element)})}},_disable:function(){var ae=this;I.each(this.tooltips,function(ah,ag){var af=I.Event("blur");af.target=af.currentTarget=ag.element[0];ae.close(af,true)});this.element.find(this.options.items).addBack().each(function(){var af=I(this);if(af.is("[title]")){af.data("ui-tooltip-title",af.attr("title")).removeAttr("title")}})},_enable:function(){this.element.find(this.options.items).addBack().each(function(){var ae=I(this);if(ae.data("ui-tooltip-title")){ae.attr("title",ae.data("ui-tooltip-title"))}})},open:function(af){var ae=this,ag=I(af?af.target:this.element).closest(this.options.items);if(!ag.length||ag.data("ui-tooltip-id")){return}if(ag.attr("title")){ag.data("ui-tooltip-title",ag.attr("title"))}ag.data("ui-tooltip-open",true);if(af&&af.type==="mouseover"){ag.parents().each(function(){var ai=I(this),ah;if(ai.data("ui-tooltip-open")){ah=I.Event("blur");ah.target=ah.currentTarget=this;ae.close(ah,true)}if(ai.attr("title")){ai.uniqueId();ae.parents[this.id]={element:this,title:ai.attr("title")};ai.attr("title","")}})}this._updateContent(ag,af)},_updateContent:function(aj,ai){var ah,ae=this.options.content,ag=this,af=ai?ai.type:null;if(typeof ae==="string"){return this._open(ai,aj,ae)}ah=ae.call(aj[0],function(ak){if(!aj.data("ui-tooltip-open")){return}ag._delay(function(){if(ai){ai.type=af}this._open(ai,aj,ak)})});if(ah){this._open(ai,aj,ah)}},_open:function(af,ai,aj){var ae,an,am,al,ag,ak=I.extend({},this.options.position);if(!aj){return}ae=this._find(ai);if(ae){ae.tooltip.find(".ui-tooltip-content").html(aj);return}if(ai.is("[title]")){if(af&&af.type==="mouseover"){ai.attr("title","")}else{ai.removeAttr("title")}}ae=this._tooltip(ai);an=ae.tooltip;this._addDescribedBy(ai,an.attr("id"));an.find(".ui-tooltip-content").html(aj);this.liveRegion.children().hide();if(aj.clone){ag=aj.clone();ag.removeAttr("id").find("[id]").removeAttr("id")}else{ag=aj}I("<div>").html(ag).appendTo(this.liveRegion);function ah(ao){ak.of=ao;if(an.is(":hidden")){return}an.position(ak)}if(this.options.track&&af&&/^mouse/.test(af.type)){this._on(this.document,{mousemove:ah});ah(af)}else{an.position(I.extend({of:ai},this.options.position))}an.hide();this._show(an,this.options.show);if(this.options.show&&this.options.show.delay){al=this.delayedShow=setInterval(function(){if(an.is(":visible")){ah(ak.of);clearInterval(al)}},I.fx.interval)}this._trigger("open",af,{tooltip:an});am={keyup:function(ao){if(ao.keyCode===I.ui.keyCode.ESCAPE){var ap=I.Event(ao);ap.currentTarget=ai[0];this.close(ap,true)}}};if(ai[0]!==this.element[0]){am.remove=function(){this._removeTooltip(an)}}if(!af||af.type==="mouseover"){am.mouseleave="close"}if(!af||af.type==="focusin"){am.focusout="close"}this._on(true,ai,am)},close:function(af){var ah,ae=this,ai=I(af?af.currentTarget:this.element),ag=this._find(ai);if(!ag){return}ah=ag.tooltip;if(ag.closing){return}clearInterval(this.delayedShow);if(ai.data("ui-tooltip-title")&&!ai.attr("title")){ai.attr("title",ai.data("ui-tooltip-title"))}this._removeDescribedBy(ai);ag.hiding=true;ah.stop(true);this._hide(ah,this.options.hide,function(){ae._removeTooltip(I(this))});ai.removeData("ui-tooltip-open");this._off(ai,"mouseleave focusout keyup");if(ai[0]!==this.element[0]){this._off(ai,"remove")}this._off(this.document,"mousemove");if(af&&af.type==="mouseleave"){I.each(this.parents,function(ak,aj){I(aj.element).attr("title",aj.title);delete ae.parents[ak]})}ag.closing=true;this._trigger("close",af,{tooltip:ah});if(!ag.hiding){ag.closing=false}},_tooltip:function(ae){var af=I("<div>").attr("role","tooltip").addClass("ui-tooltip ui-widget ui-corner-all ui-widget-content "+(this.options.tooltipClass||"")),ag=af.uniqueId().attr("id");I("<div>").addClass("ui-tooltip-content").appendTo(af);af.appendTo(this.document[0].body);return this.tooltips[ag]={element:ae,tooltip:af}},_find:function(ae){var af=ae.data("ui-tooltip-id");return af?this.tooltips[af]:null},_removeTooltip:function(ae){ae.remove();delete this.tooltips[ae.attr("id")]},_destroy:function(){var ae=this;I.each(this.tooltips,function(ai,ah){var ag=I.Event("blur"),af=ah.element;ag.target=ag.currentTarget=af[0];ae.close(ag,true);I("#"+ai).remove();if(af.data("ui-tooltip-title")){if(!af.attr("title")){af.attr("title",af.data("ui-tooltip-title"))}af.removeData("ui-tooltip-title")}});this.liveRegion.remove()}})}));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/{js → third-party/validator}/validator.js RENAMED
File without changes
assets/third-party/validator/validator.min.css ADDED
@@ -0,0 +1,2 @@
 
 
1
+
2
+ .wpdiscuz-item .tooltip{float:left;top:2px;left:7px;position:relative;z-index:2}.wpdiscuz-item .tooltip:hover{z-index:3}.wpdiscuz-item .tooltip>span{display:inline-block;width:15px;height:15px;line-height:15px;font-size:.9em;font-weight:bold;text-align:center;color:#FFF;cursor:help;background-color:#00aeef;position:relative;border-radius:10px}.wpdiscuz-item .tooltip .content{opacity:0;width:200px;background-color:#333;color:#FFF;font-size:.9em;position:absolute;top:0;left:20px;padding:8px;border-radius:6px;pointer-events:none;transition:.2s cubic-bezier(0.1,0.1,0.25,2);-webkit-transition:.3s cubic-bezier(0.1,0.2,0.5,2.2);-moz-transition:.3s cubic-bezier(0.1,0.2,0.5,2.2)}.wpdiscuz-item .tooltip p{padding:0}.wpdiscuz-item .tooltip.down .content{left:auto;right:0;top:30px}.wpdiscuz-item .tooltip:hover .content{opacity:1;left:36px}.wpdiscuz-item .tooltip .content b{height:0;width:0;border-color:#333 #333 transparent transparent;border-style:solid;border-width:9px 7px;position:absolute;left:-14px;top:8px}.wpdiscuz-item .tooltip.down .content b{left:auto;right:6px;top:-10px;border-width:5px;border-color:transparent #333 #333 transparent}.wpdiscuz-item .alert{float:left;margin:0;padding:2px 10px;color:#d00;border-radius:3px 4px 4px 3px;background-color:#ffe8e8;white-space:pre;position:relative;left:-15px;opacity:0;z-index:1;transition:.15s ease-out}.wpdiscuz-item .alert{max-width:100%;position:absolute;top:-5px;font-size:12px}.wpdiscuz-item.bad .alert{left:0;opacity:1;padding:2px 4px;line-height:14px}@keyframes shake{15%{transform:translateX(-5px)}30%{transform:translateX(5px)}45%{transform:translateX(-3px)}60%{transform:translateX(3px)}75%{transform:translateX(2px)}100%{transform:none}}@-webkit-keyframes shake{25%{-webkit-transform:translateX(-6px)}75%{-webkit-transform:translateX(6px)}}form fieldset{clear:both;margin:0 0 10px 0}form .wpdiscuz-item{padding:3px 0;position:relative;height:2em;font-family:Lato,sans-serif}form .wpdiscuz-item.wpdiscuz-items{height:auto}.wpdiscuz-item label,.wpdiscuz-item .label{float:left;cursor:pointer}.wpdiscuz-item label span,.wpdiscuz-item .label{float:left;width:160px;text-transform:capitalize;line-height:2em}.wpdiscuz-item input,.wpdiscuz-item textarea{float:left;padding:3px 4px;width:210px;-webkit-transition:.2s;-moz-transition:.2s;transition:.2s}.wpdiscuz-item input[type=checkbox]{width:auto}.label ~ label{vertical-align:middle;margin:.3em 1.2em 0 0}.wpdiscuz-item input.short{width:90px}.wpdiscuz-item input:focus:not([type="checkbox"]),.wpdiscuz-item textarea:focus{box-shadow:0 0 4px #bcbcbc;border:1px solid #bcbcbc}.wpdiscuz-item select{float:left;width:220px;padding:2px 0;margin:0;border:1px solid #CCC;text-transform:capitalize}.wpdiscuz-item select option{padding:1px}.wpdiscuz-item>.extra{float:left;font-size:.9em;color:#999;line-height:2em;margin-left:13px}.wpdiscuz-item.multi .input{float:left}.wpdiscuz-item.multi input{float:left;margin-right:5px;width:35px;text-align:center}form .wpdiscuz-item.multi input:nth-last-child(-n+2){margin:0}.wpdiscuz-item.wpdiscuz-items input{border-top:5px solid #e1e1e1;margin:0 0 0 160px}.bad input,.bad select,.bad textarea{box-shadow:0 0 4px -2px #ce5454;position:relative;left:0}.wc_comm_form input{box-shadow:0 0 4px -2px #d4d0ba}.wc_comm_form textarea{box-shadow:0 0 4px -2px #d4d0ba}
assets/{js → third-party/validator}/validator.min.js RENAMED
@@ -1,2 +1,2 @@
1
-
2
  var wpdiscuzValidator=(function(c){var l,e,o,q,h,s,b,g,j,r,m,t,u,f,v,a=/[\(\)\<\>\,\;\:\\\/\"\[\]]/,d=/^.+@.+\..{2,50}$/;l={invalid:"invalid input",empty:"please put something here",min:"input is too short",max:"input is too long",number_min:"too low",number_max:"too high",url:"invalid URL",number:"not a number",email:"email address is invalid",email_repeat:"emails do not match",password_repeat:"passwords do not match",repeat:"no match",complete:"input is not complete",select:"Please select an option"};if(!window.console){console={};console.log=console.warn=function(){return}}j={alerts:true};e={sameAsPlaceholder:function(w){return c.fn.placeholder&&w.attr("placeholder")!==undefined&&v.val==w.prop("placeholder")},hasValue:function(w){if(!w){f=l.empty;return false}return true},linked:function(x,w){if(w!=x){f=l[v.type+"_repeat"]||l.no_match;return false}return true},email:function(w){if(!d.test(w)||w.match(a)){f=w?l.email:l.empty;return false}return true},text:function(x){if(r){var C=x.split(" ");var B=function(D){for(var E=C.length;E--;){if(C[E].length<D){return false}}return true};if(C.length<r||!B(2)){f=l.complete;return false}return true}if(m&&x.length<m[0]){f=l.min;return false}if(m&&m[1]&&x.length>m[1]){f=l.max;return false}if(t&&t.length){var A=false;while(t.length){if(t.pop()==x.length){A=true}}if(!A){f=l.complete;return false}}if(u){var z,w;switch(u){case"alphanumeric":z=/^[a-z0-9]+$/i;break;case"numeric":z=/^[0-9]+$/i;break;case"phone":z=/^\+?([0-9]|[-|' '])+$/i;break;default:z=u}try{w=new RegExp(z).test(x);if(x&&!w){return false}}catch(y){console.log(y,b,"regex is invalid");return false}}return true},number:function(w){if(isNaN(parseFloat(w))&&!isFinite(w)){f=l.number;return false}else{if(m&&w.length<m[0]){f=l.min;return false}else{if(m&&m[1]&&w.length>m[1]){f=l.max;return false}else{if(g[0]&&(w|0)<g[0]){f=l.number_min;return false}else{if(g[1]&&(w|0)>g[1]){f=l.number_max;return false}}}}}return true},date:function(x){var y,w=x.split(/[-./]/g),z;if(b[0].valueAsNumber){return true}for(z=w.length;z--;){if(isNaN(parseFloat(x))&&!isFinite(x)){return false}}try{y=new Date(w[2],w[1]-1,w[0]);if(y.getMonth()+1==w[1]&&y.getDate()==w[0]){return y}return false}catch(B){console.log("date test: ",err);return false}},url:function(w){function x(y){return/^(?:(?:https?|ftp):\/\/)?(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/\S*)?$/i.test(y)}if(!x(w)){console.log(w);f=w?l.url:l.empty;return false}return true},hidden:function(w){if(m&&w.length<m[0]){f=l.min;return false}if(u){var x;if(u=="alphanumeric"){x=/^[a-z0-9]+$/i;if(!x.test(w)){return false}}}return true},select:function(w){if(!e.hasValue(w)){f=l.select;return false}return true}};h=function(y,z){if(!z||!y||!y.length){return false}var x=y.parents(".wpdiscuz-item"),w;if(x.hasClass("bad")){if(j.alerts){x.find(".alert").html(z)}}else{if(j.alerts){w=c('<div class="alert">').html(z);x.append(w)}}x.removeClass("bad");setTimeout(function(){x.addClass("bad")},0)};s=function(w){if(!w||!w.length){console.warn('no "field" argument, null or DOM object not found');return false}w.parents(".wpdiscuz-item").removeClass("bad").find(".alert").remove()};function k(w,x){if(w=="tel"){u=u||"phone"}if(!w||w=="password"||w=="tel"){w="text"}return e[w](x)}function p(w){b=c(w);b.data("valid",true);b.data("type",b.attr("type"));u=b.attr("pattern")}function i(w){p(this);if(w.charCode){return k(this.type,String.fromCharCode(w.charCode))}}function o(){if(this.type!="hidden"&&c(this).is(":hidden")){return true}p(this);b.data("val",b[0].value.replace(/^\s+|\s+$/g,""));v=b.data();f=l[b.prop("name")]||l.invalid;if(b[0].nodeName.toLowerCase()==="select"){v.type="select"}if(b[0].nodeName.toLowerCase()==="textarea"){v.type="text"}r=v.validateWords||0;m=v.validateLengthRange?(v.validateLengthRange+"").split(","):[1];t=v.validateLength?(v.validateLength+"").split(","):false;g=v.validateMinmax?(v.validateMinmax+"").split(","):"";v.valid=e.hasValue(v.val);if(v.valid){if(e.sameAsPlaceholder(b)){f=l.empty;v.valid=false}if(v.validateLinked){var w=v.validateLinked.indexOf("#")==0?c(v.validateLinked):c(":input[name="+v.validateLinked+"]");v.valid=e.linked(v.val,w.val())}else{if(v.valid||v.type=="select"){v.valid=k(v.type,v.val)}}}if(b.hasClass("wpdiscuz_optional")&&!v.val){v.valid=true}if(v.valid){s(b)}else{h(b,f);submit=false}return v.valid}function n(w){w=c(w);if(w.length==0){console.warn("element not found");return false}var y=this,z=true,x=w.find(":input").filter("[required=required], .required, .wpdiscuz_optional").not("[disabled=disabled]");x.each(function(){z=z*o.apply(this)});return !!z}return{defaults:j,checkField:o,keypress:i,checkAll:n,mark:h,unmark:s,message:l,tests:e}})(jQuery);
1
+
2
  var wpdiscuzValidator=(function(c){var l,e,o,q,h,s,b,g,j,r,m,t,u,f,v,a=/[\(\)\<\>\,\;\:\\\/\"\[\]]/,d=/^.+@.+\..{2,50}$/;l={invalid:"invalid input",empty:"please put something here",min:"input is too short",max:"input is too long",number_min:"too low",number_max:"too high",url:"invalid URL",number:"not a number",email:"email address is invalid",email_repeat:"emails do not match",password_repeat:"passwords do not match",repeat:"no match",complete:"input is not complete",select:"Please select an option"};if(!window.console){console={};console.log=console.warn=function(){return}}j={alerts:true};e={sameAsPlaceholder:function(w){return c.fn.placeholder&&w.attr("placeholder")!==undefined&&v.val==w.prop("placeholder")},hasValue:function(w){if(!w){f=l.empty;return false}return true},linked:function(x,w){if(w!=x){f=l[v.type+"_repeat"]||l.no_match;return false}return true},email:function(w){if(!d.test(w)||w.match(a)){f=w?l.email:l.empty;return false}return true},text:function(x){if(r){var C=x.split(" ");var B=function(D){for(var E=C.length;E--;){if(C[E].length<D){return false}}return true};if(C.length<r||!B(2)){f=l.complete;return false}return true}if(m&&x.length<m[0]){f=l.min;return false}if(m&&m[1]&&x.length>m[1]){f=l.max;return false}if(t&&t.length){var A=false;while(t.length){if(t.pop()==x.length){A=true}}if(!A){f=l.complete;return false}}if(u){var z,w;switch(u){case"alphanumeric":z=/^[a-z0-9]+$/i;break;case"numeric":z=/^[0-9]+$/i;break;case"phone":z=/^\+?([0-9]|[-|' '])+$/i;break;default:z=u}try{w=new RegExp(z).test(x);if(x&&!w){return false}}catch(y){console.log(y,b,"regex is invalid");return false}}return true},number:function(w){if(isNaN(parseFloat(w))&&!isFinite(w)){f=l.number;return false}else{if(m&&w.length<m[0]){f=l.min;return false}else{if(m&&m[1]&&w.length>m[1]){f=l.max;return false}else{if(g[0]&&(w|0)<g[0]){f=l.number_min;return false}else{if(g[1]&&(w|0)>g[1]){f=l.number_max;return false}}}}}return true},date:function(x){var y,w=x.split(/[-./]/g),z;if(b[0].valueAsNumber){return true}for(z=w.length;z--;){if(isNaN(parseFloat(x))&&!isFinite(x)){return false}}try{y=new Date(w[2],w[1]-1,w[0]);if(y.getMonth()+1==w[1]&&y.getDate()==w[0]){return y}return false}catch(B){console.log("date test: ",err);return false}},url:function(w){function x(y){return/^(?:(?:https?|ftp):\/\/)?(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/\S*)?$/i.test(y)}if(!x(w)){console.log(w);f=w?l.url:l.empty;return false}return true},hidden:function(w){if(m&&w.length<m[0]){f=l.min;return false}if(u){var x;if(u=="alphanumeric"){x=/^[a-z0-9]+$/i;if(!x.test(w)){return false}}}return true},select:function(w){if(!e.hasValue(w)){f=l.select;return false}return true}};h=function(y,z){if(!z||!y||!y.length){return false}var x=y.parents(".wpdiscuz-item"),w;if(x.hasClass("bad")){if(j.alerts){x.find(".alert").html(z)}}else{if(j.alerts){w=c('<div class="alert">').html(z);x.append(w)}}x.removeClass("bad");setTimeout(function(){x.addClass("bad")},0)};s=function(w){if(!w||!w.length){console.warn('no "field" argument, null or DOM object not found');return false}w.parents(".wpdiscuz-item").removeClass("bad").find(".alert").remove()};function k(w,x){if(w=="tel"){u=u||"phone"}if(!w||w=="password"||w=="tel"){w="text"}return e[w](x)}function p(w){b=c(w);b.data("valid",true);b.data("type",b.attr("type"));u=b.attr("pattern")}function i(w){p(this);if(w.charCode){return k(this.type,String.fromCharCode(w.charCode))}}function o(){if(this.type!="hidden"&&c(this).is(":hidden")){return true}p(this);b.data("val",b[0].value.replace(/^\s+|\s+$/g,""));v=b.data();f=l[b.prop("name")]||l.invalid;if(b[0].nodeName.toLowerCase()==="select"){v.type="select"}if(b[0].nodeName.toLowerCase()==="textarea"){v.type="text"}r=v.validateWords||0;m=v.validateLengthRange?(v.validateLengthRange+"").split(","):[1];t=v.validateLength?(v.validateLength+"").split(","):false;g=v.validateMinmax?(v.validateMinmax+"").split(","):"";v.valid=e.hasValue(v.val);if(v.valid){if(e.sameAsPlaceholder(b)){f=l.empty;v.valid=false}if(v.validateLinked){var w=v.validateLinked.indexOf("#")==0?c(v.validateLinked):c(":input[name="+v.validateLinked+"]");v.valid=e.linked(v.val,w.val())}else{if(v.valid||v.type=="select"){v.valid=k(v.type,v.val)}}}if(b.hasClass("wpdiscuz_optional")&&!v.val){v.valid=true}if(v.valid){s(b)}else{h(b,f);submit=false}return v.valid}function n(w){w=c(w);if(w.length==0){console.warn("element not found");return false}var y=this,z=true,x=w.find(":input").filter("[required=required], .required, .wpdiscuz_optional").not("[disabled=disabled]");x.each(function(){z=z*o.apply(this)});return !!z}return{defaults:j,checkField:o,keypress:i,checkAll:n,mark:h,unmark:s,message:l,tests:e}})(jQuery);
class.WpdiscuzCore.php CHANGED
@@ -3,7 +3,7 @@
3
  /*
4
  * Plugin Name: wpDiscuz - Supercharged native comments
5
  * Description: Better comment system. Wordpress post comments and discussion plugin. Allows your visitors discuss, vote for comments and share.
6
- * Version: 3.1.4
7
  * Author: gVectors Team (A. Chakhoyan, G. Zakaryan, H. Martirosyan)
8
  * Author URI: http://www.gvectors.com/
9
  * Plugin URI: http://www.gvectors.com/wpdiscuz/
@@ -33,14 +33,20 @@ class WpdiscuzCore implements WpDiscuzConstants {
33
  public $helper;
34
  public $dbManager;
35
  public $optionsSerialized;
 
36
  private $css;
37
  private $options;
38
  private $emailHelper;
39
  private $wpdiscuzWalker;
40
  private $optimizationHelper;
41
  private $commentsArgs;
 
42
 
43
  public function __construct() {
 
 
 
 
44
  $this->dbManager = new WpdiscuzDBManager();
45
  $this->optionsSerialized = new WpdiscuzOptionsSerialized($this->dbManager);
46
  $this->options = new WpdiscuzOptions($this->optionsSerialized, $this->dbManager);
@@ -50,9 +56,7 @@ class WpdiscuzCore implements WpDiscuzConstants {
50
  $this->css = new WpdiscuzCss($this->optionsSerialized);
51
  $this->wpdiscuzWalker = new WpdiscuzWalker($this->helper, $this->optimizationHelper, $this->dbManager, $this->optionsSerialized);
52
  register_activation_hook(__FILE__, array($this->dbManager, 'dbCreateTables'));
53
- register_activation_hook(__FILE__, array($this->helper, 'scheduleTask'));
54
- register_deactivation_hook(__FILE__, array($this->helper, 'unScheduleTask'));
55
- add_action('wpdiscuzRemoveOldFiles', array(&$this->helper, 'removeOldFiles'));
56
  add_action('wp_head', array(&$this, 'initCurrentPostType'));
57
  add_action('wp_head', array(&$this->css, 'initCustomCss'));
58
 
@@ -61,7 +65,8 @@ class WpdiscuzCore implements WpDiscuzConstants {
61
  add_action('admin_enqueue_scripts', array(&$this, 'adminPageStylesScripts'), 2315);
62
  add_action('wp_enqueue_scripts', array(&$this, 'frontEndStylesScripts'));
63
  add_action('admin_menu', array(&$this, 'addPluginOptionsPage'), -297);
64
- if (!$this->optionsSerialized->captchaShowHide || $this->optionsSerialized->captchaShowHideForMembers) {
 
65
  add_action('wp_ajax_generateCaptcha', array(&$this->helper, 'generateCaptcha'));
66
  add_action('wp_ajax_nopriv_generateCaptcha', array(&$this->helper, 'generateCaptcha'));
67
  }
@@ -125,11 +130,11 @@ class WpdiscuzCore implements WpDiscuzConstants {
125
  global $current_user;
126
  get_currentuserinfo();
127
  $messageArray = array();
128
- parse_str($commentData);
129
- $postId = intval(trim($postId));
130
- $loadLastCommentId = intval(trim($loadLastCommentId));
131
- $visibleCommentIds = trim($visibleCommentIds, ',');
132
- $email = $current_user->ID ? $current_user->user_email : trim($email);
133
  if ($visibleCommentIds && $postId && $loadLastCommentId) {
134
  $lastCommentId = $this->dbManager->getLastCommentId($postId);
135
  if ($lastCommentId > $loadLastCommentId) {
@@ -187,7 +192,9 @@ class WpdiscuzCore implements WpDiscuzConstants {
187
  if ($commentData) {
188
  global $current_user;
189
  get_currentuserinfo();
190
- parse_str($commentData);
 
 
191
  if ($postId && $newCommentIds) {
192
  $messageArray['code'] = 1;
193
  $newCommentIds = explode(',', trim($newCommentIds, ','));
@@ -213,14 +220,17 @@ class WpdiscuzCore implements WpDiscuzConstants {
213
  $commentData = filter_input(INPUT_POST, 'wpdiscuzAjaxData');
214
  $isAnonymous = false;
215
  if ($commentData) {
216
- parse_str($commentData);
217
- $postId = isset($postId) ? intval(trim($postId)) : 0;
218
- if (function_exists('zerospam_get_key') && isset($wpdiscuz_zs)) {
 
219
  $_POST['zerospam_key'] = $wpdiscuz_zs == md5(zerospam_get_key()) ? zerospam_get_key() : '';
220
  }
221
- if (wp_verify_nonce($wpdiscuz_comment_form_nonce, self::ACTION_FORM_NONCE) && isset($wpdiscuz_unique_id) && $wpdiscuz_unique_id && $postId) {
 
 
222
  $wpdiscuz_unique_id = filter_var($wpdiscuz_unique_id);
223
- $wc_comment_depth = isset($wc_comment_depth) && intval($wc_comment_depth) ? $wc_comment_depth : 1;
224
  $isInSameContainer = '1';
225
  global $current_user;
226
  get_currentuserinfo();
@@ -230,14 +240,23 @@ class WpdiscuzCore implements WpDiscuzConstants {
230
  } else if (!$this->optionsSerialized->wordpressThreadComments) {
231
  $isInSameContainer = '0';
232
  }
233
- $notification_type = isset($wpdiscuz_notification_type) ? $wpdiscuz_notification_type : '';
234
- if ($this->helper->isShowCaptcha($current_user->ID)) {
235
- $key = isset($cnonce) ? substr($cnonce, self::CAPTCHA_LENGTH) : '';
236
- $fileName = isset($fileName) ? substr($fileName, 0, strlen($fileName) - 4) : '';
237
- $captcha = isset($wc_captcha) ? $wc_captcha : '';
238
- if (!($this->helper->checkCaptcha($key, $fileName, $captcha))) {
239
- $messageArray['code'] = 'wc_invalid_captcha';
240
- wp_die(json_encode($messageArray));
 
 
 
 
 
 
 
 
 
241
  }
242
  }
243
 
@@ -249,9 +268,9 @@ class WpdiscuzCore implements WpDiscuzConstants {
249
  $email = $current_user->user_email;
250
  } else {
251
  $user_id = 0;
252
- $name = isset($wc_name) ? filter_var($wc_name) : '';
253
- $email = isset($wc_email) ? trim($wc_email) : '';
254
- $website_url = isset($wc_website) ? trim($wc_website) : '';
255
 
256
  if ($website_url != '' && (strpos($website_url, 'http://') !== '' && strpos($website_url, 'http://') !== 0) && (strpos($website_url, 'https://') !== '' && strpos($website_url, 'https://') !== 0)) {
257
  $website_url = 'http://' . $website_url;
@@ -261,7 +280,7 @@ class WpdiscuzCore implements WpDiscuzConstants {
261
  }
262
  if (!$this->optionsSerialized->isEmailFieldRequired) {
263
  if (!$email) {
264
- $email = 'anonymous_' . md5(uniqid() . time()) . '@example.com';
265
  $isAnonymous = true;
266
  }
267
  }
@@ -277,17 +296,17 @@ class WpdiscuzCore implements WpDiscuzConstants {
277
  wp_die(json_encode($messageArray));
278
  }
279
 
280
- $comment_content = wp_kses(trim($wc_comment), $this->helper->wc_allowed_tags);
281
  $commentMinLength = intval($this->optionsSerialized->commentTextMinLength);
282
  $commentMaxLength = intval($this->optionsSerialized->commentTextMaxLength);
283
  $contentLength = function_exists('mb_strlen') ? mb_strlen($comment_content) : strlen($comment_content);
284
  if ($commentMinLength > 0 && $contentLength < $commentMinLength) {
285
- $messageArray['code'] = 'wc_msg_comment_text_min_length';
286
  wp_die(json_encode($messageArray));
287
  }
288
 
289
  if ($commentMaxLength > 0 && $contentLength > $commentMaxLength) {
290
- $messageArray['code'] = 'wc_msg_comment_text_max_length';
291
  wp_die(json_encode($messageArray));
292
  }
293
 
@@ -309,7 +328,7 @@ class WpdiscuzCore implements WpDiscuzConstants {
309
  'comment_type' => ''
310
  );
311
 
312
- $new_comment_id = wp_new_comment($new_commentdata);
313
  $newComment = get_comment($new_comment_id);
314
  $held_moderate = 1;
315
  if ($newComment->comment_approved) {
@@ -358,9 +377,9 @@ class WpdiscuzCore implements WpDiscuzConstants {
358
  $commentData = filter_input(INPUT_POST, 'wpdiscuzAjaxData');
359
  $message_array = array();
360
  if ($commentData) {
361
- parse_str($commentData);
362
  $current_user = wp_get_current_user();
363
- $commentId = intval($commentId);
364
  if ($commentId) {
365
  $comment = get_comment($commentId);
366
  if (current_user_can('edit_comment', $comment->comment_ID)) {
@@ -392,15 +411,15 @@ class WpdiscuzCore implements WpDiscuzConstants {
392
  $message_array = array();
393
  $commentData = filter_input(INPUT_POST, 'wpdiscuzAjaxData');
394
  if ($commentData) {
395
- parse_str($commentData);
396
- $commentId = intval($commentId);
397
  $comment = get_comment($commentId);
398
  $current_user = wp_get_current_user();
399
- $trimmedCommentContent = trim($commentContent);
400
  $isCurrentUserCanEdit = isset($current_user) && ($comment->user_id == $current_user->ID || current_user_can('edit_comment', $comment->comment_ID));
401
  if ($trimmedCommentContent && $this->helper->isContentInRange($trimmedCommentContent) && $isCurrentUserCanEdit) {
402
  if ($trimmedCommentContent != $comment->comment_content) {
403
- $commentContent = wp_kses($commentContent, $this->helper->wc_allowed_tags);
404
  $author_ip = $this->helper->getRealIPAddr();
405
  $userAgent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';
406
  $commentarr = array(
@@ -410,7 +429,7 @@ class WpdiscuzCore implements WpDiscuzConstants {
410
  'comment_agent' => apply_filters('pre_comment_user_agent', $userAgent),
411
  'comment_approved' => $comment->comment_approved
412
  );
413
- if (wp_update_comment($commentarr)) {
414
  $uniqueId = $comment->comment_ID . '_' . $comment->comment_parent;
415
  $message_array['code'] = 1;
416
  if ($this->optionsSerialized->commentReadMoreLimit && count(explode(' ', strip_tags($commentContent))) > $this->optionsSerialized->commentReadMoreLimit) {
@@ -440,9 +459,9 @@ class WpdiscuzCore implements WpDiscuzConstants {
440
  $messageArray = array();
441
  $commentData = filter_input(INPUT_POST, 'wpdiscuzAjaxData');
442
  if ($commentData) {
443
- parse_str($commentData);
444
- $commentId = intval(trim($commentId));
445
- $postId = intval(trim($postId));
446
  if ($commentId && $postId) {
447
  $parentComment = $this->optimizationHelper->getCommentRoot($commentId);
448
  $tree = array();
@@ -467,8 +486,8 @@ class WpdiscuzCore implements WpDiscuzConstants {
467
  public function redirect() {
468
  $messageArray = array();
469
  if (isset($_POST['wpdiscuzAjaxData'])) {
470
- parse_str($_POST['wpdiscuzAjaxData']);
471
- $commentId = intval(trim($commentId));
472
  if ($this->optionsSerialized->redirectPage && $commentId) {
473
  $comment = get_comment($commentId);
474
  if ($comment->comment_ID) {
@@ -486,18 +505,18 @@ class WpdiscuzCore implements WpDiscuzConstants {
486
 
487
  public function loadMoreComments() {
488
  if (isset($_POST['wpdiscuzAjaxData'])) {
489
- parse_str($_POST['wpdiscuzAjaxData']);
490
- $postId = intval(trim($postId));
491
  $limit = ($this->optionsSerialized->commentListLoadType == 1) ? 0 : $this->optionsSerialized->wordpressCommentPerPage;
492
  $args = array('limit' => $limit);
493
- $orderBy = trim($orderBy);
494
- $args['offset'] = isset($offset) && $offset ? intval($offset) * $this->optionsSerialized->wordpressCommentPerPage : 0;
495
  if ($orderBy == 'by_vote') {
496
  $args['orderby'] = $orderBy;
497
  } else {
498
- $order = trim($order);
499
  $args['order'] = $order ? $order : $this->optionsSerialized->wordpressCommentOrder;
500
- $args['last_parent_id'] = intval($lastParentId);
501
  }
502
  $args['post_id'] = $postId;
503
  $data = $this->getWPComments($args);
@@ -517,9 +536,9 @@ class WpdiscuzCore implements WpDiscuzConstants {
517
  wp_die(json_encode($messageArray));
518
  }
519
  if (isset($_POST['wpdiscuzAjaxData'])) {
520
- parse_str($_POST['wpdiscuzAjaxData']);
521
- $commentId = intval($commentId);
522
- $voteType = intval($voteType);
523
  if ($commentId && $voteType) {
524
  $userIdOrIp = $isUserLoggedIn ? get_current_user_id() : $this->helper->getRealIPAddr();
525
  $isUserVoted = $this->dbManager->isUserVoted($userIdOrIp, $commentId);
@@ -539,6 +558,7 @@ class WpdiscuzCore implements WpDiscuzConstants {
539
  $this->dbManager->updateVoteType($userIdOrIp, $commentId, $vote);
540
  $voteCount = intval(get_comment_meta($commentId, self::META_KEY_VOTES, true)) + $voteType;
541
  update_comment_meta($commentId, self::META_KEY_VOTES, '' . $voteCount);
 
542
  $messageArray['code'] = 1;
543
  } else {
544
  $messageArray['code'] = 'wc_vote_only_one_time';
@@ -547,6 +567,7 @@ class WpdiscuzCore implements WpDiscuzConstants {
547
  $this->dbManager->addVoteType($userIdOrIp, $commentId, $voteType, intval($isUserLoggedIn));
548
  $voteCount = intval(get_comment_meta($commentId, self::META_KEY_VOTES, true)) + $voteType;
549
  update_comment_meta($commentId, self::META_KEY_VOTES, '' . $voteCount);
 
550
  $messageArray['code'] = 1;
551
  }
552
  } else {
@@ -561,10 +582,10 @@ class WpdiscuzCore implements WpDiscuzConstants {
561
  public function wpdiscuzSorting() {
562
  $messageArray = array();
563
  if (isset($_POST['wpdiscuzAjaxData'])) {
564
- parse_str($_POST['wpdiscuzAjaxData']);
565
- $postId = intval(trim($postId));
566
- $orderBy = trim($orderBy);
567
- $order = trim($order);
568
  if ($postId && $orderBy && $order) {
569
  $args = array('order' => $order, 'post_id' => $postId);
570
  if (in_array($orderBy, array('by_vote', 'comment_date_gmt'))) {
@@ -590,8 +611,8 @@ class WpdiscuzCore implements WpDiscuzConstants {
590
  public function readMore() {
591
  $messageArray = array();
592
  if (isset($_POST['wpdiscuzAjaxData'])) {
593
- parse_str($_POST['wpdiscuzAjaxData']);
594
- $commentId = intval(trim($commentId));
595
  $comment = get_comment($commentId);
596
  if ($comment) {
597
  $commentContent = wp_kses($comment->comment_content, $this->helper->wc_allowed_tags);
@@ -622,6 +643,7 @@ class WpdiscuzCore implements WpDiscuzConstants {
622
  $commentListArgs['current_user'] = $current_user;
623
  $wcWpComments = wp_list_comments($commentListArgs, $commentList);
624
  $commentData['comment_list'] = $wcWpComments;
 
625
  return $commentData;
626
  }
627
 
@@ -638,7 +660,6 @@ class WpdiscuzCore implements WpDiscuzConstants {
638
  $commentData['is_show_load_more'] = $this->helper->isShowLoadMore($commentData['last_parent_id'], $this->commentsArgs);
639
  }
640
  $commentList = get_comments($this->commentsArgs);
641
- $this->commentsArgs['caller'] = '';
642
  return $commentList;
643
  }
644
 
@@ -684,10 +705,12 @@ class WpdiscuzCore implements WpDiscuzConstants {
684
  * register options page for plugin
685
  */
686
  public function addPluginOptionsPage() {
687
- add_submenu_page('edit-comments.php', 'wpDiscuz Settings', 'wpDiscuz Settings', 'manage_options', 'wpdiscuz_options_page', array(&$this->options, 'mainOptionsForm'));
 
688
  if (!$this->optionsSerialized->isUsePoMo) {
689
- add_submenu_page('edit-comments.php', 'wpDiscuz Phrases', 'wpDiscuz Phrases', 'manage_options', 'wpdiscuz_phrases_page', array(&$this->options, 'phrasesOptionsForm'));
690
  }
 
691
  }
692
 
693
  /**
@@ -715,8 +738,10 @@ class WpdiscuzCore implements WpDiscuzConstants {
715
  wp_localize_script('wpdiscuz-options-js', 'admin_options_obj', array('lastCommentId' => $realLastCommentId));
716
  wp_enqueue_script('wpdiscuz-options-js');
717
  wp_enqueue_script('thickbox');
718
- wp_register_script('wpdiscuz-jquery-cookie', plugins_url(WPDISCUZ_DIR_NAME . '/assets/js/jquery.cookie.min.js'), array('jquery'), '1.0.0', true);
719
  wp_enqueue_script('wpdiscuz-jquery-cookie');
 
 
720
  }
721
 
722
  /**
@@ -727,74 +752,63 @@ class WpdiscuzCore implements WpDiscuzConstants {
727
  if ($post && in_array($post->post_type, $this->optionsSerialized->postTypes) && (is_singular() || is_front_page()) && post_type_supports($post->post_type, 'comments')) {
728
 
729
  $u_agent = $_SERVER['HTTP_USER_AGENT'];
730
- wp_register_style('wpdiscuz-frontend-css', plugins_url(WPDISCUZ_DIR_NAME . '/assets/css/wpdiscuz.min.css'), null, get_option(self::OPTION_SLUG_VERSION));
731
  wp_enqueue_style('wpdiscuz-frontend-css');
732
 
733
  if (is_rtl()) {
734
  wp_register_style('wpdiscuz-frontend-rtl-css', plugins_url(WPDISCUZ_DIR_NAME . '/assets/css/wpdiscuz-rtl.min.css'));
735
  wp_enqueue_style('wpdiscuz-frontend-rtl-css');
736
  }
737
-
738
- wp_register_script('wpdiscuz-jquery-ui', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/jquery-ui/jquery-ui.min.js'), array('jquery'), '1.11.2', false);
739
- wp_enqueue_script('wpdiscuz-jquery-ui');
740
-
741
  if (preg_match('/MSIE/i', $u_agent)) {
742
  wp_register_script('wpdiscuz-html5-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/tooltipster/js/html5.min.js'), array('jquery'), '1.2', false);
743
  wp_enqueue_script('wpdiscuz-html5-js');
744
  }
745
 
746
- wp_register_script('wpdiscuz-validator-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/js/validator.min.js'), array('jquery'), '1.0.0', false);
747
  wp_enqueue_script('wpdiscuz-validator-js');
748
- wp_register_style('wpdiscuz-validator-style', plugins_url(WPDISCUZ_DIR_NAME . '/assets/css/fv.min.css'));
749
- wp_enqueue_style('wpdiscuz-validator-style');
750
- wp_register_script('wpdiscuz-cookie-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/js/jquery.cookie.min.js'), array('jquery'), '1.4.1', false);
751
  wp_enqueue_script('wpdiscuz-cookie-js');
752
- wp_register_style('wpdiscuz-tooltipster-style', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/tooltipster/css/tooltipster.min.css'));
753
- wp_enqueue_style('wpdiscuz-tooltipster-style');
754
  wp_register_script('wpdiscuz-tooltipster-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/tooltipster/js/jquery.tooltipster.min.js'), array('jquery'), '1.2', false);
755
  wp_enqueue_script('wpdiscuz-tooltipster-js');
756
- wp_register_script('autogrowtextarea-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/js/jquery.autogrowtextarea.min.js'), array('jquery'), '3.0', false);
757
  wp_enqueue_script('autogrowtextarea-js');
758
- $wpdiscuz_js_options = $this->optionsSerialized->getOptionsForJs();
759
- $wpdiscuz_js_options['wc_post_id'] = $post->ID;
760
- $wpdiscuz_js_options['loadLastCommentId'] = $this->dbManager->getLastCommentId($post->ID);
761
- wp_register_script('wpdiscuz-ajax-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/js/wpdiscuz.min.js'), array('jquery'), get_option(self::OPTION_SLUG_VERSION));
 
762
  wp_enqueue_script('wpdiscuz-ajax-js');
763
- wp_localize_script('wpdiscuz-ajax-js', 'wpdiscuz_ajax_obj', array('url' => admin_url('admin-ajax.php'), 'wpdiscuz_options' => $wpdiscuz_js_options));
 
764
  }
765
  }
766
 
767
  public function pluginNewVersion() {
768
  $this->dbManager->createEmailNotificationTable();
769
- $wc_version = (!get_option(self::OPTION_SLUG_VERSION) ) ? '1.0.0' : get_option(self::OPTION_SLUG_VERSION);
770
  $wc_plugin_data = get_plugin_data(__FILE__);
771
- if (version_compare($wc_plugin_data['Version'], $wc_version, '>')) {
772
- $oldOptions = maybe_unserialize(get_option(WpdiscuzCore::OPTION_SLUG_OPTIONS));
773
- if (isset($oldOptions['wc_comment_list_order'])) {
774
- update_option('comment_order', $oldOptions['wc_comment_list_order']);
775
- }
776
- if (isset($oldOptions['wc_comment_count'])) {
777
- update_option('comments_per_page', $oldOptions['wc_comment_count']);
778
- }
779
- if (isset($oldOptions['wc_load_all_comments'])) {
780
- $this->optionsSerialized->commentListLoadType = 1;
781
- }
782
- $this->addNewOptions();
783
  $this->addNewPhrases();
784
- if ($wc_version === '1.0.0') {
785
  add_option(self::OPTION_SLUG_VERSION, $wc_plugin_data['Version']);
786
  } else {
787
  update_option(self::OPTION_SLUG_VERSION, $wc_plugin_data['Version']);
788
  }
789
- if (version_compare($wc_version, '2.1.2', '<=') && version_compare($wc_version, '1.0.0', '!=')) {
790
  $this->dbManager->alterPhrasesTable();
791
  }
792
 
793
- if (version_compare($wc_version, '2.1.7', '<=') && version_compare($wc_version, '1.0.0', '!=')) {
794
  $this->dbManager->alterVotingTable();
795
  }
796
 
797
- if (version_compare($wc_version, '3.0.0', '<=') && version_compare($wc_version, '1.0.0', '!=')) {
798
  $this->dbManager->alterNotificationTable();
799
  }
800
  }
@@ -803,8 +817,8 @@ class WpdiscuzCore implements WpDiscuzConstants {
803
  /**
804
  * merge old and new options
805
  */
806
- private function addNewOptions() {
807
- $this->optionsSerialized->initOptions(get_option(self::OPTION_SLUG_OPTIONS));
808
  $wc_new_options = $this->optionsSerialized->toArray();
809
  update_option(self::OPTION_SLUG_OPTIONS, serialize($wc_new_options));
810
  }
@@ -822,6 +836,25 @@ class WpdiscuzCore implements WpDiscuzConstants {
822
  }
823
  }
824
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
825
  // Add settings link on plugin page
826
  public function addPluginSettingsLink($links) {
827
  $settingsLink = '<a href="' . admin_url() . 'edit-comments.php?page=wpdiscuz_options_page">' . __('Settings', 'wpdiscuz') . '</a>';
@@ -855,7 +888,6 @@ class WpdiscuzCore implements WpDiscuzConstants {
855
  'post_author' => $post->post_author,
856
  'posts_authors' => $postsAuthors,
857
  'walker' => $this->wpdiscuzWalker,
858
- 'per_page' => $this->optionsSerialized->wordpressCommentPerPage,
859
  );
860
  }
861
 
3
  /*
4
  * Plugin Name: wpDiscuz - Supercharged native comments
5
  * Description: Better comment system. Wordpress post comments and discussion plugin. Allows your visitors discuss, vote for comments and share.
6
+ * Version: 3.2.0
7
  * Author: gVectors Team (A. Chakhoyan, G. Zakaryan, H. Martirosyan)
8
  * Author URI: http://www.gvectors.com/
9
  * Plugin URI: http://www.gvectors.com/wpdiscuz/
33
  public $helper;
34
  public $dbManager;
35
  public $optionsSerialized;
36
+ public $wpdiscuzOptionsJs;
37
  private $css;
38
  private $options;
39
  private $emailHelper;
40
  private $wpdiscuzWalker;
41
  private $optimizationHelper;
42
  private $commentsArgs;
43
+ private $version;
44
 
45
  public function __construct() {
46
+ $this->version = get_option(self::OPTION_SLUG_VERSION);
47
+ if (!$this->version) {
48
+ $this->version = '1.0.0';
49
+ }
50
  $this->dbManager = new WpdiscuzDBManager();
51
  $this->optionsSerialized = new WpdiscuzOptionsSerialized($this->dbManager);
52
  $this->options = new WpdiscuzOptions($this->optionsSerialized, $this->dbManager);
56
  $this->css = new WpdiscuzCss($this->optionsSerialized);
57
  $this->wpdiscuzWalker = new WpdiscuzWalker($this->helper, $this->optimizationHelper, $this->dbManager, $this->optionsSerialized);
58
  register_activation_hook(__FILE__, array($this->dbManager, 'dbCreateTables'));
59
+ register_deactivation_hook(__FILE__, array(&$this->helper, 'removeAllFiles'));
 
 
60
  add_action('wp_head', array(&$this, 'initCurrentPostType'));
61
  add_action('wp_head', array(&$this->css, 'initCustomCss'));
62
 
65
  add_action('admin_enqueue_scripts', array(&$this, 'adminPageStylesScripts'), 2315);
66
  add_action('wp_enqueue_scripts', array(&$this, 'frontEndStylesScripts'));
67
  add_action('admin_menu', array(&$this, 'addPluginOptionsPage'), -297);
68
+
69
+ if (!$this->optionsSerialized->isCaptchaInSession && (!$this->optionsSerialized->captchaShowHide || $this->optionsSerialized->captchaShowHideForMembers)) {
70
  add_action('wp_ajax_generateCaptcha', array(&$this->helper, 'generateCaptcha'));
71
  add_action('wp_ajax_nopriv_generateCaptcha', array(&$this->helper, 'generateCaptcha'));
72
  }
130
  global $current_user;
131
  get_currentuserinfo();
132
  $messageArray = array();
133
+ parse_str($commentData, $data);
134
+ $postId = intval(trim($data['postId']));
135
+ $loadLastCommentId = intval(trim($data['loadLastCommentId']));
136
+ $visibleCommentIds = trim($data['visibleCommentIds'], ',');
137
+ $email = $current_user->ID ? $current_user->user_email : trim($data['email']);
138
  if ($visibleCommentIds && $postId && $loadLastCommentId) {
139
  $lastCommentId = $this->dbManager->getLastCommentId($postId);
140
  if ($lastCommentId > $loadLastCommentId) {
192
  if ($commentData) {
193
  global $current_user;
194
  get_currentuserinfo();
195
+ parse_str($commentData, $data);
196
+ $postId = intval($data['postId']);
197
+ $newCommentIds = trim($data['newCommentIds']);
198
  if ($postId && $newCommentIds) {
199
  $messageArray['code'] = 1;
200
  $newCommentIds = explode(',', trim($newCommentIds, ','));
220
  $commentData = filter_input(INPUT_POST, 'wpdiscuzAjaxData');
221
  $isAnonymous = false;
222
  if ($commentData) {
223
+ parse_str($commentData, $data);
224
+ do_action('wpdiscuz_add_comment', $data);
225
+ $postId = isset($postId) ? intval(trim($data['postId'])) : 0;
226
+ if (function_exists('zerospam_get_key') && isset($data['wpdiscuz_zs'])) {
227
  $_POST['zerospam_key'] = $wpdiscuz_zs == md5(zerospam_get_key()) ? zerospam_get_key() : '';
228
  }
229
+ $wpdiscuz_unique_id = isset($data['wpdiscuz_unique_id']) ? $data['wpdiscuz_unique_id'] : '';
230
+ $postId = intval($data['postId']);
231
+ if (wp_verify_nonce($data['wpdiscuz_comment_form_nonce'], self::ACTION_FORM_NONCE) && $wpdiscuz_unique_id && $postId) {
232
  $wpdiscuz_unique_id = filter_var($wpdiscuz_unique_id);
233
+ $wc_comment_depth = isset($data['wc_comment_depth']) && intval($data['wc_comment_depth']) ? $data['wc_comment_depth'] : 1;
234
  $isInSameContainer = '1';
235
  global $current_user;
236
  get_currentuserinfo();
240
  } else if (!$this->optionsSerialized->wordpressThreadComments) {
241
  $isInSameContainer = '0';
242
  }
243
+ $notification_type = isset($data['wpdiscuz_notification_type']) ? $data['wpdiscuz_notification_type'] : '';
244
+ if ($this->helper->isShowCaptcha($current_user->ID) && !class_exists("wpDiscuzReCaptcha")) {
245
+ $captcha = isset($data['wc_captcha']) ? $data['wc_captcha'] : '';
246
+ if ($this->optionsSerialized->isCaptchaInSession) {
247
+ $cnonce = isset($data['cnonce']) ? $data['cnonce'] : '';
248
+ $sCaptcha = session_start() && isset($_SESSION['wpdiscuzc'][$cnonce]) ? $_SESSION['wpdiscuzc'][$cnonce] : false;
249
+ if (!$sCaptcha || md5(strtolower(trim($captcha))) !== $sCaptcha) {
250
+ $messageArray['code'] = 'wc_invalid_captcha';
251
+ wp_die(json_encode($messageArray));
252
+ }
253
+ } else {
254
+ $key = isset($data['cnonce']) ? substr($data['cnonce'], self::CAPTCHA_LENGTH) : '';
255
+ $fileName = isset($data['fileName']) ? substr($data['fileName'], 0, strlen($data['fileName']) - 4) : '';
256
+ if (!($this->helper->checkCaptchaFile($key, $fileName, $captcha))) {
257
+ $messageArray['code'] = 'wc_invalid_captcha';
258
+ wp_die(json_encode($messageArray));
259
+ }
260
  }
261
  }
262
 
268
  $email = $current_user->user_email;
269
  } else {
270
  $user_id = 0;
271
+ $name = isset($data['wc_name']) ? filter_var($data['wc_name']) : '';
272
+ $email = isset($data['wc_email']) ? trim($data['wc_email']) : '';
273
+ $website_url = isset($data['wc_website']) ? trim($data['wc_website']) : '';
274
 
275
  if ($website_url != '' && (strpos($website_url, 'http://') !== '' && strpos($website_url, 'http://') !== 0) && (strpos($website_url, 'https://') !== '' && strpos($website_url, 'https://') !== 0)) {
276
  $website_url = 'http://' . $website_url;
280
  }
281
  if (!$this->optionsSerialized->isEmailFieldRequired) {
282
  if (!$email) {
283
+ $email = uniqid() . '@example.com';
284
  $isAnonymous = true;
285
  }
286
  }
296
  wp_die(json_encode($messageArray));
297
  }
298
 
299
+ $comment_content = wp_kses(trim($data['wc_comment']), $this->helper->wc_allowed_tags);
300
  $commentMinLength = intval($this->optionsSerialized->commentTextMinLength);
301
  $commentMaxLength = intval($this->optionsSerialized->commentTextMaxLength);
302
  $contentLength = function_exists('mb_strlen') ? mb_strlen($comment_content) : strlen($comment_content);
303
  if ($commentMinLength > 0 && $contentLength < $commentMinLength) {
304
+ $messageArray['code'] = 'wc_msg_input_min_length';
305
  wp_die(json_encode($messageArray));
306
  }
307
 
308
  if ($commentMaxLength > 0 && $contentLength > $commentMaxLength) {
309
+ $messageArray['code'] = 'wc_msg_input_max_length';
310
  wp_die(json_encode($messageArray));
311
  }
312
 
328
  'comment_type' => ''
329
  );
330
 
331
+ $new_comment_id = wp_new_comment(wp_slash($new_commentdata));
332
  $newComment = get_comment($new_comment_id);
333
  $held_moderate = 1;
334
  if ($newComment->comment_approved) {
377
  $commentData = filter_input(INPUT_POST, 'wpdiscuzAjaxData');
378
  $message_array = array();
379
  if ($commentData) {
380
+ parse_str($commentData, $data);
381
  $current_user = wp_get_current_user();
382
+ $commentId = intval($data['commentId']);
383
  if ($commentId) {
384
  $comment = get_comment($commentId);
385
  if (current_user_can('edit_comment', $comment->comment_ID)) {
411
  $message_array = array();
412
  $commentData = filter_input(INPUT_POST, 'wpdiscuzAjaxData');
413
  if ($commentData) {
414
+ parse_str($commentData, $data);
415
+ $commentId = intval($data['commentId']);
416
  $comment = get_comment($commentId);
417
  $current_user = wp_get_current_user();
418
+ $trimmedCommentContent = trim($data['commentContent']);
419
  $isCurrentUserCanEdit = isset($current_user) && ($comment->user_id == $current_user->ID || current_user_can('edit_comment', $comment->comment_ID));
420
  if ($trimmedCommentContent && $this->helper->isContentInRange($trimmedCommentContent) && $isCurrentUserCanEdit) {
421
  if ($trimmedCommentContent != $comment->comment_content) {
422
+ $commentContent = wp_kses($data['commentContent'], $this->helper->wc_allowed_tags);
423
  $author_ip = $this->helper->getRealIPAddr();
424
  $userAgent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';
425
  $commentarr = array(
429
  'comment_agent' => apply_filters('pre_comment_user_agent', $userAgent),
430
  'comment_approved' => $comment->comment_approved
431
  );
432
+ if (wp_update_comment(wp_slash($commentarr))) {
433
  $uniqueId = $comment->comment_ID . '_' . $comment->comment_parent;
434
  $message_array['code'] = 1;
435
  if ($this->optionsSerialized->commentReadMoreLimit && count(explode(' ', strip_tags($commentContent))) > $this->optionsSerialized->commentReadMoreLimit) {
459
  $messageArray = array();
460
  $commentData = filter_input(INPUT_POST, 'wpdiscuzAjaxData');
461
  if ($commentData) {
462
+ parse_str($commentData, $data);
463
+ $commentId = intval(trim($data['commentId']));
464
+ $postId = intval(trim($data['postId']));
465
  if ($commentId && $postId) {
466
  $parentComment = $this->optimizationHelper->getCommentRoot($commentId);
467
  $tree = array();
486
  public function redirect() {
487
  $messageArray = array();
488
  if (isset($_POST['wpdiscuzAjaxData'])) {
489
+ parse_str($_POST['wpdiscuzAjaxData'], $data);
490
+ $commentId = intval(trim($data['commentId']));
491
  if ($this->optionsSerialized->redirectPage && $commentId) {
492
  $comment = get_comment($commentId);
493
  if ($comment->comment_ID) {
505
 
506
  public function loadMoreComments() {
507
  if (isset($_POST['wpdiscuzAjaxData'])) {
508
+ parse_str($_POST['wpdiscuzAjaxData'], $data);
509
+ $postId = intval(trim($data['postId']));
510
  $limit = ($this->optionsSerialized->commentListLoadType == 1) ? 0 : $this->optionsSerialized->wordpressCommentPerPage;
511
  $args = array('limit' => $limit);
512
+ $orderBy = trim($data['orderBy']);
513
+ $args['offset'] = isset($data['offset']) && $data['offset'] ? intval($data['offset']) * $this->optionsSerialized->wordpressCommentPerPage : 0;
514
  if ($orderBy == 'by_vote') {
515
  $args['orderby'] = $orderBy;
516
  } else {
517
+ $order = trim($data['order']);
518
  $args['order'] = $order ? $order : $this->optionsSerialized->wordpressCommentOrder;
519
+ $args['last_parent_id'] = intval($data['lastParentId']);
520
  }
521
  $args['post_id'] = $postId;
522
  $data = $this->getWPComments($args);
536
  wp_die(json_encode($messageArray));
537
  }
538
  if (isset($_POST['wpdiscuzAjaxData'])) {
539
+ parse_str($_POST['wpdiscuzAjaxData'], $data);
540
+ $commentId = intval($data['commentId']);
541
+ $voteType = intval($data['voteType']);
542
  if ($commentId && $voteType) {
543
  $userIdOrIp = $isUserLoggedIn ? get_current_user_id() : $this->helper->getRealIPAddr();
544
  $isUserVoted = $this->dbManager->isUserVoted($userIdOrIp, $commentId);
558
  $this->dbManager->updateVoteType($userIdOrIp, $commentId, $vote);
559
  $voteCount = intval(get_comment_meta($commentId, self::META_KEY_VOTES, true)) + $voteType;
560
  update_comment_meta($commentId, self::META_KEY_VOTES, '' . $voteCount);
561
+ do_action('wpdiscuz_update_vote', $voteType, $isUserVoted, $comment);
562
  $messageArray['code'] = 1;
563
  } else {
564
  $messageArray['code'] = 'wc_vote_only_one_time';
567
  $this->dbManager->addVoteType($userIdOrIp, $commentId, $voteType, intval($isUserLoggedIn));
568
  $voteCount = intval(get_comment_meta($commentId, self::META_KEY_VOTES, true)) + $voteType;
569
  update_comment_meta($commentId, self::META_KEY_VOTES, '' . $voteCount);
570
+ do_action('wpdiscuz_add_vote', $voteType, $comment);
571
  $messageArray['code'] = 1;
572
  }
573
  } else {
582
  public function wpdiscuzSorting() {
583
  $messageArray = array();
584
  if (isset($_POST['wpdiscuzAjaxData'])) {
585
+ parse_str($_POST['wpdiscuzAjaxData'], $data);
586
+ $postId = intval(trim($data['postId']));
587
+ $orderBy = trim($data['orderBy']);
588
+ $order = trim($data['order']);
589
  if ($postId && $orderBy && $order) {
590
  $args = array('order' => $order, 'post_id' => $postId);
591
  if (in_array($orderBy, array('by_vote', 'comment_date_gmt'))) {
611
  public function readMore() {
612
  $messageArray = array();
613
  if (isset($_POST['wpdiscuzAjaxData'])) {
614
+ parse_str($_POST['wpdiscuzAjaxData'], $data);
615
+ $commentId = intval(trim($data['commentId']));
616
  $comment = get_comment($commentId);
617
  if ($comment) {
618
  $commentContent = wp_kses($comment->comment_content, $this->helper->wc_allowed_tags);
643
  $commentListArgs['current_user'] = $current_user;
644
  $wcWpComments = wp_list_comments($commentListArgs, $commentList);
645
  $commentData['comment_list'] = $wcWpComments;
646
+ $this->commentsArgs['caller'] = '';
647
  return $commentData;
648
  }
649
 
660
  $commentData['is_show_load_more'] = $this->helper->isShowLoadMore($commentData['last_parent_id'], $this->commentsArgs);
661
  }
662
  $commentList = get_comments($this->commentsArgs);
 
663
  return $commentList;
664
  }
665
 
705
  * register options page for plugin
706
  */
707
  public function addPluginOptionsPage() {
708
+ add_submenu_page('edit-comments.php', 'WPDISCUZ', 'WPDISCUZ', 'manage_options', '#', '');
709
+ add_submenu_page('edit-comments.php', '&raquo; Settings', '&raquo; Settings', 'manage_options', 'wpdiscuz_options_page', array(&$this->options, 'mainOptionsForm'));
710
  if (!$this->optionsSerialized->isUsePoMo) {
711
+ add_submenu_page('edit-comments.php', '&raquo; Phrases', '&raquo; Phrases', 'manage_options', 'wpdiscuz_phrases_page', array(&$this->options, 'phrasesOptionsForm'));
712
  }
713
+ add_submenu_page('edit-comments.php', '&raquo; Addons', '&raquo; Addons', 'manage_options', 'wpdiscuz_addons_page', array(&$this->options, 'addons'));
714
  }
715
 
716
  /**
738
  wp_localize_script('wpdiscuz-options-js', 'admin_options_obj', array('lastCommentId' => $realLastCommentId));
739
  wp_enqueue_script('wpdiscuz-options-js');
740
  wp_enqueue_script('thickbox');
741
+ wp_register_script('wpdiscuz-jquery-cookie', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/cookie/jquery.cookie.min.js'), array('jquery'), '1.0.0', true);
742
  wp_enqueue_script('wpdiscuz-jquery-cookie');
743
+ wp_register_script('wpdiscuz-contenthover', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/contenthover/jquery.contenthover.min.js'), array('jquery'), '1.0.0', true);
744
+ wp_enqueue_script('wpdiscuz-contenthover');
745
  }
746
 
747
  /**
752
  if ($post && in_array($post->post_type, $this->optionsSerialized->postTypes) && (is_singular() || is_front_page()) && post_type_supports($post->post_type, 'comments')) {
753
 
754
  $u_agent = $_SERVER['HTTP_USER_AGENT'];
755
+ wp_register_style('wpdiscuz-frontend-css', plugins_url(WPDISCUZ_DIR_NAME . '/assets/css/wpdiscuz.min.css'), null, $this->version);
756
  wp_enqueue_style('wpdiscuz-frontend-css');
757
 
758
  if (is_rtl()) {
759
  wp_register_style('wpdiscuz-frontend-rtl-css', plugins_url(WPDISCUZ_DIR_NAME . '/assets/css/wpdiscuz-rtl.min.css'));
760
  wp_enqueue_style('wpdiscuz-frontend-rtl-css');
761
  }
 
 
 
 
762
  if (preg_match('/MSIE/i', $u_agent)) {
763
  wp_register_script('wpdiscuz-html5-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/tooltipster/js/html5.min.js'), array('jquery'), '1.2', false);
764
  wp_enqueue_script('wpdiscuz-html5-js');
765
  }
766
 
767
+ wp_register_script('wpdiscuz-validator-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/validator/validator.min.js'), array('jquery'), '1.0.0', false);
768
  wp_enqueue_script('wpdiscuz-validator-js');
769
+ wp_register_style('wpdiscuz-validator-css', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/validator/validator.min.css'));
770
+ wp_enqueue_style('wpdiscuz-validator-css');
771
+ wp_register_script('wpdiscuz-cookie-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/cookie/jquery.cookie.min.js'), array('jquery'), '1.4.1', false);
772
  wp_enqueue_script('wpdiscuz-cookie-js');
773
+ wp_register_style('wpdiscuz-tooltipster-css', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/tooltipster/css/tooltipster.min.css'));
774
+ wp_enqueue_style('wpdiscuz-tooltipster-css');
775
  wp_register_script('wpdiscuz-tooltipster-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/tooltipster/js/jquery.tooltipster.min.js'), array('jquery'), '1.2', false);
776
  wp_enqueue_script('wpdiscuz-tooltipster-js');
777
+ wp_register_script('autogrowtextarea-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/third-party/autogrow/jquery.autogrowtextarea.min.js'), array('jquery'), '3.0', false);
778
  wp_enqueue_script('autogrowtextarea-js');
779
+ $this->wpdiscuzOptionsJs = $this->optionsSerialized->getOptionsForJs();
780
+ $this->wpdiscuzOptionsJs['version'] = $this->version;
781
+ $this->wpdiscuzOptionsJs['wc_post_id'] = $post->ID;
782
+ $this->wpdiscuzOptionsJs['loadLastCommentId'] = $this->dbManager->getLastCommentId($post->ID);
783
+ wp_register_script('wpdiscuz-ajax-js', plugins_url(WPDISCUZ_DIR_NAME . '/assets/js/wpdiscuz.min.js'), array('jquery'), $this->version);
784
  wp_enqueue_script('wpdiscuz-ajax-js');
785
+ wp_localize_script('wpdiscuz-ajax-js', 'wpdiscuz_ajax_obj', array('url' => admin_url('admin-ajax.php'), 'wpdiscuz_options' => $this->wpdiscuzOptionsJs));
786
+ do_action('wpdiscuz_front_scripts');
787
  }
788
  }
789
 
790
  public function pluginNewVersion() {
791
  $this->dbManager->createEmailNotificationTable();
 
792
  $wc_plugin_data = get_plugin_data(__FILE__);
793
+ if (version_compare($wc_plugin_data['Version'], $this->version, '>')) {
794
+ $options = get_option(self::OPTION_SLUG_OPTIONS);
795
+ $this->changeOldOptions($options);
796
+ $this->addNewOptions($options);
 
 
 
 
 
 
 
 
797
  $this->addNewPhrases();
798
+ if ($this->version === '1.0.0') {
799
  add_option(self::OPTION_SLUG_VERSION, $wc_plugin_data['Version']);
800
  } else {
801
  update_option(self::OPTION_SLUG_VERSION, $wc_plugin_data['Version']);
802
  }
803
+ if (version_compare($this->version, '2.1.2', '<=') && version_compare($this->version, '1.0.0', '!=')) {
804
  $this->dbManager->alterPhrasesTable();
805
  }
806
 
807
+ if (version_compare($this->version, '2.1.7', '<=') && version_compare($this->version, '1.0.0', '!=')) {
808
  $this->dbManager->alterVotingTable();
809
  }
810
 
811
+ if (version_compare($this->version, '3.0.0', '<=') && version_compare($this->version, '1.0.0', '!=')) {
812
  $this->dbManager->alterNotificationTable();
813
  }
814
  }
817
  /**
818
  * merge old and new options
819
  */
820
+ private function addNewOptions($options) {
821
+ $this->optionsSerialized->initOptions($options);
822
  $wc_new_options = $this->optionsSerialized->toArray();
823
  update_option(self::OPTION_SLUG_OPTIONS, serialize($wc_new_options));
824
  }
836
  }
837
  }
838
 
839
+ /**
840
+ * change old options if needed
841
+ */
842
+ private function changeOldOptions($options) {
843
+ $oldOptions = maybe_unserialize($options);
844
+ if (isset($oldOptions['wc_comment_list_order'])) {
845
+ update_option('comment_order', $oldOptions['wc_comment_list_order']);
846
+ }
847
+ if (isset($oldOptions['wc_comment_count'])) {
848
+ update_option('comments_per_page', $oldOptions['wc_comment_count']);
849
+ }
850
+ if (isset($oldOptions['wc_load_all_comments'])) {
851
+ $this->optionsSerialized->commentListLoadType = 1;
852
+ }
853
+ if (!@is_writable($this->helper->captchaDir)) {
854
+ $this->optionsSerialized->isCaptchaInSession = 1;
855
+ }
856
+ }
857
+
858
  // Add settings link on plugin page
859
  public function addPluginSettingsLink($links) {
860
  $settingsLink = '<a href="' . admin_url() . 'edit-comments.php?page=wpdiscuz_options_page">' . __('Settings', 'wpdiscuz') . '</a>';
888
  'post_author' => $post->post_author,
889
  'posts_authors' => $postsAuthors,
890
  'walker' => $this->wpdiscuzWalker,
 
891
  );
892
  }
893
 
languages/wpdiscuz-de_DE.mo ADDED
Binary file
languages/wpdiscuz-de_DE.po ADDED
@@ -0,0 +1,1342 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Copyright (C) 2015 wpDiscuz - Supercharged native comments
2
+ # This file is distributed under the same license as the wpDiscuz - Supercharged native comments package.
3
+ msgid ""
4
+ msgstr ""
5
+ "Project-Id-Version: wpDiscuz - Supercharged native comments 3.0.5\n"
6
+ "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpdiscuz\n"
7
+ "POT-Creation-Date: 2015-12-12 23:55+0100\n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2015-12-14 13:49+0100\n"
12
+ "Language-Team: \n"
13
+ "X-Generator: Poedit 1.8.6\n"
14
+ "Last-Translator: Richard Rein <partner@rein-media.com>\n"
15
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
16
+ "Language: de_DE\n"
17
+
18
+ #: class.WpdiscuzCore.php:226
19
+ #: templates/comment/class.WpdiscuzTemplateBuilder.php:245
20
+ msgid "Anonymous"
21
+ msgstr "Anonym"
22
+
23
+ #: class.WpdiscuzCore.php:800 options/options-layouts/settings-social.php:12
24
+ #: options/options-layouts/settings-social.php:14
25
+ #: options/options-layouts/settings-social.php:16
26
+ #: options/options-layouts/settings-social.php:18
27
+ msgid "Settings"
28
+ msgstr "Einstellungen\t"
29
+
30
+ #: class.WpdiscuzCore.php:802
31
+ msgid "Phrases"
32
+ msgstr "Phrasen"
33
+
34
+ #: options/class.WpdiscuzOptions.php:37 options/class.WpdiscuzOptions.php:273
35
+ msgid "Hacker?"
36
+ msgstr "Hacker?"
37
+
38
+ #: options/class.WpdiscuzOptions.php:95
39
+ msgid "wpDiscuz General Settings"
40
+ msgstr "wpDiscuz Einstellungen"
41
+
42
+ #: options/class.WpdiscuzOptions.php:186
43
+ msgid "General settings"
44
+ msgstr "Allgemeine Einstellungen"
45
+
46
+ #: options/class.WpdiscuzOptions.php:187
47
+ #: options/options-layouts/settings-live-update.php:7
48
+ msgid "Live Update"
49
+ msgstr "Live-Benachrichtigung"
50
+
51
+ #: options/class.WpdiscuzOptions.php:188
52
+ #: options/options-layouts/settings-show-hide.php:7
53
+ msgid "Show/Hide Components"
54
+ msgstr "Anzeigen / Verbergen"
55
+
56
+ #: options/class.WpdiscuzOptions.php:189
57
+ msgid "Email Subscription"
58
+ msgstr "E-Mail- Abonnement"
59
+
60
+ #: options/class.WpdiscuzOptions.php:189
61
+ msgid "and Postmatic"
62
+ msgstr "und Postmatic"
63
+
64
+ #: options/class.WpdiscuzOptions.php:190
65
+ #: options/options-layouts/settings-style.php:7
66
+ msgid "Background and Colors"
67
+ msgstr "Hintergünde & Farben"
68
+
69
+ #: options/class.WpdiscuzOptions.php:191
70
+ #: options/options-layouts/settings-social.php:91
71
+ msgid "Social Login"
72
+ msgstr "Social Login"
73
+
74
+ #: options/class.WpdiscuzOptions.php:255
75
+ msgid "Reset Options"
76
+ msgstr ""
77
+ "Alle Einstellungen unwiederruflich auf die Grundeinstellung zurücksetzen?"
78
+
79
+ #: options/class.WpdiscuzOptions.php:257
80
+ msgid "Refresh comment optimization"
81
+ msgstr "Kommentar-Optimierung erneuern"
82
+
83
+ #: options/class.WpdiscuzOptions.php:258 options/class.WpdiscuzOptions.php:447
84
+ msgid "Save Changes"
85
+ msgstr "Änderungen speichern"
86
+
87
+ #: options/class.WpdiscuzOptions.php:386
88
+ msgid "WpDiscuz Front-end Phrases"
89
+ msgstr "WpDiscuz Front-end Phrasen"
90
+
91
+ #: options/class.WpdiscuzOptions.php:396
92
+ msgid "General"
93
+ msgstr "Allgemein"
94
+
95
+ #: options/class.WpdiscuzOptions.php:397
96
+ msgid "Form"
97
+ msgstr "Formular"
98
+
99
+ #: options/class.WpdiscuzOptions.php:398
100
+ #: options/class.WpdiscuzOptionsSerialized.php:444
101
+ #: options/phrases-layouts/phrases-general.php:32
102
+ msgid "Comment"
103
+ msgstr "Kommentar"
104
+
105
+ #: options/class.WpdiscuzOptions.php:399
106
+ msgid "Date/Time"
107
+ msgstr "Datum/Zeit"
108
+
109
+ #: options/class.WpdiscuzOptions.php:400
110
+ #: options/class.WpdiscuzOptionsSerialized.php:449
111
+ msgid "Email"
112
+ msgstr "Email"
113
+
114
+ #: options/class.WpdiscuzOptions.php:401
115
+ msgid "Notification"
116
+ msgstr "Benachrichtigungen"
117
+
118
+ #: options/class.WpdiscuzOptionsSerialized.php:442
119
+ #: options/phrases-layouts/phrases-general.php:12
120
+ msgid "Leave a Reply"
121
+ msgstr "Hinterlasse einen Kommentar"
122
+
123
+ #: options/class.WpdiscuzOptionsSerialized.php:443
124
+ msgid "Be the First to Comment!"
125
+ msgstr "Hinterlasse den ersten Kommentar!"
126
+
127
+ #: options/class.WpdiscuzOptionsSerialized.php:445
128
+ msgid "Comments"
129
+ msgstr "Kommentare"
130
+
131
+ #: options/class.WpdiscuzOptionsSerialized.php:446
132
+ msgid "on"
133
+ msgstr "auf"
134
+
135
+ #: options/class.WpdiscuzOptionsSerialized.php:447
136
+ msgid "Start the discussion"
137
+ msgstr "Beginne eine Diskussion"
138
+
139
+ #: options/class.WpdiscuzOptionsSerialized.php:448
140
+ msgid "Join the discussion"
141
+ msgstr "Beteilige dich an der Dikussion"
142
+
143
+ #: options/class.WpdiscuzOptionsSerialized.php:450
144
+ msgid "Name"
145
+ msgstr "Name"
146
+
147
+ #: options/class.WpdiscuzOptionsSerialized.php:451
148
+ msgid "WebSite URL"
149
+ msgstr "Internetseite"
150
+
151
+ #: options/class.WpdiscuzOptionsSerialized.php:452
152
+ msgid "Please insert the code above to comment"
153
+ msgstr "Bitte trage den Code ein."
154
+
155
+ #: options/class.WpdiscuzOptionsSerialized.php:453
156
+ msgid "Post Comment"
157
+ msgstr "Kommentar veröffentlichen"
158
+
159
+ #: options/class.WpdiscuzOptionsSerialized.php:454
160
+ #: options/phrases-layouts/phrases-form.php:82
161
+ #: options/phrases-layouts/phrases-form.php:86
162
+ msgid "Notify of"
163
+ msgstr "Benachrichtige mich zu:"
164
+
165
+ #: options/class.WpdiscuzOptionsSerialized.php:455
166
+ #: options/phrases-layouts/phrases-form.php:96
167
+ msgid "new follow-up comments"
168
+ msgstr "Alle neuen Kommentare"
169
+
170
+ #: options/class.WpdiscuzOptionsSerialized.php:456
171
+ msgid "new replies to my comments"
172
+ msgstr "Nur Antworten zu meinen Kommentar/en"
173
+
174
+ #: options/class.WpdiscuzOptionsSerialized.php:457
175
+ #: options/phrases-layouts/phrases-form.php:116
176
+ msgid "Notify of new replies to this comment"
177
+ msgstr "Antworten auf diesen Kommentar"
178
+
179
+ #: options/class.WpdiscuzOptionsSerialized.php:458
180
+ #: options/phrases-layouts/phrases-form.php:122
181
+ #: options/phrases-layouts/phrases-form.php:126
182
+ msgid "Sort by"
183
+ msgstr "Sortiert nach"
184
+
185
+ #: options/class.WpdiscuzOptionsSerialized.php:459
186
+ #: options/phrases-layouts/phrases-form.php:132
187
+ #: options/phrases-layouts/phrases-form.php:136
188
+ msgid "newest"
189
+ msgstr "neuste"
190
+
191
+ #: options/class.WpdiscuzOptionsSerialized.php:460
192
+ #: options/phrases-layouts/phrases-form.php:142
193
+ #: options/phrases-layouts/phrases-form.php:146
194
+ msgid "oldest"
195
+ msgstr "älteste"
196
+
197
+ #: options/class.WpdiscuzOptionsSerialized.php:461
198
+ #: options/phrases-layouts/phrases-form.php:152
199
+ #: options/phrases-layouts/phrases-form.php:156
200
+ msgid "most voted"
201
+ msgstr "beste Bewertung"
202
+
203
+ #: options/class.WpdiscuzOptionsSerialized.php:462
204
+ msgid "Load More Comments"
205
+ msgstr "weitere Kommentare anzeigen"
206
+
207
+ #: options/class.WpdiscuzOptionsSerialized.php:463
208
+ #: options/phrases-layouts/phrases-general.php:72
209
+ msgid "Load Rest of Comments"
210
+ msgstr "lade alle weiteren Kommenatre"
211
+
212
+ #: options/class.WpdiscuzOptionsSerialized.php:464
213
+ #: options/phrases-layouts/phrases-comment.php:12
214
+ msgid "Reply"
215
+ msgstr "Antworten"
216
+
217
+ #: options/class.WpdiscuzOptionsSerialized.php:465
218
+ #: options/phrases-layouts/phrases-comment.php:22
219
+ msgid "Share"
220
+ msgstr "teilen"
221
+
222
+ #: options/class.WpdiscuzOptionsSerialized.php:466
223
+ #: options/phrases-layouts/phrases-comment.php:32
224
+ #: templates/comment/class.WpdiscuzTemplateBuilder.php:182
225
+ msgid "Edit"
226
+ msgstr "bearbeiten"
227
+
228
+ #: options/class.WpdiscuzOptionsSerialized.php:467
229
+ #: options/phrases-layouts/phrases-comment.php:42
230
+ msgid "Share On Facebook"
231
+ msgstr "Diesen Kommentar auf Facebook teilen?"
232
+
233
+ #: options/class.WpdiscuzOptionsSerialized.php:468
234
+ #: options/phrases-layouts/phrases-comment.php:52
235
+ msgid "Share On Twitter"
236
+ msgstr "Diesen Kommentar auf Twitter teilen?"
237
+
238
+ #: options/class.WpdiscuzOptionsSerialized.php:469
239
+ #: options/phrases-layouts/phrases-comment.php:62
240
+ msgid "Share On Google"
241
+ msgstr "Diesen Kommentar auf Twitter teilen?"
242
+
243
+ #: options/class.WpdiscuzOptionsSerialized.php:470
244
+ #: options/phrases-layouts/phrases-comment.php:72
245
+ msgid "Share On VKontakte"
246
+ msgstr "Diesen Kommentar auf VKontakte teilen?"
247
+
248
+ #: options/class.WpdiscuzOptionsSerialized.php:471
249
+ #: options/phrases-layouts/phrases-comment.php:82
250
+ msgid "Share On Odnoklassniki"
251
+ msgstr "Diesen Kommentar auf Odnoklassniki teilen?"
252
+
253
+ #: options/class.WpdiscuzOptionsSerialized.php:472
254
+ #: options/phrases-layouts/phrases-comment.php:92
255
+ msgid "Hide Replies"
256
+ msgstr "Antworten verbergen"
257
+
258
+ #: options/class.WpdiscuzOptionsSerialized.php:473
259
+ #: options/phrases-layouts/phrases-comment.php:102
260
+ msgid "Show Replies"
261
+ msgstr "Antworten anzeigen"
262
+
263
+ #: options/class.WpdiscuzOptionsSerialized.php:474
264
+ msgid "Guest"
265
+ msgstr "Gast"
266
+
267
+ #: options/class.WpdiscuzOptionsSerialized.php:475
268
+ msgid "Member"
269
+ msgstr "Mitglied"
270
+
271
+ #: options/class.WpdiscuzOptionsSerialized.php:476
272
+ msgid "Author"
273
+ msgstr "Autor"
274
+
275
+ #: options/class.WpdiscuzOptionsSerialized.php:477
276
+ msgid "Admin"
277
+ msgstr "Webmaster"
278
+
279
+ #: options/class.WpdiscuzOptionsSerialized.php:478
280
+ #: options/phrases-layouts/phrases-general.php:86
281
+ msgid "New Comment"
282
+ msgstr "Neuer Kommentar"
283
+
284
+ #: options/class.WpdiscuzOptionsSerialized.php:479
285
+ msgid "New comment on the discussion section you've been interested in"
286
+ msgstr ""
287
+ "Bei einen von dir abonnierten Video wurde ein neuer Kommentar veröffentlicht."
288
+
289
+ #: options/class.WpdiscuzOptionsSerialized.php:480
290
+ #: options/phrases-layouts/phrases-email.php:36
291
+ #: options/phrases-layouts/phrases-general.php:106
292
+ #: utils/class.WpdiscuzEmailHelper.php:155
293
+ msgid "New Reply"
294
+ msgstr "Neuer Kommentar"
295
+
296
+ #: options/class.WpdiscuzOptionsSerialized.php:481
297
+ #: utils/class.WpdiscuzEmailHelper.php:156
298
+ msgid "New reply on the discussion section you've been interested in"
299
+ msgstr ""
300
+ "Bei einen von dir abonnierten Video wurde eine neue Antwort veröffentlicht."
301
+
302
+ #: options/class.WpdiscuzOptionsSerialized.php:482
303
+ msgid "You're subscribed for new replies on this comment"
304
+ msgstr ""
305
+ "Du hast alle zukünftigen Antworten zu diesem Kommentar erfolgreich abonniert."
306
+
307
+ #: options/class.WpdiscuzOptionsSerialized.php:483
308
+ msgid "You're subscribed for new replies on all your comments"
309
+ msgstr ""
310
+ "Du hast alle zukünftigen Antworten zu allen Kommentaren erfolgreich "
311
+ "abonniert."
312
+
313
+ #: options/class.WpdiscuzOptionsSerialized.php:484
314
+ msgid "You're subscribed for new follow-up comments on this post"
315
+ msgstr ""
316
+ "Du hast alle zukünftigen Kommentaren zu diesem Beitrag erfolgreich abonniert."
317
+
318
+ #: options/class.WpdiscuzOptionsSerialized.php:485
319
+ #: options/phrases-layouts/phrases-email.php:52
320
+ #: options/phrases-layouts/phrases-email.php:56
321
+ msgid "Unsubscribe"
322
+ msgstr "Benachrichtigung deaktivieren?"
323
+
324
+ #: options/class.WpdiscuzOptionsSerialized.php:486
325
+ #: options/phrases-layouts/phrases-email.php:66
326
+ msgid "Cancel subscription"
327
+ msgstr "Benachrichtigung abbrechen"
328
+
329
+ #: options/class.WpdiscuzOptionsSerialized.php:487
330
+ #: options/phrases-layouts/phrases-notification.php:32
331
+ msgid "You've successfully unsubscribed."
332
+ msgstr "Kommentar-Benachrichtigung erfolgreich de-abonniert"
333
+
334
+ #: options/class.WpdiscuzOptionsSerialized.php:488
335
+ #: options/phrases-layouts/phrases-notification.php:22
336
+ msgid "You've successfully subscribed."
337
+ msgstr "Kommentar-Benachrichtigung erfolgreich abonniert"
338
+
339
+ #: options/class.WpdiscuzOptionsSerialized.php:489
340
+ #: options/phrases-layouts/phrases-email.php:72
341
+ #: options/phrases-layouts/phrases-email.php:76
342
+ msgid "Confirm your subscription"
343
+ msgstr "Bestätigte deine Kommentar-Benachrichtigung"
344
+
345
+ #: options/class.WpdiscuzOptionsSerialized.php:490
346
+ #: options/phrases-layouts/phrases-email.php:82
347
+ #: options/phrases-layouts/phrases-email.php:86
348
+ msgid "You've successfully confirmed your subscription."
349
+ msgstr "Du hast deine Kommentar-Benachrichtigung/en erfolgreich abonniert"
350
+
351
+ #: options/class.WpdiscuzOptionsSerialized.php:491
352
+ #: options/phrases-layouts/phrases-email.php:96
353
+ #: utils/class.WpdiscuzEmailHelper.php:45
354
+ msgid "Subscribe Confirmation"
355
+ msgstr "Kommentar-Benachrichtigung"
356
+
357
+ #: options/class.WpdiscuzOptionsSerialized.php:492
358
+ #: options/phrases-layouts/phrases-email.php:106
359
+ #: utils/class.WpdiscuzEmailHelper.php:46
360
+ msgid ""
361
+ "Hi, <br/> You just subscribed for new comments on our website. This means "
362
+ "you will receive an email when new comments are posted according to "
363
+ "subscription option you've chosen. <br/> To activate, click confirm below. "
364
+ "If you believe this is an error, ignore this message and we'll never bother "
365
+ "you again."
366
+ msgstr ""
367
+ "Sehr geehrter Besucher, <br/> laut unseren Informationen hast du dich "
368
+ "entschieden, neue Kommentare zu einen von dir gewählten Beitrag zu "
369
+ "abonnieren. <br/> Klicke den Link zum aktivieren oder ignoriere diese "
370
+ "Nachricht. Vielen Dank!"
371
+
372
+ #: options/class.WpdiscuzOptionsSerialized.php:493
373
+ msgid "please fill out this field to comment"
374
+ msgstr "Bitte fülle dieses Feld aus."
375
+
376
+ #: options/class.WpdiscuzOptionsSerialized.php:494
377
+ msgid "email address is invalid"
378
+ msgstr "Bitte überprüfe deine angegebene Email-Adresse."
379
+
380
+ #: options/class.WpdiscuzOptionsSerialized.php:495
381
+ msgid "url is invalid"
382
+ msgstr "Bitte überprüfe deine angegebene URL."
383
+
384
+ #: options/class.WpdiscuzOptionsSerialized.php:496
385
+ msgid "year"
386
+ msgstr "Jahr"
387
+
388
+ #: options/class.WpdiscuzOptionsSerialized.php:497
389
+ msgid "years"
390
+ msgstr "Jahre"
391
+
392
+ #: options/class.WpdiscuzOptionsSerialized.php:498
393
+ msgid "month"
394
+ msgstr "Monat"
395
+
396
+ #: options/class.WpdiscuzOptionsSerialized.php:499
397
+ msgid "months"
398
+ msgstr "Monate"
399
+
400
+ #: options/class.WpdiscuzOptionsSerialized.php:500
401
+ msgid "day"
402
+ msgstr "Tag"
403
+
404
+ #: options/class.WpdiscuzOptionsSerialized.php:501
405
+ msgid "days"
406
+ msgstr "Tage"
407
+
408
+ #: options/class.WpdiscuzOptionsSerialized.php:502
409
+ msgid "hour"
410
+ msgstr "Stunde"
411
+
412
+ #: options/class.WpdiscuzOptionsSerialized.php:503
413
+ msgid "hours"
414
+ msgstr "Stunden"
415
+
416
+ #: options/class.WpdiscuzOptionsSerialized.php:504
417
+ msgid "minute"
418
+ msgstr "Minute"
419
+
420
+ #: options/class.WpdiscuzOptionsSerialized.php:505
421
+ msgid "minutes"
422
+ msgstr "Minuten"
423
+
424
+ #: options/class.WpdiscuzOptionsSerialized.php:506
425
+ msgid "second"
426
+ msgstr "Sekunde"
427
+
428
+ #: options/class.WpdiscuzOptionsSerialized.php:507
429
+ msgid "seconds"
430
+ msgstr "Sekunden"
431
+
432
+ #: options/class.WpdiscuzOptionsSerialized.php:508
433
+ msgid "right now"
434
+ msgstr "gerade eben"
435
+
436
+ #: options/class.WpdiscuzOptionsSerialized.php:509
437
+ msgid "ago"
438
+ msgstr "her"
439
+
440
+ #: options/class.WpdiscuzOptionsSerialized.php:510
441
+ #: options/phrases-layouts/phrases-datetime.php:156
442
+ msgid "Today"
443
+ msgstr "Heute"
444
+
445
+ #: options/class.WpdiscuzOptionsSerialized.php:511
446
+ #: options/phrases-layouts/phrases-notification.php:72
447
+ msgid "You must be"
448
+ msgstr "Du musst"
449
+
450
+ #: options/class.WpdiscuzOptionsSerialized.php:512
451
+ msgid "You are logged in as"
452
+ msgstr "Du bist angemeldet als"
453
+
454
+ #: options/class.WpdiscuzOptionsSerialized.php:513
455
+ #: options/phrases-layouts/phrases-notification.php:92
456
+ msgid "Log out"
457
+ msgstr "Jetzt abmelden?"
458
+
459
+ #: options/class.WpdiscuzOptionsSerialized.php:514
460
+ msgid "logged in"
461
+ msgstr "angemeldet sein"
462
+
463
+ #: options/class.WpdiscuzOptionsSerialized.php:515
464
+ msgid "to post a comment."
465
+ msgstr "um ein Kommentar oder eine Antwort schreiben zu können"
466
+
467
+ #: options/class.WpdiscuzOptionsSerialized.php:516
468
+ #: options/phrases-layouts/phrases-comment.php:152
469
+ msgid "Vote Up"
470
+ msgstr "Daumen hoch"
471
+
472
+ #: options/class.WpdiscuzOptionsSerialized.php:517
473
+ #: options/phrases-layouts/phrases-comment.php:162
474
+ msgid "Vote Down"
475
+ msgstr "Daumen runter"
476
+
477
+ #: options/class.WpdiscuzOptionsSerialized.php:518
478
+ #: options/phrases-layouts/phrases-notification.php:122
479
+ msgid "Vote Counted"
480
+ msgstr "Anzahl an Stimmen"
481
+
482
+ #: options/class.WpdiscuzOptionsSerialized.php:519
483
+ msgid "You've already voted for this comment"
484
+ msgstr "Es ist immer nur eine Bewertung erlaubt."
485
+
486
+ #: options/class.WpdiscuzOptionsSerialized.php:520
487
+ #: options/phrases-layouts/phrases-notification.php:142
488
+ msgid "Voting Error"
489
+ msgstr "Bewertungs-Fehler bei deiner Wahl: Bitte versuche es erneut"
490
+
491
+ #: options/class.WpdiscuzOptionsSerialized.php:521
492
+ msgid "You Must Be Logged In To Vote"
493
+ msgstr "Um deine Stimme abgeben zu können musst du angemeldet sein."
494
+
495
+ #: options/class.WpdiscuzOptionsSerialized.php:522
496
+ msgid "You cannot vote for your comment"
497
+ msgstr "Eigene Kommentare können nicht bewertet werden."
498
+
499
+ #: options/class.WpdiscuzOptionsSerialized.php:523
500
+ msgid "You are not allowed to vote for this comment"
501
+ msgstr "Es ist nur eine Stimm-Vergabe möglich."
502
+
503
+ #: options/class.WpdiscuzOptionsSerialized.php:524
504
+ #: options/phrases-layouts/phrases-notification.php:182
505
+ msgid "Invalid Captcha Code"
506
+ msgstr "Leider wurde der CAPTCHA -Code falsch eingetragen"
507
+
508
+ #: options/class.WpdiscuzOptionsSerialized.php:525
509
+ #: options/phrases-layouts/phrases-notification.php:192
510
+ msgid "Some of field value is invalid"
511
+ msgstr "Nicht alle von dir ausgefüllten Felder sind richtig."
512
+
513
+ #: options/class.WpdiscuzOptionsSerialized.php:526
514
+ msgid "new comment"
515
+ msgstr "neuer Kommentar"
516
+
517
+ #: options/class.WpdiscuzOptionsSerialized.php:527
518
+ msgid "new comments"
519
+ msgstr "neue Kommentare"
520
+
521
+ #: options/class.WpdiscuzOptionsSerialized.php:528
522
+ msgid "Comment awaiting moderation"
523
+ msgstr "Dein Kommentar wurde zur Freischaltung vorgelegt."
524
+
525
+ #: options/class.WpdiscuzOptionsSerialized.php:529
526
+ msgid "new reply on your comment"
527
+ msgstr "Neue Antwort auf deinen Kommentar"
528
+
529
+ #: options/class.WpdiscuzOptionsSerialized.php:530
530
+ msgid "new replies on your comments"
531
+ msgstr ""
532
+ "Bei einen von dir abonnierten Video wurde eine neue Antwort veröffentlicht."
533
+
534
+ #: options/class.WpdiscuzOptionsSerialized.php:531
535
+ #: options/phrases-layouts/phrases-general.php:126
536
+ msgid "New"
537
+ msgstr "Neu"
538
+
539
+ #: options/class.WpdiscuzOptionsSerialized.php:532
540
+ #: options/phrases-layouts/phrases-notification.php:236
541
+ msgid "Sorry, the comment was not updated"
542
+ msgstr ""
543
+ "Tut uns leid aber dieser Kommentar konnte leider nicht aktualisiert werden."
544
+
545
+ #: options/class.WpdiscuzOptionsSerialized.php:533
546
+ #: options/phrases-layouts/phrases-notification.php:246
547
+ msgid "Sorry, this comment no longer possible to edit"
548
+ msgstr ""
549
+ "Tut uns leid aber dieser Kommentar kann leider nicht mehr aktualisiert "
550
+ "werden."
551
+
552
+ #: options/class.WpdiscuzOptionsSerialized.php:534
553
+ msgid "You've not made any changes"
554
+ msgstr "Es wurden keine Änderungen von dir vorgenommen."
555
+
556
+ #: options/class.WpdiscuzOptionsSerialized.php:535
557
+ #: options/phrases-layouts/phrases-comment.php:176
558
+ msgid "Save"
559
+ msgstr "Sichern"
560
+
561
+ #: options/class.WpdiscuzOptionsSerialized.php:536
562
+ #: options/phrases-layouts/phrases-comment.php:186
563
+ msgid "Cancel"
564
+ msgstr "Abbrechen"
565
+
566
+ #: options/class.WpdiscuzOptionsSerialized.php:537
567
+ msgid "Comment text is too short (minimum %d% characters)"
568
+ msgstr "Dein Kommentar ist zu kurz (minimal %d% Zeichen)"
569
+
570
+ #: options/class.WpdiscuzOptionsSerialized.php:538
571
+ msgid "Comment text is too long (maximum %d% characters allowed)"
572
+ msgstr "Dein Kommentar ist zu lang (maximal sind %s Zeichen erlaubt)"
573
+
574
+ #: options/class.WpdiscuzOptionsSerialized.php:539
575
+ #: options/phrases-layouts/phrases-notification.php:262
576
+ #: options/phrases-layouts/phrases-notification.php:266
577
+ msgid "Please fill out required fields"
578
+ msgstr "Bitte fülle alle benötigten Felder aus"
579
+
580
+ #: options/class.WpdiscuzOptionsSerialized.php:540
581
+ #: options/phrases-layouts/phrases-form.php:192
582
+ #: options/phrases-layouts/phrases-form.php:196
583
+ msgid "Connect with"
584
+ msgstr "Verbunden mit"
585
+
586
+ #: options/class.WpdiscuzOptionsSerialized.php:541
587
+ msgid "You're subscribed to"
588
+ msgstr "Deine Auswahl"
589
+
590
+ #: options/options-layouts/settings-general.php:7
591
+ msgid "General Settings"
592
+ msgstr "Allgemeine Einstellungen"
593
+
594
+ #: options/options-layouts/settings-general.php:12
595
+ msgid "Display comment form for post types:"
596
+ msgstr "Kommentarfelder anzeigen auf:"
597
+
598
+ #: options/options-layouts/settings-general.php:32
599
+ msgid "Comment author must fill out name"
600
+ msgstr "Autor muss Name hinterlassen"
601
+
602
+ #: options/options-layouts/settings-general.php:42
603
+ msgid "Comment author must fill out email"
604
+ msgstr "Autor muss eMail hinterlassen"
605
+
606
+ #: options/options-layouts/settings-general.php:52
607
+ msgid "Comment text min length"
608
+ msgstr "Kommentartext-Läge (minimum)"
609
+
610
+ #: options/options-layouts/settings-general.php:62
611
+ msgid "Comment text max length"
612
+ msgstr "Kommentartext-Läge (maximum)"
613
+
614
+ #: options/options-layouts/settings-general.php:72
615
+ msgid "Comment text size in pixels"
616
+ msgstr "Kommentartext-Schriftgröße in Pixeln"
617
+
618
+ #: options/options-layouts/settings-general.php:87
619
+ msgid "Allow comment editing for"
620
+ msgstr "Kommentarbearbeitungsdauer"
621
+
622
+ #: options/options-layouts/settings-general.php:92
623
+ msgid "Not Allow"
624
+ msgstr "Kommentarbearbeitung deaktivieren"
625
+
626
+ #: options/options-layouts/settings-general.php:93
627
+ #: options/options-layouts/settings-general.php:94
628
+ #: options/options-layouts/settings-live-update.php:52
629
+ #: options/options-layouts/settings-live-update.php:53
630
+ #: options/options-layouts/settings-live-update.php:54
631
+ msgid "Minutes"
632
+ msgstr "Minuten"
633
+
634
+ #: options/options-layouts/settings-general.php:95
635
+ #: options/phrases-layouts/phrases-datetime.php:72
636
+ msgid "Hour"
637
+ msgstr "Stunde"
638
+
639
+ #: options/options-layouts/settings-general.php:96
640
+ #: options/options-layouts/settings-general.php:97
641
+ msgid "Hours"
642
+ msgstr "Stunden"
643
+
644
+ #: options/options-layouts/settings-general.php:98
645
+ msgid "Unlimit"
646
+ msgstr "Jederzeit"
647
+
648
+ #: options/options-layouts/settings-general.php:104
649
+ msgid "Redirect first commenter to"
650
+ msgstr "Autor des ersten Kommtares auf folgende Unterseite weiterleiten:"
651
+
652
+ #: options/options-layouts/settings-general.php:111
653
+ msgid "Do not redirect"
654
+ msgstr "keine Weiterleitungen aktiv"
655
+
656
+ #: options/options-layouts/settings-general.php:119
657
+ msgid "Allow guests to vote on comments"
658
+ msgstr "Erlaube auch Gästen über Kommentare abzustimmen"
659
+
660
+ #: options/options-layouts/settings-general.php:129
661
+ msgid "Comments loading/pagination type"
662
+ msgstr "Vorgehen beim Laden von Kommentaren"
663
+
664
+ #: options/options-layouts/settings-general.php:138
665
+ #: options/options-layouts/settings-general.php:140
666
+ msgid "[Load more] Button"
667
+ msgstr "Schaltfläche \"weitere Kommentare laden\""
668
+
669
+ #: options/options-layouts/settings-general.php:142
670
+ #: options/options-layouts/settings-general.php:144
671
+ msgid "[Load rest of all comments] Button"
672
+ msgstr "Schaltfläche \"alle weiteren Kommentare laden\""
673
+
674
+ #: options/options-layouts/settings-general.php:146
675
+ #: options/options-layouts/settings-general.php:148
676
+ msgid "Lazy load comments on scrolling"
677
+ msgstr "Scroll-Funktion (Läd automatisch neue Kommentare am Ende der Seite)"
678
+
679
+ #: options/options-layouts/settings-general.php:155
680
+ msgid "Use WordPress Date/Time format"
681
+ msgstr "Verwende WordPress Datum- & Uhrzeit-Format"
682
+
683
+ #: options/options-layouts/settings-general.php:156
684
+ msgid ""
685
+ "wpDiscuz shows Human Readable date format. If you check this option it'll "
686
+ "show the date/time format set in WordPress General Settings."
687
+ msgstr ""
688
+ "wpDiscuz zeigt ein gut verständlich sowie menschlich lesbares Format. Sollte "
689
+ "diese Option aktiviert werden, wir das von Wordpress vorgegebene Format "
690
+ "verwendet."
691
+
692
+ #: options/options-layouts/settings-general.php:163
693
+ msgid "Current Wordpress date/time format"
694
+ msgstr "Aktuelles Wordpress Datums- & Uhrzeit-Format"
695
+
696
+ #: options/options-layouts/settings-general.php:169
697
+ msgid "Use Plugin .PO/.MO files"
698
+ msgstr "Verwendung von Plugin .PO / .MO Dateien?"
699
+
700
+ #: options/options-layouts/settings-general.php:170
701
+ msgid ""
702
+ "wpDiscuz phrase system allows you to translate all front-end phrases. "
703
+ "However if you have a multi-language website it'll not allow you to add more "
704
+ "than one language translation. The only way to get it is the plugin "
705
+ "translation files (.PO / .MO). If wpDiscuz has the languages you need you "
706
+ "should check this option to disable phrase system and it'll automatically "
707
+ "translate all phrases based on language files according to current language."
708
+ msgstr ""
709
+ "wpDiscuz Phrasen-System erlaubt die Beschriftungen des Kommentarbereiches. "
710
+ "Sollte jedoch eine mehrsprachiges System (Multisite) installiert sein, so "
711
+ "kannst du nur eine Sprache verwenden."
712
+
713
+ #: options/options-layouts/settings-general.php:181
714
+ msgid ""
715
+ "Help wpDiscuz to grow allowing people to recognize which comment plugin you "
716
+ "use"
717
+ msgstr ""
718
+ "Hilf wpDiscuz zu wachsen und erlaube einen kleinen Hinweis auf unser System."
719
+
720
+ #: options/options-layouts/settings-general.php:183
721
+ msgid ""
722
+ "Please check this option on to help wpDiscuz get more popularity as your "
723
+ "thank to the hard work we do for you totally free. This option adds a very "
724
+ "small (16x16px) icon under the comment section which will allow your site "
725
+ "visitors recognize the name of comment solution you use."
726
+ msgstr ""
727
+ "Bitte aktiviere diese Option um wpDiscuz zu mehr Aufmerksamkeit zu verhelfen "
728
+ "und um dich für die harte Arbeit zu bedanken und welche du kostenlos "
729
+ "uneingeschränkt verwenden darfst. Diese Option erzeugt unter dem "
730
+ "Kommentarbereich ein sehr kleines Icon (16x16px), welches deinen Besuchern "
731
+ "lediglich anzeigt, dass auf deiner Webseite wpDiskuz verwendet wird."
732
+
733
+ #: options/options-layouts/settings-general.php:188
734
+ msgid "Thank you!"
735
+ msgstr "Danke dir!"
736
+
737
+ #: options/options-layouts/settings-live-update.php:12
738
+ msgid "Live update options"
739
+ msgstr "Optionen für Live-Benachrichtigung bei neuen Kommentaren:"
740
+
741
+ #: options/options-layouts/settings-live-update.php:13
742
+ msgid ""
743
+ "wpDiscuz 3 live update is very smart and doesn't overload your server even "
744
+ "if you're on Shared hosting plan and even your website is very active. "
745
+ "However we recommend to monitor your server resources if you're on a Shared "
746
+ "hosting plan. There are some very weak hosting plans which may not be able "
747
+ "to perform very frequently live update requests. If you found some issue you "
748
+ "can set the option below 30 seconds or more."
749
+ msgstr ""
750
+ "Unsere wpDiscuz 3 Live-Benachrichtigung ist sehr intelligent und wird deine "
751
+ "Webseite selbst bei vielen / aktiven Besuchern und selbst bei Shared Hosting "
752
+ "(mehere Webseiten auf einen Server) nicht überladen bzw. nicht sehr stark "
753
+ "beanspruchen. Bei Shared Hostings empfehlen wir jedoch deine Server-"
754
+ "Ressourcen ggf. auf eine mögliche Auslastung zu überwachen, da es bei "
755
+ "verschiedenen schlechten Hostern durchaus zur Auslastung kommen kann. In "
756
+ "solchen selten Fällen kannst du diese Funktion jedoch deaktivieren oder die "
757
+ "Aktualisierungsfrequenz auf einen Wert über 30 Sekunden festlegen. Sollte "
758
+ "dies nicht helfen wende dich bitte an deinen Webhosting-Anbieter."
759
+
760
+ #: options/options-layouts/settings-live-update.php:18
761
+ msgid "Never update"
762
+ msgstr "Niemals aktualisieren"
763
+
764
+ #: options/options-layouts/settings-live-update.php:20
765
+ msgid "Turn off \"Live Update\" function"
766
+ msgstr "Live-Benachrichtigungen deaktivieren"
767
+
768
+ #: options/options-layouts/settings-live-update.php:22
769
+ msgid "Show new comment/reply buttons to update manualy"
770
+ msgstr ""
771
+ "Zeige neue Kommentar- / Antwort-Links um deinen Besuchern manuelles "
772
+ "Aktualsieren zu ermöglichen"
773
+
774
+ #: options/options-layouts/settings-live-update.php:24
775
+ msgid "Always check for new comments and show update buttons"
776
+ msgstr "Auf neue Kommentare überprüfen und Schaltfläche anzeigen"
777
+
778
+ #: options/options-layouts/settings-live-update.php:26
779
+ msgid "Always update"
780
+ msgstr "Live-Benachrichtigungen aktivieren"
781
+
782
+ #: options/options-layouts/settings-live-update.php:28
783
+ msgid "Always check for new comments and update automatically"
784
+ msgstr "Auf neue Kommentare überprüfen und automaisch anzeigen"
785
+
786
+ #: options/options-layouts/settings-live-update.php:35
787
+ msgid "Disable live update for guests"
788
+ msgstr "Deaktiviere Live-Benachrichtigungen für Gäste"
789
+
790
+ #: options/options-layouts/settings-live-update.php:43
791
+ msgid "Update comment list every"
792
+ msgstr "Aktualisiere Kommentarliste alle"
793
+
794
+ #: options/options-layouts/settings-live-update.php:48
795
+ #: options/options-layouts/settings-live-update.php:49
796
+ #: options/options-layouts/settings-live-update.php:50
797
+ msgid "Seconds"
798
+ msgstr "Sekunden"
799
+
800
+ #: options/options-layouts/settings-live-update.php:51
801
+ #: options/phrases-layouts/phrases-datetime.php:92
802
+ msgid "Minute"
803
+ msgstr "Minute"
804
+
805
+ #: options/options-layouts/settings-show-hide.php:12
806
+ msgid "Show logged-in user name and logout link on top of main form"
807
+ msgstr ""
808
+ "Eingeloggten Besuchern ihren Benutzernamen sowie einen Ausloggen-Link über "
809
+ "dem Kommentarformular anzeigen?"
810
+
811
+ #: options/options-layouts/settings-show-hide.php:22
812
+ msgid "Hide Reply button for Guests"
813
+ msgstr "Antworten-Link für ausgeloggte Nutzer verbergen?"
814
+
815
+ #: options/options-layouts/settings-show-hide.php:32
816
+ msgid "Hide Reply button for Members"
817
+ msgstr "Antworten-Link für eingeloggte Nutzer verbergen?"
818
+
819
+ #: options/options-layouts/settings-show-hide.php:42
820
+ msgid "Hide Commenter Labels"
821
+ msgstr "Kennzeichnung von Autoren verbergen?"
822
+
823
+ #: options/options-layouts/settings-show-hide.php:52
824
+ msgid "Hide Voting buttons"
825
+ msgstr "Abstimm-Schaltflächen verbergen?"
826
+
827
+ #: options/options-layouts/settings-show-hide.php:62
828
+ msgid "Show Share Buttons"
829
+ msgstr "Teilen-Schaltflächen anzeigen?"
830
+
831
+ #: options/options-layouts/settings-show-hide.php:86
832
+ msgid ""
833
+ "The plugin directory is not writable! Please set writable permissions to "
834
+ "plugin directory in order to use the captcha feature"
835
+ msgstr ""
836
+ "Das Plugin-Verzeichnis ist leider nicht beschreibbar. Bitte vergebe diesem "
837
+ "die nötigen Schreibrechte um die CAPTCHA-Funktion nutzen zu können."
838
+
839
+ #: options/options-layouts/settings-show-hide.php:91
840
+ msgid "Hide the CAPTCHA field for guests"
841
+ msgstr "CAPTCHA-Felder für Gäste verbergen?"
842
+
843
+ #: options/options-layouts/settings-show-hide.php:102
844
+ msgid "Show the CAPTCHA field for logged in users"
845
+ msgstr "CAPTCHA-Felder Mitglieder verbergen?"
846
+
847
+ #: options/options-layouts/settings-show-hide.php:113
848
+ msgid "Show the Website URL field"
849
+ msgstr "Feld zum verlinken der Internetseite anzeigen?"
850
+
851
+ #: options/options-layouts/settings-show-hide.php:123
852
+ msgid "Hide header text"
853
+ msgstr "\"Hinterlasse einen Kommentar\" - Überschrift verbergen?"
854
+
855
+ #: options/options-layouts/settings-show-hide.php:133
856
+ msgid "Show sorting buttons"
857
+ msgstr "Kommentar-Sortierungsoptionen anzeigen?"
858
+
859
+ #: options/options-layouts/settings-show-hide.php:143
860
+ msgid "Set comments ordering to \"Most voted\" by default "
861
+ msgstr "Kommentare standartmäßig nach \"meiste Stimmen\" sortieren?"
862
+
863
+ #: options/options-layouts/settings-show-hide.php:153
864
+ msgid "Hide comment link"
865
+ msgstr "\"Kommentar beantworten\"-Link verbergen?"
866
+
867
+ #: options/options-layouts/settings-social.php:23
868
+ #: options/options-layouts/settings-social.php:33
869
+ #: options/options-layouts/settings-social.php:43
870
+ #: options/options-layouts/settings-social.php:54
871
+ msgid "Activate"
872
+ msgstr "Aktivieren"
873
+
874
+ #: options/options-layouts/settings-social.php:27
875
+ #: options/options-layouts/settings-social.php:37
876
+ #: options/options-layouts/settings-social.php:47
877
+ #: options/options-layouts/settings-social.php:58
878
+ msgid "View details/Install"
879
+ msgstr "Zeige Details / Installation"
880
+
881
+ #: options/options-layouts/settings-social.php:92
882
+ msgid ""
883
+ "You can use one of these most popular Social Login Plugins to allow your "
884
+ "visitors login and comment with Facebook, Twitter, Google+, Wordpress, VK, "
885
+ "OK and lots of other social network service accounts. All social login "
886
+ "buttons will be fully integrated with wpDiscuz comment forms."
887
+ msgstr ""
888
+ "Um Besuchern das Einloggen und Kommentieren zu erleichtern, kann dazu das "
889
+ "OneAll Social Login Plugin verwendet werden. Dieses erlaubt Besuchern deine "
890
+ "Webseite mit ihren Facebook, Twitter, Google+, Wordpress, VK, OK und vielen "
891
+ "weiteren Netzwerken zu verbinden. Auch können Schaltflächen zum Teilen unter "
892
+ "den Kommentaren angezeigt werden."
893
+
894
+ #: options/options-layouts/settings-style.php:12
895
+ msgid "Comment Form Background Color"
896
+ msgstr "Hintergrundfarbe des Kommentarfeldes"
897
+
898
+ #: options/options-layouts/settings-style.php:16
899
+ #: options/options-layouts/settings-style.php:25
900
+ #: options/options-layouts/settings-style.php:34
901
+ #: options/options-layouts/settings-style.php:43
902
+ #: options/options-layouts/settings-style.php:52
903
+ #: options/options-layouts/settings-style.php:61
904
+ #: options/options-layouts/settings-style.php:70
905
+ #: options/options-layouts/settings-style.php:79
906
+ #: options/options-layouts/settings-style.php:92
907
+ msgid "Example: #00FF00"
908
+ msgstr "Beispiel: #00FF00"
909
+
910
+ #: options/options-layouts/settings-style.php:21
911
+ msgid "Comment Background Color"
912
+ msgstr "Hintergrundfarbe der Kommentare"
913
+
914
+ #: options/options-layouts/settings-style.php:30
915
+ msgid "Reply Background Color"
916
+ msgstr "Hintergrundfarbe der Antworten"
917
+
918
+ #: options/options-layouts/settings-style.php:39
919
+ msgid "Comment Text Color"
920
+ msgstr "Farbe des Kommentartextes"
921
+
922
+ #: options/options-layouts/settings-style.php:48
923
+ msgid "Vote, Reply, Share, Edit links text colors"
924
+ msgstr "Farbe der Abstimmen-, Teilen- und Bearbeiten-Links"
925
+
926
+ #: options/options-layouts/settings-style.php:57
927
+ msgid "Comment form fields border color"
928
+ msgstr "Rahmenfarbe des Kommentarfeldes"
929
+
930
+ #: options/options-layouts/settings-style.php:66
931
+ msgid "New loaded comments' background color"
932
+ msgstr "Hintergrundfarbe der Benachrichtigung \"Neue Kommentare vorhanden\""
933
+
934
+ #: options/options-layouts/settings-style.php:75
935
+ msgid "Primary Color"
936
+ msgstr "Hauptfarbe"
937
+
938
+ #: options/options-layouts/settings-style.php:89
939
+ msgid "label color"
940
+ msgstr "Beschriftungs-Hintergrundfarbe"
941
+
942
+ #: options/options-layouts/settings-style.php:100
943
+ msgid "Custom CSS Code"
944
+ msgstr "Eigenes CSS:"
945
+
946
+ #: options/options-layouts/settings-subscription.php:7
947
+ msgid "Email Subscription Settings"
948
+ msgstr "E-Mail- Abonnement-Einstellungen"
949
+
950
+ #: options/options-layouts/settings-subscription.php:12
951
+ msgid "Disable subscription confirmation for registered users"
952
+ msgstr "E-Mail- Abonnement-System für angemeldete Benutzer deaktivieren?"
953
+
954
+ #: options/options-layouts/settings-subscription.php:13
955
+ msgid "Show comment subscription bar"
956
+ msgstr "Zeige \"Benachrichtige mich zu:\"-Auswahl-Menu"
957
+
958
+ #: options/options-layouts/settings-subscription.php:15
959
+ msgid ""
960
+ "This bar provides two subscription options: notify of \"new follow-up "
961
+ "comments\" and \"new replies to my comments\""
962
+ msgstr ""
963
+ "Das Menu bietet zwei Abonnement-Optionen: Benachrichtige mich über \"neue "
964
+ "Kommentare\" und \"neue Antworten auf meine Kommentare\""
965
+
966
+ #: options/options-layouts/settings-subscription.php:17
967
+ msgid "Show \"Notify of new replies to this comment\""
968
+ msgstr "Zeige\"Antworten auf diesen Kommentar\""
969
+
970
+ #: options/options-layouts/settings-subscription.php:19
971
+ msgid ""
972
+ "wpDiscuz is the only comment plugin which allows you to subscribe to certain "
973
+ "comment replies. This option is located above [Post Comment] button in "
974
+ "comment form. You can disable this subscription way by unchecking this "
975
+ "option."
976
+ msgstr ""
977
+ "wpDiscuz ist bisher das einzigste Kommentar-System, welches eMail-"
978
+ "Abonnements auf einzellne Kommentare / Antworten ermöglicht. Diese Option "
979
+ "ist oberhalb der [Kommentar veröffentlichen] Schaltfläche im Kommentar-"
980
+ "Formular. Um die Funktion zu deaktivieren kannst du hier den Options-Haken "
981
+ "entfernen."
982
+
983
+ #: options/options-layouts/settings-subscription.php:33
984
+ msgid "Use Postmatic for subscriptions and commenting by email"
985
+ msgstr ""
986
+ "Verwende Postmatic zur Benachrichtigungen bei neuen Kommentare per eMail."
987
+
988
+ #: options/options-layouts/settings-subscription.php:34
989
+ msgid ""
990
+ "Postmatic allows your users subscribe to comments. Instead of just being "
991
+ "notified, they add a reply right from their inbox."
992
+ msgstr ""
993
+ "Postmatic ermöglicht deinen Besuchern sich per eMail über neuen Kommentare "
994
+ "benachrichtigen zu lassen. Zusätzlich können diese direkt im Posteingang "
995
+ "beantwortet werden."
996
+
997
+ #: options/phrases-layouts/phrases-comment.php:7
998
+ msgid "Comment Template Phrases"
999
+ msgstr "Begriffe der Kommentarfeld-Vorlage"
1000
+
1001
+ #: options/phrases-layouts/phrases-comment.php:112
1002
+ msgid "Title For Guests"
1003
+ msgstr "Titel für Gäste"
1004
+
1005
+ #: options/phrases-layouts/phrases-comment.php:122
1006
+ msgid "Title For Members"
1007
+ msgstr "Titel für Mitglieder"
1008
+
1009
+ #: options/phrases-layouts/phrases-comment.php:132
1010
+ msgid "Title For Authors"
1011
+ msgstr "Titel für Autoren"
1012
+
1013
+ #: options/phrases-layouts/phrases-comment.php:142
1014
+ msgid "Title For Admins"
1015
+ msgstr "Titel für Admins"
1016
+
1017
+ #: options/phrases-layouts/phrases-comment.php:172
1018
+ msgid "Save edited comment button text"
1019
+ msgstr "Linktext zum Speichern einer Kommentarbearbeitung"
1020
+
1021
+ #: options/phrases-layouts/phrases-comment.php:182
1022
+ msgid "Cancel comment editing button text"
1023
+ msgstr "Linktext zum Abbruch einer Kommentarbearbeitung"
1024
+
1025
+ #: options/phrases-layouts/phrases-datetime.php:7
1026
+ msgid "Date/Time Phrases"
1027
+ msgstr "Datum & Uhrzeit Beschriftungen"
1028
+
1029
+ #: options/phrases-layouts/phrases-datetime.php:12
1030
+ msgid "Year"
1031
+ msgstr "Jahr"
1032
+
1033
+ #: options/phrases-layouts/phrases-datetime.php:22
1034
+ msgid "Years (Plural Form)"
1035
+ msgstr "Jahre (Mehrzahl)"
1036
+
1037
+ #: options/phrases-layouts/phrases-datetime.php:26
1038
+ msgid "Years"
1039
+ msgstr "Jahre"
1040
+
1041
+ #: options/phrases-layouts/phrases-datetime.php:32
1042
+ msgid "Month"
1043
+ msgstr "Monat"
1044
+
1045
+ #: options/phrases-layouts/phrases-datetime.php:42
1046
+ msgid "Months (Plural Form)"
1047
+ msgstr "Monate (Mehrzahl)"
1048
+
1049
+ #: options/phrases-layouts/phrases-datetime.php:52
1050
+ msgid "Day"
1051
+ msgstr "Tag"
1052
+
1053
+ #: options/phrases-layouts/phrases-datetime.php:62
1054
+ msgid "Days (Plural Form)"
1055
+ msgstr "Tage (Mehrzahl)"
1056
+
1057
+ #: options/phrases-layouts/phrases-datetime.php:82
1058
+ msgid "Hours (Plural Form)"
1059
+ msgstr "Stunden (Mehrzahl)"
1060
+
1061
+ #: options/phrases-layouts/phrases-datetime.php:102
1062
+ msgid "Minutes (Plural Form)"
1063
+ msgstr "Minuten (Mehrzahl)"
1064
+
1065
+ #: options/phrases-layouts/phrases-datetime.php:112
1066
+ msgid "Second"
1067
+ msgstr "Sekunde"
1068
+
1069
+ #: options/phrases-layouts/phrases-datetime.php:122
1070
+ msgid "Seconds (Plural Form)"
1071
+ msgstr "Sekunden (Mehrzahl)"
1072
+
1073
+ #: options/phrases-layouts/phrases-datetime.php:132
1074
+ msgid "Commented \"right now\" text"
1075
+ msgstr "Text zur Benachrichtigung \"gerade eben kommentiert\""
1076
+
1077
+ #: options/phrases-layouts/phrases-datetime.php:142
1078
+ msgid "Ago text"
1079
+ msgstr "\"vor etwa\"-Text (vergangen / x-Minuten her)"
1080
+
1081
+ #: options/phrases-layouts/phrases-datetime.php:152
1082
+ msgid "\"Today\" text"
1083
+ msgstr "Text zur Benachrichtigung \"Heute\""
1084
+
1085
+ #: options/phrases-layouts/phrases-email.php:7
1086
+ msgid "Email Template Phrases"
1087
+ msgstr "Email-Benachrichtungs-Phrasen"
1088
+
1089
+ #: options/phrases-layouts/phrases-email.php:12
1090
+ msgid "Email Subject"
1091
+ msgstr "eMail Betreff"
1092
+
1093
+ #: options/phrases-layouts/phrases-email.php:22
1094
+ msgid "Email Message"
1095
+ msgstr "eMail Mitteilung"
1096
+
1097
+ #: options/phrases-layouts/phrases-email.php:32
1098
+ msgid "New Reply Subject"
1099
+ msgstr "Betreff bei neuen Antworten"
1100
+
1101
+ #: options/phrases-layouts/phrases-email.php:42
1102
+ msgid "New Reply Message"
1103
+ msgstr "Nachricht bei neuen Antworten"
1104
+
1105
+ #: options/phrases-layouts/phrases-email.php:62
1106
+ #: options/phrases-layouts/phrases-email.php:66
1107
+ msgid "Ignore Subscription"
1108
+ msgstr "Kommentar-Benachrichtigung ignorieren"
1109
+
1110
+ #: options/phrases-layouts/phrases-email.php:92
1111
+ msgid "Subscribe Confirmation Email Subject"
1112
+ msgstr "Kommentar-Benachrichtigung Bestätigung -eMail Betreff"
1113
+
1114
+ #: options/phrases-layouts/phrases-email.php:102
1115
+ msgid "Subscribe Confirmation Email Content"
1116
+ msgstr "Kommentar-Benachrichtigung Bestätigung -eMail Mitteilung"
1117
+
1118
+ #: options/phrases-layouts/phrases-form.php:7
1119
+ msgid "Form Template Phrases"
1120
+ msgstr "Formular-Gestaltungs-Phrasen"
1121
+
1122
+ #: options/phrases-layouts/phrases-form.php:12
1123
+ msgid "Comment Field Start"
1124
+ msgstr ""
1125
+ "Text im ersten Kommentarfeld wie bspw. \"Schreibe einen ersten Kommentar\""
1126
+
1127
+ #: options/phrases-layouts/phrases-form.php:22
1128
+ msgid "Comment Field Join"
1129
+ msgstr ""
1130
+ "Text in weiteren Kommentarfelder wie bspw. \"Schreibe dazu einen Kommentar\""
1131
+
1132
+ #: options/phrases-layouts/phrases-form.php:32
1133
+ msgid "Email Field"
1134
+ msgstr "Beschriftung des Feldes für die eMail"
1135
+
1136
+ #: options/phrases-layouts/phrases-form.php:42
1137
+ msgid "Name Field"
1138
+ msgstr "Beschriftung des Feldes des Namen"
1139
+
1140
+ #: options/phrases-layouts/phrases-form.php:52
1141
+ msgid "WebSite URL Field"
1142
+ msgstr "Beschriftung des Felde für URL einer / der Internetseite"
1143
+
1144
+ #: options/phrases-layouts/phrases-form.php:62
1145
+ msgid "CAPTCHA Field"
1146
+ msgstr "Beschriftung des CAPTCHA Feldes"
1147
+
1148
+ #: options/phrases-layouts/phrases-form.php:72
1149
+ msgid "Submit Button"
1150
+ msgstr "Schaltfläche zum veröffentlichen eines Kommentares"
1151
+
1152
+ #: options/phrases-layouts/phrases-form.php:92
1153
+ msgid "Notify on new comments"
1154
+ msgstr "Benachrichtigung bei neuen Kommentaren"
1155
+
1156
+ #: options/phrases-layouts/phrases-form.php:102
1157
+ msgid "Notify on all new replies"
1158
+ msgstr "Benachrichtigung bei allen neuen Antworten"
1159
+
1160
+ #: options/phrases-layouts/phrases-form.php:106
1161
+ msgid "new replies to all my comments"
1162
+ msgstr "Benachrichtigung zu meinen Kommentaren"
1163
+
1164
+ #: options/phrases-layouts/phrases-form.php:112
1165
+ msgid "Notify on new replies (checkbox)"
1166
+ msgstr "Benachrichtigung bei neuen Antworten (Auswahl-Box)"
1167
+
1168
+ #: options/phrases-layouts/phrases-form.php:162
1169
+ msgid "Subscribed on this comment replies"
1170
+ msgstr "Abonniere alle Antworten auf diesen Kommentar"
1171
+
1172
+ #: options/phrases-layouts/phrases-form.php:172
1173
+ msgid "Subscribed on all your comments replies"
1174
+ msgstr "Abonniere alle Kommentare zu deinen Antworten"
1175
+
1176
+ #: options/phrases-layouts/phrases-form.php:182
1177
+ msgid "Subscribed on this post"
1178
+ msgstr "Abonniere alle Kommentare zum Beitrag"
1179
+
1180
+ #: options/phrases-layouts/phrases-general.php:7
1181
+ msgid "General Phrases"
1182
+ msgstr "Allgemeine Phrasen"
1183
+
1184
+ #: options/phrases-layouts/phrases-general.php:22
1185
+ msgid "Be the first to comment"
1186
+ msgstr "Hinterlasse einen ersten Kommentar"
1187
+
1188
+ #: options/phrases-layouts/phrases-general.php:42
1189
+ msgid "Comment (Plural Form)"
1190
+ msgstr "Kommentar (Mehrzahl)"
1191
+
1192
+ #: options/phrases-layouts/phrases-general.php:52
1193
+ msgid "On"
1194
+ msgstr "auf"
1195
+
1196
+ #: options/phrases-layouts/phrases-general.php:62
1197
+ msgid "Load More Button"
1198
+ msgstr "Weiterladen-Schaltfläche"
1199
+
1200
+ #: options/phrases-layouts/phrases-general.php:82
1201
+ msgid "Button text if has new comment"
1202
+ msgstr "Schaltfläche bei neuem Kommentar"
1203
+
1204
+ #: options/phrases-layouts/phrases-general.php:92
1205
+ msgid "Button text if has new comments (Plural Form)"
1206
+ msgstr "Schaltfläche bei neuen Kommentaren (Mehrzahl)"
1207
+
1208
+ #: options/phrases-layouts/phrases-general.php:96
1209
+ msgid "New Comments"
1210
+ msgstr "Neue Kommentare"
1211
+
1212
+ #: options/phrases-layouts/phrases-general.php:102
1213
+ msgid "Button text if has new reply"
1214
+ msgstr "Schaltfläche bei neuer Antwort"
1215
+
1216
+ #: options/phrases-layouts/phrases-general.php:112
1217
+ msgid "Button text if has new replies (Plural Form)"
1218
+ msgstr "Schaltfläche bei neuen Antworten (Mehrzahl)"
1219
+
1220
+ #: options/phrases-layouts/phrases-general.php:116
1221
+ msgid "New Replies"
1222
+ msgstr "Neue Antworten"
1223
+
1224
+ #: options/phrases-layouts/phrases-general.php:122
1225
+ msgid "Text on load more button if has new comment(s)"
1226
+ msgstr "Schaltflächen-Text bei neuen Kommentaren"
1227
+
1228
+ #: options/phrases-layouts/phrases-notification.php:7
1229
+ msgid "Notification Phrases"
1230
+ msgstr "Benachrichtigungs-Phrasen"
1231
+
1232
+ #: options/phrases-layouts/phrases-notification.php:12
1233
+ msgid "You\\'re subscribed to"
1234
+ msgstr "Von dir abonniert wurde"
1235
+
1236
+ #: options/phrases-layouts/phrases-notification.php:42
1237
+ msgid "Error message for empty field"
1238
+ msgstr "Du hast leider nicht alle erforderlichen Felder ausgefüllt"
1239
+
1240
+ #: options/phrases-layouts/phrases-notification.php:52
1241
+ msgid "Error message for invalid email field"
1242
+ msgstr "Bitte überprüfe deine angegebene Email-Adresse"
1243
+
1244
+ #: options/phrases-layouts/phrases-notification.php:62
1245
+ msgid "Error message for invalid website url field"
1246
+ msgstr "Bitte überprüfe deine angegebene Internet-Adresse"
1247
+
1248
+ #: options/phrases-layouts/phrases-notification.php:82
1249
+ msgid "Logged in as"
1250
+ msgstr "Du bist angemeldet als"
1251
+
1252
+ #: options/phrases-layouts/phrases-notification.php:102
1253
+ msgid "Logged In"
1254
+ msgstr "angemeldet sein"
1255
+
1256
+ #: options/phrases-layouts/phrases-notification.php:112
1257
+ msgid "To post a comment"
1258
+ msgstr "um ein Kommentar schreiben zu können"
1259
+
1260
+ #: options/phrases-layouts/phrases-notification.php:132
1261
+ msgid "You can vote only 1 time"
1262
+ msgstr "Es ist immer nur eine Bewertung erlaubt"
1263
+
1264
+ #: options/phrases-layouts/phrases-notification.php:152
1265
+ msgid "Login To Vote"
1266
+ msgstr "Zum Anstimmen bitte anmelden"
1267
+
1268
+ #: options/phrases-layouts/phrases-notification.php:162
1269
+ msgid "You Cannot Vote On Your Comment"
1270
+ msgstr "Eigene Kommentare können nicht bewertet werden"
1271
+
1272
+ #: options/phrases-layouts/phrases-notification.php:172
1273
+ msgid "You are not allowed to vote for this comment (Voting from same IP)"
1274
+ msgstr "Es ist nur eine Stimm-Vergabe möglich"
1275
+
1276
+ #: options/phrases-layouts/phrases-notification.php:202
1277
+ msgid "Comment waiting moderation"
1278
+ msgstr "Dein Kommentar wurde zur Freischaltung vorgelegt"
1279
+
1280
+ #: options/phrases-layouts/phrases-notification.php:212
1281
+ msgid "Message if comment content length is too short"
1282
+ msgstr "Dein Kommentar ist zu kurz (minimal %d% Zeichen)"
1283
+
1284
+ #: options/phrases-layouts/phrases-notification.php:222
1285
+ msgid "Message if comment content length is too long"
1286
+ msgstr "Dein Kommentar ist zu lang (maximal sind %s Zeichen erlaubt)"
1287
+
1288
+ #: options/phrases-layouts/phrases-notification.php:232
1289
+ msgid "Message if comment was not updated"
1290
+ msgstr "Tut uns leider aber der Kommentar wurde nicht aktualisiert"
1291
+
1292
+ #: options/phrases-layouts/phrases-notification.php:242
1293
+ msgid "Message if comment no longer possible to edit"
1294
+ msgstr "Tut uns leid aber dieser Kommentar kann nicht mehr verändert werden"
1295
+
1296
+ #: options/phrases-layouts/phrases-notification.php:252
1297
+ msgid "Message if comment text not changed"
1298
+ msgstr "Es wurden keine Veränderungen erkannt"
1299
+
1300
+ #: options/phrases-layouts/phrases-notification.php:256
1301
+ msgid "TYou've not made any changes"
1302
+ msgstr "Es wurden keine Veränderungen erkannt"
1303
+
1304
+ #: templates/comment/comment-form.php:51
1305
+ msgid "Unable to send an email"
1306
+ msgstr "Leider kann aktuell keine eMail versendet werden."
1307
+
1308
+ #: templates/comment/comment-form.php:53
1309
+ msgid "Subscription not successed"
1310
+ msgstr "Kommentar-Benachrichtigung war leider nicht erfolgreich"
1311
+
1312
+ #: utils/class.WpdiscuzHelper.php:374
1313
+ msgid "Error"
1314
+ msgstr "Fehler"
1315
+
1316
+ #: utils/class.WpdiscuzHelper.php:394
1317
+ msgid "Participate in this discussion via email"
1318
+ msgstr "Folge dieser Diskussion per eMail"
1319
+
1320
+ #. Plugin Name of the plugin/theme
1321
+ msgid "wpDiscuz - Supercharged native comments"
1322
+ msgstr "wpDiscuz - Supercharged native comments"
1323
+
1324
+ #. Plugin URI of the plugin/theme
1325
+ msgid "http://www.gvectors.com/wpdiscuz/"
1326
+ msgstr "http://www.gvectors.com/wpdiscuz/"
1327
+
1328
+ #. Description of the plugin/theme
1329
+ msgid ""
1330
+ "Better comment system. Wordpress post comments and discussion plugin. Allows "
1331
+ "your visitors discuss, vote for comments and share."
1332
+ msgstr ""
1333
+ "Better comment system. Wordpress post comments and discussion plugin. Allows "
1334
+ "your visitors discuss, vote for comments and share."
1335
+
1336
+ #. Author of the plugin/theme
1337
+ msgid "gVectors Team (A. Chakhoyan, G. Zakaryan, H. Martirosyan)"
1338
+ msgstr "gVectors Team (A. Chakhoyan, G. Zakaryan, H. Martirosyan)"
1339
+
1340
+ #. Author URI of the plugin/theme
1341
+ msgid "http://www.gvectors.com/"
1342
+ msgstr "http://www.gvectors.com/"
languages/wpdiscuz-pl_PL.mo CHANGED
Binary file
languages/wpdiscuz-pl_PL.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: wpDiscuz - Wordpress Comments\n"
4
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpdiscuz\n"
5
- "POT-Creation-Date: 2015-12-12 11:51+0100\n"
6
- "PO-Revision-Date: 2015-12-12 12:13+0100\n"
7
  "Last-Translator: advancedcoding <advancedcoding@mail.ru>\n"
8
  "Language-Team: Radoslaw Rak <radekdb87@gmail.com>\n"
9
  "Language: pl_PL\n"
@@ -54,311 +54,236 @@ msgstr "Użytkownik"
54
  msgid "Guest"
55
  msgstr "Gość"
56
 
57
- #: options/class.WpdiscuzOptions.php:31 options/class.WpdiscuzOptions.php:281
58
  msgid "Hacker?"
59
  msgstr "Haker?"
60
 
61
- #: options/class.WpdiscuzOptions.php:90
62
- msgid "wpDiscuz General Settings"
63
- msgstr "Ogólne ustawienia wpDiscuz"
64
-
65
- #: options/class.WpdiscuzOptions.php:181
66
- msgid "General settings"
67
- msgstr "Ogólne ustawienia"
68
-
69
- #: options/class.WpdiscuzOptions.php:182
70
- #: options/options-layouts/settings-live-update.php:7
71
- msgid "Live Update"
72
- msgstr "Live Update"
73
-
74
- #: options/class.WpdiscuzOptions.php:183
75
- #: options/options-layouts/settings-show-hide.php:7
76
- msgid "Show/Hide Components"
77
- msgstr "Pokaż/ukryj składniki"
78
-
79
- #: options/class.WpdiscuzOptions.php:184
80
- msgid "Email Subscription"
81
- msgstr "Subskrypcja e-mail"
82
-
83
- #: options/class.WpdiscuzOptions.php:184
84
- msgid "and Postmatic"
85
- msgstr "i Postmatic"
86
-
87
- #: options/class.WpdiscuzOptions.php:185
88
- #: options/options-layouts/settings-style.php:7
89
- msgid "Background and Colors"
90
- msgstr "Tło i kolory"
91
-
92
- #: options/class.WpdiscuzOptions.php:186
93
- #: options/options-layouts/settings-social.php:91
94
- msgid "Social Login"
95
- msgstr "Logowanie społecznościowe"
96
-
97
- #: options/class.WpdiscuzOptions.php:187
98
- #: options/options-layouts/settings-integrations.php:7
99
- msgid "Integrations"
100
- msgstr "Integracje"
101
-
102
- #: options/class.WpdiscuzOptions.php:262
103
- msgid "Reset Options"
104
- msgstr "Przywróć opcje"
105
-
106
- #: options/class.WpdiscuzOptions.php:264
107
- msgid "Refresh comment optimization"
108
- msgstr "Odśwież optymizację komentarza"
109
-
110
- #: options/class.WpdiscuzOptions.php:265 options/class.WpdiscuzOptions.php:458
111
- msgid "Save Changes"
112
- msgstr "Zapisz zmiany"
113
-
114
- #: options/class.WpdiscuzOptions.php:397
115
- msgid "WpDiscuz Front-end Phrases"
116
- msgstr "Czołowe frazy WpDiscuz"
117
-
118
- #: options/class.WpdiscuzOptions.php:407
119
- msgid "General"
120
- msgstr "Ogólne"
121
-
122
- #: options/class.WpdiscuzOptions.php:408
123
- msgid "Form"
124
- msgstr "Od"
125
-
126
- #: options/class.WpdiscuzOptions.php:409
127
- #: options/class.WpdiscuzOptionsSerialized.php:453
128
- #: options/phrases-layouts/phrases-general.php:32
129
- msgid "Comment"
130
- msgstr "Komentarz"
131
-
132
- #: options/class.WpdiscuzOptions.php:410
133
- msgid "Date/Time"
134
- msgstr "Data/Czas"
135
-
136
- #: options/class.WpdiscuzOptions.php:411
137
- #: options/class.WpdiscuzOptionsSerialized.php:458
138
- msgid "Email"
139
- msgstr "E-mail"
140
-
141
- #: options/class.WpdiscuzOptions.php:412
142
- msgid "Notification"
143
- msgstr "Powiadomienie"
144
-
145
- #: options/class.WpdiscuzOptionsSerialized.php:451
146
  #: options/phrases-layouts/phrases-general.php:12
147
  msgid "Leave a Reply"
148
  msgstr "Dodaj komentarz"
149
 
150
- #: options/class.WpdiscuzOptionsSerialized.php:452
151
  msgid "Be the First to Comment!"
152
  msgstr "Bądź pierwszy!"
153
 
154
- #: options/class.WpdiscuzOptionsSerialized.php:454
 
 
 
 
 
155
  msgid "Comments"
156
  msgstr "komentarzy"
157
 
158
- #: options/class.WpdiscuzOptionsSerialized.php:455
159
  msgid "on"
160
  msgstr "do"
161
 
162
- #: options/class.WpdiscuzOptionsSerialized.php:456
163
  msgid "Start the discussion"
164
  msgstr "Rozpocznij dyskusję"
165
 
166
- #: options/class.WpdiscuzOptionsSerialized.php:457
167
  msgid "Join the discussion"
168
  msgstr "Dołącz do dyskusji"
169
 
170
- #: options/class.WpdiscuzOptionsSerialized.php:459
 
 
 
 
171
  msgid "Name"
172
  msgstr "Imię"
173
 
174
- #: options/class.WpdiscuzOptionsSerialized.php:460
175
  msgid "WebSite URL"
176
  msgstr "Witryna internetowa"
177
 
178
- #: options/class.WpdiscuzOptionsSerialized.php:461
179
  msgid "Please insert the code above to comment"
180
  msgstr "Proszę wpisać kod znajdujący się powyżej, aby móc dodać komentarz"
181
 
182
- #: options/class.WpdiscuzOptionsSerialized.php:462
183
  msgid "Post Comment"
184
  msgstr "Opublikuj komentarz"
185
 
186
- #: options/class.WpdiscuzOptionsSerialized.php:463
187
  #: options/phrases-layouts/phrases-form.php:82
188
  #: options/phrases-layouts/phrases-form.php:86
189
  msgid "Notify of"
190
  msgstr "Powiadom o"
191
 
192
- #: options/class.WpdiscuzOptionsSerialized.php:464
193
  #: options/phrases-layouts/phrases-form.php:96
194
  msgid "new follow-up comments"
195
  msgstr "nowych dalszych komentarzach"
196
 
197
- #: options/class.WpdiscuzOptionsSerialized.php:465
198
  msgid "new replies to my comments"
199
  msgstr "nowych odpowiedziach na moje komentarze"
200
 
201
- #: options/class.WpdiscuzOptionsSerialized.php:466
202
  #: options/phrases-layouts/phrases-form.php:116
203
  msgid "Notify of new replies to this comment"
204
  msgstr "Powiadom o nowych odpowiedziach na ten komentarz"
205
 
206
- #: options/class.WpdiscuzOptionsSerialized.php:467
207
  #: options/phrases-layouts/phrases-form.php:122
208
  #: options/phrases-layouts/phrases-form.php:126
209
  msgid "Sort by"
210
  msgstr "Sortuj wg"
211
 
212
- #: options/class.WpdiscuzOptionsSerialized.php:468
213
  #: options/phrases-layouts/phrases-form.php:132
214
  #: options/phrases-layouts/phrases-form.php:136
215
  msgid "newest"
216
  msgstr "najnowszy"
217
 
218
- #: options/class.WpdiscuzOptionsSerialized.php:469
219
  #: options/phrases-layouts/phrases-form.php:142
220
  #: options/phrases-layouts/phrases-form.php:146
221
  msgid "oldest"
222
  msgstr "najstarszy"
223
 
224
- #: options/class.WpdiscuzOptionsSerialized.php:470
225
  #: options/phrases-layouts/phrases-form.php:152
226
  #: options/phrases-layouts/phrases-form.php:156
227
  msgid "most voted"
228
  msgstr "oceniany"
229
 
230
- #: options/class.WpdiscuzOptionsSerialized.php:471
231
  msgid "Load More Comments"
232
  msgstr "Pokaż więcej komentarzy"
233
 
234
- #: options/class.WpdiscuzOptionsSerialized.php:472
235
  #: options/phrases-layouts/phrases-general.php:72
236
  msgid "Load Rest of Comments"
237
  msgstr "Załaduj przywracanie komentarzy"
238
 
239
- #: options/class.WpdiscuzOptionsSerialized.php:473
240
  #: options/phrases-layouts/phrases-comment.php:12
241
  msgid "Reply"
242
  msgstr "Odpowiedz"
243
 
244
- #: options/class.WpdiscuzOptionsSerialized.php:474
245
  #: options/phrases-layouts/phrases-comment.php:22
246
  msgid "Share"
247
  msgstr "Udostępnij"
248
 
249
- #: options/class.WpdiscuzOptionsSerialized.php:475
250
  #: options/phrases-layouts/phrases-comment.php:32
251
  msgid "Edit"
252
  msgstr "Edytuj"
253
 
254
- #: options/class.WpdiscuzOptionsSerialized.php:476
255
  #: options/phrases-layouts/phrases-comment.php:42
256
  msgid "Share On Facebook"
257
  msgstr "Udostępnij na Facebooku"
258
 
259
- #: options/class.WpdiscuzOptionsSerialized.php:477
260
  #: options/phrases-layouts/phrases-comment.php:52
261
  msgid "Share On Twitter"
262
  msgstr "Udostępnij na Twitterze"
263
 
264
- #: options/class.WpdiscuzOptionsSerialized.php:478
265
  #: options/phrases-layouts/phrases-comment.php:62
266
  msgid "Share On Google"
267
  msgstr "Udostępnij na Google"
268
 
269
- #: options/class.WpdiscuzOptionsSerialized.php:479
270
  #: options/phrases-layouts/phrases-comment.php:72
271
  msgid "Share On VKontakte"
272
  msgstr "Udostępnij na VKontakte"
273
 
274
- #: options/class.WpdiscuzOptionsSerialized.php:480
275
  #: options/phrases-layouts/phrases-comment.php:82
276
  msgid "Share On Odnoklassniki"
277
  msgstr "Udostępnij na Odnoklassniki"
278
 
279
- #: options/class.WpdiscuzOptionsSerialized.php:481
280
  #: options/phrases-layouts/phrases-comment.php:92
281
  msgid "Hide Replies"
282
  msgstr "Ukryj odpowiedzi"
283
 
284
- #: options/class.WpdiscuzOptionsSerialized.php:482
285
  #: options/phrases-layouts/phrases-comment.php:102
286
  msgid "Show Replies"
287
  msgstr "Pokaż odpowiedzi"
288
 
289
- #: options/class.WpdiscuzOptionsSerialized.php:483
290
  #: options/phrases-layouts/phrases-general.php:86
291
  msgid "New Comment"
292
  msgstr "Nowy komentarz"
293
 
294
- #: options/class.WpdiscuzOptionsSerialized.php:484
295
  msgid "New comment on the discussion section you've been interested in"
296
  msgstr "Pojawił się nowy komentarz, byłeś nim zainteresowany w"
297
 
298
- #: options/class.WpdiscuzOptionsSerialized.php:485
299
  #: options/phrases-layouts/phrases-email.php:36
300
  #: options/phrases-layouts/phrases-general.php:106
301
  #: utils/class.WpdiscuzEmailHelper.php:155
302
  msgid "New Reply"
303
  msgstr "Nowa odpowiedź"
304
 
305
- #: options/class.WpdiscuzOptionsSerialized.php:486
306
  #: utils/class.WpdiscuzEmailHelper.php:156
307
  msgid "New reply on the discussion section you've been interested in"
308
  msgstr "Pojawiła się nowa odpowiedź, byłeś nią zainteresowany w"
309
 
310
- #: options/class.WpdiscuzOptionsSerialized.php:487
311
  msgid "You're subscribed for new replies on this comment"
312
  msgstr "Subskrybujesz o nowych odpowiedziach na ten komentarz"
313
 
314
- #: options/class.WpdiscuzOptionsSerialized.php:488
315
  msgid "You're subscribed for new replies on all your comments"
316
  msgstr "Subskrybujesz o nowych odpowiedziach na wszystkie swoje komentarze"
317
 
318
- #: options/class.WpdiscuzOptionsSerialized.php:489
319
  msgid "You're subscribed for new follow-up comments on this post"
320
  msgstr "Subskrybujesz o dalszych nowych komentarzach na tym wpisie"
321
 
322
- #: options/class.WpdiscuzOptionsSerialized.php:490
323
  #: options/phrases-layouts/phrases-email.php:52
324
  #: options/phrases-layouts/phrases-email.php:56
325
  msgid "Unsubscribe"
326
  msgstr "Anuluj subskrypcję"
327
 
328
- #: options/class.WpdiscuzOptionsSerialized.php:491
329
  #: options/phrases-layouts/phrases-email.php:66
330
  msgid "Cancel subscription"
331
  msgstr "Anuluj subskrypcję"
332
 
333
- #: options/class.WpdiscuzOptionsSerialized.php:492
334
  #: options/phrases-layouts/phrases-notification.php:32
335
  msgid "You've successfully unsubscribed."
336
  msgstr "Pomyślnie odrzuciłeś(aś) subskrypcję."
337
 
338
- #: options/class.WpdiscuzOptionsSerialized.php:493
339
  #: options/phrases-layouts/phrases-notification.php:22
340
  msgid "You've successfully subscribed."
341
  msgstr "Pomyślnie potwierdziłeś(aś) subskrypcję."
342
 
343
- #: options/class.WpdiscuzOptionsSerialized.php:494
344
  #: options/phrases-layouts/phrases-email.php:72
345
  #: options/phrases-layouts/phrases-email.php:76
346
  msgid "Confirm your subscription"
347
  msgstr "Potwierdź swoją subskrypcję"
348
 
349
- #: options/class.WpdiscuzOptionsSerialized.php:495
350
  #: options/phrases-layouts/phrases-email.php:82
351
  #: options/phrases-layouts/phrases-email.php:86
352
  msgid "You've successfully confirmed your subscription."
353
  msgstr "Pomyślnie potwierdziłeś(aś) swoją subskrypcję."
354
 
355
- #: options/class.WpdiscuzOptionsSerialized.php:496
356
  #: options/phrases-layouts/phrases-email.php:96
357
  #: utils/class.WpdiscuzEmailHelper.php:45
358
  msgid "Subscribe Confirmation"
359
  msgstr "Potwierdzenie subskrypcji"
360
 
361
- #: options/class.WpdiscuzOptionsSerialized.php:497
362
  #: options/phrases-layouts/phrases-email.php:106
363
  #: utils/class.WpdiscuzEmailHelper.php:46
364
  msgid ""
@@ -374,231 +299,302 @@ msgstr ""
374
  "kliknij Potwierdź poniżej. Jeśli uważasz, że to jest błąd, zignoruj ten "
375
  "komunikat i nigdy nie będziemy ponownie przypominać."
376
 
377
- #: options/class.WpdiscuzOptionsSerialized.php:498
378
  msgid "please fill out this field to comment"
379
  msgstr "proszę wypełnić te pole, aby móc dodać komentarz"
380
 
381
- #: options/class.WpdiscuzOptionsSerialized.php:499
382
  msgid "email address is invalid"
383
  msgstr "adres e-mail jest nieprawidłowy"
384
 
385
- #: options/class.WpdiscuzOptionsSerialized.php:500
386
  msgid "url is invalid"
387
  msgstr "url jest nieprawidłowy"
388
 
389
- #: options/class.WpdiscuzOptionsSerialized.php:501
390
  msgid "year"
391
  msgstr "rok"
392
 
393
- #: options/class.WpdiscuzOptionsSerialized.php:502
394
  msgid "years"
395
  msgstr "lat"
396
 
397
- #: options/class.WpdiscuzOptionsSerialized.php:503
398
  msgid "month"
399
  msgstr "miesiąc"
400
 
401
- #: options/class.WpdiscuzOptionsSerialized.php:504
402
  msgid "months"
403
  msgstr "miesięcy"
404
 
405
- #: options/class.WpdiscuzOptionsSerialized.php:505
406
  msgid "day"
407
  msgstr "dzień"
408
 
409
- #: options/class.WpdiscuzOptionsSerialized.php:506
410
  msgid "days"
411
  msgstr "dni"
412
 
413
- #: options/class.WpdiscuzOptionsSerialized.php:507
414
  msgid "hour"
415
  msgstr "godzina"
416
 
417
- #: options/class.WpdiscuzOptionsSerialized.php:508
418
  msgid "hours"
419
  msgstr "godzin"
420
 
421
- #: options/class.WpdiscuzOptionsSerialized.php:509
422
  msgid "minute"
423
  msgstr "minuta"
424
 
425
- #: options/class.WpdiscuzOptionsSerialized.php:510
426
  msgid "minutes"
427
  msgstr "minut"
428
 
429
- #: options/class.WpdiscuzOptionsSerialized.php:511
430
  msgid "second"
431
  msgstr "sekunda"
432
 
433
- #: options/class.WpdiscuzOptionsSerialized.php:512
434
  msgid "seconds"
435
  msgstr "sekund"
436
 
437
- #: options/class.WpdiscuzOptionsSerialized.php:513
438
  msgid "right now"
439
  msgstr "od zaraz"
440
 
441
- #: options/class.WpdiscuzOptionsSerialized.php:514
442
  msgid "ago"
443
  msgstr "temu"
444
 
445
- #: options/class.WpdiscuzOptionsSerialized.php:515
446
  #: options/phrases-layouts/phrases-datetime.php:156
447
  msgid "Today"
448
  msgstr "Dzisiaj"
449
 
450
- #: options/class.WpdiscuzOptionsSerialized.php:516
451
  #: options/phrases-layouts/phrases-notification.php:84
452
  msgid "You must be"
453
  msgstr "Musisz się"
454
 
455
- #: options/class.WpdiscuzOptionsSerialized.php:517
456
  msgid "You are logged in as"
457
  msgstr "Zalogowany jako"
458
 
459
- #: options/class.WpdiscuzOptionsSerialized.php:518
460
  #: options/phrases-layouts/phrases-notification.php:104
461
  msgid "Log out"
462
  msgstr "Wyloguj się"
463
 
464
- #: options/class.WpdiscuzOptionsSerialized.php:519
465
  msgid "logged in"
466
  msgstr "zalogowany jako"
467
 
468
- #: options/class.WpdiscuzOptionsSerialized.php:520
469
  msgid "to post a comment."
470
  msgstr "aby móc dodać komentarz."
471
 
472
- #: options/class.WpdiscuzOptionsSerialized.php:521
473
  #: options/phrases-layouts/phrases-comment.php:138
474
  msgid "Vote Up"
475
  msgstr "Lubię to"
476
 
477
- #: options/class.WpdiscuzOptionsSerialized.php:522
478
  #: options/phrases-layouts/phrases-comment.php:148
479
  msgid "Vote Down"
480
  msgstr "Nie lubię"
481
 
482
- #: options/class.WpdiscuzOptionsSerialized.php:523
483
  #: options/phrases-layouts/phrases-notification.php:134
484
  msgid "Vote Counted"
485
  msgstr "Głos zliczony"
486
 
487
- #: options/class.WpdiscuzOptionsSerialized.php:524
488
  msgid "You've already voted for this comment"
489
  msgstr "Już zagłosowałeś na ten komentarz"
490
 
491
- #: options/class.WpdiscuzOptionsSerialized.php:525
492
  #: options/phrases-layouts/phrases-notification.php:154
493
  msgid "Voting Error"
494
  msgstr "Błąd głosowania"
495
 
496
- #: options/class.WpdiscuzOptionsSerialized.php:526
497
  msgid "You Must Be Logged In To Vote"
498
  msgstr "Musisz się zalogować, aby móc oddać głos"
499
 
500
- #: options/class.WpdiscuzOptionsSerialized.php:527
501
  msgid "You cannot vote for your comment"
502
  msgstr "Nie możesz głosować na swój komentarz"
503
 
504
- #: options/class.WpdiscuzOptionsSerialized.php:528
505
  msgid "You are not allowed to vote for this comment"
506
  msgstr "Nie wolno głosować na ten komentarz"
507
 
508
- #: options/class.WpdiscuzOptionsSerialized.php:529
509
  #: options/phrases-layouts/phrases-notification.php:194
510
  msgid "Invalid Captcha Code"
511
  msgstr "Nieprawidłowy kod Captcha"
512
 
513
- #: options/class.WpdiscuzOptionsSerialized.php:530
514
  #: options/phrases-layouts/phrases-notification.php:204
515
  msgid "Some of field value is invalid"
516
  msgstr "Jedna z wartości pola jest nieprawidłowa"
517
 
518
- #: options/class.WpdiscuzOptionsSerialized.php:531
519
  msgid "new comment"
520
  msgstr "nowy komentarz"
521
 
522
- #: options/class.WpdiscuzOptionsSerialized.php:532
523
  msgid "new comments"
524
  msgstr "nowych komentarzy"
525
 
526
- #: options/class.WpdiscuzOptionsSerialized.php:533
527
  msgid "Comment awaiting moderation"
528
  msgstr "Komentarz oczekuje na moderację"
529
 
530
- #: options/class.WpdiscuzOptionsSerialized.php:534
531
  msgid "new reply on your comment"
532
  msgstr "nowa odpowiedź na Twój komentarz"
533
 
534
- #: options/class.WpdiscuzOptionsSerialized.php:535
535
  msgid "new replies on your comments"
536
  msgstr "nowych odpowiedzi na Twój komentarz"
537
 
538
- #: options/class.WpdiscuzOptionsSerialized.php:536
539
  #: options/phrases-layouts/phrases-general.php:126
540
  msgid "New"
541
  msgstr "Nowy"
542
 
543
- #: options/class.WpdiscuzOptionsSerialized.php:537
544
  #: options/phrases-layouts/phrases-notification.php:248
545
  msgid "Sorry, the comment was not updated"
546
  msgstr "Przepraszamy, komentarz nie został zaktualizowany"
547
 
548
- #: options/class.WpdiscuzOptionsSerialized.php:538
549
  #: options/phrases-layouts/phrases-notification.php:258
550
  msgid "Sorry, this comment no longer possible to edit"
551
  msgstr "Przepraszamy, tego komentarza nie można już edytować"
552
 
553
- #: options/class.WpdiscuzOptionsSerialized.php:539
554
  msgid "You've not made any changes"
555
  msgstr "Jeszcze nie dokonałeś zmian"
556
 
557
- #: options/class.WpdiscuzOptionsSerialized.php:540
558
  #: options/phrases-layouts/phrases-comment.php:162
559
  msgid "Save"
560
  msgstr "Zapisz"
561
 
562
- #: options/class.WpdiscuzOptionsSerialized.php:541
563
  #: options/phrases-layouts/phrases-comment.php:172
564
  msgid "Cancel"
565
  msgstr "Anuluj"
566
 
567
- #: options/class.WpdiscuzOptionsSerialized.php:542
568
  #, php-format
569
  msgid "Comment text is too short (minimum %d% characters)"
570
  msgstr "Tekst komentarza jest zbyt krótki (min %d% znaków)"
571
 
572
- #: options/class.WpdiscuzOptionsSerialized.php:543
573
  #, php-format
574
  msgid "Comment text is too long (maximum %d% characters allowed)"
575
  msgstr "Tekst komentarza jest zbyt długi (maks dopuszczalnych %d% znaków)"
576
 
577
- #: options/class.WpdiscuzOptionsSerialized.php:544
578
  #: options/phrases-layouts/phrases-comment.php:182
579
  msgid "Read more &raquo;"
580
  msgstr "Czytaj więcej &raquo;"
581
 
582
- #: options/class.WpdiscuzOptionsSerialized.php:545
583
  #: options/phrases-layouts/phrases-notification.php:274
584
  #: options/phrases-layouts/phrases-notification.php:278
585
  msgid "Please fill out required fields"
586
  msgstr "Proszę wypełnij wymagane pola"
587
 
588
- #: options/class.WpdiscuzOptionsSerialized.php:546
589
  #: options/phrases-layouts/phrases-form.php:192
590
  #: options/phrases-layouts/phrases-form.php:196
591
  msgid "Connect with"
592
  msgstr "Połącz za pomocą"
593
 
594
- #: options/class.WpdiscuzOptionsSerialized.php:547
595
  msgid "You're subscribed to"
596
  msgstr "Jesteś subskrybentem do"
597
 
598
- #: options/class.WpdiscuzOptionsSerialized.php:548
599
  msgid "Participate in this discussion via email"
600
  msgstr "Weź udział w tej dyskusji przez e-mail"
601
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
602
  #: options/options-layouts/settings-general.php:7
603
  msgid "General Settings"
604
  msgstr "Ogólne ustawienia"
@@ -616,14 +612,20 @@ msgid "Comment author must fill out email"
616
  msgstr "Autor komentarza musi wypełnić swój e-mail"
617
 
618
  #: options/options-layouts/settings-general.php:52
 
 
 
 
 
 
619
  msgid "Comment text min length"
620
  msgstr "Minimalna długoś tekstu komentarza"
621
 
622
- #: options/options-layouts/settings-general.php:62
623
  msgid "Comment text max length"
624
  msgstr "Maksymalna długość tekstu komentarza"
625
 
626
- #: options/options-layouts/settings-general.php:72
627
  msgid ""
628
  "The number of words before breaking comment text and showing \"Read more\" "
629
  "link"
@@ -631,90 +633,90 @@ msgstr ""
631
  "Liczba słów przed przerwaniem tekstu komentarza i pokazaniu łącza \"Czytaj "
632
  "więcej\""
633
 
634
- #: options/options-layouts/settings-general.php:85
635
  msgid "Comment text size in pixels"
636
  msgstr "Rozmiar tekstu komentarza w pikselach"
637
 
638
- #: options/options-layouts/settings-general.php:100
639
  msgid "Allow comment editing for"
640
  msgstr "Pozwól na edycję komentarza wciągu"
641
 
642
- #: options/options-layouts/settings-general.php:105
643
  msgid "Do not allow"
644
  msgstr "Nie pozwalaj"
645
 
646
- #: options/options-layouts/settings-general.php:106
647
- #: options/options-layouts/settings-general.php:107
648
  #: options/options-layouts/settings-live-update.php:52
649
  #: options/options-layouts/settings-live-update.php:53
650
  #: options/options-layouts/settings-live-update.php:54
651
  msgid "Minutes"
652
  msgstr "Minut"
653
 
654
- #: options/options-layouts/settings-general.php:108
655
  #: options/phrases-layouts/phrases-datetime.php:72
656
  msgid "Hour"
657
  msgstr "Godziny"
658
 
659
- #: options/options-layouts/settings-general.php:109
660
- #: options/options-layouts/settings-general.php:110
661
  msgid "Hours"
662
  msgstr "Godzin"
663
 
664
- #: options/options-layouts/settings-general.php:111
665
  msgid "Unlimit"
666
  msgstr "Bez limitu"
667
 
668
- #: options/options-layouts/settings-general.php:117
669
  msgid "Redirect first commenter to"
670
  msgstr "Przekieruj pierwszych komentatorów do"
671
 
672
- #: options/options-layouts/settings-general.php:124
673
  msgid "Do not redirect"
674
  msgstr "Nie przekieruj"
675
 
676
- #: options/options-layouts/settings-general.php:132
677
  msgid "Allow guests to vote on comments"
678
  msgstr "Pozwól gościom, aby mogli głosować na komentarze"
679
 
680
- #: options/options-layouts/settings-general.php:142
681
  msgid "Comments loading/pagination type"
682
  msgstr "Ładowanie/typ podziału na strony komentarzy"
683
 
684
- #: options/options-layouts/settings-general.php:151
685
- #: options/options-layouts/settings-general.php:153
686
  msgid "[Load more] Button"
687
  msgstr "Przycisk [Pokaż więcej]"
688
 
689
- #: options/options-layouts/settings-general.php:155
690
- #: options/options-layouts/settings-general.php:157
691
  msgid "[Load rest of all comments] Button"
692
  msgstr "Przycisk [Przywróć wszystkie komentarze]"
693
 
694
- #: options/options-layouts/settings-general.php:159
695
- #: options/options-layouts/settings-general.php:161
696
  msgid "Lazy load comments on scrolling"
697
  msgstr "Wolne wczytywanie komentarzy przy przewijaniu"
698
 
699
- #: options/options-layouts/settings-general.php:168
700
  msgid "Use WordPress Date/Time format"
701
  msgstr "Użyj formatu daty/czasu WordPress"
702
 
703
- #: options/options-layouts/settings-general.php:169
704
  msgid ""
705
  "wpDiscuz shows Human Readable date format. If you check this option it'll "
706
  "show the date/time format set in WordPress General Settings."
707
  msgstr ""
708
 
709
- #: options/options-layouts/settings-general.php:176
710
  msgid "Current Wordpress date/time format"
711
  msgstr "Bieżący format daty/czasu Wordpress"
712
 
713
- #: options/options-layouts/settings-general.php:182
714
  msgid "Use Plugin .PO/.MO files"
715
  msgstr "Użyj wtyczki plików .PO/.MO"
716
 
717
- #: options/options-layouts/settings-general.php:183
718
  msgid ""
719
  "wpDiscuz phrase system allows you to translate all front-end phrases. "
720
  "However if you have a multi-language website it'll not allow you to add more "
@@ -724,7 +726,7 @@ msgid ""
724
  "translate all phrases based on language files according to current language."
725
  msgstr ""
726
 
727
- #: options/options-layouts/settings-general.php:194
728
  msgid ""
729
  "Help wpDiscuz to grow allowing people to recognize which comment plugin you "
730
  "use"
@@ -732,7 +734,7 @@ msgstr ""
732
  "Pomóż wpDiscuz zwiększyć popularność wśród ludzi, aby mogli rozpoznać, "
733
  "której używasz wtyczki do komentarzy"
734
 
735
- #: options/options-layouts/settings-general.php:196
736
  msgid ""
737
  "Please check this option on to help wpDiscuz get more popularity as your "
738
  "thank to the hard work we do for you totally free. This option adds a very "
@@ -740,7 +742,7 @@ msgid ""
740
  "visitors recognize the name of comment solution you use."
741
  msgstr ""
742
 
743
- #: options/options-layouts/settings-general.php:201
744
  msgid "Thank you!"
745
  msgstr "Dziękujemy!"
746
 
@@ -1330,14 +1332,32 @@ msgstr "Subskrypcja nie pomyślna"
1330
  msgid "wpDiscuz"
1331
  msgstr "wpDiscuz"
1332
 
1333
- #: utils/class.WpdiscuzHelper.php:53
1334
- msgid "Cannot create temp directory"
1335
- msgstr "Nie można utworzyć katalogu temp"
1336
-
1337
- #: utils/class.WpdiscuzHelper.php:54
1338
  msgid "Cannot create image file"
1339
  msgstr "Nie można utworzyć pliku obrazu"
1340
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1341
  #~ msgid "The captcha expired"
1342
  #~ msgstr "CAPTCHA wygasł"
1343
 
2
  msgstr ""
3
  "Project-Id-Version: wpDiscuz - Wordpress Comments\n"
4
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpdiscuz\n"
5
+ "POT-Creation-Date: 2015-12-19 22:28+0100\n"
6
+ "PO-Revision-Date: 2015-12-19 22:34+0100\n"
7
  "Last-Translator: advancedcoding <advancedcoding@mail.ru>\n"
8
  "Language-Team: Radoslaw Rak <radekdb87@gmail.com>\n"
9
  "Language: pl_PL\n"
54
  msgid "Guest"
55
  msgstr "Gość"
56
 
57
+ #: options/class.WpdiscuzOptions.php:28 options/class.WpdiscuzOptions.php:89
58
  msgid "Hacker?"
59
  msgstr "Haker?"
60
 
61
+ #: options/class.WpdiscuzOptionsSerialized.php:460
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
  #: options/phrases-layouts/phrases-general.php:12
63
  msgid "Leave a Reply"
64
  msgstr "Dodaj komentarz"
65
 
66
+ #: options/class.WpdiscuzOptionsSerialized.php:461
67
  msgid "Be the First to Comment!"
68
  msgstr "Bądź pierwszy!"
69
 
70
+ #: options/class.WpdiscuzOptionsSerialized.php:462 options/html-phrases.php:17
71
+ #: options/phrases-layouts/phrases-general.php:32
72
+ msgid "Comment"
73
+ msgstr "Komentarz"
74
+
75
+ #: options/class.WpdiscuzOptionsSerialized.php:463
76
  msgid "Comments"
77
  msgstr "komentarzy"
78
 
79
+ #: options/class.WpdiscuzOptionsSerialized.php:464
80
  msgid "on"
81
  msgstr "do"
82
 
83
+ #: options/class.WpdiscuzOptionsSerialized.php:465
84
  msgid "Start the discussion"
85
  msgstr "Rozpocznij dyskusję"
86
 
87
+ #: options/class.WpdiscuzOptionsSerialized.php:466
88
  msgid "Join the discussion"
89
  msgstr "Dołącz do dyskusji"
90
 
91
+ #: options/class.WpdiscuzOptionsSerialized.php:467 options/html-phrases.php:19
92
+ msgid "Email"
93
+ msgstr "E-mail"
94
+
95
+ #: options/class.WpdiscuzOptionsSerialized.php:468
96
  msgid "Name"
97
  msgstr "Imię"
98
 
99
+ #: options/class.WpdiscuzOptionsSerialized.php:469
100
  msgid "WebSite URL"
101
  msgstr "Witryna internetowa"
102
 
103
+ #: options/class.WpdiscuzOptionsSerialized.php:470
104
  msgid "Please insert the code above to comment"
105
  msgstr "Proszę wpisać kod znajdujący się powyżej, aby móc dodać komentarz"
106
 
107
+ #: options/class.WpdiscuzOptionsSerialized.php:471
108
  msgid "Post Comment"
109
  msgstr "Opublikuj komentarz"
110
 
111
+ #: options/class.WpdiscuzOptionsSerialized.php:472
112
  #: options/phrases-layouts/phrases-form.php:82
113
  #: options/phrases-layouts/phrases-form.php:86
114
  msgid "Notify of"
115
  msgstr "Powiadom o"
116
 
117
+ #: options/class.WpdiscuzOptionsSerialized.php:473
118
  #: options/phrases-layouts/phrases-form.php:96
119
  msgid "new follow-up comments"
120
  msgstr "nowych dalszych komentarzach"
121
 
122
+ #: options/class.WpdiscuzOptionsSerialized.php:474
123
  msgid "new replies to my comments"
124
  msgstr "nowych odpowiedziach na moje komentarze"
125
 
126
+ #: options/class.WpdiscuzOptionsSerialized.php:475
127
  #: options/phrases-layouts/phrases-form.php:116
128
  msgid "Notify of new replies to this comment"
129
  msgstr "Powiadom o nowych odpowiedziach na ten komentarz"
130
 
131
+ #: options/class.WpdiscuzOptionsSerialized.php:476
132
  #: options/phrases-layouts/phrases-form.php:122
133
  #: options/phrases-layouts/phrases-form.php:126
134
  msgid "Sort by"
135
  msgstr "Sortuj wg"
136
 
137
+ #: options/class.WpdiscuzOptionsSerialized.php:477
138
  #: options/phrases-layouts/phrases-form.php:132
139
  #: options/phrases-layouts/phrases-form.php:136
140
  msgid "newest"
141
  msgstr "najnowszy"
142
 
143
+ #: options/class.WpdiscuzOptionsSerialized.php:478
144
  #: options/phrases-layouts/phrases-form.php:142
145
  #: options/phrases-layouts/phrases-form.php:146
146
  msgid "oldest"
147
  msgstr "najstarszy"
148
 
149
+ #: options/class.WpdiscuzOptionsSerialized.php:479
150
  #: options/phrases-layouts/phrases-form.php:152
151
  #: options/phrases-layouts/phrases-form.php:156
152
  msgid "most voted"
153
  msgstr "oceniany"
154
 
155
+ #: options/class.WpdiscuzOptionsSerialized.php:480
156
  msgid "Load More Comments"
157
  msgstr "Pokaż więcej komentarzy"
158
 
159
+ #: options/class.WpdiscuzOptionsSerialized.php:481
160
  #: options/phrases-layouts/phrases-general.php:72
161
  msgid "Load Rest of Comments"
162
  msgstr "Załaduj przywracanie komentarzy"
163
 
164
+ #: options/class.WpdiscuzOptionsSerialized.php:482
165
  #: options/phrases-layouts/phrases-comment.php:12
166
  msgid "Reply"
167
  msgstr "Odpowiedz"
168
 
169
+ #: options/class.WpdiscuzOptionsSerialized.php:483
170
  #: options/phrases-layouts/phrases-comment.php:22
171
  msgid "Share"
172
  msgstr "Udostępnij"
173
 
174
+ #: options/class.WpdiscuzOptionsSerialized.php:484
175
  #: options/phrases-layouts/phrases-comment.php:32
176
  msgid "Edit"
177
  msgstr "Edytuj"
178
 
179
+ #: options/class.WpdiscuzOptionsSerialized.php:485
180
  #: options/phrases-layouts/phrases-comment.php:42
181
  msgid "Share On Facebook"
182
  msgstr "Udostępnij na Facebooku"
183
 
184
+ #: options/class.WpdiscuzOptionsSerialized.php:486
185
  #: options/phrases-layouts/phrases-comment.php:52
186
  msgid "Share On Twitter"
187
  msgstr "Udostępnij na Twitterze"
188
 
189
+ #: options/class.WpdiscuzOptionsSerialized.php:487
190
  #: options/phrases-layouts/phrases-comment.php:62
191
  msgid "Share On Google"
192
  msgstr "Udostępnij na Google"
193
 
194
+ #: options/class.WpdiscuzOptionsSerialized.php:488
195
  #: options/phrases-layouts/phrases-comment.php:72
196
  msgid "Share On VKontakte"
197
  msgstr "Udostępnij na VKontakte"
198
 
199
+ #: options/class.WpdiscuzOptionsSerialized.php:489
200
  #: options/phrases-layouts/phrases-comment.php:82
201
  msgid "Share On Odnoklassniki"
202
  msgstr "Udostępnij na Odnoklassniki"
203
 
204
+ #: options/class.WpdiscuzOptionsSerialized.php:490
205
  #: options/phrases-layouts/phrases-comment.php:92
206
  msgid "Hide Replies"
207
  msgstr "Ukryj odpowiedzi"
208
 
209
+ #: options/class.WpdiscuzOptionsSerialized.php:491
210
  #: options/phrases-layouts/phrases-comment.php:102
211
  msgid "Show Replies"
212
  msgstr "Pokaż odpowiedzi"
213
 
214
+ #: options/class.WpdiscuzOptionsSerialized.php:492
215
  #: options/phrases-layouts/phrases-general.php:86
216
  msgid "New Comment"
217
  msgstr "Nowy komentarz"
218
 
219
+ #: options/class.WpdiscuzOptionsSerialized.php:493
220
  msgid "New comment on the discussion section you've been interested in"
221
  msgstr "Pojawił się nowy komentarz, byłeś nim zainteresowany w"
222
 
223
+ #: options/class.WpdiscuzOptionsSerialized.php:494
224
  #: options/phrases-layouts/phrases-email.php:36
225
  #: options/phrases-layouts/phrases-general.php:106
226
  #: utils/class.WpdiscuzEmailHelper.php:155
227
  msgid "New Reply"
228
  msgstr "Nowa odpowiedź"
229
 
230
+ #: options/class.WpdiscuzOptionsSerialized.php:495
231
  #: utils/class.WpdiscuzEmailHelper.php:156
232
  msgid "New reply on the discussion section you've been interested in"
233
  msgstr "Pojawiła się nowa odpowiedź, byłeś nią zainteresowany w"
234
 
235
+ #: options/class.WpdiscuzOptionsSerialized.php:496
236
  msgid "You're subscribed for new replies on this comment"
237
  msgstr "Subskrybujesz o nowych odpowiedziach na ten komentarz"
238
 
239
+ #: options/class.WpdiscuzOptionsSerialized.php:497
240
  msgid "You're subscribed for new replies on all your comments"
241
  msgstr "Subskrybujesz o nowych odpowiedziach na wszystkie swoje komentarze"
242
 
243
+ #: options/class.WpdiscuzOptionsSerialized.php:498
244
  msgid "You're subscribed for new follow-up comments on this post"
245
  msgstr "Subskrybujesz o dalszych nowych komentarzach na tym wpisie"
246
 
247
+ #: options/class.WpdiscuzOptionsSerialized.php:499
248
  #: options/phrases-layouts/phrases-email.php:52
249
  #: options/phrases-layouts/phrases-email.php:56
250
  msgid "Unsubscribe"
251
  msgstr "Anuluj subskrypcję"
252
 
253
+ #: options/class.WpdiscuzOptionsSerialized.php:500
254
  #: options/phrases-layouts/phrases-email.php:66
255
  msgid "Cancel subscription"
256
  msgstr "Anuluj subskrypcję"
257
 
258
+ #: options/class.WpdiscuzOptionsSerialized.php:501
259
  #: options/phrases-layouts/phrases-notification.php:32
260
  msgid "You've successfully unsubscribed."
261
  msgstr "Pomyślnie odrzuciłeś(aś) subskrypcję."
262
 
263
+ #: options/class.WpdiscuzOptionsSerialized.php:502
264
  #: options/phrases-layouts/phrases-notification.php:22
265
  msgid "You've successfully subscribed."
266
  msgstr "Pomyślnie potwierdziłeś(aś) subskrypcję."
267
 
268
+ #: options/class.WpdiscuzOptionsSerialized.php:503
269
  #: options/phrases-layouts/phrases-email.php:72
270
  #: options/phrases-layouts/phrases-email.php:76
271
  msgid "Confirm your subscription"
272
  msgstr "Potwierdź swoją subskrypcję"
273
 
274
+ #: options/class.WpdiscuzOptionsSerialized.php:504
275
  #: options/phrases-layouts/phrases-email.php:82
276
  #: options/phrases-layouts/phrases-email.php:86
277
  msgid "You've successfully confirmed your subscription."
278
  msgstr "Pomyślnie potwierdziłeś(aś) swoją subskrypcję."
279
 
280
+ #: options/class.WpdiscuzOptionsSerialized.php:505
281
  #: options/phrases-layouts/phrases-email.php:96
282
  #: utils/class.WpdiscuzEmailHelper.php:45
283
  msgid "Subscribe Confirmation"
284
  msgstr "Potwierdzenie subskrypcji"
285
 
286
+ #: options/class.WpdiscuzOptionsSerialized.php:506
287
  #: options/phrases-layouts/phrases-email.php:106
288
  #: utils/class.WpdiscuzEmailHelper.php:46
289
  msgid ""
299
  "kliknij Potwierdź poniżej. Jeśli uważasz, że to jest błąd, zignoruj ten "
300
  "komunikat i nigdy nie będziemy ponownie przypominać."
301
 
302
+ #: options/class.WpdiscuzOptionsSerialized.php:507
303
  msgid "please fill out this field to comment"
304
  msgstr "proszę wypełnić te pole, aby móc dodać komentarz"
305
 
306
+ #: options/class.WpdiscuzOptionsSerialized.php:508
307
  msgid "email address is invalid"
308
  msgstr "adres e-mail jest nieprawidłowy"
309
 
310
+ #: options/class.WpdiscuzOptionsSerialized.php:509
311
  msgid "url is invalid"
312
  msgstr "url jest nieprawidłowy"
313
 
314
+ #: options/class.WpdiscuzOptionsSerialized.php:510
315
  msgid "year"
316
  msgstr "rok"
317
 
318
+ #: options/class.WpdiscuzOptionsSerialized.php:511
319
  msgid "years"
320
  msgstr "lat"
321
 
322
+ #: options/class.WpdiscuzOptionsSerialized.php:512
323
  msgid "month"
324
  msgstr "miesiąc"
325
 
326
+ #: options/class.WpdiscuzOptionsSerialized.php:513
327
  msgid "months"
328
  msgstr "miesięcy"
329
 
330
+ #: options/class.WpdiscuzOptionsSerialized.php:514
331
  msgid "day"
332
  msgstr "dzień"
333
 
334
+ #: options/class.WpdiscuzOptionsSerialized.php:515
335
  msgid "days"
336
  msgstr "dni"
337
 
338
+ #: options/class.WpdiscuzOptionsSerialized.php:516
339
  msgid "hour"
340
  msgstr "godzina"
341
 
342
+ #: options/class.WpdiscuzOptionsSerialized.php:517
343
  msgid "hours"
344
  msgstr "godzin"
345
 
346
+ #: options/class.WpdiscuzOptionsSerialized.php:518
347
  msgid "minute"
348
  msgstr "minuta"
349
 
350
+ #: options/class.WpdiscuzOptionsSerialized.php:519
351
  msgid "minutes"
352
  msgstr "minut"
353
 
354
+ #: options/class.WpdiscuzOptionsSerialized.php:520
355
  msgid "second"
356
  msgstr "sekunda"
357
 
358
+ #: options/class.WpdiscuzOptionsSerialized.php:521
359
  msgid "seconds"
360
  msgstr "sekund"
361
 
362
+ #: options/class.WpdiscuzOptionsSerialized.php:522
363
  msgid "right now"
364
  msgstr "od zaraz"
365
 
366
+ #: options/class.WpdiscuzOptionsSerialized.php:523
367
  msgid "ago"
368
  msgstr "temu"
369
 
370
+ #: options/class.WpdiscuzOptionsSerialized.php:524
371
  #: options/phrases-layouts/phrases-datetime.php:156
372
  msgid "Today"
373
  msgstr "Dzisiaj"
374
 
375
+ #: options/class.WpdiscuzOptionsSerialized.php:525
376
  #: options/phrases-layouts/phrases-notification.php:84
377
  msgid "You must be"
378
  msgstr "Musisz się"
379
 
380
+ #: options/class.WpdiscuzOptionsSerialized.php:526
381
  msgid "You are logged in as"
382
  msgstr "Zalogowany jako"
383
 
384
+ #: options/class.WpdiscuzOptionsSerialized.php:527
385
  #: options/phrases-layouts/phrases-notification.php:104
386
  msgid "Log out"
387
  msgstr "Wyloguj się"
388
 
389
+ #: options/class.WpdiscuzOptionsSerialized.php:528
390
  msgid "logged in"
391
  msgstr "zalogowany jako"
392
 
393
+ #: options/class.WpdiscuzOptionsSerialized.php:529
394
  msgid "to post a comment."
395
  msgstr "aby móc dodać komentarz."
396
 
397
+ #: options/class.WpdiscuzOptionsSerialized.php:530
398
  #: options/phrases-layouts/phrases-comment.php:138
399
  msgid "Vote Up"
400
  msgstr "Lubię to"
401
 
402
+ #: options/class.WpdiscuzOptionsSerialized.php:531
403
  #: options/phrases-layouts/phrases-comment.php:148
404
  msgid "Vote Down"
405
  msgstr "Nie lubię"
406
 
407
+ #: options/class.WpdiscuzOptionsSerialized.php:532
408
  #: options/phrases-layouts/phrases-notification.php:134
409
  msgid "Vote Counted"
410
  msgstr "Głos zliczony"
411
 
412
+ #: options/class.WpdiscuzOptionsSerialized.php:533
413
  msgid "You've already voted for this comment"
414
  msgstr "Już zagłosowałeś na ten komentarz"
415
 
416
+ #: options/class.WpdiscuzOptionsSerialized.php:534
417
  #: options/phrases-layouts/phrases-notification.php:154
418
  msgid "Voting Error"
419
  msgstr "Błąd głosowania"
420
 
421
+ #: options/class.WpdiscuzOptionsSerialized.php:535
422
  msgid "You Must Be Logged In To Vote"
423
  msgstr "Musisz się zalogować, aby móc oddać głos"
424
 
425
+ #: options/class.WpdiscuzOptionsSerialized.php:536
426
  msgid "You cannot vote for your comment"
427
  msgstr "Nie możesz głosować na swój komentarz"
428
 
429
+ #: options/class.WpdiscuzOptionsSerialized.php:537
430
  msgid "You are not allowed to vote for this comment"
431
  msgstr "Nie wolno głosować na ten komentarz"
432
 
433
+ #: options/class.WpdiscuzOptionsSerialized.php:538
434
  #: options/phrases-layouts/phrases-notification.php:194
435
  msgid "Invalid Captcha Code"
436
  msgstr "Nieprawidłowy kod Captcha"
437
 
438
+ #: options/class.WpdiscuzOptionsSerialized.php:539
439
  #: options/phrases-layouts/phrases-notification.php:204
440
  msgid "Some of field value is invalid"
441
  msgstr "Jedna z wartości pola jest nieprawidłowa"
442
 
443
+ #: options/class.WpdiscuzOptionsSerialized.php:540
444
  msgid "new comment"
445
  msgstr "nowy komentarz"
446
 
447
+ #: options/class.WpdiscuzOptionsSerialized.php:541
448
  msgid "new comments"
449
  msgstr "nowych komentarzy"
450
 
451
+ #: options/class.WpdiscuzOptionsSerialized.php:542
452
  msgid "Comment awaiting moderation"
453
  msgstr "Komentarz oczekuje na moderację"
454
 
455
+ #: options/class.WpdiscuzOptionsSerialized.php:543
456
  msgid "new reply on your comment"
457
  msgstr "nowa odpowiedź na Twój komentarz"
458
 
459
+ #: options/class.WpdiscuzOptionsSerialized.php:544
460
  msgid "new replies on your comments"
461
  msgstr "nowych odpowiedzi na Twój komentarz"
462
 
463
+ #: options/class.WpdiscuzOptionsSerialized.php:545
464
  #: options/phrases-layouts/phrases-general.php:126
465
  msgid "New"
466
  msgstr "Nowy"
467
 
468
+ #: options/class.WpdiscuzOptionsSerialized.php:546
469
  #: options/phrases-layouts/phrases-notification.php:248
470
  msgid "Sorry, the comment was not updated"
471
  msgstr "Przepraszamy, komentarz nie został zaktualizowany"
472
 
473
+ #: options/class.WpdiscuzOptionsSerialized.php:547
474
  #: options/phrases-layouts/phrases-notification.php:258
475
  msgid "Sorry, this comment no longer possible to edit"
476
  msgstr "Przepraszamy, tego komentarza nie można już edytować"
477
 
478
+ #: options/class.WpdiscuzOptionsSerialized.php:548
479
  msgid "You've not made any changes"
480
  msgstr "Jeszcze nie dokonałeś zmian"
481
 
482
+ #: options/class.WpdiscuzOptionsSerialized.php:549
483
  #: options/phrases-layouts/phrases-comment.php:162
484
  msgid "Save"
485
  msgstr "Zapisz"
486
 
487
+ #: options/class.WpdiscuzOptionsSerialized.php:550
488
  #: options/phrases-layouts/phrases-comment.php:172
489
  msgid "Cancel"
490
  msgstr "Anuluj"
491
 
492
+ #: options/class.WpdiscuzOptionsSerialized.php:551
493
  #, php-format
494
  msgid "Comment text is too short (minimum %d% characters)"
495
  msgstr "Tekst komentarza jest zbyt krótki (min %d% znaków)"
496
 
497
+ #: options/class.WpdiscuzOptionsSerialized.php:552
498
  #, php-format
499
  msgid "Comment text is too long (maximum %d% characters allowed)"
500
  msgstr "Tekst komentarza jest zbyt długi (maks dopuszczalnych %d% znaków)"
501
 
502
+ #: options/class.WpdiscuzOptionsSerialized.php:553
503
  #: options/phrases-layouts/phrases-comment.php:182
504
  msgid "Read more &raquo;"
505
  msgstr "Czytaj więcej &raquo;"
506
 
507
+ #: options/class.WpdiscuzOptionsSerialized.php:554
508
  #: options/phrases-layouts/phrases-notification.php:274
509
  #: options/phrases-layouts/phrases-notification.php:278
510
  msgid "Please fill out required fields"
511
  msgstr "Proszę wypełnij wymagane pola"
512
 
513
+ #: options/class.WpdiscuzOptionsSerialized.php:555
514
  #: options/phrases-layouts/phrases-form.php:192
515
  #: options/phrases-layouts/phrases-form.php:196
516
  msgid "Connect with"
517
  msgstr "Połącz za pomocą"
518
 
519
+ #: options/class.WpdiscuzOptionsSerialized.php:556
520
  msgid "You're subscribed to"
521
  msgstr "Jesteś subskrybentem do"
522
 
523
+ #: options/class.WpdiscuzOptionsSerialized.php:557
524
  msgid "Participate in this discussion via email"
525
  msgstr "Weź udział w tej dyskusji przez e-mail"
526
 
527
+ #: options/html-options.php:5
528
+ msgid "wpDiscuz General Settings"
529
+ msgstr "Ogólne ustawienia wpDiscuz"
530
+
531
+ #: options/html-options.php:56
532
+ msgid "General settings"
533
+ msgstr "Ogólne ustawienia"
534
+
535
+ #: options/html-options.php:57
536
+ #: options/options-layouts/settings-live-update.php:7
537
+ msgid "Live Update"
538
+ msgstr "Live Update"
539
+
540
+ #: options/html-options.php:58
541
+ #: options/options-layouts/settings-show-hide.php:7
542
+ msgid "Show/Hide Components"
543
+ msgstr "Pokaż/ukryj składniki"
544
+
545
+ #: options/html-options.php:59
546
+ msgid "Email Subscription"
547
+ msgstr "Subskrypcja e-mail"
548
+
549
+ #: options/html-options.php:59
550
+ msgid "and Postmatic"
551
+ msgstr "i Postmatic"
552
+
553
+ #: options/html-options.php:60 options/options-layouts/settings-style.php:7
554
+ msgid "Background and Colors"
555
+ msgstr "Tło i kolory"
556
+
557
+ #: options/html-options.php:61 options/options-layouts/settings-social.php:91
558
+ msgid "Social Login"
559
+ msgstr "Logowanie społecznościowe"
560
+
561
+ #: options/html-options.php:62
562
+ #: options/options-layouts/settings-integrations.php:7
563
+ msgid "Integrations"
564
+ msgstr "Integracje"
565
+
566
+ #: options/html-options.php:137
567
+ msgid "Reset Options"
568
+ msgstr "Przywróć opcje"
569
+
570
+ #: options/html-options.php:139
571
+ msgid "Refresh comment optimization"
572
+ msgstr "Odśwież optymizację komentarza"
573
+
574
+ #: options/html-options.php:140 options/html-phrases.php:66
575
+ msgid "Save Changes"
576
+ msgstr "Zapisz zmiany"
577
+
578
+ #: options/html-phrases.php:5
579
+ msgid "wpDiscuz Front-end Phrases"
580
+ msgstr "Czołowe frazy WpDiscuz"
581
+
582
+ #: options/html-phrases.php:15
583
+ msgid "General"
584
+ msgstr "Ogólne"
585
+
586
+ #: options/html-phrases.php:16
587
+ msgid "Form"
588
+ msgstr "Od"
589
+
590
+ #: options/html-phrases.php:18
591
+ msgid "Date/Time"
592
+ msgstr "Data/Czas"
593
+
594
+ #: options/html-phrases.php:20
595
+ msgid "Notification"
596
+ msgstr "Powiadomienie"
597
+
598
  #: options/options-layouts/settings-general.php:7
599
  msgid "General Settings"
600
  msgstr "Ogólne ustawienia"
612
  msgstr "Autor komentarza musi wypełnić swój e-mail"
613
 
614
  #: options/options-layouts/settings-general.php:52
615
+ msgid "Keep guest commenter credentials in browser cookies for x days"
616
+ msgstr ""
617
+ "Zachowaj poświedczenia komentującego gościa w ciasteczkach przeglądarki "
618
+ "wciągu X dni"
619
+
620
+ #: options/options-layouts/settings-general.php:66
621
  msgid "Comment text min length"
622
  msgstr "Minimalna długoś tekstu komentarza"
623
 
624
+ #: options/options-layouts/settings-general.php:76
625
  msgid "Comment text max length"
626
  msgstr "Maksymalna długość tekstu komentarza"
627
 
628
+ #: options/options-layouts/settings-general.php:86
629
  msgid ""
630
  "The number of words before breaking comment text and showing \"Read more\" "
631
  "link"
633
  "Liczba słów przed przerwaniem tekstu komentarza i pokazaniu łącza \"Czytaj "
634
  "więcej\""
635
 
636
+ #: options/options-layouts/settings-general.php:99
637
  msgid "Comment text size in pixels"
638
  msgstr "Rozmiar tekstu komentarza w pikselach"
639
 
640
+ #: options/options-layouts/settings-general.php:114
641
  msgid "Allow comment editing for"
642
  msgstr "Pozwól na edycję komentarza wciągu"
643
 
644
+ #: options/options-layouts/settings-general.php:119
645
  msgid "Do not allow"
646
  msgstr "Nie pozwalaj"
647
 
648
+ #: options/options-layouts/settings-general.php:120
649
+ #: options/options-layouts/settings-general.php:121
650
  #: options/options-layouts/settings-live-update.php:52
651
  #: options/options-layouts/settings-live-update.php:53
652
  #: options/options-layouts/settings-live-update.php:54
653
  msgid "Minutes"
654
  msgstr "Minut"
655
 
656
+ #: options/options-layouts/settings-general.php:122
657
  #: options/phrases-layouts/phrases-datetime.php:72
658
  msgid "Hour"
659
  msgstr "Godziny"
660
 
661
+ #: options/options-layouts/settings-general.php:123
662
+ #: options/options-layouts/settings-general.php:124
663
  msgid "Hours"
664
  msgstr "Godzin"
665
 
666
+ #: options/options-layouts/settings-general.php:125
667
  msgid "Unlimit"
668
  msgstr "Bez limitu"
669
 
670
+ #: options/options-layouts/settings-general.php:131
671
  msgid "Redirect first commenter to"
672
  msgstr "Przekieruj pierwszych komentatorów do"
673
 
674
+ #: options/options-layouts/settings-general.php:138
675
  msgid "Do not redirect"
676
  msgstr "Nie przekieruj"
677
 
678
+ #: options/options-layouts/settings-general.php:146
679
  msgid "Allow guests to vote on comments"
680
  msgstr "Pozwól gościom, aby mogli głosować na komentarze"
681
 
682
+ #: options/options-layouts/settings-general.php:156
683
  msgid "Comments loading/pagination type"
684
  msgstr "Ładowanie/typ podziału na strony komentarzy"
685
 
686
+ #: options/options-layouts/settings-general.php:165
687
+ #: options/options-layouts/settings-general.php:167
688
  msgid "[Load more] Button"
689
  msgstr "Przycisk [Pokaż więcej]"
690
 
691
+ #: options/options-layouts/settings-general.php:169
692
+ #: options/options-layouts/settings-general.php:171
693
  msgid "[Load rest of all comments] Button"
694
  msgstr "Przycisk [Przywróć wszystkie komentarze]"
695
 
696
+ #: options/options-layouts/settings-general.php:173
697
+ #: options/options-layouts/settings-general.php:175
698
  msgid "Lazy load comments on scrolling"
699
  msgstr "Wolne wczytywanie komentarzy przy przewijaniu"
700
 
701
+ #: options/options-layouts/settings-general.php:182
702
  msgid "Use WordPress Date/Time format"
703
  msgstr "Użyj formatu daty/czasu WordPress"
704
 
705
+ #: options/options-layouts/settings-general.php:183
706
  msgid ""
707
  "wpDiscuz shows Human Readable date format. If you check this option it'll "
708
  "show the date/time format set in WordPress General Settings."
709
  msgstr ""
710
 
711
+ #: options/options-layouts/settings-general.php:190
712
  msgid "Current Wordpress date/time format"
713
  msgstr "Bieżący format daty/czasu Wordpress"
714
 
715
+ #: options/options-layouts/settings-general.php:196
716
  msgid "Use Plugin .PO/.MO files"
717
  msgstr "Użyj wtyczki plików .PO/.MO"
718
 
719
+ #: options/options-layouts/settings-general.php:197
720
  msgid ""
721
  "wpDiscuz phrase system allows you to translate all front-end phrases. "
722
  "However if you have a multi-language website it'll not allow you to add more "
726
  "translate all phrases based on language files according to current language."
727
  msgstr ""
728
 
729
+ #: options/options-layouts/settings-general.php:208
730
  msgid ""
731
  "Help wpDiscuz to grow allowing people to recognize which comment plugin you "
732
  "use"
734
  "Pomóż wpDiscuz zwiększyć popularność wśród ludzi, aby mogli rozpoznać, "
735
  "której używasz wtyczki do komentarzy"
736
 
737
+ #: options/options-layouts/settings-general.php:210
738
  msgid ""
739
  "Please check this option on to help wpDiscuz get more popularity as your "
740
  "thank to the hard work we do for you totally free. This option adds a very "
742
  "visitors recognize the name of comment solution you use."
743
  msgstr ""
744
 
745
+ #: options/options-layouts/settings-general.php:215
746
  msgid "Thank you!"
747
  msgstr "Dziękujemy!"
748
 
1332
  msgid "wpDiscuz"
1333
  msgstr "wpDiscuz"
1334
 
1335
+ #: utils/class.WpdiscuzHelper.php:56
 
 
 
 
1336
  msgid "Cannot create image file"
1337
  msgstr "Nie można utworzyć pliku obrazu"
1338
 
1339
+ #: utils/class.WpdiscuzHelper.php:57
1340
+ msgid "Permission denied for file creation"
1341
+ msgstr "Brak dostępu do tworzenia pliku"
1342
+
1343
+ #: utils/class.WpdiscuzHelper.php:58
1344
+ msgid "The directory is not writable"
1345
+ msgstr "Katalog nie jest zapisywalny"
1346
+
1347
+ #: utils/class.WpdiscuzHelper.php:59
1348
+ msgid "PHP GD2 library is disabled"
1349
+ msgstr "Biblioteka PHP GD2 jest wyłączona"
1350
+
1351
+ #: utils/class.WpdiscuzHelper.php:60
1352
+ msgid "PNG image creation disabled"
1353
+ msgstr "Tworzenie obrazu PNG wyłączone"
1354
+
1355
+ #~ msgid "WpDiscuz Front-end Phrases"
1356
+ #~ msgstr "Czołowe frazy WpDiscuz"
1357
+
1358
+ #~ msgid "Cannot create temp directory"
1359
+ #~ msgstr "Nie można utworzyć katalogu temp"
1360
+
1361
  #~ msgid "The captcha expired"
1362
  #~ msgstr "CAPTCHA wygasł"
1363
 
options/class.WpdiscuzOptions.php CHANGED
@@ -7,11 +7,13 @@ class WpdiscuzOptions {
7
  private $postTypes;
8
  private $blogRoles;
9
  private $shareButtons;
 
10
 
11
  public function __construct($optionsSerialized, $dbManager) {
12
  $this->dbManager = $dbManager;
13
  $this->optionsSerialized = $optionsSerialized;
14
  $this->initShareButtons();
 
15
  }
16
 
17
  public function mainOptionsForm() {
@@ -48,7 +50,7 @@ class WpdiscuzOptions {
48
  $this->optionsSerialized->headerTextShowHide = isset($_POST['wc_header_text_show_hide']) ? $_POST['wc_header_text_show_hide'] : 0;
49
  $this->optionsSerialized->isNameFieldRequired = isset($_POST['wc_is_name_field_required']) ? $_POST['wc_is_name_field_required'] : 0;
50
  $this->optionsSerialized->isEmailFieldRequired = isset($_POST['wc_is_email_field_required']) ? $_POST['wc_is_email_field_required'] : 0;
51
- $this->optionsSerialized->storeCommenterData = isset($_POST['storeCommenterData']) && (intval($_POST['storeCommenterData']) || $_POST['storeCommenterData'] == 0)? $_POST['storeCommenterData'] : -1;
52
  $this->optionsSerialized->showHideLoggedInUsername = isset($_POST['wc_show_hide_loggedin_username']) ? $_POST['wc_show_hide_loggedin_username'] : 0;
53
  $this->optionsSerialized->replyButtonGuestsShowHide = isset($_POST['wc_reply_button_guests_show_hide']) ? $_POST['wc_reply_button_guests_show_hide'] : 0;
54
  $this->optionsSerialized->replyButtonMembersShowHide = isset($_POST['wc_reply_button_members_show_hide']) ? $_POST['wc_reply_button_members_show_hide'] : 0;
@@ -77,6 +79,11 @@ class WpdiscuzOptions {
77
  $this->optionsSerialized->commentTextMaxLength = (isset($_POST['wc_comment_text_max_length']) && intval($_POST['wc_comment_text_max_length']) > 0) ? intval($_POST['wc_comment_text_max_length']) : '';
78
  $this->optionsSerialized->commentReadMoreLimit = (isset($_POST['commentWordsLimit']) && intval($_POST['commentWordsLimit']) >= 0) ? intval($_POST['commentWordsLimit']) : 100;
79
  $this->optionsSerialized->showHideCommentLink = isset($_POST['showHideCommentLink']) ? $_POST['showHideCommentLink'] : 0;
 
 
 
 
 
80
  $this->optionsSerialized->updateOptions();
81
  }
82
  include_once 'html-options.php';
@@ -184,6 +191,8 @@ class WpdiscuzOptions {
184
  $this->optionsSerialized->phrases['wc_comment_edit_cancel_button'] = $_POST['wc_comment_edit_cancel_button'];
185
  $this->optionsSerialized->phrases['wc_msg_comment_text_min_length'] = $_POST['wc_msg_comment_text_min_length'];
186
  $this->optionsSerialized->phrases['wc_msg_comment_text_max_length'] = $_POST['wc_msg_comment_text_max_length'];
 
 
187
  $this->optionsSerialized->phrases['wc_read_more'] = $_POST['wc_read_more'];
188
  $this->optionsSerialized->phrases['wc_msg_required_fields'] = $_POST['wc_msg_required_fields'];
189
  $this->optionsSerialized->phrases['wc_connect_with'] = $_POST['wc_connect_with'];
@@ -201,6 +210,10 @@ class WpdiscuzOptions {
201
  include_once 'html-phrases.php';
202
  }
203
 
 
 
 
 
204
  private function initShareButtons() {
205
  $this->shareButtons[] = 'fb';
206
  $this->shareButtons[] = 'twitter';
@@ -209,4 +222,15 @@ class WpdiscuzOptions {
209
  $this->shareButtons[] = 'ok';
210
  }
211
 
 
 
 
 
 
 
 
 
 
 
 
212
  }
7
  private $postTypes;
8
  private $blogRoles;
9
  private $shareButtons;
10
+ private $addons;
11
 
12
  public function __construct($optionsSerialized, $dbManager) {
13
  $this->dbManager = $dbManager;
14
  $this->optionsSerialized = $optionsSerialized;
15
  $this->initShareButtons();
16
+ $this->initAddons();
17
  }
18
 
19
  public function mainOptionsForm() {
50
  $this->optionsSerialized->headerTextShowHide = isset($_POST['wc_header_text_show_hide']) ? $_POST['wc_header_text_show_hide'] : 0;
51
  $this->optionsSerialized->isNameFieldRequired = isset($_POST['wc_is_name_field_required']) ? $_POST['wc_is_name_field_required'] : 0;
52
  $this->optionsSerialized->isEmailFieldRequired = isset($_POST['wc_is_email_field_required']) ? $_POST['wc_is_email_field_required'] : 0;
53
+ $this->optionsSerialized->storeCommenterData = isset($_POST['storeCommenterData']) && (intval($_POST['storeCommenterData']) || $_POST['storeCommenterData'] == 0) ? $_POST['storeCommenterData'] : -1;
54
  $this->optionsSerialized->showHideLoggedInUsername = isset($_POST['wc_show_hide_loggedin_username']) ? $_POST['wc_show_hide_loggedin_username'] : 0;
55
  $this->optionsSerialized->replyButtonGuestsShowHide = isset($_POST['wc_reply_button_guests_show_hide']) ? $_POST['wc_reply_button_guests_show_hide'] : 0;
56
  $this->optionsSerialized->replyButtonMembersShowHide = isset($_POST['wc_reply_button_members_show_hide']) ? $_POST['wc_reply_button_members_show_hide'] : 0;
79
  $this->optionsSerialized->commentTextMaxLength = (isset($_POST['wc_comment_text_max_length']) && intval($_POST['wc_comment_text_max_length']) > 0) ? intval($_POST['wc_comment_text_max_length']) : '';
80
  $this->optionsSerialized->commentReadMoreLimit = (isset($_POST['commentWordsLimit']) && intval($_POST['commentWordsLimit']) >= 0) ? intval($_POST['commentWordsLimit']) : 100;
81
  $this->optionsSerialized->showHideCommentLink = isset($_POST['showHideCommentLink']) ? $_POST['showHideCommentLink'] : 0;
82
+ $this->optionsSerialized->isCaptchaInSession = isset($_POST['isCaptchaInSession']) ? $_POST['isCaptchaInSession'] : 0;
83
+ $this->optionsSerialized->isUserByEmail = isset($_POST['isUserByEmail']) ? $_POST['isUserByEmail'] : 0;
84
+ $this->optionsSerialized->commenterNameMinLength = isset($_POST['commenterNameMinLength']) && intval($_POST['commenterNameMinLength']) >= 3 ? $_POST['commenterNameMinLength'] : 3;
85
+ $this->optionsSerialized->commenterNameMaxLength = isset($_POST['commenterNameMaxLength']) && intval($_POST['commenterNameMaxLength']) >= 3 && intval($_POST['commenterNameMaxLength']) <= 50 ? $_POST['commenterNameMaxLength'] : 50;
86
+ do_action('wpdiscuz_save_options', $_POST);
87
  $this->optionsSerialized->updateOptions();
88
  }
89
  include_once 'html-options.php';
191
  $this->optionsSerialized->phrases['wc_comment_edit_cancel_button'] = $_POST['wc_comment_edit_cancel_button'];
192
  $this->optionsSerialized->phrases['wc_msg_comment_text_min_length'] = $_POST['wc_msg_comment_text_min_length'];
193
  $this->optionsSerialized->phrases['wc_msg_comment_text_max_length'] = $_POST['wc_msg_comment_text_max_length'];
194
+ $this->optionsSerialized->phrases['wc_msg_input_min_length'] = $_POST['wc_msg_input_min_length'];
195
+ $this->optionsSerialized->phrases['wc_msg_input_max_length'] = $_POST['wc_msg_input_max_length'];
196
  $this->optionsSerialized->phrases['wc_read_more'] = $_POST['wc_read_more'];
197
  $this->optionsSerialized->phrases['wc_msg_required_fields'] = $_POST['wc_msg_required_fields'];
198
  $this->optionsSerialized->phrases['wc_connect_with'] = $_POST['wc_connect_with'];
210
  include_once 'html-phrases.php';
211
  }
212
 
213
+ public function addons() {
214
+ include_once 'html-addons.php';
215
+ }
216
+
217
  private function initShareButtons() {
218
  $this->shareButtons[] = 'fb';
219
  $this->shareButtons[] = 'twitter';
222
  $this->shareButtons[] = 'ok';
223
  }
224
 
225
+ private function initAddons() {
226
+ $wpdiscuzVersion = get_option(WpdiscuzCore::OPTION_SLUG_VERSION);
227
+ $this->addons = array(
228
+ 'recaptcha' => array('version' => '1.0.0', 'requires' => $wpdiscuzVersion, 'class' => 'WpdiscuzRecaptcha', 'title' => 'Google ReCaptcha', 'thumb' => plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'assets' . WPDISCUZ_DS . 'addons' . WPDISCUZ_DS . 'recaptcha' . WPDISCUZ_DS . 'header.png'), 'desc' => __('Adds No CAPTCHA on all comment forms. Stops spam and bot comments with Google reCAPTCHA', 'wpdiscuz'), 'url' => 'http://gvectors.com/product/wpdiscuz-recaptcha/'),
229
+ 'mycred' => array('version' => '1.0.0', 'requires' => $wpdiscuzVersion, 'class' => 'myCRED_Hook_wpDiscuz_Vote', 'title' => 'myCRED Integration', 'thumb' => plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'assets' . WPDISCUZ_DS . 'addons' . WPDISCUZ_DS . 'mycred' . WPDISCUZ_DS . 'header.png'), 'desc' => __('Integrates myCRED Badges and Ranks. Converts wpDiscuz comment votes/likes to myCRED points. ', 'wpdiscuz'), 'url' => 'http://gvectors.com/product/wpdiscuz-mycred/'),
230
+ 'censore' => array('version' => '1.0.0', 'requires' => $wpdiscuzVersion, 'class' => 'CommentCensore', 'title' => 'Comment Censure', 'thumb' => plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'assets' . WPDISCUZ_DS . 'addons' . WPDISCUZ_DS . 'censore' . WPDISCUZ_DS . 'header.png'), 'desc' => __('Allows censoring comment words. Filters comments and replaces those phrases with custom words.', 'wpdiscuz'), 'url' => 'http://gvectors.com/product/comment-censore/'),
231
+ // 'uploader' => array('version' => '1.0.0', 'requires' => $wpdiscuzVersion, 'class' => 'WpdiscuzFileUploader', 'title' => 'File Uploder', 'thumb' => plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'assets' . WPDISCUZ_DS . 'addons' . WPDISCUZ_DS . 'fileuploader' . WPDISCUZ_DS . ''), 'desc' => __('Allow users add images, videos, files - and lorem ipsum goes here, and lorem ipsum goes here.', 'wpdiscuz'), 'url' => 'http://gvectors.com/product/advanced-content-pagination-pro/'),
232
+ // 'avatarmanager' => array('version' => '1.0.0', 'requires' => $wpdiscuzVersion, 'class' => 'WpdiscuzAvatarManager', 'title' => 'Avatar Manager', 'thumb' => plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'assets' . WPDISCUZ_DS . 'addons' . WPDISCUZ_DS . 'avatarmanager' . WPDISCUZ_DS . ''), 'desc' => __('Lets blog users manage their avatars - and lorem ipsum goes here, and lorem ipsum.', 'wpdiscuz'), 'url' => 'http://gvectors.com/product/advanced-content-pagination-pro/'),
233
+ );
234
+ }
235
+
236
  }
options/class.WpdiscuzOptionsSerialized.php CHANGED
@@ -367,6 +367,22 @@ class WpdiscuzOptionsSerialized {
367
  */
368
  public $commentReadMoreLimit;
369
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
370
  /**
371
  * Type - Checkbox
372
  * Available Values - Checked/Unchecked
@@ -374,6 +390,25 @@ class WpdiscuzOptionsSerialized {
374
  * Default Value - Unchecked
375
  */
376
  public $showHideCommentLink;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
377
  public $wordpressCommentRegistration;
378
  public $wordpressDateFormat;
379
  public $wordpressTimeFormat;
@@ -450,6 +485,11 @@ class WpdiscuzOptionsSerialized {
450
  $this->commentTextMaxLength = isset($options['wc_comment_text_max_length']) ? $options['wc_comment_text_max_length'] : '';
451
  $this->commentReadMoreLimit = isset($options['commentWordsLimit']) ? $options['commentWordsLimit'] : 100;
452
  $this->showHideCommentLink = isset($options['showHideCommentLink']) ? $options['showHideCommentLink'] : 0;
 
 
 
 
 
453
  }
454
 
455
  /**
@@ -548,14 +588,18 @@ class WpdiscuzOptionsSerialized {
548
  'wc_comment_not_edited' => __('You\'ve not made any changes', 'wpdiscuz'),
549
  'wc_comment_edit_save_button' => __('Save', 'wpdiscuz'),
550
  'wc_comment_edit_cancel_button' => __('Cancel', 'wpdiscuz'),
 
551
  'wc_msg_comment_text_min_length' => __('Comment text is too short (minimum %d% characters)', 'wpdiscuz'),
552
  'wc_msg_comment_text_max_length' => __('Comment text is too long (maximum %d% characters allowed)', 'wpdiscuz'),
 
 
 
553
  'wc_read_more' => __('Read more &raquo;', 'wpdiscuz'),
554
  'wc_msg_required_fields' => __('Please fill out required fields', 'wpdiscuz'),
555
  'wc_connect_with' => __('Connect with', 'wpdiscuz'),
556
  'wc_subscribed_to' => __('You\'re subscribed to', 'wpdiscuz'),
557
  'wc_postmatic_subscription_label' => __('Participate in this discussion via email', 'wpdiscuz')
558
- );
559
  }
560
 
561
  public function toArray() {
@@ -605,6 +649,10 @@ class WpdiscuzOptionsSerialized {
605
  'wc_comment_text_max_length' => $this->commentTextMaxLength,
606
  'commentWordsLimit' => $this->commentReadMoreLimit,
607
  'showHideCommentLink' => $this->showHideCommentLink,
 
 
 
 
608
  );
609
  return $options;
610
  }
@@ -661,7 +709,11 @@ class WpdiscuzOptionsSerialized {
661
  'wc_comment_text_min_length' => '1',
662
  'wc_comment_text_max_length' => '',
663
  'commentWordsLimit' => '100',
664
- 'showHideCommentLink' => '0'
 
 
 
 
665
  );
666
  add_option(WpdiscuzCore::OPTION_SLUG_OPTIONS, serialize($options));
667
  }
@@ -690,8 +742,8 @@ class WpdiscuzOptionsSerialized {
690
  $js_options['wc_vote_only_one_time'] = $this->phrases['wc_vote_only_one_time'];
691
  $js_options['wc_voting_error'] = $this->phrases['wc_voting_error'];
692
  $js_options['wc_captcha_show_hide'] = $this->captchaShowHide;
693
- $js_options['wc_msg_comment_text_min_length'] = str_replace('%d%', $this->commentTextMinLength, $this->phrases['wc_msg_comment_text_min_length']);
694
- $js_options['wc_msg_comment_text_max_length'] = str_replace('%d%', $this->commentTextMaxLength, $this->phrases['wc_msg_comment_text_max_length']);
695
  $js_options['wc_held_for_moderate'] = $this->phrases['wc_held_for_moderate'];
696
  $js_options['wc_comment_edit_not_possible'] = $this->phrases['wc_comment_edit_not_possible'];
697
  $js_options['wc_comment_not_updated'] = $this->phrases['wc_comment_not_updated'];
@@ -723,6 +775,8 @@ class WpdiscuzOptionsSerialized {
723
  if (function_exists('zerospam_get_key')) {
724
  $js_options['wpdiscuz_zs'] = md5(zerospam_get_key());
725
  }
 
 
726
  return $js_options;
727
  }
728
 
367
  */
368
  public $commentReadMoreLimit;
369
 
370
+ /**
371
+ * Type - Radio
372
+ * Available Values - Filesystem / session
373
+ * Description - captcha generation type
374
+ * Default Value - 0, which means captcha image will be stored in filesystem
375
+ */
376
+ public $isCaptchaInSession;
377
+
378
+ /**
379
+ * Type - Checkbox
380
+ * Available Values - Checked/Unchecked
381
+ * Description - get user / if checked by email else by id
382
+ * Default Value - Unchecked
383
+ */
384
+ public $isUserByEmail;
385
+
386
  /**
387
  * Type - Checkbox
388
  * Available Values - Checked/Unchecked
390
  * Default Value - Unchecked
391
  */
392
  public $showHideCommentLink;
393
+
394
+ /**
395
+ * Type - Input
396
+ * Available Values - Integer (after the limit has been reached show read more link)
397
+ * Description - Define words max count for read more link
398
+ * Default Value - 100 words
399
+ */
400
+ public $commenterNameMinLength;
401
+
402
+ /**
403
+ * Type - Input
404
+ * Available Values - Integer (after the limit has been reached show read more link)
405
+ * Description - Define words max count for read more link
406
+ * Default Value - 100 words
407
+ */
408
+ public $commenterNameMaxLength;
409
+ /**
410
+ * wordpress options
411
+ */
412
  public $wordpressCommentRegistration;
413
  public $wordpressDateFormat;
414
  public $wordpressTimeFormat;
485
  $this->commentTextMaxLength = isset($options['wc_comment_text_max_length']) ? $options['wc_comment_text_max_length'] : '';
486
  $this->commentReadMoreLimit = isset($options['commentWordsLimit']) ? $options['commentWordsLimit'] : 100;
487
  $this->showHideCommentLink = isset($options['showHideCommentLink']) ? $options['showHideCommentLink'] : 0;
488
+ $this->isCaptchaInSession = isset($options['isCaptchaInSession']) ? $options['isCaptchaInSession'] : 0;
489
+ $this->isUserByEmail = isset($options['isUserByEmail']) ? $options['isUserByEmail'] : 0;
490
+ $this->commenterNameMinLength = isset($options['commenterNameMinLength']) ? $options['commenterNameMinLength'] : 3;
491
+ $this->commenterNameMaxLength = isset($options['commenterNameMaxLength']) ? $options['commenterNameMaxLength'] : 50;
492
+ do_action('wpdiscuz_init_options', $this);
493
  }
494
 
495
  /**
588
  'wc_comment_not_edited' => __('You\'ve not made any changes', 'wpdiscuz'),
589
  'wc_comment_edit_save_button' => __('Save', 'wpdiscuz'),
590
  'wc_comment_edit_cancel_button' => __('Cancel', 'wpdiscuz'),
591
+ /* <!-- remove in next versions */
592
  'wc_msg_comment_text_min_length' => __('Comment text is too short (minimum %d% characters)', 'wpdiscuz'),
593
  'wc_msg_comment_text_max_length' => __('Comment text is too long (maximum %d% characters allowed)', 'wpdiscuz'),
594
+ /* --> Use messages below instead */
595
+ 'wc_msg_input_min_length' => __('Input is too short', 'wpdiscuz'),
596
+ 'wc_msg_input_max_length' => __('Input is too long', 'wpdiscuz'),
597
  'wc_read_more' => __('Read more &raquo;', 'wpdiscuz'),
598
  'wc_msg_required_fields' => __('Please fill out required fields', 'wpdiscuz'),
599
  'wc_connect_with' => __('Connect with', 'wpdiscuz'),
600
  'wc_subscribed_to' => __('You\'re subscribed to', 'wpdiscuz'),
601
  'wc_postmatic_subscription_label' => __('Participate in this discussion via email', 'wpdiscuz')
602
+ );
603
  }
604
 
605
  public function toArray() {
649
  'wc_comment_text_max_length' => $this->commentTextMaxLength,
650
  'commentWordsLimit' => $this->commentReadMoreLimit,
651
  'showHideCommentLink' => $this->showHideCommentLink,
652
+ 'isCaptchaInSession' => $this->isCaptchaInSession,
653
+ 'isUserByEmail' => $this->isUserByEmail,
654
+ 'commenterNameMinLength' => $this->commenterNameMinLength,
655
+ 'commenterNameMaxLength' => $this->commenterNameMaxLength,
656
  );
657
  return $options;
658
  }
709
  'wc_comment_text_min_length' => '1',
710
  'wc_comment_text_max_length' => '',
711
  'commentWordsLimit' => '100',
712
+ 'showHideCommentLink' => '0',
713
+ 'isCaptchaInSession' => '0',
714
+ 'isUserByEmail' => '0',
715
+ 'commenterNameMinLength' => '3',
716
+ 'commenterNameMaxLength' => '50',
717
  );
718
  add_option(WpdiscuzCore::OPTION_SLUG_OPTIONS, serialize($options));
719
  }
742
  $js_options['wc_vote_only_one_time'] = $this->phrases['wc_vote_only_one_time'];
743
  $js_options['wc_voting_error'] = $this->phrases['wc_voting_error'];
744
  $js_options['wc_captcha_show_hide'] = $this->captchaShowHide;
745
+ $js_options['wc_msg_input_min_length'] = $this->phrases['wc_msg_input_min_length'];
746
+ $js_options['wc_msg_input_max_length'] = $this->phrases['wc_msg_input_max_length'];
747
  $js_options['wc_held_for_moderate'] = $this->phrases['wc_held_for_moderate'];
748
  $js_options['wc_comment_edit_not_possible'] = $this->phrases['wc_comment_edit_not_possible'];
749
  $js_options['wc_comment_not_updated'] = $this->phrases['wc_comment_not_updated'];
775
  if (function_exists('zerospam_get_key')) {
776
  $js_options['wpdiscuz_zs'] = md5(zerospam_get_key());
777
  }
778
+ $js_options['wpDiscuzReCaptcha'] = class_exists("wpDiscuzReCaptcha") ? true : false;
779
+ $js_options['isCaptchaInSession'] = (boolean) $this->isCaptchaInSession;
780
  return $js_options;
781
  }
782
 
options/html-addons.php ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="wrap wpdiscuz_addons_page">
2
+ <div style="float:left; width:50px; height:55px; margin:10px 10px 20px 0px;">
3
+ <img src="<?php echo plugins_url(WPDISCUZ_DIR_NAME . '/assets/img/plugin-icon/plugin-icon-48.png'); ?>" style="border:2px solid #fff;"/>
4
+ </div>
5
+ <h1 style="padding-bottom:20px; padding-top:15px;"><?php _e('wpDiscuz Add-ons and Plugins', 'wpdiscuz'); ?></h1>
6
+ <br style="clear:both" />
7
+ <table width="100%" border="0" cellspacing="1" class="widefat">
8
+ <tr>
9
+ <td valign="top" style="padding:10px 10px 0px 10px;">
10
+ <table width="100%" border="0" cellspacing="1">
11
+ <thead>
12
+ <tr>
13
+ <th style="font-size:16px; padding-bottom:15px;"><strong>wpDiscuz Add-ons</strong></th>
14
+ <th style="font-size:16px; padding-bottom:15px; width:175px; text-align:center; border-bottom:1px solid #008EC2;"><a href="http://gvectors.com/migrate-to-wpdiscuz/" style="color:#008EC2; overflow:hidden; outline:none;" target="_blank">Migrate to wpDiscuz</a></th>
15
+ <th style="font-size:16px; padding-bottom:15px; width:165px; text-align:center; border-bottom:1px solid #008EC2;"><a href="http://gvectors.com/forum/" style="color:#008EC2; overflow:hidden; outline:none;" target="_blank">Support for Add-ons</a></th>
16
+ </tr>
17
+ </thead>
18
+ <tr valign="top">
19
+ <td colspan="3" style="background:#FFF; text-align:left; font-size:13px;">
20
+ We've released the initial wpDiscuz 1.0.0 version on 30 November 2014.
21
+ After one year and one month of hard non-profit work we've decided to create paid add-ons to get some funds for future free wpDiscuz development.
22
+ wpDiscuz add-ons are also premium level extensions and those will also be actively developed.<br />
23
+ All essential and even dozens of extra-cool features are already available for free.
24
+ There will never be any limits, any pro and paid versions for wpDiscuz. It's already a premium level plugin and it's free.
25
+ We don't want to limit wpDiscuz users for any essential commenting functions.
26
+ And we have another dozens of awesome features in our to-do list which will also be added for free in future releases.
27
+ So the free wpDiscuz development always stays on the first priority and wpDiscuz will be extended with new free functions and features even faster than before.
28
+ <p style="font-size:10px; color:#B1B1B1; font-style:italic; text-align:right; line-height:12px; padding-top:6px; margin:0px;">
29
+ Thank you!<br/> Sincerely yours,<br/>
30
+ gVectors Team&nbsp;
31
+ </p>
32
+ </td>
33
+ </tr>
34
+ </table>
35
+ </td>
36
+ </tr>
37
+ </table>
38
+ <br style="clear:both" />
39
+
40
+ <div class="wpdiscuz-addons-wrapper">
41
+ <?php
42
+ foreach ($this->addons as $key => $addon) {
43
+ $installed = (class_exists($addon['class'])) ? true : false;
44
+ ?>
45
+ <div class="wpdiscuz-addon-block">
46
+ <div id="wpdiscuz-addon-<?php echo $key ?>" class="addon-thumb" style="background:url(<?php echo ($installed) ? str_replace('.png', '-off.png', $addon['thumb']) : $addon['thumb']; ?>) top center no-repeat;">
47
+ &nbsp;
48
+ </div>
49
+ <div class="contenthover">
50
+ <div class="addon-isactive">
51
+ <?php if ($installed) { ?>
52
+ <div class="note-installed"><?php _e('Installed', 'default'); ?></div>
53
+ <?php } else { ?>
54
+ <h3 style="font-weight:normal; font-size:22px; text-shadow: 0 0 2px #999;"><?php echo $addon['title'] ?></h3>
55
+ <ul>
56
+ <li>Version: <?php echo $addon['version']; ?></li>
57
+ <li>wpDiscuz: at least <?php echo $addon['requires']; ?></li>
58
+ </ul>
59
+ <a class="button button-primary addon-button" href="<?php echo $addon['url']; ?>" target="_blank" style="font-size:14px;"><?php echo __('Addon Details | Buy', 'wpdiscuz'); ?></a>
60
+ <?php } ?>
61
+ </div>
62
+ </div>
63
+ <div style="clear:both"></div>
64
+ <div class="addon-info" style="<?php if ($installed) echo 'background-color:#bbbbbb'; ?>">
65
+ <a href="<?php echo $addon['url']; ?>" target="_blank" title="More information about <?php echo $addon['title'] ?> add-on &raquo;">
66
+ <p class="addon-title"><?php echo $addon['title']; ?></p>
67
+ </a>
68
+ <div class="addon-desc"><?php echo $addon['desc']; ?></div>
69
+ </div>
70
+ </div>
71
+ <script>jQuery(document).ready(function ($) { $('#wpdiscuz-addon-<?php echo $key ?>').contenthover({ overlay_width:290, overlay_height:<?php echo ($installed) ? '100' : '180'; ?>, effect:'slide', slide_direction:'right', overlay_x_position:'right', overlay_y_position:'center', overlay_background:'#e5e5e5', overlay_opacity:0.9}); });</script>
72
+ <?php } ?>
73
+ </div>
74
+ <div style="clear:both;"></div>
75
+ <h3>&nbsp;</h3>
76
+ <hr />
77
+ <h3>Coming very soon</h3>
78
+ <ul style="list-style:circle; margin-left:20px;">
79
+ <li>wpDiscuz Media Uploader/Player (photo, audio, video, other files)</li>
80
+ <li>wpDiscuz Emoticons (with unique different emoticons packages)</li>
81
+ <li>wpDiscuz Comment Front-end Moderation</li>
82
+ <li>wpDiscuz Widgets</li>
83
+ </ul>
84
+
85
+ </div>
options/html-options.php CHANGED
@@ -4,6 +4,7 @@
4
  </div>
5
  <h1 style="padding-bottom:20px; padding-top:15px;"><?php _e('wpDiscuz General Settings', 'wpdiscuz'); ?></h1>
6
  <br style="clear:both" />
 
7
  <table width="100%" border="0" cellspacing="1" class="widefat">
8
  <tr>
9
  <td valign="top" style="padding:10px;">
@@ -44,7 +45,7 @@
44
  }
45
  ?>
46
 
47
- <form action="<?php echo admin_url(); ?>edit-comments.php?page=wpdiscuz_options_page" method="post" name="wpdiscuz_options_page" class="wc-main-settings-form wc-form">
48
  <?php
49
  if (function_exists('wp_nonce_field')) {
50
  wp_nonce_field('wc_options_form');
@@ -53,13 +54,14 @@
53
  <h2>&nbsp;</h2>
54
  <div id="optionsTab">
55
  <ul class="resp-tabs-list options_tab_id">
56
- <li><?php _e('General settings', 'wpdiscuz'); ?></li>
57
  <li><?php _e('Live Update', 'wpdiscuz'); ?></li>
58
- <li><?php _e('Show/Hide Components', 'wpdiscuz'); ?></li>
59
- <li><?php _e('Email Subscription', 'wpdiscuz'); ?> <?php if (class_exists('Prompt_Comment_Form_Handling')): ?> <?php _e('and Postmatic', 'wpdiscuz'); ?> <?php endif; ?></li>
60
- <li><?php _e('Background and Colors', 'wpdiscuz'); ?></li>
61
  <li><?php _e('Social Login', 'wpdiscuz'); ?></li>
62
  <li><?php _e('Integrations', 'wpdiscuz'); ?></li>
 
63
  </ul>
64
  <div class="resp-tabs-container options_tab_id">
65
  <?php
@@ -70,6 +72,7 @@
70
  include 'options-layouts/settings-style.php';
71
  include 'options-layouts/settings-social.php';
72
  include 'options-layouts/settings-integrations.php';
 
73
  ?>
74
  </div>
75
  </div>
@@ -116,6 +119,14 @@
116
  tabidentify: 'integrationsChild', // The tab groups identifier
117
  });
118
 
 
 
 
 
 
 
 
 
119
  $(document).delegate('.options_tab_id .resp-tab-item', 'click', function () {
120
  var activeTabIndex = $('.resp-tabs-list.options_tab_id li.resp-tab-active').index();
121
  $.cookie('optionsActiveTabIndex', activeTabIndex, {expires: 30});
4
  </div>
5
  <h1 style="padding-bottom:20px; padding-top:15px;"><?php _e('wpDiscuz General Settings', 'wpdiscuz'); ?></h1>
6
  <br style="clear:both" />
7
+ <?php do_action('wpdiscuz_option_page');?>
8
  <table width="100%" border="0" cellspacing="1" class="widefat">
9
  <tr>
10
  <td valign="top" style="padding:10px;">
45
  }
46
  ?>
47
 
48
+ <form action="<?php echo admin_url(); ?>edit-comments.php?page=wpdiscuz_options_page" method="post" name="wpdiscuz_options_page" class="wc-main-settings-form wc-form" enctype="multipart/form-data">
49
  <?php
50
  if (function_exists('wp_nonce_field')) {
51
  wp_nonce_field('wc_options_form');
54
  <h2>&nbsp;</h2>
55
  <div id="optionsTab">
56
  <ul class="resp-tabs-list options_tab_id">
57
+ <li><?php _e('General Settings', 'wpdiscuz'); ?></li>
58
  <li><?php _e('Live Update', 'wpdiscuz'); ?></li>
59
+ <li><?php _e('Show/Hide', 'wpdiscuz'); ?></li>
60
+ <li><?php _e('Subscription', 'wpdiscuz'); ?> <?php if (class_exists('Prompt_Comment_Form_Handling')): ?> <?php _e('and Postmatic', 'wpdiscuz'); ?> <?php endif; ?></li>
61
+ <li><?php _e('Styling', 'wpdiscuz'); ?></li>
62
  <li><?php _e('Social Login', 'wpdiscuz'); ?></li>
63
  <li><?php _e('Integrations', 'wpdiscuz'); ?></li>
64
+ <li><?php _e('Addons', 'wpdiscuz'); ?></li>
65
  </ul>
66
  <div class="resp-tabs-container options_tab_id">
67
  <?php
72
  include 'options-layouts/settings-style.php';
73
  include 'options-layouts/settings-social.php';
74
  include 'options-layouts/settings-integrations.php';
75
+ include 'options-layouts/settings-addons.php';
76
  ?>
77
  </div>
78
  </div>
119
  tabidentify: 'integrationsChild', // The tab groups identifier
120
  });
121
 
122
+ // Child Tab
123
+ $('#wpdiscuz-addons-options').easyResponsiveTabs({
124
+ type: 'vertical',
125
+ width: 'auto',
126
+ fit: true,
127
+ tabidentify: 'wpdiscuz-addons-options', // The tab groups identifier
128
+ });
129
+
130
  $(document).delegate('.options_tab_id .resp-tab-item', 'click', function () {
131
  var activeTabIndex = $('.resp-tabs-list.options_tab_id li.resp-tab-active').index();
132
  $.cookie('optionsActiveTabIndex', activeTabIndex, {expires: 30});
options/options-layouts/settings-addons.php ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if (!defined('ABSPATH')) {
3
+ exit();
4
+ }
5
+ ?>
6
+ <div>
7
+ <h2 style="padding:5px 10px 10px 10px; margin:0px;"><?php _e('Addons', 'wpdiscuz'); ?></h2>
8
+ <table class="wp-list-table widefat plugins" style="margin-top:10px; border:none;">
9
+ <tbody>
10
+ <tr valign="top">
11
+ <th scope="row">
12
+
13
+ <p style="padding:10px; font-style:italic;">Here you can find wpDiscuz Addons' setting options in vertical subTabs with according addon titles. All wpDiscuz addons are listed on wpDiscuz &gt; <a href="<?php echo admin_url('edit-comments.php?page=wpdiscuz_addons_page') ?>">Addons subMenu</a>. We'll add new free and paid addons with almost every wpDiscuz release. There will be dozens of very useful addons in near future. Currently wpDiscuz consists of about 70 free features/addons like "Live Update", "First comment redirection", "Comment sorting", "Simple CAPTCHA", "AJAX Pagination", "Lazy Load", "Comment Likes", "Comment Share" and dozens of other addons and there will be more. All new and free addons will be built-in with wpDiscuz plugin and all paid addons will be listed separately on <a href="<?php echo admin_url('edit-comments.php?page=wpdiscuz_addons_page') ?>">Addons subMenu</a>.</p>
14
+ <hr style="margin-bottom:25px; border-color:#fff;" />
15
+
16
+ <div id="wpdiscuz-addons-options">
17
+ <ul class="resp-tabs-list wpdiscuz-addons-options">
18
+ <?php do_action('wpdiscuz_addon_tab_title');?>
19
+ </ul>
20
+ <div class="resp-tabs-container wpdiscuz-addons-options">
21
+ <?php do_action('wpdiscuz_addon_tab_content');?>
22
+ </div>
23
+ </div>
24
+ </th>
25
+ </tr>
26
+ </tbody>
27
+ </table>
28
+ </div>
options/options-layouts/settings-general.php CHANGED
@@ -9,7 +9,7 @@ if (!defined('ABSPATH')) {
9
  <tbody>
10
  <tr valign="top">
11
  <th scope="row" style="width:55%;">
12
- <?php _e('Display comment form for post types:', 'wpdiscuz'); ?>
13
  </th>
14
  <td>
15
  <?php
@@ -28,7 +28,30 @@ if (!defined('ABSPATH')) {
28
  </td>
29
  </tr>
30
  <tr valign="top">
31
- <th scope="row" style="width:55%">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  <?php _e('Comment author must fill out name', 'wpdiscuz'); ?>
33
  </th>
34
  <td>
@@ -38,12 +61,15 @@ if (!defined('ABSPATH')) {
38
  </td>
39
  </tr>
40
  <tr valign="top">
41
- <th scope="row" style="width:55%">
42
- <?php _e('Comment author must fill out email', 'wpdiscuz'); ?>
43
  </th>
44
  <td>
45
- <label for="wc_is_email_field_required">
46
- <input type="checkbox" <?php checked($this->optionsSerialized->isEmailFieldRequired == 1) ?> value="1" name="wc_is_email_field_required" id="wc_is_email_field_required" />
 
 
 
47
  </label>
48
  </td>
49
  </tr>
@@ -51,46 +77,39 @@ if (!defined('ABSPATH')) {
51
  <th scope="row">
52
  <?php _e('Keep guest commenter credentials in browser cookies for x days', 'wpdiscuz'); ?>
53
  <p style="font-size:13px; color:#999999; width:80%; padding-left:0px; margin-left:0px;">
54
- Set this option value -1 to make it unlimited.<br />
55
- Set this option value 0 to clear those data when user closes browser.
56
  </p>
57
  </th>
58
  <td>
59
  <label for="storeCommenterData">
60
- <input type="number" value="<?php echo isset($this->optionsSerialized->storeCommenterData) ? $this->optionsSerialized->storeCommenterData : -1; ?>" name="storeCommenterData" id="storeCommenterData" />
61
  </label><br/>
62
  </td>
63
  </tr>
64
  <tr valign="top">
65
  <th scope="row">
66
- <?php _e('Comment text min length', 'wpdiscuz'); ?>
67
  </th>
68
  <td>
69
  <label for="wc_comment_text_min_length">
70
- <input type="number" value="<?php echo isset($this->optionsSerialized->commentTextMinLength) ? $this->optionsSerialized->commentTextMinLength : 10; ?>" name="wc_comment_text_min_length" id="wc_comment_text_min_length" />
71
- </label><br/>
72
- </td>
73
- </tr>
74
- <tr valign="top">
75
- <th scope="row">
76
- <?php _e('Comment text max length', 'wpdiscuz'); ?>
77
- </th>
78
- <td>
79
  <label for="wc_comment_text_max_length">
80
- <input type="number" value="<?php echo isset($this->optionsSerialized->commentTextMaxLength) ? $this->optionsSerialized->commentTextMaxLength : ''; ?>" name="wc_comment_text_max_length" id="wc_comment_text_max_length" />
81
- </label><br/>
82
  </td>
83
  </tr>
84
  <tr valign="top">
85
  <th scope="row">
86
  <?php _e('The number of words before breaking comment text and showing "Read more" link', 'wpdiscuz'); ?>
87
  <p style="font-size:13px; color:#999999; width:80%; padding-left:0px; margin-left:0px;">
88
- Set this option value 0, to turn off comment text breaking function.
89
  </p>
90
  </th>
91
  <td>
92
  <label for="commentWordsLimit">
93
- <input type="number" value="<?php echo isset($this->optionsSerialized->commentReadMoreLimit) ? $this->optionsSerialized->commentReadMoreLimit : 100; ?>" name="commentWordsLimit" id="commentWordsLimit" />
94
  </label><br/>
95
  </td>
96
  </tr>
@@ -155,8 +174,7 @@ if (!defined('ABSPATH')) {
155
  <th scope="row">
156
  <?php _e('Comments loading/pagination type', 'wpdiscuz'); ?>
157
  <p style="font-size:13px; color:#999999; width:80%; padding-left:0px; margin-left:0px;">
158
- You can manage the number of comments for [Load more] option in Settings > Discussion page, using "Break comments into pages with [X] top level comments per page" option.
159
- To show the default Wordpress comment pagination you should enable the checkbox on bigining of the same option.
160
  </p>
161
  </th>
162
  <td>
9
  <tbody>
10
  <tr valign="top">
11
  <th scope="row" style="width:55%;">
12
+ <?php _e('Display comment form for post types', 'wpdiscuz'); ?>
13
  </th>
14
  <td>
15
  <?php
28
  </td>
29
  </tr>
30
  <tr valign="top">
31
+ <th scope="row">
32
+ <?php _e('Use guest email to detect registered account', 'wpdiscuz'); ?>
33
+ <p style="font-size:13px; color:#999999; width:80%; padding-left:0px; margin-left:0px;">
34
+ <?php _e('Sometimes registered users comment as guest using the same email address. wpDiscuz can detect the account role using guest email and display commenter label correctly.', 'wpdiscuz'); ?>
35
+ </p>
36
+ </th>
37
+ <td>
38
+ <label for="isUserByEmail">
39
+ <input type="checkbox" <?php checked($this->optionsSerialized->isUserByEmail == 1) ?> value="1" name="isUserByEmail" id="isUserByEmail" />
40
+ </label>
41
+ </td>
42
+ </tr>
43
+ <tr valign="top">
44
+ <th scope="row">
45
+ <?php _e('Comment author must fill out email', 'wpdiscuz'); ?>
46
+ </th>
47
+ <td>
48
+ <label for="wc_is_email_field_required">
49
+ <input type="checkbox" <?php checked($this->optionsSerialized->isEmailFieldRequired == 1) ?> value="1" name="wc_is_email_field_required" id="wc_is_email_field_required" />
50
+ </label>
51
+ </td>
52
+ </tr>
53
+ <tr valign="top">
54
+ <th scope="row">
55
  <?php _e('Comment author must fill out name', 'wpdiscuz'); ?>
56
  </th>
57
  <td>
61
  </td>
62
  </tr>
63
  <tr valign="top">
64
+ <th scope="row">
65
+ <?php _e('Comment author name min length (for guests only)', 'wpdiscuz'); ?>
66
  </th>
67
  <td>
68
+ <label for="commenterNameMinLength">
69
+ <?php _e('Min', 'wpdiscuz'); ?>: <input type="number" value="<?php echo $this->optionsSerialized->commenterNameMinLength; ?>" name="commenterNameMinLength" id="commenterNameMinLength" style="width:70px;" />
70
+ </label>
71
+ <label for="commenterNameMaxLength">
72
+ &nbsp; <?php _e('Max', 'wpdiscuz'); ?>: <input type="number" value="<?php echo $this->optionsSerialized->commenterNameMaxLength; ?>" name="commenterNameMaxLength" id="commenterNameMaxLength" style="width:70px;" />
73
  </label>
74
  </td>
75
  </tr>
77
  <th scope="row">
78
  <?php _e('Keep guest commenter credentials in browser cookies for x days', 'wpdiscuz'); ?>
79
  <p style="font-size:13px; color:#999999; width:80%; padding-left:0px; margin-left:0px;">
80
+ <?php _e('Set this option value -1 to make it unlimited.', 'wpdiscuz'); ?><br />
81
+ <?php _e('Set this option value 0 to clear those data when user closes browser.', 'wpdiscuz'); ?>
82
  </p>
83
  </th>
84
  <td>
85
  <label for="storeCommenterData">
86
+ <input type="number" value="<?php echo isset($this->optionsSerialized->storeCommenterData) ? $this->optionsSerialized->storeCommenterData : -1; ?>" name="storeCommenterData" id="storeCommenterData" style="width:100px;" />
87
  </label><br/>
88
  </td>
89
  </tr>
90
  <tr valign="top">
91
  <th scope="row">
92
+ <?php _e('Comment text length', 'wpdiscuz'); ?>
93
  </th>
94
  <td>
95
  <label for="wc_comment_text_min_length">
96
+ <?php _e('Min', 'wpdiscuz'); ?>: <input type="number" value="<?php echo isset($this->optionsSerialized->commentTextMinLength) ? $this->optionsSerialized->commentTextMinLength : 10; ?>" name="wc_comment_text_min_length" id="wc_comment_text_min_length" style="width:70px;" />
97
+ </label>
 
 
 
 
 
 
 
98
  <label for="wc_comment_text_max_length">
99
+ <?php _e('Max', 'wpdiscuz'); ?>: <input type="number" value="<?php echo isset($this->optionsSerialized->commentTextMaxLength) ? $this->optionsSerialized->commentTextMaxLength : ''; ?>" name="wc_comment_text_max_length" id="wc_comment_text_max_length" style="width:70px;" />
100
+ </label>
101
  </td>
102
  </tr>
103
  <tr valign="top">
104
  <th scope="row">
105
  <?php _e('The number of words before breaking comment text and showing "Read more" link', 'wpdiscuz'); ?>
106
  <p style="font-size:13px; color:#999999; width:80%; padding-left:0px; margin-left:0px;">
107
+ <?php _e('Set this option value 0, to turn off comment text breaking function.', 'wpdiscuz'); ?>
108
  </p>
109
  </th>
110
  <td>
111
  <label for="commentWordsLimit">
112
+ <input type="number" value="<?php echo isset($this->optionsSerialized->commentReadMoreLimit) ? $this->optionsSerialized->commentReadMoreLimit : 100; ?>" name="commentWordsLimit" id="commentWordsLimit" style="width:100px;" />
113
  </label><br/>
114
  </td>
115
  </tr>
174
  <th scope="row">
175
  <?php _e('Comments loading/pagination type', 'wpdiscuz'); ?>
176
  <p style="font-size:13px; color:#999999; width:80%; padding-left:0px; margin-left:0px;">
177
+ <?php _e('You can manage the number of comments for [Load more] option in Settings > Discussion page, using "Break comments into pages with [X] top level comments per page" option. To show the default Wordpress comment pagination you should enable the checkbox on bigining of the same option.', 'wpdiscuz'); ?>
 
178
  </p>
179
  </th>
180
  <td>
options/options-layouts/settings-integrations.php CHANGED
@@ -127,7 +127,7 @@ function wpdiscuz_um_profile_url($profile_url, $user) {
127
  add_filter('wpdiscuz_after_label', 'wpdiscuz_mc_after_label_html', 110, 2);
128
  function wpdiscuz_mc_after_label_html($afterLabelHtml, $comment) {
129
  if ($comment->user_id) {
130
- // keep your preffered profile plugin and remove others...
131
  if (function_exists('mycred_get_users_rank')) { //User Rank
132
  $afterLabelHtml .= mycred_get_users_rank($comment->user_id, 'logo', 'post-thumbnail', array('class' => 'mycred-rank'));
133
  }
@@ -135,9 +135,8 @@ function wpdiscuz_mc_after_label_html($afterLabelHtml, $comment) {
135
  $users_badges = mycred_get_users_badges($comment->user_id);
136
  if (!empty($users_badges)) {
137
  foreach ($users_badges as $badge_id => $level) {
138
- $afterLabelHtml .= '&lt;img src="' . get_post_meta($badge_id, 'main_image', true) . '"
139
- width="24" height="24" class="mycred-badge earned" alt="' . get_the_title($badge_id) . '"
140
- title="' . get_the_title($badge_id) . '" /&gt;';
141
  }
142
  }
143
  }
127
  add_filter('wpdiscuz_after_label', 'wpdiscuz_mc_after_label_html', 110, 2);
128
  function wpdiscuz_mc_after_label_html($afterLabelHtml, $comment) {
129
  if ($comment->user_id) {
130
+ // keep your preffered profile plugin and remove others...
131
  if (function_exists('mycred_get_users_rank')) { //User Rank
132
  $afterLabelHtml .= mycred_get_users_rank($comment->user_id, 'logo', 'post-thumbnail', array('class' => 'mycred-rank'));
133
  }
135
  $users_badges = mycred_get_users_badges($comment->user_id);
136
  if (!empty($users_badges)) {
137
  foreach ($users_badges as $badge_id => $level) {
138
+ $imageKey = ( $level > 0 ) ? 'level_image' . $level : 'main_image';
139
+ $afterLabelHtml .= '<img src="' . get_post_meta($badge_id, $imageKey, true) . '" width="22" height="22" class="mycred-badge earned" alt="' . get_the_title($badge_id) . '" title="' . get_the_title($badge_id) . '" />';
 
140
  }
141
  }
142
  }
options/options-layouts/settings-show-hide.php CHANGED
@@ -77,24 +77,42 @@ if (!defined('ABSPATH')) {
77
  </tr>
78
  <?php
79
  $pathToDir = WPDISCUZ_DIR_PATH . WPDISCUZ_DS . 'utils' . WPDISCUZ_DS . 'temp';
80
- $isWritable = is_writable($pathToDir);
81
  if ($isWritable) {
82
  $disableCaptcha = '';
83
  $msg = '';
84
  } else {
85
  $disableCaptcha = 'disabled="disabled"';
86
- $msg = '<p style="display: inline;">' . __('The plugin captcha directory is not writable! Please set writable permissions on "wpdiscuz/utils/temp" directory in order to use the captcha feature', 'wpdiscuz') . '</p>';
87
  }
88
  ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
89
  <tr valign="top">
90
  <th scope="row">
91
  <?php _e('Hide the CAPTCHA field for guests', 'wpdiscuz'); ?>
92
  </th>
93
  <td>
94
  <label for="wc_captcha_show_hide">
95
- <input <?php echo $disableCaptcha; ?> type="checkbox" <?php checked($this->optionsSerialized->captchaShowHide == 1) ?> value="1" name="wc_captcha_show_hide" id="wc_captcha_show_hide" />
96
- </label>
97
- <?php echo $msg; ?>
98
  </td>
99
  </tr>
100
  <tr valign="top">
@@ -103,9 +121,8 @@ if (!defined('ABSPATH')) {
103
  </th>
104
  <td>
105
  <label for="wc_captcha_show_hide_for_members">
106
- <input <?php echo $disableCaptcha; ?> type="checkbox" <?php checked($this->optionsSerialized->captchaShowHideForMembers == 1) ?> value="1" name="wc_captcha_show_hide_for_members" id="wc_captcha_show_hide_for_members" />
107
  </label>
108
- <?php echo $msg; ?>
109
  </td>
110
  </tr>
111
  <tr valign="top">
77
  </tr>
78
  <?php
79
  $pathToDir = WPDISCUZ_DIR_PATH . WPDISCUZ_DS . 'utils' . WPDISCUZ_DS . 'temp';
80
+ $isWritable = @is_writable($pathToDir);
81
  if ($isWritable) {
82
  $disableCaptcha = '';
83
  $msg = '';
84
  } else {
85
  $disableCaptcha = 'disabled="disabled"';
86
+ $msg = '<p style="display: inline;">' . __('The plugin captcha directory is not writable! Please set writable permissions on "wpdiscuz/utils/temp" directory in order to use the first type of captcha generation', 'wpdiscuz') . '</p>';
87
  }
88
  ?>
89
+ <tr valign="top">
90
+ <th scope="row">
91
+ <?php _e('Captcha generation type', 'wpdiscuz'); ?>
92
+ </th>
93
+ <td>
94
+ <fieldset class="commentListLoadType">
95
+ <?php $isCaptchaInSession = isset($this->optionsSerialized->isCaptchaInSession) ? $this->optionsSerialized->isCaptchaInSession : 0; ?>
96
+ <label>
97
+ <input <?php echo $disableCaptcha; ?> type="radio" value="0" <?php checked('0' == $isCaptchaInSession); ?> name="isCaptchaInSession" id="captchaByImageFile" />
98
+ <span><?php _e('use file system', 'wpdiscuz') ?></span>
99
+ </label> &nbsp;<br/>
100
+ <div><?php echo $msg; ?></div>
101
+ <label>
102
+ <input type="radio" value="1" <?php checked('1' == $isCaptchaInSession); ?> name="isCaptchaInSession" id="captchaInSession" />
103
+ <span><?php _e('use wordpress session', 'wpdiscuz') ?></span>
104
+ </label><br>
105
+ </fieldset>
106
+ </td>
107
+ </tr>
108
  <tr valign="top">
109
  <th scope="row">
110
  <?php _e('Hide the CAPTCHA field for guests', 'wpdiscuz'); ?>
111
  </th>
112
  <td>
113
  <label for="wc_captcha_show_hide">
114
+ <input type="checkbox" <?php checked($this->optionsSerialized->captchaShowHide == 1) ?> value="1" name="wc_captcha_show_hide" id="wc_captcha_show_hide" />
115
+ </label>
 
116
  </td>
117
  </tr>
118
  <tr valign="top">
121
  </th>
122
  <td>
123
  <label for="wc_captcha_show_hide_for_members">
124
+ <input type="checkbox" <?php checked($this->optionsSerialized->captchaShowHideForMembers == 1) ?> value="1" name="wc_captcha_show_hide_for_members" id="wc_captcha_show_hide_for_members" />
125
  </label>
 
126
  </td>
127
  </tr>
128
  <tr valign="top">
options/phrases-layouts/phrases-notification.php CHANGED
@@ -239,6 +239,28 @@ if (!defined('ABSPATH')) {
239
  </label>
240
  </td>
241
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
242
  <tr valign="top">
243
  <th scope="row">
244
  <?php _e('Message if comment was not updated', 'wpdiscuz'); ?>
239
  </label>
240
  </td>
241
  </tr>
242
+
243
+ <tr valign="top">
244
+ <th scope="row">
245
+ <?php _e('Message if input text length is too short', 'wpdiscuz'); ?>
246
+ </th>
247
+ <td colspan="3">
248
+ <label for="wc_msg_input_min_length">
249
+ <input type="text" value="<?php echo $this->optionsSerialized->phrases['wc_msg_input_min_length']; ?>" name="wc_msg_input_min_length" id="wc_msg_input_min_length" />
250
+ </label>
251
+ </td>
252
+ </tr>
253
+ <tr valign="top">
254
+ <th scope="row">
255
+ <?php _e('Message if input text length is too long', 'wpdiscuz'); ?>
256
+ </th>
257
+ <td colspan="3">
258
+ <label for="wc_msg_input_max_length">
259
+ <input type="text" value="<?php echo $this->optionsSerialized->phrases['wc_msg_input_max_length']; ?>" name="wc_msg_input_max_length" id="wc_msg_input_max_length" />
260
+ </label>
261
+ </td>
262
+ </tr>
263
+
264
  <tr valign="top">
265
  <th scope="row">
266
  <?php _e('Message if comment was not updated', 'wpdiscuz'); ?>
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_i
4
  Tags: wordpress comments, ajax comments, ajax, live update, live comments, realtime chat, chat, realtime commenting, Lazy load, Lazy load comments, mobile commenting, post comments, advanced comment, comments box, community, discussion, discuss, disqus, discuz, Disqus alternative, Livefyre alternative, Jatpack comments alternative, Facebook comments alternative, comment form, commenting, reply, comments, better comments, discussions, comment notifications, comment template, activity, comment author, comment system, redirect, comment redirect, first commenter, email commenting, social login, boost comments, native comments
5
  Requires at least: 3.8.0
6
  Tested up to: 4.4.1
7
- Stable tag: 3.1.4
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -145,15 +145,35 @@ Support Forum: http://gvectors.com/forum/
145
 
146
  == Changelog ==
147
 
148
- = 3.1.4 =
149
 
150
- * Fixed Bug: Default comment sorting
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
151
 
152
  IMPORTANT:
153
 
154
- - If you have JatPack installed please deactivate JatPack comments, it affects wpDiscuz
155
  - If you have a Cache Plugin and CDN, please delete all caches and purge CDN after wpDiscuz update.
156
 
 
 
 
 
 
157
  = 3.1.3 =
158
 
159
  * Added: Option to keep guest commenter credentials in browser for x days
@@ -161,6 +181,11 @@ IMPORTANT:
161
  * Set this option value 0 to clear those data when user closes browser.
162
  * Fixed Bug: CSS Issues
163
 
 
 
 
 
 
164
  = 3.1.2 =
165
 
166
  * Fixed Bug: CAPTCHA issue on some hosting services and with some secure plugins
4
  Tags: wordpress comments, ajax comments, ajax, live update, live comments, realtime chat, chat, realtime commenting, Lazy load, Lazy load comments, mobile commenting, post comments, advanced comment, comments box, community, discussion, discuss, disqus, discuz, Disqus alternative, Livefyre alternative, Jatpack comments alternative, Facebook comments alternative, comment form, commenting, reply, comments, better comments, discussions, comment notifications, comment template, activity, comment author, comment system, redirect, comment redirect, first commenter, email commenting, social login, boost comments, native comments
5
  Requires at least: 3.8.0
6
  Tested up to: 4.4.1
7
+ Stable tag: 3.2.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
145
 
146
  == Changelog ==
147
 
148
+ = 3.2.0 =
149
 
150
+ * Added: Simple CAPTCHA generation and storage types (file system or sessions)
151
+ * Added: Guest commenter username control (max/min length)
152
+ * Added: Uses guest email to detect registered account (Sometimes registered users comment as guest using the same email address. wpDiscuz can detect the account role using guest email and display commenter label correctly.)
153
+ * Added: Addon system for wpDiscuz extension.
154
+ * Added: Better symmetric and responsive comment form. However please note, this change doesn't have any relation to the new wpDiscuz UI/UX. It'll available next month.
155
+ * Added: German (de_DE) translation, thanks to Richard Rein
156
+ * Updated: Polish (pl_PL) translation, thanks to Radosław Rak
157
+ * Changed: Anonymous user emails and filled comment form
158
+ * Security: Prevented possible Reflected XSS found on wpDiscuz 3.1.4. Thanks to Kacper Szurek
159
+ * Fixed Bug: Incorrect comment escaping/slashing
160
+ * Fixed Bug: CSS issues related to hard clear both attribute
161
+ * Optimized:
162
+ * CAPTCHA reloader icon: 352 > 208 Bytes
163
+ * Comment individual link icon: 1,184 > 132 Bytes
164
+ * Vote up icon: 2,974 > 255 Bytes
165
+ * Vote down icon: 2,986 > 253 Bytes
166
 
167
  IMPORTANT:
168
 
169
+ - If you have JetPack installed please deactivate JatPack comments, it affects wpDiscuz
170
  - If you have a Cache Plugin and CDN, please delete all caches and purge CDN after wpDiscuz update.
171
 
172
+
173
+ = 3.1.4 =
174
+
175
+ * Fixed Bug: Default comment sorting
176
+
177
  = 3.1.3 =
178
 
179
  * Added: Option to keep guest commenter credentials in browser for x days
181
  * Set this option value 0 to clear those data when user closes browser.
182
  * Fixed Bug: CSS Issues
183
 
184
+ IMPORTANT:
185
+
186
+ - If you have JatPack installed please deactivate JatPack comments, it affects wpDiscuz
187
+ - If you have a Cache Plugin and CDN, please delete all caches and purge CDN after wpDiscuz update.
188
+
189
  = 3.1.2 =
190
 
191
  * Fixed Bug: CAPTCHA issue on some hosting services and with some secure plugins
templates/comment/class.WpdiscuzWalker.php CHANGED
@@ -48,20 +48,20 @@ class WpdiscuzWalker extends Walker_Comment {
48
  }
49
  }
50
 
51
- if ($comment->user_id) {
52
- $user = get_user_by('id', $comment->user_id);
53
- $authorAvatarField = $comment->user_id;
54
- $profileUrl = in_array($comment->user_id, $args['posts_authors']) ? get_author_posts_url($comment->user_id) : '';
55
- } else {
56
- $user = null;
57
- $authorAvatarField = $comment->comment_author_email;
58
- $profileUrl = '';
59
- }
60
-
61
  $commentAuthorUrl = ('http://' == $comment->comment_author_url) ? '' : $comment->comment_author_url;
62
  $commentAuthorUrl = esc_url($commentAuthorUrl, array('http', 'https'));
63
  $commentAuthorUrl = apply_filters('get_comment_author_url', $commentAuthorUrl, $comment->comment_ID, $comment);
 
 
 
 
 
 
 
64
  if ($user) {
 
 
 
65
  $commentAuthorUrl = $commentAuthorUrl ? $commentAuthorUrl : $user->user_url;
66
  if ($user->ID == $args['post_author']) {
67
  $authorClass = 'wc-blog-post_author';
@@ -71,6 +71,9 @@ class WpdiscuzWalker extends Walker_Comment {
71
  $author_title = $this->optionsSerialized->phrases['wc_blog_role_' . $user->roles[0]];
72
  }
73
  } else {
 
 
 
74
  $authorClass = 'wc-blog-guest';
75
  $author_title = $this->optionsSerialized->phrases['wc_blog_role_guest'];
76
  }
@@ -94,12 +97,11 @@ class WpdiscuzWalker extends Walker_Comment {
94
  } else {
95
  $commentWrapperClass .= ($comment->comment_parent && $this->optionsSerialized->wordpressThreadComments) ? 'wc-comment wc-reply' : 'wc-comment';
96
  }
 
97
  $voteCount = isset($comment->meta_value) ? $comment->meta_value : get_comment_meta($comment->comment_ID, WpdiscuzCore::META_KEY_VOTES, true);
98
-
99
- $authorName = $comment->comment_author ? $comment->comment_author : __('Anonymous', 'wpdiscuz');
100
  $authorName = apply_filters('wpdiscuz_comment_author', $authorName, $comment);
101
  $profileUrl = apply_filters('wpdiscuz_profile_url', $profileUrl, $user);
102
- $authorAvatarField = apply_filters('wpdiscuz_author_avatar_field', $authorAvatarField, $comment, $user, $profileUrl);
103
  $authorAvatar = $this->optionsSerialized->wordpressShowAvatars ? get_avatar($authorAvatarField) : '';
104
 
105
  if ($profileUrl) {
48
  }
49
  }
50
 
 
 
 
 
 
 
 
 
 
 
51
  $commentAuthorUrl = ('http://' == $comment->comment_author_url) ? '' : $comment->comment_author_url;
52
  $commentAuthorUrl = esc_url($commentAuthorUrl, array('http', 'https'));
53
  $commentAuthorUrl = apply_filters('get_comment_author_url', $commentAuthorUrl, $comment->comment_ID, $comment);
54
+
55
+ if (isset($this->optionsSerialized->isUserByEmail) && $this->optionsSerialized->isUserByEmail) {
56
+ $user = get_user_by('email', $comment->comment_author_email);
57
+ } else {
58
+ $user = $comment->user_id ? get_user_by('id', $comment->user_id) : null;
59
+ }
60
+
61
  if ($user) {
62
+ $authorName = $user->display_name ? $user->display_name : $comment->comment_author;
63
+ $authorAvatarField = $user->ID;
64
+ $profileUrl = in_array($user->ID, $args['posts_authors']) ? get_author_posts_url($user->ID) : '';
65
  $commentAuthorUrl = $commentAuthorUrl ? $commentAuthorUrl : $user->user_url;
66
  if ($user->ID == $args['post_author']) {
67
  $authorClass = 'wc-blog-post_author';
71
  $author_title = $this->optionsSerialized->phrases['wc_blog_role_' . $user->roles[0]];
72
  }
73
  } else {
74
+ $authorName = $comment->comment_author ? $comment->comment_author : __('Anonymous', 'wpdiscuz');
75
+ $authorAvatarField = $comment->comment_author_email;
76
+ $profileUrl = '';
77
  $authorClass = 'wc-blog-guest';
78
  $author_title = $this->optionsSerialized->phrases['wc_blog_role_guest'];
79
  }
97
  } else {
98
  $commentWrapperClass .= ($comment->comment_parent && $this->optionsSerialized->wordpressThreadComments) ? 'wc-comment wc-reply' : 'wc-comment';
99
  }
100
+
101
  $voteCount = isset($comment->meta_value) ? $comment->meta_value : get_comment_meta($comment->comment_ID, WpdiscuzCore::META_KEY_VOTES, true);
 
 
102
  $authorName = apply_filters('wpdiscuz_comment_author', $authorName, $comment);
103
  $profileUrl = apply_filters('wpdiscuz_profile_url', $profileUrl, $user);
104
+ $authorAvatarField = apply_filters('wpdiscuz_author_avatar_field', $authorAvatarField, $comment, $user, $profileUrl);
105
  $authorAvatar = $this->optionsSerialized->wordpressShowAvatars ? get_avatar($authorAvatarField) : '';
106
 
107
  if ($profileUrl) {
templates/comment/comment-form.php CHANGED
@@ -66,7 +66,7 @@ if (isset($_GET['subscriptionSuccess'])) {
66
  }
67
  ?>
68
 
69
- <div style="clear:both"></div>
70
  <?php
71
  if (comments_open($post->ID)) {
72
  $wpdiscuz->helper->superSocializerFix();
@@ -96,7 +96,7 @@ if (comments_open($post->ID)) {
96
  <p class="wc-comment-title">
97
  <?php echo ($commentsCount) ? $header_text : $wpdiscuz->optionsSerialized->phrases['wc_be_the_first_text']; ?>
98
  </p>
99
- <div style="clear:both"></div>
100
  </div>
101
  <?php } ?>
102
  <?php do_action('comment_form_before'); ?>
@@ -143,7 +143,7 @@ if (comments_open($post->ID)) {
143
  <input type="hidden" value="<?php echo $post->ID; ?>" name="wpdiscuzSubscriptionPostId" />
144
  </form>
145
  <?php } ?>
146
- <div style="clear:both;"></div>
147
  <?php
148
  if (isset($unsubscribeLink)) {
149
  $subscribeMessage = $isConfirmed ? $wpdiscuz->optionsSerialized->phrases['wc_unsubscribe'] : $wpdiscuz->optionsSerialized->phrases['wc_ignore_subscription'];
@@ -190,9 +190,9 @@ if (comments_open($post->ID)) {
190
  <div class="wc_new_comment_and_replies">
191
  <div class="wc_new_comment wc-update-on-click"></div>
192
  <div class="wc_new_reply wc-update-on-click"></div>
193
- <div style="clear:both"></div>
194
  </div>
195
- <div style="clear:both"></div>
196
  <?php } ?>
197
  <div id="wcThreadWrapper" class="wc-thread-wrapper">
198
  <?php
@@ -232,7 +232,7 @@ if (comments_open($post->ID)) {
232
  ?>
233
  </div>
234
  </div>
235
- <div style="clear:both"></div>
236
  <?php if (comments_open($post->ID) && $commentsCount) { ?>
237
  <?php if ($wpdiscuz->optionsSerialized->showPluginPoweredByLink) { ?>
238
  <div class="by-wpdiscuz">
@@ -240,13 +240,13 @@ if (comments_open($post->ID)) {
240
  document.getElementById("awpdiscuz").style.display = "none";'>
241
  <img alt="<?php _e('wpDiscuz', 'wpdiscuz'); ?>" src="<?php echo plugins_url(WPDISCUZ_DIR_NAME . '/assets/img/plugin-icon/icon_info.png'); ?>" align="absmiddle" class="wpdimg"/>
242
  </span>&nbsp;
243
- <a href="http://wpdiscuz.com/" id="bywpdiscuz" title="wpDiscuz v<?php echo get_option(WpdiscuzCore::OPTION_SLUG_VERSION); ?> - Supercharged native comments">wpDiscuz</a>
244
  </div>
245
  <?php } ?>
246
  <?php } ?>
247
  </div>
248
  </div>
249
- <div class="wpdiscuz-loading-bar <?php echo ($current_user->ID) ? 'wpdiscuz-loading-bar-auth' : 'wpdiscuz-loading-bar-unauth'; ?>"><img class="wpdiscuz-loading-bar-img" alt="<?php _e('wpDiscuz', 'wpdiscuz'); ?>" src="<?php echo plugins_url(WPDISCUZ_DIR_NAME . '/assets/img/loading.gif'); ?>" /></div>
250
  <?php
251
 
252
  function wpdiscuz_close_divs($html) {
@@ -267,7 +267,7 @@ if (comments_open($post->ID)) {
267
  $wc_social_buttons_array[] = $wc_social_button[0];
268
  }
269
  $html = '<style type="text/css">#wpcomm .wc_social_plugin_wrapper .wp-social-login-connect-with_by_the_champ{float:left;font-size:13px;padding:5px 7px 0 0;text-transform:uppercase}#wpcomm .wc_social_plugin_wrapper ul.wc_social_login_by_the_champ{list-style:none outside none!important;margin:0!important;padding-left:0!important}#wpcomm .wc_social_plugin_wrapper ul.wc_social_login_by_the_champ .theChampLogin{width:24px!important;height:24px!important}#wpcomm .wc-secondary-forms-social-content ul.wc_social_login_by_the_champ{list-style:none outside none!important;margin:0!important;padding-left:0!important}#wpcomm .wc-secondary-forms-social-content ul.wc_social_login_by_the_champ .theChampLogin{width:24px!important;height:24px!important}#wpcomm .wc-secondary-forms-social-content ul.wc_social_login_by_the_champ li{float:right!important}#wpcomm .wc_social_plugin_wrapper .theChampFacebookButton{ display:block!important; }#wpcomm .theChampTwitterButton{background-position:-4px -68px!important}#wpcomm .theChampGoogleButton{background-position:-36px -2px!important}#wpcomm .theChampVkontakteButton{background-position:-35px -67px!important}#wpcomm .theChampLinkedinButton{background-position:-34px -34px!important;}.theChampCommentingTabs #wpcomm li{ margin:0px 1px 10px 0px!important; }</style>
270
- <div class="wp-social-login-widget"><div class="wp-social-login-connect-with_by_the_champ">' . $wpdiscuz->optionsSerialized->phrases['wc_connect_with'] . ':</div><div class="wp-social-login-provider-list"><ul class="wc_social_login_by_the_champ">' . implode('', $wc_social_buttons_array) . '</ul><div style="clear:both"></div></div></div>';
271
  }
272
  }
273
  return $html;
66
  }
67
  ?>
68
 
69
+ <div class="wpdiscuz_top_clearing"></div>
70
  <?php
71
  if (comments_open($post->ID)) {
72
  $wpdiscuz->helper->superSocializerFix();
96
  <p class="wc-comment-title">
97
  <?php echo ($commentsCount) ? $header_text : $wpdiscuz->optionsSerialized->phrases['wc_be_the_first_text']; ?>
98
  </p>
99
+ <div class="wpdiscuz_clear"></div>
100
  </div>
101
  <?php } ?>
102
  <?php do_action('comment_form_before'); ?>
143
  <input type="hidden" value="<?php echo $post->ID; ?>" name="wpdiscuzSubscriptionPostId" />
144
  </form>
145
  <?php } ?>
146
+ <div class="wpdiscuz_clear"></div>
147
  <?php
148
  if (isset($unsubscribeLink)) {
149
  $subscribeMessage = $isConfirmed ? $wpdiscuz->optionsSerialized->phrases['wc_unsubscribe'] : $wpdiscuz->optionsSerialized->phrases['wc_ignore_subscription'];
190
  <div class="wc_new_comment_and_replies">
191
  <div class="wc_new_comment wc-update-on-click"></div>
192
  <div class="wc_new_reply wc-update-on-click"></div>
193
+ <div class="wpdiscuz_clear"></div>
194
  </div>
195
+ <div class="wpdiscuz_clear"></div>
196
  <?php } ?>
197
  <div id="wcThreadWrapper" class="wc-thread-wrapper">
198
  <?php
232
  ?>
233
  </div>
234
  </div>
235
+ <div class="wpdiscuz_clear"></div>
236
  <?php if (comments_open($post->ID) && $commentsCount) { ?>
237
  <?php if ($wpdiscuz->optionsSerialized->showPluginPoweredByLink) { ?>
238
  <div class="by-wpdiscuz">
240
  document.getElementById("awpdiscuz").style.display = "none";'>
241
  <img alt="<?php _e('wpDiscuz', 'wpdiscuz'); ?>" src="<?php echo plugins_url(WPDISCUZ_DIR_NAME . '/assets/img/plugin-icon/icon_info.png'); ?>" align="absmiddle" class="wpdimg"/>
242
  </span>&nbsp;
243
+ <a href="http://wpdiscuz.com/" target="_blank" id="bywpdiscuz" title="wpDiscuz v<?php echo get_option(WpdiscuzCore::OPTION_SLUG_VERSION); ?> - Supercharged native comments">wpDiscuz</a>
244
  </div>
245
  <?php } ?>
246
  <?php } ?>
247
  </div>
248
  </div>
249
+ <div class="wpdiscuz-loading-bar <?php echo ($current_user->ID) ? 'wpdiscuz-loading-bar-auth' : 'wpdiscuz-loading-bar-unauth'; ?>"><img class="wpdiscuz-loading-bar-img" alt="<?php _e('wpDiscuz', 'wpdiscuz'); ?>" src="<?php echo plugins_url(WPDISCUZ_DIR_NAME . '/assets/img/loading.gif'); ?>" width="32" height="25" /></div>
250
  <?php
251
 
252
  function wpdiscuz_close_divs($html) {
267
  $wc_social_buttons_array[] = $wc_social_button[0];
268
  }
269
  $html = '<style type="text/css">#wpcomm .wc_social_plugin_wrapper .wp-social-login-connect-with_by_the_champ{float:left;font-size:13px;padding:5px 7px 0 0;text-transform:uppercase}#wpcomm .wc_social_plugin_wrapper ul.wc_social_login_by_the_champ{list-style:none outside none!important;margin:0!important;padding-left:0!important}#wpcomm .wc_social_plugin_wrapper ul.wc_social_login_by_the_champ .theChampLogin{width:24px!important;height:24px!important}#wpcomm .wc-secondary-forms-social-content ul.wc_social_login_by_the_champ{list-style:none outside none!important;margin:0!important;padding-left:0!important}#wpcomm .wc-secondary-forms-social-content ul.wc_social_login_by_the_champ .theChampLogin{width:24px!important;height:24px!important}#wpcomm .wc-secondary-forms-social-content ul.wc_social_login_by_the_champ li{float:right!important}#wpcomm .wc_social_plugin_wrapper .theChampFacebookButton{ display:block!important; }#wpcomm .theChampTwitterButton{background-position:-4px -68px!important}#wpcomm .theChampGoogleButton{background-position:-36px -2px!important}#wpcomm .theChampVkontakteButton{background-position:-35px -67px!important}#wpcomm .theChampLinkedinButton{background-position:-34px -34px!important;}.theChampCommentingTabs #wpcomm li{ margin:0px 1px 10px 0px!important; }</style>
270
+ <div class="wp-social-login-widget"><div class="wp-social-login-connect-with_by_the_champ">' . $wpdiscuz->optionsSerialized->phrases['wc_connect_with'] . ':</div><div class="wp-social-login-provider-list"><ul class="wc_social_login_by_the_champ">' . implode('', $wc_social_buttons_array) . '</ul><div class="wpdiscuz_clear"></div></div></div>';
271
  }
272
  }
273
  return $html;
utils/captcha/captcha.php ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /* captcha.php file */
4
+ error_reporting(0);
5
+ if (!session_start()) {
6
+ exit('Cannot start session');
7
+ }
8
+ if (!function_exists('imagecreatefrompng')) {
9
+ exit('PHP GD2 library is disabled');
10
+ }
11
+
12
+ header("Expires: Tue, 01 Jan 2014 00:00:00 GMT");
13
+ header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
14
+ header("Cache-Control: no-store, no-cache, must-revalidate");
15
+ header("Cache-Control: post-check=0, pre-check=0", false);
16
+ header("Pragma: no-cache");
17
+
18
+ $key = isset($_GET['key']) ? $_GET['key'] : uniqid('c');
19
+ $chars = '123456789abcdefghijklmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ';
20
+ $randomString = '';
21
+ for ($i = 0; $i < 5; $i++) {
22
+ $randomString .= $chars[rand(0, strlen($chars) - 1)];
23
+ }
24
+
25
+ if (($im = @imagecreatefrompng("captcha_bg_easy.png")) === false) {
26
+ exit('Cannot create image file');
27
+ }
28
+ $_SESSION['wpdiscuzc'][$key] = md5(strtolower($randomString));
29
+ $size = 16;
30
+ $angle = 0;
31
+ $x = 5;
32
+ $y = 20;
33
+ $font = './consolai.ttf';
34
+ for ($i = 0; $i < strlen($randomString); $i++) {
35
+ $color = imagecolorallocate($im, rand(0, 255), 0, rand(0, 255));
36
+ $letter = substr($randomString, $i, 1);
37
+ imagettftext($im, $size, $angle, $x, $y, $color, $font, $letter);
38
+ $x += 13;
39
+ }
40
+
41
+ for ($i = 0; $i < 5; $i++) {
42
+ $color = imagecolorallocate($im, rand(0, 255), rand(0, 200), rand(0, 255));
43
+ imageline($im, rand(0, 20), rand(1, 50), rand(150, 180), rand(1, 50), $color);
44
+ }
45
+ header('Content-type: image/png');
46
+ if (!imagepng($im, null, 5)) {
47
+ exit('PNG image creation disabled');
48
+ }
49
+ imagedestroy($im);
utils/class.WpdiscuzEmailHelper.php CHANGED
@@ -97,11 +97,11 @@ class WpdiscuzEmailHelper {
97
  */
98
  public function checkNotificationType() {
99
  if (isset($_POST['wpdiscuzAjaxData'])) {
100
- parse_str($_POST['wpdiscuzAjaxData']);
101
- $postId = intval(trim($postId));
102
- $comment_id = intval(trim($comment_id));
103
- $email = trim($email);
104
- $isParent = trim($isParent);
105
  $current_user = wp_get_current_user();
106
  if ($current_user->user_email) {
107
  $email = $current_user->user_email;
97
  */
98
  public function checkNotificationType() {
99
  if (isset($_POST['wpdiscuzAjaxData'])) {
100
+ parse_str($_POST['wpdiscuzAjaxData'],$data);
101
+ $postId = intval(trim($data['postId']));
102
+ $comment_id = intval(trim($data['comment_id']));
103
+ $email = trim($data['email']);
104
+ $isParent = trim($data['isParent']);
105
  $current_user = wp_get_current_user();
106
  if ($current_user->user_email) {
107
  $email = $current_user->user_email;
utils/class.WpdiscuzHelper.php CHANGED
@@ -41,21 +41,20 @@ class WpdiscuzHelper {
41
  'del' => array('datetime' => array()),
42
  'span' => array('id' => array(), 'class' => array(), 'title' => array())
43
  );
44
- private $captchaDir;
45
  private $captchaString;
46
- private $msgImgCreateError;
47
  private $msgPermsDeniedError;
48
- private $msgDirectoryNotWritable;
49
- private $msgGDLibraryDisabled;
50
- private $msgPNGCreationDisabled;
51
 
52
- function __construct($wpdiscuzOptionsSerialized, $dbManager) {
53
- $this->optionsSerialized = $wpdiscuzOptionsSerialized;
54
  $this->dbManager = $dbManager;
55
  $this->captchaDir = WPDISCUZ_DIR_PATH . WPDISCUZ_DS . 'utils' . WPDISCUZ_DS . 'temp';
56
  $this->msgImgCreateError = __('Cannot create image file', 'wpdiscuz');
57
  $this->msgPermsDeniedError = __('Permission denied for file creation', 'wpdiscuz');
58
- $this->msgDirectoryNotWritable = __('The directory is not writable', 'wpdiscuz');
59
  $this->msgGDLibraryDisabled = __('PHP GD2 library is disabled', 'wpdiscuz');
60
  $this->msgPNGCreationDisabled = __('PNG image creation disabled', 'wpdiscuz');
61
  }
@@ -269,18 +268,19 @@ class WpdiscuzHelper {
269
  return $user_can_comment;
270
  }
271
 
272
- public function formBuilder($isMain, $uniqueId, $commentsCount, $current_user) {
273
  global $post;
274
 
275
- $wc_is_name_field_required = ($this->optionsSerialized->isNameFieldRequired) ? 'required="required"' : '';
276
- $wc_is_email_field_required = ($this->optionsSerialized->isEmailFieldRequired) ? 'required="required"' : '';
277
 
278
  if (!$isMain || $commentsCount) {
279
  $textarea_placeholder = $this->optionsSerialized->phrases['wc_comment_join_text'];
280
  } else {
281
  $textarea_placeholder = $this->optionsSerialized->phrases['wc_comment_start_text'];
282
  }
283
- $validateCommentlength = (intval($this->optionsSerialized->commentTextMinLength) && intval($this->optionsSerialized->commentTextMaxLength)) ? 'data-validate-length-range="' . $this->optionsSerialized->commentTextMinLength . ',' . $this->optionsSerialized->commentTextMaxLength . '"' : '';
 
284
  ?>
285
  <div class="wc-form-wrapper <?php echo!$isMain ? 'wc-secondary-form-wrapper' : 'wc-main-form-wrapper'; ?>" <?php echo!$isMain ? "id='wc-secondary-form-wrapper-$uniqueId' style='display: none;'" : "id='wc-main-form-wrapper-$uniqueId'"; ?> >
286
  <div class="wpdiscuz-comment-message" style="display: block;"></div>
@@ -288,14 +288,13 @@ class WpdiscuzHelper {
288
  <div class="wc-secondary-forms-social-content"></div>
289
  <?php } ?>
290
  <?php
291
- if ($this->isGuestCanComment($current_user->ID)) {
292
  ?>
293
- <form class="wc_comm_form <?php echo!$isMain ? 'wc-secondary-form-wrapper' : 'wc_main_comm_form'; ?>" method="post" action="">
294
  <div class="wc-field-comment">
295
-
296
  <?php if ($this->optionsSerialized->wordpressShowAvatars) { ?>
297
  <div class="wc-field-avatararea">
298
- <?php echo get_avatar($current_user->ID, 48); ?>
299
  </div>
300
  <?php } ?>
301
  <div class="wpdiscuz-item wc-field-textarea" <?php
@@ -303,59 +302,53 @@ class WpdiscuzHelper {
303
  echo ' style="margin-left: 0;"';
304
  }
305
  ?>>
306
- <textarea <?php echo $validateCommentlength; ?> placeholder="<?php echo $textarea_placeholder; ?>" required="required" name="wc_comment" class="wc_comment wc_field_input"></textarea>
 
 
 
 
 
 
307
  </div>
308
- <div style="clear:both"></div>
309
  </div>
310
- <div class="wc-form-footer" style="display: none;">
311
- <?php if (!$current_user->ID) { ?>
 
312
  <div class="wc-author-data">
313
  <div class="wc-field-name wpdiscuz-item">
314
- <input type="text" placeholder="<?php echo $this->optionsSerialized->phrases['wc_name_text']; ?>" value="" <?php echo $wc_is_name_field_required; ?> name="wc_name" class="wc_name wc_field_input" >
315
  </div>
316
  <div class="wc-field-email wpdiscuz-item">
317
- <input type="email" placeholder="<?php echo $this->optionsSerialized->phrases['wc_email_text']; ?>" value="" <?php echo $wc_is_email_field_required; ?> name="wc_email" class="wc_email wc_field_input email">
318
  </div>
319
- <div style="clear:both"></div>
 
 
 
 
 
320
  </div>
321
  <?php } ?>
322
  <div class="wc-form-submit">
 
323
  <?php
324
- if ($this->isShowCaptcha($current_user->ID)) {
325
- ?>
326
- <div class="wc-field-captcha wpdiscuz-item">
327
- <input type="text" maxlength="5" value="" required="required" name="wc_captcha" class="wc_field_input wc_field_captcha">
328
- <span class="wc-label wc-captcha-label">
329
- <?php
330
- $cData = $this->createCaptchaImage();
331
- $key = $cData['key'];
332
- $message = $cData['code'] ? 'src="' . plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'utils' . WPDISCUZ_DS . 'temp' . WPDISCUZ_DS . $cData['message']) . '"' : 'alt="' . $cData['message'] . '"';
333
- ?>
334
- <a class="wpdiscuz-nofollow" href="#" rel="nofollow">
335
- <img class="wc_captcha_img" <?php echo $message; ?>/>
336
- </a>
337
- <a class="wpdiscuz-nofollow wc_captcha_refresh_img" href="#" rel="nofollow">
338
- <img class="" src="<?php echo plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'assets' . WPDISCUZ_DS . 'img' . WPDISCUZ_DS . 'captcha-loading.png'); ?>">
339
- </a>
340
- <input type="hidden" id="<?php echo $key; ?>" class="wpdiscuz-cnonce" name="cnonce" value="<?php echo $key; ?>" />
341
- </span>
342
- <span style="" class="captcha_msg"><?php echo $this->optionsSerialized->phrases['wc_captcha_text']; ?></span>
343
- </div>
344
- <?php
345
  }
346
  ?>
347
  <div class="wc-field-submit">
348
- <?php if (!$current_user->ID && $this->optionsSerialized->weburlShowHide) { ?>
349
- <div class="wc-field-website wpdiscuz-item">
350
- <input type="url" placeholder="<?php echo $this->optionsSerialized->phrases['wc_website_text']; ?>" value="" name="wc_website" class="wc_website wc_field_input">
351
- </div>
352
- <?php } ?>
353
  <?php if ($this->optionsSerialized->wordpressThreadComments || class_exists('Prompt_Comment_Form_Handling')) { ?>
354
  <?php
355
  if ($this->optionsSerialized->showHideReplyCheckbox) {
356
  $wpdiscuz_subscription_type = '';
357
- if ($current_user->ID) {
358
- $wpdiscuz_subscription_type = $this->dbManager->hasSubscription($post->ID, $current_user->user_email);
359
  }
360
  }
361
  $isShowSubscribeWrapper = (isset($wpdiscuz_subscription_type) && ($wpdiscuz_subscription_type == '' || $wpdiscuz_subscription_type == 'comment')) ? true : false;
@@ -378,9 +371,11 @@ class WpdiscuzHelper {
378
  <?php } ?>
379
  <input type="button" class="wc_comm_submit button alt" value="<?php echo $this->optionsSerialized->phrases['wc_submit_text']; ?>" name="submit">
380
  </div>
381
- <div style="clear:both"></div>
382
  </div>
 
383
  </div>
 
384
  <?php wp_nonce_field(WpDiscuzConstants::ACTION_FORM_NONCE, 'wpdiscuz_comment_form_nonce'); ?>
385
  <input type="hidden" value="<?php echo $uniqueId; ?>" name="wpdiscuz_unique_id">
386
  </form>
@@ -445,8 +440,8 @@ class WpdiscuzHelper {
445
  public function generateCaptcha() {
446
  $messageArray = array();
447
  if (isset($_POST['wpdiscuzAjaxData'])) {
448
- parse_str($_POST['wpdiscuzAjaxData']);
449
- $uniqueId = trim($uniqueId);
450
  $cData = $this->createCaptchaImage();
451
  $messageArray['code'] = $cData['code'];
452
  $messageArray['key'] = $cData['key'];
@@ -456,26 +451,22 @@ class WpdiscuzHelper {
456
  }
457
 
458
  private function createCaptchaImage() {
459
- if (defined('DISABLE_WP_CRON') && DISABLE_WP_CRON == true) {
460
- $this->removeOldFiles();
461
- }
462
-
463
  $captchaData = array();
464
  $filesPath = plugin_dir_path(__FILE__) . 'captcha' . WPDISCUZ_DS;
465
 
 
 
 
 
 
 
 
466
  if (!(@is_writable($this->captchaDir))) {
467
- if (!@chmod($this->captchaDir, 0777)) {
468
- $captchaData['code'] = 0;
469
- $captchaData['key'] = '';
470
- $captchaData['message'] = $this->msgPermsDeniedError;
471
- return $captchaData;
472
- }
473
- if (!(@is_writable($this->captchaDir))) {
474
- $captchaData['code'] = 0;
475
- $captchaData['key'] = '';
476
- $captchaData['message'] = $this->msgDirectoryNotWritable;
477
- return $captchaData;
478
- }
479
  }
480
 
481
  if (!function_exists('imagecreatefrompng')) {
@@ -491,7 +482,7 @@ class WpdiscuzHelper {
491
  $captchaData['message'] = $this->msgImgCreateError;
492
  return $captchaData;
493
  }
494
- $t = time();
495
  $chars = '123456789abcdefghijklmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ';
496
  $randomString = '';
497
  $prefix = '';
@@ -531,7 +522,6 @@ class WpdiscuzHelper {
531
  imagedestroy($im);
532
  $key = $this->createAnswer($prefix, $t);
533
  $captchaData['key'] = $prefix . $key;
534
- @chmod($this->captchaDir, 0755);
535
  return $captchaData;
536
  }
537
 
@@ -551,7 +541,7 @@ class WpdiscuzHelper {
551
  return $key;
552
  }
553
 
554
- public function checkCaptcha($key, $fileName, $captcha) {
555
  if (!$key || !$fileName || !$captcha) {
556
  return false;
557
  }
@@ -564,36 +554,31 @@ class WpdiscuzHelper {
564
  return is_readable($filePath) && $tKey == $key && $tAnswer == hash_hmac('sha256', $captcha, $key);
565
  }
566
 
567
- public function scheduleTask() {
568
- $timestamp = wp_next_scheduled('wpdiscuzRemoveOldFiles');
569
- if ($timestamp == false) {
570
- wp_schedule_event(time(), 'hourly', 'wpdiscuzRemoveOldFiles');
571
- }
572
- }
573
-
574
- public function unScheduleTask() {
575
- wp_clear_scheduled_hook('wpdiscuzRemoveOldFiles');
576
- if ($this->captchaDir && file_exists($this->captchaDir)) {
577
- $this->removeOldFiles(true);
578
- }
579
- }
580
-
581
- public function removeOldFiles($deactivate = false) {
582
- $files = scandir($this->captchaDir);
583
- if ($files && is_array($files)) {
584
- foreach ($files as $file) {
585
- if ($file != '.' && $file != '..' && $file != '.htaccess') {
586
- $fileName = $this->captchaDir . WPDISCUZ_DS . $file;
587
- $fData = stat($fileName);
588
- if (is_file($fileName) && $fData) {
589
- $expired = $fData['mtime'] + (60 * 60 + 1000);
590
- if ($expired < time() || $deactivate) {
591
- unlink($fileName);
592
  }
593
  }
594
  }
595
  }
 
596
  }
 
 
 
 
 
597
  }
598
 
599
  /**
@@ -614,5 +599,30 @@ class WpdiscuzHelper {
614
  return wp_trim_words($commentContent, $this->optionsSerialized->commentReadMoreLimit, $readMoreLink);
615
  }
616
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
617
  }
618
 
41
  'del' => array('datetime' => array()),
42
  'span' => array('id' => array(), 'class' => array(), 'title' => array())
43
  );
44
+ public $captchaDir;
45
  private $captchaString;
46
+ public $msgImgCreateError;
47
  private $msgPermsDeniedError;
48
+ public $msgGDLibraryDisabled;
49
+ public $msgPNGCreationDisabled;
50
+ public $captchaError = '';
51
 
52
+ function __construct($optionsSerialized, $dbManager) {
53
+ $this->optionsSerialized = $optionsSerialized;
54
  $this->dbManager = $dbManager;
55
  $this->captchaDir = WPDISCUZ_DIR_PATH . WPDISCUZ_DS . 'utils' . WPDISCUZ_DS . 'temp';
56
  $this->msgImgCreateError = __('Cannot create image file', 'wpdiscuz');
57
  $this->msgPermsDeniedError = __('Permission denied for file creation', 'wpdiscuz');
 
58
  $this->msgGDLibraryDisabled = __('PHP GD2 library is disabled', 'wpdiscuz');
59
  $this->msgPNGCreationDisabled = __('PNG image creation disabled', 'wpdiscuz');
60
  }
268
  return $user_can_comment;
269
  }
270
 
271
+ public function formBuilder($isMain, $uniqueId, $commentsCount, $currentUser) {
272
  global $post;
273
 
274
+ $isNameRequired = ($this->optionsSerialized->isNameFieldRequired) ? 'required="required"' : '';
275
+ $isEmailRequired = ($this->optionsSerialized->isEmailFieldRequired) ? 'required="required"' : '';
276
 
277
  if (!$isMain || $commentsCount) {
278
  $textarea_placeholder = $this->optionsSerialized->phrases['wc_comment_join_text'];
279
  } else {
280
  $textarea_placeholder = $this->optionsSerialized->phrases['wc_comment_start_text'];
281
  }
282
+
283
+ $commentTextLengthRange = (intval($this->optionsSerialized->commentTextMinLength) && intval($this->optionsSerialized->commentTextMaxLength)) ? 'data-validate-length-range="' . $this->optionsSerialized->commentTextMinLength . ',' . $this->optionsSerialized->commentTextMaxLength . '"' : '';
284
  ?>
285
  <div class="wc-form-wrapper <?php echo!$isMain ? 'wc-secondary-form-wrapper' : 'wc-main-form-wrapper'; ?>" <?php echo!$isMain ? "id='wc-secondary-form-wrapper-$uniqueId' style='display: none;'" : "id='wc-main-form-wrapper-$uniqueId'"; ?> >
286
  <div class="wpdiscuz-comment-message" style="display: block;"></div>
288
  <div class="wc-secondary-forms-social-content"></div>
289
  <?php } ?>
290
  <?php
291
+ if ($this->isGuestCanComment($currentUser->ID)) {
292
  ?>
293
+ <form class="wc_comm_form <?php echo!$isMain ? 'wc-secondary-form-wrapper' : 'wc_main_comm_form'; ?>" method="post" action="" enctype="multipart/form-data">
294
  <div class="wc-field-comment">
 
295
  <?php if ($this->optionsSerialized->wordpressShowAvatars) { ?>
296
  <div class="wc-field-avatararea">
297
+ <?php echo get_avatar($currentUser->ID, 48); ?>
298
  </div>
299
  <?php } ?>
300
  <div class="wpdiscuz-item wc-field-textarea" <?php
302
  echo ' style="margin-left: 0;"';
303
  }
304
  ?>>
305
+ <textarea <?php echo $commentTextLengthRange; ?> placeholder="<?php echo $textarea_placeholder; ?>" required name="wc_comment" class="wc_comment wc_field_input"></textarea>
306
+ <?php
307
+ if (class_exists("wpDiscuzSmile")) {
308
+ global $wpDiscuzSmile;
309
+ $wpDiscuzSmile->smileHtml($uniqueId);
310
+ }
311
+ ?>
312
  </div>
313
+ <div class="clearfix"></div>
314
  </div>
315
+ <div class="wc-form-footer" style="display: none;">
316
+ <?php if (!$currentUser->ID) { ?>
317
+ <?php $nameLengthRange = (intval($this->optionsSerialized->commenterNameMinLength) >= 3 && (intval($this->optionsSerialized->commenterNameMaxLength) >= 3 && intval($this->optionsSerialized->commenterNameMaxLength) <= 50)) ? 'data-validate-length-range="' . $this->optionsSerialized->commenterNameMinLength . ',' . $this->optionsSerialized->commenterNameMaxLength . '"' : ''; ?>
318
  <div class="wc-author-data">
319
  <div class="wc-field-name wpdiscuz-item">
320
+ <input type="text" <?php echo $nameLengthRange; ?> maxlength="<?php echo $this->optionsSerialized->commenterNameMaxLength; ?>" placeholder="<?php echo $this->optionsSerialized->phrases['wc_name_text']; ?>" value="" <?php echo $isNameRequired; ?> name="wc_name" class="wc_name wc_field_input" />
321
  </div>
322
  <div class="wc-field-email wpdiscuz-item">
323
+ <input type="email" placeholder="<?php echo $this->optionsSerialized->phrases['wc_email_text']; ?>" value="" <?php echo $isEmailRequired; ?> name="wc_email" class="wc_email wc_field_input email" />
324
  </div>
325
+ <?php if (!$currentUser->ID && $this->optionsSerialized->weburlShowHide) { ?>
326
+ <div class="wc-field-website wpdiscuz-item">
327
+ <input type="url" placeholder="<?php echo $this->optionsSerialized->phrases['wc_website_text']; ?>" value="" name="wc_website" class="wc_website wc_field_input">
328
+ </div>
329
+ <?php } ?>
330
+ <div class="clearfix"></div>
331
  </div>
332
  <?php } ?>
333
  <div class="wc-form-submit">
334
+ <?php do_action('wpdiscuz_field', $uniqueId); ?>
335
  <?php
336
+ if ($this->isShowCaptcha($currentUser->ID)) {
337
+ if (class_exists("wpDiscuzReCaptcha")) {
338
+ global $wpDiscuzReCaptcha;
339
+ $wpDiscuzReCaptcha->recaptchaHtml($uniqueId);
340
+ } else {
341
+ $this->generateCaptchaHtml();
342
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
343
  }
344
  ?>
345
  <div class="wc-field-submit">
 
 
 
 
 
346
  <?php if ($this->optionsSerialized->wordpressThreadComments || class_exists('Prompt_Comment_Form_Handling')) { ?>
347
  <?php
348
  if ($this->optionsSerialized->showHideReplyCheckbox) {
349
  $wpdiscuz_subscription_type = '';
350
+ if ($currentUser->ID) {
351
+ $wpdiscuz_subscription_type = $this->dbManager->hasSubscription($post->ID, $currentUser->user_email);
352
  }
353
  }
354
  $isShowSubscribeWrapper = (isset($wpdiscuz_subscription_type) && ($wpdiscuz_subscription_type == '' || $wpdiscuz_subscription_type == 'comment')) ? true : false;
371
  <?php } ?>
372
  <input type="button" class="wc_comm_submit button alt" value="<?php echo $this->optionsSerialized->phrases['wc_submit_text']; ?>" name="submit">
373
  </div>
374
+ <div class="clearfix"></div>
375
  </div>
376
+ <div class="clearfix"></div>
377
  </div>
378
+ <div class="clearfix"></div>
379
  <?php wp_nonce_field(WpDiscuzConstants::ACTION_FORM_NONCE, 'wpdiscuz_comment_form_nonce'); ?>
380
  <input type="hidden" value="<?php echo $uniqueId; ?>" name="wpdiscuz_unique_id">
381
  </form>
440
  public function generateCaptcha() {
441
  $messageArray = array();
442
  if (isset($_POST['wpdiscuzAjaxData'])) {
443
+ parse_str($_POST['wpdiscuzAjaxData'], $data);
444
+ $uniqueId = trim($data['uniqueId']);
445
  $cData = $this->createCaptchaImage();
446
  $messageArray['code'] = $cData['code'];
447
  $messageArray['key'] = $cData['key'];
451
  }
452
 
453
  private function createCaptchaImage() {
454
+ $dirExists = $this->removeOldFiles();
 
 
 
455
  $captchaData = array();
456
  $filesPath = plugin_dir_path(__FILE__) . 'captcha' . WPDISCUZ_DS;
457
 
458
+ if (!$dirExists) {
459
+ $captchaData['code'] = 0;
460
+ $captchaData['key'] = '';
461
+ $captchaData['message'] = $this->msgImgCreateError;
462
+ return $captchaData;
463
+ }
464
+
465
  if (!(@is_writable($this->captchaDir))) {
466
+ $captchaData['code'] = 0;
467
+ $captchaData['key'] = '';
468
+ $captchaData['message'] = $this->msgPermsDeniedError;
469
+ return $captchaData;
 
 
 
 
 
 
 
 
470
  }
471
 
472
  if (!function_exists('imagecreatefrompng')) {
482
  $captchaData['message'] = $this->msgImgCreateError;
483
  return $captchaData;
484
  }
485
+ $t = str_replace('.', '', $this->getmicrotime());
486
  $chars = '123456789abcdefghijklmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ';
487
  $randomString = '';
488
  $prefix = '';
522
  imagedestroy($im);
523
  $key = $this->createAnswer($prefix, $t);
524
  $captchaData['key'] = $prefix . $key;
 
525
  return $captchaData;
526
  }
527
 
541
  return $key;
542
  }
543
 
544
+ public function checkCaptchaFile($key, $fileName, $captcha) {
545
  if (!$key || !$fileName || !$captcha) {
546
  return false;
547
  }
554
  return is_readable($filePath) && $tKey == $key && $tAnswer == hash_hmac('sha256', $captcha, $key);
555
  }
556
 
557
+ public function removeOldFiles($minutes = 30, $deactivate = false) {
558
+ $minutes = apply_filters('wpdiscuz_captcha_expired', $minutes);
559
+ if ($this->captchaDir && file_exists($this->captchaDir) && intval($minutes)) {
560
+ $files = scandir($this->captchaDir);
561
+ if ($files && is_array($files)) {
562
+ foreach ($files as $file) {
563
+ if ($file != '.' && $file != '..' && $file != '.htaccess') {
564
+ $fileName = $this->captchaDir . WPDISCUZ_DS . $file;
565
+ $mTime = substr($file, WpdiscuzCore::CAPTCHA_LENGTH + 1, 10);
566
+ if (is_file($fileName) && $mTime) {
567
+ $expired = $mTime + ($minutes * 60);
568
+ if ($expired < time() || $deactivate) {
569
+ unlink($fileName);
570
+ }
 
 
 
 
 
 
 
 
 
 
 
571
  }
572
  }
573
  }
574
  }
575
+ return true;
576
  }
577
+ return false;
578
+ }
579
+
580
+ public function removeAllFiles() {
581
+ $this->removeOldFiles(true);
582
  }
583
 
584
  /**
599
  return wp_trim_words($commentContent, $this->optionsSerialized->commentReadMoreLimit, $readMoreLink);
600
  }
601
 
602
+ private function generateCaptchaHtml() {
603
+ ?>
604
+ <div class="wc-field-captcha wpdiscuz-item">
605
+ <div class="wc-captcha-input">
606
+ <input type="text" maxlength="5" value="" required="required" name="wc_captcha" class="wc_field_input wc_field_captcha" placeholder="Code" title="Insert the CAPTCHA code">
607
+ </div>
608
+ <div class="wc-label wc-captcha-label">
609
+ <?php
610
+ if ($this->optionsSerialized->isCaptchaInSession) {
611
+ $key = uniqid('c');
612
+ $message = 'src="' . plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'utils' . WPDISCUZ_DS . 'captcha' . WPDISCUZ_DS . 'captcha.php?key=' . $key) . '"';
613
+ } else {
614
+ $cData = $this->createCaptchaImage();
615
+ $key = $cData['key'];
616
+ $message = $cData['code'] ? 'src="' . plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'utils' . WPDISCUZ_DS . 'temp' . WPDISCUZ_DS . $cData['message']) . '"' : 'alt="' . $cData['message'] . '"';
617
+ }
618
+ ?>
619
+ <a class="wpdiscuz-nofollow" href="#" rel="nofollow"><img class="wc_captcha_img" <?php echo $message; ?> width="80" height="26"/></a><a class="wpdiscuz-nofollow wc_captcha_refresh_img" href="#" rel="nofollow"><img class="" src="<?php echo plugins_url(WPDISCUZ_DIR_NAME . WPDISCUZ_DS . 'assets' . WPDISCUZ_DS . 'img' . WPDISCUZ_DS . 'captcha-loading.png'); ?>" width="16" height="16"/></a>
620
+ <input type="hidden" id="<?php echo $key; ?>" class="wpdiscuz-cnonce" name="cnonce" value="<?php echo $key; ?>" />
621
+ </div>
622
+ <div class="clearfix"></div>
623
+ </div>
624
+ <?php
625
+ }
626
+
627
  }
628