<commit_before>module Crucible
  module App
    class Html

      attr_accessor :stream
      attr_accessor :body
      attr_accessor :alt
      attr_accessor :pass
      attr_accessor :not_found
      attr_accessor :fail
      attr_accessor :skip

      def initialize(stream=nil)
        @stream = stream
        @body = ''
        @pass = 0
        @not_found = 0
        @fail = 0
        @skip = 0
      end

      # For a streaming IO
      def output(string)
        if @stream
          @stream << string
        else
          @body += string
        end
      end

      def open
        @body = ''
        output "<html>
          <head>
            <title>Crucible SMART-on-FHIR DSTU2 App</title>
            <link rel=\"stylesheet\" href=\"#{base_url}/css/pure-min.css\">
            <link rel=\"stylesheet\" href=\"#{base_url}/css/font.css\">
            <script src=\"//code.jquery.com/jquery-1.12.4.js\"></script>
            <script src=\"#{base_url}/jquery-ui-1.12.1.custom/jquery-ui.js\"></script>
            <script>
              $( function() {
                $( \"#accordion\" ).accordion({
                  collapsible: true,
                  heightStyle: \"content\",
                  active: -1
                });
              } );
            </script>
            <style>
              html {
                color: #333333;
              }
              header {
                margin-bottom: 30px;
              }
              h3 {
                background-color: #FFF;
                color: #4A6E98;
                display: block;
                font-size: 18px;
                border: 1px solid #4A6E98;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              table {
                border-collapse: collapse;
                font-size: 14px;
              }
              th {
                font-weight: bold;
              }
              tr {
                background-color: #FFF;
                color: #000;
              }
              p, ul, ol {
                font-size: 14px;
              }
              span.pass {
                color: #008000;
              }
              span.not_found {
                color: #FF4500;
              }
              span.skip {
                color: #0000FF;
              }
              span.fail {
                color: #B22222;
              }
              input {
                margin-top: 10px;
                margin-bottom: 10px;
              }
              input[type=button], input[type=submit], input[type=reset] {
                background-color: #B74C18;
                color: #FFF;
                border: 1px solid #B74C18;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              input[type=button]:hover, input[type=submit]:hover, input[type=reset]:hover {
                background-color: #FFF;
                color: #B74C18;
                border: 1px solid #B74C18;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              #accordion .ui-accordion-header {
                background-color: #FFF;
                color: #4A6E98;
                display: block;
                font-size: 18px;
                border: 1px solid #4A6E98;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              #accordion .ui-accordion-header:hover {
                background-color: #4A6E98;
                color: #FFF;
                display: block;
                font-size: 18px;
                border: 1px solid #4A6E98;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              #accordion .ui-accordion-content {
                background-color: #FFF;
                color: #000;
                font-size: 14px;
              }
            </style>
            <script>
              var scrollToBottom = function() {
                window.scrollTo(0, document.body.scrollHeight);
              }
              var intervalID = setInterval(scrollToBottom, 200);
            </script>
          </head>
          <body>
            <header>
              <div class=\"container\">
                <div class=\"navbar-header\">
                  <button class=\"navbar-toggle collapsed\" type=\"button\" data-toggle=\"collapse\" data-target=\".bs-navbar-collapse\">
                    <span class=\"sr-only\">Toggle navigation</span>
                    <span class=\"icon-bar\"></span>
                    <span class=\"icon-bar\"></span>
                    <span class=\"icon-bar\"></span>
                  </button>
                  <a href=\"https://projectcrucible.org\" class=\"navbar-brand\">CRUCIBLE</a>
                </div>
                <nav class=\"collapse navbar-collapse\">
                  <ul class=\"nav navbar-nav pull-right\">
                    <li><a href=\"https://projectcrucible.org\" class=\"navButton\">Server Test</a></li>
                    <li><a href=\"https://projectcrucible.org/scorecard\" class=\"navButton\">Scorecard</a></li>
                    <li><a href=\"https://projectcrucible.org/testdata\" class=\"navButton\">Test Data</a></li>
                    <li><a href=\"/\" class=\"navButton\">SMART on FHIR</a></li>
                    <li><a href=\"https://beta.projectcrucible.org\" class=\"navButton\">DSTU2 Version</a></li>
                    <li class=\"dropdown\">
                      <a href=\"#\" class=\"navButton\" data-toggle=\"dropdown\" id=\"contact-drop\" role=\"button\" aria-haspopup=\"true\" aria-expanded=\"false\">Contact Us<span class=\"caret\"></span></a>
                      <ul class=\"dropdown-menu\" aria-labelledby=\"contact-drop\">
                        <li><a class=\"navButton\" href=\"mailto:<EMAIL>?subject=Crucible\">Email Us</a></li>
                        <li><a class=\"navButton\" target=\"_blank\" href=\"https://chat.fhir.org/#narrow/stream/crucible\">FHIR Chat</a></li>
                        <li><a class=\"navButton\" target=\"_blank\" href=\"https://github.com/fhir-crucible/crucible/issues\">Log an issue</a></li>
                      </ul>
                    </li>
                  </ul>
                </nav>
              </div>
            </header>
            <h1>SMART-on-<span style=\"color: #B74C18\">FHIR</span></h1>
            <div>
              <p>Crucible SMART App is a <a href=\"http://smarthealthit.org/smart-on-fhir/\" target=\"_blank\">SMART-on-FHIR App</a> that executes a series of tests against an HL7® FHIR® Server.</p>
              <p>These tests focus on <a href=\"http://hl7.org/fhir/DSTU2/index.html\" target=\"_blank\">FHIR DSTU2</a> and in particular the <a href=\"http://hl7.org/fhir/DSTU2/daf/daf.html\" target=\"_blank\">DAF Implementation Guide</a> and <a href=\"http://hl7.org/fhir/DSTU2/argonaut/argonaut.html\" target=\"_blank\">Argonauts</a> Use-Cases.</p>
            </div>
            <div id=\"accordion\">"
        self
      end

      def close
        output '</div>
          <script>
            window.clearInterval(intervalID);
            window.scrollTo(0, 0);
          </script>
          </body>
          </html>'<commit_msg>Add helper text box<commit_after>module Crucible
  module App
    class Html

      attr_accessor :stream
      attr_accessor :body
      attr_accessor :alt
      attr_accessor :pass
      attr_accessor :not_found
      attr_accessor :fail
      attr_accessor :skip

      def initialize(stream=nil)
        @stream = stream
        @body = ''
        @pass = 0
        @not_found = 0
        @fail = 0
        @skip = 0
      end

      # For a streaming IO
      def output(string)
        if @stream
          @stream << string
        else
          @body += string
        end
      end

      def open
        @body = ''
        output "<html>
          <head>
            <title>Crucible SMART-on-FHIR DSTU2 App</title>
            <link rel=\"stylesheet\" href=\"#{base_url}/css/pure-min.css\">
            <link rel=\"stylesheet\" href=\"#{base_url}/css/font.css\">
            <script src=\"//code.jquery.com/jquery-1.12.4.js\"></script>
            <script src=\"#{base_url}/jquery-ui-1.12.1.custom/jquery-ui.js\"></script>
            <script>
              $( function() {
                $( \"#accordion\" ).accordion({
                  collapsible: true,
                  heightStyle: \"content\",
                  active: -1
                });
              } );
            </script>
            <style>
              html {
                color: #333333;
              }
              header {
                margin-bottom: 30px;
              }
              h3 {
                background-color: #FFF;
                color: #4A6E98;
                display: block;
                font-size: 18px;
                border: 1px solid #4A6E98;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              table {
                border-collapse: collapse;
                font-size: 14px;
              }
              th {
                font-weight: bold;
              }
              tr {
                background-color: #FFF;
                color: #000;
              }
              p, ul, ol {
                font-size: 14px;
              }
              span.pass {
                color: #008000;
              }
              span.not_found {
                color: #FF4500;
              }
              span.skip {
                color: #0000FF;
              }
              span.fail {
                color: #B22222;
              }
              input {
                margin-top: 10px;
                margin-bottom: 10px;
              }
              input[type=button], input[type=submit], input[type=reset] {
                background-color: #B74C18;
                color: #FFF;
                border: 1px solid #B74C18;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              input[type=button]:hover, input[type=submit]:hover, input[type=reset]:hover {
                background-color: #FFF;
                color: #B74C18;
                border: 1px solid #B74C18;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              #accordion .ui-accordion-header {
                background-color: #FFF;
                color: #4A6E98;
                display: block;
                font-size: 18px;
                border: 1px solid #4A6E98;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              #accordion .ui-accordion-header:hover {
                background-color: #4A6E98;
                color: #FFF;
                display: block;
                font-size: 18px;
                border: 1px solid #4A6E98;
                border-radius: 5px;
                padding: 10px;
                padding-bottom: 7px;
              }
              #accordion .ui-accordion-content {
                background-color: #FFF;
                color: #000;
                font-size: 14px;
              }
            </style>
            <script>
              var scrollToBottom = function() {
                window.scrollTo(0, document.body.scrollHeight);
              }
              var intervalID = setInterval(scrollToBottom, 200);
            </script>
          </head>
          <body>
            <header>
              <div class=\"container\">
                <div class=\"navbar-header\">
                  <button class=\"navbar-toggle collapsed\" type=\"button\" data-toggle=\"collapse\" data-target=\".bs-navbar-collapse\">
                    <span class=\"sr-only\">Toggle navigation</span>
                    <span class=\"icon-bar\"></span>
                    <span class=\"icon-bar\"></span>
                    <span class=\"icon-bar\"></span>
                  </button>
                  <a href=\"https://projectcrucible.org\" class=\"navbar-brand\">CRUCIBLE</a>
                </div>
                <nav class=\"collapse navbar-collapse\">
                  <ul class=\"nav navbar-nav pull-right\">
                    <li><a href=\"https://projectcrucible.org\" class=\"navButton\">Server Test</a></li>
                    <li><a href=\"https://projectcrucible.org/scorecard\" class=\"navButton\">Scorecard</a></li>
                    <li><a href=\"https://projectcrucible.org/testdata\" class=\"navButton\">Test Data</a></li>
                    <li><a href=\"/\" class=\"navButton\">SMART on FHIR</a></li>
                    <li><a href=\"https://beta.projectcrucible.org\" class=\"navButton\">DSTU2 Version</a></li>
                    <li class=\"dropdown\">
                      <a href=\"#\" class=\"navButton\" data-toggle=\"dropdown\" id=\"contact-drop\" role=\"button\" aria-haspopup=\"true\" aria-expanded=\"false\">Contact Us<span class=\"caret\"></span></a>
                      <ul class=\"dropdown-menu\" aria-labelledby=\"contact-drop\">
                        <li><a class=\"navButton\" href=\"mailto:<EMAIL>?subject=Crucible\">Email Us</a></li>
                        <li><a class=\"navButton\" target=\"_blank\" href=\"https://chat.fhir.org/#narrow/stream/crucible\">FHIR Chat</a></li>
                        <li><a class=\"navButton\" target=\"_blank\" href=\"https://github.com/fhir-crucible/crucible/issues\">Log an issue</a></li>
                      </ul>
                    </li>
                  </ul>
                </nav>
              </div>
            </header>
            <h1>SMART-on-<span style=\"color: #B74C18\">FHIR</span></h1>
            <div class =\"well helper_text\">
              <p>Crucible SMART App is a <a href=\"http://smarthealthit.org/smart-on-fhir/\" target=\"_blank\">SMART-on-FHIR App</a> that executes a series of tests against an HL7® FHIR® Server.</p>
              <p>These tests focus on <a href=\"http://hl7.org/fhir/DSTU2/index.html\" target=\"_blank\">FHIR DSTU2</a> and in particular the <a href=\"http://hl7.org/fhir/DSTU2/daf/daf.html\" target=\"_blank\">DAF Implementation Guide</a> and <a href=\"http://hl7.org/fhir/DSTU2/argonaut/argonaut.html\" target=\"_blank\">Argonauts</a> Use-Cases.</p>
            </div>
            <div id=\"accordion\">"
        self
      end

      def close
        output '</div>
          <script>
            window.clearInterval(intervalID);
            window.scrollTo(0, 0);
          </script>
          </body>
          </html>'
{'fraction_non_alphanumeric': 0.1408080808080808, 'fraction_numerical': 0.020202020202020204, 'mean_word_length': 1.2011264265599526, 'pattern_counts': {'":': 0, '<': 217, '<?xml version=': 0, '>': 213, 'https://': 14, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1112437', 'n_tokens_mistral': 4463, 'n_tokens_neox': 4053, 'n_words': 779}