Commit 11bc1fe2 by Woile

Fix JS data binding

parent ed38371c
...@@ -2,6 +2,14 @@ var responseDisplay = 'data' ...@@ -2,6 +2,14 @@ var responseDisplay = 'data'
var coreapi = window.coreapi var coreapi = window.coreapi
var schema = window.schema var schema = window.schema
function normalizeKeys (arr) {
var _normarr = [];
for (var i = 0; i < arr.length; i++) {
_normarr = _normarr.concat(arr[i].split(' > '));
}
return _normarr;
}
function normalizeHTTPHeader (str) { function normalizeHTTPHeader (str) {
// Capitalize HTTP headers for display. // Capitalize HTTP headers for display.
return (str.charAt(0).toUpperCase() + str.substring(1)) return (str.charAt(0).toUpperCase() + str.substring(1))
...@@ -94,7 +102,7 @@ $(function () { ...@@ -94,7 +102,7 @@ $(function () {
var $requestAwaiting = $form.find('.request-awaiting') var $requestAwaiting = $form.find('.request-awaiting')
var $responseRaw = $form.find('.response-raw') var $responseRaw = $form.find('.response-raw')
var $responseData = $form.find('.response-data') var $responseData = $form.find('.response-data')
var key = $form.data('key') var key = normalizeKeys($form.data('key'))
var params = {} var params = {}
var entries = formEntries($form.get()[0]) var entries = formEntries($form.get()[0])
...@@ -212,7 +220,6 @@ $(function () { ...@@ -212,7 +220,6 @@ $(function () {
} }
var client = new coreapi.Client(options) var client = new coreapi.Client(options)
client.action(schema, key, params).then(function (data) { client.action(schema, key, params).then(function (data) {
var response = JSON.stringify(data, null, 2) var response = JSON.stringify(data, null, 2)
$requestAwaiting.addClass('hide') $requestAwaiting.addClass('hide')
......
{% load rest_framework %} {% load rest_framework %}
<!-- Modal --> <!-- Modal -->
<div class="modal fade api-modal" id="{{ section_key }}_{{ link_key }}_modal" tabindex="-1" role="dialog" aria-labelledby="api explorer modal"> <div class="modal fade api-modal" id="{{ section_key }}_{{ link_key|slugify }}_modal" tabindex="-1" role="dialog" aria-labelledby="api explorer modal">
<div class="modal-dialog modal-lg" role="document"> <div class="modal-dialog modal-lg" role="document">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
......
...@@ -6,11 +6,11 @@ ...@@ -6,11 +6,11 @@
class="btn btn-sm btn-success" class="btn btn-sm btn-success"
style="float: right; margin-top: 20px" style="float: right; margin-top: 20px"
data-toggle="modal" data-toggle="modal"
data-target="#{{ section_key }}_{{ link_key }}_modal"> data-target="#{{ section_key }}_{{ link_key|slugify }}_modal">
<i class="fa fa-exchange"></i> Interact <i class="fa fa-exchange"></i> Interact
</button> </button>
<h3 id="{{ section_key }}-{{ link_key }}" class="coredocs-link-title">{{ link.title|default:link_key }} <a href="#{{ section_key }}-{{ link_key }}"><i class="fa fa-link" aria-hidden="true"></i> <h3 id="{{ section_key }}-{{ link_key|slugify }}" class="coredocs-link-title">{{ link.title|default:link_key }} <a href="#{{ section_key }}-{{ link_key|slugify }}"><i class="fa fa-link" aria-hidden="true"></i>
</a></h3> </a></h3>
<div class="meta"> <div class="meta">
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
<a><i class="fa fa-dot-circle-o fa-lg"></i> {% if section_key %}{{ section_key }}{% else %}API Endpoints{% endif %} <span class="arrow"></span></a> <a><i class="fa fa-dot-circle-o fa-lg"></i> {% if section_key %}{{ section_key }}{% else %}API Endpoints{% endif %} <span class="arrow"></span></a>
<ul class="sub-menu {% if section_key %}collapse{% endif %}" id="{{ section_key }}-dropdown"> <ul class="sub-menu {% if section_key %}collapse{% endif %}" id="{{ section_key }}-dropdown">
{% for link_key, link in section|schema_links|items %} {% for link_key, link in section|schema_links|items %}
<li><a href="#{{ section_key }}-{{ link_key }}">{{ link.title|default:link_key }}</a></li> <li><a href="#{{ section_key }}-{{ link_key|slugify }}">{{ link.title|default:link_key }}</a></li>
{% endfor %} {% endfor %}
</ul> </ul>
</li> </li>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment