<?
include_once("./_common.php");

if (!$board[bo_table])
    if ($cwin) // ÄÚ¸àÆ® º¸±â
       alert_close("Á¸ÀçÇÏÁö ¾Ê´Â °Ô½ÃÆÇÀÔ´Ï´Ù.", $g4[path]);
    else
       alert("Á¸ÀçÇÏÁö ¾Ê´Â °Ô½ÃÆÇÀÔ´Ï´Ù.", $g4[path]);

if ($write[wr_comment] < 0) {
    if ($cwin) // ÄÚ¸àÆ® º¸±â
        alert_close("ÄÚ¸àÆ®´Â »ó¼¼º¸±â ÇÏ½Ç ¼ö ¾ø½À´Ï´Ù.");
    else
        alert("ÄÚ¸àÆ®´Â »ó¼¼º¸±â ÇÏ½Ç ¼ö ¾ø½À´Ï´Ù.");
}

if (!$bo_table) {
    $msg = "bo_table °ªÀÌ ³Ñ¾î¿ÀÁö ¾Ê¾Ò½À´Ï´Ù.\\n\\nboard.php?bo_table=code ¿Í °°Àº ¹æ½ÄÀ¸·Î ³Ñ°Ü ÁÖ¼¼¿ä.";
    if ($cwin) // ÄÚ¸àÆ® º¸±â
        alert_close($msg);
    else 
        alert($msg);
}

// ±×·ìÁ¢±Ù »ç¿ë
if ($group[gr_use_access]) {
    if (!$member[mb_id]) {
        $msg = "ºñÈ¸¿øÀº ÀÌ °Ô½ÃÆÇ¿¡ Á¢±ÙÇÒ ±ÇÇÑÀÌ ¾ø½À´Ï´Ù.\\n\\nÈ¸¿øÀÌ½Ã¶ó¸é ·Î±×ÀÎ ÈÄ ÀÌ¿ëÇØ º¸½Ê½Ã¿À.";
        if ($cwin)
            alert_close($msg);
        else 
            alert($msg, "./login.php?wr_id=$wr_id{$qstr}&url=".urlencode("./board.php?bo_table=$bo_table&wr_id=$wr_id"));
    }

    // ±×·ì°ü¸®ÀÚ ÀÌ»óÀÌ¶ó¸é Åë°ú 
    if ($is_admin == "super" || $is_admin == "group") 
        ; 
    else {
        // ±×·ìÁ¢±Ù
        $sql = " select count(*) as cnt 
                   from $g4[group_member_table] 
                  where gr_id = '$board[gr_id]' and mb_id = '$member[mb_id]' ";
        $row = sql_fetch($sql);
        if (!$row[cnt]) 
            alert("Á¢±Ù ±ÇÇÑÀÌ ¾ø½À´Ï´Ù.\\n\\n±Ã±ÝÇÏ½Å »çÇ×Àº °ü¸®ÀÚ¿¡°Ô ¹®ÀÇ¹Ù¶ø´Ï´Ù.");
    }
}

// wr_id °ªÀÌ ÀÖÀ¸¸é ±ÛÀÐ±â 
if ($wr_id) {
    // ±ÛÀÌ ¾øÀ» °æ¿ì ÇØ´ç °Ô½ÃÆÇ ¸ñ·ÏÀ¸·Î ÀÌµ¿
    if (!$write[wr_id]) {
        $msg = "±ÛÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\\n\\n±ÛÀÌ »èÁ¦µÇ¾ú°Å³ª ÀÌµ¿µÈ °æ¿ìÀÔ´Ï´Ù.";
        if ($cwin)
            alert_close($msg);
        else
            alert($msg, "./board.php?bo_table=$bo_table");
    }

    // ·Î±×ÀÎµÈ È¸¿øÀÇ ±ÇÇÑÀÌ ¼³Á¤µÈ ÀÐ±â ±ÇÇÑº¸´Ù ÀÛ´Ù¸é
    if ($member[mb_level] < $board[bo_read_level]) {
        if ($member[mb_id]) 
            alert("±ÛÀ» ÀÐÀ» ±ÇÇÑÀÌ ¾ø½À´Ï´Ù.");
        else 
            alert("±ÛÀ» ÀÐÀ» ±ÇÇÑÀÌ ¾ø½À´Ï´Ù.\\n\\nÈ¸¿øÀÌ½Ã¶ó¸é ·Î±×ÀÎ ÈÄ ÀÌ¿ëÇØ º¸½Ê½Ã¿À.", "./login.php?wr_id=$wr_id{$qstr}&url=".urlencode("board.php?bo_table=$bo_table&wr_id=$wr_id"));
    }

    // ÀÚ½ÅÀÇ ±ÛÀÌ°Å³ª °ü¸®ÀÚ¶ó¸é Åë°ú
    if (($write[mb_id] && $write[mb_id] == $member[mb_id]) || $is_admin)
        ;
    else {
        // ºñ¹Ð±ÛÀÌ¶ó¸é
        if (strstr($write[wr_option], "secret")) {
            $ss_name = "ss_secret_{$bo_table}_$write[wr_num]";
            //$ss_name = "ss_secret_{$bo_table}_{$wr_id}";
            // ÇÑ¹ø ÀÐÀº °Ô½Ã¹°ÀÇ ¹øÈ£´Â ¼¼¼Ç¿¡ ÀúÀåµÇ¾î ÀÖ°í °°Àº °Ô½Ã¹°À» ÀÐÀ» °æ¿ì´Â ´Ù½Ã ÆÐ½º¿öµå¸¦ ¹¯Áö ¾Ê½À´Ï´Ù.
            // ÀÌ °Ô½Ã¹°ÀÌ ÀúÀåµÈ °Ô½Ã¹°ÀÌ ¾Æ´Ï¸é¼­ °ü¸®ÀÚ°¡ ¾Æ´Ï¶ó¸é
            //if ("$bo_table|$write[wr_num]" != get_session("ss_secret")) 
            if (!get_session($ss_name)) 
                goto_url("./password.php?w=s&bo_table=$bo_table&wr_id=$wr_id{$qstr}");

            set_session($ss_name, TRUE);
        }
    }

    // ÇÑ¹ø ÀÐÀº±ÛÀº ºê¶ó¿ìÀú¸¦ ´Ý±âÀü±îÁö´Â Ä«¿îÆ®¸¦ Áõ°¡½ÃÅ°Áö ¾ÊÀ½
    $ss_name = "ss_view_{$bo_table}_{$wr_id}";
    if (!get_session($ss_name)) {
        sql_query(" update $write_table set wr_hit = wr_hit + 1 where wr_id = '$wr_id' ");

        // ÀÚ½ÅÀÇ ±ÛÀÌ°Å³ª °ü¸®ÀÚ¶ó¸é Åë°ú
        if (($write[mb_id] && $write[mb_id] == $member[mb_id]) || $is_admin)
            ;
        else {
            // È¸¿øÀÌ»ó ±ÛÀÐ±â°¡ °¡´ÉÇÏ´Ù¸é
            if ($board[bo_read_level] > 1) {
                // ±ÛÀÐ±â Æ÷ÀÎÆ®°¡ À½¼öÀÌ°í È¸¿øÀÇ Æ÷ÀÎÆ®°¡ 0 ÀÌ°Å³ª ÀÛ´Ù¸é
                //if ($board[bo_read_point] < 0 && $member[mb_point] <= 0)
                if ($member[mb_point] + $board[bo_read_point] < 0)
                    alert("º¸À¯ÇÏ½Å Æ÷ÀÎÆ®(".number_format($member[mb_point]).")°¡ ¾ø¾î³ª ¸ðÀÚ¶ó¼­ ±ÛÀÐ±â(".number_format($board[bo_read_point]).")°¡ ºÒ°¡ÇÕ´Ï´Ù.\\n\\nÆ÷ÀÎÆ®¸¦ ¸ðÀ¸½Å ÈÄ ´Ù½Ã ±ÛÀÐ±â ÇØ ÁÖ½Ê½Ã¿À.");

                insert_point($member[mb_id], $board[bo_read_point], "$board[bo_subject] $wr_id ±ÛÀÐ±â");
            }
        }

        set_session($ss_name, TRUE);
    }

    $g4[title] = "$group[gr_subject] > $board[bo_subject] > " . strip_tags(conv_subject($write[wr_subject], 255));
} else {
    if ($member[mb_level] < $board[bo_list_level]) {
        if ($member[mb_id]) 
            alert("¸ñ·ÏÀ» º¼ ±ÇÇÑÀÌ ¾ø½À´Ï´Ù.");
        else 
            alert("¸ñ·ÏÀ» º¼ ±ÇÇÑÀÌ ¾ø½À´Ï´Ù.\\n\\nÈ¸¿øÀÌ½Ã¶ó¸é ·Î±×ÀÎ ÈÄ ÀÌ¿ëÇØ º¸½Ê½Ã¿À.", "./login.php?wr_id=$wr_id{$qstr}&url=".urlencode("board.php?bo_table=$bo_table&wr_id=$wr_id"));
    }

    if (!$page) $page = 1; 

    $g4[title] = "$group[gr_subject] > $board[bo_subject] $page ÆäÀÌÁö";
}

include_once("$g4[path]/head.sub.php");

$width = $board[bo_table_width];
if ($width <= 100) $width .= '%'; 

// IPº¸ÀÌ±â »ç¿ë ¿©ºÎ
$ip = "";
$is_ip_view = $board[bo_use_ip_view];
if ($is_admin) {
    $is_ip_view = true;
    $ip = $write[wr_ip];
} else // °ü¸®ÀÚ°¡ ¾Æ´Ï¶ó¸é IP ÁÖ¼Ò¸¦ °¨ÃáÈÄ º¸¿©ÁÝ´Ï´Ù.
    $ip = preg_replace("/([0-9]+).([0-9]+).([0-9]+).([0-9]+)/", "\\1.¢½.\\3.\\4", $write[wr_ip]);

// ºÐ·ù »ç¿ë
$is_category = false;
$category_name = "";
if ($board[bo_use_category]) {
    $is_category = true;
    $category_name = $write[ca_name]; // ºÐ·ù¸í
}

// ÃßÃµ »ç¿ë
$is_good = false;
if ($board[bo_use_good]) 
    $is_good = true;

// ºñÃßÃµ »ç¿ë
$is_nogood = false;
if ($board[bo_use_nogood]) 
    $is_nogood = true;

$admin_href = "";
// ÃÖ°í°ü¸®ÀÚ ¶Ç´Â ±×·ì°ü¸®ÀÚ¶ó¸é
if ($member[mb_id] && ($is_admin == 'super' || $group[gr_admin] == $member[mb_id])) 
    $admin_href = "$g4[admin_path]/board_form.php?w=u&bo_table=$bo_table";

if (!($board[bo_use_comment] && $cwin)) 
    include_once("./board_head.php");

echo "<script language=\"javascript\" src=\"$g4[path]/js/sideview.js\"></script>\n";

if (!($board[bo_use_comment] && $cwin)) {
    // °Ô½Ã¹° ¾ÆÀÌµð°¡ ÀÖ´Ù¸é °Ô½Ã¹° º¸±â¸¦ INCLUDE
    if ($wr_id) 
        include_once("./view.php");

    // ÀüÃ¼¸ñ·Ïº¸ÀÌ±â »ç¿ëÀÌ "¿¹" ¶Ç´Â wr_id °ªÀÌ ¾ø´Ù¸é ¸ñ·ÏÀ» º¸ÀÓ
    if ($board[bo_use_list_view] || empty($wr_id)) 


//////////////////////////////////     list.php½ÃÀÛ     ///////////////////////////////////////////////////////////

// ºÐ·ù »ç¿ë ¿©ºÎ
$is_category = false;
if ($board[bo_use_category]) {
    $is_category = true;
    $category_location = "./board.php?bo_table=$bo_table&sca=";
    $category_option = get_category_option($bo_table); // SELECT OPTION ÅÂ±×·Î ³Ñ°Ü¹ÞÀ½
}

$sop = strtolower($sop);
if ($sop != "and" && $sop != "or")
    $sop = "and";

// ºÐ·ù ¼±ÅÃ ¶Ç´Â °Ë»ö¾î°¡ ÀÖ´Ù¸é
if ($sca || $stx) {
    $sql_search = get_sql_search($sca, $sfl, $stx, $sop);

    // °¡Àå ÀÛÀº ¹øÈ£¸¦ ¾ò¾î¼­ º¯¼ö¿¡ ÀúÀå (ÇÏ´ÜÀÇ ÆäÀÌÂ¡¿¡¼­ »ç¿ë)
    $sql = " select MIN(wr_num) as min_wr_num from $write_table ";
    $row = sql_fetch($sql);
    $min_spt = $row[min_wr_num];

    if (!$spt) $spt = $min_spt;

    $sql_search .= " and (wr_num between '".$spt."' and '".($spt + $config[cf_search_part])."') ";

    // ¿ø±Û¸¸ ¾ò´Â´Ù. (ÄÚ¸àÆ®ÀÇ ³»¿ëµµ °Ë»öÇÏ±â À§ÇÔ)
    $sql = " select distinct wr_parent 
               from $write_table 
               where $sql_search ";
    $result = sql_query($sql);
    $total_count = mysql_num_rows($result);
} else {
    $sql_search = "";

    $total_count = $board[bo_count_write];
}

$total_page  = ceil($total_count / $board[bo_page_rows]);  // ÀüÃ¼ ÆäÀÌÁö °è»ê
if (!$page) { $page = 1; } // ÆäÀÌÁö°¡ ¾øÀ¸¸é Ã¹ ÆäÀÌÁö (1 ÆäÀÌÁö)
$from_record = ($page - 1) * $board[bo_page_rows]; // ½ÃÀÛ ¿­À» ±¸ÇÔ

// °ü¸®ÀÚ¶ó¸é CheckBox º¸ÀÓ
$is_checkbox = false;
if ($member[mb_id] && ($is_admin == "super" || $group[gr_admin] == $member[mb_id] || $board[bo_admin] == $member[mb_id])) 
    $is_checkbox = true;

// Á¤·Ä¿¡ »ç¿ëÇÏ´Â QUERY_STRING
$qstr2 = "bo_table=$bo_table&sop=$sop";

if ($board[bo_gallery_cols]) 
    $td_width = (int)(100 / $board[bo_gallery_cols]);

// Á¤·Ä
// ÀÎµ¦½º ÇÊµå°¡ ¾Æ´Ï¸é Á¤·Ä¿¡ »ç¿ëÇÏÁö ¾ÊÀ½
// Á¤·ÄÀ» À§ÇÏ¿© ¼öÁ¤µÈ ºÎºÐ
//if (!$sst || ($sst && !(strstr($sst, 'wr_id') || strstr($sst, "wr_datetime")))) { //¿øº»
if (!$sst || ($sst && !(strstr($sst, 'wr_id') || strstr($sst, "wr_datetime") || strstr($sst, "wr_subject") || strstr($sst, "wr_link1_hit") || strstr($sst, "wr_hit") || strstr($sst, "wr_1") || strstr($sst, "wr_2") || strstr($sst, "wr_3") || strstr($sst, "wr_5") || strstr($sst, "wr_6") || strstr($sst, "wr_7") || strstr($sst, "wr_8") || strstr($sst, "wr_9") || strstr($sst, "wr_10") || strstr($sst, "wr_link2_hit") || strstr($sst, "ca_name")))) {
 //¼öÁ¤º»


    $sst  = "wr_num, wr_reply";
    $sod = "";
}
$sql_order = " order by $sst $sod ";

if ($sca || $stx) {
    $sql = " select distinct wr_parent
               from $write_table
              where $sql_search
              $sql_order
              limit $from_record, $board[bo_page_rows] ";
} else {
    $sql = " select * 
               from $write_table a 
              where wr_comment > -1
              $sql_order 
              limit $from_record, $board[bo_page_rows] ";
}
$result = sql_query($sql);

// ³âµµ 2ÀÚ¸®
$today2 = $g4[time_ymd];

$list = array();
$i = 0;

if (!$sca && !$stx) {
    $arr_notice = split("\n", trim($board[bo_notice]));
    for ($k=0; $k<count($arr_notice); $k++) {
        $row = sql_fetch(" select * from $write_table where wr_id = '$arr_notice[$k]' ");
        if (!$row[wr_id])
            continue;

        $list[$i] = get_list($row, $board, $board_skin_path, $board[bo_subject_len]);
        $list[$i][is_notice] = true;

        $i++;
    }
}

$k = 0;

while ($row = sql_fetch_array($result)) 
{
    // °Ë»öÀÏ °æ¿ì wr_id¸¸ ¾ò¾úÀ¸¹Ç·Î ´Ù½Ã ÇÑÇàÀ» ¾ò´Â´Ù
    if ($sca || $stx)
        $row = sql_fetch(" select * from $write_table where wr_id = '$row[wr_parent]' ");

    $list[$i] = get_list($row, $board, $board_skin_path, $board[bo_subject_len]);
    if (strstr($sfl, "subject"))
        $list[$i][subject] = search_font($stx, $list[$i][subject]);
    $list[$i][is_notice] = false;
    $list[$i][num] = number_format($total_count - ($page - 1) * $board[bo_page_rows] - $k);

    $i++;
    $k++;
}

$write_pages = get_paging($config[cf_write_pages], $page, $total_page, "./board.php?bo_table=$bo_table".$qstr."&page=");

$list_href = '';
$prev_part_href = '';
$next_part_href = '';
if ($sca || $stx)  {
    $list_href = "./board.php?bo_table=$bo_table";

    //if ($prev_spt >= $min_spt) 
    $prev_spt = $spt - $config[cf_search_part];
    if (isset($min_spt) && $prev_spt >= $min_spt)
        $prev_part_href = "./board.php?bo_table=$bo_table".$qstr."&spt=$prev_spt";

    $next_spt = $spt + $config[cf_search_part];
    if ($next_spt < 0) 
        $next_part_href = "./board.php?bo_table=$bo_table".$qstr."&spt=$next_spt";
}

$write_href = "";
if ($member[mb_level] >= $board[bo_write_level]) 
    $write_href = "./write.php?bo_table=$bo_table";

$nobr_begin = $nobr_end = "";
if (preg_match("/gecko|firefox/i", $_SERVER['HTTP_USER_AGENT'])) {
    $nobr_begin = "<nobr style='display:block; overflow:hidden;'>";
    $nobr_end   = "</nobr>";
}

include_once("$board_skin_path/list.skin.php");


//////////////////////////////////     list.php ³¡     ///////////////////////////////////////////////////////////


    include_once("./board_tail.php");
}
else 
    include_once("./view_comment.php");

echo "\n<!-- »ç¿ë½ºÅ² : $board[bo_skin] -->\n";

include_once("$g4[path]/tail.sub.php");
?>
