def get_docsethtml(cimxml): """ Generate a block of html code to render a CIMDocumentSet view. """ #Find the model(s) in the document set models = find_models(cimxml) #Find the simulationRun(s) in the document set simruns = find_simulationruns(cimxml) #Find the gridspec(s) in the document set gridspecs = find_gridspecs(cimxml) #Find the dataObject(s) in the document set dataobjs = find_dataobjs(cimxml) #Find the platform(s) in the document set platforms = find_platforms(cimxml) #begin html text generation docsethtml=[] for s in simruns: simrunhtml = get_simrunhtml(s) docsethtml += simrunhtml for m in models: modelhtml = get_modelhtml(m) docsethtml += modelhtml for p in platforms: plathtml = get_plathtml(p) docsethtml += plathtml #we want an outer wrapper around the potential of many gridspecs docsethtml.append('<div id="acc_wrapper">') docsethtml.append(' <div id="content">') docsethtml.append(' <div id="container">') docsethtml.append(' <div id="main">') docsethtml.append('<ul class="accordion" id="acc1">') docsethtml.append('<li>') docsethtml.append('<h4 class="acc_docheader">Gridspecs</h4>') docsethtml.append('<div class="inner">') for g in gridspecs: gridhtml = get_gridhtml(g) docsethtml += gridhtml #Complete the outer html code docsethtml.append('</div>') docsethtml.append('</li>') docsethtml.append('</ul>') docsethtml.append('</div>') docsethtml.append('</div>') docsethtml.append('</div>') docsethtml.append('</div>') docsethtml.append('<br/>') #we want an outer wrapper around the potential of many dataObjects docsethtml.append('<div id="acc_wrapper">') docsethtml.append(' <div id="content">') docsethtml.append(' <div id="container">') docsethtml.append(' <div id="main">') docsethtml.append('<ul class="accordion" id="acc1">') docsethtml.append('<li>') docsethtml.append('<h4 class="acc_docheader">Data Files</h4>') docsethtml.append('<div class="inner">') for d in dataobjs: datahtml = get_datahtml(d) docsethtml += datahtml #Complete the outer html code docsethtml.append('</div>') docsethtml.append('</li>') docsethtml.append('</ul>') docsethtml.append('</div>') docsethtml.append('</div>') docsethtml.append('</div>') docsethtml.append('</div>') docsethtml.append('<br/>') return docsethtml
def render(self): """ Renders the view in the relevant format/mode. """ html_block = "".join(get_datahtml(self.cim_xml)) return u'{0}'.format(html_block)