code.gitea.io/gitea@v1.22.3/templates/user/settings/keys_gpg.tmpl (about)

     1  <h4 class="ui top attached header">
     2  	{{ctx.Locale.Tr "settings.manage_gpg_keys"}}
     3  	<div class="ui right">
     4  		<button class="ui primary tiny show-panel toggle button" data-panel="#add-gpg-key-panel">{{ctx.Locale.Tr "settings.add_key"}}</button>
     5  	</div>
     6  </h4>
     7  <div class="ui attached segment">
     8  	<div class="{{if not .HasGPGError}}tw-hidden{{end}} tw-mb-4" id="add-gpg-key-panel">
     9  		<form class="ui form{{if .HasGPGError}} error{{end}}" action="{{.Link}}" method="post">
    10  			{{.CsrfTokenHtml}}
    11  			<input type="hidden" name="title" value="none">
    12  			<div class="field {{if .Err_Content}}error{{end}}">
    13  				<label for="gpg-key-content">{{ctx.Locale.Tr "settings.key_content"}}</label>
    14  				<textarea id="gpg-key-content" name="content" placeholder="{{ctx.Locale.Tr "settings.key_content_gpg_placeholder"}}" required>{{.content}}</textarea>
    15  			</div>
    16  			{{if .Err_Signature}}
    17  				<div class="ui error message">
    18  					<p>{{ctx.Locale.Tr "settings.gpg_token_required"}}</p>
    19  				</div>
    20  				<div class="field">
    21  					<label for="token">{{ctx.Locale.Tr "settings.gpg_token"}}</label>
    22  					<input readonly="" value="{{.TokenToSign}}">
    23  					<div class="help">
    24  						<p>{{ctx.Locale.Tr "settings.gpg_token_help"}}</p>
    25  						<p><code>{{printf `echo "%s" | gpg -a --default-key %s --detach-sig` .TokenToSign .PaddedKeyID}}</code></p>
    26  					</div>
    27  				</div>
    28  				<div class="field">
    29  					<label for="gpg-key-signature">{{ctx.Locale.Tr "settings.gpg_token_signature"}}</label>
    30  					<textarea id="gpg-key-signature" name="signature" placeholder="{{ctx.Locale.Tr "settings.key_signature_gpg_placeholder"}}" required>{{.signature}}</textarea>
    31  				</div>
    32  			{{end}}
    33  			<input name="type" type="hidden" value="gpg">
    34  			<button class="ui primary button">
    35  				{{ctx.Locale.Tr "settings.add_key"}}
    36  			</button>
    37  			<button class="ui hide-panel button" data-panel="#add-gpg-key-panel">
    38  				{{ctx.Locale.Tr "cancel"}}
    39  			</button>
    40  		</form>
    41  	</div>
    42  	<div class="flex-list">
    43  		<div class="flex-item">
    44  			<p>
    45  				{{ctx.Locale.Tr "settings.gpg_desc"}}<br>
    46  				{{ctx.Locale.Tr "settings.gpg_helper" "https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/about-commit-signature-verification#gpg-commit-signature-verification"}}
    47  			</p>
    48  		</div>
    49  		{{range .GPGKeys}}
    50  			<div class="flex-item">
    51  				<div class="flex-item-leading">
    52  					<span class="text {{if or .ExpiredUnix.IsZero ($.PageStartTime.Before .ExpiredUnix.AsTime)}}green{{end}}">{{svg "octicon-key" 32}}</span>
    53  				</div>
    54  				<div class="flex-item-main">
    55  					{{if .Verified}}
    56  						<span class="flex-text-block" data-tooltip-content="{{ctx.Locale.Tr "settings.gpg_key_verified_long"}}">{{svg "octicon-verified"}} <strong>{{ctx.Locale.Tr "settings.gpg_key_verified"}}</strong></span>
    57  					{{end}}
    58  					{{if .Emails}}
    59  						<span class="flex-text-block" data-tooltip-content="{{ctx.Locale.Tr "settings.gpg_key_matched_identities_long"}}">{{svg "octicon-mail"}} {{ctx.Locale.Tr "settings.gpg_key_matched_identities"}} {{range .Emails}}<strong>{{.Email}} </strong>{{end}}</span>
    60  					{{end}}
    61  					<div class="flex-item-body">
    62  						<b>{{ctx.Locale.Tr "settings.key_id"}}:</b> {{.PaddedKeyID}}
    63  						<b>{{ctx.Locale.Tr "settings.subkeys"}}:</b> {{range .SubsKey}} {{.PaddedKeyID}} {{end}}
    64  					</div>
    65  					<div class="flex-item-body">
    66  						<i>{{ctx.Locale.Tr "settings.added_on" (DateTime "short" .AddedUnix)}}</i>
    67  						-
    68  						<i>{{if not .ExpiredUnix.IsZero}}{{ctx.Locale.Tr "settings.valid_until_date" (DateTime "short" .ExpiredUnix)}}{{else}}{{ctx.Locale.Tr "settings.valid_forever"}}{{end}}</i>
    69  					</div>
    70  				</div>
    71  				<div class="flex-item-trailing">
    72  					<button class="ui red tiny button delete-button" data-modal-id="delete-gpg" data-url="{{$.Link}}/delete?type=gpg" data-id="{{.ID}}">
    73  						{{ctx.Locale.Tr "settings.delete_key"}}
    74  					</button>
    75  					{{if and (not .Verified) (ne $.VerifyingID .KeyID)}}
    76  						<a class="ui primary tiny button" href="?verify_gpg={{.KeyID}}">{{ctx.Locale.Tr "settings.gpg_key_verify"}}</a>
    77  					{{end}}
    78  				</div>
    79  			</div>
    80  			{{if and (not .Verified) (eq $.VerifyingID .KeyID)}}
    81  				<div class="ui  segment">
    82  					<h4>{{ctx.Locale.Tr "settings.gpg_token_required"}}</h4>
    83  					<form class="ui form{{if $.HasGPGVerifyError}} error{{end}}" action="{{$.Link}}" method="post">
    84  						{{$.CsrfTokenHtml}}
    85  						<input type="hidden" name="title" value="none">
    86  						<input type="hidden" name="content" value="{{.KeyID}}">
    87  						<input type="hidden" name="key_id" value="{{.KeyID}}">
    88  						<div class="field">
    89  							<label for="token">{{ctx.Locale.Tr "settings.gpg_token"}}</label>
    90  							<input readonly="" value="{{$.TokenToSign}}">
    91  							<div class="help">
    92  								<p>{{ctx.Locale.Tr "settings.gpg_token_help"}}</p>
    93  								<p><code>{{printf `echo "%s" | gpg -a --default-key %s --detach-sig` $.TokenToSign .PaddedKeyID}}</code></p>
    94  							</div>
    95  							<br>
    96  						</div>
    97  						<div class="field">
    98  							<label for="signature">{{ctx.Locale.Tr "settings.gpg_token_signature"}}</label>
    99  							<textarea id="gpg-key-signature" name="signature" placeholder="{{ctx.Locale.Tr "settings.key_signature_gpg_placeholder"}}" required>{{$.signature}}</textarea>
   100  						</div>
   101  						<input name="type" type="hidden" value="verify_gpg">
   102  						<button class="ui primary button">
   103  							{{ctx.Locale.Tr "settings.gpg_key_verify"}}
   104  						</button>
   105  						<a class="ui red button" href="{{$.Link}}">
   106  							{{ctx.Locale.Tr "settings.cancel"}}
   107  						</a>
   108  					</form>
   109  				</div>
   110  			{{end}}
   111  		{{end}}
   112  	</div>
   113  	<div class="ui g-modal-confirm delete modal" id="delete-gpg">
   114  		<div class="header">
   115  			{{svg "octicon-trash"}}
   116  			{{ctx.Locale.Tr "settings.gpg_key_deletion"}}
   117  		</div>
   118  		<div class="content">
   119  			<p>{{ctx.Locale.Tr "settings.gpg_key_deletion_desc"}}</p>
   120  		</div>
   121  		{{template "base/modal_actions_confirm" .}}
   122  	</div>
   123  </div>