o Allow return from photo edit view to gallery edit view (RFE 11571)
o Reject form submissions without image selected for upload in edit view of Photo asset
This commit is contained in:
parent
cb82394575
commit
fa04d01518
7 changed files with 150 additions and 33 deletions
|
|
@ -2924,6 +2924,10 @@ sub www_editSave {
|
|||
$session->asset($object->getParent);
|
||||
return $session->asset->www_view;
|
||||
}
|
||||
elsif ($proceed eq "editParent") {
|
||||
$session->asset($object->getParent);
|
||||
return $session->asset->www_edit;
|
||||
}
|
||||
elsif ($proceed eq "goBackToPage" && $session->form->process('returnUrl')) {
|
||||
$session->http->setRedirect($session->form->process("returnUrl"));
|
||||
return undef;
|
||||
|
|
|
|||
|
|
@ -114,10 +114,10 @@ sub applyConstraints {
|
|||
|
||||
# Update the asset's size and make a thumbnail
|
||||
my $maxImageSize = $gallery->get("imageViewSize")
|
||||
|| $self->session->setting->get("maxImageSize");
|
||||
|| $self->session->setting->get("maxImageSize");
|
||||
my $storage = $self->getStorageLocation;
|
||||
my $file = $self->get("filename");
|
||||
|
||||
|
||||
# Adjust orientation based on exif data. Do this before we start to
|
||||
# generate resolutions so that all images have the correct orientation.
|
||||
$self->adjustOrientation;
|
||||
|
|
@ -130,10 +130,12 @@ sub applyConstraints {
|
|||
$storage->resize( $file, undef, undef, $gallery->get( 'imageDensity' ) );
|
||||
$storage->adjustMaxImageSize($file, $maxImageSize);
|
||||
|
||||
$self->generateThumbnail;
|
||||
$self->setSize;
|
||||
$self->generateThumbnail;
|
||||
$self->updateExifDataFromFile;
|
||||
|
||||
# setSize method is already called by WebGUI::Asset::File::applyConstraints (SUPER)
|
||||
# $self->setSize;
|
||||
|
||||
$self->SUPER::applyConstraints( $options );
|
||||
}
|
||||
|
||||
|
|
@ -252,10 +254,11 @@ sub getEditFormUploadControl {
|
|||
}
|
||||
|
||||
# Control to upload a new file
|
||||
$html .= WebGUI::Form::file( $session, {
|
||||
name => 'newFile',
|
||||
label => $i18n->get('new file'),
|
||||
hoverHelp => $i18n->get('new file description'),
|
||||
$html .= WebGUI::Form::image( $session, {
|
||||
name => 'newFile',
|
||||
label => $i18n->get('new file'),
|
||||
hoverHelp => $i18n->get('new file description'),
|
||||
forceImageOnly => 1,
|
||||
});
|
||||
|
||||
return $html;
|
||||
|
|
@ -401,11 +404,19 @@ contained in.
|
|||
sub makeResolutions {
|
||||
my $self = shift;
|
||||
my $resolutions = shift;
|
||||
my $session = $self->session;
|
||||
my $error;
|
||||
|
||||
croak "Photo->makeResolutions: resolutions must be an array reference"
|
||||
if $resolutions && ref $resolutions ne "ARRAY";
|
||||
|
||||
# # Return immediately if no image is available
|
||||
# if ( $self->get("filename") eq '' )
|
||||
# {
|
||||
# $session->log->error("makeResolutions skipped since no image available");
|
||||
# return;
|
||||
# }
|
||||
|
||||
# Get default if necessary
|
||||
$resolutions ||= $self->getGallery->getImageResolutions;
|
||||
|
||||
|
|
@ -436,13 +447,20 @@ Make the default title into the file name minus the extention.
|
|||
|
||||
sub processPropertiesFromFormPost {
|
||||
my $self = shift;
|
||||
my $i18n = WebGUI::International->new( $self->session,'Asset_Photo' );
|
||||
my $form = $self->session->form;
|
||||
my $errors = $self->SUPER::processPropertiesFromFormPost || [];
|
||||
|
||||
# Make sure there is an image file attached to this asset.
|
||||
if ( !$self->get('filename') ) {
|
||||
push @{ $errors }, $i18n->get('error no image');
|
||||
}
|
||||
|
||||
# Return if errors
|
||||
return $errors if @$errors;
|
||||
|
||||
### Passes all checks
|
||||
|
||||
# If no title was given, make it the file name
|
||||
if ( !$form->get('title') ) {
|
||||
my $title = $self->get('filename');
|
||||
|
|
@ -609,6 +627,7 @@ sub www_edit {
|
|||
$var->{ form_start }
|
||||
= WebGUI::Form::formHeader( $session, {
|
||||
action => $self->getParent->getUrl('func=editSave;assetId=new;class='.__PACKAGE__),
|
||||
extras => 'name="photoAdd"',
|
||||
})
|
||||
. WebGUI::Form::hidden( $session, {
|
||||
name => 'ownerUserId',
|
||||
|
|
@ -620,6 +639,7 @@ sub www_edit {
|
|||
$var->{ form_start }
|
||||
= WebGUI::Form::formHeader( $session, {
|
||||
action => $self->getUrl('func=editSave'),
|
||||
extras => 'name="photoEdit"',
|
||||
})
|
||||
. WebGUI::Form::hidden( $session, {
|
||||
name => 'ownerUserId',
|
||||
|
|
@ -630,7 +650,7 @@ sub www_edit {
|
|||
$var->{ form_start }
|
||||
.= WebGUI::Form::hidden( $session, {
|
||||
name => "proceed",
|
||||
value => "showConfirmation",
|
||||
value => $form->get('proceed') || "showConfirmation",
|
||||
});
|
||||
|
||||
$var->{ form_end } = WebGUI::Form::formFooter( $session );
|
||||
|
|
|
|||
|
|
@ -759,6 +759,12 @@ our $I18N = {
|
|||
lastUpdated => 0,
|
||||
context => q{Error when user is out of disk space.},
|
||||
},
|
||||
|
||||
'error no image' => {
|
||||
message => q{You need to select an image to upload.},
|
||||
lastUpdated => 0,
|
||||
context => q{Error when user tries to add photo without selecting image.},
|
||||
},
|
||||
|
||||
'template comment add title' => {
|
||||
message => q{Add comment},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue