행사안내 게시판 > 그누4 스킨

그누4 스킨

스킨의 저작권은 해당 스킨 제작자님께 있으며, 그누보드의 저작권과 다를 수 있습니다.
스킨 다운로드시 좋아요와 감사의 코멘트를 남기시면 제작자에게 큰 힘이됩니다. ^^y
그누보드와 관련이 있지만 스킨과 빌더가 아니면 플러그인 게시판에 올려주세요.

행사안내 게시판 정보

게시판 행사안내 게시판

첨부파일

grcf.zip (70.9K) 136회 다운로드 2006-01-06 17:13:51
my.js (2.8K) 17회 다운로드 2006-01-06 17:13:51

본문

여기저기 소스들을 마구 짜집기했습니다. 링크의 게시판이 예제입니다. 참고로 현재는 사이트 제작중이므로 올라있는 글들은 모두 테스트용입니다.

특징 : 리스트에서 모든 내용을 볼 수 있게 했습니다. 행사안내에 대한 내용이 얼마 안되고 해서 그렇게 하는 것이 방문자 입장에서 일일이 제목보고 클릭해 들어가는 것보다 편하다고 생각되었습니다. 그리고 카테고리별 분류에 있어서도 그렇게 해야만 하는 나름대로의 사정이 있더군요 ;;
링크되어있는 게시판도 관리자만 글등록 수정이 가능합니다.

wr_1 ~ wr_10의 필드를 다 사용할 수 있게 했습니다. 이 스킨에서는 현재 wr_2 ~ wr_6, wr_9, wr_10을 썼는데 경우에 따라서는 더 쓸 수도 있습니다. 참고로 wr_2 ~ wr_6은 각 날짜별 행사시간, wr_9는 장소, wr_10은 주관용으로 썼습니다.

스킨의 소스를 보시면 대충 각자의 목적에 맞게 수정해서 쓰실 수 있을 겁니다.

★★★★★ 그리고 스킨파일 외에 첨부한 my.js파일도 계정에 올려야 합니다. 현재 이 스킨의 테이블 모서리 둥글게 한 소스와 이미지 출몰(?)을 위한 자바스크립트 파일입니다.

아니면 아래 소스를 임의의 이름(예:my.js)으로 저장해서 g4/js/폴더에 올리시고 head.php나 head.sub.php 어디든
<script language="javascript" src="<?=$g4[path]?>/js/my.js"></script>를 넣어주면 됩니다.
저는 head.sub.php의 <body> 바로 위에
<script language="javascript" src="<?=$g4[path]?>/js/common.js"></script>
<script language="javascript" src="<?=$g4[path]?>/js/my.js"></script>
이런 식으로 했습니다.



/////여기부터
////////////// 테이블 모서리 둥글게
function roundTable(objID) {
      var obj = document.getElementById(objID);
      var Parent, objTmp, Table, TBody, TR, TD;
      var bdcolor, bgcolor, Space;
      var trIDX, tdIDX, MAX;
      var styleWidth, styleHeight;

      // get parent node
      Parent = obj.parentNode;
      objTmp = document.createElement('SPAN');
      Parent.insertBefore(objTmp, obj);
      Parent.removeChild(obj);

      // get attribute
      bdcolor = obj.getAttribute('rborder');
      bgcolor = obj.getAttribute('rbgcolor');
      radius = parseInt(obj.getAttribute('radius'));
      if (radius == null || radius < 1) radius = 1;
      else if (radius > 6) radius = 6;

      MAX = radius * 2 + 1;
     
      /*
              create table {{
      */
      Table = document.createElement('TABLE');
      TBody = document.createElement('TBODY');

      Table.cellSpacing = 0;
      Table.cellPadding = 0;

      for (trIDX=0; trIDX < MAX; trIDX++) {
              TR = document.createElement('TR');
              Space = Math.abs(trIDX - parseInt(radius));
              for (tdIDX=0; tdIDX < MAX; tdIDX++) {
                    TD = document.createElement('TD');
                   
                    styleWidth = '1px'; styleHeight = '1px';
                    if (tdIDX == 0 || tdIDX == MAX - 1) styleHeight = null;
                    else if (trIDX == 0 || trIDX == MAX - 1) styleWidth = null;
                    else if (radius > 2) {
                            if (Math.abs(tdIDX - radius) == 1) styleWidth = '2px';
                            if (Math.abs(trIDX - radius) == 1) styleHeight = '2px';
                    }

                    if (styleWidth != null) TD.style.width = styleWidth;
                    if (styleHeight != null) TD.style.height = styleHeight;

                    if (Space == tdIDX || Space == MAX - tdIDX - 1) TD.style.backgroundColor = bdcolor;
                    else if (tdIDX > Space && Space < MAX - tdIDX - 1)  TD.style.backgroundColor = bgcolor;
                   
                    if (Space == 0 && tdIDX == radius) TD.appendChild(obj);
                    TR.appendChild(TD);
              }
              TBody.appendChild(TR);
      }

      /*
              }}
      */

      Table.appendChild(TBody);
     
      // insert table and remove original table
      Parent.insertBefore(Table, objTmp);
}

// 테이블 출몰(?)을 위해
function tree(menuName, mode) {
        if (mode == 'open') {
                eval(menuName + "_open").style.display = '';
                eval(menuName + "_close").style.display = 'none';
        } else if (mode == 'close') {
                eval(menuName + "_open").style.display = 'none';
                eval(menuName + "_close").style.display = '';
        }
}

/////////여기까지





거의 에러가 있지 싶은데-_-;;; 말씀해주시는대로 손보겠습니다. 물론 저는 잘 쓰고 있습니다.

그리고!!!!

이건 도움요청입니다. (질답에도 올릴 예정)

현재 기존 카테고리의 기능을 이용해서 종목별 검색은 가능합니다.
제가 원하는 것은 그외에 wr_n 등도 검색해서 정렬하고 싶거든요.
예를 들면 첫째날(wr_2)의 행사만 뽑아낸다든지 하는 식으로 말이지요. 시간순이라면 더욱 금상첨화.
그리 어려울 것 같진 않은데 제가 워낙 기초가 없어서 힘드는군요. 고수님들 조금만 힌트를 주시면 안될까요^^;;

써놓고보니 질답에 올리긴 좀 그런가...-_-;;
추천
0

댓글 전체

7쟁이님, 바람님 감사드립니다^^

근데 다운받으신 분들은 몇분 되는데 my.js파일을 다운받아가신 분들은 없으시네요^^;; 그게 없으면 이 스킨이 정상적으로 작동을 안할텐데...;; 그리 긴 소스도 아니니까 그냥 이리로도 올려드립니다. 솔직히 저도 파일 두개 이상 다운받기는 좀 귀찮긴 하더군요. ㅎㅎㅎ;

아래 소스를 임의의 이름(예:my.js)으로 저장해서 g4/js/폴더에 올리시고 head.php나 head.sub.php 어디든
<script language="javascript" src="<?=$g4[path]?>/js/my.js"></script>를 넣어주면 됩니다.
저는 head.sub.php의 <body> 바로 위에
<script language="javascript" src="<?=$g4[path]?>/js/common.js"></script>
<script language="javascript" src="<?=$g4[path]?>/js/my.js"></script>
이런 식으로 했습니다.




////////////// 테이블 모서리 둥글게
function roundTable(objID) {
      var obj = document.getElementById(objID);
      var Parent, objTmp, Table, TBody, TR, TD;
      var bdcolor, bgcolor, Space;
      var trIDX, tdIDX, MAX;
      var styleWidth, styleHeight;

      // get parent node
      Parent = obj.parentNode;
      objTmp = document.createElement('SPAN');
      Parent.insertBefore(objTmp, obj);
      Parent.removeChild(obj);

      // get attribute
      bdcolor = obj.getAttribute('rborder');
      bgcolor = obj.getAttribute('rbgcolor');
      radius = parseInt(obj.getAttribute('radius'));
      if (radius == null || radius < 1) radius = 1;
      else if (radius > 6) radius = 6;

      MAX = radius * 2 + 1;
     
      /*
              create table {{
      */
      Table = document.createElement('TABLE');
      TBody = document.createElement('TBODY');

      Table.cellSpacing = 0;
      Table.cellPadding = 0;

      for (trIDX=0; trIDX < MAX; trIDX++) {
              TR = document.createElement('TR');
              Space = Math.abs(trIDX - parseInt(radius));
              for (tdIDX=0; tdIDX < MAX; tdIDX++) {
                    TD = document.createElement('TD');
                   
                    styleWidth = '1px'; styleHeight = '1px';
                    if (tdIDX == 0 || tdIDX == MAX - 1) styleHeight = null;
                    else if (trIDX == 0 || trIDX == MAX - 1) styleWidth = null;
                    else if (radius > 2) {
                            if (Math.abs(tdIDX - radius) == 1) styleWidth = '2px';
                            if (Math.abs(trIDX - radius) == 1) styleHeight = '2px';
                    }

                    if (styleWidth != null) TD.style.width = styleWidth;
                    if (styleHeight != null) TD.style.height = styleHeight;

                    if (Space == tdIDX || Space == MAX - tdIDX - 1) TD.style.backgroundColor = bdcolor;
                    else if (tdIDX > Space && Space < MAX - tdIDX - 1)  TD.style.backgroundColor = bgcolor;
                   
                    if (Space == 0 && tdIDX == radius) TD.appendChild(obj);
                    TR.appendChild(TD);
              }
              TBody.appendChild(TR);
      }

      /*
              }}
      */

      Table.appendChild(TBody);
     
      // insert table and remove original table
      Parent.insertBefore(Table, objTmp);
}

// 테이블 출몰(?)을 위해
function tree(menuName, mode) {
        if (mode == 'open') {
                eval(menuName + "_open").style.display = '';
                eval(menuName + "_close").style.display = 'none';
        } else if (mode == 'close') {
                eval(menuName + "_open").style.display = 'none';
                eval(menuName + "_close").style.display = '';
        }
}
전체 5,850 |RSS
그누4 스킨 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT