Version Description
- New: Added frm_field_value_object hook for making adjustments to the field before it's label and value is displayed.
- New: Added frm_xml_response hook for altering the message/response when an XML file is imported.
- Fix: Updated deprecated blacklist functions in WP 5.5.
- Fix: Add more checks to the installation triggers to prevent them from being triggered at unintended times.
- Show a more helpful error message in some cases when the XML import fails.
Download this release
Release Info
Developer | sswells |
Plugin | Formidable Forms – Form Builder for WordPress |
Version | 4.06.02 |
Comparing to | |
See all releases |
Code changes from version 4.06.01 to 4.06.02
- classes/controllers/FrmAddonsController.php +37 -0
- classes/controllers/FrmAppController.php +15 -1
- classes/controllers/FrmHooksController.php +1 -0
- classes/controllers/FrmSettingsController.php +1 -1
- classes/controllers/FrmXMLController.php +126 -3
- classes/helpers/FrmAppHelper.php +15 -1
- classes/helpers/FrmFormsHelper.php +5 -1
- classes/helpers/FrmXMLHelper.php +14 -1
- classes/models/FrmAddon.php +1 -0
- classes/models/FrmEmail.php +1 -0
- classes/models/FrmEntryValidate.php +30 -3
- classes/models/FrmField.php +1 -1
- classes/models/FrmFieldValue.php +1 -0
- classes/models/FrmFormAction.php +7 -0
- classes/models/FrmSolution.php +804 -0
- classes/views/addons/list.php +22 -10
- classes/views/addons/settings.php +1 -3
- classes/views/frm-settings/license_box.php +1 -1
- classes/views/solutions/_import.php +63 -0
- css/custom_theme.css.php +13 -3
- css/frm_admin.css +62 -0
- css/frm_grids.css +7 -0
- formidable.php +1 -1
- images/icons.svg +4 -1
- js/formidable_admin.js +109 -9
- languages/formidable.pot +328 -241
- readme.txt +9 -10
classes/controllers/FrmAddonsController.php
CHANGED
@@ -404,6 +404,10 @@ class FrmAddonsController {
|
|
404 |
);
|
405 |
}
|
406 |
|
|
|
|
|
|
|
|
|
407 |
return $link;
|
408 |
}
|
409 |
}
|
@@ -850,6 +854,39 @@ class FrmAddonsController {
|
|
850 |
wp_die();
|
851 |
}
|
852 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
853 |
/**
|
854 |
* @since 3.04.02
|
855 |
* @param string $installed The plugin folder name with file name
|
404 |
);
|
405 |
}
|
406 |
|
407 |
+
if ( ! empty( $link ) ) {
|
408 |
+
$link['status'] = $addon['status']['type'];
|
409 |
+
}
|
410 |
+
|
411 |
return $link;
|
412 |
}
|
413 |
}
|
854 |
wp_die();
|
855 |
}
|
856 |
|
857 |
+
/**
|
858 |
+
* @since 4.06.02
|
859 |
+
*/
|
860 |
+
public static function ajax_multiple_addons() {
|
861 |
+
self::install_addon_permissions();
|
862 |
+
|
863 |
+
// Set the current screen to avoid undefined notices.
|
864 |
+
global $hook_suffix;
|
865 |
+
set_current_screen();
|
866 |
+
|
867 |
+
$download_urls = FrmAppHelper::get_param( 'plugin', '', 'post' );
|
868 |
+
$download_urls = explode( ',', $download_urls );
|
869 |
+
FrmAppHelper::sanitize_value( 'esc_url_raw', $download_urls );
|
870 |
+
|
871 |
+
foreach ( $download_urls as $download_url ) {
|
872 |
+
$_POST['plugin'] = $download_url;
|
873 |
+
if ( strpos( $download_url, 'http' ) !== false ) {
|
874 |
+
// Installing.
|
875 |
+
self::maybe_show_cred_form();
|
876 |
+
|
877 |
+
$installed = self::install_addon();
|
878 |
+
self::maybe_activate_addon( $installed );
|
879 |
+
} else {
|
880 |
+
// Activating.
|
881 |
+
self::maybe_activate_addon( $download_url );
|
882 |
+
}
|
883 |
+
}
|
884 |
+
|
885 |
+
echo json_encode( __( 'Your plugins have been installed and activated.', 'formidable' ) );
|
886 |
+
|
887 |
+
wp_die();
|
888 |
+
}
|
889 |
+
|
890 |
/**
|
891 |
* @since 3.04.02
|
892 |
* @param string $installed The plugin folder name with file name
|
classes/controllers/FrmAppController.php
CHANGED
@@ -456,10 +456,22 @@ class FrmAppController {
|
|
456 |
$args = array(
|
457 |
'methods' => 'GET',
|
458 |
'callback' => 'FrmAppController::api_install',
|
|
|
459 |
);
|
|
|
460 |
register_rest_route( 'frm-admin/v1', '/install', $args );
|
461 |
}
|
462 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
463 |
/**
|
464 |
* Run silent upgrade on each site in the network during a network upgrade.
|
465 |
* Update database settings for all sites in a network during network upgrade process.
|
@@ -469,7 +481,8 @@ class FrmAppController {
|
|
469 |
* @param int $blog_id Blog ID.
|
470 |
*/
|
471 |
public static function network_upgrade_site( $blog_id = 0 ) {
|
472 |
-
|
|
|
473 |
$request = new WP_REST_Request( 'GET', '/frm-admin/v1/install' );
|
474 |
|
475 |
if ( $blog_id ) {
|
@@ -490,6 +503,7 @@ class FrmAppController {
|
|
490 |
* @since 3.0
|
491 |
*/
|
492 |
public static function api_install() {
|
|
|
493 |
if ( self::needs_update() ) {
|
494 |
$running = get_option( 'frm_install_running' );
|
495 |
if ( false === $running || $running < strtotime( '-5 minutes' ) ) {
|
456 |
$args = array(
|
457 |
'methods' => 'GET',
|
458 |
'callback' => 'FrmAppController::api_install',
|
459 |
+
'permission_callback' => __CLASS__ . '::can_update_db',
|
460 |
);
|
461 |
+
|
462 |
register_rest_route( 'frm-admin/v1', '/install', $args );
|
463 |
}
|
464 |
|
465 |
+
/**
|
466 |
+
* Make sure the install is only being run when we tell it to.
|
467 |
+
* We don't want to run manually by people calling the API.
|
468 |
+
*
|
469 |
+
* @since 4.06.02
|
470 |
+
*/
|
471 |
+
public static function can_update_db() {
|
472 |
+
return get_transient( 'frm_updating_api' );
|
473 |
+
}
|
474 |
+
|
475 |
/**
|
476 |
* Run silent upgrade on each site in the network during a network upgrade.
|
477 |
* Update database settings for all sites in a network during network upgrade process.
|
481 |
* @param int $blog_id Blog ID.
|
482 |
*/
|
483 |
public static function network_upgrade_site( $blog_id = 0 ) {
|
484 |
+
// Flag to check if install is happening as intended.
|
485 |
+
set_transient( 'frm_updating_api', true, MINUTE_IN_SECONDS );
|
486 |
$request = new WP_REST_Request( 'GET', '/frm-admin/v1/install' );
|
487 |
|
488 |
if ( $blog_id ) {
|
503 |
* @since 3.0
|
504 |
*/
|
505 |
public static function api_install() {
|
506 |
+
delete_transient( 'frm_updating_api' );
|
507 |
if ( self::needs_update() ) {
|
508 |
$running = get_option( 'frm_install_running' );
|
509 |
if ( false === $running || $running < strtotime( '-5 minutes' ) ) {
|
classes/controllers/FrmHooksController.php
CHANGED
@@ -157,6 +157,7 @@ class FrmHooksController {
|
|
157 |
add_action( 'wp_ajax_frm_addon_deactivate', 'FrmAddon::deactivate' );
|
158 |
add_action( 'wp_ajax_frm_install_addon', 'FrmAddonsController::ajax_install_addon' );
|
159 |
add_action( 'wp_ajax_frm_activate_addon', 'FrmAddonsController::ajax_activate_addon' );
|
|
|
160 |
add_action( 'wp_ajax_frm_connect', 'FrmAddonsController::connect_pro' );
|
161 |
|
162 |
// Fields Controller.
|
157 |
add_action( 'wp_ajax_frm_addon_deactivate', 'FrmAddon::deactivate' );
|
158 |
add_action( 'wp_ajax_frm_install_addon', 'FrmAddonsController::ajax_install_addon' );
|
159 |
add_action( 'wp_ajax_frm_activate_addon', 'FrmAddonsController::ajax_activate_addon' );
|
160 |
+
add_action( 'wp_ajax_frm_multiple_addons', 'FrmAddonsController::ajax_multiple_addons' );
|
161 |
add_action( 'wp_ajax_frm_connect', 'FrmAddonsController::connect_pro' );
|
162 |
|
163 |
// Fields Controller.
|
classes/controllers/FrmSettingsController.php
CHANGED
@@ -79,7 +79,7 @@ class FrmSettingsController {
|
|
79 |
$show_licenses = false;
|
80 |
$installed_addons = apply_filters( 'frm_installed_addons', array() );
|
81 |
foreach ( $installed_addons as $installed_addon ) {
|
82 |
-
if ( ! $installed_addon->is_parent_licence && $installed_addon->plugin_name != 'Formidable Pro' ) {
|
83 |
$show_licenses = true;
|
84 |
break;
|
85 |
}
|
79 |
$show_licenses = false;
|
80 |
$installed_addons = apply_filters( 'frm_installed_addons', array() );
|
81 |
foreach ( $installed_addons as $installed_addon ) {
|
82 |
+
if ( ! $installed_addon->is_parent_licence && $installed_addon->plugin_name != 'Formidable Pro' && $installed_addon->needs_license ) {
|
83 |
$show_licenses = true;
|
84 |
break;
|
85 |
}
|
classes/controllers/FrmXMLController.php
CHANGED
@@ -39,6 +39,9 @@ class FrmXMLController {
|
|
39 |
|
40 |
$url = FrmAppHelper::get_param( 'xml', '', 'post', 'esc_url_raw' );
|
41 |
|
|
|
|
|
|
|
42 |
$response = wp_remote_get( $url );
|
43 |
$body = wp_remote_retrieve_body( $response );
|
44 |
$xml = simplexml_load_string( $body );
|
@@ -63,16 +66,130 @@ class FrmXMLController {
|
|
63 |
'redirect' => FrmForm::get_edit_link( $form_id ),
|
64 |
'success' => 1,
|
65 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
66 |
} else {
|
|
|
|
|
|
|
|
|
|
|
67 |
$response = array(
|
68 |
-
'message' =>
|
69 |
);
|
|
|
70 |
}
|
71 |
|
|
|
|
|
72 |
echo wp_json_encode( $response );
|
73 |
wp_die();
|
74 |
}
|
75 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
/**
|
77 |
* Change the name of the last form that is not a child.
|
78 |
* This will allow for lookup fields and embedded forms
|
@@ -87,6 +204,12 @@ class FrmXMLController {
|
|
87 |
return;
|
88 |
}
|
89 |
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
// Get the main form ID.
|
91 |
$set_name = 0;
|
92 |
foreach ( $xml->form as $form ) {
|
@@ -98,8 +221,8 @@ class FrmXMLController {
|
|
98 |
foreach ( $xml->form as $form ) {
|
99 |
// Maybe set the form name if this isn't a child form.
|
100 |
if ( $set_name == $form->id ) {
|
101 |
-
$form->name =
|
102 |
-
$form->description =
|
103 |
}
|
104 |
|
105 |
// Use a unique key to prevent editing existing form.
|
39 |
|
40 |
$url = FrmAppHelper::get_param( 'xml', '', 'post', 'esc_url_raw' );
|
41 |
|
42 |
+
$form = self::get_posted_form();
|
43 |
+
self::override_url( $form, $url );
|
44 |
+
|
45 |
$response = wp_remote_get( $url );
|
46 |
$body = wp_remote_retrieve_body( $response );
|
47 |
$xml = simplexml_load_string( $body );
|
66 |
'redirect' => FrmForm::get_edit_link( $form_id ),
|
67 |
'success' => 1,
|
68 |
);
|
69 |
+
if ( ! empty( $imported['imported']['posts'] ) ) {
|
70 |
+
// Return the link to the last page created.
|
71 |
+
$pages = $imported['posts'];
|
72 |
+
}
|
73 |
+
|
74 |
+
if ( ! empty( $form ) ) {
|
75 |
+
// Create selected pages with the correct shortcodes.
|
76 |
+
$pages = self::create_pages_for_import( $form );
|
77 |
+
}
|
78 |
+
|
79 |
+
if ( isset( $pages ) && ! empty( $pages ) ) {
|
80 |
+
$post_id = end( $pages );
|
81 |
+
$response['redirect'] = get_permalink( $post_id );
|
82 |
+
}
|
83 |
} else {
|
84 |
+
if ( isset( $imported['error'] ) ) {
|
85 |
+
$message = $imported['error'];
|
86 |
+
} else {
|
87 |
+
$message = __( 'There was an error importing form', 'formidable' );
|
88 |
+
}
|
89 |
$response = array(
|
90 |
+
'message' => $message,
|
91 |
);
|
92 |
+
|
93 |
}
|
94 |
|
95 |
+
$response = apply_filters( 'frm_xml_response', $response, compact( 'form', 'imported' ) );
|
96 |
+
|
97 |
echo wp_json_encode( $response );
|
98 |
wp_die();
|
99 |
}
|
100 |
|
101 |
+
/**
|
102 |
+
* @since 4.06.02
|
103 |
+
*/
|
104 |
+
private static function get_posted_form() {
|
105 |
+
$form = FrmAppHelper::get_param( 'form', '', 'post', 'wp_unslash' );
|
106 |
+
if ( empty( $form ) ) {
|
107 |
+
return $form;
|
108 |
+
}
|
109 |
+
$form = json_decode( $form, true );
|
110 |
+
return $form;
|
111 |
+
}
|
112 |
+
|
113 |
+
/**
|
114 |
+
* Get a different URL depending on the selection in the form.
|
115 |
+
*
|
116 |
+
* @since 4.06.02
|
117 |
+
*/
|
118 |
+
private static function override_url( $form, &$url ) {
|
119 |
+
$selected_form = self::get_selected_in_form( $form, 'form' );
|
120 |
+
if ( empty( $selected_form ) ) {
|
121 |
+
return;
|
122 |
+
}
|
123 |
+
|
124 |
+
$selected_xml = isset( $form['xml'] ) && isset( $form['xml'][ $selected_form ] ) ? $form['xml'][ $selected_form ] : '';
|
125 |
+
if ( empty( $selected_xml ) || strpos( $selected_xml, 'http' ) !== 0 ) {
|
126 |
+
return;
|
127 |
+
}
|
128 |
+
|
129 |
+
$url = $selected_xml;
|
130 |
+
}
|
131 |
+
|
132 |
+
/**
|
133 |
+
* @since 4.06.02
|
134 |
+
*/
|
135 |
+
private static function get_selected_in_form( $form, $value = 'form' ) {
|
136 |
+
if ( ! empty( $form ) && isset( $form[ $value ] ) && ! empty( $form[ $value ] ) ) {
|
137 |
+
return $form[ $value ];
|
138 |
+
}
|
139 |
+
|
140 |
+
return '';
|
141 |
+
}
|
142 |
+
|
143 |
+
/**
|
144 |
+
* @since 4.06.02
|
145 |
+
*
|
146 |
+
* @param array $form The posted form values.
|
147 |
+
*
|
148 |
+
* @return array The array of created pages.
|
149 |
+
*/
|
150 |
+
private static function create_pages_for_import( $form ) {
|
151 |
+
if ( ! isset( $form['pages'] ) || empty( $form['pages'] ) ) {
|
152 |
+
return;
|
153 |
+
}
|
154 |
+
|
155 |
+
$form_key = self::get_selected_in_form( $form, 'form' );
|
156 |
+
$view_keys = self::get_selected_in_form( $form, 'view' );
|
157 |
+
|
158 |
+
$page_ids = array();
|
159 |
+
foreach ( (array) $form['pages'] as $for => $name ) {
|
160 |
+
if ( empty( $name ) ) {
|
161 |
+
// Don't create a page if no title is given.
|
162 |
+
continue;
|
163 |
+
}
|
164 |
+
|
165 |
+
if ( $for === 'view' ) {
|
166 |
+
$item_key = is_array( $view_keys ) ? $view_keys[ $form_key ] : $view_keys;
|
167 |
+
$shortcode = '[display-frm-data id=%1$s filter=limited]';
|
168 |
+
} elseif ( $for === 'form' ) {
|
169 |
+
$item_key = $form_key;
|
170 |
+
$shortcode = '[formidable id=%1$s]';
|
171 |
+
} else {
|
172 |
+
$item_key = self::get_selected_in_form( $form, 'form' );
|
173 |
+
$shortcode = '[' . esc_html( $for ) . ' id=%1$s]';
|
174 |
+
}
|
175 |
+
|
176 |
+
if ( empty( $item_key ) ) {
|
177 |
+
// Don't create it if the shortcode won't show anything.
|
178 |
+
continue;
|
179 |
+
}
|
180 |
+
|
181 |
+
$page_ids[ $for ] = wp_insert_post(
|
182 |
+
array(
|
183 |
+
'post_title' => $name,
|
184 |
+
'post_type' => 'page',
|
185 |
+
'post_content' => sprintf( $shortcode, $item_key ),
|
186 |
+
)
|
187 |
+
);
|
188 |
+
}
|
189 |
+
|
190 |
+
return $page_ids;
|
191 |
+
}
|
192 |
+
|
193 |
/**
|
194 |
* Change the name of the last form that is not a child.
|
195 |
* This will allow for lookup fields and embedded forms
|
204 |
return;
|
205 |
}
|
206 |
|
207 |
+
$name = FrmAppHelper::get_param( 'name', '', 'post', 'sanitize_text_field' );
|
208 |
+
$description = FrmAppHelper::get_param( 'desc', '', 'post', 'sanitize_textarea_field' );
|
209 |
+
if ( empty( $name ) && empty( $description ) ) {
|
210 |
+
return;
|
211 |
+
}
|
212 |
+
|
213 |
// Get the main form ID.
|
214 |
$set_name = 0;
|
215 |
foreach ( $xml->form as $form ) {
|
221 |
foreach ( $xml->form as $form ) {
|
222 |
// Maybe set the form name if this isn't a child form.
|
223 |
if ( $set_name == $form->id ) {
|
224 |
+
$form->name = $name;
|
225 |
+
$form->description = $description;
|
226 |
}
|
227 |
|
228 |
// Use a unique key to prevent editing existing form.
|
classes/helpers/FrmAppHelper.php
CHANGED
@@ -11,7 +11,7 @@ class FrmAppHelper {
|
|
11 |
/**
|
12 |
* @since 2.0
|
13 |
*/
|
14 |
-
public static $plug_version = '4.06.
|
15 |
|
16 |
/**
|
17 |
* @since 1.07.02
|
@@ -82,6 +82,7 @@ class FrmAppHelper {
|
|
82 |
if ( empty( $page ) ) {
|
83 |
$page = 'https://formidableforms.com/lite-upgrade/';
|
84 |
} else {
|
|
|
85 |
$page = 'https://formidableforms.com/' . $page;
|
86 |
}
|
87 |
|
@@ -201,6 +202,14 @@ class FrmAppHelper {
|
|
201 |
return apply_filters( 'frm_pro_installed', false );
|
202 |
}
|
203 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
/**
|
205 |
* @since 4.06
|
206 |
*/
|
@@ -732,6 +741,10 @@ class FrmAppHelper {
|
|
732 |
'width' => true,
|
733 |
'x' => true,
|
734 |
'y' => true,
|
|
|
|
|
|
|
|
|
735 |
),
|
736 |
'section' => $allow_class,
|
737 |
'span' => array(
|
@@ -755,6 +768,7 @@ class FrmAppHelper {
|
|
755 |
'width' => true,
|
756 |
'height' => true,
|
757 |
'style' => true,
|
|
|
758 |
),
|
759 |
'use' => array(
|
760 |
'href' => true,
|
11 |
/**
|
12 |
* @since 2.0
|
13 |
*/
|
14 |
+
public static $plug_version = '4.06.02';
|
15 |
|
16 |
/**
|
17 |
* @since 1.07.02
|
82 |
if ( empty( $page ) ) {
|
83 |
$page = 'https://formidableforms.com/lite-upgrade/';
|
84 |
} else {
|
85 |
+
$page = str_replace( 'https://formidableforms.com/', '', $page );
|
86 |
$page = 'https://formidableforms.com/' . $page;
|
87 |
}
|
88 |
|
202 |
return apply_filters( 'frm_pro_installed', false );
|
203 |
}
|
204 |
|
205 |
+
/**
|
206 |
+
* @since 4.06.02
|
207 |
+
*/
|
208 |
+
public static function pro_is_connected() {
|
209 |
+
global $frm_vars;
|
210 |
+
return self::pro_is_installed() && $frm_vars['pro_is_authorized'];
|
211 |
+
}
|
212 |
+
|
213 |
/**
|
214 |
* @since 4.06
|
215 |
*/
|
741 |
'width' => true,
|
742 |
'x' => true,
|
743 |
'y' => true,
|
744 |
+
'rx' => true,
|
745 |
+
'stroke' => true,
|
746 |
+
'stroke-opacity' => true,
|
747 |
+
'stroke-width' => true,
|
748 |
),
|
749 |
'section' => $allow_class,
|
750 |
'span' => array(
|
768 |
'width' => true,
|
769 |
'height' => true,
|
770 |
'style' => true,
|
771 |
+
'fill' => true,
|
772 |
),
|
773 |
'use' => array(
|
774 |
'href' => true,
|
classes/helpers/FrmFormsHelper.php
CHANGED
@@ -1357,11 +1357,15 @@ BEFORE_HTML;
|
|
1357 |
return false;
|
1358 |
}
|
1359 |
|
1360 |
-
$plans = array( 'free', 'Personal', 'Business', 'Elite' );
|
1361 |
|
1362 |
foreach ( $item['categories'] as $k => $category ) {
|
1363 |
if ( in_array( $category, $plans ) ) {
|
1364 |
unset( $item['categories'][ $k ] );
|
|
|
|
|
|
|
|
|
1365 |
return $category;
|
1366 |
}
|
1367 |
}
|
1357 |
return false;
|
1358 |
}
|
1359 |
|
1360 |
+
$plans = array( 'free', 'Basic', 'Personal', 'Business', 'Elite' );
|
1361 |
|
1362 |
foreach ( $item['categories'] as $k => $category ) {
|
1363 |
if ( in_array( $category, $plans ) ) {
|
1364 |
unset( $item['categories'][ $k ] );
|
1365 |
+
if ( $category === 'Personal' ) {
|
1366 |
+
// Show the current package name.
|
1367 |
+
$category = 'Basic';
|
1368 |
+
}
|
1369 |
return $category;
|
1370 |
}
|
1371 |
}
|
classes/helpers/FrmXMLHelper.php
CHANGED
@@ -59,6 +59,10 @@ class FrmXMLHelper {
|
|
59 |
* @return array The number of items imported
|
60 |
*/
|
61 |
public static function import_xml_now( $xml ) {
|
|
|
|
|
|
|
|
|
62 |
$imported = self::pre_import_data();
|
63 |
|
64 |
foreach ( array( 'term', 'form', 'view' ) as $item_type ) {
|
@@ -70,7 +74,16 @@ class FrmXMLHelper {
|
|
70 |
}
|
71 |
}
|
72 |
|
73 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
}
|
75 |
|
76 |
/**
|
59 |
* @return array The number of items imported
|
60 |
*/
|
61 |
public static function import_xml_now( $xml ) {
|
62 |
+
if ( ! defined( 'WP_IMPORTING' ) ) {
|
63 |
+
define( 'WP_IMPORTING', true );
|
64 |
+
}
|
65 |
+
|
66 |
$imported = self::pre_import_data();
|
67 |
|
68 |
foreach ( array( 'term', 'form', 'view' ) as $item_type ) {
|
74 |
}
|
75 |
}
|
76 |
|
77 |
+
$imported = apply_filters( 'frm_importing_xml', $imported, $xml );
|
78 |
+
|
79 |
+
if ( ! isset( $imported['form_status'] ) || empty( $imported['form_status'] ) ) {
|
80 |
+
// Check for an error message in the XML.
|
81 |
+
if ( isset( $xml->Code ) && isset( $xml->Message ) ) { // phpcs:ignore WordPress.NamingConventions
|
82 |
+
$imported['error'] = reset( $xml->Message ); // phpcs:ignore WordPress.NamingConventions
|
83 |
+
}
|
84 |
+
}
|
85 |
+
|
86 |
+
return $imported;
|
87 |
}
|
88 |
|
89 |
/**
|
classes/models/FrmAddon.php
CHANGED
@@ -15,6 +15,7 @@ class FrmAddon {
|
|
15 |
public $version;
|
16 |
public $author = 'Strategy11';
|
17 |
public $is_parent_licence = false;
|
|
|
18 |
private $is_expired_addon = false;
|
19 |
public $license;
|
20 |
protected $get_beta = false;
|
15 |
public $version;
|
16 |
public $author = 'Strategy11';
|
17 |
public $is_parent_licence = false;
|
18 |
+
public $needs_license = true;
|
19 |
private $is_expired_addon = false;
|
20 |
public $license;
|
21 |
protected $get_beta = false;
|
classes/models/FrmEmail.php
CHANGED
@@ -331,6 +331,7 @@ class FrmEmail {
|
|
331 |
$args = array(
|
332 |
'entry' => $this->entry,
|
333 |
'email_key' => $this->email_key,
|
|
|
334 |
);
|
335 |
|
336 |
$this->attachments = apply_filters( 'frm_notification_attachment', array(), $this->form, $args );
|
331 |
$args = array(
|
332 |
'entry' => $this->entry,
|
333 |
'email_key' => $this->email_key,
|
334 |
+
'settings' => $this->settings,
|
335 |
);
|
336 |
|
337 |
$this->attachments = apply_filters( 'frm_notification_attachment', array(), $this->form, $args );
|
classes/models/FrmEntryValidate.php
CHANGED
@@ -233,7 +233,7 @@ class FrmEntryValidate {
|
|
233 |
}
|
234 |
|
235 |
if ( self::blacklist_check( $values ) ) {
|
236 |
-
$errors['spam'] = __( 'Your entry appears to be
|
237 |
}
|
238 |
|
239 |
if ( self::is_akismet_spam( $values ) ) {
|
@@ -272,7 +272,7 @@ class FrmEntryValidate {
|
|
272 |
return false;
|
273 |
}
|
274 |
|
275 |
-
$mod_keys = trim(
|
276 |
if ( empty( $mod_keys ) ) {
|
277 |
return false;
|
278 |
}
|
@@ -286,7 +286,34 @@ class FrmEntryValidate {
|
|
286 |
$user_agent = FrmAppHelper::get_server_value( 'HTTP_USER_AGENT' );
|
287 |
$user_info = self::get_spam_check_user_info( $values );
|
288 |
|
289 |
-
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
290 |
}
|
291 |
|
292 |
/**
|
233 |
}
|
234 |
|
235 |
if ( self::blacklist_check( $values ) ) {
|
236 |
+
$errors['spam'] = __( 'Your entry appears to be blocked spam!', 'formidable' );
|
237 |
}
|
238 |
|
239 |
if ( self::is_akismet_spam( $values ) ) {
|
272 |
return false;
|
273 |
}
|
274 |
|
275 |
+
$mod_keys = trim( self::get_disallowed_words() );
|
276 |
if ( empty( $mod_keys ) ) {
|
277 |
return false;
|
278 |
}
|
286 |
$user_agent = FrmAppHelper::get_server_value( 'HTTP_USER_AGENT' );
|
287 |
$user_info = self::get_spam_check_user_info( $values );
|
288 |
|
289 |
+
return self::check_disallowed_words( $user_info['comment_author'], $user_info['comment_author_email'], $user_info['comment_author_url'], $content, $ip, $user_agent );
|
290 |
+
}
|
291 |
+
|
292 |
+
/**
|
293 |
+
* For WP 5.5 compatibility.
|
294 |
+
*
|
295 |
+
* @since 4.06.02
|
296 |
+
*/
|
297 |
+
private static function check_disallowed_words( $author, $email, $url, $content, $ip, $user_agent ) {
|
298 |
+
if ( function_exists( 'wp_check_comment_disallowed_list' ) ) {
|
299 |
+
return wp_check_comment_disallowed_list( $author, $email, $url, $content, $ip, $user_agent );
|
300 |
+
} else {
|
301 |
+
return wp_blacklist_check( $author, $email, $url, $content, $ip, $user_agent );
|
302 |
+
}
|
303 |
+
}
|
304 |
+
|
305 |
+
/**
|
306 |
+
* For WP 5.5 compatibility.
|
307 |
+
*
|
308 |
+
* @since 4.06.02
|
309 |
+
*/
|
310 |
+
private static function get_disallowed_words() {
|
311 |
+
$keys = get_option( 'disallowed_keys' );
|
312 |
+
if ( false === $keys ) {
|
313 |
+
// Fallback for WP < 5.5.
|
314 |
+
$keys = get_option( 'blacklist_keys' );
|
315 |
+
}
|
316 |
+
return $keys;
|
317 |
}
|
318 |
|
319 |
/**
|
classes/models/FrmField.php
CHANGED
@@ -51,7 +51,7 @@ class FrmField {
|
|
51 |
'icon' => 'frm_icon_font frm_code_icon',
|
52 |
),
|
53 |
'hidden' => array(
|
54 |
-
'name' => __( 'Hidden
|
55 |
'icon' => 'frm_icon_font frm_eye_slash_icon',
|
56 |
),
|
57 |
'user_id' => array(
|
51 |
'icon' => 'frm_icon_font frm_code_icon',
|
52 |
),
|
53 |
'hidden' => array(
|
54 |
+
'name' => __( 'Hidden', 'formidable' ),
|
55 |
'icon' => 'frm_icon_font frm_eye_slash_icon',
|
56 |
),
|
57 |
'user_id' => array(
|
classes/models/FrmFieldValue.php
CHANGED
@@ -53,6 +53,7 @@ class FrmFieldValue {
|
|
53 |
|
54 |
$this->entry = $entry;
|
55 |
$this->entry_id = $entry->id;
|
|
|
56 |
$this->field = $field;
|
57 |
$this->init_saved_value( $entry );
|
58 |
}
|
53 |
|
54 |
$this->entry = $entry;
|
55 |
$this->entry_id = $entry->id;
|
56 |
+
$field = apply_filters( 'frm_field_value_object', $field );
|
57 |
$this->field = $field;
|
58 |
$this->init_saved_value( $entry );
|
59 |
}
|
classes/models/FrmFormAction.php
CHANGED
@@ -712,6 +712,11 @@ class FrmFormAction {
|
|
712 |
}
|
713 |
|
714 |
public static function action_conditions_met( $action, $entry ) {
|
|
|
|
|
|
|
|
|
|
|
715 |
$notification = $action->post_content;
|
716 |
$stop = false;
|
717 |
$met = array();
|
@@ -755,6 +760,7 @@ class FrmFormAction {
|
|
755 |
* Prepare the logic value for comparison against the entered value
|
756 |
*
|
757 |
* @since 2.01.02
|
|
|
758 |
*
|
759 |
* @param array|string $logic_value
|
760 |
*/
|
@@ -779,6 +785,7 @@ class FrmFormAction {
|
|
779 |
* Get the value from a specific field and entry
|
780 |
*
|
781 |
* @since 2.01.02
|
|
|
782 |
*
|
783 |
* @param object $entry
|
784 |
* @param int $field_id
|
712 |
}
|
713 |
|
714 |
public static function action_conditions_met( $action, $entry ) {
|
715 |
+
if ( is_callable( 'FrmProFormActionsController::action_conditions_met' ) ) {
|
716 |
+
return FrmProFormActionsController::action_conditions_met( $action, $entry );
|
717 |
+
}
|
718 |
+
|
719 |
+
// This is here for reverse compatibility.
|
720 |
$notification = $action->post_content;
|
721 |
$stop = false;
|
722 |
$met = array();
|
760 |
* Prepare the logic value for comparison against the entered value
|
761 |
*
|
762 |
* @since 2.01.02
|
763 |
+
* @deprecated 4.06.02
|
764 |
*
|
765 |
* @param array|string $logic_value
|
766 |
*/
|
785 |
* Get the value from a specific field and entry
|
786 |
*
|
787 |
* @since 2.01.02
|
788 |
+
* @deprecated 4.06.02
|
789 |
*
|
790 |
* @param object $entry
|
791 |
* @param int $field_id
|
classes/models/FrmSolution.php
ADDED
@@ -0,0 +1,804 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Handles the installation of a solution and any dependencies.
|
4 |
+
* This page is shown when a Formidable plugin is activated.
|
5 |
+
*
|
6 |
+
* @since 4.06.02
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
die( 'You are not allowed to call this page directly.' );
|
11 |
+
}
|
12 |
+
|
13 |
+
class FrmSolution {
|
14 |
+
|
15 |
+
protected $plugin_slug = '';
|
16 |
+
|
17 |
+
protected $plugin_file = '';
|
18 |
+
|
19 |
+
/**
|
20 |
+
* Hidden welcome page slug.
|
21 |
+
*
|
22 |
+
* @since 4.06.02
|
23 |
+
*/
|
24 |
+
protected $page = '';
|
25 |
+
|
26 |
+
protected $icon = 'frm_icon_font frm_settings_icon';
|
27 |
+
|
28 |
+
public function __construct( $atts = array() ) {
|
29 |
+
if ( empty( $this->plugin_slug ) ) {
|
30 |
+
return;
|
31 |
+
}
|
32 |
+
|
33 |
+
add_action( 'plugins_loaded', array( $this, 'load_hooks' ), 50 );
|
34 |
+
add_action( 'admin_init', array( $this, 'redirect' ), 9999 );
|
35 |
+
|
36 |
+
if ( empty( $this->plugin_file ) ) {
|
37 |
+
$this->plugin_file = $this->plugin_slug . '.php';
|
38 |
+
}
|
39 |
+
}
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Register all WP hooks.
|
43 |
+
*
|
44 |
+
* @since 4.06.02
|
45 |
+
*/
|
46 |
+
public function load_hooks() {
|
47 |
+
// If user is in admin ajax or doing cron, return.
|
48 |
+
if ( wp_doing_cron() ) {
|
49 |
+
return;
|
50 |
+
}
|
51 |
+
|
52 |
+
add_filter( 'frm_add_settings_section', array( $this, 'add_settings' ) );
|
53 |
+
|
54 |
+
if ( wp_doing_ajax() ) {
|
55 |
+
return;
|
56 |
+
}
|
57 |
+
|
58 |
+
// If user cannot manage_options, return.
|
59 |
+
if ( ! current_user_can( 'frm_change_settings' ) && ! FrmAppHelper::is_formidable_admin() ) {
|
60 |
+
return;
|
61 |
+
}
|
62 |
+
|
63 |
+
add_filter( 'plugin_action_links_' . $this->plugin_slug . '/' . $this->plugin_file, array( $this, 'plugin_links' ) );
|
64 |
+
add_action( 'admin_menu', array( $this, 'register' ) );
|
65 |
+
add_action( 'admin_head', array( $this, 'hide_menu' ) );
|
66 |
+
}
|
67 |
+
|
68 |
+
public function plugin_links( $links ) {
|
69 |
+
if ( ! $this->is_complete() ) {
|
70 |
+
$settings = '<a href="' . esc_url( $this->settings_link() ) . '">' . __( 'Setup', 'formidable' ) . '</a>';
|
71 |
+
array_unshift( $links, $settings );
|
72 |
+
}
|
73 |
+
|
74 |
+
return $links;
|
75 |
+
}
|
76 |
+
|
77 |
+
/**
|
78 |
+
* Register the pages to be used for the Welcome screen (and tabs).
|
79 |
+
*
|
80 |
+
* These pages will be removed from the Dashboard menu, so they will
|
81 |
+
* not actually show. Sneaky, sneaky.
|
82 |
+
*
|
83 |
+
* @since 4.06.02
|
84 |
+
*/
|
85 |
+
public function register() {
|
86 |
+
|
87 |
+
// Getting started - shows after installation.
|
88 |
+
add_dashboard_page(
|
89 |
+
esc_html( $this->page_title() ),
|
90 |
+
esc_html( $this->page_title() ),
|
91 |
+
'frm_change_settings',
|
92 |
+
$this->page,
|
93 |
+
array( $this, 'output' )
|
94 |
+
);
|
95 |
+
}
|
96 |
+
|
97 |
+
/**
|
98 |
+
* Removed the dashboard pages from the admin menu.
|
99 |
+
*
|
100 |
+
* This means the pages are still available to us, but hidden.
|
101 |
+
*
|
102 |
+
* @since 4.06.02
|
103 |
+
*/
|
104 |
+
public function hide_menu() {
|
105 |
+
remove_submenu_page( 'index.php', $this->page );
|
106 |
+
}
|
107 |
+
|
108 |
+
protected function plugin_name() {
|
109 |
+
return '';
|
110 |
+
}
|
111 |
+
|
112 |
+
protected function page_title() {
|
113 |
+
return __( 'Welcome to Formidable Forms', 'formidable' );
|
114 |
+
}
|
115 |
+
|
116 |
+
protected function page_description() {
|
117 |
+
return __( 'Follow the steps below to get started.', 'formidable' );
|
118 |
+
}
|
119 |
+
|
120 |
+
/**
|
121 |
+
* Welcome screen redirect.
|
122 |
+
*
|
123 |
+
* This function checks if a new install or update has just occurred. If so,
|
124 |
+
* then we redirect the user to the appropriate page.
|
125 |
+
*
|
126 |
+
* @since 4.06.02
|
127 |
+
*/
|
128 |
+
public function redirect() {
|
129 |
+
|
130 |
+
$current_page = FrmAppHelper::simple_get( 'page', 'sanitize_title' );
|
131 |
+
if ( $current_page === $this->page ) {
|
132 |
+
// Prevent endless loop.
|
133 |
+
return;
|
134 |
+
}
|
135 |
+
|
136 |
+
// Only do this for single site installs.
|
137 |
+
if ( isset( $_GET['activate-multi'] ) || is_network_admin() ) { // WPCS: CSRF ok.
|
138 |
+
return;
|
139 |
+
}
|
140 |
+
|
141 |
+
// Check if we should consider redirection.
|
142 |
+
if ( ! $this->is_current_plugin() ) {
|
143 |
+
return;
|
144 |
+
}
|
145 |
+
|
146 |
+
delete_transient( 'frm_activation_redirect' );
|
147 |
+
|
148 |
+
// Initial install.
|
149 |
+
wp_safe_redirect( $this->settings_link() );
|
150 |
+
exit;
|
151 |
+
}
|
152 |
+
|
153 |
+
protected function settings_link() {
|
154 |
+
return admin_url( 'index.php?page=' . $this->page );
|
155 |
+
}
|
156 |
+
|
157 |
+
/*
|
158 |
+
* Add page to global settings.
|
159 |
+
*/
|
160 |
+
public static function add_settings( $sections ) {
|
161 |
+
wp_enqueue_style( 'formidable-pro-fields' );
|
162 |
+
$sections[ $this->plugin_slug ] = array(
|
163 |
+
'class' => $this,
|
164 |
+
'function' => 'settings_page',
|
165 |
+
'name' => $this->plugin_name(),
|
166 |
+
'icon' => $this->icon,
|
167 |
+
'ajax' => true,
|
168 |
+
);
|
169 |
+
return $sections;
|
170 |
+
}
|
171 |
+
|
172 |
+
/*
|
173 |
+
* Output for global settings.
|
174 |
+
*/
|
175 |
+
public static function settings_page() {
|
176 |
+
$steps = $this->get_steps_data();
|
177 |
+
if ( ! $steps['license']['complete'] ) {
|
178 |
+
$this->license_box( $steps['license'] );
|
179 |
+
}
|
180 |
+
|
181 |
+
if ( isset( $steps['plugin'] ) && ! $steps['license']['complete'] ) {
|
182 |
+
$this->show_plugin_install( $steps['plugin'] );
|
183 |
+
}
|
184 |
+
|
185 |
+
$all_imported = $this->is_complete( 'all' );
|
186 |
+
|
187 |
+
$step = $steps['import'];
|
188 |
+
$step['label'] = '';
|
189 |
+
$step['nested'] = true;
|
190 |
+
if ( $steps['complete']['current'] ) {
|
191 |
+
// Always show this step in settings.
|
192 |
+
$step['current'] = true;
|
193 |
+
|
194 |
+
$new_class = $all_imported ? ' button frm_hidden' : '';
|
195 |
+
$step['button_class'] = str_replace( 'frm_grey disabled', $new_class, $step['button_class'] );
|
196 |
+
}
|
197 |
+
if ( $all_imported ) {
|
198 |
+
$step['description'] = __( 'The following form(s) have been created.', 'formidable' );
|
199 |
+
}
|
200 |
+
$this->show_app_install( $step );
|
201 |
+
|
202 |
+
if ( ! $all_imported ) {
|
203 |
+
$step = $steps['complete'];
|
204 |
+
$step['current'] = false;
|
205 |
+
$step['button_class'] .= ' frm_grey disabled';
|
206 |
+
$this->show_page_links( $step );
|
207 |
+
}
|
208 |
+
}
|
209 |
+
|
210 |
+
/**
|
211 |
+
* Getting Started screen. Shows after first install.
|
212 |
+
*/
|
213 |
+
public function output() {
|
214 |
+
FrmAppHelper::include_svg();
|
215 |
+
$this->css();
|
216 |
+
$class = FrmAppHelper::pro_is_installed() ? 'pro' : 'lite';
|
217 |
+
|
218 |
+
echo '<div id="frm-welcome" class="wrap frm-wrap frm-admin-plugin-landing upgrade_to_pro ' . sanitize_html_class( $class ) . '">';
|
219 |
+
|
220 |
+
$this->header();
|
221 |
+
$this->main_content();
|
222 |
+
|
223 |
+
echo '</div>';
|
224 |
+
}
|
225 |
+
|
226 |
+
/**
|
227 |
+
* Heading section.
|
228 |
+
*/
|
229 |
+
protected function header() {
|
230 |
+
$size = array(
|
231 |
+
'height' => 90,
|
232 |
+
'width' => 90,
|
233 |
+
);
|
234 |
+
|
235 |
+
?>
|
236 |
+
<section class="top">
|
237 |
+
<div class="frm-smtp-logos">
|
238 |
+
<?php FrmAppHelper::show_logo( $size ); ?>
|
239 |
+
<?php
|
240 |
+
FrmAppHelper::icon_by_class(
|
241 |
+
'frmfont frm_arrow_right_icon',
|
242 |
+
array(
|
243 |
+
'aria-label' => 'Install',
|
244 |
+
'style' => 'width:30px;height:30px;margin:0 35px;',
|
245 |
+
)
|
246 |
+
);
|
247 |
+
FrmAppHelper::icon_by_class(
|
248 |
+
'frmfont frm_wordpress_icon',
|
249 |
+
array(
|
250 |
+
'aria-label' => 'WordPress',
|
251 |
+
'style' => 'width:90px;height:90px;',
|
252 |
+
)
|
253 |
+
);
|
254 |
+
?>
|
255 |
+
</div>
|
256 |
+
<h1><?php echo esc_html( $this->page_title() ); ?></h1>
|
257 |
+
<p><?php echo esc_html( $this->page_description() ); ?></p>
|
258 |
+
</section>
|
259 |
+
<?php
|
260 |
+
}
|
261 |
+
|
262 |
+
/**
|
263 |
+
* This is the welcome page content.
|
264 |
+
* Override me to insert different content.
|
265 |
+
*/
|
266 |
+
protected function main_content() {
|
267 |
+
$steps = $this->get_steps_data();
|
268 |
+
$this->license_box( $steps['license'] );
|
269 |
+
if ( isset( $steps['plugin'] ) ) {
|
270 |
+
$this->show_plugin_install( $steps['plugin'] );
|
271 |
+
}
|
272 |
+
$this->show_app_install( $steps['import'] );
|
273 |
+
$this->show_page_links( $steps['complete'] );
|
274 |
+
}
|
275 |
+
|
276 |
+
protected function get_steps_data() {
|
277 |
+
$pro_installed = FrmAppHelper::pro_is_connected();
|
278 |
+
|
279 |
+
$steps = array(
|
280 |
+
'license' => array(
|
281 |
+
'label' => __( 'Connect to FormidableForms.com', 'formidable' ),
|
282 |
+
'description' => __( 'Create a connection to get plugin downloads.', 'formidable' ),
|
283 |
+
'button_label' => __( 'Connect an Account', 'formidable' ),
|
284 |
+
'current' => empty( $pro_installed ),
|
285 |
+
'complete' => $pro_installed,
|
286 |
+
'num' => 1,
|
287 |
+
),
|
288 |
+
'plugin' => array(
|
289 |
+
'label' => __( 'Install and Activate Add-Ons', 'formidable' ),
|
290 |
+
'description' => __( 'Install any required add-ons from FormidableForms.com.', 'formidable' ),
|
291 |
+
'button_label' => __( 'Install & Activate', 'formidable' ),
|
292 |
+
'current' => false,
|
293 |
+
'complete' => false,
|
294 |
+
'num' => 2,
|
295 |
+
),
|
296 |
+
'import' => array(
|
297 |
+
'label' => __( 'Setup Forms, Views, and Pages', 'formidable' ),
|
298 |
+
'description' => __( 'Build the forms, views, and pages automatically.', 'formidable' ),
|
299 |
+
'button_label' => __( 'Create Now', 'formidable' ),
|
300 |
+
'complete' => $this->is_complete(),
|
301 |
+
'num' => 3,
|
302 |
+
),
|
303 |
+
'complete' => array(
|
304 |
+
'label' => __( 'Customize Your New Pages', 'formidable' ),
|
305 |
+
'description' => __( 'Make any required changes and publish the page.', 'formidable' ),
|
306 |
+
'button_label' => __( 'View Page', 'formidable' ),
|
307 |
+
'complete' => false,
|
308 |
+
'num' => 4,
|
309 |
+
),
|
310 |
+
);
|
311 |
+
|
312 |
+
$this->adjust_plugin_install_step( $steps );
|
313 |
+
|
314 |
+
$has_current = false;
|
315 |
+
foreach ( $steps as $k => $step ) {
|
316 |
+
// Set the current step.
|
317 |
+
if ( ! isset( $step['current'] ) ) {
|
318 |
+
if ( $step['complete'] ) {
|
319 |
+
$steps[ $k ]['current'] = false;
|
320 |
+
} else {
|
321 |
+
$steps[ $k ]['current'] = ! $has_current;
|
322 |
+
$has_current = true;
|
323 |
+
}
|
324 |
+
} elseif ( $step['current'] ) {
|
325 |
+
$has_current = true;
|
326 |
+
}
|
327 |
+
|
328 |
+
// Set disabled buttons.
|
329 |
+
$class = isset( $step['button_class'] ) ? $step['button_class'] : '';
|
330 |
+
$class .= ' button-primary frm-button-primary';
|
331 |
+
if ( ! $steps[ $k ]['current'] ) {
|
332 |
+
$class .= ' frm_grey disabled';
|
333 |
+
}
|
334 |
+
$steps[ $k ]['button_class'] = $class;
|
335 |
+
}
|
336 |
+
|
337 |
+
return $steps;
|
338 |
+
}
|
339 |
+
|
340 |
+
protected function adjust_plugin_install_step( &$steps ) {
|
341 |
+
$plugins = $this->required_plugins();
|
342 |
+
if ( empty( $plugins ) ) {
|
343 |
+
unset( $steps['plugin'] );
|
344 |
+
$steps['import']['num'] = 2;
|
345 |
+
$steps['complete']['num'] = 3;
|
346 |
+
return;
|
347 |
+
}
|
348 |
+
|
349 |
+
$missing = array();
|
350 |
+
$rel = array();
|
351 |
+
foreach ( $plugins as $plugin_key ) {
|
352 |
+
$plugin = FrmAddonsController::install_link( $plugin_key );
|
353 |
+
if ( $plugin['status'] === 'active' ) {
|
354 |
+
continue;
|
355 |
+
}
|
356 |
+
$links[ $plugin_key ] = $plugin;
|
357 |
+
if ( isset( $plugin['url'] ) ) {
|
358 |
+
$rel[] = $plugin['url'];
|
359 |
+
} else {
|
360 |
+
// Add-on is required but not allowed.
|
361 |
+
$missing[] = $plugin_key;
|
362 |
+
}
|
363 |
+
}
|
364 |
+
if ( empty( $rel ) && empty( $missing ) ) {
|
365 |
+
$steps['plugin']['complete'] = true;
|
366 |
+
} elseif ( ! empty( $missing ) ) {
|
367 |
+
$steps['plugin']['error'] = sprintf(
|
368 |
+
/* translators: %1$s: Plugin name */
|
369 |
+
esc_html__( 'You need permission to download the Formidable %1$s plugin', 'formidable' ),
|
370 |
+
implode( ', ', $missing )
|
371 |
+
);
|
372 |
+
} else {
|
373 |
+
$steps['plugin']['links'] = $rel;
|
374 |
+
$steps['plugin']['button_class'] = 'frm-solution-multiple ';
|
375 |
+
}
|
376 |
+
|
377 |
+
if ( $steps['license']['complete'] && ! $steps['plugin']['complete'] ) {
|
378 |
+
$steps['plugin']['current'] = true;
|
379 |
+
}
|
380 |
+
}
|
381 |
+
|
382 |
+
protected function step_top( $step ) {
|
383 |
+
$section_class = ( ! isset( $step['current'] ) || ! $step['current'] ) ? 'frm_grey' : '';
|
384 |
+
|
385 |
+
?>
|
386 |
+
<section class="step step-install <?php echo esc_attr( $section_class ); ?>">
|
387 |
+
<aside class="num">
|
388 |
+
<?php
|
389 |
+
if ( isset( $step['complete'] ) && $step['complete'] ) {
|
390 |
+
FrmAppHelper::icon_by_class(
|
391 |
+
'frmfont frm_step_complete_icon',
|
392 |
+
array(
|
393 |
+
/* translators: %1$s: Step number */
|
394 |
+
'aria-label' => sprintf( __( 'Step %1$d', 'formidable' ), $step['num'] ),
|
395 |
+
'style' => 'width:50px;height:50px;',
|
396 |
+
)
|
397 |
+
);
|
398 |
+
} else {
|
399 |
+
?>
|
400 |
+
<svg xmlns="http://www.w3.org/2000/svg" width="50" height="50" viewBox="0 0 100 100"><circle cx="50" cy="50" r="50" fill="#ccc"/><text x="50%" y="50%" text-anchor="middle" fill="#fff" stroke="#fff" stroke-width="2px" dy=".3em" font-size="3.7em"><?php echo esc_html( $step['num'] ); ?></text></svg>
|
401 |
+
<?php
|
402 |
+
}
|
403 |
+
?>
|
404 |
+
<i class="loader hidden"></i>
|
405 |
+
</aside>
|
406 |
+
<div>
|
407 |
+
<?php if ( $step['label'] ) { ?>
|
408 |
+
<h3 class="frm-step-heading"><?php echo esc_html( $step['label'] ); ?></h3>
|
409 |
+
<?php } ?>
|
410 |
+
<p><?php echo esc_html( $step['description'] ); ?></p>
|
411 |
+
<?php if ( isset( $step['error'] ) ) { ?>
|
412 |
+
<p class="frm_error"><?php echo esc_html( $step['error'] ); ?></p>
|
413 |
+
<?php } ?>
|
414 |
+
<?php
|
415 |
+
}
|
416 |
+
|
417 |
+
protected function step_bottom( $step ) {
|
418 |
+
?>
|
419 |
+
</div>
|
420 |
+
</section>
|
421 |
+
<?php
|
422 |
+
}
|
423 |
+
|
424 |
+
/**
|
425 |
+
* Generate and output Connect step section HTML.
|
426 |
+
*/
|
427 |
+
protected function license_box( $step ) {
|
428 |
+
$this->step_top( $step );
|
429 |
+
|
430 |
+
if ( $step['complete'] ) {
|
431 |
+
?>
|
432 |
+
<a href="#" class="<?php echo esc_attr( $step['button_class'] ); ?>">
|
433 |
+
<?php echo esc_html( $step['button_label'] ); ?>
|
434 |
+
</a>
|
435 |
+
<?php
|
436 |
+
} else {
|
437 |
+
FrmSettingsController::license_box();
|
438 |
+
}
|
439 |
+
|
440 |
+
$this->step_bottom( $step );
|
441 |
+
}
|
442 |
+
|
443 |
+
protected function show_plugin_install( $step ) {
|
444 |
+
$this->step_top( $step );
|
445 |
+
|
446 |
+
if ( ! isset( $step['error'] ) ) {
|
447 |
+
$rel = isset( $step['links'] ) ? $step['links'] : array();
|
448 |
+
|
449 |
+
?>
|
450 |
+
<a rel="<?php echo esc_attr( implode( ',', $rel ) ); ?>" class="<?php echo esc_attr( $step['button_class'] ); ?>">
|
451 |
+
<?php echo esc_html( $step['button_label'] ); ?>
|
452 |
+
</a>
|
453 |
+
<?php
|
454 |
+
}
|
455 |
+
|
456 |
+
$this->step_bottom( $step );
|
457 |
+
}
|
458 |
+
|
459 |
+
protected function show_app_install( $step ) {
|
460 |
+
$is_complete = $step['complete'];
|
461 |
+
if ( ! empty( $this->form_options() ) && ! $is_complete ) {
|
462 |
+
$step['description'] = __( 'Select the form or view you would like to create.', 'formidable' );
|
463 |
+
}
|
464 |
+
|
465 |
+
$this->step_top( $step );
|
466 |
+
|
467 |
+
$api = new FrmFormApi();
|
468 |
+
$addons = $api->get_api_info();
|
469 |
+
|
470 |
+
$id = $this->download_id();
|
471 |
+
$has_file = isset( $addons[ $id ] ) && isset( $addons[ $id ]['beta'] );
|
472 |
+
|
473 |
+
if ( ! $step['current'] ) {
|
474 |
+
?>
|
475 |
+
<a href="#" class="<?php echo esc_attr( $step['button_class'] ); ?>">
|
476 |
+
<?php echo esc_html( $step['button_label'] ); ?>
|
477 |
+
</a>
|
478 |
+
<?php
|
479 |
+
|
480 |
+
$this->step_bottom( $step );
|
481 |
+
return;
|
482 |
+
}
|
483 |
+
|
484 |
+
if ( ! $has_file ) {
|
485 |
+
echo '<p class="frm_error_style">' . esc_html__( 'We didn\'t find anything to import. Please contact our team.', 'formidable' ) . '</p>';
|
486 |
+
} elseif ( ! isset( $addons[ $id ]['beta']['package'] ) ) {
|
487 |
+
echo '<p class="frm_error_style">' . esc_html__( 'Looks like you may not have a current subscription for this solution. Please check your account.', 'formidable' ) . '</p>';
|
488 |
+
} else {
|
489 |
+
$xml = $addons[ $id ]['beta']['package'];
|
490 |
+
if ( is_array( $xml ) ) {
|
491 |
+
$xml = reset( $xml );
|
492 |
+
}
|
493 |
+
|
494 |
+
if ( isset( $step['nested'] ) ) {
|
495 |
+
echo '<fieldset id="frm-new-template" class="field-group">';
|
496 |
+
} else {
|
497 |
+
echo '<form name="frm-new-template" id="frm-new-template" method="post" class="field-group">';
|
498 |
+
}
|
499 |
+
|
500 |
+
?>
|
501 |
+
<input type="hidden" name="link" id="frm_link" value="<?php echo esc_attr( $xml ); ?>" />
|
502 |
+
<input type="hidden" name="type" id="frm_action_type" value="frm_install_template" />
|
503 |
+
<input type="hidden" name="template_name" id="frm_template_name" value="" />
|
504 |
+
<input type="hidden" name="template_desc" id="frm_template_desc" value="" />
|
505 |
+
<input type="hidden" name="redirect" value="0" />
|
506 |
+
<input type="hidden" name="show_response" value="frm_install_error" />
|
507 |
+
<?php
|
508 |
+
$this->show_form_options( $xml );
|
509 |
+
$this->show_view_options();
|
510 |
+
|
511 |
+
if ( ! $this->is_complete( 'all' ) ) {
|
512 |
+
// Don't show on the settings page when complete.
|
513 |
+
$this->show_page_options();
|
514 |
+
}
|
515 |
+
?>
|
516 |
+
<p>
|
517 |
+
<button <?php echo esc_html( isset( $step['nested'] ) ? '' : 'type="submit" ' ); ?>class="<?php echo esc_attr( $step['button_class'] ); ?>">
|
518 |
+
<?php echo esc_html( $step['button_label'] ); ?>
|
519 |
+
</button>
|
520 |
+
</p>
|
521 |
+
<p id="frm_install_error" class="frm_error_style frm_hidden"></p>
|
522 |
+
<?php
|
523 |
+
if ( isset( $step['nested'] ) ) {
|
524 |
+
echo '</fieldset>';
|
525 |
+
} else {
|
526 |
+
echo '</form>';
|
527 |
+
}
|
528 |
+
}
|
529 |
+
|
530 |
+
$this->step_bottom( $step );
|
531 |
+
}
|
532 |
+
|
533 |
+
protected function show_form_options( $xml ) {
|
534 |
+
$this->show_import_options( $this->form_options(), 'form', $xml );
|
535 |
+
}
|
536 |
+
|
537 |
+
protected function show_view_options() {
|
538 |
+
$this->show_import_options( $this->view_options(), 'view' );
|
539 |
+
}
|
540 |
+
|
541 |
+
protected function show_import_options( $options, $importing, $xml = '' ) {
|
542 |
+
if ( empty( $options ) ) {
|
543 |
+
return;
|
544 |
+
}
|
545 |
+
|
546 |
+
$imported = $this->previously_imported_forms();
|
547 |
+
$count = count( $options );
|
548 |
+
foreach ( $options as $info ) {
|
549 |
+
// Count the number of options displayed for css.
|
550 |
+
if ( $count > 1 && ! isset( $info['img'] ) ) {
|
551 |
+
$count --;
|
552 |
+
}
|
553 |
+
}
|
554 |
+
$width = floor( ( 533 - ( ( $count - 1 ) * 20 ) ) / $count );
|
555 |
+
unset( $count );
|
556 |
+
|
557 |
+
$selected = false;
|
558 |
+
|
559 |
+
include( FrmAppHelper::plugin_path() . '/classes/views/solutions/_import.php' );
|
560 |
+
}
|
561 |
+
|
562 |
+
protected function show_page_options() {
|
563 |
+
$pages = $this->needed_pages();
|
564 |
+
if ( empty( $pages ) ) {
|
565 |
+
return;
|
566 |
+
}
|
567 |
+
|
568 |
+
echo '<h3>Choose New Page Title</h3>';
|
569 |
+
foreach ( $pages as $page ) {
|
570 |
+
?>
|
571 |
+
<p>
|
572 |
+
<label for="pages_<?php echo esc_html( $page['type'] ); ?>">
|
573 |
+
<?php echo esc_html( $page['label'] ); ?>
|
574 |
+
</label>
|
575 |
+
<input type="text" name="pages[<?php echo esc_html( $page['type'] ); ?>]" value="<?php echo esc_attr( $page['name'] ); ?>" id="pages_<?php echo esc_html( $page['type'] ); ?>" required />
|
576 |
+
</p>
|
577 |
+
<?php
|
578 |
+
}
|
579 |
+
}
|
580 |
+
|
581 |
+
protected function show_page_links( $step ) {
|
582 |
+
if ( $step['current'] ) {
|
583 |
+
return;
|
584 |
+
}
|
585 |
+
|
586 |
+
$this->step_top( $step );
|
587 |
+
|
588 |
+
?>
|
589 |
+
<a href="#" target="_blank" rel="noopener" id="frm-redirect-link" class="<?php echo esc_attr( $step['button_class'] ); ?>">
|
590 |
+
<?php echo esc_html( $step['button_label'] ); ?>
|
591 |
+
</a>
|
592 |
+
<?php
|
593 |
+
|
594 |
+
$this->step_bottom( $step );
|
595 |
+
}
|
596 |
+
|
597 |
+
/**
|
598 |
+
* Only show the content for the correct plugin.
|
599 |
+
*/
|
600 |
+
protected function is_current_plugin() {
|
601 |
+
$to_redirect = get_transient( 'frm_activation_redirect' );
|
602 |
+
return $to_redirect === $this->plugin_slug && empty( $this->is_complete() );
|
603 |
+
}
|
604 |
+
|
605 |
+
/**
|
606 |
+
* Override this function to indicate when install is complete.
|
607 |
+
*/
|
608 |
+
protected function is_complete( $count = 1 ) {
|
609 |
+
$imported = $this->previously_imported_forms();
|
610 |
+
if ( $count === 'all' ) {
|
611 |
+
return count( $imported ) >= count( $this->form_options() );
|
612 |
+
}
|
613 |
+
return ! empty( $imported );
|
614 |
+
}
|
615 |
+
|
616 |
+
/**
|
617 |
+
* Get an array of all of the forms that have been imported.
|
618 |
+
*
|
619 |
+
* @return array
|
620 |
+
*/
|
621 |
+
protected function previously_imported_forms() {
|
622 |
+
$imported = array();
|
623 |
+
$forms = $this->form_options();
|
624 |
+
foreach ( $forms as $form ) {
|
625 |
+
$was_imported = isset( $form['form'] ) ? FrmForm::get_id_by_key( $form['form'] ) : false;
|
626 |
+
if ( $was_imported ) {
|
627 |
+
$imported[ $form['form'] ] = $was_imported;
|
628 |
+
}
|
629 |
+
}
|
630 |
+
|
631 |
+
return $imported;
|
632 |
+
}
|
633 |
+
|
634 |
+
/**
|
635 |
+
* In the new plugin has any dependencies, include them here.
|
636 |
+
*/
|
637 |
+
protected function required_plugins() {
|
638 |
+
return array();
|
639 |
+
}
|
640 |
+
|
641 |
+
/**
|
642 |
+
* This needs to be overridden.
|
643 |
+
*/
|
644 |
+
protected function download_id() {
|
645 |
+
return 0;
|
646 |
+
}
|
647 |
+
|
648 |
+
/**
|
649 |
+
* Give options for which forms to import.
|
650 |
+
*/
|
651 |
+
protected function form_options() {
|
652 |
+
/**
|
653 |
+
* Example:
|
654 |
+
* array(
|
655 |
+
* 'unique-key' => array(
|
656 |
+
* 'keys' => 'forms keys here',
|
657 |
+
* 'name' => 'displayed label here',
|
658 |
+
* 'img' => 'svg code',
|
659 |
+
* ),
|
660 |
+
* )
|
661 |
+
*/
|
662 |
+
return array();
|
663 |
+
}
|
664 |
+
|
665 |
+
/**
|
666 |
+
* Give options for which view to use.
|
667 |
+
*/
|
668 |
+
protected function view_options() {
|
669 |
+
return array();
|
670 |
+
}
|
671 |
+
|
672 |
+
/**
|
673 |
+
* If the pages aren't imported automatically, set the page names.
|
674 |
+
*/
|
675 |
+
protected function needed_pages() {
|
676 |
+
/**
|
677 |
+
* Example:
|
678 |
+
* array(
|
679 |
+
* array(
|
680 |
+
* 'label' => 'Page Name',
|
681 |
+
* 'name' => 'Default name',
|
682 |
+
* 'type' => 'form' or 'view',
|
683 |
+
* ),
|
684 |
+
* )
|
685 |
+
*/
|
686 |
+
|
687 |
+
return array();
|
688 |
+
}
|
689 |
+
|
690 |
+
private function css() {
|
691 |
+
wp_enqueue_style( 'formidable-pro-fields' );
|
692 |
+
?>
|
693 |
+
<style>
|
694 |
+
#frm-welcome *, #frm-welcome *::before, #frm-welcome *::after {
|
695 |
+
-webkit-box-sizing: border-box;
|
696 |
+
-moz-box-sizing: border-box;
|
697 |
+
box-sizing: border-box;
|
698 |
+
}
|
699 |
+
#frm-welcome{
|
700 |
+
width: 700px;
|
701 |
+
margin: 0 auto;
|
702 |
+
}
|
703 |
+
#frm-welcome p {
|
704 |
+
font-size: 15px;
|
705 |
+
}
|
706 |
+
#frm-welcome section{
|
707 |
+
margin: 50px 0;
|
708 |
+
text-align: left;
|
709 |
+
clear: both;
|
710 |
+
}
|
711 |
+
#frm-welcome .top{
|
712 |
+
text-align: center;
|
713 |
+
}
|
714 |
+
.frm-smtp-logos {
|
715 |
+
margin-bottom: 38px;
|
716 |
+
}
|
717 |
+
.frm-smtp-logos svg {
|
718 |
+
vertical-align: middle;
|
719 |
+
}
|
720 |
+
#frm-welcome .top h1 {
|
721 |
+
font-size: 26px;
|
722 |
+
font-weight: 600;
|
723 |
+
margin-bottom: 0;
|
724 |
+
padding: 0;
|
725 |
+
}
|
726 |
+
#frm-welcome .top p {
|
727 |
+
font-size: 17px;
|
728 |
+
color: #777;
|
729 |
+
margin-top: .5em;
|
730 |
+
}
|
731 |
+
#frm-welcome .screenshot ul {
|
732 |
+
display: inline-block;
|
733 |
+
margin: 0 0 0 30px;
|
734 |
+
list-style-type: none;
|
735 |
+
max-width: calc(100% - 350px);
|
736 |
+
}
|
737 |
+
#frm-welcome .screenshot li {
|
738 |
+
margin: 16px 0;
|
739 |
+
padding: 0;
|
740 |
+
font-size: 15px;
|
741 |
+
color: #777;
|
742 |
+
}
|
743 |
+
#frm-welcome .screenshot .cont img {
|
744 |
+
max-width: 100%;
|
745 |
+
display: block;
|
746 |
+
}
|
747 |
+
#frm-welcome .screenshot .cont {
|
748 |
+
display: inline-block;
|
749 |
+
position: relative;
|
750 |
+
width: 315px;
|
751 |
+
padding: 5px;
|
752 |
+
background-color: #fff;
|
753 |
+
border-radius: 3px;
|
754 |
+
}
|
755 |
+
#frm-welcome .step,
|
756 |
+
#frm-welcome .screenshot .cont {
|
757 |
+
-webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.05);
|
758 |
+
-moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.05);
|
759 |
+
box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.05);
|
760 |
+
}
|
761 |
+
#frm-welcome .step {
|
762 |
+
background-color: #F9F9F9;
|
763 |
+
border: 1px solid #E5E5E5;
|
764 |
+
margin: 0 0 25px;
|
765 |
+
}
|
766 |
+
#frm-welcome .screenshot > *,
|
767 |
+
#frm-welcome .step > * {
|
768 |
+
vertical-align: middle;
|
769 |
+
}
|
770 |
+
#frm-welcome .step p {
|
771 |
+
font-size: 16px;
|
772 |
+
color: #777777;
|
773 |
+
}
|
774 |
+
#frm-welcome .step .num {
|
775 |
+
display: inline-block;
|
776 |
+
position: relative;
|
777 |
+
width: 100px;
|
778 |
+
height: 50px;
|
779 |
+
text-align: center;
|
780 |
+
}
|
781 |
+
#frm-welcome .step > div {
|
782 |
+
display: inline-block;
|
783 |
+
width: calc(100% - 104px);
|
784 |
+
background-color: #fff;
|
785 |
+
padding: 30px;
|
786 |
+
border-left: 1px solid #eee;
|
787 |
+
}
|
788 |
+
#frm-welcome .step h3.frm-step-heading {
|
789 |
+
font-size: 24px;
|
790 |
+
line-height: 22px;
|
791 |
+
margin-top: 0;
|
792 |
+
margin-bottom: 15px;
|
793 |
+
}
|
794 |
+
#frm-welcome .button.disabled {
|
795 |
+
cursor: default;
|
796 |
+
}
|
797 |
+
#frm-welcome #frm-using-lite {
|
798 |
+
display: none;
|
799 |
+
}
|
800 |
+
</style>
|
801 |
+
<?php
|
802 |
+
}
|
803 |
+
|
804 |
+
}
|
classes/views/addons/list.php
CHANGED
@@ -8,16 +8,9 @@
|
|
8 |
?>
|
9 |
<div class="wrap">
|
10 |
|
11 |
-
<?php include( FrmAppHelper::plugin_path() . '/classes/views/shared/errors.php' ); ?>
|
12 |
-
|
13 |
-
<p class="alignleft">
|
14 |
-
<?php esc_html_e( 'Missing add-ons?', 'formidable' ); ?>
|
15 |
-
<a href="#" id="frm_reconnect_link" class="frm-show-authorized" data-refresh="1">
|
16 |
-
<?php esc_html_e( 'Check now for a recent upgrade or renewal', 'formidable' ); ?>
|
17 |
-
</a>
|
18 |
-
</p>
|
19 |
-
|
20 |
<?php
|
|
|
|
|
21 |
FrmAppHelper::show_search_box(
|
22 |
array(
|
23 |
'input_id' => 'addon',
|
@@ -25,6 +18,19 @@
|
|
25 |
'tosearch' => 'frm-card',
|
26 |
)
|
27 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
?>
|
29 |
<div class="clear"></div>
|
30 |
|
@@ -79,7 +85,13 @@
|
|
79 |
<?php esc_html_e( 'Renew Now', 'formidable' ); ?>
|
80 |
</a>
|
81 |
<?php } else { ?>
|
82 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
83 |
<?php esc_html_e( 'Upgrade Now', 'formidable' ); ?>
|
84 |
</a>
|
85 |
<?php } ?>
|
8 |
?>
|
9 |
<div class="wrap">
|
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
<?php
|
12 |
+
include( FrmAppHelper::plugin_path() . '/classes/views/shared/errors.php' );
|
13 |
+
|
14 |
FrmAppHelper::show_search_box(
|
15 |
array(
|
16 |
'input_id' => 'addon',
|
18 |
'tosearch' => 'frm-card',
|
19 |
)
|
20 |
);
|
21 |
+
|
22 |
+
if ( FrmAppHelper::pro_is_connected() ) {
|
23 |
+
?>
|
24 |
+
<p class="alignleft">
|
25 |
+
<?php esc_html_e( 'Missing add-ons?', 'formidable' ); ?>
|
26 |
+
<a href="#" id="frm_reconnect_link" class="frm-show-authorized" data-refresh="1">
|
27 |
+
<?php esc_html_e( 'Check now for a recent upgrade or renewal', 'formidable' ); ?>
|
28 |
+
</a>
|
29 |
+
</p>
|
30 |
+
<?php
|
31 |
+
} else {
|
32 |
+
FrmSettingsController::license_box();
|
33 |
+
}
|
34 |
?>
|
35 |
<div class="clear"></div>
|
36 |
|
85 |
<?php esc_html_e( 'Renew Now', 'formidable' ); ?>
|
86 |
</a>
|
87 |
<?php } else { ?>
|
88 |
+
<?php
|
89 |
+
if ( isset( $addon['categories'] ) && in_array( 'Solution', $addon['categories'] ) ) {
|
90 |
+
// Solutions will go to a separate page.
|
91 |
+
$pricing = FrmAppHelper::admin_upgrade_link( 'addons', $addon['link'] );
|
92 |
+
}
|
93 |
+
?>
|
94 |
+
<a class="install-now button button-secondary frm-button-secondary" href="<?php echo esc_url( $pricing . '&utm_content=' . $addon['slug'] ); ?>" target="_blank" rel="noopener" aria-label="<?php esc_attr_e( 'Upgrade Now', 'formidable' ); ?>">
|
95 |
<?php esc_html_e( 'Upgrade Now', 'formidable' ); ?>
|
96 |
</a>
|
97 |
<?php } ?>
|
classes/views/addons/settings.php
CHANGED
@@ -1,10 +1,8 @@
|
|
1 |
<div class="wrap">
|
2 |
-
<h2 class="frm-h2"><?php esc_html_e( 'Plugin Licenses', 'formidable' ); ?></h2>
|
3 |
-
|
4 |
<?php
|
5 |
|
6 |
foreach ( $plugins as $slug => $plugin ) {
|
7 |
-
if ( $slug == 'formidable_pro' || $plugin->is_parent_licence ) {
|
8 |
continue;
|
9 |
}
|
10 |
|
1 |
<div class="wrap">
|
|
|
|
|
2 |
<?php
|
3 |
|
4 |
foreach ( $plugins as $slug => $plugin ) {
|
5 |
+
if ( $slug == 'formidable_pro' || $plugin->is_parent_licence || ! $plugin->needs_license ) {
|
6 |
continue;
|
7 |
}
|
8 |
|
classes/views/frm-settings/license_box.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
<?php esc_html_e( 'Connect an Account', 'formidable' ); ?>
|
5 |
</a>
|
6 |
or
|
7 |
-
<a href="<?php echo esc_url( FrmAppHelper::admin_upgrade_link( 'settings-license' ) ); ?>" target="_blank" class="button-secondary frm-secondary
|
8 |
<?php esc_html_e( 'Get Formidable Now', 'formidable' ); ?>
|
9 |
</a>
|
10 |
</p>
|
4 |
<?php esc_html_e( 'Connect an Account', 'formidable' ); ?>
|
5 |
</a>
|
6 |
or
|
7 |
+
<a href="<?php echo esc_url( FrmAppHelper::admin_upgrade_link( 'settings-license' ) ); ?>" target="_blank" class="button-secondary frm-button-secondary">
|
8 |
<?php esc_html_e( 'Get Formidable Now', 'formidable' ); ?>
|
9 |
</a>
|
10 |
</p>
|
classes/views/solutions/_import.php
ADDED
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div class="frm_image_options frm_form_field" style="--image-size:<?php echo esc_attr( $width ); ?>px">
|
2 |
+
<div class="frm_opt_container">
|
3 |
+
<?php
|
4 |
+
foreach ( $options as $info ) {
|
5 |
+
if ( ! empty( $xml ) && isset( $info['url'] ) && $info['url'] === 'auto' ) {
|
6 |
+
$info['url'] = $xml;
|
7 |
+
}
|
8 |
+
|
9 |
+
$disabled = isset( $imported[ $info['form'] ] ) ? ' disabled' : '';
|
10 |
+
$url = isset( $info['url'] ) ? $info['url'] : '';
|
11 |
+
$value = $importing === 'form' ? $info['form'] : $info['key'];
|
12 |
+
if ( ! isset( $info['img'] ) ) {
|
13 |
+
?>
|
14 |
+
<input type="hidden" name="<?php echo esc_attr( $importing ); ?>[<?php echo esc_attr( $info['form'] ); ?>]" value="<?php echo esc_attr( $value ); ?>" <?php echo esc_attr( $disabled ); ?>/>
|
15 |
+
<?php
|
16 |
+
continue;
|
17 |
+
}
|
18 |
+
|
19 |
+
$hide_views = $importing === 'view' && ( ( $selected && $info['form'] !== $selected ) || isset( $imported[ $info['form'] ] ) );
|
20 |
+
?>
|
21 |
+
<div class="frm_radio radio-inline radio frm_image_option<?php echo esc_attr( $importing === 'view' ? ' show_sub_opt show_' . $info['form'] : '' ); ?>" style="<?php echo esc_attr( $hide_views ? 'display:none' : '' ); ?>">
|
22 |
+
<?php if ( $importing === 'form' ) { ?>
|
23 |
+
<input type="hidden" name="xml[<?php echo esc_attr( $info['form'] ); ?>]" value="<?php echo esc_attr( $url ); ?>" <?php echo esc_attr( $disabled ); ?>/>
|
24 |
+
<?php } ?>
|
25 |
+
<label>
|
26 |
+
<input type="radio" name="<?php echo esc_attr( $importing . ( $importing === 'view' ? '[' . $info['form'] . ']' : '' ) ); ?>" value="<?php echo esc_attr( $value ); ?>"
|
27 |
+
<?php
|
28 |
+
echo esc_attr( $disabled );
|
29 |
+
if ( ! $selected && empty( $disabled ) ) {
|
30 |
+
echo ' checked="checked"';
|
31 |
+
$selected = $info['form'];
|
32 |
+
}
|
33 |
+
?>
|
34 |
+
<?php if ( $importing === 'form' ) { ?>
|
35 |
+
onchange="frm_show_div('show_sub_opt',this.checked,false,'.');frm_show_div('show_<?php echo esc_attr( $info['form'] ); ?>',this.checked,true,'.')"
|
36 |
+
<?php } ?>
|
37 |
+
/>
|
38 |
+
<div class="frm_image_option_container frm_label_with_image">
|
39 |
+
<?php echo FrmAppHelper::kses( $info['img'], array( 'svg', 'rect', 'path' ) ); // WPCS: XSS ok. ?>
|
40 |
+
<span class="frm_text_label_for_image">
|
41 |
+
<?php
|
42 |
+
if ( ! empty( $disabled ) ) {
|
43 |
+
FrmAppHelper::icon_by_class(
|
44 |
+
'frmfont frm_step_complete_icon',
|
45 |
+
array(
|
46 |
+
'aria-label' => __( 'Imported', 'formidable' ),
|
47 |
+
)
|
48 |
+
);
|
49 |
+
}
|
50 |
+
|
51 |
+
if ( $importing === 'form' && $disabled ) {
|
52 |
+
echo FrmFormsHelper::edit_form_link( $imported[ $info['form'] ] ); // WPCS: XSS ok.
|
53 |
+
} else {
|
54 |
+
echo esc_html( $info['name'] );
|
55 |
+
}
|
56 |
+
?>
|
57 |
+
</span>
|
58 |
+
</div>
|
59 |
+
</label>
|
60 |
+
</div>
|
61 |
+
<?php } ?>
|
62 |
+
</div>
|
63 |
+
</div>
|
css/custom_theme.css.php
CHANGED
@@ -471,9 +471,9 @@ legend.frm_hidden{
|
|
471 |
}
|
472 |
|
473 |
.with_frm_style .frm_button{
|
474 |
-
text-decoration:none
|
475 |
border:1px solid #eee;
|
476 |
-
display:inline;
|
477 |
<?php if ( ! empty( $defaults['submit_padding'] ) ) { ?>
|
478 |
padding:<?php echo esc_html( $defaults['submit_padding'] . $important ); ?>;
|
479 |
padding:var(--submit-padding)<?php echo esc_html( $important ); ?>;
|
@@ -673,6 +673,7 @@ a.frm_save_draft{
|
|
673 |
.horizontal_radio .frm_radio,
|
674 |
.horizontal_radio .frm_catlevel_1{
|
675 |
display:inline-block;
|
|
|
676 |
}
|
677 |
|
678 |
.with_frm_style .frm_radio{
|
@@ -851,10 +852,18 @@ a.frm_save_draft{
|
|
851 |
|
852 |
.frm-alt-table {
|
853 |
width:100%;
|
854 |
-
border-collapse:
|
855 |
margin-top:0.5em;
|
856 |
font-size:15px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
857 |
}
|
|
|
858 |
|
859 |
.frm-alt-table th {
|
860 |
width:200px;
|
@@ -870,6 +879,7 @@ a.frm_save_draft{
|
|
870 |
vertical-align:top;
|
871 |
text-align:left;
|
872 |
padding:20px;
|
|
|
873 |
}
|
874 |
|
875 |
.frm-alt-table tr:nth-child(even) {
|
471 |
}
|
472 |
|
473 |
.with_frm_style .frm_button{
|
474 |
+
text-decoration:none !important;;
|
475 |
border:1px solid #eee;
|
476 |
+
display:inline-block;
|
477 |
<?php if ( ! empty( $defaults['submit_padding'] ) ) { ?>
|
478 |
padding:<?php echo esc_html( $defaults['submit_padding'] . $important ); ?>;
|
479 |
padding:var(--submit-padding)<?php echo esc_html( $important ); ?>;
|
673 |
.horizontal_radio .frm_radio,
|
674 |
.horizontal_radio .frm_catlevel_1{
|
675 |
display:inline-block;
|
676 |
+
padding-left: 0;
|
677 |
}
|
678 |
|
679 |
.with_frm_style .frm_radio{
|
852 |
|
853 |
.frm-alt-table {
|
854 |
width:100%;
|
855 |
+
border-collapse:separate;
|
856 |
margin-top:0.5em;
|
857 |
font-size:15px;
|
858 |
+
border-width:1px;
|
859 |
+
}
|
860 |
+
|
861 |
+
<?php if ( ! empty( $defaults['border_color'] ) ) { ?>
|
862 |
+
.with_frm_style .frm-alt-table{
|
863 |
+
border-color:<?php echo esc_html( $defaults['border_color'] ); ?>;
|
864 |
+
border-color:var(--border-color);
|
865 |
}
|
866 |
+
<?php } ?>
|
867 |
|
868 |
.frm-alt-table th {
|
869 |
width:200px;
|
879 |
vertical-align:top;
|
880 |
text-align:left;
|
881 |
padding:20px;
|
882 |
+
border-color:transparent;
|
883 |
}
|
884 |
|
885 |
.frm-alt-table tr:nth-child(even) {
|
css/frm_admin.css
CHANGED
@@ -1672,6 +1672,14 @@ h2.frm-h2 + .howto {
|
|
1672 |
margin: 5px 0 20px;
|
1673 |
}
|
1674 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1675 |
.frm-addons {
|
1676 |
margin-top: 30px;
|
1677 |
display: grid;
|
@@ -3391,6 +3399,11 @@ li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-
|
|
3391 |
--border-radius: var(--small-radius);
|
3392 |
}
|
3393 |
|
|
|
|
|
|
|
|
|
|
|
3394 |
#form_show_entry_page .frm_file_link,
|
3395 |
#form_show_entry_page .frm_image_option_container {
|
3396 |
display: inline-flex;
|
@@ -3457,6 +3470,29 @@ li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-
|
|
3457 |
display: block;
|
3458 |
}
|
3459 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3460 |
.frm_single_option .frm_option_key {
|
3461 |
margin-top: 17px;
|
3462 |
}
|
@@ -3485,6 +3521,12 @@ li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-
|
|
3485 |
object-position: center;
|
3486 |
}
|
3487 |
|
|
|
|
|
|
|
|
|
|
|
|
|
3488 |
.frm_image_preview_title{
|
3489 |
margin-top: 6px;
|
3490 |
color: rgba(40, 47, 54, 0.65);
|
@@ -3506,12 +3548,16 @@ li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-
|
|
3506 |
background: #fff;
|
3507 |
}
|
3508 |
|
|
|
|
|
3509 |
.frm_remove_image_option {
|
3510 |
margin-top: 9px;
|
3511 |
color: rgba(40, 47, 54, 0.4);
|
3512 |
cursor: pointer;
|
3513 |
}
|
3514 |
|
|
|
|
|
3515 |
.frm_remove_image_option:hover {
|
3516 |
color: rgba(40, 47, 54, 0.8);
|
3517 |
}
|
@@ -3813,6 +3859,11 @@ label.frm-example-icon {
|
|
3813 |
color: green;
|
3814 |
}
|
3815 |
|
|
|
|
|
|
|
|
|
|
|
3816 |
/* Empty List */
|
3817 |
|
3818 |
.frm_no_items {
|
@@ -6956,6 +7007,17 @@ button.frm_choose_image_box,
|
|
6956 |
width: auto;
|
6957 |
}
|
6958 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6959 |
/* Chrome Scrollbars for Windows */
|
6960 |
.windows::-webkit-scrollbar,
|
6961 |
.windows ::-webkit-scrollbar {
|
1672 |
margin: 5px 0 20px;
|
1673 |
}
|
1674 |
|
1675 |
+
.frm-admin-page-addons #frm-using-lite {
|
1676 |
+
display: none;
|
1677 |
+
}
|
1678 |
+
|
1679 |
+
.frm-admin-page-addons .frm-search {
|
1680 |
+
margin-top: 0;
|
1681 |
+
}
|
1682 |
+
|
1683 |
.frm-addons {
|
1684 |
margin-top: 30px;
|
1685 |
display: grid;
|
3399 |
--border-radius: var(--small-radius);
|
3400 |
}
|
3401 |
|
3402 |
+
.frm_image_option_container svg {
|
3403 |
+
height: 50px;
|
3404 |
+
margin: 10px auto 0;
|
3405 |
+
}
|
3406 |
+
|
3407 |
#form_show_entry_page .frm_file_link,
|
3408 |
#form_show_entry_page .frm_image_option_container {
|
3409 |
display: inline-flex;
|
3470 |
display: block;
|
3471 |
}
|
3472 |
|
3473 |
+
#frm-welcome .frm_image_options .frm_image_option_container,
|
3474 |
+
#form_global_settings .frm_image_options .frm_image_option_container{
|
3475 |
+
background: var(--sidebar-color);
|
3476 |
+
}
|
3477 |
+
|
3478 |
+
#frm-welcome .frm_image_option_container svg,
|
3479 |
+
#form_global_settings .frm_image_option_container svg {
|
3480 |
+
max-width: calc( 100% - 20px );
|
3481 |
+
}
|
3482 |
+
|
3483 |
+
/* Show an icon on top */
|
3484 |
+
.frm_image_option_container {
|
3485 |
+
position: relative;
|
3486 |
+
}
|
3487 |
+
|
3488 |
+
.frm_text_label_for_image > svg {
|
3489 |
+
width: 30px;
|
3490 |
+
position: absolute;
|
3491 |
+
top: 5px;
|
3492 |
+
right: calc( 50% - 15px );
|
3493 |
+
}
|
3494 |
+
/* End show an icon on top */
|
3495 |
+
|
3496 |
.frm_single_option .frm_option_key {
|
3497 |
margin-top: 17px;
|
3498 |
}
|
3521 |
object-position: center;
|
3522 |
}
|
3523 |
|
3524 |
+
.frm_image_styling_frame .frm_email_attachment_icon img {
|
3525 |
+
height: auto;
|
3526 |
+
width: auto;
|
3527 |
+
max-width: 54px;
|
3528 |
+
}
|
3529 |
+
|
3530 |
.frm_image_preview_title{
|
3531 |
margin-top: 6px;
|
3532 |
color: rgba(40, 47, 54, 0.65);
|
3548 |
background: #fff;
|
3549 |
}
|
3550 |
|
3551 |
+
a.frm_remove_image_option .frmsvg,
|
3552 |
+
a.frm_remove_image_option,
|
3553 |
.frm_remove_image_option {
|
3554 |
margin-top: 9px;
|
3555 |
color: rgba(40, 47, 54, 0.4);
|
3556 |
cursor: pointer;
|
3557 |
}
|
3558 |
|
3559 |
+
a.frm_remove_image_option:hover .frmsvg,
|
3560 |
+
a.frm_remove_image_option:hover,
|
3561 |
.frm_remove_image_option:hover {
|
3562 |
color: rgba(40, 47, 54, 0.8);
|
3563 |
}
|
3859 |
color: green;
|
3860 |
}
|
3861 |
|
3862 |
+
/* Hide the install steps for solutions */
|
3863 |
+
#form_global_settings .tabs-panel .num svg {
|
3864 |
+
display: none;
|
3865 |
+
}
|
3866 |
+
|
3867 |
/* Empty List */
|
3868 |
|
3869 |
.frm_no_items {
|
7007 |
width: auto;
|
7008 |
}
|
7009 |
|
7010 |
+
/* Welcome page */
|
7011 |
+
|
7012 |
+
.wp-core-ui .frm_grey.frm-button-primary.disabled,
|
7013 |
+
.wp-core-ui .frm_grey.frm-button-primary,
|
7014 |
+
#frm-welcome .frm_grey {
|
7015 |
+
opacity: 0.5;
|
7016 |
+
background: #F6F6F6 !important;
|
7017 |
+
border-color: #ddd !important;
|
7018 |
+
color: #9FA5AA !important;
|
7019 |
+
}
|
7020 |
+
|
7021 |
/* Chrome Scrollbars for Windows */
|
7022 |
.windows::-webkit-scrollbar,
|
7023 |
.windows ::-webkit-scrollbar {
|
css/frm_grids.css
CHANGED
@@ -346,6 +346,12 @@
|
|
346 |
100% {opacity: 1;}
|
347 |
}
|
348 |
|
|
|
|
|
|
|
|
|
|
|
|
|
349 |
@media only screen and (max-width: 600px) {
|
350 |
.frm_section_heading > .frm_form_field,
|
351 |
.frm_fields_container > .frm_submit,
|
@@ -354,6 +360,7 @@
|
|
354 |
grid-column: 1 / span 12 !important;
|
355 |
}
|
356 |
|
|
|
357 |
.frm_form_field.frm_inline_container,
|
358 |
.frm_form_field.frm_right_container,
|
359 |
.frm_form_field.frm_left_container{
|
346 |
100% {opacity: 1;}
|
347 |
}
|
348 |
|
349 |
+
@media only screen and (max-width: 750px) {
|
350 |
+
.frm_grid_container.frm_no_grid_750{
|
351 |
+
display:block;
|
352 |
+
}
|
353 |
+
}
|
354 |
+
|
355 |
@media only screen and (max-width: 600px) {
|
356 |
.frm_section_heading > .frm_form_field,
|
357 |
.frm_fields_container > .frm_submit,
|
360 |
grid-column: 1 / span 12 !important;
|
361 |
}
|
362 |
|
363 |
+
.frm_grid_container.frm_no_grid_600,
|
364 |
.frm_form_field.frm_inline_container,
|
365 |
.frm_form_field.frm_right_container,
|
366 |
.frm_form_field.frm_left_container{
|
formidable.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/*
|
3 |
Plugin Name: Formidable Forms
|
4 |
Description: Quickly and easily create drag-and-drop forms
|
5 |
-
Version: 4.06.
|
6 |
Plugin URI: https://formidableforms.com/
|
7 |
Author URI: https://formidableforms.com/
|
8 |
Author: Strategy11
|
2 |
/*
|
3 |
Plugin Name: Formidable Forms
|
4 |
Description: Quickly and easily create drag-and-drop forms
|
5 |
+
Version: 4.06.02
|
6 |
Plugin URI: https://formidableforms.com/
|
7 |
Author URI: https://formidableforms.com/
|
8 |
Author: Strategy11
|
images/icons.svg
CHANGED
@@ -910,7 +910,10 @@
|
|
910 |
</symbol>
|
911 |
<symbol id="frm_quantity_icon" viewBox="0 0 17 20">
|
912 |
<title>quantity</title>
|
913 |
-
<
|
914 |
</symbol>
|
|
|
|
|
|
|
915 |
</defs>
|
916 |
</svg>
|
910 |
</symbol>
|
911 |
<symbol id="frm_quantity_icon" viewBox="0 0 17 20">
|
912 |
<title>quantity</title>
|
913 |
+
<path d="M15.6 1.3H1.9C1 1.3 0 2 0 3.1v13.6c0 1 .9 2 2 2h13.6c1 0 1.9-1 1.9-2V3.2c0-1-.9-2-2-2zm0 15.5H1.9V3.2h13.7"></path><path fill="none" stroke="currentColor" stroke-width="2" d="M9.5 4.5v10M4.5 9.5h10" transform="translate(-.7,0.4)"/>
|
914 |
</symbol>
|
915 |
+
<symbol id="frm_folder_icon" viewBox="0 0 28 28" fill="none">
|
916 |
+
<title>directory</title>
|
917 |
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M5 6.8c-.3 0-.6.1-.9.4-.2.2-.3.5-.3.9v14c0 .4 0 .8.3 1 .3.3.6.4 1 .4h15.6c.4 0 .7-.1 1-.4.1-.2.3-.6.3-1v-11c0-.3-.2-.7-.4-1-.2-.2-.5-.3-.9-.3H12a.7.7 0 01-.6-.3L9.5 6.8H5zm-1.9-.6c.5-.5 1.2-.8 2-.8h4.8c.3 0 .5 0 .6.3l1.8 2.7h8.4c.7 0 1.4.3 2 .8.4.5.7 1.2.7 2v11c0 .7-.3 1.4-.8 1.9s-1.2.8-1.9.8H5c-.7 0-1.4-.3-1.9-.8s-.8-1.2-.8-2v-14c0-.7.3-1.4.8-2z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M4.2 2.7c0-.4.3-.7.7-.7h6.8c.3 0 .5 0 .6.3L14 5h9a3 3 0 013 3v11.3a.7.7 0 11-1.4 0V8c0-.9-.7-1.6-1.6-1.6h-9.4a.7.7 0 01-.6-.3l-1.7-2.7H5a.7.7 0 01-.7-.7z" fill="currentColor"/></symbol>
|
918 |
</defs>
|
919 |
</svg>
|
js/formidable_admin.js
CHANGED
@@ -222,6 +222,10 @@ var FrmFormsConnect = window.FrmFormsConnect || ( function( document, window, $
|
|
222 |
messageBox.classList.add( 'frm_hidden' );
|
223 |
messageBox.classList.remove( 'frm_error_style', 'frm_message', 'frm_updated_message' );
|
224 |
}, 10000 );
|
|
|
|
|
|
|
|
|
225 |
}
|
226 |
},
|
227 |
|
@@ -5010,6 +5014,11 @@ function frmAdminBuildJS() {
|
|
5010 |
}
|
5011 |
|
5012 |
/* Addons page */
|
|
|
|
|
|
|
|
|
|
|
5013 |
function activateAddon( e ) {
|
5014 |
e.preventDefault();
|
5015 |
installOrActivate( this, 'frm_activate_addon' );
|
@@ -5135,7 +5144,7 @@ function frmAdminBuildJS() {
|
|
5135 |
button.removeClass( 'frm_loading_button' );
|
5136 |
|
5137 |
// Maybe refresh import and SMTP pages
|
5138 |
-
var refreshPage = document.querySelectorAll( '.frm-admin-page-import, #frm-admin-smtp' );
|
5139 |
if ( refreshPage.length > 0 ) {
|
5140 |
window.location.reload();
|
5141 |
}
|
@@ -5306,6 +5315,11 @@ function frmAdminBuildJS() {
|
|
5306 |
this.nextElementSibling.value = ui.item.value;
|
5307 |
}
|
5308 |
|
|
|
|
|
|
|
|
|
|
|
5309 |
function frmApiPreview( cont, link ) {
|
5310 |
cont.innerHTML = '<div class="frm-wait"></div>';
|
5311 |
jQuery.ajax({
|
@@ -5327,19 +5341,30 @@ function frmAdminBuildJS() {
|
|
5327 |
});
|
5328 |
}
|
5329 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5330 |
function installTemplate( e ) {
|
5331 |
/*jshint validthis:true */
|
5332 |
var action = this.elements.type.value,
|
5333 |
button = this.querySelector( 'button' );
|
5334 |
e.preventDefault();
|
5335 |
button.classList.add( 'frm_loading_button' );
|
5336 |
-
installNewForm( this, action );
|
5337 |
}
|
5338 |
|
5339 |
-
function installNewForm( form, action ) {
|
5340 |
-
var data,
|
5341 |
-
|
5342 |
-
|
|
|
5343 |
link = form.elements.link.value;
|
5344 |
|
5345 |
data = {
|
@@ -5347,15 +5372,37 @@ function frmAdminBuildJS() {
|
|
5347 |
xml: link,
|
5348 |
name: formName,
|
5349 |
desc: formDesc,
|
|
|
5350 |
nonce: frmGlobal.nonce
|
5351 |
};
|
5352 |
postAjax( data, function( response ) {
|
5353 |
-
|
5354 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5355 |
} else {
|
5356 |
jQuery( '.spinner' ).css( 'visibility', 'hidden' );
|
5357 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5358 |
}
|
|
|
5359 |
});
|
5360 |
}
|
5361 |
|
@@ -5589,6 +5636,48 @@ function frmAdminBuildJS() {
|
|
5589 |
}
|
5590 |
}
|
5591 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5592 |
return {
|
5593 |
init: function() {
|
5594 |
s = {};
|
@@ -5633,6 +5722,9 @@ function frmAdminBuildJS() {
|
|
5633 |
} else if ( document.getElementById( 'frm_inbox_page' ) !== null ) {
|
5634 |
// Inbox page
|
5635 |
frmAdminBuild.inboxInit();
|
|
|
|
|
|
|
5636 |
} else {
|
5637 |
// New form selection page
|
5638 |
initNewFormModal();
|
@@ -5705,6 +5797,7 @@ function frmAdminBuildJS() {
|
|
5705 |
|
5706 |
jQuery( document ).on( 'click', '.frm-install-addon', installAddon );
|
5707 |
jQuery( document ).on( 'click', '.frm-activate-addon', activateAddon );
|
|
|
5708 |
|
5709 |
// prevent annoying confirmation message from WordPress
|
5710 |
jQuery( 'button, input[type=submit]' ).on( 'click', removeWPUnload );
|
@@ -6122,6 +6215,10 @@ function frmAdminBuildJS() {
|
|
6122 |
});
|
6123 |
},
|
6124 |
|
|
|
|
|
|
|
|
|
6125 |
styleInit: function() {
|
6126 |
collapseAllSections();
|
6127 |
|
@@ -6264,6 +6361,9 @@ function frmAdminBuildJS() {
|
|
6264 |
jQuery( licenseTab ).on( 'click', '.edd_frm_save_license', saveAddonLicense );
|
6265 |
}
|
6266 |
|
|
|
|
|
|
|
6267 |
jQuery( '#frm-dismissable-cta .dismiss' ).click( function( event ) {
|
6268 |
event.preventDefault();
|
6269 |
jQuery.post( ajaxurl, {
|
222 |
messageBox.classList.add( 'frm_hidden' );
|
223 |
messageBox.classList.remove( 'frm_error_style', 'frm_message', 'frm_updated_message' );
|
224 |
}, 10000 );
|
225 |
+
var refreshPage = document.querySelectorAll( '#frm-welcome' );
|
226 |
+
if ( refreshPage.length > 0 ) {
|
227 |
+
window.location.reload();
|
228 |
+
}
|
229 |
}
|
230 |
},
|
231 |
|
5014 |
}
|
5015 |
|
5016 |
/* Addons page */
|
5017 |
+
function installMultipleAddons( e ) {
|
5018 |
+
e.preventDefault();
|
5019 |
+
installOrActivate( this, 'frm_multiple_addons' );
|
5020 |
+
}
|
5021 |
+
|
5022 |
function activateAddon( e ) {
|
5023 |
e.preventDefault();
|
5024 |
installOrActivate( this, 'frm_activate_addon' );
|
5144 |
button.removeClass( 'frm_loading_button' );
|
5145 |
|
5146 |
// Maybe refresh import and SMTP pages
|
5147 |
+
var refreshPage = document.querySelectorAll( '.frm-admin-page-import, #frm-admin-smtp, #frm-welcome' );
|
5148 |
if ( refreshPage.length > 0 ) {
|
5149 |
window.location.reload();
|
5150 |
}
|
5315 |
this.nextElementSibling.value = ui.item.value;
|
5316 |
}
|
5317 |
|
5318 |
+
function nextInstallStep( thisStep ) {
|
5319 |
+
thisStep.classList.add( 'frm_grey' );
|
5320 |
+
thisStep.nextElementSibling.classList.remove( 'frm_grey' );
|
5321 |
+
}
|
5322 |
+
|
5323 |
function frmApiPreview( cont, link ) {
|
5324 |
cont.innerHTML = '<div class="frm-wait"></div>';
|
5325 |
jQuery.ajax({
|
5341 |
});
|
5342 |
}
|
5343 |
|
5344 |
+
function installTemplateFieldset( e ) {
|
5345 |
+
/*jshint validthis:true */
|
5346 |
+
var fieldset = this.parentNode.parentNode,
|
5347 |
+
action = fieldset.elements.type.value,
|
5348 |
+
button = this;
|
5349 |
+
e.preventDefault();
|
5350 |
+
button.classList.add( 'frm_loading_button' );
|
5351 |
+
installNewForm( fieldset, action, button );
|
5352 |
+
}
|
5353 |
+
|
5354 |
function installTemplate( e ) {
|
5355 |
/*jshint validthis:true */
|
5356 |
var action = this.elements.type.value,
|
5357 |
button = this.querySelector( 'button' );
|
5358 |
e.preventDefault();
|
5359 |
button.classList.add( 'frm_loading_button' );
|
5360 |
+
installNewForm( this, action, button );
|
5361 |
}
|
5362 |
|
5363 |
+
function installNewForm( form, action, button ) {
|
5364 |
+
var data, redirect, href, showError,
|
5365 |
+
formData = formToData( form ),
|
5366 |
+
formName = formData.template_name,
|
5367 |
+
formDesc = formData.template_desc,
|
5368 |
link = form.elements.link.value;
|
5369 |
|
5370 |
data = {
|
5372 |
xml: link,
|
5373 |
name: formName,
|
5374 |
desc: formDesc,
|
5375 |
+
form: JSON.stringify( formData ),
|
5376 |
nonce: frmGlobal.nonce
|
5377 |
};
|
5378 |
postAjax( data, function( response ) {
|
5379 |
+
redirect = response.redirect;
|
5380 |
+
if ( typeof redirect !== 'undefined' ) {
|
5381 |
+
if ( typeof form.elements.redirect === 'undefined' ) {
|
5382 |
+
window.location = redirect;
|
5383 |
+
} else {
|
5384 |
+
href = document.getElementById( 'frm-redirect-link' );
|
5385 |
+
if ( typeof link !== 'undefined' && href !== null ) {
|
5386 |
+
// Show the next installation step.
|
5387 |
+
href.setAttribute( 'href', redirect );
|
5388 |
+
href.classList.remove( 'frm_grey', 'disabled' );
|
5389 |
+
nextInstallStep( form.parentNode.parentNode );
|
5390 |
+
button.classList.add( 'frm_grey', 'disabled' );
|
5391 |
+
}
|
5392 |
+
}
|
5393 |
} else {
|
5394 |
jQuery( '.spinner' ).css( 'visibility', 'hidden' );
|
5395 |
+
|
5396 |
+
// Show response.message
|
5397 |
+
if ( response.message && typeof form.elements.show_response !== 'undefined' ) {
|
5398 |
+
showError = document.getElementById( form.elements.show_response.value );
|
5399 |
+
if ( showError !== null ) {
|
5400 |
+
showError.innerHTML = response.message;
|
5401 |
+
showError.classList.remove( 'frm_hidden' );
|
5402 |
+
}
|
5403 |
+
}
|
5404 |
}
|
5405 |
+
button.classList.remove( 'frm_loading_button' );
|
5406 |
});
|
5407 |
}
|
5408 |
|
5636 |
}
|
5637 |
}
|
5638 |
|
5639 |
+
/**
|
5640 |
+
* Serialize form data with vanilla JS.
|
5641 |
+
*/
|
5642 |
+
function formToData( form ) {
|
5643 |
+
var subKey, i,
|
5644 |
+
object = {},
|
5645 |
+
formData = form.elements;
|
5646 |
+
|
5647 |
+
for ( i = 0; i < formData.length; i++ ) {
|
5648 |
+
var input = formData[i],
|
5649 |
+
key = input.name,
|
5650 |
+
value = input.value,
|
5651 |
+
names = key.match( /(.*)\[(.*)\]/ );
|
5652 |
+
|
5653 |
+
if ( ( input.type === 'radio' || input.type === 'checkbox' ) && ! input.checked ) {
|
5654 |
+
continue;
|
5655 |
+
}
|
5656 |
+
|
5657 |
+
if ( names !== null ) {
|
5658 |
+
key = names[1];
|
5659 |
+
subKey = names[2];
|
5660 |
+
if ( ! Reflect.has( object, key ) ) {
|
5661 |
+
object[key] = {};
|
5662 |
+
}
|
5663 |
+
object[key][subKey] = value;
|
5664 |
+
continue;
|
5665 |
+
}
|
5666 |
+
|
5667 |
+
// Reflect.has in favor of: object.hasOwnProperty(key)
|
5668 |
+
if ( ! Reflect.has( object, key ) ) {
|
5669 |
+
object[key] = value;
|
5670 |
+
continue;
|
5671 |
+
}
|
5672 |
+
if ( ! Array.isArray( object[key]) ) {
|
5673 |
+
object[key] = [ object[key] ];
|
5674 |
+
}
|
5675 |
+
object[key].push( value );
|
5676 |
+
}
|
5677 |
+
|
5678 |
+
return object;
|
5679 |
+
}
|
5680 |
+
|
5681 |
return {
|
5682 |
init: function() {
|
5683 |
s = {};
|
5722 |
} else if ( document.getElementById( 'frm_inbox_page' ) !== null ) {
|
5723 |
// Inbox page
|
5724 |
frmAdminBuild.inboxInit();
|
5725 |
+
} else if ( document.getElementById( 'frm-welcome' ) !== null ) {
|
5726 |
+
// Solution install page
|
5727 |
+
frmAdminBuild.solutionInit();
|
5728 |
} else {
|
5729 |
// New form selection page
|
5730 |
initNewFormModal();
|
5797 |
|
5798 |
jQuery( document ).on( 'click', '.frm-install-addon', installAddon );
|
5799 |
jQuery( document ).on( 'click', '.frm-activate-addon', activateAddon );
|
5800 |
+
jQuery( document ).on( 'click', '.frm-solution-multiple', installMultipleAddons );
|
5801 |
|
5802 |
// prevent annoying confirmation message from WordPress
|
5803 |
jQuery( 'button, input[type=submit]' ).on( 'click', removeWPUnload );
|
6215 |
});
|
6216 |
},
|
6217 |
|
6218 |
+
solutionInit: function() {
|
6219 |
+
jQuery( document ).on( 'submit', '#frm-new-template', installTemplate );
|
6220 |
+
},
|
6221 |
+
|
6222 |
styleInit: function() {
|
6223 |
collapseAllSections();
|
6224 |
|
6361 |
jQuery( licenseTab ).on( 'click', '.edd_frm_save_license', saveAddonLicense );
|
6362 |
}
|
6363 |
|
6364 |
+
// Solution install page
|
6365 |
+
jQuery( document ).on( 'click', '#frm-new-template button', installTemplateFieldset );
|
6366 |
+
|
6367 |
jQuery( '#frm-dismissable-cta .dismiss' ).click( function( event ) {
|
6368 |
event.preventDefault();
|
6369 |
jQuery.post( ajaxurl, {
|
languages/formidable.pot
CHANGED
@@ -2,14 +2,14 @@
|
|
2 |
# This file is distributed under the same license as the Formidable Forms plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Formidable Forms 4.06.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/formidable\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"POT-Creation-Date: 2020-07-
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.1.0\n"
|
15 |
"X-Domain: formidable\n"
|
@@ -128,66 +128,66 @@ msgid "Sending"
|
|
128 |
msgstr ""
|
129 |
|
130 |
#. translators: %1$s: Plugin name, %2$s: Start link HTML, %3$s: end link HTML
|
131 |
-
#: classes/models/FrmAddon.php:
|
132 |
msgid "Your %1$s license key is missing. Please add it on the %2$slicenses page%3$s."
|
133 |
msgstr ""
|
134 |
|
135 |
-
#: classes/models/FrmAddon.php:
|
136 |
msgid "Oops! You forgot to enter your license number."
|
137 |
msgstr ""
|
138 |
|
139 |
-
#: classes/models/FrmAddon.php:
|
140 |
msgid "Your license has been activated. Enjoy!"
|
141 |
msgstr ""
|
142 |
|
143 |
-
#: classes/models/FrmAddon.php:
|
144 |
-
#: classes/models/FrmAddon.php:
|
145 |
msgid "That license key is invalid"
|
146 |
msgstr ""
|
147 |
|
148 |
-
#: classes/models/FrmAddon.php:
|
149 |
msgid "That license is expired"
|
150 |
msgstr ""
|
151 |
|
152 |
-
#: classes/models/FrmAddon.php:
|
153 |
msgid "That license has been refunded"
|
154 |
msgstr ""
|
155 |
|
156 |
-
#: classes/models/FrmAddon.php:
|
157 |
msgid "That license has been used on too many sites"
|
158 |
msgstr ""
|
159 |
|
160 |
-
#: classes/models/FrmAddon.php:
|
161 |
msgid "Oops! That is the wrong license key for this plugin."
|
162 |
msgstr ""
|
163 |
|
164 |
-
#: classes/models/FrmAddon.php:
|
165 |
msgid "Cache cleared"
|
166 |
msgstr ""
|
167 |
|
168 |
-
#: classes/models/FrmAddon.php:
|
169 |
msgid "That license was removed successfully"
|
170 |
msgstr ""
|
171 |
|
172 |
-
#: classes/models/FrmAddon.php:
|
173 |
msgid "There was an error deactivating your license."
|
174 |
msgstr ""
|
175 |
|
176 |
-
#: classes/models/FrmAddon.php:
|
177 |
msgid "Your License Key was invalid"
|
178 |
msgstr ""
|
179 |
|
180 |
#. translators: %1$s: Start link HTML, %2$s: End link HTML
|
181 |
-
#: classes/models/FrmAddon.php:
|
182 |
msgid "You had an error communicating with the Formidable API. %1$sClick here%2$s for more information."
|
183 |
msgstr ""
|
184 |
|
185 |
-
#: classes/models/FrmAddon.php:
|
186 |
msgid "You had an HTTP error connecting to the Formidable API"
|
187 |
msgstr ""
|
188 |
|
189 |
#. translators: %1$s: Error code, %2$s: Error message
|
190 |
-
#: classes/models/FrmAddon.php:
|
191 |
msgid "There was a %1$s error: %2$s"
|
192 |
msgstr ""
|
193 |
|
@@ -216,7 +216,7 @@ msgstr ""
|
|
216 |
msgid "IP Address"
|
217 |
msgstr ""
|
218 |
|
219 |
-
#: classes/models/FrmFieldValue.php:
|
220 |
msgid "The display value has not been prepared. Please use the prepare_display_value() method before calling get_displayed_value()."
|
221 |
msgstr ""
|
222 |
|
@@ -284,7 +284,7 @@ msgid "HTML"
|
|
284 |
msgstr ""
|
285 |
|
286 |
#: classes/models/FrmField.php:54
|
287 |
-
msgid "Hidden
|
288 |
msgstr ""
|
289 |
|
290 |
#: classes/models/FrmField.php:58
|
@@ -403,6 +403,93 @@ msgstr ""
|
|
403 |
msgid "Total"
|
404 |
msgstr ""
|
405 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
406 |
#. translators: %s: User name, %2$d: number of entries
|
407 |
#: classes/models/FrmReviews.php:105
|
408 |
msgid "Congratulations%1$s! You have collected %2$d form submissions."
|
@@ -442,7 +529,7 @@ msgid "Your entry appears to be spam!"
|
|
442 |
msgstr ""
|
443 |
|
444 |
#: classes/models/FrmEntryValidate.php:236
|
445 |
-
msgid "Your entry appears to be
|
446 |
msgstr ""
|
447 |
|
448 |
#: classes/models/FrmSettings.php:100
|
@@ -505,7 +592,7 @@ msgstr ""
|
|
505 |
#: classes/models/fields/FrmFieldType.php:580
|
506 |
#: classes/helpers/FrmFieldsHelper.php:167
|
507 |
#: classes/helpers/FrmFieldsHelper.php:296
|
508 |
-
#: classes/helpers/FrmXMLHelper.php:
|
509 |
msgid "%s is invalid"
|
510 |
msgstr ""
|
511 |
|
@@ -553,23 +640,23 @@ msgstr ""
|
|
553 |
msgid "There are no options for this action."
|
554 |
msgstr ""
|
555 |
|
556 |
-
#: classes/models/FrmFormAction.php:
|
557 |
msgid "Draft is saved"
|
558 |
msgstr ""
|
559 |
|
560 |
-
#: classes/models/FrmFormAction.php:
|
561 |
msgid "Entry is created"
|
562 |
msgstr ""
|
563 |
|
564 |
-
#: classes/models/FrmFormAction.php:
|
565 |
msgid "Entry is updated"
|
566 |
msgstr ""
|
567 |
|
568 |
-
#: classes/models/FrmFormAction.php:
|
569 |
msgid "Entry is deleted"
|
570 |
msgstr ""
|
571 |
|
572 |
-
#: classes/models/FrmFormAction.php:
|
573 |
msgid "Entry is imported"
|
574 |
msgstr ""
|
575 |
|
@@ -593,7 +680,7 @@ msgstr ""
|
|
593 |
#. translators: %1$s - field type
|
594 |
#. translators: %1$s: Number of items
|
595 |
#: classes/models/FrmFormMigrator.php:581
|
596 |
-
#: classes/helpers/FrmXMLHelper.php:
|
597 |
msgid "%1$s Field"
|
598 |
msgid_plural "%1$s Fields"
|
599 |
msgstr[0] ""
|
@@ -635,31 +722,35 @@ msgstr ""
|
|
635 |
msgid "There are no plugins on your site that require a license"
|
636 |
msgstr ""
|
637 |
|
638 |
-
#: classes/controllers/FrmAddonsController.php:
|
639 |
msgid "Installed"
|
640 |
msgstr ""
|
641 |
|
642 |
-
#: classes/controllers/FrmAddonsController.php:
|
643 |
-
#: classes/helpers/FrmAppHelper.php:
|
644 |
msgid "Active"
|
645 |
msgstr ""
|
646 |
|
647 |
-
#: classes/controllers/FrmAddonsController.php:
|
648 |
msgid "Not Installed"
|
649 |
msgstr ""
|
650 |
|
651 |
-
#: classes/controllers/FrmAddonsController.php:
|
652 |
msgid "Your plugin has been installed. Please reload the page to see more options."
|
653 |
msgstr ""
|
654 |
|
655 |
-
#: classes/controllers/FrmAddonsController.php:
|
656 |
msgid "Sorry, you're site requires FTP authentication. Please install plugins manaully."
|
657 |
msgstr ""
|
658 |
|
659 |
-
#: classes/controllers/FrmAddonsController.php:
|
660 |
msgid "Your plugin has been activated. Please reload the page to see more options."
|
661 |
msgstr ""
|
662 |
|
|
|
|
|
|
|
|
|
663 |
#: classes/controllers/FrmAppController.php:146
|
664 |
msgid "Build"
|
665 |
msgstr ""
|
@@ -672,7 +763,7 @@ msgid "Settings"
|
|
672 |
msgstr ""
|
673 |
|
674 |
#: classes/controllers/FrmAppController.php:160
|
675 |
-
#: classes/controllers/FrmXMLController.php:
|
676 |
#: classes/controllers/FrmFormsController.php:729
|
677 |
#: classes/controllers/FrmEntriesController.php:8
|
678 |
#: classes/controllers/FrmEntriesController.php:92
|
@@ -699,15 +790,15 @@ msgstr ""
|
|
699 |
msgid "Import/Export"
|
700 |
msgstr ""
|
701 |
|
702 |
-
#: classes/controllers/FrmXMLController.php:
|
703 |
msgid "There was an error reading the form template"
|
704 |
msgstr ""
|
705 |
|
706 |
-
#: classes/controllers/FrmXMLController.php:
|
707 |
msgid "There was an error importing form"
|
708 |
msgstr ""
|
709 |
|
710 |
-
#: classes/controllers/FrmXMLController.php:
|
711 |
#: classes/controllers/FrmStylesController.php:48
|
712 |
#: classes/controllers/FrmFormsController.php:6
|
713 |
#: classes/controllers/FrmFormsController.php:739
|
@@ -715,23 +806,23 @@ msgstr ""
|
|
715 |
msgid "Forms"
|
716 |
msgstr ""
|
717 |
|
718 |
-
#: classes/controllers/FrmXMLController.php:
|
719 |
msgid "Oops, you didn't select a file."
|
720 |
msgstr ""
|
721 |
|
722 |
-
#: classes/controllers/FrmXMLController.php:
|
723 |
msgid "The file does not exist, please try again."
|
724 |
msgstr ""
|
725 |
|
726 |
-
#: classes/controllers/FrmXMLController.php:
|
727 |
msgid "XML import is not enabled on your server with the libxml_disable_entity_loader function."
|
728 |
msgstr ""
|
729 |
|
730 |
-
#: classes/controllers/FrmXMLController.php:
|
731 |
msgid "Please select a form"
|
732 |
msgstr ""
|
733 |
|
734 |
-
#: classes/controllers/FrmXMLController.php:
|
735 |
msgid "There are no entries for that form."
|
736 |
msgstr ""
|
737 |
|
@@ -774,7 +865,6 @@ msgid "Inbox settings"
|
|
774 |
msgstr ""
|
775 |
|
776 |
#: classes/controllers/FrmSettingsController.php:92
|
777 |
-
#: classes/views/addons/settings.php:2
|
778 |
msgid "Plugin Licenses"
|
779 |
msgstr ""
|
780 |
|
@@ -929,11 +1019,11 @@ msgid "Install WP Mail SMTP"
|
|
929 |
msgstr ""
|
930 |
|
931 |
#: classes/controllers/FrmSMTPController.php:302
|
932 |
-
#: classes/views/addons/list.php:
|
933 |
-
#: classes/views/addons/list.php:
|
934 |
#: classes/views/shared/upgrade_overlay.php:27
|
935 |
#: classes/helpers/FrmFormMigratorsHelper.php:131
|
936 |
-
#: classes/helpers/FrmAppHelper.php:
|
937 |
msgid "Install"
|
938 |
msgstr ""
|
939 |
|
@@ -946,8 +1036,8 @@ msgid "Activate WP Mail SMTP"
|
|
946 |
msgstr ""
|
947 |
|
948 |
#: classes/controllers/FrmSMTPController.php:319
|
949 |
-
#: classes/views/addons/settings.php:
|
950 |
-
#: classes/views/addons/list.php:
|
951 |
msgid "Activate"
|
952 |
msgstr ""
|
953 |
|
@@ -1510,7 +1600,7 @@ msgstr ""
|
|
1510 |
#: classes/views/frm-forms/new-form-overlay.php:31
|
1511 |
#: classes/views/shared/confirm-overlay.php:14
|
1512 |
#: classes/views/shared/admin-header.php:42
|
1513 |
-
#: classes/helpers/FrmAppHelper.php:
|
1514 |
msgid "Cancel"
|
1515 |
msgstr ""
|
1516 |
|
@@ -1522,7 +1612,7 @@ msgstr ""
|
|
1522 |
#: classes/views/shared/mb_adv_info.php:35
|
1523 |
#: classes/views/shared/mb_adv_info.php:178
|
1524 |
#: classes/views/frm-entries/list.php:42
|
1525 |
-
#: classes/helpers/FrmAppHelper.php:
|
1526 |
msgid "Search"
|
1527 |
msgstr ""
|
1528 |
|
@@ -1578,7 +1668,7 @@ msgid "Category:"
|
|
1578 |
msgstr ""
|
1579 |
|
1580 |
#: classes/views/frm-forms/list-templates.php:171
|
1581 |
-
#: classes/views/addons/list.php:
|
1582 |
msgid "Check now for a recent upgrade or renewal"
|
1583 |
msgstr ""
|
1584 |
|
@@ -1708,7 +1798,7 @@ msgid "Show Page Content"
|
|
1708 |
msgstr ""
|
1709 |
|
1710 |
#: classes/views/frm-forms/settings-advanced.php:93
|
1711 |
-
#: classes/helpers/FrmAppHelper.php:
|
1712 |
msgid "Select a Page"
|
1713 |
msgstr ""
|
1714 |
|
@@ -1975,11 +2065,11 @@ msgstr ""
|
|
1975 |
msgid "Send Email"
|
1976 |
msgstr ""
|
1977 |
|
1978 |
-
#: classes/views/addons/settings.php:
|
1979 |
msgid "Good to go!"
|
1980 |
msgstr ""
|
1981 |
|
1982 |
-
#: classes/views/addons/settings.php:
|
1983 |
msgid "Deactivate"
|
1984 |
msgstr ""
|
1985 |
|
@@ -1992,34 +2082,39 @@ msgstr ""
|
|
1992 |
msgid "Formidable Add-Ons"
|
1993 |
msgstr ""
|
1994 |
|
1995 |
-
#: classes/views/addons/list.php:
|
1996 |
-
msgid "
|
1997 |
msgstr ""
|
1998 |
|
1999 |
-
#: classes/views/addons/list.php:
|
2000 |
-
msgid "
|
2001 |
msgstr ""
|
2002 |
|
2003 |
-
#: classes/views/addons/list.php:
|
2004 |
-
#: classes/views/addons/list.php:
|
2005 |
msgid "View Docs"
|
2006 |
msgstr ""
|
2007 |
|
2008 |
#. translators: %s: Status name
|
2009 |
-
#: classes/views/addons/list.php:
|
2010 |
msgid "Status: %s"
|
2011 |
msgstr ""
|
2012 |
|
2013 |
-
#: classes/views/addons/list.php:
|
2014 |
-
#: classes/views/addons/list.php:
|
2015 |
-
#: classes/views/addons/list.php:
|
2016 |
msgid "Upgrade Now"
|
2017 |
msgstr ""
|
2018 |
|
2019 |
-
#: classes/views/addons/list.php:
|
2020 |
msgid "Renew Now"
|
2021 |
msgstr ""
|
2022 |
|
|
|
|
|
|
|
|
|
|
|
2023 |
#: classes/views/shared/errors.php:33
|
2024 |
msgid "Warning:"
|
2025 |
msgstr ""
|
@@ -2034,7 +2129,7 @@ msgstr ""
|
|
2034 |
|
2035 |
#: classes/views/shared/confirm-overlay.php:10
|
2036 |
#: classes/views/shared/info-overlay.php:10
|
2037 |
-
#: classes/helpers/FrmAppHelper.php:
|
2038 |
msgid "Are you sure?"
|
2039 |
msgstr ""
|
2040 |
|
@@ -2136,7 +2231,7 @@ msgstr ""
|
|
2136 |
|
2137 |
#: classes/views/shared/mb_adv_info.php:90
|
2138 |
#: classes/helpers/FrmCSVExportHelper.php:154
|
2139 |
-
#: classes/helpers/FrmAppHelper.php:
|
2140 |
msgid "ID"
|
2141 |
msgstr ""
|
2142 |
|
@@ -2146,7 +2241,7 @@ msgstr ""
|
|
2146 |
|
2147 |
#: classes/views/shared/mb_adv_info.php:108
|
2148 |
#: classes/views/shared/mb_adv_info.php:122
|
2149 |
-
#: classes/helpers/FrmAppHelper.php:
|
2150 |
msgid "Select a Field"
|
2151 |
msgstr ""
|
2152 |
|
@@ -2757,7 +2852,7 @@ msgid "Label Position"
|
|
2757 |
msgstr ""
|
2758 |
|
2759 |
#: classes/views/frm-fields/back-end/settings.php:265
|
2760 |
-
#: classes/helpers/FrmAppHelper.php:
|
2761 |
msgid "Default"
|
2762 |
msgstr ""
|
2763 |
|
@@ -2965,10 +3060,6 @@ msgstr ""
|
|
2965 |
msgid "Get Formidable Forms Pro Today and Unlock all the Powerful Features »"
|
2966 |
msgstr ""
|
2967 |
|
2968 |
-
#: classes/views/frm-settings/license_box.php:4
|
2969 |
-
msgid "Connect an Account"
|
2970 |
-
msgstr ""
|
2971 |
-
|
2972 |
#: classes/views/frm-settings/license_box.php:8
|
2973 |
msgid "Get Formidable Now"
|
2974 |
msgstr ""
|
@@ -3472,7 +3563,7 @@ msgid "See all forms."
|
|
3472 |
msgstr ""
|
3473 |
|
3474 |
#: classes/helpers/FrmFormsListHelper.php:114
|
3475 |
-
#: classes/helpers/FrmAppHelper.php:
|
3476 |
msgid "Add New"
|
3477 |
msgstr ""
|
3478 |
|
@@ -3524,7 +3615,7 @@ msgid "Draft"
|
|
3524 |
msgstr ""
|
3525 |
|
3526 |
#: classes/helpers/FrmFieldsHelper.php:286
|
3527 |
-
#: classes/helpers/FrmAppHelper.php:
|
3528 |
msgid "The entered values do not match"
|
3529 |
msgstr ""
|
3530 |
|
@@ -3535,7 +3626,7 @@ msgstr ""
|
|
3535 |
|
3536 |
#: classes/helpers/FrmFieldsHelper.php:456
|
3537 |
#: classes/helpers/FrmFieldsHelper.php:457
|
3538 |
-
#: classes/helpers/FrmAppHelper.php:
|
3539 |
msgid "New Option"
|
3540 |
msgstr ""
|
3541 |
|
@@ -4735,7 +4826,7 @@ msgid "Excerpt View"
|
|
4735 |
msgstr ""
|
4736 |
|
4737 |
#: classes/helpers/FrmListHelper.php:257
|
4738 |
-
#: classes/helpers/FrmAppHelper.php:
|
4739 |
msgid "No items found."
|
4740 |
msgstr ""
|
4741 |
|
@@ -5002,22 +5093,22 @@ msgstr ""
|
|
5002 |
msgid "License plan required:"
|
5003 |
msgstr ""
|
5004 |
|
5005 |
-
#: classes/helpers/FrmFormsHelper.php:
|
5006 |
msgid "Is this intentional?"
|
5007 |
msgstr ""
|
5008 |
|
5009 |
-
#: classes/helpers/FrmFormsHelper.php:
|
5010 |
-
#: classes/helpers/FrmAppHelper.php:
|
5011 |
msgid "See the list of reserved words in WordPress."
|
5012 |
msgstr ""
|
5013 |
|
5014 |
#. translators: %s: the name of a single parameter in the redirect URL
|
5015 |
-
#: classes/helpers/FrmFormsHelper.php:
|
5016 |
msgid "The redirect URL is using the parameter \"%s\", which is reserved by WordPress. "
|
5017 |
msgstr ""
|
5018 |
|
5019 |
#. translators: %s: the names of two or more parameters in the redirect URL, separated by commas
|
5020 |
-
#: classes/helpers/FrmFormsHelper.php:
|
5021 |
msgid "The redirect URL is using the parameters \"%s\", which are reserved by WordPress. "
|
5022 |
msgstr ""
|
5023 |
|
@@ -5057,555 +5148,555 @@ msgstr ""
|
|
5057 |
msgid "Parent ID"
|
5058 |
msgstr ""
|
5059 |
|
5060 |
-
#: classes/helpers/FrmAppHelper.php:
|
5061 |
msgid "View Forms"
|
5062 |
msgstr ""
|
5063 |
|
5064 |
-
#: classes/helpers/FrmAppHelper.php:
|
5065 |
msgid "Add and Edit Forms"
|
5066 |
msgstr ""
|
5067 |
|
5068 |
-
#: classes/helpers/FrmAppHelper.php:
|
5069 |
msgid "Delete Forms"
|
5070 |
msgstr ""
|
5071 |
|
5072 |
-
#: classes/helpers/FrmAppHelper.php:
|
5073 |
msgid "Access this Settings Page"
|
5074 |
msgstr ""
|
5075 |
|
5076 |
-
#: classes/helpers/FrmAppHelper.php:
|
5077 |
msgid "View Entries from Admin Area"
|
5078 |
msgstr ""
|
5079 |
|
5080 |
-
#: classes/helpers/FrmAppHelper.php:
|
5081 |
msgid "Delete Entries from Admin Area"
|
5082 |
msgstr ""
|
5083 |
|
5084 |
-
#: classes/helpers/FrmAppHelper.php:
|
5085 |
msgid "Add Entries from Admin Area"
|
5086 |
msgstr ""
|
5087 |
|
5088 |
-
#: classes/helpers/FrmAppHelper.php:
|
5089 |
msgid "Edit Entries from Admin Area"
|
5090 |
msgstr ""
|
5091 |
|
5092 |
-
#: classes/helpers/FrmAppHelper.php:
|
5093 |
msgid "View Reports"
|
5094 |
msgstr ""
|
5095 |
|
5096 |
-
#: classes/helpers/FrmAppHelper.php:
|
5097 |
msgid "Add/Edit Views"
|
5098 |
msgstr ""
|
5099 |
|
5100 |
-
#: classes/helpers/FrmAppHelper.php:
|
5101 |
msgid "at"
|
5102 |
msgstr ""
|
5103 |
|
5104 |
-
#: classes/helpers/FrmAppHelper.php:
|
5105 |
msgid "year"
|
5106 |
msgstr ""
|
5107 |
|
5108 |
-
#: classes/helpers/FrmAppHelper.php:
|
5109 |
msgid "years"
|
5110 |
msgstr ""
|
5111 |
|
5112 |
-
#: classes/helpers/FrmAppHelper.php:
|
5113 |
msgid "month"
|
5114 |
msgstr ""
|
5115 |
|
5116 |
-
#: classes/helpers/FrmAppHelper.php:
|
5117 |
msgid "months"
|
5118 |
msgstr ""
|
5119 |
|
5120 |
-
#: classes/helpers/FrmAppHelper.php:
|
5121 |
msgid "week"
|
5122 |
msgstr ""
|
5123 |
|
5124 |
-
#: classes/helpers/FrmAppHelper.php:
|
5125 |
msgid "weeks"
|
5126 |
msgstr ""
|
5127 |
|
5128 |
-
#: classes/helpers/FrmAppHelper.php:
|
5129 |
msgid "day"
|
5130 |
msgstr ""
|
5131 |
|
5132 |
-
#: classes/helpers/FrmAppHelper.php:
|
5133 |
msgid "days"
|
5134 |
msgstr ""
|
5135 |
|
5136 |
-
#: classes/helpers/FrmAppHelper.php:
|
5137 |
msgid "hour"
|
5138 |
msgstr ""
|
5139 |
|
5140 |
-
#: classes/helpers/FrmAppHelper.php:
|
5141 |
msgid "hours"
|
5142 |
msgstr ""
|
5143 |
|
5144 |
-
#: classes/helpers/FrmAppHelper.php:
|
5145 |
msgid "minute"
|
5146 |
msgstr ""
|
5147 |
|
5148 |
-
#: classes/helpers/FrmAppHelper.php:
|
5149 |
msgid "minutes"
|
5150 |
msgstr ""
|
5151 |
|
5152 |
-
#: classes/helpers/FrmAppHelper.php:
|
5153 |
msgid "second"
|
5154 |
msgstr ""
|
5155 |
|
5156 |
-
#: classes/helpers/FrmAppHelper.php:
|
5157 |
msgid "seconds"
|
5158 |
msgstr ""
|
5159 |
|
5160 |
-
#: classes/helpers/FrmAppHelper.php:
|
5161 |
msgid "Give this action a label for easy reference."
|
5162 |
msgstr ""
|
5163 |
|
5164 |
-
#: classes/helpers/FrmAppHelper.php:
|
5165 |
msgid "Add one or more recipient addresses separated by a \",\". FORMAT: Name <name@email.com> or name@email.com. [admin_email] is the address set in WP General Settings."
|
5166 |
msgstr ""
|
5167 |
|
5168 |
-
#: classes/helpers/FrmAppHelper.php:
|
5169 |
msgid "Add CC addresses separated by a \",\". FORMAT: Name <name@email.com> or name@email.com."
|
5170 |
msgstr ""
|
5171 |
|
5172 |
-
#: classes/helpers/FrmAppHelper.php:
|
5173 |
msgid "Add BCC addresses separated by a \",\". FORMAT: Name <name@email.com> or name@email.com."
|
5174 |
msgstr ""
|
5175 |
|
5176 |
-
#: classes/helpers/FrmAppHelper.php:
|
5177 |
msgid "If you would like a different reply to address than the \"from\" address, add a single address here. FORMAT: Name <name@email.com> or name@email.com."
|
5178 |
msgstr ""
|
5179 |
|
5180 |
-
#: classes/helpers/FrmAppHelper.php:
|
5181 |
msgid "Enter the name and/or email address of the sender. FORMAT: John Bates <john@example.com> or john@example.com."
|
5182 |
msgstr ""
|
5183 |
|
5184 |
#. translators: %1$s: Form name, %2$s: Date
|
5185 |
-
#: classes/helpers/FrmAppHelper.php:
|
5186 |
msgid "If you leave the subject blank, the default will be used: %1$s Form submitted on %2$s"
|
5187 |
msgstr ""
|
5188 |
|
5189 |
-
#: classes/helpers/FrmAppHelper.php:
|
5190 |
-
#: classes/helpers/FrmAppHelper.php:
|
5191 |
msgid "Please wait while your site updates."
|
5192 |
msgstr ""
|
5193 |
|
5194 |
-
#: classes/helpers/FrmAppHelper.php:
|
5195 |
msgid "Are you sure you want to deauthorize Formidable Forms on this site?"
|
5196 |
msgstr ""
|
5197 |
|
5198 |
-
#: classes/helpers/FrmAppHelper.php:
|
5199 |
-
#: classes/helpers/FrmAppHelper.php:
|
5200 |
msgid "Loading…"
|
5201 |
msgstr ""
|
5202 |
|
5203 |
-
#: classes/helpers/FrmAppHelper.php:
|
5204 |
msgid "Remove"
|
5205 |
msgstr ""
|
5206 |
|
5207 |
-
#: classes/helpers/FrmAppHelper.php:
|
5208 |
msgid "No results match"
|
5209 |
msgstr ""
|
5210 |
|
5211 |
-
#: classes/helpers/FrmAppHelper.php:
|
5212 |
msgid "That file looks like Spam."
|
5213 |
msgstr ""
|
5214 |
|
5215 |
-
#: classes/helpers/FrmAppHelper.php:
|
5216 |
msgid "There is an error in the calculation in the field with key"
|
5217 |
msgstr ""
|
5218 |
|
5219 |
-
#: classes/helpers/FrmAppHelper.php:
|
5220 |
msgid "Please complete the preceding required fields before uploading a file."
|
5221 |
msgstr ""
|
5222 |
|
5223 |
-
#: classes/helpers/FrmAppHelper.php:
|
5224 |
msgid "(Click to add description)"
|
5225 |
msgstr ""
|
5226 |
|
5227 |
-
#: classes/helpers/FrmAppHelper.php:
|
5228 |
msgid "(Blank)"
|
5229 |
msgstr ""
|
5230 |
|
5231 |
-
#: classes/helpers/FrmAppHelper.php:
|
5232 |
msgid "(no label)"
|
5233 |
msgstr ""
|
5234 |
|
5235 |
-
#: classes/helpers/FrmAppHelper.php:
|
5236 |
msgid "Saving"
|
5237 |
msgstr ""
|
5238 |
|
5239 |
-
#: classes/helpers/FrmAppHelper.php:
|
5240 |
msgid "Saved"
|
5241 |
msgstr ""
|
5242 |
|
5243 |
-
#: classes/helpers/FrmAppHelper.php:
|
5244 |
msgid "OK"
|
5245 |
msgstr ""
|
5246 |
|
5247 |
-
#: classes/helpers/FrmAppHelper.php:
|
5248 |
msgid "Clear default value when typing"
|
5249 |
msgstr ""
|
5250 |
|
5251 |
-
#: classes/helpers/FrmAppHelper.php:
|
5252 |
msgid "Do not clear default value when typing"
|
5253 |
msgstr ""
|
5254 |
|
5255 |
-
#: classes/helpers/FrmAppHelper.php:
|
5256 |
msgid "Default value will pass form validation"
|
5257 |
msgstr ""
|
5258 |
|
5259 |
-
#: classes/helpers/FrmAppHelper.php:
|
5260 |
msgid "Default value will NOT pass form validation"
|
5261 |
msgstr ""
|
5262 |
|
5263 |
-
#: classes/helpers/FrmAppHelper.php:
|
5264 |
msgid "Heads up"
|
5265 |
msgstr ""
|
5266 |
|
5267 |
-
#: classes/helpers/FrmAppHelper.php:
|
5268 |
msgid "Are you sure you want to delete this field and all data associated with it?"
|
5269 |
msgstr ""
|
5270 |
|
5271 |
-
#: classes/helpers/FrmAppHelper.php:
|
5272 |
msgid "All fields inside this Section will be deleted along with their data. Are you sure you want to delete this group of fields?"
|
5273 |
msgstr ""
|
5274 |
|
5275 |
-
#: classes/helpers/FrmAppHelper.php:
|
5276 |
msgid "Warning: If you have entries with multiple rows, all but the first row will be lost."
|
5277 |
msgstr ""
|
5278 |
|
5279 |
-
#: classes/helpers/FrmAppHelper.php:
|
5280 |
msgid "Enter Email"
|
5281 |
msgstr ""
|
5282 |
|
5283 |
-
#: classes/helpers/FrmAppHelper.php:
|
5284 |
msgid "Confirm Email"
|
5285 |
msgstr ""
|
5286 |
|
5287 |
-
#: classes/helpers/FrmAppHelper.php:
|
5288 |
msgid "Conditional content here"
|
5289 |
msgstr ""
|
5290 |
|
5291 |
-
#: classes/helpers/FrmAppHelper.php:
|
5292 |
msgid "In certain browsers (e.g. Firefox) text will not display correctly if the field height is too small relative to the field padding and text size. Please increase your field height or decrease your field padding."
|
5293 |
msgstr ""
|
5294 |
|
5295 |
-
#: classes/helpers/FrmAppHelper.php:
|
5296 |
msgid "Enter Password"
|
5297 |
msgstr ""
|
5298 |
|
5299 |
-
#: classes/helpers/FrmAppHelper.php:
|
5300 |
msgid "Confirm Password"
|
5301 |
msgstr ""
|
5302 |
|
5303 |
-
#: classes/helpers/FrmAppHelper.php:
|
5304 |
msgid "Import Complete"
|
5305 |
msgstr ""
|
5306 |
|
5307 |
-
#: classes/helpers/FrmAppHelper.php:
|
5308 |
msgid "Warning: There is no way to retrieve unsaved entries."
|
5309 |
msgstr ""
|
5310 |
|
5311 |
-
#: classes/helpers/FrmAppHelper.php:
|
5312 |
msgid "Private"
|
5313 |
msgstr ""
|
5314 |
|
5315 |
-
#: classes/helpers/FrmAppHelper.php:
|
5316 |
msgid "No new licenses were found"
|
5317 |
msgstr ""
|
5318 |
|
5319 |
-
#: classes/helpers/FrmAppHelper.php:
|
5320 |
msgid "This calculation has at least one unmatched ( ) { } [ ]."
|
5321 |
msgstr ""
|
5322 |
|
5323 |
-
#: classes/helpers/FrmAppHelper.php:
|
5324 |
msgid "This calculation may have shortcodes that work in Views but not forms."
|
5325 |
msgstr ""
|
5326 |
|
5327 |
-
#: classes/helpers/FrmAppHelper.php:
|
5328 |
msgid "This calculation may have shortcodes that work in text calculations but not numeric calculations."
|
5329 |
msgstr ""
|
5330 |
|
5331 |
-
#: classes/helpers/FrmAppHelper.php:
|
5332 |
msgid "This form action is limited to one per form. Please edit the existing form action."
|
5333 |
msgstr ""
|
5334 |
|
5335 |
#. Translators: %s is the name of a Detail Page Slug that is a reserved word.
|
5336 |
-
#: classes/helpers/FrmAppHelper.php:
|
5337 |
msgid "The Detail Page Slug \"%s\" is reserved by WordPress. This may cause problems. Is this intentional?"
|
5338 |
msgstr ""
|
5339 |
|
5340 |
#. Translators: %s is the name of a parameter that is a reserved word. More than one word could be listed here, though that would not be common.
|
5341 |
-
#: classes/helpers/FrmAppHelper.php:
|
5342 |
msgid "The parameter \"%s\" is reserved by WordPress. This may cause problems when included in the URL. Is this intentional? "
|
5343 |
msgstr ""
|
5344 |
|
5345 |
-
#: classes/helpers/FrmAppHelper.php:
|
5346 |
msgid "Please enter a Repeat Limit that is greater than 1."
|
5347 |
msgstr ""
|
5348 |
|
5349 |
-
#: classes/helpers/FrmAppHelper.php:
|
5350 |
msgid "Please select a limit between 0 and 200."
|
5351 |
msgstr ""
|
5352 |
|
5353 |
-
#: classes/helpers/FrmAppHelper.php:
|
5354 |
msgid "You are running an outdated version of Formidable. This plugin may not work correctly if you do not update Formidable."
|
5355 |
msgstr ""
|
5356 |
|
5357 |
-
#: classes/helpers/FrmAppHelper.php:
|
5358 |
msgid "You are running a version of Formidable Forms that may not be compatible with your version of Formidable Forms Pro."
|
5359 |
msgstr ""
|
5360 |
|
5361 |
-
#: classes/helpers/FrmAppHelper.php:
|
5362 |
msgid "The version of PHP on your server is too low. If this is not corrected, you may see issues with Formidable Forms. Please contact your web host and ask to be updated to PHP 7.0+."
|
5363 |
msgstr ""
|
5364 |
|
5365 |
-
#: classes/helpers/FrmAppHelper.php:
|
5366 |
msgid "You are using an outdated browser that is not compatible with Formidable Forms. Please update to a more current browser (we recommend Chrome)."
|
5367 |
msgstr ""
|
5368 |
|
5369 |
-
#: classes/helpers/FrmAppHelper.php:
|
5370 |
msgid "English"
|
5371 |
msgstr ""
|
5372 |
|
5373 |
-
#: classes/helpers/FrmAppHelper.php:
|
5374 |
msgid "Afrikaans"
|
5375 |
msgstr ""
|
5376 |
|
5377 |
-
#: classes/helpers/FrmAppHelper.php:
|
5378 |
msgid "Albanian"
|
5379 |
msgstr ""
|
5380 |
|
5381 |
-
#: classes/helpers/FrmAppHelper.php:
|
5382 |
msgid "Arabic"
|
5383 |
msgstr ""
|
5384 |
|
5385 |
-
#: classes/helpers/FrmAppHelper.php:
|
5386 |
msgid "Armenian"
|
5387 |
msgstr ""
|
5388 |
|
5389 |
-
#: classes/helpers/FrmAppHelper.php:
|
5390 |
msgid "Azerbaijani"
|
5391 |
msgstr ""
|
5392 |
|
5393 |
-
#: classes/helpers/FrmAppHelper.php:
|
5394 |
msgid "Basque"
|
5395 |
msgstr ""
|
5396 |
|
5397 |
-
#: classes/helpers/FrmAppHelper.php:
|
5398 |
msgid "Bosnian"
|
5399 |
msgstr ""
|
5400 |
|
5401 |
-
#: classes/helpers/FrmAppHelper.php:
|
5402 |
msgid "Bulgarian"
|
5403 |
msgstr ""
|
5404 |
|
5405 |
-
#: classes/helpers/FrmAppHelper.php:
|
5406 |
msgid "Catalan"
|
5407 |
msgstr ""
|
5408 |
|
5409 |
-
#: classes/helpers/FrmAppHelper.php:
|
5410 |
msgid "Chinese Hong Kong"
|
5411 |
msgstr ""
|
5412 |
|
5413 |
-
#: classes/helpers/FrmAppHelper.php:
|
5414 |
msgid "Chinese Simplified"
|
5415 |
msgstr ""
|
5416 |
|
5417 |
-
#: classes/helpers/FrmAppHelper.php:
|
5418 |
msgid "Chinese Traditional"
|
5419 |
msgstr ""
|
5420 |
|
5421 |
-
#: classes/helpers/FrmAppHelper.php:
|
5422 |
msgid "Croatian"
|
5423 |
msgstr ""
|
5424 |
|
5425 |
-
#: classes/helpers/FrmAppHelper.php:
|
5426 |
msgid "Czech"
|
5427 |
msgstr ""
|
5428 |
|
5429 |
-
#: classes/helpers/FrmAppHelper.php:
|
5430 |
msgid "Danish"
|
5431 |
msgstr ""
|
5432 |
|
5433 |
-
#: classes/helpers/FrmAppHelper.php:
|
5434 |
msgid "Dutch"
|
5435 |
msgstr ""
|
5436 |
|
5437 |
-
#: classes/helpers/FrmAppHelper.php:
|
5438 |
msgid "English/UK"
|
5439 |
msgstr ""
|
5440 |
|
5441 |
-
#: classes/helpers/FrmAppHelper.php:
|
5442 |
msgid "Esperanto"
|
5443 |
msgstr ""
|
5444 |
|
5445 |
-
#: classes/helpers/FrmAppHelper.php:
|
5446 |
msgid "Estonian"
|
5447 |
msgstr ""
|
5448 |
|
5449 |
-
#: classes/helpers/FrmAppHelper.php:
|
5450 |
msgid "Faroese"
|
5451 |
msgstr ""
|
5452 |
|
5453 |
-
#: classes/helpers/FrmAppHelper.php:
|
5454 |
msgid "Farsi/Persian"
|
5455 |
msgstr ""
|
5456 |
|
5457 |
-
#: classes/helpers/FrmAppHelper.php:
|
5458 |
msgid "Filipino"
|
5459 |
msgstr ""
|
5460 |
|
5461 |
-
#: classes/helpers/FrmAppHelper.php:
|
5462 |
msgid "Finnish"
|
5463 |
msgstr ""
|
5464 |
|
5465 |
-
#: classes/helpers/FrmAppHelper.php:
|
5466 |
msgid "French"
|
5467 |
msgstr ""
|
5468 |
|
5469 |
-
#: classes/helpers/FrmAppHelper.php:
|
5470 |
msgid "French/Canadian"
|
5471 |
msgstr ""
|
5472 |
|
5473 |
-
#: classes/helpers/FrmAppHelper.php:
|
5474 |
msgid "French/Swiss"
|
5475 |
msgstr ""
|
5476 |
|
5477 |
-
#: classes/helpers/FrmAppHelper.php:
|
5478 |
msgid "German"
|
5479 |
msgstr ""
|
5480 |
|
5481 |
-
#: classes/helpers/FrmAppHelper.php:
|
5482 |
msgid "German/Austria"
|
5483 |
msgstr ""
|
5484 |
|
5485 |
-
#: classes/helpers/FrmAppHelper.php:
|
5486 |
msgid "German/Switzerland"
|
5487 |
msgstr ""
|
5488 |
|
5489 |
-
#: classes/helpers/FrmAppHelper.php:
|
5490 |
msgid "Greek"
|
5491 |
msgstr ""
|
5492 |
|
5493 |
-
#: classes/helpers/FrmAppHelper.php:
|
5494 |
-
#: classes/helpers/FrmAppHelper.php:
|
5495 |
msgid "Hebrew"
|
5496 |
msgstr ""
|
5497 |
|
5498 |
-
#: classes/helpers/FrmAppHelper.php:
|
5499 |
msgid "Hindi"
|
5500 |
msgstr ""
|
5501 |
|
5502 |
-
#: classes/helpers/FrmAppHelper.php:
|
5503 |
msgid "Hungarian"
|
5504 |
msgstr ""
|
5505 |
|
5506 |
-
#: classes/helpers/FrmAppHelper.php:
|
5507 |
msgid "Icelandic"
|
5508 |
msgstr ""
|
5509 |
|
5510 |
-
#: classes/helpers/FrmAppHelper.php:
|
5511 |
msgid "Indonesian"
|
5512 |
msgstr ""
|
5513 |
|
5514 |
-
#: classes/helpers/FrmAppHelper.php:
|
5515 |
msgid "Italian"
|
5516 |
msgstr ""
|
5517 |
|
5518 |
-
#: classes/helpers/FrmAppHelper.php:
|
5519 |
msgid "Japanese"
|
5520 |
msgstr ""
|
5521 |
|
5522 |
-
#: classes/helpers/FrmAppHelper.php:
|
5523 |
msgid "Korean"
|
5524 |
msgstr ""
|
5525 |
|
5526 |
-
#: classes/helpers/FrmAppHelper.php:
|
5527 |
msgid "Latvian"
|
5528 |
msgstr ""
|
5529 |
|
5530 |
-
#: classes/helpers/FrmAppHelper.php:
|
5531 |
msgid "Lithuanian"
|
5532 |
msgstr ""
|
5533 |
|
5534 |
-
#: classes/helpers/FrmAppHelper.php:
|
5535 |
msgid "Malaysian"
|
5536 |
msgstr ""
|
5537 |
|
5538 |
-
#: classes/helpers/FrmAppHelper.php:
|
5539 |
msgid "Norwegian"
|
5540 |
msgstr ""
|
5541 |
|
5542 |
-
#: classes/helpers/FrmAppHelper.php:
|
5543 |
msgid "Polish"
|
5544 |
msgstr ""
|
5545 |
|
5546 |
-
#: classes/helpers/FrmAppHelper.php:
|
5547 |
msgid "Portuguese"
|
5548 |
msgstr ""
|
5549 |
|
5550 |
-
#: classes/helpers/FrmAppHelper.php:
|
5551 |
msgid "Portuguese/Brazilian"
|
5552 |
msgstr ""
|
5553 |
|
5554 |
-
#: classes/helpers/FrmAppHelper.php:
|
5555 |
msgid "Portuguese/Portugal"
|
5556 |
msgstr ""
|
5557 |
|
5558 |
-
#: classes/helpers/FrmAppHelper.php:
|
5559 |
msgid "Romanian"
|
5560 |
msgstr ""
|
5561 |
|
5562 |
-
#: classes/helpers/FrmAppHelper.php:
|
5563 |
msgid "Russian"
|
5564 |
msgstr ""
|
5565 |
|
5566 |
-
#: classes/helpers/FrmAppHelper.php:
|
5567 |
-
#: classes/helpers/FrmAppHelper.php:
|
5568 |
msgid "Serbian"
|
5569 |
msgstr ""
|
5570 |
|
5571 |
-
#: classes/helpers/FrmAppHelper.php:
|
5572 |
msgid "Slovak"
|
5573 |
msgstr ""
|
5574 |
|
5575 |
-
#: classes/helpers/FrmAppHelper.php:
|
5576 |
msgid "Slovenian"
|
5577 |
msgstr ""
|
5578 |
|
5579 |
-
#: classes/helpers/FrmAppHelper.php:
|
5580 |
msgid "Spanish"
|
5581 |
msgstr ""
|
5582 |
|
5583 |
-
#: classes/helpers/FrmAppHelper.php:
|
5584 |
msgid "Spanish/Latin America"
|
5585 |
msgstr ""
|
5586 |
|
5587 |
-
#: classes/helpers/FrmAppHelper.php:
|
5588 |
msgid "Swedish"
|
5589 |
msgstr ""
|
5590 |
|
5591 |
-
#: classes/helpers/FrmAppHelper.php:
|
5592 |
msgid "Tamil"
|
5593 |
msgstr ""
|
5594 |
|
5595 |
-
#: classes/helpers/FrmAppHelper.php:
|
5596 |
msgid "Thai"
|
5597 |
msgstr ""
|
5598 |
|
5599 |
-
#: classes/helpers/FrmAppHelper.php:
|
5600 |
-
#: classes/helpers/FrmAppHelper.php:
|
5601 |
msgid "Turkish"
|
5602 |
msgstr ""
|
5603 |
|
5604 |
-
#: classes/helpers/FrmAppHelper.php:
|
5605 |
msgid "Ukranian"
|
5606 |
msgstr ""
|
5607 |
|
5608 |
-
#: classes/helpers/FrmAppHelper.php:
|
5609 |
msgid "Vietnamese"
|
5610 |
msgstr ""
|
5611 |
|
@@ -5622,69 +5713,65 @@ msgstr ""
|
|
5622 |
msgid "Your server is missing the simplexml_import_dom function"
|
5623 |
msgstr ""
|
5624 |
|
5625 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5626 |
-
msgid "Imported"
|
5627 |
-
msgstr ""
|
5628 |
-
|
5629 |
-
#: classes/helpers/FrmXMLHelper.php:958
|
5630 |
msgid "Updated"
|
5631 |
msgstr ""
|
5632 |
|
5633 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5634 |
msgid "Nothing was imported or updated"
|
5635 |
msgstr ""
|
5636 |
|
5637 |
#. translators: %1$s: Number of items
|
5638 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5639 |
msgid "%1$s Form"
|
5640 |
msgid_plural "%1$s Forms"
|
5641 |
msgstr[0] ""
|
5642 |
|
5643 |
#. translators: %1$s: Number of items
|
5644 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5645 |
msgid "%1$s Entry"
|
5646 |
msgid_plural "%1$s Entries"
|
5647 |
msgstr[0] ""
|
5648 |
|
5649 |
#. translators: %1$s: Number of items
|
5650 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5651 |
msgid "%1$s View"
|
5652 |
msgid_plural "%1$s Views"
|
5653 |
msgstr[0] ""
|
5654 |
|
5655 |
#. translators: %1$s: Number of items
|
5656 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5657 |
msgid "%1$s Post"
|
5658 |
msgid_plural "%1$s Posts"
|
5659 |
msgstr[0] ""
|
5660 |
|
5661 |
#. translators: %1$s: Number of items
|
5662 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5663 |
msgid "%1$s Style"
|
5664 |
msgid_plural "%1$s Styles"
|
5665 |
msgstr[0] ""
|
5666 |
|
5667 |
#. translators: %1$s: Number of items
|
5668 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5669 |
msgid "%1$s Term"
|
5670 |
msgid_plural "%1$s Terms"
|
5671 |
msgstr[0] ""
|
5672 |
|
5673 |
#. translators: %1$s: Number of items
|
5674 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5675 |
msgid "%1$s Form Action"
|
5676 |
msgid_plural "%1$s Form Actions"
|
5677 |
msgstr[0] ""
|
5678 |
|
5679 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5680 |
msgid "Go to imported form"
|
5681 |
msgstr ""
|
5682 |
|
5683 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5684 |
msgid "Create Posts"
|
5685 |
msgstr ""
|
5686 |
|
5687 |
-
#: classes/helpers/FrmXMLHelper.php:
|
5688 |
msgid "Email Notification"
|
5689 |
msgstr ""
|
5690 |
|
2 |
# This file is distributed under the same license as the Formidable Forms plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Formidable Forms 4.06.02\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/formidable\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"POT-Creation-Date: 2020-07-30T17:56:00+02:00\n"
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.1.0\n"
|
15 |
"X-Domain: formidable\n"
|
128 |
msgstr ""
|
129 |
|
130 |
#. translators: %1$s: Plugin name, %2$s: Start link HTML, %3$s: end link HTML
|
131 |
+
#: classes/models/FrmAddon.php:276
|
132 |
msgid "Your %1$s license key is missing. Please add it on the %2$slicenses page%3$s."
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: classes/models/FrmAddon.php:471
|
136 |
msgid "Oops! You forgot to enter your license number."
|
137 |
msgstr ""
|
138 |
|
139 |
+
#: classes/models/FrmAddon.php:547
|
140 |
msgid "Your license has been activated. Enjoy!"
|
141 |
msgstr ""
|
142 |
|
143 |
+
#: classes/models/FrmAddon.php:548
|
144 |
+
#: classes/models/FrmAddon.php:553
|
145 |
msgid "That license key is invalid"
|
146 |
msgstr ""
|
147 |
|
148 |
+
#: classes/models/FrmAddon.php:549
|
149 |
msgid "That license is expired"
|
150 |
msgstr ""
|
151 |
|
152 |
+
#: classes/models/FrmAddon.php:550
|
153 |
msgid "That license has been refunded"
|
154 |
msgstr ""
|
155 |
|
156 |
+
#: classes/models/FrmAddon.php:551
|
157 |
msgid "That license has been used on too many sites"
|
158 |
msgstr ""
|
159 |
|
160 |
+
#: classes/models/FrmAddon.php:552
|
161 |
msgid "Oops! That is the wrong license key for this plugin."
|
162 |
msgstr ""
|
163 |
|
164 |
+
#: classes/models/FrmAddon.php:569
|
165 |
msgid "Cache cleared"
|
166 |
msgstr ""
|
167 |
|
168 |
+
#: classes/models/FrmAddon.php:591
|
169 |
msgid "That license was removed successfully"
|
170 |
msgstr ""
|
171 |
|
172 |
+
#: classes/models/FrmAddon.php:593
|
173 |
msgid "There was an error deactivating your license."
|
174 |
msgstr ""
|
175 |
|
176 |
+
#: classes/models/FrmAddon.php:637
|
177 |
msgid "Your License Key was invalid"
|
178 |
msgstr ""
|
179 |
|
180 |
#. translators: %1$s: Start link HTML, %2$s: End link HTML
|
181 |
+
#: classes/models/FrmAddon.php:641
|
182 |
msgid "You had an error communicating with the Formidable API. %1$sClick here%2$s for more information."
|
183 |
msgstr ""
|
184 |
|
185 |
+
#: classes/models/FrmAddon.php:644
|
186 |
msgid "You had an HTTP error connecting to the Formidable API"
|
187 |
msgstr ""
|
188 |
|
189 |
#. translators: %1$s: Error code, %2$s: Error message
|
190 |
+
#: classes/models/FrmAddon.php:655
|
191 |
msgid "There was a %1$s error: %2$s"
|
192 |
msgstr ""
|
193 |
|
216 |
msgid "IP Address"
|
217 |
msgstr ""
|
218 |
|
219 |
+
#: classes/models/FrmFieldValue.php:169
|
220 |
msgid "The display value has not been prepared. Please use the prepare_display_value() method before calling get_displayed_value()."
|
221 |
msgstr ""
|
222 |
|
284 |
msgstr ""
|
285 |
|
286 |
#: classes/models/FrmField.php:54
|
287 |
+
msgid "Hidden"
|
288 |
msgstr ""
|
289 |
|
290 |
#: classes/models/FrmField.php:58
|
403 |
msgid "Total"
|
404 |
msgstr ""
|
405 |
|
406 |
+
#: classes/models/FrmSolution.php:70
|
407 |
+
msgid "Setup"
|
408 |
+
msgstr ""
|
409 |
+
|
410 |
+
#: classes/models/FrmSolution.php:113
|
411 |
+
msgid "Welcome to Formidable Forms"
|
412 |
+
msgstr ""
|
413 |
+
|
414 |
+
#: classes/models/FrmSolution.php:117
|
415 |
+
msgid "Follow the steps below to get started."
|
416 |
+
msgstr ""
|
417 |
+
|
418 |
+
#: classes/models/FrmSolution.php:198
|
419 |
+
msgid "The following form(s) have been created."
|
420 |
+
msgstr ""
|
421 |
+
|
422 |
+
#: classes/models/FrmSolution.php:281
|
423 |
+
msgid "Connect to FormidableForms.com"
|
424 |
+
msgstr ""
|
425 |
+
|
426 |
+
#: classes/models/FrmSolution.php:282
|
427 |
+
msgid "Create a connection to get plugin downloads."
|
428 |
+
msgstr ""
|
429 |
+
|
430 |
+
#: classes/models/FrmSolution.php:283
|
431 |
+
#: classes/views/frm-settings/license_box.php:4
|
432 |
+
msgid "Connect an Account"
|
433 |
+
msgstr ""
|
434 |
+
|
435 |
+
#: classes/models/FrmSolution.php:289
|
436 |
+
msgid "Install and Activate Add-Ons"
|
437 |
+
msgstr ""
|
438 |
+
|
439 |
+
#: classes/models/FrmSolution.php:290
|
440 |
+
msgid "Install any required add-ons from FormidableForms.com."
|
441 |
+
msgstr ""
|
442 |
+
|
443 |
+
#: classes/models/FrmSolution.php:291
|
444 |
+
msgid "Install & Activate"
|
445 |
+
msgstr ""
|
446 |
+
|
447 |
+
#: classes/models/FrmSolution.php:297
|
448 |
+
msgid "Setup Forms, Views, and Pages"
|
449 |
+
msgstr ""
|
450 |
+
|
451 |
+
#: classes/models/FrmSolution.php:298
|
452 |
+
msgid "Build the forms, views, and pages automatically."
|
453 |
+
msgstr ""
|
454 |
+
|
455 |
+
#: classes/models/FrmSolution.php:299
|
456 |
+
msgid "Create Now"
|
457 |
+
msgstr ""
|
458 |
+
|
459 |
+
#: classes/models/FrmSolution.php:304
|
460 |
+
msgid "Customize Your New Pages"
|
461 |
+
msgstr ""
|
462 |
+
|
463 |
+
#: classes/models/FrmSolution.php:305
|
464 |
+
msgid "Make any required changes and publish the page."
|
465 |
+
msgstr ""
|
466 |
+
|
467 |
+
#: classes/models/FrmSolution.php:306
|
468 |
+
msgid "View Page"
|
469 |
+
msgstr ""
|
470 |
+
|
471 |
+
#. translators: %1$s: Plugin name
|
472 |
+
#: classes/models/FrmSolution.php:369
|
473 |
+
msgid "You need permission to download the Formidable %1$s plugin"
|
474 |
+
msgstr ""
|
475 |
+
|
476 |
+
#. translators: %1$s: Step number
|
477 |
+
#: classes/models/FrmSolution.php:394
|
478 |
+
msgid "Step %1$d"
|
479 |
+
msgstr ""
|
480 |
+
|
481 |
+
#: classes/models/FrmSolution.php:462
|
482 |
+
msgid "Select the form or view you would like to create."
|
483 |
+
msgstr ""
|
484 |
+
|
485 |
+
#: classes/models/FrmSolution.php:485
|
486 |
+
msgid "We didn't find anything to import. Please contact our team."
|
487 |
+
msgstr ""
|
488 |
+
|
489 |
+
#: classes/models/FrmSolution.php:487
|
490 |
+
msgid "Looks like you may not have a current subscription for this solution. Please check your account."
|
491 |
+
msgstr ""
|
492 |
+
|
493 |
#. translators: %s: User name, %2$d: number of entries
|
494 |
#: classes/models/FrmReviews.php:105
|
495 |
msgid "Congratulations%1$s! You have collected %2$d form submissions."
|
529 |
msgstr ""
|
530 |
|
531 |
#: classes/models/FrmEntryValidate.php:236
|
532 |
+
msgid "Your entry appears to be blocked spam!"
|
533 |
msgstr ""
|
534 |
|
535 |
#: classes/models/FrmSettings.php:100
|
592 |
#: classes/models/fields/FrmFieldType.php:580
|
593 |
#: classes/helpers/FrmFieldsHelper.php:167
|
594 |
#: classes/helpers/FrmFieldsHelper.php:296
|
595 |
+
#: classes/helpers/FrmXMLHelper.php:1131
|
596 |
msgid "%s is invalid"
|
597 |
msgstr ""
|
598 |
|
640 |
msgid "There are no options for this action."
|
641 |
msgstr ""
|
642 |
|
643 |
+
#: classes/models/FrmFormAction.php:825
|
644 |
msgid "Draft is saved"
|
645 |
msgstr ""
|
646 |
|
647 |
+
#: classes/models/FrmFormAction.php:826
|
648 |
msgid "Entry is created"
|
649 |
msgstr ""
|
650 |
|
651 |
+
#: classes/models/FrmFormAction.php:827
|
652 |
msgid "Entry is updated"
|
653 |
msgstr ""
|
654 |
|
655 |
+
#: classes/models/FrmFormAction.php:828
|
656 |
msgid "Entry is deleted"
|
657 |
msgstr ""
|
658 |
|
659 |
+
#: classes/models/FrmFormAction.php:829
|
660 |
msgid "Entry is imported"
|
661 |
msgstr ""
|
662 |
|
680 |
#. translators: %1$s - field type
|
681 |
#. translators: %1$s: Number of items
|
682 |
#: classes/models/FrmFormMigrator.php:581
|
683 |
+
#: classes/helpers/FrmXMLHelper.php:1013
|
684 |
msgid "%1$s Field"
|
685 |
msgid_plural "%1$s Fields"
|
686 |
msgstr[0] ""
|
722 |
msgid "There are no plugins on your site that require a license"
|
723 |
msgstr ""
|
724 |
|
725 |
+
#: classes/controllers/FrmAddonsController.php:515
|
726 |
msgid "Installed"
|
727 |
msgstr ""
|
728 |
|
729 |
+
#: classes/controllers/FrmAddonsController.php:520
|
730 |
+
#: classes/helpers/FrmAppHelper.php:2380
|
731 |
msgid "Active"
|
732 |
msgstr ""
|
733 |
|
734 |
+
#: classes/controllers/FrmAddonsController.php:525
|
735 |
msgid "Not Installed"
|
736 |
msgstr ""
|
737 |
|
738 |
+
#: classes/controllers/FrmAddonsController.php:783
|
739 |
msgid "Your plugin has been installed. Please reload the page to see more options."
|
740 |
msgstr ""
|
741 |
|
742 |
+
#: classes/controllers/FrmAddonsController.php:810
|
743 |
msgid "Sorry, you're site requires FTP authentication. Please install plugins manaully."
|
744 |
msgstr ""
|
745 |
|
746 |
+
#: classes/controllers/FrmAddonsController.php:853
|
747 |
msgid "Your plugin has been activated. Please reload the page to see more options."
|
748 |
msgstr ""
|
749 |
|
750 |
+
#: classes/controllers/FrmAddonsController.php:885
|
751 |
+
msgid "Your plugins have been installed and activated."
|
752 |
+
msgstr ""
|
753 |
+
|
754 |
#: classes/controllers/FrmAppController.php:146
|
755 |
msgid "Build"
|
756 |
msgstr ""
|
763 |
msgstr ""
|
764 |
|
765 |
#: classes/controllers/FrmAppController.php:160
|
766 |
+
#: classes/controllers/FrmXMLController.php:256
|
767 |
#: classes/controllers/FrmFormsController.php:729
|
768 |
#: classes/controllers/FrmEntriesController.php:8
|
769 |
#: classes/controllers/FrmEntriesController.php:92
|
790 |
msgid "Import/Export"
|
791 |
msgstr ""
|
792 |
|
793 |
+
#: classes/controllers/FrmXMLController.php:51
|
794 |
msgid "There was an error reading the form template"
|
795 |
msgstr ""
|
796 |
|
797 |
+
#: classes/controllers/FrmXMLController.php:87
|
798 |
msgid "There was an error importing form"
|
799 |
msgstr ""
|
800 |
|
801 |
+
#: classes/controllers/FrmXMLController.php:255
|
802 |
#: classes/controllers/FrmStylesController.php:48
|
803 |
#: classes/controllers/FrmFormsController.php:6
|
804 |
#: classes/controllers/FrmFormsController.php:739
|
806 |
msgid "Forms"
|
807 |
msgstr ""
|
808 |
|
809 |
+
#: classes/controllers/FrmXMLController.php:291
|
810 |
msgid "Oops, you didn't select a file."
|
811 |
msgstr ""
|
812 |
|
813 |
+
#: classes/controllers/FrmXMLController.php:302
|
814 |
msgid "The file does not exist, please try again."
|
815 |
msgstr ""
|
816 |
|
817 |
+
#: classes/controllers/FrmXMLController.php:331
|
818 |
msgid "XML import is not enabled on your server with the libxml_disable_entity_loader function."
|
819 |
msgstr ""
|
820 |
|
821 |
+
#: classes/controllers/FrmXMLController.php:539
|
822 |
msgid "Please select a form"
|
823 |
msgstr ""
|
824 |
|
825 |
+
#: classes/controllers/FrmXMLController.php:596
|
826 |
msgid "There are no entries for that form."
|
827 |
msgstr ""
|
828 |
|
865 |
msgstr ""
|
866 |
|
867 |
#: classes/controllers/FrmSettingsController.php:92
|
|
|
868 |
msgid "Plugin Licenses"
|
869 |
msgstr ""
|
870 |
|
1019 |
msgstr ""
|
1020 |
|
1021 |
#: classes/controllers/FrmSMTPController.php:302
|
1022 |
+
#: classes/views/addons/list.php:80
|
1023 |
+
#: classes/views/addons/list.php:81
|
1024 |
#: classes/views/shared/upgrade_overlay.php:27
|
1025 |
#: classes/helpers/FrmFormMigratorsHelper.php:131
|
1026 |
+
#: classes/helpers/FrmAppHelper.php:2379
|
1027 |
msgid "Install"
|
1028 |
msgstr ""
|
1029 |
|
1036 |
msgstr ""
|
1037 |
|
1038 |
#: classes/controllers/FrmSMTPController.php:319
|
1039 |
+
#: classes/views/addons/settings.php:26
|
1040 |
+
#: classes/views/addons/list.php:77
|
1041 |
msgid "Activate"
|
1042 |
msgstr ""
|
1043 |
|
1600 |
#: classes/views/frm-forms/new-form-overlay.php:31
|
1601 |
#: classes/views/shared/confirm-overlay.php:14
|
1602 |
#: classes/views/shared/admin-header.php:42
|
1603 |
+
#: classes/helpers/FrmAppHelper.php:2340
|
1604 |
msgid "Cancel"
|
1605 |
msgstr ""
|
1606 |
|
1612 |
#: classes/views/shared/mb_adv_info.php:35
|
1613 |
#: classes/views/shared/mb_adv_info.php:178
|
1614 |
#: classes/views/frm-entries/list.php:42
|
1615 |
+
#: classes/helpers/FrmAppHelper.php:920
|
1616 |
msgid "Search"
|
1617 |
msgstr ""
|
1618 |
|
1668 |
msgstr ""
|
1669 |
|
1670 |
#: classes/views/frm-forms/list-templates.php:171
|
1671 |
+
#: classes/views/addons/list.php:27
|
1672 |
msgid "Check now for a recent upgrade or renewal"
|
1673 |
msgstr ""
|
1674 |
|
1798 |
msgstr ""
|
1799 |
|
1800 |
#: classes/views/frm-forms/settings-advanced.php:93
|
1801 |
+
#: classes/helpers/FrmAppHelper.php:1045
|
1802 |
msgid "Select a Page"
|
1803 |
msgstr ""
|
1804 |
|
2065 |
msgid "Send Email"
|
2066 |
msgstr ""
|
2067 |
|
2068 |
+
#: classes/views/addons/settings.php:18
|
2069 |
msgid "Good to go!"
|
2070 |
msgstr ""
|
2071 |
|
2072 |
+
#: classes/views/addons/settings.php:20
|
2073 |
msgid "Deactivate"
|
2074 |
msgstr ""
|
2075 |
|
2082 |
msgid "Formidable Add-Ons"
|
2083 |
msgstr ""
|
2084 |
|
2085 |
+
#: classes/views/addons/list.php:17
|
2086 |
+
msgid "Search Add-ons"
|
2087 |
msgstr ""
|
2088 |
|
2089 |
+
#: classes/views/addons/list.php:25
|
2090 |
+
msgid "Missing add-ons?"
|
2091 |
msgstr ""
|
2092 |
|
2093 |
+
#: classes/views/addons/list.php:53
|
2094 |
+
#: classes/views/addons/list.php:54
|
2095 |
msgid "View Docs"
|
2096 |
msgstr ""
|
2097 |
|
2098 |
#. translators: %s: Status name
|
2099 |
+
#: classes/views/addons/list.php:70
|
2100 |
msgid "Status: %s"
|
2101 |
msgstr ""
|
2102 |
|
2103 |
+
#: classes/views/addons/list.php:84
|
2104 |
+
#: classes/views/addons/list.php:94
|
2105 |
+
#: classes/views/addons/list.php:95
|
2106 |
msgid "Upgrade Now"
|
2107 |
msgstr ""
|
2108 |
|
2109 |
+
#: classes/views/addons/list.php:85
|
2110 |
msgid "Renew Now"
|
2111 |
msgstr ""
|
2112 |
|
2113 |
+
#: classes/views/solutions/_import.php:46
|
2114 |
+
#: classes/helpers/FrmXMLHelper.php:970
|
2115 |
+
msgid "Imported"
|
2116 |
+
msgstr ""
|
2117 |
+
|
2118 |
#: classes/views/shared/errors.php:33
|
2119 |
msgid "Warning:"
|
2120 |
msgstr ""
|
2129 |
|
2130 |
#: classes/views/shared/confirm-overlay.php:10
|
2131 |
#: classes/views/shared/info-overlay.php:10
|
2132 |
+
#: classes/helpers/FrmAppHelper.php:2347
|
2133 |
msgid "Are you sure?"
|
2134 |
msgstr ""
|
2135 |
|
2231 |
|
2232 |
#: classes/views/shared/mb_adv_info.php:90
|
2233 |
#: classes/helpers/FrmCSVExportHelper.php:154
|
2234 |
+
#: classes/helpers/FrmAppHelper.php:2319
|
2235 |
msgid "ID"
|
2236 |
msgstr ""
|
2237 |
|
2241 |
|
2242 |
#: classes/views/shared/mb_adv_info.php:108
|
2243 |
#: classes/views/shared/mb_adv_info.php:122
|
2244 |
+
#: classes/helpers/FrmAppHelper.php:2381
|
2245 |
msgid "Select a Field"
|
2246 |
msgstr ""
|
2247 |
|
2852 |
msgstr ""
|
2853 |
|
2854 |
#: classes/views/frm-fields/back-end/settings.php:265
|
2855 |
+
#: classes/helpers/FrmAppHelper.php:2341
|
2856 |
msgid "Default"
|
2857 |
msgstr ""
|
2858 |
|
3060 |
msgid "Get Formidable Forms Pro Today and Unlock all the Powerful Features »"
|
3061 |
msgstr ""
|
3062 |
|
|
|
|
|
|
|
|
|
3063 |
#: classes/views/frm-settings/license_box.php:8
|
3064 |
msgid "Get Formidable Now"
|
3065 |
msgstr ""
|
3563 |
msgstr ""
|
3564 |
|
3565 |
#: classes/helpers/FrmFormsListHelper.php:114
|
3566 |
+
#: classes/helpers/FrmAppHelper.php:905
|
3567 |
msgid "Add New"
|
3568 |
msgstr ""
|
3569 |
|
3615 |
msgstr ""
|
3616 |
|
3617 |
#: classes/helpers/FrmFieldsHelper.php:286
|
3618 |
+
#: classes/helpers/FrmAppHelper.php:2352
|
3619 |
msgid "The entered values do not match"
|
3620 |
msgstr ""
|
3621 |
|
3626 |
|
3627 |
#: classes/helpers/FrmFieldsHelper.php:456
|
3628 |
#: classes/helpers/FrmFieldsHelper.php:457
|
3629 |
+
#: classes/helpers/FrmAppHelper.php:2356
|
3630 |
msgid "New Option"
|
3631 |
msgstr ""
|
3632 |
|
4826 |
msgstr ""
|
4827 |
|
4828 |
#: classes/helpers/FrmListHelper.php:257
|
4829 |
+
#: classes/helpers/FrmAppHelper.php:2382
|
4830 |
msgid "No items found."
|
4831 |
msgstr ""
|
4832 |
|
5093 |
msgid "License plan required:"
|
5094 |
msgstr ""
|
5095 |
|
5096 |
+
#: classes/helpers/FrmFormsHelper.php:1456
|
5097 |
msgid "Is this intentional?"
|
5098 |
msgstr ""
|
5099 |
|
5100 |
+
#: classes/helpers/FrmFormsHelper.php:1457
|
5101 |
+
#: classes/helpers/FrmAppHelper.php:2376
|
5102 |
msgid "See the list of reserved words in WordPress."
|
5103 |
msgstr ""
|
5104 |
|
5105 |
#. translators: %s: the name of a single parameter in the redirect URL
|
5106 |
+
#: classes/helpers/FrmFormsHelper.php:1466
|
5107 |
msgid "The redirect URL is using the parameter \"%s\", which is reserved by WordPress. "
|
5108 |
msgstr ""
|
5109 |
|
5110 |
#. translators: %s: the names of two or more parameters in the redirect URL, separated by commas
|
5111 |
+
#: classes/helpers/FrmFormsHelper.php:1472
|
5112 |
msgid "The redirect URL is using the parameters \"%s\", which are reserved by WordPress. "
|
5113 |
msgstr ""
|
5114 |
|
5148 |
msgid "Parent ID"
|
5149 |
msgstr ""
|
5150 |
|
5151 |
+
#: classes/helpers/FrmAppHelper.php:1175
|
5152 |
msgid "View Forms"
|
5153 |
msgstr ""
|
5154 |
|
5155 |
+
#: classes/helpers/FrmAppHelper.php:1176
|
5156 |
msgid "Add and Edit Forms"
|
5157 |
msgstr ""
|
5158 |
|
5159 |
+
#: classes/helpers/FrmAppHelper.php:1177
|
5160 |
msgid "Delete Forms"
|
5161 |
msgstr ""
|
5162 |
|
5163 |
+
#: classes/helpers/FrmAppHelper.php:1178
|
5164 |
msgid "Access this Settings Page"
|
5165 |
msgstr ""
|
5166 |
|
5167 |
+
#: classes/helpers/FrmAppHelper.php:1179
|
5168 |
msgid "View Entries from Admin Area"
|
5169 |
msgstr ""
|
5170 |
|
5171 |
+
#: classes/helpers/FrmAppHelper.php:1180
|
5172 |
msgid "Delete Entries from Admin Area"
|
5173 |
msgstr ""
|
5174 |
|
5175 |
+
#: classes/helpers/FrmAppHelper.php:1187
|
5176 |
msgid "Add Entries from Admin Area"
|
5177 |
msgstr ""
|
5178 |
|
5179 |
+
#: classes/helpers/FrmAppHelper.php:1188
|
5180 |
msgid "Edit Entries from Admin Area"
|
5181 |
msgstr ""
|
5182 |
|
5183 |
+
#: classes/helpers/FrmAppHelper.php:1189
|
5184 |
msgid "View Reports"
|
5185 |
msgstr ""
|
5186 |
|
5187 |
+
#: classes/helpers/FrmAppHelper.php:1190
|
5188 |
msgid "Add/Edit Views"
|
5189 |
msgstr ""
|
5190 |
|
5191 |
+
#: classes/helpers/FrmAppHelper.php:1812
|
5192 |
msgid "at"
|
5193 |
msgstr ""
|
5194 |
|
5195 |
+
#: classes/helpers/FrmAppHelper.php:1956
|
5196 |
msgid "year"
|
5197 |
msgstr ""
|
5198 |
|
5199 |
+
#: classes/helpers/FrmAppHelper.php:1957
|
5200 |
msgid "years"
|
5201 |
msgstr ""
|
5202 |
|
5203 |
+
#: classes/helpers/FrmAppHelper.php:1961
|
5204 |
msgid "month"
|
5205 |
msgstr ""
|
5206 |
|
5207 |
+
#: classes/helpers/FrmAppHelper.php:1962
|
5208 |
msgid "months"
|
5209 |
msgstr ""
|
5210 |
|
5211 |
+
#: classes/helpers/FrmAppHelper.php:1966
|
5212 |
msgid "week"
|
5213 |
msgstr ""
|
5214 |
|
5215 |
+
#: classes/helpers/FrmAppHelper.php:1967
|
5216 |
msgid "weeks"
|
5217 |
msgstr ""
|
5218 |
|
5219 |
+
#: classes/helpers/FrmAppHelper.php:1971
|
5220 |
msgid "day"
|
5221 |
msgstr ""
|
5222 |
|
5223 |
+
#: classes/helpers/FrmAppHelper.php:1972
|
5224 |
msgid "days"
|
5225 |
msgstr ""
|
5226 |
|
5227 |
+
#: classes/helpers/FrmAppHelper.php:1976
|
5228 |
msgid "hour"
|
5229 |
msgstr ""
|
5230 |
|
5231 |
+
#: classes/helpers/FrmAppHelper.php:1977
|
5232 |
msgid "hours"
|
5233 |
msgstr ""
|
5234 |
|
5235 |
+
#: classes/helpers/FrmAppHelper.php:1981
|
5236 |
msgid "minute"
|
5237 |
msgstr ""
|
5238 |
|
5239 |
+
#: classes/helpers/FrmAppHelper.php:1982
|
5240 |
msgid "minutes"
|
5241 |
msgstr ""
|
5242 |
|
5243 |
+
#: classes/helpers/FrmAppHelper.php:1986
|
5244 |
msgid "second"
|
5245 |
msgstr ""
|
5246 |
|
5247 |
+
#: classes/helpers/FrmAppHelper.php:1987
|
5248 |
msgid "seconds"
|
5249 |
msgstr ""
|
5250 |
|
5251 |
+
#: classes/helpers/FrmAppHelper.php:2081
|
5252 |
msgid "Give this action a label for easy reference."
|
5253 |
msgstr ""
|
5254 |
|
5255 |
+
#: classes/helpers/FrmAppHelper.php:2082
|
5256 |
msgid "Add one or more recipient addresses separated by a \",\". FORMAT: Name <name@email.com> or name@email.com. [admin_email] is the address set in WP General Settings."
|
5257 |
msgstr ""
|
5258 |
|
5259 |
+
#: classes/helpers/FrmAppHelper.php:2083
|
5260 |
msgid "Add CC addresses separated by a \",\". FORMAT: Name <name@email.com> or name@email.com."
|
5261 |
msgstr ""
|
5262 |
|
5263 |
+
#: classes/helpers/FrmAppHelper.php:2084
|
5264 |
msgid "Add BCC addresses separated by a \",\". FORMAT: Name <name@email.com> or name@email.com."
|
5265 |
msgstr ""
|
5266 |
|
5267 |
+
#: classes/helpers/FrmAppHelper.php:2085
|
5268 |
msgid "If you would like a different reply to address than the \"from\" address, add a single address here. FORMAT: Name <name@email.com> or name@email.com."
|
5269 |
msgstr ""
|
5270 |
|
5271 |
+
#: classes/helpers/FrmAppHelper.php:2086
|
5272 |
msgid "Enter the name and/or email address of the sender. FORMAT: John Bates <john@example.com> or john@example.com."
|
5273 |
msgstr ""
|
5274 |
|
5275 |
#. translators: %1$s: Form name, %2$s: Date
|
5276 |
+
#: classes/helpers/FrmAppHelper.php:2088
|
5277 |
msgid "If you leave the subject blank, the default will be used: %1$s Form submitted on %2$s"
|
5278 |
msgstr ""
|
5279 |
|
5280 |
+
#: classes/helpers/FrmAppHelper.php:2282
|
5281 |
+
#: classes/helpers/FrmAppHelper.php:2361
|
5282 |
msgid "Please wait while your site updates."
|
5283 |
msgstr ""
|
5284 |
|
5285 |
+
#: classes/helpers/FrmAppHelper.php:2283
|
5286 |
msgid "Are you sure you want to deauthorize Formidable Forms on this site?"
|
5287 |
msgstr ""
|
5288 |
|
5289 |
+
#: classes/helpers/FrmAppHelper.php:2286
|
5290 |
+
#: classes/helpers/FrmAppHelper.php:2315
|
5291 |
msgid "Loading…"
|
5292 |
msgstr ""
|
5293 |
|
5294 |
+
#: classes/helpers/FrmAppHelper.php:2316
|
5295 |
msgid "Remove"
|
5296 |
msgstr ""
|
5297 |
|
5298 |
+
#: classes/helpers/FrmAppHelper.php:2320
|
5299 |
msgid "No results match"
|
5300 |
msgstr ""
|
5301 |
|
5302 |
+
#: classes/helpers/FrmAppHelper.php:2321
|
5303 |
msgid "That file looks like Spam."
|
5304 |
msgstr ""
|
5305 |
|
5306 |
+
#: classes/helpers/FrmAppHelper.php:2322
|
5307 |
msgid "There is an error in the calculation in the field with key"
|
5308 |
msgstr ""
|
5309 |
|
5310 |
+
#: classes/helpers/FrmAppHelper.php:2323
|
5311 |
msgid "Please complete the preceding required fields before uploading a file."
|
5312 |
msgstr ""
|
5313 |
|
5314 |
+
#: classes/helpers/FrmAppHelper.php:2334
|
5315 |
msgid "(Click to add description)"
|
5316 |
msgstr ""
|
5317 |
|
5318 |
+
#: classes/helpers/FrmAppHelper.php:2335
|
5319 |
msgid "(Blank)"
|
5320 |
msgstr ""
|
5321 |
|
5322 |
+
#: classes/helpers/FrmAppHelper.php:2336
|
5323 |
msgid "(no label)"
|
5324 |
msgstr ""
|
5325 |
|
5326 |
+
#: classes/helpers/FrmAppHelper.php:2337
|
5327 |
msgid "Saving"
|
5328 |
msgstr ""
|
5329 |
|
5330 |
+
#: classes/helpers/FrmAppHelper.php:2338
|
5331 |
msgid "Saved"
|
5332 |
msgstr ""
|
5333 |
|
5334 |
+
#: classes/helpers/FrmAppHelper.php:2339
|
5335 |
msgid "OK"
|
5336 |
msgstr ""
|
5337 |
|
5338 |
+
#: classes/helpers/FrmAppHelper.php:2342
|
5339 |
msgid "Clear default value when typing"
|
5340 |
msgstr ""
|
5341 |
|
5342 |
+
#: classes/helpers/FrmAppHelper.php:2343
|
5343 |
msgid "Do not clear default value when typing"
|
5344 |
msgstr ""
|
5345 |
|
5346 |
+
#: classes/helpers/FrmAppHelper.php:2344
|
5347 |
msgid "Default value will pass form validation"
|
5348 |
msgstr ""
|
5349 |
|
5350 |
+
#: classes/helpers/FrmAppHelper.php:2345
|
5351 |
msgid "Default value will NOT pass form validation"
|
5352 |
msgstr ""
|
5353 |
|
5354 |
+
#: classes/helpers/FrmAppHelper.php:2346
|
5355 |
msgid "Heads up"
|
5356 |
msgstr ""
|
5357 |
|
5358 |
+
#: classes/helpers/FrmAppHelper.php:2348
|
5359 |
msgid "Are you sure you want to delete this field and all data associated with it?"
|
5360 |
msgstr ""
|
5361 |
|
5362 |
+
#: classes/helpers/FrmAppHelper.php:2349
|
5363 |
msgid "All fields inside this Section will be deleted along with their data. Are you sure you want to delete this group of fields?"
|
5364 |
msgstr ""
|
5365 |
|
5366 |
+
#: classes/helpers/FrmAppHelper.php:2350
|
5367 |
msgid "Warning: If you have entries with multiple rows, all but the first row will be lost."
|
5368 |
msgstr ""
|
5369 |
|
5370 |
+
#: classes/helpers/FrmAppHelper.php:2353
|
5371 |
msgid "Enter Email"
|
5372 |
msgstr ""
|
5373 |
|
5374 |
+
#: classes/helpers/FrmAppHelper.php:2354
|
5375 |
msgid "Confirm Email"
|
5376 |
msgstr ""
|
5377 |
|
5378 |
+
#: classes/helpers/FrmAppHelper.php:2355
|
5379 |
msgid "Conditional content here"
|
5380 |
msgstr ""
|
5381 |
|
5382 |
+
#: classes/helpers/FrmAppHelper.php:2357
|
5383 |
msgid "In certain browsers (e.g. Firefox) text will not display correctly if the field height is too small relative to the field padding and text size. Please increase your field height or decrease your field padding."
|
5384 |
msgstr ""
|
5385 |
|
5386 |
+
#: classes/helpers/FrmAppHelper.php:2358
|
5387 |
msgid "Enter Password"
|
5388 |
msgstr ""
|
5389 |
|
5390 |
+
#: classes/helpers/FrmAppHelper.php:2359
|
5391 |
msgid "Confirm Password"
|
5392 |
msgstr ""
|
5393 |
|
5394 |
+
#: classes/helpers/FrmAppHelper.php:2360
|
5395 |
msgid "Import Complete"
|
5396 |
msgstr ""
|
5397 |
|
5398 |
+
#: classes/helpers/FrmAppHelper.php:2362
|
5399 |
msgid "Warning: There is no way to retrieve unsaved entries."
|
5400 |
msgstr ""
|
5401 |
|
5402 |
+
#: classes/helpers/FrmAppHelper.php:2363
|
5403 |
msgid "Private"
|
5404 |
msgstr ""
|
5405 |
|
5406 |
+
#: classes/helpers/FrmAppHelper.php:2366
|
5407 |
msgid "No new licenses were found"
|
5408 |
msgstr ""
|
5409 |
|
5410 |
+
#: classes/helpers/FrmAppHelper.php:2367
|
5411 |
msgid "This calculation has at least one unmatched ( ) { } [ ]."
|
5412 |
msgstr ""
|
5413 |
|
5414 |
+
#: classes/helpers/FrmAppHelper.php:2368
|
5415 |
msgid "This calculation may have shortcodes that work in Views but not forms."
|
5416 |
msgstr ""
|
5417 |
|
5418 |
+
#: classes/helpers/FrmAppHelper.php:2369
|
5419 |
msgid "This calculation may have shortcodes that work in text calculations but not numeric calculations."
|
5420 |
msgstr ""
|
5421 |
|
5422 |
+
#: classes/helpers/FrmAppHelper.php:2370
|
5423 |
msgid "This form action is limited to one per form. Please edit the existing form action."
|
5424 |
msgstr ""
|
5425 |
|
5426 |
#. Translators: %s is the name of a Detail Page Slug that is a reserved word.
|
5427 |
+
#: classes/helpers/FrmAppHelper.php:2373
|
5428 |
msgid "The Detail Page Slug \"%s\" is reserved by WordPress. This may cause problems. Is this intentional?"
|
5429 |
msgstr ""
|
5430 |
|
5431 |
#. Translators: %s is the name of a parameter that is a reserved word. More than one word could be listed here, though that would not be common.
|
5432 |
+
#: classes/helpers/FrmAppHelper.php:2375
|
5433 |
msgid "The parameter \"%s\" is reserved by WordPress. This may cause problems when included in the URL. Is this intentional? "
|
5434 |
msgstr ""
|
5435 |
|
5436 |
+
#: classes/helpers/FrmAppHelper.php:2377
|
5437 |
msgid "Please enter a Repeat Limit that is greater than 1."
|
5438 |
msgstr ""
|
5439 |
|
5440 |
+
#: classes/helpers/FrmAppHelper.php:2378
|
5441 |
msgid "Please select a limit between 0 and 200."
|
5442 |
msgstr ""
|
5443 |
|
5444 |
+
#: classes/helpers/FrmAppHelper.php:2410
|
5445 |
msgid "You are running an outdated version of Formidable. This plugin may not work correctly if you do not update Formidable."
|
5446 |
msgstr ""
|
5447 |
|
5448 |
+
#: classes/helpers/FrmAppHelper.php:2437
|
5449 |
msgid "You are running a version of Formidable Forms that may not be compatible with your version of Formidable Forms Pro."
|
5450 |
msgstr ""
|
5451 |
|
5452 |
+
#: classes/helpers/FrmAppHelper.php:2465
|
5453 |
msgid "The version of PHP on your server is too low. If this is not corrected, you may see issues with Formidable Forms. Please contact your web host and ask to be updated to PHP 7.0+."
|
5454 |
msgstr ""
|
5455 |
|
5456 |
+
#: classes/helpers/FrmAppHelper.php:2471
|
5457 |
msgid "You are using an outdated browser that is not compatible with Formidable Forms. Please update to a more current browser (we recommend Chrome)."
|
5458 |
msgstr ""
|
5459 |
|
5460 |
+
#: classes/helpers/FrmAppHelper.php:2485
|
5461 |
msgid "English"
|
5462 |
msgstr ""
|
5463 |
|
5464 |
+
#: classes/helpers/FrmAppHelper.php:2486
|
5465 |
msgid "Afrikaans"
|
5466 |
msgstr ""
|
5467 |
|
5468 |
+
#: classes/helpers/FrmAppHelper.php:2487
|
5469 |
msgid "Albanian"
|
5470 |
msgstr ""
|
5471 |
|
5472 |
+
#: classes/helpers/FrmAppHelper.php:2488
|
5473 |
msgid "Arabic"
|
5474 |
msgstr ""
|
5475 |
|
5476 |
+
#: classes/helpers/FrmAppHelper.php:2489
|
5477 |
msgid "Armenian"
|
5478 |
msgstr ""
|
5479 |
|
5480 |
+
#: classes/helpers/FrmAppHelper.php:2490
|
5481 |
msgid "Azerbaijani"
|
5482 |
msgstr ""
|
5483 |
|
5484 |
+
#: classes/helpers/FrmAppHelper.php:2491
|
5485 |
msgid "Basque"
|
5486 |
msgstr ""
|
5487 |
|
5488 |
+
#: classes/helpers/FrmAppHelper.php:2492
|
5489 |
msgid "Bosnian"
|
5490 |
msgstr ""
|
5491 |
|
5492 |
+
#: classes/helpers/FrmAppHelper.php:2493
|
5493 |
msgid "Bulgarian"
|
5494 |
msgstr ""
|
5495 |
|
5496 |
+
#: classes/helpers/FrmAppHelper.php:2494
|
5497 |
msgid "Catalan"
|
5498 |
msgstr ""
|
5499 |
|
5500 |
+
#: classes/helpers/FrmAppHelper.php:2495
|
5501 |
msgid "Chinese Hong Kong"
|
5502 |
msgstr ""
|
5503 |
|
5504 |
+
#: classes/helpers/FrmAppHelper.php:2496
|
5505 |
msgid "Chinese Simplified"
|
5506 |
msgstr ""
|
5507 |
|
5508 |
+
#: classes/helpers/FrmAppHelper.php:2497
|
5509 |
msgid "Chinese Traditional"
|
5510 |
msgstr ""
|
5511 |
|
5512 |
+
#: classes/helpers/FrmAppHelper.php:2498
|
5513 |
msgid "Croatian"
|
5514 |
msgstr ""
|
5515 |
|
5516 |
+
#: classes/helpers/FrmAppHelper.php:2499
|
5517 |
msgid "Czech"
|
5518 |
msgstr ""
|
5519 |
|
5520 |
+
#: classes/helpers/FrmAppHelper.php:2500
|
5521 |
msgid "Danish"
|
5522 |
msgstr ""
|
5523 |
|
5524 |
+
#: classes/helpers/FrmAppHelper.php:2501
|
5525 |
msgid "Dutch"
|
5526 |
msgstr ""
|
5527 |
|
5528 |
+
#: classes/helpers/FrmAppHelper.php:2502
|
5529 |
msgid "English/UK"
|
5530 |
msgstr ""
|
5531 |
|
5532 |
+
#: classes/helpers/FrmAppHelper.php:2503
|
5533 |
msgid "Esperanto"
|
5534 |
msgstr ""
|
5535 |
|
5536 |
+
#: classes/helpers/FrmAppHelper.php:2504
|
5537 |
msgid "Estonian"
|
5538 |
msgstr ""
|
5539 |
|
5540 |
+
#: classes/helpers/FrmAppHelper.php:2505
|
5541 |
msgid "Faroese"
|
5542 |
msgstr ""
|
5543 |
|
5544 |
+
#: classes/helpers/FrmAppHelper.php:2506
|
5545 |
msgid "Farsi/Persian"
|
5546 |
msgstr ""
|
5547 |
|
5548 |
+
#: classes/helpers/FrmAppHelper.php:2507
|
5549 |
msgid "Filipino"
|
5550 |
msgstr ""
|
5551 |
|
5552 |
+
#: classes/helpers/FrmAppHelper.php:2508
|
5553 |
msgid "Finnish"
|
5554 |
msgstr ""
|
5555 |
|
5556 |
+
#: classes/helpers/FrmAppHelper.php:2509
|
5557 |
msgid "French"
|
5558 |
msgstr ""
|
5559 |
|
5560 |
+
#: classes/helpers/FrmAppHelper.php:2510
|
5561 |
msgid "French/Canadian"
|
5562 |
msgstr ""
|
5563 |
|
5564 |
+
#: classes/helpers/FrmAppHelper.php:2511
|
5565 |
msgid "French/Swiss"
|
5566 |
msgstr ""
|
5567 |
|
5568 |
+
#: classes/helpers/FrmAppHelper.php:2512
|
5569 |
msgid "German"
|
5570 |
msgstr ""
|
5571 |
|
5572 |
+
#: classes/helpers/FrmAppHelper.php:2513
|
5573 |
msgid "German/Austria"
|
5574 |
msgstr ""
|
5575 |
|
5576 |
+
#: classes/helpers/FrmAppHelper.php:2514
|
5577 |
msgid "German/Switzerland"
|
5578 |
msgstr ""
|
5579 |
|
5580 |
+
#: classes/helpers/FrmAppHelper.php:2515
|
5581 |
msgid "Greek"
|
5582 |
msgstr ""
|
5583 |
|
5584 |
+
#: classes/helpers/FrmAppHelper.php:2516
|
5585 |
+
#: classes/helpers/FrmAppHelper.php:2517
|
5586 |
msgid "Hebrew"
|
5587 |
msgstr ""
|
5588 |
|
5589 |
+
#: classes/helpers/FrmAppHelper.php:2518
|
5590 |
msgid "Hindi"
|
5591 |
msgstr ""
|
5592 |
|
5593 |
+
#: classes/helpers/FrmAppHelper.php:2519
|
5594 |
msgid "Hungarian"
|
5595 |
msgstr ""
|
5596 |
|
5597 |
+
#: classes/helpers/FrmAppHelper.php:2520
|
5598 |
msgid "Icelandic"
|
5599 |
msgstr ""
|
5600 |
|
5601 |
+
#: classes/helpers/FrmAppHelper.php:2521
|
5602 |
msgid "Indonesian"
|
5603 |
msgstr ""
|
5604 |
|
5605 |
+
#: classes/helpers/FrmAppHelper.php:2522
|
5606 |
msgid "Italian"
|
5607 |
msgstr ""
|
5608 |
|
5609 |
+
#: classes/helpers/FrmAppHelper.php:2523
|
5610 |
msgid "Japanese"
|
5611 |
msgstr ""
|
5612 |
|
5613 |
+
#: classes/helpers/FrmAppHelper.php:2524
|
5614 |
msgid "Korean"
|
5615 |
msgstr ""
|
5616 |
|
5617 |
+
#: classes/helpers/FrmAppHelper.php:2525
|
5618 |
msgid "Latvian"
|
5619 |
msgstr ""
|
5620 |
|
5621 |
+
#: classes/helpers/FrmAppHelper.php:2526
|
5622 |
msgid "Lithuanian"
|
5623 |
msgstr ""
|
5624 |
|
5625 |
+
#: classes/helpers/FrmAppHelper.php:2527
|
5626 |
msgid "Malaysian"
|
5627 |
msgstr ""
|
5628 |
|
5629 |
+
#: classes/helpers/FrmAppHelper.php:2528
|
5630 |
msgid "Norwegian"
|
5631 |
msgstr ""
|
5632 |
|
5633 |
+
#: classes/helpers/FrmAppHelper.php:2529
|
5634 |
msgid "Polish"
|
5635 |
msgstr ""
|
5636 |
|
5637 |
+
#: classes/helpers/FrmAppHelper.php:2530
|
5638 |
msgid "Portuguese"
|
5639 |
msgstr ""
|
5640 |
|
5641 |
+
#: classes/helpers/FrmAppHelper.php:2531
|
5642 |
msgid "Portuguese/Brazilian"
|
5643 |
msgstr ""
|
5644 |
|
5645 |
+
#: classes/helpers/FrmAppHelper.php:2532
|
5646 |
msgid "Portuguese/Portugal"
|
5647 |
msgstr ""
|
5648 |
|
5649 |
+
#: classes/helpers/FrmAppHelper.php:2533
|
5650 |
msgid "Romanian"
|
5651 |
msgstr ""
|
5652 |
|
5653 |
+
#: classes/helpers/FrmAppHelper.php:2534
|
5654 |
msgid "Russian"
|
5655 |
msgstr ""
|
5656 |
|
5657 |
+
#: classes/helpers/FrmAppHelper.php:2535
|
5658 |
+
#: classes/helpers/FrmAppHelper.php:2536
|
5659 |
msgid "Serbian"
|
5660 |
msgstr ""
|
5661 |
|
5662 |
+
#: classes/helpers/FrmAppHelper.php:2537
|
5663 |
msgid "Slovak"
|
5664 |
msgstr ""
|
5665 |
|
5666 |
+
#: classes/helpers/FrmAppHelper.php:2538
|
5667 |
msgid "Slovenian"
|
5668 |
msgstr ""
|
5669 |
|
5670 |
+
#: classes/helpers/FrmAppHelper.php:2539
|
5671 |
msgid "Spanish"
|
5672 |
msgstr ""
|
5673 |
|
5674 |
+
#: classes/helpers/FrmAppHelper.php:2540
|
5675 |
msgid "Spanish/Latin America"
|
5676 |
msgstr ""
|
5677 |
|
5678 |
+
#: classes/helpers/FrmAppHelper.php:2541
|
5679 |
msgid "Swedish"
|
5680 |
msgstr ""
|
5681 |
|
5682 |
+
#: classes/helpers/FrmAppHelper.php:2542
|
5683 |
msgid "Tamil"
|
5684 |
msgstr ""
|
5685 |
|
5686 |
+
#: classes/helpers/FrmAppHelper.php:2543
|
5687 |
msgid "Thai"
|
5688 |
msgstr ""
|
5689 |
|
5690 |
+
#: classes/helpers/FrmAppHelper.php:2544
|
5691 |
+
#: classes/helpers/FrmAppHelper.php:2545
|
5692 |
msgid "Turkish"
|
5693 |
msgstr ""
|
5694 |
|
5695 |
+
#: classes/helpers/FrmAppHelper.php:2546
|
5696 |
msgid "Ukranian"
|
5697 |
msgstr ""
|
5698 |
|
5699 |
+
#: classes/helpers/FrmAppHelper.php:2547
|
5700 |
msgid "Vietnamese"
|
5701 |
msgstr ""
|
5702 |
|
5713 |
msgid "Your server is missing the simplexml_import_dom function"
|
5714 |
msgstr ""
|
5715 |
|
5716 |
+
#: classes/helpers/FrmXMLHelper.php:971
|
|
|
|
|
|
|
|
|
5717 |
msgid "Updated"
|
5718 |
msgstr ""
|
5719 |
|
5720 |
+
#: classes/helpers/FrmXMLHelper.php:996
|
5721 |
msgid "Nothing was imported or updated"
|
5722 |
msgstr ""
|
5723 |
|
5724 |
#. translators: %1$s: Number of items
|
5725 |
+
#: classes/helpers/FrmXMLHelper.php:1011
|
5726 |
msgid "%1$s Form"
|
5727 |
msgid_plural "%1$s Forms"
|
5728 |
msgstr[0] ""
|
5729 |
|
5730 |
#. translators: %1$s: Number of items
|
5731 |
+
#: classes/helpers/FrmXMLHelper.php:1015
|
5732 |
msgid "%1$s Entry"
|
5733 |
msgid_plural "%1$s Entries"
|
5734 |
msgstr[0] ""
|
5735 |
|
5736 |
#. translators: %1$s: Number of items
|
5737 |
+
#: classes/helpers/FrmXMLHelper.php:1017
|
5738 |
msgid "%1$s View"
|
5739 |
msgid_plural "%1$s Views"
|
5740 |
msgstr[0] ""
|
5741 |
|
5742 |
#. translators: %1$s: Number of items
|
5743 |
+
#: classes/helpers/FrmXMLHelper.php:1019
|
5744 |
msgid "%1$s Post"
|
5745 |
msgid_plural "%1$s Posts"
|
5746 |
msgstr[0] ""
|
5747 |
|
5748 |
#. translators: %1$s: Number of items
|
5749 |
+
#: classes/helpers/FrmXMLHelper.php:1021
|
5750 |
msgid "%1$s Style"
|
5751 |
msgid_plural "%1$s Styles"
|
5752 |
msgstr[0] ""
|
5753 |
|
5754 |
#. translators: %1$s: Number of items
|
5755 |
+
#: classes/helpers/FrmXMLHelper.php:1023
|
5756 |
msgid "%1$s Term"
|
5757 |
msgid_plural "%1$s Terms"
|
5758 |
msgstr[0] ""
|
5759 |
|
5760 |
#. translators: %1$s: Number of items
|
5761 |
+
#: classes/helpers/FrmXMLHelper.php:1025
|
5762 |
msgid "%1$s Form Action"
|
5763 |
msgid_plural "%1$s Form Actions"
|
5764 |
msgstr[0] ""
|
5765 |
|
5766 |
+
#: classes/helpers/FrmXMLHelper.php:1049
|
5767 |
msgid "Go to imported form"
|
5768 |
msgstr ""
|
5769 |
|
5770 |
+
#: classes/helpers/FrmXMLHelper.php:1254
|
5771 |
msgid "Create Posts"
|
5772 |
msgstr ""
|
5773 |
|
5774 |
+
#: classes/helpers/FrmXMLHelper.php:1381
|
5775 |
msgid "Email Notification"
|
5776 |
msgstr ""
|
5777 |
|
readme.txt
CHANGED
@@ -3,9 +3,9 @@ Plugin Name: Formidable Forms - Contact Form, Survey & Quiz Forms Plugin for Wor
|
|
3 |
Contributors: formidableforms, sswells, srwells
|
4 |
Tags: forms, contact form, form builder, survey, form maker, form creator, paypal form, registration form, paypal, paypal form, stripe, stripe form, aweber, aweber form, getresponse, getresponse form, calculator form, calculator, price calculator, quote form, contact button, contact me, form manager, forms creator, Akismet, web form, payment form, survey form, donation form, email submit form, message form, email subscription, contact form widget, user registration form, wordpress registration, wordpress login form, constant contact, mailpoet, active campaign, salesforce, hubspot, campaign monitor
|
5 |
Requires at least: 4.7
|
6 |
-
Tested up to: 5.
|
7 |
Requires PHP: 5.6
|
8 |
-
Stable tag: 4.06.
|
9 |
|
10 |
The most advanced WordPress forms plugin. Go beyond contact forms with our drag & drop form builder for surveys, quiz forms, and more.
|
11 |
|
@@ -436,6 +436,13 @@ Using our Zapier integration, you can easily connect Formidable with over 1000+
|
|
436 |
See all <a href="https://zapier.com/apps/formidable/integrations">Formidable Zapier Integrations</a>.
|
437 |
|
438 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
439 |
= 4.06.01 =
|
440 |
* Remove the top level nav notification for inbox notifications.
|
441 |
* Use the frm_display_value hook for each different case where values are displayed (entries list table, view an entry, summary field...)
|
@@ -450,12 +457,4 @@ See all <a href="https://zapier.com/apps/formidable/integrations">Formidable Zap
|
|
450 |
* Fix: On some sites, permissions were preventing a form from being created from a template.
|
451 |
* Fix: The button colors were overriding eachother with some settings.
|
452 |
|
453 |
-
= 4.05.02 =
|
454 |
-
* New: Added frm_message_placement hook to show the form message below the form
|
455 |
-
* New: New classes that can be used in the 'form class' setting: frm_plain_success (Removes styling from the success message) and frm_below_success (Movs the success message below the form).
|
456 |
-
* Add Formidable back to the admin bar. This is now a setting if the default WordPress v5.2+ behavior is desired.
|
457 |
-
* Fix: Reiew requests were added to the inbox too frequently with sites with multiple admins.
|
458 |
-
* Fix: Elementor conflict by using the glost $post in the admin area.
|
459 |
-
* Fix: The color picker position in the styling settings was off for some options.
|
460 |
-
|
461 |
<a href="https://raw.githubusercontent.com/Strategy11/formidable-forms/master/changelog.txt">See changelog for all versions</a>
|
3 |
Contributors: formidableforms, sswells, srwells
|
4 |
Tags: forms, contact form, form builder, survey, form maker, form creator, paypal form, registration form, paypal, paypal form, stripe, stripe form, aweber, aweber form, getresponse, getresponse form, calculator form, calculator, price calculator, quote form, contact button, contact me, form manager, forms creator, Akismet, web form, payment form, survey form, donation form, email submit form, message form, email subscription, contact form widget, user registration form, wordpress registration, wordpress login form, constant contact, mailpoet, active campaign, salesforce, hubspot, campaign monitor
|
5 |
Requires at least: 4.7
|
6 |
+
Tested up to: 5.5
|
7 |
Requires PHP: 5.6
|
8 |
+
Stable tag: 4.06.02
|
9 |
|
10 |
The most advanced WordPress forms plugin. Go beyond contact forms with our drag & drop form builder for surveys, quiz forms, and more.
|
11 |
|
436 |
See all <a href="https://zapier.com/apps/formidable/integrations">Formidable Zapier Integrations</a>.
|
437 |
|
438 |
== Changelog ==
|
439 |
+
= 4.06.02 =
|
440 |
+
* New: Added frm_field_value_object hook for making adjustments to the field before it's label and value is displayed.
|
441 |
+
* New: Added frm_xml_response hook for altering the message/response when an XML file is imported.
|
442 |
+
* Fix: Updated deprecated blacklist functions in WP 5.5.
|
443 |
+
* Fix: Add more checks to the installation triggers to prevent them from being triggered at unintended times.
|
444 |
+
* Show a more helpful error message in some cases when the XML import fails.
|
445 |
+
|
446 |
= 4.06.01 =
|
447 |
* Remove the top level nav notification for inbox notifications.
|
448 |
* Use the frm_display_value hook for each different case where values are displayed (entries list table, view an entry, summary field...)
|
457 |
* Fix: On some sites, permissions were preventing a form from being created from a template.
|
458 |
* Fix: The button colors were overriding eachother with some settings.
|
459 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
460 |
<a href="https://raw.githubusercontent.com/Strategy11/formidable-forms/master/changelog.txt">See changelog for all versions</a>
|