<div class="setup-trigger-directive-element">

  <!-- Modal message dialog -->
  <div class="modal fade" id="setupTriggerModal">
    <div class="modal-dialog">
      <div class="modal-content">
        <div class="modal-header">
          <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
          <h4 class="modal-title">Setup new build trigger</h4>
        </div>
        <div class="modal-body" ng-show="currentView == 'activating'">
          <span class="quay-spinner"></span> Setting up trigger...
        </div>
        <div class="modal-body" ng-show="currentView != 'activating'">
          <!-- Trigger-specific setup -->
          <div class="trigger-description-element trigger-option-section" ng-switch on="trigger.service">
            <div ng-switch-when="github">
              <div class="trigger-setup-github" repository="repository" trigger="trigger"
                   next-step-counter="nextStepCounter" current-step-valid="state.stepValid"
                   analyze="checkAnalyze(isValid)"></div>
            </div>
          </div>

          <!-- Loading pull information -->
          <div ng-show="currentView == 'analyzing'">
            <span class="quay-spinner"></span> Checking pull credential requirements...
          </div>

          <!-- Pull information -->
          <div class="trigger-option-section" ng-show="currentView == 'analyzed'">

            <!-- Messaging -->
            <div class="alert alert-danger" ng-if="pullInfo.analysis.status == 'error'">
              {{ pullInfo.analysis.message }}
            </div>
            <div class="alert alert-warning" ng-if="pullInfo.analysis.status == 'warning'">
              {{ pullRequirements.message }}
            </div>
            <div class="dockerfile-found" ng-if="pullInfo.analysis.is_public === false">
              <div class="dockerfile-found-content">
                A robot account is <strong>required</strong> for this build trigger because

                the
                <a href="{{ pullInfo.analysis.dockerfile_url }}" ng-if="pullInfo.analysis.dockerfile_url" target="_blank">
                  Dockerfile found
                </a>
                <span ng-if="!pullInfo.analysis.dockerfile_url">Dockerfile found</span>

                pulls from the private <span class="registry-name"></span> repository

                <a href="/repository/{{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}" target="_blank">
                  {{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}
                </a>
              </div>
            </div>

            <div style="margin-bottom: 12px">Please select the credentials to use when pulling the base image:</div>
            <div ng-if="!isNamespaceAdmin(repository.namespace)" style="color: #aaa;">
              <strong>Note:</strong> In order to set pull credentials for a build trigger, you must be an
              Administrator of the namespace <strong>{{ repository.namespace }}</strong>
            </div>

            <!-- Namespace admin -->
            <div ng-show="isNamespaceAdmin(repository.namespace)">
              <!-- Select credentials -->
              <div class="btn-group btn-group-sm">
                <button type="button" class="btn btn-default"
                        ng-class="pullInfo.is_public ? 'active btn-info' : ''"
                        ng-click="pullInfo.is_public = true">
                  None
                </button>
                <button type="button" class="btn btn-default"
                        ng-class="pullInfo.is_public ? '' : 'active btn-info'"
                        ng-click="pullInfo.is_public = false">
                  <i class="fa fa-wrench"></i>
                  Robot account
                </button>
              </div>

              <!-- Robot Select -->
              <div ng-show="!pullInfo.is_public" style="margin-top: 10px">
                <div class="entity-search" namespace="repository.namespace"
                     placeholder="'Select robot account for pulling...'"
                     current-entity="pullInfo.pull_entity"
                     allowed-entities="['robot']"></div>

                <div ng-if="pullInfo.analysis.robots.length" style="margin-top: 20px; margin-bottom: 0px;">
                  <strong>Note</strong>: We've automatically selected robot account
                  <span class="entity-reference" entity="pullInfo.analysis.robots[0]"></span>,
                  since it has access to the private repository.
                </div>
                <div ng-if="!pullInfo.analysis.robots.length && pullInfo.analysis.name"
                     style="margin-top: 20px; margin-bottom: 0px;">
                  <strong>Note</strong>: No robot account currently has access to the private repository. Please create one and/or assign access in the
                  <a href="/repository/{{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}/admin" target="_blank">
                    repository's admin panel.
                  </a>
                </div>
              </div>
            </div>

          </div>

        </div>
        <div class="modal-footer">
          <button type="button" class="btn btn-primary" ng-disabled="!state.stepValid"
                  ng-click="nextStepCounter = nextStepCounter + 1"
                  ng-show="currentView == 'config'">Next</button>

          <button type="button" class="btn btn-primary"
                  ng-disabled="!trigger.$ready || (!pullInfo['is_public'] && !pullInfo['pull_entity'])"
                  ng-click="activate()"
                  ng-show="currentView == 'analyzed'">Create Trigger</button>

          <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
        </div>
      </div><!-- /.modal-content -->
    </div><!-- /.modal-dialog -->
  </div><!-- /.modal -->
</div>