Move Redactor to The Top


When there are a number of ticket interactions,it becomes inconvinient to scroll all the way down to work on the ticket. This Freshplug moves the redactor to the top of the ticket menu, so all that time that you spent, previously, scrolling down to the redactor is now yours to waste. 


Instructions


1. Download the zip file.

2. Unzip and open the .txt file

3. Copy the code from the file

4. Go to Admin->Integration->Freshplugs in you dashboard and click the new Freshplug button

5. Give a Name and Description to this plug for future reference

6. Select the text box “Show this widget in ticket view page”

7. Copy the code from the .txt file here and click the button "create and enable"


redactor_14987.jpg

This topic has been closed for comments

5 replies

FYI, if you are experiencing duplicate posts when you answer to a client's ticket using the web UI, then you should revert these changes. That did it for us.

Regards

Gus//


This is the new code snippet in case you still want to try this Freshplug. It was provided to me by Freshdesk on the ticket I opened regarding the mutliple-posts issue.

Try at your own risk.


Regards,

Gus//



 

<div id="reverse_ticket_replies_order"></div>

<script type="text/javascript">
if(jQuery('body').hasClass('ticket_details')){
jQuery('#reverse_ticket_replies_order').closest('.widget').removeClass('widget');
jQuery(document).on("ticket_view_loaded",function(event,data){
jQuery('.redactor').insertAfter('#original_request');
});

jQuery(document).off('note_created note_updated activities_toggle ticket_view_loaded ticket_show_more sidebar_loaded');

function changeOrder(id){
var ID = [];
jQuery('#' + id).find(".conversation").each(function(){
ID.push(jQuery(this).attr('data-timestamp'));
});
ID = ID.sort().reverse();
jQuery(ID).each(function(i,item){
jQuery('#' + id).append(jQuery('[data-timestamp=' + item + ']'));
});
}

function reorderNotes(){
var id_value;
if(jQuery('#all_notes').length)
{
id_value = "all_notes";
}
else
{
id_value = "all_activities";
}
changeOrder(id_value);
}

jQuery(document).on('note_created note_updated activities_toggle ticket_view_loaded ticket_show_more sidebar_loaded', function(ev, data) {
reorderNotes();
console.log('test');
});
}
</script>

 


Hi Gaston,


The new freshplug you posted doesn't work for me. Do you or anyone else have an updated version of this freshplug?


Thanks!



Same-same. No luck.


Can you try the following ?

Save it as a Custom App called Reverse ticket replies order

 


<style type="text/css">
.conversation_thread {
border: 0;
}

#show_more {
padding: 0 10px 40px;
}

.conversation_thread.redactor {
margin-bottom: -30px;
margin-top: -30px;
}
</style>
<div id="reverse_ticket_replies_order"></div>
<script type="text/javascript">
if (jQuery('body').hasClass('ticket_details')) {

if (TICKET_DETAILS_DATA != null && TICKET_DETAILS_DATA.scroll_to_last) {
TICKET_DETAILS_DATA.scroll_to_last = false;
}

jQuery('#reverse_ticket_replies_order').closest('.widget').removeClass('widget');
jQuery(document).on("ticket_view_loaded", function(event, data) {
jQuery('.redactor').insertAfter('#original_request');
});

function changeOrder(id) {
var ID = [];
jQuery('#' + id).find(".conversation").each(function() {
ID.push(jQuery(this).attr('data-timestamp'));
});
ID = ID.sort().reverse();
jQuery(ID).each(function(i, item) {
jQuery('#' + id).append(jQuery('[data-timestamp=' + item + ']'));
});
}

function reorderNotes() {
var id_value;
if (jQuery('#all_notes').length) {
id_value = "all_notes";
changeOrder(id_value);
} else {
id_value = "all_activities";
changeOrder(id_value);
}
}

jQuery(document).on('note_created note_updated activities_toggle ticket_view_loaded ticket_show_more sidebar_loaded', function(ev, data) {
reorderNotes();
jQuery('#all_notes').after(jQuery('#show_more'));
});

jQuery(document).on('ticket_view_unloaded', function() {
jQuery(document).off('note_created note_updated activities_toggle ticket_view_loaded ticket_show_more sidebar_loaded');
});

}
</script>