diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/dnxcf_helper.php | 205 | ||||
| -rw-r--r-- | include/dnxcf_mail_template_danixland.php | 35 | ||||
| -rw-r--r-- | include/dnxcf_options-display.php | 207 | ||||
| -rw-r--r-- | include/dnxcf_options-register.php | 134 | ||||
| -rw-r--r-- | include/dnxcf_settings.php | 38 | ||||
| -rw-r--r-- | include/index.php | 2 |
6 files changed, 327 insertions, 294 deletions
diff --git a/include/dnxcf_helper.php b/include/dnxcf_helper.php index ce1f230..d6b4aa0 100644 --- a/include/dnxcf_helper.php +++ b/include/dnxcf_helper.php @@ -2,155 +2,156 @@ defined( 'ABSPATH' ) or die( 'No script kiddies please!' ); // generate a unique code, allows for lenght parameter -if ( ! function_exists('dnxcf_get_unique_code') ) { +if ( ! function_exists( 'dnxcf_get_unique_code' ) ) { - function dnxcf_get_unique_code( $length = "" ) { - $code = md5( uniqid( rand(), true ) ); - - if ($length != "") { - return substr($code, 0, $length); - } else { - return $code; - } - } + function dnxcf_get_unique_code( $length = '' ) { + $code = md5( uniqid( rand(), true ) ); + if ( $length != '' ) { + return substr( $code, 0, $length ); + } else { + return $code; + } + } } // add button in edit pages to help include our form function dnxcf_show_form_button() { - $currentScreen = get_current_screen(); - if ( $currentScreen->parent_base == "edit" ) { - echo '<button type="button" id="dnxcf-contact-form" class="button" onclick="dnxcf_send_code()"><span class="dashicons dashicons-testimonial"></span> ' . __('Add Contact Form', 'dnxcf' ) . '</button>'; - } + $currentScreen = get_current_screen(); + if ( $currentScreen->parent_base == 'edit' ) { + echo '<button type="button" id="dnxcf-contact-form" class="button" onclick="dnxcf_send_code()"><span class="dashicons dashicons-testimonial"></span> ' . __( 'Add Contact Form', 'dnxcf' ) . '</button>'; + } } add_action( 'media_buttons', 'dnxcf_show_form_button', 11 ); // the actual function that outputs our shortcode once the button is pressed function dnxcf_insert_shortcode() { - $currentScreen = get_current_screen(); - if ( $currentScreen->parent_base != "edit" ) { - return; - } ?> + $currentScreen = get_current_screen(); + if ( $currentScreen->parent_base != 'edit' ) { + return; + } ?> <script> - function dnxcf_send_code() { - //Send the shortcode to the editor - window.send_to_editor("[dnx_contactform]"); - } + function dnxcf_send_code() { + //Send the shortcode to the editor + window.send_to_editor("[dnx_contactform]"); + } </script> -<?php + <?php } add_action( 'admin_footer', 'dnxcf_insert_shortcode' ); // set default options for the plugin function dnxcf_set_options() { - $defaults = array( - 'dnxcf_pid_key' => dnxcf_get_unique_code(12), - 'dnxcf_recv_name' => 'admin', - 'dnxcf_recv_email' => get_bloginfo('admin_email'), - 'dnxcf_from_email' => 'info@some.url', - 'dnxcf_from_name' => 'webmaster', - 'dnxcf_subject' => array( - __('I want to make a comment.', 'dnxcf'), - __('I want to ask a question.', 'dnxcf'), - __('I am interested in a product.', 'dnxcf'), - __('I have to report a problem.', 'dnxcf'), - __('Other (explain below)', 'dnxcf') - ), - // 1 = text/plain - // 2 = text/html - 'dnxcf_content_type' => '1', - 'dnxcf_privacy' => '', - 'dnxcf_latitude' => '38.2704', - 'dnxcf_longitude' => '16.2971', - 'dnxcf_apikey' => '', - 'dnxcf_gmap_message' => '', - 'dnxcf_DB_VERSION' => '2' - ); - return $defaults; + $defaults = array( + 'dnxcf_pid_key' => dnxcf_get_unique_code( 12 ), + 'dnxcf_recv_name' => 'admin', + 'dnxcf_recv_email' => get_bloginfo( 'admin_email' ), + 'dnxcf_from_email' => 'info@some.url', + 'dnxcf_from_name' => 'webmaster', + 'dnxcf_subject' => array( + __( 'I want to make a comment.', 'dnxcf' ), + __( 'I want to ask a question.', 'dnxcf' ), + __( 'I am interested in a product.', 'dnxcf' ), + __( 'I have to report a problem.', 'dnxcf' ), + __( 'Other (explain below)', 'dnxcf' ), + ), + // 1 = text/plain + // 2 = text/html + 'dnxcf_content_type' => '1', + 'dnxcf_privacy' => '', + 'dnxcf_latitude' => '38.2704', + 'dnxcf_longitude' => '16.2971', + 'dnxcf_apikey' => '', + 'dnxcf_gmap_message' => '', + 'dnxcf_DB_VERSION' => '2', + ); + return $defaults; } // helper function that starts up the DB function dnxcf_db_init() { - global $dnxcf_options; - $dnxcf_options = get_option('dnxcf_options'); - if( false === $dnxcf_options ) { - $dnxcf_options = dnxcf_set_options(); - } - update_option('dnxcf_options', $dnxcf_options); + global $dnxcf_options; + $dnxcf_options = get_option( 'dnxcf_options' ); + if ( false === $dnxcf_options ) { + $dnxcf_options = dnxcf_set_options(); + } + update_option( 'dnxcf_options', $dnxcf_options ); } // helper function that performs a DB version update when needed -function dnxcf_db_update($db_version) { - global $dnxcf_options; - $db_defaults = dnxcf_set_options(); - $merge = wp_parse_args( $dnxcf_options, $db_defaults ); - // update DB version - $merge['dnxcf_DB_VERSION'] = $db_version; - update_option('dnxcf_options', $merge); +function dnxcf_db_update( $db_version ) { + global $dnxcf_options; + $db_defaults = dnxcf_set_options(); + $merge = wp_parse_args( $dnxcf_options, $db_defaults ); + // update DB version + $merge['dnxcf_DB_VERSION'] = $db_version; + update_option( 'dnxcf_options', $merge ); } // helper function that performs a DB check and then an init/update action function dnxcf_db_check() { - global $dnxcf_options; - if(false === $dnxcf_options) { - dnxcf_db_init(); - } - $old_db_version = $dnxcf_options['dnxcf_DB_VERSION']; - $new_db_version = DNXCF_CURRENT_DB_VERSION; - if(empty($old_db_version)) { - dnxcf_db_init(); - } - if( intval($old_db_version) < intval($new_db_version) ) { - dnxcf_db_update( $new_db_version ); - } + global $dnxcf_options; + if ( false === $dnxcf_options ) { + dnxcf_db_init(); + } + $old_db_version = $dnxcf_options['dnxcf_DB_VERSION']; + $new_db_version = DNXCF_CURRENT_DB_VERSION; + if ( empty( $old_db_version ) ) { + dnxcf_db_init(); + } + if ( intval( $old_db_version ) < intval( $new_db_version ) ) { + dnxcf_db_update( $new_db_version ); + } } // helper function that sets the current DB Version for comparison function dnxcf_set_db_version() { - // Define plugin database version. This should only change when new settings are added. - if ( ! defined( 'DNXCF_CURRENT_DB_VERSION' ) ) { - define( 'DNXCF_CURRENT_DB_VERSION', 4 ); - } + // Define plugin database version. This should only change when new settings are added. + if ( ! defined( 'DNXCF_CURRENT_DB_VERSION' ) ) { + define( 'DNXCF_CURRENT_DB_VERSION', 4 ); + } } // set the "from" email name to a custom option specified by the user function dnxcf_update_from_name() { - global $dnxcf_options; - $dnxcf_options = get_option('dnxcf_options'); - $dnxcf_defaults = dnxcf_set_options(); - $from_name = $dnxcf_options['dnxcf_from_name']; - $orig_name = 'WordPress'; - - $name = ( $orig_name != $from_name ) ? $from_name : false; - return $name; + global $dnxcf_options; + $dnxcf_options = get_option( 'dnxcf_options' ); + $dnxcf_defaults = dnxcf_set_options(); + $from_name = $dnxcf_options['dnxcf_from_name']; + $orig_name = 'WordPress'; + + $name = ( $orig_name != $from_name ) ? $from_name : false; + return $name; +} +if ( dnxcf_update_from_name() ) { + add_filter( 'wp_mail_from_name', 'dnxcf_update_from_name' ); } -if (dnxcf_update_from_name()) - add_filter( 'wp_mail_from_name', 'dnxcf_update_from_name' ); // set the "from" email address to a custom option specified by the user function dnxcf_update_from_email() { - global $dnxcf_options; - $dnxcf_options = get_option('dnxcf_options'); - $dnxcf_defaults = dnxcf_set_options(); - $from_mail = $dnxcf_options['dnxcf_from_email']; - $orig_mail = $dnxcf_defaults['dnxcf_from_email']; - - $mail = ( $orig_mail != $from_mail ) ? $from_mail : false; - return $mail; + global $dnxcf_options; + $dnxcf_options = get_option( 'dnxcf_options' ); + $dnxcf_defaults = dnxcf_set_options(); + $from_mail = $dnxcf_options['dnxcf_from_email']; + $orig_mail = $dnxcf_defaults['dnxcf_from_email']; + + $mail = ( $orig_mail != $from_mail ) ? $from_mail : false; + return $mail; +} +if ( dnxcf_update_from_email() ) { + add_filter( 'wp_mail_from', 'dnxcf_update_from_email' ); } -if (dnxcf_update_from_email()) - add_filter( 'wp_mail_from', 'dnxcf_update_from_email' ); function dnxcf_update_content_type() { - global $dnxcf_options; - $dnxcf_options = get_option('dnxcf_options'); + global $dnxcf_options; + $dnxcf_options = get_option( 'dnxcf_options' ); - // 1 = text/plain - // 2 = text/html - $content_type = ( "1" == $dnxcf_options['dnxcf_content_type'] ) ? 'text/plain' : 'text/html'; + // 1 = text/plain + // 2 = text/html + $content_type = ( '1' == $dnxcf_options['dnxcf_content_type'] ) ? 'text/plain' : 'text/html'; - return $content_type; + return $content_type; } add_filter( 'wp_mail_content_type', 'dnxcf_update_content_type' ); diff --git a/include/dnxcf_mail_template_danixland.php b/include/dnxcf_mail_template_danixland.php index 69766ac..1c7d5b7 100644 --- a/include/dnxcf_mail_template_danixland.php +++ b/include/dnxcf_mail_template_danixland.php @@ -1,4 +1,4 @@ -<?php +<?php defined( 'ABSPATH' ) or die( 'No script kiddies please!' ); /** * danixland-contact-form standard Template @@ -23,20 +23,20 @@ the 2 arrays example structure is the following: // this is data gathered via various php variables and WordPress functions $data = array( - 'ownname' = '', // name of the person receiving the message aka US! - 'site' = get_bloginfo('name'), // the site name - 'time' = '', // string generated by current_time() - 'host' = '', // string generated by getenv("REMOTE_ADDR") - 'ua' = '' // string corresponding to $_SERVER['HTTP_USER_AGENT'] + 'ownname' = '', // name of the person receiving the message aka US! + 'site' = get_bloginfo('name'), // the site name + 'time' = '', // string generated by current_time() + 'host' = '', // string generated by getenv("REMOTE_ADDR") + 'ua' = '' // string corresponding to $_SERVER['HTTP_USER_AGENT'] ); // this is data sent via $_POST by the form itself $posted = array( - 'dnxcf_name' = '', // the name of the user sending the message - 'dnxcf_email' = '', // the user's email - 'dnxcf_website' = '', // the user's website - 'dnxcf_subject' = '', // the subject of the message - 'dnxcf_message' = '' // the message body + 'dnxcf_name' = '', // the name of the user sending the message + 'dnxcf_email' = '', // the user's email + 'dnxcf_website' = '', // the user's website + 'dnxcf_subject' = '', // the subject of the message + 'dnxcf_message' = '' // the message body ); */ @@ -45,12 +45,12 @@ $posted = array( // always the same name or the main plugin won't be able to send emails // NOTE TO SELF: "I need to fix this ASAP" function dnxcf_email_content( $data = array(), $posted = array() ) { - extract($data); - extract($posted); + extract( $data ); + extract( $posted ); - $ownurl = get_bloginfo('url'); -// heredoc to return the email content - $output = <<<DNX44665312EOT + $ownurl = get_bloginfo( 'url' ); + // heredoc to return the email content + $output = <<<DNX44665312EOT <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> @@ -882,9 +882,8 @@ function dnxcf_email_content( $data = array(), $posted = array() ) { DNX44665312EOT; - return $output; + return $output; } -?> diff --git a/include/dnxcf_options-display.php b/include/dnxcf_options-display.php index 28618e5..4eb93de 100644 --- a/include/dnxcf_options-display.php +++ b/include/dnxcf_options-display.php @@ -1,145 +1,178 @@ <?php defined( 'ABSPATH' ) or die( 'No script kiddies please!' ); // usage: $id, $title, $callback, $page -add_settings_section('dnxcf_mailfrom_options', __('Sender email address', 'dnxcf'), 'dnxcf_settings_mailfrom_section_text', 'dnxcf_options_sections'); -add_settings_section('dnxcf_email_address', __('Recipient email address', 'dnxcf'), 'dnxcf_settings_email_address_section_text', 'dnxcf_options_sections'); -add_settings_section('dnxcf_content_type', __('Content type', 'dnxcf'), 'dnxcf_settings_content_type_section_text', 'dnxcf_options_sections'); -add_settings_section('dnxcf_subject_options', __('Subject', 'dnxcf'), 'dnxcf_settings_subject_section_text', 'dnxcf_options_sections'); -add_settings_section('dnxcf_privacy_policy', __('Privacy policy', 'dnxcf'), 'dnxcf_settings_privacy_section_text', 'dnxcf_options_sections'); -add_settings_section('dnxcf_googlemap', __('Google Map', 'dnxcf'), 'dnxcf_settings_googlemap_section_text', 'dnxcf_options_sections'); - - -// usage: $id, $title, $callback, $page, $section, $args -add_settings_field('dnxcf_setting_content_type_display', __('content type?', 'dnxcf'), 'dnxcf_setting_content_type_display', 'dnxcf_options_sections', 'dnxcf_content_type'); -add_settings_field('dnxcf_setting_email_name_display', __('name?', 'dnxcf'), 'dnxcf_setting_email_name_display', 'dnxcf_options_sections', 'dnxcf_email_address'); -add_settings_field('dnxcf_setting_email_address_display', __('email address?', 'dnxcf'), 'dnxcf_setting_email_address_display', 'dnxcf_options_sections', 'dnxcf_email_address'); -add_settings_field('dnxcf_setting_subject_display', __('subject options?', 'dnxcf'), 'dnxcf_setting_subject_display', 'dnxcf_options_sections', 'dnxcf_subject_options'); -add_settings_field('dnxcf_setting_mailfrom_name_display', __('name?', 'dnxcf'), 'dnxcf_setting_mailfrom_name_display', 'dnxcf_options_sections', 'dnxcf_mailfrom_options'); -add_settings_field('dnxcf_setting_mailfrom_mail_display', __('email address?', 'dnxcf'), 'dnxcf_setting_mailfrom_mail_display', 'dnxcf_options_sections', 'dnxcf_mailfrom_options'); -add_settings_field('dnxcf_setting_privacy_display', __('policy text?', 'dnxcf'), 'dnxcf_setting_privacy_display', 'dnxcf_options_sections', 'dnxcf_privacy_policy'); -add_settings_field('dnxcf_setting_googlemap_apikey', __('GMaps API Key?', 'dnxcf'), 'dnxcf_setting_googlemap_apikey_display', 'dnxcf_options_sections', 'dnxcf_googlemap'); -add_settings_field('dnxcf_setting_googlemap_latitude', __('Latitude?', 'dnxcf'), 'dnxcf_setting_googlemap_lat_display', 'dnxcf_options_sections', 'dnxcf_googlemap'); -add_settings_field('dnxcf_setting_googlemap_longitude', __('Longitude?', 'dnxcf'), 'dnxcf_setting_googlemap_long_display', 'dnxcf_options_sections', 'dnxcf_googlemap'); -add_settings_field('dnxcf_setting_googlemap_message', __('Address?', 'dnxcf'), 'dnxcf_setting_googlemap_message_display', 'dnxcf_options_sections', 'dnxcf_googlemap'); +add_settings_section( 'dnxcf_mailfrom_options', __( 'Sender email address', 'dnxcf' ), 'dnxcf_settings_mailfrom_section_text', 'dnxcf_options_sections' ); +add_settings_section( 'dnxcf_email_address', __( 'Recipient email address', 'dnxcf' ), 'dnxcf_settings_email_address_section_text', 'dnxcf_options_sections' ); +add_settings_section( 'dnxcf_content_type', __( 'Content type', 'dnxcf' ), 'dnxcf_settings_content_type_section_text', 'dnxcf_options_sections' ); +add_settings_section( 'dnxcf_subject_options', __( 'Subject', 'dnxcf' ), 'dnxcf_settings_subject_section_text', 'dnxcf_options_sections' ); +add_settings_section( 'dnxcf_privacy_policy', __( 'Privacy policy', 'dnxcf' ), 'dnxcf_settings_privacy_section_text', 'dnxcf_options_sections' ); +add_settings_section( 'dnxcf_googlemap', __( 'Google Map', 'dnxcf' ), 'dnxcf_settings_googlemap_section_text', 'dnxcf_options_sections' ); + + +// usage: $id, $title, $callback, $page, $section, $args +add_settings_field( 'dnxcf_setting_content_type_display', __( 'content type?', 'dnxcf' ), 'dnxcf_setting_content_type_display', 'dnxcf_options_sections', 'dnxcf_content_type' ); +add_settings_field( 'dnxcf_setting_email_name_display', __( 'name?', 'dnxcf' ), 'dnxcf_setting_email_name_display', 'dnxcf_options_sections', 'dnxcf_email_address' ); +add_settings_field( 'dnxcf_setting_email_address_display', __( 'email address?', 'dnxcf' ), 'dnxcf_setting_email_address_display', 'dnxcf_options_sections', 'dnxcf_email_address' ); +add_settings_field( 'dnxcf_setting_subject_display', __( 'subject options?', 'dnxcf' ), 'dnxcf_setting_subject_display', 'dnxcf_options_sections', 'dnxcf_subject_options' ); +add_settings_field( 'dnxcf_setting_mailfrom_name_display', __( 'name?', 'dnxcf' ), 'dnxcf_setting_mailfrom_name_display', 'dnxcf_options_sections', 'dnxcf_mailfrom_options' ); +add_settings_field( 'dnxcf_setting_mailfrom_mail_display', __( 'email address?', 'dnxcf' ), 'dnxcf_setting_mailfrom_mail_display', 'dnxcf_options_sections', 'dnxcf_mailfrom_options' ); +add_settings_field( 'dnxcf_setting_privacy_display', __( 'policy text?', 'dnxcf' ), 'dnxcf_setting_privacy_display', 'dnxcf_options_sections', 'dnxcf_privacy_policy' ); +add_settings_field( 'dnxcf_setting_googlemap_apikey', __( 'GMaps API Key?', 'dnxcf' ), 'dnxcf_setting_googlemap_apikey_display', 'dnxcf_options_sections', 'dnxcf_googlemap' ); +add_settings_field( 'dnxcf_setting_googlemap_latitude', __( 'Latitude?', 'dnxcf' ), 'dnxcf_setting_googlemap_lat_display', 'dnxcf_options_sections', 'dnxcf_googlemap' ); +add_settings_field( 'dnxcf_setting_googlemap_longitude', __( 'Longitude?', 'dnxcf' ), 'dnxcf_setting_googlemap_long_display', 'dnxcf_options_sections', 'dnxcf_googlemap' ); +add_settings_field( 'dnxcf_setting_googlemap_message', __( 'Address?', 'dnxcf' ), 'dnxcf_setting_googlemap_message_display', 'dnxcf_options_sections', 'dnxcf_googlemap' ); function dnxcf_settings_content_type_section_text() { ?> <p><?php _e( 'Here you can change the content type of your emails, either html or plain text.', 'dnxcf' ); ?></p> -<?php } + <?php +} -function dnxcf_settings_email_address_section_text() { ?> +function dnxcf_settings_email_address_section_text() { + ?> <p><?php _e( 'This is the email address where you will receive all email from the contact form.', 'dnxcf' ); ?></p> -<?php } + <?php +} -function dnxcf_settings_subject_section_text() { ?> +function dnxcf_settings_subject_section_text() { + ?> <p><?php _e( 'These are the options that you are giving as a dropdown list to your users.', 'dnxcf' ); ?></p> -<?php } + <?php +} -function dnxcf_settings_mailfrom_section_text() { ?> +function dnxcf_settings_mailfrom_section_text() { + ?> <p> -<?php _e( 'Here you can set the sender email address for the contact form.', 'dnxcf' ); ?><br /> -<?php - global $dnxcf_options; - $dnxcf_options = get_option( 'dnxcf_options' ); - echo sprintf( - __( 'The emails you will receive will be from: <code>%s < %s ></code>', 'dnxcf' ), - $dnxcf_options['dnxcf_from_name'], - $dnxcf_options['dnxcf_from_email'] - ); -?><br /> -<?php _e( 'so just make sure you whitelist this address in your mail client to avoid losing important messages.', 'dnxcf' ); ?> + <?php _e( 'Here you can set the sender email address for the contact form.', 'dnxcf' ); ?><br /> + <?php + global $dnxcf_options; + $dnxcf_options = get_option( 'dnxcf_options' ); + echo sprintf( + __( 'The emails you will receive will be from: <code>%1$s < %2$s ></code>', 'dnxcf' ), + $dnxcf_options['dnxcf_from_name'], + $dnxcf_options['dnxcf_from_email'] + ); + ?> +<br /> + <?php _e( 'so just make sure you whitelist this address in your mail client to avoid losing important messages.', 'dnxcf' ); ?> </p> -<?php } + <?php +} -function dnxcf_settings_privacy_section_text() { ?> +function dnxcf_settings_privacy_section_text() { + ?> <p><?php _e( 'Enter here the content of your privacy policy relative to the contact form.', 'dnxcf' ); ?></p> -<?php } + <?php +} -function dnxcf_settings_googlemap_section_text() { ?> +function dnxcf_settings_googlemap_section_text() { + ?> <p><?php _e( 'Here you can change various settings for the map that will be displayed on the form page. <strong>Note:</strong> if the API Key value is missing the map will be disabled.', 'dnxcf' ); ?></p> -<?php } + <?php +} // Content type for email sent via this form function dnxcf_setting_content_type_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); -// 1 = text/plain -// 2 = text/html -?> -<input type="radio" name="dnxcf_options[dnxcf_content_type]" <?php checked( $dnxcf_options['dnxcf_content_type'], '1' ); ?> value='1' /> <?php _e('text/plain', 'dnxcf'); ?><br /> -<input type="radio" name="dnxcf_options[dnxcf_content_type]" <?php checked( $dnxcf_options['dnxcf_content_type'], '2' ); ?> value='2' /> <?php _e('text/html', 'dnxcf'); ?><br /> -<span class="description"><?php _e('Send plain (text) or rich (html) messages.', 'dnxcf'); ?></span> -<?php } + $dnxcf_options = get_option( 'dnxcf_options' ); + // 1 = text/plain + // 2 = text/html + ?> +<input type="radio" name="dnxcf_options[dnxcf_content_type]" <?php checked( $dnxcf_options['dnxcf_content_type'], '1' ); ?> value='1' /> <?php _e( 'text/plain', 'dnxcf' ); ?><br /> +<input type="radio" name="dnxcf_options[dnxcf_content_type]" <?php checked( $dnxcf_options['dnxcf_content_type'], '2' ); ?> value='2' /> <?php _e( 'text/html', 'dnxcf' ); ?><br /> +<span class="description"><?php _e( 'Send plain (text) or rich (html) messages.', 'dnxcf' ); ?></span> + <?php +} // Receiving email name function dnxcf_setting_email_name_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); ?> + $dnxcf_options = get_option( 'dnxcf_options' ); + ?> <input type="text" name="dnxcf_options[dnxcf_recv_name]" value="<?php echo $dnxcf_options['dnxcf_recv_name']; ?>" /><br /> -<span class="description"><?php _e('This is how you will be called in every email you will receive from this contact form.', 'dnxcf'); ?></span> -<?php } +<span class="description"><?php _e( 'This is how you will be called in every email you will receive from this contact form.', 'dnxcf' ); ?></span> + <?php +} // Receiving email address function dnxcf_setting_email_address_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); ?> + $dnxcf_options = get_option( 'dnxcf_options' ); + ?> <input type="email" name="dnxcf_options[dnxcf_recv_email]" value="<?php echo $dnxcf_options['dnxcf_recv_email']; ?>" /><br /> -<span class="description"><?php _e('If you leave this field empty the admin email address will be used.', 'dnxcf'); ?></span> -<?php } +<span class="description"><?php _e( 'If you leave this field empty the admin email address will be used.', 'dnxcf' ); ?></span> + <?php +} // Custom subject options function dnxcf_setting_subject_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); ?> -<textarea name="dnxcf_options[dnxcf_subject]" rows="10" cols="80" /><?php echo implode("\n", $dnxcf_options['dnxcf_subject']); ?></textarea><br /> -<span class="description"><?php _e('Insert one option per line. If you leave this area empty the default options will be used.', 'dnxcf'); ?></span> -<?php } + $dnxcf_options = get_option( 'dnxcf_options' ); + ?> +<textarea name="dnxcf_options[dnxcf_subject]" rows="10" cols="80" /><?php echo implode( "\n", $dnxcf_options['dnxcf_subject'] ); ?></textarea><br /> +<span class="description"><?php _e( 'Insert one option per line. If you leave this area empty the default options will be used.', 'dnxcf' ); ?></span> + <?php +} // Sender email address function dnxcf_setting_mailfrom_mail_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); ?> + $dnxcf_options = get_option( 'dnxcf_options' ); + ?> <input type="email" name="dnxcf_options[dnxcf_from_email]" value="<?php echo $dnxcf_options['dnxcf_from_email']; ?>" /><br /> -<span class="description"><?php _e('This is the email address from which you will receive communications.', 'dnxcf'); ?></span> -<?php } +<span class="description"><?php _e( 'This is the email address from which you will receive communications.', 'dnxcf' ); ?></span> + <?php +} // Sender name function dnxcf_setting_mailfrom_name_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); ?> + $dnxcf_options = get_option( 'dnxcf_options' ); + ?> <input type="text" name="dnxcf_options[dnxcf_from_name]" value="<?php echo $dnxcf_options['dnxcf_from_name']; ?>" /><br /> -<span class="description"><?php _e('This is the name associated to the above email address.', 'dnxcf'); ?></span> -<?php } +<span class="description"><?php _e( 'This is the name associated to the above email address.', 'dnxcf' ); ?></span> + <?php +} // Privacy Policy function dnxcf_setting_privacy_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); ?> -<textarea name="dnxcf_options[dnxcf_privacy]" rows="10" cols="80" /><?php echo wptexturize($dnxcf_options['dnxcf_privacy']); ?></textarea><br /> -<span class="description"><?php _e('The text of the privacy policy, Leave empty to disable the policy area in the form.', 'dnxcf'); ?></span> -<?php } + $dnxcf_options = get_option( 'dnxcf_options' ); + ?> +<textarea name="dnxcf_options[dnxcf_privacy]" rows="10" cols="80" /><?php echo wptexturize( $dnxcf_options['dnxcf_privacy'] ); ?></textarea><br /> +<span class="description"><?php _e( 'The text of the privacy policy, Leave empty to disable the policy area in the form.', 'dnxcf' ); ?></span> + <?php +} // api key function dnxcf_setting_googlemap_apikey_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); -$dev_links = 'https://developers.google.com/maps/documentation/javascript/get-api-key'; ?> + $dnxcf_options = get_option( 'dnxcf_options' ); + $dev_links = 'https://developers.google.com/maps/documentation/javascript/get-api-key'; + ?> <input type="text" name="dnxcf_options[dnxcf_apikey]" value="<?php echo $dnxcf_options['dnxcf_apikey']; ?>" /><br /> -<span class="description"><?php _e('You need an API Key from the developers console in order to use Google Maps', 'dnxcf'); ?></span><br /> -<span class="description"><?php echo sprintf(__('check the <a href="%s">documentation</a> on the google developers platform.', 'dnxcf'), $dev_links ); ?></span><br /> -<span class="description"><?php _e('Leave empty to disable the display of a Google Map on the form.', 'dnxcf'); ?></span> -<?php } +<span class="description"><?php _e( 'You need an API Key from the developers console in order to use Google Maps', 'dnxcf' ); ?></span><br /> +<span class="description"><?php echo sprintf( __( 'check the <a href="%s">documentation</a> on the google developers platform.', 'dnxcf' ), $dev_links ); ?></span><br /> +<span class="description"><?php _e( 'Leave empty to disable the display of a Google Map on the form.', 'dnxcf' ); ?></span> + <?php +} // map message function dnxcf_setting_googlemap_message_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); ?> + $dnxcf_options = get_option( 'dnxcf_options' ); + ?> <input type="text" name="dnxcf_options[dnxcf_gmap_message]" value="<?php echo $dnxcf_options['dnxcf_gmap_message']; ?>" /><br /> -<span class="description"><?php _e('Address to be displayed as a popup inside the map. Leave empty to disable.', 'dnxcf'); ?></span> -<?php } +<span class="description"><?php _e( 'Address to be displayed as a popup inside the map. Leave empty to disable.', 'dnxcf' ); ?></span> + <?php +} // Longitude function dnxcf_setting_googlemap_long_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); ?> + $dnxcf_options = get_option( 'dnxcf_options' ); + ?> <input type="number" name="dnxcf_options[dnxcf_longitude]" value="<?php echo $dnxcf_options['dnxcf_longitude']; ?>" step="0.000001" /><br /> -<span class="description"><?php _e('Longitude value, eg. 16.290340', 'dnxcf'); ?></span><br /> -<span class="description"><?php _e('+/- 180 degrees value accepted', 'dnxcf'); ?></span> -<?php } +<span class="description"><?php _e( 'Longitude value, eg. 16.290340', 'dnxcf' ); ?></span><br /> +<span class="description"><?php _e( '+/- 180 degrees value accepted', 'dnxcf' ); ?></span> + <?php +} // Latitude function dnxcf_setting_googlemap_lat_display() { -$dnxcf_options = get_option( 'dnxcf_options' ); ?> + $dnxcf_options = get_option( 'dnxcf_options' ); + ?> <input type="number" name="dnxcf_options[dnxcf_latitude]" value="<?php echo $dnxcf_options['dnxcf_latitude']; ?>" step="0.000001" /><br /> -<span class="description"><?php _e('Latitude value, eg. 38.269625.', 'dnxcf'); ?></span><br /> -<span class="description"><?php _e('+/- 90 degrees value accepted', 'dnxcf'); ?></span> -<?php } +<span class="description"><?php _e( 'Latitude value, eg. 38.269625.', 'dnxcf' ); ?></span><br /> +<span class="description"><?php _e( '+/- 90 degrees value accepted', 'dnxcf' ); ?></span> + <?php +} diff --git a/include/dnxcf_options-register.php b/include/dnxcf_options-register.php index 6445209..e540806 100644 --- a/include/dnxcf_options-register.php +++ b/include/dnxcf_options-register.php @@ -13,75 +13,75 @@ register_setting( 'dnxcf_options', 'dnxcf_options', 'dnxcf_setup_validate' ); // our validation function function dnxcf_setup_validate( $input ) { - $dnxcf_options = get_option('dnxcf_options'); - $valid_input = $dnxcf_options; + $dnxcf_options = get_option( 'dnxcf_options' ); + $valid_input = $dnxcf_options; - $submit = ( ! empty( $input['submit'] ) ? true : false ); - $reset = ( ! empty( $input['reset'] ) ? true : false ); + $submit = ( ! empty( $input['submit'] ) ? true : false ); + $reset = ( ! empty( $input['reset'] ) ? true : false ); - if($submit) { - $default_options = dnxcf_set_options(); - // content type - $valid_input['dnxcf_content_type'] = ( '1' == $input['dnxcf_content_type'] ? $default_options['dnxcf_content_type'] : "2" ); - // email address - $valid_input['dnxcf_recv_name'] = ( '' == $input['dnxcf_recv_name'] ? $default_options['dnxcf_recv_name'] : sanitize_text_field($input['dnxcf_recv_name']) ); - $valid_input['dnxcf_recv_email'] = ( '' == $input['dnxcf_recv_email'] ? $default_options['dnxcf_recv_email'] : sanitize_email($input['dnxcf_recv_email']) ); - // subject options - if ( '' == $input['dnxcf_subject'] ) { - $valid_input['dnxcf_subject'] = $default_options['dnxcf_subject']; - } else { - $valid_input['dnxcf_subject'] = rtrim(esc_textarea( $input['dnxcf_subject'] )); - $valid_input['dnxcf_subject'] = explode("\n", $valid_input['dnxcf_subject']); - } - // from email address and name - $valid_input['dnxcf_from_email'] = ( '' == $input['dnxcf_from_email'] ? $default_options['dnxcf_from_email'] : sanitize_email($input['dnxcf_from_email']) ); - $valid_input['dnxcf_from_name'] = ( '' == $input['dnxcf_from_name'] ? $default_options['dnxcf_from_name'] : sanitize_text_field($input['dnxcf_from_name']) ); - // privacy policy - $valid_html = array( - 'a' => array( - 'href' => array(), - 'title' => array() - ), - 'br' => array(), - 'em' => array(), - 'strong' => array(), - 'p' => array() - ); - $valid_input['dnxcf_privacy'] = ( '' == $input['dnxcf_privacy'] ? false : wp_kses($input['dnxcf_privacy'], $valid_html) ); - // latitude and longitude - $valid_input['dnxcf_gmap_message'] = ( '' == $input['dnxcf_gmap_message'] ? $default_options['dnxcf_gmap_message'] : sanitize_text_field($input['dnxcf_gmap_message']) ); - if ( '' != $input['dnxcf_latitude'] ) { - $valid_input['dnxcf_latitude'] = ( preg_match("/^[-]?[0-8]?[0-9]\.\d+|[-]?90\.0+?/A", $input['dnxcf_latitude']) ? $input['dnxcf_latitude'] : '' ); - } else { - $valid_input['dnxcf_latitude'] = ''; - } - $valid_input['dnxcf_apikey'] = ( '' == $input['dnxcf_apikey'] ? $default_options['dnxcf_apikey'] : sanitize_html_class($input['dnxcf_apikey']) ); + if ( $submit ) { + $default_options = dnxcf_set_options(); + // content type + $valid_input['dnxcf_content_type'] = ( '1' == $input['dnxcf_content_type'] ? $default_options['dnxcf_content_type'] : '2' ); + // email address + $valid_input['dnxcf_recv_name'] = ( '' == $input['dnxcf_recv_name'] ? $default_options['dnxcf_recv_name'] : sanitize_text_field( $input['dnxcf_recv_name'] ) ); + $valid_input['dnxcf_recv_email'] = ( '' == $input['dnxcf_recv_email'] ? $default_options['dnxcf_recv_email'] : sanitize_email( $input['dnxcf_recv_email'] ) ); + // subject options + if ( '' == $input['dnxcf_subject'] ) { + $valid_input['dnxcf_subject'] = $default_options['dnxcf_subject']; + } else { + $valid_input['dnxcf_subject'] = rtrim( esc_textarea( $input['dnxcf_subject'] ) ); + $valid_input['dnxcf_subject'] = explode( "\n", $valid_input['dnxcf_subject'] ); + } + // from email address and name + $valid_input['dnxcf_from_email'] = ( '' == $input['dnxcf_from_email'] ? $default_options['dnxcf_from_email'] : sanitize_email( $input['dnxcf_from_email'] ) ); + $valid_input['dnxcf_from_name'] = ( '' == $input['dnxcf_from_name'] ? $default_options['dnxcf_from_name'] : sanitize_text_field( $input['dnxcf_from_name'] ) ); + // privacy policy + $valid_html = array( + 'a' => array( + 'href' => array(), + 'title' => array(), + ), + 'br' => array(), + 'em' => array(), + 'strong' => array(), + 'p' => array(), + ); + $valid_input['dnxcf_privacy'] = ( '' == $input['dnxcf_privacy'] ? false : wp_kses( $input['dnxcf_privacy'], $valid_html ) ); + // latitude and longitude + $valid_input['dnxcf_gmap_message'] = ( '' == $input['dnxcf_gmap_message'] ? $default_options['dnxcf_gmap_message'] : sanitize_text_field( $input['dnxcf_gmap_message'] ) ); + if ( '' != $input['dnxcf_latitude'] ) { + $valid_input['dnxcf_latitude'] = ( preg_match( '/^[-]?[0-8]?[0-9]\.\d+|[-]?90\.0+?/A', $input['dnxcf_latitude'] ) ? $input['dnxcf_latitude'] : '' ); + } else { + $valid_input['dnxcf_latitude'] = ''; + } + $valid_input['dnxcf_apikey'] = ( '' == $input['dnxcf_apikey'] ? $default_options['dnxcf_apikey'] : sanitize_html_class( $input['dnxcf_apikey'] ) ); - if ( '' != $input['dnxcf_longitude'] ) { - $valid_input['dnxcf_longitude'] = ( preg_match("/[-]?1[0-7][0-9]\.\d+|[-]?[0-9]?[0-9]\.\d+|[-]?180\.0+?/A", $input['dnxcf_longitude']) ? $input['dnxcf_longitude'] : '' ); - } else { - $valid_input['dnxcf_longitude'] = ''; - } - } elseif ($reset) { - $default_options = dnxcf_set_options(); - // content type - $valid_input['dnxcf_content_type'] = $default_options['dnxcf_content_type']; - // email address - $valid_input['dnxcf_recv_name'] = $default_options['dnxcf_recv_name']; - $valid_input['dnxcf_recv_email'] = $default_options['dnxcf_recv_email']; - // subject options - $valid_input['dnxcf_subject'] = $default_options['dnxcf_subject']; - // from email address and name - $valid_input['dnxcf_from_email'] = $default_options['dnxcf_from_email']; - $valid_input['dnxcf_from_name'] = $default_options['dnxcf_from_name']; - // subject options - $valid_input['dnxcf_privacy'] = $default_options['dnxcf_privacy']; - // latitude and longitude - $valid_input['dnxcf_gmap_message'] = $default_options['dnxcf_gmap_message']; - $valid_input['dnxcf_apikey'] = $default_options['dnxcf_apikey']; - $valid_input['dnxcf_latitude'] = $default_options['dnxcf_latitude']; - $valid_input['dnxcf_longitude'] = $default_options['dnxcf_longitude']; - } - return $valid_input; + if ( '' != $input['dnxcf_longitude'] ) { + $valid_input['dnxcf_longitude'] = ( preg_match( '/[-]?1[0-7][0-9]\.\d+|[-]?[0-9]?[0-9]\.\d+|[-]?180\.0+?/A', $input['dnxcf_longitude'] ) ? $input['dnxcf_longitude'] : '' ); + } else { + $valid_input['dnxcf_longitude'] = ''; + } + } elseif ( $reset ) { + $default_options = dnxcf_set_options(); + // content type + $valid_input['dnxcf_content_type'] = $default_options['dnxcf_content_type']; + // email address + $valid_input['dnxcf_recv_name'] = $default_options['dnxcf_recv_name']; + $valid_input['dnxcf_recv_email'] = $default_options['dnxcf_recv_email']; + // subject options + $valid_input['dnxcf_subject'] = $default_options['dnxcf_subject']; + // from email address and name + $valid_input['dnxcf_from_email'] = $default_options['dnxcf_from_email']; + $valid_input['dnxcf_from_name'] = $default_options['dnxcf_from_name']; + // subject options + $valid_input['dnxcf_privacy'] = $default_options['dnxcf_privacy']; + // latitude and longitude + $valid_input['dnxcf_gmap_message'] = $default_options['dnxcf_gmap_message']; + $valid_input['dnxcf_apikey'] = $default_options['dnxcf_apikey']; + $valid_input['dnxcf_latitude'] = $default_options['dnxcf_latitude']; + $valid_input['dnxcf_longitude'] = $default_options['dnxcf_longitude']; + } + return $valid_input; } diff --git a/include/dnxcf_settings.php b/include/dnxcf_settings.php index b7c29e4..12eb5db 100644 --- a/include/dnxcf_settings.php +++ b/include/dnxcf_settings.php @@ -4,9 +4,9 @@ defined( 'ABSPATH' ) or die( 'No script kiddies please!' ); * Include settings options for our plugin * @since 0.2 */ -add_action('admin_menu', 'dnxcf_settings' ); +add_action( 'admin_menu', 'dnxcf_settings' ); function dnxcf_settings() { - add_menu_page('danixland Contact Form Settings', __('Contact Form', 'dnxcf'), 'manage_options', 'dnxcf_options', 'dnxcf_settings_display', 'dashicons-testimonial'); + add_menu_page( 'danixland Contact Form Settings', __( 'Contact Form', 'dnxcf' ), 'manage_options', 'dnxcf_options', 'dnxcf_settings_display', 'dashicons-testimonial' ); } /** @@ -14,21 +14,21 @@ function dnxcf_settings() { * @since 0.2 */ function dnxcf_settings_display() { -?> - <div class="wrap"> - <h2><?php _e('danixland Contact Form Set up', 'dnxcf') ?></h2> - <form method="post" action="options.php"> - <?php - settings_fields('dnxcf_options'); - do_settings_sections('dnxcf_options_sections'); - ?> - <p class="submit"> - <input name="dnxcf_options[submit]" type="submit" class="button-primary" value="<?php esc_attr_e('Save Changes', 'dnxcf') ?>" /> - <input name="dnxcf_options[reset]" type="submit" class="button-secondary" value="<?php esc_attr_e('Reset Defaults', 'dnxcf'); ?>" /> - </p> - </form> - </div> -<?php + ?> + <div class="wrap"> + <h2><?php _e( 'danixland Contact Form Set up', 'dnxcf' ); ?></h2> + <form method="post" action="options.php"> + <?php + settings_fields( 'dnxcf_options' ); + do_settings_sections( 'dnxcf_options_sections' ); + ?> + <p class="submit"> + <input name="dnxcf_options[submit]" type="submit" class="button-primary" value="<?php esc_attr_e( 'Save Changes', 'dnxcf' ); ?>" /> + <input name="dnxcf_options[reset]" type="submit" class="button-secondary" value="<?php esc_attr_e( 'Reset Defaults', 'dnxcf' ); ?>" /> + </p> + </form> + </div> + <?php } /** @@ -36,6 +36,6 @@ function dnxcf_settings_display() { * @since 0.2 */ function dnxcf_register_options() { - require( dirname( __FILE__ ) . '/dnxcf_options-register.php' ); + require( dirname( __FILE__ ) . '/dnxcf_options-register.php' ); } -add_action('admin_init', 'dnxcf_register_options'); +add_action( 'admin_init', 'dnxcf_register_options' ); diff --git a/include/index.php b/include/index.php index cb66473..a618147 100644 --- a/include/index.php +++ b/include/index.php @@ -1 +1 @@ -<?php exit('<h2>Directory Access Prohibited</h2>'); ?>
\ No newline at end of file +<?php exit( '<h2>Directory Access Prohibited</h2>' ); |
