import os.path
from datetime import *
import re
-from time import time as get_timestamp
+from time import time as get_timestamp, sleep
import logging
import crack
import struct
#request.user.info('Request queued as job %s' % job.id)
if not jobrunner.wakeup_daemon():
return HttpResponseServerError(jobrunner.DAEMON_WAKEUP_ERROR)
- return HttpResponseRedirect('/job/%s/' % job.id)
+ return HttpResponseRedirect('/job/%s/download' % job.id)
else:
value = kml_to_kmz(format_boat_track(nmea_iterator))
response = HttpResponse(value, mimetype="application/vnd.google-earth.kml")
#request.user.info('Request queued as job %s' % job.id)
if not jobrunner.wakeup_daemon():
return HttpResponseServerError(jobrunner.DAEMON_WAKEUP_ERROR)
- return HttpResponseRedirect('/job/%s/' % job.id)
+ return HttpResponseRedirect('/job/%s/download' % job.id)
else:
value = kml_to_kmz(format_boat_intime(nmea_iterator))
response = HttpResponse(value, mimetype="application/vnd.google-earth.kml")
#request.user.info('Request queued as job %s' % job.id)
if not jobrunner.wakeup_daemon():
return HttpResponseServerError(jobrunner.DAEMON_WAKEUP_ERROR)
- return HttpResponseRedirect('/job/%s/' % job.id)
+ return HttpResponseRedirect('/job/%s/download' % job.id)
else:
value = StringIO()
output = csv.writer(value)
job = get_object_or_404(Job, id=jobid)
if job.user != request.user:
return HttpResponseForbidden('403 Forbidden')
+ total_wait = 0
+ while not job.finish_time:
+ sleep(1)
+ total_wait += 1
+ if total_wait > 30:
+ request.user.info('Your query is slow. Please be patient.')
+ return HttpResponseRedirect('/job/%s/' % job.id)
+ job = get_object_or_404(Job, id=jobid)
+
if not job.archive_time:
job.archive_time = datetime.utcnow()
job.save()
+
extension = os.path.splitext(job.friendly_filename)[-1]
return HttpResponseRedirect('/job_result/%s%s/%s' % (job.id, extension, job.friendly_filename))