From db9753eb010cb18ac839cb2ae2f39bf4fe373827 Mon Sep 17 00:00:00 2001
From: Doug Bell
Date: Wed, 20 Apr 2011 17:49:49 -0500
Subject: [PATCH] default www_edit now returns template. add errors to edit
template
---
lib/WebGUI/Asset.pm | 6 +--
lib/WebGUI/Asset/RichEdit.pm | 17 -------
lib/WebGUI/Asset/Template.pm | 46 ++++--------------
lib/WebGUI/Asset/Wobject/Calendar.pm | 22 ---------
.../root_import_adminconsole_edit-asset.wgpkg | Bin 1941 -> 2019 bytes
www/extras/css/wg-formbuilder.css | 11 +++++
6 files changed, 22 insertions(+), 80 deletions(-)
diff --git a/lib/WebGUI/Asset.pm b/lib/WebGUI/Asset.pm
index d818b0a84..aa2daedd5 100644
--- a/lib/WebGUI/Asset.pm
+++ b/lib/WebGUI/Asset.pm
@@ -2794,10 +2794,8 @@ sub www_edit {
my $template = WebGUI::Asset->newById( $session, $session->setting->get('templateIdAssetEdit') );
$template->setParam( %{ $f->toTemplateVars } );
- return $self->session->style->process(
- $template->process,
- "PBtmpl0000000000000137"
- );
+ $template->style( "PBtmpl0000000000000137" );
+ return $template;
}
#-------------------------------------------------------------------
diff --git a/lib/WebGUI/Asset/RichEdit.pm b/lib/WebGUI/Asset/RichEdit.pm
index 011e149dd..4a2993491 100644
--- a/lib/WebGUI/Asset/RichEdit.pm
+++ b/lib/WebGUI/Asset/RichEdit.pm
@@ -542,23 +542,6 @@ around indexContent => sub {
};
-#-------------------------------------------------------------------
-
-=head2 www_edit ( )
-
-Override the method from Asset.pm to change the title of the screen.
-
-=cut
-
-sub www_edit {
- my $self = shift;
- return $self->session->privilege->insufficient() unless $self->canEdit;
- return $self->session->privilege->locked() unless $self->canEditIfLocked;
- my $i18n = WebGUI::International->new($self->session,"Asset_RichEdit");
- return $self->getAdminConsole->render($self->getEditForm->print,$i18n->get("rich edit edit config"));
-}
-
-
__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Template.pm b/lib/WebGUI/Asset/Template.pm
index d4c9b6d79..092b4b8e4 100644
--- a/lib/WebGUI/Asset/Template.pm
+++ b/lib/WebGUI/Asset/Template.pm
@@ -801,7 +801,7 @@ default template.
=cut
-sub www_edit {
+override www_edit => sub {
my $self = shift;
return $self->session->privilege->insufficient() unless $self->canEdit;
return $self->session->privilege->locked() unless $self->canEditIfLocked;
@@ -809,7 +809,7 @@ sub www_edit {
my $form = $session->form;
my $url = $session->url;
my $i18n = WebGUI::International->new($session, "Asset_Template");
- my $output = '';
+ my $template = super();
# Add an unfriendly warning message if this is a default template
if ( $self->get( 'isDefault' ) ) {
@@ -821,48 +821,20 @@ sub www_edit {
$duplicateUrl = $url->append( $duplicateUrl, "returnUrl=" . $form->get( "returnUrl" ) );
}
}
-
- $session->style->setRawHeadTags( <<'ENDHTML' );
-
-ENDHTML
- $output .= q{}
+ my $errors = $template->getParam('errors') || [];
+ my $message .= q{
}
. $i18n->get( "warning default template" )
. q{
}
. sprintf( q{%s}, $i18n->get( "make duplicate label" ) )
- . q{
}
+ . q{
}
;
+ push @$errors, $message;
+ $template->setParam( 'errors' => $errors );
}
-
- my $func = $self->session->form->get('func');
- my $f = eval { $self->getEditForm };
- return $@ if $@;
- $f->addField( "Hidden", name => "func", value => "editSave" );
- if ( $func eq 'add' ) {
- my $className = $self->session->form->get('className');
- $f->action( $self->getParent->getUrl );
- $f->getTab('meta')->getField( 'className' )->set('value', $className);
- }
- else {
- $f->action( $self->getUrl );
- }
- $output .= $f->toHtml;
- # TODO: Make a www_edit template
- return $self->session->style->process(
- '' . $output . '
',
- "PBtmpl0000000000000137"
- );
-}
+ return $template;
+};
#-------------------------------------------------------------------
diff --git a/lib/WebGUI/Asset/Wobject/Calendar.pm b/lib/WebGUI/Asset/Wobject/Calendar.pm
index 284c40e3c..36f474987 100644
--- a/lib/WebGUI/Asset/Wobject/Calendar.pm
+++ b/lib/WebGUI/Asset/Wobject/Calendar.pm
@@ -1645,28 +1645,6 @@ sub wrapIcal {
#----------------------------------------------------------------------------
-=head2 www_edit ( )
-
-Adds a submenu to the default edit page that includes links to Add an Event.
-
-=cut
-
-sub www_edit {
- my $self = shift;
- my $session = $self->session;
- my $i18n = WebGUI::International->new($session, 'Asset_Calendar');
-
- return $session->privilege->insufficient() unless $self->canEdit;
-
-
- return $self->getAdminConsole->render(
- $self->getEditForm->toHtml,
- $i18n->get("assetName")
- );
-}
-
-#----------------------------------------------------------------------------
-
=head2 www_ical
Export an iCalendar feed of this Events Calendar's events.
diff --git a/share/upgrades/7.10.4-8.0.0/root_import_adminconsole_edit-asset.wgpkg b/share/upgrades/7.10.4-8.0.0/root_import_adminconsole_edit-asset.wgpkg
index 0ea83610c1248a671ad1f741df56941e1da986ab..2be8a3268b57c69fb05413f2122a36020c8abd36 100644
GIT binary patch
literal 2019
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
b-n{T@-&gam2)rWjia_CSnNC4V03HAU&%MND
diff --git a/www/extras/css/wg-formbuilder.css b/www/extras/css/wg-formbuilder.css
index ea4bd8c14..ec7ffd646 100644
--- a/www/extras/css/wg-formbuilder.css
+++ b/www/extras/css/wg-formbuilder.css
@@ -9,3 +9,14 @@
margin-top: 1em;
font-weight: bold;
}
+
+.wg-formbuilder .wg-message {
+
+}
+
+.wg-formbuilder .wg-error {
+ border : 1px solid red;
+ background-color : #FF6666;
+ padding : 10px;
+ margin : 10px;
+}