From b157d6653ecf4c7508bc86608b9f8f5723003682 Mon Sep 17 00:00:00 2001 From: pioder Date: Sun, 31 May 2009 15:20:17 +0000 Subject: [PATCH] + Censorlist was extended - added replacement parametr + Fixed bug with DB Size in check_script.php + Deleted a lot of indexes in check_script_data.php + Deleted cache index and forum lastpost section in cache_index.php and cache_forum.php + Fixed other bugs in warnings + Fixed pagination in search.php + Replaced DSF logo to uForum logo + Moved differend elements in skin + Added "WHOIS" option in "Admin/Mod Pool" in view topic + Fixed bug in add warnings: couldn't add warn for admin/mod git-svn-id: https://svn.pioder.pl/uf-svn/uF@29 72ec579a-5ced-4fa4-82f3-afba5d98df2f --- admin/censorlist.php | 15 ++- admin/check_script.php | 1 + admin/check_script_data.php | 27 ----- admin/template/censorlist_add_edit_body.tpl | 8 ++ ..._word_add.tpl => censorlist_list_word.tpl} | 5 +- common.php | 6 +- config.php | 2 +- includes/cache/cache_forums.php | 16 --- includes/cache/cache_index.php | 6 +- includes/cache/cache_topic.php | 25 ++-- includes/classes/class_user.php | 27 +++++ includes/classes/secure.php | 4 +- includes/db.php | 1 - includes/misc_functions.php | 8 +- lngs/Polish/admin.php | 5 +- lngs/Polish/main.php | 1 + posting.php | 4 +- search.php | 113 +++++++++++++----- skins/subPurple/images/Thumbs.db | Bin 47616 -> 54784 bytes skins/subPurple/images/dsf_logo.gif | Bin 9672 -> 0 bytes skins/subPurple/images/td_category.jpg | Bin 697 -> 1139 bytes skins/subPurple/images/td_category_left.gif | Bin 985 -> 940 bytes skins/subPurple/images/td_category_right.gif | Bin 664 -> 942 bytes skins/subPurple/images/uf_logo.gif | Bin 0 -> 7852 bytes skins/subPurple/index_category_add.tpl | 4 +- skins/subPurple/overall_header.tpl | 4 +- skins/subPurple/search_end_body.tpl | 40 +++++-- skins/subPurple/topic_post_body.tpl | 15 ++- topic.php | 10 +- warns.php | 7 ++ 30 files changed, 227 insertions(+), 127 deletions(-) rename admin/template/{censorlist_word_add.tpl => censorlist_list_word.tpl} (76%) delete mode 100644 skins/subPurple/images/dsf_logo.gif create mode 100644 skins/subPurple/images/uf_logo.gif diff --git a/admin/censorlist.php b/admin/censorlist.php index 4576255..013f59e 100644 --- a/admin/censorlist.php +++ b/admin/censorlist.php @@ -57,7 +57,7 @@ switch($_GET['mode']) for($i=0;$i 0) ? $_POST['replace'] : '[censored]'; $sql = "SELECT `w_id` FROM ".CENSORLIST_TABLE." ORDER BY `w_id` DESC"; $last = DataBase::fetch(DataBase::sql_query($sql,GENERAL,'Could not obtain last word id')); $last = $last['w_id']; $last= $last +1; - DataBase::sql_query("INSERT INTO ".CENSORLIST_TABLE." VALUES ('$last','$word')",GENERAL,'Could not add censored word.'); + DataBase::sql_query("INSERT INTO ".CENSORLIST_TABLE." VALUES ('$last','$word','$replace')",GENERAL,'Could not add censored word.'); admin_message_forum($lng['word_added'],'censorlist.php'); } else { $_POST['word']=''; + $_POST['replace']=''; $skin = array( 'action'=>'censorlist.php?mode=addword', 'L.main_beam'=>$lng['add_word'], 'L.word_name'=>$lng['word_name'], + 'L.replace_to'=>$lng['replace_to'], 'L.save'=>$lng['submit'], 'L.reset'=>$lng['reset'], 'L.censorlist'=>$lng['admin_censorlist'] @@ -120,7 +123,8 @@ switch($_GET['mode']) { $word = strip_tags(trim($_POST['word'])); $wid = intval($_GET['w']); - DataBase::sql_query("UPDATE ".CENSORLIST_TABLE." SET `word`='$word' WHERE `w_id`='$wid'",GENERAL,'Could not update censored word.'); + $replace = $_POST['replace']; + DataBase::sql_query("UPDATE ".CENSORLIST_TABLE." SET `word`='$word', `replace`='$replace' WHERE `w_id`='$wid'",GENERAL,'Could not update censored word.'); admin_message_forum($lng['word_edited'],'censorlist.php?mode=view'); } else @@ -130,10 +134,12 @@ switch($_GET['mode']) $query = DataBase::sql_query($sql,CRITICAL,'Could not obtain censorlist words'); $result = DataBase::fetch($query); $_POST['word']=$result['word']; + $_POST['replace']=$result['replace']; $skin = array( 'action'=>'censorlist.php?mode=edit&w='.$wid, 'L.main_beam'=>$lng['edit_word'], 'L.word_name'=>$lng['word_name'], + 'L.replace_to'=>$lng['replace_to'], 'L.save'=>$lng['submit'], 'L.reset'=>$lng['reset'], 'L.censorlist'=>$lng['admin_censorlist'] @@ -171,11 +177,12 @@ switch($_GET['mode']) { $skin = array( 'L.word_name'=>$item['word'], + 'L.word_replacement'=>$item['replace'], 'w_id'=>$item['w_id'], 'L.delete'=>$lng['delete'], 'L.edit'=>$lng['edit'], ); - include('./template/censorlist_word_add.tpl'); + include('./template/censorlist_list_word.tpl'); } } include('./template/overall_footer.tpl'); diff --git a/admin/check_script.php b/admin/check_script.php index d619550..6db4626 100644 --- a/admin/check_script.php +++ b/admin/check_script.php @@ -66,6 +66,7 @@ function db_size() while ($result = DataBase::fetch($query)) { $db_size += $result['Index_length']; + $db_size += $result['Data_length']; } $db_size = $db_size / 1024; if ($db_size >=1024) diff --git a/admin/check_script_data.php b/admin/check_script_data.php index aafe8a4..d2bb7cc 100644 --- a/admin/check_script_data.php +++ b/admin/check_script_data.php @@ -13,49 +13,22 @@ if ( !defined('IN_uF') ) } //size files in md5 $size_md5['../common.php'] = '426f990b332ef8193a61cc90516c1245'; -$size_md5['../eprofile.php'] = '1868f17c2c15b5eafdc3cce2f5ac97d5'; -$size_md5['../forum.php'] = 'acf666483bc8723fae7feda6f6a9cb7a'; -$size_md5['../groups.php'] = '6b493230205f780e1bc26945df7481e5'; -$size_md5['../index.php'] = 'd71f5142463efcf6dc7be216cf4644b5'; $size_md5['../login.php'] = 'e275193bc089e9b3ca1aeef3c44be496'; $size_md5['../moderate.php'] = '6562c5c1f33db6e05a082a88cddab5ea'; $size_md5['../pms.php'] = 'f22e4747da1aa27e363d86d40ff442fe'; $size_md5['../posting.php'] = 'f5dffc111454b227fbcdf36178dfe6ac'; $size_md5['../search.php'] = '3016a447172f3045b65f5fc83e04b554'; $size_md5['../shoutbox.php'] = '102f0bb6efb3a6128a3c750dd16729be'; -$size_md5['../quick_reply.php'] = '7a53928fa4dd31e82c6ef826f341daec'; $size_md5['../register.php'] = '14f2ebeab937ca128186e7ba876faef9'; -$size_md5['../topic.php'] = 'b0bf8b3daf61246d13276dc8dcdfb87d'; -$size_md5['../user.php'] = 'bf56a1b37b94243486b2034f8479c475'; -$size_md5['../users.php'] = '7990ec44fcf3d7a0e5a2add28362213c'; $size_md5['../warns.php'] = '9570efef719d705326f0ff817ef084e6'; $size_md5['../includes/db.php'] = 'a376033f78e144f494bfc743c0be3330'; $size_md5['../includes/emailer.php'] = 'e37b08dd3015330dcbb5d6663667b8b8'; -$size_md5['../includes/errors.php'] = '8232e119d8f59aa83050a741631803a6'; -$size_md5['../includes/classes/class_forum.php'] = '87f7ee4fdb57bdfd52179947211b7ebb'; $size_md5['../includes/classes/class_mod.php'] = '4764f37856fc727f70b666b8d0c4ab7a'; -$size_md5['../includes/classes/class_pms.php'] = '850af92f8d9903e7a4e0559a98ecc857'; $size_md5['../includes/misc_functions.php'] = '92c3d054835eff3d5a7f7ed731d2a3db'; $size_md5['../includes/classes/class_posting.php'] = '9c72e0c8882794b79d65f14776a0a974'; -$size_md5['../includes/class_shoutbox.php'] = 'cd14821dab219ea06e2fd1a2df2e3582'; -$size_md5['../includes/classes/class_topic.php'] = '48f7d3043bc03e6c48a6f0ebc0f258a8'; -$size_md5['../includes/classes/class_user.php'] = '2d5951d1e3b31dfb7fd2dcc172df17fd'; -$size_md5['../includes/constants.php'] = 'fc79250f8c5b804390e8da280b4cf06e'; -$size_md5['../includes/msgs_delete.php'] = '571e0f7e2d992e738adff8b1bd43a521'; -$size_md5['../includes/msgs_folder.php'] = 'd756d3d2b9dac72449a6a6926534558a'; -$size_md5['../includes/msgs_view.php'] = '291d43c696d8c3704cdbe0a72ade5f6c'; -$size_md5['../includes/msgs_write.php'] = 'b0b79da57b95837f14be95aaa4d54cf8'; $size_md5['../includes/classes/secure.php'] = 'a084f26f690dbc23a52e67027693f2b2'; $size_md5['../includes/sessions.php'] = 'e91068fff3d7fa1594dfdf3b4308433a'; -$size_md5['../includes/sql_parse.php'] = '4a1590df1d5968d41b855005bb8b67bf'; - -$size_md5['../includes/admin/class_forum.php'] = 'e205ee2a5de471a70c1fd1b46033a75f'; -$size_md5['../includes/admin/class_main.php'] = '65ae450c5536606c266f49f1c08321f2'; - -$size_md5['../includes/cache/cache_index.php'] = '88a839f2f6f1427879fc33ee4acf4f66'; -$size_md5['../includes/cache/cache_forums.php'] = '6ef80bb237adf4b6f77d0700e1255907'; -$size_md5['../includes/cache/cache_topic.php'] = '9a11883317fde3aef2e2432a58c86779'; $script_files = array_keys($size_md5); diff --git a/admin/template/censorlist_add_edit_body.tpl b/admin/template/censorlist_add_edit_body.tpl index 2e04133..3b49842 100644 --- a/admin/template/censorlist_add_edit_body.tpl +++ b/admin/template/censorlist_add_edit_body.tpl @@ -24,6 +24,14 @@ + + + : + + + + +   diff --git a/admin/template/censorlist_word_add.tpl b/admin/template/censorlist_list_word.tpl similarity index 76% rename from admin/template/censorlist_word_add.tpl rename to admin/template/censorlist_list_word.tpl index c7d0fe6..dad71df 100644 --- a/admin/template/censorlist_word_add.tpl +++ b/admin/template/censorlist_list_word.tpl @@ -1,7 +1,10 @@ - + '; } - if ($_GET['content']=='lastposts') + $skin = array( + 'option_pages' => AddPages(), + 'lwith' => $lng['with'], + 'lpage' => $lng['page'], + 'lpages' => $count, + ); + + if ($_GET['content']=='posts') { - echo '
+ + + diff --git a/common.php b/common.php index 999721c..2a486dc 100644 --- a/common.php +++ b/common.php @@ -47,6 +47,8 @@ else } } +define('TABLES_WIDTH',$forum_config['tables_width']); + //check for banned user if ($_SESSION['uid']>0) { @@ -60,7 +62,7 @@ if ($_SESSION['uid']>0) if (($db_ip==$ip) || ($db_uid==$uid)) { include('./includes/misc_functions.php'); - include('./lngs/'.DefaultLang().'/main.php'); + include('./lngs/'.DefaultLang(true).'/main.php'); SessDelete($_SESSION['uid']); $_SESSION['uid']='0'; message_forum($motive,'index.php', '10'); @@ -80,7 +82,7 @@ $query = DataBase::sql_query($sql, GENERAL,'Could not obtain loged user informat $userdata = DataBase::fetch($query); define('RANK', $userdata['rank']); -define('TABLES_WIDTH',$forum_config['tables_width']); + //protect of database - add the backslashes /*foreach ($_POST as $name => $value) { diff --git a/config.php b/config.php index 0238d4b..6ab0c56 100644 --- a/config.php +++ b/config.php @@ -13,6 +13,6 @@ define('DB_USER','root'); define('DB_PASS',''); define('DB_NAME','uf'); define('DB_PREFIX','uf_'); -define('VERSION','9.5.3'); +define('VERSION','9.5.31'); define('UF_INSTALLED',true); ?> diff --git a/includes/cache/cache_forums.php b/includes/cache/cache_forums.php index 71270dc..831d416 100644 --- a/includes/cache/cache_forums.php +++ b/includes/cache/cache_forums.php @@ -23,22 +23,6 @@ $forum = array( 'name'=>$result['name'], 'lock'=>$result['lock'] ); -/*$sql = "SELECT COUNT(*) as `p_id`, `t_id` FROM ".POSTS_TABLE." GROUP BY `t_id`"; -$query = DataBase::sql_query($sql,GENERAL, 'Could not obtain amout of posts in forum'); -while($result = DataBase::fetch($query)) -{ - $count_topic[$result['t_id']]=$result['p_id']; -}*/ -/*$sql = "SELECT ".POSTS_TABLE.".*, ".USERS_TABLE.".* FROM ".POSTS_TABLE." LEFT JOIN ".USERS_TABLE." ON ".USERS_TABLE.".u_id = ".POSTS_TABLE.".u_id WHERE `f_id`='$fid' ORDER BY `ptime`"; -$query = DataBase::sql_query($sql,GENERAL, 'Could not obtain amout of posts in forum'); -while($result = DataBase::fetch($query)) -{ - $lastpost[$result['t_id']]['tp_id']=$result['tp_id']; - $lastpost[$result['t_id']]['u_id']=$result['u_id']; - $lastpost[$result['t_id']]['time']=$result['ptime']; - $lastpost[$result['t_id']]['user_nick']=$result['nick']; - $lastpost[$result['t_id']]['user_rank']=$result['rank']; -} */ // //generate output pages // diff --git a/includes/cache/cache_index.php b/includes/cache/cache_index.php index 762b327..c04d7fa 100644 --- a/includes/cache/cache_index.php +++ b/includes/cache/cache_index.php @@ -17,7 +17,9 @@ if(!defined('IN_uF')) //lastpost in forum cache //cache forums --don't modify!!! $cache_id=1; -$sql = "SELECT ".FORUMS_TABLE.".*, COUNT(".POSTS_TABLE.".p_id) as amout, ".POSTS_TABLE.".f_id AS count FROM ".FORUMS_TABLE." LEFT JOIN ".POSTS_TABLE." ON ".FORUMS_TABLE.".f_id= ".POSTS_TABLE.".f_id GROUP BY `f_id` ORDER BY `c_id`, `sort`"; +$sql = "SELECT ".FORUMS_TABLE.".* + FROM ".FORUMS_TABLE." + ORDER BY `c_id`, `sort`"; $query = DataBase::sql_query($sql,CRITICAL,'Could not obtain forum information.'); while($result = DataBase::fetch($query)) { @@ -27,7 +29,7 @@ while($result = DataBase::fetch($query)) $forum[$cache_id]['c_id'] = $result['c_id']; $forum[$cache_id]['sort'] = $result['sort']; $forum[$cache_id]['lastpost'] = $result['lastpost']; - $count_forum[$result['f_id']] = $result['amout']; + $count_forum[$result['f_id']] = $result['posts']; $cache_id+=1; } $sql = "SELECT `u_id`,`nick`, `regdate` AS count FROM ".USERS_TABLE." ORDER BY `regdate` DESC"; diff --git a/includes/cache/cache_topic.php b/includes/cache/cache_topic.php index 5d5aa5f..5641df4 100644 --- a/includes/cache/cache_topic.php +++ b/includes/cache/cache_topic.php @@ -18,16 +18,23 @@ if ($result['t_id']=='') { message_forum($lng['no_topic'], 'index.php'); } -$topic['name']=$result['topic_name']; -$topic['lock']=$result['topic_lock']; -$topic['sticky']=$result['sticky']; -$topic['f_id']=$result['f_id']; -$fid = $topic['f_id']; -$forum['name']=$result['name']; -$forum['lock']=$result['lock']; -$forum['moderate']=$result['moderate']; +$topic = array( +'name' => $result['topic_name'], +'lock' => $result['topic_lock'], +'sticky' => $result['sticky'], +'f_id' => $result['f_id'] +); + +$forum = array( +'name' => $result['name'], +'lock' => $result['lock'], +'moderate' => $result['moderate'] +); + +$fid = $topic['f_id']; +//user warnings level $sql = "SELECT `u_id`,`value` FROM `".WARNINGS_TABLE."`"; $query = DataBase::sql_query($sql,GENERAL,'Could not obtain user warns information'); $result = DataBase::num_rows($query); @@ -54,7 +61,9 @@ while($result = DataBase::fetch($query)) { $user[$result['u_id']]['online']='1'; } + unset($sql, $query, $result); + // //generate output pages // diff --git a/includes/classes/class_user.php b/includes/classes/class_user.php index 35661cc..7e03c51 100644 --- a/includes/classes/class_user.php +++ b/includes/classes/class_user.php @@ -209,6 +209,7 @@ class User function UserAddWarn($uid, $value, $motive) { + global $lng; $sql = "INSERT INTO `".WARNINGS_TABLE."` ( `w_id` , `u_id` , `value` , `motive` ) VALUES('','$uid','$value','$motive');"; DataBase::sql_query($sql,GENERAL,'Could not add new warn.'); if (User::UserLevelWarns($uid)==100) @@ -220,5 +221,31 @@ class User DataBase::sql_query($sql,GENERAL,'Could not update add ban.'); } } + + function UserLevelWarns($uid) + { + $level =0; + $sql = "SELECT `u_id`,`value` FROM `".WARNINGS_TABLE."` WHERE `u_id`='$uid'"; + $query = DataBase::sql_query($sql,'GENERAL','Could not obtain user warns information'); + $result = DataBase::num_rows($query); + while ($result = @DataBase::fetch($query)) + { + if ($result['value']=='-') + { + $level = $level -1; + } + else + { + $level = $level +1; + } + } + //version 1.0 Alpha 2 + //delete second query + if ($level>0) + { + $level = $level*10; + } + return $level; + } } ?> diff --git a/includes/classes/secure.php b/includes/classes/secure.php index c962291..e0d335a 100644 --- a/includes/classes/secure.php +++ b/includes/classes/secure.php @@ -33,8 +33,8 @@ class Secure $sql = "SELECT * FROM ".CENSORLIST_TABLE.";"; $query = DataBase::sql_query($sql,GENERAL,'Could not obtain censorlist information.'); while($word = DataBase::fetch($query)) - { - $text = str_replace($word['word'],'[censored]', $text); + { + $text = str_replace($word['word'],$word['replace'], $text); } } return $text; diff --git a/includes/db.php b/includes/db.php index 87c614e..2b9d839 100644 --- a/includes/db.php +++ b/includes/db.php @@ -64,7 +64,6 @@ class DataBase function num_rows($query) { - // return $query->num_rows; if ($query===true || $query===false) { return 0; diff --git a/includes/misc_functions.php b/includes/misc_functions.php index 75a43bd..f21ef3f 100644 --- a/includes/misc_functions.php +++ b/includes/misc_functions.php @@ -138,7 +138,7 @@ function UserAgent($agent) function GenerateTime($request_time) { global $lng; - if (date('d-m-Y',$request_time)== date('d-m-Y',time())) + if (date('d M Y',$request_time)== date('d M Y',time())) { $date = $lng['today'].', '.date('G:i', $request_time); } @@ -150,7 +150,7 @@ function GenerateTime($request_time) } else { - $date = date('d-m-Y, G:i',$request_time); + $date = date('d M Y, G:i',$request_time); } } @@ -284,12 +284,12 @@ function TotalPosts() return($result); } -function DefaultLang() +function DefaultLang($active = false) { global $forum_config; global $userdata; - if ($_SESSION['uid']>0) + if ($_SESSION['uid']>0 && !$active) { return $userdata['lang']; } diff --git a/lngs/Polish/admin.php b/lngs/Polish/admin.php index c6b81ce..6c4d2ca 100644 --- a/lngs/Polish/admin.php +++ b/lngs/Polish/admin.php @@ -120,8 +120,8 @@ $lng['files_is_good']='Wszystkie pliki są poprawne!'; $lng['files_not_good']='Nie wszystkie pliki są poprawne. Jest ich: '; $lng['php_version']='Wersja PHP'; $lng['mysql_version']='Wersja serwera MySQL'; -$lng['not_writable']='Katalog nie do zapisu!'; -$lng['is_writable']='Katalog do zapisu'; +$lng['not_writable']='Nie do zapisu!'; +$lng['is_writable']='Do zapisu'; $lng['catalog']='Katalog'; $lng['db_size']='Wielkość bazy'; $lng['forum_size']='Wielkość plików forum'; @@ -235,6 +235,7 @@ $lng['no_words']='Cenzura słów jest pusta'; $lng['word_deleted']='Słowo zostało usunięte.
Powrót do cenzury słów.'; $lng['word_edited']='Słowo zostało wyedytowane.
Powrót do cenzury słów.'; $lng['edit_word']='Edytuj słowo'; +$lng['replace_to']='Zamień na'; // //on banlist... ------------------------------------------------------------ // diff --git a/lngs/Polish/main.php b/lngs/Polish/main.php index 47644b5..8d29e51 100644 --- a/lngs/Polish/main.php +++ b/lngs/Polish/main.php @@ -191,6 +191,7 @@ $lng['warns']='Ostrzeżeń'; $lng['add']='Dodaj'; $lng['delete']='Odejmij'; $lng['warns_ban']='Zostałeś zbanowany, ponieważ Twój poziom ostrzeżeń wynosi 100%.'; +$lng['cannot_add_warn_am']='Nie możesz dodać ostrzeżenia Administratorowi/Moderatorowi!'; // //messages...----------------------------------------------------------------- // diff --git a/posting.php b/posting.php index a92ada6..22ece46 100644 --- a/posting.php +++ b/posting.php @@ -34,13 +34,14 @@ if ($_SESSION['uid']<1) { message_forum($lng['youarenotlogd'],'login.php?mode=login'); } -foreach ($_POST as $name => $value) +/**foreach ($_POST as $name => $value) { if ($forum_config['use_censorlist']) { $_POST[$name] = Secure::UseCensorlist($value); } } +*/ $start = TimeGeneration(); //add skin variables $skin = array( @@ -209,6 +210,7 @@ switch(trim($_GET['mode'])) setcookie('antiflood_time',(time() + $forum_config['time_antiflood'])); } $_POST['textedit'] = Secure::TagsReplace($_POST['textedit']); + $id = Post::NewPost(intval($_GET['id']),$_POST['textedit'], $_SESSION['uid']); $count =ceil(($id / 15 )); if ($count >1) diff --git a/search.php b/search.php index 0a24fac..2e3b68a 100644 --- a/search.php +++ b/search.php @@ -29,7 +29,7 @@ $default_skin = ViewSkinName(); SessDelInvalid(); SessRegister(); SessDeleteOld(); -$sql = "SELECT ".POSTS_TABLE.".*, ".USERS_TABLE.".* FROM ".POSTS_TABLE." LEFT JOIN ".USERS_TABLE." ON ".USERS_TABLE.".u_id = ".POSTS_TABLE.".u_id ORDER BY `ptime`"; +/*$sql = "SELECT ".POSTS_TABLE.".*, ".USERS_TABLE.".* FROM ".POSTS_TABLE." LEFT JOIN ".USERS_TABLE." ON ".USERS_TABLE.".u_id = ".POSTS_TABLE.".u_id ORDER BY `ptime`"; $query = DataBase::sql_query($sql,GENERAL, 'Could not obtain amout of posts in forum'); while($result = DataBase::fetch($query)) { @@ -44,11 +44,12 @@ $query = DataBase::sql_query($sql,GENERAL, 'Could not obtain amout of posts in f while($result = DataBase::fetch($query)) { $count_topic[$result['t_id']]=$result['p_id']; -} +}*/ if (!isset($_GET['content'])) { header('Location: search.php?content=posts'); } + // //generate output pages // @@ -60,24 +61,48 @@ else { $limiter = $forum_config['limit_ftid']; } -if (isset($_GET['page'])&&($_GET['page']!=1)) +if ($_GET['content'] == 'userposts' || $_GET['content'] == 'lastposts') { - if (!is_numeric($_GET['page'])) + if (isset($_GET['page'])&&($_GET['page']!=1)) { - die('Hacking attempt'); + if (!is_numeric($_GET['page'])) + { + die('Hacking attempt'); + } + $value = ($_GET['page']-1)*$limiter; + $limit = 'LIMIT '.$value . ', '.$limiter; + $page = $_GET['page']; + } + else + { + $limit = 'LIMIT 0, '.$limiter; + $page=1; } - $value = ($_GET['page']-1)*$limiter; - $limit = 'LIMIT '.$value . ', '.$limiter; - $page = $_GET['page']; } else { - $limit = 'LIMIT 0, '.$limiter; - $page=1; + if (isset($_POST['page'])&&($_POST['page']!=1)) + { + if (!is_numeric($_POST['page'])) + { + die('Hacking attempt'); + } + $value = ($_POST['page']-1)*$limiter; + $limit = 'LIMIT '.$value . ', '.$limiter; + $page = $_POST['page']; + } + else + { + $limit = 'LIMIT 0, '.$limiter; + $page=1; + } } + + // //end generating pages // + if ((isset($_POST['keywords'])) || ($_GET['content']=='lastposts') || ($_GET['content']=='userposts')) { $errors = true; @@ -88,10 +113,26 @@ if ((isset($_POST['keywords'])) || ($_GET['content']=='lastposts') || ($_GET['co if ($_SESSION['uid']>0) { $time = time()-129600; - $sql = "SELECT ".TOPICS_TABLE.".*, ".USERS_TABLE.".* FROM ".TOPICS_TABLE." LEFT JOIN ".USERS_TABLE." ON ".TOPICS_TABLE.".author = ".USERS_TABLE.".u_id WHERE lastpost_time>$time ORDER BY `sticky` DESC, `lastpost_time` DESC LIMIT 60;"; + $sql = "SELECT COUNT(`t_id`) as `cnt` FROM ".TOPICS_TABLE." WHERE lastpost_time>$time"; + $count = DataBase::fetch(DataBase::sql_query($sql,GENERAL,'Could not obtain count amout of topics')); + $count = $count['cnt']; + $count = ceil($count / $limiter); + if ($count==0) + { + $count +=1; + } + if(isset($_GET['page']) && ($_GET['page']>$count)) + { + message_forum($lng['invalidpage'],'index.php'); + } + $sql = "SELECT ".TOPICS_TABLE.".*, ".USERS_TABLE.".*, ".TOPICS_TABLE.".posts AS posts + FROM ".TOPICS_TABLE." + LEFT JOIN ".USERS_TABLE." ON ".TOPICS_TABLE.".author = ".USERS_TABLE.".u_id + WHERE lastpost_time>$time + ORDER BY `sticky` DESC, `lastpost_time` DESC $limit"; $errors = false; - $window_title = $lng['showlast30posts']; - $navigator_title = '
> '.$lng['showlast30posts']; + $window_title = $lng['showlastposts']; + $navigator_title = '> '.$lng['showlastposts']; break; } else @@ -138,9 +179,13 @@ if ((isset($_POST['keywords'])) || ($_GET['content']=='lastposts') || ($_GET['co { $like_where .=' OR `text` LIKE \'%'.$keyword[$i].'%\''; } - $sql = "SELECT COUNT(".TOPICS_TABLE.".t_id) as `count`, ".POSTS_TABLE.".* FROM ".TOPICS_TABLE." LEFT JOIN ".POSTS_TABLE." ON ".POSTS_TABLE.".t_id = ".TOPICS_TABLE.".t_id WHERE $like_where GROUP BY `t_id`"; - $count = DataBase::fetch(DataBase::sql_query($sql,GENERAL,'Could not obtain count amout of topics')); - $count = $count['count']; + $sql = "SELECT ".POSTS_TABLE.".t_id, ".POSTS_TABLE.".text + FROM ".TOPICS_TABLE." + LEFT JOIN ".POSTS_TABLE." ON ".POSTS_TABLE.".t_id = ".TOPICS_TABLE.".t_id + WHERE $like_where GROUP BY `t_id`"; + echo $sql; + $count = DataBase::sql_query($sql,GENERAL,'Could not obtain count amout of topics'); + $count = DataBase::num_rows($count);//$count['count']; $count = ceil($count / $limiter); if ($count==0) { @@ -150,7 +195,13 @@ if ((isset($_POST['keywords'])) || ($_GET['content']=='lastposts') || ($_GET['co { message_forum($lng['invalidpage'],'index.php'); } - $sql = "SELECT ".TOPICS_TABLE.".*, ".USERS_TABLE.".*, ".POSTS_TABLE.".* FROM ".TOPICS_TABLE." LEFT JOIN ".USERS_TABLE." ON ".TOPICS_TABLE.".author = ".USERS_TABLE.".u_id LEFT JOIN ".POSTS_TABLE." ON ".POSTS_TABLE.".t_id = ".TOPICS_TABLE.".t_id WHERE $like_where ORDER BY `sticky` DESC, `lastpost_time` DESC $limit;"; + $sql = "SELECT ".TOPICS_TABLE.".*, ".USERS_TABLE.".*, ".POSTS_TABLE.".*, ".TOPICS_TABLE.".posts AS posts + FROM ".TOPICS_TABLE." + LEFT JOIN ".USERS_TABLE." ON ".TOPICS_TABLE.".author = ".USERS_TABLE.".u_id + LEFT JOIN ".POSTS_TABLE." ON ".POSTS_TABLE.".t_id = ".TOPICS_TABLE.".t_id + WHERE $like_where + ORDER BY `sticky` DESC, `lastpost_time` DESC $limit;"; + $window_title = $lng['search_results']; $navigator_title = '> '.$lng['search_results']; $errors = false; @@ -187,12 +238,13 @@ if ((isset($_POST['keywords'])) || ($_GET['content']=='lastposts') || ($_GET['co { if (!in_array($record['t_id'], $isset_topics)) { + $last_post = explode(':', $record['lastpost']); $skin = array( 't_id'=>$record['t_id'], 'fname'=>($record['sticky']=='1') ? ''.$lng['sticky'].''.$record['name'] : $record['name'], 'author'=>Topic::TopicAuthor($record['author']), 'new_post'=>Topic::LastPostImg(), - 'tposts'=>$count_topic[$record['t_id']], + 'tposts'=>$record['posts'], 'lastpost'=>Topic::LastPostInTopic($record['t_id']) ); include('./skins/'.$default_skin.'/forum_forum_add.tpl'); @@ -204,20 +256,21 @@ if ((isset($_POST['keywords'])) || ($_GET['content']=='lastposts') || ($_GET['co { echo '

'.$lng['nopost'].'!

'; + $skin['keywords'] = $_POST['keywords']; } - else - { - $skin = array( - 'option_pages' => AddPages(), - 'lwith' => $lng['with'], - 'lpage' => $lng['page'], - 'lpages' => $count, - ); - include('./skins/'.$default_skin.'/search_end_body.tpl'); - } + + include('./skins/'.$default_skin.'/search_end_body.tpl'); + + } } else diff --git a/skins/subPurple/images/Thumbs.db b/skins/subPurple/images/Thumbs.db index 324e190e365ded831bd8e79e383a3aceca633148..ace8c2c4ef9408d8fde29b86023394b43c6823d6 100644 GIT binary patch delta 4564 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 delta 783 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 literal 697 zcmex=P7?~NB7?=bZ znFSgDA7PMZU|?j0n9TqMj7-cdtZeKYoLt;M1zQCem>8LvnOK-vSy@`H|qMvW5}awt1(JSZA;@q>zSQc)8pmzcPOq?D?fx`w8fiK&^ng{76V zi>sTvho@I?NN8AiL}XNQN@`kqMrKxVNoiSmMP*fUOKV$uM`zch$y26In?7UatVN5L zEM2yI#mZHiHgDOwZTpU$yAB;ba`f2o6DLnyx_ss8wd*%--g@}x@sp>|p1*kc>f@)+ zU%r0({^RE_kiQrinBhSN@fe!F1cClyVqsxsVF&q(k*OSrnFU!`6%E;h90S=C3x$=8 z8aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3wkt* g{D=PT%lyyatW*9^^!k5>r|s)6x{7{Sp7{SJ0M#Yps{jB1 diff --git a/skins/subPurple/images/td_category_left.gif b/skins/subPurple/images/td_category_left.gif index a26799044cbd9f5ae993615f48643f79d9d4e38c..222b41524023280c2c0fccfc4e68516aff7eb9cc 100644 GIT binary patch literal 940 zcmYLIZAcVR6g{(!>{3DUa!|u$D~UqGiEJ@!aazqyTF`=`4{A{#=%M_>+UWtl8wSyGtC=ZioLAS}q%v@NwW z``RbO3=p0OBR6WeNLYiajwzeJiq^RZQB{_i!5avjU^qKgC7=k1aQ{mF;J9LvWL>YL zA2uUZU~uI?)G|mC6SH+j{CJq0RuNSEM}dP81XWz8ZB8mQQyiu^=&m{hlhG%v)Dh=Q z)PZvxo~=Q^l#-+y_V;HPX`TrTl;}p@9N}+VgC;=YhXLEX)XwZ#e;F`=02$(;9=tEd zoQ77F7M4-VqJ&U@>I(f~r{p2?(L96|FHoICy6nUc1>`5t!f*e>4{l0SpbH2wcEe6N z>d*ncTB;E<2D-ussZbSg;t^04lp;aVMG>M<-S8kS3*HHysbYki&?TUI(0W0<9y8*pc{m9C1V?^uclR^R zZl6~*EPwK7wq?~-D<>N_wl7-fAIQZmT$I-N#XRzPbA)W&UwU=hS8u1h?_T|>$-qd* z+P&k2HTRc~UUQ$Bo*GW{=-r-EX7=67{*gP2OFZjVZ6AMi({;>Mc#-su^(mbNHx_qT cW4G&DcDo(XouF}{Z)tjJcgiuGEg)JCh+w2cr;sKUzVa_?3hp_D8r*)A-~h4?(t_I$V;{^xhk z`JZ#SwV&5mK562?FxA=P({idu9=lg3ov zpc+qTfnhZ;rb^>l|1gD<(v%jS)%*kT0PQfG9Gy`818Q1eDOF&W!_z@gY;}*OYGwHq2?l|-Qd)f%OPytM41_Sg zs`=@eNV#oc8bR^Pws&==!=WjXjogi(OPmuV88QK3x@WaMT?B6!qIg3SGT$MyfzMFA z(9EjY*ejtU23r=N^R&E3R}k+3h&aLJEh9j=OBn(2a#Wv_UdXWqLLLBJp?|c*OIxu! zLi=9?CV*a^A}hhXU4o82X92p_@uyl}xh*su=@LbO(*p{!KAoQQzsvV|Qxq+gkLy2?-p91R6G#Cv&r{vHGJ!Ivy9s*%jGe&gj0b!gVK3!NA9{Wdr#Uan%_{fn zEhr11w-r9zxH4D3e&7*x4eC0sM@*rIroDBj!$~_H8qo#kbB-?tCh5AgQie|ZKnv+>s*cvtYCB5KT)e6L$!XR#Z_HhxUE7MZFGjaa}C?}`z%di z{hGp$zE-Xt?9qQ;vUA70%a&r4bWyekf>5L{DJf-rOy&ypGED z7MI(QYje!B-#o+_)_-gfOfL7(vD>HiR5}{Fdy1yKYwDkE#j5SUx$b;r+Q+S4``665 z`l>+hx_tNIpJ#VZezC4tSGf7JdEv)C-P+(`pT#wq$4fQmPaYXL(zB_=Fdx1D-{LBc H!>4ZntI1k{ diff --git a/skins/subPurple/images/td_category_right.gif b/skins/subPurple/images/td_category_right.gif index e3228298711801c0f2067898e27b925225c4e4ee..4174b08d18fc23a3e030c2084325f8e368c85ce6 100644 GIT binary patch literal 942 zcmYLIYe*DP6#m8?b!da8%T5na+ti|Ri>*v5leR3^WJ~`P!B!ZIS!5w0Br)X5VA%_1 zh~BmNBZ{&gLA6CMBBG)oR*-@S3d(k8cd3meE!J-L&Te!W?me7y=KIb$-@X1db&Hp5 zb)gI+KqfD9G@QErC z3 zJS$6Zch;>~$|5!v{CG+S+x@hR{j!3waZ-| zlM>w^oE8s(r3#9HVDq*zM-CnvA(3>lbd2yG7oZhTcrx(6E9_To&o<#PKLxNkjpea? zTHZ%fpac}`n`ZCa1}54$*}1V{{adPoS&GEL<<;p3!a#^M|HAE!Nm0U>YjIFT66oe5 z!9o;%`e*wb=meUwNW*CT5fuopw5=VO3Dog`C?gih$x`_-r_p1;cLBdEKy(`vqZYyj zLK-xmUAPIVfl{O?!W1D2t%lW+lLhaD+F=huTt-G=d5a+&|Y#QF1FlKb;hb4K;y2czcDniI~Nvu#s-mtUQ%TK~v(`gpA2V)f2H z;@R(Co`+ZJrJJvH%o;dTd9EOT+@hK5u1q?T7<_rNf56ysXUpw5Cp>R2jXM)wyKho| V@anFE*N!<{9 literal 664 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 literal 0 HcmV?d00001 diff --git a/skins/subPurple/index_category_add.tpl b/skins/subPurple/index_category_add.tpl index e7a05ca..b353462 100644 --- a/skins/subPurple/index_category_add.tpl +++ b/skins/subPurple/index_category_add.tpl @@ -1,9 +1,9 @@  
- + - +
  
diff --git a/skins/subPurple/overall_header.tpl b/skins/subPurple/overall_header.tpl index 45bfd7c..699b2a2 100644 --- a/skins/subPurple/overall_header.tpl +++ b/skins/subPurple/overall_header.tpl @@ -6,7 +6,7 @@ -<? echo $skin['forumname']; ?> - <? echo $skin['mainpage']; ?> +<? echo $skin['forumname']; ?> • <? echo $skin['mainpage']; ?>