Version Description
- Modifies the Advanced Equations module.
- Improves the performance of DS fields (Developer and Platinum versions of the plugin).
- Modifies the WooCommerce add-on to include the form in the products' pages, even if the products' prices were left in blank in the WooCommerce settings (Developer and Platinum versions of the plugin).
- Modifies the RedSys add-on to prevent the payments fail if the "Product name" attribute was left in blank in the form's settings (Platinum version of the plugin).
Download this release
Release Info
Developer | codepeople |
Plugin | Calculated Fields Form |
Version | 1.0.318 |
Comparing to | |
See all releases |
Code changes from version 1.0.306 to 1.0.318
- README.txt +49 -33
- captcha/captcha.php +35 -14
- changelog.txt +68 -0
- cp_calculatedfieldsf_free.php +2 -2
- css/style.css +1 -1
- inc/cpcff_amp.inc.php +9 -2
- inc/cpcff_main.inc.php +4 -1
- inc/cpcff_page_builders.inc.php +46 -2
- js/fbuilder-pro-admin.jquery.js +1 -1
- js/fbuilder-pro-public.jquery.js +6 -2
- js/fields-admin/fbuilder.fcalculated.js +7 -5
- js/fields-public/02_fbuilder.fnumber.js +1 -1
- js/fields-public/02_fbuilder.fslider.js +6 -9
- js/fields-public/04_fbuilder.fdate.js +34 -27
- js/fields-public/09_fbuilder.ffile.js +6 -14
- js/fields-public/fbuilder.fcalculated.js +8 -2
- js/modules/06_connector/public/01_connector.js +1 -1
- pagebuilders/beaverbuilder/{cff.inc.php → cff/cff.inc.php} +3 -3
- pagebuilders/beaverbuilder/cff/{beaver.pb.php → cff/cff.php} +4 -2
- pagebuilders/beaverbuilder/cff/{includes → cff/includes}/frontend.php +3 -3
- pagebuilders/beaverbuilder/cff/cff/js/settings.js +13 -0
- pagebuilders/beaverbuilder/cffvar/cffvar.inc.php +38 -0
- pagebuilders/beaverbuilder/cffvar/cffvar/cffvar.php +20 -0
- pagebuilders/beaverbuilder/cffvar/cffvar/css/cffvar.css +1 -0
- pagebuilders/beaverbuilder/cffvar/cffvar/includes/frontend.php +17 -0
- pagebuilders/elementor/elementor.pb.php +4 -4
- pagebuilders/siteorigin/siteorigin-cpcff-variable/tpl/siteorigin-cff-variable-shortcode.php +4 -4
- pagebuilders/siteorigin/siteorigin-cpcff/siteorigin-cpcff.php +1 -1
- pagebuilders/siteorigin/siteorigin-cpcff/tpl/siteorigin-cff-shortcode.php +2 -2
- pagebuilders/visualcomposer/CFFForm/CFFForm/public/cff-preview.png +0 -0
- pagebuilders/visualcomposer/CFFForm/CFFForm/public/cff-thumbnail.png +0 -0
- pagebuilders/visualcomposer/CFFForm/manifest.json +19 -0
- pagebuilders/visualcomposer/CFFForm/public/dist/element.bundle.js +83 -0
README.txt
CHANGED
@@ -55,6 +55,7 @@ The "Calculated Fields Form" plugin allows the specific integration with the fol
|
|
55 |
* Elementor.
|
56 |
* Page Builder by SiteOrigin.
|
57 |
* Beaver Builder.
|
|
|
58 |
* For other editors, the shortcodes should be inserted using other controls of general purpose, like the controls for inserting HTML or shortcodes.
|
59 |
|
60 |
= Latest Features Added =
|
@@ -904,63 +905,78 @@ This way the special characters should show correctly.
|
|
904 |
4. Inserting the form using Elementor
|
905 |
5. Inserting the form using Page Builder by SiteOrigin
|
906 |
6. Inserting the form using Beaver Builder
|
907 |
-
7.
|
908 |
-
8.
|
909 |
-
9.
|
910 |
-
10.
|
911 |
-
11.
|
912 |
-
12.
|
913 |
-
13.
|
914 |
-
14.
|
915 |
-
15.
|
916 |
-
16.
|
|
|
917 |
|
918 |
== Changelog ==
|
919 |
|
920 |
-
= 1.0.
|
921 |
|
922 |
-
* Modifies the
|
923 |
-
*
|
924 |
-
*
|
|
|
925 |
|
926 |
-
= 1.0.
|
927 |
|
928 |
-
*
|
|
|
929 |
|
930 |
-
= 1.0.
|
931 |
|
932 |
-
* Fixes
|
|
|
|
|
|
|
|
|
|
|
|
|
933 |
|
934 |
-
= 1.0.
|
935 |
|
936 |
-
*
|
|
|
937 |
|
938 |
-
= 1.0.
|
939 |
|
940 |
-
* Fixes an issue
|
|
|
941 |
|
942 |
-
= 1.0.
|
943 |
|
944 |
-
*
|
|
|
|
|
945 |
|
946 |
-
= 1.0.
|
947 |
|
948 |
-
*
|
949 |
|
950 |
-
= 1.0.
|
951 |
|
952 |
-
*
|
|
|
|
|
953 |
|
954 |
-
= 1.0.
|
955 |
|
956 |
-
* Fixes
|
957 |
|
958 |
-
= 1.0.
|
959 |
|
960 |
-
*
|
961 |
|
962 |
== Upgrade Notice ==
|
963 |
|
964 |
-
= 1.0.
|
965 |
|
966 |
Important note: If you are using the Professional version don't update via the WP dashboard but using your personal update link. Contact us if you need further information: http://cff.dwbooster.com/contact-us
|
55 |
* Elementor.
|
56 |
* Page Builder by SiteOrigin.
|
57 |
* Beaver Builder.
|
58 |
+
* Visual Composer.
|
59 |
* For other editors, the shortcodes should be inserted using other controls of general purpose, like the controls for inserting HTML or shortcodes.
|
60 |
|
61 |
= Latest Features Added =
|
905 |
4. Inserting the form using Elementor
|
906 |
5. Inserting the form using Page Builder by SiteOrigin
|
907 |
6. Inserting the form using Beaver Builder
|
908 |
+
7. Inserting the form using Visual Composer
|
909 |
+
8. Sample calculated form
|
910 |
+
9. Calculated field settings
|
911 |
+
10. Advanced equations editor
|
912 |
+
11. Calculator Form builder
|
913 |
+
12. Editing general fields
|
914 |
+
13. Available designs
|
915 |
+
14. Add-ons section
|
916 |
+
15. WooCommerce add-on
|
917 |
+
16. SalesForce add-on
|
918 |
+
17. WebHook add-on, and its integration with Zapier
|
919 |
|
920 |
== Changelog ==
|
921 |
|
922 |
+
= 1.0.318 =
|
923 |
|
924 |
+
* Modifies the Advanced Equations module.
|
925 |
+
* Improves the performance of DS fields (Developer and Platinum versions of the plugin).
|
926 |
+
* Modifies the WooCommerce add-on to include the form in the products' pages, even if the products' prices were left in blank in the WooCommerce settings (Developer and Platinum versions of the plugin).
|
927 |
+
* Modifies the RedSys add-on to prevent the payments fail if the "Product name" attribute was left in blank in the form's settings (Platinum version of the plugin).
|
928 |
|
929 |
+
= 1.0.317 =
|
930 |
|
931 |
+
* Modifies the Upload File field.
|
932 |
+
* Modifies the Users Permissions add-on to prevent the files uploaded previously being lost when the uses edit their submissions.
|
933 |
|
934 |
+
= 1.0.316 =
|
935 |
|
936 |
+
* Fixes a conflict with other plugins that use the forms builder.
|
937 |
+
* Fixes an issue between the module that pre-fills the form's fields and the dependencies.
|
938 |
+
* Includes the "callback" attribute in the fields tags, allowing to apply escape functions before the tags' replacement (Professional, Developer and Platinum versions of the plugin).
|
939 |
+
* Implements the "STRAIGHT" mode in the "DISTANCE" operation to determine the straight line distance between addresses (Developer and Platinum versions of the plugin).
|
940 |
+
* Implements the attribute: events_per_page into the [CP_CALCULATED_FIELDS_RESULT_LIST] shortcode to allow paginate the submissions lists (Professional, Developer and Platinum versions of the plugin).
|
941 |
+
* Implements the attribute: events_per_page into the [CP_CALCULATED_FIELDS_USER_SUBMISSIONS_LIST] shortcode of the Users Permissions add-on for controlling the number of items per page (Developer and Platinum versions of the plugin).
|
942 |
+
* Allows to insert the [CP_CALCULATED_FIELDS_USER_SUBMISSIONS_LIST] shortcode with the format: [CP_CALCULATED_FIELDS_USER_SUBMISSIONS_LIST] content [/CP_CALCULATED_FIELDS_USER_SUBMISSIONS_LIST]. In this way the content takes precedence over the "Summary" attribute in the form's settings (Developer and Platinum versions of the plugin).
|
943 |
|
944 |
+
= 1.0.315 =
|
945 |
|
946 |
+
* Fixes some minor issues.
|
947 |
+
* Implements a specific element to insert the forms using Visual Composer.
|
948 |
|
949 |
+
= 1.0.314 =
|
950 |
|
951 |
+
* Fixes an issue with the tooltips in multi-pages forms.
|
952 |
+
* Fixes an issue assigning the default values in the Date/Time fields, specifically populating the time component.
|
953 |
|
954 |
+
= 1.0.313 =
|
955 |
|
956 |
+
* Improves the integration with the different pages builders: Gutenberg, SiteOrigin, Beaver Page Builder, Elementor.
|
957 |
+
* Includes a new module in the Beaver Page Builder for generating the javascript variables.
|
958 |
+
* Fixes an issue in the PrintFriendly add-on when there are multiple notification emails (Platinum version of the plugin).
|
959 |
|
960 |
+
= 1.0.312 =
|
961 |
|
962 |
+
* Modifies the module that generates the Captcha.
|
963 |
|
964 |
+
= 1.0.311 =
|
965 |
|
966 |
+
* Improves the generated form reducing its code.
|
967 |
+
* Fixes an common issue caused by the users that enter comma signs as separator of class names in the 'Add Custom Coding Keywords' attributes of fields settings.
|
968 |
+
* Fixes an issue in the signature add-on. It was hiding the signature when the submission is being edited by the 'Users Permissions' add-on.
|
969 |
|
970 |
+
= 1.0.310 =
|
971 |
|
972 |
+
* Fixes a conflict between the Forms Preview module and some popular themes.
|
973 |
|
974 |
+
= 1.0.309 =
|
975 |
|
976 |
+
* Modifies the number and slider controls to allow entering the blank character as the thousands separator.
|
977 |
|
978 |
== Upgrade Notice ==
|
979 |
|
980 |
+
= 1.0.318 =
|
981 |
|
982 |
Important note: If you are using the Professional version don't update via the WP dashboard but using your personal update link. Contact us if you need further information: http://cff.dwbooster.com/contact-us
|
captcha/captcha.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
PHP Captcha by Codepeople.net
|
4 |
http://www.codepeople.net
|
5 |
*/
|
6 |
-
|
7 |
if(!defined('WP_DEBUG') || true != WP_DEBUG)
|
8 |
{
|
9 |
error_reporting(E_ERROR|E_PARSE);
|
@@ -11,6 +11,15 @@ if(!defined('WP_DEBUG') || true != WP_DEBUG)
|
|
11 |
|
12 |
ob_clean();
|
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
if( !class_exists( 'CP_SESSION' ) && session_id() == '' ) session_start();
|
15 |
|
16 |
if (!isset($_GET["ps"])) $_GET["ps"] = '';
|
@@ -54,14 +63,14 @@ if ($_GET["bcolor"] == '') $_GET["bcolor"] = "FFFFFF";
|
|
54 |
if ($_GET["border"] == '') $_GET["border"] = "000000";
|
55 |
|
56 |
//configuration
|
57 |
-
$imgX = $_GET["width"];
|
58 |
-
$imgY = $_GET["height"];
|
59 |
-
|
60 |
-
$letter_count = $_GET["letter_count"];
|
61 |
-
$min_size = $_GET["min_size"];
|
62 |
-
$max_size = $_GET["max_size"];
|
63 |
-
$noise = $_GET["noise"];
|
64 |
-
$noiselength = $_GET["noiselength"];
|
65 |
$bcolor = cpcff_decodeColor($_GET["bcolor"]);
|
66 |
$border = cpcff_decodeColor($_GET["border"]);
|
67 |
|
@@ -70,7 +79,6 @@ $random_noise_color= true;
|
|
70 |
$tcolor = cpcff_decodeColor("666666");
|
71 |
$random_text_color= true;
|
72 |
|
73 |
-
|
74 |
header("Cache-Control: no-store, no-cache, must-revalidate");
|
75 |
header("Pragma: no-cache");
|
76 |
|
@@ -103,8 +111,8 @@ for ($i = 0; $i < $letter_count; $i++) {
|
|
103 |
$str .= chr(mt_rand(97, 122))." ";
|
104 |
}
|
105 |
|
106 |
-
if( class_exists( 'CP_SESSION' ) ) CP_SESSION::set_var('rand_code'
|
107 |
-
else $_SESSION['rand_code'
|
108 |
|
109 |
$image = imagecreatetruecolor($imgX, $imgY);
|
110 |
$backgr_col = imagecolorallocate($image, $bcolor["r"],$bcolor["g"],$bcolor["b"]);
|
@@ -134,8 +142,21 @@ for ($i=0;$i<$noise;$i++)
|
|
134 |
imageline ( $image, $x1, $y1, mt_rand($x1-$noiselength,$x1+$noiselength), mt_rand($y1-$noiselength,$y1+$noiselength), $color);
|
135 |
}
|
136 |
|
137 |
-
|
138 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
139 |
|
140 |
// Removed @2x, the patch fixes an issue caused by other plugin that includes the @2x in the name of font files.
|
141 |
$font = str_replace( array("\\", "@2x"), array("/", ""), $font );
|
3 |
PHP Captcha by Codepeople.net
|
4 |
http://www.codepeople.net
|
5 |
*/
|
6 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
7 |
if(!defined('WP_DEBUG') || true != WP_DEBUG)
|
8 |
{
|
9 |
error_reporting(E_ERROR|E_PARSE);
|
11 |
|
12 |
ob_clean();
|
13 |
|
14 |
+
if(!function_exists('cff_captcha_sanitize_key'))
|
15 |
+
{
|
16 |
+
function cff_captcha_sanitize_key( $key ) {
|
17 |
+
$key = strtolower( $key );
|
18 |
+
$key = preg_replace( '/[^a-z0-9_\-]/', '', $key );
|
19 |
+
return $key;
|
20 |
+
}
|
21 |
+
}
|
22 |
+
|
23 |
if( !class_exists( 'CP_SESSION' ) && session_id() == '' ) session_start();
|
24 |
|
25 |
if (!isset($_GET["ps"])) $_GET["ps"] = '';
|
63 |
if ($_GET["border"] == '') $_GET["border"] = "000000";
|
64 |
|
65 |
//configuration
|
66 |
+
$imgX = ( isset($_GET["width"]) && is_numeric( $_GET["width"] ) )? $_GET["width"] : "180" ;
|
67 |
+
$imgY = ( isset($_GET["height"]) && is_numeric( $_GET["height"] ) )? $_GET["height"] : "60" ;
|
68 |
+
|
69 |
+
$letter_count = ( isset($_GET["letter_count"]) && is_numeric( $_GET["letter_count"] ) )? $_GET["letter_count"] : "5";
|
70 |
+
$min_size = ( isset($_GET["min_size"]) && is_numeric( $_GET["min_size"] ) )? $_GET["min_size"] : "35";
|
71 |
+
$max_size = ( isset($_GET["max_size"]) && is_numeric( $_GET["max_size"] ) )? $_GET["max_size"] : "45";
|
72 |
+
$noise = ( isset($_GET["noise"]) && is_numeric( $_GET["noise"] ) )? $_GET["noise"] : "200";
|
73 |
+
$noiselength = ( isset($_GET["noiselength"]) && is_numeric( $_GET["noiselength"] ) )? $_GET["noiselength"] : "5";
|
74 |
$bcolor = cpcff_decodeColor($_GET["bcolor"]);
|
75 |
$border = cpcff_decodeColor($_GET["border"]);
|
76 |
|
79 |
$tcolor = cpcff_decodeColor("666666");
|
80 |
$random_text_color= true;
|
81 |
|
|
|
82 |
header("Cache-Control: no-store, no-cache, must-revalidate");
|
83 |
header("Pragma: no-cache");
|
84 |
|
111 |
$str .= chr(mt_rand(97, 122))." ";
|
112 |
}
|
113 |
|
114 |
+
if( class_exists( 'CP_SESSION' ) ) CP_SESSION::set_var('rand_code'.cff_captcha_sanitize_key($_GET["ps"]), str_replace(" ", "", $str));
|
115 |
+
else $_SESSION['rand_code'.cff_captcha_sanitize_key($_GET["ps"]) ] = str_replace(" ", "", $str);
|
116 |
|
117 |
$image = imagecreatetruecolor($imgX, $imgY);
|
118 |
$backgr_col = imagecolorallocate($image, $bcolor["r"],$bcolor["g"],$bcolor["b"]);
|
142 |
imageline ( $image, $x1, $y1, mt_rand($x1-$noiselength,$x1+$noiselength), mt_rand($y1-$noiselength,$y1+$noiselength), $color);
|
143 |
}
|
144 |
|
145 |
+
switch (@$_GET["font"]) {
|
146 |
+
case "font-2.ttf":
|
147 |
+
$selected_font = "font-2.ttf";
|
148 |
+
break;
|
149 |
+
case "font-3.ttf":
|
150 |
+
$selected_font = "font-3.ttf";
|
151 |
+
break;
|
152 |
+
case "font-4.ttf":
|
153 |
+
$selected_font = "font-4.ttf";
|
154 |
+
break;
|
155 |
+
default:
|
156 |
+
$selected_font = "font-1.ttf";
|
157 |
+
}
|
158 |
+
|
159 |
+
$font = dirname( __FILE__ ) . "/" . $selected_font; // font
|
160 |
|
161 |
// Removed @2x, the patch fixes an issue caused by other plugin that includes the @2x in the name of font files.
|
162 |
$font = str_replace( array("\\", "@2x"), array("/", ""), $font );
|
changelog.txt
CHANGED
@@ -1,5 +1,73 @@
|
|
1 |
== Changelog ==
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
= 1.0.306 =
|
4 |
|
5 |
* Modifies the autocomplete module to include the requirements of latest versions of browsers.
|
1 |
== Changelog ==
|
2 |
|
3 |
+
= 1.0.318 =
|
4 |
+
|
5 |
+
* Modifies the Advanced Equations module.
|
6 |
+
* Improves the performance of DS fields (Developer and Platinum versions of the plugin).
|
7 |
+
* Modifies the WooCommerce add-on to include the form in the products' pages, even if the products' prices were left in blank in the WooCommerce settings (Developer and Platinum versions of the plugin).
|
8 |
+
* Modifies the RedSys add-on to prevent the payments fail if the "Product name" attribute was left in blank in the form's settings (Platinum version of the plugin).
|
9 |
+
|
10 |
+
= 1.0.317 =
|
11 |
+
|
12 |
+
* Modifies the Upload File field.
|
13 |
+
* Modifies the Users Permissions add-on to prevent the files uploaded previously being lost when the uses edit their submissions.
|
14 |
+
|
15 |
+
= 1.0.316 =
|
16 |
+
|
17 |
+
* Fixes a conflict with other plugins that use the forms builder.
|
18 |
+
* Fixes an issue between the module that pre-fills the form's fields and the dependencies.
|
19 |
+
* Includes the "callback" attribute in the fields tags, allowing to apply escape functions before the tags' replacement (Professional, Developer and Platinum versions of the plugin).
|
20 |
+
* Implements the "STRAIGHT" mode in the "DISTANCE" operation to determine the straight line distance between addresses (Developer and Platinum versions of the plugin).
|
21 |
+
* Implements the attribute: events_per_page into the [CP_CALCULATED_FIELDS_RESULT_LIST] shortcode to allow paginate the submissions lists (Professional, Developer and Platinum versions of the plugin).
|
22 |
+
* Implements the attribute: events_per_page into the [CP_CALCULATED_FIELDS_USER_SUBMISSIONS_LIST] shortcode of the Users Permissions add-on for controlling the number of items per page (Developer and Platinum versions of the plugin).
|
23 |
+
* Allows to insert the [CP_CALCULATED_FIELDS_USER_SUBMISSIONS_LIST] shortcode with the format: [CP_CALCULATED_FIELDS_USER_SUBMISSIONS_LIST] content [/CP_CALCULATED_FIELDS_USER_SUBMISSIONS_LIST]. In this way the content takes precedence over the "Summary" attribute in the form's settings (Developer and Platinum versions of the plugin).
|
24 |
+
|
25 |
+
= 1.0.315 =
|
26 |
+
|
27 |
+
* Fixes some minor issues.
|
28 |
+
* Implements a specific element to insert the forms using Visual Composer.
|
29 |
+
|
30 |
+
= 1.0.314 =
|
31 |
+
|
32 |
+
* Fixes an issue with the tooltips in multi-pages forms.
|
33 |
+
* Fixes an issue assigning the default values in the Date/Time fields, specifically populating the time component.
|
34 |
+
|
35 |
+
= 1.0.313 =
|
36 |
+
|
37 |
+
* Improves the integration with the different pages builders: Gutenberg, SiteOrigin, Beaver Page Builder, Elementor.
|
38 |
+
* Includes a new module in the Beaver Page Builder for generating the javascript variables.
|
39 |
+
* Fixes an issue in the PrintFriendly add-on when there are multiple notification emails (Platinum version of the plugin).
|
40 |
+
|
41 |
+
= 1.0.312 =
|
42 |
+
|
43 |
+
* Modifies the module that generates the Captcha.
|
44 |
+
|
45 |
+
= 1.0.311 =
|
46 |
+
|
47 |
+
* Improves the generated form reducing its code.
|
48 |
+
* Fixes an common issue caused by the users that enter comma signs as separator of class names in the 'Add Custom Coding Keywords' attributes of fields settings.
|
49 |
+
* Fixes an issue in the signature add-on. It was hiding the signature when the submission is being edited by the 'Users Permissions' add-on.
|
50 |
+
|
51 |
+
= 1.0.310 =
|
52 |
+
|
53 |
+
* Fixes a conflict between the Forms Preview module and some popular themes.
|
54 |
+
|
55 |
+
= 1.0.309 =
|
56 |
+
|
57 |
+
* Modifies the number and slider controls to allow entering the blank character as the thousands separator.
|
58 |
+
|
59 |
+
= 1.0.308 =
|
60 |
+
|
61 |
+
* Fixes an issue in the validation rules of Date/Time fields when the date component is disabled.
|
62 |
+
* Allows to preserves the 12 hours format in the summary fields (and in the notification emails and the thank you pages in the commercial versions of the plugin).
|
63 |
+
* Modifies the integration with the Gutenberg editor.
|
64 |
+
* Fixes an issue in the Date/Time operations module (Developer and Platinum versions of the plugin).
|
65 |
+
|
66 |
+
= 1.0.307 =
|
67 |
+
|
68 |
+
* Modifies the cffProxy operation for accepting not only camel-case convention, but lower can uppercase too: cffproxy and CFFPROXY.
|
69 |
+
* Modifies the MailChimp add-on to allow assigning tags the new members (Platinum version of the plugin).
|
70 |
+
|
71 |
= 1.0.306 =
|
72 |
|
73 |
* Modifies the autocomplete module to include the requirements of latest versions of browsers.
|
cp_calculatedfieldsf_free.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Calculated Fields Form
|
4 |
Plugin URI: https://cff.dwbooster.com
|
5 |
Description: Create forms with field values calculated based in other form field values.
|
6 |
-
Version: 1.0.
|
7 |
Text Domain: calculated-fields-form
|
8 |
Author: CodePeople
|
9 |
Author URI: https://cff.dwbooster.com
|
@@ -16,7 +16,7 @@ if(!defined('WP_DEBUG') || true != WP_DEBUG)
|
|
16 |
}
|
17 |
|
18 |
// Defining main constants
|
19 |
-
define('CP_CALCULATEDFIELDSF_VERSION', '1.0.
|
20 |
define('CP_CALCULATEDFIELDSF_MAIN_FILE_PATH', __FILE__ );
|
21 |
define('CP_CALCULATEDFIELDSF_BASE_PATH', dirname( CP_CALCULATEDFIELDSF_MAIN_FILE_PATH ) );
|
22 |
define('CP_CALCULATEDFIELDSF_BASE_NAME', plugin_basename( CP_CALCULATEDFIELDSF_MAIN_FILE_PATH ) );
|
3 |
Plugin Name: Calculated Fields Form
|
4 |
Plugin URI: https://cff.dwbooster.com
|
5 |
Description: Create forms with field values calculated based in other form field values.
|
6 |
+
Version: 1.0.318
|
7 |
Text Domain: calculated-fields-form
|
8 |
Author: CodePeople
|
9 |
Author URI: https://cff.dwbooster.com
|
16 |
}
|
17 |
|
18 |
// Defining main constants
|
19 |
+
define('CP_CALCULATEDFIELDSF_VERSION', '1.0.318' );
|
20 |
define('CP_CALCULATEDFIELDSF_MAIN_FILE_PATH', __FILE__ );
|
21 |
define('CP_CALCULATEDFIELDSF_BASE_PATH', dirname( CP_CALCULATEDFIELDSF_MAIN_FILE_PATH ) );
|
22 |
define('CP_CALCULATEDFIELDSF_BASE_NAME', plugin_basename( CP_CALCULATEDFIELDSF_MAIN_FILE_PATH ) );
|
css/style.css
CHANGED
@@ -199,7 +199,7 @@ a.helpfbuilder{font-size:80%;text-decoration:underline;color:#00f;cursor:pointer
|
|
199 |
.cff-light-modal{display: none; position: fixed; background: transparent; top: 0; bottom: 0; left: 0; -ms-flex-align: center; align-items: center; -ms-flex-pack: center; justify-content: center; right: 0; z-index: 99999; transition: background 1s; font-size: 16px; visibility: hidden;}
|
200 |
.cff-light-modal-content{background: transparent; width: 90%; height:90%; position: relative; max-height: 90%; line-height: 1.4; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column;}
|
201 |
.cff-light-modal-body{padding: 0; overflow: hidden; height: 100%;}
|
202 |
-
.cff-light-modal-close-icon{text-decoration: none; color: #fff; padding: 0; font-size:
|
203 |
.cff-light-modal:target{background: rgba(0, 0, 0, 0.5); display: -ms-flexbox; display: flex; visibility: visible;}
|
204 |
@keyframes cff-basic{0%{opacity: 0;}100%{opacity: 1;}}
|
205 |
.cff-light-modal iframe{width:100%;height:100%;border-radius: .2em; overflow:hidden;}
|
199 |
.cff-light-modal{display: none; position: fixed; background: transparent; top: 0; bottom: 0; left: 0; -ms-flex-align: center; align-items: center; -ms-flex-pack: center; justify-content: center; right: 0; z-index: 99999; transition: background 1s; font-size: 16px; visibility: hidden;}
|
200 |
.cff-light-modal-content{background: transparent; width: 90%; height:90%; position: relative; max-height: 90%; line-height: 1.4; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column;}
|
201 |
.cff-light-modal-body{padding: 0; overflow: hidden; height: 100%;}
|
202 |
+
.cff-light-modal-close-icon{text-decoration: none; color: #fff; padding: 0; font-size: 18px; line-height: 24px; position: absolute; top: 5px; right: 5px; cursor: pointer;}
|
203 |
.cff-light-modal:target{background: rgba(0, 0, 0, 0.5); display: -ms-flexbox; display: flex; visibility: visible;}
|
204 |
@keyframes cff-basic{0%{opacity: 0;}100%{opacity: 1;}}
|
205 |
.cff-light-modal iframe{width:100%;height:100%;border-radius: .2em; overflow:hidden;}
|
inc/cpcff_amp.inc.php
CHANGED
@@ -99,7 +99,10 @@ if(!class_exists('CPCFF_AMP'))
|
|
99 |
ob_start();
|
100 |
if(!empty($wp_styles)) $wp_styles->do_items();
|
101 |
if(!empty($wp_scripts)) $wp_scripts->do_items();
|
102 |
-
|
|
|
|
|
|
|
103 |
$message .= ob_get_contents();
|
104 |
ob_end_clean();
|
105 |
|
@@ -223,7 +226,11 @@ if(!class_exists('CPCFF_AMP'))
|
|
223 |
if( $param == 'cff-form')
|
224 |
$attrs['id'] = @intval($value);
|
225 |
elseif(preg_match('/^cff\-form\-attr\-/i', $param))
|
226 |
-
|
|
|
|
|
|
|
|
|
227 |
}
|
228 |
}
|
229 |
return $attrs;
|
99 |
ob_start();
|
100 |
if(!empty($wp_styles)) $wp_styles->do_items();
|
101 |
if(!empty($wp_scripts)) $wp_scripts->do_items();
|
102 |
+
if(class_exists('Error'))
|
103 |
+
{
|
104 |
+
try{ wp_footer(); } catch(Error $err) {}
|
105 |
+
}
|
106 |
$message .= ob_get_contents();
|
107 |
ob_end_clean();
|
108 |
|
226 |
if( $param == 'cff-form')
|
227 |
$attrs['id'] = @intval($value);
|
228 |
elseif(preg_match('/^cff\-form\-attr\-/i', $param))
|
229 |
+
{
|
230 |
+
$param = preg_replace('/^cff\-form\-attr\-/i', '', $param);
|
231 |
+
$param = sanitize_text_field($param);
|
232 |
+
$attrs[$param] = sanitize_text_field($value);
|
233 |
+
}
|
234 |
}
|
235 |
}
|
236 |
return $attrs;
|
inc/cpcff_main.inc.php
CHANGED
@@ -385,7 +385,10 @@ if(!class_exists('CPCFF_MAIN'))
|
|
385 |
ob_start();
|
386 |
if(!empty($wp_styles)) $wp_styles->do_items();
|
387 |
if(!empty($wp_scripts)) $wp_scripts->do_items();
|
388 |
-
|
|
|
|
|
|
|
389 |
$message .= ob_get_contents();
|
390 |
ob_end_clean();
|
391 |
$page_title = (!empty($atts['page_title'])) ? $atts['page_title'] : '';
|
385 |
ob_start();
|
386 |
if(!empty($wp_styles)) $wp_styles->do_items();
|
387 |
if(!empty($wp_scripts)) $wp_scripts->do_items();
|
388 |
+
if(class_exists('Error'))
|
389 |
+
{
|
390 |
+
try{ wp_footer(); } catch(Error $err) {}
|
391 |
+
}
|
392 |
$message .= ob_get_contents();
|
393 |
ob_end_clean();
|
394 |
$page_title = (!empty($atts['page_title'])) ? $atts['page_title'] : '';
|
inc/cpcff_page_builders.inc.php
CHANGED
@@ -8,6 +8,8 @@ if(!class_exists('CPCFF_PAGE_BUILDERS'))
|
|
8 |
class CPCFF_PAGE_BUILDERS
|
9 |
{
|
10 |
private static $_instance;
|
|
|
|
|
11 |
private function __construct(){}
|
12 |
private static function instance()
|
13 |
{
|
@@ -28,6 +30,7 @@ if(!class_exists('CPCFF_PAGE_BUILDERS'))
|
|
28 |
|
29 |
// Gutenberg editor
|
30 |
add_action( 'enqueue_block_editor_assets', array($instance,'gutenberg_editor' ) );
|
|
|
31 |
|
32 |
// Elementor
|
33 |
add_action( 'elementor/widgets/widgets_registered', array($instance, 'elementor_editor') );
|
@@ -36,8 +39,10 @@ if(!class_exists('CPCFF_PAGE_BUILDERS'))
|
|
36 |
// Beaver builder
|
37 |
if(class_exists('FLBuilder'))
|
38 |
{
|
39 |
-
include_once CP_CALCULATEDFIELDSF_BASE_PATH.'/pagebuilders/beaverbuilder/cff.inc.php';
|
|
|
40 |
}
|
|
|
41 |
} // End init
|
42 |
|
43 |
public function after_setup_theme()
|
@@ -47,6 +52,9 @@ if(!class_exists('CPCFF_PAGE_BUILDERS'))
|
|
47 |
// SiteOrigin
|
48 |
add_filter('siteorigin_widgets_widget_folders', array($instance, 'siteorigin_widgets_collection'));
|
49 |
add_filter('siteorigin_panels_widget_dialog_tabs', array($instance, 'siteorigin_panels_widget_dialog_tabs'));
|
|
|
|
|
|
|
50 |
} // End after_setup_theme
|
51 |
|
52 |
/**************************** GUTENBERG ****************************/
|
@@ -81,6 +89,27 @@ if(!class_exists('CPCFF_PAGE_BUILDERS'))
|
|
81 |
wp_localize_script('cp_calculatedfieldsf_gutenberg_editor', 'cpcff_gutenberg_editor_config', $config);
|
82 |
} // End gutenberg_editor
|
83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
/**************************** ELEMENTOR ****************************/
|
85 |
|
86 |
public function elementor_editor_category()
|
@@ -95,7 +124,7 @@ if(!class_exists('CPCFF_PAGE_BUILDERS'))
|
|
95 |
require_once CP_CALCULATEDFIELDSF_BASE_PATH.'/pagebuilders/elementor/elementor.pb.php';
|
96 |
} // End elementor_editor
|
97 |
|
98 |
-
/****************************
|
99 |
|
100 |
public function siteorigin_widgets_collection($folders)
|
101 |
{
|
@@ -115,5 +144,20 @@ if(!class_exists('CPCFF_PAGE_BUILDERS'))
|
|
115 |
return $tabs;
|
116 |
} // End siteorigin_panels_widget_dialog_tabs
|
117 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
118 |
} // End CPCFF_PAGE_BUILDERS
|
119 |
}
|
8 |
class CPCFF_PAGE_BUILDERS
|
9 |
{
|
10 |
private static $_instance;
|
11 |
+
private $wptexturize_flag = false;
|
12 |
+
|
13 |
private function __construct(){}
|
14 |
private static function instance()
|
15 |
{
|
30 |
|
31 |
// Gutenberg editor
|
32 |
add_action( 'enqueue_block_editor_assets', array($instance,'gutenberg_editor' ) );
|
33 |
+
add_filter( 'render_block', array($instance, 'gutenberg_dissable_wptexturize'), 10, 2 );
|
34 |
|
35 |
// Elementor
|
36 |
add_action( 'elementor/widgets/widgets_registered', array($instance, 'elementor_editor') );
|
39 |
// Beaver builder
|
40 |
if(class_exists('FLBuilder'))
|
41 |
{
|
42 |
+
include_once CP_CALCULATEDFIELDSF_BASE_PATH.'/pagebuilders/beaverbuilder/cff/cff.inc.php';
|
43 |
+
include_once CP_CALCULATEDFIELDSF_BASE_PATH.'/pagebuilders/beaverbuilder/cffvar/cffvar.inc.php';
|
44 |
}
|
45 |
+
|
46 |
} // End init
|
47 |
|
48 |
public function after_setup_theme()
|
52 |
// SiteOrigin
|
53 |
add_filter('siteorigin_widgets_widget_folders', array($instance, 'siteorigin_widgets_collection'));
|
54 |
add_filter('siteorigin_panels_widget_dialog_tabs', array($instance, 'siteorigin_panels_widget_dialog_tabs'));
|
55 |
+
|
56 |
+
// Visual Composer
|
57 |
+
add_action('vcv:api', array($instance, 'visualcomposer_editor'));
|
58 |
} // End after_setup_theme
|
59 |
|
60 |
/**************************** GUTENBERG ****************************/
|
89 |
wp_localize_script('cp_calculatedfieldsf_gutenberg_editor', 'cpcff_gutenberg_editor_config', $config);
|
90 |
} // End gutenberg_editor
|
91 |
|
92 |
+
public function gutenberg_dissable_wptexturize($block_content, $block)
|
93 |
+
{
|
94 |
+
if (
|
95 |
+
'cpcff/form-summary-shortcode' === $block['blockName'] ||
|
96 |
+
'cpcff/form-summary-list-shortcode' === $block['blockName']
|
97 |
+
)
|
98 |
+
{
|
99 |
+
if(has_filter( 'the_content', 'wptexturize' ))
|
100 |
+
{
|
101 |
+
$this->wptexturize_flag = true;
|
102 |
+
remove_filter('the_content', 'wptexturize');
|
103 |
+
}
|
104 |
+
}
|
105 |
+
elseif($this->wptexturize_flag && !has_filter( 'the_content', 'wptexturize' ))
|
106 |
+
{
|
107 |
+
add_filter( 'the_content', 'wpautop' );
|
108 |
+
}
|
109 |
+
|
110 |
+
return $block_content;
|
111 |
+
} // End gutenberg_dissable_wptexturize
|
112 |
+
|
113 |
/**************************** ELEMENTOR ****************************/
|
114 |
|
115 |
public function elementor_editor_category()
|
124 |
require_once CP_CALCULATEDFIELDSF_BASE_PATH.'/pagebuilders/elementor/elementor.pb.php';
|
125 |
} // End elementor_editor
|
126 |
|
127 |
+
/**************************** SITEORIGIN ****************************/
|
128 |
|
129 |
public function siteorigin_widgets_collection($folders)
|
130 |
{
|
144 |
return $tabs;
|
145 |
} // End siteorigin_panels_widget_dialog_tabs
|
146 |
|
147 |
+
/**************************** VISUAL COMPOSER ****************************/
|
148 |
+
|
149 |
+
public function visualcomposer_editor($api)
|
150 |
+
{
|
151 |
+
$elementsToRegister = [ 'CFFForm', ];
|
152 |
+
$pluginBaseUrl = rtrim(plugins_url('/pagebuilders/visualcomposer/', CP_CALCULATEDFIELDSF_MAIN_FILE_PATH), '\\/');
|
153 |
+
$elementsApi = $api->elements;
|
154 |
+
foreach ($elementsToRegister as $tag)
|
155 |
+
{
|
156 |
+
$manifestPath = CP_CALCULATEDFIELDSF_BASE_PATH . '/pagebuilders/visualcomposer/' . $tag . '/manifest.json';
|
157 |
+
$elementBaseUrl = $pluginBaseUrl . '/' . $tag;
|
158 |
+
$elementsApi->add($manifestPath, $elementBaseUrl);
|
159 |
+
}
|
160 |
+
} // End visualcomposer_editor
|
161 |
+
|
162 |
} // End CPCFF_PAGE_BUILDERS
|
163 |
}
|
js/fbuilder-pro-admin.jquery.js
CHANGED
@@ -942,7 +942,7 @@
|
|
942 |
|
943 |
$("#sCsslayout").bind("keyup", {obj: this}, function(e)
|
944 |
{
|
945 |
-
e.data.obj.csslayout = $(this).val();
|
946 |
$.fbuilder.reloadItems( {'field': e.data.obj} );
|
947 |
});
|
948 |
|
942 |
|
943 |
$("#sCsslayout").bind("keyup", {obj: this}, function(e)
|
944 |
{
|
945 |
+
e.data.obj.csslayout = $(this).val().replace(/\,/g, ' ').replace(/\s+/g, ' ');
|
946 |
$.fbuilder.reloadItems( {'field': e.data.obj} );
|
947 |
});
|
948 |
|
js/fbuilder-pro-public.jquery.js
CHANGED
@@ -417,7 +417,7 @@
|
|
417 |
},
|
418 |
setVal:function( v )
|
419 |
{
|
420 |
-
$( "[id='" + this.name + "']" ).val( v );
|
421 |
}
|
422 |
});
|
423 |
|
@@ -517,7 +517,11 @@
|
|
517 |
_viewportHeight = $(window).height(),
|
518 |
_scrollTop = formObj.offset().top;
|
519 |
|
520 |
-
if(
|
|
|
|
|
|
|
|
|
521 |
{
|
522 |
ffocusable[0].focus();
|
523 |
}
|
417 |
},
|
418 |
setVal:function( v )
|
419 |
{
|
420 |
+
$( "[id='" + this.name + "']" ).val( v ).change();
|
421 |
}
|
422 |
});
|
423 |
|
517 |
_viewportHeight = $(window).height(),
|
518 |
_scrollTop = formObj.offset().top;
|
519 |
|
520 |
+
if(
|
521 |
+
ffocusable.length &&
|
522 |
+
!ffocusable.first().hasClass('hasDatepicker') &&
|
523 |
+
ffocusable.first().closest('[uh]').length == 0 /* FIXES AUTO-OPEN TOOLTIPS */
|
524 |
+
)
|
525 |
{
|
526 |
ffocusable[0].focus();
|
527 |
}
|
js/fields-admin/fbuilder.fcalculated.js
CHANGED
@@ -25,7 +25,9 @@
|
|
25 |
hidefield:false,
|
26 |
init:function()
|
27 |
{
|
28 |
-
|
|
|
|
|
29 |
},
|
30 |
display:function()
|
31 |
{
|
@@ -51,13 +53,14 @@
|
|
51 |
}
|
52 |
});
|
53 |
$(document).on('click', '.cff-light-modal-close-icon', function(){$('[id="cff-advanced-equation-editor"]').remove();});
|
|
|
54 |
$("#sAdvancedEditor").bind("click", {obj: this}, function(e)
|
55 |
{
|
56 |
$(window).unbind('message');
|
57 |
$(window).bind('message', function(event){$('#sEq').val(event.originalEvent.data).change();});
|
58 |
var advEditor = '<div class="cff-light-modal" id="cff-advanced-equation-editor" role="dialog" aria-hidden="false">'+
|
59 |
'<div class="cff-light-modal-content">'+
|
60 |
-
'<a href="#" class="cff-light-modal-close-icon" aria-label="close" title="Close"
|
61 |
'<div class="cff-light-modal-body">'+
|
62 |
'<iframe width="560" height="315" frameborder="0" allowfullscreen scrolling="no"></iframe>'+
|
63 |
'</div>'+
|
@@ -70,7 +73,7 @@
|
|
70 |
function(){
|
71 |
var args = {};
|
72 |
args.code = e.data.obj.eq;
|
73 |
-
|
74 |
if( $.fbuilder[ 'modules' ] )
|
75 |
{
|
76 |
args.operations = {};
|
@@ -352,7 +355,6 @@
|
|
352 |
var items = this.fBuild.getItems(),
|
353 |
invalidFields = { 'fSectionBreak':1, 'fPageBreak':1, 'fsummary':1, 'ffieldset':1, 'fdiv':1, 'fMedia':1, 'fButton':1, 'fhtml':1, 'ffile':1 };
|
354 |
|
355 |
-
me.items = {}
|
356 |
for( var i in items )
|
357 |
{
|
358 |
var item = items[ i ];
|
@@ -361,7 +363,7 @@
|
|
361 |
var fName = item[ 'name' ],
|
362 |
fTitle = item[ 'title' ];
|
363 |
|
364 |
-
|
365 |
|
366 |
fName = fName.replace( /'/g, "\'" ).replace( /"/g, '\"' );
|
367 |
out += '<option value="' + fName + '">'+item[ 'name' ] + ( ( item[ 'title' ] && !/^\s*$/.test( item[ 'title' ] ) ) ? '('+item[ 'title' ] + ')' : '' ) + '</option>';
|
25 |
hidefield:false,
|
26 |
init:function()
|
27 |
{
|
28 |
+
delete(this['eq_factored']);
|
29 |
+
delete(this['items']);
|
30 |
+
cff_form_fields_list = {}; /* Global variable to allows the integration with the Advanced Editor */
|
31 |
},
|
32 |
display:function()
|
33 |
{
|
53 |
}
|
54 |
});
|
55 |
$(document).on('click', '.cff-light-modal-close-icon', function(){$('[id="cff-advanced-equation-editor"]').remove();});
|
56 |
+
$(document).on('keyup', function(e){if(e.key === 'Escape') $('.cff-light-modal-close-icon').click();});
|
57 |
$("#sAdvancedEditor").bind("click", {obj: this}, function(e)
|
58 |
{
|
59 |
$(window).unbind('message');
|
60 |
$(window).bind('message', function(event){$('#sEq').val(event.originalEvent.data).change();});
|
61 |
var advEditor = '<div class="cff-light-modal" id="cff-advanced-equation-editor" role="dialog" aria-hidden="false">'+
|
62 |
'<div class="cff-light-modal-content">'+
|
63 |
+
'<a href="#" class="cff-light-modal-close-icon" aria-label="close" title="Close">Save & Close</a>'+
|
64 |
'<div class="cff-light-modal-body">'+
|
65 |
'<iframe width="560" height="315" frameborder="0" allowfullscreen scrolling="no"></iframe>'+
|
66 |
'</div>'+
|
73 |
function(){
|
74 |
var args = {};
|
75 |
args.code = e.data.obj.eq;
|
76 |
+
args.fields = cff_form_fields_list;
|
77 |
if( $.fbuilder[ 'modules' ] )
|
78 |
{
|
79 |
args.operations = {};
|
355 |
var items = this.fBuild.getItems(),
|
356 |
invalidFields = { 'fSectionBreak':1, 'fPageBreak':1, 'fsummary':1, 'ffieldset':1, 'fdiv':1, 'fMedia':1, 'fButton':1, 'fhtml':1, 'ffile':1 };
|
357 |
|
|
|
358 |
for( var i in items )
|
359 |
{
|
360 |
var item = items[ i ];
|
363 |
var fName = item[ 'name' ],
|
364 |
fTitle = item[ 'title' ];
|
365 |
|
366 |
+
cff_form_fields_list[fName] = {label:fTitle, type:item.ftype};
|
367 |
|
368 |
fName = fName.replace( /'/g, "\'" ).replace( /"/g, '\"' );
|
369 |
out += '<option value="' + fName + '">'+item[ 'name' ] + ( ( item[ 'title' ] && !/^\s*$/.test( item[ 'title' ] ) ) ? '('+item[ 'title' ] + ')' : '' ) + '</option>';
|
js/fields-public/02_fbuilder.fnumber.js
CHANGED
@@ -69,7 +69,7 @@
|
|
69 |
},
|
70 |
show:function()
|
71 |
{
|
72 |
-
var _type = ( this.dformat == 'digits' || (
|
73 |
|
74 |
return '<div class="fields '+this.csslayout+' '+this.name+' cff-number-field" id="field'+this.form_identifier+'-'+this.index+'"><label for="'+this.name+'">'+this.title+''+((this.required)?"<span class='r'>*</span>":"")+'</label><div class="dfield"><input id="'+this.name+'" name="'+this.name+'" '+( ( !/^\s*$/.test( this.min) ) ? 'min="'+$.fbuilder.parseVal( this._getAttr('min'), this.thousandSeparator, this.decimalSymbol )+'" ' : '' )+( ( !/^\s*$/.test(this.max) ) ? ' max="'+$.fbuilder.parseVal( this._getAttr('max'), this.thousandSeparator, this.decimalSymbol )+'" ' : '' )+' class="field '+this.dformat+' '+this.size+((this.required)?" required":"")+'" type="'+_type+'" value="'+$.fbuilder.htmlEncode((this.formatDynamically) ? this.getFormattedValue(this.predefined) : this.predefined)+'" '+((this.readonly)?'readonly':'')+' /><span class="uh">'+this.userhelp+'</span></div><div class="clearer"></div></div>';
|
75 |
},
|
69 |
},
|
70 |
show:function()
|
71 |
{
|
72 |
+
var _type = ( this.dformat == 'digits' || ( /^$/.test( this.thousandSeparator ) && /^\s*(\.\s*)?$/.test( this.decimalSymbol ) ) ) ? 'number' : 'text';
|
73 |
|
74 |
return '<div class="fields '+this.csslayout+' '+this.name+' cff-number-field" id="field'+this.form_identifier+'-'+this.index+'"><label for="'+this.name+'">'+this.title+''+((this.required)?"<span class='r'>*</span>":"")+'</label><div class="dfield"><input id="'+this.name+'" name="'+this.name+'" '+( ( !/^\s*$/.test( this.min) ) ? 'min="'+$.fbuilder.parseVal( this._getAttr('min'), this.thousandSeparator, this.decimalSymbol )+'" ' : '' )+( ( !/^\s*$/.test(this.max) ) ? ' max="'+$.fbuilder.parseVal( this._getAttr('max'), this.thousandSeparator, this.decimalSymbol )+'" ' : '' )+' class="field '+this.dformat+' '+this.size+((this.required)?" required":"")+'" type="'+_type+'" value="'+$.fbuilder.htmlEncode((this.formatDynamically) ? this.getFormattedValue(this.predefined) : this.predefined)+'" '+((this.readonly)?'readonly':'')+' /><span class="uh">'+this.userhelp+'</span></div><div class="clearer"></div></div>';
|
75 |
},
|
js/fields-public/02_fbuilder.fslider.js
CHANGED
@@ -29,17 +29,15 @@
|
|
29 |
counter = 0,
|
30 |
str = '';
|
31 |
|
32 |
-
|
33 |
{
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
str = parts[0][i] + str;
|
38 |
-
if( counter%3 == 0 && i != 0 ) str = this.thousandSeparator + str;
|
39 |
|
40 |
-
}
|
41 |
-
parts[0] = str;
|
42 |
}
|
|
|
|
|
43 |
if( typeof parts[ 1 ] != 'undefined' && parts[ 1 ].length == 1 )
|
44 |
{
|
45 |
parts[ 1 ] += '0';
|
@@ -92,7 +90,6 @@
|
|
92 |
this._setHndl('step');
|
93 |
|
94 |
this.centSeparator = ( /^\s*$/.test( this.centSeparator )) ? '.' : $.trim( this.centSeparator );
|
95 |
-
this.thousandSeparator = $.trim( this.thousandSeparator );
|
96 |
},
|
97 |
show:function()
|
98 |
{
|
29 |
counter = 0,
|
30 |
str = '';
|
31 |
|
32 |
+
for( var i = parts[0].length-1; i >= 0; i--)
|
33 |
{
|
34 |
+
counter++;
|
35 |
+
str = parts[0][i] + str;
|
36 |
+
if( counter%3 == 0 && i != 0 ) str = this.thousandSeparator + str;
|
|
|
|
|
37 |
|
|
|
|
|
38 |
}
|
39 |
+
parts[0] = str;
|
40 |
+
|
41 |
if( typeof parts[ 1 ] != 'undefined' && parts[ 1 ].length == 1 )
|
42 |
{
|
43 |
parts[ 1 ] += '0';
|
90 |
this._setHndl('step');
|
91 |
|
92 |
this.centSeparator = ( /^\s*$/.test( this.centSeparator )) ? '.' : $.trim( this.centSeparator );
|
|
|
93 |
},
|
94 |
show:function()
|
95 |
{
|
js/fields-public/04_fbuilder.fdate.js
CHANGED
@@ -199,16 +199,9 @@
|
|
199 |
str = $( '#'+me.name+'_date' ).val();
|
200 |
if( me.showTimepicker )
|
201 |
{
|
202 |
-
|
203 |
-
str += ' ';
|
204 |
-
if( me.tformat == 12 )
|
205 |
-
{
|
206 |
-
h = (h==12) ? 0 : h;
|
207 |
-
if( $( '#'+me.name+'_ampm' ).val() == 'pm' ) str += ( h + 12 );
|
208 |
-
else str += h;
|
209 |
-
}
|
210 |
-
else str += h;
|
211 |
str += ':'+$( '#'+me.name+'_minutes' ).val();
|
|
|
212 |
}
|
213 |
$( '#'+me.name ).val( str ).change();
|
214 |
},
|
@@ -261,28 +254,31 @@
|
|
261 |
|
262 |
if( me.showTimepicker )
|
263 |
{
|
264 |
-
var parts, time = {}, tmp = 0;
|
265 |
-
if(
|
266 |
{
|
267 |
-
time[ 'hour' ] = parts[ 1 ];
|
268 |
time[ 'minute' ] = parts[ 2 ];
|
269 |
}
|
270 |
else
|
271 |
{
|
272 |
var d = new Date();
|
273 |
-
time[ 'hour' ] =
|
274 |
time[ 'minute' ] = d.getMinutes();
|
275 |
-
if(time[ 'hour' ] == me.minHour) time[ 'minute' ] = Math.max(time['minute'],me.minMinute);
|
276 |
-
if(time[ 'hour' ] == me.maxHour) time[ 'minute' ] = Math.min(time['minute'],me.maxMinute);
|
277 |
}
|
278 |
|
|
|
|
|
|
|
|
|
279 |
_setValue(
|
280 |
me.name+'_hours',
|
281 |
( me.tformat == 12 ) ? ( ( time[ 'hour' ] > 12 ) ? time[ 'hour' ] - 12 : ( ( time[ 'hour' ] == 0 ) ? 12 : time[ 'hour' ] ) ) : time[ 'hour' ],
|
282 |
( me.tformat == 12 ) ? 12 : me.maxHour
|
283 |
);
|
284 |
|
285 |
-
_setValue( me.name+'_minutes', time[ 'minute' ], me.maxMinute );
|
|
|
286 |
$( '#'+me.name+'_ampm'+' [value="' + ( ( time[ 'hour' ] < 12 ) ? 'am' : 'pm' ) + '"]' ).prop( 'selected', true );
|
287 |
}
|
288 |
},
|
@@ -294,7 +290,7 @@
|
|
294 |
format_label = [],
|
295 |
date_tag_type = 'text',
|
296 |
disabled = '',
|
297 |
-
date_tag_class = 'field date'+me.dformat.replace(/[^a-z]/ig,"")+' '+me.size+((me.required)?' required': '');
|
298 |
|
299 |
if( me.predefinedClick ) attr = 'placeholder';
|
300 |
if( me.showDatepicker ) format_label.push(me.dformat);
|
@@ -366,7 +362,7 @@
|
|
366 |
rt = '(\\d{1,2})[\\/\\-\\.](\\d{1,2})[\\/\\-\\.](\\d{4})';
|
367 |
|
368 |
v = $.trim(e.val());
|
369 |
-
var re = new RegExp( rt+'(\\s(\\d{1,2})[:\\.](\\d{1,2}))?' ),
|
370 |
d = re.exec( v ),
|
371 |
h = 0,
|
372 |
m = 0,
|
@@ -374,9 +370,14 @@
|
|
374 |
|
375 |
if( d )
|
376 |
{
|
377 |
-
if( typeof d[ 5 ] != 'undefined' ) h = d[ 5 ];
|
378 |
-
if( typeof d[ 6 ] != 'undefined' ) m = d[ 6 ];
|
379 |
-
|
|
|
|
|
|
|
|
|
|
|
380 |
switch( dformat )
|
381 |
{
|
382 |
case 'yyyy/dd/mm':
|
@@ -392,7 +393,6 @@
|
|
392 |
date = new Date( d[ 3 ], ( d[ 1 ] * 1 - 1 ), d[ 2 ], h, m, 0, 0 );
|
393 |
break;
|
394 |
}
|
395 |
-
|
396 |
if( me.showTimepicker ) return date.valueOf() / 86400000;
|
397 |
else return Math.ceil( date.valueOf() / 86400000 );
|
398 |
}
|
@@ -406,12 +406,19 @@
|
|
406 |
v = $.trim(v)
|
407 |
.replace( /\s+/g, ' ' )
|
408 |
.split( ' ' );
|
409 |
-
this.
|
410 |
-
|
411 |
-
|
|
|
|
|
|
|
412 |
{
|
413 |
-
this.
|
414 |
-
|
|
|
|
|
|
|
|
|
415 |
}
|
416 |
this.set_dateTime();
|
417 |
}
|
199 |
str = $( '#'+me.name+'_date' ).val();
|
200 |
if( me.showTimepicker )
|
201 |
{
|
202 |
+
str += ' '+$( '#'+me.name+'_hours' ).val();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
203 |
str += ':'+$( '#'+me.name+'_minutes' ).val();
|
204 |
+
if( $( '#'+me.name+'_ampm' ).length ) str += $( '#'+me.name+'_ampm' ).val();
|
205 |
}
|
206 |
$( '#'+me.name ).val( str ).change();
|
207 |
},
|
254 |
|
255 |
if( me.showTimepicker )
|
256 |
{
|
257 |
+
var parts, time = {}, tmp = 0, max_minutes = 59;
|
258 |
+
if( ( parts = /(\d{1,2}):(\d{1,2})\s*([ap]m)?/gi.exec( me.defaultTime ) ) != null )
|
259 |
{
|
260 |
+
time[ 'hour' ] = parts[ 1 ]*1+((parts.length == 4 && /pm/i.test(parts[3]) && parts[1] != 12) ? 12 : 0);
|
261 |
time[ 'minute' ] = parts[ 2 ];
|
262 |
}
|
263 |
else
|
264 |
{
|
265 |
var d = new Date();
|
266 |
+
time[ 'hour' ] = d.getHours();
|
267 |
time[ 'minute' ] = d.getMinutes();
|
|
|
|
|
268 |
}
|
269 |
|
270 |
+
time[ 'hour' ] = Math.min(Math.max(time[ 'hour' ], me.minHour), me.maxHour);
|
271 |
+
if(time[ 'hour' ] <= me.minHour) time[ 'minute' ] = Math.max(time['minute'],me.minMinute);
|
272 |
+
if(me.maxHour <= time[ 'hour' ]) time[ 'minute' ] = Math.min(time['minute'],me.maxMinute);
|
273 |
+
|
274 |
_setValue(
|
275 |
me.name+'_hours',
|
276 |
( me.tformat == 12 ) ? ( ( time[ 'hour' ] > 12 ) ? time[ 'hour' ] - 12 : ( ( time[ 'hour' ] == 0 ) ? 12 : time[ 'hour' ] ) ) : time[ 'hour' ],
|
277 |
( me.tformat == 12 ) ? 12 : me.maxHour
|
278 |
);
|
279 |
|
280 |
+
_setValue( me.name+'_minutes', time[ 'minute' ], (time[ 'hour' ] == me.maxHour) ? me.maxMinute : 59);
|
281 |
+
|
282 |
$( '#'+me.name+'_ampm'+' [value="' + ( ( time[ 'hour' ] < 12 ) ? 'am' : 'pm' ) + '"]' ).prop( 'selected', true );
|
283 |
}
|
284 |
},
|
290 |
format_label = [],
|
291 |
date_tag_type = 'text',
|
292 |
disabled = '',
|
293 |
+
date_tag_class = 'field date'+me.dformat.replace(/[^a-z]/ig,"")+' '+me.size+((me.required && me.showDatepicker)?' required': '');
|
294 |
|
295 |
if( me.predefinedClick ) attr = 'placeholder';
|
296 |
if( me.showDatepicker ) format_label.push(me.dformat);
|
362 |
rt = '(\\d{1,2})[\\/\\-\\.](\\d{1,2})[\\/\\-\\.](\\d{4})';
|
363 |
|
364 |
v = $.trim(e.val());
|
365 |
+
var re = new RegExp( rt+'(\\s(\\d{1,2})[:\\.](\\d{1,2})\s*([amp]{2})?)?' ),
|
366 |
d = re.exec( v ),
|
367 |
h = 0,
|
368 |
m = 0,
|
370 |
|
371 |
if( d )
|
372 |
{
|
373 |
+
if( typeof d[ 5 ] != 'undefined' ) h = d[ 5 ]*1;
|
374 |
+
if( typeof d[ 6 ] != 'undefined' ) m = d[ 6 ]*1;
|
375 |
+
if( typeof d[ 7 ] != 'undefined' )
|
376 |
+
{
|
377 |
+
var am = d[ 7 ].toLowerCase();
|
378 |
+
if(am == 'pm' && h < 12 ) h += 12;
|
379 |
+
if(am == 'am' && h == 12) h -= 12;
|
380 |
+
}
|
381 |
switch( dformat )
|
382 |
{
|
383 |
case 'yyyy/dd/mm':
|
393 |
date = new Date( d[ 3 ], ( d[ 1 ] * 1 - 1 ), d[ 2 ], h, m, 0, 0 );
|
394 |
break;
|
395 |
}
|
|
|
396 |
if( me.showTimepicker ) return date.valueOf() / 86400000;
|
397 |
else return Math.ceil( date.valueOf() / 86400000 );
|
398 |
}
|
406 |
v = $.trim(v)
|
407 |
.replace( /\s+/g, ' ' )
|
408 |
.split( ' ' );
|
409 |
+
if(this.showDatepicker)
|
410 |
+
{
|
411 |
+
this.defaultDate = v[ 0 ];
|
412 |
+
this.set_DefaultDate();
|
413 |
+
}
|
414 |
+
if(this.showTimepicker)
|
415 |
{
|
416 |
+
var t = (v.length == 2) ? v[1] : ((!this.showDatepicker) ? v[0] : false);
|
417 |
+
if(t !== false)
|
418 |
+
{
|
419 |
+
this.defaultTime = t;
|
420 |
+
this.set_DefaultTime();
|
421 |
+
}
|
422 |
}
|
423 |
this.set_dateTime();
|
424 |
}
|
js/fields-public/09_fbuilder.ffile.js
CHANGED
@@ -13,16 +13,19 @@
|
|
13 |
preview: false,
|
14 |
thumb_width: '80px',
|
15 |
thumb_height: '',
|
|
|
16 |
init: function(){
|
17 |
this.thumb_width = $.trim(this.thumb_width);
|
18 |
this.thumb_height = $.trim(this.thumb_height);
|
|
|
|
|
19 |
},
|
20 |
show:function()
|
21 |
{
|
22 |
this.accept = $.fbuilder.htmlEncode($.trim(this.accept));
|
23 |
this.upload_size = $.fbuilder.htmlEncode($.trim(this.upload_size));
|
24 |
|
25 |
-
return '<div class="fields '+this.csslayout+' '+this.name+' cff-file-field" id="field'+this.form_identifier+'-'+this.index+'"><label for="'+this.name+'">'+this.title+''+((this.required)?"<span class='r'>*</span>":"")+'</label><div class="dfield"><input type="file" id="'+this.name+'" name="'+this.name+'[]"'+((this.accept.length) ? ' accept="'+this.accept+'"' : '')+((this.upload_size.length) ? ' upload_size="'+this.upload_size+'"' : '')+' class="field '+this.size+((this.required)?" required":"")+'" '+( ( this.multiple ) ? 'multiple' : '' )+'
|
26 |
},
|
27 |
after_show:function()
|
28 |
{
|
@@ -56,6 +59,7 @@
|
|
56 |
$( '#'+me.name ).change( function(){
|
57 |
var h = this.files.length, n = 0;
|
58 |
$( this ).siblings( 'span.files-list' ).remove();
|
|
|
59 |
if(1 <= h)
|
60 |
{
|
61 |
var filesContainer = $('<span class="files-list"></span>');
|
@@ -83,16 +87,4 @@
|
|
83 |
});
|
84 |
}
|
85 |
}
|
86 |
-
);
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
13 |
preview: false,
|
14 |
thumb_width: '80px',
|
15 |
thumb_height: '',
|
16 |
+
_patch: false, // Used only if the submission is being updated to preserves the previous values
|
17 |
init: function(){
|
18 |
this.thumb_width = $.trim(this.thumb_width);
|
19 |
this.thumb_height = $.trim(this.thumb_height);
|
20 |
+
var form_identifier = this.form_identifier.replace(/[^\d]/g, '');
|
21 |
+
this._patch = ('cpcff_default' in window && form_identifier in cpcff_default) ? true : false;
|
22 |
},
|
23 |
show:function()
|
24 |
{
|
25 |
this.accept = $.fbuilder.htmlEncode($.trim(this.accept));
|
26 |
this.upload_size = $.fbuilder.htmlEncode($.trim(this.upload_size));
|
27 |
|
28 |
+
return '<div class="fields '+this.csslayout+' '+this.name+' cff-file-field" id="field'+this.form_identifier+'-'+this.index+'"><label for="'+this.name+'">'+this.title+''+((this.required)?"<span class='r'>*</span>":"")+'</label><div class="dfield"><input type="file" id="'+this.name+'" name="'+this.name+'[]"'+((this.accept.length) ? ' accept="'+this.accept+'"' : '')+((this.upload_size.length) ? ' upload_size="'+this.upload_size+'"' : '')+' class="field '+this.size+((this.required)?" required":"")+'" '+( ( this.multiple ) ? 'multiple' : '' )+' />'+((this._patch) ? '<input type="hidden" id="'+this.name+'_patch" name="'+this.name+'_patch" value="1" />' : '' )+'<span class="uh">'+this.userhelp+'</span></div><div class="clearer"></div></div>';
|
29 |
},
|
30 |
after_show:function()
|
31 |
{
|
59 |
$( '#'+me.name ).change( function(){
|
60 |
var h = this.files.length, n = 0;
|
61 |
$( this ).siblings( 'span.files-list' ).remove();
|
62 |
+
$('[id="'+me.name+'_patch"]').remove();
|
63 |
if(1 <= h)
|
64 |
{
|
65 |
var filesContainer = $('<span class="files-list"></span>');
|
87 |
});
|
88 |
}
|
89 |
}
|
90 |
+
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/fields-public/fbuilder.fcalculated.js
CHANGED
@@ -580,8 +580,14 @@
|
|
580 |
$(document).bind( 'showHideDepEvent', function( evt, form_identifier )
|
581 |
{
|
582 |
// If evalequations = 0 the equations shouldn't be evaluated dynamically
|
583 |
-
|
584 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
585 |
});
|
586 |
return obj; // Return the public object
|
587 |
}
|
580 |
$(document).bind( 'showHideDepEvent', function( evt, form_identifier )
|
581 |
{
|
582 |
// If evalequations = 0 the equations shouldn't be evaluated dynamically
|
583 |
+
var f, evalequations;
|
584 |
+
if(form_identifier) f = $('#'+form_identifier);
|
585 |
+
else f = $('[id*="cp_calculatedfieldsf_pform_"]:eq(0)');
|
586 |
+
if(f.length)
|
587 |
+
{
|
588 |
+
evalequations = f.data( 'evalequations' );
|
589 |
+
if( typeof evalequations == 'undefined' || evalequations*1 == 1 ) obj.defaultCalc( '#'+f.attr('id') );
|
590 |
+
}
|
591 |
});
|
592 |
return obj; // Return the public object
|
593 |
}
|
js/modules/06_connector/public/01_connector.js
CHANGED
@@ -17,7 +17,7 @@
|
|
17 |
lib.cff_connector_version = '0.1';
|
18 |
|
19 |
// cffProxy( function ) The function should accept a callback
|
20 |
-
lib.cffProxy = function(){
|
21 |
if(typeof fbuilderjQuery == 'undefined' || !arguments.length || typeof arguments[0] != 'function') return;
|
22 |
|
23 |
var $ = fbuilderjQuery,
|
17 |
lib.cff_connector_version = '0.1';
|
18 |
|
19 |
// cffProxy( function ) The function should accept a callback
|
20 |
+
lib.cffProxy = lib.cffproxy = lib.CFFPROXY = function(){
|
21 |
if(typeof fbuilderjQuery == 'undefined' || !arguments.length || typeof arguments[0] != 'function') return;
|
22 |
|
23 |
var $ = fbuilderjQuery,
|
pagebuilders/beaverbuilder/{cff.inc.php → cff/cff.inc.php}
RENAMED
@@ -1,5 +1,5 @@
|
|
1 |
<?php
|
2 |
-
require_once CP_CALCULATEDFIELDSF_BASE_PATH.'/pagebuilders/beaverbuilder/cff/
|
3 |
|
4 |
// Get the forms list
|
5 |
global $wpdb;
|
@@ -26,7 +26,7 @@ FLBuilder::register_module(
|
|
26 |
'type' => 'select',
|
27 |
'label' => __('Select form', 'calculated-fields-form'),
|
28 |
'options' => $options,
|
29 |
-
'default' => $default
|
30 |
),
|
31 |
'class_name' => array(
|
32 |
'type' => 'text',
|
@@ -41,4 +41,4 @@ FLBuilder::register_module(
|
|
41 |
)
|
42 |
)
|
43 |
)
|
44 |
-
);
|
1 |
<?php
|
2 |
+
require_once CP_CALCULATEDFIELDSF_BASE_PATH.'/pagebuilders/beaverbuilder/cff/cff/cff.php';
|
3 |
|
4 |
// Get the forms list
|
5 |
global $wpdb;
|
26 |
'type' => 'select',
|
27 |
'label' => __('Select form', 'calculated-fields-form'),
|
28 |
'options' => $options,
|
29 |
+
'default' => $default,
|
30 |
),
|
31 |
'class_name' => array(
|
32 |
'type' => 'text',
|
41 |
)
|
42 |
)
|
43 |
)
|
44 |
+
);
|
pagebuilders/beaverbuilder/cff/{beaver.pb.php → cff/cff.php}
RENAMED
@@ -12,7 +12,9 @@ class CFFBeaver extends FLBuilderModule {
|
|
12 |
'category' => __( 'Calculated Fields Form', 'calculated-fields-form' ),
|
13 |
'dir' => $modules_dir,
|
14 |
'url' => $modules_url,
|
15 |
-
'partial_refresh' => true
|
16 |
));
|
|
|
|
|
17 |
}
|
18 |
-
}
|
12 |
'category' => __( 'Calculated Fields Form', 'calculated-fields-form' ),
|
13 |
'dir' => $modules_dir,
|
14 |
'url' => $modules_url,
|
15 |
+
'partial_refresh' => true
|
16 |
));
|
17 |
+
|
18 |
+
$this->add_js('cff-beaver-form', $this->url . 'js/settings.js', array('jquery'));
|
19 |
}
|
20 |
+
}
|
pagebuilders/beaverbuilder/cff/{includes → cff/includes}/frontend.php
RENAMED
@@ -1,13 +1,13 @@
|
|
1 |
<?php
|
2 |
-
$form = $settings->form_id;
|
3 |
if(!empty($form))
|
4 |
{
|
5 |
$output = '[CP_CALCULATED_FIELDS id="'.$form.'"';
|
6 |
|
7 |
-
$class_name = $settings->class_name;
|
8 |
if(!empty($class_name)) $output .= ' class="'.esc_attr($class_name).'"';
|
9 |
|
10 |
-
$attributes = $settings->attributes;
|
11 |
if(!empty($attributes)) $output .= ' '.$attributes;
|
12 |
|
13 |
$output .= ']';
|
1 |
<?php
|
2 |
+
$form = @intval($settings->form_id);
|
3 |
if(!empty($form))
|
4 |
{
|
5 |
$output = '[CP_CALCULATED_FIELDS id="'.$form.'"';
|
6 |
|
7 |
+
$class_name = sanitize_text_field($settings->class_name);
|
8 |
if(!empty($class_name)) $output .= ' class="'.esc_attr($class_name).'"';
|
9 |
|
10 |
+
$attributes = sanitize_text_field($settings->attributes);
|
11 |
if(!empty($attributes)) $output .= ' '.$attributes;
|
12 |
|
13 |
$output .= ']';
|
pagebuilders/beaverbuilder/cff/cff/js/settings.js
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function($){
|
2 |
+
function cffCallback(evt)
|
3 |
+
{
|
4 |
+
if('fbuilderjQuery' in window)
|
5 |
+
{
|
6 |
+
delete fbuilderjQuery.fbuilderGeneratorFlag;
|
7 |
+
fbuilderjQuery.fbuilderjQueryGenerator();
|
8 |
+
}
|
9 |
+
};
|
10 |
+
$( '.fl-builder-content' ).on( 'fl-builder.preview-rendered', cffCallback );
|
11 |
+
$( '.fl-builder-content' ).on( 'fl-builder.layout-rendered', cffCallback );
|
12 |
+
|
13 |
+
})(jQuery)
|
pagebuilders/beaverbuilder/cffvar/cffvar.inc.php
ADDED
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
require_once CP_CALCULATEDFIELDSF_BASE_PATH.'/pagebuilders/beaverbuilder/cffvar/cffvar/cffvar.php';
|
3 |
+
|
4 |
+
FLBuilder::register_module(
|
5 |
+
'CFFVarBeaver',
|
6 |
+
array(
|
7 |
+
'cff-var-tab' => array(
|
8 |
+
'title' => __('Generate variable', 'calculated-fields-form'),
|
9 |
+
'sections' => array(
|
10 |
+
'cff-var-section' => array(
|
11 |
+
'title' => __('Variable attributes', 'calculated-fields-form'),
|
12 |
+
'fields' => array(
|
13 |
+
'var_name' => array(
|
14 |
+
'type' => 'text',
|
15 |
+
'label' => __('Enter the variable name', 'calculated-fields-form'),
|
16 |
+
'required' => true,
|
17 |
+
),
|
18 |
+
'default_value' => array(
|
19 |
+
'type' => 'text',
|
20 |
+
'label' => __('Enter the default value', 'calculated-fields-form')
|
21 |
+
),
|
22 |
+
'from' => array(
|
23 |
+
'type' => 'select',
|
24 |
+
'label' => __('Generate variable from', 'calculated-fields-form'),
|
25 |
+
'options' => array(
|
26 |
+
'directly' => __('Directly', 'calculated-fields-form'),
|
27 |
+
'get' => __('GET parameters', 'calculated-fields-form'),
|
28 |
+
'post' => __('POST parameters', 'calculated-fields-form'),
|
29 |
+
'session' => __('SESSION variables', 'calculated-fields-form'),
|
30 |
+
'cookies' => __('COOKIES variables', 'calculated-fields-form'),
|
31 |
+
)
|
32 |
+
),
|
33 |
+
)
|
34 |
+
)
|
35 |
+
)
|
36 |
+
)
|
37 |
+
)
|
38 |
+
);
|
pagebuilders/beaverbuilder/cffvar/cffvar/cffvar.php
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class CFFVarBeaver extends FLBuilderModule {
|
3 |
+
public function __construct()
|
4 |
+
{
|
5 |
+
$modules_dir = dirname(__FILE__).'/';
|
6 |
+
$modules_url = plugins_url( '/', __FILE__ ).'/';
|
7 |
+
|
8 |
+
parent::__construct(array(
|
9 |
+
'name' => __( 'Create variable', 'calculated-fields-form' ),
|
10 |
+
'description' => __( 'Create javascript variable', 'fl-builder' ),
|
11 |
+
'group' => __( 'Calculated Fields Form', 'calculated-fields-form' ),
|
12 |
+
'category' => __( 'Calculated Fields Form', 'calculated-fields-form' ),
|
13 |
+
'dir' => $modules_dir,
|
14 |
+
'url' => $modules_url,
|
15 |
+
'partial_refresh' => true,
|
16 |
+
));
|
17 |
+
|
18 |
+
$this->add_css('cff-var', $this->url . 'css/cffvar.css');
|
19 |
+
}
|
20 |
+
}
|
pagebuilders/beaverbuilder/cffvar/cffvar/css/cffvar.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
.fl-builder-edit .fl-module.fl-module-cffvar{border:1px dashed #DDD;}
|
pagebuilders/beaverbuilder/cffvar/cffvar/includes/frontend.php
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
$var_name = sanitize_text_field($settings->var_name);
|
3 |
+
$default_value = sanitize_text_field($settings->default_value);
|
4 |
+
$from = sanitize_text_field($settings->from);
|
5 |
+
|
6 |
+
if(!empty($var_name))
|
7 |
+
{
|
8 |
+
$output = '[CP_CALCULATED_FIELDS_VAR name="'.esc_attr($var_name).'"';
|
9 |
+
|
10 |
+
if(!empty($from) && $from !== 'directly')
|
11 |
+
$output .= ' from="'.esc_attr($from).'" default_value="'.esc_attr($default_value).'"';
|
12 |
+
elseif($from === 'directly')
|
13 |
+
$output .= ' value="'.esc_attr($default_value).'"';
|
14 |
+
|
15 |
+
$output .= ']';
|
16 |
+
echo $output;
|
17 |
+
}
|
pagebuilders/elementor/elementor.pb.php
CHANGED
@@ -81,9 +81,9 @@ class Elementor_CFF_Widget extends Widget_Base
|
|
81 |
private function _get_shortcode()
|
82 |
{
|
83 |
$settings = $this->get_settings_for_display();
|
84 |
-
$attrs =
|
85 |
if(!empty($attrs)) $attrs = ' '.$attrs;
|
86 |
-
return '[CP_CALCULATED_FIELDS id="'
|
87 |
} // End _get_shortcode
|
88 |
|
89 |
protected function render()
|
@@ -105,8 +105,8 @@ class Elementor_CFF_Widget extends Widget_Base
|
|
105 |
{
|
106 |
if(is_numeric($i)) continue;
|
107 |
if($i == 'id') $url .= '&cff-form';
|
108 |
-
else $url .= '&'.urlencode($i);
|
109 |
-
$url .= '='.urlencode($v);
|
110 |
}
|
111 |
|
112 |
?>
|
81 |
private function _get_shortcode()
|
82 |
{
|
83 |
$settings = $this->get_settings_for_display();
|
84 |
+
$attrs = sanitize_text_field($settings['attrs']);
|
85 |
if(!empty($attrs)) $attrs = ' '.$attrs;
|
86 |
+
return '[CP_CALCULATED_FIELDS id="'.@intval($settings['form']).'"'.$attrs.']';
|
87 |
} // End _get_shortcode
|
88 |
|
89 |
protected function render()
|
105 |
{
|
106 |
if(is_numeric($i)) continue;
|
107 |
if($i == 'id') $url .= '&cff-form';
|
108 |
+
else $url .= '&'.urlencode(sanitize_text_field($i));
|
109 |
+
$url .= '='.urlencode(sanitize_text_field($v));
|
110 |
}
|
111 |
|
112 |
?>
|
pagebuilders/siteorigin/siteorigin-cpcff-variable/tpl/siteorigin-cff-variable-shortcode.php
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
<?php
|
2 |
-
$name =
|
3 |
-
$from =
|
4 |
-
$default_value =
|
5 |
-
$value =
|
6 |
$shortcode = '';
|
7 |
if(!empty($name))
|
8 |
{
|
1 |
<?php
|
2 |
+
$name = sanitize_text_field($instance['name']);
|
3 |
+
$from = sanitize_text_field($instance['from']);
|
4 |
+
$default_value = sanitize_text_field($instance['default_value']);
|
5 |
+
$value = sanitize_text_field($instance['value']);
|
6 |
$shortcode = '';
|
7 |
if(!empty($name))
|
8 |
{
|
pagebuilders/siteorigin/siteorigin-cpcff/siteorigin-cpcff.php
CHANGED
@@ -16,7 +16,7 @@ class SiteOrigin_CFF_Shortcode extends SiteOrigin_Widget
|
|
16 |
foreach($forms as $form)
|
17 |
{
|
18 |
if(empty($default)) $default = $form->id;
|
19 |
-
$options[$form->id] = '('.$form->id.') '.$form->form_name;
|
20 |
}
|
21 |
|
22 |
parent::__construct(
|
16 |
foreach($forms as $form)
|
17 |
{
|
18 |
if(empty($default)) $default = $form->id;
|
19 |
+
$options[$form->id] = esc_html('('.$form->id.') '.$form->form_name);
|
20 |
}
|
21 |
|
22 |
parent::__construct(
|
pagebuilders/siteorigin/siteorigin-cpcff/tpl/siteorigin-cff-shortcode.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
$form = trim($instance['form']);
|
3 |
-
$class_name =
|
4 |
-
$attrs =
|
5 |
$shortcode = '';
|
6 |
if(@intval($form))
|
7 |
{
|
1 |
<?php
|
2 |
$form = trim($instance['form']);
|
3 |
+
$class_name = sanitize_text_field($instance['class_name']);
|
4 |
+
$attrs = sanitize_text_field($instance['attrs']);
|
5 |
$shortcode = '';
|
6 |
if(@intval($form))
|
7 |
{
|
pagebuilders/visualcomposer/CFFForm/CFFForm/public/cff-preview.png
ADDED
Binary file
|
pagebuilders/visualcomposer/CFFForm/CFFForm/public/cff-thumbnail.png
ADDED
Binary file
|
pagebuilders/visualcomposer/CFFForm/manifest.json
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"elements": {
|
3 |
+
"CFFForm": {
|
4 |
+
"settings": {
|
5 |
+
"name": "Calculated Fields Form",
|
6 |
+
"metaThumbnailUrl": "[publicPath]/cff-thumbnail.png",
|
7 |
+
"metaPreviewUrl": "[publicPath]/cff-preview.png",
|
8 |
+
"metaDescription": "Add a calculated fields form."
|
9 |
+
}
|
10 |
+
}
|
11 |
+
},
|
12 |
+
"categories": {
|
13 |
+
"Misc": {
|
14 |
+
"elements": [
|
15 |
+
"CFFForm"
|
16 |
+
]
|
17 |
+
}
|
18 |
+
}
|
19 |
+
}
|
pagebuilders/visualcomposer/CFFForm/public/dist/element.bundle.js
ADDED
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(window["vcvWebpackJsonp4x"] = window["vcvWebpackJsonp4x"] || []).push([["element"],{
|
2 |
+
|
3 |
+
/***/ "./CFFForm/component.js":
|
4 |
+
/*!******************************!*\
|
5 |
+
!*** ./CFFForm/component.js ***!
|
6 |
+
\******************************/
|
7 |
+
/*! no static exports found */
|
8 |
+
/***/ (function(module, exports, __webpack_require__) {
|
9 |
+
|
10 |
+
"use strict";
|
11 |
+
eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ \"./node_modules/babel-runtime/helpers/extends.js\");\n\nvar _extends3 = _interopRequireDefault(_extends2);\n\nvar _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ \"./node_modules/babel-runtime/core-js/object/get-prototype-of.js\");\n\nvar _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);\n\nvar _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ \"./node_modules/babel-runtime/helpers/classCallCheck.js\");\n\nvar _classCallCheck3 = _interopRequireDefault(_classCallCheck2);\n\nvar _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ \"./node_modules/babel-runtime/helpers/createClass.js\");\n\nvar _createClass3 = _interopRequireDefault(_createClass2);\n\nvar _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ \"./node_modules/babel-runtime/helpers/possibleConstructorReturn.js\");\n\nvar _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);\n\nvar _get2 = __webpack_require__(/*! babel-runtime/helpers/get */ \"./node_modules/babel-runtime/helpers/get.js\");\n\nvar _get3 = _interopRequireDefault(_get2);\n\nvar _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ \"./node_modules/babel-runtime/helpers/inherits.js\");\n\nvar _inherits3 = _interopRequireDefault(_inherits2);\n\nvar _react = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _vcCake = __webpack_require__(/*! vc-cake */ \"./node_modules/vc-cake/index.js\");\n\nvar _vcCake2 = _interopRequireDefault(_vcCake);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar vcvAPI = _vcCake2.default.getService('api');\n\nvar CFFFormElement = function (_vcvAPI$elementCompon) {\n\t(0, _inherits3.default)(CFFFormElement, _vcvAPI$elementCompon);\n\n\tfunction CFFFormElement() {\n\t\t(0, _classCallCheck3.default)(this, CFFFormElement);\n\t\treturn (0, _possibleConstructorReturn3.default)(this, (CFFFormElement.__proto__ || (0, _getPrototypeOf2.default)(CFFFormElement)).apply(this, arguments));\n\t}\n\n\t(0, _createClass3.default)(CFFFormElement, [{\n\t\tkey: 'sanitize',\n\t\tvalue: function sanitize(str, args) {\n\t\t\tif (typeof args == 'undefined') args = {};\n\t\t\tif (!('quotes' in args)) args['quotes'] = false;\n\t\t\tif (!('spaces' in args)) args['spaces'] = false;\n\n\t\t\tstr = str.replace(/[^a-zA-Z0-9\\.\\-_\\s\"']/g, '');\n\t\t\tif (!args.quotes) str = str.replace(/'\"/g, '');\n\t\t\tif (!args.spaces) str = str.replace(/\\s/g, '');\n\n\t\t\treturn str;\n\t\t}\n\t}, {\n\t\tkey: 'getTheShortcode',\n\t\tvalue: function getTheShortcode(atts) {\n\t\t\t// Generates the form's shortcode\n\t\t\tvar _atts$fId = atts.fId,\n\t\t\t fId = _atts$fId === undefined ? \"\" : _atts$fId,\n\t\t\t _atts$clssName = atts.clssName,\n\t\t\t clssName = _atts$clssName === undefined ? \"\" : _atts$clssName,\n\t\t\t _atts$attrs = atts.attrs,\n\t\t\t attrs = _atts$attrs === undefined ? \"\" : _atts$attrs;\n\n\t\t\tif (fId == '') return '';\n\t\t\tvar shortcode = '[CP_CALCULATED_FIELDS id=\"' + this.sanitize(fId) + '\"';\n\t\t\tif (clssName != '') shortcode += ' class=\"' + this.sanitize(clssName, { spaces: true }) + '\"';\n\t\t\tif (attrs != '') shortcode += ' ' + this.sanitize(attrs, { quotes: true, spaces: true });\n\t\t\tshortcode += ']';\n\n\t\t\treturn shortcode;\n\t\t}\n\t}, {\n\t\tkey: 'addFormGeneratorForVSEditor',\n\t\tvalue: function addFormGeneratorForVSEditor(base) {\n\t\t\treturn base != '' ? base + '<script>delete fbuilderjQuery.fbuilderGeneratorFlag; if(\"fbuilderjQuery\" in window && \"fbuilderjQueryGenerator\" in fbuilderjQuery) fbuilderjQuery.fbuilderjQueryGenerator();</script>' : base;\n\t\t}\n\t}, {\n\t\tkey: 'componentDidMount',\n\t\tvalue: function componentDidMount() {\n\n\t\t\tvar shortcode = this.addFormGeneratorForVSEditor(this.getTheShortcode(this.props.atts));\n\t\t\t(0, _get3.default)(CFFFormElement.prototype.__proto__ || (0, _getPrototypeOf2.default)(CFFFormElement.prototype), 'updateShortcodeToHtml', this).call(this, shortcode, this.refs.vcvhelper);\n\t\t\tif (!window.wp || !window.wp.shortcode || !window.VCV_API_WPBAKERY_WPB_MAP) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.multipleShortcodesRegex = window.wp.shortcode.regexp(window.VCV_API_WPBAKERY_WPB_MAP().join('|'));\n\t\t\tthis.localShortcodesRegex = new RegExp(this.multipleShortcodesRegex.source);\n\t\t}\n\t}, {\n\t\tkey: 'componentDidUpdate',\n\t\tvalue: function componentDidUpdate(props) {\n\n\t\t\tvar shortcode = this.addFormGeneratorForVSEditor(this.getTheShortcode(this.props.atts));\n\t\t\tvar shortcodeCmp = this.getTheShortcode(props.atts);\n\t\t\t// update only if shortcode changed\n\t\t\tif (shortcode !== shortcodeCmp) {\n\t\t\t\t(0, _get3.default)(CFFFormElement.prototype.__proto__ || (0, _getPrototypeOf2.default)(CFFFormElement.prototype), 'updateShortcodeToHtml', this).call(this, shortcode, this.refs.vcvhelper);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'render',\n\t\tvalue: function render() {\n\t\t\tvar _props = this.props,\n\t\t\t id = _props.id,\n\t\t\t atts = _props.atts,\n\t\t\t editor = _props.editor;\n\n\n\t\t\tvar shortcode = this.getTheShortcode(atts);\n\t\t\tvar elementClasses = 'vce-cff-form';\n\t\t\tvar wrapperClasses = 'vce-cff-form-wrapper vce';\n\t\t\tvar customProps = {};\n\n\t\t\tvar doAll = this.applyDO('all');\n\n\t\t\treturn _react2.default.createElement(\n\t\t\t\t'div',\n\t\t\t\t(0, _extends3.default)({ className: elementClasses }, editor, customProps),\n\t\t\t\t_react2.default.createElement(\n\t\t\t\t\t'div',\n\t\t\t\t\t(0, _extends3.default)({ className: wrapperClasses, id: 'el-' + id }, doAll),\n\t\t\t\t\t_react2.default.createElement('style', { className: 'vcvhelper', ref: 'style' }),\n\t\t\t\t\t_react2.default.createElement('div', { className: 'vcvhelper', ref: 'vcvhelper', 'data-vcvs-html': shortcode })\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t}]);\n\treturn CFFFormElement;\n}(vcvAPI.elementComponent);\n\nexports.default = CFFFormElement;\n\n//# sourceURL=webpack:///./CFFForm/component.js?");
|
12 |
+
|
13 |
+
/***/ }),
|
14 |
+
|
15 |
+
/***/ "./CFFForm/index.js":
|
16 |
+
/*!**************************!*\
|
17 |
+
!*** ./CFFForm/index.js ***!
|
18 |
+
\**************************/
|
19 |
+
/*! no static exports found */
|
20 |
+
/***/ (function(module, exports, __webpack_require__) {
|
21 |
+
|
22 |
+
"use strict";
|
23 |
+
eval("\n\nvar _vcCake = __webpack_require__(/*! vc-cake */ \"./node_modules/vc-cake/index.js\");\n\nvar _vcCake2 = _interopRequireDefault(_vcCake);\n\nvar _component = __webpack_require__(/*! ./component */ \"./CFFForm/component.js\");\n\nvar _component2 = _interopRequireDefault(_component);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar vcvAddElement = _vcCake2.default.getService('cook').add;\n\nvcvAddElement(__webpack_require__(/*! ./settings.json */ \"./CFFForm/settings.json\"),\n// Component callback\nfunction (component) {\n component.add(_component2.default);\n}, {\n css: false,\n editorCss: __webpack_require__(/*! raw-loader!./editor.css */ \"./node_modules/raw-loader/index.js!./CFFForm/editor.css\")\n});\n\n//# sourceURL=webpack:///./CFFForm/index.js?");
|
24 |
+
|
25 |
+
/***/ }),
|
26 |
+
|
27 |
+
/***/ "./CFFForm/settings.json":
|
28 |
+
/*!*******************************!*\
|
29 |
+
!*** ./CFFForm/settings.json ***!
|
30 |
+
\*******************************/
|
31 |
+
/*! exports provided: fId, clssName, attrs, designOptions, editFormTab1, metaEditFormTabs, relatedTo, tag, default */
|
32 |
+
/***/ (function(module) {
|
33 |
+
|
34 |
+
eval("module.exports = {\"fId\":{\"type\":\"number\",\"access\":\"public\",\"options\":{\"label\":\"Enter the form id (Required)\",\"description\":\"Enter the integer number representing the form's id to insert.\"}},\"clssName\":{\"type\":\"string\",\"access\":\"public\",\"options\":{\"label\":\"Class name (Optional)\",\"description\":\"Enter the custom class names to apply the form (separated by space)\"}},\"attrs\":{\"type\":\"string\",\"access\":\"public\",\"options\":{\"label\":\"Additional attributes (Optional)\",\"description\":\"Enter the additional parameters to include in the form's shortcode. Ex. attr_1=\\\"value1\\\" attr_2=\\\"value2\\\"\"}},\"designOptions\":{\"type\":\"designOptions\",\"access\":\"public\",\"value\":{},\"options\":{\"label\":\"Design Options\"}},\"editFormTab1\":{\"type\":\"group\",\"access\":\"protected\",\"value\":[\"fId\",\"clssName\",\"attrs\"],\"options\":{\"label\":\"General\"}},\"metaEditFormTabs\":{\"type\":\"group\",\"access\":\"protected\",\"value\":[\"editFormTab1\",\"designOptions\"]},\"relatedTo\":{\"type\":\"group\",\"access\":\"protected\",\"value\":[\"General\"]},\"tag\":{\"access\":\"protected\",\"type\":\"string\",\"value\":\"CFFForm\"}};\n\n//# sourceURL=webpack:///./CFFForm/settings.json?");
|
35 |
+
|
36 |
+
/***/ }),
|
37 |
+
|
38 |
+
/***/ "./node_modules/babel-runtime/core-js/object/get-own-property-descriptor.js":
|
39 |
+
/*!**********************************************************************************!*\
|
40 |
+
!*** ./node_modules/babel-runtime/core-js/object/get-own-property-descriptor.js ***!
|
41 |
+
\**********************************************************************************/
|
42 |
+
/*! no static exports found */
|
43 |
+
/***/ (function(module, exports, __webpack_require__) {
|
44 |
+
|
45 |
+
eval("module.exports = { \"default\": __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ \"./node_modules/core-js/library/fn/object/get-own-property-descriptor.js\"), __esModule: true };\n\n//# sourceURL=webpack:///./node_modules/babel-runtime/core-js/object/get-own-property-descriptor.js?");
|
46 |
+
|
47 |
+
/***/ }),
|
48 |
+
|
49 |
+
/***/ "./node_modules/babel-runtime/helpers/get.js":
|
50 |
+
/*!***************************************************!*\
|
51 |
+
!*** ./node_modules/babel-runtime/helpers/get.js ***!
|
52 |
+
\***************************************************/
|
53 |
+
/*! no static exports found */
|
54 |
+
/***/ (function(module, exports, __webpack_require__) {
|
55 |
+
|
56 |
+
"use strict";
|
57 |
+
eval("\n\nexports.__esModule = true;\n\nvar _getPrototypeOf = __webpack_require__(/*! ../core-js/object/get-prototype-of */ \"./node_modules/babel-runtime/core-js/object/get-prototype-of.js\");\n\nvar _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);\n\nvar _getOwnPropertyDescriptor = __webpack_require__(/*! ../core-js/object/get-own-property-descriptor */ \"./node_modules/babel-runtime/core-js/object/get-own-property-descriptor.js\");\n\nvar _getOwnPropertyDescriptor2 = _interopRequireDefault(_getOwnPropertyDescriptor);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function get(object, property, receiver) {\n if (object === null) object = Function.prototype;\n var desc = (0, _getOwnPropertyDescriptor2.default)(object, property);\n\n if (desc === undefined) {\n var parent = (0, _getPrototypeOf2.default)(object);\n\n if (parent === null) {\n return undefined;\n } else {\n return get(parent, property, receiver);\n }\n } else if (\"value\" in desc) {\n return desc.value;\n } else {\n var getter = desc.get;\n\n if (getter === undefined) {\n return undefined;\n }\n\n return getter.call(receiver);\n }\n};\n\n//# sourceURL=webpack:///./node_modules/babel-runtime/helpers/get.js?");
|
58 |
+
|
59 |
+
/***/ }),
|
60 |
+
|
61 |
+
/***/ "./node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
|
62 |
+
/*!*******************************************************************************!*\
|
63 |
+
!*** ./node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
|
64 |
+
\*******************************************************************************/
|
65 |
+
/*! no static exports found */
|
66 |
+
/***/ (function(module, exports, __webpack_require__) {
|
67 |
+
|
68 |
+
eval("__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ \"./node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js\");\nvar $Object = __webpack_require__(/*! ../../modules/_core */ \"./node_modules/core-js/library/modules/_core.js\").Object;\nmodule.exports = function getOwnPropertyDescriptor(it, key) {\n return $Object.getOwnPropertyDescriptor(it, key);\n};\n\n\n//# sourceURL=webpack:///./node_modules/core-js/library/fn/object/get-own-property-descriptor.js?");
|
69 |
+
|
70 |
+
/***/ }),
|
71 |
+
|
72 |
+
/***/ "./node_modules/raw-loader/index.js!./CFFForm/editor.css":
|
73 |
+
/*!******************************************************!*\
|
74 |
+
!*** ./node_modules/raw-loader!./CFFForm/editor.css ***!
|
75 |
+
\******************************************************/
|
76 |
+
/*! no static exports found */
|
77 |
+
/***/ (function(module, exports) {
|
78 |
+
|
79 |
+
eval("module.exports = \".vce-cff-form {\\n min-height: 1em;\\n}\\n.vce-cff-form .vcvhelper:empty{min-height:1em; background:#DEDEDE;}\\n.vce-cff-form .vcvhelper *{pointer-events: none;}\"\n\n//# sourceURL=webpack:///./CFFForm/editor.css?./node_modules/raw-loader");
|
80 |
+
|
81 |
+
/***/ })
|
82 |
+
|
83 |
+
},[['./CFFForm/index.js']]]);
|