Author: sevein
Date: Thu Aug 2 22:10:57 2012
New Revision: 12036
Log:
Add lft fallback when sorting by title so records with empty title can be
sorted too
Modified:
trunk/lib/model/QubitInformationObject.php
Modified: trunk/lib/model/QubitInformationObject.php
==============================================================================
--- trunk/lib/model/QubitInformationObject.php Thu Aug 2 17:37:44 2012
(r12035)
+++ trunk/lib/model/QubitInformationObject.php Thu Aug 2 22:10:57 2012
(r12036)
@@ -1710,28 +1710,36 @@
if ('next' == $position)
{
// Add where clause with culture fallback support
- $criteria->add('title',
- 'COALESCE((CASE
+ $criterion1 = $criteria->getNewCriterion('title',
+ '(CASE
WHEN (current.TITLE IS NOT NULL AND current.TITLE <> "")
THEN current.TITLE
ELSE source.TITLE
- END), "") > '.Propel::getConnection()->quote($current->title),
+ END) > '.Propel::getConnection()->quote($current->title),
Criteria::CUSTOM);
+ $criterion2 = $criteria->getNewCriterion('lft', $current->lft,
Criteria::GREATER_THAN);
+ $criterion1->addOr($criterion2);
+ $criteria->add($criterion1);
$criteria->addAscendingOrderByColumn('title');
+ $criteria->addAscendingOrderByColumn('lft');
}
else // 'previous'
{
// Add where clause with culture fallback support
- $criteria->add('title',
- 'COALESCE((CASE
+ $criterion1 = $criteria->getNewCriterion('title',
+ '(CASE
WHEN (current.TITLE IS NOT NULL AND current.TITLE <> "")
THEN current.TITLE
ELSE source.TITLE
- END), "") < '.Propel::getConnection()->quote($current->title),
+ END) < '.Propel::getConnection()->quote($current->title),
Criteria::CUSTOM);
+ $criterion2 = $criteria->getNewCriterion('lft', $current->lft,
Criteria::LESS_THAN);
+ $criterion1->addOr($criterion2);
+ $criteria->add($criterion1);
$criteria->addDescendingOrderByColumn('title');
+ $criteria->addDescendingOrderByColumn('lft');
}
break;
@@ -1845,6 +1853,7 @@
$criteria->add(QubitInformationObject::PARENT_ID,
$this->parentId);
$criteria = QubitCultureFallback::addFallbackCriteria($criteria,
'QubitInformationObject');
$criteria->addDescendingOrderByColumn('title');
+ $criteria->addDescendingOrderByColumn('lft');
$criteria->setLimit(1);
if (null === $informationObject =
QubitInformationObject::getOne($criteria))
@@ -1869,7 +1878,8 @@
$criteria->add(QubitInformationObject::PARENT_ID,
$this->parentId);
$criteria = QubitCultureFallback::addFallbackCriteria($criteria,
'QubitInformationObject');
$criteria->addAscendingOrderByColumn('title');
- $criteria->setLimit(1);
+ $criteria->addAscendingOrderByColumn('lft');
+ $criteria->setLimit(0);
if (null === $informationObject =
QubitInformationObject::getOne($criteria))
{
--
You received this message because you are subscribed to the Google Groups
"Qubit Toolkit Commits" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/qubit-commits?hl=en.