re-add file gone missing in merge

This commit is contained in:
Graham Knop 2010-02-17 16:47:19 -06:00
parent 8f8335ce92
commit 18a0890eb4

100
lib/WebGUI/AssetHelper.pm Normal file
View file

@ -0,0 +1,100 @@
package WebGUI::AssetHelper;
=head1 LEGAL
-------------------------------------------------------------------
WebGUI is Copyright 2001-2009 Plain Black Corporation.
-------------------------------------------------------------------
Please read the legal notices (docs/legal.txt) and the license
(docs/license.txt) that came with this distribution before using
this software.
-------------------------------------------------------------------
http://www.plainblack.com info@plainblack.com
-------------------------------------------------------------------
=head1 NAME
Package WebGUI::AssetHelper
=head1 DESCRIPTION
Base class for all Asset Helpers, which provide editing and administrative controls for Assets inside
the Admin Console.
=head1 SYNOPSIS
Despite using OO style methods, there are no AssetHelper objects. This is simply to provide inheritance.
=head1 METHODS
These methods are available from this class:
=cut
#-------------------------------------------------------------------
=head2 process ( $class, $asset )
This is a class method. Process is the default method called by the Asset Helper content handler.
It returns a hashref, that is converted by the content handler to JSON to be passed back to the
Admin Console.
=head3 $class
The name of the class this method was called as.
=head3 $asset
A WebGUI::Asset object.
=head3 Hashref Payload
Sending all hash keys at the same time may cause unpredictable results.
=head4 error
An error message to the user. Should always be internationalized.
=head4 message
An informational message to the user. Should always be internationalized.
=head4 open_tab
A URL. Will open a tab in the Admin Console. Anything returned by the URL will be displayed in the tab.
=head4 redirect
A URL. Puts new content into the View tab from the requested URL.
=head4 scriptFile
Loads the requested JavaScript file, referenced by URL.
=head4 scriptMethod
Calls this method.
=head4 scriptArgs
An array reference of arguments that, when used with C<scriptMethod>, will be passed to the javascript method.
=cut
sub process {
my ($class, $asset) = @_;
##This method can do work, or it can delegate out to other methods.
return {
error => q{User, we have a problem.},
message => q{A friendly informational method},
open_tab => '?op=assetHelper;className=WebGUI::AssetHelper;method=editBranch',
redirect => '/home',
scriptFile => q{URL},
scriptMethod => q{methodName},
scriptArgs => [ 'arg1', { another => 'argument' } ],
};
}
1;