PluginProbe
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More / 1.07.11
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More v1.07.11
6.35 6.34 6.33.1 6.33 6.32.1 6.32 6.31 6.25 6.25.1 6.26 6.26.1 6.27 6.28 6.29 6.3 6.3.1 6.3.2 6.30 6.4 6.4.1 6.4.2 6.5 6.5.1 6.5.2 6.5.3 All 141 releases
← All changes | formidable.php +89 -151 6.251.07.11 View file →
@@ -1,176 +1,114 @@
1 1 <?php
2 -/**
3 - * Plugin Name: Formidable Forms
4 - * Description: Quickly and easily create drag-and-drop forms
5 - * Version: 6.25
6 - * Plugin URI: https://formidableforms.com/
7 - * Author URI: https://formidableforms.com/
8 - * Author: Strategy11 Form Builder Team
9 - * Text Domain: formidable
10 - *
11 - * @package Formidable
12 - */
2 +/*
3 +Plugin Name: Formidable
4 +Description: Quickly and easily create drag-and-drop forms
5 +Version: 1.07.11
6 +Plugin URI: http://formidablepro.com/
7 +Author URI: http://strategy11.com
8 +Author: Strategy11
9 +Text Domain: formidable
10 +*/
13 11
14 -/*
15 - Copyright 2010 Formidable Forms
12 +/* Copyright 2010 Strategy11 (email : support@strategy11.com)
16 13
17 - This program is free software; you can redistribute it and/or modify
18 - it under the terms of the GNU General Public License, version 2, as
19 - published by the Free Software Foundation.
14 + This program is free software; you can redistribute it and/or modify
15 + it under the terms of the GNU General Public License, version 2, as
16 + published by the Free Software Foundation.
20 17
21 - This program is distributed in the hope that it will be useful,
22 - but WITHOUT ANY WARRANTY; without even the implied warranty of
23 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 - GNU General Public License for more details.
18 + This program is distributed in the hope that it will be useful,
19 + but WITHOUT ANY WARRANTY; without even the implied warranty of
20 + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 + GNU General Public License for more details.
25 22 */
26 23
27 -if ( ! defined( 'ABSPATH' ) ) {
28 - die( 'You are not allowed to call this page directly.' );
29 -}
24 +require_once(dirname( __FILE__ ) .'/classes/models/FrmSettings.php');
30 25
31 -add_action( 'plugins_loaded', 'load_formidable_forms', 0 );
32 -/**
33 - * @return void
34 - */
35 -function load_formidable_forms() {
36 - global $frm_vars;
37 - $frm_vars = array(
38 - 'load_css' => false,
39 - 'forms_loaded' => array(),
40 - 'created_entries' => array(),
41 - 'pro_is_authorized' => false,
42 - );
26 +global $frm_vars;
27 +$frm_vars = array(
28 + 'load_css' => false, 'forms_loaded' => array(),
29 + 'created_entries' => array(), 'pro_is_installed' => false
30 +);
43 31
44 - // For reverse compatibility. Load Pro if it's still nested.
45 - $frm_path = __DIR__;
46 - if ( file_exists( $frm_path . '/pro/formidable-pro.php' ) ) {
47 - include $frm_path . '/pro/formidable-pro.php';
48 - }
32 +require_once(dirname( __FILE__ ) .'/classes/helpers/FrmAppHelper.php');
33 +$obj = new FrmAppHelper();
49 34
50 - FrmHooksController::trigger_load_hook();
51 -}
35 +/***** SETUP SETTINGS OBJECT *****/
36 +global $frm_settings;
52 37
53 -// If __autoload is active, put it on the spl_autoload stack.
54 -if ( is_array( spl_autoload_functions() ) && in_array( '__autoload', spl_autoload_functions(), true ) ) {
55 - spl_autoload_register( '__autoload' );
56 -}
38 +$frm_settings = get_transient('frm_options');
39 +if(!is_object($frm_settings)){
40 + if($frm_settings){ //workaround for W3 total cache conflict
41 + $frm_settings = unserialize(serialize($frm_settings));
42 + }else{
43 + $frm_settings = get_option('frm_options');
57 44
58 -// Add the autoloader.
59 -spl_autoload_register( 'frm_forms_autoloader' );
60 -
61 -/**
62 - * @return void
63 - */
64 -function frm_forms_autoloader( $class_name ) {
65 - // Only load Frm classes here.
66 - if ( ! preg_match( '/^Frm.+$/', $class_name ) || preg_match( '/^FrmPro.+$/', $class_name ) ) {
67 - return;
68 - }
69 -
70 - frm_class_autoloader( $class_name, __DIR__ );
45 + // If unserializing didn't work
46 + if(!is_object($frm_settings)){
47 + if($frm_settings) //workaround for W3 total cache conflict
48 + $frm_settings = unserialize(serialize($frm_settings));
49 + else
50 + $frm_settings = new FrmSettings();
51 + update_option('frm_options', $frm_settings);
52 + set_transient('frm_options', $frm_settings);
53 + }
54 + }
71 55 }
56 +$frm_settings->set_default_options(); // Sets defaults for unset options
72 57
73 -/**
74 - * Autoload the Formidable and Pro classes
75 - *
76 - * @since 3.0
77 - *
78 - * @return void
79 - */
80 -function frm_class_autoloader( $class_name, $filepath ) {
81 - $deprecated = array( 'FrmEDD_SL_Plugin_Updater' );
82 - $is_deprecated = in_array( $class_name, $deprecated, true ) || preg_match( '/^.+Deprecate/', $class_name );
83 - $original_filepath = $filepath;
58 +$frm_path = FrmAppHelper::plugin_path();
84 59
85 - if ( $is_deprecated ) {
86 - $filepath .= '/deprecated/';
87 - } else {
88 - $filepath .= '/classes/';
89 - if ( preg_match( '/^.+Helper$/', $class_name ) ) {
90 - $filepath .= 'helpers/';
91 - } elseif ( preg_match( '/^.+Controller$/', $class_name ) ) {
92 - $filepath .= 'controllers/';
93 - } elseif ( preg_match( '/^.+Factory$/', $class_name ) ) {
94 - $filepath .= 'factories/';
95 - } elseif ( preg_match( '/^.+StyleComponent$/', $class_name ) ) {
96 - $filepath .= 'views/styles/components/';
97 - } else {
98 - $filepath .= 'models/';
99 - if ( strpos( $class_name, 'Field' ) && ! file_exists( $filepath . $class_name . '.php' ) ) {
100 - $filepath .= 'fields/';
101 - }
102 - }
103 - }
60 +// Instansiate Models
61 +require_once($frm_path .'/classes/models/FrmDb.php');
62 +require_once($frm_path .'/classes/models/FrmField.php');
63 +require_once($frm_path .'/classes/models/FrmForm.php');
64 +require_once($frm_path .'/classes/models/FrmEntry.php');
65 +require_once($frm_path .'/classes/models/FrmEntryMeta.php');
66 +require_once($frm_path .'/classes/models/FrmNotification.php');
104 67
105 - if ( file_exists( $filepath . $class_name . '.php' ) ) {
106 - require $filepath . $class_name . '.php';
107 - return;
108 - }
68 +global $frmdb;
69 +global $frm_field;
70 +global $frm_form;
71 +global $frm_entry;
72 +global $frm_entry_meta;
109 73
110 - if ( preg_match( '/^FrmStrpLite.+$/', $class_name ) || preg_match( '/^FrmTransLite.+$/', $class_name ) ) {
111 - // Autoload for /stripe/ folder.
112 - $filepath = $original_filepath . '/stripe/';
113 - if ( preg_match( '/^.+Helper$/', $class_name ) ) {
114 - $filepath .= 'helpers/';
115 - } elseif ( preg_match( '/^.+Controller$/', $class_name ) ) {
116 - $filepath .= 'controllers/';
117 - } else {
118 - $filepath .= 'models/';
119 - }
74 +$frmdb = new FrmDb();
75 +$frm_field = new FrmField();
76 +$frm_form = new FrmForm();
77 +$frm_entry = new FrmEntry();
78 +$frm_entry_meta = new FrmEntryMeta();
79 +$obj = new FrmNotification();
120 80
121 - $filepath .= $class_name . '.php';
122 81
123 - if ( file_exists( $filepath ) ) {
124 - require $filepath;
125 - }
82 +// Instansiate Controllers
83 +require_once($frm_path .'/classes/controllers/FrmAppController.php');
84 +require_once($frm_path .'/classes/controllers/FrmFieldsController.php');
85 +require_once($frm_path .'/classes/controllers/FrmFormsController.php');
86 +require_once($frm_path .'/classes/controllers/FrmEntriesController.php');
126 87
127 - return;
128 - }
88 +FrmAppController::load_hooks();
89 +FrmEntriesController::load_hooks();
90 +FrmFieldsController::load_hooks();
91 +FrmFormsController::load_hooks();
129 92
130 - if ( preg_match( '/^FrmSquareLite.+$/', $class_name ) ) {
131 - $filepath = $original_filepath . '/square/';
132 - if ( preg_match( '/^.+Helper$/', $class_name ) ) {
133 - $filepath .= 'helpers/';
134 - } elseif ( preg_match( '/^.+Controller$/', $class_name ) ) {
135 - $filepath .= 'controllers/';
136 - } else {
137 - $filepath .= 'models/';
138 - }
139 -
140 - $filepath .= $class_name . '.php';
141 -
142 - if ( file_exists( $filepath ) ) {
143 - require $filepath;
144 - }
145 - }
93 +if(is_admin()){
94 + require_once($frm_path .'/classes/controllers/FrmSettingsController.php');
95 + FrmSettingsController::load_hooks();
96 +
97 + require_once($frm_path .'/classes/controllers/FrmStatisticsController.php');
98 + FrmStatisticsController::load_hooks();
99 +
100 + require_once($frm_path .'/classes/controllers/FrmXMLController.php');
101 + FrmXMLController::load_hooks();
146 102 }
147 103
148 -add_action( 'activate_' . FrmAppHelper::plugin_folder() . '/formidable.php', 'frm_maybe_install' );
104 +// Instansiate Helpers
105 +require_once($frm_path .'/classes/helpers/FrmEntriesHelper.php');
106 +require_once($frm_path .'/classes/helpers/FrmFieldsHelper.php');
107 +require_once($frm_path .'/classes/helpers/FrmFormsHelper.php');
149 108
150 -/**
151 - * This function is triggered when Formidable is activated.
152 - *
153 - * @return void
154 - */
155 -function frm_maybe_install() {
156 - if ( get_transient( FrmOnboardingWizardController::TRANSIENT_NAME ) !== 'no' ) {
157 - set_transient(
158 - FrmOnboardingWizardController::TRANSIENT_NAME,
159 - FrmOnboardingWizardController::TRANSIENT_VALUE,
160 - 60
161 - );
162 - }
163 -
164 - FrmAppController::handle_activation();
109 +if ( file_exists($frm_path . '/pro/formidable-pro.php') ) {
110 + require_once($frm_path .'/pro/formidable-pro.php');
165 111 }
166 112
167 -register_deactivation_hook(
168 - __FILE__,
169 - function () {
170 - if ( ! class_exists( 'FrmCronController', false ) ) {
171 - require_once __DIR__ . '/classes/controllers/FrmCronController.php';
172 - }
173 -
174 - FrmCronController::remove_crons();
175 - }
176 -);
113 +include_once($frm_path .'/deprecated.php');
114 +unset($frm_path);