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) {
3434
3535 var deleteUrl string
3636 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+ }
3842 }
3943
4044 data .SubItemsHtml [i ] = & itemHtml {
Original file line number Diff line number Diff line change @@ -43,12 +43,13 @@ type responseData struct {
4343 SubItemsHtml []* itemHtml
4444 SubItemPrefix string
4545
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
5253}
5354
5455func isSlash (c rune ) bool {
@@ -332,6 +333,7 @@ func (h *handler) getResponseData(r *http.Request) (data *responseData) {
332333 canUpload := h .getCanUpload (item , rawReqPath , reqFsPath )
333334 canMkdir := h .getCanMkdir (item , rawReqPath , reqFsPath )
334335 canDelete := h .getCanDelete (item , rawReqPath , reqFsPath )
336+ hasDeletable := canDelete && len (subItems ) > len (aliasSubItems )
335337 canArchive := h .getCanArchive (subItems , rawReqPath , reqFsPath )
336338 canCors := h .getCanCors (rawReqPath , reqFsPath )
337339 needAuth := h .getNeedAuth (rawReqPath , reqFsPath )
@@ -355,12 +357,13 @@ func (h *handler) getResponseData(r *http.Request) (data *responseData) {
355357 SubItemsHtml : nil ,
356358 SubItemPrefix : subItemPrefix ,
357359
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 ,
364367 }
365368
366369 return
Original file line number Diff line number Diff line change 212212 zoom : 1 ;
213213}
214214
215- .can-delete .link {
215+ .has-deletable .link {
216216 padding-right : 2.2em ;
217217}
218218
Original file line number Diff line number Diff line change @@ -182,7 +182,7 @@ border-bottom: 1px #f5f5f5 solid;
182182overflow: hidden;
183183zoom: 1;
184184}
185- .can-delete .link {
185+ .has-deletable .link {
186186padding-right: 2.2em;
187187}
188188.item-list .name {
Original file line number Diff line number Diff line change 4444 </ div >
4545{{end}}
4646
47- {{$canDelete := .CanDelete}}
48- {{if $canDelete}}
47+ {{if .CanDelete}}
4948 < script type ="text/javascript ">
5049 function confirmDelete ( el ) {
5150 var href = el . href ;
5453 }
5554 </ script >
5655{{end}}
57- < ul class ="item-list{{if $canDelete }} can-delete {{end}} ">
56+ < ul class ="item-list{{if .HasDeletable }} has-deletable {{end}} ">
5857 < li class ="dir parent ">
5958 < a href ="{{if .IsRoot}}./{{else}}../{{end}} " class ="link ">
6059 < span class ="name "> ../</ span >
6968 < span class ="size "> {{.DisplaySize}}</ span >
7069 < span class ="time "> {{.DisplayTime}}</ span >
7170 </ 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}}
7372 </ li >
7473 {{end}}
7574</ ul >
Original file line number Diff line number Diff line change @@ -49,8 +49,7 @@ const pageTplStr = `
4949<a href="{{.SubItemPrefix}}?zip" download="{{.ItemName}}.zip">.zip</a>
5050</div>
5151{{end}}
52- {{$canDelete := .CanDelete}}
53- {{if $canDelete}}
52+ {{if .CanDelete}}
5453<script type="text/javascript">
5554function confirmDelete(el) {
5655var href = el.href;
@@ -59,7 +58,7 @@ return confirm('Delete?\n' + name);
5958}
6059</script>
6160{{end}}
62- <ul class="item-list{{if $canDelete }} can-delete {{end}}">
61+ <ul class="item-list{{if .HasDeletable }} has-deletable {{end}}">
6362<li class="dir parent">
6463<a href="{{if .IsRoot}}./{{else}}../{{end}}" class="link">
6564<span class="name">../</span>
@@ -74,7 +73,7 @@ return confirm('Delete?\n' + name);
7473<span class="size">{{.DisplaySize}}</span>
7574<span class="time">{{.DisplayTime}}</span>
7675</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}}
7877</li>
7978{{end}}
8079</ul>
You can’t perform that action at this time.
0 commit comments