Skip to content

Commit cc2433a

Browse files
committed
Improve sorting by the modified date for show_files and delete_files
Store raw modified time in a "data-modified" attribute of each "modified" cell and configure list.js to sort by the value, instead of sorting by the blurb value
1 parent 08e28db commit cc2433a

File tree

3 files changed

+10
-8
lines changed

3 files changed

+10
-8
lines changed

lib/pause_2017/PAUSE/Web/Controller/User/Files.pm

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,11 @@ sub show {
4949
warn "ALERT: Could not stat f[$f]: $!";
5050
next;
5151
}
52+
my $modified = (stat _)[9];
5253
my $blurb = $deletes{$f} ?
5354
$c->scheduled($whendele{$f}) :
54-
HTTP::Date::time2str((stat _)[9]);
55-
$files{$f} = {stat => -s _, blurb => $blurb, indexed => $indexed->{$f} };
55+
HTTP::Date::time2str($modified);
56+
$files{$f} = {stat => -s _, blurb => $blurb, indexed => $indexed->{$f}, modified => $modified };
5657
}
5758
$pause->{files} = \%files;
5859
}
@@ -177,10 +178,11 @@ sub delete {
177178
$tmpf =~ s/\.(?:readme|meta)$/.tar.gz/;
178179
my $info = CPAN::DistnameInfo->new($tmpf);
179180
my $distv = $info->distvname;
181+
my $modified = (stat _)[9];
180182
my $blurb = $deletes{$f} ?
181183
$c->scheduled($whendele{$f}) :
182-
HTTP::Date::time2str((stat _)[9]);
183-
$files{$f} = {stat => -s _, blurb => $blurb, indexed => $indexed->{$f}, distv => $distv };
184+
HTTP::Date::time2str($modified);
185+
$files{$f} = {stat => -s _, blurb => $blurb, indexed => $indexed->{$f}, distv => $distv, modified => $modified };
184186
$pause->{deleting_indexed_files} = 1 if $deletes{$f} && $indexed->{$f};
185187
}
186188
$pause->{files} = \%files;

lib/pause_2017/templates/user/files/delete.html.ep

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
<td class="file"><%= $file %></td>
3737
% }
3838
<td class="size"><%= $files->{$file}{stat} %></td>
39-
<td class="modified"><%= $files->{$file}{blurb} %></td>
39+
<td class="modified" data-modified="<%= $files->{$file}{modified} %>"><%= $files->{$file}{blurb} %></td>
4040
</tr>
4141
% }
4242
</tbody>
@@ -48,7 +48,7 @@
4848
%= javascript "/list.min.js"
4949
%= javascript begin
5050
var List = new List('files', {
51-
valueNames: ['file', 'size', 'modified']
51+
valueNames: ['file', 'size', { name: 'modified', attr: 'data-modified' }]
5252
});
5353

5454
document.querySelectorAll('input[type=checkbox]').forEach(function(e) {

lib/pause_2017/templates/user/files/show.html.ep

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
<td class="file"><%= $file %></td>
2424
% }
2525
<td class="size"><%= $files->{$file}{stat} %></td>
26-
<td class="modified"><%= $files->{$file}{blurb} %></td>
26+
<td class="modified" data-modified="<%= $files->{$file}{modified} %>"><%= $files->{$file}{blurb} %></td>
2727
</tr>
2828
% }
2929
</tbody>
@@ -33,7 +33,7 @@
3333
%= javascript "/list.min.js"
3434
%= javascript begin
3535
var List = new List('files', {
36-
valueNames: ['file', 'size', 'modified']
36+
valueNames: ['file', 'size', { name: 'modified', attr: 'data-modified' }]
3737
});
3838
% end
3939
% end

0 commit comments

Comments
 (0)