<?xml version="1.0" encoding="UTF-8"?>
<otrunk id="f080c070-7c8a-417c-a3fe-0737a7302806">
  <imports>
    <import class="org.concord.framework.otrunk.wrapper.OTBlob" />
    <import class="org.concord.framework.otrunk.wrapper.OTBoolean" />
    <import class="org.concord.framework.otrunk.wrapper.OTObjectSet"/>
    <import class="org.concord.graph.util.state.OTDrawingTool" />
    <import class="org.concord.otrunk.OTInclude" />
    <import class="org.concord.otrunk.OTIncludeRootObject" />
    <import class="org.concord.otrunk.OTSystem" />
    <import class="org.concord.otrunk.script.OTScriptEngineBundle" />
    <import class="org.concord.otrunk.script.OTScriptEngineEntry" />
    <import class="org.concord.otrunk.script.jruby.OTJRuby" />
    <import class="org.concord.otrunk.script.ui.OTScriptObject" />
    <import class="org.concord.otrunk.script.ui.OTScriptVariable" />
    <import class="org.concord.otrunk.script.ui.OTXHTMLScript" />
    <import class="org.concord.otrunk.script.ui.OTXHTMLScriptViewEntry" />
    <import class="org.concord.otrunk.script.ui.OTScriptButton" />
    <import class="org.concord.otrunk.ui.OTCheckBox" />
    <import class="org.concord.otrunk.ui.OTIconSwitcherViewConfig" />
    <import class="org.concord.otrunk.ui.OTImage" />
    <import class="org.concord.otrunk.ui.OTText" />
    <import class="org.concord.otrunk.ui.question.OTQuestionViewConfig" />
    <import class="org.concord.otrunk.ui.swing.OTChoiceViewConfig" />
    <import class="org.concord.otrunk.view.OTViewChild" />
    <import class="org.concord.otrunk.view.OTMultiUserRoot" />
    <import class="org.concord.otrunk.view.OTViewBundle" />
    <import class="org.concord.otrunk.view.OTViewEntry" />
    <import class="org.concord.otrunk.view.OTViewMode" />
    <import class="org.concord.otrunk.view.document.OTCompoundDoc" />
    <import class="org.concord.otrunk.view.document.OTDocumentViewConfig" />
  </imports>
  <objects>
    <OTSystem local_id="system">
      <bundles>
        <OTViewBundle showLeftPanel="false" id="32AC0483-9C9E-478D-A85E-4B6A2B957E2D">
          <viewEntries>
            <OTViewEntry objectClass="org.concord.otrunk.view.OTMultiUserRoot"
              viewClass="org.concord.otrunk.view.OTMultiUserRootView" />
            <OTViewEntry objectClass="org.concord.otrunk.script.ui.OTXHTMLScript"
              viewClass="org.concord.otrunk.script.ui.OTXHTMLScriptView" />
            <OTDocumentViewConfig
              objectClass="org.concord.otrunk.view.document.OTDocument"
              viewClass="org.concord.otrunk.view.document.OTDocumentView"
              css="
              body { background-color:#FFFFFF; color:#333333; font-family:Tahoma,'Trebuchet MS',sans-serif; line-height:1.5em; }
              h1 { color:#FFD32C; font-size:1.5em; margin-bottom:0px; }
              h2 { color:#FFD32C; font-size:1.3em; margin-bottom:0px; }
              h2 { color:#FFD32C; font-size:1.1em; margin: 2em 0em 1em 0em; }
              #content { margin:5px; padding:5px; }
              .color1 { background-color: #f0f0d0 }
              " />
            <OTViewEntry objectClass="org.concord.otrunk.script.ui.OTScriptButton"
              viewClass="org.concord.otrunk.script.ui.OTScriptButtonView" />
            <OTViewEntry objectClass="org.concord.otrunk.script.ui.OTScriptObject"
              viewClass="org.concord.otrunk.script.ui.OTScriptObjectView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTImage"
              viewClass="org.concord.otrunk.ui.swing.OTImageView" />
            <OTQuestionViewConfig objectClass="org.concord.otrunk.ui.question.OTQuestion"
              viewClass="org.concord.otrunk.ui.question.OTQuestionView" locked="true" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTCheckBox"
              viewClass="org.concord.otrunk.ui.swing.OTCheckBoxView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTText"
              viewClass="org.concord.otrunk.ui.swing.OTTextEditView" />
            <OTChoiceViewConfig objectClass="org.concord.otrunk.ui.OTChoice"
              viewClass="org.concord.otrunk.ui.swing.OTChoiceView"
              useViewsAsChoices="true">
              <radioButtonViewEntry>
                <OTChoiceViewConfig objectClass="org.concord.otrunk.ui.OTChoice"
                  viewClass="org.concord.otrunk.ui.swing.OTChoiceRadioButtonView"
                  useViewsAsChoices="true" />
              </radioButtonViewEntry>
              <checkBoxViewEntry>
                <OTChoiceViewConfig objectClass="org.concord.otrunk.ui.OTChoice"
                  viewClass="org.concord.otrunk.ui.swing.OTChoiceCheckBoxView"
                  useViewsAsChoices="true" />
              </checkBoxViewEntry>
            </OTChoiceViewConfig>
          </viewEntries>
          <modes>
            <OTViewMode name="print">
              <map>
                <entry key="4241CB93-84DF-49DA-B614-CA482CABF68B">
                  <object refid="${user_question_print_view}" />
                </entry>
              </map>
            </OTViewMode>
          </modes>
        </OTViewBundle>
        <OTScriptEngineBundle id="169E0E93-A9AE-4C10-A4FA-2F368B41CA92">
          <engines>
            <OTScriptEngineEntry objectClass="org.concord.otrunk.script.jruby.OTJRuby"
              engineClass="org.concord.otrunk.script.jruby.OTJRubyEngine" />
          </engines>
        </OTScriptEngineBundle>
      </bundles>
      <root>
        <OTMultiUserRoot local_id="multi_user_root"
          reportTemplateViewEntry="${report_main_view}">
          <userList>
            <!--
              the local_id is set so this can be used as a report template in
              the DIY

                            http://ri-itest.diy.concord.org/external_otrunk_activities/19/ot_learner_data.xml?users=464,455              
              http://ri-itest.diy.concord.org/external_otrunk_activities/22/ot_learner_data?users=49,55
              // list of students that have workgroup members
              http://ri-itest.diy.concord.org/external_otrunk_activities/22/ot_learner_data?users=1372%2C1374%2C1546%2C1825%2C1826%2C1828%2C1829%2C1830%2C1831%2C1832%2C1833%2C1834%2C1835%2C1836%2C1837%2C1838%2C1839%2C1840%2C1841%2C1869%2C1978%2C2037%2C2038%2C2039%2C2040%2C2507%2C2508%2C2509%2C2511%2C2512%2C2513%2C3488
              // example with images
              http://ri-itest.diy.concord.org/external_otrunk_activities/83/ot_learner_data?users=49%2C55%2C4510%2C4790%2C4791%2C4792
              // MCI 
              http://ri-itest.diy.concord.org/external_otrunk_activities/90/ot_learner_data.xml?users=455,1055,7505,7503,7501
            -->
            <OTIncludeRootObject local_id="external_user_list_url"
              href="http://ri-itest.diy.concord.org/external_otrunk_activities/83/ot_learner_data?users=49%2C55%2C4510%2C4790%2C4791%2C4792" />
          </userList>
          <reportTemplate>
            <!--
              the local_id is set so this can be used as a report template in
              the DIY
              
              ../activities/diffusion-active-trans/diffusion-active-trans-v1.otml
              http://svn.concord.org/svn/projects/trunk/ri-itest/activities/intro-to-modeling/intro-to-modeling-v1.otml
              // activity to go with lists of students with workgroup members
              http://svn.concord.org/svn/projects/trunk/ri-itest/activities/intro-to-modeling/intro-to-modeling-v1.otml
              // goes with example with images
              ../activities/proteins-nucleic/proteins-and-nucleic-v3.otml
              // MCI
              ../activities/MCI-chem/MCI-chem-v2.otml
            -->
            <OTIncludeRootObject local_id="external_activity_url"
              href="../activities/proteins-nucleic/proteins-and-nucleic-v3.otml" />
          </reportTemplate>
        </OTMultiUserRoot>
      </root>
      <library>
        <OTXHTMLScriptViewEntry local_id="template_report_view"
          objectClass="org.concord.framework.otrunk.OTObject" viewClass="org.concord.otrunk.script.ui.OTXHTMLScriptView">
          <script>
            <OTJRuby local_id="erb_controller" src="scripts/erb-template-runner.rb" />
          </script>
          <variables>
            <OTScriptVariable name="template">
              <reference>
                <OTBlob src="templates/full-report-main-view.html.erb" />
              </reference>
            </OTScriptVariable>
            <OTScriptVariable name="libraryScript">
              <reference>
                <OTBlob src="scripts/riit-multipage-report-library.rb" />
              </reference>
            </OTScriptVariable>
            <OTScriptVariable name="userQuestionView"
              reference="4241CB93-84DF-49DA-B614-CA482CABF68B" />
            <OTScriptVariable name="questionView" reference="${question_view}" />
            <OTScriptVariable name="questionReportView" reference="${question_report_view}" />
            <OTScriptVariable name="printButton" reference="${print_button}">
              <reference>
                <OTScriptButton local_id="print_button" text="Print"
                  alwaysReload="true">
                  <script>
                    <OTJRuby local_id="print_button_script" src="scripts/print-page.rb" />
                  </script>
                </OTScriptButton>
              </reference>
            </OTScriptVariable>
            <OTScriptVariable name="allUsersPrintButton">
              <reference>
                <OTScriptButton text="Print All Users"
                  alwaysReload="true" script="${print_button_script}">
                  <scriptVariables>
                    <OTScriptVariable name="printViewEntry"
                      reference="${all_users_print_view}" />
                  </scriptVariables>
                </OTScriptButton>
              </reference>
            </OTScriptVariable>
            <OTScriptVariable name="allUsersPdfButton">
              <reference>
                <OTScriptButton text="Save as PDF"
                  alwaysReload="true" script="${pdf_button_script}">
                  <scriptVariables>
                    <OTScriptVariable name="printViewEntry"
                      reference="${all_users_print_view}" />
                  </scriptVariables>
                </OTScriptButton>
              </reference>
            </OTScriptVariable>
            <OTScriptVariable name="filterButton">
              <reference>
                <OTScriptButton text="Update List"
                  alwaysReload="true" script="${filter_button_script}"/>
              </reference>
            </OTScriptVariable>
            <OTScriptVariable name="minCompletionText" reference="${min_completion_text}"/>
            <OTScriptVariable name="reportQuestionFlags">
              <reference>
                <OTObjectSet/>
              </reference>
            </OTScriptVariable>
            <OTScriptVariable name="report_question_boolean_icon_view">
              <reference>
                <OTIconSwitcherViewConfig 
                    objectClass="org.concord.framework.otrunk.OTObject"
                    viewClass="org.concord.otrunk.ui.OTIconSwitcherView"
                    property="value" showUnset="false">
                  <icons>
                       <OTImage imageBytes="images/ok.png"/>
                      <OTImage imageBytes="images/cancel.png"/>
                    </icons>
                    <values>
                    <OTBoolean name="Show in report" value="true" />
                    <OTBoolean name="Hide in report" value="false" />
                    </values>
                </OTIconSwitcherViewConfig>
              </reference>
            </OTScriptVariable>
            <OTScriptVariable name="reportPrintTable">
              <reference>
                <OTBoolean/>
              </reference>
            </OTScriptVariable>
          </variables>
        </OTXHTMLScriptViewEntry>
        <OTXHTMLScriptViewEntry local_id="report_main_view"
          template="${template_report_view}" objectClass="org.concord.framework.otrunk.OTObject"
          viewClass="org.concord.otrunk.script.ui.OTXHTMLScriptView">
          <variables>
            <OTScriptVariable name="template">
              <reference>
                <OTBlob src="templates/full-report-main-view.html.erb" />
              </reference>
            </OTScriptVariable>
          </variables>
        </OTXHTMLScriptViewEntry>
        <OTXHTMLScriptViewEntry id="4241CB93-84DF-49DA-B614-CA482CABF68B"
          template="${template_report_view}" objectClass="org.concord.framework.otrunk.OTObject"
          viewClass="org.concord.otrunk.script.ui.OTXHTMLScriptView">
          <variables>
            <OTScriptVariable name="template">
              <reference>
                <OTBlob src="templates/user-question-view.html.erb" />
              </reference>
            </OTScriptVariable>
          </variables>
        </OTXHTMLScriptViewEntry>
        <OTXHTMLScriptViewEntry local_id="user_question_print_view"
          template="${template_report_view}" objectClass="org.concord.framework.otrunk.OTObject"
          viewClass="org.concord.otrunk.script.ui.OTXHTMLScriptView">
          <variables>
            <OTScriptVariable name="template">
              <reference>
                <OTBlob src="templates/user-question-view.html.erb" />
              </reference>
            </OTScriptVariable>
            <OTScriptVariable name="printing" reference="${true}" />
          </variables>
        </OTXHTMLScriptViewEntry>
        <OTXHTMLScriptViewEntry local_id="all_users_print_view"
          template="${template_report_view}" objectClass="org.concord.framework.otrunk.OTObject"
          viewClass="org.concord.otrunk.script.ui.OTXHTMLScriptView">
          <variables>
            <OTScriptVariable name="template">
              <reference>
                <OTBlob src="templates/all-users-print-view.html.erb" />
              </reference>
            </OTScriptVariable>
          </variables>
        </OTXHTMLScriptViewEntry>
        <OTXHTMLScriptViewEntry local_id="question_view"
          template="${template_report_view}" objectClass="org.concord.framework.otrunk.OTObject"
          viewClass="org.concord.otrunk.script.ui.OTXHTMLScriptView">
          <variables>
            <OTScriptVariable name="template">
              <reference>
                <OTBlob src="templates/question-view.html.erb" />
              </reference>
            </OTScriptVariable>
          </variables>
        </OTXHTMLScriptViewEntry>
        <OTXHTMLScriptViewEntry local_id="question_report_view"
          template="${template_report_view}" objectClass="org.concord.framework.otrunk.OTObject"
          viewClass="org.concord.otrunk.script.ui.OTXHTMLScriptView">
          <variables>
            <OTScriptVariable name="template">
              <reference>
                <OTBlob src="templates/question-report-view.html.erb" />
              </reference>
            </OTScriptVariable>
          </variables>
        </OTXHTMLScriptViewEntry>
        <OTXHTMLScriptViewEntry local_id="report_csv_view"
          id="ECB7DB3A-3EF5-425D-B679-1DAD54E2BFCD" template="${template_report_view}"
          objectClass="org.concord.framework.otrunk.OTObject" viewClass="org.concord.otrunk.script.ui.OTXHTMLScriptView">
          <variables>
            <OTScriptVariable name="template">
              <reference>
                <OTBlob src="templates/full-report-csv-view.html.erb" />
              </reference>
            </OTScriptVariable>
          </variables>
        </OTXHTMLScriptViewEntry>
        <OTBoolean local_id="true" value="true" />
        <OTText local_id="min_completion_text" columns="3" fontSize="12" text="1"/>
        <OTJRuby local_id="pdf_button_script" src="scripts/save-as-pdf.rb" />
        <OTJRuby local_id="filter_button_script" src="scripts/filter-button.rb" />
      </library>
    </OTSystem>
  </objects>
</otrunk>
