You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							111 lines
						
					
					
						
							5.1 KiB
						
					
					
				
			
		
		
	
	
							111 lines
						
					
					
						
							5.1 KiB
						
					
					
				<h4 class="ui top attached header">
 | 
						|
	{{.locale.Tr "settings.manage_ssh_keys"}}
 | 
						|
	<div class="ui right">
 | 
						|
		{{if not .DisableSSH }}
 | 
						|
			<div id="add-ssh-button" class="ui primary tiny show-panel button" data-panel="#add-ssh-key-panel">
 | 
						|
				{{.locale.Tr "settings.add_key"}}
 | 
						|
			</div>
 | 
						|
		{{else}}
 | 
						|
			<div class="ui primary tiny button disabled">{{.locale.Tr "settings.ssh_disabled"}}</div>
 | 
						|
		{{end}}
 | 
						|
	</div>
 | 
						|
</h4>
 | 
						|
<div class="ui attached segment">
 | 
						|
	<div class="{{if not .HasSSHError}}hide{{end}} mb-4" id="add-ssh-key-panel">
 | 
						|
		<form class="ui form" action="{{.Link}}" method="post">
 | 
						|
			{{.CsrfTokenHtml}}
 | 
						|
			<div class="field {{if .Err_Title}}error{{end}}">
 | 
						|
				<label for="title">{{.locale.Tr "settings.key_name"}}</label>
 | 
						|
				<input id="ssh-key-title" name="title" value="{{.title}}" autofocus required>
 | 
						|
			</div>
 | 
						|
			<div class="field {{if .Err_Content}}error{{end}}">
 | 
						|
				<label for="content">{{.locale.Tr "settings.key_content"}}</label>
 | 
						|
				<textarea id="ssh-key-content" name="content" class="js-quick-submit" placeholder="{{.locale.Tr "settings.key_content_ssh_placeholder"}}" required>{{.content}}</textarea>
 | 
						|
			</div>
 | 
						|
			<input name="type" type="hidden" value="ssh">
 | 
						|
			<button class="ui green button">
 | 
						|
				{{.locale.Tr "settings.add_key"}}
 | 
						|
			</button>
 | 
						|
			<button id="cancel-ssh-button" class="ui hide-panel button" data-panel="#add-ssh-key-panel">
 | 
						|
				{{.locale.Tr "cancel"}}
 | 
						|
			</button>
 | 
						|
		</form>
 | 
						|
	</div>
 | 
						|
	<div class="ui key list mt-0">
 | 
						|
		<div class="item">
 | 
						|
			{{.locale.Tr "settings.ssh_desc"}}
 | 
						|
		</div>
 | 
						|
		{{range $index, $key := .Keys}}
 | 
						|
			<div class="item">
 | 
						|
				<div class="right floated content">
 | 
						|
					<button class="ui red tiny button delete-button{{if index $.ExternalKeys $index}} disabled{{end}}" data-modal-id="delete-ssh" data-url="{{$.Link}}/delete?type=ssh" data-id="{{.ID}}"{{if index $.ExternalKeys $index}} title="{{$.locale.Tr "settings.ssh_externally_managed"}}"{{end}}>
 | 
						|
						{{$.locale.Tr "settings.delete_key"}}
 | 
						|
					</button>
 | 
						|
					{{if and (not .Verified) (ne $.VerifyingFingerprint .Fingerprint)}}
 | 
						|
						<a class="ui primary tiny show-panel button" href="{{$.Link}}?verify_ssh={{.Fingerprint}}">{{$.locale.Tr "settings.ssh_key_verify"}}</a>
 | 
						|
					{{end}}
 | 
						|
 | 
						|
				</div>
 | 
						|
				<div class="left floated content">
 | 
						|
					<span class="tooltip{{if .HasRecentActivity}} green{{end}}" {{if .HasRecentActivity}}data-content="{{$.locale.Tr "settings.key_state_desc"}}"{{end}}>{{svg "octicon-key" 32}}</span>
 | 
						|
				</div>
 | 
						|
				<div class="content">
 | 
						|
						{{if .Verified}}
 | 
						|
							<span class="tooltip" data-content="{{$.locale.Tr "settings.ssh_key_verified_long"}}">{{svg "octicon-shield-check"}} <strong>{{$.locale.Tr "settings.ssh_key_verified"}}</strong></span>
 | 
						|
						{{end}}
 | 
						|
						<strong>{{.Name}}</strong>
 | 
						|
						<div class="print meta">
 | 
						|
								{{.Fingerprint}}
 | 
						|
						</div>
 | 
						|
						<div class="activity meta">
 | 
						|
								<i>{{$.locale.Tr "settings.add_on"}} <span>{{.CreatedUnix.FormatShort}}</span> —	{{svg "octicon-info"}} {{if .HasUsed}}{{$.locale.Tr "settings.last_used"}} <span {{if .HasRecentActivity}}class="green"{{end}}>{{.UpdatedUnix.FormatShort}}</span>{{else}}{{$.locale.Tr "settings.no_activity"}}{{end}}</i>
 | 
						|
						</div>
 | 
						|
				</div>
 | 
						|
			</div>
 | 
						|
			{{if and (not .Verified) (eq $.VerifyingFingerprint .Fingerprint)}}
 | 
						|
				<div class="ui segment">
 | 
						|
					<h4>{{$.locale.Tr "settings.ssh_token_required"}}</h4>
 | 
						|
					<form class="ui form{{if $.HasSSHVerifyError}} error{{end}}" action="{{$.Link}}" method="post">
 | 
						|
						{{$.CsrfTokenHtml}}
 | 
						|
						<input type="hidden" name="title" value="none">
 | 
						|
						<input type="hidden" name="content" value="{{.Content}}">
 | 
						|
						<input type="hidden" name="fingerprint" value="{{.Fingerprint}}">
 | 
						|
						<div class="field">
 | 
						|
							<label for="token">{{$.locale.Tr "settings.ssh_token"}}</label>
 | 
						|
							<input readonly="" value="{{$.TokenToSign}}">
 | 
						|
							<div class="help">
 | 
						|
								<p>{{$.locale.Tr "settings.ssh_token_help"}}</p>
 | 
						|
								<p><code>{{printf "echo -n '%s' | ssh-keygen -Y sign -n gitea -f /path_to_your_privkey" $.TokenToSign}}</code></p>
 | 
						|
							</div>
 | 
						|
							<br>
 | 
						|
						</div>
 | 
						|
						<div class="field">
 | 
						|
							<label for="signature">{{$.locale.Tr "settings.ssh_token_signature"}}</label>
 | 
						|
							<textarea id="ssh-key-signature" name="signature" class="js-quick-submit" placeholder="{{$.locale.Tr "settings.key_signature_ssh_placeholder"}}" required>{{$.signature}}</textarea>
 | 
						|
						</div>
 | 
						|
						<input name="type" type="hidden" value="verify_ssh">
 | 
						|
						<button class="ui green button">
 | 
						|
							{{$.locale.Tr "settings.ssh_key_verify"}}
 | 
						|
						</button>
 | 
						|
						<a class="ui red button" href="{{$.Link}}">
 | 
						|
							{{$.locale.Tr "settings.cancel"}}
 | 
						|
						</a>
 | 
						|
					</form>
 | 
						|
				</div>
 | 
						|
			{{end}}
 | 
						|
		{{end}}
 | 
						|
	</div>
 | 
						|
</div>
 | 
						|
<br>
 | 
						|
<p>{{.locale.Tr "settings.ssh_helper" "https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/connecting-to-github-with-ssh" "https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/troubleshooting-ssh" | Str2html}}</p>
 | 
						|
 | 
						|
<div class="ui small basic delete modal" id="delete-ssh">
 | 
						|
	<div class="ui icon header">
 | 
						|
		{{svg "octicon-trash"}}
 | 
						|
		{{.locale.Tr "settings.ssh_key_deletion"}}
 | 
						|
	</div>
 | 
						|
	<div class="content">
 | 
						|
		<p>{{.locale.Tr "settings.ssh_key_deletion_desc"}}</p>
 | 
						|
	</div>
 | 
						|
	{{template "base/delete_modal_actions" .}}
 | 
						|
</div>
 | 
						|
 |