Author: david
Date: Wed Oct 21 13:58:32 2009
New Revision: 3788
Log:
Filter non-preferred terms from term treeview. Fixes issue #1077.
Modified:
trunk/apps/qubit/modules/term/actions/contextMenuComponent.class.php
Modified: trunk/apps/qubit/modules/term/actions/contextMenuComponent.class.php
==============================================================================
--- trunk/apps/qubit/modules/term/actions/contextMenuComponent.class.php
Wed Oct 21 11:47:04 2009 (r3787)
+++ trunk/apps/qubit/modules/term/actions/contextMenuComponent.class.php
Wed Oct 21 13:58:32 2009 (r3788)
@@ -79,17 +79,23 @@
{
$this->termTree[] = $node;
- if (0 < count($children = $node->getChildren(array('sortBy' => 'name'))))
+ $criteria = new Criteria;
+ $criteria->add(QubitTerm::PARENT_ID, $node->id);
+ $criteria->add(QubitTerm::TAXONOMY_ID, $this->term->taxonomyId);
+ $criteria = QubitCultureFallback::addFallbackCriteria($criteria,
'QubitTerm');
+ $criteria->addAscendingOrderByColumn('name');
+
+ // Exclude non-preferred terms
+ $criteria->addJoin(QubitTerm::ID, QubitRelation::OBJECT_ID,
Criteria::LEFT_JOIN);
+ $criterion1 = $criteria->getNewCriterion(QubitRelation::TYPE_ID,
QubitTerm::TERM_RELATION_EQUIVALENCE_ID, Criteria::NOT_EQUAL);
+ $criterion2 = $criteria->getNewCriterion(QubitRelation::TYPE_ID, null,
Criteria::ISNULL);
+ $criterion1->addOr($criterion2);
+ $criteria->add($criterion1);
+
+ if (0 < count($children = QubitTerm::get($criteria)))
{
foreach ($children as $child)
{
- // Omit children from different taxonomies
- // TODO: Is there a better way to get children filtering by taxonomy?
- if ($this->term->taxonomy->id != $child->taxonomy->id)
- {
- continue;
- }
-
// Recurse
if (in_array($child->id, $lineage))
{
--~--~---------~--~----~------------~-------~--~----~
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.ca/group/qubit-commits?hl=en
-~----------~----~----~----~------~----~------~--~---