def editfield(request, keyid, objid, fieldid): objid = int(objid) keyid = int(keyid) fieldid = int(fieldid) dt = idfw.idf.dt idf = idfw.idf dtls = idfw.idf.dtls thekey = dtls[keyid] avar = keyid fieldnameindex = 1 # this is not always true objname = dt[dtls[keyid]][objid][fieldnameindex] fieldname = eplus_functions.getobjfieldnames(idf, commdct, thekey)[fieldid] fieldvalue = dt[dtls[keyid]][objid][fieldid] cdct = commdct[keyid][fieldid] cdct = [(key, value) for key, value in cdct.items()] funcs = [eplus_functions.getobjlistOfField, eplus_functions.getchoiceOFField] alist = [] for func in funcs: if not alist: alist = func(idfw, thekey, objid, fieldid) dct = {'avar':value, 'thekey': thekey, 'objname':objname, 'fieldname':fieldname, 'value':fieldvalue, 'cdct':cdct, 'keyid':keyid, 'objid':objid, 'fieldid':fieldid, 'objlist':alist} return render_to_response('viewtemplates/editfield.html', dct, context_instance=RequestContext(request))
def test_getobjfieldnames(): """py.test for getobjfieldnames""" thedata = (("SHADOWCALCULATION", [None, 'Calculation Frequency', 'Maximum Figures in Shadow Overlap Calculations'] ), # objkey, fields ) fname = StringIO("") data, commdct = readidf.readdatacommdct(fname, iddV6_0.theidd, iddV6_0.commdct) for objkey, fields in thedata: result = eplus_functions.getobjfieldnames(data, commdct, objkey) assert result == fields
def anobject(request, keyid, objid): objid = int(objid) keyid = int(keyid) dt = idfw.idf.dt idf = idfw.idf dtls = idfw.idf.dtls thekey = dtls[keyid] commdct = idfw.idd.commdct fieldvalues = dt[dtls[keyid]][objid] fieldnames = eplus_functions.getobjfieldnames(idf, commdct, thekey) index_field_name = enumerate(zip(fieldvalues, fieldnames)[1:]) fields = [(i + 1, f, n) for i, (f, n) in index_field_name] dct = {'thekey': thekey, 'fields': fields, 'keyid': keyid, 'objid':objid} return render_to_response('viewtemplates/anobject.html', dct)