4 define("HAPPY","UIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII");
5 define("LOVE","mam vas rad.majte ma radi");
6 define("DRUGGED","som na kasu, serte na mna");
7 define("ANGRY","23 stoporenych volskych kokotov do riti a kotvu do chrbta. vam vsetkym!");
8 define("DEPRESSED","ZABITE MAAAAAAAAAAAAAAAAAA");
11 include_once("htmlparse.inc");
12 switch ($_POST['event']) {
16 //do not send a message when limit number is changed
17 if ($user_amount!=$limit and empty($_POST['submission_text'])) {}
21 $status=eventz::add();
23 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&nocache=".time());
29 $status=eventz::answer();
31 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&nocache=".time());
36 $status=eventz::delete();
38 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&nocache=".time());
45 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&nocache=".time());
52 $status=eventz::forum_delete();
54 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&nocache=".time());
59 $status=eventz::forum_book();
61 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&nocache=".time());
66 $status=eventz::forum_unbook();
68 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&nocache=".time());
73 $status=eventz::forum_addpoll();
75 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&nocache=".time());
80 $status=eventz::addOperator();
82 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&status=ok&nocache=".time());
87 $status=eventz::addMaster();
89 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&status=ok&nocache=".time());
93 $status=eventz::addAccess();
95 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&status=ok&nocache=".time());
101 $status=eventz::banUser();
103 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&status=ok&nocache=".time());
108 $status=eventz::nahlad();
111 case 'zmen nastavenie':
112 $status=eventz::forum_change();
114 Header("Location:".SCRIPT."?action=forum&node_id=".$node_id."&nocache=".time());
124 $k_amount=$_POST['k_amount'];
126 $submission_id=$_POST['delete_name'][0];
131 $error="ale rydaj sa PREC tam kam siel hitler a diablov MEC ti odrazi hlavu ;) ale fakt nevymyslaj bravcoviny karle, oko bez viecka vidi vsecko ;)";
135 $error = "mozes dat maximalne 1K prispevku";
139 if (!$submission_id) {
140 $set=$kyberia->query("select user_k from user where id='$user_id'");
142 $k_amount=$set->getString('user_k');
143 $error="nezadal si prispevok ktoremu sa maju pridelit K.dnes ti zostava $k_amount K";
148 $set=$kyberia->query("select user_k from user where id='$user_id'");
150 $k_amount=$set->getString('user_k');
151 $error="nezadal si pocet K ktore chces prispevku pridelit.dnes ti ostava $k_amount K";
156 $q="select sum(k_amount) as amount from k_logs where donor_id='$user_id' and node_id='$submission_id' and node_type='submission'";
157 $set=$kyberia->query($q);
159 $amount=$set->getInt('amount');
161 if (abs($amount)>=1) {
162 $error="tomuto prispevku uz si pridelil maximalny mozny pocet 1 K!";
166 $set2=$kyberia->query("select submission_owner from submissions where submission_id='$submission_id'");
168 $acceptor_id=$set2->getString('submission_owner');
170 if ($acceptor_id == $user_id) {
175 $set3=$kyberia->query("select user_k from user where id='$user_id'");
177 if ($set3->getInt('user_k') < abs($k_amount)) {
178 $error="bohuzial dnes uz ti zostava ".$set3->getString('user_k')." K. zadel menej alebo pockaj do polnoci";
182 $kyberia->query("update user set user_k=user_k-".abs($k_amount)." where id='$user_id'");
183 $kyberia->query("update user set user_karma=user_karma+$k_amount where id='$acceptor_id'");
184 $kyberia->query("update submissions set submission_k=submission_k+$k_amount where submission_id='$submission_id'");
185 $kyberia->query("insert into k_logs set donor_id='$user_id',acceptor_id='$acceptor_id',k_amount='$k_amount',node_id='$submission_id',node_type='submission'");
194 global $user_mode_message;
196 $submission_text=$_POST['submission_text'];
197 $submission_text = EregI_Replace("((( )|(\n)|(^))+)(http://|ftp://|https://)([[:alnum:]][^,[:space:]]*)","\\2<a target='_blank' href=\"\\6\\7\">\\6\\7</a>",$submission_text);
198 $submission_text=strip_tags($submission_text,'<a><b><i><u><img><br><p><font>');
199 $submission_text=str_replace("\n","<br>",$submission_text);
201 $nohtml=$_POST['nohtml'];
202 if (!empty($nohtml)) {
203 $submission_text=htmlspecialchars($submission_text);
207 if (empty($submission_text)) {
209 $error="Nahlizet na NIC? take metafyzicke triky neskusaj";
212 if (!htmlparse::htmlparse($submission_text)) {
220 //adding mode message
221 if (!empty($user_mode_message)) $submission_text.="<br><br>-->$user_mode_message<--";
224 $preview="<table class='bigitem'><tr><td class='icon'>";
225 $preview.= "<img alt='".$user_name."' src='/images/users/".strtolower($user_name).".gif'>";
226 $preview.= "</td><td class='item'>";
227 $preview.= "<table class='item'>";
228 $preview.="<td class='header'>".$user_name;
231 $preview.="<tr class='content'><td class='content'>".StripSlashes($submission_text)."</td></tr>";
232 $preview.="</table>";
233 $preview.="</td></tr></table>";
238 $submission_text=$_POST['submission_text'];
244 global $user_mode_message;
246 $nohtml=$_POST['nohtml'];
247 if (!empty($nohtml)) {
248 $submission_text=htmlspecialchars($submission_text);
252 $submission_text = EregI_Replace("((( )|(\n)|(^))+)(http://|ftp://|https://)([[:alnum:]][^,[:space:]]*)","\\2<a target='_blank' href=\"\\6\\7\">\\6\\7</a>",$submission_text);
253 $submission_text=strip_tags($submission_text,'<a><b><i><u><img><br><p><font>');
254 $submission_text=str_replace("\n","<br>",$submission_text);
255 $submission_text=addslashes($submission_text);
256 if (empty($submission_text)) {
258 $error="Nic nenapises a predsa chces pridat prispevok? hovno hovno zlata rybka";
262 if (!htmlparse::htmlparse($submission_text)) {
269 //adding mode message
270 if (!empty($user_mode_message)) $submission_text.="<br><br>-->$user_mode_message<--";
273 $result=$kyberia->query("insert into submissions set forum_id='$node_id',submission_text='$submission_text',submission_owner='$user_id',submission_thread=submission_id,submission_timestamp=NOW()");
274 $id=$kyberia->getLastInsertId();
276 if ($forum['forum_public']!='private') {
277 $result=$kyberia->query("insert into last_submissions set forum_id='$node_id',submission_text='$submission_text',submission_owner='$user_id',submission_id='$id',submission_thread=submission_id");
278 $kyberia->query("update submissions set submission_thread=concat('$id','.') where submission_id='$id'");
281 $result=$kyberia->query("update forum set last_submission=NOW(), forum_submissions=forum_submissions+1 where forum_id='$node_id'");
282 $q="update user_forum set submission_count=submission_count+1 where forum_id='$node_id'";
283 $result=$kyberia->update($q);
284 // $kyberia->substanceIt($user_name,$submission_text,$forumset['forum_name']);
290 $submission_text=$_POST['submission_text'];
291 $submission_thread=$_POST['delete_name'][0];
294 $nohtml=$_POST['nohtml'];
295 if (!empty($nohtml)) {
296 $submission_text=htmlspecialchars($submission_text);
304 $submission_text = EregI_Replace("((( )|(\n)|(^))+)(http://|ftp://|https://)([[:alnum:]][^,[:space:]]*)","\\2<a target='_blank' href=\"\\6\\7\">\\6\\7</a>",$submission_text);
305 $submission_text=strip_tags($submission_text,'<a><b><i><u><img><br><p><font>');
306 $submission_text=str_replace("\n","<br>",$submission_text);
308 //adding mode message
309 if (!empty($user_mode_message)) $submission_text.="<br><br>-->$user_mode_message<--";
311 $submission_text=addslashes($submission_text);
313 $result=$kyberia->query("select submission_thread from submissions where submission_id='$submission_thread'");
315 $submission_thread=$result->getString('submission_thread');
316 $result=$kyberia->query("insert into submissions set forum_id='$node_id',submission_text='$submission_text',submission_owner='$user_id',submission_thread='$submission_thread'");
317 $id=$kyberia->getLastInsertId();
318 $kyberia->query("update submissions set submission_thread=concat(submission_thread,'.','$id') where submission_id='$id'");
319 // echo "insert into submissions set forum_id='$node_id',submission_text='$submission_text',submission_owner='$user_id',submission_thread=concat('$submission_thread','.')";
320 $result=$kyberia->query("update forum set last_submission=NOW(),forum_submissions=forum_submissions+1 where forum_id='$node_id'");
321 $q="update user_forum set submission_count=submission_count+1 where forum_id='$node_id'";
322 $result=$kyberia->update($q);
323 // $kyberia->substanceIt($user_name,$submission_text,$forumset['forum_name']);
331 $delete_time=$_POST['delete_time'];
336 $forum_owner=$forumset->getInt('forum_owner');
337 $delbetween=$_POST['delbetween'];
339 $q = "select user_id, access_type from node_access where node_id = '$node_id'";
340 $access = $kyberia->query($q);
341 if($access->getNumRows() > 0)
345 while($access->next())
347 if($access->getString('access_type') == 'master')
349 $master_list[$master_id] = $access->getString('user_id');
352 if($access->getString('access_type') == 'op')
354 $op_list[$op_id] = $access->getString('user_id');
360 foreach ($delete_name as $submissiondel) {
361 $sub = $kyberia->query("select * from submissions where submission_id='$submissiondel'");
364 if ($user_id == $forum_owner || $user_id == $sub->getInt("submission_owner") || $access_type == 'master' || $access_type == 'op') {
365 if($user_id == $sub->getInt("submission_owner")) define("DELETE", true);
366 elseif($user_id == $forum_owner) define("DELETE", true);
367 elseif($access_type == 'master' && !in_array($sub->getString("submission_owner"), $master_list) && $sub->getString("submission_owner") != $forum_owner) define("DELETE", true);
368 elseif($access_type == 'op' && !in_array($sub->getString("submission_owner"), $master_list) && !in_array($sub->getString("submission_owner"), $op_list) && ($sub->getString("submission_owner") != $forum_owner)) define("DELETE", true);
369 else define("DELETE", false);
372 $kyberia->update("delete from submissions where submission_id='$submissiondel'");
373 $kyberia->update("delete from last_submissions where submission_id='$submissiondel'");
374 $kyberia->update("update forum set forum_submissions=forum_submissions-1 where forum_id='$node_id'");
375 $kyberia->update("update user_forum set submission_count=submission_count-1 where forum_id='$node_id' and last_visit<'".$delete_time[$submissiondel]."'");
382 $q="delete from submissions where submission_id='$submissiondel' and submission_owner='$user_id'";
383 $result=$kyberia->update($q);
384 $q="delete from last_submissions where submission_id='$submissiondel' and submission_owner='$user_id'";
386 $result=$kyberia->update($q);
388 if (!$result and $user_id==38) {
389 $q="delete from submissions where submission_id='$submissiondel'";
390 $result=$kyberia->update($q);
391 $q="delete from last_submissions where submission_id='$submissiondel'";
392 $result=$kyberia->update($q);
396 $set=$kyberia->query("select forum.forum_owner from submissions left join forum on forum.forum_id=submissions.forum_id where submission_id='$submissiondel'");
397 if ($set->getString('forum_owner')==$forum_owner) {
398 $result=$kyberia->update("delete from submissions where submission_id='$submissiondel'");
399 $result=$kyberia->update("delete from last_submissions where submission_id='$submissiondel'");
404 $kyberia->query("update forum set forum_submissions=forum_submissions-1 where forum_id='$node_id'");
405 $q="update user_forum set submission_count=submission_count-1 where forum_id='$node_id' and last_visit<'".$delete_time[$submissiondel]."'";
410 else { global $error; $error.="spravu id:$submissiondel sa nepodarilo zmazat.nemas na to pravo, kravo!<br>"; }
416 function forum_book() {
423 $q="update user_forum set user_bookmark='yes' where user_id='$user_id' and forum_id='$node_id'";
430 function forum_unbook() {
437 $q="update user_forum set user_bookmark='no' where user_id='$user_id' and forum_id='$node_id'";
443 function forum_delete() {
450 $forumdel=$_POST['node_id'];
452 // prec s nim, h4ck3r0m
453 if ($user_id != 38 && $forum['forum_owner'] != $user_id)
456 if ($user_id==38) $kyberia->query("delete from forum where forum_id='$forumdel'");
457 $kyberia->query("delete from forum where forum_id='$forumdel' and (forum_owner='$user_id')");
458 $kyberia->query("delete from submissions where forum_id='$forumdel'");
459 $kyberia->query("update category set category_forums=category_forums-1 where category_id='".$forum['forum_category']."'");
462 function forum_change() {
471 $forum_name=$_POST['forum_name'];
472 $forum_icon_name=$_FILES['forum_icon']['name'];
473 $forum_icon=$_FILES['forum_icon']['tmp_name'];
474 $forum_info=$_POST['forum_info'];
475 $forum_public=$_POST['forum_public'];
476 $forum_owner=$_POST['forum_owner'];
477 $forum_category=$_POST['forum_category'];
479 // taky voblud tu nema co robit
480 if ($user_id != $forum['forum_owner'] && $access_type != 'master' && $access_type != 'op')
483 if ($forum_owner==$user_name) $owner_id=$user_id;
485 $userset=$kyberia->query("select id from user where login='$forum_owner'");
486 if (!$userset->getNumRows()) {
487 $error="Neexistuje uzivatel $forum_owner ";
492 $owner_id=$userset->getString('id');
496 // toto moze iba owner
497 if ($user_id == $forum['forum_owner']) {
498 $q="UPDATE forum set forum_public='$forum_public' , forum_category='$forum_category',forum_name='$forum_name',forum_owner='$owner_id' where forum_id='$node_id' and forum_owner='$user_id'";
503 $forum_info=strip_tags($forum_info,'<font><a><b><i><u><img><br><p><h1><h2><h3><center>');
505 $kyberia->query("update forum_info set forum_info='$forum_info' where forum_id='$node_id'");
507 // elseif ($forum_info and !$forum['forum_info']) $kyberia->query("insert into forum_info set forum_info='$forum_info',forum_id='$node_id'");
508 $icondir="/home/hromi1/kyberia/images/forums/";
510 if (strstr($forum_icon_name,".jpg") || strstr($forum_icon_name,".jpeg") ){
511 $cmd="/home/utils/netpbm/bin/jpegtopnm $forum_icon | /home/utils/netpbm/bin/pnmscale -width=123 | /home/utils/netpbm/bin/ppmquant 256 | /home/utils/netpbm/bin/ppmtogif > ".ICONDIR_FORUM.strtolower($node_id).".gif";
514 elseif (strstr($forum_icon_name,".gif")) {
515 $cmd="/home/hromi1/kyberia/gifsicle --resize 123x_ $forum_icon > ".ICONDIR_FORUM.strtolower($node_id).".gif";
518 if ($cmd) shell_exec($cmd);
520 // toto by mohlo ist do paze, nie?
521 $set=$kyberia->query("SELECT forum_info.forum_info as forum_info,user.id as user_id,user.login as login,forum.*,category.category_name as category_name from forum left join category on category.category_id=forum.forum_category left join user on forum_owner=user.id left join forum_info on forum_info.forum_id=forum.forum_id where forum.forum_id='$node_id'");
523 $forum=$set->getRecord();
528 function forum_addpoll() {
534 if (($forum['forum_owner'] != $user_id) && ($access_type != "op") &&
535 ($access_type != "master"))
538 $question=$_POST['question'];
539 $response=$_POST['response'];
540 $node_id=$_POST['node_id'];
543 $question = strip_tags($question);
544 $kyberia->query("insert into polls set question='$question',forum_id='$node_id'");
545 $id=$kyberia->getLastInsertId();
547 foreach ($response as $value) {
549 if (empty($value)) break;
550 $kyberia->query("insert into poll_options set text='$value',id_poll='$id',number='0'");
556 function addMaster() {
562 if ($forum['forum_owner'] != $user_id)
565 $admins=$_POST['masterlist'];
566 $node_id=$_POST['node_id'];
567 $array=explode(";",$admins);
568 if (!Is_array($array)) {
569 $error="nezadal si ziadne mena";
572 $kyberia->query("delete from node_access where node_id='$node_id' and node_type='forum' and access_type='master'");
574 foreach($array as $owner) {
578 $q="select id from user where login='$owner'";
579 $set=$kyberia->query($q);
581 $access_id=$set->getString('id');
583 $q="insert into node_access set user_id='$access_id',node_id='$node_id',node_type='forum',access_type='master'";
587 else $error.="Neexistuje uzivatel $owner.<br>";
590 if (!empty($error)) return false;
596 function addAccess() {
603 if ($forum['forum_owner'] != $user_id)
606 $admins=$_POST['accesslist'];
607 $node_id=$_POST['node_id'];
608 $array=explode(";",$admins);
609 if (!Is_array($array)) {
610 $error="nezadal si ziadne mena";
613 $kyberia->query("delete from node_access where node_id='$node_id' and node_type='forum' and access_type='access'");
615 foreach($array as $owner) {
619 $q="select id from user where login='$owner'";
620 $set=$kyberia->query($q);
622 $access_id=$set->getString('id');
624 $q="insert into node_access set user_id='$access_id',node_id='$node_id',node_type='forum',access_type='access'";
628 else $error.="Neexistuje uzivatel $owner.<br>";
631 if (!empty($error)) return false;
637 function addOperator() {
644 if ($forum['forum_owner'] != $user_id && $access_type != 'master')
647 $admins=$_POST['oplist'];
648 $node_id=$_POST['node_id'];
649 $array=explode(";",$admins);
650 if (!Is_array($array)) {
651 $error="nezadal si ziadne mena";
654 $kyberia->query("delete from node_access where node_id='$node_id' and node_type='forum' and access_type='op'");
656 foreach($array as $owner) {
660 $q="select id from user where login='$owner'";
662 $set=$kyberia->query($q);
664 $access_id=$set->getString('id');
666 $q="insert into node_access set user_id='$access_id',node_id='$node_id',node_type='forum',access_type='op'";
671 else $error.="Neexistuje uzivatel $owner.<br>";
674 if (!empty($error)) return false;
687 if ($forum['forum_owner'] != $user_id && $access_type != 'master' && $access_type != 'op')
690 $admins=$_POST['banlist'];
691 if (empty($admins)) {
692 $error="nezadal si ziadne mena";
695 $node_id=$_POST['node_id'];
696 $array=explode(";",$admins);
698 $kyberia->query("delete from node_access where node_id='$node_id' and node_type='forum' and access_type='ban'");
700 foreach($array as $owner) {
704 $q="select id from user where login='$owner'";
705 $set=$kyberia->query($q);
707 $access_id=$set->getString('id');
709 $q="insert into node_access set user_id='$access_id',node_id='$node_id',node_type='forum',access_type='ban'";
713 else $error.="Neexistuje uzivatel $owner.<br>";
716 if (!empty($error)) return false;