The branch, master has been updated
       via  564d4d7d2daaef2ed3e669d0a7ee7cdd2907f2e8 (commit)
       via  8af00da90d7baf8a2c848b2e2ac850b4db031e1b (commit)
       via  efa8e3421bd786f0ba0a27b0f84280717c26a48a (commit)
       via  a994e13c3315f45d88782b51c0f71385074a8251 (commit)
      from  896d3bd54eb166f33521c6101272130513599904 (commit)


- Log -----------------------------------------------------------------
commit 564d4d7d2daaef2ed3e669d0a7ee7cdd2907f2e8
Author: Marc Delisle <[email protected]>
Date:   Mon Feb 28 12:54:04 2011 -0500

    Typos

commit 8af00da90d7baf8a2c848b2e2ac850b4db031e1b
Author: Marc Delisle <[email protected]>
Date:   Mon Feb 28 12:52:04 2011 -0500

    ChangeLog for Ajaxify browse and delete criteria

commit efa8e3421bd786f0ba0a27b0f84280717c26a48a
Author: Marc Delisle <[email protected]>
Date:   Mon Feb 28 12:50:02 2011 -0500

    Deactivate these messages as we are currently in message freeze for 3.4

commit a994e13c3315f45d88782b51c0f71385074a8251
Author: Thilanka <[email protected]>
Date:   Mon Feb 28 12:44:44 2011 -0500

    Ajaxify browse and delete criteria in DB search

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                |    2 +
 db_search.php            |   32 +++++++++++----
 js/db_search.js          |   98 ++++++++++++++++++++++++++++++++++++++++++----
 js/messages.php          |    2 +
 libraries/common.lib.php |    2 +-
 5 files changed, 118 insertions(+), 18 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 6ed9d74..a73f0fb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -138,6 +138,8 @@
 - rfe #3148361 [interface] Replace hard coded limit with $cfg['LimitChars'].
 - bug #3177136 [interface] Indicate that bookmark is being used on browse.
 - [interface] Indicate shared bookmarks in interface.
+- patch #3176420 [Search] Ajaxify browse and delete criteria in DB Search,
+  thanks to Thilanka Kaushalya
 
 3.3.10.0 (not yet released)
 - patch #3147400 [structure] Aria table size printed as unknown,
diff --git a/db_search.php b/db_search.php
index 4275399..8362fc7 100644
--- a/db_search.php
+++ b/db_search.php
@@ -249,16 +249,16 @@ if (isset($_REQUEST['submit_search'])) {
 
         if ($res_cnt > 0) {
             $this_url_params['sql_query'] = $newsearchsqls['select_fields'];
-            echo '<td>' . PMA_linkOrButton(
-                    'sql.php' . PMA_generate_common_url($this_url_params),
-                    __('Browse'), '') .  "</td>\n";
-
+             $browse_result_path = 'sql.php' . 
PMA_generate_common_url($this_url_params);
+             ?>
+            <td> <a name="browse_search" href="<?php echo $browse_result_path; 
?>" onclick="loadResult('<?php echo $browse_result_path ?> ',' <?php echo  
$each_table?> ' , '<?php echo PMA_generate_common_url($GLOBALS['db'], 
$each_table)?>','<?php echo ($GLOBALS['cfg']['AjaxEnable']); ?>');return 
false;" ><?php echo __('Browse') ?></a>   </td>
+            <?php
             $this_url_params['sql_query'] = $newsearchsqls['delete'];
-            echo '<td>' . PMA_linkOrButton(
-                    'sql.php' . PMA_generate_common_url($this_url_params),
-                    __('Delete'), sprintf(__('Delete the matches for the %s 
table?'), htmlspecialchars($each_table))) .  "</td>\n";
-
-        } else {
+            $delete_result_path = 'sql.php' . 
PMA_generate_common_url($this_url_params);
+            ?>
+            <td> <a name="delete_search" href="<?php echo $delete_result_path; 
?>" onclick="deleteResult('<?php echo $delete_result_path ?>' , ' <?php echo 
__('Delete the matches for the '. $each_table . ' table?') ?>','<?php echo 
($GLOBALS['cfg']['AjaxEnable']); ?>');return false;" ><?php echo __('Delete') 
?></a>   </td>
+            <?php
+         } else {
             echo '<td>&nbsp;</td>' . "\n"
                 .'<td>&nbsp;</td>' . "\n";
         }// end if else
@@ -360,6 +360,20 @@ $alter_select =
 </fieldset>
 </form>
 
+<!-- These two table-image and table-link elements display the table name in 
browse search results  -->
+<div id='table-info'>
+<a class="item" id="table-link" ></a>
+</div>
+<div id="browse-results">
+<!-- this browse-results div is used to load the browse and delete results in 
the db search -->
+</div>
+<br class="clearfloat" />
+<div id="sqlqueryform">
+<!-- this sqlqueryform div is used to load the delete form in the db search -->
+</div>
+<!--  toggle query box link-->
+<a id="togglequerybox"></a>
+
 <?php
 /**
  * Displays the footer
diff --git a/js/db_search.js b/js/db_search.js
index 0a82a8f..84a3dd8 100644
--- a/js/db_search.js
+++ b/js/db_search.js
@@ -14,25 +14,107 @@
  * Retrieve result of SQL query
  */
 
+/** Loads the database search results */
+function loadResult(result_path , table_name , link , ajaxEnable){
+    $(document).ready(function() {
+        if(ajaxEnable)
+        {
+            /**   Hides the results shown by the delete criteria */
+            //PMA_ajaxShowMessage(PMA_messages['strBrowsing']);
+            $('#sqlqueryform').hide();
+            $('#togglequerybox').hide();
+            /**  Load the browse results to the page */
+            $("#table-info").show();
+            $('#table-link').attr({"href" : 'sql.php?'+link 
}).text(table_name);
+            $('#browse-results').load(result_path + " '"+'#sqlqueryresults' + 
"'").show();
+        }
+        else
+        {
+            event.preventDefault();
+        }
+    });
+}
+
+/**  Delete the selected search results */
+function deleteResult(result_path , msg , ajaxEnable){
+    $(document).ready(function() {
+        /**  Hides the results shown by the browse criteria */
+        $("#table-info").hide();
+        $('#browse-results').hide();
+        $('#sqlqueryform').hide();
+        $('#togglequerybox').hide();
+        /** Conformation message for deletion */
+        if(confirm(msg))
+        {
+            if(ajaxEnable)
+            {
+                /** Load the deleted option to the page*/
+                $('#browse-results').load(result_path + " '"+'#result_query' + 
"'");
+                $('#sqlqueryform').load(result_path + " '"+'#sqlqueryform' + 
"'");
+                $('#togglequerybox').html(PMA_messages['strHideQueryBox']);
+
+                /** Refresh the search results after the deletion */
+                document.getElementById('buttonGo'). click();
+                //PMA_ajaxShowMessage(PMA_messages['strDeleting']);
+                /** Show the results of the deletion option */
+                $('#browse-results').show();
+                $('#sqlqueryform').show();
+                $('#togglequerybox').show();
+            }
+            else
+            {
+                event.preventDefault();
+            }
+       }
+    });
+}
+
 $(document).ready(function() {
 
     /**
      * Set a parameter for all Ajax queries made on this page.  Don't let the
-     * web server serve cached pages
+     * web server serve cached pagesshow
      */
     $.ajaxSetup({
         cache: 'false'
     });
 
+    /** Hide the table link in the initial search result */
+    $("#table-info").prepend('<img id="table-image" 
src="./themes/original/img/s_tbl.png" />').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, otherwise it's incorrectly displayed 
+     * Prepare a div containing a link for toggle the search form, otherwise 
it's incorrectly displayed
      * after a couple of clicks
      */
     $('<div id="togglesearchformdiv"><a id="togglesearchformlink"></a></div>')
     .insertAfter('#db_search_form')
-    // don't show it until we have results on-screen
+    /** don't show it until we have results on-screen */
     .hide();
 
+    /** Changing the displayed text according to the hide/show criteria in 
search form*/
+    $("#togglequerybox").hide();
+    $("#togglequerybox").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() {
@@ -43,7 +125,7 @@ $(document).ready(function() {
             } else {
                 $link.text(PMA_messages['strHideSearchCriteria']);
             }
-            // avoid default click action
+            /** avoid default click action */
             return false;
        });
     /**
@@ -59,8 +141,8 @@ $(document).ready(function() {
         PMA_ajaxShowMessage(PMA_messages['strSearching']);
         // jQuery object to reuse
         $form = $(this);
-        
-        // add this hidden field just once 
+
+        // add this hidden field just once
         if (! $form.find('input:hidden').is('#ajax_request_hidden')) {
             $form.append('<input type="hidden" id="ajax_request_hidden" 
name="ajax_request" value="true" />');
         }
@@ -78,12 +160,12 @@ $(document).ready(function() {
                     // always start with the Show message
                     .text(PMA_messages['strShowSearchCriteria'])
                 $('#togglesearchformdiv')
-                    // now it's time to show the div containing the link 
+                    // now it's time to show the div containing the link
                     .show();
             } else {
                 // error message (zero rows)
                 $("#sqlqueryresults").html(response['message']);
-            }            
+            }
         })
     })
 }, 'top.frame_content'); // end $(document).ready()
diff --git a/js/messages.php b/js/messages.php
index fa28771..fc28b2e 100644
--- a/js/messages.php
+++ b/js/messages.php
@@ -79,6 +79,8 @@ $js_messages['strNo'] = __('No');
 
 /* For db_search.js */
 $js_messages['strSearching'] = __('Searching');
+//$js_messages['strBrowsing'] = __('Browsing');
+//$js_messages['strDeleting'] = __('Deleting');
 
 /* For sql.js */
 $js_messages['strHideQueryBox'] = __('Hide query box');
diff --git a/libraries/common.lib.php b/libraries/common.lib.php
index c30d7d0..4f8427b 100644
--- a/libraries/common.lib.php
+++ b/libraries/common.lib.php
@@ -1009,7 +1009,7 @@ function PMA_showMessage($message, $sql_query = null, 
$type = 'notice', $is_view
 
     // In an Ajax request, $GLOBALS['cell_align_left'] may not be defined. 
Hence,
     // check for it's presence before using it
-    echo '<div align="' . ( isset($GLOBALS['cell_align_left']) ? 
$GLOBALS['cell_align_left'] : '' ) . '">' . "\n";
+    echo '<div id="result_query" align="' . ( 
isset($GLOBALS['cell_align_left']) ? $GLOBALS['cell_align_left'] : '' ) . '">' 
. "\n";
 
     if ($message instanceof PMA_Message) {
         if (isset($GLOBALS['special_message'])) {


hooks/post-receive
-- 
phpMyAdmin

------------------------------------------------------------------------------
Free Software Download: Index, Search & Analyze Logs and other IT data in 
Real-Time with Splunk. Collect, index and harness all the fast moving IT data 
generated by your applications, servers and devices whether physical, virtual
or in the cloud. Deliver compliance at lower cost and gain new business 
insights. http://p.sf.net/sfu/splunk-dev2dev 
_______________________________________________
Phpmyadmin-git mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/phpmyadmin-git

Reply via email to