Author: mj
Date: Fri Apr 6 07:39:20 2012
New Revision: 11409
Log:
Issue 2288. Implement term (subject/place) browse.
Added:
branches/2.0/plugins/qtDominionPlugin/modules/taxonomy/
branches/2.0/plugins/qtDominionPlugin/modules/taxonomy/actions/
branches/2.0/plugins/qtDominionPlugin/modules/taxonomy/actions/browseAction.class.php
- copied, changed from r11403,
branches/2.0/plugins/qtDominionPlugin/modules/repository/actions/browseAction.class.php
branches/2.0/plugins/qtDominionPlugin/modules/taxonomy/templates/
branches/2.0/plugins/qtDominionPlugin/modules/taxonomy/templates/browseSuccess.php
- copied, changed from r11403,
branches/2.0/plugins/qtDominionPlugin/modules/repository/templates/browseSuccess.php
Modified:
branches/2.0/plugins/qtDominionPlugin/modules/repository/actions/browseAction.class.php
branches/2.0/plugins/qtDominionPlugin/modules/repository/templates/browseSuccess.php
Modified:
branches/2.0/plugins/qtDominionPlugin/modules/repository/actions/browseAction.class.php
==============================================================================
---
branches/2.0/plugins/qtDominionPlugin/modules/repository/actions/browseAction.class.php
Fri Apr 6 05:02:11 2012 (r11408)
+++
branches/2.0/plugins/qtDominionPlugin/modules/repository/actions/browseAction.class.php
Fri Apr 6 07:39:20 2012 (r11409)
@@ -35,9 +35,7 @@
// retrieve all institutions
$query = new Elastica_Query(new Elastica_Query_MatchAll());
-
$query = $this->facetQuery($query);
-// $query = $this->filterQuery($query);
// set paging for request
$query->setLimit($this->request->limit);
Modified:
branches/2.0/plugins/qtDominionPlugin/modules/repository/templates/browseSuccess.php
==============================================================================
---
branches/2.0/plugins/qtDominionPlugin/modules/repository/templates/browseSuccess.php
Fri Apr 6 05:02:11 2012 (r11408)
+++
branches/2.0/plugins/qtDominionPlugin/modules/repository/templates/browseSuccess.php
Fri Apr 6 07:39:20 2012 (r11409)
@@ -1,7 +1,7 @@
<div id="searchresults">
<div class="row">
<div class="span12" id="headline">
- <h1><?php echo
image_tag('/plugins/qtDominionPlugin/images/icons-large/icon-institutions.png',
array('width' => '42', 'height' => '24')) ?>
+ <h1><?php echo
image_tag('/plugins/qtDominionPlugin/images/icons-large/icon-institutions.png',
array('width' => '42', 'height' => '42')) ?>
<?php echo __('%1% Institutions', array('%1%' =>
$pager->resultSet->getTotalHits())); ?></h1>
</div>
Copied and modified:
branches/2.0/plugins/qtDominionPlugin/modules/taxonomy/actions/browseAction.class.php
(from r11403,
branches/2.0/plugins/qtDominionPlugin/modules/repository/actions/browseAction.class.php)
==============================================================================
---
branches/2.0/plugins/qtDominionPlugin/modules/repository/actions/browseAction.class.php
Thu Apr 5 14:16:07 2012 (r11403, copy source)
+++
branches/2.0/plugins/qtDominionPlugin/modules/taxonomy/actions/browseAction.class.php
Fri Apr 6 07:39:20 2012 (r11409)
@@ -24,7 +24,7 @@
* @version svn:$Id$
*/
-class RepositoryBrowseAction extends sfAction
+class TaxonomyBrowseAction extends sfAction
{
public function execute($request)
{
@@ -33,11 +33,26 @@
$request->limit = sfConfig::get('app_hits_per_page');
}
- // retrieve all institutions
- $query = new Elastica_Query(new Elastica_Query_MatchAll());
+ // determine what kind of term we are browsing
+ switch ($this->request->id)
+ {
+ case QubitTaxonomy::SUBJECT_ID:
+ $this->field = 'subjects_id';
+ break;
+
+ case QubitTaxonomy::PLACE_ID:
+ $this->field = 'places_id';
+ break;
- $query = $this->facetQuery($query);
-// $query = $this->filterQuery($query);
+ case '':
+ // TODO: no ID specified, handle error condition (redirect?)
+ break;
+ }
+
+ // retrieve all institutions
+ $query = new Elastica_Query(new Elastica_Query_Term(array('taxonomyId' =>
$this->request->id)));
+ $query->setSort(array('_score' => 'desc', 'slug' => 'asc'));
+// $query = $this->facetQuery($query);
// set paging for request
$query->setLimit($this->request->limit);
@@ -49,7 +64,7 @@
try
{
- $resultSet =
QubitSearch::getInstance()->index->getType('QubitRepository')->search($query);
+ $resultSet =
QubitSearch::getInstance()->index->getType('QubitTerm')->search($query);
}
catch (Exception $e)
{
@@ -115,60 +130,6 @@
// no error, must be empty result set
$this->error = $this->context->i18n->__('No subjects found.');
}
-/*
- if ($this->getUser()->isAuthenticated())
- {
- $this->sortSetting = sfConfig::get('app_sort_browser_user');
- }
- else
- {
- $this->sortSetting = sfConfig::get('app_sort_browser_anonymous');
- }
-
- $criteria = new Criteria;
-
- // Do source culture fallback
- $criteria = QubitCultureFallback::addFallbackCriteria($criteria,
'QubitActor');
-
- switch ($request->sort)
- {
- case 'nameDown':
- $criteria->addDescendingOrderByColumn('authorized_form_of_name');
-
- break;
-
- case 'nameUp':
- $criteria->addAscendingOrderByColumn('authorized_form_of_name');
-
- break;
-
- case 'updatedDown':
- $criteria->addDescendingOrderByColumn(QubitObject::UPDATED_AT);
-
- break;
-
- case 'updatedUp':
- $criteria->addAscendingOrderByColumn(QubitObject::UPDATED_AT);
-
- break;
-
- default:
- if ('alphabetic' == $this->sortSetting)
- {
- $criteria->addAscendingOrderByColumn('authorized_form_of_name');
- }
- else if ('lastUpdated' == $this->sortSetting)
- {
- $criteria->addDescendingOrderByColumn(QubitObject::UPDATED_AT);
- }
- }
-
- // Page results
- $this->pager = new QubitPager('QubitRepository');
- $this->pager->setCriteria($criteria);
- $this->pager->setMaxPerPage($request->limit);
- $this->pager->setPage($request->page);
-*/
}
public function facetQuery($query)
Copied and modified:
branches/2.0/plugins/qtDominionPlugin/modules/taxonomy/templates/browseSuccess.php
(from r11403,
branches/2.0/plugins/qtDominionPlugin/modules/repository/templates/browseSuccess.php)
==============================================================================
---
branches/2.0/plugins/qtDominionPlugin/modules/repository/templates/browseSuccess.php
Thu Apr 5 14:16:07 2012 (r11403, copy source)
+++
branches/2.0/plugins/qtDominionPlugin/modules/taxonomy/templates/browseSuccess.php
Fri Apr 6 07:39:20 2012 (r11409)
@@ -1,65 +1,18 @@
<div id="searchresults">
<div class="row">
<div class="span12" id="headline">
- <h1><?php echo
image_tag('/plugins/qtDominionPlugin/images/icons-large/icon-institutions.png',
array('width' => '42', 'height' => '24')) ?>
- <?php echo __('%1% Institutions', array('%1%' =>
$pager->resultSet->getTotalHits())); ?></h1>
+ <h1><?php echo
image_tag('/plugins/qtDominionPlugin/images/icons-large/icon-subjects.png',
array('width' => '42', 'height' => '42')) ?>
+ <?php echo __('%1% Subjects', array('%1%' =>
$pager->resultSet->getTotalHits())); ?></h1>
</div>
<div id="filter" class="span12 mobileonly">
- <h2 class="widebtn gray btn-huge" data-toggle="collapse"
data-target="#facets"><?php echo __('Filter %1% Institutions', array('%1%' =>
$pager->resultSet->getTotalHits())); ?></h2>
+ <h2 class="widebtn gray btn-huge" data-toggle="collapse"
data-target="#facets"><?php echo __('Filter %1% Subjects', array('%1%' =>
$pager->resultSet->getTotalHits())); ?></h2>
</div>
</div>
<div class="row">
<div class="span3" id="facets">
- <div class="section">
- <h2 class="mobileonly widebtn gray btn-huge" data-toggle="collapse"
data-target="#archivetype"><?php echo __('Archive Type'); ?></h2>
-
- <h2 class="desktoponly"><?php echo __('Archive Type'); ?></h2>
-
- <div class="scrollable" id="archivetype">
- <ul>
- <li class="active"><?php echo link_to(__('All'), array('types' =>
null) + $sf_request->getParameterHolder()->getAll()); ?></li>
-
- <?php foreach($pager->facets['types']['terms'] as $id => $term): ?>
-
- <li><?php echo
link_to(__($term['term']).'<span>'.$term['count'].'</span>', array('types' =>
$id) + $sf_request->getParameterHolder()->getAll()); ?></li>
-
- <?php endforeach; ?>
-
- </ul>
- </div>
- </div><!-- /.section -->
-
- <div class="section">
- <h2 class="mobileonly widebtn gray btn-huge" data-toggle="collapse"
data-target="#province"><?php echo __('Province'); ?></h2>
-
- <h2 class="desktoponly"><?php echo __('Province'); ?></h2>
-
- <div class="scrollable" id="province">
- <ul>
- <li class="active"><?php echo link_to(__('All'),
array('contact_i18n_region' => null) +
$sf_request->getParameterHolder()->getAll()); ?></li>
-
- <?php foreach($pager->facets['contact_i18n_region']['terms'] as
$id => $term): ?>
-
- <li><?php echo
link_to(__($term['term']).'<span>'.$term['count'].'</span>',
array('contact_i18n_region' => $id) +
$sf_request->getParameterHolder()->getAll()); ?></li>
-
- <?php endforeach; ?>
-
- </ul>
- </div>
- </div><!-- /.section -->
-
- <div class="section">
- <h2 class="desktoponly">Map</h2>
-
- <div class="">
- <a href="#"><img src="../images/placeholder/map.png" alt="map"
width="100%" /></a>
- </div>
- </div><!-- /.section -->
-
-
-
+ <!-- FIXME: HACK HERE -->.
</div><!-- /.column .sidebar -->
<div class="span9" id="grid">
@@ -73,25 +26,19 @@
<?php foreach ($pager->resultSet->getResults() as $hit): ?>
<?php $doc = $hit->getData(); ?>
- <?php foreach ($doc['actor'] as $i18n): ?>
+ <?php foreach ($doc['i18n'] as $i18n): ?>
<?php $doc[$i18n['culture']] = $i18n; ?>
<?php endforeach; ?>
- <?php unset($doc['actor']); // continue; ?>
+ <?php unset($doc['i18n']); // continue; ?>
<div class="institution maxi">
- <h2 class="filltext"><?php echo
link_to($doc[$sf_user->getCulture()]['authorizedFormOfName'] ?:
$doc[$doc['sourceCulture']]['authorizedFormOfName'], array('module' =>
'repository', 'slug' => $doc['slug'])) ?></h2>
+ <h2 class="filltext"><?php echo
link_to($doc[$sf_user->getCulture()]['name'] ?:
$doc[$doc['sourceCulture']]['name'], array('module' => 'search', $field =>
$hit->getId())) ?></h2>
</div>
<?php endforeach; ?>
- <!-- FIXME: placeholder for repos with image -->
- <div class="institution maxi img">
- <h2><a href="#">Vancouver Maritime Museum Library</a></h2>
- <h2><a href="#"><img
src="../images/placeholder/institution-logo3.png" alt="institution-logo3"
width="150" height="150" /></a></h2>
- </div>
-
</div>
</div>
--
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.