My installation is:
* Drupal 6.13
* Dynamic display block module (RC6) 6.x-1.0-rc6
* jQuery update module 6.x-1.1
* CCK module 6.x-2.4
* Views module 6.x-2.6
* filefield module 6.x-3.1
* imagefield module 6.x-3.1
* imageapi module 6.x-1.6
* imagecache 6.x-2.0-beta9
* Embedded Media Field 6.x-1.2
* Zero Point 6.x-1.7
My problem was as follows:
When installing if statement before $vars['slider_items'] = $slider_items;
to the [theme_name]_preprocess_ddblock_cycle_block_content as indicated in the preprocess_function_ddblock_embedded_video.txt, ddblock_embedded_video view did not work.
What was watched was a white screen with black bars on certain sides
My solution was as follows (it is indicated in bold - Keep in mind that is already installed an advanced display block Dynamic slideshow):
/*!
* Dynamic display block preprocess functions
* Copyright (c) 2008 - 2009 P. Blaauw All rights reserved.
* Version 1.3 (18-MAR-2009)
* Licenced under GPL license
* http://www.gnu.org/licenses/gpl.html
*/
/**
* Override or insert variables into the ddblock_cycle_block_content templates.
* Used to convert variables from view_fields to slider_items template variables
*
* @param $vars
* An array of variables to pass to the theme template.
*
*/
function zeropoint_preprocess_ddblock_cycle_block_content(&$vars) {
if ($vars['output_type'] == 'view_fields') {
$content = array();
// Add slider_items for the template
// If you use the devel module uncomment the following line to see the theme variables
// dsm($vars['settings']['view_name']);
// dsm($vars['content'][0]);
// If you don't use the devel module uncomment the following line to see the theme variables
// drupal_set_message('' . var_export($vars['settings']['view_name'], true) . '');
// drupal_set_message('' . var_export($vars['content'][0], true) . '');
if ($vars['settings']['view_name'] == 'news_items') {
if (!empty($vars['content'])) {
foreach ($vars['content'] as $key1 => $result) {
// add slide_image variable
if (isset($result->node_data_field_image_field_image_fid)) {
// get image id
$fid = $result->node_data_field_image_field_image_fid;
// get path to image
$filepath = db_result(db_query("SELECT filepath FROM {files} WHERE fid = %d", $fid));
// use imagecache (imagecache, preset_name, file_path, alt, title, array of attributes)
if (module_exists('imagecache') && is_array(imagecache_presets()) && $vars['imgcache_slide'] <> ''){
$slider_items[$key1]['slide_image'] =
theme('imagecache',
$vars['imgcache_slide'],
$filepath,
$result->node_title);
}
else {
$slider_items[$key1]['slide_image'] =
'node_title .
'"/>';
}
}
// add slide_text variable
if (isset($result->node_data_field_pager_item_text_field_slide_text_value)) {
$slider_items[$key1]['slide_text'] = $result->node_data_field_pager_item_text_field_slide_text_value;
}
// add slide_title variable
if (isset($result->node_title)) {
$slider_items[$key1]['slide_title'] = $result->node_title;
}
// add slide_read_more variable and slide_node variable
if (isset($result->nid)) {
$slider_items[$key1]['slide_read_more'] = l('Read more...', 'node/' . $result->nid);
$slider_items[$key1]['slide_node'] = 'node/' . $result->nid;
}
}
$vars['slider_items'] = $slider_items;
}
}
if ($vars['settings']['view_name'] == 'ddblock_embedded_video') {
// drupal_set_message('' . var_export($vars['settings']['view_name'], true) . '');
// drupal_set_message('' . var_export($vars['content'][0], true) . '');
if (!empty($vars['content'])) {
foreach ($vars['content'] as $key1 => $result) {
// add youtube video thumbnail
if (isset($result->node_data_field_custom_pager_text_field_embedded_video_url_data)) {
$data=unserialize($result->node_data_field_custom_pager_text_field_embedded_video_url_data);
// print '';
// print_r($data);
// print '';
if (isset($data['thumbnail']['url'])) {
$slider_items[$key1]['slide_image'] = 'node_data_field_custom_pager_text_field_custom_pager_text_value .
'"/>';
}
}
// add slide_text variable
if (isset($result->node_data_field_custom_pager_text_field_slider_text_value)) {
$slider_items[$key1]['slide_text'] = $result->node_data_field_custom_pager_text_field_slider_text_value;
}
// add slide_title variable
if (isset($result->node_title)) {
$slider_items[$key1]['slide_title'] = $result->node_title;
}
// add slide_read_more variable and slide_node variable
if (isset($result->nid)) {
$slider_items[$key1]['slide_read_more'] = l('Play now...', 'node/' . $result->nid);
$slider_items[$key1]['slide_node'] = 'node/' . $result->nid;
}
}
$vars['slider_items'] = $slider_items;
}
}
}
}
/**
* Override or insert variables into the ddblock_cycle_pager_content templates.
* Used to convert variables from view_fields to pager_items template variables
* Only used for custom pager items
*
* @param $vars
* An array of variables to pass to the theme template.
*
*/
function zeropoint_preprocess_ddblock_cycle_pager_content(&$vars) {
if (($vars['output_type'] == 'view_fields') && ($vars['pager_settings']['pager'] == 'custom-pager')){
$content = array();
// Add pager_items for the template
// If you use the devel module uncomment the following lines to see the theme variables
// dsm($vars['pager_settings']['view_name']);
// dsm($vars['content'][0]);
// If you don't use the devel module uncomment the following lines to see the theme variables
// drupal_set_message('' . var_export($vars['pager_settings'], true) . '');
// drupal_set_message('' . var_export($vars['content'][0], true) . '');
if ($vars['pager_settings']['view_name'] == 'news_items') {
if (!empty($vars['content'])) {
foreach ($vars['content'] as $key1 => $result) {
// add pager_item_image variable
if (isset($result->node_data_field_image_field_image_fid)) {
$fid = $result->node_data_field_image_field_image_fid;
$filepath = db_result(db_query("SELECT filepath FROM {files} WHERE fid = %d", $fid));
// use imagecache (imagecache, preset_name, file_path, alt, title, array of attributes)
if (module_exists('imagecache') &&
is_array(imagecache_presets()) &&
$vars['imgcache_pager_item'] <> ''){
$pager_items[$key1]['image'] =
theme('imagecache',
$vars['pager_settings']['imgcache_pager_item'],
$filepath,
$result->node_data_field_pager_item_text_field_pager_item_text_value);
}
else {
$pager_items[$key1]['image'] =
'node_data_field_pager_item_text_field_pager_item_text_value .
'"/>';
}
}
// add pager_item _text variable
if (isset($result->node_data_field_pager_item_text_field_pager_item_text_value)) {
$pager_items[$key1]['text'] = $result->node_data_field_pager_item_text_field_pager_item_text_value;
}
}
}
$vars['pager_items'] = $pager_items;
}
if ($vars['pager_settings']['view_name'] == 'ddblock_embedded_video') {
if (!empty($vars['content'])) {
foreach ($vars['content'] as $key1 => $result) {
// add pager_item_image variable
// add youtube video thumbnail
if (isset($result->node_data_field_custom_pager_text_field_embedded_video_url_data)) {
$data=unserialize($result->node_data_field_custom_pager_text_field_embedded_video_url_data);
if (isset($data['thumbnail']['url'])) {
$pager_items[$key1]['image'] = 'node_data_field_custom_pager_text_field_custom_pager_text_value .
'"/>';
}
}
// add pager_item _text variable
if (isset($result->node_data_field_custom_pager_text_field_custom_pager_text_value)) {
$pager_items[$key1]['text'] = $result->node_data_field_custom_pager_text_field_custom_pager_text_value;
}
}
}
$vars['pager_items'] = $pager_items;
}
}
}
Results:
Everything is working very well.
I love this module, much more than others that can be considered as its competition.
Thank you very much for your cooperation and facilitate our work.
Re: Preprocess function for the ddblock_embedded_video view
Thank you for posting this.
The preprocess functions of the advanced slideshow and adding the preprocess functions for the embedded video slideshow is indeed not correct. In the advanced sideshow preprocess function the:
$vars['slider_items'] = $slider_items;
and
$vars['pager_items'] = $pager_items;
should be outside the
if ($vars['settings']['view_name'] == 'news_items') {
}
statement
Will adjust the preprocess functions for the advanced ddblock slideshow later. Also have to make some other adjustments.