Hello,<br>&nbsp;&nbsp; My only concern about doing the database query in the plugin itself is that the plugin would be dependent on the schema for that version of the database, while the search engine api would be more likely to remain the same.
<br><br>&nbsp;&nbsp; I like the changes that you have made.&nbsp; The only thing that I would change is to make sure to only return published articles when pulling the related articles from the cache, and to limit the number of articles returned when the results come directly from the search engine.
<br><br>&nbsp;&nbsp; Feel free to check these changes with the tree, or I am happy to as well.<br><br>--Paul<br><br><div><span class="gmail_quote">On 9/14/07, <b class="gmail_sendername">Ayalon</b> &lt;<a href="mailto:ayalon@blog.nl">
ayalon@blog.nl</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">








<div link="blue" vlink="purple" lang="NL">

<div>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">Hi Paul,</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">&nbsp;</span></p>

<p style="text-indent: -18pt;"><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US"><span>1.<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">Mine is set to 5, not really
helping</span></p>

<p style="text-indent: -18pt;"><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US"><span>2.<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">720 is set…</span></p>

<p style="text-indent: -18pt;"><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US"><span>3.<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">Also no body checking.</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">&nbsp;</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">What i think is that the search engine that's build in is
not really build for so many queries at a time. Look at the wordpress related plug-in:
<a href="http://peter.mapledesign.co.uk/weblog/wp-content/uploads/related-posts.phps" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://peter.mapledesign.co.uk/weblog/wp-content/uploads/related-posts.phps
</a></span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">&nbsp;</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">They do the same thing, but instead of using the build in search
engine of wordpress they directly go into the database. If we would do these
and save those queries?! I know that it's maybe not the nicest option,
but is this something you can try? Personally I think it's the only
solution for having it work without taking to much mem currently…</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">&nbsp;</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">Attached is my optimized related plug in, now it takes a bit
less memory to do the process, but still not perfect..</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">&nbsp;</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">&nbsp;</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">Regards,</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">Ayalon</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);" lang="EN-US">&nbsp;</span></p>

<p><span style="font-size: 11pt; color: rgb(31, 73, 125);">&nbsp;</span></p>

<div style="border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; border-width: 1pt medium medium; padding: 3pt 0cm 0cm;">

<p><b><span style="font-size: 10pt;">Van:</span></b><span style="font-size: 10pt;">
<a href="mailto:plog-svn-bounces@devel.lifetype.net" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">plog-svn-bounces@devel.lifetype.net</a> [mailto:<a href="mailto:plog-svn-bounces@devel.lifetype.net" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
plog-svn-bounces@devel.lifetype.net</a>]
<b>Namens </b>Paul Westbrook<br>
<b>Verzonden:</b> donderdag 13 september 2007 22:53<br>
<b>Aan:</b> LifeType Developer List<br>
<b>Onderwerp:</b> Re: [pLog-svn] r5925 - in
plugins/branches/lifetype-1.2/related: . class/action class/view locale
templates</span></p>

</div><div><span class="e" id="q_11502e0fa5db2594_1">

<p>&nbsp;</p>

<p style="margin-bottom: 12pt;">Hello,<br>
&nbsp;&nbsp; Some of the options in the admin interface will help reduce the
CPU usage:</p>

<ol start="1" type="1">
 <li>Minimum Keyword Length&nbsp; - Set this to a
     larger number (Will reduce the number of search engine queries)</li>
 <li>Cache Lifetime&nbsp; - This will increase the
     time between the list of related articles is rebuilt.</li>
 <li>Parse Body - Uncheck this, and the plugin will
     only get keywords from the subject.</li>
</ol>

<p style="margin-bottom: 12pt;">--Paul</p>

<div>

<p><span>On 9/12/07, <b>Paul Westbrook</b>
&lt;<a href="mailto:paul@westbrooks.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">paul@westbrooks.org</a>&gt; wrote:</span></p>

<p>Hello,<br>
&nbsp;&nbsp; This plugin uses a brute force algorithm.&nbsp;&nbsp;In order to
calculate the list of related articles for a given post, first it gets a list
of all of the unique words in the post.&nbsp;&nbsp;Then it for each keyword, it
uses LifeType&#39;s builtin search engine to find a list of the posts that have
that keyword.&nbsp;&nbsp;After it does that for all of the keywords, it lists
the returned articles based on the number of times that the article is returned
by the search engine.&nbsp;&nbsp;Then the plugin returns the top x articles. <br>
<br>
&nbsp;&nbsp; Since this is expensive, the plugin implements a cache.&nbsp;&nbsp;The
list of related articles for a post is cached in the file system, so the next
time that it runs, the queries do not have to be run.&nbsp;&nbsp;The user can
specify the lifetime of that cache.&nbsp;&nbsp;For example, I have mine set to
1 month, so the queries will only be run once every 30 days for each article. <br>
<br>
&nbsp;&nbsp; There are serveral things that could be done to improve
performance</p>

<ol start="1" type="1">
 <li>Implement or use a library that will actually
     summarize the article text.&nbsp; This shouldn&#39;t simply take the nth
     sentence, but should generate a representative summary that contains the
     important keywords.&nbsp; This would reduce the number of search engine
     queries that are run </li>
 <li>Change the search engine to be able to return a
     list of articles that contains at least one of a specified list of
     words.&nbsp; This would allow the search engine to be run only once for
     each article</li>
 <li>Use native tag support.&nbsp; When lifetype
     nativelly supports tags, the plugins wouldn&#39;t have to use all of the text
     in the article, but could just find posts that are tagged with the same tags.
     </li>
</ol>

<p><br>
<span>--Paul</span></p>

<div>

<p><br>
<br>
<br>
<br>
<span>On 9/12/07, Ayalon &lt;<a href="mailto:ayalon@blog.nl" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> ayalon@blog.nl</a>&gt; wrote:</span><br>
<span>&gt; Hi There,</span><br>
<span>&gt; </span><br>
<span>&gt; This is really a great plugin, but there are some problems
with it. </span><br>
<span>&gt; </span><br>
<span>&gt; When i switch on this plugin my apache process rise to a
memory use that&#39;s</span><br>
<span>&gt; incredible. Is there something to change about it? My
database is pretty</span><br>
<span>&gt; large with a lot of articles and I have a lot of reads on
the blogs. Anybody </span><br>
<span>&gt; an idea how to optimize?</span><br>
<span>&gt; </span><br>
<span>&gt; I know this is not really something for the list, but I
tried to reprogram</span><br>
<span>&gt; the plugin making a different way of searching but I got
stuck..</span><br>
<span>&gt; </span><br>
<span>&gt; Regards </span><br>
<span>&gt; </span><br>
<span>&gt; </span><br>
<span>&gt; -----Oorspronkelijk bericht-----</span><br>
<span>&gt; Van: <a href="mailto:plog-svn-bounces@devel.lifetype.net" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">plog-svn-bounces@devel.lifetype.net </a></span><br>
<span>&gt; [mailto:<a href="mailto:plog-svn-bounces@devel.lifetype.net" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> plog-svn-bounces@devel.lifetype.net</a>] Namens</span><br>
<span>&gt; <a href="mailto:pwestbro@devel.lifetype.net" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">pwestbro@devel.lifetype.net</a></span><br>
<span>&gt; Verzonden: dinsdag 11 september 2007 7:10 </span><br>
<span>&gt; Aan: <a href="mailto:plog-svn@devel.lifetype.net" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">plog-svn@devel.lifetype.net</a></span><br>
<span>&gt; Onderwerp: [pLog-svn] r5925 - in
plugins/branches/lifetype-1.2/related: .</span><br>
<span>&gt; class/action class/view locale templates</span><br>
<span>&gt; </span><br>
<span>&gt; Author: pwestbro</span><br>
<span>&gt; Date: 2007-09-11 01:09:42 -0400 (Tue, 11 Sep 2007) </span><br>
<span>&gt; New Revision: 5925</span><br>
<span>&gt; </span><br>
<span>&gt; Modified:</span><br>
<span>&gt; </span><br>
<span>&gt;
plugins/branches/lifetype-1.2/related/class/action/pluginrelatedupdateconfig</span><br>
<span>&gt; action.class.php</span><br>
<span>&gt; </span><br>
<span>&gt; plugins/branches/lifetype-1.2 /related/class/view/pluginrelatedconfigview.cla
</span><br>
<span>&gt; ss.php</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;plugins/branches/lifetype-1.2/related/locale/locale_en_UK.php</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;plugins/branches/lifetype-1.2/related/pluginrelated.class.php</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;plugins/branches/lifetype-1.2/related/templates/related.template
</span><br>
<span>&gt; Log:</span><br>
<span>&gt; Added a setting so the minimum number for keywords that are
used to generate</span><br>
<span>&gt; the list of related articles</span><br>
<span>&gt; </span><br>
<span>&gt; </span><br>
<span>&gt; Modified:</span><br>
<span>&gt;
plugins/branches/lifetype-1.2/related/class/action/pluginrelatedupdateconfig </span><br>
<span>&gt; action.class.php</span><br>
<span>&gt; ===================================================================</span><br>
<span>&gt; ---</span><br>
<span>&gt;
plugins/branches/lifetype-1.2/related/class/action/pluginrelatedupdateconfig</span><br>
<span>&gt; action.class.php
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-09-10 19:45:42 UTC (rev
5924)</span><br>
<span>&gt; +++</span><br>
<span>&gt; plugins/branches/lifetype-1.2/related/class/action/pluginrelatedupdateconfig</span><br>
<span>&gt;
action.class.php&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-09-11
05:09:42 UTC (rev 5925)</span><br>
<span>&gt; @@ -18,43 +18,45 @@ </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Foundation, Inc., 59
Temple Place, Suite 330, Boston, MA&nbsp;&nbsp;02111-1307</span><br>
<span>&gt; USA</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><br>
<span>&gt; </span><br>
<span>&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lt_include(</span><br>
<span>&gt; PLOG_CLASS_PATH.&quot;class/action/admin/adminaction.class.php&quot;
); </span><br>
<span>&gt; +&nbsp;&nbsp;&nbsp;&nbsp;lt_include(
PLOG_CLASS_PATH.&quot;class/action/admin/adminaction.class.php&quot;</span><br>
<span>&gt; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lt_include(</span><br>
<span>&gt;
PLOG_CLASS_PATH.&quot;plugins/related/class/view/pluginrelatedconfigview.class.ph
</span><br>
<span>&gt; p&quot; );</span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$apiKeyValid = true;</span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class
PluginRelatedUpdateConfigAction extends AdminAction</span><br>
<span>&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</span><br>
<span>&gt; -</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $_pluginEnabled;</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $_numRelatedArticles; </span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $_minWordLength;</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $_refreshInterval;</span><br>
<span>&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $_parseBody;</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $_bannedKeywords;</span><br>
<span>&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</span><br>
<span>&gt; +</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$_pluginEnabled; </span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$_numRelatedArticles;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$_minWordLength;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$_minNumKeywords;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$_refreshInterval;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$_parseBody; </span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$_bannedKeywords;</span><br>
<span>&gt; </span><br>
<span>&gt; </span><br>
<span>&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /**</span><br>
<span>&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/**</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
* Constructor. If nothing else, it also has to call the</span><br>
<span>&gt; constructor of the parent</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
* class, BlogAction with the same parameters </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
*/</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function
PluginRelatedUpdateConfigAction( $actionInfo, $request )</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;AdminAction( $actionInfo, $request );</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;AdminAction(
$actionInfo, $request ); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt; -</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
function validate()</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{</span><br>
<span>&gt; +</span><br>
<span>&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; function validate()</span><br>
<span>&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_pluginEnabled
= $this-&gt;_request-&gt;getValue( </span><br>
<span>&gt; &quot;pluginEnabled&quot; );</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_pluginEnabled
= ($this-&gt;_pluginEnabled != &quot;&quot; );</span><br>
<span>&gt; </span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_pluginEnabled
= ($this-&gt;_pluginEnabled != &quot;&quot; ); </span><br>
<span>&gt; </span><br>
<span>&gt; </span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_numRelatedArticles
= $this-&gt;_request-&gt;getValue(</span><br>
<span>&gt; &quot;numArticles&quot; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_minWordLength
= $this-&gt;_request-&gt;getValue( </span><br>
<span>&gt; &quot;minWordLength&quot; );</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_minNumKeywords
= $this-&gt;_request-&gt;getValue(</span><br>
<span>&gt; &quot;minNumKeywords&quot; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_refreshInterval
= $this-&gt;_request-&gt;getValue( &quot;interval&quot; </span><br>
<span>&gt; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_parseBody
= $this-&gt;_request-&gt;getValue( &quot;parseBody&quot; );</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_parseBody
= ($this-&gt;_parseBody != &quot;&quot; );</span><br>
<span>&gt; </span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_parseBody
= ($this-&gt;_parseBody != &quot;&quot; ); </span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_bannedKeywords
= $this-&gt;_request-&gt;getValue(</span><br>
<span>&gt; &quot;bannedKeywords&quot; );</span><br>
<span>&gt; </span><br>
<span>&gt; </span><br>
<span>&gt; @@ -98,28 +100,49 @@</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return
false; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt; +</span><br>
<span>&gt; +</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(
$this-&gt;_minNumKeywords == &quot;&quot; ) {</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_view
= new PluginRelatedConfigView( </span><br>
<span>&gt; $this-&gt;_blogInfo );</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_view-&gt;setErrorMessage(</span><br>
<span>&gt;
$this-&gt;_locale-&gt;tr(&quot;related_missing_num_keywords&quot;));</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;setCommonData();
</span><br>
<span>&gt; +</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return
false;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
{</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$val3
= new IntegerValidator();</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(
!$val3-&gt;validate( $this-&gt;_minNumKeywords )) { </span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_view
= new PluginRelatedConfigView(</span><br>
<span>&gt; $this-&gt;_blogInfo );</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_view-&gt;setErrorMessage(</span><br>
<span>&gt;
$this-&gt;_locale-&gt;tr(&quot;related_invalid_num_keywords&quot;)); </span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;setCommonData();</span><br>
<span>&gt; +</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return
false;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt; +</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
return true; </span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</span><br>
<span>&gt; -</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return
true;</span><br>
<span>&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt; +</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/**</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
* Carries out the specified action</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
*/</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function
perform() </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//
update the plugin configurations to blog setting</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$blogSettings = $this-&gt;_blogInfo-&gt;getSettings();</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$blogSettings
= $this-&gt;_blogInfo-&gt;getSettings(); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$blogSettings-&gt;setValue(
&quot;plugin_related_enabled&quot;,</span><br>
<span>&gt; $this-&gt;_pluginEnabled );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$blogSettings-&gt;setValue(
&quot;plugin_related_num_articles&quot;,</span><br>
<span>&gt; $this-&gt;_numRelatedArticles ); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$blogSettings-&gt;setValue(
&quot;plugin_related_min_word_length&quot;,</span><br>
<span>&gt; $this-&gt;_minWordLength );</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$blogSettings-&gt;setValue(
&quot;plugin_related_min_num_keywords&quot;, </span><br>
<span>&gt; $this-&gt;_minNumKeywords );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$blogSettings-&gt;setValue(
&quot;plugin_related_refresh_interval&quot;,</span><br>
<span>&gt; $this-&gt;_refreshInterval );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$blogSettings-&gt;setValue(</span><br>
<span>&gt; &quot;plugin_related_extract_keywords_from_body&quot;,
$this-&gt;_parseBody );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$blogSettings-&gt;setValue(
&quot;plugin_related_banned_keywords&quot;,</span><br>
<span>&gt; $this-&gt;_bannedKeywords );</span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_blogInfo-&gt;setSettings(
$blogSettings );</span><br>
<span>&gt; -</span><br>
<span>&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
// save the blogs settings</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$blogs = new Blogs();</span><br>
<span>&gt; +</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//
save the blogs settings </span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$blogs
= new Blogs();</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(
!$blogs-&gt;updateBlog( $this-&gt;_blogInfo )) {</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_view
= new PluginRelatedConfigView(</span><br>
<span>&gt; $this-&gt;_blogInfo ); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_view-&gt;setErrorMessage(</span><br>
<span>&gt;
$this-&gt;_locale-&gt;tr(&quot;error_updating_settings&quot;));</span><br>
<span>&gt; @@ -127,20 +150,20 @@</span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return
false;</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
</span><br>
<span>&gt; -</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
// if everything went ok...</span><br>
<span>&gt; +</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//
if everything went ok...</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_blogInfo-&gt;setSettings(
$blogSettings );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_session-&gt;setValue(
&quot;blogInfo&quot;, $this-&gt;_blogInfo ); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;saveSession();</span><br>
<span>&gt; -</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;_view = new PluginRelatedConfigView(</span><br>
<span>&gt; $this-&gt;_blogInfo );</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;_view-&gt;setSuccessMessage( </span><br>
<span>&gt; $this-&gt;_locale-&gt;tr(&quot;related_settings_saved_ok&quot;));</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;setCommonData();</span><br>
<span>&gt; -</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
// clear the cache</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CacheControl::resetBlogCache( </span><br>
<span>&gt; $this-&gt;_blogInfo-&gt;getId());</span><br>
<span>&gt; +</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_view
= new PluginRelatedConfigView(</span><br>
<span>&gt; $this-&gt;_blogInfo );</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_view-&gt;setSuccessMessage(
</span><br>
<span>&gt;
$this-&gt;_locale-&gt;tr(&quot;related_settings_saved_ok&quot;));</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;setCommonData();</span><br>
<span>&gt; +</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//
clear the cache</span><br>
<span>&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CacheControl::resetBlogCache(
</span><br>
<span>&gt; $this-&gt;_blogInfo-&gt;getId());</span><br>
<span>&gt; </span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return
true;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return
true;</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt; </span><br>
<span>&gt; </span><br>
<span>&gt; Modified:</span><br>
<span>&gt; plugins/branches/lifetype-
1.2/related/class/view/pluginrelatedconfigview.cla</span><br>
<span>&gt; ss.php</span><br>
<span>&gt;
===================================================================</span><br>
<span>&gt; ---</span><br>
<span>&gt;
plugins/branches/lifetype-1.2/related/class/view/pluginrelatedconfigview.cla </span><br>
<span>&gt; ss.php&nbsp;&nbsp;2007-09-10 19:45:42 UTC (rev 5924)</span><br>
<span>&gt; +++</span><br>
<span>&gt; plugins/branches/lifetype-1.2/related/class/view/pluginrelatedconfigview.cla</span><br>
<span>&gt; ss.php&nbsp;&nbsp;2007-09-11 05:09:42 UTC (rev 5925)</span><br>
<span>&gt; @@ -38,6 +38,7 @@ </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$pluginEnabled = $blogSettings-&gt;getValue(</span><br>
<span>&gt; &quot;plugin_related_enabled&quot; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$numArticles = $blogSettings-&gt;getValue(</span><br>
<span>&gt; &quot;plugin_related_num_articles&quot; ); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$minWordLength = $blogSettings-&gt;getValue(</span><br>
<span>&gt; &quot;plugin_related_min_word_length&quot; );</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$minNumKeyword = $blogSettings-&gt;getValue(</span><br>
<span>&gt; &quot;plugin_related_min_num_keywords&quot; ); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$refreshInterval = $blogSettings-&gt;getValue(</span><br>
<span>&gt; &quot;plugin_related_refresh_interval&quot; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$parseBody = $blogSettings-&gt;getValue(</span><br>
<span>&gt; &quot;plugin_related_extract_keywords_from_body&quot; ); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$bannedKeywords = $blogSettings-&gt;getValue(</span><br>
<span>&gt; &quot;plugin_related_banned_keywords&quot; );</span><br>
<span>&gt; @@ -49,6 +50,7 @@</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;setValue( &quot;pluginEnabled&quot;, $pluginEnabled ); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;setValue( &quot;numArticles&quot;, $numArticles );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;setValue( &quot;minWordLength&quot;, $minWordLength );</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;setValue( &quot;minNumKeywords&quot;, $minNumKeyword ); </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;setValue( &quot;interval&quot;, $refreshInterval );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;setValue( &quot;parseBody&quot;, $parseBody );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;setValue( &quot;bannedKeywords&quot;, $bannedKeywords </span><br>
<span>&gt; );</span><br>
<span>&gt; </span><br>
<span>&gt; Modified:
plugins/branches/lifetype-1.2/related/locale/locale_en_UK.php</span><br>
<span>&gt; ===================================================================</span><br>
<span>&gt; ---
plugins/branches/lifetype-1.2/related/locale/locale_en_UK.php </span><br>
<span>&gt; 2007-09-10 19:45:42 UTC (rev 5924)</span><br>
<span>&gt; +++
plugins/branches/lifetype-1.2/related/locale/locale_en_UK.php</span><br>
<span>&gt; 2007-09-11 05:09:42 UTC (rev 5925)</span><br>
<span>&gt; @@ -10,12 +10,15 @@</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_settings_saved_ok&quot;]
= &quot;Related Posts settings saved </span><br>
<span>&gt; successfully!&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_missing_num_articles&quot;]
= &quot;Number of articles needs to be</span><br>
<span>&gt; specified&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_invalid_num_articles&quot;]
= &quot;Number of articles needs to be </span><br>
<span>&gt; an integer&quot;;</span><br>
<span>&gt; +$messages[&quot;related_missing_num_keywords&quot;] =
&quot;Number of keywords needs to be</span><br>
<span>&gt; specified&quot;;</span><br>
<span>&gt; +$messages[&quot;related_invalid_num_keywords&quot;] =
&quot;Number of keywords needs to be </span><br>
<span>&gt; an integer&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_missing_min_length&quot;]
= &quot;Minimum keyword length needs to</span><br>
<span>&gt; be specified&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_invalid_min_length&quot;]
= &quot;Minumum keyword length needs to </span><br>
<span>&gt; be an integer&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_banned_keywords&quot;] =
&quot;Keywords that should not be used to</span><br>
<span>&gt; find related posts (comma separated).&quot;;</span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_articles&quot;] =
&quot;Number of related articles to return.&quot;; </span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_word_length&quot;] =
&quot;Minimum length of keyword used to</span><br>
<span>&gt; generate related article.&quot;;</span><br>
<span>&gt; +$messages[&quot;related_num_keywords&quot;] = &quot;Minimum
number of keywords required to </span><br>
<span>&gt; determine list of related articles.&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_cache&quot;] =
&quot;Lifetime for the related article cache.&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;parse_body&quot;] = &quot;Parse
the body of articles to generate keywords. </span><br>
<span>&gt; (This may cause generating related posts to take
longer.)&quot;;</span><br>
<span>&gt; </span><br>
<span>&gt; @@ -24,6 +27,7 @@</span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_max_articles&quot;] =
&quot;Number Articles&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_min_word_length&quot;] =
&quot;Minimum Keyword Length&quot;; </span><br>
<span>&gt; +$messages[&quot;related_min_num_keywords&quot;] =
&quot;Minimum Number of Keywords&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_cache_lifetime&quot;] =
&quot;Cache Lifetime&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;related_parse_body&quot;] =
&quot;Parse Body&quot;; </span><br>
<span>&gt;&nbsp;&nbsp;$messages[&quot;banned_keywords&quot;] =
&quot;Banned Keywords&quot;;</span><br>
<span>&gt; </span><br>
<span>&gt; Modified:
plugins/branches/lifetype-1.2/related/pluginrelated.class.php</span><br>
<span>&gt; ===================================================================
</span><br>
<span>&gt; ---
plugins/branches/lifetype-1.2/related/pluginrelated.class.php</span><br>
<span>&gt; 2007-09-10 19:45:42 UTC (rev 5924)</span><br>
<span>&gt; +++
plugins/branches/lifetype-1.2/related/pluginrelated.class.php</span><br>
<span>&gt; 2007-09-11 05:09:42 UTC (rev 5925) </span><br>
<span>&gt; @@ -25,10 +25,11 @@</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $pluginEnabled;</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $numRelatedArticles;</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $minWordLength;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $minNumKeywords;</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $refreshInterval; </span><br>
<span>&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$cacheFolder;</span><br>
<span>&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$extractKeywordsFromBody;</span><br>
<span>&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var
$bannedWords;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $cacheFolder;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $extractKeywordsFromBody;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
var $bannedWords; </span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
function PluginRelated( $source = &quot;&quot; )</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{</span><br>
<span>&gt; @@ -38,7 +39,7 @@</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;desc&nbsp;&nbsp;&nbsp;&nbsp;= &quot;The Related plugin will generate
a </span><br>
<span>&gt; list of related posts.&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;author&nbsp;&nbsp;= &quot;Paul Westbrook&quot;;</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;locales = Array( &quot;en_UK&quot; );</span><br>
<span>&gt;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;version
= &quot;20070602&quot;; </span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;version = &quot;20070910&quot;;</span><br>
<span>&gt; </span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
if( $source == &quot;admin&quot; )</span><br>
<span>&gt; @@ -62,6 +63,7 @@</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;pluginEnabled = $blogSettings-&gt;getValue( </span><br>
<span>&gt; &quot;plugin_related_enabled&quot; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;numRelatedArticles = $blogSettings-&gt;getValue(</span><br>
<span>&gt; &quot;plugin_related_num_articles&quot; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;minWordLength = $blogSettings-&gt;getValue( </span><br>
<span>&gt; &quot;plugin_related_min_word_length&quot; );</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;minNumKeywords = $blogSettings-&gt;getValue(</span><br>
<span>&gt; &quot;plugin_related_min_num_keywords&quot; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;refreshInterval = $blogSettings-&gt;getValue( </span><br>
<span>&gt; &quot;plugin_related_refresh_interval&quot; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;extractKeywordsFromBody =</span><br>
<span>&gt; $blogSettings-&gt;getValue(
&quot;plugin_related_extract_keywords_from_body&quot; );</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
$this-&gt;bannedWords = $blogSettings-&gt;getValue( </span><br>
<span>&gt; &quot;plugin_related_banned_keywords&quot; );</span><br>
<span>&gt; @@ -116,8 +118,14 @@</span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//
Get the keywords</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$keywords
= $this-&gt;getArticleKeywords($article);</span><br>
<span>&gt; + </span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//
Make sure that there are enough keywords to make</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//
generating the list of articles worth while</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if
($this-&gt;minNumKeywords != &quot;&quot; &amp;&amp; count($keywords) &lt; </span><br>
<span>&gt; $this-&gt;minNumKeywords) {</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return
$relatedArticles;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><br>
<span>&gt; +</span><br>
<span>&gt; </span><br>
<span>&gt; -</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;foreach($keywords
as $word) {</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//
Build the list of articles that have this keyword </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lt_include(</span><br>
<span>&gt; PLOG_CLASS_PATH.&quot;class/dao/searchengine.class.php&quot;
);</span><br>
<span>&gt; </span><br>
<span>&gt; Modified:
plugins/branches/lifetype-1.2/related/templates/related.template</span><br>
<span>&gt; ===================================================================
</span><br>
<span>&gt; ---
plugins/branches/lifetype-1.2/related/templates/related.template</span><br>
<span>&gt; 2007-09-10 19:45:42 UTC (rev 5924)</span><br>
<span>&gt; +++
plugins/branches/lifetype-1.2/related/templates/related.template</span><br>
<span>&gt; 2007-09-11 05:09:42 UTC (rev 5925) </span><br>
<span>&gt; @@ -35,6 +35,17 @@</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/div&gt;</span><br>
<span>&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&lt;div class=&quot;field&quot;&gt;</span><br>
<span>&gt; +&nbsp;&nbsp; &lt;label
for=&quot;width&quot;&gt;{$locale-&gt;tr(&quot;related_min_num_keywords&quot;)}&lt;/label&gt;
</span><br>
<span>&gt; +&nbsp;&nbsp; &lt;span
class=&quot;required&quot;&gt;*&lt;/span&gt;</span><br>
<span>&gt; +&nbsp;&nbsp; &lt;div
class=&quot;formHelp&quot;&gt;{$locale-&gt;tr(&quot;related_num_keywords&quot;)}&lt;/div&gt;</span><br>
<span>&gt; +&nbsp;&nbsp; &lt;input class=&quot;text&quot;
type=&quot;text&quot; name=&quot;minNumKeywords&quot; </span><br>
<span>&gt; id=&quot;minNumKeywords&quot;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{user_cannot_override</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
key=plugin_related_min_num_keywords}readonly=&quot;readonly&quot;</span><br>
<span>&gt;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{/user_cannot_override}</span><br>
<span>&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value=&quot;{$minNumKeywords}&quot;
width=&quot;10&quot; /&gt; </span><br>
<span>&gt; +&nbsp;&nbsp;&lt;/div&gt;</span><br>
<span>&gt; +</span><br>
<span>&gt; +&nbsp;&nbsp;&lt;div class=&quot;field&quot;&gt;</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label
for=&quot;size&quot;&gt;{$locale-&gt;tr(&quot;related_cache_lifetime&quot;)}&lt;/label&gt;</span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;span
class=&quot;required&quot;&gt;*&lt;/span&gt; </span><br>
<span>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div
class=&quot;formHelp&quot;&gt;{$locale-&gt;tr(&quot;related_cache&quot;)}&lt;/div&gt;</span><br>
<span>&gt; </span><br>
<span>&gt; _______________________________________________</span><br>
<span>&gt; pLog-svn mailing list</span><br>
<span>&gt; <a href="mailto:pLog-svn@devel.lifetype.net" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">pLog-svn@devel.lifetype.net</a></span><br>
<span>&gt; <a href="http://limedaley.com/mailman/listinfo/plog-svn" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://limedaley.com/mailman/listinfo/plog-svn</a></span><br>
<span>&gt; </span><br>
<span>&gt; </span><br>
<span>&gt; _______________________________________________ </span><br>
<span>&gt; pLog-svn mailing list</span><br>
<span>&gt; <a href="mailto:pLog-svn@devel.lifetype.net" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">pLog-svn@devel.lifetype.net</a></span><br>
<span>&gt; <a href="http://limedaley.com/mailman/listinfo/plog-svn" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://limedaley.com/mailman/listinfo/plog-svn </a></span><br>
<span>&gt; </span></p>

</div>

</div>

<p>&nbsp;</p>

</span></div></div>

</div>


<br>_______________________________________________<br>pLog-svn mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:pLog-svn@devel.lifetype.net">pLog-svn@devel.lifetype.net</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://limedaley.com/mailman/listinfo/plog-svn" target="_blank">
http://limedaley.com/mailman/listinfo/plog-svn</a><br><br clear="all"></blockquote></div><br>