12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <?php
- class SwpmCommentFormRelated {
- public static function customize_comment_form() {
- $allow_comments = SwpmSettings::get_instance()->get_value('members-login-to-comment');
- if (empty($allow_comments)){
- return;
- }
- if (SwpmAuth::get_instance()->is_logged_in()){
- return;
- }
-
- //Apply a filter to the message so it can be customized using the custom message plugin
- $comment_form_msg = apply_filters('swpm_login_to_comment_msg', SwpmUtils::_("Please login to comment."));
- $comment_form_msg = '<div class="swpm-login-to-comment-msg">' . $comment_form_msg . '</div>';
- ?>
- <script type="text/javascript">
- jQuery(document).ready(function($) {
- $('#respond').html('<?php echo $comment_form_msg; ?>');
- });
- </script>
- <?php
- }
-
- public static function customize_comment_fields($fields){
-
- //Check if login to comment feature is enabled.
- $allow_comments = SwpmSettings::get_instance()->get_value('members-login-to-comment');
- if (empty($allow_comments)){//Feature is disabled
- return $fields;
- }
-
- if (SwpmAuth::get_instance()->is_logged_in()){//Member is logged-in.
- return $fields;
- }
-
- //Member is not logged-in so show the protection message.
- $fields = array();
- $login_link = SwpmUtils::_('Please Login to Comment.');
- $fields['comment_field'] = $login_link;
- $fields['title_reply'] = '';
- $fields['cancel_reply_link'] = '';
- $fields['comment_notes_before'] = '';
- $fields['comment_notes_after'] = '';
- $fields['fields'] = '';
- $fields['label_submit'] = '';
- $fields['title_reply_to'] = '';
- $fields['id_submit'] = '';
- $fields['id_form'] = '';
-
- return $fields;
- }
-
- /*
- * This function checks and restricts comment posting (via HTTP POST) to members only (if the feature is enabled)
- */
- public static function check_and_restrict_comment_posting_to_members(){
- $allow_comments = SwpmSettings::get_instance()->get_value('members-login-to-comment');
- if (empty($allow_comments)){
- return;
- }
-
- if (is_admin()) {
- return;
- }
-
- if (SwpmAuth::get_instance()->is_logged_in()){
- return;
- }
-
- $comment_id = filter_input(INPUT_POST, 'comment_post_ID');
- if (empty($comment_id)) {
- return;
- }
-
- //Stop this request -> 1)we are on the front-side. 2) Comment posted by a not logged in member. 3) comment_post_ID missing.
- $_POST = array();
- wp_die(SwpmUtils::_('Comments not allowed by a non-member.'));
- }
-
- }
|