@using bitforum.Helpers
@{
    ViewData["Title"] = "회원가입 설정";
    var config = ViewBag.Config as Dictionary<string, string>;
}

<div class="container">
    <h3>@ViewData["Title"]</h3>
    <hr />

    <partial name="_StatusMessage" />

    <form name="f_admin_write" id="fAdminWrite" method="post" asp-controller="Register" asp-action="Save" autocomplete="off">
        <div class="row mb-3">
            <label for="isRegisterBlock" class="col-sm-2 col-form-label">회원가입 차단</label>
            <div class="col-sm-10 align-content-center">
                <input type="checkbox" name="is_register_block" id="isRegisterBlock" class="form-check-input" value="Y" @(config.GetConfig("is_register_block") == "Y" ? "checked" : "") />
                <label class="form-check-label" for="isRegisterBlock">회원가입을 차단합니다.</label>
            </div>
        </div>
        <div class="row mb-3">
            <label for="isRegisterEmailAuth" class="col-sm-2 col-form-label">회원가입 시 이메일 인증</label>
            <div class="col-sm-10 align-content-center">
                <input type="checkbox" name="is_register_email_auth" id="isRegisterEmailAuth" class="form-check-input" value="Y" @(config.GetConfig("is_register_email_auth") == "Y" ? "checked" : "") />
                <label class="form-check-label" for="isRegisterEmailAuth">가입 시 이메일 인증을 확인합니다.</label>
            </div>
        </div>
        <hr/>
        <div class="row mb-3">
            <label for="passwordMinLength" class="col-sm-2 col-form-label">비밀번호 최소 길이</label>
            <div class="col-sm-10">
                <input type="number" name="password_min_length" id="passwordMinLength" class="form-control d-inline w-auto" value="@config.GetConfig("password_min_length")" />
            </div>
        </div>
        <div class="row mb-3">
            <label for="passwordUppercaseLength" class="col-sm-2 col-form-label">비밀번호 최소 대문자 수</label>
            <div class="col-sm-10">
                <input type="number" name="password_uppercase_length" id="passwordUppercaseLength" class="form-control d-inline w-auto" value="@config.GetConfig("password_uppercase_length")" />
            </div>
        </div>
        <div class="row mb-3">
            <label for="passwordNumbersLength" class="col-sm-2 col-form-label">비밀번호 최소 숫자 수</label>
            <div class="col-sm-10">
                <input type="number" name="password_numbers_length" id="passwordNumbersLength" class="form-control d-inline w-auto" value="@config.GetConfig("password_numbers_length")" />
            </div>
        </div>
        <div class="row mb-3">
            <label for="passwordSpecialcharsLength" class="col-sm-2 col-form-label">비밀번호 최소 특수문자 수</label>
            <div class="col-sm-10">
                <input type="number" name="password_specialchars_length" id="passwordSpecialcharsLength" class="form-control d-inline w-auto" value="@config.GetConfig("password_specialchars_length")" />
                <small class="text-muted form-text d-block">
                    비밀번호 길이는 최소 4자 이상이어야 하며, 대문자, 숫자, 특수문자를 포함하기를 원하지 않는 경우 0을 입력하면 됩니다. 이 규칙은 회원가입 시, 정보수정 시 적용되며 이미 가입한 회원이 로그인을 하는 경우에는 적용되지 않습니다. 즉 가입 당시 규칙에는 대문자 규칙이 없어서 대문자 없이 회원 가입하였는데, 지금 대문자를 꼭 입력하게끔 규칙을 변경하더라도 기존 회원은 대문자 없는 비밀번호로 로그인이 가능합니다.
                </small>
            </div>
        </div>
        <hr/>
        <div class="row mb-3">
            <label for="deniedEmailList" class="col-sm-2 col-form-label">금지 이메일</label>
            <div class="col-sm-10">
                <textarea name="denied_email_list" id="deniedEmailList" class="form-control" rows="3">@config.GetConfig("denied_email_list")</textarea>
                <small class="text-muted form-text d-block">
                    제한하고 싶은 이메일을 쉼표로 구분하여 입력해주세요.
                </small>
            </div>
        </div>
        <div class="row mb-3">
            <label for="deniedNicknameList" class="col-sm-2 col-form-label">금지 별명</label>
            <div class="col-sm-10">
                <textarea name="denied_nickname_list" id="deniedNicknameList" class="form-control" rows="3">@config.GetConfig("denied_nickname_list")</textarea>
                 <small class="text-muted form-text d-block">
                     제한하고 싶은 닉네임을 쉼표로 구분하여 입력해주세요.
                 </small>
            </div>
        </div>
        <hr/>
        <div class="row mb-3">
            <label for="changeNicknameDay" class="col-sm-2 col-form-label">별명 갱신 주기</label>
            <div class="col-sm-10">
                <input type="number" name="change_nickname_day" id="changeNicknameDay" class="form-control d-inline w-auto" value="@config.GetConfig("change_nickname_day")" />
                  <small class="text-muted form-text d-block">
                      별명 변경 후 해당일 동안 바꿀 수 없습니다, 0 으로 설정하면 항상 변경 가능
                 </small>
            </div>
        </div>
        <div class="row mb-3">
            <label for="changeEmailDay" class="col-sm-2 col-form-label">이메일 갱신 주기</label>
            <div class="col-sm-10">
                <input type="number" name="change_email_day" id="changeEmailDay" class="form-control d-inline w-auto" value="@config.GetConfig("change_email_day")" />
                  <small class="text-muted form-text d-block">
                      이메일 변경 후 해당일 동안 바꿀 수 없습니다, 0 으로 설정하면 항상 변경 가능
                 </small>
            </div>
        </div>
        <div class="row mb-3">
            <label for="changePasswordDay" class="col-sm-2 col-form-label">비밀번호 갱신 주기</label>
            <div class="col-sm-10">
                <input type="number" name="change_password_day" id="changePasswordDay" class="form-control d-inline w-auto" value="@config.GetConfig("change_password_day")" />
                  <small class="text-muted form-text d-block">
                      일, 일정기간이 지나면 비밀번호 변경을 하도록 유도하는 기능입니다. (사용하지 않음 : 0 입력)
                 </small>
            </div>
        </div>
        <hr/>
        <div class="row mb-3">
            <label for="maxLoginTryCount" class="col-sm-2 col-form-label">로그인 시도 제한 횟수</label>
            <div class="col-sm-10">
                <input type="number" name="max_login_try_count" id="maxLoginTryCount" class="form-control d-inline w-auto" value="@config.GetConfig("max_login_try_count")" />
                  <small class="text-muted form-text d-block">
                      정해진 시간 안에 허용되는 로그인 시도 횟수를 입력하십시오. 짧은 시간 동안 하나의 IP에서 시도할 수 있는 로그인 횟수에 제한을 둡니다.
                 </small>
            </div>
        </div>
        <div class="row mb-3">
            <label for="maxLoginTryLimitSecond" class="col-sm-2 col-form-label">로그인 시도 제한시간</label>
            <div class="col-sm-10">
                <input type="number" name="max_login_try_limit_second" id="maxLoginTryLimitSecond" class="form-control d-inline w-auto d-inline w-auto" value="@config.GetConfig("max_login_try_limit_second")" />
                  <small class="text-muted form-text d-block">
                      위에서 설정한 횟수 이상 로그인실실패하였을 경우, 해당 초 동안 로그인 시도를 할 수 없습니다.
                 </small>
            </div>
        </div>
        <hr/>
        <div class="row">
            <div class="col text-center p-3">
                <button type="submit" class="btn btn-success">저장하기</button>
            </div>
        </div>
        <br />
    </form>
</div>
