<h2 class="ui left floated medium header"> {{.i18n.Tr "explore.repos"}} </h2> <div class="ui right floated secondary filter menu"> <!-- Sort --> <div class="ui right dropdown type jump item"> <span class="text"> {{.i18n.Tr "repo.issues.filter_sort"}} <i class="dropdown icon"></i> </span> <div class="menu"> <a class="{{if eq .SortType "newest"}}active{{end}} item" href="{{$.Link}}?sort=newest&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.filter_sort.latest"}}</a> <a class="{{if eq .SortType "oldest"}}active{{end}} item" href="{{$.Link}}?sort=oldest&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.filter_sort.oldest"}}</a> <a class="{{if eq .SortType "alphabetically"}}active{{end}} item" href="{{$.Link}}?sort=alphabetically&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.label.filter_sort.alphabetically"}}</a> <a class="{{if eq .SortType "reversealphabetically"}}active{{end}} item" href="{{$.Link}}?sort=reversealphabetically&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.label.filter_sort.reverse_alphabetically"}}</a> <a class="{{if eq .SortType "recentupdate"}}active{{end}} item" href="{{$.Link}}?sort=recentupdate&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.filter_sort.recentupdate"}}</a> <a class="{{if eq .SortType "leastupdate"}}active{{end}} item" href="{{$.Link}}?sort=leastupdate&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.filter_sort.leastupdate"}}</a> <a class="{{if eq .SortType "moststars"}}active{{end}} item" href="{{$.Link}}?sort=moststars&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.filter_sort.moststars"}}</a> <a class="{{if eq .SortType "feweststars"}}active{{end}} item" href="{{$.Link}}?sort=feweststars&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.filter_sort.feweststars"}}</a> <a class="{{if eq .SortType "mostforks"}}active{{end}} item" href="{{$.Link}}?sort=mostforks&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.filter_sort.mostforks"}}</a> <a class="{{if eq .SortType "fewestforks"}}active{{end}} item" href="{{$.Link}}?sort=fewestforks&q={{$.Keyword}}&tab={{$.TabName}}">{{.i18n.Tr "repo.issues.filter_sort.fewestforks"}}</a> </div> </div> </div> <div class="ui clearing divider"></div> <div id="app" class="six wide column"> <repo-search :search-limit="searchLimit" :suburl="suburl" :uid="uid" :more-repos-link="'{{.ContextUser.HomeLink}}'" {{if not .ContextUser.IsOrganization}} :organizations="[ {{range .ContextUser.Orgs}} {name: '{{.Name}}', num_repos: '{{.NumRepos}}'}, {{end}} ]" :is-organization="false" :organizations-total-count="{{.ContextUser.GetOrganizationCount}}" :can-create-organization="{{.SignedUser.CanCreateOrganization}}" {{end}} inline-template v-cloak > <h4 class="ui top attached header"> {{.i18n.Tr "home.my_repos"}} <span class="ui grey label">${reposTotalCount}</span> {{if or (not .ContextUser.IsOrganization) .IsOrganizationOwner}} <div class="ui right"> <a class="poping up" :href="suburl + '/repo/create{{if .ContextUser.IsOrganization}}?org={{.ContextUser.ID}}{{end}}'" data-content="{{.i18n.Tr "new_repo"}}" data-variation="tiny inverted" data-position="left center"> <i class="plus icon"></i> <span class="sr-only">{{.i18n.Tr "new_repo"}}</span> </a> </div> {{end}} </h4> <div class="ui attached secondary segment repos-search"> <div class="ui fluid right action left icon input" :class="{loading: isLoading}"> <input @input="searchRepos(reposFilter)" v-model="searchQuery" ref="search" placeholder="{{.i18n.Tr "home.search_repos"}}"> <i class="search icon"></i> <div class="ui dropdown button" title="{{.i18n.Tr "home.filter"}}"> <i class="icon filter"></i> <div class="menu"> <div class="item"> <a @click="toggleArchivedFilter()"> <div class="ui checkbox" id="archivedFilterCheckbox" title="{{.i18n.Tr "home.show_both_archived_unarchived"}}" v-if="archivedFilter === 'both'"> <input type="checkbox"> <label><i class="archive icon archived-icon"></i>{{.i18n.Tr "home.show_archived"}}</label> </div> <div class="ui checkbox" id="archivedFilterCheckbox" title="{{.i18n.Tr "home.show_only_unarchived"}}" v-if="archivedFilter === 'unarchived'"> <input type="checkbox"> <label><i class="archive icon archived-icon"></i>{{.i18n.Tr "home.show_archived"}}</label> </div> <div class="ui checkbox" id="archivedFilterCheckbox" title="{{.i18n.Tr "home.show_only_archived"}}" v-if="archivedFilter === 'archived'"> <input type="checkbox"> <label><i class="archive icon archived-icon"></i>{{.i18n.Tr "home.show_archived"}}</label> </div> </a> </div> <div class="item"> <a @click="togglePrivateFilter()"> <div class="ui checkbox" id="privateFilterCheckbox" title="{{.i18n.Tr "home.show_both_private_public"}}" v-if="privateFilter === 'both'"> <input type="checkbox"> <label><svg class="svg octicon-lock" width="16" height="16" aria-hidden="true"><use xlink:href="#octicon-lock" /></svg>{{.i18n.Tr "home.show_private"}}</label> </div> <div class="ui checkbox" id="privateFilterCheckbox" title="{{.i18n.Tr "home.show_only_public"}}" v-if="privateFilter === 'public'"> <input type="checkbox"> <label><svg class="svg octicon-lock" width="16" height="16" aria-hidden="true"><use xlink:href="#octicon-lock" /></svg>{{.i18n.Tr "home.show_private"}}</label> </div> <div class="ui checkbox" id="privateFilterCheckbox" title="{{.i18n.Tr "home.show_only_private"}}" v-if="privateFilter === 'private'"> <input type="checkbox"> <label><svg class="svg octicon-lock" width="16" height="16" aria-hidden="true"><use xlink:href="#octicon-lock" /></svg>{{.i18n.Tr "home.show_private"}}</label> </div> </a> </div> </div> </div> </div> <div class="ui secondary pointing borderless menu center aligned grid repos-filter"> <a class="item" :class="{active: reposFilter === 'all'}" @click="changeReposFilter('all')"> {{.i18n.Tr "all"}} <div v-show="reposFilter === 'all'" class="ui circular mini grey label">${repoTypeCount}</div> </a> <a class="item" :class="{active: reposFilter === 'sources'}" @click="changeReposFilter('sources')"> {{.i18n.Tr "sources"}} <div v-show="reposFilter === 'sources'" class="ui circular mini grey label">${repoTypeCount}</div> </a> <a class="item" :class="{active: reposFilter === 'forks'}" @click="changeReposFilter('forks')"> {{.i18n.Tr "forks"}} <div v-show="reposFilter === 'forks'" class="ui circular mini grey label">${repoTypeCount}</div> </a> <a class="item" :class="{active: reposFilter === 'mirrors'}" @click="changeReposFilter('mirrors')"> {{.i18n.Tr "mirrors"}} <div v-show="reposFilter === 'mirrors'" class="ui circular mini grey label">${repoTypeCount}</div> </a> <a class="item" :class="{active: reposFilter === 'collaborative'}" @click="changeReposFilter('collaborative')"> {{.i18n.Tr "collaborative"}} <div v-show="reposFilter === 'collaborative'" class="ui circular mini grey label">${repoTypeCount}</div> </a> </div> </div> </repo-search> </div> <div class="ui repository list"> {{range .Repos}} <div class="item"> <div class="ui header"> {{if .RelAvatarLink}} <img class="ui avatar image" src="{{.RelAvatarLink}}"> {{end}} <a class="name" href="{{.Link}}"> {{if or $.PageIsExplore $.PageIsProfileStarList }}{{if .Owner}}{{.Owner.Name}} / {{end}}{{end}}{{.Name}} {{if .IsArchived}}<i class="archive icon archived-icon"></i>{{end}} </a> {{if .IsPrivate}} <span class="middle text gold">{{svg "octicon-lock" 16}}</span> {{else if .IsFork}} <span class="middle">{{svg "octicon-repo-forked" 16}}</span> {{else if .IsMirror}} <span class="middle">{{svg "octicon-repo-clone" 16}}</span> {{else if .Owner}} {{if .Owner.Visibility.IsPrivate}} <span class="text gold">{{svg "octicon-lock" 16}}</span> {{end}} {{end}} <div class="ui right metas"> {{if .PrimaryLanguage }} <span class="text grey"><i class="color-icon" style="background-color: {{.PrimaryLanguage.Color}}"></i>{{ .PrimaryLanguage.Language }}</span> {{end}} <span class="text grey">{{svg "octicon-star" 16}} {{.NumStars}}</span> <span class="text grey">{{svg "octicon-git-branch" 16}} {{.NumForks}}</span> </div> </div> <div class="description"> {{if .DescriptionHTML}}<p class="has-emoji">{{.DescriptionHTML}}</p>{{end}} {{if .Topics }} <div class="ui tags"> {{range .Topics}} {{if ne . "" }}<a href="{{AppSubUrl}}/explore/repos?q={{.}}&topic=1"><div class="ui small label topic">{{.}}</div></a>{{end}} {{end}} </div> {{end}} <p class="time">{{$.i18n.Tr "org.repo_updated"}} {{TimeSinceUnix .UpdatedUnix $.i18n.Lang}}</p> </div> </div> {{else}} <div> {{$.i18n.Tr "explore.repo_no_results"}} </div> {{end}} </div>