From 2956df8f6bf787d9a653ca3734eb9caad825c5e8 Mon Sep 17 00:00:00 2001
From: david
Date: Fri, 24 Aug 2012 11:41:35 +0000
Subject: [PATCH] =?UTF-8?q?Tarea=20#1007=20->=20Hacer=20p=C3=A1gina=20de?=
=?UTF-8?q?=20"contact=20us"=20con=20formulario?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
git-svn-id: https://192.168.0.254/svn/Proyectos.ASong2U_Web/trunk@120 cd1a4ea2-8c7f-e448-aada-19d1fee9e1d6
---
.../contact-form-7/admin/admin-functions.php | 52 +
.../plugins/contact-form-7/admin/admin.php | 487 ++++++++
.../contact-form-7/admin/css/styles-rtl.css | 21 +
.../contact-form-7/admin/css/styles.css | 260 ++++
.../admin/edit-contact-form.php | 118 ++
.../contact-form-7/admin/images/dropdown.gif | Bin 0 -> 67 bytes
.../contact-form-7/admin/images/menu-icon.png | Bin 0 -> 606 bytes
.../admin/images/screen-icon.png | Bin 0 -> 1416 bytes
.../class-contact-forms-list-table.php | 169 +++
.../admin/includes/meta-boxes.php | 109 ++
.../contact-form-7/admin/js/scripts.js | 75 ++
.../contact-form-7/admin/js/taggenerator.js | 262 ++++
.../contact-form-7/images/ajax-loader.gif | Bin 0 -> 847 bytes
.../contact-form-7/includes/capabilities.php | 20 +
.../contact-form-7/includes/classes.php | 812 ++++++++++++
.../contact-form-7/includes/controller.php | 288 +++++
.../includes/css/styles-rtl.css | 12 +
.../contact-form-7/includes/css/styles.css | 65 +
.../contact-form-7/includes/deprecated.php | 26 +
.../contact-form-7/includes/formatting.php | 121 ++
.../contact-form-7/includes/functions.php | 293 +++++
.../includes/js/jquery.form.dev.js | 1089 +++++++++++++++++
.../contact-form-7/includes/js/jquery.form.js | 12 +
.../contact-form-7/includes/js/scripts.js | 227 ++++
.../plugins/contact-form-7/includes/pipe.php | 67 +
.../contact-form-7/includes/shortcodes.php | 195 +++
.../contact-form-7/languages/readme.txt | 9 +
.../contact-form-7/languages/wpcf7-af.mo | Bin 0 -> 14283 bytes
.../contact-form-7/languages/wpcf7-ar.mo | Bin 0 -> 17242 bytes
.../contact-form-7/languages/wpcf7-az_AZ.mo | Bin 0 -> 14824 bytes
.../contact-form-7/languages/wpcf7-be_BY.mo | Bin 0 -> 18379 bytes
.../contact-form-7/languages/wpcf7-bg_BG.mo | Bin 0 -> 5969 bytes
.../contact-form-7/languages/wpcf7-bn_BD.mo | Bin 0 -> 10451 bytes
.../contact-form-7/languages/wpcf7-bs.mo | Bin 0 -> 7278 bytes
.../contact-form-7/languages/wpcf7-ca.mo | Bin 0 -> 10044 bytes
.../contact-form-7/languages/wpcf7-cs_CZ.mo | Bin 0 -> 14748 bytes
.../contact-form-7/languages/wpcf7-da_DK.mo | Bin 0 -> 14402 bytes
.../contact-form-7/languages/wpcf7-de_DE.mo | Bin 0 -> 16366 bytes
.../contact-form-7/languages/wpcf7-el.mo | Bin 0 -> 11506 bytes
.../contact-form-7/languages/wpcf7-eo_EO.mo | Bin 0 -> 13743 bytes
.../contact-form-7/languages/wpcf7-es_ES.mo | Bin 0 -> 15009 bytes
.../contact-form-7/languages/wpcf7-et.mo | Bin 0 -> 14053 bytes
.../contact-form-7/languages/wpcf7-eu.mo | Bin 0 -> 13090 bytes
.../contact-form-7/languages/wpcf7-fa_IR.mo | Bin 0 -> 16545 bytes
.../contact-form-7/languages/wpcf7-fi.mo | Bin 0 -> 14328 bytes
.../contact-form-7/languages/wpcf7-fr_FR.mo | Bin 0 -> 15486 bytes
.../contact-form-7/languages/wpcf7-gl_ES.mo | Bin 0 -> 14679 bytes
.../contact-form-7/languages/wpcf7-he_IL.mo | Bin 0 -> 15688 bytes
.../contact-form-7/languages/wpcf7-hi_IN.mo | Bin 0 -> 21274 bytes
.../contact-form-7/languages/wpcf7-hr.mo | Bin 0 -> 7313 bytes
.../contact-form-7/languages/wpcf7-hu_HU.mo | Bin 0 -> 14832 bytes
.../contact-form-7/languages/wpcf7-hy_AM.mo | Bin 0 -> 18925 bytes
.../contact-form-7/languages/wpcf7-id_ID.mo | Bin 0 -> 11604 bytes
.../contact-form-7/languages/wpcf7-it_IT.mo | Bin 0 -> 16139 bytes
.../contact-form-7/languages/wpcf7-ja.mo | Bin 0 -> 18267 bytes
.../contact-form-7/languages/wpcf7-ka_GE.mo | Bin 0 -> 21688 bytes
.../contact-form-7/languages/wpcf7-ko_KR.mo | Bin 0 -> 8450 bytes
.../contact-form-7/languages/wpcf7-lt_LT.mo | Bin 0 -> 14814 bytes
.../contact-form-7/languages/wpcf7-lv.mo | Bin 0 -> 14442 bytes
.../contact-form-7/languages/wpcf7-mk_MK.mo | Bin 0 -> 18685 bytes
.../contact-form-7/languages/wpcf7-ml_IN.mo | Bin 0 -> 21032 bytes
.../contact-form-7/languages/wpcf7-ms_MY.mo | Bin 0 -> 13610 bytes
.../contact-form-7/languages/wpcf7-mt_MT.mo | Bin 0 -> 13870 bytes
.../contact-form-7/languages/wpcf7-nb_NO.mo | Bin 0 -> 14412 bytes
.../contact-form-7/languages/wpcf7-nl_NL.mo | Bin 0 -> 14739 bytes
.../contact-form-7/languages/wpcf7-pl_PL.mo | Bin 0 -> 15583 bytes
.../contact-form-7/languages/wpcf7-pt_BR.mo | Bin 0 -> 14789 bytes
.../contact-form-7/languages/wpcf7-pt_PT.mo | Bin 0 -> 14108 bytes
.../contact-form-7/languages/wpcf7-ro_RO.mo | Bin 0 -> 14904 bytes
.../contact-form-7/languages/wpcf7-ru_RU.mo | Bin 0 -> 17027 bytes
.../contact-form-7/languages/wpcf7-si_LK.mo | Bin 0 -> 22639 bytes
.../contact-form-7/languages/wpcf7-sk_SK.mo | Bin 0 -> 11071 bytes
.../contact-form-7/languages/wpcf7-sl_SI.mo | Bin 0 -> 13836 bytes
.../contact-form-7/languages/wpcf7-sq.mo | Bin 0 -> 5017 bytes
.../contact-form-7/languages/wpcf7-sr_RS.mo | Bin 0 -> 18156 bytes
.../contact-form-7/languages/wpcf7-sv_SE.mo | Bin 0 -> 14324 bytes
.../contact-form-7/languages/wpcf7-ta.mo | Bin 0 -> 26093 bytes
.../contact-form-7/languages/wpcf7-th.mo | Bin 0 -> 20248 bytes
.../contact-form-7/languages/wpcf7-tl.mo | Bin 0 -> 15057 bytes
.../contact-form-7/languages/wpcf7-tr_TR.mo | Bin 0 -> 9570 bytes
.../contact-form-7/languages/wpcf7-uk.mo | Bin 0 -> 14648 bytes
.../contact-form-7/languages/wpcf7-vi.mo | Bin 0 -> 14084 bytes
.../contact-form-7/languages/wpcf7-zh_CN.mo | Bin 0 -> 14227 bytes
.../contact-form-7/languages/wpcf7-zh_TW.mo | Bin 0 -> 15342 bytes
.../contact-form-7/languages/wpcf7.pot | 956 +++++++++++++++
wp-content/plugins/contact-form-7/license.txt | 339 +++++
.../contact-form-7/modules/acceptance.php | 192 +++
.../contact-form-7/modules/akismet.php | 124 ++
.../contact-form-7/modules/captcha.php | 520 ++++++++
.../contact-form-7/modules/checkbox.php | 227 ++++
.../plugins/contact-form-7/modules/file.php | 346 ++++++
.../contact-form-7/modules/flamingo.php | 80 ++
.../contact-form-7/modules/jetpack.php | 19 +
.../plugins/contact-form-7/modules/quiz.php | 216 ++++
.../contact-form-7/modules/response.php | 17 +
.../plugins/contact-form-7/modules/select.php | 185 +++
.../modules/special-mail-tags.php | 73 ++
.../plugins/contact-form-7/modules/submit.php | 92 ++
.../plugins/contact-form-7/modules/text.php | 227 ++++
.../contact-form-7/modules/textarea.php | 177 +++
wp-content/plugins/contact-form-7/readme.txt | 142 +++
.../plugins/contact-form-7/screenshot-1.png | Bin 0 -> 32124 bytes
.../plugins/contact-form-7/settings.php | 172 +++
.../plugins/contact-form-7/uninstall.php | 26 +
.../contact-form-7/wp-contact-form-7.php | 76 ++
105 files changed, 8995 insertions(+)
create mode 100644 wp-content/plugins/contact-form-7/admin/admin-functions.php
create mode 100644 wp-content/plugins/contact-form-7/admin/admin.php
create mode 100644 wp-content/plugins/contact-form-7/admin/css/styles-rtl.css
create mode 100644 wp-content/plugins/contact-form-7/admin/css/styles.css
create mode 100644 wp-content/plugins/contact-form-7/admin/edit-contact-form.php
create mode 100644 wp-content/plugins/contact-form-7/admin/images/dropdown.gif
create mode 100644 wp-content/plugins/contact-form-7/admin/images/menu-icon.png
create mode 100644 wp-content/plugins/contact-form-7/admin/images/screen-icon.png
create mode 100644 wp-content/plugins/contact-form-7/admin/includes/class-contact-forms-list-table.php
create mode 100644 wp-content/plugins/contact-form-7/admin/includes/meta-boxes.php
create mode 100644 wp-content/plugins/contact-form-7/admin/js/scripts.js
create mode 100644 wp-content/plugins/contact-form-7/admin/js/taggenerator.js
create mode 100644 wp-content/plugins/contact-form-7/images/ajax-loader.gif
create mode 100644 wp-content/plugins/contact-form-7/includes/capabilities.php
create mode 100644 wp-content/plugins/contact-form-7/includes/classes.php
create mode 100644 wp-content/plugins/contact-form-7/includes/controller.php
create mode 100644 wp-content/plugins/contact-form-7/includes/css/styles-rtl.css
create mode 100644 wp-content/plugins/contact-form-7/includes/css/styles.css
create mode 100644 wp-content/plugins/contact-form-7/includes/deprecated.php
create mode 100644 wp-content/plugins/contact-form-7/includes/formatting.php
create mode 100644 wp-content/plugins/contact-form-7/includes/functions.php
create mode 100644 wp-content/plugins/contact-form-7/includes/js/jquery.form.dev.js
create mode 100644 wp-content/plugins/contact-form-7/includes/js/jquery.form.js
create mode 100644 wp-content/plugins/contact-form-7/includes/js/scripts.js
create mode 100644 wp-content/plugins/contact-form-7/includes/pipe.php
create mode 100644 wp-content/plugins/contact-form-7/includes/shortcodes.php
create mode 100644 wp-content/plugins/contact-form-7/languages/readme.txt
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-af.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ar.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-az_AZ.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-be_BY.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-bg_BG.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-bn_BD.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-bs.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ca.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-cs_CZ.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-da_DK.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-de_DE.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-el.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-eo_EO.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-es_ES.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-et.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-eu.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-fa_IR.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-fi.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-fr_FR.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-gl_ES.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-he_IL.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-hi_IN.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-hr.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-hu_HU.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-hy_AM.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-id_ID.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-it_IT.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ja.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ka_GE.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ko_KR.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-lt_LT.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-lv.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-mk_MK.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ml_IN.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ms_MY.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-mt_MT.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-nb_NO.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-nl_NL.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-pl_PL.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-pt_BR.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-pt_PT.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ro_RO.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ru_RU.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-si_LK.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-sk_SK.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-sl_SI.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-sq.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-sr_RS.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-sv_SE.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-ta.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-th.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-tl.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-tr_TR.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-uk.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-vi.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-zh_CN.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7-zh_TW.mo
create mode 100644 wp-content/plugins/contact-form-7/languages/wpcf7.pot
create mode 100644 wp-content/plugins/contact-form-7/license.txt
create mode 100644 wp-content/plugins/contact-form-7/modules/acceptance.php
create mode 100644 wp-content/plugins/contact-form-7/modules/akismet.php
create mode 100644 wp-content/plugins/contact-form-7/modules/captcha.php
create mode 100644 wp-content/plugins/contact-form-7/modules/checkbox.php
create mode 100644 wp-content/plugins/contact-form-7/modules/file.php
create mode 100644 wp-content/plugins/contact-form-7/modules/flamingo.php
create mode 100644 wp-content/plugins/contact-form-7/modules/jetpack.php
create mode 100644 wp-content/plugins/contact-form-7/modules/quiz.php
create mode 100644 wp-content/plugins/contact-form-7/modules/response.php
create mode 100644 wp-content/plugins/contact-form-7/modules/select.php
create mode 100644 wp-content/plugins/contact-form-7/modules/special-mail-tags.php
create mode 100644 wp-content/plugins/contact-form-7/modules/submit.php
create mode 100644 wp-content/plugins/contact-form-7/modules/text.php
create mode 100644 wp-content/plugins/contact-form-7/modules/textarea.php
create mode 100644 wp-content/plugins/contact-form-7/readme.txt
create mode 100644 wp-content/plugins/contact-form-7/screenshot-1.png
create mode 100644 wp-content/plugins/contact-form-7/settings.php
create mode 100644 wp-content/plugins/contact-form-7/uninstall.php
create mode 100644 wp-content/plugins/contact-form-7/wp-contact-form-7.php
diff --git a/wp-content/plugins/contact-form-7/admin/admin-functions.php b/wp-content/plugins/contact-form-7/admin/admin-functions.php
new file mode 100644
index 0000000..871c518
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/admin/admin-functions.php
@@ -0,0 +1,52 @@
+ $title,
+ 'content' => $elm_id,
+ 'options' => $options );
+
+ if ( is_callable( $callback ) )
+ add_action( 'wpcf7_admin_footer', $callback );
+
+ return true;
+}
+
+function wpcf7_tag_generators() {
+ global $wpcf7_tag_generators;
+
+ $taggenerators = array();
+
+ foreach ( (array) $wpcf7_tag_generators as $name => $tg ) {
+ $taggenerators[$name] = array_merge(
+ (array) $tg['options'],
+ array( 'title' => $tg['title'], 'content' => $tg['content'] ) );
+ }
+
+ return $taggenerators;
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/admin/admin.php b/wp-content/plugins/contact-form-7/admin/admin.php
new file mode 100644
index 0000000..5933569
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/admin/admin.php
@@ -0,0 +1,487 @@
+initial = true;
+ }
+
+ $contact_form->title = trim( $_POST['wpcf7-title'] );
+
+ $form = trim( $_POST['wpcf7-form'] );
+
+ $mail = array(
+ 'subject' => trim( $_POST['wpcf7-mail-subject'] ),
+ 'sender' => trim( $_POST['wpcf7-mail-sender'] ),
+ 'body' => trim( $_POST['wpcf7-mail-body'] ),
+ 'recipient' => trim( $_POST['wpcf7-mail-recipient'] ),
+ 'additional_headers' => trim( $_POST['wpcf7-mail-additional-headers'] ),
+ 'attachments' => trim( $_POST['wpcf7-mail-attachments'] ),
+ 'use_html' =>
+ isset( $_POST['wpcf7-mail-use-html'] ) && 1 == $_POST['wpcf7-mail-use-html']
+ );
+
+ $mail_2 = array(
+ 'active' =>
+ isset( $_POST['wpcf7-mail-2-active'] ) && 1 == $_POST['wpcf7-mail-2-active'],
+ 'subject' => trim( $_POST['wpcf7-mail-2-subject'] ),
+ 'sender' => trim( $_POST['wpcf7-mail-2-sender'] ),
+ 'body' => trim( $_POST['wpcf7-mail-2-body'] ),
+ 'recipient' => trim( $_POST['wpcf7-mail-2-recipient'] ),
+ 'additional_headers' => trim( $_POST['wpcf7-mail-2-additional-headers'] ),
+ 'attachments' => trim( $_POST['wpcf7-mail-2-attachments'] ),
+ 'use_html' =>
+ isset( $_POST['wpcf7-mail-2-use-html'] ) && 1 == $_POST['wpcf7-mail-2-use-html']
+ );
+
+ $messages = isset( $contact_form->messages ) ? $contact_form->messages : array();
+
+ foreach ( wpcf7_messages() as $key => $arr ) {
+ $field_name = 'wpcf7-message-' . strtr( $key, '_', '-' );
+ if ( isset( $_POST[$field_name] ) )
+ $messages[$key] = trim( $_POST[$field_name] );
+ }
+
+ $additional_settings = trim( $_POST['wpcf7-additional-settings'] );
+
+ $props = apply_filters( 'wpcf7_contact_form_admin_posted_properties',
+ compact( 'form', 'mail', 'mail_2', 'messages', 'additional_settings' ) );
+
+ foreach ( (array) $props as $key => $prop )
+ $contact_form->{$key} = $prop;
+
+ $query = array();
+ $query['message'] = ( $contact_form->initial ) ? 'created' : 'saved';
+
+ $contact_form->save();
+
+ $query['post'] = $contact_form->id;
+
+ $redirect_to = add_query_arg( $query, menu_page_url( 'wpcf7', false ) );
+
+ wp_safe_redirect( $redirect_to );
+ exit();
+ }
+
+ if ( 'copy' == $action ) {
+ $id = empty( $_POST['post_ID'] )
+ ? absint( $_REQUEST['post'] )
+ : absint( $_POST['post_ID'] );
+
+ check_admin_referer( 'wpcf7-copy-contact-form_' . $id );
+
+ if ( ! current_user_can( 'wpcf7_edit_contact_form', $id ) )
+ wp_die( __( 'You are not allowed to edit this item.', 'wpcf7' ) );
+
+ $query = array();
+
+ if ( $contact_form = wpcf7_contact_form( $id ) ) {
+ $new_contact_form = $contact_form->copy();
+ $new_contact_form->save();
+
+ $query['post'] = $new_contact_form->id;
+ $query['message'] = 'created';
+ } else {
+ $query['post'] = $contact_form->id;
+ }
+
+ $redirect_to = add_query_arg( $query, menu_page_url( 'wpcf7', false ) );
+
+ wp_safe_redirect( $redirect_to );
+ exit();
+ }
+
+ if ( 'delete' == $action ) {
+ if ( ! empty( $_POST['post_ID'] ) )
+ check_admin_referer( 'wpcf7-delete-contact-form_' . $_POST['post_ID'] );
+ elseif ( ! is_array( $_REQUEST['post'] ) )
+ check_admin_referer( 'wpcf7-delete-contact-form_' . $_REQUEST['post'] );
+ else
+ check_admin_referer( 'bulk-posts' );
+
+ $posts = empty( $_POST['post_ID'] )
+ ? (array) $_REQUEST['post']
+ : (array) $_POST['post_ID'];
+
+ $deleted = 0;
+
+ foreach ( $posts as $post ) {
+ $post = new WPCF7_ContactForm( $post );
+
+ if ( empty( $post ) )
+ continue;
+
+ if ( ! current_user_can( 'wpcf7_delete_contact_form', $post->id ) )
+ wp_die( __( 'You are not allowed to delete this item.', 'wpcf7' ) );
+
+ if ( ! $post->delete() )
+ wp_die( __( 'Error in deleting.', 'wpcf7' ) );
+
+ $deleted += 1;
+ }
+
+ $query = array();
+
+ if ( ! empty( $deleted ) )
+ $query['message'] = 'deleted';
+
+ $redirect_to = add_query_arg( $query, menu_page_url( 'wpcf7', false ) );
+
+ wp_safe_redirect( $redirect_to );
+ exit();
+ }
+
+ $_GET['post'] = isset( $_GET['post'] ) ? $_GET['post'] : '';
+
+ $post = null;
+
+ if ( 'new' == $_GET['post'] && current_user_can( 'wpcf7_edit_contact_forms' ) )
+ $post = wpcf7_get_contact_form_default_pack(
+ array( 'locale' => ( isset( $_GET['locale'] ) ? $_GET['locale'] : '' ) ) );
+ elseif ( ! empty( $_GET['post'] ) )
+ $post = wpcf7_contact_form( $_GET['post'] );
+
+ if ( $post && current_user_can( 'wpcf7_edit_contact_form', $post->id ) ) {
+ wpcf7_add_meta_boxes( $post->id );
+
+ } else {
+ $current_screen = get_current_screen();
+
+ if ( ! class_exists( 'WPCF7_Contact_Form_List_Table' ) )
+ require_once WPCF7_PLUGIN_DIR . '/admin/includes/class-contact-forms-list-table.php';
+
+ add_filter( 'manage_' . $current_screen->id . '_columns',
+ array( 'WPCF7_Contact_Form_List_Table', 'define_columns' ) );
+
+ add_screen_option( 'per_page', array(
+ 'label' => __( 'Contact Forms', 'wpcf7' ),
+ 'default' => 20,
+ 'option' => 'cfseven_contact_forms_per_page' ) );
+ }
+
+ $wpcf7_contact_form = $post;
+}
+
+add_action( 'admin_enqueue_scripts', 'wpcf7_admin_enqueue_scripts' );
+
+function wpcf7_admin_enqueue_scripts( $hook_suffix ) {
+ if ( false === strpos( $hook_suffix, 'wpcf7' ) )
+ return;
+
+ wp_enqueue_style( 'contact-form-7-admin',
+ wpcf7_plugin_url( 'admin/css/styles.css' ),
+ array( 'thickbox' ), WPCF7_VERSION, 'all' );
+
+ if ( wpcf7_is_rtl() ) {
+ wp_enqueue_style( 'contact-form-7-admin-rtl',
+ wpcf7_plugin_url( 'admin/css/styles-rtl.css' ),
+ array(), WPCF7_VERSION, 'all' );
+ }
+
+ wp_enqueue_script( 'wpcf7-admin-taggenerator',
+ wpcf7_plugin_url( 'admin/js/taggenerator.js' ),
+ array( 'jquery' ), WPCF7_VERSION, true );
+
+ wp_enqueue_script( 'wpcf7-admin',
+ wpcf7_plugin_url( 'admin/js/scripts.js' ),
+ array( 'jquery', 'thickbox', 'postbox', 'wpcf7-admin-taggenerator' ),
+ WPCF7_VERSION, true );
+
+ $current_screen = get_current_screen();
+
+ wp_localize_script( 'wpcf7-admin', '_wpcf7', array(
+ 'screenId' => $current_screen->id,
+ 'generateTag' => __( 'Generate Tag', 'wpcf7' ),
+ 'pluginUrl' => wpcf7_plugin_url(),
+ 'tagGenerators' => wpcf7_tag_generators() ) );
+}
+
+add_action( 'admin_print_footer_scripts', 'wpcf7_print_taggenerators_json', 20 );
+
+function wpcf7_print_taggenerators_json() { // for backward compatibility
+ global $plugin_page, $wpcf7_tag_generators;
+
+ if ( ! version_compare( get_bloginfo( 'version' ), '3.3-dev', '<' ) )
+ return;
+
+ if ( ! isset( $plugin_page ) || 'wpcf7' != $plugin_page )
+ return;
+
+ $taggenerators = array();
+
+ foreach ( (array) $wpcf7_tag_generators as $name => $tg ) {
+ $taggenerators[$name] = array_merge(
+ (array) $tg['options'],
+ array( 'title' => $tg['title'], 'content' => $tg['content'] ) );
+ }
+
+?>
+
+initial ? -1 : $post->id;
+
+ require_once WPCF7_PLUGIN_DIR . '/admin/includes/meta-boxes.php';
+ require_once WPCF7_PLUGIN_DIR . '/admin/edit-contact-form.php';
+ return;
+ }
+
+ $list_table = new WPCF7_Contact_Form_List_Table();
+ $list_table->prepare_items();
+
+?>
+
+
+
+
' . esc_html( __( 'Add New', 'wpcf7' ) ) . '';
+
+ if ( ! empty( $_REQUEST['s'] ) ) {
+ echo sprintf( ''
+ . __( 'Search results for “%s”', 'wpcf7' )
+ . '', esc_html( $_REQUEST['s'] ) );
+ }
+?>
+
+
+
+
+
+
+
+
+ 'wpcf7-mail-2',
+ 'name' => 'mail_2',
+ 'use' => __( 'Use mail (2)', 'wpcf7' ) ) );
+
+ add_meta_box( 'messagesdiv', __( 'Messages', 'wpcf7' ),
+ 'wpcf7_messages_meta_box', null, 'messages', 'core' );
+
+ add_meta_box( 'additionalsettingsdiv', __( 'Additional Settings', 'wpcf7' ),
+ 'wpcf7_additional_settings_meta_box', null, 'additional_settings', 'core' );
+
+ do_action( 'wpcf7_add_meta_boxes', $post_id );
+}
+
+/* Misc */
+
+add_action( 'wpcf7_admin_notices', 'wpcf7_admin_before_subsubsub' );
+
+function wpcf7_admin_before_subsubsub() {
+ // wpcf7_admin_before_subsubsub is deprecated. Use wpcf7_admin_notices instead.
+
+ $current_screen = get_current_screen();
+
+ if ( 'toplevel_page_wpcf7' != $current_screen->id )
+ return;
+
+ if ( empty( $_GET['post'] ) || ! $contact_form = wpcf7_contact_form( $_GET['post'] ) )
+ return;
+
+ do_action_ref_array( 'wpcf7_admin_before_subsubsub', array( &$contact_form ) );
+}
+
+add_action( 'wpcf7_admin_notices', 'wpcf7_admin_updated_message' );
+
+function wpcf7_admin_updated_message() {
+ if ( empty( $_REQUEST['message'] ) )
+ return;
+
+ if ( 'created' == $_REQUEST['message'] )
+ $updated_message = esc_html( __( 'Contact form created.', 'wpcf7' ) );
+ elseif ( 'saved' == $_REQUEST['message'] )
+ $updated_message = esc_html( __( 'Contact form saved.', 'wpcf7' ) );
+ elseif ( 'deleted' == $_REQUEST['message'] )
+ $updated_message = esc_html( __( 'Contact form deleted.', 'wpcf7' ) );
+
+ if ( empty( $updated_message ) )
+ return;
+
+?>
+
+'
+ . esc_html( __( 'Settings', 'wpcf7' ) ) . '';
+
+ array_unshift( $links, $settings_link );
+
+ return $links;
+}
+
+add_action( 'wpcf7_admin_notices', 'wpcf7_cf7com_links', 9 );
+
+function wpcf7_cf7com_links() {
+ $links = '';
+
+ echo apply_filters( 'wpcf7_cf7com_links', $links );
+}
+
+add_action( 'wpcf7_admin_notices', 'wpcf7_donation_link' );
+
+function wpcf7_donation_link() {
+ if ( ! WPCF7_SHOW_DONATION_LINK )
+ return;
+
+ if ( ! empty( $_REQUEST['post'] ) && 'new' == $_REQUEST['post'] )
+ return;
+
+ if ( ! empty( $_REQUEST['message'] ) )
+ return;
+
+ $show_link = true;
+
+ $num = mt_rand( 0, 99 );
+
+ if ( $num >= 20 )
+ $show_link = false;
+
+ $show_link = apply_filters( 'wpcf7_show_donation_link', $show_link );
+
+ if ( ! $show_link )
+ return;
+
+ $texts = array(
+ __( "Contact Form 7 needs your support. Please donate today.", 'wpcf7' ),
+ __( "Your contribution is needed for making this plugin better.", 'wpcf7' ) );
+
+ $text = $texts[array_rand( $texts )];
+
+?>
+
+
+
+
Contact Form 7 %1$s requires WordPress %2$s or higher. Please update WordPress first.', 'wpcf7' ), WPCF7_VERSION, WPCF7_REQUIRED_WP_VERSION, admin_url( 'update-core.php' ) ); ?>
+
+
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/admin/css/styles-rtl.css b/wp-content/plugins/contact-form-7/admin/css/styles-rtl.css
new file mode 100644
index 0000000..6a62300
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/admin/css/styles-rtl.css
@@ -0,0 +1,21 @@
+div.save-contact-form {
+ direction: rtl;
+}
+
+div.actions-link {
+ right: auto;
+ left: 0;
+}
+
+div.tg-pane table caption {
+ text-align: right;
+}
+
+div.tg-dropdown {
+ left: auto;
+ right: 0;
+}
+
+div.wrap div.cf7com-links {
+ text-align: left;
+}
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/admin/css/styles.css b/wp-content/plugins/contact-form-7/admin/css/styles.css
new file mode 100644
index 0000000..0f8971a
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/admin/css/styles.css
@@ -0,0 +1,260 @@
+#icon-wpcf7 {
+ background: transparent url(../images/screen-icon.png) no-repeat 2px 1px;
+}
+
+div.wrap div.cf7com-links {
+ text-align: right;
+ font-size: .9em;
+ margin: -2em 1em 1em 0;
+}
+
+div.wrap div.cf7com-links a {
+ text-decoration: none;
+ font-weight: bold;
+}
+
+div.wrap div.donation {
+ border-width: 1px;
+ border-style: solid;
+ padding: 0 0.6em;
+ margin: 5px 0 15px;
+ -webkit-border-radius: 3px;
+ border-radius: 3px;
+ background-color: #ffffe0;
+ border-color: #e6db55;
+}
+
+div.wrap div.donation p {
+ margin: .7em 0;
+ line-height: 1;
+ padding: 2px;
+ font-size: 107%;
+}
+
+div.wrap div.donation p a {
+ color: #3f3f3f;
+ text-decoration: none;
+}
+
+div.wrap div.donation p a.button {
+ margin-left: 1em;
+ font-weight: bold;
+}
+
+#titlediv {
+ margin-bottom: 20px;
+ position: relative;
+ border: 1px solid #c7c7c7;
+ padding: 6px;
+}
+
+div.save-contact-form {
+ padding: 1.4em 0 0 0;
+ text-align: right;
+}
+
+div.actions-link {
+ position: absolute;
+ top: 0;
+ right: 0;
+ margin: 0;
+ padding: 6px;
+}
+
+div.actions-link input {
+ padding: 0;
+ margin: 0;
+ border: none;
+ font-size: 11px;
+ cursor: pointer;
+}
+
+div.actions-link input.copy {
+ color: #006505;
+}
+
+div.actions-link input.delete {
+ color: #bc0b0b;
+}
+
+input#wpcf7-title {
+ color: #555;
+ border: none;
+ font: bold 20px serif;
+ cursor: pointer;
+ background-color: transparent;
+}
+
+input#wpcf7-title.focus {
+ color: #333;
+ border: 1px solid #777;
+ font: normal 13px Verdana, Arial, Helvetica, sans-serif;
+ cursor: text;
+ background-color: transparent;
+}
+
+input#wpcf7-title.mouseover {
+ background-color: #ffffdd;
+}
+
+p.tagcode {
+ color: #333;
+ margin: 2ex 0 1ex 0;
+}
+
+input#contact-form-anchor-text, input#contact-form-anchor-text-old {
+ color: #fff;
+ background: #7e4e0b;
+ border: none;
+ width: 100%;
+ -webkit-border-radius: 6px;
+ border-radius: 6px;
+}
+
+.postbox .half, .postbox .half-left, .postbox .half-right {
+ float: left;
+ width: 50%;
+}
+
+.postbox .half-right > * {
+ margin-left: 10px;
+}
+
+.postbox .mail-field, .postbox .message-field {
+ margin-top: 6px;
+ margin-bottom: 8px;
+}
+
+.postbox .mail-field label, .postbox .message-field label {
+ line-height: 1.4em;
+}
+
+div.pseudo-hr {
+ border-bottom: 1px solid transparent;
+ margin: 8px 0;
+}
+
+input, textarea {
+ border: 1px solid #dfdfdf;
+}
+
+input.wide {
+ width: 100%;
+}
+
+textarea {
+ width: 100%;
+}
+
+label.disabled {
+ color: #777;
+}
+
+div.tag-generator {
+ position: relative;
+ background: transparent;
+ padding: 0 0 5px 1px;
+}
+
+div.tg-pane {
+ border: 1px dashed #999;
+ background: #f1f1f1;
+ margin: 1ex 0 0 0;
+ padding: 10px;
+ -webkit-border-radius: 6px;
+ border-radius: 6px;
+ line-height: 140%;
+}
+
+div.tg-pane table {
+ width: 100%;
+ margin: 0 0 0.7em 0;
+}
+
+div.tg-pane table caption {
+ text-align: left;
+ padding: 0 0 0.2em 0;
+ font-weight: bolder;
+ color: #777;
+}
+
+div.tg-pane table code {
+ background-color: inherit;
+}
+
+div.tg-pane table td {
+ vertical-align: top;
+ width: 50%;
+ border: none;
+ padding: 2px 0;
+}
+
+div.tg-pane input.tag, div.tg-pane input.mail-tag {
+ width: 100%;
+ border: none;
+ color: #fff;
+ background-color: #7e4e0b;
+ -webkit-border-radius: 6px;
+ border-radius: 6px;
+}
+
+div.tg-pane input.mail-tag {
+ width: 50%;
+ background-color: #404f03;
+}
+
+div.tg-mail-tag {
+ margin-top: 2.4em;
+ text-align: right;
+}
+
+div.tg-pane span.arrow {
+ font-family: monospace;
+ font-size: 1.2em;
+ color: #333;
+}
+
+div.tg-pane input.tg-name {
+ border-color: #555;
+}
+
+div.tg-pane input.oneline {
+ width: 98%;
+ font-size: smaller;
+}
+
+div.tg-pane textarea {
+ width: 98%;
+ height: 100px;
+ font-size: smaller;
+}
+
+div.tg-pane div.tg-tag {
+ margin: .4em 0;
+}
+
+div.tg-dropdown {
+ position: absolute;
+ top: 26px;
+ left: 0;
+ z-index: 10;
+ border: 1px solid #ddd;
+}
+
+span.tg-closebutton {
+ color: #777;
+ font: bold 18px monospace;
+ padding: 1px 4px;
+ cursor: pointer;
+}
+
+div.tg-panetitle {
+ font: bold 132% sans-serif;
+ margin: 0 0 10px;
+ color: #777;
+}
+
+input.shortcode-in-list-table {
+ width: 100%;
+ border: none;
+}
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/admin/edit-contact-form.php b/wp-content/plugins/contact-form-7/admin/edit-contact-form.php
new file mode 100644
index 0000000..9161ae6
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/admin/edit-contact-form.php
@@ -0,0 +1,118 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/wp-content/plugins/contact-form-7/admin/images/dropdown.gif b/wp-content/plugins/contact-form-7/admin/images/dropdown.gif
new file mode 100644
index 0000000000000000000000000000000000000000..a342dfdf3240db9ef346dc4b7bd1dc6152e1684e
GIT binary patch
literal 67
zcmZ?wbhEHb6krfwn8*ME|NsBb&(8;via%Kx85o!ubU>mYc?KqtIsGe7zvW*nyrnBM
PaccN4{5lRan@K@`V-^Rc<|LYlZ$z~jJFLef|TB_LXe5Np$^jaZpm2&4+8Nh$?F
z?P71MrJYuRgM+}`C1s8)>W;U$VY7EmeZW8r+
z9gh$72-CU&-@ZShb86=ou4=X({{SFK5+(v!Oy|_HzZ-v=N~Q}oya7jx3TO7B~mbUc=!_81y;%)nUcu1X?ek
zl~Oatu=8cM_0DJ5eOk)RvJ9=Yo)tKJF(L2{whDqGM!8BU^l&&V9%I&)s~r742hPjg
zKYT2CV5dzS6Sx7@ckp1Yg#drBF26}B(OT(Vv)K&S@3yZkosL$k1)iQ5t+TNv41xe_
sEmBIn_oV{o97-vY#GsU7A;{PH3SUm}7YBQ6FaQ7m07*qoM6N<$f|P9m@&Et;
literal 0
HcmV?d00001
diff --git a/wp-content/plugins/contact-form-7/admin/images/screen-icon.png b/wp-content/plugins/contact-form-7/admin/images/screen-icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..70ee014a45abc30626ded8efdf62ab147cfd3d6e
GIT binary patch
literal 1416
zcmV;31$X+1P)7`zNZ831*jX3)FGv7gDH;?K
zHnPMJ+~6AMLTm#51C|IuFfB&fDYVm4LZ@>-&N(jbojWsiT7lB|CO31=dq1A%eb0NI
z_l&UC@_(AB4i*;|?4?UTQY_A3j71265U^2x#uzf$Eal}gO1bp(yv5NYN9pY9O0k)p
zE!wkZ&f5F;?pdw1-Aw!Q{ylr&5s`uh3_!>C3eN+v5SWdc9gGy;y}V2r^SgHmpdfSXK;(?wk65=9XczfB;7
zSo>=)Xal-sjL7nG&GcgAN%asOB0Y%a`50m00Q6V+0&;0D7S72tT71*hfF2|
z#Ow8{&2<&Id>(-1avW${Z9)igxg1*SR}New;9!!q-%^N)xB!mpVy#6fwc#~yW#z4^vpEEDroD_;Bj9;)aYd$adiIc}Ubm+r$E`*??y)y+4!w@M1Dyg@I47g6r$`3*^*=!7$WTGDY^Dj=W
zOJZl`B_kQ92GJ{l-((42W6=f}nyihSt{Ch{6yZMXywnl~Sl=nUzuv
z_Yx^qSRn|509PrZL;+XZS6`l56Xe9n<4jE4;%Z&w)e}(ljOjQsJ%}_A5JDiVrBKLY
zw8n93op5n+f!5Zx|EzY+iRq>CY#MP>@*i3lgR-P20o7KViI8*Ik2C7`$uYDYa*{rrMTW_
zErIVR0eU#DYRG1)140N2En9ha=T7e2x%01-3n9|9HTaUNnSZtK?VcW-W*m}0qHj?aif
zrj1HRI*ACB^3WzeUYokk*~~JYN4dO0KA*$$JoeXwy+9IuS9S5EK8R_WkqL9zi(a}yeli?o`
WWXK+Y2Xlo00000 '',
+ 'title' => __( 'Title', 'wpcf7' ),
+ 'shortcode' => __( 'Shortcode', 'wpcf7' ),
+ 'author' => __( 'Author', 'wpcf7' ),
+ 'date' => __( 'Date', 'wpcf7' ) );
+
+ return $columns;
+ }
+
+ function __construct() {
+ parent::__construct( array(
+ 'singular' => 'post',
+ 'plural' => 'posts',
+ 'ajax' => false ) );
+ }
+
+ function prepare_items() {
+ $current_screen = get_current_screen();
+ $per_page = $this->get_items_per_page( 'cfseven_contact_forms_per_page' );
+
+ $this->_column_headers = $this->get_column_info();
+
+ $args = array(
+ 'posts_per_page' => $per_page,
+ 'orderby' => 'title',
+ 'order' => 'ASC',
+ 'offset' => ( $this->get_pagenum() - 1 ) * $per_page );
+
+ if ( ! empty( $_REQUEST['s'] ) )
+ $args['s'] = $_REQUEST['s'];
+
+ if ( ! empty( $_REQUEST['orderby'] ) ) {
+ if ( 'title' == $_REQUEST['orderby'] )
+ $args['orderby'] = 'title';
+ elseif ( 'author' == $_REQUEST['orderby'] )
+ $args['orderby'] = 'author';
+ elseif ( 'date' == $_REQUEST['orderby'] )
+ $args['orderby'] = 'date';
+ }
+
+ if ( ! empty( $_REQUEST['order'] ) ) {
+ if ( 'asc' == strtolower( $_REQUEST['order'] ) )
+ $args['order'] = 'ASC';
+ elseif ( 'desc' == strtolower( $_REQUEST['order'] ) )
+ $args['order'] = 'DESC';
+ }
+
+ $this->items = WPCF7_ContactForm::find( $args );
+
+ $total_items = WPCF7_ContactForm::$found_items;
+ $total_pages = ceil( $total_items / $per_page );
+
+ $this->set_pagination_args( array(
+ 'total_items' => $total_items,
+ 'total_pages' => $total_pages,
+ 'per_page' => $per_page ) );
+ }
+
+ function get_columns() {
+ return get_column_headers( get_current_screen() );
+ }
+
+ function get_sortable_columns() {
+ $columns = array(
+ 'title' => array( 'title', true ),
+ 'author' => array( 'author', false ),
+ 'date' => array( 'date', false ) );
+
+ return $columns;
+ }
+
+ function get_bulk_actions() {
+ $actions = array(
+ 'delete' => __( 'Delete', 'wpcf7' ) );
+
+ return $actions;
+ }
+
+ function column_default( $item, $column_name ) {
+ return '';
+ }
+
+ function column_cb( $item ) {
+ return sprintf(
+ '',
+ $this->_args['singular'],
+ $item->id );
+ }
+
+ function column_title( $item ) {
+ $url = admin_url( 'admin.php?page=wpcf7&post=' . absint( $item->id ) );
+ $edit_link = add_query_arg( array( 'action' => 'edit' ), $url );
+
+ $actions = array(
+ 'edit' => '' . __( 'Edit', 'wpcf7' ) . '' );
+
+ if ( current_user_can( 'wpcf7_edit_contact_form', $item->id ) ) {
+ $copy_link = wp_nonce_url(
+ add_query_arg( array( 'action' => 'copy' ), $url ),
+ 'wpcf7-copy-contact-form_' . absint( $item->id ) );
+
+ $actions = array_merge( $actions, array(
+ 'copy' => '' . __( 'Copy', 'wpcf7' ) . '' ) );
+ }
+
+ $a = sprintf( '%3$s',
+ $edit_link,
+ esc_attr( sprintf( __( 'Edit “%s”', 'wpcf7' ), $item->title ) ),
+ esc_html( $item->title ) );
+
+ return '' . $a . ' ' . $this->row_actions( $actions );
+ }
+
+ function column_author( $item ) {
+ $post = get_post( $item->id );
+
+ if ( ! $post )
+ return;
+
+ $author = get_userdata( $post->post_author );
+
+ return esc_html( $author->display_name );
+ }
+
+ function column_shortcode( $item ) {
+ $shortcodes = array(
+ sprintf( '[contact-form-7 id="%1$d" title="%2$s"]', $item->id, $item->title ) );
+
+ $output = '';
+
+ foreach ( $shortcodes as $shortcode ) {
+ $output .= "\n" . '';
+ }
+
+ return trim( $output );
+ }
+
+ function column_date( $item ) {
+ $post = get_post( $item->id );
+
+ if ( ! $post )
+ return;
+
+ $t_time = mysql2date( __( 'Y/m/d g:i:s A', 'wpcf7' ), $post->post_date, true );
+ $m_time = $post->post_date;
+ $time = mysql2date( 'G', $post->post_date ) - get_option( 'gmt_offset' ) * 3600;
+
+ $time_diff = time() - $time;
+
+ if ( $time_diff > 0 && $time_diff < 24*60*60 )
+ $h_time = sprintf( __( '%s ago', 'wpcf7' ), human_time_diff( $time ) );
+ else
+ $h_time = mysql2date( __( 'Y/m/d', 'wpcf7' ), $m_time );
+
+ return '' . $h_time . '';
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/admin/includes/meta-boxes.php b/wp-content/plugins/contact-form-7/admin/includes/meta-boxes.php
new file mode 100644
index 0000000..a607f75
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/admin/includes/meta-boxes.php
@@ -0,0 +1,109 @@
+
+
+
+
+
+
+ 'wpcf7-mail', 'name' => 'mail', 'use' => null );
+
+ if ( ! isset( $box['args'] ) || ! is_array( $box['args'] ) )
+ $args = array();
+ else
+ $args = $box['args'];
+
+ extract( wp_parse_args( $args, $defaults ), EXTR_SKIP );
+
+ $id = esc_attr( $id );
+ $mail = $post->{$name};
+
+ if ( ! empty( $use ) ) :
+?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ />
+
+
+
+
+
+
+
+
+ $arr ) :
+ $field_name = 'wpcf7-message-' . strtr( $key, '_', '-' );
+
+?>
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/admin/js/scripts.js b/wp-content/plugins/contact-form-7/admin/js/scripts.js
new file mode 100644
index 0000000..f2b0e47
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/admin/js/scripts.js
@@ -0,0 +1,75 @@
+(function($) {
+
+ $(function() {
+ try {
+ $('div.cf7com-links').insertAfter($('div.wrap h2:first'));
+
+ $.extend($.tgPanes, _wpcf7.tagGenerators);
+ $('#taggenerator').tagGenerator(_wpcf7.generateTag,
+ { dropdownIconUrl: _wpcf7.pluginUrl + '/admin/images/dropdown.gif' });
+
+ $('input#wpcf7-title:disabled').css({cursor: 'default'});
+
+ $('input#wpcf7-title').mouseover(function() {
+ $(this).not('.focus').addClass('mouseover');
+ });
+
+ $('input#wpcf7-title').mouseout(function() {
+ $(this).removeClass('mouseover');
+ });
+
+ $('input#wpcf7-title').focus(function() {
+ $(this).addClass('focus').removeClass('mouseover');
+ });
+
+ $('input#wpcf7-title').blur(function() {
+ $(this).removeClass('focus');
+ });
+
+ $('input#wpcf7-title').change(function() {
+ updateTag();
+ });
+
+ updateTag();
+
+ $('.check-if-these-fields-are-active').each(function(index) {
+ if (! $(this).is(':checked'))
+ $(this).parent().siblings('.mail-fields').hide();
+
+ $(this).click(function() {
+ if ($(this).parent().siblings('.mail-fields').is(':hidden')
+ && $(this).is(':checked')) {
+ $(this).parent().siblings('.mail-fields').slideDown('fast');
+ } else if ($(this).parent().siblings('.mail-fields').is(':visible')
+ && $(this).not(':checked')) {
+ $(this).parent().siblings('.mail-fields').slideUp('fast');
+ }
+ });
+ });
+
+ postboxes.add_postbox_toggles(_wpcf7.screenId);
+
+ } catch (e) {
+ }
+ });
+
+ function updateTag() {
+ var title = $('input#wpcf7-title').val();
+
+ if (title)
+ title = title.replace(/["'\[\]]/g, '');
+
+ $('input#wpcf7-title').val(title);
+ var postId = $('input#post_ID').val();
+ var tag = '[contact-form-7 id="' + postId + '" title="' + title + '"]';
+ $('input#contact-form-anchor-text').val(tag);
+
+ var oldId = $('input#wpcf7-id').val();
+
+ if (0 != oldId) {
+ var tagOld = '[contact-form ' + oldId + ' "' + title + '"]';
+ $('input#contact-form-anchor-text-old').val(tagOld).parent('p.tagcode').show();
+ }
+ }
+
+})(jQuery);
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/admin/js/taggenerator.js b/wp-content/plugins/contact-form-7/admin/js/taggenerator.js
new file mode 100644
index 0000000..32fb3fb
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/admin/js/taggenerator.js
@@ -0,0 +1,262 @@
+(function($) {
+
+ $.fn.tagGenerator = function(title, options) {
+ var menu = $('');
+
+ var selector = $('' + title + '');
+
+ selector.css({
+ border: '1px solid #ddd',
+ padding: '2px 4px',
+ background: '#fff url( ../wp-admin/images/fade-butt.png ) repeat-x 0 0',
+ '-moz-border-radius': '3px',
+ '-khtml-border-radius': '3px',
+ '-webkit-border-radius': '3px',
+ 'border-radius': '3px'
+ });
+
+ selector.mouseover(function() {
+ $(this).css({ 'border-color': '#bbb' });
+ });
+ selector.mouseout(function() {
+ $(this).css({ 'border-color': '#ddd' });
+ });
+ selector.mousedown(function() {
+ $(this).css({ background: '#ddd' });
+ });
+ selector.mouseup(function() {
+ $(this).css({
+ background: '#fff url( ../wp-admin/images/fade-butt.png ) repeat-x 0 0'
+ });
+ });
+ selector.click(function() {
+ dropdown.slideDown('fast');
+ return false;
+ });
+ $('body').click(function() {
+ dropdown.hide();
+ });
+
+ if (options.dropdownIconUrl) {
+ var dropdown_icon = $('
');
+ dropdown_icon.css({ 'vertical-align': 'bottom' });
+ selector.append(dropdown_icon);
+ }
+
+ menu.append(selector);
+
+ var pane = $('');
+ pane.hide();
+ menu.append(pane);
+
+ var dropdown = $('');
+ dropdown.hide();
+ menu.append(dropdown);
+
+ $.each($.tgPanes, function(i, n) {
+ var submenu = $('' + $.tgPanes[i].title + '
');
+ submenu.css({
+ margin: 0,
+ padding: '0 4px',
+ 'line-height': '180%',
+ background: '#fff'
+ });
+ submenu.mouseover(function() {
+ $(this).css({ background: '#d4f2f2' });
+ });
+ submenu.mouseout(function() {
+ $(this).css({ background: '#fff' });
+ });
+ submenu.click(function() {
+ dropdown.hide();
+ pane.hide();
+ pane.empty();
+ $.tgPane(pane, i);
+ pane.slideDown('fast');
+ return false;
+ });
+ dropdown.append(submenu);
+ });
+
+ this.append(menu);
+ };
+
+ $.tgPane = function(pane, tagType) {
+ var closeButtonDiv = $('');
+ closeButtonDiv.css({ float: 'right' });
+
+ var closeButton = $('×');
+ closeButton.click(function() {
+ pane.slideUp('fast').empty();
+ });
+ closeButtonDiv.append(closeButton);
+
+ pane.append(closeButtonDiv);
+
+ var paneTitle = $('' + $.tgPanes[tagType].title + '
');
+ pane.append(paneTitle);
+
+ pane.append($('#' + $.tgPanes[tagType].content).clone().contents());
+
+ pane.find(':checkbox.exclusive').change(function() {
+ if ($(this).is(':checked'))
+ $(this).siblings(':checkbox.exclusive').removeAttr('checked');
+ });
+
+ if ($.isFunction($.tgPanes[tagType].change))
+ $.tgPanes[tagType].change(pane, tagType);
+ else
+ $.tgCreateTag(pane, tagType);
+
+ pane.find(':input').change(function() {
+ if ($.isFunction($.tgPanes[tagType].change))
+ $.tgPanes[tagType].change(pane, tagType);
+ else
+ $.tgCreateTag(pane, tagType);
+ });
+ }
+
+ $.tgCreateTag = function(pane, tagType) {
+ pane.find('input[name="name"]').each(function(i) {
+ var val = $(this).val();
+ val = val.replace(/[^0-9a-zA-Z:._-]/g, '').replace(/^[^a-zA-Z]+/, '');
+ if ('' == val) {
+ var rand = Math.floor(Math.random() * 1000);
+ val = tagType + '-' + rand;
+ }
+ $(this).val(val);
+ });
+
+ pane.find(':input.numeric').each(function(i) {
+ var val = $(this).val();
+ val = val.replace(/[^0-9]/g, '');
+ $(this).val(val);
+ });
+
+ pane.find(':input.idvalue').each(function(i) {
+ var val = $(this).val();
+ val = val.replace(/[^-0-9a-zA-Z_]/g, '');
+ $(this).val(val);
+ });
+
+ pane.find(':input.classvalue').each(function(i) {
+ var val = $(this).val();
+ val = $.map(val.split(' '), function(n) {
+ return n.replace(/[^-0-9a-zA-Z_]/g, '');
+ }).join(' ');
+ val = $.trim(val.replace(/\s+/g, ' '));
+ $(this).val(val);
+ });
+
+ pane.find(':input.color').each(function(i) {
+ var val = $(this).val();
+ val = val.replace(/[^0-9a-fA-F]/g, '');
+ $(this).val(val);
+ });
+
+ pane.find(':input.filesize').each(function(i) {
+ var val = $(this).val();
+ val = val.replace(/[^0-9kKmMbB]/g, '');
+ $(this).val(val);
+ });
+
+ pane.find(':input.filetype').each(function(i) {
+ var val = $(this).val();
+ val = val.replace(/[^0-9a-zA-Z.,|\s]/g, '');
+ $(this).val(val);
+ });
+
+ pane.find(':input.date').each(function(i) {
+ var val = $(this).val();
+ if (! val.match(/^\d{4}-\d{1,2}-\d{1,2}$/)) // 'yyyy-mm-dd' ISO 8601 format
+ $(this).val('');
+ });
+
+ pane.find(':input[name="values"]').each(function(i) {
+ var val = $(this).val();
+ val = $.trim(val);
+ $(this).val(val);
+ });
+
+ pane.find('input.tag').each(function(i) {
+ var type = $(this).attr('name');
+
+ var scope = pane.find('.scope.' + type);
+ if (! scope.length)
+ scope = pane;
+
+ if (pane.find(':input[name="required"]').is(':checked'))
+ type += '*';
+
+ var name = pane.find(':input[name="name"]').val();
+
+ var options = [];
+
+ var size = scope.find(':input[name="size"]').val();
+ var maxlength = scope.find(':input[name="maxlength"]').val();
+ if (size || maxlength)
+ options.push(size + '/' + maxlength);
+
+ var cols = scope.find(':input[name="cols"]').val();
+ var rows = scope.find(':input[name="rows"]').val();
+ if (cols || rows)
+ options.push(cols + 'x' + rows);
+
+ scope.find('input:text.option').each(function(i) {
+ if (-1 < $.inArray($(this).attr('name'), ['size', 'maxlength', 'cols', 'rows']))
+ return;
+
+ var val = $(this).val();
+
+ if (! val)
+ return;
+
+ if ($(this).hasClass('filetype'))
+ val = val.split(/[,|\s]+/).join('|');
+
+ if ($(this).hasClass('color'))
+ val = '#' + val;
+
+ if ('class' == $(this).attr('name')) {
+ $.each(val.split(' '), function(i, n) { options.push('class:' + n) });
+ } else {
+ options.push($(this).attr('name') + ':' + val);
+ }
+ });
+
+ scope.find('input:checkbox.option').each(function(i) {
+ if ($(this).is(':checked'))
+ options.push($(this).attr('name'));
+ });
+
+ options = (options.length > 0) ? ' ' + options.join(' ') : '';
+
+ var value = '';
+
+ if (scope.find(':input[name="values"]').val()) {
+ $.each(scope.find(':input[name="values"]').val().split("\n"), function(i, n) {
+ value += ' "' + n.replace(/["]/g, '"') + '"';
+ });
+ }
+
+ if ($.tgPanes[tagType].nameless)
+ var tag = '[' + type + options + value + ']';
+ else
+ var tag = name ? '[' + type + ' ' + name + options + value + ']' : '';
+
+ $(this).val(tag);
+ });
+
+ pane.find('input.mail-tag').each(function(i) {
+ var name = pane.find(':input[name="name"]').val();
+
+ var tag = name ? '[' + name + ']' : '';
+
+ $(this).val(tag);
+ });
+
+ }
+
+ $.tgPanes = {};
+
+})(jQuery);
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/images/ajax-loader.gif b/wp-content/plugins/contact-form-7/images/ajax-loader.gif
new file mode 100644
index 0000000000000000000000000000000000000000..f2cfafd67f4e200b13a75d7bd093bdee54c2f116
GIT binary patch
literal 847
zcmZ?wbhEHb6krfw_`<;O|NsB;^73E5eodJ&W$)g-RaI5p-Q6!`KikeHQNk&~a8qL-PMmd~L0lZBHDs7eQ93&@cStN{uNeJPpqmKuoUC~CDNtXexm
zYwdvp2d^Dv;^>*ukeVSP#B=a~
zf`cHJ&w+*y$${?8Oio*#ZVND-p0{bqWVZD*Xt=Aat;&6vAl3|g72d7x8jzOQ(6|TN)0k3Co
zc|z??%b8hfRI+(vH2HbDv054g3DyRMDNKeUM;%r)JIk@H5kHpQ-86?$(dkKoJwxMm
zrhOBXU7IYboB|^nl6U7WD&rPXTBz{y(Bg!~gf`w#w`Gz=cO?0i7QEK{oc6x~t2H3M
z0b_541COhrz@d{8xv>(*cS?BlTxh$Y!7k9nV#1{GTti1?UUB0cu(i`VAUAy((BOjfYz50rVKh
zG6xfeLz|8{DtS)i*f48h0*75*E32o0N{2+RoVWQVUJo7igPpo1&00;(u2LcbOAhN^
rOjyy8aDeHjfMF+x#D?h({d~^m865hCENQGUn%zBWiVW7E WPCF7_ADMIN_READ_WRITE_CAPABILITY,
+ 'wpcf7_edit_contact_forms' => WPCF7_ADMIN_READ_WRITE_CAPABILITY,
+ 'wpcf7_read_contact_forms' => WPCF7_ADMIN_READ_CAPABILITY,
+ 'wpcf7_delete_contact_form' => WPCF7_ADMIN_READ_WRITE_CAPABILITY );
+
+ $caps = array_diff( $caps, array_keys( $meta_caps ) );
+
+ if ( isset( $meta_caps[$cap] ) )
+ $caps[] = $meta_caps[$cap];
+
+ return $caps;
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/includes/classes.php b/wp-content/plugins/contact-form-7/includes/classes.php
new file mode 100644
index 0000000..4da400f
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/classes.php
@@ -0,0 +1,812 @@
+ array(
+ 'name' => __( 'Contact Forms', 'wpcf7' ),
+ 'singular_name' => __( 'Contact Form', 'wpcf7' ) ),
+ 'rewrite' => false,
+ 'query_var' => false ) );
+ }
+
+ public static function find( $args = '' ) {
+ $defaults = array(
+ 'post_status' => 'any',
+ 'posts_per_page' => -1,
+ 'offset' => 0,
+ 'orderby' => 'ID',
+ 'order' => 'ASC' );
+
+ $args = wp_parse_args( $args, $defaults );
+
+ $args['post_type'] = self::post_type;
+
+ $q = new WP_Query();
+ $posts = $q->query( $args );
+
+ self::$found_items = $q->found_posts;
+
+ $objs = array();
+
+ foreach ( (array) $posts as $post )
+ $objs[] = new self( $post );
+
+ return $objs;
+ }
+
+ public function __construct( $post = null ) {
+ $this->initial = true;
+
+ $post = get_post( $post );
+
+ if ( $post && self::post_type == get_post_type( $post ) ) {
+ $this->initial = false;
+ $this->id = $post->ID;
+ $this->title = $post->post_title;
+
+ $this->form = get_post_meta( $post->ID, 'form', true );
+ $this->mail = get_post_meta( $post->ID, 'mail', true );
+ $this->mail_2 = get_post_meta( $post->ID, 'mail_2', true );
+ $this->messages = get_post_meta( $post->ID, 'messages', true );
+ $this->additional_settings = get_post_meta( $post->ID, 'additional_settings', true );
+
+ $this->upgrade();
+ }
+
+ do_action_ref_array( 'wpcf7_contact_form', array( &$this ) );
+ }
+
+ // Return true if this form is the same one as currently POSTed.
+ function is_posted() {
+ if ( ! isset( $_POST['_wpcf7_unit_tag'] ) || empty( $_POST['_wpcf7_unit_tag'] ) )
+ return false;
+
+ if ( $this->unit_tag == $_POST['_wpcf7_unit_tag'] )
+ return true;
+
+ return false;
+ }
+
+ function clear_post() {
+ $fes = $this->form_scan_shortcode();
+
+ foreach ( $fes as $fe ) {
+ if ( ! isset( $fe['name'] ) || empty( $fe['name'] ) )
+ continue;
+
+ $name = $fe['name'];
+
+ if ( isset( $_POST[$name] ) )
+ unset( $_POST[$name] );
+ }
+ }
+
+ /* Generating Form HTML */
+
+ function form_html() {
+ $form = '';
+
+ $url = wpcf7_get_request_uri();
+
+ if ( $frag = strstr( $url, '#' ) )
+ $url = substr( $url, 0, -strlen( $frag ) );
+
+ $url .= '#' . $this->unit_tag;
+
+ $url = apply_filters( 'wpcf7_form_action_url', $url );
+
+ $class = 'wpcf7-form';
+
+ if ( $this->is_posted() ) {
+ if ( ! empty( $_POST['_wpcf7_validation_errors'] ) ) {
+ $class .= ' invalid';
+ } elseif ( ! empty( $_POST['_wpcf7_mail_sent'] ) ) {
+ if ( ! empty( $_POST['_wpcf7_mail_sent']['spam'] ) )
+ $class .= ' spam';
+ elseif ( ! empty( $_POST['_wpcf7_mail_sent']['ok'] ) )
+ $class .= ' sent';
+ else
+ $class .= ' failed';
+ }
+ }
+
+ $class = apply_filters( 'wpcf7_form_class_attr', $class );
+
+ $enctype = apply_filters( 'wpcf7_form_enctype', '' );
+
+ $form .= '';
+
+ $form .= '
';
+
+ return $form;
+ }
+
+ function form_hidden_fields() {
+ $hidden_fields = array(
+ '_wpcf7' => $this->id,
+ '_wpcf7_version' => WPCF7_VERSION,
+ '_wpcf7_unit_tag' => $this->unit_tag );
+
+ if ( WPCF7_VERIFY_NONCE )
+ $hidden_fields['_wpnonce'] = wpcf7_create_nonce( $this->unit_tag );
+
+ $content = '';
+
+ foreach ( $hidden_fields as $name => $value ) {
+ $content .= '' . "\n";
+ }
+
+ return '' . "\n" . $content . '
' . "\n";
+ }
+
+ function form_response_output() {
+ $class = 'wpcf7-response-output';
+ $content = '';
+
+ if ( $this->is_posted() ) { // Post response output for non-AJAX
+ if ( isset( $_POST['_wpcf7_mail_sent'] ) && $_POST['_wpcf7_mail_sent']['id'] == $this->id ) {
+ if ( $_POST['_wpcf7_mail_sent']['ok'] ) {
+ $class .= ' wpcf7-mail-sent-ok';
+ $content = $_POST['_wpcf7_mail_sent']['message'];
+ } else {
+ $class .= ' wpcf7-mail-sent-ng';
+ if ( $_POST['_wpcf7_mail_sent']['spam'] )
+ $class .= ' wpcf7-spam-blocked';
+ $content = $_POST['_wpcf7_mail_sent']['message'];
+ }
+ } elseif ( isset( $_POST['_wpcf7_validation_errors'] ) && $_POST['_wpcf7_validation_errors']['id'] == $this->id ) {
+ $class .= ' wpcf7-validation-errors';
+ $content = $this->message( 'validation_error' );
+ }
+ } else {
+ $class .= ' wpcf7-display-none';
+ }
+
+ $class = ' class="' . $class . '"';
+
+ return '' . $content . '
';
+ }
+
+ function validation_error( $name ) {
+ if ( ! $this->is_posted() )
+ return '';
+
+ if ( ! isset( $_POST['_wpcf7_validation_errors']['messages'][$name] ) )
+ return '';
+
+ $ve = trim( $_POST['_wpcf7_validation_errors']['messages'][$name] );
+
+ if ( ! empty( $ve ) ) {
+ $ve = '' . esc_html( $ve ) . '';
+ return apply_filters( 'wpcf7_validation_error', $ve, $name, $this );
+ }
+
+ return '';
+ }
+
+ /* Form Elements */
+
+ function form_do_shortcode() {
+ global $wpcf7_shortcode_manager;
+
+ $form = $this->form;
+
+ if ( WPCF7_AUTOP ) {
+ $form = $wpcf7_shortcode_manager->normalize_shortcode( $form );
+ $form = wpcf7_autop( $form );
+ }
+
+ $form = $wpcf7_shortcode_manager->do_shortcode( $form );
+ $this->scanned_form_tags = $wpcf7_shortcode_manager->scanned_tags;
+
+ return $form;
+ }
+
+ function form_scan_shortcode( $cond = null ) {
+ global $wpcf7_shortcode_manager;
+
+ if ( ! empty( $this->scanned_form_tags ) ) {
+ $scanned = $this->scanned_form_tags;
+ } else {
+ $scanned = $wpcf7_shortcode_manager->scan_shortcode( $this->form );
+ $this->scanned_form_tags = $scanned;
+ }
+
+ if ( empty( $scanned ) )
+ return null;
+
+ if ( ! is_array( $cond ) || empty( $cond ) )
+ return $scanned;
+
+ for ( $i = 0, $size = count( $scanned ); $i < $size; $i++ ) {
+
+ if ( isset( $cond['type'] ) ) {
+ if ( is_string( $cond['type'] ) && ! empty( $cond['type'] ) ) {
+ if ( $scanned[$i]['type'] != $cond['type'] ) {
+ unset( $scanned[$i] );
+ continue;
+ }
+ } elseif ( is_array( $cond['type'] ) ) {
+ if ( ! in_array( $scanned[$i]['type'], $cond['type'] ) ) {
+ unset( $scanned[$i] );
+ continue;
+ }
+ }
+ }
+
+ if ( isset( $cond['name'] ) ) {
+ if ( is_string( $cond['name'] ) && ! empty( $cond['name'] ) ) {
+ if ( $scanned[$i]['name'] != $cond['name'] ) {
+ unset ( $scanned[$i] );
+ continue;
+ }
+ } elseif ( is_array( $cond['name'] ) ) {
+ if ( ! in_array( $scanned[$i]['name'], $cond['name'] ) ) {
+ unset( $scanned[$i] );
+ continue;
+ }
+ }
+ }
+ }
+
+ return array_values( $scanned );
+ }
+
+ function form_elements() {
+ return apply_filters( 'wpcf7_form_elements', $this->form_do_shortcode() );
+ }
+
+ function setup_posted_data() {
+ $posted_data = (array) $_POST;
+
+ $fes = $this->form_scan_shortcode();
+
+ foreach ( $fes as $fe ) {
+ if ( empty( $fe['name'] ) )
+ continue;
+
+ $name = $fe['name'];
+ $value = '';
+
+ if ( isset( $posted_data[$name] ) )
+ $value = $posted_data[$name];
+
+ $pipes = $fe['pipes'];
+
+ if ( WPCF7_USE_PIPE && is_a( $pipes, 'WPCF7_Pipes' ) && ! $pipes->zero() ) {
+ if ( is_array( $value) ) {
+ $new_value = array();
+
+ foreach ( $value as $v )
+ $new_value[] = $pipes->do_pipe( stripslashes( $v ) );
+
+ $value = $new_value;
+ } else {
+ $value = $pipes->do_pipe( stripslashes( $value ) );
+ }
+ }
+
+ $posted_data[$name] = $value;
+ }
+
+ $this->posted_data = apply_filters( 'wpcf7_posted_data', $posted_data );
+
+ return $this->posted_data;
+ }
+
+ function submit( $ajax = false ) {
+ $result = array(
+ 'valid' => true,
+ 'invalid_reasons' => array(),
+ 'spam' => false,
+ 'message' => '',
+ 'mail_sent' => false,
+ 'scripts_on_sent_ok' => null );
+
+ $this->setup_posted_data();
+
+ $validation = $this->validate();
+
+ if ( ! $validation['valid'] ) { // Validation error occured
+ $result['valid'] = false;
+ $result['invalid_reasons'] = $validation['reason'];
+ $result['message'] = $this->message( 'validation_error' );
+
+ } elseif ( ! $this->accepted() ) { // Not accepted terms
+ $result['message'] = $this->message( 'accept_terms' );
+
+ } elseif ( $this->spam() ) { // Spam!
+ $result['message'] = $this->message( 'spam' );
+ $result['spam'] = true;
+
+ } elseif ( $this->mail() ) {
+ $result['mail_sent'] = true;
+ $result['message'] = $this->message( 'mail_sent_ok' );
+
+ do_action_ref_array( 'wpcf7_mail_sent', array( &$this ) );
+
+ if ( $ajax ) {
+ $on_sent_ok = $this->additional_setting( 'on_sent_ok', false );
+
+ if ( ! empty( $on_sent_ok ) )
+ $result['scripts_on_sent_ok'] = array_map( 'wpcf7_strip_quote', $on_sent_ok );
+ } else {
+ $this->clear_post();
+ }
+
+ } else {
+ $result['message'] = $this->message( 'mail_sent_ng' );
+ }
+
+ // remove upload files
+ foreach ( (array) $this->uploaded_files as $name => $path ) {
+ @unlink( $path );
+ }
+
+ return $result;
+ }
+
+ /* Validate */
+
+ function validate() {
+ $fes = $this->form_scan_shortcode();
+
+ $result = array( 'valid' => true, 'reason' => array() );
+
+ foreach ( $fes as $fe ) {
+ $result = apply_filters( 'wpcf7_validate_' . $fe['type'], $result, $fe );
+ }
+
+ $result = apply_filters( 'wpcf7_validate', $result );
+
+ return $result;
+ }
+
+ function accepted() {
+ $accepted = true;
+
+ return apply_filters( 'wpcf7_acceptance', $accepted );
+ }
+
+ function spam() {
+ $spam = false;
+
+ if ( WPCF7_VERIFY_NONCE && ! $this->verify_nonce() )
+ $spam = true;
+
+ return apply_filters( 'wpcf7_spam', $spam );
+ }
+
+ function verify_nonce() {
+ return wpcf7_verify_nonce( $_POST['_wpnonce'], $_POST['_wpcf7_unit_tag'] );
+ }
+
+ /* Mail */
+
+ function mail() {
+ if ( $this->in_demo_mode() )
+ $this->skip_mail = true;
+
+ do_action_ref_array( 'wpcf7_before_send_mail', array( &$this ) );
+
+ if ( $this->skip_mail )
+ return true;
+
+ $result = $this->compose_mail( $this->setup_mail_template( $this->mail, 'mail' ) );
+
+ if ( $result ) {
+ $additional_mail = array();
+
+ if ( $this->mail_2['active'] )
+ $additional_mail[] = $this->setup_mail_template( $this->mail_2, 'mail_2' );
+
+ $additional_mail = apply_filters_ref_array( 'wpcf7_additional_mail',
+ array( $additional_mail, &$this ) );
+
+ foreach ( $additional_mail as $mail )
+ $this->compose_mail( $mail );
+
+ return true;
+ }
+
+ return false;
+ }
+
+ function setup_mail_template( $mail_template, $name = '' ) {
+ $defaults = array(
+ 'subject' => '', 'sender' => '', 'body' => '',
+ 'recipient' => '', 'additional_headers' => '',
+ 'attachments' => '', 'use_html' => false );
+
+ $mail_template = wp_parse_args( $mail_template, $defaults );
+
+ $name = trim( $name );
+
+ if ( ! empty( $name ) )
+ $mail_template['name'] = $name;
+
+ return $mail_template;
+ }
+
+ function compose_mail( $mail_template, $send = true ) {
+ $this->mail_template_in_process = $mail_template;
+
+ $regex = '/(\[?)\[\s*([a-zA-Z_][0-9a-zA-Z:._-]*)\s*\](\]?)/';
+
+ $use_html = (bool) $mail_template['use_html'];
+
+ $callback = array( &$this, 'mail_callback' );
+ $callback_html = array( &$this, 'mail_callback_html' );
+
+ $subject = preg_replace_callback( $regex, $callback, $mail_template['subject'] );
+ $sender = preg_replace_callback( $regex, $callback, $mail_template['sender'] );
+ $recipient = preg_replace_callback( $regex, $callback, $mail_template['recipient'] );
+ $additional_headers =
+ preg_replace_callback( $regex, $callback, $mail_template['additional_headers'] );
+
+ if ( $use_html ) {
+ $body = preg_replace_callback( $regex, $callback_html, $mail_template['body'] );
+ $body = wpautop( $body );
+ } else {
+ $body = preg_replace_callback( $regex, $callback, $mail_template['body'] );
+ }
+
+ $attachments = array();
+
+ foreach ( (array) $this->uploaded_files as $name => $path ) {
+ if ( false === strpos( $mail_template['attachments'], "[${name}]" ) || empty( $path ) )
+ continue;
+
+ $attachments[] = $path;
+ }
+
+ $components = compact(
+ 'subject', 'sender', 'body', 'recipient', 'additional_headers', 'attachments' );
+
+ $components = apply_filters_ref_array( 'wpcf7_mail_components',
+ array( $components, &$this ) );
+
+ extract( $components );
+
+ $headers = "From: $sender\n";
+
+ if ( $use_html )
+ $headers .= "Content-Type: text/html\n";
+
+ $headers .= trim( $additional_headers ) . "\n";
+
+ if ( $send )
+ return @wp_mail( $recipient, $subject, $body, $headers, $attachments );
+
+ return compact( 'subject', 'sender', 'body', 'recipient', 'headers', 'attachments' );
+ }
+
+ function mail_callback_html( $matches ) {
+ return $this->mail_callback( $matches, true );
+ }
+
+ function mail_callback( $matches, $html = false ) {
+ // allow [[foo]] syntax for escaping a tag
+ if ( $matches[1] == '[' && $matches[3] == ']' )
+ return substr( $matches[0], 1, -1 );
+
+ if ( isset( $this->posted_data[$matches[2]] ) ) {
+ $submitted = $this->posted_data[$matches[2]];
+
+ if ( is_array( $submitted ) )
+ $replaced = join( ', ', $submitted );
+ else
+ $replaced = $submitted;
+
+ if ( $html ) {
+ $replaced = strip_tags( $replaced );
+ $replaced = wptexturize( $replaced );
+ }
+
+ $replaced = apply_filters( 'wpcf7_mail_tag_replaced', $replaced, $submitted );
+
+ return stripslashes( $replaced );
+ }
+
+ if ( $special = apply_filters( 'wpcf7_special_mail_tags', '', $matches[2] ) )
+ return $special;
+
+ return $matches[0];
+ }
+
+ /* Message */
+
+ function message( $status ) {
+ $messages = $this->messages;
+ $message = isset( $messages[$status] ) ? $messages[$status] : '';
+
+ return apply_filters( 'wpcf7_display_message', $message, $status );
+ }
+
+ /* Additional settings */
+
+ function additional_setting( $name, $max = 1 ) {
+ $tmp_settings = (array) explode( "\n", $this->additional_settings );
+
+ $count = 0;
+ $values = array();
+
+ foreach ( $tmp_settings as $setting ) {
+ if ( preg_match('/^([a-zA-Z0-9_]+)[\t ]*:(.*)$/', $setting, $matches ) ) {
+ if ( $matches[1] != $name )
+ continue;
+
+ if ( ! $max || $count < (int) $max ) {
+ $values[] = trim( $matches[2] );
+ $count += 1;
+ }
+ }
+ }
+
+ return $values;
+ }
+
+ function in_demo_mode() {
+ $settings = $this->additional_setting( 'demo_mode', false );
+
+ foreach ( $settings as $setting ) {
+ if ( in_array( $setting, array( 'on', 'true', '1' ) ) )
+ return true;
+ }
+
+ return false;
+ }
+
+ /* Upgrade */
+
+ function upgrade() {
+ if ( ! isset( $this->mail['recipient'] ) )
+ $this->mail['recipient'] = get_option( 'admin_email' );
+
+
+ if ( ! is_array( $this->messages ) )
+ $this->messages = array();
+
+
+ foreach ( wpcf7_messages() as $key => $arr ) {
+ if ( ! isset( $this->messages[$key] ) )
+ $this->messages[$key] = $arr['default'];
+ }
+ }
+
+ /* Save */
+
+ function save() {
+ $metas = array( 'form', 'mail', 'mail_2', 'messages', 'additional_settings' );
+
+ $post_content = '';
+
+ foreach ( $metas as $meta ) {
+ $props = (array) $this->{$meta};
+
+ foreach ( $props as $prop )
+ $post_content .= "\n" . trim( $prop );
+ }
+
+ if ( $this->initial ) {
+ $post_id = wp_insert_post( array(
+ 'post_type' => self::post_type,
+ 'post_status' => 'publish',
+ 'post_title' => $this->title,
+ 'post_content' => trim( $post_content ) ) );
+ } else {
+ $post_id = wp_update_post( array(
+ 'ID' => (int) $this->id,
+ 'post_status' => 'publish',
+ 'post_title' => $this->title,
+ 'post_content' => trim( $post_content ) ) );
+ }
+
+ if ( $post_id ) {
+ foreach ( $metas as $meta )
+ update_post_meta( $post_id, $meta, wpcf7_normalize_newline_deep( $this->{$meta} ) );
+
+ if ( $this->initial ) {
+ $this->initial = false;
+ $this->id = $post_id;
+ do_action_ref_array( 'wpcf7_after_create', array( &$this ) );
+ } else {
+ do_action_ref_array( 'wpcf7_after_update', array( &$this ) );
+ }
+
+ do_action_ref_array( 'wpcf7_after_save', array( &$this ) );
+ }
+
+ return $post_id;
+ }
+
+ function copy() {
+ $new = new WPCF7_ContactForm();
+ $new->initial = true;
+ $new->title = $this->title . '_copy';
+
+ $new->form = $this->form;
+ $new->mail = $this->mail;
+ $new->mail_2 = $this->mail_2;
+ $new->messages = $this->messages;
+ $new->additional_settings = $this->additional_settings;
+
+ $new = apply_filters_ref_array( 'wpcf7_copy', array( &$new, &$this ) );
+
+ return $new;
+ }
+
+ function delete() {
+ if ( $this->initial )
+ return;
+
+ if ( wp_delete_post( $this->id, true ) ) {
+ $this->initial = true;
+ $this->id = null;
+ return true;
+ }
+
+ return false;
+ }
+}
+
+function wpcf7_contact_form( $id ) {
+ $contact_form = new WPCF7_ContactForm( $id );
+
+ if ( $contact_form->initial )
+ return false;
+
+ return $contact_form;
+}
+
+function wpcf7_get_contact_form_by_old_id( $old_id ) {
+ global $wpdb;
+
+ $q = "SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_old_cf7_unit_id'"
+ . $wpdb->prepare( " AND meta_value = %d", $old_id );
+
+ if ( $new_id = $wpdb->get_var( $q ) )
+ return wpcf7_contact_form( $new_id );
+}
+
+function wpcf7_get_contact_form_by_title( $title ) {
+ $page = get_page_by_title( $title, OBJECT, WPCF7_ContactForm::post_type );
+
+ if ( $page )
+ return wpcf7_contact_form( $page->ID );
+
+ return null;
+}
+
+function wpcf7_get_contact_form_default_pack( $args = '' ) {
+ global $l10n;
+
+ $defaults = array( 'locale' => null, 'title' => '' );
+ $args = wp_parse_args( $args, $defaults );
+
+ $locale = $args['locale'];
+ $title = $args['title'];
+
+ if ( $locale && $locale != get_locale() ) {
+ $mo_orig = $l10n['wpcf7'];
+ unset( $l10n['wpcf7'] );
+
+ if ( 'en_US' != $locale ) {
+ $mofile = wpcf7_plugin_path( 'languages/wpcf7-' . $locale . '.mo' );
+ if ( ! load_textdomain( 'wpcf7', $mofile ) ) {
+ $l10n['wpcf7'] = $mo_orig;
+ unset( $mo_orig );
+ }
+ }
+ }
+
+ $contact_form = new WPCF7_ContactForm();
+ $contact_form->initial = true;
+
+ $contact_form->title = ( $title ? $title : __( 'Untitled', 'wpcf7' ) );
+
+ $contact_form->form = wpcf7_get_default_template( 'form' );
+ $contact_form->mail = wpcf7_get_default_template( 'mail' );
+ $contact_form->mail_2 = wpcf7_get_default_template( 'mail_2' );
+ $contact_form->messages = wpcf7_get_default_template( 'messages' );
+ $contact_form->additional_settings = wpcf7_get_default_template( 'additional_settings' );
+
+ if ( isset( $mo_orig ) )
+ $l10n['wpcf7'] = $mo_orig;
+
+ $contact_form = apply_filters_ref_array( 'wpcf7_contact_form_default_pack',
+ array( &$contact_form, $args ) );
+
+ return $contact_form;
+}
+
+function wpcf7_get_current_contact_form() {
+ global $wpcf7_contact_form;
+
+ if ( ! is_a( $wpcf7_contact_form, 'WPCF7_ContactForm' ) )
+ return null;
+
+ return $wpcf7_contact_form;
+}
+
+function wpcf7_is_posted() {
+ if ( ! $contact_form = wpcf7_get_current_contact_form() )
+ return false;
+
+ return $contact_form->is_posted();
+}
+
+function wpcf7_get_validation_error( $name ) {
+ if ( ! $contact_form = wpcf7_get_current_contact_form() )
+ return '';
+
+ return $contact_form->validation_error( $name );
+}
+
+function wpcf7_get_message( $status ) {
+ if ( ! $contact_form = wpcf7_get_current_contact_form() )
+ return '';
+
+ return $contact_form->message( $status );
+}
+
+function wpcf7_scan_shortcode( $cond = null ) {
+ if ( ! $contact_form = wpcf7_get_current_contact_form() )
+ return null;
+
+ return $contact_form->form_scan_shortcode( $cond );
+}
+
+function wpcf7_form_controls_class( $type, $default = '' ) {
+ $type = trim( $type );
+ $default = explode( ' ', $default );
+
+ $classes = array_merge( array( 'wpcf7-form-control' ), $default );
+
+ $typebase = rtrim( $type, '*' );
+ $required = ( '*' == substr( $type, -1 ) );
+
+ $classes[] = 'wpcf7-' . $typebase;
+
+ if ( $required )
+ $classes[] = 'wpcf7-validates-as-required';
+
+ $classes = array_unique( $classes );
+
+ return implode( ' ', $classes );
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/includes/controller.php b/wp-content/plugins/contact-form-7/includes/controller.php
new file mode 100644
index 0000000..ac99de1
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/controller.php
@@ -0,0 +1,288 @@
+ false,
+ 'into' => '#' . $unit_tag,
+ 'captcha' => null );
+
+ $result = $wpcf7_contact_form->submit( true );
+
+ if ( ! empty( $result['message'] ) )
+ $items['message'] = $result['message'];
+
+ if ( $result['mail_sent'] )
+ $items['mailSent'] = true;
+
+ if ( ! $result['valid'] ) {
+ $invalids = array();
+
+ foreach ( $result['invalid_reasons'] as $name => $reason ) {
+ $invalids[] = array(
+ 'into' => 'span.wpcf7-form-control-wrap.' . $name,
+ 'message' => $reason );
+ }
+
+ $items['invalids'] = $invalids;
+ }
+
+ if ( $result['spam'] )
+ $items['spam'] = true;
+
+ if ( ! empty( $result['scripts_on_sent_ok'] ) )
+ $items['onSentOk'] = $result['scripts_on_sent_ok'];
+
+ $items = apply_filters( 'wpcf7_ajax_json_echo', $items, $result );
+
+ $wpcf7_contact_form = null;
+ }
+ }
+
+ $echo = json_encode( $items );
+
+ if ( wpcf7_is_xhr() ) {
+ @header( 'Content-Type: application/json; charset=' . get_option( 'blog_charset' ) );
+ echo $echo;
+ } else {
+ @header( 'Content-Type: text/html; charset=' . get_option( 'blog_charset' ) );
+ echo '';
+ }
+
+ exit();
+}
+
+function wpcf7_is_xhr() {
+ if ( ! isset( $_SERVER['HTTP_X_REQUESTED_WITH'] ) )
+ return false;
+
+ return $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest';
+}
+
+function wpcf7_submit_nonajax() {
+ global $wpcf7_contact_form;
+
+ if ( ! isset( $_POST['_wpcf7'] ) )
+ return;
+
+ $id = (int) $_POST['_wpcf7'];
+
+ if ( $wpcf7_contact_form = wpcf7_contact_form( $id ) ) {
+ $result = $wpcf7_contact_form->submit();
+
+ if ( ! $result['valid'] ) {
+ $_POST['_wpcf7_validation_errors'] = array(
+ 'id' => $id,
+ 'messages' => $result['invalid_reasons'] );
+ } else {
+ $_POST['_wpcf7_mail_sent'] = array(
+ 'id' => $id,
+ 'ok' => $result['mail_sent'],
+ 'message' => $result['message'],
+ 'spam' => $result['spam'] );
+ }
+
+ $wpcf7_contact_form = null;
+ }
+}
+
+add_action( 'the_post', 'wpcf7_the_post' );
+
+function wpcf7_the_post() {
+ global $wpcf7;
+
+ $wpcf7->processing_within = 'p' . get_the_ID();
+ $wpcf7->unit_count = 0;
+}
+
+add_action( 'loop_end', 'wpcf7_loop_end' );
+
+function wpcf7_loop_end() {
+ global $wpcf7;
+
+ $wpcf7->processing_within = '';
+}
+
+add_filter( 'widget_text', 'wpcf7_widget_text_filter', 9 );
+
+function wpcf7_widget_text_filter( $content ) {
+ global $wpcf7;
+
+ if ( ! preg_match( '/\[[\r\n\t ]*contact-form(-7)?[\r\n\t ].*?\]/', $content ) )
+ return $content;
+
+ $wpcf7->widget_count += 1;
+ $wpcf7->processing_within = 'w' . $wpcf7->widget_count;
+ $wpcf7->unit_count = 0;
+
+ $content = do_shortcode( $content );
+
+ $wpcf7->processing_within = '';
+
+ return $content;
+}
+
+/* Shortcodes */
+
+add_action( 'plugins_loaded', 'wpcf7_add_shortcodes', 1 );
+
+function wpcf7_add_shortcodes() {
+ add_shortcode( 'contact-form-7', 'wpcf7_contact_form_tag_func' );
+ add_shortcode( 'contact-form', 'wpcf7_contact_form_tag_func' );
+}
+
+function wpcf7_contact_form_tag_func( $atts, $content = null, $code = '' ) {
+ global $wpcf7, $wpcf7_contact_form;
+
+ if ( is_feed() )
+ return '[contact-form-7]';
+
+ if ( 'contact-form-7' == $code ) {
+ $atts = shortcode_atts( array( 'id' => 0, 'title' => '' ), $atts );
+
+ $id = (int) $atts['id'];
+ $title = trim( $atts['title'] );
+
+ if ( ! $wpcf7_contact_form = wpcf7_contact_form( $id ) )
+ $wpcf7_contact_form = wpcf7_get_contact_form_by_title( $title );
+
+ } else {
+ if ( is_string( $atts ) )
+ $atts = explode( ' ', $atts, 2 );
+
+ $id = (int) array_shift( $atts );
+ $wpcf7_contact_form = wpcf7_get_contact_form_by_old_id( $id );
+ }
+
+ if ( ! $wpcf7_contact_form )
+ return '[contact-form-7 404 "Not Found"]';
+
+ if ( $wpcf7->processing_within ) { // Inside post content or text widget
+ $wpcf7->unit_count += 1;
+ $unit_count = $wpcf7->unit_count;
+ $processing_within = $wpcf7->processing_within;
+
+ } else { // Inside template
+
+ if ( ! isset( $wpcf7->global_unit_count ) )
+ $wpcf7->global_unit_count = 0;
+
+ $wpcf7->global_unit_count += 1;
+ $unit_count = 1;
+ $processing_within = 't' . $wpcf7->global_unit_count;
+ }
+
+ $unit_tag = 'wpcf7-f' . $wpcf7_contact_form->id . '-' . $processing_within . '-o' . $unit_count;
+ $wpcf7_contact_form->unit_tag = $unit_tag;
+
+ $form = $wpcf7_contact_form->form_html();
+
+ $wpcf7_contact_form = null;
+
+ return $form;
+}
+
+if ( WPCF7_LOAD_JS )
+ add_action( 'wp_enqueue_scripts', 'wpcf7_enqueue_scripts' );
+
+function wpcf7_enqueue_scripts() {
+ // jquery.form.js originally bundled with WordPress is out of date and deprecated
+ // so we need to deregister it and re-register the latest one
+ wp_deregister_script( 'jquery-form' );
+ wp_register_script( 'jquery-form',
+ wpcf7_plugin_url( 'includes/js/jquery.form.js' ),
+ array( 'jquery' ), '3.14', true );
+
+ $in_footer = true;
+ if ( 'header' === WPCF7_LOAD_JS )
+ $in_footer = false;
+
+ wp_enqueue_script( 'contact-form-7',
+ wpcf7_plugin_url( 'includes/js/scripts.js' ),
+ array( 'jquery', 'jquery-form' ), WPCF7_VERSION, $in_footer );
+
+ $_wpcf7 = array(
+ 'loaderUrl' => wpcf7_ajax_loader(),
+ 'sending' => __( 'Sending ...', 'wpcf7' ) );
+
+ if ( defined( 'WP_CACHE' ) && WP_CACHE )
+ $_wpcf7['cached'] = 1;
+
+ wp_localize_script( 'contact-form-7', '_wpcf7', $_wpcf7 );
+
+ do_action( 'wpcf7_enqueue_scripts' );
+}
+
+function wpcf7_script_is() {
+ return wp_script_is( 'contact-form-7' );
+}
+
+if ( WPCF7_LOAD_CSS )
+ add_action( 'wp_enqueue_scripts', 'wpcf7_enqueue_styles' );
+
+function wpcf7_enqueue_styles() {
+ wp_enqueue_style( 'contact-form-7',
+ wpcf7_plugin_url( 'includes/css/styles.css' ),
+ array(), WPCF7_VERSION, 'all' );
+
+ if ( wpcf7_is_rtl() ) {
+ wp_enqueue_style( 'contact-form-7-rtl',
+ wpcf7_plugin_url( 'includes/css/styles-rtl.css' ),
+ array(), WPCF7_VERSION, 'all' );
+ }
+
+ do_action( 'wpcf7_enqueue_styles' );
+}
+
+function wpcf7_style_is() {
+ return wp_style_is( 'contact-form-7' );
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/includes/css/styles-rtl.css b/wp-content/plugins/contact-form-7/includes/css/styles-rtl.css
new file mode 100644
index 0000000..b41afbd
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/css/styles-rtl.css
@@ -0,0 +1,12 @@
+span.wpcf7-not-valid-tip {
+ left: auto;
+ right: 20%;
+ direction: rtl;
+}
+span.wpcf7-not-valid-tip-no-ajax {
+ direction: rtl;
+}
+span.wpcf7-list-item {
+ margin-left: 0;
+ margin-right: 0.5em;
+}
diff --git a/wp-content/plugins/contact-form-7/includes/css/styles.css b/wp-content/plugins/contact-form-7/includes/css/styles.css
new file mode 100644
index 0000000..73e5096
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/css/styles.css
@@ -0,0 +1,65 @@
+div.wpcf7 {
+ margin: 0;
+ padding: 0;
+}
+
+div.wpcf7-response-output {
+ margin: 2em 0.5em 1em;
+ padding: 0.2em 1em;
+}
+
+div.wpcf7-mail-sent-ok {
+ border: 2px solid #398f14;
+}
+
+div.wpcf7-mail-sent-ng {
+ border: 2px solid #ff0000;
+}
+
+div.wpcf7-spam-blocked {
+ border: 2px solid #ffa500;
+}
+
+div.wpcf7-validation-errors {
+ border: 2px solid #f7e700;
+}
+
+span.wpcf7-form-control-wrap {
+ position: relative;
+}
+
+span.wpcf7-not-valid-tip {
+ position: absolute;
+ top: 20%;
+ left: 20%;
+ z-index: 100;
+ background: #fff;
+ border: 1px solid #ff0000;
+ font-size: 10pt;
+ width: 280px;
+ padding: 2px;
+}
+
+span.wpcf7-not-valid-tip-no-ajax {
+ color: #f00;
+ font-size: 10pt;
+ display: block;
+}
+
+span.wpcf7-list-item {
+ margin-left: 0.5em;
+}
+
+.wpcf7-display-none {
+ display: none;
+}
+
+div.wpcf7 img.ajax-loader {
+ border: none;
+ vertical-align: middle;
+ margin-left: 4px;
+}
+
+div.wpcf7 .watermark {
+ color: #888;
+}
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/includes/deprecated.php b/wp-content/plugins/contact-form-7/includes/deprecated.php
new file mode 100644
index 0000000..d712428
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/deprecated.php
@@ -0,0 +1,26 @@
+ 'wpcf7' );
+ $args = wp_parse_args( $args, $defaults );
+
+ $url = menu_page_url( $args['page'], false );
+ unset( $args['page'] );
+
+ $url = add_query_arg( $args, $url );
+
+ return esc_url_raw( $url );
+}
+
+function wpcf7_contact_form_default_pack( $locale = null ) {
+ wpcf7_deprecated_function( __FUNCTION__, '3.0', 'wpcf7_get_contact_form_default_pack()' );
+
+ return wpcf7_get_contact_form_default_pack( array( 'locale' => $locale ) );
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/includes/formatting.php b/wp-content/plugins/contact-form-7/includes/formatting.php
new file mode 100644
index 0000000..3add7d1
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/formatting.php
@@ -0,0 +1,121 @@
+\s*
|', "\n\n", $pee );
+ // Space things out a little
+ /* wpcf7: remove select and input */
+ $allblocks = '(?:table|thead|tfoot|caption|col|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|form|map|area|blockquote|address|math|style|p|h[1-6]|hr|fieldset|legend|section|article|aside|hgroup|header|footer|nav|figure|figcaption|details|menu|summary)';
+ $pee = preg_replace( '!(<' . $allblocks . '[^>]*>)!', "\n$1", $pee );
+ $pee = preg_replace( '!(' . $allblocks . '>)!', "$1\n\n", $pee );
+ $pee = str_replace( array( "\r\n", "\r" ), "\n", $pee ); // cross-platform newlines
+ if ( strpos( $pee, '', '', $pee );
+ $pee = preg_replace( '!\s*(?' . $allblocks . '[^>]*>)!', "$1", $pee );
+ $pee = preg_replace( '!(?' . $allblocks . '[^>]*>)\s*
!', "$1", $pee );
+ if ( $br ) {
+ /* wpcf7: add textarea */
+ $pee = preg_replace_callback( '/<(script|style|textarea).*?<\/\\1>/s', create_function( '$matches', 'return str_replace("\n", "", $matches[0]);' ), $pee );
+ $pee = preg_replace( '|(?)\s*\n|', "
\n", $pee ); // optionally make line breaks
+ $pee = str_replace( '', "\n", $pee );
+ }
+ $pee = preg_replace( '!(?' . $allblocks . '[^>]*>)\s*
!', "$1", $pee );
+ $pee = preg_replace( '!
(\s*?(?:p|li|div|dl|dd|dt|th|pre|td|ul|ol)[^>]*>)!', '$1', $pee );
+ if ( strpos( $pee, ']*>)(.*?)
!is', 'clean_pre', $pee );
+ $pee = preg_replace( "|\n$|", '', $pee );
+
+ return $pee;
+}
+
+function wpcf7_strip_quote( $text ) {
+ $text = trim( $text );
+
+ if ( preg_match( '/^"(.*)"$/', $text, $matches ) )
+ $text = $matches[1];
+ elseif ( preg_match( "/^'(.*)'$/", $text, $matches ) )
+ $text = $matches[1];
+
+ return $text;
+}
+
+function wpcf7_strip_quote_deep( $arr ) {
+ if ( is_string( $arr ) )
+ return wpcf7_strip_quote( $arr );
+
+ if ( is_array( $arr ) ) {
+ $result = array();
+
+ foreach ( $arr as $key => $text )
+ $result[$key] = wpcf7_strip_quote_deep( $text );
+
+ return $result;
+ }
+}
+
+function wpcf7_normalize_newline( $text, $to = "\n" ) {
+ if ( ! is_string( $text ) )
+ return $text;
+
+ $nls = array( "\r\n", "\r", "\n" );
+
+ if ( ! in_array( $to, $nls ) )
+ return $text;
+
+ return str_replace( $nls, $to, $text );
+}
+
+function wpcf7_normalize_newline_deep( $arr, $to = "\n" ) {
+ if ( is_array( $arr ) ) {
+ $result = array();
+
+ foreach ( $arr as $key => $text )
+ $result[$key] = wpcf7_normalize_newline_deep( $text, $to );
+
+ return $result;
+ }
+
+ return wpcf7_normalize_newline( $arr, $to );
+}
+
+function wpcf7_canonicalize( $text ) {
+ if ( function_exists( 'mb_convert_kana' ) && 'UTF-8' == get_option( 'blog_charset' ) )
+ $text = mb_convert_kana( $text, 'asKV', 'UTF-8' );
+
+ $text = strtolower( $text );
+ $text = trim( $text );
+ return $text;
+}
+
+function wpcf7_is_name( $string ) {
+ // See http://www.w3.org/TR/html401/types.html#h-6.2
+ // ID and NAME tokens must begin with a letter ([A-Za-z])
+ // and may be followed by any number of letters, digits ([0-9]),
+ // hyphens ("-"), underscores ("_"), colons (":"), and periods (".").
+
+ return preg_match( '/^[A-Za-z][-A-Za-z0-9_:.]*$/', $string );
+}
+
+function wpcf7_sanitize_unit_tag( $tag ) {
+ $tag = preg_replace( '/[^A-Za-z0-9_-]/', '', $tag );
+ return $tag;
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/includes/functions.php b/wp-content/plugins/contact-form-7/includes/functions.php
new file mode 100644
index 0000000..90ba6cf
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/functions.php
@@ -0,0 +1,293 @@
+deprecated since Contact Form 7 version %2$s! Use %3$s instead.', 'wpcf7' ), $function, $version, $replacement ) );
+ else
+ trigger_error( sprintf( __( '%1$s is deprecated since Contact Form 7 version %2$s with no alternative available.', 'wpcf7' ), $function, $version ) );
+ }
+}
+
+function wpcf7_messages() {
+ $messages = array(
+ 'mail_sent_ok' => array(
+ 'description' => __( "Sender's message was sent successfully", 'wpcf7' ),
+ 'default' => __( 'Your message was sent successfully. Thanks.', 'wpcf7' )
+ ),
+
+ 'mail_sent_ng' => array(
+ 'description' => __( "Sender's message was failed to send", 'wpcf7' ),
+ 'default' => __( 'Failed to send your message. Please try later or contact the administrator by another method.', 'wpcf7' )
+ ),
+
+ 'validation_error' => array(
+ 'description' => __( "Validation errors occurred", 'wpcf7' ),
+ 'default' => __( 'Validation errors occurred. Please confirm the fields and submit it again.', 'wpcf7' )
+ ),
+
+ 'accept_terms' => array(
+ 'description' => __( "There are terms that the sender must accept", 'wpcf7' ),
+ 'default' => __( 'Please accept the terms to proceed.', 'wpcf7' )
+ ),
+
+ 'invalid_email' => array(
+ 'description' => __( "Email address that the sender entered is invalid", 'wpcf7' ),
+ 'default' => __( 'Email address seems invalid.', 'wpcf7' )
+ ),
+
+ 'invalid_required' => array(
+ 'description' => __( "There is a field that the sender must fill in", 'wpcf7' ),
+ 'default' => __( 'Please fill the required field.', 'wpcf7' )
+ )
+ );
+
+ return apply_filters( 'wpcf7_messages', $messages );
+}
+
+function wpcf7_get_default_template( $prop = 'form' ) {
+ if ( 'form' == $prop )
+ $template = wpcf7_default_form_template();
+ elseif ( 'mail' == $prop )
+ $template = wpcf7_default_mail_template();
+ elseif ( 'mail_2' == $prop )
+ $template = wpcf7_default_mail_2_template();
+ elseif ( 'messages' == $prop )
+ $template = wpcf7_default_messages_template();
+ else
+ $template = null;
+
+ return apply_filters( 'wpcf7_default_template', $template, $prop );
+}
+
+function wpcf7_default_form_template() {
+ $template =
+ '' . __( 'Your Name', 'wpcf7' ) . ' ' . __( '(required)', 'wpcf7' ) . '
' . "\n"
+ . ' [text* your-name]
' . "\n\n"
+ . '' . __( 'Your Email', 'wpcf7' ) . ' ' . __( '(required)', 'wpcf7' ) . '
' . "\n"
+ . ' [email* your-email]
' . "\n\n"
+ . '' . __( 'Subject', 'wpcf7' ) . '
' . "\n"
+ . ' [text your-subject]
' . "\n\n"
+ . '' . __( 'Your Message', 'wpcf7' ) . '
' . "\n"
+ . ' [textarea your-message]
' . "\n\n"
+ . '[submit "' . __( 'Send', 'wpcf7' ) . '"]
';
+
+ return $template;
+}
+
+function wpcf7_default_mail_template() {
+ $subject = '[your-subject]';
+ $sender = '[your-name] <[your-email]>';
+ $body = sprintf( __( 'From: %s', 'wpcf7' ), '[your-name] <[your-email]>' ) . "\n"
+ . sprintf( __( 'Subject: %s', 'wpcf7' ), '[your-subject]' ) . "\n\n"
+ . __( 'Message Body:', 'wpcf7' ) . "\n" . '[your-message]' . "\n\n" . '--' . "\n"
+ . sprintf( __( 'This mail is sent via contact form on %1$s %2$s', 'wpcf7' ),
+ get_bloginfo( 'name' ), get_bloginfo( 'url' ) );
+ $recipient = get_option( 'admin_email' );
+ $additional_headers = '';
+ $attachments = '';
+ $use_html = 0;
+ return compact( 'subject', 'sender', 'body', 'recipient', 'additional_headers', 'attachments', 'use_html' );
+}
+
+function wpcf7_default_mail_2_template() {
+ $active = false;
+ $subject = '[your-subject]';
+ $sender = '[your-name] <[your-email]>';
+ $body = __( 'Message body:', 'wpcf7' ) . "\n" . '[your-message]' . "\n\n" . '--' . "\n"
+ . sprintf( __( 'This mail is sent via contact form on %1$s %2$s', 'wpcf7' ),
+ get_bloginfo( 'name' ), get_bloginfo( 'url' ) );
+ $recipient = '[your-email]';
+ $additional_headers = '';
+ $attachments = '';
+ $use_html = 0;
+ return compact( 'active', 'subject', 'sender', 'body', 'recipient', 'additional_headers', 'attachments', 'use_html' );
+}
+
+function wpcf7_default_messages_template() {
+ $messages = array();
+
+ foreach ( wpcf7_messages() as $key => $arr ) {
+ $messages[$key] = $arr['default'];
+ }
+
+ return $messages;
+}
+
+function wpcf7_upload_dir( $type = false ) {
+ global $switched;
+
+ $siteurl = get_option( 'siteurl' );
+ $upload_path = trim( get_option( 'upload_path' ) );
+
+ $main_override = is_multisite() && defined( 'MULTISITE' ) && is_main_site();
+
+ if ( empty( $upload_path ) ) {
+ $dir = WP_CONTENT_DIR . '/uploads';
+ } else {
+ $dir = $upload_path;
+
+ if ( 'wp-content/uploads' == $upload_path ) {
+ $dir = WP_CONTENT_DIR . '/uploads';
+ } elseif ( 0 !== strpos( $dir, ABSPATH ) ) {
+ // $dir is absolute, $upload_path is (maybe) relative to ABSPATH
+ $dir = path_join( ABSPATH, $dir );
+ }
+ }
+
+ if ( ! $url = get_option( 'upload_url_path' ) ) {
+ if ( empty( $upload_path )
+ || ( 'wp-content/uploads' == $upload_path )
+ || ( $upload_path == $dir ) )
+ $url = WP_CONTENT_URL . '/uploads';
+ else
+ $url = trailingslashit( $siteurl ) . $upload_path;
+ }
+
+ if ( defined( 'UPLOADS' ) && ! $main_override
+ && ( ! isset( $switched ) || $switched === false ) ) {
+ $dir = ABSPATH . UPLOADS;
+ $url = trailingslashit( $siteurl ) . UPLOADS;
+ }
+
+ if ( is_multisite() && ! $main_override
+ && ( ! isset( $switched ) || $switched === false ) ) {
+
+ if ( defined( 'BLOGUPLOADDIR' ) )
+ $dir = untrailingslashit( BLOGUPLOADDIR );
+
+ $url = str_replace( UPLOADS, 'files', $url );
+ }
+
+ $uploads = apply_filters( 'wpcf7_upload_dir', array( 'dir' => $dir, 'url' => $url ) );
+
+ if ( 'dir' == $type )
+ return $uploads['dir'];
+ if ( 'url' == $type )
+ return $uploads['url'];
+
+ return $uploads;
+}
+
+function wpcf7_l10n() {
+ $l10n = array(
+ 'af' => __( 'Afrikaans', 'wpcf7' ),
+ 'sq' => __( 'Albanian', 'wpcf7' ),
+ 'ar' => __( 'Arabic', 'wpcf7' ),
+ 'hy_AM' => __( 'Armenian', 'wpcf7' ),
+ 'az_AZ' => __( 'Azerbaijani', 'wpcf7' ),
+ 'bn_BD' => __( 'Bangla', 'wpcf7' ),
+ 'eu' => __( 'Basque', 'wpcf7' ),
+ 'be_BY' => __( 'Belarusian', 'wpcf7' ),
+ 'bs' => __( 'Bosnian', 'wpcf7' ),
+ 'pt_BR' => __( 'Brazilian Portuguese', 'wpcf7' ),
+ 'bg_BG' => __( 'Bulgarian', 'wpcf7' ),
+ 'ca' => __( 'Catalan', 'wpcf7' ),
+ 'zh_CN' => __( 'Chinese (Simplified)', 'wpcf7' ),
+ 'zh_TW' => __( 'Chinese (Traditional)', 'wpcf7' ),
+ 'hr' => __( 'Croatian', 'wpcf7' ),
+ 'cs_CZ' => __( 'Czech', 'wpcf7' ),
+ 'da_DK' => __( 'Danish', 'wpcf7' ),
+ 'nl_NL' => __( 'Dutch', 'wpcf7' ),
+ 'en_US' => __( 'English', 'wpcf7' ),
+ 'eo_EO' => __( 'Esperanto', 'wpcf7' ),
+ 'et' => __( 'Estonian', 'wpcf7' ),
+ 'fi' => __( 'Finnish', 'wpcf7' ),
+ 'fr_FR' => __( 'French', 'wpcf7' ),
+ 'gl_ES' => __( 'Galician', 'wpcf7' ),
+ 'ka_GE' => __( 'Georgian', 'wpcf7' ),
+ 'de_DE' => __( 'German', 'wpcf7' ),
+ 'el' => __( 'Greek', 'wpcf7' ),
+ 'he_IL' => __( 'Hebrew', 'wpcf7' ),
+ 'hi_IN' => __( 'Hindi', 'wpcf7' ),
+ 'hu_HU' => __( 'Hungarian', 'wpcf7' ),
+ 'id_ID' => __( 'Indonesian', 'wpcf7' ),
+ 'it_IT' => __( 'Italian', 'wpcf7' ),
+ 'ja' => __( 'Japanese', 'wpcf7' ),
+ 'ko_KR' => __( 'Korean', 'wpcf7' ),
+ 'lv' => __( 'Latvian', 'wpcf7' ),
+ 'lt_LT' => __( 'Lithuanian', 'wpcf7' ),
+ 'mk_MK' => __( 'Macedonian', 'wpcf7' ),
+ 'ms_MY' => __( 'Malay', 'wpcf7' ),
+ 'ml_IN' => __( 'Malayalam', 'wpcf7' ),
+ 'mt_MT' => __( 'Maltese', 'wpcf7' ),
+ 'nb_NO' => __( 'Norwegian', 'wpcf7' ),
+ 'fa_IR' => __( 'Persian', 'wpcf7' ),
+ 'pl_PL' => __( 'Polish', 'wpcf7' ),
+ 'pt_PT' => __( 'Portuguese', 'wpcf7' ),
+ 'ru_RU' => __( 'Russian', 'wpcf7' ),
+ 'ro_RO' => __( 'Romanian', 'wpcf7' ),
+ 'sr_RS' => __( 'Serbian', 'wpcf7' ),
+ 'si_LK' => __( 'Sinhala', 'wpcf7' ),
+ 'sk_SK' => __( 'Slovak', 'wpcf7' ),
+ 'sl_SI' => __( 'Slovene', 'wpcf7' ),
+ 'es_ES' => __( 'Spanish', 'wpcf7' ),
+ 'sv_SE' => __( 'Swedish', 'wpcf7' ),
+ 'ta' => __( 'Tamil', 'wpcf7' ),
+ 'th' => __( 'Thai', 'wpcf7' ),
+ 'tl' => __( 'Tagalog', 'wpcf7' ),
+ 'tr_TR' => __( 'Turkish', 'wpcf7' ),
+ 'uk' => __( 'Ukrainian', 'wpcf7' ),
+ 'vi' => __( 'Vietnamese', 'wpcf7' )
+ );
+
+ return $l10n;
+}
+
+function wpcf7_is_rtl() {
+ if ( function_exists( 'is_rtl' ) )
+ return is_rtl();
+
+ return false;
+}
+
+function wpcf7_ajax_loader() {
+ $url = wpcf7_plugin_url( 'images/ajax-loader.gif' );
+
+ return apply_filters( 'wpcf7_ajax_loader', $url );
+}
+
+/* Nonce functions: wpcf7_verify_nonce() and wpcf7_create_nonce()
+ * For front-end use only.
+ * Almost the same as wp_verify_nonce() and wp_create_nonce() except that $uid is always 0.
+*/
+
+function wpcf7_verify_nonce( $nonce, $action = -1 ) {
+ $i = wp_nonce_tick();
+ $uid = 0;
+
+ // Nonce generated 0-12 hours ago
+ if ( substr( wp_hash( $i . $action . $uid, 'nonce' ), -12, 10 ) == $nonce )
+ return 1;
+
+ // Nonce generated 12-24 hours ago
+ if ( substr( wp_hash( ( $i - 1 ) . $action . $uid, 'nonce' ), -12, 10 ) == $nonce )
+ return 2;
+
+ // Invalid nonce
+ return false;
+}
+
+function wpcf7_create_nonce( $action = -1 ) {
+ $i = wp_nonce_tick();
+ $uid = 0;
+
+ return substr( wp_hash( $i . $action . $uid, 'nonce' ), -12, 10 );
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/includes/js/jquery.form.dev.js b/wp-content/plugins/contact-form-7/includes/js/jquery.form.dev.js
new file mode 100644
index 0000000..13e9a55
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/js/jquery.form.dev.js
@@ -0,0 +1,1089 @@
+/*!
+ * jQuery Form Plugin
+ * version: 3.14 (30-JUL-2012)
+ * @requires jQuery v1.3.2 or later
+ *
+ * Examples and documentation at: http://malsup.com/jquery/form/
+ * Project repository: https://github.com/malsup/form
+ * Dual licensed under the MIT and GPL licenses:
+ * http://malsup.github.com/mit-license.txt
+ * http://malsup.github.com/gpl-license-v2.txt
+ */
+/*global ActiveXObject alert */
+;(function($) {
+"use strict";
+
+/*
+ Usage Note:
+ -----------
+ Do not use both ajaxSubmit and ajaxForm on the same form. These
+ functions are mutually exclusive. Use ajaxSubmit if you want
+ to bind your own submit handler to the form. For example,
+
+ $(document).ready(function() {
+ $('#myForm').on('submit', function(e) {
+ e.preventDefault(); // <-- important
+ $(this).ajaxSubmit({
+ target: '#output'
+ });
+ });
+ });
+
+ Use ajaxForm when you want the plugin to manage all the event binding
+ for you. For example,
+
+ $(document).ready(function() {
+ $('#myForm').ajaxForm({
+ target: '#output'
+ });
+ });
+
+ You can also use ajaxForm with delegation (requires jQuery v1.7+), so the
+ form does not have to exist when you invoke ajaxForm:
+
+ $('#myForm').ajaxForm({
+ delegation: true,
+ target: '#output'
+ });
+
+ When using ajaxForm, the ajaxSubmit function will be invoked for you
+ at the appropriate time.
+*/
+
+/**
+ * Feature detection
+ */
+var feature = {};
+feature.fileapi = $("").get(0).files !== undefined;
+feature.formdata = window.FormData !== undefined;
+
+/**
+ * ajaxSubmit() provides a mechanism for immediately submitting
+ * an HTML form using AJAX.
+ */
+$.fn.ajaxSubmit = function(options) {
+ /*jshint scripturl:true */
+
+ // fast fail if nothing selected (http://dev.jquery.com/ticket/2752)
+ if (!this.length) {
+ log('ajaxSubmit: skipping submit process - no element selected');
+ return this;
+ }
+
+ var method, action, url, $form = this;
+
+ if (typeof options == 'function') {
+ options = { success: options };
+ }
+
+ method = this.attr('method');
+ action = this.attr('action');
+ url = (typeof action === 'string') ? $.trim(action) : '';
+ url = url || window.location.href || '';
+ if (url) {
+ // clean url (don't include hash vaue)
+ url = (url.match(/^([^#]+)/)||[])[1];
+ }
+
+ options = $.extend(true, {
+ url: url,
+ success: $.ajaxSettings.success,
+ type: method || 'GET',
+ iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank'
+ }, options);
+
+ // hook for manipulating the form data before it is extracted;
+ // convenient for use with rich editors like tinyMCE or FCKEditor
+ var veto = {};
+ this.trigger('form-pre-serialize', [this, options, veto]);
+ if (veto.veto) {
+ log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
+ return this;
+ }
+
+ // provide opportunity to alter form data before it is serialized
+ if (options.beforeSerialize && options.beforeSerialize(this, options) === false) {
+ log('ajaxSubmit: submit aborted via beforeSerialize callback');
+ return this;
+ }
+
+ var traditional = options.traditional;
+ if ( traditional === undefined ) {
+ traditional = $.ajaxSettings.traditional;
+ }
+
+ var elements = [];
+ var qx, a = this.formToArray(options.semantic, elements);
+ if (options.data) {
+ options.extraData = options.data;
+ qx = $.param(options.data, traditional);
+ }
+
+ // give pre-submit callback an opportunity to abort the submit
+ if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) {
+ log('ajaxSubmit: submit aborted via beforeSubmit callback');
+ return this;
+ }
+
+ // fire vetoable 'validate' event
+ this.trigger('form-submit-validate', [a, this, options, veto]);
+ if (veto.veto) {
+ log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
+ return this;
+ }
+
+ var q = $.param(a, traditional);
+ if (qx) {
+ q = ( q ? (q + '&' + qx) : qx );
+ }
+ if (options.type.toUpperCase() == 'GET') {
+ options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q;
+ options.data = null; // data is null for 'get'
+ }
+ else {
+ options.data = q; // data is the query string for 'post'
+ }
+
+ var callbacks = [];
+ if (options.resetForm) {
+ callbacks.push(function() { $form.resetForm(); });
+ }
+ if (options.clearForm) {
+ callbacks.push(function() { $form.clearForm(options.includeHidden); });
+ }
+
+ // perform a load on the target only if dataType is not provided
+ if (!options.dataType && options.target) {
+ var oldSuccess = options.success || function(){};
+ callbacks.push(function(data) {
+ var fn = options.replaceTarget ? 'replaceWith' : 'html';
+ $(options.target)[fn](data).each(oldSuccess, arguments);
+ });
+ }
+ else if (options.success) {
+ callbacks.push(options.success);
+ }
+
+ options.success = function(data, status, xhr) { // jQuery 1.4+ passes xhr as 3rd arg
+ var context = options.context || this ; // jQuery 1.4+ supports scope context
+ for (var i=0, max=callbacks.length; i < max; i++) {
+ callbacks[i].apply(context, [data, status, xhr || $form, $form]);
+ }
+ };
+
+ // are there files to upload?
+ var fileInputs = $('input:file:enabled[value]', this); // [value] (issue #113)
+ var hasFileInputs = fileInputs.length > 0;
+ var mp = 'multipart/form-data';
+ var multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp);
+
+ var fileAPI = feature.fileapi && feature.formdata;
+ log("fileAPI :" + fileAPI);
+ var shouldUseFrame = (hasFileInputs || multipart) && !fileAPI;
+
+ // options.iframe allows user to force iframe mode
+ // 06-NOV-09: now defaulting to iframe mode if file input is detected
+ if (options.iframe !== false && (options.iframe || shouldUseFrame)) {
+ // hack to fix Safari hang (thanks to Tim Molendijk for this)
+ // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d
+ if (options.closeKeepAlive) {
+ $.get(options.closeKeepAlive, function() {
+ fileUploadIframe(a);
+ });
+ }
+ else {
+ fileUploadIframe(a);
+ }
+ }
+ else if ((hasFileInputs || multipart) && fileAPI) {
+ fileUploadXhr(a);
+ }
+ else {
+ $.ajax(options);
+ }
+
+ // clear element array
+ for (var k=0; k < elements.length; k++)
+ elements[k] = null;
+
+ // fire 'notify' event
+ this.trigger('form-submit-notify', [this, options]);
+ return this;
+
+ // XMLHttpRequest Level 2 file uploads (big hat tip to francois2metz)
+ function fileUploadXhr(a) {
+ var formdata = new FormData();
+
+ for (var i=0; i < a.length; i++) {
+ formdata.append(a[i].name, a[i].value);
+ }
+
+ if (options.extraData) {
+ for (var p in options.extraData)
+ if (options.extraData.hasOwnProperty(p))
+ formdata.append(p, options.extraData[p]);
+ }
+
+ options.data = null;
+
+ var s = $.extend(true, {}, $.ajaxSettings, options, {
+ contentType: false,
+ processData: false,
+ cache: false,
+ type: 'POST'
+ });
+
+ if (options.uploadProgress) {
+ // workaround because jqXHR does not expose upload property
+ s.xhr = function() {
+ var xhr = jQuery.ajaxSettings.xhr();
+ if (xhr.upload) {
+ xhr.upload.onprogress = function(event) {
+ var percent = 0;
+ var position = event.loaded || event.position; /*event.position is deprecated*/
+ var total = event.total;
+ if (event.lengthComputable) {
+ percent = Math.ceil(position / total * 100);
+ }
+ options.uploadProgress(event, position, total, percent);
+ };
+ }
+ return xhr;
+ };
+ }
+
+ s.data = null;
+ var beforeSend = s.beforeSend;
+ s.beforeSend = function(xhr, o) {
+ o.data = formdata;
+ if(beforeSend)
+ beforeSend.call(this, xhr, o);
+ };
+ $.ajax(s);
+ }
+
+ // private function for handling file uploads (hat tip to YAHOO!)
+ function fileUploadIframe(a) {
+ var form = $form[0], el, i, s, g, id, $io, io, xhr, sub, n, timedOut, timeoutHandle;
+ var useProp = !!$.fn.prop;
+
+ if ($(':input[name=submit],:input[id=submit]', form).length) {
+ // if there is an input with a name or id of 'submit' then we won't be
+ // able to invoke the submit fn on the form (at least not x-browser)
+ alert('Error: Form elements must not have name or id of "submit".');
+ return;
+ }
+
+ if (a) {
+ // ensure that every serialized input is still enabled
+ for (i=0; i < elements.length; i++) {
+ el = $(elements[i]);
+ if ( useProp )
+ el.prop('disabled', false);
+ else
+ el.removeAttr('disabled');
+ }
+ }
+
+ s = $.extend(true, {}, $.ajaxSettings, options);
+ s.context = s.context || s;
+ id = 'jqFormIO' + (new Date().getTime());
+ if (s.iframeTarget) {
+ $io = $(s.iframeTarget);
+ n = $io.attr('name');
+ if (!n)
+ $io.attr('name', id);
+ else
+ id = n;
+ }
+ else {
+ $io = $('');
+ $io.css({ position: 'absolute', top: '-1000px', left: '-1000px' });
+ }
+ io = $io[0];
+
+
+ xhr = { // mock object
+ aborted: 0,
+ responseText: null,
+ responseXML: null,
+ status: 0,
+ statusText: 'n/a',
+ getAllResponseHeaders: function() {},
+ getResponseHeader: function() {},
+ setRequestHeader: function() {},
+ abort: function(status) {
+ var e = (status === 'timeout' ? 'timeout' : 'aborted');
+ log('aborting upload... ' + e);
+ this.aborted = 1;
+ // #214
+ if (io.contentWindow.document.execCommand) {
+ try { // #214
+ io.contentWindow.document.execCommand('Stop');
+ } catch(ignore) {}
+ }
+ $io.attr('src', s.iframeSrc); // abort op in progress
+ xhr.error = e;
+ if (s.error)
+ s.error.call(s.context, xhr, e, status);
+ if (g)
+ $.event.trigger("ajaxError", [xhr, s, e]);
+ if (s.complete)
+ s.complete.call(s.context, xhr, e);
+ }
+ };
+
+ g = s.global;
+ // trigger ajax global events so that activity/block indicators work like normal
+ if (g && 0 === $.active++) {
+ $.event.trigger("ajaxStart");
+ }
+ if (g) {
+ $.event.trigger("ajaxSend", [xhr, s]);
+ }
+
+ if (s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false) {
+ if (s.global) {
+ $.active--;
+ }
+ return;
+ }
+ if (xhr.aborted) {
+ return;
+ }
+
+ // add submitting element to data if we know it
+ sub = form.clk;
+ if (sub) {
+ n = sub.name;
+ if (n && !sub.disabled) {
+ s.extraData = s.extraData || {};
+ s.extraData[n] = sub.value;
+ if (sub.type == "image") {
+ s.extraData[n+'.x'] = form.clk_x;
+ s.extraData[n+'.y'] = form.clk_y;
+ }
+ }
+ }
+
+ var CLIENT_TIMEOUT_ABORT = 1;
+ var SERVER_ABORT = 2;
+
+ function getDoc(frame) {
+ var doc = frame.contentWindow ? frame.contentWindow.document : frame.contentDocument ? frame.contentDocument : frame.document;
+ return doc;
+ }
+
+ // Rails CSRF hack (thanks to Yvan Barthelemy)
+ var csrf_token = $('meta[name=csrf-token]').attr('content');
+ var csrf_param = $('meta[name=csrf-param]').attr('content');
+ if (csrf_param && csrf_token) {
+ s.extraData = s.extraData || {};
+ s.extraData[csrf_param] = csrf_token;
+ }
+
+ // take a breath so that pending repaints get some cpu time before the upload starts
+ function doSubmit() {
+ // make sure form attrs are set
+ var t = $form.attr('target'), a = $form.attr('action');
+
+ // update form attrs in IE friendly way
+ form.setAttribute('target',id);
+ if (!method) {
+ form.setAttribute('method', 'POST');
+ }
+ if (a != s.url) {
+ form.setAttribute('action', s.url);
+ }
+
+ // ie borks in some cases when setting encoding
+ if (! s.skipEncodingOverride && (!method || /post/i.test(method))) {
+ $form.attr({
+ encoding: 'multipart/form-data',
+ enctype: 'multipart/form-data'
+ });
+ }
+
+ // support timout
+ if (s.timeout) {
+ timeoutHandle = setTimeout(function() { timedOut = true; cb(CLIENT_TIMEOUT_ABORT); }, s.timeout);
+ }
+
+ // look for server aborts
+ function checkState() {
+ try {
+ var state = getDoc(io).readyState;
+ log('state = ' + state);
+ if (state && state.toLowerCase() == 'uninitialized')
+ setTimeout(checkState,50);
+ }
+ catch(e) {
+ log('Server abort: ' , e, ' (', e.name, ')');
+ cb(SERVER_ABORT);
+ if (timeoutHandle)
+ clearTimeout(timeoutHandle);
+ timeoutHandle = undefined;
+ }
+ }
+
+ // add "extra" data to form if provided in options
+ var extraInputs = [];
+ try {
+ if (s.extraData) {
+ for (var n in s.extraData) {
+ if (s.extraData.hasOwnProperty(n)) {
+ // if using the $.param format that allows for multiple values with the same name
+ if($.isPlainObject(s.extraData[n]) && s.extraData[n].hasOwnProperty('name') && s.extraData[n].hasOwnProperty('value')) {
+ extraInputs.push(
+ $('').attr('value',s.extraData[n].value)
+ .appendTo(form)[0]);
+ } else {
+ extraInputs.push(
+ $('').attr('value',s.extraData[n])
+ .appendTo(form)[0]);
+ }
+ }
+ }
+ }
+
+ if (!s.iframeTarget) {
+ // add iframe to doc and submit the form
+ $io.appendTo('body');
+ if (io.attachEvent)
+ io.attachEvent('onload', cb);
+ else
+ io.addEventListener('load', cb, false);
+ }
+ setTimeout(checkState,15);
+ form.submit();
+ }
+ finally {
+ // reset attrs and remove "extra" input elements
+ form.setAttribute('action',a);
+ if(t) {
+ form.setAttribute('target', t);
+ } else {
+ $form.removeAttr('target');
+ }
+ $(extraInputs).remove();
+ }
+ }
+
+ if (s.forceSync) {
+ doSubmit();
+ }
+ else {
+ setTimeout(doSubmit, 10); // this lets dom updates render
+ }
+
+ var data, doc, domCheckCount = 50, callbackProcessed;
+
+ function cb(e) {
+ if (xhr.aborted || callbackProcessed) {
+ return;
+ }
+ try {
+ doc = getDoc(io);
+ }
+ catch(ex) {
+ log('cannot access response document: ', ex);
+ e = SERVER_ABORT;
+ }
+ if (e === CLIENT_TIMEOUT_ABORT && xhr) {
+ xhr.abort('timeout');
+ return;
+ }
+ else if (e == SERVER_ABORT && xhr) {
+ xhr.abort('server abort');
+ return;
+ }
+
+ if (!doc || doc.location.href == s.iframeSrc) {
+ // response not received yet
+ if (!timedOut)
+ return;
+ }
+ if (io.detachEvent)
+ io.detachEvent('onload', cb);
+ else
+ io.removeEventListener('load', cb, false);
+
+ var status = 'success', errMsg;
+ try {
+ if (timedOut) {
+ throw 'timeout';
+ }
+
+ var isXml = s.dataType == 'xml' || doc.XMLDocument || $.isXMLDoc(doc);
+ log('isXml='+isXml);
+ if (!isXml && window.opera && (doc.body === null || !doc.body.innerHTML)) {
+ if (--domCheckCount) {
+ // in some browsers (Opera) the iframe DOM is not always traversable when
+ // the onload callback fires, so we loop a bit to accommodate
+ log('requeing onLoad callback, DOM not available');
+ setTimeout(cb, 250);
+ return;
+ }
+ // let this fall through because server response could be an empty document
+ //log('Could not access iframe DOM after mutiple tries.');
+ //throw 'DOMException: not available';
+ }
+
+ //log('response detected');
+ var docRoot = doc.body ? doc.body : doc.documentElement;
+ xhr.responseText = docRoot ? docRoot.innerHTML : null;
+ xhr.responseXML = doc.XMLDocument ? doc.XMLDocument : doc;
+ if (isXml)
+ s.dataType = 'xml';
+ xhr.getResponseHeader = function(header){
+ var headers = {'content-type': s.dataType};
+ return headers[header];
+ };
+ // support for XHR 'status' & 'statusText' emulation :
+ if (docRoot) {
+ xhr.status = Number( docRoot.getAttribute('status') ) || xhr.status;
+ xhr.statusText = docRoot.getAttribute('statusText') || xhr.statusText;
+ }
+
+ var dt = (s.dataType || '').toLowerCase();
+ var scr = /(json|script|text)/.test(dt);
+ if (scr || s.textarea) {
+ // see if user embedded response in textarea
+ var ta = doc.getElementsByTagName('textarea')[0];
+ if (ta) {
+ xhr.responseText = ta.value;
+ // support for XHR 'status' & 'statusText' emulation :
+ xhr.status = Number( ta.getAttribute('status') ) || xhr.status;
+ xhr.statusText = ta.getAttribute('statusText') || xhr.statusText;
+ }
+ else if (scr) {
+ // account for browsers injecting pre around json response
+ var pre = doc.getElementsByTagName('pre')[0];
+ var b = doc.getElementsByTagName('body')[0];
+ if (pre) {
+ xhr.responseText = pre.textContent ? pre.textContent : pre.innerText;
+ }
+ else if (b) {
+ xhr.responseText = b.textContent ? b.textContent : b.innerText;
+ }
+ }
+ }
+ else if (dt == 'xml' && !xhr.responseXML && xhr.responseText) {
+ xhr.responseXML = toXml(xhr.responseText);
+ }
+
+ try {
+ data = httpData(xhr, dt, s);
+ }
+ catch (e) {
+ status = 'parsererror';
+ xhr.error = errMsg = (e || status);
+ }
+ }
+ catch (e) {
+ log('error caught: ',e);
+ status = 'error';
+ xhr.error = errMsg = (e || status);
+ }
+
+ if (xhr.aborted) {
+ log('upload aborted');
+ status = null;
+ }
+
+ if (xhr.status) { // we've set xhr.status
+ status = (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) ? 'success' : 'error';
+ }
+
+ // ordering of these callbacks/triggers is odd, but that's how $.ajax does it
+ if (status === 'success') {
+ if (s.success)
+ s.success.call(s.context, data, 'success', xhr);
+ if (g)
+ $.event.trigger("ajaxSuccess", [xhr, s]);
+ }
+ else if (status) {
+ if (errMsg === undefined)
+ errMsg = xhr.statusText;
+ if (s.error)
+ s.error.call(s.context, xhr, status, errMsg);
+ if (g)
+ $.event.trigger("ajaxError", [xhr, s, errMsg]);
+ }
+
+ if (g)
+ $.event.trigger("ajaxComplete", [xhr, s]);
+
+ if (g && ! --$.active) {
+ $.event.trigger("ajaxStop");
+ }
+
+ if (s.complete)
+ s.complete.call(s.context, xhr, status);
+
+ callbackProcessed = true;
+ if (s.timeout)
+ clearTimeout(timeoutHandle);
+
+ // clean up
+ setTimeout(function() {
+ if (!s.iframeTarget)
+ $io.remove();
+ xhr.responseXML = null;
+ }, 100);
+ }
+
+ var toXml = $.parseXML || function(s, doc) { // use parseXML if available (jQuery 1.5+)
+ if (window.ActiveXObject) {
+ doc = new ActiveXObject('Microsoft.XMLDOM');
+ doc.async = 'false';
+ doc.loadXML(s);
+ }
+ else {
+ doc = (new DOMParser()).parseFromString(s, 'text/xml');
+ }
+ return (doc && doc.documentElement && doc.documentElement.nodeName != 'parsererror') ? doc : null;
+ };
+ var parseJSON = $.parseJSON || function(s) {
+ /*jslint evil:true */
+ return window['eval']('(' + s + ')');
+ };
+
+ var httpData = function( xhr, type, s ) { // mostly lifted from jq1.4.4
+
+ var ct = xhr.getResponseHeader('content-type') || '',
+ xml = type === 'xml' || !type && ct.indexOf('xml') >= 0,
+ data = xml ? xhr.responseXML : xhr.responseText;
+
+ if (xml && data.documentElement.nodeName === 'parsererror') {
+ if ($.error)
+ $.error('parsererror');
+ }
+ if (s && s.dataFilter) {
+ data = s.dataFilter(data, type);
+ }
+ if (typeof data === 'string') {
+ if (type === 'json' || !type && ct.indexOf('json') >= 0) {
+ data = parseJSON(data);
+ } else if (type === "script" || !type && ct.indexOf("javascript") >= 0) {
+ $.globalEval(data);
+ }
+ }
+ return data;
+ };
+ }
+};
+
+/**
+ * ajaxForm() provides a mechanism for fully automating form submission.
+ *
+ * The advantages of using this method instead of ajaxSubmit() are:
+ *
+ * 1: This method will include coordinates for elements (if the element
+ * is used to submit the form).
+ * 2. This method will include the submit element's name/value data (for the element that was
+ * used to submit the form).
+ * 3. This method binds the submit() method to the form for you.
+ *
+ * The options argument for ajaxForm works exactly as it does for ajaxSubmit. ajaxForm merely
+ * passes the options argument along after properly binding events for submit elements and
+ * the form itself.
+ */
+$.fn.ajaxForm = function(options) {
+ options = options || {};
+ options.delegation = options.delegation && $.isFunction($.fn.on);
+
+ // in jQuery 1.3+ we can fix mistakes with the ready state
+ if (!options.delegation && this.length === 0) {
+ var o = { s: this.selector, c: this.context };
+ if (!$.isReady && o.s) {
+ log('DOM not ready, queuing ajaxForm');
+ $(function() {
+ $(o.s,o.c).ajaxForm(options);
+ });
+ return this;
+ }
+ // is your DOM ready? http://docs.jquery.com/Tutorials:Introducing_$(document).ready()
+ log('terminating; zero elements found by selector' + ($.isReady ? '' : ' (DOM not ready)'));
+ return this;
+ }
+
+ if ( options.delegation ) {
+ $(document)
+ .off('submit.form-plugin', this.selector, doAjaxSubmit)
+ .off('click.form-plugin', this.selector, captureSubmittingElement)
+ .on('submit.form-plugin', this.selector, options, doAjaxSubmit)
+ .on('click.form-plugin', this.selector, options, captureSubmittingElement);
+ return this;
+ }
+
+ return this.ajaxFormUnbind()
+ .bind('submit.form-plugin', options, doAjaxSubmit)
+ .bind('click.form-plugin', options, captureSubmittingElement);
+};
+
+// private event handlers
+function doAjaxSubmit(e) {
+ /*jshint validthis:true */
+ var options = e.data;
+ if (!e.isDefaultPrevented()) { // if event has been canceled, don't proceed
+ e.preventDefault();
+ $(this).ajaxSubmit(options);
+ }
+}
+
+function captureSubmittingElement(e) {
+ /*jshint validthis:true */
+ var target = e.target;
+ var $el = $(target);
+ if (!($el.is(":submit,input:image"))) {
+ // is this a child element of the submit el? (ex: a span within a button)
+ var t = $el.closest(':submit');
+ if (t.length === 0) {
+ return;
+ }
+ target = t[0];
+ }
+ var form = this;
+ form.clk = target;
+ if (target.type == 'image') {
+ if (e.offsetX !== undefined) {
+ form.clk_x = e.offsetX;
+ form.clk_y = e.offsetY;
+ } else if (typeof $.fn.offset == 'function') {
+ var offset = $el.offset();
+ form.clk_x = e.pageX - offset.left;
+ form.clk_y = e.pageY - offset.top;
+ } else {
+ form.clk_x = e.pageX - target.offsetLeft;
+ form.clk_y = e.pageY - target.offsetTop;
+ }
+ }
+ // clear form vars
+ setTimeout(function() { form.clk = form.clk_x = form.clk_y = null; }, 100);
+}
+
+
+// ajaxFormUnbind unbinds the event handlers that were bound by ajaxForm
+$.fn.ajaxFormUnbind = function() {
+ return this.unbind('submit.form-plugin click.form-plugin');
+};
+
+/**
+ * formToArray() gathers form element data into an array of objects that can
+ * be passed to any of the following ajax functions: $.get, $.post, or load.
+ * Each object in the array has both a 'name' and 'value' property. An example of
+ * an array for a simple login form might be:
+ *
+ * [ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ]
+ *
+ * It is this array that is passed to pre-submit callback functions provided to the
+ * ajaxSubmit() and ajaxForm() methods.
+ */
+$.fn.formToArray = function(semantic, elements) {
+ var a = [];
+ if (this.length === 0) {
+ return a;
+ }
+
+ var form = this[0];
+ var els = semantic ? form.getElementsByTagName('*') : form.elements;
+ if (!els) {
+ return a;
+ }
+
+ var i,j,n,v,el,max,jmax;
+ for(i=0, max=els.length; i < max; i++) {
+ el = els[i];
+ n = el.name;
+ if (!n) {
+ continue;
+ }
+
+ if (semantic && form.clk && el.type == "image") {
+ // handle image inputs on the fly when semantic == true
+ if(!el.disabled && form.clk == el) {
+ a.push({name: n, value: $(el).val(), type: el.type });
+ a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
+ }
+ continue;
+ }
+
+ v = $.fieldValue(el, true);
+ if (v && v.constructor == Array) {
+ if (elements)
+ elements.push(el);
+ for(j=0, jmax=v.length; j < jmax; j++) {
+ a.push({name: n, value: v[j]});
+ }
+ }
+ else if (feature.fileapi && el.type == 'file' && !el.disabled) {
+ if (elements)
+ elements.push(el);
+ var files = el.files;
+ if (files.length) {
+ for (j=0; j < files.length; j++) {
+ a.push({name: n, value: files[j], type: el.type});
+ }
+ }
+ else {
+ // #180
+ a.push({ name: n, value: '', type: el.type });
+ }
+ }
+ else if (v !== null && typeof v != 'undefined') {
+ if (elements)
+ elements.push(el);
+ a.push({name: n, value: v, type: el.type, required: el.required});
+ }
+ }
+
+ if (!semantic && form.clk) {
+ // input type=='image' are not found in elements array! handle it here
+ var $input = $(form.clk), input = $input[0];
+ n = input.name;
+ if (n && !input.disabled && input.type == 'image') {
+ a.push({name: n, value: $input.val()});
+ a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
+ }
+ }
+ return a;
+};
+
+/**
+ * Serializes form data into a 'submittable' string. This method will return a string
+ * in the format: name1=value1&name2=value2
+ */
+$.fn.formSerialize = function(semantic) {
+ //hand off to jQuery.param for proper encoding
+ return $.param(this.formToArray(semantic));
+};
+
+/**
+ * Serializes all field elements in the jQuery object into a query string.
+ * This method will return a string in the format: name1=value1&name2=value2
+ */
+$.fn.fieldSerialize = function(successful) {
+ var a = [];
+ this.each(function() {
+ var n = this.name;
+ if (!n) {
+ return;
+ }
+ var v = $.fieldValue(this, successful);
+ if (v && v.constructor == Array) {
+ for (var i=0,max=v.length; i < max; i++) {
+ a.push({name: n, value: v[i]});
+ }
+ }
+ else if (v !== null && typeof v != 'undefined') {
+ a.push({name: this.name, value: v});
+ }
+ });
+ //hand off to jQuery.param for proper encoding
+ return $.param(a);
+};
+
+/**
+ * Returns the value(s) of the element in the matched set. For example, consider the following form:
+ *
+ *
+ *
+ * var v = $(':text').fieldValue();
+ * // if no values are entered into the text inputs
+ * v == ['','']
+ * // if values entered into the text inputs are 'foo' and 'bar'
+ * v == ['foo','bar']
+ *
+ * var v = $(':checkbox').fieldValue();
+ * // if neither checkbox is checked
+ * v === undefined
+ * // if both checkboxes are checked
+ * v == ['B1', 'B2']
+ *
+ * var v = $(':radio').fieldValue();
+ * // if neither radio is checked
+ * v === undefined
+ * // if first radio is checked
+ * v == ['C1']
+ *
+ * The successful argument controls whether or not the field element must be 'successful'
+ * (per http://www.w3.org/TR/html4/interact/forms.html#successful-controls).
+ * The default value of the successful argument is true. If this value is false the value(s)
+ * for each element is returned.
+ *
+ * Note: This method *always* returns an array. If no valid value can be determined the
+ * array will be empty, otherwise it will contain one or more values.
+ */
+$.fn.fieldValue = function(successful) {
+ for (var val=[], i=0, max=this.length; i < max; i++) {
+ var el = this[i];
+ var v = $.fieldValue(el, successful);
+ if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length)) {
+ continue;
+ }
+ if (v.constructor == Array)
+ $.merge(val, v);
+ else
+ val.push(v);
+ }
+ return val;
+};
+
+/**
+ * Returns the value of the field element.
+ */
+$.fieldValue = function(el, successful) {
+ var n = el.name, t = el.type, tag = el.tagName.toLowerCase();
+ if (successful === undefined) {
+ successful = true;
+ }
+
+ if (successful && (!n || el.disabled || t == 'reset' || t == 'button' ||
+ (t == 'checkbox' || t == 'radio') && !el.checked ||
+ (t == 'submit' || t == 'image') && el.form && el.form.clk != el ||
+ tag == 'select' && el.selectedIndex == -1)) {
+ return null;
+ }
+
+ if (tag == 'select') {
+ var index = el.selectedIndex;
+ if (index < 0) {
+ return null;
+ }
+ var a = [], ops = el.options;
+ var one = (t == 'select-one');
+ var max = (one ? index+1 : ops.length);
+ for(var i=(one ? index : 0); i < max; i++) {
+ var op = ops[i];
+ if (op.selected) {
+ var v = op.value;
+ if (!v) { // extra pain for IE...
+ v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value;
+ }
+ if (one) {
+ return v;
+ }
+ a.push(v);
+ }
+ }
+ return a;
+ }
+ return $(el).val();
+};
+
+/**
+ * Clears the form data. Takes the following actions on the form's input fields:
+ * - input text fields will have their 'value' property set to the empty string
+ * - select elements will have their 'selectedIndex' property set to -1
+ * - checkbox and radio inputs will have their 'checked' property set to false
+ * - inputs of type submit, button, reset, and hidden will *not* be effected
+ * - button elements will *not* be effected
+ */
+$.fn.clearForm = function(includeHidden) {
+ return this.each(function() {
+ $('input,select,textarea', this).clearFields(includeHidden);
+ });
+};
+
+/**
+ * Clears the selected form elements.
+ */
+$.fn.clearFields = $.fn.clearInputs = function(includeHidden) {
+ var re = /^(?:color|date|datetime|email|month|number|password|range|search|tel|text|time|url|week)$/i; // 'hidden' is not in this list
+ return this.each(function() {
+ var t = this.type, tag = this.tagName.toLowerCase();
+ if (re.test(t) || tag == 'textarea') {
+ this.value = '';
+ }
+ else if (t == 'checkbox' || t == 'radio') {
+ this.checked = false;
+ }
+ else if (tag == 'select') {
+ this.selectedIndex = -1;
+ }
+ else if (includeHidden) {
+ // includeHidden can be the value true, or it can be a selector string
+ // indicating a special test; for example:
+ // $('#myForm').clearForm('.special:hidden')
+ // the above would clean hidden inputs that have the class of 'special'
+ if ( (includeHidden === true && /hidden/.test(t)) ||
+ (typeof includeHidden == 'string' && $(this).is(includeHidden)) )
+ this.value = '';
+ }
+ });
+};
+
+/**
+ * Resets the form data. Causes all form elements to be reset to their original value.
+ */
+$.fn.resetForm = function() {
+ return this.each(function() {
+ // guard against an input with the name of 'reset'
+ // note that IE reports the reset function as an 'object'
+ if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType)) {
+ this.reset();
+ }
+ });
+};
+
+/**
+ * Enables or disables any matching elements.
+ */
+$.fn.enable = function(b) {
+ if (b === undefined) {
+ b = true;
+ }
+ return this.each(function() {
+ this.disabled = !b;
+ });
+};
+
+/**
+ * Checks/unchecks any matching checkboxes or radio buttons and
+ * selects/deselects and matching option elements.
+ */
+$.fn.selected = function(select) {
+ if (select === undefined) {
+ select = true;
+ }
+ return this.each(function() {
+ var t = this.type;
+ if (t == 'checkbox' || t == 'radio') {
+ this.checked = select;
+ }
+ else if (this.tagName.toLowerCase() == 'option') {
+ var $sel = $(this).parent('select');
+ if (select && $sel[0] && $sel[0].type == 'select-one') {
+ // deselect all other options
+ $sel.find('option').selected(false);
+ }
+ this.selected = select;
+ }
+ });
+};
+
+// expose debug var
+$.fn.ajaxSubmit.debug = false;
+
+// helper fn for console logging
+function log() {
+ if (!$.fn.ajaxSubmit.debug)
+ return;
+ var msg = '[jquery.form] ' + Array.prototype.join.call(arguments,'');
+ if (window.console && window.console.log) {
+ window.console.log(msg);
+ }
+ else if (window.opera && window.opera.postError) {
+ window.opera.postError(msg);
+ }
+}
+
+})(jQuery);
diff --git a/wp-content/plugins/contact-form-7/includes/js/jquery.form.js b/wp-content/plugins/contact-form-7/includes/js/jquery.form.js
new file mode 100644
index 0000000..56a7aad
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/js/jquery.form.js
@@ -0,0 +1,12 @@
+/*!
+ * jQuery Form Plugin
+ * version: 3.14 (30-JUL-2012)
+ * @requires jQuery v1.3.2 or later
+ *
+ * Examples and documentation at: http://malsup.com/jquery/form/
+ * Project repository: https://github.com/malsup/form
+ * Dual licensed under the MIT and GPL licenses:
+ * http://malsup.github.com/mit-license.txt
+ * http://malsup.github.com/gpl-license-v2.txt
+ */
+(function(e){var c={};c.fileapi=e("").get(0).files!==undefined;c.formdata=window.FormData!==undefined;e.fn.ajaxSubmit=function(g){if(!this.length){d("ajaxSubmit: skipping submit process - no element selected");return this}var f,w,i,l=this;if(typeof g=="function"){g={success:g}}f=this.attr("method");w=this.attr("action");i=(typeof w==="string")?e.trim(w):"";i=i||window.location.href||"";if(i){i=(i.match(/^([^#]+)/)||[])[1]}g=e.extend(true,{url:i,success:e.ajaxSettings.success,type:f||"GET",iframeSrc:/^https/i.test(window.location.href||"")?"javascript:false":"about:blank"},g);var r={};this.trigger("form-pre-serialize",[this,g,r]);if(r.veto){d("ajaxSubmit: submit vetoed via form-pre-serialize trigger");return this}if(g.beforeSerialize&&g.beforeSerialize(this,g)===false){d("ajaxSubmit: submit aborted via beforeSerialize callback");return this}var j=g.traditional;if(j===undefined){j=e.ajaxSettings.traditional}var o=[];var z,A=this.formToArray(g.semantic,o);if(g.data){g.extraData=g.data;z=e.param(g.data,j)}if(g.beforeSubmit&&g.beforeSubmit(A,this,g)===false){d("ajaxSubmit: submit aborted via beforeSubmit callback");return this}this.trigger("form-submit-validate",[A,this,g,r]);if(r.veto){d("ajaxSubmit: submit vetoed via form-submit-validate trigger");return this}var u=e.param(A,j);if(z){u=(u?(u+"&"+z):z)}if(g.type.toUpperCase()=="GET"){g.url+=(g.url.indexOf("?")>=0?"&":"?")+u;g.data=null}else{g.data=u}var C=[];if(g.resetForm){C.push(function(){l.resetForm()})}if(g.clearForm){C.push(function(){l.clearForm(g.includeHidden)})}if(!g.dataType&&g.target){var h=g.success||function(){};C.push(function(q){var k=g.replaceTarget?"replaceWith":"html";e(g.target)[k](q).each(h,arguments)})}else{if(g.success){C.push(g.success)}}g.success=function(F,q,G){var E=g.context||this;for(var D=0,k=C.length;D0;var x="multipart/form-data";var t=(l.attr("enctype")==x||l.attr("encoding")==x);var s=c.fileapi&&c.formdata;d("fileAPI :"+s);var n=(m||t)&&!s;if(g.iframe!==false&&(g.iframe||n)){if(g.closeKeepAlive){e.get(g.closeKeepAlive,function(){B(A)})}else{B(A)}}else{if((m||t)&&s){p(A)}else{e.ajax(g)}}for(var v=0;v');I.css({position:"absolute",top:"-1000px",left:"-1000px"})}M=I[0];K={aborted:0,responseText:null,responseXML:null,status:0,statusText:"n/a",getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){},abort:function(ae){var af=(ae==="timeout"?"timeout":"aborted");d("aborting upload... "+af);this.aborted=1;if(M.contentWindow.document.execCommand){try{M.contentWindow.document.execCommand("Stop")}catch(ag){}}I.attr("src",R.iframeSrc);K.error=af;if(R.error){R.error.call(R.context,K,af,ae)}if(Z){e.event.trigger("ajaxError",[K,R,af])}if(R.complete){R.complete.call(R.context,K,af)}}};Z=R.global;if(Z&&0===e.active++){e.event.trigger("ajaxStart")}if(Z){e.event.trigger("ajaxSend",[K,R])}if(R.beforeSend&&R.beforeSend.call(R.context,K,R)===false){if(R.global){e.active--}return}if(K.aborted){return}L=G.clk;if(L){V=L.name;if(V&&!L.disabled){R.extraData=R.extraData||{};R.extraData[V]=L.value;if(L.type=="image"){R.extraData[V+".x"]=G.clk_x;R.extraData[V+".y"]=G.clk_y}}}var Q=1;var N=2;function O(af){var ae=af.contentWindow?af.contentWindow.document:af.contentDocument?af.contentDocument:af.document;return ae}var E=e("meta[name=csrf-token]").attr("content");var D=e("meta[name=csrf-param]").attr("content");if(D&&E){R.extraData=R.extraData||{};R.extraData[D]=E}function W(){var ag=l.attr("target"),ae=l.attr("action");G.setAttribute("target",U);if(!f){G.setAttribute("method","POST")}if(ae!=R.url){G.setAttribute("action",R.url)}if(!R.skipEncodingOverride&&(!f||/post/i.test(f))){l.attr({encoding:"multipart/form-data",enctype:"multipart/form-data"})}if(R.timeout){P=setTimeout(function(){Y=true;T(Q)},R.timeout)}function ah(){try{var aj=O(M).readyState;d("state = "+aj);if(aj&&aj.toLowerCase()=="uninitialized"){setTimeout(ah,50)}}catch(ak){d("Server abort: ",ak," (",ak.name,")");T(N);if(P){clearTimeout(P)}P=undefined}}var af=[];try{if(R.extraData){for(var ai in R.extraData){if(R.extraData.hasOwnProperty(ai)){if(e.isPlainObject(R.extraData[ai])&&R.extraData[ai].hasOwnProperty("name")&&R.extraData[ai].hasOwnProperty("value")){af.push(e('').attr("value",R.extraData[ai].value).appendTo(G)[0])}else{af.push(e('').attr("value",R.extraData[ai]).appendTo(G)[0])}}}}if(!R.iframeTarget){I.appendTo("body");if(M.attachEvent){M.attachEvent("onload",T)}else{M.addEventListener("load",T,false)}}setTimeout(ah,15);G.submit()}finally{G.setAttribute("action",ae);if(ag){G.setAttribute("target",ag)}else{l.removeAttr("target")}e(af).remove()}}if(R.forceSync){W()}else{setTimeout(W,10)}var ac,ad,aa=50,H;function T(aj){if(K.aborted||H){return}try{ad=O(M)}catch(am){d("cannot access response document: ",am);aj=N}if(aj===Q&&K){K.abort("timeout");return}else{if(aj==N&&K){K.abort("server abort");return}}if(!ad||ad.location.href==R.iframeSrc){if(!Y){return}}if(M.detachEvent){M.detachEvent("onload",T)}else{M.removeEventListener("load",T,false)}var ah="success",al;try{if(Y){throw"timeout"}var ag=R.dataType=="xml"||ad.XMLDocument||e.isXMLDoc(ad);d("isXml="+ag);if(!ag&&window.opera&&(ad.body===null||!ad.body.innerHTML)){if(--aa){d("requeing onLoad callback, DOM not available");setTimeout(T,250);return}}var an=ad.body?ad.body:ad.documentElement;K.responseText=an?an.innerHTML:null;K.responseXML=ad.XMLDocument?ad.XMLDocument:ad;if(ag){R.dataType="xml"}K.getResponseHeader=function(aq){var ap={"content-type":R.dataType};return ap[aq]};if(an){K.status=Number(an.getAttribute("status"))||K.status;K.statusText=an.getAttribute("statusText")||K.statusText}var ae=(R.dataType||"").toLowerCase();var ak=/(json|script|text)/.test(ae);if(ak||R.textarea){var ai=ad.getElementsByTagName("textarea")[0];if(ai){K.responseText=ai.value;K.status=Number(ai.getAttribute("status"))||K.status;K.statusText=ai.getAttribute("statusText")||K.statusText}else{if(ak){var af=ad.getElementsByTagName("pre")[0];var ao=ad.getElementsByTagName("body")[0];if(af){K.responseText=af.textContent?af.textContent:af.innerText}else{if(ao){K.responseText=ao.textContent?ao.textContent:ao.innerText}}}}}else{if(ae=="xml"&&!K.responseXML&&K.responseText){K.responseXML=S(K.responseText)}}try{ac=k(K,ae,R)}catch(aj){ah="parsererror";K.error=al=(aj||ah)}}catch(aj){d("error caught: ",aj);ah="error";K.error=al=(aj||ah)}if(K.aborted){d("upload aborted");ah=null}if(K.status){ah=(K.status>=200&&K.status<300||K.status===304)?"success":"error"}if(ah==="success"){if(R.success){R.success.call(R.context,ac,"success",K)}if(Z){e.event.trigger("ajaxSuccess",[K,R])}}else{if(ah){if(al===undefined){al=K.statusText}if(R.error){R.error.call(R.context,K,ah,al)}if(Z){e.event.trigger("ajaxError",[K,R,al])}}}if(Z){e.event.trigger("ajaxComplete",[K,R])}if(Z&&!--e.active){e.event.trigger("ajaxStop")}if(R.complete){R.complete.call(R.context,K,ah)}H=true;if(R.timeout){clearTimeout(P)}setTimeout(function(){if(!R.iframeTarget){I.remove()}K.responseXML=null},100)}var S=e.parseXML||function(ae,af){if(window.ActiveXObject){af=new ActiveXObject("Microsoft.XMLDOM");af.async="false";af.loadXML(ae)}else{af=(new DOMParser()).parseFromString(ae,"text/xml")}return(af&&af.documentElement&&af.documentElement.nodeName!="parsererror")?af:null};var q=e.parseJSON||function(ae){return window["eval"]("("+ae+")")};var k=function(aj,ah,ag){var af=aj.getResponseHeader("content-type")||"",ae=ah==="xml"||!ah&&af.indexOf("xml")>=0,ai=ae?aj.responseXML:aj.responseText;if(ae&&ai.documentElement.nodeName==="parsererror"){if(e.error){e.error("parsererror")}}if(ag&&ag.dataFilter){ai=ag.dataFilter(ai,ah)}if(typeof ai==="string"){if(ah==="json"||!ah&&af.indexOf("json")>=0){ai=q(ai)}else{if(ah==="script"||!ah&&af.indexOf("javascript")>=0){e.globalEval(ai)}}}return ai}}};e.fn.ajaxForm=function(f){f=f||{};f.delegation=f.delegation&&e.isFunction(e.fn.on);if(!f.delegation&&this.length===0){var g={s:this.selector,c:this.context};if(!e.isReady&&g.s){d("DOM not ready, queuing ajaxForm");e(function(){e(g.s,g.c).ajaxForm(f)});return this}d("terminating; zero elements found by selector"+(e.isReady?"":" (DOM not ready)"));return this}if(f.delegation){e(document).off("submit.form-plugin",this.selector,b).off("click.form-plugin",this.selector,a).on("submit.form-plugin",this.selector,f,b).on("click.form-plugin",this.selector,f,a);return this}return this.ajaxFormUnbind().bind("submit.form-plugin",f,b).bind("click.form-plugin",f,a)};function b(g){var f=g.data;if(!g.isDefaultPrevented()){g.preventDefault();e(this).ajaxSubmit(f)}}function a(j){var i=j.target;var g=e(i);if(!(g.is(":submit,input:image"))){var f=g.closest(":submit");if(f.length===0){return}i=f[0]}var h=this;h.clk=i;if(i.type=="image"){if(j.offsetX!==undefined){h.clk_x=j.offsetX;h.clk_y=j.offsetY}else{if(typeof e.fn.offset=="function"){var k=g.offset();h.clk_x=j.pageX-k.left;h.clk_y=j.pageY-k.top}else{h.clk_x=j.pageX-i.offsetLeft;h.clk_y=j.pageY-i.offsetTop}}}setTimeout(function(){h.clk=h.clk_x=h.clk_y=null},100)}e.fn.ajaxFormUnbind=function(){return this.unbind("submit.form-plugin click.form-plugin")};e.fn.formToArray=function(w,f){var u=[];if(this.length===0){return u}var k=this[0];var o=w?k.getElementsByTagName("*"):k.elements;if(!o){return u}var q,p,m,x,l,s,h;for(q=0,s=o.length;q form').ajaxForm({
+ beforeSubmit: function(formData, jqForm, options) {
+ jqForm.wpcf7ClearResponseOutput();
+ jqForm.find('img.ajax-loader').css({ visibility: 'visible' });
+ return true;
+ },
+ beforeSerialize: function(jqForm, options) {
+ jqForm.find('.wpcf7-use-title-as-watermark.watermark').each(function(i, n) {
+ $(n).val('');
+ });
+ return true;
+ },
+ data: { '_wpcf7_is_ajax_call': 1 },
+ dataType: 'json',
+ success: function(data) {
+ var ro = $(data.into).find('div.wpcf7-response-output');
+ $(data.into).wpcf7ClearResponseOutput();
+
+ $(data.into).find('.wpcf7-form-control').removeClass('wpcf7-not-valid');
+ $(data.into).find('form.wpcf7-form').removeClass('invalid spam sent failed');
+
+ if (data.captcha)
+ $(data.into).wpcf7RefillCaptcha(data.captcha);
+
+ if (data.quiz)
+ $(data.into).wpcf7RefillQuiz(data.quiz);
+
+ if (data.invalids) {
+ $.each(data.invalids, function(i, n) {
+ $(data.into).find(n.into).wpcf7NotValidTip(n.message);
+ $(data.into).find(n.into).find('.wpcf7-form-control').addClass('wpcf7-not-valid');
+ });
+
+ ro.addClass('wpcf7-validation-errors');
+ $(data.into).find('form.wpcf7-form').addClass('invalid');
+
+ } else if (1 == data.spam) {
+ ro.addClass('wpcf7-spam-blocked');
+ $(data.into).find('form.wpcf7-form').addClass('spam');
+
+ } else if (1 == data.mailSent) {
+ ro.addClass('wpcf7-mail-sent-ok');
+ $(data.into).find('form.wpcf7-form').addClass('sent');
+
+ if (data.onSentOk)
+ $.each(data.onSentOk, function(i, n) { eval(n) });
+
+ } else {
+ ro.addClass('wpcf7-mail-sent-ng');
+ $(data.into).find('form.wpcf7-form').addClass('failed');
+ }
+
+ if (data.onSubmit)
+ $.each(data.onSubmit, function(i, n) { eval(n) });
+
+ if (1 == data.mailSent)
+ $(data.into).find('form').resetForm().clearForm();
+
+ $(data.into).find('.wpcf7-use-title-as-watermark.watermark').each(function(i, n) {
+ $(n).val($(n).attr('title'));
+ });
+
+ $(data.into).wpcf7FillResponseOutput(data.message);
+ }
+ });
+
+ $('div.wpcf7 > form').each(function(i, n) {
+ if (_wpcf7.cached)
+ $(n).wpcf7OnloadRefill();
+
+ $(n).wpcf7ToggleSubmit();
+
+ $(n).find('.wpcf7-submit').wpcf7AjaxLoader();
+
+ $(n).find('.wpcf7-acceptance').click(function() {
+ $(n).wpcf7ToggleSubmit();
+ });
+
+ $(n).find('.wpcf7-exclusive-checkbox').each(function(i, n) {
+ $(n).find('input:checkbox').click(function() {
+ $(n).find('input:checkbox').not(this).removeAttr('checked');
+ });
+ });
+
+ $(n).find('.wpcf7-use-title-as-watermark').each(function(i, n) {
+ var input = $(n);
+ input.val(input.attr('title'));
+ input.addClass('watermark');
+
+ input.focus(function() {
+ if ($(this).hasClass('watermark'))
+ $(this).val('').removeClass('watermark');
+ });
+
+ input.blur(function() {
+ if ('' == $(this).val())
+ $(this).val($(this).attr('title')).addClass('watermark');
+ });
+ });
+ });
+
+ } catch (e) {
+ }
+ });
+
+ $.fn.wpcf7AjaxLoader = function() {
+ return this.each(function() {
+ var loader = $('
')
+ .attr({ src: _wpcf7.loaderUrl, alt: _wpcf7.sending })
+ .css('visibility', 'hidden');
+
+ $(this).after(loader);
+ });
+ };
+
+ $.fn.wpcf7ToggleSubmit = function() {
+ return this.each(function() {
+ var form = $(this);
+ if (this.tagName.toLowerCase() != 'form')
+ form = $(this).find('form').first();
+
+ if (form.hasClass('wpcf7-acceptance-as-validation'))
+ return;
+
+ var submit = form.find('input:submit');
+ if (! submit.length) return;
+
+ var acceptances = form.find('input:checkbox.wpcf7-acceptance');
+ if (! acceptances.length) return;
+
+ submit.removeAttr('disabled');
+ acceptances.each(function(i, n) {
+ n = $(n);
+ if (n.hasClass('wpcf7-invert') && n.is(':checked')
+ || ! n.hasClass('wpcf7-invert') && ! n.is(':checked'))
+ submit.attr('disabled', 'disabled');
+ });
+ });
+ };
+
+ $.fn.wpcf7NotValidTip = function(message) {
+ return this.each(function() {
+ var into = $(this);
+ into.append('' + message + '');
+ $('span.wpcf7-not-valid-tip').mouseover(function() {
+ $(this).fadeOut('fast');
+ });
+ into.find(':input').mouseover(function() {
+ into.find('.wpcf7-not-valid-tip').not(':hidden').fadeOut('fast');
+ });
+ into.find(':input').focus(function() {
+ into.find('.wpcf7-not-valid-tip').not(':hidden').fadeOut('fast');
+ });
+ });
+ };
+
+ $.fn.wpcf7OnloadRefill = function() {
+ return this.each(function() {
+ var url = $(this).attr('action');
+ if (0 < url.indexOf('#'))
+ url = url.substr(0, url.indexOf('#'));
+
+ var id = $(this).find('input[name="_wpcf7"]').val();
+ var unitTag = $(this).find('input[name="_wpcf7_unit_tag"]').val();
+
+ $.getJSON(url,
+ { _wpcf7_is_ajax_call: 1, _wpcf7: id },
+ function(data) {
+ if (data && data.captcha)
+ $('#' + unitTag).wpcf7RefillCaptcha(data.captcha);
+
+ if (data && data.quiz)
+ $('#' + unitTag).wpcf7RefillQuiz(data.quiz);
+ }
+ );
+ });
+ };
+
+ $.fn.wpcf7RefillCaptcha = function(captcha) {
+ return this.each(function() {
+ var form = $(this);
+
+ $.each(captcha, function(i, n) {
+ form.find(':input[name="' + i + '"]').clearFields();
+ form.find('img.wpcf7-captcha-' + i).attr('src', n);
+ var match = /([0-9]+)\.(png|gif|jpeg)$/.exec(n);
+ form.find('input:hidden[name="_wpcf7_captcha_challenge_' + i + '"]').attr('value', match[1]);
+ });
+ });
+ };
+
+ $.fn.wpcf7RefillQuiz = function(quiz) {
+ return this.each(function() {
+ var form = $(this);
+
+ $.each(quiz, function(i, n) {
+ form.find(':input[name="' + i + '"]').clearFields();
+ form.find(':input[name="' + i + '"]').siblings('span.wpcf7-quiz-label').text(n[0]);
+ form.find('input:hidden[name="_wpcf7_quiz_answer_' + i + '"]').attr('value', n[1]);
+ });
+ });
+ };
+
+ $.fn.wpcf7ClearResponseOutput = function() {
+ return this.each(function() {
+ $(this).find('div.wpcf7-response-output').hide().empty().removeClass('wpcf7-mail-sent-ok wpcf7-mail-sent-ng wpcf7-validation-errors wpcf7-spam-blocked');
+ $(this).find('span.wpcf7-not-valid-tip').remove();
+ $(this).find('img.ajax-loader').css({ visibility: 'hidden' });
+ });
+ };
+
+ $.fn.wpcf7FillResponseOutput = function(message) {
+ return this.each(function() {
+ $(this).find('div.wpcf7-response-output').append(message).slideDown('fast');
+ });
+ };
+
+})(jQuery);
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/includes/pipe.php b/wp-content/plugins/contact-form-7/includes/pipe.php
new file mode 100644
index 0000000..29afc89
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/pipe.php
@@ -0,0 +1,67 @@
+before = $this->after = $text;
+ } else {
+ $this->before = substr( $text, 0, $pipe_pos );
+ $this->after = substr( $text, $pipe_pos + 1 );
+ }
+ }
+}
+
+class WPCF7_Pipes {
+
+ var $pipes = array();
+
+ function WPCF7_Pipes( $texts ) {
+ if ( ! is_array( $texts ) )
+ return;
+
+ foreach ( $texts as $text ) {
+ $this->add_pipe( $text );
+ }
+ }
+
+ function add_pipe( $text ) {
+ $pipe = new WPCF7_Pipe( $text );
+ $this->pipes[] = $pipe;
+ }
+
+ function do_pipe( $before ) {
+ foreach ( $this->pipes as $pipe ) {
+ if ( $pipe->before == $before )
+ return $pipe->after;
+ }
+ return $before;
+ }
+
+ function collect_befores() {
+ $befores = array();
+
+ foreach ( $this->pipes as $pipe ) {
+ $befores[] = $pipe->before;
+ }
+
+ return $befores;
+ }
+
+ function zero() {
+ return empty( $this->pipes );
+ }
+
+ function random_pipe() {
+ if ( $this->zero() )
+ return null;
+
+ return $this->pipes[array_rand( $this->pipes )];
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/includes/shortcodes.php b/wp-content/plugins/contact-form-7/includes/shortcodes.php
new file mode 100644
index 0000000..1224131
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/includes/shortcodes.php
@@ -0,0 +1,195 @@
+shortcode_tags[$tag] = array(
+ 'function' => $func,
+ 'has_name' => (boolean) $has_name );
+ }
+
+ function remove_shortcode( $tag ) {
+ unset( $this->shortcode_tags[$tag] );
+ }
+
+ function normalize_shortcode( $content ) {
+ if ( empty( $this->shortcode_tags ) || ! is_array( $this->shortcode_tags ) )
+ return $content;
+
+ $pattern = $this->get_shortcode_regex();
+ return preg_replace_callback( '/' . $pattern . '/s',
+ array( &$this, 'normalize_space_cb' ), $content );
+ }
+
+ function normalize_space_cb( $m ) {
+ // allow [[foo]] syntax for escaping a tag
+ if ( $m[1] == '[' && $m[6] == ']' )
+ return $m[0];
+
+ $tag = $m[2];
+ $attr = trim( preg_replace( '/[\r\n\t ]+/', ' ', $m[3] ) );
+ $content = trim( $m[5] );
+
+ $content = str_replace( "\n", '', $content );
+
+ $result = $m[1] . '[' . $tag
+ . ( $attr ? ' ' . $attr : '' )
+ . ( $m[4] ? ' ' . $m[4] : '' )
+ . ']'
+ . ( $content ? $content . '[/' . $tag . ']' : '' )
+ . $m[6];
+
+ return $result;
+ }
+
+ function do_shortcode( $content, $exec = true ) {
+ $this->exec = (bool) $exec;
+ $this->scanned_tags = array();
+
+ if ( empty( $this->shortcode_tags ) || ! is_array( $this->shortcode_tags ) )
+ return $content;
+
+ $pattern = $this->get_shortcode_regex();
+ return preg_replace_callback( '/' . $pattern . '/s',
+ array( &$this, 'do_shortcode_tag' ), $content );
+ }
+
+ function scan_shortcode( $content ) {
+ $this->do_shortcode( $content, false );
+ return $this->scanned_tags;
+ }
+
+ function get_shortcode_regex() {
+ $tagnames = array_keys( $this->shortcode_tags );
+ $tagregexp = join( '|', array_map( 'preg_quote', $tagnames ) );
+
+ return '(\[?)'
+ . '\[(' . $tagregexp . ')(?:[\r\n\t ](.*?))?(?:[\r\n\t ](\/))?\]'
+ . '(?:([^[]*?)\[\/\2\])?'
+ . '(\]?)';
+ }
+
+ function do_shortcode_tag( $m ) {
+ // allow [[foo]] syntax for escaping a tag
+ if ( $m[1] == '[' && $m[6] == ']' ) {
+ return substr( $m[0], 1, -1 );
+ }
+
+ $tag = $m[2];
+ $attr = $this->shortcode_parse_atts( $m[3] );
+
+ $scanned_tag = array(
+ 'type' => $tag,
+ 'name' => '',
+ 'options' => array(),
+ 'raw_values' => array(),
+ 'values' => array(),
+ 'pipes' => null,
+ 'labels' => array(),
+ 'attr' => '',
+ 'content' => '' );
+
+ if ( is_array( $attr ) ) {
+ if ( is_array( $attr['options'] ) ) {
+ if ( $this->shortcode_tags[$tag]['has_name'] && ! empty( $attr['options'] ) ) {
+ $scanned_tag['name'] = array_shift( $attr['options'] );
+
+ if ( ! wpcf7_is_name( $scanned_tag['name'] ) )
+ return $m[0]; // Invalid name is used. Ignore this tag.
+ }
+
+ $scanned_tag['options'] = (array) $attr['options'];
+ }
+
+ $scanned_tag['raw_values'] = (array) $attr['values'];
+
+ if ( WPCF7_USE_PIPE ) {
+ $pipes = new WPCF7_Pipes( $scanned_tag['raw_values'] );
+ $scanned_tag['values'] = $pipes->collect_befores();
+ $scanned_tag['pipes'] = $pipes;
+ } else {
+ $scanned_tag['values'] = $scanned_tag['raw_values'];
+ }
+
+ $scanned_tag['labels'] = $scanned_tag['values'];
+
+ } else {
+ $scanned_tag['attr'] = $attr;
+ }
+
+ $content = trim( $m[5] );
+ $content = preg_replace( "/
$/m", '', $content );
+ $scanned_tag['content'] = $content;
+
+ $scanned_tag = apply_filters( 'wpcf7_form_tag', $scanned_tag, $this->exec );
+
+ $this->scanned_tags[] = $scanned_tag;
+
+ if ( $this->exec ) {
+ $func = $this->shortcode_tags[$tag]['function'];
+ return $m[1] . call_user_func( $func, $scanned_tag ) . $m[6];
+ } else {
+ return $m[0];
+ }
+ }
+
+ function shortcode_parse_atts( $text ) {
+ $atts = array( 'options' => array(), 'values' => array() );
+ $text = preg_replace( "/[\x{00a0}\x{200b}]+/u", " ", $text );
+ $text = stripcslashes( trim( $text ) );
+
+ $pattern = '%^([-+*=0-9a-zA-Z:.!?#$&@_/|\%\r\n\t ]*?)((?:[\r\n\t ]*"[^"]*"|[\r\n\t ]*\'[^\']*\')*)$%';
+
+ if ( preg_match( $pattern, $text, $match ) ) {
+ if ( ! empty( $match[1] ) ) {
+ $atts['options'] = preg_split( '/[\r\n\t ]+/', trim( $match[1] ) );
+ }
+ if ( ! empty( $match[2] ) ) {
+ preg_match_all( '/"[^"]*"|\'[^\']*\'/', $match[2], $matched_values );
+ $atts['values'] = wpcf7_strip_quote_deep( $matched_values[0] );
+ }
+ } else {
+ $atts = $text;
+ }
+
+ return $atts;
+ }
+
+}
+
+$wpcf7_shortcode_manager = new WPCF7_ShortcodeManager();
+
+function wpcf7_add_shortcode( $tag, $func, $has_name = false ) {
+ global $wpcf7_shortcode_manager;
+
+ return $wpcf7_shortcode_manager->add_shortcode( $tag, $func, $has_name );
+}
+
+function wpcf7_remove_shortcode( $tag ) {
+ global $wpcf7_shortcode_manager;
+
+ return $wpcf7_shortcode_manager->remove_shortcode( $tag );
+}
+
+function wpcf7_do_shortcode( $content ) {
+ global $wpcf7_shortcode_manager;
+
+ return $wpcf7_shortcode_manager->do_shortcode( $content );
+}
+
+function wpcf7_get_shortcode_regex() {
+ global $wpcf7_shortcode_manager;
+
+ return $wpcf7_shortcode_manager->get_shortcode_regex();
+}
+
+?>
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/languages/readme.txt b/wp-content/plugins/contact-form-7/languages/readme.txt
new file mode 100644
index 0000000..b6f0ce5
--- /dev/null
+++ b/wp-content/plugins/contact-form-7/languages/readme.txt
@@ -0,0 +1,9 @@
+== For Translators ==
+
+Note: this folder contains MO files and POT file only. If you are looking for PO file, you can download it from here:
+
+http://plugins.svn.wordpress.org/contact-form-7/branches/languages/
+
+If you have created your own translation, or have an update of an existing one, please send it to Takayuki Miyoshi so that I can bundle it into the next release of Contact Form 7.
+
+Thank you.
\ No newline at end of file
diff --git a/wp-content/plugins/contact-form-7/languages/wpcf7-af.mo b/wp-content/plugins/contact-form-7/languages/wpcf7-af.mo
new file mode 100644
index 0000000000000000000000000000000000000000..82f4e172dc80898ad5b91f89e5b122a981ae45b3
GIT binary patch
literal 14283
zcmd6t3y>T~dB?|Kj1jg0VS^z&+QzaZTf27>wq&1PoTQT_>m;3ZCmF{GF}vHhH`?8q
z^~~&@P8e`7A()u=GY%xY2~J{SJD7kWkT@g`RS78<@61WC@
z3b+Ma4;}>d-tFK8;D}{1{Xl>=NG_B!Eb@EE_yPH(>hmx>gP&O{fvX+>+VoL4Qjo0Q1dN8t!EL`JZ}Lt
z?kfYn4itai9?I_r)&4F}?LQLA_lNQygBtHaQ0spPlze?H;I}}g9Q`}E3Ot9!Xr5Ps
z8h10e9^46PoR@$a=M@284XXX?LG}CgfbRvhp1VNxb1x{l`~)aIeF?l6{4uEhE_$k;
z=SooHtOd27R|VV&s-GE9{T>Fjt{S)#Y=gf5-U~ho{2ZuxJp?`n{4)4#@W-I~f7XS5
zzAHf0kAmuV2Gn~ufEqsrwT~I7@n06|Uj?fD>jS<8d@kiXK=t>Rpw{_4Q2YP1r}=(Y
zfa<3b%IiVRXG7kAQ4tbU&!^KM$(i_dwZ=3S5mK-T-Q!Ze>y0w>N;8n&_S2Zt!kU
z@BauCA1`FlYBvf>UpIkT{~l0!8iShmJScwN0PrxnjBW24rKHmc+&p!lT2>uw9
zJRD{dG|v}<>hDfa`}Ijs^7as@`TQ;TIPmMB=JRb(sbz}d?Bdup9!7~
zUJ|epa6PE?Zw1wEB0QfA&ku(3jiAP9fZCT5Tn4@z)I47U@)x~_AIoLgSf$mxAKU8c^e30WJeKg5uN8P=75b{W$<4l2Hp3-`)V~y$^#L_r6g6G${W3
z8L0Vw5mdil2gR3v0X2_*1*gCtf=*A?c>5oNnpXp?fNc;KM|XgF?@vID_gN4Xjy@lr
z{{Yl{{tMLjkLG3ZXE`W-tOV8XD5!p}3b+N_L3szLb=?MH`l1hln%AF#dhe^C#{GK0
zZ-eUhKSKEogh>599@IRZ1giaopw@pecrI80wVxY7@na9D_EVtVzaG?khr#o}Ca8Av
z;8yU(;3RlIxDGsf#M|qQ;BQm@449n}MK_HSV^RLvTJ{)x9gSsAJ^?c2=)0io#j|mK
ztHAZ3>W_eL1m6s5+?71kyw-r4*E&$^-UKp4GyxiL9;D0YZK3>GP;&E4Q0qPON^jrJ
z2eofk1Uv*DrhE*1JorWM67cWA8^OmS#2U8_o&$D3jei`Jy}T8aUwm&Ue+5M3qaT5q
z_oY;79&14D?*yp#>Y(iRt)Kzl1!|l>0%4!Kj_^AV8K@3vUT=qVeHwbLZn$3M!L9#8
z+MV8DUj^7c&~lD57O0wZgqG5=Qf~(v}fAK7eO6J*ZZM2KqD%I
z>r(-b2mDPi5BIY7ZAf~35A;qtMdp4=L=2EVLbZ9wfcdwI2Ey^gGa<(3_zC^-JOA
z`u>9@xPtqep^rn;&GSW0`)k1`LOY;c;n{|O
zH-N8%o)7&ZbP-fQx};OO-Uq!EN>$)`H#F<+qUaiMBHZr@_yKS?v=7=0b)gFMThL9=
zc~A^p4)w36akC7153~i6KD{2g7t-}&=vSfDPy)RidIxkA()BLrjnI3c=R&$Z2)z?}
z3v@ozzYcP9HS}vx75Zi9!_YS9QIM|ZK$ySiI_Pdl*SH7g99fqP+
zxxJ~ELAx`dpUOt?Am_w3F0Uc|0>0m!@Omv@r8Y
zk(60(7UnV&*Xy=h7N(rDrnGs-^wRpAt+xu3lzNSkj^E5n3v{*0R-09`_VTrxx8A&N
zbu{i?jcaXdW)ptO#jY*-Pt&@M#v2W@&n^g)GRe}oZKiEmCTWvq!)J3gZrHpSi^ga3
zq!lw*G~P;zjxGCWj`kW&+i;UCY}%j)CSE4-mb-I5~tj>vjx-X
zwacW-)I6J*La{X(PaA7Yw^!0zQkZ(yuqH{%%yqs~>liP~xIWjhDQuZdY`bA2tD$C1W
zvu6t%ZR@q0ajw_5k5A2P-!&d>kIR_-j<(OSvxPOQrjt&$oiI}bV(@S#kNZs5Q;9AcR`${C%<|3&1+(F#qDif76lO8&<)-L$yG*QVrrI`U;08Ndvh7(TUaX$*-e4p%
z%LrygV^HhL_1yAeWB87H+CY>a{?_tbUX
zwzG({UOH`ix6W=>lt>8bWKfdQ9xKg4g8Y?iTUsI(bd+at={DuKt&9a+8LN34o=
zt?i(bDSan!?!?Mcx-AWsa-gWp(PAGA@*Um?FF0|ICJ;N#ccLgWCwV)^uZwmvnp7-v
zo%kK^Ffwcy?0A_kVruAHj1e;sCO2-}K>d=U%wyS=8cLaF%qM4^AYtE
zWqX1q@}Lv#%q_ML$T|$5U$df!u7TloZS^%awXDyYnYc+I%bWgb-ce<4Z7bSkYdQ9A
zSAvO(cJgS0wXx
ztFQ7VH`M!v$Q<(0@T&8O%@(qprKj`w2-{v%lXkr5f4S>Kdu=1>37oK+ZCPV+Y*4B#
zEfvwexMQPzS-xQ1?(NG;J7#7w)5D$x1G`4D@9dsAVB>asvCpYc9~j7t3Yd=0RHOa)
z2=7P=6SoVz>O5?bXQVEVrkJ^S73`*Wxo#8XaoNtybn~o^rLFec;85GHMc>zZ$)!GX
zs=LHPOtFD6YRQgyp;$w)zXv=o%B|6Lcyaf0+!oORJVT~^NBb#-V8RcuH9C+X&zkLl
zUg2gvjRlUTF)Z!}oo-~dNLQBL%D73^GxQWw5aNX3OcgqWcUBfy0>3>A$nWe4w&s!B
zV9H8d4lzbi%=Xv@*G!(jTCH-Q*EGpNJTaZ5b4Wup-OlFYmIL%Pn(nYg(KJdSgE!r)
z9c7+<92?w7(W%6e1inym&Mul>K)QH!Chj2UGjawoD&p_FH6gM}q8U`uiGZ`kC)r_f
z%wQ2sC&uDCmi4_k@8#GwD9FM|ro7|y*hN|zgLWA8*l!jcooM%6V<$REN^2M1cq8pJ
z-D#vVE9$&(?)JDV?^N8&KUk5tI)x
zd4_+W<%9%ip^YZXE$FwSC-wek&$4qwQDZi8Cf?vdiBWK
zbtCJp?AKLPSxM50VwOt(05I~L?Fz0K_DJaCh}s=V(j$#zb{6?b%Om~9#l@@$6JKt=
z_=s~b7jIc2Vuiv=ma-6QPvBnYc;NWeaiP_CS3l@=(@4CmTr;BWSTx84&f!;NwU_K
z28Y9u)70wJcwLROqS6W}inQQ3ndOAwaVuWzwGy*8Sen+%#$nXxe^
zv}sIByJfcZFo*fFy}S2L3>UYyI=XDTKeAU8x{Nvf!b~CZ8x;+3peQ#VoY`5qYS>Pb
z!cSHv5CkQf#>`c4K8N6y}C
zjct<`B7!&J6`*5MtWEvOR}UW#@{rad
zK6@lM1z848C9MGF5R+ee|L`Pa&8FyL(;UU~xbo4`p}E#tvw70wc-D>^#iAl@RE*%jB_rv;B_UzwOmWmUo7(Cf
zYyo>x;^Wz`25|(xoPr6Ux;_&*jgGcXPDJj*UFL)&jUu{!u}GT!*R(tXHEGh374o8_
zBMJJL&|-^?Xdx)kqUXRhR45RIGlYGVS5B)&OP8Nh)WJ%G8
zhP&elT|15(Lc*5n=OO9FPWdFFy>v`J!=$7oJE^3kgwH1=d9tI&`IdZSf~fd}Bs$km
zNwO18kGE-TgBAso=*wZ+q#}J*lHPU?rnaQ@A(mT>?
zlA6BHOw#2()|zIngCznsNK4{hyb)PL$k-$`ku-~#ET79vsw1D9yhbdJCY4jAPjZtn
ztL*0`d4g3Gg{-8v5zgPhmX>moc2=20Dl}jzaYWgt#qDF;Sp}TQx?^U4CuC^Qche-N
z+)G+(OedrI5sy$OXC$pt4ou8`k|EAh=$lm0N?Q1-Jla3&Gm>x#2_AUk;Gg^U(_|g2
zCDEXpgp>C}J-$Z_>czJ~oG|o2h=Q_|8G7xLlyV@`m_P}POHz6X!K}&sqkM3AD<@Bj
z*t%cqGnAE9nsu?PNPa&W8IGbnrR_Lt=kk;q!&&EPnG3!o2J0i|EpwvDwv?qL(7+;u
z0An6CbjyefLJxQ}sNtQ#CSgT6QqTbcGB8Fb))u`Mer-N$_uE9<$m)~&;p9c;-@O&m
zmV`r^YhUxoTQ-p(J>$%dJi42Ct;|My5G`_?UASLF`(?+Fx$f|8Y{{+6LVr60=lBHC
z?ka=HC%i!d6P`OuBe5LvlLP}v%pHzPm^03wo-ycvq9-zKm^xx9BZhVZKg7CzQXKwN
z`3^>8hrws72S(nzEy5G^$wHjGIayY)OFIr}@{oPzwyhrc?R~=9L|blQb&{35?pM-F2w{#3-HF&_!g4zWq@xP%6{U;hsjT!E_r9D
zPVzGSh^~g}%OF>O#+j6h9EuZ$CGpncGd-?OabZY*GA2Q|_h0zEFq5K{FV0G@oeMM9
zE*f!A>vEkaw9yub#h5ojh|HpMrF#PwwAeM;KAdAqGoFD}gfWUu`Gk!`G{hIuoW!?$
z!a_pC7Bo_#GGK^&bd&D~d=gDhI&1pro}5<->4QOV^?#Q5Tq3%p473UTm_bUsggtP8
zeeppB-+y$jktnrX9t)NnT@;ttCj<{KtGC7bp(Q^BzuitFOfDK3XwOnP{r{1UzD^CM
zgzWohTrwu<)4zsrTu{#Qr*3SA(d1A6QYu#|Y4yB<&El#8fuX|rDxD1b3WC5BW$I|=
zZ4~b-lI88b$!RE9)M}P&v($Q+7v10Y$m2^kQVylmexEGF|GUXiR8JNLTkkWZcm_*+
z|GS8KKXlJ5RDkX{DCN2XC0=_~Kb4DIUhY!x#E2mEghyijv6c2|=v$0(?Jd
z_ga#4_=wqaIIaItVn
z4NYXA5l)!;4iZLa1Q|kiLUGPt3DyVhbQxC5es$(_%C~JSz5Arke@SS%CuCVM7qe7E*&D3!0!||*)jG(uvT@Y#za9N#>(B(Du5q^-UCY_h9opPoKQwg(7mlia
z5DEn$^3jvmA=TFw8-z^GhxZKv5B&32z()GN051fu
zc$+cr0jGgCf(yYEcrOTx=1EZVPJnD}p7-P50k!YTp!WSC_zv(DQ2V{=$IpiuJ)aC}
z{-vPi1)%u;~t6{orKq77TC$
zC3ggh@6Dj(`Y0%Vw}aYu(Bng(^!%vr9|Sf3DNysD_5Bxo|3y&yeH)Y>z7NWtKl1ns
z5EYo;fYZT?-{tt618Uy|;Pv2gQ2Trw)IPgC-VaKyhe6SO)Z>0o@;n8K&L}8<{R${O
zRlq5rxy;eK3KX9+K+(Gn)P8e8*>|DGR#5cr21UOM)VeIV6x{^>*zlLie4F%
zyuStI2Unp4(QO1pXO8dR3`*YRzP}cfo^SX44IU#<>v}=a+YE}o?f&_L9zW;t%b@5C
zgVNJcQ1YGv#rHSBIp9m+wV;&O0L%opf_H(>fPW9Z0Nziq1mG=~8*>fV16~O}0%B5g
z3cLdR8&L84OK>mveg+jchd{}H1Qb7`pyc@~C_TLd!ixDNcr`c)V@(AcK|;%{2j%}g
zAf(L}5Z25ipw^uLZvnpxO3upy$M03(8v2Vtjei;xoiBmn<4I6-M!{zAZ$U_yix5tF
znF&gdcYwH%xf|5}{h;Q37E~S?1q1N!K*{wV;CdYKx1jc0hfuhJ*$7Im0dPC`7^r=x
zF!%(x0lWr$JxURs22lQSJt)7L4@%w;By`Qapy+=ZTnl~~RDSz+Q1SbQX~ujQYzFoG
z3!w7O&p^%lEhzn7GTrs3f}(qa@2>@C(C+}1FYX5=$K#;rJP%4A-vOnMpMv6Z5{vXa
z1&Y4~pq{S+m5;LEQt+c7Dl%UOr+_~OXMq=>1kJy};~k*rZ2{j1?gj4x9|ZS;KLaIC
z38QJ=ASgLL4~n0sK&|^esQv#DoCN+9l>h!GsP&U)y72(ypShN=8^Alj4d6o{BAQ=<
zqJJ4dgQ`s11R~jp#1V<;Dz80Q2XBx>KuB^_m6|3`=akxK+*X(P;_4P&o7$g;^0b9=kk0|
z^4$vJqNW?;MOe%rH2im{Iv*5uIEAR^CCzHnU}%0gRg?`05AEVm6POijQkOE(FELouKyX0L4!~D1Gb(
zwf+%Md>sNW1z+&vFN5!-{|cye{|##1MJQeC15nRrfp>$;z;5sWxB$F_p!gQJ7F_!}
zYk%L$Rl&xJQs%#g8Va2^M&h~UxCkqSI&3m!#{zN|6f4u|6ic^
znoKZ2%3KK&s%8TS%VsYqzxf&{JNz6}JYEWu^4odfGB5!RuNB(0aWMjbw<9hd{)R{#6m9*4n$G}&qTvemvxjf#@LAWjdHi$!w_;hJ
zkI=qO`%~IAw2#sBxq^1D{pIw!p5L;cK3}F?Mf-DFJ8e7dI+{MOcVNH&g74>i{}}iP
z?TfU(_G1I!I$E0cC~YzA1sW!?pA_GB_}?D~_tB2iR?(E(^tqWPJFlc&O4H{>+Adl^
zdn4^mnm+f@K52h(U-5VwD1QlkU%s-z|NaEHoAw^xKObC5`-<;pz)NWN_`dR!K0~xO
z&`3G%LQ6jH^FJ1N+zW1|DGoN$9-=7+CZ8wxF`d>zn@lUvo}&FF
z?L3-3S=ut%UFy_*KFaTlX!VGhJx+UurW~NSNj{hRA2Yzu(|Tw{
z+9{eoSJG~vDfabIjD46^qUm!HZ5Az3XWZvA^t=7o7r=MWuBWZ_W3#~z(eCzr!PB(+
zX@j&Qv@g*bX#F&OPS8G0n@f9;_ElQ_=P;c{S_kcR+SRmA(GJlbqb;I6O#23H6K$0C
zW}2B^h(1!v6r%JDGd+&7QD-s8hPkd%*cHt%*92>GQPA0)&vZsXUsMRPnOu}&xV<|p
z2E9?3i-XOXI8)3Qg8uG&5O#J(eZ@E^c1J-mD)a`WTxWOG*%JquqL#7K)_Ymh52@)<
zsw)*VUE4H&!M(F*n0axrkk579v?!k|hA^=-&+<9J)TXQBz_SYqik3x#dbpfz78mbyw&9GQisY*$#&v_&ng?TePTm_=bR#Ocf;`ASEA3+i9gji+J9
z>1~e-yqJ$(4!ZhKTA=QM+
zcpU_7F3)%YiHqHNIImGJ^=0#6+Gdoq4F^jK1<2$(J4*!wVw%D>tc7i}8;LVpBQkF<
znzS<mvQI91S(#zZOuy=G}4A}a&=UN+EoFf}&IP<^M2zAVb2
zH{7f}?4pw|bh*(&uO1ensK+diItt{&%0{bQ*BaQ
z_GL?5nOrKc2_yDf1mhZ2
zUbJ7qbPlW4VULc*BwGd1md-4hZ*#Q3J#s18KX()HIs7H9Rg}o9qjaW3*EwylFrOZ1uJ$_Wd$Cy)_C{t+zR(|8E3U~GqvoJJACyR~
zKKss83lUS;4d-fpq4N
zVpkMcW2z>=tofj?knd#2R5FKyH*04k)rj+8p66{a*Bu|N7&0V0v7B>`nRF9dFdi2d
zm|Lkc?AO*PHtRSm^0Gf!fSxaR+y)EGx;%a@Zr7D!%XJ$$*|d>r>=&_}&PQ=>TG8bl
z%VcMscqJwHO2!|$DsKFmX)zhW=9HixKi)JZ=S)0@R0nrBeJZ
zbco4n-O-lGb>kJLEt}sQ_E;cpO*#cY(b)e!Gr|kdSe|Ty~)b%$RmU)VhMr(&I9;G#3z?L2t-eU{#kK`K&9D
z>uBC5#wGb)8`rin(;mzt-G|O-5E^?T*vZy~GC5}3a>ylZn+a@MzscU0n;HYX^@
z$#j$*+Imwy
ztJ4jRt)dV|TuhB;SO>IfBzuwVl8j-g<<2An*
zEl{>3XX3c6%Ugp;HPX2zg}DI?AI5pO;#6DSzIv5atn#Vbn^CKJo!pwDkoN~M=5u#l
z8)^QjENc^9O!iiK3JX08%x$Vosf)3b<%#R3FWk=Ys9I8zgQ#SBeQ0wTBb$+3VwZ%;
z!{l446?0oAD$3C~=Wj2BeL)nGIBh-DPhAqsv*+GTK{4!FU=;MqpkYT|*T6hNsVHX;
zB&e^2Qj>yU+M>Vk9j=bOThoc*D{ST-70!-iSYTFC2IZdj3S
zxJ{)}KG!_vcEoFshM>jXx`WNBrc~3Ub&>9-4Xfj>OuAuVsVi&98LnAor`(ugBy`-jtrqrxSi`*r&K}T-04MVaSkug`N7=>|h{`&T%4L8*0iP=q2pf_;wDyCpRSAsltJTF9IVa3#*K3~MsqiAWsRxSq}FVy5M~>e;$U%eki)O(#`Bxzs%Ylt{8@8r
zixX8fd)wBYEaGJfch2Tu{hAf+OBM$$>sl5DOIEK~*V4YEtv0PK3Jaaxt?b`0t2qhq
z26=bGoJnSSWmoyx%FfDQd6-vu<$dL&<&nxz`C$2YP(H}`&hm5RLwcphQ0)=Z50;OV
zj|I%wQP~-kPnMr8AGfm@*XVa^(|trK4Sbsxrj5Mk?DX
z+l2uOc2@SfxlfmmGxn_Z*cC998I@gb)-a^m9!8J3xknw(dRquDPl)w<;X-T<2h$U(
zC(Faofn7qdKfMq
zXRrIlzh6Y8T>*3wVV*pLxIJD)o2?;`GE$`#>$H~wNwz_MBjDM`lgNU5QAs8a6NS%N
z8S94deKe$~I$1wcU6fnf1-4LLb$OLn7N20=&ichl5TaSP9Ct>G+mmIA;~^uLfvAMA
zrZnYISi})o>8I8uA1Cc7cugDFlB2Qz_MWZPcDmw}eMzJeX5rAZbB;jAt0U<~V~V
z;QA0L-{!ss1XG-l)3cM$+?~;#jYs4uZCQMjK&N@c$@2c!bDep;xr{$iA
z=tvJ?s$Ex(-L>Ye^?bqLIr!3>V?EZkyUS0*!Q=cq=Mv(`E;vH8ZL{2rT~K{aaG#p+
zxfi}#5*fBWSw3pBk$wafA~})N1r<)Fz#YXTM0j0<$pgmnYi)K45@d^=)**Jl64~Ia
zq#>%rIT3wKFi5%^#27ou_XjYrO_p*Uo21p-TMIdB^kGs(Vh!bM_V#fHC-RIPHf)$8
z*Rn%c`RNLour_cEXH{N0uE9zYv+z2^u=6mCwvC1I!e^2>)+~l8GW%|uibk*)Iy(-L
z)5_xq%Lgn8gp*Q^A-H3rvIn=4msywBsw0Xv&f?n7vF?#b3B6h@umTHJ1_No`c|eky
zBt2Y91Mtmm1Y|&59V847I7OU$s@8MT2NJ^_cl(hM0?@=W1Y(7t49d@mb!Wp-Tk$f>UUW}=w7W7i*&zG6_7Xt&)5qod+*CrY3|9J7<7j%;>c
zv9JwC^Nw9{wq)UGWe|m0!`2S!a@C*QM$+M^)Fbszd=}NtO}5;QD-fTCWp#;{t`+S#
zK64U%u_?jV?7sCT)RI@Kz~hoEAl2FfD1cFl6hFyweVAzy#I7SXvM2snH^@)i&kZK?
zP9uim*)6N=;kgdXgpM6hc_}}zgA>$uiPGxSUR5N!slXCd=lV`mR63?ioJiTGUhjA(
zQA_@oFB~sF7mzM+X?dbA&8flcX8V!mS^Y{lwm(_rOFSzEx;YFPJja)ya`F8bb5s9lvN0Pj9rFc+jM0T$$qU1hI9cLxy
zFk=#hvr*O05!=Z+W?Z)o%x&aGKF$!STA&1$2}+#GCy>(>uBhy=ZWI9mCC97uiH^`R
z5-MUV4@oB@NZ`&1E^n3lr0ofpx`jh5Bi5w3r%@O`bXrP@&PsX+8648-My_fHJgVCF
zF6kaUYX?xd6h?*S7
z)1{K~M4_$OrqtcnXSZa~O
zAw4G1LF2A!UVSboP_K1vtHZI!g7q?YwXp2&4eX@a4Y<4?Gg(!;C)Rw9p5u*8?KM+U
zGE*j%$rQLY3gzL-E#%-Nx7d3kgY^jotsF;@zVvtOIzO`HtcCo6AoBjc8(98#CZRrN
zg1sKet^Bpz+Lwj?Xid5&*jGO7x2c82bo+<68A&aG68!6mB%#Pr#-~zwkKEY_a0Hv2
zGUe()ZO{b{AWyJ2>}yCPBM7y2O$A{1
zvQB+Ewk+sXj!lMcPPOY}yVkddBlZmJvZ^p{nY|?0C-#INa-%2V(q7w~!Q@)@Ze^tz
zR2E1i(hZXAQ`zb6k2<#8?Gas$CQf3P*}kWw1>-y&jo7=tX1MYcFQSSW#$dJbRHuQH
zW1{Sm6s&Oc01R`iVWjPb-QZcLmp?bF6-g4%Rx>0owmd|NLcGJ};p%%3nQ#{d$4pLB
z_N^DJ*h$3d
zD_@XB6rz?Xl%aj38~?(tu0ohdQxei1&16YV8U+$`Mb%a(0e?32#XpjZva%>MJatXf
z>7+7|bI+ziY0X|*q=!Ge9AX|`xp4Rbm(CMd$Q8mQi&_z?bgUrcnf=RbRnm%F+j^nO
z|72Ll_^{3s(vH=YY9p_Up~@cWo$86EE022xP-6whLo+y^rAaQY3`ujk3G1xV%}RyN
z9_dfvLsu6NNGXl8`keZl*z!7Jpg#VNpp9yl|D({DuK}dC1NdTMzp+YFa#b+%X2m)F
zC>@pIM-&ULVoJ0px$OxljZSPja(K;9NuciZuaj+1ag|eGxQiV>s?nkgE2kkQOB
z_2z!>Jvtvr^Kz&9r1Bcc`V;>wD=W3S6s~b{ViVuB?uJU`SvELTt}9-2g78{wmkKfU
zYk`qCKQ~@R2d$>ZWvHqiaBXpqz$1=U?JwYr{oX3W-|rvMt&{K`(I2NI+p%Xh(Tr|Y
zT2{|&oBgE9>e;J9amc;%sH)d%TES_xKe49E2Tjc)`sA;6$r?gTSBV
z4Oy`E;$(cbP$ao!I4Y;xI7`|;(bvx7syDzl%SLn;P`PzR93=NHE1rKLq)B7m#F1Z>
znhl=iX))bVBgKx&tx38XW2V?EA3)J64T^p>{
z;71j9)KRH>JC7u)l<>rD{QV0eWEdSD{w^u)o-td4>{~uy6RD~mWT1X{CNUcKS{|#!
zu(a(JT}1648evv%DR|;40=F4e4+lT5w9hPFkknTzvXZS2Qo*DtSl#`>;_)f6UA5;#
z^tUQolTEQ{NPidGuBlA6d%=j$vMRcqAGuT7=UJoFWFL%Fc36LckeiCh^ag?}ZgS0F
zN^>~lH_f~vDf1w=INuQii=xiGbwpUZ!n&XMO
zLa#=+ogxx1zBsa=E`>wNm%TVUWRA&s?Mq%neytZ7d=($CS?WG1>Y$wKtp9!DtPlPW
O|E~hss+UaO%KR^i`FctK
literal 0
HcmV?d00001
diff --git a/wp-content/plugins/contact-form-7/languages/wpcf7-az_AZ.mo b/wp-content/plugins/contact-form-7/languages/wpcf7-az_AZ.mo
new file mode 100644
index 0000000000000000000000000000000000000000..e72c371016bfd3b98698073548d5c63c55d16096
GIT binary patch
literal 14824
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
CPa
zO7caBPl}ZjH2z#><~)n>kel5k>+m(rq*k-elt^fuBq12cu`@Bv!nSI1)ncw>11vz((nY)iTFF$vz7
zqs6m7wND-r)2&=>SEg9uZ+F7>x-_>+(AwLimJ@Iwi(JNbjt`8_-xO!2Y`Gm2e<%ueZ^zcl
zrnbh#>8I_y@$hV=$1Bd6K;9x(PCnUZkhdYPQ;nbiWY!gnzZZE2!)BC6P4pMPA`YVW
zoJr(u^6dPDC#f=^dvEzQmr1@>0*3$<{AlsYT|*?HExC4)g!4j;Cf*`8qnMgHTW#&T
z=#TAjHy(*8$}(ZgkuDL4Sw~bApLO`<=S3pYMj@Vz%xbDscx#BIWjINasl$nKqk=H^
zDlnR9?pkZrUJ*0Ipu)sa$z8i}>-@z+7O+@URXN;A%l|6CektoL2iM6u^T$8LgFlbS
zWm419O_Dvt2*3X1BZcoQGR&)S-x(XBHW#1DHYCLUPVK=3a;7R9z*&yg@!n}c1hcrnl)kh&qmT{
z$wVhz-cqo8?mdovgnGJlp(+uPIcuWIvI$$SaWp4qnNuvN}%NVB#P|v
zH_k~YGtdqPoDXshX9nryQCSWd6~f>W|BxqyXjbGNxGcNQO1D3EhHcg>IpVSdq}w|I
zi@tVlX85MU@XY9iOfV!qqMda|mV5+<1IsGWZjPNM?R|A!CW1LyIHSVf%W?uTVz$Ev
zCXvshFG2nii+HxoJ9;C7j4|UTR8mywC+Ch|*s|7*sqK4b=I&imj_4UH)t$4Cj0AV}
zQ63{EUU7FcMO5SvIH|(G%`@v*d#r%1uDH`D&dh?Xtvua=#ipxokyle@zZVZL&ru}w
zi+2};`tJmpYuho(RB^&B#cRcmE+N;nlS=&YH=(LBg(I9K?Kp)_^ap>cSR1yc4R_^0
z3J>e9BCeZDk+^`^sS;oq2W9z5zNm1_l>RX*eiOO=A_ZHE
Gg8v4D;gCrH
literal 0
HcmV?d00001
diff --git a/wp-content/plugins/contact-form-7/languages/wpcf7-be_BY.mo b/wp-content/plugins/contact-form-7/languages/wpcf7-be_BY.mo
new file mode 100644
index 0000000000000000000000000000000000000000..f2df111797d644d91b78e397a718b220023f2b65
GIT binary patch
literal 18379
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
D7&c@j
literal 0
HcmV?d00001
diff --git a/wp-content/plugins/contact-form-7/languages/wpcf7-bg_BG.mo b/wp-content/plugins/contact-form-7/languages/wpcf7-bg_BG.mo
new file mode 100644
index 0000000000000000000000000000000000000000..bf34dae271a88c15a46e04d1fa39a8cdfc8966b0
GIT binary patch
literal 5969
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
aSq0C-$#p4Ud&k@TCC4NPNG>4Uar1vytN5${
literal 0
HcmV?d00001
diff --git a/wp-content/plugins/contact-form-7/languages/wpcf7-bs.mo b/wp-content/plugins/contact-form-7/languages/wpcf7-bs.mo
new file mode 100644
index 0000000000000000000000000000000000000000..3f80f1edc0380389118ed242240099c9c830b8db
GIT binary patch
literal 7278
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
literal 0
HcmV?d00001
diff --git a/wp-content/plugins/contact-form-7/languages/wpcf7-ca.mo b/wp-content/plugins/contact-form-7/languages/wpcf7-ca.mo
new file mode 100644
index 0000000000000000000000000000000000000000..6b27de6a9881b3cc400283eacfc961c9f392965a
GIT binary patch
literal 10044
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
E0tDwcf&c&j
literal 0
HcmV?d00001
diff --git a/wp-content/plugins/contact-form-7/languages/wpcf7-cs_CZ.mo b/wp-content/plugins/contact-form-7/languages/wpcf7-cs_CZ.mo
new file mode 100644
index 0000000000000000000000000000000000000000..f2a34790a39b6403c4a5b019552bd5c42f2f51be
GIT binary patch
literal 14748
zcmd6t3zS_|dB+cmJffgdMDbC#K}Z6bn+NY94`%Wpfg}u>Nl-+?nS0O7J#+6p=XxGD
z%!pDIA1H`WL}P4WTB`+(s8njLq3F!uqg}KWyOxT@<-4xBTG6hyOIh0Af1iEsoq;6U
zuC~j&^4Ukf3j^`}`KLI`$
z{4971_%L`L_ |