home *** CD-ROM | disk | FTP | other *** search
/ Organic Chemistry (8th Edition) / Image.iso / pc / organic / media / help / help.xsl < prev    next >
Encoding:
Extensible Markup Language  |  2003-04-15  |  25.3 KB  |  751 lines

  1. <?xml version="1.0"?>
  2. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xlink="http://www.w3.org/1999/xlink">
  3.  
  4. <!-- Edugen XSL Stylesheets V1.0 =======================================
  5.  
  6.      File help.xsl for Organic View
  7.      
  8.      This file is part of the Edugen XSL Stylesheets.
  9.      Copyright (c) 2002 WWL Corp. - A Subsidiary of John Wiley & Sons, Inc.
  10. ========================================================================= -->
  11.  
  12. <xsl:output method="html" indent="no"/>
  13.  
  14. <!-- version -->
  15. <xsl:param name="version">1.0</xsl:param>
  16. <!-- dynamic param -->
  17. <xsl:param name="selector" select="/*"/>
  18.  
  19. <xsl:variable name="edugenGlobalPath"></xsl:variable>
  20. <xsl:variable name="courseHttpPath"></xsl:variable>
  21. <xsl:variable name="edugenHttpPath"></xsl:variable>
  22. <xsl:variable name="courseFilePath"></xsl:variable>
  23. <xsl:variable name="edugenFilePath"></xsl:variable>
  24.  
  25. <xsl:variable name="edugenGlobalPath"><?11?>?sid=global&msg=300&file=</xsl:variable>
  26. <xsl:variable name="courseHttpPath"><?11?>?sid=<?1003?>&msg=3&course=<?1008?>&file=</xsl:variable>
  27. <xsl:variable name="edugenHttpPath"><?11?>?sid=<?1003?>&msg=300&file=</xsl:variable>
  28. <xsl:variable name="courseFilePath"><?303?></xsl:variable>
  29. <xsl:variable name="edugenFilePath"><?301?></xsl:variable>
  30.  
  31. <xsl:variable name="file"><xsl:value-of select="/*/@id"/>.xml</xsl:variable>
  32. <xsl:variable name="filebase"><xsl:value-of select="/*/@xml:base"/></xsl:variable>
  33.  
  34. <xsl:attribute-set name="body_attributes">
  35.     <!-- <xsl:attribute name="background"><xsl:value-of select="$courseFilePath"/>media/content/graphics/styles/bgr2.gif</xsl:attribute> -->
  36.     <xsl:attribute name="bgcolor">#ffffff</xsl:attribute>
  37.     <xsl:attribute name="text">#000000</xsl:attribute>
  38.     <xsl:attribute name="leftmargin">0</xsl:attribute>
  39.     <xsl:attribute name="topmargin">0</xsl:attribute>
  40.     <xsl:attribute name="marginwidth">0</xsl:attribute>
  41.     <xsl:attribute name="marginheight">0</xsl:attribute>
  42.     <xsl:attribute name="onresize">javascript:if(navigator.appName.indexOf('Netscape')!=-1)self.location.reload();</xsl:attribute>
  43.     <xsl:attribute name="onload">javascript:doOnload();</xsl:attribute>
  44.     <xsl:attribute name="onunload">javascript:doOnunload();</xsl:attribute>
  45. </xsl:attribute-set>
  46.  
  47.  
  48. <!-- ============= root =============================== -->
  49. <xsl:template match="/">
  50. <html>
  51. <xsl:comment>
  52. Copyright (c) 2002 WWL Corp. - A Subsidiary of John Wiley & Sons, Inc.
  53. Thank you for examining our code
  54. </xsl:comment>
  55. <head>
  56. <title>
  57. <xsl:choose>
  58.     <xsl:when test="$selector/title"><xsl:value-of select="$selector/title"/></xsl:when>
  59.     <xsl:otherwise>Page</xsl:otherwise>
  60. </xsl:choose>
  61. </title>
  62. <meta name="generator" content="Edugen XSL Stylesheets V{$version}"/>
  63. <link rel="STYLESHEET" type="text/css" href="{$courseHttpPath}media/help/css/style1.css"/>
  64. <link rel="STYLESHEET" type="text/css" href="{$courseHttpPath}media/help/css/font2.css"/>
  65.  
  66. <script type="text/javascript" language="JavaScript" src="{$edugenHttpPath}media/js/button.js"></script>
  67. <!-- <script type="text/javascript" language="JavaScript" src="{$edugenHttpPath}media/js/overlay.js"></script> -->
  68. <script type="text/javascript" language="JavaScript" src="{$edugenHttpPath}media/js/misc.js"></script>
  69. <!-- <script type="text/javascript" language="JavaScript" src="{$edugenHttpPath}media/js/windows.js"></script> -->
  70.  
  71. <script type="text/javascript" language="JavaScript"><![CDATA[
  72. function doOnload()
  73. {
  74.     
  75. }
  76. function doOnunload()
  77. {
  78.     
  79. }
  80.  
  81. ]]><xsl:choose>
  82.     <xsl:when test="name($selector)='organizations'"><![CDATA[
  83.         
  84. var bulletbutImage = new imageObject("bulletbut","<?11?>?sid=<?1003?>&msg=3&file=media/help/graphics/bullet/");
  85.  
  86. function bulletbutPress(in_name)
  87. {
  88.     //alert("<?11?>?sid=<?1003?>&msg=4&xml=/media/help/" + in_name + ".xml&xsl=/media/help/help.xsl");
  89.     top.show.location.replace("<?11?>?sid=<?1003?>&msg=4&xml=/media/help/" + in_name + ".xml&xsl=/media/help/help.xsl");
  90. }
  91.  
  92.     ]]></xsl:when>
  93.     <xsl:otherwise></xsl:otherwise>
  94. </xsl:choose><![CDATA[
  95.  
  96. ]]></script>
  97.  
  98. </head>
  99.  
  100. <body xsl:use-attribute-sets="body_attributes">
  101. <xsl:choose>
  102.     <xsl:when test="name($selector)='organizations'">
  103.         <xsl:attribute name="bgcolor">#F2EBCF</xsl:attribute>
  104.         <xsl:attribute name="background"><xsl:value-of select="$courseFilePath"/>media/help/graphics/help_bgr.jpg</xsl:attribute>
  105.     </xsl:when>
  106.     <xsl:otherwise></xsl:otherwise>
  107. </xsl:choose>
  108.  
  109. <xsl:apply-templates select="$selector"/>
  110.  
  111. </body>
  112. </html>
  113. </xsl:template>
  114. <!-- ====== end of root =============================== -->
  115.  
  116.  
  117. <!-- ============= page =============================== -->
  118. <xsl:template match="page">
  119. <table cellspacing="0" cellpadding="2" border="0" width="100%" bgcolor="#F2EBCF" height="36">
  120.     <tr>
  121.         <td><img border="0" alt="" width="24" height="1" src="{$courseFilePath}media/content/graphics/pixel.gif"/></td>
  122.         <td align="left" valign="bottom"><p class="pageTitle"><xsl:value-of select="title"/></p></td>
  123.         <td><img border="0" alt="" width="20" height="1" src="{$courseFilePath}media/content/graphics/pixel.gif"/></td>
  124.     </tr>
  125.     <tr>
  126.         <td><img border="0" alt="" width="24" height="1" src="{$courseFilePath}media/content/graphics/pixel.gif"/></td>
  127.         <td width="100%">
  128.             <table cellspacing="0" cellpadding="0" border="0" width="100%" bgcolor="##840004">
  129.                 <tr>
  130.                     <td background="{$courseFilePath}media/content/graphics/pixel.gif"><img border="0" alt="" width="1" height="1" src="{$courseFilePath}media/content/graphics/pixel.gif"/></td>
  131.                 </tr>
  132.             </table>
  133.         
  134.         </td>
  135.         <td><img border="0" alt="" width="20" height="1" src="{$courseFilePath}media/content/graphics/pixel.gif"/></td>
  136.     </tr>
  137. </table>
  138.  
  139. <table cellspacing="0" cellpadding="0" border="0" width="100%">
  140.     <tr>
  141.         <td colspan="3"><img border="0" alt="" width="1" height="12" src="{$courseFilePath}media/content/graphics/pixel.gif"/></td>
  142.     </tr>
  143.     <tr>
  144.         <td><img border="0" alt="" width="32" height="1" src="{$courseFilePath}media/content/graphics/pixel.gif"/></td>
  145.         <td width="100%"><xsl:apply-templates/></td>
  146.         <td><img border="0" alt="" width="28" height="1" src="{$courseFilePath}media/content/graphics/pixel.gif"/></td>
  147.     </tr>
  148. </table>
  149. </xsl:template>
  150.  
  151. <xsl:template match="page/head">
  152. </xsl:template>
  153.  
  154. <xsl:template match="page/title">
  155. </xsl:template>
  156. <!-- ====== end of page =============================== -->
  157.  
  158.  
  159. <!-- ============= section =============================== -->
  160. <xsl:template match="section">
  161. <xsl:apply-templates/>
  162. </xsl:template>
  163.  
  164. <xsl:template match="section/title">
  165. <p class="sec1_title">
  166. <xsl:call-template name="parent_anchorname"/>
  167. <xsl:apply-templates/>
  168. </p>
  169. </xsl:template>
  170.  
  171. <xsl:template match="section/subtitle">
  172. <p class="sec1_subtitle">
  173. <xsl:call-template name="parent_anchorname"/>
  174. <xsl:apply-templates/>
  175. </p>
  176. </xsl:template>
  177.  
  178. <xsl:template match="section/section/title">
  179. <p class="sec2_title">
  180. <xsl:call-template name="parent_anchorname"/>
  181. <xsl:apply-templates/>
  182. </p>
  183. </xsl:template>
  184.  
  185. <xsl:template match="section/section/subtitle">
  186. <p class="sec2_subtitle">
  187. <xsl:call-template name="parent_anchorname"/>
  188. <xsl:apply-templates/>
  189. </p>
  190. </xsl:template>
  191. <!-- ====== end of section =============================== -->
  192.  
  193.  
  194. <!-- ============= organizations =============================== -->
  195. <xsl:template match="organizations">
  196. <xsl:apply-templates/>
  197. </xsl:template>
  198.  
  199. <xsl:template match="organization">
  200. <table border="0" cellspacing="0" cellpadding="0">
  201. <tr>
  202.     <td><img border="0" alt="" width="152" height="36" src="{$courseFilePath}media/help/graphics/help.jpg"/></td>
  203. </tr>
  204. </table>
  205.  
  206. <table border="0" cellspacing="2" cellpadding="2">
  207. <xsl:for-each select="item">
  208.     <xsl:choose>
  209.         <xsl:when test="@isvisible='0'"></xsl:when>
  210.         <xsl:otherwise>
  211.             
  212.             <tr>
  213.                 <td align="left" valign="top"><img width="6" height="1" border="0" src="{$courseFilePath}media/help/graphics/pixel.gif"/></td>
  214.                 <td align="left" valign="top"><img name="bulletbut{@idref}" width="8" height="16" border="0" src="<?303?>media/help/graphics/bullet/out.gif"/></td>
  215.                 <td align="left" valign="top"><a href="javascript:bulletbutPress('{@idref}');" onmouseout="javascript:bulletbutImage.mOut('bulletbut{@idref}');  top.status='{title}'; return true;" onmouseover="javascript:bulletbutImage.mOver('bulletbut{@idref}'); top.status=''; return true;"><xsl:apply-templates/></a></td>
  216.             </tr>
  217.         </xsl:otherwise>
  218.     </xsl:choose>
  219. </xsl:for-each>
  220. </table>
  221. </xsl:template>
  222. <!-- ====== end of organizations =============================== -->
  223.  
  224.  
  225. <!-- ============= figure =============================== -->
  226. <xsl:template match="figure">
  227. <table border="0" cellpadding="6" cellspacing="0">
  228. <xsl:if test="@align"><xsl:copy-of select="@align"/></xsl:if>
  229. <tr><td>
  230.     <table border="0" cellpadding="0" cellspacing="4">
  231.  
  232. <xsl:choose>
  233.     <xsl:when test="@layout='gt'">
  234.         <tr>
  235.             <td valign="top"><xsl:apply-templates select="image | flash"/></td>
  236.             <td valign="top"><xsl:apply-templates select="description"/></td>
  237.         </tr>
  238.     </xsl:when>
  239.     <xsl:when test="@layout='tg'">
  240.         <tr>
  241.             <td valign="top"><xsl:apply-templates select="description"/></td>
  242.             <td valign="top"><xsl:apply-templates select="image | flash"/></td>
  243.         </tr>
  244.     </xsl:when>
  245.     <xsl:when test="@layout='gtv'">
  246.         <tr>
  247.             <td align="center"><xsl:apply-templates select="image | flash"/></td>
  248.         </tr>
  249.         <tr>
  250.             <td><xsl:apply-templates select="description"/></td>
  251.         </tr>
  252.     </xsl:when>
  253.     <xsl:when test="@layout='tgv'">
  254.         <tr>
  255.             <td><xsl:apply-templates select="description"/></td>
  256.         </tr>
  257.         <tr>
  258.             <td align="center"><xsl:apply-templates select="image | flash"/></td>
  259.         </tr>
  260.     </xsl:when>
  261.     <xsl:otherwise>
  262.         <tr>
  263.             <td align="center"><xsl:apply-templates select="image | flash"/></td>
  264.         </tr>
  265.     </xsl:otherwise>
  266. </xsl:choose>
  267.     
  268.     </table>
  269. </td></tr>
  270. </table>
  271. </xsl:template>
  272.  
  273. <xsl:template match="figure/description">
  274. <xsl:apply-templates/>
  275. </xsl:template>
  276.  
  277. <xsl:template match="figure/description/title">
  278. <p class="text"><span class="figtitle"><xsl:apply-templates/></span></p>
  279. </xsl:template>
  280. <!-- ====== end of figure =============================== -->
  281.  
  282.  
  283. <!-- ============= example =============================== -->
  284. <xsl:template match="example">
  285. <table border="1" cellpadding="4" cellspacing="0" bordercolor="#000000">
  286. <tr bgcolor="#ffffff">
  287. <td><xsl:apply-templates/></td>
  288. </tr></table>
  289.  
  290. <!-- <table border="0" cellpadding="0" cellspacing="0"><tr><td bgcolor="#000000">
  291. <table border="0" cellpadding="4" cellspacing="1">
  292. <tr bgcolor="#ffffff">
  293. <td><xsl:apply-templates/></td>
  294. </tr></table>
  295. </td></tr></table> -->
  296. </xsl:template>
  297.  
  298. <xsl:template match="example/sentence">
  299. <p class="sec3Title"><xsl:apply-templates/></p>
  300. </xsl:template>
  301. <!-- ====== end of example =============================== -->
  302.  
  303.  
  304.  
  305. <!-- ============= quicktasks =============================== -->
  306. <xsl:template match="quicktasks">
  307. </xsl:template>
  308.  
  309. <xsl:template match="quicktask">
  310. <xsl:apply-templates/>
  311. </xsl:template>
  312.  
  313. <xsl:template match="quicktasks/title">
  314. <h3><xsl:apply-templates/></h3>
  315. </xsl:template>
  316. <!-- ====== end of quicktasks =============================== -->
  317.  
  318.  
  319. <!-- ============= illustration =============================== -->
  320. <xsl:template match="illustration">
  321. <xsl:apply-templates/>
  322. </xsl:template>
  323.  
  324. <xsl:template match="illustration/alternative">
  325. </xsl:template>
  326.  
  327. <xsl:template match="alternative/sentence">
  328. <blockquote><p class="text" style="font-style:italic;"><xsl:apply-templates/></p></blockquote>
  329. </xsl:template>
  330.  
  331. <xsl:template match="sentences">
  332. <blockquote class="text"><xsl:apply-templates/></blockquote>
  333. </xsl:template>
  334.  
  335. <xsl:template match="sentence">
  336. <p class="text" style="font-style:italic;"><xsl:apply-templates/></p>
  337. </xsl:template>
  338. <!-- ====== end of illustration =============================== -->
  339.  
  340.  
  341. <!-- ============= instruction =============================== -->
  342. <xsl:template match="instruction/para">
  343. <p class="instruction">
  344.     <img name="arrow" src="{$courseFilePath}media/content/graphics/prefer/arrow.gif" border="0"/>
  345.     <xsl:call-template name="anchorname"/>
  346.     <xsl:apply-templates/>
  347. </p>
  348. </xsl:template>
  349. <!-- ====== end of instruction =============================== -->
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357. <!-- ============= sensible block =============================== -->
  358. <!-- ============================================================ -->
  359.  
  360. <!-- ============= parablock =============================== -->
  361. <xsl:template match="parablock">
  362. <p class="text">
  363. <xsl:call-template name="anchorname"/>
  364. <xsl:apply-templates/>
  365. </p>
  366. </xsl:template>
  367.  
  368. <xsl:template match="parablock/title">
  369. <span style="font-weight:bold;"><xsl:apply-templates/></span><br/>
  370. </xsl:template>
  371.  
  372. <xsl:template match="parablock/para">
  373. <xsl:apply-templates/>
  374. </xsl:template>
  375. <!-- ====== end of parablock =============================== -->
  376.  
  377.  
  378. <!-- ============= listblock =============================== -->
  379. <xsl:template match="listblock">
  380. <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td bgcolor="#000000">
  381. <table border="0" cellpadding="4" cellspacing="1" width="100%">
  382. <tr bgcolor="#ffffff">
  383. <td><span class="listblock"><xsl:apply-templates/></span></td>
  384. </tr>
  385. </table>
  386. </td></tr></table><br clear="all"/>
  387. </xsl:template>
  388.  
  389. <xsl:template match="listblock/title">
  390. <p class="listblock_title">
  391. <xsl:call-template name="anchorname"/>
  392. <xsl:apply-templates/>
  393. </p>
  394. </xsl:template>
  395. <!-- ====== end of listblock =============================== -->
  396.  
  397.  
  398. <!-- ============= tableblock =============================== -->
  399. <xsl:template match="tableblock">
  400. <p class="text" align="right">
  401. <span class="table_title">Table <xsl:value-of select="@number"/>   <br/>
  402. <xsl:apply-templates select="title"/> <br/></span>
  403. <xsl:apply-templates select="table"/>
  404. </p>
  405. </xsl:template>
  406. <!-- ====== end of tableblock =============================== -->
  407.  
  408.  
  409. <!-- ============= overlay =============================== -->
  410. <xsl:template match="overlay">
  411. </xsl:template>
  412.  
  413. <xsl:template match="overlay" mode="overlay">
  414. <div id="{@id}" style="position:absolute; top:0; left:0; visibility:hidden;">
  415. <table cellpadding="4" bgcolor="#ffffff" border="1">
  416. <tr><td><xsl:apply-templates/></td></tr>
  417. </table>
  418. </div>
  419. </xsl:template>
  420.  
  421. <xsl:template match="overlay/title">
  422. <p class="overlay_title"><xsl:apply-templates/></p>
  423. </xsl:template>
  424. <!-- ====== end of overlay =============================== -->
  425.  
  426.  
  427. <!-- ============= exercise =============================== -->
  428. <xsl:template match="exercise">
  429. <hr/><xsl:apply-templates/><hr/>
  430. </xsl:template>
  431. <!-- ====== end of exercise =============================== -->
  432.  
  433. <!-- ============================================================ -->
  434. <!-- ====== end of sensible block =============================== -->
  435.  
  436.  
  437.  
  438.  
  439. <!-- ============= block formatting =============================== -->
  440. <xsl:template match="para">
  441. <p class="text">
  442. <xsl:if test="@align"><xsl:copy-of select="@align"/></xsl:if>
  443. <xsl:call-template name="anchorname"/>
  444. <xsl:apply-templates/>
  445. </p>
  446. </xsl:template>
  447.  
  448.  
  449. <xsl:template match="list">
  450. <ul>
  451. <xsl:if test="@type"><xsl:copy-of select="@type"/></xsl:if>
  452. <xsl:for-each select="listitem">
  453.     <li><xsl:apply-templates/></li>
  454. </xsl:for-each>
  455. </ul>
  456. </xsl:template>
  457.  
  458.  
  459. <xsl:template match="list[@mark='number']">
  460. <ol type="1">
  461. <xsl:if test="@start"><xsl:copy-of select="@start"/></xsl:if>
  462. <xsl:for-each select="listitem">
  463.     <li><xsl:apply-templates /></li>
  464. </xsl:for-each>
  465. </ol>
  466. </xsl:template>
  467.  
  468.  
  469. <xsl:template match="list[@mark='letter']">
  470. <ol type="a">
  471. <xsl:if test="@start"><xsl:copy-of select="@start"/></xsl:if>
  472. <xsl:for-each select="listitem">
  473.     <li><xsl:apply-templates /></li>
  474. </xsl:for-each>
  475. </ol>
  476. </xsl:template>
  477.  
  478.  
  479. <xsl:template match="list[@mark='simple']">
  480. <p class="text">
  481. <xsl:for-each select="listitem">
  482. <xsl:apply-templates/>
  483.     <xsl:choose>
  484.         <xsl:when test="position()=last()"></xsl:when>
  485.         <xsl:otherwise><br/></xsl:otherwise>
  486.     </xsl:choose>
  487. </xsl:for-each>
  488. </p>
  489. </xsl:template>
  490. <!-- ====== end of block formatting =============================== -->
  491.  
  492.  
  493.  
  494. <!-- ============= sensible formatting =============================== -->
  495. <xsl:template match="keyword">
  496. <span class="keyword"><xsl:apply-templates/></span>
  497. <!-- <span style="font-weight:bold; color:#000000;"><xsl:apply-templates/></span> -->
  498. </xsl:template>
  499.  
  500. <xsl:template match="url">
  501. <xsl:apply-templates/>
  502. </xsl:template>
  503. <!-- ====== end of sensible formatting =============================== -->
  504.  
  505.  
  506.  
  507. <!-- ============= inline formatting =============================== -->
  508. <xsl:template match="span">
  509. <span class="text">
  510. <xsl:choose>
  511.     <xsl:when test="@style">
  512.         <span style="{@style}"><xsl:apply-templates/></span>
  513.     </xsl:when>
  514.     <xsl:otherwise><xsl:apply-templates/></xsl:otherwise>
  515. </xsl:choose>
  516. </span>
  517. </xsl:template>
  518.  
  519.  
  520. <xsl:template match="subscript">
  521. <sub><span style="font-size:66%;"><xsl:apply-templates/></span></sub>
  522. </xsl:template>
  523.  
  524.  
  525. <xsl:template match="superscript">
  526. <sup><span style="font-size:66%;"><xsl:apply-templates/></span></sup>
  527. </xsl:template>
  528.  
  529.  
  530. <!-- italic, bold, underline, monospace -->
  531. <xsl:template match="emphasis">
  532. <xsl:choose>
  533.     <xsl:when test="@role='b'">
  534.         <span style="font-weight:bold;"><xsl:apply-templates/></span>
  535.     </xsl:when>
  536.     <xsl:when test="@role='ib'">
  537.         <span style="font-style:italic;font-weight:bold;"><xsl:apply-templates/></span>
  538.     </xsl:when>
  539.     <xsl:when test="@role='bu'">
  540.         <span style="font-weight:bold;text-decoration:underline;"><xsl:apply-templates/></span>
  541.     </xsl:when>
  542.     <xsl:when test="@role='bm'">
  543.         <span style="font-weight:bold;font-family:monospace;"><xsl:apply-templates/></span>
  544.     </xsl:when>
  545.     <xsl:when test="@role='u'">
  546.         <span style="text-decoration:underline;"><xsl:apply-templates/></span>
  547.     </xsl:when>
  548.     <xsl:when test="@role='iu'">
  549.         <span style="font-style:italic;text-decoration:underline;"><xsl:apply-templates/></span>
  550.     </xsl:when>
  551.     <xsl:when test="@role='m'">
  552.         <span style="font-family:monospace;"><xsl:apply-templates/></span>
  553.     </xsl:when>
  554.     <xsl:when test="@role='im'">
  555.         <span style="font-style:italic;font-family:monospace;"><xsl:apply-templates/></span>
  556.     </xsl:when>
  557.     <xsl:otherwise>
  558.         <span style="font-style:italic;"><xsl:apply-templates/></span>
  559.     </xsl:otherwise>
  560. </xsl:choose>
  561. </xsl:template>
  562. <!-- ====== end of inline formatting =============================== -->
  563.  
  564.  
  565.  
  566. <!-- ============= anchor =============================== -->
  567. <xsl:template match="a">
  568. <xsl:call-template name="anchor"/>
  569. </xsl:template>
  570.  
  571.  
  572. <xsl:template name="anchor">
  573. <xsl:variable name="base">
  574. <xsl:choose>
  575.     <xsl:when test="@xml:base"><xsl:value-of select="@xml:base"/></xsl:when>
  576.     <xsl:otherwise><xsl:value-of select="$filebase"/></xsl:otherwise>
  577. </xsl:choose>
  578. </xsl:variable>
  579. <xsl:choose>
  580.     <xsl:when test="@role">
  581.         <xsl:choose>
  582.             <xsl:when test="@role='quicktasks'">
  583.                 <a href="javascript:winOpen('{$base}','{$file}','{@xlink:href}','{@role}','section[1]');">
  584.                     <xsl:attribute name="class">
  585.                         <xsl:choose>
  586.                             <xsl:when test="@class"><xsl:value-of select="@class"/></xsl:when>
  587.                             <xsl:otherwise>link</xsl:otherwise>
  588.                         </xsl:choose>
  589.                     </xsl:attribute>
  590.                     <xsl:apply-templates/>
  591.                 </a>
  592.             </xsl:when>
  593.             <xsl:otherwise>
  594.                 <a href="javascript:winOpen('{$base}','{$file}','{@xlink:href}','{@role}');">
  595.                     <xsl:attribute name="class">
  596.                         <xsl:choose>
  597.                             <xsl:when test="@class"><xsl:value-of select="@class"/></xsl:when>
  598.                             <xsl:otherwise>link</xsl:otherwise>
  599.                         </xsl:choose>
  600.                     </xsl:attribute>
  601.                     <xsl:apply-templates/>
  602.                 </a>
  603.             </xsl:otherwise>
  604.         </xsl:choose>
  605.     </xsl:when>
  606.     <xsl:otherwise>
  607.         <xsl:choose>
  608.             <xsl:when test="@xlink:actuate='new'">
  609.                 <a href="{@xlink:href}" target="_blank" class="link"><xsl:apply-templates/></a>
  610.             </xsl:when>
  611.             <xsl:when test="@xlink:actuate='replace'">
  612.                 <a href="javascript:gotoPage('{$base}','{$file}','{@xlink:href}');" class="link"><xsl:apply-templates/></a>
  613.             </xsl:when>
  614.             <xsl:otherwise><xsl:apply-templates/></xsl:otherwise>
  615.         </xsl:choose>
  616.     </xsl:otherwise>
  617. </xsl:choose>
  618. </xsl:template>
  619.  
  620.  
  621. <xsl:template name="anchor_attrib">
  622. <xsl:variable name="base">
  623. <xsl:choose>
  624.     <xsl:when test="@xml:base"><xsl:value-of select="@xml:base"/></xsl:when>
  625.     <xsl:otherwise><xsl:value-of select="$filebase"/></xsl:otherwise>
  626. </xsl:choose>
  627. </xsl:variable>
  628. <xsl:choose>
  629.     <xsl:when test="@role">
  630.         <xsl:attribute name="href">javascript:winOpen('<xsl:value-of select="$base"/>','<xsl:value-of select="$file"/>','<xsl:value-of select="@xlink:href"/>','<xsl:value-of select="@role"/>');</xsl:attribute>
  631.     </xsl:when>
  632.     <xsl:otherwise>
  633.         <xsl:choose>
  634.             <xsl:when test="@xlink:actuate='new'">
  635.                 <xsl:attribute name="href"><xsl:value-of select="@xlink:href"/></xsl:attribute>
  636.                 <xsl:attribute name="target">_blank</xsl:attribute>
  637.             </xsl:when>
  638.             <xsl:when test="@xlink:actuate='replace'">
  639.                 <xsl:attribute name="href">javascript:gotoPage('<xsl:value-of select="$base"/>','<xsl:value-of select="$file"/>','<xsl:value-of select="@xlink:href"/>');</xsl:attribute>
  640.             </xsl:when>
  641.             <xsl:otherwise></xsl:otherwise>
  642.         </xsl:choose>
  643.     </xsl:otherwise>
  644. </xsl:choose>
  645. </xsl:template>
  646.  
  647.  
  648. <xsl:template name="anchorname">
  649. <xsl:param name="process_node" select="."/>
  650. <xsl:choose>
  651.     <xsl:when test="$process_node/@id"><a name="{@id}"></a></xsl:when>
  652.     <xsl:otherwise></xsl:otherwise>
  653. </xsl:choose>
  654. </xsl:template>
  655.  
  656.  
  657. <xsl:template name="parent_anchorname">
  658. <xsl:choose>
  659.     <xsl:when test="../@id"><a name="{../@id}"></a></xsl:when>
  660.     <xsl:otherwise></xsl:otherwise>
  661. </xsl:choose>
  662. </xsl:template>
  663. <!-- ====== end of anchor =============================== -->
  664.  
  665.  
  666.  
  667. <!-- ============= html tags =============================== -->
  668. <xsl:template match="table|thead|tbody|tfoot|tr|th|td|map|br">
  669. <xsl:call-template name="htmltags"/>
  670. </xsl:template>
  671.  
  672. <xsl:template name="htmltags">
  673. <xsl:copy>
  674.     <xsl:copy-of select="@*"/>
  675.     <xsl:apply-templates/>
  676. </xsl:copy>
  677. </xsl:template>
  678. <!-- ====== end of html tags =============================== -->
  679.  
  680.  
  681.  
  682. <!-- ============= blob =============================== -->
  683. <xsl:template match="area">
  684. <area>
  685. <xsl:if test="@alt"><xsl:copy-of select="@alt"/></xsl:if>
  686. <xsl:if test="@shape"><xsl:copy-of select="@shape"/></xsl:if>
  687. <xsl:if test="@coords"><xsl:copy-of select="@coords"/></xsl:if>
  688. <xsl:call-template name="anchor_attrib"/>
  689. </area>
  690. </xsl:template>
  691.  
  692.  
  693. <xsl:template match="image">
  694. <img src="{$courseFilePath}{$filebase}{@src}">
  695. <xsl:if test="@width"><xsl:copy-of select="@width"/></xsl:if>
  696. <xsl:if test="@height"><xsl:copy-of select="@height"/></xsl:if>
  697. <xsl:if test="@border"><xsl:copy-of select="@border"/></xsl:if>
  698. <xsl:if test="@align"><xsl:copy-of select="@align"/></xsl:if>
  699. <xsl:if test="@vspace"><xsl:copy-of select="@vspace"/></xsl:if>
  700. <xsl:if test="@hspace"><xsl:copy-of select="@hspace"/></xsl:if>
  701. <xsl:if test="@usemap"><xsl:copy-of select="@usemap"/></xsl:if>
  702. <xsl:if test="@alt"><xsl:copy-of select="@alt"/></xsl:if>
  703. </img>
  704. </xsl:template>
  705.  
  706.  
  707. <xsl:template match="flash">
  708. <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0">
  709. <xsl:if test="@width"><xsl:copy-of select="@width"/></xsl:if>
  710. <xsl:if test="@height"><xsl:copy-of select="@height"/></xsl:if>
  711. <xsl:if test="@border"><xsl:copy-of select="@border"/></xsl:if>
  712. <param name="movie" value="{$courseFilePath}media/content/{@src}"/>
  713. <xsl:if test="@loop"><param name="loop" value="{@loop}"/></xsl:if>
  714. <xsl:if test="@menu"><param name="menu" value="{@menu}"/></xsl:if>
  715. <xsl:if test="@quality"><param name="quality" value="{@quality}"/></xsl:if>
  716. <xsl:if test="@bgcolor"><param name="bgcolor" value="{@bgcolor}"/></xsl:if>
  717. <embed type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"  swliveconnect="true" src="{$courseFilePath}media/content/{@src}">
  718. <xsl:if test="@width"><xsl:copy-of select="@width"/></xsl:if>
  719. <xsl:if test="@height"><xsl:copy-of select="@height"/></xsl:if>
  720. <xsl:if test="@border"><xsl:copy-of select="@border"/></xsl:if>
  721. <xsl:if test="@loop"><xsl:copy-of select="@loop"/></xsl:if>
  722. <xsl:if test="@menu"><xsl:copy-of select="@menu"/></xsl:if>
  723. <xsl:if test="@quality"><xsl:copy-of select="@quality"/></xsl:if>
  724. <xsl:if test="@bgcolor"><xsl:copy-of select="@bgcolor"/></xsl:if>
  725. </embed>
  726. </object>
  727. </xsl:template>
  728.  
  729.  
  730. <xsl:template match="qtmovie">
  731. <embed type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/" swliveconnect="true" src="{$courseFilePath}media/content/{@src}">
  732. <xsl:if test="@width"><xsl:copy-of select="@width"/></xsl:if>
  733. <xsl:if test="@height"><xsl:copy-of select="@height"/></xsl:if>
  734. <xsl:if test="@border"><xsl:copy-of select="@border"/></xsl:if>
  735. <xsl:if test="@bgcolor"><xsl:copy-of select="@bgcolor"/></xsl:if>
  736. <xsl:if test="@controller"><xsl:copy-of select="@controller"/></xsl:if>
  737. <xsl:if test="@autoplay"><xsl:copy-of select="@autoplay"/></xsl:if>
  738. <xsl:if test="@qtnext1"><xsl:copy-of select="@qtnext1"/></xsl:if>
  739. <xsl:if test="@qtsrc"><xsl:copy-of select="@qtsrc"/></xsl:if>
  740. </embed>
  741. </xsl:template>
  742. <!-- ====== end of blob =============================== -->
  743.  
  744.  
  745. <!-- =========================================================================
  746.      Thank you for examining our code.
  747.      Please direct all questions, bug reports, or suggestions for changes
  748.      to the info@maris.com
  749. ========================================================================== -->
  750.  
  751. </xsl:stylesheet>