mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-31 06:21:11 +00:00 
			
		
		
		
	- Add a dropdown to the web interface for changing files to select which Email should be used for the commit. It only shows (and verifies) that a activated mail can be used, while this isn't necessary, it's better to have this already in place. - Added integration testing. - Resolves https://codeberg.org/forgejo/forgejo/issues/281 (cherry picked from commit564e701f40) (cherry picked from commitde8f2e03cc) (cherry picked from commit0182cff12e) (cherry picked from commit9c74254d46) (cherry picked from commit2f0b68f821) (cherry picked from commit079b995d49)
		
			
				
	
	
		
			82 lines
		
	
	
	
		
			4.6 KiB
		
	
	
	
		
			Go HTML Template
		
	
	
	
	
	
			
		
		
	
	
			82 lines
		
	
	
	
		
			4.6 KiB
		
	
	
	
		
			Go HTML Template
		
	
	
	
	
	
| <div class="commit-form-wrapper">
 | |
| 	{{ctx.AvatarUtils.Avatar .SignedUser 48 "commit-avatar"}}
 | |
| 	<div class="commit-form">
 | |
| 		<h3>{{- if .CanCommitToBranch.WillSign}}
 | |
| 			<span title="{{ctx.Locale.Tr "repo.signing.will_sign" .CanCommitToBranch.SigningKey}}">{{svg "octicon-lock" 24}}</span>
 | |
| 			{{ctx.Locale.Tr "repo.editor.commit_signed_changes"}}
 | |
| 		{{- else}}
 | |
| 			<span title="{{ctx.Locale.Tr (printf "repo.signing.wont_sign.%s" .CanCommitToBranch.WontSignReason)}}">{{svg "octicon-unlock" 24}}</span>
 | |
| 			{{ctx.Locale.Tr "repo.editor.commit_changes"}}
 | |
| 		{{- end}}</h3>
 | |
| 		<div class="field">
 | |
| 			<input name="commit_summary" placeholder="{{if .PageIsDelete}}{{ctx.Locale.Tr "repo.editor.delete" .TreePath}}{{else if .PageIsUpload}}{{ctx.Locale.Tr "repo.editor.upload_files_to_dir" .TreePath}}{{else if .IsNewFile}}{{ctx.Locale.Tr "repo.editor.add_tmpl"}}{{else if .PageIsPatch}}{{ctx.Locale.Tr "repo.editor.patch"}}{{else}}{{ctx.Locale.Tr "repo.editor.update" .TreePath}}{{end}}" value="{{.commit_summary}}" autofocus>
 | |
| 		</div>
 | |
| 		<div class="field">
 | |
| 			<textarea name="commit_message" placeholder="{{ctx.Locale.Tr "repo.editor.commit_message_desc"}}" rows="5">{{.commit_message}}</textarea>
 | |
| 		</div>
 | |
| 		<div class="inline field">
 | |
| 			<div class="ui checkbox">
 | |
| 				<input name="signoff" type="checkbox">
 | |
| 				<label>{{ctx.Locale.Tr "repo.editor.signoff_desc"}}</label>
 | |
| 			</div>
 | |
| 		</div>
 | |
| 		<div class="quick-pull-choice js-quick-pull-choice">
 | |
| 			<div class="field">
 | |
| 				<div class="ui radio checkbox {{if not .CanCommitToBranch.CanCommitToBranch}}disabled{{end}}">
 | |
| 					<input type="radio" class="js-quick-pull-choice-option" name="commit_choice" value="direct" button_text="{{ctx.Locale.Tr "repo.editor.commit_changes"}}" {{if eq .commit_choice "direct"}}checked{{end}}>
 | |
| 					<label>
 | |
| 						{{svg "octicon-git-commit"}}
 | |
| 						{{ctx.Locale.Tr "repo.editor.commit_directly_to_this_branch" (.BranchName|Escape) | Safe}}
 | |
| 						{{if not .CanCommitToBranch.CanCommitToBranch}}
 | |
| 						<div class="ui visible small warning message">
 | |
| 							{{ctx.Locale.Tr "repo.editor.no_commit_to_branch"}}
 | |
| 							<ul>
 | |
| 								{{if not .CanCommitToBranch.UserCanPush}}<li>{{ctx.Locale.Tr "repo.editor.user_no_push_to_branch"}}</li>{{end}}
 | |
| 								{{if and .CanCommitToBranch.RequireSigned (not .CanCommitToBranch.WillSign)}}<li>{{ctx.Locale.Tr "repo.editor.require_signed_commit"}}</li>{{end}}
 | |
| 							</ul>
 | |
| 						</div>
 | |
| 						{{end}}
 | |
| 					</label>
 | |
| 				</div>
 | |
| 			</div>
 | |
| 			{{if not .Repository.IsEmpty}}
 | |
| 			<div class="field">
 | |
| 				<div class="ui radio checkbox">
 | |
| 					{{if .CanCreatePullRequest}}
 | |
| 						<input type="radio" class="js-quick-pull-choice-option" name="commit_choice" value="commit-to-new-branch" button_text="{{ctx.Locale.Tr "repo.editor.propose_file_change"}}" {{if eq .commit_choice "commit-to-new-branch"}}checked{{end}}>
 | |
| 					{{else}}
 | |
| 						<input type="radio" class="js-quick-pull-choice-option" name="commit_choice" value="commit-to-new-branch" button_text="{{ctx.Locale.Tr "repo.editor.commit_changes"}}" {{if eq .commit_choice "commit-to-new-branch"}}checked{{end}}>
 | |
| 					{{end}}
 | |
| 					<label>
 | |
| 						{{svg "octicon-git-pull-request"}}
 | |
| 						{{if .CanCreatePullRequest}}
 | |
| 							{{ctx.Locale.Tr "repo.editor.create_new_branch" | Safe}}
 | |
| 						{{else}}
 | |
| 							{{ctx.Locale.Tr "repo.editor.create_new_branch_np" | Safe}}
 | |
| 						{{end}}
 | |
| 					</label>
 | |
| 				</div>
 | |
| 			</div>
 | |
| 			<div class="quick-pull-branch-name {{if not (eq .commit_choice "commit-to-new-branch")}}gt-hidden{{end}}">
 | |
| 				<div class="new-branch-name-input field {{if .Err_NewBranchName}}error{{end}}">
 | |
| 					{{svg "octicon-git-branch"}}
 | |
| 					<input type="text" name="new_branch_name" value="{{.new_branch_name}}" class="input-contrast gt-mr-2 js-quick-pull-new-branch-name" placeholder="{{ctx.Locale.Tr "repo.editor.new_branch_name_desc"}}" {{if eq .commit_choice "commit-to-new-branch"}}required{{end}} title="{{ctx.Locale.Tr "repo.editor.new_branch_name"}}">
 | |
| 					<span class="text-muted js-quick-pull-normalization-info"></span>
 | |
| 				</div>
 | |
| 			</div>
 | |
| 			{{end}}
 | |
| 		</div>
 | |
| 		<div class="field {{if .Err_CommitMailID}}error{{end}}">
 | |
| 			<label for="commit_mail_id">Commit email</label>
 | |
| 			<select class="ui selection dropdown" name="commit_mail_id">
 | |
| 			{{range .CommitMails}}
 | |
| 				<option{{if eq $.DefaultCommitMail .Email}} selected="selected"{{end}} value="{{.ID}}">{{.Email}}</option>
 | |
| 			{{end}}
 | |
| 			</select>
 | |
| 		</div>
 | |
| 	</div>
 | |
| 	<button id="commit-button" type="submit" class="ui primary button">
 | |
| 		{{if eq .commit_choice "commit-to-new-branch"}}{{ctx.Locale.Tr "repo.editor.propose_file_change"}}{{else}}{{ctx.Locale.Tr "repo.editor.commit_changes"}}{{end}}
 | |
| 	</button>
 | |
| 	<a class="ui button red" href="{{$.BranchLink}}/{{PathEscapeSegments .TreePath}}">{{ctx.Locale.Tr "repo.editor.cancel"}}</a>
 | |
| </div>
 |