oodles of fixes.

This commit is contained in:
Matthew Wilson 2006-01-15 15:56:17 +00:00
parent 029dca1f2e
commit 65823b1f53
38 changed files with 87 additions and 84 deletions

View file

@ -297,7 +297,7 @@ sub www_view {
if ($self->session->var->get("adminOn")) {
return $self->getContainer->www_view;
}
WebGUI::HTTP::setRedirect($self->getFileUrl);
$self->session->http->setRedirect($self->getFileUrl);
return "";
}

View file

@ -292,7 +292,7 @@ sub www_view {
return $self->www_edit;
}
my $storage = $self->getStorageLocation;
WebGUI::HTTP::setRedirect($storage->getUrl($self->get("filename")));
$self->session->http->setRedirect($storage->getUrl($self->get("filename")));
return "";
}

View file

@ -303,10 +303,10 @@ Web facing method which is the default view page. This method does a
sub www_view {
my $self = shift;
return $self->session->privilege->noAccess() unless $self->canView;
if (WebGUI::Session::isAdminOn()) {
if ($self->session->var->isAdminOn) {
return $self->getContainer->www_view;
}
WebGUI::HTTP::setRedirect($self->getFileUrl($self->getValue("showPage")));
$self->session->http->setRedirect($self->getFileUrl($self->getValue("showPage")));
return "";
}

View file

@ -1136,7 +1136,7 @@ This is here to stop people from duplicating posts by hitting refresh in their b
sub www_redirectToParent {
my $self = shift;
WebGUI::HTTP::setRedirect($self->getParent->getUrl);
$self->session->http->setRedirect($self->getParent->getUrl);
}

View file

@ -213,7 +213,7 @@ sub definition {
#-------------------------------------------------------------------
sub discernUserId {
my $self = shift;
return ($self->canManage && WebGUI::Session::isAdminOn()) ? '1' : $self->session->user->profileField("userId");
return ($self->canManage && $self->session->var->isAdminOn) ? '1' : $self->session->user->profileField("userId");
}
#-------------------------------------------------------------------

View file

@ -175,7 +175,7 @@ A web accessible version of the view method.
sub www_view {
my $self = shift;
my $mimeType=$self->getValue('mimeType');
WebGUI::HTTP::setMimeType($mimeType || 'text/html');
$self->session->http->setMimeType($mimeType || 'text/html');
return $self->view(1);
}

View file

@ -324,7 +324,7 @@ sub processRaw {
#-------------------------------------------------------------------
sub view {
my $self = shift;
if (WebGUI::Session::isAdminOn()) {
if ($self->session->var->isAdminOn) {
return $self->getToolbar;
} else {
return "";
@ -345,7 +345,7 @@ sub www_edit {
#-------------------------------------------------------------------
sub www_goBackToPage {
my $self = shift;
WebGUI::HTTP::setRedirect($self->session->form->process("returnUrl")) if ($self->session->form->process("returnUrl"));
$self->session->http->setRedirect($self->session->form->process("returnUrl")) if ($self->session->form->process("returnUrl"));
return "";
}

View file

@ -577,18 +577,18 @@ sub www_view {
if ($self->get("state") eq "published") { # no privileges, make em log in
return $self->session->privilege->noAccess();
} elsif ($self->session->var->get("adminOn") && $self->get("state") =~ /^trash/) { # show em trash
WebGUI::HTTP::setRedirect($self->getUrl("func=manageTrash"));
$self->session->http->setRedirect($self->getUrl("func=manageTrash"));
return "";
} elsif ($self->session->var->get("adminOn") && $self->get("state") =~ /^clipboard/) { # show em clipboard
WebGUI::HTTP::setRedirect($self->getUrl("func=manageClipboard"));
$self->session->http->setRedirect($self->getUrl("func=manageClipboard"));
return "";
} else { # tell em it doesn't exist anymore
WebGUI::HTTP::setStatus("410");
$self->session->http->setStatus("410");
return WebGUI::Asset->getNotFound->www_view;
}
}
if ($self->get("encryptPage") && $self->session->env->get("HTTPS") ne "on") {
WebGUI::HTTP::setRedirect($self->getUrl);
$self->session->http->setRedirect($self->getUrl);
return "";
}
$self->logView();
@ -614,7 +614,7 @@ sub www_view {
} else {
$ttl = $self->get("cacheTimeout");
}
$cache->set($output, $ttl) if ($useCache && !WebGUI::HTTP::isRedirect());
$cache->set($output, $ttl) if ($useCache && !$self->session->http->isRedirect());
}
return $output;
}

View file

@ -1143,7 +1143,7 @@ sub www_viewRSS {
# Set some of the optional channel variables
$var{'generator'} = "WebGUI ".$WebGUI::VERSION;
$var{'lastBuildDate'} = _xml_encode(_get_rfc822_date($self->get("dateUpdated")));
$var{'webMaster'} = $WebGUI::Session::session{setting}{companyEmail};
$var{'webMaster'} = $self->session->setting->get("companyEmail");
$var{'docs'} = "http://blogs.law.harvard.edu/tech/rss";
my $sth = $self->session->db->read("select asset.assetId, asset.className, max(assetData.revisionDate)
@ -1186,7 +1186,7 @@ sub www_viewRSS {
last if ($i == $self->get("threadsPerPage"));
}
WebGUI::HTTP::setMimeType("text/xml");
$self->session->http->setMimeType("text/xml");
my $output = $self->processTemplate(\%var,$self->get("rssTemplateId"));
WebGUI::Macro::process($self->session,\$output);
return $output;

View file

@ -89,7 +89,7 @@ sub getContentPositions {
#-------------------------------------------------------------------
sub discernUserId {
my $self = shift;
return ($self->canManage && WebGUI::Session::isAdminOn()) ? '1' : $self->session->user->profileField("userId");
return ($self->canManage && $self->session->var->isAdminOn) ? '1' : $self->session->user->profileField("userId");
}
#-------------------------------------------------------------------
@ -153,7 +153,7 @@ sub initialize {
#-------------------------------------------------------------------
sub isManaging {
my $self = shift;
return 1 if ($self->canManage && WebGUI::Session::isAdminOn());
return 1 if ($self->canManage && $self->session->var->isAdminOn());
return 0;
}

View file

@ -966,7 +966,7 @@ sub www_editTabSave {
sub www_exportTab {
my $self = shift;
return $self->session->privilege->insufficient() unless $self->canEdit;
WebGUI::HTTP::setFilename($self->get("url").".tab","text/plain");
$self->session->http->setFilename($self->get("url").".tab","text/plain");
my %fields = $self->session->db->buildHash("select DataForm_fieldId,name from DataForm_field where
assetId=".$self->session->db->quote($self->getId)." order by sequenceNumber");
my @data;

View file

@ -333,7 +333,7 @@ sub view {
}
if($var{header} ne "text/html") {
WebGUI::HTTP::setMimeType($var{header});
$self->session->http->setMimeType($var{header});
return $var{content};
} else {
return $self->processTemplate(\%var,$self->get("templateId"));
@ -348,7 +348,7 @@ sub www_view {
my $output = $self->view;
return $self->session->privilege->noAccess() unless $self->canView;
# this is s a stop gap. we need to do something here that deals with the real www_view and caching, etc.
if (WebGUI::HTTP::getMimeType() ne "text/html") {
if ($self->session->http->getMimeType() ne "text/html") {
return $output;
} else {
return $self->processStyle($output);

View file

@ -436,7 +436,7 @@ The name of the index to open. Defaults to 'default'.
=head3 $dbh
Database handler to use. Defaults to $WebGUI::Session::session{dbh}.
Database handler to use. Defaults to $self->session->db.
=cut
@ -444,7 +444,7 @@ sub new {
my ($class, $indexName, $dbh) = @_;
$indexName = $indexName || 'default';
my $self = { _indexName => $indexName,
_dbh => $dbh || $WebGUI::Session::session{dbh},
_dbh => $dbh || $self->session->db,
_createOptions => {( backend => 'column',
word_length => 20,
filter => 'map { lc $_ if ($_ !~ /\^.*;/) }'

View file

@ -143,7 +143,7 @@ sub view {
my @positions = split(/\./,$self->get("contentPositions"));
my @hidden = split("\n",$self->get("assetsToHide"));
my $i = 1;
my $template= WebGUI::Asset->newByDynamicClass($self->get("templateId"))->get("template");
my $template= WebGUI::Asset->newByDynamicClass($self->session,$self->get("templateId"))->get("template");
my $numPositions = 1;
foreach my $j (2..15) {
$numPositions = $j if $template =~ m/position${j}\_loop/;

View file

@ -214,9 +214,9 @@ sub www_click {
incrementCounter($self->session->form->process("listingId"),"clicks");
my $listing = $self->session->db->getRow("Matrix_listing","listingId",$self->session->form->process("listingId"));
if ($self->session->form->process("m")) {
WebGUI::HTTP::setRedirect($listing->{manufacturerUrl});
$self->session->http->setRedirect($listing->{manufacturerUrl});
} else {
WebGUI::HTTP::setRedirect($listing->{productUrl});
$self->session->http->setRedirect($listing->{productUrl});
}
return "";
}

View file

@ -279,7 +279,7 @@ sub getToolbar {
my $self = shift;
if ($self->getToolbarState) {
my $returnUrl;
if (exists $self->session->asset) {
if ($self->session->asset) {
$returnUrl = ";proceed=goBackToPage;returnUrl=".$self->session->url->escape($self->session->asset->getUrl);
}
my $toolbar;
@ -305,16 +305,16 @@ sub view {
my $self = shift;
# we've got to determine what our start point is based upon user conditions
my $start;
$self->session->asset = WebGUI::Asset->newByUrl unless (exists $self->session->asset);
$self->session->asset = WebGUI::Asset->newByUrl($self->session) unless ($self->session->asset);
my $current = $self->session->asset;
if ($self->get("startType") eq "specificUrl") {
$start = WebGUI::Asset->newByUrl($self->get("startPoint"));
$start = WebGUI::Asset->newByUrl($self->session,$self->get("startPoint"));
} elsif ($self->get("startType") eq "relativeToRoot") {
unless (($self->get("startPoint")+1) >= $current->getLineageLength) {
$start = WebGUI::Asset->newByLineage(substr($current->get("lineage"),0, ($self->get("startPoint") + 1) * 6));
$start = WebGUI::Asset->newByLineage($self->session,substr($current->get("lineage"),0, ($self->get("startPoint") + 1) * 6));
}
} elsif ($self->get("startType") eq "relativeToCurrentUrl") {
$start = WebGUI::Asset->newByLineage(substr($current->get("lineage"),0, ($current->getLineageLength + $self->get("startPoint")) * 6));
$start = WebGUI::Asset->newByLineage($self->session,substr($current->get("lineage"),0, ($current->getLineageLength + $self->get("startPoint")) * 6));
}
$start = $current unless (defined $start); # if none of the above results in a start point, then the current page must be it
my @includedRelationships = split("\n",$self->get("assetsToInclude"));
@ -437,7 +437,7 @@ sub view {
#-------------------------------------------------------------------
sub www_goBackToPage {
my $self = shift;
WebGUI::HTTP::setRedirect($self->session->form->process("returnUrl")) if ($self->session->form->process("returnUrl"));
$self->session->http->setRedirect($self->session->form->process("returnUrl")) if ($self->session->form->process("returnUrl"));
return "";
}
@ -480,7 +480,7 @@ sub www_preview {
) . $nav->build . qq(</td></tr></table>);
# Because of the way the system is set up, the preview is cached. So let's remove it again...
WebGUI::Cache->new($self->session,$nav->{_identifier}."$session{page}{pageId}", "Navigation-".$self->session->config->getFilename)->delete;
WebGUI::Cache->new($self->session,$nav->{_identifier}.$self->session->asset->getId, "Navigation-".$self->session->config->getFilename)->delete;
return _submenu($output,"preview");
}

View file

@ -1091,14 +1091,14 @@ sub www_editSectionSave {
#-------------------------------------------------------------------
sub www_exportAnswers {
return "" unless ($self->session->user->isInGroup($_[0]->get("groupToViewReports")));
WebGUI::HTTP::setFilename($self->session->url->escape($_[0]->get("title")."_answers.tab"),"text/tab");
$self->session->http->setFilename($self->session->url->escape($_[0]->get("title")."_answers.tab"),"text/tab");
return $self->session->db->quickTab("select * from Survey_answer where Survey_id=".$self->session->db->quote($_[0]->get("Survey_id")));
}
#-------------------------------------------------------------------
sub www_exportComposite {
return "" unless ($self->session->user->isInGroup($_[0]->get("groupToViewReports")));
WebGUI::HTTP::setFilename($self->session->url->escape($_[0]->get("title")."_composite.tab"),"text/tab");
$self->session->http->setFilename($self->session->url->escape($_[0]->get("title")."_composite.tab"),"text/tab");
return $self->session->db->quickTab("select b.question, c.response, a.userId, a.username, a.ipAddress, c.comment, c.dateOfResponse from Survey_response a
left join Survey_questionResponse c on a.Survey_responseId=c.Survey_responseId
left join Survey_question b on c.Survey_questionId=b.Survey_questionId
@ -1108,14 +1108,14 @@ sub www_exportComposite {
#-------------------------------------------------------------------
sub www_exportQuestions {
return "" unless ($self->session->user->isInGroup($_[0]->get("groupToViewReports")));
WebGUI::HTTP::setFilename($self->session->url->escape($_[0]->get("title")."_questions.tab"),"text/tab");
$self->session->http->setFilename($self->session->url->escape($_[0]->get("title")."_questions.tab"),"text/tab");
return $self->session->db->quickTab("select * from Survey_question where Survey_id=".$self->session->db->quote($_[0]->get("Survey_id")));
}
#-------------------------------------------------------------------
sub www_exportResponses {
return "" unless ($self->session->user->isInGroup($_[0]->get("groupToViewReports")));
WebGUI::HTTP::setFilename($self->session->url->escape($_[0]->get("title")."_responses.tab"),"text/tab");
$self->session->http->setFilename($self->session->url->escape($_[0]->get("title")."_responses.tab"),"text/tab");
return $self->session->db->quickTab("select * from Survey_response where Survey_id=".$self->session->db->quote($_[0]->get("Survey_id")));
}

View file

@ -508,7 +508,7 @@ sub view {
if ($rssObject) {
$self->_constructRSS($rssObject,\%var);
my $rss=$rssObject->as_string;
WebGUI::HTTP::setMimeType('text/xml');
$self->session->http->setMimeType('text/xml');
#Looks like a kludge, but what this does is put in the proper
#XSLT stylesheet so the RSS doesn't look like total ass.

View file

@ -472,7 +472,7 @@ sub view {
if ($session{'config'}{'soapHttpHeaderOverride'} &&
$self->get("httpHeader")) {
WebGUI::HTTP::setMimeType($self->get("httpHeader"));
$self->session->http->setMimeType($self->get("httpHeader"));
$self->session->errorHandler->warn("changed mimetype: " . $session{'header'}{'mimetype'});
}
@ -481,7 +481,7 @@ sub view {
# to do it this way, but it certainly is the least obtrusive to default
# webgui flow. This feature currently requires a patched WebGUI.pm file.
if ($session{'form'}{'redirectURL'}) {
WebGUI::HTTP::setRedirect($session{'form'}{'redirectURL'});
$self->session->http->setRedirect($session{'form'}{'redirectURL'});
}
$var{'results'} = \@result;