Author: mj
Date: Fri Apr 6 05:02:11 2012
New Revision: 11408
Log:
Issue 2288. Update indexing and query to allow sorting
Modified:
branches/2.0/plugins/qtDominionPlugin/modules/search/actions/autocompleteAction.class.php
branches/2.0/plugins/qtDominionPlugin/modules/search/actions/indexAction.class.php
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitActorMapping.class.php
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitInformationObjectMapping.class.php
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitRepositoryMapping.class.php
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitTermMapping.class.php
Modified:
branches/2.0/plugins/qtDominionPlugin/modules/search/actions/autocompleteAction.class.php
==============================================================================
---
branches/2.0/plugins/qtDominionPlugin/modules/search/actions/autocompleteAction.class.php
Fri Apr 6 00:03:01 2012 (r11407)
+++
branches/2.0/plugins/qtDominionPlugin/modules/search/actions/autocompleteAction.class.php
Fri Apr 6 05:02:11 2012 (r11408)
@@ -31,11 +31,11 @@
$query = new Elastica_Query();
$query->setLimit(3);
+ $query->setSort(array('_score' => 'desc', 'slug' => 'asc'));
// TODO: have to sort this on "recent" date (IOs only)
$queryString = new Elastica_Query_QueryString($querystring . '*');
$queryString->setDefaultOperator('AND');
- $queryString->setAutoGeneratePhraseQueries(true);
// repositories
$queryString->setFields(array('actor.authorizedFormOfName'));
Modified:
branches/2.0/plugins/qtDominionPlugin/modules/search/actions/indexAction.class.php
==============================================================================
---
branches/2.0/plugins/qtDominionPlugin/modules/search/actions/indexAction.class.php
Fri Apr 6 00:03:01 2012 (r11407)
+++
branches/2.0/plugins/qtDominionPlugin/modules/search/actions/indexAction.class.php
Fri Apr 6 05:02:11 2012 (r11408)
@@ -58,6 +58,9 @@
$query = new Elastica_Query($queryFiltered); // Elastica_Query
$query = $this->facetQuery($query); // Elastica_Query
+ // tie-break sort on slug (ie. alphanumeric sort), eg. for match_all
+ $query->setSort(array('_score' => 'desc', 'slug' => 'asc'));
+
// set paging for request
$query->setLimit($this->request->limit);
Modified:
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitActorMapping.class.php
==============================================================================
---
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitActorMapping.class.php
Fri Apr 6 00:03:01 2012 (r11407)
+++
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitActorMapping.class.php
Fri Apr 6 05:02:11 2012 (r11408)
@@ -29,7 +29,7 @@
{
static function getProperties()
{
- return array('slug' => array('type' => 'string', 'index' => 'no'),
+ return array('slug' => array('type' => 'string', 'index' =>
'not_analyzed'),
) + self::getI18nProperties();
}
Modified:
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitInformationObjectMapping.class.php
==============================================================================
---
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitInformationObjectMapping.class.php
Fri Apr 6 00:03:01 2012 (r11407)
+++
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitInformationObjectMapping.class.php
Fri Apr 6 05:02:11 2012 (r11408)
@@ -29,7 +29,7 @@
{
static function getProperties()
{
- return array('slug' => array('type' => 'string', 'index' => 'no'),
+ return array('slug' => array('type' => 'string', 'index' =>
'not_analyzed'),
'referenceCode' => array('type' => 'string', 'index' =>
'not_analyzed'),
'identifier' => array('type' => 'string', 'index' =>
'not_analyzed'),
'levelOfDescriptionId' => array('type' => 'integer',
'index' => 'not_analyzed', 'include_in_all' => false),
Modified:
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitRepositoryMapping.class.php
==============================================================================
---
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitRepositoryMapping.class.php
Fri Apr 6 00:03:01 2012 (r11407)
+++
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitRepositoryMapping.class.php
Fri Apr 6 05:02:11 2012 (r11408)
@@ -29,7 +29,7 @@
{
static function getProperties()
{
- return array('slug' => array('type' => 'string', 'index' => 'no'),
+ return array('slug' => array('type' => 'string', 'index' =>
'not_analyzed'),
'identifier' => array('type' => 'string', 'index' =>
'not_analyzed'),
'types' => array('type' => 'integer', 'index' =>
'not_analyzed', 'include_in_all' => false),
'contact' => array('type' => 'object', 'properties' =>
QubitContactInformationMapping::getProperties()),
Modified:
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitTermMapping.class.php
==============================================================================
---
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitTermMapping.class.php
Fri Apr 6 00:03:01 2012 (r11407)
+++
branches/2.0/plugins/qtElasticSearchPlugin/lib/model/QubitTermMapping.class.php
Fri Apr 6 05:02:11 2012 (r11408)
@@ -29,7 +29,7 @@
{
static function getProperties()
{
- return array('slug' => array('type' => 'string', 'index' => 'no'),
+ return array('slug' => array('type' => 'string', 'index' =>
'not_analyzed'),
'taxonomyId' => array('type' => 'integer', 'index' =>
'not_analyzed', 'include_in_all' => false),
) + self::getI18nProperties();
}
--
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.