/* vim: set expandtab sw=4 ts=4 sts=4: */ /** * JavaScript functions used on Database Search page * * @requires jQuery * @requires js/functions.js * * @package PhpMyAdmin */ /** * AJAX script for the Database Search page. * * Actions ajaxified here: * Retrieve result of SQL query */ /** * Unbind all event handlers before tearing down a page */ AJAX.registerTeardown('db_search.js', function () { $('a.browse_results').unbind('click'); $('a.delete_results').unbind('click'); $('#buttonGo').unbind('click'); $('#togglesearchresultlink').unbind('click'); $("#togglequerybox").unbind('click'); $('#togglesearchformlink').unbind('click'); $(document).off('submit', "#db_search_form.ajax"); }); AJAX.registerOnload('db_search.js', function () { /** Hide the table link in the initial search result */ var icon = PMA_getImage('s_tbl.png', '', {'id': 'table-image'}).toString(); $("#table-info").prepend(icon).hide(); /** Hide the browse and deleted results in the new search criteria */ $('#buttonGo').click(function () { $("#table-info").hide(); $('#browse-results').hide(); $('#sqlqueryform').hide(); $('#togglequerybox').hide(); }); /** * Prepare a div containing a link for toggle the search results */ $('#togglesearchresultsdiv') /** don't show it until we have results on-screen */ .hide(); /** * Changing the displayed text according to * the hide/show criteria in search result forms */ $('#togglesearchresultlink') .html(PMA_messages.strHideSearchResults) .bind('click', function () { var $link = $(this); $('#searchresults').slideToggle(); if ($link.text() == PMA_messages.strHideSearchResults) { $link.text(PMA_messages.strShowSearchResults); } else { $link.text(PMA_messages.strHideSearchResults); } /** avoid default click action */ return false; }); /** * Prepare a div containing a link for toggle the search form, * otherwise it's incorrectly displayed after a couple of clicks */ $('#togglesearchformdiv') .hide(); // don't show it until we have results on-screen /** * Changing the displayed text according to * the hide/show criteria in search form */ $("#togglequerybox") .hide() .bind('click', function () { var $link = $(this); $('#sqlqueryform').slideToggle("medium"); if ($link.text() == PMA_messages.strHideQueryBox) { $link.text(PMA_messages.strShowQueryBox); } else { $link.text(PMA_messages.strHideQueryBox); } /** avoid default click action */ return false; }); /** don't show it until we have results on-screen */ /** * Changing the displayed text according to * the hide/show criteria in search criteria form */ $('#togglesearchformlink') .html(PMA_messages.strShowSearchCriteria) .bind('click', function () { var $link = $(this); $('#db_search_form').slideToggle(); if ($link.text() == PMA_messages.strHideSearchCriteria) { $link.text(PMA_messages.strShowSearchCriteria); } else { $link.text(PMA_messages.strHideSearchCriteria); } /** avoid default click action */ return false; }); /* * Ajax Event handler for retrieving the results from a table */ $(document).on('click', 'a.browse_results', function(e){ e.preventDefault(); /** Hides the results shown by the delete criteria */ var $msg = PMA_ajaxShowMessage(PMA_messages.strBrowsing, false); $('#sqlqueryform').hide(); $('#togglequerybox').hide(); /** Load the browse results to the page */ $("#table-info").show(); var table_name = $(this).data('table-name'); $('#table-link').attr({"href" : $(this).attr('href')}).text(table_name); var url = $(this).attr('href') + "#searchresults"; var browse_sql = $(this).data('browse-sql'); var params = { 'ajax_request': true, 'is_js_confirmed': true, 'sql_query' : browse_sql }; $.post(url, params, function (data) { if (typeof data !== 'undefined' && data.success) { $('#browse-results').html(data.message); PMA_ajaxRemoveMessage($msg); $('.table_results').each(function () { PMA_makegrid(this, true, true, true, true); }); $('#browse-results').show(); PMA_highlightSQL($('#browse-results')); $('html, body') .animate({ scrollTop: $("#browse-results").offset().top }, 1000); } else { PMA_ajaxShowMessage(data.error, false); } }); }); /* * Ajax Event handler for deleting the results from a table */ $(document).on('click', 'a.delete_results', function(e){ e.preventDefault(); /** Hides the results shown by the browse criteria */ $("#table-info").hide(); $('#sqlqueryform').hide(); $('#togglequerybox').hide(); /** Conformation message for deletion */ var msg = PMA_sprintf( PMA_messages.strConfirmDeleteResults, $(this).data('table-name') ); if (confirm(msg)) { var $msg = PMA_ajaxShowMessage(PMA_messages.strDeleting, false); /** Load the deleted option to the page*/ $('#sqlqueryform').html(''); var params = { 'ajax_request': true, 'is_js_confirmed': true, 'sql_query': $(this).data('delete-sql') }; var url = $(this).attr('href'); $.post(url, params, function (data) { if (typeof data === 'undefined' || !data.success) { PMA_ajaxShowMessage(data.error, false); return; } $('#sqlqueryform').html(data.sql_query); /** Refresh the search results after the deletion */ document.getElementById('buttonGo').click(); $('#togglequerybox').html(PMA_messages.strHideQueryBox); /** Show the results of the deletion option */ $('#browse-results').hide(); $('#sqlqueryform').show(); $('#togglequerybox').show(); $('html, body') .animate({ scrollTop: $("#browse-results").offset().top }, 1000); PMA_ajaxRemoveMessage($msg); }); } }); /** * Ajax Event handler for retrieving the result of an SQL Query */ $(document).on('submit', "#db_search_form.ajax", function (event) { event.preventDefault(); var $msgbox = PMA_ajaxShowMessage(PMA_messages.strSearching, false); // jQuery object to reuse var $form = $(this); PMA_prepareForAjaxRequest($form); var url = $form.serialize() + "&submit_search=" + $("#buttonGo").val(); $.post($form.attr('action'), url, function (data) { if (typeof data !== 'undefined' && data.success === true) { // found results $("#searchresults").html(data.message); $('#togglesearchresultlink') // always start with the Show message .text(PMA_messages.strHideSearchResults); $('#togglesearchresultsdiv') // now it's time to show the div containing the link .show(); $('#searchresults').show(); $('#db_search_form') // workaround for Chrome problem (bug #3168569) .slideToggle() .hide(); $('#togglesearchformlink') // always start with the Show message .text(PMA_messages.strShowSearchCriteria); $('#togglesearchformdiv') // now it's time to show the div containing the link .show(); } else { // error message (zero rows) $("#searchresults").html(data.error).show(); } PMA_ajaxRemoveMessage($msgbox); }); }); }); // end $()
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
codemirror | Folder | 0755 |
|
|
jqplot | Folder | 0755 |
|
|
jquery | Folder | 0755 |
|
|
openlayers | Folder | 0755 |
|
|
pmd | Folder | 0755 |
|
|
tracekit | Folder | 0755 |
|
|
transformations | Folder | 0755 |
|
|
ajax.js | File | 28.9 KB | 0644 |
|
big_ints.js | File | 1.88 KB | 0644 |
|
chart.js | File | 17.84 KB | 0644 |
|
common.js | File | 18.36 KB | 0644 |
|
config.js | File | 25.86 KB | 0644 |
|
console.js | File | 57.53 KB | 0644 |
|
cross_framing_protection.js | File | 468 B | 0644 |
|
db_central_columns.js | File | 10.63 KB | 0644 |
|
db_operations.js | File | 5.76 KB | 0644 |
|
db_qbe.js | File | 2.04 KB | 0644 |
|
db_search.js | File | 8.42 KB | 0644 |
|
db_structure.js | File | 15.42 KB | 0644 |
|
db_tracking.js | File | 3.22 KB | 0644 |
|
doclinks.js | File | 20.16 KB | 0644 |
|
error_report.js | File | 9.87 KB | 0644 |
|
export.js | File | 28.66 KB | 0644 |
|
functions.js | File | 162.06 KB | 0644 |
|
get_image.js.php | File | 4.65 KB | 0644 |
|
get_scripts.js.php | File | 1.93 KB | 0644 |
|
gis_data_editor.js | File | 14.33 KB | 0644 |
|
import.js | File | 5.49 KB | 0644 |
|
indexes.js | File | 26.3 KB | 0644 |
|
keyhandler.js | File | 3.25 KB | 0644 |
|
line_counts.php | File | 36.92 KB | 0644 |
|
makegrid.js | File | 95.13 KB | 0644 |
|
menu-resizer.js | File | 6.48 KB | 0644 |
|
messages.php | File | 38.55 KB | 0644 |
|
microhistory.js | File | 11.22 KB | 0644 |
|
multi_column_sort.js | File | 2.83 KB | 0644 |
|
navigation.js | File | 53.8 KB | 0644 |
|
normalization.js | File | 26.39 KB | 0644 |
|
page_settings.js | File | 1.66 KB | 0644 |
|
replication.js | File | 3.03 KB | 0644 |
|
rte.js | File | 46.45 KB | 0644 |
|
server_databases.js | File | 4.96 KB | 0644 |
|
server_plugins.js | File | 525 B | 0644 |
|
server_privileges.js | File | 16.23 KB | 0644 |
|
server_status_advisor.js | File | 3.6 KB | 0644 |
|
server_status_monitor.js | File | 84.43 KB | 0644 |
|
server_status_processes.js | File | 5.97 KB | 0644 |
|
server_status_queries.js | File | 950 B | 0644 |
|
server_status_sorter.js | File | 2.51 KB | 0644 |
|
server_status_variables.js | File | 3.57 KB | 0644 |
|
server_user_groups.js | File | 1.34 KB | 0644 |
|
server_variables.js | File | 5.93 KB | 0644 |
|
sprintf.js | File | 7.21 KB | 0644 |
|
sql.js | File | 32.71 KB | 0644 |
|
tbl_change.js | File | 27.8 KB | 0644 |
|
tbl_chart.js | File | 13.61 KB | 0644 |
|
tbl_find_replace.js | File | 1.55 KB | 0644 |
|
tbl_gis_visualization.js | File | 10.64 KB | 0644 |
|
tbl_operations.js | File | 12.99 KB | 0644 |
|
tbl_relation.js | File | 8.35 KB | 0644 |
|
tbl_select.js | File | 15.07 KB | 0644 |
|
tbl_structure.js | File | 20.41 KB | 0644 |
|
tbl_tracking.js | File | 3.44 KB | 0644 |
|
tbl_zoom_plot_jqplot.js | File | 22.55 KB | 0644 |
|
whitelist.php | File | 1.1 KB | 0644 |
|