page_node_view integration

Signed-off-by: bachy <git@g-u-i.net>
This commit is contained in:
bachy 2013-05-24 17:58:29 +02:00
parent 13d6d3b95b
commit ee27274830
5 changed files with 38 additions and 3 deletions

File diff suppressed because one or more lines are too long

View File

@ -24,7 +24,7 @@ MaterioSearchApiAjax = function(){
$('#materio-search-api-search-form').bind('submit', function(event) {
// trace('search submited', event);
var $this = $(this);
// var $this = $(this);
setTimeout(function(){
loadResults(getSearchKeys());
},10);
@ -122,7 +122,7 @@ MaterioSearchApiAjax = function(){
$.getJSON(url,
function(json){
//trace('json', json);
$.event.trigger('resultsloaded');
$.event.trigger('loaded-content');
_isloadingresults = false;
$('#materio-search-api-search-form').removeClass('loading');
changeContent(json);

View File

@ -377,6 +377,22 @@ function materio_search_api_entity_info_alter(&$entity_info) {
);
}
/**
* Implements hook_node_view_alter().
*/
function materio_search_api_node_view_alter(&$build) {
$node = $build['#node'];
if (arg(0) == 'node' && arg(1) == $node->nid) {
// dsm($build, 'build');
global $user;
$viewmode = isset($user->data['materiosearchapi_viewmode']) ? $user->data['materiosearchapi_viewmode'] : variable_get('defaultviewmode', 'full');
// dsm($viewmode, 'viewmode');
if($build['#view_mode'] != $viewmode && $build['#view_mode'] != "bookmark"){
$build = node_view($node, $viewmode);
}
}
}
/**
* Implements hook_node_view().
*/

View File

@ -58,5 +58,11 @@ function materio_search_api_ajax_menu() {
'page arguments' => array(2),
);
$items['materio_search_api_ajax/node'] = $base+array(
'page callback' => 'materio_search_api_ajax_node',
'access callback' => TRUE,
'page arguments' => array(2),
);
return $items;
}

View File

@ -219,4 +219,17 @@ function materio_search_api_ajax_actuality($page = 0){
drupal_json_output($rep);
}
}
}
function materio_search_api_ajax_node($nid){
global $user;
$viewmode = isset($user->data['materiosearchapi_viewmode']) ? $user->data['materiosearchapi_viewmode'] : variable_get('defaultviewmode', 'full');
if($nodeview = node_view(node_load($nid),$viewmode)){
$rep = array(
'nid'=>$nid,
'node' => drupal_render($nodeview),
);
drupal_json_output($rep);
}
}