PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.9.2
GiveWP – Donation Plugin and Fundraising Platform v2.9.2
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / includes / admin / tools / export / export-functions.php
give / includes / admin / tools / export Last commit date
class-batch-export-donors.php 5 years ago class-batch-export.php 5 years ago class-core-settings-export.php 7 years ago class-export-earnings.php 5 years ago class-export.php 6 years ago class-give-export-donations.php 5 years ago export-actions.php 5 years ago export-functions.php 5 years ago give-export-donations-exporter.php 6 years ago give-export-donations-functions.php 5 years ago pdf-reports.php 5 years ago
export-functions.php
161 lines
1 <?php
2 /**
3 * Exports Functions
4 *
5 * These functions are used for exporting data from Give
6 *
7 * @package Give
8 * @subpackage Admin/Export
9 * @copyright Copyright (c) 2016, GiveWP
10 * @license https://opensource.org/licenses/gpl-license GNU Public License
11 */
12
13 // Exit if accessed directly.
14 if ( ! defined( 'ABSPATH' ) ) {
15 exit;
16 }
17
18
19 /**
20 * Process batch exports via ajax
21 *
22 * @since 1.5
23 * @return void
24 */
25 function give_do_ajax_export() {
26
27 require_once GIVE_PLUGIN_DIR . 'includes/admin/tools/export/class-batch-export.php';
28
29 parse_str( $_POST['form'], $form );
30
31 $_REQUEST = $form = (array) $form;
32
33 if (
34 ! wp_verify_nonce( $_REQUEST['give_ajax_export'], 'give_ajax_export' )
35 || ! current_user_can( 'manage_give_settings' )
36 ) {
37 die( '-2' );
38 }
39
40 /**
41 * Fires before batch export.
42 *
43 * @since 1.5
44 *
45 * @param string $class Export class.
46 */
47 do_action( 'give_batch_export_class_include', $form['give-export-class'] );
48
49 $step = absint( $_POST['step'] );
50 $class = sanitize_text_field( $form['give-export-class'] );
51 $filename = isset( $_POST['file_name'] ) ? sanitize_text_field( $_POST['file_name'] ) : null;
52
53 /* @var Give_Batch_Export $export */
54 $export = new $class( $step, $filename );
55
56 if ( ! $export->can_export() ) {
57 die( '-1' );
58 }
59
60 if ( ! $export->is_writable ) {
61 $json_args = [
62 'error' => true,
63 'message' => esc_html__( 'Export location or file not writable.', 'give' ),
64 ];
65 echo json_encode( $json_args );
66 exit;
67 }
68
69 $export->set_properties( give_clean( $_REQUEST ) );
70
71 $export->pre_fetch();
72
73 $ret = $export->process_step();
74
75 $percentage = $export->get_percentage_complete();
76
77 if ( $ret ) {
78
79 $step += 1;
80 $json_data = [
81 'step' => $step,
82 'percentage' => $percentage,
83 'file_name' => $export->filename,
84 ];
85
86 } elseif ( true === $export->is_empty ) {
87
88 $json_data = [
89 'error' => true,
90 'message' => esc_html__( 'No data found for export parameters.', 'give' ),
91 ];
92
93 } elseif ( true === $export->done && true === $export->is_void ) {
94
95 $message = ! empty( $export->message ) ?
96 $export->message :
97 esc_html__( 'Batch Processing Complete', 'give' );
98
99 $json_data = [
100 'success' => true,
101 'message' => $message,
102 ];
103
104 } else {
105
106 $args = array_merge(
107 $_REQUEST,
108 [
109 'step' => $step,
110 'class' => $class,
111 'nonce' => wp_create_nonce( 'give-batch-export' ),
112 'give_action' => 'form_batch_export',
113 'file_name' => $export->filename,
114 ]
115 );
116
117 $json_data = [
118 'step' => 'done',
119 'url' => add_query_arg( $args, admin_url() ),
120 ];
121
122 }
123
124 $export->unset_properties( give_clean( $_REQUEST ), $export );
125 echo json_encode( $json_data );
126 exit;
127 }
128
129 add_action( 'wp_ajax_give_do_ajax_export', 'give_do_ajax_export' );
130
131
132 /**
133 * This function is used to define default columns for export.
134 *
135 * Note: This function is for internal purposes only.
136 * Use filter "give_export_donors_get_default_columns" instead.
137 *
138 * @since 2.2.6
139 *
140 * @return array
141 */
142 function give_export_donors_get_default_columns() {
143
144 $default_columns = [
145 'full_name' => __( 'Name', 'give' ),
146 'email' => __( 'Email', 'give' ),
147 'address' => __( 'Address', 'give' ),
148 'userid' => __( 'User ID', 'give' ),
149 'donor_created_date' => __( 'Donor Created Date', 'give' ),
150 'donations' => __( 'Number of donations', 'give' ),
151 'donation_sum' => __( 'Total Donated', 'give' ),
152 ];
153
154 /**
155 * This filter will be used to define default columns for export.
156 *
157 * @since 2.2.6
158 */
159 return apply_filters( 'give_export_donors_get_default_columns', $default_columns );
160 }
161