Templates added

This commit is contained in:
2024-06-05 11:33:02 +03:00
parent 69a2160eb7
commit 50c53060bf
117 changed files with 16737 additions and 0 deletions

75
Templates/403.html Normal file
View File

@@ -0,0 +1,75 @@
{% load monthplan_templates %}
{% load static %}
{% load i18n %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>srg.arxiv.local</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
<!--link rel="stylesheet" href="{% static 'css/bootstrap.min.css' %}">
<script src="{% static 'js/jquery.min.js' %}"></script>
<script src="{% static 'js/bootstrap.min.js' %}"></script-->
</head>
<body>
<div class="container">
<div class="row">
<div class="col-sm-10">
<h1>{% trans 'Spectrum-Roentgen-Gamma' %}</h1>
<p style="font-size:22px;">{% trans 'Astrophysical Project' %}</p>
</div>
<div class="col-sm-2">
<p style="text-align:right;">
<a href="{% url 'index ru' %}">РУС</a> | <a href="{% url 'index en' %}">ENG</a>
</p>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<!--img src="{% static 'images/srg.png' %}" class="img" width="100%"-->
</div>
</div>
<div class="row">
<div class="col-sm-12">
<div class="jumbotron">
<h1>Permission denied (403)</h1>
{% if exception %}
<p>{{ exception|safe }}</p>
{% else %}
<p>No comments</p>
{% endif %}
</div>
</div>
</div>
</div>
<footer class="bs-footer" role="contentinfo">
<div class="row">
<div class="col-sm-12 text-center">
<p>
{% trans 'High Energy Astrophysics Department' %},
{% trans 'Space Research Institute (IKI), Moscow, Russia' %}
<span class="glyphicon glyphicon-copyright-mark"></span> {% now "Y" %}
</p>
<p>{% trans 'Development' %}: {% trans 'Roman Krivonos' %}
</p>
</div>
</div>
</div>
</footer>
</body>
</html>

71
Templates/404.html Normal file
View File

@@ -0,0 +1,71 @@
{% load monthplan_templates %}
{% load static %}
{% load i18n %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>srg.arxiv.local</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
<!--link rel="stylesheet" href="{% static 'css/bootstrap.min.css' %}">
<script src="{% static 'js/jquery.min.js' %}"></script>
<script src="{% static 'js/bootstrap.min.js' %}"></script-->
</head>
<body>
<div class="container">
<div class="row">
<div class="col-sm-10">
<h1>{% trans 'Spectrum-Roentgen-Gamma' %}</h1>
<p style="font-size:22px;">{% trans 'Astrophysical Project' %}</p>
</div>
<div class="col-sm-2">
<p style="text-align:right;">
<a href="{% url 'index ru' %}">РУС</a> | <a href="{% url 'index en' %}">ENG</a>
</p>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<!--img src="{% static 'images/srg.png' %}" class="img" width="100%"-->
</div>
</div>
<div class="row">
<div class="col-sm-12">
<div class="jumbotron">
<h1>Page not found (404)</h1>
</div>
</div>
</div>
</div>
<footer class="bs-footer" role="contentinfo">
<div class="row">
<div class="col-sm-12 text-center">
<p>
{% trans 'High Energy Astrophysics Department' %},
{% trans 'Space Research Institute (IKI), Moscow, Russia' %}
<span class="glyphicon glyphicon-copyright-mark"></span> {% now "Y" %}
</p>
<p>{% trans 'Development' %}: {% trans 'Roman Krivonos' %},
{% trans 'email' %}: krivonos<span class="glyphicon glyphicon-globe"></span>cosmos.ru
</p>
</div>
</div>
</div>
</footer>
</body>
</html>

View File

@@ -0,0 +1,98 @@
{% extends "base.html" %}
{% block header %}
<h3>Loaded ART-XC simulations:</h3>
<ul>
{% for sim in sims %}
<li><a href="{{ sim.get_absolute_url }}">{{ sim.filename }}</a>, <b>Month {{ sim.month }}, Telescope {{ sim.telescope }}</b></li>
{% endfor %}
</ul>
{% endblock %}
{% block content %}
{% if sim %}
<h3><a href="{{ sim.get_absolute_url }}">{{ sim.filename }}</a>, <b>Month {{ sim.month }}, T{{ sim.telescope }}</b></h3>
{% endif %}
{% if sim %}
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "GAL",
survey: "P/DSS2/color",
fov: 197, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
aladin.createImageSurvey("DIRBE_4","DIRBE_4", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/DIRBE_4",'galactic',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
aladin.getBaseImageLayer().getColorMap().update('rainbow');
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("DIRBE_4");
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var cat1 = A.catalog({shape: 'circle', name: 'ArtSim Events', color: 'white', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
{% if events %}
var overlay = A.graphicOverlay({color: '#ee2345', lineWidth: 1});
aladin.addOverlay(overlay);
{% for event in events %}
cat1.addSources(A.source({{ event.ra|safe }}, {{ event.dec|safe }},
{time: '{{ event.time|floatformat:4 }}',
energy: '{{ event.energy|floatformat:2 }}',
RA: '{{ event.ra|floatformat:4 }}',
Dec: '{{ event.dec|floatformat:4 }}',
Telescope: '{{ event.sim.telescope }}',
Healpix: '{{ event.healpix }}',
{% if event.plate %}Plate: '{{ event.plate.healpix }}',{% endif %}}));
{% endfor %}
{% endif %}
aladin.addCatalog(cat1);
var cat2 = A.catalog({shape: 'circle', name: 'Healpix Plates', color: 'blue', sourceSize: 12, displayLabel: false,onClick: 'showPopup'});
{% if plates %}
{% for plate in plates %}
cat2.addSources(A.source({{ plate.ra|safe }}, {{ plate.dec|safe }},
{RA: '{{ plate.ra|floatformat:4 }}',Dec: '{{ plate.dec|floatformat:4 }}', Healpix: '{{ plate.healpix }}'}));
{% endfor %}
{% endif %}
aladin.addCatalog(cat2);
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,354 @@
{% load artsurvey_templates %}
{% load heasarc_templates %}
{% load srgcat_templates %}
{% load i18n %}
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>{% block title %}SRG ArXiv{% endblock %}</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<META NAME="author" CONTENT="Roman Krivonos, email: krivonos [at] iki.rssi.ru">
<META NAME="description" CONTENT="High Energy Astrophysics Department at IKI RAN (Moscow, Russia)">
<link rel="stylesheet" href="{% static 'jquery/jquery-ui-themes-1.12.1/jquery-ui.css' %}" type="text/css" media="all" />
<script src="{% static 'jquery/jquery-3.5.1.min.js' %}" type="text/javascript"> </script>
<script type="text/javascript" src="{% static 'js/bootstrap.min.js' %}"></script>
<script src="{% static 'jquery/jquery-ui-1.12.1/jquery-ui.min.js' %}" type="text/javascript"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
<!--link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.12.9/dist/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script-->
<link rel="stylesheet" href="/static/css/style.css" />
<link type="text/css" rel="stylesheet" href="/static/js9/js9support.css">
<link type="text/css" rel="stylesheet" href="/static/js9/js9.css">
<script type="text/javascript" src="/static/js9/js9prefs.js"></script>
<script type="text/javascript" src="/static/js9/js9support.min.js"></script>
<script type="text/javascript" src="/static/js9/js9.min.js"></script>
<script type="text/javascript" src="/static/js9/js9plugins.js"></script>
<script src="{% static 'js/sorted.js' %}"></script>
<script>
$( function() {
$( document ).tooltip();
} );
</script>
<style>
label {
display: inline-block;
width: 5em;
` }
.dot {
height: 25px;
width: 25px;
background-color: #bbb;
border-radius: 50%;
display: inline-block;
}
.dotr {
height: 12px;
width: 12px;
background-color: red;
border-radius: 50%;
display: inline-block;
}
.dotg {
height: 12px;
width: 12px;
background-color: green;
border-radius: 50%;
display: inline-block;
}
.dotb {
height: 12px;
width: 12px;
background-color: blue;
border-radius: 50%;
display: inline-block;
}
.dotblack {
height: 12px;
width: 12px;
background-color: black;
border-radius: 50%;
display: inline-block;
}
ul, li {
list-style:none;
padding:0;
margin:0;
}
.listWrapper {
max-height:250px;
overflow-y:auto;
}
.listWrapper150 {
max-height:150px;
overflow-y:auto;
}
.tableWrapper {
max-height:300px;
overflow-y:auto;
}
.bibcodes {
display: none;
}
</style>
</head>
<body>
<script>
function js9init(){
JS9.imageOpts.wcsunits = "degrees";
{% if src %}
console.log("Preloading images");
{% if src.get_galplane_image_url %}
/*
var img = "{{ src.get_galplane_image_url }}/img_flux_0.fits.fz"
var opts = {parentFile:img, scale:"log",scalemin:"0.0",scalemax:"0.01",colormap:"b",zoom:"toFit"};
*/
var img = "{{ src.get_galplane_image_url }}/12g/img_c2dp_0.fits.fz"
var opts = {parentFile:img, scale:"sqrt",scalemin:"0.0",scalemax:"25",colormap:"b",zoom:"toFit"};
JS9.Preload(img, opts, {display: "js9aver"});
console.log("Loading galplane image {{ src.get_galplane_image_url }}/12g/img_c2dp_0.fits.fz");
{% else %}
{% if orig.skymap %}
var img = "/skymap/{{ orig.skymap }}/L3/22y/img_c2dp_0.fits.gz"
var opts = {parentFile:img, scale:"log",colormap:"b",zoom:"toFit"};
JS9.Preload(img, opts, {display: "js9aver"});
console.log("Loading skymap image");
{% endif %}
{% endif %}
{% if src.get_survey_primary_image_url %}
var img = "{{ src.get_survey_primary_image_url }}"
var opts = {parentFile:img, scale:"log",colormap:"b",zoom:"toFit"};
JS9.Preload(img, opts, {display: "js9aver"});
{% endif %}
{% endif %}
}
$(document).ready(function () {
js9init();
var arr = document.getElementsByClassName('bibcodes');
for (const x of arr) {
x.style.display = "none";
}
$("#txtSearch").autocomplete({
source: "/artsurvey/ajax/autocomplete/",
minLength: 2,
open: function(){
setTimeout(function () {
$('.ui-autocomplete').css('z-index', 99);
}, 0);
}
});
});
</script>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="/"><span class="glyphicon glyphicon-list"></span> SRG.ArXiv</a>
</div>
<ul class="nav navbar-nav">
<li><a href="{% url 'artsurvey index' %}"><span class="glyphicon glyphicon-cog"></span> Settings</a></li>
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Catalog
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="{% url 'artsurvey catalog' %}"><span class="glyphicon glyphicon-book"></span> List of Sources</a></li>
<li><a href="{% url 'artsurvey types' %}"><span class="glyphicon glyphicon-list-alt"></span> Types</a></li>
<li><a href="{% url 'artsurvey show turkish' %}"><span class="glyphicon glyphicon-exclamation-sign"></span> Turkish</a></li>
<li><a href="{% url 'artsurvey csv all' %}"><span class="glyphicon glyphicon-download"></span> Download CSV</a></li>
<li><a href="{% url 'artsurvey tex' %}"><span class="glyphicon glyphicon-download"></span> Show LaTeX</a></li>
<li><a href="{% url 'artsurvey ds9 all' %}"><span class="glyphicon glyphicon-download"></span> DS9 region</a></li>
<li><a href="{% url 'artsurvey ds9 all flux' %}"><span class="glyphicon glyphicon-download"></span> DS9 region (extended)</a></li>
<li><a href="{% url 'artsurvey ds9 all paper' %}"><span class="glyphicon glyphicon-download"></span> DS9 region (paper - all)</a></li>
<li><a href="{% url 'artsurvey ds9 all paper2' %}"><span class="glyphicon glyphicon-download"></span> DS9 region (paper - all text)</a></li>
<li><a href="{% url 'artsurvey ds9 all paper newonly' %}"><span class="glyphicon glyphicon-download"></span> DS9 region (paper - new only)</a></li>
<li><a href="{% url 'artsurvey ds9 all paper known' %}"><span class="glyphicon glyphicon-download"></span> DS9 region (paper - known)</a></li>
</ul>
</li>
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Cross-Match
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="{% url 'artsurvey crossmatch' %}"><span class="glyphicon glyphicon-tags"></span> <b>ART-XC Match</b></a></li>
<li><hr></li>
<li><a href="{% url 'artsurvey rass2rxs filter' %}"><span class="glyphicon glyphicon-book"></span> ROSAT (2RXS)</a></li>
<li><a href="{% url 'artsurvey rass2rxs filter csv' %}"><span class="glyphicon glyphicon-download"></span> ROSAT (2RXS)</a></li>
<li><a href="{% url 'artsurvey rass2rxs exclude' %}"><span class="glyphicon glyphicon-book"></span> ROSAT (2RXS) <b>exclude</b> </a></li>
<li><a href="{% url 'artsurvey rass2rxs exclude csv' %}"><span class="glyphicon glyphicon-download"></span> ROSAT (2RXS) <b>exclude</b></a></li>
<li><hr></li>
<li><a href="{% url 'artsurvey swiftbat105m filter' %}"><span class="glyphicon glyphicon-book"></span> Swift/BAT 105m</a></li>
<li><a href="{% url 'artsurvey swiftbat105m filter csv' %}"><span class="glyphicon glyphicon-download"></span> Swift/BAT 105m</a></li>
<li><a href="{% url 'artsurvey swiftbat105m exclude' %}"><span class="glyphicon glyphicon-book"></span> Swift/BAT 105m <b>exclude</b></a></li>
<li><a href="{% url 'artsurvey swiftbat105m exclude csv' %}"><span class="glyphicon glyphicon-download"></span> Swift/BAT 105m <b>exclude</b></a></li>
<li><hr></li>
<li><a href="{% url 'artsurvey xmmsl2' %}"><span class="glyphicon glyphicon-book"></span> XMM Slew v2</a></li>
<li><a href="{% url 'artsurvey integral2020' %}"><span class="glyphicon glyphicon-book"></span> INTEGRAL 17yr</a></li>
<li><a href="{% url 'artsurvey fermi' %}"><span class="glyphicon glyphicon-book"></span> Fermi (4FGL)</a></li>
<!--li><a href="{% url 'artsurvey rxte' %}"><span class="glyphicon glyphicon-book"></span> RXTE Slew Survey</a></li-->
<!--li><a href="{% url 'artsurvey intrefcat' %}"><span class="glyphicon glyphicon-book"></span> INTEGRAL Ref. Cat.</a></li-->
<!--li><a href="{% url 'artsurvey xmmdr10' %}"><span class="glyphicon glyphicon-book"></span> 4XMM DR10</a></li-->
<li><a href="{% url 'artsurvey maxi7yr' %}"><span class="glyphicon glyphicon-book"></span> 3MAXI 7yr</a></li>
<li><a href="{% url 'artsurvey exclude xray' %}"><span class="glyphicon glyphicon-book"></span> Exlude all above</a></li>
<li><a href="{% url 'artsurvey filter xray' %}"><span class="glyphicon glyphicon-book"></span> Filter all above / NEW</a></li>
<li><hr></li>
<li><a href="{% url 'artsurvey xmmdr12' %}"><span class="glyphicon glyphicon-book"></span> 4XMM DR12</a></li>
</ul>
</li>
<!--li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Paper I
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="{% url 'artsurvey paper' %}"><span class="glyphicon glyphicon-book"></span> List of Sources</a></li>
<li><a href="{% url 'artsurvey csv catalog' %}"><span class="glyphicon glyphicon-download"></span> CSV File</a></li>
<li><a href="{% url 'artsurvey tex catalog' %}"><span class="glyphicon glyphicon-download"></span> TeX Table</a></li>
<li><a href="{% url 'artsurvey tex notes' %}"><span class="glyphicon glyphicon-download"></span> TeX Notes</a></li>
</ul>
</li-->
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Paper II
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="{% url 'artsurvey cat paper2' %}"><span class="glyphicon glyphicon-book"></span> List of Sources</a></li>
<li><a href="{% url 'artsurvey csv paper2' %}"><span class="glyphicon glyphicon-download"></span> CSV File</a></li>
<li><a href="{% url 'artsurvey tex paper2 catalog' %}"><span class="glyphicon glyphicon-download"></span> TeX Table</a></li>
<li><a href="{% url 'artsurvey tex paper2 notes' %}"><span class="glyphicon glyphicon-download"></span> TeX Notes</a></li>
</ul>
</li>
<!--li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-search"></span> Search
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="{% url 'artsurvey search by coords' %}"><span class="glyphicon glyphicon-minus"></span> by Coords</a></li>
<li><a href="{% url 'artsurvey search by name' %}"><span class="glyphicon glyphicon-minus"></span> by Name</a></li>
</ul>
</li-->
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Tools
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="{% url 'artsurvey search by coords' %}"><span class="glyphicon glyphicon-minus"></span> Search by Coords</a></li>
<li><a href="{% url 'artsurvey search by name' %}"><span class="glyphicon glyphicon-minus"></span> Search by Name</a></li>
<li><a href="{% url 'artsurvey summary' %}"><span class="glyphicon glyphicon-tags"></span> Summary</a></li>
<li><a href="{% url 'artsurvey history' %}"><span class="glyphicon glyphicon-tags"></span> History</a></li>
</ul>
</li>
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Links
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a target="_blank" href="http://catserver.ing.iac.es/staralt/"><span class="glyphicon glyphicon-tags"></span> Планировщик оптических наблюдений</a></li>
<li><a target="_blank" href="https://www.swift.ac.uk/user_objects/"><span class="glyphicon glyphicon-tags"></span> Build Swift-XRT products</a></li>
<li><a target="_blank" href="http://xmmuls.esac.esa.int/upperlimitserver/"><span class="glyphicon glyphicon-tags"></span> X-ray upper limits server</a></li>
<li><a target="_blank" href="https://www.swift.ac.uk/support/too.php"><span class="glyphicon glyphicon-tags"></span> Swift TOO</a></li>
<li><a target="_blank" href="http://wsa.roe.ac.uk/"><span class="glyphicon glyphicon-tags"></span> UKIDSS и др. обзоры UKIRT</a></li>
<li><a target="_blank" href="http://horus.roe.ac.uk/vsa/"><span class="glyphicon glyphicon-tags"></span> VVV и др. обзоры VISTA</a></li>
<li><a target="_blank" href="https://skymapper.anu.edu.au/cone-search/"><span class="glyphicon glyphicon-tags"></span> SkyMapper: обзор южного неба</a></li>
<li><a target="_blank" href="http://svo2.cab.inta-csic.es/theory/fps/"><span class="glyphicon glyphicon-tags"></span> Характеристики фильтров</a></li>
</ul>
</li>
</ul>
{% if user.is_authenticated %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/logout"><span class="glyphicon glyphicon-log-out"></span> {% trans 'Sign Out' %}</a>
<a href="{% url 'artsurvey profile' %}" class="btn btn-link navbar-btn navbar-right"><span class="glyphicon glyphicon-user"></span> <strong>{{ user.first_name }} {{ user.last_name }}</strong></a>
{% else %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/login"><span class="glyphicon glyphicon-log-in"></span> {% trans 'Sign In' %}</a>
{% endif %}
</div>
</nav>
{% block header %}{% endblock %}
{% block content %}{% endblock %}
<div class="container">
<div class="row">
<div class="col-sm-9">
<h3>Code for reading CSV catalog:</h3>
<pre>
import csv
with open(filename, 'r' ) as theFile:
reader = csv.DictReader(theFile)
for line in reader:
print(line['NAME'])
</pre>
</div></div></div>
</body>
</html>

View File

@@ -0,0 +1,118 @@
{% extends "artsurvey/base.html" %}
{% load artsurvey_templates %}
{% block header %}{% endblock %}
{% block content %}
<div class="container">
{% if form %}
<h3>Create or update Art<b>Selection</b> {% if basket %}-- {{ basket }}{% endif %} </h3>
<div class="row">
<div class="col-sm-12">
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="" method="post">
{% csrf_token %}
<h5>
<table>
{{ form }}
</table>
</h5>
<input type="submit" class="btn btn-primary" value="Done" />
</form>
</div>
</div>
</div>
{% endif %}
{% if basket %}
<div class="row">
<div class="col-sm-12">
<p>
<h3>Art<b>Selection</b> {{ basket.title }}
{% if user.is_authenticated %}
[ <a href="{{ basket.get_update_url }}">edit</a> | <a href="{{ basket.get_delete_url }}">delete</a> ]
{% endif %}
</h3>
<p>{{ basket.notes }}</p>
<p>
<table class="table">
<thead>
<tr>
<th class="th-sm"></th>
<th class="th-sm">Name</th>
<th class="th-sm">Survey</th>
<th class="th-sm">CName</th>
<th class="th-sm">Notes</th>
<th class="th-sm">Follow up</th>
<th class="th-sm">Category</th>
<th class="th-sm">Type</th>
<th class="th-sm">Paper Notes</th>
<th class="th-sm">Papers</th>
<th class="th-sm">Files</th>
<th class="th-sm"></th>
</tr>
</thead>
<tbody>
{% for src in basket.sources.all %}
<tr>
<td>{{ forloop.counter }}</td>
<td><a href="{{ src.get_absolute_url }}">{{ src.name }}</a></td>
<td>{{ src.survey }}</td>
<td>{% if src.cname %}{{ src.cname }}{% endif %}</td>
<td>{% if src.notes %}<span title="{{ src.notes }}">{{ src.notes|truncatechars:20 }}</span>{% endif %}</td>
<td>{% if src.follow_up %}<span title="{{ src.follow_up }}">{{ src.follow_up|truncatechars:20 }}</span>{% endif %}</td>
<td>{% if src.category %}{{ src.category }}{% endif %}</td>
<td>{{ src.get_otype }}</td>
<td>{% if src.notes_paper %}<span title="{{ src.notes_paper }}">{{ src.notes_paper|truncatechars:20 }}</span>{% endif %}</td>
<td>
{% for paper in src.catalog.all %}
{{ paper }},
{% endfor %}
</td>
<td>
{% for upload in src.uploads.all %}
<a title="{{ upload }}" href="{{ upload.get_download_url }}"><big><span class="glyphicon glyphicon-save-file"></span></big></a>
{% endfor %}
</td>
<td>
<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_remove_from_basket_url }}/{{ basket.id }}">Remove</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
<p>
</div>
</div>
{% endif %}
</div>
{% endblock %}

View File

@@ -0,0 +1,128 @@
{% extends "artsurvey/base.html" %}
{% load heasarc_templates %}
{% load artsurvey_templates %}
{% load simbadescape %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-6">
{% if ntotal %}<h2>Total {{ ntotal }}</h2>{% endif %}
</div>
<div class="col-sm-6">
</div>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container-fluid">
{% if srcs %}
<!--table class="table"-->
<table id="CatalogTable" class="table" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm"></th>
<th class="th-sm">MetaSource</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">R</th>
{% for b in bands %}
<th class="th-sm">{{ b.slug }}</th>
{% endfor %}
<th class="th-sm">Category</th>
<th class="th-sm">CName</th>
<th class="th-sm">Other Names</th>
<th class="th-sm">Papers</th>
<th class="th-sm">Notes</th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>{{ forloop.counter }}</td>
<td><a href="{{ src.get_absolute_url }}">{{ src.name }}</a></td>
<td>{{ src.ra|floatformat:4 }}</td>
<td>{{ src.dec|floatformat:4 }}</td>
<td>{{ src.radec_error|floatformat:1 }}</td>
{% for b in bands %}
<td>
{% for s in src|get_metasource_for_band:b %}
<a href="{{ s.get_absolute_url }}">{{ s.survey }}</a><br>
{% endfor %}
</td>
{% endfor %}
<td>
{% for s in src.artsurveysource_set.all %}{% if s.catalog.exists %}{% if s.category %}{{ s.category }} ({{ s.object_class }}) |{% endif %}{% endif %}{% endfor %}
</td>
<td>
{% for s in src.artsurveysource_set.all %}{% if s.catalog.exists %}{{ s.cname }}{% endif %}{% endfor %}
</td>
<td>
{% for s in src.artsurveysource_set.all %}
{% if s.catalog.exists %}
{% for o in s.othername_set.all %}
{{ o }}<br>
{% endfor %}
{% endif %}
{% endfor %}
</td>
<td>
{% for s in src.artsurveysource_set.all %}
{% if s.catalog.exists %}
{% for o in s.ads.all %}
<a href="https://ui.adsabs.harvard.edu/abs/{{ o }}/abstract" target="_blank">{{ o }}</a> <span title="{{ o.notes }}"><span class="glyphicon glyphicon-comment"></span></span><br>
{% endfor %}
{% endif %}
{% endfor %}
</td>
<td>
{% for s in src.artsurveysource_set.all %}
{% if s.catalog.exists %}
{% if s.turkish %}
<a class="btn btn-danger btn-xs" role="button" href="{{ s.get_absolute_url }}">Turkish</a>
{% endif %}
{% if s.notes %}
<a href="{{ s.get_absolute_url }}">{{ s.survey }} {{ s.band.slug }}</a> <span title="{{ s.notes }}"><span class="glyphicon glyphicon-comment" style="color:black"></span></span>
{% endif %}
{% if s.notes_paper %}
{% if not s.notes %}<a href="{{ s.get_absolute_url }}">{{ s.survey }} {{ s.band.slug }}</a>{% endif %} <span title="{{ s.notes_paper }}"><span class="glyphicon glyphicon-comment" style="color:red"></span></span>
{% endif %}
{% endif %}
{% endfor %}</td>
</tr>
{% endfor %}
</tbody>
<tfooter>
</tr>
</tfooter>
</table>
{% endif %}
</div>
{% endblock %}

View File

@@ -0,0 +1,119 @@
{% extends "artsurvey/base.html" %}
{% load heasarc_templates %}
{% load artsurvey_templates %}
{% load simbadescape %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-6">
{% if ntotal %}<h2>Total {{ ntotal }}</h2>{% endif %}
</div>
<div class="col-sm-6">
</div>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container-fluid">
{% if srcs %}
<!--table class="table"-->
<table id="CatalogTable" class="table" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm"></th>
<th class="th-sm">MetaSource</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">R98</th>
<th class="th-sm">Category</th>
<th class="th-sm">CName</th>
<th class="th-sm">Other Names</th>
<th class="th-sm">ADS</th>
<th class="th-sm">Turk</th>
<th class="th-sm">Paper</th>
<th class="th-sm">Notes</th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>{{ forloop.counter }}</td>
<td><a href="{{ src.get_absolute_url }}">{{ src.name }}</a></td>
<td>{{ src.ra|floatformat:4 }}</td>
<td>{{ src.dec|floatformat:4 }}</td>
<td>{{ src.ml_radec_err_98|floatformat:1 }} {{ src.radec_error|floatformat:1 }}</td>
<td>
{% if src.category %}
{{ src.category }}
{% endif %}
</td>
<td>
{% if src.cname %}
{{ src.cname }}
{% endif %}
</td>
<td>
{% for o in src.othername_set.all %}
{{ o }}<br>
{% endfor %}
</td>
<td>
{% for o in src.ads.all %}
<a href="https://ui.adsabs.harvard.edu/abs/{{ o }}/abstract" target="_blank">{{ o }}</a> <span title="{{ o.notes }}"><span class="glyphicon glyphicon-comment"></span></span><br>
{% endfor %}
</td>
<td>
{% if src.turkish %}
<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_absolute_url }}"><span title="Date: {{ src.turkish_date }}">Turkish</span></a>
{% endif %}
</td>
<td>
{% if src.notes_paper %}
<span title="{{ src.notes_paper }}"><span class="glyphicon glyphicon-comment" style="color:red"></span></span>
{% endif %}
</td>
<td>
{% if src.notes %}
<span title="{{ src.notes }}"><span class="glyphicon glyphicon-comment" style="color:black"></span></span>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
<tfooter>
</tr>
</tfooter>
</table>
{% endif %}
</div>
{% endblock %}

View File

@@ -0,0 +1,42 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3><a href="{{ src.get_absolute_url }}">{{ src }}</a></h3>
<strong>Type:</strong> {{ src.object_class }},
<strong>CName:</strong> {{ src.cname }}
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="" method="post">
{% csrf_token %}
<table>
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,42 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3><a href="{{ src.get_absolute_url }}">{{ src }}</a></h3>
<strong>Type:</strong> {{ src.object_class }},
<strong>CName:</strong> {{ src.cname }}
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="" method="post">
{% csrf_token %}
<table>
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,41 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3><a href="{{ src.get_absolute_url }}">{{ src }}</a></h3>
<strong>Type:</strong> {{ src.object_class }}
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="" method="post">
{% csrf_token %}
<table>
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,195 @@
{% extends "artsurvey/base.html" %}
{% block header %}
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h3>Match filters</h3>
<p>HEALPix elements are selected within <strong>maxdist</strong> parameter via healpix <a target="_blank" href="https://astropy-healpix.readthedocs.io/en/latest/cone_search.html">cone search <span class="glyphicon glyphicon-new-window"></span></a>. Then, all matches are selected within <strong>Rmax</strong> parameter.</p>
{% if message %}
<div class="alert alert-warning">
{{ message }}
</div>
{% endif %}
{% if form %}
<form action="" method="post">
{% csrf_token %}
<table class="table">
{{ form }}
</table>
<input class="btn btn-default" type="submit" value="Match">
</form>
{% endif %}
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h1>1: {{ params.survey1 }} {{ params.band1 }} {% if nrows1 %}({{ nrows1 }}){% endif %}</h1>
<h1>2: {{ params.survey2 }} {{ params.band2 }} {% if nrows2 %}({{ nrows2 }}){% endif %}</h1>
{% if nrows1 %}
<hr>
<h2>from 1 in 2</h2>
<h2>Matched: {{ match_count }} Missed: {{ missed_count1 }}</h2>
<p><big>Confusion: 1:{{ match1_count }} 2:{{ match2_count }} 3:{{ match3_count }} 4:{{ match4_count }}</big></p>
<hr>
<h2>from 2 in 1</h1>
<h2>Matched: {{ match_count2 }} Missed: {{ missed_count2 }}</h2>
<p><big>Confusion: 1:{{ match1_count2 }} 2:{{ match2_count2 }} 3:{{ match3_count2 }} 4:{{ match4_count2 }}</big></p>
{% endif %}
</div>
</div>
</div>
</div>
</div>
{% if match_list %}
<div class="container-fluid">
<div class="row">
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<table id="ArtSurveyMatchTable" class="table" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">dir</th>
<th class="th-sm">Src1</th>
<th class="th-sm">CNAME</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">DL</th>
<th class="th-sm">Log NF</th>
<th class="th-sm">Flux1</th>
<th class="th-sm">Sign1</th>
<th class="th-sm">Src2</th>
<th class="th-sm">CNAME</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">DL</th>
<th class="th-sm">Log NF</th>
<th class="th-sm">Flux2</th>
<th class="th-sm">Sign2</th>
<th class="th-sm">F2/F1</th>
<th class="th-sm">Sep ('')</th>
</tr>
</thead>
<tbody>
<tr><td colspan = "19" style="text-align: center;"><strong><big>Matched list (nrows={{ match_count }})</big></strong></td></tr>
{% for o in match_list %}
<tr>
<td>{{ o.dir }};</td>
<td><a href="{{ o.src1.get_absolute_url }}">{{ o.src1 }}</a>;</td>
<td>{{ o.src1.cname }};</td>
<td>{{ o.src1.ra|floatformat:6 }};</td>
<td>{{ o.src1.dec|floatformat:6 }};</td>
<td>{{ o.src1.detlike|floatformat:2 }};</td>
<td>{{ o.src1.log_nfalse|floatformat:2 }};</td>
<td>{{ o.src1.flux|stringformat:"1.2e" }};</td>
<td>{{ o.src1.sig|floatformat:2 }};</td>
<td><a href="{{ o.src2.get_absolute_url }}">{{ o.src2 }}</a>;</td>
<td>{{ o.src2.cname }};</td>
<td>{{ o.src2.ra|floatformat:6 }};</td>
<td>{{ o.src2.dec|floatformat:6 }};</td>
<td>{{ o.src2.detlike|floatformat:2 }};</td>
<td>{{ o.src2.log_nfalse|floatformat:2 }};</td>
<td>{{ o.src2.flux|stringformat:"1.2e" }};</td>
<td>{{ o.src2.sig|floatformat:2 }};</td>
<td>{{ o.f1f2_ratio|floatformat:1 }};</td>
<td>{{ o.sep|floatformat:1 }};</td>
</tr>
{% endfor %}
<tr><td colspan = "19" style="text-align: center;"><strong><big>Missed 1 in 2 (nrows={{ missed_count1 }})</big></strong></td></tr>
{% for o in missed_list1 %}
<tr>
<td>;</td>
<td><a href="{{ o.src1.get_absolute_url }}">{{ o.src1 }}</a>;</td>
<td>{{ o.src1.cname }};</td>
<td>{{ o.src1.ra|floatformat:6 }};</td>
<td>{{ o.src1.dec|floatformat:6 }};</td>
<td>{{ o.src1.detlike|floatformat:2 }};</td>
<td>{{ o.src1.nfalse|floatformat:2 }};</td>
<td>{{ o.src1.flux|stringformat:"1.2e" }};</td>
<td>{{ o.src1.sig|floatformat:2 }};</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
</tr>
{% endfor %}
<tr><td colspan = "19" style="text-align: center;"><strong><big>Missed 2 in 1 (nrows={{ missed_count2 }})</big></strong></td></tr>
{% for o in missed_list2 %}
<tr>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td>;</td>
<td><a href="{{ o.src2.get_absolute_url }}">{{ o.src2 }}</a>;</td>
<td>{{ o.src2.cname }};</td>
<td>{{ o.src2.ra|floatformat:6 }};</td>
<td>{{ o.src2.dec|floatformat:6 }};</td>
<td>{{ o.src2.detlike|floatformat:2 }};</td>
<td>{{ o.src2.nfalse|floatformat:2 }};</td>
<td>{{ o.src2.flux|stringformat:"1.2e" }};</td>
<td>{{ o.src2.sig|floatformat:2 }};</td>
<td>;</td><td>;</td>
</tr>
{% endfor %}
</tbody>
<!--tfooter>
<tr>
<th class="th-sm"></th>
<th class="th-sm"></th>
<th class="th-sm"></th>
</tr>
</tfooter-->
</table>
</div>
</div>
</div>
</div>
</div>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,17 @@
{% extends "artsurvey/base.html" %}
{% load monthplan_templates %}
{% block header %}{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
{% for user in users %}
<p><strong>{{ user.first_name }} {{ user.last_name }}</strong> ({{ user }})</p>
<pre>{{ user.artsurveyparams.history|safe }}</pre>
{% endfor %}
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,295 @@
{% extends "artsurvey/base.html" %}
{% load heasarc_templates %}
{% load simbadescape %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-9">
<h3><a href="/artsurvey/catalog">{{ request.user.artsurveyparams.survey }}</a> {{ request.user.artsurveyparams.get_band_display }} ({{ request.user.artsurveyparams.band }}) {% if ntotal %}Total {{ ntotal }}{% endif %}</h3>
<p><big>{% if request.user.artsurveyparams.survey.notes %}<pre>{{ request.user.artsurveyparams.survey.notes|safe }}</pre>{% else %}Notes{% endif %} [<a href="{{ request.user.artsurveyparams.survey.get_notes_url }}">edit</a>]</big></p>
<p>
{% if request.user.artsurveyparams.survey.parent %}<strong>Parent: {{ request.user.artsurveyparams.survey.parent }}</strong>{% endif %}{% if request.user.artsurveyparams.survey.children.count %}<strong>Children: {% for child in request.user.artsurveyparams.survey.children.all %}{{ child }}{% endfor %}</strong>{% endif %}
</p>
</div>
<div class="col-sm-3">
<p>
<h4>{% trans 'Attached' %} <small>[<a href="{{ request.user.artsurveyparams.survey.get_upload_url }}">+</a>, <a href="{{ request.user.artsurveyparams.survey.clean_primary_upload_url }}">clean Primary</a>]</small></h4>
<table class="table">
{% for upload in request.user.artsurveyparams.survey.uploads.all %}
<tr>
<td><a title="{{ upload.title }}" href="{{ upload.get_download_url }}">{{ upload.title|truncatechars:20 }}</a>
<span title="{{ upload.notes }}"><span class="glyphicon glyphicon-comment"></span></span>
{% if upload.primary %}
<span title="Primary"><b style="color:red;">P</b></span>
{% else %}
[<a href="{{ request.user.artsurveyparams.survey.set_primary_upload_url }}/{{ upload.pk }}">set as Primary</a>]
{% endif %}
</td><td>[<a href="{{ request.user.artsurveyparams.survey.get_edit_upload_url }}/{{ upload.pk }}">edit</a>, <a href="{{ request.user.artsurveyparams.survey.get_delete_upload_url }}/{{ upload.pk }}">del</a>]</td>
</tr>
{% endfor %}
</table>
</p>
</div>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container-fluid">
{% if histogram %}
<p>
<h4>HEASARC Matching Statistics within 40''</h4>
{% for key,value in histogram.items %}
<b>{{ key }}</b>: {{ value.total }} |
{% endfor %}
</p>
{% endif %}
{% if reverse %}
<p>
<h4>HEASARC Reverse Match Statistics (more than one match)</h4>
{% for key,value in reverse.items %}
{% if value.total > 1 %}
<b>{{ key }}</b>: {{ value.total }} ({{ value.list|safe }}) <br />
{% endif %}
{% endfor %}
</p>
{% endif %}
{% if srcs %}
<p>
<script>
function toggle_bibcodes() {
var arr = document.getElementsByClassName('bibcodes');
for (const x of arr) {
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
}
</script>
<strong>Sort by:</strong>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort ra asc' %}">RA <span class="glyphicon glyphicon-sort-by-attributes"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort ra desc' %}">RA <span class="glyphicon glyphicon-sort-by-attributes-alt"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort dec asc' %}">Dec <span class="glyphicon glyphicon-sort-by-attributes"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort dec desc' %}">Dec <span class="glyphicon glyphicon-sort-by-attributes-alt"></span></a> |
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort ml_sign asc' %}">ML Sign <span class="glyphicon glyphicon-sort-by-attributes"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort ml_sign desc' %}">ML Sign <span class="glyphicon glyphicon-sort-by-attributes-alt"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort nfalse asc' %}">ML nFalse <span class="glyphicon glyphicon-sort-by-attributes"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort nfalse desc' %}">ML nFalse <span class="glyphicon glyphicon-sort-by-attributes-alt"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort ml_flux asc' %}">ML Flux <span class="glyphicon glyphicon-sort-by-attributes"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort ml_flux desc' %}">ML Flux <span class="glyphicon glyphicon-sort-by-attributes-alt"></span></a> |
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort sign asc' %}">Sign <span class="glyphicon glyphicon-sort-by-attributes"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort sign desc' %}">Sign <span class="glyphicon glyphicon-sort-by-attributes-alt"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort flux asc' %}">Flux <span class="glyphicon glyphicon-sort-by-attributes"></span></a>
<a class="btn btn-success" role="button" href="{% url 'artsurvey sort flux desc' %}">Flux <span class="glyphicon glyphicon-sort-by-attributes-alt"></span></a>
<big>* -- Non-ML values are marked with a star</big>
<!--a class="btn btn-warning" role="button" href="{% url 'artsurvey integral2020' %}">INTEGRAL2020</a-->
<span style="float:right;"><button class="btn btn-info" role="button" onclick="toggle_bibcodes()">Toggle Papers</button></span>
</p>
<!--table class="table"-->
<table id="ArtSurveyTable" class="table" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm"></th>
<!--th class="th-sm"><span title="Survey">S</span></th>
<th class="th-sm"><span title="Energy band">e.</span></th-->
<th class="th-sm">Name</th>
<th class="th-sm">Survey</th>
<th class="th-sm">CName</th>
<th class="th-sm"><span title="Heasarc R < 40''">H</span></th>
<th class="th-sm"><span title="Gaia R < 40''">G</span></th>
<th class="th-sm"><span title="ALLWISEAGN R < 40''">W</span></th>
<th class="th-sm"><span title="NVSS+FIRST+SUMSS+VLASS < 40''">R</span></th>
<!--th class="th-sm" width="20%" ><span title="Simbad R < 40''">Type? (abridged<3)</span></th-->
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Lon</th>
<th class="th-sm">Lat</th>
<th class="th-sm">Cnts (not ML)</th>
<th class="th-sm">ML Expo</th>
<th class="th-sm">ML Sign.</th>
<th class="th-sm">log_ML_nFalse</th>
<th class="th-sm">ML DL</th>
<th class="th-sm">ML Flux</th>
<!--th class="th-sm">eRosita</th-->
<th class="th-sm">Class</th>
<th class="th-sm">Redshift</th>
<th class="th-sm"></th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
{% if src.exclude == False %}
<tr>
<td>{{ forloop.counter }}</td>
<!--td>{{ src.field }}</td-->
<!--td>{{ src.survey }}</td>
<td>{{ src.band.slug }}</td-->
<td>
<a target="_blank" href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b> </a>
<!-- {% if src.lii < 180.0 %}<b style="color:red;">ru</b>{% else %}<b style="color:blue;">de</b>{% endif %} -->
<a style="color:red;" title="MetaSource" href="{{ src.metasource.get_absolute_url }}">M{{ src.metasource.artsurveysource_set.all.count }}</a>
{% if src.metasource.comments.count %}<span title="{% for comment in src.metasource.get_comments %}{{ comment }} | {% endfor %}"><span class="glyphicon glyphicon-comment" style="color:red;"></span>{% endif %}
</td>
<td>{{ src.survey }}</td>
<td>{% if src.cname %}{{ src.cname }}{% endif %} {% if src.category.slug == "false" %}<b>FALSE</b>{% endif %}</td>
<td>{{ src.heasarc.all.count }} {% if src.count_heasarc %}({{ src.count_heasarc }}){% endif %}</b></td>
<td> {{ src.gaia3.all.count }}</td>
<td> {{ src.allwiseagn }}</td>
<td> {{ src.get_radio_total }}</td>
<!--td>
{% for simsrc in src.simbad.all|slice:":3" %}
{% if simsrc.obj_class %}{{ simsrc.obj_class }} {% if simsrc.is_redshift_real %}{% if simsrc.z > 0 %}<strong><span style="color:red;">z={{ simsrc.z }}</span></strong> {% endif %}{% endif %}|{% endif %}
{% endfor %}
{% with count=src.simbad.all.count %}
{% if count > 3 %}<strong>(+{{ count|add:"-3" }})</strong>{% endif %}
{% endwith %}
{% if src.simbad_notfound %}
{% endif %}
{% if src.simbad_failed %}
<strong>Aborted</strong>
{% endif %}
</td-->
<td>{{ src.ra|floatformat:4 }}</td>
<td>{{ src.dec|floatformat:4 }}</td>
<td>{{ src.lii|floatformat:4 }}</td>
<td>{{ src.bii|floatformat:4 }}</td>
<td>{{ src.cnts|floatformat:1 }}*</td>
<td>{{ src.ml_exp|floatformat:0 }}</td>
<td>{% if src.ml_sig > 0.0 %} {{ src.ml_sig|floatformat:2 }} {% else %} {{ src.sig|floatformat:2 }}*{% endif %}</td>
<td> {{ src.log_ml_nfalse|floatformat:2 }} {{ src.log_nfalse|floatformat:2 }}*</td>
<td>{{ src.ml_detlike|floatformat:2 }} {{ src.detlike|floatformat:2 }}*</td>
<td>{{ src.ml_flux|stringformat:"1.2e" }} {{ src.flux|stringformat:"1.2e" }}*</td>
<!--td>
{% if src.erosita_data == False %}
<span class="dotblack" title="eRosita data N/A"></span>
{% endif %}
{% if src.erositamatch %}
{% if src.erositamatch.match_soft %}<span class="dotr" title="{{ src.erositamatch.ML_FLUX_0_soft|stringformat:"1.2e" }}"></span>{% endif %}
{% if src.erositamatch.match_med %}<span class="dotg"title="{{ src.erositamatch.ML_FLUX_0_med|stringformat:"1.2e" }}"></span>{% endif %}
{% if src.erositamatch.match_hard %}<span class="dotb" title="{{ src.erositamatch.ML_FLUX_0_hard|stringformat:"1.2e" }}"></span>{% endif %}
{% endif %}
</td-->
<td>{% if src.category %}[{{ src.category.slug }}]{% endif %}
{% if src.follow_up %}
<a class="btn btn-info btn-xs" role="button" href="{{ src.get_absolute_url }}"><span title="{{ src.follow_up }}">Follow-up</span></a>
{% endif %}
{% if src.class_tentative %}
<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_absolute_url }}">Tentative</a>
{% endif %}
{% if src.marshall %}
<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_absolute_url }}" title="MSFC source in NEP">Marshall</a>
{% endif %}
{% if src.turkish %}
<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_absolute_url }}" title="Date: {{ src.turkish_date|date:"d.m.Y" }}">Turkish</a>
{% endif %}
{% if src.ext %}[extended]{% endif %}
{% if src.object_class %}<span title="{{ src.object_class }}">{{ src.object_class|truncatechars:9 }}</span>{% endif %}</td>
<td>{% if src.redshift %}{{ src.redshift|floatformat:4 }}{% endif %}</td>
<td>
{% if src.notes %}<span title="{{ src.notes }}"><span class="glyphicon glyphicon-comment"></span>{% endif %}
{% if src.notes_paper %}
<span title="{{ src.notes_paper }}"><span class="glyphicon glyphicon-comment" style="color:red"></span></span>
{% endif %}
<span class="bibcodes">
{% for bibcode in src.ads.all %}
{% if not bibcode.hidden %}
<a href="https://ui.adsabs.harvard.edu/abs/{{ bibcode }}/abstract" target="_blank">{{ bibcode }} <span class="glyphicon glyphicon-new-window"></span></a>
<span title="{{ bibcode.notes }}">
{% for cat in bibcode.category.all %}
<span class="glyphicon glyphicon-ok"></span> {{ cat }}
{% endfor %}
</span><br>
{% endif %}
{% endfor %}
</span>
</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfooter>
<tr>
<th class="th-sm"></th>
<th class="th-sm">Name</th>
<th class="th-sm">Survey</th>
<th class="th-sm">CName</th>
<th class="th-sm"><span title="Heasarc R < 40''">H</span></th>
<th class="th-sm"><span title="Gaia R < 40''">G</span></th>
<th class="th-sm"><span title="ALLWISEAGN R < 40''">W</span></th>
<th class="th-sm"><span title="NVSS+FIRST+SUMSS+VLASS < 40''">R</span></th>
<th class="th-sm">J2000</th>
<th class="th-sm">J2000</th>
<th class="th-sm"></th>
<th class="th-sm"></th>
<th class="th-sm">cts</th>
<th class="th-sm">s</th>
<th class="th-sm">erg/s/cm2</th>
<th class="th-sm">Sign.</th>
<th class="th-sm">Class</th>
<th class="th-sm">Redshift</th>
<th class="th-sm">CName</th>
<th class="th-sm"></th>
</tr>
</tfooter>
</table>
{% endif %}
</div>
{% endblock %}

View File

@@ -0,0 +1,227 @@
{% extends "artsurvey/base.html" %}
{% load heasarc_templates %}
{% load simbadescape %}
{% block header %}
<script>
var xhr = new XMLHttpRequest();
xhr.open("POST", "https://vizier.u-strasbg.fr/vizier/", true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.send(JSON.stringify({
"keywordSearchPosition": "10.0 , 10.0"
}));
function ToggleWise() {
var x = document.getElementById("ToggleWise");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
</script>
<div class="container-fluid">
<div class="row">
<div class="col-sm-12">
<h3>
MetaSource <a href="{{ src.get_absolute_url }}">{{ src }}</a> {{ band }}</h3>
<big>
<p>Lookup radius = {{ src.radec_error|floatformat:1 }}''</p>
{% if src.catalog %}
<p>
Linked to <b>{{ src.catalog }}</b>
<a class="btn btn-danger btn-sm" role="button" href="{{ src.get_delete_paper_url }}"><span class="glyphicon glyphicon-remove"></span> Remove</a>
</p>
{% endif %}
</big>
<p>
{{ src.ra|floatformat:4 }}<sup>RA</sup> {{ src.dec|floatformat:4 }}<sup>Dec</sup> <a data-toggle="tooltip" data-placement="top" title="Lookup target position in survey" href="{% url 'target survey GET' %}?ra={{ src.ra|safe }}&dec={{ src.dec|safe }}"><span class="glyphicon glyphicon-flag"></span></a> |
<strong><a href=http://simbad.u-strasbg.fr/simbad/sim-coo?Coord={{src.ra|stringformat:"+.6f"}}{{src.dec|stringformat:"+.6f"|escape}}&CooFrame=FK5&CooEpoch=2000&CooEqui=2000&CooDefinedFrames=none&Radius=40&Radius.unit=arcsec&submit=submit+query&CoordList=>SIMBAD</a></strong> |
<strong><a href=https://ned.ipac.caltech.edu/conesearch?search_type=Near%20Position%20Search&coordinates={{src.ra|stringformat:"+.6f"|escape}}d,{{src.dec|stringformat:"+.6f"|escape}}d&radius=0.666667&in_csys=Equatorial&in_equinox=J2000&out_csys=Equatorial&out_equinox=Same%20as%20Input&hconst=67.8&omegam=0.308&omegav=0.692&wmap=4&corr_z=1&iau_style=liberal&in_csys_IAU=Equatorial&in_equinox_IAU=B1950&z_constraint=Unconstrained&z_unit=z&ot_include=ANY&nmp_op=ANY&out_csys_nearname=Equatorial&out_equinox_nearname=J2000&obj_sort=Distance%20to%20search%20center>NED</a></strong>
</p>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<p class="card-text">
<h3 class="card-title">Filter by energy band:
{% for band in bands %}
<a href="{{ src.get_absolute_url }}/{{ band.pk }}">{{ band }}</a> |
{% endfor %}
</h3>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container-fluid">
<div class="col-sm-12">
<table class="table">
<thead>
<tr>
<th class="th-sm"></th>
<th class="th-sm">Name</th>
<th class="th-sm">Survey</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Band</th>
<th class="th-sm">Sep ('')</th>
<th class="th-sm">Flux</th>
<th class="th-sm">Error</th>
<th class="th-sm">Sign.</th>
<th class="th-sm">log_nFalse</th>
<th class="th-sm">Band</th>
<th class="th-sm">CNAME</th>
<th class="th-sm">Class</th>
<th class="th-sm">Catalog</th>
<th class="th-sm">Files</th>
<th class="th-sm">ADS</th>
<th class="th-sm">Notes</th>
<th class="th-sm">Modified</th>
</tr>
</thead>
<tbody>
{% for m in srcs %}
<tr>
<td>{{ forloop.counter }}</td>
<td>
<a href="{{ m.get_absolute_url }}">{{ m.name }}</a>
{% if m.metasource_primary %}<span title="Primary"><b>P</span></span>{% endif %}
</td>
<td>{{ m.survey }}</td>
<td>{{ m.ra|floatformat:5 }}</td>
<td>{{ m.dec|floatformat:5 }}</td>
<td>{{ m.band }}</td>
<td>{{ m.metasource_sep|floatformat:1 }}</td>
<td>{{ m.flux|stringformat:"1.2e" }}</td>
<td>{{ m.flux_err|stringformat:"1.2e" }}</td>
<td>{{ m.sig|floatformat:1 }}</td>
<td>{{ m.log_nfalse|floatformat:4 }}</td>
<td>{{ m.band }}</td>
<td>{% if m.cname %}{{ m.cname }}{% endif %}</td>
<td>{% if m.object_class %}{{ m.object_class }}{% endif %}</td>
<td>
{% for paper in m.catalog.all %}
{{ paper }},
{% endfor %}
</td><td>
{% for upload in m.uploads.all %}
<a title="{{ upload }}" href="{{ upload.get_download_url }}"><big><span class="glyphicon glyphicon-save-file"></span></big></a>
{% endfor %}
</td>
<td>
{% if m.ads.all.count %}
<b>{{ m.ads.all.count }}</b>
{% endif %}
</td>
<td>
{% if m.turksh %}
<a title="Turkish Date set: {{ m.turkish_date|date:"d.m.Y" }}" class="btn btn-danger btn-xs" role="button" href="">T</a>
{% endif %}
{% if m.marshall %}
<a title="MSFC source in NEP" class="btn btn-danger btn-xs" role="button" href="">MSFC</a>
{% endif %}
</td>
<td>
{{ m.modified|date:"d.m.y H:i" }}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
<div class="container-fluid">
<div class="col-sm-8 text-left">
{% for comment in comments %}
<div class="comments" style="padding: 10px;">
<p class="font-weight-bold">
<span class="glyphicon glyphicon-user"></span> <strong>{{ comment.owner.first_name }} {{ comment.owner.last_name }}</strong> {{ comment.name }}
<span class=" text-muted font-weight-normal">
{{ comment.created|date:"d.m.y H:i" }}
</span>
<span style="float:right;">
<a href="{{ comment.get_delete_url }}"><span class="glyphicon glyphicon-remove"></span> delete</a>
</span>
</p>
<p style="text-align:left;">
{{ comment.body | linebreaks }}
</p>
</div>
{% endfor %}
<div class="card-body">
<h3>Leave a comment</h3>
<form method="post" style="margin-top: 1.3em;">
{{ comment_form.as_p }}
{% csrf_token %}
<button type="submit" class="btn btn-primary btn-lg">Submit</button>
</form>
</div>
</div>
<div class="col-sm-4 text-right">
<p>
<h3>Attached files [<a href="{{ src.get_upload_url }}">+</a>]</h3>
<table class="table">
{% for upload in src.uploads.all %}
<tr>
<td><a title="{{ upload.title }}" href="{{ upload.get_download_url }}">{{ upload.title|truncatechars:20 }}</a>
<span title="{{ upload.notes }}"><span class="glyphicon glyphicon-comment"></span></span>
</td><td>[<a href="{{ src.get_edit_upload_url }}/{{ upload.pk }}">edit</a>, <a href="{{ src.get_delete_upload_url }}/{{ upload.pk }}">del</a>]</td>
</tr>
{% endfor %}
</table>
</p>
</div>
</div>
<div class="container">
<div class="col-sm-12 text-right">
<hr>
<p>
<a class="btn btn-danger btn-lg disabled" role="button" href="{{ src.get_delete_url_dead }}"><span class="glyphicon glyphicon-remove"></span> Delete this MetaSource only</a>
</p>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,60 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-8">
<big>
<p>
<h3><a href="{{ src.get_absolute_url }}">{{ src }}</a></h3>
<strong>Type:</strong> {{ src.object_class }}{% if src.class_tentative %}<b>?</b>{% endif %},
<strong>CName:</strong> {{ src.cname }}
</p>
</big>
<p>
{% if src.turkish %}
<b>Turkish</b>
{% endif %}
</p>
</div>
<div class="col-sm-4">
<p>
<h3>References</h3>
{% for bibcode in src.ads.all %}
<a href="https://ui.adsabs.harvard.edu/abs/{{ bibcode }}/abstract" target="_blank">{{ bibcode }} <span class="glyphicon glyphicon-new-window"></span></a> {% if bibcode.owner %}({{ bibcode.owner }}){% endif %}<br>
{% if bibcode.notes %}<em>"{{ bibcode.notes }}"</em><br>{% endif %}
{% endfor %}
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="/srgz/search" method="post">
{% csrf_token %}
<table>
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,41 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3><a href="{{ src.get_absolute_url }}">{{ src }}</a></h3>
<strong>Type:</strong> {{ src.object_class }}
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="" method="post">
{% csrf_token %}
<table>
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,332 @@
{% extends "artsurvey/base.html" %}
{% load artsurvey_templates %}
{% block header %}
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<h3>Galactic Plane Survey</h3>
<!--div style="overflow-x: auto;">
<table class="table no-wrap">
<tr>
<td><a href='{{ "GP040"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">040</a></td>
<td><a href='{{ "GP035"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">035</a></td>
<td><a href='{{ "GP030"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">030</a></td>
<td><a href='{{ "GP025"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">025</a></td>
<td><a href='{{ "GP020"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">020</a></td>
<td><a href='{{ "GP015"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">015</a></td>
<td><a href='{{ "GP010"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">010</a></td>
<td><a href='{{ "GP005"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">005</a></td>
<td><a href='{{ "GP000"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">000</a></td>
<td><a href='{{ "GP355"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">355</a></td>
<td><a href='{{ "GP350"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">350</a></td>
<td><a href='{{ "GP345"|set_latest_galsurvey }}' class="w3-button w3-green w3-large w3-padding-large">345</a></td>
</tr>
</table>
</div-->
<div style="overflow-x: auto;">
<table class="table no-wrap">
<tr>
<td><a href='{{ "GP090"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>090</big></a></td>
<td><a href='{{ "GP085"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>085</big></a></td>
<td><a href='{{ "GP080"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>080</big></a></td>
<td><a href='{{ "GP075"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>075</big></a></td>
<td><a href='{{ "GP070"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>070</big></a></td>
<td><a href='{{ "GP065"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>065</big></a></td>
<td><a href='{{ "GP060"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>060</big></a></td>
<td><a href='{{ "GP055"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>055</big></a></td>
<td><a href='{{ "GP050"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>050</big></a></td>
<td><a href='{{ "GP045"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>045</big></a></td>
<td><a href='{{ "GP040"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>040</big></a></td>
<td><a href='{{ "GP035"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>035</big></a></td>
<td><a href='{{ "GP030"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>030</big></a></td>
<td><a href='{{ "GP025"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>025</big></a></td>
<td><a href='{{ "GP020"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>020</big></a></td>
<td><a href='{{ "GP015"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>015</big></a></td>
<td><a href='{{ "GP010"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>010</big></a></td>
<td><a href='{{ "GP005"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>005</big></a></td>
<td><a href='{{ "GP000"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>000</big></a></td>
<td><a href='{{ "GP355"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>355</big></a></td>
<td><a href='{{ "GP350"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>350</big></a></td>
<td><a href='{{ "GP345"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>345</big></a></td>
<!--td><a href='#' role="button" class="btn btn-warning btn-lg btn-block"><big><...></big></a></td-->
<td><a href='{{ "GP340"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>340</big></a></td>
<td><a href='{{ "GP335"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>335</big></a></td>
<td><a href='{{ "GP330"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>330</big></a></td>
<td><a href='{{ "GP325"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>325</big></a></td>
<td><a href='{{ "GP320"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>320</big></a></td>
<td><a href='{{ "GP315"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>315</big></a></td>
<td><a href='{{ "GP310"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>310</big></a></td>
<td><a href='{{ "GP305"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>305</big></a></td>
<td><a href='{{ "GP300"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>300</big></a></td>
<td><a href='{{ "GP295"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>295</big></a></td>
<td><a href='{{ "GP290"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>290</big></a></td>
<td><a href='{{ "GP285"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>285</big></a></td>
<td><a href='{{ "GP280"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>280</big></a></td>
<td><a href='{{ "GP275"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>275</big></a></td>
<td><a href='{{ "GP270"|set_latest_galsurvey }}' role="button" class="btn btn-success btn-lg btn-block"><big>270</big></a></td>
</tr>
</table>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-7">
<div class="card">
<div class="card-body">
<h3>Update filters [<a href="{% url 'artsurvey params reset' %}">reset</a>]</h3>
{% if message %}
<div class="alert alert-warning">
{{ message }}
</div>
{% endif %}
{% if form %}
<form action="" method="post">
<input style="float: right;" class="btn btn-info btn-block btn-lg" type="submit" value="Update">
<br> <br>
{% csrf_token %}
<table class="table">
{{ form }}
</table>
</form>
{% endif %}
</div>
</div>
</div>
<div class="col-sm-5">
<div class="card">
<div class="card-body">
{% if ntotal %}
<p>
<h3>Selected {{ ntotal }} sources
<a class="btn btn-info btn-lg" style="float: right;" href="{% url 'artsurvey catalog' %}"><span class="glyphicon glyphicon-arrow-right"></span> Open Catalog</a></h3></p><br>
{% endif %}
{% if params %}
<div class="alert alert-success">
<h3>Current values:</h3>
<pre>
Sky = {{ params.sky }}
Survey = {{ params.survey }} {% if params.survey.notes %}<span title="{{ params.survey.notes }}"><span class="glyphicon glyphicon-comment" style="color:red;"></span></span>{% endif %} {% if params.survey.parent %}<strong>Parent: {{ params.survey.parent }}</strong>{% endif %}{% if params.survey.children.count %}<strong>Children: {% for child in params.survey.children.all %}{{ child }}{% endfor %}</strong>{% endif %} {{ params.survey.modified|date:"d.m.y H:i" }}
Energy band = {{ params.get_band_display }} ({{ params.band }})
Sign. min = {{ params.sign_min }}
Sign. max = {{ params.sign_max }}
log nFalse min = {{ params.log_nfalse_min }}
log nFalse max = {{ params.log_nfalse_max }}
log ML nFalse min = {{ params.log_ml_nfalse_min }}
log ML nFalse max = {{ params.log_ml_nfalse_max }}
detlike min = {{ params.detlike_min }}
detlike max = {{ params.detlike_max }}
exposure min = {{ params.exposure_min }}
Ext. min = {{ params.ext_min }}
Ext. max = {{ params.ext_max }}
Class starts with = {{ params.class_startswith }}
CName contains = {{ params.cname_contains }}
Source category = {{ params.category }}
Exclude category = {{ params.exclude_category }}
Unclassified category = {{ params.category_unclassified }}
Gaia primary = {{ params.gaia_primary }}
Exclude survey = {{ params.exclude_survey }}
Exclude energy band = {{ params.exclude_band }}
Exclude log_nfalse = {{ params.exclude_log_nfalse }}
Turk possible = {{ params.turk_possible }}
Marshall = {{ params.marshall }}
<b>Coordinates</b>
Declination min = {{ params.dec_min }}
Declination max = {{ params.dec_max }}
Ecliptic latitude min = {{ params.ecl_lat_min }}
Ecliptic latitude max = {{ params.ecl_lat_max }}
</pre>
</div>
{% endif %}
<pre>
<b>ML_NFALSE, 3-12 keV (E5), Dec2023:</b>
false_01 s1-5_5 3.461e-04 1431 -3.4608 5.4739
false_02 s1-5_5 7.476e-04 1545 -3.1264 5.3191
false_03 s1-5_5 1.188e-03 1629 -2.9251 5.2616
false_05 s1-5_5 2.146e-03 1752 -2.6685 5.1637
false_10 s1-5_5 4.803e-03 1980 -2.3185 5.0364
<b>ML_NFALSE, 3-12 keV (E5), Nov2023:</b>
false_01 s1-5_5 3.461e-04 1427 -3.4608 5.4739
false_02 s1-5_5 7.476e-04 1541 -3.1264 5.3191
false_03 s1-5_5 1.180e-03 1622 -2.9282 5.2940
false_05 s1-5_5 2.100e-03 1745 -2.6778 5.1628
false_10 s1-5_5 4.780e-03 1970 -2.3206 5.0343
<b>ML_NFALSE, 3-12 keV, Oct2023:</b>
false_01 s1-5_5 3.469e-04 1431 -3.4598 5.4938
false_02 s1-5_5 7.547e-04 1550 -3.1222 5.3737
false_05 s1-5_5 2.140e-03 1763 -2.6695 5.1819
false_10 s1-5_5 4.849e-03 2000 -2.3144 5.0311
OBSOLETE:
<b>ML_NFALSE, 4-12 keV, Nov2023:</b>
false_01 s1-5_0 2.881e-04 1190 -3.5405 5.6796
false_02 s1-5_0 6.207e-04 1286 -3.2071 5.5552
false_05 s1-5_0 1.687e-03 1391 -2.7730 5.3530
false_10 s1-5_0 3.766e-03 1555 -2.4241 5.2647
<b>ML_NFALSE, 4-12 keV, Oct2023:</b>
false_01 s1-5_0 2.881e-04 1190 -3.5405 5.6796
false_02 s1-5_0 6.207e-04 1286 -3.2071 5.5552
false_05 s1-5_0 1.687e-03 1391 -2.7730 5.3530
false_10 s1-5_0 3.766e-03 1555 -2.4241 5.2647
<b>log_nfalse thresholds:</b>
nfalse, кол-во источников, log10(nfalse), sigma
<b>FALSE 1%</b>
s1-5_0 2.771e-04 1142 -3.5573 5.2225
s1-5_0 3.412e-04 1409 -3.4670 4.4774 (Jun 2023)
<b>FALSE 2%</b>
s1-5_0 6.091e-04 1245 -3.2153 5.0695
s1-5_0 7.196e-04 1484 -3.1429 5.2024 (Jun 2023)
<b>FALSE 5%</b>
s1-5_0 1.717e-03 1415 -2.7653 4.8608
s1-5_0 1.969e-03 1621 -2.7057 4.3679 (Jun 2023)
<b>FALSE 10%</b>
s1-5_0 4.324e-03 1780 -2.3641 4.3173 (Jun 2023)
s1-4_0 3.658e-03 1509 -2.4368 4.7026
s12_0 2.113e-03 868 -2.6751
s12_1 1.259e-03 519 -2.8999
s12_2 1.164e-03 479 -2.9341
s12_3 2.362e-04 100 -3.6268
s1_0 1.221e-03 502 -2.9134
s1_1 7.496e-04 310 -3.1252
s1_2 6.669e-04 275 -3.1760
s1_3 1.947e-04 76 -3.7107
s2_0 1.158e-03 480 -2.9362
s2_1 7.130e-04 295 -3.1469
s2_2 6.961e-04 285 -3.1573
s2_3 1.970e-04 76 -3.7055
<b>FALSE 15%</b>
s1-5_0 6.950e-03 1911 -2.1580 4.3509 (Jun 2023)
<!--
<b>FALSE 5%</b>
s1-4_0 1.594e-03 1314 -2.7974 4.8760
s12_0 8.859e-04 732 -3.0526
s12_1 5.265e-04 440 -3.2786
s12_2 4.996e-04 410 -3.3014
s12_3 1.010e-04 94 -3.9955
s1_0 5.129e-04 423 -3.2900
s1_1 3.451e-04 284 -3.4620
s1_2 3.027e-04 249 -3.5190
s1_3 8.420e-05 71 -4.0747
s2_0 4.937e-04 413 -3.3065
s2_1 3.160e-04 259 -3.5003
s2_2 2.977e-04 246 -3.5262
s2_3 6.956e-05 69 -4.1576
<b>FALSE 1%</b>
s1-4_0 2.574e-04 1056 -3.5895 5.2367
s12_0 1.487e-04 609 -3.8278
s12_1 9.153e-05 385 -4.0384
s12_2 8.320e-05 347 -4.0799
s12_3 2.559e-05 88 -4.5918
s1_0 8.874e-05 364 -4.0519
s1_1 6.189e-05 247 -4.2084
s1_2 4.945e-05 213 -4.3058
s1_3 1.461e-05 63 -4.8353
s2_0 8.420e-05 347 -4.0747
s2_1 5.957e-05 231 -4.2250
s2_2 5.414e-05 225 -4.2664
s2_3 1.154e-05 65 -4.9379
-->
</pre>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<hr>
<pre>{{ params.history|safe }}</pre>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<hr>
*Sources suitable for TUBITAK is taken by excluding <a href="https://ui.adsabs.harvard.edu/abs/2018ApJS..235....4O/abstract">Swift/BAT 105m (2018)</a>,
INTEGRAL Reference Catalog <a href="https://heasarc.gsfc.nasa.gov/W3Browse/integral/intrefcat.html">(last updated on 16 June 2019)</a> and <a href="https://heasarc.gsfc.nasa.gov/W3Browse/all/xteasscat.html">RXTE (2004)</a>.
</p>
</div></div></div>
{% endblock %}

View File

@@ -0,0 +1,115 @@
{% extends "artsurvey/base.html" %}
{% block header %}{% endblock %}
{% block content %}
<div class="container-fluid">
<div class="row">
<div class="col-sm-12">
<h3><strong>{{ user.first_name }} {{ user.last_name }}</strong> ({{ user }})</h3>
</div>
</div>
{% if user.artselection.sources.all.count %}
<div class="row">
<div class="col-sm-12">
<h3><span class="glyphicon glyphicon-star"></span> Art<b>Selection</b> [<a href="{% url 'artsurvey basket create' %}">+folder</a>]</h3>
<table class="table">
<thead>
<tr>
<th class="th-sm"></th>
<th class="th-sm">Name</th>
<th class="th-sm">Notes</th>
<th class="th-sm">Count</th>
<th class="th-sm"></th>
</tr>
</thead>
<tbody>
{% for basket in user.artbasket_set.all %}
<tr>
<td>{{ forloop.counter }}</td>
<td><a href="{{ basket.get_absolute_url }}">{{ basket }}</a></td>
<td>{{ basket.notes }}</td>
<td>{{ basket.get_sources_count }}</td>
<td><a href="{{ basket.get_update_url }}">edit</a> | <a href="{{ basket.get_delete_url }}">delete</a></td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<h3>Source Selection ({{ user.artselection.sources.all.count }})</h3>
<table class="table">
<thead>
<tr>
<th class="th-sm"></th>
<th class="th-sm">Name</th>
<th class="th-sm">Survey</th>
<th class="th-sm">CName</th>
<th class="th-sm">Notes</th>
<th class="th-sm">Follow up</th>
<th class="th-sm">Category</th>
<th class="th-sm">Type</th>
<th class="th-sm">Paper Notes</th>
<th class="th-sm">Papers</th>
<th class="th-sm">Files</th>
<th class="th-sm"></th>
</tr>
</thead>
<tbody>
{% for src in user.artselection.sources.all %}
<tr>
<td>{{ forloop.counter }}</td>
<td><a href="{{ src.get_absolute_url }}">{{ src.name }}</a></td>
<td>{{ src.survey }}</td>
<td>{% if src.cname %}{{ src.cname }}{% endif %}</td>
<td>{% if src.notes %}<span title="{{ src.notes }}">{{ src.notes|truncatechars:20 }}</span>{% endif %}</td>
<td>{% if src.follow_up %}<span title="{{ src.follow_up }}">{{ src.follow_up|truncatechars:20 }}</span>{% endif %}</td>
<td>{% if src.category %}{{ src.category }}{% endif %}</td>
<td>{{ src.get_otype }}</td>
<td>{% if src.notes_paper %}<span title="{{ src.notes_paper }}">{{ src.notes_paper|truncatechars:20 }}</span>{% endif %}</td>
<td>
{% for paper in src.catalog.all %}
{{ paper }},
{% endfor %}
</td>
<td>
{% for upload in src.uploads.all %}
<a title="{{ upload }}" href="{{ upload.get_download_url }}"><big><span class="glyphicon glyphicon-save-file"></span></big></a>
{% endfor %}
</td>
<td>
<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_remove_from_selection_profile_url }}">Remove</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
{% endif %}
<div class="row">
<div class="col-sm-12">
<h3>History</h3>
<pre>{{ user.artsurveyparams.history|safe }}</pre>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,109 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<a href="{% url 'artsurvey index' %}">Back to SRG.ArXiv</a>
<h3>Retrieve an ICRS object by using an online name resolving service to retrieve coordinates for the specified name using <a href="https://docs.astropy.org/en/stable/api/astropy.coordinates.get_icrs_coordinates.html#">get_icrs_coordinates</a>. By default, this will search all available databases until a match is found.</h3>
</p>
<p>HEALPix elements (nside=2048) are selected within <strong>maxdist</strong> parameter via healpix <a target="_blank" href="https://astropy-healpix.readthedocs.io/en/latest/cone_search.html">cone search <span class="glyphicon glyphicon-new-window"></span></a>. Then, all matches are selected within <strong>Rmax</strong> parameter.</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-4">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="/srgz/search" method="post">
{% csrf_token %}
<table class="table">
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Search" />
</form>
</div>
</p>
{% if notresolved %}
<div class="card">
<div class="card-body">
<h5 class="card-title">Not resolved</h5>
<p class="card-text">Failed to find <b>{{ form.name.value }}</b> in all available databases.</p>
</div>
</div>
{% endif %}
</div>
<div class="col-sm-8">
{% if ra %}
<p>
Requested coordinates: RA={{ ra|floatformat:4 }} Dec={{ dec|floatformat:4 }}
{% if skymap %}
are found in Plate {{ skymap }}
{% endif %}
</p>
{% endif %}
<h3>ART-XC sources</h3>
<table class="table" style="padding: 1px;">
<thead>
<th>Source</th>
<th>CName</th>
<th>Flux</th>
<th>Separation</th>
<th>Type</th>
<th>Notes</th>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td><a href="{{ src.get_absolute_url }}"><b>{{ src }}</b></a></td>
<td><b>{{ src.cname }}</b></td>
<td>{{ src.flux|stringformat:"1.2e" }}</td>
<td>{{ src.separation|floatformat:2 }}</td>
<td>
{{ src.get_otype }}
</td>
<td>
{% for paper in src.catalog.all %}
{{ paper }},
{% endfor %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,88 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<a href="{% url 'artsurvey index' %}">Back to SRG.ArXiv</a>
<h3>Search by name</h3>
<p>Limited by 100 records</p>
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-4">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="/srgz/search" method="post">
{% csrf_token %}
<table class="table">
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Search" />
</form>
</div>
</p>
</div>
<div class="col-sm-8">
<h3>ART-XC sources</h3>
<table class="table" style="padding: 1px;">
<thead>
<th></th>
<th>Source</th>
<th>CName</th>
<th>Flux</th>
<th>Type</th>
<th>Notes</th>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>{{ forloop.counter }}</td>
<td><a href="{{ src.get_absolute_url }}"><b>{{ src }}</b></a></td>
<td><b>{{ src.cname }}</b></td>
<td>{{ src.flux|stringformat:"1.2e" }}</td>
<td>
{{ src.get_otype }}
</td>
<td>
{% for paper in src.catalog.all %}
{{ paper }},
{% endfor %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,61 @@
{% extends "artsurvey/base.html" %}
{% load artsurvey_templates %}
{% block header %}
{% endblock %}
{% block content %}
{% if surveys %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<table id="ArtSurveySummaryTable" class="table" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm"></th>
<th class="th-sm">Survey</th>
{% for b in bands %}
<th class="th-sm">{{ b }}</th>
{% endfor %}
</tr>
<tr>
<th class="th-sm"></th>
<th class="th-sm"></th>
{% for b in bands %}
<th class="th-sm">(>5&sigma;)</th>
{% endfor %}
</tr>
</thead>
<tbody>
{% for s in surveys %}
<tr>
<td>{{ forloop.counter }}</td>
<td>{{ s }}
{% if s.notes %}<span title="{{ s.notes }}"><span class="glyphicon glyphicon-comment" style="color:red;"></span></span>{% endif %}
</td>
{% for b in bands %}
<td>{{ s|get_total:b}} ({{ s|get_total_5sigma:b}})</td>
{% endfor %}
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,169 @@
{% extends "artsurvey/base.html" %}
{% load heasarc_templates %}
{% load simbadescape %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-4">
<h3><a href="/artsurvey/catalog">{{ request.user.artsurveyparams.survey }}</a> {{ request.user.artsurveyparams.get_band_display }} ({{ request.user.artsurveyparams.band }})</h3>
<p>
{% if request.user.artsurveyparams.survey.parent %}<strong>Parent: {{ request.user.artsurveyparams.survey.parent }}</strong>{% endif %}{% if request.user.artsurveyparams.survey.children.count %}<strong>Children: {% for child in request.user.artsurveyparams.survey.children.all %}{{ child }}{% endfor %}</strong>{% endif %}
</p>
</div>
<div class="col-sm-2">
{% if ntotal %}<h3>Total {{ ntotal }}</h3>
<!--a href="{% url 'artsurvey csv selection' %}"><span class="glyphicon glyphicon-download"></span> Download selection</a-->
{% endif %}
</div>
<div class="col-sm-3">
</div>
<div class="col-sm-3">
</div>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container-fluid">
{% if histogram %}
<p>
<h4>HEASARC Matching Statistics within 40''</h4>
{% for key,value in histogram.items %}
<b>{{ key }}</b>: {{ value.total }} |
{% endfor %}
</p>
{% endif %}
{% if reverse %}
<p>
<h4>HEASARC Reverse Match Statistics (more than one match)</h4>
{% for key,value in reverse.items %}
{% if value.total > 1 %}
<b>{{ key }}</b>: {{ value.total }} ({{ value.list|safe }}) <br />
{% endif %}
{% endfor %}
</p>
{% endif %}
{% if srcs %}
<!--table class="table"-->
<table id="ArtSurveyTable" class="table" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm"></th>
<!--th class="th-sm"><span title="Survey">S</span></th>
<th class="th-sm"><span title="Energy band">e.</span></th-->
<th class="th-sm">Name</th>
<!--th class="th-sm" width="20%" ><span title="Simbad R < 40''">Type? (abridged<3)</span></th-->
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Flux</th>
<th class="th-sm">DETLIKE</th>
<th class="th-sm">CName</th>
<th class="th-sm">Class</th>
<th class="th-sm">Refs</th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
{% if src.exclude == False %}
<tr>
<td>N{{ forloop.counter|stringformat:"03d" }} </td>
<td>&&nbsp;
{% if src.cname == 'NEW X-RAY SOURCE' %}
{\bf <a target="_blank" href="{{ src.get_absolute_url }}">{{ src.name }}</a> }
{% else %}
<a target="_blank" href="{{ src.get_absolute_url }}">{{ src.name }}</a>
{% endif %}
</td>
<td>&&nbsp;{{ src.ra|floatformat:4 }}</td>
<td>&&nbsp;{{ src.dec|floatformat:4 }}</td>
<td>&&nbsp;{{ src.get_flux_str_m11power }}</td>
<td>&&nbsp;{{ src.get_detlike100 }}</td>
<td>&&nbsp;
{% if not src.cname == 'NEW X-RAY SOURCE' %}
{{ src.cname }}
{% endif %}
</td>
<td>
&&nbsp;{{ src.get_otype }}
</td>
<td>
&&nbsp;{% if src.refs %}{{ src.refs }}{% endif %} \\
</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfooter>
</tfooter>
</table>
<h3>References</h3>
{% for key, value in refdict.items %}
({{ value }}) {{ key }},
{% endfor %}
<h3>Paper Notes</h3>
<pre>
{% for src in srcs %}{% if src.notes_paper %}\subsection{ {{ src.name }} }
{{ src.notes_paper|safe }}<br>{% endif %}{% endfor %}
</pre>
<h3>Bibtex for Paper Notes</h3>
<pre>
{% for bib in bibtex_paper %}
{{ bib|safe }}<br>
{% endfor %}
</pre>
<h3>Bibtex for Source Papers</h3>
<pre>
{% for bib in bibtex %}
{{ bib|safe }}<br>
{% endfor %}
</pre>
{% endif %}
</div>
{% endblock %}

View File

@@ -0,0 +1,77 @@
{% extends "artsurvey/base.html" %}
{% load heasarc_templates %}
{% load simbadescape %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
</div>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<h3>Источники, переданные турецким коллегам. Отсортировано по RA.</h3>
{% if srcs %}
<p>
<!--table class="table"-->
<table id="ArtSurveyTable" class="table" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm"></th>
<!--th class="th-sm"><span title="Survey">S</span></th>
<th class="th-sm"><span title="Energy band">e.</span></th-->
<th class="th-sm">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Sources</th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>{{ forloop.counter }}</td>
<td>
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b></a>
<a style="color:red;" title="MetaSource" href="{{ src.get_absolute_url }}">M{{ src.artsurveysource_set.all.count }}</a>
{% if src.comments.count %}<span title="{% for comment in src.get_comments %}{{ comment }} | {% endfor %}"><span class="glyphicon glyphicon-comment" style="color:red;"></span>{% endif %}
</td>
<td>{{ src.ra|floatformat:4 }}</td>
<td>{{ src.dec|floatformat:4 }}</td>
<td>
{% for s in src.artsurveysource_set.all %}
{% if s.turkish %}<span style="color:red;"><b>T</b></span>{% else %}&nbsp;{% endif %} <a href="{{ s.get_absolute_url }}">{{ s.name }}</a> {{ s.survey }} {{ s.band.slug }} {% if s.turkish_date %}<b>{{ s.turkish_date|date:"d.m.Y" }}</b>{% endif %}<br>
{% endfor %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</div>
{% endblock %}

View File

@@ -0,0 +1,49 @@
{% extends "artsurvey/base.html" %}
{% load heasarc_templates %}
{% block header %}{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2>ArtSurvey {{ survey }}</h2>
<table class="table">
{% for type in types %}
<tr>
<td>{{ type.class_id }}</td>
<td><a href="/artsurvey/type/{{ type.class_id }}/show">{{ type }}</a></td>
<td>
{% if survey %}
{% call_artsurvey_types_count type survey %}
{% else %}
{{ type.get_artsurvey_count_all }}
{% endif %}
</td>
</tr>
{% endfor %}
</table>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h3>Full list of HEASARC object <a target="_blank" href="{% url 'heasarc object types' %}">Types<sup><span class="glyphicon glyphicon-new-window"></span> </sup></a></h3>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,42 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3><a href="{{ src.get_absolute_url }}">{{ src }}</a></h3>
<strong>Type:</strong> {{ src.object_class }},
<strong>CName:</strong> {{ src.cname }}
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="" method="post">
{% csrf_token %}
<table>
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,30 @@
{% extends "artsurvey/base.html" %}
{% load i18n %}
{% block header %}{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<h4>{% trans 'Attach file to' %}: <a href="{{ source.get_absolute_url }}">{{ source }}</a></h4>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="" method="post">
{% csrf_token %}
<h5>
<table>
{{ form }}
</table>
</h5>
<input type="submit" class="btn btn-primary" value="{% trans 'Upload' %}" />
</form>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,40 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3><a href="{{ src.get_absolute_url }}">{{ src }}</a></h3>
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="/srgz/search" method="post">
{% csrf_token %}
<table class="table">
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,32 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3><a href="{{ src.get_absolute_url }}">{{ src }}</a></h3>
<strong>Type:</strong> {{ src.object_class }},
<strong>CName:</strong> {{ src.cname }}
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,139 @@
{% extends "base.html" %}
{% load heasarc_templates %}
{% block header %}
<!--a class="btn btn-success" role="button" href="/erotrans">Daily source lists</a>
<a class="btn btn-success" role="button" href="{% url 'show all transeints' %}">All transients</a-->
ZTF Alerts: <a href="https://mars.lco.global/">MARS</a>, ALeRCE <a href="https://alerce.online/">ZTF Explorer</a>, <a href="https://snhunter.alerce.online/"></a> ZTF Data <a href="https://zwickytransientfacility.github.io/ztf-avro-alert/schema.html">schema</a>
{% endblock %}
{% block precontent %}{% endblock %}
{% block content %}
{% if cat %}
<h3>Source list <a href="{{ cat.get_absolute_url }}">{{ cat.obsid }}</a> ({{ cat.nrows }} rows) </h3>
<p><strong>Dates:</strong> {{ cat.start|date:"d M Y H:i" }} - {{ cat.stop|date:"d M Y H:i" }},
<strong>MJD:</strong> {{ cat.mjd_start|floatformat:4 }} - {{ cat.mjd_stop|floatformat:4 }},
<strong>eRoDays:</strong> {{ cat.eroday_start }} - {{ cat.eroday_stop }},
<strong>Created</strong> {{ cat.created|date:"d.m.y H:i" }}</p>
<h4><a href="{{ cat.get_absolute_url_match }}">Matched only ({{ match_count }})</a> |
<a href="{{ cat.get_absolute_url_nomatch }}">Not matched ({{ nomatch_count }})</a> |
<a href="{{ cat.get_absolute_url_transients }}">Transients ({{ trans_count }})</a>
{% if gaia_match_count %}| <a href="{{ cat.get_absolute_url_gaia }}">Gaia ({{ gaia_match_count }})</a>{% endif %}
</h4>
{% if srcs %}
<!--table class="table"-->
<table id="dterotrans" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">N/Match</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">DET_LIKE_0</th>
<th class="th-sm">ML_FLUX_0</th>
<th class="th-sm">Rate</th>
<th class="th-sm">Flux</th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b></a> {% if src.rosat_transient %}(ROSAT){% endif %}
</td>
<td>{{ src.heasarc.all.count }}</b></td>
<td>{{ src.ra|floatformat:3 }}</td>
<td>{{ src.dec|floatformat:2 }}</td>
<td>{{ src.DET_LIKE_0|floatformat:2 }}</td>
<td>{{ src.ML_FLUX_0|floatformat:2 }}</td>
<td>{{ src.rate|floatformat:4 }}</td>
<td>{{ src.flux }} </td>
</tr>
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Source name</th>
<th>N/Match</th>
<th>RA</th>
<th>Dec</th>
<th>Healpix</th>
<th>S/N</th>
<th>Rate</th>
<th>Flux</th>
</tr-->
</tfoot>
</table>
{% endif %}
{% endif %}
{% if ztf_alerts %}
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "GAL",
survey: "P/DSS2/color",
fov: 197, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
aladin.createImageSurvey("DIRBE_4","DIRBE_4", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/DIRBE_4",'galactic',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
aladin.getBaseImageLayer().getColorMap().update('rainbow');
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("DIRBE_4");
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var cat1 = A.catalog({shape: 'circle', name: 'ZTF alerts', color: 'white', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
{% for src in ztf_alerts %}
cat1.addSources(A.source({{ src.ra|safe }}, {{ src.dec|safe }}, {name: '<a href="{{ src.get_absolute_url }}">{{ src.oid }}', RA: '{{ src.ra|floatformat:4 }}', Dec: '{{ src.meandec|floatformat:4 }}', Healpix: '{{ src.healpix }}'}));
{% endfor %}
aladin.addCatalog(cat1);
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,45 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3>Add magnitude for <b>{{ src }}</b>, which is optical counterpart of <a href="{{ base.get_base_url }}">{{ base }}</a></h3>
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="/srgz/search" method="post">
{% csrf_token %}
<table class="table">
{{ form }}
</table>
<p>{{ src.notes }}</p>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,41 @@
{% extends "base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if alerce %}
<h4>Specific {{ alerce.oid }} fields:</h4>
<p><a href="{{ alerce.get_alerce_url }}">ALeRCE</a> <!--a href="{{ alerce.get_tns_url }}">Transient Name Server</a--></p>
<p><strong>RA/Dec:</strong> {{ alerce.ra|floatformat:3 }}, {{ alerce.dec|floatformat:3 }}, <strong>nobs:</strong> {{ alerce.nobs }}</p>
<p>Early Classifier: <strong>{{ alerce.get_early_class }}</strong> ({{ alerce.classearly }}) with probability of {{ alerce.pclassearly|floatformat:2 }}.</p>
{% if alerce.classrf %}<p>Late Classifier: <strong>{{ alerce.get_late_class }}</strong> ({{ alerce.classrf }}) with probability of {{ alerce.pclassrf|floatformat:2 }}.</p>{% endif %}
<p>Detected between {{ alerce.firstdate|date:"d.m.Y H:i" }} - {{ alerce.lastdate|date:"d.m.Y H:i" }} (<strong>MJD:</strong> {{ alerce.firstmjd|floatformat:4 }} - {{ alerce.lastmjd|floatformat:4 }}).</p>
<p>
<h4>Magnitute</h4>
mean_magap_g = {{ alerce.mean_magap_g|floatformat:2 }} {% if alerce.sigma_magap_g %}+/- {{ alerce.sigma_magap_g|floatformat:2 }}{% endif %}<br>
mean_magap_r = {{ alerce.mean_magap_r|floatformat:2 }} {% if alerce.sigma_magap_r %}+/- {{ alerce.sigma_magap_r|floatformat:2 }}{% endif %}<br>
mean_magpsf_g = {{ alerce.mean_magpsf_g|floatformat:2 }} {% if alerce.sigma_magpsf_g %}+/- {{ alerce.sigma_magpsf_g|floatformat:2 }}{% endif %}<br>
mean_magpsf_r = {{ alerce.mean_magpsf_r|floatformat:2 }} {% if alerce.sigma_magpsf_r %}+/- {{ alerce.sigma_magpsf_r|floatformat:2 }}{% endif %}<br>
</p>
{% if alerce.survey %}
<h4>Close to SRG survey</h4>
{% for survey in alerce.survey.all %}
<a href="{{ survey.get_absolute_url }}">{{ survey.experiment }}</a> {{ survey.start|date:"d.m.y H:i" }} - {{ survey.stop|date:"d.m.y H:i" }}<br>
{% endfor %}
{% endif %}
<p>healpix_source: {{ alerce.healpix }}, healpix_plate: {{ alerce.healpix_plate }}, <strong>loaded:</strong> {{ alerce.created|date:"d.m.Y H:i" }}</p>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,49 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3>Update optical counterpart <b>{{ src }}</b> of <a href="{{ src.get_base_url }}">{{ base }}</a></h3>
</p>
<p>
<h4>Magnitudes [<a title="add magnitude" href="{{ src.get_add_magn_url }}/{{ base.pk }}">+</a>]</h4>
{% for magn in src.magnitudes.all %}
<b>{{ magn.magn }}</b> {{ magn.band }} [<a href="{{ magn.get_delete_url }}/{{ src.pk }}">del</a>],
{% endfor %}
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="/srgz/search" method="post">
{% csrf_token %}
<table class="table">
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,40 @@
{% extends "mdb.html" %}
{% load i18n %}
{% block header %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<h3>Attach optical counterpart to <a href="{{ src.get_base_url }}">{{ src }}</a></h3>
</p>
</div>
</div>
{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-12">
<p>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
<form action="/srgz/search" method="post">
{% csrf_token %}
<table class="table">
{{ form }}
</table>
<input type="submit" class="btn btn-primary" value="Submit" />
</form>
</div>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

666
Templates/base.html Normal file
View File

@@ -0,0 +1,666 @@
{% load heasarc_templates %}
{% load srgcat_templates %}
{% load i18n %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>{% block title %}SRG ArXiv{% endblock %}</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<META NAME="author" CONTENT="Roman Krivonos, email: krivonos [at] iki.rssi.ru">
<META NAME="description" CONTENT="High Energy Astrophysics Department at IKI RAN (Moscow, Russia)">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.js"></script>
<!-- MDBootstrap Datatables -->
<link href="/static/MDB-Free/css/addons/datatables.min.css" rel="stylesheet">
<script type="text/javascript" src="/static/MDB-Free/js/addons/datatables.min.js"></script>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.1/css/all.css" integrity="sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf" crossorigin="anonymous">
<!-- include Aladin Lite CSS file in the head section of your page -->
<link rel="stylesheet" href="https://aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.css" />
<link rel="stylesheet" href="/static/css/style.css" />
{% block javascripts %}{% endblock %}
</head>
<body>
<script>
$(document).ready(function () {
$('[data-toggle="tooltip"]').tooltip()
$('#dtsrgcat').DataTable({
"order": [[ 5, "desc" ]],
});
$('#dtheasarc').DataTable({
"order": [[ 7, "asc" ]],
});
$('#dtheasarcxraymaster').DataTable({
"order": [[ 2, "asc" ]],
});
$('#dtheasarcchandramaster').DataTable({
"order": [[ 2, "asc" ]],
});
$('#dterosurvey').DataTable({
"order": [[ 2, "asc" ]],
});
$('#dtsimbad').DataTable({
"order": [[ 5, "asc" ]],
});
$('#dterotrans').DataTable({
"order": [[ 2, "asc" ]],
});
$('#dterotranscat').DataTable({
"order": false,
});
$('#srgcatstats').DataTable({
"order": [[ 5, "desc" ]],
});
$('#dtalltransients').DataTable({"order":[[6, "desc"]]});
$('#dttrans').DataTable();
$('#dtfadedtransients').DataTable();
$('#dtztfalerts').DataTable({
"order": false,
});
$('#dtddumps').DataTable({
"order": false,
});
$('#dtskymapsources').DataTable({
"order": [[ 10, "desc" ]],
"scrollX": true,
});
$('.dataTables_length').addClass('bs-select');
$('#dtgaia').DataTable({
"order": [[ 3, "asc" ]],
});
$('#dtalerce').DataTable();
$('.dataTables_length').addClass('bs-select');
});
</script>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="/"><span class="glyphicon glyphicon-list"></span> SRG/ArXiv</a>
</div>
<ul class="nav navbar-nav">
<!--li><a href="/heasarc"><i class="fa fa-rocket"></i> HEASARC</a></li-->
<!--li><a href="/artsim"><i class="fa fa-rocket"></i> ArtSim</a></li-->
<!--li><a href="/monthplan/obsid"><span class="glyphicon glyphicon-search"></span> Search</a></li-->
<!--li><a href="/admin"><span class="glyphicon glyphicon-cog"></span> Django</a></li-->
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Projects
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/monthplan">Scheduling</a></li>
<li><a href="/erosurvey">eRosita survey</a></li>
<li><a href="/erotrans">eRosita transients</a></li>
<li><a href="/srgcat">ART-XC survey</a></li>
<li><a href="/srgcat/erosita">ART-XC - eRosita cross-match</a></li>
<li><a href="/artsim">ART-XC simulations</a></li>
<li><a href="/heasarc">HEASARC catalogs</a></li>
<li><a href="/astrobasis">ZTF alerts</a></li>
</ul>
</li>
<li><a href="/docs/index.html"><span class="glyphicon glyphicon-book"></span> Docs</a></li>
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-wrench"></span> Tools
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/target/">Lookup target in survey</a></li>
<li><a href="{% url 'show sky map form' %}">Show SkyMap plate</a></li>
<li><a href="/srgcat/srga">Get SRG Name</a></li>
<!--li><a href="/docs/index.html"><span class="glyphicon glyphicon-book"></span> Documentation</a></li-->
<li><a href="/admin"><span class="glyphicon glyphicon-cog"></span> Django</a></li>
<li><a href="http://arxiv.srg.rssi.ru:15672"><span class="glyphicon glyphicon-cog"></span> RabbitMQ</a></li>
</ul>
</li>
{% if user.is_authenticated %}
<li class="dropdown">
<a class="dropdown-toggle navbar-right" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-user"></span> {% trans 'Groups' %}
<span class="caret"></span></a>
<ul class="dropdown-menu">
{% for group in user.groups.all %}
<li><a href="/groups/{{ group.pk }}/info">{{ group }}</a></li>
{% endfor %}
<li><a href="/stats/">Web Analytics</a></li>
</ul>
</li>
{% endif %}
</ul>
{% if user.is_authenticated %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/logout">{{ user.email }} <span class="glyphicon glyphicon-log-out"></span> Sign Out</a>
{% else %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/login"><span class="glyphicon glyphicon-log-in"></span> Sign In</a>
{% endif %}
{% if today %}<a class="btn btn-light navbar-btn navbar-right disabled">{{ today|date:"d M Y H:i:s" }} MSK</a>{% endif %}
</div>
</nav>
<div class="container-fluid">
{% block header %}{% endblock %}
</div>
<div class="container-fluid">
{% block precontent %}
<h3>ART-XC sources detected on the accumulated sky map <a href="{% url 'skymap sources csv' %}"><span class="glyphicon glyphicon-download"></span></a></h3>
<div class="row">
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<p class="card-text">
<h4 class="card-title">Information</h4>
{% if catalog %}<h4>Catalog</h4>{{ catalog }}{% endif %}
{% if dump %}
<h4>Dump</h4> <a href="{{ dump.get_absolute_url }}">{{ dump }}</a><br /><strong>Date</strong> {{ dump.date|date:"d M Y H:i" }}
{% endif %}
{% if survey %} <h4>Survey</h4> <a href="{{ survey.get_absolute_url }}">{{ survey }}</a>{% endif %}
</p>
{% if ntotal %}<p><h4>Statistics</h4> Total <strong>{{ ntotal }}</strong> items</p>{% endif %}
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<p class="card-text">
<h4 class="card-title">Catalogs cross-match</h4>
Filter: <a href="{% url 'art-xc survey index' %}">All</a> |
<a href="{% url 'skymap sources heasarc' %}">Heasarc</a> |
<a href="{% url 'skymap sources simbad' %}">Simbad</a> |
<a href="{% url 'skymap sources gaia' %}">Gaia</a><br />
<!-- Show <a href="{% url 'skymap sources latest' %}"><b>newest</b></a> sources added in the latest data dump. -->
</p>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<p class="card-text">
<h4 class="card-title">All-sky X-ray surveys</h4>
<span class="glyphicon glyphicon-star"></span>
<a href="{% url 'skymap sources integral2020' %}">INTEGRAL 2020</a>
<br />
<span class="glyphicon glyphicon-star"></span>
<a href="{% url 'skymap sources intrefcat' %}">INTEGRAL</a>
<small>(<a target="_blank" href="https://heasarc.gsfc.nasa.gov/W3Browse/integral/intrefcat.html">HEASARC <span class="glyphicon glyphicon-new-window"></span></a>, <a target="_blank" href="http://www.isdc.unige.ch/integral/science/catalogue">ISDC <span class="glyphicon glyphicon-new-window"></span></a>)</small>
<a href="{% url 'skymap sources intrefcat csv' %}"><span class="glyphicon glyphicon-download"></span></a>
<br />
<span class="glyphicon glyphicon-star"></span>
<a href="{% url 'skymap sources swiftbat105m' %}">Swift-BAT</a>
<small>(105 months, <a target="_blank" href="https://swift.gsfc.nasa.gov/results/bs105mon/">GSFC <span class="glyphicon glyphicon-new-window"></span></a>)</small>
<a href="{% url 'skymap sources swiftbat105m csv' %}"><span class="glyphicon glyphicon-download"></span></a>
<br />
<span class="glyphicon glyphicon-star"></span>
<a href="{% url 'skymap sources maxi gsc' %}">MAXI/GSC</a>
<small>(<a target="_blank" href="https://heasarc.gsfc.nasa.gov/W3Browse/maxi/maxigschgl.html">HEASARC <span class="glyphicon glyphicon-new-window"></span></a>)</small>
<a href="{% url 'skymap sources maxi gsc csv' %}"><span class="glyphicon glyphicon-download"></span></a>
<br />
<span class="glyphicon glyphicon-star"></span>
<a href="{% url 'skymap sources 3maxi' %}">3MAXI</a>
<small>(<a target="_blank" href="http://cdsarc.u-strasbg.fr/viz-bin/Cat?J/ApJS/238/32">VizieR <span class="glyphicon glyphicon-new-window"></span></a>)</small>
<a href="{% url 'skymap sources 3maxi csv' %}"><span class="glyphicon glyphicon-download"></span></a>
<br />
<span class="glyphicon glyphicon-star"></span>
<a href="{% url 'skymap sources rass2rxs' %}">ROSAT</a>
<small>(<a target="_blank" href="https://heasarc.gsfc.nasa.gov/W3Browse/rosat/rass2rxs.html">HEASARC <span class="glyphicon glyphicon-new-window"></span></a>)</small>
<a href="{% url 'skymap sources rass2rxs csv' %}"><span class="glyphicon glyphicon-download"></span></a>
<br />
<span class="glyphicon glyphicon-star"></span>
<a href="{% url 'skymap sources xmmsl2' %}">XMMSL2</a>
<small>(<a target="_blank" href="https://heasarc.gsfc.nasa.gov/W3Browse/xmm-newton/xmmslewful.html">HEASARC <span class="glyphicon glyphicon-new-window"></span></a>)</small>
<a href="{% url 'skymap sources xmmsl2 csv' %}"><span class="glyphicon glyphicon-download"></span></a>
<br />
<span class="glyphicon glyphicon-star"></span>
<a href="{% url 'skymap sources xss' %}">RXTE</a>
<small>(<a target="_blank" href="https://heasarc.gsfc.nasa.gov/W3Browse/xte/xteasscat.html">HEASARC <span class="glyphicon glyphicon-new-window"></span></a>)</small>
<a href="{% url 'skymap sources xss csv' %}"><span class="glyphicon glyphicon-download"></span></a>
<br />
<a href="{% url 'skymap sources exclude allsky' %}"><em>Exclude all above</em></a>
<a href="{% url 'skymap sources exclude allsky csv' %}"><span class="glyphicon glyphicon-download"></span></a><br />
</p>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<p class="card-text">
<h4 class="card-title">Selections
<small>[<a href="{% url 'edit all selections' %}">edit</a>]</small>
<small>[<a href="{% url 'create new selection' %}"><span class="glyphicon glyphicon-plus"></span></a>]</small>
</h4>
{% if selections %}
{% for selection in selections %}
{% if selection.public %}<span class="glyphicon glyphicon-eye-open"></span>
{% else %}
<span class="glyphicon glyphicon-eye-close"></span>
{% endif %}
[{{ selection.slug }}] <a href="{{ selection.get_absolute_url }}">{{ selection }} ({{ selection.skymap_sources.count }})</a>
<br />
{% endfor %}
{% endif %}
</p>
{% if selection %}
<p>
<h4>Selection: [{{ selection.slug }}] <a href="{{ selection.get_download_url }}"><span class="glyphicon glyphicon-download"></span></a></h4>
{% endif %}
</p>
<p>
<h4>Session parameters <small>[<a href="{% url 'user session parameters' %}">edit</a>]</small></h4>
<pre>Sign. threshold = {{ request.user.session.sign_threshold }}</pre>
{% if request.user.session.target_ra and request.user.session.target_dec %}
<pre><span class="glyphicon glyphicon-screenshot"></span> Target {{ request.user.session.target_ra }}<sup>RA</sup> {{ request.user.session.target_dec }}<sup>Dec</sup></pre>
{% endif %}
</p>
</div>
</div>
</div>
</div>
</div>
{% if skymap_sources and user.is_authenticated %}
<!--p>Data dump <a href="{{ dump.get_absolute_url }}">{{ dump }}</a> ({{ dump.date|date:"d M Y H:i:s" }}) {% if survey %} Survey <a href="{{ survey.get_absolute_url }}">{{ survey }}</a>{% endif %}</p-->
<!--p>Filter:
<a href="{% url 'art-xc survey index' %}">All</a> |
<a href="{% url 'skymap sources heasarc' %}">Heasarc</a> |
<a href="{% url 'skymap sources simbad' %}">Simbad</a> |
<a href="{% url 'skymap sources gaia' %}">Gaia</a> |
<a href="{% url 'skymap sources latest' %}"><b>Latest</b></a></p-->
{% if dump %}<pre>{{ dump.get_catalog_absolute_path }}</pre>{% endif %}
<table id="dtskymapsources" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<!--th class="th-sm">#</th-->
<th class="th-sm">Name</th>
<th class="th-sm">Match</th>
<th class="th-sm" width="20%" >Type? (abridged<3)</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Cnts</th>
<th class="th-sm">Expo</th>
<!--th class="th-sm">Rate</th-->
<th class="th-sm">Flux</th>
<th class="th-sm">Sign.</th>
<!--th class="th-sm">log10(nFalse)</th-->
<th class="th-sm">SkyMap</th>
<!--th class="th-sm">Latest update</th-->
<th class="th-sm">Selection</th>
</tr>
</thead>
<tbody>
{% for src in skymap_sources %}
<tr>
<!--td>{{forloop.counter}}</td-->
<td><a target="_blank" href="{{ src.get_absolute_url }}">{{ src.name }}</a> | <a data-toggle="tooltip" data-placement="top" title="Lookup target position in survey" href="{% url 'target survey GET' %}?ra={{ src.ra|safe }}&dec={{ src.dec|safe }}"><span class="glyphicon glyphicon-flag"></span></a>
<!--small>
{% if src.get_integral_count > 0 %}
| <b>INTEGRAL</b>
{% endif %}
{% if src.get_swiftbat_count > 0 %}
| <b>Swift</b>
{% endif %}
{% if src.get_4xmm_count > 0 %}
| <b>4XMM</b>
{% endif %}
{% if src.get_rosat_count > 0 %}
| <b>ROSAT</b>
{% endif %}
</small-->
<!--{% if src.gaia.all.count %}
| <b>Gaia</b>
{% endif %}-->
</td>
<td>
<b>{{ src.heasarc.all.count }}</b>
</td>
<td><p>
{% for simsrc in src.simbad.all|slice:":3" %}
{% if simsrc.obj_class %}{{ simsrc.obj_class }} {% if simsrc.is_redshift_real %}{% if simsrc.z > 0 %}<strong><span style="color:red;">z={{ simsrc.z }}</span></strong> {% endif %}{% endif %}|{% endif %}
{% endfor %}
{% with count=src.simbad.all.count %}
{% if count > 3 %}<strong>(+{{ count|add:"-3" }})</strong>{% endif %}
{% endwith %}
{% if src.simbad_notfound %}
<strong></strong>
{% endif %}
{% if src.simbad_failed %}
<strong>Aborted</strong>
{% endif %}
</p>
</td>
<td>{{ src.ra|floatformat:5 }}</td>
<td>{{ src.dec|floatformat:5 }}</td>
<td>{{ src.cnts|floatformat:1 }}</td>
<td>{{ src.exptime|floatformat:0 }}</td>
<td>{{ src.flux|stringformat:"1.2e" }}</td>
<td>{{ src.sig|floatformat:2 }}</td>
<!--td>{{ src.get_log10_nfalse|floatformat:2 }}</td-->
<td>
<!--a href="{{ src.skymap.get_absolute_url }}">{{ src.skymap }}</a-->
<a href="/srgcat/{{ src.skymap.pk }}/skymap_radec/{{ src.ra|safe }}/{{ src.dec|safe }}/">{{ src.skymap }}</a>
</td>
<td>
{% if selection %}
<a class="btn btn-danger btn-sm" role="button" href="{{ selection.get_absolute_url }}/{{ src.pk }}/delete">{{ selection.slug }} <span class="glyphicon glyphicon-remove"></span></a>
{% else %}
{% for selection in selections %}
{% is_skymapsource_in_selection selection src as selected %}
{% if selected %}
<a class="btn btn-danger btn-sm" role="button" href="{{ selection.get_absolute_url }}/{{ src.pk }}/delete">{{ selection.slug }} <span class="glyphicon glyphicon-remove"></span></a>
{% else %}
<a class="btn btn-warning btn-sm" role="button" href="{{ selection.get_absolute_url }}/{{ src.pk }}/add">{{ selection.slug }} <span class="glyphicon glyphicon-plus"></span></a>
{% endif %}
{% endfor %}
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
<tfooter>
<tr>
<th class="th-sm"></th>
<th class="th-sm">Heasarc (R<40'')</th>
<th class="th-sm">Simbad (R<40'')</th>
<th class="th-sm">J2000</th>
<th class="th-sm">J2000</th>
<th class="th-sm">cts</th>
<th class="th-sm">s</th>
<!--th class="th-sm">cts/s</th-->
<th class="th-sm">erg/s/cm2</th>
<th class="th-sm"></th>
<th class="th-sm"></th>
<!--th class="th-sm"></th-->
<!--th class="th-sm"></th-->
<th class="th-sm"></th>
</tr>
</tfooter>
</table>
<hr />
{% endif %}
{% endblock %}
</div>
<div class="container">
{% if erosurveys and user.is_authenticated and user|has_group:"srg-erosita-survey" %}
<h3>SRG/eRosita surveys:</h3>
<ul>
{% for cat in erosurveys %}
<li>{{ cat.obsid }} <a href="{{ cat.get_absolute_url }}">{{ cat.name }}</a> ({{ cat.nrows }})</li>
{% endfor %}
</ul>
{% endif %}
{% if erotrans and user.is_authenticated and user|has_group:"srg-erosita-transients" %}
<h3>SRG/eRosita daily source lists ({{ ntotal }}):</h3>
<table id="dterotranscat" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Start</th>
<th class="th-sm">Stop</th>
<th class="th-sm">ObsID</th>
<th class="th-sm">N/rows</th>
<th class="th-sm">N/matched</th>
<th class="th-sm">N/Transients</th>
<th class="th-sm">Created</th>
</tr>
</thead>
<tbody>
{% for cat in erotrans %}
<tr>
<td>{{ cat.start|date:"d M Y" }}</td>
<td>{{ cat.stop|date:"d M Y" }}</td>
<td><a href="{{ cat.get_absolute_url }}">{{ cat.obsid }}</a></td>
<td>{{ cat.nrows }}</td>
<td>{{ cat.nmatched }}</td>
<td>{{ cat.ntransients }}</td>
<td>{{ cat.created|date:"d.m.y H:i" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot></tfoot>
</table>
{% endif %}
{% if ztf_ntotal and user.is_authenticated %}
<h3><a href="{% url 'ztf index' %}">ZTF Alerts</a> ({{ ztf_ntotal }}):</h3>
<p>
EarlyClassifier: <a href="{% url 'ztf alerce agn early' %}">AGN</a> {% if agn_count %}({{ agn_count }}){% endif %} |
<a href="{% url 'ztf alerce sn early' %}">SN Candidate</a> {% if sn_count %}({{ sn_count }}){% endif %} |
<a href="{% url 'ztf alerce vs early' %}">Variable Star</a> {% if vs_count %}({{ vs_count }}){% endif %} |
<a href="{% url 'ztf alerce asteroid early' %}">Asteroid</a> {% if asteroid_count %}({{ asteroid_count }}){% endif %} |
<a href="{% url 'ztf alerce bogus early' %}">Bogus</a> {% if bogus_count %}({{ bogus_count }}){% endif %}
</p>
<table id="dtztfalerts" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Alert</th>
<th class="th-sm">First</th>
<th class="th-sm">Last</th>
<th class="th-sm">RA/Dec</th>
<th class="th-sm">Class</th>
<th class="th-sm">g</th>
<th class="th-sm">r</th>
<th class="th-sm">Survey</th>
<th class="th-sm">Loaded</th>
</tr>
</thead>
<tbody>
{% for ztf in ztf_alerts %}
<tr>
<td><a href="{{ ztf.get_absolute_url }}">{{ ztf.oid }}</a></td>
<td>{{ ztf.firstdate|date:"d.m.y H:i" }}</td>
<td>{{ ztf.lastdate|date:"d.m.y H:i" }}</td>
<td>{{ ztf.ra|floatformat:3 }}, {{ ztf.dec|floatformat:3 }}
<a data-toggle="tooltip" data-placement="top" title="Lookup target position in survey" href="{% url 'target survey GET' %}?ra={{ ztf.ra|safe }}&dec={{ ztf.dec|safe }}"><span class="glyphicon glyphicon-flag"></span></a>
</td>
<td>
{{ ztf.get_early_class }} ({{ ztf.pclassearly|floatformat:2 }})
{% if ztf.classrf %}
<strong>{{ ztf.classrf }}</strong>
{% endif %}
</td>
<td>{{ ztf.mean_magpsf_g|floatformat:1 }}</td>
<td>{{ ztf.mean_magpsf_r|floatformat:1 }}</td>
<td>
{% if ztf.survey %}
{% for survey in ztf.survey.all %}
<a data-toggle="tooltip" data-placement="top" title="Show this survey block" href="{{ survey.get_absolute_url }}">{{ survey.experiment }}</a> {{ survey.start|date:"d.m.y H:i" }} - {{ survey.stop|date:"d.m.y H:i" }}<br>
{% endfor %}
{% endif %}
</td>
<td>{{ ztf.created|date:"d.m.y H:i" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
<tr>
<th></th>
<th>MSK</th>
<th>MSK</th>
<th>J2000</th>
<th>(Prob)</th>
<th>mag</th>
<th>mag</th>
<th>MSK</th><th>MSK</th>
</tr>
</tfoot>
</table>
{% endif %}
{% if artcats and user.is_authenticated and user|has_group:"srg-artxc-survey" %}
<!--
<h3>Loaded SRG/ART-XC catalogs:</h3>
<ul>
{% for cat in artcats %}
<li><a href="{{ cat.get_absolute_url }}">{{ cat.name }}</a></li>
{% endfor %}
</ul>
-->
{% endif %}
{% block heasarcbase %}
{% if heasarc %}
<button onclick="goBack()">Go Back</button>
<script>
function goBack() {
window.history.back();
}
</script>
<h3>{{ heasarc.description }}</h3>
<table class="table">
<thead>
<tr>
<th scope="col">Name</th>
<th scope="col">RA</th>
<th scope="col">Dec</th>
<th scope="col">Lon</th>
<th scope="col">Lat</th>
<th scope="col">Healpix</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<a href="{{ heasarc.get_absolute_url }}"><b>{{ heasarc.name }}</b></a>
</td>
<td>{{ heasarc.ra|floatformat:3 }}</td>
<td>{{ heasarc.dec|floatformat:2 }}</td>
<td>{{ heasarc.lii|floatformat:3 }}</td>
<td>{{ heasarc.bii|floatformat:2 }}</td>
<td>{{ heasarc.healpix }}</td>
</tr>
</tbody>
</table>
{% endif %}
{% endblock %}
{% block backref %}
{% if erotrans_set %}
<h4>Back reference to eRosita daily source lists (EroTrans)</h4>
<ul>
{% for src in erotrans_set %}
<li><a href="{{ src.get_absolute_url }}">{{ src.name }}</a>
from <a href="{{ src.catalog.get_absolute_url }}">{{ src.catalog.obsid }}</a>,
<strong>Dates:</strong> {{ src.catalog.start|date:"d M Y" }} - {{ src.catalog.stop|date:"d M Y" }}
</li>
{% endfor %}
</ul>
{% endif %}
{% if erosurvey_set %}
<h4>Back reference to eRosita surveys (EroSurvey)</h4>
<ul>
{% for src in erosurvey_set %}
<li><a href="{{ src.get_absolute_url }}">{{ src.name }}</a>
from <a href="{{ src.catalog.get_absolute_url }}">{{ src.catalog.obsid }}</a></li>
{% endfor %}
</ul>
{% endif %}
{% if artcat_set %}
<h4>Back reference to ART-XC catalogs (ArtCat)</h4>
<ul>
{% for src in artcat_set %}
<li><a href="{{ src.get_absolute_url }}">{{ src.name }}</a> from <a href="{{ src.catalog.get_absolute_url }}">{{ src.catalog.name }}</a></li>
{% endfor %}
</ul>
{% endif %}
{% endblock %}
{% block content %}{% endblock %}
</div>
<footer class="bs-footer" role="contentinfo">
<div class="container">
<div class="row">
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<div class="alert alert-light">
<p class="card-text">
<hr>
Отдел астрофизики высоких энергий ИКИ РАН © 2019 <a href="http://hea.cosmos.ru" target="_blank">Вебсайт отдела</a> |
<a href="http://www.iki.rssi.ru" target="_blank">ИКИ РАН</a> |
<a href="http://srg.cosmos.ru">Спектр-РГ</a> | Разработка: Роман Кривонос, email: krivonos/@/cosmos.ru
</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
</div>
</div>
</footer>
</body>
</html>

View File

@@ -0,0 +1,520 @@
{% extends "base.html" %}
{% load heasarc_templates %}
{% load simbadescape %}
{% block header %}
{% endblock %}
{% block precontent %}{% endblock %}
{% block content %}
{% if cat %}
<h3>Source list <a href="{{ cat.get_absolute_url }}">{{ cat.obsid }}</a> ({{ cat.nrows }} rows) </h3>
<p><strong>Dates:</strong> {{ cat.start|date:"d M Y H:i" }} - {{ cat.stop|date:"d M Y H:i" }},
<strong>MJD:</strong> {{ cat.mjd_start|floatformat:4 }} - {{ cat.mjd_stop|floatformat:4 }},
<strong>eRoDays:</strong> {{ cat.eroday_start }} - {{ cat.eroday_stop }},
<strong>Created</strong> {{ cat.created|date:"d.m.y H:i" }}</p>
<h4><a href="{{ cat.get_absolute_url_match }}">Matched only ({{ match_count }})</a> |
<a href="{{ cat.get_absolute_url_nomatch }}">Not matched ({{ nomatch_count }})</a> |
<a href="{{ cat.get_absolute_url_transients }}">Transients ({{ trans_count }})</a>
{% if gaia_match_count %}| <a href="{{ cat.get_absolute_url_gaia }}">Gaia ({{ gaia_match_count }})</a>{% endif %}
</h4>
{% if srcs %}
<!--table class="table"-->
<table id="dterotrans" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">N/Match</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">DET_LIKE_0</th>
<th class="th-sm">ML_FLUX_0</th>
<th class="th-sm">Rate</th>
<th class="th-sm">Flux</th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b></a> {% if src.rosat_transient %}(ROSAT){% endif %}
</td>
<td>{{ src.heasarc.all.count }}</b></td>
<td>{{ src.ra|floatformat:3 }}</td>
<td>{{ src.dec|floatformat:2 }}</td>
<td>{{ src.DET_LIKE_0|floatformat:2 }}</td>
<td>{{ src.ML_FLUX_0|floatformat:2 }}</td>
<td>{{ src.rate|floatformat:4 }}</td>
<td>{{ src.flux|stringformat:"1.2e" }} </td>
</tr>
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Source name</th>
<th>N/Match</th>
<th>RA</th>
<th>Dec</th>
<th>Healpix</th>
<th>S/N</th>
<th>Rate</th>
<th>Flux</th>
</tr-->
</tfoot>
</table>
{% endif %}
{% endif %}
{% if src %}
<h4><span class="glyphicon glyphicon-arrow-right"></span> <a href="{{ src.get_absolute_url }}"><b>{{ src.name }} ({{ src.heasarc.all.count }} matches)</b></a> from <a href="{{ src.catalog.get_absolute_url }}">{{ src.catalog.obsid }}</a></h4>
<p><strong>RA & DEC:</strong> {{ src.ra|floatformat:4 }} {{ src.dec|floatformat:4 }} </br>
<strong>L & B:</strong> {{ src.lii|floatformat:4 }} {{ src.bii|floatformat:4 }} </br>
<strong>Ext, Ext Like:</strong> {{src.EXT|floatformat:-2}};{{src.EXT_LIKE|floatformat:-2}}</br>
<strong>Dates:</strong> {{ src.catalog.start|date:"d M Y H:i" }} - {{ src.catalog.stop|date:"d M Y H:i" }},
<strong>MJD:</strong> {{ src.catalog.mjd_start|floatformat:4 }} - {{ src.catalog.mjd_stop|floatformat:4 }},
<strong>eRoDays:</strong> {{ src.catalog.eroday_start }} - {{ src.catalog.eroday_stop }},
<strong>Created</strong> {{ src.created|date:"d.m.y H:i" }},
<strong>Modified</strong> {{ src.created|date:"d.m.y H:i" }} </br>
<strong><a href=http://simbad.u-strasbg.fr/simbad/sim-coo?Coord={{src.ra}}{{src.dec|stringformat:"+.3f"}}&CooFrame=FK5&CooEpoch=2000&CooEqui=2000&CooDefinedFrames=none&Radius=20&Radius.unit=arcsec&submit=submit+query&CoordList=>simbad ref</a></strong></br>
<strong><a href=https://ned.ipac.caltech.edu/conesearch?search_type=Near%20Position%20Search&coordinates={{src.ra}}d{{src.dec|stringformat:"+.3f"|escape}}d&radius=0.2&in_csys=Equatorial&in_equinox=J2000&out_csys=Equatorial&out_equinox=Same%20as%20Input&hconst=67.8&omegam=0.308&omegav=0.692&wmap=4&corr_z=1&iau_style=liberal&in_csys_IAU=Equatorial&in_equinox_IAU=B1950&z_constraint=Unconstrained&z_unit=z&ot_include=ANY&nmp_op=ANY&out_csys_nearname=Equatorial&out_equinox_nearname=J2000&obj_sort=Distance%20to%20search%20center>NED ref</a></strong>
</p>
<p>
<strong>DET_LIKE_0:</strong> {{ src.DET_LIKE_0|floatformat:2 }},
<strong>ML_FLUX_0:</strong> {{ src.ML_FLUX_0|floatformat:2 }},
<strong>flux:</strong> {{ src.flux|stringformat:"1.2e" }} erg/sec/cm^2
</p>
{% if heasarcs %}
<h4>XMMSSC (3XMM DR8 Version) CSC (Chandra Source Catalog, v2.0) RASS2RXS, AllWISEAGN</h4>
<table id="dtheasarc" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Table</th>
<th class="th-sm">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Lon</th>
<th class="th-sm">Lat</th>
<!--th class="th-sm">Healpix</th-->
<th class="th-sm">Error (arcsec)</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">flux, erg/sec/cm^2</th>
<th class="th-sm">Notes</th>
</tr>
</thead>
<tbody>
{% for hsrc in heasarcs %}
{% if hsrc.description != 'HeasarcXrayMaster' and hsrc.description != 'HeasarcCHANMASTER' %}
<tr>
<td>{{ hsrc.description|remove_heasarc }}</td>
<td>
<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>
</td>
<td>{{ hsrc.ra|floatformat:3 }}</td>
<td>{{ hsrc.dec|floatformat:3 }}</td>
<td>{{ hsrc.lii|floatformat:3 }}</td>
<td>{{ hsrc.bii|floatformat:3 }}</td>
<!--td>{{ hsrc.healpix }}</td-->
<td>{% if hsrc.error_radius > 0 %}{{ hsrc.error_radius|floatformat:2 }}{% endif %}</td>
<td>{{ hsrc.separation|floatformat:3 }}</td>
<td>{{ hsrc.erosita_flux|stringformat:"1.3e" }} </td>
<td>
{% if hsrc.description == 'HeasarcCSC' %}
{% if hsrc.extent_flag == 'T' %}extended{% endif %}
{% endif %}
</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfoot></foot>
</table>
{% endif %}
{% if gaia %}
<h4>GAIA</h4>
<table id="dthgaia" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">parallax</th>
<th class="th-sm">parallax error</th>
<th class="th-sm">pmra</th>
<th class="th-sm">pmra_error</th>
<th class="th-sm">pmdec</th>
<th class="th-sm">pmdec_error</th>
<th class="th-sm">magnitude</th>
</tr>
</thead>
<tbody>
{% for gaiasrc in gaia %}
<tr>
<td><a href="{{ gaiasrc.get_absolute_url }}">{{ gaiasrc.name }}</a></td>
<td>{{ gaiasrc.ra|stringformat:".3e"}} </td>
<td>{{ gaiasrc.dec|stringformat:".3e"}} </td>
<td>{{ gaiasrc.separation|floatformat:3 }}</td>
<td>{{ gaiasrc.parallax|stringformat:".3e" }}</td>
<td>{{ gaiasrc.parallax_error|stringformat:".3e" }}</td>
<td>{{ gaiasrc.pmra|stringformat:".3e" }}</td>
<td>{{ gaiasrc.pmra_error|stringformat:".3e" }}</td>
<td>{{ gaiasrc.pmdec|stringformat:".3e" }}</td>
<td>{{ gaiasrc.pmdec_error|stringformat:".3e" }}</td>
<td>{{ gaiasrc.phot_g_mean_mag|stringformat:".1f" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</foot>
</table>
{% endif %}
{% if sdss %}
<h4>SDSS</h4>
<table id="dthgaia" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">specobjid</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Z</th>
<th class="th-sm">Zerr</th>
</tr>
</thead>
<tbody>
{% for sdsssrc in sdss %}
<tr>
<td><a href="{{ sdsssrc.get_absolute_url }}">{{ sdsssrc.specobjid }}</a></td>
<td>{{ sdsssrc.ra|floatformat:-3}} </td>
<td>{{ sdsssrc.dec|floatformat:-3}} </td>
<td>{{ sdsssrc.separation|floatformat:3 }}</td>
<td>{{ sdsssrc.z|stringformat:".3e" }}</td>
<td>{{ sdsssrc.z_err|stringformat:".3e" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</foot>
</table>
{% endif %}
{% if simbad %}
<h4>Simbad</h4>
<table id="dthgaia" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">major-id</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">class</th>
<th class="th-sm">Z</th>
</tr>
</thead>
<tbody>
{% for simsrc in simbad %}
<tr>
<td><a href="http://simbad.u-strasbg.fr/simbad/sim-id?Ident={{ simsrc.main_id|simbad_escape }}&NbIdent=1&Radius=2&Radius.unit=arcmin&submit=submit+id">{{ simsrc.main_id }}</a></td>
<td>{{ simsrc.ra|floatformat:-3}} </td>
<td>{{ simsrc.dec|floatformat:-3}} </td>
<td>{{ simsrc.separation|floatformat:3 }}</td>
<td>{{ simsrc.obj_class }}</td>
<td>{{ simsrc.z|stringformat:".3e" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</foot>
</table>
{% endif %}
{% if flesch %}
<h4>Flesch 2019</h4>
<table id="dthgaia" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Z</th>
<th class="th-sm">Zerr</th>
</tr>
</thead>
<tbody>
{% for fleschsrc in flesch %}
<tr>
<td><a href="{{ fleschsrc.get_absolute_url }}">{{ fleschsrc.name }}</a></td>
<td>{{ fleschsrc.ra|floatformat:-3}} </td>
<td>{{ fleschsrc.dec|floatformat:-3}} </td>
<td>{{ fleschsrc.separation|floatformat:3 }}</td>
<td>{{ fleschsrc.z|stringformat:".3e" }}</td>
<td>{{ fleschsrc.z_err|stringformat:".3e" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</foot>
</table>
{% endif %}
{% if heasarc_xray %}
<h4>HEASARC X-ray Master</h4>
<table id="dtheasarcxraymaster" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Mission</th>
<th class="th-sm">Name</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Type</th>
</tr>
</thead>
<tbody>
{% for hsrc in heasarc_xray %}
<tr>
<td>{{ hsrc.observatory }} ({{ hsrc.database_table }})</td>
<td>
<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>
</td>
<td>{{ hsrc.separation|floatformat:3 }}</td>
<td>
{% if hsrc.class_id != 9999 %}
{{ hsrc.object_class.class_name }}
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Mission</th>
<th>Name</th>
<th>Offset (arcsec)</th>
<th>Type</th>
</tr-->
</foot>
</table>
{% endif %}
{% if heasarc_chanmaster %}
<h4>HEASARC Chandra Master</h4>
<table id="dtheasarcchandramaster" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">ObsID</th>
<th class="th-sm">Name</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Exposure (sec)</th>
<th class="th-sm">Notes</th>
</tr>
</thead>
<tbody>
{% for hsrc in heasarc_chanmaster %}
<tr>
<td>{{ hsrc.obsid }}</td>
<td>
<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>
</td>
<td>{{ hsrc.separation|floatformat:3 }}</td>
<td>{{ hsrc.exposure }}</td>
<td>PI: {{ hsrc.pi }}, {{ hsrc.category }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Mission</th>
<th>Name</th>
<th>Offset (arcsec)</th>
<th>Exposure (sec)</th>
<th>Notes</th>
</tr-->
</foot>
</table>
{% endif %}
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "J2000d",
fov: 0.05,
target: "{{src.ra|stringformat:'.6f'|safe}} {{src.dec|stringformat:'.6f'|safe}}",
showShareControl: true,
showCooGrid: true});
aladin.setOverlayImageLayer(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
var srccat = A.catalog({name: 'erosita source cat', color: 'white', shape:"cross", sourceSize: 30, onClick: 'showPopup'});
srccat.addSources(A.source({{src.ra|stringformat:"+.6f"|safe}}, {{src.dec|stringformat:"+.6f"|safe}}, {name: '<a href="{{ src.get_absolute_url }}">{{ src.name }}</a>' }));
aladin.addCatalog(srccat);
var rasscat = A.catalog({shape: 'circle', name: 'Counterparts', color: 'white', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(rasscat);
var xmmcat = A.catalog({shape: 'circle', name: 'Counterparts', color: 'red', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(xmmcat);
var csccat = A.catalog({shape: 'circle', name: 'Counterparts', color: 'green', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(csccat);
var sxpscat = A.catalog({shape: 'circle', name: 'Counterparts', color: 'magenta', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(sxpscat);
{% for hsrc in heasarcs %}
{% if hsrc.description == 'HeasarcRASS2RXS' %}
rasscat.addSources(A.source({{ hsrc.ra|safe }}, {{ hsrc.dec|safe }}, {name: '<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>', flux: '{{hsrc.erosita_flux|stringformat:"1.3e"}}' }));
{% endif %}
{% if hsrc.description == 'HeasarcXMMSSC' %}
xmmcat.addSources(A.source({{ hsrc.ra|safe }}, {{ hsrc.dec|safe }}, {name: '<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>', flux: '{{hsrc.erosita_flux|stringformat:"1.3e"}}' }));
{% endif %}
{% if hsrc.description == 'HeasarcCSC' %}
csccat.addSources(A.source({{ hsrc.ra|safe }}, {{ hsrc.dec|safe }}, {name: '<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>', flux: '{{hsrc.erosita_flux|stringformat:"1.3e"}}' }));
{% endif %}
{% if hsrc.description == 'Heasarc2SXPS' %}
sxpscat.addSources(A.source({{ hsrc.ra|safe }}, {{ hsrc.dec|safe }}, {name: '<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>', flux: '{{hsrc.erosita_flux|stringformat:"1.3e"}}' }));
{% endif %}
{% endfor %}
var erncat = A.catalog({shape: 'cross', name: 'Counterparts', color: 'red', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(erncat);
{% for esrc in erneighbours %}
erncat.addSources(A.source({{ esrc.ra|safe }}, {{ esrc.dec|safe }}, {name: '<a href="{{ esrc.get_absolute_url }}">{{ esrc.name }}</a>', flux: '{{esrc.flux|stringformat:"1.3e"}}' }));
{% endfor %}
var gaiacat = A.catalog({shape: 'rhomb', name: 'Counterparts', color: 'white', sourceSize: 30, labelColumn:'name', onClick: 'showPopup'});
aladin.addCatalog(gaiacat);
{% for gsrc in gaia %}
gaiacat.addSources(A.source({{ gsrc.ra|safe }}, {{ gsrc.dec|safe }}, {name: '<a href="{{ gserc.get_absolute_url }}"> {{ gsrc.name }}</a>'}));
{% endfor %}
/*
var cat2 = A.catalog({shape: 'circle', name: 'Counterparts', color: 'red', sourceSize: 0.005, displayLabel: false,onClick: 'showPopup'});
var cat3 = A.catalog({shape: 'circle', name: 'Counterparts', color: 'green', sourceSize: 0.005, displayLabel: false,onClick: 'showPopup'});
var cat4 = A.catalog({shape: 'circle', name: 'Counterparts', color: 'blue', sourceSize: 0.005, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
*/
</script>
{% endif %}
{% if alerce_match %}
<!--table class="table"-->
<table id="dtalerce" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">Flux</th>
<th class="th-sm">EroTrans Catalog</th>
<th class="th-sm">ZTF alert</th>
</tr>
</thead>
<tbody>
{% for src in alerce_match %}
<tr>
<td>
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b></a> {% if src.rosat_transient %}(ROSAT){% endif %}
</td>
<td>{{ src.flux|stringformat:"1.1e" }} </td>
<td><a href="{{ src.catalog.get_absolute_url }}">{{ src.catalog }}</a> {{ src.catalog.start|date:"d.m.y H:i" }} - {{ src.catalog.stop|date:"d.m.y H:i" }}</td>
<td>
{% if src.alerce.all %}
{% for ztf in src.alerce.all %}
<a href="{{ ztf.get_absolute_url }}">{{ ztf.oid }}</a> <strong>{{ ztf.get_early_class }}</strong> {{ ztf.firstdate|date:"d.m.y H:i" }} - {{ ztf.lastdate|date:"d.m.y H:i" }}<br>
{% endfor %}
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</tfoot>
</table>
{% endif %}
{% if srcs %}
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "GAL",
survey: "P/DSS2/color",
fov: 197, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
aladin.createImageSurvey("DIRBE_4","DIRBE_4", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/DIRBE_4",'galactic',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
aladin.getBaseImageLayer().getColorMap().update('rainbow');
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("DIRBE_4");
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var cat1 = A.catalog({shape: 'circle', name: 'EroTrans Sources', color: 'white', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
{% for src in srcs %}
cat1.addSources(A.source({{ src.ra|safe }}, {{ src.dec|safe }}, {name: '<a href="{{ src.get_absolute_url }}">{{ src.name }}', RA: '{{ src.ra|floatformat:4 }}', Dec: '{{ src.dec|floatformat:4 }}', Healpix: '{{ src.healpix }}'}));
{% endfor %}
aladin.addCatalog(cat1);
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,227 @@
{% extends "base.html" %}
{% load heasarc_templates %}
{% load simbadescape %}
{% block javascripts %}
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
<script>
var filtstatus = {"page": 1,
"orderedby": "-tstop",
"filter_classs": [],
"filter_class": "[]",
"filter_eclass": "any",
"followup": ["any",],
"srcperpage": 1000,
"downloadtable": false,
"status": "any",
"pqual": "any",
"pquals": ['1','2']};
function remove_from_trans_catalog(element,srcid) {
element.parentElement.parentElement.remove();
var senddata = new Object();
senddata.srcid = srcid;
senddata.csrfmiddlewaretoken = "{{csrf_token}}";
senddata.sample="{{sample_name}}";
$.ajax({url: "{% url 'remove from flux transients' %}",
method: 'POST',
data: senddata});
}
function get_pandas(){
filtstatus.downloadtable = true;
$.ajax({url: window.location.href,
method: 'POST',
data: filtstatus,})
filtstatus.downloadtable = false;
};
function paginate({page=null,ordercol=null,filter_class=null,filter_eclass=null,estatus=null,followup=null,srcperpage=null,pqual=null}={}) {
filtstatus.csrfmiddlewaretoken = "{{csrf_token}}";
if (!!page) {filtstatus.page=page};
if (!!ordercol) {filtstatus.orderedby=ordercol};
if (!!filter_class) {
if (filter_class == "any"){
filtstatus.filter_classs=[];
}else{
var idx = filtstatus.filter_classs.indexOf(filter_class)
if ( idx == -1 ) {
filtstatus.filter_classs.splice(0, 0, filter_class)
} else {
filtstatus.filter_classs.splice(idx, 1)
};
};
};
if (!!pqual) {
if (pqual == "any"){
filtstatus.pquals=[];
}else{
var idx = filtstatus.pquals.indexOf(pqual)
if ( idx == -1 ) {
filtstatus.pquals.splice(0, 0, pqual)
} else {
filtstatus.pquals.splice(idx, 1)
};
};
};
filtstatus.filter_class = JSON.stringify(filtstatus.filter_classs);
filtstatus.pqual = JSON.stringify(filtstatus.pquals);
if (!!filter_eclass) {filtstatus.filter_eclass=filter_eclass};
if (!!estatus) {filtstatus.status=estatus};
if (!!followup) {filtstatus.followup=followup};
if (!!srcperpage) {filtstatus.srcperpage=srcperpage};
var ordercol = document.getElementById("ordercol")
var followup = document.getElementById("followupst")
var sourcestatus = document.getElementById("sourcestatus")
var objectclass = document.getElementById("objectclass")
var pqualfilter = document.getElementById("pquality")
var typefilter = document.getElementById("typefilte")
var ppbutton = document.getElementById("recordsnumbutton")
var element = document.getElementById("sourcetablecontainer");
$.ajax({url: window.location.href,
method: 'POST',
data: filtstatus,
success: function(d){
element.firstElementChild.remove();
element.innerHTML = d;
ordercol.innerHTML=filtstatus.orderedby;
followup.innerHTML=filtstatus.followup;
sourcestatus.innerHTML=filtstatus.status;
objectclass.innerHTML=filtstatus.filter_classs;
typefilter.innerHTML=filtstatus.filter_eclass;
ppbutton.innerHTML=filtstatus.srcperpage;
pqualfilter.innerHTML=filtstatus.pquals;
ztfclassnames();}});
}
function change_class(element, srcid, clsname){
$.ajax({url: 'set_class/' + srcid + '/' + clsname,
success: function(e){element.parentElement.previousElementSibling.firstChild.textContent=clsname;}});
}
document.addEventListener("DOMContentLoaded", function(){paginate();});
</script>
{% endblock %}
{% block precontent %}
{% if srcs %}
<h1>pavel quality: {{pq}}</h1>
<h3>The list of {{ sample_name }}, total count {{srcs.count}} </h3>
<div class=container">
<table id="tablefilters" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">last updated</th>
<th class="th-sm">order col</th>
<th class="th-sm">type filter</th>
<th class="th-sm">class filter</th>
<th class="th-sm">status filter</th>
<th class="th-sm">followup filter</th>
<th class="th-sm">quality</th>
<th class="th-sm">src per page</th>
</tr>
</thead>
<tbody>
<th class="th-sm">{{cat.stop}}</th>
<th class="th-sm" id="ordercol"></th>
<th class="th-sm" id="typefilte"></th>
<th class="th-sm" id="objectclass"></th>
<th class="th-sm" id="sourcestatus"></th>
<th class="th-sm" id="followupst"></th>
<th class="th-sm" id="pquality"></th>
<th class="th-sm" id="srcperpage">
<button class="btn btn-secondary dropdown-toggle" type="button" id="recordsnumbutton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
src per page
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" onclick=paginate({'page':'1','srcperpage':10})>10</a>
<a class="dropdown-item" onclick=paginate({'page':'1','srcperpage':50})>50</a>
<a class="dropdown-item" onclick=paginate({'page':'1','srcperpage':100})>100</a>
<a class="dropdown-item" onclick=paginate({'page':'1','srcperpage':1000})>1000</a>
<a class="dropdown-item" onclick=paginate({'page':'1','srcperpage':10000})>10000</a>
</div>
</th>
</tr>
</td>
</tbody>
</table>
</div>
<h1>pavel quality: {{pq}}</h1>
<!--table class="table"-->
<div class=container">
<div id="sourcetablecontainer"><div></div></div>
</div>
{% else %}
<h3> This sample has zero sources </h3>
{% endif %}
<script>
var ztfclasses={
null:"Not specified",
"classified":"Classified",
"not classified":"Not classified",
1:"Ceph",
2:"DSCT",
3:"EB",
4:"LPV",
5:"RRL",
6:"SN",
0:"Other",
7:"AGN I",
8:"Blazar",
9:"CV/Nova",
10:"SN Ia",
11:"SN Ibc",
12:"SN II",
14:"SLSN",
15:"EB/SD/D",
16:"EB/C",
17:"Periodic/Other",
18:"AGN",
19:"SN",
20:"Variable Star",
21:"Asteroid",
22:"Bogus",
23:"RS-CVn",
24:"QSO-I"}
function ztfclassnames(){
var element=document.getElementsByClassName('ztfclassrf');
for (var i = 0, length = element.length; i < length; i++) {element[i].innerHTML=ztfclasses[element[i].innerHTML]};
};
ztfclassnames();
</script>
<script src="https://d3js.org/d3.v5.min.js">
</script>
{% endblock %}

View File

@@ -0,0 +1,195 @@
{% load simbadescape %}
<h3 id="srcnum">{{totcount}} sources</h3>
</br>
<div class=container">
<table id="sourcetable" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name<a onclick=paginate({"page":'1',"ordercol":'name'})>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a></th>
<th class-"th-sm">l</th>
<th class-"th-sm">b</th>
<th class-"th-sm">start date
<a onclick=paginate({"page":'1',"ordercol":'-tstart'})>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a></th>
<th class-"th-sm">stop date
<a onclick=paginate({"page":'1',"ordercol":'-tstop'})>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a></th>
<th class="th-sm">
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
type
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" onclick=paginate({"page":'1',"filter_eclass":'T1'})>T1</a>
<a class="dropdown-item" onclick=paginate({"page":'1',"filter_eclass":'T2'})>T2</a>
<a class="dropdown-item" onclick=paginate({"page":'1',"filter_eclass":'T3'})>T3</a>
<a class="dropdown-item" onclick=paginate({"page":'1',"filter_eclass":'V1'})>V1</a>
<a class="dropdown-item" onclick=paginate({"page":'1',"filter_eclass":'V2'})>V2</a>
<a class="dropdown-item" onclick=paginate({"page":'1',"filter_eclass":'V3'})>V3</a>
<a class="dropdown-item" onclick=paginate({"page":'1',"filter_eclass":'any'})>any</a>
</div>
</div>
</th>
<th class="th-sm">flux
<a onclick=paginate({'page':'1','ordercol':'-sxflux'})>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a></th>
<th class=th-sm">max ratio
<a onclick=paginate({'page':'1','ordercol':'-erositatransient__ratio_to_maxxflux'})>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a>
</th>
<th class=th-sm">min ratio
<a onclick=paginate({'page':'1','ordercol':'-erositatransient__ratio_to_minxflux'})>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a>
</th>
<!-- <th class="th-sm">X offset, "</th> -->
<th class="th-sm"><button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="bottom" title="condition: |pmra| > 4 pmraerr or |pmdec| > 4pmdecerr or |plx| > 4plxerr">GAIA</button></th>
<th class="th-sm">Simbad class<a onclick=paginate({'page':'1','ordercol':'sclass'})>
<i class="glyphicon glyphicon-sort-by-attributes"></i></th>
<th class="th-sm">Simbad z<a onclick=paginate({'page':'1','ordercol':'erositatransient__z'})><i class="glyphicon glyphicon-sort-by-attributes"></i> </th>
<th class="th-sm">SRGz</th>
<th class="th-sm">
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
class
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" onclick=paginate({'page':'1','filter_class':'extragalactic'})>extragalactic</a>
<a class="dropdown-item" onclick=paginate({'page':'1','filter_class':'galactic'})>galactic</a>
<a class="dropdown-item" onclick=paginate({'page':'1','filter_class':'unknown'})>unknown</a>
<a class="dropdown-item" onclick=paginate({'page':'1','filter_class':"notfalse"})>not false</a>
<a class="dropdown-item" onclick=paginate({'page':'1','filter_class':'any'})>any</a>
</div>
</div>
</th>
<th class-"th-sm">comments</th>
<th class-"th-sm">
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
quality
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" onclick=paginate({'page':'1','pqual':'any'})>any</a>
<a class="dropdown-item" onclick=paginate({'page':'1','pqual':'-1'})>-1</a>
<a class="dropdown-item" onclick=paginate({'page':'1','pqual':'0'})>0</a>
<a class="dropdown-item" onclick=paginate({'page':'1','pqual':'1'})>1</a>
<a class="dropdown-item" onclick=paginate({'page':'1','pqual':'2'})>2</a>
</div>
</div>
</th>
<th class="th-sm">ztf (class<a onclick=paginate({'page':'1','ordercol':'erositatransient__ztfcl'})>
<i class="glyphicon glyphicon-sort-by-attributes"></i>
</a>, sep &#34;<a onclick=paginate({'page':'1','ordercol':'erositatransient__ztfcl_sep'})>
<i class="glyphicon glyphicon-sort-by-attributes"></i>
)</th>
<th class="th-sm">
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
status
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" onclick=paginate({'page':'1','estatus':'solved'})>solved</a>
<a class="dropdown-item" onclick=paginate({'page':'1','estatus':'inwork'})>in work</a>
<a class="dropdown-item" onclick=paginate({'page':'1','estatus':'unclear'})>unclear</a>
<a class="dropdown-item" onclick=paginate({'page':'1','estatus':'any'})>any</a>
</div>
</div>
</th>
<th class="th-sm">
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
followup
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" onclick=paginate({'page':'1','followup':'urgent')>urgent</a>
<a class="dropdown-item" onclick=paginate({'page':'1','followup':'normal')>normal work</a>
<a class="dropdown-item" onclick=paginate({'page':'1','followup':'NA')>NA</a>
<a class="dropdown-item" onclick=paginate({'page':'1','followup':'any')>any</a>
</div>
</div>
</th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>
<!--button type="button" data-id={{src.id}} class="btn btn-warning" onclick=remove_from_trans_catalog(this,{{ src.id }})>hide</button-->
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}{% if src.EXT_LIKE > 10 %} <p style="color:red">ext!</p> {% endif %}</b></a>
</td>
<td>{{ src.lii|floatformat:-3 }}</td>
<td>{{ src.bii|floatformat:-3 }}</td>
<td>{{ src.tstart|date:'Y-m-d' }}</td>
<td>{{ src.tstop|date:'Y-m-d' }}</td>
<td>{% if src.erositatransient.onlydetection%}V{%else%}T{%endif%}{{src.survey}}</td>
<td>{{ src.sxflux|stringformat:"1.1e" }}</td>
<td>{{src.erositatransient.ratio_to_maxxflux|floatformat:-1}} </td>
<td>{{src.erositatransient.ratio_to_minxflux|floatformat:-1}} </td>
<td align="center">{% if src.erositatransient.plx %} + {% endif %}</td>
<td>{% if src.erositatransient.sclass %}<a href="http://simbad.u-strasbg.fr/simbad/sim-id?Ident={{ src.erositatransient.sname|simbad_escape }}&NbIdent=1&Radius=2&Radius.unit=arcmin&submit=submit+id">{{ src.erositatransient.sclass }}</a>{% endif %}</td>
<td>{% if src.erositatransient.z and src.erositatransient.z != "nan" %}{{ src.erositatransient.z }}{% endif %}</td>
<td></td>
<td aligh="center">
<!--div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton" id="testjs">
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'AGN')">AGN</a>
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'star')">star</a>
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'galaxy')">galaxy</a>
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'galactic')">galactic</a>
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'unknown')">unknown</a>
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'fake')">fake</a>
</div>
</div-->
{{ src.srcclass }}
</td>
<td align="center">
{% if src.sourcecomment_set.all %}
<button type="button" class="btn btn-seconday" data-toggle="tooltip" data-placement="left" title="({{ src.sourcecomment_set.last.created }}) {{ src.sourcecomment_set.last.author.username }}: {{ src.sourcecomment_set.last.text }}">c</button>
<!--div class="tooltip">c<span class="tooltiptext">({{ src.sourcecomment_set.last.created }}) {{ src.sourcecomment_set.last.author.username }}: {{ src.sourcecomment_set.last.text }}</span></div-->
{% endif %}</td>
<td align="center">
{{src.erositatransient.pavel_qual}}
</td>
<td>{% if src.erositatransient.ztfcl %} <a class="ztfclassrf" href="https://alerce.online/object/{{ src.erositatransient.ztfnm }}">{{ src.erositatransient.ztfcl }}</a>, {{ src.erositatransient.ztfcl_sep|floatformat:-1 }}" {% endif %}</td>
<td>{{src.srcstatus}}</td>
<td>{{src.followup}}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<div class="pagination">
<span class="step-links">
{% if srcs.has_previous %}
<button type="button" class="btn btn-warning" onclick=paginate({'page':1}) >first</button>
<button type="button" class="btn btn-warning" onclick=paginate({'page':'{{ srcs.previous_page_number }}'}) >previous</button>
{% endif %}
<span class="current">
Page {{ srcs.number }} of {{ srcs.paginator.num_pages }}.
</span>
{% if srcs.has_next %}
<button type="button" class="btn btn-warning" onclick=paginate({'page':'{{ srcs.next_page_number }}'}) >next</button>
<button type="button" class="btn btn-warning" onclick=paginate({'page':'{{ srcs.paginator.num_pages }}'}) >last</button>
{% endif %}
</span>
</div>

View File

@@ -0,0 +1,95 @@
{% load simbadescape %}
<table id="sourcetable" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class-"th-sm">l</th>
<th class-"th-sm">b</th>
<th class-"th-sm">obs date
<a onclick=paginate(1,'-obsdate')>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a></th>
<th class="th-sm">DET_LIKE_0
<a onclick=paginate(1,'-DET_LIKE_0')>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a></th>
<th class="th-sm">flux
<a onclick=paginate(1,'-sxflux')>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a></th>
<th class="th-sm">max X-ray companion flux
<a onclick=paginate(1,'-max_companion_xflux')>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a>
(name, ratio
<a onclick=paginate(1,'-ratio_to_maxxflux')>
<i class="glyphicon glyphicon-sort-by-attributes-alt"></i>
</a>)</th>
<!-- <th class="th-sm">X offset, "</th> -->
<th class="th-sm">Simbad class<a onclick=paginate(1,'sclass')>
<i class="glyphicon glyphicon-sort-by-attributes"></i>
</a>(name, sep &#34;
<a onclick=paginate(1,'sclass_sep')>
<i class="glyphicon glyphicon-sort-by-attributes"></i>
</a>)</th>
<th class="th-sm">Gaia</th>
<th class="th-sm">ztf (class<a onclick=paginate(1,'ztfcl')>
<i class="glyphicon glyphicon-sort-by-attributes"></i>
</a>, sep &#34;<a onclick=paginate(1,'ztfcl_sep')>
<i class="glyphicon glyphicon-sort-by-attributes"></i>
)</th>
<th class-"th-sm">comments</th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>
<!--button type="button" data-id={{src.id}} class="btn btn-warning" onclick=remove_from_trans_catalog(this,{{ src.id }})>hide</button-->
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}{% if src.EXT_LIKE > 10 %} <p style="color:red">ext!</p> {% endif %}</b></a>
</td>
<td>{{ src.lii|floatformat:-3 }}</td>
<td>{{ src.bii|floatformat:-3 }}</td>
<td>{{ src.tstart|date:'Y-m-d' }}--{{ src.tstop|date:'Y-m-d' }}</td>
<td>{{ src.DET_LIKE_0|stringformat:"1.3e" }}</td>
<td>{{ src.sxflux|stringformat:"1.1e" }}</td>
<td>{% if src.max_companion_xflux %}{{ src.max_companion_xflux|stringformat:"1.1e" }}({{src.max_com_name}}, {{src.max_com_sep|floatformat:-1}}", {{src.ratio_to_maxxflux|floatformat:-1}})
{% else %}<p style="color:red">{{src.rasslim|stringformat:"1.1e"}} ({{src.rasslimratio|floatformat:-1}})</p>{% endif %}</td>
<!--<td>{% if src.closest_xray_separation %}{{ src.closest_xray_separation|floatformat:-1 }}"{% endif %}</td>-->
<td>{% if src.sclass %}<a href="http://simbad.u-strasbg.fr/simbad/sim-id?Ident={{ src.sname|simbad_escape }}&NbIdent=1&Radius=2&Radius.unit=arcmin&submit=submit+id">{{ src.sclass }}</a>
, {% if sdssz %}z={{ src.sdssz }}(sdss){% else %}{% if src.ssz and src.ssz != "nan" %}z={{ src.ssz }}{% endif %}{% endif %}{% endif %}</td>
<td align="center">{% if src.plx %} + {% endif %}</td>
<td>{% if src.ztfcl %} <a class="ztfclassrf" href="https://alerce.online/object/{{ src.ztfnm }}">{{ src.ztfcl }}</a>, {{ src.ztfcl_sep|floatformat:-1 }}" {% endif %}</td>
<td align="center">
{% if src.sourcecomment_set.all %}
<button type="button" class="btn btn-seconday" data-toggle="tooltip" data-placement="left" title="({{ src.sourcecomment_set.last.created }}) {{ src.sourcecomment_set.last.author.username }}: {{ src.sourcecomment_set.last.text }}">c</button>
<!--div class="tooltip">c<span class="tooltiptext">({{ src.sourcecomment_set.last.created }}) {{ src.sourcecomment_set.last.author.username }}: {{ src.sourcecomment_set.last.text }}</span></div-->
{% endif %}</td>
</tr>
{% endfor %}
</tbody>
</table>
<div class="pagination">
<span class="step-links">
{% if srcs.has_previous %}
<button type="button" class="btn btn-warning" onclick=paginate(1,'{{ srcs.ordercol }}') >first</button>
<button type="button" class="btn btn-warning" onclick=paginate('{{ srcs.previous_page_number }}','{{ srcs.ordercol }}') >previous</button>
{% endif %}
<span class="current">
Page {{ srcs.number }} of {{ srcs.paginator.num_pages }}.
</span>
{% if srcs.has_next %}
<button type="button" class="btn btn-warning" onclick=paginate('{{ srcs.next_page_number }}','{{ srcs.ordercol }}') >next</button>
<button type="button" class="btn btn-warning" onclick=paginate('{{ srcs.paginator.num_pages }}','{{ srcs.ordercol }}') >last</button>
{% endif %}
</span>
</div>

View File

@@ -0,0 +1,213 @@
{% extends "base.html" %}
{% load mathfilters %}
{% load heasarc_templates %}
{% load simbadescape %}
{% block javascripts %}
<script>
$(document).on('submit', '#add_genericsource_comment',function(e){
e.preventDefault();
var ctext = $("#gs_comment").val();
$.ajax({
type:'POST',
url:'{% url 'genericsource:gs add comment' %}',
data:{
csrfmiddlewaretoken:"{{csrf_token}}",
action:'post',
srcid:"{{ src.id }}",
text:ctext
},
success:function(json){
document.getElementById("add_genericsource_comment").reset();
var newDiv = document.createElement("div");
newDiv.innerHTML='<h4>' + ctext + '</h4>';
newDiv.setAttribute("class", "well");
document.getElementById("src_comments").appendChild(newDiv);
},
error : function(xhr,errmsg,err) {
console.log(xhr.status + ": " + xhr.responseText); // provide a bit more info about the error to the console
}
});
});
</script>
{% endblock %}
{% block precontent %}
{% if src %}
<div class='container-fluid' style='background-color:#9cf5ff'>
<h1>Source</h1>
<h3><a href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b></a> </h3>
<h3>RA, DEC: {{ src.ra|floatformat:4 }} {{ src.dec|floatformat:4 }} </h3>
<h3>l, b: {{ src.lii|floatformat:4 }} {{ src.bii|floatformat:4 }} </h3>
<h3> Flux 0.5-2 keV: {{ src.sxflux|stringformat:"1.1e" }} erg/(s cm<sup>2</sup>)</h3>
<h3> ML_CTS_0 : {{ src.ML_CTS_0|stringformat:".1f" }} pm {{src.ML_CTS_ERR_0|stringformat:".1f"}} </h3>
<h3>Detection likelihood: {{src.DET_LIKE_0|stringformat:"1.1e"}} </h3>
<h3>Extended: ext_like={{ src.EXT_LIKE|stringformat:"f"}}, ext_err={{src.EXT_ERR|stringformat:"f"}} </h3>
</div>
<div class='container-fluid' style='background-color:#cdff9c'>
<h1>Catalog</h1>
<h3>
obsid: {{ cat.obsid }}, start: {{ cat.start }}, ends: {{cat.stop }}, erodays: {{ cat.eroday_start }}--{{ cat.eroday_stop }}
</h3>
</div>
</br>
<h3><span class="label label-default"> <a href=http://simbad.u-strasbg.fr/simbad/sim-coo?Coord={{src.ra}}{{src.dec|stringformat:"+.7f"}}&CooFrame=FK5&CooEpoch=2000&CooEqui=2000&CooDefinedFrames=none&Radius=20&Radius.unit=arcsec&submit=submit+query&CoordList=>Simbad</a></span>
<span class="label label-default">
<a href=https://ned.ipac.caltech.edu/conesearch?search_type=Near%20Position%20Search&coordinates={{src.ra}}d{{src.dec|stringformat:"+.3f"|escape}}d&radius=0.2&in_csys=Equatorial&in_equinox=J2000&out_csys=Equatorial&out_equinox=Same%20as%20Input&hconst=67.8&omegam=0.308&omegav=0.692&wmap=4&corr_z=1&iau_style=liberal&in_csys_IAU=Equatorial&in_equinox_IAU=B1950&z_constraint=Unconstrained&z_unit=z&ot_include=ANY&nmp_op=ANY&out_csys_nearname=Equatorial&out_equinox_nearname=J2000&obj_sort=Distance%20to%20search%20center>NED</a>
</span></h3>
</br>
<h3>The list of all counterparts </h3>
<!--table class="table"-->
<table id="dailysrctr" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">flux and aux info</th>
<th class="th-sm">offset, "</th>
<th class="th-sm">catalog</th>
</tr>
</thead>
<tbody>
{% for csrc in src.connectto.all|dictsort:"separation" %}
<tr>
<td><a href="{{ csrc.connected.get_absolute_url }}">{{ csrc.connected.name }}</a></td>
<td>{{ csrc.connected.ra|floatformat:3 }}</td>
<td>{{ csrc.connected.dec|floatformat:3 }}</td>
<td>
{% if csrc.connected.sxflux > 0 %} {{ csrc.connected.sxflux|stringformat:"1.1e" }}(X-ray 0.5-2 keV){% endif %}
{% if csrc.connected.gaiasource %}
{{ csrc.connected.gaiasource.phot_g_mean_mag|floatformat:-1 }}(G mag)
<!--
{% if csrc.connected.gaiasource.parallax > csrc.connected.gaiasource.parallax_error|mul:3 or csrc.connected.gaiasource.parallax < csrc.connected.gaiasource.parallax_error|mul:-3 %}
plx={{csrc.connected.gaiasource.parallax|floatformat:-2}}&#177;{{csrc.connected.gaiasource.parallax_error|floatformat:-2}}
{%endif %}
-->
plx={{csrc.connected.gaiasource.parallax|floatformat:-2}}&#177;{{csrc.connected.gaiasource.parallax_error|floatformat:-2}},
pmra={{csrc.connected.gaiasource.pmra|floatformat:-2}}&#177;{{csrc.connected.gaiasource.pmra_error|floatformat:-2}},
pmdec={{csrc.connected.gaiasource.pmdec|floatformat:-2}}&#177;{{csrc.connected.gaiasource.pmdec_error|floatformat:-2}}
{% endif %}
{% if csrc.connected.sdssspec %}z={{csrc.connected.sdssspec.z|stringformat:"1.2e"}}{% endif %}
{% if csrc.connected.ztfoid %}ztf classrf: <a class="ztfclassrf" href="">{{csrc.connected.ztfoid.classrf}}</a>, g {{csrc.connected.ztfoid.mean_magap_g|floatformat:-1}}, r {{csrc.connected.ztfoid.mean_magap_r|floatformat:-1}}{% endif %}
{% if csrc.connected.simbadsource %} class={{csrc.connected.simbadsource.obj_class}} {%if csrc.connected.simbadsource.z > 0.0001 %} z={{csrc.connected.simbadsource.z}} {% endif %} {% endif %}
</td>
<td>{{ csrc.separation|floatformat:3 }}</td>
<td>{{ csrc.connected.catalog.first.name }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</table>
<br>
{% if src.sourcecomment_set.all %}
<div class="container-fluid" id="src_comments">
<h2>Comments</h2>
{% for comment in src.sourcecomment_set.all %}
<div class="well">
<h4>{{comment.text}}</h4>
<p>{{comment.author.username}} ({{comment.created}})</p>
</div>
{%endfor%}
</div>
{% endif %}
<h3>Add comment</h3>
<form id="add_genericsource_comment" method="POST">
{% csrf_token %}
<div class="form-group">
<input type="textArea" class="form-control" id="gs_comment" placeholder="">
</div>
</form>
{% if src.srcauxdata %}
{% load static %}
<div class="container">
<embed src='{% static src.srcauxdata.specimg %}#toolbar=0&navpanes=0&scrollbar=0' width="800" height="500" type="application/pdf">
</div>
<div class="container">
<img src='{% static src.srcauxdata.img %}'>
</div>
{% endif %}
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "J2000d",
fov: 0.05,
target: "{{src.ra|stringformat:'.6f'|safe}} {{src.dec|stringformat:'.6f'|safe}}",
showShareControl: true,
showCooGrid: true});
aladin.setOverlayImageLayer(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
var srccat = A.catalog({name: 'erosita source cat', color: 'white', shape:"cross", sourceSize: 30, onClick: 'showPopup'});
srccat.addSources(A.source({{src.ra|stringformat:"+.6f"|safe}}, {{src.dec|stringformat:"+.6f"|safe}}, {name: '<a href="{{ src.get_absolute_url }}">{{ src.name }}</a>' }));
aladin.addCatalog(srccat);
var xcon = A.catalog({name: 'erosita source X cat', color: 'white', shape:"circle", sourceSize: 30, onClick: 'showPopup'});
var ocon = A.catalog({name: 'erosita source O cat', color: 'red', shape:'circle', sourceSize: 30, onClick: 'showPopup'});
aladin.addCatalog(xcon);
aladin.addCatalog(ocon);
{% for csrc in src.connections.all %}
{% if csrc.sxflux > 0 %}
xcon.addSources(A.source({{csrc.ra|stringformat:"+.6f"|safe}}, {{csrc.dec|stringformat:"+.6f"|safe}}, {name: '<a href="{{ csrc.get_absolute_url }}">{{ csrc.name }}</a>' }));
{% else %}
ocon.addSources(A.source({{csrc.ra|stringformat:"+.6f"|safe}}, {{csrc.dec|stringformat:"+.6f"|safe}}, {name: '<a href="{{ csrc.get_absolute_url }}">{{ csrc.name }}</a>' }));
{% endif %}
{% endfor %}
</script>
<script>
var ztfclasses={
null:"Not specified",
"classified":"Classified",
"not classified":"Not classified",
1:"Ceph",
2:"DSCT",
3:"EB",
4:"LPV",
5:"RRL",
6:"SN",
0:"Other",
7:"AGN I",
8:"Blazar",
9:"CV/Nova",
10:"SN Ia",
11:"SN Ibc",
12:"SN II",
14:"SLSN",
15:"EB/SD/D",
16:"EB/C",
17:"Periodic/Other",
18:"AGN",
19:"SN",
20:"Variable Star",
21:"Asteroid",
22:"Bogus",
23:"RS-CVn",
24:"QSO-I"}
var element=document.getElementsByClassName('ztfclassrf');
for (var i = 0, length = element.length; i < length; i++) {element[i].innerHTML=ztfclasses[element[i].innerHTML]};
</script>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,740 @@
{% extends "base.html" %}
{% load mathfilters %}
{% load heasarc_templates %}
{% load simbadescape %}
{% block javascripts %}
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
<script>
var editcommentobj = null;
$(document).on('submit', '#add_genericsource_comment',function(e){
e.preventDefault();
var ctext = $("#gs_comment").val();
$.ajax({
type:'POST',
url:"{% url 'genericsource:gs add comment' %}",
data:{
csrfmiddlewaretoken:"{{csrf_token}}",
action:'post',
srcid:"{{ src.id }}",
text:ctext
},
success:function(json){
document.getElementById("add_genericsource_comment").reset();
var newDiv = document.createElement("div");
newDiv.innerHTML='<h4>' + ctext + '</h4>';
newDiv.setAttribute("class", "well");
document.getElementById("src_comments").appendChild(newDiv);
},
error : function(xhr,errmsg,err) {
console.log(xhr.status + ": " + xhr.responseText); // provide a bit more info about the error to the console
}
});
});
$(document).on('submit', '#editcommentform',function(e){
var fform = $("#editcommentform")
var ctext = $("#commenttextform").val();
var senddata = {
cid: fform.data("cid"),
csrfmiddlewaretoken:"{{csrf_token}}",
action:'post',
srcid:"{{ src.id }}",
text:ctext};
$.ajax({
type:'POST',
url:"{% url 'genericsource:gs add comment' %}",
data: senddata,
success:function(json){
fform.reset();
},
error : function(xhr,errmsg,err) {
console.log(xhr.status + ": " + xhr.responseText); // provide a bit more info about the error to the console
}
});
});
function change_class(element, srcid, clsname){
$.ajax({url: "{% url 'set erosita source class' srcid=0 classname='cln' %}".replace(/0/, srcid).replace(/cln/, clsname),
success: function(e){element.parentElement.previousElementSibling.firstChild.textContent=clsname;}});
};
function update_source_status(element, srcid, stat){
$.ajax({url: "{% url 'set erosita source status' srcid=0 status='sst' %}".replace(/0/, srcid).replace(/sst/, stat),
success: function(e){element.parentElement.previousElementSibling.firstChild.textContent=stat;}});
};
function update_source_followup(element, srcid, followup){
$.ajax({url: "{% url 'set erosita source followup' srcid=0 followup='flup' %}".replace(/0/, srcid).replace(/flup/, followup),
success: function(e){element.parentElement.previousElementSibling.firstChild.textContent=followup;}});
};
$(document).on('show.bs.modal', '#editcomment', function(event) {
var button = $(event.relatedTarget)
editcommentobj = button.parent().find('#commenttext').clone()
var ctext = button.parent().find('#commenttext').clone().text()
var modal = $("#editcomment")
var formtextarea = $('#commenttextform')
formtextarea.val(ctext)
$("#editcommentform").data("cid", button.data("cid"))
});
</script>
{% endblock %}
{% block precontent %}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
<div class="container"><h1>Source:{{src.name}} </h1></div>
<div class=container">
<div class="row">
<div class="col"><h3></h3></div>
<div class="col"><h3>survey {{src.survey}}</h3></div>
{% for srcdet in detections %}
<div class="col"><h3>survey {{srcdet.survey}}</h3></div>
{% endfor %}
{% comment %}
<div class="col"><h3>Transient</h3></div>
{% if refsrc %} <div class="col"><h3>reference</h3></div> {% endif %}
{% endcomment %}
</div>
<hr>
<div class="row">
<div class="col"><h3>name</h3></div>
<div class="col"><h3>{{src.name}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %} <h3>{{srcdet.name}}</h3> {% endif %}</div>
{% endfor %}
{% comment %}
<div class="col"><h3>{{src.name}}</h3></div>
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}<a href="{{refsrc.get_absolute_url}}">{{refsrc.name}}</a>{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<hr>
<div class="row">
<div class="col"><h3>obs start</h3></div>
<div class="col"><h3>{{src.tstart}}</h3></div>
{% for srcdet in detections %}
<div class="col"><h3>{{srcdet.tstart}}</h3></div>
{% endfor %}
{% comment %}
<div class="col"><h3>{{src.tstart}}</h3></div>
{% if refsrc %} <div class="col"><h3>{{refsrc.tstart}}</h3></div> {% endif %}
{% endcomment %}
</div>
<div class="row">
<div class="col"><h3>obs stop</h3></div>
<div class="col"><h3>{{src.tstop}}</h3></div>
{% for srcdet in detections %}
<div class="col"><h3>{{srcdet.tstop}}</h3></div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{{refsrc.tstop}}</h3></div> {% endif %}
{% endcomment %}
</div>
<hr>
<div class="row">
<div class="col"><h3>RA</h3></div>
<div class="col"><h3>{{src.ra|floatformat:-4}}</h3></div>
{% for srcdet in detections %}
<div class="col"><h3>{{srcdet.ra|floatformat:-4}}</h3></div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.ra|floatformat:-4}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<div class="row">
<div class="col"><h3>DEC</h3></div>
<div class="col"><h3>{{src.dec|floatformat:-4}}</h3></div>
{% for srcdet in detections %}
<div class="col"><h3>{{srcdet.dec|floatformat:-4}}</h3></div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.dec|floatformat:-4}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<hr>
<div class="row">
<div class="col"><h3>RADEC_ERR</h3></div>
<div class="col"><h3>{{src.error_radius|floatformat:-1}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<h3>{{srcdet.error_radius|floatformat:-4}}</h3>{% endif %}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.error_radius|floatformat}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<div class="row">
<div class="col"><h3>ML_BKG_0</h3></div>
<div class="col"><h3>{{src.ML_BKG_0|floatformat:-1}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<h3>{{srcdet.ML_BKG_0|floatformat:-1}}</h3>{% endif %}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.ML_BKG_0|floatformat}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<hr>
<div class="row">
<div class="col"><h3>EXT</h3></div>
<div class="col"><h3>{{src.EXT|floatformat:-1}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<h3>{{srcdet.EXT}}</h3>{% endif %}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.EXT|floatformat}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<div class="row">
<div class="col"><h3>EXT_ERR</h3></div>
<div class="col"><h3>{{src.EXT_ERR|floatformat:-1}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<h3>{{srcdet.EXT_ERR|floatformat:-1}}</h3>{% endif %}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.EXT_ERR|floatformat}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<div class="row">
<div class="col"><h3>EXT_LIKE</h3></div>
<div class="col"><h3>{{src.EXT_LIKE|stringformat:"f"}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<h3>{{srcdet.EXTLIKE}}</h3>{% endif %}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.EXT_LIKE|stringformat:"f"}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<hr>
<div class="row">
<div class="col"><h3>ML_EXP_1</h3></div>
<div class="col"><h3>{{src.ML_EXP_1|floatformat:-1}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}{{srcdet.ML_EXP_1}}{% endif %}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.ML_EXP_1|floatformat}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<hr>
<div class="row">
<div class="col"><h3>lii</h3></div>
<div class="col"><h3>{{src.lii|floatformat:-3}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<h4>{{srcdet.lii|floatformat:-3}}</h4>{% endif %}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.lii|floatformat:-3}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<div class="row">
<div class="col"><h3>bii</h3></div>
<div class="col"><h3>{{src.bii|floatformat:-3}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<h4>{{srcdet.bii|floatformat:-3}}</h4>{% endif %}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.bii|floatformat}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<hr>
<div class="row">
<div class="col"><h3>flux</h3></div>
<div class="col"><h3>{{src.sxflux|stringformat:"1.1e"}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<font color="black">{%else%}<font color="red">{%endif%}<h4>{{srcdet.sxflux|stringformat:"1.1e"}}</h4></font></div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{{refflux|stringformat:"1.1e"}}</h3></div> {% endif %}
{% endcomment %}
</div>
<div class="row">
<div class="col"><h3>ML_CTS_0</h3></div>
<div class="col"><h3>{{src.ML_CTS_0|stringformat:".1f"}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<h4>{{srcdet.ML_CTS_0|stringformat:".1f"}}</h4>{%endif%}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.ML_CTS_0|stringformat:".1f"}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<div class="row">
<div class="col"><h3>DETLKL</h3></div>
<div class="col"><h3>{{src.DET_LIKE_0|stringformat:"1.1e"}}</h3></div>
{% for srcdet in detections %}
<div class="col">{%if srcdet.detected %}<h4>{{srcdet.DET_LIKE_0|stringformat:"1.1e"}}</h4>{%endif%}</div>
{% endfor %}
{% comment %}
{% if refsrc %} <div class="col"><h3>{% if true_counterpart %}{{refsrc.DET_LIKE_0|stringformat:"1.1e"}}{% endif %}</h3></div> {% endif %}
{% endcomment %}
</div>
<hr>
</div>
</div>
{% if src.sourcecomment_set.all %}
<div style="margin-top: 30px; margin-left: 10px;"
<div class="container-fluid" id="final_comment">
<h2>Final comment</h2>
<div class="well">
<h3>{{src.sourcecomment_set.last.text}}</h3>
<p>{{src.sourcecomment_set.last.author.username}} ({{src.sourcecomment_set.last.created}})</p>
</div>
</div>
</div>
{% endif %}
<div style="margin-top: 20px; margin-left: 30px;"
<div class="dropdown">
<h1> class:
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{% if src.srcclass %}{{src.srcclass}}{% else %}select class{% endif %}
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton" id="testjs">
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'extragalactic')">extragalactic</a>
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'galactic')">galactic</a>
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'unknown')">unknown</a>
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'false')">false</a>
<a class="dropdown-item" onclick="change_class(this,{{src.id}},'none')">unselect</a>
</div>
</div>
</h1>
</div>
</div>
<div style="margin-top: 20px; margin-left: 30px;"
<div class="dropdown">
<h1> status:
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{% if src.srcstatus %}{{src.srcstatus}}{% else %}change status{% endif %}
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton" id="set_status">
<a class="dropdown-item" onclick="update_source_status(this,{{src.id}},'solved')">solved</a>
<a class="dropdown-item" onclick="update_source_status(this,{{src.id}},'inwork')">in work</a>
<a class="dropdown-item" onclick="update_source_status(this,{{src.id}},'unclear')">unclear</a>
<a class="dropdown-item" onclick="update_source_status(this,{{src.id}},'none')">unselect</a>
</div>
</div>
</h1>
</div>
</div>
<div style="margin-top: 20px; margin-left: 30px;"
<div class="dropdown">
<h1> followup:
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{% if src.followup %}{{src.followup}}{% else %}change followup policy{% endif %}
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton" id="set_followup">
<a class="dropdown-item" onclick="update_source_followup(this,{{src.id}},'urgent')">urgent</a>
<a class="dropdown-item" onclick="update_source_followup(this,{{src.id}},'normal')">normal</a>
<a class="dropdown-item" onclick="update_source_followup(this,{{src.id}},'NA')">NA</a>
<a class="dropdown-item" onclick="update_source_followup(this,{{src.id}},'none')">unselect</a>
</div>
</div>
</h1>
</div>
</div>
<div class="container"><h1>Source:{{src.name}} </h1></div>
<div class=container">
{% if src.srcauxdata %}
{% load static %}
<div class="row">
<div class="col">
<h3> Gamma = {{src.srcauxdata.gamma|floatformat:-2 }} ({{src.srcauxdata.gammael|floatformat:-2 }}, {{src.srcauxdata.gammaeu|floatformat:-2 }}) nH = {{src.srcauxdata.nh|stringformat:"1.1e"}} </h3>
</div>
<div class="col">
<h3> Gamma = {{refsrc.srcauxdata.gamma|floatformat:-2 }} ({{refsrc.srcauxdata.gammael|floatformat:-2 }}, {{refsrc.srcauxdata.gammaeu|floatformat:-2 }}) nH = {{refsrc.srcauxdata.nh|stringformat:"1.1e" }}</h3>
</div>
</div>
<div class="row">
<div class="col">
{% comment %}
{% if src.srcauxdata.gamma > 0 %}
<object data='{% static src.srcauxdata.specimg %}' type="application/pdf" width="100%" height="600px"></object>
{% autoescape off %}
{{ srcspec }}
{% endautoescape %}
<div class="embed-responsive embed-responsive-16by9">
<object class="embed-responsive-item" src='/products/erotrans/0BB3D3F894F4CC5B7D700E07CF5E3392/{{src.id}}/{{src.srcauxdata.specimg}}' type="application/pdf"></object>
</div>
{%endif%}
{% endcomment %}
<embed src='/products/erotrans/0BB3D3F894F4CC5B7D700E07CF5E3392/{{src.id}}/{{src.srcauxdata.specimg}}#view=FitH' width="100%" height=600px type="application/pdf"></embed>
</div>
{% for refsrc in detections %}
<div class="col">
{%if refsrc and refsrc.srcauxdata and refsrc.srcauxdata.specimg %}
{% comment %}
<embed src='{% static refsrc.srcauxdata.specimg %}#toolbar=0&navpanes=0&scrollbar=0' width="100%" height="100%" type="application/pdf">
{% endcomment %}
<embed src='/products/erotrans/0BB3D3F894F4CC5B7D700E07CF5E3392/{{refsrc.id}}/{{refsrc.srcauxdata.specimg}}' width="100%" height="100%" type="application/pdf">
{% endif %}
</div>
{%endfor%}
</div>
<div class="row">
<div class="col">
{% if src.srcauxdata %}
<img src='/products/erotrans/0BB3D3F894F4CC5B7D700E07CF5E3392/{{src.id}}/{{src.srcauxdata.img}}' width="100%">
{% endif %}
</div>
{% for refsrc in detections %}
<div class="col">
{% if refsrc.srcauxdata and refsrc.srcauxdata.img %}
<img src='/products/erotrans/0BB3D3F894F4CC5B7D700E07CF5E3392/{{refsrc.id}}/{{refsrc.srcauxdata.img}}' width="100%">
{% comment %}
<img src='{% static refsrc.srcauxdata.img %}' width="100%">
{% endcomment %}
{% endif %}
</div>
{% endfor %}
</div>
{% endif %}
<div class="row">
<div class="col">
<embed src='/products/erotrans/0BB3D3F894F4CC5B7D700E07CF5E3392/{{src.id}}/{{src.srcauxdata.lcpdf}}#view=FitH' width="100%" height=600px type="application/pdf"></embed>
</div>
{% for refsrc in detections %}
<div class="col">
<embed src='/products/erotrans/0BB3D3F894F4CC5B7D700E07CF5E3392/{{refsrc.id}}/{{refsrc.srcauxdata.lcpdf}}#view=FitH' width="100%" height=600px type="application/pdf"></embed>
</div>
{% endfor %}
</div>
</div>
</div>
</br>
<h3><span class="label label-default"> <a href=http://simbad.u-strasbg.fr/simbad/sim-coo?Coord={{src.ra}}{{src.dec|stringformat:"+.7f"}}&CooFrame=FK5&CooEpoch=2000&CooEqui=2000&CooDefinedFrames=none&Radius=20&Radius.unit=arcsec&submit=submit+query&CoordList=>Simbad</a></span>
<span class="label label-default">
<a href=https://ned.ipac.caltech.edu/conesearch?search_type=Near%20Position%20Search&coordinates={{src.ra}}d,{{src.dec|stringformat:"+.3f"|escape}}d&radius=0.2&in_csys=Equatorial&in_equinox=J2000&out_csys=Equatorial&out_equinox=Same%20as%20Input&hconst=67.8&omegam=0.308&omegav=0.692&wmap=4&corr_z=1&iau_style=liberal&in_csys_IAU=Equatorial&in_equinox_IAU=B1950&z_constraint=Unconstrained&z_unit=z&ot_include=ANY&nmp_op=ANY&out_csys_nearname=Equatorial&out_equinox_nearname=J2000&obj_sort=Distance%20to%20search%20center>NED</a>
</span></h3>
</br>
{% if gaia.count %}
<div style="font-size:16px">
<h3>GAIA</h3>
<table id="dailysrctr" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">G mag</th>
<th class="th-sm">plx</th>
<th class="th-sm">pmra</th>
<th class="th-sm">pmdec</th>
<th class="th-sm">offset, "</th>
</tr>
</thead>
<tbody>
{% for csrc in gaia %}
<tr>
<td><a href="{{ csrc.get_absolute_url }}">{{ csrc.name }}</a></td>
<td>{{ csrc.ra|floatformat:5 }}</td>
<td>{{ csrc.dec|floatformat:5 }}</td>
<td>
{{ csrc.gaiasource.phot_g_mean_mag|floatformat:-1 }}
</td>
<td>
{{csrc.gaiasource.parallax|floatformat:-2}}&#177;{{csrc.gaiasource.parallax_error|floatformat:-2}}
</td>
<td>
{{csrc.gaiasource.pmra|floatformat:-2}}&#177;{{csrc.gaiasource.pmra_error|floatformat:-2}}
</td>
<td>
{{csrc.gaiasource.pmdec|floatformat:-2}}&#177;{{csrc.gaiasource.pmdec_error|floatformat:-2}}
</td>
<td>{{ csrc.sep|floatformat:3 }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</table>
</div>
{% endif %}
{% if simbad.count %}
<h3>Simbad</h3>
<div style="font-size:16px">
<table id="dailysrctr" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">class & z</th>
<th class="th-sm">offset, "</th>
</tr>
</thead>
<tbody>
{% for csrc in simbad %}
<tr>
<td><a href="{{ csrc.get_absolute_url }}">{{ csrc.name }}</a></td>
<td>{{ csrc.ra|floatformat:3 }}</td>
<td>{{ csrc.dec|floatformat:3 }}</td>
<td>
class={{csrc.simbadsource.obj_class}} {%if csrc.simbadsource.z > 0.0001 %} z={{csrc.simbadsource.z}} {% endif %}
</td>
<td>{{ csrc.sep|floatformat:3 }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</table>
</div>
{% endif %}
{% if xray.count %}
<h3>X-ray</h3>
<div style="font-size:16px">
<table id="dailysrctr" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">flux, erg/s </th>
<th class="th-sm">offset, "</th>
<th class="th-sm">catalog</th>
</tr>
</thead>
<tbody>
{% for csrc in xray %}
<tr>
<td><a href="{{ csrc.get_absolute_url }}">{{ csrc.name }}</a></td>
<td>{{ csrc.ra|floatformat:3 }}</td>
<td>{{ csrc.dec|floatformat:3 }}</td>
<td>
{{ csrc.sxflux|stringformat:"1.1e" }}
</td>
<td>{{ csrc.sep|floatformat:3 }}</td>
<td>{{ csrc.catalog.first.name }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</table>
</div>
{% endif %}
{% if ztf.count %}
<h3>ZTF</h3>
<div style="font-size:16px">
<table id="dailysrctr" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">class, Mag </th>
<th class="th-sm">offset, "</th>
</tr>
</thead>
<tbody>
{% for csrc in ztf %}
<tr>
<td><a href="{{ csrc.get_absolute_url }}">{{ csrc.name }}</a></td>
<td>{{ csrc.ra|floatformat:3 }}</td>
<td>{{ csrc.dec|floatformat:3 }}</td>
<td>
ztf classrf: <a class="ztfclassrf" href="">{{csrc.connected.ztfoid.classrf}}</a>, g {{csrc.connected.ztfoid.mean_magap_g|floatformat:-1}}, r {{csrc.connected.ztfoid.mean_magap_r|floatformat:-1}}
</td>
<td>{{ csrc.sep|floatformat:3 }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</table>
</div>
{% endif %}
{% if allwise.count %}
<h3>AllWISE</h3>
<div style="font-size:16px">
<table id="dailysrctr" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">W1 </th>
<th class="th-sm">W2 </th>
<th class="th-sm">W3 </th>
<th class="th-sm">W4 </th>
<th class="th-sm">offset, "</th>
</tr>
</thead>
<tbody>
{% for csrc in allwise %}
<tr>
<td><a href="{{ csrc.get_absolute_url }}">{{ csrc.name }}</a></td>
<td>{{ csrc.ra|floatformat:3 }}</td>
<td>{{ csrc.dec|floatformat:3 }}</td>
<td>{{ csrc.w1mag|floatformat:3 }}</td>
<td>{{ csrc.w2mag|floatformat:3 }}</td>
<td>{{ csrc.w3mag|floatformat:3 }}</td>
<td>{{ csrc.w4mag|floatformat:3 }}</td>
<td>{{ csrc.sep|floatformat:3 }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</table>
</div>
{% endif %}
<br>
{% comment %}
<div class="container">
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
</div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<link rel="stylesheet" href="https://aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.css" />
<script type="text/javascript" src="https://aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "J2000d",
fov: 0.05,
target: "{{src.ra|stringformat:'.6f'|safe}} {{src.dec|stringformat:'.6f'|safe}}",
showShareControl: true,
showCooGrid: true});
aladin.setOverlayImageLayer(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
</script>
{% endcomment %}
<script>
var ztfclasses={
null:"Not specified",
"classified":"Classified",
"not classified":"Not classified",
1:"Ceph",
2:"DSCT",
3:"EB",
4:"LPV",
5:"RRL",
6:"SN",
0:"Other",
7:"AGN I",
8:"Blazar",
9:"CV/Nova",
10:"SN Ia",
11:"SN Ibc",
12:"SN II",
14:"SLSN",
15:"EB/SD/D",
16:"EB/C",
17:"Periodic/Other",
18:"AGN",
19:"SN",
20:"Variable Star",
21:"Asteroid",
22:"Bogus",
23:"RS-CVn",
24:"QSO-I"}
var element=document.getElementsByClassName('ztfclassrf');
for (var i = 0, length = element.length; i < length; i++) {element[i].innerHTML=ztfclasses[element[i].innerHTML]};
</script>
<div class="container-fluid" id="src_comments">
{% if src.sourcecomment_set.all %}
<h2>Comments</h2>
{% for comment in src.sourcecomment_set.all %}
<div class="well">
<h3 id='commenttext'>{{comment.text}}</h3>
<p>{{comment.author.username}} ({{comment.created}})</p>
{% if comment.author == user %}
<button type="button" class="btn btn-primary" type="button" data-toggle="modal" data-cid="{{comment.id}}" data-target="#editcomment" id="toggleeditcomment">EDIT</button>
<!--button type="button" class="btn btn-primary" type="button" data-target="#editcomment" id="toggleeditcomment">EDIT</button-->
{% endif %}
</div>
{%endfor%}
{% endif %}
</div>
<div class="modal fade" id="editcomment" tabindex="-1" role="dialog" aria-labelledby="editcomment" aria-hidden="true">
<div class="modal-dialog modal-xl" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">your comment</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body" data-cid="">
<form id="editcommentform" data-cid="">
<div class="form-group">
<!--input type="text" class="form-control" id="recipient-name"-->
<input type="textArea" class="form-control input-xl" id="commenttextform" value="" />
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<!--button type="button" class="btn btn-primary">Save changes</button-->
</div>
</div>
</div>
</div>
<h3>Add comment</h3>
<form id="add_genericsource_comment" method="POST">
{% csrf_token %}
<div class="form-group">
<input type="textArea" class="form-control" id="gs_comment" placeholder="">
</div>
</form>
{% endblock %}

View File

@@ -0,0 +1,211 @@
{% extends "base.html" %}
{% load heasarc_templates %}
{% block header %}{% endblock %}
{% block precontent %}{% endblock %}
{% block content %}
<p>
<a href="{{ cat.get_match_xmm_url }}">4XMM DR9</a> | <a href="{{ cat.get_match_gaia_url }}">Gaia</a>
</p>
{% if cat %}
<h3><a href="{{ cat.get_absolute_url }}">{{ cat.name }} ({{ cat.nrows }})</a> </h3>
<h4><a href="{{ cat.get_absolute_url_match }}">Matched only ({{ match_count }})</a> | <a href="{{ cat.get_absolute_url_nomatch }}">No matched ({{ nomatch_count }})</a></h4>
{% if srcs %}
<!--table class="table"-->
<table id="dterosurvey" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Name</th>
<th class="th-sm">N/Match</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">DET_LIKE_0</th>
<th class="th-sm">ML_FLUX_0</th>
<th class="th-sm">ML_RATE_0</th>
<th class="th-sm"></th>
<th class="th-sm"></th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>
<b>{{ src.name }}</b> {{ src.id_src }}
</td>
<td>{{ src.heasarc.all.count }}</b></td>
<td>{{ src.ra|floatformat:3 }}</td>
<td>{{ src.dec|floatformat:2 }}</td>
<td>{{ src.DET_LIKE_0|floatformat:2 }}</td>
<td>{{ src.ML_FLUX_0|stringformat:"1.1e" }} &pm; {{ src.ML_FLUX_ERR_0|stringformat:"1.1e" }}</td>
<td>
{{ src.ML_RATE_0|floatformat:4 }} &pm; {{ src.ML_RATE_ERR_0|floatformat:4 }}
</td>
<td>
{{ src.xmm_name }}
</td>
<td>
{% if src.simbad.count == 1 %}
{% for simbad in src.simbad.all %}
{{ simbad.obj_class }}
{% endfor %}
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
{% if src %}
<h4><span class="glyphicon glyphicon-arrow-right"></span> <a href="{{ src.get_absolute_url }}"><b>{{ src.name }} ({{ src.heasarc.all.count }} matches)</b></a> RA={{ src.ra|floatformat:4 }}, Dec={{ src.dec|floatformat:4 }}</h4>
{% if heasarcs %}
<h4>XMMSSC (3XMM DR8 Version) CSC (Chandra Source Catalog, v2.0) RASS2RXS</h4>
<table id="dtheasarc" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Table</th>
<th class="th-sm">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Lon</th>
<th class="th-sm">Lat</th>
<!--th class="th-sm">Healpix</th-->
<th class="th-sm">Error (arcsec)</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Notes</th>
</tr>
</thead>
<tbody>
{% for src in heasarcs %}
{% if src.description != 'HeasarcXrayMaster' and src.description != 'HeasarcCHANMASTER' %}
<tr>
<td>{{ src.description|remove_heasarc }}</td>
<td>
<a href="{{ src.get_absolute_url }}">{{ src.name }}</a>
</td>
<td>{{ src.ra|floatformat:3 }}</td>
<td>{{ src.dec|floatformat:3 }}</td>
<td>{{ src.lii|floatformat:3 }}</td>
<td>{{ src.bii|floatformat:3 }}</td>
<!--td>{{ src.healpix }}</td-->
<td>{% if src.error_radius > 0 %}{{ src.error_radius|floatformat:2 }}{% endif %}</td>
<td>{{ src.separation|floatformat:3 }}</td>
<td>
{% if src.description == 'HeasarcCSC' %}
{% if src.extent_flag == 'T' %}extended{% endif %}
{% endif %}
</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Table</th>
<th>Name</th>
<th>RA</th>
<th>Dec</th>
<th>Lon</th>
<th>Lat</th>
<th>Error (arcsec)</th>
<th>Offset (arcsec)</th>
</tr-->
</foot>
</table>
{% endif %}
{% if heasarcs %}
<h4>HEASARC X-ray Master</h4>
<table id="dtheasarcxraymaster" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Mission</th>
<th class="th-sm">Name</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Type</th>
</tr>
</thead>
<tbody>
{% for src in heasarcs %}
{% if src.description == 'HeasarcXrayMaster' %}
<tr>
<td>{{ src.observatory }} ({{ src.database_table }})</td>
<td>
<a href="{{ src.get_absolute_url }}">{{ src.name }}</a>
</td>
<td>{{ src.separation|floatformat:3 }}</td>
<td>
{% if src.class_id != 9999 %}
{{ src.object_class.class_name }}
{% endif %}
</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Mission</th>
<th>Name</th>
<th>Offset (arcsec)</th>
<th>Type</th>
</tr-->
</foot>
</table>
{% endif %}
{% if heasarcs %}
<h4>HEASARC Chandra Master</h4>
<table id="dtheasarcchandramaster" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">ObsID</th>
<th class="th-sm">Name</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Exposure (sec)</th>
<th class="th-sm">Notes</th>
</tr>
</thead>
<tbody>
{% for src in heasarcs %}
{% if src.description == 'HeasarcCHANMASTER' %}
<tr>
<td>{{ src.obsid }}</td>
<td>
<a href="{{ src.get_absolute_url }}">{{ src.name }}</a>
</td>
<td>{{ src.separation|floatformat:3 }}</td>
<td>{{ src.exposure }}</td>
<td>PI: {{ src.pi }}, {{ src.category }}</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Mission</th>
<th>Name</th>
<th>Offset (arcsec)</th>
<th>Exposure (sec)</th>
<th>Notes</th>
</tr-->
</foot>
</table>
{% endif %}
{% endif %}
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,18 @@
{% extends "base.html" %}
{% load heasarc_templates %}
{% block header %}{% endblock %}
{% block content %}
<form action="/srgcat/srga" method="post">
{% csrf_token %}
{{ form }}
<input type="submit" value="Submit">
</form>
{% if name %}<h3>{{ name }}</h3>{% endif %}
{% endblock %}

View File

@@ -0,0 +1,21 @@
<h2>New eRosita daily source list</h2>
<p>Source catalog with ObsID <strong>{{ cat.obsid }}</strong> is loaded to SRG-ArXiv database.</p>
<p>The catalog can be found <a href="http://arxiv.srg.rssi.ru/{{ cat.get_absolute_url }}">here</a>, or using this link: <a href="http://arxiv.srg.rssi.ru/{{ cat.get_absolute_url }}">http://arxiv.srg.rssi.ru/{{ cat.get_absolute_url }}</a>.</p>
<h2>Source list info and statistics:</h2>
<p><strong>Dates:</strong> {{ cat.start|date:"d M Y H:i:s" }} - {{ cat.stop|date:"d M Y H:i:s" }}, <strong>MJD:</strong> {{ cat.mjd_start|floatformat:4 }} - {{ cat.mjd_stop|floatformat:4 }}, <strong>eRoDays:</strong> {{ cat.eroday_start }} - {{ cat.eroday_stop }}</p>
<h4>
Total {{ cat.nrows }} rows |
<a href="http://arxiv.srg.rssi.ru/{{ cat.get_absolute_url_match }}">Matched only ({{ cat.nmatched }})</a> |
<a href="http://arxiv.srg.rssi.ru/{{ cat.get_absolute_url_nomatch }}">Not matched ({{ nomatch_count }})</a> |
<a href="http://arxiv.srg.rssi.ru/{{ cat.get_absolute_url_transients }}">Transients ({{ cat.ntransients }})</a>
</h4>
<p>This SRG-ArXiv service email is sent to all registered users of arxiv.srg.rssi.ru within group <a href="http://arxiv.srg.rssi.ru/groups/4/info"><strong>srg-erosita-transients</strong></a>.
<p>This message is intended for the use of the addressee or addressees only. The unauthorised disclosure, use, dissemination or copying (either in whole or in part) of its content is not permitted. If you received this message in error, please notify the sender and delete it from your system.</p>

View File

@@ -0,0 +1,527 @@
{% extends "base.html" %}
{% load heasarc_templates %}
{% load simbadescape %}
{% block header %}
<a class="btn btn-success" role="button" href="/erotrans">Daily source lists</a>
<a class="btn btn-success" role="button" href="{% url 'show all transeints' %}">All transients</a>
<a class="btn btn-success" role="button" href="{% url 'show bright transients' %}">bright transients with counterparts</a>
<a class="btn btn-success" role="button" href="{% url 'show faded transients' %}">X-ray sources faded in erosita</a>
<a class="btn btn-success" role="button" href="{% url 'show rosat non-detection transients' %}">Bright sources not detected in Rosat</a>
<a class="btn btn-success" role="button" href="{% url 'erotrans alerce' %}">ZTF alerts</a>
{% endblock %}
{% block precontent %}{% endblock %}
{% block content %}
{% if cat %}
<h3>Source list <a href="{{ cat.get_absolute_url }}">{{ cat.obsid }}</a> ({{ cat.nrows }} rows) </h3>
<p><strong>Dates:</strong> {{ cat.start|date:"d M Y H:i" }} - {{ cat.stop|date:"d M Y H:i" }},
<strong>MJD:</strong> {{ cat.mjd_start|floatformat:4 }} - {{ cat.mjd_stop|floatformat:4 }},
<strong>eRoDays:</strong> {{ cat.eroday_start }} - {{ cat.eroday_stop }},
<strong>Created</strong> {{ cat.created|date:"d.m.y H:i" }}</p>
<h4><a href="{{ cat.get_absolute_url_match }}">Matched only ({{ match_count }})</a> |
<a href="{{ cat.get_absolute_url_nomatch }}">Not matched ({{ nomatch_count }})</a> |
<a href="{{ cat.get_absolute_url_transients }}">Transients ({{ trans_count }})</a>
{% if gaia_match_count %}| <a href="{{ cat.get_absolute_url_gaia }}">Gaia ({{ gaia_match_count }})</a>{% endif %}
</h4>
{% if srcs %}
<!--table class="table"-->
<table id="dterotrans" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">N/Match</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">DET_LIKE_0</th>
<th class="th-sm">ML_FLUX_0</th>
<th class="th-sm">Rate</th>
<th class="th-sm">Flux</th>
</tr>
</thead>
<tbody>
{% for src in srcs %}
<tr>
<td>
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b></a> {% if src.rosat_transient %}(ROSAT){% endif %}
</td>
<td>{{ src.heasarc.all.count }}</b></td>
<td>{{ src.ra|floatformat:3 }}</td>
<td>{{ src.dec|floatformat:2 }}</td>
<td>{{ src.DET_LIKE_0|floatformat:2 }}</td>
<td>{{ src.ML_FLUX_0|floatformat:2 }}</td>
<td>{{ src.rate|floatformat:4 }}</td>
<td>{{ src.flux|stringformat:"1.2e" }} </td>
</tr>
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Source name</th>
<th>N/Match</th>
<th>RA</th>
<th>Dec</th>
<th>Healpix</th>
<th>S/N</th>
<th>Rate</th>
<th>Flux</th>
</tr-->
</tfoot>
</table>
{% endif %}
{% endif %}
{% if src %}
<h4><span class="glyphicon glyphicon-arrow-right"></span> <a href="{{ src.get_absolute_url }}"><b>{{ src.name }} ({{ src.heasarc.all.count }} matches)</b></a> from <a href="{{ src.catalog.get_absolute_url }}">{{ src.catalog.obsid }}</a></h4>
<p><strong>RA & DEC:</strong> {{ src.ra|floatformat:4 }} {{ src.dec|floatformat:4 }} </br>
<strong>L & B:</strong> {{ src.lii|floatformat:4 }} {{ src.bii|floatformat:4 }} </br>
<strong>Ext, Ext Like:</strong> {{src.EXT|floatformat:-2}};{{src.EXT_LIKE|floatformat:-2}}</br>
<strong>Dates:</strong> {{ src.catalog.start|date:"d M Y H:i" }} - {{ src.catalog.stop|date:"d M Y H:i" }},
<strong>MJD:</strong> {{ src.catalog.mjd_start|floatformat:4 }} - {{ src.catalog.mjd_stop|floatformat:4 }},
<strong>eRoDays:</strong> {{ src.catalog.eroday_start }} - {{ src.catalog.eroday_stop }},
<strong>Created</strong> {{ src.created|date:"d.m.y H:i" }},
<strong>Modified</strong> {{ src.created|date:"d.m.y H:i" }} </br>
<strong><a href=http://simbad.u-strasbg.fr/simbad/sim-coo?Coord={{src.ra}}{{src.dec|stringformat:"+.3f"}}&CooFrame=FK5&CooEpoch=2000&CooEqui=2000&CooDefinedFrames=none&Radius=20&Radius.unit=arcsec&submit=submit+query&CoordList=>simbad ref</a></strong></br>
<strong><a href=https://ned.ipac.caltech.edu/conesearch?search_type=Near%20Position%20Search&coordinates={{src.ra}}d{{src.dec|stringformat:"+.3f"|escape}}d&radius=0.2&in_csys=Equatorial&in_equinox=J2000&out_csys=Equatorial&out_equinox=Same%20as%20Input&hconst=67.8&omegam=0.308&omegav=0.692&wmap=4&corr_z=1&iau_style=liberal&in_csys_IAU=Equatorial&in_equinox_IAU=B1950&z_constraint=Unconstrained&z_unit=z&ot_include=ANY&nmp_op=ANY&out_csys_nearname=Equatorial&out_equinox_nearname=J2000&obj_sort=Distance%20to%20search%20center>NED ref</a></strong>
</p>
<p>
<strong>DET_LIKE_0:</strong> {{ src.DET_LIKE_0|floatformat:2 }},
<strong>ML_FLUX_0:</strong> {{ src.ML_FLUX_0|floatformat:2 }},
<strong>flux:</strong> {{ src.flux|stringformat:"1.2e" }} erg/sec/cm^2
</p>
{% if heasarcs %}
<h4>XMMSSC (3XMM DR8 Version) CSC (Chandra Source Catalog, v2.0) RASS2RXS, AllWISEAGN</h4>
<table id="dtheasarc" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Table</th>
<th class="th-sm">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Lon</th>
<th class="th-sm">Lat</th>
<!--th class="th-sm">Healpix</th-->
<th class="th-sm">Error (arcsec)</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">flux, erg/sec/cm^2</th>
<th class="th-sm">Notes</th>
</tr>
</thead>
<tbody>
{% for hsrc in heasarcs %}
{% if hsrc.description != 'HeasarcXrayMaster' and hsrc.description != 'HeasarcCHANMASTER' %}
<tr>
<td>{{ hsrc.description|remove_heasarc }}</td>
<td>
<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>
</td>
<td>{{ hsrc.ra|floatformat:3 }}</td>
<td>{{ hsrc.dec|floatformat:3 }}</td>
<td>{{ hsrc.lii|floatformat:3 }}</td>
<td>{{ hsrc.bii|floatformat:3 }}</td>
<!--td>{{ hsrc.healpix }}</td-->
<td>{% if hsrc.error_radius > 0 %}{{ hsrc.error_radius|floatformat:2 }}{% endif %}</td>
<td>{{ hsrc.separation|floatformat:3 }}</td>
<td>{{ hsrc.erosita_flux|stringformat:"1.3e" }} </td>
<td>
{% if hsrc.description == 'HeasarcCSC' %}
{% if hsrc.extent_flag == 'T' %}extended{% endif %}
{% endif %}
</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfoot></foot>
</table>
{% endif %}
{% if gaia %}
<h4>GAIA</h4>
<table id="dthgaia" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">parallax</th>
<th class="th-sm">parallax error</th>
<th class="th-sm">pmra</th>
<th class="th-sm">pmra_error</th>
<th class="th-sm">pmdec</th>
<th class="th-sm">pmdec_error</th>
<th class="th-sm">magnitude</th>
</tr>
</thead>
<tbody>
{% for gaiasrc in gaia %}
<tr>
<td><a href="{{ gaiasrc.get_absolute_url }}">{{ gaiasrc.name }}</a></td>
<td>{{ gaiasrc.ra|stringformat:".3e"}} </td>
<td>{{ gaiasrc.dec|stringformat:".3e"}} </td>
<td>{{ gaiasrc.separation|floatformat:3 }}</td>
<td>{{ gaiasrc.parallax|stringformat:".3e" }}</td>
<td>{{ gaiasrc.parallax_error|stringformat:".3e" }}</td>
<td>{{ gaiasrc.pmra|stringformat:".3e" }}</td>
<td>{{ gaiasrc.pmra_error|stringformat:".3e" }}</td>
<td>{{ gaiasrc.pmdec|stringformat:".3e" }}</td>
<td>{{ gaiasrc.pmdec_error|stringformat:".3e" }}</td>
<td>{{ gaiasrc.phot_g_mean_mag|stringformat:".1f" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</foot>
</table>
{% endif %}
{% if sdss %}
<h4>SDSS</h4>
<table id="dthgaia" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">specobjid</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Z</th>
<th class="th-sm">Zerr</th>
</tr>
</thead>
<tbody>
{% for sdsssrc in sdss %}
<tr>
<td><a href="{{ sdsssrc.get_absolute_url }}">{{ sdsssrc.specobjid }}</a></td>
<td>{{ sdsssrc.ra|floatformat:-3}} </td>
<td>{{ sdsssrc.dec|floatformat:-3}} </td>
<td>{{ sdsssrc.separation|floatformat:3 }}</td>
<td>{{ sdsssrc.z|stringformat:".3e" }}</td>
<td>{{ sdsssrc.z_err|stringformat:".3e" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</foot>
</table>
{% endif %}
{% if simbad %}
<h4>Simbad</h4>
<table id="dthgaia" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">major-id</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">class</th>
<th class="th-sm">Z</th>
</tr>
</thead>
<tbody>
{% for simsrc in simbad %}
<tr>
<td><a href="http://simbad.u-strasbg.fr/simbad/sim-id?Ident={{ simsrc.main_id|simbad_escape }}&NbIdent=1&Radius=2&Radius.unit=arcmin&submit=submit+id">{{ simsrc.main_id }}</a></td>
<td>{{ simsrc.ra|floatformat:-3}} </td>
<td>{{ simsrc.dec|floatformat:-3}} </td>
<td>{{ simsrc.separation|floatformat:3 }}</td>
<td>{{ simsrc.obj_class }}</td>
<td>{{ simsrc.z|stringformat:".3e" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</foot>
</table>
{% endif %}
{% if flesch %}
<h4>Flesch 2019</h4>
<table id="dthgaia" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">name</th>
<th class="th-sm">ra</th>
<th class="th-sm">dec</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Z</th>
<th class="th-sm">Zerr</th>
</tr>
</thead>
<tbody>
{% for fleschsrc in flesch %}
<tr>
<td><a href="{{ fleschsrc.get_absolute_url }}">{{ fleschsrc.name }}</a></td>
<td>{{ fleschsrc.ra|floatformat:-3}} </td>
<td>{{ fleschsrc.dec|floatformat:-3}} </td>
<td>{{ fleschsrc.separation|floatformat:3 }}</td>
<td>{{ fleschsrc.z|stringformat:".3e" }}</td>
<td>{{ fleschsrc.z_err|stringformat:".3e" }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</foot>
</table>
{% endif %}
{% if heasarc_xray %}
<h4>HEASARC X-ray Master</h4>
<table id="dtheasarcxraymaster" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Mission</th>
<th class="th-sm">Name</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Type</th>
</tr>
</thead>
<tbody>
{% for hsrc in heasarc_xray %}
<tr>
<td>{{ hsrc.observatory }} ({{ hsrc.database_table }})</td>
<td>
<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>
</td>
<td>{{ hsrc.separation|floatformat:3 }}</td>
<td>
{% if hsrc.class_id != 9999 %}
{{ hsrc.object_class.class_name }}
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Mission</th>
<th>Name</th>
<th>Offset (arcsec)</th>
<th>Type</th>
</tr-->
</foot>
</table>
{% endif %}
{% if heasarc_chanmaster %}
<h4>HEASARC Chandra Master</h4>
<table id="dtheasarcchandramaster" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">ObsID</th>
<th class="th-sm">Name</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Exposure (sec)</th>
<th class="th-sm">Notes</th>
</tr>
</thead>
<tbody>
{% for hsrc in heasarc_chanmaster %}
<tr>
<td>{{ hsrc.obsid }}</td>
<td>
<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>
</td>
<td>{{ hsrc.separation|floatformat:3 }}</td>
<td>{{ hsrc.exposure }}</td>
<td>PI: {{ hsrc.pi }}, {{ hsrc.category }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Mission</th>
<th>Name</th>
<th>Offset (arcsec)</th>
<th>Exposure (sec)</th>
<th>Notes</th>
</tr-->
</foot>
</table>
{% endif %}
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "J2000d",
fov: 0.05,
target: "{{src.ra|stringformat:'.6f'|safe}} {{src.dec|stringformat:'.6f'|safe}}",
showShareControl: true,
showCooGrid: true});
aladin.setOverlayImageLayer(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
var srccat = A.catalog({name: 'erosita source cat', color: 'white', shape:"cross", sourceSize: 30, onClick: 'showPopup'});
srccat.addSources(A.source({{src.ra|stringformat:"+.6f"|safe}}, {{src.dec|stringformat:"+.6f"|safe}}, {name: '<a href="{{ src.get_absolute_url }}">{{ src.name }}</a>' }));
aladin.addCatalog(srccat);
var rasscat = A.catalog({shape: 'circle', name: 'Counterparts', color: 'white', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(rasscat);
var xmmcat = A.catalog({shape: 'circle', name: 'Counterparts', color: 'red', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(xmmcat);
var csccat = A.catalog({shape: 'circle', name: 'Counterparts', color: 'green', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(csccat);
var sxpscat = A.catalog({shape: 'circle', name: 'Counterparts', color: 'magenta', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(sxpscat);
{% for hsrc in heasarcs %}
{% if hsrc.description == 'HeasarcRASS2RXS' %}
rasscat.addSources(A.source({{ hsrc.ra|safe }}, {{ hsrc.dec|safe }}, {name: '<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>', flux: '{{hsrc.erosita_flux|stringformat:"1.3e"}}' }));
{% endif %}
{% if hsrc.description == 'HeasarcXMMSSC' %}
xmmcat.addSources(A.source({{ hsrc.ra|safe }}, {{ hsrc.dec|safe }}, {name: '<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>', flux: '{{hsrc.erosita_flux|stringformat:"1.3e"}}' }));
{% endif %}
{% if hsrc.description == 'HeasarcCSC' %}
csccat.addSources(A.source({{ hsrc.ra|safe }}, {{ hsrc.dec|safe }}, {name: '<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>', flux: '{{hsrc.erosita_flux|stringformat:"1.3e"}}' }));
{% endif %}
{% if hsrc.description == 'Heasarc2SXPS' %}
sxpscat.addSources(A.source({{ hsrc.ra|safe }}, {{ hsrc.dec|safe }}, {name: '<a href="{{ hsrc.get_absolute_url }}">{{ hsrc.name }}</a>', flux: '{{hsrc.erosita_flux|stringformat:"1.3e"}}' }));
{% endif %}
{% endfor %}
var erncat = A.catalog({shape: 'cross', name: 'Counterparts', color: 'red', sourceSize: 30, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(erncat);
{% for esrc in erneighbours %}
erncat.addSources(A.source({{ esrc.ra|safe }}, {{ esrc.dec|safe }}, {name: '<a href="{{ esrc.get_absolute_url }}">{{ esrc.name }}</a>', flux: '{{esrc.flux|stringformat:"1.3e"}}' }));
{% endfor %}
var gaiacat = A.catalog({shape: 'rhomb', name: 'Counterparts', color: 'white', sourceSize: 30, labelColumn:'name', onClick: 'showPopup'});
aladin.addCatalog(gaiacat);
{% for gsrc in gaia %}
gaiacat.addSources(A.source({{ gsrc.ra|safe }}, {{ gsrc.dec|safe }}, {name: '<a href="{{ gserc.get_absolute_url }}"> {{ gsrc.name }}</a>'}));
{% endfor %}
/*
var cat2 = A.catalog({shape: 'circle', name: 'Counterparts', color: 'red', sourceSize: 0.005, displayLabel: false,onClick: 'showPopup'});
var cat3 = A.catalog({shape: 'circle', name: 'Counterparts', color: 'green', sourceSize: 0.005, displayLabel: false,onClick: 'showPopup'});
var cat4 = A.catalog({shape: 'circle', name: 'Counterparts', color: 'blue', sourceSize: 0.005, displayLabel: false,onClick: 'showPopup'});
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
*/
</script>
{% endif %}
{% if alerce_match %}
<!--table class="table"-->
<table id="dtalerce" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">Flux</th>
<th class="th-sm">EroTrans Catalog</th>
<th class="th-sm">ZTF alert</th>
</tr>
</thead>
<tbody>
{% for src in alerce_match %}
<tr>
<td>
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b></a> {% if src.rosat_transient %}(ROSAT){% endif %}
</td>
<td>{{ src.flux|stringformat:"1.1e" }} </td>
<td><a href="{{ src.catalog.get_absolute_url }}">{{ src.catalog }}</a> {{ src.catalog.start|date:"d.m.y H:i" }} - {{ src.catalog.stop|date:"d.m.y H:i" }}</td>
<td>
{% if src.alerce.all %}
{% for ztf in src.alerce.all %}
<a href="{{ ztf.get_absolute_url }}">{{ ztf.oid }}</a> <strong>{{ ztf.get_early_class }}</strong> {{ ztf.firstdate|date:"d.m.y H:i" }} - {{ ztf.lastdate|date:"d.m.y H:i" }}<br>
{% endfor %}
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
<tfoot>
</tfoot>
</table>
{% endif %}
{% if srcs %}
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "GAL",
survey: "P/DSS2/color",
fov: 197, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
aladin.createImageSurvey("DIRBE_4","DIRBE_4", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/DIRBE_4",'galactic',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
aladin.getBaseImageLayer().getColorMap().update('rainbow');
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("DIRBE_4");
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var cat1 = A.catalog({shape: 'circle', name: 'EroTrans Sources', color: 'white', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
{% for src in srcs %}
cat1.addSources(A.source({{ src.ra|safe }}, {{ src.dec|safe }}, {name: '<a href="{{ src.get_absolute_url }}">{{ src.name }}', RA: '{{ src.ra|floatformat:4 }}', Dec: '{{ src.dec|floatformat:4 }}', Healpix: '{{ src.healpix }}'}));
{% endfor %}
aladin.addCatalog(cat1);
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,18 @@
{% extends "base.html" %}
{% load heasarc_templates %}
{% block header %}{% endblock %}
{% block content %}
<form action="/srgcat/srga" method="post">
{% csrf_token %}
{{ form }}
<input type="submit" value="Submit">
</form>
{% if name %}<h3>{{ name }}</h3>{% endif %}
{% endblock %}

View File

@@ -0,0 +1,359 @@
{% extends "base.html" %}
{% load heasarc_templates %}
{% block header %}
<a class="btn btn-success" role="button" href="/erotrans">Daily source lists</a>
<a class="btn btn-success" role="button" href="{% url 'show all transeints' %}">All transients</a>
<a class="btn btn-success" role="button" href="{% url 'show bright transients' %}">bright transients with counterparts</a>
<a class="btn btn-success" role="button" href="{% url 'show faded transients' %}">X-ray sources faded in erosita</a>
<a class="btn btn-success" role="button" href="{% url 'show rosat non-detection transients' %}">Bright sources not detected in Rosat</a>
<a class="btn btn-success" role="button" href="{% url 'erotrans alerce' %}">ZTF alerts</a>
{% endblock %}
{% block precontent %}
{% if bright %}
<h3>The list of all detected {{ bright_name }} </h3>
<!--table class="table"-->
<table id="dttrans" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class-"th-sm">l</th>
<th class-"th-sm">b</th>
<th class-"th-sm">obs date</th>
<th class="th-sm">DET_LIKE_0</th>
<th class="th-sm">flux</th>
<th class="th-sm">rosat</th>
<th class="th-sm">xmm</th>
<th class="th-sm">sxps</th>
<th class="th-sm">chandra</th>
<th class="th-sm">redshift | parallax | pm</th>
<th class="th-sm">offset, "</th>
<th class="th-sm">Simbad classes</th>
</tr>
</thead>
<tbody>
{% for src in bright %}
<tr>
<td>
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b></a> {% if src.heasarc.exists %} H{% endif %} {% if src.gaia.exists %} G{% endif %}{% if src.sdss_spec.exists %} S {% endif %}{% if src.simbad.exists %} Sb{% endif %}
{% if src.green.exists %} !Near SNR! {% endif %}
</td>
<td>{{ src.lii|floatformat:-3 }}</td>
<td>{{ src.bii|floatformat:-3 }}</td>
<td>{{ src.catalog.start|date:'Y-m-d' }}</td>
<td>{{ src.DET_LIKE_0|stringformat:"1.3e" }}</td>
<td>{{ src.flux|stringformat:"1.1e" }}</td>
<td>{% if src.rassratio %}{{ src.rassratio|stringformat:"1.1e" }}{% else %}<font color="red">{{ src.rlimratio|stringformat:"1.1e" }}</font>{%endif%}</td>
<td>{{ src.xmmratio|stringformat:"1.1e" }}</td>
<td>{{ src.sxpsratio|stringformat:"1.1e" }}</td>
<td>{{ src.cscratio|stringformat:"1.1e" }}</td>
<td> {% if src.z %}z={{ src.z|floatformat:-5 }}; {% elif src.sz %} z= {{src.sz|floatformat:-5}}; {% elif src.fz %} z={{ src.fz|floatformat:-5 }}; {% endif %}
{% if src.plx %}plx={{ src.plx|floatformat:-5 }}; {% elif src.pmr %}pm={{ src.pmr|floatformat:-5 }}; {% elif src.pmd %} pm={{src.pmd|floatformat:-5 }}; {% endif %}
</td>
<td>{{ src.offset|floatformat:3}} </td>
<td>{{ src.sclass}} </td>
</tr>
{% endfor %}
</tbody>
<!--tfoot>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">N/Match</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class-"th-sm">l</th>
<th class-"th-sm">b</th>
<th class="th-sm">DET_LIKE_0</th>
<th class="th-sm">ML_FLUX_0</th>
<th class="th-sm">flux</th>
</tr>
</tfoot-->
</table>
{% endif %}
{% if dim %}
<h3>The list of all detected {{ faded_name }} </h3>
<!--table class="table"-->
<table id="dtfadedtransients" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Source name</th>
<th class-"th-sm">l</th>
<th class-"th-sm">b</th>
<th class-"th-sm">obs date</th>
<th class="th-sm">DET_LIKE_0</th>
<th class="th-sm">flux</th>
<th class="th-sm">rosat</th>
<th class="th-sm">xmm</th>
<th class="th-sm">sxps</th>
<th class="th-sm">chandra</th>
<th class="th-sm">redshift | parallax | pm</th>
<th class="th-sm"> offset, "</th>
</tr>
</thead>
<tbody>
{% for src in dim %}
<tr>
<td>
<a href="{{ src.get_absolute_url }}"><b>{{ src.name }}</b></a> {% if src.heasarc.exists %} H{% endif %} {% if src.gaia.exists %} G{% endif %}{% if src.sdss_spec.exists %} S {% endif %}{% if src.simbad.exists %} Sb{% endif %}
</td>
<td>{{ src.lii|floatformat:1 }}</td>
<td>{{ src.bii|floatformat:1 }}</td>
<td>{{ src.catalog.start|date:'Y-m-d' }}</td>
<td>{{ src.DET_LIKE_0|stringformat:"1.1e" }}</td>
<td>{{ src.flux|stringformat:"1.1e" }}</td>
<td>{% if src.rassratio %}{{ src.rassratio|stringformat:"1.1e" }}{% else %}<font color="red">{{ src.rlimratio|stringformat:"1.1e" }}</font>{%endif%}</td>
<td>{{ src.xmmratio|stringformat:"1.1e" }}</td>
<td>{{ src.sxpsratio|stringformat:"1.1e" }}</td>
<td>{{ src.cscratio|stringformat:"1.1e" }}</td>
<td> {% if src.z %}z={{ src.z|floatformat:-5 }}; {% elif src.sz %} z= {{src.sz|floatformat:-5}}; {% elif src.fz %} z={{ src.fz|floatformat:-5 }}; {% endif %}
{% if src.plx %}plx={{ src.plx|floatformat:-5 }}; {% elif src.pmr %}pm={{ src.pmr|floatformat:-5 }}; {% elif src.pmd %} pm={{src.pmd|floatformat:-5}}; {% endif %}
</td>
<td>{{ src.offset|floatformat:3}} </td>
</tr>
{% endfor %}
</tbody>
<!--tfoot>
<tr>
<th class="th-sm">Source name</th>
<th class="th-sm">N/Match</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class-"th-sm">l</th>
<th class-"th-sm">b</th>
<th class="th-sm">DET_LIKE_0</th>
<th class="th-sm">ML_FLUX_0</th>
<th class="th-sm">flux</th>
</tr>
</tfoot-->
</table>
{% endif %}
{% if src %}
<h4><span class="glyphicon glyphicon-arrow-right"></span> <a href="{{ src.get_absolute_url }}"><b>{{ src.name }} ({{ src.heasarc.all.count }} matches)</b></a> RA, DEC: {{ src.ra|floatformat:4 }} {{ src.dec|floatformat:4 }} l, b: {{ src.lii|floatformat:4 }} {{ src.bii|floatformat:4 }}</h4>
<h4>Flux 2-5 keV: </h4>
{% if heasarcs %}
<h4>XMMSSC (3XMM DR8 Version) CSC (Chandra Source Catalog, v2.0) RASS2RXS</h4>
<table id="dtheasarc" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Table</th>
<th class="th-sm">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Lon</th>
<th class="th-sm">Lat</th>
<!--th class="th-sm">Healpix</th-->
<th class="th-sm">Error (arcsec)</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Notes</th>
<th class="th-sm">Scaled flux</th>
</tr>
</thead>
<tbody>
{% for src in heasarcs %}
{% if src.description != 'HeasarcXrayMaster' and src.description != 'HeasarcCHANMASTER' %}
<tr>
<td>{{ src.description|remove_heasarc }}</td>
<td>
<a href="{{ src.get_absolute_url }}">{{ src.name }}</a>
</td>
<td>{{ src.ra|floatformat:3 }}</td>
<td>{{ src.dec|floatformat:3 }}</td>
<td>{{ src.lii|floatformat:3 }}</td>
<td>{{ src.bii|floatformat:3 }}</td>
<!--td>{{ src.healpix }}</td-->
<td>{% if src.error_radius > 0 %}{{ src.error_radius|floatformat:2 }}{% endif %}</td>
<td>{{ src.separation|floatformat:3 }}</td>
<td>
{% if src.description == 'HeasarcCSC' %}
{% if src.extent_flag == 'T' %}extended{% endif %}
{% endif %}
</td>
<td>
<!--{% if src.description == 'HeasarcRASS2RXS' %} {{src.count_rate}} {%endif%} -->
</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Table</th>
<th>Name</th>
<th>RA</th>
<th>Dec</th>
<th>Lon</th>
<th>Lat</th>
<th>Error (arcsec)</th>
<th>Offset (arcsec)</th>
</tr-->
</foot>
</table>
{% endif %}
{% if heasarcs %}
<h4>HEASARC X-ray Master</h4>
<table id="dtheasarcxraymaster" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">Mission</th>
<th class="th-sm">Name</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Type</th>
</tr>
</thead>
<tbody>
{% for src in heasarcs %}
{% if src.description == 'HeasarcXrayMaster' %}
<tr>
<td>{{ src.observatory }} ({{ src.database_table }})</td>
<td>
<a href="{{ src.get_absolute_url }}">{{ src.name }}</a>
</td>
<td>{{ src.separation|floatformat:3 }}</td>
<td>
{% if src.class_id != 9999 %}
{{ src.object_class.class_name }}
{% endif %}
</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Mission</th>
<th>Name</th>
<th>Offset (arcsec)</th>
<th>Type</th>
</tr-->
</foot>
</table>
{% endif %}
{% if heasarcs %}
<h4>HEASARC Chandra Master</h4>
<table id="dtheasarcchandramaster" class="table table-striped table-bordered table-sm" cellspacing="0" width="100%">
<thead>
<tr>
<th class="th-sm">ObsID</th>
<th class="th-sm">Name</th>
<th class="th-sm">Offset (arcsec)</th>
<th class="th-sm">Exposure (sec)</th>
<th class="th-sm">Notes</th>
</tr>
</thead>
<tbody>
{% for src in heasarcs %}
{% if src.description == 'HeasarcCHANMASTER' %}
<tr>
<td>{{ src.obsid }}</td>
<td>
<a href="{{ src.get_absolute_url }}">{{ src.name }}</a>
</td>
<td>{{ src.separation|floatformat:3 }}</td>
<td>{{ src.exposure }}</td>
<td>PI: {{ src.pi }}, {{ src.category }}</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
<tfoot>
<!--tr>
<th>Mission</th>
<th>Name</th>
<th>Offset (arcsec)</th>
<th>Exposure (sec)</th>
<th>Notes</th>
</tr-->
</foot>
</table>
{% endif %}
{% endif %}
{% endblock %}
{% block content %}
{% if srcs %}
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "GAL",
survey: "P/DSS2/color",
fov: 197, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
aladin.createImageSurvey("DIRBE_4","DIRBE_4", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/DIRBE_4",'galactic',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
aladin.getBaseImageLayer().getColorMap().update('rainbow');
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("DIRBE_4");
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var cat1 = A.catalog({shape: 'circle', name: 'EroTrans bright', color: 'white', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
var cat2 = A.catalog({shape: 'circle', name: 'EroTrans dim', color: 'green', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
{% for src in bright %}
cat1.addSources(A.source({{ src.ra|safe }}, {{ src.dec|safe }}, {name: '<a href="{{ src.get_absolute_url }}">{{ src.name }}', RA: '{{ src.ra|floatformat:4 }}', Dec: '{{ src.dec|floatformat:4 }}', Healpix: '{{ src.healpix }}'}));
{% endfor %}
{% for src in dim %}
cat2.addSources(A.source({{ src.ra|safe }}, {{ src.dec|safe }}, {name: '<a href="{{ src.get_absolute_url }}">{{ src.name }}', RA: '{{ src.ra|floatformat:4 }}', Dec: '{{ src.dec|floatformat:4 }}', Healpix: '{{ src.healpix }}'}));
{% endfor %}
aladin.addCatalog(cat1);
aladin.addCatalog(cat2);
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
</br>
<div style="width=40px; height=40px; background-color=black"><div style="width=40px; height=40px; radius=50%; boundary-color=white;"></div></div><div>white circles - bright transients </div></br>
<div>green circles - faded transients</div>
{% endif %}
{% endblock %}

109
Templates/groups/base.html Normal file
View File

@@ -0,0 +1,109 @@
{% load heasarc_templates %}
{% load srgcat_templates %}
{% load i18n %}
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>{% block title %}SRG ArXiv{% endblock %}</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<META NAME="author" CONTENT="Roman Krivonos, email: krivonos [at] iki.rssi.ru">
<META NAME="description" CONTENT="High Energy Astrophysics Department at IKI RAN (Moscow, Russia)">
<link rel="stylesheet" href="{% static 'jquery/jquery-ui-themes-1.12.1/jquery-ui.css' %}" type="text/css" media="all" />
<script src="{% static 'jquery/jquery-3.5.1.min.js' %}" type="text/javascript"> </script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.js"></script>
<script src="{% static 'jquery/jquery-ui-1.12.1/jquery-ui.min.js' %}" type="text/javascript"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
<script src="{% static 'js/sorted.js' %}"></script>
<script>
$( function() {
$( document ).tooltip();
} );
</script>
<style>
label {
display: inline-block;
width: 5em;
}
.dot {
height: 25px;
width: 25px;
background-color: #bbb;
border-radius: 50%;
display: inline-block;
}
.dotr {
height: 12px;
width: 12px;
background-color: red;
border-radius: 50%;
display: inline-block;
}
.dotg {
height: 12px;
width: 12px;
background-color: green;
border-radius: 50%;
display: inline-block;
}
.dotb {
height: 12px;
width: 12px;
background-color: blue;
border-radius: 50%;
display: inline-block;
}
</style>
</head>
<body>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="/"><span class="glyphicon glyphicon-list"></span> SRG.ArXiv</a>
</div>
<ul class="nav navbar-nav">
{% if user.is_authenticated %}
<li class="dropdown">
<a class="dropdown-toggle navbar-right" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-user"></span> {% trans 'Groups' %}
<span class="caret"></span></a>
<ul class="dropdown-menu">
{% for group in user.groups.all %}
<li><a href="/groups/{{ group.pk }}/info">{{ group }}</a></li>
{% endfor %}
<li><a href="/stats/">Web Analytics</a></li>
</ul>
</li>
{% endif %}
</ul>
{% if user.is_authenticated %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/logout">{{ user.email }} <span class="glyphicon glyphicon-log-out"></span> Sign Out</a>
{% else %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/login"><span class="glyphicon glyphicon-log-in"></span> Sign In</a>
{% endif %}
</div>
</nav>
{% block header %}{% endblock %}
{% block content %}{% endblock %}
</body>
</html>

View File

@@ -0,0 +1,44 @@
{% extends "groups/base.html" %}
{% load heasarc_templates %}
{% block header %}{% endblock %}
{% block precontent %}{% endblock %}
{% block content %}
<div class="container">
{% if user.is_authenticated %}
<h3>Registered SRG ArXiv groups</h3>
<ul>
{% for group in user.groups.all %}
<li><a href="/groups/{{ group.pk }}/info">{{ group }}</a></li>
{% endfor %}
</ul>
{% endif %}
{% if django_group %}
<h3>Группа: {{ django_group.name }}</h3>
<table class="table">
<thead>
<tr>
<th scope="col">Имя</th>
<th scope="col">Фамилия</th>
<th scope="col">Аккаунт</th>
<th scope="col">Авторизация</th>
</tr>
</thead>
<tbody>
{% for user in django_group.user_set.all %}
<tr>
<td><strong>{{ user.first_name }}</strong></td>
<td><strong>{{ user.last_name }}</strong></td>
<td>{{ user }}</td>
<td>{% if user.last_login %}{{ user.last_login|date:"d.m.Y" }}{% endif %}</td>
</tr>
{% endfor %}
</table>
{% endif %}
</div>
{% endblock %}

692
Templates/heasarc/base.html Normal file
View File

@@ -0,0 +1,692 @@
{% load artsurvey_templates %}
{% load heasarc_templates %}
{% load srgcat_templates %}
{% load i18n %}
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>{% block title %}SRG ArXiv{% endblock %}</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<META NAME="author" CONTENT="Roman Krivonos, email: krivonos [at] iki.rssi.ru">
<META NAME="description" CONTENT="High Energy Astrophysics Department at IKI RAN (Moscow, Russia)">
<link rel="stylesheet" href="{% static 'jquery/jquery-ui-themes-1.12.1/jquery-ui.css' %}" type="text/css" media="all" />
<script src="{% static 'jquery/jquery-3.5.1.min.js' %}" type="text/javascript"> </script>
<script type="text/javascript" src="{% static 'js/bootstrap.min.js' %}"></script>
<script src="{% static 'jquery/jquery-ui-1.12.1/jquery-ui.min.js' %}" type="text/javascript"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
<link rel="stylesheet" href="/static/css/style.css" />
<link type="text/css" rel="stylesheet" href="/static/js9/js9support.css">
<link type="text/css" rel="stylesheet" href="/static/js9/js9.css">
<script type="text/javascript" src="/static/js9/js9prefs.js"></script>
<script type="text/javascript" src="/static/js9/js9support.min.js"></script>
<script type="text/javascript" src="/static/js9/js9.min.js"></script>
<script type="text/javascript" src="/static/js9/js9plugins.js"></script>
<script>
var xhr = new XMLHttpRequest();
xhr.open("POST", "https://vizier.u-strasbg.fr/vizier/", true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.send(JSON.stringify({
"keywordSearchPosition": "10.0 , 10.0"
}));
function ToggleAllWise() {
var x = document.getElementById("ToggleAllWise");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
function ToggleOtherSRGA() {
var x = document.getElementById("ToggleOtherSRGA");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
function ToggleART() {
var x = document.getElementById("ToggleART");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
function ToggleVLASS() {
var x = document.getElementById("ToggleVLASS");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
function ToggleGLIMPSE() {
var x = document.getElementById("ToggleGLIMPSE");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
function ToggleGaiaPLX() {
var x = document.getElementById("ToggleGaiaPLX");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
function ToggleGaiaPM() {
var x = document.getElementById("ToggleGaiaPM");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
function Toggle2MASS() {
var x = document.getElementById("ToggleGaiaPM");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
function ToggleGaiaEx() {
var x = document.getElementById("ToggleGaiaEx");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
function load_target(){
JS9.RemoveRegions();
JS9.AddRegions("circle", {ra:"{{ src.ra }}", dec:"{{ src.dec }}", text:"{{ src.name }}", color:"white",});
}
</script>
</head>
<body>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="/"><span class="glyphicon glyphicon-list"></span> SRG.ArXiv</a>
</div>
<ul class="nav navbar-nav">
</ul>
{% if user.is_authenticated %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/logout">{{ user }} <span class="glyphicon glyphicon-log-out"></span> Sign Out</a>
{% else %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/login"><span class="glyphicon glyphicon-log-in"></span> Sign In</a>
{% endif %}
</div>
</nav>
{% block header %}
<div class="container">
<!--form>
<input type="button" value="Go back" onclick="history.back()">
</form-->
{% if src %}
<h2><a href="{{ src.get_base_url }}">{{ src.name }}</a> RA={{ src.ra|floatformat:4 }} Dec={{ src.dec|floatformat:4 }} {% if src.radec_error %}({{ src.radec_error|floatformat:4 }}''){% endif %}{% if src.error_radius %}({{ src.error_radius|floatformat:4 }}''){% endif %}</h2>
<p>
<b><big>Search in <a target="_blank" href='http://vizier.u-strasbg.fr/viz-bin/VizieR-4?-c={{ src.ra }}{{ src.dec|stringformat:"+f" }}&-c.rs=5&-out.add=_r&-sort=_r&-out.max=$4'>VizieR 5''</a> | <a target="_blank" href='https://alerce.online/?ranking=1&ra={{ src.ra|stringformat:"+.6f" }}&dec={{ src.dec|stringformat:"+.6f" }}&radius=5&count=false&page=1&perPage=20&sortBy=probability&sortDesc=true'>ZTF ALERCE 5''</a></big></b>
</p>
<h3><a href="{{ src.get_absolute_url }}">Show details</a></h3>
{% else %}
N/A
{% endif %}
{% if artsurveysources_listed %}
<p>
<hr>
<h4 class="card-title"> Associated ART-XC sources ({{ artsurveysources_listed.count }})
<button onclick="ToggleART()">Show/Hide</button></h4>
<div id="ToggleART" style="display:none">
<table id="GaiaPlxTable" class="table tableSection">
<thead>
<tr>
<th class="th-sm">Name</th>
</thead>
<tbody>
{% for art in artsurveysources_listed %}
<tr>
<td>
<a href="{{ art.get_absolute_url }}">{{ art }}</a>{% if art in artsurveysources_linked %} (<b>Linked</b>){% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</p>
</div>
{% endif %}
</div>
{% endblock %}
<div class="container">
{% block content %}{% endblock %}
</div>
<div class="container">
{% block counterparts %}
<h3><a href="{{ src.get_new_astrobasis_url }}">Make new optical counterpart</a></h3>
<table id="UserCatTable" class="table tableSection">
<thead>
<tr>
<th class="th-sm">Name</th>
<th class="th-sm">Notes</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Offset ('')</th>
<th class="th-sm">Optical Bands</th>
<th class="th-sm"></th>
</tr>
</thead>
<tbody>
{% for usersrc in usercat %}
<tr>
<td>{{ usersrc.name }}</td>
<td>
{% if usersrc.notes %}<span title="{{ usersrc.notes }}"><span class="glyphicon glyphicon-comment"></span></span>{% endif %}
</td>
<td>{{ usersrc.ra|floatformat:4}} </td>
<td>{{ usersrc.dec|floatformat:4}} </td>
<td>{{ usersrc.separation|floatformat:4}} </td>
<td>
[<a title="add magnitude" href="{{ usersrc.get_add_magn_url }}/{{ src.pk }}">+</a>]
{% for magn in usersrc.magnitudes.all %}
<b>{{ magn.band }}</b> {{ magn.magn }} &plusmn; {{ magn.error}} [<a href="{{ magn.get_delete_url }}/{{ src.pk }}">del</a>],
{% endfor %}
</td>
<td>
<a class="btn btn-warning btn-xs" role="button" href="{{ usersrc.get_update_url }}/{{ src.pk }}">Edit</a>
</td>
<td>
<a class="btn btn-success btn-xs" role="button" href="{{ usersrc.get_delete_url }}/{{ src.pk }}">Delete</a>
</td>
</tr>
{% endfor %}
</tbody>
</tbody>
</table>
{% if src.gaia3_primary %}<hr> Gaia primary: <b>{{ src.gaia3_primary }}</b> <a href="{{ src.gaia3_primary.get_absolute_url_vizier }}">VizieR</a>{% endif %}
{% if gaia_plx %}
<h4 class="card-title">Gaia "star / parallax" counterparts ({{ gaia_plx.count }})
<button onclick="ToggleGaiaPLX()">Show/Hide</button></h4>
<div id="ToggleGaiaPLX" style="display:block">
<h4>Gaia DR3 "star" <em style="color:red;">parallax</em> ({{ gaia_plx.count }}) {% if not gaia_plx %}| sort by <button onclick='sortTableOffset(3,"GaiaPlxTable")'>Offset</button>{% endif %}</h4>
<p>
<pre>abs(parallax) > 4*parallax_error</pre>
</p>
<table id="GaiaPlxTable" class="table tableSection">
<thead>
<tr>
<th class="th-sm">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Offset ('')</th>
<th class="th-sm">Parallax</th>
<th class="th-sm">Parallax error</th>
<th class="th-sm">pmra</th>
<th class="th-sm">pmra_error</th>
<th class="th-sm">pmdec</th>
<th class="th-sm">pmdec_error</th>
<th class="th-sm">Mag</th>
<th class="th-sm">{% if src.gaia3_primary %}<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_base_url }}gaia/clean/">Clean</a>{% endif %}</th>
</tr>
</thead>
<tbody>
{% for gaiasrc in gaia_plx %}
<tr>
<td>{{ gaiasrc.name }} <a href="{{ gaiasrc.get_absolute_url_vizier }}">VizieR</a></td>
<td>{{ gaiasrc.ra|floatformat:4}} </td>
<td>{{ gaiasrc.dec|floatformat:4}} </td>
<td>{{ gaiasrc.separation|floatformat:2 }}</td>
<td>{{ gaiasrc.parallax|floatformat:3 }}</td>
<td>{{ gaiasrc.parallax_error|floatformat:3 }}</td>
<td>{{ gaiasrc.pmra|floatformat:3 }}</td>
<td>{{ gaiasrc.pmra_error|floatformat:3 }}</td>
<td>{{ gaiasrc.pmdec|floatformat:3 }}</td>
<td>{{ gaiasrc.pmdec_error|floatformat:3 }}</td>
<td>{{ gaiasrc.phot_g_mean_mag|stringformat:".1f" }}</td>
<td>
{% if src.gaia3_primary.pk == gaiasrc.pk %}
<strong>Attached</strong>
{% else %}
<a class="btn btn-success btn-xs" role="button" href="{{ src.get_base_url }}gaia/{{ gaiasrc.pk }}/">Primary</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</tbody>
</table>
</div><!-- hide -->
{% endif %}
{% if gaia_pm %}
<h4 class="card-title">Gaia "star / proper motion" counterparts ({{ gaia_pm.count }})
<button onclick="ToggleGaiaPM()">Show/Hide</button></h4>
<div id="ToggleGaiaPM" style="display:block">
<h4>Gaia DR3 "star" <em style="color:red;">proper motion</em> ({{ gaia_pm.count }}) {% if not gaia_pm %}| sort by <button onclick='sortTableOffset(3,"GaiaPMTable")'>Offset</button>{% endif %}</h4>
<p>
<pre>abs(pmra) > 4*pmra_error OR abs(pmdec) > 4*pmdec_error</pre>
</p>
<table id="GaiaPMTable" class="table tableSection">
<thead>
<tr>
<th class="th-sm">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Offset ('')</th>
<th class="th-sm">Parallax</th>
<th class="th-sm">Parallax error</th>
<th class="th-sm">pmra</th>
<th class="th-sm">pmra_error</th>
<th class="th-sm">pmdec</th>
<th class="th-sm">pmdec_error</th>
<th class="th-sm">Mag</th>
<th class="th-sm">{% if src.gaia3_primary %}<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_base_url }}gaia/clean/">Clean</a>{% endif %}</th>
</tr>
</thead>
<tbody>
{% for gaiasrc in gaia_pm %}
<tr>
<td><a href="{{ gaiasrc.get_absolute_url_vizier }}">{{ gaiasrc.name }}</a></td>
<td>{{ gaiasrc.ra|floatformat:4}} </td>
<td>{{ gaiasrc.dec|floatformat:4}} </td>
<td>{{ gaiasrc.separation|floatformat:2 }}</td>
<td>{{ gaiasrc.parallax|floatformat:3 }}</td>
<td>{{ gaiasrc.parallax_error|floatformat:3 }}</td>
<td>{{ gaiasrc.pmra|floatformat:3 }}</td>
<td>{{ gaiasrc.pmra_error|floatformat:3 }}</td>
<td>{{ gaiasrc.pmdec|floatformat:3 }}</td>
<td>{{ gaiasrc.pmdec_error|floatformat:3 }}</td>
<td>{{ gaiasrc.phot_g_mean_mag|stringformat:".1f" }}</td>
<td>
{% if src.gaia3_primary.pk == gaiasrc.pk %}
<strong>Attached</strong>
{% else %}
<a class="btn btn-success btn-xs" role="button" href="{{ src.get_base_url }}gaia/{{ gaiasrc.pk }}/">Primary</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</tbody>
</table>
</div><!-- hide -->
{% endif %}
{% if gaia_ex %}
<h4 class="card-title">Gaia "other" counterparts ({{ gaia_ex.count }})
<button onclick="ToggleGaiaEx()">Show/Hide</button></h4>
<div id="ToggleGaiaEx" style="display:block">
<h4>Gaia DR3 "other" <em style="color:red;">exclude paralax and proper motion</em> {% if not gaia_ex.count %} | sort by <button onclick='sortTableOffset(3,"GaiaEXTable")'>Offset</button>{% endif %}</h4>
<p>
<pre><em>exclude</em> { abs(pmra) > 4*pmra_error OR abs(pmdec) > 4*pmdec_error OR abs(pmra) > 4*pmra_error OR abs(pmdec) > 4*pmdec_error OR abs(parallax) > 4*parallax_error }</pre>
</p>
<table id="GaiaEXTable" class="table tableSection">
<thead>
<tr>
<th class="th-sm">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Offset ('')</th>
<th class="th-sm">Parallax</th>
<th class="th-sm">Parallax error</th>
<th class="th-sm">pmra</th>
<th class="th-sm">pmra_error</th>
<th class="th-sm">pmdec</th>
<th class="th-sm">pmdec_error</th>
<th class="th-sm">Mag</th>
<th class="th-sm">{% if src.gaia3_primary %}<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_base_url }}gaia/clean/">Clean</a>{% endif %}</th>
</tr>
</thead>
<tbody>
{% for gaiasrc in gaia_ex %}
<tr>
<td><a href="{{ gaiasrc.get_absolute_url_vizier }}">{{ gaiasrc.name }}</a></td>
<td>{{ gaiasrc.ra|floatformat:4}} </td>
<td>{{ gaiasrc.dec|floatformat:4}} </td>
<td>{{ gaiasrc.separation|floatformat:2 }}</td>
<td>{% if gaiasrc.parallax < 100 %}{{ gaiasrc.parallax|floatformat:3 }}{% else %}N/A{% endif %}</td>
<td>{% if gaiasrc.parallax_error < 100 %}{{ gaiasrc.parallax_error|floatformat:3 }}{% else %}N/A{% endif %}</td>
<td>{% if gaiasrc.pmra < 100 %}{{ gaiasrc.pmra|floatformat:3 }}{% else %}N/A{% endif %}</td>
<td>{% if gaiasrc.pmra_error < 100 %}{{ gaiasrc.pmra_error|floatformat:3 }}{% else %}N/A{% endif %}</td>
<td>{% if gaiasrc.pmdec < 100 %}{{ gaiasrc.pmdec|floatformat:3 }}{% else %}N/A{% endif %}</td>
<td>{% if gaiasrc.pmdec_error < 100 %}{{ gaiasrc.pmdec_error|floatformat:3 }}{% else %}N/A{% endif %}</td>
<td>{% if gaiasrc.phot_g_mean_mag < 100 %}{{ gaiasrc.phot_g_mean_mag|stringformat:".1f" }}{% else %}N/A{% endif %}</td>
<td>
{% if src.gaia3_primary.pk == gaiasrc.pk %}
<strong>Attached</strong>
{% else %}
<a class="btn btn-success btn-xs" role="button" href="{{ src.get_base_url }}gaia/{{ gaiasrc.pk }}/">Primary</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</tbody>
</table>
</div>
{% endif %}
{% if src.glimpse_primary %}<hr>GLIMPSE primary: <b>{{ src.glimpse_primary }}</b>{% endif %}
{% if glimpse %}
<h4 class="card-title">GLIMPSE counterparts ({{ glimpse.count }})
<button onclick="ToggleGLIMPSE()">Show/Hide</button></h4>
<div id="ToggleGLIMPSE" style="display:block">
{% if not glimpse.count %}
<h4>sort by <button onclick='sortTableOffset(3,"GLIMPSETable")'>Offset</button></h4>
{% endif %}
<table id="GLIMPSETable" class="table tableSection">
<thead>
<tr>
<th class="th-sm" title="IAU name of the component">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Error ('')</th>
<th class="th-sm">Offset ('')</th>
<th class="th-sm" title="">J</th>
<th class="th-sm" title="">H</th>
<th class="th-sm" title="">K</th>
<th class="th-sm" title="3.6um IRAC (Band 1) magnitude">Band 1</th>
<th class="th-sm" title="4.5um IRAC (Band 2) magnitude">Band 2</th>
<th class="th-sm" title="5.8um IRAC (Band 1) magnitude">Band 3</th>
<th class="th-sm" title="8.0um IRAC (Band 1) magnitude">Band 4</th>
<th class="th-sm">dup</th>
<th class="th-sm">qual</th>
<th class="th-sm">{% if src.glimpse_primary %}<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_base_url }}glimpse/clean/">Clean</a>{% endif %}</th>
</tr>
</thead>
<tbody>
{% for obj in glimpse %}
<tr>
<td>{{ obj.name }}</td>
<td>{{ obj.ra|floatformat:4 }}</td>
<td>{{ obj.dec|floatformat:4 }}</td>
<td>{{ obj.error_radius|floatformat:2 }}</td>
<td>{{ obj.separation|floatformat:2 }}</td>
<td>{{ obj.jmag|safe }}</td>
<td>{{ obj.hmag|safe }}</td>
<td>{{ obj.kmag|safe }}</td>
<td>{{ obj.b1mag|safe }} &plusmn; {{ obj.e_b1mag|safe }}</td>
<td>{{ obj.b2mag|safe }} &plusmn; {{ obj.e_b2mag|safe }}</td>
<td>{{ obj.b3mag|safe }} &plusmn; {{ obj.e_b3mag|safe }}</td>
<td>{{ obj.b4mag|safe }} &plusmn; {{ obj.e_b4mag|safe }}</td>
<td>{{ obj.dupflag|safe }}</td>
<td>{{ obj.qualflag|safe }}</td>
<td>
{% if src.glimpse_primary.pk == obj.pk %}
<strong>Attached</strong>
{% else %}
<a class="btn btn-success btn-xs" role="button" href="{{ src.get_base_url }}glimpse/{{ obj.pk }}/">Primary</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</tbody>
</table>
</div><!-- hide -->
{% endif %}
{% if src.twomass_primary %}<hr>2MASS primary: <b>{{ src.twomass_primary }}</b>{% endif %}
{% if twomass %}
<h4 class="card-title">2MASS counterparts ({{ twomass.count }})
<button onclick="Toggle2MASS()">Show/Hide</button></h4>
<div id="Toggle2MASS" style="display:block">
{% if not twomass.count %}
<h4>sort by <button onclick='sortTableOffset(3,"2MASSTable")'>Offset</button></h4>
{% endif %}
<table id="2MASSTable" class="table tableSection">
<thead>
<tr>
<th class="th-sm" title="IAU name of the component">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Error ('')</th>
<th class="th-sm">Offset ('')</th>
<th class="th-sm">Jmag</th>
<th class="th-sm">Hmag</th>
<th class="th-sm">Kmag</th>
<th class="th-sm">qkfg</th>
<th class="th-sm">rkfg</th>
<th class="th-sm">bkfg</th>
<th class="th-sm">ckfg</th>
<th class="th-sm" title="Distance between source and nearest neighbour">prox</th>
<th class="th-sm">xflg</th>
<th class="th-sm">aflg</th>
<th class="th-sm">{% if src.twomass_primary %}<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_base_url }}twomass/clean/">Clean</a>{% endif %}</th>
</tr>
</thead>
<tbody>
{% for obj in twomass %}
<tr>
<td><a href="http://vizier.u-strasbg.fr/viz-bin/VizieR-5?-ref=VIZ626bdcbcebdf5&-out.add=.&-source=II/246/out&2MASS==={{ obj.name }}">{{ obj.name }}</a></td>
<td>{{ obj.ra|floatformat:4 }}</td>
<td>{{ obj.dec|floatformat:4 }}</td>
<td>{{ obj.error_radius|floatformat:2 }}</td>
<td>{{ obj.separation|floatformat:2 }}</td>
<td>{{ obj.jmag|safe }} &plusmn; {{ obj.e_jmag|safe }}</td>
<td>{{ obj.hmag|safe }} &plusmn; {{ obj.e_hmag|safe }}</td>
<td>{{ obj.kmag|safe }} &plusmn; {{ obj.e_kmag|safe }}</td>
<td>{{ obj.qkfg|safe }}</td>
<td>{{ obj.rkfg|safe }}</td>
<td>{{ obj.bkfg|safe }}</td>
<td>{{ obj.ckfg|safe }}</td>
<td>{{ obj.prox|safe }}</td>
<td>{{ obj.xflg|safe }}</td>
<td>{{ obj.aflg|safe }}</td>
<td>
{% if src.twomass_primary.pk == obj.pk %}
<strong>Attached</strong>
{% else %}
<a class="btn btn-success btn-xs" role="button" href="{{ src.get_base_url }}twomass/{{ obj.pk }}/">Primary</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</tbody>
</table>
</div><!-- hide -->
{% endif %}
{% if src.allwise_primary %}<hr>AllWise primary: <b>{{ src.allwise_primary }}</b>{% endif %}
{% if allwise %}
<h4 class="card-title">AllWise counterparts ({{ allwise.count }})
<button onclick="ToggleAllWise()">Show/Hide</button></h4>
<div id="ToggleAllWise" style="display:block">
{% if not allwise.count %}
<h4>sort by <button onclick='sortTableOffset(3,"AllWiseTable")'>Offset</button></h4>
{% endif %}
<table id="AllWiseTable" class="table tableSection">
<thead>
<tr>
<th class="th-sm" title="IAU name of the component">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Error ('')</th>
<th class="th-sm">Offset ('')</th>
<th class="th-sm">w1mag</th>
<th class="th-sm">w2mag</th>
<th class="th-sm">w1-w2</th>
<th class="th-sm">{% if src.allwise_primary %}<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_base_url }}allwise/clean/">Clean</a>{% endif %}</th>
</tr>
</thead>
<tbody>
{% for obj in allwise %}
<tr>
<td>{{ obj.name }} <a href="https://irsa.ipac.caltech.edu/SCS?table=neowiser_p1bs_psd&RA={{ obj.ra }}&DEC={{ obj.dec|stringformat:"+.6f" }}&SR=0.00028&format=csv"><small>NEOWISE csv</small></a></td>
<td>{{ obj.ra|floatformat:4 }}</td>
<td>{{ obj.dec|floatformat:4 }}</td>
<td>{{ obj.error_radius|floatformat:2 }}</td>
<td>{{ obj.separation|floatformat:2 }}</td>
<td>
{% if obj.W1mag %}
{{ obj.W1mag|floatformat:2 }} &plusmn; {{ obj.e_W1mag|floatformat:2 }}
{% endif %}
</td>
<td>
{% if obj.W2mag %}
{{ obj.W2mag|floatformat:2 }} &plusmn; {{ obj.e_W2mag|floatformat:2 }}
{% endif %}
</td>
<td>
{{ obj.w1w2|floatformat:2 }} &plusmn; {{ obj.w1w2_error|floatformat:2 }}
</td>
<td>
{% if src.allwise_primary.pk == obj.pk %}
<strong>Attached</strong>
{% else %}
<a class="btn btn-success btn-xs" role="button" href="{{ src.get_base_url }}allwise/{{ obj.pk }}/">Primary</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</tbody>
</table>
</div><!-- hide -->
{% endif %}
{% if src.vlass_primary %}<hr>VLASS primary: <b>{{ src.vlass_primary }}</b>{% endif %}
{% if vlass %}
<h4 class="card-title">VLASS counterparts ({{ vlass.count }})
<button onclick="ToggleVLASS()">Show/Hide</button></h4>
<div id="ToggleVLASS" style="display:block">
{% if not vlass.count %}
<h4>sort by <button onclick='sortTableOffset(3,"VLASSTable")'>Offset</button></h4>
{% endif %}
<table id="VLASSTable" class="table tableSection">
<thead>
<tr>
<th class="th-sm" title="IAU name of the component, VLASS1QLCIR JHHMMSS.ss+DDMMSS.s">Name</th>
<th class="th-sm">RA</th>
<th class="th-sm">Dec</th>
<th class="th-sm">Offset ('')</th>
<th class="th-sm" title="The integrated flux density of the component in the S-band (2-4GHz)">Ftot</th>
<th class="th-sm" title="Peak brightness of the component in the S-band (2-4GHz)">Fpeak</th>
<th class="th-sm" title="Flag to identify duplicate detections">Dupl. [<a href="https://vizier.cds.unistra.fr/viz-bin/VizieR-n?-source=METAnot&catid=22550030&notid=9&-out=text">help</a>]</th>
<th class="th-sm" title="Flag to denote the Quality of the detection">Qual. [<a href="https://vizier.cds.unistra.fr/viz-bin/VizieR-n?-source=METAnot&catid=22550030&notid=10&-out=text">help</a>]</th>
<th class="th-sm">{% if src.vlass_primary %}<a class="btn btn-danger btn-xs" role="button" href="{{ src.get_base_url }}vlass/clean/">Clean</a>{% endif %}</th>
</tr>
</thead>
<tbody>
{% for obj in vlass %}
<tr>
<td>{{ obj.name }}</td>
<td>{{ obj.ra|floatformat:4 }}&deg; (&plusmn; {{ obj.e_ra|safe }}'')</td>
<td>{{ obj.dec|floatformat:4 }}&deg; (&plusmn; {{ obj.e_dec|safe }}'')</td>
<td>{{ obj.separation|floatformat:2 }}</td>
<td>{{ obj.ftot|safe }} &plusmn; {{ obj.e_ftot|safe }}</td>
<td>{{ obj.fpeak|safe }} &plusmn; {{ obj.e_fpeak|safe }}</td>
<td>{{ obj.dupflag|safe }}</td>
<td>{{ obj.qualflag|safe }}</td>
<td>
{% if src.vlass_primary.pk == obj.pk %}
<strong>Attached</strong>
{% else %}
<a class="btn btn-success btn-xs" role="button" href="{{ src.get_base_url }}vlass/{{ obj.pk }}/">Primary</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</tbody>
</table>
</div><!-- hide -->
{% endif %}
{% endblock %}
</div>
</body>
</html>

View File

@@ -0,0 +1,54 @@
{% extends "base.html" %}
{% block header %}
<a href="https://heasarc.gsfc.nasa.gov/cgi-bin/W3Browse/w3catindex.pl">HEASARC Catalog Resources Index <span class="glyphicon glyphicon-new-window"></span></a> |
<a href="/heasarc/types">HEASARC Object Classification</a>
<h3>Loaded HEASARC table descriptions:</h3>
<ul>
{% for table in tables %}
<li><a href="{{ table.get_absolute_url }}">{{ table.name }}</a> <b>{{ table.description }}</b></li>
{% endfor %}
</ul>
{% endblock %}
{% block precontent %}{% endblock %}
{% block content %}
<h3>Loaded HEASARC catalogs</h3>
<p>
<ul>
{% if xmmssc_count %}<li><em>XMMSSC</em> ({{ xmmssc_count }}) </li>{% endif %}
{% if xmmdr9_count %}<li><em>4XMM DR9</em> ({{ xmmdr9_count }}) <strong>slimline</strong> version, see <a href="http://xmmssc.irap.omp.eu/Catalogue/4XMM-DR9/4XMM_DR9.html">here <span class="glyphicon glyphicon-new-window"></span></a></li>{% endif %}
{% if csc_count %}<li><em>CSC</em> ({{ csc_count }}) <a href="https://vizier.u-strasbg.fr/viz-bin/VizieR?-source=IX/57">Vizier <span class="glyphicon glyphicon-new-window"></span></a> </li>{% endif %}
{% if twosxps_count %}<li><em>2SXPS</em> ({{ twosxps_count }})</li>{% endif %}
{% if rass2rxs_count %}<li><em>RASS2RXS</em> ({{ rass2rxs_count }})</li>{% endif %}
{% if allwiseagn_count %}<li><em>ALLWISEAGN</em> ({{ allwiseagn_count }})</li>{% endif %}
{% if chanmaster_count %}<li><em>CHANMASTER</em> ({{ chanmaster_count }})</li>{% endif %}
{% if xray_count %}<li><em>XrayMaster</em> ({{ xray_count }})</li>{% endif %}
</p>
{% if table %}
<h3><b>{{ table.name }}</b> <a href="{{ table.document_url }}">{{ table.description }} <span class="glyphicon glyphicon-new-window"></span></a></h3>
{% endif %}
{% if columns %}
<ul>
{% for col in columns %}
<li><b>{{ col.name }}</b>: {{ col.description }}</li>
{% endfor %}
</ul>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,57 @@
{% extends "base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
Exposure = {{ heasarc.Exposure }}<br>
LastObsDate = {{ heasarc.LastObsDate }}<br>
FirstObsDate = {{ heasarc.FirstObsDate }}<br>
FirstDetDate = {{ heasarc.FirstDetDate }}<br>
LastDetDate = {{ heasarc.LastDetDate }}<br>
BestDetectionID = {{ heasarc.BestDetectionID }}<br>
DetFlag = {{ heasarc.DetFlag }}<br>
Rate_band0 = {{ heasarc.Rate_band0 }}<br>
Rate_band0_pos = {{ heasarc.Rate_band0_pos }}<br>
Rate_band0_neg = {{ heasarc.Rate_band0_neg }}<br>
Rate_band1 = {{ heasarc.Rate_band1 }}<br>
Rate_band1_pos = {{ heasarc.Rate_band1_pos }}<br>
Rate_band1_neg = {{ heasarc.Rate_band1_neg }}<br>
Rate_band2 = {{ heasarc.Rate_band2 }}<br>
Rate_band2_pos = {{ heasarc.Rate_band2_pos }}<br>
Rate_band2_neg = {{ heasarc.Rate_band2_neg }}<br>
Rate_band3 = {{ heasarc.Rate_band3 }}<br>
Rate_band3_pos = {{ heasarc.Rate_band3_pos }}<br>
Rate_band3_neg = {{ heasarc.Rate_band3_neg }}<br>
PeakRate_band0_pos = {{ heasarc.PeakRate_band0_pos }}<br>
PeakRate_band0_neg = {{ heasarc.PeakRate_band0_neg }}<br>
PeakRate_band1 = {{ heasarc.PeakRate_band1 }}<br>
PeakRate_band1_pos = {{ heasarc.PeakRate_band1_pos }}<br>
PeakRate_band1_neg = {{ heasarc.PeakRate_band1_neg }}<br>
PeakRate_band2 = {{ heasarc.PeakRate_band2 }}<br>
PeakRate_band2_pos = {{ heasarc.PeakRate_band2_pos }}<br>
PeakRate_band2_neg = {{ heasarc.PeakRate_band2_neg }}<br>
PeakRate_band3 = {{ heasarc.PeakRate_band3 }}<br>
PeakRate_band3_pos = {{ heasarc.PeakRate_band3_pos }}<br>
PeakRate_band3_neg = {{ heasarc.PeakRate_band3_neg }}<br>
PowFlux = {{ heasarc.PowFlux }}<br>
PowFlux_pos = {{ heasarc.PowFlux_pos }}<br>
PowFlux_neg = {{ heasarc.PowFlux_neg }}<br>
APECFlux = {{ heasarc.APECFlux }}<br>
APECFlux_pos = {{ heasarc.APECFlux_pos }}<br>
APECFlux_neg = {{ heasarc.APECFlux_neg }}<br>
PowPeakFlux = {{ heasarc.PowPeakFlux }}<br>
PowPeakFlux_pos = {{ heasarc.PowPeakFlux_pos }}<br>
PowPeakFlux_neg = {{ heasarc.PowPeakFlux_neg }}<br>
FittedPowNH = {{ heasarc.FittedPowNH }}<br>
FittedPowRedChi = {{ heasarc.FittedPowRedChi }}<br>
FittedAPECNH = {{ heasarc.FittedAPECNH }}<br>
FittedAPECRedChi = {{ heasarc.FittedAPECRedChi }}<br>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,16 @@
{% extends "base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
<h5>4-10 keV energy band</h5>
sign = {{ heasarc.sign }} <br />
flux = {{ heasarc.flux }}<br />
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,57 @@
{% extends "heasarc/base.html" %}
{% block content %}
{% if src %}
<h4>Specific {{ src.description }} fields:</h4>
SRCID = {{ src.SRCID }}<br>
POSERR = {{ src.radec_err }} """ Positional arcsec """<br>
DET_ML = {{ src.DET_ML }}<br>
EP_1_FLUX = {{ src.EP_1_FLUX }} """ [erg/cm**2/s] """<br>
EP_1_FLUX_ERR = {{ src.EP_1_FLUX_ERR }} """ [erg/cm**2/s] """<br>
EP_2_FLUX = {{ src.EP_2_FLUX }} """ [erg/cm**2/s] """<br>
EP_2_FLUX_ERR = {{ src.EP_2_FLUX_ERR }} """ [erg/cm**2/s] """<br>
EP_3_FLUX = {{ src.EP_3_FLUX }} """ [erg/cm**2/s] """<br>
EP_3_FLUX_ERR = {{ src.EP_3_FLUX_ERR }} """ [erg/cm**2/s] """<br>
EP_4_FLUX = {{ src.EP_4_FLUX }} """ [erg/cm**2/s] """<br>
EP_4_FLUX_ERR = {{ src.EP_4_FLUX_ERR }} """ [erg/cm**2/s] """<br>
EP_5_FLUX = {{ src.EP_5_FLUX }} """ [erg/cm**2/s] """<br>
EP_5_FLUX_ERR = {{ src.EP_5_FLUX_ERR }} """ [erg/cm**2/s] """<br>
EP_8_FLUX = {{ src.EP_8_FLUX }} """ [erg/cm**2/s] """<br>
EP_8_FLUX_ERR = {{ src.EP_8_FLUX_ERR }} """ [erg/cm**2/s] """<br>
EP_9_FLUX = {{ src.EP_9_FLUX }} """ [erg/cm**2/s] """<br>
EP_9_FLUX_ERR = {{ src.EP_9_FLUX_ERR }} """ [erg/cm**2/s] """<br>
HR1 = {{ src.HR1 }}<br>
HR1_ERR = {{ src.HR1_ERR }}<br>
HR2 = {{ src.HR2 }}<br>
HR2_ERR = {{ src.HR2_ERR }}<br>
HR3 = {{ src.HR3 }}<br>
HR3_ERR = {{ src.HR3_ERR }}<br>
HR4 = {{ src.HR4 }}<br>
HR4_ERR = {{ src.HR4_ERR }}<br>
EXTENT = {{ src.EXTENT }} """ arcsec """<br>
EXT_ERR = {{ src.EXT_ERR }} """ arcsec """<br>
EXT_ML = {{ src.EXT_ML }}<br>
CHI2PROB = {{ src.CHI2PROB }}<br>
FVAR = {{ src.FVAR }}<br>
FVARERR = {{ src.FVARERR }}<br>
VAR_FLAG = {{ src.VAR_FLAG }}<br>
SUM_FLAG = {{ src.SUM_FLAG }}<br>
EP_8_FMIN = {{ src.EP_8_FMIN }} """ [erg/cm**2/s] """<br>
EP_8_FMIN_ERR = {{ src.EP_8_FMIN_ERR }} """ [erg/cm**2/s] """<br>
EP_8_FMAX = {{ src.EP_8_FMAX }} """ [erg/cm**2/s] """<br>
EP_8_FMAX_ERR = {{ src.EP_8_FMAX_ERR }} """ [erg/cm**2/s] """<br>
MJD_FIRST = {{ src.MJD_FIRST }}<br>
MJD_LAST = {{ src.MJD_LAST }}<br>
N_DETECTIONS = {{ src.N_DETECTIONS }}<br>
CONFUSED = {{ src.CONFUSED }}<br>
WEBPAGE_URL = {{ src.WEBPAGE_URL }}<br>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,83 @@
{% extends "heasarc/base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
<h3><a href="{{ heasarc.WEBPAGE_URL }}">XMM-Newton Survey Science Centre</a></h3>
<pre>
radec_error = {{ heasarc.radec_error }}
DET_ML = {{ heasarc.DET_ML }}
EP_1_FLUX = {{ heasarc.EP_1_FLUX|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_1_FLUX_ERR = {{ heasarc.EP_1_FLUX_ERR|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_2_FLUX = {{ heasarc.EP_2_FLUX|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_2_FLUX_ERR = {{ heasarc.EP_2_FLUX_ER|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_3_FLUX = {{ heasarc.EP_3_FLUX|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_3_FLUX_ERR = {{ heasarc.EP_3_FLUX_ERR|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_4_FLUX = {{ heasarc.EP_4_FLUX|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_4_FLUX_ERR = {{ heasarc.EP_4_FLUX_ERR|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_5_FLUX = {{ heasarc.EP_5_FLUX|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_5_FLUX_ERR = {{ heasarc.EP_5_FLUX_ERR|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_8_FLUX = {{ heasarc.EP_8_FLUX|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_8_FLUX_ERR = {{ heasarc.EP_8_FLUX_ERR|stringformat:".1e"}}
""" [erg/cm**2/s] """
EP_9_FLUX = {{ heasarc.EP_9_FLUX|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_9_FLUX_ERR = {{ heasarc.EP_9_FLUX_ERR|stringformat:".1e" }}
""" [erg/cm**2/s] """
HR1 = {{ heasarc.HR1 }}
HR1_ERR = {{ heasarc.HR1_ERR }}
HR2 = {{ heasarc.HR2 }}
HR2_ERR = {{ heasarc.HR2_ERR }}
HR3 = {{ heasarc.HR3 }}
HR3_ERR = {{ heasarc.HR3_ERR }}
HR4 = {{ heasarc.HR4 }}
HR4_ERR = {{ heasarc.HR4_ERR }}
EXTENT = {{ heasarc.EXTENT }}
""" arcsec """
EXT_ERR = {{ heasarc.EXT_ERR }}
""" arcsec """
EXT_ML = {{ heasarc.EXT_ML }}
CHI2PROB = {{ heasarc.CHI2PROB }}
FVAR = {{ heasarc.FVAR }}
FVARERR = {{ heasarc.FVARERR }}
VAR_FLAG = {{ heasarc.VAR_FLAG }}
SUM_FLAG = {{ heasarc.SUM_FLAG }}
EP_8_FMIN = {{ heasarc.EP_8_FMIN|stringformat:".1e"}}
""" [erg/cm**2/s] """
EP_8_FMIN_ERR = {{ heasarc.EP_8_FMIN_ERR|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_8_FMAX = {{ heasarc.EP_8_FMAX|stringformat:".1e" }}
""" [erg/cm**2/s] """
EP_8_FMAX_ERR = {{ heasarc.EP_8_FMAX_ERR|stringformat:".1e" }}
""" [erg/cm**2/s] """
MJD_FIRST = {{ heasarc.MJD_FIRST }}
MJD_LAST = {{ heasarc.MJD_LAST }}
N_DETECTIONS = {{ heasarc.N_DETECTIONS }}
CONFUSED = {{ heasarc.CONFUSED }}
WEBPAGE_URL = {{ heasarc.WEBPAGE_URL }}
</pre>
{% endif %}
{% endblock %}
{% block counterparts %}
{% endblock %}

View File

@@ -0,0 +1,22 @@
{% extends "base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
w1w2_color = {{ heasarc.w1w2_color }} AllWISE W1-W2 Color<br>
w2w3_color = {{ heasarc.w2w3_color }} AllWISE W2-W3 Color<br>
w1_mag = {{ heasarc.w1_mag }} AllWISE W1 Magnitude<br>
gmag = {{ heasarc.gmag }} Compiled g-Band Magnitude (SDSS Bandpass)<br>
redshift = {{ heasarc.redshift }} Compiled Redshift<br>
redshift_flag = {{ heasarc.redshift_flag }} Flag [sp] Indicates Type of Redshift: s=Spectroscopic; p=Photometric<br>
lqac2_name = {{ heasarc.lqac2_name }} LQAC2 Source Identifier<br>
dr12q_name = {{ heasarc.dr12q_name }} DR12Q Source Identifier<br>
milliquas_name= {{ heasarc.milliquas_name }} MILLIQUAS Source Identifier<br>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,3 @@
{% extends "heasarc/base.html" %}

View File

@@ -0,0 +1,30 @@
{% extends "base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
time = {{ heasarc.time }}<br />
obsid = {{ heasarc.obsid }} Observation Identifier<br />
status = {{ heasarc.status }} Status of Observation<br />
detector = {{ heasarc.detector }} # Detector<br />
grating = {{ heasarc.grating }} # Grating Setting<br />
exposure = {{ heasarc.exposure }} # Actual Exposure Time If Observed, Otherwise the Approved Exposure (s)<br />
obstype = {{ heasarc.obstype }} # Type of Observation (GO,GTO,CAL,TOO,DDT)<br />
pi = {{ heasarc.pi }} # PI of Observation<br />
cycle = {{ heasarc.cycle }} # AO Number (0=calibration phase)<br />
proposal = {{ heasarc.proposal }} # Proposal Number<br />
public_date = {{ heasarc.public_date }} # Public Date<br />
sequence_number = {{ heasarc.sequence_number }} # Sequence Number<br />
data_mode = {{ heasarc.data_mode }} # Operational Mode of the Detector<br />
category = {{ heasarc.category }} # Subject Category<br />
class_id = {{ heasarc.class_id }} # Browse Object Classification<br />
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,30 @@
{% extends "heasarc/base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
b_flux_ap = {{ heasarc.b_flux_ap|safe }}<br />
b_flux_ap_hi = {{ heasarc.b_flux_ap_hi|safe }}<br />
b_flux_ap_lo = {{ heasarc.b_flux_ap_lo|safe }}<br />
m_flux_ap = {{ heasarc.m_flux_ap|safe }}<br />
m_flux_ap_hi = {{ heasarc.m_flux_ap_hi|safe }}<br />
m_flux_ap_lo = {{ heasarc.m_flux_ap_lo|safe }}<br />
conf_flag = {{ heasarc.conf_flag }}<br />
extent_flag = {{ heasarc.extent_flag }}<br />
error_ellipse_r0 = {{ heasarc.error_ellipse_r0 }}<br />
error_ellipse_r1 = {{ heasarc.error_ellipse_r1 }}<br />
error_ellipse_angle = {{ heasarc.error_ellipse_angle }}<br />
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,23 @@
{% extends "base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
hardness_ratio = {{ heasarc.hardness_ratio }}<br />
hardness_ratio_error = {{ heasarc.hardness_ratio_error }}<br />
hb_flux = {{ heasarc.hb_flux }}<br />
hb_flux_error = {{ heasarc.hb_flux_error }}<br />
hb_significance = {{ heasarc.hb_significance }}<br />
ctrpart_name = {{ heasarc.ctrpart_name }}<br />
class_id = {{ heasarc.class_id }}<br />
object_class = {{ heasarc.object_class }}<br />
redshift = {{ heasarc.redshift }}<br />
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,39 @@
{% extends "base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
count_rate = {{ heasarc.count_rate }} # Source Count Rate<br />
count_rate_error = {{ heasarc.count_rate_error }} # Error in Source Count Rate<br />
exposure = {{ heasarc.exposure }} # Source Exposure Time<br />
source_extent = {{ heasarc.source_extent }} # Source Extent<br />
source_extent_prob = {{ heasarc.source_extent_prob }} # Probability of the Source Extent<br />
source_quality_flag = {{ heasarc.source_quality_flag }} # Source Quality Flag (0=Good)<br />
hardness_ratio_1 = {{ heasarc.hardness_ratio_1 }} # Hardness Ratio 1<br />
hardness_ratio_2 = {{ heasarc.hardness_ratio_2 }} # Hardness Ratio 2<br />
<hr>
plaw_flux = {{ heasarc.plaw_flux }}<br />
plaw_chi2_reduced ={{ heasarc.plaw_chi2_reduced }}<br />
plaw_nh = {{ heasarc.plaw_nh }}<br />
<hr>
mekal_flux = {{ heasarc.mekal_flux }}<br />
mekal_chi2_reduced = {{ heasarc.mekal_chi2_reduced }}<br />
mekal_nh = {{ heasarc.mekal_nh }}<br />
<hr>
bb_flux = {{ heasarc.bb_flux }}<br />
bb_chi2_reduced = {{ heasarc.bb_chi2_reduced }}<br />
bb_nh = {{ heasarc.bb_nh }}<br />
<hr>
x_pixel_error = {{ heasarc.x_pixel_error }} 1-Sigma Error in X Image Coordinate<br />
y_pixel_error = {{ heasarc.y_pixel_error }} 1-Sigma Error in Y Image Coordinate<br />
time = {{ heasarc.time }} Start Time of Exposure When Source Is within FOV and Detector on<br />
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,15 @@
{% extends "heasarc/base.html" %}
{% block content %}
{% if src %}
<p>flux_B7={{ src.flux_b7|stringformat:".1e" }}
The source flux in the total energy (0.2-12 keV) band. Units: 10-12 ergs/s/cm2. Derived for an absorbed power-law spectrum of slope 1.7 and Nh=3.0E20 cm-2.
</p>
<p>flux_B8={{ src.flux_b8|stringformat:".1e" }}
The source flux in the hard energy (2-12 keV) band. Units: 10-12 ergs/s/cm2. Derived for an absorbed power-law spectrum of slope 1.7 and Nh=3.0E20 cm-2.
</p>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,29 @@
{% extends "base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
<h5>This source at <a href="{{ heasarc.get_xmmssc_srcid_url }}">XMM-Newton Survey Science Centre <span class="glyphicon glyphicon-new-window"></span></a></h5>
<h5>This source at <a href="{{ heasarc.get_strasbourg_srcid_url }}">Observatory of Strasbourg <span class="glyphicon glyphicon-new-window"></span></a></h5>
detid = <a href="{{ heasarc.get_xmmssc_detid_url }}">{{ heasarc.detid }} <span class="glyphicon glyphicon-new-window"></span></a><br />
srcid = <a href="{{ heasarc.get_xmmssc_srcid_url }}">{{ heasarc.srcid }} <span class="glyphicon glyphicon-new-window"></span></a><br />
time = {{ heasarc.time }}<br />
end_time = {{ heasarc.end_time }}<br />
ep_8_flux = {{ heasarc.ep_8_flux }}<br />
ep_8_flux_error = {{ heasarc.ep_8_flux_error }}<br />
pn_8_flux = {{ heasarc.pn_8_flux }}<br />
pn_8_flux_error = {{ heasarc.pn_8_flux_error }}<br />
m1_8_flux = {{ heasarc.m1_8_flux }}<br />
m1_8_flux_error = {{ heasarc.m1_8_flux_error }}<br />
m2_8_flux = {{ heasarc.m2_8_flux }}<br />
m2_8_flux_error = {{ heasarc.m2_8_flux_error }}<br />
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,18 @@
{% extends "base.html" %}
{% block header %}{% endblock %}
{% block content %}
{% if heasarc %}
<h4>Specific {{ heasarc.description }} fields:</h4>
{% if heasarc.count_rate > 0 %}Count_rate: {{ heasarc.count_rate|floatformat:4 }}<br />{% endif %}
{% if heasarc.count_rate_error > 0 %}error: {{ heasarc.count_rate_error|floatformat:4 }}<br />{% endif %}
{% if heasarc.flux > 0 %}Flux: {{ heasarc.flux }}<br />{% endif %}
{% if heasarc.exposure > 0 %}Exposure: {{ heasarc.exposure|floatformat:2 }}<br />{% endif %}
Class_id: {{ heasarc.class_id }} {{ heasarc.object_class.class_name }}<br />
Observatory: {{ heasarc.observatory }}
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,18 @@
{% extends "base.html" %}
{% block header %}
<h3>Loaded <a href="https://heasarc.gsfc.nasa.gov/W3Browse/catalog/class.html">HEASARC Object Classification <span class="glyphicon glyphicon-new-window"></span></a></h3>
<ul>
{% for class in classes %}
{% if class.class_name != 'UNCLASSIFIED' %}<li>{{ class.class_id }}, <b>{{ class.class_name }}</b></li>{% endif %}
{% endfor %}
</ul>
{% endblock %}
{% block content %}
{% endblock %}

219
Templates/index.html Normal file
View File

@@ -0,0 +1,219 @@
{% load monthplan_templates %}
{% load static %}
{% load i18n %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>srg.arxiv.local</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
<!--link rel="stylesheet" href="{% static 'css/bootstrap.min.css' %}">
<script src="{% static 'js/jquery.min.js' %}"></script>
<script src="{% static 'js/bootstrap.min.js' %}"></script-->
</head>
<body>
<div class="container">
<div class="row">
<div class="col-sm-10">
<h1>{% trans 'Spectrum-Roentgen-Gamma' %}</h1>
<p style="font-size:22px;">{% trans 'Astrophysical Project' %}</p>
</div>
<div class="col-sm-2">
<p style="text-align:right;">
<a href="{% url 'index ru' %}">РУС</a> | <a href="{% url 'index en' %}">ENG</a>
</p>
<p style="text-align:right;">
{% if user.is_authenticated %}
<a href="{% url 'artsurvey profile' %}" class="btn btn-link navbar-btn navbar-right"><strong><span class="glyphicon glyphicon-user"></span> {{ user.first_name }} {{ user.last_name }}</strong></a> <a class="btn btn-danger btn-sm" role="button" href="/logbook/logout"> <span class="glyphicon glyphicon-log-out"></span> {% trans 'Sign Out' %}</a>
{% else %}
<a class="btn btn-danger btn-sm" role="button" href="/logbook/login"><span class="glyphicon glyphicon-log-in"></span> {% trans 'Sign In' %}</a>
{% endif %}
</p>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<!--img src="{% static 'images/srg.png' %}" class="img" width="100%"-->
</div>
</div>
<div class="row">
<div class="col-sm-12">
<div class="jumbotron">
{% get_current_language as LANGUAGE_CODE %}
{% if LANGUAGE_CODE == 'en' %}
<p>Spectrum-Roentgen-Gamma (Spektr-RG or SRG) is a Russian X-ray observatory created with participation of Germany. Its main goal is to map the observable Universe in the X-ray band of the electromagnetic spectrum. The spacecraft was launched on July 13, 2019 from the Baikonur Cosmodrome.</p>
{% else %}
<p>Научный космический аппарат «Спектр-Рентген-Гамма» («Спектр-РГ» или «СРГ») — российская рентгеновская обсерватория, созданная с участием Германии. Её миссия — создание карты видимой Вселенной в рентгеновском диапазоне электромагнитного излучения. Космический аппарат «Спектр-РГ» был запущен 13 июля 2019 г. с космодрома Байконур.</p>
{% endif %}
</div>
</div>
</div>
<!--div class="row">
<div class="col-sm-4 text-center">
<div class="jumbotron">
<h2>{% trans 'SRG.Plan' %}</h2>
<p><a target="_blank" href="http://plan.srg.cosmos.ru/monthplan/">srg.cosmos.ru <span class="glyphicon glyphicon-new-window"></span></a><br>
<a href="{% url 'monthplan index' %}">arxiv.local</a></p>
</div>
</div>
<div class="col-sm-4 text-center">
<div class="jumbotron">
<h2>{% trans 'SRG.LogBook' %}</h2>
<p>{% trans 'Operations' %} {% trans 'on' %} <a target="_blank" href="http://plan.srg.cosmos.ru/logbook/">srg.cosmos.ru <span class="glyphicon glyphicon-new-window"></span></a></p>
</div>
</div>
<div class="col-sm-4 text-center">
<div class="jumbotron">
<h2>{% trans 'SRG.Triton' %}</h2>
<p>{% trans 'Optical follow-up' %} {% trans 'on' %} <a href="http://plan.srg.cosmos.ru/triton/">srg.cosmos.ru <span class="glyphicon glyphicon-new-window"></span></a></p>
</div>
</div>
</div-->
<div class="row">
<!--div class="col-sm-4">
<div class="jumbotron">
<h2>ART-XC</h2>
<p>
<ul>
<li><a href="{% url 'art-xc aladin healpix' %}">All-sky map</a></li>
<li><a href="{% url 'skymap sources erosita catalogs' %}">eRosita cross-match</a></li>
<li> Data dumps
<ul>
<li><a href="{% url 'art-xc survey index' %}">All-sky survey</a></li>
<li><a href="{% url 'srg data dumps' %}">Daily data dumps</a></li>
</ul>
</li>
</ul>
</p>
</div>
</div-->
<div class="col-sm-8">
<div class="jumbotron">
<p><a class="btn btn-success btn-lg btn-block" role="button" href="/artsurvey">Go to SRG/ART-XC all-sky catalog (srg-artxc-catalog)</a></p>
<p>
<a class="btn btn-info btn-lg" role="button" href="{% url 'artsurvey search by coords' %}">Search by coords</a>
<a class="btn btn-info btn-lg" role="button" href="{% url 'artsurvey search by name' %}">Search by name</a>
<a class="btn btn-info btn-lg" role="button" href="{% url 'artsurvey resolve name' %}">Search by IAU name</a>
</p>
</div>
</div>
<div class="col-sm-4">
<div class="jumbotron">
<h2>Tools</h2>
<p>
<ul>
<!--li><a href="/target/">Lookup target</a></li>
<li><a href="{% url 'show sky map form' %}">Show SkyMap plate</a></li-->
<li><a href="/srgcat/srga">Get SRG Name</a></li>
<li><a href="/docs/index.html">Documentation</a></li>
<li><a href="/stats/">Web Analytics</a></li>
{% if user.is_authenticated %}
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-user"></span> {% trans 'User Groups' %}
<span class="caret"></span></a>
<ul class="dropdown-menu">
{% for group in user.groups.all %}
<li><a href="/groups/{{ group.pk }}/info">{{ group }}</a></li>
{% endfor %}
</ul>
</li>
{% endif %}
</ul>
</p>
</div>
</div>
</div>
<!--div class="row">
<div class="col-sm-6">
{% if LANGUAGE_CODE == 'en' %}
<h4>SRG Project</h4>
<p>Spektr-RG spacecraft was designed at NPO Lavochkin (part of Roscosmos) and was launched on July 13, 2019 from the Baikonur Cosmodrome. The spacecraft was created with participation of Germany under Russias Federal Space Program on behalf of the Russian Academy of Sciences. The space observatory is equipped with two unique X-ray telescopes: ART-XC (IKI RAS, Russia) and eROSITA (MPI, Germany), their functioning based on oblique incidence principle. The telescopes are installed on the Navigator platform (NPO Lavochkin, Russia), which had been adapted to meet the project tasks.</p>
{% else %}
<h4>ПРОЕКТ «СПЕКТР-РГ»</h4>
<p>Космический аппарат «Спектр-РГ» создан с участием Германии в рамках Федеральной космической программы России по заказу Российской Академии наук. Обсерватория оснащена двумя уникальными рентгеновскими зеркальными телескопами: ART-XC (ИКИ РАН, РФЯЦ ВНИИЭФ, Россия) и eROSITA (MPE, Германия), работающими по принципу рентгеновской оптики косого падения. Телескопы установлены на космической платформе «Навигатор» (НПО Лавочкина, Россия), адаптированной под задачи проекта.</p>
{% endif %}
</div>
<div class="col-sm-6">
{% if LANGUAGE_CODE == 'en' %}
<h4>Initiative</h4>
<p>
<ul>
<li><strong>Scientific head of the mission:</strong> acad. Rashid Sunyaev</li>
<li><strong>PI of the ART-XC telescope:</strong> Dr. Mikhail Pavlinsky</li>
<li><strong>PI of the eRosita telescope:</strong> Dr. Peter Predehl</li>
</ul>
</p>
{% else %}
<h4>РУКОВОДСТВО</h4>
<p>Научный руководитель миссии: академик Рашид Алиевич Сюняев; научный руководитель по телескопу ART-XC (Россия): доктор физ.-мат. наук Михаил Павлинский; научный руководитель по телескопу eROSITA (Германия): доктор Петер Предель.</p>
{% endif %}
</div>
</div>
</div-->
<footer class="bs-footer" role="contentinfo">
<div class="row">
<div class="col-sm-12 text-center">
<p>
{% trans 'High Energy Astrophysics Department' %},
{% trans 'Space Research Institute (IKI), Moscow, Russia' %}
<span class="glyphicon glyphicon-copyright-mark"></span> {% now "Y" %}
</p>
<p>{% trans 'Development' %}: {% trans 'Roman Krivonos' %},
{% trans 'email' %}: krivonos<span class="glyphicon glyphicon-globe"></span>cosmos.ru
</p>
</div>
</div>
</div>
</footer>
</body>
</html>

181
Templates/js9base.html Normal file
View File

@@ -0,0 +1,181 @@
{% load heasarc_templates %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>{% block title %}SRG ArXiv{% endblock %}</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<META NAME="author" CONTENT="Roman Krivonos, email: krivonos [at] iki.rssi.ru">
<META NAME="description" CONTENT="High Energy Astrophysics Department at IKI RAN (Moscow, Russia)">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.js"></script>
<!-- MDBootstrap Datatables -->
<!--link href="/static/MDB-Free/css/addons/datatables.min.css" rel="stylesheet">
<script type="text/javascript" src="/static/MDB-Free/js/addons/datatables.min.js"></script-->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.1/css/all.css" integrity="sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf" crossorigin="anonymous">
<!-- include Aladin Lite CSS file in the head section of your page -->
<link rel="stylesheet" href="https://aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.css" />
<link type="text/css" rel="stylesheet" href="/static/js9/js9support.css">
<link type="text/css" rel="stylesheet" href="/static/js9/js9.css">
<script type="text/javascript" src="/static/js9/js9prefs.js"></script>
<script type="text/javascript" src="/static/js9/js9support.min.js"></script>
<script type="text/javascript" src="/static/js9/js9.min.js"></script>
<script type="text/javascript" src="/static/js9/js9plugins.js"></script>
<link rel="stylesheet" href="/static/css/style.css" />
</head>
<body>
<script>
function js9init(){
JS9.imageOpts.wcsunits = "degrees";
{% if skymap.is_L3_valid %}
{% if dump %}
var img = "/skymap/{{ skymap }}/L3/{{ dump }}/img_conv2dp.fits.gz"
{% else %}
var img = "/skymap/{{ skymap }}/L3/img_conv2dp_2.fits.fz"
{% endif %}
var opts = {parentFile:img, scale:"log",colormap:"cool",zoom:"toFit"};
JS9.Preload(img, opts, {display: "js9aver"});
{% if target_ra %}
console.log({{ target_ra }}+' '+{{ target_dec }})
JS9.AddRegions("circle", {ra:"{{ target_ra }}", dec:"{{ target_dec }}", color:"yellow", display: "js9aver"});
{% endif %}
load_target();
{% endif %}
JS9.AddRegions("circle");
xreg = JS9.GetRegions("All");
console.log(xreg)
}
$(document).ready(function () {
js9init();
});
</script>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="/"><span class="glyphicon glyphicon-list"></span> SRG/ArXiv</a>
</div>
<ul class="nav navbar-nav">
<!--li><a href="/heasarc"><i class="fa fa-rocket"></i> HEASARC</a></li-->
<!--li><a href="/artsim"><i class="fa fa-rocket"></i> ArtSim</a></li-->
<!--li><a href="/monthplan/obsid"><span class="glyphicon glyphicon-search"></span> Search</a></li-->
<!--li><a href="/admin"><span class="glyphicon glyphicon-cog"></span> Django</a></li-->
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Projects
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/monthplan">Scheduling</a></li>
<li><a href="/erosurvey">eRosita survey</a></li>
<li><a href="/erotrans">eRosita transients</a></li>
<li><a href="/srgcat">ART-XC survey</a></li>
<li><a href="/artsim">ART-XC simulations</a></li>
<li><a href="/heasarc">HEASARC catalogs</a></li>
<li><a href="/astrobasis">ZTF alerts</a></li>
</ul>
</li>
<li><a href="/docs/index.html"><span class="glyphicon glyphicon-book"></span> Docs</a></li>
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-wrench"></span> Tools
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/target/">Lookup target in survey</a></li>
<li><a href="{% url 'show sky map form' %}">Show SkyMap</a></li>
<li><a href="/srgcat/srga">Get SRG Name</a></li>
<!--li><a href="/docs/index.html"><span class="glyphicon glyphicon-book"></span> Documentation</a></li-->
<li><a href="/admin"><span class="glyphicon glyphicon-cog"></span> Django</a></li>
<li><a href="http://arxiv.srg.rssi.ru:15672"><span class="glyphicon glyphicon-cog"></span> RabbitMQ</a></li>
</ul>
</li>
{% if user.is_authenticated %}
<li class="dropdown">
<a class="dropdown-toggle navbar-right" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-user"></span> My groups
<span class="caret"></span></a>
<ul class="dropdown-menu">
{% for group in user.groups.all %}
<li><a href="/groups/{{ group.pk }}/info">{{ group }}</a></li>
{% endfor %}
</ul>
</li>
{% endif %}
</ul>
{% if user.is_authenticated %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/logout">{{ user.email }} <span class="glyphicon glyphicon-log-out"></span> Sign Out</a>
{% else %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/login"><span class="glyphicon glyphicon-log-in"></span> Sign In</a>
{% endif %}
{% if today %}<a class="btn btn-light navbar-btn navbar-right disabled">{{ today|date:"d M Y H:i:s" }} MSK</a>{% endif %}
</div>
</nav>
<div class="container">
{% block header %}Base header {% endblock %}
{% block content %}Base content{% endblock %}
</div>
<div class="container-fluid">
{% block prefooter %}{% endblock %}
</div>
<footer class="bs-footer" role="contentinfo">
<div class="container">
<div class="row">
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<div class="alert alert-light">
<p class="card-text">
<hr>
Отдел астрофизики высоких энергий ИКИ РАН © 2019 <a href="http://hea.cosmos.ru" target="_blank">Вебсайт отдела</a> |
<a href="http://www.iki.rssi.ru" target="_blank">ИКИ РАН</a> |
<a href="http://srg.cosmos.ru">Спектр-РГ</a> | Разработка: Роман Кривонос, email: krivonos/@/cosmos.ru
</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
</div>
</div>
</footer>
</body>
</html>

170
Templates/js9base.html.bak Normal file
View File

@@ -0,0 +1,170 @@
{% load heasarc_templates %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>{% block title %}SRG ArXiv{% endblock %}</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<META NAME="author" CONTENT="Roman Krivonos, email: krivonos [at] iki.rssi.ru">
<META NAME="description" CONTENT="High Energy Astrophysics Department at IKI RAN (Moscow, Russia)">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.js"></script>
<!-- MDBootstrap Datatables -->
<!--link href="/static/MDB-Free/css/addons/datatables.min.css" rel="stylesheet">
<script type="text/javascript" src="/static/MDB-Free/js/addons/datatables.min.js"></script-->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.1/css/all.css" integrity="sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf" crossorigin="anonymous">
<!-- include Aladin Lite CSS file in the head section of your page -->
<link rel="stylesheet" href="https://aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.css" />
<link type="text/css" rel="stylesheet" href="/static/js9/js9support.css">
<link type="text/css" rel="stylesheet" href="/static/js9/js9.css">
<script type="text/javascript" src="/static/js9/js9prefs.js"></script>
<script type="text/javascript" src="/static/js9/js9support.min.js"></script>
<script type="text/javascript" src="/static/js9/js9.min.js"></script>
<script type="text/javascript" src="/static/js9/js9plugins.js"></script>
<link rel="stylesheet" href="/static/css/style.css" />
</head>
<body>
<script>
function js9init(){
JS9.imageOpts.wcsunits = "degrees";
{% if skymap.is_L3_valid %}
{% if dump %}
var img="/skymap/{{ skymap }}/L3/{{ dump }}/img_conv2dp.fits.gz"
{% else %}
var img = "/skymap/{{ skymap }}/L3/img_conv2dp.fits.gz"
{% endif %}
var opts = {parentFile:img, scale:"log",colormap:"cool",zoom:"toFit"};
JS9.Preload(img, opts, {display: "js9aver"});
{% endif %}
}
$(document).ready(function () {
js9init();
});
</script>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="/"><span class="glyphicon glyphicon-list"></span> SRG/ArXiv</a>
</div>
<ul class="nav navbar-nav">
<!--li><a href="/heasarc"><i class="fa fa-rocket"></i> HEASARC</a></li-->
<!--li><a href="/artsim"><i class="fa fa-rocket"></i> ArtSim</a></li-->
<!--li><a href="/monthplan/obsid"><span class="glyphicon glyphicon-search"></span> Search</a></li-->
<!--li><a href="/admin"><span class="glyphicon glyphicon-cog"></span> Django</a></li-->
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Projects
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/monthplan">Scheduling</a></li>
<li><a href="/erosurvey">eRosita survey</a></li>
<li><a href="/erotrans">eRosita transients</a></li>
<li><a href="/srgcat">ART-XC survey</a></li>
<li><a href="/artsim">ART-XC simulations</a></li>
<li><a href="/heasarc">HEASARC catalogs</a></li>
<li><a href="/astrobasis">ZTF alerts</a></li>
</ul>
</li>
<li><a href="/docs/index.html"><span class="glyphicon glyphicon-book"></span> Docs</a></li>
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-wrench"></span> Tools
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/target/">Lookup target in survey</a></li>
<li><a href="{% url 'show sky map form' %}">Show SkyMap</a></li>
<li><a href="/srgcat/srga">Get SRG Name</a></li>
<!--li><a href="/docs/index.html"><span class="glyphicon glyphicon-book"></span> Documentation</a></li-->
<li><a href="/admin"><span class="glyphicon glyphicon-cog"></span> Django</a></li>
<li><a href="http://arxiv.srg.rssi.ru:15672"><span class="glyphicon glyphicon-cog"></span> RabbitMQ</a></li>
</ul>
</li>
{% if user.is_authenticated %}
<li class="dropdown">
<a class="dropdown-toggle navbar-right" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-user"></span> My groups
<span class="caret"></span></a>
<ul class="dropdown-menu">
{% for group in user.groups.all %}
<li><a href="/groups/{{ group.pk }}/info">{{ group }}</a></li>
{% endfor %}
</ul>
</li>
{% endif %}
</ul>
{% if user.is_authenticated %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/logout">{{ user.email }} <span class="glyphicon glyphicon-log-out"></span> Sign Out</a>
{% else %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/login"><span class="glyphicon glyphicon-log-in"></span> Sign In</a>
{% endif %}
{% if today %}<a class="btn btn-light navbar-btn navbar-right disabled">{{ today|date:"d M Y H:i:s" }} MSK</a>{% endif %}
</div>
</nav>
<div class="container">
{% block header %}Base header {% endblock %}
{% block content %}Base content{% endblock %}
</div>
<div class="container-fluid">
{% block prefooter %}{% endblock %}
</div>
<footer class="bs-footer" role="contentinfo">
<div class="container">
<div class="row">
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<div class="alert alert-light">
<p class="card-text">
<hr>
Отдел астрофизики высоких энергий ИКИ РАН © 2019 <a href="http://hea.cosmos.ru" target="_blank">Вебсайт отдела</a> |
<a href="http://www.iki.rssi.ru" target="_blank">ИКИ РАН</a> |
<a href="http://srg.cosmos.ru">Спектр-РГ</a> | Разработка: Роман Кривонос, email: krivonos/@/cosmos.ru
</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
</div>
</div>
</footer>
</body>
</html>

111
Templates/logbook/base.html Normal file
View File

@@ -0,0 +1,111 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>{% block title %}Бортжурнал СРГ{% endblock %}</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<META NAME="author" CONTENT="Roman Krivonos, email: krivonos [at] iki.rssi.ru">
<META NAME="description" CONTENT="High Energy Astrophysics Department at IKI RAN (Moscow, Russia)">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.1/css/all.css" integrity="sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf" crossorigin="anonymous">
<script>
function inArray(needle, haystack) {
var length = haystack.length;
for(var i = 0; i < length; i++) {
if(haystack[i] == needle) return true;
}
return false;
}
function days($d) {
$y = $d % 10;
$x = $d / 10 % 10;
if ($x && $x == 1) return "дней";
if ($y == 1) return "день";
if (inArray($y,"2,3,4")) return "дня";
return "дней";
}
</script>
</head>
<body>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="/logbook"><i class="fa fa-rocket"></i> Бортжурнал СРГ</a>
</div>
<ul class="nav navbar-nav">
<li><a href="/monthplan"><span class="glyphicon glyphicon-list"></span> Месячный план</a></li>
{% if user.is_authenticated %}
<li><a href="https://docs.google.com/spreadsheets/d/1E994cGtfYUC8GqUPH_rGB2GgPfAE-VZFiHkUYx46tUc/edit?usp=sharing"><span class="glyphicon glyphicon-calendar"></span> Календарь работ</a></li>
<!--li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">Документы<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/uploads/docs/current.pdf">Programm (PDF)</a></li>
<li><a href="/logbook/uploads">Загрузки</a></li>
<li><a href="/uploads/logbook/table.html">Загрузки (safe mode)</a></li>
</ul>
</li-->
{% if categories %}
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">Документы <span class="caret"></span></a>
<ul class="dropdown-menu">
{% for category in categories %}
<li><a href="{{ category.get_absolute_url }}">{{ category.name }}</a></li>
{% endfor %}
<li><a href="/logbook/uploads"><b>Все</b></a></li>
</ul>
</li>
{% endif %}
<li><a href="/logbook/info"><span class="glyphicon glyphicon-info-sign"></span> Информация</a></li>
{% endif %}
</ul>
{% if user.is_authenticated %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/logout">{{ user.email }} <span class="glyphicon glyphicon-log-out"></span> Выйти</a>
{% else %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/login"><span class="glyphicon glyphicon-log-in"></span> Войти</a>
{% endif %}
</div>
</nav>
<div class="container">
{% block content %}Base content{% endblock %}</div>
</div>
<footer class="bs-footer" role="contentinfo">
<div class="container">
<div class="row">
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<div class="alert alert-light">
<p class="card-text">
<hr>
Отдел астрофизики высоких энергий ИКИ РАН © 2019 <a href="http://hea.cosmos.ru" target="_blank">Вебсайт отдела</a> |
<a href="http://www.iki.rssi.ru" target="_blank">ИКИ РАН</a> |
<a href="http://srg.iki.rssi.ru">Спектр-РГ</a> |
Разработка: Роман Кривонос, email: krivonos/@/cosmos.ru
</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
</div>
</div>
</footer>
</body>
</html>

View File

@@ -0,0 +1,12 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru">
<head>
<META NAME="author" CONTENT="Roman Krivonos, email: krivonos [at] iki.rssi.ru">
<META NAME="description" CONTENT="High Energy Astrophysics Department at IKI RAN (Moscow, Russia)">
<link type="text/css" href="/srg/static/css/table.custom.css" rel="stylesheet" />
</head>
<body>
empty
</body>
</html>

View File

@@ -0,0 +1,5 @@
{% extends "logbook/base.html" %}
{% block content %}
{% endblock %}

View File

@@ -0,0 +1,45 @@
{% extends "mdb.html" %}
{% block title %}Login page{% endblock %}
{% block content %}
<div class="row">
<div class="col-sm-3">
</div>
<div class="col-sm-6">
{% if invalid_login %}
<div class="notice">Invalid login/password, try again:</div>
{% endif %}
<div class="alert alert-info">For login information please contact <strong>Roman Krivonos</strong> (romakrivonos@gmail.com)</div>
<form action="login" method="post">{% csrf_token %}
<div class="form-group">
{% for error in form.username.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_username">Login:</label>
{{ form.username }}
</div>
<div class="form-group">
{% for error in form.password.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_password">Пароль:</label>
{{ form.password }}<br>
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
</div>
<div class="col-sm-3">
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,55 @@
{% extends "logbook/base.html" %}
{% block content %}
<h2>Категория: {{ category }}</h2>
{% for upload in uploads %}
<div class="row">
<div class="col-sm-2">
<div class="card">
<div class="card-body">
<div class="alert alert-success">
<h4 class="card-title"><a href="{{ upload.day.get_absolute_url }}">День {{ upload.day.daynumber }}</a></h4>
<p class="card-text">{{ upload.day.date }}</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
<div class="col-sm-7">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<p class="card-text">
<a href="/uploads/logbook/{{ upload.filefield }}">{{ upload.title }}</a>
</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<h4 class="card-title"></h4>
Владелец: <b>{{ upload.owner.user.first_name }} {{ upload.owner.user.last_name }}</b><br />
Дата: <b>{{ upload.uploaded }}</b>
</div>
</div>
</div>
</div>
</div>
{% endfor %}
{% endblock %}

View File

@@ -0,0 +1,67 @@
{% extends "logbook/base.html" %}
{% block header %} {% endblock %}
{% block content %}
<div class="row">
<div class="col-sm-2">
<div class="card">
<div class="card-body">
<div class="alert alert-success">
<h3 class="card-title">День {{ day.daynumber }}</h3>
<p class="card-text">{{ day.date }}</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
<div class="col-sm-10">
<div class="card">
<div class="card-body">
<!--div class="alert alert-info">
<p class="card-text">
{% for plan in day.plan.all %}
<span class="glyphicon glyphicon-time"></span> {{ plan.description }} <b>[День {{ plan.daynumber }}, {{ plan.date|cut:" 00:00:00" }}]</b><br />
{% endfor %}
</p>
</div-->
<div class="alert alert-warning">
<h4 class="card-title">{% if day.title %}{{ day.title }}{% endif %}</h4>
<p class="card-text">{% if day.notes %}{{ day.notes|linebreaks }} <b>[{{ day.modified }}]</b>{% endif %}</p>
{% if user.is_authenticated %}<a href="{{ day.get_update_url }}" class="btn btn-primary"><span class="glyphicon glyphicon-edit"></span> Обновить</a>{% endif %}
</div>
</div>
</div>
</div>
</div>
{% for upload in uploads %}
<div class="row">
<div class="col-sm-2"></div>
<div class="col-sm-6">
<div class="panel panel-default">
<div class="panel-body">{{ upload.title }}</div>
</div>
</div>
<div class="col-sm-2">
<div class="panel panel-default">
<div class="panel-body">{{ upload.uploaded|date:"d M Y H:i" }} {{ upload.owner.user }} {% if upload.category %}<a href="{{ upload.category.get_absolute_url }}">{{ upload.category }}</a>{% endif %}</div>
</div>
</div>
<div class="col-sm-2">
<a class="btn btn-success btn-xs" role="button" href="/uploads/logbook/{{ upload.filefield }}"><span class="glyphicon glyphicon-download-alt"></span> скачать</a>
<a class="btn btn-danger btn-xs" role="button" href="{{ upload.get_delete_url }}"><span class="glyphicon glyphicon-remove"></span> удалить</a><br />
</div>
</div>
{% endfor %}
<a class="btn btn-info btn-lg pull-right" role="button" href="{{ day.get_upload_url }}"><span class="glyphicon glyphicon-upload"></span> Добавить новый документ</a>
{% endblock %}

View File

@@ -0,0 +1,34 @@
{% extends "logbook/base.html" %}
{% block header %} {% endblock %}
{% block content %}
<h1>Ресурсы</h1>
<div class="row">
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<h3 class="card-title"><a href="/admin"><span class="glyphicon glyphicon-cog"></span> Администрирование Django</a></h3>
<p class="card-text"></a></p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<h3 class="card-title">Формирование месячной программы в FITS формате</h3>
<p class="card-text">IDL код находится по адресу: <a href="https://github.com/krivonos/srg-plan">https://github.com/krivonos/srg-plan</a>.</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,90 @@
{% extends "logbook/base.html" %}
{% block content %}
{% if user.is_authenticated %}
<div id="day{{ day.daynumber }}" class="row">
<div class="col-sm-2"></div>
<div class="col-sm-8">
<h2>В полете: {{ delta }} <script>document.write(days({{ delta }}));</script></h2>
</div>
<div class="col-sm-2">
<a href="#day{{ delta }}" class="btn btn-info btn-lg" role="button">Сегодня <span class="glyphicon glyphicon-arrow-down"></span></a>
</div>
</div>
{% for day in days %}
<div id="day{{ day.daynumber }}" class="row">
<div class="col-sm-2">
<div class="card">
<div class="card-body">
<div class="alert alert-success">
<h3 class="card-title">День {{ day.daynumber }}</h3>
<p class="card-text">{{ day.date }}</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
<div class="col-sm-7">
<div class="card">
<div class="card-body">
<!--div class="alert alert-info">
<p class="card-text">
{% if user.is_authenticated %}
{% for plan in day.plan.all %}
<span class="glyphicon glyphicon-time"></span> {{ plan.description }} <b>[День {{ plan.daynumber }}, {{ plan.date|cut:" 00:00:00" }}]</b><br />
{% endfor %}
{% endif %}
</p>
</div-->
<div class="alert alert-warning">
<h4 class="card-title">{% if user.is_authenticated %}{% if day.title %}{{ day.title }}{% endif %}{% endif %}</h4>
{% if user.is_authenticated %}
<p class="card-text">
{% autoescape on %}
{% if day.notes %}{{ day.notes|linebreaks }} <b>[{{ day.modified|date:"d M Y H:i:s" }}]</b>{% endif %}
{% endautoescape %}
</p>
{% endif %}
{% if user.is_authenticated %}<a href="{{ day.get_update_url }}" class="btn btn-primary"><span class="glyphicon glyphicon-edit"></span> Обновить</a>{% endif %}
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<h4 class="card-title"><a href="{{ day.get_absolute_url }}">Документы</a></h4>
{% if user.is_authenticated %}
{% for upload in day.logbookupload_set.all %}
<p style="text-align:left;">
<a href="/uploads/logbook/{{ upload.filefield }}"><span class="glyphicon glyphicon-file"></span> {{ upload.title|truncatechars:30 }}</a>
</p>
{% endfor %}
<a href="{{ day.get_upload_url }}" class="btn btn-primary"><span class="glyphicon glyphicon-upload"></span> Добавить</a>
{% endif %}
</div>
</div>
</div>
</div>
</div>
{% endfor %}
{% else %}
<div class="alert alert-warning" role="alert">
<b>Для просмотра бортового журнала СРГ требуется авторизация, пожалуйста обратитесь к Роману Кривоносу (krivonos/@/cosmos.ru, +7 495 333-32-23) для получения логина и пароля.</b>
</div>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,71 @@
{% extends "plan/base.html" %}
{% load plan_templates %}
{% block content %}
<h2>Launch Day: {{ LaunchDate }}</h2>
<!-- button onclick="toggleUssuriysk()">Show/hide Ussuriysk ground contact</button -->
<button onclick="toggleUssuriysk()">Ussuriysk // Уссурийск</button>
<div class="divTable">
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableDay"><strong><big>Day // День</big></strong></div>
<div class="divTableCell45"><strong><big>Bear Lakes // Медвежьи Озера</big></strong></div>
<div class="divTableCell45hide"><strong><big>Ussuriysk // Уссурийск</big></strong></div>
</div>
</div>
</div>
{% for session in bearlakes %}
<div class="divTable">
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableDay"><big><a href="{{ session.Day.get_absolute_url }}">Day {{ session.Day.DayNumber }}</a></big></div>
<div class="divTableCell"><div class="info"><strong>{{ session.Day.title }}</strong>{% if session.Day.Notes %} | {{ session.Day.Notes }}{% endif %}</div></div>
</div>
</div>
</div>
<div class="divTable">
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableDay">{{ session.Day.date }}<br />
{% for upload in session.Day.upload_set.all %}
<a class="button green small" href="/uploads/{{ upload.filefield }}">{{ upload.title }}</a><br />
{% endfor %}
<a class="button orange small" href="{{ session.Day.get_upload_url }}">upload</a><br />
</div>
<div class="divTableCell45"> <a href="{{ session.get_update_url }}">{{ session.TimeBegin_hh|format00 }}:{{ session.TimeBegin_mm|format00 }} - {{ session.TimeEnd_hh|format00 }}:{{ session.TimeEnd_mm|format00 }},
s/c: {{ session.sysSessionRequest }}', ero: {{ session.eroSessionRequest }}', art: {{ session.artSessionRequest }}', rest: {{ session.get_rest }}'</a><br>
<hr> Description: <strong>{{ session.title }}</strong><hr>
S/C: {% if session.eroNotes %}{{ session.sysNotes }}{% endif %} <hr>
ERO: {% if session.eroNotes %}<p class="ero">{{ session.eroNotes }}</p>{% endif %} <hr>
ART: {% if session.artNotes %}<p class="art">{{ session.artNotes }}</p>{% endif %}</div>
{% with session=session.Day.UssuriyskDay %}
<div class="divTableCell45hide"> <a href="{{ session.get_update_url }}">{{ session.TimeBegin_hh|format00 }}:{{ session.TimeBegin_mm|format00 }} - {{ session.TimeEnd_hh|format00 }}:{{ session.TimeEnd_mm|format00 }},
s/c: {{ session.sysSessionRequest }}', ero: {{ session.eroSessionRequest }}', art: {{ session.artSessionRequest }}', rest: {{ session.get_rest }}'</a><br>
<hr> Description: <strong>{{ session.title }}</strong><hr>
S/C: {% if session.sysNotes %}{{ session.sysNotes }}{% endif %} <hr>
ERO: {% if session.eroNotes %}<p class="ero">{{ session.eroNotes }}</p>{% endif %} <hr>
ART: {% if session.artNotes %}<p class="art">{{ session.artNotes }}</p>{% endif %}</div>
{% endwith %}
</div>
</div>
</div>
{% endfor %}
{% endblock %}

View File

@@ -0,0 +1,43 @@
{% extends "plan/base.html" %}
{% load plan_templates %}
{% block content %}
<div class="divTable">
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableDay"><strong><big>Day // День</big></strong></div>
<div class="divTableCell45"><strong><big>Bear Lakes // Медвежьи Озера</big></strong></div>
<div class="divTableCell45hide"><strong><big>Ussuriysk // Уссурийск</big></strong></div>
</div>
</div>
</div>
<div class="divTable">
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableDay"><big>Day {{ session.Day.DayNumber }}</big></div>
<div class="divTableCell"><div class="info"><strong>{{ session.Day.title }}</strong>{% if session.Day.Notes %} | {{ session.Day.Notes }}{% endif %}</div></div>
</div>
</div>
</div>
<div class="divTable">
<div class="divTableBody">
<div class="divTableRow">
<div class="divTableDay">{{ session.Day.date }}</div>
<div class="divTableCell45"> <a href="{{ session.get_update_url }}">{{ session.TimeBegin_hh|format00 }}:{{ session.TimeBegin_mm|format00 }} - {{ session.TimeEnd_hh|format00 }}:{{ session.TimeEnd_mm|format00 }},
s/c: {{ session.sysSessionRequest }}', ero: {{ session.eroSessionRequest }}', art: {{ session.artSessionRequest }}', rest: {{ session.get_rest }}'</a><br>
<hr> Description: <strong>{{ session.title }}</strong><hr> S/C: {{ session.sysNotes }} <hr> ERO: {{ session.eroNotes }} <hr> ART: {{ session.artNotes }}</div>
{% with session=session.Day.UssuriyskDay %}
<div class="divTableCell45hide"> <a href="{{ session.get_update_url }}">{{ session.TimeBegin_hh|format00 }}:{{ session.TimeBegin_mm|format00 }} - {{ session.TimeEnd_hh|format00 }}:{{ session.TimeEnd_mm|format00 }},
s/c: {{ session.sysSessionRequest }}', ero: {{ session.eroSessionRequest }}', art: {{ session.artSessionRequest }}', rest: {{ session.get_rest }}'</a><br>
<hr> Description: <strong>{{ session.title }}</strong> <hr> S/C: {{ session.sysNotes }} <hr> ERO: {{ session.eroNotes }} <hr> ART: {{ session.artNotes }}</div>
{% endwith %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,45 @@
{% extends "logbook/base.html" %}
{% block content %}
{% for day in days %}
{% if day.logbookupload_set.all %}
<div class="row">
<div class="col-sm-2">
<div class="card">
<div class="card-body">
<div class="alert alert-success">
<h4 class="card-title"><a href="{{ day.get_absolute_url }}">День {{ day.daynumber }}</a></h4>
<p class="card-text">{{ day.date }}</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
<div class="col-sm-8">
<ol>
{% for upload in day.logbookupload_set.all %}
<li><p style="text-align:left;">
<a href="/uploads/logbook/{{ upload.filefield }}">{{ upload.title }}</a>
<span style="float:right;"><b>[{{ upload.owner.user }}, {{ upload.uploaded|date:"d M Y H:i:s" }}]</b></span>
</p></li>
{% endfor %}
</ol>
</div>
<div class="col-sm-2">
{% if user.is_authenticated %}<a href="{{ day.get_upload_url }}" class="btn btn-primary"><span class="glyphicon glyphicon-upload"></span> Добавить</a>{% endif %}
</div>
</div>
{% endif %}
{% endfor %}
{% endblock %}

View File

@@ -0,0 +1,34 @@
{% extends "logbook/base.html" %}
{% block content %}
<h3>День {{ day.daynumber }}, {{ day.date }}</h3>
<form action="{{ day.get_update_url }}" method="post">{% csrf_token %}
{% if form.errors %}<div class="error">{{ form.errors }}</div>{% endif %}
{% for hidden in form.hidden_fields %}
{{ hidden }}<hr>
{% endfor %}
{% for error in form.title.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_title" class=title>Заголовок:</label><br>
{{ form.title }}<br><br>
{% for error in form.notes.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_Notes">Описание:</label><br>
{{ form.notes }}<br><br>
<input type="submit" class="btn btn-primary" value="Обновить" />
</form>
{% endblock %}

View File

@@ -0,0 +1,87 @@
{% extends "plan/base.html" %}
{% block login %}{% endblock %}
{% block sidebar %}{% endblock %}
{% block content %}
<div bp="grid">
<div bp="2"></div>
<div bp="8">
<h2>Bear Lakes // Медвежьи Озера</h2>
<h3>Day {{ session.Day.DayNumber }}, {{ session.Day.date }}</h3>
<form action="{{ SessionBearLakes.get_update_url }}" method="post">{% csrf_token %}
{% if form.errors %}<div class="error">{{ form.errors }}</div>{% endif %}
{% for hidden in form.hidden_fields %}
{{ hidden }}<hr>
{% endfor %}
{% for error in form.title.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_title" class=title>Ground contact description:</label><br>
{{ form.title }}<br><br>
{% for error in form.TimeBegin_hh.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_TimeBegin_hh">Ground contact from:</label>
{{ form.TimeBegin_hh }}:{{ form.TimeBegin_mm }}
{% for error in form.TimeEnd_hh.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_TimeEnd_hh"> to:</label>
{{ form.TimeEnd_hh }}:{{ form.TimeEnd_mm }} in 24-hour time format.<br><br>
<h3>S/C operations</h3>
{% for error in form.sysSessionRequest.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_sysSessionRequest">Time request:</label>
{{ form.sysSessionRequest }} minutes<br>
{% for error in form.sysNotes.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_sysNotes">Notes:</label><br>
{{ form.sysNotes }}<br>
<h3>eRosita operations</h3>
{% for error in form.eroSessionRequest.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_eroSessionRequest">Time request:</label>
{{ form.eroSessionRequest }} minutes<br>
{% for error in form.eroNotes.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_sysNotes">Notes:</label><br>
{{ form.eroNotes }}<br>
<h3>ART-XC operations</h3>
{% for error in form.artSessionRequest.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_artSessionRequest">Time request:</label>
{{ form.artSessionRequest }} minutes<br>
{% for error in form.artNotes.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_artNotes">Notes:</label><br>
{{ form.artNotes }}<br><br>
<input class="button white big" type="submit" value="Update" />
</form>
</div>
<div bp="2"></div>
{% endblock %}

View File

@@ -0,0 +1,86 @@
{% extends "plan/base.html" %}
{% block login %}{% endblock %}
{% block sidebar %}{% endblock %}
{% block content %}
<div bp="grid">
<div bp="2"></div>
<div bp="8">
<h2>Ussuriysk // Уссурийск</h2>
<h3>Day {{ session.Day.DayNumber }}, {{ session.Day.date }}</h3>
<form action="{{ SessionBearLakes.get_update_url }}" method="post">{% csrf_token %}
{% if form.errors %}<div class="error">{{ form.errors }}</div>{% endif %}
{% for hidden in form.hidden_fields %}
{{ hidden }}<hr>
{% endfor %}
{% for error in form.title.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_title" class=title>Ground contact description:</label><br>
{{ form.title }}<br><br>
{% for error in form.TimeBegin.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_TimeBegin">Ground contact from:</label>
{{ form.TimeBegin_hh }}:{{ form.TimeBegin_mm }}
{% for error in form.TimeEnd.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_TimeEnd"> to:</label>
{{ form.TimeEnd_hh }}:{{ form.TimeEnd_mm }} in 24-hour time format.<br><br>
<h3>S/C operations</h3>
{% for error in form.sysSessionRequest.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_sysSessionRequest">Time request:</label>
{{ form.sysSessionRequest }} minutes<br>
{% for error in form.sysNotes.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_sysNotes">Notes:</label><br>
{{ form.sysNotes }}<br>
<h3>eRosita operations</h3>
{% for error in form.eroSessionRequest.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_eroSessionRequest">Time request:</label>
{{ form.eroSessionRequest }} minutes<br>
{% for error in form.eroNotes.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_sysNotes">Notes:</label><br>
{{ form.eroNotes }}<br>
<h3>ART-XC operations</h3>
{% for error in form.artSessionRequest.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_artSessionRequest">Time request:</label>
{{ form.artSessionRequest }} minutes<br>
{% for error in form.artNotes.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_artNotes">Notes:</label><br>
{{ form.artNotes }}<br><br>
<input class="button white big" type="submit" value="Update" />
</form>
</div>
<div bp="2"></div>
{% endblock %}

View File

@@ -0,0 +1,86 @@
{% extends "logbook/base.html" %}
{% block content %}
<div class="row">
<div class="col-sm-2">
<div class="card">
<div class="card-body">
<div class="alert alert-success">
<h3 class="card-title">День {{ day.daynumber }}</h3>
<p class="card-text">{{ day.date }}</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
<div class="col-sm-10">
<div class="card">
<div class="card-body">
<div class="alert alert-info">
<p class="card-text">
{% for plan in day.plan.all %}
<span class="glyphicon glyphicon-time"></span> {{ plan.description }} <b>[День {{ plan.daynumber }}, {{ plan.date|cut:" 00:00:00" }}]</b><br />
{% endfor %}
</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
<div class="alert alert-warning">
<h4 class="card-title">{% if day.title %}{{ day.title }}{% endif %}</h4>
<p class="card-text">{% if day.notes %}{{ day.notes }} <b>[{{ day.modified }}]</b>{% endif %}</p>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-2"></div>
<div class="col-sm-10">
<div class="panel panel-default">
<div class="panel-body"><h2>Загрузить документ</h2>
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
{% if form.errors %}<div class="error">{{ form.errors }}</div>{% endif %}
{% for hidden in form.hidden_fields %}
{{ hidden }}<hr>
{% endfor %}
{% for error in form.category.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_category">Категория:</label>
{{ form.category }}<br /><br />
{% for error in form.title.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_title">Название:</label><br>
{{ form.title }}
<br /><br />
<label for="id_filefield">Файл:</label>
{{ form.filefield }}
</div>
<input type="submit" class="btn btn-primary" value="Добавить" />
</div>
</div>
</div>
</div>
{% endblock %}

73
Templates/mdb.html Normal file
View File

@@ -0,0 +1,73 @@
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title>srg.arxiv.local</title>
<!-- MDB icon -->
<!-- link rel="icon" href="img/mdb-favicon.ico" type="image/x-icon"-->
<!-- Font Awesome -->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.11.2/css/all.css">
<!-- Google Fonts Roboto -->
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap">
<!-- Bootstrap core CSS -->
<link rel="stylesheet" href="{% static 'mdb/css/bootstrap.min.css' %}">
<!-- Material Design Bootstrap -->
<link rel="stylesheet" href="{% static 'mdb/css/mdb.min.css' %}">
<!-- Your custom styles (optional) -->
<link rel="stylesheet" href="{% static 'css/style.css' %}">
<!-- jQuery -->
<script type="text/javascript" src="{% static 'mdb/js/jquery.min.js' %}"></script>
<!-- Bootstrap tooltips -->
<script type="text/javascript" src="{% static 'mdb/js/popper.min.js' %}"></script>
<!-- Bootstrap core JavaScript -->
<script type="text/javascript" src="{% static 'mdb/js/bootstrap.min.js' %}"></script>
<!-- MDB core JavaScript -->
<script type="text/javascript" src="{% static 'mdb/js/mdb.min.js' %}"></script>
<!-- MDBootstrap Datatables -->
<link href="{% static 'mdb/css/addons/datatables.min.css' %}" rel="stylesheet">
<script type="text/javascript" src="{% static 'mdb/js/addons/datatables.min.js' %}"></script>
</head>
<body>
{% block header %}
{% endblock %}
{% block content %}
<!-- Start your project here-->
<div style="height: 100vh">
<div class="flex-center flex-column">
<h1 class="text-hide animated fadeIn mb-4" style="background-image: url('https://mdbootstrap.com/img/logo/mdb-transparent-250px.png'); width: 250px; height: 90px;">MDBootstrap</h1>
<h5 class="animated fadeIn mb-3">Thank you for using our product. We're glad you're with us.</h5>
<p class="animated fadeIn text-muted">MDB Team</p>
</div>
</div>
<!-- End your project here-->
{% endblock %}
<footer class="bs-footer" role="contentinfo">
<div class="container">
<div class="row">
<div class="col-sm-12">
<!--p style="text-align:right;">Development: Roman Krivonos</p-->
</div>
</div>
</div>
</footer>
<!-- Your custom scripts (optional) -->
<script type="text/javascript">
$(document).ready(function () {
$('#srgz').DataTable({"scrollX": true,});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,239 @@
{% load monthplan_templates %}
<!DOCTYPE html>
<html lang="en">
<head>
<title>{% block title %}Spectrum-RG Target and Scheduling Information{% endblock %}</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<META NAME="author" CONTENT="Roman Krivonos, email: krivonos [at] iki.rssi.ru">
<META NAME="description" CONTENT="High Energy Astrophysics Department at IKI RAN (Moscow, Russia)">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.1/css/all.css" integrity="sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf" crossorigin="anonymous">
<!-- include Aladin Lite CSS file in the head section of your page -->
<link rel="stylesheet" href="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.css" />
</head>
<body>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="/"><span class="glyphicon glyphicon-list"></span> SRG/ArXiv</a>
</div>
<ul class="nav navbar-nav">
{% if user.is_authenticated %}<li><a href="/monthplan/flightplan/valid"><span class="glyphicon glyphicon-tasks"></span> ПЗ</a></li>{% endif %}
<!--li><a href="/logbook"><i class="fa fa-rocket"></i> Бортжурнал СРГ</a></li-->
<!--li><a href="/monthplan/obsid"><span class="glyphicon glyphicon-search"></span> Search</a></li-->
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-briefcase"></span> Projects
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/monthplan">Scheduling</a></li>
<li><a href="/erosurvey">eRosita survey</a></li>
<li><a href="/erotrans">eRosita transients</a></li>
<li><a href="/srgcat">ART-XC survey</a></li>
<li><a href="/srgcat">ART-XC simulations</a></li>
<li><a href="/heasarc">HEASARC catalogs</a></li>
</ul>
</li>
{% if user.is_authenticated and user|has_group:"srg-iki-admin" %}
<li><a href="/monthplan/upload"><span class="glyphicon glyphicon-upload"></span> New plan</a></li>
<!--li><a href="/logbook/info"><span class="glyphicon glyphicon-info-sign"></span> Информация</a></li-->
{% endif %}
</ul>
{% if user.is_authenticated %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/logout">{{ user.email }} <span class="glyphicon glyphicon-log-out"></span> Sign Out</a>
{% else %}
<a class="btn btn-danger navbar-btn navbar-right" role="button" href="/logbook/login"><span class="glyphicon glyphicon-log-in"></span> Sign In</a>
{% endif %}
<a id="time" class="btn btn-light navbar-btn navbar-right disabled"></a>
</div>
</nav>
<div class="container">
{% block target %}
<div class="row">
<div class="col-sm-9">
<div class="card">
<div class="card-body">
<div class="alert alert-success">
<p class="card-text"><div id="wherenow"></div></p>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<!--p class="card-text"><a class="btn btn-success" href="/monthplan/tracking">Near real time SRG tracking</a></p-->
<p><a href="/monthplan/observations">Observations</a> | <a href="/monthplan/scans">Scans</a> | <a href="/monthplan/surveys">Surveys</a></p>
</div>
</div>
</div>
</div>
{% endblock %}
{% block header %}
<div class="row">
<div class="col-sm-9">
<div class="card">
<div class="card-body">
<div class="alert alert-info">
<p class="card-text">
<h4 class="card-title"> {{ head.get_datetime_middle|date:"F Y" }}
{% if user.is_authenticated and user|has_group:"srg-iki-admin" and head.archived == False %}
<a class="btn btn-warning btn-sm" role="button" href="{{ head.get_absolute_url_delete }}"><span class="glyphicon glyphicon-remove"></span></a>
<a class="btn btn-warning btn-sm" role="button" href="{{ head.get_absolute_url_share }}"><span class="glyphicon glyphicon-share"></span></a>
{% endif %}
</h4>
{% if user.is_authenticated %}
<a class="btn btn-success" href={{ head.get_absolute_url }}>Schedule</a>
{% else %}
<a class="btn btn-success disabled" href="#">Schedule</a>
{% endif %}
{% if head.seance_set.all %}
{% if user.is_authenticated %}
<a class="btn btn-danger" role="button" href="{{ head.get_absolute_url_seance }}">Seances</a>
{% else %}
<a class="btn btn-danger disabled" role="button" href="#">Seances</a>
{% endif %}
{% endif %}
{% if head.correction_set.all %}
{% if user.is_authenticated %}
<a class="btn btn-danger" href="{{ head.get_absolute_url_correction }}">Corrections</a>
{% else %}
<a class="btn btn-danger disabled" href="#">Corrections</a>
{% endif %}
{% endif %}
{% if head.observation_set.all %}
<a class="btn btn-danger" role="button" href="{{ head.get_absolute_url_observation }}">Observations</a>
{% endif %}
{% if head.scan_set.all %}
<a class="btn btn-danger" role="button" href="{{ head.get_absolute_url_scan }}">Scans</a>
{% endif %}
{% if head.survey_set.all %}
<a class="btn btn-danger" role="button" href="{{ head.get_absolute_url_survey }}">Survey</a>
{% endif %}
<a class="btn btn-info" role="button" href="{{ head.get_absolute_url_aladin }}">Aladin</a>
</p>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<h4 class="card-title"><a href="{{ day.get_absolute_url }}"></a></h4>
<p>version: {{ head.version }}</p>
<p>modified: {{ head.gentime|date:"d M Y H:i" }}</p>
{% if user.is_authenticated %}
<p>download: <a href="{{ head.upload.get_absolute_url }}">FITS</a></p>
{% endif %}
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block content %}Base content{% endblock %}
</div>
<footer class="bs-footer" role="contentinfo">
<div class="container">
<div class="row">
<div class="col-sm-12">
<div class="card">
<div class="card-body">
<div class="alert alert-light">
<p class="card-text">
<hr>
Отдел астрофизики высоких энергий ИКИ РАН © 2019 <a href="http://hea.cosmos.ru" target="_blank">Вебсайт отдела</a> |
<a href="http://www.iki.rssi.ru" target="_blank">ИКИ РАН</a> |
<a href="http://srg.iki.rssi.ru">Спектр-РГ</a> | Разработка: Роман Кривонос, email: krivonos/@/cosmos.ru
</p>
<!--a href="#" class="btn btn-primary">Go somewhere</a-->
</div>
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
$(document).ready(function(){
setInterval(ajaxCall, 2000);
function ajaxCall() {
$.ajax({
url: '/monthplan/time',
dataType: 'json',
success: function (data) {
$('#time').html(data.time);
}
});
}
ajaxWhereNow();
setInterval(ajaxWhereNow, 5000);
function ajaxWhereNow() {
$.ajax({
url: '/monthplan/wherenow',
dataType: 'json',
success: function (data) {
if(data.target == 'None'){
$('#wherenow').html('<b>SRG status:</b> slewing to the next program block');
}else{
$('#wherenow').html("Now observing: <a href="+data.url+">"+data.target+"</a> RA="+data.ra+", Dec="+data.dec+", mode: "+data.mode+' '+data.msg);
}
}
});
}
});
</script>
{% block javascript %}{% endblock %}
</body>
</html>

View File

@@ -0,0 +1,10 @@
<h2>New SRG data loaded</h2>
<h2>Source list info and statistics:</h2>
<h4>{{ event.src_path }} {{ event.event_type }}</h4>
<p>This SRG-ArXiv service email is sent to all registered users of arxiv.srg.rssi.ru within group <a href="http://arxiv.srg.rssi.ru/groups/3/info"><strong>srg-artxc-survey</strong></a>.
<p>This message is intended for the use of the addressee or addressees only. The unauthorised disclosure, use, dissemination or copying (either in whole or in part) of its content is not permitted. If you received this message in error, please notify the sender and delete it from your system.</p>

View File

@@ -0,0 +1,85 @@
{% extends "monthplan/base.html" %}
{% load monthplan_templates %}
{% block header %}
{% for head in heads %}
<div class="row">
<div class="col-sm-9">
<div class="card">
<div class="card-body">
<div class="alert alert-info">
<p class="card-text">
<h4 class="card-title"> {{ head.get_datetime_middle|date:"F Y" }}
{% if user.is_authenticated and user|has_group:"srg-iki-admin" and head.archived == False %}
<a class="btn btn-warning btn-sm" role="button" href="{{ head.get_absolute_url_delete }}"><span class="glyphicon glyphicon-remove"></span></a>
<a class="btn btn-warning btn-sm" role="button" href="{{ head.get_absolute_url_share }}"><span class="glyphicon glyphicon-share"></span></a>
{% endif %}
</h4>
{% if user.is_authenticated %}
<a class="btn btn-success" href={{ head.get_absolute_url }}>Schedule</a>
{% else %}
<a class="btn btn-success disabled" href="#">Schedule</a>
{% endif %}
{% if head.seance_set.all %}
{% if user.is_authenticated %}
<a class="btn btn-danger" role="button" href="{{ head.get_absolute_url_seance }}">Seances</a>
{% else %}
<a class="btn btn-danger disabled" role="button" href="#">Seances</a>
{% endif %}
{% endif %}
{% if head.correction_set.all %}
{% if user.is_authenticated %}
<a class="btn btn-danger" href="{{ head.get_absolute_url_correction }}">Corrections</a>
{% else %}
<a class="btn btn-danger disabled" href="#">Corrections</a>
{% endif %}
{% endif %}
{% if head.observation_set.all %}
<a class="btn btn-danger" role="button" href="{{ head.get_absolute_url_observation }}">Observations</a>
{% endif %}
{% if head.scan_set.all %}
<a class="btn btn-danger" role="button" href="{{ head.get_absolute_url_scan }}">Scans</a>
{% endif %}
{% if head.survey_set.all %}
<a class="btn btn-danger" role="button" href="{{ head.get_absolute_url_survey }}">Survey</a>
{% endif %}
<a class="btn btn-info" role="button" href="{{ head.get_absolute_url_aladin }}">Aladin</a>
</p>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<div class="alert alert-warning">
<h4 class="card-title"><a href="{{ day.get_absolute_url }}"></a></h4>
<p>version: {{ head.version }}</p>
<p>modified: {{ head.gentime|date:"d M Y H:i" }}</p>
{% if user.is_authenticated %}<p>download: <a href="{{ head.upload.get_absolute_url }}">FITS</a></p>{% endif %}
</div>
</div>
</div>
</div>
</div>
{% endfor %}
{% endblock %}
{% block content %}{% endblock %}

View File

@@ -0,0 +1,64 @@
{% extends "monthplan/base.html" %}
{% block header %}{% endblock %}
{% block content %}
<h2><span class="glyphicon glyphicon-tasks"></span> SRG Flight Program</h2>
<div class="text-right">View: <a href="/monthplan/flightplan">All</a> |
<a href="/monthplan/flightplan/valid">valid</a> |
<a href="/monthplan/flightplan/invalid">hidden</a> {% if user.is_authenticated %}| <a href="/static/pz.fits">FITS</a>{% endif %}</div>
{% if flightplans %}
<table class="table table-hover">
<thead>
</thead>
<tbody>
{% for obs in flightplans %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td>
{% if obs.valid %}
<span class="glyphicon glyphicon-ok"></span>
{% else %}
<span class="glyphicon glyphicon-remove"></span>
{% endif %}
</td>
<td>{{ obs.start|date:"d M Y H:i:s"}}</td>
<td>{{ obs.stop|date:"d M Y H:i:s"}}</td>
<td><a href="{{ obs.get_absolute_url }}">{{ obs.experiment }}</a></td>
<td>RA: {{ obs.ra|floatformat:4 }}</td>
<td>Dec: {{ obs.dec|floatformat:4 }}</td>
<td>Loaded: {{ obs.load_stamp|date:"d M Y" }}</td>
</tr>
<tr>
<td>MJD</td>
<td>{{ obs.mjd_start|floatformat:6}}</td>
<td>{{ obs.mjd_stop|floatformat:6}}</td>
<td>Q1: {{ obs.q1 }}</td>
<td>Q2: {{ obs.q2 }}</td>
<td>Q3: {{ obs.q3 }}</td>
<td>Q4: {{ obs.q4 }}</td>
</tr>
<tr>
<td>OBT</td>
<td>{{ obs.obt_start|floatformat:4}}</td>
<td>{{ obs.obt_stop|floatformat:4}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<!--tr>
<td>НПОЛ (UTC)</td>
<td>{{ obs.start_npol}}</td>
<td>{{ obs.stop_npol}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr-->
{% endfor %}
</tbody>
</table>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,129 @@
{% extends "monthplan/base.html" %}
{% block header %}{% endblock %}
{% block content %}
<div class="row">
<div class="col-sm-12">
<div class="panel panel-default">
<div class="panel-body"><!--h2>Поиск</h2-->
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<div class="form-group">
{% if form.errors %}<div class="error">{{ form.errors }}</div>{% endif %}
{% for hidden in form.hidden_fields %}
{{ hidden }}<hr>
{% endfor %}
{% for error in form.title.errors %}
<div class="error">{{ error }}</div>
{% endfor %}
<label for="id_obsid">Experiment/ObsID:</label> {{ form.obsid }}
<input type="submit" class="btn btn-primary" value="Искать" />
</div>
</div>
</div>
</div>
{% if observations %}
<table class="table table-hover">
<thead>
<tr><th scope="col" colspan="4">Наблюдения</th></tr>
</thead>
<tbody>
{% for obs in observations %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td><a href="{{ obs.get_absolute_url_logbook_start }}">{{ obs.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ obs.get_absolute_url_logbook_stop }}">{{ obs.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ obs.get_absolute_url }}">{{ obs.experiment }}</a></td><td>{{ obs.ra|floatformat:4 }}</td><td>{{ obs.dec|floatformat:4 }}</td><td>{{ obs.target }}</td><td><a href="{{ obs.head.get_absolute_url_observation }}">{{ obs.head.get_datetime_middle|date:"F Y" }}</a></td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
{% if scans %}
<table class="table table-hover">
<thead>
<tr><th scope="col" colspan="4">Сканирующие наблюдения участков неба</th></tr>
</thead>
<tbody>
{% for scan in scans %}
<tr class="{% if scan.is_past_due %}bg-success{% endif %}{% if scan.is_future %} bg-info{% endif %}{% if scan.is_current %} bg-danger{% endif %}">
<td><a href="{{ scan.get_absolute_url_logbook_start }}">{{ scan.start }}</a></td>
<td><a href="{{ scan.get_absolute_url_logbook_stop }}">{{ scan.stop }}</a></td>
<td>{{ scan.experiment }}</td><td>{{ scan.target }}</td><td>template {{ scan.template }}</td><td><a href="{{ scan.head.get_absolute_url_observation }}">{{ scan.head.title }}</a></td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
{% if flightplans %}
<table class="table table-hover">
<thead>
<tr><th scope="col" colspan="4">Полетное задание</th></tr>
</thead>
<tbody>
{% for obs in flightplans %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td>
{% if obs.valid %}
<span class="glyphicon glyphicon-ok"></span>
{% else %}
<span class="glyphicon glyphicon-remove"></span>
{% endif %}
</td>
<td>{{ obs.start|date:"d M Y H:i:s"}}</td>
<td>{{ obs.stop|date:"d M Y H:i:s"}}</td>
<td>{{ obs.experiment }}</td>
<td>RA: {{ obs.ra|floatformat:4 }}</td>
<td>Dec: {{ obs.dec|floatformat:4 }}</td>
<td>Загружено: {{ obs.load_stamp|date:"d M Y" }}</td>
</tr>
<tr>
<td>MJD</td>
<td>{{ obs.mjd_start|floatformat:6}}</td>
<td>{{ obs.mjd_stop|floatformat:6}}</td>
<td>Q1: {{ obs.q1 }}</td>
<td>Q2: {{ obs.q2 }}</td>
<td>Q3: {{ obs.q3 }}</td>
<td>Q4: {{ obs.q4 }}</td>
</tr>
<tr>
<td>OBT</td>
<td>{{ obs.obt_start|floatformat:4}}</td>
<td>{{ obs.obt_stop|floatformat:4}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>НПОЛ (UTC)</td>
<td>{{ obs.start_npol}}</td>
<td>{{ obs.stop_npol}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</div>
{% endblock %}

View File

@@ -0,0 +1,125 @@
{% extends "monthplan/base.html" %}
{% block header %}{% endblock %}
{% block content %}
<table class="table table-hover">
{% if observations %}
<thead>
<tr><th scope="col" colspan="4">Observations</th></tr>
</thead>
<tbody>
{% for observation in observations %}
<tr class="{% if observation.is_past_due %}bg-success{% endif %}{% if observation.is_future %} bg-info{% endif %}{% if observation.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-screenshot"></span></td>
<td><a href="{{ observation.get_absolute_url_logbook_start }}">{{ observation.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ observation.get_absolute_url_logbook_stop }}">{{ observation.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ observation.get_absolute_url }}">{{ observation.experiment }}</a></td><td>{{ observation.ra|floatformat:4 }}</td><td>{{ observation.dec|floatformat:4 }}</td><td>{{ observation.target }}</td>
<td><a href="{{ observation.head.get_absolute_url_observation }}">{{ observation.head.get_datetime_middle|date:"F Y" }}</a></td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if scans %}
<thead>
<tr><th scope="col" colspan="4">Scans</th></tr>
</thead>
<tbody>
{% for scan in scans %}
<tr class="{% if scan.is_past_due %}bg-success{% endif %}{% if scan.is_future %} bg-info{% endif %}{% if scan.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-retweet"></span></td>
<td><a href="{{ scan.get_absolute_url_logbook_start }}">{{ scan.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ scan.get_absolute_url_logbook_stop }}">{{ scan.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ scan.get_absolute_url }}">{{ scan.experiment }}</a></td><td>{{ scan.target }}</td><td>template {{ scan.template }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if surveys %}
<thead>
<tr><th scope="col" colspan="4">Surveys</th></tr>
</thead>
<tbody>
{% for survey in surveys %}
<tr class="{% if survey.is_past_due %}bg-success{% endif %}{% if survey.is_future %} bg-info{% endif %}{% if survey.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-repeat"></span></td>
<td><a href="{{ survey.get_absolute_url_logbook_start }}">{{ survey.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ survey.get_absolute_url_logbook_stop }}">{{ survey.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ survey.get_absolute_url }}">{{ survey.experiment }}</a></td><td>{{ survey.target }}</td><td>
<b>ra_p</b>: {{ survey.ra_p }},
<b>dec_p</b>: {{ survey.dec_p }},<br>
<b>ra_z0</b>: {{ survey.ra_z0 }},
<b>dec_z0</b>: {{ survey.dec_z0 }},<br>
<b>ra_zk</b>: {{ survey.ra_zk }},
<b>dec_zk</b>: {{ survey.dec_zk }},<br>
<b>z_speed</b>: {{ survey.z_speed }}
</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
</table>
{% if obs %}
<table class="table table-hover">
<thead>
<tr><th scope="col" colspan="4">Flight Program</th></tr>
</thead>
<tbody>
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td>
{% if obs.valid %}
<span class="glyphicon glyphicon-ok"></span>
{% else %}
<span class="glyphicon glyphicon-remove"></span>
{% endif %}
</td>
<td>{{ obs.start|date:"d M Y H:i:s"}}</td>
<td>{{ obs.stop|date:"d M Y H:i:s"}}</td>
<td><a href="{{ obs.get_absolute_url }}">{{ obs.experiment }}</a></td>
<td>RA: {{ obs.ra|floatformat:4 }}</td>
<td>Dec: {{ obs.dec|floatformat:4 }}</td>
<td>Loaded: {{ obs.load_stamp|date:"d M Y" }}</td>
</tr>
<tr>
<td>MJD</td>
<td>{{ obs.mjd_start|floatformat:6}}</td>
<td>{{ obs.mjd_stop|floatformat:6}}</td>
<td>Q1: {{ obs.q1 }}</td>
<td>Q2: {{ obs.q2 }}</td>
<td>Q3: {{ obs.q3 }}</td>
<td>Q4: {{ obs.q4 }}</td>
</tr>
<tr>
<td>OBT</td>
<td>{{ obs.obt_start|floatformat:4}}</td>
<td>{{ obs.obt_stop|floatformat:4}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<!--tr>
<td>НПОЛ (UTC)</td>
<td>{{ obs.start_npol}}</td>
<td>{{ obs.stop_npol}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr-->
</tbody>
</table>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,102 @@
{% extends "monthplan/base.html" %}
{% block content %}
<table class="table table-hover">
{% if seances %}
<thead>
<tr><th scope="col" colspan="4">Seances</th></tr>
</thead>
<tbody>
{% for seance in seances %}
<tr class="{% if seance.is_past_due %}bg-success{% endif %}{% if seance.is_future %} bg-info{% endif %}{% if seance.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-time"></span></td>
<td><a href="{{ seance.get_absolute_url_logbook_start }}">{{ seance.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ seance.get_absolute_url_logbook_stop }}">{{ seance.stop|date:"d M Y H:i:s" }}</a></td>
<td></td>
<td></td>
<td></td>
<td>{{ seance.stations }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if corrections %}
<thead>
<tr><th scope="col" colspan="4">Corrections</th></tr>
</thead>
<tbody>
{% for cor in corrections %}
<tr>
<td><span class="glyphicon glyphicon-flash"></span></td>
<td>{{ cor.start|date:"d M Y H:i:s" }}</td><td>{{ cor.stop|date:"d M Y H:i:s" }}</td><td>IMPSTART: {{ cor.impstart|date:"d M Y H:i:s" }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if observations %}
<thead>
<tr><th scope="col" colspan="4">Observations</th></tr>
</thead>
<tbody>
{% for obs in observations %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-screenshot"></span></td>
<td><a href="{{ obs.get_absolute_url_logbook_start }}">{{ obs.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ obs.get_absolute_url_logbook_stop }}">{{ obs.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ obs.get_absolute_url }}">{{ obs.experiment }}</a></td><td>{{ obs.ra|floatformat:4 }}</td><td>{{ obs.dec|floatformat:4 }}</td><td>{{ obs.target }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if scans %}
<thead>
<tr><th scope="col" colspan="4">Сканирующие наблюдения участков неба</th></tr>
</thead>
<tbody>
{% for scan in scans %}
<tr class="{% if scan.is_past_due %}bg-success{% endif %}{% if scan.is_future %} bg-info{% endif %}{% if scan.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-retweet"></span></td>
<td><a href="{{ scan.get_absolute_url_logbook_start }}">{{ scan.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ scan.get_absolute_url_logbook_stop }}">{{ scan.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ scan.get_absolute_url }}">{{ scan.experiment }}</a></td><td>{{ scan.target }}</td><td>template {{ scan.template }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if surveys %}
<thead>
<tr><th scope="col" colspan="4">Обзоры неба</th></tr>
</thead>
<tbody>
{% for survey in surveys %}
<tr class="{% if survey.is_past_due %}bg-success{% endif %}{% if survey.is_future %} bg-info{% endif %}{% if survey.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-repeat"></span></td>
<td><a href="{{ survey.get_absolute_url_logbook_start }}">{{ survey.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ survey.get_absolute_url_logbook_stop }}">{{ survey.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ survey.get_absolute_url }}">{{ survey.experiment }}</a></td><td>{{ survey.target }}</td><td>
<b>ra_p</b>: {{ survey.ra_p }},
<b>dec_p</b>: {{ survey.dec_p }},<br>
<b>ra_z0</b>: {{ survey.ra_z0 }},
<b>dec_z0</b>: {{ survey.dec_z0 }},<br>
<b>ra_zk</b>: {{ survey.ra_zk }},
<b>dec_zk</b>: {{ survey.dec_zk }},<br>
<b>z_speed</b>: {{ survey.z_speed }}
</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
</table>
{% endblock %}

View File

@@ -0,0 +1,102 @@
{% extends "monthplan/base.html" %}
{% load monthplan_templates %}
{% block content %}
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "GAL",
survey: "P/DSS2/color",
fov: 197, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
aladin.createImageSurvey("DIRBE_4","DIRBE_4", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/DIRBE_4",'galactic',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
aladin.getBaseImageLayer().getColorMap().update('rainbow');
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("DIRBE_4");
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var cat1 = A.catalog({shape: 'circle', name: 'SRG Targets', color: 'white', sourceSize: 30, displayLabel: true, labelColumn: "name",onClick: 'showPopup'});
{% if observations %}
{% for obs in observations %}
{% if obs.ra_obj > 0.0 %}
cat1.addSources(A.source({{ obs.ra_obj|safe }}, {{ obs.dec_obj|safe }}, {obsid: '<a href="{{ obs.get_absolute_url }}">{{ obs.experiment }}</a>', name: '{{ obs.target }}', info: '{{ obs.target }}'}));
{% endif %}
{% endfor %}
{% endif %}
var cat2 = A.catalog({shape: 'cross', name: 'SRG Offsets', color: 'green', sourceSize: 15, displayLabel:true, labelColumn: "name",onClick: 'showPopup'});
{% if observations %}
{% for obs in observations %}
cat2.addSources(A.source({{ obs.ra|safe }}, {{ obs.dec|safe }}, {name: ' Offset', info: '{{ obs.target }}'}));
{% endfor %}
{% endif %}
aladin.addCatalog(cat2);
aladin.addCatalog(cat1);
var cat3 = A.catalog({shape: 'circle', name: 'Survey Path', color: 'white', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
{% if surveypaths %}
var overlay = A.graphicOverlay({color: '#ee2345', lineWidth: 1});
aladin.addOverlay(overlay);
{% for path in surveypaths %}
{% with next_element=surveypaths|next:forloop.counter0 %}
{% with previous_element=surveypaths|previous:forloop.counter0 %}
cat3.addSources(A.source({{ path.ra|safe }}, {{ path.dec|safe }},
{obsid: '{{ path.survey.experiment }}',
eroday: '{{ path.eroday|floatformat:4 }}',date: '{{ path.dtime|date:"d.m.y H:i" }}',
RA: '{{ path.ra|floatformat:3 }}',Dec: '{{ path.dec|floatformat:3 }}', Roll: '{{ path.roll|floatformat:3 }}',}));
{% if next_element %}
overlay.add(A.polyline([ [{{ path.ra|safe }}, {{ path.dec|safe }}], [{{ next_element.ra|safe }}, {{ next_element.dec|safe }}], ]));
{% endif %}
{% endwith %}
{% endwith %}
{% endfor %}
{% endif %}
aladin.addCatalog(cat3);
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
{% endblock %}

View File

@@ -0,0 +1,85 @@
{% extends "monthplan/base.html" %}
{% block content %}
<table class="table table-hover">
{% for item in seq %}
{% if observations %}
{% for obs in observations %}
{% if item == obs.row %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-screenshot"></span> {{ item }}</td>
<td><a href="{{ obs.get_absolute_url_logbook_start }}">{{ obs.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ obs.get_absolute_url_logbook_stop }}">{{ obs.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ obs.get_absolute_url }}">{{ obs.experiment }}</a></td><td>{{ obs.ra|floatformat:4 }}</td><td>{{ obs.dec|floatformat:4 }}</td><td>{{ obs.target }}</td>
</tr>
{% endif %}
{% endfor %}
{% endif %}
{% if scans %}
{% for scan in scans %}
{% if item == scan.row %}
<tr class="{% if scan.is_past_due %}bg-success{% endif %}{% if scan.is_future %} bg-info{% endif %}{% if scan.is_current %} bg-danger{% endif %}">
<td ><span class="glyphicon glyphicon-retweet"></span> {{ item }}</td>
<td><a href="{{ scan.get_absolute_url_logbook_start }}">{{ scan.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ scan.get_absolute_url_logbook_stop }}">{{ scan.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ scan.get_absolute_url }}">{{ scan.experiment }}</a></td></td></td><td></td><td></td><td>{{ scan.target }} T{{ scan.template }}</td>
</tr>
{% endif %}
{% endfor %}
{% endif %}
{% if seances %}
{% for seance in seances %}
{% if item == seance.row %}
<tr class="{% if seance.is_past_due %}bg-success{% endif %}{% if seance.is_future %} bg-info{% endif %}{% if seance.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-time"></span> {{ item }}</td>
<td><a href="{{ seance.get_absolute_url_logbook_start }}">{{ seance.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ seance.get_absolute_url_logbook_stop }}">{{ seance.stop|date:"d M Y H:i:s" }}</a></td>
<td></td>
<td></td>
<td></td>
<td>{{ seance.stations }}</td>
</tr>
{% endif %}
{% endfor %}
{% endif %}
{% if corrections %}
{% for cor in corrections %}
{% if item == cor.row %}
<tr class="{% if cor.is_past_due %}bg-success{% endif %}{% if cor.is_future %} bg-info{% endif %}{% if cor.is_current %} bg-danger{% endif %}">
<td ><span class="glyphicon glyphicon-flash"></span> {{ item }}</td>
<td>{{ cor.start|date:"d M Y H:i:s" }}</td><td>{{ cor.stop|date:"d M Y H:i:s" }}</td>
<td></td>
<td></td>
<td></td>
<td>IMPSTART: {{ cor.impstart }}</td>
</tr>
{% endif %}
{% endfor %}
{% endif %}
{% if surveys %}
{% for sur in surveys %}
{% if item == sur.row %}
<tr class="{% if sur.is_past_due %}bg-success{% endif %}{% if sur.is_future %} bg-info{% endif %}{% if sur.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-repeat"></span> {{ item }}</td>
<td><a href="{{ sur.get_absolute_url_logbook_start }}">{{ sur.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ sur.get_absolute_url_logbook_stop }}">{{ sur.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ sur.get_absolute_url }}">{{ sur.experiment }}</a></td><td>{{ sur.ra_p }}</td><td>{{ sur.dec_p }}</td><td></td>
</tr>
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}
</table>
{% endblock %}

View File

@@ -0,0 +1,163 @@
{% extends "monthplan/base.html" %}
{% block content %}
<table class="table table-hover">
{% if observation %}
<thead>
<tr><th scope="col" colspan="4">Observations</th></tr>
</thead>
<tbody>
<tr class="{% if observation.is_past_due %}bg-success{% endif %}{% if observation.is_future %} bg-info{% endif %}{% if observation.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-screenshot"></span></td>
<td><a href="{{ observation.get_absolute_url_logbook_start }}">{{ observation.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ observation.get_absolute_url_logbook_stop }}">{{ observation.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ observation.get_absolute_url }}">{{ observation.experiment }}</a></td><td>{{ observation.ra|floatformat:4 }}</td><td>{{ observation.dec|floatformat:4 }}</td><td>{{ observation.target }}</td>
</tr>
</tbody>
{% endif %}
</table>
{% if flightplans and user.is_authenticated %}
<table class="table table-hover">
<thead>
<tr><th scope="col" colspan="4">Flight program</th></tr>
</thead>
<tbody>
{% for obs in flightplans %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td>
{% if obs.valid %}
<span class="glyphicon glyphicon-ok"></span>
{% else %}
<span class="glyphicon glyphicon-remove"></span>
{% endif %}
</td>
<td>{{ obs.start|date:"d M Y H:i:s"}}</td>
<td>{{ obs.stop|date:"d M Y H:i:s"}}</td>
<td><a href="{{ obs.get_absolute_url }}">{{ obs.experiment }}</a></td>
<td>RA: {{ obs.ra|floatformat:4 }}</td>
<td>Dec: {{ obs.dec|floatformat:4 }}</td>
<td>Загружено: {{ obs.load_stamp|date:"d M Y" }}</td>
</tr>
<tr>
<td>MJD</td>
<td>{{ obs.mjd_start|floatformat:6}}</td>
<td>{{ obs.mjd_stop|floatformat:6}}</td>
<td>Q1: {{ obs.q1 }}</td>
<td>Q2: {{ obs.q2 }}</td>
<td>Q3: {{ obs.q3 }}</td>
<td>Q4: {{ obs.q4 }}</td>
</tr>
<tr>
<td>OBT</td>
<td>{{ obs.obt_start|floatformat:4}}</td>
<td>{{ obs.obt_stop|floatformat:4}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<!--tr>
<td>НПОЛ (UTC)</td>
<td>{{ obs.start_npol}}</td>
<td>{{ obs.stop_npol}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr-->
{% endfor %}
</tbody>
</table>
{% endif %}
<table class="table table-hover">
{% if seances %}
<thead>
<tr><th scope="col" colspan="4">Сеансы связи с КА</th></tr>
</thead>
<tbody>
{% for seance in seances %}
<tr class="{% if seance.is_past_due %}bg-success{% endif %}{% if seance.is_future %} bg-info{% endif %}{% if seance.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-time"></span></td>
<td><a href="{{ seance.get_absolute_url_logbook_start }}">{{ seance.start }}</a></td>
<td><a href="{{ seance.get_absolute_url_logbook_stop }}">{{ seance.stop }}</a></td>
<td></td>
<td></td>
<td></td>
<td>{{ seance.stations }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if corrections %}
<thead>
<tr><th scope="col" colspan="4">Коррекция траектории КА</th></tr>
</thead>
<tbody>
{% for cor in corrections %}
<tr>
<td><span class="glyphicon glyphicon-flash"></span></td>
<td>{{ cor.start }}</td><td>{{ cor.stop }}</td><td>IMPSTART: {{ cor.impstart }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if observations %}
<thead>
<tr><th scope="col" colspan="4">Наблюдения</th></tr>
</thead>
<tbody>
{% for obs in observations %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-screenshot"></span></td>
<td><a href="{{ obs.get_absolute_url_logbook_start }}">{{ obs.start }}</a></td>
<td><a href="{{ obs.get_absolute_url_logbook_stop }}">{{ obs.stop }}</a></td>
<td>{{ obs.experiment }}</td><td>{{ obs.ra|floatformat:4 }}</td><td>{{ obs.dec|floatformat:4 }}</td><td>{{ obs.target }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if scans %}
<thead>
<tr><th scope="col" colspan="4">Сканирующие наблюдения участков неба</th></tr>
</thead>
<tbody>
{% for scan in scans %}
<tr class="{% if scan.is_past_due %}bg-success{% endif %}{% if scan.is_future %} bg-info{% endif %}{% if scan.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-retweet"></span></td>
<td><a href="{{ scan.get_absolute_url_logbook_start }}">{{ scan.start }}</a></td>
<td><a href="{{ scan.get_absolute_url_logbook_stop }}">{{ scan.stop }}</a></td>
<td>{{ scan.experiment }}</td><td>{{ scan.target }}</td><td>template {{ scan.template }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if datadumps %}
<thead>
<tr><th scope="col" colspan="4">Сбросы данных</th></tr>
</thead>
<tbody>
{% for dd in datadumps %}
<tr>
<td><span class="glyphicon glyphicon-save"></span></td>
<td>{{ dd.start|date:"d M Y H:i:s" }}</td>
<td>{{ dd.stop|date:"d M Y H:i:s" }}</td><td>{{ dd.tstart }} {{ dd.tstop }}</td>
<td>{{ dd.name }}</td><td>{{ dd.filename }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
</table>
{% endblock %}

View File

@@ -0,0 +1,237 @@
{% extends "monthplan/base.html" %}
{% load monthplan_templates %}
{% block content %}
<table class="table table-hover">
{% if scan %}
<thead>
<tr><th scope="col" colspan="4">Scans</th></tr>
</thead>
<tbody>
<tr class="{% if scan.is_past_due %}bg-success{% endif %}{% if scan.is_future %} bg-info{% endif %}{% if scan.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-screenshot"></span></td>
<td><a href="{{ scan.get_absolute_url_logbook_start }}">{{ scan.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ scan.get_absolute_url_logbook_stop }}">{{ scan.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ scan.get_absolute_url }}">{{ scan.experiment }}</a> {% if user.is_authenticated %}<a href="{{ scan.get_download_csv_url }}"><span class="glyphicon glyphicon-download"></span> download csv</a>{% endif %}</td><td>{{ scan.ra|floatformat:4 }}</td><td>{{ scan.dec|floatformat:4 }}</td><td>{{ scan.target }}</td>
</tr>
</tbody>
{% endif %}
</table>
{% if flightplans and user.is_authenticated %}
<table class="table table-hover">
<thead>
<tr><th scope="col" colspan="4">Flight program</th></tr>
</thead>
<tbody>
{% for obs in flightplans %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td>
{% if obs.valid %}
<span class="glyphicon glyphicon-ok"></span>
{% else %}
<span class="glyphicon glyphicon-remove"></span>
{% endif %}
</td>
<td>{{ obs.start|date:"d M Y H:i:s"}}</td>
<td>{{ obs.stop|date:"d M Y H:i:s"}}</td>
<td>{{ obs.experiment }}</td>
<td>RA: {{ obs.ra|floatformat:4 }}</td>
<td>Dec: {{ obs.dec|floatformat:4 }}</td>
<td>Loaded: {{ obs.load_stamp|date:"d M Y" }}</td>
</tr>
<tr>
<td>MJD</td>
<td>{{ obs.mjd_start|floatformat:6}}</td>
<td>{{ obs.mjd_stop|floatformat:6}}</td>
<td>Q1: {{ obs.q1 }}</td>
<td>Q2: {{ obs.q2 }}</td>
<td>Q3: {{ obs.q3 }}</td>
<td>Q4: {{ obs.q4 }}</td>
</tr>
<tr>
<td>OBT</td>
<td>{{ obs.obt_start|floatformat:4}}</td>
<td>{{ obs.obt_stop|floatformat:4}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
<table class="table table-hover">
{% if seances %}
<thead>
<tr><th scope="col" colspan="4">Сеансы связи с КА</th></tr>
</thead>
<tbody>
{% for seance in seances %}
<tr class="{% if seance.is_past_due %}bg-success{% endif %}{% if seance.is_future %} bg-info{% endif %}{% if seance.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-time"></span></td>
<td><a href="{{ seance.get_absolute_url_logbook_start }}">{{ seance.start }}</a></td>
<td><a href="{{ seance.get_absolute_url_logbook_stop }}">{{ seance.stop }}</a></td>
<td></td>
<td></td>
<td></td>
<td>{{ seance.stations }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if corrections %}
<thead>
<tr><th scope="col" colspan="4">Коррекция траектории КА</th></tr>
</thead>
<tbody>
{% for cor in corrections %}
<tr>
<td><span class="glyphicon glyphicon-flash"></span></td>
<td>{{ cor.start }}</td><td>{{ cor.stop }}</td><td>IMPSTART: {{ cor.impstart }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if observations %}
<thead>
<tr><th scope="col" colspan="4">Наблюдения</th></tr>
</thead>
<tbody>
{% for obs in observations %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-screenshot"></span></td>
<td><a href="{{ obs.get_absolute_url_logbook_start }}">{{ obs.start }}</a></td>
<td><a href="{{ obs.get_absolute_url_logbook_stop }}">{{ obs.stop }}</a></td>
<td>{{ obs.experiment }}</td><td>{{ obs.ra|floatformat:4 }}</td><td>{{ obs.dec|floatformat:4 }}</td><td>{{ obs.target }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if scans %}
<thead>
<tr><th scope="col" colspan="4">Scans</th></tr>
</thead>
<tbody>
{% for scan in scans %}
<tr class="{% if scan.is_past_due %}bg-success{% endif %}{% if scan.is_future %} bg-info{% endif %}{% if scan.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-retweet"></span></td>
<td><a href="{{ scan.get_absolute_url_logbook_start }}">{{ scan.start }}</a></td>
<td><a href="{{ scan.get_absolute_url_logbook_stop }}">{{ scan.stop }}</a></td>
<td>{{ scan.experiment }}</td><td>{{ scan.target }}</td><td>template {{ scan.template }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if datadumps and user.is_authenticated %}
<thead>
<tr><th scope="col" colspan="4">Data dumps</th></tr>
</thead>
<tbody>
{% for dd in datadumps %}
<tr>
<td><span class="glyphicon glyphicon-save"></span></td>
<td>{{ dd.start|date:"d M Y H:i:s" }}</td>
<td>{{ dd.stop|date:"d M Y H:i:s" }}</td><td>{{ dd.tstart }} {{ dd.tstop }}</td>
<td>{{ dd.name }}</td><td>{{ dd.filename }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
</table>
{% if scanpaths %}
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "GAL",
survey: "P/DSS2/color",
fov: 197, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
aladin.createImageSurvey("DIRBE_4","DIRBE_4", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/DIRBE_4",'galactic',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
aladin.getBaseImageLayer().getColorMap().update('rainbow');
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("DIRBE_4");
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var cat1 = A.catalog({shape: 'circle', name: 'Scan Path', color: 'white', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
{% if scanpaths %}
var overlay = A.graphicOverlay({color: '#ee2345', lineWidth: 1});
aladin.addOverlay(overlay);
{% for path in scanpaths %}
{% with next_element=scanpaths|next:forloop.counter0 %}
{% with previous_element=scanpaths|previous:forloop.counter0 %}
cat1.addSources(A.source({{ path.ra|safe }}, {{ path.dec|safe }},
{obsid: '{{ path.scan.experiment }}',
eroday: '{{ path.eroday }}',
RA: '{{ path.ra }}',Dec: '{{ path.dec }}', Roll: '{{ path.roll }}',}));
{% if next_element %}
overlay.add(A.polyline([ [{{ path.ra|safe }}, {{ path.dec|safe }}], [{{ next_element.ra|safe }}, {{ next_element.dec|safe }}], ]));
{% endif %}
{% endwith %}
{% endwith %}
{% endfor %}
{% endif %}
aladin.addCatalog(cat1);
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
<div class="alert alert-info">
Note that the attitude information of the original flight plan has time resolution of 1 second. To reduce internet bandwidth consumption not all points of the scanning pattern are shown. The full scanning pattern is available for download after authorization.
</div>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,196 @@
{% extends "monthplan/base.html" %}
{% load monthplan_templates %}
{% block content %}
<div class="row">
<div class="col-sm-9">
<div class="card">
<div class="card-body">
{% if surveypaths %}
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "GAL",
survey: "P/DSS2/color",
fov: 197, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
aladin.createImageSurvey("DIRBE_4","DIRBE_4", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/DIRBE_4",'galactic',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
aladin.getBaseImageLayer().getColorMap().update('rainbow');
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("DIRBE_4");
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var cat1 = A.catalog({shape: 'circle', name: 'Survey Path', color: 'white', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
{% if surveypaths %}
var overlay = A.graphicOverlay({color: '#ee2345', lineWidth: 1});
aladin.addOverlay(overlay);
{% for path in surveypaths %}
{% with next_element=surveypaths|next:forloop.counter0 %}
{% with previous_element=surveypaths|previous:forloop.counter0 %}
cat1.addSources(A.source({{ path.ra|safe }}, {{ path.dec|safe }},
{obsid: '{{ path.survey.experiment }}',
eroday: '{{ path.eroday|floatformat:3 }}',
RA: '{{ path.ra|floatformat:3 }}',Dec: '{{ path.dec|floatformat:3 }}', Roll: '{{ path.roll|floatformat:3 }}',}));
{% if next_element %}
overlay.add(A.polyline([ [{{ path.ra|safe }}, {{ path.dec|safe }}], [{{ next_element.ra|safe }}, {{ next_element.dec|safe }}], ]));
{% endif %}
{% endwith %}
{% endwith %}
{% endfor %}
{% endif %}
aladin.addCatalog(cat1);
{% if plates %}
var cat2 = A.catalog({shape: 'circle', name: 'Healpix Plates', color: 'green', sourceSize: 10, displayLabel: false,onClick: 'showPopup'});
{% for plate in plates %}
cat2.addSources(A.source({{ plate.ra|safe }}, {{ plate.dec|safe }},
{RA: '{{ plate.ra|floatformat:3 }}',Dec: '{{ plate.dec|floatformat:3 }}', Healpix: '{{ plate.healpix }}',}));
overlay.add(A.circle({{ plate.ra|safe }}, {{ plate.dec|safe }}, 1.8323, {color: 'green'}));
{% endfor %}
aladin.addCatalog(cat2);
{% endif %}
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/bound_radec.csv.xml',
{name: 'boundary', sourceSize:10, color: 'red', shape: 'cross' }));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
{% endif %}
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
{% if survey %}
<ul>
<li><a href="{{ survey.get_absolute_url_logbook_start }}">{{ survey.start|date:"d M Y H:i:s" }}</a></li>
<li><a href="{{ survey.get_absolute_url_logbook_stop }}">{{ survey.stop|date:"d M Y H:i:s" }}</a></li>
<li><a href="{{ survey.get_absolute_url }}">{{ survey.experiment }}</a></li>
{% if survey.target %}<li>{{ survey.target }}</li>{% endif %}
</ul>
{% endif %}
<!--
{% if plates %}
<ul>
{% for plate in plates %}
<li>Plate {{ plate.healpix }}, {{ plate.ra|floatformat:3 }}, {{ plate.dec|floatformat:3 }}</li>
{% endfor %}
</ul>
{% endif %}
-->
</div>
</div>
</div>
</div>
{% if flightplans and user.is_authenticated %}
<table class="table table-hover">
<thead>
<tr><th scope="col" colspan="4">Flight program</th></tr>
</thead>
<tbody>
{% for obs in flightplans %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td>
{% if obs.valid %}
<span class="glyphicon glyphicon-ok"></span>
{% else %}
<span class="glyphicon glyphicon-remove"></span>
{% endif %}
</td>
<td>{{ obs.start|date:"d M Y H:i:s"}}</td>
<td>{{ obs.stop|date:"d M Y H:i:s"}}</td>
<td><a href="{{ obs.get_absolute_url }}">{{ obs.experiment }}</a></td>
<td>RA: {{ obs.ra|floatformat:4 }}</td>
<td>Dec: {{ obs.dec|floatformat:4 }}</td>
<td>Loaded: {{ obs.load_stamp|date:"d M Y" }}</td>
</tr>
<tr>
<td>MJD</td>
<td>{{ obs.mjd_start|floatformat:6}}</td>
<td>{{ obs.mjd_stop|floatformat:6}}</td>
<td>Q1: {{ obs.q1 }}</td>
<td>Q2: {{ obs.q2 }}</td>
<td>Q3: {{ obs.q3 }}</td>
<td>Q4: {{ obs.q4 }}</td>
</tr>
<tr>
<td>OBT</td>
<td>{{ obs.obt_start|floatformat:4}}</td>
<td>{{ obs.obt_stop|floatformat:4}}</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
<table class="table table-hover">
{% if datadumps %}
<thead>
<tr><th scope="col" colspan="4">Сбросы данных</th></tr>
</thead>
<tbody>
{% for dd in datadumps %}
<tr>
<td><span class="glyphicon glyphicon-save"></span></td>
<td>{{ dd.start|date:"d M Y H:i:s" }}</td>
<td>{{ dd.stop|date:"d M Y H:i:s" }}</td><td>{{ dd.tstart }} {{ dd.tstop }}</td>
<td>{{ dd.name }}</td><td>{{ dd.filename }}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
</table>
{% endblock %}

View File

@@ -0,0 +1,154 @@
{% extends "monthplan/base.html" %}
{% load monthplan_templates %}
{% block header %}{% endblock %}
{% block target %}{% endblock %}
{% block content %}
<div id="animation"></div>
<div class="row">
<div class="col-sm-9">
<div class="card">
<div class="card-body">
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "GAL",
survey: "P/DSS2/color",
fov: 2, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
aladin.createImageSurvey("CDS/P/PanSTARRS/DR1/color-z-zg-g","CDS/P/PanSTARRS/DR1/color-z-zg-g", "http://alasky.u-strasbg.fr/Pan-STARRS/DR1/color-z-zg-g",'equatorial',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
aladin.getBaseImageLayer().getColorMap().update('rainbow');
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("CDS/P/PanSTARRS/DR1/color-z-zg-g");
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<p><div id="tracking"></div></p>
<h3>Caption:</h3>
<p>The circle is one degree in diameter, representing eRosita field of view. Lines show track of the current survey block. Note that the default sky image layer of the <a href="https://panstarrs.stsci.edu/">Pan-STARRS DR1 <span class="glyphicon glyphicon-new-window"></span></a> has sky coverage to the North of declination -30 degree. Switch to <a href="http://archive.stsci.edu/dss/index.html">DSS <span class="glyphicon glyphicon-new-window"></span></a>, <a href="https://old.ipac.caltech.edu/2mass/releases/allsky/">2MASS <span class="glyphicon glyphicon-new-window"></span></a> or <a href="http://wise.ssl.berkeley.edu/sky_coverage.html">AllWISE <span class="glyphicon glyphicon-new-window"></span></a> using radio buttons below to load full sky coverage.</p>
<h3>Select sky image:</h3>
<p><input id="DSS" type="radio" name="survey" value="P/DSS2/color"> <label for="DSS">DSS color<label></p>
<p><input id="DSS-blue" type="radio" name="survey" value="P/DSS2/blue"> <label for="DSS-blue">DSS blue<label></p>
<p><input id="2MASS" type="radio" name="survey" value="P/2MASS/color"> <label for="2MASS">2MASS<label></p>
<p><input id="allwise" type="radio" name="survey" value="P/allWISE/color"> <label for="allwise">AllWISE<label></p>
</div>
</div>
</div>
</div>
{% endblock %}
{% block javascript %}
<script>
$(document).ready(function(){
var initial_obsid = ''
var request_path='skip';
var arr=[];
ajaxWhereNowTracking();
setInterval(ajaxWhereNowTracking, 1000);
function ajaxWhereNowTracking() {
$.ajax({
data: {
'request_path': request_path,
},
url: '/monthplan/wherenow',
dataType: 'json',
success: function (data) {
if (initial_obsid == ''){
initial_obsid = data.obsid;
request_path='load';
console.log('Set initial_obsid to '+initial_obsid);
} else if (initial_obsid != '' & initial_obsid != data.obsid) {
request_path='load';
console.log(initial_obsid+' != '+data.obsid+' -- REQUEST PATH')
} else {
request_path='skip';
console.log(initial_obsid+' == '+data.obsid+' -- do nothing')
}
aladin.gotoRaDec(data.ra, data.dec)
$('#tracking').html("Tracking "+data.mode+": <b>"+data.target+"</b><br> RA="+data.ra+", Dec="+data.dec+
",<br> ObsID: <a href="+data.url+">"+data.obsid+"</a>,<br>"+data.time);
aladin.removeLayers()
var overlay = A.graphicOverlay({color: '#ee2345', lineWidth: 1});
aladin.addOverlay(overlay);
if (typeof arr !== 'undefined') {
overlay.add(A.polyline(arr))
}
overlay.add(A.circle(parseFloat(data.ra), parseFloat(data.dec), 0.5, {color: 'cyan'}));
if(data.path.length > 0){
arr=[]
for (i = 0; i < data.path.length; i++) {arr.push([data.path[i].ra, data.path[i].dec]);}
}
$('input[name=survey]').change(function() {
aladin.setImageSurvey($(this).val());
});
}
});
}
});
</script>
{% endblock %}

View File

@@ -0,0 +1,94 @@
{% extends "monthplan/base.html" %}
{% block header %}{% endblock %}
{% block content %}
<!--a href="/monthplan/observations">All observations</a> | <a href="/monthplan/scans">All scans</a> | <a href="/monthplan/surveys">All surveys</a-->
<table class="table table-hover">
{% if observation %}
<thead>
<tr><th scope="col" colspan="4">All observations</th></tr>
</thead>
<tbody>
<tr class="{% if observation.is_past_due %}bg-success{% endif %}{% if observation.is_future %} bg-info{% endif %}{% if observation.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-screenshot"></span></td>
<td><a href="{{ observation.get_absolute_url_logbook_start }}">{{ observation.start|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ observation.get_absolute_url_logbook_stop }}">{{ observation.stop|date:"d M Y H:i:s" }}</a></td>
<td><a href="{{ observation.get_absolute_url }}">{{ observation.experiment }}</a></td><td>{{ observation.ra|floatformat:4 }}</td><td>{{ observation.dec|floatformat:4 }}</td><td>{{ observation.target }}</td>
</tr>
</tbody>
{% endif %}
</table>
<table class="table table-hover">
{% if observations %}
<thead>
<tr><th scope="col" colspan="4">All observations</th></tr>
</thead>
<tbody>
{% for obs in observations %}
<tr class="{% if obs.is_past_due %}bg-success{% endif %}{% if obs.is_future %} bg-info{% endif %}{% if obs.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-screenshot"></span></td>
<td>{{ obs.start|date:"d M Y H:i" }}</td>
<td>{{ obs.stop|date:"d M Y H:i" }}</td>
<td><a href="{{ obs.get_absolute_url }}">{{ obs.experiment }}</td>
<!--td>{{ obs.ra|floatformat:4 }}</td>
<td>{{ obs.dec|floatformat:4 }}</td-->
<td>{{ obs.target }}</td>
<td>{% if user.is_authenticated %}<a href="{{ obs.head.get_absolute_url }}">{{ obs.head.get_datetime_middle|date:"F Y" }}</a>{% endif %}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if scans %}
<thead>
<tr><th scope="col" colspan="4">All scans</th></tr>
</thead>
<tbody>
{% for scan in scans %}
<tr class="{% if scan.is_past_due %}bg-success{% endif %}{% if scan.is_future %} bg-info{% endif %}{% if scan.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-retweet"></span></td>
<td>{{ scan.start|date:"d M Y H:i" }}</td>
<td>{{ scan.stop|date:"d M Y H:i" }}</td>
<td><a href="{{ scan.get_absolute_url }}">{{ scan.experiment }}</a></td><td>{{ scan.target }} {% if scan.template %}(T{{ scan.template }}){% endif %}</td><td></td>
<td>{% if user.is_authenticated %}<a href="{{ scan.head.get_absolute_url }}">{{ scan.head.get_datetime_middle|date:"F Y" }}</a>{% endif %}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if surveys %}
<thead>
<tr>
<th scope="col"></th>
<th scope="col">Start</th>
<th scope="col">Stop</th>
<th scope="col">ObsID</th>
<th scope="col">Z Speed</th>
<th scope="col">Plan</th>
</tr>
</thead>
<tbody>
{% for survey in surveys %}
<tr class="{% if survey.is_past_due %}bg-success{% endif %}{% if survey.is_future %} bg-info{% endif %}{% if survey.is_current %} bg-danger{% endif %}">
<td><span class="glyphicon glyphicon-repeat"></span></td>
<td>{{ survey.start|date:"d M Y H:i" }}</td>
<td>{{ survey.stop|date:"d M Y H:i" }}</td>
<td><a href="{{ survey.get_absolute_url }}">{{ survey.experiment }}</a></td>
<td>{{ survey.z_speed|floatformat:2 }}</td>
<td>{% if user.is_authenticated %}<a href="{{ survey.head.get_absolute_url }}">{{ survey.head.get_datetime_middle|date:"F Y" }}</a>{% endif %}</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
</table>
{% endblock %}

View File

@@ -0,0 +1,172 @@
{% extends "monthplan/base.html" %}
{% load monthplan_templates %}
{% block header %}{% endblock %}
{% block target %}{% endblock %}
{% block content %}
<div id="animation"></div>
<div class="row">
<div class="col-sm-9">
<div class="card">
<div class="card-body">
<!-- insert this snippet where you want Aladin Lite viewer to appear and after the loading of jQuery -->
<div id="aladin-lite-div" style="width:800px;height:800px;align=center"></div>
<!--input id="allwise" type="radio" name="survey" value="P/allWISE/color"><label for="allwise">AllWISE<label-->
<script type="text/javascript" src="//aladin.u-strasbg.fr/AladinLite/api/v2/latest/aladin.min.js" charset="utf-8"></script>
<script type="text/javascript">
/* survey: "P/DSS2/color", */
var aladin = A.aladin('#aladin-lite-div', {
cooFrame: "J2000",
survey: "P/DSS2/color",
fov: 2, target: "0. 0.",
showShareControl: true,
showCooGrid: false});
/*
see http://aladin.u-strasbg.fr/hips/list for more
*/
//aladin.createImageSurvey("CDS/P/PanSTARRS/DR1/color-z-zg-g","CDS/P/PanSTARRS/DR1/color-z-zg-g", "http://alasky.u-strasbg.fr/Pan-STARRS/DR1/color-z-zg-g",'equatorial',8, {imgFormat: 'jpg'});
/* aladin.createImageSurvey("XMMrgb","XMMrgb", "http://skies.esac.esa.int/XMM-Newton/EPIC-RGB",'equatorial',8, {imgFormat: 'jpg'}) */
//aladin.getBaseImageLayer().getColorMap().update('rainbow');
/*
aladin.createImageSurvey("RASS-soft", "RASS-soft", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/RASS_IM3", 'galactic', 12, {imgFormat: 'jpg'})
aladin.setImageSurvey(aladin.createImageSurvey("RASS", "RASS", "http://alasky.u-strasbg.fr/RASS", 'equatorial', 12, {imgFormat: 'jpg'}));
aladin.getBaseImageLayer().getColorMap().update('cubehelix');
aladin.getBaseImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey(aladin.createImageSurvey("LAB-NH", "LAB-NH", "http://cade.irap.omp.eu/documents/Ancillary/4Aladin/LAB_NH", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.setOverlayImageLayer(aladin.createImageSurvey("Planck-HFI", "Planck-HFI", "http://alasky.u-strasbg.fr/PLANCK/R2/HFI_Color_353_545_857", 'galactic', 12, {imgFormat: 'jpg'}));
aladin.getOverlayImageLayer().setAlpha(0.35);
aladin.getOverlayImageLayer().getColorMap().reverse('true');
aladin.setImageSurvey("CDS/P/PanSTARRS/DR1/color-z-zg-g");
*/
aladin.setOverlayImageLayer("");
aladin.addCatalog(A.catalogFromURL('http://193.232.10.38/static/aladin/pvlabs.vot',
{name: 'Labels', sourceSize:5, color: 'red', shape: 'circle',
raField: "col3", decField: "col4",
displayLabel: true,labelColumn: "col8", labelColor: "red", labelFont: "12px sans-serif",
onClick: 'showPopup'}));
var simbadhips = A.catalogHiPS('http://axel.u-strasbg.fr/HiPSCatService/Simbad', {color: "#2F4F4F", onClick: 'showPopup', name: 'Simbad'}, null, true);
aladin.addCatalog(simbadhips);
simbadhips.hide();
</script>
</div>
</div>
</div>
<div class="col-sm-3">
<div class="card">
<div class="card-body">
<div class="alert alert-warning" role="alert" id="tracking_mode" style="text-align:center;"></div>
<p><div class="alert alert-info" role="alert" id="tracking"></div></p>
<h3>Caption:</h3>
<p>The circle is one degree in diameter, representing eRosita field of view. Lines show track of the current survey or scan block.</p>
<p>Switch to <a href="http://archive.stsci.edu/dss/index.html">DSS <span class="glyphicon glyphicon-new-window"></span></a>, <a href="https://old.ipac.caltech.edu/2mass/releases/allsky/">2MASS <span class="glyphicon glyphicon-new-window"></span></a>, <a href="http://wise.ssl.berkeley.edu/sky_coverage.html">AllWISE <span class="glyphicon glyphicon-new-window"></span></a> or <a href="https://panstarrs.stsci.edu/">Pan-STARRS DR1 <span class="glyphicon glyphicon-new-window"></span></a> sky surveys usig radio buttons below:</p>
<h3>Select sky image:</h3>
<p><input id="DSS" type="radio" name="survey" value="P/DSS2/color"> <label for="DSS">DSS color<label></p>
<!--p><input id="DSS-blue" type="radio" name="survey" value="P/DSS2/blue"> <label for="DSS-blue">DSS blue<label></p-->
<p><input id="2MASS" type="radio" name="survey" value="P/2MASS/color"> <label for="2MASS">2MASS<label></p>
<p><input id="allwise" type="radio" name="survey" value="P/allWISE/color"> <label for="allwise">AllWISE<label></p>
<p><input id="panstarrs" type="radio" name="survey" value="P/PanSTARRS/DR1/color-z-zg-g"> <label for="allwise">PanSTARRS<label></p>
</div>
</div>
</div>
</div>
{% endblock %}
{% block javascript %}
<script>
$(document).ready(function(){
var initial_obsid = ''
var request_path='skip';
var arr=[];
ajaxWhereNowTracking();
setInterval(ajaxWhereNowTracking, 2000);
function ajaxWhereNowTracking() {
$.ajax({
data: {
'request_path': request_path,
},
url: '/monthplan/wherenow',
dataType: 'json',
success: function (data) {
if(data.target == 'None'){
$('#tracking').html('<div class="alert alert-success"><b>SRG:</b> Slewing</div>')
//console.log("Slewing");
return;
}
if (initial_obsid == ''){
initial_obsid = data.obsid;
request_path='load';
//console.log('Set initial_obsid to '+initial_obsid);
} else if (initial_obsid != '' & initial_obsid != data.obsid) {
request_path='load';
//console.log(initial_obsid+' != '+data.obsid+' -- REQUEST PATH')
} else {
request_path='skip';
//console.log(initial_obsid+' == '+data.obsid+' -- do nothing')
}
aladin.gotoRaDec(data.ra, data.dec)
$('#tracking_mode').html('<h4 class="alert-heading">'+data.mode+'</h4>');
$('#tracking').html("<b>"+data.target+"</b><br> RA="+data.ra+", Dec="+data.dec+
",<br> ObsID: <a href="+data.url+">"+data.obsid+"</a>,<br>"+data.time);
aladin.removeLayers()
var overlay = A.graphicOverlay({color: '#ee2345', lineWidth: 1});
aladin.addOverlay(overlay);
if (typeof arr !== 'undefined') {
overlay.add(A.polyline(arr))
}
overlay.add(A.circle(parseFloat(data.ra), parseFloat(data.dec), 0.5, {color: 'cyan'}));
/* Coma
overlay.add(A.circle(194.953054, 27.980694, 0.783333, {color: 'white'}));
overlay.add(A.circle(194.953054, 27.980694, 1.56667, {color: 'white'}));
// 47 94
*/
if(data.path.length > 0){
arr=[]
for (i = 0; i < data.path.length; i++) {arr.push([data.path[i].ra, data.path[i].dec]);}
}
$('input[name=survey]').change(function() {
aladin.setImageSurvey($(this).val());
});
}
});
}
});
</script>
{% endblock %}

View File

@@ -0,0 +1,9 @@
<h2>SRG-ArXiv: New SRG flight plan for Survey {{ survey }} is loaded</h2>
<p>Covered time period: {{ survey.start|date:"d M Y H:i" }} -- {{ survey.stop|date:"d M Y H:i" }}</p>
<p>Show spacecraft orientation <a href="http://arxiv.srg.rssi.ru/{{ survey.get_absolute_url }}">here</a>.</p>
<p>This message is intended for the use of the addressee or addressees only. The unauthorised disclosure, use, dissemination or copying (either in whole or in part) of its content is not permitted. If you received this message in error, please notify the sender and delete it from your system.</p>
<p>This is an automatic email, please do not reply. If you do not want to receive this kind of notifications, please drop a message to Roman Krivonos (krivonos@cosmos.ru).</p>

Some files were not shown because too many files have changed in this diff Show More