<?php

/****************************************/
// ИНФОРМАЦИЯ:
// ==== Форум: LogicBoard
// ==== Автор: Никита Курдин (ShapeShifter)
// ==== Copyright © Никита Курдин Игоревич 2011
// ==== Данный код защищен авторскими правами
// ==== Официальный сайт: http://logicboard.ru

/****************************************/

if (! defined('LogicBoard_ADMIN') )
{
	@include '../../logs/save_log.php';
	exit ( "Error, wrong way to file.<br><a href=\"/\">Go to main</a>." );
}

$link_speddbar = "<a href=\"".$redirect_url."?do=board\">Форум</a>|<a href=\"".$redirect_url."?do=board&op=moderators\">Модераторы</a>|Добавление модератора";
$control_center->header("Форум", $link_speddbar);
$onl_location = "Форум &raquo; Модераторы &raquo; Добавление модератора";

$control_center->errors = array ();

if (!isset($_GET['step']))
{
    unset($_SESSION['moder_forum_id']);
    unset($_SESSION['moder_name']);
    unset($_SESSION['moder_group']);
    unset($_SESSION['moder_id']);
        
    if (isset($_POST['moder']))
    {
	   require LB_CLASS . '/safehtml.php';
	   $safehtml = new safehtml( );

	   $forums = $_POST['forums'];
	   $member_name = $DB->addslashes( $safehtml->parse( trim( $_POST['member'] ) ) );
    
        if($member_name != "")
        {
            $DB->prefix = DLE_USER_PREFIX;
            $check = $DB->one_select( "*", "users", "name = '{$member_name}'" );
    
            if (!$check['user_id'])
		          $control_center->errors[] = "Пользователь не найден.";
                  
            $_SESSION['moder_id'] = $check['user_id'];
        }
        
        $member_group = intval( $_POST['group_permission'] );
            
        if(!$member_group AND $member_name == "")
            $control_center->errors[] = "Вы должны указать ник пользователя или выбрать группу модераторов.";
        
        if (!$forums)
            $control_center->errors[] = "Вы должны выбрать хотя бы один форум.";
        else
        {
            foreach ($forums as $f_id)
            {
                $f_id = intval($f_id);
                if ($member_name == "")
                {
                    $check2 = $DB->one_select( "*", "forums_moderator", "fm_forum_id = '{$f_id}' AND fm_group_id = '{$member_group}' AND fm_is_group = '1'" );
                    if ($check2['fm_id'])
                    {
                        $control_center->errors[] = "Данная группа уже модерирует выбранный форум (ID ".$f_id.").";
                    }
                }
                else
                {
                    $check3 = $DB->one_select( "*", "forums_moderator", "fm_forum_id = '{$f_id}' AND fm_member_name = '{$member_name}' AND fm_is_group = '0'" );
                    if ($check3['fm_id'])
                    {
                        $control_center->errors[] = "Данный пользователь уже модерирует выбранный форум (ID ".$f_id.").";
                    }
                }
            }
        }
        
        if ($member_name != "")
            $member_group = $check['user_group'];
        
        if($cache_group[$member_group]['g_supermoders'])
            $control_center->errors[] = "Выбранная группа или пользователь уже являются супер модераторами.";
        
	   if (!$control_center->errors)
	   {
            $_SESSION['moder_forum_id'] = array();
            foreach ($forums as $f_id)
            {  
                $_SESSION['moder_forum_id'][] = intval($f_id);
            }
            
            $_SESSION['moder_name'] = $member_name;
            $_SESSION['moder_group'] = $member_group;

            header( "Location: ".$redirect_url."?do=board&op=moder_add&step=2&secret_key={$secret_key}" );
	   }
	   else
		  $control_center->errors_title = "Ошибка!";
    }

    $control_center->message();

    $group_list = "<option value=\"0\">-- Выберите группу</option>";

    foreach($cache_group as $m_group)
    {
	   $group_list .= "<option value=\"".$m_group['g_id']."\">".$m_group['g_title']."</option>";
    }

    $forum_list = ForumsList();

echo <<<HTML
<form  method="post" name="newgroup" action="">

                    <div class="headerGray">
                        <div class="headerGrayL"></div>
                        <div class="headerGrayR"></div>
                        <div class="headerGrayBg">Добавление модератора: Шаг 1</div>
                    </div>
                    <div class="borderL">
                        <div class="borderR">
                           <table>
                                <tr>
                                    <td align=left>
                                       <div>
                                            <div class="inputCaption2">Пользователь:<br><font class="smalltext">Введите ник пользователя или выберите группу.</font></div>
                                            <div><input type="text" name="member" value="" class="inputText" /></div>
                                        </div>
                                    </td>
                                    <td align=left>
                                         <div>
                                            <div class="inputCaption2">Группа:<br><font class="smalltext">Выберите группу или введите ник пользователя.</font></div>
                                            <div><select name="group_permission">{$group_list}</select></div>
                                        </div>
                                    </td>
                                </tr>
                                <tr>
                                    <td align=left colspan=3>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">форумы:<br><font class="smalltext">Права модератора будут распространяться на все подфорумы выбранного форума.</font></div>
                                            <div><select name="forums[]" multiple style="width:616px;height:250px;">{$forum_list}</select></div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2"></div>
                                            <div><input type="submit" name="moder" value="Шаг 2" class="btnBlue" /></div>
                                        </div>
                                    </td>
                                </tr>
                            </table>
                        </div>
                    </div>
                    <div>
                        <div class="borderBtmR"></div>
                        <div class="borderBtmL"></div>
                        <div class="borderBtm"></div>
                    </div>
</form>
HTML;

}
elseif (isset($_GET['step']) AND $_GET['step'] == 2 AND $_GET['secret_key'] != "" AND $_GET['secret_key'] == $secret_key AND ($_SESSION['moder_name'] != "" OR intval($_SESSION['moder_group']) != 0) AND count($_SESSION['moder_forum_id']))
{
  
    if (isset($_POST['moder_step2']))
    {  
    	$group_permission = array();
        
        $group_permission['global_hideshow'] = intval($_POST['g_global_hideshow']);
        $group_permission['global_hidetopic'] = intval($_POST['g_global_hidetopic']);
        $group_permission['global_deltopic'] = intval($_POST['g_global_deltopic']);
        $group_permission['global_titletopic'] = intval($_POST['g_global_titletopic']);
        $group_permission['global_polltopic'] = intval($_POST['g_global_polltopic']);
        $group_permission['global_opentopic'] = intval($_POST['g_global_opentopic']);
        $group_permission['global_closetopic'] = intval($_POST['g_global_closetopic']);
        $group_permission['global_fixtopic'] = intval($_POST['g_global_fixtopic']);
        $group_permission['global_unfixtopic'] = intval($_POST['g_global_unfixtopic']);
        $group_permission['global_movetopic'] = intval($_POST['g_global_movetopic']);
        $group_permission['global_uniontopic'] = intval($_POST['g_global_uniontopic']);
        $group_permission['global_delpost'] = intval($_POST['g_global_delpost']);
        $group_permission['global_unionpost'] = intval($_POST['g_global_unionpost']);
        $group_permission['global_changepost'] = intval($_POST['g_global_changepost']);
        $group_permission['global_movepost'] = intval($_POST['g_global_movepost']);
        $group_permission['global_fixedpost'] = intval($_POST['g_global_fixedpost']);
        
        $group_permission = $DB->addslashes( serialize($group_permission) );
        
        if($_SESSION['moder_id'])
            $fm_member_id = $_SESSION['moder_id'];
        else
            $fm_member_id = 0;
            
        $fm_group_id = intval($_SESSION['moder_group']);
                
        foreach ($_SESSION['moder_forum_id'] as $f_id)
        {   
            $f_id = intval($f_id);
            
            if($_SESSION['moder_name'])
            {
                $fm_member_name = $_SESSION['moder_name'];
                $fm_is_group = 0;
                $info = "<font color=green>Добавление</font> модератора <b>".$fm_member_name."</b> для форума: ".$cache_forums[$f_id]['title'];
            }
            else
            {
                $fm_member_name = "";
                $fm_is_group = 1;
                $info = "<font color=green>Добавление</font> группы модераторов ".$cache_group[$fm_group_id]['g_title']." для форума: ".$cache_forums[$f_id]['title'];
            }
        
            $info = $DB->addslashes($info);
            
            $DB->insert("fm_forum_id = '{$f_id}', fm_member_id = '{$fm_member_id}', fm_member_name = '{$fm_member_name}', fm_group_id = '{$fm_group_id}', fm_is_group = '{$fm_is_group}', fm_permission = '{$group_permission}'", "forums_moderator");
            $cache->clear("", "forums_moder");
  
            $DB->insert("member_name = '{$member_id['name']}', date = '{$time}', ip = '{$_IP}', module = '{$do}', op = '{$op}', info = '{$info}'", "logs_actions_cc");
        }
                     
        header( "Location: ".$redirect_url."?do=board&op=moderators" );
    }
    
    function radio_code($name = "", $checked = false)
    {
        $how = "";
        $how2 = "";
    
        if ($checked)
            $how = "checked";
        else
            $how2 = "checked";
        
echo <<<HTML

<div class="radioContainer"><input name="{$name}" type="radio" id="{$name}_1" value="1" {$how}></div><label class="radioLabel" for="{$name}_1">Да</label>
<div class="radioContainer optionFalse"><input name="{$name}" type="radio" id="{$name}_0" value="0" {$how2}></div><label class="radioLabel" for="{$name}_0">Нет</label>

HTML;

    }
    
echo <<<HTML
<form  method="post" name="newgroup" action="">

                    <div class="headerGray">
                        <div class="headerGrayL"></div>
                        <div class="headerGrayR"></div>
                        <div class="headerGrayBg">Добавление модератора: Шаг 2</div>
                    </div>
                    <div class="borderL">
                        <div class="borderR">
                           <table>
                                <tr>
                                    <td align=left>
                                        <div>
                                            <div class="inputCaption2">Просмотр скрытых тем и сообщений:</div>
                                            <div>
                                            
HTML;
radio_code("g_global_hideshow");
echo <<<HTML
                                            
					                       </div>
                                        </div>
                                        <div class="clear" style="height:8px;"></div>
                                        <hr />
                                        <div class="clear" style="height:8px;"></div>
                                        <div>
                                            <div class="inputCaption2">Скрытие тем и сообщений:</div>
                                            <div>
                                            
HTML;
radio_code("g_global_hidetopic");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                         <div>
                                            <div class="inputCaption2">Удаление тем:</div>
                                            <div>
                                            
HTML;
radio_code("g_global_deltopic");
echo <<<HTML
                                            
					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                          <div>
                                            <div class="inputCaption2">Изменение названий тем:<br><font class="smalltext">Изменение названия и описания тем.</font></div>
                                            <div>
                                            
HTML;
radio_code("g_global_titletopic");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Изменение голосований:<br><font class="smalltext">Изменение или удаление голосований в темах.</font></div>
                                            <div>
                                            
HTML;
radio_code("g_global_polltopic");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Открытие тем:<br><font class="smalltext">Если тема была закрыта.</font></div>
                                            <div>
                                            
HTML;
radio_code("g_global_opentopic");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Закрытие тем:</div>
                                            <div>
                                            
HTML;
radio_code("g_global_closetopic");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Закрепление тем:<br><font class="smalltext">Выводит темы сверху над списком обычных тем с пометкой "важно".</font></div>
                                            <div>
                                            
HTML;
radio_code("g_global_fixtopic");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Опускать темы:<br><font class="smalltext">Если тема была закреплена.</font></div>
                                            <div>
                                            
HTML;
radio_code("g_global_unfixtopic");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Перемещение тем:<br><font class="smalltext">Перемещение тем в другие форумы.</font></div>
                                            <div>
                                            
HTML;
radio_code("g_global_movetopic");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Объединение тем:<br><font class="smalltext">Соединение нескольких тем в одну.</font></div>
                                            <div>
                                            
HTML;
radio_code("g_global_uniontopic");
echo <<<HTML

					                       </div>
                                        </div>
                                        
                                        <div class="clear" style="height:8px;"></div>
                                        <hr />
                                        <div class="clear" style="height:8px;"></div>
                                        <div>
                                            <div class="inputCaption2">Удаление сообщений:</div>
                                            <div>
                                            
HTML;
radio_code("g_global_delpost");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Редактирование сообщений:</div>
                                            <div>
                                            
HTML;
radio_code("g_global_changepost");
echo <<<HTML

					                        </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Закрепление/открепление сообщений:</div>
                                            <div>
                                            
HTML;
radio_code("g_global_fixedpost");
echo <<<HTML

					                        </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Перемещение сообщений:<br><font class="smalltext">Перемещение сообщений в другие темы.</font></div>
                                            <div>
                                            
HTML;
radio_code("g_global_movepost");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2">Объединение сообщений:<br><font class="smalltext">Соединение нескольких сообщений в одно.</font></div>
                                            <div>
                                            
HTML;
radio_code("g_global_unionpost");
echo <<<HTML

					                       </div>
                                        </div>
                                        <div class="clear" style="height:18px;"></div>
                                        <div>
                                            <div class="inputCaption2"></div>
                                            <div><input type="submit" name="moder_step2" value="Сохранить" class="btnBlue" />
                                            <input type="hidden" name="secret_key" value="{$secret_key}" />
                                            </div>
                                        </div>
                                    </td>
                                </tr>
                            </table>
                        </div>
                    </div>
                    <div>
                        <div class="borderBtmR"></div>
                        <div class="borderBtmL"></div>
                        <div class="borderBtm"></div>
                    </div>
</form>
HTML;
}
else
    header( "Location: {$_SESSION['back_link_board']}" );
    
?>