3.4.10-dev
[phpmyadmin.git] / js / import.js
blob98e34fafe1bd7bc42e246418e0c72d7fabc56382
1 /* vim: set expandtab sw=4 ts=4 sts=4: */
2 /**
3  * Functions used in the import tab
4  *
5  */
8 /**
9  * Toggles the hiding and showing of each plugin's options
10  * according to the currently selected plugin from the dropdown list
11  */
12 function changePluginOpts()
14     $(".format_specific_options").each(function() {
15         $(this).hide();
16     });
17     var selected_plugin_name = $("#plugins option:selected").attr("value");
18     $("#" + selected_plugin_name + "_options").fadeIn('slow');
19     if(selected_plugin_name == "csv") {
20         $("#import_notification").text(PMA_messages['strImportCSV']);
21     } else {
22         $("#import_notification").text("");
23     }
26 /**
27  * Toggles the hiding and showing of each plugin's options and sets the selected value
28  * in the plugin dropdown list according to the format of the selected file
29  */
30 function matchFile(fname)
32     var fname_array = fname.toLowerCase().split(".");
33     var len = fname_array.length;
34     if (len != 0) {
35         var extension = fname_array[len - 1];
36         if (extension == "gz" || extension == "bz2" || extension == "zip") {
37             len--;
38         }
39         // Only toggle if the format of the file can be imported
40         if($("select[name='format'] option").filterByValue(fname_array[len - 1]).length == 1) {
41             $("#plugins option:selected").removeAttr("selected");
42             $("select[name='format'] option").filterByValue(fname_array[len - 1]).attr('selected', 'selected');
43             changePluginOpts();
44         }
45     }
47 $(document).ready(function() {
48     // Initially display the options for the selected plugin
49     changePluginOpts();
51    // Whenever the selected plugin changes, change the options displayed
52    $("#plugins").change(function() {
53         changePluginOpts();
54     });
56     $("#input_import_file").change(function() {
57         matchFile($(this).attr("value"));
58     });
60     $("#select_local_import_file").change(function() {
61         matchFile($(this).attr("value"));
62     });
64     /*
65      * When the "Browse the server" form is clicked or the "Select from the web server upload directory"
66      * form is clicked, the radio button beside it becomes selected and the other form becomes disabled.
67      */
68     $("#input_import_file").focus(function() {
69          $("#radio_import_file").attr('checked', 'checked');
70          $("#radio_local_import_file").removeAttr('checked');
71     });
72     $("#select_local_import_file").focus(function() {
73          $("#radio_local_import_file").attr('checked', 'checked');
74          $("#radio_import_file").removeAttr('checked');
75     });
77     /**
78      * Set up the interface for Javascript-enabled browsers since the default is for
79      *  Javascript-disabled browsers
80      */
81     $("#scroll_to_options_msg").hide();
82     $(".format_specific_options").css({ "border": 0, "margin": 0, "padding": 0 });
83     $(".format_specific_options h3").remove();
84 });