Newer
Older
GitBucket / src / main / twirl / gitbucket / core / dashboard / sidebar.scala.html
@Naoki Takezoe Naoki Takezoe on 17 Dec 2016 2 KB (refs #1370)Search repository by name
@(recentRepositories: List[gitbucket.core.service.RepositoryService.RepositoryInfo],
  userRepositories: List[gitbucket.core.service.RepositoryService.RepositoryInfo])(body: Html)(implicit context: gitbucket.core.controller.Context)
@import gitbucket.core.view.helpers
<div class="main-sidebar">
  <div class="sidebar">
  <ul class="nav sidebar-menu">
  @if(context.loginAccount.isDefined){
    <li class="header">
      <span class="label label-primary pull-right">@userRepositories.size</span>
      Your repositories
    </li>
    @if(userRepositories.isEmpty){
      <li>No repositories</li>
    } else {
      <li><form class="sidebar-form"><input type="text" id="filter-box" class="form-control input-sm" placeholder="Find repository"/></form></li>
      @userRepositories.zipWithIndex.map { case (repository, i) =>
        <li class="repo-link">
          @if(repository.owner == context.loginAccount.get.userName){
            <a href="@helpers.url(repository)">@gitbucket.core.helper.html.repositoryicon(repository, false) <span class="strong">@repository.name</span></a>
          } else {
            <a href="@helpers.url(repository)">@gitbucket.core.helper.html.repositoryicon(repository, false) @repository.owner/<span class="strong">@repository.name</span></a>
          }
        </li>
      }
    }
  } else {
    <li class="header">Recent updated repositories</li>
    @if(recentRepositories.isEmpty){
      <li>No repositories</li>
    } else {
      <li><form class="sidebar-form"><input type="text" id="filter-box" class="form-control input-sm" placeholder="Find repository"/></form></li>
      @recentRepositories.zipWithIndex.map { case (repository, i) =>
        <li class="repo-link">
          <a href="@helpers.url(repository)">@gitbucket.core.helper.html.repositoryicon(repository, false) @repository.owner/<span class="strong">@repository.name</span></a>
        </li>
      }
    }
  }
  </ul>
  </div>
</div>
<div class="content-wrapper">
  <div class="content body">
    @body
  </div>
</div>
<script>
$(function(){
  $('#filter-box').keyup(function(){
    var inputVal = $('#filter-box').val();
    $.each($('li.repo-link a'), function(index, elem) {
      console.log(inputVal);
      console.log(elem.text.trim());
      console.log(elem.text.trim().lastIndexOf(inputVal, 0));
      if (!inputVal || !elem.text.trim() || elem.text.trim().indexOf(inputVal) >= 0) {
        $(elem).parent().show();
      } else {
        $(elem).parent().hide();
      }
    });
  });
  $('form.sidebar-form').submit(function () {
    return false;
  });
});
</script>