#!/usr/bin/env python """NotesGroup util : naddevent : add an dated event to notesgroup from the command line USAGE : ngaddenvent ngalias D/M/Y H:M text ngalias must be present in ~/.ngrc/ngaliases.py Optional arguments : -d x[m|h|d] : event duration : x minutes,hours or days. Default is one hour -a x[m|h|d] : alarm x minutes,hours or days before event example : ngaddevent perso 23/08/2005 8:45 \"Rendez-vous hosto pour Salome\" -d 8h -a 15h """ from string import * import sys import getopt import os.path sys.path.append(os.path.expanduser('~/.ngrc')) import ngprofile import ngaliases from urllib import * class DerivedURLOpener(FancyURLopener): def prompt_user_passwd(self, host, realm): return (ngprofile.user, ngprofile.passwd) url_opener = DerivedURLOpener() if len(sys.argv)<4: print __doc__ sys.exit(2) opts, args = getopt.getopt(sys.argv[5:], 'a:d:') alarm = duration = '' for o, a in opts: if o == '-a': alarm = a if o == '-d': duration = a url_parent_note = ngaliases.__dict__[sys.argv[1]] (day, month, year) = split(sys.argv[2], '/') (hour, minute) = split(sys.argv[3], ':') resume = sys.argv[4] response = url_opener.open( 'http://%s/add_event?year:int=%s&month:int=%s&day:int=%s&hour:int=%s&minute:int=%s&resume=%s&duration=%s&alarm=%s' % \ (url_parent_note, year, month, day, hour, minute, quote_plus(resume), duration, alarm)) if not response.headers.dict.has_key('bobo-exception-type'): print 'done' else: print 'error' sys.exit(2)