Completed
Branch FET-10586-integer-input (c3d121)
by
unknown
95:24 queued 84:35
created
admin/extend/support/templates/support_admin_details_faq.template.php 1 patch
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -1,7 +1,7 @@
 block discarded – undo
1 1
 <div class="padding">
2
-	<h3><?php esc_html_e( 'Frequently Asked Questions about Event Espresso', 'event_espresso' ); ?></h3>
2
+	<h3><?php esc_html_e('Frequently Asked Questions about Event Espresso', 'event_espresso'); ?></h3>
3 3
 	
4
-	<h4><?php esc_html_e( 'New to Event Espresso?', 'event_espresso' ); ?></h4>
4
+	<h4><?php esc_html_e('New to Event Espresso?', 'event_espresso'); ?></h4>
5 5
 
6
-	<p><?php printf( esc_html__( 'Check out the %1$squick start guide for Event Espresso 4%2$s. It has recommendations, tips, and tutorials so you can get your project started %3$squicker%4$s.', 'event_espresso' ), '<a href="https://eventespresso.com/wiki/welcome-to-event-espresso/#event-espresso-4" target="_blank">','</a>','<em>','</em>' ); ?></p>
6
+	<p><?php printf(esc_html__('Check out the %1$squick start guide for Event Espresso 4%2$s. It has recommendations, tips, and tutorials so you can get your project started %3$squicker%4$s.', 'event_espresso'), '<a href="https://eventespresso.com/wiki/welcome-to-event-espresso/#event-espresso-4" target="_blank">', '</a>', '<em>', '</em>'); ?></p>
7 7
 </div>
8 8
\ No newline at end of file
Please login to merge, or discard this patch.
public/Espresso_Arabica_2014/content-espresso_events-details.php 1 patch
Spacing   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -3,33 +3,33 @@
 block discarded – undo
3 3
 global $post;
4 4
 ?>
5 5
 <div class="event-content">
6
-<?php if ( apply_filters( 'FHEE__content_espresso_events_details_template__display_entry_meta', TRUE )): ?>
6
+<?php if (apply_filters('FHEE__content_espresso_events_details_template__display_entry_meta', TRUE)): ?>
7 7
 	<div class="entry-meta">
8
-		<span class="tags-links"><?php espresso_event_categories( $post->ID, TRUE, TRUE ); ?></span>
8
+		<span class="tags-links"><?php espresso_event_categories($post->ID, TRUE, TRUE); ?></span>
9 9
 	<?php
10
-		if ( ! post_password_required() && ( comments_open() || get_comments_number() ) ) :
10
+		if ( ! post_password_required() && (comments_open() || get_comments_number())) :
11 11
 	?>
12
-	<span class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'event_espresso' ), __( '1 Comment', 'event_espresso' ), __( '% Comments', 'event_espresso' ) ); ?></span>
12
+	<span class="comments-link"><?php comments_popup_link(__('Leave a comment', 'event_espresso'), __('1 Comment', 'event_espresso'), __('% Comments', 'event_espresso')); ?></span>
13 13
 	<?php
14 14
 		endif;
15
-		edit_post_link( __( 'Edit', 'event_espresso' ), '<span class="edit-link">', '</span>' );
15
+		edit_post_link(__('Edit', 'event_espresso'), '<span class="edit-link">', '</span>');
16 16
 	?>
17 17
 	</div>
18 18
 <?php endif;
19
-	$event_phone = espresso_event_phone( $post->ID, FALSE );
20
-	if ( $event_phone != '' ) : ?>
19
+	$event_phone = espresso_event_phone($post->ID, FALSE);
20
+	if ($event_phone != '') : ?>
21 21
 	<p>
22
-		<span class="small-text"><strong><?php _e( 'Event Phone:', 'event_espresso' ); ?> </strong></span> <?php echo $event_phone; ?>
22
+		<span class="small-text"><strong><?php _e('Event Phone:', 'event_espresso'); ?> </strong></span> <?php echo $event_phone; ?>
23 23
 	</p>
24
-<?php endif;  ?>
24
+<?php endif; ?>
25 25
 <?php
26
-	if ( apply_filters( 'FHEE__content_espresso_events_details_template__display_the_content', true ) ) {
27
-		do_action( 'AHEE_event_details_before_the_content', $post );
26
+	if (apply_filters('FHEE__content_espresso_events_details_template__display_the_content', true)) {
27
+		do_action('AHEE_event_details_before_the_content', $post);
28 28
 		echo apply_filters(
29 29
 			'FHEE__content_espresso_events_details_template__the_content',
30
-			espresso_event_content_or_excerpt( 55, null, false ) 
30
+			espresso_event_content_or_excerpt(55, null, false) 
31 31
 		);
32
-		do_action( 'AHEE_event_details_after_the_content', $post );
32
+		do_action('AHEE_event_details_after_the_content', $post);
33 33
 	}
34 34
  ?>
35 35
 </div>
Please login to merge, or discard this patch.
admin_pages/general_settings/AdminOptionsSettings.php 2 patches
Indentation   +218 added lines, -218 removed lines patch added patch discarded remove patch
@@ -30,224 +30,224 @@
 block discarded – undo
30 30
 class AdminOptionsSettings extends FormHandler
31 31
 {
32 32
 
33
-    protected $template_args = array();
34
-
35
-    /**
36
-     * Form constructor.
37
-     *
38
-     * @param \EE_Registry $registry
39
-     */
40
-    public function __construct(\EE_Registry $registry) {
41
-        parent::__construct(
42
-            esc_html__('Admin Options', 'event_espresso'),
43
-            esc_html__('Admin Options', 'event_espresso'),
44
-            'admin_option_settings',
45
-            '',
46
-            FormHandler::DO_NOT_SETUP_FORM,
47
-            $registry
48
-        );
49
-    }
50
-
51
-
52
-
53
-    /**
54
-     * @param array $template_args
55
-     */
56
-    public function setTemplateArgs(array $template_args)
57
-    {
58
-        $this->template_args = $template_args;
59
-    }
60
-
61
-
62
-
63
-    /**
64
-     * creates and returns the actual form
65
-     *
66
-     * @return EE_Form_Section_Proper
67
-     * @throws \EE_Error
68
-     */
69
-    public function generate()
70
-    {
71
-        $form = new \EE_Form_Section_Proper(
72
-            array(
73
-                'name'            => 'admin_option_settings',
74
-                'html_id'         => 'admin_option_settings',
75
-                'layout_strategy' => new EE_Admin_Two_Column_Layout(),
76
-                'subsections'     => array(
77
-                    'help_tour_activation_hdr' => new EE_Form_Section_HTML(
78
-                        EEH_HTML::h2(
79
-                            esc_html__('Help Tour Global Activation', 'event_espresso')
80
-                            . ' '
81
-                            . EEH_HTML::span(
82
-                                EEH_Template::get_help_tab_link('help_tour_activation_info'),
83
-                                'help_tour_activation'
84
-                            ),
85
-                            '', 'ee-admin-settings-hdr'
86
-                        )
87
-                    ),
88
-                    'help_tour_activation' => new EE_Yes_No_Input(
89
-                        array(
90
-                            'html_label_text' => esc_html__('Activate Global Help Tours?', 'event_espresso'),
91
-                            'html_help_text'  => esc_html__(
92
-                                'This toggles whether the Event Espresso help tours are active globally or not.',
93
-                                'event_espresso'
94
-                            ),
95
-                            'default'         => isset($this->registry->CFG->admin->help_tour_activation)
96
-                                ? filter_var($this->registry->CFG->admin->help_tour_activation, FILTER_VALIDATE_BOOLEAN)
97
-                                : true,
98
-                            'required'        => false
99
-                        )
100
-                    ),
101
-                    'compatibility_hdr'   => new EE_Form_Section_HTML(
102
-                        EEH_HTML::h2(
103
-                            esc_html__('Compatibility Settings', 'event_espresso'),
104
-                            '', 'ee-admin-settings-hdr'
105
-                        )
106
-                    ),
107
-                    'encode_session_data' => new EE_Yes_No_Input(
108
-                        array(
109
-                            'html_label_text' => esc_html__('Encode Session Data?', 'event_espresso'),
110
-                            'html_help_text'  => sprintf(
111
-                                esc_html__(
112
-                                    'Some servers and database configurations can cause problems when saving the Event Espresso session data. Setting this option to "Yes" adds an extra layer of encoding to session data to prevent serialization errors, but can be incompatible with some server configurations.%1$sIf you receive "500 internal server" type errors during registration, try turning this option on.%1$sIf you get fatal PHP errors regarding missing base64 functions, then turn this option off.',
113
-                                    'event_espresso'
114
-                                ),
115
-                                '<br>'
116
-                            ),
117
-                            'default'         => $this->registry->CFG->admin->encode_session_data(),
118
-                            'required'        => false
119
-                        )
120
-                    ),
121
-                )
122
-            )
123
-        );
124
-        if (
125
-            $this->registry->CAP->current_user_can(
126
-                'manage_options',
127
-                'display_admin_settings_options_promote_and_affiliate'
128
-            )
129
-        ) {
130
-            $form->add_subsections(
131
-                array(
132
-                    'promote_ee_hdr'  => new EE_Form_Section_HTML(
133
-                        EEH_HTML::h2(
134
-                            esc_html__('Promote Event Espresso', 'event_espresso')
135
-                            . ' '
136
-                            . EEH_HTML::span(
137
-                                EEH_Template::get_help_tab_link('affiliate_info'),
138
-                                'affiliate_info'
139
-                            ),
140
-                            '', 'ee-admin-settings-hdr'
141
-                        )
142
-                    ),
143
-                    'show_reg_footer' => new EE_Yes_No_Input(
144
-                        array(
145
-                            'html_label_text' => esc_html__(
146
-                                                     'Link to Event Espresso in your Registration Page?',
147
-                                                     'event_espresso'
148
-                                                 )
149
-                                                 . EEH_Template::get_help_tab_link('email_validation_info'),
150
-                            'html_help_text'  => esc_html__(
151
-                                'adds an unobtrusive link to Event Espresso\'s website in the footer of your registration form. Get an affiliate link (see below) and make money if people click the link and purchase Event Espresso.',
152
-                                'event_espresso'
153
-                            ),
154
-                            'default'         => isset($this->registry->CFG->admin->show_reg_footer)
155
-                                ? filter_var($this->registry->CFG->admin->show_reg_footer, FILTER_VALIDATE_BOOLEAN)
156
-                                : true,
157
-                            'required'        => false
158
-                        )
159
-                    ),
160
-                    'affiliate_id'    => new EE_Text_Input(
161
-                        array(
162
-                            'html_label_text' => sprintf(
163
-                                esc_html__('Event Espresso %sAffiliate%s ID', 'event_espresso'),
164
-                                '<a href="http://eventespresso.com/affiliates/" target="_blank">',
165
-                                '</a>'
166
-                            ),
167
-                            'html_help_text'  => esc_html__(
168
-                                'Earn cash for promoting Event Espresso.',
169
-                                'event_espresso'
170
-                            ),
171
-                            'html_class'      => 'regular-text',
172
-                            'default'         => isset($this->registry->CFG->admin->affiliate_id)
173
-                                ? $this->registry->CFG->admin->get_pretty('affiliate_id')
174
-                                : '',
175
-                            'required'        => false
176
-                        )
177
-                    ),
178
-                ),
179
-                'help_tour_activation_hdr'
180
-            );
181
-        }
182
-        return $form;
183
-    }
184
-
185
-
186
-
187
-    /**
188
-     * takes the generated form and displays it along with ony other non-form HTML that may be required
189
-     * returns a string of HTML that can be directly echoed in a template
190
-     *
191
-     * @return string
192
-     * @throws LogicException
193
-     * @throws \EE_Error
194
-     */
195
-    public function display()
196
-    {
197
-        add_filter(
198
-            'FHEE__EventEspresso_core_libraries_form_sections_form_handlers_FormHandler__display__before_form',
199
-            array($this, 'handleOldAdminOptionsSettingsAction')
200
-        );
201
-        return parent::display();
202
-    }
203
-
204
-
205
-
206
-    /**
207
-     * @return string
208
-     */
209
-    public function handleOldAdminOptionsSettingsAction()
210
-    {
211
-        ob_start();
212
-        do_action('AHEE__admin_option_settings__template__before', $this->template_args);
213
-        return ob_get_clean();
214
-    }
215
-
216
-
217
-
218
-    /**
219
-     * handles processing the form submission
220
-     * returns true or false depending on whether the form was processed successfully or not
221
-     *
222
-     * @param array $form_data
223
-     * @return bool
224
-     * @throws InvalidFormSubmissionException
225
-     * @throws EE_Error
226
-     * @throws LogicException
227
-     * @throws InvalidArgumentException
228
-     * @throws InvalidDataTypeException
229
-     */
230
-    public function process($form_data = array())
231
-    {
232
-        // process form
233
-        $valid_data = (array)parent::process($form_data);
234
-        if (empty($valid_data)) {
235
-            return false;
236
-        }
237
-        $this->registry->CFG->admin->show_reg_footer = isset( $form_data['show_reg_footer'] )
238
-            ? absint( $form_data['show_reg_footer'] )
239
-            : $this->registry->CFG->admin->show_reg_footer;
240
-        $this->registry->CFG->admin->affiliate_id = isset( $form_data['affiliate_id'] )
241
-            ? sanitize_text_field( $form_data['affiliate_id'] )
242
-            : $this->registry->CFG->admin->affiliate_id;
243
-        $this->registry->CFG->admin->help_tour_activation = isset( $form_data['help_tour_activation'] )
244
-            ? absint( $form_data['help_tour_activation'])
245
-            : $this->registry->CFG->admin->help_tour_activation;
246
-        if (isset($form_data['encode_session_data'])) {
247
-            $this->registry->CFG->admin->set_encode_session_data($form_data['encode_session_data']);
248
-        }
249
-        return false;
250
-    }
33
+	protected $template_args = array();
34
+
35
+	/**
36
+	 * Form constructor.
37
+	 *
38
+	 * @param \EE_Registry $registry
39
+	 */
40
+	public function __construct(\EE_Registry $registry) {
41
+		parent::__construct(
42
+			esc_html__('Admin Options', 'event_espresso'),
43
+			esc_html__('Admin Options', 'event_espresso'),
44
+			'admin_option_settings',
45
+			'',
46
+			FormHandler::DO_NOT_SETUP_FORM,
47
+			$registry
48
+		);
49
+	}
50
+
51
+
52
+
53
+	/**
54
+	 * @param array $template_args
55
+	 */
56
+	public function setTemplateArgs(array $template_args)
57
+	{
58
+		$this->template_args = $template_args;
59
+	}
60
+
61
+
62
+
63
+	/**
64
+	 * creates and returns the actual form
65
+	 *
66
+	 * @return EE_Form_Section_Proper
67
+	 * @throws \EE_Error
68
+	 */
69
+	public function generate()
70
+	{
71
+		$form = new \EE_Form_Section_Proper(
72
+			array(
73
+				'name'            => 'admin_option_settings',
74
+				'html_id'         => 'admin_option_settings',
75
+				'layout_strategy' => new EE_Admin_Two_Column_Layout(),
76
+				'subsections'     => array(
77
+					'help_tour_activation_hdr' => new EE_Form_Section_HTML(
78
+						EEH_HTML::h2(
79
+							esc_html__('Help Tour Global Activation', 'event_espresso')
80
+							. ' '
81
+							. EEH_HTML::span(
82
+								EEH_Template::get_help_tab_link('help_tour_activation_info'),
83
+								'help_tour_activation'
84
+							),
85
+							'', 'ee-admin-settings-hdr'
86
+						)
87
+					),
88
+					'help_tour_activation' => new EE_Yes_No_Input(
89
+						array(
90
+							'html_label_text' => esc_html__('Activate Global Help Tours?', 'event_espresso'),
91
+							'html_help_text'  => esc_html__(
92
+								'This toggles whether the Event Espresso help tours are active globally or not.',
93
+								'event_espresso'
94
+							),
95
+							'default'         => isset($this->registry->CFG->admin->help_tour_activation)
96
+								? filter_var($this->registry->CFG->admin->help_tour_activation, FILTER_VALIDATE_BOOLEAN)
97
+								: true,
98
+							'required'        => false
99
+						)
100
+					),
101
+					'compatibility_hdr'   => new EE_Form_Section_HTML(
102
+						EEH_HTML::h2(
103
+							esc_html__('Compatibility Settings', 'event_espresso'),
104
+							'', 'ee-admin-settings-hdr'
105
+						)
106
+					),
107
+					'encode_session_data' => new EE_Yes_No_Input(
108
+						array(
109
+							'html_label_text' => esc_html__('Encode Session Data?', 'event_espresso'),
110
+							'html_help_text'  => sprintf(
111
+								esc_html__(
112
+									'Some servers and database configurations can cause problems when saving the Event Espresso session data. Setting this option to "Yes" adds an extra layer of encoding to session data to prevent serialization errors, but can be incompatible with some server configurations.%1$sIf you receive "500 internal server" type errors during registration, try turning this option on.%1$sIf you get fatal PHP errors regarding missing base64 functions, then turn this option off.',
113
+									'event_espresso'
114
+								),
115
+								'<br>'
116
+							),
117
+							'default'         => $this->registry->CFG->admin->encode_session_data(),
118
+							'required'        => false
119
+						)
120
+					),
121
+				)
122
+			)
123
+		);
124
+		if (
125
+			$this->registry->CAP->current_user_can(
126
+				'manage_options',
127
+				'display_admin_settings_options_promote_and_affiliate'
128
+			)
129
+		) {
130
+			$form->add_subsections(
131
+				array(
132
+					'promote_ee_hdr'  => new EE_Form_Section_HTML(
133
+						EEH_HTML::h2(
134
+							esc_html__('Promote Event Espresso', 'event_espresso')
135
+							. ' '
136
+							. EEH_HTML::span(
137
+								EEH_Template::get_help_tab_link('affiliate_info'),
138
+								'affiliate_info'
139
+							),
140
+							'', 'ee-admin-settings-hdr'
141
+						)
142
+					),
143
+					'show_reg_footer' => new EE_Yes_No_Input(
144
+						array(
145
+							'html_label_text' => esc_html__(
146
+													 'Link to Event Espresso in your Registration Page?',
147
+													 'event_espresso'
148
+												 )
149
+												 . EEH_Template::get_help_tab_link('email_validation_info'),
150
+							'html_help_text'  => esc_html__(
151
+								'adds an unobtrusive link to Event Espresso\'s website in the footer of your registration form. Get an affiliate link (see below) and make money if people click the link and purchase Event Espresso.',
152
+								'event_espresso'
153
+							),
154
+							'default'         => isset($this->registry->CFG->admin->show_reg_footer)
155
+								? filter_var($this->registry->CFG->admin->show_reg_footer, FILTER_VALIDATE_BOOLEAN)
156
+								: true,
157
+							'required'        => false
158
+						)
159
+					),
160
+					'affiliate_id'    => new EE_Text_Input(
161
+						array(
162
+							'html_label_text' => sprintf(
163
+								esc_html__('Event Espresso %sAffiliate%s ID', 'event_espresso'),
164
+								'<a href="http://eventespresso.com/affiliates/" target="_blank">',
165
+								'</a>'
166
+							),
167
+							'html_help_text'  => esc_html__(
168
+								'Earn cash for promoting Event Espresso.',
169
+								'event_espresso'
170
+							),
171
+							'html_class'      => 'regular-text',
172
+							'default'         => isset($this->registry->CFG->admin->affiliate_id)
173
+								? $this->registry->CFG->admin->get_pretty('affiliate_id')
174
+								: '',
175
+							'required'        => false
176
+						)
177
+					),
178
+				),
179
+				'help_tour_activation_hdr'
180
+			);
181
+		}
182
+		return $form;
183
+	}
184
+
185
+
186
+
187
+	/**
188
+	 * takes the generated form and displays it along with ony other non-form HTML that may be required
189
+	 * returns a string of HTML that can be directly echoed in a template
190
+	 *
191
+	 * @return string
192
+	 * @throws LogicException
193
+	 * @throws \EE_Error
194
+	 */
195
+	public function display()
196
+	{
197
+		add_filter(
198
+			'FHEE__EventEspresso_core_libraries_form_sections_form_handlers_FormHandler__display__before_form',
199
+			array($this, 'handleOldAdminOptionsSettingsAction')
200
+		);
201
+		return parent::display();
202
+	}
203
+
204
+
205
+
206
+	/**
207
+	 * @return string
208
+	 */
209
+	public function handleOldAdminOptionsSettingsAction()
210
+	{
211
+		ob_start();
212
+		do_action('AHEE__admin_option_settings__template__before', $this->template_args);
213
+		return ob_get_clean();
214
+	}
215
+
216
+
217
+
218
+	/**
219
+	 * handles processing the form submission
220
+	 * returns true or false depending on whether the form was processed successfully or not
221
+	 *
222
+	 * @param array $form_data
223
+	 * @return bool
224
+	 * @throws InvalidFormSubmissionException
225
+	 * @throws EE_Error
226
+	 * @throws LogicException
227
+	 * @throws InvalidArgumentException
228
+	 * @throws InvalidDataTypeException
229
+	 */
230
+	public function process($form_data = array())
231
+	{
232
+		// process form
233
+		$valid_data = (array)parent::process($form_data);
234
+		if (empty($valid_data)) {
235
+			return false;
236
+		}
237
+		$this->registry->CFG->admin->show_reg_footer = isset( $form_data['show_reg_footer'] )
238
+			? absint( $form_data['show_reg_footer'] )
239
+			: $this->registry->CFG->admin->show_reg_footer;
240
+		$this->registry->CFG->admin->affiliate_id = isset( $form_data['affiliate_id'] )
241
+			? sanitize_text_field( $form_data['affiliate_id'] )
242
+			: $this->registry->CFG->admin->affiliate_id;
243
+		$this->registry->CFG->admin->help_tour_activation = isset( $form_data['help_tour_activation'] )
244
+			? absint( $form_data['help_tour_activation'])
245
+			: $this->registry->CFG->admin->help_tour_activation;
246
+		if (isset($form_data['encode_session_data'])) {
247
+			$this->registry->CFG->admin->set_encode_session_data($form_data['encode_session_data']);
248
+		}
249
+		return false;
250
+	}
251 251
 
252 252
 }
253 253
 // End of file AdminOptionsSettings.php
Please login to merge, or discard this patch.
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -230,18 +230,18 @@
 block discarded – undo
230 230
     public function process($form_data = array())
231 231
     {
232 232
         // process form
233
-        $valid_data = (array)parent::process($form_data);
233
+        $valid_data = (array) parent::process($form_data);
234 234
         if (empty($valid_data)) {
235 235
             return false;
236 236
         }
237
-        $this->registry->CFG->admin->show_reg_footer = isset( $form_data['show_reg_footer'] )
238
-            ? absint( $form_data['show_reg_footer'] )
237
+        $this->registry->CFG->admin->show_reg_footer = isset($form_data['show_reg_footer'])
238
+            ? absint($form_data['show_reg_footer'])
239 239
             : $this->registry->CFG->admin->show_reg_footer;
240
-        $this->registry->CFG->admin->affiliate_id = isset( $form_data['affiliate_id'] )
241
-            ? sanitize_text_field( $form_data['affiliate_id'] )
240
+        $this->registry->CFG->admin->affiliate_id = isset($form_data['affiliate_id'])
241
+            ? sanitize_text_field($form_data['affiliate_id'])
242 242
             : $this->registry->CFG->admin->affiliate_id;
243
-        $this->registry->CFG->admin->help_tour_activation = isset( $form_data['help_tour_activation'] )
244
-            ? absint( $form_data['help_tour_activation'])
243
+        $this->registry->CFG->admin->help_tour_activation = isset($form_data['help_tour_activation'])
244
+            ? absint($form_data['help_tour_activation'])
245 245
             : $this->registry->CFG->admin->help_tour_activation;
246 246
         if (isset($form_data['encode_session_data'])) {
247 247
             $this->registry->CFG->admin->set_encode_session_data($form_data['encode_session_data']);
Please login to merge, or discard this patch.
core/libraries/form_sections/inputs/EE_Text_Input.input.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -8,19 +8,19 @@  discard block
 block discarded – undo
8 8
  *
9 9
  * This input has a default validation strategy of plaintext (which can be removed after construction)
10 10
  */
11
-class EE_Text_Input extends EE_Form_Input_Base{
11
+class EE_Text_Input extends EE_Form_Input_Base {
12 12
 
13 13
 
14 14
 	/**
15 15
 	 * @param array $options
16 16
 	 */
17
-	public function __construct($options = array()){
17
+	public function __construct($options = array()) {
18 18
 		$this->_set_display_strategy(new EE_Text_Input_Display_Strategy());
19 19
 		$this->_set_normalization_strategy(new EE_Text_Normalization());
20 20
 		parent::__construct($options);
21 21
 		//if the input hasn't specifically mentioned a more lenient validation strategy,
22 22
 		//apply plaintext validation strategy
23
-		if( ! $this->has_validation_strategy(
23
+		if ( ! $this->has_validation_strategy(
24 24
 				array(
25 25
 					'EE_Full_HTML_Validation_Strategy',
26 26
 					'EE_Simple_HTML_Validation_Strategy'
@@ -29,7 +29,7 @@  discard block
 block discarded – undo
29 29
 		) {
30 30
 			//by default we use the plaintext validation. If you want something else,
31 31
 			//just remove it after the input is constructed :P using EE_Form_Input_Base::remove_validation_strategy()
32
-			$this->_add_validation_strategy( new EE_Plaintext_Validation_Strategy() );
32
+			$this->_add_validation_strategy(new EE_Plaintext_Validation_Strategy());
33 33
 		}
34 34
 	}
35 35
 
Please login to merge, or discard this patch.
templates/txn_admin_details_side_meta_box_billing_info.template.php 3 patches
Indentation   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -8,8 +8,8 @@
 block discarded – undo
8 8
 		foreach( $form_section->subsections() as $subsection ) {
9 9
 			if( $subsection instanceof EE_Form_Input_Base ) {
10 10
 				if( $subsection->get_sensitive_data_removal_strategy() instanceof EE_All_Sensitive_Data_Removal
11
-                    || $subsection->get_sensitive_data_removal_strategy() instanceof EE_CCV_Sensitive_Data_Removal
12
-                    || $subsection->get_display_strategy() instanceof EE_Hidden_Display_Strategy ){
11
+					|| $subsection->get_sensitive_data_removal_strategy() instanceof EE_CCV_Sensitive_Data_Removal
12
+					|| $subsection->get_display_strategy() instanceof EE_Hidden_Display_Strategy ){
13 13
 					continue;
14 14
 				}
15 15
 				if( $subsection->get_sensitive_data_removal_strategy() instanceof EE_Credit_Card_Sensitive_Data_Removal ) {
Please login to merge, or discard this patch.
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -1,38 +1,38 @@
 block discarded – undo
1 1
 	<div id="admin-side-mbox-billing-info-dv" class="admin-side-mbox-dv">
2
-<?php if ( empty($billing_form) ) : ?>
2
+<?php if (empty($billing_form)) : ?>
3 3
 		<div class="clearfix">
4
-			<?php _e( 'There is no billing info for this transaction.', 'event_espresso' );?><br/>
4
+			<?php _e('There is no billing info for this transaction.', 'event_espresso'); ?><br/>
5 5
 		</div>
6 6
 <?php else :
7
-	function ee_show_billing_info_cleaned( EE_Form_Section_Proper $form_section, $found_cc_data = false ) {
8
-		foreach( $form_section->subsections() as $subsection ) {
9
-			if( $subsection instanceof EE_Form_Input_Base ) {
10
-				if( $subsection->get_sensitive_data_removal_strategy() instanceof EE_All_Sensitive_Data_Removal
7
+	function ee_show_billing_info_cleaned(EE_Form_Section_Proper $form_section, $found_cc_data = false) {
8
+		foreach ($form_section->subsections() as $subsection) {
9
+			if ($subsection instanceof EE_Form_Input_Base) {
10
+				if ($subsection->get_sensitive_data_removal_strategy() instanceof EE_All_Sensitive_Data_Removal
11 11
                     || $subsection->get_sensitive_data_removal_strategy() instanceof EE_CCV_Sensitive_Data_Removal
12
-                    || $subsection->get_display_strategy() instanceof EE_Hidden_Display_Strategy ){
12
+                    || $subsection->get_display_strategy() instanceof EE_Hidden_Display_Strategy) {
13 13
 					continue;
14 14
 				}
15
-				if( $subsection->get_sensitive_data_removal_strategy() instanceof EE_Credit_Card_Sensitive_Data_Removal ) {
15
+				if ($subsection->get_sensitive_data_removal_strategy() instanceof EE_Credit_Card_Sensitive_Data_Removal) {
16 16
 					$found_cc_data = true;
17 17
 				}
18 18
 				?>
19 19
 					<div class="clearfix">
20
-						<span class="admin-side-mbox-label-spn lt-grey-txt float-left"><?php echo $subsection->get_html_for_label();?></span><?php echo $subsection->pretty_value();?>
20
+						<span class="admin-side-mbox-label-spn lt-grey-txt float-left"><?php echo $subsection->get_html_for_label(); ?></span><?php echo $subsection->pretty_value(); ?>
21 21
 					</div><?php
22
-			} elseif( $subsection instanceof EE_Form_Section_Proper ) {
23
-				$found_cc_data = ee_show_billing_info_cleaned( $subsection, $found_cc_data);
22
+			} elseif ($subsection instanceof EE_Form_Section_Proper) {
23
+				$found_cc_data = ee_show_billing_info_cleaned($subsection, $found_cc_data);
24 24
 			}
25 25
 		}
26 26
 		return $found_cc_data;
27 27
 	}
28
-	$found_cc_data = ee_show_billing_info_cleaned( $billing_form );
29
-	if( apply_filters( 
28
+	$found_cc_data = ee_show_billing_info_cleaned($billing_form);
29
+	if (apply_filters( 
30 30
 			'FHEE__txn_admin_details_side_meta_box_billing_info__show_default_note', 
31 31
 			$found_cc_data,
32
-			$billing_form ) ) {?>
33
-		<p class="help"><?php _e( 'Note: Card expiry dates and CCV are not stored. Only the last 4 digits of card numbers are stored.', 'event_espresso' );?></p>
32
+			$billing_form )) {?>
33
+		<p class="help"><?php _e('Note: Card expiry dates and CCV are not stored. Only the last 4 digits of card numbers are stored.', 'event_espresso'); ?></p>
34 34
 	<?php }
35
-	do_action( 'AHEE__txn_admin_details_side_meta_box_billing_info__billing_form_footer', $billing_form );
35
+	do_action('AHEE__txn_admin_details_side_meta_box_billing_info__billing_form_footer', $billing_form);
36 36
 	endif; ?>
37 37
 
38 38
 	</div>
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -3,7 +3,8 @@  discard block
 block discarded – undo
3 3
 		<div class="clearfix">
4 4
 			<?php _e( 'There is no billing info for this transaction.', 'event_espresso' );?><br/>
5 5
 		</div>
6
-<?php else :
6
+<?php else {
7
+	:
7 8
 	function ee_show_billing_info_cleaned( EE_Form_Section_Proper $form_section, $found_cc_data = false ) {
8 9
 		foreach( $form_section->subsections() as $subsection ) {
9 10
 			if( $subsection instanceof EE_Form_Input_Base ) {
@@ -11,6 +12,7 @@  discard block
 block discarded – undo
11 12
                     || $subsection->get_sensitive_data_removal_strategy() instanceof EE_CCV_Sensitive_Data_Removal
12 13
                     || $subsection->get_display_strategy() instanceof EE_Hidden_Display_Strategy ){
13 14
 					continue;
15
+}
14 16
 				}
15 17
 				if( $subsection->get_sensitive_data_removal_strategy() instanceof EE_Credit_Card_Sensitive_Data_Removal ) {
16 18
 					$found_cc_data = true;
Please login to merge, or discard this patch.
modules/ticket_selector/TicketDetails.php 2 patches
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -96,8 +96,8 @@  discard block
 block discarded – undo
96 96
             "display-{$this->cssId()}",
97 97
             'display-tckt-slctr-tkt-details display-the-hidden lt-grey-text smaller-text hide-if-no-js',
98 98
             '',
99
-            'rel="' . $this->cssId() . '"'
100
-        ) . \EEH_HTML::link(
99
+            'rel="'.$this->cssId().'"'
100
+        ).\EEH_HTML::link(
101 101
             '',
102 102
             sprintf(__('hide%1$sdetails%1$s-', 'event_espresso'), '&nbsp;'),
103 103
             esc_attr(
@@ -109,7 +109,7 @@  discard block
 block discarded – undo
109 109
             "hide-{$this->cssId()}",
110 110
             'hide-tckt-slctr-tkt-details hide-the-displayed lt-grey-text smaller-text hide-if-no-js',
111 111
             'display:none;',
112
-            'rel="' . $this->cssId() . '"'
112
+            'rel="'.$this->cssId().'"'
113 113
         );
114 114
     }
115 115
 
@@ -163,7 +163,7 @@  discard block
 block discarded – undo
163 163
         return \EEH_Template::locate_template(
164 164
             apply_filters(
165 165
                 'FHEE__EventEspresso_modules_ticket_selector_TicketDetails__display__template_path',
166
-                TICKET_SELECTOR_TEMPLATES_PATH . 'ticket_details.template.php',
166
+                TICKET_SELECTOR_TEMPLATES_PATH.'ticket_details.template.php',
167 167
                 $this->ticket
168 168
             ),
169 169
             $template_args
Please login to merge, or discard this patch.
Indentation   +192 added lines, -192 removed lines patch added patch discarded remove patch
@@ -17,198 +17,198 @@
 block discarded – undo
17 17
 {
18 18
 
19 19
 
20
-    /**
21
-     * @var \EE_Ticket $ticket
22
-     */
23
-    protected $ticket;
24
-
25
-    /**
26
-     * @var \EE_Ticket_Selector_Config $template_settings
27
-     */
28
-    protected $template_settings;
29
-
30
-    /**
31
-     * @var string $date_format
32
-     */
33
-    protected $date_format;
34
-
35
-    /**
36
-     * @var string $time_format
37
-     */
38
-    protected $time_format;
39
-
40
-    /**
41
-     * @var boolean $event_is_expired
42
-     */
43
-    protected $event_is_expired;
44
-
45
-
46
-
47
-    /**
48
-     * TicketDetails constructor.
49
-     *
50
-     * @param \EE_Ticket                 $ticket
51
-     * @param \EE_Ticket_Selector_Config $template_settings
52
-     * @param array                      $template_args
53
-     */
54
-    public function __construct(
55
-        \EE_Ticket $ticket,
56
-        \EE_Ticket_Selector_Config $template_settings,
57
-        array $template_args
58
-    )
59
-    {
60
-        $this->ticket            = $ticket;
61
-        $this->template_settings = $template_settings;
62
-        $this->date_format       = $template_args['date_format'];
63
-        $this->time_format       = $template_args['time_format'];
64
-        $this->event_is_expired  = $template_args['event_is_expired'];
65
-    }
66
-
67
-
68
-
69
-    /**
70
-     * @return \EE_Ticket
71
-     */
72
-    public function getTicket()
73
-    {
74
-        return $this->ticket;
75
-    }
76
-
77
-
78
-
79
-    /**
80
-     * @return bool
81
-     */
82
-    public function showTicketDetails()
83
-    {
84
-        return $this->template_settings->show_ticket_details;
85
-    }
86
-
87
-
88
-
89
-    /**
90
-     * @return \EE_Ticket_Selector_Config
91
-     */
92
-    public function getTemplateSettings()
93
-    {
94
-        return $this->template_settings;
95
-    }
96
-
97
-
98
-
99
-    /**
100
-     * @return string
101
-     */
102
-    public function getDateFormat()
103
-    {
104
-        return $this->date_format;
105
-    }
106
-
107
-
108
-
109
-    /**
110
-     * @return string
111
-     */
112
-    public function getTimeFormat()
113
-    {
114
-        return $this->time_format;
115
-    }
116
-
117
-
118
-
119
-    /**
120
-     * @return string
121
-     */
122
-    public function getShowHideLinks()
123
-    {
124
-        if ( ! $this->showTicketDetails()) {
125
-            return '';
126
-        }
127
-        return \EEH_HTML::link(
128
-            '',
129
-            sprintf(__('show%1$sdetails%1$s+', 'event_espresso'), '&nbsp;'),
130
-            esc_attr(
131
-                apply_filters(
132
-                    'FHEE__ticket_selector_chart_template__show_ticket_details_link_title',
133
-                    __('click to show additional ticket details', 'event_espresso')
134
-                )
135
-            ),
136
-            "display-{$this->cssId()}",
137
-            'display-tckt-slctr-tkt-details display-the-hidden lt-grey-text smaller-text hide-if-no-js',
138
-            '',
139
-            'rel="' . $this->cssId() . '"'
140
-        ) . \EEH_HTML::link(
141
-            '',
142
-            sprintf(__('hide%1$sdetails%1$s-', 'event_espresso'), '&nbsp;'),
143
-            esc_attr(
144
-                apply_filters(
145
-                    'FHEE__ticket_selector_chart_template__hide_ticket_details_link_title',
146
-                    __('click to hide additional ticket details', 'event_espresso')
147
-                )
148
-            ),
149
-            "hide-{$this->cssId()}",
150
-            'hide-tckt-slctr-tkt-details hide-the-displayed lt-grey-text smaller-text hide-if-no-js',
151
-            'display:none;',
152
-            'rel="' . $this->cssId() . '"'
153
-        );
154
-    }
155
-
156
-
157
-
158
-    /**
159
-     * @return string
160
-     */
161
-    public function cssId()
162
-    {
163
-        return apply_filters(
164
-            'FHEE__ticket_selector_chart_template__ticket_details_css_id',
165
-            "tckt-slctr-tkt-details-{$this->ticket->get_event_ID()}-{$this->ticket->ID()}"
166
-        );
167
-    }
168
-
169
-
170
-
171
-    /**
172
-     * @param float $ticket_price
173
-     * @param int   $remaining
174
-     * @param int   $cols
175
-     * @return string
176
-     */
177
-    public function display(
178
-        $ticket_price = 0.00,
179
-        $remaining,
180
-        $cols = 2
181
-    ) {
182
-        $template_args = array();
183
-        $template_args['ticket'] = $this->ticket;
184
-        $template_args['ticket_price'] = $ticket_price;
185
-        $template_args['remaining'] = $remaining;
186
-        $template_args['cols'] = $cols;
187
-        $template_args['show_ticket_details'] = $this->template_settings->show_ticket_details;
188
-        $template_args['show_ticket_sale_columns'] = $this->template_settings->show_ticket_sale_columns;
189
-        $template_args['ticket_details_row_class'] = espresso_get_object_css_class($this->ticket, '', 'details');
190
-        $template_args['ticket_details_css_id'] = $this->cssId();
191
-        $template_args['display_ticket_price'] = $ticket_price !== 0 && apply_filters(
192
-            'FHEE__ticket_selector_chart_template__display_ticket_price_details',
193
-            true
194
-        );
195
-        $template_args['price_breakdown_heading'] = apply_filters(
196
-            'FHEE__ticket_selector_chart_template__ticket_details_price_breakdown_heading',
197
-            esc_html__('Price', 'event_espresso')
198
-        );
199
-        $template_args['date_format'] = $this->date_format;
200
-        $template_args['time_format'] = $this->time_format;
201
-        $template_args['event_is_expired'] = $this->event_is_expired;
202
-
203
-        return \EEH_Template::locate_template(
204
-            apply_filters(
205
-                'FHEE__EventEspresso_modules_ticket_selector_TicketDetails__display__template_path',
206
-                TICKET_SELECTOR_TEMPLATES_PATH . 'ticket_details.template.php',
207
-                $this->ticket
208
-            ),
209
-            $template_args
210
-        );
211
-    }
20
+	/**
21
+	 * @var \EE_Ticket $ticket
22
+	 */
23
+	protected $ticket;
24
+
25
+	/**
26
+	 * @var \EE_Ticket_Selector_Config $template_settings
27
+	 */
28
+	protected $template_settings;
29
+
30
+	/**
31
+	 * @var string $date_format
32
+	 */
33
+	protected $date_format;
34
+
35
+	/**
36
+	 * @var string $time_format
37
+	 */
38
+	protected $time_format;
39
+
40
+	/**
41
+	 * @var boolean $event_is_expired
42
+	 */
43
+	protected $event_is_expired;
44
+
45
+
46
+
47
+	/**
48
+	 * TicketDetails constructor.
49
+	 *
50
+	 * @param \EE_Ticket                 $ticket
51
+	 * @param \EE_Ticket_Selector_Config $template_settings
52
+	 * @param array                      $template_args
53
+	 */
54
+	public function __construct(
55
+		\EE_Ticket $ticket,
56
+		\EE_Ticket_Selector_Config $template_settings,
57
+		array $template_args
58
+	)
59
+	{
60
+		$this->ticket            = $ticket;
61
+		$this->template_settings = $template_settings;
62
+		$this->date_format       = $template_args['date_format'];
63
+		$this->time_format       = $template_args['time_format'];
64
+		$this->event_is_expired  = $template_args['event_is_expired'];
65
+	}
66
+
67
+
68
+
69
+	/**
70
+	 * @return \EE_Ticket
71
+	 */
72
+	public function getTicket()
73
+	{
74
+		return $this->ticket;
75
+	}
76
+
77
+
78
+
79
+	/**
80
+	 * @return bool
81
+	 */
82
+	public function showTicketDetails()
83
+	{
84
+		return $this->template_settings->show_ticket_details;
85
+	}
86
+
87
+
88
+
89
+	/**
90
+	 * @return \EE_Ticket_Selector_Config
91
+	 */
92
+	public function getTemplateSettings()
93
+	{
94
+		return $this->template_settings;
95
+	}
96
+
97
+
98
+
99
+	/**
100
+	 * @return string
101
+	 */
102
+	public function getDateFormat()
103
+	{
104
+		return $this->date_format;
105
+	}
106
+
107
+
108
+
109
+	/**
110
+	 * @return string
111
+	 */
112
+	public function getTimeFormat()
113
+	{
114
+		return $this->time_format;
115
+	}
116
+
117
+
118
+
119
+	/**
120
+	 * @return string
121
+	 */
122
+	public function getShowHideLinks()
123
+	{
124
+		if ( ! $this->showTicketDetails()) {
125
+			return '';
126
+		}
127
+		return \EEH_HTML::link(
128
+			'',
129
+			sprintf(__('show%1$sdetails%1$s+', 'event_espresso'), '&nbsp;'),
130
+			esc_attr(
131
+				apply_filters(
132
+					'FHEE__ticket_selector_chart_template__show_ticket_details_link_title',
133
+					__('click to show additional ticket details', 'event_espresso')
134
+				)
135
+			),
136
+			"display-{$this->cssId()}",
137
+			'display-tckt-slctr-tkt-details display-the-hidden lt-grey-text smaller-text hide-if-no-js',
138
+			'',
139
+			'rel="' . $this->cssId() . '"'
140
+		) . \EEH_HTML::link(
141
+			'',
142
+			sprintf(__('hide%1$sdetails%1$s-', 'event_espresso'), '&nbsp;'),
143
+			esc_attr(
144
+				apply_filters(
145
+					'FHEE__ticket_selector_chart_template__hide_ticket_details_link_title',
146
+					__('click to hide additional ticket details', 'event_espresso')
147
+				)
148
+			),
149
+			"hide-{$this->cssId()}",
150
+			'hide-tckt-slctr-tkt-details hide-the-displayed lt-grey-text smaller-text hide-if-no-js',
151
+			'display:none;',
152
+			'rel="' . $this->cssId() . '"'
153
+		);
154
+	}
155
+
156
+
157
+
158
+	/**
159
+	 * @return string
160
+	 */
161
+	public function cssId()
162
+	{
163
+		return apply_filters(
164
+			'FHEE__ticket_selector_chart_template__ticket_details_css_id',
165
+			"tckt-slctr-tkt-details-{$this->ticket->get_event_ID()}-{$this->ticket->ID()}"
166
+		);
167
+	}
168
+
169
+
170
+
171
+	/**
172
+	 * @param float $ticket_price
173
+	 * @param int   $remaining
174
+	 * @param int   $cols
175
+	 * @return string
176
+	 */
177
+	public function display(
178
+		$ticket_price = 0.00,
179
+		$remaining,
180
+		$cols = 2
181
+	) {
182
+		$template_args = array();
183
+		$template_args['ticket'] = $this->ticket;
184
+		$template_args['ticket_price'] = $ticket_price;
185
+		$template_args['remaining'] = $remaining;
186
+		$template_args['cols'] = $cols;
187
+		$template_args['show_ticket_details'] = $this->template_settings->show_ticket_details;
188
+		$template_args['show_ticket_sale_columns'] = $this->template_settings->show_ticket_sale_columns;
189
+		$template_args['ticket_details_row_class'] = espresso_get_object_css_class($this->ticket, '', 'details');
190
+		$template_args['ticket_details_css_id'] = $this->cssId();
191
+		$template_args['display_ticket_price'] = $ticket_price !== 0 && apply_filters(
192
+			'FHEE__ticket_selector_chart_template__display_ticket_price_details',
193
+			true
194
+		);
195
+		$template_args['price_breakdown_heading'] = apply_filters(
196
+			'FHEE__ticket_selector_chart_template__ticket_details_price_breakdown_heading',
197
+			esc_html__('Price', 'event_espresso')
198
+		);
199
+		$template_args['date_format'] = $this->date_format;
200
+		$template_args['time_format'] = $this->time_format;
201
+		$template_args['event_is_expired'] = $this->event_is_expired;
202
+
203
+		return \EEH_Template::locate_template(
204
+			apply_filters(
205
+				'FHEE__EventEspresso_modules_ticket_selector_TicketDetails__display__template_path',
206
+				TICKET_SELECTOR_TEMPLATES_PATH . 'ticket_details.template.php',
207
+				$this->ticket
208
+			),
209
+			$template_args
210
+		);
211
+	}
212 212
 
213 213
 }
214 214
 // End of file TicketDetails.php
Please login to merge, or discard this patch.
support/templates/support_admin_details_contact_support.template.php 1 patch
Spacing   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -1,29 +1,29 @@
 block discarded – undo
1 1
 <div class="padding">
2 2
 	<h3><?php esc_html_e('Need help with Event Espresso?', 'event_espresso'); ?></h3>
3 3
 	
4
-	<h4><?php esc_html_e( 'You may be able to find an answer for your question or concern here:', 'event_espresso' ); ?></h4>
4
+	<h4><?php esc_html_e('You may be able to find an answer for your question or concern here:', 'event_espresso'); ?></h4>
5 5
 				<ol>
6
-					<li><strong><em><?php esc_html_e( 'A known issue.', 'event_espresso' ); ?></em></strong>  <?php printf( esc_html__( 'Some themes and plugins have %1$sknown conflicts%2$s with Event Espresso. (You can also browse the %3$sEvent Espresso support pages%2$s or %4$sEvent Espresso support forums%2$s to see if other members have experienced and solved the problem.)', 'event_espresso' ), '<a href="https://eventespresso.com/wiki/known-third-party-plugin-theme-conflicts/" target="_blank">','</a>', '<a href="https://eventespresso.com/support/documentation/versioned-docs/?doc_ver=ee4" target="_blank">', '<a href="https://eventespresso.com/support/forums/" target="_blank">' ); ?></li>
7
-					<li><strong><em><?php esc_html_e( 'A plugin conflict.', 'event_espresso' ); ?></em></strong>  <?php esc_html_e( 'You can check to see if there is a plugin conflict by temporarily deactivating all plugins except for Event Espresso. If the problem goes away, then reactivate your plugins one by one until the issue returns. This will help you pinpoint the source of the conflict.', 'event_espresso' ); ?></li>
6
+					<li><strong><em><?php esc_html_e('A known issue.', 'event_espresso'); ?></em></strong>  <?php printf(esc_html__('Some themes and plugins have %1$sknown conflicts%2$s with Event Espresso. (You can also browse the %3$sEvent Espresso support pages%2$s or %4$sEvent Espresso support forums%2$s to see if other members have experienced and solved the problem.)', 'event_espresso'), '<a href="https://eventespresso.com/wiki/known-third-party-plugin-theme-conflicts/" target="_blank">', '</a>', '<a href="https://eventespresso.com/support/documentation/versioned-docs/?doc_ver=ee4" target="_blank">', '<a href="https://eventespresso.com/support/forums/" target="_blank">'); ?></li>
7
+					<li><strong><em><?php esc_html_e('A plugin conflict.', 'event_espresso'); ?></em></strong>  <?php esc_html_e('You can check to see if there is a plugin conflict by temporarily deactivating all plugins except for Event Espresso. If the problem goes away, then reactivate your plugins one by one until the issue returns. This will help you pinpoint the source of the conflict.', 'event_espresso'); ?></li>
8 8
 					<li>
9
-						<strong><em><?php esc_html_e( 'A theme conflict.', 'event_espresso' ); ?></em></strong>
9
+						<strong><em><?php esc_html_e('A theme conflict.', 'event_espresso'); ?></em></strong>
10 10
 						<?php
11
-							$default_theme = wp_get_theme( WP_DEFAULT_THEME );
11
+							$default_theme = wp_get_theme(WP_DEFAULT_THEME);
12 12
 
13
-							if ( $default_theme->exists() ) {
14
-								 printf( esc_html__( 'If your problem is not a known issue or caused by a plugin, then try activating %s (the default WordPress theme).', 'event_espresso' ), $default_theme->get( 'Name' ) );
13
+							if ($default_theme->exists()) {
14
+								 printf(esc_html__('If your problem is not a known issue or caused by a plugin, then try activating %s (the default WordPress theme).', 'event_espresso'), $default_theme->get('Name'));
15 15
 							} else {
16
-								esc_html_e( 'If your problem is not a known issue or caused by a plugin, then try activating the default WordPress theme.', 'event_espresso' );
16
+								esc_html_e('If your problem is not a known issue or caused by a plugin, then try activating the default WordPress theme.', 'event_espresso');
17 17
 							}
18 18
 						?>
19
-						<?php esc_html_e( 'If this solves the problem for you, then something in your theme is causing this issue. Check to see if an update is available for your WordPress theme or reach out to the theme author.', 'event_espresso' ); ?>
19
+						<?php esc_html_e('If this solves the problem for you, then something in your theme is causing this issue. Check to see if an update is available for your WordPress theme or reach out to the theme author.', 'event_espresso'); ?>
20 20
 					</li>
21 21
 				</ol>
22 22
 				
23
-	<p><?php esc_html_e( 'If none of the suggestions above help you find a solution, then feel free to reach out to the support team at Event Espresso.', 'event_espresso' ); ?></p>
24
-	<p><?php printf( esc_html__( 'Login to your account on EventEspresso.com and %1$screate a support post in our member support forums%2$s. Use a %3$sclear and descriptive title%4$s in your support post, %3$sdescribe the issue to the best of your knowledge%4$s, and %3$snever post any sensitive information such as login details%4$s. Be sure to also include %5$simportant information in the section below%2$s about your WordPress site.', 'event_espresso' ), '<a href="https://eventespresso.com/support/forums/" target="_blank">','</a>','<strong>','</strong>','<a href="#espresso_important_information_settings">' ); ?></p>
23
+	<p><?php esc_html_e('If none of the suggestions above help you find a solution, then feel free to reach out to the support team at Event Espresso.', 'event_espresso'); ?></p>
24
+	<p><?php printf(esc_html__('Login to your account on EventEspresso.com and %1$screate a support post in our member support forums%2$s. Use a %3$sclear and descriptive title%4$s in your support post, %3$sdescribe the issue to the best of your knowledge%4$s, and %3$snever post any sensitive information such as login details%4$s. Be sure to also include %5$simportant information in the section below%2$s about your WordPress site.', 'event_espresso'), '<a href="https://eventespresso.com/support/forums/" target="_blank">', '</a>', '<strong>', '</strong>', '<a href="#espresso_important_information_settings">'); ?></p>
25 25
 
26
-	<h4><?php esc_html_e( 'Have an emergency?', 'event_espresso' ); ?></h4>
26
+	<h4><?php esc_html_e('Have an emergency?', 'event_espresso'); ?></h4>
27 27
 
28
-	<p><?php printf( esc_html__( 'We offer support tokens to members that need help with a time-sensitive issue. A support token will provide you with up to 30 minutes of one-on-one time with a team member at Event Espresso. If you have an emergency and need help quickly, then please %1$spurchase a support token%2$s.', 'event_espresso' ), '<a href="https://eventespresso.com/product/premium-support-token/?utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=help_support_tab&utm_content=support_token" target="_blank">','</a>' ); ?></p>
28
+	<p><?php printf(esc_html__('We offer support tokens to members that need help with a time-sensitive issue. A support token will provide you with up to 30 minutes of one-on-one time with a team member at Event Espresso. If you have an emergency and need help quickly, then please %1$spurchase a support token%2$s.', 'event_espresso'), '<a href="https://eventespresso.com/product/premium-support-token/?utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=help_support_tab&utm_content=support_token" target="_blank">', '</a>'); ?></p>
29 29
 </div>
30 30
\ No newline at end of file
Please login to merge, or discard this patch.
admin_pages/support/templates/developers_admin_details.template.php 1 patch
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -1,26 +1,26 @@
 block discarded – undo
1 1
 <div class="padding">
2
-	<?php esc_html_e( 'If you want to integrate with Event Espresso or participate in building code, then you are in the right place. The following resources can help you get started.', 'event_espresso' ); ?>
3
-	<h2><?php esc_html_e( 'Developer Resources', 'event_espresso' ); ?></h2>
2
+	<?php esc_html_e('If you want to integrate with Event Espresso or participate in building code, then you are in the right place. The following resources can help you get started.', 'event_espresso'); ?>
3
+	<h2><?php esc_html_e('Developer Resources', 'event_espresso'); ?></h2>
4 4
 	<ul>
5
-		<li><?php printf( esc_html__( '%1$sEvent Espresso 4 Developer Documentation%2$s', 'event_espresso' ), '<a href="https://github.com/eventespresso/event-espresso-core/tree/master/docs#getting-started-with-the-ee-developer-docs" target="_blank">','</a>' ); ?></li>
6
-		<li><?php printf( esc_html__( '%1$sEvent Espresso 4 Developer News%2$s', 'event_espresso' ), '<a href="http://developer.eventespresso.com/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">','</a>' ); ?></li>
7
-		<li><?php printf( esc_html__( '%1$sApply%2$s to be listed as an %3$sEvent Espresso Professional%2$s', 'event_espresso' ), '<a href="https://eventespresso.com/developers/event-espresso-pros-application/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">','</a>','<a href="https://eventespresso.com/developers/event-espresso-pros/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">' ); ?></li>
5
+		<li><?php printf(esc_html__('%1$sEvent Espresso 4 Developer Documentation%2$s', 'event_espresso'), '<a href="https://github.com/eventespresso/event-espresso-core/tree/master/docs#getting-started-with-the-ee-developer-docs" target="_blank">', '</a>'); ?></li>
6
+		<li><?php printf(esc_html__('%1$sEvent Espresso 4 Developer News%2$s', 'event_espresso'), '<a href="http://developer.eventespresso.com/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">', '</a>'); ?></li>
7
+		<li><?php printf(esc_html__('%1$sApply%2$s to be listed as an %3$sEvent Espresso Professional%2$s', 'event_espresso'), '<a href="https://eventespresso.com/developers/event-espresso-pros-application/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">', '</a>', '<a href="https://eventespresso.com/developers/event-espresso-pros/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">'); ?></li>
8 8
 	</ul>
9 9
 
10
-	<h2><?php esc_html_e( 'Event Espresso 4 Articles for Developers', 'event_espresso' ); ?></h2>
10
+	<h2><?php esc_html_e('Event Espresso 4 Articles for Developers', 'event_espresso'); ?></h2>
11 11
 	<ul>
12
-		<li><?php printf( esc_html__( '%1$sCustom Post Types Usage%2$s', 'event_espresso' ), '<a href="https://eventespresso.com/2014/02/epsresso-brewery-custom-post-types-event-espresso/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">','</a>' ); ?></li>
13
-		<li><?php printf( esc_html__( '%1$sTheme Development%2$s', 'event_espresso' ), '<a href="https://eventespresso.com/2014/02/developers-corner-theming-event-espresso-4/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">','</a>' ); ?></li>
14
-		<li><?php printf( esc_html__( '%1$sCapability System%2$s', 'event_espresso' ), '<a href="http://developer.eventespresso.com/docs/ee-capability-system-overview/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">','</a>' ); ?></li>
15
-		<li><?php printf( esc_html__( '%1$sPayment Method Development%2$s', 'event_espresso' ), '<a href="https://github.com/eventespresso/event-espresso-core/blob/master/docs/L--Payment-Methods-and-Gateways/creating-a-payment-method.md" target="_blank">','</a>' ); ?></li>
16
-		<li><?php printf( esc_html__( '%1$sMessages System in Event Espresso 4%2$s', 'event_espresso' ), '<a href="https://eventespresso.com/2014/03/messages-systemyour-tool-getting-word/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">','</a>' ); ?></li>
17
-		<li><?php printf( esc_html__( '%1$sDatabase Model System%2$s (used for interfacing with EE4 data via WordPress plugins and server side querying)', 'event_espresso' ), '<a href="http://developer.eventespresso.com/docs/using-ee4-model-objects/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">','</a>' ); ?></li>
12
+		<li><?php printf(esc_html__('%1$sCustom Post Types Usage%2$s', 'event_espresso'), '<a href="https://eventespresso.com/2014/02/epsresso-brewery-custom-post-types-event-espresso/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">', '</a>'); ?></li>
13
+		<li><?php printf(esc_html__('%1$sTheme Development%2$s', 'event_espresso'), '<a href="https://eventespresso.com/2014/02/developers-corner-theming-event-espresso-4/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">', '</a>'); ?></li>
14
+		<li><?php printf(esc_html__('%1$sCapability System%2$s', 'event_espresso'), '<a href="http://developer.eventespresso.com/docs/ee-capability-system-overview/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">', '</a>'); ?></li>
15
+		<li><?php printf(esc_html__('%1$sPayment Method Development%2$s', 'event_espresso'), '<a href="https://github.com/eventespresso/event-espresso-core/blob/master/docs/L--Payment-Methods-and-Gateways/creating-a-payment-method.md" target="_blank">', '</a>'); ?></li>
16
+		<li><?php printf(esc_html__('%1$sMessages System in Event Espresso 4%2$s', 'event_espresso'), '<a href="https://eventespresso.com/2014/03/messages-systemyour-tool-getting-word/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">', '</a>'); ?></li>
17
+		<li><?php printf(esc_html__('%1$sDatabase Model System%2$s (used for interfacing with EE4 data via WordPress plugins and server side querying)', 'event_espresso'), '<a href="http://developer.eventespresso.com/docs/using-ee4-model-objects/?ee_ver=ee4&utm_source=ee4_plugin_admin&utm_medium=link&utm_campaign=ee_support_page&utm_content=developers_tab" target="_blank">', '</a>'); ?></li>
18 18
 	</ul>
19 19
 	
20
-	<h2><?php esc_html_e( 'REST API Resources', 'event_espresso' ); ?></h2>
20
+	<h2><?php esc_html_e('REST API Resources', 'event_espresso'); ?></h2>
21 21
 	<ul>
22
-		<li><?php printf( esc_html__( '%1$sREST API: Introduction%2$s', 'event_espresso' ), '<a href="https://github.com/eventespresso/event-espresso-core/blob/master/docs/C--REST-API/ee4-rest-api-introduction.md" target="_blank">','</a>' ); ?></li>
23
-		<li><?php printf( esc_html__( '%1$sREST API: Reading Data%2$s', 'event_espresso' ), '<a href="https://github.com/eventespresso/event-espresso-core/blob/master/docs/C--REST-API/ee4-rest-api-reading-data.md" target="_blank">','</a>' ); ?></li>
24
-		<li><?php printf( esc_html__( '%1$sBuilding an EE4 Add-on Using the REST API%2$s', 'event_espresso' ), '<a href="https://github.com/eventespresso/event-espresso-core/blob/master/docs/T--Tutorials/building-an-ee4-addon-that-uses-angular-js-and-the-ee4-json-rest-api.md" target="_blank">','</a>' ); ?></li>
22
+		<li><?php printf(esc_html__('%1$sREST API: Introduction%2$s', 'event_espresso'), '<a href="https://github.com/eventespresso/event-espresso-core/blob/master/docs/C--REST-API/ee4-rest-api-introduction.md" target="_blank">', '</a>'); ?></li>
23
+		<li><?php printf(esc_html__('%1$sREST API: Reading Data%2$s', 'event_espresso'), '<a href="https://github.com/eventespresso/event-espresso-core/blob/master/docs/C--REST-API/ee4-rest-api-reading-data.md" target="_blank">', '</a>'); ?></li>
24
+		<li><?php printf(esc_html__('%1$sBuilding an EE4 Add-on Using the REST API%2$s', 'event_espresso'), '<a href="https://github.com/eventespresso/event-espresso-core/blob/master/docs/T--Tutorials/building-an-ee4-addon-that-uses-angular-js-and-the-ee4-json-rest-api.md" target="_blank">', '</a>'); ?></li>
25 25
 	</ul>
26 26
 </div>
27 27
\ No newline at end of file
Please login to merge, or discard this patch.
core/db_classes/EE_Attendee.class.php 3 patches
Doc Comments   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -579,7 +579,7 @@  discard block
 block discarded – undo
579 579
     /**
580 580
      * returns any events attached to this attendee ($_Event property);
581 581
      *
582
-     * @return array
582
+     * @return EE_Base_Class[]
583 583
      */
584 584
     public function events()
585 585
     {
@@ -594,7 +594,7 @@  discard block
 block discarded – undo
594 594
      * used to save the billing info
595 595
      *
596 596
      * @param EE_Payment_Method $payment_method the _gateway_name property on the gateway class
597
-     * @return EE_Form_Section_Proper|null
597
+     * @return null|EE_Billing_Info_Form
598 598
      */
599 599
     public function billing_info_for_payment_method($payment_method)
600 600
     {
Please login to merge, or discard this patch.
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -1,4 +1,4 @@  discard block
 block discarded – undo
1
-<?php if (! defined('EVENT_ESPRESSO_VERSION')) {
1
+<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) {
2 2
     exit('No direct script access allowed');
3 3
 }
4 4
 /**
@@ -33,16 +33,16 @@  discard block
 block discarded – undo
33 33
      */
34 34
     protected function __construct($fieldValues = null, $bydb = false, $timezone = null, $date_formats = array())
35 35
     {
36
-        if (! isset($fieldValues['ATT_full_name'])) {
37
-            $fname                        = isset($fieldValues['ATT_fname']) ? $fieldValues['ATT_fname'] . ' ' : '';
36
+        if ( ! isset($fieldValues['ATT_full_name'])) {
37
+            $fname                        = isset($fieldValues['ATT_fname']) ? $fieldValues['ATT_fname'].' ' : '';
38 38
             $lname                        = isset($fieldValues['ATT_lname']) ? $fieldValues['ATT_lname'] : '';
39
-            $fieldValues['ATT_full_name'] = $fname . $lname;
39
+            $fieldValues['ATT_full_name'] = $fname.$lname;
40 40
         }
41
-        if (! isset($fieldValues['ATT_slug'])) {
41
+        if ( ! isset($fieldValues['ATT_slug'])) {
42 42
             //			$fieldValues['ATT_slug'] = sanitize_key(wp_generate_password(20));
43 43
             $fieldValues['ATT_slug'] = sanitize_title($fieldValues['ATT_full_name']);
44 44
         }
45
-        if (! isset($fieldValues['ATT_short_bio']) && isset($fieldValues['ATT_bio'])) {
45
+        if ( ! isset($fieldValues['ATT_short_bio']) && isset($fieldValues['ATT_bio'])) {
46 46
             $fieldValues['ATT_short_bio'] = substr($fieldValues['ATT_bio'], 0, 50);
47 47
         }
48 48
         parent::__construct($fieldValues, $bydb, $timezone, $date_formats);
@@ -251,7 +251,7 @@  discard block
 block discarded – undo
251 251
      */
252 252
     public function full_name($apply_html_entities = false)
253 253
     {
254
-        $full_name = $this->fname() . ' ' . $this->lname();
254
+        $full_name = $this->fname().' '.$this->lname();
255 255
         return $apply_html_entities ? htmlentities($full_name, ENT_QUOTES, 'UTF-8') : $full_name;
256 256
     }
257 257
 
@@ -282,22 +282,22 @@  discard block
 block discarded – undo
282 282
         $initial_address_fields = array('ATT_address', 'ATT_address2', 'ATT_city',);
283 283
         foreach ($initial_address_fields as $address_field_name) {
284 284
             $address_fields_value = $this->get($address_field_name);
285
-            if (! empty($address_fields_value)) {
285
+            if ( ! empty($address_fields_value)) {
286 286
                 $full_address_array[] = $address_fields_value;
287 287
             }
288 288
         }
289 289
         //now handle state and country
290 290
         $state_obj = $this->state_obj();
291
-        if (! empty($state_obj)) {
291
+        if ( ! empty($state_obj)) {
292 292
             $full_address_array[] = $state_obj->name();
293 293
         }
294 294
         $country_obj = $this->country_obj();
295
-        if (! empty($country_obj)) {
295
+        if ( ! empty($country_obj)) {
296 296
             $full_address_array[] = $country_obj->name();
297 297
         }
298 298
         //lastly get the xip
299 299
         $zip_value = $this->zip();
300
-        if (! empty($zip_value)) {
300
+        if ( ! empty($zip_value)) {
301 301
             $full_address_array[] = $zip_value;
302 302
         }
303 303
         return $full_address_array;
@@ -531,7 +531,7 @@  discard block
 block discarded – undo
531 531
     public function get_most_recent_registration_for_event($event_id)
532 532
     {
533 533
         return $this->get_first_related('Registration',
534
-            array(array('EVT_ID' => $event_id), 'order_by' => array('REG_date' => 'DESC')));//, '=', 'OBJECT_K' );
534
+            array(array('EVT_ID' => $event_id), 'order_by' => array('REG_date' => 'DESC'))); //, '=', 'OBJECT_K' );
535 535
     }
536 536
 
537 537
 
@@ -557,11 +557,11 @@  discard block
 block discarded – undo
557 557
     public function billing_info_for_payment_method($payment_method)
558 558
     {
559 559
         $pm_type = $payment_method->type_obj();
560
-        if (! $pm_type instanceof EE_PMT_Base) {
560
+        if ( ! $pm_type instanceof EE_PMT_Base) {
561 561
             return null;
562 562
         }
563 563
         $billing_info = $this->get_post_meta($this->get_billing_info_postmeta_name($payment_method), true);
564
-        if (! $billing_info) {
564
+        if ( ! $billing_info) {
565 565
             return null;
566 566
         }
567 567
         $billing_form = $pm_type->billing_form();
@@ -582,7 +582,7 @@  discard block
 block discarded – undo
582 582
     public function get_billing_info_postmeta_name($payment_method)
583 583
     {
584 584
         if ($payment_method->type_obj() instanceof EE_PMT_Base) {
585
-            return 'billing_info_' . $payment_method->type_obj()->system_name();
585
+            return 'billing_info_'.$payment_method->type_obj()->system_name();
586 586
         } else {
587 587
             return null;
588 588
         }
@@ -599,7 +599,7 @@  discard block
 block discarded – undo
599 599
      */
600 600
     public function save_and_clean_billing_info_for_payment_method($billing_form, $payment_method)
601 601
     {
602
-        if (! $billing_form instanceof EE_Billing_Attendee_Info_Form) {
602
+        if ( ! $billing_form instanceof EE_Billing_Attendee_Info_Form) {
603 603
             EE_Error::add_error(__('Cannot save billing info because there is none.', 'event_espresso'));
604 604
             return false;
605 605
         }
Please login to merge, or discard this patch.
Indentation   +660 added lines, -660 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php if (! defined('EVENT_ESPRESSO_VERSION')) {
2
-    exit('No direct script access allowed');
2
+	exit('No direct script access allowed');
3 3
 }
4 4
 /**
5 5
  * Event Espresso
@@ -23,665 +23,665 @@  discard block
 block discarded – undo
23 23
 class EE_Attendee extends EE_CPT_Base implements EEI_Contact, EEI_Address, EEI_Admin_Links, EEI_Attendee
24 24
 {
25 25
 
26
-    /**
27
-     * Sets some dynamic defaults
28
-     *
29
-     * @param array  $fieldValues
30
-     * @param bool   $bydb
31
-     * @param string $timezone
32
-     * @param array  $date_formats
33
-     */
34
-    protected function __construct($fieldValues = null, $bydb = false, $timezone = null, $date_formats = array())
35
-    {
36
-        if (! isset($fieldValues['ATT_full_name'])) {
37
-            $fname                        = isset($fieldValues['ATT_fname']) ? $fieldValues['ATT_fname'] . ' ' : '';
38
-            $lname                        = isset($fieldValues['ATT_lname']) ? $fieldValues['ATT_lname'] : '';
39
-            $fieldValues['ATT_full_name'] = $fname . $lname;
40
-        }
41
-        if (! isset($fieldValues['ATT_slug'])) {
42
-            //			$fieldValues['ATT_slug'] = sanitize_key(wp_generate_password(20));
43
-            $fieldValues['ATT_slug'] = sanitize_title($fieldValues['ATT_full_name']);
44
-        }
45
-        if (! isset($fieldValues['ATT_short_bio']) && isset($fieldValues['ATT_bio'])) {
46
-            $fieldValues['ATT_short_bio'] = substr($fieldValues['ATT_bio'], 0, 50);
47
-        }
48
-        parent::__construct($fieldValues, $bydb, $timezone, $date_formats);
49
-    }
50
-
51
-
52
-    /**
53
-     * @param array  $props_n_values          incoming values
54
-     * @param string $timezone                incoming timezone (if not set the timezone set for the website will be
55
-     *                                        used.)
56
-     * @param array  $date_formats            incoming date_formats in an array where the first value is the
57
-     *                                        date_format and the second value is the time format
58
-     * @return EE_Attendee
59
-     */
60
-    public static function new_instance($props_n_values = array(), $timezone = null, $date_formats = array())
61
-    {
62
-        $has_object = parent::_check_for_object($props_n_values, __CLASS__, $timezone, $date_formats);
63
-        return $has_object ? $has_object : new self($props_n_values, false, $timezone, $date_formats);
64
-    }
65
-
66
-
67
-    /**
68
-     * @param array  $props_n_values  incoming values from the database
69
-     * @param string $timezone        incoming timezone as set by the model.  If not set the timezone for
70
-     *                                the website will be used.
71
-     * @return EE_Attendee
72
-     */
73
-    public static function new_instance_from_db($props_n_values = array(), $timezone = null)
74
-    {
75
-        return new self($props_n_values, true, $timezone);
76
-    }
77
-
78
-
79
-    /**
80
-     *        Set Attendee First Name
81
-     *
82
-     * @access        public
83
-     * @param string $fname
84
-     */
85
-    public function set_fname($fname = '')
86
-    {
87
-        $this->set('ATT_fname', $fname);
88
-    }
89
-
90
-
91
-    /**
92
-     *        Set Attendee Last Name
93
-     *
94
-     * @access        public
95
-     * @param string $lname
96
-     */
97
-    public function set_lname($lname = '')
98
-    {
99
-        $this->set('ATT_lname', $lname);
100
-    }
101
-
102
-
103
-    /**
104
-     *        Set Attendee Address
105
-     *
106
-     * @access        public
107
-     * @param string $address
108
-     */
109
-    public function set_address($address = '')
110
-    {
111
-        $this->set('ATT_address', $address);
112
-    }
113
-
114
-
115
-    /**
116
-     *        Set Attendee Address2
117
-     *
118
-     * @access        public
119
-     * @param        string $address2
120
-     */
121
-    public function set_address2($address2 = '')
122
-    {
123
-        $this->set('ATT_address2', $address2);
124
-    }
125
-
126
-
127
-    /**
128
-     *        Set Attendee City
129
-     *
130
-     * @access        public
131
-     * @param        string $city
132
-     */
133
-    public function set_city($city = '')
134
-    {
135
-        $this->set('ATT_city', $city);
136
-    }
137
-
138
-
139
-    /**
140
-     *        Set Attendee State ID
141
-     *
142
-     * @access        public
143
-     * @param        int $STA_ID
144
-     */
145
-    public function set_state($STA_ID = 0)
146
-    {
147
-        $this->set('STA_ID', $STA_ID);
148
-    }
149
-
150
-
151
-    /**
152
-     *        Set Attendee Country ISO Code
153
-     *
154
-     * @access        public
155
-     * @param        string $CNT_ISO
156
-     */
157
-    public function set_country($CNT_ISO = '')
158
-    {
159
-        $this->set('CNT_ISO', $CNT_ISO);
160
-    }
161
-
162
-
163
-    /**
164
-     *        Set Attendee Zip/Postal Code
165
-     *
166
-     * @access        public
167
-     * @param        string $zip
168
-     */
169
-    public function set_zip($zip = '')
170
-    {
171
-        $this->set('ATT_zip', $zip);
172
-    }
173
-
174
-
175
-    /**
176
-     *        Set Attendee Email Address
177
-     *
178
-     * @access        public
179
-     * @param        string $email
180
-     */
181
-    public function set_email($email = '')
182
-    {
183
-        $this->set('ATT_email', $email);
184
-    }
185
-
186
-
187
-    /**
188
-     *        Set Attendee Phone
189
-     *
190
-     * @access        public
191
-     * @param        string $phone
192
-     */
193
-    public function set_phone($phone = '')
194
-    {
195
-        $this->set('ATT_phone', $phone);
196
-    }
197
-
198
-
199
-    /**
200
-     *        set deleted
201
-     *
202
-     * @access        public
203
-     * @param        bool $ATT_deleted
204
-     */
205
-    public function set_deleted($ATT_deleted = false)
206
-    {
207
-        $this->set('ATT_deleted', $ATT_deleted);
208
-    }
209
-
210
-
211
-    /**
212
-     * Returns the value for the post_author id saved with the cpt
213
-     *
214
-     * @since 4.5.0
215
-     * @return int
216
-     */
217
-    public function wp_user()
218
-    {
219
-        return $this->get('ATT_author');
220
-    }
221
-
222
-
223
-    /**
224
-     *        get Attendee First Name
225
-     *
226
-     * @access        public
227
-     * @return string
228
-     */
229
-    public function fname()
230
-    {
231
-        return $this->get('ATT_fname');
232
-    }
233
-
234
-
235
-    /**
236
-     * echoes out the attendee's first name
237
-     *
238
-     * @return void
239
-     */
240
-    public function e_full_name()
241
-    {
242
-        echo $this->full_name();
243
-    }
244
-
245
-
246
-    /**
247
-     * Returns the first and last name concatenated together with a space.
248
-     *
249
-     * @param bool $apply_html_entities
250
-     * @return string
251
-     */
252
-    public function full_name($apply_html_entities = false)
253
-    {
254
-        $full_name = $this->fname() . ' ' . $this->lname();
255
-        return $apply_html_entities ? htmlentities($full_name, ENT_QUOTES, 'UTF-8') : $full_name;
256
-    }
257
-
258
-
259
-    /**
260
-     * This returns the value of the `ATT_full_name` field which is usually equivalent to calling `full_name()` unless
261
-     * the post_title field has been directly modified in the db for the post (espresso_attendees post type) for this
262
-     * attendee.
263
-     *
264
-     * @param bool $apply_html_entities
265
-     * @return string
266
-     */
267
-    public function ATT_full_name($apply_html_entities = false)
268
-    {
269
-        return $apply_html_entities
270
-            ? htmlentities($this->get('ATT_full_name'), ENT_QUOTES, 'UTF-8')
271
-            : $this->get('ATT_full_name');
272
-    }
273
-
274
-
275
-    /**
276
-     *        get Attendee Last Name
277
-     *
278
-     * @access        public
279
-     * @return string
280
-     */
281
-    public function lname()
282
-    {
283
-        return $this->get('ATT_lname');
284
-    }
285
-
286
-
287
-    /**
288
-     * Gets the attendee's full address as an array so client code can decide hwo to display it
289
-     *
290
-     * @return array numerically indexed, with each part of the address that is known.
291
-     * Eg, if the user only responded to state and country,
292
-     * it would be array(0=>'Alabama',1=>'USA')
293
-     * @return array
294
-     */
295
-    public function full_address_as_array()
296
-    {
297
-        $full_address_array     = array();
298
-        $initial_address_fields = array('ATT_address', 'ATT_address2', 'ATT_city',);
299
-        foreach ($initial_address_fields as $address_field_name) {
300
-            $address_fields_value = $this->get($address_field_name);
301
-            if (! empty($address_fields_value)) {
302
-                $full_address_array[] = $address_fields_value;
303
-            }
304
-        }
305
-        //now handle state and country
306
-        $state_obj = $this->state_obj();
307
-        if (! empty($state_obj)) {
308
-            $full_address_array[] = $state_obj->name();
309
-        }
310
-        $country_obj = $this->country_obj();
311
-        if (! empty($country_obj)) {
312
-            $full_address_array[] = $country_obj->name();
313
-        }
314
-        //lastly get the xip
315
-        $zip_value = $this->zip();
316
-        if (! empty($zip_value)) {
317
-            $full_address_array[] = $zip_value;
318
-        }
319
-        return $full_address_array;
320
-    }
321
-
322
-
323
-    /**
324
-     *        get Attendee Address
325
-     *
326
-     * @return string
327
-     */
328
-    public function address()
329
-    {
330
-        return $this->get('ATT_address');
331
-    }
332
-
333
-
334
-    /**
335
-     *        get Attendee Address2
336
-     *
337
-     * @return string
338
-     */
339
-    public function address2()
340
-    {
341
-        return $this->get('ATT_address2');
342
-    }
343
-
344
-
345
-    /**
346
-     *        get Attendee City
347
-     *
348
-     * @return string
349
-     */
350
-    public function city()
351
-    {
352
-        return $this->get('ATT_city');
353
-    }
354
-
355
-
356
-    /**
357
-     *        get Attendee State ID
358
-     *
359
-     * @return string
360
-     */
361
-    public function state_ID()
362
-    {
363
-        return $this->get('STA_ID');
364
-    }
365
-
366
-
367
-    /**
368
-     * @return string
369
-     */
370
-    public function state_abbrev()
371
-    {
372
-        return $this->state_obj() instanceof EE_State ? $this->state_obj()->abbrev() : '';
373
-    }
374
-
375
-
376
-    /**
377
-     * Gets the state set to this attendee
378
-     *
379
-     * @return EE_State
380
-     */
381
-    public function state_obj()
382
-    {
383
-        return $this->get_first_related('State');
384
-    }
385
-
386
-
387
-    /**
388
-     * Returns the state's name, otherwise 'Unknown'
389
-     *
390
-     * @return string
391
-     */
392
-    public function state_name()
393
-    {
394
-        if ($this->state_obj()) {
395
-            return $this->state_obj()->name();
396
-        } else {
397
-            return '';
398
-        }
399
-    }
400
-
401
-
402
-    /**
403
-     * either displays the state abbreviation or the state name, as determined
404
-     * by the "FHEE__EEI_Address__state__use_abbreviation" filter.
405
-     * defaults to abbreviation
406
-     *
407
-     * @return string
408
-     */
409
-    public function state()
410
-    {
411
-        if (apply_filters('FHEE__EEI_Address__state__use_abbreviation', true, $this->state_obj())) {
412
-            return $this->state_abbrev();
413
-        } else {
414
-            return $this->state_name();
415
-        }
416
-    }
417
-
418
-
419
-    /**
420
-     *    get Attendee Country ISO Code
421
-     *
422
-     * @return string
423
-     */
424
-    public function country_ID()
425
-    {
426
-        return $this->get('CNT_ISO');
427
-    }
428
-
429
-
430
-    /**
431
-     * Gets country set for this attendee
432
-     *
433
-     * @return EE_Country
434
-     */
435
-    public function country_obj()
436
-    {
437
-        return $this->get_first_related('Country');
438
-    }
439
-
440
-
441
-    /**
442
-     * Returns the country's name if known, otherwise 'Unknown'
443
-     *
444
-     * @return string
445
-     */
446
-    public function country_name()
447
-    {
448
-        if ($this->country_obj()) {
449
-            return $this->country_obj()->name();
450
-        } else {
451
-            return '';
452
-        }
453
-    }
454
-
455
-
456
-    /**
457
-     * either displays the country ISO2 code or the country name, as determined
458
-     * by the "FHEE__EEI_Address__country__use_abbreviation" filter.
459
-     * defaults to abbreviation
460
-     *
461
-     * @return string
462
-     */
463
-    public function country()
464
-    {
465
-        if (apply_filters('FHEE__EEI_Address__country__use_abbreviation', true, $this->country_obj())) {
466
-            return $this->country_ID();
467
-        } else {
468
-            return $this->country_name();
469
-        }
470
-    }
471
-
472
-
473
-    /**
474
-     *        get Attendee Zip/Postal Code
475
-     *
476
-     * @return string
477
-     */
478
-    public function zip()
479
-    {
480
-        return $this->get('ATT_zip');
481
-    }
482
-
483
-
484
-    /**
485
-     *        get Attendee Email Address
486
-     *
487
-     * @return string
488
-     */
489
-    public function email()
490
-    {
491
-        return $this->get('ATT_email');
492
-    }
493
-
494
-
495
-    /**
496
-     *        get Attendee Phone #
497
-     *
498
-     * @return string
499
-     */
500
-    public function phone()
501
-    {
502
-        return $this->get('ATT_phone');
503
-    }
504
-
505
-
506
-    /**
507
-     *    get deleted
508
-     *
509
-     * @return        bool
510
-     */
511
-    public function deleted()
512
-    {
513
-        return $this->get('ATT_deleted');
514
-    }
515
-
516
-
517
-    /**
518
-     * Gets registrations of this attendee
519
-     *
520
-     * @param array $query_params
521
-     * @return EE_Registration[]
522
-     */
523
-    public function get_registrations($query_params = array())
524
-    {
525
-        return $this->get_many_related('Registration', $query_params);
526
-    }
527
-
528
-
529
-    /**
530
-     * Gets the most recent registration of this attendee
531
-     *
532
-     * @return EE_Registration
533
-     */
534
-    public function get_most_recent_registration()
535
-    {
536
-        return $this->get_first_related('Registration',
537
-            array('order_by' => array('REG_date' => 'DESC'))); //null, 'REG_date', 'DESC', '=', 'OBJECT_K');
538
-    }
539
-
540
-
541
-    /**
542
-     * Gets the most recent registration for this attend at this event
543
-     *
544
-     * @param int $event_id
545
-     * @return EE_Registration
546
-     */
547
-    public function get_most_recent_registration_for_event($event_id)
548
-    {
549
-        return $this->get_first_related('Registration',
550
-            array(array('EVT_ID' => $event_id), 'order_by' => array('REG_date' => 'DESC')));//, '=', 'OBJECT_K' );
551
-    }
552
-
553
-
554
-    /**
555
-     * returns any events attached to this attendee ($_Event property);
556
-     *
557
-     * @return array
558
-     */
559
-    public function events()
560
-    {
561
-        return $this->get_many_related('Event');
562
-    }
563
-
564
-
565
-    /**
566
-     * Gets the billing info array where keys match espresso_reg_page_billing_inputs(),
567
-     * and keys are their cleaned values. @see EE_Attendee::save_and_clean_billing_info_for_payment_method() which was
568
-     * used to save the billing info
569
-     *
570
-     * @param EE_Payment_Method $payment_method the _gateway_name property on the gateway class
571
-     * @return EE_Form_Section_Proper|null
572
-     */
573
-    public function billing_info_for_payment_method($payment_method)
574
-    {
575
-        $pm_type = $payment_method->type_obj();
576
-        if (! $pm_type instanceof EE_PMT_Base) {
577
-            return null;
578
-        }
579
-        $billing_info = $this->get_post_meta($this->get_billing_info_postmeta_name($payment_method), true);
580
-        if (! $billing_info) {
581
-            return null;
582
-        }
583
-        $billing_form = $pm_type->billing_form();
584
-        if ($billing_form instanceof EE_Form_Section_Proper) {
585
-            $billing_form->receive_form_submission(array($billing_form->name() => $billing_info), false);
586
-        }
587
-        return $billing_form;
588
-    }
589
-
590
-
591
-    /**
592
-     * Gets the postmeta key that holds this attendee's billing info for the
593
-     * specified payment method
594
-     *
595
-     * @param EE_Payment_Method $payment_method
596
-     * @return string
597
-     */
598
-    public function get_billing_info_postmeta_name($payment_method)
599
-    {
600
-        if ($payment_method->type_obj() instanceof EE_PMT_Base) {
601
-            return 'billing_info_' . $payment_method->type_obj()->system_name();
602
-        } else {
603
-            return null;
604
-        }
605
-    }
606
-
607
-
608
-    /**
609
-     * Saves the billing info to the attendee. @see EE_Attendee::billing_info_for_payment_method() which is used to
610
-     * retrieve it
611
-     *
612
-     * @param EE_Billing_Attendee_Info_Form $billing_form
613
-     * @param EE_Payment_Method             $payment_method
614
-     * @return boolean
615
-     */
616
-    public function save_and_clean_billing_info_for_payment_method($billing_form, $payment_method)
617
-    {
618
-        if (! $billing_form instanceof EE_Billing_Attendee_Info_Form) {
619
-            EE_Error::add_error(__('Cannot save billing info because there is none.', 'event_espresso'));
620
-            return false;
621
-        }
622
-        $billing_form->clean_sensitive_data();
623
-        return update_post_meta($this->ID(), $this->get_billing_info_postmeta_name($payment_method),
624
-            $billing_form->input_values(true));
625
-    }
626
-
627
-
628
-    /**
629
-     * Return the link to the admin details for the object.
630
-     *
631
-     * @return string
632
-     */
633
-    public function get_admin_details_link()
634
-    {
635
-        return $this->get_admin_edit_link();
636
-    }
637
-
638
-
639
-    /**
640
-     * Returns the link to the editor for the object.  Sometimes this is the same as the details.
641
-     *
642
-     * @return string
643
-     */
644
-    public function get_admin_edit_link()
645
-    {
646
-        EE_Registry::instance()->load_helper('URL');
647
-        return EEH_URL::add_query_args_and_nonce(
648
-            array(
649
-                'page'   => 'espresso_registrations',
650
-                'action' => 'edit_attendee',
651
-                'post'   => $this->ID(),
652
-            ),
653
-            admin_url('admin.php')
654
-        );
655
-    }
656
-
657
-
658
-    /**
659
-     * Returns the link to a settings page for the object.
660
-     *
661
-     * @return string
662
-     */
663
-    public function get_admin_settings_link()
664
-    {
665
-        return $this->get_admin_edit_link();
666
-    }
667
-
668
-
669
-    /**
670
-     * Returns the link to the "overview" for the object (typically the "list table" view).
671
-     *
672
-     * @return string
673
-     */
674
-    public function get_admin_overview_link()
675
-    {
676
-        EE_Registry::instance()->load_helper('URL');
677
-        return EEH_URL::add_query_args_and_nonce(
678
-            array(
679
-                'page'   => 'espresso_registrations',
680
-                'action' => 'contact_list',
681
-            ),
682
-            admin_url('admin.php')
683
-        );
684
-    }
26
+	/**
27
+	 * Sets some dynamic defaults
28
+	 *
29
+	 * @param array  $fieldValues
30
+	 * @param bool   $bydb
31
+	 * @param string $timezone
32
+	 * @param array  $date_formats
33
+	 */
34
+	protected function __construct($fieldValues = null, $bydb = false, $timezone = null, $date_formats = array())
35
+	{
36
+		if (! isset($fieldValues['ATT_full_name'])) {
37
+			$fname                        = isset($fieldValues['ATT_fname']) ? $fieldValues['ATT_fname'] . ' ' : '';
38
+			$lname                        = isset($fieldValues['ATT_lname']) ? $fieldValues['ATT_lname'] : '';
39
+			$fieldValues['ATT_full_name'] = $fname . $lname;
40
+		}
41
+		if (! isset($fieldValues['ATT_slug'])) {
42
+			//			$fieldValues['ATT_slug'] = sanitize_key(wp_generate_password(20));
43
+			$fieldValues['ATT_slug'] = sanitize_title($fieldValues['ATT_full_name']);
44
+		}
45
+		if (! isset($fieldValues['ATT_short_bio']) && isset($fieldValues['ATT_bio'])) {
46
+			$fieldValues['ATT_short_bio'] = substr($fieldValues['ATT_bio'], 0, 50);
47
+		}
48
+		parent::__construct($fieldValues, $bydb, $timezone, $date_formats);
49
+	}
50
+
51
+
52
+	/**
53
+	 * @param array  $props_n_values          incoming values
54
+	 * @param string $timezone                incoming timezone (if not set the timezone set for the website will be
55
+	 *                                        used.)
56
+	 * @param array  $date_formats            incoming date_formats in an array where the first value is the
57
+	 *                                        date_format and the second value is the time format
58
+	 * @return EE_Attendee
59
+	 */
60
+	public static function new_instance($props_n_values = array(), $timezone = null, $date_formats = array())
61
+	{
62
+		$has_object = parent::_check_for_object($props_n_values, __CLASS__, $timezone, $date_formats);
63
+		return $has_object ? $has_object : new self($props_n_values, false, $timezone, $date_formats);
64
+	}
65
+
66
+
67
+	/**
68
+	 * @param array  $props_n_values  incoming values from the database
69
+	 * @param string $timezone        incoming timezone as set by the model.  If not set the timezone for
70
+	 *                                the website will be used.
71
+	 * @return EE_Attendee
72
+	 */
73
+	public static function new_instance_from_db($props_n_values = array(), $timezone = null)
74
+	{
75
+		return new self($props_n_values, true, $timezone);
76
+	}
77
+
78
+
79
+	/**
80
+	 *        Set Attendee First Name
81
+	 *
82
+	 * @access        public
83
+	 * @param string $fname
84
+	 */
85
+	public function set_fname($fname = '')
86
+	{
87
+		$this->set('ATT_fname', $fname);
88
+	}
89
+
90
+
91
+	/**
92
+	 *        Set Attendee Last Name
93
+	 *
94
+	 * @access        public
95
+	 * @param string $lname
96
+	 */
97
+	public function set_lname($lname = '')
98
+	{
99
+		$this->set('ATT_lname', $lname);
100
+	}
101
+
102
+
103
+	/**
104
+	 *        Set Attendee Address
105
+	 *
106
+	 * @access        public
107
+	 * @param string $address
108
+	 */
109
+	public function set_address($address = '')
110
+	{
111
+		$this->set('ATT_address', $address);
112
+	}
113
+
114
+
115
+	/**
116
+	 *        Set Attendee Address2
117
+	 *
118
+	 * @access        public
119
+	 * @param        string $address2
120
+	 */
121
+	public function set_address2($address2 = '')
122
+	{
123
+		$this->set('ATT_address2', $address2);
124
+	}
125
+
126
+
127
+	/**
128
+	 *        Set Attendee City
129
+	 *
130
+	 * @access        public
131
+	 * @param        string $city
132
+	 */
133
+	public function set_city($city = '')
134
+	{
135
+		$this->set('ATT_city', $city);
136
+	}
137
+
138
+
139
+	/**
140
+	 *        Set Attendee State ID
141
+	 *
142
+	 * @access        public
143
+	 * @param        int $STA_ID
144
+	 */
145
+	public function set_state($STA_ID = 0)
146
+	{
147
+		$this->set('STA_ID', $STA_ID);
148
+	}
149
+
150
+
151
+	/**
152
+	 *        Set Attendee Country ISO Code
153
+	 *
154
+	 * @access        public
155
+	 * @param        string $CNT_ISO
156
+	 */
157
+	public function set_country($CNT_ISO = '')
158
+	{
159
+		$this->set('CNT_ISO', $CNT_ISO);
160
+	}
161
+
162
+
163
+	/**
164
+	 *        Set Attendee Zip/Postal Code
165
+	 *
166
+	 * @access        public
167
+	 * @param        string $zip
168
+	 */
169
+	public function set_zip($zip = '')
170
+	{
171
+		$this->set('ATT_zip', $zip);
172
+	}
173
+
174
+
175
+	/**
176
+	 *        Set Attendee Email Address
177
+	 *
178
+	 * @access        public
179
+	 * @param        string $email
180
+	 */
181
+	public function set_email($email = '')
182
+	{
183
+		$this->set('ATT_email', $email);
184
+	}
185
+
186
+
187
+	/**
188
+	 *        Set Attendee Phone
189
+	 *
190
+	 * @access        public
191
+	 * @param        string $phone
192
+	 */
193
+	public function set_phone($phone = '')
194
+	{
195
+		$this->set('ATT_phone', $phone);
196
+	}
197
+
198
+
199
+	/**
200
+	 *        set deleted
201
+	 *
202
+	 * @access        public
203
+	 * @param        bool $ATT_deleted
204
+	 */
205
+	public function set_deleted($ATT_deleted = false)
206
+	{
207
+		$this->set('ATT_deleted', $ATT_deleted);
208
+	}
209
+
210
+
211
+	/**
212
+	 * Returns the value for the post_author id saved with the cpt
213
+	 *
214
+	 * @since 4.5.0
215
+	 * @return int
216
+	 */
217
+	public function wp_user()
218
+	{
219
+		return $this->get('ATT_author');
220
+	}
221
+
222
+
223
+	/**
224
+	 *        get Attendee First Name
225
+	 *
226
+	 * @access        public
227
+	 * @return string
228
+	 */
229
+	public function fname()
230
+	{
231
+		return $this->get('ATT_fname');
232
+	}
233
+
234
+
235
+	/**
236
+	 * echoes out the attendee's first name
237
+	 *
238
+	 * @return void
239
+	 */
240
+	public function e_full_name()
241
+	{
242
+		echo $this->full_name();
243
+	}
244
+
245
+
246
+	/**
247
+	 * Returns the first and last name concatenated together with a space.
248
+	 *
249
+	 * @param bool $apply_html_entities
250
+	 * @return string
251
+	 */
252
+	public function full_name($apply_html_entities = false)
253
+	{
254
+		$full_name = $this->fname() . ' ' . $this->lname();
255
+		return $apply_html_entities ? htmlentities($full_name, ENT_QUOTES, 'UTF-8') : $full_name;
256
+	}
257
+
258
+
259
+	/**
260
+	 * This returns the value of the `ATT_full_name` field which is usually equivalent to calling `full_name()` unless
261
+	 * the post_title field has been directly modified in the db for the post (espresso_attendees post type) for this
262
+	 * attendee.
263
+	 *
264
+	 * @param bool $apply_html_entities
265
+	 * @return string
266
+	 */
267
+	public function ATT_full_name($apply_html_entities = false)
268
+	{
269
+		return $apply_html_entities
270
+			? htmlentities($this->get('ATT_full_name'), ENT_QUOTES, 'UTF-8')
271
+			: $this->get('ATT_full_name');
272
+	}
273
+
274
+
275
+	/**
276
+	 *        get Attendee Last Name
277
+	 *
278
+	 * @access        public
279
+	 * @return string
280
+	 */
281
+	public function lname()
282
+	{
283
+		return $this->get('ATT_lname');
284
+	}
285
+
286
+
287
+	/**
288
+	 * Gets the attendee's full address as an array so client code can decide hwo to display it
289
+	 *
290
+	 * @return array numerically indexed, with each part of the address that is known.
291
+	 * Eg, if the user only responded to state and country,
292
+	 * it would be array(0=>'Alabama',1=>'USA')
293
+	 * @return array
294
+	 */
295
+	public function full_address_as_array()
296
+	{
297
+		$full_address_array     = array();
298
+		$initial_address_fields = array('ATT_address', 'ATT_address2', 'ATT_city',);
299
+		foreach ($initial_address_fields as $address_field_name) {
300
+			$address_fields_value = $this->get($address_field_name);
301
+			if (! empty($address_fields_value)) {
302
+				$full_address_array[] = $address_fields_value;
303
+			}
304
+		}
305
+		//now handle state and country
306
+		$state_obj = $this->state_obj();
307
+		if (! empty($state_obj)) {
308
+			$full_address_array[] = $state_obj->name();
309
+		}
310
+		$country_obj = $this->country_obj();
311
+		if (! empty($country_obj)) {
312
+			$full_address_array[] = $country_obj->name();
313
+		}
314
+		//lastly get the xip
315
+		$zip_value = $this->zip();
316
+		if (! empty($zip_value)) {
317
+			$full_address_array[] = $zip_value;
318
+		}
319
+		return $full_address_array;
320
+	}
321
+
322
+
323
+	/**
324
+	 *        get Attendee Address
325
+	 *
326
+	 * @return string
327
+	 */
328
+	public function address()
329
+	{
330
+		return $this->get('ATT_address');
331
+	}
332
+
333
+
334
+	/**
335
+	 *        get Attendee Address2
336
+	 *
337
+	 * @return string
338
+	 */
339
+	public function address2()
340
+	{
341
+		return $this->get('ATT_address2');
342
+	}
343
+
344
+
345
+	/**
346
+	 *        get Attendee City
347
+	 *
348
+	 * @return string
349
+	 */
350
+	public function city()
351
+	{
352
+		return $this->get('ATT_city');
353
+	}
354
+
355
+
356
+	/**
357
+	 *        get Attendee State ID
358
+	 *
359
+	 * @return string
360
+	 */
361
+	public function state_ID()
362
+	{
363
+		return $this->get('STA_ID');
364
+	}
365
+
366
+
367
+	/**
368
+	 * @return string
369
+	 */
370
+	public function state_abbrev()
371
+	{
372
+		return $this->state_obj() instanceof EE_State ? $this->state_obj()->abbrev() : '';
373
+	}
374
+
375
+
376
+	/**
377
+	 * Gets the state set to this attendee
378
+	 *
379
+	 * @return EE_State
380
+	 */
381
+	public function state_obj()
382
+	{
383
+		return $this->get_first_related('State');
384
+	}
385
+
386
+
387
+	/**
388
+	 * Returns the state's name, otherwise 'Unknown'
389
+	 *
390
+	 * @return string
391
+	 */
392
+	public function state_name()
393
+	{
394
+		if ($this->state_obj()) {
395
+			return $this->state_obj()->name();
396
+		} else {
397
+			return '';
398
+		}
399
+	}
400
+
401
+
402
+	/**
403
+	 * either displays the state abbreviation or the state name, as determined
404
+	 * by the "FHEE__EEI_Address__state__use_abbreviation" filter.
405
+	 * defaults to abbreviation
406
+	 *
407
+	 * @return string
408
+	 */
409
+	public function state()
410
+	{
411
+		if (apply_filters('FHEE__EEI_Address__state__use_abbreviation', true, $this->state_obj())) {
412
+			return $this->state_abbrev();
413
+		} else {
414
+			return $this->state_name();
415
+		}
416
+	}
417
+
418
+
419
+	/**
420
+	 *    get Attendee Country ISO Code
421
+	 *
422
+	 * @return string
423
+	 */
424
+	public function country_ID()
425
+	{
426
+		return $this->get('CNT_ISO');
427
+	}
428
+
429
+
430
+	/**
431
+	 * Gets country set for this attendee
432
+	 *
433
+	 * @return EE_Country
434
+	 */
435
+	public function country_obj()
436
+	{
437
+		return $this->get_first_related('Country');
438
+	}
439
+
440
+
441
+	/**
442
+	 * Returns the country's name if known, otherwise 'Unknown'
443
+	 *
444
+	 * @return string
445
+	 */
446
+	public function country_name()
447
+	{
448
+		if ($this->country_obj()) {
449
+			return $this->country_obj()->name();
450
+		} else {
451
+			return '';
452
+		}
453
+	}
454
+
455
+
456
+	/**
457
+	 * either displays the country ISO2 code or the country name, as determined
458
+	 * by the "FHEE__EEI_Address__country__use_abbreviation" filter.
459
+	 * defaults to abbreviation
460
+	 *
461
+	 * @return string
462
+	 */
463
+	public function country()
464
+	{
465
+		if (apply_filters('FHEE__EEI_Address__country__use_abbreviation', true, $this->country_obj())) {
466
+			return $this->country_ID();
467
+		} else {
468
+			return $this->country_name();
469
+		}
470
+	}
471
+
472
+
473
+	/**
474
+	 *        get Attendee Zip/Postal Code
475
+	 *
476
+	 * @return string
477
+	 */
478
+	public function zip()
479
+	{
480
+		return $this->get('ATT_zip');
481
+	}
482
+
483
+
484
+	/**
485
+	 *        get Attendee Email Address
486
+	 *
487
+	 * @return string
488
+	 */
489
+	public function email()
490
+	{
491
+		return $this->get('ATT_email');
492
+	}
493
+
494
+
495
+	/**
496
+	 *        get Attendee Phone #
497
+	 *
498
+	 * @return string
499
+	 */
500
+	public function phone()
501
+	{
502
+		return $this->get('ATT_phone');
503
+	}
504
+
505
+
506
+	/**
507
+	 *    get deleted
508
+	 *
509
+	 * @return        bool
510
+	 */
511
+	public function deleted()
512
+	{
513
+		return $this->get('ATT_deleted');
514
+	}
515
+
516
+
517
+	/**
518
+	 * Gets registrations of this attendee
519
+	 *
520
+	 * @param array $query_params
521
+	 * @return EE_Registration[]
522
+	 */
523
+	public function get_registrations($query_params = array())
524
+	{
525
+		return $this->get_many_related('Registration', $query_params);
526
+	}
527
+
528
+
529
+	/**
530
+	 * Gets the most recent registration of this attendee
531
+	 *
532
+	 * @return EE_Registration
533
+	 */
534
+	public function get_most_recent_registration()
535
+	{
536
+		return $this->get_first_related('Registration',
537
+			array('order_by' => array('REG_date' => 'DESC'))); //null, 'REG_date', 'DESC', '=', 'OBJECT_K');
538
+	}
539
+
540
+
541
+	/**
542
+	 * Gets the most recent registration for this attend at this event
543
+	 *
544
+	 * @param int $event_id
545
+	 * @return EE_Registration
546
+	 */
547
+	public function get_most_recent_registration_for_event($event_id)
548
+	{
549
+		return $this->get_first_related('Registration',
550
+			array(array('EVT_ID' => $event_id), 'order_by' => array('REG_date' => 'DESC')));//, '=', 'OBJECT_K' );
551
+	}
552
+
553
+
554
+	/**
555
+	 * returns any events attached to this attendee ($_Event property);
556
+	 *
557
+	 * @return array
558
+	 */
559
+	public function events()
560
+	{
561
+		return $this->get_many_related('Event');
562
+	}
563
+
564
+
565
+	/**
566
+	 * Gets the billing info array where keys match espresso_reg_page_billing_inputs(),
567
+	 * and keys are their cleaned values. @see EE_Attendee::save_and_clean_billing_info_for_payment_method() which was
568
+	 * used to save the billing info
569
+	 *
570
+	 * @param EE_Payment_Method $payment_method the _gateway_name property on the gateway class
571
+	 * @return EE_Form_Section_Proper|null
572
+	 */
573
+	public function billing_info_for_payment_method($payment_method)
574
+	{
575
+		$pm_type = $payment_method->type_obj();
576
+		if (! $pm_type instanceof EE_PMT_Base) {
577
+			return null;
578
+		}
579
+		$billing_info = $this->get_post_meta($this->get_billing_info_postmeta_name($payment_method), true);
580
+		if (! $billing_info) {
581
+			return null;
582
+		}
583
+		$billing_form = $pm_type->billing_form();
584
+		if ($billing_form instanceof EE_Form_Section_Proper) {
585
+			$billing_form->receive_form_submission(array($billing_form->name() => $billing_info), false);
586
+		}
587
+		return $billing_form;
588
+	}
589
+
590
+
591
+	/**
592
+	 * Gets the postmeta key that holds this attendee's billing info for the
593
+	 * specified payment method
594
+	 *
595
+	 * @param EE_Payment_Method $payment_method
596
+	 * @return string
597
+	 */
598
+	public function get_billing_info_postmeta_name($payment_method)
599
+	{
600
+		if ($payment_method->type_obj() instanceof EE_PMT_Base) {
601
+			return 'billing_info_' . $payment_method->type_obj()->system_name();
602
+		} else {
603
+			return null;
604
+		}
605
+	}
606
+
607
+
608
+	/**
609
+	 * Saves the billing info to the attendee. @see EE_Attendee::billing_info_for_payment_method() which is used to
610
+	 * retrieve it
611
+	 *
612
+	 * @param EE_Billing_Attendee_Info_Form $billing_form
613
+	 * @param EE_Payment_Method             $payment_method
614
+	 * @return boolean
615
+	 */
616
+	public function save_and_clean_billing_info_for_payment_method($billing_form, $payment_method)
617
+	{
618
+		if (! $billing_form instanceof EE_Billing_Attendee_Info_Form) {
619
+			EE_Error::add_error(__('Cannot save billing info because there is none.', 'event_espresso'));
620
+			return false;
621
+		}
622
+		$billing_form->clean_sensitive_data();
623
+		return update_post_meta($this->ID(), $this->get_billing_info_postmeta_name($payment_method),
624
+			$billing_form->input_values(true));
625
+	}
626
+
627
+
628
+	/**
629
+	 * Return the link to the admin details for the object.
630
+	 *
631
+	 * @return string
632
+	 */
633
+	public function get_admin_details_link()
634
+	{
635
+		return $this->get_admin_edit_link();
636
+	}
637
+
638
+
639
+	/**
640
+	 * Returns the link to the editor for the object.  Sometimes this is the same as the details.
641
+	 *
642
+	 * @return string
643
+	 */
644
+	public function get_admin_edit_link()
645
+	{
646
+		EE_Registry::instance()->load_helper('URL');
647
+		return EEH_URL::add_query_args_and_nonce(
648
+			array(
649
+				'page'   => 'espresso_registrations',
650
+				'action' => 'edit_attendee',
651
+				'post'   => $this->ID(),
652
+			),
653
+			admin_url('admin.php')
654
+		);
655
+	}
656
+
657
+
658
+	/**
659
+	 * Returns the link to a settings page for the object.
660
+	 *
661
+	 * @return string
662
+	 */
663
+	public function get_admin_settings_link()
664
+	{
665
+		return $this->get_admin_edit_link();
666
+	}
667
+
668
+
669
+	/**
670
+	 * Returns the link to the "overview" for the object (typically the "list table" view).
671
+	 *
672
+	 * @return string
673
+	 */
674
+	public function get_admin_overview_link()
675
+	{
676
+		EE_Registry::instance()->load_helper('URL');
677
+		return EEH_URL::add_query_args_and_nonce(
678
+			array(
679
+				'page'   => 'espresso_registrations',
680
+				'action' => 'contact_list',
681
+			),
682
+			admin_url('admin.php')
683
+		);
684
+	}
685 685
 
686 686
 
687 687
 }
Please login to merge, or discard this patch.