app.get "/",
makeResponder(null, {isLocal: nopts.is_local})
app.get "/dump/typeof.Proxy", (req, res) ->
res.send(typeof Proxy)
app.get "/dump/process.version", (req, res) ->
res.send(process.version)
app.get "/now", (req, res) ->
res.send(noodb.now_baseXX())
app.get "/dump/headers", (req, res) ->
res.setHeader('content-type', 'text/plain')
res.write(JSON.stringify(req.headers,null,4))
res.end()
app.set("trust proxy", true)
app.get "/dump/", (req, res) ->
if req.path.endsWith('dump')
res.redirect('/dump/')
return
res.send("""
These are various little windows into the back-end which should not stay available after alpha.
<dl>
<dt><a href="/__/">/__/</a>
<dd>experience Nooron visualizations of data, ie the nooron app experience
<dt><a href="by/s">/dump/by/s</a>
<dd>subject
<dt><a href="by/p">/dump/by/p</a>
<dd>predicate
<dt><a href="by/o">/dump/by/o</a>
<dd>object
<dt><a href="by/g">/dump/by/g</a>
<dd>graph
<dt><a href="by/i">/dump/by/i</a>
<dd>idx
<dt><a href="expand/">/dump/expand/:curie</a>
<dd>expands <i>:curie</i> eg. <a href="/dump/expand/rdf:type">/dump/noicetrie/rdf:type</a>
<dt><a href="headers">/dump/headers</a>
<dd>req.headers
<dt><a href="ips">/dump/ips</a>
<dd>req.ips
<dt><a href="noicetrie">/dump/noicetrie</a>
<dd>dump the whole noodb.prefixdb.prefixes tree
<dt><a href="noicetrie/nrn">/dump/noicetrie/:prfx</a>
<dd>expands <i>:prfx</i> eg. <a href="/dump/noicetrie/rdf">/dump/noicetrie/rdf</a>
<dt><a href="typeof.Proxy">/dump/typeof.Proxy</a>
<dd>is ES6 Proxy supported on the server?
<dt><a href="process.version">/dump/process.version</a>
<dd>process.version (ie the version of nodejs aka node --version)
<dt><a href="/now">/now</a>
<dd>the current time (to the second) in Nooron's time format
<dt><a href="/dev/fractalpanel_sandbox.html">/dev/fractalpanel_sandbox.html</a></dt>
<dd>a place to play with FractalPanel</dd>
</dl>
""")
app.get "/dump/details/:abbrev?", (req, res) ->
res.setHeader('content-type', 'text/html')
subj = req.params.abbrev
res.write("WOOT:#{subj}")
for pred in noodb.query({s: subj})
res.write(pred.toString())
res.end()
app.get "/dump/ips", (req, res) ->
res.send(req.ips.length and req.ips[0] or req.ip)
app.get "/dump/noicetrie", (req, res) ->
res.setHeader('content-type', 'text/plain')
res.send(noodb.prefixdb.prefixes.tree())
app.get "/dump/noicetrie/:prfx", (req, res) ->
res.setHeader('content-type', 'text/plain')
res.send(noodb.prefixdb.prefixes.getValue(req.params.prfx))
app.get "/dump/by/:term?", (req, res) ->
res.setHeader('content-type', 'text/plain')
if req.params.term
buffer = "by.#{req.params.term}\n"
buffer += noodb.by[req.params.term].dump()
res.send(buffer)
else
res.send('spogi'.split('').join("\n"))
app.get "/dump/expand/:curie?", (req, res) ->
if req.params.curie