Skip to content

Instantly share code, notes, and snippets.

@JogoShugh
Last active December 12, 2015 00:38
Show Gist options
  • Save JogoShugh/4685074 to your computer and use it in GitHub Desktop.
Save JogoShugh/4685074 to your computer and use it in GitHub Desktop.
Understand the How the Barebones User Story Editor Works
$(function () {
var storyId = '';
$("#storyGet").click(function (e) {
storyId = $('#StoryId').val();
if (storyId == '') {
return;
}
var storyUrl = url + storyId + select
$.ajax({
url: storyUrl,
type: 'GET',
dataType: 'json',
headers: headers
}).done(function (data) {
bindDtoToForm(data);
$("#editor").show();
}).fail(function (jqXHR) {
alert('Error during get. See console for details.');
console.log('Error:');
console.log(jqXHR.responseText);
});
});
// ... etc
var url = "http://eval.versionone.net/platformtest/rest-1.v1/Data/Story/";
var select = "?sel=Name,Description,Estimate"
var headers = { Authorization: "Basic " + btoa("admin:admin"), Accept: 'haljson' };
$.ajax({
url: url,
type: 'GET',
dataType: 'json',
headers: headers
}).done(function (data) {
bindDtoToForm(data);
$("#editor").show();
}).fail(function (jqXHR) {
alert('Error during get. See console for details.');
console.log('Error:');
console.log(jqXHR.responseText);
});
function bindDtoToForm(data) {
for (var key in data) {
$("#" + key).val(data[key]);
}
}
{
"Name": "Tutorial Story",
"Description": "Sample tutorial story",
"Estimate": "5"
}
function bindDtoToForm(data) {
$('#Name').val(data.Name); // or data['Name'], as these are equivalent
$('#Description').val(data.Description);
$('#Estimate').val(data.Estimate);
}
$("#save").click(function() {
var storyDto = createDtoFromForm("#editorForm input, #editorForm textarea");
$.ajax({
url: url + storyId,
type: "POST",
data: JSON.stringify(storyDto),
dataType: "json",
contentType: "haljson",
headers: headers
}).done(function(data) {
$("#message").text("Save successful! You can load it in VersionOne and see the results of your labor.");
console.log(data);
}).fail(function(jqXHR) {
alert("Error during save. See console for message.");
console.log("Error on save:");
console.log(jqXHR.responseText);
});
});
function createDtoFromForm(selector) {
var dto = {};
$(selector).each(function () {
var item = $(this);
var id = item.attr('id');
dto[id] = item.val();
});
return dto;
}
$(function () {
var storyId = '';
$("#storyGet").click(function (e) {
storyId = $('#StoryId').val();
if (storyId == '') {
return;
}
var storyUrl = url + storyId + select
$.ajax({
url: storyUrl,
type: 'GET',
dataType: 'json',
headers: headers
}).done(function (data) {
bindDtoToForm(data);
$("#editor").show();
}).fail(function (jqXHR) {
alert('Error during get. See console for details.');
console.log('Error:');
console.log(jqXHR.responseText);
});
});
// ... etc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment