From 69eb2315242ab152fe857c0ad8100f13dca011cb Mon Sep 17 00:00:00 2001 From: JT Smith Date: Fri, 14 Apr 2006 13:57:05 +0000 Subject: [PATCH] added media folder for rich edit upload --- docs/upgrades/upgrade_6.8.8-6.99.0.pl | 24 ++++++++++++++++++++++++ lib/WebGUI/AdminConsole.pm | 4 +++- lib/WebGUI/Asset.pm | 19 +++++++++++++++++++ 3 files changed, 46 insertions(+), 1 deletion(-) diff --git a/docs/upgrades/upgrade_6.8.8-6.99.0.pl b/docs/upgrades/upgrade_6.8.8-6.99.0.pl index a4db47d16..d2b2d001e 100644 --- a/docs/upgrades/upgrade_6.8.8-6.99.0.pl +++ b/docs/upgrades/upgrade_6.8.8-6.99.0.pl @@ -46,9 +46,33 @@ fixImportNodePrivileges(); addAdManager(); updateMatrix(); updateFolder(); +addRichEditUpload(); finish($session); # this line required +#------------------------------------------------- +sub addRichEditUpload { + print "\tAdding the ability to upload from the rich editor.\n"; + my $root = WebGUI::Asset->getRoot($session); + my $media = $root->addChild({ + url=>"media", + title=>"Media", + menuTitle=>"Media", + className=>"WebGUI::Asset::Wobject::Folder", + styleTemplateId=>"PBtmpl0000000000000060", + printableStyleTemplateId=>'PBtmpl0000000000000111', + templateId=>'PBtmpl0000000000000078', + ownerUserId=>'3', + groupIdEdit=>'12', + groupIdView=>'7', + },"PBasset000000000000003"); + $session->db->write("update asset set isSystem=1 where assetId=?",[$media->getId]); + # somehow the import node isn't protected, doing that now + $session->db->write("update asset set isSystem=1 where assetId=?",['PBasset000000000000002']); + # the failsafe style should be visible + $session->db->write("update template set showInForms=1 where assetId=?",['PBtmpl0000000000000060']); +} + #------------------------------------------------- sub updateFolder { print "\tAdding sort option to folder.\n"; diff --git a/lib/WebGUI/AdminConsole.pm b/lib/WebGUI/AdminConsole.pm index 1aed01dcd..a90129d6a 100644 --- a/lib/WebGUI/AdminConsole.pm +++ b/lib/WebGUI/AdminConsole.pm @@ -442,8 +442,10 @@ sub render { if (defined $self->session->asset) { my $importNode = WebGUI::Asset->getImportNode($self->session); my $importNodeLineage = $importNode->get("lineage"); + my $media = WebGUI::Asset->getMedia($self->session); + my $mediaLineage = $media->get("lineage"); my $assetLineage = $self->session->asset->get("lineage"); - if ($assetLineage =~ /^$importNodeLineage/ || $assetLineage eq "000001" || ($self->session->asset->get("state") ne "published" && $self->session->asset->get("state") ne "archived")) { + if ($assetLineage =~ /^$importNodeLineage/ || $assetLineage eq "000001" || $assetLineage =~ /^$mediaLineage/ || ($self->session->asset->get("state") ne "published" && $self->session->asset->get("state") ne "archived")) { $var{"backtosite.url"} = WebGUI::Asset->getDefault($self->session)->getUrl; } else { $var{"backtosite.url"} = $self->session->asset->getContainer->getUrl; diff --git a/lib/WebGUI/Asset.pm b/lib/WebGUI/Asset.pm index 9002a441e..837a736a6 100644 --- a/lib/WebGUI/Asset.pm +++ b/lib/WebGUI/Asset.pm @@ -763,6 +763,25 @@ sub getImportNode { +#------------------------------------------------------------------- + +=head2 getMedia ( session ) + +Constructor. Returns the media folder. + +=head3 session + +A reference to the current session. + +=cut + +sub getMedia { + my $class = shift; + my $session = shift; + return WebGUI::Asset->new($session, "PBasset000000000000003"); +} + + #------------------------------------------------------------------- =head2 getMenuTitle ( )