Skip to content
Snippets Groups Projects
Commit f75e2664 authored by Øyvind Gjesdal's avatar Øyvind Gjesdal
Browse files

fix to handle bookmarked pages which has been deleted from database (.html to...

fix to handle bookmarked pages which has been deleted from database (.html to empty page when url exists)
parent 15ba1a38
No related branches found
No related tags found
No related merge requests found
......@@ -17,10 +17,15 @@ class UriModule extends abstractModule{
}
require_once('classes/MetaDb.php');
$metaDb = new MetaDb($conf['metadata']['db']['location']);
#LocalURI as is for looking up existing metadata. Fix fails if first paramater is changed to stripped localUri.
$pair = Queries::getMetadata($localUri, $acceptContentType, $metaDb);
if($pair == NULL){ // Original URI is not in metadata
if(Queries::uriExist($uri, $endpoints['local'])){
$page = Queries::createPage($uri, $localUri, $acceptContentType, $metaDb);
#Stripping html to look up and write correct url in database if not exists
#Fix to handle pages that have not been loaded after cleaning out database
$localUri_stripped = eregi_replace("^(.+)\.html", "\\1", $localUri);
$uri_stripped = eregi_replace("^(.+)\.html", "\\1", $uri);
if($pair == NULL){ // Original URI is not in metadata
if(Queries::uriExist($uri_stripped, $endpoints['local'])){
$page = Queries::createPage($uri_stripped, $localUri_stripped, $acceptContentType, $metaDb);
if($page == NULL){
HTTPStatus::send500("Can't write sqlite database.");
}
......
var TimeKnots={draw:function(e,t,n){var r={width:600,height:200,radius:10,lineWidth:4,color:"#999",background:"#FFF",dateFormat:"%Y/%m/%d %H:%M:%S",horizontalLayout:true,showLabels:false,labelFormat:"%Y/%m/%d %H:%M:%S",addNow:false,seriesColor:d3.scale.category20()};if(n!=undefined){for(var i in n){r[i]=n[i]}}if(r.addNow!=false){t.push({date:new Date,name:r.addNowLabel||"Today"})}var s=d3.select(e).append("div").style("opacity",0).style("position","absolute").style("font-family","Helvetica Neue").style("font-weight","300").style("background","rgba(0,0,0,0.5)").style("color","white").style("padding","5px 10px 5px 10px").style("-moz-border-radius","8px 8px").style("border-radius","8px 8px");var o=d3.select(e).append("svg").attr("width",r.width).attr("height",r.height);var u=t.map(function(e){return Date.parse(e.date)});var a=d3.max(u);var f=d3.min(u);var l=(d3.max(t.map(function(e){return e.radius}))||r.radius)*1.5+r.lineWidth;var c=r.horizontalLayout?(r.width-2*l)/(a-f):(r.height-2*l)/(a-f);var h=[];if(a==f){c=0;if(r.horizontalLayout){l=r.width/2}else{l=r.height/2}}o.append("line").attr("class","timeline-line").attr("x1",function(e){if(r.horizontalLayout){return l}return Math.floor(r.width/2)}).attr("x2",function(e){if(r.horizontalLayout){return r.width-l}return Math.floor(r.width/2)}).attr("y1",function(e){if(r.horizontalLayout){return Math.floor(r.height/2)}return l}).attr("y2",function(e){if(r.horizontalLayout){return Math.floor(r.height/2)}return r.height-l}).style("stroke",r.color).style("stroke-width",r.lineWidth);o.selectAll("circle").data(t).enter().append("circle").attr("class","timeline-event").attr("r",function(e){if(e.radius!=undefined){return e.radius}return r.radius}).style("stroke",function(e){if(e.color!=undefined){return e.color}if(e.series!=undefined){if(h.indexOf(e.series)<0){h.push(e.series)}console.log(e.series,h,h.indexOf(e.series));return r.seriesColor(h.indexOf(e.series))}return r.color}).style("stroke-width",function(e){if(e.lineWidth!=undefined){return e.lineWidth}return r.lineWidth}).style("fill",function(e){if(e.background!=undefined){return e.background}return r.background}).attr("cy",function(e){if(r.horizontalLayout){return Math.floor(r.height/2)}return Math.floor(c*((new Date(e.date)).getTime()-f)+l)}).attr("cx",function(e){if(r.horizontalLayout){var t=Math.floor(c*((new Date(e.date)).getTime()-f)+l);return t}return Math.floor(r.width/2)}).on("mouseover",function(e){var t=d3.time.format(r.dateFormat);var n=t(new Date(e.date));var i=n!=""?e.name+" <small>("+n+")</small>":e.name;d3.select(this).style("fill",function(e){if(e.color!=undefined){return e.color}return r.color}).transition().duration(100).attr("r",function(e){if(e.radius!=undefined){return Math.floor(e.radius*1.5)}return Math.floor(r.radius*1.5)});s.html("");if(e.img!=undefined){s.append("img").style("float","left").style("margin-right","4px").attr("src",e.img).attr("width","64px")}s.append("div").style("float","left").html(i);s.transition().duration(100).style("opacity",.9)}).on("mouseout",function(){d3.select(this).style("fill",function(e){if(e.background!=undefined){return e.background}return r.background}).transition().duration(100).attr("r",function(e){if(e.radius!=undefined){return e.radius}return r.radius});s.transition().duration(100).style("opacity",0)});if(r.showLabels!=false){var p=d3.time.format(r.labelFormat);var d=p(new Date(f));var v=p(new Date(a));o.append("text").text(d).style("font-size","70%").attr("x",function(e){if(r.horizontalLayout){return d3.max([0,l-this.getBBox().width/2])}return Math.floor(this.getBBox().width/2)}).attr("y",function(e){if(r.horizontalLayout){return Math.floor(r.height/2+(l+this.getBBox().height))}return l+this.getBBox().height/2});o.append("text").text(v).style("font-size","70%").attr("x",function(e){if(r.horizontalLayout){return r.width-d3.max([this.getBBox().width,l+this.getBBox().width/2])}return Math.floor(this.getBBox().width/2)}).attr("y",function(e){if(r.horizontalLayout){return Math.floor(r.height/2+(l+this.getBBox().height))}return r.height-l+this.getBBox().height/2})}o.on("mousemove",function(){tipPixels=parseInt(s.style("height").replace("px",""));return s.style("top",d3.event.pageY-tipPixels-l+"px").style("left",d3.event.pageX+20+"px")}).on("mouseout",function(){return s.style("opacity",0).style("top","0px").style("left","0px")})}}
\ No newline at end of file
var TimeKnots={draw:function(e,f,g){var h={width:600,height:200,radius:10,lineWidth:4,color:"#999",background:"#FFF",dateFormat:"%Y/%m/%d %H:%M:%S",horizontalLayout:true,showLabels:false,labelFormat:"%Y/%m/%d %H:%M:%S"};if(g!=undefined){for(var i in g){h[i]=g[i]}}var j=d3.select(e).append('div').style("opacity",0).style("position","absolute").style("font-family","Helvetica Neue").style("font-weight","300").style("background","rgba(0,0,0,0.5)").style("color","white").style("padding","5px 10px 5px 10px").style("-moz-border-radius","8px 8px").style("border-radius","8px 8px");var k=d3.select(e).append('svg').attr("width",h.width).attr("height",h.height);var l=f.map(function(d){return Date.parse(d.date)});var m=d3.max(l);var n=d3.min(l);var o=(d3.max(f.map(function(d){return d.radius}))||h.radius)*1.5+h.lineWidth;var p=(h.horizontalLayout)?((h.width-2*o)/(m-n)):((h.height-2*o)/(m-n));if(m==n){p=0;if(h.horizontalLayout){o=h.width/2}else{o=h.height/2}}k.append("line").attr("class","timeline-line").attr("x1",function(d){if(h.horizontalLayout){return(o)}return Math.floor(h.width/2)}).attr("x2",function(d){if(h.horizontalLayout){return(h.width-o)}return Math.floor(h.width/2)}).attr("y1",function(d){if(h.horizontalLayout){return Math.floor(h.height/2)}return o}).attr("y2",function(d){if(h.horizontalLayout){return Math.floor(h.height/2)}return h.height-o}).style("stroke",h.color).style("stroke-width",h.lineWidth);k.selectAll("circle").data(f).enter().append("circle").attr("class","timeline-event").attr("r",function(d){if(d.radius!=undefined){return d.radius}return h.radius}).style("stroke",function(d){if(d.color!=undefined){return d.color}return h.color}).style("stroke-width",function(d){if(d.lineWidth!=undefined){return d.lineWidth}return h.lineWidth}).style("fill",function(d){if(d.background!=undefined){return d.background}return h.background}).attr("cy",function(d){if(h.horizontalLayout){return Math.floor(h.height/2)}return Math.floor(p*(new Date(d.date).getTime()-n)+o)}).attr("cx",function(d){if(h.horizontalLayout){var x=Math.floor(p*(new Date(d.date).getTime()-n)+o);return x}return Math.floor(h.width/2)}).on("mouseover",function(d){var a=d3.time.format(h.dateFormat);var b=a(new Date(d.date));var c=(b!="")?(d.name+" <small>("+b+")</small>"):d.name;d3.select(this).style("fill",function(d){if(d.color!=undefined){return d.color}return h.color}).transition().duration(100).attr("r",function(d){if(d.radius!=undefined){return Math.floor(d.radius*1.5)}return Math.floor(h.radius*1.5)});j.html("");if(d.img!=undefined){j.append("img").style("float","left").style("margin-right","4px").attr("src",d.img).attr("width","64px")}j.append("div").style("float","left").html(c);j.transition().duration(100).style("opacity",.9)}).on("mouseout",function(){d3.select(this).style("fill",function(d){if(d.background!=undefined){return d.background}return h.background}).transition().duration(100).attr("r",function(d){if(d.radius!=undefined){return d.radius}return h.radius});j.transition().duration(100).style("opacity",0)});if(h.showLabels!=false){var q=d3.time.format(h.labelFormat);var r=q(new Date(n));var s=q(new Date(m));k.append("text").text(r).style("font-size","70%").attr("x",function(d){if(h.horizontalLayout){return d3.max([0,(o-this.getBBox().width/2)])}return Math.floor(this.getBBox().width/2)}).attr("y",function(d){if(h.horizontalLayout){return Math.floor(h.height/2+(o+this.getBBox().height))}return o+this.getBBox().height/2});k.append("text").text(s).style("font-size","70%").attr("x",function(d){if(h.horizontalLayout){return h.width-d3.max([this.getBBox().width,(o+this.getBBox().width/2)])}return Math.floor(this.getBBox().width/2)}).attr("y",function(d){if(h.horizontalLayout){return Math.floor(h.height/2+(o+this.getBBox().height))}return h.height-o+this.getBBox().height/2})}k.on("mousemove",function(){tipPixels=parseInt(j.style("height").replace("px",""));return j.style("top",(d3.event.pageY-tipPixels-o)+"px").style("left",(d3.event.pageX+20)+"px")}).on("mouseout",function(){return j.style("opacity",0).style("top","0px").style("left","0px")})}}
......@@ -10,9 +10,7 @@ var TimeKnots = {
dateFormat: "%Y/%m/%d %H:%M:%S",
horizontalLayout: true,
showLabels: false,
labelFormat: "%Y/%m/%d %H:%M:%S",
addNow: false,
seriesColor: d3.scale.category20()
labelFormat: "%Y/%m/%d %H:%M:%S"
};
......@@ -22,9 +20,6 @@ var TimeKnots = {
cfg[i] = options[i];
}
}
if(cfg.addNow != false){
events.push({date: new Date(), name: cfg.addNowLabel || "Today"});
}
var tip = d3.select(id)
.append('div')
.style("opacity", 0)
......@@ -44,7 +39,7 @@ var TimeKnots = {
var minValue = d3.min(timestamps);
var margin = (d3.max(events.map(function(d){return d.radius})) || cfg.radius)*1.5+cfg.lineWidth;
var step = (cfg.horizontalLayout)?((cfg.width-2*margin)/(maxValue - minValue)):((cfg.height-2*margin)/(maxValue - minValue));
var series = [];
if(maxValue == minValue){step = 0;if(cfg.horizontalLayout){margin=cfg.width/2}else{margin=cfg.height/2}}
svg.append("line")
.attr("class", "timeline-line")
......@@ -60,19 +55,7 @@ var TimeKnots = {
.append("circle")
.attr("class", "timeline-event")
.attr("r", function(d){if(d.radius != undefined){return d.radius} return cfg.radius})
.style("stroke", function(d){
if(d.color != undefined){
return d.color
}
if(d.series != undefined){
if(series.indexOf(d.series) < 0){
series.push(d.series);
}
console.log(d.series, series, series.indexOf(d.series));
return cfg.seriesColor(series.indexOf(d.series));
}
return cfg.color}
)
.style("stroke", function(d){if(d.color != undefined){return d.color} return cfg.color})
.style("stroke-width", function(d){if(d.lineWidth != undefined){return d.lineWidth} return cfg.lineWidth})
.style("fill", function(d){if(d.background != undefined){return d.background} return cfg.background})
.attr("cy", function(d){
......
//RewriteRule ^$ lodspeakr/index.php [L]
RewriteEngine on
#RewriteRule ^(.+)\.html$ $1
//RewriteRule ^$ index.php [L]
#RewriteRule ^$ marcus/index.php
#RewriteRule sparql.tpl http://marcus.uib.no/sparql/sparql.tpl [L]
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment