This mod was originally posted by KW.
The text/code is from the Arabic topic, but couldn't find the files needed for this mod there.
Backup everything before editing any files.
Also remember to add the .js and .swf to your template directory from the attached zip file.
Open lang/[your_language_folder]/main.php
Find:
?>
Add Before:
//-----------------------------------------------------
//- Mod: Flash-Tag-Clouds by KW -------------------
//-----------------------------------------------------
$lang['flash_keyword_clouds'] = "Tag Cloud";
Open includes/page_header.php
Find:
"url_search" => $site_sess->url(ROOT_PATH."search.php"),
Add After:
//--- Start Mod: Flash-Tag-Clouds by KW ---------------
"flash_keyword_clouds" => get_flash_keyword_clouds(),
//--- End Mod: Flash-Tag-Clouds by KW -----------------
Open includes/functions.php
Find:
?>
Add Before:
/*---------------------- Start MOD Flash-Tag-Clouds by KW --------------------*/
function get_flash_keyword_clouds() {
global $site_db, $lang, $site_sess, $mode;
/*-----------------------------------------------------------------------------*/
/*--- Start Setting / Einstellungen -------------------------------------------*/
$flash_tag_clouds_width = "100%"; // Width from the Flash / Breite der Flashanzeige
$flash_tag_clouds_height = "100"; // height from the Flash / Höhe der Flashanzeige
$flash_tag_clouds_textcolor = "004C75"; // color from the flashtext / Farbe des Flashtextes (e.g. 000000 or ffffff ...)
$flash_tag_clouds_textspeed = "200"; // speed from the flying text / Geschwindigkeite de fliegenden Textes (e.g. 150 or 200 ...)
$flash_tag_clouds_textlimit = "20"; // Limit- How many searchwords / Limit- Wie viele Suchworte
$flash_tag_clouds_size_max = "60"; // Max. textsize / Max. Textgröße
$flash_tag_clouds_size_min = "20"; // Min. textsize / Min. Textgröße
$flash_tag_clouds_transparent = "true"; // Flash transparently: true or false / Flash transparent: true oder false
$flash_tag_clouds_flashcolor = "ffffff"; // => if false: Bgcolor / => falls false: Hintergrundfarbe (e.g. ffffff or 000000 ...)
/*--- End Setting / Einstellungen ---------------------------------------------*/
/*-----------------------------------------------------------------------------*/
$flash_tag_clouds_text = "var so = new SWFObject(\"".TEMPLATE_PATH."/flash_tag_clouds.swf\", \"tagcloud\", \"".$flash_tag_clouds_width."\", \"".$flash_tag_clouds_height."\", \"7\", \"#".$flash_tag_clouds_flashcolor."\"); \n";
if ($flash_tag_clouds_transparent == 'true') {
$flash_tag_clouds_text .= "so.addParam(\"wmode\", \"transparent\"); \n";
}
$flash_tag_clouds_text .= "so.addVariable(\"tcolor\", \"0x".$flash_tag_clouds_textcolor."\");\n";
$flash_tag_clouds_text .= "so.addVariable(\"mode\", \"tags\"); \n";
$flash_tag_clouds_text .= "so.addVariable(\"distr\", \"true\"); \n";
$flash_tag_clouds_text .= "so.addVariable(\"tspeed\", \"".$flash_tag_clouds_textspeed."\"); \n";
$flash_tag_clouds_text .= "so.addVariable(\"tagcloud\", \"<tags>";
$sql = "SELECT i.word_id, i.word_text, COUNT(c.word_id) AS quantity
FROM ".WORDLIST_TABLE." i
LEFT JOIN ".WORDMATCH_TABLE." c ON i.word_id = c.word_id
WHERE keys_match > 0
GROUP BY i.word_text
ORDER BY RAND()
LIMIT $flash_tag_clouds_textlimit";
$result = $site_db->query($sql);
while ($row = $site_db->fetch_array($result)) {
$tags[$row['word_text']] = $row['quantity'];
}
$max_qty = max(array_values($tags));
$min_qty = min(array_values($tags));
$spread = $max_qty - $min_qty;
if ($spread == 0) {
$spread = 1;
}
$step = ($flash_tag_clouds_size_max - $flash_tag_clouds_size_min) / ($spread);
foreach ($tags as $key => $value) {
$size = round($flash_tag_clouds_size_min + (($value - $min_qty) * $step));
// clean keys for flashtext:
$key2 = $key;
$key2 = str_replace('"',' ',$key2);
$key2 = str_replace('&',' ',$key2);
$key2 = str_replace('%',' ',$key2);
$key2 = str_replace('>',' ',$key2);
$key2 = str_replace('<',' ',$key2);
$key2 = str_replace('+',' ',$key2);
//
$flash_tag_clouds_text .= "<a href='".$site_sess->url(ROOT_PATH."search.php?search_keywords=".$key.((!empty($mode)) ? "&mode=".$mode : ""))."' style='".$size."'>".$key2." [".$value."]</a>";
}
return $flash_tag_clouds_text;
}
/*----------------------- End MOD Flash-Tag-Clouds by KW ---------------------*/
Open templates/[your_template_folder]/home.html
Add this where you want to show the Flash Tag Cloud:
<!-- Start Mod: Flash-Tag-Clouds by KW -->
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="head1">
<table width="100%" border="0" cellspacing="0" cellpadding="4">
<tr>
<td class="head2" valign="top">{lang_flash_keyword_clouds}</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="row1">
<script type="text/javascript" src="{template_url}/swfobject.js"></script>
<div id="flashcontent_menue" style="border: 0px solid #000000;">Install flash.</div>
<script type="text/javascript">
{flash_keyword_clouds}</tags>");
so.write("flashcontent_menue");
</script>
<br />
</td>
</tr>
</table>
<!-- End Mod: Flash-Tag-Clouds by KW -->
And for details.html, search.html, etc. :
<!-- Start Mod: Flash-Tag-Clouds by KW -->
<table width="100%" border="0" cellspacing="1" cellpadding="0" class="head1">
<tr>
<td class="head1">
<table width="100%" border="0" cellspacing="0" cellpadding="4">
<tr>
<td class="head1" valign="top">{lang_flash_keyword_clouds}</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="row1">
<script type="text/javascript" src="{template_url}/swfobject.js"></script>
<div id="flashcontent_page" style="border: 0px solid #000000;">Install flash.</div>
<script type="text/javascript">
{flash_keyword_clouds}</tags>");
so.write("flashcontent_page");
</script>
</td>
</tr>
</table>
<br />
<!-- End Mod: Flash-Tag-Clouds by KW -->