From d967173b4d43b97b8ec766e920d250153f62de80 Mon Sep 17 00:00:00 2001 From: JT Smith Date: Tue, 28 May 2002 02:39:01 +0000 Subject: [PATCH] Consolodating some discussion functionality. --- lib/WebGUI/Discussion.pm | 39 +++++++++------- lib/WebGUI/Wobject/Article.pm | 67 ++++++---------------------- lib/WebGUI/Wobject/UserSubmission.pm | 43 +++++------------- 3 files changed, 49 insertions(+), 100 deletions(-) diff --git a/lib/WebGUI/Discussion.pm b/lib/WebGUI/Discussion.pm index 1d8fc3962..18b8a5dff 100644 --- a/lib/WebGUI/Discussion.pm +++ b/lib/WebGUI/Discussion.pm @@ -219,22 +219,31 @@ sub purge { #------------------------------------------------------------------- sub showMessage { - my ($html, %message); - tie %message, 'Tie::CPHash'; - %message = getMessage($session{form}{mid}); - if ($message{messageId}) { - $html = '
'; - $html .= ''.WebGUI::International::get(237).''.$message{subject}.'
'; - $html .= ''.WebGUI::International::get(238).' '.$message{username}.'
'; - $html .= "".WebGUI::International::get(239)." ".epochToHuman($message{dateOfPost},"%z %Z")."
"; - $html .= "".WebGUI::International::get(240)." ".$message{wobjectId}."-".$message{rid}."-".$message{pid}."-".$message{messageId}."
"; - $html .= '
'; - $html .= $message{message}; - $html .= '
'; - } else { - $html = WebGUI::International::get(402); + my (@data, $html, %message, $defaultMid, $sql); + tie %message, 'Tie::CPHash'; + $sql = "select min(messageId) from discussion where wobjectId=$session{form}{wid}"; + if ($session{form}{sid}) { + $sql .= " and subId=$session{form}{sid}"; } - return $html; + ($defaultMid) = WebGUI::SQL->quickArray($sql); + $session{form}{mid} = $defaultMid if ($session{form}{mid} eq ""); + %message = getMessage($session{form}{mid}); + if ($message{messageId}) { + $html .= '

'.$message{subject}.'

'; + $html .= ''; + $html .= '
'; + $html .= ''.WebGUI::International::get(238).' + '.$message{username}.'
'; + $html .= "".WebGUI::International::get(239)." ".epochToHuman($message{dateOfPost},"%z %Z")."
"; + $html .= '
'; + $html .= $_[0]; + $html .= '
'; + $html .= $message{message}.'

'; + $html .= '

'; + } else { + $html = WebGUI::International::get(402); + } + return $html; } #------------------------------------------------------------------- diff --git a/lib/WebGUI/Wobject/Article.pm b/lib/WebGUI/Wobject/Article.pm index 299b5a47b..787d3c63a 100644 --- a/lib/WebGUI/Wobject/Article.pm +++ b/lib/WebGUI/Wobject/Article.pm @@ -46,30 +46,6 @@ sub _canEditMessage { } } -#------------------------------------------------------------------- -sub _showReplies { - my ($sth, @data, $html); - $html .= ''; - $html .= ''; - $sth = WebGUI::SQL->read("select messageId,subject,username,dateOfPost,userId from discussion where wobjectId=$session{form}{wid} and pid=0 order by messageId desc"); - while (@data = $sth->array) { - $data[1] = WebGUI::HTML::filter($data[1],'all'); - $html .= ''.substr($data[1],0,30). - ''; - $html .= WebGUI::Discussion::traverseReplyTree($data[0],1); - } - $html .= '
'.WebGUI::International::get(229).''.WebGUI::International::get(22,$namespace).''.WebGUI::International::get(23,$namespace).'
'.$data[2]. - ''.epochToHuman($data[3],"%z %Z"). - '
'; - return $html; -} - #------------------------------------------------------------------- sub duplicate { my ($file, $w); @@ -294,38 +270,21 @@ sub www_postReplySave { #------------------------------------------------------------------- sub www_showMessage { - my (@data, $html, %message, $defaultMid); - tie %message, 'Tie::CPHash'; - ($defaultMid) = WebGUI::SQL->quickArray("select min(messageId) from discussion where wobjectId=$session{form}{wid}"); + 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 ""); - %message = WebGUI::Discussion::getMessage($session{form}{mid}); - if ($message{messageId}) { - $html .= '

'.$message{subject}.'

'; - $html .= ''; - $html .= '
'; - $html .= ''.WebGUI::International::get(22,$namespace).' '.$message{username}.'
'; - $html .= "".WebGUI::International::get(23,$namespace)." ". - epochToHuman($message{dateOfPost},"%z %Z")."
"; - $html .= '
'; - $html .= ''.WebGUI::International::get(24,$namespace).'
'; - if (_canEditMessage($_[0],$session{form}{mid})) { - $html .= ''.WebGUI::International::get(25,$namespace).'
'; - $html .= ''.WebGUI::International::get(26,$namespace).'
'; - } - $html .= ''.WebGUI::International::get(27,$namespace).'
'; - $html .= '
'; - $html .= $message{message}; - $html .= '
'; - $html .= _showReplies(); - } else { - $html = WebGUI::International::get(402); + $submenu = ''.WebGUI::International::get(24,$namespace).'
'; + if (_canEditMessage($_[0],$session{form}{mid})) { + $submenu .= ''.WebGUI::International::get(25,$namespace).'
'; + $submenu .= ''.WebGUI::International::get(26,$namespace).'
'; } - return $html; + $submenu .= ''.WebGUI::International::get(27,$namespace).'
'; + $output = WebGUI::Discussion::showMessage($submenu); + $output .= WebGUI::Discussion::showThreads(); + return $output; } #------------------------------------------------------------------- diff --git a/lib/WebGUI/Wobject/UserSubmission.pm b/lib/WebGUI/Wobject/UserSubmission.pm index 268e811e9..8bf83e4c9 100644 --- a/lib/WebGUI/Wobject/UserSubmission.pm +++ b/lib/WebGUI/Wobject/UserSubmission.pm @@ -560,40 +560,21 @@ sub www_postReplySave { #------------------------------------------------------------------- sub www_showMessage { - my (@data, $html, %message, $defaultMid); - tie %message, 'Tie::CPHash'; - ($defaultMid) = WebGUI::SQL->quickArray("select min(messageId) from discussion where wobjectId=$session{form}{wid} and subId=$session{form}{sid}"); - $session{form}{mid} = $defaultMid if ($session{form}{mid} eq ""); - %message = WebGUI::Discussion::getMessage($session{form}{mid}); - if ($message{messageId}) { - $html .= '

'.$message{subject}.'

'; - $html .= ''; - $html .= '
'; - $html .= ''.WebGUI::International::get(40,$namespace).' '.$message{username}.'
'; - $html .= "".WebGUI::International::get(41,$namespace)." ". - epochToHuman($message{dateOfPost},"%z %Z")."
"; - $html .= '
'; - $html .= ''.WebGUI::International::get(39,$namespace).'
'; - if (_canEditMessage($_[0],$session{form}{mid})) { - $html .= ''.WebGUI::International::get(42,$namespace).'
'; - $html .= ''.WebGUI::International::get(42,$namespace).'
'; + $submenu .= ''.WebGUI::International::get(43,$namespace).'
'; - } - $html .= ''.WebGUI::International::get(45,$namespace).'
'; - $html .= ''.WebGUI::International::get(28,$namespace).'
'; - $html .= '
'; - $html .= $message{message}.'

'; - $html .= '

'; - $html .= WebGUI::Discussion::showThreads(); - } else { - $html = WebGUI::International::get(402); } - return $html; + $submenu .= ''.WebGUI::International::get(45,$namespace).'
'; + $submenu .= ''.WebGUI::International::get(28,$namespace).'
'; + $output = WebGUI::Discussion::showMessage($submenu); + $output .= WebGUI::Discussion::showThreads(); + return $output; } #-------------------------------------------------------------------