diff options
Diffstat (limited to 'src/usr/local/www/filebrowser/browser.js')
-rw-r--r-- | src/usr/local/www/filebrowser/browser.js | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/usr/local/www/filebrowser/browser.js b/src/usr/local/www/filebrowser/browser.js new file mode 100644 index 0000000..2769db3 --- /dev/null +++ b/src/usr/local/www/filebrowser/browser.js @@ -0,0 +1,48 @@ +/* + pfSense_MODULE: shell +*/ + +jQuery(document).ready( + function() { + jQuery("#fbOpen").click( + function() { + jQuery("#fbBrowser").fadeIn(750); + fbBrowse(jQuery("#fbTarget").val()); + } + ); + } +); + +function fbBrowse(path) { + jQuery("#fileContent").fadeOut(); + + if (jQuery("#fbCurrentDir")) { + jQuery("#fbCurrentDir").html("Loading ..."); + } + + jQuery.ajax( + "/filebrowser/browser.php?path=" + encodeURI(path ? path : "/"), + { type: "get", complete: fbComplete } + ); + +} + +function fbComplete(req) { + jQuery("#fbBrowser").html(req.responseText); + + var actions = { + fbHome: function() { fbBrowse("/"); }, + fbClose: function() { jQuery("#fbBrowser").fadeOut(750); }, + fbDir: function() { fbBrowse(this.id); }, + fbFile: function() { jQuery("#fbTarget").val(this.id); } + } + + for (var type in actions) { + jQuery("#fbBrowser ." + type).each( + function() { + jQuery(this).click(actions[type]); + jQuery(this).css("cursor","pointer"); + } + ); + } +} |