示例#1
0
 def updateReservationList(self):
     import re
     cmdRegex = self.siteConfig.listReservations
     (stdout, stderr) = utilityFunctions.run_command(
         cmdRegex.getCmd(self.jobParams),
         ignore_errors=True,
         callback=lambda: wx.CallAfter(self.failureDialog),
         startupinfo=self.startupinfo,
         creationflags=self.creationflags)
     print "running command %s" % cmdRegex.getCmd(self.jobParams)
     print stdout
     print stderr
     self.reservations = []
     for line in stdout.splitlines():
         for regex in cmdRegex.regex:
             match = re.search(regex, line)
             #match = re.search(regex.format(**self.jobParams).encode('ascii'),line)
             print "didn't find a reservation on that line"
             print
             print
             if (match):
                 r = reservation(match.groupdict()['name'],
                                 match.groupdict()['desc'])
                 self.reservations.append(r)
                 print "found a reservation %s" % line
                 print
                 print
         print "updateReservationList %s" % line
     wx.CallAfter(self.tryEndBusy)
     self.updateReservationsGUI()
 def createReservation(self,resname,startdate,duration):
     print "in create reservation, name is %s"%resname
     if resname=="" or resname==None:
         resname = self.jobParams['username']
     cmdRegex=self.siteConfig.createReservation
     formatdict=self.jobParams.copy()
     res={}
     print formatdict
     try:
         import dateutil
         import dateutil.tz
         sitetz=dateutil.tz.gettz(self.siteConfig.sitetz)
         offset=startdate.utcoffset()
         if offset==None:
             offset=0
         utc = (startdate - startdate.utcoffset()).replace(tzinfo=sitetz)
         startdate=sitetz.fromutc(utc)
         print "converted startdate to correc tz"
         print "startdate is now %s"%startdate
     except Exception as e:
         import traceback
         print "failed to convert tz"
         print traceback.format_exc()
         print e
         pass
     startdatestring=startdate.strftime("%Y-%m-%dT%H:%M:%S")
     print startdate
     print startdatestring
     formatdict.update({"starttime":startdatestring,"duration":duration,"resname":resname})
     (stdout, stderr) = utilityFunctions.run_command(cmdRegex.getCmd(formatdict),ignore_errors=True, callback=lambda: wx.CallAfter(self.failureDialog), startupinfo=self.startupinfo, creationflags=self.creationflags) 
     if stderr!="" and stderr !=None:
         q=Queue.Queue()
         wx.CallAfter(self.showDialog,stderr,q)
         q.get()
     self.updateReservationList()
示例#3
0
 def deleteReservation(self, reservation):
     cmdRegex = self.siteConfig.deleteReservation
     params = self.jobParams.copy()
     params['resname'] = reservation.name
     (stdout, stderr) = utilityFunctions.run_command(
         cmdRegex.getCmd(params),
         ignore_errors=True,
         callback=lambda: wx.CallAfter(self.failureDialog),
         startupinfo=self.startupinfo,
         creationflags=self.creationflags)
     self.updateReservationList()
示例#4
0
 def createReservation(self, resname, startdate, duration):
     print "in create reservation, name is %s" % resname
     if resname == "" or resname == None:
         resname = self.jobParams['username']
     cmdRegex = self.siteConfig.createReservation
     formatdict = self.jobParams.copy()
     res = {}
     print formatdict
     try:
         import dateutil
         import dateutil.tz
         sitetz = dateutil.tz.gettz(self.siteConfig.sitetz)
         offset = startdate.utcoffset()
         if offset == None:
             offset = 0
         utc = (startdate - startdate.utcoffset()).replace(tzinfo=sitetz)
         startdate = sitetz.fromutc(utc)
         print "converted startdate to correc tz"
         print "startdate is now %s" % startdate
     except Exception as e:
         import traceback
         print "failed to convert tz"
         print traceback.format_exc()
         print e
         pass
     startdatestring = startdate.strftime("%Y-%m-%dT%H:%M:%S")
     print startdate
     print startdatestring
     formatdict.update({
         "starttime": startdatestring,
         "duration": duration,
         "resname": resname
     })
     (stdout, stderr) = utilityFunctions.run_command(
         cmdRegex.getCmd(formatdict),
         ignore_errors=True,
         callback=lambda: wx.CallAfter(self.failureDialog),
         startupinfo=self.startupinfo,
         creationflags=self.creationflags)
     if stderr != "" and stderr != None:
         q = Queue.Queue()
         wx.CallAfter(self.showDialog, stderr, q)
         q.get()
     self.updateReservationList()
 def updateReservationList(self):
     import re
     cmdRegex = self.siteConfig.listReservations
     (stdout, stderr) = utilityFunctions.run_command(cmdRegex.getCmd(self.jobParams),ignore_errors=True, callback=lambda: wx.CallAfter(self.failureDialog), startupinfo=self.startupinfo, creationflags=self.creationflags) 
     print "running command %s"%cmdRegex.getCmd(self.jobParams)
     print stdout
     print stderr
     self.reservations=[]
     for line in stdout.splitlines():
         for regex in cmdRegex.regex:
             match = re.search(regex,line)
             #match = re.search(regex.format(**self.jobParams).encode('ascii'),line)
             print "didn't find a reservation on that line"
             print
             print
             if (match):
                 r=reservation(match.groupdict()['name'],match.groupdict()['desc'])
                 self.reservations.append(r)
                 print "found a reservation %s"%line
                 print 
                 print
         print "updateReservationList %s"%line
     wx.CallAfter(self.tryEndBusy)
     self.updateReservationsGUI()
 def deleteReservation(self,reservation):
     cmdRegex = self.siteConfig.deleteReservation
     params=self.jobParams.copy()
     params['resname']=reservation.name
     (stdout, stderr) = utilityFunctions.run_command(cmdRegex.getCmd(params),ignore_errors=True, callback=lambda: wx.CallAfter(self.failureDialog), startupinfo=self.startupinfo, creationflags=self.creationflags) 
     self.updateReservationList()