This list is closed, nobody may subscribe to it.
2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(139) |
Aug
(94) |
Sep
(232) |
Oct
(143) |
Nov
(138) |
Dec
(55) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2011 |
Jan
(127) |
Feb
(90) |
Mar
(101) |
Apr
(74) |
May
(148) |
Jun
(241) |
Jul
(169) |
Aug
(121) |
Sep
(157) |
Oct
(199) |
Nov
(281) |
Dec
(75) |
2012 |
Jan
(107) |
Feb
(122) |
Mar
(184) |
Apr
(73) |
May
(14) |
Jun
(49) |
Jul
(26) |
Aug
(103) |
Sep
(133) |
Oct
(61) |
Nov
(51) |
Dec
(55) |
2013 |
Jan
(59) |
Feb
(72) |
Mar
(99) |
Apr
(62) |
May
(92) |
Jun
(19) |
Jul
(31) |
Aug
(138) |
Sep
(47) |
Oct
(83) |
Nov
(95) |
Dec
(111) |
2014 |
Jan
(125) |
Feb
(60) |
Mar
(119) |
Apr
(136) |
May
(270) |
Jun
(83) |
Jul
(88) |
Aug
(30) |
Sep
(47) |
Oct
(27) |
Nov
(23) |
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(3) |
Oct
|
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
(4) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <tob...@us...> - 2014-03-04 19:12:21
|
Revision: 7907 http://sourceforge.net/p/bigdata/code/7907 Author: tobycraig Date: 2014-03-04 19:12:18 +0000 (Tue, 04 Mar 2014) Log Message: ----------- Fixed error so that file:// and http[s]:// are correctly interpreted as paths Modified Paths: -------------- branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-03-04 01:06:16 UTC (rev 7906) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-03-04 19:12:18 UTC (rev 7907) @@ -194,8 +194,6 @@ } function identify(text, considerPath) { - text = text.toUpperCase(); - if(considerPath) { // match Unix, Windows or HTTP paths // file:// is optional for local paths @@ -210,6 +208,7 @@ } } + text = text.toUpperCase(); for(var i=0; i<sparql_update_commands.length; i++) { if(text.indexOf(sparql_update_commands[i]) != -1) { return 'sparql'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-03-04 01:06:19
|
Revision: 7906 http://sourceforge.net/p/bigdata/code/7906 Author: tobycraig Date: 2014-03-04 01:06:16 +0000 (Tue, 04 Mar 2014) Log Message: ----------- #829 - Added XML export support. Language tags still to be done Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-03-03 19:18:48 UTC (rev 7905) +++ branches/RDR/bigdata-war/src/html/new.html 2014-03-04 01:06:16 UTC (rev 7906) @@ -124,7 +124,9 @@ </div> <div class="bottom"> - <button id="query-export">Export</button> + <button id="query-export-csv">Export CSV</button> + <button id="query-export-json">Export JSON</button> + <button id="query-export-xml">Export XML</button> <button id="query-response-clear">Clear</button> </div> Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-03-03 19:18:48 UTC (rev 7905) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-03-04 01:06:16 UTC (rev 7906) @@ -373,7 +373,39 @@ $('#query-explanation').hide(); }); -$('#query-export').click(function() { +$('#query-export-csv').click(exportCSV); +$('#query-export-xml').click(exportXML); + +function exportXML() { + var xml = '<?xml version="1.0"?>\n<sparql xmlns="http://www.w3.org/2005/sparql-results#">\n\t<head>\n'; + var bindings = []; + $('#query-response thead tr td').each(function(i, td) { + xml += '\t\t<variable name="' + td.textContent + '"/>\n'; + bindings.push(td.textContent); + }); + xml += '\t</head>\n\t<results>\n'; + $('#query-response tbody tr').each(function(i, tr) { + xml += '\t\t<result>\n'; + $(tr).find('td').each(function(j, td) { + var bindingType = td.className; + if(bindingType == 'unbound') { + return; + } + var dataType = $(td).data('datatype'); + if(dataType) { + dataType = ' datatype="' + dataType + '"'; + } else { + dataType = ''; + } + xml += '\t\t\t<binding name="' + bindings[j] + '"><' + bindingType + dataType + '>' + td.textContent + '</' + bindingType + '></binding>\n'; + }); + xml += '\t\t</result>\n'; + }); + xml += '\t</results>\n</sparql>\n'; + downloadFile(xml, 'application/sparql-results+xml', 'export.xml'); +} + +function exportCSV() { // FIXME: escape commas var csv = ''; $('#query-response table tr').each(function(i, tr) { @@ -385,10 +417,14 @@ }); csv += '\n'; }); - var uri = 'data:application/csv;charset=utf-8,' + encodeURIComponent(csv); - $('<a id="download-link" download="export.csv" href="' + uri + '">').appendTo('body')[0].click(); + downloadFile(csv, 'application/csv', 'export.csv'); +} + +function downloadFile(data, type, filename) { + var uri = 'data:' + type + ';charset=utf-8,' + encodeURIComponent(data); + $('<a id="download-link" download="' + filename + '" href="' + uri + '">').appendTo('body')[0].click(); $('#download-link').remove(); -}); +} function showQueryResults(data) { $('#query-response').empty(); @@ -431,7 +467,18 @@ for(var i=0; i<data.results.bindings.length; i++) { var tr = $('<tr>'); for(var j=0; j<vars.length; j++) { - tr.append('<td>' + data.results.bindings[i][vars[j]].value + '</td>'); + if(vars[j] in data.results.bindings[i]) { + var binding = data.results.bindings[i][vars[j]]; + if(binding.type == 'typed-literal') { + var tdData = ' class="literal" data-datatype="' + binding.datatype + '"'; + } else { + var tdData = ' class="' + binding.type + '"'; + } + tr.append('<td' + tdData + '>' + binding.value + '</td>'); + } else { + // no binding + tr.append('<td class="unbound">'); + } } table.append(tr); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-03-03 19:18:50
|
Revision: 7905 http://sourceforge.net/p/bigdata/code/7905 Author: tobycraig Date: 2014-03-03 19:18:48 +0000 (Mon, 03 Mar 2014) Log Message: ----------- Fixed jQuery namespaced XML inconsistency between Chrome and Firefox Modified Paths: -------------- branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-03-01 01:38:15 UTC (rev 7904) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-03-03 19:18:48 UTC (rev 7905) @@ -90,8 +90,10 @@ function getDefaultNamespace() { $.get('/sparql', function(data) { - DEFAULT_NAMESPACE = $(data).find('Description[rdf\\:nodeID=defaultDataset]').find('title')[0].textContent; - var url = $(data).find('Description[rdf\\:nodeID=defaultDataset]').find('sparqlEndpoint')[0].attributes['rdf:resource'].textContent; + // Chrome does not work with rdf\:Description, so look for Description too + var defaultDataset = $(data).find('rdf\\:Description[rdf\\:nodeID=defaultDataset], Description[rdf\\:nodeID=defaultDataset]'); + DEFAULT_NAMESPACE = defaultDataset.find('title')[0].textContent; + var url = defaultDataset.find('sparqlEndpoint')[0].attributes['rdf:resource'].textContent; useNamespace(DEFAULT_NAMESPACE, url); getNamespaces(); }); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-03-01 01:38:19
|
Revision: 7904 http://sourceforge.net/p/bigdata/code/7904 Author: tobycraig Date: 2014-03-01 01:38:15 +0000 (Sat, 01 Mar 2014) Log Message: ----------- #829 - Export query results to CSV Modified Paths: -------------- branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-03-01 00:12:57 UTC (rev 7903) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-03-01 01:38:15 UTC (rev 7904) @@ -371,6 +371,23 @@ $('#query-explanation').hide(); }); +$('#query-export').click(function() { + // FIXME: escape commas + var csv = ''; + $('#query-response table tr').each(function(i, tr) { + $(tr).find('td').each(function(j, td) { + if(j > 0) { + csv += ','; + } + csv += td.textContent; + }); + csv += '\n'; + }); + var uri = 'data:application/csv;charset=utf-8,' + encodeURIComponent(csv); + $('<a id="download-link" download="export.csv" href="' + uri + '">').appendTo('body')[0].click(); + $('#download-link').remove(); +}); + function showQueryResults(data) { $('#query-response').empty(); var table = $('<table>').appendTo($('#query-response')); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-03-01 00:13:02
|
Revision: 7903 http://sourceforge.net/p/bigdata/code/7903 Author: tobycraig Date: 2014-03-01 00:12:57 +0000 (Sat, 01 Mar 2014) Log Message: ----------- #830 - Output RDF data from CONSTRUCT query in table Modified Paths: -------------- branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 19:56:28 UTC (rev 7902) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-03-01 00:12:57 UTC (rev 7903) @@ -344,8 +344,7 @@ var settings = { type: 'POST', data: $(this).serialize(), - dataType: 'json', - accepts: {'json': 'application/sparql-results+json'}, + headers: { 'Accept': 'application/sparql-results+json, application/rdf+xml' }, success: showQueryResults, error: queryResultsError } @@ -375,21 +374,48 @@ function showQueryResults(data) { $('#query-response').empty(); var table = $('<table>').appendTo($('#query-response')); - var thead = $('<thead>').appendTo(table); - var vars = []; - var tr = $('<tr>'); - for(var i=0; i<data.head.vars.length; i++) { - tr.append('<td>' + data.head.vars[i] + '</td>'); - vars.push(data.head.vars[i]); - } - thead.append(tr); - table.append(thead); - for(var i=0; i<data.results.bindings.length; i++) { + if(this.dataTypes[1] == 'xml') { + // RDF + table.append($('<thead><tr><td>s</td><td>p</td><td>o</td></tr></thead>')); + var rows = $(data).find('Description'); + for(var i=0; i<rows.length; i++) { + // FIXME: are about and nodeID the only possible attributes here? + var s = rows[i].attributes['rdf:about']; + if(typeof(s) == 'undefined') { + s = rows[i].attributes['rdf:nodeID']; + } + s = s.textContent; + for(var j=0; j<rows[i].children.length; j++) { + var p = rows[i].children[j].tagName; + var o = rows[i].children[j].attributes['rdf:resource']; + // FIXME: is this the correct behaviour? + if(typeof(o) == 'undefined') { + o = rows[i].children[j].textContent; + } else { + o = o.textContent; + } + var tr = $('<tr><td>' + (j == 0 ? s : '') + '</td><td>' + p + '</td><td>' + o + '</td>'); + table.append(tr); + } + } + } else { + // JSON + var thead = $('<thead>').appendTo(table); + var vars = []; var tr = $('<tr>'); - for(var j=0; j<vars.length; j++) { - tr.append('<td>' + data.results.bindings[i][vars[j]].value + '</td>'); + for(var i=0; i<data.head.vars.length; i++) { + tr.append('<td>' + data.head.vars[i] + '</td>'); + vars.push(data.head.vars[i]); } - table.append(tr); + thead.append(tr); + table.append(thead); + for(var i=0; i<data.results.bindings.length; i++) { + var tr = $('<tr>'); + for(var j=0; j<vars.length; j++) { + tr.append('<td>' + data.results.bindings[i][vars[j]].value + '</td>'); + } + table.append(tr); + } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-28 19:56:32
|
Revision: 7902 http://sourceforge.net/p/bigdata/code/7902 Author: tobycraig Date: 2014-02-28 19:56:28 +0000 (Fri, 28 Feb 2014) Log Message: ----------- Removed unnecessary hidden input for namespace Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-28 18:57:43 UTC (rev 7901) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-28 19:56:28 UTC (rev 7902) @@ -97,8 +97,6 @@ </div> <form id="query-form"> - <input type="hidden" class="namespace" name="namespace"> - <textarea id="query-box" name="query" placeholder="(Input a SPARQL query)"></textarea> <a href="#" id="advanced-features-toggle">Advanced features</a> Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 18:57:43 UTC (rev 7901) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 19:56:28 UTC (rev 7902) @@ -68,7 +68,6 @@ function useNamespace(name, url) { $('#current-namespace').html(name); - $('.namespace').val(name); NAMESPACE = name; NAMESPACE_URL = url; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-28 18:57:47
|
Revision: 7901 http://sourceforge.net/p/bigdata/code/7901 Author: tobycraig Date: 2014-02-28 18:57:43 +0000 (Fri, 28 Feb 2014) Log Message: ----------- #826 - Added submit load/query shortcut control return Modified Paths: -------------- branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 18:42:27 UTC (rev 7900) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 18:57:43 UTC (rev 7901) @@ -265,13 +265,18 @@ var sparql_update_commands = ['INSERT', 'DELETE']; $('#load-file').change(handleFile); -$('#load-box').on('dragover', handleDragOver); -$('#load-box').on('drop', handleFile); -$('#load-box').on('paste', handlePaste); -$('#load-type').change(handleTypeChange); +$('#load-box').on('dragover', handleDragOver) + .on('drop', handleFile) + .on('paste', handlePaste) + .bind('keydown', 'ctrl+return', submitLoad) + .change(handleTypeChange); $('#clear-file').click(clearFile); -$('#load-load').click(function() { +$('#load-load').click(submitLoad); + +function submitLoad(e) { + e.preventDefault(); + var settings = { type: 'POST', data: fileContents == null ? $('#load-box').val() : fileContents, @@ -303,7 +308,7 @@ } $.ajax(NAMESPACE_URL, settings); -}); +} $('#load-clear').click(function() { $('#load-response').text(''); @@ -331,7 +336,12 @@ /* Query */ -$('#query-form').submit(function() { +$('#query-box').bind('keydown', 'ctrl+return', function(e) { e.preventDefault(); $('#query-form').submit(); }); +$('#query-form').submit(submitQuery); + +function submitQuery(e) { + e.preventDefault(); + var settings = { type: 'POST', data: $(this).serialize(), @@ -356,10 +366,8 @@ } else { $('#query-explanation').hide(); } +} - return false; -}); - $('#query-response-clear').click(function() { $('#query-response, #query-explanation').empty(''); $('#query-explanation').hide(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-28 18:42:30
|
Revision: 7900 http://sourceforge.net/p/bigdata/code/7900 Author: tobycraig Date: 2014-02-28 18:42:27 +0000 (Fri, 28 Feb 2014) Log Message: ----------- #827 - Basic explore tab functionality Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/style.css branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-28 01:21:52 UTC (rev 7899) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-28 18:42:27 UTC (rev 7900) @@ -132,7 +132,14 @@ </div> - <div class="tab" id="explore-tab">explore + <div class="tab" id="explore-tab"> + + <div class="box"> + <p>Enter a URI to begin navigation <form id="explore-form"><input type="text"> <input type="submit"></form></p> + </div> + + <div class="box" id="explore-results"> + </div> </div> <div class="tab" id="status-tab">status Modified: branches/RDR/bigdata-war/src/html/style.css =================================================================== --- branches/RDR/bigdata-war/src/html/style.css 2014-02-28 01:21:52 UTC (rev 7899) +++ branches/RDR/bigdata-war/src/html/style.css 2014-02-28 18:42:27 UTC (rev 7900) @@ -169,7 +169,7 @@ td { border: 1px solid; - padding: 2px; + padding: 5px; } pre { Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 01:21:52 UTC (rev 7899) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 18:42:27 UTC (rev 7900) @@ -395,15 +395,14 @@ } -/* Navigator */ +/* Explore */ -$('#navigator').submit(function() { - // get URI - var uri = $('#navigator-uri').val(); +$('#explore-form').submit(function(e) { + e.preventDefault(); + var uri = $(this).find('input').val(); if(uri) { loadURI(uri); } - return false; }); function loadURI(uri) { @@ -440,14 +439,14 @@ data: 'query=' + encodeURI(query), dataType: 'json', accepts: {'json': 'application/sparql-results+json'}, - success: updateNavigationStart, - error: updateNavigationError + success: updateExploreStart, + error: updateExploreError }; $.ajax('/sparql', settings); } -function updateNavigationStart(data) { - var disp = $('#navigator-display'); +function updateExploreStart(data) { + var disp = $('#explore-results'); disp.html(''); // see if we got any results if(data.results.bindings.length == 0) { @@ -498,11 +497,11 @@ } } - disp.find('a').click(function() { loadURI(this.text); return false; }); + disp.find('a').click(function(e) { e.preventDefault(); loadURI(this.text); }); } -function updateNavigationError(jqXHR, textStatus, errorThrown) { - $('#navigator-display').html('Error! ' + textStatus + ' ' + errorThrown); +function updateExploreError(jqXHR, textStatus, errorThrown) { + $('#explore-results').html('Error! ' + textStatus + ' ' + errorThrown); } }); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-28 01:21:56
|
Revision: 7899 http://sourceforge.net/p/bigdata/code/7899 Author: tobycraig Date: 2014-02-28 01:21:52 +0000 (Fri, 28 Feb 2014) Log Message: ----------- #822 - Display results as well as explanation when explain query is selected Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/style.css branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-28 00:21:09 UTC (rev 7898) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-28 01:21:52 UTC (rev 7899) @@ -104,7 +104,7 @@ <a href="#" id="advanced-features-toggle">Advanced features</a> <div id="advanced-features"> - <input type="checkbox" name="explain" value="details" id="query-explain"> <label for="query-explain">Explain</label> + <input type="checkbox" id="query-explain"> <label for="query-explain">Explain</label> <input type="checkbox" name="analytic" value="true" id="query-analytic"> <label for="query-analytic">Analytic</label> <input type="checkbox" name="RTO" value="true" id="query-rto"> <label for="query-rto">Runtime Query Optimizer</label> </div> @@ -122,6 +122,9 @@ <div id="query-response" class="box"> </div> + <div id="query-explanation" class="box"> + </div> + <div class="bottom"> <button id="query-export">Export</button> <button id="query-response-clear">Clear</button> Modified: branches/RDR/bigdata-war/src/html/style.css =================================================================== --- branches/RDR/bigdata-war/src/html/style.css 2014-02-28 00:21:09 UTC (rev 7898) +++ branches/RDR/bigdata-war/src/html/style.css 2014-02-28 01:21:52 UTC (rev 7899) @@ -163,7 +163,7 @@ text-align: right; } -#advanced-features { +#advanced-features, #query-explanation { display: none; } Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 00:21:09 UTC (rev 7898) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 01:21:52 UTC (rev 7899) @@ -335,51 +335,61 @@ var settings = { type: 'POST', data: $(this).serialize(), + dataType: 'json', + accepts: {'json': 'application/sparql-results+json'}, success: showQueryResults, error: queryResultsError } - // queries return JSON, explanations return HTML + $.ajax(NAMESPACE_URL, settings); + + $('#query-explanation').empty(); if($('#query-explain').is(':checked')) { - settings.dataType = 'html'; + settings = { + type: 'POST', + data: $(this).serialize() + '&explain=details', + dataType: 'html', + success: showQueryExplanation, + error: queryResultsError + }; + $.ajax(NAMESPACE_URL, settings); } else { - settings.dataType = 'json'; - settings.accepts = {'json': 'application/sparql-results+json'}; + $('#query-explanation').hide(); } - $.ajax(NAMESPACE_URL, settings); return false; }); $('#query-response-clear').click(function() { - $('#query-response').html(''); + $('#query-response, #query-explanation').empty(''); + $('#query-explanation').hide(); }); function showQueryResults(data) { - if(this.dataType == 'html') { - $('#query-response').html(data); - } else { - $('#query-response').html(''); - var table = $('<table>').appendTo($('#query-response')); - var thead = $('<thead>').appendTo(table); - var vars = []; + $('#query-response').empty(); + var table = $('<table>').appendTo($('#query-response')); + var thead = $('<thead>').appendTo(table); + var vars = []; + var tr = $('<tr>'); + for(var i=0; i<data.head.vars.length; i++) { + tr.append('<td>' + data.head.vars[i] + '</td>'); + vars.push(data.head.vars[i]); + } + thead.append(tr); + table.append(thead); + for(var i=0; i<data.results.bindings.length; i++) { var tr = $('<tr>'); - for(var i=0; i<data.head.vars.length; i++) { - tr.append('<td>' + data.head.vars[i] + '</td>'); - vars.push(data.head.vars[i]); + for(var j=0; j<vars.length; j++) { + tr.append('<td>' + data.results.bindings[i][vars[j]].value + '</td>'); } - thead.append(tr); - table.append(thead); - for(var i=0; i<data.results.bindings.length; i++) { - var tr = $('<tr>'); - for(var j=0; j<vars.length; j++) { - tr.append('<td>' + data.results.bindings[i][vars[j]].value + '</td>'); - } - table.append(tr); - } + table.append(tr); } } +function showQueryExplanation(data) { + $('#query-explanation').html(data).show(); +} + function queryResultsError(jqXHR, textStatus, errorThrown) { $('#query-response').text('Error! ' + textStatus + ' ' + errorThrown); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-28 00:21:12
|
Revision: 7898 http://sourceforge.net/p/bigdata/code/7898 Author: tobycraig Date: 2014-02-28 00:21:09 +0000 (Fri, 28 Feb 2014) Log Message: ----------- #820 - Allow HTTP[S] paths as well as file paths Modified Paths: -------------- branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-27 23:42:09 UTC (rev 7897) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-28 00:21:09 UTC (rev 7898) @@ -196,9 +196,15 @@ text = text.toUpperCase(); if(considerPath) { - // match Unix or Windows paths - var re = /^(((\/[^\/]+)+)|([A-Z]:([\\\/][^\\\/]+)+))$/; - if(re.test(text.trim())) { + // match Unix, Windows or HTTP paths + // file:// is optional for local paths + // when file:// is not present, Windows paths may use \ or / and must include a : + // when file:// is present, Windows paths must use / and may include a : + // http[s]:// is mandatory for HTTP paths + var unix = /^(file:\/\/)?((\/[^\/]+)+)$/; + var windows = /^((file:\/\/)([A-Za-z]:?([\/][^\/\\]+)+))|([A-Za-z]:([\\\/][^\\\/]+)+)$/; + var http = /^https?:\/((\/[^\/]+)+)$/; + if(unix.test(text.trim()) || windows.test(text.trim()) || http.test(text.trim())) { return 'path'; } } @@ -288,7 +294,11 @@ settings.contentType = rdf_content_types[type]; break; case 'path': - settings.data = 'uri=file://' + encodeURIComponent(settings.data); + // if no scheme is specified, assume a local path + if(!/^(file|(https?)):\/\//.test(settings.data)) { + settings.data = 'file://' + settings.data; + } + settings.data = 'uri=' + encodeURIComponent(settings.data); break; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-27 23:42:13
|
Revision: 7897 http://sourceforge.net/p/bigdata/code/7897 Author: tobycraig Date: 2014-02-27 23:42:09 +0000 (Thu, 27 Feb 2014) Log Message: ----------- #819 - Retrieve default namespace on page load Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-27 23:09:07 UTC (rev 7896) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-27 23:42:09 UTC (rev 7897) @@ -141,7 +141,6 @@ <ul id="namespaces-list"> </ul> - <button id="namespaces-refresh">Refresh</button> </div> </div> Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-27 23:09:07 UTC (rev 7896) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-27 23:42:09 UTC (rev 7897) @@ -51,8 +51,9 @@ var namespaces = namespaces = data.getElementsByTagNameNS(rdf, 'Description') for(var i=0; i<namespaces.length; i++) { var title = namespaces[i].getElementsByTagName('title')[0].textContent; + var titleText = title == DEFAULT_NAMESPACE ? title + ' (default)' : title; var url = namespaces[i].getElementsByTagName('sparqlEndpoint')[0].getAttributeNS(rdf, 'resource'); - $('#namespaces-list').append('<li data-name="' + title + '" data-url="' + url + '">' + title + ' - <a href="#" class="use-namespace">Use</a> - <a href="#" class="delete-namespace">Delete</a></li>'); + $('#namespaces-list').append('<li data-name="' + title + '" data-url="' + url + '">' + titleText + ' - <a href="#" class="use-namespace">Use</a> - <a href="#" class="delete-namespace">Delete</a></li>'); } $('.use-namespace').click(function(e) { e.preventDefault(); @@ -88,12 +89,17 @@ } } -var NAMESPACE, NAMESPACE_URL, fileContents; -// default namespace -useNamespace('kb', '/namespace/kb/sparql'); -getNamespaces(); +function getDefaultNamespace() { + $.get('/sparql', function(data) { + DEFAULT_NAMESPACE = $(data).find('Description[rdf\\:nodeID=defaultDataset]').find('title')[0].textContent; + var url = $(data).find('Description[rdf\\:nodeID=defaultDataset]').find('sparqlEndpoint')[0].attributes['rdf:resource'].textContent; + useNamespace(DEFAULT_NAMESPACE, url); + getNamespaces(); + }); +} +var DEFAULT_NAMESPACE, NAMESPACE, NAMESPACE_URL, fileContents; -$('#namespaces-refresh').click(getNamespaces); +getDefaultNamespace(); /* Namespace shortcuts */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-27 23:09:10
|
Revision: 7896 http://sourceforge.net/p/bigdata/code/7896 Author: tobycraig Date: 2014-02-27 23:09:07 +0000 (Thu, 27 Feb 2014) Log Message: ----------- #823 - Disable textarea when a large file is selected Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-27 19:07:35 UTC (rev 7895) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-27 23:09:07 UTC (rev 7896) @@ -42,7 +42,9 @@ </div> <textarea id="load-box" placeholder="(Type in or drag a file containing RDF data, a SPARQL update or a file path or URL)"></textarea> + <p id="large-file-message">Your file is too large to display here, but will be uploaded as normal. <a href="#" id="clear-file">Remove file</a></p> <p> + <input type="file" id="load-file"><br> <label for="load-type">Type:</label> <select id="load-type"> <option value="sparql" selected="selected">SPARQL</option> Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-27 19:07:35 UTC (rev 7895) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-27 23:09:07 UTC (rev 7896) @@ -88,7 +88,7 @@ } } -var NAMESPACE, NAMESPACE_URL; +var NAMESPACE, NAMESPACE_URL, fileContents; // default namespace useNamespace('kb', '/namespace/kb/sparql'); getNamespaces(); @@ -135,23 +135,43 @@ var f = files[0]; // if file is too large, tell user to supply local path - if(f.size > 1048576) { + if(f.size > 1048576 * 100) { alert('File too large, enter local path to file'); $('#load-box').val('/path/to/' + f.name); setType('path'); - $('#large-file-message').hide(); + $('#load-box').prop('disabled', false) + $('#large-file-message, #clear-file').hide(); } else { - // display file contents in the textarea var fr = new FileReader(); fr.onload = function(e2) { - $('#load-box').val(e2.target.result); + if(f.size > 10240) { + // do not use textarea + $('#load-box').prop('disabled', true) + $('#large-file-message, #clear-file').show() + $('#load-box').val(''); + fileContents = e2.target.result; + } else { + // display file contents in the textarea + clearFile(); + $('#load-box').val(e2.target.result); + } guessType(f.name.split('.').pop().toLowerCase(), e2.target.result); }; fr.readAsText(f); } + $('#load-file').val(''); } +function clearFile(e) { + if(e) { + e.preventDefault(); + } + $('#load-box').prop('disabled', false) + $('#large-file-message, #clear-file').hide() + fileContents = null; +} + function guessType(extension, content) { // try to guess type if(extension == 'rq') { @@ -237,11 +257,12 @@ $('#load-box').on('drop', handleFile); $('#load-box').on('paste', handlePaste); $('#load-type').change(handleTypeChange); +$('#clear-file').click(clearFile); $('#load-load').click(function() { var settings = { type: 'POST', - data: $('#load-box').val(), + data: fileContents == null ? $('#load-box').val() : fileContents, success: updateResponseXML, error: updateResponseError } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-27 19:07:38
|
Revision: 7895 http://sourceforge.net/p/bigdata/code/7895 Author: tobycraig Date: 2014-02-27 19:07:35 +0000 (Thu, 27 Feb 2014) Log Message: ----------- Changed logo Modified Paths: -------------- branches/RDR/bigdata-war/src/html/logo.png Modified: branches/RDR/bigdata-war/src/html/logo.png =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-26 23:45:19
|
Revision: 7894 http://sourceforge.net/p/bigdata/code/7894 Author: tobycraig Date: 2014-02-26 23:45:16 +0000 (Wed, 26 Feb 2014) Log Message: ----------- Make tab-switching shortcuts work within inputs too. Modified Paths: -------------- branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-26 23:44:11 UTC (rev 7893) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-26 23:45:16 UTC (rev 7894) @@ -39,8 +39,8 @@ } // these should be , and . but Hotkeys views those keypresses as these characters -$(document).bind('keydown', 'ctrl+¼', function() { moveTab(false); }); -$(document).bind('keydown', 'ctrl+¾', function() { moveTab(true); }); +$('html, textarea, select').bind('keydown', 'ctrl+¼', function() { moveTab(false); }); +$('html, textarea, select').bind('keydown', 'ctrl+¾', function() { moveTab(true); }); /* Namespaces */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-26 23:44:15
|
Revision: 7893 http://sourceforge.net/p/bigdata/code/7893 Author: tobycraig Date: 2014-02-26 23:44:11 +0000 (Wed, 26 Feb 2014) Log Message: ----------- Disallow uploads larger than 1MB and remove hidden field for containing them. Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-26 20:35:12 UTC (rev 7892) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-26 23:44:11 UTC (rev 7893) @@ -41,8 +41,6 @@ </ul> </div> - <input id="load-hidden" type="hidden" name="large-file-contents"> - <p id="large-file-message">Your file is too large to display here, but will be uploaded as normal.</p> <textarea id="load-box" placeholder="(Type in or drag a file containing RDF data, a SPARQL update or a file path or URL)"></textarea> <p> <label for="load-type">Type:</label> Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-26 20:35:12 UTC (rev 7892) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-26 23:44:11 UTC (rev 7893) @@ -135,32 +135,20 @@ var f = files[0]; // if file is too large, tell user to supply local path - if(f.size > 100 * 1048576) { + if(f.size > 1048576) { alert('File too large, enter local path to file'); $('#load-box').val('/path/to/' + f.name); setType('path'); - $('#load-file').val(''); $('#large-file-message').hide(); - return; - } - - // if file is small enough, populate the textarea with it - if(f.size < 10 * 1024) { - holder = '#load-box'; - $('#load-hidden').val(''); - $('#large-file-message').hide(); } else { - // store file contents in hidden input and clear textarea - holder = '#load-hidden'; - $('#load-box').val(''); - $('#large-file-message').show(); + // display file contents in the textarea + var fr = new FileReader(); + fr.onload = function(e2) { + $('#load-box').val(e2.target.result); + guessType(f.name.split('.').pop().toLowerCase(), e2.target.result); + }; + fr.readAsText(f); } - var fr = new FileReader(); - fr.onload = function(e2) { - $(holder).val(e2.target.result); - guessType(f.name.split('.').pop().toLowerCase(), e2.target.result); - }; - fr.readAsText(f); $('#load-file').val(''); } @@ -243,8 +231,6 @@ 'turtle': 'text/turtle'}; var sparql_update_commands = ['INSERT', 'DELETE']; -// stores the id of the element that contains the data to be sent -var holder = '#load-box'; $('#load-file').change(handleFile); $('#load-box').on('dragover', handleDragOver); @@ -255,7 +241,7 @@ $('#load-load').click(function() { var settings = { type: 'POST', - data: $(holder).val(), + data: $('#load-box').val(), success: updateResponseXML, error: updateResponseError } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-26 20:35:18
|
Revision: 7892 http://sourceforge.net/p/bigdata/code/7892 Author: tobycraig Date: 2014-02-26 20:35:12 +0000 (Wed, 26 Feb 2014) Log Message: ----------- Added keyboard shortcuts to switch between tabs. Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/workbench.js Added Paths: ----------- branches/RDR/bigdata-war/src/html/jquery.hotkeys.js Added: branches/RDR/bigdata-war/src/html/jquery.hotkeys.js =================================================================== --- branches/RDR/bigdata-war/src/html/jquery.hotkeys.js (rev 0) +++ branches/RDR/bigdata-war/src/html/jquery.hotkeys.js 2014-02-26 20:35:12 UTC (rev 7892) @@ -0,0 +1,110 @@ +/* + * jQuery Hotkeys Plugin + * Copyright 2010, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * + * Based upon the plugin by Tzury Bar Yochay: + * http://github.com/tzuryby/hotkeys + * + * Original idea by: + * Binny V A, http://www.openjs.com/scripts/events/keyboard_shortcuts/ +*/ + +/* + * One small change is: now keys are passed by object { keys: '...' } + * Might be useful, when you want to pass some other data to your handler + */ + +(function(jQuery){ + + jQuery.hotkeys = { + version: "0.8", + + specialKeys: { + 8: "backspace", 9: "tab", 10: "return", 13: "return", 16: "shift", 17: "ctrl", 18: "alt", 19: "pause", + 20: "capslock", 27: "esc", 32: "space", 33: "pageup", 34: "pagedown", 35: "end", 36: "home", + 37: "left", 38: "up", 39: "right", 40: "down", 45: "insert", 46: "del", + 96: "0", 97: "1", 98: "2", 99: "3", 100: "4", 101: "5", 102: "6", 103: "7", + 104: "8", 105: "9", 106: "*", 107: "+", 109: "-", 110: ".", 111 : "/", + 112: "f1", 113: "f2", 114: "f3", 115: "f4", 116: "f5", 117: "f6", 118: "f7", 119: "f8", + 120: "f9", 121: "f10", 122: "f11", 123: "f12", 144: "numlock", 145: "scroll", 186: ";", 191: "/", + 220: "\\", 222: "'", 224: "meta" + }, + + shiftNums: { + "`": "~", "1": "!", "2": "@", "3": "#", "4": "$", "5": "%", "6": "^", "7": "&", + "8": "*", "9": "(", "0": ")", "-": "_", "=": "+", ";": ": ", "'": "\"", ",": "<", + ".": ">", "/": "?", "\\": "|" + } + }; + + function keyHandler( handleObj ) { + if ( typeof handleObj.data === "string" ) { + handleObj.data = { keys: handleObj.data }; + } + + // Only care when a possible input has been specified + if ( !handleObj.data || !handleObj.data.keys || typeof handleObj.data.keys !== "string" ) { + return; + } + + var origHandler = handleObj.handler, + keys = handleObj.data.keys.toLowerCase().split(" "), + textAcceptingInputTypes = ["text", "password", "number", "email", "url", "range", "date", "month", "week", "time", "datetime", "datetime-local", "search", "color", "tel"]; + + handleObj.handler = function( event ) { + // Don't fire in text-accepting inputs that we didn't directly bind to + if ( this !== event.target && (/textarea|select/i.test( event.target.nodeName ) || + jQuery.inArray(event.target.type, textAcceptingInputTypes) > -1 ) ) { + return; + } + + var special = jQuery.hotkeys.specialKeys[ event.keyCode ], + character = String.fromCharCode( event.which ).toLowerCase(), + modif = "", possible = {}; + + // check combinations (alt|ctrl|shift+anything) + if ( event.altKey && special !== "alt" ) { + modif += "alt+"; + } + + if ( event.ctrlKey && special !== "ctrl" ) { + modif += "ctrl+"; + } + + // TODO: Need to make sure this works consistently across platforms + if ( event.metaKey && !event.ctrlKey && special !== "meta" ) { + modif += "meta+"; + } + + if ( event.shiftKey && special !== "shift" ) { + modif += "shift+"; + } + + if ( special ) { + possible[ modif + special ] = true; + } + + if ( character ) { + possible[ modif + character ] = true; + possible[ modif + jQuery.hotkeys.shiftNums[ character ] ] = true; + + // "$" can be triggered as "Shift+4" or "Shift+$" or just "$" + if ( modif === "shift+" ) { + possible[ jQuery.hotkeys.shiftNums[ character ] ] = true; + } + } + + for ( var i = 0, l = keys.length; i < l; i++ ) { + if ( possible[ keys[i] ] ) { + return origHandler.apply( this, arguments ); + } + } + }; + } + + jQuery.each([ "keydown", "keyup", "keypress" ], function() { + jQuery.event.special[ this ] = { add: keyHandler }; + }); + +})( this.jQuery ); Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-26 19:59:50 UTC (rev 7891) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-26 20:35:12 UTC (rev 7892) @@ -150,7 +150,8 @@ <!--[if IE]><script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]--> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> - <script>window.jQuery || document.write('<script src="/jquery.min.js"><\/script>')</script> + <script>window.jQuery || document.write('<script src="jquery.min.js"><\/script>')</script> + <script src="jquery.hotkeys.js"></script> <script src="workbench.js"></script> </body> </html> Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-26 19:59:50 UTC (rev 7891) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-26 20:35:12 UTC (rev 7892) @@ -20,6 +20,28 @@ window.location.hash = tab; } +function moveTab(next) { + // get current position + var current = $('#tab-selector .active'); + if(next) { + if(current.next().length) { + current.next().click(); + } else { + $('#tab-selector a:first').click(); + } + } else { + if(current.prev().length) { + current.prev().click(); + } else { + $('#tab-selector a:last').click(); + } + } +} + +// these should be , and . but Hotkeys views those keypresses as these characters +$(document).bind('keydown', 'ctrl+¼', function() { moveTab(false); }); +$(document).bind('keydown', 'ctrl+¾', function() { moveTab(true); }); + /* Namespaces */ function getNamespaces() { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-26 19:59:53
|
Revision: 7891 http://sourceforge.net/p/bigdata/code/7891 Author: tobycraig Date: 2014-02-26 19:59:50 +0000 (Wed, 26 Feb 2014) Log Message: ----------- Added namespace selection/deletion support. Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-25 17:33:49 UTC (rev 7890) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-26 19:59:50 UTC (rev 7891) @@ -12,7 +12,7 @@ <div id="top"> <img src="logo.png" id="logo"> <p><label for="search-text">Search:</label> <input type="text" id="search-text"></p> - <p>Current namespace: <span id="current-namespace">kb</span></p> + <p>Current namespace: <span id="current-namespace"></span></p> </div> <div id="tab-selector"> @@ -135,7 +135,15 @@ <div class="tab" id="status-tab">status </div> - <div class="tab" id="namespaces-tab">namespaces + <div class="tab" id="namespaces-tab"> + + <div class="box"> + <ul id="namespaces-list"> + + </ul> + <button id="namespaces-refresh">Refresh</button> + </div> + </div> </div> Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-25 17:33:49 UTC (rev 7890) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-26 19:59:50 UTC (rev 7891) @@ -24,17 +24,56 @@ function getNamespaces() { $.get('/namespace', function(data) { - var namespaces = data.getElementsByTagName('Namespace'); + $('#namespaces-list').empty(); + var rdf = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'; + var namespaces = namespaces = data.getElementsByTagNameNS(rdf, 'Description') for(var i=0; i<namespaces.length; i++) { - var namespace = namespaces[i].textContent; + var title = namespaces[i].getElementsByTagName('title')[0].textContent; + var url = namespaces[i].getElementsByTagName('sparqlEndpoint')[0].getAttributeNS(rdf, 'resource'); + $('#namespaces-list').append('<li data-name="' + title + '" data-url="' + url + '">' + title + ' - <a href="#" class="use-namespace">Use</a> - <a href="#" class="delete-namespace">Delete</a></li>'); } + $('.use-namespace').click(function(e) { + e.preventDefault(); + useNamespace($(this).parent().data('name'), $(this).parent().data('url')); + }); + $('.delete-namespace').click(function(e) { + e.preventDefault(); + deleteNamespace($(this).parent().data('name')); + }); }); } +function useNamespace(name, url) { + $('#current-namespace').html(name); + $('.namespace').val(name); + NAMESPACE = name; + NAMESPACE_URL = url; +} + +function deleteNamespace(namespace) { + if(confirm('Are you sure you want to delete the namespace ' + namespace + '?')) { + // FIXME: should we check if the default namespace is the one being deleted? + if(namespace == NAMESPACE) { + // FIXME: what is the desired behaviour when deleting the current namespace? + } + var url = '/namespace/' + namespace; + var settings = { + type: 'DELETE', + success: getNamespaces, + error: function() { alert('Could not delete namespace ' + namespace); } + }; + $.ajax(url, settings); + } +} + +var NAMESPACE, NAMESPACE_URL; // default namespace -namespace = 'kb'; -$('.namespace').val(namespace); +useNamespace('kb', '/namespace/kb/sparql'); +getNamespaces(); +$('#namespaces-refresh').click(getNamespaces); + + /* Namespace shortcuts */ $('.namespace-shortcuts li').click(function() { @@ -192,16 +231,17 @@ $('#load-type').change(handleTypeChange); $('#load-load').click(function() { - // determine action based on type var settings = { type: 'POST', data: $(holder).val(), success: updateResponseXML, error: updateResponseError } + + // determine action based on type switch($('#load-type').val()) { case 'sparql': - settings.data = 'update=' + encodeURI(settings.data); + settings.data = 'update=' + encodeURIComponent(settings.data); settings.success = updateResponseHTML; break; case 'rdf': @@ -213,11 +253,11 @@ settings.contentType = rdf_content_types[type]; break; case 'path': - settings.data = 'uri=file://' + encodeURI(settings.data); + settings.data = 'uri=file://' + encodeURIComponent(settings.data); break; } - $.ajax('/sparql', settings); + $.ajax(NAMESPACE_URL, settings); }); $('#load-clear').click(function() { @@ -262,7 +302,7 @@ settings.accepts = {'json': 'application/sparql-results+json'}; } - $.ajax('/sparql', settings); + $.ajax(NAMESPACE_URL, settings); return false; }); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mar...@us...> - 2014-02-25 17:33:58
|
Revision: 7890 http://sourceforge.net/p/bigdata/code/7890 Author: martyncutcher Date: 2014-02-25 17:33:49 +0000 (Tue, 25 Feb 2014) Log Message: ----------- Fix to Journal bloat ticket #817 that did not recycle all old BTree nodes Modified Paths: -------------- branches/BIGDATA_RELEASE_1_2_4/bigdata/src/java/com/bigdata/btree/Node.java Modified: branches/BIGDATA_RELEASE_1_2_4/bigdata/src/java/com/bigdata/btree/Node.java =================================================================== --- branches/BIGDATA_RELEASE_1_2_4/bigdata/src/java/com/bigdata/btree/Node.java 2014-02-25 17:31:34 UTC (rev 7889) +++ branches/BIGDATA_RELEASE_1_2_4/bigdata/src/java/com/bigdata/btree/Node.java 2014-02-25 17:33:49 UTC (rev 7890) @@ -2304,6 +2304,11 @@ // Tunnel through to the mutable keys object. final MutableKeyBuffer keys = (MutableKeyBuffer) this.getKeys(); final MutableNodeData data = (MutableNodeData) this.data; + + // check for persistent storage to be recycled for the removed child + if (data.childAddr[index] != 0) { + btree.recycle(data.childAddr[index]); + } if (lengthKeyCopy > 0) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mar...@us...> - 2014-02-25 17:31:39
|
Revision: 7889 http://sourceforge.net/p/bigdata/code/7889 Author: martyncutcher Date: 2014-02-25 17:31:34 +0000 (Tue, 25 Feb 2014) Log Message: ----------- Create maintenance branch Added Paths: ----------- branches/BIGDATA_RELEASE_1_2_4/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mar...@us...> - 2014-02-25 16:26:19
|
Revision: 7888 http://sourceforge.net/p/bigdata/code/7888 Author: martyncutcher Date: 2014-02-25 16:26:15 +0000 (Tue, 25 Feb 2014) Log Message: ----------- Fix to Journal bloat ticket #817 that did not recycle all old BTree nodes Modified Paths: -------------- branches/BIGDATA_RELEASE_1_3_0/bigdata/src/java/com/bigdata/btree/Node.java Modified: branches/BIGDATA_RELEASE_1_3_0/bigdata/src/java/com/bigdata/btree/Node.java =================================================================== --- branches/BIGDATA_RELEASE_1_3_0/bigdata/src/java/com/bigdata/btree/Node.java 2014-02-25 16:25:40 UTC (rev 7887) +++ branches/BIGDATA_RELEASE_1_3_0/bigdata/src/java/com/bigdata/btree/Node.java 2014-02-25 16:26:15 UTC (rev 7888) @@ -2304,6 +2304,11 @@ // Tunnel through to the mutable keys object. final MutableKeyBuffer keys = (MutableKeyBuffer) this.getKeys(); final MutableNodeData data = (MutableNodeData) this.data; + + // check for persistent storage to be recycled for the removed child + if (data.childAddr[index] != 0) { + btree.recycle(data.childAddr[index]); + } if (lengthKeyCopy > 0) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mar...@us...> - 2014-02-25 16:25:43
|
Revision: 7887 http://sourceforge.net/p/bigdata/code/7887 Author: martyncutcher Date: 2014-02-25 16:25:40 +0000 (Tue, 25 Feb 2014) Log Message: ----------- Fix to Journal bloat ticket #817 that did not recycle all old BTree nodes Modified Paths: -------------- branches/BIGDATA_RELEASE_1_2_0/bigdata/src/java/com/bigdata/btree/Node.java Modified: branches/BIGDATA_RELEASE_1_2_0/bigdata/src/java/com/bigdata/btree/Node.java =================================================================== --- branches/BIGDATA_RELEASE_1_2_0/bigdata/src/java/com/bigdata/btree/Node.java 2014-02-24 23:06:39 UTC (rev 7886) +++ branches/BIGDATA_RELEASE_1_2_0/bigdata/src/java/com/bigdata/btree/Node.java 2014-02-25 16:25:40 UTC (rev 7887) @@ -2305,6 +2305,11 @@ final MutableKeyBuffer keys = (MutableKeyBuffer) this.getKeys(); final MutableNodeData data = (MutableNodeData) this.data; + // check for persistent storage to be recycled for the removed child + if (data.childAddr[index] != 0) { + btree.recycle(data.childAddr[index]); + } + if (lengthKeyCopy > 0) { System.arraycopy(keys.keys, index + 1, keys.keys, index, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-24 23:06:45
|
Revision: 7886 http://sourceforge.net/p/bigdata/code/7886 Author: tobycraig Date: 2014-02-24 23:06:39 +0000 (Mon, 24 Feb 2014) Log Message: ----------- Fixed query explanation and made it detailed. Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/style.css branches/RDR/bigdata-war/src/html/workbench.js Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-24 22:37:29 UTC (rev 7885) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-24 23:06:39 UTC (rev 7886) @@ -104,7 +104,7 @@ <a href="#" id="advanced-features-toggle">Advanced features</a> <div id="advanced-features"> - <input type="checkbox" name="explain" value="true" id="query-explain"> <label for="query-explain">Explain</label> + <input type="checkbox" name="explain" value="details" id="query-explain"> <label for="query-explain">Explain</label> <input type="checkbox" name="analytic" value="true" id="query-analytic"> <label for="query-analytic">Analytic</label> <input type="checkbox" name="RTO" value="true" id="query-rto"> <label for="query-rto">Runtime Query Optimizer</label> </div> Modified: branches/RDR/bigdata-war/src/html/style.css =================================================================== --- branches/RDR/bigdata-war/src/html/style.css 2014-02-24 22:37:29 UTC (rev 7885) +++ branches/RDR/bigdata-war/src/html/style.css 2014-02-24 23:06:39 UTC (rev 7886) @@ -106,6 +106,7 @@ border: 1px solid; border-bottom: none; min-height: 100px; + overflow-x: scroll; } .box:last-of-type { @@ -171,3 +172,7 @@ padding: 2px; } +pre { + font-family: monospace; +} + Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-24 22:37:29 UTC (rev 7885) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-24 23:06:39 UTC (rev 7886) @@ -250,11 +250,18 @@ var settings = { type: 'POST', data: $(this).serialize(), - dataType: 'json', - accepts: {'json': 'application/sparql-results+json'}, success: showQueryResults, error: queryResultsError } + + // queries return JSON, explanations return HTML + if($('#query-explain').is(':checked')) { + settings.dataType = 'html'; + } else { + settings.dataType = 'json'; + settings.accepts = {'json': 'application/sparql-results+json'}; + } + $.ajax('/sparql', settings); return false; }); @@ -264,25 +271,28 @@ }); function showQueryResults(data) { - $('#query-response').html(''); - var table = $('<table>').appendTo($('#query-response')); - var thead = $('<thead>').appendTo(table); - var vars = []; - var tr = $('<tr>'); - for(var i=0; i<data.head.vars.length; i++) { - tr.append('<td>' + data.head.vars[i] + '</td>'); - vars.push(data.head.vars[i]); - } - thead.append(tr); - table.append(thead); - for(var i=0; i<data.results.bindings.length; i++) { + if(this.dataType == 'html') { + $('#query-response').html(data); + } else { + $('#query-response').html(''); + var table = $('<table>').appendTo($('#query-response')); + var thead = $('<thead>').appendTo(table); + var vars = []; var tr = $('<tr>'); - for(var j=0; j<vars.length; j++) { - tr.append('<td>' + data.results.bindings[i][vars[j]].value + '</td>'); + for(var i=0; i<data.head.vars.length; i++) { + tr.append('<td>' + data.head.vars[i] + '</td>'); + vars.push(data.head.vars[i]); } - table.append(tr); + thead.append(tr); + table.append(thead); + for(var i=0; i<data.results.bindings.length; i++) { + var tr = $('<tr>'); + for(var j=0; j<vars.length; j++) { + tr.append('<td>' + data.results.bindings[i][vars[j]].value + '</td>'); + } + table.append(tr); + } } - } function queryResultsError(jqXHR, textStatus, errorThrown) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-24 22:37:34
|
Revision: 7885 http://sourceforge.net/p/bigdata/code/7885 Author: tobycraig Date: 2014-02-24 22:37:29 +0000 (Mon, 24 Feb 2014) Log Message: ----------- Fixed reference to logo URL. Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-24 21:03:13 UTC (rev 7884) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-24 22:37:29 UTC (rev 7885) @@ -10,7 +10,7 @@ <div id="container"> <div id="top"> - <img src="images/logo.png" id="logo"> + <img src="logo.png" id="logo"> <p><label for="search-text">Search:</label> <input type="text" id="search-text"></p> <p>Current namespace: <span id="current-namespace">kb</span></p> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-24 21:03:16
|
Revision: 7884 http://sourceforge.net/p/bigdata/code/7884 Author: tobycraig Date: 2014-02-24 21:03:13 +0000 (Mon, 24 Feb 2014) Log Message: ----------- Moved logo to html directory. Added Paths: ----------- branches/RDR/bigdata-war/src/html/logo.png Removed Paths: ------------- branches/RDR/bigdata-war/src/images/logo.png Copied: branches/RDR/bigdata-war/src/html/logo.png (from rev 7883, branches/RDR/bigdata-war/src/images/logo.png) =================================================================== (Binary files differ) Deleted: branches/RDR/bigdata-war/src/images/logo.png =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tob...@us...> - 2014-02-24 19:35:14
|
Revision: 7883 http://sourceforge.net/p/bigdata/code/7883 Author: tobycraig Date: 2014-02-24 19:35:07 +0000 (Mon, 24 Feb 2014) Log Message: ----------- Load/query development on workbench Modified Paths: -------------- branches/RDR/bigdata-war/src/html/new.html branches/RDR/bigdata-war/src/html/style.css branches/RDR/bigdata-war/src/html/workbench.js Added Paths: ----------- branches/RDR/bigdata-war/src/images/logo.png Modified: branches/RDR/bigdata-war/src/html/new.html =================================================================== --- branches/RDR/bigdata-war/src/html/new.html 2014-02-24 13:47:27 UTC (rev 7882) +++ branches/RDR/bigdata-war/src/html/new.html 2014-02-24 19:35:07 UTC (rev 7883) @@ -7,58 +7,137 @@ </head> <body> - <div id="tab-selector"> - <a data-target="load" class="active">Load</a> - <a data-target="query">Query</a> - <a data-target="explore">Explore</a> - <a data-target="status">Status</a> - <a data-target="namespaces">Namespaces</a> - </div> + <div id="container"> - <div id="current-namespace"> - Current namespace: <span>kb</span> - </div> + <div id="top"> + <img src="images/logo.png" id="logo"> + <p><label for="search-text">Search:</label> <input type="text" id="search-text"></p> + <p>Current namespace: <span id="current-namespace">kb</span></p> + </div> - <div class="tab" id="load"> - <input id="load-file" type="file" name="file"> - <input id="load-hidden" type="hidden" name="large-file-contents"> - <p id="large-file-message" style="display: none;">Your file is too large to display here, but will be uploaded as normal.</p> - <br> - <textarea id="load-box" name="textarea" rows="10" cols="80"></textarea> - <br> - Type: <select id="load-type"> - <option value="sparql" selected="selected">SPARQL</option> - <option value="rdf">RDF</option> - <option value="path">File path</option> - </select> - <select id="rdf-type" style="display: none;"> - <option value="">Select RDF format</option> - <option value="n-quads">N-Quads</option> - <option value="n-triples">N-Triples</option> - <option value="n3">Notation3</option> - <option value="rdf/xml">RDF/XML</option> - <option value="trig">TriG</option> - <option value="trix">TriX</option> - <option value="turtle">Turtle</option> - </select> - <br> - <button>Load</button> - <hr> - <p>Response:</p> - <pre id="response"></pre> + <div id="tab-selector"> + <a data-target="load" class="active">Load</a> + <a data-target="query">Query</a> + <a data-target="explore">Explore</a> + <a data-target="status">Status</a> + <a data-target="namespaces">Namespaces</a> + </div> - </div> + <div class="tab" id="load-tab"> - <div class="tab" id="query">query - </div> + <div class="box"> - <div class="tab" id="explore">explore - </div> + <div class="namespace-shortcuts"> + <ul> + <li data-ns="prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>">RDF</li> + <li data-ns="prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>">RDFS</li> + <li data-ns="prefix owl: <http://www.w3.org/2002/07/owl#>">OWL</li> + <li data-ns="prefix bd: <http://www.bigdata.com/rdf#> ">BD</li> + <li data-ns="prefix bds: <http://www.bigdata.com/rdf/search#> ">BDS</li> + <li data-ns="prefix foaf: <http://xmlns.com/foaf/0.1/>">FOAF</li> + <li data-ns="prefix hint: <http://www.bigdata.com/queryHints#>">HINT</li> + <li data-ns="prefix dc: <http://purl.org/dc/elements/1.1/>">DC</li> + <li data-ns="prefix xsd: <http://www.w3.org/2001/XMLSchema#>">XSD</li> + </ul> + </div> - <div class="tab" id="status">status - </div> + <input id="load-hidden" type="hidden" name="large-file-contents"> + <p id="large-file-message">Your file is too large to display here, but will be uploaded as normal.</p> + <textarea id="load-box" placeholder="(Type in or drag a file containing RDF data, a SPARQL update or a file path or URL)"></textarea> + <p> + <label for="load-type">Type:</label> + <select id="load-type"> + <option value="sparql" selected="selected">SPARQL</option> + <option value="rdf">RDF</option> + <option value="path">File path</option> + </select> + <span id="rdf-type-container"> + <label for="rdf-type">Format:</label> + <select id="rdf-type"> + <option value="">Select RDF format</option> + <option value="n-quads">N-Quads</option> + <option value="n-triples">N-Triples</option> + <option value="n3">Notation3</option> + <option value="rdf/xml">RDF/XML</option> + <option value="trig">TriG</option> + <option value="trix">TriX</option> + <option value="turtle">Turtle</option> + </select> + </span> + </p> + <hr class="shadow"> + <button id="load-load">Load</button> + </div> - <div class="tab" id="namespaces">namespaces + <div class="box"> + <pre id="load-response"></pre> + </div> + + <div class="bottom"> + <button id="load-clear">Clear output</button> + </div> + + </div> + + <div class="tab" id="query-tab"> + <div class="box"> + + <div class="namespace-shortcuts"> + <ul> + <li data-ns="prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>">RDF</li> + <li data-ns="prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>">RDFS</li> + <li data-ns="prefix owl: <http://www.w3.org/2002/07/owl#>">OWL</li> + <li data-ns="prefix bd: <http://www.bigdata.com/rdf#> ">BD</li> + <li data-ns="prefix bds: <http://www.bigdata.com/rdf/search#> ">BDS</li> + <li data-ns="prefix foaf: <http://xmlns.com/foaf/0.1/>">FOAF</li> + <li data-ns="prefix hint: <http://www.bigdata.com/queryHints#>">HINT</li> + <li data-ns="prefix dc: <http://purl.org/dc/elements/1.1/>">DC</li> + <li data-ns="prefix xsd: <http://www.w3.org/2001/XMLSchema#>">XSD</li> + </ul> + </div> + + <form id="query-form"> + <input type="hidden" class="namespace" name="namespace"> + + <textarea id="query-box" name="query" placeholder="(Input a SPARQL query)"></textarea> + + <a href="#" id="advanced-features-toggle">Advanced features</a> + + <div id="advanced-features"> + <input type="checkbox" name="explain" value="true" id="query-explain"> <label for="query-explain">Explain</label> + <input type="checkbox" name="analytic" value="true" id="query-analytic"> <label for="query-analytic">Analytic</label> + <input type="checkbox" name="RTO" value="true" id="query-rto"> <label for="query-rto">Runtime Query Optimizer</label> + </div> + + <hr class="shadow"> + + <div id="load-buttons"> + <input type="submit" value="Execute"> + <input type="reset" value="Clear"> + </div> + </form> + + </div> + + <div id="query-response" class="box"> + </div> + + <div class="bottom"> + <button id="query-export">Export</button> + <button id="query-response-clear">Clear</button> + </div> + + </div> + + <div class="tab" id="explore-tab">explore + </div> + + <div class="tab" id="status-tab">status + </div> + + <div class="tab" id="namespaces-tab">namespaces + </div> + </div> <!--[if IE]><script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]--> Modified: branches/RDR/bigdata-war/src/html/style.css =================================================================== --- branches/RDR/bigdata-war/src/html/style.css 2014-02-24 13:47:27 UTC (rev 7882) +++ branches/RDR/bigdata-war/src/html/style.css 2014-02-24 19:35:07 UTC (rev 7883) @@ -54,6 +54,29 @@ margin: 10px; } +#container { + /*max-width: 600px;*/ +} + +#top { + text-align: right; + margin-bottom: 20px; +} + +#logo { + float: left; +} + +.shadow { + -webkit-box-shadow: 0px 3px 5px 0px rgba(50, 50, 50, 0.75); + -moz-box-shadow: 0px 3px 5px 0px rgba(50, 50, 50, 0.75); + box-shadow: 0px 3px 5px 0px rgba(50, 50, 50, 0.75); +} + +#tab-selector { + clear: both; +} + #tab-selector a { padding: 10px; border: 1px solid; @@ -61,24 +84,90 @@ border-bottom: none; display: inline-block; float: left; + cursor: pointer; } #tab-selector a:last-of-type { border-right: 1px solid; } -#current-namespace { - float: right; -} - .active { - text-shadow: 1px 0px 0px black; - /*font-weight: bold;*/ + background: lightgrey; } .tab { display: none; clear: both; +} + +.box { border: 1px solid; padding: 10px; + border: 1px solid; + border-bottom: none; + min-height: 100px; } + +.box:last-of-type { + border-bottom: 1px solid; +} + +.namespace-shortcuts { + text-align: right; +} + +.namespace-shortcuts li { + display: inline-block; + border: 1px solid; + padding: 5px; + margin-left: 5px; + cursor: pointer; +} + +#large-file-message { + display: none; + margin: 5px 0; +} + +textarea { + margin: 5px 0; + width: 100%; + height: 200px; + box-sizing: border-box; +} + +#rdf-type-container { + display: none; +} + +hr { + background: #929292; + border: none; + height: 5px; + width: 50%; + margin: 20px auto; +} + +#load-load { + margin: 0 auto; + display: block; +} + +#load-buttons { + text-align: center; +} + +.bottom { + border-top: 1px solid; + text-align: right; +} + +#advanced-features { + display: none; +} + +td { + border: 1px solid; + padding: 2px; +} + Modified: branches/RDR/bigdata-war/src/html/workbench.js =================================================================== --- branches/RDR/bigdata-war/src/html/workbench.js 2014-02-24 13:47:27 UTC (rev 7882) +++ branches/RDR/bigdata-war/src/html/workbench.js 2014-02-24 19:35:07 UTC (rev 7883) @@ -1,24 +1,53 @@ $(function() { -$('#tab-selector a').click(function() { - $('.tab').hide(); - $('#' + $(this).data('target')).show(); - $('#tab-selector a').removeClass(); - $(this).addClass('active'); +/* Tab selection */ + +$('#tab-selector a').click(function(e) { + showTab($(this).data('target')); }); -$('#tab-selector a:first').click(); +if(window.location.hash) { + showTab(window.location.hash.substr(1)); +} else { + $('#tab-selector a:first').click(); +} -// TODO: set namespace initially +function showTab(tab) { + $('.tab').hide(); + $('#' + tab + '-tab').show(); + $('#tab-selector a').removeClass(); + $('a[data-target=' + tab + ']').addClass('active'); + window.location.hash = tab; +} /* Namespaces */ function getNamespaces() { $.get('/namespace', function(data) { - + var namespaces = data.getElementsByTagName('Namespace'); + for(var i=0; i<namespaces.length; i++) { + var namespace = namespaces[i].textContent; + } }); } +// default namespace +namespace = 'kb'; +$('.namespace').val(namespace); + +/* Namespace shortcuts */ + +$('.namespace-shortcuts li').click(function() { + var textarea = $(this).parents('.tab').find('textarea'); + var current = textarea.val(); + var ns = $(this).data('ns'); + + if(current.indexOf(ns) == -1) { + textarea.val(ns + '\n' + current); + } +}); + + /* Load */ function handleDragOver(e) { @@ -117,16 +146,16 @@ } function handleTypeChange(e) { - $('#rdf-type').toggle($(this).val() == 'rdf'); + $('#rdf-type-container').toggle($(this).val() == 'rdf'); } function setType(type, format) { $('#load-type').val(type); if(type == 'rdf') { - $('#rdf-type').show(); + $('#rdf-type-container').show(); $('#rdf-type').val(format); } else { - $('#rdf-type').hide(); + $('#rdf-type-container').hide(); } } @@ -162,7 +191,7 @@ $('#load-box').on('paste', handlePaste); $('#load-type').change(handleTypeChange); -$('#load button').click(function() { +$('#load-load').click(function() { // determine action based on type var settings = { type: 'POST', @@ -191,21 +220,76 @@ $.ajax('/sparql', settings); }); +$('#load-clear').click(function() { + $('#load-response').text(''); +}); + +$('#advanced-features-toggle').click(function() { + $('#advanced-features').toggle(); + return false; +}); + function updateResponseHTML(data) { - $('#response').html(data); + $('#load-response').html(data); } function updateResponseXML(data) { var modified = data.childNodes[0].attributes['modified'].value; var milliseconds = data.childNodes[0].attributes['milliseconds'].value; - $('#response').text('Modified: ' + modified + '\nMilliseconds: ' + milliseconds); + $('#load-response').text('Modified: ' + modified + '\nMilliseconds: ' + milliseconds); } function updateResponseError(jqXHR, textStatus, errorThrown) { - $('#response').text('Error! ' + textStatus + ' ' + errorThrown); + $('#load-response').text('Error! ' + textStatus + ' ' + errorThrown); } +/* Query */ + +$('#query-form').submit(function() { + var settings = { + type: 'POST', + data: $(this).serialize(), + dataType: 'json', + accepts: {'json': 'application/sparql-results+json'}, + success: showQueryResults, + error: queryResultsError + } + $.ajax('/sparql', settings); + return false; +}); + +$('#query-response-clear').click(function() { + $('#query-response').html(''); +}); + +function showQueryResults(data) { + $('#query-response').html(''); + var table = $('<table>').appendTo($('#query-response')); + var thead = $('<thead>').appendTo(table); + var vars = []; + var tr = $('<tr>'); + for(var i=0; i<data.head.vars.length; i++) { + tr.append('<td>' + data.head.vars[i] + '</td>'); + vars.push(data.head.vars[i]); + } + thead.append(tr); + table.append(thead); + for(var i=0; i<data.results.bindings.length; i++) { + var tr = $('<tr>'); + for(var j=0; j<vars.length; j++) { + tr.append('<td>' + data.results.bindings[i][vars[j]].value + '</td>'); + } + table.append(tr); + } + +} + +function queryResultsError(jqXHR, textStatus, errorThrown) { + $('#query-response').text('Error! ' + textStatus + ' ' + errorThrown); +} + + /* Navigator */ $('#navigator').submit(function() { Added: branches/RDR/bigdata-war/src/images/logo.png =================================================================== (Binary files differ) Index: branches/RDR/bigdata-war/src/images/logo.png =================================================================== --- branches/RDR/bigdata-war/src/images/logo.png 2014-02-24 13:47:27 UTC (rev 7882) +++ branches/RDR/bigdata-war/src/images/logo.png 2014-02-24 19:35:07 UTC (rev 7883) Property changes on: branches/RDR/bigdata-war/src/images/logo.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |