function export_csv($window) { global $statusbar; $filename = "todo_items.csv"; $filename = wb_sys_dlg_save($window, "Export CSV", "CSV files (*.csv, *.txt)*.csv;*.txtAll files (*.*)*.*" . "", null, $filename); if (!$filename) { return; } $data = db_get_data("item", null, ""); $csv = ""; foreach ($data as $entry) { $nelem = count($entry); for ($i = 1; $i < $nelem; $i++) { $value = $entry[$i]; $comma = $i < $nelem - 1 ? "," : ""; $csv .= is_numeric(trim($value)) ? trim($value) . $comma : "\"" . addcslashes($value, "..'`\"\r\n\t") . "\"{$comma}"; } $csv .= "\r\n"; } file_put_contents($filename, $csv); wb_set_text($statusbar, basename($filename) . " exported successfully."); }
function show_save_dialog($title) { // get file extension $ext = trim($this->get_ext()); // set filter $file_filter = array(); if ($ext != '') { $file_filter[] = array("{$ext} file", "*.{$ext}"); } $file_filter[] = array('All files', '*.*'); // get filename $filename = $this->get_filename(); // show save dialog $filepath = wb_sys_dlg_save($this->wb_parent_window, $title, $file_filter, '', $filename); if (!empty($filepath) and $filepath != '') { // set the path of the new file $this->set_target_file($filepath); return true; } else { return false; } }