function wpsugar_execute_config($configFile) { $config = WPSugar\Config::load($configFile); if (!$config || !is_array($config)) { return; } if (isset($config['custom_types']) && is_array($config['custom_types'])) { foreach ($config['custom_types'] as $customTypeFields) { $manager = new WPSugar\CustomTypesManager($customTypeFields); try { $manager->register(); } catch (Exception $e) { } } } if (isset($config['options']) && is_array($config['options'])) { foreach ($config['options'] as $optgroup) { $manager = new WPSugar\OptionsManager($optgroup); try { $manager->register(); } catch (Exception $e) { } } } if (isset($config['forms']) && is_array($config['forms'])) { foreach ($config['forms'] as $form) { $manager = new WPSugar\FormsManager($form); try { $manager->register(); } catch (Exception $e) { } } } }
function wpsugar_form_shortcode($atts = array()) { if (!isset($atts['form']) || !$atts['form']) { return ''; } $atts = array_merge(array('template' => 'wpsugar-form'), $atts); $config = WPSugar\Config::get(); if (!$config || !isset($config['forms']) || !is_array($config['forms'])) { return; } foreach ($config['forms'] as $item) { if ($item['name'] === $atts['form']) { $form = $item; break; } } if (!isset($form) || !$form) { return; } return WPSugar\View::render($atts['template'], array('form' => $form), false); }