Exemplo n.º 1
0
    function displayTMCE()
    {
        require_once "include/SugarTinyMCE.php";
        global $locale;
        $tiny = new SugarTinyMCE();
        $tinyMCE = $tiny->getConfig();
        $js = <<<JS
\t\t<script language="javascript" type="text/javascript">
\t\t{$tinyMCE}
\t\tvar df = '{$locale->getPrecedentPreference('default_date_format')}';

 \t\ttinyMCE.init({
    \t\ttheme : "advanced",
    \t\ttheme_advanced_toolbar_align : "left",
    \t\tmode: "exact",
\t\t\telements : "description",
\t\t\ttheme_advanced_toolbar_location : "top",
\t\t\ttheme_advanced_buttons1: "code,help,separator,bold,italic,underline,strikethrough,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,forecolor,backcolor,separator,styleprops,styleselect,formatselect,fontselect,fontsizeselect",
\t\t\ttheme_advanced_buttons2: "cut,copy,paste,pastetext,pasteword,selectall,separator,search,replace,separator,bullist,numlist,separator,outdent,indent,separator,ltr,rtl,separator,undo,redo,separator, link,unlink,anchor,separator,sub,sup,separator,charmap,visualaid",
\t\t\ttheme_advanced_buttons3: "tablecontrols,separator,advhr,hr,removeformat,separator,insertdate,pagebreak",
\t\t\ttheme_advanced_fonts:"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Helvetica Neu=helveticaneue,sans-serif;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",
\t\t\tplugins : "advhr,insertdatetime,table,paste,searchreplace,directionality,style,pagebreak",
\t\t\theight:"auto",
\t\t\twidth: "auto",
\t\t\tinline_styles : true,
\t\t\tdirectionality : "ltr",
\t\t\tremove_redundant_brs : true,
\t\t\tentity_encoding: 'raw',
\t\t\tcleanup_on_startup : true,
\t\t\tstrict_loading_mode : true,
\t\t\tconvert_urls : false,
\t\t\tplugin_insertdate_dateFormat : '{DATE '+df+'}',
\t\t\tpagebreak_separator : "<pagebreak />",
\t\t\textended_valid_elements : "textblock",
\t\t\tcustom_elements: "textblock",
\t\t});
\t\t</script>

JS;
        echo $js;
    }
Exemplo n.º 2
0
 /**
  * Generate the config data needed for the Full Compose UI and the Quick Compose UI.  The set of config data
  * returned is the minimum set needed by the quick compose UI.
  *
  * @param String $type Drives which tinyMCE options will be included.
  */
 function _generateComposeConfigData($type = "email_compose_light")
 {
     global $app_list_strings, $current_user, $app_strings, $mod_strings, $current_language, $locale;
     //Link drop-downs
     $parent_types = $app_list_strings['record_type_display'];
     $disabled_parent_types = ACLController::disabledModuleList($parent_types, false, 'list');
     foreach ($disabled_parent_types as $disabled_parent_type) {
         unset($parent_types[$disabled_parent_type]);
     }
     asort($parent_types);
     $linkBeans = json_encode(get_select_options_with_id($parent_types, ''));
     //TinyMCE Config
     require_once "include/SugarTinyMCE.php";
     $tiny = new SugarTinyMCE();
     $tinyConf = $tiny->getConfig($type);
     //Generate Language Packs
     $lang = "var app_strings = new Object();\n";
     foreach ($app_strings as $k => $v) {
         if (strpos($k, 'LBL_EMAIL_') !== false) {
             $lang .= "app_strings.{$k} = '{$v}';\n";
         }
     }
     //Get the email mod strings but don't use the global variable as this may be overridden by
     //other modules when the quick create is rendered.
     $email_mod_strings = return_module_language($current_language, 'Emails');
     $modStrings = "var mod_strings = new Object();\n";
     foreach ($email_mod_strings as $k => $v) {
         $v = str_replace("'", "\\'", $v);
         $modStrings .= "mod_strings.{$k} = '{$v}';\n";
     }
     $lang .= "\n\n{$modStrings}\n";
     //Grab the Inboundemail language pack
     $ieModStrings = "var ie_mod_strings = new Object();\n";
     $ie_mod_strings = return_module_language($current_language, 'InboundEmail');
     foreach ($ie_mod_strings as $k => $v) {
         $v = str_replace("'", "\\'", $v);
         $ieModStrings .= "ie_mod_strings.{$k} = '{$v}';\n";
     }
     $lang .= "\n\n{$ieModStrings}\n";
     $this->smarty->assign('linkBeans', $linkBeans);
     $this->smarty->assign('linkBeansOptions', $parent_types);
     $this->smarty->assign('tinyMCE', $tinyConf);
     $this->smarty->assign('lang', $lang);
     $this->smarty->assign('app_strings', $app_strings);
     $this->smarty->assign('mod_strings', $email_mod_strings);
     $ie1 = new InboundEmail();
     //Signatures
     $defsigID = $current_user->getPreference('signature_default');
     $defaultSignature = $current_user->getDefaultSignature();
     $sigJson = !empty($defaultSignature) ? json_encode(array($defaultSignature['id'] => from_html($defaultSignature['signature_html']))) : "new Object()";
     $this->smarty->assign('defaultSignature', $sigJson);
     $this->smarty->assign('signatureDefaultId', isset($defaultSignature['id']) ? $defaultSignature['id'] : "");
     //User Preferences
     $this->smarty->assign('userPrefs', json_encode($this->getUserPrefsJS()));
     //Get the users default outbound id
     $defaultOutID = $ie1->getUsersDefaultOutboundServerId($current_user);
     $this->smarty->assign('defaultOutID', $defaultOutID);
     //Character Set
     $charsets = json_encode($locale->getCharsetSelect());
     $this->smarty->assign('emailCharsets', $charsets);
     //Relateable List of People for address book search
     //#20776 jchi
     $peopleTables = array("users", "contacts", "leads", "prospects", "accounts");
     $filterPeopleTables = array();
     global $app_list_strings, $app_strings;
     $filterPeopleTables['LBL_DROPDOWN_LIST_ALL'] = $app_strings['LBL_DROPDOWN_LIST_ALL'];
     foreach ($peopleTables as $table) {
         $module = ucfirst($table);
         $class = substr($module, 0, strlen($module) - 1);
         require_once "modules/{$module}/{$class}.php";
         $person = new $class();
         if (!$person->ACLAccess('list')) {
             continue;
         }
         $filterPeopleTables[$person->table_name] = $app_list_strings['moduleList'][$person->module_dir];
     }
     $this->smarty->assign('listOfPersons', get_select_options_with_id($filterPeopleTables, ''));
 }
Exemplo n.º 3
0
    /**
     * Renders the frame for emails
     */
    function displayEmailFrame()
    {
        require_once "include/OutboundEmail/OutboundEmail.php";
        global $app_strings, $app_list_strings;
        global $mod_strings;
        global $sugar_config;
        global $current_user;
        global $locale;
        global $timedate;
        global $theme;
        global $sugar_version;
        global $sugar_flavor;
        global $current_language;
        global $server_unique_key;
        $this->preflightUserCache();
        $json = getJSONobj();
        $ie = new InboundEmail();
        $out = '<script type="text/javascript" language="Javascript" src="modules/Emails/javascript/vars.js"></script>';
        // focus listView
        $list = array('mbox' => 'Home', 'ieId' => '', 'name' => 'Home', 'unreadChecked' => 0, 'out' => array());
        // lang pack
        $lang = "var app_strings = new Object();\n";
        foreach ($app_strings as $k => $v) {
            if (strpos($k, 'LBL_EMAIL_') !== false) {
                $lang .= "app_strings.{$k} = '{$v}';\n";
            }
        }
        $modStrings = "var mod_strings = new Object();\n";
        foreach ($mod_strings as $k => $v) {
            $v = str_replace("'", "\\'", $v);
            $modStrings .= "mod_strings.{$k} = '{$v}';\n";
        }
        $lang .= "\n\n{$modStrings}\n";
        // link drop-down
        $parent_types = $app_list_strings['record_type_display'];
        $disabled_parent_types = ACLController::disabledModuleList($parent_types, false, 'list');
        foreach ($disabled_parent_types as $disabled_parent_type) {
            unset($parent_types[$disabled_parent_type]);
        }
        $linkBeans = $json->encode(get_select_options_with_id($parent_types, ''));
        //TinyMCE Config
        require_once "include/SugarTinyMCE.php";
        $tiny = new SugarTinyMCE();
        $tinyConf = $tiny->getConfig();
        //Check quick create module access
        $QCAvailibleModules = array();
        $QCModules = array('Bugs', 'Cases', 'Contacts', 'Leads', 'Tasks');
        foreach ($QCModules as $module) {
            $class = substr($module, 0, strlen($module) - 1);
            require_once "modules/{$module}/{$class}.php";
            if ($class == "Case") {
                $class = "aCase";
            }
            $seed = new $class();
            if ($seed->ACLAccess('edit')) {
                $QCAvailibleModules[] = $module;
            }
        }
        ///////////////////////////////////////////////////////////////////////
        ////	BASIC ASSIGNS
        $charsets = $json->encode($locale->getCharsetSelect());
        $this->smarty->assign('yuiPath', 'modules/Emails/javascript/yui-ext/');
        $this->smarty->assign('app_strings', $app_strings);
        $this->smarty->assign('mod_strings', $mod_strings);
        $this->smarty->assign('theme', $theme);
        $this->smarty->assign('lang', $lang);
        $this->smarty->assign('linkBeans', $linkBeans);
        $this->smarty->assign('sugar_config', $sugar_config);
        $this->smarty->assign('emailCharsets', $charsets);
        $this->smarty->assign('is_admin', $current_user->is_admin);
        $this->smarty->assign('sugar_version', $sugar_version);
        $this->smarty->assign('sugar_flavor', $sugar_flavor);
        $this->smarty->assign('current_language', $current_language);
        $this->smarty->assign('server_unique_key', $server_unique_key);
        $this->smarty->assign('tinyMCE', $tinyConf);
        $this->smarty->assign('qcModules', $json->encode($QCAvailibleModules));
        $extAllDebugValue = "ext-all.js";
        $this->smarty->assign('extFileName', $extAllDebugValue);
        //#20776 jchi
        $peopleTables = array("users", "contacts", "leads", "prospects");
        $filterPeopleTables = array();
        global $app_list_strings, $app_strings;
        $filterPeopleTables['LBL_DROPDOWN_LIST_ALL'] = $app_strings['LBL_DROPDOWN_LIST_ALL'];
        foreach ($peopleTables as $table) {
            $module = ucfirst($table);
            $class = substr($module, 0, strlen($module) - 1);
            require_once "modules/{$module}/{$class}.php";
            $person = new $class();
            if (!$person->ACLAccess('list')) {
                continue;
            }
            $filterPeopleTables[$person->table_name] = $app_list_strings['moduleList'][$person->module_dir];
        }
        $this->smarty->assign('listOfPersons', get_select_options_with_id($filterPeopleTables, ''));
        // settings: general
        $e2UserPreferences = $this->getUserPrefsJS();
        $emailSettings = $e2UserPreferences['emailSettings'];
        ///////////////////////////////////////////////////////////////////////
        ////	USER SETTINGS
        // settings: accounts
        $cuDatePref = $current_user->getUserDateTimePreferences();
        $this->smarty->assign('dateFormat', $cuDatePref['date']);
        $this->smarty->assign('dateFormatExample', str_replace(array("Y", "m", "d"), array("yyyy", "mm", "dd"), $cuDatePref['date']));
        $this->smarty->assign('calFormat', $timedate->get_cal_date_format());
        $viewRawEmail = 'false';
        if (isset($sugar_config['email_inbound_save_raw']) && $sugar_config['email_inbound_save_raw'] == true) {
            $viewRawEmail = 'true';
        }
        $this->smarty->assign('viewRawSource', $viewRawEmail);
        $ieAccounts = $ie->retrieveByGroupId($current_user->id);
        $ieAccountsOptions = "<option value=''>{$app_strings['LBL_NONE']}</option>\n";
        foreach ($ieAccounts as $k => $v) {
            $disabled = !$v->is_personal ? "DISABLED" : "";
            $group = !$v->is_personal ? $app_strings['LBL_EMAIL_GROUP'] . "." : "";
            $ieAccountsOptions .= "<option value='{$v->id}' {$disabled}>{$group}{$v->name}</option>\n";
        }
        $this->smarty->assign('ieAccounts', $ieAccountsOptions);
        $this->smarty->assign('rollover', $this->rolloverStyle);
        $this->smarty->assign('PROTOCOL', get_select_options_with_id($app_list_strings['dom_email_server_type'], ''));
        $this->smarty->assign('MAIL_SSL_OPTIONS', get_select_options_with_id($app_list_strings['email_settings_for_ssl'], ''));
        $this->smarty->assign('ie_mod_strings', return_module_language($current_language, 'InboundEmail'));
        // outbound opts
        $oe = new OutboundEmail();
        $outbounds = $oe->getUserMailers($current_user);
        $smtpOptions = "SUGAR.mailers = ";
        $smtpOptions .= $json->encode($outbounds, false);
        $charset = array('options' => $locale->getCharsetSelect(), 'selected' => $emailSettings['defaultOutboundCharset']);
        $this->smarty->assign('charset', $charset);
        $emailCheckInterval = array('options' => $app_strings['LBL_EMAIL_CHECK_INTERVAL_DOM'], 'selected' => $emailSettings['emailCheckInterval']);
        $this->smarty->assign('emailCheckInterval', $emailCheckInterval);
        $emailSettings['layoutStyle'] == '2rows' ? $this->smarty->assign('rowsChecked', 'CHECKED') : $this->smarty->assign('colsChecked', 'CHECKED');
        //$this->smarty->assign('autoImportChecked', ($emailSettings['autoImport'] == 1) ? 'CHECKED' : "");
        $this->smarty->assign('alwaysSaveOutboundChecked', $emailSettings['alwaysSaveOutbound'] ? 'CHECKED' : "");
        $this->smarty->assign('sendPlainTextChecked', $emailSettings['sendPlainText'] == 1 ? 'CHECKED' : '');
        $this->smarty->assign('tabPositionChecked', $emailSettings['tabPosition'] == 'bottom' ? 'CHECKED' : '');
        $this->smarty->assign('showNumInList', get_select_options_with_id($app_strings['LBL_EMAIL_SETTING_NUM_DOM'], $emailSettings['showNumInList']));
        $this->smarty->assign('fullScreenChecked', $emailSettings['fullScreen'] == 1 ? "CHECKED" : "");
        $this->smarty->assign('userPrefs', $json->encode($this->getUserPrefsJS()));
        ////	END USER SETTINGS
        ///////////////////////////////////////////////////////////////////////
        ///////////////////////////////////////////////////////////////////////
        ////	SIGNATURES
        $prependSignature = $current_user->getPreference('signature_prepend') ? 'true' : 'false';
        $defsigID = $current_user->getPreference('signature_default');
        $defaultSignature = $current_user->getDefaultSignature();
        $sigJson = !empty($defaultSignature) ? $json->encode(array($defaultSignature['id'] => from_html($defaultSignature['signature_html']))) : "new Object()";
        $this->smarty->assign('defaultSignature', $sigJson);
        $this->smarty->assign('signatures', $current_user->getSignatures(false, $defsigID));
        $this->smarty->assign('signaturesSettings', $current_user->getSignatures(false, $defsigID, false));
        $signatureButtons = $current_user->getSignatureButtons('SUGAR.email2.settings.createSignature', !empty($defsigID));
        if (!empty($defsigID)) {
            $signatureButtons = $signatureButtons . '<span name="delete_sig" id="delete_sig" style="visibility:inherit;"><input class="button" onclick="javascript:SUGAR.email2.settings.deleteSignature();" value="' . $app_strings['LBL_EMAIL_DELETE'] . '" type="button" tabindex="392">&nbsp;
					</span>';
        } else {
            $signatureButtons = $signatureButtons . '<span name="delete_sig" id="delete_sig" style="visibility:hidden;"><input class="button" onclick="javascript:SUGAR.email2.settings.deleteSignature();" value="' . $app_strings['LBL_EMAIL_DELETE'] . '" type="button" tabindex="392">&nbsp;
					</span>';
        }
        $this->smarty->assign('signatureButtons', $signatureButtons);
        $this->smarty->assign('signaturePrepend', $prependSignature == 'true' ? 'CHECKED' : '');
        $this->smarty->assign('signatureDefaultId', isset($defaultSignature['id']) ? $defaultSignature['id'] : "");
        ////	END SIGNATURES
        ///////////////////////////////////////////////////////////////////////
        ///////////////////////////////////////////////////////////////////////
        ////	EMAIL TEMPLATES
        $email_templates_arr = $this->getEmailTemplatesArray();
        $this->smarty->assign('EMAIL_TEMPLATE_OPTIONS', get_select_options_with_id($email_templates_arr, ''));
        ////	END EMAIL TEMPLATES
        ///////////////////////////////////////////////////////////////////////
        ///////////////////////////////////////////////////////////////////////
        ////	FOLDERS & TreeView
        $this->smarty->assign('groupUserOptions', $ie->getGroupsWithSelectOptions(array('' => $app_strings['LBL_EMAIL_CREATE_NEW'])));
        $tree = $this->getMailboxNodes();
        // preloaded folder
        $preloadFolder = 'lazyLoadFolder = ';
        $focusFolderSerial = $current_user->getPreference('focusFolder', 'Emails');
        if (!empty($focusFolderSerial)) {
            $focusFolder = unserialize($focusFolderSerial);
            //$focusFolder['ieId'], $focusFolder['folder']
            $preloadFolder .= $json->encode($focusFolder) . ";";
        } else {
            $preloadFolder .= "new Object();";
        }
        ////	END FOLDERS
        ///////////////////////////////////////////////////////////////////////
        $fullscreen = '';
        if ($emailSettings['fullScreen'] == 1) {
            $fullscreen = 'SUGAR.ui.toggleHeader();';
        }
        $out .= $this->smarty->fetch("modules/Emails/templates/_baseEmail.tpl");
        $out .= $tree->generate_header();
        $out .= $tree->generateNodesNoInit(true, 'email2treeinit');
        $out .= <<<eoq
\t\t\t<script type="text/javascript" language="javascript">
\t\t\t\t{$fullscreen}

\t\t\t\tvar loader = new YAHOO.util.YUILoader({
\t\t\t\t    require : ["layout", "element", "tabview", "menu", "cookie", "sugarwidgets"],
\t\t\t\t    loadOptional: true,
\t\t\t\t    filter: 'debug',
\t\t\t\t    skin: "",
\t\t\t\t    onSuccess: email2init,
\t\t\t\t    allowRollup: true,
\t\t\t\t    base: "include/javascript/yui/build/"
\t\t\t\t});
\t\t\t\tloader.addModule({
\t\t\t\t    name :"sugarwidgets",
\t\t\t\t    type : "js",
\t\t\t\t    fullpath: "include/javascript/sugarwidgets/SugarYUIWidgets.js",
\t\t\t\t    varName: "YAHOO.SUGAR",
\t\t\t\t    requires: ["datatable", "dragdrop", "treeview", "tabview"]
\t\t\t\t});
\t\t\t\tloader.insert();

\t\t\t\t{$preloadFolder};
\t\t\t\t{$smtpOptions};
\t\t\t</script>
eoq;
        return $out;
    }
Exemplo n.º 4
0
    function displayJS()
    {
        require_once "include/JSON.php";
        require_once "include/SugarTinyMCE.php";
        global $locale;
        $tiny = new SugarTinyMCE();
        $tinyMCE = $tiny->getConfig();
        $locationHref = 'http://' . $_SERVER['HTTP_HOST'] . substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'));
        $js = <<<JS
\t\t<script language="javascript" type="text/javascript">
\t\t{$tinyMCE}
\t\tvar location_href = '{$locationHref}';
\t\tvar df = '{$locale->getPrecedentPreference('default_date_format')}';
 \t\t
 \t\ttinyMCE.baseURL = location_href+'/include/javascript/tiny_mce';
\t\ttinyMCE.srcMode = '';
 \t\ttinyMCE.init({
    \t\t\ttheme : "advanced",
    \t\t\ttheme_advanced_toolbar_align : "left",
    \t\t\tmode: "exact",
\t\t\telements : "description",
\t\t\ttheme_advanced_toolbar_location : "top",
\t\t\ttheme_advanced_buttons1: "code,help,separator,bold,italic,underline,strikethrough,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,forecolor,backcolor,separator,styleprops,styleselect,formatselect,fontselect,fontsizeselect",
\t\t\ttheme_advanced_buttons2: "cut,copy,paste,pastetext,pasteword,selectall,separator,search,replace,separator,bullist,numlist,separator,outdent,indent,separator,ltr,rtl,separator,undo,redo,separator, link,unlink,anchor,image,separator,sub,sup,separator,charmap,visualaid",
\t\t\ttheme_advanced_buttons3: "tablecontrols,separator,advhr,hr,removeformat,separator,insertdate,pagebreak",
\t\t\tplugins : "advhr,insertdatetime,table,paste,searchreplace,directionality,style,pagebreak",
\t\t\theight:"500",
\t\t\twidth: "100%",
\t\t\tinline_styles : true,
\t\t\tdirectionality : "ltr",
\t\t\tremove_redundant_brs : true,
\t\t\tentity_encoding: 'raw',
\t\t\tcleanup_on_startup : true,
\t\t\tstrict_loading_mode : true,
\t\t\tconvert_urls : false,
\t\t\tplugin_insertdate_dateFormat : '{DATE '+df+'}',
\t\t\tpagebreak_separator : "<pagebreak />",
\t\t});
\t\t
\t\ttinyMCE.init({
    \t\t\ttheme : "advanced",
    \t\t\ttheme_advanced_toolbar_align : "left",
    \t\t\tmode: "exact",
\t\t\telements : "pdfheader,pdffooter",
\t\t\ttheme_advanced_toolbar_location : "top",
\t\t\ttheme_advanced_buttons1: "code,separator,bold,italic,underline,strikethrough,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,undo,redo,separator,forecolor,backcolor,separator,styleprops,styleselect,formatselect,fontselect,fontsizeselect,separator,insertdate",
\t\t\ttheme_advanced_buttons2 : "",
    \t\t\ttheme_advanced_buttons3 : "",
\t\t\tplugins : "advhr,insertdatetime,table,paste,searchreplace,directionality,style",
\t\t\twidth: "100%",
\t\t\tinline_styles : true,
\t\t\tdirectionality : "ltr",
\t\t\tentity_encoding: 'raw',
\t\t\tcleanup_on_startup : true,
\t\t\tstrict_loading_mode : true,
\t\t\tconvert_urls : false,
\t\t\tremove_redundant_brs : true,
\t\t\tplugin_insertdate_dateFormat : '{DATE '+df+'}',
\t\t});

\t\t</script>

JS;
        echo $js;
    }
Exemplo n.º 5
0
    function displayTMCE()
    {
        require_once "include/SugarTinyMCE.php";
        global $locale, $current_user;
        $tiny = new SugarTinyMCE();
        $tinyMCE = $tiny->getConfig();
        $js = <<<JS
        <script language="javascript" type="text/javascript">
        {$tinyMCE}
        var df = '{$locale->getPrecedentPreference('default_date_format')}';

        tinyMCE.init({
            theme : tinyConfig.theme,
            theme_advanced_toolbar_align : tinyConfig.theme_advanced_toolbar_align,
            mode: tinyConfig.mode,
            elements : "description",
            theme_advanced_toolbar_location : tinyConfig.theme_advanced_toolbar_location,
            theme_advanced_buttons1: tinyConfig.theme_advanced_buttons1,
            theme_advanced_buttons2: tinyConfig.theme_advanced_buttons2,
            theme_advanced_buttons3: tinyConfig.theme_advanced_buttons3,
            theme_advanced_fonts:"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Helvetica Neu=helveticaneue,sans-serif;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",
            plugins : "advhr,insertdatetime,table,paste,searchreplace,directionality,style,pagebreak,openmanager,inlinepopups",
            height: tinyConfig.height,
            width: tinyConfig.width ,
            inline_styles : true,
            directionality : "ltr",
            remove_redundant_brs : true,
            entity_encoding: 'raw',
            cleanup_on_startup : true,
            strict_loading_mode : true,
            convert_urls : false,
            plugin_insertdate_dateFormat : '{DATE '+df+'}',
            pagebreak_separator : "<pagebreak />",
            extended_valid_elements : "textblock",
            custom_elements: "textblock",
            file_browser_callback : tinyConfig.file_browser_callback,
            open_manager_upload_path : tinyConfig.open_manager_upload_path ,

        });

        tinyMCE.init({
            theme : tinyConfig.theme,
            theme_advanced_toolbar_align : tinyConfig.theme_advanced_toolbar_align,
            mode: tinyConfig.mode,
            elements : "pdfheader,pdffooter",
            theme_advanced_toolbar_location : tinyConfig.theme_advanced_toolbar_location,
            theme_advanced_buttons1: tinyConfig.theme_advanced_buttons1,
            theme_advanced_buttons2 : "",
            theme_advanced_buttons3 : "",
            theme_advanced_fonts:"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Helvetica Neu=helveticaneue,sans-serif;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",
            plugins : "advhr,insertdatetime,table,paste,searchreplace,directionality,style",
            width: tinyConfig.width,
            inline_styles : true,
            directionality : "ltr",
            entity_encoding: 'raw',
            cleanup_on_startup : true,
            strict_loading_mode : true,
            convert_urls : false,
            remove_redundant_brs : true,
            plugin_insertdate_dateFormat : '{DATE '+df+'}',
            extended_valid_elements : "textblock",
            custom_elements: "textblock",
        });

        </script>

JS;
        echo $js;
    }
Exemplo n.º 6
0
    function displayJS()
    {
        require_once "include/SugarTinyMCE.php";
        require_once "include/JSON.php";
        $tiny = new SugarTinyMCE();
        $tinyMCE = $tiny->getConfig();
        $locationHref = 'http://' . $_SERVER['HTTP_HOST'] . substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'));
        $js = <<<JS
<script type="text/javascript">
\t{$tinyMCE}
\tvar location_href = '{$locationHref}';
\tif(typeof(tinyMCE) != 'undefined') {
\t\ttinyMCE.baseURL = location_href+'/include/javascript/tiny_mce';
\t\ttinyMCE.srcMode = '';
\t\tif(navigator.appName != 'Netscape') {
\t\t\ttinyMCE.init({
\t\t\t\ttheme_advanced_toolbar_align : tinyConfig.theme_advanced_toolbar_align,
\t\t\t\tclean : false,
\t\t\t\tclean_on_startup : false,
\t\t\t\twidth: tinyConfig.width,
\t\t\t\ttheme: tinyConfig.theme,
\t\t\t\ttheme_advanced_toolbar_location : tinyConfig.theme_advanced_toolbar_location,
\t\t\t\ttheme_advanced_buttons1: "code,help,separator,bold,italic,underline,strikethrough,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,forecolor,backcolor,separator,styleselect,formatselect,fontselect,fontsizeselect",
\t\t\t\ttheme_advanced_buttons2: "cut,copy,paste,pastetext,pasteword,selectall,separator,search,replace,separator,bullist,numlist,separator,outdent,indent,separator,ltr,rtl,separator,undo,redo,separator, link,unlink,anchor,image,separator,sub,sup,separator,charmap,visualaid",
\t\t\t\ttheme_advanced_buttons3: "tablecontrols,separator,advhr,hr,removeformat,separator,insertdate,inserttime,separator,preview",
\t\t\t\tstrict_loading_mode: true,
\t\t\t\tmode: "exact",
\t\t\t\tlanguage: "en",
\t\t\t\tplugins : tinyConfig.plugins,
\t\t\t\telements : tinyConfig.elements,
\t\t\t\textended_valid_elements : tinyConfig.extended_valid_elements,
\t\t\t\tmode: tinyConfig.mode
\t\t\t});
\t\t} else {
\t\t\ttinyMCE.init({
\t\t\t\ttheme_advanced_toolbar_align : tinyConfig.theme_advanced_toolbar_align,
\t\t\t\twidth: tinyConfig.width,
\t\t\t\ttheme: tinyConfig.theme,
\t\t\t\ttheme_advanced_toolbar_location : tinyConfig.theme_advanced_toolbar_location,
\t\t\t\ttheme_advanced_buttons1: "code,help,separator,bold,italic,underline,strikethrough,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,forecolor,backcolor,separator,styleselect,formatselect,fontselect,fontsizeselect",
\t\t\t\ttheme_advanced_buttons2: "cut,copy,paste,pastetext,pasteword,selectall,separator,search,replace,separator,bullist,numlist,separator,outdent,indent,separator,ltr,rtl,separator,undo,redo,separator, link,unlink,anchor,image,separator,sub,sup,separator,charmap,visualaid",
\t\t\t\ttheme_advanced_buttons3: "tablecontrols,separator,advhr,hr,removeformat,separator,insertdate,inserttime,separator,preview",
\t\t\t\tstrict_loading_mode: true,
\t\t\t\tmode: "exact",
\t\t\t\tlanguage: "en",
\t\t\t\tplugins : tinyConfig.plugins,
\t\t\t\telements : tinyConfig.elements,
\t\t\t\textended_valid_elements : tinyConfig.extended_valid_elements,
\t\t\t\tmode: tinyConfig.mode,
\t\t\t\tstrict_loading_mode : true
\t\t\t});
\t\t}
\t}
</script>
<script type="text/javascript" language="Javascript" src="include/javascript/tiny_mce/langs/en.js"></script>
<script type="text/javascript" language="Javascript" src="include/javascript/tiny_mce/plugins/insertdatetime/editor_plugin.js"></script>
<script type="text/javascript" language="Javascript" src="include/javascript/tiny_mce/plugins/preview/editor_plugin.js"></script>
<script type="text/javascript" language="Javascript" src="include/javascript/tiny_mce/plugins/searchreplace/editor_plugin.js"></script>


<script type="text/javascript" language="Javascript" src="include/javascript/tiny_mce/plugins/advhr/langs/en.js"></script>
<script type="text/javascript" language="Javascript" src="include/javascript/tiny_mce/plugins/paste/langs/en.js"></script>
<script language="javascript">
\tif(typeof(tinyMCE) != 'undefined') {\t
\t\t var t = tinyMCE.getInstanceById('description');
\t\t if(typeof(t) == 'undefined')  {
            
            var nav = new String(navigator.appVersion);

            tinyMCE.execCommand('mceAddControl', false, 'description');
            var instance =  tinyMCE.getInstanceById('description');
            var tableEl = document.getElementById(instance.editorId + '_parent').firstChild;
            var toolbar = document.getElementById(instance.editorId + '_toolbar');
            if (tinyMCE.isMSIE) {
                instance.iframeElement.style.height = "100%";
                instance.iframeElement.height = "100%";
            } else {
                instance.iframeElement.style.height = "100%";
            }
            tableEl.style.height = "100%";
        }
\t}
\t//alert(JSON);
</script>
JS;
        echo $js;
    }