Moved the www_search and www_showMessage methods to the wobject superclass. Also the duplicate and purge methods in the superclass now automatically perform the discussion operations.

This commit is contained in:
JT Smith 2002-09-29 23:59:22 +00:00
parent 37a34966eb
commit 1be05a3391
4 changed files with 37 additions and 41 deletions

View file

@ -239,6 +239,7 @@ sub duplicate {
endDate => $_[0]->get("endDate"),
templatePosition => $_[0]->get("templatePosition")
});
WebGUI::Discussion::duplicate($_[0]->get("wobjectId"),$w->get("wobjectId")) unless ($_[2]);
return $w->get("wobjectId");
}
@ -464,6 +465,7 @@ sub purge {
WebGUI::SQL->write("delete from wobject where wobjectId=".$_[0]->get("wobjectId"));
$node = WebGUI::Node->new($_[0]->get("wobjectId"));
$node->delete;
WebGUI::Discussion::purge($_[0]->get("wobjectId"));
}
#-------------------------------------------------------------------
@ -1005,6 +1007,35 @@ sub www_postSave {
#-------------------------------------------------------------------
=head2 www_search ( )
Searches an attached discussion.
=cut
sub www_search {
return WebGUI::Discussion::search();
}
#-------------------------------------------------------------------
=head2 www_showMessage ( )
Shows a message from a discussion.
=cut
sub www_showMessage {
my ($output, $defaultMid);
($defaultMid) = WebGUI::SQL->quickArray("select min(messageId) from discussion where wobjectId=".$_[0]->get("wobjectId"));
$session{form}{mid} = $session{form}{mid} || $defaultMid || 0;
$output = WebGUI::Discussion::showMessage($_[1],$_[0]);
$output .= WebGUI::Discussion::showThreads();
return $output;
}
#-------------------------------------------------------------------
=head2 www_unlockThread ( )
Unlocks a discussion thread from the current message on down.

View file

@ -14,7 +14,6 @@ use strict;
use Tie::CPHash;
use WebGUI::Attachment;
use WebGUI::DateTime;
use WebGUI::Discussion;
use WebGUI::HTML;
use WebGUI::HTMLForm;
use WebGUI::Icon;
@ -48,13 +47,6 @@ sub duplicate {
alignImage=>$_[0]->get("alignImage"),
allowDiscussion=>$_[0]->get("allowDiscussion")
});
WebGUI::Discussion::duplicate($_[0]->get("wobjectId"),$w->get("wobjectId"));
}
#-------------------------------------------------------------------
sub purge {
WebGUI::Discussion::purge($_[0]->get("wobjectId"));
$_[0]->SUPER::purge();
}
#-------------------------------------------------------------------
@ -152,13 +144,7 @@ sub www_editSave {
#-------------------------------------------------------------------
sub www_showMessage {
my ($submenu, $output, $defaultMid);
($defaultMid) = WebGUI::SQL->quickArray("select min(messageId) from discussion where wobjectId=$session{form}{wid}");
$session{form}{mid} = $defaultMid if ($session{form}{mid} eq "");
$submenu = '<a href="'.WebGUI::URL::page().'">'.WebGUI::International::get(27,$namespace).'</a><br>';
$output = WebGUI::Discussion::showMessage($submenu,$_[0]);
$output .= WebGUI::Discussion::showThreads();
return $output;
return $_[0]->SUPER::www_showMessage('<a href="'.WebGUI::URL::page().'">'.WebGUI::International::get(27,$namespace).'</a><br>');
}
#-------------------------------------------------------------------

View file

@ -43,13 +43,6 @@ sub duplicate {
$w->set({
messagesPerPage=>$_[0]->get("messagesPerPage")
});
WebGUI::Discussion::duplicate($_[0]->get("wobjectId"),$w->get("wobjectId"));
}
#-------------------------------------------------------------------
sub purge {
WebGUI::Discussion::purge($_[0]->get("wobjectId"));
$_[0]->SUPER::purge();
}
#-------------------------------------------------------------------
@ -88,18 +81,9 @@ sub www_editSave {
}
}
#-------------------------------------------------------------------
sub www_search {
return WebGUI::Discussion::search();
}
#-------------------------------------------------------------------
sub www_showMessage {
my ($output, $submenu);
$submenu = '<a href="'.WebGUI::URL::page().'">'.WebGUI::International::get(11,$namespace).'</a><br>';
$output = WebGUI::Discussion::showMessage($submenu,$_[0]);
$output .= WebGUI::Discussion::showReplyTree();
return $output;
return $_[0]->SUPER::www_showMessage('<a href="'.WebGUI::URL::page().'">'.WebGUI::International::get(11,$namespace).'</a><br>');
}
#-------------------------------------------------------------------

View file

@ -190,7 +190,7 @@ sub _weblogView {
sub duplicate {
my ($sth, $file, %row, $newSubmissionId, $w);
tie %row, 'Tie::CPHash';
$w = $_[0]->SUPER::duplicate($_[1]);
$w = $_[0]->SUPER::duplicate($_[1],1);
$w = WebGUI::Wobject::UserSubmission->new({wobjectId=>$w,namespace=>$namespace});
$w->set({
groupToContribute=>$_[0]->get("groupToContribute"),
@ -221,7 +221,6 @@ sub duplicate {
#-------------------------------------------------------------------
sub purge {
WebGUI::SQL->write("delete from UserSubmission_submission where wobjectId=".$_[0]->get("wobjectId"));
WebGUI::Discussion::purge($_[0]->get("wobjectId"));
$_[0]->SUPER::purge();
}
@ -520,13 +519,9 @@ sub www_search {
#-------------------------------------------------------------------
sub www_showMessage {
my ($submenu, $output);
$submenu .= '<a href="'.WebGUI::URL::page('func=viewSubmission&wid='.$session{form}{wid}.
'&sid='.$session{form}{sid}).'">'.WebGUI::International::get(45,$namespace).'</a><br>';
$submenu .= '<a href="'.WebGUI::URL::page().'">'.WebGUI::International::get(28,$namespace).'</a><br>';
$output = WebGUI::Discussion::showMessage($submenu,$_[0]);
$output .= WebGUI::Discussion::showThreads();
return $output;
return $_[0]->SUPER::www_showMessage('<a href="'.WebGUI::URL::page('func=viewSubmission&wid='.$session{form}{wid}
.'&sid='.$session{form}{sid}).'">'.WebGUI::International::get(45,$namespace).'</a><br>'
.'<a href="'.WebGUI::URL::page().'">'.WebGUI::International::get(28,$namespace).'</a><br>');
}
#-------------------------------------------------------------------