Commit b57601c3 by Muhammad Usman

csv export

parent b243c5f9
...@@ -6,14 +6,39 @@ function vq_theme_settings_page() ...@@ -6,14 +6,39 @@ function vq_theme_settings_page()
<div class="wrap"> <div class="wrap">
<h1>Theme Settings</h1> <h1>Theme Settings</h1>
<form method="post" action="options.php"> <form method="post" action="options.php">
<button class="my-5" type="button" onclick="exportCSV()">Export Subscribers</button>
<?php <?php
settings_fields("section"); settings_fields("section");
do_settings_sections("hosting-review-theme-options"); do_settings_sections("hosting-review-theme-options");
do_settings_sections("hosting-server-locations"); do_settings_sections("hosting-server-locations");
global $wpdb;
$subTableName = $wpdb->prefix . "review_subscribers";
$oldResutls = $wpdb->get_results("SELECT * FROM $subTableName");
submit_button(); submit_button();
?> ?>
<script>
var subscribers = <?php echo json_encode($oldResutls) ? json_encode($oldResutls) : '[]' ?>;
function exportCSV() {
const list = subscribers.map(s => [s.id, s.name, s.email]);
let csvContent = "data:text/csv;charset=utf-8,";
list.forEach(function(rowArray) {
let row = rowArray.join(",");
csvContent += row + "\r\n";
});
var encodedUri = encodeURI(csvContent);
window.open(encodedUri);
}
</script>
</form> </form>
</div> </div>
<?php <?php
......
...@@ -35,8 +35,8 @@ ...@@ -35,8 +35,8 @@
if (subscriberNameEl.value.trim() && validateEmail(subscriberEmailEl.value)) { if (subscriberNameEl.value.trim() && validateEmail(subscriberEmailEl.value)) {
var actData = { var actData = {
'action': 'add_review_subscribers', 'action': 'add_review_subscribers',
'email': subscriberNameEl.value, 'email': subscriberEmailEl.value,
'name': subscriberEmailEl.value 'name': subscriberNameEl.value
}; };
$.post(ajax_url, actData, function(response) { $.post(ajax_url, actData, function(response) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment