--- vardump.module.old 2007-11-04 07:02:35.000000000 +0100 +++ vardump.module 2008-11-06 17:41:26.000000000 +0100 @@ -69,6 +69,7 @@ VARDUMP_OUTPUT_FILE => t('file'), ) ); + $form['filter'] = array('#type' => 'textfield', '#title' => 'filter', '#description' => 'Limit the result set with an SQL LIKE filter. Example: pathauto_%.'); $form['submit'] = array('#type' => 'submit', '#value' => t('Dump variable table'), ); @@ -185,8 +186,12 @@ /** * @todo refactor export code */ -function vardump_dump_rows($format=VARDUMP_FORMAT_NAMEVALUE, $destination=VARDUMP_OUTPUT_SCREEN) { - $result = db_query('SELECT name, value FROM {variable}'); +function vardump_dump_rows($format=VARDUMP_FORMAT_NAMEVALUE, $destination=VARDUMP_OUTPUT_SCREEN, $filter = '') { + if($filter) { + $result = db_query('SELECT name, value FROM {variable} WHERE name like "'.$filter.'"'); + } else { + $result = db_query('SELECT name, value FROM {variable}'); + } while ($row = db_fetch_object($result)) { switch ($format) { case VARDUMP_FORMAT_XML: @@ -211,11 +216,12 @@ function vardump_admin_form_submit($form_id, $form_values) { $format = $form_values['output_format']; $destination = $form_values['output_destination']; + $filter = $form_values['filter']; if ($destination == VARDUMP_OUTPUT_SCREEN) { - print (theme('page', vardump_dump_variables($format, $destination))); + print (theme('page', vardump_dump_variables($format, $destination, $filter))); } else { - vardump_dump_variables($format, $destination); + vardump_dump_variables($format, $destination, $filter); drupal_goto('admin'); } } @@ -224,9 +230,9 @@ * @todo If destination is file, then create an entry for the file in * the files table */ -function vardump_dump_variables($format, $destination=VARDUMP_OUTPUT_SCREEN) { +function vardump_dump_variables($format, $destination=VARDUMP_OUTPUT_SCREEN, $filter = '') { $output = vardump_dump_init($format, $destination); - $output .= vardump_dump_rows($format, $destination); + $output .= vardump_dump_rows($format, $destination, $filter); $output .= vardump_dump_finish($format, $destination); if ($destination != VARDUMP_OUTPUT_SCREEN) { $date = date('Y-m-d@H\hi');