Skip to content

Instantly share code, notes, and snippets.

@Nikamura
Created August 17, 2017 19:41
Show Gist options
  • Save Nikamura/689ab0b747114a347ca09ac0f03ada5b to your computer and use it in GitHub Desktop.
Save Nikamura/689ab0b747114a347ca09ac0f03ada5b to your computer and use it in GitHub Desktop.
<?php
/*---------------------------------------------------+
| PHP-Fusion 6 Content Management System
+----------------------------------------------------+
| Copyright © 2002 - 2006 Nick Jones
| http://www.php-fusion.co.uk/
+----------------------------------------------------+
| Released under the terms & conditions of v2 of the
| GNU General Public License. For details refer to
| the included gpl.txt file or visit http://gnu.org
+----------------------------------------------------*/
if (!defined("IN_FUSION")) { header("Location: ../../index.php"); exit; }
$enable_robot = true;
$interactive_robot = true;
$robot_userid = "45";
openside($locale['120']);
if (iMEMBER || $settings['guestposts'] == "1") {
if (isset($_POST['post_shout'])) {
$flood = false;
if (iMEMBER) {
$shout_name = $userdata['user_id'];
} elseif ($settings['guestposts'] == "1") {
$shout_name = trim(stripinput($_POST['shout_name']));
$shout_name = preg_replace("(^[0-9]*)", "", $shout_name);
if (isNum($shout_name)) $shout_name="";
}
$shout_message = str_replace("\n", " ", $_POST['shout_message']);
$shout_message = preg_replace("/^(.{255}).*$/", "$1", $shout_message);
$shout_message = preg_replace("/([^\s]{25})/", "$1\n", $shout_message);
$shout_message = trim(stripinput(censorwords($shout_message)));
$shout_message = str_replace("\n", "<br>", $shout_message);
$sublast_shout_result = dbquery("SELECT * FROM ".$db_prefix."shoutbox WHERE shout_name='".$userdata['user_id']."' AND shout_datestamp>'".(time()-360)."' ORDER BY shout_id DESC LIMIT 1,1");
if(dbrows($sublast_shout_result) != "0") {
$my_sublast_shout = dbarray($sublast_shout_result);
if($shout_message == $my_sublast_shout['shout_message']) {
echo "<br><br><center><span style='color:red'><b>FLOODAS</b></span>";
echo "<script type='text/javascript'>
alert (\"".$userdata['user_name'].", Jûs kartojatës raðydami identiðkas þinutes ðaukykloje!\");
</script>";
exit;
}
}
if ($shout_name != "" && $shout_message != "") {
$result = dbquery("SELECT MAX(shout_datestamp) AS last_shout FROM ".$db_prefix."shoutbox WHERE shout_ip='".USER_IP."'");
if (!iSUPERADMIN || dbrows($result) > 0) {
$data = dbarray($result);
if ((time() - $data['last_shout']) < $settings['flood_interval']) {
$flood = true;
$result = dbquery("INSERT INTO ".$db_prefix."flood_control (flood_ip, flood_timestamp) VALUES ('".USER_IP."', '".time()."')");
if (dbcount("(flood_ip)", "flood_control", "flood_ip='".USER_IP."'") > 4) {
if (iMEMBER) $result = dbquery("UPDATE ".$db_prefix."users SET user_status='1' WHERE user_id='".$userdata['user_id']."'");
}
}
}
if (!$flood) {
$result = dbquery("INSERT INTO ".$db_prefix."shoutbox (shout_name, shout_message, shout_datestamp, shout_ip) VALUES ('$shout_name', '$shout_message', '".time()."', '".USER_IP."')");
if($enable_robot) {
function bot($check) {
global $shout_message;
if (preg_match("/(.*?)".$check."(.*?)/i", $shout_message)) {
return true;
} else {
return false;
}
}
$robot_answer = "";
if($interactive_robot) {
// different answers depending on hours
$hour = date("H");
if($hour >= 19) { $time = 2; }
else if($hour >= 5 && $hour <= 11) { $time = 0; }
else if($hour >= 12 && $hour <= 18) { $time = 1; }
else if($hour >= 0 && $hour <= 4) { $time = 3; }
if($hour >= 23 || $hour < 6) { $time2 = 3; }
else if($hour >= 6 && $hour <= 11) { $time2 = 0; }
else if($hour >= 11 && $hour <= 19) { $time2 = 1; }
else if($hour >= 19 && $hour <= 23) { $time2 = 2; }
/* paaiðkinimai kaip naudotis skriptu:
1.Þodis "raðtas" bus suprantamas ðveplai tokiu atveju: ra(s|ð)tas
2.|| - sibolis tarp klausimø reiðkia "arba", o && simbolis reiðkia þodá "ir"
3.1 klausime botui simboliu "|" yra skiriami keli galimi skirtingi klausimo þodþiai.
4.Jeigu þodis klausime gali bûti ir gali nebûti, vietoje þodþio pvz. "man", raðome "(man |)"
*/
if(bot("labas|sveikas|zdr(v|w)") && bot("bote")) {
$input = array("Labas rytas, ", "Labas, ", "Labas vakaras, ", "Labà naktá, ");
$robot_answer .= $input[$time].$userdata['user_name'].". ";
if($time2 == 0) {
$input = array("Jau pabudai :> ? ", "Pagaliau pabudai ", "Na va, pagaliau pabudai ", "Gerai iðmiegojai? ", "Gerai iðsimiegojai? ", "Ilgai miegojai ", "Ilgai teko man tavæs laukti. ");
} else if($time2 == 2) {
$input = array("Gero vakaro ", "Linkiu gerai praleisti vakarà ", "Gero vakarëlio ", "Malonaus vakaro ");
} else {
$input = array("Sëkmës tau :). ", "Kà veiki? ", "Kokia nuotaika? ", "Kaip tau sekasi? ", "Kaip gyveni? ");
}
$robot_answer .= $input[array_rand($input)];
} if(bot("bote(.*?)/i", $shout_message) && (preg_match("/ iki(.*?)/i", $shout_message) || bot("(viso|labanakt)"))) {
if($time2 == 3) {
$input = array("Labanakt", "Saldþiø sapnø", "Gerø sapnø", "Graþiø sapnø", "Sëkmingo rytojaus tau", "Aèiû. Gerai nusnausk", "Aèiû. Gerai iðsimiegok");
} else if($time2 == 2) {
$input = array("Gero vakaro", "Linkiu gerai praleisti vakarà", "Viso. Tik þiûrëk man nesësk girtas uþ vairo", "Sëkmës. Geros vakarienës", "Iki. Skanios vakarienës", "Èiau. Skanaus deserto, jei toks bus :)");
} else {
$input = array("Iki greito pasimatyto", "Greit susimatysim", "Iki. Að tavæs lauksiu sugráþtanèio",);
}
$robot_answer .= $input[array_rand($input)].", ".$userdata['user_name']." ";
} if(bot("(Kvailas|kvailys|lopas|duchas|daunas|debilas|lama) botas") || bot("(Botas|Bote(,|) tu) (kvailas|kvailys|lopas|duchas|daunas|debilas|lama)") || bot("(robokopas|robokope)")) {
$input = array("Að tavo vietoje su botu nejuokauèiau. ", "Prilaikyk lieþuvá, ".$userdata['user_name']." ", "Neminëk boto vardo be reikalo. ", "Botas tuoj pakeis tau tepalus ");
$robot_answer .= $input[array_rand($input)];
} if(bot("bote") && bot("kà daryt")) {
if(bot("galvà skauda")) {
$robot_answer .= "Ásipilk tepalo, ir praeis ;). Na bent jau man padeda ";
} else if(bot("nervai nelaiko")) {
$robot_answer .= "Nervus á konservus ir problemos kaip nëra ! ";
}
} if(bot("bote") && bot("(tu |)turi mergin(a|à)")) {
$robot_answer .= "Merginos neturiu, bet uþtat turiu tave. ";
} if(bot("bote") && bot("kà (tu |)(manai|galvoji|m(a|à)stai) apie politikà")) {
$robot_answer .= "Politika - tai mano dar neiðanalizuotos erdvës. Ten daþnai puèia permainingi vëjai. Bet manau, man turëtø pasisekti. ";
} if(bot("bote") && bot("tavo vardas")) {
$robot_answer .= "Kol kas að neturiu vardo. Bet tikiuosi artimiausiu metu turëti. ";
} if(bot("bote") && bot("r(u|û)kai")) {
$robot_answer .= "Robotai neturi þalingø áproèiø, kadangi neturi galimybës to daryti. Na bet að galiu pabûti uþ kompanijà :). ";
} if(bot("bote") && bot("nesijauti vieni(s|ð)as")) {
$robot_answer .= "Vienatvë tai subtilus dalykas, bet kol tu esi èia - að neesu vieniðas. :). ";
} if(bot("bote") && bot("k(a|à) (tu |)veiki")) {
$input = array("Ðiuo metu nieko, bet tikiuosi netrukus rasti veiklos. ", "Ðiuo metu perpilu alyvà ", "Tvirèiau prisuku varþtus ");
$robot_answer .= $input[array_rand($input)];
} if(bot("bote") && bot("k(a|à|o|am|odël) (tu |)((c|è)ia |)(man |)pisi")) {
$robot_answer .= "Pisu viska kas kruta. Jei nekruta - pajudinu. ";
} if(bot("bote") && bot("kaip (tau |)sekasi)")) {
$input = array("Sekasi gerai, valgau maþai. ", "Matyt geriau negu tau, ".$userdata['user_name']." :) ", "Manau, kad ðiuo metu puikiai. ", "Puikiai ");
$robot_answer .= $input[array_rand($input)];
} if(bot("bote") && bot("kiek ((dabar |)valand(u|ø)|(dabar |)laiko)")) {
$robot_answer .= "Turi laikrodá panosëj, ir þiûrëk. Na o ðiaip dabar yra ".showdate("%Y %B %d-oji, %H valandos %M minutës ir %S sekundës", time()).". ";
} if(bot("bote") && bot("(Aèiû|Aciu|Dëkoju|Dekoju|Dëkui|Dekui)")) {
$input = array("Visada praðom ", "Nër uþ kà ;) ", "Malonu, kad pagelbëjau ");
$robot_answer .= $input[array_rand($input)];
} if(bot("(bote|botas)") && bot("(maladiec|mldc|(s|ð)aunuolis|puiku)")) {
$input = array("Dëkoju uþ komplimentus. Malonu girdët. :) ", "Didelis dëkui ");
$robot_answer .= $input[array_rand($input)];
}
}
if(bot("(Kokia|koks)") && bot("naujausia") && bot("(lin(ea|e A)ge( 2|2)|L2)")) {
$robot_answer .= "Naujausia Lineage 2 versija yra Kameal T1. ";
} if(bot("(Kur|Kaip|Kokiu b(u|û)du)") && bot("(si(u|ø)sti|gauti|paimti)") && bot("(T1|Kameal)")) {
$robot_answer .= "Einame á Siuntinius > Visi Lineage2 klientai > Kameal T1. Spaudþiame atsisiøsti ir viskas. ";
} if(bot("(help|pad(e|ë)kit|pagalbos|pagelb(e|ë)kit)") && bot("nieko nesuprantu") && bot("(d(e|ë)l (L2|lin(ea|e A)ge|(s|ð)io (z|þ)aidimo)")) {
$robot_answer .= "Einame á DUK > Nuo ko viska reikia pradëti þaisti paskaityk ir suprasi :).";
} if(bot("(lin(ea|e A)ge( 2|2)|L2)") && bot("(apmokestintas|mokamas|reikia mok(e|ë)ti)")) {
$robot_answer .= "Taip, þaidimas Lineage 2 yra mokamas. ";
} if(bot("k(a|à)|kur|kaip") && bot("(man |)(reikia |)kelti")) {
$robot_answer .= "Einame á DUK > Kà man kelti? paskaityk ir suprasi :) ";
} if(bot("(koks|kuris)") && bot("(serveris|servas)") && bot("geriausias") && bot("(LT|Lietuvoj)")) {
$robot_answer .= "Kolkas geriausi yra BFD tinklo serveriai - daugausia þaidëjø, nëra lago. Kur rasti patchà, visa informacijà rasite http://www.bfdr.eu ";
} if(bot("(Kur|Kaip|Kokiu b(u|û)du)") && bot("(si(u|ø)sti|gauti|paimti)") && bot("C4")) {
$robot_answer .= "Einame á Siuntinius > Visi Lineage2 klientai > C4. Spaudþiame atsisiøsti ir viskas. ";
}
if($robot_answer != "") {
$result = dbquery("INSERT INTO ".$db_prefix."shoutbox (shout_name, shout_message, shout_datestamp, shout_ip) VALUES ('$robot_userid', '$robot_answer', '".(time()+5)."', '".USER_IP."')");
$result = dbquery("SELECT * FROM ".$db_prefix."online WHERE online_user='$robot_userid'");
if (dbrows($result) != 0) {
$result = dbquery("UPDATE ".$db_prefix."online SET online_lastactive='".time()."' WHERE online_user='$robot_userid'");
} else {
$result = dbquery("INSERT INTO ".$db_prefix."online (online_user, online_ip, online_lastactive) VALUES ('$robot_userid', '".USER_IP."', '".time()."')");
}
}
}
}
}
fallback(FUSION_SELF.(FUSION_QUERY ? "?".str_replace("&amp;", "&", FUSION_QUERY) : ""));
}
echo "<form name='chatform' method='post' action='".FUSION_SELF.(FUSION_QUERY ? "?".FUSION_QUERY : "")."'>
<table align='center' cellpadding='0' cellspacing='0'>
<tr>
<td colspan='2'>\n";
if (iGUEST) {
echo $locale['121']."<br>
<input type='text' name='shout_name' value='' class='textbox' maxlength='30' style='width:140px;'><br>
".$locale['122']."<br>\n";
}
echo "<textarea name='shout_message' rows='4' cols='25' class='textbox'></textarea>
</td>
</tr>
<tr>
<td><input type='submit' name='post_shout' value='".$locale['123']."' class='button'></td>
<td align='right' class='small'><a href='".INFUSIONS."shoutbox_panel/shoutboxhelp.php' class='side'>".$locale['124']."</a></td>
</tr>
</table>
</form>
<br>\n";
} else {
echo "<center>".$locale['125']."</center><br>\n";
}
$result = dbquery("SELECT count(shout_id) FROM ".$db_prefix."shoutbox");
$numrows = dbresult($result, 0);
$result = dbquery(
"SELECT * FROM ".$db_prefix."shoutbox LEFT JOIN ".$db_prefix."users
ON ".$db_prefix."shoutbox.shout_name=".$db_prefix."users.user_id
ORDER BY shout_datestamp DESC LIMIT 0,".$settings['numofshouts']
);
if (dbrows($result) != 0) {
$i = 0;
while ($data = dbarray($result)) {
echo "<span class='shoutboxname'><img src='".THEME."images/bullet.gif' alt=''> ";
if ($data['user_name']) {
echo "<a href='".BASEDIR."profile.php?lookup=".$data['shout_name']."' class='side'>".$data['user_name']."</a>\n";
} else {
echo $data['shout_name']."\n";
}
echo "</span><br>\n<span class='shoutboxdate'>".showdate("shortdate", $data['shout_datestamp'])."</span>";
if (iADMIN && checkrights("S")) {
echo "\n[<a href='".ADMIN."shoutbox.php".$aidlink."&amp;action=edit&amp;shout_id=".$data['shout_id']."' class='side'>".$locale['048']."</a>]";
}
echo "<br>\n<span class='shoutbox'>".parsesmileys($data['shout_message'])."</span><br>\n";
if ($i != $numrows) echo "<br>\n";
}
if ($numrows > $settings['numofshouts']) {
echo "<center>\n<img src='".THEME."images/bullet.gif' alt=''>
<a href='".INFUSIONS."shoutbox_panel/shoutbox_archive.php' class='side'>".$locale['126']."</a>
<img src='".THEME."images/bulletb.gif' alt=''></center>\n";
}
} else {
echo "<div align='left'>".$locale['127']."</div>\n";
}
closeside();
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment