Code owners
Assign users and groups as approvers for specific file changes. Learn more.
layout.html 3.28 KiB
{% extends "!layout.html" %}
{% block extrahead %}
<link rel="stylesheet" href="_static/gracedb-nav-style.css" />
<script src="/static/dojo/dojo.js" data-dojo-config="async: true"></script>
<script>
var getKeys = function(obj){
var keys = [];
for(var key in obj){
keys.push(key);
}
return keys;
}
require([
'dojo/_base/declare',
'dojo/query',
'dojo/parser',
'put-selector/put',
'dojo/dom',
'dojo/dom-construct',
'dojo/dom-style',
'dojo/request',
'dojo/NodeList-dom',
'dojo/NodeList-traverse',
'dojo/domReady!',
], function(declare, query, parser, put, dom, domConstruct, domStyle, request) {
parser.parse();
// The url will look like: base + /admin_docs/...
var loc = window.location.href;
var ind = loc.indexOf('admin_docs');
var url = loc.substring(0,ind);
url += 'navbar_only';
var header_div = dom.byId("gracedb-nav-header");
request.get(url).then(
function(text) {
var node = domConstruct.toDom(text);
var nl = query('*', node);
var header_content = "";
// XXX this should not be necessary. Why can't I just query directly for the node with
// id == 'content'?
nl.forEach(function(n) {
if (n.tagName == 'DIV' && n.id == 'content') {
header_content = n.innerHTML;
}
});
header_div.innerHTML = header_content;
},
function(error) {
console.log("failed to get navbar content.")
}
);
// All the rest of this is to get the silly subclass information table in place.
{% if pagename == 'models' %}
var tableNode = dom.byId("subclasses_table");
var SubclassInfo = new Object();
// You know, there is probably a better way of getting at this information.
SubclassInfo['CoincInspiralEvent'] = ["ifos","end_time","mass","mchirp","minimum_duration","snr","false_alarm_rate","combined_far"];
SubclassInfo['MultiBurstEvent'] = ["ifos","start_time","duration","peak_time","central_freq","bandwidth","amplitude","snr","confidence","false_alarm_rate","ligo_axis_ra","ligo_axis_dec","ligo_angle","ligo_angle_sig"];
SubclassInfo['SimInspiralEvent'] = ["mass1","mass2","eta","mchirp","spin1z","spin2z","amp_order","coa_phase","geocent_end_time","f_lower","f_final","distance","latitude","longitude","polarization","inclination","theta0","phi0","waveform","source_channel","destination_channel"];
SubclassInfo['GrbEvent'] = ["ivorn","author_ivorn","author_shortname","observatory_location_id","coord_system","ra","dec","error_radius","how_description","how_reference_url","trigger_duration","t90"]
var mainTable = put(tableNode, 'table.subclasses_main');
headerRow = put(mainTable, 'tr');
for (var key in SubclassInfo) {
put(headerRow, 'th', key);
}
contentsRow = put(mainTable, 'tr');
for (var key in SubclassInfo) {
var subTable = put(contentsRow, 'td.subclasses_row table');
for (var ind in SubclassInfo[key]) {
put(subTable, 'tr', SubclassInfo[key][ind]);
}
}
{% endif %}
});
</script>
{% endblock %}
{% block header %}
<div id="gracedb-nav-header"></div>
{% endblock %}