Version Description
- 21 May 2022 =
- Contact Form: Added reCAPTCHA V3 support.
Download this release
Release Info
Developer | SiteOrigin |
Plugin | SiteOrigin Widgets Bundle |
Version | 1.35.0 |
Comparing to | |
See all releases |
Code changes from version 1.34.0 to 1.35.0
- lang/so-widgets-bundle.pot +111 -107
- readme.txt +5 -2
- so-widgets-bundle.php +2 -2
- widgets/contact/contact.php +93 -31
- widgets/contact/js/contact.js +28 -17
- widgets/contact/js/contact.min.js +1 -1
- widgets/contact/tpl/default.php +15 -11
lang/so-widgets-bundle.pot
CHANGED
@@ -272,7 +272,7 @@ msgstr ""
|
|
272 |
msgid "Regular"
|
273 |
msgstr ""
|
274 |
|
275 |
-
#: icons/fontawesome/filter.php:1472, widgets/contact/contact.php:
|
276 |
msgid "Solid"
|
277 |
msgstr ""
|
278 |
|
@@ -328,7 +328,7 @@ msgstr ""
|
|
328 |
msgid "Closed"
|
329 |
msgstr ""
|
330 |
|
331 |
-
#: widgets/accordion/accordion.php:111, widgets/contact/contact.php:
|
332 |
msgid "Design"
|
333 |
msgstr ""
|
334 |
|
@@ -336,7 +336,7 @@ msgstr ""
|
|
336 |
msgid "Headings"
|
337 |
msgstr ""
|
338 |
|
339 |
-
#: widgets/accordion/accordion.php:121, widgets/accordion/accordion.php:159, widgets/contact/contact.php:
|
340 |
msgid "Background color"
|
341 |
msgstr ""
|
342 |
|
@@ -352,7 +352,7 @@ msgstr ""
|
|
352 |
msgid "Title hover color"
|
353 |
msgstr ""
|
354 |
|
355 |
-
#: widgets/accordion/accordion.php:140, widgets/accordion/accordion.php:168, widgets/contact/contact.php:
|
356 |
msgid "Border color"
|
357 |
msgstr ""
|
358 |
|
@@ -360,7 +360,7 @@ msgstr ""
|
|
360 |
msgid "Border hover color"
|
361 |
msgstr ""
|
362 |
|
363 |
-
#: widgets/accordion/accordion.php:148, widgets/accordion/accordion.php:172, widgets/contact/contact.php:
|
364 |
msgid "Border width"
|
365 |
msgstr ""
|
366 |
|
@@ -396,19 +396,19 @@ msgstr ""
|
|
396 |
msgid "Item"
|
397 |
msgstr ""
|
398 |
|
399 |
-
#: widgets/anything-carousel/anything-carousel.php:95, widgets/button/button.php:201, widgets/contact/contact.php:
|
400 |
msgid "Font"
|
401 |
msgstr ""
|
402 |
|
403 |
-
#: widgets/anything-carousel/anything-carousel.php:99, widgets/button/button.php:207, widgets/contact/contact.php:
|
404 |
msgid "Font size"
|
405 |
msgstr ""
|
406 |
|
407 |
-
#: widgets/anything-carousel/anything-carousel.php:103, widgets/contact/contact.php:
|
408 |
msgid "Color"
|
409 |
msgstr ""
|
410 |
|
411 |
-
#: widgets/anything-carousel/anything-carousel.php:107, widgets/contact/contact.php:
|
412 |
msgid "Margin"
|
413 |
msgstr ""
|
414 |
|
@@ -416,7 +416,7 @@ msgstr ""
|
|
416 |
msgid "Top"
|
417 |
msgstr ""
|
418 |
|
419 |
-
#: widgets/anything-carousel/anything-carousel.php:116, widgets/button/button.php:105, widgets/button/button.php:131, widgets/button/button.php:142, widgets/contact/contact.php:
|
420 |
msgid "Right"
|
421 |
msgstr ""
|
422 |
|
@@ -424,7 +424,7 @@ msgstr ""
|
|
424 |
msgid "Bottom"
|
425 |
msgstr ""
|
426 |
|
427 |
-
#: widgets/anything-carousel/anything-carousel.php:124, widgets/button/button.php:107, widgets/button/button.php:130, widgets/button/button.php:141, widgets/contact/contact.php:
|
428 |
msgid "Left"
|
429 |
msgstr ""
|
430 |
|
@@ -468,7 +468,7 @@ msgstr ""
|
|
468 |
msgid "SiteOrigin Button"
|
469 |
msgstr ""
|
470 |
|
471 |
-
#: widgets/button/button.php:33, widgets/contact/contact.php:
|
472 |
msgid "Responsive Breakpoint"
|
473 |
msgstr ""
|
474 |
|
@@ -520,7 +520,7 @@ msgstr ""
|
|
520 |
msgid "Design and layout"
|
521 |
msgstr ""
|
522 |
|
523 |
-
#: widgets/button/button.php:121, widgets/contact/contact.php:
|
524 |
msgid "Width"
|
525 |
msgstr ""
|
526 |
|
@@ -528,15 +528,15 @@ msgstr ""
|
|
528 |
msgid "Leave blank to let the button resize according to content."
|
529 |
msgstr ""
|
530 |
|
531 |
-
#: widgets/button/button.php:127, widgets/contact/contact.php:
|
532 |
msgid "Align"
|
533 |
msgstr ""
|
534 |
|
535 |
-
#: widgets/button/button.php:132, widgets/button/button.php:143, widgets/contact/contact.php:
|
536 |
msgid "Center"
|
537 |
msgstr ""
|
538 |
|
539 |
-
#: widgets/button/button.php:133, widgets/button/button.php:144, widgets/contact/contact.php:
|
540 |
msgid "Justify"
|
541 |
msgstr ""
|
542 |
|
@@ -564,7 +564,7 @@ msgstr ""
|
|
564 |
msgid "Button color"
|
565 |
msgstr ""
|
566 |
|
567 |
-
#: widgets/button/button.php:165, widgets/contact/contact.php:
|
568 |
msgid "Text color"
|
569 |
msgstr ""
|
570 |
|
@@ -580,7 +580,7 @@ msgstr ""
|
|
580 |
msgid "Hover text color"
|
581 |
msgstr ""
|
582 |
|
583 |
-
#: widgets/button/button.php:209, widgets/contact/contact.php:
|
584 |
msgid "Normal"
|
585 |
msgstr ""
|
586 |
|
@@ -600,7 +600,7 @@ msgstr ""
|
|
600 |
msgid "Rounding"
|
601 |
msgstr ""
|
602 |
|
603 |
-
#: widgets/button/button.php:221, widgets/contact/contact.php:
|
604 |
msgid "None"
|
605 |
msgstr ""
|
606 |
|
@@ -616,7 +616,7 @@ msgstr ""
|
|
616 |
msgid "Completely rounded"
|
617 |
msgstr ""
|
618 |
|
619 |
-
#: widgets/button/button.php:230, widgets/contact/contact.php:
|
620 |
msgid "Padding"
|
621 |
msgstr ""
|
622 |
|
@@ -772,7 +772,7 @@ msgstr ""
|
|
772 |
msgid "List in contact emails, the IP address of the form sender."
|
773 |
msgstr ""
|
774 |
|
775 |
-
#: widgets/contact/contact.php:137, widgets/contact/contact.php:
|
776 |
msgid "Fields"
|
777 |
msgstr ""
|
778 |
|
@@ -804,7 +804,7 @@ msgstr ""
|
|
804 |
msgid "Number"
|
805 |
msgstr ""
|
806 |
|
807 |
-
#: widgets/contact/contact.php:153, widgets/contact/contact.php:
|
808 |
msgid "Subject"
|
809 |
msgstr ""
|
810 |
|
@@ -844,7 +844,7 @@ msgstr ""
|
|
844 |
msgid "Required Field"
|
845 |
msgstr ""
|
846 |
|
847 |
-
#: widgets/contact/contact.php:183, widgets/contact/contact.php:190, widgets/contact/contact.php:
|
848 |
msgid "Required field"
|
849 |
msgstr ""
|
850 |
|
@@ -876,320 +876,324 @@ msgstr ""
|
|
876 |
msgid "Spam Protection"
|
877 |
msgstr ""
|
878 |
|
879 |
-
#: widgets/contact/contact.php:233
|
880 |
-
msgid "reCAPTCHA
|
881 |
msgstr ""
|
882 |
|
883 |
-
#: widgets/contact/contact.php:
|
884 |
-
msgid "
|
885 |
msgstr ""
|
886 |
|
887 |
-
#: widgets/contact/contact.php:
|
888 |
-
msgid "Please make sure you register a new reCAPTCHA v2 key %shere%s."
|
889 |
-
msgstr ""
|
890 |
-
|
891 |
-
#: widgets/contact/contact.php:254
|
892 |
msgid "reCAPTCHA v2 Site Key"
|
893 |
msgstr ""
|
894 |
|
895 |
-
#: widgets/contact/contact.php:
|
896 |
msgid "reCAPTCHA v2 Secret Key"
|
897 |
msgstr ""
|
898 |
|
899 |
-
#: widgets/contact/contact.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
900 |
msgid "Theme"
|
901 |
msgstr ""
|
902 |
|
903 |
-
#: widgets/contact/contact.php:
|
904 |
msgid "Light"
|
905 |
msgstr ""
|
906 |
|
907 |
-
#: widgets/contact/contact.php:
|
908 |
msgid "Dark"
|
909 |
msgstr ""
|
910 |
|
911 |
-
#: widgets/contact/contact.php:
|
912 |
msgid "Challenge type"
|
913 |
msgstr ""
|
914 |
|
915 |
-
#: widgets/contact/contact.php:
|
916 |
msgid "Image"
|
917 |
msgstr ""
|
918 |
|
919 |
-
#: widgets/contact/contact.php:
|
920 |
msgid "Audio"
|
921 |
msgstr ""
|
922 |
|
923 |
-
#: widgets/contact/contact.php:
|
924 |
msgid "Size"
|
925 |
msgstr ""
|
926 |
|
927 |
-
#: widgets/contact/contact.php:
|
928 |
msgid "Compact"
|
929 |
msgstr ""
|
930 |
|
931 |
-
#: widgets/contact/contact.php:
|
932 |
msgid "Akismet"
|
933 |
msgstr ""
|
934 |
|
935 |
-
#: widgets/contact/contact.php:
|
936 |
msgid "Use Akismet filtering"
|
937 |
msgstr ""
|
938 |
|
939 |
-
#: widgets/contact/contact.php:
|
940 |
msgid "Spam action"
|
941 |
msgstr ""
|
942 |
|
943 |
-
#: widgets/contact/contact.php:
|
944 |
msgid "Show error message"
|
945 |
msgstr ""
|
946 |
|
947 |
-
#: widgets/contact/contact.php:
|
948 |
msgid "Tag as spam in subject"
|
949 |
msgstr ""
|
950 |
|
951 |
-
#: widgets/contact/contact.php:
|
952 |
msgid "How to handle submissions that are identified as spam."
|
953 |
msgstr ""
|
954 |
|
955 |
-
#: widgets/contact/contact.php:
|
956 |
msgid "Container"
|
957 |
msgstr ""
|
958 |
|
959 |
-
#: widgets/contact/contact.php:
|
960 |
msgid "Border style"
|
961 |
msgstr ""
|
962 |
|
963 |
-
#: widgets/contact/contact.php:
|
964 |
msgid "Hidden"
|
965 |
msgstr ""
|
966 |
|
967 |
-
#: widgets/contact/contact.php:
|
968 |
msgid "Dotted"
|
969 |
msgstr ""
|
970 |
|
971 |
-
#: widgets/contact/contact.php:
|
972 |
msgid "Dashed"
|
973 |
msgstr ""
|
974 |
|
975 |
-
#: widgets/contact/contact.php:
|
976 |
msgid "Double"
|
977 |
msgstr ""
|
978 |
|
979 |
-
#: widgets/contact/contact.php:
|
980 |
msgid "Groove"
|
981 |
msgstr ""
|
982 |
|
983 |
-
#: widgets/contact/contact.php:
|
984 |
msgid "Ridge"
|
985 |
msgstr ""
|
986 |
|
987 |
-
#: widgets/contact/contact.php:
|
988 |
msgid "Inset"
|
989 |
msgstr ""
|
990 |
|
991 |
-
#: widgets/contact/contact.php:
|
992 |
msgid "Outset"
|
993 |
msgstr ""
|
994 |
|
995 |
-
#: widgets/contact/contact.php:
|
996 |
msgid "Field labels"
|
997 |
msgstr ""
|
998 |
|
999 |
-
#: widgets/contact/contact.php:
|
1000 |
msgid "Position"
|
1001 |
msgstr ""
|
1002 |
|
1003 |
-
#: widgets/contact/contact.php:
|
1004 |
msgid "Above"
|
1005 |
msgstr ""
|
1006 |
|
1007 |
-
#: widgets/contact/contact.php:
|
1008 |
msgid "Below"
|
1009 |
msgstr ""
|
1010 |
|
1011 |
-
#: widgets/contact/contact.php:
|
1012 |
msgid "Inside"
|
1013 |
msgstr ""
|
1014 |
|
1015 |
-
#: widgets/contact/contact.php:
|
1016 |
msgid "Max width"
|
1017 |
msgstr ""
|
1018 |
|
1019 |
-
#: widgets/contact/contact.php:
|
1020 |
msgid "Height"
|
1021 |
msgstr ""
|
1022 |
|
1023 |
-
#: widgets/contact/contact.php:
|
1024 |
msgid "Text area height"
|
1025 |
msgstr ""
|
1026 |
|
1027 |
-
#: widgets/contact/contact.php:
|
1028 |
msgid "Background"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
-
#: widgets/contact/contact.php:
|
1032 |
msgid " Border style"
|
1033 |
msgstr ""
|
1034 |
|
1035 |
-
#: widgets/contact/contact.php:
|
1036 |
msgid "Border rounding"
|
1037 |
msgstr ""
|
1038 |
|
1039 |
-
#: widgets/contact/contact.php:
|
1040 |
msgid "Field descriptions"
|
1041 |
msgstr ""
|
1042 |
|
1043 |
-
#: widgets/contact/contact.php:
|
1044 |
msgid "Style"
|
1045 |
msgstr ""
|
1046 |
|
1047 |
-
#: widgets/contact/contact.php:
|
1048 |
msgid "Italic"
|
1049 |
msgstr ""
|
1050 |
|
1051 |
-
#: widgets/contact/contact.php:
|
1052 |
msgid "Error messages"
|
1053 |
msgstr ""
|
1054 |
|
1055 |
-
#: widgets/contact/contact.php:
|
1056 |
msgid "Error background color"
|
1057 |
msgstr ""
|
1058 |
|
1059 |
-
#: widgets/contact/contact.php:
|
1060 |
msgid "Error border color"
|
1061 |
msgstr ""
|
1062 |
|
1063 |
-
#: widgets/contact/contact.php:
|
1064 |
msgid "Error text color"
|
1065 |
msgstr ""
|
1066 |
|
1067 |
-
#: widgets/contact/contact.php:
|
1068 |
msgid "Error padding"
|
1069 |
msgstr ""
|
1070 |
|
1071 |
-
#: widgets/contact/contact.php:
|
1072 |
msgid "Error margin"
|
1073 |
msgstr ""
|
1074 |
|
1075 |
-
#: widgets/contact/contact.php:
|
1076 |
msgid "Submit button"
|
1077 |
msgstr ""
|
1078 |
|
1079 |
-
#: widgets/contact/contact.php:
|
1080 |
msgid "Style submit button"
|
1081 |
msgstr ""
|
1082 |
|
1083 |
-
#: widgets/contact/contact.php:
|
1084 |
msgid "Style the button or leave it with default theme styling."
|
1085 |
msgstr ""
|
1086 |
|
1087 |
-
#: widgets/contact/contact.php:
|
1088 |
msgid "Gradient intensity"
|
1089 |
msgstr ""
|
1090 |
|
1091 |
-
#: widgets/contact/contact.php:
|
1092 |
msgid "Font weight"
|
1093 |
msgstr ""
|
1094 |
|
1095 |
-
#: widgets/contact/contact.php:
|
1096 |
msgid "Semi-bold"
|
1097 |
msgstr ""
|
1098 |
|
1099 |
-
#: widgets/contact/contact.php:
|
1100 |
msgid "Bold"
|
1101 |
msgstr ""
|
1102 |
|
1103 |
-
#: widgets/contact/contact.php:
|
1104 |
msgid "Inset highlight"
|
1105 |
msgstr ""
|
1106 |
|
1107 |
-
#: widgets/contact/contact.php:
|
1108 |
msgid "The white highlight at the bottom of the button"
|
1109 |
msgstr ""
|
1110 |
|
1111 |
-
#: widgets/contact/contact.php:
|
1112 |
msgid "Input focus"
|
1113 |
msgstr ""
|
1114 |
|
1115 |
-
#: widgets/contact/contact.php:
|
1116 |
msgid "Your Name"
|
1117 |
msgstr ""
|
1118 |
|
1119 |
-
#: widgets/contact/contact.php:
|
1120 |
msgid "Please enter your name"
|
1121 |
msgstr ""
|
1122 |
|
1123 |
-
#: widgets/contact/contact.php:
|
1124 |
msgid "Your Email"
|
1125 |
msgstr ""
|
1126 |
|
1127 |
-
#: widgets/contact/contact.php:
|
1128 |
msgid "Please enter a valid email address"
|
1129 |
msgstr ""
|
1130 |
|
1131 |
-
#: widgets/contact/contact.php:
|
1132 |
msgid "Please enter a subject"
|
1133 |
msgstr ""
|
1134 |
|
1135 |
-
#: widgets/contact/contact.php:
|
1136 |
msgid "Message"
|
1137 |
msgstr ""
|
1138 |
|
1139 |
-
#: widgets/contact/contact.php:
|
1140 |
msgid "Please write something"
|
1141 |
msgstr ""
|
1142 |
|
1143 |
-
#: widgets/contact/contact.php:
|
1144 |
msgid "This setting controls when the field max width will be disabled. The default value is 780px"
|
1145 |
msgstr ""
|
1146 |
|
1147 |
-
#: widgets/contact/contact.php:
|
1148 |
msgid "Invalid email address."
|
1149 |
msgstr ""
|
1150 |
|
1151 |
-
#: widgets/contact/contact.php:
|
1152 |
msgid "Invalid phone number. It should contain at least three digits."
|
1153 |
msgstr ""
|
1154 |
|
1155 |
-
#: widgets/contact/contact.php:
|
1156 |
msgid "Invalid number."
|
1157 |
msgstr ""
|
1158 |
|
1159 |
-
#: widgets/contact/contact.php:
|
1160 |
msgid "Error sending email, please try again later."
|
1161 |
msgstr ""
|
1162 |
|
1163 |
-
#: widgets/contact/contact.php:
|
1164 |
msgid "A valid email is required"
|
1165 |
msgstr ""
|
1166 |
|
1167 |
-
#: widgets/contact/contact.php:
|
1168 |
msgid "The email address is invalid"
|
1169 |
msgstr ""
|
1170 |
|
1171 |
-
#: widgets/contact/contact.php:
|
1172 |
msgid "Missing subject"
|
1173 |
msgstr ""
|
1174 |
|
1175 |
-
#: widgets/contact/contact.php:
|
1176 |
msgid "Error validating your Captcha response."
|
1177 |
msgstr ""
|
1178 |
|
1179 |
-
#: widgets/contact/contact.php:
|
1180 |
msgid "Unfortunately our system identified your message as spam."
|
1181 |
msgstr ""
|
1182 |
|
1183 |
-
#: widgets/contact/contact.php:
|
1184 |
msgctxt "The name of who sent this email"
|
1185 |
msgid "From"
|
1186 |
msgstr ""
|
1187 |
|
1188 |
-
#: widgets/contact/contact.php:
|
1189 |
msgid "Add a form autoresponder and additional fields, including a date and time picker with %sSiteOrigin Premium%s"
|
1190 |
msgstr ""
|
1191 |
|
1192 |
-
#: widgets/contact/contact.php:
|
1193 |
msgid "Use Google Fonts right inside the Contact Form Widget with %sSiteOrigin Premium%s"
|
1194 |
msgstr ""
|
1195 |
|
272 |
msgid "Regular"
|
273 |
msgstr ""
|
274 |
|
275 |
+
#: icons/fontawesome/filter.php:1472, widgets/contact/contact.php:391, widgets/contact/contact.php:513, widgets/contact/contact.php:621, widgets/contact/contact.php:699, widgets/headline/headline.php:219
|
276 |
msgid "Solid"
|
277 |
msgstr ""
|
278 |
|
328 |
msgid "Closed"
|
329 |
msgstr ""
|
330 |
|
331 |
+
#: widgets/accordion/accordion.php:111, widgets/contact/contact.php:354, widgets/cta/cta.php:74, widgets/hero/hero.php:254, widgets/layout-slider/layout-slider.php:222, widgets/slider/slider.php:134, widgets/tabs/tabs.php:101, widgets/testimonial/testimonial.php:184, base/inc/widgets/base-carousel.class.php:350
|
332 |
msgid "Design"
|
333 |
msgstr ""
|
334 |
|
336 |
msgid "Headings"
|
337 |
msgstr ""
|
338 |
|
339 |
+
#: widgets/accordion/accordion.php:121, widgets/accordion/accordion.php:159, widgets/contact/contact.php:364, widgets/contact/contact.php:602, widgets/cta/cta.php:78, widgets/hero/hero.php:133, widgets/layout-slider/layout-slider.php:101, widgets/slider/slider.php:87, widgets/social-media-buttons/social-media-buttons.php:85, widgets/tabs/tabs.php:111, widgets/tabs/tabs.php:131, widgets/tabs/tabs.php:175
|
340 |
msgid "Background color"
|
341 |
msgstr ""
|
342 |
|
352 |
msgid "Title hover color"
|
353 |
msgstr ""
|
354 |
|
355 |
+
#: widgets/accordion/accordion.php:140, widgets/accordion/accordion.php:168, widgets/contact/contact.php:374, widgets/contact/contact.php:496, widgets/contact/contact.php:612, widgets/cta/cta.php:83, widgets/tabs/tabs.php:116, widgets/tabs/tabs.php:150, widgets/tabs/tabs.php:184
|
356 |
msgid "Border color"
|
357 |
msgstr ""
|
358 |
|
360 |
msgid "Border hover color"
|
361 |
msgstr ""
|
362 |
|
363 |
+
#: widgets/accordion/accordion.php:148, widgets/accordion/accordion.php:172, widgets/contact/contact.php:379, widgets/contact/contact.php:501, widgets/contact/contact.php:628, widgets/tabs/tabs.php:120, widgets/tabs/tabs.php:160, widgets/tabs/tabs.php:188
|
364 |
msgid "Border width"
|
365 |
msgstr ""
|
366 |
|
396 |
msgid "Item"
|
397 |
msgstr ""
|
398 |
|
399 |
+
#: widgets/anything-carousel/anything-carousel.php:95, widgets/button/button.php:201, widgets/contact/contact.php:408, widgets/contact/contact.php:458, widgets/features/features.php:145, widgets/features/features.php:166, widgets/features/features.php:187, widgets/headline/headline.php:88, widgets/headline/headline.php:169, base/inc/widgets/base-carousel.class.php:374
|
400 |
msgid "Font"
|
401 |
msgstr ""
|
402 |
|
403 |
+
#: widgets/anything-carousel/anything-carousel.php:99, widgets/button/button.php:207, widgets/contact/contact.php:413, widgets/contact/contact.php:463, widgets/contact/contact.php:645, base/inc/widgets/base-carousel.class.php:378
|
404 |
msgid "Font size"
|
405 |
msgstr ""
|
406 |
|
407 |
+
#: widgets/anything-carousel/anything-carousel.php:103, widgets/contact/contact.php:418, widgets/contact/contact.php:542, widgets/contact/contact.php:711, widgets/features/features.php:154, widgets/features/features.php:175, widgets/features/features.php:196, widgets/google-map/google-map.php:376, widgets/headline/headline.php:80, widgets/headline/headline.php:161, widgets/headline/headline.php:231, widgets/icon/icon.php:36, widgets/taxonomy/taxonomy.php:56, base/inc/widgets/base-carousel.class.php:382
|
408 |
msgid "Color"
|
409 |
msgstr ""
|
410 |
|
411 |
+
#: widgets/anything-carousel/anything-carousel.php:107, widgets/contact/contact.php:471, widgets/social-media-buttons/social-media-buttons.php:193
|
412 |
msgid "Margin"
|
413 |
msgstr ""
|
414 |
|
416 |
msgid "Top"
|
417 |
msgstr ""
|
418 |
|
419 |
+
#: widgets/anything-carousel/anything-carousel.php:116, widgets/button/button.php:105, widgets/button/button.php:131, widgets/button/button.php:142, widgets/contact/contact.php:429, widgets/contact/contact.php:444, widgets/contact/contact.php:673, widgets/cta/cta.php:100, widgets/features/features.php:73, widgets/headline/headline.php:102, widgets/headline/headline.php:112, widgets/headline/headline.php:183, widgets/headline/headline.php:193, widgets/headline/headline.php:248, widgets/headline/headline.php:257, widgets/icon/icon.php:50, widgets/image/image.php:50, widgets/image/image.php:62, widgets/image-grid/image-grid.php:137, widgets/image-grid/image-grid.php:167, widgets/simple-masonry/simple-masonry.php:216, widgets/social-media-buttons/social-media-buttons.php:175, widgets/social-media-buttons/social-media-buttons.php:186, widgets/testimonial/testimonial.php:256
|
420 |
msgid "Right"
|
421 |
msgstr ""
|
422 |
|
424 |
msgid "Bottom"
|
425 |
msgstr ""
|
426 |
|
427 |
+
#: widgets/anything-carousel/anything-carousel.php:124, widgets/button/button.php:107, widgets/button/button.php:130, widgets/button/button.php:141, widgets/contact/contact.php:428, widgets/contact/contact.php:443, widgets/contact/contact.php:672, widgets/cta/cta.php:99, widgets/features/features.php:75, widgets/headline/headline.php:101, widgets/headline/headline.php:111, widgets/headline/headline.php:182, widgets/headline/headline.php:192, widgets/headline/headline.php:247, widgets/headline/headline.php:256, widgets/icon/icon.php:49, widgets/image/image.php:49, widgets/image/image.php:61, widgets/image-grid/image-grid.php:143, widgets/image-grid/image-grid.php:165, widgets/simple-masonry/simple-masonry.php:215, widgets/social-media-buttons/social-media-buttons.php:174, widgets/social-media-buttons/social-media-buttons.php:185, widgets/testimonial/testimonial.php:255
|
428 |
msgid "Left"
|
429 |
msgstr ""
|
430 |
|
468 |
msgid "SiteOrigin Button"
|
469 |
msgstr ""
|
470 |
|
471 |
+
#: widgets/button/button.php:33, widgets/contact/contact.php:866, widgets/features/features.php:368, widgets/headline/headline.php:37, widgets/social-media-buttons/social-media-buttons.php:32, base/inc/widgets/base-slider.class.php:222
|
472 |
msgid "Responsive Breakpoint"
|
473 |
msgstr ""
|
474 |
|
520 |
msgid "Design and layout"
|
521 |
msgstr ""
|
522 |
|
523 |
+
#: widgets/button/button.php:121, widgets/contact/contact.php:435, widgets/contact/contact.php:665, widgets/contact/contact.php:716, widgets/google-map/google-map.php:94, base/inc/fields/image-size.class.php:57
|
524 |
msgid "Width"
|
525 |
msgstr ""
|
526 |
|
528 |
msgid "Leave blank to let the button resize according to content."
|
529 |
msgstr ""
|
530 |
|
531 |
+
#: widgets/button/button.php:127, widgets/contact/contact.php:440, widgets/contact/contact.php:669, widgets/social-media-buttons/social-media-buttons.php:171
|
532 |
msgid "Align"
|
533 |
msgstr ""
|
534 |
|
535 |
+
#: widgets/button/button.php:132, widgets/button/button.php:143, widgets/contact/contact.php:445, widgets/contact/contact.php:674, widgets/headline/headline.php:100, widgets/headline/headline.php:110, widgets/headline/headline.php:181, widgets/headline/headline.php:191, widgets/headline/headline.php:246, widgets/headline/headline.php:255, widgets/icon/icon.php:48, widgets/image/image.php:51, widgets/image/image.php:63, widgets/image-grid/image-grid.php:155, widgets/image-grid/image-grid.php:166, widgets/social-media-buttons/social-media-buttons.php:176, widgets/social-media-buttons/social-media-buttons.php:187
|
536 |
msgid "Center"
|
537 |
msgstr ""
|
538 |
|
539 |
+
#: widgets/button/button.php:133, widgets/button/button.php:144, widgets/contact/contact.php:446, widgets/headline/headline.php:103, widgets/headline/headline.php:113, widgets/headline/headline.php:184, widgets/headline/headline.php:194, widgets/social-media-buttons/social-media-buttons.php:177, widgets/social-media-buttons/social-media-buttons.php:188
|
540 |
msgid "Justify"
|
541 |
msgstr ""
|
542 |
|
564 |
msgid "Button color"
|
565 |
msgstr ""
|
566 |
|
567 |
+
#: widgets/button/button.php:165, widgets/contact/contact.php:467, widgets/contact/contact.php:640, widgets/hero/hero.php:311, widgets/layout-slider/layout-slider.php:252, widgets/testimonial/testimonial.php:227
|
568 |
msgid "Text color"
|
569 |
msgstr ""
|
570 |
|
580 |
msgid "Hover text color"
|
581 |
msgstr ""
|
582 |
|
583 |
+
#: widgets/button/button.php:209, widgets/contact/contact.php:317, widgets/contact/contact.php:551, widgets/contact/contact.php:653, widgets/social-media-buttons/social-media-buttons.php:141
|
584 |
msgid "Normal"
|
585 |
msgstr ""
|
586 |
|
600 |
msgid "Rounding"
|
601 |
msgstr ""
|
602 |
|
603 |
+
#: widgets/button/button.php:221, widgets/contact/contact.php:387, widgets/contact/contact.php:509, widgets/contact/contact.php:620, widgets/contact/contact.php:705, widgets/google-map/google-map.php:158, widgets/headline/headline.php:218, widgets/social-media-buttons/social-media-buttons.php:152
|
604 |
msgid "None"
|
605 |
msgstr ""
|
606 |
|
616 |
msgid "Completely rounded"
|
617 |
msgstr ""
|
618 |
|
619 |
+
#: widgets/button/button.php:230, widgets/contact/contact.php:369, widgets/contact/contact.php:475, widgets/contact/contact.php:660, widgets/social-media-buttons/social-media-buttons.php:160, widgets/testimonial/testimonial.php:235
|
620 |
msgid "Padding"
|
621 |
msgstr ""
|
622 |
|
772 |
msgid "List in contact emails, the IP address of the form sender."
|
773 |
msgstr ""
|
774 |
|
775 |
+
#: widgets/contact/contact.php:137, widgets/contact/contact.php:454
|
776 |
msgid "Fields"
|
777 |
msgstr ""
|
778 |
|
804 |
msgid "Number"
|
805 |
msgstr ""
|
806 |
|
807 |
+
#: widgets/contact/contact.php:153, widgets/contact/contact.php:765
|
808 |
msgid "Subject"
|
809 |
msgstr ""
|
810 |
|
844 |
msgid "Required Field"
|
845 |
msgstr ""
|
846 |
|
847 |
+
#: widgets/contact/contact.php:183, widgets/contact/contact.php:190, widgets/contact/contact.php:1145
|
848 |
msgid "Required field"
|
849 |
msgstr ""
|
850 |
|
876 |
msgid "Spam Protection"
|
877 |
msgstr ""
|
878 |
|
879 |
+
#: widgets/contact/contact.php:233, widgets/contact/contact.php:237
|
880 |
+
msgid "reCAPTCHA"
|
881 |
msgstr ""
|
882 |
|
883 |
+
#: widgets/contact/contact.php:245
|
884 |
+
msgid "Please make sure you register a new reCAPTCHA key %shere%s."
|
885 |
msgstr ""
|
886 |
|
887 |
+
#: widgets/contact/contact.php:256
|
|
|
|
|
|
|
|
|
888 |
msgid "reCAPTCHA v2 Site Key"
|
889 |
msgstr ""
|
890 |
|
891 |
+
#: widgets/contact/contact.php:264
|
892 |
msgid "reCAPTCHA v2 Secret Key"
|
893 |
msgstr ""
|
894 |
|
895 |
+
#: widgets/contact/contact.php:272
|
896 |
+
msgid "reCAPTCHA v3 Site Key"
|
897 |
+
msgstr ""
|
898 |
+
|
899 |
+
#: widgets/contact/contact.php:280
|
900 |
+
msgid "reCAPTCHA v3 Secret Key"
|
901 |
+
msgstr ""
|
902 |
+
|
903 |
+
#: widgets/contact/contact.php:288
|
904 |
msgid "Theme"
|
905 |
msgstr ""
|
906 |
|
907 |
+
#: widgets/contact/contact.php:291
|
908 |
msgid "Light"
|
909 |
msgstr ""
|
910 |
|
911 |
+
#: widgets/contact/contact.php:292
|
912 |
msgid "Dark"
|
913 |
msgstr ""
|
914 |
|
915 |
+
#: widgets/contact/contact.php:301
|
916 |
msgid "Challenge type"
|
917 |
msgstr ""
|
918 |
|
919 |
+
#: widgets/contact/contact.php:304, widgets/image-grid/image-grid.php:54, widgets/image-grid/image-grid.php:70, widgets/price-table/price-table.php:70, widgets/simple-masonry/simple-masonry.php:64, widgets/testimonial/testimonial.php:72, widgets/testimonial/testimonial.php:189
|
920 |
msgid "Image"
|
921 |
msgstr ""
|
922 |
|
923 |
+
#: widgets/contact/contact.php:305
|
924 |
msgid "Audio"
|
925 |
msgstr ""
|
926 |
|
927 |
+
#: widgets/contact/contact.php:314, widgets/contact/contact.php:537, widgets/features/features.php:150, widgets/features/features.php:171, widgets/features/features.php:192, widgets/icon/icon.php:41
|
928 |
msgid "Size"
|
929 |
msgstr ""
|
930 |
|
931 |
+
#: widgets/contact/contact.php:318
|
932 |
msgid "Compact"
|
933 |
msgstr ""
|
934 |
|
935 |
+
#: widgets/contact/contact.php:330
|
936 |
msgid "Akismet"
|
937 |
msgstr ""
|
938 |
|
939 |
+
#: widgets/contact/contact.php:334
|
940 |
msgid "Use Akismet filtering"
|
941 |
msgstr ""
|
942 |
|
943 |
+
#: widgets/contact/contact.php:339
|
944 |
msgid "Spam action"
|
945 |
msgstr ""
|
946 |
|
947 |
+
#: widgets/contact/contact.php:341
|
948 |
msgid "Show error message"
|
949 |
msgstr ""
|
950 |
|
951 |
+
#: widgets/contact/contact.php:342
|
952 |
msgid "Tag as spam in subject"
|
953 |
msgstr ""
|
954 |
|
955 |
+
#: widgets/contact/contact.php:344
|
956 |
msgid "How to handle submissions that are identified as spam."
|
957 |
msgstr ""
|
958 |
|
959 |
+
#: widgets/contact/contact.php:360
|
960 |
msgid "Container"
|
961 |
msgstr ""
|
962 |
|
963 |
+
#: widgets/contact/contact.php:384, widgets/contact/contact.php:617
|
964 |
msgid "Border style"
|
965 |
msgstr ""
|
966 |
|
967 |
+
#: widgets/contact/contact.php:388, widgets/contact/contact.php:510, widgets/contact/contact.php:706, widgets/image/image.php:77
|
968 |
msgid "Hidden"
|
969 |
msgstr ""
|
970 |
|
971 |
+
#: widgets/contact/contact.php:389, widgets/contact/contact.php:511, widgets/contact/contact.php:622, widgets/contact/contact.php:697, widgets/headline/headline.php:220
|
972 |
msgid "Dotted"
|
973 |
msgstr ""
|
974 |
|
975 |
+
#: widgets/contact/contact.php:390, widgets/contact/contact.php:512, widgets/contact/contact.php:623, widgets/contact/contact.php:698, widgets/headline/headline.php:221
|
976 |
msgid "Dashed"
|
977 |
msgstr ""
|
978 |
|
979 |
+
#: widgets/contact/contact.php:392, widgets/contact/contact.php:514, widgets/contact/contact.php:700, widgets/headline/headline.php:222
|
980 |
msgid "Double"
|
981 |
msgstr ""
|
982 |
|
983 |
+
#: widgets/contact/contact.php:393, widgets/contact/contact.php:515, widgets/contact/contact.php:701, widgets/headline/headline.php:223
|
984 |
msgid "Groove"
|
985 |
msgstr ""
|
986 |
|
987 |
+
#: widgets/contact/contact.php:394, widgets/contact/contact.php:516, widgets/contact/contact.php:702, widgets/headline/headline.php:224
|
988 |
msgid "Ridge"
|
989 |
msgstr ""
|
990 |
|
991 |
+
#: widgets/contact/contact.php:395, widgets/contact/contact.php:517, widgets/contact/contact.php:703, widgets/headline/headline.php:225
|
992 |
msgid "Inset"
|
993 |
msgstr ""
|
994 |
|
995 |
+
#: widgets/contact/contact.php:396, widgets/contact/contact.php:518, widgets/contact/contact.php:704, widgets/headline/headline.php:226
|
996 |
msgid "Outset"
|
997 |
msgstr ""
|
998 |
|
999 |
+
#: widgets/contact/contact.php:404
|
1000 |
msgid "Field labels"
|
1001 |
msgstr ""
|
1002 |
|
1003 |
+
#: widgets/contact/contact.php:423
|
1004 |
msgid "Position"
|
1005 |
msgstr ""
|
1006 |
|
1007 |
+
#: widgets/contact/contact.php:426, widgets/image/image.php:78
|
1008 |
msgid "Above"
|
1009 |
msgstr ""
|
1010 |
|
1011 |
+
#: widgets/contact/contact.php:427, widgets/image/image.php:79
|
1012 |
msgid "Below"
|
1013 |
msgstr ""
|
1014 |
|
1015 |
+
#: widgets/contact/contact.php:430
|
1016 |
msgid "Inside"
|
1017 |
msgstr ""
|
1018 |
|
1019 |
+
#: widgets/contact/contact.php:479
|
1020 |
msgid "Max width"
|
1021 |
msgstr ""
|
1022 |
|
1023 |
+
#: widgets/contact/contact.php:484, widgets/google-map/google-map.php:98, widgets/hero/hero.php:187, widgets/hero/hero.php:223, widgets/layout-slider/layout-slider.php:155, widgets/layout-slider/layout-slider.php:191, widgets/slider/slider.php:142, base/inc/fields/image-size.class.php:64
|
1024 |
msgid "Height"
|
1025 |
msgstr ""
|
1026 |
|
1027 |
+
#: widgets/contact/contact.php:488
|
1028 |
msgid "Text area height"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
+
#: widgets/contact/contact.php:492, widgets/hero/hero.php:100, widgets/layout-slider/layout-slider.php:72, widgets/post-carousel/post-carousel.php:194
|
1032 |
msgid "Background"
|
1033 |
msgstr ""
|
1034 |
|
1035 |
+
#: widgets/contact/contact.php:506
|
1036 |
msgid " Border style"
|
1037 |
msgstr ""
|
1038 |
|
1039 |
+
#: widgets/contact/contact.php:523, widgets/contact/contact.php:633
|
1040 |
msgid "Border rounding"
|
1041 |
msgstr ""
|
1042 |
|
1043 |
+
#: widgets/contact/contact.php:533
|
1044 |
msgid "Field descriptions"
|
1045 |
msgstr ""
|
1046 |
|
1047 |
+
#: widgets/contact/contact.php:547, widgets/contact/contact.php:694, widgets/google-map/google-map.php:329, widgets/headline/headline.php:215
|
1048 |
msgid "Style"
|
1049 |
msgstr ""
|
1050 |
|
1051 |
+
#: widgets/contact/contact.php:550
|
1052 |
msgid "Italic"
|
1053 |
msgstr ""
|
1054 |
|
1055 |
+
#: widgets/contact/contact.php:559
|
1056 |
msgid "Error messages"
|
1057 |
msgstr ""
|
1058 |
|
1059 |
+
#: widgets/contact/contact.php:563
|
1060 |
msgid "Error background color"
|
1061 |
msgstr ""
|
1062 |
|
1063 |
+
#: widgets/contact/contact.php:568
|
1064 |
msgid "Error border color"
|
1065 |
msgstr ""
|
1066 |
|
1067 |
+
#: widgets/contact/contact.php:573
|
1068 |
msgid "Error text color"
|
1069 |
msgstr ""
|
1070 |
|
1071 |
+
#: widgets/contact/contact.php:578
|
1072 |
msgid "Error padding"
|
1073 |
msgstr ""
|
1074 |
|
1075 |
+
#: widgets/contact/contact.php:583
|
1076 |
msgid "Error margin"
|
1077 |
msgstr ""
|
1078 |
|
1079 |
+
#: widgets/contact/contact.php:591
|
1080 |
msgid "Submit button"
|
1081 |
msgstr ""
|
1082 |
|
1083 |
+
#: widgets/contact/contact.php:595
|
1084 |
msgid "Style submit button"
|
1085 |
msgstr ""
|
1086 |
|
1087 |
+
#: widgets/contact/contact.php:596
|
1088 |
msgid "Style the button or leave it with default theme styling."
|
1089 |
msgstr ""
|
1090 |
|
1091 |
+
#: widgets/contact/contact.php:607
|
1092 |
msgid "Gradient intensity"
|
1093 |
msgstr ""
|
1094 |
|
1095 |
+
#: widgets/contact/contact.php:650
|
1096 |
msgid "Font weight"
|
1097 |
msgstr ""
|
1098 |
|
1099 |
+
#: widgets/contact/contact.php:654
|
1100 |
msgid "Semi-bold"
|
1101 |
msgstr ""
|
1102 |
|
1103 |
+
#: widgets/contact/contact.php:655
|
1104 |
msgid "Bold"
|
1105 |
msgstr ""
|
1106 |
|
1107 |
+
#: widgets/contact/contact.php:679
|
1108 |
msgid "Inset highlight"
|
1109 |
msgstr ""
|
1110 |
|
1111 |
+
#: widgets/contact/contact.php:680
|
1112 |
msgid "The white highlight at the bottom of the button"
|
1113 |
msgstr ""
|
1114 |
|
1115 |
+
#: widgets/contact/contact.php:690
|
1116 |
msgid "Input focus"
|
1117 |
msgstr ""
|
1118 |
|
1119 |
+
#: widgets/contact/contact.php:749
|
1120 |
msgid "Your Name"
|
1121 |
msgstr ""
|
1122 |
|
1123 |
+
#: widgets/contact/contact.php:752
|
1124 |
msgid "Please enter your name"
|
1125 |
msgstr ""
|
1126 |
|
1127 |
+
#: widgets/contact/contact.php:757
|
1128 |
msgid "Your Email"
|
1129 |
msgstr ""
|
1130 |
|
1131 |
+
#: widgets/contact/contact.php:760
|
1132 |
msgid "Please enter a valid email address"
|
1133 |
msgstr ""
|
1134 |
|
1135 |
+
#: widgets/contact/contact.php:768
|
1136 |
msgid "Please enter a subject"
|
1137 |
msgstr ""
|
1138 |
|
1139 |
+
#: widgets/contact/contact.php:773
|
1140 |
msgid "Message"
|
1141 |
msgstr ""
|
1142 |
|
1143 |
+
#: widgets/contact/contact.php:776
|
1144 |
msgid "Please write something"
|
1145 |
msgstr ""
|
1146 |
|
1147 |
+
#: widgets/contact/contact.php:868
|
1148 |
msgid "This setting controls when the field max width will be disabled. The default value is 780px"
|
1149 |
msgstr ""
|
1150 |
|
1151 |
+
#: widgets/contact/contact.php:1157
|
1152 |
msgid "Invalid email address."
|
1153 |
msgstr ""
|
1154 |
|
1155 |
+
#: widgets/contact/contact.php:1182
|
1156 |
msgid "Invalid phone number. It should contain at least three digits."
|
1157 |
msgstr ""
|
1158 |
|
1159 |
+
#: widgets/contact/contact.php:1193
|
1160 |
msgid "Invalid number."
|
1161 |
msgstr ""
|
1162 |
|
1163 |
+
#: widgets/contact/contact.php:1259
|
1164 |
msgid "Error sending email, please try again later."
|
1165 |
msgstr ""
|
1166 |
|
1167 |
+
#: widgets/contact/contact.php:1285
|
1168 |
msgid "A valid email is required"
|
1169 |
msgstr ""
|
1170 |
|
1171 |
+
#: widgets/contact/contact.php:1287
|
1172 |
msgid "The email address is invalid"
|
1173 |
msgstr ""
|
1174 |
|
1175 |
+
#: widgets/contact/contact.php:1291
|
1176 |
msgid "Missing subject"
|
1177 |
msgstr ""
|
1178 |
|
1179 |
+
#: widgets/contact/contact.php:1322
|
1180 |
msgid "Error validating your Captcha response."
|
1181 |
msgstr ""
|
1182 |
|
1183 |
+
#: widgets/contact/contact.php:1354
|
1184 |
msgid "Unfortunately our system identified your message as spam."
|
1185 |
msgstr ""
|
1186 |
|
1187 |
+
#: widgets/contact/contact.php:1362
|
1188 |
msgctxt "The name of who sent this email"
|
1189 |
msgid "From"
|
1190 |
msgstr ""
|
1191 |
|
1192 |
+
#: widgets/contact/contact.php:1467
|
1193 |
msgid "Add a form autoresponder and additional fields, including a date and time picker with %sSiteOrigin Premium%s"
|
1194 |
msgstr ""
|
1195 |
|
1196 |
+
#: widgets/contact/contact.php:1472
|
1197 |
msgid "Use Google Fonts right inside the Contact Form Widget with %sSiteOrigin Premium%s"
|
1198 |
msgstr ""
|
1199 |
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Tags: widget, button, slider, hero, google maps, image, carousel, lottie, featur
|
|
3 |
Requires at least: 4.2
|
4 |
Tested up to: 5.9
|
5 |
Requires PHP: 5.6.20
|
6 |
-
Stable tag: 1.
|
7 |
-
Build time: 2022-05-
|
8 |
License: GPLv3 or later
|
9 |
Contributors: gpriday, braam-genis, alexgso
|
10 |
Donate link: https://siteorigin.com/downloads/premium/
|
@@ -105,6 +105,9 @@ The Widgets Bundle global interface is available at Plugins > SiteOrigin Widgets
|
|
105 |
|
106 |
== Changelog ==
|
107 |
|
|
|
|
|
|
|
108 |
= 1.34.0 - 16 May 2022 =
|
109 |
* Icon: Hide icons from screen readers.
|
110 |
* Google Maps: Added Custom Marker Icon image size settings.
|
3 |
Requires at least: 4.2
|
4 |
Tested up to: 5.9
|
5 |
Requires PHP: 5.6.20
|
6 |
+
Stable tag: 1.35.0
|
7 |
+
Build time: 2022-05-21T10:59:09+02:00
|
8 |
License: GPLv3 or later
|
9 |
Contributors: gpriday, braam-genis, alexgso
|
10 |
Donate link: https://siteorigin.com/downloads/premium/
|
105 |
|
106 |
== Changelog ==
|
107 |
|
108 |
+
= 1.35.0 - 21 May 2022 =
|
109 |
+
* Contact Form: Added reCAPTCHA V3 support.
|
110 |
+
|
111 |
= 1.34.0 - 16 May 2022 =
|
112 |
* Icon: Hide icons from screen readers.
|
113 |
* Google Maps: Added Custom Marker Icon image size settings.
|
so-widgets-bundle.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/*
|
3 |
Plugin Name: SiteOrigin Widgets Bundle
|
4 |
Description: A highly customizable collection of widgets, ready to be used anywhere, neatly bundled into a single plugin.
|
5 |
-
Version: 1.
|
6 |
Text Domain: so-widgets-bundle
|
7 |
Domain Path: /lang
|
8 |
Author: SiteOrigin
|
@@ -12,7 +12,7 @@ License: GPL3
|
|
12 |
License URI: https://www.gnu.org/licenses/gpl-3.0.txt
|
13 |
*/
|
14 |
|
15 |
-
define( 'SOW_BUNDLE_VERSION', '1.
|
16 |
define( 'SOW_BUNDLE_BASE_FILE', __FILE__ );
|
17 |
|
18 |
// Allow JS suffix to be pre-set.
|
2 |
/*
|
3 |
Plugin Name: SiteOrigin Widgets Bundle
|
4 |
Description: A highly customizable collection of widgets, ready to be used anywhere, neatly bundled into a single plugin.
|
5 |
+
Version: 1.35.0
|
6 |
Text Domain: so-widgets-bundle
|
7 |
Domain Path: /lang
|
8 |
Author: SiteOrigin
|
12 |
License URI: https://www.gnu.org/licenses/gpl-3.0.txt
|
13 |
*/
|
14 |
|
15 |
+
define( 'SOW_BUNDLE_VERSION', '1.35.0' );
|
16 |
define( 'SOW_BUNDLE_BASE_FILE', __FILE__ );
|
17 |
|
18 |
// Allow JS suffix to be pre-set.
|
widgets/contact/contact.php
CHANGED
@@ -230,39 +230,57 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
|
|
230 |
|
231 |
'recaptcha' => array(
|
232 |
'type' => 'section',
|
233 |
-
'label' => __( 'reCAPTCHA
|
234 |
'fields' => array(
|
235 |
'use_captcha' => array(
|
236 |
-
'type' => '
|
237 |
-
'label' => __( '
|
238 |
'default' => false,
|
|
|
|
|
|
|
|
|
|
|
239 |
'description' => sprintf(
|
240 |
-
__( 'Please make sure you register a new reCAPTCHA
|
241 |
'<a href="https://www.google.com/recaptcha/admin/create" target="_blank" rel="noopener noreferrer">',
|
242 |
'</a>'
|
243 |
),
|
244 |
'state_emitter' => array(
|
245 |
-
'callback' => '
|
246 |
-
'args'
|
247 |
-
|
248 |
-
'use_captcha[hide]: ! val',
|
249 |
-
),
|
250 |
-
),
|
251 |
),
|
252 |
'site_key' => array(
|
253 |
'type' => 'text',
|
254 |
'label' => __( 'reCAPTCHA v2 Site Key', 'so-widgets-bundle' ),
|
255 |
'state_handler' => array(
|
256 |
-
'
|
257 |
-
'
|
258 |
),
|
259 |
),
|
260 |
'secret_key' => array(
|
261 |
'type' => 'text',
|
262 |
'label' => __( 'reCAPTCHA v2 Secret Key', 'so-widgets-bundle' ),
|
263 |
'state_handler' => array(
|
264 |
-
'
|
265 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
266 |
),
|
267 |
),
|
268 |
'theme' => array(
|
@@ -274,8 +292,8 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
|
|
274 |
'dark' => __( 'Dark', 'so-widgets-bundle' ),
|
275 |
),
|
276 |
'state_handler' => array(
|
277 |
-
'
|
278 |
-
'
|
279 |
),
|
280 |
),
|
281 |
'type' => array(
|
@@ -287,8 +305,8 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
|
|
287 |
'audio' => __( 'Audio', 'so-widgets-bundle' ),
|
288 |
),
|
289 |
'state_handler' => array(
|
290 |
-
'
|
291 |
-
'
|
292 |
),
|
293 |
),
|
294 |
'size' => array(
|
@@ -300,8 +318,8 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
|
|
300 |
'compact' => __( 'Compact', 'so-widgets-bundle' ),
|
301 |
),
|
302 |
'state_handler' => array(
|
303 |
-
'
|
304 |
-
'
|
305 |
),
|
306 |
),
|
307 |
)
|
@@ -769,17 +787,51 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
|
|
769 |
$instance['settings']['on_click'] = $instance['settings']['onclick'];
|
770 |
}
|
771 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
772 |
return $instance;
|
773 |
}
|
774 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
775 |
function get_template_variables( $instance, $args ) {
|
776 |
unset( $instance['title'] );
|
777 |
unset( $instance['display_title'] );
|
778 |
unset( $instance['design'] );
|
779 |
unset( $instance['panels_info'] );
|
780 |
|
|
|
|
|
|
|
|
|
781 |
// Include '_sow_form_id' in generation of 'instance_hash' to allow multiple instances of the same form on a page.
|
782 |
-
$instance_hash = md5( serialize( $instance ) );
|
783 |
unset( $instance['_sow_form_id'] );
|
784 |
|
785 |
$submit_attributes = array();
|
@@ -787,11 +839,24 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
|
|
787 |
$submit_attributes['id'] = $instance['settings']['submit_id'];
|
788 |
}
|
789 |
|
790 |
-
|
791 |
-
|
792 |
-
|
793 |
-
|
794 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
795 |
}
|
796 |
|
797 |
function get_settings_form() {
|
@@ -1239,15 +1304,12 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
|
|
1239 |
*/
|
1240 |
function spam_check( $post_vars, $email_fields, $instance ) {
|
1241 |
$errors = array();
|
1242 |
-
|
1243 |
-
$recaptcha_config = $instance['spam']['recaptcha'];
|
1244 |
-
$use_recaptcha = $recaptcha_config['use_captcha'] && ! empty( $recaptcha_config['site_key'] ) && ! empty( $recaptcha_config['secret_key'] );
|
1245 |
-
if ( $use_recaptcha ) {
|
1246 |
$result = wp_remote_post(
|
1247 |
'https://www.google.com/recaptcha/api/siteverify',
|
1248 |
array(
|
1249 |
'body' => array(
|
1250 |
-
'secret' => $instance['spam']['recaptcha']['secret_key'],
|
1251 |
'response' => $post_vars['g-recaptcha-response'],
|
1252 |
'remoteip' => isset( $_SERVER['REMOTE_ADDR'] ) ? $_SERVER['REMOTE_ADDR'] : null,
|
1253 |
)
|
230 |
|
231 |
'recaptcha' => array(
|
232 |
'type' => 'section',
|
233 |
+
'label' => __( 'reCAPTCHA', 'so-widgets-bundle' ),
|
234 |
'fields' => array(
|
235 |
'use_captcha' => array(
|
236 |
+
'type' => 'radio',
|
237 |
+
'label' => __( 'reCAPTCHA', 'so-widgets-bundle' ),
|
238 |
'default' => false,
|
239 |
+
'options' => array(
|
240 |
+
'' => __( 'Disabled', 'so-widgets' ),
|
241 |
+
'v2' => __( 'v2', 'so-widgets' ),
|
242 |
+
'v3' => __( 'v3', 'so-widgets' ),
|
243 |
+
),
|
244 |
'description' => sprintf(
|
245 |
+
__( 'Please make sure you register a new reCAPTCHA key %shere%s.', 'so-widgets-bundle' ),
|
246 |
'<a href="https://www.google.com/recaptcha/admin/create" target="_blank" rel="noopener noreferrer">',
|
247 |
'</a>'
|
248 |
),
|
249 |
'state_emitter' => array(
|
250 |
+
'callback' => 'select',
|
251 |
+
'args' => array( 'recaptcha_version' ),
|
252 |
+
)
|
|
|
|
|
|
|
253 |
),
|
254 |
'site_key' => array(
|
255 |
'type' => 'text',
|
256 |
'label' => __( 'reCAPTCHA v2 Site Key', 'so-widgets-bundle' ),
|
257 |
'state_handler' => array(
|
258 |
+
'recaptcha_version[v2]' => array( 'show' ),
|
259 |
+
'_else[recaptcha_version]' => array( 'hide' ),
|
260 |
),
|
261 |
),
|
262 |
'secret_key' => array(
|
263 |
'type' => 'text',
|
264 |
'label' => __( 'reCAPTCHA v2 Secret Key', 'so-widgets-bundle' ),
|
265 |
'state_handler' => array(
|
266 |
+
'recaptcha_version[v2]' => array( 'show' ),
|
267 |
+
'_else[recaptcha_version]' => array( 'hide' ),
|
268 |
+
),
|
269 |
+
),
|
270 |
+
'site_key_v3' => array(
|
271 |
+
'type' => 'text',
|
272 |
+
'label' => __( 'reCAPTCHA v3 Site Key', 'so-widgets-bundle' ),
|
273 |
+
'state_handler' => array(
|
274 |
+
'recaptcha_version[v3]' => array( 'show' ),
|
275 |
+
'_else[recaptcha_version]' => array( 'hide' ),
|
276 |
+
),
|
277 |
+
),
|
278 |
+
'secret_key_v3' => array(
|
279 |
+
'type' => 'text',
|
280 |
+
'label' => __( 'reCAPTCHA v3 Secret Key', 'so-widgets-bundle' ),
|
281 |
+
'state_handler' => array(
|
282 |
+
'recaptcha_version[v3]' => array( 'show' ),
|
283 |
+
'_else[recaptcha_version]' => array( 'hide' ),
|
284 |
),
|
285 |
),
|
286 |
'theme' => array(
|
292 |
'dark' => __( 'Dark', 'so-widgets-bundle' ),
|
293 |
),
|
294 |
'state_handler' => array(
|
295 |
+
'recaptcha_version[v2]' => array( 'slideDown' ),
|
296 |
+
'_else[recaptcha_version]' => array( 'slideUp' ),
|
297 |
),
|
298 |
),
|
299 |
'type' => array(
|
305 |
'audio' => __( 'Audio', 'so-widgets-bundle' ),
|
306 |
),
|
307 |
'state_handler' => array(
|
308 |
+
'recaptcha_version[v2]' => array( 'slideDown' ),
|
309 |
+
'_else[recaptcha_version]' => array( 'slideUp' ),
|
310 |
),
|
311 |
),
|
312 |
'size' => array(
|
318 |
'compact' => __( 'Compact', 'so-widgets-bundle' ),
|
319 |
),
|
320 |
'state_handler' => array(
|
321 |
+
'recaptcha_version[v2]' => array( 'slideDown' ),
|
322 |
+
'_else[recaptcha_version]' => array( 'slideUp' ),
|
323 |
),
|
324 |
),
|
325 |
)
|
787 |
$instance['settings']['on_click'] = $instance['settings']['onclick'];
|
788 |
}
|
789 |
|
790 |
+
// If using an older version of reCAPTCHA settings, migrate.
|
791 |
+
if (
|
792 |
+
! empty( $instance['spam'] ) &&
|
793 |
+
! empty( $instance['spam']['recaptcha'] ) &&
|
794 |
+
$instance['spam']['recaptcha']['use_captcha'] === true
|
795 |
+
) {
|
796 |
+
$instance['spam']['recaptcha']['use_captcha'] = 'v2';
|
797 |
+
}
|
798 |
+
|
799 |
return $instance;
|
800 |
}
|
801 |
|
802 |
+
static function is_recaptcha_enabled( $settings, $use_v3 = false ) {
|
803 |
+
return ! empty( $settings['use_captcha'] ) &&
|
804 |
+
(
|
805 |
+
! $use_v3 ||
|
806 |
+
$settings['use_captcha'] == 'v3'
|
807 |
+
) &&
|
808 |
+
(
|
809 |
+
// Check for v2
|
810 |
+
(
|
811 |
+
! $use_v3 &&
|
812 |
+
! empty( $settings['site_key'] ) &&
|
813 |
+
! empty( $settings['secret_key'] )
|
814 |
+
) ||
|
815 |
+
// Check for v3
|
816 |
+
(
|
817 |
+
! empty( $settings['site_key_v3'] ) &&
|
818 |
+
! empty( $settings['secret_key_v3'] )
|
819 |
+
)
|
820 |
+
);
|
821 |
+
}
|
822 |
+
|
823 |
function get_template_variables( $instance, $args ) {
|
824 |
unset( $instance['title'] );
|
825 |
unset( $instance['display_title'] );
|
826 |
unset( $instance['design'] );
|
827 |
unset( $instance['panels_info'] );
|
828 |
|
829 |
+
$template_vars = array(
|
830 |
+
'onclick' => ! empty( $instance['settings']['on_click'] ) ? $instance['settings']['on_click'] : '',
|
831 |
+
);
|
832 |
+
|
833 |
// Include '_sow_form_id' in generation of 'instance_hash' to allow multiple instances of the same form on a page.
|
834 |
+
$template_vars['instance_hash'] = md5( serialize( $instance ) );
|
835 |
unset( $instance['_sow_form_id'] );
|
836 |
|
837 |
$submit_attributes = array();
|
839 |
$submit_attributes['id'] = $instance['settings']['submit_id'];
|
840 |
}
|
841 |
|
842 |
+
$template_vars['recaptcha'] = self::is_recaptcha_enabled( $instance['spam']['recaptcha'] );
|
843 |
+
if ( $template_vars['recaptcha'] ) {
|
844 |
+
// reCAPTCHA v3
|
845 |
+
if ( self::is_recaptcha_enabled( $instance['spam']['recaptcha'], true ) ) {
|
846 |
+
$submit_attributes['data-sitekey'] = $instance['spam']['recaptcha']['site_key_v3'];
|
847 |
+
$submit_attributes['data-callback'] = 'soContactFormSubmit';
|
848 |
+
$submit_attributes['data-action'] = 'submit';
|
849 |
+
} else { // reCAPTCHA v2
|
850 |
+
$template_vars['recaptcha_v2'] = array(
|
851 |
+
'sitekey' => $instance['spam']['recaptcha']['site_key'],
|
852 |
+
'theme' => $instance['spam']['recaptcha']['theme'],
|
853 |
+
'type' => $instance['spam']['recaptcha']['type'],
|
854 |
+
'size' => $instance['spam']['recaptcha']['size']
|
855 |
+
);
|
856 |
+
}
|
857 |
+
}
|
858 |
+
$template_vars['submit_attributes'] = $submit_attributes;
|
859 |
+
return $template_vars;
|
860 |
}
|
861 |
|
862 |
function get_settings_form() {
|
1304 |
*/
|
1305 |
function spam_check( $post_vars, $email_fields, $instance ) {
|
1306 |
$errors = array();
|
1307 |
+
if ( self::is_recaptcha_enabled( $instance['spam']['recaptcha'] ) ) {
|
|
|
|
|
|
|
1308 |
$result = wp_remote_post(
|
1309 |
'https://www.google.com/recaptcha/api/siteverify',
|
1310 |
array(
|
1311 |
'body' => array(
|
1312 |
+
'secret' => $instance['spam']['recaptcha']['use_captcha'] == 'v2' ? $instance['spam']['recaptcha']['secret_key'] : $instance['spam']['recaptcha']['secret_key_v3'],
|
1313 |
'response' => $post_vars['g-recaptcha-response'],
|
1314 |
'remoteip' => isset( $_SERVER['REMOTE_ADDR'] ) ? $_SERVER['REMOTE_ADDR'] : null,
|
1315 |
)
|
widgets/contact/js/contact.js
CHANGED
@@ -32,8 +32,9 @@ sowb.SiteOriginContactForm = {
|
|
32 |
return;
|
33 |
}
|
34 |
}
|
35 |
-
var $submitButton = $(this).find('.sow-submit-wrapper >
|
36 |
-
|
|
|
37 |
// Render recaptcha
|
38 |
var $recaptchaDiv = $el.find('.sow-recaptcha');
|
39 |
if ($recaptchaDiv.length) {
|
@@ -77,24 +78,34 @@ function soContactFormInitialize() {
|
|
77 |
sowb.SiteOriginContactForm.init(window.jQuery, true);
|
78 |
}
|
79 |
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
var useRecaptcha = $contactForms.toArray().some(function (form) {
|
85 |
-
return $(form).find('div').hasClass('sow-recaptcha');
|
86 |
-
});
|
87 |
|
88 |
-
|
|
|
|
|
|
|
89 |
if (window.recaptcha) {
|
90 |
-
sowb.SiteOriginContactForm.init($,
|
91 |
} else {
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
}
|
97 |
} else {
|
98 |
-
sowb.SiteOriginContactForm.init($,
|
99 |
}
|
100 |
-
});
|
32 |
return;
|
33 |
}
|
34 |
}
|
35 |
+
var $submitButton = $( this ).find( '.sow-submit-wrapper > .sow-submit' );
|
36 |
+
|
37 |
+
if ( useRecaptcha && sowb.SiteOriginContactFormV2 ) {
|
38 |
// Render recaptcha
|
39 |
var $recaptchaDiv = $el.find('.sow-recaptcha');
|
40 |
if ($recaptchaDiv.length) {
|
78 |
sowb.SiteOriginContactForm.init(window.jQuery, true);
|
79 |
}
|
80 |
|
81 |
+
// reCAPTCHA v3 form submission.
|
82 |
+
function soContactFormSubmit( token, e ) {
|
83 |
+
sowb.SiteOriginContactFormV3.parent().parent().trigger( 'submit' );
|
84 |
+
}
|
|
|
|
|
|
|
85 |
|
86 |
+
jQuery( function ( $ ) {
|
87 |
+
var recaptcha = $( 'form.sow-contact-form .sow-recaptcha' );
|
88 |
+
// Check if reCAPTCHA is being used.
|
89 |
+
if ( recaptcha.length ) {
|
90 |
if (window.recaptcha) {
|
91 |
+
sowb.SiteOriginContactForm.init( $, recaptcha );
|
92 |
} else {
|
93 |
+
var apiUrl = 'https://www.google.com/recaptcha/api.js?onload=soContactFormInitialize';
|
94 |
+
// v2 requires a specific render type.
|
95 |
+
if ( recaptcha.first().data( 'config' ) != undefined ) {
|
96 |
+
sowb.SiteOriginContactFormV2 = true;
|
97 |
+
apiUrl += '&render=explicit';
|
98 |
+
} else {
|
99 |
+
// v3 requires a click event for submission.
|
100 |
+
$( 'button.sow-submit ' ).on( 'click', function( e ) {
|
101 |
+
e.preventDefault();
|
102 |
+
sowb.SiteOriginContactFormV3 = $( this );
|
103 |
+
} );
|
104 |
+
}
|
105 |
+
var script = $( '<script type="text/javascript" src="' + apiUrl + '" async defer>' );
|
106 |
+
$( 'body' ).append( script );
|
107 |
}
|
108 |
} else {
|
109 |
+
sowb.SiteOriginContactForm.init( $, recaptcha );
|
110 |
}
|
111 |
+
} );
|
widgets/contact/js/contact.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
function soContactFormInitialize(){sowb.SiteOriginContactForm.init(window.jQuery,!0)}window.sowb=window.sowb||{},sowb.SiteOriginContactForm={init:function(i
|
1 |
+
function soContactFormInitialize(){sowb.SiteOriginContactForm.init(window.jQuery,!0)}function soContactFormSubmit(t,i){sowb.SiteOriginContactFormV3.parent().parent().trigger("submit")}window.sowb=window.sowb||{},sowb.SiteOriginContactForm={init:function(t,i){var o=t("form.sow-contact-form,.sow-contact-form-success");o.each((function(){var n=t(this),e=n.attr("id"),a=window.location.hash.indexOf(e)>-1,r=n.is(".sow-contact-form-success");if(a){var s=n.offset().top;if(n.is(":hidden")){var c=n.closest(":visible");if(s=c.offset().top,c.is(".sow-accordion-panel"))c.find("> .sow-accordion-panel-header-container > .sow-accordion-panel-header").trigger("click");else if(c.is(".sow-tabs-panel-container")){var w=n.closest(".sow-tabs-panel").index();c.siblings(".sow-tabs-tab-container").find("> .sow-tabs-tab").eq(w).trigger("click")}}if(t("html, body").scrollTop(s),r)return}var f=t(this).find(".sow-submit-wrapper > .sow-submit");if(i&&sowb.SiteOriginContactFormV2){var l=n.find(".sow-recaptcha");if(l.length){var p=l.data("config");f.prop("disabled",!0),grecaptcha.render(l.get(0),{sitekey:p.sitekey,theme:p.theme,type:p.type,size:p.size,callback:function(t){f.prop("disabled",!1)}})}}o.on("submit",(function(){f.prop("disabled",!0);var i=window.location.hash;if(i){var o=t(this).attr("action");if(i.indexOf(e)>-1){var n=new RegExp(e+",?","g");i=i.replace(n,"")}t(this).attr("action",o+","+i.replace(/^#/,""))}}))}))}},jQuery((function(t){var i=t("form.sow-contact-form .sow-recaptcha");if(i.length)if(window.recaptcha)sowb.SiteOriginContactForm.init(t,i);else{var o="https://www.google.com/recaptcha/api.js?onload=soContactFormInitialize";null!=i.first().data("config")?(sowb.SiteOriginContactFormV2=!0,o+="&render=explicit"):t("button.sow-submit ").on("click",(function(i){i.preventDefault(),sowb.SiteOriginContactFormV3=t(this)}));var n=t('<script type="text/javascript" src="'+o+'" async defer>');t("body").append(n)}else sowb.SiteOriginContactForm.init(t,i)}));
|
widgets/contact/tpl/default.php
CHANGED
@@ -15,11 +15,7 @@ if( $result['status'] == 'success' ) {
|
|
15 |
<?php
|
16 |
}
|
17 |
else {
|
18 |
-
$
|
19 |
-
$use_recaptcha = $recaptcha_config['use_captcha'] && ! empty( $recaptcha_config['site_key'] ) && ! empty( $recaptcha_config['secret_key'] );
|
20 |
-
|
21 |
-
$settings = null;
|
22 |
-
if( $use_recaptcha ) {
|
23 |
$settings = array(
|
24 |
'sitekey' => $recaptcha_config['site_key'],
|
25 |
'theme' => $recaptcha_config['theme'],
|
@@ -43,15 +39,23 @@ else {
|
|
43 |
<input type="hidden" name="instance_hash" value="<?php echo esc_attr( $instance_hash ) ?>" />
|
44 |
<?php wp_nonce_field( '_contact_form_submit' ) ?>
|
45 |
|
46 |
-
<?php if( $
|
47 |
<div class="sow-recaptcha"
|
48 |
-
|
|
|
|
|
|
|
49 |
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
|
51 |
-
<div class="sow-submit-wrapper <?php if( $instance['design']['submit']['styled'] ) echo 'sow-submit-styled' ?>">
|
52 |
-
<input type="submit" value="<?php echo esc_attr( $instance['settings']['submit_text'] ) ?>" class="sow-submit"
|
53 |
-
<?php foreach( $submit_attributes as $name => $val ) echo $name . '="' . esc_attr( $val ) . '" ' ?>
|
54 |
-
<?php if ( ! empty( $onclick ) ) echo 'onclick="' . esc_js( $onclick ) . '"'; ?>>
|
55 |
</div>
|
56 |
</form>
|
57 |
<?php
|
15 |
<?php
|
16 |
}
|
17 |
else {
|
18 |
+
if ( $recaptcha && ! empty( $recaptcha_v2 ) ) {
|
|
|
|
|
|
|
|
|
19 |
$settings = array(
|
20 |
'sitekey' => $recaptcha_config['site_key'],
|
21 |
'theme' => $recaptcha_config['theme'],
|
39 |
<input type="hidden" name="instance_hash" value="<?php echo esc_attr( $instance_hash ) ?>" />
|
40 |
<?php wp_nonce_field( '_contact_form_submit' ) ?>
|
41 |
|
42 |
+
<?php if ( $recaptcha ) : ?>
|
43 |
<div class="sow-recaptcha"
|
44 |
+
<?php if ( ! empty( $recaptcha_v2 ) ) : ?>
|
45 |
+
data-config="<?php echo esc_attr( json_encode( $recaptcha_v2 ) ) ?>"
|
46 |
+
<?php endif; ?>
|
47 |
+
></div>
|
48 |
<?php endif; ?>
|
49 |
+
<div class="sow-submit-wrapper <?php if( $instance['design']['submit']['styled'] ) echo 'sow-submit-styled'; ?>">
|
50 |
+
|
51 |
+
<button class="sow-submit<?php if ( $recaptcha && empty( $recaptcha_v2 ) ) echo ' g-recaptcha'; ?>"
|
52 |
+
<?php foreach( $submit_attributes as $name => $val ) echo $name . '="' . esc_attr( $val ) . '" ' ?>
|
53 |
+
<?php if ( ! empty( $onclick ) ) echo 'onclick="' . esc_js( $onclick ) . '"'; ?>
|
54 |
+
>
|
55 |
+
<?php echo esc_attr( $instance['settings']['submit_text'] ) ?>
|
56 |
+
</button>
|
57 |
+
|
58 |
|
|
|
|
|
|
|
|
|
59 |
</div>
|
60 |
</form>
|
61 |
<?php
|