{{$notificationUnreadCount := 0}}
{{if and .IsSigned .NotificationUnreadCount}}
	{{$notificationUnreadCount = call .NotificationUnreadCount ctx}}
{{end}}
{{$activeStopwatch := NIL}}
{{if and .IsSigned EnableTimetracking .GetActiveStopwatch}}
	{{$activeStopwatch = call .GetActiveStopwatch ctx}}
{{end}}
<nav id="navbar" aria-label="{{ctx.Locale.Tr "aria.navbar"}}">
	<div class="navbar-left">
		<!-- the logo -->
		<a class="item" id="navbar-logo" href="{{AppSubUrl}}/" aria-label="{{if .IsSigned}}{{ctx.Locale.Tr "dashboard"}}{{else}}{{ctx.Locale.Tr "home"}}{{end}}">
			<img width="30" height="30" src="{{AssetUrlPrefix}}/img/logo.svg" alt="{{ctx.Locale.Tr "logo"}}" aria-hidden="true">
		</a>

		<!-- mobile right menu, it must be here because in mobile view, each item is a flex column, the first item is a full row column -->
		<div class="ui secondary menu navbar-mobile-right only-mobile">
			{{if $activeStopwatch}}
			<a id="mobile-stopwatch-icon" class="active-stopwatch item" href="{{$activeStopwatch.IssueLink}}" title="{{ctx.Locale.Tr "active_stopwatch"}}" data-seconds="{{$activeStopwatch.Seconds}}">
				<div class="tw-relative">
					{{svg "octicon-stopwatch"}}
					<span class="header-stopwatch-dot"></span>
				</div>
			</a>
			{{end}}
			{{if .IsSigned}}
			<a id="mobile-notifications-icon" class="item" href="{{AppSubUrl}}/notifications" data-tooltip-content="{{ctx.Locale.Tr "notifications"}}" aria-label="{{ctx.Locale.Tr "notifications"}}">
				<div class="tw-relative">
					{{svg "octicon-bell"}}
					<span class="notification_count{{if not $notificationUnreadCount}} tw-hidden{{end}}">{{$notificationUnreadCount}}</span>
				</div>
			</a>
			{{end}}
			<button class="item ui icon mini button tw-m-0" id="navbar-expand-toggle" aria-label="{{ctx.Locale.Tr "home.nav_menu"}}">{{svg "octicon-three-bars"}}</button>
		</div>

		<!-- navbar links non-mobile -->
		{{if and .IsSigned .MustChangePassword}}
			{{/* No links */}}
		{{else if .IsSigned}}
			{{if not ctx.Consts.RepoUnitTypeIssues.UnitGlobalDisabled}}
				<a class="item{{if .PageIsIssues}} active{{end}}" href="{{AppSubUrl}}/issues">{{ctx.Locale.Tr "issues"}}</a>
			{{end}}
			{{if not ctx.Consts.RepoUnitTypePullRequests.UnitGlobalDisabled}}
				<a class="item{{if .PageIsPulls}} active{{end}}" href="{{AppSubUrl}}/pulls">{{ctx.Locale.Tr "pull_requests"}}</a>
			{{end}}
			{{if not (and ctx.Consts.RepoUnitTypeIssues.UnitGlobalDisabled ctx.Consts.RepoUnitTypePullRequests.UnitGlobalDisabled)}}
				{{if .ShowMilestonesDashboardPage}}
					<a class="item{{if .PageIsMilestonesDashboard}} active{{end}}" href="{{AppSubUrl}}/milestones">{{ctx.Locale.Tr "milestones"}}</a>
				{{end}}
			{{end}}
			<a class="item{{if .PageIsExplore}} active{{end}}" href="{{AppSubUrl}}/explore/repos">{{ctx.Locale.Tr "explore"}}</a>
		{{else if .IsLandingPageOrganizations}}
			<a class="item{{if .PageIsExplore}} active{{end}}" href="{{AppSubUrl}}/explore/organizations">{{ctx.Locale.Tr "explore"}}</a>
		{{else}}
			<a class="item{{if .PageIsExplore}} active{{end}}" href="{{AppSubUrl}}/explore/repos">{{ctx.Locale.Tr "explore"}}</a>
		{{end}}

		{{template "custom/extra_links" .}}

		{{if not .IsSigned}}
			<a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.com">{{ctx.Locale.Tr "help"}}</a>
		{{end}}
	</div>

	<!-- the full dropdown menus -->
	<div class="navbar-right">
		{{if and .IsSigned .MustChangePassword}}
			<div class="ui dropdown jump item" data-tooltip-content="{{ctx.Locale.Tr "user_profile_and_more"}}">
				<span class="text">
					{{ctx.AvatarUtils.Avatar .SignedUser 24 "tw-mr-1"}}
					<span class="only-mobile">{{.SignedUser.Name}}</span>
					<span class="not-mobile">{{svg "octicon-triangle-down"}}</span>
				</span>
				<div class="menu user-menu">
					<div class="header">
						{{ctx.Locale.Tr "signed_in_as"}} <strong>{{.SignedUser.Name}}</strong>
					</div>

					<div class="divider"></div>
					<a class="item link-action" href data-url="{{AppSubUrl}}/user/logout">
						{{svg "octicon-sign-out"}}
						{{ctx.Locale.Tr "sign_out"}}
					</a>
				</div><!-- end content avatar menu -->
			</div><!-- end dropdown avatar menu -->
		{{else if .IsSigned}}
			{{if $activeStopwatch}}
			<a class="item not-mobile active-stopwatch" href="{{$activeStopwatch.IssueLink}}" title="{{ctx.Locale.Tr "active_stopwatch"}}" data-seconds="{{$activeStopwatch.Seconds}}">
				<div class="tw-relative">
					{{svg "octicon-stopwatch"}}
					<span class="header-stopwatch-dot"></span>
				</div>
			</a>
			{{end}}

			<a class="item not-mobile" href="{{AppSubUrl}}/notifications" data-tooltip-content="{{ctx.Locale.Tr "notifications"}}" aria-label="{{ctx.Locale.Tr "notifications"}}">
				<div class="tw-relative">
					{{svg "octicon-bell"}}
					<span class="notification_count{{if not $notificationUnreadCount}} tw-hidden{{end}}">{{$notificationUnreadCount}}</span>
				</div>
			</a>

			<div class="ui dropdown jump item" data-tooltip-content="{{ctx.Locale.Tr "create_new"}}">
				<span class="text">
					{{svg "octicon-plus"}}
					<span class="not-mobile">{{svg "octicon-triangle-down"}}</span>
					<span class="only-mobile">{{ctx.Locale.Tr "create_new"}}</span>
				</span>
				<div class="menu">
					<a class="item" href="{{AppSubUrl}}/repo/create">
						{{svg "octicon-plus"}} {{ctx.Locale.Tr "new_repo"}}
					</a>
					{{if not .DisableMigrations}}
						<a class="item" href="{{AppSubUrl}}/repo/migrate">
							{{svg "octicon-repo-push"}} {{ctx.Locale.Tr "new_migrate"}}
						</a>
					{{end}}
					{{if .SignedUser.CanCreateOrganization}}
					<a class="item" href="{{AppSubUrl}}/org/create">
						{{svg "octicon-organization"}} {{ctx.Locale.Tr "new_org"}}
					</a>
					{{end}}
				</div><!-- end content create new menu -->
			</div><!-- end dropdown menu create new -->

			<div class="ui dropdown jump item" data-tooltip-content="{{ctx.Locale.Tr "user_profile_and_more"}}">
				<span class="text">
					{{ctx.AvatarUtils.Avatar .SignedUser 24 "tw-mr-1"}}
					<span class="only-mobile">{{.SignedUser.Name}}</span>
					<span class="not-mobile">{{svg "octicon-triangle-down"}}</span>
				</span>
				{{/* do not localize it, here it needs the fixed length (width) to make UI comfortable */}}
				{{if .IsAdmin}}<span class="navbar-profile-admin">admin</span>{{end}}
				<div class="menu user-menu">
					<div class="header">
						{{ctx.Locale.Tr "signed_in_as"}} <strong>{{.SignedUser.Name}}</strong>
					</div>

					<div class="divider"></div>
					<a class="item" href="{{.SignedUser.HomeLink}}">
						{{svg "octicon-person"}}
						{{ctx.Locale.Tr "your_profile"}}
					</a>
					{{if not .DisableStars}}
						<a class="item" href="{{.SignedUser.HomeLink}}?tab=stars">
							{{svg "octicon-star"}}
							{{ctx.Locale.Tr "your_starred"}}
						</a>
					{{end}}
					<a class="item" href="{{AppSubUrl}}/notifications/subscriptions">
						{{svg "octicon-bell"}}
						{{ctx.Locale.Tr "notification.subscriptions"}}
					</a>
					<a class="{{if .PageIsUserSettings}}active {{end}}item" href="{{AppSubUrl}}/user/settings">
						{{svg "octicon-tools"}}
						{{ctx.Locale.Tr "your_settings"}}
					</a>
					<a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.com">
						{{svg "octicon-question"}}
						{{ctx.Locale.Tr "help"}}
					</a>
					{{if .IsAdmin}}
						<div class="divider"></div>
						<a class="{{if .PageIsAdmin}}active {{end}}item" href="{{AppSubUrl}}/-/admin">
							{{svg "octicon-server"}}
							{{ctx.Locale.Tr "admin_panel"}}
						</a>
					{{end}}

					<div class="divider"></div>
					<a class="item link-action" href data-url="{{AppSubUrl}}/user/logout">
						{{svg "octicon-sign-out"}}
						{{ctx.Locale.Tr "sign_out"}}
					</a>
				</div><!-- end content avatar menu -->
			</div><!-- end dropdown avatar menu -->
		{{else}}
			{{if .ShowRegistrationButton}}
				<a class="item{{if .PageIsSignUp}} active{{end}}" href="{{AppSubUrl}}/user/sign_up">
					{{svg "octicon-person"}}
					<span class="tw-ml-1">{{ctx.Locale.Tr "register"}}</span>
				</a>
			{{end}}
			<a class="item{{if .PageIsSignIn}} active{{end}}" rel="nofollow" href="{{AppSubUrl}}/user/login{{if not .PageIsSignIn}}?redirect_to={{.CurrentURL}}{{end}}">
				{{svg "octicon-sign-in"}}
				<span class="tw-ml-1">{{ctx.Locale.Tr "sign_in"}}</span>
			</a>
		{{end}}
	</div><!-- end full right menu -->

	{{if $activeStopwatch}}
		<div class="active-stopwatch-popup tippy-target">
			<div class="tw-flex tw-items-center tw-gap-2 tw-p-3">
				<a class="stopwatch-link tw-flex tw-items-center tw-gap-2 muted" href="{{$activeStopwatch.IssueLink}}">
					{{svg "octicon-issue-opened" 16}}
					<span class="stopwatch-issue">{{$activeStopwatch.RepoSlug}}#{{$activeStopwatch.IssueIndex}}</span>
				</a>
				<div class="tw-flex tw-gap-1">
					<form class="stopwatch-commit form-fetch-action" method="post" action="{{$activeStopwatch.IssueLink}}/times/stopwatch/toggle">
						{{.CsrfTokenHtml}}
						<button
							type="submit"
							class="ui button mini compact basic icon tw-mr-0"
							data-tooltip-content="{{ctx.Locale.Tr "repo.issues.stop_tracking"}}"
						>{{svg "octicon-square-fill"}}</button>
					</form>
					<form class="stopwatch-cancel form-fetch-action" method="post" action="{{$activeStopwatch.IssueLink}}/times/stopwatch/cancel">
						{{.CsrfTokenHtml}}
						<button
							type="submit"
							class="ui button mini compact basic icon tw-mr-0"
							data-tooltip-content="{{ctx.Locale.Tr "repo.issues.cancel_tracking"}}"
						>{{svg "octicon-trash"}}</button>
					</form>
				</div>
			</div>
		</div>
	{{end}}
</nav>
