function cmtx_get_query($type) { //gets query string from URL $query = parse_url(cmtx_current_page(), PHP_URL_QUERY); if ($type == 'form' && !empty($query)) { $query = '?' . $query; } else { if ($type == 'page' && !empty($query)) { $query = '&' . $query; } else { if ($type == 'sort' && !empty($query)) { $query = '&' . $query; } else { $query = ''; } } } $query = preg_replace('/&cmtx_page=[0-9]*/', '', $query); $query = preg_replace('/cmtx_page=[0-9]*&/', '', $query); $query = preg_replace('/cmtx_page=[0-9]*/', '', $query); $query = preg_replace('/&cmtx_perm=[0-9]*/', '', $query); $query = preg_replace('/cmtx_perm=[0-9]*&/', '', $query); $query = preg_replace('/cmtx_perm=[0-9]*/', '', $query); if ($type != 'page') { $query = preg_replace('/&cmtx_sort=[0-9]*/', '', $query); $query = preg_replace('/cmtx_sort=[0-9]*&/', '', $query); $query = preg_replace('/cmtx_sort=[0-9]*/', '', $query); } $query = rtrim($query, '?'); return $query; }
function cmtx_output_captcha() { global $cmtx_path; if (cmtx_session_set() && isset($_SESSION['cmtx_captcha']) && $_SESSION['cmtx_captcha'] == cmtx_setting('session_key')) { } else { if (cmtx_setting('enabled_captcha') && cmtx_setting('captcha_type') == 'securimage' && extension_loaded('gd') && function_exists('imagettftext')) { ?> <div class="cmtx_height_between_fields"></div> <label class="cmtx_label"><?php echo CMTX_LABEL_CAPTCHA; if (cmtx_setting('display_required_symbol')) { ?> <span class="cmtx_required_symbol"><?php echo ' ' . CMTX_REQUIRED_SYMBOL; ?> </span><?php } ?> </label> <img id="cmtx_securimage" class="cmtx_securimage" src="<?php echo cmtx_commentics_url(); ?> external/securimage/securimage_show.php" alt="Captcha" title="Captcha"/> <object type="application/x-shockwave-flash" wmode="transparent" data="<?php echo cmtx_commentics_url(); ?> external/securimage/securimage_play.swf?audio_file=<?php echo cmtx_commentics_url(); ?> external/securimage/securimage_play.php&icon_file=<?php echo cmtx_commentics_url(); ?> external/securimage/images/audio_icon.png" title="<?php echo CMTX_TITLE_SECURIMAGE_AUDIO; ?> " class="cmtx_securimage_audio_icon"> <param name="movie" value="<?php echo cmtx_commentics_url(); ?> external/securimage/securimage_play.swf?audio_file=<?php echo cmtx_commentics_url(); ?> external/securimage/securimage_play.php&icon_file=<?php echo cmtx_commentics_url(); ?> external/securimage/images/audio_icon.png"/> </object> <br/> <a href="<?php echo cmtx_url_encode(cmtx_current_page()); ?> " onclick="document.getElementById('cmtx_securimage').src = '<?php echo cmtx_commentics_url(); ?> external/securimage/securimage_show.php?' + Math.random(); return false"><img src="<?php echo cmtx_commentics_url(); ?> external/securimage/images/refresh_icon.png" alt="Refresh" title="<?php echo CMTX_TITLE_SECURIMAGE_REFRESH; ?> " class="cmtx_securimage_refresh_icon"/></a> <div style="clear: left;"></div> <div class="cmtx_label"> </div> <span class="securimage_text"><?php echo CMTX_TEXT_SECURIMAGE; ?> </span> <input type="text" name="cmtx_captcha_code" class="cmtx_field cmtx_text_field cmtx_securimage_field" title="<?php echo CMTX_TITLE_SECURIMAGE; ?> " placeholder="<?php echo CMTX_PLACEHOLDER_CAPTCHA; ?> " maxlength="<?php echo cmtx_setting('field_maximum_captcha'); ?> " onkeypress="return cmtx_disable_enter_key(event)"/> <?php } else { if (cmtx_setting('enabled_captcha') && cmtx_setting('captcha_type') == 'recaptcha' && function_exists('fsockopen') && is_callable('fsockopen')) { ?> <div class="cmtx_height_between_fields"></div> <label class="cmtx_label"><?php echo CMTX_LABEL_CAPTCHA; if (cmtx_setting('display_required_symbol')) { ?> <span class="cmtx_required_symbol"><?php echo ' ' . CMTX_REQUIRED_SYMBOL; ?> </span><?php } ?> </label> <div class="cmtx_recaptcha"><?php if (cmtx_setting('recaptcha_public_key') == '' || cmtx_setting('recaptcha_private_key') == '') { echo '<span class="cmtx_recaptcha_no_key">' . CMTX_RECAPTCHA_NO_KEY . '</span>.'; } else { require_once $cmtx_path . 'includes/external/recaptcha/recaptchalib.php'; $cmtx_recaptcha_public_key = cmtx_setting('recaptcha_public_key'); echo recaptcha_get_html($cmtx_recaptcha_public_key); } ?> </div> <div style="clear: left;"></div><?php } } } }
function cmtx_akismet($name, $email, $website, $comment) { //check Akismet test for spam global $cmtx_path; //globalise variables $name = cmtx_strip_slashes(cmtx_decode($name)); $email = cmtx_strip_slashes(cmtx_decode($email)); $website = cmtx_strip_slashes(cmtx_decode($website)); if ($website == 'http://') { $website = ''; } $comment = cmtx_strip_slashes(cmtx_decode($comment)); if (!class_exists('Akismet')) { require_once $cmtx_path . 'includes/external/akismet/akismet.php'; //load Akismet script } $WordPressAPIKey = cmtx_setting('akismet_key'); //set API key $MyBlogURL = cmtx_setting('site_url'); $akismet = new Akismet($MyBlogURL, $WordPressAPIKey); $akismet->setCommentAuthor($name); $akismet->setCommentAuthorEmail($email); $akismet->setCommentAuthorURL($website); $akismet->setCommentContent($comment); $akismet->setCommentType('comment'); $akismet->setPermalink(cmtx_current_page()); if ($akismet->isCommentSpam()) { return true; } else { return false; } }
function cmtx_paginate($current_page, $range_of_pages, $total_pages) { //display pagination if ($current_page > 1) { //if not on the first page echo ' <span class="cmtx_pagination_box"><a href="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_page=1' . cmtx_get_query('page') . CMTX_ANCHOR_COMMENTS) . '" class="cmtx_pagination_link" title="' . CMTX_TITLE_PAG_FIRST . '">' . CMTX_PAGINATION_FIRST . '</a></span> '; //display link to go to first page $previous_page = $current_page - 1; //get the previous page number echo ' <span class="cmtx_pagination_box"><a href="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_page=' . $previous_page . cmtx_get_query('page') . CMTX_ANCHOR_COMMENTS) . '" class="cmtx_pagination_link" title="' . CMTX_TITLE_PAG_PREVIOUS . '">' . CMTX_PAGINATION_PREVIOUS . '</a></span> '; //display link to go back one page } for ($x = $current_page - $range_of_pages; $x < $current_page + $range_of_pages + 1; $x++) { //loop to display links to range of pages around current page if ($x > 0 && $x <= $total_pages) { //if it's a valid page number if ($x == $current_page) { //if it's the current page echo ' <span class="cmtx_pagination_box cmtx_pagination_box_active">' . $x . '</span> '; //display it but don't make it a link } else { //if it's not the current page echo ' <span class="cmtx_pagination_box"><a href="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_page=' . $x . cmtx_get_query('page') . CMTX_ANCHOR_COMMENTS) . '" class="cmtx_pagination_link" title="' . $x . '">' . $x . '</a></span> '; //display it and make it a link } } } if ($current_page != $total_pages) { //if not on the last page $next_page = $current_page + 1; //get the next page number echo ' <span class="cmtx_pagination_box"><a href="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_page=' . $next_page . cmtx_get_query('page') . CMTX_ANCHOR_COMMENTS) . '" class="cmtx_pagination_link" title="' . CMTX_TITLE_PAG_NEXT . '">' . CMTX_PAGINATION_NEXT . '</a></span> '; //display link for next page echo ' <span class="cmtx_pagination_box"><a href="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_page=' . $total_pages . cmtx_get_query('page') . CMTX_ANCHOR_COMMENTS) . '" class="cmtx_pagination_link" title="' . CMTX_TITLE_PAG_LAST . '">' . CMTX_PAGINATION_LAST . '</a></span> '; //display link for last page } }
} else { echo '<option value="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_sort=4' . cmtx_get_query('sort') . CMTX_ANCHOR_COMMENTS) . '">' . CMTX_SORT_4 . '</option>'; } } if (cmtx_setting('show_sort_by_5') && cmtx_setting('show_rating')) { if (isset($_GET['cmtx_sort']) && $_GET['cmtx_sort'] == '5' || !isset($_GET['cmtx_sort']) && cmtx_setting('comments_order') == '5') { echo '<option value="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_sort=5' . cmtx_get_query('sort') . CMTX_ANCHOR_COMMENTS) . '" selected="selected">' . CMTX_SORT_5 . '</option>'; } else { echo '<option value="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_sort=5' . cmtx_get_query('sort') . CMTX_ANCHOR_COMMENTS) . '">' . CMTX_SORT_5 . '</option>'; } } if (cmtx_setting('show_sort_by_6') && cmtx_setting('show_rating')) { if (isset($_GET['cmtx_sort']) && $_GET['cmtx_sort'] == '6' || !isset($_GET['cmtx_sort']) && cmtx_setting('comments_order') == '6') { echo '<option value="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_sort=6' . cmtx_get_query('sort') . CMTX_ANCHOR_COMMENTS) . '" selected="selected">' . CMTX_SORT_6 . '</option>'; } else { echo '<option value="' . cmtx_url_encode(strtok(cmtx_current_page(), '?') . '?cmtx_sort=6' . cmtx_get_query('sort') . CMTX_ANCHOR_COMMENTS) . '">' . CMTX_SORT_6 . '</option>'; } } echo '</select>'; echo '</div>'; } if (cmtx_setting('show_topic') || cmtx_setting('show_sort_by')) { echo '<div style="clear: both;"></div>'; echo '<div class="cmtx_height_below_sort_and_topic"></div>'; } /* *** Average Rating *** */ echo '<div class="cmtx_average_rating_block">'; if (cmtx_setting('show_average_rating')) { echo '<div class="cmtx_average_rating_stars"></div>'; $cmtx_average_rating = cmtx_average_rating(); echo '<span class="cmtx_average_rating_text">';