<commit_before><div xmlns:h="http://java.sun.com/jsf/html"
  xmlns:a4j="http://richfaces.org/a4j"
  xmlns:nxu="http://nuxeo.org/nxweb/util"
  xmlns:nxd="http://nuxeo.org/nxweb/document"
  xmlns:ui="http://java.sun.com/jsf/facelets"
  xmlns:f="http://java.sun.com/jsf/core"
  xmlns:c="http://java.sun.com/jstl/core">

  <a4j:outputPanel id="connectAppListing" layout="block">

    <div class="actionBar marketplace">
      <span class="marketplaceLogo">
        <a target="_blank" href="//doc.nuxeo.com/x/EIAV">
          <img src="#{contextPath}/img/nuxeo_studio_logo.png"
            alt="Nuxeo Studio" />
        </a>
      </span>
      <span>
        <a target="_blank" href="//doc.nuxeo.com/x/EIAV"
          class="connectLink">
          <h:outputText value="#{messages['label.tab.studio.intro']}"/>
        </a>
      </span>
    </div>

    <div class="actionBar">

      <div class="studioUpdateActions">
        <h:outputText value="#{messages['label.studio.devmod.title']}"
          styleClass="boldLabel" />
      </div>

      <div class="studioUpdateActions">
        <h:outputText value="#{messages['label.studio.devmod.desc']}" escape="false" />
      </div>

      <div class="studioUpdateActions">
        <table width="100%">
          <tr>
            <td width="70%">

              <h:outputText value="#{messages['label.studio.update.lastStatus']} "/>
              <h:outputText value="#{appsViews.getStudioInstallationStatus()}" styleClass="boldLabel"/>

              <c:if test="#{connectServerReachable and registredConnectInstance}">

                <h:form id="updateStudioSnapshotForm">
                  <h:commandButton
                    id="updateStudioButton"
                    value="#{messages['admCommand.studio.update']}"
                    action="#{appsViews.installStudioSnapshotAndRedirect()}"
                    onclick="showUpdateInProgress();"
                    styleClass="button">
                    <nxu:actionListenerMethod
                      value="#{appsViews.setValidateStudioSnapshot(true)}" />
                  </h:commandButton>
                  <div style="display:none">
                    <div id="studioBigUpdateWaiter" class="textAlignC">
                      <img src="#{contextPath}/img/big_loading.gif" />
                    </div>
                  </div>
                  <h:outputText value="#{messages['label.studio.update']}"/>
                </h:form>

                <nxu:set var="vstatus"
                  value="#{appsViews.studioSnapshotValidationStatus}"
                  cache="true">
                <c:if test="#{vstatus != null}">

                  <h:form>
                    <a4j:jsFunction name="validation_status_box_closeFancybox">
                      <nxu:actionListenerMethod
                        value="#{appsViews.resetStudioSnapshotValidationStatus()}" />
                    </a4j:jsFunction>
                  </h:form>

                  <script>
                    jQuery(document).ready(function() {
                      openFancyBox('#validation_status_box', {
                          onClosed: validation_status_box_closeFancybox
                        });
                    });
                  </script>

                  <div style="display:none">
                    <div id="validation_status_box">
                      <h3>#{messages['label.studio.update.validation.errorTitle']}</h3>
                      <div class="content">
                        <div>
                          <h:outputText value="#{appsViews.getStudioInstallationStatus()}" styleClass="boldLabel"/>
                        </div>
                        <c:if test="#{not empty vstatus.errors}">
                          <h5>
                            <h:outputText value="#{messages['label.studio.update.lastStatus.errors']}" />
                          </h5>
                          <ul class="visibleList">
                            <c:forEach var="error" items="#{vstatus.errors}">
                              <li><h:outputText value="#{error}" escape="false" /></li>
                            </c:forEach>
                          </ul>
                          <br />
                        </c:if>
                        <c:if test="#{not empty vstatus.warnings}">
                          <h5>
                            <h:outputText value="#{messages['label.studio.update.lastStatus.warnings']}" />
                          </h5>
                          <ul class="visibleList">
                            <c:forEach var="warn" items="#{vstatus.warnings}">
                              <li><h:outputText value="#{warn}" escape="false" /></li>
                            </c:forEach>
                          </ul>
                        </c:if>

                        <p class="buttonsGadget">
                          <h:form id="updateStudioSnapshotValidationErrorForm">
                            <h:commandButton
                              id="updateStudioAnywayButton"
                              value="#{messages['admCommand.studio.updateAnyway']}"
                              action="#{appsViews.installStudioSnapshotAndRedirect()}"
                              onclick="showUpdateInProgress();"
                              styleClass="button">
                              <nxu:actionListenerMethod
                                value="#{appsViews.setValidateStudioSnapshot(false)}" />
                            </h:commandButton>
                            <a4j:commandButton styleClass="button"
                              value="#{messages['command.cancel']}"
                              oncomplete="jQuery.fancybox.close();" />
                          </h:form>
                        </p>
                      </div>

                    </div>
                  </div>

                </c:if>
                </nxu:set>

              </c:if>
              <c:if test="#{not connectServerReachable or not registredConnectInstance}">
                <h:outputText value="#{messages['label.studio.cannotUpdate']}"/>
              </c:if>
            </td>
            <td style="text-align:center;vertical-align:middle">
              <c:if test="#{connectServerReachable and registredConnectInstance}">
                <a target="studio" href="#{nuxeoConnectUrl}studio/ide"><commit_msg>NXP-15730: Fix validation popup look when updating Studio snapshot<commit_after><div xmlns:h="http://java.sun.com/jsf/html"
  xmlns:a4j="http://richfaces.org/a4j"
  xmlns:nxu="http://nuxeo.org/nxweb/util"
  xmlns:nxd="http://nuxeo.org/nxweb/document"
  xmlns:ui="http://java.sun.com/jsf/facelets"
  xmlns:f="http://java.sun.com/jsf/core"
  xmlns:c="http://java.sun.com/jstl/core">

  <a4j:outputPanel id="connectAppListing" layout="block">

    <div class="actionBar marketplace">
      <span class="marketplaceLogo">
        <a target="_blank" href="//doc.nuxeo.com/x/EIAV">
          <img src="#{contextPath}/img/nuxeo_studio_logo.png"
            alt="Nuxeo Studio" />
        </a>
      </span>
      <span>
        <a target="_blank" href="//doc.nuxeo.com/x/EIAV"
          class="connectLink">
          <h:outputText value="#{messages['label.tab.studio.intro']}"/>
        </a>
      </span>
    </div>

    <div class="actionBar">

      <div class="studioUpdateActions">
        <h:outputText value="#{messages['label.studio.devmod.title']}"
          styleClass="boldLabel" />
      </div>

      <div class="studioUpdateActions">
        <h:outputText value="#{messages['label.studio.devmod.desc']}" escape="false" />
      </div>

      <div class="studioUpdateActions">
        <table width="100%">
          <tr>
            <td width="70%">

              <h:outputText value="#{messages['label.studio.update.lastStatus']} "/>
              <h:outputText value="#{appsViews.getStudioInstallationStatus()}" styleClass="boldLabel"/>

              <c:if test="#{connectServerReachable and registredConnectInstance}">

                <h:form id="updateStudioSnapshotForm">
                  <h:commandButton
                    id="updateStudioButton"
                    value="#{messages['admCommand.studio.update']}"
                    action="#{appsViews.installStudioSnapshotAndRedirect()}"
                    onclick="showUpdateInProgress();"
                    styleClass="button">
                    <nxu:actionListenerMethod
                      value="#{appsViews.setValidateStudioSnapshot(true)}" />
                  </h:commandButton>
                  <div style="display:none">
                    <div id="studioBigUpdateWaiter" class="textAlignC">
                      <img src="#{contextPath}/img/big_loading.gif" />
                    </div>
                  </div>
                  <h:outputText value="#{messages['label.studio.update']}"/>
                </h:form>

                <nxu:set var="vstatus"
                  value="#{appsViews.studioSnapshotValidationStatus}"
                  cache="true">
                <c:if test="#{vstatus != null}">

                  <h:form>
                    <a4j:jsFunction name="validation_status_box_closeFancybox">
                      <nxu:actionListenerMethod
                        value="#{appsViews.resetStudioSnapshotValidationStatus()}" />
                    </a4j:jsFunction>
                  </h:form>

                  <script>
                    jQuery(document).ready(function() {
                      openFancyBox('#validation_status_box', {
                          onClosed: validation_status_box_closeFancybox
                        });
                    });
                  </script>

                  <div style="display:none">
                    <div id="validation_status_box">
                      <h3>#{messages['label.studio.update.validation.errorTitle']}</h3>
                      <div class="content">
                        <div>
                          <h:outputText value="#{appsViews.getStudioInstallationStatus()}" styleClass="boldLabel"/>
                        </div>
                        <c:if test="#{not empty vstatus.errors}">
                          <h5>
                            <h:outputText value="#{messages['label.studio.update.lastStatus.errors']}" />
                          </h5>
                          <ul class="visibleList">
                            <c:forEach var="error" items="#{vstatus.errors}">
                              <li><h:outputText value="#{error}" escape="false" /></li>
                            </c:forEach>
                          </ul>
                          <br />
                        </c:if>
                        <c:if test="#{not empty vstatus.warnings}">
                          <h5>
                            <h:outputText value="#{messages['label.studio.update.lastStatus.warnings']}" />
                          </h5>
                          <ul class="visibleList">
                            <c:forEach var="warn" items="#{vstatus.warnings}">
                              <li><h:outputText value="#{warn}" escape="false" /></li>
                            </c:forEach>
                          </ul>
                        </c:if>

                        <h:form id="updateStudioSnapshotValidationErrorForm">
                          <p class="buttonsGadget">
                            <h:commandButton
                              id="updateStudioAnywayButton"
                              value="#{messages['admCommand.studio.updateAnyway']}"
                              action="#{appsViews.installStudioSnapshotAndRedirect()}"
                              onclick="showUpdateInProgress();"
                              styleClass="button">
                              <nxu:actionListenerMethod
                                value="#{appsViews.setValidateStudioSnapshot(false)}" />
                            </h:commandButton>
                            <a4j:commandButton styleClass="button"
                              value="#{messages['command.cancel']}"
                              oncomplete="jQuery.fancybox.close();" />
                          </p>
                        </h:form>
                      </div>

                    </div>
                  </div>

                </c:if>
                </nxu:set>

              </c:if>
              <c:if test="#{not connectServerReachable or not registredConnectInstance}">
                <h:outputText value="#{messages['label.studio.cannotUpdate']}"/>
              </c:if>
            </td>
            <td style="text-align:center;vertical-align:middle">
              <c:if test="#{connectServerReachable and registredConnectInstance}">
                <a target="studio" href="#{nuxeoConnectUrl}studio/ide">
{'fraction_non_alphanumeric': 0.1388130702643687, 'fraction_numerical': 0.0030414099664665055, 'mean_word_length': 1.3783382789317506, 'pattern_counts': {'":': 0, '<': 207, '<?xml version=': 0, '>': 207, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 14}, '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': '4446831', 'n_tokens_mistral': 3472, 'n_tokens_neox': 3268, 'n_words': 417}