Search api Solr onthologie bugfix

Signed-off-by: bachy <git@g-u-i.net>
This commit is contained in:
bachy 2013-02-12 20:29:51 +01:00
parent c60696ba2b
commit f9a60fe62d

View File

@ -95,26 +95,28 @@ function materio_search_api_menu() {
*/ */
function materio_search_api_entity_property_info_alter(&$info){ function materio_search_api_entity_property_info_alter(&$info){
// dsm($info, 'hook_entity_property_info_alter | info'); // dsm($info, 'hook_entity_property_info_alter | info');
// watchdog('materio solr', 'materio_search_api_entity_property_info_alter', array());
$properties = &$info['node']['properties']; $properties = &$info['node']['properties'];
for ($i=1; $i <= 5 ; $i++) { for ($i=1; $i <= 5 ; $i++) {
$properties['materio_search_api_taxonomy_term_'.$i] = array( $properties['materio_search_api_taxonomy_term_'.$i] = array(
'type'=>'taxonomy_term', 'type'=>'taxonomy_term',
'label'=> t('Main taxonomy term '.$i), 'label'=> t('Main taxonomy term '.$i),
'query callback'=>'entity_metadata_table_query', // 'query callback'=>'entity_metadata_table_query',
'getter callback'=>'materio_search_api_get_main_taxonomy_term_'.$i, 'getter callback'=>'materio_search_api_get_main_taxonomy_term_'.$i,
); );
} }
$properties['materio_search_api_taxonomy_term_'.$i] = array( // $properties['materio_search_api_taxonomy_term_'.$i] = array(
'type'=>'taxonomy_term', // 'type'=>'list<taxonomy_term>',
'label'=> t('Taxonomy term after 5 mains'), // 'label'=> t('Taxonomy term after 5 mains'),
'query callback'=>'entity_metadata_table_query', // // 'query callback'=>'entity_metadata_table_query',
'getter callback'=>'materio_search_api_get_taxonomy_terms_after_5', // 'getter callback'=>'materio_search_api_get_taxonomy_terms_after_5',
); // );
return $properties; return $properties;
} }
function materio_search_api_get_main_taxonomy_term_1($item){ function materio_search_api_get_main_taxonomy_term_1($item){
// dsm($item, 'item'); // dsm($item, 'item');
// watchdog('materio solr', 'materio_search_api_get_taxonomy_term_1', array());
return materio_search_api_get_onto_term($item, 0); return materio_search_api_get_onto_term($item, 0);
} }
function materio_search_api_get_main_taxonomy_term_2($item){ function materio_search_api_get_main_taxonomy_term_2($item){
@ -134,17 +136,25 @@ function materio_search_api_get_main_taxonomy_term_5($item){
return materio_search_api_get_onto_term($item, 4); return materio_search_api_get_onto_term($item, 4);
} }
function materio_search_api_get_taxonomy_terms_after_5($item){ // function materio_search_api_get_taxonomy_terms_after_5($item){
if(isset($item->field_onthologie['und'])){ // // dsm($item, 'item');
$terms = array(); // watchdog('materio solr', 'materio_search_api_get_taxonomy_terms_after_5', array());
foreach ($item->field_onthologie['und'] as $delta => $value) { // if(isset($item->field_onthologie['und'])){
if($delta>4) // $terms = array();
$terms[] = taxonomy_term_load($item->field_onthologie['und'][$delta]['tid']); // foreach ($item->field_onthologie['und'] as $delta => $value) {
} // if($delta>4){
return $terms; // $tid = $item->field_onthologie['und'][$delta]['tid'];
} // $terms[] = taxonomy_term_load($tid);
return null; // // $terms[] = $item->field_onthologie['und'][$delta];
} // // $terms[] = $value['tid'];
// watchdog('materio solr', 'tid is '.$tid, array());
// }
// }
// return $terms;
// }
// return null;
// }
function materio_search_api_get_onto_term($item, $delta){ function materio_search_api_get_onto_term($item, $delta){
// dsm($item, 'item'); // dsm($item, 'item');