Comments – wpDiscuz - Version 3.0.7

Version Description

  • Added: Long comment text breaking function with "Read more" link
  • Added: Option to set maximum number of comment text words before breaking.
  • Added: Turkish (tr_TR) translation, thanks to Enes Emen
  • Optimized: some core functions and reduced database requests (SQL queries)
  • accelerated: new and faster function to recursively get comments (1.5s faster for 100 comments)
  • Fixed Bug: problems related to comment edit/save functions

IMPORTANT:

  • If you have JatPack 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.0.7
Comparing to
See all releases

Code changes from version 3.0.6 to 3.0.7

assets/css/wpdiscuz.min.css CHANGED
@@ -1,3 +1 @@
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 .share_buttons_box{display:none}#wpcomm .wc-comment.wc-no-left-margin{margin-left:0!important}div.wc_modal{background:none repeat scroll 0 0 #ededed;color:#444;font-size:18px;font-weight:normal;padding:45px 10px 50px 10px!important;text-align:center;line-height:25px}.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}#wc_openModalFormAction>div#wc_response_info{width:200px;background:none repeat scroll 0 0 #ededed;color:#444;font-size:18px;font-weight:normal;padding:45px 10px 50px 10px!important;text-align:center;line-height:25px}#wc_openModalFormAction>div#wc_response_info a.close{background-position-x:right;background-position-y:top}#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;max-height:200px}#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-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; }}
2
-
3
-
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 .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-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;}
 
 
assets/js/wpdiscuz.js CHANGED
@@ -25,6 +25,7 @@ jQuery(document).ready(function ($) {
25
 
26
  addTooltipster();
27
  loginButtonsClone();
 
28
  if (commentsVoteOrder) {
29
  $('.wpdiscuz-vote-sort-up').addClass('wpdiscuz-sort-button-active');
30
  wpdiscuzCommentOrderBy = 'meta_value_num';
@@ -176,7 +177,7 @@ jQuery(document).ready(function ($) {
176
  addCookie(wcForm, obj);
177
  wcForm.get(0).reset();
178
  setCookieInForm();
179
-
180
  } else {
181
  message = wpdiscuz_ajax_obj.wpdiscuz_options[messageKey];
182
  wpdiscuzSetCommentMsg(wcForm, messageKey, message, true);
@@ -259,13 +260,14 @@ jQuery(document).ready(function ($) {
259
  var commentID = getCommentID(uniqueID);
260
  var editButton = $(this);
261
  var data = 'commentId=' + commentID;
 
262
  getAjaxObject('editComment', data).done(function (response) {
263
  try {
264
  var obj = $.parseJSON(response);
265
  var message = '';
266
  var messageKey = obj.code;
267
  if (parseInt(messageKey) >= 0) {
268
- wcCommentTextBeforeEditing = obj.message;
269
  var editableTextarea = '<textarea required="required" name="wc_comment" class="wc_comment wc_field_input wc_edit_comment" id="wc_edit_comment-' + uniqueID + '" style="min-height: 2em;">' + obj.message + '</textarea>';
270
  $('#wc-comm-' + uniqueID + ' > .wc-comment-right .wc-comment-text').replaceWith(editableTextarea);
271
  document.getElementById('wc_edit_comment-' + uniqueID).focus();
@@ -367,6 +369,7 @@ jQuery(document).ready(function ($) {
367
  $('.wpdiscuz_single').remove();
368
  isRun = false;
369
  wpdiscuzHasMoreComments = obj.is_show_load_more;
 
370
  } catch (e) {
371
  console.log(e);
372
  }
@@ -547,6 +550,7 @@ jQuery(document).ready(function ($) {
547
  commentObject = message[i];
548
  addCommentToTree(commentObject.comment_parent, commentObject.comment_html);
549
  }
 
550
  }
551
  }
552
 
@@ -578,6 +582,27 @@ jQuery(document).ready(function ($) {
578
  });
579
  });
580
  //============================== LIVE UPDATE ============================== //
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
581
  //============================== FUNCTIONS ============================== //
582
 
583
  function wpdiscuzSetCommentMsg(field, messageKey, message, isFormError) {
@@ -713,6 +738,14 @@ jQuery(document).ready(function ($) {
713
  }
714
  }
715
 
 
 
 
 
 
 
 
 
716
  /**
717
  * @param {type} action the action key
718
  * @param {type} data the request properties
25
 
26
  addTooltipster();
27
  loginButtonsClone();
28
+ displayShowHideReplies();
29
  if (commentsVoteOrder) {
30
  $('.wpdiscuz-vote-sort-up').addClass('wpdiscuz-sort-button-active');
31
  wpdiscuzCommentOrderBy = 'meta_value_num';
177
  addCookie(wcForm, obj);
178
  wcForm.get(0).reset();
179
  setCookieInForm();
180
+ displayShowHideReplies();
181
  } else {
182
  message = wpdiscuz_ajax_obj.wpdiscuz_options[messageKey];
183
  wpdiscuzSetCommentMsg(wcForm, messageKey, message, true);
260
  var commentID = getCommentID(uniqueID);
261
  var editButton = $(this);
262
  var data = 'commentId=' + commentID;
263
+ wcCommentTextBeforeEditing = $('#wc-comm-' + uniqueID + ' .wc-comment-text').html();
264
  getAjaxObject('editComment', data).done(function (response) {
265
  try {
266
  var obj = $.parseJSON(response);
267
  var message = '';
268
  var messageKey = obj.code;
269
  if (parseInt(messageKey) >= 0) {
270
+ // wcCommentTextBeforeEditing = obj.message;
271
  var editableTextarea = '<textarea required="required" name="wc_comment" class="wc_comment wc_field_input wc_edit_comment" id="wc_edit_comment-' + uniqueID + '" style="min-height: 2em;">' + obj.message + '</textarea>';
272
  $('#wc-comm-' + uniqueID + ' > .wc-comment-right .wc-comment-text').replaceWith(editableTextarea);
273
  document.getElementById('wc_edit_comment-' + uniqueID).focus();
369
  $('.wpdiscuz_single').remove();
370
  isRun = false;
371
  wpdiscuzHasMoreComments = obj.is_show_load_more;
372
+ displayShowHideReplies();
373
  } catch (e) {
374
  console.log(e);
375
  }
550
  commentObject = message[i];
551
  addCommentToTree(commentObject.comment_parent, commentObject.comment_html);
552
  }
553
+ displayShowHideReplies();
554
  }
555
  }
556
 
582
  });
583
  });
584
  //============================== LIVE UPDATE ============================== //
585
+ //============================== READ MORE ============================== //
586
+ $(document).delegate('.wpdiscuz-readmore', 'click', function () {
587
+ var clickedBtn = $(this);
588
+ var uniqueId = getUniqueID($(clickedBtn));
589
+ var commentId = getCommentID(uniqueId);
590
+ var data = 'commentId=' + commentId;
591
+ getAjaxObject('readMore', data).done(function (response) {
592
+ try {
593
+ var obj = $.parseJSON(response);
594
+ if (obj.code) {
595
+ clickedBtn.after(' ' + obj.message);
596
+ $('.wpdiscuz-hellip').remove();
597
+ clickedBtn.remove();
598
+ }
599
+ } catch (e) {
600
+ console.log(e);
601
+ }
602
+ $('.wpdiscuz-loading-bar').hide();
603
+ });
604
+ });
605
+ //============================== READ MORE ============================== //
606
  //============================== FUNCTIONS ============================== //
607
 
608
  function wpdiscuzSetCommentMsg(field, messageKey, message, isFormError) {
738
  }
739
  }
740
 
741
+ function displayShowHideReplies() {
742
+ $('#wcThreadWrapper .wc-comment').each(function (i) {
743
+ if ($('> .wc-reply', this).length) {
744
+ $('> .wc-comment-right .wc-comment-footer .wc-toggle', this).removeClass('wpdiscuz-hidden');
745
+ }
746
+ });
747
+ }
748
+
749
  /**
750
  * @param {type} action the action key
751
  * @param {type} data the request properties
assets/js/wpdiscuz.min.js CHANGED
@@ -1,2 +1,2 @@
1
 
2
- jQuery(document).ready(function(B){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 P=wpdiscuz_ajax_obj.wpdiscuz_options.is_user_logged_in;var p=wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide==0&&!P;var O=wpdiscuz_ajax_obj.wpdiscuz_options.wc_captcha_show_hide_for_members>0&&P;var z=wpdiscuz_ajax_obj.wpdiscuz_options.commentListLoadType;var T=wpdiscuz_ajax_obj.wpdiscuz_options.wordpressIsPaginate;var m=wpdiscuz_ajax_obj.wpdiscuz_options.wc_post_id;var i=wpdiscuz_ajax_obj.wpdiscuz_options.commentListUpdateType;var h=wpdiscuz_ajax_obj.wpdiscuz_options.commentListUpdateTimer;var G=wpdiscuz_ajax_obj.wpdiscuz_options.liveUpdateGuests;var Q=wpdiscuz_ajax_obj.wpdiscuz_options.loadLastCommentId;var a=wpdiscuz_ajax_obj.wpdiscuz_options.wordpress_comment_order;var F=wpdiscuz_ajax_obj.wpdiscuz_options.commentsVoteOrder;var b=0;var k="comment_date_gmt";var K=[];var t=[];C();f();if(F){B(".wpdiscuz-vote-sort-up").addClass("wpdiscuz-sort-button-active");k="meta_value_num";b=1}else{B(".wpdiscuz-date-sort-"+a).addClass("wpdiscuz-sort-button-active")}B("#wc_unsubscribe_message").delay(7000).fadeOut(1500,function(){B(this).remove();location.href=location.href.substring(0,location.href.indexOf("subscribeAnchor")-1)});if(B(".wc_main_comm_form").length){e()}B(document).delegate(".wc-reply-link","click",function(){if(B(this).hasClass("wpdiscuz-clonned")){B("#wc-secondary-form-wrapper-"+l(B(this),0)).slideToggle(700)}else{g(B(this))}e()});B(document).delegate("textarea.wc_comment","focus",function(){B(this).autoGrow();var W=B(this).parents(".wc-form-wrapper");B(".wc-form-footer",W).slideDown(700)});B(document).delegate(".wc-share-link","click",function(){var W=B(this).parents(".wc-comment-right");B(".share_buttons_box",W).slideToggle(1000)});B(document).delegate(".wpdiscuz-nofollow,.wc_captcha_refresh_img,.wc-toggle,.wc-load-more-link","click",function(W){W.preventDefault()});B(document).delegate(".wc-toggle","click",function(){var X=l(B(this),0);var W=B(this);B("#wc-comm-"+X+"> .wc-reply").slideToggle(700,function(){if(B(this).is(":hidden")){W.html(wpdiscuz_ajax_obj.wpdiscuz_options.wc_show_replies_text+" &or;")}else{W.html(wpdiscuz_ajax_obj.wpdiscuz_options.wc_hide_replies_text+" &and;")}})});B(document).delegate(".wc-new-loaded-comment","mouseenter",function(){if(B(this).hasClass("wc-reply")){B(">.wc-comment-right",B(this)).animate({backgroundColor:wpdiscuz_ajax_obj.wpdiscuz_options.wc_reply_bg_color},1500)}else{B(">.wc-comment-right",B(this)).animate({backgroundColor:wpdiscuz_ajax_obj.wpdiscuz_options.wc_comment_bg_color},1500)}});B(document).delegate(".wc_captcha_refresh_img","click",function(){N(B(this))});function N(aa){if(p||O){var Y=aa.parents(".wc-form-wrapper");var W=Y.hasClass("wc-secondary-form-wrapper")?0:1;var ab=l(aa,W);var Z="uniqueId="+ab;var X=d("generateCaptcha",Z);X.done(function(ad){try{var ah=B.parseJSON(ad);if(ah.code==1){var af=B(aa).prev().children(".wc_captcha_img");var aj=af.attr("src");var ac=aj.lastIndexOf("/")+1;var ae=aj.substring(0,ac)+ah.message;af.attr("src",ae);var ai=B(".wpdiscuz-cnonce",Y);ai.attr("id",ah.key);ai.attr("value",ah.key)}}catch(ag){console.log(ag)}})}}B(document).delegate(".wc_comm_submit","click",function(){var aa=1;var X=B(this).parents("form");if(!X.hasClass("wc_main_comm_form")){aa=A(B(this).parents(".wc-comment"))}if(!wpdiscuz_ajax_obj.wpdiscuz_options.is_email_field_required&&B(".wc_email",X).val()){B(".wc_email",X).attr("required","required")}if(!wpdiscuz_ajax_obj.wpdiscuz_options.is_email_field_required&&!(B(".wc_email",X).val())){B(".wc_email",X).removeAttr("required");B(".wc_email",X).next(".alert").html("")}if(wpdiscuzValidator.checkAll(X)){var W=X.serialize()+"&wc_comment_depth="+aa+"&comment_post_ID="+m;if(p||O){var Y=B(".wc_captcha_img",X);var Z=Y.attr("src");var ac=Z.lastIndexOf("/")+1;var ab=Z.substring(ac);W+="&fileName="+ab}if(wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs){W+="&wpdiscuz_zs="+wpdiscuz_ajax_obj.wpdiscuz_options.wpdiscuz_zs}d("addComment",W).done(function(ae){var af="";var ag="";try{var ai=B.parseJSON(ae);af=ai.code;if(parseInt(af)>=0){var ad=ai.is_main;ag=ai.message;B(".wc_header_text_count").html(ai.wc_all_comments_count_new);if(ad){B(".wc-thread-wrapper").prepend(ag)}else{B("#wc-secondary-form-wrapper-"+af).slideToggle(700);if(ai.is_in_same_container==1){B("#wc-secondary-form-wrapper-"+af).after(ag)}else{B("#wc-secondary-form-wrapper-"+af).after(ag.replace("wc-reply","wc-reply wc-no-left-margin"))}}n(ai);S(ai);s(X,ai);X.get(0).reset();e()}else{ag=wpdiscuz_ajax_obj.wpdiscuz_options[af];r(X,af,ag,true)}}catch(ah){if(ae.indexOf("<")>=0&&ae.indexOf(">")>=0){ag=ah}else{ag=ae}r(X,"wc_invalid_field",ag,true)}C();B(".wpdiscuz-loading-bar").hide()})}N(B(".wc_captcha_refresh_img",X))});function n(Y){if(!Y.held_moderate){var X="post_id="+m+"&comment_id="+Y.new_comment_id+"&email="+Y.user_email+"&isParent="+Y.is_main;var W=d("checkNotificationType",X);W.done(function(Z){try{Y=B.parseJSON(Z)}catch(aa){console.log(aa)}})}}function S(Y){if(Y.redirect>0&&Y.new_comment_id){var X="commentId="+Y.new_comment_id;var W=d("redirect",X);W.done(function(Z){Y=B.parseJSON(Z);if(Y.code==1){setTimeout(function(){window.location.href=Y.redirect_to},5000)}})}}function e(){if(B.cookie("wc_author_name")){B(".wc_comm_form .wc_name").val(B.cookie("wc_author_name"))}if(B.cookie("wc_author_email")){B(".wc_comm_form .wc_email").val(B.cookie("wc_author_email"))}if(B.cookie("wc_author_website")){B(".wc_comm_form .wc_website").val(B.cookie("wc_author_website"))}}function s(W,X){if(B(".wc_email",W).val()){B.cookie("wc_author_email",B(".wc_email",W).val())}else{B.cookie("wc_author_email",X.user_email)}if(B(".wc_name",W).val()){B.cookie("wc_author_name",B(".wc_name",W).val())}else{B.cookie("wc_author_name",X.user_name)}B.cookie("wc_author_website",B(".wc_website",W).val())}var R;B(document).delegate(".wc_editable_comment","click",function(){var Z=l(B(this),0);var W=U(Z);var Y=B(this);var X="commentId="+W;d("editComment",X).done(function(ab){try{var af=B.parseJSON(ab);var ad="";var ac=af.code;if(parseInt(ac)>=0){R=af.message;var aa='<textarea required="required" name="wc_comment" class="wc_comment wc_field_input wc_edit_comment" id="wc_edit_comment-'+Z+'" style="min-height: 2em;">'+af.message+"</textarea>";B("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-text").replaceWith(aa);document.getElementById("wc_edit_comment-"+Z).focus();B("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-footer .wc_save_edited_comment").show();aa="";B("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-footer .wc_editable_comment").hide();B("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-footer .wc_cancel_edit").show()}else{ad=wpdiscuz_ajax_obj.wpdiscuz_options[ac];r(Y,ac,ad,false)}}catch(ae){console.log(ae)}B(".wpdiscuz-loading-bar").hide()})});B(document).delegate(".wc_save_edited_comment","click",function(){var ab=l(B(this));var X=U(ab);var W=B("#wc-comm-"+ab+" textarea#wc_edit_comment-"+ab);var Y=W.val();var aa=B(this);if(B.trim(Y).length>0){var Z="commentId="+X+"&commentContent="+Y;d("saveEditedComment",Z).done(function(ac){try{var ag=B.parseJSON(ac);var ad=ag.code;var ae="";if(parseInt(ad)>=0){H(ab,ag.message)}else{ae=wpdiscuz_ajax_obj.wpdiscuz_options[ad];r(aa,ad,ae,false)}W="";Y=""}catch(af){console.log(af)}B(".wpdiscuz-loading-bar").hide()})}});B(document).delegate(".wc_cancel_edit","click",function(){var W=l(B(this));H(W,R)});function H(Y,X){B("#wc-comm-"+Y+" > .wc-comment-right .wc-comment-footer .wc_editable_comment").show();B("#wc-comm-"+Y+" > .wc-comment-right .wc-comment-footer .wc_cancel_edit").hide();B("#wc-comm-"+Y+" > .wc-comment-right .wc-comment-footer .wc_save_edited_comment").hide();var W='<div class="wc-comment-text">'+j(X)+"</div>";B("#wc-comm-"+Y+" #wc_edit_comment-"+Y).replaceWith(W)}function j(Z,Y){var X=(Y||typeof Y==="undefined")?"<br/>":"<br>";var W=(Z+"").replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,"$1"+X+"$2");return W.replace("<br><br>","<br/>")}B(document).delegate(".wc-load-more-submit","click",function(){E()});var o=B("#wpdiscuzHasMoreComments").val();var D=false;if(z==2&&!T){B(".wc-load-more-submit").parents(".wpdiscuz-comment-pagination").hide();B(window).scroll(function(){var W=document.getElementById("wcThreadWrapper").scrollHeight;if(B(window).scrollTop()>=W&&D===false&&o){D=true;E()}})}function E(){var W;if(k=="meta_value_num"){W="offset="+b+"&orderBy="+k+"&order="+a;b++}else{W="orderBy="+k+"&order="+a+"&lastParentId="+u()}W+="&postId="+m+"&loadAllCommnts="+z;d("loadMoreComments",W).done(function(X){try{var Z=B.parseJSON(X);B(".wpdiscuz-comment-pagination").before(Z.comment_list);q(Z);B(".wpdiscuz_single").remove();D=false;o=Z.is_show_load_more}catch(Y){console.log(Y)}C();B(".wpdiscuz-loading-bar").hide();B(".wc-load-more-submit").blur()})}function q(W){if(W.is_show_load_more!=false){M(W.last_parent_id)}else{B(".wc-load-more-submit").parents(".wpdiscuz-comment-pagination").hide()}}B(document).delegate(".wc_vote","click",function(){var W=B(this);var Z="";var aa="";var X=B(this).parents(".wc-comment-right").attr("id");X=X.substring(X.lastIndexOf("-")+1);var Y;if(B(this).hasClass("wc-up")){Y=1}else{Y=-1}var ab="commentId="+X+"&voteType="+Y;d("voteOnComment",ab).done(function(ac){try{var ae=B.parseJSON(ac);Z=ae.code;if(parseInt(Z)>=0){var af=B(".wc-comment-footer .wc-vote-result",B("#comment-"+X));B(af).text(parseInt(B(af).text())+Y)}else{aa=wpdiscuz_ajax_obj.wpdiscuz_options[Z];r(W,Z,aa,false)}}catch(ad){console.log(ad)}B(".wpdiscuz-loading-bar").hide()})});B(document).delegate(".wpdiscuz-sort-button","click",function(){o=1;if(!(B(this).hasClass("wpdiscuz-sort-button-active"))){var Z=B(this);if(B(this).hasClass("wpdiscuz-vote-sort-up")){k="meta_value_num";a="desc"}else{k="comment_date_gmt";a=B(this).hasClass("wpdiscuz-date-sort-desc")?"desc":"asc"}var Y="postId="+m+"&orderBy="+k+"&order="+a;var W="";var X="";d("wpdiscuzSorting",Y).done(function(aa){try{var ac=B.parseJSON(aa);W=ac.code;X=ac.message;if(parseInt(W)>0){B("#wpcomm .wc-thread-wrapper .wc-comment").each(function(){B(this).remove()});B("#wpcomm .wc-thread-wrapper").prepend(X);b=parseInt(ac.loadCount)}else{}J(Z);q(ac)}catch(ab){console.log(ab)}C();B(".wpdiscuz-loading-bar").hide()})}});function J(W){B(".wpdiscuz-sort-buttons .wpdiscuz-sort-button").each(function(){B(this).removeClass("wpdiscuz-sort-button-active")});W.addClass("wpdiscuz-sort-button-active")}function V(){var aa=location.href;var Z=aa.match(/#comment\-(\d+)/);if(Z!==null){var X=Z[1];if(!B("#comment-"+X).length){var Y="commentId="+X;var W=d("getSingleComment",Y);W.done(function(ab){try{var ad=B.parseJSON(ab);B(".wc-thread-wrapper").prepend(ad.message);B("html, body").animate({scrollTop:B(".wc-thread-wrapper").offset().top},1000)}catch(ac){console.log(ac)}C();B(".wpdiscuz-loading-bar").hide()})}}}V();if(i>0&&Q&&(P||(!P&&!G))){setInterval(L,parseInt(h)*1000)}function L(){var Z=y();var X=(B.cookie("wc_author_email")!=undefined&&B.cookie("wc_author_email")!="")?B.cookie("wc_author_email"):"";var Y="postId="+m+"&loadLastCommentId="+Q+"&visibleCommentIds="+Z+"&email="+X;var W=d("liveUpdate",Y);W.done(function(ab){try{var ag=B.parseJSON(ab);if(ag.code==1){if(i==1){w(ag)}else{t=t.concat(ag.message.comments);K=K.concat(ag.message.author_replies);var ac=t.length;var aa=K.length;if(ac>0){var ae=ac+" ";ae+=ac>1?wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_comments_button_text:wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_comment_button_text;B(".wc_new_comment").html(ae).show()}else{B(".wc_new_comment").hide()}if(aa>0){var ad=aa+" ";ad+=aa>1?wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_replies_button_text:wpdiscuz_ajax_obj.wpdiscuz_options.wc_new_reply_button_text;B(".wc_new_reply").html(ad).show()}else{B(".wc_new_reply").hide()}}B(".wc_header_text_count").html(ag.wc_all_comments_count_new);Q=ag.loadLastCommentId}}catch(af){console.log(af)}C();B(".wpdiscuz-loading-bar").hide()})}function w(Z){if(Z.message!==undefined){var W;var Y=Z.message;for(var X=0;X<Y.length;X++){W=Y[X];v(W.comment_parent,W.comment_html)}}}B(document).delegate(".wc-update-on-click","click",function(){var W;var X=B(this);if(X.hasClass("wc_new_comment")){W=t.join()}else{W=K.join()}d("updateOnClick",W).done(function(Y){try{var aa=B.parseJSON(Y);w(aa);if(X.hasClass("wc_new_comment")){t=[];B(".wc_new_comment").hide()}else{K=[];B(".wc_new_reply").hide()}}catch(Z){console.log(Z)}C();B(".wpdiscuz-loading-bar").hide()})});function r(aa,X,Z,Y){var W;var ab;if(Y){ab=aa.parents(".wc-form-wrapper")}else{ab=aa.closest(".wc-comment")}W=ab.children(".wpdiscuz-comment-message");W.addClass(X);W.html(Z);W.show().delay(5000).fadeOut(1000,function(){W.removeClass();W.addClass("wpdiscuz-comment-message");W.html("")})}function g(X){var Y=l(X,0);B("#wpdiscuz_form_anchor-"+Y).before(I(Y));var W=B("#wc-secondary-form-wrapper-"+Y);W.slideToggle(700,function(){X.addClass("wpdiscuz-clonned")});N(B(".wc_captcha_refresh_img",W))}function I(X){var W=B("#wpdiscuz_hidden_secondary_form").html();return W.replace(/wpdiscuzuniqueid/g,X)}function l(Y,X){var W="";if(X){W=Y.parents(".wc-main-form-wrapper").attr("id")}else{W=Y.parents(".wc-comment").attr("id")}var Z=W.substring(W.lastIndexOf("-")+1);return Z}function U(W){return W.substring(0,W.indexOf("_"))}function x(X){var W=X.substring(X.indexOf("_")+1);return W}function u(){var W=B(".wc-load-more-link").attr("href");return W.substring(W.lastIndexOf("=")+1)}function M(W){var X=B(".wc-load-more-link").attr("href");B(".wc-load-more-link").attr("href",X.replace(/[\d]+$/m,W));if(z!=2){B(".wpdiscuz-comment-pagination").show()}}function A(Y){var X=Y.attr("class");var W=X.split(" ");var Z="";B.each(W,function(aa,ab){if("wc_comment_level"===c(ab,false)){Z=c(ab,true)}});return parseInt(Z)+1}function c(W,X){var Y="";if(X){Y=W.substring(W.indexOf("-")+1)}else{Y=W.substring(0,W.indexOf("-"))}return Y}function v(Y,X){if(Y==0){B(".wc-thread-wrapper").prepend(X)}else{var W=l(B("#comment-"+Y),0);B("#wpdiscuz_form_anchor-"+W).after(X)}}function y(){var Y;var W;var X="";B(".wc-comment-right").each(function(){Y=l(B(this),0);W=U(Y);X+=W+","});return X}function C(){B(".wc-comment-img-link").tooltipster({trigger:"click",contentAsHTML:true,interactive:true,multiple:true});B(".wc_tooltipster").tooltipster({offsetY:2,multiple:true})}function f(){if(B(".wc_social_plugin_wrapper .wp-social-login-provider-list").length){B(".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(B(".wc_social_plugin_wrapper .the_champ_login_container").length){B(".wc_social_plugin_wrapper .the_champ_login_container").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(B(".wc_social_plugin_wrapper .social_connect_form").length){B(".wc_social_plugin_wrapper .social_connect_form").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(B(".wc_social_plugin_wrapper .oneall_social_login_providers").length){B(".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 d(X,W){if(X!=="liveUpdate"&&X!=="generateCaptcha"){B(".wpdiscuz-loading-bar").show()}return B.ajax({type:"POST",url:wpdiscuz_ajax_obj.url,data:{wpdiscuzAjaxData:W,action:X}})}});
1
 
2
+ jQuery(document).ready(function(C){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 A=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 H=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 G=wpdiscuz_ajax_obj.wpdiscuz_options.commentsVoteOrder;var b=0;var l="comment_date_gmt";var L=[];var u=[];D();g();f();if(G){C(".wpdiscuz-vote-sort-up").addClass("wpdiscuz-sort-button-active");l="meta_value_num";b=1}else{C(".wpdiscuz-date-sort-"+a).addClass("wpdiscuz-sort-button-active")}C("#wc_unsubscribe_message").delay(7000).fadeOut(1500,function(){C(this).remove();location.href=location.href.substring(0,location.href.indexOf("subscribeAnchor")-1)});if(C(".wc_main_comm_form").length){e()}C(document).delegate(".wc-reply-link","click",function(){if(C(this).hasClass("wpdiscuz-clonned")){C("#wc-secondary-form-wrapper-"+m(C(this),0)).slideToggle(700)}else{h(C(this))}e()});C(document).delegate("textarea.wc_comment","focus",function(){C(this).autoGrow();var X=C(this).parents(".wc-form-wrapper");C(".wc-form-footer",X).slideDown(700)});C(document).delegate(".wc-share-link","click",function(){var X=C(this).parents(".wc-comment-right");C(".share_buttons_box",X).slideToggle(1000)});C(document).delegate(".wpdiscuz-nofollow,.wc_captcha_refresh_img,.wc-toggle,.wc-load-more-link","click",function(X){X.preventDefault()});C(document).delegate(".wc-toggle","click",function(){var Y=m(C(this),0);var X=C(this);C("#wc-comm-"+Y+"> .wc-reply").slideToggle(700,function(){if(C(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;")}})});C(document).delegate(".wc-new-loaded-comment","mouseenter",function(){if(C(this).hasClass("wc-reply")){C(">.wc-comment-right",C(this)).animate({backgroundColor:wpdiscuz_ajax_obj.wpdiscuz_options.wc_reply_bg_color},1500)}else{C(">.wc-comment-right",C(this)).animate({backgroundColor:wpdiscuz_ajax_obj.wpdiscuz_options.wc_comment_bg_color},1500)}});C(document).delegate(".wc_captcha_refresh_img","click",function(){O(C(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=C.parseJSON(ae);if(ai.code==1){var ag=C(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=C(".wpdiscuz-cnonce",Z);aj.attr("id",ai.key);aj.attr("value",ai.key)}}catch(ah){console.log(ah)}})}}C(document).delegate(".wc_comm_submit","click",function(){var ab=1;var Y=C(this).parents("form");if(!Y.hasClass("wc_main_comm_form")){ab=B(C(this).parents(".wc-comment"))}if(!wpdiscuz_ajax_obj.wpdiscuz_options.is_email_field_required&&C(".wc_email",Y).val()){C(".wc_email",Y).attr("required","required")}if(!wpdiscuz_ajax_obj.wpdiscuz_options.is_email_field_required&&!(C(".wc_email",Y).val())){C(".wc_email",Y).removeAttr("required");C(".wc_email",Y).next(".alert").html("")}if(wpdiscuzValidator.checkAll(Y)){var X=Y.serialize()+"&wc_comment_depth="+ab+"&comment_post_ID="+n;if(q||P){var Z=C(".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=C.parseJSON(af);ag=aj.code;if(parseInt(ag)>=0){var ae=aj.is_main;ah=aj.message;C(".wc_header_text_count").html(aj.wc_all_comments_count_new);if(ae){C(".wc-thread-wrapper").prepend(ah)}else{C("#wc-secondary-form-wrapper-"+ag).slideToggle(700);if(aj.is_in_same_container==1){C("#wc-secondary-form-wrapper-"+ag).after(ah)}else{C("#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()}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)}D();C(".wpdiscuz-loading-bar").hide()})}O(C(".wc_captcha_refresh_img",Y))});function o(Z){if(!Z.held_moderate){var Y="post_id="+n+"&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=C.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=C.parseJSON(aa);if(Z.code==1){setTimeout(function(){window.location.href=Z.redirect_to},5000)}})}}function e(){if(C.cookie("wc_author_name")){C(".wc_comm_form .wc_name").val(C.cookie("wc_author_name"))}if(C.cookie("wc_author_email")){C(".wc_comm_form .wc_email").val(C.cookie("wc_author_email"))}if(C.cookie("wc_author_website")){C(".wc_comm_form .wc_website").val(C.cookie("wc_author_website"))}}function t(X,Y){if(C(".wc_email",X).val()){C.cookie("wc_author_email",C(".wc_email",X).val())}else{C.cookie("wc_author_email",Y.user_email)}if(C(".wc_name",X).val()){C.cookie("wc_author_name",C(".wc_name",X).val())}else{C.cookie("wc_author_name",Y.user_name)}C.cookie("wc_author_website",C(".wc_website",X).val())}var S;C(document).delegate(".wc_editable_comment","click",function(){var aa=m(C(this),0);var X=V(aa);var Z=C(this);var Y="commentId="+X;S=C("#wc-comm-"+aa+" .wc-comment-text").html();d("editComment",Y).done(function(ac){try{var ag=C.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>";C("#wc-comm-"+aa+" > .wc-comment-right .wc-comment-text").replaceWith(ab);document.getElementById("wc_edit_comment-"+aa).focus();C("#wc-comm-"+aa+" > .wc-comment-right .wc-comment-footer .wc_save_edited_comment").show();ab="";C("#wc-comm-"+aa+" > .wc-comment-right .wc-comment-footer .wc_editable_comment").hide();C("#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)}C(".wpdiscuz-loading-bar").hide()})});C(document).delegate(".wc_save_edited_comment","click",function(){var ac=m(C(this));var Y=V(ac);var X=C("#wc-comm-"+ac+" textarea#wc_edit_comment-"+ac);var Z=X.val();var ab=C(this);if(C.trim(Z).length>0){var aa="commentId="+Y+"&commentContent="+Z;d("saveEditedComment",aa).done(function(ad){try{var ah=C.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)}C(".wpdiscuz-loading-bar").hide()})}});C(document).delegate(".wc_cancel_edit","click",function(){var X=m(C(this));I(X,S)});function I(Z,Y){C("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-footer .wc_editable_comment").show();C("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-footer .wc_cancel_edit").hide();C("#wc-comm-"+Z+" > .wc-comment-right .wc-comment-footer .wc_save_edited_comment").hide();var X='<div class="wc-comment-text">'+k(Y)+"</div>";C("#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/>")}C(document).delegate(".wc-load-more-submit","click",function(){F()});var p=C("#wpdiscuzHasMoreComments").val();var E=false;if(A==2&&!U){C(".wc-load-more-submit").parents(".wpdiscuz-comment-pagination").hide();C(window).scroll(function(){var X=document.getElementById("wcThreadWrapper").scrollHeight;if(C(window).scrollTop()>=X&&E===false&&p){E=true;F()}})}function F(){var X;if(l=="meta_value_num"){X="offset="+b+"&orderBy="+l+"&order="+a;b++}else{X="orderBy="+l+"&order="+a+"&lastParentId="+v()}X+="&postId="+n+"&loadAllCommnts="+A;d("loadMoreComments",X).done(function(Y){try{var aa=C.parseJSON(Y);C(".wpdiscuz-comment-pagination").before(aa.comment_list);r(aa);C(".wpdiscuz_single").remove();E=false;p=aa.is_show_load_more;f()}catch(Z){console.log(Z)}D();C(".wpdiscuz-loading-bar").hide();C(".wc-load-more-submit").blur()})}function r(X){if(X.is_show_load_more!=false){N(X.last_parent_id)}else{C(".wc-load-more-submit").parents(".wpdiscuz-comment-pagination").hide()}}C(document).delegate(".wc_vote","click",function(){var X=C(this);var aa="";var ab="";var Y=C(this).parents(".wc-comment-right").attr("id");Y=Y.substring(Y.lastIndexOf("-")+1);var Z;if(C(this).hasClass("wc-up")){Z=1}else{Z=-1}var ac="commentId="+Y+"&voteType="+Z;d("voteOnComment",ac).done(function(ad){try{var af=C.parseJSON(ad);aa=af.code;if(parseInt(aa)>=0){var ag=C(".wc-comment-footer .wc-vote-result",C("#comment-"+Y));C(ag).text(parseInt(C(ag).text())+Z)}else{ab=wpdiscuz_ajax_obj.wpdiscuz_options[aa];s(X,aa,ab,false)}}catch(ae){console.log(ae)}C(".wpdiscuz-loading-bar").hide()})});C(document).delegate(".wpdiscuz-sort-button","click",function(){p=1;if(!(C(this).hasClass("wpdiscuz-sort-button-active"))){var aa=C(this);if(C(this).hasClass("wpdiscuz-vote-sort-up")){l="meta_value_num";a="desc"}else{l="comment_date_gmt";a=C(this).hasClass("wpdiscuz-date-sort-desc")?"desc":"asc"}var Z="postId="+n+"&orderBy="+l+"&order="+a;var X="";var Y="";d("wpdiscuzSorting",Z).done(function(ab){try{var ad=C.parseJSON(ab);X=ad.code;Y=ad.message;if(parseInt(X)>0){C("#wpcomm .wc-thread-wrapper .wc-comment").each(function(){C(this).remove()});C("#wpcomm .wc-thread-wrapper").prepend(Y);b=parseInt(ad.loadCount)}else{}K(aa);r(ad)}catch(ac){console.log(ac)}D();C(".wpdiscuz-loading-bar").hide()})}});function K(X){C(".wpdiscuz-sort-buttons .wpdiscuz-sort-button").each(function(){C(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(!C("#comment-"+Y).length){var Z="commentId="+Y;var X=d("getSingleComment",Z);X.done(function(ac){try{var ae=C.parseJSON(ac);C(".wc-thread-wrapper").prepend(ae.message);C("html, body").animate({scrollTop:C(".wc-thread-wrapper").offset().top},1000)}catch(ad){console.log(ad)}D();C(".wpdiscuz-loading-bar").hide()})}}}W();if(j>0&&R&&(Q||(!Q&&!H))){setInterval(M,parseInt(i)*1000)}function M(){var aa=z();var Y=(C.cookie("wc_author_email")!=undefined&&C.cookie("wc_author_email")!="")?C.cookie("wc_author_email"):"";var Z="postId="+n+"&loadLastCommentId="+R+"&visibleCommentIds="+aa+"&email="+Y;var X=d("liveUpdate",Z);X.done(function(ac){try{var ah=C.parseJSON(ac);if(ah.code==1){if(j==1){x(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;C(".wc_new_comment").html(af).show()}else{C(".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;C(".wc_new_reply").html(ae).show()}else{C(".wc_new_reply").hide()}}C(".wc_header_text_count").html(ah.wc_all_comments_count_new);R=ah.loadLastCommentId}}catch(ag){console.log(ag)}D();C(".wpdiscuz-loading-bar").hide()})}function x(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()}}C(document).delegate(".wc-update-on-click","click",function(){var X;var Y=C(this);if(Y.hasClass("wc_new_comment")){X=u.join()}else{X=L.join()}d("updateOnClick",X).done(function(Z){try{var ab=C.parseJSON(Z);x(ab);if(Y.hasClass("wc_new_comment")){u=[];C(".wc_new_comment").hide()}else{L=[];C(".wc_new_reply").hide()}}catch(aa){console.log(aa)}D();C(".wpdiscuz-loading-bar").hide()})});C(document).delegate(".wpdiscuz-readmore","click",function(){var Z=C(this);var aa=m(C(Z));var X=V(aa);var Y="commentId="+X;d("readMore",Y).done(function(ab){try{var ad=C.parseJSON(ab);if(ad.code){Z.after(" "+ad.message);C(".wpdiscuz-hellip").remove();Z.remove()}}catch(ac){console.log(ac)}C(".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(5000).fadeOut(1000,function(){X.removeClass();X.addClass("wpdiscuz-comment-message");X.html("")})}function h(Y){var Z=m(Y,0);C("#wpdiscuz_form_anchor-"+Z).before(J(Z));var X=C("#wc-secondary-form-wrapper-"+Z);X.slideToggle(700,function(){Y.addClass("wpdiscuz-clonned")});O(C(".wc_captcha_refresh_img",X))}function J(Y){var X=C("#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 y(Y){var X=Y.substring(Y.indexOf("_")+1);return X}function v(){var X=C(".wc-load-more-link").attr("href");return X.substring(X.lastIndexOf("=")+1)}function N(X){var Y=C(".wc-load-more-link").attr("href");C(".wc-load-more-link").attr("href",Y.replace(/[\d]+$/m,X));if(A!=2){C(".wpdiscuz-comment-pagination").show()}}function B(Z){var Y=Z.attr("class");var X=Y.split(" ");var aa="";C.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){C(".wc-thread-wrapper").prepend(Y)}else{var X=m(C("#comment-"+Z),0);C("#wpdiscuz_form_anchor-"+X).after(Y)}}function z(){var Z;var X;var Y="";C(".wc-comment-right").each(function(){Z=m(C(this),0);X=V(Z);Y+=X+","});return Y}function D(){C(".wc-comment-img-link").tooltipster({trigger:"click",contentAsHTML:true,interactive:true,multiple:true});C(".wc_tooltipster").tooltipster({offsetY:2,multiple:true})}function g(){if(C(".wc_social_plugin_wrapper .wp-social-login-provider-list").length){C(".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(C(".wc_social_plugin_wrapper .the_champ_login_container").length){C(".wc_social_plugin_wrapper .the_champ_login_container").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(C(".wc_social_plugin_wrapper .social_connect_form").length){C(".wc_social_plugin_wrapper .social_connect_form").clone().prependTo("#wpdiscuz_hidden_secondary_form > .wc-form-wrapper > .wc-secondary-forms-social-content")}else{if(C(".wc_social_plugin_wrapper .oneall_social_login_providers").length){C(".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(){C("#wcThreadWrapper .wc-comment").each(function(X){if(C("> .wc-reply",this).length){C("> .wc-comment-right .wc-comment-footer .wc-toggle",this).removeClass("wpdiscuz-hidden")}})}function d(Y,X){if(Y!=="liveUpdate"&&Y!=="generateCaptcha"){C(".wpdiscuz-loading-bar").show()}return C.ajax({type:"POST",url:wpdiscuz_ajax_obj.url,data:{wpdiscuzAjaxData:X,action:Y}})}});
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.0.6
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/
@@ -24,6 +24,7 @@ include_once 'utils/class.WpdiscuzHelper.php';
24
  include_once 'utils/class.WpdiscuzEmailHelper.php';
25
  include_once 'utils/class.WpdiscuzOptimizationHelper.php';
26
  include_once 'manager/class.WpdiscuzDBManager.php';
 
27
  include_once 'templates/comment/class.WpdiscuzTemplateBuilder.php';
28
 
29
  class WpdiscuzCore implements WpDiscuzConstants {
@@ -45,12 +46,14 @@ class WpdiscuzCore implements WpDiscuzConstants {
45
  $this->helper = new WpdiscuzHelper($this->optionsSerialized, $this->dbManager);
46
  $this->emailHelper = new WpdiscuzEmailHelper($this->optionsSerialized, $this->dbManager);
47
  $this->optimizationHelper = new WpdiscuzOptimizationHelper($this->optionsSerialized, $this->dbManager, $this->emailHelper);
 
48
  $this->templateBuilder = new WpdiscuzTemplateBuilder($this->helper, $this->optimizationHelper, $this->dbManager, $this->options, $this->optionsSerialized);
49
  register_activation_hook(__FILE__, array($this->dbManager, 'dbCreateTables'));
50
  register_activation_hook(__FILE__, array($this->helper, 'scheduleTask'));
51
  register_deactivation_hook(__FILE__, array($this->helper, 'unScheduleTask'));
52
  add_action('wpdiscuzRemoveOldFiles', array(&$this->helper, 'removeOldFiles'));
53
  add_action('wp_head', array(&$this, 'initCurrentPostType'));
 
54
 
55
  add_action('plugins_loaded', array(&$this, 'wpdiscuzTextDomain'));
56
  add_action('init', array(&$this, 'initPluginDirName'), 1);
@@ -62,8 +65,6 @@ class WpdiscuzCore implements WpDiscuzConstants {
62
  add_action('wp_ajax_generateCaptcha', array(&$this->helper, 'generateCaptcha'));
63
  add_action('wp_ajax_nopriv_generateCaptcha', array(&$this->helper, 'generateCaptcha'));
64
  }
65
- add_action('wp_ajax_dynamicCss', array(&$this, 'dynamicCss'));
66
- add_action('wp_ajax_nopriv_dynamicCss', array(&$this, 'dynamicCss'));
67
  add_action('wp_ajax_loadMoreComments', array(&$this, 'loadMoreComments'));
68
  add_action('wp_ajax_nopriv_loadMoreComments', array(&$this, 'loadMoreComments'));
69
  add_action('wp_ajax_voteOnComment', array(&$this, 'voteOnComment'));
@@ -99,6 +100,11 @@ class WpdiscuzCore implements WpDiscuzConstants {
99
  add_action('wp_ajax_updateOnClick', array(&$this, 'updateOnClick'));
100
  add_action('wp_ajax_nopriv_updateOnClick', array(&$this, 'updateOnClick'));
101
  }
 
 
 
 
 
102
  }
103
 
104
  public function wpdiscuzTextDomain() {
@@ -247,12 +253,12 @@ class WpdiscuzCore implements WpDiscuzConstants {
247
  $commentMinLength = intval($this->optionsSerialized->commentTextMinLength);
248
  $commentMaxLength = intval($this->optionsSerialized->commentTextMaxLength);
249
  $contentLength = function_exists('mb_strlen') ? mb_strlen($comment_content) : strlen($comment_content);
250
- if ($commentMinLength && $commentMinLength > 0 && $contentLength < $commentMinLength) {
251
  $messageArray['code'] = 'wc_msg_comment_text_min_length';
252
  wp_die(json_encode($messageArray));
253
  }
254
 
255
- if ($commentMaxLength && $commentMaxLength > 0 && $contentLength > $commentMaxLength) {
256
  $messageArray['code'] = 'wc_msg_comment_text_max_length';
257
  wp_die(json_encode($messageArray));
258
  }
@@ -329,7 +335,8 @@ class WpdiscuzCore implements WpDiscuzConstants {
329
  $commentId = intval($commentId);
330
  if ($commentId) {
331
  $comment = get_comment($commentId);
332
- $isEditable = $this->optionsSerialized->commentEditableTime == 'unlimit' ? true : $this->helper->isCommentEditable($comment);
 
333
  if (isset($current_user) && $comment->user_id == $current_user->ID && $isEditable) {
334
  $message_array['code'] = 1;
335
  $message_array['message'] = $comment->comment_content;
@@ -356,9 +363,9 @@ class WpdiscuzCore implements WpDiscuzConstants {
356
  $commentId = intval($commentId);
357
  $comment = get_comment($commentId);
358
  $current_user = wp_get_current_user();
359
- $trimmed_comment_content = trim($commentContent);
360
- if ($trimmed_comment_content && isset($current_user) && $comment->user_id == $current_user->ID) {
361
- if ($trimmed_comment_content != $comment->comment_content) {
362
  $commentContent = wp_kses($commentContent, $this->helper->wc_allowed_tags);
363
  $author_ip = $this->helper->getRealIPAddr();
364
  $userAgent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';
@@ -371,6 +378,7 @@ class WpdiscuzCore implements WpDiscuzConstants {
371
  );
372
  if (wp_update_comment($commentarr)) {
373
  $message_array['code'] = 1;
 
374
  $message_array['message'] = $this->helper->makeClickable($commentContent);
375
  } else {
376
  $message_array['code'] = 'wc_comment_not_updated';
@@ -534,6 +542,31 @@ class WpdiscuzCore implements WpDiscuzConstants {
534
  wp_die();
535
  }
536
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
537
  public function commentCallback($comment, $args, $depth) {
538
  $GLOBALS['comment'] = $comment;
539
  echo $this->templateBuilder->getCommentTemplate($comment, $args, $depth);
@@ -689,11 +722,11 @@ class WpdiscuzCore implements WpDiscuzConstants {
689
  if ($post && in_array($post->post_type, $this->optionsSerialized->postTypes) && is_singular() && post_type_supports($post->post_type, 'comments')) {
690
 
691
  $u_agent = $_SERVER['HTTP_USER_AGENT'];
692
- wp_register_style('wpdiscuz-frontend-css', plugins_url(self::$PLUGIN_DIRECTORY . '/assets/css/wpdiscuz.min.css'));
693
  wp_enqueue_style('wpdiscuz-frontend-css');
694
 
695
  if (is_rtl()) {
696
- wp_register_style('wpdiscuz-frontend-rtl-css', plugins_url(self::$PLUGIN_DIRECTORY . '/assets/css/wpdiscuz-rtl.min.css'));
697
  wp_enqueue_style('wpdiscuz-frontend-rtl-css');
698
  }
699
 
@@ -719,8 +752,6 @@ class WpdiscuzCore implements WpDiscuzConstants {
719
  wp_enqueue_script('wpdiscuz-tooltipster-js');
720
  wp_register_script('autogrowtextarea-js', plugins_url(self::$PLUGIN_DIRECTORY . '/assets/js/jquery.autogrowtextarea.min.js'), array('jquery'), '3.0', false);
721
  wp_enqueue_script('autogrowtextarea-js');
722
- wp_register_style('wpdiscuz-dynamic-css', admin_url('admin-ajax.php') . '?action=dynamicCss', null, get_option(WpdiscuzCore::OPTION_SLUG_VERSION));
723
- wp_enqueue_style('wpdiscuz-dynamic-css');
724
  $wpdiscuz_js_options = $this->optionsSerialized->getOptionsForJs();
725
  $wpdiscuz_js_options['wc_post_id'] = $post->ID;
726
  $wpdiscuz_js_options['loadLastCommentId'] = $this->dbManager->getLastCommentId($post->ID);
@@ -826,11 +857,6 @@ class WpdiscuzCore implements WpDiscuzConstants {
826
  );
827
  }
828
 
829
- public function dynamicCss() {
830
- include __DIR__ . '/includes/dynamic.css.php';
831
- exit();
832
- }
833
-
834
  }
835
 
836
  $wpdiscuz = new WpdiscuzCore();
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.0.7
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/
24
  include_once 'utils/class.WpdiscuzEmailHelper.php';
25
  include_once 'utils/class.WpdiscuzOptimizationHelper.php';
26
  include_once 'manager/class.WpdiscuzDBManager.php';
27
+ include_once 'includes/class.WpdiscuzCss.php';
28
  include_once 'templates/comment/class.WpdiscuzTemplateBuilder.php';
29
 
30
  class WpdiscuzCore implements WpDiscuzConstants {
46
  $this->helper = new WpdiscuzHelper($this->optionsSerialized, $this->dbManager);
47
  $this->emailHelper = new WpdiscuzEmailHelper($this->optionsSerialized, $this->dbManager);
48
  $this->optimizationHelper = new WpdiscuzOptimizationHelper($this->optionsSerialized, $this->dbManager, $this->emailHelper);
49
+ $this->css = new WpdiscuzCss($this->optionsSerialized);
50
  $this->templateBuilder = new WpdiscuzTemplateBuilder($this->helper, $this->optimizationHelper, $this->dbManager, $this->options, $this->optionsSerialized);
51
  register_activation_hook(__FILE__, array($this->dbManager, 'dbCreateTables'));
52
  register_activation_hook(__FILE__, array($this->helper, 'scheduleTask'));
53
  register_deactivation_hook(__FILE__, array($this->helper, 'unScheduleTask'));
54
  add_action('wpdiscuzRemoveOldFiles', array(&$this->helper, 'removeOldFiles'));
55
  add_action('wp_head', array(&$this, 'initCurrentPostType'));
56
+ add_action('wp_head', array(&$this->css, 'initCustomCss'));
57
 
58
  add_action('plugins_loaded', array(&$this, 'wpdiscuzTextDomain'));
59
  add_action('init', array(&$this, 'initPluginDirName'), 1);
65
  add_action('wp_ajax_generateCaptcha', array(&$this->helper, 'generateCaptcha'));
66
  add_action('wp_ajax_nopriv_generateCaptcha', array(&$this->helper, 'generateCaptcha'));
67
  }
 
 
68
  add_action('wp_ajax_loadMoreComments', array(&$this, 'loadMoreComments'));
69
  add_action('wp_ajax_nopriv_loadMoreComments', array(&$this, 'loadMoreComments'));
70
  add_action('wp_ajax_voteOnComment', array(&$this, 'voteOnComment'));
100
  add_action('wp_ajax_updateOnClick', array(&$this, 'updateOnClick'));
101
  add_action('wp_ajax_nopriv_updateOnClick', array(&$this, 'updateOnClick'));
102
  }
103
+
104
+ if ($this->optionsSerialized->commentReadMoreLimit) {
105
+ add_action('wp_ajax_readMore', array(&$this, 'readMore'));
106
+ add_action('wp_ajax_nopriv_readMore', array(&$this, 'readMore'));
107
+ }
108
  }
109
 
110
  public function wpdiscuzTextDomain() {
253
  $commentMinLength = intval($this->optionsSerialized->commentTextMinLength);
254
  $commentMaxLength = intval($this->optionsSerialized->commentTextMaxLength);
255
  $contentLength = function_exists('mb_strlen') ? mb_strlen($comment_content) : strlen($comment_content);
256
+ if ($commentMinLength > 0 && $contentLength < $commentMinLength) {
257
  $messageArray['code'] = 'wc_msg_comment_text_min_length';
258
  wp_die(json_encode($messageArray));
259
  }
260
 
261
+ if ($commentMaxLength > 0 && $contentLength > $commentMaxLength) {
262
  $messageArray['code'] = 'wc_msg_comment_text_max_length';
263
  wp_die(json_encode($messageArray));
264
  }
335
  $commentId = intval($commentId);
336
  if ($commentId) {
337
  $comment = get_comment($commentId);
338
+ $isInRange = $this->helper->isContentInRange($comment->comment_content);
339
+ $isEditable = $this->optionsSerialized->commentEditableTime == 'unlimit' ? true && $isInRange : $this->helper->isCommentEditable($comment) && $isInRange;
340
  if (isset($current_user) && $comment->user_id == $current_user->ID && $isEditable) {
341
  $message_array['code'] = 1;
342
  $message_array['message'] = $comment->comment_content;
363
  $commentId = intval($commentId);
364
  $comment = get_comment($commentId);
365
  $current_user = wp_get_current_user();
366
+ $trimmedCommentContent = trim($commentContent);
367
+ if ($trimmedCommentContent && $this->helper->isContentInRange($trimmedCommentContent) && isset($current_user) && $comment->user_id == $current_user->ID) {
368
+ if ($trimmedCommentContent != $comment->comment_content) {
369
  $commentContent = wp_kses($commentContent, $this->helper->wc_allowed_tags);
370
  $author_ip = $this->helper->getRealIPAddr();
371
  $userAgent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';
378
  );
379
  if (wp_update_comment($commentarr)) {
380
  $message_array['code'] = 1;
381
+ $commentContent = ($this->optionsSerialized->commentReadMoreLimit) ? $this->helper->getCommentExcerpt($commentContent) : $commentContent;
382
  $message_array['message'] = $this->helper->makeClickable($commentContent);
383
  } else {
384
  $message_array['code'] = 'wc_comment_not_updated';
542
  wp_die();
543
  }
544
 
545
+ /**
546
+ * loads the comment content on click via ajax
547
+ */
548
+ public function readMore() {
549
+ $messageArray = array();
550
+ if (isset($_POST['wpdiscuzAjaxData'])) {
551
+ parse_str($_POST['wpdiscuzAjaxData']);
552
+ $commentId = intval(trim($commentId));
553
+ $comment = get_comment($commentId);
554
+ if ($comment) {
555
+ $commentReadMorePart = explode(' ', $comment->comment_content, $this->optionsSerialized->commentReadMoreLimit + 1);
556
+ $commentContent = $commentReadMorePart[count($commentReadMorePart) - 1];
557
+ $commentContent = wp_kses($commentContent, $this->helper->wc_allowed_tags);
558
+ $commentContent = apply_filters('comment_text', $commentContent);
559
+ $commentContent = $this->helper->makeClickable($commentContent);
560
+ $messageArray['code'] = 1;
561
+ $messageArray['message'] = $commentContent;
562
+ wp_die(json_encode($messageArray));
563
+ }
564
+ }
565
+ $messageArray['code'] = 0;
566
+ $messageArray['message'] = 'error';
567
+ wp_die(json_encode($messageArray));
568
+ }
569
+
570
  public function commentCallback($comment, $args, $depth) {
571
  $GLOBALS['comment'] = $comment;
572
  echo $this->templateBuilder->getCommentTemplate($comment, $args, $depth);
722
  if ($post && in_array($post->post_type, $this->optionsSerialized->postTypes) && is_singular() && post_type_supports($post->post_type, 'comments')) {
723
 
724
  $u_agent = $_SERVER['HTTP_USER_AGENT'];
725
+ wp_register_style('wpdiscuz-frontend-css', plugins_url(self::$PLUGIN_DIRECTORY . '/assets/css/wpdiscuz.min.css'), null, get_option(WpdiscuzCore::OPTION_SLUG_VERSION));
726
  wp_enqueue_style('wpdiscuz-frontend-css');
727
 
728
  if (is_rtl()) {
729
+ wp_register_style('wpdiscuz-frontend-rtl-css', plugins_url(self::$PLUGIN_DIRECTORY . '/assets/css/wpdiscuz-rtl.min.css'), null, get_option(WpdiscuzCore::OPTION_SLUG_VERSION));
730
  wp_enqueue_style('wpdiscuz-frontend-rtl-css');
731
  }
732
 
752
  wp_enqueue_script('wpdiscuz-tooltipster-js');
753
  wp_register_script('autogrowtextarea-js', plugins_url(self::$PLUGIN_DIRECTORY . '/assets/js/jquery.autogrowtextarea.min.js'), array('jquery'), '3.0', false);
754
  wp_enqueue_script('autogrowtextarea-js');
 
 
755
  $wpdiscuz_js_options = $this->optionsSerialized->getOptionsForJs();
756
  $wpdiscuz_js_options['wc_post_id'] = $post->ID;
757
  $wpdiscuz_js_options['loadLastCommentId'] = $this->dbManager->getLastCommentId($post->ID);
857
  );
858
  }
859
 
 
 
 
 
 
860
  }
861
 
862
  $wpdiscuz = new WpdiscuzCore();
includes/class.WpdiscuzCss.php ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if (!defined('ABSPATH')) {
4
+ exit();
5
+ }
6
+
7
+ class WpdiscuzCss {
8
+
9
+ private $optionsSerialized;
10
+
11
+ function __construct($optionsSerialized) {
12
+ $this->optionsSerialized = $optionsSerialized;
13
+ }
14
+
15
+ /**
16
+ * init wpdiscuz styles
17
+ */
18
+ public function initCustomCss() {
19
+ global $post;
20
+ if ($post && in_array($post->post_type, $this->optionsSerialized->postTypes) && is_singular() && post_type_supports($post->post_type, 'comments')) {
21
+ ?>
22
+ <style type="text/css">#wpcomm .wc_new_comment{background:<?php echo $this->optionsSerialized->primaryColor; ?>;}#wpcomm .wc_new_reply{background:<?php echo $this->optionsSerialized->primaryColor; ?>;}#wpcomm .wc-form-wrapper{background:<?php echo isset($this->optionsSerialized->formBGColor)?$this->optionsSerialized->formBGColor:'#f9f9f9'; ?>;}#wpcomm select,#wpcomm textarea,#wpcomm input[type="text"],#wpcomm input[type="email"],#wpcomm input[type="url"]{border:<?php echo $this->optionsSerialized->inputBorderColor; ?> 1px solid;}#wpcomm .wc-comment .wc-comment-right{background:<?php echo $this->optionsSerialized->commentBGColor; ?>;}#wpcomm .wc-reply .wc-comment-right{background:<?php echo $this->optionsSerialized->replyBGColor; ?>;}#wpcomm .wc-comment-text{font-size:<?php echo isset($this->optionsSerialized->commentTextSize)?$this->optionsSerialized->commentTextSize:'14px'; ?>;color:<?php echo $this->optionsSerialized->commentTextColor; ?>;}<?php $blogRoles=$this->optionsSerialized->blogRoles;if(!$blogRoles){echo '.wc-comment-author a{color:#00B38F;} .wc-comment-label{background:#00B38F;}';}foreach($blogRoles as $role=>$color){echo '#wpcomm .wc-blog-'.$role.' > .wc-comment-right .wc-comment-author,#wpcomm .wc-blog-'.$role.' > .wc-comment-right .wc-comment-author a{color:'.$color.';}';echo '#wpcomm .wc-blog-'.$role.' > .wc-comment-left .wc-comment-label{background:'.$color.';}';}?>#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{color:<?php echo $this->optionsSerialized->voteReplyColor; ?>;}#wpcomm .wc-comment-footer .wc-vote-result{background:<?php echo $this->optionsSerialized->voteReplyColor; ?>;}#wpcomm .wc-reply-link,#wpcomm .wc-vote-link,#wpcomm .wc-share-link{color:<?php echo $this->optionsSerialized->voteReplyColor; ?>;}.wc-load-more-submit{border:1px solid <?php echo $this->optionsSerialized->inputBorderColor; ?>;}#wpcomm .wc-new-loaded-comment > .wc-comment-right{background:<?php echo $this->optionsSerialized->newLoadedCommentBGColor; ?>;}<?php echo stripslashes($this->optionsSerialized->customCss); ?>.wpdiscuz-front-actions{background:<?php echo isset($this->optionsSerialized->formBGColor)?$this->optionsSerialized->formBGColor:'#f9f9f9'; ?>;}.wpdiscuz-subscribe-bar{background:<?php echo isset($this->optionsSerialized->formBGColor)?$this->optionsSerialized->formBGColor : '#f9f9f9'; ?>;}.wpdiscuz-sort-buttons{color:<?php echo $this->optionsSerialized->voteReplyColor; ?>;}.wpdiscuz-sort-button{color:<?php echo $this->optionsSerialized->voteReplyColor; ?>; cursor:pointer;}.wpdiscuz-sort-button:hover{color:<?php echo $this->optionsSerialized->primaryColor; ?>;cursor:pointer;}.wpdiscuz-sort-button-active{color:<?php echo $this->optionsSerialized->primaryColor; ?>!important;cursor:default!important;}#wpcomm .page-numbers{color:<?php echo $this->optionsSerialized->commentTextColor; ?>;border:<?php echo $this->optionsSerialized->commentTextColor; ?> 1px solid;}#wpcomm span.current{background:<?php echo $this->optionsSerialized->commentTextColor; ?>;}#wpcomm .wpdiscuz-readmore{cursor:pointer;color:<?php echo $this->optionsSerialized->primaryColor; ?>;}</style>
23
+ <?php
24
+ }
25
+ }
26
+
27
+ }
28
+ ?>
includes/dynamic.css.php DELETED
@@ -1,10 +0,0 @@
1
- <?php header('Content-type: text/css'); ?>
2
- #wpcomm .wc_new_comment{ background:<?php echo $this->optionsSerialized->primaryColor; ?>;} #wpcomm .wc_new_reply{background:<?php echo $this->optionsSerialized->primaryColor; ?>;} #wpcomm .wc-form-wrapper{background:<?php echo isset($this->optionsSerialized->formBGColor) ? $this->optionsSerialized->formBGColor : '#f9f9f9'; ?>;} #wpcomm select, #wpcomm textarea, #wpcomm input[type="text"], #wpcomm input[type="email"], #wpcomm input[type="url"]{ border:<?php echo $this->optionsSerialized->inputBorderColor; ?> 1px solid;} #wpcomm .wc-comment .wc-comment-right{ background:<?php echo $this->optionsSerialized->commentBGColor; ?>;} #wpcomm .wc-reply .wc-comment-right{ background:<?php echo $this->optionsSerialized->replyBGColor; ?>; } #wpcomm .wc-comment-text{ font-size:<?php echo isset($this->optionsSerialized->commentTextSize) ? $this->optionsSerialized->commentTextSize : '14px'; ?>;color:<?php echo $this->optionsSerialized->commentTextColor; ?>;} <?php
3
- $blogRoles = $this->optionsSerialized->blogRoles;
4
- if (!$blogRoles) {
5
- echo '.wc-comment-author a{ color:#00B38F;} .wc-comment-label{background:#00B38F;}';
6
- }foreach ($blogRoles as $role => $color) {
7
- echo '#wpcomm .wc-blog-' . $role . ' > .wc-comment-right .wc-comment-author, #wpcomm .wc-blog-' . $role . ' > .wc-comment-right .wc-comment-author a{ color:' . $color . ';} ';
8
- echo '#wpcomm .wc-blog-' . $role . ' > .wc-comment-left .wc-comment-label{background:' . $color . ';}';
9
- }
10
- ?> #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 { color:<?php echo $this->optionsSerialized->voteReplyColor; ?>; } #wpcomm .wc-comment-footer .wc-vote-result{ background:<?php echo $this->optionsSerialized->voteReplyColor; ?>;} #wpcomm .wc-reply-link, #wpcomm .wc-vote-link, #wpcomm .wc-share-link {color: <?php echo $this->optionsSerialized->voteReplyColor; ?>; }.wc-load-more-submit {border: 1px solid <?php echo $this->optionsSerialized->inputBorderColor; ?>;} #wc_openModalFormAction > div#wc_response_info a.close { background: url("<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/assets/img/x.png'); ?>") no-repeat;}#wpcomm .wc-new-loaded-comment > .wc-comment-right {background: <?php echo $this->optionsSerialized->newLoadedCommentBGColor; ?>;} <?php echo stripslashes($this->optionsSerialized->customCss); ?> .wpdiscuz-front-actions{ background:<?php echo isset($this->optionsSerialized->formBGColor) ? $this->optionsSerialized->formBGColor : '#f9f9f9'; ?>; } .wpdiscuz-subscribe-bar{ background:<?php echo isset($this->optionsSerialized->formBGColor) ? $this->optionsSerialized->formBGColor : '#f9f9f9'; ?>; } .wpdiscuz-sort-buttons{ color:<?php echo $this->optionsSerialized->voteReplyColor; ?>; } .wpdiscuz-sort-button{ color:<?php echo $this->optionsSerialized->voteReplyColor; ?>; cursor:pointer; } .wpdiscuz-sort-button:hover{ color: <?php echo $this->optionsSerialized->primaryColor; ?>; cursor:pointer; } .wpdiscuz-sort-button-active{ color: <?php echo $this->optionsSerialized->primaryColor; ?>!important; cursor:default!important; }#wpcomm .page-numbers{ color:<?php echo $this->optionsSerialized->commentTextColor; ?>; border:<?php echo $this->optionsSerialized->commentTextColor; ?> 1px solid; } #wpcomm span.current{ background:<?php echo $this->optionsSerialized->commentTextColor; ?>; }
 
 
 
 
 
 
 
 
 
 
languages/wpdiscuz-tr_TR.mo ADDED
Binary file
languages/wpdiscuz-tr_TR.po ADDED
@@ -0,0 +1,1286 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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-11-14 13:47+0200\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-11-19 04:47+0200\n"
12
+ "Language-Team: \n"
13
+ "X-Generator: Poedit 1.8.6\n"
14
+ "Last-Translator: Enes <enesemen@gmail.com>\n"
15
+ "Plural-Forms: nplurals=1; plural=0;\n"
16
+ "Language: tr_TR\n"
17
+
18
+ #: class.WpdiscuzCore.php:226
19
+ #: templates/comment/class.WpdiscuzTemplateBuilder.php:245
20
+ msgid "Anonymous"
21
+ msgstr "Anonim"
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 "Ayarlar"
29
+
30
+ #: class.WpdiscuzCore.php:802
31
+ msgid "Phrases"
32
+ msgstr "İfadeler"
33
+
34
+ #: options/class.WpdiscuzOptions.php:37 options/class.WpdiscuzOptions.php:273
35
+ msgid "Hacker?"
36
+ msgstr ""
37
+
38
+ #: options/class.WpdiscuzOptions.php:95
39
+ msgid "wpDiscuz General Settings"
40
+ msgstr "wpDiscuz Genel Ayarları"
41
+
42
+ #: options/class.WpdiscuzOptions.php:186
43
+ msgid "General settings"
44
+ msgstr "Genel Ayarlar"
45
+
46
+ #: options/class.WpdiscuzOptions.php:187
47
+ #: options/options-layouts/settings-live-update.php:7
48
+ msgid "Live Update"
49
+ msgstr "Senkronizasyon"
50
+
51
+ #: options/class.WpdiscuzOptions.php:188
52
+ #: options/options-layouts/settings-show-hide.php:7
53
+ msgid "Show/Hide Components"
54
+ msgstr "Gösterme/Gizleme Seçenekleri"
55
+
56
+ #: options/class.WpdiscuzOptions.php:189
57
+ msgid "Email Subscription"
58
+ msgstr "E-Posta Aboneliği"
59
+
60
+ #: options/class.WpdiscuzOptions.php:189
61
+ msgid "and Postmatic"
62
+ msgstr "Postmatik"
63
+
64
+ #: options/class.WpdiscuzOptions.php:190
65
+ #: options/options-layouts/settings-style.php:7
66
+ msgid "Background and Colors"
67
+ msgstr "Arkaplan ve Renkler"
68
+
69
+ #: options/class.WpdiscuzOptions.php:191
70
+ #: options/options-layouts/settings-social.php:91
71
+ msgid "Social Login"
72
+ msgstr "Sosyal Ağ Bileşenleri"
73
+
74
+ #: options/class.WpdiscuzOptions.php:255
75
+ msgid "Reset Options"
76
+ msgstr "Tüm Ayaları Sıfırla"
77
+
78
+ #: options/class.WpdiscuzOptions.php:257
79
+ msgid "Refresh comment optimization"
80
+ msgstr "Yorum optimizasyonunu "
81
+
82
+ #: options/class.WpdiscuzOptions.php:258 options/class.WpdiscuzOptions.php:447
83
+ msgid "Save Changes"
84
+ msgstr "Değişiklikleri Kaydet"
85
+
86
+ #: options/class.WpdiscuzOptions.php:386
87
+ msgid "WpDiscuz Front-end Phrases"
88
+ msgstr ""
89
+
90
+ #: options/class.WpdiscuzOptions.php:396
91
+ msgid "General"
92
+ msgstr "Genel"
93
+
94
+ #: options/class.WpdiscuzOptions.php:397
95
+ msgid "Form"
96
+ msgstr "Form"
97
+
98
+ #: options/class.WpdiscuzOptions.php:398
99
+ #: options/class.WpdiscuzOptionsSerialized.php:444
100
+ #: options/phrases-layouts/phrases-general.php:32
101
+ msgid "Comment"
102
+ msgstr "Yorum"
103
+
104
+ #: options/class.WpdiscuzOptions.php:399
105
+ msgid "Date/Time"
106
+ msgstr "Tarih/Zaman"
107
+
108
+ #: options/class.WpdiscuzOptions.php:400
109
+ #: options/class.WpdiscuzOptionsSerialized.php:449
110
+ msgid "Email"
111
+ msgstr "E-Posta"
112
+
113
+ #: options/class.WpdiscuzOptions.php:401
114
+ msgid "Notification"
115
+ msgstr "Bildirim"
116
+
117
+ #: options/class.WpdiscuzOptionsSerialized.php:442
118
+ #: options/phrases-layouts/phrases-general.php:12
119
+ msgid "Leave a Reply"
120
+ msgstr "Kimler Neler Demiş?"
121
+
122
+ #: options/class.WpdiscuzOptionsSerialized.php:443
123
+ msgid "Be the First to Comment!"
124
+ msgstr "İlk Yorum Hakkı Senin!"
125
+
126
+ #: options/class.WpdiscuzOptionsSerialized.php:445
127
+ msgid "Comments"
128
+ msgstr "Yorum"
129
+
130
+ #: options/class.WpdiscuzOptionsSerialized.php:446
131
+ msgid "on"
132
+ msgstr " - "
133
+
134
+ #: options/class.WpdiscuzOptionsSerialized.php:447
135
+ msgid "Start the discussion"
136
+ msgstr "İlk yorumu başlat"
137
+
138
+ #: options/class.WpdiscuzOptionsSerialized.php:448
139
+ msgid "Join the discussion"
140
+ msgstr "Sende yorumda bulun"
141
+
142
+ #: options/class.WpdiscuzOptionsSerialized.php:450
143
+ msgid "Name"
144
+ msgstr "Ad:"
145
+
146
+ #: options/class.WpdiscuzOptionsSerialized.php:451
147
+ msgid "WebSite URL"
148
+ msgstr "Web Site Bağlantısı"
149
+
150
+ #: options/class.WpdiscuzOptionsSerialized.php:452
151
+ msgid "Please insert the code above to comment"
152
+ msgstr "Yorum yapmak için yukarıdaki kodu girin"
153
+
154
+ #: options/class.WpdiscuzOptionsSerialized.php:453
155
+ msgid "Post Comment"
156
+ msgstr "Yorumu Onayla"
157
+
158
+ #: options/class.WpdiscuzOptionsSerialized.php:454
159
+ #: options/phrases-layouts/phrases-form.php:82
160
+ #: options/phrases-layouts/phrases-form.php:86
161
+ msgid "Notify of"
162
+ msgstr "Bildir"
163
+
164
+ #: options/class.WpdiscuzOptionsSerialized.php:455
165
+ #: options/phrases-layouts/phrases-form.php:96
166
+ msgid "new follow-up comments"
167
+ msgstr "Bu yazıya yeni bir yorum yapıldığında"
168
+
169
+ #: options/class.WpdiscuzOptionsSerialized.php:456
170
+ msgid "new replies to my comments"
171
+ msgstr "Benim yorumuma yeni yanıt geldiğinde"
172
+
173
+ #: options/class.WpdiscuzOptionsSerialized.php:457
174
+ #: options/phrases-layouts/phrases-form.php:116
175
+ msgid "Notify of new replies to this comment"
176
+ msgstr "Bu yoruma cevap geldiğinde bana bildir"
177
+
178
+ #: options/class.WpdiscuzOptionsSerialized.php:458
179
+ #: options/phrases-layouts/phrases-form.php:122
180
+ #: options/phrases-layouts/phrases-form.php:126
181
+ msgid "Sort by"
182
+ msgstr "Sıralama"
183
+
184
+ #: options/class.WpdiscuzOptionsSerialized.php:459
185
+ #: options/phrases-layouts/phrases-form.php:132
186
+ #: options/phrases-layouts/phrases-form.php:136
187
+ msgid "newest"
188
+ msgstr "En Yeniler"
189
+
190
+ #: options/class.WpdiscuzOptionsSerialized.php:460
191
+ #: options/phrases-layouts/phrases-form.php:142
192
+ #: options/phrases-layouts/phrases-form.php:146
193
+ msgid "oldest"
194
+ msgstr "Eskiler"
195
+
196
+ #: options/class.WpdiscuzOptionsSerialized.php:461
197
+ #: options/phrases-layouts/phrases-form.php:152
198
+ #: options/phrases-layouts/phrases-form.php:156
199
+ msgid "most voted"
200
+ msgstr "Beğenilenler"
201
+
202
+ #: options/class.WpdiscuzOptionsSerialized.php:462
203
+ msgid "Load More Comments"
204
+ msgstr "Tüm Yorumları Gör"
205
+
206
+ #: options/class.WpdiscuzOptionsSerialized.php:463
207
+ #: options/phrases-layouts/phrases-general.php:72
208
+ msgid "Load Rest of Comments"
209
+ msgstr "Yorumları Gizle"
210
+
211
+ #: options/class.WpdiscuzOptionsSerialized.php:464
212
+ #: options/phrases-layouts/phrases-comment.php:12
213
+ msgid "Reply"
214
+ msgstr "Yanıtla"
215
+
216
+ #: options/class.WpdiscuzOptionsSerialized.php:465
217
+ #: options/phrases-layouts/phrases-comment.php:22
218
+ msgid "Share"
219
+ msgstr "Paylaş"
220
+
221
+ #: options/class.WpdiscuzOptionsSerialized.php:466
222
+ #: options/phrases-layouts/phrases-comment.php:32
223
+ #: templates/comment/class.WpdiscuzTemplateBuilder.php:182
224
+ msgid "Edit"
225
+ msgstr "Düzenle"
226
+
227
+ #: options/class.WpdiscuzOptionsSerialized.php:467
228
+ #: options/phrases-layouts/phrases-comment.php:42
229
+ msgid "Share On Facebook"
230
+ msgstr "Facebook'ta Paylaş"
231
+
232
+ #: options/class.WpdiscuzOptionsSerialized.php:468
233
+ #: options/phrases-layouts/phrases-comment.php:52
234
+ msgid "Share On Twitter"
235
+ msgstr "Twitter'da Paylaş"
236
+
237
+ #: options/class.WpdiscuzOptionsSerialized.php:469
238
+ #: options/phrases-layouts/phrases-comment.php:62
239
+ msgid "Share On Google"
240
+ msgstr "Google'da Paylaş"
241
+
242
+ #: options/class.WpdiscuzOptionsSerialized.php:470
243
+ #: options/phrases-layouts/phrases-comment.php:72
244
+ msgid "Share On VKontakte"
245
+ msgstr "VK'da Paylaş"
246
+
247
+ #: options/class.WpdiscuzOptionsSerialized.php:471
248
+ #: options/phrases-layouts/phrases-comment.php:82
249
+ msgid "Share On Odnoklassniki"
250
+ msgstr "Odnoklassniki'de Paylaş"
251
+
252
+ #: options/class.WpdiscuzOptionsSerialized.php:472
253
+ #: options/phrases-layouts/phrases-comment.php:92
254
+ msgid "Hide Replies"
255
+ msgstr "Alt Yorumları Gizle"
256
+
257
+ #: options/class.WpdiscuzOptionsSerialized.php:473
258
+ #: options/phrases-layouts/phrases-comment.php:102
259
+ msgid "Show Replies"
260
+ msgstr "Alt Yorumları Görüntüle"
261
+
262
+ #: options/class.WpdiscuzOptionsSerialized.php:474
263
+ msgid "Guest"
264
+ msgstr "Ziyaretçi"
265
+
266
+ #: options/class.WpdiscuzOptionsSerialized.php:475
267
+ msgid "Member"
268
+ msgstr "Üye"
269
+
270
+ #: options/class.WpdiscuzOptionsSerialized.php:476
271
+ msgid "Author"
272
+ msgstr "Yazar"
273
+
274
+ #: options/class.WpdiscuzOptionsSerialized.php:477
275
+ msgid "Admin"
276
+ msgstr "Yönetici"
277
+
278
+ #: options/class.WpdiscuzOptionsSerialized.php:478
279
+ #: options/phrases-layouts/phrases-general.php:86
280
+ msgid "New Comment"
281
+ msgstr "Yeni Yorum"
282
+
283
+ #: options/class.WpdiscuzOptionsSerialized.php:479
284
+ msgid "New comment on the discussion section you've been interested in"
285
+ msgstr ""
286
+
287
+ #: options/class.WpdiscuzOptionsSerialized.php:480
288
+ #: options/phrases-layouts/phrases-email.php:36
289
+ #: options/phrases-layouts/phrases-general.php:106
290
+ #: utils/class.WpdiscuzEmailHelper.php:155
291
+ msgid "New Reply"
292
+ msgstr "Yeni Yanıt"
293
+
294
+ #: options/class.WpdiscuzOptionsSerialized.php:481
295
+ #: utils/class.WpdiscuzEmailHelper.php:156
296
+ msgid "New reply on the discussion section you've been interested in"
297
+ msgstr ""
298
+
299
+ #: options/class.WpdiscuzOptionsSerialized.php:482
300
+ msgid "You're subscribed for new replies on this comment"
301
+ msgstr ""
302
+
303
+ #: options/class.WpdiscuzOptionsSerialized.php:483
304
+ msgid "You're subscribed for new replies on all your comments"
305
+ msgstr ""
306
+
307
+ #: options/class.WpdiscuzOptionsSerialized.php:484
308
+ msgid "You're subscribed for new follow-up comments on this post"
309
+ msgstr ""
310
+
311
+ #: options/class.WpdiscuzOptionsSerialized.php:485
312
+ #: options/phrases-layouts/phrases-email.php:52
313
+ #: options/phrases-layouts/phrases-email.php:56
314
+ msgid "Unsubscribe"
315
+ msgstr "Abonelikten Ayrıl"
316
+
317
+ #: options/class.WpdiscuzOptionsSerialized.php:486
318
+ #: options/phrases-layouts/phrases-email.php:66
319
+ msgid "Cancel subscription"
320
+ msgstr ""
321
+
322
+ #: options/class.WpdiscuzOptionsSerialized.php:487
323
+ #: options/phrases-layouts/phrases-notification.php:32
324
+ msgid "You've successfully unsubscribed."
325
+ msgstr "Abonelikten ayrıldınız"
326
+
327
+ #: options/class.WpdiscuzOptionsSerialized.php:488
328
+ #: options/phrases-layouts/phrases-notification.php:22
329
+ msgid "You've successfully subscribed."
330
+ msgstr "Aboneliğiniz başarıyla onaylandı."
331
+
332
+ #: options/class.WpdiscuzOptionsSerialized.php:489
333
+ #: options/phrases-layouts/phrases-email.php:72
334
+ #: options/phrases-layouts/phrases-email.php:76
335
+ msgid "Confirm your subscription"
336
+ msgstr ""
337
+
338
+ #: options/class.WpdiscuzOptionsSerialized.php:490
339
+ #: options/phrases-layouts/phrases-email.php:82
340
+ #: options/phrases-layouts/phrases-email.php:86
341
+ msgid "You've successfully confirmed your subscription."
342
+ msgstr ""
343
+
344
+ #: options/class.WpdiscuzOptionsSerialized.php:491
345
+ #: options/phrases-layouts/phrases-email.php:96
346
+ #: utils/class.WpdiscuzEmailHelper.php:45
347
+ msgid "Subscribe Confirmation"
348
+ msgstr ""
349
+
350
+ #: options/class.WpdiscuzOptionsSerialized.php:492
351
+ #: options/phrases-layouts/phrases-email.php:106
352
+ #: utils/class.WpdiscuzEmailHelper.php:46
353
+ msgid ""
354
+ "Hi, <br/> You just subscribed for new comments on our website. This means "
355
+ "you will receive an email when new comments are posted according to "
356
+ "subscription option you've chosen. <br/> To activate, click confirm below. "
357
+ "If you believe this is an error, ignore this message and we'll never bother "
358
+ "you again."
359
+ msgstr ""
360
+
361
+ #: options/class.WpdiscuzOptionsSerialized.php:493
362
+ msgid "please fill out this field to comment"
363
+ msgstr "Yorumlamak için lütfen birşeyler girin"
364
+
365
+ #: options/class.WpdiscuzOptionsSerialized.php:494
366
+ msgid "email address is invalid"
367
+ msgstr "Geçersiz e-posta!"
368
+
369
+ #: options/class.WpdiscuzOptionsSerialized.php:495
370
+ msgid "url is invalid"
371
+ msgstr "Geçersiz bağlantı!"
372
+
373
+ #: options/class.WpdiscuzOptionsSerialized.php:496
374
+ msgid "year"
375
+ msgstr "yıl"
376
+
377
+ #: options/class.WpdiscuzOptionsSerialized.php:497
378
+ msgid "years"
379
+ msgstr "yıl"
380
+
381
+ #: options/class.WpdiscuzOptionsSerialized.php:498
382
+ msgid "month"
383
+ msgstr "ay"
384
+
385
+ #: options/class.WpdiscuzOptionsSerialized.php:499
386
+ msgid "months"
387
+ msgstr "ay"
388
+
389
+ #: options/class.WpdiscuzOptionsSerialized.php:500
390
+ msgid "day"
391
+ msgstr "gün"
392
+
393
+ #: options/class.WpdiscuzOptionsSerialized.php:501
394
+ msgid "days"
395
+ msgstr "gün"
396
+
397
+ #: options/class.WpdiscuzOptionsSerialized.php:502
398
+ msgid "hour"
399
+ msgstr "saat"
400
+
401
+ #: options/class.WpdiscuzOptionsSerialized.php:503
402
+ msgid "hours"
403
+ msgstr "saat"
404
+
405
+ #: options/class.WpdiscuzOptionsSerialized.php:504
406
+ msgid "minute"
407
+ msgstr "dakika"
408
+
409
+ #: options/class.WpdiscuzOptionsSerialized.php:505
410
+ msgid "minutes"
411
+ msgstr "dakika"
412
+
413
+ #: options/class.WpdiscuzOptionsSerialized.php:506
414
+ msgid "second"
415
+ msgstr "saniye"
416
+
417
+ #: options/class.WpdiscuzOptionsSerialized.php:507
418
+ msgid "seconds"
419
+ msgstr "saniye"
420
+
421
+ #: options/class.WpdiscuzOptionsSerialized.php:508
422
+ msgid "right now"
423
+ msgstr "şimdi"
424
+
425
+ #: options/class.WpdiscuzOptionsSerialized.php:509
426
+ msgid "ago"
427
+ msgstr "önce"
428
+
429
+ #: options/class.WpdiscuzOptionsSerialized.php:510
430
+ #: options/phrases-layouts/phrases-datetime.php:156
431
+ msgid "Today"
432
+ msgstr "Bugün"
433
+
434
+ #: options/class.WpdiscuzOptionsSerialized.php:511
435
+ #: options/phrases-layouts/phrases-notification.php:72
436
+ msgid "You must be"
437
+ msgstr ""
438
+
439
+ #: options/class.WpdiscuzOptionsSerialized.php:512
440
+ msgid "You are logged in as"
441
+ msgstr "Giriş yapılan kullanıcı adı: "
442
+
443
+ #: options/class.WpdiscuzOptionsSerialized.php:513
444
+ #: options/phrases-layouts/phrases-notification.php:92
445
+ msgid "Log out"
446
+ msgstr "Çıkış"
447
+
448
+ #: options/class.WpdiscuzOptionsSerialized.php:514
449
+ msgid "logged in"
450
+ msgstr ""
451
+
452
+ #: options/class.WpdiscuzOptionsSerialized.php:515
453
+ msgid "to post a comment."
454
+ msgstr ""
455
+
456
+ #: options/class.WpdiscuzOptionsSerialized.php:516
457
+ #: options/phrases-layouts/phrases-comment.php:152
458
+ msgid "Vote Up"
459
+ msgstr "Artı Puan"
460
+
461
+ #: options/class.WpdiscuzOptionsSerialized.php:517
462
+ #: options/phrases-layouts/phrases-comment.php:162
463
+ msgid "Vote Down"
464
+ msgstr "Eksi Puan"
465
+
466
+ #: options/class.WpdiscuzOptionsSerialized.php:518
467
+ #: options/phrases-layouts/phrases-notification.php:122
468
+ msgid "Vote Counted"
469
+ msgstr ""
470
+
471
+ #: options/class.WpdiscuzOptionsSerialized.php:519
472
+ msgid "You've already voted for this comment"
473
+ msgstr "Bu yorum için zaten puan verdin"
474
+
475
+ #: options/class.WpdiscuzOptionsSerialized.php:520
476
+ #: options/phrases-layouts/phrases-notification.php:142
477
+ msgid "Voting Error"
478
+ msgstr "Oylama Hatayla Karşılaştı"
479
+
480
+ #: options/class.WpdiscuzOptionsSerialized.php:521
481
+ msgid "You Must Be Logged In To Vote"
482
+ msgstr ""
483
+
484
+ #: options/class.WpdiscuzOptionsSerialized.php:522
485
+ msgid "You cannot vote for your comment"
486
+ msgstr ""
487
+
488
+ #: options/class.WpdiscuzOptionsSerialized.php:523
489
+ msgid "You are not allowed to vote for this comment"
490
+ msgstr ""
491
+
492
+ #: options/class.WpdiscuzOptionsSerialized.php:524
493
+ #: options/phrases-layouts/phrases-notification.php:182
494
+ msgid "Invalid Captcha Code"
495
+ msgstr "Geçersiz Captcha Kodu"
496
+
497
+ #: options/class.WpdiscuzOptionsSerialized.php:525
498
+ #: options/phrases-layouts/phrases-notification.php:192
499
+ msgid "Some of field value is invalid"
500
+ msgstr ""
501
+
502
+ #: options/class.WpdiscuzOptionsSerialized.php:526
503
+ msgid "new comment"
504
+ msgstr "yeni yorum"
505
+
506
+ #: options/class.WpdiscuzOptionsSerialized.php:527
507
+ msgid "new comments"
508
+ msgstr ""
509
+
510
+ #: options/class.WpdiscuzOptionsSerialized.php:528
511
+ msgid "Comment awaiting moderation"
512
+ msgstr "Yorum yönetici onayı bekliyor"
513
+
514
+ #: options/class.WpdiscuzOptionsSerialized.php:529
515
+ msgid "new reply on your comment"
516
+ msgstr ""
517
+
518
+ #: options/class.WpdiscuzOptionsSerialized.php:530
519
+ msgid "new replies on your comments"
520
+ msgstr ""
521
+
522
+ #: options/class.WpdiscuzOptionsSerialized.php:531
523
+ #: options/phrases-layouts/phrases-general.php:126
524
+ msgid "New"
525
+ msgstr "Yeni"
526
+
527
+ #: options/class.WpdiscuzOptionsSerialized.php:532
528
+ #: options/phrases-layouts/phrases-notification.php:236
529
+ msgid "Sorry, the comment was not updated"
530
+ msgstr ""
531
+
532
+ #: options/class.WpdiscuzOptionsSerialized.php:533
533
+ #: options/phrases-layouts/phrases-notification.php:246
534
+ msgid "Sorry, this comment no longer possible to edit"
535
+ msgstr ""
536
+
537
+ #: options/class.WpdiscuzOptionsSerialized.php:534
538
+ msgid "You've not made any changes"
539
+ msgstr "Herhangi bir değişiklik yapmadınız"
540
+
541
+ #: options/class.WpdiscuzOptionsSerialized.php:535
542
+ #: options/phrases-layouts/phrases-comment.php:176
543
+ msgid "Save"
544
+ msgstr "Kaydet"
545
+
546
+ #: options/class.WpdiscuzOptionsSerialized.php:536
547
+ #: options/phrases-layouts/phrases-comment.php:186
548
+ msgid "Cancel"
549
+ msgstr "Çıkış"
550
+
551
+ #: options/class.WpdiscuzOptionsSerialized.php:537
552
+ msgid "Comment text is too short (minimum %d% characters)"
553
+ msgstr "Yorum metni çok kısa (minimum %d% karakter)"
554
+
555
+ #: options/class.WpdiscuzOptionsSerialized.php:538
556
+ msgid "Comment text is too long (maximum %d% characters allowed)"
557
+ msgstr "Yorum metni çok uzun (maksimum %d% karakter)"
558
+
559
+ #: options/class.WpdiscuzOptionsSerialized.php:539
560
+ #: options/phrases-layouts/phrases-notification.php:262
561
+ #: options/phrases-layouts/phrases-notification.php:266
562
+ msgid "Please fill out required fields"
563
+ msgstr "Lütfen gerekli alanları doldurun"
564
+
565
+ #: options/class.WpdiscuzOptionsSerialized.php:540
566
+ #: options/phrases-layouts/phrases-form.php:192
567
+ #: options/phrases-layouts/phrases-form.php:196
568
+ msgid "Connect with"
569
+ msgstr ""
570
+
571
+ #: options/class.WpdiscuzOptionsSerialized.php:541
572
+ msgid "You're subscribed to"
573
+ msgstr ""
574
+
575
+ #: options/options-layouts/settings-general.php:7
576
+ msgid "General Settings"
577
+ msgstr "Genel Ayarlar"
578
+
579
+ #: options/options-layouts/settings-general.php:12
580
+ msgid "Display comment form for post types:"
581
+ msgstr ""
582
+
583
+ #: options/options-layouts/settings-general.php:32
584
+ msgid "Comment author must fill out name"
585
+ msgstr "Yorum için bir isim belirtilmesi zorunlu olsun"
586
+
587
+ #: options/options-layouts/settings-general.php:42
588
+ msgid "Comment author must fill out email"
589
+ msgstr "Yorum için bir e-posta girilmesi zorunlu olsun"
590
+
591
+ #: options/options-layouts/settings-general.php:52
592
+ msgid "Comment text min length"
593
+ msgstr "Yorum için minumum karakter uzunluğu"
594
+
595
+ #: options/options-layouts/settings-general.php:62
596
+ msgid "Comment text max length"
597
+ msgstr "Yorum için maksimum karakter uzunluğu"
598
+
599
+ #: options/options-layouts/settings-general.php:72
600
+ msgid "Comment text size in pixels"
601
+ msgstr "Yorum için yazı boyutu"
602
+
603
+ #: options/options-layouts/settings-general.php:87
604
+ msgid "Allow comment editing for"
605
+ msgstr "Yorumu düzenlemeye izin ver"
606
+
607
+ #: options/options-layouts/settings-general.php:92
608
+ msgid "Not Allow"
609
+ msgstr "İzin verme"
610
+
611
+ #: options/options-layouts/settings-general.php:93
612
+ #: options/options-layouts/settings-general.php:94
613
+ #: options/options-layouts/settings-live-update.php:52
614
+ #: options/options-layouts/settings-live-update.php:53
615
+ #: options/options-layouts/settings-live-update.php:54
616
+ msgid "Minutes"
617
+ msgstr "Dakika"
618
+
619
+ #: options/options-layouts/settings-general.php:95
620
+ #: options/phrases-layouts/phrases-datetime.php:72
621
+ msgid "Hour"
622
+ msgstr "Saat"
623
+
624
+ #: options/options-layouts/settings-general.php:96
625
+ #: options/options-layouts/settings-general.php:97
626
+ msgid "Hours"
627
+ msgstr "Saat"
628
+
629
+ #: options/options-layouts/settings-general.php:98
630
+ msgid "Unlimit"
631
+ msgstr "Kısıtlamasız"
632
+
633
+ #: options/options-layouts/settings-general.php:104
634
+ msgid "Redirect first commenter to"
635
+ msgstr ""
636
+
637
+ #: options/options-layouts/settings-general.php:111
638
+ msgid "Do not redirect"
639
+ msgstr ""
640
+
641
+ #: options/options-layouts/settings-general.php:119
642
+ msgid "Allow guests to vote on comments"
643
+ msgstr ""
644
+
645
+ #: options/options-layouts/settings-general.php:129
646
+ msgid "Comments loading/pagination type"
647
+ msgstr ""
648
+
649
+ #: options/options-layouts/settings-general.php:138
650
+ #: options/options-layouts/settings-general.php:140
651
+ msgid "[Load more] Button"
652
+ msgstr "[Tüm Yorumları Gör] Butonu"
653
+
654
+ #: options/options-layouts/settings-general.php:142
655
+ #: options/options-layouts/settings-general.php:144
656
+ msgid "[Load rest of all comments] Button"
657
+ msgstr "[Yorumları Gizle] Butonu"
658
+
659
+ #: options/options-layouts/settings-general.php:146
660
+ #: options/options-layouts/settings-general.php:148
661
+ msgid "Lazy load comments on scrolling"
662
+ msgstr ""
663
+
664
+ #: options/options-layouts/settings-general.php:155
665
+ msgid "Use WordPress Date/Time format"
666
+ msgstr "Wordpress Tarih/Zaman Biçim Kullanımı"
667
+
668
+ #: options/options-layouts/settings-general.php:156
669
+ msgid ""
670
+ "wpDiscuz shows Human Readable date format. If you check this option it'll "
671
+ "show the date/time format set in WordPress General Settings."
672
+ msgstr ""
673
+
674
+ #: options/options-layouts/settings-general.php:163
675
+ msgid "Current Wordpress date/time format"
676
+ msgstr "Wordpress Geçerli Tarih/Zaman Biçimi"
677
+
678
+ #: options/options-layouts/settings-general.php:169
679
+ msgid "Use Plugin .PO/.MO files"
680
+ msgstr "Tüm Dil Eklentilerini Kullan"
681
+
682
+ #: options/options-layouts/settings-general.php:170
683
+ msgid ""
684
+ "wpDiscuz phrase system allows you to translate all front-end phrases. "
685
+ "However if you have a multi-language website it'll not allow you to add more "
686
+ "than one language translation. The only way to get it is the plugin "
687
+ "translation files (.PO / .MO). If wpDiscuz has the languages you need you "
688
+ "should check this option to disable phrase system and it'll automatically "
689
+ "translate all phrases based on language files according to current language."
690
+ msgstr ""
691
+
692
+ #: options/options-layouts/settings-general.php:181
693
+ msgid ""
694
+ "Help wpDiscuz to grow allowing people to recognize which comment plugin you "
695
+ "use"
696
+ msgstr "wpDiscuz yorum eklentisinin büyümesinde ve tanıtımında yardımcı ol"
697
+
698
+ #: options/options-layouts/settings-general.php:183
699
+ msgid ""
700
+ "Please check this option on to help wpDiscuz get more popularity as your "
701
+ "thank to the hard work we do for you totally free. This option adds a very "
702
+ "small (16x16px) icon under the comment section which will allow your site "
703
+ "visitors recognize the name of comment solution you use."
704
+ msgstr ""
705
+
706
+ #: options/options-layouts/settings-general.php:188
707
+ msgid "Thank you!"
708
+ msgstr "Destek ver!"
709
+
710
+ #: options/options-layouts/settings-live-update.php:12
711
+ msgid "Live update options"
712
+ msgstr "Senkronizasyon Ayarları"
713
+
714
+ #: options/options-layouts/settings-live-update.php:13
715
+ msgid ""
716
+ "wpDiscuz 3 live update is very smart and doesn't overload your server even "
717
+ "if you're on Shared hosting plan and even your website is very active. "
718
+ "However we recommend to monitor your server resources if you're on a Shared "
719
+ "hosting plan. There are some very weak hosting plans which may not be able "
720
+ "to perform very frequently live update requests. If you found some issue you "
721
+ "can set the option below 30 seconds or more."
722
+ msgstr ""
723
+
724
+ #: options/options-layouts/settings-live-update.php:18
725
+ msgid "Never update"
726
+ msgstr "Hiç güncelleştirme"
727
+
728
+ #: options/options-layouts/settings-live-update.php:20
729
+ msgid "Turn off \"Live Update\" function"
730
+ msgstr "\"Güncelleştirme\" fonksiyonunu kapatın"
731
+
732
+ #: options/options-layouts/settings-live-update.php:22
733
+ msgid "Show new comment/reply buttons to update manualy"
734
+ msgstr ""
735
+
736
+ #: options/options-layouts/settings-live-update.php:24
737
+ msgid "Always check for new comments and show update buttons"
738
+ msgstr "Her zaman yeni yorum ve güncelleştirmeler için yenile butonu göster"
739
+
740
+ #: options/options-layouts/settings-live-update.php:26
741
+ msgid "Always update"
742
+ msgstr "Her zaman güncelle"
743
+
744
+ #: options/options-layouts/settings-live-update.php:28
745
+ msgid "Always check for new comments and update automatically"
746
+ msgstr "Her zaman yeni yorum ve güncelleştirmeleri otomatik kontrol et."
747
+
748
+ #: options/options-layouts/settings-live-update.php:35
749
+ msgid "Disable live update for guests"
750
+ msgstr "Ziyaretçiler için güncelleştirme fonksiyonunu kapatın."
751
+
752
+ #: options/options-layouts/settings-live-update.php:43
753
+ msgid "Update comment list every"
754
+ msgstr "Yorum listelerini belirtilen sürede bir güncelleştir"
755
+
756
+ #: options/options-layouts/settings-live-update.php:48
757
+ #: options/options-layouts/settings-live-update.php:49
758
+ #: options/options-layouts/settings-live-update.php:50
759
+ msgid "Seconds"
760
+ msgstr "Saniye"
761
+
762
+ #: options/options-layouts/settings-live-update.php:51
763
+ #: options/phrases-layouts/phrases-datetime.php:92
764
+ msgid "Minute"
765
+ msgstr "Dakika"
766
+
767
+ #: options/options-layouts/settings-show-hide.php:12
768
+ msgid "Show logged-in user name and logout link on top of main form"
769
+ msgstr ""
770
+
771
+ #: options/options-layouts/settings-show-hide.php:22
772
+ msgid "Hide Reply button for Guests"
773
+ msgstr "Ziyaretçiler için \"Yanıtları Gizle\" butonu"
774
+
775
+ #: options/options-layouts/settings-show-hide.php:32
776
+ msgid "Hide Reply button for Members"
777
+ msgstr "Üyeler için \"Yanıtları Gizle\" butonu"
778
+
779
+ #: options/options-layouts/settings-show-hide.php:42
780
+ msgid "Hide Commenter Labels"
781
+ msgstr ""
782
+
783
+ #: options/options-layouts/settings-show-hide.php:52
784
+ msgid "Hide Voting buttons"
785
+ msgstr "Oylama butonlarını gizle"
786
+
787
+ #: options/options-layouts/settings-show-hide.php:62
788
+ msgid "Show Share Buttons"
789
+ msgstr "Paylaş butonunu göster"
790
+
791
+ #: options/options-layouts/settings-show-hide.php:86
792
+ msgid ""
793
+ "The plugin directory is not writable! Please set writable permissions to "
794
+ "plugin directory in order to use the captcha feature"
795
+ msgstr ""
796
+
797
+ #: options/options-layouts/settings-show-hide.php:91
798
+ msgid "Hide the CAPTCHA field for guests"
799
+ msgstr "Ziyaretçiler için Captcha Kod alanını gizle"
800
+
801
+ #: options/options-layouts/settings-show-hide.php:102
802
+ msgid "Show the CAPTCHA field for logged in users"
803
+ msgstr "Giriş yapan kullanıcılar için Captcha Kod alanını göster"
804
+
805
+ #: options/options-layouts/settings-show-hide.php:113
806
+ msgid "Show the Website URL field"
807
+ msgstr "Website URL alanını göster"
808
+
809
+ #: options/options-layouts/settings-show-hide.php:123
810
+ msgid "Hide header text"
811
+ msgstr ""
812
+
813
+ #: options/options-layouts/settings-show-hide.php:133
814
+ msgid "Show sorting buttons"
815
+ msgstr "Sıralama butonunu göster"
816
+
817
+ #: options/options-layouts/settings-show-hide.php:143
818
+ msgid "Set comments ordering to \"Most voted\" by default "
819
+ msgstr ""
820
+
821
+ #: options/options-layouts/settings-show-hide.php:153
822
+ msgid "Hide comment link"
823
+ msgstr "Yorum linkini gizle"
824
+
825
+ #: options/options-layouts/settings-social.php:23
826
+ #: options/options-layouts/settings-social.php:33
827
+ #: options/options-layouts/settings-social.php:43
828
+ #: options/options-layouts/settings-social.php:54
829
+ msgid "Activate"
830
+ msgstr "Etkinleştir"
831
+
832
+ #: options/options-layouts/settings-social.php:27
833
+ #: options/options-layouts/settings-social.php:37
834
+ #: options/options-layouts/settings-social.php:47
835
+ #: options/options-layouts/settings-social.php:58
836
+ msgid "View details/Install"
837
+ msgstr "Detay/Yükleme Sayfasını Görüntüle"
838
+
839
+ #: options/options-layouts/settings-social.php:92
840
+ msgid ""
841
+ "You can use one of these most popular Social Login Plugins to allow your "
842
+ "visitors login and comment with Facebook, Twitter, Google+, Wordpress, VK, "
843
+ "OK and lots of other social network service accounts. All social login "
844
+ "buttons will be fully integrated with wpDiscuz comment forms."
845
+ msgstr ""
846
+ "Ziyaretçilerinize en popüler sosyal ağlardan giriş yapma izni verirseniz, "
847
+ "Facebook, Twitter, Google+, Wordpress, VK, OK hesaplarından yorum "
848
+ "yapabilirler. Bu sosyal ağ giriş eklentileri \"wpDiscuz\" yorum eklentisi "
849
+ "ile entegre çalışacaktır."
850
+
851
+ #: options/options-layouts/settings-style.php:12
852
+ msgid "Comment Form Background Color"
853
+ msgstr "Yorum Formu Zemin Rengi"
854
+
855
+ #: options/options-layouts/settings-style.php:16
856
+ #: options/options-layouts/settings-style.php:25
857
+ #: options/options-layouts/settings-style.php:34
858
+ #: options/options-layouts/settings-style.php:43
859
+ #: options/options-layouts/settings-style.php:52
860
+ #: options/options-layouts/settings-style.php:61
861
+ #: options/options-layouts/settings-style.php:70
862
+ #: options/options-layouts/settings-style.php:79
863
+ #: options/options-layouts/settings-style.php:92
864
+ msgid "Example: #00FF00"
865
+ msgstr "Örnek: #00FF00"
866
+
867
+ #: options/options-layouts/settings-style.php:21
868
+ msgid "Comment Background Color"
869
+ msgstr "Yorum Zemin Rengi"
870
+
871
+ #: options/options-layouts/settings-style.php:30
872
+ msgid "Reply Background Color"
873
+ msgstr "Alt Yorumların Zemin Rengi"
874
+
875
+ #: options/options-layouts/settings-style.php:39
876
+ msgid "Comment Text Color"
877
+ msgstr "Yorumların Yazı Rengi"
878
+
879
+ #: options/options-layouts/settings-style.php:48
880
+ msgid "Vote, Reply, Share, Edit links text colors"
881
+ msgstr "\"Oyla\", \"Yanıtla\", \"Paylaş\", \"Düzenle\" yazı linklerinin rengi"
882
+
883
+ #: options/options-layouts/settings-style.php:57
884
+ msgid "Comment form fields border color"
885
+ msgstr "Yorum form alanının çerçeve rengi"
886
+
887
+ #: options/options-layouts/settings-style.php:66
888
+ msgid "New loaded comments' background color"
889
+ msgstr "Yeni yüklenen yorumların' zemin rengi"
890
+
891
+ #: options/options-layouts/settings-style.php:75
892
+ msgid "Primary Color"
893
+ msgstr "Birincil Renk"
894
+
895
+ #: options/options-layouts/settings-style.php:89
896
+ msgid "label color"
897
+ msgstr "label rengi"
898
+
899
+ #: options/options-layouts/settings-style.php:100
900
+ msgid "Custom CSS Code"
901
+ msgstr "Özel CSS Kodu"
902
+
903
+ #: options/options-layouts/settings-subscription.php:7
904
+ msgid "Email Subscription Settings"
905
+ msgstr "E-Posta Abonelik Ayarları"
906
+
907
+ #: options/options-layouts/settings-subscription.php:12
908
+ msgid "Disable subscription confirmation for registered users"
909
+ msgstr "Zaten kayıtlı kullanıcılar için aboneliği devre dışı bırak"
910
+
911
+ #: options/options-layouts/settings-subscription.php:13
912
+ msgid "Show comment subscription bar"
913
+ msgstr "E-Posta abonelik çubuğunu (bar) göster"
914
+
915
+ #: options/options-layouts/settings-subscription.php:15
916
+ msgid ""
917
+ "This bar provides two subscription options: notify of \"new follow-up "
918
+ "comments\" and \"new replies to my comments\""
919
+ msgstr ""
920
+
921
+ #: options/options-layouts/settings-subscription.php:17
922
+ msgid "Show \"Notify of new replies to this comment\""
923
+ msgstr "\"Bu yoruma yeni cevaplarda bildir\" seçeneğini göster"
924
+
925
+ #: options/options-layouts/settings-subscription.php:19
926
+ msgid ""
927
+ "wpDiscuz is the only comment plugin which allows you to subscribe to certain "
928
+ "comment replies. This option is located above [Post Comment] button in "
929
+ "comment form. You can disable this subscription way by unchecking this "
930
+ "option."
931
+ msgstr ""
932
+
933
+ #: options/options-layouts/settings-subscription.php:33
934
+ msgid "Use Postmatic for subscriptions and commenting by email"
935
+ msgstr ""
936
+
937
+ #: options/options-layouts/settings-subscription.php:34
938
+ msgid ""
939
+ "Postmatic allows your users subscribe to comments. Instead of just being "
940
+ "notified, they add a reply right from their inbox."
941
+ msgstr ""
942
+
943
+ #: options/phrases-layouts/phrases-comment.php:7
944
+ msgid "Comment Template Phrases"
945
+ msgstr "Yorum Şablonu için İfadeler"
946
+
947
+ #: options/phrases-layouts/phrases-comment.php:112
948
+ msgid "Title For Guests"
949
+ msgstr "Ziyaretçiler için Başlık Yazısı"
950
+
951
+ #: options/phrases-layouts/phrases-comment.php:122
952
+ msgid "Title For Members"
953
+ msgstr "Üyeler için Başlık Yazısı"
954
+
955
+ #: options/phrases-layouts/phrases-comment.php:132
956
+ msgid "Title For Authors"
957
+ msgstr "Yazar için Başlık Yazısı"
958
+
959
+ #: options/phrases-layouts/phrases-comment.php:142
960
+ msgid "Title For Admins"
961
+ msgstr "Yönetici için Başlık Yazısı"
962
+
963
+ #: options/phrases-layouts/phrases-comment.php:172
964
+ msgid "Save edited comment button text"
965
+ msgstr "\"Düzenlenen yorumu kaydet\" buton yazısı"
966
+
967
+ #: options/phrases-layouts/phrases-comment.php:182
968
+ msgid "Cancel comment editing button text"
969
+ msgstr "\"Yorum düzenlemeyi iptal et\" buton yazısı"
970
+
971
+ #: options/phrases-layouts/phrases-datetime.php:7
972
+ msgid "Date/Time Phrases"
973
+ msgstr "Tarih/Zaman İfadeleri"
974
+
975
+ #: options/phrases-layouts/phrases-datetime.php:12
976
+ msgid "Year"
977
+ msgstr "Yıl"
978
+
979
+ #: options/phrases-layouts/phrases-datetime.php:22
980
+ msgid "Years (Plural Form)"
981
+ msgstr "Yıl (Çoğul Form)"
982
+
983
+ #: options/phrases-layouts/phrases-datetime.php:26
984
+ msgid "Years"
985
+ msgstr "Yıl"
986
+
987
+ #: options/phrases-layouts/phrases-datetime.php:32
988
+ msgid "Month"
989
+ msgstr "Ay"
990
+
991
+ #: options/phrases-layouts/phrases-datetime.php:42
992
+ msgid "Months (Plural Form)"
993
+ msgstr "Ay (Çoğul Form)"
994
+
995
+ #: options/phrases-layouts/phrases-datetime.php:52
996
+ msgid "Day"
997
+ msgstr "Gün"
998
+
999
+ #: options/phrases-layouts/phrases-datetime.php:62
1000
+ msgid "Days (Plural Form)"
1001
+ msgstr "Gün (Çoğul Form)"
1002
+
1003
+ #: options/phrases-layouts/phrases-datetime.php:82
1004
+ msgid "Hours (Plural Form)"
1005
+ msgstr "Saat (Çoğul Form)"
1006
+
1007
+ #: options/phrases-layouts/phrases-datetime.php:102
1008
+ msgid "Minutes (Plural Form)"
1009
+ msgstr "Dakika (Çoğul Form)"
1010
+
1011
+ #: options/phrases-layouts/phrases-datetime.php:112
1012
+ msgid "Second"
1013
+ msgstr "Saniye"
1014
+
1015
+ #: options/phrases-layouts/phrases-datetime.php:122
1016
+ msgid "Seconds (Plural Form)"
1017
+ msgstr "Saniye (Çoğul Form)"
1018
+
1019
+ #: options/phrases-layouts/phrases-datetime.php:132
1020
+ msgid "Commented \"right now\" text"
1021
+ msgstr "Yorum \"şuan yapıldı\" yazısı"
1022
+
1023
+ #: options/phrases-layouts/phrases-datetime.php:142
1024
+ msgid "Ago text"
1025
+ msgstr "\"Önce\" yazısı"
1026
+
1027
+ #: options/phrases-layouts/phrases-datetime.php:152
1028
+ msgid "\"Today\" text"
1029
+ msgstr "\"Bugün\" yazısı"
1030
+
1031
+ #: options/phrases-layouts/phrases-email.php:7
1032
+ msgid "Email Template Phrases"
1033
+ msgstr "E-Posta Şablonu için İfadeler"
1034
+
1035
+ #: options/phrases-layouts/phrases-email.php:12
1036
+ msgid "Email Subject"
1037
+ msgstr "E-Posta Konusu"
1038
+
1039
+ #: options/phrases-layouts/phrases-email.php:22
1040
+ msgid "Email Message"
1041
+ msgstr "E-Posta Mesajı"
1042
+
1043
+ #: options/phrases-layouts/phrases-email.php:32
1044
+ msgid "New Reply Subject"
1045
+ msgstr "Yeni Cevap Konusu"
1046
+
1047
+ #: options/phrases-layouts/phrases-email.php:42
1048
+ msgid "New Reply Message"
1049
+ msgstr "Yeni Cevap Mesajı"
1050
+
1051
+ #: options/phrases-layouts/phrases-email.php:62
1052
+ #: options/phrases-layouts/phrases-email.php:66
1053
+ msgid "Ignore Subscription"
1054
+ msgstr ""
1055
+
1056
+ #: options/phrases-layouts/phrases-email.php:92
1057
+ msgid "Subscribe Confirmation Email Subject"
1058
+ msgstr ""
1059
+
1060
+ #: options/phrases-layouts/phrases-email.php:102
1061
+ msgid "Subscribe Confirmation Email Content"
1062
+ msgstr ""
1063
+
1064
+ #: options/phrases-layouts/phrases-form.php:7
1065
+ msgid "Form Template Phrases"
1066
+ msgstr "Form Şablonu için İfadeler"
1067
+
1068
+ #: options/phrases-layouts/phrases-form.php:12
1069
+ msgid "Comment Field Start"
1070
+ msgstr "\"İlk yorumu başlat\" alanı"
1071
+
1072
+ #: options/phrases-layouts/phrases-form.php:22
1073
+ msgid "Comment Field Join"
1074
+ msgstr "\"Sende yorumda bulun\" alanı"
1075
+
1076
+ #: options/phrases-layouts/phrases-form.php:32
1077
+ msgid "Email Field"
1078
+ msgstr "E-Posta Alanı"
1079
+
1080
+ #: options/phrases-layouts/phrases-form.php:42
1081
+ msgid "Name Field"
1082
+ msgstr "İsim Alanı"
1083
+
1084
+ #: options/phrases-layouts/phrases-form.php:52
1085
+ msgid "WebSite URL Field"
1086
+ msgstr "Web Site Bağlantı Alanı"
1087
+
1088
+ #: options/phrases-layouts/phrases-form.php:62
1089
+ msgid "CAPTCHA Field"
1090
+ msgstr "Captcha Kod Alanı"
1091
+
1092
+ #: options/phrases-layouts/phrases-form.php:72
1093
+ msgid "Submit Button"
1094
+ msgstr "\"Onayla\" butonu"
1095
+
1096
+ #: options/phrases-layouts/phrases-form.php:92
1097
+ msgid "Notify on new comments"
1098
+ msgstr "Bu yazıya yapılan yeni yorumlarda bildir"
1099
+
1100
+ #: options/phrases-layouts/phrases-form.php:102
1101
+ msgid "Notify on all new replies"
1102
+ msgstr "Bu yoruma yapılan tüm yeni cevaplarda bildir"
1103
+
1104
+ #: options/phrases-layouts/phrases-form.php:106
1105
+ msgid "new replies to all my comments"
1106
+ msgstr "Tüm yorumlarıma yapılan yeni cevaplarda bildir"
1107
+
1108
+ #: options/phrases-layouts/phrases-form.php:112
1109
+ msgid "Notify on new replies (checkbox)"
1110
+ msgstr "Yeni yanıtlarda bildir (onay kutusu)"
1111
+
1112
+ #: options/phrases-layouts/phrases-form.php:162
1113
+ msgid "Subscribed on this comment replies"
1114
+ msgstr ""
1115
+
1116
+ #: options/phrases-layouts/phrases-form.php:172
1117
+ msgid "Subscribed on all your comments replies"
1118
+ msgstr ""
1119
+
1120
+ #: options/phrases-layouts/phrases-form.php:182
1121
+ msgid "Subscribed on this post"
1122
+ msgstr ""
1123
+
1124
+ #: options/phrases-layouts/phrases-general.php:7
1125
+ msgid "General Phrases"
1126
+ msgstr "Genel İfade Biçimleri"
1127
+
1128
+ #: options/phrases-layouts/phrases-general.php:22
1129
+ msgid "Be the first to comment"
1130
+ msgstr ""
1131
+
1132
+ #: options/phrases-layouts/phrases-general.php:42
1133
+ msgid "Comment (Plural Form)"
1134
+ msgstr "Yorum"
1135
+
1136
+ #: options/phrases-layouts/phrases-general.php:52
1137
+ msgid "On"
1138
+ msgstr ""
1139
+
1140
+ #: options/phrases-layouts/phrases-general.php:62
1141
+ msgid "Load More Button"
1142
+ msgstr "\"Tüm Yorumları Gör\" Butonu"
1143
+
1144
+ #: options/phrases-layouts/phrases-general.php:82
1145
+ msgid "Button text if has new comment"
1146
+ msgstr ""
1147
+
1148
+ #: options/phrases-layouts/phrases-general.php:92
1149
+ msgid "Button text if has new comments (Plural Form)"
1150
+ msgstr ""
1151
+
1152
+ #: options/phrases-layouts/phrases-general.php:96
1153
+ msgid "New Comments"
1154
+ msgstr "Yeni Yorumlar"
1155
+
1156
+ #: options/phrases-layouts/phrases-general.php:102
1157
+ msgid "Button text if has new reply"
1158
+ msgstr ""
1159
+
1160
+ #: options/phrases-layouts/phrases-general.php:112
1161
+ msgid "Button text if has new replies (Plural Form)"
1162
+ msgstr ""
1163
+
1164
+ #: options/phrases-layouts/phrases-general.php:116
1165
+ msgid "New Replies"
1166
+ msgstr "Yeni Yanıtlar"
1167
+
1168
+ #: options/phrases-layouts/phrases-general.php:122
1169
+ msgid "Text on load more button if has new comment(s)"
1170
+ msgstr ""
1171
+
1172
+ #: options/phrases-layouts/phrases-notification.php:7
1173
+ msgid "Notification Phrases"
1174
+ msgstr "Bildirim İfadeleri"
1175
+
1176
+ #: options/phrases-layouts/phrases-notification.php:12
1177
+ msgid "You\\'re subscribed to"
1178
+ msgstr ""
1179
+
1180
+ #: options/phrases-layouts/phrases-notification.php:42
1181
+ msgid "Error message for empty field"
1182
+ msgstr ""
1183
+
1184
+ #: options/phrases-layouts/phrases-notification.php:52
1185
+ msgid "Error message for invalid email field"
1186
+ msgstr ""
1187
+
1188
+ #: options/phrases-layouts/phrases-notification.php:62
1189
+ msgid "Error message for invalid website url field"
1190
+ msgstr ""
1191
+
1192
+ #: options/phrases-layouts/phrases-notification.php:82
1193
+ msgid "Logged in as"
1194
+ msgstr ""
1195
+
1196
+ #: options/phrases-layouts/phrases-notification.php:102
1197
+ msgid "Logged In"
1198
+ msgstr ""
1199
+
1200
+ #: options/phrases-layouts/phrases-notification.php:112
1201
+ msgid "To post a comment"
1202
+ msgstr ""
1203
+
1204
+ #: options/phrases-layouts/phrases-notification.php:132
1205
+ msgid "You can vote only 1 time"
1206
+ msgstr "Sadece 1 kere oylayabilirsiniz."
1207
+
1208
+ #: options/phrases-layouts/phrases-notification.php:152
1209
+ msgid "Login To Vote"
1210
+ msgstr ""
1211
+
1212
+ #: options/phrases-layouts/phrases-notification.php:162
1213
+ msgid "You Cannot Vote On Your Comment"
1214
+ msgstr ""
1215
+
1216
+ #: options/phrases-layouts/phrases-notification.php:172
1217
+ msgid "You are not allowed to vote for this comment (Voting from same IP)"
1218
+ msgstr ""
1219
+
1220
+ #: options/phrases-layouts/phrases-notification.php:202
1221
+ msgid "Comment waiting moderation"
1222
+ msgstr "Yorum yönetici onayı bekliyor"
1223
+
1224
+ #: options/phrases-layouts/phrases-notification.php:212
1225
+ msgid "Message if comment content length is too short"
1226
+ msgstr ""
1227
+
1228
+ #: options/phrases-layouts/phrases-notification.php:222
1229
+ msgid "Message if comment content length is too long"
1230
+ msgstr ""
1231
+
1232
+ #: options/phrases-layouts/phrases-notification.php:232
1233
+ msgid "Message if comment was not updated"
1234
+ msgstr ""
1235
+
1236
+ #: options/phrases-layouts/phrases-notification.php:242
1237
+ msgid "Message if comment no longer possible to edit"
1238
+ msgstr ""
1239
+
1240
+ #: options/phrases-layouts/phrases-notification.php:252
1241
+ msgid "Message if comment text not changed"
1242
+ msgstr ""
1243
+
1244
+ #: options/phrases-layouts/phrases-notification.php:256
1245
+ msgid "TYou've not made any changes"
1246
+ msgstr ""
1247
+
1248
+ #: templates/comment/comment-form.php:51
1249
+ msgid "Unable to send an email"
1250
+ msgstr "E-Posta gönderilemedi"
1251
+
1252
+ #: templates/comment/comment-form.php:53
1253
+ msgid "Subscription not successed"
1254
+ msgstr ""
1255
+
1256
+ #: utils/class.WpdiscuzHelper.php:374
1257
+ msgid "Error"
1258
+ msgstr "Hata"
1259
+
1260
+ #: utils/class.WpdiscuzHelper.php:394
1261
+ msgid "Participate in this discussion via email"
1262
+ msgstr ""
1263
+
1264
+ #. Plugin Name of the plugin/theme
1265
+ msgid "wpDiscuz - Supercharged native comments"
1266
+ msgstr "wpDiscuz - Heyecan verici yorum eklentisi"
1267
+
1268
+ #. Plugin URI of the plugin/theme
1269
+ msgid "http://www.gvectors.com/wpdiscuz/"
1270
+ msgstr "http://www.gvectors.com/wpdiscuz/"
1271
+
1272
+ #. Description of the plugin/theme
1273
+ msgid ""
1274
+ "Better comment system. Wordpress post comments and discussion plugin. Allows "
1275
+ "your visitors discuss, vote for comments and share."
1276
+ msgstr ""
1277
+ "En iyi yorum uygulaması. Wordpress yorum ve tartışma eklentisi. "
1278
+ "Ziyaretçilerinizin, görüş, yorum ve paylaşım için oy vermesini sağlar."
1279
+
1280
+ #. Author of the plugin/theme
1281
+ msgid "gVectors Team (A. Chakhoyan, G. Zakaryan, H. Martirosyan)"
1282
+ msgstr "gVectors Team (A. Chakhoyan, G. Zakaryan, H. Martirosyan)"
1283
+
1284
+ #. Author URI of the plugin/theme
1285
+ msgid "http://www.gvectors.com/"
1286
+ msgstr "http://www.gvectors.com/"
manager/class.WpdiscuzDBManager.php CHANGED
@@ -291,7 +291,7 @@ class WpdiscuzDBManager {
291
  * get first level comments by parent comment id
292
  */
293
  public function getCommentsByParentId($comment_id) {
294
- $sql_comments = $this->db->prepare("SELECT `comment_ID` FROM `" . $this->dbprefix . "comments` WHERE `comment_parent` = %d", $comment_id);
295
  $comments_id = $this->db->get_results($sql_comments, ARRAY_N);
296
  return $this->matrixToArray($comments_id);
297
  }
291
  * get first level comments by parent comment id
292
  */
293
  public function getCommentsByParentId($comment_id) {
294
+ $sql_comments = $this->db->prepare("SELECT `comment_ID` FROM `" . $this->dbprefix . "comments` WHERE `comment_parent` = %d", $comment_id);
295
  $comments_id = $this->db->get_results($sql_comments, ARRAY_N);
296
  return $this->matrixToArray($comments_id);
297
  }
options/class.WpdiscuzOptions.php CHANGED
@@ -1,467 +1,469 @@
1
- <?php
2
-
3
- class WpdiscuzOptions {
4
-
5
- private $optionsSerialized;
6
- private $dbManager;
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
- /**
18
- * Builds options page
19
- */
20
- public function mainOptionsForm() {
21
- $defaultPostTypes = get_post_types('', 'names');
22
- foreach ($defaultPostTypes as $postType) {
23
- if ($postType != 'revision' && $postType != 'nav_menu_item') {
24
- $this->postTypes[] = $postType;
25
- }
26
- }
27
- $this->blogRoles['post_author'] = '#00B38F';
28
- $blogRoles = get_editable_roles();
29
- foreach ($blogRoles as $roleName => $roleInfo) {
30
- $this->blogRoles[$roleName] = '#00B38F';
31
- }
32
- $this->blogRoles['guest'] = '#00B38F';
33
-
34
- if (isset($_POST['wc_submit_options'])) {
35
-
36
- if (function_exists('current_user_can') && !current_user_can('manage_options')) {
37
- die(_e('Hacker?', 'wpdiscuz'));
38
- }
39
-
40
- if (function_exists('check_admin_referer')) {
41
- check_admin_referer('wc_options_form');
42
- }
43
-
44
- $this->optionsSerialized->postTypes = isset($_POST['wc_post_types']) ? $_POST['wc_post_types'] : array();
45
- $this->optionsSerialized->commentListUpdateType = isset($_POST['wc_comment_list_update_type']) ? $_POST['wc_comment_list_update_type'] : 0;
46
- $this->optionsSerialized->commentListUpdateTimer = isset($_POST['wc_comment_list_update_timer']) ? $_POST['wc_comment_list_update_timer'] : 30;
47
- $this->optionsSerialized->liveUpdateGuests = isset($_POST['wc_live_update_guests']) ? $_POST['wc_live_update_guests'] : 0;
48
- $this->optionsSerialized->commentEditableTime = isset($_POST['wc_comment_editable_time']) ? $_POST['wc_comment_editable_time'] : 900;
49
- $this->optionsSerialized->redirectPage = isset($_POST['wpdiscuz_redirect_page']) ? $_POST['wpdiscuz_redirect_page'] : 0;
50
- $this->optionsSerialized->isGuestCanVote = isset($_POST['wc_is_guest_can_vote']) ? $_POST['wc_is_guest_can_vote'] : 0;
51
- $this->optionsSerialized->commentListLoadType = isset($_POST['commentListLoadType']) ? $_POST['commentListLoadType'] : 0;
52
- $this->optionsSerialized->votingButtonsShowHide = isset($_POST['wc_voting_buttons_show_hide']) ? $_POST['wc_voting_buttons_show_hide'] : 0;
53
- $this->optionsSerialized->shareButtons = isset($_POST['wpdiscuz_share_buttons']) ? $_POST['wpdiscuz_share_buttons'] : array();
54
- $this->optionsSerialized->captchaShowHide = isset($_POST['wc_captcha_show_hide']) ? $_POST['wc_captcha_show_hide'] : 0;
55
- $this->optionsSerialized->captchaShowHideForMembers = isset($_POST['wc_captcha_show_hide_for_members']) ? $_POST['wc_captcha_show_hide_for_members'] : 0;
56
- $this->optionsSerialized->weburlShowHide = isset($_POST['wc_weburl_show_hide']) ? $_POST['wc_weburl_show_hide'] : 0;
57
- $this->optionsSerialized->headerTextShowHide = isset($_POST['wc_header_text_show_hide']) ? $_POST['wc_header_text_show_hide'] : 0;
58
- $this->optionsSerialized->isNameFieldRequired = isset($_POST['wc_is_name_field_required']) ? $_POST['wc_is_name_field_required'] : 0;
59
- $this->optionsSerialized->isEmailFieldRequired = isset($_POST['wc_is_email_field_required']) ? $_POST['wc_is_email_field_required'] : 0;
60
- $this->optionsSerialized->showHideLoggedInUsername = isset($_POST['wc_show_hide_loggedin_username']) ? $_POST['wc_show_hide_loggedin_username'] : 0;
61
- $this->optionsSerialized->replyButtonGuestsShowHide = isset($_POST['wc_reply_button_guests_show_hide']) ? $_POST['wc_reply_button_guests_show_hide'] : 0;
62
- $this->optionsSerialized->replyButtonMembersShowHide = isset($_POST['wc_reply_button_members_show_hide']) ? $_POST['wc_reply_button_members_show_hide'] : 0;
63
- $this->optionsSerialized->authorTitlesShowHide = isset($_POST['wc_author_titles_show_hide']) ? $_POST['wc_author_titles_show_hide'] : 0;
64
- $this->optionsSerialized->simpleCommentDate = isset($_POST['wc_simple_comment_date']) ? $_POST['wc_simple_comment_date'] : 0;
65
- $this->optionsSerialized->showSubscriptionBar = isset($_POST['show_subscription_bar']) ? $_POST['show_subscription_bar'] : 0;
66
- $this->optionsSerialized->showHideReplyCheckbox = isset($_POST['wc_show_hide_reply_checkbox']) ? $_POST['wc_show_hide_reply_checkbox'] : 0;
67
- $this->optionsSerialized->showSortingButtons = isset($_POST['show_sorting_buttons']) ? $_POST['show_sorting_buttons'] : 0;
68
- $this->optionsSerialized->mostVotedByDefault = isset($_POST['mostVotedByDefault']) ? $_POST['mostVotedByDefault'] : 0;
69
- $this->optionsSerialized->usePostmaticForCommentNotification = isset($_POST['wc_use_postmatic_for_comment_notification']) ? $_POST['wc_use_postmatic_for_comment_notification'] : 0;
70
- $this->optionsSerialized->formBGColor = isset($_POST['wc_form_bg_color']) ? $_POST['wc_form_bg_color'] : '#f9f9f9';
71
- $this->optionsSerialized->commentTextSize = isset($_POST['wc_comment_text_size']) ? $_POST['wc_comment_text_size'] : '14px';
72
- $this->optionsSerialized->commentBGColor = isset($_POST['wc_comment_bg_color']) ? $_POST['wc_comment_bg_color'] : '#fefefe';
73
- $this->optionsSerialized->replyBGColor = isset($_POST['wc_reply_bg_color']) ? $_POST['wc_reply_bg_color'] : '#f8f8f8';
74
- $this->optionsSerialized->commentTextColor = isset($_POST['wc_comment_text_color']) ? $_POST['wc_comment_text_color'] : '#555';
75
- $this->optionsSerialized->primaryColor = isset($_POST['wc_comment_username_color']) ? $_POST['wc_comment_username_color'] : '#00B38F';
76
- $this->optionsSerialized->blogRoles = isset($_POST['wc_blog_roles']) ? wp_parse_args($_POST['wc_blog_roles'], $this->blogRoles) : $this->blogRoles;
77
- $this->optionsSerialized->voteReplyColor = isset($_POST['wc_vote_reply_color']) ? $_POST['wc_vote_reply_color'] : '#666666';
78
- $this->optionsSerialized->inputBorderColor = isset($_POST['wc_input_border_color']) ? $_POST['wc_input_border_color'] : '#d9d9d9';
79
- $this->optionsSerialized->newLoadedCommentBGColor = isset($_POST['wc_new_loaded_comment_bg_color']) ? $_POST['wc_new_loaded_comment_bg_color'] : '#FFFAD6';
80
- $this->optionsSerialized->customCss = isset($_POST['wc_custom_css']) ? $_POST['wc_custom_css'] : '.comments-area{width:auto; margin: 0 auto;}';
81
- $this->optionsSerialized->showPluginPoweredByLink = isset($_POST['wc_show_plugin_powerid_by']) ? $_POST['wc_show_plugin_powerid_by'] : 0;
82
- $this->optionsSerialized->isUsePoMo = isset($_POST['wc_is_use_po_mo']) ? $_POST['wc_is_use_po_mo'] : 0;
83
- $this->optionsSerialized->disableMemberConfirm = isset($_POST['wc_disable_member_confirm']) ? $_POST['wc_disable_member_confirm'] : 0;
84
- $this->optionsSerialized->commentTextMinLength = (isset($_POST['wc_comment_text_min_length']) && intval($_POST['wc_comment_text_min_length']) && intval($_POST['wc_comment_text_min_length']) > 0) ? intval($_POST['wc_comment_text_min_length']) : 1;
85
- $this->optionsSerialized->commentTextMaxLength = (isset($_POST['wc_comment_text_max_length']) && intval($_POST['wc_comment_text_max_length']) && intval($_POST['wc_comment_text_max_length']) > 0) ? intval($_POST['wc_comment_text_max_length']) : '';
86
- $this->optionsSerialized->showHideCommentLink = isset($_POST['showHideCommentLink']) ? $_POST['showHideCommentLink'] : 0;
87
- $this->optionsSerialized->updateOptions();
88
- }
89
- ?>
90
-
91
- <div class="wrap wpdiscuz_options_page">
92
- <div style="float:left; width:50px; height:55px; margin:10px 10px 20px 0px;">
93
- <img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/assets/img/plugin-icon/plugin-icon-48.png'); ?>"/>
94
- </div>
95
- <h2 style="padding-bottom:20px; padding-top:15px;"><?php _e('wpDiscuz General Settings', 'wpdiscuz'); ?></h2>
96
- <br style="clear:both" />
97
- <link rel="stylesheet" href="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>bxslider/jquery.bxslider.css" type="text/css" />
98
- <script src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>bxslider/jquery.min.js"></script>
99
- <script src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>bxslider/jquery.bxslider.js"></script>
100
- <table width="100%" border="0" cellspacing="1" class="widefat">
101
- <tr>
102
- <td style="padding:10px; padding-left:0px; vertical-align:top; width:500px;">
103
- <div class="slider">
104
- <ul class="bxslider">
105
- <li><a href="https://wordpress.org/plugins/woodiscuz-woocommerce-comments/screenshots/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/3.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
106
- <li><a href="https://wordpress.org/plugins/woocommerce-category-slider/screenshots/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/5.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
107
- <li><a href="https://wordpress.org/plugins/woocommerce-pdf-print/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/4.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
108
- <li><a href="https://wordpress.org/plugins/advanced-content-pagination/screenshots/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/1.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
109
- <li><a href="https://wordpress.org/plugins/author-and-post-statistic-widgets/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/2.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
110
- </ul>
111
- </div>
112
- <div style="clear:both"></div>
113
- </td>
114
- <td valign="top" style="padding:20px;">
115
- <table width="100%" border="0" cellspacing="1" class="widefat">
116
- <thead>
117
- <tr>
118
- <th style="font-size:14px; background-color:#FEFCE7">&nbsp;Information</th>
119
- </tr>
120
- </thead>
121
- <tr valign="top">
122
- <td style="background:#FFF; text-align:left; font-size:13px;">
123
- wpDiscuz is also available for WooCommerce. The WooCommerce Comments plugin name is <a href="https://wordpress.org/plugins/woodiscuz-woocommerce-comments/" style="color:#993399; text-decoration:underline;"><strong>WooDiscuz</strong></a>. It adds a new "Discussion" Tab on product page and allows your customers ask Pre-Sale Questions and discuss about your products.
124
- </td>
125
- </tr>
126
- </table><br />
127
- <table width="100%" border="0" cellspacing="1" class="widefat">
128
- <thead>
129
- <tr>
130
- <th style="font-size:16px; background-color:#FEFCE7;"><strong>Like wpDiscuz?</strong> <br /><span style="font-size:15px">We really need your reviews!</span></th>
131
- </tr>
132
- </thead>
133
- <tr valign="top">
134
- <td style="background:#FFF; text-align:left; font-size:13px;">
135
- We do our best to make wpDiscuz the best self-hosted comment plugin for Wordpress. Thousands users are currently satisfied with wpDiscuz but only about 1% of them give us 5 start rating.
136
- However we have a very few users who for some very specific reasons are not satisfied and they are very active in decreasing wpDiscuz rating.
137
- Please help us keep plugin rating high, encouraging us to develop and maintain this plugin. Take a one minute to leave <a href="https://wordpress.org/support/view/plugin-reviews/wpdiscuz?filter=5" title="Go to wpDiscuz Reviews section on Wordpress.org"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/5s.png" border="0" align="absmiddle" /></a> star review on <a href="https://wordpress.org/support/view/plugin-reviews/wpdiscuz?filter=5">Wordpress.org</a>. Thank You!
138
- <hr style="border-style:dotted;" />
139
- <div style="width:200px; float:right;">
140
- <form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
141
- <input type="hidden" name="cmd" value="_s-xclick"><input type="hidden" name="hosted_button_id" value="UC44WQM5XJFPA"><input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"><img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
142
- </form>
143
- </div>
144
- We spend as much of my spare time as possible working on wpDiscuz and any donation is appreciated. Donations play a crucial role in supporting Free and Open Source Software projects.
145
- </td>
146
- </tr>
147
- </table>
148
- </td>
149
- </tr>
150
- </table>
151
- <script>
152
- $('.bxslider').bxSlider({
153
- mode: 'fade',
154
- captions: false,
155
- auto: true
156
- });
157
- </script>
158
- <br />
159
- <?php
160
- if (isset($_GET['wpdiscuz_reset_options']) && $_GET['wpdiscuz_reset_options'] == 1 && current_user_can('manage_options')) {
161
- delete_option(WpdiscuzCore::OPTION_SLUG_OPTIONS);
162
- $this->optionsSerialized->postTypes = array('post');
163
- $this->optionsSerialized->shareButtons = array('fb', 'twitter', 'google');
164
- $this->optionsSerialized->addOptions();
165
- $this->optionsSerialized->initOptions(get_option(WpdiscuzCore::OPTION_SLUG_OPTIONS));
166
- $this->optionsSerialized->blogRoles['post_author'] = '#00B38F';
167
- $blogRoles = get_editable_roles();
168
- foreach ($blogRoles as $roleName => $roleInfo) {
169
- $this->optionsSerialized->blogRoles[$roleName] = '#00B38F';
170
- }
171
- $this->optionsSerialized->blogRoles['guest'] = '#00B38F';
172
- $this->optionsSerialized->showPluginPoweredByLink = 1;
173
- $this->optionsSerialized->updateOptions();
174
- }
175
- ?>
176
-
177
- <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">
178
- <?php
179
- if (function_exists('wp_nonce_field')) {
180
- wp_nonce_field('wc_options_form');
181
- }
182
- ?>
183
- <h2>&nbsp;</h2>
184
- <div id="optionsTab">
185
- <ul class="resp-tabs-list options_tab_id">
186
- <li><?php _e('General settings', 'wpdiscuz'); ?></li>
187
- <li><?php _e('Live Update', 'wpdiscuz'); ?></li>
188
- <li><?php _e('Show/Hide Components', 'wpdiscuz'); ?></li>
189
- <li><?php _e('Email Subscription', 'wpdiscuz'); ?> <?php if (class_exists('Prompt_Comment_Form_Handling')): ?> <?php _e('and Postmatic', 'wpdiscuz'); ?> <?php endif; ?></li>
190
- <li><?php _e('Background and Colors', 'wpdiscuz'); ?></li>
191
- <li><?php _e('Social Login', 'wpdiscuz'); ?></li>
192
- </ul>
193
- <div class="resp-tabs-container options_tab_id">
194
- <?php
195
- include 'options-layouts/settings-general.php';
196
- include 'options-layouts/settings-live-update.php';
197
- include 'options-layouts/settings-show-hide.php';
198
- include 'options-layouts/settings-subscription.php';
199
- include 'options-layouts/settings-style.php';
200
- include 'options-layouts/settings-social.php';
201
- ?>
202
- </div>
203
- </div>
204
- <script type="text/javascript">
205
- jQuery(document).ready(function ($) {
206
- var width = 0;
207
- var optionsTabsType = 'default';
208
- $('#optionsTab ul.resp-tabs-list.options_tab_id li').each(function () {
209
- width += $(this).outerWidth(true);
210
- });
211
-
212
- if (width > $('#optionsTab').innerWidth()) {
213
- optionsTabsType = 'vertical';
214
- }
215
-
216
- var url = '<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/assets/img/social-icons/'); ?>';
217
- $('.wpdiscuz-share-buttons').each(function () {
218
- setBG($(this));
219
- });
220
- $('.wpdiscuz-share-buttons').click(function () {
221
- setBG($(this));
222
- });
223
- function setBG(field) {
224
- if ($('.wc_share_button', field).is(':checked')) {
225
- $(field).css('background', 'url("' + url + $('.wc_share_button', field).val() + '-18x18-orig.png")');
226
- } else {
227
- $(field).css('background', 'url("' + url + $('.wc_share_button', field).val() + '-18x18.png")');
228
- }
229
- }
230
- //Horizontal Tab
231
- $('#optionsTab').easyResponsiveTabs({
232
- type: optionsTabsType, //Types: default, vertical, accordion
233
- width: 'auto', //auto or any width like 600px
234
- fit: true, // 100% fit in a container
235
- tabidentify: 'options_tab_id' // The tab groups identifier
236
- });
237
- $(document).delegate('.options_tab_id .resp-tab-item', 'click', function () {
238
- var activeTabIndex = $('.resp-tabs-list.options_tab_id li.resp-tab-active').index();
239
- $.cookie('optionsActiveTabIndex', activeTabIndex, {expires: 30});
240
- });
241
- var savedIndex = $.cookie('optionsActiveTabIndex') >= 0 ? $.cookie('optionsActiveTabIndex') : 0;
242
- $('.resp-tabs-list.options_tab_id li').removeClass('resp-tab-active');
243
- $('.resp-tabs-container.options_tab_id > div').removeClass('resp-tab-content-active');
244
- $('.resp-tabs-container.options_tab_id > div').css('display', 'none');
245
- $('.resp-tabs-list.options_tab_id li').eq(savedIndex).addClass('resp-tab-active');
246
- $('.resp-tabs-container.options_tab_id > div').eq(savedIndex).addClass('resp-tab-content-active');
247
- $('.resp-tabs-container.options_tab_id > div').eq(savedIndex).css('display', 'block');
248
- });
249
- </script>
250
- <table class="form-table wc-form-table">
251
- <tbody>
252
- <tr valign="top">
253
- <td colspan="4">
254
- <p class="submit">
255
- <a style="float: left;" class="button button-secondary" href="<?php echo admin_url(); ?>edit-comments.php?page=wpdiscuz_options_page&wpdiscuz_reset_options=1"><?php _e('Reset Options', 'wpdiscuz'); ?></a>
256
- <?php $clearChildrenUrl = admin_url('admin-post.php/?action=clearChildrenData&clear=1'); ?>
257
- <a href="<?php echo wp_nonce_url($clearChildrenUrl, 'clear_children_data'); ?>" class="button button-secondary" title="Use this button if wpDiscuz has been deactivated for a while." style="margin-left: 5px;" id="wpdiscuz_synch_comments"><?php _e('Refresh comment optimization', 'wpdiscuz'); ?></a>
258
- <input style="float: right;" type="submit" class="button button-primary" name="wc_submit_options" value="<?php _e('Save Changes', 'wpdiscuz'); ?>" />
259
- </p>
260
- </td>
261
- </tr>
262
- </tbody>
263
- </table>
264
- <input type="hidden" name="action" value="update" />
265
- </form>
266
- </div>
267
- <?php
268
- }
269
-
270
- public function phrasesOptionsForm() {
271
- if (isset($_POST['wc_submit_phrases'])) {
272
- if (function_exists('current_user_can') && !current_user_can('manage_options')) {
273
- die(_e('Hacker?', 'wpdiscuz'));
274
- }
275
- if (function_exists('check_admin_referer')) {
276
- check_admin_referer('wc_phrases_form');
277
- }
278
- $this->optionsSerialized->phrases['wc_leave_a_reply_text'] = $_POST['wc_leave_a_reply_text'];
279
- $this->optionsSerialized->phrases['wc_be_the_first_text'] = $_POST['wc_be_the_first_text'];
280
- $this->optionsSerialized->phrases['wc_header_text'] = $_POST['wc_header_text'];
281
- $this->optionsSerialized->phrases['wc_header_text_plural'] = $_POST['wc_header_text_plural'];
282
- $this->optionsSerialized->phrases['wc_header_on_text'] = $_POST['wc_header_on_text'];
283
- $this->optionsSerialized->phrases['wc_comment_start_text'] = $_POST['wc_comment_start_text'];
284
- $this->optionsSerialized->phrases['wc_comment_join_text'] = $_POST['wc_comment_join_text'];
285
- $this->optionsSerialized->phrases['wc_email_text'] = $_POST['wc_email_text'];
286
- $this->optionsSerialized->phrases['wc_name_text'] = $_POST['wc_name_text'];
287
- $this->optionsSerialized->phrases['wc_website_text'] = $_POST['wc_website_text'];
288
- $this->optionsSerialized->phrases['wc_captcha_text'] = $_POST['wc_captcha_text'];
289
- $this->optionsSerialized->phrases['wc_submit_text'] = $_POST['wc_submit_text'];
290
- $this->optionsSerialized->phrases['wc_notify_of'] = $_POST['wc_notify_of'];
291
- $this->optionsSerialized->phrases['wc_notify_on_new_comment'] = $_POST['wc_notify_on_new_comment'];
292
- $this->optionsSerialized->phrases['wc_notify_on_all_new_reply'] = $_POST['wc_notify_on_all_new_reply'];
293
- $this->optionsSerialized->phrases['wc_notify_on_new_reply'] = $_POST['wc_notify_on_new_reply'];
294
- $this->optionsSerialized->phrases['wc_sort_by'] = $_POST['wc_sort_by'];
295
- $this->optionsSerialized->phrases['wc_newest'] = $_POST['wc_newest'];
296
- $this->optionsSerialized->phrases['wc_oldest'] = $_POST['wc_oldest'];
297
- $this->optionsSerialized->phrases['wc_most_voted'] = $_POST['wc_most_voted'];
298
- $this->optionsSerialized->phrases['wc_load_more_submit_text'] = $_POST['wc_load_more_submit_text'];
299
- $this->optionsSerialized->phrases['wc_load_rest_comments_submit_text'] = $_POST['wc_load_rest_comments_submit_text'];
300
- $this->optionsSerialized->phrases['wc_reply_text'] = $_POST['wc_reply_text'];
301
- $this->optionsSerialized->phrases['wc_share_text'] = $_POST['wc_share_text'];
302
- $this->optionsSerialized->phrases['wc_edit_text'] = $_POST['wc_edit_text'];
303
- $this->optionsSerialized->phrases['wc_share_facebook'] = $_POST['wc_share_facebook'];
304
- $this->optionsSerialized->phrases['wc_share_twitter'] = $_POST['wc_share_twitter'];
305
- $this->optionsSerialized->phrases['wc_share_google'] = $_POST['wc_share_google'];
306
- $this->optionsSerialized->phrases['wc_share_vk'] = $_POST['wc_share_vk'];
307
- $this->optionsSerialized->phrases['wc_share_ok'] = $_POST['wc_share_ok'];
308
- $this->optionsSerialized->phrases['wc_hide_replies_text'] = $_POST['wc_hide_replies_text'];
309
- $this->optionsSerialized->phrases['wc_show_replies_text'] = $_POST['wc_show_replies_text'];
310
- $this->optionsSerialized->phrases['wc_user_title_guest_text'] = $_POST['wc_user_title_guest_text'];
311
- $this->optionsSerialized->phrases['wc_user_title_member_text'] = $_POST['wc_user_title_member_text'];
312
- $this->optionsSerialized->phrases['wc_user_title_author_text'] = $_POST['wc_user_title_author_text'];
313
- $this->optionsSerialized->phrases['wc_user_title_admin_text'] = $_POST['wc_user_title_admin_text'];
314
- $this->optionsSerialized->phrases['wc_email_subject'] = $_POST['wc_email_subject'];
315
- $this->optionsSerialized->phrases['wc_email_message'] = $_POST['wc_email_message'];
316
- $this->optionsSerialized->phrases['wc_new_reply_email_subject'] = $_POST['wc_new_reply_email_subject'];
317
- $this->optionsSerialized->phrases['wc_new_reply_email_message'] = $_POST['wc_new_reply_email_message'];
318
- $this->optionsSerialized->phrases['wc_subscribed_on_comment'] = $_POST['wc_subscribed_on_comment'];
319
- $this->optionsSerialized->phrases['wc_subscribed_on_all_comment'] = $_POST['wc_subscribed_on_all_comment'];
320
- $this->optionsSerialized->phrases['wc_subscribed_on_post'] = $_POST['wc_subscribed_on_post'];
321
- $this->optionsSerialized->phrases['wc_unsubscribe'] = $_POST['wc_unsubscribe'];
322
- $this->optionsSerialized->phrases['wc_ignore_subscription'] = $_POST['wc_ignore_subscription'];
323
- $this->optionsSerialized->phrases['wc_unsubscribe_message'] = $_POST['wc_unsubscribe_message'];
324
- $this->optionsSerialized->phrases['wc_subscribe_message'] = $_POST['wc_subscribe_message'];
325
- $this->optionsSerialized->phrases['wc_confirm_email'] = $_POST['wc_confirm_email'];
326
- $this->optionsSerialized->phrases['wc_comfirm_success_message'] = $_POST['wc_comfirm_success_message'];
327
- $this->optionsSerialized->phrases['wc_confirm_email_subject'] = $_POST['wc_confirm_email_subject'];
328
- $this->optionsSerialized->phrases['wc_confirm_email_message'] = $_POST['wc_confirm_email_message'];
329
- $this->optionsSerialized->phrases['wc_error_empty_text'] = $_POST['wc_error_empty_text'];
330
- $this->optionsSerialized->phrases['wc_error_email_text'] = $_POST['wc_error_email_text'];
331
- $this->optionsSerialized->phrases['wc_error_url_text'] = $_POST['wc_error_url_text'];
332
- $this->optionsSerialized->phrases['wc_year_text']['datetime'][0] = $_POST['wc_year_text'];
333
- $this->optionsSerialized->phrases['wc_year_text_plural']['datetime'][0] = $_POST['wc_year_text_plural'];
334
- $this->optionsSerialized->phrases['wc_month_text']['datetime'][0] = $_POST['wc_month_text'];
335
- $this->optionsSerialized->phrases['wc_month_text_plural']['datetime'][0] = $_POST['wc_month_text_plural'];
336
- $this->optionsSerialized->phrases['wc_day_text']['datetime'][0] = $_POST['wc_day_text'];
337
- $this->optionsSerialized->phrases['wc_day_text_plural']['datetime'][0] = $_POST['wc_day_text_plural'];
338
- $this->optionsSerialized->phrases['wc_hour_text']['datetime'][0] = $_POST['wc_hour_text'];
339
- $this->optionsSerialized->phrases['wc_hour_text_plural']['datetime'][0] = $_POST['wc_hour_text_plural'];
340
- $this->optionsSerialized->phrases['wc_minute_text']['datetime'][0] = $_POST['wc_minute_text'];
341
- $this->optionsSerialized->phrases['wc_minute_text_plural']['datetime'][0] = $_POST['wc_minute_text_plural'];
342
- $this->optionsSerialized->phrases['wc_second_text']['datetime'][0] = $_POST['wc_second_text'];
343
- $this->optionsSerialized->phrases['wc_second_text_plural']['datetime'][0] = $_POST['wc_second_text_plural'];
344
- $this->optionsSerialized->phrases['wc_right_now_text'] = $_POST['wc_right_now_text'];
345
- $this->optionsSerialized->phrases['wc_ago_text'] = $_POST['wc_ago_text'];
346
- $this->optionsSerialized->phrases['wc_posted_today_text'] = $_POST['wc_posted_today_text'];
347
- $this->optionsSerialized->phrases['wc_you_must_be_text'] = $_POST['wc_you_must_be_text'];
348
- $this->optionsSerialized->phrases['wc_logged_in_as'] = $_POST['wc_logged_in_as'];
349
- $this->optionsSerialized->phrases['wc_log_out'] = $_POST['wc_log_out'];
350
- $this->optionsSerialized->phrases['wc_logged_in_text'] = $_POST['wc_logged_in_text'];
351
- $this->optionsSerialized->phrases['wc_to_post_comment_text'] = $_POST['wc_to_post_comment_text'];
352
- $this->optionsSerialized->phrases['wc_vote_counted'] = $_POST['wc_vote_counted'];
353
- $this->optionsSerialized->phrases['wc_vote_up'] = $_POST['wc_vote_up'];
354
- $this->optionsSerialized->phrases['wc_vote_down'] = $_POST['wc_vote_down'];
355
- $this->optionsSerialized->phrases['wc_held_for_moderate'] = $_POST['wc_held_for_moderate'];
356
- $this->optionsSerialized->phrases['wc_vote_only_one_time'] = $_POST['wc_vote_only_one_time'];
357
- $this->optionsSerialized->phrases['wc_voting_error'] = $_POST['wc_voting_error'];
358
- $this->optionsSerialized->phrases['wc_self_vote'] = $_POST['wc_self_vote'];
359
- $this->optionsSerialized->phrases['wc_deny_voting_from_same_ip'] = $_POST['wc_deny_voting_from_same_ip'];
360
- $this->optionsSerialized->phrases['wc_login_to_vote'] = $_POST['wc_login_to_vote'];
361
- $this->optionsSerialized->phrases['wc_invalid_captcha'] = $_POST['wc_invalid_captcha'];
362
- $this->optionsSerialized->phrases['wc_invalid_field'] = $_POST['wc_invalid_field'];
363
- $this->optionsSerialized->phrases['wc_new_comment_button_text'] = $_POST['wc_new_comment_button_text'];
364
- $this->optionsSerialized->phrases['wc_new_comments_button_text'] = $_POST['wc_new_comments_button_text'];
365
- $this->optionsSerialized->phrases['wc_new_reply_button_text'] = $_POST['wc_new_reply_button_text'];
366
- $this->optionsSerialized->phrases['wc_new_replies_button_text'] = $_POST['wc_new_replies_button_text'];
367
- $this->optionsSerialized->phrases['wc_new_comments_text'] = $_POST['wc_new_comments_text'];
368
- $this->optionsSerialized->phrases['wc_comment_not_updated'] = $_POST['wc_comment_not_updated'];
369
- $this->optionsSerialized->phrases['wc_comment_edit_not_possible'] = $_POST['wc_comment_edit_not_possible'];
370
- $this->optionsSerialized->phrases['wc_comment_not_edited'] = $_POST['wc_comment_not_edited'];
371
- $this->optionsSerialized->phrases['wc_comment_edit_save_button'] = $_POST['wc_comment_edit_save_button'];
372
- $this->optionsSerialized->phrases['wc_comment_edit_cancel_button'] = $_POST['wc_comment_edit_cancel_button'];
373
- $this->optionsSerialized->phrases['wc_msg_comment_text_min_length'] = $_POST['wc_msg_comment_text_min_length'];
374
- $this->optionsSerialized->phrases['wc_msg_comment_text_max_length'] = $_POST['wc_msg_comment_text_max_length'];
375
- $this->optionsSerialized->phrases['wc_msg_required_fields'] = $_POST['wc_msg_required_fields'];
376
- $this->optionsSerialized->phrases['wc_connect_with'] = $_POST['wc_connect_with'];
377
- $this->optionsSerialized->phrases['wc_subscribed_to'] = $_POST['wc_subscribed_to'];
378
- $this->dbManager->updatePhrases($this->optionsSerialized->phrases);
379
- }
380
- $this->optionsSerialized->initPhrasesOnLoad();
381
- ?>
382
- <div class="wrap wpdiscuz_options_page">
383
- <div style="float:left; width:50px; height:55px; margin:10px 10px 20px 0px;">
384
- <img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/assets/img/plugin-icon/plugin-icon-48.png'); ?>" style="height:43px;"/>
385
- </div>
386
- <h2 style="padding-bottom:20px; padding-top:15px;"><?php _e('WpDiscuz Front-end Phrases', 'wpdiscuz'); ?></h2>
387
- <br style="clear:both" />
388
- <form action="<?php echo admin_url(); ?>edit-comments.php?page=wpdiscuz_phrases_page" method="post" name="wpdiscuz_phrases_page" class="wc-phrases-settings-form wc-form">
389
- <?php
390
- if (function_exists('wp_nonce_field')) {
391
- wp_nonce_field('wc_phrases_form');
392
- }
393
- ?>
394
- <div id="phrasesTab">
395
- <ul class="resp-tabs-list phrases_tab_id">
396
- <li><?php _e('General', 'wpdiscuz'); ?></li>
397
- <li><?php _e('Form', 'wpdiscuz'); ?></li>
398
- <li><?php _e('Comment', 'wpdiscuz'); ?></li>
399
- <li><?php _e('Date/Time', 'wpdiscuz'); ?></li>
400
- <li><?php _e('Email', 'wpdiscuz'); ?></li>
401
- <li><?php _e('Notification', 'wpdiscuz'); ?></li>
402
- </ul>
403
- <div class="resp-tabs-container phrases_tab_id">
404
- <?php include 'phrases-layouts/phrases-general.php'; ?>
405
- <?php include 'phrases-layouts/phrases-form.php'; ?>
406
- <?php include 'phrases-layouts/phrases-comment.php'; ?>
407
- <?php include 'phrases-layouts/phrases-datetime.php'; ?>
408
- <?php include 'phrases-layouts/phrases-email.php'; ?>
409
- <?php include 'phrases-layouts/phrases-notification.php'; ?>
410
- </div>
411
- </div>
412
- <script type="text/javascript">
413
- jQuery(document).ready(function ($) {
414
- var width = 0;
415
- var phrasesTabsType = 'default';
416
- $('#phrasesTab ul.resp-tabs-list.phrases_tab_id li').each(function () {
417
- width += $(this).outerWidth(true);
418
- });
419
-
420
- if (width > $('#phrasesTab').innerWidth()) {
421
- phrasesTabsType = 'vertical';
422
- }
423
- $('#phrasesTab').easyResponsiveTabs({
424
- type: 'default', //Types: default, vertical, accordion
425
- width: 'auto', //auto or any width like 600px
426
- fit: true, // 100% fit in a container
427
- tabidentify: 'phrases_tab_id' // The tab groups identifier
428
- });
429
- $(document).delegate('.phrases_tab_id .resp-tab-item', 'click', function () {
430
- var activeTabIndex = $('.resp-tabs-list.phrases_tab_id li.resp-tab-active').index();
431
- $.cookie('phrasesActiveTabIndex', activeTabIndex, {expires: 30});
432
- });
433
- var savedIndex = $.cookie('phrasesActiveTabIndex') >= 0 ? $.cookie('phrasesActiveTabIndex') : 0;
434
- $('.resp-tabs-list.phrases_tab_id li').removeClass('resp-tab-active');
435
- $('.resp-tabs-container.phrases_tab_id > div').removeClass('resp-tab-content-active');
436
- $('.resp-tabs-container.phrases_tab_id > div').css('display', 'none');
437
- $('.resp-tabs-list.phrases_tab_id li').eq(savedIndex).addClass('resp-tab-active');
438
- $('.resp-tabs-container.phrases_tab_id > div').eq(savedIndex).addClass('resp-tab-content-active');
439
- $('.resp-tabs-container.phrases_tab_id > div').eq(savedIndex).css('display', 'block');
440
- });
441
- </script>
442
- <table class="form-table wc-form-table">
443
- <tbody>
444
- <tr valign="top">
445
- <td colspan="4">
446
- <p class="submit">
447
- <input type="submit" class="button button-primary" name="wc_submit_phrases" value="<?php _e('Save Changes', 'wpdiscuz'); ?>" />
448
- </p>
449
- </td>
450
- </tr>
451
- <input type="hidden" name="action" value="update" />
452
- </tbody>
453
- </table>
454
- </form>
455
- </div>
456
- <?php
457
- }
458
-
459
- public function initShareButtons() {
460
- $this->shareButtons[] = 'fb';
461
- $this->shareButtons[] = 'twitter';
462
- $this->shareButtons[] = 'google';
463
- $this->shareButtons[] = 'vk';
464
- $this->shareButtons[] = 'ok';
465
- }
466
-
467
- }
 
 
1
+ <?php
2
+
3
+ class WpdiscuzOptions {
4
+
5
+ private $optionsSerialized;
6
+ private $dbManager;
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
+ /**
18
+ * Builds options page
19
+ */
20
+ public function mainOptionsForm() {
21
+ $defaultPostTypes = get_post_types('', 'names');
22
+ foreach ($defaultPostTypes as $postType) {
23
+ if ($postType != 'revision' && $postType != 'nav_menu_item') {
24
+ $this->postTypes[] = $postType;
25
+ }
26
+ }
27
+ $this->blogRoles['post_author'] = '#00B38F';
28
+ $blogRoles = get_editable_roles();
29
+ foreach ($blogRoles as $roleName => $roleInfo) {
30
+ $this->blogRoles[$roleName] = '#00B38F';
31
+ }
32
+ $this->blogRoles['guest'] = '#00B38F';
33
+
34
+ if (isset($_POST['wc_submit_options'])) {
35
+
36
+ if (function_exists('current_user_can') && !current_user_can('manage_options')) {
37
+ die(_e('Hacker?', 'wpdiscuz'));
38
+ }
39
+
40
+ if (function_exists('check_admin_referer')) {
41
+ check_admin_referer('wc_options_form');
42
+ }
43
+
44
+ $this->optionsSerialized->postTypes = isset($_POST['wc_post_types']) ? $_POST['wc_post_types'] : array();
45
+ $this->optionsSerialized->commentListUpdateType = isset($_POST['wc_comment_list_update_type']) ? $_POST['wc_comment_list_update_type'] : 0;
46
+ $this->optionsSerialized->commentListUpdateTimer = isset($_POST['wc_comment_list_update_timer']) ? $_POST['wc_comment_list_update_timer'] : 30;
47
+ $this->optionsSerialized->liveUpdateGuests = isset($_POST['wc_live_update_guests']) ? $_POST['wc_live_update_guests'] : 0;
48
+ $this->optionsSerialized->commentEditableTime = isset($_POST['wc_comment_editable_time']) ? $_POST['wc_comment_editable_time'] : 900;
49
+ $this->optionsSerialized->redirectPage = isset($_POST['wpdiscuz_redirect_page']) ? $_POST['wpdiscuz_redirect_page'] : 0;
50
+ $this->optionsSerialized->isGuestCanVote = isset($_POST['wc_is_guest_can_vote']) ? $_POST['wc_is_guest_can_vote'] : 0;
51
+ $this->optionsSerialized->commentListLoadType = isset($_POST['commentListLoadType']) ? $_POST['commentListLoadType'] : 0;
52
+ $this->optionsSerialized->votingButtonsShowHide = isset($_POST['wc_voting_buttons_show_hide']) ? $_POST['wc_voting_buttons_show_hide'] : 0;
53
+ $this->optionsSerialized->shareButtons = isset($_POST['wpdiscuz_share_buttons']) ? $_POST['wpdiscuz_share_buttons'] : array();
54
+ $this->optionsSerialized->captchaShowHide = isset($_POST['wc_captcha_show_hide']) ? $_POST['wc_captcha_show_hide'] : 0;
55
+ $this->optionsSerialized->captchaShowHideForMembers = isset($_POST['wc_captcha_show_hide_for_members']) ? $_POST['wc_captcha_show_hide_for_members'] : 0;
56
+ $this->optionsSerialized->weburlShowHide = isset($_POST['wc_weburl_show_hide']) ? $_POST['wc_weburl_show_hide'] : 0;
57
+ $this->optionsSerialized->headerTextShowHide = isset($_POST['wc_header_text_show_hide']) ? $_POST['wc_header_text_show_hide'] : 0;
58
+ $this->optionsSerialized->isNameFieldRequired = isset($_POST['wc_is_name_field_required']) ? $_POST['wc_is_name_field_required'] : 0;
59
+ $this->optionsSerialized->isEmailFieldRequired = isset($_POST['wc_is_email_field_required']) ? $_POST['wc_is_email_field_required'] : 0;
60
+ $this->optionsSerialized->showHideLoggedInUsername = isset($_POST['wc_show_hide_loggedin_username']) ? $_POST['wc_show_hide_loggedin_username'] : 0;
61
+ $this->optionsSerialized->replyButtonGuestsShowHide = isset($_POST['wc_reply_button_guests_show_hide']) ? $_POST['wc_reply_button_guests_show_hide'] : 0;
62
+ $this->optionsSerialized->replyButtonMembersShowHide = isset($_POST['wc_reply_button_members_show_hide']) ? $_POST['wc_reply_button_members_show_hide'] : 0;
63
+ $this->optionsSerialized->authorTitlesShowHide = isset($_POST['wc_author_titles_show_hide']) ? $_POST['wc_author_titles_show_hide'] : 0;
64
+ $this->optionsSerialized->simpleCommentDate = isset($_POST['wc_simple_comment_date']) ? $_POST['wc_simple_comment_date'] : 0;
65
+ $this->optionsSerialized->showSubscriptionBar = isset($_POST['show_subscription_bar']) ? $_POST['show_subscription_bar'] : 0;
66
+ $this->optionsSerialized->showHideReplyCheckbox = isset($_POST['wc_show_hide_reply_checkbox']) ? $_POST['wc_show_hide_reply_checkbox'] : 0;
67
+ $this->optionsSerialized->showSortingButtons = isset($_POST['show_sorting_buttons']) ? $_POST['show_sorting_buttons'] : 0;
68
+ $this->optionsSerialized->mostVotedByDefault = isset($_POST['mostVotedByDefault']) ? $_POST['mostVotedByDefault'] : 0;
69
+ $this->optionsSerialized->usePostmaticForCommentNotification = isset($_POST['wc_use_postmatic_for_comment_notification']) ? $_POST['wc_use_postmatic_for_comment_notification'] : 0;
70
+ $this->optionsSerialized->formBGColor = isset($_POST['wc_form_bg_color']) ? $_POST['wc_form_bg_color'] : '#f9f9f9';
71
+ $this->optionsSerialized->commentTextSize = isset($_POST['wc_comment_text_size']) ? $_POST['wc_comment_text_size'] : '14px';
72
+ $this->optionsSerialized->commentBGColor = isset($_POST['wc_comment_bg_color']) ? $_POST['wc_comment_bg_color'] : '#fefefe';
73
+ $this->optionsSerialized->replyBGColor = isset($_POST['wc_reply_bg_color']) ? $_POST['wc_reply_bg_color'] : '#f8f8f8';
74
+ $this->optionsSerialized->commentTextColor = isset($_POST['wc_comment_text_color']) ? $_POST['wc_comment_text_color'] : '#555';
75
+ $this->optionsSerialized->primaryColor = isset($_POST['wc_comment_username_color']) ? $_POST['wc_comment_username_color'] : '#00B38F';
76
+ $this->optionsSerialized->blogRoles = isset($_POST['wc_blog_roles']) ? wp_parse_args($_POST['wc_blog_roles'], $this->blogRoles) : $this->blogRoles;
77
+ $this->optionsSerialized->voteReplyColor = isset($_POST['wc_vote_reply_color']) ? $_POST['wc_vote_reply_color'] : '#666666';
78
+ $this->optionsSerialized->inputBorderColor = isset($_POST['wc_input_border_color']) ? $_POST['wc_input_border_color'] : '#d9d9d9';
79
+ $this->optionsSerialized->newLoadedCommentBGColor = isset($_POST['wc_new_loaded_comment_bg_color']) ? $_POST['wc_new_loaded_comment_bg_color'] : '#FFFAD6';
80
+ $this->optionsSerialized->customCss = isset($_POST['wc_custom_css']) ? $_POST['wc_custom_css'] : '.comments-area{width:auto; margin: 0 auto;}';
81
+ $this->optionsSerialized->showPluginPoweredByLink = isset($_POST['wc_show_plugin_powerid_by']) ? $_POST['wc_show_plugin_powerid_by'] : 0;
82
+ $this->optionsSerialized->isUsePoMo = isset($_POST['wc_is_use_po_mo']) ? $_POST['wc_is_use_po_mo'] : 0;
83
+ $this->optionsSerialized->disableMemberConfirm = isset($_POST['wc_disable_member_confirm']) ? $_POST['wc_disable_member_confirm'] : 0;
84
+ $this->optionsSerialized->commentTextMinLength = (isset($_POST['wc_comment_text_min_length']) && intval($_POST['wc_comment_text_min_length']) > 0) ? intval($_POST['wc_comment_text_min_length']) : 1;
85
+ $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']) : '';
86
+ $this->optionsSerialized->commentReadMoreLimit = (isset($_POST['commentWordsLimit']) && intval($_POST['commentWordsLimit']) >= 0) ? intval($_POST['commentWordsLimit']) : 100;
87
+ $this->optionsSerialized->showHideCommentLink = isset($_POST['showHideCommentLink']) ? $_POST['showHideCommentLink'] : 0;
88
+ $this->optionsSerialized->updateOptions();
89
+ }
90
+ ?>
91
+
92
+ <div class="wrap wpdiscuz_options_page">
93
+ <div style="float:left; width:50px; height:55px; margin:10px 10px 20px 0px;">
94
+ <img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/assets/img/plugin-icon/plugin-icon-48.png'); ?>"/>
95
+ </div>
96
+ <h2 style="padding-bottom:20px; padding-top:15px;"><?php _e('wpDiscuz General Settings', 'wpdiscuz'); ?></h2>
97
+ <br style="clear:both" />
98
+ <link rel="stylesheet" href="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>bxslider/jquery.bxslider.css" type="text/css" />
99
+ <script src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>bxslider/jquery.min.js"></script>
100
+ <script src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>bxslider/jquery.bxslider.js"></script>
101
+ <table width="100%" border="0" cellspacing="1" class="widefat">
102
+ <tr>
103
+ <td style="padding:10px; padding-left:0px; vertical-align:top; width:500px;">
104
+ <div class="slider">
105
+ <ul class="bxslider">
106
+ <li><a href="https://wordpress.org/plugins/woodiscuz-woocommerce-comments/screenshots/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/3.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
107
+ <li><a href="https://wordpress.org/plugins/woocommerce-category-slider/screenshots/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/5.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
108
+ <li><a href="https://wordpress.org/plugins/woocommerce-pdf-print/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/4.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
109
+ <li><a href="https://wordpress.org/plugins/advanced-content-pagination/screenshots/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/1.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
110
+ <li><a href="https://wordpress.org/plugins/author-and-post-statistic-widgets/"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/2.png" title="Free Download from Wordpress.org" style="padding:0px 0px 20px 20px;" /></a></li>
111
+ </ul>
112
+ </div>
113
+ <div style="clear:both"></div>
114
+ </td>
115
+ <td valign="top" style="padding:20px;">
116
+ <table width="100%" border="0" cellspacing="1" class="widefat">
117
+ <thead>
118
+ <tr>
119
+ <th style="font-size:14px; background-color:#FEFCE7">&nbsp;Information</th>
120
+ </tr>
121
+ </thead>
122
+ <tr valign="top">
123
+ <td style="background:#FFF; text-align:left; font-size:13px;">
124
+ wpDiscuz is also available for WooCommerce. The WooCommerce Comments plugin name is <a href="https://wordpress.org/plugins/woodiscuz-woocommerce-comments/" style="color:#993399; text-decoration:underline;"><strong>WooDiscuz</strong></a>. It adds a new "Discussion" Tab on product page and allows your customers ask Pre-Sale Questions and discuss about your products.
125
+ </td>
126
+ </tr>
127
+ </table><br />
128
+ <table width="100%" border="0" cellspacing="1" class="widefat">
129
+ <thead>
130
+ <tr>
131
+ <th style="font-size:16px; background-color:#FEFCE7;"><strong>Like wpDiscuz?</strong> <br /><span style="font-size:15px">We really need your reviews!</span></th>
132
+ </tr>
133
+ </thead>
134
+ <tr valign="top">
135
+ <td style="background:#FFF; text-align:left; font-size:13px;">
136
+ We do our best to make wpDiscuz the best self-hosted comment plugin for Wordpress. Thousands users are currently satisfied with wpDiscuz but only about 1% of them give us 5 start rating.
137
+ However we have a very few users who for some very specific reasons are not satisfied and they are very active in decreasing wpDiscuz rating.
138
+ Please help us keep plugin rating high, encouraging us to develop and maintain this plugin. Take a one minute to leave <a href="https://wordpress.org/support/view/plugin-reviews/wpdiscuz?filter=5" title="Go to wpDiscuz Reviews section on Wordpress.org"><img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/'); ?>assets/img/gc/5s.png" border="0" align="absmiddle" /></a> star review on <a href="https://wordpress.org/support/view/plugin-reviews/wpdiscuz?filter=5">Wordpress.org</a>. Thank You!
139
+ <hr style="border-style:dotted;" />
140
+ <div style="width:200px; float:right;">
141
+ <form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
142
+ <input type="hidden" name="cmd" value="_s-xclick"><input type="hidden" name="hosted_button_id" value="UC44WQM5XJFPA"><input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"><img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
143
+ </form>
144
+ </div>
145
+ We spend as much of my spare time as possible working on wpDiscuz and any donation is appreciated. Donations play a crucial role in supporting Free and Open Source Software projects.
146
+ </td>
147
+ </tr>
148
+ </table>
149
+ </td>
150
+ </tr>
151
+ </table>
152
+ <script>
153
+ $('.bxslider').bxSlider({
154
+ mode: 'fade',
155
+ captions: false,
156
+ auto: true
157
+ });
158
+ </script>
159
+ <br />
160
+ <?php
161
+ if (isset($_GET['wpdiscuz_reset_options']) && $_GET['wpdiscuz_reset_options'] == 1 && current_user_can('manage_options')) {
162
+ delete_option(WpdiscuzCore::OPTION_SLUG_OPTIONS);
163
+ $this->optionsSerialized->postTypes = array('post');
164
+ $this->optionsSerialized->shareButtons = array('fb', 'twitter', 'google');
165
+ $this->optionsSerialized->addOptions();
166
+ $this->optionsSerialized->initOptions(get_option(WpdiscuzCore::OPTION_SLUG_OPTIONS));
167
+ $this->optionsSerialized->blogRoles['post_author'] = '#00B38F';
168
+ $blogRoles = get_editable_roles();
169
+ foreach ($blogRoles as $roleName => $roleInfo) {
170
+ $this->optionsSerialized->blogRoles[$roleName] = '#00B38F';
171
+ }
172
+ $this->optionsSerialized->blogRoles['guest'] = '#00B38F';
173
+ $this->optionsSerialized->showPluginPoweredByLink = 1;
174
+ $this->optionsSerialized->updateOptions();
175
+ }
176
+ ?>
177
+
178
+ <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">
179
+ <?php
180
+ if (function_exists('wp_nonce_field')) {
181
+ wp_nonce_field('wc_options_form');
182
+ }
183
+ ?>
184
+ <h2>&nbsp;</h2>
185
+ <div id="optionsTab">
186
+ <ul class="resp-tabs-list options_tab_id">
187
+ <li><?php _e('General settings', 'wpdiscuz'); ?></li>
188
+ <li><?php _e('Live Update', 'wpdiscuz'); ?></li>
189
+ <li><?php _e('Show/Hide Components', 'wpdiscuz'); ?></li>
190
+ <li><?php _e('Email Subscription', 'wpdiscuz'); ?> <?php if (class_exists('Prompt_Comment_Form_Handling')): ?> <?php _e('and Postmatic', 'wpdiscuz'); ?> <?php endif; ?></li>
191
+ <li><?php _e('Background and Colors', 'wpdiscuz'); ?></li>
192
+ <li><?php _e('Social Login', 'wpdiscuz'); ?></li>
193
+ </ul>
194
+ <div class="resp-tabs-container options_tab_id">
195
+ <?php
196
+ include 'options-layouts/settings-general.php';
197
+ include 'options-layouts/settings-live-update.php';
198
+ include 'options-layouts/settings-show-hide.php';
199
+ include 'options-layouts/settings-subscription.php';
200
+ include 'options-layouts/settings-style.php';
201
+ include 'options-layouts/settings-social.php';
202
+ ?>
203
+ </div>
204
+ </div>
205
+ <script type="text/javascript">
206
+ jQuery(document).ready(function ($) {
207
+ var width = 0;
208
+ var optionsTabsType = 'default';
209
+ $('#optionsTab ul.resp-tabs-list.options_tab_id li').each(function () {
210
+ width += $(this).outerWidth(true);
211
+ });
212
+
213
+ if (width > $('#optionsTab').innerWidth()) {
214
+ optionsTabsType = 'vertical';
215
+ }
216
+
217
+ var url = '<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/assets/img/social-icons/'); ?>';
218
+ $('.wpdiscuz-share-buttons').each(function () {
219
+ setBG($(this));
220
+ });
221
+ $('.wpdiscuz-share-buttons').click(function () {
222
+ setBG($(this));
223
+ });
224
+ function setBG(field) {
225
+ if ($('.wc_share_button', field).is(':checked')) {
226
+ $(field).css('background', 'url("' + url + $('.wc_share_button', field).val() + '-18x18-orig.png")');
227
+ } else {
228
+ $(field).css('background', 'url("' + url + $('.wc_share_button', field).val() + '-18x18.png")');
229
+ }
230
+ }
231
+ //Horizontal Tab
232
+ $('#optionsTab').easyResponsiveTabs({
233
+ type: optionsTabsType, //Types: default, vertical, accordion
234
+ width: 'auto', //auto or any width like 600px
235
+ fit: true, // 100% fit in a container
236
+ tabidentify: 'options_tab_id' // The tab groups identifier
237
+ });
238
+ $(document).delegate('.options_tab_id .resp-tab-item', 'click', function () {
239
+ var activeTabIndex = $('.resp-tabs-list.options_tab_id li.resp-tab-active').index();
240
+ $.cookie('optionsActiveTabIndex', activeTabIndex, {expires: 30});
241
+ });
242
+ var savedIndex = $.cookie('optionsActiveTabIndex') >= 0 ? $.cookie('optionsActiveTabIndex') : 0;
243
+ $('.resp-tabs-list.options_tab_id li').removeClass('resp-tab-active');
244
+ $('.resp-tabs-container.options_tab_id > div').removeClass('resp-tab-content-active');
245
+ $('.resp-tabs-container.options_tab_id > div').css('display', 'none');
246
+ $('.resp-tabs-list.options_tab_id li').eq(savedIndex).addClass('resp-tab-active');
247
+ $('.resp-tabs-container.options_tab_id > div').eq(savedIndex).addClass('resp-tab-content-active');
248
+ $('.resp-tabs-container.options_tab_id > div').eq(savedIndex).css('display', 'block');
249
+ });
250
+ </script>
251
+ <table class="form-table wc-form-table">
252
+ <tbody>
253
+ <tr valign="top">
254
+ <td colspan="4">
255
+ <p class="submit">
256
+ <a style="float: left;" class="button button-secondary" href="<?php echo admin_url(); ?>edit-comments.php?page=wpdiscuz_options_page&wpdiscuz_reset_options=1"><?php _e('Reset Options', 'wpdiscuz'); ?></a>
257
+ <?php $clearChildrenUrl = admin_url('admin-post.php/?action=clearChildrenData&clear=1'); ?>
258
+ <a href="<?php echo wp_nonce_url($clearChildrenUrl, 'clear_children_data'); ?>" class="button button-secondary" title="Use this button if wpDiscuz has been deactivated for a while." style="margin-left: 5px;" id="wpdiscuz_synch_comments"><?php _e('Refresh comment optimization', 'wpdiscuz'); ?></a>
259
+ <input style="float: right;" type="submit" class="button button-primary" name="wc_submit_options" value="<?php _e('Save Changes', 'wpdiscuz'); ?>" />
260
+ </p>
261
+ </td>
262
+ </tr>
263
+ </tbody>
264
+ </table>
265
+ <input type="hidden" name="action" value="update" />
266
+ </form>
267
+ </div>
268
+ <?php
269
+ }
270
+
271
+ public function phrasesOptionsForm() {
272
+ if (isset($_POST['wc_submit_phrases'])) {
273
+ if (function_exists('current_user_can') && !current_user_can('manage_options')) {
274
+ die(_e('Hacker?', 'wpdiscuz'));
275
+ }
276
+ if (function_exists('check_admin_referer')) {
277
+ check_admin_referer('wc_phrases_form');
278
+ }
279
+ $this->optionsSerialized->phrases['wc_leave_a_reply_text'] = $_POST['wc_leave_a_reply_text'];
280
+ $this->optionsSerialized->phrases['wc_be_the_first_text'] = $_POST['wc_be_the_first_text'];
281
+ $this->optionsSerialized->phrases['wc_header_text'] = $_POST['wc_header_text'];
282
+ $this->optionsSerialized->phrases['wc_header_text_plural'] = $_POST['wc_header_text_plural'];
283
+ $this->optionsSerialized->phrases['wc_header_on_text'] = $_POST['wc_header_on_text'];
284
+ $this->optionsSerialized->phrases['wc_comment_start_text'] = $_POST['wc_comment_start_text'];
285
+ $this->optionsSerialized->phrases['wc_comment_join_text'] = $_POST['wc_comment_join_text'];
286
+ $this->optionsSerialized->phrases['wc_email_text'] = $_POST['wc_email_text'];
287
+ $this->optionsSerialized->phrases['wc_name_text'] = $_POST['wc_name_text'];
288
+ $this->optionsSerialized->phrases['wc_website_text'] = $_POST['wc_website_text'];
289
+ $this->optionsSerialized->phrases['wc_captcha_text'] = $_POST['wc_captcha_text'];
290
+ $this->optionsSerialized->phrases['wc_submit_text'] = $_POST['wc_submit_text'];
291
+ $this->optionsSerialized->phrases['wc_notify_of'] = $_POST['wc_notify_of'];
292
+ $this->optionsSerialized->phrases['wc_notify_on_new_comment'] = $_POST['wc_notify_on_new_comment'];
293
+ $this->optionsSerialized->phrases['wc_notify_on_all_new_reply'] = $_POST['wc_notify_on_all_new_reply'];
294
+ $this->optionsSerialized->phrases['wc_notify_on_new_reply'] = $_POST['wc_notify_on_new_reply'];
295
+ $this->optionsSerialized->phrases['wc_sort_by'] = $_POST['wc_sort_by'];
296
+ $this->optionsSerialized->phrases['wc_newest'] = $_POST['wc_newest'];
297
+ $this->optionsSerialized->phrases['wc_oldest'] = $_POST['wc_oldest'];
298
+ $this->optionsSerialized->phrases['wc_most_voted'] = $_POST['wc_most_voted'];
299
+ $this->optionsSerialized->phrases['wc_load_more_submit_text'] = $_POST['wc_load_more_submit_text'];
300
+ $this->optionsSerialized->phrases['wc_load_rest_comments_submit_text'] = $_POST['wc_load_rest_comments_submit_text'];
301
+ $this->optionsSerialized->phrases['wc_reply_text'] = $_POST['wc_reply_text'];
302
+ $this->optionsSerialized->phrases['wc_share_text'] = $_POST['wc_share_text'];
303
+ $this->optionsSerialized->phrases['wc_edit_text'] = $_POST['wc_edit_text'];
304
+ $this->optionsSerialized->phrases['wc_share_facebook'] = $_POST['wc_share_facebook'];
305
+ $this->optionsSerialized->phrases['wc_share_twitter'] = $_POST['wc_share_twitter'];
306
+ $this->optionsSerialized->phrases['wc_share_google'] = $_POST['wc_share_google'];
307
+ $this->optionsSerialized->phrases['wc_share_vk'] = $_POST['wc_share_vk'];
308
+ $this->optionsSerialized->phrases['wc_share_ok'] = $_POST['wc_share_ok'];
309
+ $this->optionsSerialized->phrases['wc_hide_replies_text'] = $_POST['wc_hide_replies_text'];
310
+ $this->optionsSerialized->phrases['wc_show_replies_text'] = $_POST['wc_show_replies_text'];
311
+ $this->optionsSerialized->phrases['wc_user_title_guest_text'] = $_POST['wc_user_title_guest_text'];
312
+ $this->optionsSerialized->phrases['wc_user_title_member_text'] = $_POST['wc_user_title_member_text'];
313
+ $this->optionsSerialized->phrases['wc_user_title_author_text'] = $_POST['wc_user_title_author_text'];
314
+ $this->optionsSerialized->phrases['wc_user_title_admin_text'] = $_POST['wc_user_title_admin_text'];
315
+ $this->optionsSerialized->phrases['wc_email_subject'] = $_POST['wc_email_subject'];
316
+ $this->optionsSerialized->phrases['wc_email_message'] = $_POST['wc_email_message'];
317
+ $this->optionsSerialized->phrases['wc_new_reply_email_subject'] = $_POST['wc_new_reply_email_subject'];
318
+ $this->optionsSerialized->phrases['wc_new_reply_email_message'] = $_POST['wc_new_reply_email_message'];
319
+ $this->optionsSerialized->phrases['wc_subscribed_on_comment'] = $_POST['wc_subscribed_on_comment'];
320
+ $this->optionsSerialized->phrases['wc_subscribed_on_all_comment'] = $_POST['wc_subscribed_on_all_comment'];
321
+ $this->optionsSerialized->phrases['wc_subscribed_on_post'] = $_POST['wc_subscribed_on_post'];
322
+ $this->optionsSerialized->phrases['wc_unsubscribe'] = $_POST['wc_unsubscribe'];
323
+ $this->optionsSerialized->phrases['wc_ignore_subscription'] = $_POST['wc_ignore_subscription'];
324
+ $this->optionsSerialized->phrases['wc_unsubscribe_message'] = $_POST['wc_unsubscribe_message'];
325
+ $this->optionsSerialized->phrases['wc_subscribe_message'] = $_POST['wc_subscribe_message'];
326
+ $this->optionsSerialized->phrases['wc_confirm_email'] = $_POST['wc_confirm_email'];
327
+ $this->optionsSerialized->phrases['wc_comfirm_success_message'] = $_POST['wc_comfirm_success_message'];
328
+ $this->optionsSerialized->phrases['wc_confirm_email_subject'] = $_POST['wc_confirm_email_subject'];
329
+ $this->optionsSerialized->phrases['wc_confirm_email_message'] = $_POST['wc_confirm_email_message'];
330
+ $this->optionsSerialized->phrases['wc_error_empty_text'] = $_POST['wc_error_empty_text'];
331
+ $this->optionsSerialized->phrases['wc_error_email_text'] = $_POST['wc_error_email_text'];
332
+ $this->optionsSerialized->phrases['wc_error_url_text'] = $_POST['wc_error_url_text'];
333
+ $this->optionsSerialized->phrases['wc_year_text']['datetime'][0] = $_POST['wc_year_text'];
334
+ $this->optionsSerialized->phrases['wc_year_text_plural']['datetime'][0] = $_POST['wc_year_text_plural'];
335
+ $this->optionsSerialized->phrases['wc_month_text']['datetime'][0] = $_POST['wc_month_text'];
336
+ $this->optionsSerialized->phrases['wc_month_text_plural']['datetime'][0] = $_POST['wc_month_text_plural'];
337
+ $this->optionsSerialized->phrases['wc_day_text']['datetime'][0] = $_POST['wc_day_text'];
338
+ $this->optionsSerialized->phrases['wc_day_text_plural']['datetime'][0] = $_POST['wc_day_text_plural'];
339
+ $this->optionsSerialized->phrases['wc_hour_text']['datetime'][0] = $_POST['wc_hour_text'];
340
+ $this->optionsSerialized->phrases['wc_hour_text_plural']['datetime'][0] = $_POST['wc_hour_text_plural'];
341
+ $this->optionsSerialized->phrases['wc_minute_text']['datetime'][0] = $_POST['wc_minute_text'];
342
+ $this->optionsSerialized->phrases['wc_minute_text_plural']['datetime'][0] = $_POST['wc_minute_text_plural'];
343
+ $this->optionsSerialized->phrases['wc_second_text']['datetime'][0] = $_POST['wc_second_text'];
344
+ $this->optionsSerialized->phrases['wc_second_text_plural']['datetime'][0] = $_POST['wc_second_text_plural'];
345
+ $this->optionsSerialized->phrases['wc_right_now_text'] = $_POST['wc_right_now_text'];
346
+ $this->optionsSerialized->phrases['wc_ago_text'] = $_POST['wc_ago_text'];
347
+ $this->optionsSerialized->phrases['wc_posted_today_text'] = $_POST['wc_posted_today_text'];
348
+ $this->optionsSerialized->phrases['wc_you_must_be_text'] = $_POST['wc_you_must_be_text'];
349
+ $this->optionsSerialized->phrases['wc_logged_in_as'] = $_POST['wc_logged_in_as'];
350
+ $this->optionsSerialized->phrases['wc_log_out'] = $_POST['wc_log_out'];
351
+ $this->optionsSerialized->phrases['wc_logged_in_text'] = $_POST['wc_logged_in_text'];
352
+ $this->optionsSerialized->phrases['wc_to_post_comment_text'] = $_POST['wc_to_post_comment_text'];
353
+ $this->optionsSerialized->phrases['wc_vote_counted'] = $_POST['wc_vote_counted'];
354
+ $this->optionsSerialized->phrases['wc_vote_up'] = $_POST['wc_vote_up'];
355
+ $this->optionsSerialized->phrases['wc_vote_down'] = $_POST['wc_vote_down'];
356
+ $this->optionsSerialized->phrases['wc_held_for_moderate'] = $_POST['wc_held_for_moderate'];
357
+ $this->optionsSerialized->phrases['wc_vote_only_one_time'] = $_POST['wc_vote_only_one_time'];
358
+ $this->optionsSerialized->phrases['wc_voting_error'] = $_POST['wc_voting_error'];
359
+ $this->optionsSerialized->phrases['wc_self_vote'] = $_POST['wc_self_vote'];
360
+ $this->optionsSerialized->phrases['wc_deny_voting_from_same_ip'] = $_POST['wc_deny_voting_from_same_ip'];
361
+ $this->optionsSerialized->phrases['wc_login_to_vote'] = $_POST['wc_login_to_vote'];
362
+ $this->optionsSerialized->phrases['wc_invalid_captcha'] = $_POST['wc_invalid_captcha'];
363
+ $this->optionsSerialized->phrases['wc_invalid_field'] = $_POST['wc_invalid_field'];
364
+ $this->optionsSerialized->phrases['wc_new_comment_button_text'] = $_POST['wc_new_comment_button_text'];
365
+ $this->optionsSerialized->phrases['wc_new_comments_button_text'] = $_POST['wc_new_comments_button_text'];
366
+ $this->optionsSerialized->phrases['wc_new_reply_button_text'] = $_POST['wc_new_reply_button_text'];
367
+ $this->optionsSerialized->phrases['wc_new_replies_button_text'] = $_POST['wc_new_replies_button_text'];
368
+ $this->optionsSerialized->phrases['wc_new_comments_text'] = $_POST['wc_new_comments_text'];
369
+ $this->optionsSerialized->phrases['wc_comment_not_updated'] = $_POST['wc_comment_not_updated'];
370
+ $this->optionsSerialized->phrases['wc_comment_edit_not_possible'] = $_POST['wc_comment_edit_not_possible'];
371
+ $this->optionsSerialized->phrases['wc_comment_not_edited'] = $_POST['wc_comment_not_edited'];
372
+ $this->optionsSerialized->phrases['wc_comment_edit_save_button'] = $_POST['wc_comment_edit_save_button'];
373
+ $this->optionsSerialized->phrases['wc_comment_edit_cancel_button'] = $_POST['wc_comment_edit_cancel_button'];
374
+ $this->optionsSerialized->phrases['wc_msg_comment_text_min_length'] = $_POST['wc_msg_comment_text_min_length'];
375
+ $this->optionsSerialized->phrases['wc_msg_comment_text_max_length'] = $_POST['wc_msg_comment_text_max_length'];
376
+ $this->optionsSerialized->phrases['wc_read_more'] = $_POST['wc_read_more'];
377
+ $this->optionsSerialized->phrases['wc_msg_required_fields'] = $_POST['wc_msg_required_fields'];
378
+ $this->optionsSerialized->phrases['wc_connect_with'] = $_POST['wc_connect_with'];
379
+ $this->optionsSerialized->phrases['wc_subscribed_to'] = $_POST['wc_subscribed_to'];
380
+ $this->dbManager->updatePhrases($this->optionsSerialized->phrases);
381
+ }
382
+ $this->optionsSerialized->initPhrasesOnLoad();
383
+ ?>
384
+ <div class="wrap wpdiscuz_options_page">
385
+ <div style="float:left; width:50px; height:55px; margin:10px 10px 20px 0px;">
386
+ <img src="<?php echo plugins_url(WpdiscuzCore::$PLUGIN_DIRECTORY . '/assets/img/plugin-icon/plugin-icon-48.png'); ?>" style="height:43px;"/>
387
+ </div>
388
+ <h2 style="padding-bottom:20px; padding-top:15px;"><?php _e('WpDiscuz Front-end Phrases', 'wpdiscuz'); ?></h2>
389
+ <br style="clear:both" />
390
+ <form action="<?php echo admin_url(); ?>edit-comments.php?page=wpdiscuz_phrases_page" method="post" name="wpdiscuz_phrases_page" class="wc-phrases-settings-form wc-form">
391
+ <?php
392
+ if (function_exists('wp_nonce_field')) {
393
+ wp_nonce_field('wc_phrases_form');
394
+ }
395
+ ?>
396
+ <div id="phrasesTab">
397
+ <ul class="resp-tabs-list phrases_tab_id">
398
+ <li><?php _e('General', 'wpdiscuz'); ?></li>
399
+ <li><?php _e('Form', 'wpdiscuz'); ?></li>
400
+ <li><?php _e('Comment', 'wpdiscuz'); ?></li>
401
+ <li><?php _e('Date/Time', 'wpdiscuz'); ?></li>
402
+ <li><?php _e('Email', 'wpdiscuz'); ?></li>
403
+ <li><?php _e('Notification', 'wpdiscuz'); ?></li>
404
+ </ul>
405
+ <div class="resp-tabs-container phrases_tab_id">
406
+ <?php include 'phrases-layouts/phrases-general.php'; ?>
407
+ <?php include 'phrases-layouts/phrases-form.php'; ?>
408
+ <?php include 'phrases-layouts/phrases-comment.php'; ?>
409
+ <?php include 'phrases-layouts/phrases-datetime.php'; ?>
410
+ <?php include 'phrases-layouts/phrases-email.php'; ?>
411
+ <?php include 'phrases-layouts/phrases-notification.php'; ?>
412
+ </div>
413
+ </div>
414
+ <script type="text/javascript">
415
+ jQuery(document).ready(function ($) {
416
+ var width = 0;
417
+ var phrasesTabsType = 'default';
418
+ $('#phrasesTab ul.resp-tabs-list.phrases_tab_id li').each(function () {
419
+ width += $(this).outerWidth(true);
420
+ });
421
+
422
+ if (width > $('#phrasesTab').innerWidth()) {
423
+ phrasesTabsType = 'vertical';
424
+ }
425
+ $('#phrasesTab').easyResponsiveTabs({
426
+ type: 'default', //Types: default, vertical, accordion
427
+ width: 'auto', //auto or any width like 600px
428
+ fit: true, // 100% fit in a container
429
+ tabidentify: 'phrases_tab_id' // The tab groups identifier
430
+ });
431
+ $(document).delegate('.phrases_tab_id .resp-tab-item', 'click', function () {
432
+ var activeTabIndex = $('.resp-tabs-list.phrases_tab_id li.resp-tab-active').index();
433
+ $.cookie('phrasesActiveTabIndex', activeTabIndex, {expires: 30});
434
+ });
435
+ var savedIndex = $.cookie('phrasesActiveTabIndex') >= 0 ? $.cookie('phrasesActiveTabIndex') : 0;
436
+ $('.resp-tabs-list.phrases_tab_id li').removeClass('resp-tab-active');
437
+ $('.resp-tabs-container.phrases_tab_id > div').removeClass('resp-tab-content-active');
438
+ $('.resp-tabs-container.phrases_tab_id > div').css('display', 'none');
439
+ $('.resp-tabs-list.phrases_tab_id li').eq(savedIndex).addClass('resp-tab-active');
440
+ $('.resp-tabs-container.phrases_tab_id > div').eq(savedIndex).addClass('resp-tab-content-active');
441
+ $('.resp-tabs-container.phrases_tab_id > div').eq(savedIndex).css('display', 'block');
442
+ });
443
+ </script>
444
+ <table class="form-table wc-form-table">
445
+ <tbody>
446
+ <tr valign="top">
447
+ <td colspan="4">
448
+ <p class="submit">
449
+ <input type="submit" class="button button-primary" name="wc_submit_phrases" value="<?php _e('Save Changes', 'wpdiscuz'); ?>" />
450
+ </p>
451
+ </td>
452
+ </tr>
453
+ <input type="hidden" name="action" value="update" />
454
+ </tbody>
455
+ </table>
456
+ </form>
457
+ </div>
458
+ <?php
459
+ }
460
+
461
+ public function initShareButtons() {
462
+ $this->shareButtons[] = 'fb';
463
+ $this->shareButtons[] = 'twitter';
464
+ $this->shareButtons[] = 'google';
465
+ $this->shareButtons[] = 'vk';
466
+ $this->shareButtons[] = 'ok';
467
+ }
468
+
469
+ }
options/class.WpdiscuzOptionsSerialized.php CHANGED
@@ -339,7 +339,7 @@ class WpdiscuzOptionsSerialized {
339
  * Type - Input
340
  * Available Values - Integer (comment text min length)
341
  * Description - Define comment text min length
342
- * Default Value - 1 characters
343
  */
344
  public $commentTextMinLength;
345
 
@@ -350,6 +350,15 @@ class WpdiscuzOptionsSerialized {
350
  * Default Value - Unlimit
351
  */
352
  public $commentTextMaxLength;
 
 
 
 
 
 
 
 
 
353
 
354
  /**
355
  * Type - Checkbox
@@ -431,6 +440,7 @@ class WpdiscuzOptionsSerialized {
431
  $this->disableMemberConfirm = isset($options['wc_disable_member_confirm']) ? $options['wc_disable_member_confirm'] : 1;
432
  $this->commentTextMinLength = isset($options['wc_comment_text_min_length']) ? $options['wc_comment_text_min_length'] : 1;
433
  $this->commentTextMaxLength = isset($options['wc_comment_text_max_length']) ? $options['wc_comment_text_max_length'] : '';
 
434
  $this->showHideCommentLink = isset($options['showHideCommentLink']) ? $options['showHideCommentLink'] : 0;
435
  }
436
 
@@ -536,6 +546,7 @@ class WpdiscuzOptionsSerialized {
536
  'wc_comment_edit_cancel_button' => __('Cancel', 'wpdiscuz'),
537
  'wc_msg_comment_text_min_length' => __('Comment text is too short (minimum %d% characters)', 'wpdiscuz'),
538
  'wc_msg_comment_text_max_length' => __('Comment text is too long (maximum %d% characters allowed)', 'wpdiscuz'),
 
539
  'wc_msg_required_fields' => __('Please fill out required fields', 'wpdiscuz'),
540
  'wc_connect_with' => __('Connect with', 'wpdiscuz'),
541
  'wc_subscribed_to' => __('You\'re subscribed to', 'wpdiscuz'),
@@ -586,6 +597,7 @@ class WpdiscuzOptionsSerialized {
586
  'wc_disable_member_confirm' => $this->disableMemberConfirm,
587
  'wc_comment_text_min_length' => $this->commentTextMinLength,
588
  'wc_comment_text_max_length' => $this->commentTextMaxLength,
 
589
  'showHideCommentLink' => $this->showHideCommentLink,
590
  );
591
  return $options;
@@ -641,6 +653,7 @@ class WpdiscuzOptionsSerialized {
641
  'wc_disable_member_confirm' => '1',
642
  'wc_comment_text_min_length' => '1',
643
  'wc_comment_text_max_length' => '',
 
644
  'showHideCommentLink' => '0'
645
  );
646
  add_option(WpdiscuzCore::OPTION_SLUG_OPTIONS, serialize($options));
339
  * Type - Input
340
  * Available Values - Integer (comment text min length)
341
  * Description - Define comment text min length
342
+ * Default Value - 1 character
343
  */
344
  public $commentTextMinLength;
345
 
350
  * Default Value - Unlimit
351
  */
352
  public $commentTextMaxLength;
353
+
354
+
355
+ /**
356
+ * Type - Input
357
+ * Available Values - Integer (after the limit has been reached show read more link)
358
+ * Description - Define words max count for read more link
359
+ * Default Value - 100 words
360
+ */
361
+ public $commentReadMoreLimit;
362
 
363
  /**
364
  * Type - Checkbox
440
  $this->disableMemberConfirm = isset($options['wc_disable_member_confirm']) ? $options['wc_disable_member_confirm'] : 1;
441
  $this->commentTextMinLength = isset($options['wc_comment_text_min_length']) ? $options['wc_comment_text_min_length'] : 1;
442
  $this->commentTextMaxLength = isset($options['wc_comment_text_max_length']) ? $options['wc_comment_text_max_length'] : '';
443
+ $this->commentReadMoreLimit = isset($options['commentWordsLimit']) ? $options['commentWordsLimit'] : 100;
444
  $this->showHideCommentLink = isset($options['showHideCommentLink']) ? $options['showHideCommentLink'] : 0;
445
  }
446
 
546
  'wc_comment_edit_cancel_button' => __('Cancel', 'wpdiscuz'),
547
  'wc_msg_comment_text_min_length' => __('Comment text is too short (minimum %d% characters)', 'wpdiscuz'),
548
  'wc_msg_comment_text_max_length' => __('Comment text is too long (maximum %d% characters allowed)', 'wpdiscuz'),
549
+ 'wc_read_more' => __('Read more &raquo;', 'wpdiscuz'),
550
  'wc_msg_required_fields' => __('Please fill out required fields', 'wpdiscuz'),
551
  'wc_connect_with' => __('Connect with', 'wpdiscuz'),
552
  'wc_subscribed_to' => __('You\'re subscribed to', 'wpdiscuz'),
597
  'wc_disable_member_confirm' => $this->disableMemberConfirm,
598
  'wc_comment_text_min_length' => $this->commentTextMinLength,
599
  'wc_comment_text_max_length' => $this->commentTextMaxLength,
600
+ 'commentWordsLimit' => $this->commentReadMoreLimit,
601
  'showHideCommentLink' => $this->showHideCommentLink,
602
  );
603
  return $options;
653
  'wc_disable_member_confirm' => '1',
654
  'wc_comment_text_min_length' => '1',
655
  'wc_comment_text_max_length' => '',
656
+ 'commentWordsLimit' => '100',
657
  'showHideCommentLink' => '0'
658
  );
659
  add_option(WpdiscuzCore::OPTION_SLUG_OPTIONS, serialize($options));
options/options-layouts/settings-general.php CHANGED
@@ -67,6 +67,19 @@ if (!defined('ABSPATH')) {
67
  </label><br/>
68
  </td>
69
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
70
  <tr valign="top">
71
  <th scope="row">
72
  <label for="wc_comment_text_size"><?php _e('Comment text size in pixels', 'wpdiscuz'); ?></label>
@@ -89,7 +102,7 @@ if (!defined('ABSPATH')) {
89
  <td>
90
  <select id="wc_comment_editable_time" name="wc_comment_editable_time">
91
  <?php $wc_comment_editable_time = isset($this->optionsSerialized->commentEditableTime) ? $this->optionsSerialized->commentEditableTime : 0; ?>
92
- <option value="0" <?php selected($wc_comment_editable_time, '0'); ?>><?php _e('Not Allow', 'wpdiscuz'); ?></option>
93
  <option value="900" <?php selected($wc_comment_editable_time, '900'); ?>>15 <?php _e('Minutes', 'wpdiscuz'); ?></option>
94
  <option value="1800" <?php selected($wc_comment_editable_time, '1800'); ?>>30 <?php _e('Minutes', 'wpdiscuz'); ?></option>
95
  <option value="3600" <?php selected($wc_comment_editable_time, '3600'); ?>>1 <?php _e('Hour', 'wpdiscuz'); ?></option>
67
  </label><br/>
68
  </td>
69
  </tr>
70
+ <tr valign="top">
71
+ <th scope="row">
72
+ <?php _e('The number of words before breaking comment text and showing "Read more" link', 'wpdiscuz'); ?>
73
+ <p style="font-size:13px; color:#999999; width:80%; padding-left:0px; margin-left:0px;">
74
+ Set this option value 0, to turn off comment text breaking function.
75
+ </p>
76
+ </th>
77
+ <td>
78
+ <label for="commentWordsLimit">
79
+ <input type="number" value="<?php echo isset($this->optionsSerialized->commentReadMoreLimit) ? $this->optionsSerialized->commentReadMoreLimit : 100; ?>" name="commentWordsLimit" id="commentWordsLimit" />
80
+ </label><br/>
81
+ </td>
82
+ </tr>
83
  <tr valign="top">
84
  <th scope="row">
85
  <label for="wc_comment_text_size"><?php _e('Comment text size in pixels', 'wpdiscuz'); ?></label>
102
  <td>
103
  <select id="wc_comment_editable_time" name="wc_comment_editable_time">
104
  <?php $wc_comment_editable_time = isset($this->optionsSerialized->commentEditableTime) ? $this->optionsSerialized->commentEditableTime : 0; ?>
105
+ <option value="0" <?php selected($wc_comment_editable_time, '0'); ?>><?php _e('Do not allow', 'wpdiscuz'); ?></option>
106
  <option value="900" <?php selected($wc_comment_editable_time, '900'); ?>>15 <?php _e('Minutes', 'wpdiscuz'); ?></option>
107
  <option value="1800" <?php selected($wc_comment_editable_time, '1800'); ?>>30 <?php _e('Minutes', 'wpdiscuz'); ?></option>
108
  <option value="3600" <?php selected($wc_comment_editable_time, '3600'); ?>>1 <?php _e('Hour', 'wpdiscuz'); ?></option>
options/phrases-layouts/phrases-comment.php CHANGED
@@ -187,6 +187,16 @@ if (!defined('ABSPATH')) {
187
  </label>
188
  </td>
189
  </tr>
 
 
 
 
 
 
 
 
 
 
190
  </tbody>
191
  </table>
192
  </div>
187
  </label>
188
  </td>
189
  </tr>
190
+ <tr valign="top">
191
+ <th scope="row">
192
+ <?php _e('Comment read more link text', 'wpdiscuz'); ?>
193
+ </th>
194
+ <td colspan="3">
195
+ <label for="wc_read_more">
196
+ <input type="text" value="<?php echo isset($this->optionsSerialized->phrases['wc_read_more']) ? $this->optionsSerialized->phrases['wc_read_more'] : __('Read more &raquo;', 'wpdisucz'); ?>" name="wc_read_more" id="wc_read_more" />
197
+ </label>
198
+ </td>
199
+ </tr>
200
  </tbody>
201
  </table>
202
  </div>
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: 4.1
6
  Tested up to: 4.3.1
7
- Stable tag: 3.0.6
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -44,6 +44,7 @@ wpDiscuz 3.0 and all future 3.x versions have been named as Supercharged. It's s
44
  * | Users can edit their comments (time-frame can be limited by admin)
45
  * | Automatic URLs to link conversion in comment texts
46
  * | Automatic image source URLs to image (HTML) conversion in comment texts
 
47
  * | Multiple line-breaks (limited by Wordpress comment filter)
48
  * | Comment author notification options with special checkboxes on comment form
49
  * | Subscription activation via additional "Confirm Subscription" email
@@ -139,6 +140,20 @@ wpDiscuz Documentation: http://wpdiscuz.com/wpdiscuz-documentation/
139
 
140
  == Changelog ==
141
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
142
  = 3.0.6 =
143
 
144
  Please update to 3.0.6, there was some incomplete aspects in 3.0.5
@@ -155,9 +170,6 @@ Also, in 3.0.6 fixed wpdiscuz_after_label hooking script
155
  * Added: Option to set "Most Voted" sorting type by default
156
  * Added: Polish (pl_PL) translation, thanks to Radosław Rak
157
 
158
- IMPORTANT: If you have a Cache Plugin and CDN, please delete all caches and purge CDN after wpDiscuz update.
159
-
160
-
161
  = 3.0.4 =
162
 
163
  * Added: Lazy load comments on scrolling.
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: 4.1
6
  Tested up to: 4.3.1
7
+ Stable tag: 3.0.7
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
44
  * | Users can edit their comments (time-frame can be limited by admin)
45
  * | Automatic URLs to link conversion in comment texts
46
  * | Automatic image source URLs to image (HTML) conversion in comment texts
47
+ * | Long comment text breaking function ("Read more" button)
48
  * | Multiple line-breaks (limited by Wordpress comment filter)
49
  * | Comment author notification options with special checkboxes on comment form
50
  * | Subscription activation via additional "Confirm Subscription" email
140
 
141
  == Changelog ==
142
 
143
+ = 3.0.7 =
144
+
145
+ * Added: Long comment text breaking function with "Read more" link
146
+ * Added: Option to set maximum number of comment text words before breaking.
147
+ * Added: Turkish (tr_TR) translation, thanks to Enes Emen
148
+ * Optimized: some core functions and reduced database requests (SQL queries)
149
+ * Аaccelerated: new and faster function to recursively get comments (1.5s faster for 100 comments)
150
+ * Fixed Bug: problems related to comment edit/save functions
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.0.6 =
158
 
159
  Please update to 3.0.6, there was some incomplete aspects in 3.0.5
170
  * Added: Option to set "Most Voted" sorting type by default
171
  * Added: Polish (pl_PL) translation, thanks to Radosław Rak
172
 
 
 
 
173
  = 3.0.4 =
174
 
175
  * Added: Lazy load comments on scrolling.
templates/comment/class.WpdiscuzTemplateBuilder.php CHANGED
@@ -25,13 +25,17 @@ class WpdiscuzTemplateBuilder {
25
  public function getCommentTemplate($comment, $args, $depth) {
26
  $current_user = $args['current_user'];
27
  $depth = isset($args['addComment']) ? $args['addComment'] : $depth;
28
- $commentContent = wp_kses($comment->comment_content, $this->helper->wc_allowed_tags);
 
 
 
 
 
 
29
  $commentContent = $this->helper->makeClickable($commentContent);
30
  $commentContent = apply_filters('comment_text', $commentContent, $comment, $args);
31
  $commentContent .= $comment->comment_approved == 0 ? '<p class="wc_held_for_moderate">' . $this->optionsSerialized->phrases['wc_held_for_moderate'] . '</p>' : '';
32
  $hideAvatarStyle = $this->optionsSerialized->wordpressShowAvatars ? '' : 'style = "margin-left : 0;"';
33
- $hideReplyHtml = '';
34
- $commentWrapperClass = '';
35
  if ($this->optionsSerialized->wordpressIsPaginate && $comment->comment_parent) {
36
  $rootComment = $this->optimizationHelper->getCommentRoot($comment->comment_parent);
37
  }
@@ -82,7 +86,6 @@ class WpdiscuzTemplateBuilder {
82
  $commentWrapperClass .= 'wc-comment';
83
  } else {
84
  $commentWrapperClass .= ($comment->comment_parent && $this->optionsSerialized->wordpressThreadComments) && !$args['isSingle'] ? 'wc-comment wc-reply' : 'wc-comment';
85
- $hideReplyHtml = '<span class="wc-toggle" style="display:block;">' . $this->optionsSerialized->phrases['wc_hide_replies_text'] . ' &and;' . '</span>';
86
  }
87
  $voteCount = isset($comment->meta_value) ? $comment->meta_value : get_comment_meta($comment->comment_ID, WpdiscuzCore::META_KEY_VOTES, true);
88
  $unique_id = $comment->comment_ID . '_' . $comment->comment_parent;
@@ -104,8 +107,6 @@ class WpdiscuzTemplateBuilder {
104
  }
105
  }
106
 
107
- $childCommentsCount = $this->dbManager->getCommentsCountByParentId($comment->comment_ID);
108
-
109
  if (!$this->optionsSerialized->isGuestCanVote && !$current_user->ID) {
110
  $voteClass = ' wc_tooltipster';
111
  $voteTitleText = $this->optionsSerialized->phrases['wc_login_to_vote'];
@@ -127,8 +128,8 @@ class WpdiscuzTemplateBuilder {
127
  if (class_exists('userpro_api') && $comment->user_id) {
128
  $output .= userpro_show_badges($comment->user_id, $inline = true);
129
  }
130
- $wpdiscuzAfterLabelHtml ='';
131
- $wpdiscuzAfterLabelData = apply_filters('wpdiscuz_after_label',array($wpdiscuzAfterLabelHtml,$comment));
132
  $output .= $wpdiscuzAfterLabelData[0];
133
  $output .= '</div>';
134
  }
@@ -184,7 +185,8 @@ class WpdiscuzTemplateBuilder {
184
  if (current_user_can('edit_comment', $comment->comment_ID)) {
185
  $output .= '-&nbsp;&nbsp; <a href="' . get_edit_comment_link($comment->comment_ID) . '">' . __('Edit', 'default') . '</a>';
186
  } else {
187
- $isEditable = $this->optionsSerialized->commentEditableTime == 'unlimit' ? true : $this->helper->isCommentEditable($comment);
 
188
  if ($current_user->ID && $current_user->ID == $comment->user_id && $isEditable) {
189
  $output .= '<span class="wc_editable_comment">-&nbsp;&nbsp;' . $this->optionsSerialized->phrases['wc_edit_text'] . '</span>';
190
  $output .= '<span class="wc_cancel_edit">-&nbsp;&nbsp;' . $this->optionsSerialized->phrases['wc_comment_edit_cancel_button'] . '</span>';
@@ -192,8 +194,8 @@ class WpdiscuzTemplateBuilder {
192
  }
193
  }
194
 
195
- if ($childCommentsCount && $depth < $this->optionsSerialized->wordpressThreadCommentsDepth && $this->optionsSerialized->wordpressThreadComments) {
196
- $output .= $hideReplyHtml;
197
  }
198
  $output .= '</div>';
199
  }
25
  public function getCommentTemplate($comment, $args, $depth) {
26
  $current_user = $args['current_user'];
27
  $depth = isset($args['addComment']) ? $args['addComment'] : $depth;
28
+ $commentContent = $comment->comment_content;
29
+ $commentWrapperClass = '';
30
+ if ($this->optionsSerialized->commentReadMoreLimit) {
31
+ $commentContent = $this->helper->getCommentExcerpt($commentContent);
32
+ $commentWrapperClass .= 'wpdiscuz-comment-readmore ';
33
+ }
34
+ $commentContent = wp_kses($commentContent, $this->helper->wc_allowed_tags);
35
  $commentContent = $this->helper->makeClickable($commentContent);
36
  $commentContent = apply_filters('comment_text', $commentContent, $comment, $args);
37
  $commentContent .= $comment->comment_approved == 0 ? '<p class="wc_held_for_moderate">' . $this->optionsSerialized->phrases['wc_held_for_moderate'] . '</p>' : '';
38
  $hideAvatarStyle = $this->optionsSerialized->wordpressShowAvatars ? '' : 'style = "margin-left : 0;"';
 
 
39
  if ($this->optionsSerialized->wordpressIsPaginate && $comment->comment_parent) {
40
  $rootComment = $this->optimizationHelper->getCommentRoot($comment->comment_parent);
41
  }
86
  $commentWrapperClass .= 'wc-comment';
87
  } else {
88
  $commentWrapperClass .= ($comment->comment_parent && $this->optionsSerialized->wordpressThreadComments) && !$args['isSingle'] ? 'wc-comment wc-reply' : 'wc-comment';
 
89
  }
90
  $voteCount = isset($comment->meta_value) ? $comment->meta_value : get_comment_meta($comment->comment_ID, WpdiscuzCore::META_KEY_VOTES, true);
91
  $unique_id = $comment->comment_ID . '_' . $comment->comment_parent;
107
  }
108
  }
109
 
 
 
110
  if (!$this->optionsSerialized->isGuestCanVote && !$current_user->ID) {
111
  $voteClass = ' wc_tooltipster';
112
  $voteTitleText = $this->optionsSerialized->phrases['wc_login_to_vote'];
128
  if (class_exists('userpro_api') && $comment->user_id) {
129
  $output .= userpro_show_badges($comment->user_id, $inline = true);
130
  }
131
+ $wpdiscuzAfterLabelHtml = '';
132
+ $wpdiscuzAfterLabelData = apply_filters('wpdiscuz_after_label', array($wpdiscuzAfterLabelHtml, $comment));
133
  $output .= $wpdiscuzAfterLabelData[0];
134
  $output .= '</div>';
135
  }
185
  if (current_user_can('edit_comment', $comment->comment_ID)) {
186
  $output .= '-&nbsp;&nbsp; <a href="' . get_edit_comment_link($comment->comment_ID) . '">' . __('Edit', 'default') . '</a>';
187
  } else {
188
+ $isInRange = $this->helper->isContentInRange($commentContent);
189
+ $isEditable = $this->optionsSerialized->commentEditableTime == 'unlimit' ? true && $isInRange : $this->helper->isCommentEditable($comment) && $isInRange;
190
  if ($current_user->ID && $current_user->ID == $comment->user_id && $isEditable) {
191
  $output .= '<span class="wc_editable_comment">-&nbsp;&nbsp;' . $this->optionsSerialized->phrases['wc_edit_text'] . '</span>';
192
  $output .= '<span class="wc_cancel_edit">-&nbsp;&nbsp;' . $this->optionsSerialized->phrases['wc_comment_edit_cancel_button'] . '</span>';
194
  }
195
  }
196
 
197
+ if ($depth < $this->optionsSerialized->wordpressThreadCommentsDepth && $this->optionsSerialized->wordpressThreadComments) {
198
+ $output .= '<span class="wc-toggle wpdiscuz-hidden">' . $this->optionsSerialized->phrases['wc_hide_replies_text'] . ' &and;' . '</span>';
199
  }
200
  $output .= '</div>';
201
  }
utils/class.WpdiscuzHelper.php CHANGED
@@ -40,6 +40,7 @@ class WpdiscuzHelper {
40
  'cite' => array(),
41
  'strike' => array(),
42
  'del' => array('datetime' => array()),
 
43
  );
44
  public $captchaDir;
45
  public $captchaString;
@@ -81,7 +82,6 @@ class WpdiscuzHelper {
81
  $this->optionsSerialized->phrases['wc_second_text']['datetime'][1]
82
  );
83
  $diffs = array();
84
- // exit('ddddd');
85
  // Loop thru all intervals
86
  foreach ($intervals as $interval) {
87
  // Create temp time from time1 and interval
@@ -279,6 +279,25 @@ class WpdiscuzHelper {
279
  return $wc_editable_comment_time && ((time() - strtotime($comment->comment_date_gmt)) < intval($wc_editable_comment_time));
280
  }
281
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
282
  /**
283
  * return client real ip
284
  */
@@ -512,31 +531,32 @@ class WpdiscuzHelper {
512
  $this->captchaString = $randomString;
513
  $filesPath = plugin_dir_path(__FILE__) . WPD_DS . 'captcha' . WPD_DS;
514
  $im = @imagecreatefrompng($filesPath . 'captcha_bg_easy.png');
515
- $fontPath = $filesPath . 'consolai.ttf';
516
-
517
- $size = 16;
518
- $angle = 0;
519
- $x = 5;
520
- $y = 20;
521
- for ($i = 0; $i < strlen($randomString); $i++) {
522
- $color = imagecolorallocate($im, rand(0, 255), 0, rand(0, 255));
523
- $letter = substr($randomString, $i, 1);
524
- imagettftext($im, $size, $angle, $x, $y, $color, $fontPath, $letter);
525
- $x += 13;
526
- }
527
 
528
- for ($i = 0; $i < 5; $i++) {
529
- $color = imagecolorallocate($im, rand(0, 255), rand(0, 200), rand(0, 255));
530
- imageline($im, rand(0, 20), rand(1, 50), rand(150, 180), rand(1, 50), $color);
 
 
 
 
 
 
 
 
 
531
  }
532
- $fileName = $prefix . '-' . $t . '.png';
533
- $filePath = $this->captchaDir . WPD_DS . $fileName;
534
- imagepng($im, $filePath, 0);
535
- imagedestroy($im);
536
- @chmod($filePath, 0444);
537
- $key = $this->createAnswer($prefix, $t);
538
- $captchaData['captcha'] = $fileName;
539
- $captchaData['key'] = $prefix . $key;
540
  return $captchaData;
541
  }
542
 
@@ -588,22 +608,22 @@ class WpdiscuzHelper {
588
 
589
  public function removeOldFiles() {
590
  $files = scandir($this->captchaDir);
591
- if ($files && is_array($files)) {
592
- foreach ($files as $file) {
593
- if ($file != '.' && $file != '..' && $file != '.htaccess') {
594
- $fileName = $this->captchaDir . WPD_DS . $file;
595
- $fData = stat($fileName);
596
- if (is_file($fileName) && $fData) {
597
- $expired = $fData['mtime'] + (60 * 60 + 1000);
598
- if ($expired < time() && @chmod($fileName, 0777)) {
599
- if (!unlink($fileName)) {
600
- @chmod($fileName, 0440);
601
- }
602
- }
603
- }
604
- }
605
- }
606
- }
607
  }
608
 
609
  public function createTempDir() {
40
  'cite' => array(),
41
  'strike' => array(),
42
  'del' => array('datetime' => array()),
43
+ 'span' => array('id' => array(), 'class' => array(), 'title' => array())
44
  );
45
  public $captchaDir;
46
  public $captchaString;
82
  $this->optionsSerialized->phrases['wc_second_text']['datetime'][1]
83
  );
84
  $diffs = array();
 
85
  // Loop thru all intervals
86
  foreach ($intervals as $interval) {
87
  // Create temp time from time1 and interval
279
  return $wc_editable_comment_time && ((time() - strtotime($comment->comment_date_gmt)) < intval($wc_editable_comment_time));
280
  }
281
 
282
+ /**
283
+ * checks if the current comment content is in min/max range defined in options
284
+ */
285
+ public function isContentInRange($commentContent) {
286
+ $commentMinLength = intval($this->optionsSerialized->commentTextMinLength);
287
+ $commentMaxLength = intval($this->optionsSerialized->commentTextMaxLength);
288
+ $commentContent = trim(strip_tags($commentContent));
289
+ $contentLength = function_exists('mb_strlen') ? mb_strlen($commentContent) : strlen($commentContent);
290
+ return ($commentMinLength && $contentLength > $commentMinLength) && ($commentMaxLength == 0 || $contentLength < $commentMaxLength);
291
+ }
292
+
293
+ public function getCommentExcerpt($commentContent) {
294
+ if (count($commentWordsLimit = explode(' ', $commentContent)) > $this->optionsSerialized->commentReadMoreLimit) {
295
+ array_splice($commentWordsLimit, $this->optionsSerialized->commentReadMoreLimit);
296
+ $commentContent = implode(' ', $commentWordsLimit) . '<span id="wpdiscuz-readmore"><span class="wpdiscuz-hellip">&hellip;&nbsp;</span><span class="wpdiscuz-readmore" title="' . $this->optionsSerialized->phrases['wc_read_more'] . '">' . $this->optionsSerialized->phrases['wc_read_more'] . '</span></span>';
297
+ }
298
+ return $commentContent;
299
+ }
300
+
301
  /**
302
  * return client real ip
303
  */
531
  $this->captchaString = $randomString;
532
  $filesPath = plugin_dir_path(__FILE__) . WPD_DS . 'captcha' . WPD_DS;
533
  $im = @imagecreatefrompng($filesPath . 'captcha_bg_easy.png');
534
+ if ($im !== false) {
535
+ $fontPath = $filesPath . 'consolai.ttf';
536
+ $size = 16;
537
+ $angle = 0;
538
+ $x = 5;
539
+ $y = 20;
540
+ for ($i = 0; $i < strlen($randomString); $i++) {
541
+ $color = imagecolorallocate($im, rand(0, 255), 0, rand(0, 255));
542
+ $letter = substr($randomString, $i, 1);
543
+ imagettftext($im, $size, $angle, $x, $y, $color, $fontPath, $letter);
544
+ $x += 13;
545
+ }
546
 
547
+ for ($i = 0; $i < 5; $i++) {
548
+ $color = imagecolorallocate($im, rand(0, 255), rand(0, 200), rand(0, 255));
549
+ imageline($im, rand(0, 20), rand(1, 50), rand(150, 180), rand(1, 50), $color);
550
+ }
551
+ $fileName = $prefix . '-' . $t . '.png';
552
+ $filePath = $this->captchaDir . WPD_DS . $fileName;
553
+ imagepng($im, $filePath, 0);
554
+ imagedestroy($im);
555
+ @chmod($filePath, 0444);
556
+ $key = $this->createAnswer($prefix, $t);
557
+ $captchaData['captcha'] = $fileName;
558
+ $captchaData['key'] = $prefix . $key;
559
  }
 
 
 
 
 
 
 
 
560
  return $captchaData;
561
  }
562
 
608
 
609
  public function removeOldFiles() {
610
  $files = scandir($this->captchaDir);
611
+ if ($files && is_array($files)) {
612
+ foreach ($files as $file) {
613
+ if ($file != '.' && $file != '..' && $file != '.htaccess') {
614
+ $fileName = $this->captchaDir . WPD_DS . $file;
615
+ $fData = stat($fileName);
616
+ if (is_file($fileName) && $fData) {
617
+ $expired = $fData['mtime'] + (60 * 60 + 1000);
618
+ if ($expired < time() && @chmod($fileName, 0777)) {
619
+ if (!unlink($fileName)) {
620
+ @chmod($fileName, 0440);
621
+ }
622
+ }
623
+ }
624
+ }
625
+ }
626
+ }
627
  }
628
 
629
  public function createTempDir() {
utils/class.WpdiscuzOptimizationHelper.php CHANGED
@@ -16,44 +16,29 @@ class WpdiscuzOptimizationHelper {
16
 
17
  public function setSubComment($commentId) {
18
  $childCommentIds = array();
19
- $this->getCommentsTree(array($commentId), $childCommentIds);
20
- $childCommentIdsString = implode(',', $childCommentIds);
21
  if ($childCommentIdsString) {
22
  $childCommentIdsString .=',';
23
  }
24
  update_comment_meta($commentId, WpdiscuzCore::META_KEY_CHILDREN, $childCommentIdsString);
25
- return $childCommentIds;
26
  }
27
 
28
  /**
29
  * recursively get new comments tree
30
  */
31
- public function getCommentsTree($wc_parent_comments, &$wc_child_comments) {
32
- if (!$wc_parent_comments) {
33
- return $wc_child_comments;
34
- }
35
- $child_comments = array();
36
- foreach ($wc_parent_comments as $parent_comment) {
37
- $child_comments = $this->dbManager->getCommentsByParentId($parent_comment);
38
- foreach ($child_comments as $child_comment) {
39
- if (!$this->hasComment($wc_child_comments, $child_comment)) {
40
- $wc_child_comments[] = $child_comment;
41
  }
42
  }
43
- if ($child_comments) {
44
- $this->getCommentsTree($child_comments, $wc_child_comments);
45
- }
46
- }
47
- return $this->getCommentsTree($child_comments, $wc_child_comments);
48
- }
49
-
50
- private function hasComment($comments, $comment) {
51
- foreach ($comments as $c) {
52
- if ($c == $comment) {
53
- return true;
54
- }
55
  }
56
- return false;
57
  }
58
 
59
  /**
@@ -196,8 +181,8 @@ class WpdiscuzOptimizationHelper {
196
  }
197
  }
198
  }
199
-
200
- public function clearChildrenData(){
201
  if (isset($_GET['_wpnonce']) && wp_verify_nonce($_GET['_wpnonce'], 'clear_children_data') && isset($_GET['clear']) && trim($_GET['clear']) && current_user_can('manage_options')) {
202
  $this->dbManager->clearChildrenDataFromMeta();
203
  }
16
 
17
  public function setSubComment($commentId) {
18
  $childCommentIds = array();
19
+ $comments = $this->getTree($commentId, $childCommentIds);
20
+ $childCommentIdsString = implode(',', $comments);
21
  if ($childCommentIdsString) {
22
  $childCommentIdsString .=',';
23
  }
24
  update_comment_meta($commentId, WpdiscuzCore::META_KEY_CHILDREN, $childCommentIdsString);
25
+ return $comments;
26
  }
27
 
28
  /**
29
  * recursively get new comments tree
30
  */
31
+ public function getTree($commentId, &$tree) {
32
+ $children = $this->dbManager->getCommentsByParentId($commentId);
33
+ if ($children && is_array($children)) {
34
+ foreach ($children as $child) {
35
+ if (!in_array($child, $tree)) {
36
+ $tree[] = $child;
37
+ $this->getTree($child, $tree);
 
 
 
38
  }
39
  }
 
 
 
 
 
 
 
 
 
 
 
 
40
  }
41
+ return $tree;
42
  }
43
 
44
  /**
181
  }
182
  }
183
  }
184
+
185
+ public function clearChildrenData() {
186
  if (isset($_GET['_wpnonce']) && wp_verify_nonce($_GET['_wpnonce'], 'clear_children_data') && isset($_GET['clear']) && trim($_GET['clear']) && current_user_can('manage_options')) {
187
  $this->dbManager->clearChildrenDataFromMeta();
188
  }