PluginProbe ʕ •ᴥ•ʔ
Hustle – Email Marketing, Lead Generation, Optins, Popups / 7.3.7
Hustle – Email Marketing, Lead Generation, Optins, Popups v7.3.7
7.8.13 7.8.13.1 trunk 3.0 3.1 3.1.1 3.1.2 3.1.3 3.1.4 4.3.2 4.4.4 4.4.5 4.4.5.1 4.4.5.4 4.6 4.6.1.1 4.6.1.4 4.7.0.2 4.7.0.3 4.7.0.7 4.7.0.9 4.7.1.0 4.7.1.1 4.8.0.0 5.0.0 5.0.1 5.0.1.1 5.0.1.2 5.1 5.1.1 5.1.2 5.1.3 5.1.3.1 5.1.3.2 5.1.4 5.1.5 6.0 6.0.1 6.0.2 6.0.3 6.0.4.2 6.0.5 6.0.6.1 6.0.7 6.0.8.1 6.0.9 7.0.0.1 7.0.2 7.0.3 7.0.4 7.1.0 7.1.1 7.2.0 7.2.1 7.3.0 7.3.1 7.3.3 7.3.5 7.3.6 7.3.7 7.4.0 7.4.1 7.4.11 7.4.13 7.4.13.1 7.4.2 7.4.3 7.4.4 7.4.5 7.4.5.1 7.4.5.2 7.4.6 7.4.7 7.5.0 7.6.0 7.6.1 7.6.3 7.6.4 7.6.6 7.7.0 7.7.1 7.8.0 7.8.1 7.8.10 7.8.10.1 7.8.10.2 7.8.11 7.8.12 7.8.12.1 7.8.2 7.8.3 7.8.4 7.8.5 7.8.6 7.8.7 7.8.8 7.8.9 7.8.9.1 7.8.9.2 7.8.9.3
wordpress-popup / views / admin / integrations / integration-row.php
wordpress-popup / views / admin / integrations Last commit date
integration-row.php 5 years ago page-table-connected.php 5 years ago page-table-not-connected.php 6 years ago wizard-table-connected.php 5 years ago wizard-table-not-connected.php 5 years ago
integration-row.php
250 lines
1 <?php
2 /**
3 * Row for the integrations table for both global and wizard.
4 *
5 * @package Hustle
6 * @since 4.0.0
7 */
8
9 $empty_icon = self::$plugin_url . 'assets/images/hustle-empty-icon.png';
10
11 $module_id = isset( $module_id ) ? $module_id : 0;
12
13 $show_action = false;
14
15 $icon_class_action = 'sui-icon-plus';
16 $tooltip = __( 'Configure Integration', 'hustle' );
17 $providers_action = 'hustle_provider_settings';
18
19 $multi_id = 0;
20 $global_multi_id = 0;
21 $multi_name = false;
22
23 $advertising = false;
24
25 if ( ! empty( $module_id ) ) {
26
27 // On wizards.
28 $providers_action = 'hustle_provider_form_settings';
29 $show_action = false;
30 $icon_class_action = 'sui-icon-plus';
31
32 if (
33 isset( $provider['is_form_settings_available'] ) &&
34 ! empty( $provider['is_form_settings_available'] ) &&
35 true === $provider['is_form_settings_available']
36 ) {
37
38 $show_action = true;
39
40 if ( $provider['is_allow_multi_on_form'] ) {
41
42 if ( isset( $provider['multi_name'] ) ) {
43
44 $icon_class_action = 'sui-icon-widget-settings-config';
45 $tooltip = __( 'Configure Integration', 'hustle' );
46 $multi_id = $provider['multi_id'];
47 $multi_name = $provider['multi_name'];
48
49 } else {
50
51 if ( isset( $provider['multi_id'] ) ) {
52 $multi_id = $provider['multi_id'];
53 }
54
55 $icon_class_action = 'sui-icon-plus';
56 $tooltip = __( 'Add Integration', 'hustle' );
57
58 }
59 } else {
60
61 if ( $provider['is_form_connected'] ) {
62
63 $icon_class_action = 'sui-icon-widget-settings-config';
64 $tooltip = __( 'Configure Integration', 'hustle' );
65
66 } else {
67
68 $icon_class_action = 'sui-icon-plus';
69 $tooltip = __( 'Add Integration', 'hustle' );
70
71 }
72 }
73 }
74 } else {
75
76 // On integrations page.
77 if (
78 isset( $provider['is_settings_available'] ) &&
79 ! empty( $provider['is_settings_available'] ) &&
80 true === $provider['is_settings_available']
81 ) {
82
83 $show_action = true;
84
85 if ( $provider['is_multi_on_global'] ) {
86
87 if ( isset( $provider['multi_name'] ) ) {
88
89 $icon_class_action = 'sui-icon-widget-settings-config';
90 $tooltip = __( 'Configure Integration', 'hustle' );
91 $global_multi_id = $provider['global_multi_id'];
92 $multi_name = $provider['multi_name'];
93
94 } else {
95
96 if ( isset( $provider['global_multi_id'] ) ) {
97 $global_multi_id = $provider['global_multi_id'];
98 }
99
100 $icon_class_action = 'sui-icon-plus';
101 $tooltip = __( 'Add Integration', 'hustle' );
102
103 }
104 } else {
105
106 if ( $provider['is_connected'] ) {
107
108 $icon_class_action = 'sui-icon-widget-settings-config';
109 $tooltip = __( 'Configure Integration', 'hustle' );
110
111 } else {
112
113 $icon_class_action = 'sui-icon-plus';
114 $tooltip = __( 'Add Integration', 'hustle' );
115
116 if ( 'zapier' === $provider['slug'] ) {
117 $advertising = true;
118 }
119 }
120 }
121 }
122 } ?>
123
124 <tr
125 <?php
126 if ( true === $advertising ) {
127 echo ' class="hui-app--promote"'; }
128 ?>
129 >
130
131 <td class="sui-table-item-title">
132
133 <div class="hui-app--wrapper">
134
135 <?php if ( true === $advertising ) { ?>
136
137 <?php if ( ! empty( $provider['banner_1x'] ) || ! empty( $provider['banner_2x'] ) ) { ?>
138
139 <div
140 role="banner"
141 class="hui-app--banner"
142 data-app="<?php echo esc_attr( $provider['slug'] ); ?>"
143 <?php ( ! empty( $provider['title'] ) ) ? '' : 'aria-hidden="true"'; ?>
144 >
145
146 <?php if ( ! empty( $provider['banner_1x'] ) && ! empty( $provider['banner_2x'] ) ) { ?>
147
148 <img
149 src="<?php echo esc_url( $provider['banner_1x'] ); ?>"
150 srcset="<?php echo esc_url( $provider['banner_1x'] ); ?> 1x, <?php echo esc_url( $provider['banner_2x'] ); ?> 2x"
151 alt="<?php echo esc_attr( $provider['title'] ); ?>"
152 class="sui-image"
153 />
154
155 <?php } else { ?>
156
157 <?php
158 $banner = '';
159
160 if ( ! empty( $provider['banner_1x'] ) ) {
161 $banner = $provider['banner_1x'];
162 }
163
164 if ( ! empty( $provider['banner_2x'] ) ) {
165 $banner = $provider['banner_2x'];
166 }
167 ?>
168
169 <img
170 src="<?php echo esc_url( $banner ); ?>"
171 alt="<?php echo esc_attr( $provider['title'] ); ?>"
172 class="sui-image"
173 />
174
175 <?php } ?>
176
177 </div>
178
179 <?php } ?>
180
181 <div class="hui-app--content">
182
183 <div class="hui-app--title">
184
185 <span><?php echo esc_html( $provider['title'] ) . ( ! empty( $provider['multi_name'] ) ? '' . esc_html( $provider['multi_name'] ) : '' ); ?></span>
186
187 <?php if ( ! empty( $provider['documentation_url'] ) ) { ?>
188 <a href="<?php echo esc_url( $provider['documentation_url'] ); ?>" target="_blank"><?php esc_html_e( 'View Docs', 'hustle' ); ?></a>
189 <?php } ?>
190
191 <?php if ( $show_action ) : ?>
192
193 <button class="sui-button-icon sui-tooltip sui-tooltip-top-right connect-integration"
194 data-tooltip="<?php echo esc_html( $tooltip ); ?>"
195 data-slug="<?php echo esc_attr( $provider['slug'] ); ?>"
196 data-image="<?php echo esc_attr( $provider['logo_2x'] ); ?>"
197 data-module_id="<?php echo esc_attr( $module_id ); ?>"
198 data-multi_id="<?php echo esc_attr( $multi_id ); ?>"
199 data-global_multi_id="<?php echo esc_attr( $global_multi_id ); ?>"
200 data-action="<?php echo esc_attr( $providers_action ); ?>"
201 data-nonce="<?php echo esc_attr( wp_create_nonce( 'hustle_provider_action' ) ); ?>">
202 <span class="<?php echo esc_attr( $icon_class_action ); ?>" aria-hidden="true"></span>
203 </button>
204
205 <?php endif; ?>
206
207 </div>
208
209 <?php if ( ! empty( $provider['short_description'] ) ) { ?>
210 <span class="hui-app--description"><?php echo wp_kses_post( $provider['short_description'] ); ?></span>
211 <?php } ?>
212
213 </div>
214
215 <?php } else { ?>
216
217 <?php
218 if ( ! empty( $provider['icon_2x'] ) ) {
219 echo $this->render_image_markup( $provider['icon_2x'], '', 'sui-image', '', '' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
220 } else {
221 echo '<span class="hui-noicon" aria-hidden="true">' . esc_html__( 'Icon', 'hustle' ) . '</span>';
222 }
223 ?>
224
225 <span><?php echo esc_html( $provider['title'] ) . ( ! empty( $provider['multi_name'] ) ? '' . esc_html( $provider['multi_name'] ) : '' ); ?></span>
226
227 <?php if ( $show_action ) : ?>
228
229 <button class="sui-button-icon sui-tooltip sui-tooltip-top-right connect-integration"
230 data-tooltip="<?php echo esc_html( $tooltip ); ?>"
231 data-slug="<?php echo esc_attr( $provider['slug'] ); ?>"
232 data-image="<?php echo esc_attr( $provider['logo_2x'] ); ?>"
233 data-module_id="<?php echo esc_attr( $module_id ); ?>"
234 data-multi_id="<?php echo esc_attr( $multi_id ); ?>"
235 data-global_multi_id="<?php echo esc_attr( $global_multi_id ); ?>"
236 data-action="<?php echo esc_attr( $providers_action ); ?>"
237 data-nonce="<?php echo esc_attr( wp_create_nonce( 'hustle_provider_action' ) ); ?>">
238 <span class="<?php echo esc_attr( $icon_class_action ); ?>" aria-hidden="true"></span>
239 </button>
240
241 <?php endif; ?>
242
243 <?php } ?>
244
245 </div>
246
247 </td>
248
249 </tr>
250