가입인사 게시판스킨인데요. 모바일화면이 너무 비좁게 나와요ㅠㅠ 채택완료
아래 가입인사소스인데요.
어디를 수정해야 옆으로 긴화면을 한줄에 하나씩 가입인사가 나오게 변경이 가능할까요?
아무리 봐도 모르겠네요 ㅠㅠ
고수님들 도와주세요.
[code]
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 선택옵션으로 인해 셀합치기가 가변적으로 변함
$colspan = 2;
if ($is_checkbox) $colspan++;
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('', 0);" target="_blank" rel="noopener noreferrer">https://fonts.googleapis.com/icon?family=Material+Icons">', 0);
add_stylesheet('', 0);" target="_blank" rel="noopener noreferrer">https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;700&family=Noto+Sans+KR:wght@300;400;700&display=swap" rel="stylesheet">', 0);
add_stylesheet('', 0);" target="_blank" rel="noopener noreferrer">https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css">', 0);
add_javascript('', 0);" target="_blank" rel="noopener noreferrer">https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js">', 0);
add_javascript('', 0);" target="_blank" rel="noopener noreferrer">https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js">', 0);
add_javascript('', 0);" target="_blank" rel="noopener noreferrer">https://unpkg.com/masonry-layout@4/dist/masonry.pkgd.min.js">', 0);
add_stylesheet('', 0);
$wr_disabled = $is_member ? '' : 'disabled';
$cm_disabled = $is_member ? '' : 'disabled';
$bo_1 = $board['bo_1'] ? explode('|', $board['bo_1']) : array(); // 자동 가입인사 문구
$bo_2 = $board['bo_2'] ? explode('|', $board['bo_2']) : array(); // 자동 환영댓글 문구
$member_profile_img = get_member_profile_img($member['mb_id']);
preg_match('% src="([^"]+)"%i', $member_profile_img, $matches);
$member_profile_src = $matches[1];
$avatar = array();
$imgdir = 'avatar';
if (is_dir($board_skin_path.'/'.$imgdir)) {
if ($handle = opendir($board_skin_path.'/'.$imgdir)) {
while (false !== ($file = readdir($handle))) {
if ($file == "." || $file == "..") continue;
if (!preg_match('%^.*\.(gif|png|jpg|jpeg)$%i', $file)) continue;
$avatar[] = $board_skin_url.'/'.$imgdir.'/'.$file;
}
closedir($handle);
}
}
$imgtxt = $board_skin_path.'/avatar.txt';
$imgarr = file_exists($imgtxt) ? file($imgtxt) : array();
foreach ($imgarr as $img) {
$img = trim($img);
if ($img && substr($img, 0, 1) != '#') {
//$avatar[] = G5_URL.'/image.php?url='.urlencode($img);
$avatar[] = $img;
}
}
?>
작성
자바스크립트를 사용하지 않는 경우 별도의 확인 절차 없이 바로 선택삭제 처리하므로 주의하시기 바랍니다.
전체 건
페이지
$(document).on('click', '#avatar + .dropdown-menu .avatar', function (e) {
var $this = $(this),
$that = $('#avatar img'),
$form = $that.closest('form'),
_src = $this.find('img').attr('src');
$that.attr('src', _src);
$form.find('[name="wr_link1"]').val($this.index() > 0 ? _src : '');
$form.find('[name="wr_content"]').focus();
});
$('[data-greeting]').on('click', function(e) {
var $this = $(this),
$modal = $('#cmtModal'),
whatever = $this.data('whatever') || '',
greeting = $this.data('greeting') || '';
if (whatever && greeting) {
//$modal.modal('show', $this);
$modal.find('[name="wr_id"]').val(whatever);
$modal.find('[name="wr_content"]').val(greeting);
$('#list_comment_submit').trigger('click');
return false;
}
});
$('#cmtModal').on('shown.bs.modal', function (e) {
var $modal = $(this),
$button = $(e.relatedTarget),
whatever = $button.data('whatever') || '',
greeting = $button.data('greeting') || '';
if (e.relatedTarget) {
$modal.find('[name="wr_id"]').val(whatever);
$modal.find('[name="wr_content"]').val(greeting).focus();
}
});
$('#cmtModal').on('hidden.bs.modal', function (e) {
var $modal = $(this);
$modal.find('[name="wr_id"]').val('');
$modal.find('[name="wr_content"]').val('');
});
function flistwrite_submit(f)
{
// 양쪽 공백 없애기
var pattern = /(^\s*)|(\s*$)/g; // \s 공백 문자
f.wr_content.value = f.wr_content.value.replace(pattern, "");
if (!f.wr_content.value)
{
alert("가입인사를 입력하여 주십시오.");
return false;
}
var subject = "";
var content = "";
$.ajax({
url: g5_bbs_url+"/ajax.filter.php",
type: "POST",
data: {
"subject": f.wr_subject.value,
"content": f.wr_content.value
},
dataType: "json",
async: false,
cache: false,
success: function(data, textStatus) {
subject = data.subject;
content = data.content;
}
});
if (subject) {
alert("제목에 금지단어('"+subject+"')가 포함되어있습니다");
f.wr_subject.focus();
return false;
}
if (content) {
alert("내용에 금지단어('"+content+"')가 포함되어있습니다");
if (typeof(ed_wr_content) != "undefined")
ed_wr_content.returnFalse();
else
f.wr_content.focus();
return false;
}
if (typeof(f.bo_table) == "undefined") {
return;
}
var bo_table = f.bo_table.value;
var token = get_write_token(bo_table);
var $f = $(f);
if(typeof f.token === "undefined")
$f.prepend('');
$f.find("input[name=token]").val(token);
document.getElementById("list_write_submit").disabled = "disabled";
return true;
}
function flistcomment_submit(f)
{
var subject = "";
var content = "";
$.ajax({
url: g5_bbs_url+"/ajax.filter.php",
type: "POST",
data: {
"subject": "",
"content": f.wr_content.value
},
dataType: "json",
async: false,
cache: false,
success: function(data, textStatus) {
subject = data.subject;
content = data.content;
}
});
if (content) {
alert("내용에 금지단어('"+content+"')가 포함되어있습니다");
f.wr_content.focus();
return false;
}
// 양쪽 공백 없애기
var pattern = /(^\s*)|(\s*$)/g; // \s 공백 문자
f.wr_content.value = f.wr_content.value.replace(pattern, "");
if (!f.wr_content.value)
{
alert("환영댓글을 입력하여 주십시오.");
return false;
}
set_comment_token(f);
document.getElementById("list_comment_submit").disabled = "disabled";
return true;
}
function all_checked(sw) {
var f = document.fboardlist;
for (var i=0; i if (f.elements[i].name == "chk_wr_id[]") f.elements[i].checked = sw; } } function fboardlist_submit(f) { var chk_count = 0; for (var i=0; i if (f.elements[i].name == "chk_wr_id[]" && f.elements[i].checked) chk_count++; } if (!chk_count) { alert(document.pressed + "할 게시물을 하나 이상 선택하세요."); return false; } if(document.pressed == "선택복사") { select_copy("copy"); return; } if(document.pressed == "선택이동") { select_copy("move"); return; } if(document.pressed == "선택삭제") { if (!confirm("선택한 게시물을 정말 삭제하시겠습니까?\n\n한번 삭제한 자료는 복구할 수 없습니다\n\n답변글이 있는 게시글을 선택하신 경우\n답변글도 선택하셔야 게시글이 삭제됩니다.")) return false; f.removeAttribute("target"); f.action = g5_bbs_url+"/board_list_update.php"; } return true; } // 선택한 게시물 복사 및 이동 function select_copy(sw) { var f = document.fboardlist; if (sw == 'copy') str = "복사"; else str = "이동"; var sub_win = window.open("", "move", "left=50, top=50, width=500, height=550, scrollbars=1"); f.sw.value = sw; f.target = "move"; f.action = g5_bbs_url+"/move.php"; f.submit(); } // 게시판 리스트 관리자 옵션 jQuery(function($){ $(".btn_more_opt.is_list_btn").on("click", function(e) { e.stopPropagation(); $(".more_opt.is_list_btn").toggle(); }); $(document).on("click", function (e) { if(!$(e.target).closest('.is_list_btn').length) { $(".more_opt.is_list_btn").hide(); } }); });
답변 2개
답변을 작성하려면 로그인이 필요합니다.
로그인
