diff options
Diffstat (limited to 'files/js/filelist.js')
-rw-r--r-- | files/js/filelist.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/files/js/filelist.js b/files/js/filelist.js index e84a9acb535..fb96437f0a7 100644 --- a/files/js/filelist.js +++ b/files/js/filelist.js @@ -73,5 +73,38 @@ FileList={ }, isLoading:function(name){ return $('tr[data-file="'+name+'"]').data('loading'); + }, + rename:function(name){ + var tr=$('tr[data-file="'+name+'"]'); + var td=tr.children('td.filename'); + var input=$('<input value='+name+' class="filename"></input>'); + var button=$('<input type="sumit" value="Ok"></input>'); + var form=$('<form action="#"></form>') + form.append(input); + form.append(button); + td.children('a.name').text(''); + td.children('a.name').append(form) + input.focus(); + td.children('a.name').append(button); + form.submit(function(event){ + var newname=input.val(); + event.stopPropagation(); + event.preventDefault(); + tr.attr('data-file',newname); + td.children('a.name').empty(); + td.children('a.name').text(newname); + $.ajax({ + url: 'ajax/rename.php', + data: "dir="+$('#dir').val()+"&newname="+encodeURIComponent(newname)+"&file="+encodeURIComponent(name) + }); + }); + form.click(function(event){ + event.stopPropagation(); + event.preventDefault(); + }); + input.blur(function(){ + td.children('a.name').empty(); + td.children('a.name').text(name); + }); } } |