Skip to content

Commit d4af0df

Browse files
Fix attachments list in edit comment (#13036) (#13097)
Backport #13036 #11141 broke the appearance of dropzone attachments when editting comments causing poorly updating lists. This PR fixes this. Fix #12583 Signed-off-by: Andrew Thornton [email protected] Co-authored-by: techknowlogick <[email protected]>
1 parent e1ed2a7 commit d4af0df

File tree

4 files changed

+31
-19
lines changed

4 files changed

+31
-19
lines changed

templates/repo/issue/view_content.tmpl

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,11 @@
5656
<div id="comment-{{.Issue.ID}}" class="raw-content hide">{{.Issue.Content}}</div>
5757
<div class="edit-content-zone hide" data-write="issue-{{.Issue.ID}}-write" data-preview="issue-{{.Issue.ID}}-preview" data-update-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/content" data-context="{{.RepoLink}}" data-attachment-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/attachments" data-view-attachment-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/view-attachments"></div>
5858
{{if .Issue.Attachments}}
59-
<div class="ui clearing divider"></div>
60-
<div class="ui middle aligned padded grid">
61-
{{template "repo/issue/view_content/attachments" Dict "ctx" $ "Attachments" .Issue.Attachments}}
59+
<div class="dropzone-attachments">
60+
<div class="ui clearing divider"></div>
61+
<div class="ui middle aligned padded grid">
62+
{{template "repo/issue/view_content/attachments" Dict "ctx" $ "Attachments" .Issue.Attachments}}
63+
</div>
6264
</div>
6365
{{end}}
6466
</div>

templates/repo/issue/view_content/attachments.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<div class="twelve wide column" style="padding: 6px;">
33
<a target="_blank" rel="noopener noreferrer" href="{{.DownloadURL}}" title='{{$.ctx.i18n.Tr "repo.issues.attachment.open_tab" .Name}}'>
44
{{if FilenameIsImage .Name}}
5-
<span class="ui image">{{svg "octicon-file-media" 16}}</span>
5+
<span class="ui image">{{svg "octicon-file" 16}}</span>
66
{{else}}
77
<span class="ui image">{{svg "octicon-desktop-download" 16}}</span>
88
{{end}}

templates/repo/issue/view_content/comments.tmpl

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,11 @@
5353
<div id="comment-{{.ID}}" class="raw-content hide">{{.Content}}</div>
5454
<div class="edit-content-zone hide" data-write="issuecomment-{{.ID}}-write" data-preview="issuecomment-{{.ID}}-preview" data-update-url="{{$.RepoLink}}/comments/{{.ID}}" data-context="{{$.RepoLink}}" data-attachment-url="{{$.RepoLink}}/comments/{{.ID}}/attachments"></div>
5555
{{if .Attachments}}
56-
<div class="ui clearing divider"></div>
57-
<div class="ui middle aligned padded grid">
58-
{{template "repo/issue/view_content/attachments" Dict "ctx" $ "Attachments" .Attachments}}
56+
<div class="dropzone-attachments">
57+
<div class="ui clearing divider"></div>
58+
<div class="ui middle aligned padded grid">
59+
{{template "repo/issue/view_content/attachments" Dict "ctx" $ "Attachments" .Attachments}}
60+
</div>
5961
</div>
6062
{{end}}
6163
</div>

web_src/js/index.js

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -980,7 +980,9 @@ async function initRepository() {
980980
$editContentZone.find('.cancel.button').on('click', () => {
981981
$renderContent.show();
982982
$editContentZone.hide();
983-
dz.emit('reload');
983+
if (dz) {
984+
dz.emit('reload');
985+
}
984986
});
985987
$editContentZone.find('.save.button').on('click', () => {
986988
$renderContent.show();
@@ -994,29 +996,35 @@ async function initRepository() {
994996
context: $editContentZone.data('context'),
995997
files: $attachments
996998
}, (data) => {
997-
if (data.length === 0) {
999+
if (data.length === 0 || data.content.length === 0) {
9981000
$renderContent.html($('#no-content').html());
9991001
} else {
10001002
$renderContent.html(data.content);
10011003
$('pre code', $renderContent[0]).each(function () {
10021004
highlight(this);
10031005
});
10041006
}
1005-
const $content = $segment.parent();
1006-
if (!$content.find('.ui.small.images').length) {
1007+
const $content = $segment;
1008+
if (!$content.find('.dropzone-attachments').length) {
10071009
if (data.attachments !== '') {
1008-
$content.append(
1009-
'<div class="ui bottom attached segment"><div class="ui small images"></div></div>'
1010-
);
1011-
$content.find('.ui.small.images').html(data.attachments);
1010+
$content.append(`
1011+
<div class="dropzone-attachments">
1012+
<div class="ui clearing divider"></div>
1013+
<div class="ui middle aligned padded grid">
1014+
</div>
1015+
</div>
1016+
`);
1017+
$content.find('.dropzone-attachments .grid').html(data.attachments);
10121018
}
10131019
} else if (data.attachments === '') {
1014-
$content.find('.ui.small.images').parent().remove();
1020+
$content.find('.dropzone-attachments').remove();
10151021
} else {
1016-
$content.find('.ui.small.images').html(data.attachments);
1022+
$content.find('.dropzone-attachments .grid').html(data.attachments);
1023+
}
1024+
if (dz) {
1025+
dz.emit('submit');
1026+
dz.emit('reload');
10171027
}
1018-
dz.emit('submit');
1019-
dz.emit('reload');
10201028
});
10211029
});
10221030
} else {

0 commit comments

Comments
 (0)