ó DnQTc@s1ddlZddlZddlZddlZddlZddlmZddlmZm Z m Z ddl m Z m Z ddlmZddlmZmZdddddddd „Zddddded „Zddd ed „Zd ejfd„ƒYZd„Zee jjdiƒd > s <> s<> (tTruetNonetreprtename( t list_exprtcolortancestortgrouptownedtlettpropnametorder_bytvarnesstmarkup((sX/afs/athena.mit.edu/user/x/a/xavid/.local/lib/python2.7/site-packages/gameki/printing.pytforeach_markup s&        c Csd}|dkra|dk ratj|ƒjdkrX|j|ƒsIdS|}d}qg|}nd}d|j} |s”| d|j|f7} n|j|ƒrð|dks¾|j|ƒrð|dkrð|dkrð| d|j|f7} n|j} d} |dk r1| d |j|f7} d } d } n| td | | |jf|||d tdtd|ƒ7} | td| | f|||d t d|ƒ7} |dkrN|dk sé|dk rÑ|j ƒdksé|dkrN|dkrN| d|j7} |dk r&| d|jt |ƒf7} n| d7} | d|j7} | d7} n|dkrÖ| d7} | td|j|||d tdd|jd|ƒ7} | td|j|||d t d|ƒ7} | d7} n|dk rï| d7} n|s| d7} n| d7} | S(s(display should be a baz_eval expression.tfullt referencesR uproducts<> s<> s<> sexclude!u<> uetexcludes2recursive_get(%s, 'stuff', '%s', %s, folded=False)RRRs.recursive_get(%s, 'stuff', '%s', folded=False)s<> s <> s <> tfullqs <> s2recursive_get(%s, 'stuff', 'invert', folded=False)sowner=%ss <> s <> s<> s <> N( R Rtget_proptflavort has_propvalRtis_ancestor_ofRR tFalset get_parentR ( tuRRRtmodetdisplayt no_headerstloopoverRRt rg_elementt exclude_base((sX/afs/athena.mit.edu/user/x/a/xavid/.local/lib/python2.7/site-packages/gameki/printing.pytmarkup_for_user#st                        s.pdfcCs |dks|dkr!d}ntjdƒ}|djƒrÐtj|ƒ}|j|ƒrz|}d}d|j}nMd}|jƒdkr›d}n,|jdƒrºd|j}n d |j}d} n"|} d}d}d | jƒ}|dk rt j ƒst j ƒ‚qn|d kr4t j }n|d kr©t j ƒs[t j ƒ‚n|dkrpd }nt|dk rˆ|jnd| d|d|ddƒ} nE|dkrŠt j ƒsÐt j ƒ‚ntjdƒjƒ} | jdd„ƒtjdƒjƒ} | jdd„ƒ| | 7} d} x»| D]L} tj| dƒr7| t| | ||d|pmdd|d|ƒ7} q7q7Wndt j ƒ r¸|t jƒkr¸t jƒ‚ntj|ƒ}t|| ||d|d|d|ƒ} |dkrtd||fƒ}ntd|||fƒ}idd 6|d!6}|d"kr[| }d#}n†yHd}|rw|d$7}ntj| ||d%d&||||fƒ}Wn"tjk rÇ}t|ƒ‚nXtj||ƒ\}}t|tƒsÿt|ƒ}n||fS('NtalluObjectu PacketGroupis%s.names"Packet"Rs %s.group.names%s.types"%s"tdefaultt compendiumuproducttOwnerRRunamet productionu CharactertkeycSstj|dƒS(Nuname(Rtrender(R$((sX/afs/athena.mit.edu/user/x/a/xavid/.local/lib/python2.7/site-packages/gameki/printing.pytžsuPlacecSstj|dƒS(Nuname(RR2(tp((sX/afs/athena.mit.edu/user/x/a/xavid/.local/lib/python2.7/site-packages/gameki/printing.pyR3 sR R%RR&R's/print/%s/%s.pdfs/print/%s/%s/%s.pdfuGameki Printingttitletpdfurls.raws text/plaintht cacheable_ass/print/%s/%s/%s/%s( R Rt get_elementtisupperR!RR#Rt capitalizeRt is_omniscienttomniscient_onlyRtDEFAULT_DEFAULTRtget_descendantstsortRR2R+tlogged_in_usernametnot_youRtget_userRtconvert_markuptConversionFailedExceptionRRt guess_typet isinstancetstr(tusertnameR%ttypeR't packet_groupRRR&RRtuserstplacesR$townerR6tglobal_metadatatrettctypetflagstetenc((sX/afs/athena.mit.edu/user/x/a/xavid/.local/lib/python2.7/site-packages/gameki/printing.pyt print_stuffqs˜                          tPrinterc Bs8eZejddƒdddddded„ƒZRS(ttemplatesmako:gameki.templates.printingc CsD|dkr?tjjjdƒs;tjtjjdƒniS|dk rNn~|dkrrtj|ƒ\}}nZ|dkr·tj|ƒ\}}|j ddƒ}t |dƒ}ntj|ƒ\}}|sÛd}n|sêd}nt ||||d|ƒ\}} | r@y| dtj j ds   M_#