File tree Expand file tree Collapse file tree 6 files changed +28
-23
lines changed Expand file tree Collapse file tree 6 files changed +28
-23
lines changed Original file line number Diff line number Diff line change @@ -34,7 +34,11 @@ func updateSubItemsHtml(data *responseData) {
34
34
35
35
var deleteUrl string
36
36
if data .CanDelete {
37
- deleteUrl = data .SubItemPrefix + "?delete&name=" + name
37
+ _ , isRenamedInfo := info .(* renamedFileInfo )
38
+ _ , isFakeInfo := info .(* fakeFileInfo )
39
+ if ! isRenamedInfo && ! isFakeInfo {
40
+ deleteUrl = data .SubItemPrefix + "?delete&name=" + name
41
+ }
38
42
}
39
43
40
44
data .SubItemsHtml [i ] = & itemHtml {
Original file line number Diff line number Diff line change @@ -43,12 +43,13 @@ type responseData struct {
43
43
SubItemsHtml []* itemHtml
44
44
SubItemPrefix string
45
45
46
- CanUpload bool
47
- CanMkdir bool
48
- CanDelete bool
49
- CanArchive bool
50
- CanCors bool
51
- NeedAuth bool
46
+ CanUpload bool
47
+ CanMkdir bool
48
+ CanDelete bool
49
+ HasDeletable bool
50
+ CanArchive bool
51
+ CanCors bool
52
+ NeedAuth bool
52
53
}
53
54
54
55
func isSlash (c rune ) bool {
@@ -332,6 +333,7 @@ func (h *handler) getResponseData(r *http.Request) (data *responseData) {
332
333
canUpload := h .getCanUpload (item , rawReqPath , reqFsPath )
333
334
canMkdir := h .getCanMkdir (item , rawReqPath , reqFsPath )
334
335
canDelete := h .getCanDelete (item , rawReqPath , reqFsPath )
336
+ hasDeletable := canDelete && len (subItems ) > len (aliasSubItems )
335
337
canArchive := h .getCanArchive (subItems , rawReqPath , reqFsPath )
336
338
canCors := h .getCanCors (rawReqPath , reqFsPath )
337
339
needAuth := h .getNeedAuth (rawReqPath , reqFsPath )
@@ -355,12 +357,13 @@ func (h *handler) getResponseData(r *http.Request) (data *responseData) {
355
357
SubItemsHtml : nil ,
356
358
SubItemPrefix : subItemPrefix ,
357
359
358
- CanUpload : canUpload ,
359
- CanMkdir : canMkdir ,
360
- CanDelete : canDelete ,
361
- CanArchive : canArchive ,
362
- CanCors : canCors ,
363
- NeedAuth : needAuth ,
360
+ CanUpload : canUpload ,
361
+ CanMkdir : canMkdir ,
362
+ CanDelete : canDelete ,
363
+ HasDeletable : hasDeletable ,
364
+ CanArchive : canArchive ,
365
+ CanCors : canCors ,
366
+ NeedAuth : needAuth ,
364
367
}
365
368
366
369
return
Original file line number Diff line number Diff line change 212
212
zoom : 1 ;
213
213
}
214
214
215
- .can-delete .link {
215
+ .has-deletable .link {
216
216
padding-right : 2.2em ;
217
217
}
218
218
Original file line number Diff line number Diff line change @@ -182,7 +182,7 @@ border-bottom: 1px #f5f5f5 solid;
182
182
overflow: hidden;
183
183
zoom: 1;
184
184
}
185
- .can-delete .link {
185
+ .has-deletable .link {
186
186
padding-right: 2.2em;
187
187
}
188
188
.item-list .name {
Original file line number Diff line number Diff line change 44
44
</ div >
45
45
{{end}}
46
46
47
- {{$canDelete := .CanDelete}}
48
- {{if $canDelete}}
47
+ {{if .CanDelete}}
49
48
< script type ="text/javascript ">
50
49
function confirmDelete ( el ) {
51
50
var href = el . href ;
54
53
}
55
54
</ script >
56
55
{{end}}
57
- < ul class ="item-list{{if $canDelete }} can-delete {{end}} ">
56
+ < ul class ="item-list{{if .HasDeletable }} has-deletable {{end}} ">
58
57
< li class ="dir parent ">
59
58
< a href ="{{if .IsRoot}}./{{else}}../{{end}} " class ="link ">
60
59
< span class ="name "> ../</ span >
69
68
< span class ="size "> {{.DisplaySize}}</ span >
70
69
< span class ="time "> {{.DisplayTime}}</ span >
71
70
</ a >
72
- {{if $canDelete }}< a href ="{{.DeleteUrl}} " class ="delete " onclick ="return confirmDelete(this) "> < span > x</ span > </ a > {{end}}
71
+ {{if .DeleteUrl }}< a href ="{{.DeleteUrl}} " class ="delete " onclick ="return confirmDelete(this) "> < span > x</ span > </ a > {{end}}
73
72
</ li >
74
73
{{end}}
75
74
</ ul >
Original file line number Diff line number Diff line change @@ -49,8 +49,7 @@ const pageTplStr = `
49
49
<a href="{{.SubItemPrefix}}?zip" download="{{.ItemName}}.zip">.zip</a>
50
50
</div>
51
51
{{end}}
52
- {{$canDelete := .CanDelete}}
53
- {{if $canDelete}}
52
+ {{if .CanDelete}}
54
53
<script type="text/javascript">
55
54
function confirmDelete(el) {
56
55
var href = el.href;
@@ -59,7 +58,7 @@ return confirm('Delete?\n' + name);
59
58
}
60
59
</script>
61
60
{{end}}
62
- <ul class="item-list{{if $canDelete }} can-delete {{end}}">
61
+ <ul class="item-list{{if .HasDeletable }} has-deletable {{end}}">
63
62
<li class="dir parent">
64
63
<a href="{{if .IsRoot}}./{{else}}../{{end}}" class="link">
65
64
<span class="name">../</span>
@@ -74,7 +73,7 @@ return confirm('Delete?\n' + name);
74
73
<span class="size">{{.DisplaySize}}</span>
75
74
<span class="time">{{.DisplayTime}}</span>
76
75
</a>
77
- {{if $canDelete }}<a href="{{.DeleteUrl}}" class="delete" onclick="return confirmDelete(this)"><span>x</span></a>{{end}}
76
+ {{if .DeleteUrl }}<a href="{{.DeleteUrl}}" class="delete" onclick="return confirmDelete(this)"><span>x</span></a>{{end}}
78
77
</li>
79
78
{{end}}
80
79
</ul>
You can’t perform that action at this time.
0 commit comments