From 87c07059543d449e68ead3d598e013661b78e15f Mon Sep 17 00:00:00 2001 From: JT Smith Date: Tue, 28 May 2002 00:35:23 +0000 Subject: [PATCH] Added switches for TOC, [top], and Q/A to FAQ. --- docs/upgrades/upgrade_3.8.0-3.9.0.sql | 10 +++++++ lib/WebGUI/Wobject/FAQ.pm | 42 +++++++++++++++++++++++++-- 2 files changed, 49 insertions(+), 3 deletions(-) diff --git a/docs/upgrades/upgrade_3.8.0-3.9.0.sql b/docs/upgrades/upgrade_3.8.0-3.9.0.sql index 10c87f280..4c1f862b7 100644 --- a/docs/upgrades/upgrade_3.8.0-3.9.0.sql +++ b/docs/upgrades/upgrade_3.8.0-3.9.0.sql @@ -72,6 +72,16 @@ INSERT INTO international VALUES (54,'UserSubmission','English','Web Log'); INSERT INTO international VALUES (55,'UserSubmission','English','Traditional'); INSERT INTO international VALUES (56,'UserSubmission','English','Photo Gallery'); INSERT INTO international VALUES (57,'UserSubmission','English','Responses'); +alter table FAQ add column tocOn int not null default 1; +alter table FAQ add column topOn int not null default 0; +alter table FAQ add column qaOn int not null default 0; +INSERT INTO international VALUES (11,'FAQ','English','Turn TOC on?'); +INSERT INTO international VALUES (12,'FAQ','English','Turn Q/A on?'); +INSERT INTO international VALUES (13,'FAQ','English','Turn [top] link on?'); +INSERT INTO international VALUES (14,'FAQ','English','Q'); +INSERT INTO international VALUES (15,'FAQ','English','A'); +INSERT INTO international VALUES (16,'FAQ','English','[top]'); + diff --git a/lib/WebGUI/Wobject/FAQ.pm b/lib/WebGUI/Wobject/FAQ.pm index 9aa6b224f..72bd99030 100644 --- a/lib/WebGUI/Wobject/FAQ.pm +++ b/lib/WebGUI/Wobject/FAQ.pm @@ -42,6 +42,11 @@ sub duplicate { my ($w, %data, $newQuestionId, $sth); tie %data, 'Tie::CPHash'; $w = $_[0]->SUPER::duplicate($_[1]); + $w->set({ + topOn=>$_[0]->get("topOn"), + tocOn=>$_[0]->get("tocOn"), + qaOn=>$_[0]->get("qaOn") + }); $sth = WebGUI::SQL->read("select * from FAQ_question where wobjectId=".$_[0]->get("wobjectId")); while (%data = $sth->hash) { $newQuestionId = getNextId("questionId"); @@ -66,6 +71,11 @@ sub purge { $_[0]->SUPER::purge(); } +#------------------------------------------------------------------- +sub set { + $_[0]->SUPER::set($_[1],[qw(topOn tocOn qaOn)]); +} + #------------------------------------------------------------------- sub www_copy { if (WebGUI::Privilege::canEditPage()) { @@ -115,6 +125,9 @@ sub www_edit { $output = helpIcon(1,$namespace); $output = '

'.WebGUI::International::get(8,$namespace).'

'; $f = WebGUI::HTMLForm->new; + $f->yesNo("tocOn",WebGUI::International::get(11,$namespace),$_[0]->get("tocOn")); + $f->yesNo("qaOn",WebGUI::International::get(12,$namespace),$_[0]->get("qaOn")); + $f->yesNo("topOn",WebGUI::International::get(13,$namespace),$_[0]->get("topOn")); $f->yesNo("proceed",WebGUI::International::get(1,$namespace),$proceed); $output = $_[0]->SUPER::www_edit($f->printRowsOnly); return $output; @@ -127,6 +140,11 @@ sub www_edit { sub www_editSave { if (WebGUI::Privilege::canEditPage()) { $_[0]->SUPER::www_editSave(); + $_[0]->set({ + tocOn=>$session{form}{tocOn}, + topOn=>$session{form}{topOn}, + qaOn=>$session{form}{qaOn} + }); if ($session{form}{proceed}) { $_[0]->www_editQuestion(); } else { @@ -218,10 +236,14 @@ sub www_moveQuestionUp { #------------------------------------------------------------------- sub www_view { - my (%question, $output, $sth, $qNa); + my (%question, $top, $q, $a, $output, $sth, $qNa); tie %question,'Tie::CPHash'; $output = $_[0]->displayTitle; + $output .= ''; $output .= $_[0]->description; + $top = WebGUI::International::get(16,$namespace); + $q = WebGUI::International::get(14,$namespace); + $a = WebGUI::International::get(15,$namespace); if ($session{var}{adminOn}) { $output .= '' .WebGUI::International::get(9,$namespace).''; @@ -229,7 +251,9 @@ sub www_view { $output .= ''.$qNa;