Merge lp:~yoboy-leguesh/ubuntu-party/bug720119 into lp:ubuntu-party

Proposed by YoBoY
Status: Merged
Merged at revision: 7
Proposed branch: lp:~yoboy-leguesh/ubuntu-party/bug720119
Merge into: lp:ubuntu-party
Diff against target: 8305 lines (+7976/-0)
37 files modified
wp-content/plugins/contact-form-7/admin/admin.php (+370/-0)
wp-content/plugins/contact-form-7/admin/edit.php (+351/-0)
wp-content/plugins/contact-form-7/admin/scripts.js (+116/-0)
wp-content/plugins/contact-form-7/admin/styles-rtl.css (+22/-0)
wp-content/plugins/contact-form-7/admin/styles.css (+248/-0)
wp-content/plugins/contact-form-7/admin/taggenerator.js (+262/-0)
wp-content/plugins/contact-form-7/includes/classes.php (+645/-0)
wp-content/plugins/contact-form-7/includes/controller.php (+288/-0)
wp-content/plugins/contact-form-7/includes/formatting.php (+144/-0)
wp-content/plugins/contact-form-7/includes/functions.php (+225/-0)
wp-content/plugins/contact-form-7/includes/pipe.php (+67/-0)
wp-content/plugins/contact-form-7/includes/shortcodes.php (+171/-0)
wp-content/plugins/contact-form-7/includes/taggenerator.php (+49/-0)
wp-content/plugins/contact-form-7/jquery.form.js (+791/-0)
wp-content/plugins/contact-form-7/languages/readme.txt (+9/-0)
wp-content/plugins/contact-form-7/languages/wpcf7.pot (+842/-0)
wp-content/plugins/contact-form-7/license.txt (+339/-0)
wp-content/plugins/contact-form-7/modules/acceptance.php (+186/-0)
wp-content/plugins/contact-form-7/modules/captcha.php (+490/-0)
wp-content/plugins/contact-form-7/modules/checkbox.php (+244/-0)
wp-content/plugins/contact-form-7/modules/file.php (+349/-0)
wp-content/plugins/contact-form-7/modules/icl.php (+79/-0)
wp-content/plugins/contact-form-7/modules/quiz.php (+214/-0)
wp-content/plugins/contact-form-7/modules/response.php (+17/-0)
wp-content/plugins/contact-form-7/modules/select.php (+193/-0)
wp-content/plugins/contact-form-7/modules/special-mail-tags.php (+69/-0)
wp-content/plugins/contact-form-7/modules/submit.php (+97/-0)
wp-content/plugins/contact-form-7/modules/text.php (+210/-0)
wp-content/plugins/contact-form-7/modules/textarea.php (+172/-0)
wp-content/plugins/contact-form-7/readme.txt (+136/-0)
wp-content/plugins/contact-form-7/scripts.js (+198/-0)
wp-content/plugins/contact-form-7/settings.php (+111/-0)
wp-content/plugins/contact-form-7/styles-rtl.css (+12/-0)
wp-content/plugins/contact-form-7/styles.css (+65/-0)
wp-content/plugins/contact-form-7/uninstall.php (+18/-0)
wp-content/plugins/contact-form-7/wp-contact-form-7.php (+69/-0)
wp-content/themes/ubuntu-party_light/images/icons/up_mail.svg (+108/-0)
To merge this branch: bzr merge lp:~yoboy-leguesh/ubuntu-party/bug720119
Reviewer Review Type Date Requested Status
Ubuntu Party WebApps Developpers Pending
Review via email: mp+50354@code.launchpad.net

Description of the change

Ajout d'un plugin de contact, et d'une icone enveloppe

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'wp-content/plugins/contact-form-7'
2=== added directory 'wp-content/plugins/contact-form-7/admin'
3=== added file 'wp-content/plugins/contact-form-7/admin/admin.php'
4--- wp-content/plugins/contact-form-7/admin/admin.php 1970-01-01 00:00:00 +0000
5+++ wp-content/plugins/contact-form-7/admin/admin.php 2011-02-18 16:15:41 +0000
6@@ -0,0 +1,370 @@
7+<?php
8+
9+function wpcf7_admin_has_edit_cap() {
10+ return current_user_can( WPCF7_ADMIN_READ_WRITE_CAPABILITY );
11+}
12+
13+add_action( 'admin_menu', 'wpcf7_admin_add_pages', 9 );
14+
15+function wpcf7_admin_add_pages() {
16+
17+ if ( isset( $_POST['wpcf7-save'] ) && wpcf7_admin_has_edit_cap() ) {
18+ $id = $_POST['wpcf7-id'];
19+ check_admin_referer( 'wpcf7-save_' . $id );
20+
21+ if ( ! $contact_form = wpcf7_contact_form( $id ) ) {
22+ $contact_form = new WPCF7_ContactForm();
23+ $contact_form->initial = true;
24+ }
25+
26+ $title = trim( $_POST['wpcf7-title'] );
27+
28+ $form = trim( $_POST['wpcf7-form'] );
29+
30+ $mail = array(
31+ 'subject' => trim( $_POST['wpcf7-mail-subject'] ),
32+ 'sender' => trim( $_POST['wpcf7-mail-sender'] ),
33+ 'body' => trim( $_POST['wpcf7-mail-body'] ),
34+ 'recipient' => trim( $_POST['wpcf7-mail-recipient'] ),
35+ 'additional_headers' => trim( $_POST['wpcf7-mail-additional-headers'] ),
36+ 'attachments' => trim( $_POST['wpcf7-mail-attachments'] ),
37+ 'use_html' =>
38+ isset( $_POST['wpcf7-mail-use-html'] ) && 1 == $_POST['wpcf7-mail-use-html']
39+ );
40+
41+ $mail_2 = array(
42+ 'active' =>
43+ isset( $_POST['wpcf7-mail-2-active'] ) && 1 == $_POST['wpcf7-mail-2-active'],
44+ 'subject' => trim( $_POST['wpcf7-mail-2-subject'] ),
45+ 'sender' => trim( $_POST['wpcf7-mail-2-sender'] ),
46+ 'body' => trim( $_POST['wpcf7-mail-2-body'] ),
47+ 'recipient' => trim( $_POST['wpcf7-mail-2-recipient'] ),
48+ 'additional_headers' => trim( $_POST['wpcf7-mail-2-additional-headers'] ),
49+ 'attachments' => trim( $_POST['wpcf7-mail-2-attachments'] ),
50+ 'use_html' =>
51+ isset( $_POST['wpcf7-mail-2-use-html'] ) && 1 == $_POST['wpcf7-mail-2-use-html']
52+ );
53+
54+ $messages = $contact_form->messages;
55+ foreach ( wpcf7_messages() as $key => $arr ) {
56+ $field_name = 'wpcf7-message-' . strtr( $key, '_', '-' );
57+ if ( isset( $_POST[$field_name] ) )
58+ $messages[$key] = trim( $_POST[$field_name] );
59+ }
60+
61+ $additional_settings = trim( $_POST['wpcf7-additional-settings'] );
62+
63+ $query = array();
64+ $query['message'] = ( $contact_form->initial ) ? 'created' : 'saved';
65+
66+ $contact_form->title = $title;
67+ $contact_form->form = $form;
68+ $contact_form->mail = $mail;
69+ $contact_form->mail_2 = $mail_2;
70+ $contact_form->messages = $messages;
71+ $contact_form->additional_settings = $additional_settings;
72+
73+ $contact_form->save();
74+
75+ $query['contactform'] = $contact_form->id;
76+ $redirect_to = wpcf7_admin_url( $query );
77+ wp_redirect( $redirect_to );
78+ exit();
79+ } elseif ( isset( $_POST['wpcf7-copy'] ) && wpcf7_admin_has_edit_cap() ) {
80+ $id = $_POST['wpcf7-id'];
81+ check_admin_referer( 'wpcf7-copy_' . $id );
82+
83+ $query = array();
84+
85+ if ( $contact_form = wpcf7_contact_form( $id ) ) {
86+ $new_contact_form = $contact_form->copy();
87+ $new_contact_form->save();
88+
89+ $query['contactform'] = $new_contact_form->id;
90+ $query['message'] = 'created';
91+ } else {
92+ $query['contactform'] = $contact_form->id;
93+ }
94+
95+ $redirect_to = wpcf7_admin_url( $query );
96+ wp_redirect( $redirect_to );
97+ exit();
98+ } elseif ( isset( $_POST['wpcf7-delete'] ) && wpcf7_admin_has_edit_cap() ) {
99+ $id = $_POST['wpcf7-id'];
100+ check_admin_referer( 'wpcf7-delete_' . $id );
101+
102+ if ( $contact_form = wpcf7_contact_form( $id ) )
103+ $contact_form->delete();
104+
105+ $redirect_to = wpcf7_admin_url( array( 'message' => 'deleted' ) );
106+ wp_redirect( $redirect_to );
107+ exit();
108+ } elseif ( isset( $_GET['wpcf7-create-table'] ) ) {
109+ check_admin_referer( 'wpcf7-create-table' );
110+
111+ $query = array();
112+
113+ if ( ! wpcf7_table_exists() && current_user_can( 'activate_plugins' ) ) {
114+ wpcf7_install();
115+ if ( wpcf7_table_exists() ) {
116+ $query['message'] = 'table_created';
117+ } else {
118+ $query['message'] = 'table_not_created';
119+ }
120+ }
121+
122+ wp_redirect( wpcf7_admin_url( $query ) );
123+ exit();
124+ }
125+
126+ add_menu_page( __( 'Contact Form 7', 'wpcf7' ), __( 'Contact', 'wpcf7' ),
127+ WPCF7_ADMIN_READ_CAPABILITY, 'wpcf7', 'wpcf7_admin_management_page' );
128+
129+ add_submenu_page( 'wpcf7', __( 'Edit Contact Forms', 'wpcf7' ), __( 'Edit', 'wpcf7' ),
130+ WPCF7_ADMIN_READ_CAPABILITY, 'wpcf7', 'wpcf7_admin_management_page' );
131+}
132+
133+add_action( 'admin_print_styles', 'wpcf7_admin_enqueue_styles' );
134+
135+function wpcf7_admin_enqueue_styles() {
136+ global $plugin_page;
137+
138+ if ( ! isset( $plugin_page ) || 'wpcf7' != $plugin_page )
139+ return;
140+
141+ wp_enqueue_style( 'thickbox' );
142+
143+ wp_enqueue_style( 'contact-form-7-admin', wpcf7_plugin_url( 'admin/styles.css' ),
144+ array(), WPCF7_VERSION, 'all' );
145+
146+ if ( 'rtl' == get_bloginfo( 'text_direction' ) ) {
147+ wp_enqueue_style( 'contact-form-7-admin-rtl',
148+ wpcf7_plugin_url( 'admin/styles-rtl.css' ), array(), WPCF7_VERSION, 'all' );
149+ }
150+}
151+
152+add_action( 'admin_print_scripts', 'wpcf7_admin_enqueue_scripts' );
153+
154+function wpcf7_admin_enqueue_scripts() {
155+ global $plugin_page;
156+
157+ if ( ! isset( $plugin_page ) || 'wpcf7' != $plugin_page )
158+ return;
159+
160+ wp_enqueue_script( 'thickbox' );
161+
162+ wp_enqueue_script( 'wpcf7-admin-taggenerator', wpcf7_plugin_url( 'admin/taggenerator.js' ),
163+ array( 'jquery' ), WPCF7_VERSION, true );
164+
165+ wp_enqueue_script( 'wpcf7-admin', wpcf7_plugin_url( 'admin/scripts.js' ),
166+ array( 'jquery', 'wpcf7-admin-taggenerator' ), WPCF7_VERSION, true );
167+ wp_localize_script( 'wpcf7-admin', '_wpcf7L10n', array(
168+ 'generateTag' => __( 'Generate Tag', 'wpcf7' ),
169+ 'show' => __( "Show", 'wpcf7' ),
170+ 'hide' => __( "Hide", 'wpcf7' ) ) );
171+}
172+
173+add_action( 'admin_footer', 'wpcf7_admin_footer' );
174+
175+function wpcf7_admin_footer() {
176+ global $plugin_page;
177+
178+ if ( ! isset( $plugin_page ) || 'wpcf7' != $plugin_page )
179+ return;
180+
181+?>
182+<script type="text/javascript">
183+/* <![CDATA[ */
184+var _wpcf7 = {
185+ pluginUrl: '<?php echo wpcf7_plugin_url(); ?>',
186+ tagGenerators: {
187+<?php wpcf7_print_tag_generators(); ?>
188+ }
189+};
190+/* ]]> */
191+</script>
192+<?php
193+}
194+
195+function wpcf7_admin_management_page() {
196+ $contact_forms = wpcf7_contact_forms();
197+
198+ $unsaved = false;
199+
200+ if ( ! isset( $_GET['contactform'] ) )
201+ $_GET['contactform'] = '';
202+
203+ if ( 'new' == $_GET['contactform'] ) {
204+ $unsaved = true;
205+ $current = -1;
206+ $cf = wpcf7_contact_form_default_pack( isset( $_GET['locale'] ) ? $_GET['locale'] : '' );
207+ } elseif ( $cf = wpcf7_contact_form( $_GET['contactform'] ) ) {
208+ $current = (int) $_GET['contactform'];
209+ } else {
210+ $first = reset( $contact_forms ); // Returns first item
211+ $current = $first->id;
212+ $cf = wpcf7_contact_form( $current );
213+ }
214+
215+ require_once WPCF7_PLUGIN_DIR . '/admin/edit.php';
216+}
217+
218+/* Install and default settings */
219+
220+add_action( 'activate_' . WPCF7_PLUGIN_BASENAME, 'wpcf7_install' );
221+
222+function wpcf7_install() {
223+ global $wpdb, $wpcf7;
224+
225+ if ( wpcf7_table_exists() )
226+ return; // Exists already
227+
228+ $charset_collate = '';
229+ if ( $wpdb->has_cap( 'collation' ) ) {
230+ if ( ! empty( $wpdb->charset ) )
231+ $charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
232+ if ( ! empty( $wpdb->collate ) )
233+ $charset_collate .= " COLLATE $wpdb->collate";
234+ }
235+
236+ $wpdb->query( "CREATE TABLE IF NOT EXISTS $wpcf7->contactforms (
237+ cf7_unit_id bigint(20) unsigned NOT NULL auto_increment,
238+ title varchar(200) NOT NULL default '',
239+ form text NOT NULL,
240+ mail text NOT NULL,
241+ mail_2 text NOT NULL,
242+ messages text NOT NULL,
243+ additional_settings text NOT NULL,
244+ PRIMARY KEY (cf7_unit_id)) $charset_collate;" );
245+
246+ if ( ! wpcf7_table_exists() )
247+ return false; // Failed to create
248+
249+ $legacy_data = get_option( 'wpcf7' );
250+ if ( is_array( $legacy_data )
251+ && is_array( $legacy_data['contact_forms'] ) && $legacy_data['contact_forms'] ) {
252+ foreach ( $legacy_data['contact_forms'] as $key => $value ) {
253+ $wpdb->insert( $wpcf7->contactforms, array(
254+ 'cf7_unit_id' => $key,
255+ 'title' => $value['title'],
256+ 'form' => maybe_serialize( $value['form'] ),
257+ 'mail' => maybe_serialize( $value['mail'] ),
258+ 'mail_2' => maybe_serialize( $value['mail_2'] ),
259+ 'messages' => maybe_serialize( $value['messages'] ),
260+ 'additional_settings' => maybe_serialize( $value['additional_settings'] )
261+ ), array( '%d', '%s', '%s', '%s', '%s', '%s', '%s' ) );
262+ }
263+ } else {
264+ wpcf7_load_plugin_textdomain();
265+
266+ $wpdb->insert( $wpcf7->contactforms, array(
267+ 'title' => __( 'Contact form', 'wpcf7' ) . ' 1',
268+ 'form' => maybe_serialize( wpcf7_default_form_template() ),
269+ 'mail' => maybe_serialize( wpcf7_default_mail_template() ),
270+ 'mail_2' => maybe_serialize ( wpcf7_default_mail_2_template() ),
271+ 'messages' => maybe_serialize( wpcf7_default_messages_template() ) ) );
272+ }
273+}
274+
275+/* Misc */
276+
277+add_filter( 'plugin_action_links', 'wpcf7_plugin_action_links', 10, 2 );
278+
279+function wpcf7_plugin_action_links( $links, $file ) {
280+ if ( $file != WPCF7_PLUGIN_BASENAME )
281+ return $links;
282+
283+ $url = wpcf7_admin_url( array( 'page' => 'wpcf7' ) );
284+
285+ $settings_link = '<a href="' . esc_attr( $url ) . '">'
286+ . esc_html( __( 'Settings', 'wpcf7' ) ) . '</a>';
287+
288+ array_unshift( $links, $settings_link );
289+
290+ return $links;
291+}
292+
293+add_action( 'wpcf7_admin_before_subsubsub', 'wpcf7_cf7com_links', 9 );
294+
295+function wpcf7_cf7com_links( &$contact_form ) {
296+ $links = '<div class="cf7com-links">'
297+ . '<a href="' . esc_url_raw( __( 'http://contactform7.com/', 'wpcf7' ) ) . '" target="_blank">'
298+ . esc_html( __( 'Contactform7.com', 'wpcf7' ) ) . '</a>&ensp;'
299+ . '<a href="' . esc_url_raw( __( 'http://contactform7.com/docs/', 'wpcf7' ) ) . '" target="_blank">'
300+ . esc_html( __( 'Docs', 'wpcf7' ) ) . '</a> - '
301+ . '<a href="' . esc_url_raw( __( 'http://contactform7.com/faq/', 'wpcf7' ) ) . '" target="_blank">'
302+ . esc_html( __( 'FAQ', 'wpcf7' ) ) . '</a> - '
303+ . '<a href="' . esc_url_raw( __( 'http://contactform7.com/support/', 'wpcf7' ) ) . '" target="_blank">'
304+ . esc_html( __( 'Support', 'wpcf7' ) ) . '</a>'
305+ . '</div>';
306+
307+ echo apply_filters( 'wpcf7_cf7com_links', $links );
308+}
309+
310+add_action( 'wpcf7_admin_before_subsubsub', 'wpcf7_updated_message' );
311+
312+function wpcf7_updated_message( &$contact_form ) {
313+ if ( ! isset( $_GET['message'] ) )
314+ return;
315+
316+ switch ( $_GET['message'] ) {
317+ case 'created':
318+ $updated_message = __( "Contact form created.", 'wpcf7' );
319+ break;
320+ case 'saved':
321+ $updated_message = __( "Contact form saved.", 'wpcf7' );
322+ break;
323+ case 'deleted':
324+ $updated_message = __( "Contact form deleted.", 'wpcf7' );
325+ break;
326+ case 'table_created':
327+ $updated_message = __( "Database table created.", 'wpcf7' );
328+ break;
329+ case 'table_not_created':
330+ $updated_message = __( "Failed to create database table.", 'wpcf7' );
331+ break;
332+ }
333+
334+ if ( ! $updated_message )
335+ return;
336+
337+?>
338+<div id="message" class="updated fade"><p><?php echo esc_html( $updated_message ); ?></p></div>
339+<?php
340+}
341+
342+add_action( 'wpcf7_admin_before_subsubsub', 'wpcf7_donation_link' );
343+
344+function wpcf7_donation_link( &$contact_form ) {
345+ if ( ! WPCF7_SHOW_DONATION_LINK )
346+ return;
347+
348+ if ( 'new' == $_GET['contactform'] || ! empty($_GET['message']) )
349+ return;
350+
351+ $show_link = true;
352+
353+ $num = mt_rand( 0, 99 );
354+
355+ if ( $num >= 20 )
356+ $show_link = false;
357+
358+ $show_link = apply_filters( 'wpcf7_show_donation_link', $show_link );
359+
360+ if ( ! $show_link )
361+ return;
362+
363+ $texts = array(
364+ __( "Contact Form 7 needs your support. Please donate today.", 'wpcf7' ),
365+ __( "Your contribution is needed for making this plugin better.", 'wpcf7' ) );
366+
367+ $text = $texts[array_rand( $texts )];
368+
369+?>
370+<div class="donation">
371+<p><a href="<?php echo esc_url_raw( __( 'http://contactform7.com/donate/', 'wpcf7' ) ); ?>"><?php echo esc_html( $text ); ?></a> <a href="<?php echo esc_url_raw( __( 'http://contactform7.com/donate/', 'wpcf7' ) ); ?>" class="button"><?php echo esc_html( __( "Donate", 'wpcf7' ) ); ?></a></p>
372+</div>
373+<?php
374+}
375+
376+?>
377\ No newline at end of file
378
379=== added file 'wp-content/plugins/contact-form-7/admin/edit.php'
380--- wp-content/plugins/contact-form-7/admin/edit.php 1970-01-01 00:00:00 +0000
381+++ wp-content/plugins/contact-form-7/admin/edit.php 2011-02-18 16:15:41 +0000
382@@ -0,0 +1,351 @@
383+<?php
384+
385+/* No table warning */
386+if ( ! wpcf7_table_exists() ) {
387+ if ( current_user_can( 'activate_plugins' ) ) {
388+ $create_table_link_url = wpcf7_admin_url( array( 'wpcf7-create-table' => 1 ) );
389+ $create_table_link_url = wp_nonce_url( $create_table_link_url, 'wpcf7-create-table' );
390+ $message = sprintf(
391+ __( '<strong>The database table for Contact Form 7 does not exist.</strong> You must <a href="%s">create the table</a> for it to work.', 'wpcf7' ),
392+ $create_table_link_url );
393+ } else {
394+ $message = __( "<strong>The database table for Contact Form 7 does not exist.</strong>", 'wpcf7' );
395+ }
396+?>
397+ <div class="wrap">
398+ <?php screen_icon( 'edit-pages' ); ?>
399+ <h2><?php echo esc_html( __( 'Contact Form 7', 'wpcf7' ) ); ?></h2>
400+ <div id="message" class="updated fade">
401+ <p><?php echo $message; ?></p>
402+ </div>
403+ </div>
404+<?php
405+ return;
406+}
407+
408+?><div class="wrap wpcf7">
409+
410+<?php screen_icon( 'edit-pages' ); ?>
411+
412+<h2><?php echo esc_html( __( 'Contact Form 7', 'wpcf7' ) ); ?></h2>
413+
414+<?php do_action_ref_array( 'wpcf7_admin_before_subsubsub', array( &$cf ) ); ?>
415+
416+<ul class="subsubsub">
417+<?php
418+$first = array_shift( $contact_forms );
419+if ( ! is_null( $first ) ) : ?>
420+<li><a href="<?php echo wpcf7_admin_url( array( 'contactform' => $first->id ) ); ?>"<?php if ( $first->id == $current ) echo ' class="current"'; ?>><?php echo esc_html( $first->title ); ?></a></li>
421+<?php endif;
422+foreach ( $contact_forms as $v ) : ?>
423+<li>| <a href="<?php echo wpcf7_admin_url( array( 'contactform' => $v->id ) ); ?>"<?php if ( $v->id == $current ) echo ' class="current"'; ?>><?php echo esc_html( $v->title ); ?></a></li>
424+<?php endforeach; ?>
425+
426+<?php if ( wpcf7_admin_has_edit_cap() ) : ?>
427+<li class="addnew"><a class="thickbox<?php if ( $unsaved ) echo ' current'; ?>" href="#TB_inline?height=300&width=400&inlineId=wpcf7-lang-select-modal"><?php echo esc_html( __( 'Add new', 'wpcf7' ) ); ?></a></li>
428+<?php endif; ?>
429+</ul>
430+
431+<br class="clear" />
432+
433+<?php if ( $cf ) : ?>
434+<?php $disabled = ( wpcf7_admin_has_edit_cap() ) ? '' : ' disabled="disabled"'; ?>
435+
436+<form method="post" action="<?php echo wpcf7_admin_url( array( 'contactform' => $current ) ); ?>" id="wpcf7-admin-form-element">
437+ <?php if ( wpcf7_admin_has_edit_cap() ) wp_nonce_field( 'wpcf7-save_' . $current ); ?>
438+ <input type="hidden" id="wpcf7-id" name="wpcf7-id" value="<?php echo $current; ?>" />
439+
440+ <table class="widefat">
441+ <tbody>
442+ <tr>
443+ <td scope="col">
444+ <div style="position: relative;">
445+ <input type="text" id="wpcf7-title" name="wpcf7-title" size="40" value="<?php echo esc_attr( $cf->title ); ?>"<?php echo $disabled; ?> />
446+
447+ <?php if ( ! $unsaved ) : ?>
448+ <p class="tagcode">
449+ <?php echo esc_html( __( "Copy this code and paste it into your post, page or text widget content.", 'wpcf7' ) ); ?><br />
450+
451+ <input type="text" id="contact-form-anchor-text" onfocus="this.select();" readonly="readonly" />
452+ </p>
453+ <?php endif; ?>
454+
455+ <?php if ( wpcf7_admin_has_edit_cap() ) : ?>
456+ <div class="save-contact-form">
457+ <input type="submit" class="button button-highlighted" name="wpcf7-save" value="<?php echo esc_attr( __( 'Save', 'wpcf7' ) ); ?>" />
458+ </div>
459+ <?php endif; ?>
460+
461+ <?php if ( wpcf7_admin_has_edit_cap() && ! $unsaved ) : ?>
462+ <div class="actions-link">
463+ <?php $copy_nonce = wp_create_nonce( 'wpcf7-copy_' . $current ); ?>
464+ <input type="submit" name="wpcf7-copy" class="copy" value="<?php echo esc_attr( __( 'Copy', 'wpcf7' ) ); ?>"
465+ <?php echo "onclick=\"this.form._wpnonce.value = '$copy_nonce'; return true;\""; ?> />
466+ |
467+
468+ <?php $delete_nonce = wp_create_nonce( 'wpcf7-delete_' . $current ); ?>
469+ <input type="submit" name="wpcf7-delete" class="delete" value="<?php echo esc_attr( __( 'Delete', 'wpcf7' ) ); ?>"
470+ <?php echo "onclick=\"if (confirm('" .
471+ esc_js( __( "You are about to delete this contact form.\n 'Cancel' to stop, 'OK' to delete.", 'wpcf7' ) ) .
472+ "')) {this.form._wpnonce.value = '$delete_nonce'; return true;} return false;\""; ?> />
473+ </div>
474+ <?php endif; ?>
475+ </div>
476+ </td>
477+ </tr>
478+ </tbody>
479+ </table>
480+
481+<?php do_action_ref_array( 'wpcf7_admin_after_general_settings', array( &$cf ) ); ?>
482+
483+<?php if ( wpcf7_admin_has_edit_cap() ) : ?>
484+
485+ <table class="widefat" style="margin-top: 1em;">
486+ <thead><tr><th scope="col" colspan="2"><?php echo esc_html( __( 'Form', 'wpcf7' ) ); ?></th></tr></thead>
487+
488+ <tbody>
489+ <tr>
490+
491+ <td scope="col" style="width: 50%;">
492+ <div><textarea id="wpcf7-form" name="wpcf7-form" cols="100" rows="20"><?php echo esc_html( $cf->form ); ?></textarea></div>
493+ </td>
494+
495+ <td scope="col" style="width: 50%;">
496+ <div id="taggenerator"></div>
497+ </td>
498+
499+ </tr>
500+ </tbody>
501+ </table>
502+
503+<?php endif; ?>
504+
505+<?php do_action_ref_array( 'wpcf7_admin_after_form', array( &$cf ) ); ?>
506+
507+<?php if ( wpcf7_admin_has_edit_cap() ) : ?>
508+
509+ <table class="widefat" style="margin-top: 1em;">
510+ <thead><tr><th scope="col" colspan="2"><?php echo esc_html( __( 'Mail', 'wpcf7' ) ); ?></th></tr></thead>
511+
512+ <tbody>
513+ <tr>
514+ <td scope="col" style="width: 50%;">
515+
516+ <div class="mail-field">
517+ <label for="wpcf7-mail-recipient"><?php echo esc_html( __( 'To:', 'wpcf7' ) ); ?></label><br />
518+ <input type="text" id="wpcf7-mail-recipient" name="wpcf7-mail-recipient" class="wide" size="70" value="<?php echo esc_attr( $cf->mail['recipient'] ); ?>" />
519+ </div>
520+
521+ <div class="mail-field">
522+ <label for="wpcf7-mail-sender"><?php echo esc_html( __( 'From:', 'wpcf7' ) ); ?></label><br />
523+ <input type="text" id="wpcf7-mail-sender" name="wpcf7-mail-sender" class="wide" size="70" value="<?php echo esc_attr( $cf->mail['sender'] ); ?>" />
524+ </div>
525+
526+ <div class="mail-field">
527+ <label for="wpcf7-mail-subject"><?php echo esc_html( __( 'Subject:', 'wpcf7' ) ); ?></label><br />
528+ <input type="text" id="wpcf7-mail-subject" name="wpcf7-mail-subject" class="wide" size="70" value="<?php echo esc_attr( $cf->mail['subject'] ); ?>" />
529+ </div>
530+
531+ <div class="pseudo-hr"></div>
532+
533+ <div class="mail-field">
534+ <label for="wpcf7-mail-additional-headers"><?php echo esc_html( __( 'Additional headers:', 'wpcf7' ) ); ?></label><br />
535+ <textarea id="wpcf7-mail-additional-headers" name="wpcf7-mail-additional-headers" cols="100" rows="2"><?php echo esc_html( $cf->mail['additional_headers'] ); ?></textarea>
536+ </div>
537+
538+ <div class="mail-field">
539+ <label for="wpcf7-mail-attachments"><?php echo esc_html( __( 'File attachments:', 'wpcf7' ) ); ?></label><br />
540+ <input type="text" id="wpcf7-mail-attachments" name="wpcf7-mail-attachments" class="wide" size="70" value="<?php echo esc_attr( $cf->mail['attachments'] ); ?>" />
541+ </div>
542+
543+ <div class="pseudo-hr"></div>
544+
545+ <div class="mail-field">
546+ <input type="checkbox" id="wpcf7-mail-use-html" name="wpcf7-mail-use-html" value="1"<?php echo ( $cf->mail['use_html'] ) ? ' checked="checked"' : ''; ?> />
547+ <label for="wpcf7-mail-use-html"><?php echo esc_html( __( 'Use HTML content type', 'wpcf7' ) ); ?></label>
548+ </div>
549+
550+ </td>
551+ <td scope="col" style="width: 50%;">
552+
553+ <div class="mail-field">
554+ <label for="wpcf7-mail-body"><?php echo esc_html( __( 'Message body:', 'wpcf7' ) ); ?></label><br />
555+ <textarea id="wpcf7-mail-body" name="wpcf7-mail-body" cols="100" rows="16"><?php echo esc_html( $cf->mail['body'] ); ?></textarea>
556+ </div>
557+
558+ </td>
559+ </tr>
560+ </tbody>
561+ </table>
562+
563+<?php endif; ?>
564+
565+<?php do_action_ref_array( 'wpcf7_admin_after_mail', array( &$cf ) ); ?>
566+
567+<?php if ( wpcf7_admin_has_edit_cap() ) : ?>
568+
569+ <table class="widefat" style="margin-top: 1em;">
570+ <thead><tr><th scope="col" colspan="2"><?php echo esc_html( __( 'Mail (2)', 'wpcf7' ) ); ?></th></tr></thead>
571+
572+ <tbody>
573+ <tr>
574+ <td scope="col" colspan="2">
575+ <input type="checkbox" id="wpcf7-mail-2-active" name="wpcf7-mail-2-active" value="1"<?php echo ( $cf->mail_2['active'] ) ? ' checked="checked"' : ''; ?> />
576+ <label for="wpcf7-mail-2-active"><?php echo esc_html( __( 'Use mail (2)', 'wpcf7' ) ); ?></label>
577+ </td>
578+ </tr>
579+
580+ <tr id="mail-2-fields">
581+ <td scope="col" style="width: 50%;">
582+
583+ <div class="mail-field">
584+ <label for="wpcf7-mail-2-recipient"><?php echo esc_html( __( 'To:', 'wpcf7' ) ); ?></label><br />
585+ <input type="text" id="wpcf7-mail-2-recipient" name="wpcf7-mail-2-recipient" class="wide" size="70" value="<?php echo esc_attr( $cf->mail_2['recipient'] ); ?>" />
586+ </div>
587+
588+ <div class="mail-field">
589+ <label for="wpcf7-mail-2-sender"><?php echo esc_html( __( 'From:', 'wpcf7' ) ); ?></label><br />
590+ <input type="text" id="wpcf7-mail-2-sender" name="wpcf7-mail-2-sender" class="wide" size="70" value="<?php echo esc_attr( $cf->mail_2['sender'] ); ?>" />
591+ </div>
592+
593+ <div class="mail-field">
594+ <label for="wpcf7-mail-2-subject"><?php echo esc_html( __( 'Subject:', 'wpcf7' ) ); ?></label><br />
595+ <input type="text" id="wpcf7-mail-2-subject" name="wpcf7-mail-2-subject" class="wide" size="70" value="<?php echo esc_attr( $cf->mail_2['subject'] ); ?>" />
596+ </div>
597+
598+ <div class="pseudo-hr"></div>
599+
600+ <div class="mail-field">
601+ <label for="wpcf7-mail-2-additional-headers"><?php echo esc_html( __( 'Additional headers:', 'wpcf7' ) ); ?></label><br />
602+ <textarea id="wpcf7-mail-2-additional-headers" name="wpcf7-mail-2-additional-headers" cols="100" rows="2"><?php echo esc_html( $cf->mail_2['additional_headers'] ); ?></textarea>
603+ </div>
604+
605+ <div class="mail-field">
606+ <label for="wpcf7-mail-2-attachments"><?php echo esc_html( __( 'File attachments:', 'wpcf7' ) ); ?></label><br />
607+ <input type="text" id="wpcf7-mail-2-attachments" name="wpcf7-mail-2-attachments" class="wide" size="70" value="<?php echo esc_attr( $cf->mail_2['attachments'] ); ?>" />
608+ </div>
609+
610+ <div class="pseudo-hr"></div>
611+
612+ <div class="mail-field">
613+ <input type="checkbox" id="wpcf7-mail-2-use-html" name="wpcf7-mail-2-use-html" value="1"<?php echo ( $cf->mail_2['use_html'] ) ? ' checked="checked"' : ''; ?> />
614+ <label for="wpcf7-mail-2-use-html"><?php echo esc_html( __( 'Use HTML content type', 'wpcf7' ) ); ?></label>
615+ </div>
616+
617+ </td>
618+ <td scope="col" style="width: 50%;">
619+
620+ <div class="mail-field">
621+ <label for="wpcf7-mail-2-body"><?php echo esc_html( __( 'Message body:', 'wpcf7' ) ); ?></label><br />
622+ <textarea id="wpcf7-mail-2-body" name="wpcf7-mail-2-body" cols="100" rows="16"><?php echo esc_html( $cf->mail_2['body'] ); ?></textarea>
623+ </div>
624+
625+ </td>
626+ </tr>
627+ </tbody>
628+ </table>
629+
630+<?php endif; ?>
631+
632+<?php do_action_ref_array( 'wpcf7_admin_after_mail_2', array( &$cf ) ); ?>
633+
634+<?php if ( wpcf7_admin_has_edit_cap() ) : ?>
635+
636+ <table class="widefat" style="margin-top: 1em;">
637+ <thead><tr><th scope="col"><?php echo esc_html( __( 'Messages', 'wpcf7' ) ); ?> <span id="message-fields-toggle-switch"></span></th></tr></thead>
638+
639+ <tbody>
640+ <tr>
641+ <td scope="col">
642+ <div id="message-fields">
643+
644+<?php foreach ( wpcf7_messages() as $key => $arr ) :
645+ $field_name = 'wpcf7-message-' . strtr( $key, '_', '-' );
646+?>
647+ <div class="message-field">
648+ <label for="<?php echo $field_name; ?>"><em># <?php echo esc_html( $arr['description'] ); ?></em></label><br />
649+ <input type="text" id="<?php echo $field_name; ?>" name="<?php echo $field_name; ?>" class="wide" size="70" value="<?php echo esc_attr( $cf->messages[$key] ); ?>" />
650+ </div>
651+
652+<?php endforeach; ?>
653+
654+ </div>
655+ </td>
656+ </tr>
657+ </tbody>
658+ </table>
659+
660+<?php endif; ?>
661+
662+<?php do_action_ref_array( 'wpcf7_admin_after_messages', array( &$cf ) ); ?>
663+
664+<?php if ( wpcf7_admin_has_edit_cap() ) : ?>
665+
666+ <table class="widefat" style="margin-top: 1em;">
667+ <thead><tr><th scope="col"><?php echo esc_html( __( 'Additional Settings', 'wpcf7' ) ); ?> <span id="additional-settings-fields-toggle-switch"></span></th></tr></thead>
668+
669+ <tbody>
670+ <tr>
671+ <td scope="col">
672+ <div id="additional-settings-fields">
673+ <textarea id="wpcf7-additional-settings" name="wpcf7-additional-settings" cols="100" rows="8"><?php echo esc_html( $cf->additional_settings ); ?></textarea>
674+ </div>
675+ </td>
676+ </tr>
677+ </tbody>
678+ </table>
679+
680+<?php endif; ?>
681+
682+<?php do_action_ref_array( 'wpcf7_admin_after_additional_settings', array( &$cf ) ); ?>
683+
684+<?php if ( wpcf7_admin_has_edit_cap() ) : ?>
685+
686+ <table class="widefat" style="margin-top: 1em;">
687+ <tbody>
688+ <tr>
689+ <td scope="col">
690+ <div class="save-contact-form">
691+ <input type="submit" class="button button-highlighted" name="wpcf7-save" value="<?php echo esc_attr( __( 'Save', 'wpcf7' ) ); ?>" />
692+ </div>
693+ </td>
694+ </tr>
695+ </tbody>
696+ </table>
697+
698+<?php endif; ?>
699+
700+</form>
701+
702+<?php endif; ?>
703+
704+</div>
705+
706+<div id="wpcf7-lang-select-modal" class="hidden">
707+<?php
708+ $available_locales = wpcf7_l10n();
709+ $default_locale = get_locale();
710+
711+ if ( ! isset( $available_locales[$default_locale] ) )
712+ $default_locale = 'en_US';
713+
714+?>
715+<h4><?php echo esc_html( sprintf( __( 'Use the default language (%s)', 'wpcf7' ), $available_locales[$default_locale] ) ); ?></h4>
716+<p><a href="<?php echo wpcf7_admin_url( array( 'contactform' => 'new' ) ); ?>" class="button" /><?php echo esc_html( __( 'Add New', 'wpcf7' ) ); ?></a></p>
717+
718+<?php unset( $available_locales[$default_locale] ); ?>
719+<h4><?php echo esc_html( __( 'Or', 'wpcf7' ) ); ?></h4>
720+<form action="" method="get">
721+<input type="hidden" name="page" value="wpcf7" />
722+<input type="hidden" name="contactform" value="new" />
723+<select name="locale">
724+<option value="" selected="selected"><?php echo esc_html( __( '(select language)', 'wpcf7' ) ); ?></option>
725+<?php foreach ( $available_locales as $code => $locale ) : ?>
726+<option value="<?php echo esc_attr( $code ); ?>"><?php echo esc_html( $locale ); ?></option>
727+<?php endforeach; ?>
728+</select>
729+<input type="submit" class="button" value="<?php echo esc_attr( __( 'Add New', 'wpcf7' ) ); ?>" />
730+</form>
731+</div>
732+
733+<?php do_action_ref_array( 'wpcf7_admin_footer', array( &$cf ) ); ?>
734
735=== added file 'wp-content/plugins/contact-form-7/admin/scripts.js'
736--- wp-content/plugins/contact-form-7/admin/scripts.js 1970-01-01 00:00:00 +0000
737+++ wp-content/plugins/contact-form-7/admin/scripts.js 2011-02-18 16:15:41 +0000
738@@ -0,0 +1,116 @@
739+(function($) {
740+
741+ $(function() {
742+ try {
743+ $.extend($.tgPanes, _wpcf7.tagGenerators);
744+ $('#taggenerator').tagGenerator(_wpcf7L10n.generateTag,
745+ { dropdownIconUrl: _wpcf7.pluginUrl + '/images/dropdown.gif' });
746+
747+ $('input#wpcf7-title:enabled').css({
748+ cursor: 'pointer'
749+ });
750+
751+ $('input#wpcf7-title').mouseover(function() {
752+ $(this).not('.focus').css({
753+ 'background-color': '#ffffdd'
754+ });
755+ });
756+
757+ $('input#wpcf7-title').mouseout(function() {
758+ $(this).css({
759+ 'background-color': '#fff'
760+ });
761+ });
762+
763+ $('input#wpcf7-title').focus(function() {
764+ $(this).addClass('focus');
765+ $(this).css({
766+ cursor: 'text',
767+ color: '#333',
768+ border: '1px solid #777',
769+ font: 'normal 13px Verdana, Arial, Helvetica, sans-serif',
770+ 'background-color': '#fff'
771+ });
772+ });
773+
774+ $('input#wpcf7-title').blur(function() {
775+ $(this).removeClass('focus');
776+ $(this).css({
777+ cursor: 'pointer',
778+ color: '#555',
779+ border: 'none',
780+ font: 'bold 20px serif',
781+ 'background-color': '#fff'
782+ });
783+ });
784+
785+ $('input#wpcf7-title').change(function() {
786+ updateTag();
787+ });
788+
789+ updateTag();
790+
791+ if ($.support.objectAll) {
792+ if (! $('#wpcf7-mail-2-active').is(':checked'))
793+ $('#mail-2-fields').hide();
794+
795+ $('#wpcf7-mail-2-active').click(function() {
796+ if ($('#mail-2-fields').is(':hidden')
797+ && $('#wpcf7-mail-2-active').is(':checked')) {
798+ $('#mail-2-fields').slideDown('fast');
799+ } else if ($('#mail-2-fields').is(':visible')
800+ && $('#wpcf7-mail-2-active').not(':checked')) {
801+ $('#mail-2-fields').slideUp('fast');
802+ }
803+ });
804+ }
805+
806+ $('#message-fields-toggle-switch').text(_wpcf7L10n.show);
807+ $('#message-fields').hide();
808+
809+ $('#message-fields-toggle-switch').click(function() {
810+ if ($('#message-fields').is(':hidden')) {
811+ $('#message-fields').slideDown('fast');
812+ $('#message-fields-toggle-switch').text(_wpcf7L10n.hide);
813+ } else {
814+ $('#message-fields').hide('fast');
815+ $('#message-fields-toggle-switch').text(_wpcf7L10n.show);
816+ }
817+ });
818+
819+ if ('' == $.trim($('#wpcf7-additional-settings').text())) {
820+ $('#additional-settings-fields-toggle-switch').text(_wpcf7L10n.show);
821+ $('#additional-settings-fields').hide();
822+ } else {
823+ $('#additional-settings-fields-toggle-switch').text(_wpcf7L10n.hide);
824+ $('#additional-settings-fields').show();
825+ }
826+
827+ $('#additional-settings-fields-toggle-switch').click(function() {
828+ if ($('#additional-settings-fields').is(':hidden')) {
829+ $('#additional-settings-fields').slideDown('fast');
830+ $('#additional-settings-fields-toggle-switch').text(_wpcf7L10n.hide);
831+ } else {
832+ $('#additional-settings-fields').hide('fast');
833+ $('#additional-settings-fields-toggle-switch').text(_wpcf7L10n.show);
834+ }
835+ });
836+
837+ } catch (e) {
838+ }
839+ });
840+
841+ function updateTag() {
842+ var title = $('input#wpcf7-title').val();
843+
844+ if (title)
845+ title = title.replace(/["'\[\]]/g, '');
846+
847+ $('input#wpcf7-title').val(title);
848+ var current = $('input#wpcf7-id').val();
849+ var tag = '[contact-form ' + current + ' "' + title + '"]';
850+
851+ $('input#contact-form-anchor-text').val(tag);
852+ }
853+
854+})(jQuery);
855\ No newline at end of file
856
857=== added file 'wp-content/plugins/contact-form-7/admin/styles-rtl.css'
858--- wp-content/plugins/contact-form-7/admin/styles-rtl.css 1970-01-01 00:00:00 +0000
859+++ wp-content/plugins/contact-form-7/admin/styles-rtl.css 2011-02-18 16:15:41 +0000
860@@ -0,0 +1,22 @@
861+ul.subsubsub li.addnew {
862+ margin-left: 0;
863+ margin-right: 0.5em;
864+}
865+div.save-contact-form {
866+ direction: rtl;
867+}
868+div.actions-link {
869+ right: auto;
870+ left: 0;
871+}
872+span#message-fields-toggle-switch {
873+ margin-left: 0;
874+ margin-right: 1em;
875+}
876+div.tg-pane table caption {
877+ text-align: right;
878+}
879+div.tg-dropdown {
880+ left: auto;
881+ right: 0;
882+}
883\ No newline at end of file
884
885=== added file 'wp-content/plugins/contact-form-7/admin/styles.css'
886--- wp-content/plugins/contact-form-7/admin/styles.css 1970-01-01 00:00:00 +0000
887+++ wp-content/plugins/contact-form-7/admin/styles.css 2011-02-18 16:15:41 +0000
888@@ -0,0 +1,248 @@
889+div.wpcf7 div.cf7com-links {
890+ text-align: right;
891+ font-size: .8em;
892+ margin-top: -1.6em;
893+}
894+
895+div.wpcf7 div.cf7com-links a {
896+ text-decoration: none;
897+}
898+
899+div.wpcf7 div.donation {
900+ border-width: 1px;
901+ border-style: solid;
902+ padding: 0 0.6em;
903+ margin: 5px 0 15px;
904+ -moz-border-radius: 3px;
905+ -khtml-border-radius: 3px;
906+ -webkit-border-radius: 3px;
907+ border-radius: 3px;
908+ background-color: #ffffe0;
909+ border-color: #e6db55;
910+ text-align: center;
911+}
912+
913+div.wpcf7 div.donation p {
914+ margin: .7em 0;
915+ line-height: 1;
916+ padding: 2px;
917+ font-size: 107%;
918+}
919+
920+div.wpcf7 div.donation p a {
921+ font-weight: bold;
922+ color: #3f3f3f;
923+}
924+
925+div.wpcf7 div.donation p a.button {
926+ margin-left: 1em;
927+}
928+
929+div.wpcf7 ul.subsubsub {
930+ white-space: normal;
931+}
932+
933+ul.subsubsub li.addnew {
934+ margin-left: 0.5em;
935+}
936+
937+ul.subsubsub li.addnew a {
938+ color: #e6255b;
939+}
940+
941+ul.subsubsub li.addnew a:hover,
942+ul.subsubsub li.addnew a:active {
943+ color: #999;
944+}
945+
946+div.save-contact-form {
947+ padding: 1.4em 0 0 0;
948+ text-align: right;
949+}
950+
951+div.actions-link {
952+ position: absolute;
953+ top: 0;
954+ right: 0;
955+ margin: 0;
956+ padding: 0;
957+}
958+
959+div.actions-link input {
960+ padding: 0;
961+ margin: 0;
962+ border: none;
963+ background-color: #fff;
964+ font-size: 11px;
965+ cursor: pointer;
966+}
967+
968+div.actions-link input.copy {
969+ color: #006505;
970+}
971+
972+div.actions-link input.delete {
973+ color: #bc0b0b;
974+}
975+
976+input#wpcf7-title {
977+ color: #555;
978+ background-color: #fff;
979+ border: none;
980+ font: bold 20px serif;
981+}
982+
983+p.tagcode {
984+ color: #333;
985+ margin: 2ex 0 1ex 1em;
986+}
987+
988+input#contact-form-anchor-text {
989+ color: #fff;
990+ background: #7e4e0b;
991+ border: none;
992+ width: 99%;
993+ -moz-border-radius: 6px;
994+ -khtml-border-radius: 6px;
995+ -webkit-border-radius: 6px;
996+ border-radius: 6px;
997+}
998+
999+span#message-fields-toggle-switch, span#additional-settings-fields-toggle-switch {
1000+ margin-left: 1em;
1001+ font-weight: normal;
1002+ font-size: smaller;
1003+ color: #2583ad;
1004+ cursor: pointer;
1005+}
1006+
1007+div.pseudo-hr {
1008+ border-bottom: 1px solid #fff;
1009+ margin: 0.7em 0;
1010+}
1011+
1012+input, textarea {
1013+ border: 1px solid #dfdfdf;
1014+}
1015+
1016+input.wide {
1017+ width: 100%;
1018+}
1019+
1020+textarea {
1021+ width: 100%;
1022+}
1023+
1024+label.disabled {
1025+ color: #777;
1026+}
1027+
1028+div.message-field {
1029+ margin: .2em 0 .4em;
1030+}
1031+
1032+div.tag-generator {
1033+ position: relative;
1034+ background: #fff;
1035+ padding: 5px 0 5px 1px;
1036+}
1037+
1038+div.tg-pane {
1039+ border: 1px dashed #999;
1040+ background: #f1f1f1;
1041+ margin: 1ex 0 0 0;
1042+ padding: 10px;
1043+ -moz-border-radius: 6px;
1044+ -khtml-border-radius: 6px;
1045+ -webkit-border-radius: 6px;
1046+ border-radius: 6px;
1047+}
1048+
1049+div.tg-pane table {
1050+ width: 100%;
1051+ margin: 0 0 0.7em 0;
1052+}
1053+
1054+div.tg-pane table caption {
1055+ text-align: left;
1056+ padding: 0 0 0.2em 0;
1057+ font-weight: bolder;
1058+ color: #777;
1059+}
1060+
1061+div.tg-pane table code {
1062+ background-color: inherit;
1063+}
1064+
1065+div.tg-pane table td {
1066+ vertical-align: top;
1067+ width: 50%;
1068+ border: none;
1069+}
1070+
1071+div.tg-pane input.tag, div.tg-pane input.mail-tag {
1072+ width: 100%;
1073+ border: none;
1074+ color: #fff;
1075+ background-color: #7e4e0b;
1076+ -moz-border-radius: 6px;
1077+ -khtml-border-radius: 6px;
1078+ -webkit-border-radius: 6px;
1079+ border-radius: 6px;
1080+}
1081+
1082+div.tg-pane input.mail-tag {
1083+ width: 50%;
1084+ background-color: #404f03;
1085+}
1086+
1087+div.tg-mail-tag {
1088+ margin-top: 2.4em;
1089+ text-align: right;
1090+}
1091+
1092+div.tg-pane span.arrow {
1093+ font-family: monospace;
1094+ font-size: 1.2em;
1095+ color: #333;
1096+}
1097+
1098+div.tg-pane input.tg-name {
1099+ border-color: #555;
1100+}
1101+
1102+div.tg-pane input.oneline {
1103+ width: 98%;
1104+ font-size: smaller;
1105+}
1106+
1107+div.tg-pane textarea {
1108+ width: 98%;
1109+ height: 100px;
1110+ font-size: smaller;
1111+}
1112+
1113+div.tg-pane div.tg-tag {
1114+ margin: .4em 0;
1115+}
1116+
1117+div.tg-dropdown {
1118+ position: absolute;
1119+ top: 26px;
1120+ left: 0;
1121+ z-index: 10;
1122+ border: 1px solid #ddd;
1123+}
1124+
1125+span.tg-closebutton {
1126+ color: #777;
1127+ font: bold 18px monospace;
1128+ padding: 1px 4px;
1129+ cursor: pointer;
1130+}
1131+
1132+div.tg-panetitle {
1133+ font: bold 132% sans-serif;
1134+ margin: 0 0 10px;
1135+ color: #777;
1136+}
1137\ No newline at end of file
1138
1139=== added file 'wp-content/plugins/contact-form-7/admin/taggenerator.js'
1140--- wp-content/plugins/contact-form-7/admin/taggenerator.js 1970-01-01 00:00:00 +0000
1141+++ wp-content/plugins/contact-form-7/admin/taggenerator.js 2011-02-18 16:15:41 +0000
1142@@ -0,0 +1,262 @@
1143+(function($) {
1144+
1145+ $.fn.tagGenerator = function(title, options) {
1146+ var menu = $('<div class="tag-generator"></div>');
1147+
1148+ var selector = $('<span>' + title + '</span>');
1149+
1150+ selector.css({
1151+ border: '1px solid #ddd',
1152+ padding: '2px 4px',
1153+ background: '#fff url( ../wp-admin/images/fade-butt.png ) repeat-x 0 0',
1154+ '-moz-border-radius': '3px',
1155+ '-khtml-border-radius': '3px',
1156+ '-webkit-border-radius': '3px',
1157+ 'border-radius': '3px'
1158+ });
1159+
1160+ selector.mouseover(function() {
1161+ $(this).css({ 'border-color': '#bbb' });
1162+ });
1163+ selector.mouseout(function() {
1164+ $(this).css({ 'border-color': '#ddd' });
1165+ });
1166+ selector.mousedown(function() {
1167+ $(this).css({ background: '#ddd' });
1168+ });
1169+ selector.mouseup(function() {
1170+ $(this).css({
1171+ background: '#fff url( ../wp-admin/images/fade-butt.png ) repeat-x 0 0'
1172+ });
1173+ });
1174+ selector.click(function() {
1175+ dropdown.slideDown('fast');
1176+ return false;
1177+ });
1178+ $('body').click(function() {
1179+ dropdown.hide();
1180+ });
1181+
1182+ if (options.dropdownIconUrl) {
1183+ var dropdown_icon = $('<img src="' + options.dropdownIconUrl + '" />');
1184+ dropdown_icon.css({ 'vertical-align': 'bottom' });
1185+ selector.append(dropdown_icon);
1186+ }
1187+
1188+ menu.append(selector);
1189+
1190+ var pane = $('<div class="tg-pane"></div>');
1191+ pane.hide();
1192+ menu.append(pane);
1193+
1194+ var dropdown = $('<div class="tg-dropdown"></div>');
1195+ dropdown.hide();
1196+ menu.append(dropdown);
1197+
1198+ $.each($.tgPanes, function(i, n) {
1199+ var submenu = $('<div>' + $.tgPanes[i].title + '</div>');
1200+ submenu.css({
1201+ margin: 0,
1202+ padding: '0 4px',
1203+ 'line-height': '180%',
1204+ background: '#fff'
1205+ });
1206+ submenu.mouseover(function() {
1207+ $(this).css({ background: '#d4f2f2' });
1208+ });
1209+ submenu.mouseout(function() {
1210+ $(this).css({ background: '#fff' });
1211+ });
1212+ submenu.click(function() {
1213+ dropdown.hide();
1214+ pane.hide();
1215+ pane.empty();
1216+ $.tgPane(pane, i);
1217+ pane.slideDown('fast');
1218+ return false;
1219+ });
1220+ dropdown.append(submenu);
1221+ });
1222+
1223+ this.append(menu);
1224+ };
1225+
1226+ $.tgPane = function(pane, tagType) {
1227+ var closeButtonDiv = $('<div></div>');
1228+ closeButtonDiv.css({ float: 'right' });
1229+
1230+ var closeButton = $('<span class="tg-closebutton">&#215;</span>');
1231+ closeButton.click(function() {
1232+ pane.slideUp('fast').empty();
1233+ });
1234+ closeButtonDiv.append(closeButton);
1235+
1236+ pane.append(closeButtonDiv);
1237+
1238+ var paneTitle = $('<div class="tg-panetitle">' + $.tgPanes[tagType].title + '</div>');
1239+ pane.append(paneTitle);
1240+
1241+ pane.append($('#' + $.tgPanes[tagType].content).clone().contents());
1242+
1243+ pane.find(':checkbox.exclusive').change(function() {
1244+ if ($(this).is(':checked'))
1245+ $(this).siblings(':checkbox.exclusive').removeAttr('checked');
1246+ });
1247+
1248+ if ($.isFunction($.tgPanes[tagType].change))
1249+ $.tgPanes[tagType].change(pane, tagType);
1250+ else
1251+ $.tgCreateTag(pane, tagType);
1252+
1253+ pane.find(':input').change(function() {
1254+ if ($.isFunction($.tgPanes[tagType].change))
1255+ $.tgPanes[tagType].change(pane, tagType);
1256+ else
1257+ $.tgCreateTag(pane, tagType);
1258+ });
1259+ }
1260+
1261+ $.tgCreateTag = function(pane, tagType) {
1262+ pane.find('input[name="name"]').each(function(i) {
1263+ var val = $(this).val();
1264+ val = val.replace(/[^0-9a-zA-Z:._-]/g, '').replace(/^[^a-zA-Z]+/, '');
1265+ if ('' == val) {
1266+ var rand = Math.floor(Math.random() * 1000);
1267+ val = tagType + '-' + rand;
1268+ }
1269+ $(this).val(val);
1270+ });
1271+
1272+ pane.find(':input.numeric').each(function(i) {
1273+ var val = $(this).val();
1274+ val = val.replace(/[^0-9]/g, '');
1275+ $(this).val(val);
1276+ });
1277+
1278+ pane.find(':input.idvalue').each(function(i) {
1279+ var val = $(this).val();
1280+ val = val.replace(/[^-0-9a-zA-Z_]/g, '');
1281+ $(this).val(val);
1282+ });
1283+
1284+ pane.find(':input.classvalue').each(function(i) {
1285+ var val = $(this).val();
1286+ val = $.map(val.split(' '), function(n) {
1287+ return n.replace(/[^-0-9a-zA-Z_]/g, '');
1288+ }).join(' ');
1289+ val = $.trim(val.replace(/\s+/g, ' '));
1290+ $(this).val(val);
1291+ });
1292+
1293+ pane.find(':input.color').each(function(i) {
1294+ var val = $(this).val();
1295+ val = val.replace(/[^0-9a-fA-F]/g, '');
1296+ $(this).val(val);
1297+ });
1298+
1299+ pane.find(':input.filesize').each(function(i) {
1300+ var val = $(this).val();
1301+ val = val.replace(/[^0-9kKmMbB]/g, '');
1302+ $(this).val(val);
1303+ });
1304+
1305+ pane.find(':input.filetype').each(function(i) {
1306+ var val = $(this).val();
1307+ val = val.replace(/[^0-9a-zA-Z.\s]/g, '');
1308+ $(this).val(val);
1309+ });
1310+
1311+ pane.find(':input.date').each(function(i) {
1312+ var val = $(this).val();
1313+ if (! val.match(/^\d{4}-\d{1,2}-\d{1,2}$/)) // 'yyyy-mm-dd' ISO 8601 format
1314+ $(this).val('');
1315+ });
1316+
1317+ pane.find(':input[name="values"]').each(function(i) {
1318+ var val = $(this).val();
1319+ val = $.trim(val);
1320+ $(this).val(val);
1321+ });
1322+
1323+ pane.find('input.tag').each(function(i) {
1324+ var type = $(this).attr('name');
1325+
1326+ var scope = pane.find('.scope.' + type);
1327+ if (! scope.length)
1328+ scope = pane;
1329+
1330+ if (pane.find(':input[name="required"]').is(':checked'))
1331+ type += '*';
1332+
1333+ var name = pane.find(':input[name="name"]').val();
1334+
1335+ var options = [];
1336+
1337+ var size = scope.find(':input[name="size"]').val();
1338+ var maxlength = scope.find(':input[name="maxlength"]').val();
1339+ if (size || maxlength)
1340+ options.push(size + '/' + maxlength);
1341+
1342+ var cols = scope.find(':input[name="cols"]').val();
1343+ var rows = scope.find(':input[name="rows"]').val();
1344+ if (cols || rows)
1345+ options.push(cols + 'x' + rows);
1346+
1347+ scope.find('input:text.option').each(function(i) {
1348+ if (-1 < $.inArray($(this).attr('name'), ['size', 'maxlength', 'cols', 'rows']))
1349+ return;
1350+
1351+ var val = $(this).val();
1352+
1353+ if (! val)
1354+ return;
1355+
1356+ if ($(this).hasClass('filetype'))
1357+ val = val.split(' ').join('|');
1358+
1359+ if ($(this).hasClass('color'))
1360+ val = '#' + val;
1361+
1362+ if ('class' == $(this).attr('name')) {
1363+ $.each(val.split(' '), function(i, n) { options.push('class:' + n) });
1364+ } else {
1365+ options.push($(this).attr('name') + ':' + val);
1366+ }
1367+ });
1368+
1369+ scope.find('input:checkbox.option').each(function(i) {
1370+ if ($(this).is(':checked'))
1371+ options.push($(this).attr('name'));
1372+ });
1373+
1374+ options = (options.length > 0) ? ' ' + options.join(' ') : '';
1375+
1376+ var value = '';
1377+
1378+ if (scope.find(':input[name="values"]').val()) {
1379+ $.each(scope.find(':input[name="values"]').val().split("\n"), function(i, n) {
1380+ value += ' "' + n.replace(/["]/g, '&quot;') + '"';
1381+ });
1382+ }
1383+
1384+ if ($.tgPanes[tagType].nameless)
1385+ var tag = '[' + type + options + value + ']';
1386+ else
1387+ var tag = name ? '[' + type + ' ' + name + options + value + ']' : '';
1388+
1389+ $(this).val(tag);
1390+ });
1391+
1392+ pane.find('input.mail-tag').each(function(i) {
1393+ var name = pane.find(':input[name="name"]').val();
1394+
1395+ var tag = name ? '[' + name + ']' : '';
1396+
1397+ $(this).val(tag);
1398+ });
1399+
1400+ }
1401+
1402+ $.tgPanes = {};
1403+
1404+})(jQuery);
1405\ No newline at end of file
1406
1407=== added directory 'wp-content/plugins/contact-form-7/images'
1408=== added file 'wp-content/plugins/contact-form-7/images/ajax-loader.gif'
1409Binary files wp-content/plugins/contact-form-7/images/ajax-loader.gif 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/images/ajax-loader.gif 2011-02-18 16:15:41 +0000 differ
1410=== added file 'wp-content/plugins/contact-form-7/images/dropdown.gif'
1411Binary files wp-content/plugins/contact-form-7/images/dropdown.gif 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/images/dropdown.gif 2011-02-18 16:15:41 +0000 differ
1412=== added directory 'wp-content/plugins/contact-form-7/includes'
1413=== added file 'wp-content/plugins/contact-form-7/includes/classes.php'
1414--- wp-content/plugins/contact-form-7/includes/classes.php 1970-01-01 00:00:00 +0000
1415+++ wp-content/plugins/contact-form-7/includes/classes.php 2011-02-18 16:15:41 +0000
1416@@ -0,0 +1,645 @@
1417+<?php
1418+
1419+class WPCF7_ContactForm {
1420+
1421+ var $initial = false;
1422+
1423+ var $id;
1424+ var $title;
1425+ var $form;
1426+ var $mail;
1427+ var $mail_2;
1428+ var $messages;
1429+ var $additional_settings;
1430+
1431+ var $unit_tag;
1432+
1433+ var $responses_count = 0;
1434+ var $scanned_form_tags;
1435+
1436+ var $posted_data;
1437+ var $uploaded_files;
1438+
1439+ var $skip_mail = false;
1440+
1441+ // Return true if this form is the same one as currently POSTed.
1442+ function is_posted() {
1443+ if ( ! isset( $_POST['_wpcf7_unit_tag'] ) || empty( $_POST['_wpcf7_unit_tag'] ) )
1444+ return false;
1445+
1446+ if ( $this->unit_tag == $_POST['_wpcf7_unit_tag'] )
1447+ return true;
1448+
1449+ return false;
1450+ }
1451+
1452+ function clear_post() {
1453+ $fes = $this->form_scan_shortcode();
1454+
1455+ foreach ( $fes as $fe ) {
1456+ $name = $fe['name'];
1457+
1458+ if ( empty( $name ) )
1459+ continue;
1460+
1461+ if ( isset( $_POST[$name] ) )
1462+ unset( $_POST[$name] );
1463+ }
1464+ }
1465+
1466+ /* Generating Form HTML */
1467+
1468+ function form_html() {
1469+ $form = '<div class="wpcf7" id="' . $this->unit_tag . '">';
1470+
1471+ $url = wpcf7_get_request_uri();
1472+
1473+ if ( $frag = strstr( $url, '#' ) )
1474+ $url = substr( $url, 0, -strlen( $frag ) );
1475+
1476+ $url .= '#' . $this->unit_tag;
1477+
1478+ $url = apply_filters( 'wpcf7_form_action_url', $url );
1479+ $enctype = apply_filters( 'wpcf7_form_enctype', '' );
1480+ $class = apply_filters( 'wpcf7_form_class_attr', 'wpcf7-form' );
1481+
1482+ $form .= '<form action="' . esc_url_raw( $url ) . '" method="post"'
1483+ . ' class="' . esc_attr( $class ) . '"' . $enctype . '>' . "\n";
1484+ $form .= '<div style="display: none;">' . "\n";
1485+ $form .= '<input type="hidden" name="_wpcf7" value="'
1486+ . esc_attr( $this->id ) . '" />' . "\n";
1487+ $form .= '<input type="hidden" name="_wpcf7_version" value="'
1488+ . esc_attr( WPCF7_VERSION ) . '" />' . "\n";
1489+ $form .= '<input type="hidden" name="_wpcf7_unit_tag" value="'
1490+ . esc_attr( $this->unit_tag ) . '" />' . "\n";
1491+ $form .= '</div>' . "\n";
1492+ $form .= $this->form_elements();
1493+
1494+ if ( ! $this->responses_count )
1495+ $form .= $this->form_response_output();
1496+
1497+ $form .= '</form>';
1498+
1499+ $form .= '</div>';
1500+
1501+ return $form;
1502+ }
1503+
1504+ function form_response_output() {
1505+ $class = 'wpcf7-response-output';
1506+ $content = '';
1507+
1508+ if ( $this->is_posted() ) { // Post response output for non-AJAX
1509+ if ( isset( $_POST['_wpcf7_mail_sent'] ) && $_POST['_wpcf7_mail_sent']['id'] == $this->id ) {
1510+ if ( $_POST['_wpcf7_mail_sent']['ok'] ) {
1511+ $class .= ' wpcf7-mail-sent-ok';
1512+ $content = $_POST['_wpcf7_mail_sent']['message'];
1513+ } else {
1514+ $class .= ' wpcf7-mail-sent-ng';
1515+ if ( $_POST['_wpcf7_mail_sent']['spam'] )
1516+ $class .= ' wpcf7-spam-blocked';
1517+ $content = $_POST['_wpcf7_mail_sent']['message'];
1518+ }
1519+ } elseif ( isset( $_POST['_wpcf7_validation_errors'] ) && $_POST['_wpcf7_validation_errors']['id'] == $this->id ) {
1520+ $class .= ' wpcf7-validation-errors';
1521+ $content = $this->message( 'validation_error' );
1522+ }
1523+ } else {
1524+ $class .= ' wpcf7-display-none';
1525+ }
1526+
1527+ $class = ' class="' . $class . '"';
1528+
1529+ return '<div' . $class . '>' . $content . '</div>';
1530+ }
1531+
1532+ function validation_error( $name ) {
1533+ if ( ! $this->is_posted() )
1534+ return '';
1535+
1536+ if ( ! isset( $_POST['_wpcf7_validation_errors']['messages'][$name] ) )
1537+ return '';
1538+
1539+ $ve = trim( $_POST['_wpcf7_validation_errors']['messages'][$name] );
1540+
1541+ if ( ! empty( $ve ) ) {
1542+ $ve = '<span class="wpcf7-not-valid-tip-no-ajax">' . esc_html( $ve ) . '</span>';
1543+ return apply_filters( 'wpcf7_validation_error', $ve, $name, $this );
1544+ }
1545+
1546+ return '';
1547+ }
1548+
1549+ /* Form Elements */
1550+
1551+ function form_do_shortcode() {
1552+ global $wpcf7_shortcode_manager;
1553+
1554+ $form = $this->form;
1555+
1556+ if ( WPCF7_AUTOP ) {
1557+ $form = $wpcf7_shortcode_manager->normalize_shortcode( $form );
1558+ $form = wpcf7_autop( $form );
1559+ }
1560+
1561+ $form = $wpcf7_shortcode_manager->do_shortcode( $form );
1562+ $this->scanned_form_tags = $wpcf7_shortcode_manager->scanned_tags;
1563+
1564+ return $form;
1565+ }
1566+
1567+ function form_scan_shortcode( $cond = null ) {
1568+ global $wpcf7_shortcode_manager;
1569+
1570+ if ( ! empty( $this->scanned_form_tags ) ) {
1571+ $scanned = $this->scanned_form_tags;
1572+ } else {
1573+ $scanned = $wpcf7_shortcode_manager->scan_shortcode( $this->form );
1574+ $this->scanned_form_tags = $scanned;
1575+ }
1576+
1577+ if ( empty( $scanned ) )
1578+ return null;
1579+
1580+ if ( ! is_array( $cond ) || empty( $cond ) )
1581+ return $scanned;
1582+
1583+ for ( $i = 0, $size = count( $scanned ); $i < $size; $i++ ) {
1584+
1585+ if ( isset( $cond['type'] ) ) {
1586+ if ( is_string( $cond['type'] ) && ! empty( $cond['type'] ) ) {
1587+ if ( $scanned[$i]['type'] != $cond['type'] ) {
1588+ unset( $scanned[$i] );
1589+ continue;
1590+ }
1591+ } elseif ( is_array( $cond['type'] ) ) {
1592+ if ( ! in_array( $scanned[$i]['type'], $cond['type'] ) ) {
1593+ unset( $scanned[$i] );
1594+ continue;
1595+ }
1596+ }
1597+ }
1598+
1599+ if ( isset( $cond['name'] ) ) {
1600+ if ( is_string( $cond['name'] ) && ! empty( $cond['name'] ) ) {
1601+ if ( $scanned[$i]['name'] != $cond['name'] ) {
1602+ unset ( $scanned[$i] );
1603+ continue;
1604+ }
1605+ } elseif ( is_array( $cond['name'] ) ) {
1606+ if ( ! in_array( $scanned[$i]['name'], $cond['name'] ) ) {
1607+ unset( $scanned[$i] );
1608+ continue;
1609+ }
1610+ }
1611+ }
1612+ }
1613+
1614+ return array_values( $scanned );
1615+ }
1616+
1617+ function form_elements() {
1618+ return apply_filters( 'wpcf7_form_elements', $this->form_do_shortcode() );
1619+ }
1620+
1621+ /* Validate */
1622+
1623+ function validate() {
1624+ $fes = $this->form_scan_shortcode();
1625+
1626+ $result = array( 'valid' => true, 'reason' => array() );
1627+
1628+ foreach ( $fes as $fe ) {
1629+ $result = apply_filters( 'wpcf7_validate_' . $fe['type'], $result, $fe );
1630+ }
1631+
1632+ return $result;
1633+ }
1634+
1635+ /* Acceptance */
1636+
1637+ function accepted() {
1638+ $accepted = true;
1639+
1640+ return apply_filters( 'wpcf7_acceptance', $accepted );
1641+ }
1642+
1643+ /* Akismet */
1644+
1645+ function akismet() {
1646+ global $akismet_api_host, $akismet_api_port;
1647+
1648+ if ( ! function_exists( 'akismet_http_post' ) ||
1649+ ! ( get_option( 'wordpress_api_key' ) || $wpcom_api_key ) )
1650+ return false;
1651+
1652+ $akismet_ready = false;
1653+ $author = $author_email = $author_url = $content = '';
1654+ $fes = $this->form_scan_shortcode();
1655+
1656+ foreach ( $fes as $fe ) {
1657+ if ( ! is_array( $fe['options'] ) ) continue;
1658+
1659+ if ( preg_grep( '%^akismet:author$%', $fe['options'] ) && '' == $author ) {
1660+ $author = $_POST[$fe['name']];
1661+ $akismet_ready = true;
1662+ }
1663+
1664+ if ( preg_grep( '%^akismet:author_email$%', $fe['options'] ) && '' == $author_email ) {
1665+ $author_email = $_POST[$fe['name']];
1666+ $akismet_ready = true;
1667+ }
1668+
1669+ if ( preg_grep( '%^akismet:author_url$%', $fe['options'] ) && '' == $author_url ) {
1670+ $author_url = $_POST[$fe['name']];
1671+ $akismet_ready = true;
1672+ }
1673+
1674+ if ( '' != $content )
1675+ $content .= "\n\n";
1676+
1677+ $content .= $_POST[$fe['name']];
1678+ }
1679+
1680+ if ( ! $akismet_ready )
1681+ return false;
1682+
1683+ $c['blog'] = get_option( 'home' );
1684+ $c['user_ip'] = preg_replace( '/[^0-9., ]/', '', $_SERVER['REMOTE_ADDR'] );
1685+ $c['user_agent'] = $_SERVER['HTTP_USER_AGENT'];
1686+ $c['referrer'] = $_SERVER['HTTP_REFERER'];
1687+ $c['comment_type'] = 'contactform7';
1688+ if ( $permalink = get_permalink() )
1689+ $c['permalink'] = $permalink;
1690+ if ( '' != $author )
1691+ $c['comment_author'] = $author;
1692+ if ( '' != $author_email )
1693+ $c['comment_author_email'] = $author_email;
1694+ if ( '' != $author_url )
1695+ $c['comment_author_url'] = $author_url;
1696+ if ( '' != $content )
1697+ $c['comment_content'] = $content;
1698+
1699+ $ignore = array( 'HTTP_COOKIE' );
1700+
1701+ foreach ( $_SERVER as $key => $value )
1702+ if ( ! in_array( $key, (array) $ignore ) )
1703+ $c["$key"] = $value;
1704+
1705+ $query_string = '';
1706+ foreach ( $c as $key => $data )
1707+ $query_string .= $key . '=' . urlencode( stripslashes( (string) $data ) ) . '&';
1708+
1709+ $response = akismet_http_post( $query_string, $akismet_api_host,
1710+ '/1.1/comment-check', $akismet_api_port );
1711+ if ( 'true' == $response[1] )
1712+ return true;
1713+ else
1714+ return false;
1715+ }
1716+
1717+ /* Mail */
1718+
1719+ function mail() {
1720+ $fes = $this->form_scan_shortcode();
1721+
1722+ foreach ( $fes as $fe ) {
1723+ if ( empty( $fe['name'] ) )
1724+ continue;
1725+
1726+ $name = $fe['name'];
1727+ $pipes = $fe['pipes'];
1728+ $value = $_POST[$name];
1729+
1730+ if ( WPCF7_USE_PIPE && is_a( $pipes, 'WPCF7_Pipes' ) && ! $pipes->zero() ) {
1731+ if ( is_array( $value) ) {
1732+ $new_value = array();
1733+ foreach ( $value as $v ) {
1734+ $new_value[] = $pipes->do_pipe( stripslashes( $v ) );
1735+ }
1736+ $value = $new_value;
1737+ } else {
1738+ $value = $pipes->do_pipe( stripslashes( $value ) );
1739+ }
1740+ }
1741+
1742+ $this->posted_data[$name] = $value;
1743+ }
1744+
1745+ if ( $this->in_demo_mode() )
1746+ $this->skip_mail = true;
1747+
1748+ do_action_ref_array( 'wpcf7_before_send_mail', array( &$this ) );
1749+
1750+ if ( $this->skip_mail )
1751+ return true;
1752+
1753+ if ( $this->compose_and_send_mail( $this->mail ) ) {
1754+ if ( $this->mail_2['active'] )
1755+ $this->compose_and_send_mail( $this->mail_2 );
1756+
1757+ return true;
1758+ }
1759+
1760+ return false;
1761+ }
1762+
1763+ function compose_and_send_mail( $mail_template ) {
1764+ $regex = '/\[\s*([a-zA-Z_][0-9a-zA-Z:._-]*)\s*\]/';
1765+
1766+ $use_html = (bool) $mail_template['use_html'];
1767+
1768+ if ( $use_html )
1769+ $callback = array( &$this, 'mail_callback_html' );
1770+ else
1771+ $callback = array( &$this, 'mail_callback' );
1772+
1773+ $subject = preg_replace_callback( $regex, $callback, $mail_template['subject'] );
1774+ $sender = preg_replace_callback( $regex, $callback, $mail_template['sender'] );
1775+ $recipient = preg_replace_callback( $regex, $callback, $mail_template['recipient'] );
1776+ $additional_headers =
1777+ preg_replace_callback( $regex, $callback, $mail_template['additional_headers'] );
1778+ $body = preg_replace_callback( $regex, $callback, $mail_template['body'] );
1779+
1780+ if ( $use_html )
1781+ $body = wpautop( $body );
1782+
1783+ extract( apply_filters( 'wpcf7_mail_components',
1784+ compact( 'subject', 'sender', 'body', 'recipient', 'additional_headers' ) ) );
1785+
1786+ $headers = "From: $sender\n";
1787+
1788+ if ( $use_html )
1789+ $headers .= "Content-Type: text/html\n";
1790+
1791+ $headers .= trim( $additional_headers ) . "\n";
1792+
1793+ if ( $this->uploaded_files ) {
1794+ $for_this_mail = array();
1795+ foreach ( $this->uploaded_files as $name => $path ) {
1796+ if ( false === strpos( $mail_template['attachments'], "[${name}]" ) )
1797+ continue;
1798+ $for_this_mail[] = $path;
1799+ }
1800+
1801+ return @wp_mail( $recipient, $subject, $body, $headers, $for_this_mail );
1802+ } else {
1803+ return @wp_mail( $recipient, $subject, $body, $headers );
1804+ }
1805+ }
1806+
1807+ function mail_callback_html( $matches ) {
1808+ return $this->mail_callback( $matches, true );
1809+ }
1810+
1811+ function mail_callback( $matches, $html = false ) {
1812+ if ( isset( $this->posted_data[$matches[1]] ) ) {
1813+ $submitted = $this->posted_data[$matches[1]];
1814+
1815+ if ( is_array( $submitted ) )
1816+ $replaced = join( ', ', $submitted );
1817+ else
1818+ $replaced = $submitted;
1819+
1820+ if ( $html ) {
1821+ $replaced = strip_tags( $replaced );
1822+ $replaced = wptexturize( $replaced );
1823+ }
1824+
1825+ $replaced = apply_filters( 'wpcf7_mail_tag_replaced', $replaced, $submitted );
1826+
1827+ return stripslashes( $replaced );
1828+ }
1829+
1830+ if ( $special = apply_filters( 'wpcf7_special_mail_tags', '', $matches[1] ) )
1831+ return $special;
1832+
1833+ return $matches[0];
1834+ }
1835+
1836+ /* Message */
1837+
1838+ function message( $status ) {
1839+ $messages = $this->messages;
1840+ $message = $messages[$status];
1841+
1842+ return apply_filters( 'wpcf7_display_message', $message );
1843+ }
1844+
1845+ /* Additional settings */
1846+
1847+ function additional_setting( $name, $max = 1 ) {
1848+ $tmp_settings = (array) explode( "\n", $this->additional_settings );
1849+
1850+ $count = 0;
1851+ $values = array();
1852+
1853+ foreach ( $tmp_settings as $setting ) {
1854+ if ( preg_match('/^([a-zA-Z0-9_]+)\s*:(.*)$/', $setting, $matches ) ) {
1855+ if ( $matches[1] != $name )
1856+ continue;
1857+
1858+ if ( ! $max || $count < (int) $max ) {
1859+ $values[] = trim( $matches[2] );
1860+ $count += 1;
1861+ }
1862+ }
1863+ }
1864+
1865+ return $values;
1866+ }
1867+
1868+ function in_demo_mode() {
1869+ $settings = $this->additional_setting( 'demo_mode', false );
1870+
1871+ foreach ( $settings as $setting ) {
1872+ if ( in_array( $setting, array( 'on', 'true', '1' ) ) )
1873+ return true;
1874+ }
1875+
1876+ return false;
1877+ }
1878+
1879+ /* Upgrade */
1880+
1881+ function upgrade() {
1882+ if ( ! isset( $this->mail['recipient'] ) )
1883+ $this->mail['recipient'] = get_option( 'admin_email' );
1884+
1885+
1886+ if ( ! is_array( $this->messages ) )
1887+ $this->messages = array();
1888+
1889+
1890+ foreach ( wpcf7_messages() as $key => $arr ) {
1891+ if ( ! isset( $this->messages[$key] ) )
1892+ $this->messages[$key] = $arr['default'];
1893+ }
1894+ }
1895+
1896+ /* Save */
1897+
1898+ function save() {
1899+ global $wpdb, $wpcf7;
1900+
1901+ $fields = array(
1902+ 'title' => maybe_serialize( stripslashes_deep( $this->title ) ),
1903+ 'form' => maybe_serialize( stripslashes_deep( $this->form ) ),
1904+ 'mail' => maybe_serialize( stripslashes_deep( $this->mail ) ),
1905+ 'mail_2' => maybe_serialize ( stripslashes_deep( $this->mail_2 ) ),
1906+ 'messages' => maybe_serialize( stripslashes_deep( $this->messages ) ),
1907+ 'additional_settings' =>
1908+ maybe_serialize( stripslashes_deep( $this->additional_settings ) ) );
1909+
1910+ if ( $this->initial ) {
1911+ $result = $wpdb->insert( $wpcf7->contactforms, $fields );
1912+
1913+ if ( $result ) {
1914+ $this->initial = false;
1915+ $this->id = $wpdb->insert_id;
1916+
1917+ do_action_ref_array( 'wpcf7_after_create', array( &$this ) );
1918+ } else {
1919+ return false; // Failed to save
1920+ }
1921+
1922+ } else { // Update
1923+ if ( ! (int) $this->id )
1924+ return false; // Missing ID
1925+
1926+ $result = $wpdb->update( $wpcf7->contactforms, $fields,
1927+ array( 'cf7_unit_id' => absint( $this->id ) ) );
1928+
1929+ if ( false !== $result ) {
1930+ do_action_ref_array( 'wpcf7_after_update', array( &$this ) );
1931+ } else {
1932+ return false; // Failed to save
1933+ }
1934+ }
1935+
1936+ do_action_ref_array( 'wpcf7_after_save', array( &$this ) );
1937+ return true; // Succeeded to save
1938+ }
1939+
1940+ function copy() {
1941+ $new = new WPCF7_ContactForm();
1942+ $new->initial = true;
1943+
1944+ $new->title = $this->title . '_copy';
1945+ $new->form = $this->form;
1946+ $new->mail = $this->mail;
1947+ $new->mail_2 = $this->mail_2;
1948+ $new->messages = $this->messages;
1949+ $new->additional_settings = $this->additional_settings;
1950+
1951+ return $new;
1952+ }
1953+
1954+ function delete() {
1955+ global $wpdb, $wpcf7;
1956+
1957+ if ( $this->initial )
1958+ return;
1959+
1960+ $query = $wpdb->prepare(
1961+ "DELETE FROM $wpcf7->contactforms WHERE cf7_unit_id = %d LIMIT 1",
1962+ absint( $this->id ) );
1963+
1964+ $wpdb->query( $query );
1965+
1966+ $this->initial = true;
1967+ $this->id = null;
1968+ }
1969+}
1970+
1971+function wpcf7_contact_form( $id ) {
1972+ global $wpdb, $wpcf7;
1973+
1974+ $query = $wpdb->prepare( "SELECT * FROM $wpcf7->contactforms WHERE cf7_unit_id = %d", $id );
1975+
1976+ if ( ! $row = $wpdb->get_row( $query ) )
1977+ return false; // No data
1978+
1979+ $contact_form = new WPCF7_ContactForm();
1980+ $contact_form->id = $row->cf7_unit_id;
1981+ $contact_form->title = maybe_unserialize( $row->title );
1982+ $contact_form->form = maybe_unserialize( $row->form );
1983+ $contact_form->mail = maybe_unserialize( $row->mail );
1984+ $contact_form->mail_2 = maybe_unserialize( $row->mail_2 );
1985+ $contact_form->messages = maybe_unserialize( $row->messages );
1986+ $contact_form->additional_settings = maybe_unserialize( $row->additional_settings );
1987+
1988+ $contact_form->upgrade();
1989+
1990+ return $contact_form;
1991+}
1992+
1993+function wpcf7_contact_form_default_pack( $locale = null ) {
1994+ global $l10n;
1995+
1996+ if ( $locale && $locale != get_locale() ) {
1997+ $mo_orig = $l10n['wpcf7'];
1998+ unset( $l10n['wpcf7'] );
1999+
2000+ if ( 'en_US' != $locale ) {
2001+ $mofile = wpcf7_plugin_path( 'languages/wpcf7-' . $locale . '.mo' );
2002+ if ( ! load_textdomain( 'wpcf7', $mofile ) ) {
2003+ $l10n['wpcf7'] = $mo_orig;
2004+ unset( $mo_orig );
2005+ }
2006+ }
2007+ }
2008+
2009+ $contact_form = new WPCF7_ContactForm();
2010+ $contact_form->initial = true;
2011+
2012+ $contact_form->title = __( 'Untitled', 'wpcf7' );
2013+ $contact_form->form = wpcf7_default_form_template();
2014+ $contact_form->mail = wpcf7_default_mail_template();
2015+ $contact_form->mail_2 = wpcf7_default_mail_2_template();
2016+ $contact_form->messages = wpcf7_default_messages_template();
2017+
2018+ if ( isset( $mo_orig ) )
2019+ $l10n['wpcf7'] = $mo_orig;
2020+
2021+ return $contact_form;
2022+}
2023+
2024+function wpcf7_get_current_contact_form() {
2025+ global $wpcf7_contact_form;
2026+
2027+ if ( ! is_a( $wpcf7_contact_form, 'WPCF7_ContactForm' ) )
2028+ return null;
2029+
2030+ return $wpcf7_contact_form;
2031+}
2032+
2033+function wpcf7_is_posted() {
2034+ if ( ! $contact_form = wpcf7_get_current_contact_form() )
2035+ return false;
2036+
2037+ return $contact_form->is_posted();
2038+}
2039+
2040+function wpcf7_get_validation_error( $name ) {
2041+ if ( ! $contact_form = wpcf7_get_current_contact_form() )
2042+ return '';
2043+
2044+ return $contact_form->validation_error( $name );
2045+}
2046+
2047+function wpcf7_get_message( $status ) {
2048+ if ( ! $contact_form = wpcf7_get_current_contact_form() )
2049+ return '';
2050+
2051+ return $contact_form->message( $status );
2052+}
2053+
2054+function wpcf7_scan_shortcode( $cond = null ) {
2055+ if ( ! $contact_form = wpcf7_get_current_contact_form() )
2056+ return null;
2057+
2058+ return $contact_form->form_scan_shortcode( $cond );
2059+}
2060+
2061+?>
2062\ No newline at end of file
2063
2064=== added file 'wp-content/plugins/contact-form-7/includes/controller.php'
2065--- wp-content/plugins/contact-form-7/includes/controller.php 1970-01-01 00:00:00 +0000
2066+++ wp-content/plugins/contact-form-7/includes/controller.php 2011-02-18 16:15:41 +0000
2067@@ -0,0 +1,288 @@
2068+<?php
2069+
2070+add_action( 'init', 'wpcf7_init_switch', 11 );
2071+
2072+function wpcf7_init_switch() {
2073+ if ( 'GET' == $_SERVER['REQUEST_METHOD'] && isset( $_GET['_wpcf7_is_ajax_call'] ) ) {
2074+ wpcf7_ajax_onload();
2075+ exit();
2076+ } elseif ( 'POST' == $_SERVER['REQUEST_METHOD'] && isset( $_POST['_wpcf7_is_ajax_call'] ) ) {
2077+ wpcf7_ajax_json_echo();
2078+ exit();
2079+ } elseif ( isset( $_POST['_wpcf7'] ) ) {
2080+ wpcf7_process_nonajax_submitting();
2081+ }
2082+}
2083+
2084+function wpcf7_ajax_onload() {
2085+ global $wpcf7_contact_form;
2086+
2087+ $echo = '';
2088+
2089+ if ( isset( $_GET['_wpcf7'] ) ) {
2090+ $id = (int) $_GET['_wpcf7'];
2091+
2092+ if ( $wpcf7_contact_form = wpcf7_contact_form( $id ) ) {
2093+ $items = apply_filters( 'wpcf7_ajax_onload', array() );
2094+ $wpcf7_contact_form = null;
2095+ }
2096+ }
2097+
2098+ $echo = json_encode( $items );
2099+
2100+ if ( $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' ) {
2101+ @header( 'Content-Type: application/json; charset=' . get_option( 'blog_charset' ) );
2102+ echo $echo;
2103+ }
2104+}
2105+
2106+function wpcf7_ajax_json_echo() {
2107+ global $wpcf7_contact_form;
2108+
2109+ $echo = '';
2110+
2111+ if ( isset( $_POST['_wpcf7'] ) ) {
2112+ $id = (int) $_POST['_wpcf7'];
2113+ $unit_tag = $_POST['_wpcf7_unit_tag'];
2114+
2115+ if ( $wpcf7_contact_form = wpcf7_contact_form( $id ) ) {
2116+ $validation = $wpcf7_contact_form->validate();
2117+
2118+ $items = array(
2119+ 'mailSent' => false,
2120+ 'into' => '#' . $unit_tag,
2121+ 'captcha' => null );
2122+
2123+ $items = apply_filters( 'wpcf7_ajax_json_echo', $items );
2124+
2125+ if ( ! $validation['valid'] ) { // Validation error occured
2126+ $invalids = array();
2127+ foreach ( $validation['reason'] as $name => $reason ) {
2128+ $invalids[] = array(
2129+ 'into' => 'span.wpcf7-form-control-wrap.' . $name,
2130+ 'message' => $reason );
2131+ }
2132+
2133+ $items['message'] = wpcf7_get_message( 'validation_error' );
2134+ $items['invalids'] = $invalids;
2135+
2136+ } elseif ( ! $wpcf7_contact_form->accepted() ) { // Not accepted terms
2137+ $items['message'] = wpcf7_get_message( 'accept_terms' );
2138+
2139+ } elseif ( $wpcf7_contact_form->akismet() ) { // Spam!
2140+ $items['message'] = wpcf7_get_message( 'akismet_says_spam' );
2141+ $items['spam'] = true;
2142+
2143+ } elseif ( $wpcf7_contact_form->mail() ) {
2144+ $items['mailSent'] = true;
2145+ $items['message'] = wpcf7_get_message( 'mail_sent_ok' );
2146+
2147+ $on_sent_ok = $wpcf7_contact_form->additional_setting( 'on_sent_ok', false );
2148+ if ( ! empty( $on_sent_ok ) ) {
2149+ $on_sent_ok = array_map( 'wpcf7_strip_quote', $on_sent_ok );
2150+ } else {
2151+ $on_sent_ok = null;
2152+ }
2153+ $items['onSentOk'] = $on_sent_ok;
2154+
2155+ do_action_ref_array( 'wpcf7_mail_sent', array( &$wpcf7_contact_form ) );
2156+
2157+ } else {
2158+ $items['message'] = wpcf7_get_message( 'mail_sent_ng' );
2159+ }
2160+
2161+ // remove upload files
2162+ foreach ( (array) $wpcf7_contact_form->uploaded_files as $name => $path ) {
2163+ @unlink( $path );
2164+ }
2165+
2166+ $wpcf7_contact_form = null;
2167+ }
2168+ }
2169+
2170+ $echo = json_encode( $items );
2171+
2172+ if ( $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' ) {
2173+ @header( 'Content-Type: application/json; charset=' . get_option( 'blog_charset' ) );
2174+ echo $echo;
2175+ } else {
2176+ @header( 'Content-Type: text/html; charset=' . get_option( 'blog_charset' ) );
2177+ echo '<textarea>' . $echo . '</textarea>';
2178+ }
2179+}
2180+
2181+function wpcf7_process_nonajax_submitting() {
2182+ global $wpcf7_contact_form;
2183+
2184+ if ( ! isset($_POST['_wpcf7'] ) )
2185+ return;
2186+
2187+ $id = (int) $_POST['_wpcf7'];
2188+
2189+ if ( $wpcf7_contact_form = wpcf7_contact_form( $id ) ) {
2190+ $validation = $wpcf7_contact_form->validate();
2191+
2192+ if ( ! $validation['valid'] ) {
2193+ $_POST['_wpcf7_validation_errors'] = array( 'id' => $id, 'messages' => $validation['reason'] );
2194+ } elseif ( ! $wpcf7_contact_form->accepted() ) { // Not accepted terms
2195+ $_POST['_wpcf7_mail_sent'] = array( 'id' => $id, 'ok' => false, 'message' => wpcf7_get_message( 'accept_terms' ) );
2196+ } elseif ( $wpcf7_contact_form->akismet() ) { // Spam!
2197+ $_POST['_wpcf7_mail_sent'] = array( 'id' => $id, 'ok' => false, 'message' => wpcf7_get_message( 'akismet_says_spam' ), 'spam' => true );
2198+ } elseif ( $wpcf7_contact_form->mail() ) {
2199+ $_POST['_wpcf7_mail_sent'] = array( 'id' => $id, 'ok' => true, 'message' => wpcf7_get_message( 'mail_sent_ok' ) );
2200+
2201+ do_action_ref_array( 'wpcf7_mail_sent', array( &$wpcf7_contact_form ) );
2202+
2203+ $wpcf7_contact_form->clear_post();
2204+ } else {
2205+ $_POST['_wpcf7_mail_sent'] = array( 'id' => $id, 'ok' => false, 'message' => wpcf7_get_message( 'mail_sent_ng' ) );
2206+ }
2207+
2208+ // remove upload files
2209+ foreach ( (array) $wpcf7_contact_form->uploaded_files as $name => $path ) {
2210+ @unlink( $path );
2211+ }
2212+
2213+ $wpcf7_contact_form = null;
2214+ }
2215+}
2216+
2217+add_action( 'the_post', 'wpcf7_the_post' );
2218+
2219+function wpcf7_the_post() {
2220+ global $wpcf7;
2221+
2222+ $wpcf7->processing_within = 'p' . get_the_ID();
2223+ $wpcf7->unit_count = 0;
2224+}
2225+
2226+add_action( 'loop_end', 'wpcf7_loop_end' );
2227+
2228+function wpcf7_loop_end() {
2229+ global $wpcf7;
2230+
2231+ $wpcf7->processing_within = '';
2232+}
2233+
2234+add_filter( 'widget_text', 'wpcf7_widget_text_filter', 9 );
2235+
2236+function wpcf7_widget_text_filter( $content ) {
2237+ global $wpcf7;
2238+
2239+ $wpcf7->widget_count += 1;
2240+ $wpcf7->processing_within = 'w' . $wpcf7->widget_count;
2241+ $wpcf7->unit_count = 0;
2242+
2243+ $regex = '/\[\s*contact-form\s+(\d+(?:\s+.*)?)\]/';
2244+ $content = preg_replace_callback( $regex, 'wpcf7_widget_text_filter_callback', $content );
2245+
2246+ $wpcf7->processing_within = '';
2247+ return $content;
2248+}
2249+
2250+function wpcf7_widget_text_filter_callback( $matches ) {
2251+ return do_shortcode( $matches[0] );
2252+}
2253+
2254+add_shortcode( 'contact-form', 'wpcf7_contact_form_tag_func' );
2255+
2256+function wpcf7_contact_form_tag_func( $atts ) {
2257+ global $wpcf7, $wpcf7_contact_form;
2258+
2259+ if ( is_feed() )
2260+ return '[contact-form]';
2261+
2262+ if ( is_string( $atts ) )
2263+ $atts = explode( ' ', $atts, 2 );
2264+
2265+ $atts = (array) $atts;
2266+
2267+ $id = (int) array_shift( $atts );
2268+
2269+ if ( ! ( $wpcf7_contact_form = wpcf7_contact_form( $id ) ) )
2270+ return '[contact-form 404 "Not Found"]';
2271+
2272+ if ( $wpcf7->processing_within ) { // Inside post content or text widget
2273+ $wpcf7->unit_count += 1;
2274+ $unit_count = $wpcf7->unit_count;
2275+ $processing_within = $wpcf7->processing_within;
2276+
2277+ } else { // Inside template
2278+
2279+ if ( ! isset( $wpcf7->global_unit_count ) )
2280+ $wpcf7->global_unit_count = 0;
2281+
2282+ $wpcf7->global_unit_count += 1;
2283+ $unit_count = 1;
2284+ $processing_within = 't' . $wpcf7->global_unit_count;
2285+ }
2286+
2287+ $unit_tag = 'wpcf7-f' . $id . '-' . $processing_within . '-o' . $unit_count;
2288+ $wpcf7_contact_form->unit_tag = $unit_tag;
2289+
2290+ $form = $wpcf7_contact_form->form_html();
2291+
2292+ $wpcf7_contact_form = null;
2293+
2294+ return $form;
2295+}
2296+
2297+add_action( 'wp_head', 'wpcf7_head' );
2298+
2299+function wpcf7_head() {
2300+ // Cached?
2301+ if ( wpcf7_script_is() && defined( 'WP_CACHE' ) && WP_CACHE ) :
2302+?>
2303+<script type="text/javascript">
2304+//<![CDATA[
2305+var _wpcf7 = { cached: 1 };
2306+//]]>
2307+</script>
2308+<?php
2309+ endif;
2310+}
2311+
2312+if ( WPCF7_LOAD_JS )
2313+ add_action( 'wp_print_scripts', 'wpcf7_enqueue_scripts' );
2314+
2315+function wpcf7_enqueue_scripts() {
2316+ // jquery.form.js originally bundled with WordPress is out of date and deprecated
2317+ // so we need to deregister it and re-register the latest one
2318+ wp_deregister_script( 'jquery-form' );
2319+ wp_register_script( 'jquery-form', wpcf7_plugin_url( 'jquery.form.js' ),
2320+ array( 'jquery' ), '2.52', true );
2321+
2322+ $in_footer = true;
2323+ if ( 'header' === WPCF7_LOAD_JS )
2324+ $in_footer = false;
2325+
2326+ wp_enqueue_script( 'contact-form-7', wpcf7_plugin_url( 'scripts.js' ),
2327+ array( 'jquery', 'jquery-form' ), WPCF7_VERSION, $in_footer );
2328+
2329+ do_action( 'wpcf7_enqueue_scripts' );
2330+}
2331+
2332+function wpcf7_script_is() {
2333+ return wp_script_is( 'contact-form-7' );
2334+}
2335+
2336+if ( WPCF7_LOAD_CSS )
2337+ add_action( 'wp_print_styles', 'wpcf7_enqueue_styles' );
2338+
2339+function wpcf7_enqueue_styles() {
2340+ wp_enqueue_style( 'contact-form-7', wpcf7_plugin_url( 'styles.css' ),
2341+ array(), WPCF7_VERSION, 'all' );
2342+
2343+ if ( 'rtl' == get_bloginfo( 'text_direction' ) ) {
2344+ wp_enqueue_style( 'contact-form-7-rtl', wpcf7_plugin_url( 'styles-rtl.css' ),
2345+ array(), WPCF7_VERSION, 'all' );
2346+ }
2347+
2348+ do_action( 'wpcf7_enqueue_styles' );
2349+}
2350+
2351+function wpcf7_style_is() {
2352+ return wp_style_is( 'contact-form-7' );
2353+}
2354+
2355+?>
2356\ No newline at end of file
2357
2358=== added file 'wp-content/plugins/contact-form-7/includes/formatting.php'
2359--- wp-content/plugins/contact-form-7/includes/formatting.php 1970-01-01 00:00:00 +0000
2360+++ wp-content/plugins/contact-form-7/includes/formatting.php 2011-02-18 16:15:41 +0000
2361@@ -0,0 +1,144 @@
2362+<?php
2363+
2364+function wpcf7_autop( $pee, $br = 1 ) {
2365+
2366+ if ( trim( $pee ) === '' )
2367+ return '';
2368+ $pee = $pee . "\n"; // just to make things a little easier, pad the end
2369+ $pee = preg_replace( '|<br />\s*<br />|', "\n\n", $pee );
2370+ // Space things out a little
2371+ /* wpcf7: remove select and input */
2372+ $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)';
2373+ $pee = preg_replace( '!(<' . $allblocks . '[^>]*>)!', "\n$1", $pee );
2374+ $pee = preg_replace( '!(</' . $allblocks . '>)!', "$1\n\n", $pee );
2375+ $pee = str_replace( array( "\r\n", "\r" ), "\n", $pee ); // cross-platform newlines
2376+ if ( strpos( $pee, '<object' ) !== false ) {
2377+ $pee = preg_replace( '|\s*<param([^>]*)>\s*|', "<param$1>", $pee ); // no pee inside object/embed
2378+ $pee = preg_replace( '|\s*</embed>\s*|', '</embed>', $pee );
2379+ }
2380+ $pee = preg_replace( "/\n\n+/", "\n\n", $pee ); // take care of duplicates
2381+ // make paragraphs, including one at the end
2382+ $pees = preg_split( '/\n\s*\n/', $pee, -1, PREG_SPLIT_NO_EMPTY );
2383+ $pee = '';
2384+ foreach ( $pees as $tinkle )
2385+ $pee .= '<p>' . trim( $tinkle, "\n" ) . "</p>\n";
2386+ $pee = preg_replace( '|<p>\s*</p>|', '', $pee ); // under certain strange conditions it could create a P of entirely whitespace
2387+ $pee = preg_replace( '!<p>([^<]+)</(div|address|form|fieldset)>!', "<p>$1</p></$2>", $pee );
2388+ $pee = preg_replace( '!<p>\s*(</?' . $allblocks . '[^>]*>)\s*</p>!', "$1", $pee ); // don't pee all over a tag
2389+ $pee = preg_replace( "|<p>(<li.+?)</p>|", "$1", $pee ); // problem with nested lists
2390+ $pee = preg_replace( '|<p><blockquote([^>]*)>|i', "<blockquote$1><p>", $pee );
2391+ $pee = str_replace( '</blockquote></p>', '</p></blockquote>', $pee );
2392+ $pee = preg_replace( '!<p>\s*(</?' . $allblocks . '[^>]*>)!', "$1", $pee );
2393+ $pee = preg_replace( '!(</?' . $allblocks . '[^>]*>)\s*</p>!', "$1", $pee );
2394+ if ( $br ) {
2395+ /* wpcf7: add textarea */
2396+ $pee = preg_replace_callback( '/<(script|style|textarea).*?<\/\\1>/s', create_function( '$matches', 'return str_replace("\n", "<WPPreserveNewline />", $matches[0]);' ), $pee );
2397+ $pee = preg_replace( '|(?<!<br />)\s*\n|', "<br />\n", $pee ); // optionally make line breaks
2398+ $pee = str_replace( '<WPPreserveNewline />', "\n", $pee );
2399+ }
2400+ $pee = preg_replace( '!(</?' . $allblocks . '[^>]*>)\s*<br />!', "$1", $pee );
2401+ $pee = preg_replace( '!<br />(\s*</?(?:p|li|div|dl|dd|dt|th|pre|td|ul|ol)[^>]*>)!', '$1', $pee );
2402+ if ( strpos( $pee, '<pre' ) !== false )
2403+ $pee = preg_replace_callback( '!(<pre[^>]*>)(.*?)</pre>!is', 'clean_pre', $pee );
2404+ $pee = preg_replace( "|\n</p>$|", '</p>', $pee );
2405+
2406+ return $pee;
2407+}
2408+
2409+function wpcf7_strip_quote( $text ) {
2410+ $text = trim( $text );
2411+ if ( preg_match( '/^"(.*)"$/', $text, $matches ) )
2412+ $text = $matches[1];
2413+ elseif ( preg_match( "/^'(.*)'$/", $text, $matches ) )
2414+ $text = $matches[1];
2415+ return $text;
2416+}
2417+
2418+function wpcf7_strip_quote_deep( $arr ) {
2419+ if ( is_string( $arr ) )
2420+ return wpcf7_strip_quote( $arr );
2421+
2422+ if ( is_array( $arr ) ) {
2423+ $result = array();
2424+ foreach ( $arr as $key => $text ) {
2425+ $result[$key] = wpcf7_strip_quote( $text );
2426+ }
2427+ return $result;
2428+ }
2429+}
2430+
2431+function wpcf7_canonicalize( $text ) {
2432+ if ( function_exists( 'mb_convert_kana' ) && 'UTF-8' == get_option( 'blog_charset' ) )
2433+ $text = mb_convert_kana( $text, 'asKV', 'UTF-8' );
2434+
2435+ $text = strtolower( $text );
2436+ $text = trim( $text );
2437+ return $text;
2438+}
2439+
2440+function wpcf7_sanitize_file_name( $filename ) {
2441+ /* Memo:
2442+ // This function does sanitization introduced in http://core.trac.wordpress.org/ticket/11122
2443+ // WordPress 2.8.6 will implement it in sanitize_file_name().
2444+ // While Contact Form 7's file uploading function uses wp_unique_filename(), and
2445+ // it in turn calls sanitize_file_name(). Therefore this wpcf7_sanitize_file_name() will be
2446+ // redundant and unnecessary when you use Contact Form 7 on WordPress 2.8.6 or higher.
2447+ // This function is provided just for the sake of protecting who uses older WordPress.
2448+ */
2449+
2450+ // Split the filename into a base and extension[s]
2451+ $parts = explode( '.', $filename );
2452+
2453+ // Return if only one extension
2454+ if ( count( $parts ) <= 2 )
2455+ return $filename;
2456+
2457+ // Process multiple extensions
2458+ $filename = array_shift( $parts );
2459+ $extension = array_pop( $parts );
2460+
2461+ $mimes = array( 'jpg|jpeg|jpe', 'gif', 'png', 'bmp',
2462+ 'tif|tiff', 'ico', 'asf|asx|wax|wmv|wmx', 'avi',
2463+ 'divx', 'mov|qt', 'mpeg|mpg|mpe', 'txt|c|cc|h',
2464+ 'rtx', 'css', 'htm|html', 'mp3|m4a', 'mp4|m4v',
2465+ 'ra|ram', 'wav', 'ogg', 'mid|midi', 'wma', 'rtf',
2466+ 'js', 'pdf', 'doc|docx', 'pot|pps|ppt|pptx', 'wri',
2467+ 'xla|xls|xlsx|xlt|xlw', 'mdb', 'mpp', 'swf', 'class',
2468+ 'tar', 'zip', 'gz|gzip', 'exe',
2469+ // openoffice formats
2470+ 'odt', 'odp', 'ods', 'odg', 'odc', 'odb', 'odf' );
2471+
2472+ // Loop over any intermediate extensions.
2473+ // Munge them with a trailing underscore if they are a 2 - 5 character
2474+ // long alpha string not in the extension whitelist.
2475+ foreach ( (array) $parts as $part) {
2476+ $filename .= '.' . $part;
2477+
2478+ if ( preg_match( '/^[a-zA-Z]{2,5}\d?$/', $part ) ) {
2479+ $allowed = false;
2480+ foreach ( $mimes as $ext_preg ) {
2481+ $ext_preg = '!(^' . $ext_preg . ')$!i';
2482+ if ( preg_match( $ext_preg, $part ) ) {
2483+ $allowed = true;
2484+ break;
2485+ }
2486+ }
2487+ if ( ! $allowed )
2488+ $filename .= '_';
2489+ }
2490+ }
2491+ $filename .= '.' . $extension;
2492+
2493+ return $filename;
2494+}
2495+
2496+function wpcf7_is_name( $string ) {
2497+ // See http://www.w3.org/TR/html401/types.html#h-6.2
2498+ // ID and NAME tokens must begin with a letter ([A-Za-z])
2499+ // and may be followed by any number of letters, digits ([0-9]),
2500+ // hyphens ("-"), underscores ("_"), colons (":"), and periods (".").
2501+
2502+ return preg_match( '/^[A-Za-z][-A-Za-z0-9_:.]*$/', $string );
2503+}
2504+
2505+?>
2506\ No newline at end of file
2507
2508=== added file 'wp-content/plugins/contact-form-7/includes/functions.php'
2509--- wp-content/plugins/contact-form-7/includes/functions.php 1970-01-01 00:00:00 +0000
2510+++ wp-content/plugins/contact-form-7/includes/functions.php 2011-02-18 16:15:41 +0000
2511@@ -0,0 +1,225 @@
2512+<?php
2513+
2514+function wpcf7_messages() {
2515+ $messages = array(
2516+ 'mail_sent_ok' => array(
2517+ 'description' => __( "Sender's message was sent successfully", 'wpcf7' ),
2518+ 'default' => __( 'Your message was sent successfully. Thanks.', 'wpcf7' )
2519+ ),
2520+
2521+ 'mail_sent_ng' => array(
2522+ 'description' => __( "Sender's message was failed to send", 'wpcf7' ),
2523+ 'default' => __( 'Failed to send your message. Please try later or contact administrator by other way.', 'wpcf7' )
2524+ ),
2525+
2526+ 'akismet_says_spam' => array(
2527+ 'description' => __( "Akismet judged the sending activity as spamming", 'wpcf7' ),
2528+ 'default' => __( 'Failed to send your message. Please try later or contact administrator by other way.', 'wpcf7' )
2529+ ),
2530+
2531+ 'validation_error' => array(
2532+ 'description' => __( "Validation errors occurred", 'wpcf7' ),
2533+ 'default' => __( 'Validation errors occurred. Please confirm the fields and submit it again.', 'wpcf7' )
2534+ ),
2535+
2536+ 'accept_terms' => array(
2537+ 'description' => __( "There is a field of term that sender is needed to accept", 'wpcf7' ),
2538+ 'default' => __( 'Please accept the terms to proceed.', 'wpcf7' )
2539+ ),
2540+
2541+ 'invalid_email' => array(
2542+ 'description' => __( "Email address that sender entered is invalid", 'wpcf7' ),
2543+ 'default' => __( 'Email address seems invalid.', 'wpcf7' )
2544+ ),
2545+
2546+ 'invalid_required' => array(
2547+ 'description' => __( "There is a field that sender is needed to fill in", 'wpcf7' ),
2548+ 'default' => __( 'Please fill the required field.', 'wpcf7' )
2549+ )
2550+ );
2551+
2552+ return apply_filters( 'wpcf7_messages', $messages );
2553+}
2554+
2555+function wpcf7_default_form_template() {
2556+ $template =
2557+ '<p>' . __( 'Your Name', 'wpcf7' ) . ' ' . __( '(required)', 'wpcf7' ) . '<br />' . "\n"
2558+ . ' [text* your-name] </p>' . "\n\n"
2559+ . '<p>' . __( 'Your Email', 'wpcf7' ) . ' ' . __( '(required)', 'wpcf7' ) . '<br />' . "\n"
2560+ . ' [email* your-email] </p>' . "\n\n"
2561+ . '<p>' . __( 'Subject', 'wpcf7' ) . '<br />' . "\n"
2562+ . ' [text your-subject] </p>' . "\n\n"
2563+ . '<p>' . __( 'Your Message', 'wpcf7' ) . '<br />' . "\n"
2564+ . ' [textarea your-message] </p>' . "\n\n"
2565+ . '<p>[submit "' . __( 'Send', 'wpcf7' ) . '"]</p>';
2566+
2567+ return $template;
2568+}
2569+
2570+function wpcf7_default_mail_template() {
2571+ $subject = '[your-subject]';
2572+ $sender = '[your-name] <[your-email]>';
2573+ $body = sprintf( __( 'From: %s', 'wpcf7' ), '[your-name] <[your-email]>' ) . "\n"
2574+ . sprintf( __( 'Subject: %s', 'wpcf7' ), '[your-subject]' ) . "\n\n"
2575+ . __( 'Message Body:', 'wpcf7' ) . "\n" . '[your-message]' . "\n\n" . '--' . "\n"
2576+ . sprintf( __( 'This mail is sent via contact form on %1$s %2$s', 'wpcf7' ),
2577+ get_bloginfo( 'name' ), get_bloginfo( 'url' ) );
2578+ $recipient = get_option( 'admin_email' );
2579+ $additional_headers = '';
2580+ $attachments = '';
2581+ $use_html = 0;
2582+ return compact( 'subject', 'sender', 'body', 'recipient', 'additional_headers', 'attachments', 'use_html' );
2583+}
2584+
2585+function wpcf7_default_mail_2_template() {
2586+ $active = false;
2587+ $subject = '[your-subject]';
2588+ $sender = '[your-name] <[your-email]>';
2589+ $body = __( 'Message body:', 'wpcf7' ) . "\n" . '[your-message]' . "\n\n" . '--' . "\n"
2590+ . sprintf( __( 'This mail is sent via contact form on %1$s %2$s', 'wpcf7' ),
2591+ get_bloginfo( 'name' ), get_bloginfo( 'url' ) );
2592+ $recipient = '[your-email]';
2593+ $additional_headers = '';
2594+ $attachments = '';
2595+ $use_html = 0;
2596+ return compact( 'active', 'subject', 'sender', 'body', 'recipient', 'additional_headers', 'attachments', 'use_html' );
2597+}
2598+
2599+function wpcf7_default_messages_template() {
2600+ $messages = array();
2601+
2602+ foreach ( wpcf7_messages() as $key => $arr ) {
2603+ $messages[$key] = $arr['default'];
2604+ }
2605+
2606+ return $messages;
2607+}
2608+
2609+function wpcf7_is_multisite() { // will be removed when WordPress 2.9 is not supported
2610+ if ( function_exists( 'is_multisite' ) )
2611+ return is_multisite();
2612+
2613+ return false;
2614+}
2615+
2616+function wpcf7_is_main_site() { // will be removed when WordPress 2.9 is not supported
2617+ if ( function_exists( 'is_main_site' ) )
2618+ return is_main_site();
2619+
2620+ return false;
2621+}
2622+
2623+function wpcf7_upload_dir( $type = false ) {
2624+ global $switched;
2625+
2626+ $siteurl = get_option( 'siteurl' );
2627+ $upload_path = trim( get_option( 'upload_path' ) );
2628+
2629+ $main_override = wpcf7_is_multisite() && defined( 'MULTISITE' ) && wpcf7_is_main_site();
2630+
2631+ if ( empty( $upload_path ) ) {
2632+ $dir = WP_CONTENT_DIR . '/uploads';
2633+ } else {
2634+ $dir = $upload_path;
2635+
2636+ if ( 'wp-content/uploads' == $upload_path ) {
2637+ $dir = WP_CONTENT_DIR . '/uploads';
2638+ } elseif ( 0 !== strpos( $dir, ABSPATH ) ) {
2639+ // $dir is absolute, $upload_path is (maybe) relative to ABSPATH
2640+ $dir = path_join( ABSPATH, $dir );
2641+ }
2642+ }
2643+
2644+ if ( ! $url = get_option( 'upload_url_path' ) ) {
2645+ if ( empty( $upload_path )
2646+ || ( 'wp-content/uploads' == $upload_path )
2647+ || ( $upload_path == $dir ) )
2648+ $url = WP_CONTENT_URL . '/uploads';
2649+ else
2650+ $url = trailingslashit( $siteurl ) . $upload_path;
2651+ }
2652+
2653+ if ( defined( 'UPLOADS' ) && ! $main_override
2654+ && ( ! isset( $switched ) || $switched === false ) ) {
2655+ $dir = ABSPATH . UPLOADS;
2656+ $url = trailingslashit( $siteurl ) . UPLOADS;
2657+ }
2658+
2659+ if ( wpcf7_is_multisite() && ! $main_override
2660+ && ( ! isset( $switched ) || $switched === false ) ) {
2661+
2662+ if ( defined( 'BLOGUPLOADDIR' ) )
2663+ $dir = untrailingslashit( BLOGUPLOADDIR );
2664+
2665+ $url = str_replace( UPLOADS, 'files', $url );
2666+ }
2667+
2668+ $uploads = apply_filters( 'wpcf7_upload_dir', array( 'dir' => $dir, 'url' => $url ) );
2669+
2670+ if ( 'dir' == $type )
2671+ return $uploads['dir'];
2672+ if ( 'url' == $type )
2673+ return $uploads['url'];
2674+
2675+ return $uploads;
2676+}
2677+
2678+function wpcf7_l10n() {
2679+ $l10n = array(
2680+ 'af' => __( 'Afrikaans', 'wpcf7' ),
2681+ 'sq' => __( 'Albanian', 'wpcf7' ),
2682+ 'ar' => __( 'Arabic', 'wpcf7' ),
2683+ 'hy_AM' => __( 'Armenian', 'wpcf7' ),
2684+ 'bn_BD' => __( 'Bangla', 'wpcf7' ),
2685+ 'bs' => __( 'Bosnian', 'wpcf7' ),
2686+ 'pt_BR' => __( 'Brazilian Portuguese', 'wpcf7' ),
2687+ 'bg_BG' => __( 'Bulgarian', 'wpcf7' ),
2688+ 'ca' => __( 'Catalan', 'wpcf7' ),
2689+ 'zh_CN' => __( 'Chinese (Simplified)', 'wpcf7' ),
2690+ 'zh_TW' => __( 'Chinese (Traditional)', 'wpcf7' ),
2691+ 'hr' => __( 'Croatian', 'wpcf7' ),
2692+ 'cs_CZ' => __( 'Czech', 'wpcf7' ),
2693+ 'da_DK' => __( 'Danish', 'wpcf7' ),
2694+ 'nl_NL' => __( 'Dutch', 'wpcf7' ),
2695+ 'en_US' => __( 'English', 'wpcf7' ),
2696+ 'et' => __( 'Estonian', 'wpcf7' ),
2697+ 'fi' => __( 'Finnish', 'wpcf7' ),
2698+ 'fr_FR' => __( 'French', 'wpcf7' ),
2699+ 'gl_ES' => __( 'Galician', 'wpcf7' ),
2700+ 'ka_GE' => __( 'Georgian', 'wpcf7' ),
2701+ 'de_DE' => __( 'German', 'wpcf7' ),
2702+ 'el' => __( 'Greek', 'wpcf7' ),
2703+ 'he_IL' => __( 'Hebrew', 'wpcf7' ),
2704+ 'hi_IN' => __( 'Hindi', 'wpcf7' ),
2705+ 'hu_HU' => __( 'Hungarian', 'wpcf7' ),
2706+ 'id_ID' => __( 'Indonesian', 'wpcf7' ),
2707+ 'it_IT' => __( 'Italian', 'wpcf7' ),
2708+ 'ja' => __( 'Japanese', 'wpcf7' ),
2709+ 'ko_KR' => __( 'Korean', 'wpcf7' ),
2710+ 'lv' => __( 'Latvian', 'wpcf7' ),
2711+ 'lt_LT' => __( 'Lithuanian', 'wpcf7' ),
2712+ 'mk_MK' => __( 'Macedonian', 'wpcf7' ),
2713+ 'ms_MY' => __( 'Malay', 'wpcf7' ),
2714+ 'ml_IN' => __( 'Malayalam', 'wpcf7' ),
2715+ 'nb_NO' => __( 'Norwegian', 'wpcf7' ),
2716+ 'fa_IR' => __( 'Persian', 'wpcf7' ),
2717+ 'pl_PL' => __( 'Polish', 'wpcf7' ),
2718+ 'pt_PT' => __( 'Portuguese', 'wpcf7' ),
2719+ 'ru_RU' => __( 'Russian', 'wpcf7' ),
2720+ 'ro_RO' => __( 'Romanian', 'wpcf7' ),
2721+ 'sr_RS' => __( 'Serbian', 'wpcf7' ),
2722+ 'sk' => __( 'Slovak', 'wpcf7' ),
2723+ 'sl_SI' => __( 'Slovene', 'wpcf7' ),
2724+ 'es_ES' => __( 'Spanish', 'wpcf7' ),
2725+ 'sv_SE' => __( 'Swedish', 'wpcf7' ),
2726+ 'ta' => __( 'Tamil', 'wpcf7' ),
2727+ 'th' => __( 'Thai', 'wpcf7' ),
2728+ 'tr_TR' => __( 'Turkish', 'wpcf7' ),
2729+ 'uk' => __( 'Ukrainian', 'wpcf7' ),
2730+ 'vi' => __( 'Vietnamese', 'wpcf7' )
2731+ );
2732+
2733+ return $l10n;
2734+}
2735+
2736+?>
2737\ No newline at end of file
2738
2739=== added file 'wp-content/plugins/contact-form-7/includes/pipe.php'
2740--- wp-content/plugins/contact-form-7/includes/pipe.php 1970-01-01 00:00:00 +0000
2741+++ wp-content/plugins/contact-form-7/includes/pipe.php 2011-02-18 16:15:41 +0000
2742@@ -0,0 +1,67 @@
2743+<?php
2744+
2745+class WPCF7_Pipe {
2746+
2747+ var $before = '';
2748+ var $after = '';
2749+
2750+ function WPCF7_Pipe( $text ) {
2751+ $pipe_pos = strpos( $text, '|' );
2752+ if ( false === $pipe_pos ) {
2753+ $this->before = $this->after = $text;
2754+ } else {
2755+ $this->before = substr( $text, 0, $pipe_pos );
2756+ $this->after = substr( $text, $pipe_pos + 1 );
2757+ }
2758+ }
2759+}
2760+
2761+class WPCF7_Pipes {
2762+
2763+ var $pipes = array();
2764+
2765+ function WPCF7_Pipes( $texts ) {
2766+ if ( ! is_array( $texts ) )
2767+ return;
2768+
2769+ foreach ( $texts as $text ) {
2770+ $this->add_pipe( $text );
2771+ }
2772+ }
2773+
2774+ function add_pipe( $text ) {
2775+ $pipe = new WPCF7_Pipe( $text );
2776+ $this->pipes[] = $pipe;
2777+ }
2778+
2779+ function do_pipe( $before ) {
2780+ foreach ( $this->pipes as $pipe ) {
2781+ if ( $pipe->before == $before )
2782+ return $pipe->after;
2783+ }
2784+ return $before;
2785+ }
2786+
2787+ function collect_befores() {
2788+ $befores = array();
2789+
2790+ foreach ( $this->pipes as $pipe ) {
2791+ $befores[] = $pipe->before;
2792+ }
2793+
2794+ return $befores;
2795+ }
2796+
2797+ function zero() {
2798+ return empty( $this->pipes );
2799+ }
2800+
2801+ function random_pipe() {
2802+ if ( $this->zero() )
2803+ return null;
2804+
2805+ return $this->pipes[array_rand( $this->pipes )];
2806+ }
2807+}
2808+
2809+?>
2810\ No newline at end of file
2811
2812=== added file 'wp-content/plugins/contact-form-7/includes/shortcodes.php'
2813--- wp-content/plugins/contact-form-7/includes/shortcodes.php 1970-01-01 00:00:00 +0000
2814+++ wp-content/plugins/contact-form-7/includes/shortcodes.php 2011-02-18 16:15:41 +0000
2815@@ -0,0 +1,171 @@
2816+<?php
2817+
2818+class WPCF7_ShortcodeManager {
2819+
2820+ var $shortcode_tags = array();
2821+
2822+ // Taggs scanned at the last time of do_shortcode()
2823+ var $scanned_tags = null;
2824+
2825+ // Executing shortcodes (true) or just scanning (false)
2826+ var $exec = true;
2827+
2828+ function add_shortcode( $tag, $func, $has_name = false ) {
2829+ if ( is_callable( $func ) )
2830+ $this->shortcode_tags[$tag] = array(
2831+ 'function' => $func,
2832+ 'has_name' => (boolean) $has_name );
2833+ }
2834+
2835+ function remove_shortcode( $tag ) {
2836+ unset( $this->shortcode_tags[$tag] );
2837+ }
2838+
2839+ function normalize_shortcode( $content ) {
2840+ if ( empty( $this->shortcode_tags ) || ! is_array( $this->shortcode_tags ) )
2841+ return $content;
2842+
2843+ $pattern = $this->get_shortcode_regex();
2844+ return preg_replace_callback( '/' . $pattern . '/s',
2845+ array( &$this, 'normalize_space_cb' ), $content );
2846+ }
2847+
2848+ function normalize_space_cb( $m ) {
2849+ // allow [[foo]] syntax for escaping a tag
2850+ if ( $m[1] == '[' && $m[6] == ']' )
2851+ return $m[0];
2852+
2853+ return preg_replace( '/\s+/', ' ', $m[0] );
2854+ }
2855+
2856+ function do_shortcode( $content, $exec = true ) {
2857+ $this->exec = (bool) $exec;
2858+ $this->scanned_tags = array();
2859+
2860+ if ( empty( $this->shortcode_tags ) || ! is_array( $this->shortcode_tags ) )
2861+ return $content;
2862+
2863+ $pattern = $this->get_shortcode_regex();
2864+ return preg_replace_callback( '/' . $pattern . '/s',
2865+ array( &$this, 'do_shortcode_tag' ), $content );
2866+ }
2867+
2868+ function scan_shortcode( $content ) {
2869+ $this->do_shortcode( $content, false );
2870+ return $this->scanned_tags;
2871+ }
2872+
2873+ function get_shortcode_regex() {
2874+ $tagnames = array_keys( $this->shortcode_tags );
2875+ $tagregexp = join( '|', array_map( 'preg_quote', $tagnames ) );
2876+
2877+ return '(\[?)\[(' . $tagregexp . ')(?:\s(.*?))?(?:\s(\/))?\](?:(.+?)\[\/\2\])?(\]?)';
2878+ }
2879+
2880+ function do_shortcode_tag( $m ) {
2881+ // allow [[foo]] syntax for escaping a tag
2882+ if ( $m[1] == '[' && $m[6] == ']' ) {
2883+ return substr( $m[0], 1, -1 );
2884+ }
2885+
2886+ $tag = $m[2];
2887+ $attr = $this->shortcode_parse_atts( $m[3] );
2888+
2889+ $scanned_tag = array();
2890+ $scanned_tag['type'] = $tag;
2891+
2892+ if ( is_array( $attr ) ) {
2893+ if ( is_array( $attr['options'] ) ) {
2894+ if ( $this->shortcode_tags[$tag]['has_name'] && ! empty( $attr['options'] ) ) {
2895+ $scanned_tag['name'] = array_shift( $attr['options'] );
2896+
2897+ if ( ! wpcf7_is_name( $scanned_tag['name'] ) )
2898+ return $m[0]; // Invalid name is used. Ignore this tag.
2899+ }
2900+
2901+ $scanned_tag['options'] = (array) $attr['options'];
2902+ }
2903+
2904+ $scanned_tag['raw_values'] = (array) $attr['values'];
2905+
2906+ if ( WPCF7_USE_PIPE ) {
2907+ $pipes = new WPCF7_Pipes( $scanned_tag['raw_values'] );
2908+ $scanned_tag['values'] = $pipes->collect_befores();
2909+ $scanned_tag['pipes'] = $pipes;
2910+ } else {
2911+ $scanned_tag['values'] = $scanned_tag['raw_values'];
2912+ }
2913+
2914+ $scanned_tag['labels'] = $scanned_tag['values'];
2915+
2916+ } else {
2917+ $scanned_tag['attr'] = $attr;
2918+ }
2919+
2920+ $content = trim( $m[5] );
2921+ $content = preg_replace( "/<br\s*\/?>$/m", '', $content );
2922+ $scanned_tag['content'] = $content;
2923+
2924+ $scanned_tag = apply_filters( 'wpcf7_form_tag', $scanned_tag, $this->exec );
2925+
2926+ $this->scanned_tags[] = $scanned_tag;
2927+
2928+ if ( $this->exec ) {
2929+ $func = $this->shortcode_tags[$tag]['function'];
2930+ return $m[1] . call_user_func( $func, $scanned_tag ) . $m[6];
2931+ } else {
2932+ return $m[0];
2933+ }
2934+ }
2935+
2936+ function shortcode_parse_atts( $text ) {
2937+ $atts = array( 'options' => array(), 'values' => array() );
2938+ $text = preg_replace( "/[\x{00a0}\x{200b}]+/u", " ", $text );
2939+ $text = stripcslashes( trim( $text ) );
2940+
2941+ $pattern = '%^([-+*=0-9a-zA-Z:.!?#$&@_/|\%\s]*?)((?:\s*"[^"]*"|\s*\'[^\']*\')*)$%';
2942+
2943+ if ( preg_match( $pattern, $text, $match ) ) {
2944+ if ( ! empty( $match[1] ) ) {
2945+ $atts['options'] = preg_split( '/[\s]+/', trim( $match[1] ) );
2946+ }
2947+ if ( ! empty( $match[2] ) ) {
2948+ preg_match_all( '/"[^"]*"|\'[^\']*\'/', $match[2], $matched_values );
2949+ $atts['values'] = wpcf7_strip_quote_deep( $matched_values[0] );
2950+ }
2951+ } else {
2952+ $atts = $text;
2953+ }
2954+
2955+ return $atts;
2956+ }
2957+
2958+}
2959+
2960+$wpcf7_shortcode_manager = new WPCF7_ShortcodeManager();
2961+
2962+function wpcf7_add_shortcode( $tag, $func, $has_name = false ) {
2963+ global $wpcf7_shortcode_manager;
2964+
2965+ return $wpcf7_shortcode_manager->add_shortcode( $tag, $func, $has_name );
2966+}
2967+
2968+function wpcf7_remove_shortcode( $tag ) {
2969+ global $wpcf7_shortcode_manager;
2970+
2971+ return $wpcf7_shortcode_manager->remove_shortcode( $tag );
2972+}
2973+
2974+function wpcf7_do_shortcode( $content ) {
2975+ global $wpcf7_shortcode_manager;
2976+
2977+ return $wpcf7_shortcode_manager->do_shortcode( $content );
2978+}
2979+
2980+function wpcf7_get_shortcode_regex() {
2981+ global $wpcf7_shortcode_manager;
2982+
2983+ return $wpcf7_shortcode_manager->get_shortcode_regex();
2984+}
2985+
2986+?>
2987\ No newline at end of file
2988
2989=== added file 'wp-content/plugins/contact-form-7/includes/taggenerator.php'
2990--- wp-content/plugins/contact-form-7/includes/taggenerator.php 1970-01-01 00:00:00 +0000
2991+++ wp-content/plugins/contact-form-7/includes/taggenerator.php 2011-02-18 16:15:41 +0000
2992@@ -0,0 +1,49 @@
2993+<?php
2994+
2995+function wpcf7_add_tag_generator( $name, $title, $elm_id, $callback, $options = array() ) {
2996+ global $wpcf7_tag_generators;
2997+
2998+ $name = trim( $name );
2999+ if ( '' == $name )
3000+ return false;
3001+
3002+ if ( ! is_array( $wpcf7_tag_generators ) )
3003+ $wpcf7_tag_generators = array();
3004+
3005+ $wpcf7_tag_generators[$name] = array(
3006+ 'title' => $title,
3007+ 'content' => $elm_id,
3008+ 'options' => $options );
3009+
3010+ if ( is_callable( $callback ) )
3011+ add_action( 'wpcf7_admin_footer', $callback );
3012+
3013+ return true;
3014+}
3015+
3016+function wpcf7_print_tag_generators() {
3017+ global $wpcf7_tag_generators;
3018+
3019+ $output = array();
3020+
3021+ foreach ( (array) $wpcf7_tag_generators as $name => $tg ) {
3022+ $pane = " " . esc_js( $name ) . ": { ";
3023+ $pane .= "title: '" . esc_js( $tg['title'] ) . "'";
3024+ $pane .= ", content: '" . esc_js( $tg['content'] ) . "'";
3025+
3026+ foreach ( (array) $tg['options'] as $option_name => $option_value ) {
3027+ if ( is_int( $option_value ) )
3028+ $pane .= ", $option_name: $option_value";
3029+ else
3030+ $pane .= ", $option_name: '" . esc_js( $option_value ) . "'";
3031+ }
3032+
3033+ $pane .= " }";
3034+
3035+ $output[] = $pane;
3036+ }
3037+
3038+ echo implode( ",\n", $output ) . "\n";
3039+}
3040+
3041+?>
3042\ No newline at end of file
3043
3044=== added file 'wp-content/plugins/contact-form-7/jquery.form.js'
3045--- wp-content/plugins/contact-form-7/jquery.form.js 1970-01-01 00:00:00 +0000
3046+++ wp-content/plugins/contact-form-7/jquery.form.js 2011-02-18 16:15:41 +0000
3047@@ -0,0 +1,791 @@
3048+/*!
3049+ * jQuery Form Plugin
3050+ * version: 2.52 (07-DEC-2010)
3051+ * @requires jQuery v1.3.2 or later
3052+ *
3053+ * Examples and documentation at: http://malsup.com/jquery/form/
3054+ * Dual licensed under the MIT and GPL licenses:
3055+ * http://www.opensource.org/licenses/mit-license.php
3056+ * http://www.gnu.org/licenses/gpl.html
3057+ */
3058+;(function($) {
3059+
3060+/*
3061+ Usage Note:
3062+ -----------
3063+ Do not use both ajaxSubmit and ajaxForm on the same form. These
3064+ functions are intended to be exclusive. Use ajaxSubmit if you want
3065+ to bind your own submit handler to the form. For example,
3066+
3067+ $(document).ready(function() {
3068+ $('#myForm').bind('submit', function(e) {
3069+ e.preventDefault(); // <-- important
3070+ $(this).ajaxSubmit({
3071+ target: '#output'
3072+ });
3073+ });
3074+ });
3075+
3076+ Use ajaxForm when you want the plugin to manage all the event binding
3077+ for you. For example,
3078+
3079+ $(document).ready(function() {
3080+ $('#myForm').ajaxForm({
3081+ target: '#output'
3082+ });
3083+ });
3084+
3085+ When using ajaxForm, the ajaxSubmit function will be invoked for you
3086+ at the appropriate time.
3087+*/
3088+
3089+/**
3090+ * ajaxSubmit() provides a mechanism for immediately submitting
3091+ * an HTML form using AJAX.
3092+ */
3093+$.fn.ajaxSubmit = function(options) {
3094+ // fast fail if nothing selected (http://dev.jquery.com/ticket/2752)
3095+ if (!this.length) {
3096+ log('ajaxSubmit: skipping submit process - no element selected');
3097+ return this;
3098+ }
3099+
3100+ if (typeof options == 'function') {
3101+ options = { success: options };
3102+ }
3103+
3104+ var action = this.attr('action');
3105+ var url = (typeof action === 'string') ? $.trim(action) : '';
3106+ if (url) {
3107+ // clean url (don't include hash vaue)
3108+ url = (url.match(/^([^#]+)/)||[])[1];
3109+ }
3110+ url = url || window.location.href || '';
3111+
3112+ options = $.extend(true, {
3113+ url: url,
3114+ type: this.attr('method') || 'GET',
3115+ iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank'
3116+ }, options);
3117+
3118+ // hook for manipulating the form data before it is extracted;
3119+ // convenient for use with rich editors like tinyMCE or FCKEditor
3120+ var veto = {};
3121+ this.trigger('form-pre-serialize', [this, options, veto]);
3122+ if (veto.veto) {
3123+ log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
3124+ return this;
3125+ }
3126+
3127+ // provide opportunity to alter form data before it is serialized
3128+ if (options.beforeSerialize && options.beforeSerialize(this, options) === false) {
3129+ log('ajaxSubmit: submit aborted via beforeSerialize callback');
3130+ return this;
3131+ }
3132+
3133+ var n,v,a = this.formToArray(options.semantic);
3134+ if (options.data) {
3135+ options.extraData = options.data;
3136+ for (n in options.data) {
3137+ if(options.data[n] instanceof Array) {
3138+ for (var k in options.data[n]) {
3139+ a.push( { name: n, value: options.data[n][k] } );
3140+ }
3141+ }
3142+ else {
3143+ v = options.data[n];
3144+ v = $.isFunction(v) ? v() : v; // if value is fn, invoke it
3145+ a.push( { name: n, value: v } );
3146+ }
3147+ }
3148+ }
3149+
3150+ // give pre-submit callback an opportunity to abort the submit
3151+ if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) {
3152+ log('ajaxSubmit: submit aborted via beforeSubmit callback');
3153+ return this;
3154+ }
3155+
3156+ // fire vetoable 'validate' event
3157+ this.trigger('form-submit-validate', [a, this, options, veto]);
3158+ if (veto.veto) {
3159+ log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
3160+ return this;
3161+ }
3162+
3163+ var q = $.param(a);
3164+
3165+ if (options.type.toUpperCase() == 'GET') {
3166+ options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q;
3167+ options.data = null; // data is null for 'get'
3168+ }
3169+ else {
3170+ options.data = q; // data is the query string for 'post'
3171+ }
3172+
3173+ var $form = this, callbacks = [];
3174+ if (options.resetForm) {
3175+ callbacks.push(function() { $form.resetForm(); });
3176+ }
3177+ if (options.clearForm) {
3178+ callbacks.push(function() { $form.clearForm(); });
3179+ }
3180+
3181+ // perform a load on the target only if dataType is not provided
3182+ if (!options.dataType && options.target) {
3183+ var oldSuccess = options.success || function(){};
3184+ callbacks.push(function(data) {
3185+ var fn = options.replaceTarget ? 'replaceWith' : 'html';
3186+ $(options.target)[fn](data).each(oldSuccess, arguments);
3187+ });
3188+ }
3189+ else if (options.success) {
3190+ callbacks.push(options.success);
3191+ }
3192+
3193+ options.success = function(data, status, xhr) { // jQuery 1.4+ passes xhr as 3rd arg
3194+ var context = options.context || options; // jQuery 1.4+ supports scope context
3195+ for (var i=0, max=callbacks.length; i < max; i++) {
3196+ callbacks[i].apply(context, [data, status, xhr || $form, $form]);
3197+ }
3198+ };
3199+
3200+ // are there files to upload?
3201+ var fileInputs = $('input:file', this).length > 0;
3202+ var mp = 'multipart/form-data';
3203+ var multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp);
3204+
3205+ // options.iframe allows user to force iframe mode
3206+ // 06-NOV-09: now defaulting to iframe mode if file input is detected
3207+ if (options.iframe !== false && (fileInputs || options.iframe || multipart)) {
3208+ // hack to fix Safari hang (thanks to Tim Molendijk for this)
3209+ // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d
3210+ if (options.closeKeepAlive) {
3211+ $.get(options.closeKeepAlive, fileUpload);
3212+ }
3213+ else {
3214+ fileUpload();
3215+ }
3216+ }
3217+ else {
3218+ $.ajax(options);
3219+ }
3220+
3221+ // fire 'notify' event
3222+ this.trigger('form-submit-notify', [this, options]);
3223+ return this;
3224+
3225+
3226+ // private function for handling file uploads (hat tip to YAHOO!)
3227+ function fileUpload() {
3228+ var form = $form[0];
3229+
3230+ if ($(':input[name=submit],:input[id=submit]', form).length) {
3231+ // if there is an input with a name or id of 'submit' then we won't be
3232+ // able to invoke the submit fn on the form (at least not x-browser)
3233+ alert('Error: Form elements must not have name or id of "submit".');
3234+ return;
3235+ }
3236+
3237+ var s = $.extend(true, {}, $.ajaxSettings, options);
3238+ s.context = s.context || s;
3239+ var id = 'jqFormIO' + (new Date().getTime()), fn = '_'+id;
3240+ window[fn] = function() {
3241+ var f = $io.data('form-plugin-onload');
3242+ if (f) {
3243+ f();
3244+ window[fn] = undefined;
3245+ try { delete window[fn]; } catch(e){}
3246+ }
3247+ }
3248+ var $io = $('<iframe id="' + id + '" name="' + id + '" src="'+ s.iframeSrc +'" onload="window[\'_\'+this.id]()" />');
3249+ var io = $io[0];
3250+
3251+ $io.css({ position: 'absolute', top: '-1000px', left: '-1000px' });
3252+
3253+ var xhr = { // mock object
3254+ aborted: 0,
3255+ responseText: null,
3256+ responseXML: null,
3257+ status: 0,
3258+ statusText: 'n/a',
3259+ getAllResponseHeaders: function() {},
3260+ getResponseHeader: function() {},
3261+ setRequestHeader: function() {},
3262+ abort: function() {
3263+ this.aborted = 1;
3264+ $io.attr('src', s.iframeSrc); // abort op in progress
3265+ }
3266+ };
3267+
3268+ var g = s.global;
3269+ // trigger ajax global events so that activity/block indicators work like normal
3270+ if (g && ! $.active++) {
3271+ $.event.trigger("ajaxStart");
3272+ }
3273+ if (g) {
3274+ $.event.trigger("ajaxSend", [xhr, s]);
3275+ }
3276+
3277+ if (s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false) {
3278+ if (s.global) {
3279+ $.active--;
3280+ }
3281+ return;
3282+ }
3283+ if (xhr.aborted) {
3284+ return;
3285+ }
3286+
3287+ var cbInvoked = false;
3288+ var timedOut = 0;
3289+
3290+ // add submitting element to data if we know it
3291+ var sub = form.clk;
3292+ if (sub) {
3293+ var n = sub.name;
3294+ if (n && !sub.disabled) {
3295+ s.extraData = s.extraData || {};
3296+ s.extraData[n] = sub.value;
3297+ if (sub.type == "image") {
3298+ s.extraData[n+'.x'] = form.clk_x;
3299+ s.extraData[n+'.y'] = form.clk_y;
3300+ }
3301+ }
3302+ }
3303+
3304+ // take a breath so that pending repaints get some cpu time before the upload starts
3305+ function doSubmit() {
3306+ // make sure form attrs are set
3307+ var t = $form.attr('target'), a = $form.attr('action');
3308+
3309+ // update form attrs in IE friendly way
3310+ form.setAttribute('target',id);
3311+ if (form.getAttribute('method') != 'POST') {
3312+ form.setAttribute('method', 'POST');
3313+ }
3314+ if (form.getAttribute('action') != s.url) {
3315+ form.setAttribute('action', s.url);
3316+ }
3317+
3318+ // ie borks in some cases when setting encoding
3319+ if (! s.skipEncodingOverride) {
3320+ $form.attr({
3321+ encoding: 'multipart/form-data',
3322+ enctype: 'multipart/form-data'
3323+ });
3324+ }
3325+
3326+ // support timout
3327+ if (s.timeout) {
3328+ setTimeout(function() { timedOut = true; cb(); }, s.timeout);
3329+ }
3330+
3331+ // add "extra" data to form if provided in options
3332+ var extraInputs = [];
3333+ try {
3334+ if (s.extraData) {
3335+ for (var n in s.extraData) {
3336+ extraInputs.push(
3337+ $('<input type="hidden" name="'+n+'" value="'+s.extraData[n]+'" />')
3338+ .appendTo(form)[0]);
3339+ }
3340+ }
3341+
3342+ // add iframe to doc and submit the form
3343+ $io.appendTo('body');
3344+ $io.data('form-plugin-onload', cb);
3345+ form.submit();
3346+ }
3347+ finally {
3348+ // reset attrs and remove "extra" input elements
3349+ form.setAttribute('action',a);
3350+ if(t) {
3351+ form.setAttribute('target', t);
3352+ } else {
3353+ $form.removeAttr('target');
3354+ }
3355+ $(extraInputs).remove();
3356+ }
3357+ }
3358+
3359+ if (s.forceSync) {
3360+ doSubmit();
3361+ }
3362+ else {
3363+ setTimeout(doSubmit, 10); // this lets dom updates render
3364+ }
3365+
3366+ var data, doc, domCheckCount = 50;
3367+
3368+ function cb() {
3369+ if (cbInvoked) {
3370+ return;
3371+ }
3372+
3373+ $io.removeData('form-plugin-onload');
3374+
3375+ var ok = true;
3376+ try {
3377+ if (timedOut) {
3378+ throw 'timeout';
3379+ }
3380+ // extract the server response from the iframe
3381+ doc = io.contentWindow ? io.contentWindow.document : io.contentDocument ? io.contentDocument : io.document;
3382+
3383+ var isXml = s.dataType == 'xml' || doc.XMLDocument || $.isXMLDoc(doc);
3384+ log('isXml='+isXml);
3385+ if (!isXml && window.opera && (doc.body == null || doc.body.innerHTML == '')) {
3386+ if (--domCheckCount) {
3387+ // in some browsers (Opera) the iframe DOM is not always traversable when
3388+ // the onload callback fires, so we loop a bit to accommodate
3389+ log('requeing onLoad callback, DOM not available');
3390+ setTimeout(cb, 250);
3391+ return;
3392+ }
3393+ // let this fall through because server response could be an empty document
3394+ //log('Could not access iframe DOM after mutiple tries.');
3395+ //throw 'DOMException: not available';
3396+ }
3397+
3398+ //log('response detected');
3399+ cbInvoked = true;
3400+ xhr.responseText = doc.documentElement ? doc.documentElement.innerHTML : null;
3401+ xhr.responseXML = doc.XMLDocument ? doc.XMLDocument : doc;
3402+ xhr.getResponseHeader = function(header){
3403+ var headers = {'content-type': s.dataType};
3404+ return headers[header];
3405+ };
3406+
3407+ var scr = /(json|script)/.test(s.dataType);
3408+ if (scr || s.textarea) {
3409+ // see if user embedded response in textarea
3410+ var ta = doc.getElementsByTagName('textarea')[0];
3411+ if (ta) {
3412+ xhr.responseText = ta.value;
3413+ }
3414+ else if (scr) {
3415+ // account for browsers injecting pre around json response
3416+ var pre = doc.getElementsByTagName('pre')[0];
3417+ var b = doc.getElementsByTagName('body')[0];
3418+ if (pre) {
3419+ xhr.responseText = pre.textContent;
3420+ }
3421+ else if (b) {
3422+ xhr.responseText = b.innerHTML;
3423+ }
3424+ }
3425+ }
3426+ else if (s.dataType == 'xml' && !xhr.responseXML && xhr.responseText != null) {
3427+ xhr.responseXML = toXml(xhr.responseText);
3428+ }
3429+ data = $.httpData(xhr, s.dataType);
3430+ }
3431+ catch(e){
3432+ log('error caught:',e);
3433+ ok = false;
3434+ xhr.error = e;
3435+ $.handleError(s, xhr, 'error', e);
3436+ }
3437+
3438+ if (xhr.aborted) {
3439+ log('upload aborted');
3440+ ok = false;
3441+ }
3442+
3443+ // ordering of these callbacks/triggers is odd, but that's how $.ajax does it
3444+ if (ok) {
3445+ s.success.call(s.context, data, 'success', xhr);
3446+ if (g) {
3447+ $.event.trigger("ajaxSuccess", [xhr, s]);
3448+ }
3449+ }
3450+ if (g) {
3451+ $.event.trigger("ajaxComplete", [xhr, s]);
3452+ }
3453+ if (g && ! --$.active) {
3454+ $.event.trigger("ajaxStop");
3455+ }
3456+ if (s.complete) {
3457+ s.complete.call(s.context, xhr, ok ? 'success' : 'error');
3458+ }
3459+
3460+ // clean up
3461+ setTimeout(function() {
3462+ $io.removeData('form-plugin-onload');
3463+ $io.remove();
3464+ xhr.responseXML = null;
3465+ }, 100);
3466+ }
3467+
3468+ function toXml(s, doc) {
3469+ if (window.ActiveXObject) {
3470+ doc = new ActiveXObject('Microsoft.XMLDOM');
3471+ doc.async = 'false';
3472+ doc.loadXML(s);
3473+ }
3474+ else {
3475+ doc = (new DOMParser()).parseFromString(s, 'text/xml');
3476+ }
3477+ return (doc && doc.documentElement && doc.documentElement.tagName != 'parsererror') ? doc : null;
3478+ }
3479+ }
3480+};
3481+
3482+/**
3483+ * ajaxForm() provides a mechanism for fully automating form submission.
3484+ *
3485+ * The advantages of using this method instead of ajaxSubmit() are:
3486+ *
3487+ * 1: This method will include coordinates for <input type="image" /> elements (if the element
3488+ * is used to submit the form).
3489+ * 2. This method will include the submit element's name/value data (for the element that was
3490+ * used to submit the form).
3491+ * 3. This method binds the submit() method to the form for you.
3492+ *
3493+ * The options argument for ajaxForm works exactly as it does for ajaxSubmit. ajaxForm merely
3494+ * passes the options argument along after properly binding events for submit elements and
3495+ * the form itself.
3496+ */
3497+$.fn.ajaxForm = function(options) {
3498+ // in jQuery 1.3+ we can fix mistakes with the ready state
3499+ if (this.length === 0) {
3500+ var o = { s: this.selector, c: this.context };
3501+ if (!$.isReady && o.s) {
3502+ log('DOM not ready, queuing ajaxForm');
3503+ $(function() {
3504+ $(o.s,o.c).ajaxForm(options);
3505+ });
3506+ return this;
3507+ }
3508+ // is your DOM ready? http://docs.jquery.com/Tutorials:Introducing_$(document).ready()
3509+ log('terminating; zero elements found by selector' + ($.isReady ? '' : ' (DOM not ready)'));
3510+ return this;
3511+ }
3512+
3513+ return this.ajaxFormUnbind().bind('submit.form-plugin', function(e) {
3514+ if (!e.isDefaultPrevented()) { // if event has been canceled, don't proceed
3515+ e.preventDefault();
3516+ $(this).ajaxSubmit(options);
3517+ }
3518+ }).bind('click.form-plugin', function(e) {
3519+ var target = e.target;
3520+ var $el = $(target);
3521+ if (!($el.is(":submit,input:image"))) {
3522+ // is this a child element of the submit el? (ex: a span within a button)
3523+ var t = $el.closest(':submit');
3524+ if (t.length == 0) {
3525+ return;
3526+ }
3527+ target = t[0];
3528+ }
3529+ var form = this;
3530+ form.clk = target;
3531+ if (target.type == 'image') {
3532+ if (e.offsetX != undefined) {
3533+ form.clk_x = e.offsetX;
3534+ form.clk_y = e.offsetY;
3535+ } else if (typeof $.fn.offset == 'function') { // try to use dimensions plugin
3536+ var offset = $el.offset();
3537+ form.clk_x = e.pageX - offset.left;
3538+ form.clk_y = e.pageY - offset.top;
3539+ } else {
3540+ form.clk_x = e.pageX - target.offsetLeft;
3541+ form.clk_y = e.pageY - target.offsetTop;
3542+ }
3543+ }
3544+ // clear form vars
3545+ setTimeout(function() { form.clk = form.clk_x = form.clk_y = null; }, 100);
3546+ });
3547+};
3548+
3549+// ajaxFormUnbind unbinds the event handlers that were bound by ajaxForm
3550+$.fn.ajaxFormUnbind = function() {
3551+ return this.unbind('submit.form-plugin click.form-plugin');
3552+};
3553+
3554+/**
3555+ * formToArray() gathers form element data into an array of objects that can
3556+ * be passed to any of the following ajax functions: $.get, $.post, or load.
3557+ * Each object in the array has both a 'name' and 'value' property. An example of
3558+ * an array for a simple login form might be:
3559+ *
3560+ * [ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ]
3561+ *
3562+ * It is this array that is passed to pre-submit callback functions provided to the
3563+ * ajaxSubmit() and ajaxForm() methods.
3564+ */
3565+$.fn.formToArray = function(semantic) {
3566+ var a = [];
3567+ if (this.length === 0) {
3568+ return a;
3569+ }
3570+
3571+ var form = this[0];
3572+ var els = semantic ? form.getElementsByTagName('*') : form.elements;
3573+ if (!els) {
3574+ return a;
3575+ }
3576+
3577+ var i,j,n,v,el,max,jmax;
3578+ for(i=0, max=els.length; i < max; i++) {
3579+ el = els[i];
3580+ n = el.name;
3581+ if (!n) {
3582+ continue;
3583+ }
3584+
3585+ if (semantic && form.clk && el.type == "image") {
3586+ // handle image inputs on the fly when semantic == true
3587+ if(!el.disabled && form.clk == el) {
3588+ a.push({name: n, value: $(el).val()});
3589+ a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
3590+ }
3591+ continue;
3592+ }
3593+
3594+ v = $.fieldValue(el, true);
3595+ if (v && v.constructor == Array) {
3596+ for(j=0, jmax=v.length; j < jmax; j++) {
3597+ a.push({name: n, value: v[j]});
3598+ }
3599+ }
3600+ else if (v !== null && typeof v != 'undefined') {
3601+ a.push({name: n, value: v});
3602+ }
3603+ }
3604+
3605+ if (!semantic && form.clk) {
3606+ // input type=='image' are not found in elements array! handle it here
3607+ var $input = $(form.clk), input = $input[0];
3608+ n = input.name;
3609+ if (n && !input.disabled && input.type == 'image') {
3610+ a.push({name: n, value: $input.val()});
3611+ a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
3612+ }
3613+ }
3614+ return a;
3615+};
3616+
3617+/**
3618+ * Serializes form data into a 'submittable' string. This method will return a string
3619+ * in the format: name1=value1&amp;name2=value2
3620+ */
3621+$.fn.formSerialize = function(semantic) {
3622+ //hand off to jQuery.param for proper encoding
3623+ return $.param(this.formToArray(semantic));
3624+};
3625+
3626+/**
3627+ * Serializes all field elements in the jQuery object into a query string.
3628+ * This method will return a string in the format: name1=value1&amp;name2=value2
3629+ */
3630+$.fn.fieldSerialize = function(successful) {
3631+ var a = [];
3632+ this.each(function() {
3633+ var n = this.name;
3634+ if (!n) {
3635+ return;
3636+ }
3637+ var v = $.fieldValue(this, successful);
3638+ if (v && v.constructor == Array) {
3639+ for (var i=0,max=v.length; i < max; i++) {
3640+ a.push({name: n, value: v[i]});
3641+ }
3642+ }
3643+ else if (v !== null && typeof v != 'undefined') {
3644+ a.push({name: this.name, value: v});
3645+ }
3646+ });
3647+ //hand off to jQuery.param for proper encoding
3648+ return $.param(a);
3649+};
3650+
3651+/**
3652+ * Returns the value(s) of the element in the matched set. For example, consider the following form:
3653+ *
3654+ * <form><fieldset>
3655+ * <input name="A" type="text" />
3656+ * <input name="A" type="text" />
3657+ * <input name="B" type="checkbox" value="B1" />
3658+ * <input name="B" type="checkbox" value="B2"/>
3659+ * <input name="C" type="radio" value="C1" />
3660+ * <input name="C" type="radio" value="C2" />
3661+ * </fieldset></form>
3662+ *
3663+ * var v = $(':text').fieldValue();
3664+ * // if no values are entered into the text inputs
3665+ * v == ['','']
3666+ * // if values entered into the text inputs are 'foo' and 'bar'
3667+ * v == ['foo','bar']
3668+ *
3669+ * var v = $(':checkbox').fieldValue();
3670+ * // if neither checkbox is checked
3671+ * v === undefined
3672+ * // if both checkboxes are checked
3673+ * v == ['B1', 'B2']
3674+ *
3675+ * var v = $(':radio').fieldValue();
3676+ * // if neither radio is checked
3677+ * v === undefined
3678+ * // if first radio is checked
3679+ * v == ['C1']
3680+ *
3681+ * The successful argument controls whether or not the field element must be 'successful'
3682+ * (per http://www.w3.org/TR/html4/interact/forms.html#successful-controls).
3683+ * The default value of the successful argument is true. If this value is false the value(s)
3684+ * for each element is returned.
3685+ *
3686+ * Note: This method *always* returns an array. If no valid value can be determined the
3687+ * array will be empty, otherwise it will contain one or more values.
3688+ */
3689+$.fn.fieldValue = function(successful) {
3690+ for (var val=[], i=0, max=this.length; i < max; i++) {
3691+ var el = this[i];
3692+ var v = $.fieldValue(el, successful);
3693+ if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length)) {
3694+ continue;
3695+ }
3696+ v.constructor == Array ? $.merge(val, v) : val.push(v);
3697+ }
3698+ return val;
3699+};
3700+
3701+/**
3702+ * Returns the value of the field element.
3703+ */
3704+$.fieldValue = function(el, successful) {
3705+ var n = el.name, t = el.type, tag = el.tagName.toLowerCase();
3706+ if (successful === undefined) {
3707+ successful = true;
3708+ }
3709+
3710+ if (successful && (!n || el.disabled || t == 'reset' || t == 'button' ||
3711+ (t == 'checkbox' || t == 'radio') && !el.checked ||
3712+ (t == 'submit' || t == 'image') && el.form && el.form.clk != el ||
3713+ tag == 'select' && el.selectedIndex == -1)) {
3714+ return null;
3715+ }
3716+
3717+ if (tag == 'select') {
3718+ var index = el.selectedIndex;
3719+ if (index < 0) {
3720+ return null;
3721+ }
3722+ var a = [], ops = el.options;
3723+ var one = (t == 'select-one');
3724+ var max = (one ? index+1 : ops.length);
3725+ for(var i=(one ? index : 0); i < max; i++) {
3726+ var op = ops[i];
3727+ if (op.selected) {
3728+ var v = op.value;
3729+ if (!v) { // extra pain for IE...
3730+ v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value;
3731+ }
3732+ if (one) {
3733+ return v;
3734+ }
3735+ a.push(v);
3736+ }
3737+ }
3738+ return a;
3739+ }
3740+ return $(el).val();
3741+};
3742+
3743+/**
3744+ * Clears the form data. Takes the following actions on the form's input fields:
3745+ * - input text fields will have their 'value' property set to the empty string
3746+ * - select elements will have their 'selectedIndex' property set to -1
3747+ * - checkbox and radio inputs will have their 'checked' property set to false
3748+ * - inputs of type submit, button, reset, and hidden will *not* be effected
3749+ * - button elements will *not* be effected
3750+ */
3751+$.fn.clearForm = function() {
3752+ return this.each(function() {
3753+ $('input,select,textarea', this).clearFields();
3754+ });
3755+};
3756+
3757+/**
3758+ * Clears the selected form elements.
3759+ */
3760+$.fn.clearFields = $.fn.clearInputs = function() {
3761+ return this.each(function() {
3762+ var t = this.type, tag = this.tagName.toLowerCase();
3763+ if (t == 'text' || t == 'password' || tag == 'textarea') {
3764+ this.value = '';
3765+ }
3766+ else if (t == 'checkbox' || t == 'radio') {
3767+ this.checked = false;
3768+ }
3769+ else if (tag == 'select') {
3770+ this.selectedIndex = -1;
3771+ }
3772+ });
3773+};
3774+
3775+/**
3776+ * Resets the form data. Causes all form elements to be reset to their original value.
3777+ */
3778+$.fn.resetForm = function() {
3779+ return this.each(function() {
3780+ // guard against an input with the name of 'reset'
3781+ // note that IE reports the reset function as an 'object'
3782+ if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType)) {
3783+ this.reset();
3784+ }
3785+ });
3786+};
3787+
3788+/**
3789+ * Enables or disables any matching elements.
3790+ */
3791+$.fn.enable = function(b) {
3792+ if (b === undefined) {
3793+ b = true;
3794+ }
3795+ return this.each(function() {
3796+ this.disabled = !b;
3797+ });
3798+};
3799+
3800+/**
3801+ * Checks/unchecks any matching checkboxes or radio buttons and
3802+ * selects/deselects and matching option elements.
3803+ */
3804+$.fn.selected = function(select) {
3805+ if (select === undefined) {
3806+ select = true;
3807+ }
3808+ return this.each(function() {
3809+ var t = this.type;
3810+ if (t == 'checkbox' || t == 'radio') {
3811+ this.checked = select;
3812+ }
3813+ else if (this.tagName.toLowerCase() == 'option') {
3814+ var $sel = $(this).parent('select');
3815+ if (select && $sel[0] && $sel[0].type == 'select-one') {
3816+ // deselect all other options
3817+ $sel.find('option').selected(false);
3818+ }
3819+ this.selected = select;
3820+ }
3821+ });
3822+};
3823+
3824+// helper fn for console logging
3825+// set $.fn.ajaxSubmit.debug to true to enable debug logging
3826+function log() {
3827+ if ($.fn.ajaxSubmit.debug) {
3828+ var msg = '[jquery.form] ' + Array.prototype.join.call(arguments,'');
3829+ if (window.console && window.console.log) {
3830+ window.console.log(msg);
3831+ }
3832+ else if (window.opera && window.opera.postError) {
3833+ window.opera.postError(msg);
3834+ }
3835+ }
3836+};
3837+
3838+})(jQuery);
3839
3840=== added directory 'wp-content/plugins/contact-form-7/languages'
3841=== added file 'wp-content/plugins/contact-form-7/languages/readme.txt'
3842--- wp-content/plugins/contact-form-7/languages/readme.txt 1970-01-01 00:00:00 +0000
3843+++ wp-content/plugins/contact-form-7/languages/readme.txt 2011-02-18 16:15:41 +0000
3844@@ -0,0 +1,9 @@
3845+== For Translators ==
3846+
3847+Note: this folder contains MO files and POT file only. If you are looking for PO file, you can download it from here:
3848+
3849+http://plugins.svn.wordpress.org/contact-form-7/branches/languages/
3850+
3851+If you have created your own translation, or have an update of an existing one, please send it to Takayuki Miyoshi <takayukister@gmail.com> so that I can bundle it into the next release of Contact Form 7.
3852+
3853+Thank you.
3854\ No newline at end of file
3855
3856=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-af.mo'
3857Binary files wp-content/plugins/contact-form-7/languages/wpcf7-af.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-af.mo 2011-02-18 16:15:41 +0000 differ
3858=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ar.mo'
3859Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ar.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ar.mo 2011-02-18 16:15:41 +0000 differ
3860=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-bg_BG.mo'
3861Binary files wp-content/plugins/contact-form-7/languages/wpcf7-bg_BG.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-bg_BG.mo 2011-02-18 16:15:41 +0000 differ
3862=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-bn_BD.mo'
3863Binary files wp-content/plugins/contact-form-7/languages/wpcf7-bn_BD.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-bn_BD.mo 2011-02-18 16:15:41 +0000 differ
3864=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-bs.mo'
3865Binary files wp-content/plugins/contact-form-7/languages/wpcf7-bs.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-bs.mo 2011-02-18 16:15:41 +0000 differ
3866=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ca.mo'
3867Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ca.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ca.mo 2011-02-18 16:15:41 +0000 differ
3868=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-cs_CZ.mo'
3869Binary files wp-content/plugins/contact-form-7/languages/wpcf7-cs_CZ.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-cs_CZ.mo 2011-02-18 16:15:41 +0000 differ
3870=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-da_DK.mo'
3871Binary files wp-content/plugins/contact-form-7/languages/wpcf7-da_DK.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-da_DK.mo 2011-02-18 16:15:41 +0000 differ
3872=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-de_DE.mo'
3873Binary files wp-content/plugins/contact-form-7/languages/wpcf7-de_DE.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-de_DE.mo 2011-02-18 16:15:41 +0000 differ
3874=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-el.mo'
3875Binary files wp-content/plugins/contact-form-7/languages/wpcf7-el.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-el.mo 2011-02-18 16:15:41 +0000 differ
3876=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-es_ES.mo'
3877Binary files wp-content/plugins/contact-form-7/languages/wpcf7-es_ES.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-es_ES.mo 2011-02-18 16:15:41 +0000 differ
3878=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-et.mo'
3879Binary files wp-content/plugins/contact-form-7/languages/wpcf7-et.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-et.mo 2011-02-18 16:15:41 +0000 differ
3880=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-fa_IR.mo'
3881Binary files wp-content/plugins/contact-form-7/languages/wpcf7-fa_IR.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-fa_IR.mo 2011-02-18 16:15:41 +0000 differ
3882=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-fi.mo'
3883Binary files wp-content/plugins/contact-form-7/languages/wpcf7-fi.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-fi.mo 2011-02-18 16:15:41 +0000 differ
3884=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-fr_FR.mo'
3885Binary files wp-content/plugins/contact-form-7/languages/wpcf7-fr_FR.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-fr_FR.mo 2011-02-18 16:15:41 +0000 differ
3886=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-gl_ES.mo'
3887Binary files wp-content/plugins/contact-form-7/languages/wpcf7-gl_ES.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-gl_ES.mo 2011-02-18 16:15:41 +0000 differ
3888=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-he_IL.mo'
3889Binary files wp-content/plugins/contact-form-7/languages/wpcf7-he_IL.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-he_IL.mo 2011-02-18 16:15:41 +0000 differ
3890=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-hi_IN.mo'
3891Binary files wp-content/plugins/contact-form-7/languages/wpcf7-hi_IN.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-hi_IN.mo 2011-02-18 16:15:41 +0000 differ
3892=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-hr.mo'
3893Binary files wp-content/plugins/contact-form-7/languages/wpcf7-hr.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-hr.mo 2011-02-18 16:15:41 +0000 differ
3894=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-hu_HU.mo'
3895Binary files wp-content/plugins/contact-form-7/languages/wpcf7-hu_HU.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-hu_HU.mo 2011-02-18 16:15:41 +0000 differ
3896=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-hy_AM.mo'
3897Binary files wp-content/plugins/contact-form-7/languages/wpcf7-hy_AM.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-hy_AM.mo 2011-02-18 16:15:41 +0000 differ
3898=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-id_ID.mo'
3899Binary files wp-content/plugins/contact-form-7/languages/wpcf7-id_ID.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-id_ID.mo 2011-02-18 16:15:41 +0000 differ
3900=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-it_IT.mo'
3901Binary files wp-content/plugins/contact-form-7/languages/wpcf7-it_IT.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-it_IT.mo 2011-02-18 16:15:41 +0000 differ
3902=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ja.mo'
3903Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ja.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ja.mo 2011-02-18 16:15:41 +0000 differ
3904=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ka_GE.mo'
3905Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ka_GE.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ka_GE.mo 2011-02-18 16:15:41 +0000 differ
3906=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ko_KR.mo'
3907Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ko_KR.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ko_KR.mo 2011-02-18 16:15:41 +0000 differ
3908=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-lt_LT.mo'
3909Binary files wp-content/plugins/contact-form-7/languages/wpcf7-lt_LT.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-lt_LT.mo 2011-02-18 16:15:41 +0000 differ
3910=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-lv.mo'
3911Binary files wp-content/plugins/contact-form-7/languages/wpcf7-lv.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-lv.mo 2011-02-18 16:15:41 +0000 differ
3912=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-mk_MK.mo'
3913Binary files wp-content/plugins/contact-form-7/languages/wpcf7-mk_MK.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-mk_MK.mo 2011-02-18 16:15:41 +0000 differ
3914=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ml_IN.mo'
3915Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ml_IN.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ml_IN.mo 2011-02-18 16:15:41 +0000 differ
3916=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ms_MY.mo'
3917Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ms_MY.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ms_MY.mo 2011-02-18 16:15:41 +0000 differ
3918=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-nb_NO.mo'
3919Binary files wp-content/plugins/contact-form-7/languages/wpcf7-nb_NO.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-nb_NO.mo 2011-02-18 16:15:41 +0000 differ
3920=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-nl_NL.mo'
3921Binary files wp-content/plugins/contact-form-7/languages/wpcf7-nl_NL.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-nl_NL.mo 2011-02-18 16:15:41 +0000 differ
3922=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-pl_PL.mo'
3923Binary files wp-content/plugins/contact-form-7/languages/wpcf7-pl_PL.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-pl_PL.mo 2011-02-18 16:15:41 +0000 differ
3924=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-pt_BR.mo'
3925Binary files wp-content/plugins/contact-form-7/languages/wpcf7-pt_BR.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-pt_BR.mo 2011-02-18 16:15:41 +0000 differ
3926=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-pt_PT.mo'
3927Binary files wp-content/plugins/contact-form-7/languages/wpcf7-pt_PT.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-pt_PT.mo 2011-02-18 16:15:41 +0000 differ
3928=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ro_RO.mo'
3929Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ro_RO.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ro_RO.mo 2011-02-18 16:15:41 +0000 differ
3930=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ru_RU.mo'
3931Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ru_RU.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ru_RU.mo 2011-02-18 16:15:41 +0000 differ
3932=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-sk.mo'
3933Binary files wp-content/plugins/contact-form-7/languages/wpcf7-sk.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-sk.mo 2011-02-18 16:15:41 +0000 differ
3934=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-sl_SI.mo'
3935Binary files wp-content/plugins/contact-form-7/languages/wpcf7-sl_SI.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-sl_SI.mo 2011-02-18 16:15:41 +0000 differ
3936=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-sq.mo'
3937Binary files wp-content/plugins/contact-form-7/languages/wpcf7-sq.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-sq.mo 2011-02-18 16:15:41 +0000 differ
3938=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-sr_RS.mo'
3939Binary files wp-content/plugins/contact-form-7/languages/wpcf7-sr_RS.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-sr_RS.mo 2011-02-18 16:15:41 +0000 differ
3940=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-sv_SE.mo'
3941Binary files wp-content/plugins/contact-form-7/languages/wpcf7-sv_SE.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-sv_SE.mo 2011-02-18 16:15:41 +0000 differ
3942=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-ta.mo'
3943Binary files wp-content/plugins/contact-form-7/languages/wpcf7-ta.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-ta.mo 2011-02-18 16:15:41 +0000 differ
3944=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-th.mo'
3945Binary files wp-content/plugins/contact-form-7/languages/wpcf7-th.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-th.mo 2011-02-18 16:15:41 +0000 differ
3946=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-tr_TR.mo'
3947Binary files wp-content/plugins/contact-form-7/languages/wpcf7-tr_TR.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-tr_TR.mo 2011-02-18 16:15:41 +0000 differ
3948=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-uk.mo'
3949Binary files wp-content/plugins/contact-form-7/languages/wpcf7-uk.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-uk.mo 2011-02-18 16:15:41 +0000 differ
3950=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-vi.mo'
3951Binary files wp-content/plugins/contact-form-7/languages/wpcf7-vi.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-vi.mo 2011-02-18 16:15:41 +0000 differ
3952=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-zh_CN.mo'
3953Binary files wp-content/plugins/contact-form-7/languages/wpcf7-zh_CN.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-zh_CN.mo 2011-02-18 16:15:41 +0000 differ
3954=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7-zh_TW.mo'
3955Binary files wp-content/plugins/contact-form-7/languages/wpcf7-zh_TW.mo 1970-01-01 00:00:00 +0000 and wp-content/plugins/contact-form-7/languages/wpcf7-zh_TW.mo 2011-02-18 16:15:41 +0000 differ
3956=== added file 'wp-content/plugins/contact-form-7/languages/wpcf7.pot'
3957--- wp-content/plugins/contact-form-7/languages/wpcf7.pot 1970-01-01 00:00:00 +0000
3958+++ wp-content/plugins/contact-form-7/languages/wpcf7.pot 2011-02-18 16:15:41 +0000
3959@@ -0,0 +1,842 @@
3960+msgid ""
3961+msgstr ""
3962+"Project-Id-Version: Contact Form 7\n"
3963+"Report-Msgid-Bugs-To: \n"
3964+"POT-Creation-Date: 2011-01-06 09:35+0900\n"
3965+"PO-Revision-Date: 2011-01-06 09:35+0900\n"
3966+"Last-Translator: Takayuki Miyoshi <takayukister@gmail.com>\n"
3967+"Language-Team: \n"
3968+"MIME-Version: 1.0\n"
3969+"Content-Type: text/plain; charset=UTF-8\n"
3970+"Content-Transfer-Encoding: 8bit\n"
3971+"X-Poedit-SourceCharset: utf-8\n"
3972+"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_c\n"
3973+"X-Poedit-Basepath: ../..\n"
3974+"Plural-Forms: nplurals=1; plural=0;\n"
3975+"X-Poedit-SearchPath-0: contact-form-7\n"
3976+
3977+#: contact-form-7/admin/admin.php:120
3978+#: contact-form-7/admin/edit.php:17
3979+#: contact-form-7/admin/edit.php:30
3980+msgid "Contact Form 7"
3981+msgstr ""
3982+
3983+#: contact-form-7/admin/admin.php:120
3984+msgid "Contact"
3985+msgstr ""
3986+
3987+#: contact-form-7/admin/admin.php:123
3988+msgid "Edit Contact Forms"
3989+msgstr ""
3990+
3991+#: contact-form-7/admin/admin.php:123
3992+msgid "Edit"
3993+msgstr ""
3994+
3995+#: contact-form-7/admin/admin.php:162
3996+msgid "Generate Tag"
3997+msgstr ""
3998+
3999+#: contact-form-7/admin/admin.php:163
4000+msgid "Show"
4001+msgstr ""
4002+
4003+#: contact-form-7/admin/admin.php:164
4004+msgid "Hide"
4005+msgstr ""
4006+
4007+#: contact-form-7/admin/admin.php:261
4008+msgid "Contact form"
4009+msgstr ""
4010+
4011+#: contact-form-7/admin/admin.php:280
4012+msgid "Settings"
4013+msgstr ""
4014+
4015+#: contact-form-7/admin/admin.php:291
4016+msgid "http://contactform7.com/"
4017+msgstr ""
4018+
4019+#: contact-form-7/admin/admin.php:292
4020+msgid "Contactform7.com"
4021+msgstr ""
4022+
4023+#: contact-form-7/admin/admin.php:293
4024+msgid "http://contactform7.com/docs/"
4025+msgstr ""
4026+
4027+#: contact-form-7/admin/admin.php:294
4028+msgid "Docs"
4029+msgstr ""
4030+
4031+#: contact-form-7/admin/admin.php:295
4032+msgid "http://contactform7.com/faq/"
4033+msgstr ""
4034+
4035+#: contact-form-7/admin/admin.php:296
4036+msgid "FAQ"
4037+msgstr ""
4038+
4039+#: contact-form-7/admin/admin.php:297
4040+msgid "http://contactform7.com/support/"
4041+msgstr ""
4042+
4043+#: contact-form-7/admin/admin.php:298
4044+msgid "Support"
4045+msgstr ""
4046+
4047+#: contact-form-7/admin/admin.php:312
4048+msgid "Contact form created."
4049+msgstr ""
4050+
4051+#: contact-form-7/admin/admin.php:315
4052+msgid "Contact form saved."
4053+msgstr ""
4054+
4055+#: contact-form-7/admin/admin.php:318
4056+msgid "Contact form deleted."
4057+msgstr ""
4058+
4059+#: contact-form-7/admin/admin.php:321
4060+msgid "Database table created."
4061+msgstr ""
4062+
4063+#: contact-form-7/admin/admin.php:324
4064+msgid "Failed to create database table."
4065+msgstr ""
4066+
4067+#: contact-form-7/admin/admin.php:358
4068+msgid "Contact Form 7 needs your support. Please donate today."
4069+msgstr ""
4070+
4071+#: contact-form-7/admin/admin.php:359
4072+msgid "Your contribution is needed for making this plugin better."
4073+msgstr ""
4074+
4075+#: contact-form-7/admin/admin.php:365
4076+msgid "http://contactform7.com/donate/"
4077+msgstr ""
4078+
4079+#: contact-form-7/admin/admin.php:365
4080+msgid "Donate"
4081+msgstr ""
4082+
4083+#: contact-form-7/admin/edit.php:9
4084+#, php-format
4085+msgid "<strong>The database table for Contact Form 7 does not exist.</strong> You must <a href=\"%s\">create the table</a> for it to work."
4086+msgstr ""
4087+
4088+#: contact-form-7/admin/edit.php:12
4089+msgid "<strong>The database table for Contact Form 7 does not exist.</strong>"
4090+msgstr ""
4091+
4092+#: contact-form-7/admin/edit.php:45
4093+msgid "Add new"
4094+msgstr ""
4095+
4096+#: contact-form-7/admin/edit.php:67
4097+msgid "Copy this code and paste it into your post, page or text widget content."
4098+msgstr ""
4099+
4100+#: contact-form-7/admin/edit.php:75
4101+#: contact-form-7/admin/edit.php:309
4102+msgid "Save"
4103+msgstr ""
4104+
4105+#: contact-form-7/admin/edit.php:82
4106+msgid "Copy"
4107+msgstr ""
4108+
4109+#: contact-form-7/admin/edit.php:87
4110+msgid "Delete"
4111+msgstr ""
4112+
4113+#: contact-form-7/admin/edit.php:89
4114+msgid ""
4115+"You are about to delete this contact form.\n"
4116+" 'Cancel' to stop, 'OK' to delete."
4117+msgstr ""
4118+
4119+#: contact-form-7/admin/edit.php:104
4120+msgid "Form"
4121+msgstr ""
4122+
4123+#: contact-form-7/admin/edit.php:128
4124+msgid "Mail"
4125+msgstr ""
4126+
4127+#: contact-form-7/admin/edit.php:135
4128+#: contact-form-7/admin/edit.php:202
4129+msgid "To:"
4130+msgstr ""
4131+
4132+#: contact-form-7/admin/edit.php:140
4133+#: contact-form-7/admin/edit.php:207
4134+msgid "From:"
4135+msgstr ""
4136+
4137+#: contact-form-7/admin/edit.php:145
4138+#: contact-form-7/admin/edit.php:212
4139+msgid "Subject:"
4140+msgstr ""
4141+
4142+#: contact-form-7/admin/edit.php:152
4143+#: contact-form-7/admin/edit.php:219
4144+msgid "Additional headers:"
4145+msgstr ""
4146+
4147+#: contact-form-7/admin/edit.php:157
4148+#: contact-form-7/admin/edit.php:224
4149+msgid "File attachments:"
4150+msgstr ""
4151+
4152+#: contact-form-7/admin/edit.php:165
4153+#: contact-form-7/admin/edit.php:232
4154+msgid "Use HTML content type"
4155+msgstr ""
4156+
4157+#: contact-form-7/admin/edit.php:172
4158+#: contact-form-7/admin/edit.php:239
4159+#: contact-form-7/includes/functions.php:78
4160+msgid "Message body:"
4161+msgstr ""
4162+
4163+#: contact-form-7/admin/edit.php:188
4164+msgid "Mail (2)"
4165+msgstr ""
4166+
4167+#: contact-form-7/admin/edit.php:194
4168+msgid "Use mail (2)"
4169+msgstr ""
4170+
4171+#: contact-form-7/admin/edit.php:255
4172+msgid "Messages"
4173+msgstr ""
4174+
4175+#: contact-form-7/admin/edit.php:285
4176+msgid "Additional Settings"
4177+msgstr ""
4178+
4179+#: contact-form-7/admin/edit.php:333
4180+#, php-format
4181+msgid "Use the default language (%s)"
4182+msgstr ""
4183+
4184+#: contact-form-7/admin/edit.php:334
4185+#: contact-form-7/admin/edit.php:347
4186+msgid "Add New"
4187+msgstr ""
4188+
4189+#: contact-form-7/admin/edit.php:337
4190+msgid "Or"
4191+msgstr ""
4192+
4193+#: contact-form-7/admin/edit.php:342
4194+msgid "(select language)"
4195+msgstr ""
4196+
4197+#: contact-form-7/includes/classes.php:596
4198+msgid "Untitled"
4199+msgstr ""
4200+
4201+#: contact-form-7/includes/functions.php:6
4202+msgid "Sender's message was sent successfully"
4203+msgstr ""
4204+
4205+#: contact-form-7/includes/functions.php:7
4206+msgid "Your message was sent successfully. Thanks."
4207+msgstr ""
4208+
4209+#: contact-form-7/includes/functions.php:11
4210+msgid "Sender's message was failed to send"
4211+msgstr ""
4212+
4213+#: contact-form-7/includes/functions.php:12
4214+#: contact-form-7/includes/functions.php:17
4215+msgid "Failed to send your message. Please try later or contact administrator by other way."
4216+msgstr ""
4217+
4218+#: contact-form-7/includes/functions.php:16
4219+msgid "Akismet judged the sending activity as spamming"
4220+msgstr ""
4221+
4222+#: contact-form-7/includes/functions.php:21
4223+msgid "Validation errors occurred"
4224+msgstr ""
4225+
4226+#: contact-form-7/includes/functions.php:22
4227+msgid "Validation errors occurred. Please confirm the fields and submit it again."
4228+msgstr ""
4229+
4230+#: contact-form-7/includes/functions.php:26
4231+msgid "There is a field of term that sender is needed to accept"
4232+msgstr ""
4233+
4234+#: contact-form-7/includes/functions.php:27
4235+msgid "Please accept the terms to proceed."
4236+msgstr ""
4237+
4238+#: contact-form-7/includes/functions.php:31
4239+msgid "Email address that sender entered is invalid"
4240+msgstr ""
4241+
4242+#: contact-form-7/includes/functions.php:32
4243+msgid "Email address seems invalid."
4244+msgstr ""
4245+
4246+#: contact-form-7/includes/functions.php:36
4247+msgid "There is a field that sender is needed to fill in"
4248+msgstr ""
4249+
4250+#: contact-form-7/includes/functions.php:37
4251+msgid "Please fill the required field."
4252+msgstr ""
4253+
4254+#: contact-form-7/includes/functions.php:46
4255+msgid "Your Name"
4256+msgstr ""
4257+
4258+#: contact-form-7/includes/functions.php:46
4259+#: contact-form-7/includes/functions.php:48
4260+msgid "(required)"
4261+msgstr ""
4262+
4263+#: contact-form-7/includes/functions.php:48
4264+msgid "Your Email"
4265+msgstr ""
4266+
4267+#: contact-form-7/includes/functions.php:50
4268+msgid "Subject"
4269+msgstr ""
4270+
4271+#: contact-form-7/includes/functions.php:52
4272+msgid "Your Message"
4273+msgstr ""
4274+
4275+#: contact-form-7/includes/functions.php:54
4276+msgid "Send"
4277+msgstr ""
4278+
4279+#: contact-form-7/includes/functions.php:62
4280+#, php-format
4281+msgid "From: %s"
4282+msgstr ""
4283+
4284+#: contact-form-7/includes/functions.php:63
4285+#, php-format
4286+msgid "Subject: %s"
4287+msgstr ""
4288+
4289+#: contact-form-7/includes/functions.php:64
4290+msgid "Message Body:"
4291+msgstr ""
4292+
4293+#: contact-form-7/includes/functions.php:65
4294+#: contact-form-7/includes/functions.php:79
4295+#, php-format
4296+msgid "This mail is sent via contact form on %1$s %2$s"
4297+msgstr ""
4298+
4299+#: contact-form-7/includes/functions.php:169
4300+msgid "Afrikaans"
4301+msgstr ""
4302+
4303+#: contact-form-7/includes/functions.php:170
4304+msgid "Albanian"
4305+msgstr ""
4306+
4307+#: contact-form-7/includes/functions.php:171
4308+msgid "Arabic"
4309+msgstr ""
4310+
4311+#: contact-form-7/includes/functions.php:172
4312+msgid "Armenian"
4313+msgstr ""
4314+
4315+#: contact-form-7/includes/functions.php:173
4316+msgid "Bangla"
4317+msgstr ""
4318+
4319+#: contact-form-7/includes/functions.php:174
4320+msgid "Bosnian"
4321+msgstr ""
4322+
4323+#: contact-form-7/includes/functions.php:175
4324+msgid "Brazilian Portuguese"
4325+msgstr ""
4326+
4327+#: contact-form-7/includes/functions.php:176
4328+msgid "Bulgarian"
4329+msgstr ""
4330+
4331+#: contact-form-7/includes/functions.php:177
4332+msgid "Catalan"
4333+msgstr ""
4334+
4335+#: contact-form-7/includes/functions.php:178
4336+msgid "Chinese (Simplified)"
4337+msgstr ""
4338+
4339+#: contact-form-7/includes/functions.php:179
4340+msgid "Chinese (Traditional)"
4341+msgstr ""
4342+
4343+#: contact-form-7/includes/functions.php:180
4344+msgid "Croatian"
4345+msgstr ""
4346+
4347+#: contact-form-7/includes/functions.php:181
4348+msgid "Czech"
4349+msgstr ""
4350+
4351+#: contact-form-7/includes/functions.php:182
4352+msgid "Danish"
4353+msgstr ""
4354+
4355+#: contact-form-7/includes/functions.php:183
4356+msgid "Dutch"
4357+msgstr ""
4358+
4359+#: contact-form-7/includes/functions.php:184
4360+msgid "English"
4361+msgstr ""
4362+
4363+#: contact-form-7/includes/functions.php:185
4364+msgid "Estonian"
4365+msgstr ""
4366+
4367+#: contact-form-7/includes/functions.php:186
4368+msgid "Finnish"
4369+msgstr ""
4370+
4371+#: contact-form-7/includes/functions.php:187
4372+msgid "French"
4373+msgstr ""
4374+
4375+#: contact-form-7/includes/functions.php:188
4376+msgid "Galician"
4377+msgstr ""
4378+
4379+#: contact-form-7/includes/functions.php:189
4380+msgid "Georgian"
4381+msgstr ""
4382+
4383+#: contact-form-7/includes/functions.php:190
4384+msgid "German"
4385+msgstr ""
4386+
4387+#: contact-form-7/includes/functions.php:191
4388+msgid "Greek"
4389+msgstr ""
4390+
4391+#: contact-form-7/includes/functions.php:192
4392+msgid "Hebrew"
4393+msgstr ""
4394+
4395+#: contact-form-7/includes/functions.php:193
4396+msgid "Hindi"
4397+msgstr ""
4398+
4399+#: contact-form-7/includes/functions.php:194
4400+msgid "Hungarian"
4401+msgstr ""
4402+
4403+#: contact-form-7/includes/functions.php:195
4404+msgid "Indonesian"
4405+msgstr ""
4406+
4407+#: contact-form-7/includes/functions.php:196
4408+msgid "Italian"
4409+msgstr ""
4410+
4411+#: contact-form-7/includes/functions.php:197
4412+msgid "Japanese"
4413+msgstr ""
4414+
4415+#: contact-form-7/includes/functions.php:198
4416+msgid "Korean"
4417+msgstr ""
4418+
4419+#: contact-form-7/includes/functions.php:199
4420+msgid "Latvian"
4421+msgstr ""
4422+
4423+#: contact-form-7/includes/functions.php:200
4424+msgid "Lithuanian"
4425+msgstr ""
4426+
4427+#: contact-form-7/includes/functions.php:201
4428+msgid "Macedonian"
4429+msgstr ""
4430+
4431+#: contact-form-7/includes/functions.php:202
4432+msgid "Malay"
4433+msgstr ""
4434+
4435+#: contact-form-7/includes/functions.php:203
4436+msgid "Malayalam"
4437+msgstr ""
4438+
4439+#: contact-form-7/includes/functions.php:204
4440+msgid "Norwegian"
4441+msgstr ""
4442+
4443+#: contact-form-7/includes/functions.php:205
4444+msgid "Persian"
4445+msgstr ""
4446+
4447+#: contact-form-7/includes/functions.php:206
4448+msgid "Polish"
4449+msgstr ""
4450+
4451+#: contact-form-7/includes/functions.php:207
4452+msgid "Portuguese"
4453+msgstr ""
4454+
4455+#: contact-form-7/includes/functions.php:208
4456+msgid "Russian"
4457+msgstr ""
4458+
4459+#: contact-form-7/includes/functions.php:209
4460+msgid "Romanian"
4461+msgstr ""
4462+
4463+#: contact-form-7/includes/functions.php:210
4464+msgid "Serbian"
4465+msgstr ""
4466+
4467+#: contact-form-7/includes/functions.php:211
4468+msgid "Slovak"
4469+msgstr ""
4470+
4471+#: contact-form-7/includes/functions.php:212
4472+msgid "Slovene"
4473+msgstr ""
4474+
4475+#: contact-form-7/includes/functions.php:213
4476+msgid "Spanish"
4477+msgstr ""
4478+
4479+#: contact-form-7/includes/functions.php:214
4480+msgid "Swedish"
4481+msgstr ""
4482+
4483+#: contact-form-7/includes/functions.php:215
4484+msgid "Tamil"
4485+msgstr ""
4486+
4487+#: contact-form-7/includes/functions.php:216
4488+msgid "Thai"
4489+msgstr ""
4490+
4491+#: contact-form-7/includes/functions.php:217
4492+msgid "Turkish"
4493+msgstr ""
4494+
4495+#: contact-form-7/includes/functions.php:218
4496+msgid "Ukrainian"
4497+msgstr ""
4498+
4499+#: contact-form-7/includes/functions.php:219
4500+msgid "Vietnamese"
4501+msgstr ""
4502+
4503+#: contact-form-7/modules/acceptance.php:150
4504+msgid "Acceptance"
4505+msgstr ""
4506+
4507+#: contact-form-7/modules/acceptance.php:159
4508+#: contact-form-7/modules/captcha.php:202
4509+#: contact-form-7/modules/checkbox.php:208
4510+#: contact-form-7/modules/file.php:244
4511+msgid "Name"
4512+msgstr ""
4513+
4514+#: contact-form-7/modules/acceptance.php:164
4515+#: contact-form-7/modules/acceptance.php:167
4516+#: contact-form-7/modules/captcha.php:209
4517+#: contact-form-7/modules/captcha.php:212
4518+#: contact-form-7/modules/captcha.php:217
4519+#: contact-form-7/modules/captcha.php:220
4520+#: contact-form-7/modules/captcha.php:224
4521+#: contact-form-7/modules/captcha.php:235
4522+#: contact-form-7/modules/captcha.php:238
4523+#: contact-form-7/modules/captcha.php:243
4524+#: contact-form-7/modules/captcha.php:246
4525+#: contact-form-7/modules/checkbox.php:213
4526+#: contact-form-7/modules/checkbox.php:216
4527+#: contact-form-7/modules/file.php:249
4528+#: contact-form-7/modules/file.php:252
4529+#: contact-form-7/modules/file.php:257
4530+#: contact-form-7/modules/file.php:260
4531+msgid "optional"
4532+msgstr ""
4533+
4534+#: contact-form-7/modules/acceptance.php:173
4535+msgid "Make this checkbox checked by default?"
4536+msgstr ""
4537+
4538+#: contact-form-7/modules/acceptance.php:174
4539+msgid "Make this checkbox work inversely?"
4540+msgstr ""
4541+
4542+#: contact-form-7/modules/acceptance.php:175
4543+msgid "* That means visitor who accepts the term unchecks it."
4544+msgstr ""
4545+
4546+#: contact-form-7/modules/acceptance.php:180
4547+#: contact-form-7/modules/captcha.php:251
4548+#: contact-form-7/modules/checkbox.php:236
4549+#: contact-form-7/modules/file.php:265
4550+msgid "Copy this code and paste it into the form left."
4551+msgstr ""
4552+
4553+#: contact-form-7/modules/captcha.php:66
4554+msgid "To use CAPTCHA, you need <a href=\"http://wordpress.org/extend/plugins/really-simple-captcha/\">Really Simple CAPTCHA</a> plugin installed."
4555+msgstr ""
4556+
4557+#: contact-form-7/modules/captcha.php:177
4558+msgid "The code that sender entered does not match the CAPTCHA"
4559+msgstr ""
4560+
4561+#: contact-form-7/modules/captcha.php:178
4562+msgid "Your entered code is incorrect."
4563+msgstr ""
4564+
4565+#: contact-form-7/modules/captcha.php:188
4566+msgid "CAPTCHA"
4567+msgstr ""
4568+
4569+#: contact-form-7/modules/captcha.php:199
4570+msgid "Note: To use CAPTCHA, you need Really Simple CAPTCHA plugin installed."
4571+msgstr ""
4572+
4573+#: contact-form-7/modules/captcha.php:206
4574+msgid "Image settings"
4575+msgstr ""
4576+
4577+#: contact-form-7/modules/captcha.php:217
4578+msgid "Foreground color"
4579+msgstr ""
4580+
4581+#: contact-form-7/modules/captcha.php:220
4582+msgid "Background color"
4583+msgstr ""
4584+
4585+#: contact-form-7/modules/captcha.php:224
4586+msgid "Image size"
4587+msgstr ""
4588+
4589+#: contact-form-7/modules/captcha.php:225
4590+msgid "Small"
4591+msgstr ""
4592+
4593+#: contact-form-7/modules/captcha.php:226
4594+msgid "Medium"
4595+msgstr ""
4596+
4597+#: contact-form-7/modules/captcha.php:227
4598+msgid "Large"
4599+msgstr ""
4600+
4601+#: contact-form-7/modules/captcha.php:232
4602+msgid "Input field settings"
4603+msgstr ""
4604+
4605+#: contact-form-7/modules/captcha.php:252
4606+msgid "For image"
4607+msgstr ""
4608+
4609+#: contact-form-7/modules/captcha.php:254
4610+msgid "For input field"
4611+msgstr ""
4612+
4613+#: contact-form-7/modules/captcha.php:284
4614+#, php-format
4615+msgid "This contact form contains CAPTCHA fields, but the temporary folder for the files (%s) does not exist or is not writable. You can create the folder or change its permission manually."
4616+msgstr ""
4617+
4618+#: contact-form-7/modules/captcha.php:290
4619+msgid "This contact form contains CAPTCHA fields, but the necessary libraries (GD and FreeType) are not available on your server."
4620+msgstr ""
4621+
4622+#: contact-form-7/modules/checkbox.php:181
4623+msgid "Checkboxes"
4624+msgstr ""
4625+
4626+#: contact-form-7/modules/checkbox.php:184
4627+msgid "Radio buttons"
4628+msgstr ""
4629+
4630+#: contact-form-7/modules/checkbox.php:205
4631+#: contact-form-7/modules/file.php:243
4632+msgid "Required field?"
4633+msgstr ""
4634+
4635+#: contact-form-7/modules/checkbox.php:221
4636+msgid "Choices"
4637+msgstr ""
4638+
4639+#: contact-form-7/modules/checkbox.php:223
4640+msgid "* One choice per line."
4641+msgstr ""
4642+
4643+#: contact-form-7/modules/checkbox.php:227
4644+msgid "Put a label first, a checkbox last?"
4645+msgstr ""
4646+
4647+#: contact-form-7/modules/checkbox.php:228
4648+msgid "Wrap each item with <label> tag?"
4649+msgstr ""
4650+
4651+#: contact-form-7/modules/checkbox.php:230
4652+msgid "Make checkboxes exclusive?"
4653+msgstr ""
4654+
4655+#: contact-form-7/modules/checkbox.php:238
4656+msgid "And, put this code into the Mail fields below."
4657+msgstr ""
4658+
4659+#: contact-form-7/modules/file.php:207
4660+msgid "Uploading a file fails for any reason"
4661+msgstr ""
4662+
4663+#: contact-form-7/modules/file.php:208
4664+msgid "Failed to upload file."
4665+msgstr ""
4666+
4667+#: contact-form-7/modules/file.php:212
4668+msgid "Uploaded file is not allowed file type"
4669+msgstr ""
4670+
4671+#: contact-form-7/modules/file.php:213
4672+msgid "This file type is not allowed."
4673+msgstr ""
4674+
4675+#: contact-form-7/modules/file.php:217
4676+msgid "Uploaded file is too large"
4677+msgstr ""
4678+
4679+#: contact-form-7/modules/file.php:218
4680+msgid "This file is too large."
4681+msgstr ""
4682+
4683+#: contact-form-7/modules/file.php:222
4684+msgid "Uploading a file fails for PHP error"
4685+msgstr ""
4686+
4687+#: contact-form-7/modules/file.php:223
4688+msgid "Failed to upload file. Error occurred."
4689+msgstr ""
4690+
4691+#: contact-form-7/modules/file.php:234
4692+msgid "File upload"
4693+msgstr ""
4694+
4695+#: contact-form-7/modules/file.php:257
4696+msgid "File size limit"
4697+msgstr ""
4698+
4699+#: contact-form-7/modules/file.php:257
4700+msgid "bytes"
4701+msgstr ""
4702+
4703+#: contact-form-7/modules/file.php:260
4704+msgid "Acceptable file types"
4705+msgstr ""
4706+
4707+#: contact-form-7/modules/file.php:267
4708+msgid "And, put this code into the File Attachments field below."
4709+msgstr ""
4710+
4711+#: contact-form-7/modules/file.php:292
4712+#, php-format
4713+msgid "This contact form contains file uploading fields, but the temporary folder for the files (%s) does not exist or is not writable. You can create the folder or change its permission manually."
4714+msgstr ""
4715+
4716+#: contact-form-7/modules/icl.php:74
4717+msgid "This contact form contains [icl] tags, but they are obsolete and no longer functioning on this version of Contact Form 7. <a href=\"http://contactform7.com/2009/12/25/contact-form-in-your-language/#Creating_contact_form_in_different_languages\" target=\"_blank\">There is a simpler way for creating contact forms of other languages</a> and you are recommended to use it."
4718+msgstr ""
4719+
4720+#: contact-form-7/modules/quiz.php:160
4721+msgid "Sender doesn't enter the correct answer to the quiz"
4722+msgstr ""
4723+
4724+#: contact-form-7/modules/quiz.php:161
4725+msgid "Your answer is not correct."
4726+msgstr ""
4727+
4728+#: contact-form-7/modules/quiz.php:171
4729+msgid "Quiz"
4730+msgstr ""
4731+
4732+#: contact-form-7/modules/quiz.php:201
4733+msgid "Quizzes"
4734+msgstr ""
4735+
4736+#: contact-form-7/modules/quiz.php:203
4737+msgid "* quiz|answer (e.g. 1+1=?|2)"
4738+msgstr ""
4739+
4740+#: contact-form-7/modules/select.php:150
4741+msgid "Drop-down menu"
4742+msgstr ""
4743+
4744+#: contact-form-7/modules/select.php:179
4745+msgid "Allow multiple selections?"
4746+msgstr ""
4747+
4748+#: contact-form-7/modules/select.php:180
4749+msgid "Insert a blank item as the first option?"
4750+msgstr ""
4751+
4752+#: contact-form-7/modules/submit.php:54
4753+msgid "Sending ..."
4754+msgstr ""
4755+
4756+#: contact-form-7/modules/submit.php:66
4757+msgid "Submit button"
4758+msgstr ""
4759+
4760+#: contact-form-7/modules/submit.php:84
4761+msgid "Label"
4762+msgstr ""
4763+
4764+#: contact-form-7/modules/text.php:138
4765+msgid "Text field"
4766+msgstr ""
4767+
4768+#: contact-form-7/modules/text.php:141
4769+msgid "Email field"
4770+msgstr ""
4771+
4772+#: contact-form-7/modules/text.php:183
4773+msgid "Akismet"
4774+msgstr ""
4775+
4776+#: contact-form-7/modules/text.php:185
4777+msgid "This field requires author's name"
4778+msgstr ""
4779+
4780+#: contact-form-7/modules/text.php:186
4781+msgid "This field requires author's URL"
4782+msgstr ""
4783+
4784+#: contact-form-7/modules/text.php:188
4785+msgid "This field requires author's email address"
4786+msgstr ""
4787+
4788+#: contact-form-7/modules/text.php:194
4789+#: contact-form-7/modules/textarea.php:156
4790+msgid "Default value"
4791+msgstr ""
4792+
4793+#: contact-form-7/modules/text.php:197
4794+#: contact-form-7/modules/textarea.php:159
4795+msgid "Use this text as watermark?"
4796+msgstr ""
4797+
4798+#: contact-form-7/modules/textarea.php:125
4799+msgid "Text area"
4800+msgstr ""
4801+
4802
4803=== added file 'wp-content/plugins/contact-form-7/license.txt'
4804--- wp-content/plugins/contact-form-7/license.txt 1970-01-01 00:00:00 +0000
4805+++ wp-content/plugins/contact-form-7/license.txt 2011-02-18 16:15:41 +0000
4806@@ -0,0 +1,339 @@
4807+ GNU GENERAL PUBLIC LICENSE
4808+ Version 2, June 1991
4809+
4810+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
4811+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
4812+ Everyone is permitted to copy and distribute verbatim copies
4813+ of this license document, but changing it is not allowed.
4814+
4815+ Preamble
4816+
4817+ The licenses for most software are designed to take away your
4818+freedom to share and change it. By contrast, the GNU General Public
4819+License is intended to guarantee your freedom to share and change free
4820+software--to make sure the software is free for all its users. This
4821+General Public License applies to most of the Free Software
4822+Foundation's software and to any other program whose authors commit to
4823+using it. (Some other Free Software Foundation software is covered by
4824+the GNU Lesser General Public License instead.) You can apply it to
4825+your programs, too.
4826+
4827+ When we speak of free software, we are referring to freedom, not
4828+price. Our General Public Licenses are designed to make sure that you
4829+have the freedom to distribute copies of free software (and charge for
4830+this service if you wish), that you receive source code or can get it
4831+if you want it, that you can change the software or use pieces of it
4832+in new free programs; and that you know you can do these things.
4833+
4834+ To protect your rights, we need to make restrictions that forbid
4835+anyone to deny you these rights or to ask you to surrender the rights.
4836+These restrictions translate to certain responsibilities for you if you
4837+distribute copies of the software, or if you modify it.
4838+
4839+ For example, if you distribute copies of such a program, whether
4840+gratis or for a fee, you must give the recipients all the rights that
4841+you have. You must make sure that they, too, receive or can get the
4842+source code. And you must show them these terms so they know their
4843+rights.
4844+
4845+ We protect your rights with two steps: (1) copyright the software, and
4846+(2) offer you this license which gives you legal permission to copy,
4847+distribute and/or modify the software.
4848+
4849+ Also, for each author's protection and ours, we want to make certain
4850+that everyone understands that there is no warranty for this free
4851+software. If the software is modified by someone else and passed on, we
4852+want its recipients to know that what they have is not the original, so
4853+that any problems introduced by others will not reflect on the original
4854+authors' reputations.
4855+
4856+ Finally, any free program is threatened constantly by software
4857+patents. We wish to avoid the danger that redistributors of a free
4858+program will individually obtain patent licenses, in effect making the
4859+program proprietary. To prevent this, we have made it clear that any
4860+patent must be licensed for everyone's free use or not licensed at all.
4861+
4862+ The precise terms and conditions for copying, distribution and
4863+modification follow.
4864+
4865+ GNU GENERAL PUBLIC LICENSE
4866+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
4867+
4868+ 0. This License applies to any program or other work which contains
4869+a notice placed by the copyright holder saying it may be distributed
4870+under the terms of this General Public License. The "Program", below,
4871+refers to any such program or work, and a "work based on the Program"
4872+means either the Program or any derivative work under copyright law:
4873+that is to say, a work containing the Program or a portion of it,
4874+either verbatim or with modifications and/or translated into another
4875+language. (Hereinafter, translation is included without limitation in
4876+the term "modification".) Each licensee is addressed as "you".
4877+
4878+Activities other than copying, distribution and modification are not
4879+covered by this License; they are outside its scope. The act of
4880+running the Program is not restricted, and the output from the Program
4881+is covered only if its contents constitute a work based on the
4882+Program (independent of having been made by running the Program).
4883+Whether that is true depends on what the Program does.
4884+
4885+ 1. You may copy and distribute verbatim copies of the Program's
4886+source code as you receive it, in any medium, provided that you
4887+conspicuously and appropriately publish on each copy an appropriate
4888+copyright notice and disclaimer of warranty; keep intact all the
4889+notices that refer to this License and to the absence of any warranty;
4890+and give any other recipients of the Program a copy of this License
4891+along with the Program.
4892+
4893+You may charge a fee for the physical act of transferring a copy, and
4894+you may at your option offer warranty protection in exchange for a fee.
4895+
4896+ 2. You may modify your copy or copies of the Program or any portion
4897+of it, thus forming a work based on the Program, and copy and
4898+distribute such modifications or work under the terms of Section 1
4899+above, provided that you also meet all of these conditions:
4900+
4901+ a) You must cause the modified files to carry prominent notices
4902+ stating that you changed the files and the date of any change.
4903+
4904+ b) You must cause any work that you distribute or publish, that in
4905+ whole or in part contains or is derived from the Program or any
4906+ part thereof, to be licensed as a whole at no charge to all third
4907+ parties under the terms of this License.
4908+
4909+ c) If the modified program normally reads commands interactively
4910+ when run, you must cause it, when started running for such
4911+ interactive use in the most ordinary way, to print or display an
4912+ announcement including an appropriate copyright notice and a
4913+ notice that there is no warranty (or else, saying that you provide
4914+ a warranty) and that users may redistribute the program under
4915+ these conditions, and telling the user how to view a copy of this
4916+ License. (Exception: if the Program itself is interactive but
4917+ does not normally print such an announcement, your work based on
4918+ the Program is not required to print an announcement.)
4919+
4920+These requirements apply to the modified work as a whole. If
4921+identifiable sections of that work are not derived from the Program,
4922+and can be reasonably considered independent and separate works in
4923+themselves, then this License, and its terms, do not apply to those
4924+sections when you distribute them as separate works. But when you
4925+distribute the same sections as part of a whole which is a work based
4926+on the Program, the distribution of the whole must be on the terms of
4927+this License, whose permissions for other licensees extend to the
4928+entire whole, and thus to each and every part regardless of who wrote it.
4929+
4930+Thus, it is not the intent of this section to claim rights or contest
4931+your rights to work written entirely by you; rather, the intent is to
4932+exercise the right to control the distribution of derivative or
4933+collective works based on the Program.
4934+
4935+In addition, mere aggregation of another work not based on the Program
4936+with the Program (or with a work based on the Program) on a volume of
4937+a storage or distribution medium does not bring the other work under
4938+the scope of this License.
4939+
4940+ 3. You may copy and distribute the Program (or a work based on it,
4941+under Section 2) in object code or executable form under the terms of
4942+Sections 1 and 2 above provided that you also do one of the following:
4943+
4944+ a) Accompany it with the complete corresponding machine-readable
4945+ source code, which must be distributed under the terms of Sections
4946+ 1 and 2 above on a medium customarily used for software interchange; or,
4947+
4948+ b) Accompany it with a written offer, valid for at least three
4949+ years, to give any third party, for a charge no more than your
4950+ cost of physically performing source distribution, a complete
4951+ machine-readable copy of the corresponding source code, to be
4952+ distributed under the terms of Sections 1 and 2 above on a medium
4953+ customarily used for software interchange; or,
4954+
4955+ c) Accompany it with the information you received as to the offer
4956+ to distribute corresponding source code. (This alternative is
4957+ allowed only for noncommercial distribution and only if you
4958+ received the program in object code or executable form with such
4959+ an offer, in accord with Subsection b above.)
4960+
4961+The source code for a work means the preferred form of the work for
4962+making modifications to it. For an executable work, complete source
4963+code means all the source code for all modules it contains, plus any
4964+associated interface definition files, plus the scripts used to
4965+control compilation and installation of the executable. However, as a
4966+special exception, the source code distributed need not include
4967+anything that is normally distributed (in either source or binary
4968+form) with the major components (compiler, kernel, and so on) of the
4969+operating system on which the executable runs, unless that component
4970+itself accompanies the executable.
4971+
4972+If distribution of executable or object code is made by offering
4973+access to copy from a designated place, then offering equivalent
4974+access to copy the source code from the same place counts as
4975+distribution of the source code, even though third parties are not
4976+compelled to copy the source along with the object code.
4977+
4978+ 4. You may not copy, modify, sublicense, or distribute the Program
4979+except as expressly provided under this License. Any attempt
4980+otherwise to copy, modify, sublicense or distribute the Program is
4981+void, and will automatically terminate your rights under this License.
4982+However, parties who have received copies, or rights, from you under
4983+this License will not have their licenses terminated so long as such
4984+parties remain in full compliance.
4985+
4986+ 5. You are not required to accept this License, since you have not
4987+signed it. However, nothing else grants you permission to modify or
4988+distribute the Program or its derivative works. These actions are
4989+prohibited by law if you do not accept this License. Therefore, by
4990+modifying or distributing the Program (or any work based on the
4991+Program), you indicate your acceptance of this License to do so, and
4992+all its terms and conditions for copying, distributing or modifying
4993+the Program or works based on it.
4994+
4995+ 6. Each time you redistribute the Program (or any work based on the
4996+Program), the recipient automatically receives a license from the
4997+original licensor to copy, distribute or modify the Program subject to
4998+these terms and conditions. You may not impose any further
4999+restrictions on the recipients' exercise of the rights granted herein.
5000+You are not responsible for enforcing compliance by third parties to
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches