Contact Form by BestWebSoft - Version 3.61

Version Description

  • 25.10.2013 =
  • NEW : Add option for saving emails into the DataBase.
  • Bugfix : File format according JavaScript and CSS Coding Standards.
  • Update : We updated all functionality for wordpress 3.7.
Download this release

Release Info

Developer bestwebsoft
Plugin Icon 128x128 Contact Form by BestWebSoft
Version 3.61
Comparing to
See all releases

Code changes from version 3.60 to 3.61

bws_menu/bws_menu.php CHANGED
@@ -5,11 +5,16 @@
5
  if ( ! function_exists( 'bws_add_menu_render' ) ) {
6
  function bws_add_menu_render() {
7
  global $wpdb, $wp_version, $title;
8
- $active_plugins = get_option('active_plugins');
9
  $all_plugins = get_plugins();
10
  $error = '';
11
  $message = '';
12
  $bwsmn_form_email = '';
 
 
 
 
 
 
13
 
14
  $array_activate = array();
15
  $array_install = array();
@@ -29,25 +34,26 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
29
  array( 'updater\/updater.php', 'Updater', 'http://bestwebsoft.com/plugin/updater-plugin/', 'http://bestwebsoft.com/plugin/updater-plugin/#download', '/wp-admin/plugin-install.php?tab=search&type=term&s=updater+bestwebsoft&plugin-search-input=Search+Plugins', 'admin.php?page=updater-options' ),
30
  array( 'custom-fields-search\/custom-fields-search.php', 'Custom Fields Search', 'http://bestwebsoft.com/plugin/custom-fields-search/', 'http://bestwebsoft.com/plugin/custom-fields-search/#download', '/wp-admin/plugin-install.php?tab=search&type=term&s=Custom+Fields+Search+bestwebsoft&plugin-search-input=Search+Plugins', 'admin.php?page=custom_fields_search.php' ),
31
  array( 'google-one\/google-plus-one.php', 'Google +1', 'http://bestwebsoft.com/plugin/google-plus-one/', 'http://bestwebsoft.com/plugin/google-plus-one/#download', '/wp-admin/plugin-install.php?tab=search&type=term&s=Google+%2B1+bestwebsoft&plugin-search-input=Search+Plugins', 'admin.php?page=google-plus-one.php' ),
32
- array( 'relevant\/related-posts-plugin.php', 'Related Posts Plugin', 'http://bestwebsoft.com/plugin/related-posts-plugin/', 'http://bestwebsoft.com/plugin/related-posts-plugin/#download', '/wp-admin/plugin-install.php?tab=search&s=Related+Posts+Plugin+Bestwebsoft&plugin-search-input=Search+Plugins', 'admin.php?page=related-posts-plugin.php' )
 
33
  );
34
  foreach ( $array_plugins as $plugins ) {
35
- if( 0 < count( preg_grep( "/".$plugins[0]."/", $active_plugins ) ) ) {
36
- $array_activate[$count_activate]["title"] = $plugins[1];
37
- $array_activate[$count_activate]["link"] = $plugins[2];
38
- $array_activate[$count_activate]["href"] = $plugins[3];
39
- $array_activate[$count_activate]["url"] = $plugins[5];
40
  $count_activate++;
41
  } else if ( array_key_exists( str_replace( "\\", "", $plugins[0] ), $all_plugins ) ) {
42
- $array_install[$count_install]["title"] = $plugins[1];
43
- $array_install[$count_install]["link"] = $plugins[2];
44
- $array_install[$count_install]["href"] = $plugins[3];
45
  $count_install++;
46
  } else {
47
- $array_recomend[$count_recomend]["title"] = $plugins[1];
48
- $array_recomend[$count_recomend]["link"] = $plugins[2];
49
- $array_recomend[$count_recomend]["href"] = $plugins[3];
50
- $array_recomend[$count_recomend]["slug"] = $plugins[4];
51
  $count_recomend++;
52
  }
53
  }
@@ -59,24 +65,25 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
59
  array( 'gallery-plugin-pro\/gallery-plugin-pro.php', 'Gallery Pro', 'http://bestwebsoft.com/plugin/gallery-pro/?k=382e5ce7c96a6391f5ffa5e116b37fe0', 'http://bestwebsoft.com/plugin/gallery-pro/?k=382e5ce7c96a6391f5ffa5e116b37fe0#purchase', 'admin.php?page=gallery-plugin-pro.php' ),
60
  array( 'contact-form-pro\/contact_form_pro.php', 'Contact Form Pro', 'http://bestwebsoft.com/plugin/contact-form-pro/?k=773dc97bb3551975db0e32edca1a6d71', 'http://bestwebsoft.com/plugin/contact-form-pro/?k=773dc97bb3551975db0e32edca1a6d71#purchase', 'admin.php?page=contact_form_pro.php' ),
61
  array( 'captcha-pro\/captcha_pro.php', 'Captcha Pro', 'http://bestwebsoft.com/plugin/captcha-pro/?k=ff7d65e55e5e7f98f219be9ed711094e', 'http://bestwebsoft.com/plugin/captcha-pro/?k=ff7d65e55e5e7f98f219be9ed711094e#purchase', 'admin.php?page=captcha_pro.php' ),
62
- array( 'updater-pro\/updater_pro.php', 'Updater Pro', 'http://bestwebsoft.com/plugin/updater-pro?k=cf633acbefbdff78545347fe08a3aecb', 'http://bestwebsoft.com/plugin/updater-pro?k=cf633acbefbdff78545347fe08a3aecb#purchase', 'admin.php?page=updater-pro-options' )
 
63
  );
64
  foreach ( $array_plugins_pro as $plugins ) {
65
- if( 0 < count( preg_grep( "/".$plugins[0]."/", $active_plugins ) ) ) {
66
- $array_activate_pro[$count_activate_pro]["title"] = $plugins[1];
67
- $array_activate_pro[$count_activate_pro]["link"] = $plugins[2];
68
- $array_activate_pro[$count_activate_pro]["href"] = $plugins[3];
69
- $array_activate_pro[$count_activate_pro]["url"] = $plugins[4];
70
  $count_activate_pro++;
71
- } else if( array_key_exists(str_replace( "\\", "", $plugins[0]), $all_plugins ) ) {
72
- $array_install_pro[$count_install_pro]["title"] = $plugins[1];
73
- $array_install_pro[$count_install_pro]["link"] = $plugins[2];
74
- $array_install_pro[$count_install_pro]["href"] = $plugins[3];
75
  $count_install_pro++;
76
  } else {
77
- $array_recomend_pro[$count_recomend_pro]["title"] = $plugins[1];
78
- $array_recomend_pro[$count_recomend_pro]["link"] = $plugins[2];
79
- $array_recomend_pro[$count_recomend_pro]["href"] = $plugins[3];
80
  $count_recomend_pro++;
81
  }
82
  }
@@ -111,13 +118,13 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
111
  else
112
  $memory_limit = __( 'N/A', 'bestwebsoft' );
113
  if ( function_exists( 'memory_get_usage' ) )
114
- $memory_usage = round( memory_get_usage() / 1024 / 1024, 2 ) . __(' Mb', 'bestwebsoft' );
115
  else
116
  $memory_usage = __( 'N/A', 'bestwebsoft' );
117
  if ( is_callable( 'exif_read_data' ) )
118
- $exif_read_data = __('Yes', 'bestwebsoft' ) . " ( V" . substr( phpversion( 'exif' ), 0,4 ) . ")" ;
119
  else
120
- $exif_read_data = __('No', 'bestwebsoft' );
121
  if ( is_callable( 'iptcparse' ) )
122
  $iptcparse = __( 'Yes', 'bestwebsoft' );
123
  else
@@ -141,13 +148,13 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
141
  } else
142
  $multisite = __( 'N/A', 'bestwebsoft' );
143
 
144
- $site_url = get_option('siteurl');
145
- $home_url = get_option('home');
146
- $db_version = get_option('db_version');
147
  $system_info = array(
148
- 'system_info' => '',
149
- 'active_plugins' => '',
150
- 'inactive_plugins' => ''
151
  );
152
  $system_info['system_info'] = array(
153
  __( 'Operating System', 'bestwebsoft' ) => PHP_OS,
@@ -184,7 +191,7 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
184
  ( isset( $_REQUEST['bwsmn_form_submit_custom_email'] ) && check_admin_referer( plugin_basename(__FILE__), 'bwsmn_nonce_submit_custom_email' ) ) ) {
185
  if ( isset( $_REQUEST['bwsmn_form_email'] ) ) {
186
  $bwsmn_form_email = trim( $_REQUEST['bwsmn_form_email'] );
187
- if( $bwsmn_form_email == "" || !preg_match( "/^((?:[a-z0-9']+(?:[a-z0-9\-_\.']+)?@[a-z0-9]+(?:[a-z0-9\-\.]+)?\.[a-z]{2,5})[, ]*)+$/i", $bwsmn_form_email ) ) {
188
  $error = __( "Please enter a valid email address.", 'bestwebsoft' );
189
  } else {
190
  $email = $bwsmn_form_email;
@@ -226,11 +233,11 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
226
  }
227
  ?><div class="wrap">
228
  <div class="icon32 icon32-bws" id="icon-options-general"></div>
229
- <h2><?php echo $title;?></h2>
230
- <div class="updated fade" <?php if ( !( isset( $_REQUEST['bwsmn_form_submit'] ) || isset( $_REQUEST['bwsmn_form_submit_custom_email'] ) ) || $error != "" ) echo "style=\"display:none\""; ?>><p><strong><?php echo $message; ?></strong></p></div>
231
  <div class="error" <?php if ( "" == $error ) echo "style=\"display:none\""; ?>><p><strong><?php echo $error; ?></strong></p></div>
232
  <h3 style="color: blue;"><?php _e( 'Pro plugins', 'bestwebsoft' ); ?></h3>
233
- <?php if( 0 < $count_activate_pro ) { ?>
234
  <div style="padding-left:15px;">
235
  <h4><?php _e( 'Activated plugins', 'bestwebsoft' ); ?></h4>
236
  <?php foreach ( $array_activate_pro as $activate_plugin ) { ?>
@@ -238,7 +245,7 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
238
  <?php } ?>
239
  </div>
240
  <?php } ?>
241
- <?php if( 0 < $count_install_pro ) { ?>
242
  <div style="padding-left:15px;">
243
  <h4><?php _e( 'Installed plugins', 'bestwebsoft' ); ?></h4>
244
  <?php foreach ( $array_install_pro as $install_plugin) { ?>
@@ -246,7 +253,7 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
246
  <?php } ?>
247
  </div>
248
  <?php } ?>
249
- <?php if( 0 < $count_recomend_pro ) { ?>
250
  <div style="padding-left:15px;">
251
  <h4><?php _e( 'Recommended plugins', 'bestwebsoft' ); ?></h4>
252
  <?php foreach ( $array_recomend_pro as $recomend_plugin ) { ?>
@@ -256,15 +263,15 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
256
  <?php } ?>
257
  <br />
258
  <h3 style="color: green"><?php _e( 'Free plugins', 'bestwebsoft' ); ?></h3>
259
- <?php if( 0 < $count_activate ) { ?>
260
  <div style="padding-left:15px;">
261
  <h4><?php _e( 'Activated plugins', 'bestwebsoft' ); ?></h4>
262
- <?php foreach( $array_activate as $activate_plugin ) { ?>
263
  <div style="float:left; width:200px;"><?php echo $activate_plugin["title"]; ?></div> <p><a href="<?php echo $activate_plugin["link"]; ?>" target="_blank"><?php echo __( "Read more", 'bestwebsoft' ); ?></a> <a href="<?php echo $activate_plugin["url"]; ?>"><?php echo __( "Settings", 'bestwebsoft' ); ?></a></p>
264
  <?php } ?>
265
  </div>
266
  <?php } ?>
267
- <?php if( 0 < $count_install ) { ?>
268
  <div style="padding-left:15px;">
269
  <h4><?php _e( 'Installed plugins', 'bestwebsoft' ); ?></h4>
270
  <?php foreach ( $array_install as $install_plugin ) { ?>
@@ -272,7 +279,7 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
272
  <?php } ?>
273
  </div>
274
  <?php } ?>
275
- <?php if( 0 < $count_recomend ) { ?>
276
  <div style="padding-left:15px;">
277
  <h4><?php _e( 'Recommended plugins', 'bestwebsoft' ); ?></h4>
278
  <?php foreach ( $array_recomend as $recomend_plugin ) { ?>
5
  if ( ! function_exists( 'bws_add_menu_render' ) ) {
6
  function bws_add_menu_render() {
7
  global $wpdb, $wp_version, $title;
 
8
  $all_plugins = get_plugins();
9
  $error = '';
10
  $message = '';
11
  $bwsmn_form_email = '';
12
+ if ( is_multisite() ) {
13
+ $active_plugins = (array) array_keys( get_site_option( 'active_sitewide_plugins', array() ) );
14
+ $active_plugins = array_merge( $active_plugins , get_option( 'active_plugins' ) );
15
+ } else {
16
+ $active_plugins = get_option( 'active_plugins' );
17
+ }
18
 
19
  $array_activate = array();
20
  $array_install = array();
34
  array( 'updater\/updater.php', 'Updater', 'http://bestwebsoft.com/plugin/updater-plugin/', 'http://bestwebsoft.com/plugin/updater-plugin/#download', '/wp-admin/plugin-install.php?tab=search&type=term&s=updater+bestwebsoft&plugin-search-input=Search+Plugins', 'admin.php?page=updater-options' ),
35
  array( 'custom-fields-search\/custom-fields-search.php', 'Custom Fields Search', 'http://bestwebsoft.com/plugin/custom-fields-search/', 'http://bestwebsoft.com/plugin/custom-fields-search/#download', '/wp-admin/plugin-install.php?tab=search&type=term&s=Custom+Fields+Search+bestwebsoft&plugin-search-input=Search+Plugins', 'admin.php?page=custom_fields_search.php' ),
36
  array( 'google-one\/google-plus-one.php', 'Google +1', 'http://bestwebsoft.com/plugin/google-plus-one/', 'http://bestwebsoft.com/plugin/google-plus-one/#download', '/wp-admin/plugin-install.php?tab=search&type=term&s=Google+%2B1+bestwebsoft&plugin-search-input=Search+Plugins', 'admin.php?page=google-plus-one.php' ),
37
+ array( 'relevant\/related-posts-plugin.php', 'Related Posts Plugin', 'http://bestwebsoft.com/plugin/related-posts-plugin/', 'http://bestwebsoft.com/plugin/related-posts-plugin/#download', '/wp-admin/plugin-install.php?tab=search&s=Related+Posts+Plugin+Bestwebsoft&plugin-search-input=Search+Plugins', 'admin.php?page=related-posts-plugin.php' ),
38
+ array( 'contact-form-to-db\/contact_form_to_db.php', 'Contact Form to DB', 'http://bestwebsoft.com/plugin/contact-form-to-db/', 'http://bestwebsoft.com/plugin/contact-form-to-db/#download', '/wp-admin/plugin-install.php?tab=search&s=Contact+Form+to+DB+bestwebsoft&plugin-search-input=Search+Plugins', 'admin.php?page=cntctfrmtdb_settings' )
39
  );
40
  foreach ( $array_plugins as $plugins ) {
41
+ if ( 0 < count( preg_grep( "/".$plugins[0]."/", $active_plugins ) ) ) {
42
+ $array_activate[ $count_activate ]["title"] = $plugins[1];
43
+ $array_activate[ $count_activate ]["link"] = $plugins[2];
44
+ $array_activate[ $count_activate ]["href"] = $plugins[3];
45
+ $array_activate[ $count_activate ]["url"] = $plugins[5];
46
  $count_activate++;
47
  } else if ( array_key_exists( str_replace( "\\", "", $plugins[0] ), $all_plugins ) ) {
48
+ $array_install[ $count_install ]["title"] = $plugins[1];
49
+ $array_install[ $count_install ]["link"] = $plugins[2];
50
+ $array_install[ $count_install ]["href"] = $plugins[3];
51
  $count_install++;
52
  } else {
53
+ $array_recomend[ $count_recomend ]["title"] = $plugins[1];
54
+ $array_recomend[ $count_recomend ]["link"] = $plugins[2];
55
+ $array_recomend[ $count_recomend ]["href"] = $plugins[3];
56
+ $array_recomend[ $count_recomend ]["slug"] = $plugins[4];
57
  $count_recomend++;
58
  }
59
  }
65
  array( 'gallery-plugin-pro\/gallery-plugin-pro.php', 'Gallery Pro', 'http://bestwebsoft.com/plugin/gallery-pro/?k=382e5ce7c96a6391f5ffa5e116b37fe0', 'http://bestwebsoft.com/plugin/gallery-pro/?k=382e5ce7c96a6391f5ffa5e116b37fe0#purchase', 'admin.php?page=gallery-plugin-pro.php' ),
66
  array( 'contact-form-pro\/contact_form_pro.php', 'Contact Form Pro', 'http://bestwebsoft.com/plugin/contact-form-pro/?k=773dc97bb3551975db0e32edca1a6d71', 'http://bestwebsoft.com/plugin/contact-form-pro/?k=773dc97bb3551975db0e32edca1a6d71#purchase', 'admin.php?page=contact_form_pro.php' ),
67
  array( 'captcha-pro\/captcha_pro.php', 'Captcha Pro', 'http://bestwebsoft.com/plugin/captcha-pro/?k=ff7d65e55e5e7f98f219be9ed711094e', 'http://bestwebsoft.com/plugin/captcha-pro/?k=ff7d65e55e5e7f98f219be9ed711094e#purchase', 'admin.php?page=captcha_pro.php' ),
68
+ array( 'updater-pro\/updater_pro.php', 'Updater Pro', 'http://bestwebsoft.com/plugin/updater-pro/?k=cf633acbefbdff78545347fe08a3aecb', 'http://bestwebsoft.com/plugin/updater-pro?k=cf633acbefbdff78545347fe08a3aecb#purchase', 'admin.php?page=updater-pro-options' ),
69
+ array( 'contact-form-to-db-pro\/contact_form_to_db_pro.php', 'Contact Form to DB Pro', 'http://bestwebsoft.com/plugin/contact-form-to-db-pro/?k=6ce5f4a9006ec906e4db643669246c6a', 'http://bestwebsoft.com/plugin/contact-form-to-db-pro/?k=6ce5f4a9006ec906e4db643669246c6a#purchase', 'admin.php?page=cntctfrmtdbpr_settings' )
70
  );
71
  foreach ( $array_plugins_pro as $plugins ) {
72
+ if ( 0 < count( preg_grep( "/".$plugins[0]."/", $active_plugins ) ) ) {
73
+ $array_activate_pro[ $count_activate_pro ]["title"] = $plugins[1];
74
+ $array_activate_pro[ $count_activate_pro ]["link"] = $plugins[2];
75
+ $array_activate_pro[ $count_activate_pro ]["href"] = $plugins[3];
76
+ $array_activate_pro[ $count_activate_pro ]["url"] = $plugins[4];
77
  $count_activate_pro++;
78
+ } else if ( array_key_exists( str_replace( "\\", "", $plugins[0]), $all_plugins ) ) {
79
+ $array_install_pro[ $count_install_pro ]["title"] = $plugins[1];
80
+ $array_install_pro[ $count_install_pro ]["link"] = $plugins[2];
81
+ $array_install_pro[ $count_install_pro ]["href"] = $plugins[3];
82
  $count_install_pro++;
83
  } else {
84
+ $array_recomend_pro[ $count_recomend_pro ]["title"] = $plugins[1];
85
+ $array_recomend_pro[ $count_recomend_pro ]["link"] = $plugins[2];
86
+ $array_recomend_pro[ $count_recomend_pro ]["href"] = $plugins[3];
87
  $count_recomend_pro++;
88
  }
89
  }
118
  else
119
  $memory_limit = __( 'N/A', 'bestwebsoft' );
120
  if ( function_exists( 'memory_get_usage' ) )
121
+ $memory_usage = round( memory_get_usage() / 1024 / 1024, 2 ) . __( ' Mb', 'bestwebsoft' );
122
  else
123
  $memory_usage = __( 'N/A', 'bestwebsoft' );
124
  if ( is_callable( 'exif_read_data' ) )
125
+ $exif_read_data = __( 'Yes', 'bestwebsoft' ) . " ( V" . substr( phpversion( 'exif' ), 0,4 ) . ")" ;
126
  else
127
+ $exif_read_data = __( 'No', 'bestwebsoft' );
128
  if ( is_callable( 'iptcparse' ) )
129
  $iptcparse = __( 'Yes', 'bestwebsoft' );
130
  else
148
  } else
149
  $multisite = __( 'N/A', 'bestwebsoft' );
150
 
151
+ $site_url = get_option( 'siteurl' );
152
+ $home_url = get_option( 'home' );
153
+ $db_version = get_option( 'db_version' );
154
  $system_info = array(
155
+ 'system_info' => '',
156
+ 'active_plugins' => '',
157
+ 'inactive_plugins' => ''
158
  );
159
  $system_info['system_info'] = array(
160
  __( 'Operating System', 'bestwebsoft' ) => PHP_OS,
191
  ( isset( $_REQUEST['bwsmn_form_submit_custom_email'] ) && check_admin_referer( plugin_basename(__FILE__), 'bwsmn_nonce_submit_custom_email' ) ) ) {
192
  if ( isset( $_REQUEST['bwsmn_form_email'] ) ) {
193
  $bwsmn_form_email = trim( $_REQUEST['bwsmn_form_email'] );
194
+ if ( $bwsmn_form_email == "" || !preg_match( "/^((?:[a-z0-9']+(?:[a-z0-9\-_\.']+)?@[a-z0-9]+(?:[a-z0-9\-\.]+)?\.[a-z]{2,5})[, ]*)+$/i", $bwsmn_form_email ) ) {
195
  $error = __( "Please enter a valid email address.", 'bestwebsoft' );
196
  } else {
197
  $email = $bwsmn_form_email;
233
  }
234
  ?><div class="wrap">
235
  <div class="icon32 icon32-bws" id="icon-options-general"></div>
236
+ <h2><?php echo $title; ?></h2>
237
+ <div class="updated fade" <?php if ( ! ( isset( $_REQUEST['bwsmn_form_submit'] ) || isset( $_REQUEST['bwsmn_form_submit_custom_email'] ) ) || $error != "" ) echo "style=\"display:none\""; ?>><p><strong><?php echo $message; ?></strong></p></div>
238
  <div class="error" <?php if ( "" == $error ) echo "style=\"display:none\""; ?>><p><strong><?php echo $error; ?></strong></p></div>
239
  <h3 style="color: blue;"><?php _e( 'Pro plugins', 'bestwebsoft' ); ?></h3>
240
+ <?php if ( 0 < $count_activate_pro ) { ?>
241
  <div style="padding-left:15px;">
242
  <h4><?php _e( 'Activated plugins', 'bestwebsoft' ); ?></h4>
243
  <?php foreach ( $array_activate_pro as $activate_plugin ) { ?>
245
  <?php } ?>
246
  </div>
247
  <?php } ?>
248
+ <?php if ( 0 < $count_install_pro ) { ?>
249
  <div style="padding-left:15px;">
250
  <h4><?php _e( 'Installed plugins', 'bestwebsoft' ); ?></h4>
251
  <?php foreach ( $array_install_pro as $install_plugin) { ?>
253
  <?php } ?>
254
  </div>
255
  <?php } ?>
256
+ <?php if ( 0 < $count_recomend_pro ) { ?>
257
  <div style="padding-left:15px;">
258
  <h4><?php _e( 'Recommended plugins', 'bestwebsoft' ); ?></h4>
259
  <?php foreach ( $array_recomend_pro as $recomend_plugin ) { ?>
263
  <?php } ?>
264
  <br />
265
  <h3 style="color: green"><?php _e( 'Free plugins', 'bestwebsoft' ); ?></h3>
266
+ <?php if ( 0 < $count_activate ) { ?>
267
  <div style="padding-left:15px;">
268
  <h4><?php _e( 'Activated plugins', 'bestwebsoft' ); ?></h4>
269
+ <?php foreach ( $array_activate as $activate_plugin ) { ?>
270
  <div style="float:left; width:200px;"><?php echo $activate_plugin["title"]; ?></div> <p><a href="<?php echo $activate_plugin["link"]; ?>" target="_blank"><?php echo __( "Read more", 'bestwebsoft' ); ?></a> <a href="<?php echo $activate_plugin["url"]; ?>"><?php echo __( "Settings", 'bestwebsoft' ); ?></a></p>
271
  <?php } ?>
272
  </div>
273
  <?php } ?>
274
+ <?php if ( 0 < $count_install ) { ?>
275
  <div style="padding-left:15px;">
276
  <h4><?php _e( 'Installed plugins', 'bestwebsoft' ); ?></h4>
277
  <?php foreach ( $array_install as $install_plugin ) { ?>
279
  <?php } ?>
280
  </div>
281
  <?php } ?>
282
+ <?php if ( 0 < $count_recomend ) { ?>
283
  <div style="padding-left:15px;">
284
  <h4><?php _e( 'Recommended plugins', 'bestwebsoft' ); ?></h4>
285
  <?php foreach ( $array_recomend as $recomend_plugin ) { ?>
contact_form.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: Contact Form Plugin
4
  Plugin URI: http://bestwebsoft.com/plugin/
5
  Description: Plugin for Contact Form.
6
  Author: BestWebSoft
7
- Version: 3.60
8
  Author URI: http://bestwebsoft.com/
9
  License: GPLv2 or later
10
  */
@@ -181,9 +181,16 @@ if( ! function_exists( 'cntctfrm_settings_page' ) ) {
181
  global $cntctfrm_options, $wpdb, $cntctfrm_option_defaults, $wp_version;
182
 
183
  $plugin_info = get_plugin_data( __FILE__ );
184
-
185
  if ( get_option( 'cptch_options' ) )
186
  $cptch_options = get_option( 'cptch_options' );
 
 
 
 
 
 
 
187
 
188
  $userslogin = $wpdb->get_col( "SELECT user_login FROM $wpdb->users ", 0 );
189
 
@@ -301,6 +308,26 @@ if( ! function_exists( 'cntctfrm_settings_page' ) ) {
301
  update_option( 'cptchpr_options', $cptchpr_options, '', 'yes' );
302
  }
303
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
304
 
305
  $cntctfrm_options_submit['cntctfrm_required_name_field'] = isset( $_POST['cntctfrm_required_name_field']) ? 1 : 0;
306
  if ( $cntctfrm_options_submit['cntctfrm_display_address_field'] == 0 ) {
@@ -563,15 +590,15 @@ if( ! function_exists( 'cntctfrm_settings_page' ) ) {
563
  }
564
  if ( array_key_exists( 'captcha/captcha.php', $all_plugins ) || array_key_exists( 'captcha-pro/captcha_pro.php', $all_plugins ) ) {
565
  if ( 0 < count( preg_grep( '/captcha\/captcha.php/', $active_plugins ) ) || 0 < count( preg_grep( '/captcha-pro\/captcha_pro.php/', $active_plugins ) ) ) { ?>
566
- <div>
567
- <input type="checkbox" name="cntctfrm_display_captcha" value="1" <?php if ( ( isset( $cptch_options ) && 1 == $cptch_options["cptch_contact_form"] ) || ( isset( $cptchpr_options ) && 1 == $cptchpr_options["cptchpr_contact_form"] ) ) echo "checked=\"checked\""; ?> />
568
- <label for="cntctfrm_display_captcha"><?php _e( "Captcha", 'contact_form' ); ?></label> <span style="color: #888888;font-size: 10px;">(<?php _e( 'powered by', 'contact_form' ); ?> <a href="http://bestwebsoft.com/plugin/">bestwebsoft.com</a>)</span>
569
- </div>
570
  <?php } else { ?>
571
- <input disabled="disabled" type="checkbox" name="cntctfrm_display_captcha" value="1" <?php if ( ( isset( $cptch_options ) && 1 == $cptch_options["cptch_contact_form"] ) || ( isset( $cptchpr_options ) && 1 == $cptchpr_options["cptchpr_contact_form"] ) ) echo "checked=\"checked\""; ?> /> <label for="cntctfrm_display_captcha"><?php _e( 'Captcha', 'contact_form' ); ?></label> <span style="color: #888888;font-size: 10px;">(<?php _e( 'powered by', 'contact_form' ); ?> <a href="http://bestwebsoft.com/plugin/">bestwebsoft.com</a>) <a href="<?php echo bloginfo("url"); ?>/wp-admin/plugins.php"><?php _e( 'Activate captcha', 'contact_form' ); ?></a></span>
 
572
  <?php }
573
  } else { ?>
574
- <input disabled="disabled" type="checkbox" name="cntctfrm_display_captcha" value="1" /> <label for="cntctfrm_display_captcha"><?php _e( 'Captcha', 'contact_form' ); ?></label> <span style="color: #888888;font-size: 10px;">(<?php _e( 'powered by', 'contact_form' ); ?> <a href="http://bestwebsoft.com/plugin/">bestwebsoft.com</a>) <a href="http://bestwebsoft.com/plugin/captcha-pro/?k=19ac1e9b23bea947cfc4a9b8e3326c03&pn=77&v=<?php echo $plugin_info["Version"]; ?>"><?php _e( 'Download captcha', 'contact_form' ); ?></a></span>
 
575
  <?php } ?>
576
  </td>
577
  </tr>
@@ -590,6 +617,30 @@ if( ! function_exists( 'cntctfrm_settings_page' ) ) {
590
  <input type="checkbox" id="cntctfrm_delete_attached_file" name="cntctfrm_delete_attached_file" value="1" <?php if($cntctfrm_options['cntctfrm_delete_attached_file'] == '1') echo "checked=\"checked\" "; ?>/>
591
  </td>
592
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
593
  <tr valign="top" class="cntctfrm_additions_block <?php if ( $cntctfrm_options['cntctfrm_additions_options'] == '0' ) echo "cntctfrm_hidden"; ?>">
594
  <th scope="row" style="width:200px;"><?php _e( "Display 'Send me a copy' block", 'contact_form' ); ?> </th>
595
  <td colspan="2">
4
  Plugin URI: http://bestwebsoft.com/plugin/
5
  Description: Plugin for Contact Form.
6
  Author: BestWebSoft
7
+ Version: 3.61
8
  Author URI: http://bestwebsoft.com/
9
  License: GPLv2 or later
10
  */
181
  global $cntctfrm_options, $wpdb, $cntctfrm_option_defaults, $wp_version;
182
 
183
  $plugin_info = get_plugin_data( __FILE__ );
184
+ /* Get Captcha options */
185
  if ( get_option( 'cptch_options' ) )
186
  $cptch_options = get_option( 'cptch_options' );
187
+ if ( get_option( 'cptchpr_options' ) )
188
+ $cptchpr_options = get_option( 'cptchpr_options' );
189
+ /* Get Contact Form to DB options */
190
+ if ( get_option( 'cntctfrmtdb_options' ) )
191
+ $cntctfrmtdb_options = get_option( 'cntctfrmtdb_options' );
192
+ if ( get_option( 'cntctfrmtdbpr_options' ) )
193
+ $cntctfrmtdbpr_options = get_option( 'cntctfrmtdbpr_options' );
194
 
195
  $userslogin = $wpdb->get_col( "SELECT user_login FROM $wpdb->users ", 0 );
196
 
308
  update_option( 'cptchpr_options', $cptchpr_options, '', 'yes' );
309
  }
310
  }
311
+
312
+ if ( isset( $_POST['cntctfrm_save_email_to_db'] ) ) {
313
+ if ( get_option( 'cntctfrmtdb_options' ) ) {
314
+ $cntctfrmtdb_options['cntctfrmtdb_save_messages_to_db'] = 1;
315
+ update_option( 'cntctfrmtdb_options', $cntctfrmtdb_options, '', 'yes' );
316
+ }
317
+ if ( get_option( 'cntctfrmtdbpr_options' ) ) {
318
+ $cntctfrmtdbpr_options['save_messages_to_db'] = 1;
319
+ update_option( 'cntctfrmtdbpr_options', $cntctfrmtdbpr_options, '', 'yes' );
320
+ }
321
+ } else {
322
+ if ( get_option( 'cntctfrmtdb_options' ) ) {
323
+ $cntctfrmtdb_options['cntctfrmtdb_save_messages_to_db'] = 0;
324
+ update_option( 'cntctfrmtdb_options', $cntctfrmtdb_options, '', 'yes' );
325
+ }
326
+ if ( get_option( 'cntctfrmtdbpr_options' ) ) {
327
+ $cntctfrmtdbpr_options['save_messages_to_db'] = 0;
328
+ update_option( 'cntctfrmtdbpr_options', $cntctfrmtdbpr_options, '', 'yes' );
329
+ }
330
+ }
331
 
332
  $cntctfrm_options_submit['cntctfrm_required_name_field'] = isset( $_POST['cntctfrm_required_name_field']) ? 1 : 0;
333
  if ( $cntctfrm_options_submit['cntctfrm_display_address_field'] == 0 ) {
590
  }
591
  if ( array_key_exists( 'captcha/captcha.php', $all_plugins ) || array_key_exists( 'captcha-pro/captcha_pro.php', $all_plugins ) ) {
592
  if ( 0 < count( preg_grep( '/captcha\/captcha.php/', $active_plugins ) ) || 0 < count( preg_grep( '/captcha-pro\/captcha_pro.php/', $active_plugins ) ) ) { ?>
593
+ <input type="checkbox" name="cntctfrm_display_captcha" value="1" <?php if ( ( isset( $cptch_options ) && 1 == $cptch_options["cptch_contact_form"] ) || ( isset( $cptchpr_options ) && 1 == $cptchpr_options["cptchpr_contact_form"] ) ) echo "checked=\"checked\""; ?> />
594
+ <label for="cntctfrm_display_captcha"><?php _e( "Captcha", 'contact_form' ); ?></label> <span style="color: #888888;font-size: 10px;">(<?php _e( 'powered by', 'contact_form' ); ?> <a href="http://bestwebsoft.com/plugin/">bestwebsoft.com</a>)</span>
 
 
595
  <?php } else { ?>
596
+ <input disabled="disabled" type="checkbox" name="cntctfrm_display_captcha" value="1" <?php if ( ( isset( $cptch_options ) && 1 == $cptch_options["cptch_contact_form"] ) || ( isset( $cptchpr_options ) && 1 == $cptchpr_options["cptchpr_contact_form"] ) ) echo "checked=\"checked\""; ?> />
597
+ <label for="cntctfrm_display_captcha"><?php _e( 'Captcha', 'contact_form' ); ?></label> <span style="color: #888888;font-size: 10px;">(<?php _e( 'powered by', 'contact_form' ); ?> <a href="http://bestwebsoft.com/plugin/">bestwebsoft.com</a>) <a href="<?php echo bloginfo("url"); ?>/wp-admin/plugins.php"><?php _e( 'Activate captcha', 'contact_form' ); ?></a></span>
598
  <?php }
599
  } else { ?>
600
+ <input disabled="disabled" type="checkbox" name="cntctfrm_display_captcha" value="1" />
601
+ <label for="cntctfrm_display_captcha"><?php _e( 'Captcha', 'contact_form' ); ?></label> <span style="color: #888888;font-size: 10px;">(<?php _e( 'powered by', 'contact_form' ); ?> <a href="http://bestwebsoft.com/plugin/">bestwebsoft.com</a>) <a href="http://bestwebsoft.com/plugin/captcha-pro/?k=19ac1e9b23bea947cfc4a9b8e3326c03&pn=77&v=<?php echo $plugin_info["Version"]; ?>"><?php _e( 'Download captcha', 'contact_form' ); ?></a></span>
602
  <?php } ?>
603
  </td>
604
  </tr>
617
  <input type="checkbox" id="cntctfrm_delete_attached_file" name="cntctfrm_delete_attached_file" value="1" <?php if($cntctfrm_options['cntctfrm_delete_attached_file'] == '1') echo "checked=\"checked\" "; ?>/>
618
  </td>
619
  </tr>
620
+ <tr valign="top" class="cntctfrm_additions_block <?php if ( $cntctfrm_options['cntctfrm_additions_options'] == '0' ) echo "cntctfrm_hidden"; ?>">
621
+ <th scope="row" style="width:200px;"><?php _e( "Save emails to the database", 'contact_form' ); ?> </th>
622
+ <td colspan="2">
623
+ <?php $all_plugins = get_plugins();
624
+ if ( is_multisite() ) {
625
+ $active_plugins = (array) array_keys( get_site_option( 'active_sitewide_plugins', array() ) );
626
+ $active_plugins = array_merge( $active_plugins , get_option( 'active_plugins' ) );
627
+ } else {
628
+ $active_plugins = get_option( 'active_plugins' );
629
+ }
630
+ if ( array_key_exists( 'contact-form-to-db/contact_form_to_db.php', $all_plugins ) || array_key_exists( 'contact-form-to-db-pro/contact_form_to_db_pro.php', $all_plugins ) ) {
631
+ if ( 0 < count( preg_grep( '/contact-form-to-db\/contact_form_to_db.php/', $active_plugins ) ) || 0 < count( preg_grep( '/contact-form-to-db-pro\/contact_form_to_db_pro.php/', $active_plugins ) ) ) { ?>
632
+ <input type="checkbox" name="cntctfrm_save_email_to_db" value="1" <?php if ( ( isset( $cntctfrmtdb_options ) && 1 == $cntctfrmtdb_options["cntctfrmtdb_save_messages_to_db"] ) || ( isset( $cntctfrmtdbpr_options ) && 1 == $cntctfrmtdbpr_options["save_messages_to_db"] ) ) echo "checked=\"checked\""; ?> />
633
+ <span style="color: #888888;font-size: 10px;"> (<?php _e( 'Using Contact Form to DB powered by', 'contact_form' ); ?> <a href="http://bestwebsoft.com/plugin/">bestwebsoft.com</a>)</span>
634
+ <?php } else { ?>
635
+ <input disabled="disabled" type="checkbox" name="cntctfrm_save_email_to_db" value="1" <?php if ( ( isset( $cntctfrmtdb_options ) && 1 == $cntctfrmtdb_options["cntctfrmtdb_save_messages_to_db"] ) || ( isset( $cntctfrmtdbpr_options ) && 1 == $cntctfrmtdbpr_options["save_messages_to_db"] ) ) echo "checked=\"checked\""; ?> />
636
+ <span style="color: #888888;font-size: 10px;">(<?php _e( 'Using Contact Form to DB powered by', 'contact_form' ); ?> <a href="http://bestwebsoft.com/plugin/">bestwebsoft.com</a>) <a href="<?php echo bloginfo("url"); ?>/wp-admin/plugins.php"><?php _e( 'Activate Contact Form to DB', 'contact_form' ); ?></a></span>
637
+ <?php }
638
+ } else { ?>
639
+ <input disabled="disabled" type="checkbox" name="cntctfrm_save_email_to_db" value="1" />
640
+ <span style="color: #888888;font-size: 10px;">(<?php _e( 'Using Contact Form to DB powered by', 'contact_form' ); ?> <a href="http://bestwebsoft.com/plugin/">bestwebsoft.com</a>) <a href="http://bestwebsoft.com/plugin/contact-form-to-db-pro/?k=19d806f45d866e70545de83169b274f2&pn=77&v=<?php echo $plugin_info["Version"]; ?>"><?php _e( 'Download Contact Form to DB', 'contact_form' ); ?></a></span>
641
+ <?php } ?>
642
+ </td>
643
+ </tr>
644
  <tr valign="top" class="cntctfrm_additions_block <?php if ( $cntctfrm_options['cntctfrm_additions_options'] == '0' ) echo "cntctfrm_hidden"; ?>">
645
  <th scope="row" style="width:200px;"><?php _e( "Display 'Send me a copy' block", 'contact_form' ); ?> </th>
646
  <td colspan="2">
css/style.css CHANGED
@@ -4,7 +4,8 @@
4
  .admin-color-classic #adminmenu #toplevel_page_bws_plugins div.wp-menu-image {
5
  background: url("../images/icon_16_b.png") no-repeat scroll center center transparent;
6
  }
7
- #adminmenu #toplevel_page_bws_plugins:hover div.wp-menu-image,#adminmenu #toplevel_page_bws_plugins.wp-has-current-submenu div.wp-menu-image {
 
8
  background: url("../images/icon_16_c.png") no-repeat scroll center center transparent;
9
  }
10
  .wrap #icon-options-general.icon32-bws {
@@ -20,7 +21,7 @@
20
  width: 850px;
21
  }
22
  .bws_system_info_meta_box .hndle {
23
- cursor: pointer;
24
  }
25
  .bws_system_info {
26
  float: left;
@@ -35,10 +36,13 @@
35
  .bws_system_info tbody td {
36
  border-bottom: 1px solid #DFDFDF;
37
  }
38
-
39
- .bws-plugins_page_contact_form input[type="checkbox"], .bws-plugins_page_contact_form input[type="radio"]{
40
- position:relative;
41
- top:-2px
 
 
 
42
  }
43
  #cntctfrm_contact_form input.text,
44
  #cntctfrm_contact_form textarea,
@@ -46,12 +50,12 @@
46
  #cntctfrm_contact_name,
47
  #cntctfrm_contact_email,
48
  #cntctfrm_contact_subject {
49
- width:320px;
50
  }
51
  .cntctfrm_info {
52
  color: rgb(136, 136, 136);
53
  font-size: 10px;
54
- clear:both;
55
  }
56
  #cntctfrm_contact_attachment {
57
  margin-bottom:0;
@@ -59,11 +63,12 @@
59
  .cntctfrm_change_label_block input, .cntctfrm_action_after_send_block input {
60
  margin: 1px 0;
61
  }
62
- .cntctfrm_change_label_block input[type="text"], .cntctfrm_action_after_send_block input[type="text"] {
 
63
  width: 300px;
64
  }
65
  .cntctfrm_action_after_send_block input[type="text"] {
66
- width:250px;
67
  }
68
  .widget-container #cntctfrm_contact_form input.text,
69
  .widget-container #cntctfrm_contact_form textarea,
@@ -76,25 +81,25 @@
76
  .textwidget #cntctfrm_contact_message,
77
  .textwidgetr #cntctfrm_contact_name,
78
  .textwidget #cntctfrm_contact_email,
79
- .textwidget #cntctfrm_contact_subject{
80
  width: 200px !important;
81
  }
82
- .cntctfrm_label_language_tab{
83
  float: left;
84
- padding:2px 5px;
85
  border-radius: 4px 4px 0px 0px;
86
- border:1px solid #DFDFDF;
87
  background: url("../images/gray-grad.png") repeat-x scroll left top #DFDFDF;
88
  cursor: pointer;
89
- margin-right:3px;
90
  }
91
- .cntctfrm_language_tab{
92
- border:1px solid #DFDFDF;
93
  }
94
- .cntctfrm_active{
95
- color:#21759B;
96
  }
97
- .cntctfrm_delete{
98
  color: red;
99
  display: block;
100
  float: right;
@@ -117,7 +122,7 @@
117
  }
118
  #cntctfrmpr_pro_version {
119
  background: none repeat scroll 0 0 #E0E0E0;
120
- border: 1px solid #AAAAAA;
121
  padding-left: 10px;
122
  margin-top: 50px;
123
  }
@@ -143,7 +148,7 @@
143
  .cntctfrmpr_hidden_help_text {
144
  background: #F4F4F4;
145
  border: 1px solid #DCDCDC;
146
- border-radius: 4px 4px 4px 4px;
147
  left: 40px;
148
  padding: 5px 10px;
149
  position: absolute;
@@ -158,7 +163,7 @@
158
  }
159
  #cntctfrmpr_right_table #cntctfrmpr_contact_form input.text,
160
  #cntctfrmpr_right_table #cntctfrmpr_contact_form textarea {
161
- width:320px;
162
  float: left;
163
  }
164
  #cntctfrmpr_contact_form div {
@@ -167,7 +172,7 @@
167
  .cntctfrmpr_info {
168
  color: rgb(136, 136, 136);
169
  font-size: 10px;
170
- clear:both;
171
  }
172
  #cntctfrmpr_shortcode {
173
  width: 330px;
@@ -184,6 +189,9 @@
184
  white-space:nowrap;
185
  background: #EAEAEA;
186
  }
 
 
 
187
  .cntctfrmpr_pro_version_tooltip:before {
188
  content: url("../images/arrow.png");
189
  height: 0;
@@ -193,9 +201,9 @@
193
  width: 0;
194
  }
195
  .cntctfrmpr_pro_version_tooltip {
196
- background: none repeat scroll 0 0 #FFFFFF;
197
- border: 1px solid #AAAAAA;
198
- border-radius: 5px 5px 5px 5px;
199
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
200
  float: right;
201
  height: 20px;
@@ -213,9 +221,9 @@
213
  width: 0;
214
  }
215
  .cntctfrmpr_pro_version_tooltip_settings {
216
- background: none repeat scroll 0 0 #FFFFFF;
217
- border: 1px solid #AAAAAA;
218
- border-radius: 5px 5px 5px 5px;
219
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
220
  float: right;
221
  left: 800px;
@@ -226,19 +234,19 @@
226
  width: 555px;
227
  }
228
  .cntctfrm_message {
229
- min-width:800px;
230
- border:1px solid #1b6394;
231
- padding:5px;
232
- margin:12px 0;
233
- background:#2484c6;
234
- -moz-border-radius:3px;
235
- border-radius:3px;
236
- -webkit-border-radius:3px;
237
- position:relative;
238
- overflow:hidden
239
  }
240
  .cntctfrm_message .cntctfrm_text {
241
- color:#FFF;
242
  font-size: 15px;
243
  line-height: 26px;
244
  margin-top: 8px;
@@ -248,34 +256,34 @@
248
  font-size: 12px;
249
  opacity: 0.7;
250
  }
251
- .cntctfrm_message .cntctfrm_button{
252
  float: right;
253
- border:1px solid #14496d;
254
- font-size:14px;
255
  margin: 10px;
256
- padding:12px 0;
257
- color:#FFF;
258
  text-shadow: 0 1px 3px #2483c5;
259
  font-weight: bold;
260
- background:#17537e;
261
- -moz-border-radius:3px;
262
- border-radius:3px;
263
- -webkit-border-radius:3px;
264
- text-decoration:none;
265
  height: 50px;
266
  text-align: center;
267
  width: 147px;
268
- -moz-box-shadow:0px 1px 1px 0 #3e7aa3 inset;
269
- -webkit-box-shadow:0px 1px 1px 0 #3e7aa3 inset;
270
- box-shadow:0px 1px 1px 0 #3e7aa3 inset;
271
  }
272
  .cntctfrm_message .cntctfrm_button:hover,
273
  .cntctfrm_message .cntctfrm_button:focus {
274
- background:#2b9eed;
275
- color:#FFF;
276
- border:1px solid #1d6ca1;
277
- -moz-box-shadow:0px 1px 1px 0 #4bacf0 inset;
278
- -webkit-box-shadow:0px 1px 1px 0 #4bacf0 inset;
279
  box-shadow: 0px 1px 1px 0 #4bacf0 inset;
280
  }
281
  .cntctfrm_message .cntctfrm_icon {
4
  .admin-color-classic #adminmenu #toplevel_page_bws_plugins div.wp-menu-image {
5
  background: url("../images/icon_16_b.png") no-repeat scroll center center transparent;
6
  }
7
+ #adminmenu #toplevel_page_bws_plugins:hover div.wp-menu-image,
8
+ #adminmenu #toplevel_page_bws_plugins.wp-has-current-submenu div.wp-menu-image {
9
  background: url("../images/icon_16_c.png") no-repeat scroll center center transparent;
10
  }
11
  .wrap #icon-options-general.icon32-bws {
21
  width: 850px;
22
  }
23
  .bws_system_info_meta_box .hndle {
24
+ cursor: pointer !important;
25
  }
26
  .bws_system_info {
27
  float: left;
36
  .bws_system_info tbody td {
37
  border-bottom: 1px solid #DFDFDF;
38
  }
39
+ /*
40
+ * styles for settings page
41
+ */
42
+ .bws-plugins_page_contact_form input[type="checkbox"],
43
+ .bws-plugins_page_contact_form input[type="radio"] {
44
+ position: relative;
45
+ top: -2px
46
  }
47
  #cntctfrm_contact_form input.text,
48
  #cntctfrm_contact_form textarea,
50
  #cntctfrm_contact_name,
51
  #cntctfrm_contact_email,
52
  #cntctfrm_contact_subject {
53
+ width: 320px;
54
  }
55
  .cntctfrm_info {
56
  color: rgb(136, 136, 136);
57
  font-size: 10px;
58
+ clear: both;
59
  }
60
  #cntctfrm_contact_attachment {
61
  margin-bottom:0;
63
  .cntctfrm_change_label_block input, .cntctfrm_action_after_send_block input {
64
  margin: 1px 0;
65
  }
66
+ .cntctfrm_change_label_block input[type="text"],
67
+ .cntctfrm_action_after_send_block input[type="text"] {
68
  width: 300px;
69
  }
70
  .cntctfrm_action_after_send_block input[type="text"] {
71
+ width: 250px;
72
  }
73
  .widget-container #cntctfrm_contact_form input.text,
74
  .widget-container #cntctfrm_contact_form textarea,
81
  .textwidget #cntctfrm_contact_message,
82
  .textwidgetr #cntctfrm_contact_name,
83
  .textwidget #cntctfrm_contact_email,
84
+ .textwidget #cntctfrm_contact_subject {
85
  width: 200px !important;
86
  }
87
+ .cntctfrm_label_language_tab {
88
  float: left;
89
+ padding: 2px 5px;
90
  border-radius: 4px 4px 0px 0px;
91
+ border: 1px solid #DFDFDF;
92
  background: url("../images/gray-grad.png") repeat-x scroll left top #DFDFDF;
93
  cursor: pointer;
94
+ margin-right: 3px;
95
  }
96
+ .cntctfrm_language_tab {
97
+ border: 1px solid #DFDFDF;
98
  }
99
+ .cntctfrm_active {
100
+ color: #21759B;
101
  }
102
+ .cntctfrm_delete {
103
  color: red;
104
  display: block;
105
  float: right;
122
  }
123
  #cntctfrmpr_pro_version {
124
  background: none repeat scroll 0 0 #E0E0E0;
125
+ border: 1px solid #AAA;
126
  padding-left: 10px;
127
  margin-top: 50px;
128
  }
148
  .cntctfrmpr_hidden_help_text {
149
  background: #F4F4F4;
150
  border: 1px solid #DCDCDC;
151
+ border-radius: 4px;
152
  left: 40px;
153
  padding: 5px 10px;
154
  position: absolute;
163
  }
164
  #cntctfrmpr_right_table #cntctfrmpr_contact_form input.text,
165
  #cntctfrmpr_right_table #cntctfrmpr_contact_form textarea {
166
+ width: 320px;
167
  float: left;
168
  }
169
  #cntctfrmpr_contact_form div {
172
  .cntctfrmpr_info {
173
  color: rgb(136, 136, 136);
174
  font-size: 10px;
175
+ clear: both;
176
  }
177
  #cntctfrmpr_shortcode {
178
  width: 330px;
189
  white-space:nowrap;
190
  background: #EAEAEA;
191
  }
192
+ /*
193
+ * styles for pro_version settings, banner and tooltip
194
+ */
195
  .cntctfrmpr_pro_version_tooltip:before {
196
  content: url("../images/arrow.png");
197
  height: 0;
201
  width: 0;
202
  }
203
  .cntctfrmpr_pro_version_tooltip {
204
+ background: none repeat scroll 0 0 #FFF;
205
+ border: 1px solid #AAA;
206
+ border-radius: 5px;
207
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
208
  float: right;
209
  height: 20px;
221
  width: 0;
222
  }
223
  .cntctfrmpr_pro_version_tooltip_settings {
224
+ background: none repeat scroll 0 0 #FFF;
225
+ border: 1px solid #AAA;
226
+ border-radius: 5px;
227
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
228
  float: right;
229
  left: 800px;
234
  width: 555px;
235
  }
236
  .cntctfrm_message {
237
+ min-width: 800px;
238
+ border: 1px solid #1b6394;
239
+ padding: 5px;
240
+ margin: 12px 0;
241
+ background: #2484c6;
242
+ -moz-border-radius: 3px;
243
+ border-radius: 3px;
244
+ -webkit-border-radius: 3px;
245
+ position: relative;
246
+ overflow: hidden
247
  }
248
  .cntctfrm_message .cntctfrm_text {
249
+ color: #FFF;
250
  font-size: 15px;
251
  line-height: 26px;
252
  margin-top: 8px;
256
  font-size: 12px;
257
  opacity: 0.7;
258
  }
259
+ .cntctfrm_message .cntctfrm_button {
260
  float: right;
261
+ border: 1px solid #14496d;
262
+ font-size: 14px;
263
  margin: 10px;
264
+ padding: 12px 0;
265
+ color: #FFF;
266
  text-shadow: 0 1px 3px #2483c5;
267
  font-weight: bold;
268
+ background: #17537e;
269
+ -moz-border-radius : 3px;
270
+ border-radius: 3px;
271
+ -webkit-border-radius: 3px;
272
+ text-decoration: none;
273
  height: 50px;
274
  text-align: center;
275
  width: 147px;
276
+ -moz-box-shadow: 0px 1px 1px 0 #3e7aa3 inset;
277
+ -webkit-box-shadow: 0px 1px 1px 0 #3e7aa3 inset;
278
+ box-shadow: 0px 1px 1px 0 #3e7aa3 inset;
279
  }
280
  .cntctfrm_message .cntctfrm_button:hover,
281
  .cntctfrm_message .cntctfrm_button:focus {
282
+ background: #2b9eed;
283
+ color: #FFF;
284
+ border: 1px solid #1d6ca1;
285
+ -moz-box-shadow: 0px 1px 1px 0 #4bacf0 inset;
286
+ -webkit-box-shadow: 0px 1px 1px 0 #4bacf0 inset;
287
  box-shadow: 0px 1px 1px 0 #4bacf0 inset;
288
  }
289
  .cntctfrm_message .cntctfrm_icon {
js/bws_menu.js CHANGED
@@ -1,20 +1,22 @@
1
  (function($) {
2
- $(document).ready(function(){
3
- if ( $('input[name="bwsmn_form_email"]').val() == '' )
4
- $('.bws_system_info_meta_box .inside').css('display','none');
 
5
 
6
- $('.bws_system_info_meta_box .hndle').click( function(){
7
- if ( $('.bws_system_info_meta_box .inside').is(":visible") ) {
8
- $('.bws_system_info_meta_box .inside').css('display','none');
9
  } else {
10
- $('.bws_system_info_meta_box .inside').css('display','block');
11
  }
12
  });
13
- $('.bws_system_info_meta_box .handlediv').click( function(){
14
- if ( $('.bws_system_info_meta_box .inside').is(":visible") ) {
15
- $('.bws_system_info_meta_box .inside').css('display','none');
 
16
  } else {
17
- $('.bws_system_info_meta_box .inside').css('display','block');
18
  }
19
  });
20
  });
1
  (function($) {
2
+ $(document).ready( function() {
3
+ if ( $( 'input[name="bwsmn_form_email"]' ).val() == '' ) {
4
+ $( '.bws_system_info_meta_box .inside' ).css( 'display', 'none' );
5
+ }
6
 
7
+ $( '.bws_system_info_meta_box .hndle' ).click( function() {
8
+ if ( $( '.bws_system_info_meta_box .inside' ).is( ':visible' ) ) {
9
+ $( '.bws_system_info_meta_box .inside' ).css( 'display', 'none' );
10
  } else {
11
+ $( '.bws_system_info_meta_box .inside' ).css( 'display', 'block' );
12
  }
13
  });
14
+
15
+ $( '.bws_system_info_meta_box .handlediv' ).click( function() {
16
+ if ( $( '.bws_system_info_meta_box .inside' ).is( ':visible' ) ) {
17
+ $( '.bws_system_info_meta_box .inside' ).css( 'display', 'none' );
18
  } else {
19
+ $( '.bws_system_info_meta_box .inside' ).css( 'display', 'block' );
20
  }
21
  });
22
  });
js/script.js CHANGED
@@ -1,121 +1,124 @@
1
- (function($){
2
- $(document).ready(function(){
3
- $('#cntctfrm_additions_options').change( function() {
4
- if($(this).is(':checked') )
5
- $('.cntctfrm_additions_block').removeClass('cntctfrm_hidden');
6
- else
7
- $('.cntctfrm_additions_block').addClass('cntctfrm_hidden');
 
8
  });
9
- $('#cntctfrm_change_label').change( function() {
10
- if($(this).is(':checked') )
11
- $('.cntctfrm_change_label_block').removeClass('cntctfrm_hidden');
12
- else
13
- $('.cntctfrm_change_label_block').addClass('cntctfrm_hidden');
 
14
  });
15
- $('#cntctfrm_display_add_info').change( function() {
16
- if($(this).is(':checked') )
17
- $('.cntctfrm_display_add_info_block').removeClass('cntctfrm_hidden');
18
- else
19
- $('.cntctfrm_display_add_info_block').addClass('cntctfrm_hidden');
 
20
  });
21
- $('#cntctfrm_add_language_button').click(function(){
22
  $.ajax({
23
- url: '../wp-admin/admin-ajax.php',//update_url,
24
  type: "POST",
25
- data: "action=cntctfrm_add_language&lang="+$('#cntctfrm_languages').val(),
26
- success: function(result) {
27
- var lang_val = $('#cntctfrm_languages').val();
28
- $('.cntctfrm_change_label_block .cntctfrm_language_tab, .cntctfrm_action_after_send_block .cntctfrm_language_tab').each(function(){
29
- $(this).addClass('hidden');
30
  });
31
- $('.cntctfrm_change_label_block .cntctfrm_language_tab').first().clone().appendTo(".cntctfrm_change_label_block").removeClass('hidden').removeClass('cntctfrm_tab_en').addClass('cntctfrm_tab_'+lang_val);
32
- $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').first().clone().insertBefore("#cntctfrm_before").removeClass('hidden').removeClass('cntctfrm_tab_en').addClass('cntctfrm_tab_'+lang_val);
33
- $('.cntctfrm_change_label_block .cntctfrm_language_tab').last().find('input').each(function(){
34
- $(this).val('');
35
- $(this).attr('name', $(this).attr('name').replace('[en]', '['+lang_val+']'));
36
  });
37
- var text = $('.cntctfrm_change_label_block .cntctfrm_language_tab').last().find('.cntctfrm_info').last().text();
38
- text = text.replace('lang=en', 'lang='+lang_val);
39
- text = text.replace(' or [contact_form]', '');
40
- $('.cntctfrm_change_label_block .cntctfrm_language_tab').last().find('.cntctfrm_info').last().text(text);
41
- $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').last().find('input').val('').attr('name', $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').last().find('input').attr('name').replace('[en]', '['+lang_val+']'));
42
- text = $('.cntctfrm_change_label_block .cntctfrm_language_tab').last().find('.cntctfrm_info').last().text();
43
- text = text.replace('lang=en', 'lang='+lang_val);
44
- text = text.replace(' or [contact_form]', '');
45
- $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').last().find('.cntctfrm_info').last().text(text);
46
- $('.cntctfrm_change_label_block .cntctfrm_label_language_tab, .cntctfrm_action_after_send_block .cntctfrm_label_language_tab').each(function(){
47
- $(this).removeClass('cntctfrm_active');
48
  });
49
- $('.cntctfrm_change_label_block .clear').prev().clone().attr('id','cntctfrm_label_'+lang_val).addClass('cntctfrm_active').html($('#cntctfrm_languages option:selected').text()+' <span class="cntctfrm_delete" rel="'+lang_val+'">X</span>').insertBefore('.cntctfrm_change_label_block .clear');
50
- $('.cntctfrm_action_after_send_block .clear').prev().clone().attr('id','cntctfrm_label_'+lang_val).addClass('cntctfrm_active').html($('#cntctfrm_languages option:selected').text()+' <span class="cntctfrm_delete" rel="'+lang_val+'">X</span>').insertBefore('.cntctfrm_action_after_send_block .clear');
51
- $('#cntctfrm_languages option:selected').remove();
52
  },
53
  error: function( request, status, error ) {
54
  alert( error + request.status );
55
  }
56
  });
57
  });
58
- $('.cntctfrm_language_tab_block').css('display', 'none');
59
- $('.cntctfrm_language_tab_block_mini').css('display', 'block');
60
- $('.cntctfrmpr_help_box').mouseover(function(){
61
- $(this).children().css('display', 'block');
62
  });
63
- $('.cntctfrmpr_help_box').mouseout(function(){
64
- $(this).children().css('display', 'none');
65
  });
66
  });
67
- $(document).on("click", ".cntctfrm_language_tab_block_mini", function(){
68
- if( $('.cntctfrm_language_tab_block').css('display') == 'none' ) {
69
- $('.cntctfrm_language_tab_block').css('display', 'block');
70
- $('.cntctfrm_language_tab_block_mini').css('background-position', '1px -3px');
71
- }else{
72
- $('.cntctfrm_language_tab_block').css('display', 'none');
73
- $('.cntctfrm_language_tab_block_mini').css('background-position', '');
74
  }
75
  });
76
- $(document).on("click", ".cntctfrm_change_label_block .cntctfrm_label_language_tab", function(){
77
- $('.cntctfrm_label_language_tab').each(function(){
78
- $(this).removeClass('cntctfrm_active');
79
  });
80
- var index = $('.cntctfrm_change_label_block .cntctfrm_label_language_tab').index($(this));
81
- $(this).addClass('cntctfrm_active');
82
- var blocks = $('.cntctfrm_action_after_send_block .cntctfrm_label_language_tab');
83
- $(blocks[index]).addClass('cntctfrm_active');
84
- $('.cntctfrm_language_tab').each(function(){
85
- $(this).addClass('hidden');
86
  });
87
- $('.'+this.id.replace('label', 'tab')).removeClass('hidden');
88
  });
89
- $(document).on("click", ".cntctfrm_action_after_send_block .cntctfrm_label_language_tab", function(){
90
- $('.cntctfrm_label_language_tab').each(function(){
91
- $(this).removeClass('cntctfrm_active');
92
  });
93
- var index = $('.cntctfrm_action_after_send_block .cntctfrm_label_language_tab').index($(this));
94
- $(this).addClass('cntctfrm_active');
95
- var blocks = $('.cntctfrm_change_label_block .cntctfrm_label_language_tab')
96
- $(blocks[index]).addClass('cntctfrm_active');
97
- $('.cntctfrm_language_tab').each(function(){
98
- $(this).addClass('hidden');
99
  });
100
- console.log(this.id.replace('text', 'tab'), index);
101
- $('.'+this.id.replace('text', 'tab')).removeClass('hidden');
102
  });
103
- $(document).on("click", ".cntctfrm_delete", function( event ){
104
  event.stopPropagation();
105
  if ( confirm( confirm_text ) ) {
106
- var lang = $(this).attr('rel');
107
  $.ajax({
108
- url: '../wp-admin/admin-ajax.php',//update_url,
109
  type: "POST",
110
  data: "action=cntctfrm_remove_language&lang="+lang,
111
- success: function(result) {
112
- $('#cntctfrm_label_'+lang+', #cntctfrm_text_'+lang+', .cntctfrm_tab_'+lang).each(function(){
113
- $(this).remove();
114
  });
115
- $('.cntctfrm_change_label_block .cntctfrm_label_language_tab').removeClass('cntctfrm_active').first().addClass('cntctfrm_active');
116
- $('.cntctfrm_action_after_send_block .cntctfrm_label_language_tab').removeClass('cntctfrm_active').first().addClass('cntctfrm_active');
117
- $('.cntctfrm_change_label_block .cntctfrm_language_tab').addClass('hidden').first().removeClass('hidden');
118
- $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').addClass('hidden').first().removeClass('hidden');
119
  },
120
  error: function( request, status, error ) {
121
  alert( error + request.status );
1
+ (function($) {
2
+ $(document).ready( function() {
3
+ $( '#cntctfrm_additions_options' ).change( function() {
4
+ if ( $( this ).is( ':checked' ) ) {
5
+ $( '.cntctfrm_additions_block' ).removeClass( 'cntctfrm_hidden' );
6
+ } else {
7
+ $( '.cntctfrm_additions_block' ).addClass( 'cntctfrm_hidden' );
8
+ }
9
  });
10
+ $( '#cntctfrm_change_label' ).change( function() {
11
+ if ( $( this ).is( ':checked' ) ) {
12
+ $( '.cntctfrm_change_label_block' ).removeClass( 'cntctfrm_hidden' );
13
+ } else {
14
+ $( '.cntctfrm_change_label_block' ).addClass( 'cntctfrm_hidden' );
15
+ }
16
  });
17
+ $( '#cntctfrm_display_add_info' ).change( function() {
18
+ if ( $( this ).is( ':checked' ) ) {
19
+ $( '.cntctfrm_display_add_info_block' ).removeClass( 'cntctfrm_hidden' );
20
+ } else {
21
+ $( '.cntctfrm_display_add_info_block' ).addClass( 'cntctfrm_hidden' );
22
+ }
23
  });
24
+ $( '#cntctfrm_add_language_button' ).click( function() {
25
  $.ajax({
26
+ url: '../wp-admin/admin-ajax.php',/* update_url, */
27
  type: "POST",
28
+ data: "action=cntctfrm_add_language&lang=" + $( '#cntctfrm_languages' ).val(),
29
+ success: function( result ) {
30
+ var lang_val = $( '#cntctfrm_languages' ).val();
31
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab, .cntctfrm_action_after_send_block .cntctfrm_language_tab' ).each( function() {
32
+ $( this ).addClass( 'hidden' );
33
  });
34
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).first().clone().appendTo( '.cntctfrm_change_label_block' ).removeClass( 'hidden' ).removeClass( 'cntctfrm_tab_en' ).addClass( 'cntctfrm_tab_' + lang_val );
35
+ $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).first().clone().insertBefore( '#cntctfrm_before' ).removeClass( 'hidden' ).removeClass( 'cntctfrm_tab_en' ).addClass( 'cntctfrm_tab_' + lang_val );
36
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).last().find( 'input' ).each( function() {
37
+ $( this ).val( '' );
38
+ $( this ).attr( 'name', $( this ).attr( 'name' ).replace( '[en]', '[' + lang_val + ']' ) );
39
  });
40
+ var text = $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).last().find( '.cntctfrm_info' ).last().text();
41
+ text = text.replace( 'lang=en', 'lang=' + lang_val );
42
+ text = text.replace( ' or [contact_form]', '' );
43
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).last().find( '.cntctfrm_info' ).last().text( text );
44
+ $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).last().find( 'input' ).val( '' ).attr( 'name', $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).last().find( 'input' ).attr( 'name' ).replace( '[en]', '[' + lang_val + ']' ) );
45
+ text = $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).last().find( '.cntctfrm_info' ).last().text();
46
+ text = text.replace( 'lang=en', 'lang=' + lang_val );
47
+ text = text.replace( ' or [contact_form]', '' );
48
+ $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).last().find( '.cntctfrm_info' ).last().text( text );
49
+ $( '.cntctfrm_change_label_block .cntctfrm_label_language_tab, .cntctfrm_action_after_send_block .cntctfrm_label_language_tab' ).each( function() {
50
+ $( this ).removeClass( 'cntctfrm_active' );
51
  });
52
+ $( '.cntctfrm_change_label_block .clear' ).prev().clone().attr( 'id', 'cntctfrm_label_' + lang_val ).addClass( 'cntctfrm_active' ).html( $( '#cntctfrm_languages option:selected' ).text() + ' <span class="cntctfrm_delete" rel="' + lang_val + '">X</span>').insertBefore( '.cntctfrm_change_label_block .clear' );
53
+ $( '.cntctfrm_action_after_send_block .clear' ).prev().clone().attr( 'id', 'cntctfrm_label_' + lang_val ).addClass( 'cntctfrm_active' ).html( $( '#cntctfrm_languages option:selected' ).text() + ' <span class="cntctfrm_delete" rel="' + lang_val + '">X</span>').insertBefore( '.cntctfrm_action_after_send_block .clear' );
54
+ $( '#cntctfrm_languages option:selected' ).remove();
55
  },
56
  error: function( request, status, error ) {
57
  alert( error + request.status );
58
  }
59
  });
60
  });
61
+ $( '.cntctfrm_language_tab_block' ).css( 'display', 'none' );
62
+ $( '.cntctfrm_language_tab_block_mini' ).css( 'display', 'block' );
63
+ $( '.cntctfrmpr_help_box' ).mouseover( function() {
64
+ $( this ).children().css( 'display', 'block' );
65
  });
66
+ $( '.cntctfrmpr_help_box' ).mouseout( function() {
67
+ $( this ).children().css( 'display', 'none' );
68
  });
69
  });
70
+ $(document).on( "click", ".cntctfrm_language_tab_block_mini", function() {
71
+ if ( $( '.cntctfrm_language_tab_block' ).css( 'display' ) == 'none' ) {
72
+ $( '.cntctfrm_language_tab_block' ).css( 'display', 'block' );
73
+ $( '.cntctfrm_language_tab_block_mini' ).css( 'background-position', '1px -3px' );
74
+ } else {
75
+ $( '.cntctfrm_language_tab_block' ).css( 'display', 'none' );
76
+ $( '.cntctfrm_language_tab_block_mini' ).css( 'background-position', '' );
77
  }
78
  });
79
+ $(document).on( "click", ".cntctfrm_change_label_block .cntctfrm_label_language_tab", function() {
80
+ $( '.cntctfrm_label_language_tab' ).each( function() {
81
+ $( this ).removeClass( 'cntctfrm_active' );
82
  });
83
+ var index = $( '.cntctfrm_change_label_block .cntctfrm_label_language_tab' ).index( $( this ) );
84
+ $( this ).addClass( 'cntctfrm_active' );
85
+ var blocks = $( '.cntctfrm_action_after_send_block .cntctfrm_label_language_tab' );
86
+ $( blocks[ index ] ).addClass( 'cntctfrm_active' );
87
+ $( '.cntctfrm_language_tab' ).each( function() {
88
+ $( this ).addClass( 'hidden' );
89
  });
90
+ $( '.' + this.id.replace( 'label', 'tab' ) ).removeClass( 'hidden' );
91
  });
92
+ $(document).on( "click", ".cntctfrm_action_after_send_block .cntctfrm_label_language_tab", function() {
93
+ $( '.cntctfrm_label_language_tab' ).each( function() {
94
+ $( this ).removeClass( 'cntctfrm_active' );
95
  });
96
+ var index = $( '.cntctfrm_action_after_send_block .cntctfrm_label_language_tab' ).index( $( this ) );
97
+ $( this ).addClass( 'cntctfrm_active' );
98
+ var blocks = $( '.cntctfrm_change_label_block .cntctfrm_label_language_tab' );
99
+ $( blocks[ index ] ).addClass( 'cntctfrm_active' );
100
+ $( '.cntctfrm_language_tab' ).each( function() {
101
+ $( this ).addClass( 'hidden' );
102
  });
103
+ console.log( this.id.replace( 'text', 'tab' ), index );
104
+ $( '.' + this.id.replace( 'text', 'tab' ) ).removeClass( 'hidden' );
105
  });
106
+ $(document).on( "click", ".cntctfrm_delete", function( event ) {
107
  event.stopPropagation();
108
  if ( confirm( confirm_text ) ) {
109
+ var lang = $( this ).attr( 'rel' );
110
  $.ajax({
111
+ url: '../wp-admin/admin-ajax.php',/* update_url, */
112
  type: "POST",
113
  data: "action=cntctfrm_remove_language&lang="+lang,
114
+ success: function( result ) {
115
+ $( '#cntctfrm_label_' + lang + ', #cntctfrm_text_' + lang + ', .cntctfrm_tab_' + lang ).each( function() {
116
+ $( this ).remove();
117
  });
118
+ $( '.cntctfrm_change_label_block .cntctfrm_label_language_tab' ).removeClass( 'cntctfrm_active' ).first().addClass( 'cntctfrm_active' );
119
+ $( '.cntctfrm_action_after_send_block .cntctfrm_label_language_tab' ).removeClass( 'cntctfrm_active' ).first().addClass( 'cntctfrm_active' );
120
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).addClass( 'hidden' ).first().removeClass( 'hidden' );
121
+ $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).addClass( 'hidden' ).first().removeClass( 'hidden' );
122
  },
123
  error: function( request, status, error ) {
124
  alert( error + request.status );
js/script_wp_before_3.5.js CHANGED
@@ -1,103 +1,106 @@
1
- (function($){
2
- $(document).ready(function(){
3
- $('#cntctfrm_additions_options').change( function() {
4
- if($(this).is(':checked') )
5
- $('.cntctfrm_additions_block').removeClass('cntctfrm_hidden');
6
- else
7
- $('.cntctfrm_additions_block').addClass('cntctfrm_hidden');
 
8
  });
9
- $('#cntctfrm_change_label').change( function() {
10
- if($(this).is(':checked') )
11
- $('.cntctfrm_change_label_block').removeClass('cntctfrm_hidden');
12
- else
13
- $('.cntctfrm_change_label_block').addClass('cntctfrm_hidden');
 
14
  });
15
- $('#cntctfrm_display_add_info').change( function() {
16
- if($(this).is(':checked') )
17
- $('.cntctfrm_display_add_info_block').removeClass('cntctfrm_hidden');
18
- else
19
- $('.cntctfrm_display_add_info_block').addClass('cntctfrm_hidden');
 
20
  });
21
- $('#cntctfrm_add_language_button').click(function(){
22
  $.ajax({
23
- url: '../wp-admin/admin-ajax.php',//update_url,
24
  type: "POST",
25
- data: "action=cntctfrm_add_language&lang="+$('#cntctfrm_languages').val(),
26
- success: function(result) {
27
- var lang_val = $('#cntctfrm_languages').val();
28
- $('.cntctfrm_change_label_block .cntctfrm_language_tab, .cntctfrm_action_after_send_block .cntctfrm_language_tab').each(function(){
29
- $(this).addClass('hidden');
30
  });
31
- $('.cntctfrm_change_label_block .cntctfrm_language_tab').first().clone().appendTo(".cntctfrm_change_label_block").removeClass('hidden').removeClass('cntctfrm_tab_en').addClass('cntctfrm_tab_'+lang_val);
32
- $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').first().clone().insertBefore("#cntctfrm_before").removeClass('hidden').removeClass('cntctfrm_tab_en').addClass('cntctfrm_tab_'+lang_val);
33
- $('.cntctfrm_change_label_block .cntctfrm_language_tab').last().find('input').each(function(){
34
- $(this).val('');
35
- $(this).attr('name', $(this).attr('name').replace('[en]', '['+lang_val+']'));
36
  });
37
- var text = $('.cntctfrm_change_label_block .cntctfrm_language_tab').last().find('.cntctfrm_info').last().text();
38
- text = text.replace('lang=en', 'lang='+lang_val);
39
- text = text.replace(' or [contact_form]', '');
40
- $('.cntctfrm_change_label_block .cntctfrm_language_tab').last().find('.cntctfrm_info').last().text(text);
41
- $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').last().find('input').val('').attr('name', $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').last().find('input').attr('name').replace('[en]', '['+lang_val+']'));
42
- text = $('.cntctfrm_change_label_block .cntctfrm_language_tab').last().find('.cntctfrm_info').last().text();
43
  text = text.replace('lang=en', 'lang='+lang_val);
44
  text = text.replace(' or [contact_form]', '');
45
- $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').last().find('.cntctfrm_info').last().text(text);
46
- $('.cntctfrm_change_label_block .cntctfrm_label_language_tab, .cntctfrm_action_after_send_block .cntctfrm_label_language_tab').each(function(){
47
- $(this).removeClass('cntctfrm_active');
48
  });
49
- $('.cntctfrm_change_label_block .clear').prev().clone().attr('id','cntctfrm_label_'+lang_val).addClass('cntctfrm_active').html($('#cntctfrm_languages option:selected').text()+' <span class="cntctfrm_delete" rel="'+lang_val+'">X</span>').insertBefore('.cntctfrm_change_label_block .clear');
50
- $('.cntctfrm_action_after_send_block .clear').prev().clone().attr('id','cntctfrm_label_'+lang_val).addClass('cntctfrm_active').html($('#cntctfrm_languages option:selected').text()+' <span class="cntctfrm_delete" rel="'+lang_val+'">X</span>').insertBefore('.cntctfrm_action_after_send_block .clear');
51
- $('#cntctfrm_languages option:selected').remove();
52
  },
53
  error: function( request, status, error ) {
54
  alert( error + request.status );
55
  }
56
  });
57
  });
58
- $('.cntctfrm_change_label_block .cntctfrm_label_language_tab').live('click', function(){
59
- $('.cntctfrm_label_language_tab').each(function(){
60
- $(this).removeClass('cntctfrm_active');
61
  });
62
- var index = $('.cntctfrm_change_label_block .cntctfrm_label_language_tab').index($(this));
63
- $(this).addClass('cntctfrm_active');
64
- var blocks = $('.cntctfrm_action_after_send_block .cntctfrm_label_language_tab');
65
- $(blocks[index]).addClass('cntctfrm_active');
66
- $('.cntctfrm_language_tab').each(function(){
67
- $(this).addClass('hidden');
68
  });
69
- $('.'+this.id.replace('label', 'tab')).removeClass('hidden');
70
  });
71
- $('.cntctfrm_action_after_send_block .cntctfrm_label_language_tab').live('click', function(){
72
- $('.cntctfrm_label_language_tab').each(function(){
73
- $(this).removeClass('cntctfrm_active');
74
  });
75
- var index = $('.cntctfrm_action_after_send_block .cntctfrm_label_language_tab').index($(this));
76
- $(this).addClass('cntctfrm_active');
77
- var blocks = $('.cntctfrm_change_label_block .cntctfrm_label_language_tab')
78
- $(blocks[index]).addClass('cntctfrm_active');
79
- $('.cntctfrm_language_tab').each(function(){
80
- $(this).addClass('hidden');
81
  });
82
- console.log(this.id.replace('text', 'tab'), index);
83
- $('.'+this.id.replace('text', 'tab')).removeClass('hidden');
84
  });
85
- $('.cntctfrm_delete').live('click', function( event ){
86
  event.stopPropagation();
87
  if ( confirm( confirm_text ) ) {
88
- var lang = $(this).attr('rel');
89
  $.ajax({
90
- url: '../wp-admin/admin-ajax.php',//update_url,
91
  type: "POST",
92
- data: "action=cntctfrm_remove_language&lang="+lang,
93
  success: function(result) {
94
- $('#cntctfrm_label_'+lang+', #cntctfrm_text_'+lang+', .cntctfrm_tab_'+lang).each(function(){
95
- $(this).remove();
96
  });
97
- $('.cntctfrm_change_label_block .cntctfrm_label_language_tab').removeClass('cntctfrm_active').first().addClass('cntctfrm_active');
98
- $('.cntctfrm_action_after_send_block .cntctfrm_label_language_tab').removeClass('cntctfrm_active').first().addClass('cntctfrm_active');
99
- $('.cntctfrm_change_label_block .cntctfrm_language_tab').addClass('hidden').first().removeClass('hidden');
100
- $('.cntctfrm_action_after_send_block .cntctfrm_language_tab').addClass('hidden').first().removeClass('hidden');
101
  },
102
  error: function( request, status, error ) {
103
  alert( error + request.status );
@@ -105,22 +108,22 @@
105
  });
106
  }
107
  });
108
- $('.cntctfrm_language_tab_block').css('display', 'none');
109
- $('.cntctfrm_language_tab_block_mini').css('display', 'block');
110
- $('.cntctfrm_language_tab_block_mini').live( 'click', function() {
111
- if( $('.cntctfrm_language_tab_block').css('display') == 'none' ) {
112
- $('.cntctfrm_language_tab_block').css('display', 'block');
113
- $('.cntctfrm_language_tab_block_mini').css('background-position', '1px -3px');
114
- }else{
115
- $('.cntctfrm_language_tab_block').css('display', 'none');
116
- $('.cntctfrm_language_tab_block_mini').css('background-position', '');
117
  }
118
  });
119
- $('.cntctfrmpr_help_box').mouseover(function(){
120
- $(this).children().css('display', 'block');
121
  });
122
- $('.cntctfrmpr_help_box').mouseout(function(){
123
- $(this).children().css('display', 'none');
124
  });
125
  });
126
  })(jQuery);
1
+ (function($) {
2
+ $(document).ready( function() {
3
+ $( '#cntctfrm_additions_options' ).change( function() {
4
+ if ( $( this ).is( ':checked' ) ) {
5
+ $( '.cntctfrm_additions_block' ).removeClass( 'cntctfrm_hidden' );
6
+ } else {
7
+ $( '.cntctfrm_additions_block' ).addClass( 'cntctfrm_hidden' );
8
+ }
9
  });
10
+ $( '#cntctfrm_change_label' ).change( function() {
11
+ if ( $( this ).is( ':checked' ) ) {
12
+ $( '.cntctfrm_change_label_block' ).removeClass( 'cntctfrm_hidden' );
13
+ } else {
14
+ $( '.cntctfrm_change_label_block' ).addClass( 'cntctfrm_hidden' );
15
+ }
16
  });
17
+ $( '#cntctfrm_display_add_info' ).change( function() {
18
+ if ( $( this ).is( ':checked' ) ) {
19
+ $( '.cntctfrm_display_add_info_block' ).removeClass( 'cntctfrm_hidden' );
20
+ } else {
21
+ $( '.cntctfrm_display_add_info_block' ).addClass( 'cntctfrm_hidden' );
22
+ }
23
  });
24
+ $( '#cntctfrm_add_language_button' ).click( function() {
25
  $.ajax({
26
+ url: '../wp-admin/admin-ajax.php',/* update_url, */
27
  type: "POST",
28
+ data: "action=cntctfrm_add_language&lang=" + $( '#cntctfrm_languages' ).val(),
29
+ success: function( result ) {
30
+ var lang_val = $( '#cntctfrm_languages' ).val();
31
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab, .cntctfrm_action_after_send_block .cntctfrm_language_tab' ).each( function() {
32
+ $( this ).addClass( 'hidden' );
33
  });
34
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).first().clone().appendTo( '.cntctfrm_change_label_block' ).removeClass( 'hidden' ).removeClass( 'cntctfrm_tab_en' ).addClass( 'cntctfrm_tab_' + lang_val );
35
+ $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).first().clone().insertBefore( '#cntctfrm_before' ).removeClass( 'hidden' ).removeClass( 'cntctfrm_tab_en' ).addClass( 'cntctfrm_tab_' + lang_val );
36
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).last().find( 'input' ).each( function() {
37
+ $( this ).val( '' );
38
+ $( this ).attr( 'name', $( this ).attr( 'name' ).replace( '[en]', '[' + lang_val + ']' ) );
39
  });
40
+ var text = $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).last().find( '.cntctfrm_info' ).last().text();
41
+ text = text.replace( 'lang=en', 'lang=' + lang_val );
42
+ text = text.replace( ' or [contact_form]', '' );
43
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).last().find( '.cntctfrm_info' ).last().text( text );
44
+ $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).last().find( 'input' ).val( '' ).attr( 'name', $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).last().find( 'input' ).attr( 'name' ).replace( '[en]', '[' + lang_val + ']' ) );
45
+ text = $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).last().find( '.cntctfrm_info' ).last().text();
46
  text = text.replace('lang=en', 'lang='+lang_val);
47
  text = text.replace(' or [contact_form]', '');
48
+ $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).last().find( '.cntctfrm_info' ).last().text( text );
49
+ $( '.cntctfrm_change_label_block .cntctfrm_label_language_tab, .cntctfrm_action_after_send_block .cntctfrm_label_language_tab' ).each( function() {
50
+ $( this ).removeClass( 'cntctfrm_active' );
51
  });
52
+ $( '.cntctfrm_change_label_block .clear' ).prev().clone().attr( 'id','cntctfrm_label_' + lang_val ).addClass( 'cntctfrm_active' ).html( $( '#cntctfrm_languages option:selected' ).text() + ' <span class="cntctfrm_delete" rel="' + lang_val + '">X</span>').insertBefore( '.cntctfrm_change_label_block .clear' );
53
+ $( '.cntctfrm_action_after_send_block .clear' ).prev().clone().attr( 'id','cntctfrm_label_' + lang_val ).addClass( 'cntctfrm_active' ).html( $( '#cntctfrm_languages option:selected' ).text() + ' <span class="cntctfrm_delete" rel="' + lang_val + '">X</span>').insertBefore( '.cntctfrm_action_after_send_block .clear' );
54
+ $( '#cntctfrm_languages option:selected' ).remove();
55
  },
56
  error: function( request, status, error ) {
57
  alert( error + request.status );
58
  }
59
  });
60
  });
61
+ $( '.cntctfrm_change_label_block .cntctfrm_label_language_tab').live('click', function(){
62
+ $( '.cntctfrm_label_language_tab').each(function(){
63
+ $( this ).removeClass('cntctfrm_active');
64
  });
65
+ var index = $( '.cntctfrm_change_label_block .cntctfrm_label_language_tab' ).index( $( this ) );
66
+ $( this ).addClass( 'cntctfrm_active' );
67
+ var blocks = $( '.cntctfrm_action_after_send_block .cntctfrm_label_language_tab' );
68
+ $( blocks[ index ] ).addClass( 'cntctfrm_active');
69
+ $( '.cntctfrm_language_tab' ).each( function() {
70
+ $( this ).addClass( 'hidden');
71
  });
72
+ $( '.' + this.id.replace( 'label', 'tab' ) ).removeClass( 'hidden' );
73
  });
74
+ $( '.cntctfrm_action_after_send_block .cntctfrm_label_language_tab' ).live( 'click', function() {
75
+ $( '.cntctfrm_label_language_tab' ).each( function() {
76
+ $( this ).removeClass( 'cntctfrm_active' );
77
  });
78
+ var index = $( '.cntctfrm_action_after_send_block .cntctfrm_label_language_tab' ).index( $( this ) );
79
+ $( this ).addClass('cntctfrm_active' );
80
+ var blocks = $('.cntctfrm_change_label_block .cntctfrm_label_language_tab' );
81
+ $( blocks[ index ] ).addClass( 'cntctfrm_active' );
82
+ $( '.cntctfrm_language_tab' ).each( function() {
83
+ $( this ).addClass( 'hidden' );
84
  });
85
+ console.log( this.id.replace( 'text', 'tab' ), index );
86
+ $( '.' + this.id.replace( 'text', 'tab' ) ).removeClass( 'hidden' );
87
  });
88
+ $( '.cntctfrm_delete' ).live( 'click', function( event ) {
89
  event.stopPropagation();
90
  if ( confirm( confirm_text ) ) {
91
+ var lang = $( this ).attr('rel');
92
  $.ajax({
93
+ url: '../wp-admin/admin-ajax.php',/* update_url, */
94
  type: "POST",
95
+ data: "action=cntctfrm_remove_language&lang=" + lang,
96
  success: function(result) {
97
+ $( '#cntctfrm_label_' + lang + ', #cntctfrm_text_' + lang + ', .cntctfrm_tab_' + lang ).each( function() {
98
+ $( this ).remove();
99
  });
100
+ $( '.cntctfrm_change_label_block .cntctfrm_label_language_tab' ).removeClass( 'cntctfrm_active' ).first().addClass( 'cntctfrm_active' );
101
+ $( '.cntctfrm_action_after_send_block .cntctfrm_label_language_tab' ).removeClass( 'cntctfrm_active' ).first().addClass( 'cntctfrm_active' );
102
+ $( '.cntctfrm_change_label_block .cntctfrm_language_tab' ).addClass( 'hidden').first().removeClass( 'hidden' );
103
+ $( '.cntctfrm_action_after_send_block .cntctfrm_language_tab' ).addClass( 'hidden' ).first().removeClass( 'hidden' );
104
  },
105
  error: function( request, status, error ) {
106
  alert( error + request.status );
108
  });
109
  }
110
  });
111
+ $( '.cntctfrm_language_tab_block' ).css( 'display', 'none' );
112
+ $( '.cntctfrm_language_tab_block_mini' ).css( 'display', 'block' );
113
+ $( '.cntctfrm_language_tab_block_mini' ).live( 'click', function() {
114
+ if ( $( '.cntctfrm_language_tab_block' ).css( 'display' ) == 'none' ) {
115
+ $( '.cntctfrm_language_tab_block ').css( 'display', 'block' );
116
+ $( '.cntctfrm_language_tab_block_mini' ).css('background-position', '1px -3px' );
117
+ } else {
118
+ $( '.cntctfrm_language_tab_block' ).css( 'display', 'none' );
119
+ $( '.cntctfrm_language_tab_block_mini' ).css( 'background-position', '' );
120
  }
121
  });
122
+ $( '.cntctfrmpr_help_box' ).mouseover( function() {
123
+ $( this ).children().css( 'display', 'block' );
124
  });
125
+ $( '.cntctfrmpr_help_box' ).mouseout( function() {
126
+ $( this ).children().css( 'display', 'none' );
127
  });
128
  });
129
  })(jQuery);
readme.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: bestwebsoft
3
  Donate link: https://www.2checkout.com/checkout/purchase?sid=1430388&quantity=10&product_id=13
4
  Tags: Contact Form, text, contact, form, contacts, contact form, request, contact me, feedback form, feedback, contact button, contact form plugin, contacts form plugin, attachment, send, copy, attachment, send copy
5
  Requires at least: 3.0
6
- Tested up to: 3.6.1
7
- Stable tag: 3.60
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -32,7 +32,11 @@ There is also a premium version of the plugin with more useful features availabl
32
  The author of the Contact Form also recommends the following plugins:
33
 
34
  * <a href="http://wordpress.org/plugins/captcha/">Captcha</a> - The Captcha plugin allows you to implement a super security captcha form into web forms. It protects your website from spam by means of math logic, easily understood by human beings. This captcha can be used for login, registration, password recovery, comments forms.
35
- There is also a premium version of the plugin - <a href="http://bestwebsoft.com/plugin/captcha-pro/">Captcha Pro</a>, allowing compatibility with BuddyPress (Registration form, Comments form, "Create a Group" form).
 
 
 
 
36
 
37
  = Translation =
38
 
@@ -122,6 +126,14 @@ Here is an example for the German language files.
122
  2. Mark the check box (if it's not marked yet) in the block "Change the names of the contact form fields and error messages", choose the necessary tab and fill in the fields. Choose the necessary tab in the block "Action after email is sent" as well and fill in the field. Save the changes.
123
  3. You will see the shortcode under the tab with the necessary language. Please paste that shortcode to the page or post.
124
 
 
 
 
 
 
 
 
 
125
  == Screenshots ==
126
 
127
  1. Contact Form display.
@@ -133,6 +145,11 @@ Here is an example for the German language files.
133
 
134
  == Changelog ==
135
 
 
 
 
 
 
136
  = V3.60 - 18.10.2013 =
137
  * NEW : Compatibility with plugin Contact Form To DB.
138
  * Bugfix : We fixed the bug of uploading attachment in multisite.
@@ -404,6 +421,9 @@ Here is an example for the German language files.
404
 
405
  == Upgrade Notice ==
406
 
 
 
 
407
  = V3.60 =
408
  Compatibility with plugin Contact Form To DB. We fixed the bug of uploading attachment in multisite.
409
 
3
  Donate link: https://www.2checkout.com/checkout/purchase?sid=1430388&quantity=10&product_id=13
4
  Tags: Contact Form, text, contact, form, contacts, contact form, request, contact me, feedback form, feedback, contact button, contact form plugin, contacts form plugin, attachment, send, copy, attachment, send copy
5
  Requires at least: 3.0
6
+ Tested up to: 3.7
7
+ Stable tag: 3.61
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
32
  The author of the Contact Form also recommends the following plugins:
33
 
34
  * <a href="http://wordpress.org/plugins/captcha/">Captcha</a> - The Captcha plugin allows you to implement a super security captcha form into web forms. It protects your website from spam by means of math logic, easily understood by human beings. This captcha can be used for login, registration, password recovery, comments forms.
35
+ There is also a premium version of the plugin - <a href="http://bestwebsoft.com/plugin/captcha-pro/?k=45dcf2a5ccd70a7fc8606f8030730ac7">Captcha Pro</a>, allowing compatibility with BuddyPress (Registration form, Comments form, "Create a Group" form).
36
+ * <a href="http://wordpress.org/plugins/updater/">Updater</a> - This plugin updates WordPress core and the plugins to the recent versions. You can also use the auto mode or manual mode for updating and set email notifications.
37
+ There is also a premium version of the plugin <a href="http://bestwebsoft.com/plugin/updater-pro/?k=982fae837f4c6e3b152183537448dbca">Updater Pro</a> with more useful features available. It allows to update plugins and WordPress core on several websites. It can make backup of all your files and database before updating.
38
+ * <a href="http://wordpress.org/plugins/contact-form-to-db/">Contact Form To DB</a> - This plugin is an exclusive add-on for the Contact Form plugin by BestWebSof. The plugin provides a unique opportunity to manage messages sent from your site via the contact form. Please pay attention, that this plugin is an add-on ONLY for Contact Form plugin by BestWebSoft, that's why it will not work with any other contact form plugins.
39
+ There is also a premium version of the plugin <a href="http://bestwebsoft.com/plugin/updater-pro/?k=d7d962591b5be0ce6c27af778b1b36ee">Contact Form To DB Pro</a>, allowing to re-send and preiodically delete messages, manage attachments and get detailed support and answers to your questions.
40
 
41
  = Translation =
42
 
126
  2. Mark the check box (if it's not marked yet) in the block "Change the names of the contact form fields and error messages", choose the necessary tab and fill in the fields. Choose the necessary tab in the block "Action after email is sent" as well and fill in the field. Save the changes.
127
  3. You will see the shortcode under the tab with the necessary language. Please paste that shortcode to the page or post.
128
 
129
+ = I'm not receiving messages from Contact Form OR The plugin does not send an email - "Sorry, email message could not be delivered." =
130
+
131
+ Please follow the instructions below:
132
+ 1. Please check the plugin settings '/wp-admin/admin.php?page=contact_form.php' => 'What to use?' => change the lines from wp-mail to mail and vice versa.
133
+ 2. Email messages can be marked as spam on the server. Please choose another email instead of the admin's one ('Use this email:' block) - for example, gmail or similar. If the message is sent, it means that email filtering is set on your server. Please contact your hosting provider.
134
+ 3. Perhaps email sending is not set. You should install an extra plugin called WP-mail-SMTP and configure it. Afterwards you should send a test email from this plugin and you will see if the plugin logs have errors.
135
+ Note: If the Contact Form sends letters, but you don't receive them, you can install our plugin Contact Form to DB in order not to lose the sent letters for the time the problem is being solved.
136
+
137
  == Screenshots ==
138
 
139
  1. Contact Form display.
145
 
146
  == Changelog ==
147
 
148
+ = V3.61 - 25.10.2013 =
149
+ * NEW : Add option for saving emails into the DataBase.
150
+ * Bugfix : File format according JavaScript and CSS Coding Standards.
151
+ * Update : We updated all functionality for wordpress 3.7.
152
+
153
  = V3.60 - 18.10.2013 =
154
  * NEW : Compatibility with plugin Contact Form To DB.
155
  * Bugfix : We fixed the bug of uploading attachment in multisite.
421
 
422
  == Upgrade Notice ==
423
 
424
+ = V3.61 =
425
+ Add option for saving emails into the DataBase. File format according JavaScript and CSS Coding Standards. We updated all functionality for wordpress 3.7.
426
+
427
  = V3.60 =
428
  Compatibility with plugin Contact Form To DB. We fixed the bug of uploading attachment in multisite.
429
 
screenshot-4.jpg CHANGED
File without changes