Merge branch '1.0.x'

This commit is contained in:
William DURAND 2012-06-28 10:40:57 +02:00
commit b74273b72d
2 changed files with 64 additions and 7 deletions

View File

@ -30,6 +30,45 @@
$(this).next().slideToggle('slow'); $(this).next().slideToggle('slow');
}); });
var toggleButtonText = function ($btn) {
if ($btn.text() === 'Default') {
$btn.text('Raw');
} else {
$btn.text('Default');
}
};
var renderRawBody = function ($container) {
var rawData, $btn;
rawData = $container.data('raw-response');
$btn = $container.parents('.pane').find('.to-raw');
$container.addClass('prettyprinted');
$container.html(rawData);
$btn.removeClass('to-raw');
$btn.addClass('to-prettify');
toggleButtonText($btn);
};
var renderPrettifiedBody = function ($container) {
var rawData, $btn;
rawData = $container.data('raw-response');
$btn = $container.parents('.pane').find('.to-prettify');
$container.removeClass('prettyprinted');
$container.html(prettifyResponse(rawData));
prettyPrint && prettyPrint();
$btn.removeClass('to-prettify');
$btn.addClass('to-raw');
toggleButtonText($btn);
};
$('.tabs li').click(function() { $('.tabs li').click(function() {
var contentGroup = $(this).parents('.content'); var contentGroup = $(this).parents('.content');
@ -40,8 +79,6 @@
$(this).addClass('selected'); $(this).addClass('selected');
}); });
var prettifyResponse = function(text) { var prettifyResponse = function(text) {
try { try {
var data = typeof text === 'string' ? JSON.parse(text) : text; var data = typeof text === 'string' ? JSON.parse(text) : text;
@ -58,10 +95,18 @@
}; };
var displayResponseData = function(xhr, container) { var displayResponseData = function(xhr, container) {
container.removeClass('prettyprinted'); var data = xhr.responseText;
container.html(prettifyResponse(xhr.responseText)); container.data('raw-response', data);
prettyPrint && prettyPrint();
if ('<' === data[0]) {
renderRawBody(container);
} else {
renderPrettifiedBody(container);
}
container.parents('.pane').find('.to-prettify').text('Raw');
container.parents('.pane').find('.to-raw').text('Raw');
}; };
var displayResponseHeaders = function(xhr, container) { var displayResponseHeaders = function(xhr, container) {
@ -141,6 +186,18 @@
return false; return false;
}); });
$('.pane.sandbox').delegate('.to-raw', 'click', function(e) {
renderRawBody($(this).parents('.pane').find('.response'));
e.preventDefault();
});
$('.pane.sandbox').delegate('.to-prettify', 'click', function(e) {
renderPrettifiedBody($(this).parents('.pane').find('.response'));
e.preventDefault();
});
$('.pane.sandbox').on('click', '.add', function() { $('.pane.sandbox').on('click', '.add', function() {
var html = $(this).parents('.pane').find('.tuple_template').html(); var html = $(this).parents('.pane').find('.tuple_template').html();

View File

@ -145,10 +145,10 @@
<h4>Request URL</h4> <h4>Request URL</h4>
<pre class="url"></pre> <pre class="url"></pre>
<h4>Response Body</h4> <h4>Response Body&nbsp;<small>[<a href="" class="to-raw">Raw</a>]</small></h4>
<pre class="response prettyprint"></pre> <pre class="response prettyprint"></pre>
<h4>Response headers</h4> <h4>Response Headers</h4>
<pre class="headers"></pre> <pre class="headers"></pre>
</div> </div>
</div> </div>