<h1><a href="/api/foorum">/api/foorum</a></h1> <br/> <button onclick="getForum(prompt('ForumId: ', '1'))">GetForum</button> <button onclick="getForums()">GetAllForums</button> <button onclick="addForum(prompt('Title: ', 'Uus foorum'), 'kirjeldus', 'Äge body', prompt('Author:', 'Javascript'))">AddForum</button> <button onclick="changeForumTitle(prompt('ForumId: ', '1'), prompt('ForumTitle: ', 'Muudetud'))">ChangeForumTitle</button> <br/> <button onclick="deleteForum(prompt('ForumId: ', '1'), true)">DeleteForum</button> <button onclick="deleteForum(prompt('ForumId: ', '1'), false)">HideForum</button> <br/> <button onclick="searchForum('author', prompt('Author: ', 'veeb'))">SearchForumAuthor</button> <button onclick="searchForum('title', prompt('Title: ', 'test'))">SearchForumTitle</button> <button onclick="searchForum('authorPosts', prompt('Author: ', 'test'))">SearchAuthorPosts</button> <br/> <button onclick="addPost(prompt('ForumId', '1'), prompt('Title:', 'Best title'), prompt('Body', 'Lahe post'), prompt('Author', 'Ajax'))">AddPost</button> <code><pre id="output"></pre></code> <script> var out = document.getElementById("output"); function getForum(id) { fetch("/api/foorum/"+id).then(resp => { return resp.json(); }).then(data => { console.log(data); out.innerText = JSON.stringify(data, null, 2); }); } function getForums() { fetch("/api/foorum").then(resp => { return resp.json(); }).then(data => { console.log(data); out.innerText = JSON.stringify(data, null, 2); }); } function addForum(title, description, body, author) { if (title == null) throw new Error("title unset"); if (description == null) throw new Error("description unset"); if (body == null) throw new Error("body unset"); if (author == null) throw new Error("author unset"); var dto = { Author: author, Body: body, Description: description, Title: title } fetch("/api/foorum", { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(dto) }).then(resp => getForums()); } function changeForumTitle(id, title) { var dto = { Title: title } fetch("/api/foorum/"+id, { method: 'PUT', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(dto) }); } function deleteForum(id, permanent) { if (id == null) throw new Error("Forum id is unset"); var q = ""; if (permanent) { q = "?permanent=true"; } fetch("/api/foorum/" + id + q, { method: 'DELETE' }) .then(resp => getForums()); } function searchForum(what, author) { fetch("/api/search?"+what+"="+author).then(resp => { return resp.json(); }).then(data => { console.log(data); out.innerText = JSON.stringify(data, null, 2); }); } function addPost(id, title, body, author) { if (id == null) throw new Error("forum id is unset"); if (title == null) throw new Error("title is unset"); if (body == null) throw new Error("body is unset"); if (author == null) throw new Error("author is unset"); var dto = { Author: author, Body: body, Title: title } fetch("/api/foorum/"+id, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(dto) }).then(resp => getForum(id)); } getForums(); </script>