Project

General

Profile

Download (17.9 KB) Statistics
| Branch: | Tag: | Revision:
1 806baeb2 Andreas Kohlbecker
<?php
2
// $Id$
3
4
/**
5 78805714 f.revilla
 * Copyright (C) 2007 EDIT
6
 * European Distributed Institute of Taxonomy
7
 * http://www.e-taxonomy.eu
8
 *
9
 * The contents of this file are subject to the Mozilla Public License Version 1.1
10
 * See http://www.mozilla.org/MPL/MPL-1.1.html for the full license terms.
11
 */
12 806baeb2 Andreas Kohlbecker
13
function theme_cdm_search_results($pager, $path, $parameters){
14
15
16 b9438135 Andreas Kohlbecker
  $showThumbnails = $_SESSION['pageoptions']['searchtaxa']['showThumbnails'];
17
  if( !is_numeric($showThumbnails)){
18
    $showThumbnails = 1;
19
  }
20
  $setSessionUri = url('cdm_api/setvalue/session', "var=[pageoption][searchtaxa][showThumbnails]&val=");
21
  drupal_add_js('$(document).ready(function() {
22 d74aa4df Andreas Kohlbecker
23 806baeb2 Andreas Kohlbecker
        // init
24
        if('.$showThumbnails.' == 1){
25
              $(\'.media_gallery\').show(20);
26
        } else {
27
          $(\'.media_gallery\').hide(20);
28
        }
29
        // add change hander
30
        $(\'#showThumbnails\').change(
31
          function(event){
32
            var state = 0;
33
            if($(this).is(\':checked\')){
34
              $(\'.media_gallery\').show(20);
35
              state = 1;
36
            } else {
37
              $(\'.media_gallery\').hide(20);
38
            }
39
            // store state in session variable
40
            var uri = \''.$setSessionUri.'\' + state;
41
            jQuery.get(uri);
42
          });
43
        });', "inline");
44
45 b9438135 Andreas Kohlbecker
  drupal_set_title(t('Search results'));
46 806baeb2 Andreas Kohlbecker
47 b9438135 Andreas Kohlbecker
  $out = ''; //l('Advanced Search', '/cdm_dataportal/search');
48 806baeb2 Andreas Kohlbecker
49 b9438135 Andreas Kohlbecker
  $out = '<div class="page_options"><form name="pageoptions"><input id="showThumbnails" type="checkbox" name="showThumbnails" '.($showThumbnails == 1? 'checked="checked"': '').'> '.t('Show Thumbnails').'</form></div>';
50
  if(count($pager->records) > 0){
51
      $out .= '<div id="search_results">';
52
    $out .= theme('cdm_list_of_taxa', $pager->records);
53
    $out .= '</div>';
54
    $out .= theme('cdm_pager', $pager, $path, $parameters);
55
  } else {
56
    $out = '<h4 class="error">Sorry, no matching entries found.</h4>';
57
  }
58
  return $out;
59 806baeb2 Andreas Kohlbecker
}
60
61
62
/**
63
 * renders misapplied names and invalid designations.
64
 * Both relation types are currently treated the same!
65
 *
66
 * @param unknown_type $taxonRelationships
67
 * @return unknown
68
 */
69 b9438135 Andreas Kohlbecker
function theme_cdm_taxonRelationships($taxonRelationships, $focusedTaxon){
70
71
  if(!$taxonRelationships){
72
    return;
73
  }
74
75
  RenderHints::pushToRenderStack('taxonRelationships');
76
  $footnoteListKey = 'taxonRelationships';
77
  RenderHints::setFootnoteListKey($footnoteListKey);
78
79
  $misapplied = array();
80
  $joinedAuthorTeams = array();
81
82
  $taxon_relationship_types = variable_get(CDM_TAXON_RELATIONSHIP_TYPES, unserialize(CDM_TAXON_RELATIONSHIP_TYPES_DEFAULT));
83
84
  // aggregate misapplied names having the same fullname:
85
  foreach($taxonRelationships as $taxonRelation){
86
87
      if( in_array($taxonRelation->type->uuid, $taxon_relationship_types)) {
88
89
        if( $taxonRelation->type->uuid == UUID_MISAPPLIED_NAME_FOR || $taxonRelation->type->uuid == UUID_INVALID_DESIGNATION_FOR ){
90
91
          $name = $taxonRelation->fromTaxon->name->titleCache;
92
93 5606901a Andreas Kohlbecker
          $authorteam = cdm_ws_get(CDM_WS_REFERENCE_AUTHORTEAM, $taxonRelation->fromTaxon->sec->uuid);
94
          $authorteam = $authorteam->titleCache;
95 b9438135 Andreas Kohlbecker
96
          if(!isset($misapplied[$name])){
97
            $misapplied[$name]['out'] =
98
              '<span class="misapplied">'
99
              .cdm_related_taxon($taxonRelation->fromTaxon, UUID_MISAPPLIED_NAME_FOR).
100
              '</span>';
101
          }
102
103
          // collect all authors for this fullname
104
          if(isset($authorteam)){
105
            $misapplied[$name]['authorteam'][$authorteam] = '';
106
            $joinedAuthorTeams[$authorteam] = 'sensu '.theme('cdm_reference', $taxonRelation->fromTaxon->sec);
107
          }
108
109 5606901a Andreas Kohlbecker
        } else {
110
          // all relationsship types but misapplied_name_for invalid_designation_for
111
           $taxonRelationshipsLines[] = cdm_taxonRelationship($taxonRelation, true, _is_invers_taxonRelationship($taxonRelation, $focusedTaxon), true);
112
        }
113
     }
114 b9438135 Andreas Kohlbecker
  }
115
116
  // sort the joinedAuthorTeams and create footnotes and footnotekeys
117
  ksort($joinedAuthorTeams);
118
  foreach($joinedAuthorTeams as $authorteam=>$sensuCitation){
119
    $footnoteKey = FootnoteManager::addNewFootnote($footnoteListKey, $sensuCitation);
120
    $joinedAuthorTeams[$authorteam] = '<span class="sensu">sensu '.$authorteam. theme('cdm_footnote_key', $footnoteKey).'</span>';
121
  }
122
123
  // generate output
124
  if(is_array($misapplied) && count($misapplied) >0 ){
125
      $out .= '<ul class="misapplied">';
126
      foreach($misapplied as $misapplied_name){
127
128
        $out .= '<li class="synonym">'.$misapplied_name['out'] . " ";
129
        if(isset($misapplied_name['authorteam'])){
130
          // fill authors with the renderedFootnoteKey and sorting 'em
131
          foreach($misapplied_name['authorteam'] as $authorteam=>&$renderedFootnoteKey) {
132
            $renderedFootnoteKey = $joinedAuthorTeams[$authorteam];
133
          }
134
            ksort($misapplied_name['authorteam']);
135
            $out .= join('; ', $misapplied_name['authorteam']);
136
        }
137
        $out .= '</li>';
138
139
      }
140
      $out .= '</ul>';
141
  }
142
143
  if(is_array($taxonRelationshipsLines) && count($taxonRelationshipsLines) >0 ){
144
      $out .= '<ul class="taxonRelationships">';
145
      foreach($taxonRelationshipsLines as $taxonRelationshipLine){
146
        $out .= '<li class="synonym">'. $taxonRelationshipLine . '</li>';
147
      }
148
      $out .= '</ul>';
149
  }
150
151
152
  $tr_footnotes = theme('cdm_footnotes', $footnoteListKey, 'li');
153
  $tr_footnotes_exploded = explode('sensu', $tr_footnotes);
154
  $tr_footnotes_aux = '';
155
  foreach ($tr_footnotes_exploded as $element){
156
    $tr_footnotes_aux .= $element;
157
  }
158
  $out .= '<ul>' . $tr_footnotes_aux . '</ul>';
159 5606901a Andreas Kohlbecker
160 b9438135 Andreas Kohlbecker
  RenderHints::popFromRenderStack();
161
  return $out;
162 806baeb2 Andreas Kohlbecker
}
163
164 8983be45 Andreas Kohlbecker
165
166 80e0aa8e Andreas Kohlbecker
function theme_cdm_acceptedFor(){
167 b9438135 Andreas Kohlbecker
  RenderHints::pushToRenderStack('acceptedFor');
168
169
  $out = '';
170
  if(isset($_REQUEST['acceptedFor'])){
171
172
    $synonym = cdm_ws_get(CDM_WS_PORTAL_TAXON, $_REQUEST['acceptedFor']);
173
174
    if($synonym){
175
      $out .= '<span class="acceptedFor">';
176
      $out .= t('is accepted for ');
177
      if(isset($synonym->name->nomenclaturalReference)){
178
        $referenceUri = url(path_to_reference($synonym->name->nomenclaturalReference->uuid));
179
      }
180
      $out .= theme('cdm_taxonName', $synonym->name, null, $referenceUri);
181
      $out .= theme('cdm_annotations_as_footnotekeys', $synonym);
182
      $out .= '</span>';
183
    }
184
  }
185
  RenderHints::popFromRenderStack();
186
  return $out;
187 806baeb2 Andreas Kohlbecker
}
188
189 8983be45 Andreas Kohlbecker
190
191 806baeb2 Andreas Kohlbecker
function theme_cdm_list_of_taxa($records, $showMedia = false){
192
193 b9438135 Andreas Kohlbecker
  RenderHints::pushToRenderStack('list_of_taxa');
194 a40ad0d2 Andreas Kohlbecker
195 b9438135 Andreas Kohlbecker
  $form_name = 'search_gallery';
196
  //$default_values = unserialize(CDM_DATAPORTAL_GALLERY_SETTINGS);
197 43a9b844 f.revilla
    //$gallery_settings = variable_get($form_name, $default_values);
198 a40ad0d2 Andreas Kohlbecker
199 43a9b844 f.revilla
    $gallery_settings = getGallerySettings(CDM_DATAPORTAL_SEARCH_GALLERY_NAME);
200 a40ad0d2 Andreas Kohlbecker
201 b9438135 Andreas Kohlbecker
  $showMedia_taxa = $gallery_settings['cdm_dataportal_show_taxon_thumbnails'];
202
  $showMedia_synonyms = $gallery_settings['cdm_dataportal_show_synonym_thumbnails'];
203
  //$showMedia_taxa = variable_get('cdm_dataportal_findtaxa_show_taxon_thumbnails', 1);
204
  //$showMedia_synonyms = variable_get('cdm_dataportal_findtaxa_show_synonym_thumbnails', 0);
205
206
  $classification_uuid = get_taxonomictree_uuid_selected();
207
208
  // .. well, for sure not as performant as before, but better than nothing.
209
  $synonym_uuids = array();
210
  foreach($records as $taxon){
211
    if($taxon->class != "Taxon"){
212
      if(!array_key_exists($taxon->uuid, $synonym_uuids)){
213
        $synonym_uuids[$taxon->uuid] = $taxon->uuid;
214
      }
215
    }
216
  }
217
  // batch service not jet implemented:
218
  // $table_of_accepted = cdm_ws_property(CDM_WS_PORTAL_TAXON_ACCEPTED, join(',', $synonym_uuids));
219
  // thus ...
220
  $table_of_accepted = array();
221
222
  foreach($synonym_uuids as $synUuid){
223
    $table_of_accepted[$synUuid] = cdm_ws_get(CDM_WS_PORTAL_TAXON_ACCEPTED, array($synUuid, $classification_uuid));
224
  }
225
226
  $out = '<ul class="cdm_names" style="background-image: none;">';
227
228
  foreach($records as $taxon){
229
    // its a Taxon
230
    if($taxon->class == "Taxon"){
231
      $taxonUri = url(path_to_taxon($taxon->uuid));
232
      if(isset($taxon->name->nomenclaturalReference)){
233
        $referenceUri = url(path_to_reference($taxon->name->nomenclaturalReference->uuid));
234
      }
235
      $out .= '<li class="Taxon">'.theme('cdm_taxonName', $taxon->name, $taxonUri, $referenceUri);
236
      $out .= theme('cdm_annotations_as_footnotekeys', $taxon);
237
238
      if($showMedia_taxa){
239
        $out .= theme('cdm_taxon_list_thumbnails', $taxon);
240
      }
241
      $out .= '</li>';
242
    } else {
243
      // its a synonym
244
      $uuid = $taxon->uuid;
245
      $acceptedTaxa = $table_of_accepted[$uuid];
246
      if(count($acceptedTaxa) == 1){
247
        $acceptedTaxon = $acceptedTaxa[0];
248 3d526ffb Andreas Kohlbecker
        $taxonUri = uri_to_synonym($taxon->uuid, $acceptedTaxon->uuid, 'synonymy');
249 b9438135 Andreas Kohlbecker
        if(isset($acceptedTaxon->name->nomenclaturalReference)){
250
          $referenceUri = url(path_to_reference($acceptedTaxon->name->nomenclaturalReference->uuid));
251
        }
252
        $out .= '<li class="Synonym">'.theme('cdm_taxonName', $taxon->name, $taxonUri, $referenceUri);
253
        $out .= theme('cdm_annotations_as_footnotekeys', $taxon);
254
        if($showMedia_synonyms){
255
          $out .= theme('cdm_taxon_list_thumbnails', $acceptedTaxon);
256
        }
257
        $out .= '</li>';
258
      } else {
259
        //TODO avoid using Ajax in the cdm_dynabox .... why?
260
        //TODO add media
261
        $out .= cdm_dynabox(
262
          theme('cdm_taxonName', $taxon->name, null, null, false),
263
          cdm_compose_url(CDM_WS_PORTAL_TAXON_ACCEPTED, array($taxon->uuid, $classification_uuid)),
264
          'cdm_list_of_taxa',
265
          'Click for accepted taxon');
266
      }
267
    }
268
  }
269
270
  $out .= '</ul>';
271
  RenderHints::popFromRenderStack();
272
  return $out;
273 806baeb2 Andreas Kohlbecker
}
274
275 b9438135 Andreas Kohlbecker
/**
276
 * renders a representation of the given taxon relationship.
277
 * According name relatinships are also being rendered.
278
 *
279
 *
280
 * @param unknown_type $taxon
281
 * @param unknown_type $reltype_uuid
282
 * @param unknown_type $taxonRelationType
283
 * @param unknown_type $doLinkTaxon
284
 */
285 5606901a Andreas Kohlbecker
function cdm_taxonRelationship($taxonRelationship, $doLinkTaxon = false, $inverse = false, $showSecReference = false){
286 b9438135 Andreas Kohlbecker
287
  // validate object
288
  if( ! (isset($taxonRelationship->toTaxon) && isset($taxonRelationship->fromTaxon) && isset($taxonRelationship->type)) ) {
289
    return;
290
  }
291
292
  $reltype_uuid = $taxonRelationship->type->uuid;
293
  $taxonRelationType = $taxonRelationship->type;
294 806baeb2 Andreas Kohlbecker
295 b9438135 Andreas Kohlbecker
296
  $reltype_representation = '';
297
298
  if($inverse) {
299 3d526ffb Andreas Kohlbecker
    $toTaxon = $taxonRelationship->fromTaxon;
300
    $fromTaxon = $taxonRelationship->toTaxon;
301 b9438135 Andreas Kohlbecker
    $relsign = $taxonRelationType->inverseRepresentation_L10n_abbreviatedLabel;
302
    $reltype_representation = $taxonRelationType->inverseRepresentation_L10n;
303
  } else {
304 3d526ffb Andreas Kohlbecker
    $toTaxon = $taxonRelationship->toTaxon;
305
    $fromTaxon = $taxonRelationship->fromTaxon;
306 b9438135 Andreas Kohlbecker
    $relsign = $taxonRelationType->representation_L10n_abbreviatedLabel;
307
    $reltype_representation = $taxonRelationType->representation_L10n;
308
  }
309
310 5606901a Andreas Kohlbecker
  return cdm_related_taxon($toTaxon, null, $relsign, $reltype_representation, $doLinkTaxon, $showSecReference);
311 b9438135 Andreas Kohlbecker
}
312
313
/**
314
* renders a representation of the given taxon relationship.
315
* According name relatinships are also being rendered.
316
*
317
*
318
* @param unknown_type $taxon
319
* @param unknown_type $reltype_uuid
320
* @param unknown_type $taxonRelationType
321
* @param unknown_type $doLinkTaxon
322
*/
323 5606901a Andreas Kohlbecker
function cdm_related_taxon($taxon, $reltype_uuid = null, $relsign = null, $reltype_representation = null, $doLinkTaxon = false, $showSecReference = false){
324 b9438135 Andreas Kohlbecker
325
  static $relsign_homo = '≡';
326
  static $relsign_hetero = '=';
327
  static $relsign_invalid = '&ndash;';
328
329 5606901a Andreas Kohlbecker
  $footnoteListKey = 'taxonRelationships';
330
331 b9438135 Andreas Kohlbecker
  $name_prefix = '';
332
  $name_postfix = '';
333
334
  $skiptags = array();
335
336
  if(!$relsign) {
337
338
    $relsign = '';
339
    switch ($reltype_uuid){
340
      case UUID_HETEROTYPIC_SYNONYM_OF:
341
      case UUID_SYNONYM_OF:
342
        $relsign = $relsign_hetero;
343
        break;
344
      case UUID_HOMOTYPIC_SYNONYM_OF:
345
        $relsign = $relsign_homo;
346
        break;
347
      case UUID_MISAPPLIED_NAME_FOR:
348
      case UUID_INVALID_DESIGNATION_FOR:
349
        $skiptags[] = 'authors';
350
        $relsign = $relsign_invalid;
351
        $name_prefix = '"';
352
        $name_postfix = '"';
353
        break;
354
      default :
355
        $relsign = $relsign_invalid;
356
    }
357
  }
358
  /*
359
   * names with status invalid or nudum are to be displayed with the $relsign_invalid,
360
  * these names appear at the end of all names in their homotypic group
361
  * (ordered correctly by the java cdm_lib)
362
  */
363
  if ( is_array($taxon->name->status)) {
364
    foreach($taxon->name->status as $status){
365
      if ($status->type->uuid == UUID_NOMENCLATURALSTATUS_TYPE_INVALID || $status->type->uuid == UUID_NOMENCLATURALSTATUS_TYPE_NUDUM){
366
        $relsign = $relsign_invalid;
367
      }
368
    }
369
  }
370
371
  // now rendering starts ..
372
373
  RenderHints::pushToRenderStack('related_taxon');
374
375
  if($taxon->name->nomenclaturalReference){
376
    $referenceUri = url(path_to_reference($taxon->name->nomenclaturalReference->uuid));
377
  }
378
  if($doLinkTaxon){
379 3d526ffb Andreas Kohlbecker
    $taxonUri = url(path_to_taxon($taxon->uuid, "synonymy"));
380 b9438135 Andreas Kohlbecker
  }
381
  //printing the taxonName and the handling the special case of annotations
382 3d526ffb Andreas Kohlbecker
  $out_taxon_part = theme('cdm_taxonName', $taxon->name, $taxonUri, $referenceUri, true, false, $skiptags);
383 5606901a Andreas Kohlbecker
  $out_taxon_part .= theme('cdm_annotations_as_footnotekeys', array($taxon->name, $taxon), $footnoteListKey);
384
385
  if($showSecReference) {
386 38e46518 Andreas Kohlbecker
    $out_taxon_part .= ' sec. ' . theme('cdm_reference',  $taxon->sec);
387 5606901a Andreas Kohlbecker
  }
388 3d526ffb Andreas Kohlbecker
389 b9438135 Andreas Kohlbecker
390
  //later homonym or trated as later homonym AND bloking names
391
  $from_name_relations = cdm_ws_get(CDM_WS_PORTAL_TAXON_FROM_NAMERELATIONS, $taxon->uuid);
392
  $to_name_relations = cdm_ws_get(CDM_WS_PORTAL_TAXON_TO_NAMERELATIONS, $taxon->uuid);
393 3d526ffb Andreas Kohlbecker
394 b9438135 Andreas Kohlbecker
  //first the FROM RELS
395 3d526ffb Andreas Kohlbecker
  //FIXME use UUID below instad of representation_L10n
396 b9438135 Andreas Kohlbecker
  if ($from_name_relations){
397
    foreach($from_name_relations as $element){
398
      switch ($element->type->representation_L10n){
399
        case 'later homonym for':
400
          if(isset($name_relations_html)){
401 57cfb47e Andreas Kohlbecker
            $name_relations_html .= 'nec ' . l($element->toName->titleCache . ' ' .  substr($element->toName->nomenclaturalReference->datePublished->start, 0, 4),
402 b9438135 Andreas Kohlbecker
                'cdm_dataportal/name/' . $element->toName->uuid . '/' . $taxon->uuid . '/' . $element->toName->taxonBases[0]->uuid);
403
          }else{
404 57cfb47e Andreas Kohlbecker
            $name_relations_html = 'non ' . l($element->toName->titleCache . ' ' .  substr($element->toName->nomenclaturalReference->datePublished->start, 0, 4),
405 e5d101f3 f.revilla
                        'cdm_dataportal/name/' . $element->toName->uuid . '/' . $taxon->uuid . '/' . $element->toName->taxonBases[0]->uuid)
406 b9438135 Andreas Kohlbecker
            . ' ' . $element->toName->datePublished->start;
407
          }
408
          break;
409
        case 'treated as later homonym for':
410
          if(isset($name_relations_html)){
411 57cfb47e Andreas Kohlbecker
            $name_relations_html = 'nec ' . l($element->toName->titleCache . ' ' .  substr($element->toName->nomenclaturalReference->datePublished->start, 0, 4),
412 d74aa4df Andreas Kohlbecker
                              'cdm_dataportal/name/' . $element->toName->uuid);
413 b9438135 Andreas Kohlbecker
          }else{
414 57cfb47e Andreas Kohlbecker
            $name_relations_html = 'non ' . l($element->toName->titleCache . ' ' .  substr($element->toName->nomenclaturalReference->datePublished->start, 0, 4),
415 b9438135 Andreas Kohlbecker
                             'cdm_dataportal/name/' . $element->toName->uuid);
416
          }
417
          break;
418
      }
419
    }
420
    //second the TO RELS
421
    if ($to_name_relations){
422
      foreach($to_name_relations as $element){
423
        switch ($element->type->representation_L10n){
424
          case 'blocking name for':
425
            if(isset($name_relations_html) ){
426 57cfb47e Andreas Kohlbecker
              $name_relations_html .= 'nec ' . l($element->fromName->titleCache . ' ' .  substr($element->fromName->nomenclaturalReference->datePublished->start, 0, 4),
427 c20bf2ec f.revilla
                'cdm_dataportal/name/' . $element->fromName->uuid . '/' . $taxon->uuid . '/' . $element->fromName->taxonBases[0]->uuid);
428 b9438135 Andreas Kohlbecker
            }else{
429 57cfb47e Andreas Kohlbecker
              $name_relations_html = 'non ' . l($element->fromName->titleCache . ' ' .  substr($element->fromName->nomenclaturalReference->datePublished->start, 0, 4),
430 c20bf2ec f.revilla
                        'cdm_dataportal/name/' . $element->fromName->uuid . '/' . $taxon->uuid . '/' . $element->fromName->taxonBases[0]->uuid)
431 b9438135 Andreas Kohlbecker
              . ' ' . $element->fromName->datePublished->start;
432
            }
433
            break;
434
        }
435
      }
436
    }
437 c20bf2ec f.revilla
    //rels output
438 b9438135 Andreas Kohlbecker
    if(isset($name_relations_html)){
439 57cfb47e Andreas Kohlbecker
      $name_relations_html = '['. trim($name_relations_html) .']';
440 b9438135 Andreas Kohlbecker
    }
441
  }
442 c20bf2ec f.revilla
  //geneal output
443 57cfb47e Andreas Kohlbecker
  $out = '<span class="relation_sign" title="' . $reltype_representation . '">'.$relsign.'</span>'.$name_prefix . $out_taxon_part . $name_postfix . ' ' . $name_relations_html;
444 b9438135 Andreas Kohlbecker
  $out = uuid_anchor($taxon->uuid, $out);
445 78805714 f.revilla
446 b9438135 Andreas Kohlbecker
  RenderHints::popFromRenderStack();
447 78805714 f.revilla
448 b9438135 Andreas Kohlbecker
  return $out;
449 806baeb2 Andreas Kohlbecker
}
450
451
/**
452
 */
453
function theme_cdm_taxon_list_thumbnails($taxon){
454
455
456 b9438135 Andreas Kohlbecker
  $gallery_settings = getGallerySettings(CDM_DATAPORTAL_SEARCH_GALLERY_NAME);
457
  $showCaption = $gallery_settings['cdm_dataportal_show_thumbnail_captions'];
458 71667d19 Andreas Kohlbecker
459 b9438135 Andreas Kohlbecker
  if($showCaption){
460
    $captionElements = array('title', 'rights');
461
  }
462 71667d19 Andreas Kohlbecker
463 b9438135 Andreas Kohlbecker
  $gallery_name = $taxon->uuid;
464 71667d19 Andreas Kohlbecker
465 b9438135 Andreas Kohlbecker
   $mediaQueryParameters = array("type"=>"ImageFile");
466 3d526ffb Andreas Kohlbecker
  $galleryLinkUri = path_to_taxon($taxon->uuid, 'images');
467 5ca00433 Andreas Kohlbecker
468 b9438135 Andreas Kohlbecker
  // cdm_dataportal_show_media = ???? TODO
469
  $selectShowMedia = variable_get('cdm_dataportal_show_media', 0);
470
  if ($selectShowMedia == 0){
471
    $mediaList = cdm_ws_get(CDM_WS_PORTAL_TAXON_MEDIA, array($taxon->uuid), queryString( $mediaQueryParameters ));
472
  }else{
473
    $mediaList = cdm_ws_get(CDM_WS_PORTAL_TAXON_SUBTREE_MEDIA, array($taxon->uuid), queryString( $mediaQueryParameters ));
474
  }
475 71667d19 Andreas Kohlbecker
476 b9438135 Andreas Kohlbecker
  $out .= theme('cdm_media_gallerie', $mediaList, $gallery_name ,
477
      $gallery_settings['cdm_dataportal_media_maxextend'],
478
      $gallery_settings['cdm_dataportal_media_cols'],
479
      $gallery_settings['cdm_dataportal_media_maxRows'],
480
      $captionElements, 'LIGHTBOX', null, $galleryLinkUri);
481 806baeb2 Andreas Kohlbecker
482 b9438135 Andreas Kohlbecker
  return $out;
483 806baeb2 Andreas Kohlbecker
}
484
485