PluginProbe
Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder / 6.2.14
Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder v6.2.14
6.2.14 6.2.13 6.2.12 6.2.10 6.2.11 6.2.9 6.2.8 6.2.7 6.2.6 6.2.5 6.2.4 6.2.3 6.2.2 3.6.22 3.6.31 3.6.40 3.6.41 3.6.42 3.6.50 3.6.51 3.6.60 3.6.61 3.6.62 3.6.64 3.6.65 All 196 releases
← All changes | app/Modules/AddOnModule.php +71 -14 6.2.46.2.14 View file →
@@ -26,13 +26,13 @@
26 26 */
27 27 public function render()
28 28 {
29 29 $extraMenus = [];
30 -
30 +
31 31 $extraMenus = apply_filters_deprecated(
32 32 'fluentform_addons_extra_menu',
33 33 [
34 - $extraMenus
34 + $extraMenus,
35 35 ],
36 36 FLUENTFORM_FRAMEWORK_UPGRADE,
37 37 'fluentform/addons_extra_menu',
38 38 'Use fluentform/addons_extra_menu instead of fluentform_addons_extra_menu'
@@ -64,13 +64,29 @@
64 64 */
65 65 public function showFluentAddOns()
66 66 {
67 67 wp_enqueue_script('fluentform-modules');
68 -
68 +
69 + $addOns = $this->getRegisteredAddOns();
70 +
71 + wp_localize_script('fluentform-modules', 'fluent_addon_modules', [
72 + 'addons' => $addOns,
73 + 'has_pro' => defined('FLUENTFORMPRO'),
74 + 'addOnModule_str' => TranslationString::getAddOnModuleI18n(),
75 + ]);
76 +
77 + wpFluentForm('view')->render('admin.addons.list', []);
78 + }
79 +
80 + /**
81 + * The registry the Add-on Modules screen renders from, so the status writer can validate against the same source.
82 + */
83 + public function getRegisteredAddOns()
84 + {
69 85 $addOns = apply_filters_deprecated(
70 86 'fluentform_global_addons',
71 87 [
72 - []
88 + [],
73 89 ],
74 90 FLUENTFORM_FRAMEWORK_UPGRADE,
75 91 'fluentform/global_addons',
76 92 'Use fluentform/global_addons instead of fluentform_global_addons'
@@ -89,21 +105,15 @@
89 105 if (!defined('FLUENTFORMPRO')) {
90 106 $addOns = array_merge($addOns, $this->getPremiumAddOns());
91 107 }
92 108
93 - wp_localize_script('fluentform-modules', 'fluent_addon_modules', [
94 - 'addons' => $addOns,
95 - 'has_pro' => defined('FLUENTFORMPRO'),
96 - 'addOnModule_str' => TranslationString::getAddOnModuleI18n(),
97 - ]);
109 + return $addOns;
110 + }
98 111
99 - wpFluentForm('view')->render('admin.addons.list', []);
100 - }
101 -
102 112 public function getPremiumAddOns()
103 113 {
104 114 $purchaseUrl = fluentform_upgrade_url();
105 - return [
115 + $addOns = [
106 116 'paypal' => [
107 117 'title' => __('PayPal', 'fluentform'),
108 118 'description' => __('Accept Payments via paypal as a part of your form submission', 'fluentform'),
109 119 'logo' => fluentFormMix('img/integrations/paypal.png'),
@@ -382,8 +392,48 @@
382 392 'enabled' => 'no',
383 393 'purchase_url' => $purchaseUrl,
384 394 'category' => 'crm',
385 395 ],
396 + 'pipedrive' => [
397 + 'title' => __('Pipedrive', 'fluentform'),
398 + 'description' => __('By connecting Pipedrive with Fluent Forms, you can connect and organize leads and more.', 'fluentform'),
399 + 'logo' => fluentFormMix('img/integrations/pipedrive.png'),
400 + 'enabled' => 'no',
401 + 'purchase_url' => $purchaseUrl,
402 + 'category' => 'crm',
403 + ],
404 + 'amocrm' => [
405 + 'title' => __('amoCRM', 'fluentform'),
406 + 'description' => __('It can be a great way to manage your leads and tasks with amoCRM and Fluent Forms.', 'fluentform'),
407 + 'logo' => fluentFormMix('img/integrations/amocrm.png'),
408 + 'enabled' => 'no',
409 + 'purchase_url' => $purchaseUrl,
410 + 'category' => 'crm',
411 + ],
412 + 'onepagecrm' => [
413 + 'title' => __('OnePageCRM', 'fluentform'),
414 + 'description' => __('Complete your actions with the combination of Fluent Forms and OnePageCRM to collect leads and more.', 'fluentform'),
415 + 'logo' => fluentFormMix('img/integrations/onepagecrm.png'),
416 + 'enabled' => 'no',
417 + 'purchase_url' => $purchaseUrl,
418 + 'category' => 'crm',
419 + ],
420 + 'insightly' => [
421 + 'title' => __('Insightly', 'fluentform'),
422 + 'description' => __('With Insightly CRM, you can tailor the standard sales processes of contact, lead and opportunity management.', 'fluentform'),
423 + 'logo' => fluentFormMix('img/integrations/insightly.png'),
424 + 'enabled' => 'no',
425 + 'purchase_url' => $purchaseUrl,
426 + 'category' => 'crm',
427 + ],
428 + 'mailster' => [
429 + 'title' => __('Mailster', 'fluentform'),
430 + 'description' => __('Send Beautiful Email Newsletters in WordPress. Join more than 26,000 people worldwide and use Mailster to grow your business.', 'fluentform'),
431 + 'logo' => fluentFormMix('img/integrations/mailster.png'),
432 + 'enabled' => 'no',
433 + 'purchase_url' => $purchaseUrl,
434 + 'category' => 'crm',
435 + ],
386 436 'quiz_addon' => [
387 437 'title' => __('Quiz Module', 'fluentform'),
388 438 'description' => __('With this module, you can create quizzes and show scores with grades, points, fractions, or percentages', 'fluentform'),
389 439 'logo' => fluentFormMix('img/integrations/quiz-icon.svg'),
@@ -399,8 +449,15 @@
399 449 'purchase_url' => $purchaseUrl,
400 450 'category' => 'crm',
401 451 ],
402 452 ];
453 +
454 + foreach ($addOns as $key => &$addOn) {
455 + $feature = strtolower(preg_replace('/(?<!^)[A-Z]/', '_$0', $key));
456 + $addOn['purchase_url'] = fluentform_upgrade_url('feature_lock_' . $feature);
457 + }
458 +
459 + return $addOns;
403 460 }
404 461
405 462 /**
406 463 * Show the suggested plugins list.
@@ -546,9 +603,9 @@
546 603 private function getPluginStatus($pluginSlug)
547 604 {
548 605 // Check if plugin file exists
549 606 $pluginFile = WP_PLUGIN_DIR . '/' . $pluginSlug;
550 -
607 +
551 608 if (!file_exists($pluginFile)) {
552 609 return 'not_installed';
553 610 }
554 611