From 275badaf766c6c1a1b8d8749361f5156a2f0e742 Mon Sep 17 00:00:00 2001 From: kondou Date: Sat, 6 Apr 2013 19:21:15 +0200 Subject: [PATCH] Make files _and_ directorys selectable/browsable. Also make long variables more readable by splitting them up into shorter ones. --- core/js/oc-dialogs.js | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/core/js/oc-dialogs.js b/core/js/oc-dialogs.js index 1acc96ac164..fcf48584c5d 100644 --- a/core/js/oc-dialogs.js +++ b/core/js/oc-dialogs.js @@ -64,7 +64,8 @@ var OCdialogs = { * @param modal make the dialog modal */ prompt:function(text, title, default_value, callback, modal) { - var content = '

' + escapeHTML(text) + ':

'; + var input = ''; + var content = '

' + escapeHTML(text) + ':
' + input + '

'; OCdialogs.message(content, title, OCdialogs.PROMPT_DIALOG, OCdialogs.OK_BUTTON, callback, modal); }, /** @@ -140,7 +141,9 @@ var OCdialogs = { filepicker:function(title, callback, multiselect, mimetype_filter, modal) { var dialog_name = 'oc-dialog-' + OCdialogs.dialogs_counter + '-content'; var dialog_id = '#' + dialog_name; - var dialog_div = '
'; + var dialog_content = '
'; + var dialog_loader = '
'; + var dialog_div = '
' + dialog_content + dialog_loader + '
'; if (modal === undefined) { modal = false }; if (multiselect === undefined) { multiselect = false }; if (mimetype_filter === undefined) { mimetype_filter = '' }; @@ -151,12 +154,6 @@ var OCdialogs = { $(dialog_id + ' #dirtree').focus().change( {dcid: dialog_id}, OCdialogs.handleTreeListSelect ); $(dialog_id + ' #dirup').click( {dcid: dialog_id}, OCdialogs.filepickerDirUp ); - $(dialog_id + ' #filelist').click('[data="dir"]', function() { - OCdialogs.handlePickerClick(this, $(this).data('entryname'), $(this).data('dcid')); - }); - $(dialog_id + ' #filelist').on('click', '[data="file"]', function() { - OCdialogs.handlePickerClick(this, $(this).data('entryname'), $(this).data('dcid')); - }); $(dialog_id).ready(function(){ $.getJSON(OC.filePath('files', 'ajax', 'rawlist.php'), { mimetype: mimetype_filter } ,function(request) { @@ -300,7 +297,8 @@ var OCdialogs = { * fills the filepicker with files */ fillFilePicker:function(request, dialog_content_id) { - var template = '
*NAME*
*LASTMODDATE*
'; + var template_content = '*NAME*
*LASTMODDATE*
'; + var template = '
*CONTENT*
'; var files = ''; var dirs = []; var others = []; @@ -313,10 +311,15 @@ var OCdialogs = { }); var sorted = dirs.concat(others); for (var i = 0; i < sorted.length; i++) { - files += template.replace('*LASTMODDATE*', OC.mtime2date(sorted[i].mtime)).replace('*NAME*', escapeHTML(sorted[i].name)).replace('*MIMETYPEICON*', sorted[i].mimetype_icon).replace('*ENTRYNAME*', escapeHTML(sorted[i].name)).replace('*ENTRYTYPE*', escapeHTML(sorted[i].type)); + files_content = template_content.replace('*LASTMODDATE*', OC.mtime2date(sorted[i].mtime)).replace('*NAME*', escapeHTML(sorted[i].name)).replace('*MIMETYPEICON*', sorted[i].mimetype_icon); + files += template.replace('*ENTRYNAME*', escapeHTML(sorted[i].name)).replace('*ENTRYTYPE*', escapeHTML(sorted[i].type)).replace('*CONTENT*', files_content); } $(dialog_content_id + ' #filelist').html(files); + $('#filelist div').click(function() { + OCdialogs.handlePickerClick($(this), $(this).data('entryname'), dialog_content_id); + }); + $(dialog_content_id + ' .filepicker_loader').css('visibility', 'hidden'); }, /** -- 2.39.5