Changeset 15149 for extensions/typetags/typetags.php
- Timestamp:
- May 20, 2012, 12:38:07 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/typetags/typetags.php
r3609 r15149 1 1 <?php 2 2 3 global $page, $template; 3 /** 4 * triggered by 'render_tag_name' 5 */ 6 function typetags_render($tag) 7 { 8 global $pwg_loaded_plugins; 9 10 $query = ' 11 SELECT color 12 FROM '.typetags_TABLE.' AS tt 13 INNER JOIN '.TAGS_TABLE.' AS t 14 ON t.id_typetags = tt.id 15 WHERE t.name = "'.mysql_real_escape_string($tag).'" 16 ;';; 17 list($color) = pwg_db_fetch_row(pwg_query($query)); 18 19 if ($color === null) 20 { 21 return $tag; 22 } 23 elseif (isset($pwg_loaded_plugins['ExtendedDescription'])) 24 { 25 return "[lang=all]<span style='color:".$color.";'>[/lang]".$tag."[lang=all]</span>[/lang]"; 26 } 27 else 28 { 29 return "<span style='color:".$color.";'>".$tag."</span>"; 30 } 31 } 4 32 5 $query = ' 6 SELECT t.id , tt.color 7 FROM ' . typetags_TABLE . ' AS tt 8 INNER JOIN ' . TAGS_TABLE . ' AS t 9 ON t.id_typetags = tt.id 10 WHERE t.id_typetags IS NOT NULL ;'; 11 12 $result = pwg_query($query); 13 $tagsColor = array(); 14 while ($row = mysql_fetch_assoc($result)) 33 /** 34 * colors tags on picture page 35 */ 36 /*function typetags_picture() 15 37 { 16 $tagsColor[$row['id']] = $row['color']; 17 } 18 $display = $template->get_template_vars('display_mode'); 19 20 if ($display == 'letters') 21 { 22 $letters = $template->get_template_vars('letters'); 23 if (empty($letters)) return; 24 $template->clear_assign('letters'); 25 26 foreach ($letters as $k1 => $letter) 27 { 28 foreach ($letter['tags'] as $k2 => $tag) 29 { 30 if (isset($tagsColor[$tag['id']])) 31 { 32 $letters[$k1]['tags'][$k2]['URL'] .= '" style="color:' . $tagsColor[$tag['id']]; 33 } 34 } 35 } 36 $template->assign('letters', $letters); 37 } 38 elseif ($display == 'cloud') 39 { 40 $tags = $template->get_template_vars('tags'); 38 global $template; 39 40 $tags = $template->get_template_vars('related_tags'); 41 41 if (empty($tags)) return; 42 $template->clear_assign('tags'); 42 43 $query = ' 44 SELECT 45 t.id , 46 tt.color 47 FROM '.typetags_TABLE.' AS tt 48 INNER JOIN '.TAGS_TABLE.' AS t 49 ON t.id_typetags = tt.id 50 WHERE t.id_typetags IS NOT NULL 51 ;'; 52 $tagsColor = simple_hash_from_query($query, 'id', 'color'); 53 if (empty($tagsColor)) return; 43 54 44 55 foreach ($tags as $key => $tag) 45 56 { 46 if (isset($tagsColor[ $tag['id']]))57 if (isset($tagsColor[ $tag['id'] ])) 47 58 { 48 $tags[$key]['URL'] .= '" style="color:' . $tagsColor[$tag['id']];59 $tags[$key]['URL'].= '" style="color:'.$tagsColor[ $tag['id'] ].';'; 49 60 } 50 61 } 51 $template->assign('tags', $tags); 52 } 53 elseif ($display == 'cumulus') 62 63 $template->clear_assign('related_tags'); 64 $template->assign('related_tags', $tags); 65 }*/ 66 67 /** 68 * colors tags on tags page 69 */ 70 function typetags_tags() 54 71 { 55 $tags = $template->get_template_vars('tags'); 56 if (empty($tags)) return; 57 $template->clear_assign('tags'); 72 global $template; 58 73 59 foreach ($tags as $key => $tag) 74 $query = ' 75 SELECT 76 t.id , 77 tt.color 78 FROM '.typetags_TABLE.' AS tt 79 INNER JOIN '.TAGS_TABLE.' AS t 80 ON t.id_typetags = tt.id 81 WHERE t.id_typetags IS NOT NULL 82 ;'; 83 $tagsColor = simple_hash_from_query($query, 'id', 'color'); 84 if (empty($tagsColor)) return; 85 86 $display = $template->get_template_vars('display_mode'); 87 if ($display == 'letters') 60 88 { 61 if (isset($tagsColor[$tag['id']])) 89 $letters = $template->get_template_vars('letters'); 90 if (empty($letters)) return; 91 92 foreach ($letters as $k1 => $letter) 62 93 { 63 $tagsColor[$tag['id']] = str_replace('#', '0x', $tagsColor[$tag['id']]); 64 $tags[$key]['URL'] .= '\' color=\'' . $tagsColor[$tag['id']] . '\' hicolor=\'' . $tagsColor[$tag['id']]; 94 foreach ($letter['tags'] as $k2 => $tag) 95 { 96 if (isset($tagsColor[ $tag['id'] ])) 97 { 98 $letters[$k1]['tags'][$k2]['URL'].= '" style="color:'.$tagsColor[ $tag['id'] ].';'; 99 } 100 } 65 101 } 102 103 $template->clear_assign('letters'); 104 $template->assign('letters', $letters); 66 105 } 67 $template->assign('tags', $tags); 106 elseif ($display == 'cloud') 107 { 108 $tags = $template->get_template_vars('tags'); 109 if (empty($tags)) return; 110 111 foreach ($tags as $key => $tag) 112 { 113 if (isset($tagsColor[ $tag['id'] ])) 114 { 115 $tags[$key]['URL'].= '" style="color:'.$tagsColor[ $tag['id'] ].';'; 116 } 117 } 118 119 $template->clear_assign('tags'); 120 $template->assign('tags', $tags); 121 } 122 elseif ($display == 'cumulus') 123 { 124 $tags = $template->get_template_vars('tags'); 125 if (empty($tags)) return; 126 127 foreach ($tags as $key => $tag) 128 { 129 if (isset($tagsColor[ $tag['id'] ])) 130 { 131 $tagsColor[ $tag['id'] ] = str_replace('#', '0x', $tagsColor[ $tag['id'] ]); 132 $tags[$key]['URL'].= '\' color=\''.$tagsColor[ $tag['id'] ].'\' hicolor=\''.$tagsColor[ $tag['id'] ]; 133 } 134 } 135 136 $template->clear_assign('tags'); 137 $template->assign('tags', $tags); 138 } 68 139 } 69 140 70 // Suppression des liens soulignés71 $template->block_html_head('', '<style type="text/css">#fullTagCloud a, .tagLetter a { border: none; }</style>', $smarty, $repeat);72 73 141 ?>
Note: See TracChangeset
for help on using the changeset viewer.