/** * Get a list of editor font families * * @return string font family list * @param string $add Font family to add * @param string $remove Font family to remove */ protected static function getFonts() { $wf = WFEditor::getInstance(); $fonts = $wf->getParam('fontselect.fonts'); // get fonts using legacy parameters if (empty($fonts)) { $fonts = self::$fonts; $add = $wf->getParam('editor.theme_advanced_fonts_add'); $remove = $wf->getParam('editor.theme_advanced_fonts_remove'); if (empty($remove) && empty($add)) { return implode(';', $fonts); } $remove = preg_split('/[;,]+/', $remove); if (count($remove)) { foreach ($fonts as $key => $value) { foreach ($remove as $gone) { if ($gone && preg_match('/^' . $gone . '=/i', $value)) { // Remove family unset($fonts[$key]); } } } } foreach (explode(";", $add) as $new) { // Add new font family if (preg_match('/([^\\=]+)(\\=)([^\\=]+)/', trim($new)) && !in_array($new, $fonts)) { $fonts[] = $new; } } natcasesort($fonts); $fonts = implode(';', $fonts); } return $fonts; }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); wfimport('admin.models.editor'); $model = new WFModelEditor(); $tags = array(); if ($wf->getParam('media.iframes', 0)) { $tags[] = 'iframe'; } if ($wf->getParam('media.audio', 1)) { $tags[] = 'audio'; } if ($wf->getParam('media.video', 1)) { $tags[] = 'video'; } if (in_array('audio', $tags) || in_array('video', $tags)) { $tags[] = 'source'; } if ($wf->getParam('media.embed', 1)) { $tags[] = 'embed'; } if ($wf->getParam('media.object', 1)) { $tags[] = 'object'; $tags[] = 'param'; } $model->removeKeys($settings['invalid_elements'], $tags); $settings['media_strict'] = $wf->getParam('media.strict', 1, 1); $settings['media_version_flash'] = $wf->getParam('media.version_flash', '10,1,53,64', '10,1,53,64'); $settings['media_version_windowsmedia'] = $wf->getParam('media.version_windowsmedia', '10,00,00,3646', '10,00,00,3646'); $settings['media_version_shockwave'] = $wf->getParam('media.version_shockwave', '10,2,0,023', '10,2,0,023'); $settings['media_version_quicktime'] = $wf->getParam('media.version_quicktime', '7,3,0,0', '7,3,0,0'); $settings['media_version_java'] = $wf->getParam('media.version_java', '1,5,0,0', '1,5,0,0'); }
public function getConfig(&$settings) { $model = JModel::getInstance('editor', 'WFModel'); $wf = WFEditor::getInstance(); // Add format plugin to plugins list if (!in_array('format', $settings['plugins'])) { $settings['plugins'][] = 'format'; } // Encoding $settings['entity_encoding'] = $wf->getParam('editor.entity_encoding', 'raw', 'named'); $settings['inline_styles'] = $wf->getParam('editor.inline_styles', 1, 1); // Paragraph handling $settings['forced_root_block'] = $wf->getParam('editor.forced_root_block', 'p', 'p'); $settings['removeformat_selector'] = $wf->getParam('editor.removeformat_selector', 'span,b,strong,em,i,font,u,strike', 'span,b,strong,em,i,font,u,strike'); $formats = array('p' => 'advanced.paragraph', 'address' => 'advanced.address', 'pre' => 'advanced.pre', 'h1' => 'advanced.h1', 'h2' => 'advanced.h2', 'h3' => 'advanced.h3', 'h4' => 'advanced.h4', 'h5' => 'advanced.h5', 'h6' => 'advanced.h6', 'div' => 'advanced.div', 'blockquote' => 'advanced.blockquote', 'code' => 'advanced.code', 'dt' => 'advanced.dt', 'dd' => 'advanced.dd', 'samp' => 'advanced.samp', 'span' => 'advanced.span'); $tmpblocks = $wf->getParam('editor.theme_advanced_blockformats', 'p,div,address,pre,h1,h2,h3,h4,h5,h6,code,samp,span', 'p,address,pre,h1,h2,h3,h4,h5,h6'); $list = array(); $blocks = array(); if (is_string($tmpblocks)) { $tmpblocks = explode(',', $tmpblocks); } foreach ($tmpblocks as $k => $v) { $key = $formats[$v]; if ($key) { $list[$key] = $v; } $blocks[] = $v; } $selector = $settings['removeformat_selector'] == '' ? 'span,b,strong,em,i,font,u,strike' : $settings['removeformat_selector']; $selector = explode(',', $selector); // set the root block $rootblock = !$settings['forced_root_block'] ? 'p' : $settings['forced_root_block']; if ($k = array_search($rootblock, $blocks) !== false) { unset($blocks[$k]); } // remove format selector $settings['removeformat_selector'] = implode(',', array_unique(array_merge($blocks, $selector))); // Format list / Remove Format $settings['theme_advanced_blockformats'] = json_encode($list); // add span 'format' $settings['formats'] = "{span : {inline : 'span'}}"; // new lines (paragraphs or linebreaks) if ($wf->getParam('editor.newlines', 0)) { $settings['force_br_newlines'] = 1; $settings['force_p_newlines'] = 0; $settings['forced_root_block'] = false; } // Relative urls $settings['relative_urls'] = $wf->getParam('editor.relative_urls', 1, 1); if ($settings['relative_urls'] == 0) { $settings['remove_script_host'] = 0; } // Fonts $settings['theme_advanced_fonts'] = $model->getEditorFonts($wf->getParam('editor.theme_advanced_fonts_add', ''), $wf->getParam('editor.theme_advanced_fonts_remove', '')); $settings['theme_advanced_font_sizes'] = $wf->getParam('editor.theme_advanced_font_sizes', '8pt,10pt,12pt,14pt,18pt,24pt,36pt'); $settings['theme_advanced_default_foreground_color'] = $wf->getParam('editor.theme_advanced_default_foreground_color', '#000000'); $settings['theme_advanced_default_background_color'] = $wf->getParam('editor.theme_advanced_default_background_color', '#FFFF00'); // colour picker custom colours $settings['custom_colors'] = $wf->getParam('editor.custom_colors', '', ''); }
public static function getConfig(&$settings) { wfimport('admin.models.editor'); $model = new WFModelEditor(); $wf = WFEditor::getInstance(); $settings['inline_styles'] = $wf->getParam('editor.inline_styles', 1, 1); // Paragraph handling $settings['forced_root_block'] = $wf->getParam('editor.forced_root_block', 'p', '', false); // set as boolean if disabled if (is_numeric($settings['forced_root_block'])) { $settings['forced_root_block'] = (bool) $settings['forced_root_block']; if ($wf->getParam('editor.force_br_newlines', 0, 0, 'boolean') === false) { // legacy $settings['force_p_newlines'] = $wf->getParam('editor.force_p_newlines', 1, 0, 'boolean'); } } if (strpos($settings['forced_root_block'], '|') !== false) { // multiple values $values = explode('|', $settings['forced_root_block']); foreach ($values as $value) { $kv = explode(':', $value); if (count($kv) == 2) { $settings[$kv[0]] = (bool) $kv[1]; } else { $settings['forced_root_block'] = (bool) $kv[0]; } } } $settings['removeformat_selector'] = $wf->getParam('editor.removeformat_selector', 'span,b,strong,em,i,font,u,strike', 'span,b,strong,em,i,font,u,strike'); // Relative urls $settings['relative_urls'] = $wf->getParam('editor.relative_urls', 1, 1, 'boolean'); if ($settings['relative_urls'] == 0) { $settings['remove_script_host'] = false; } }
public static function getConfig(&$settings) { wfimport('admin.models.editor'); $model = new WFModelEditor(); $wf = WFEditor::getInstance(); $settings['inline_styles'] = $wf->getParam('editor.inline_styles', 1, 1); // Paragraph handling $forced_root_block = $wf->getParam('editor.forced_root_block', '', 'p', 'string', false); // set as boolean if disabled if (is_numeric($forced_root_block)) { $settings['forced_root_block'] = (bool) intval($forced_root_block); if ($wf->getParam('editor.force_br_newlines', 0, 0, 'boolean') === false) { // legacy $settings['force_p_newlines'] = $wf->getParam('editor.force_p_newlines', 1, 0, 'boolean'); } } else { if (strpos($forced_root_block, '|') !== false) { // multiple values foreach (explode('|', $forced_root_block) as $option) { list($key, $value) = explode(':', $option); $settings[$key] = (bool) $value; } } else { $settings['forced_root_block'] = $forced_root_block; } } //$settings['removeformat_selector'] = $wf->getParam('editor.removeformat_selector', 'span,b,strong,em,i,font,u,strike', 'span,b,strong,em,i,font,u,strike'); // Relative urls $settings['relative_urls'] = $wf->getParam('editor.relative_urls', 1, 1, 'boolean'); if ($settings['relative_urls'] == 0) { $settings['remove_script_host'] = false; } }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); // legacy $state = $wf->getParam('editor.visualchars', 0); $settings['visualchars_default_state'] = $wf->getParam('editor.visualchars_state', $state, 0, 'boolean'); }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); //$settings['article_hide_xtd_btns'] = $wf->getParam('article.hide_xtd_btns', 0, 0); $settings['article_show_readmore'] = $wf->getParam('article.show_readmore', 1, 1); $settings['article_show_pagebreak'] = $wf->getParam('article.show_pagebreak', 1, 1); }
public function getConfig(&$settings) { $wf = WFEditor::getInstance(); $settings['spellchecker_languages'] = '+' . $wf->getParam('spellchecker.languages', 'English=en', ''); $settings['spellchecker_engine'] = $wf->getParam('spellchecker.engine', 'googlespell', 'googlespell'); $settings['spellchecker_rpc_url'] = JURI::base(true) . '/index.php?option=com_jce&view=editor&layout=plugin&plugin=spellchecker&component_id=' . $settings['component_id']; }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); $model = JModel::getInstance('editor', 'WFModel'); $settings['cleanup_pluginmode'] = $wf->getParam('cleanup.pluginmode', 0, 0, 'boolean'); $settings['verify_html'] = $wf->getParam('editor.verify_html', 0, 1, 'boolean'); // set schema $settings['schema'] = $wf->getParam('editor.schema', 'html4', 'html4'); // Get Extended elements $settings['extended_valid_elements'] = $wf->getParam('editor.extended_elements', '', ''); // Configuration list of invalid elements as array $settings['invalid_elements'] = explode(',', $wf->getParam('editor.invalid_elements', '', '')); // Add elements to invalid list (removed by plugin) $model->addKeys($settings['invalid_elements'], self::$invalid_elements); // remove extended_valid_elements if ($settings['extended_valid_elements']) { preg_match_all('#(\\w+)(\\[([^\\]]+)\\])?#', $settings['extended_valid_elements'], $extended); if ($extended && count($extended) > 1) { $settings['invalid_elements'] = array_diff($settings['invalid_elements'], $extended[1]); } } // remove it if it is the same as the default if ($settings['invalid_elements'] === self::$invalid_elements) { $settings['invalid_elements'] = array(); } $settings['invalid_attributes'] = $wf->getParam('editor.invalid_attributes', 'dynsrc,lowsrc', 'dynsrc,lowsrc', 'string', true); $settings['invalid_attribute_values'] = $wf->getParam('editor.invalid_attribute_values', '', '', 'string', true); }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); $engine = $wf->getParam('spellchecker.engine', 'browser', 'browser'); $url = JURI::base(true) . '/index.php?option=com_jce&view=editor&layout=plugin&plugin=spellchecker&component_id=' . $settings['component_id']; switch ($engine) { default: case 'browser': $languages = ''; $settings['spellchecker_browser_state'] = $wf->getParam('spellchecker.browser_state', 0, 0); break; case 'googlespell': $languages = $wf->getParam('spellchecker.googlespell_languages', ''); // use a default if (!$languages) { $languages = $wf->getParam('spellchecker.languages', 'English=en', ''); } break; case 'pspell': case 'pspellshell': case 'enchantspell': $languages = $wf->getParam('spellchecker.languages', 'English=en', ''); break; } $settings['spellchecker_rpc_url'] = $url; // cast as array if ($languages) { $languages = (array) $languages; } if (!empty($languages)) { $settings['spellchecker_languages'] = '+' . implode(',', $languages); } $settings['spellchecker_engine'] = $engine; }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); $number = $wf->getParam('lists.number_styles'); $bullet = $wf->getParam('lists.bullet_styles'); if (!empty($number)) { if (count($number) < count(self::$defaultNumList)) { $items = array(); foreach ($number as $item) { $title = $item == 'default' ? 'def' : str_replace('-', '_', $item); $style = $item == 'default' ? '' : $item; $items[] = array('title' => 'advlist.' . $title, 'styles' => array('listStyleType' => $style)); } $settings['advlist_number_styles'] = json_encode($items); } } if (!empty($bullet)) { if (count($bullet) < count(self::$defaultBulletList)) { $items = array(); foreach ($bullet as $item) { $title = $item == 'default' ? 'def' : str_replace('-', '_', $item); $style = $item == 'default' ? '' : $item; $items[] = array('title' => 'advlist.' . $title, 'styles' => array('listStyleType' => $style)); } $settings['advlist_bullet_styles'] = json_encode($items); } } }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); $width = $wf->getParam('table.width'); $height = $wf->getParam('table.height'); if ($width && preg_match('#^[0-9\\.]$#', $width)) { $width .= 'px'; } if ($height && preg_match('#^[0-9\\.]$#', $height)) { $height .= 'px'; } $settings['table_default_width'] = $width; $settings['table_default_height'] = $height; $settings['table_default_border'] = $wf->getParam('table.border', 0, 0); $settings['table_default_align'] = $wf->getParam('table.align', '', ''); $settings['table_default_cellpadding'] = $wf->getParam('table.cellpadding', 0, 0); $settings['table_default_cellspacing'] = $wf->getParam('table.cellspacing', 0, 0); $settings['table_default_rows'] = $wf->getParam('table.rows', 2, 2); $settings['table_default_cols'] = $wf->getParam('table.cols', 2, 2); $settings['table_cell_limit'] = $wf->getParam('table.cell_limit', 0, 0); $settings['table_row_limit'] = $wf->getParam('table.row_limit', 0, 0); $settings['table_col_limit'] = $wf->getParam('table.col_limit', 0, 0); $settings['table_pad_empty_cells'] = $wf->getParam('table.pad_empty_cells', 1, 1); $settings['table_classes'] = $wf->getParam('table.classes', "", ""); }
public function getConfig(&$settings) { $wf = WFEditor::getInstance(); $model = JModel::getInstance('editor', 'WFModel'); if ($wf->getParam('media.iframes', 0)) { $model->removeKeys($settings['invalid_elements'], array('iframe')); } if ($wf->getParam('media.audio', 1)) { $model->removeKeys($settings['invalid_elements'], array('audio', 'source')); } if ($wf->getParam('media.video', 1)) { $model->removeKeys($settings['invalid_elements'], array('video', 'source')); } if ($wf->getParam('media.embed', 1)) { $model->removeKeys($settings['invalid_elements'], array('embed')); } if ($wf->getParam('media.object', 1)) { $model->removeKeys($settings['invalid_elements'], array('object', 'param')); } $settings['media_strict'] = $wf->getParam('media.strict', 1, 1); $settings['media_version_flash'] = $wf->getParam('media.version_flash', '10.1.53.64', '10,1,53,64'); $settings['media_version_windowsmedia'] = $wf->getParam('media.version_windowsmedia', '10,00,00,3646', '10,00,00,3646'); $settings['media_version_shockwave'] = $wf->getParam('media.version_shockwave', '10,2,0,023', '10,2,0,023'); $settings['media_version_quicktime'] = $wf->getParam('media.version_quicktime', '7,3,0,0', '7,3,0,0'); $settings['media_version_java'] = $wf->getParam('media.version_java', '1,5,0,0', '1,5,0,0'); }
/** * Return the full user directory path. Create if required * * @param string The base path * @access public * @return Full path to folder */ public function getRootDir() { static $root; if (!isset($root)) { $user = JFactory::getUser(); $wf = WFEditor::getInstance(); $profile = $wf->getProfile(); // Get base directory as shared parameter $root = $this->get('dir', ''); // Remove whitespace $root = trim($root); if (!empty($root)) { // Convert slashes / Strip double slashes $root = preg_replace('/[\\\\]+/', '/', $root); // Remove first leading slash $root = ltrim($root, '/'); // Force default directory if base param starts with a variable or a . eg $id if (preg_match('/[\\.\\$]/', $root[0])) { $root = 'images'; } jimport('joomla.user.helper'); // Joomla! 1.6+ if (method_exists('JUserHelper', 'getUserGroups')) { $groups = JUserHelper::getUserGroups($user->id); // get keys only $groups = array_keys($groups); // get the first group $group_id = array_shift($groups); // Joomla! 2.5? if (is_int($group_id)) { // usergroup table $group = JTable::getInstance('Usergroup'); $group->load($group_id); // usertype $usertype = $group->title; } else { $usertype = $group_id; } } else { $usertype = $user->usertype; } // Replace any path variables $pattern = array('/\\$id/', '/\\$username/', '/\\$user(group|type)/', '/\\$(group|profile)/', '/\\$day/', '/\\$month/', '/\\$year/'); $replace = array($user->id, $user->username, $usertype, $profile->name, date('d'), date('m'), date('Y')); $root = preg_replace($pattern, $replace, $root); // split into path parts to preserve / $parts = explode('/', $root); $textcase = $wf->getParam('editor.websafe_textcase'); if (!empty($textcase)) { $textcase = array_shift($textcase); } // clean path parts $parts = WFUtility::makeSafe($parts, $wf->getParam('editor.websafe_mode', 'utf-8'), $wf->getParam('editor.websafe_allow_spaces', 0), $textcase); //join path parts $root = implode('/', $parts); } } return $root; }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); $model = new WFModelEditor(); if ($wf->getParam('mediamanager.aggregator.youtube.enable', 1) || $wf->getParam('mediamanager.aggregator.vimeo.enable', 1)) { $model->removeKeys($settings['invalid_elements'], array('iframe')); } }
public function getConfig(&$settings) { // Get JContentEditor instance $wf = WFEditor::getInstance(); $smilies = 'smiley-confused.gif,smiley-cool.gif,smiley-cry.gif,smiley-eek.gif,smiley-embarassed.gif,smiley-evil.gif,smiley-laughing.gif,smiley-mad.gif,smiley-neutral.gif,smiley-roll.gif,smiley-sad.gif,smiley-surprised.gif,smiley-tongue_out.gif,smiley-wink.gif,smiley-yell.gif,smiley-smile.gif'; $settings['emotions_smilies'] = $wf->getParam('emotions.smilies'); $settings['emotions_url'] = $wf->getParam('emotions.url'); }
public static function getStyles() { $wf = WFEditor::getInstance(); // only required if we're packing css if ($wf->getParam('editor.compress_css', 1)) { // add ui theme css file return array(dirname(dirname(__FILE__)) . '/css/dialog.css'); } }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); wfimport('admin.models.editor'); $model = new WFModelEditor(); // Encoding $settings['entity_encoding'] = $wf->getParam('editor.entity_encoding'); // keep $nbsp = (bool) $wf->getParam('editor.keep_nbsp', 1); // use named encoding with limited entities set if raw/utf-8 and keep_nbsp === true if ($settings['entity_encoding'] === 'raw' && $nbsp) { $settings['entity_encoding'] = ''; $settings['entities'] = '160,nbsp,173,shy'; } // set "plugin mode" $settings['cleanup_pluginmode'] = $wf->getParam('editor.cleanup_pluginmode', 0, 0); // get verify html (default is true) $settings['verify_html'] = $wf->getParam('editor.verify_html', 1, 1, 'boolean', false); $settings['pad_empty_tags'] = $wf->getParam('editor.pad_empty_tags', 1, 1, 'boolean'); // set schema $settings['schema'] = $wf->getParam('editor.schema', 'mixed'); if ($settings['schema'] === "html5") { $settings['schema'] = "html5-strict"; } // Get Extended elements $settings['extended_valid_elements'] = $wf->getParam('editor.extended_elements', '', ''); // Configuration list of invalid elements as array $settings['invalid_elements'] = explode(',', preg_replace('#\\s+#', '', $wf->getParam('editor.invalid_elements', '', ''))); // Add elements to invalid list (removed by plugin) $model->addKeys($settings['invalid_elements'], self::$invalid_elements); // process extended_valid_elements if ($settings['extended_valid_elements']) { $extended_elements = explode(',', $settings['extended_valid_elements']); $elements = array(); // add wildcard attributes if none specified for ($i = 0; $i < count($extended_elements); $i++) { $pos = strpos($extended_elements[$i], '['); if ($pos === false) { $elements[] = $extended_elements[$i]; $extended_elements[$i] .= '[*]'; } else { $elements[] = substr($extended_elements[$i], 0, $pos); } } // restore settings to array $settings['extended_valid_elements'] = implode(',', $extended_elements); if (!empty($elements)) { $settings['invalid_elements'] = array_diff($settings['invalid_elements'], $elements); } } // remove it if it is the same as the default if ($settings['invalid_elements'] === self::$invalid_elements) { $settings['invalid_elements'] = array(); } $settings['invalid_attributes'] = $wf->getParam('editor.invalid_attributes', 'dynsrc,lowsrc', 'dynsrc,lowsrc', 'string', true); $settings['invalid_attribute_values'] = $wf->getParam('editor.invalid_attribute_values', '', '', 'string', true); }
private static function getBulletList() { $wf = WFEditor::getInstance(); $bullet = (array) $wf->getParam('lists.bullet_styles'); if (empty($bullet) || count($bullet) === 1 && array_shift($bullet) === 'default') { return false; } return $bullet; }
function getConfig(&$settings) { $wf = WFEditor::getInstance(); $settings['templatemanager_selected_content_classes'] = $wf->getParam('templatemanager.selected_content_classes', ''); $settings['templatemanager_cdate_classes'] = $wf->getParam('templatemanager.cdate_classes', 'cdate creationdate', 'cdate creationdate'); $settings['templatemanager_mdate_classes'] = $wf->getParam('templatemanager.mdate_classes', 'mdate modifieddate', 'mdate modifieddate'); $settings['templatemanager_cdate_format'] = $wf->getParam('templatemanager.cdate_format', '%m/%d/%Y : %H:%M:%S', '%m/%d/%Y : %H:%M:%S'); $settings['templatemanager_mdate_format'] = $wf->getParam('templatemanager.mdate_format', '%m/%d/%Y : %H:%M:%S', '%m/%d/%Y : %H:%M:%S'); $settings['templatemanager_content_url'] = $wf->getParam('templatemanager.content_url', ''); }
public static function getStyles() { $wf = WFEditor::getInstance(); if (JRequest::getWord('layout') === 'plugin') { // return file(s) array if ($wf->getParam('editor.compress_css', 0)) { return array(dirname(dirname(__FILE__)) . '/css/editor.css'); } // use document instance $document = JFactory::getDocument(); $document->addStyleSheet(JURI::root(true) . '/components/com_jce/editor/tiny_mce/plugins/source/css/editor.css?version=' . $wf->getVersion()); } }
public static function getStyles() { $wf = WFEditor::getInstance(); // only required if we're packing css if ($wf->getParam('editor.compress_css', 0)) { jimport('joomla.filesystem.folder'); // get UI Theme $theme = $wf->getParam('editor.dialog_theme', 'jce'); $ui = JFolder::files(WF_EDITOR_LIBRARIES . '/css/jquery/' . $theme, '\\.css$'); $file = count($ui) ? basename($ui[0]) : ''; // add ui theme css file return array(WF_EDITOR_LIBRARIES . '/jquery/css/jquery-ui.custom.css', dirname(dirname(__FILE__)) . '/css/dialog.css'); } }
public static function getConfig(&$settings) { wfimport('admin.models.editor'); $model = new WFModelEditor(); $wf = WFEditor::getInstance(); // html5 block elements $html5 = array('section', 'article', 'aside', 'figure'); // get current schema $schema = $wf->getParam('editor.schema', 'html4'); $verify = (bool) $wf->getParam('editor.verify_html', 0); $legacy = $wf->getParam('editor.theme_advanced_blockformats'); $default = 'p,div,address,pre,h1,h2,h3,h4,h5,h6,code,samp,span,section,article,aside,figure,dt,dd'; // get blockformats from parameter $blockformats = $wf->getParam('formatselect.blockformats', $default, $default); // handle empty list if (empty($blockformats)) { if (!empty($legacy)) { $blockformats = $legacy; } else { $blockformats = $default; } } $list = array(); $blocks = array(); // make an array if (is_string($blockformats)) { $blockformats = explode(',', $blockformats); } // create label / value list using default foreach ($blockformats as $v) { if (array_key_exists($v, self::$formats)) { $key = self::$formats[$v]; } // skip html5 blocks for html4 schema if ($verify && $schema == 'html4' && in_array($v, $html5)) { continue; } if (isset($key)) { $list[$key] = $v; } $blocks[] = $v; // add div container if ($v === 'div') { $list['advanced.div_container'] = 'div_container'; } } // Format list / Remove Format $settings['formatselect_blockformats'] = json_encode($list); }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); $settings['paste_dialog_width'] = $wf->getParam('paste.dialog_width', 450, 450); $settings['paste_dialog_height'] = $wf->getParam('paste.dialog_height', 400, 400); $settings['paste_use_dialog'] = $wf->getParam('paste.use_dialog', 0, 0); $settings['paste_force_cleanup'] = $wf->getParam('paste.force_cleanup', 0, 0); $settings['paste_strip_class_attributes'] = $wf->getParam('paste.strip_class_attributes', 'all', 'all'); $settings['paste_remove_styles'] = $wf->getParam('paste.remove_styles', 0, 0); $settings['paste_retain_style_properties'] = $wf->getParam('paste.retain_style_properties', '', ''); $settings['paste_remove_spans'] = $wf->getParam('paste.remove_spans', 0, 0); $settings['paste_remove_styles_if_webkit'] = $wf->getParam('paste.remove_styles_if_webkit', 0, 0); $settings['paste_remove_empty_paragraphs'] = $wf->getParam('paste.remove_empty_paragraphs', 1, 1); $settings['paste_text'] = $wf->getParam('paste.text', 1, 1); $settings['paste_html'] = $wf->getParam('paste.html', 1, 1); }
public function getConfig(&$settings) { $wf = WFEditor::getInstance(); $model = JModel::getInstance('editor', 'WFModel'); $doctypes = array('XHTML 1.0 Transitional' => '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">', 'XHTML 1.0 Frameset' => '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">', 'XHTML 1.0 Strict' => '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">', 'XHTML 1.1' => '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">', 'HTML 4.01 Transitional' => '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">', 'HTML 4.01 Strict' => '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">', 'HTML 4.01 Frameset' => '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">', 'HTML 5' => '<!DOCTYPE HTML>'); $doctype = $wf->getParam('fullpage.default_doctype', 'HTML 4.01 Transitional', 'HTML 4.01 Transitional'); $settings['fullpage_fonts'] = $model->getEditorFonts(); $settings['fullpage_fontsizes'] = $wf->getParam('editor.theme_advanced_font_sizes', '8pt,10pt,12pt,14pt,18pt,24pt,36pt'); $settings['fullpage_default_doctype'] = isset($doctypes[$doctype]) ? addslashes($doctypes[$doctype]) : ''; $settings['fullpage_hide_in_source_view'] = $wf->getParam('fullpage.hide_in_source_view', 0, 0); $settings['fullpage_default_encoding'] = $wf->getParam('fullpage.default_encoding'); $settings['fullpage_default_xml_pi'] = $wf->getParam('fullpage.default_xml_pi', 0, 0); $settings['fullpage_default_font_family'] = $wf->getParam('fullpage.default_font_family'); $settings['fullpage_default_title'] = $wf->getParam('fullpage.default_title', 'Untitled Document', 'Untitled Document'); $settings['fullpage_default_font_size'] = $wf->getParam('fullpage.default_font_size'); $settings['fullpage_default_text_color'] = $wf->getParam('fullpage.default_text_color'); }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); $settings['clipboard_paste_dialog_width'] = $wf->getParam('clipboard.paste_dialog_width', 450, 450); $settings['clipboard_paste_dialog_height'] = $wf->getParam('clipboard.paste_dialog_height', 400, 400); $settings['clipboard_paste_use_dialog'] = $wf->getParam('clipboard.paste_use_dialog', 0, 0, 'boolean'); $settings['clipboard_paste_force_cleanup'] = $wf->getParam('clipboard.paste_force_cleanup', 0, 0, 'boolean'); $settings['clipboard_paste_strip_class_attributes'] = $wf->getParam('clipboard.paste_strip_class_attributes', 0, 0); $settings['clipboard_paste_remove_styles'] = $wf->getParam('clipboard.paste_remove_styles', 0, 0, 'boolean'); $settings['clipboard_paste_retain_style_properties'] = $wf->getParam('clipboard.paste_retain_style_properties', '', ''); $settings['clipboard_paste_remove_spans'] = $wf->getParam('clipboard.paste_remove_spans', 0, 0, 'boolean'); $settings['clipboard_paste_remove_attributes'] = $wf->getParam('clipboard.paste_remove_attributes', '', ''); $settings['clipboard_paste_remove_styles_if_webkit'] = $wf->getParam('clipboard.paste_remove_styles_if_webkit', 0, 0, 'boolean'); $settings['clipboard_paste_remove_empty_paragraphs'] = $wf->getParam('clipboard.paste_remove_empty_paragraphs', 1, 1, 'boolean'); $settings['clipboard_paste_text'] = $wf->getParam('clipboard.paste_text', 1, 1, 'boolean'); $settings['clipboard_paste_html'] = $wf->getParam('clipboard.paste_html', 1, 1, 'boolean'); $settings['clipboard_paste_process_footnotes'] = $wf->getParam('clipboard.paste_process_footnotes', 'convert', 'convert'); }
public function getConfig(&$settings) { $wf = WFEditor::getInstance(); $model = JModel::getInstance('editor', 'WFModel'); if (!in_array('cleanup', $settings['plugins'])) { $settings['plugins'][] = 'cleanup'; } $settings['cleanup_pluginmode'] = $wf->getParam('cleanup.pluginmode', 0, 0); $settings['verify_html'] = $wf->getParam('editor.verify_html', 0, 1); $settings['event_elements'] = $wf->getParam('editor.event_elements', 'a,img', 'a,img'); // Tables & Lists $settings['table_inline_editing'] = 1; $settings['fix_list_elements'] = 1; $settings['fix_table_elements'] = 1; if ($wf->getParam('editor.allow_applet', 0, 0)) { $model->removeKeys($settings['invalid_elements'], 'applet'); } }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); $model = JModel::getInstance('editor', 'WFModel'); $settings['cleanup_pluginmode'] = $wf->getParam('cleanup.pluginmode', 0, 0, 'boolean'); /** TODO Re-visit in 2.1 // get validate schema $schema = $wf->getParam('editor.verify_html', 'html4'); // backwards compatability if ($schema == 1) { $schema = 'html4'; } if ($schema == 'xml') { $settings['verify_html'] = false; } else { $settings['schema'] = $schema; } **/ $settings['verify_html'] = $wf->getParam('editor.verify_html', 0, 1, 'boolean'); // Tables & Lists $settings['table_inline_editing'] = true; $settings['fix_list_elements'] = true; // Get Extended elements $settings['extended_valid_elements'] = $wf->getParam('editor.extended_elements', '', ''); // Configuration list of invalid elements as array $settings['invalid_elements'] = explode(',', $wf->getParam('editor.invalid_elements', '', '')); // Add elements to invalid list (removed by plugin) $model->addKeys($settings['invalid_elements'], self::$invalid_elements); // remove extended_valid_elements if ($settings['extended_valid_elements']) { preg_match_all('#(\\w+)(\\[([^\\]]+)\\])?#', $settings['extended_valid_elements'], $extended); if ($extended && count($extended) > 1) { $settings['invalid_elements'] = array_diff($settings['invalid_elements'], $extended[1]); } } // remove it if it is the same as the default if ($settings['invalid_elements'] === self::$invalid_elements) { $settings['invalid_elements'] = array(); } $settings['invalid_attributes'] = $wf->getParam('editor.invalid_attributes', 'dynsrc,lowsrc', 'dynsrc,lowsrc', 'string', true); $settings['invalid_attribute_values'] = $wf->getParam('editor.invalid_attribute_values', '', '', 'string', true); }
public static function getConfig(&$settings) { $wf = WFEditor::getInstance(); wfimport('admin.models.editor'); $model = new WFModelEditor(); // Encoding $settings['entity_encoding'] = $wf->getParam('editor.entity_encoding'); // keep $nbsp = (bool) $wf->getParam('editor.keep_nbsp', 1); // use named encoding with limited entities set if raw/utf-8 and keep_nbsp === true if ($settings['entity_encoding'] === 'raw' && $nbsp) { $settings['entity_encoding'] = ''; $settings['entities'] = '160,nbsp,173,shy'; } // set "plugin mode" $settings['cleanup_pluginmode'] = $wf->getParam('editor.cleanup_pluginmode', 0, 0); // get verify html (default is true) $settings['verify_html'] = $wf->getParam('editor.verify_html', 1, 1, 'boolean', false); $settings['pad_empty_tags'] = $wf->getParam('editor.pad_empty_tags', 1, 1, 'boolean'); // set schema $settings['schema'] = $wf->getParam('editor.schema', 'mixed'); if ($settings['schema'] === "html5") { $settings['schema'] = "html5-strict"; } // Get Extended elements $settings['extended_valid_elements'] = $wf->getParam('editor.extended_elements', '', ''); // Configuration list of invalid elements as array $settings['invalid_elements'] = explode(',', preg_replace('#\\s+#', '', $wf->getParam('editor.invalid_elements', '', ''))); // Add elements to invalid list (removed by plugin) $model->addKeys($settings['invalid_elements'], self::$invalid_elements); // remove extended_valid_elements if ($settings['extended_valid_elements']) { preg_match_all('#(\\w+)(\\[([^\\]]+)\\])?#', $settings['extended_valid_elements'], $extended); if ($extended && count($extended) > 1) { $settings['invalid_elements'] = array_diff($settings['invalid_elements'], $extended[1]); } } // remove it if it is the same as the default if ($settings['invalid_elements'] === self::$invalid_elements) { $settings['invalid_elements'] = array(); } $settings['invalid_attributes'] = $wf->getParam('editor.invalid_attributes', 'dynsrc,lowsrc', 'dynsrc,lowsrc', 'string', true); $settings['invalid_attribute_values'] = $wf->getParam('editor.invalid_attribute_values', '', '', 'string', true); }
public function getConfig(&$settings) { // Get JContentEditor instance $model = JModel::getInstance('editor', 'WFModel'); $wf = WFEditor::getInstance(); if (!in_array('code', $settings['plugins'])) { $settings['plugins'][] = 'code'; } $settings['code_php'] = $wf->getParam('editor.allow_php', 0, 0); $settings['code_script'] = $wf->getParam('editor.allow_javascript', 0, 0); $settings['code_style'] = $wf->getParam('editor.allow_css', 0, 0); $settings['code_cdata'] = $wf->getParam('editor.cdata', 1, 1); // Invalid Elements if ($settings['code_script'] == 1) { $model->removeKeys($settings['invalid_elements'], 'script'); } if ($settings['code_style'] == 1) { $model->removeKeys($settings['invalid_elements'], 'style'); } }