Esempio n. 1
0
 /**
  * Register globally accessible vars.
  *
  * @param bool $final_render				- Whether we are rendering the final response
  */
 protected function register_globals($final_render = false)
 {
     if ($this->registered_globals) {
         return;
     }
     $this->registered_globals = true;
     global $vbulletin, $style;
     $this->register_ref('bbuserinfo', $vbulletin->userinfo);
     $this->register_ref('vboptions', $vbulletin->options);
     $this->register_ref('session', $vbulletin->session->vars);
     $this->register('relpath', htmlspecialchars_uni($vbulletin->input->fetch_relpath()));
     $this->register_global('vbphrase');
     $this->register_global('vbcollapse');
     $this->register_global('ad_location');
     $this->register_global('style');
     $this->register_global('show', false);
     $this->register_global('template_hook', false);
     $vbcsspath = vB_Template::fetch_css_path();
     $this->register('vbcsspath', $vbcsspath);
     $this->register('yui_version', YUI_VERSION);
     if ($vbulletin->products['vbcms']) {
         $this->register('vb_suite_installed', true);
     }
     // If we're using bgclass, we might be using exec_switch_bg()
     // but we can only be sure if we match the global value.
     // A hack that will hopefully go away.
     if (isset($bgclass) and $bgclass == $GLOBALS['bgclass']) {
         $this->register_ref('bgclass', $GLOBALS['bgclass']);
     }
 }
Esempio n. 2
0
 /**
  * Sets dynamic configuration options that should be used on all vbulletin editors
  * These options get serialized to JSON and passed to the the editor instance as config options
  */
 protected function setGlobalConfig()
 {
     global $style;
     $this->config['customConfig'] = vB::$vbulletin->options['bburl'] . '/clientscript/ckeditor_config.js?v=' . vB::$vbulletin->options['simpleversion'];
     $css_path = (empty(vB::$vbulletin->options['cssurl']) ? vB::$vbulletin->options['bburl'] . '/' : '') . vB_Template::fetch_css_path();
     $this->config['contentsCss'] = $css_path . 'editor_contents.css';
     $this->config['yuiUploadCss'] = str_replace('&', '&', $css_path . 'yuiupload.css');
     if (vB::$vbulletin->options['storecssasfile']) {
         $this->config['contentsCss'] .= '?d=' . $style['dateline'];
         $this->config['yuiUploadCss'] .= '?d=' . $style['dateline'];
     }
     $this->config['vbulletin'] = array('securitytoken' => vB::$vbulletin->userinfo['securitytoken'], 'bburl' => vB::$vbulletin->options['bburl'], 'bbcodecache' => vB::$vbulletin->bbcodecache);
     $this->config['vbulletin']['lastphraseupdate'] = intval($this->vbphrasegroup['ckeditor']['maxdateline']);
     $this->config['vbulletin']['contenttypeid'] = $this->contenttypeid;
     $this->config['vbulletin']['contentid'] = intval($this->contentid);
     $this->config['vbulletin']['parentcontentid'] = intval($this->parentcontentid);
     $this->config['vbulletin']['userid'] = intval($this->userid);
     $postautosave = intval(vB::$vbulletin->options['postautosave']);
     if ($postautosave and $postautosave < 20) {
         $postautosave = 20;
     }
     $this->config['vbulletin']['postautosave'] = $postautosave;
     $this->config['vbulletin']['phrase'] = array('attachments' => $this->vbphrase['attachments'], 'wrap_quote_tags' => $this->vbphrase['wrap_quote_tags'], 'wrap_html_tags' => $this->vbphrase['wrap_html_tags'], 'wrap_php_tags' => $this->vbphrase['wrap_php_tags'], 'wrap_code_tags' => $this->vbphrase['wrap_code_tags'], 'wrap_x_tags' => $this->vbphrase['wrap_x_tags'], 'enter_tag_option' => $this->vbphrase['enter_tag_option'], 'enter_video_url_below' => $this->vbphrase['enter_video_url_below'], 'example_video_url' => $this->vbphrase['example_video_url'], 'insert_video' => $this->vbphrase['insert_video'], 'insert_video_clip' => $this->vbphrase['insert_video_clip'], 'supported_videos' => $this->vbphrase['supported_videos'], 'insert_preview_break' => $this->vbphrase['insert_preview_break'], 'insert_page_break' => $this->vbphrase['insert_page_break'], 'this_message_already_contains_a_preview_break' => $this->vbphrase['this_message_already_contains_a_preview_break'], 'switch_editor_mode' => $this->vbphrase['switch_editor_mode'], 'enter_link_url' => $this->vbphrase['enter_link_url'], 'enter_list_item' => $this->vbphrase['enter_list_item'], 'iespell_not_installed' => $this->vbphrase['iespell_not_installed']);
     $this->config['language'] = vB::$vbulletin->userinfo['lang_code'];
     if (vB::$vbulletin->stylevars['textdirection']['string'] == 'rtl') {
         $this->config['contentsLangDirection'] = 'rtl';
     }
     $this->config['smiley_categories'] = array();
     $this->config['smiley_images'] = array();
     $this->config['smiley_descriptions'] = array();
     $this->config['indentOffset'] = EDITOR_INDENT;
     $this->setEditorMode();
 }