Ignore:
Timestamp:
08/12/15 22:01:05 (6 years ago)
Author:
mjuckes
Message:

misc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CMIP6dreqbuild/trunk/src/framework/dreqPy/dreq.py

    r509 r511  
    1010from __init__ import DOC_DIR 
    1111 
     12jsh='''<link type="text/css" href="/css/jquery-ui-1.8.16.custom.css" rel="Stylesheet" /> 
     13 <script src="/js/2013/jquery.min.js" type="text/javascript"></script> 
     14 <script src="/js/2013/jquery-ui.min.js" type="text/javascript"></script> 
     15 <script src="/js/2013/jquery.cookie.js" type="text/javascript"></script> 
     16''' 
    1217 
    1318blockSchemaFile = '%s/%s' % (DOC_DIR, 'BlockSchema.csv' ) 
     
    1823  ll = [] 
    1924  for l in ii: 
    20     ll.append( [x[1:-1] for x in l.strip().split('\t') ] ) 
     25    ll.append( [x for x in l.strip().split('\t') ] ) 
    2126  cc = collections.defaultdict( dict ) 
     27   
    2228  for l in ll[3:]: 
    2329    if len(l) < len(ll[2]): 
    2430      l.append( '' ) 
    25     for i in range( len(ll[2]) ): 
    26       cc[l[0]][ll[2][i]] = l[i] 
     31    try: 
     32      for i in range( len(ll[2]) ): 
     33        cc[l[0]][ll[2][i]] = l[i] 
     34    except: 
     35      print l 
     36      raise 
    2737  return cc 
    2838 
     
    5565         dictMode = idict != None 
    5666         mdMode = xmlMiniDom != None 
     67         self._htmlTtl = None 
    5768         assert not( dictMode and mdMode), 'Mode must be either dictionary of minidom: both assigned' 
    5869         assert dictMode or mdMode, 'Mode must be either dictionary of minidom: neither assigned' 
     
    93104         """Generate html text for a link to this item.""" 
    94105         igns =  ['','__unset__'] 
    95          if 'description' in self.__dict__ and self.description != None and string.strip( self.description ) not in igns: 
    96            ttl = self.description 
    97          elif 'title' in self.__dict__ and self.title != None and string.strip( self.title ) not in igns: 
    98            ttl = self.title 
    99          else: 
    100            ttl = self.label 
     106         if self._htmlTtl == None: 
     107           if 'description' in self.__dict__ and self.description != None and string.strip( self.description ) not in igns: 
     108             ttl = self.description 
     109           elif 'title' in self.__dict__ and self.title != None and string.strip( self.title ) not in igns: 
     110             ttl = self.title 
     111           else: 
     112             ttl = self.label 
     113           ttl = string.replace( ttl,'"', '&quot;' ) 
     114           ttl = string.replace( ttl,'<', '&lt;' ) 
     115           self._htmlTtl = string.replace( ttl,'>', '&gt;' ) 
    101116         if label == None: 
    102            label = self.uid 
    103          return '<span title="%s"><a href="%s%s.html">%s</a></span>' % (ttl,odir,self.uid,label) 
     117             label = self.uid 
     118 
     119         return '<span title="%s"><a href="%s%s.html">%s</a></span>' % (self._htmlTtl,odir,self.uid,label) 
    104120 
    105121       def getHtmlLinkAttrStyle(self,a): 
     
    134150                     ##raise 
    135151                   ##m = '<li>%s, %s: [%s] %s [%s]</li>' % ( a, self.__class__.__dict__[a].__href__(label=self._greenIcon), targ._h.label, targ.label, targ.__href__() ) 
     152               elif hasattr( self._a[a], 'useClass') and self._a[a].useClass == 'externalUrl': 
     153                 m = '<li>%s: <a href="%s" title="%s">%s</a></li>' % ( app, self.__dict__[a], self._a[a].description, self._a[a].title ) 
    136154               else: 
    137155                 m = '<li>%s: %s</li>' % ( app, self.__dict__[a] ) 
     
    150168               if doall: 
    151169                 tl = self._inx.iref_by_sect[self.uid].a.keys() 
     170               tl1 = [] 
     171               for t in tl: 
     172                 if t in self._inx.iref_by_sect[self.uid].a and len( self._inx.iref_by_sect[self.uid].a[t] ) > 0: 
     173                   tl1.append( t ) 
    152174               am = [] 
    153                for t in tl: 
    154                  if t in self._inx.iref_by_sect[self.uid].a: 
    155                    am.append( '<h3>%s</h3>' % t ) 
     175               if len(tl1) > 0: 
     176                 am.append( '''<div class="demo"> 
     177 <div id="tabs"> 
     178        <ul>''' ) 
     179                 for t in tl1: 
     180                   u0 = self._inx.iref_by_sect[self.uid].a[t][0] 
     181                   am.append( '<li><a href="#tabs-%s">%s</a></li>' % (t,self._inx.uid[u0]._h.title ) ) 
     182                 am.append( '</ul>' ) 
     183               for t in tl1: 
     184                   u0 = self._inx.iref_by_sect[self.uid].a[t][0] 
     185                   am.append( '<div id="tabs-%s">' % t ) 
     186                   am.append( '<h3>%s</h3>' % self._inx.uid[u0]._h.title ) 
    156187                   am.append( '<ul>' ) 
    157188                   items = [self._inx.uid[u] for  u in self._inx.iref_by_sect[self.uid].a[t] ] 
     
    165196                     am.append( m ) 
    166197                   am.append( '</ul>' ) 
     198                   am.append( '</div>' ) 
    167199               if len(am) > 0: 
    168                   msg.append( '<h2>Links from other sections</h2>' ) 
    169                   for m in am: 
     200                 am.append( '</div>' ) 
     201                 msg.append( '<h2>Links from other sections</h2>' ) 
     202                 msg.append( ''' <script> 
     203        $(function() { 
     204                $( "#tabs" ).tabs({cookie: { expires: 1 } }); 
     205        }); 
     206 </script> 
     207<!-- how to make tab selection stick: http://stackoverflow.com/questions/5066581/jquery-ui-tabs-wont-save-selected-tab-index-upon-page-reload  expiry time in days-->''' ) 
     208                 for m in am: 
    170209                    msg.append(m) 
    171210                
     
    631670 
    632671    self.pageTmpl = """<html><head><title>%s</title> 
     672%s 
    633673<link rel="stylesheet" type="text/css" href="%scss/dreq.css"> 
    634674</head><body> 
     
    672712      bdy = string.join( i.__html__( ghis=self.getHtmlItemStyle ), '\n' ) 
    673713      oo = open( '%s/u/%s.html' % (odir,i.uid), 'w' ) 
    674       oo.write( self.pageTmpl % (ttl, '../', bdy ) ) 
     714      oo.write( self.pageTmpl % (ttl, jsh, '../', bdy ) ) 
    675715      oo.close() 
    676716 
     
    706746      bdy = string.join( msg, '\n' ) 
    707747      oo = open( '%s/index/%s.html' % (odir,k), 'w' ) 
    708       oo.write( self.pageTmpl % (ttl, '../', bdy ) ) 
     748      oo.write( self.pageTmpl % (ttl, '', '../', bdy ) ) 
    709749      oo.close() 
    710750    msg0.append( '</ul>' ) 
    711751    bdy = string.join( msg0, '\n' ) 
    712752    oo = open( '%s/index.html' % odir, 'w' ) 
    713     oo.write( self.pageTmpl % (ttl0, '', bdy ) ) 
     753    oo.write( self.pageTmpl % (ttl0, '', '', bdy ) ) 
    714754    oo.close() 
    715755     
Note: See TracChangeset for help on using the changeset viewer.