Merging changes from 6.6.4

Added new definition features to wobjects and assets.
This commit is contained in:
JT Smith 2005-07-21 01:17:05 +00:00
parent 3805ebed23
commit c4b3e4092d
43 changed files with 457 additions and 717 deletions

View file

@ -93,6 +93,8 @@ sub definition {
my $class = shift;
my $definition = shift;
push(@{$definition}, {
assetName=>WebGUI::International::get('post',"Asset_Post")
icon=>'post.gif',
tableName=>'Post',
className=>'WebGUI::Asset::Post',
properties=>{
@ -256,13 +258,6 @@ sub getEditUrl {
return $self->getUrl("func=edit");
}
#-------------------------------------------------------------------
sub getIcon {
my $self = shift;
my $small = shift;
return $session{config}{extrasURL}.'/assets/small/post.gif' if ($small);
return $session{config}{extrasURL}.'/assets/post.gif';
}
#-------------------------------------------------------------------
sub getImageUrl {
@ -279,10 +274,6 @@ sub getImageUrl {
return $url;
}
#-------------------------------------------------------------------
sub getName {
return WebGUI::International::get('post',"Asset_Post");
}
#-------------------------------------------------------------------
@ -670,7 +661,6 @@ sub processPropertiesFromFormPost {
$filename = $storage->addFileFromFormPost("file", $attachmentLimit) if $attachmentLimit;
if (defined $filename) {
$self->setSize($storage->getFileSize($filename));
$storage->setPrivileges($self->get("ownerUserId"), $self->get("groupIdView"), $self->get("groupIdEdit"));
foreach my $file (@{$storage->getFiles}) {
if ($storage->isImage($file)) {
$storage->generateThumbnail($file,$session{setting}{maxImageSize});
@ -740,6 +730,25 @@ sub setLastPost {
}
#-------------------------------------------------------------------
=head setParent ( newParent )
We're overloading the setParent in Asset because we don't want posts to be able to be posted to anything other than other posts or threads.
=head3 newParent
An asset object to make the parent of this asset.
=cut
sub setParent {
my $self = shift;
my $newParent = shift;
return 0 unless ($newParent->get("className") eq "WebGUI::Asset::Post" || $newParent->get("className") eq "WebGUI::Asset::Post::Thread");
return $self->SUPER::setParent($newParent);
}
#-------------------------------------------------------------------
=head2 setStatusApproved ( )
@ -841,6 +850,27 @@ sub unmarkRead {
WebGUI::SQL->write("delete from forumRead where userId=".quote($session{user}{userId})." and postId=".quote($self->getId));
}
#-------------------------------------------------------------------
=head2 update
We overload the update method from WebGUI::Asset in order to handle file system privileges.
=cut
sub update {
my $self = shift;
my %before = (
owner => $self->get("ownerUserId"),
view => $self->get("groupIdView"),
edit => $self->get("groupIdEdit")
);
$self->SUPER::update(@_);
if ($self->get("ownerUserId") ne $before{owner} || $self->get("groupIdEdit") ne $before{edit} || $self->get("groupIdView") ne $before{view}) {
$self->getStorageLocation->setPrivileges($self->get("ownerUserId"),$self->get("groupIdView"),$self->get("groupIdEdit"));
}
}
#-------------------------------------------------------------------
sub view {
my $self = shift;
@ -1021,7 +1051,7 @@ sub www_edit {
richEditId=>$self->getThread->getParent->get("richEditor")
});
$var{'form.submit'} = WebGUI::Form::submit({
extras=>"onclick=\"this.value='".WebGUI::International::get(452)."'; this.form.func.value='editSave'; this.form.submit();\""
extras=>"onclick=\"this.value='".WebGUI::International::get(452)."'; this.form.func.value='editSave'; this.form.submit();return false;\""
});
$var{'form.preview'} = WebGUI::Form::submit({
value=>WebGUI::International::get("preview","Asset_Collaboration")