/**
  * 	getMenu
  *
  * 	Main menu function
  *
  * @param array $menumap
  * 	Request data
  */
 function getMenu($menumap)
 {
     if (isset($menumap['r'])) {
         return '';
     }
     $role = $menumap['easycontactusr']->role->Description;
     switch ($role) {
         case 'Guest':
             return EasyContactFormsMenu::getGuestMenu($menumap);
         case 'SuperAdmin':
             return EasyContactFormsMenu::getSuperAdminMenu($menumap);
         default:
             return '';
     }
 }
Example #2
0
/**
 * 	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>";
}