Quantcast
Channel: WordPress.org Forums » [Contact Form 7] Support
Viewing all articles
Browse latest Browse all 49500

l.tamburo on "[Plugin: Contact Form 7] Patch for flamingo module"

$
0
0

I make a patch into modules/flamingo.php
with this patch cf7 send to flamingo "Mail subject" and "Mail from" if this field is set into cf7 form.

For example:
"Mail from" cf7 form
[your-fistname] [your-surname] [your-email]
"Flamingo from"
value_of_your-firstname value_of_your-surname
"Mail subject" cf7 form
[field-subject]
"Flamingo subject"
value_of_field-subject

or

"Mail from" cf7 form
[your-fistname] [your-lastname] [your-email]
"Flamingo from"
value_of_your-firstname value_of_your-lastname
"Mail subject" cf7 form
My site example.com [field-subject]
"Flamingo subject"
My site example.com value_of_field-subject

I test patch against:
WordPress ver. 3.6, Contact Form 7 ver. 3.5.2 and Flamingo ver. 1.0.4
all work fine for me.

change lines (modules/flamingo.php) 45 and 46:

$name = isset( $posted_data['your-name'] ) ? trim( $posted_data['your-name'] ) : '';
$subject = isset( $posted_data['your-subject'] ) ? trim( $posted_data['your-subject'] ) : '';

with this:

/* check for mail subject */
	if( isset( $contactform->mail['subject'] ) and !empty( $contactform->mail['subject'] ) )
		$mail_subject_data = $contactform->mail['subject'];
	else
		$mail_subject_data = null;

	if( ( $mail_subject_data != null ) and ( strlen( trim( $mail_subject_data ) ) > 0 ) ){
		preg_match_all( "/\[(\S*?)]/", $mail_subject_data, $mail_subject_out, PREG_PATTERN_ORDER );
		if( isset( $mail_subject_out[1] ) and !empty( $mail_subject_out[1] ) ){
			foreach( $mail_subject_out[1] as $key ){
				$mail_subject_data = str_replace( "[".$key."]", $posted_data[$key], $mail_subject_data );
			}
			$subject = trim( $mail_subject_data );
		}else{
			$subject = isset( $mail_subject_data ) ? trim( $mail_subject_data ) : '';
		}
	}else{
		$subject = isset( $posted_data['your-subject'] ) ? trim( $posted_data['your-subject'] ) : '';
	}
	/* end check for mail subject */
	/* check for mail sender */
	if( isset( $contactform->mail['sender'] ) and !empty( $contactform->mail['sender'] ) )
		$mail_sender_data = $contactform->mail['sender'];
	else
		$mail_sender_data = null;

	if( ( $mail_sender_data != null ) and ( strlen( trim( $mail_sender_data ) ) > 0 ) ){
		preg_match_all( "/\[(\S*?)]/", $mail_sender_data, $mail_sender_out, PREG_PATTERN_ORDER );
		if( isset( $mail_sender_out[1] ) and !empty( $mail_sender_out[1] ) ){
			foreach( $mail_sender_out[1] as $key ){
				$mail_sender_data = ( $key == 'your-email' ) ? str_replace( "[your-email]", '', $mail_sender_data ) : str_replace( "[".$key."]", $posted_data[$key], $mail_sender_data );
			}
			$name = trim( $mail_sender_data );
		}else{
			$name = isset( $mail_sender_data ) ? trim( $mail_sender_data ) : '';
		}
	}else{
		$name = isset( $posted_data['your-name'] ) ? trim( $posted_data['your-name'] ) : '';
	}
	/* end check for mail sender */

http://wordpress.org/plugins/contact-form-7/


Viewing all articles
Browse latest Browse all 49500

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>