/** * Easy Contact Forms entrypoint * */ function easycontactforms_entrypoint() { $l_locale = get_locale(); $map = $_REQUEST; if (!defined('EASYCONTACTFORMS__APPLICATION_ROOT')) { DEFINE('EASYCONTACTFORMS__APPLICATION_ROOT', rtrim(get_bloginfo('wpurl'), '/')); } if (!defined('EASYCONTACTFORMS__engineWebAppDirectory')) { DEFINE('EASYCONTACTFORMS__engineWebAppDirectory', plugins_url('', __FILE__)); } if (!defined('_EASYCONTACTFORMS_PLUGIN_PATH')) { DEFINE('_EASYCONTACTFORMS_PLUGIN_PATH', rtrim(plugin_dir_path(__FILE__), "/\\")); } $tag = strtolower(str_replace('_', '-', $l_locale)); $map['l'] = $tag; require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-strings.php'; if (!@(include_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-resources_' . $tag . '.php')) { require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-resources_en-gb.php'; $map['l'] = 'en-gb'; } require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-utils.php'; require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-database.php'; require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-root.php'; require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-applicationsettings.php'; require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-appconfigdata.php'; require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-securitymanager.php'; global $current_user; $userid = $current_user->ID; unset($map['frid']); $map['frid'] = $userid; if (isset($map['ac']) && $map['ac'] == '1') { EasyContactFormsRoot::ajaxCall($map); die; } $map = EasyContactFormsSecurityManager::getRights($map); if (isset($map['m']) && $map['m'] == 'download') { EasyContactFormsRoot::download($map); die; } if (!isset($map['m'])) { $map['m'] = 'show'; } if (!isset($map['t'])) { $map['t'] = 'DashBoardView'; } wp_enqueue_script('jquery'); wp_enqueue_script('jquery-ui-core'); wp_enqueue_script('jquery-ui-widget'); wp_enqueue_script('jquery-ui-mouse'); wp_enqueue_script('jquery-ui-sortable'); wp_enqueue_style('easy-contact-forms-admin-ui-css', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/themes/smoothness/jquery-ui.css', false, '1.4.9', false); wp_enqueue_script('jquery-ui-draggable'); wp_enqueue_script('jquery-ui-position'); wp_enqueue_script('jquery-ui-resizable'); wp_enqueue_script('jquery-ui-dialog'); wp_enqueue_script('json-json', plugins_url('js/json.js', __FILE__)); wp_enqueue_script('easy-contact-forms-html', plugins_url('easy-contact-formshtml.1.4.9.js', __FILE__)); wp_enqueue_script('jqui-scrollto', plugins_url('js/jqui/scrollto.js', __FILE__)); wp_enqueue_script('js-as', plugins_url('js/as.js', __FILE__)); wp_enqueue_script('calendar-stripped', plugins_url('js/calendar/calendar_stripped.js', __FILE__)); wp_enqueue_script('calendar-setup-stripped', plugins_url('js/calendar/calendar-setup_stripped.js', __FILE__)); wp_enqueue_script('calendar-lang-en', plugins_url('js/calendar/lang/calendar-en.js', __FILE__)); wp_enqueue_script('js-as', plugins_url('js/as.js', __FILE__)); if (EasyContactFormsApplicationSettings::getInstance()->get('UseTinyMCE')) { wp_enqueue_script('tiny_mce', plugins_url('js/tinymce/tiny_mce.js', __FILE__)); } $js = "config = {};"; $js .= "config.url='" . admin_url('admin-ajax.php') . "';"; $js .= "config.phonenumberre=/^" . EasyContactFormsApplicationSettings::getInstance()->get('PhoneRegEx') . "/;"; $js .= "config.initial = {t:'" . $map['t'] . "', m:'" . $map['m'] . "'};"; $js .= "config.bodyid = 'divEasyContactForms';"; $js .= "config.resources = {};"; $js .= "config.resources['EmailFormatIsExpected'] = " . json_encode(EasyContactFormsT::get('EmailFormatIsExpected')) . ";"; $js .= "config.resources['ValueLengthShouldBeBetween'] = " . json_encode(EasyContactFormsT::get('ValueLengthShouldBeBetween')) . ";"; $js .= "config.resources['ValueLengthShouldBeMoreThan'] = " . json_encode(EasyContactFormsT::get('ValueLengthShouldBeMoreThan')) . ";"; $js .= "config.resources['ValueLengthShouldBeLessThan'] = " . json_encode(EasyContactFormsT::get('ValueLengthShouldBeLessThan')) . ";"; $js .= "config.resources['ThisIsAPhoneNumber'] = " . json_encode(EasyContactFormsT::get('ThisIsAPhoneNumber')) . ";"; $js .= "config.resources['ThisIsAnIntegerField'] = " . json_encode(EasyContactFormsT::get('ThisIsAnIntegerField')) . ";"; $js .= "config.resources['ThisFieldIsRequired'] = " . json_encode(EasyContactFormsT::get('ThisFieldIsRequired')) . ";"; $js .= "config.resources['ThisIsAFieldOfCurrencyFormat'] = " . json_encode(EasyContactFormsT::get('ThisIsAFieldOfCurrencyFormat')) . ";"; $js .= "config.resources['ItwillDeleteRecordsAreYouSure'] = " . json_encode(EasyContactFormsT::get('ItwillDeleteRecordsAreYouSure')) . ";"; $js .= "config.resources['NoRecordsSelected'] = " . json_encode(EasyContactFormsT::get('NoRecordsSelected')) . ";"; $js .= "config.resources['CloseFilter'] = " . json_encode(EasyContactFormsT::get('CloseFilter')) . ";"; $js .= "config.resources['Search'] = " . json_encode(EasyContactFormsT::get('Search')) . ";"; $js .= "config.resources['NoResults'] = " . json_encode(EasyContactFormsT::get('NoResults')) . ";"; $js .= "config.resources['Uploading'] = " . json_encode(EasyContactFormsT::get('Uploading')) . ";"; $js .= "config.resources['Upload'] = " . json_encode(EasyContactFormsT::get('Upload')) . ";"; $js .= "config.resources['ItWillReorderFieldsets'] = " . json_encode(EasyContactFormsT::get('ItWillReorderFieldsets')) . ";"; $js .= "config.resources['CF_Pin'] = " . json_encode(EasyContactFormsT::get('CF_Pin')) . ";"; $js .= "config.resources['CF_UnPin'] = " . json_encode(EasyContactFormsT::get('CF_UnPin')) . ";"; $js .= "var appManConfig = config;"; echo "<link href='" . EASYCONTACTFORMS__engineWebAppDirectory . '/js/calendar/css/calendar-system.css' . "' rel='stylesheet' type='text/css'/>"; if (function_exists('is_admin')) { $paramName = is_admin() ? 'DefaultStyle2' : 'DefaultStyle'; $styleName = EasyContactFormsApplicationSettings::getInstance()->get($paramName); $paramName = is_admin() ? 'ApplicationWidth2' : 'ApplicationWidth'; $appWidth = EasyContactFormsApplicationSettings::getInstance()->get($paramName); } else { $styleName = EASYCONTACTFORMS__DEFAULT_STYLE; $appWidth = EasyContactFormsApplicationSettings::getInstance()->get('ApplicationWidth'); } $wrStyle = 'style=\'width:' . $appWidth . 'px\''; require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'styles' . DIRECTORY_SEPARATOR . $styleName . DIRECTORY_SEPARATOR . 'easy-contact-forms-getstyle.php'; require_once _EASYCONTACTFORMS_PLUGIN_PATH . DIRECTORY_SEPARATOR . 'easy-contact-forms-menu.php'; echo "<div id='ufo-app-wrapper' {$wrStyle}>"; EasyContactFormsMenu::getMenu($map); echo "<div id='divEasyContactForms'>"; echo "<script>{$js}</script>"; echo EasyContactFormsRoot::processRequest($map); echo "</div>"; echo "</div>"; }
/** * ajaxCall * * handles ajax-based requests * * @param array $_acmap * request data * * @return string * arbitrary data in response to requests */ function ajaxCall($_acmap) { header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: no-cache, must-revalidate"); header("Pragma: no-cache"); $_acmap = EasyContactFormsSecurityManager::getRights($_acmap); echo EasyContactFormsRoot::processRequest($_acmap); }
/** * getForm * * @param $map * * * @return * */ function getForm($map) { $fid = isset($map['fid']) ? intval($map['fid']) : 0; if ($fid == 0) { return ''; } $cfid = isset($map['hidden-' . $fid]); $form = new EasyContactFormsCustomForms(true, $fid); if (!$form->isValid()) { return ''; } $map = EasyContactFormsSecurityManager::getRights($map); $form->user = $map['easycontactusr']; if (!$cfid) { if (isset($map['pn'])) { $form->pageName = $map['pn']; $fpstat = EasyContactFormsClassLoader::getObject('CustomFormEntryStatistics'); $fpstat->increaseImpressions($form); } $html = $form->preprocess(); $form->set('Impressions', $form->get('Impressions') + 1); $form->save(); } else { $html = $form->preprocess($map); if (!isset($form->sendBack) || $form->sendBack == FALSE) { $form->newEntry($map); $html = array(); $html[] = $form->loadStyle(); if (!$form->isEmpty('StyleSheet')) { $html[] = '<style>' . $form->get('StyleSheet') . '</style>'; } $submitsuccessclass = $form->isEmpty('SuccessMessageClass') ? 'ufo-form-submit-success' : $form->get('SuccessMessageClass'); $submitsuccesstext = $form->isEmpty('SubmissionSuccessText') ? '' : $form->get('SubmissionSuccessText'); $html[] = "<div class='{$submitsuccessclass}'>{$submitsuccesstext}</div>"; $html = implode('', $html); } } return $html; }
/** * intercept * * Checks ACL * * @param array $_imap * Request data * * @return array * Request data */ function intercept($_imap) { $_imap = EasyContactFormsSecurityManager::getRights($_imap); $viewname = EasyContactFormsSecurityManager::getViewName($_imap); if (!isset($viewname) || $viewname == '') { return NULL; } $_imap['n'] = $viewname; return $_imap; }