Fix problem with attachment section of post form miscalculating

the number of new attachments uploadable.
This commit is contained in:
Drake 2006-09-27 02:00:49 +00:00
parent d428c0a0bc
commit 057d743dfb
2 changed files with 13 additions and 14 deletions

View file

@ -31,6 +31,7 @@
profile field options.
- Fixed the search function that broke in 7.0.7.
- fix: typo + obsolete approve section in Collaboration System Default Thread template
- fix: attachments section of post form not working correctly on edit
7.0.7
- rfe: Image Management (funded by Formation Design Systems)

View file

@ -160,9 +160,9 @@ sub toHtml {
my $i18n = WebGUI::International->new($self->session);
my $uploadControl = undef;
my $storage = WebGUI::Storage::Image->get($self->session, $self->get("value")) if ($self->get("value"));
my @files = $storage->getFiles if (defined $storage);
my $maxFiles = $self->get('maxAttachments') - scalar(@files);
if ($maxFiles > 0) {
my @files = defined($storage)? @{$storage->getFiles} : ();
my $maxNewFiles = $self->get('maxAttachments') - scalar(@files);
if ($maxNewFiles > 0) {
$self->session->style->setScript($self->session->url->extras('/FileUploadControl.js'),{type=>"text/javascript"});
$uploadControl = '<script type="text/javascript">
var fileIcons = new Array();
@ -179,23 +179,21 @@ sub toHtml {
}
$uploadControl .= sprintf q!var uploader = new FileUploadControl("%s", fileIcons, "%s","%d");
uploader.addRow();
</script>!, $self->get("name"), $i18n->get("removeLabel"), $maxFiles;
</script>!, $self->get("name"), $i18n->get("removeLabel"), $maxNewFiles;
$uploadControl .= WebGUI::Form::Hidden->new($self->session, {-name => $self->privateName('action'), -value => 'upload'})->toHtml()."<br />";
} else {
$uploadControl .= WebGUI::Form::Hidden->new($self->session, {-name => $self->get("name"), -value => $self->get("value")})->toHtml()."<br />";
$uploadControl .= WebGUI::Form::Hidden->new($self->session, {-name => $self->privateName('action'), -value => 'keep'})->toHtml()."<br />";
}
if (scalar(@files)) {
foreach my $file (@{$storage->getFiles}) {
if ($self->get("deleteFileUrl")) {
$uploadControl .= '<p style="display:inline;vertical-align:middle;"><a href="'.$self->get("deleteFileUrl").$file.'">'
.'<img src="'.$self->session->icon->getBaseURL().'delete.gif" style="vertical-align:middle;border: 0px;" alt="x" /></a></p> ';
}
my $image = $storage->isImage($file) ? $storage->getThumbnailUrl($file) : $storage->getFileIconUrl($file);
$uploadControl .= '<p style="display:inline;vertical-align:middle;"><a href="'.$storage->getUrl($file).'">'
.'<img src="'.$image.'" style="vertical-align:middle;border: 0px;" alt="'
.$file.'" /> '.$file.'</a></p><br />';
foreach my $file (@files) {
if ($self->get("deleteFileUrl")) {
$uploadControl .= '<p style="display:inline;vertical-align:middle;"><a href="'.$self->get("deleteFileUrl").$file.'">'
.'<img src="'.$self->session->icon->getBaseURL().'delete.gif" style="vertical-align:middle;border: 0px;" alt="x" /></a></p> ';
}
my $image = $storage->isImage($file) ? $storage->getThumbnailUrl($file) : $storage->getFileIconUrl($file);
$uploadControl .= '<p style="display:inline;vertical-align:middle;"><a href="'.$storage->getUrl($file).'">'
.'<img src="'.$image.'" style="vertical-align:middle;border: 0px;" alt="'
.$file.'" /> '.$file.'</a></p><br />';
}
return $uploadControl;
}