-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathget_csv.php
More file actions
115 lines (106 loc) · 3.86 KB
/
Copy pathget_csv.php
File metadata and controls
115 lines (106 loc) · 3.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<?php
header("Content-type: text/csv");
header("Cache-Control: no-store, no-cache");
header('Content-Disposition: attachment; filename="groups-export.csv"');
include_once( "../../../wp-load.php" );
function ge_csv_export() {
$outstream = fopen("php://output",'w');
$ge_group_id = (isset($_POST['ge_group_id']))? $_POST['ge_group_id'] : null;
$ge_export_id = (isset($_POST['ge_export_id']))? $_POST['ge_export_id'] : null;
$ge_export_fname = (isset($_POST['ge_export_fname']))? $_POST['ge_export_fname'] : null;
$ge_export_lname = (isset($_POST['ge_export_lname']))? $_POST['ge_export_lname'] : null;
$ge_export_flname = (isset($_POST['ge_export_flname']))? $_POST['ge_export_flname'] : null;
$ge_export_email = (isset($_POST['ge_export_email']))? $_POST['ge_export_email'] : null;
$ge_field_delimitor = (isset($_POST['ge_field_delimitor']))? $_POST['ge_field_delimitor'] : null;
$ge_oneline = (isset($_POST['ge_oneline']))? $_POST['ge_oneline'] : null;
$field_delimitor = null;
if ($ge_field_delimitor == "comma") {
$field_delimitor = ',';
} elseif ($ge_field_delimitor == "colon") {
$field_delimitor = ':';
} elseif ($ge_field_delimitor == "semicolon") {
$field_delimitor = ';';
} elseif ($ge_field_delimitor == "pipe") {
$field_delimitor = '|';
} elseif ($ge_field_delimitor == "caret") {
$field_delimitor = '^';
} elseif ($ge_field_delimitor == "tab") {
$field_delimitor = "\t";
}
global $wpdb;
$user_ids = $wpdb->get_results(
"
SELECT *
FROM `wp_groups_user_group`
WHERE `group_id` = $ge_group_id
"
);
$result = array();
foreach ( $user_ids as $user_id ) {
$result[$user_id->user_id] = array();
// ID
if(isset($ge_export_id) && $ge_export_id == 'on') {
$result[$user_id->user_id]['id'] = $user_id->user_id;
}
// First and/or Last Name
if((isset($ge_export_fname) && $ge_export_fname == 'on')) {
$user_name = $wpdb->get_row(
"
SELECT
(SELECT `meta_value` FROM `wp_usermeta` WHERE `user_id` = $user_id->user_id AND `meta_key` = 'first_name') AS first_name,
(SELECT `meta_value` FROM `wp_usermeta` WHERE `user_id` = $user_id->user_id AND `meta_key` = 'last_name') AS last_name
"
);
if((isset($ge_export_fname) && $ge_export_fname == 'on')) {
$result[$user_id->user_id]['fname'] = $user_name->first_name;
}
if((isset($ge_export_lname) && $ge_export_lname == 'on')) {
$result[$user_id->user_id]['lname'] = $user_name->last_name;
}
if((isset($ge_export_flname) && $ge_export_flname == 'on')) {
$result[$user_id->user_id]['flname'] = $user_name->first_name . ' ' . $user_name->last_name;
}
}
// Email
if(isset($ge_export_email) && $ge_export_email == 'on') {
$user_email = $wpdb->get_var(
"
SELECT `user_email`
FROM `wp_users`
WHERE `ID` = $user_id->user_id
"
);
$result[$user_id->user_id]['email'] = $user_email;
}
}
if ($ge_oneline == 'on') {
$csv_string = '';
$first = true;
foreach ($result as $row) {
if($first == true) {
reset($row);
$csv_string .= current($row);
$first = false;
//$csv_string = 'line 1';
} else {
reset($row);
$csv_string .= $field_delimitor;
$csv_string .= current($row);
//$csv_string .= $field_delimitor . $row;
}
}
fwrite($outstream, $csv_string);
} else {
foreach ($result as $row) {
fputcsv($outstream, $row, $field_delimitor, '"');
}
}
fclose($outstream);
}
/*
if ($ge_field_delimitor != "tab"){
ob_end_clean();
}
*/
ge_csv_export();
?>