source: extensions/ThumbnailTooltip/include/class.inc.php @ 28210

Last change on this file since 28210 was 28210, checked in by sarybe, 10 years ago

[thumbnailTooltip] Update core files

File size: 4.9 KB
Line 
1<?php
2
3class Thumbnail_Tooltip_IMG {
4  var $plugin_name, $plugin_path, $plugin_url;
5  var $my_config;
6
7  function Thumbnail_Tooltip_IMG ($plugin_name, $plugin_path, $plugin_url) {
8    $this->plugin_name = $plugin_name;
9    $this->plugin_path = $plugin_path;
10    $this->plugin_url = $plugin_url;
11    $this->initialize_event_handler($plugin_name, $plugin_path, $plugin_url);
12  }
13
14  function initialize_event_handler() {
15    add_event_handler('loc_end_index_thumbnails', array($this, 'thumbnail_tooltip_affich'), 50, 2);
16    add_event_handler('loc_end_index_category_thumbnails', array($this, 'Author_Description_affich'), 50, 2);
17  }
18
19  function thumbnail_tooltip_affich($tpl_var) {
20    global $user;
21     
22        $query = 'SELECT param, value, comment FROM ' . CONFIG_TABLE . ' WHERE param="thumbnail_tooltip"';
23        $row = pwg_db_fetch_assoc( pwg_query($query) );
24 
25        $params = unserialize($row['value']);
26        $values = array(
27                  'DISPLAY_NAME'         => $params['display_name'],
28                  'value1'               => $params['value1'],
29                  'value2'               => $params['value2'],
30                  'value3'               => $params['value3'],
31                  'value4'               => $params['value4'],
32                  'value5'               => $params['value5'],
33                  'value6'               => $params['value6'],
34                  'separator'            => $params['separator']
35        );
36       
37        if ($params['display_name']==true) {
38      foreach($tpl_var as $cle=>$valeur) {
39        $query = "
40                  SELECT name AS value1, hit AS value2, hit AS value3, comment AS value4, author AS value5, CONCAT('".l10n('Author').' : '."', author,'') AS value6, rating_score AS value7
41                  FROM ".IMAGES_TABLE."
42                  WHERE id = ".(int)$tpl_var[$cle]['id']."
43                ;";
44            $row = pwg_db_fetch_assoc( pwg_query($query) );
45
46        $details = array();
47        $details_param = array();
48         
49        $details['tn_type1'] = $row['value1'];
50
51        if (!empty($row['value2'])) {
52                  $details['tn_type2'] = $row['value2'].' '.strtolower(l10n('Visits'));
53        }
54        if (!empty($row['value3'])) {
55                  $details['tn_type3'] = '('.$row['value3'].' '.strtolower(l10n('Visits')).')';
56            if (!empty($row['value7'])) { $type8 = ', '.strtolower(l10n('Rating score')).' '.$row['value7']; } else { $type8 = ''; }
57                  $details['tn_type8'] = '('.$row['value3'].' '.strtolower(l10n('Visits')).$type8.')';
58        }
59        if (!empty($row['value4'])) {
60                  $details['tn_type4'] = $row['value4'];
61        }
62        if (!empty($row['value5'])) {
63                  $details['tn_type5'] = $row['value5'];
64        }
65        if (!empty($row['value6'])) {
66                  $details['tn_type6'] = $row['value6'];
67        }
68        if (!empty($row['value7'])) {
69                  $details['tn_type7'] = strtolower(l10n('Rating score')).' '.$row['value7'];
70        }
71                 
72        if ((!empty($details[$values['value1']])) && ($details[$values['value1']]!='none')) { $details_param[] = $details[$values['value1']]; }
73        if ((!empty($details[$values['value2']])) && ($details[$values['value2']]!='none')) { $details_param[] = $details[$values['value2']]; }
74        if ((!empty($details[$values['value3']])) && ($details[$values['value3']]!='none')) { $details_param[] = $details[$values['value3']]; }
75        if ((!empty($details[$values['value4']])) && ($details[$values['value4']]!='none')) { $details_param[] = $details[$values['value4']]; }
76        if ((!empty($details[$values['value5']])) && ($details[$values['value5']]!='none')) { $details_param[] = $details[$values['value5']]; }
77        if ((!empty($details[$values['value6']])) && ($details[$values['value6']]!='none')) { $details_param[] = $details[$values['value6']]; }
78         
79        if ($params['separator']=='1') { $title = implode(' - ', $details_param); } else { $title = implode(' ', $details_param); }
80         
81        $tpl_var[$cle]['TN_TITLE'] = $title;
82      }
83    }
84    return $tpl_var;
85  }
86 
87 
88  function Author_Description_affich($tpl_var) {
89    global $user, $lang;
90
91        $query = 'SELECT param, value, comment FROM ' . CONFIG_TABLE . ' WHERE param="thumbnail_tooltip";';
92        $row = pwg_db_fetch_assoc( pwg_query($query) );
93 
94    $params = unserialize($row['value']);
95        $values = array('DISPLAY_AUTHOR_CAT' => $params['display_author_cat']);
96       
97        if ($params['display_author_cat']==true) {
98      foreach($tpl_var as $cle=>$valeur) {
99        $query = "SELECT author FROM ".IMAGE_CATEGORY_TABLE." INNER JOIN ".IMAGES_TABLE." ON image_id = id WHERE category_id = ".(int)$tpl_var[$cle]['id']." LIMIT 1";
100            $result = pwg_query($query);
101            $row = pwg_db_fetch_assoc($result);
102
103            if (!empty($row['author'])) {
104              if (preg_match('#(,|\/)#i', $row['author'])) { $auteur = str_replace(array('(',')'), '', ucfirst(sprintf($lang['author(s) : %s'],$row['author']))); } else { $auteur = $lang['Author'].' : '.$row['author']; }
105              if (!empty($tpl_var[$cle]['DESCRIPTION'])) { $tpl_var[$cle]['DESCRIPTION'] = $tpl_var[$cle]['DESCRIPTION'].'<br/>'.$auteur; } else { $tpl_var[$cle]['DESCRIPTION'] = $auteur; }
106            }
107      }
108    }
109    return $tpl_var;
110  }
111}
112?>
Note: See TracBrowser for help on using the repository browser.