PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.2.6
GiveWP – Donation Plugin and Fundraising Platform v2.2.6
4.16.4 4.16.3 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 / blocks / donation-form-grid / edit / block.js
give / blocks / donation-form-grid / edit Last commit date
components 7 years ago block.js 7 years ago inspector.js 7 years ago
block.js
79 lines
1 /**
2 * External dependencies
3 */
4 import { isEmpty, pickBy, isUndefined } from 'lodash';
5 import { stringify } from 'querystringify';
6
7 /**
8 * Wordpress dependencies
9 */
10 const { __ } = wp.i18n;
11 const { withAPIData } = wp.components;
12 const { Component } = wp.element;
13
14 /**
15 * Internal dependencies
16 */
17 import GiveBlankSlate from '../../components/blank-slate';
18 import NoForms from '../../components/no-form';
19 import FormGridPreview from './components/preview';
20
21 /**
22 * Render Block UI For Editor
23 *
24 * @class GiveDonationFormGrid
25 * @extends {Component}
26 */
27 class GiveDonationFormGrid extends Component {
28 constructor( props ) {
29 super( ...props );
30 }
31
32 /**
33 * Render block UI
34 *
35 * @returns {object} JSX Object
36 * @memberof GiveDonationFormGrid
37 */
38 render() {
39 const props = this.props,
40 { latestForms } = props,
41 { isLoading } = latestForms;
42
43 // Render block UI
44 let blockUI;
45
46 if ( isLoading || isUndefined( latestForms.data ) ) {
47 blockUI = <GiveBlankSlate title={ __( 'Loading...' ) } isLoader={ true } />;
48 } else if ( isEmpty( latestForms.data ) ) {
49 blockUI = <NoForms />;
50 } else {
51 blockUI = <FormGridPreview
52 html={ latestForms.data }
53 { ... { ...props } } />;
54 }
55
56 return ( <div className={ props.className } key="GiveDonationFormGridBlockUI">{ blockUI }</div> );
57 }
58 }
59
60 /**
61 * Export component attaching withAPIdata
62 */
63 export default withAPIData( ( props ) => {
64 const { columns, showGoal, showExcerpt, showFeaturedImage, displayType } = props.attributes;
65
66 const parameters = stringify( pickBy( {
67 columns: columns,
68 show_goal: showGoal,
69 show_excerpt: showExcerpt,
70 show_featured_image: showFeaturedImage,
71 display_type: displayType,
72 }, value => ! isUndefined( value )
73 ) );
74
75 return {
76 latestForms: `/${ giveApiSettings.rest_base }/form-grid/?${ parameters }`,
77 };
78 } )( GiveDonationFormGrid );
79