diff --git a/lib/WebGUI.pm b/lib/WebGUI.pm index 4d1cb883b..749076250 100644 --- a/lib/WebGUI.pm +++ b/lib/WebGUI.pm @@ -178,7 +178,7 @@ sub handle { # A WebGUI::Asset::Template object means we should process it if ( defined $output && blessed $output && $output->isa( 'WebGUI::Asset::Template' ) ) { - $session->http->sendHeader; + $session->response->sendHeader; $session->output->print( $output->process ); last; } @@ -190,7 +190,7 @@ sub handle { # other non-empty output should be used as the response body elsif (defined $output && $output ne "") { # Auto-set the headers - $session->http->sendHeader; + $session->response->sendHeader; # Use contentHandler's return value as the output $session->output->print($output); @@ -198,7 +198,7 @@ sub handle { } # Keep processing for success codes elsif ($session->response->status < 200 || $session->response->status > 299) { - $session->http->sendHeader; + $session->response->sendHeader; last; } } diff --git a/lib/WebGUI/Account.pm b/lib/WebGUI/Account.pm index bcac41a2f..1ddd432fd 100644 --- a/lib/WebGUI/Account.pm +++ b/lib/WebGUI/Account.pm @@ -287,7 +287,7 @@ sub displayContent { return $output if($noStyle); #Wrap the layout in the user style - $session->http->setCacheControl("none"); + $session->response->setCacheControl("none"); return $session->style->process($output,$self->getStyleTemplateId); } diff --git a/lib/WebGUI/AdminConsole.pm b/lib/WebGUI/AdminConsole.pm index c5ff71049..2f1be5e29 100644 --- a/lib/WebGUI/AdminConsole.pm +++ b/lib/WebGUI/AdminConsole.pm @@ -255,7 +255,7 @@ A string that defaults to _function's title. sub render { my $self = shift; my $session = $self->session; - $session->http->setCacheControl("none"); + $session->response->setCacheControl("none"); my %var; $var{"application_loop"} = $self->getAdminFunction; $var{"application.workarea"} = shift; diff --git a/lib/WebGUI/Asset.pm b/lib/WebGUI/Asset.pm index 2f998d9c7..750349154 100644 --- a/lib/WebGUI/Asset.pm +++ b/lib/WebGUI/Asset.pm @@ -653,11 +653,11 @@ sub checkView { my $self = shift; return $self->session->privilege->noAccess() unless $self->canView; my $session = $self->session; - my ($conf, $http) = $self->session->quick(qw(config http)); + my ($conf, $response) = $self->session->quick(qw(config response)); if ($conf->get("sslEnabled") && $self->get("encryptPage") && ! $self->session->request->secure) { # getUrl already changes url to https if 'encryptPage' - $http->setRedirect($self->getUrl); - $http->sendHeader; + $response->setRedirect($self->getUrl); + $response->sendHeader; return "chunked"; } elsif ($session->isAdminOn && $self->get("state") =~ /^trash/) { # show em trash @@ -665,8 +665,8 @@ sub checkView { if ($self->session->form->process('revision')) { $queryFrag .= ";revision=".$self->session->form->process('revision'); } - $http->setRedirect($self->getUrl($queryFrag)); - $http->sendHeader; + $response->setRedirect($self->getUrl($queryFrag)); + $response->sendHeader; return "chunked"; } elsif ($session->isAdminOn && $self->get("state") =~ /^clipboard/) { # show em clipboard @@ -674,8 +674,8 @@ sub checkView { if ($self->session->form->process('revision')) { $queryFrag .= ";revision=".$self->session->form->process('revision'); } - $http->setRedirect($self->getUrl($queryFrag)); - $http->sendHeader; + $response->setRedirect($self->getUrl($queryFrag)); + $response->sendHeader; return "chunked"; } elsif ($self->get("state") ne "published") { # tell em it doesn't exist anymore @@ -949,7 +949,7 @@ sub forkWithStatusPage { proceed => $args->{redirect} || '', } ); - $session->http->setRedirect( $self->getUrl($pairs) ); + $session->response->setRedirect( $self->getUrl($pairs) ); return 'redirect'; } ## end sub forkWithStatusPage @@ -2212,23 +2212,23 @@ sub proceed { return $session->asset->www_manageAssets; } elsif ($proceed eq "viewParent") { - $session->http->setRedirect( $self->getParent->getUrl ); + $session->response->setRedirect( $self->getParent->getUrl ); return "redirect"; } elsif ($proceed eq "editParent") { - $session->http->setRedirect( $self->getParent->getUrl('func=edit') ); + $session->response->setRedirect( $self->getParent->getUrl('func=edit') ); return "redirect"; } elsif ($proceed eq "goBackToPage" && $session->form->process('returnUrl')) { - $session->http->setRedirect($session->form->process("returnUrl")); + $session->response->setRedirect($session->form->process("returnUrl")); return "redirect"; } elsif ($proceed ne "") { - $session->http->setRedirect( $self->getUrl( 'func=' . $proceed ) ); + $session->response->setRedirect( $self->getUrl( 'func=' . $proceed ) ); return "redirect"; } - $session->http->setRedirect( $self->getUrl ); + $session->response->setRedirect( $self->getUrl ); return "redirect"; } @@ -2964,7 +2964,7 @@ sub www_view { # don't allow viewing of the root asset if ($self->getId eq "PBasset000000000000001") { - $self->session->http->setRedirect($self->getDefault($self->session)->getUrl); + $self->session->response->setRedirect($self->getDefault($self->session)->getUrl); return undef; } diff --git a/lib/WebGUI/Asset/Event.pm b/lib/WebGUI/Asset/Event.pm index 169bdbd6c..2f9fc887e 100644 --- a/lib/WebGUI/Asset/Event.pm +++ b/lib/WebGUI/Asset/Event.pm @@ -2425,7 +2425,7 @@ ENDJS ### Show the processed template - $session->http->sendHeader; + $session->response->sendHeader; my $style = $self->getParent->processStyle($self->getSeparator); my ($head, $foot) = split($self->getSeparator,$style); $self->session->output->print($head, 1); @@ -2461,8 +2461,8 @@ sub www_view { return $self->session->privilege->noAccess() unless $self->canView; my $check = $self->checkView; return $check if (defined $check); - $self->session->http->setCacheControl($self->getParent->visitorCacheTimeout) if ($self->session->user->isVisitor); - $self->session->http->sendHeader; + $self->session->response->setCacheControl($self->getParent->visitorCacheTimeout) if ($self->session->user->isVisitor); + $self->session->response->sendHeader; $self->prepareView; my $style = $self->getParent->processStyle($self->getSeparator); my ($head, $foot) = split($self->getSeparator,$style); diff --git a/lib/WebGUI/Asset/File.pm b/lib/WebGUI/Asset/File.pm index 5be2e8a7a..e5cafd6e8 100644 --- a/lib/WebGUI/Asset/File.pm +++ b/lib/WebGUI/Asset/File.pm @@ -667,9 +667,10 @@ sub www_view { return sprintf($i18n->get("file not found"), $self->getUrl()); } - $session->http->setRedirect($self->getFileUrl) unless $session->config->get('enableStreamingUploads'); - $session->http->setStreamedFile($self->getStorageLocation->getPath($self->filename)); - $session->http->sendHeader; + # sendFile does either a redirect or starts a stream depending on how we're configured + + $session->response->sendFile($self->getStorageLocation, $self->filename); + return 'chunked'; } diff --git a/lib/WebGUI/Asset/File/GalleryFile.pm b/lib/WebGUI/Asset/File/GalleryFile.pm index 787676db5..5feb3a261 100644 --- a/lib/WebGUI/Asset/File/GalleryFile.pm +++ b/lib/WebGUI/Asset/File/GalleryFile.pm @@ -1154,8 +1154,8 @@ sub www_view { # Add to views $self->update({ views => $self->views + 1 }); - $self->session->http->setLastModified($self->getContentLastModified); - $self->session->http->sendHeader; + $self->session->response->setLastModified($self->getContentLastModified); + $self->session->response->sendHeader; $self->prepareView; my $style = $self->processStyle($self->getSeparator); my ($head, $foot) = split($self->getSeparator,$style); diff --git a/lib/WebGUI/Asset/File/GalleryFile/Photo.pm b/lib/WebGUI/Asset/File/GalleryFile/Photo.pm index aebaf5c4c..cffd05072 100644 --- a/lib/WebGUI/Asset/File/GalleryFile/Photo.pm +++ b/lib/WebGUI/Asset/File/GalleryFile/Photo.pm @@ -548,7 +548,7 @@ sub www_download { my $storage = $self->getStorageLocation; $self->session->response->content_type( "image/jpeg" ); - $self->session->http->setLastModified( $self->getContentLastModified ); + $self->session->response->setLastModified( $self->getContentLastModified ); my $resolution = $self->session->form->get("resolution"); if ($resolution) { diff --git a/lib/WebGUI/Asset/File/ZipArchive.pm b/lib/WebGUI/Asset/File/ZipArchive.pm index 2a27467d5..6f8a5a9c0 100644 --- a/lib/WebGUI/Asset/File/ZipArchive.pm +++ b/lib/WebGUI/Asset/File/ZipArchive.pm @@ -270,7 +270,7 @@ sub www_view { if ($self->session->isAdminOn) { return $self->session->asset($self->getContainer)->www_view; } - $self->session->http->setRedirect($self->getFileUrl($self->showPage)); + $self->session->response->setRedirect($self->getFileUrl($self->showPage)); return "1"; } diff --git a/lib/WebGUI/Asset/MapPoint.pm b/lib/WebGUI/Asset/MapPoint.pm index a2240c433..9867cf0a2 100644 --- a/lib/WebGUI/Asset/MapPoint.pm +++ b/lib/WebGUI/Asset/MapPoint.pm @@ -470,7 +470,7 @@ so that this point is automatically shown. sub www_view { my $self = shift; - $self->session->http->setRedirect( + $self->session->response->setRedirect( $self->getParent->getUrl('focusOn=' . $self->getId ) ); return "redirect"; diff --git a/lib/WebGUI/Asset/MatrixListing.pm b/lib/WebGUI/Asset/MatrixListing.pm index e67e5967c..93cad8440 100644 --- a/lib/WebGUI/Asset/MatrixListing.pm +++ b/lib/WebGUI/Asset/MatrixListing.pm @@ -785,10 +785,10 @@ sub www_click { $self->incrementCounter('clicks'); if ($session->form->process("manufacturer")) { - $session->http->setRedirect( $self->get('manufacturerURL') ); + $session->response->setRedirect( $self->get('manufacturerURL') ); } else { - $session->http->setRedirect( $self->get('productURL') ); + $session->response->setRedirect( $self->get('productURL') ); } return undef; } diff --git a/lib/WebGUI/Asset/Post/Thread.pm b/lib/WebGUI/Asset/Post/Thread.pm index bab8e324a..f4bf73d6a 100644 --- a/lib/WebGUI/Asset/Post/Thread.pm +++ b/lib/WebGUI/Asset/Post/Thread.pm @@ -1445,20 +1445,20 @@ Renders self->view based upon current style, subject to timeouts. Returns Privil =cut sub www_view { - my $self = shift; - my $currentPost = shift; - return $self->session->privilege->noAccess() unless $self->canView; - my $check = $self->checkView; - return $check if (defined $check); - $self->session->http->setCacheControl($self->visitorCacheTimeout) if ($self->session->user->isVisitor); - $self->session->http->sendHeader; - $self->prepareView; - my $style = $self->getParent->processStyle($self->getSeparator); - my ($head, $foot) = split($self->getSeparator,$style); - $self->session->output->print($head,1); - $self->session->output->print($self->view($currentPost)); - $self->session->output->print($foot,1); - return "chunked"; + my $self = shift; + my $currentPost = shift; + return $self->session->privilege->noAccess() unless $self->canView; + my $check = $self->checkView; + return $check if (defined $check); + $self->session->response->setCacheControl($self->visitorCacheTimeout) if ($self->session->user->isVisitor); + $self->session->response->sendHeader; + $self->prepareView; + my $style = $self->getParent->processStyle($self->getSeparator); + my ($head, $foot) = split($self->getSeparator,$style); + $self->session->output->print($head,1); + $self->session->output->print($self->view($currentPost)); + $self->session->output->print($foot,1); + return "chunked"; } diff --git a/lib/WebGUI/Asset/Redirect.pm b/lib/WebGUI/Asset/Redirect.pm index d250aed76..e4667d561 100644 --- a/lib/WebGUI/Asset/Redirect.pm +++ b/lib/WebGUI/Asset/Redirect.pm @@ -85,7 +85,7 @@ sub exportHtml_view { my $url = $self->redirectUrl; WebGUI::Macro::process($self->session, \$url); return '' if ($url eq $self->url); - $self->session->http->setRedirect($url); + $self->session->response->setRedirect($url); return $self->session->style->process('', 'PBtmpl0000000000000060'); } @@ -130,7 +130,7 @@ sub www_view { ',$i18n->get("assetName")); } unless ($url eq $self->url) { - $self->session->http->setRedirect($url,$self->redirectType); + $self->session->response->setRedirect($url,$self->redirectType); return undef; } return $i18n->get('self_referential'); diff --git a/lib/WebGUI/Asset/RichEdit.pm b/lib/WebGUI/Asset/RichEdit.pm index e64d35ed7..330ad8cea 100644 --- a/lib/WebGUI/Asset/RichEdit.pm +++ b/lib/WebGUI/Asset/RichEdit.pm @@ -326,46 +326,31 @@ override getEditForm => sub { return $f; }; -#---------------------------------------------------------------------------- - -=head2 getAllButtons ( ) - -Get a list of all the buttons in this MCE - -=cut - +# Get a list of all the buttons in this MCE sub getAllButtons { my ( $self ) = @_; - my @toolbarRows = map{[split "\n", $self->get("toolbarRow$_")]} (1..3); + my @toolbarRows = map{[split "\n", $self->getValue("toolbarRow$_")]} (1..3); my @toolbarButtons = map{ @{$_} } @toolbarRows; return @toolbarButtons; } -#---------------------------------------------------------------------------- - -=head2 getConfig ( ) - -Get a hashref of configuration to create this MCE. You must run the code -from getLoadPlugins before you can successfully initialize an MCE. You -must also specify the "elements" key so TinyMCE knows what textarea to -replace. - -=cut - +# Get a hashref of configuration to create this MCE. You must run the code +# from getLoadPlugins before you can successfully initialize an MCE. You +# must also specify the "elements" key so TinyMCE knows what textarea to +# replace. sub getConfig { my ($self) = @_; my $i18n = WebGUI::International->new($self->session, 'Asset_RichEdit'); my @plugins; push @plugins, "safari"; - push @plugins, "paste"; push @plugins, "contextmenu" - if $self->enableContextMenu; + if $self->getValue("enableContextMenu"); push @plugins, "inlinepopups" - if $self->inlinePopups; + if $self->getValue("inlinePopups"); push @plugins, "media" - if $self->allowMedia; + if $self->getValue( 'allowMedia' ); - my @toolbarRows = map{[split "\n", $self->get("toolbarRow$_")]} (1..3); + my @toolbarRows = map{[split "\n", $self->getValue("toolbarRow$_")]} (1..3); my @toolbarButtons = map{ @{$_} } @toolbarRows; my %config = ( mode => 'exact', @@ -379,18 +364,17 @@ sub getConfig { ( map { "theme_advanced_buttons" . ( $_ + 1 ) => ( join ',', @{ $toolbarRows[$_] } ) } ( 0 .. $#toolbarRows ) ), ask => JSON::false(), - preformatted => $self->preformatted ? JSON::true() : JSON::false(), - force_br_newlines => $self->useBr ? JSON::true() : JSON::false(), - force_p_newlines => $self->useBr ? JSON::false() : JSON::true(), - $self->useBr ? ( forced_root_block => JSON::false() ) : (), - remove_linebreaks => $self->removeLineBreaks ? JSON::true() : JSON::false(), - nowrap => $self->nowrap ? JSON::true() : JSON::false(), - directionality => $self->directionality, - theme_advanced_toolbar_location => $self->toolbarLocation, + preformatted => $self->getValue("preformatted") ? JSON::true() : JSON::false(), + force_br_newlines => $self->getValue("useBr") ? JSON::true() : JSON::false(), + force_p_newlines => $self->getValue("useBr") ? JSON::false() : JSON::true(), + $self->getValue("useBr") ? ( forced_root_block => JSON::false() ) : (), + remove_linebreaks => $self->getValue("removeLineBreaks") ? JSON::true() : JSON::false(), + nowrap => $self->getValue("nowrap") ? JSON::true() : JSON::false(), + directionality => $self->getValue("directionality"), + theme_advanced_toolbar_location => $self->getValue("toolbarLocation"), theme_advanced_statusbar_location => "bottom", - valid_elements => $self->validElements, + valid_elements => $self->getValue("validElements"), wg_userIsVisitor => $self->session->user->isVisitor ? JSON::true() : JSON::false(), - paste_postprocess => 'tinyMCE_WebGUI_paste_postprocess', ); foreach my $button (@toolbarButtons) { if ( $button eq "spellchecker" && $self->session->config->get('availableDictionaries') ) { @@ -441,10 +425,10 @@ sub getConfig { push @plugins, "-wgmacro"; } if ( $button eq "code" ) { - $config{theme_advanced_source_editor_width} = $self->sourceEditorWidth - if ( $self->sourceEditorWidth > 0 ); - $config{theme_advanced_source_editor_height} = $self->sourceEditorHeight - if ( $self->sourceEditorHeight > 0 ); + $config{theme_advanced_source_editor_width} = $self->getValue("sourceEditorWidth") + if ( $self->getValue("sourceEditorWidth") > 0 ); + $config{theme_advanced_source_editor_height} = $self->getValue("sourceEditorHeight") + if ( $self->getValue("sourceEditorHeight") > 0 ); } } ## end foreach my $button (@toolbarButtons) my $language = $i18n->getLanguage( '', "languageAbbreviation" ); @@ -452,10 +436,10 @@ sub getConfig { $language = $i18n->getLanguage( "English", "languageAbbreviation" ); } $config{language} = $language; - $config{content_css} = $self->cssFile + $config{content_css} = $self->getValue("cssFile") || $self->session->url->extras('tinymce-webgui/defaultcontent.css'); - $config{width} = $self->editorWidth if ( $self->editorWidth > 0 ); - $config{height} = $self->editorHeight if ( $self->editorHeight > 0 ); + $config{width} = $self->getValue("editorWidth") if ( $self->getValue("editorWidth") > 0 ); + $config{height} = $self->getValue("editorHeight") if ( $self->getValue("editorHeight") > 0 ); $config{plugins} = join( ",", @plugins ); return \%config; @@ -485,15 +469,8 @@ my $sql = "select asset.assetId, assetData.revisionDate from RichEdit left join return \%richEditors; } -#------------------------------------------------------------------- - -=head2 getLoadPlugins ( ) - -Get the JS code to load the plugins for this MCE. Needs to be called once -on the page this MCE will be on - -=cut - +# Get the JS code to load the plugins for this MCE. Needs to be called once +# on the page this MCE will be on sub getLoadPlugins { my ( $self ) = @_; my %loadPlugins; @@ -536,16 +513,131 @@ sub getRichEditor { my $self = shift; return '' if ($self->disableRichEditor); my $nameId = shift; +<<<<<<< HEAD + my @plugins; + my %loadPlugins; + push @plugins, "safari"; + push @plugins, "contextmenu" + if $self->enableContextMenu; + push @plugins, "inlinepopups" + if $self->inlinePopups; + push @plugins, "media" + if $self->allowMedia; + + my @toolbarRows = map{[split "\n", $self->get("toolbarRow$_")]} (1..3); + my @toolbarButtons = map{ @{$_} } @toolbarRows; my $i18n = WebGUI::International->new($self->session, 'Asset_RichEdit'); my $ask = $self->askAboutRichEdit; + my %config = ( + mode => $ask ? "none" : "exact", + elements => $nameId, + theme => "advanced", + relative_urls => JSON::false(), + remove_script_host => JSON::true(), + auto_reset_designmode => JSON::true(), + cleanup_callback => "tinyMCE_WebGUI_Cleanup", + urlconverter_callback => "tinyMCE_WebGUI_URLConvertor", + theme_advanced_resizing => JSON::true(), + (map { "theme_advanced_buttons".($_+1) => (join ',', @{$toolbarRows[$_]}) } + (0..$#toolbarRows)), + #ask => $self->getValue("askAboutRichEdit") ? JSON::true() : JSON::false(), + ask => JSON::false(), + preformatted => $self->preformatted ? JSON::true() : JSON::false(), + force_br_newlines => $self->useBr ? JSON::true() : JSON::false(), + force_p_newlines => $self->useBr ? JSON::false() : JSON::true(), + $self->useBr ? ( forced_root_block => JSON::false() ) : (), + remove_linebreaks => $self->removeLineBreaks ? JSON::true() : JSON::false(), + nowrap => $self->nowrap ? JSON::true() : JSON::false(), + directionality => $self->directionality, + theme_advanced_toolbar_location => $self->toolbarLocation, + theme_advanced_statusbar_location => "bottom", + valid_elements => $self->validElements, + wg_userIsVisitor => $self->session->user->isVisitor ? JSON::true() : JSON::false(), + ); # if ($ask) { # $config{oninit} = 'turnOffTinyMCE_'.$nameId; # } - $self->richedit_headTags; + foreach my $button (@toolbarButtons) { + if ($button eq "spellchecker" && $self->session->config->get('availableDictionaries')) { + push(@plugins,"-wgspellchecker"); + $loadPlugins{wgspellchecker} = $self->session->url->extras("tinymce-webgui/plugins/wgspellchecker/editor_plugin.js"); + $config{spellchecker_rpc_url} = $self->session->url->gateway('', "op=spellCheck"); + $config{spellchecker_languages} = + join(',', map { ($_->{default} ? '+' : '').$_->{name}.'='.$_->{id} } @{$self->session->config->get('availableDictionaries')}); + } + push(@plugins,"table") if ($button eq "tablecontrols"); + push(@plugins,"save") if ($button eq "save"); + push(@plugins,"advhr") if ($button eq "advhr"); + push(@plugins,"fullscreen") if ($button eq "fullscreen"); + if ($button eq "advimage") { + push(@plugins,"advimage"); + $config{external_link_list_url} = ""; + } + if ($button eq "advlink") { + $config{external_image_list_url} = ""; + $config{file_browser_callback} = "mcFileManager.filebrowserCallBack"; + push(@plugins,"advlink"); + } + push(@plugins,"emotions") if ($button eq "emotions"); + push(@plugins,"iespell") if ($button eq "iespell"); + $config{gecko_spellcheck} = 'true' if ($button eq "iespell"); + if ($button eq "paste" || $button eq "pastetext" || $button eq "pasteword") { + push(@plugins,"paste"); + } + if ($button eq "insertdate" || $button eq "inserttime" || $button eq "insertdatetime") { + $config{plugin_insertdate_dateFormat} = "%Y-%m-%d"; + $config{plugin_insertdate_timeFormat} = "%H:%M:%S"; + push(@plugins,"insertdatetime"); + } + push(@plugins,"preview") if ($button eq "preview"); + if ($button eq "media") { + push(@plugins,"media"); + } + push(@plugins,"searchreplace") if ($button eq "search" || $button eq "replace" || $button eq "searchreplace"); + push(@plugins,"print") if ($button eq "print"); + if ($button eq "wginsertimage") { + push @plugins, "-wginsertimage"; + $loadPlugins{wginsertimage} = $self->session->url->extras("tinymce-webgui/plugins/wginsertimage/editor_plugin.js"); + } + if ($button eq "wgpagetree") { + push @plugins, "-wgpagetree"; + $loadPlugins{wgpagetree} = $self->session->url->extras("tinymce-webgui/plugins/wgpagetree/editor_plugin.js"); + } + if ($button eq "wgmacro") { + push @plugins, "-wgmacro"; + $loadPlugins{wgmacro} = $self->session->url->extras("tinymce-webgui/plugins/wgmacro/editor_plugin.js"); + } + if ($button eq "code") { + $config{theme_advanced_source_editor_width} = $self->sourceEditorWidth if ($self->sourceEditorWidth > 0); + $config{theme_advanced_source_editor_height} = $self->sourceEditorHeight if ($self->sourceEditorHeight > 0); + } + } + my $language = $i18n->getLanguage('' ,"languageAbbreviation"); + unless ($language) { + $language = $i18n->getLanguage("English","languageAbbreviation"); + } + $config{language} = $language; + $config{content_css} = $self->cssFile || $self->session->url->extras('tinymce-webgui/defaultcontent.css'); + $config{width} = $self->editorWidth || "100%"; + $config{height} = $self->editorHeight || "100%"; + $config{plugins} = join(",",@plugins); + +======= + my $i18n = WebGUI::International->new($self->session, 'Asset_RichEdit'); + my $ask = $self->getValue("askAboutRichEdit"); +# if ($ask) { +# $config{oninit} = 'turnOffTinyMCE_'.$nameId; +# } + $self->session->style->setScript($self->session->url->extras('yui/build/yahoo/yahoo-min.js'),{type=>"text/javascript"}); + $self->session->style->setScript($self->session->url->extras('yui/build/event/event-min.js'),{type=>"text/javascript"}); + $self->session->style->setScript($self->session->url->extras('tinymce/jscripts/tiny_mce/tiny_mce_src.js'),{type=>"text/javascript"}); + $self->session->style->setScript($self->session->url->extras("tinymce-webgui/callbacks.js"),{type=>"text/javascript"}); +>>>>>>> fix carousel editor panel my $out = ''; if ($ask) { $out = q||.$i18n->get('Toggle editor').q||; } + $self->richedit_headTags; $out .= qq|