]> matita.cs.unibo.it Git - helm.git/blob - helm/on-line/javascript/graphLinks.js
Version 1.2.1beta => 1.2.1
[helm.git] / helm / on-line / javascript / graphLinks.js
1 function mkRDFURI(uri)
2 {
3    var prefix = "helm:rdf:www.cs.unibo.it/helm/rdf/backward//";
4    var re1 = /#xpointer\(1\/(\d+)\/(\d+)\)/;
5    var re2 = /#xpointer\(1\/(\d+)\)/;
6    // Just one of the following replace will do something
7    uri = uri.replace(re1,",$1,$2");
8    uri = uri.replace(re2,",$1");
9
10    return (prefix + uri);
11 }
12
13 function removeXPointer(uri)
14 {
15    //var re = /#xpointer(\.*)/;
16    // CSC: Why the r.e.s below work and the one above does not?
17    var re1 = /#xpointer\(1\/(\d+)\/(\d+)\)/;
18    var re2 = /#xpointer\(1\/(\d+)\)/;
19    var res = uri.replace(re1,"");
20    res = res.replace(re2,"");
21
22    return res;
23 }
24
25
26 // (use_rdf_uri==true) if the stylesheet must be applied to the
27 // metadata; (use_rdf_uri==false) otherwise
28 function mkGraphURL(uri,keys,use_rdf_uri)
29 {
30    var getterURL = unescape(getParam("param.getterURL"));
31    var draw_graphURL = unescape(getParam("param.draw_graphURL"));
32    var url= setParam(location.href,"keys",keys);
33    var rdfuri = mkRDFURI(uri);
34    url = setParam(url,"xmluri", getterURL + 'getxml%3Furi%3D' +
35     (use_rdf_uri ? rdfuri : removeXPointer(uri)));
36    url = setParam(url,"param.CICURI",escape(uri));
37    var uri_set_size = document.uri_set_size.elements[0].value;
38    url = setParam(url,"param.uri_set_size",uri_set_size);
39
40    // The generated URL is sometimes too long for I.E.
41    // So it is now better to remove some unuseful pararams from the inner URL
42    url = dropParam(url,"param.processorURL");
43
44    url = draw_graphURL + 'draw?url=' + escape(url);
45    var url2 = setParam(location.href,"keys","MGL,RT");
46    url2 = setParam(url2,"xmluri",escape(url));
47    url2 = setParam(url2,"param.uri_set_size",uri_set_size);
48    return url2;
49 }
50
51 function mkDepURL(uri)
52 {
53    return mkGraphURL(uri,"MDG",0);
54 }
55
56
57 function mkMetaURL(uri)
58 {
59    return mkGraphURL(uri,"MMG",1);
60 }
61
62 function mkCICURL(uri)
63 {
64    var rawuri = removeXPointer(uri);
65    var getterURL = getParam("param.getterURL");
66    var interfaceURL = unescape(getParam("param.interfaceURL"));
67    var url= setParam(location.href,"keys",getParam("param.keys"));
68    url = setParam(url,"xmluri", getterURL + 'getxml%3Furi%3D' + rawuri);
69    url = setParam(url,"param.CICURI",rawuri);
70    url = interfaceURL + "?url=" + escape(url);
71    return url;
72 }
73
74 function mkMetaTheoryURL(uri)
75 {
76    var rdfuri = mkRDFURI(uri);
77    var getterURL = getParam("param.getterURL");
78    var url = setParam(location.href,"keys","meta_theory," + unescape(getTheoryKeys()));
79    url = setParam(url,"xmluri", getterURL + "getxml%3Furi%3D" + rdfuri);
80    return url;
81 }