aboutsummaryrefslogtreecommitdiff
path: root/jquery_gallery_view.module
blob: fe3b815c832fa8743f15e56100e1f6a89f55c1f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php
// $Id$

/**
 * @file
 * jQuery GalleryView module.
 */

/**
 * Implementation of hook_menu().
 */
function jquery_gallery_view_menu() {
  $items['admin/settings/jquery_gallery_view'] = array(
    'title'            => t('jQuery Gallery View'),
    'description'      => t('Configure settings for jQuery Gallery View.'),
    'page callback'    => 'jquery_gallery_view',
    'access arguments' => array('administer content'),
    'type'             => MENU_NORMAL_ITEM,
    'file'             => 'jquery_gallery_view.admin.inc',    
  );

  return $items;
}

/**
 * Get the first filefield from a content type.
 *
 * @param $fields
 *   Content type fields.
 *
 * @return
 *   Field name.
 */
function jquery_gallery_view_field($fields) {
  foreach ($fields as $field) {
    if ($field['type'] == 'filefield') {
      return $field['field_name'];
    }
  }  
}

/**
 * Setup photos for a view.
 *
 * @param $view
 *   View data.                
 */
function jquery_gallery_view_setup_photos($view, $field) {
  // Setup files folder
  $files = variable_get('file_directory_path', conf_path() .'/files');

  foreach ($view->result as $result) {
    $fid = $result->{'node_data_field_'. $field .'_fid'};
    if ($fid != NULL) {
      $file     = field_file_load($fid);        
      $data     = unserialize($result->{'node_data_field_'. $field .'_data'});
      $photos[] = array(
        'filename' => $file['filename'],
        'title'    => $data['title'],   
      );
    }
  }

  // Add needed javascript
  drupal_add_js(array('jqueryGalleryView' => array('photos' => $photos)), 'setting');
  drupal_add_js(drupal_get_path('module', 'jquery_gallery_view') .'/js/jquery-galleryview/jquery.galleryview-2.1.1-pack.js');
  drupal_add_js(drupal_get_path('module', 'jquery_gallery_view') .'/js/jquery-galleryview/jquery.timers-1.2.js');
}