diff --git a/ReplyTo/class.replyto.plugin.php b/ReplyTo/class.replyto.plugin.php
index 298cab1..2113438 100644
--- a/ReplyTo/class.replyto.plugin.php
+++ b/ReplyTo/class.replyto.plugin.php
@@ -66,6 +66,16 @@ public function postController_render_before($sender) {
$this->prepareController($sender);
}
+ /**
+ * Add View Mode before rendering comments
+ * @param $sender
+ * @param $args
+ */
+ public function base_beforeCommentsRender_handler($sender, $args) {
+ $viewMode = self::getViewMode();
+ $sender->setData('ViewMode', $viewMode);
+ }
+
/**
* Render View options for a discussion
* @param $sender
@@ -264,11 +274,13 @@ public function base_inlineDiscussionOptions_handler($sender, $args) {
/**
* Insert the indentation classes into the comment.
+ * All rendering options should be set before displaying comments
* @param $sender
* @param $args
*/
public function base_beforeCommentDisplay_handler($sender, $args) {
if($sender->deliveryType() != DELIVERY_TYPE_ALL) {
+ // Ajax request to post new comments or update comments
if(isset($_SERVER['HTTP_REFERER'])) {
$previous = $_SERVER['HTTP_REFERER'];
$query = parse_url($previous, PHP_URL_QUERY);
@@ -277,7 +289,7 @@ public function base_beforeCommentDisplay_handler($sender, $args) {
if(!$viewMode) {
$viewMode = self::isPagingUrl($previous) ? self::VIEW_FLAT : self::VIEW_THREADED;
}
-
+ $sender->setData('ViewMode', $viewMode);
if($viewMode == self::VIEW_THREADED) {
$this->buildCommentReplyToCssClasses($sender);
}
diff --git a/ReplyTo/js/replyto.js b/ReplyTo/js/replyto.js
index 43a48da..f3eb389 100644
--- a/ReplyTo/js/replyto.js
+++ b/ReplyTo/js/replyto.js
@@ -15,12 +15,22 @@ jQuery(document).ready(function($) {
var parent = $(btn).parents('.MainContent');
var commentContainer = $(parent).find('div.CommentForm');
var header = $(commentContainer).find('h2.H');
- $(header).text('Reply to a comment');
// Form
var form = $(commentContainer).find('form#Form_Comment');
var href = $(btn).attr('href');
var commentID = param(href,'ParentCommentID');
var hiddenField = $(form).find(':input[type="hidden"]#Form_ParentCommentID')
+
+ var author = '';
+ if(commentID == '') { // No Parent Comment, Reply to Discussion
+ commentID = 0;
+ author = $(btn).parents('.Discussion').find('.Item-Header.DiscussionHeader .Author .topcoderHandle').text();
+ } else {
+ author = $(btn).parents('.Comment').find('.Item-Header.CommentHeader .Author .topcoderHandle').text();
+ }
+
+ $(header).text('Replying to '+ author);
+
if($(hiddenField).length == 0) {
var el = '';
$(form).append(el);
@@ -30,11 +40,11 @@ jQuery(document).ready(function($) {
var formButtons = $(form).find('.Buttons');
var postCommentButton = $(form).find('.CommentButton');
postCommentButton.val('Post Reply');
- var backButton = $(formButtons).find('span.Back');
+ var backButton = $(formButtons).find('.Button.PreviewButton');
var cancelReplyButton = $(formButtons).find('span.Reply');
if($(cancelReplyButton).length == 0) {
var cancelReplyButton = '';
- $(cancelReplyButton).insertAfter(backButton);
+ $(cancelReplyButton).insertBefore(backButton);
} else {
$(cancelReplyButton).show();
}