Interspire Product Knowledge Base

Would you like to...

Print this page Print this page

Email this page Email this page

Post a comment Post a comment

Subscribe me

Add to favorites Add to favorites

Remove Highlighting Remove Highlighting

Edit this Article

Export to PDF

User Opinions (0 votes)

No users have voted.

How would you rate this answer?



Thank you for rating this answer.

Adding glossary to pages and article summaries

This guide is meant for ArticleLive version 2.0.4. It may or may not work with later or earlier versions.

This guide will add the glossary feature into the content of pages and article summaries.

Open /includes/classes/class.page.php and find:

$GLOBALS["Content"] = $GLOBALS["AL_CLASS_PAGE"]->GetContent();

and change it to:

$output = $GLOBALS["AL_CLASS_PAGE"]->GetContent();

// Get all glossary words
$arrWords = AL_HELPER::GetGlossaryTerms();

if (sizeof($arrWords) > 0) {
// Make the replacements
for ($i = 0; $i < sizeof($arrWords); $i++) {
$regex = "#(?![^<]*?>)(?!<a[^>]*>)\b" . preg_quote($arrWords[$i]["word"], '#') . "\b(?![^<]*</a>)#si";
$output = preg_replace($regex, $arrWords[$i]["token"], $output, 1);
}
}

if (sizeof($arrWords) > 0) {
// Make the replacements
for ($i = 0; $i < sizeof($arrWords); $i++) {
// Just replace the first instanse of the token
$title = str_replace("\r\n", "<br>", str_replace(''', '\\'', str_replace('"', '', $arrWords[$i]["desc"])));
$title = str_replace(''', '\\'', $title);
$popup = "<a class=\"HelpLink\" href=\"javascript:void(0)\" onclick=\"showHelpTip(event, '<b>" . $arrWords[$i]["word"] . "</b><br><br>" . $title . "'); return false\">" . $arrWords[$i]["word"] . "</a>";

// Replace the rest of the tokens back with the word
$output = str_replace($arrWords[$i]["token"], $popup, $output);
}
}

$GLOBALS["Content"] = $output;

Then add these lines into /templates/{your-template}/Panels/Pages.html before the </head> tag:

<link href="%%Config.CurrentTemplatePath%%/Styles/HelpTip.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="%%GLOBAL_siteURL%%/javascript/helpTip.js"></script>


Now open /includes/classes/class.article.php and find:

$GLOBALS['content'] = $articleRow["Summary"];

and change it to:

$output = $articleRow["Summary"];

// Get all glossary words
$arrWords = AL_HELPER::GetGlossaryTerms();

if (sizeof($arrWords) > 0) {
// Make the replacements
for ($i = 0; $i < sizeof($arrWords); $i++) {
$regex = "#(?![^<]*?>)(?!<a[^>]*>)\b" . preg_quote($arrWords[$i]["word"], '#') . "\b(?![^<]*</a>)#si";
$output = preg_replace($regex, $arrWords[$i]["token"], $output, 1);
}
}

if (sizeof($arrWords) > 0) {
// Make the replacements
for ($i = 0; $i < sizeof($arrWords); $i++) {
// Just replace the first instanse of the token
$title = str_replace("\r\n", "<br>", str_replace(''', '\\'', str_replace('"', '', $arrWords[$i]["desc"])));
$title = str_replace(''', '\\'', $title);
$popup = "<a class=\"HelpLink\" href=\"javascript:void(0)\" onclick=\"showHelpTip(event, '<b>" . $arrWords[$i]["word"] . "</b><br><br>" . $title . "'); return false\">" . $arrWords[$i]["word"] . "</a>";

// Replace the rest of the tokens back with the word
$output = str_replace($arrWords[$i]["token"], $popup, $output);
}
}

$GLOBALS['content'] = $output;


Then open /templates/{your-template}/Panels/Categories.html adn the Default.html file and add these two lines before the </head> tag:

<link href="%%Config.CurrentTemplatePath%%/Styles/HelpTip.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="%%GLOBAL_siteURL%%/javascript/helpTip.js"></script>


Related Articles

No related articles were found.

Attachments

No attachments were found.

Powered by Interspire Knowledge Manager - World's #1 Best Selling FAQ and Knowledge Base Software