From c1303373f06a12406c634edfd133245c9d55c67d Mon Sep 17 00:00:00 2001 From: JT Smith Date: Tue, 3 May 2005 18:22:42 +0000 Subject: [PATCH] rich editor integrated --- docs/upgrades/upgrade_6.5.6-6.6.0.sql | 7 ++++++ lib/WebGUI/Asset/Post.pm | 23 ++++--------------- lib/WebGUI/Asset/Wobject/Collaboration.pm | 15 ++++++------ lib/WebGUI/Form.pm | 2 +- lib/WebGUI/Operation/Settings.pm | 10 ++++---- .../i18n/English/Asset_Collaboration.pm | 6 ++--- lib/WebGUI/i18n/English/WebGUI.pm | 3 +++ 7 files changed, 33 insertions(+), 33 deletions(-) diff --git a/docs/upgrades/upgrade_6.5.6-6.6.0.sql b/docs/upgrades/upgrade_6.5.6-6.6.0.sql index 64a7162a9..8d42f412b 100644 --- a/docs/upgrades/upgrade_6.5.6-6.6.0.sql +++ b/docs/upgrades/upgrade_6.5.6-6.6.0.sql @@ -69,3 +69,10 @@ create table RichEdit ( toolbarRow3 text, enableContextMenu int not null default 0 ); +delete from settings where name='richEditCss'; +insert into settings values ("richEditor","PBrichedit000000000001"); +alter table Collaboration drop column allowRichEdit; +alter table Collaboration add column richEditor varchar(22) not null default 'PBrichedit000000000002'; +delete from userProfileField where fieldName like 'richEditor%'; +delete from userProfileData where fieldName like 'richEditor%'; + diff --git a/lib/WebGUI/Asset/Post.pm b/lib/WebGUI/Asset/Post.pm index de2fd47f3..253dee6c2 100644 --- a/lib/WebGUI/Asset/Post.pm +++ b/lib/WebGUI/Asset/Post.pm @@ -1012,24 +1012,11 @@ sub www_edit { name=>"title", value=>$title }); - if ($self->getThread->getParent->get("allowRichEdit")) { - $var{'content.form'} = WebGUI::Form::textarea({ - name=>"content", - value=>$content - }); - WebGUI::Style::setScript($session{config}{extrasURL}.'/tinymce/jscripts/tiny_mce/tiny_mce.js',{type=>"text/javascript"}); - $var{'content.form'} = ' '; - } else { - $var{'content.form'} = WebGUI::Form::textarea({ - name=>"content", - value=>$content - }); - } + $var{'content.form'} = WebGUI::Form::HTMLArea({ + name=>"content", + value=>$content, + richEditId=>$self->getThread->getParent->get("richEditor") + }); $var{'form.submit'} = WebGUI::Form::submit({ extras=>"onclick=\"this.value='".WebGUI::International::get(452)."'; this.form.func.value='editSave'; this.form.submit();\"" }); diff --git a/lib/WebGUI/Asset/Wobject/Collaboration.pm b/lib/WebGUI/Asset/Wobject/Collaboration.pm index 8354f5c66..aff558e2a 100644 --- a/lib/WebGUI/Asset/Wobject/Collaboration.pm +++ b/lib/WebGUI/Asset/Wobject/Collaboration.pm @@ -325,9 +325,9 @@ sub definition { fieldType=>"filterContent", defaultValue=>'javascript' }, - allowRichEdit =>{ - fieldType=>"yesNo", - defaultValue=>0 + richEditor =>{ + fieldType=>"selectList", + defaultValue=>"PBrichedit000000000002" }, attachmentsPerPost =>{ fieldType=>"integer", @@ -527,10 +527,11 @@ sub getEditForm { -label=>WebGUI::International::get('edit stamp', 'Asset_Collaboration'), -value=>$self->getValue("addEditStampToPosts") ); - $tabform->getTab("display")->yesNo( - -name=>"allowRichEdit", - -label=>WebGUI::International::get('rich edit', 'Asset_Collaboration'), - -value=>$self->getValue("allowRichEdit") + $tabform->getTab("display")->selectList( + -name=>"richEditor", + -label=>WebGUI::International::get('rich editor', 'Asset_Collaboration'), + -options=>WebGUI::SQL->buildHashRef("select assetId, title from asset where className='WebGUI::Asset::RichEdit' order by title"), + -value=>[$self->getValue("richEditor")] ); $tabform->getTab("display")->yesNo( -name=>"useContentFilter", diff --git a/lib/WebGUI/Form.pm b/lib/WebGUI/Form.pm index 44f096363..d26a55e82 100644 --- a/lib/WebGUI/Form.pm +++ b/lib/WebGUI/Form.pm @@ -1178,7 +1178,7 @@ sub HTMLArea { my $params = shift; my $rows = $params->{rows} || ($session{setting}{textAreaRows}+20); my $columns = $params->{columns} || ($session{setting}{textAreaCols}+10); - my $richEditId = $params->{richEditId} || "PBrichedit000000000001"; + my $richEditId = $params->{richEditId} || $session{setting}{richEditor} || "PBrichedit000000000001"; my $output = textarea({ name=>$params->{name}, value=>$params->{value}, diff --git a/lib/WebGUI/Operation/Settings.pm b/lib/WebGUI/Operation/Settings.pm index e781435ed..c178d268a 100644 --- a/lib/WebGUI/Operation/Settings.pm +++ b/lib/WebGUI/Operation/Settings.pm @@ -102,10 +102,12 @@ sub www_editSettings { -value=>$session{setting}{metaDataEnabled} ); # user interface settings - $tabform->getTab("ui")->text( - -name=>"richEditCss", - -label=>"Rich Edit CSS URL", - -value=>$session{setting}{richEditCss} + $tabform->getTab("ui")->selectList( + -name=>"richEditor", + -label=>"Default Rich Editor", + -value=>[$session{setting}{richEditor}], + -options=>WebGUI::SQL->buildHashRef("select assetId,title from asset where className='WebGUI::Asset::RichEdit' order by title"), + -defaultValue=>["PBrichedit000000000001"] ); $tabform->getTab("ui")->integer( -name=>"textAreaRows", diff --git a/lib/WebGUI/i18n/English/Asset_Collaboration.pm b/lib/WebGUI/i18n/English/Asset_Collaboration.pm index e30356033..8147d3111 100644 --- a/lib/WebGUI/i18n/English/Asset_Collaboration.pm +++ b/lib/WebGUI/i18n/English/Asset_Collaboration.pm @@ -481,9 +481,9 @@ our $I18N = { lastUpdated => 1109698614, }, - 'rich edit' => { - message => q|Allow rich edit?|, - lastUpdated => 1109698614, + 'rich editor' => { + message => q|Rich Editor|, + lastUpdated => 0, }, 'content filter' => { diff --git a/lib/WebGUI/i18n/English/WebGUI.pm b/lib/WebGUI/i18n/English/WebGUI.pm index 54594be06..a8ea2e768 100644 --- a/lib/WebGUI/i18n/English/WebGUI.pm +++ b/lib/WebGUI/i18n/English/WebGUI.pm @@ -3899,6 +3899,9 @@ The primary URL of your company. This will appear on all automated emails sent f

Thumbnail Size
When images are uploaded to your system, they will automatically have thumbnails generated at the size specified here (unless overridden on a case-by-case basis). Thumbnail size is measured in pixels. +

Default Rich Editor
+This is the rich editor configuration that will be used by default when a rich editor is needed. This can be overridden in certain applications such as the Collaboration System.

+ Text Area Rows, Text Area Columns and Text Box Size allow the size of forms that WebGUI generates to be customized on a site-by-site basis.