Revision: 09be508673c4
Author:   Janne Härkönen <[email protected]>
Date:     Wed Feb 22 22:05:32 2012
Log:      testdoc: javascript inlining + cleanup
http://code.google.com/p/robotframework/source/detail?r=09be508673c4

Modified:
 /src/robot/webcontent/testdoc.html

=======================================
--- /src/robot/webcontent/testdoc.html  Wed Feb 22 15:01:14 2012
+++ /src/robot/webcontent/testdoc.html  Wed Feb 22 22:05:32 2012
@@ -12,9 +12,6 @@
 <link rel="stylesheet" type="text/css" href="print.css" media="print">
 <script type="text/javascript" src="lib/jquery.min.js"></script>
 <script type="text/javascript" src="lib/jquery.tmpl.min.js"></script>
-<script type="text/javascript" src="lib/jsxcompressor.js"></script>
-<script type="text/javascript" src="view.js"></script>
-<script type="text/javascript" src="log.js"></script>
<!-- JS MODEL --><script type="text/javascript" src="testdata/testdoc.js"></script>
 <title></title>
 </head>
@@ -37,21 +34,26 @@

 <script type="text/javascript">
 $(document).ready(function(){
-    setTitle(window.suite);
     parseTemplates();
-    addSuite(window.suite);
-    expandSuite(window.suite);
+    setTitle(window.suite);
+    addSuite(window.suite, 'body');
+    expandElement(suite);
 });

+function parseTemplates() {
+    $('script[type="text/x-jquery-tmpl"]').map(function (idx, elem) {
+        $.template(elem.id, elem.text);
+    });
+}
+
 function setTitle(suite) {
     var givenTitle = suite.title;
document.title = givenTitle ? givenTitle : 'Documentation for ' + suite.name;
     $.tmpl('<h1>' + document.title + '</h1>').appendTo($('body'))
 }

-function addSuite(suite) {
-    var root = $.tmpl('suiteTemplate', suite);
-    root.appendTo($('body'));
+function addSuite(suite, parent_locator) {
+    $.tmpl('suiteTemplate', suite).appendTo($(parent_locator));
     addKeywords(suite);
     addSuites(suite);
     addTests(suite);
@@ -59,12 +61,10 @@

 function addSuites(suite) {
     $.map(suite.suites, function (s, _) {
- $.tmpl('suiteTemplate', s).appendTo($('#' + suite.id + '_children'));
-        addKeywords(s);
-        addSuites(s);
-        addTests(s);
+        addSuite(s, '#' + suite.id + '_children')
         });
 }
+
 function addTests(suite) {
     $.map(suite.tests, function (test, _) {
$.tmpl('testTemplate', test).appendTo($('#' + suite.id + '_children'));
@@ -77,12 +77,27 @@
$.tmpl('keywordTemplate', kw).appendTo($('#' + parent.id + '_children'));
     });
 }
+
+function toggleElement(elementId) {
+    var childElement = $("#"+elementId+"_children");
+    childElement.toggle(100, function () {
+        var foldingButton = $('#'+elementId+'_foldingbutton');
+        foldingButton.text(foldingButton.text() == '+' ? '-' : '+');
+    });
+}
+
+function expandElement(element) {
+    var childElement = $("#" + element.id + "_children");
+    childElement.show();
+    $('#'+element.id+'_foldingbutton').text('-');
+}
+
 </script>

 <script type="text/x-jquery-tmpl" id="suiteTemplate">
   <div id="${id}" class="suite">
     <div id="${id}_elementheader" class="elementheader"
-         onclick="toggleSuite('${id}');" title="${fullName}">
+         onclick="toggleElement('${id}');" title="${fullName}">
       <div id="${id}_foldingbutton" class="foldingbutton">+</div>
       <span class="not_run">TEST&nbsp;SUITE:</span>
       <span class="name">${name}</span>
@@ -128,7 +143,7 @@

 <script type="text/x-jquery-tmpl" id="testTemplate">
   <div id="${id}" class="test">
-    <div id="${id}_elementheader" onclick="toggleTest('${id}');"
+    <div id="${id}_elementheader" onclick="toggleElement('${id}');"
          class="elementheader" title="${fullName}">
       <div id="${id}_foldingbutton" class="foldingbutton">+</div>
       <span class="not_run">TEST&nbsp;CASE: </span>
@@ -171,6 +186,5 @@
   </div>
 </script>

-
 </body>
 </html>

Reply via email to