reformatted ugly query

This commit is contained in:
JT Smith 2007-01-05 15:08:34 +00:00
parent f39c97fb53
commit 9e599bdbae

View file

@ -1076,16 +1076,34 @@ sub view {
$var{"search.url"} = $self->getSearchUrl; $var{"search.url"} = $self->getSearchUrl;
$var{"subscribe.url"} = $self->getSubscribeUrl; $var{"subscribe.url"} = $self->getSubscribeUrl;
$var{"unsubscribe.url"} = $self->getUnsubscribeUrl; $var{"unsubscribe.url"} = $self->getUnsubscribeUrl;
my $sql = "select asset.assetId,asset.className,assetData.revisionDate as revisionDate my $sql = "
from Thread select
left join asset on Thread.assetId=asset.assetId asset.assetId,
left join Post on Post.assetId=Thread.assetId and Thread.revisionDate = Post.revisionDate asset.className,
left join assetData on assetData.assetId=Thread.assetId and Thread.revisionDate = assetData.revisionDate assetData.revisionDate as revisionDate
where asset.parentId=".$self->session->db->quote($self->getId)." and asset.state='published' and from Thread
asset.className='WebGUI::Asset::Post::Thread' and assetData.revisionDate=(SELECT max(revisionDate) from assetData left join asset on Thread.assetId=asset.assetId
where assetData.assetId=asset.assetId and (assetData.status='approved' left join Post on Post.assetId=Thread.assetId and Thread.revisionDate = Post.revisionDate
or assetData.tagId=".$self->session->db->quote($self->session->scratch->get("versionTag")).")) left join assetData on assetData.assetId=Thread.assetId and Thread.revisionDate = assetData.revisionDate
group by assetData.assetId order by Thread.isSticky desc, ".$sortBy." ".$sortOrder; where
asset.parentId=".$self->session->db->quote($self->getId)."
and asset.state='published'
and asset.className='WebGUI::Asset::Post::Thread'
and assetData.revisionDate=(
SELECT
max(revisionDate)
from
assetData
where
assetData.assetId=asset.assetId
and (status='approved' or tagId=".$self->session->db->quote($self->session->scratch->get("versionTag")).")
)
group by
assetData.assetId
order by
Thread.isSticky desc,
".$sortBy."
".$sortOrder;
my $p = WebGUI::Paginator->new($self->session,$self->getUrl,$self->get("threadsPerPage")); my $p = WebGUI::Paginator->new($self->session,$self->getUrl,$self->get("threadsPerPage"));
$p->setDataByQuery($sql); $p->setDataByQuery($sql);
$self->appendPostListTemplateVars(\%var, $p); $self->appendPostListTemplateVars(\%var, $p);