From: tla Date: Mon, 28 Oct 2013 21:27:50 +0000 (+0100) Subject: Make stemma data return consistent; refrain from assuming digraph in edit box. Fixes #28 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=scpubgit%2Fstemmaweb.git;a=commitdiff_plain;h=be536c891e67a3143aeef68e97ae3c351fc22149 Make stemma data return consistent; refrain from assuming digraph in edit box. Fixes #28 --- diff --git a/lib/stemmaweb/Controller/Root.pm b/lib/stemmaweb/Controller/Root.pm index e62c924..c50a660 100644 --- a/lib/stemmaweb/Controller/Root.pm +++ b/lib/stemmaweb/Controller/Root.pm @@ -381,9 +381,19 @@ sub stemma :Local :Args(2) { my $dot = $c->request->body_params->{'dot'}; # Graph::Reader::Dot does not handle bare unicode. We get around this # by wrapping all words in double quotes, as long as they aren't already - # wrapped, and as long as they aren't the initial 'digraph stemma'. + # wrapped, and as long as they aren't the initial '(di)?graph .*'. # Horrible HACK. - $dot =~ s/(?forward('View::SVG'); } else { # JSON $stemma_xml =~ s/\n/ /mg; - $c->stash->{'result'} = { 'stemmaid' => $stemmaid, 'stemmasvg' => $stemma_xml }; + $c->stash->{'result'} = { + 'stemmaid' => $stemmaid, + 'name' => $stemma->identifier, + 'svg' => $stemma_xml }; $c->forward('View::JSON'); } } diff --git a/root/js/componentload.js b/root/js/componentload.js index 2a26927..3bb43a9 100644 --- a/root/js/componentload.js +++ b/root/js/componentload.js @@ -396,8 +396,9 @@ $(document).ready( function() { // We received a stemma SVG string in return. // Update the current stemma sequence number selectedStemmaID = data.stemmaid; - // Stash the answer in our SVG array - stemmata[selectedStemmaID] = data.stemmasvg; + delete data.stemmaid; + // Stash the answer in the appropriate spot in our stemma array + stemmata[selectedStemmaID] = data; // Display the new stemma load_stemma( selectedStemmaID ); // Show the edit button, in case this was the first new stemma