Kod: Tümünü seç
##############################################################
## MOD İSMİ: Easy Sub-Forums
## MOD YAPIMCILARI: acoolwelshbloke <> () http://www.www.tec2spec.co.uk/forum/
## MOD AÇIKLAMASI; This mod allows you to "attach" specific forums to another so that they are not displayed on the main index page but inside another forum. This emulates the sub-forums features but does not really create true sub-forum functionality.
##
## MOD VERSİYONU: 1.0.8
##
## KURULUM SEVİYESİ : ORTA
## KURULUM SÜRESİ : 30 DK
## EDİTLENECEK DOSYALAR :
## includes/functions.php
## admin/admin_forums.php
## index.php
## viewforum.php
## viewtopic.php
## posting.php
## templates/subSilver/index_body.tpl
## templates/subSilver/viewforum_body.tpl
## templates/subSilver/viewtopic_body.tpl
## templates/subSilver/admin/forum_edit_body.tpl
## templates/subSilver/admin/forum_admin_body.tpl
## templates/subSilver/posting_body.tpl
## language/lang_english/lang_main.php
## language/lang_english/lang_admin.php
##
## Included Files: (n/a)
##############################################################
## Author Notes:
##
## This mod is based on pseudo attached forum mod by Harishankar (http://literaryforums.org).
## It has been re-written from the ground up.
## Test this MOD in a testing/isolated enviroment if you have heavy modded forum.
## Installs fine with EasyMod on vanilla phpBB setup
##
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################
#
#-----[ SQL OLUŞTUR ]-------------------------------------------------
#
# Modu kurmadan önce SQL unuzu oluşturunuz.
#
#
ALTER TABLE `phpbb_topics` ADD INDEX (topic_last_post_id);
ALTER TABLE `phpbb_forums` ADD attached_forum_id MEDIUMINT(8) DEFAULT '-1' NOT NULL;
#
#-----[ AÇ ]------------------------------------------------
#
/includes/functions.php
#
#-----[ BUL ]------------------------------------------------
#
function get_db_stat($mode)
{
#
#-----[ ÖNCESİNE EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
function check_unread($forum_id)
{
global $new_topic_data, $tracking_topics, $tracking_forums, $HTTP_COOKIE_VARS, $board_config;
if ( !empty($new_topic_data[$forum_id]) )
{
$forum_last_post_time = 0;
while( list($check_topic_id, $check_post_time) = @each($new_topic_data[$forum_id]) )
{
if ( empty($tracking_topics[$check_topic_id]) )
{
$unread_topics = true;
$forum_last_post_time = max($check_post_time, $forum_last_post_time);
}
else
{
if ( $tracking_topics[$check_topic_id] < $check_post_time )
{
$unread_topics = true;
$forum_last_post_time = max($check_post_time, $forum_last_post_time);
}
}
}
if ( !empty($tracking_forums[$forum_id]) )
{
if ( $tracking_forums[$forum_id] > $forum_last_post_time )
{
$unread_topics = false;
}
}
if ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) )
{
if ( $HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all'] > $forum_last_post_time )
{
$unread_topics = false;
}
}
}
return $unread_topics;
}
// END Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
function make_jumpbox($action, $match_forum_id = 0)
{
global $template, $userdata, $lang, $db, $nav_links, $phpEx, $SID;
#
#-----[ ARDINA EKLE]------------------------------------------
#
global $parent_lookup;
#
#-----[ BUL ]------------------------------------------------
#
if ( $forum_rows[$j]['cat_id'] == $category_rows[$i]['cat_id'] && $forum_rows[$j]['auth_view'] <= AUTH_REG )
{
#
#-----[ ÖNCESİNE EKLE ]------------------------------------------
#
if ($parent_lookup==$forum_rows[$j]['forum_id'] && !$assigned)
{
$template->assign_block_vars('switch_parent_link', array() );
$template->assign_vars(array(
'PARENT_NAME' => $forum_rows[$j]['forum_name'],
'PARENT_URL'=>append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=" . $forum_rows[$j]['forum_id'])
));
$assigned=TRUE;
}
#
#-----[ AÇ ]------------------------------------------------
#
/admin/admin_forums.php
#
#-----[ BUL ]------------------------------------------------
#
$forumstatus = $row['forum_status'];
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
$forum_attached_id = $row['attached_forum_id'];
$sql = "SELECT * from ". FORUMS_TABLE. " WHERE attached_forum_id = $forum_id";
if( !$r = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Couldn't get list of children Forums", "", __LINE__, __FILE__, $sql);
}
if( $db->sql_numrows($r) > 0 )
{
$not_attachable=1;
$has_subforums=1;
$template->assign_block_vars('switch_attached_no', array());
if (intval($HTTP_POST_VARS['detach_enabled'])) $detach_enabled = "checked=\"checked\"";
}
else
{
// this forum is not a parent of any other forum
$sql = "SELECT * FROM ". FORUMS_TABLE. " WHERE attached_forum_id=-1 and cat_id= $cat_id and forum_id<>$forum_id ORDER BY forum_order";
if( !$result1 = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Couldn't get list of attachable Forums", "", __LINE__, __FILE__, $sql);
}
if( $db->sql_numrows($result1) > 0 )
{
$attachable_forums = '<option value = "-1"'.($forum_attached_id==-1?' selected':'').'> NOT ATTACHED TO ANY FORUM </a>';
while( $row1 = $db->sql_fetchrow($result1) )
{
$s='';
if ($forum_attached_id == $row1['forum_id'])
{
$s = " selected=\"selected\"";
}
$attachable_forums .= '<option value="'.$row1[forum_id].$s.'">' . $row1[forum_name] . '</option>\n';
}
}
else
{
$no_attachable_forums=1;
}
}
// End Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
$forum_id = '';
$prune_enabled = '';
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
$sql = "SELECT * FROM ". FORUMS_TABLE. " WHERE attached_forum_id=-1 and cat_id= $cat_id ORDER BY forum_order";
if( !$result1 = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Couldn't get list of Categories/Forums", "", __LINE__, __FILE__, $sql);
}
if( $db->sql_numrows($result1) > 0 )
{
$attachable_forums = '<option value = "-1"'.(($forum_attached_id==-1 || !$forum_attached_id)?' selected':'').'> NOT ATTACHED TO ANY FORUM </a>';
while( $row1 = $db->sql_fetchrow($result1) )
{
if ($forum_attached_id == $row1['forum_id'])
{
$s = " selected=\"selected\"";
}
$attachable_forums .= '<option value="'.$row1[forum_id].$s.'">' . $row1[forum_name] . '</option>\n';
}
}
else
{
$no_attachable_forums=1;
}
// END Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
$catlist = get_list('category', $cat_id, TRUE);
#
#-----[ ÖNCESİNE EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
$forum_attached_id = $attachable_forums;
// END Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
$s_hidden_fields = '<input type="hidden" name="mode" value="' . $newmode .'" /><input type="hidden" name="' . POST_FORUM_URL . '" value="' . $forum_id . '" />';
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
if ($not_attachable or $no_attachable_forums)
{
if ($has_subforums)
{
$lang['Attached_Description'] = $lang['Has_attachments'].'<br>'. $lang['Attached_Description'];
$s_hidden_fields .='<input type="hidden" name="has_subforums" value="1" />';
}
if ($no_attachable_forums) $lang['Attached_Description'] = $lang['No_attach_forums'].'<br>'. $lang['Attached_Description'];
$s_hidden_fields .='<input type="hidden" name="attached_forum_id" value="-1" />';
}
else
{
$template->assign_block_vars('switch_attached_yes', array());
}
$s_hidden_fields .='<input type="hidden" name="old_cat_id" value="'.$cat_id.'" />';
// END Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
'S_PRUNE_ENABLED' => $prune_enabled,
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
'S_ATTACHED_FORUM_ID' => $forum_attached_id,
'S_DETACH_ENABLED'=> $detach_enabled,
// End Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
'L_CATEGORY' => $lang['Category'],
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
'L_ATTACHED_FORUM' => $lang['Attached_Field_Title'] ,
'L_ATTACHED_DESC' => $lang['Attached_Description'],
'L_DETACH_DESC' => $lang['Detach_Description'],
// End Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
$sql = "INSERT INTO " . FORUMS_TABLE . " (forum_id, forum_name, cat_id, forum_desc, forum_order, forum_status, prune_enable" . $field_sql . ")
VALUES ('" . $next_id . "', '" . str_replace("\'", "''", $HTTP_POST_VARS['forumname']) . "', " . intval($HTTP_POST_VARS[POST_CAT_URL]) . ", '" . str_replace("\'", "''", $HTTP_POST_VARS['forumdesc']) . "', $next_order, " . intval($HTTP_POST_VARS['forumstatus']) . ", " . intval($HTTP_POST_VARS['prune_enable']) . $value_sql . ")";
#
#-----[ BUNUNLA DEĞİŞTİR ]----------------------------------------
#
// Modified by Easy Sub-Forums MOD
if (intval($HTTP_POST_VARS['old_cat_id']) != intval($HTTP_POST_VARS[POST_CAT_URL]))
{
$HTTP_POST_VARS['attached_forum_id']=-1;
}
$sql = "INSERT INTO " . FORUMS_TABLE . " (forum_id, forum_name, cat_id, attached_forum_id, forum_desc, forum_order, forum_status, prune_enable" . $field_sql . ")
VALUES ('" . $next_id . "', '" . str_replace("\'", "''", $HTTP_POST_VARS['forumname']) . "', " . intval($HTTP_POST_VARS[POST_CAT_URL]) . ", " . intval($HTTP_POST_VARS['attached_forum_id']) . ", '" . str_replace("\'", "''", $HTTP_POST_VARS['forumdesc']) . "', $next_order, " . intval($HTTP_POST_VARS['forumstatus']) . ", " . intval($HTTP_POST_VARS['prune_enable']) . $value_sql . ")";
// End Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
$sql = "UPDATE " . FORUMS_TABLE . "
SET forum_name = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumname']) . "', cat_id = " . intval($HTTP_POST_VARS[POST_CAT_URL]) . ", forum_desc = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumdesc']) . "', forum_status = " . intval($HTTP_POST_VARS['forumstatus']) . ", prune_enable = " . intval($HTTP_POST_VARS['prune_enable']) . "
WHERE forum_id = " . intval($HTTP_POST_VARS[POST_FORUM_URL]);
#
#-----[ BUNUNLA DEĞİŞTİR ]----------------------------------------
#
// Modified by Easy Sub-Forums MOD
if (isset($HTTP_POST_VARS['detach_enabled']) && isset($HTTP_POST_VARS['has_subforums']))
{
$sql = "UPDATE ". FORUMS_TABLE. " SET attached_forum_id=-1 WHERE attached_forum_id=" . intval($HTTP_POST_VARS[POST_FORUM_URL]);
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Couldn't detach subforums", "", __LINE__, __FILE__, $sql);
}
}
if (intval($HTTP_POST_VARS['old_cat_id']) != intval($HTTP_POST_VARS[POST_CAT_URL]))
{
$HTTP_POST_VARS['attached_forum_id']=-1;
if (isset($HTTP_POST_VARS['has_subforums']) && !isset($HTTP_POST_VARS['detach_enabled']))
{
$sql = "UPDATE ". FORUMS_TABLE ." SET cat_id=". intval($HTTP_POST_VARS[POST_CAT_URL]) ." WHERE attached_forum_id=" . intval($HTTP_POST_VARS[POST_FORUM_URL]);
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Couldn't update subforums to new category", "", __LINE__, __FILE__, $sql);
}
}
}
$sql = "UPDATE " . FORUMS_TABLE . "
SET forum_name = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumname']) . "', cat_id = " . intval($HTTP_POST_VARS[POST_CAT_URL]) .", attached_forum_id = " . intval($HTTP_POST_VARS['attached_forum_id']) . ", forum_desc = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumdesc']) . "', forum_status = " . intval($HTTP_POST_VARS['forumstatus']) . ", prune_enable = " . intval($HTTP_POST_VARS['prune_enable']) . "
WHERE forum_id = " . intval($HTTP_POST_VARS[POST_FORUM_URL]);
// End Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
if( $total_forums = $db->sql_numrows($q_forums) )
{
$forum_rows = $db->sql_fetchrowset($q_forums);
}
#
#-----[ ARDINA EKLE ]------------------------------------------
#
$subforum_rows=$forum_rows;
#
#-----[ BUL ]------------------------------------------------
#
$template->assign_block_vars("catrow.forumrow", array(
'FORUM_NAME' => $forum_rows[$j]['forum_name'],
'FORUM_DESC' => $forum_rows[$j]['forum_desc'],
'ROW_COLOR' => $row_color,
'NUM_TOPICS' => $forum_rows[$j]['forum_topics'],
'NUM_POSTS' => $forum_rows[$j]['forum_posts'],
'U_VIEWFORUM' => append_sid($phpbb_root_path."viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_EDIT' => append_sid("admin_forums.$phpEx?mode=editforum&" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_DELETE' => append_sid("admin_forums.$phpEx?mode=deleteforum&" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_MOVE_UP' => append_sid("admin_forums.$phpEx?mode=forum_order&move=-15&" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_MOVE_DOWN' => append_sid("admin_forums.$phpEx?mode=forum_order&move=15&" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_RESYNC' => append_sid("admin_forums.$phpEx?mode=forum_sync&" . POST_FORUM_URL . "=$forum_id"))
);
#
#-----[ DEĞİŞTİR ]----------------------------------------
#
$sub_error=false;
$do_template=false;
if ($forum_rows[$j]['attached_forum_id'] !=-1)
{
$ok='';
for($k = 0; $k < $total_forums; $k++)
{
$subforum_id = $subforum_rows[$k]['forum_id'];
if ($subforum_id == $forum_rows[$j]['attached_forum_id'] && $forum_rows[$k]['attached_forum_id']==-1)
{
$ok=TRUE;//normal parent found
}
}
if ($forum_rows[$j]['attached_forum_id']==$forum_id) $ok=FALSE; //attached to itself
if ($forum_rows[$j]['attached_forum_id']==0) $ok=FALSE; //invalid parent
if (!$ok)
{
$do_template=TRUE;
$sub_error=true;
}
}
else
{
$do_template=true;
}//attached_forum_id'] ==-1
if ($do_template)
{
$template->assign_block_vars("catrow.forumrow", array(
'FORUM_NAME' => $forum_rows[$j]['forum_name'],
'FORUM_DESC' => $forum_rows[$j]['forum_desc'],
'ROW_COLOR' => $row_color,
'NUM_TOPICS' => $forum_rows[$j]['forum_topics'],
'NUM_POSTS' => $forum_rows[$j]['forum_posts'],
'U_VIEWFORUM' => append_sid($phpbb_root_path."viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_EDIT' => append_sid("admin_forums.$phpEx?mode=editforum&" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_DELETE' => append_sid("admin_forums.$phpEx?mode=deleteforum&" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_MOVE_UP' => append_sid("admin_forums.$phpEx?mode=forum_order&move=-15&" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_MOVE_DOWN' => append_sid("admin_forums.$phpEx?mode=forum_order&move=15&" . POST_FORUM_URL . "=$forum_id"),
'U_FORUM_RESYNC' => append_sid("admin_forums.$phpEx?mode=forum_sync&" . POST_FORUM_URL . "=$forum_id"))
);
if ($sub_error)
{
$template->assign_block_vars ('catrow.forumrow.switch_error',array());
}
for($k = 0; $k < $total_forums; $k++)
{
$subforum_id = $subforum_rows[$k]['forum_id'];
if ($subforum_rows[$k]['attached_forum_id'] == $forum_id)
{
$template->assign_block_vars("catrow.forumrow", array(
'FORUM_NAME' => $subforum_rows[$k]['forum_name'],
'FORUM_DESC' => $subforum_rows[$k]['forum_desc'],
'ROW_COLOR' => $row_color,
'NUM_TOPICS' => $subforum_rows[$k]['forum_topics'],
'NUM_POSTS' => $subforum_rows[$k]['forum_posts'],
'U_VIEWFORUM' => append_sid($phpbb_root_path."viewforum.$phpEx?" . POST_FORUM_URL . "=$subforum_id"),
'U_FORUM_EDIT' => append_sid("admin_forums.$phpEx?mode=editforum&" . POST_FORUM_URL . "=$subforum_id"),
'U_FORUM_DELETE' => append_sid("admin_forums.$phpEx?mode=deleteforum&" . POST_FORUM_URL . "=$subforum_id"),
'U_FORUM_MOVE_UP' => append_sid("admin_forums.$phpEx?mode=forum_order&move=-15&" . POST_FORUM_URL . "=$subforum_id"),
'U_FORUM_MOVE_DOWN' => append_sid("admin_forums.$phpEx?mode=forum_order&move=15&" . POST_FORUM_URL . "=$subforum_id"),
'U_FORUM_RESYNC' => append_sid("admin_forums.$phpEx?mode=forum_sync&" . POST_FORUM_URL . "=$subforum_id"))
);
$template->assign_block_vars ('catrow.forumrow.switch_attached_forum',array());
}
}
}
#
#-----[ AÇ ]------------------------------------------------
#
index.php
#
#-----[ BUL ]------------------------------------------------
#
$sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
FROM (( " . FORUMS_TABLE . " f
LEFT JOIN " . POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id )
LEFT JOIN " . USERS_TABLE . " u ON u.user_id = p.poster_id )
ORDER BY f.cat_id, f.forum_order";
#
#-----[ BUNUNLA DEĞİŞTİR ]----------------------------------------
#
// Modified by Easy Sub-Forums MOD
$sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id, t.topic_id, t.topic_title
FROM ((( " . FORUMS_TABLE . " f
LEFT JOIN " . POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id )
LEFT JOIN " . USERS_TABLE . " u ON u.user_id = p.poster_id )
LEFT JOIN " . TOPICS_TABLE . " t ON t.topic_last_post_id = f.forum_last_post_id)
GROUP BY f.forum_id ORDER BY f.cat_id, f.forum_order";
// END Modified by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
{
$forum_data[] = $row;
}
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
$attach=$forum_data;
// END Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
$forum_id = $forum_data[$j]['forum_id'];
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
$attached_id = $forum_data[$j]['attached_forum_id'];
if ( $is_auth_ary[$forum_id]['auth_view'] && $attached_id == -1 )
{
$attached_forums = array();
foreach ($attach as $key => $value)
{
$sub_forum_id = $value['forum_id'];
if ($value['attached_forum_id']==$forum_id && $is_auth_ary[$sub_forum_id]['auth_view'])
{
//combining topic and post count for forum and subforums
$forum_data[$j]['forum_posts']=$forum_data[$j]['forum_posts']+$value['forum_posts'];
$forum_data[$j]['forum_topics']=$forum_data[$j]['forum_topics']+$value['forum_topics'];
//END combining topic and post count
//Last post link - check if any of subforums have newest posts and link to them instead
if ($value['post_time']>$forum_data[$j]['post_time'])
{
$forum_data[$j]['user_id'] = $value['user_id'];
$forum_data[$j]['post_username'] = $value['post_username'];
$forum_data[$j]['forum_last_post_id'] = $value['forum_last_post_id'];
$forum_data[$j]['post_time'] = $value['post_time'];
$forum_data[$j]['username'] = $value['username'];
$forum_data[$j]['topic_title'] = $value['topic_title'];
}
// END last post check
$unread_topics = false;
if ( $userdata['session_logged_in'] )
{
if (check_unread($value['forum_id']))
{
$attach_img = $images['icon_minipost_new'];
$l_attach_img = $lang['New_posts'];
}
else
{
$attach_img = $images['icon_minipost'];
$l_attach_img = $lang['No_new_posts'];
}
}
else
{
$attach_img = $images['icon_minipost'];
$l_attach_img = $lang['No_new_posts'];
}
$attached_forums[] = array(
'sub_img'=>$attach_img,
'sub_alt'=>$l_attach_img,
'sub_name'=>$value['forum_name'],
'sub_url'=>append_sid ('viewforum.php?f=' . $value['forum_id'] )
);
}
}
// END Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
if ( !empty($new_topic_data[$forum_id]) )
{
$forum_last_post_time = 0;
while( list($check_topic_id, $check_post_time) = @each($new_topic_data[$forum_id]) )
{
if ( empty($tracking_topics[$check_topic_id]) )
{
$unread_topics = true;
$forum_last_post_time = max($check_post_time, $forum_last_post_time);
}
else
{
if ( $tracking_topics[$check_topic_id] < $check_post_time )
{
$unread_topics = true;
$forum_last_post_time = max($check_post_time, $forum_last_post_time);
}
}
}
if ( !empty($tracking_forums[$forum_id]) )
{
if ( $tracking_forums[$forum_id] > $forum_last_post_time )
{
$unread_topics = false;
}
}
if ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) )
{
if ( $HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all'] > $forum_last_post_time )
{
$unread_topics = false;
}
}
}
#
#-----[ BUNUNLA DEĞİŞTİR]----------------------------------------
#
// Added by Easy Sub-Forums MOD
$unread_topics=check_unread($forum_id);
// END Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
$last_post_time = create_date($board_config['default_dateformat'], $forum_data[$j]['post_time'], $board_config['board_timezone']);
$last_post = $last_post_time . '<br />';
$last_post .= ( $forum_data[$j]['user_id'] == ANONYMOUS ) ? ( ($forum_data[$j]['post_username'] != '' ) ? $forum_data[$j]['post_username'] . ' ' : $lang['Guest'] . ' ' ) : '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '=' . $forum_data[$j]['user_id']) . '">' . $forum_data[$j]['username'] . '</a> ';
$last_post .= '<a href="' . append_sid("viewtopic.$phpEx?" . POST_POST_URL . '=' . $forum_data[$j]['forum_last_post_id']) . '#' . $forum_data[$j]['forum_last_post_id'] . '"><img src="' . $images['icon_latest_reply'] . '" border="0" alt="' . $lang['View_latest_post'] . '" title="' . $lang['View_latest_post'] . '" /></a>';
#
#-----[ BUNUNLA DEĞİŞTİR ]----------------------------------------
#
// Modified by Easy Sub-Forums MOD
if (strlen($forum_data[$j]['topic_title'])>=25)
{
$forum_data[$j]['topic_title']=substr($forum_data[$j]['topic_title'],0,25). "...";
}
$last_post_time = create_date($board_config['default_dateformat'], $forum_data[$j]['post_time'], $board_config['board_timezone']);
$last_post = '' . $last_post_time . '' . '<br />';
$last_post .= ( $forum_data[$j]['user_id'] == ANONYMOUS ) ? ( ($forum_data[$j]['post_username'] != '' ) ? $forum_data[$j]['post_username'] . ' ' : $lang['Guest'] . ' ' ) : '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '=' . $forum_data[$j]['user_id']) . '">' . $forum_data[$j]['username'] . '</a> <a href="' . append_sid("viewtopic.$phpEx?" . POST_POST_URL . '=' . $forum_data[$j]['forum_last_post_id']) . '#' . $forum_data[$j]['forum_last_post_id'] . '"><img src="' . $images['icon_latest_reply'] . '" border="0" alt="' . $lang['View_latest_post'] . '" title="' . $lang['View_latest_post'] . '" /></a>';
// END Modified by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
$l_moderators = ' ';
$moderator_list = ' ';
#
#-----[ BUNLA DEĞİŞTİR ]----------------------------------------
#
// Modified by Easy Sub-Forums MOD
$l_moderators = '';
$moderator_list = '';
// END Modified by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
'U_VIEWFORUM' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id"))
);
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
$attached_forum_count = count($attached_forums);
if($attached_forum_count)
{
$template->assign_block_vars('catrow.forumrow.switch_attached_forums', array(
'L_ATTACHED_FORUMS' => ($attached_forum_count ==1)? $lang['Attached_forum']: $lang['Attached_forums']
));
if (count($forum_moderators[$forum_id]) > 0 )
{
$template->assign_block_vars('catrow.forumrow.switch_attached_forums.br', array());
}
for($k = 0; $k < $attached_forum_count; $k++)
{
$template->assign_block_vars('catrow.forumrow.switch_attached_forums.attached_forums', array(
'FORUM_IMAGE' => $attached_forums[$k]['sub_img'],
'FORUM_NAME' => $attached_forums[$k]['sub_name'],
'L_FORUM_IMAGE' => $attached_forums[$k]['sub_alt'],
'U_VIEWFORUM' => $attached_forums[$k]['sub_url']
));
}
}
// END added by Easy Sub-Forums MOD
#-----[ BUL ]------------------------------------------------
#
} // for ... categories
#
#-----[ ARDINA EKLE ]------------------------------------------
#
}
#
#-----[ AÇ ]------------------------------------------------
#
viewforum.php
#
#-----[ BUL ]------------------------------------------------
#
$sql = "SELECT *
FROM " . FORUMS_TABLE . "
WHERE forum_id = $forum_id";
#
#-----[ BUNUNLA DEĞİŞTİR ]----------------------------------------
#
// Modified by Easy Sub-Forums MOD
$sql = "SELECT *
FROM " . FORUMS_TABLE . "
WHERE forum_id = $forum_id OR attached_forum_id =$forum_id
ORDER BY attached_forum_id ASC";
// END Modified by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
if ( !($forum_row = $db->sql_fetchrow($result)) )
{
message_die(GENERAL_MESSAGE, 'Forum_not_exist');
}
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// added by Easy Sub-Forums MOD
$attachments='';
if ($db->sql_numrows ($result) > 1)
{
$attachments=TRUE;
}
// END added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
make_jumpbox('viewforum.'.$phpEx);
#
#-----[ ÖNCESİNE EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
if ($forum_row[attached_forum_id]>0)
{
$parent_lookup=$forum_row[attached_forum_id];
}
// END Added by Easy Sub-Forums MOD
#
#-----[ BUL ]------------------------------------------------
#
//
// Okay, lets dump out the page ...
//
#
#-----[ ARDINA EKLE ]------------------------------------------
#
// Added by Easy Sub-Forums MOD
if ($attachments)
{
//
// Obtain a list of topic ids which contain
// posts made since user last visited
//
if ( $userdata['session_logged_in'] )
{
$sql = "SELECT t.forum_id, t.topic_id, p.post_time
FROM " . TOPICS_TABLE . " t, " . POSTS_TABLE . " p
WHERE p.post_id = t.topic_last_post_id
AND p.post_time > " . $userdata['user_lastvisit'] . "
AND t.topic_moved_id = 0";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query new topic information', '', __LINE__, __FILE__, $sql);
}
$new_topic_data = array();
while( $topic_data = $db->sql_fetchrow($result) )
{
$new_topic_data[$topic_data['forum_id']][$topic_data['topic_id']] = $topic_data['post_time'];
}
}
$sql2 = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id, t.topic_id, t.topic_title
FROM ((( " . FORUMS_TABLE . " f
LEFT JOIN " . POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id )
LEFT JOIN " . USERS_TABLE . " u ON u.user_id = p.poster_id )
LEFT JOIN " . TOPICS_TABLE . " t ON t.topic_last_post_id = f.forum_last_post_id)
WHERE attached_forum_id = " . $forum_id . "
GROUP by f.forum_id ORDER BY f.forum_order";
$result2 = $db->sql_query ($sql2);
if (!$result2 )
{
message_die ('Could not gather attached forum info', __LINE__, __FILE__, $sql2);
}
if ($db->sql_numrows ($result2) != 0)
{
while( $row = $db->sql_fetchrow($result2) )
{
$forum_data[] = $row;
}
$is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata, $forum_data);
$x=0;
foreach ($forum_data as $row2 => $value)
{
if ($is_auth_ary[$value['forum_id']]['auth_view'])
{
$x++;
if ($x==1)
{
$template->assign_block_vars ('switch_attached_list',
array( 'L_ATTACHED_FORUM' => $lang['Attached_forums'],
'L_ATTACHED_TOPICS' => $lang['Topics'],
'L_ATTACHED_POSTS' => $lang['Posts'],
'L_LAST_POST'=>$lang['Last_Post']
)
);
}
$attach_forum_link = append_sid('viewforum.php?f=' . $value['forum_id']);
$attach_forum_name = '<a href="' . append_sid('viewforum.php?f=' . $value['forum_id']) . '">' . $value['forum_name'] . '</a>' ;
$attach_forum_desc = $value['forum_desc'];
$attach_forum_topics = $value['forum_topics'];
$attach_forum_posts = $value['forum_posts'];
$last_post_id = $value['forum_last_post_id'];
if ( $value['forum_status'] == FORUM_LOCKED )
{
$folder_image = $images['forum_locked'];
$folder_alt = $lang['Forum_locked'];
}
else
{
$unread_topics = false;
if ( $userdata['session_logged_in'] )
{
$unread_topics=check_unread($value['forum_id']);
}
$folder_image = ( $unread_topics ) ? $images['forum_new'] : $images['forum'];
$folder_alt = ( $unread_topics ) ? $lang['New_posts'] : $lang['No_new_posts'];
}
if ( $value['forum_last_post_id'] )
{
if (strlen($value['topic_title'])>=25)
{
$value['topic_title']=substr($value['topic_title'],0,25). "...";
}
$last_post_time = create_date($board_config['default_dateformat'], $value['post_time'], $board_config['board_timezone']);
$last_post = '' . $last_post_time . '' . '<br />';
$last_post .= ( $value['user_id'] == ANONYMOUS ) ? ( ($value['post_username'] != '' ) ? $value['post_username'] . ' ' : $lang['Guest'] . ' ' ) : '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '=' . $value['user_id']) . '">' . $value['username'] . '</a> <a href="' . append_sid("viewtopic.$phpEx?" . POST_POST_URL . '=' . $value['forum_last_post_id']) . '#' . $value['forum_last_post_id'] . '"><img src="' . $images['icon_latest_reply'] . '" border="0" alt="' . $lang['View_latest_post'] . '" title="' . $lang['View_latest_post'] . '" /></a>';
}
else
{
$last_post = $lang['No_Posts'];
}
$template->assign_block_vars ('switch_attached_list.switch_attached_present',
array
(
'FORUM_FOLDER_IMG' => $folder_image,
'L_FORUM_FOLDER_ALT' => $folder_alt,
'FORUM_NAME' => $attach_forum_name,
'U_VIEWFORUM' => $attach_forum_link,
'FORUM_DESC' => $attach_forum_desc,
'TOPICS' => $attach_forum_topics,
'POSTS' => $attach_forum_posts,
'LAST_POST_ID' => $last_post,
));
}
}
}
$db->sql_freeresult ($result2);
}
// END Added by Easy Sub-Forums MOD
#
#-----[ AÇ ]------------------------------------------------
#
viewtopic.php
#
#-----[ BUL ]------------------------------------------
#
$sql = "SELECT t.topic_id, t.topic_title, t.topic_status, t.topic_replies, t.topic_time, t.topic_type, t.topic_vote, t.topic_last_post_id, f.forum_name, f.forum_status, f.forum_id, f.auth_view, f.auth_read, f.auth_post, f.auth_reply, f.auth_edit, f.auth_delete, f.auth_sticky, f.auth_announce, f.auth_pollcreate, f.auth_vote, f.auth_attachments" . $count_sql . "
#
#-----[ YOL İÇNDE BUL ]---------------------------------
#
" . $count_sql . "
#
#-----[ ÖNCESİNE EKLE ]------------------------------------------
#
, f.attached_forum_id
#
#-----[ BUL ]------------------------------------------------
#
make_jumpbox('viewforum.'.$phpEx, $forum_id);
#
#-----[ ÖNCESİNE EKLE ]------------------------------------------
#
if (intval($forum_topic_data['attached_forum_id'])>0)
{
$parent_lookup=intval($forum_topic_data['attached_forum_id']);
}
#
#-----[ AÇ ]------------------------------------------------
#
posting.php
#
#-----[ BUL ]------------------------------------------------
#
make_jumpbox('viewforum.'.$phpEx);
#
#-----[ ÖNCESİNE EKLE ]------------------------------------------
#
if ($post_info[attached_forum_id]>0)
{
$parent_lookup=$post_info[attached_forum_id];
}
#
#-----[ AÇ ]------------------------------------------------
#
NOT; ŞU AN TEMA KISMINA GEÇİŞ YAPILMIŞTIR LÜTFEN KENDİ TEMANIZIN İÇİNE GİRİNİZ. BAZI TEMALARDA BULMANIZ GEREKEN KODLAR FARKLI OLABİLİR LÜTFEM DİKKATLİ OLUNUZ
/templates/subSilver/admin/forum_admin_body.tpl
#
#-----[ BUL ]------------------------------------------------
#
<td class="row2"><span class="gen"><a href="{catrow.forumrow.U_VIEWFORUM}" target="_new">{catrow.forumrow.FORUM_NAME}</a></span><br /><span class="gensmall">{catrow.forumrow.FORUM_DESC}</span></td>
#
#-----[ DEĞİŞTİR ]------------------------------------------
#
<td class="row2"><span class="gen">
<!-- BEGIN switch_attached_forum -->
|__
<!-- END switch_attached_forum -->
<!-- BEGIN switch_error -->
ERROR
<!-- END switch_error -->
<a href="{catrow.forumrow.U_VIEWFORUM}" target="_new">{catrow.forumrow.FORUM_NAME}</a></span><br />
<span class="gensmall">
<!-- BEGIN switch_attached_forum -->
<!-- END switch_attached_forum -->
{catrow.forumrow.FORUM_DESC}</span></td>
#
#-----[ AÇ ]------------------------------------------------
#
/templates/subSilver/admin/forum_edit_body.tpl
#
#-----[ BUL ]------------------------------------------------
#
<tr>
<td class="row1">{L_CATEGORY}</td>
<td class="row2"><select name="c">{S_CAT_LIST}</select></td>
</tr>
#
#-----[ ARDINA EKLE ]------------------------------------------
#
<tr>
<td class="row1">{L_ATTACHED_FORUM}</td>
<td class="row2">
<!-- BEGIN switch_attached_yes -->
<select name="attached_forum_id">{S_ATTACHED_FORUM_ID}</select>
<!-- END switch_attached_yes -->
<!-- BEGIN switch_attached_no -->
{L_DETACH_DESC} <input type="checkbox" name="detach_enabled" value="1" {S_DETACH_ENABLED} /><br />
<!-- END switch_attached_no -->
{L_ATTACHED_DESC}
</td>
</tr>
#
#-----[ AÇ ]------------------------------------------------
#
/templates/subSilver/index_body.tpl
#
#-----[ BUL ]------------------------------------------------
#
</span><span class="gensmall">{catrow.forumrow.L_MODERATOR} {catrow.forumrow.MODERATORS}</span></td>
#
#-----[ BUNUNLA DEĞİŞTİR ]------------------------------------------------
#
</span><span class="gensmall">{catrow.forumrow.L_MODERATOR} {catrow.forumrow.MODERATORS}</span>
<!-- BEGIN switch_attached_forums -->
<!-- BEGIN br -->
<br />
<!-- END br -->
<span class="gensmall"><b>{catrow.forumrow.switch_attached_forums.L_ATTACHED_FORUMS}:</b>
<!-- BEGIN attached_forums -->
<a class="nav" href="{catrow.forumrow.switch_attached_forums.attached_forums.U_VIEWFORUM}"><img alt="{catrow.forumrow.switch_attached_forums.attached_forums.L_FORUM_IMAGE}" border="0" src="{catrow.forumrow.switch_attached_forums.attached_forums.FORUM_IMAGE}" title="{catrow.forumrow.switch_attached_forums.attached_forums.L_FORUM_IMAGE}" />{catrow.forumrow.switch_attached_forums.attached_forums.FORUM_NAME}</a>
<!-- END attached_forums -->
<span class="genmed">
<!-- END switch_attached_forums -->
</td>
#
#-----[ AÇ ]------------------------------------------------
#
/templates/subSilver/viewforum_body.tpl
#
#-----[ BUL ]------------------------------------------------
#
<td align="left" valign="middle" class="nav" width="100%"><span class="nav"> <a href="{U_INDEX}" class="nav">{L_INDEX}</a> -> <a class="nav" href="{U_VIEW_FORUM}">{FORUM_NAME}</a></span></td>
#
#-----[ BUNUNLA DEĞİŞTİR ]------------------------------------------------
#
<td align="left" valign="middle" class="nav" width="100%"><span class="nav"> <a href="{U_INDEX}" class="nav">{L_INDEX}</a>
<!-- BEGIN switch_parent_link -->
-> <a class="nav" href="{PARENT_URL}">{PARENT_NAME}</a>
<!-- END switch_parent_link -->
-> <a class="nav" href="{U_VIEW_FORUM}">{FORUM_NAME}</a></span></td>
#
#-----[ BUL ]------------------------------------------------
#
<table border="0" cellpadding="4" cellspacing="1" width="100%" class="forumline">
#
#-----[ ÖNCESİNE EKLE ]-----------------------------------------
#
<!-- BEGIN switch_attached_list -->
<br />
<table width="100%" cellpadding="2" cellspacing="1" border="0" class="forumline">
<tr>
<th colspan="2" class="thCornerL" height="15" nowrap="nowrap"> {switch_attached_list.L_ATTACHED_FORUM} </th>
<th width="50" class="thTop" nowrap="nowrap"> {switch_attached_list.L_ATTACHED_TOPICS} </th>
<th width="50" class="thTop" nowrap="nowrap"> {switch_attached_list.L_ATTACHED_POSTS} </th>
<th class="thCornerR" nowrap="nowrap"> {switch_attached_list.L_LAST_POST} </th>
</tr>
<!-- BEGIN switch_attached_present -->
<tr>
<td class="row1" align="center" valign="middle" height="38"><img src="{switch_attached_list.switch_attached_present.FORUM_FOLDER_IMG}" width="46" height="25" alt="{switch_attached_list.switch_attached_present.L_FORUM_FOLDER_ALT}" title="{switch_attached_list.switch_attached_present.L_FORUM_FOLDER_ALT}" /></td>
<td class="row1" width="75%"><span class="forumlink"><a class="forumlink" href="{switch_attached_list.switch_attached_present.U_VIEWFORUM}">{switch_attached_list.switch_attached_present.FORUM_NAME}</a></span><br /><span class="genmed">{switch_attached_list.switch_attached_present.FORUM_DESC}</span></td>
<td class="row2" align="center" valign="middle"><span class="gensmall">{switch_attached_list.switch_attached_present.TOPICS}</span></td>
<td class="row2" align="center" valign="middle"><span class="gensmall">{switch_attached_list.switch_attached_present.POSTS}</span></td>
<td class="row2" align="center" nowrap="nowrap" valign="middle"><span class="gensmall">{switch_attached_list.switch_attached_present.LAST_POST_ID}</span></td>
</tr>
<!-- END switch_attached_present -->
</table>
<br />
<!-- END switch_attached_list -->
#
#-----[ BUL ]------------------------------------------------
#
<td align="left" valign="middle" width="100%"><span class="nav"> <a href="{U_INDEX}" class="nav">{L_INDEX}</a> -> <a class="nav" href="{U_VIEW_FORUM}">{FORUM_NAME}</a></span></td>
#
#-----[ BUNUNLA DEĞİŞTİR ]------------------------------------------------
#
<td align="left" valign="middle" width="100%"><span class="nav"> <a href="{U_INDEX}" class="nav">{L_INDEX}</a>
<!-- BEGIN switch_parent_link -->
-> <a class="nav" href="{PARENT_URL}">{PARENT_NAME}</a>
<!-- END switch_parent_link -->
-> <a class="nav" href="{U_VIEW_FORUM}">{FORUM_NAME}</a></span></td>
#
#-----[ AÇ ]------------------------------------------------
#
/templates/subSilver/viewtopic_body.tpl
#
#-----[ BUL ]------------------------------------------------
#
<td align="left" valign="middle" width="100%"><span class="nav"> <a href="{U_INDEX}" class="nav">{L_INDEX}</a>
-> <a href="{U_VIEW_FORUM}" class="nav">{FORUM_NAME}</a></span></td>
#
#-----[ BUNUNLA DEĞİŞTİR ]------------------------------------------------
#
<td align="left" valign="middle" width="100%"><span class="nav"> <a href="{U_INDEX}" class="nav">{L_INDEX}</a>
<!-- BEGIN switch_parent_link -->
-> <a class="nav" href="{PARENT_URL}">{PARENT_NAME}</a>
<!-- END switch_parent_link -->
-> <a href="{U_VIEW_FORUM}" class="nav">{FORUM_NAME}</a></span></td>
#
#-----[ BUL ]------------------------------------------------
#
<td align="left" valign="middle" width="100%"><span class="nav"> <a href="{U_INDEX}" class="nav">{L_INDEX}</a>
-> <a href="{U_VIEW_FORUM}" class="nav">{FORUM_NAME}</a></span></td>
#
#-----[ BUNUNLA DEĞİŞTİR ]------------------------------------------------
#
<td align="left" valign="middle" width="100%"><span class="nav"> <a href="{U_INDEX}" class="nav">{L_INDEX}</a>
<!-- BEGIN switch_parent_link -->
-> <a class="nav" href="{PARENT_URL}">{PARENT_NAME}</a>
<!-- END switch_parent_link -->
-> <a href="{U_VIEW_FORUM}" class="nav">{FORUM_NAME}</a></span></td>
#
#-----[ AÇ ]------------------------------------------------
#
/templates/subSilver/posting_body.tpl
#
#-----[ BUL ]------------------------------------------------
#
<td align="left"><span class="nav"><a href="{U_INDEX}" class="nav">{L_INDEX}</a>
#
#-----[ ARDINA EKLE ]------------------------------------------------
#
<!-- BEGIN switch_parent_link -->
-> <a class="nav" href="{PARENT_URL}">{PARENT_NAME}</a>
<!-- END switch_parent_link -->
#
#-----[ AÇ ]------------------------------------------------
#
/language/lang_english/lang_admin.php
#
#-----[ BUL ]------------------------------------------------
#
//
// That's all Folks!
#
#-----[ ÖNCESİNE EKLE ]-----------------------------------------
#
// Added by Easy Sub-Forums MOD
$lang['Attached_Field_Title'] = 'Attached to forum';
$lang['Attached_Description'] = "This field has been added by sub-forums mod.
It will display all attachable forums (if available) in this category";
$lang['Detach_Description'] = "Detach all forums";
$lang['Has_attachments'] = 'This forum has other forums attached to it. If you assign new category to this forum it will move all it\'s subforums to new category unless you select detach checkbox';
$lang['No_attach_forums'] = 'No attachable forums in this category';
// End Added by Easy Sub-Forums MOD
#
#-----[ AÇ ]------------------------------------------------
#
/language/lang_english/lang_main.php
#
#-----[ BUL ]------------------------------------------------
#
//
// That's all, Folks!
#
#-----[ ÖNCESİNE EKLE ]-----------------------------------------
#
// Added by Easy Sub-Forums MOD
$lang['Attached_forum'] = 'Sub-Forum';
$lang['Attached_forums'] = 'Sub-Forums';
// End Added by Easy Sub-Forums MOD
#
#-----[ TÜM DOSYALARDAKİ DEĞİŞİKLİKLERİ YAP KAYDET VE KAPAT MOD KURULUMU TAMAMLANMIŞTIR LÜTFEN SQL UNUZU ÇALIŞTIRMAYI UNUTMAYINIZ ]--------------------------------
#
# EoM