#!/usr/bin/env python2.7

import vos
from astropy.io import votable
from cStringIO import StringIO

import curses, time
from datetime import datetime
import warnings

c=vos.Client()

DELAY = 8


def get_status():
   f=StringIO(c.open(uri=None,URL='https://www.canfar.phys.uvic.ca/proc/pub').read())

   with warnings.catch_warnings():
      warnings.simplefilter("ignore")
      table=votable.parse(f, invalid='mask').get_first_table().to_table()

   tt = "%s\n\n" % (datetime.now(), ) 
   return tt+str(table)



if __name__=='__main__':
   w = curses.initscr()
   try:
      while True:
         w.erase()
         w.addstr(get_status()+'\n')
         w.refresh()
         elapsed = 0
         while elapsed < DELAY:
            w.addstr("*")
            w.refresh()
            time.sleep(1)
            elapsed += 1
   finally:
      curses.endwin()


