diff options
Diffstat (limited to 'cgi-bin/launch.py')
-rwxr-xr-x | cgi-bin/launch.py | 45 |
1 files changed, 18 insertions, 27 deletions
diff --git a/cgi-bin/launch.py b/cgi-bin/launch.py index f0c8ef7..05e7a8b 100755 --- a/cgi-bin/launch.py +++ b/cgi-bin/launch.py @@ -1,40 +1,31 @@ #!/usr/bin/python -temp = open('/tmp/logx','w') -print >> temp,'launch entered' -temp.close() - import sys import cgi, cgitb import subprocess from sugar.activity import activity +from activities import copyFile sys.stderr = sys.stdout cgitb.enable(display=True) print 'Content-Type:text/html\n\n' log = open('/tmp/logl','w') -try: - print >>log,'launch log opened' - bundle_dir = activity.get_bundle_path() - bundle_dir = activity.get_bundle_path() - form = cgi.FieldStorage() - activity = form.getfirst('activity', default='') - print >> log, 'activity', len(activity), activity - if len(activity)>0: - bundle = form.getfirst('bundle', default='') - bundle_pth = bundle_dir + '/' + bundle - print >>log,'launch', activity, bundle_dir, bundle, bundle_pth - fout = open('/tmp/'+activity,'w') - fout.write(bundle_pth) - fout.close() - try: - subprocess.call('sugar-launch '+activity,shell=True) - except: - print >> log, 'sugar launch failed',sys.exc_info()[:2] - else: - print >> log, 'no activity' - print >>log,'sugar activity launched', activity -except: - print >>log, 'launch.py failed', sys.exc_info()[:2] +print >>log,'launch log opened' +bundle_dir = activity.get_bundle_path() +form = cgi.FieldStorage() +activity = form.getfirst('activity', default='') +print >> log, 'activity', len(activity), activity +if len(activity)>0: + bundle = form.getfirst('bundle', default='') + bundle_pth = bundle_dir + '/' + bundle + #perform actions based on which activity + if activity == 'Wordsearch': + copyFile(bundle_pth,'/home/olpc/Activities/Wordsearch.activity/wordlist/sample.txt') + service_name = 'ch.tea.Wordsearch' + print >>log,'launch', activity, bundle + subprocess.call('sugar-launch '+service_name,shell=True) + print >>log,'sugar-launch' +else: + print >> log, 'no activity' log.close() |