diff --git a/gracedb/models.py b/gracedb/models.py index ce0e373dad1b0bc733cf3bacde5e97fdb9f01683..e1806628a00c5123095bd4266403d0fb86b417d8 100644 --- a/gracedb/models.py +++ b/gracedb/models.py @@ -127,8 +127,9 @@ class Event(models.Model): def weburl(self): # XXX Not good. But then, it never was. - return "https://gracedb.ligo.org/gracedb-files/%s" % self.graceid() - return "https://ldas-jobs.phys.uwm.edu/gracedb/data/%s" % self.graceid() + #return "https://ldas-jobs.phys.uwm.edu/gracedb/data/%s" % self.graceid() + #return "https://gracedb.ligo.org/gracedb-files/%s" % self.graceid() + return reverse('file_list', args=[self.graceid()]) # XXX This should be considered deprecated. (Branson, July 22, 2014.) def clusterurl(self): diff --git a/gracedb/urls.py b/gracedb/urls.py index e2856b4f09a1a3a0274186efb44926fcfe23d366..a77fc45a38480ec1096b906661b0795d73e2438b 100644 --- a/gracedb/urls.py +++ b/gracedb/urls.py @@ -16,6 +16,7 @@ urlpatterns = patterns('gracedb.views', url (r'^skyalert/(?P<graceid>[GEHT]\d+)', 'skyalert', name="skyalert"), url (r'^neighbors/(?P<graceid>[GEHT]\d+)/\(?(?P<delta1>[-+]?\d+)(,(?P<delta2>[-+]?\d+)\)?)?', 'neighbors', name="neighbors"), url (r'^(?P<graceid>[GEHT]\d+)$', 'view', name="view2"), + url (r'^(?P<graceid>[GEHT]\d+)/files/$', 'file_list', name="file_list"), url (r'^(?P<graceid>[GEHT]\d+)/files/(?P<filename>.*)$', download, name="file"), url (r'^(?P<graceid>[GEHT]\d+)/log/(?P<num>([\d]*|preview))$', 'logentry', name="logentry"), url (r'^(?P<graceid>[GEHT]\d+)/log/(?P<num>\d+)/tag/(?P<tagname>\w+)$', 'taglogentry', name="taglogentry"), diff --git a/gracedb/views.py b/gracedb/views.py index 47b89246332e1d19f11865f6b8be59d01a553a97..d09f38266cbbe88e3bf49f17d4c819c6b459ffb4 100644 --- a/gracedb/views.py +++ b/gracedb/views.py @@ -1317,4 +1317,27 @@ def performance(request): 'gracedb/performance.html', context, context_instance=RequestContext(request)) - + +# A view for the list of files associated with an event. +# We're deliberately leaving out the /general directory. +# The idea is to get rid of that horrible /gracedb-files/ url. +def file_list(request, graceid): + try: + event = Event.getByGraceid(graceid) + except Event.DoesNotExist: + return HttpResponseNotFound("Event not found") + + f = [] + for dirname, dirnames, filenames in os.walk(event.datadir()): + f.extend(filenames) + break + + context = {} + context['file_list'] = f + context['title'] = 'Files for %s' % graceid + context['graceid'] = graceid + + return render_to_response( + 'gracedb/event_filelist.html', + context, + context_instance=RequestContext(request)) diff --git a/settings/branson.py b/settings/branson.py index becc8c740b9ee0c64c26f6aba0a049b78ec70a60..f8701a8ca32ff856b0b84d24cdd268e42b3c3c4f 100644 --- a/settings/branson.py +++ b/settings/branson.py @@ -15,7 +15,8 @@ DATABASES = { } } -MEDIA_URL = "/branson-static/" +#MEDIA_URL = "/branson-static/" +STATIC_URL = "/branson-static/" STATIC_ROOT = "/home/branson/gracedbdev/static/" GRACEDB_DATA_DIR = "/home/branson/fake_data" diff --git a/settings/default.py b/settings/default.py index 1a360f8d49dd3b94aa5279099a331fb89ea5fca7..4df202d5c832783bb1485d8b8082117f8c25e65d 100644 --- a/settings/default.py +++ b/settings/default.py @@ -137,12 +137,12 @@ USE_I18N = False # Absolute path to the directory that holds media. # Example: "/home/media/media.lawrence.com/" -MEDIA_ROOT = '' +#MEDIA_ROOT = '' # URL that handles the media served from MEDIA_ROOT. Make sure to use a # trailing slash if there is a path component (optional in other cases). # Examples: "http://media.lawrence.com", "http://example.com/media/" -MEDIA_URL = '/gracedb-static/' +#MEDIA_URL = '/gracedb-static/' # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a # trailing slash. @@ -240,6 +240,7 @@ REST_FRAMEWORK = { STATIC_URL = "/gracedb-static/" +STATIC_ROOT = "/home/gracedb/graceproj/static/" STATICFILES_FINDERS = ( 'django.contrib.staticfiles.finders.FileSystemFinder', diff --git a/templates/admin/base_site.html b/templates/admin/base_site.html index f0d4df872c765c580427a98858b568eae7d95557..c9894d6f2b7704cd0bf9b69250582ad8b406d9d9 100644 --- a/templates/admin/base_site.html +++ b/templates/admin/base_site.html @@ -2,7 +2,7 @@ {% load i18n %} {% block extrastyle %} - <link rel="stylesheet" href="{{MEDIA_URL}}css/admin-nav.css" /> + <link rel="stylesheet" href="{{STATIC_URL}}css/admin-nav.css" /> {% endblock %} diff --git a/templates/base.html b/templates/base.html index 9333e798e675c4f052e7df0abc1ad25cced95b8c..046c2273d1c7154473fc13d7360efe3d82d32427 100644 --- a/templates/base.html +++ b/templates/base.html @@ -2,7 +2,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> - <link rel="stylesheet" href="{{MEDIA_URL}}css/style.css" /> + <link rel="stylesheet" href="{{STATIC_URL}}css/style.css" /> <title>GraceDb | {% block title %}{% endblock %}</title> <!-- START TESTING --> <script type="text/javascript"> @@ -68,28 +68,28 @@ function changeTime(obj, label) { <table align="center" width="90%%"> <tr> <td align="center"> - <img width="52" height="36" src="{{MEDIA_URL}}images/ligo-blue.gif"> + <img width="52" height="36" src="{{STATIC_URL}}images/ligo-blue.gif"> <!-- 673px 487px --> </td> <td align="center"> - <img width="164" height="30" src="{{MEDIA_URL}}images/Virgo_logo50.png"> + <img width="164" height="30" src="{{STATIC_URL}}images/Virgo_logo50.png"> <!-- 4,829px 884px --> </td> <td align="center"> {% if user and user.username == "chad.hanna@LIGO.ORG" %} - <img width="194" height="37" src="{{MEDIA_URL}}images/PI_Logo-anim.gif"> + <img width="194" height="37" src="{{STATIC_URL}}images/PI_Logo-anim.gif"> {% else %}{% if user and user.username == "kipp.cannon@LIGO.ORG" %} - <img width="194" height="37" src="{{MEDIA_URL}}images/CITA_logo-anim.gif"> + <img width="194" height="37" src="{{STATIC_URL}}images/CITA_logo-anim.gif"> {% else %} - <img width="107" height="37" src="{{MEDIA_URL}}images/anim2.gif"> + <img width="107" height="37" src="{{STATIC_URL}}images/anim2.gif"> {% endif %}{% endif %} <!-- 287px 101px --> </td> <td align="center"> - <img width="87" height="37" src="{{MEDIA_URL}}images/LSC_logo50.png"> + <img width="87" height="37" src="{{STATIC_URL}}images/LSC_logo50.png"> <!-- 6,261px 2,652px --> </td> </tr> diff --git a/templates/gracedb/event_detail.html b/templates/gracedb/event_detail.html index 181ee643639bec8f254e5c039bdc9538e2c67f41..5ea75b0aa3009ee30a1811a7b9718cc0ecb82569 100644 --- a/templates/gracedb/event_detail.html +++ b/templates/gracedb/event_detail.html @@ -13,8 +13,8 @@ src="https://c328740.ssl.cf1.rackcdn.com/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"> </script> <script src="http{% if request.is_secure %}s{% endif %}://ajax.googleapis.com/ajax/libs/dojo/1.8.1/dojo/dojo.js" type="text/javascript"></script> - <script src="{{MEDIA_URL}}js/labeltips.js" type="text/javascript"></script> - <link rel="stylesheet" href="{{MEDIA_URL}}css/labeltips.css"> + <script src="{{STATIC_URL}}js/labeltips.js" type="text/javascript"></script> + <link rel="stylesheet" href="{{STATIC_URL}}css/labeltips.css"> <style> .emptyIcon{ background-image: none; diff --git a/templates/gracedb/event_filelist.html b/templates/gracedb/event_filelist.html new file mode 100644 index 0000000000000000000000000000000000000000..1f413294a77f60a7284c907017b44aa70fe39b20 --- /dev/null +++ b/templates/gracedb/event_filelist.html @@ -0,0 +1,15 @@ +{% extends "base.html" %} +{% block title %}{{ title }}{% endblock %} +{% block heading %}{{ title }}{% endblock %} +{% block pageid %}event files{% endblock %} + +{% block content %} +<p>{{ message }}</p> + +<ul> +{% for filename in file_list %} +<li><a href="{% url "file" graceid filename %}">{{ filename }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/templates/gracedb/event_list.html b/templates/gracedb/event_list.html index d3969efc992347ed156c579ab6d8c2646b29ee89..56f789b9c83d0706d6b8bc17aaf2637a622e5d9e 100644 --- a/templates/gracedb/event_list.html +++ b/templates/gracedb/event_list.html @@ -8,27 +8,27 @@ {% block jscript %} <link rel="stylesheet" type="text/css" media="screen" - href="{{MEDIA_URL}}css/jqgrid/theme/jquery-ui.css"/> + href="{{STATIC_URL}}css/jqgrid/theme/jquery-ui.css"/> <link rel="stylesheet" type="text/css" media="screen" - href="{{MEDIA_URL}}css/jqgrid/theme/ui.all.css"/> + href="{{STATIC_URL}}css/jqgrid/theme/ui.all.css"/> <!-- <link rel="stylesheet" type="text/css" media="screen" - href="{{MEDIA_URL}}css/jqgrid/ui-lightness/jquery-ui-1.7.2.custom.css"/> + href="{{STATIC_URL}}css/jqgrid/ui-lightness/jquery-ui-1.7.2.custom.css"/> --> <link rel="stylesheet" type="text/css" media="screen" - href="{{MEDIA_URL}}css/jqgrid/ui.jqgrid.css"/> + href="{{STATIC_URL}}css/jqgrid/ui.jqgrid.css"/> -<script src="{{MEDIA_URL}}js/jquery-1.3.2.min.js" type="text/javascript"></script> -<script src="{{MEDIA_URL}}js/grid.locale-en.js" type="text/javascript"></script> -<script src="{{MEDIA_URL}}js/jquery.jqGrid.min.js" type="text/javascript"></script> -<script src="{{MEDIA_URL}}js/jquery-ui-1.7.2.custom.min.js" type="text/javascript"></script> +<script src="{{STATIC_URL}}js/jquery-1.3.2.min.js" type="text/javascript"></script> +<script src="{{STATIC_URL}}js/grid.locale-en.js" type="text/javascript"></script> +<script src="{{STATIC_URL}}js/jquery.jqGrid.min.js" type="text/javascript"></script> +<script src="{{STATIC_URL}}js/jquery-ui-1.7.2.custom.min.js" type="text/javascript"></script> -<script src="{{MEDIA_URL}}js/labeltips.js" type="text/javascript"></script> -<link rel="stylesheet" href="{{MEDIA_URL}}css/labeltips.css"> +<script src="{{STATIC_URL}}js/labeltips.js" type="text/javascript"></script> +<link rel="stylesheet" href="{{STATIC_URL}}css/labeltips.css"> <script type="text/javascript"> <!--