PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : یک سوال و مشکل درمورد بسته Anti-Bot Registration Puzzles



reza_pa48
11-24-2009, 05:54 PM
سلام
این بسته رو طبق توصیه دوستان اینجا برای رفع شر اسپمر ها نصب کردم و اون تغییری که گفته بود بو فایل egister.template.php دادم اصولا بایستی یه سری سوال در هنگام عضویت بپرسه ولی من همچین صفحه ای دارم برای عضویت
<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b> (<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b>)

نوید
11-25-2009, 03:51 AM
سلام
آیا شما تغییرات را در register.template.php قالب خودتون اعمال کردید یا قالب پیش فرض؟
موفق باشید

reza_pa48
11-25-2009, 04:00 PM
سلام
من تغییرات در قالب پیش فرض دادم
همونطور که می بینید یک باکس اضافه هست در رجیستر
ایا باید تغییر دیگری هم داد؟

نوید
11-25-2009, 06:26 PM
شما باید تغییرات را در فایل register.template.php قالب خودتون بدید
موفق باشید

reza_pa48
11-25-2009, 07:06 PM
عذر می خوام اشتباهی گفتم
تغییرات رو در قالب پیش فرض انجام دادم

نوید
11-26-2009, 04:01 AM
باید روی قالب خودتون تغییر بدید

reza_pa48
11-26-2009, 07:41 PM
رو قالب خودم هم تغییر دادم
ولی باز فرقی نکرد و اسپمرها هجوم آوردند

نوید
11-27-2009, 06:44 AM
اگر روی قالب خودتون تغییر داده باشید باید فعال شود.
آیا در بقیه فایل ها هم که مشخص شده بود تغییر دادید یا فقط فایل قالب را تغییر دادید؟

reza_pa48
11-27-2009, 08:24 AM
سلام
من فقط فایل register.template.pp رو تغییر دادم
دیگر چی را باید تغییر بدم؟

نوید
11-27-2009, 12:39 PM
فایل xml بسته را باز کنید تا ببنید چه فایل های دیگری را نیز باید تغییر دهید
موفق باشید

reza_pa48
11-28-2009, 12:06 PM
سلام
فایل xml محتویاتش اینه

&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;!DOCTYPE package-info SYSTEM &quot;&quot;&gt;
&lt;package-info xmlns=&quot;<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b> xmlns:smf=&quot;<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b>
&lt;name&gt;Anti-Bot Registration Puzzles&lt;/name&gt;
&lt;id&gt;karlbenson:antibotregistrationpuzzles&lt;/id&gt;
&lt;type&gt;modification&lt;/type&gt;
&lt;version&gt;1.2&lt;/version&gt;
&lt;install&gt;
&lt;readme type=&quot;file&quot; parsebbc=&quot;true&quot;&gt;readme.txt&lt;/readme&gt;
&lt;modification&gt;install.xml&lt;/modification&gt;
&lt;/install&gt;

&lt;uninstall&gt;
&lt;modification reverse=&quot;true&quot;&gt;install.xml&lt;/modification&gt;
&lt;/uninstall&gt;
&lt;/package-info&gt;

نوید
11-29-2009, 05:38 AM
فایل install.xml را باز کنید

reza_pa48
11-29-2009, 02:23 PM
شرمنده همه فايل رو ژيست مي كنم اينجا آخه من نفهمسدم چس رو بايد اضافه كنم به چه فايلي

&lt;?xml version=&quot;1.0&quot; ?&gt;
&lt;!DOCTYPE modification (View Source for full doctype...)&gt;
- &lt;modification xmlns=&quot;<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b> xmlns:smf=&quot;<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b>
&lt;name&gt;Anti-Bot Registration Puzzles&lt;/name&gt;
&lt;id&gt;karlbenson:antibotregistrationpuzzles&lt;/id&gt;
&lt;version&gt;1.2&lt;/version&gt;
&lt;homepage&gt;<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b>
- &lt;file name=&quot;$sourcedir/Register.php&quot; error=&quot;fatal&quot;&gt;
- &lt;operation error=&quot;fatal&quot;&gt;
- &lt;search position=&quot;after&quot; regexp=&quot;false&quot; whitespace=&quot;exact&quot;&gt;
- &lt;![CDATA[ // Are they under age, and under age users are banned?

]]&gt;
&lt;/search&gt;
- &lt;add&gt;
- &lt;![CDATA[
// Start of Anti-bot Registration Puzzles Mod
// Checks whether field was completed, if not it goes to an error screen
if(empty($_SESSION&#91;&#039;puzzle_dynamic_input&#039;]) || empty($_POST[$_SESSION&#91;&#039;puzzle_dynamic_input&#039;]]))
fatal_lang_error(&#039;puzzle_incomplete&#039;, false);
// If puzzle was answered incorrectly
elseif (md5(strtolower($_POST[$_SESSION&#91;&#039;puzzle_dynamic_input&#039;]])) != $_SESSION&#91;&#039;puzzle_code&#039;])
fatal_lang_error(&#039;puzzle_incorrect&#039;, false);
// End of Anti-bot Registration Puzzles Mod



]]&gt;
&lt;/add&gt;
&lt;/operation&gt;
- &lt;operation error=&quot;fatal&quot;&gt;
- &lt;search position=&quot;before&quot; regexp=&quot;false&quot; whitespace=&quot;exact&quot;&gt;
- &lt;![CDATA[
// Under age restrictions?
if (!empty($modSettings&#91;&#039;coppaAge&#039;]))
{
$context&#91;&#039;show_coppa&#039;] = true;
$context&#91;&#039;coppa_desc&#039;] = sprintf($txt&#91;&#039;register_age_confirmation&#039;], $modSettings&#91;&#039;coppaAge&#039;]);
}


]]&gt;
&lt;/search&gt;
- &lt;add&gt;
- &lt;![CDATA[
// Start of Anti-bot Registration Puzzles Mod
$puzzles = array(
&#039;shapes&#039; =&gt; create_function(&#039;&#039;, &#039;
$a = array(0 =&gt; &quot;sides&quot;, 1 =&gt; &quot;corners&quot;);
$b = rand(0,1);
$c = array(\&#039;square\&#039; =&gt; 4, \&#039;rectangle\&#039; =&gt; 4, \&#039;pentagon\&#039; =&gt; 5,
\&#039;hexagon\&#039; =&gt; 6, \&#039;heptagon\&#039; =&gt; 7, \&#039;octagon\&#039; =&gt; 8);

$d = array_rand($c); // randomly select a shape
$e = $c[$d]; // the answer
global $txt;
$txt[\&#039;puzzle_shapes\&#039;] = sprintf(($d == \&#039;octagon\&#039; ? $txt[\&#039;puzzle_shapes2\&#039;] : $txt[\&#039;puzzle_shapes\&#039;]), $txt[\&#039;puzzle_\&#039;.$a[$b]], $txt[\&#039;puzzle_\&#039;.$d]);
return array(\&#039;shapes\&#039;, \&#039;\&#039;, md5($e));
&#039;),
&#039;math&#039; =&gt; create_function(&#039;&#039;, &#039;
$a = array();
$a[0] = rand(5,19);
$a[1] = rand(1,$a[0]-2);
$a[2] = rand(1,($a[0]-$a[1]-2));
$a[3] = array(&quot;+&quot;,&quot;-&quot;);
$a[4] = $a[3][array_rand($a[3])];
$a[5] = $a[3][array_rand($a[3])];
$d = &quot;$a[0]$a[4] $a[1] $a[5] $a[2]&quot;;
eval(&quot;\$d=&quot; . $d . &quot;;&quot;);
return array(\&#039;math\&#039;, &quot;&lt;span style=\&quot;font-weight:bold;\&quot;&gt;$a[0] $a[4] $a[1] $a[5] $a[2] =&lt;/span&gt;&quot;, md5($d));
&#039;),
&#039;math2&#039; =&gt; create_function(&#039;&#039;, &#039;
$a = array();
$a[0] = rand(5,19);
$a[1] = rand(1,$a[0]-2);
$a[2] = rand(1,($a[0]-$a[1]-2));
$a[3] = array(&quot;+&quot;,&quot;-&quot;);
$a[4] = $a[3][array_rand($a[3])];
$a[5] = $a[3][array_rand($a[3])];
$c = array(rand(0,1),rand(0,1),rand(0,1));
$d = &quot;$a[0]$a[4] $a[1] $a[5] $a[2]&quot;;
// Whats the sum/answer
eval(&quot;\$d=&quot; . $d . &quot;;&quot;);
// Access txt strings
global $txt;
return array(\&#039;math\&#039;, \&#039;&lt;span style=&quot;font-weight:bold;&quot;&gt;\&#039;.($c[0] ? $a[0] : $txt[\&#039;puzzle_\&#039;.$a[0]]).\&#039; \&#039;.$a[4].\&#039; \&#039;.($c[1] ? $a[1] : $txt[\&#039;puzzle_\&#039;.$a[1]]).\&#039; \&#039;.$a[5].\&#039; \&#039;.($c[2] ? $a[2] : $txt[\&#039;puzzle_\&#039;.$a[2]]).\&#039; = &lt;/span&gt;\&#039;, md5($d));
&#039;),
&#039;colors&#039; =&gt; create_function(&#039;&#039;, &#039;
$a = array(\&#039;red\&#039; =&gt; \&#039;#FF0033\&#039;, \&#039;orange\&#039; =&gt; \&#039;#FF6600\&#039;, \&#039;yellow\&#039; =&gt; \&#039;#FFFF33\&#039;, \&#039;green\&#039; =&gt; \&#039;#006600\&#039;, \&#039;blue\&#039; =&gt; \&#039;#0033FF\&#039;, \&#039;purple\&#039; =&gt; \&#039;#663366\&#039;, \&#039;pink\&#039; =&gt; \&#039;#FF9999\&#039;, \&#039;black\&#039; =&gt; \&#039;#000000\&#039;, \&#039;grey\&#039; =&gt; \&#039;#999999\&#039;);

// Select them randomly
$b = array_rand($a,8);
$c = $b[rand(0,7)]; // the answer
$d = \&#039;\&#039;;
// Access txt strings
global $txt;
for($i=0;$i&lt;=7;$i++)
{
// Color or hex? randomly change
$e = rand(0,1);
$j = $i+1;
if($c == $b[$i] || $c == $b[$j])
$d .= \&#039;&lt;span style=&quot;font-weight:bold;color:\&#039;. ($e ? $a[$c] : $c ) .\&#039;&quot;&gt;\&#039;. $txt[\&#039;puzzle_\&#039;.$c] .\&#039;&lt;/span&gt; \&#039;;
else
$d .= \&#039;&lt;span style=&quot;font-weight:bold;color:\&#039;. ($e ? $a[$b[$i]] : $b[$i] ) .\&#039;&quot;&gt;\&#039;. $txt[\&#039;puzzle_\&#039;.$b[$j]] .\&#039;&lt;/span&gt; \&#039;;
$i++;
}
unset($a,$b,$e,$i,$j);
return array(\&#039;colors\&#039;, $d, md5(strtolower($txt[\&#039;puzzle_\&#039;.$c])));
&#039;),
);
// Generate a new puzzle code every time
$_SESSION&#91;&#039;puzzle_dynamic_input&#039;] = $_SESSION&#91;&#039;puzzle_code&#039;] = &#039;&#039;;

// Generate Random field name
$range1 = range(&#039;a&#039;, &#039;z&#039;);
$range2 = range(0, 9);
// Must start with a letter not a digit
$_SESSION&#91;&#039;puzzle_dynamic_input&#039;] = $range1[array_rand($range1)];
// Length over 8
$rand = rand(8,12);
for($i=0;$i&lt;=$rand;$i++)
$_SESSION&#91;&#039;puzzle_dynamic_input&#039;] .= (rand(0, 1) == 0) ? $range1[array_rand($range1)] : $range2[array_rand($range2)];

unset($range1, $range2, $rand);

// Choose a puzzle
$context&#91;&#039;puzzle&#039;] = $puzzles[array_rand($puzzles)]();
$_SESSION&#91;&#039;puzzle_code&#039;] = $context&#91;&#039;puzzle&#039;][2];
$context&#91;&#039;puzzle&#039;][2] = $_SESSION&#91;&#039;puzzle_dynamic_input&#039;];
unset($puzzles);
// End of Anti-bot Registration Puzzles Mod


]]&gt;
&lt;/add&gt;
&lt;/operation&gt;
&lt;/file&gt;
- &lt;file name=&quot;$themedir/Register.template.php&quot; error=&quot;fatal&quot;&gt;
- &lt;operation error=&quot;fatal&quot;&gt;
- &lt;search position=&quot;after&quot; regexp=&quot;false&quot; whitespace=&quot;exact&quot;&gt;
- &lt;![CDATA[
// Are there age restrictions in place?
if (!empty($modSettings&#91;&#039;coppaAge&#039;]))


]]&gt;
&lt;/search&gt;
- &lt;add&gt;
- &lt;![CDATA[
// Start of Anti-bot Registration Puzzles Mod
echo &#039;&lt;tr valign=&quot;top&quot;&gt;
&lt;td width=&quot;40%&quot; valign=&quot;top&quot;&gt;
&lt;b&gt;&#039;.$txt&#91;&#039;puzzle_&#039;.$context&#91;&#039;puzzle&#039;][0]].&#039;&lt;/b&gt;&lt;br /&gt;
&#039;.$txt&#91;&#039;puzzle_antibot&#039;].&#039;
&lt;/td&gt;
&lt;td&gt;
&#039;. ( empty($context&#91;&#039;puzzle&#039;][1]) ? &#039;&#039; : $context&#91;&#039;puzzle&#039;][1].&#039;&lt;br /&gt;&#039; ) .&#039;
&lt;input type=&quot;text&quot; name=&quot;&#039;.$context&#91;&#039;puzzle&#039;][2].&#039;&quot; size=&quot;30&quot; value=&quot;&quot; tabindex=&quot;&#039;, $context&#91;&#039;tabindex&#039;]++, &#039;&quot; /&gt;
&lt;/td&gt;
&lt;/tr&gt;&#039;;
// End of Anti-bot Registration Puzzles Mod


]]&gt;
&lt;/add&gt;
&lt;/operation&gt;
&lt;/file&gt;
- &lt;file name=&quot;$themedir/languages/Modifications.english.php&quot; error=&quot;fatal&quot;&gt;
- &lt;operation error=&quot;fatal&quot;&gt;
&lt;search position=&quot;end&quot; regexp=&quot;false&quot; whitespace=&quot;exact&quot; /&gt;
- &lt;add&gt;
- &lt;![CDATA[
$txt&#91;&#039;puzzle_colors&#039;] = &#039;Which word is the same as its color&#039;;
$txt&#91;&#039;puzzle_math&#039;] = &#039;What is the sum of (as a number)&#039;;
$txt&#91;&#039;puzzle_shapes&#039;] = &#039;How many %s does a %s have?&#039;;
$txt&#91;&#039;puzzle_shapes2&#039;] = &#039;How many %s does an %s have?&#039;;
$txt&#91;&#039;puzzle_sides&#039;] = &#039;sides&#039;;
$txt&#91;&#039;puzzle_corners&#039;] = &#039;corners&#039;;
$txt&#91;&#039;puzzle_incomplete&#039;] = &#039;You did not complete the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_incorrect&#039;] = &#039;You incorrectly answered the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_antibot&#039;] = &#039;Anti-bot measure&#039;;
$txt&#91;&#039;puzzle_red&#039;] = &#039;Red&#039;;
$txt&#91;&#039;puzzle_orange&#039;] = &#039;Orange&#039;;
$txt&#91;&#039;puzzle_yellow&#039;] = &#039;Yellow&#039;;
$txt&#91;&#039;puzzle_green&#039;] = &#039;Green&#039;;
$txt&#91;&#039;puzzle_blue&#039;] = &#039;Blue&#039;;
$txt&#91;&#039;puzzle_purple&#039;] = &#039;Purple&#039;;
$txt&#91;&#039;puzzle_pink&#039;] = &#039;Pink&#039;;
$txt&#91;&#039;puzzle_black&#039;] = &#039;Black&#039;;
$txt&#91;&#039;puzzle_grey&#039;] = &#039;Grey&#039;;
$txt&#91;&#039;puzzle_triange&#039;] = &#039;Triangle&#039;;
$txt&#91;&#039;puzzle_square&#039;] = &#039;Square&#039;;
$txt&#91;&#039;puzzle_rectangle&#039;] = &#039;Rectangle&#039;;
$txt&#91;&#039;puzzle_pentagon&#039;] = &#039;Pentagon&#039;;
$txt&#91;&#039;puzzle_hexagon&#039;] = &#039;Hexagon&#039;;
$txt&#91;&#039;puzzle_heptagon&#039;] = &#039;Heptagon&#039;;
$txt&#91;&#039;puzzle_octagon&#039;] = &#039;Octagon&#039;;
$txt&#91;&#039;puzzle_1&#039;] = &#039;ONE&#039;;
$txt&#91;&#039;puzzle_2&#039;] = &#039;TWO&#039;;
$txt&#91;&#039;puzzle_3&#039;] = &#039;THREE&#039;;
$txt&#91;&#039;puzzle_4&#039;] = &#039;FOUR&#039;;
$txt&#91;&#039;puzzle_5&#039;] = &#039;FIVE&#039;;
$txt&#91;&#039;puzzle_6&#039;] = &#039;SIX&#039;;
$txt&#91;&#039;puzzle_7&#039;] = &#039;SEVEN&#039;;
$txt&#91;&#039;puzzle_8&#039;] = &#039;EIGHT&#039;;
$txt&#91;&#039;puzzle_9&#039;] = &#039;NINE&#039;;
$txt&#91;&#039;puzzle_10&#039;] = &#039;TEN&#039;;
$txt&#91;&#039;puzzle_11&#039;] = &#039;ELEVEN&#039;;
$txt&#91;&#039;puzzle_12&#039;] = &#039;TWELVE&#039;;
$txt&#91;&#039;puzzle_13&#039;] = &#039;THIRTEEN&#039;;
$txt&#91;&#039;puzzle_14&#039;] = &#039;FOURTEEN&#039;;
$txt&#91;&#039;puzzle_15&#039;] = &#039;FIFTEEN&#039;;
$txt&#91;&#039;puzzle_16&#039;] = &#039;SIXTEEN&#039;;
$txt&#91;&#039;puzzle_17&#039;] = &#039;SEVENTEEN&#039;;
$txt&#91;&#039;puzzle_18&#039;] = &#039;EIGHTEEN&#039;;
$txt&#91;&#039;puzzle_19&#039;] = &#039;NINETEEN&#039;;


]]&gt;
&lt;/add&gt;
&lt;/operation&gt;
&lt;/file&gt;
- &lt;file name=&quot;$themedir/languages/Modifications.english-utf8.php&quot; error=&quot;skip&quot;&gt;
- &lt;operation error=&quot;fatal&quot;&gt;
&lt;search position=&quot;end&quot; regexp=&quot;false&quot; whitespace=&quot;exact&quot; /&gt;
- &lt;add&gt;
- &lt;![CDATA[
$txt&#91;&#039;puzzle_colors&#039;] = &#039;Which word is the same as its color&#039;;
$txt&#91;&#039;puzzle_math&#039;] = &#039;What is the sum of (as a number)&#039;;
$txt&#91;&#039;puzzle_shapes&#039;] = &#039;How many %s does a %s have?&#039;;
$txt&#91;&#039;puzzle_shapes2&#039;] = &#039;How many %s does an %s have?&#039;;
$txt&#91;&#039;puzzle_sides&#039;] = &#039;sides&#039;;
$txt&#91;&#039;puzzle_corners&#039;] = &#039;corners&#039;;
$txt&#91;&#039;puzzle_incomplete&#039;] = &#039;You did not complete the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_incorrect&#039;] = &#039;You incorrectly answered the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_antibot&#039;] = &#039;Anti-bot measure&#039;;
$txt&#91;&#039;puzzle_red&#039;] = &#039;Red&#039;;
$txt&#91;&#039;puzzle_orange&#039;] = &#039;Orange&#039;;
$txt&#91;&#039;puzzle_yellow&#039;] = &#039;Yellow&#039;;
$txt&#91;&#039;puzzle_green&#039;] = &#039;Green&#039;;
$txt&#91;&#039;puzzle_blue&#039;] = &#039;Blue&#039;;
$txt&#91;&#039;puzzle_purple&#039;] = &#039;Purple&#039;;
$txt&#91;&#039;puzzle_pink&#039;] = &#039;Pink&#039;;
$txt&#91;&#039;puzzle_black&#039;] = &#039;Black&#039;;
$txt&#91;&#039;puzzle_grey&#039;] = &#039;Grey&#039;;
$txt&#91;&#039;puzzle_triange&#039;] = &#039;Triangle&#039;;
$txt&#91;&#039;puzzle_square&#039;] = &#039;Square&#039;;
$txt&#91;&#039;puzzle_rectangle&#039;] = &#039;Rectangle&#039;;
$txt&#91;&#039;puzzle_pentagon&#039;] = &#039;Pentagon&#039;;
$txt&#91;&#039;puzzle_hexagon&#039;] = &#039;Hexagon&#039;;
$txt&#91;&#039;puzzle_heptagon&#039;] = &#039;Heptagon&#039;;
$txt&#91;&#039;puzzle_octagon&#039;] = &#039;Octagon&#039;;
$txt&#91;&#039;puzzle_1&#039;] = &#039;ONE&#039;;
$txt&#91;&#039;puzzle_2&#039;] = &#039;TWO&#039;;
$txt&#91;&#039;puzzle_3&#039;] = &#039;THREE&#039;;
$txt&#91;&#039;puzzle_4&#039;] = &#039;FOUR&#039;;
$txt&#91;&#039;puzzle_5&#039;] = &#039;FIVE&#039;;
$txt&#91;&#039;puzzle_6&#039;] = &#039;SIX&#039;;
$txt&#91;&#039;puzzle_7&#039;] = &#039;SEVEN&#039;;
$txt&#91;&#039;puzzle_8&#039;] = &#039;EIGHT&#039;;
$txt&#91;&#039;puzzle_9&#039;] = &#039;NINE&#039;;
$txt&#91;&#039;puzzle_10&#039;] = &#039;TEN&#039;;
$txt&#91;&#039;puzzle_11&#039;] = &#039;ELEVEN&#039;;
$txt&#91;&#039;puzzle_12&#039;] = &#039;TWELVE&#039;;
$txt&#91;&#039;puzzle_13&#039;] = &#039;THIRTEEN&#039;;
$txt&#91;&#039;puzzle_14&#039;] = &#039;FOURTEEN&#039;;
$txt&#91;&#039;puzzle_15&#039;] = &#039;FIFTEEN&#039;;
$txt&#91;&#039;puzzle_16&#039;] = &#039;SIXTEEN&#039;;
$txt&#91;&#039;puzzle_17&#039;] = &#039;SEVENTEEN&#039;;
$txt&#91;&#039;puzzle_18&#039;] = &#039;EIGHTEEN&#039;;
$txt&#91;&#039;puzzle_19&#039;] = &#039;NINETEEN&#039;;


]]&gt;
&lt;/add&gt;
&lt;/operation&gt;
&lt;/file&gt;
- &lt;file name=&quot;$themedir/languages/Modifications.english_british.php&quot; error=&quot;skip&quot;&gt;
- &lt;operation error=&quot;fatal&quot;&gt;
&lt;search position=&quot;end&quot; regexp=&quot;false&quot; whitespace=&quot;exact&quot; /&gt;
- &lt;add&gt;
- &lt;![CDATA[
$txt&#91;&#039;puzzle_colors&#039;] = &#039;Which word is the same as its color&#039;;
$txt&#91;&#039;puzzle_math&#039;] = &#039;What is the sum of (as a number)&#039;;
$txt&#91;&#039;puzzle_shapes&#039;] = &#039;How many %s does a %s have?&#039;;
$txt&#91;&#039;puzzle_shapes2&#039;] = &#039;How many %s does an %s have?&#039;;
$txt&#91;&#039;puzzle_sides&#039;] = &#039;sides&#039;;
$txt&#91;&#039;puzzle_corners&#039;] = &#039;corners&#039;;
$txt&#91;&#039;puzzle_incomplete&#039;] = &#039;You did not complete the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_incorrect&#039;] = &#039;You incorrectly answered the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_antibot&#039;] = &#039;Anti-bot measure&#039;;
$txt&#91;&#039;puzzle_red&#039;] = &#039;Red&#039;;
$txt&#91;&#039;puzzle_orange&#039;] = &#039;Orange&#039;;
$txt&#91;&#039;puzzle_yellow&#039;] = &#039;Yellow&#039;;
$txt&#91;&#039;puzzle_green&#039;] = &#039;Green&#039;;
$txt&#91;&#039;puzzle_blue&#039;] = &#039;Blue&#039;;
$txt&#91;&#039;puzzle_purple&#039;] = &#039;Purple&#039;;
$txt&#91;&#039;puzzle_pink&#039;] = &#039;Pink&#039;;
$txt&#91;&#039;puzzle_black&#039;] = &#039;Black&#039;;
$txt&#91;&#039;puzzle_grey&#039;] = &#039;Grey&#039;;
$txt&#91;&#039;puzzle_triange&#039;] = &#039;Triangle&#039;;
$txt&#91;&#039;puzzle_square&#039;] = &#039;Square&#039;;
$txt&#91;&#039;puzzle_rectangle&#039;] = &#039;Rectangle&#039;;
$txt&#91;&#039;puzzle_pentagon&#039;] = &#039;Pentagon&#039;;
$txt&#91;&#039;puzzle_hexagon&#039;] = &#039;Hexagon&#039;;
$txt&#91;&#039;puzzle_heptagon&#039;] = &#039;Heptagon&#039;;
$txt&#91;&#039;puzzle_octagon&#039;] = &#039;Octagon&#039;;
$txt&#91;&#039;puzzle_1&#039;] = &#039;ONE&#039;;
$txt&#91;&#039;puzzle_2&#039;] = &#039;TWO&#039;;
$txt&#91;&#039;puzzle_3&#039;] = &#039;THREE&#039;;
$txt&#91;&#039;puzzle_4&#039;] = &#039;FOUR&#039;;
$txt&#91;&#039;puzzle_5&#039;] = &#039;FIVE&#039;;
$txt&#91;&#039;puzzle_6&#039;] = &#039;SIX&#039;;
$txt&#91;&#039;puzzle_7&#039;] = &#039;SEVEN&#039;;
$txt&#91;&#039;puzzle_8&#039;] = &#039;EIGHT&#039;;
$txt&#91;&#039;puzzle_9&#039;] = &#039;NINE&#039;;
$txt&#91;&#039;puzzle_10&#039;] = &#039;TEN&#039;;
$txt&#91;&#039;puzzle_11&#039;] = &#039;ELEVEN&#039;;
$txt&#91;&#039;puzzle_12&#039;] = &#039;TWELVE&#039;;
$txt&#91;&#039;puzzle_13&#039;] = &#039;THIRTEEN&#039;;
$txt&#91;&#039;puzzle_14&#039;] = &#039;FOURTEEN&#039;;
$txt&#91;&#039;puzzle_15&#039;] = &#039;FIFTEEN&#039;;
$txt&#91;&#039;puzzle_16&#039;] = &#039;SIXTEEN&#039;;
$txt&#91;&#039;puzzle_17&#039;] = &#039;SEVENTEEN&#039;;
$txt&#91;&#039;puzzle_18&#039;] = &#039;EIGHTEEN&#039;;
$txt&#91;&#039;puzzle_19&#039;] = &#039;NINETEEN&#039;;


]]&gt;
&lt;/add&gt;
&lt;/operation&gt;
&lt;/file&gt;
- &lt;file name=&quot;$themedir/languages/Modifications.english_british-utf8.php&quot; error=&quot;skip&quot;&gt;
- &lt;operation error=&quot;fatal&quot;&gt;
&lt;search position=&quot;end&quot; regexp=&quot;false&quot; whitespace=&quot;exact&quot; /&gt;
- &lt;add&gt;
- &lt;![CDATA[
$txt&#91;&#039;puzzle_colors&#039;] = &#039;Which word is the same as its color&#039;;
$txt&#91;&#039;puzzle_math&#039;] = &#039;What is the sum of (as a number)&#039;;
$txt&#91;&#039;puzzle_shapes&#039;] = &#039;How many %s does a %s have?&#039;;
$txt&#91;&#039;puzzle_shapes2&#039;] = &#039;How many %s does an %s have?&#039;;
$txt&#91;&#039;puzzle_sides&#039;] = &#039;sides&#039;;
$txt&#91;&#039;puzzle_corners&#039;] = &#039;corners&#039;;
$txt&#91;&#039;puzzle_incomplete&#039;] = &#039;You did not complete the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_incorrect&#039;] = &#039;You incorrectly answered the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_antibot&#039;] = &#039;Anti-bot measure&#039;;
$txt&#91;&#039;puzzle_red&#039;] = &#039;Red&#039;;
$txt&#91;&#039;puzzle_orange&#039;] = &#039;Orange&#039;;
$txt&#91;&#039;puzzle_yellow&#039;] = &#039;Yellow&#039;;
$txt&#91;&#039;puzzle_green&#039;] = &#039;Green&#039;;
$txt&#91;&#039;puzzle_blue&#039;] = &#039;Blue&#039;;
$txt&#91;&#039;puzzle_purple&#039;] = &#039;Purple&#039;;
$txt&#91;&#039;puzzle_pink&#039;] = &#039;Pink&#039;;
$txt&#91;&#039;puzzle_black&#039;] = &#039;Black&#039;;
$txt&#91;&#039;puzzle_grey&#039;] = &#039;Grey&#039;;
$txt&#91;&#039;puzzle_triange&#039;] = &#039;Triangle&#039;;
$txt&#91;&#039;puzzle_square&#039;] = &#039;Square&#039;;
$txt&#91;&#039;puzzle_rectangle&#039;] = &#039;Rectangle&#039;;
$txt&#91;&#039;puzzle_pentagon&#039;] = &#039;Pentagon&#039;;
$txt&#91;&#039;puzzle_hexagon&#039;] = &#039;Hexagon&#039;;
$txt&#91;&#039;puzzle_heptagon&#039;] = &#039;Heptagon&#039;;
$txt&#91;&#039;puzzle_octagon&#039;] = &#039;Octagon&#039;;
$txt&#91;&#039;puzzle_1&#039;] = &#039;ONE&#039;;
$txt&#91;&#039;puzzle_2&#039;] = &#039;TWO&#039;;
$txt&#91;&#039;puzzle_3&#039;] = &#039;THREE&#039;;
$txt&#91;&#039;puzzle_4&#039;] = &#039;FOUR&#039;;
$txt&#91;&#039;puzzle_5&#039;] = &#039;FIVE&#039;;
$txt&#91;&#039;puzzle_6&#039;] = &#039;SIX&#039;;
$txt&#91;&#039;puzzle_7&#039;] = &#039;SEVEN&#039;;
$txt&#91;&#039;puzzle_8&#039;] = &#039;EIGHT&#039;;
$txt&#91;&#039;puzzle_9&#039;] = &#039;NINE&#039;;
$txt&#91;&#039;puzzle_10&#039;] = &#039;TEN&#039;;
$txt&#91;&#039;puzzle_11&#039;] = &#039;ELEVEN&#039;;
$txt&#91;&#039;puzzle_12&#039;] = &#039;TWELVE&#039;;
$txt&#91;&#039;puzzle_13&#039;] = &#039;THIRTEEN&#039;;
$txt&#91;&#039;puzzle_14&#039;] = &#039;FOURTEEN&#039;;
$txt&#91;&#039;puzzle_15&#039;] = &#039;FIFTEEN&#039;;
$txt&#91;&#039;puzzle_16&#039;] = &#039;SIXTEEN&#039;;
$txt&#91;&#039;puzzle_17&#039;] = &#039;SEVENTEEN&#039;;
$txt&#91;&#039;puzzle_18&#039;] = &#039;EIGHTEEN&#039;;
$txt&#91;&#039;puzzle_19&#039;] = &#039;NINETEEN&#039;;


]]&gt;
&lt;/add&gt;
&lt;/operation&gt;
&lt;/file&gt;
&lt;/modification&gt;

نوید
11-30-2009, 04:04 AM
سلام
راهنمای زیر را مطالعه نمایید
<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b>

reza_pa48
12-06-2009, 02:51 PM
سلام
طبق راهنمایی هایی که فرمودین من شروع کردم به نصب دستی مد
چند سطر اولشو اینجا می ذارم

&lt;file name=&quot;$sourcedir/Register.php&quot;&gt;
&lt;operation&gt;
&lt;search position=&quot;after&quot;&gt;&lt;![CDATA[// Are they under age, and under age users are banned?
]]&gt;&lt;/search&gt;
&lt;add&gt;&lt;![CDATA[
// Start of Anti-bot Registration Puzzles Mod
// Checks whether field was completed, if not it goes to an error screen
if(empty($_SESSION&#91;&#039;puzzle_dynamic_input&#039;]) || empty($_POST[$_SESSION&#91;&#039;puzzle_dynamic_input&#039;]]))
fatal_lang_error(&#039;puzzle_incomplete&#039;, false);
// If puzzle was answered incorrectly
elseif (md5(strtolower($_POST[$_SESSION&#91;&#039;puzzle_dynamic_input&#039;]])) != $_SESSION&#91;&#039;puzzle_code&#039;])
fatal_lang_error(&#039;puzzle_incorrect&#039;, false);
// End of Anti-bot Registration Puzzles Mod

]]&gt;&lt;/add&gt;
&lt;/operation&gt;
خوب مشکل اول اینه
1-در دایرکتوری فروم فایلی به اسم register.php وجود ندارد که من اونو ویرایش کنم

نوید
12-07-2009, 03:33 AM
سلام
نوشته قبلش پوشه source

reza_pa48
12-07-2009, 06:32 PM
خوب منظورش از source پوشه تمپلت هست یا روت فروم؟
چون تو روت فوروم که چیزی نیست تو روت تمپلت هم register.template.php هست

reza_pa48
12-09-2009, 08:23 PM
کسی نمی خواد جواب بده؟تا من از شر این اسپم ها خلاص شم؟

مهدی.
12-09-2009, 10:56 PM
سلام

شما از SMF استفاده میکنید ؟!
کلاً 6 پوشه در روت SMF هست که یکیش sources هست! و البته داخلش فایل مربوطه هست!

پاییزتان پر مهر

prin.ir
01-11-2010, 08:19 PM
با سلام

تغییراتی که باید اعمال کنید اینگونه است

در پوشه Sources فایل Register.php را باز کنید و این کد را پیدا کنید:

// Are they under age, and under age users are banned?
و قبل از آن کد زیر را قرار دهید

// Start of Anti-bot Registration Puzzles Mod
// Checks whether field was completed, if not it goes to an error screen
if(empty($_SESSION&#91;&#039;puzzle_dynamic_input&#039;]) || empty($_POST[$_SESSION&#91;&#039;puzzle_dynamic_input&#039;]]))
fatal_lang_error(&#039;puzzle_incomplete&#039;, false);
// If puzzle was answered incorrectly
elseif (md5(strtolower($_POST[$_SESSION&#91;&#039;puzzle_dynamic_input&#039;]])) != $_SESSION&#91;&#039;puzzle_code&#039;])
fatal_lang_error(&#039;puzzle_incorrect&#039;, false);
// End of Anti-bot Registration Puzzles Mod

این کد را پیدا کنید:

// Under age restrictions?
if (!empty($modSettings&#91;&#039;coppaAge&#039;]))
{
$context&#91;&#039;show_coppa&#039;] = true;
$context&#91;&#039;coppa_desc&#039;] = sprintf($txt&#91;&#039;register_age_confirmation&#039;], $modSettings&#91;&#039;coppaAge&#039;]);
}

وبعد از آن این کد را قرار دهید:


// Start of Anti-bot Registration Puzzles Mod
$puzzles = array(
&#039;shapes&#039; =&gt; create_function(&#039;&#039;, &#039;
$a = array(0 =&gt; &quot;sides&quot;, 1 =&gt; &quot;corners&quot;);
$b = rand(0,1);
$c = array(\&#039;square\&#039; =&gt; 4, \&#039;rectangle\&#039; =&gt; 4, \&#039;pentagon\&#039; =&gt; 5,
\&#039;hexagon\&#039; =&gt; 6, \&#039;heptagon\&#039; =&gt; 7, \&#039;octagon\&#039; =&gt; 8);

$d = array_rand($c); // randomly select a shape
$e = $c[$d]; // the answer
global $txt;
$txt[\&#039;puzzle_shapes\&#039;] = sprintf(($d == \&#039;octagon\&#039; ? $txt[\&#039;puzzle_shapes2\&#039;] : $txt[\&#039;puzzle_shapes\&#039;]), $txt[\&#039;puzzle_\&#039;.$a[$b]], $txt[\&#039;puzzle_\&#039;.$d]);
return array(\&#039;shapes\&#039;, \&#039;\&#039;, md5($e));
&#039;),
&#039;math&#039; =&gt; create_function(&#039;&#039;, &#039;
$a = array();
$a[0] = rand(5,19);
$a[1] = rand(1,$a[0]-2);
$a[2] = rand(1,($a[0]-$a[1]-2));
$a[3] = array(&quot;+&quot;,&quot;-&quot;);
$a[4] = $a[3][array_rand($a[3])];
$a[5] = $a[3][array_rand($a[3])];
$d = &quot;$a[0]$a[4] $a[1] $a[5] $a[2]&quot;;
eval(&quot;\$d=&quot; . $d . &quot;;&quot;);
return array(\&#039;math\&#039;, &quot;&lt;span style=\&quot;font-weight:bold;\&quot;&gt;$a[0] $a[4] $a[1] $a[5] $a[2] =&lt;/span&gt;&quot;, md5($d));
&#039;),
&#039;math2&#039; =&gt; create_function(&#039;&#039;, &#039;
$a = array();
$a[0] = rand(5,19);
$a[1] = rand(1,$a[0]-2);
$a[2] = rand(1,($a[0]-$a[1]-2));
$a[3] = array(&quot;+&quot;,&quot;-&quot;);
$a[4] = $a[3][array_rand($a[3])];
$a[5] = $a[3][array_rand($a[3])];
$c = array(rand(0,1),rand(0,1),rand(0,1));
$d = &quot;$a[0]$a[4] $a[1] $a[5] $a[2]&quot;;
// Whats the sum/answer
eval(&quot;\$d=&quot; . $d . &quot;;&quot;);
// Access txt strings
global $txt;
return array(\&#039;math\&#039;, \&#039;&lt;span style=&quot;font-weight:bold;&quot;&gt;\&#039;.($c[0] ? $a[0] : $txt[\&#039;puzzle_\&#039;.$a[0]]).\&#039; \&#039;.$a[4].\&#039; \&#039;.($c[1] ? $a[1] : $txt[\&#039;puzzle_\&#039;.$a[1]]).\&#039; \&#039;.$a[5].\&#039; \&#039;.($c[2] ? $a[2] : $txt[\&#039;puzzle_\&#039;.$a[2]]).\&#039; = &lt;/span&gt;\&#039;, md5($d));
&#039;),
&#039;colors&#039; =&gt; create_function(&#039;&#039;, &#039;
$a = array(\&#039;red\&#039; =&gt; \&#039;#FF0033\&#039;, \&#039;orange\&#039; =&gt; \&#039;#FF6600\&#039;, \&#039;yellow\&#039; =&gt; \&#039;#FFFF33\&#039;, \&#039;green\&#039; =&gt; \&#039;#006600\&#039;, \&#039;blue\&#039; =&gt; \&#039;#0033FF\&#039;, \&#039;purple\&#039; =&gt; \&#039;#663366\&#039;, \&#039;pink\&#039; =&gt; \&#039;#FF9999\&#039;, \&#039;black\&#039; =&gt; \&#039;#000000\&#039;, \&#039;grey\&#039; =&gt; \&#039;#999999\&#039;);

// Select them randomly
$b = array_rand($a,8);
$c = $b[rand(0,7)]; // the answer
$d = \&#039;\&#039;;
// Access txt strings
global $txt;
for($i=0;$i&lt;=7;$i++)
{
// Color or hex? randomly change
$e = rand(0,1);
$j = $i+1;
if($c == $b[$i] || $c == $b[$j])
$d .= \&#039;&lt;span style=&quot;font-weight:bold;color:\&#039;. ($e ? $a[$c] : $c ) .\&#039;&quot;&gt;\&#039;. $txt[\&#039;puzzle_\&#039;.$c] .\&#039;&lt;/span&gt; \&#039;;
else
$d .= \&#039;&lt;span style=&quot;font-weight:bold;color:\&#039;. ($e ? $a[$b[$i]] : $b[$i] ) .\&#039;&quot;&gt;\&#039;. $txt[\&#039;puzzle_\&#039;.$b[$j]] .\&#039;&lt;/span&gt; \&#039;;
$i++;
}
unset($a,$b,$e,$i,$j);
return array(\&#039;colors\&#039;, $d, md5(strtolower($txt[\&#039;puzzle_\&#039;.$c])));
&#039;),
);
// Generate a new puzzle code every time
$_SESSION&#91;&#039;puzzle_dynamic_input&#039;] = $_SESSION&#91;&#039;puzzle_code&#039;] = &#039;&#039;;

// Generate Random field name
$range1 = range(&#039;a&#039;, &#039;z&#039;);
$range2 = range(0, 9);
// Must start with a letter not a digit
$_SESSION&#91;&#039;puzzle_dynamic_input&#039;] = $range1[array_rand($range1)];
// Length over 8
$rand = rand(8,12);
for($i=0;$i&lt;=$rand;$i++)
$_SESSION&#91;&#039;puzzle_dynamic_input&#039;] .= (rand(0, 1) == 0) ? $range1[array_rand($range1)] : $range2[array_rand($range2)];

unset($range1, $range2, $rand);

// Choose a puzzle
$context&#91;&#039;puzzle&#039;] = $puzzles[array_rand($puzzles)]();
$_SESSION&#91;&#039;puzzle_code&#039;] = $context&#91;&#039;puzzle&#039;][2];
$context&#91;&#039;puzzle&#039;][2] = $_SESSION&#91;&#039;puzzle_dynamic_input&#039;];
unset($puzzles);
// End of Anti-bot Registration Puzzles Mod


درون پوشه قالب سایتتون اگه فایل Register.template.php هست این تغییرات را در آن ایجاد کنید و اگر نیست در پوشه فالب پیش فرض در فایل Register.template.php این تغییرات را اعمال کنید.

کد زیر را پیدا کنید:


// Are there age restrictions in place?
if (!empty($modSettings&#91;&#039;coppaAge&#039;]))


و قبل از آن این کد را قرار دهید


// Start of Anti-bot Registration Puzzles Mod
echo &#039;&lt;tr valign=&quot;top&quot;&gt;
&lt;td width=&quot;40%&quot; valign=&quot;top&quot;&gt;
&lt;b&gt;&#039;.$txt&#91;&#039;puzzle_&#039;.$context&#91;&#039;puzzle&#039;][0]].&#039;&lt;/b&gt;&lt;br /&gt;
&#039;.$txt&#91;&#039;puzzle_antibot&#039;].&#039;
&lt;/td&gt;
&lt;td&gt;
&#039;. ( empty($context&#91;&#039;puzzle&#039;][1]) ? &#039;&#039; : $context&#91;&#039;puzzle&#039;][1].&#039;&lt;br /&gt;&#039; ) .&#039;
&lt;input type=&quot;text&quot; name=&quot;&#039;.$context&#91;&#039;puzzle&#039;][2].&#039;&quot; size=&quot;30&quot; value=&quot;&quot; tabindex=&quot;&#039;, $context&#91;&#039;tabindex&#039;]++, &#039;&quot; /&gt;
&lt;/td&gt;
&lt;/tr&gt;&#039;;
// End of Anti-bot Registration Puzzles Mod


در آخرین مرحله در فایل Modifications.english.php در پوشه languages در داخل پوشه قالب پیش فرض این تغییرات را ایجاد کنید

قبل از کد
?&gt;

این کد را قرار بدهید


$txt&#91;&#039;puzzle_colors&#039;] = &#039;Which word is the same as its color&#039;;
$txt&#91;&#039;puzzle_math&#039;] = &#039;What is the sum of (as a number)&#039;;
$txt&#91;&#039;puzzle_shapes&#039;] = &#039;How many %s does a %s have?&#039;;
$txt&#91;&#039;puzzle_shapes2&#039;] = &#039;How many %s does an %s have?&#039;;
$txt&#91;&#039;puzzle_sides&#039;] = &#039;sides&#039;;
$txt&#91;&#039;puzzle_corners&#039;] = &#039;corners&#039;;
$txt&#91;&#039;puzzle_incomplete&#039;] = &#039;You did not complete the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_incorrect&#039;] = &#039;You incorrectly answered the anti-bot puzzle. Please try again.&#039;;
$txt&#91;&#039;puzzle_antibot&#039;] = &#039;Anti-bot measure&#039;;
$txt&#91;&#039;puzzle_red&#039;] = &#039;Red&#039;;
$txt&#91;&#039;puzzle_orange&#039;] = &#039;Orange&#039;;
$txt&#91;&#039;puzzle_yellow&#039;] = &#039;Yellow&#039;;
$txt&#91;&#039;puzzle_green&#039;] = &#039;Green&#039;;
$txt&#91;&#039;puzzle_blue&#039;] = &#039;Blue&#039;;
$txt&#91;&#039;puzzle_purple&#039;] = &#039;Purple&#039;;
$txt&#91;&#039;puzzle_pink&#039;] = &#039;Pink&#039;;
$txt&#91;&#039;puzzle_black&#039;] = &#039;Black&#039;;
$txt&#91;&#039;puzzle_grey&#039;] = &#039;Grey&#039;;
$txt&#91;&#039;puzzle_triange&#039;] = &#039;Triangle&#039;;
$txt&#91;&#039;puzzle_square&#039;] = &#039;Square&#039;;
$txt&#91;&#039;puzzle_rectangle&#039;] = &#039;Rectangle&#039;;
$txt&#91;&#039;puzzle_pentagon&#039;] = &#039;Pentagon&#039;;
$txt&#91;&#039;puzzle_hexagon&#039;] = &#039;Hexagon&#039;;
$txt&#91;&#039;puzzle_heptagon&#039;] = &#039;Heptagon&#039;;
$txt&#91;&#039;puzzle_octagon&#039;] = &#039;Octagon&#039;;
$txt&#91;&#039;puzzle_1&#039;] = &#039;ONE&#039;;
$txt&#91;&#039;puzzle_2&#039;] = &#039;TWO&#039;;
$txt&#91;&#039;puzzle_3&#039;] = &#039;THREE&#039;;
$txt&#91;&#039;puzzle_4&#039;] = &#039;FOUR&#039;;
$txt&#91;&#039;puzzle_5&#039;] = &#039;FIVE&#039;;
$txt&#91;&#039;puzzle_6&#039;] = &#039;SIX&#039;;
$txt&#91;&#039;puzzle_7&#039;] = &#039;SEVEN&#039;;
$txt&#91;&#039;puzzle_8&#039;] = &#039;EIGHT&#039;;
$txt&#91;&#039;puzzle_9&#039;] = &#039;NINE&#039;;
$txt&#91;&#039;puzzle_10&#039;] = &#039;TEN&#039;;
$txt&#91;&#039;puzzle_11&#039;] = &#039;ELEVEN&#039;;
$txt&#91;&#039;puzzle_12&#039;] = &#039;TWELVE&#039;;
$txt&#91;&#039;puzzle_13&#039;] = &#039;THIRTEEN&#039;;
$txt&#91;&#039;puzzle_14&#039;] = &#039;FOURTEEN&#039;;
$txt&#91;&#039;puzzle_15&#039;] = &#039;FIFTEEN&#039;;
$txt&#91;&#039;puzzle_16&#039;] = &#039;SIXTEEN&#039;;
$txt&#91;&#039;puzzle_17&#039;] = &#039;SEVENTEEN&#039;;
$txt&#91;&#039;puzzle_18&#039;] = &#039;EIGHTEEN&#039;;
$txt&#91;&#039;puzzle_19&#039;] = &#039;NINETEEN&#039;;


در صورتی که میخواهید این مد به صورت کاملا فارسی نمایش داده شود تغییرات مرحله آخر را در فایل Modifications.persian.php نیز انجام داده و عبارات آن را ترجمه کنید برای مثال


$txt&#91;&#039;puzzle_math&#039;] = &#039;What is the sum of (as a number)&#039;;
$txt&#91;&#039;puzzle_math&#039;] = &#039;حاصل عددی عبارت مقابل چیست؟ &#039;;

موفق باشید.