<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<div id="cores" class="clearfix empty">

  <div id="ui-block">&nbsp;</div>

  <div id="frame">

    <div id="actions" class="actions clearfix">
      
      <button id="add" class="action"><span>Add Core</span></button>
      <button id="unload" class="warn requires-core"><span>Unload</span></button>
      <button id="rename" class="action requires-core"><span>Rename</span></button>
      <button id="swap" class="action requires-core"><span>Swap</span></button>
      <button id="reload" class="requires-core"><span>Reload</span></button>
      <button id="optimize" class="requires-core"><span>Optimize</span></button>

      <div class="action add" data-rel="add">

        <form>

          <input type="hidden" name="action" value="CREATE">

          <p class="clearfix"><label for="add_name">name:</label>
          <input type="text" name="name" id="add_name" value="new_core"></p>

          <p class="clearfix"><label for="add_instanceDir">instanceDir:</label>
          <input type="text" name="instanceDir" id="add_instanceDir" value="new_core"></p>

          <p class="clearfix"><label for="add_dataDir">dataDir:</label>
          <input type="text" name="dataDir" id="dataDir" value="data"></p>

          <p class="clearfix"><label for="add_config">config:</label>
          <input type="text" name="config" id="add_config" value="solrconfig.xml"></p>

          <p class="clearfix"><label for="add_schema">schema:</label>
          <input type="text" name="schema" id="add_schema" value="schema.xml"></p>

          <div class="cloud">

            <p class="clearfix"><label for="add_collection">collection:</label>
            <input type="text" name="collection" id="add_collection"></p>

            <p class="clearfix"><label for="add_shard">shard:</label>
            <input type="text" name="shard" id="shard"></p>

          </div>

          <p class="clearfix note directory-note">

            <span><code>instanceDir</code> and <code>dataDir</code> need to exist before you can create the core</span>

          </p>

          <p class="clearfix note error">

            <span></span>

          </p>

          <p class="clearfix buttons">
            <button type="submit" class="submit"><span>Add Core</span></button>
            <button type="reset" class="reset"><span>Cancel</span></button>
          </p>

        </form>

      </div>

      <div class="action rename" data-rel="rename">

        <form>

          <input type="hidden" name="action" value="RENAME">
          <input type="hidden" name="core" data-core="current">

          <p class="clearfix"><label for="rename_other">New Name:</label>
          <input type="text" name="other" data-core="current" id="rename_other"></p>

          <p class="clearfix buttons">
            <button type="submit" class="submit"><span>Rename Core</span></button>
            <button type="reset" class="reset"><span>Cancel</span></button>
          </p>

        </form>

      </div>

      <div class="action swap" data-rel="swap">

        <form>

          <input type="hidden" name="action" value="SWAP">

          <p class="clearfix"><label for="swap_core">this:</label>
          <input type="text" id="swap_core" name="core" data-core="current" readonly="readonly"></p>

          <p class="clearfix"><label for="swap_other">and:</label>
          <select name="other" id="swap_other" name="other" class="other">
          </select></p>

          <p class="clearfix buttons">
            <button type="submit" class="submit"><span>Swap Cores</span></button>
            <button type="reset" class="reset"><span>Cancel</span></button>
          </p>

        </form>

      </div>

    </div>

    <div id="data" class="requires-core">

      <div class="block" id="core-data">

          <h2><span>Core</span></h2>
          
          <div class="message-container">
              <div class="message"></div>
          </div>

          <div class="content">

          <ul>

            <li class="startTime"><dl class="clearfix">
              <dt><span>startTime:</span></dt>
                <dd class="timeago"></dd>
            </dl></li>

            <li class="instanceDir"><dl class="clearfix">
              <dt><span>instanceDir:</span></dt>
                <dd></dd>
            </dl></li>

            <li class="dataDir"><dl class="clearfix">
              <dt><span>dataDir:</span></dt>
                <dd></dd>
            </dl></li>
        
          </ul>
        
        </div>
      </div>

      <div class="block" id="index-data">

          <h2><span>Index</span></h2>
          
          <div class="message-container">
              <div class="message"></div>
          </div>

          <div class="content">
          
          <ul>

            <li class="lastModified"><dl class="clearfix">
              <dt><span>lastModified:</span></dt>
                <dd class="timeago"></dd>
            </dl></li>

            <li class="version"><dl class="clearfix">
              <dt><span>version:</span></dt>
                <dd></dd>
            </dl></li>

            <li class="numDocs"><dl class="clearfix">
              <dt><span>numDocs:</span></dt>
                <dd></dd>
            </dl></li>

            <li class="maxDoc"><dl class="clearfix">
              <dt><span>maxDoc:</span></dt>
                <dd></dd>
            </dl></li>

            <li class="deletedDocs"><dl class="clearfix">
              <dt><span>deletedDocs:</span></dt>
                <dd></dd>
            </dl></li>

            <li class="optimized"><dl class="clearfix">
              <dt><span>optimized:</span></dt>
                <dd class="ico"><span></span></dd>
            </dl></li>

            <li class="current"><dl class="clearfix">
              <dt><span>current:</span></dt>
                <dd class="ico"><span></span></dd>
            </dl></li>

            <li class="directory"><dl class="clearfix">
              <dt><span>directory:</span></dt>
                <dd></dd>
            </dl></li>
          
          </ul>
        
        </div>
      </div>

    </div>
  
  </div>

  <div id="navigation" class="requires-core clearfix">
  
  </div>

</div>
