X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;ds=sidebyside;f=qcg%2Futils.py;h=44de96fa640c2cf25289093c7c6c88a2f9a72681;hb=50ea4b8539cffc10de1342d696b7b9a184c1a89c;hp=43fac0eb336d352b8727fcc91cc01d7b7ab1e56f;hpb=9f0267486fef6a929c431db5cb76a36e2f93ed54;p=qcg-portal.git diff --git a/qcg/utils.py b/qcg/utils.py index 43fac0e..44de96f 100644 --- a/qcg/utils.py +++ b/qcg/utils.py @@ -1,11 +1,16 @@ # coding=utf-8 + +from functools import wraps + import os import string import random +from django.contrib.auth.decorators import login_required from django.core.paginator import Paginator from django.utils.formats import date_format from django.utils.timezone import localtime +from django.views.decorators.cache import cache_control from pyqcg import QCG from pyqcg.utils import Credential from pyqcg.description import JobDescription @@ -13,10 +18,7 @@ from pyqcg.description import JobDescription from filex.ftp import FTPOperation from qcg import constants - from django.utils import encoding -# for Debugging -from pprint import pprint def get_attributes(obj, attrs): return {name: getattr(obj, name) for name in attrs if getattr(obj, name) is not None} @@ -65,7 +67,7 @@ def generate_md_inputfile(params): opis=params['note'][:80] md_input.append(encoding.smart_str(opis, encoding='ascii', errors='ignore')) # Dane kontrolne obliczen - md_input.append('SEED=-3059743 PDBREFONE_LETTER MD EXTCONF RESCALE_MODE=2') + md_input.append('SEED=-3059743 PDBREF ONE_LETTER MD EXTCONF RESCALE_MODE=2') ctl_data='nstep='+str(params['nstep'])+' ntwe='+str(params['ntwe']) ctl_data+=' ntwx='+str(params['ntwx'])+' dt='+str(params['dt'])+' damax='+str(params['damax'])+'lang=0 tbf' md_input.append('{:<79}&'.format(ctl_data)) @@ -102,7 +104,6 @@ def generate_md_inputfile(params): def to_job_desc(params, proxy): QCG.start() desc = JobDescription(Credential(proxy)) - desc.sequence=None direct_map = ('env_variables', 'executable', 'arguments', 'note', 'grant', 'hosts', 'properties', 'queue', 'procs', 'wall_time', 'memory', 'memory_per_slot', 'modules', 'input', 'stage_in', 'native', 'notify', @@ -135,14 +136,8 @@ def to_job_desc(params, proxy): desc.set_reservation(params['reservation']) if params['watch_output']: desc.set_watch_output(params['watch_output'], params['watch_output_pattern']) - if params['sequence']: - desc.sequence=params['sequence'] # TODO monitoring - - print "Hello from to_job_desc function" - pprint(params) - print desc.sequence return desc @@ -154,7 +149,6 @@ def to_form_data(xml): QCG.start() desc = JobDescription() desc.xml_description = xml - #desc.sequence=None direct_map = ('env_variables', 'executable', 'arguments', 'note', 'grant', 'hosts', 'properties', 'queue', 'procs', 'wall_time', 'memory', 'memory_per_slot', 'modules', 'input', 'stage_in', 'native', 'persistent') @@ -196,7 +190,8 @@ def to_form_data(xml): params['postprocess_type'] = JobDescriptionForm.Process.CMD params['postprocess_cmd'] = desc.postprocess - - print "Hello from to_form_data function" - pprint(params) return params + + +def restricted(view): + return wraps(view)(cache_control(no_cache=True, must_revalidate=True, no_store=True)(login_required(view)))