Photofly 님의 달력형 일정관리스킨에 양음력기념일 자동출력하기 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

Photofly 님의 달력형 일정관리스킨에 양음력기념일 자동출력하기 정보

Photofly 님의 달력형 일정관리스킨에 양음력기념일 자동출력하기

첨부파일

moonday.php (9.9K) 81회 다운로드 2006-09-10 01:06:02
anniversary.cgi (324byte) 34회 다운로드 2006-09-10 01:06:02

본문

1. 붙임파일 moonday.php와 anniversary.cgi 파일을 스킨디렉토리에 업로드한다.

    * anniversary.cgi 파일은 기념일등을 입력하는 파일로서 입력방법은
      s|03|01|삼일절|h| 와 같이
      s(양력) 또는 l(음력) | 03(월) | 01(일) | 삼일절(출력할 기념일명) | h(공휴일) 또는 공란 |

2. 스킨디렉토리의 list.skin.php 를 열어 맨 윗부분 <? 의 아래에 다음의 내용을 추가한다.

include("$board_skin_path/moonday.php");

function printann($yy,$mm,$dd)
{
global $board_skin_path;

$year = $yy;
$month = $mm;
$day = $dd;

$myarray1 = soltolun($year,$month,$day);

$file_name="anniversary.cgi";
$farray=file($board_skin_path."/".$file_name);

$ann ="";

for($i=0; $i<count($farray); $i++)
{
$part = explode("|",$farray[$i]);

if($part[0]==s)
{
if($month==$part[1] && $day==$part[2])
{
$ann=$part[3];
}
}

else
{
if($myarray1[month]==$part[1] && $myarray1[day]==$part[2] && $myarray1[leap] !="*")
{
$ann=$part[3];
}
}
}
return $ann;
}

3. 스킨디렉토리의 list.skin.php 아랫부분의 날짜를 출력하는 부분을 아래와 같이 변경한다.

<변경전>
 if ($write_href) {
 // $write_href (글쓰기 권한)이 있으면
 // 날짜에 누르면 글씨쓰기가 가능한 링크를 넣어서 출력하기
 $f_date = $year.sprintf("%02d",$month).sprintf("%02d",$cday);
            echo "        <a href='$write_href&f_date=$f_date&t_date=$f_date'>$daytext</a>\n";
 }

<변경후>
  if ($write_href) {
 // $write_href (글쓰기 권한)이 있으면
 // 날짜에 누르면 글씨쓰기가 가능한 링크를 넣어서 출력하기
 $f_date = $year.sprintf("%02d",$month).sprintf("%02d",$cday);
            echo "        <a href='$write_href&f_date=$f_date&t_date=$f_date'>$daytext</a>\n";

 // 음력출력
 $myarray = soltolun($year,$month,$cday);
 echo("(".$myarray[month].".".$myarray[day].")");

 // 기념일(anniversary.cgi) 출력
 $ann = printann($year,$month,$cday);
 echo($ann);
}
추천
0

댓글 7개

공휴일을 빨간 글씨로 표시하려면

1) 추가한 함수 function printann($yy,$mm,$dd) 를 아래와 같이 변경하고

function printann($yy,$mm,$dd) // 기념일 출력, 공휴일 체크
{
global $board_skin_path;
$year = $yy;
$month = $mm;
$day = $dd;
$myarray1 = soltolun($year,$month,$day);
$file_name="anniversary.cgi";
$farray=file($board_skin_path."/".$file_name);
$ann ="";

for($i=0; $i<count($farray); $i++)
{
    $part = explode("|",$farray[$i]);
    if($part[0]==s)
    {
        if($month==$part[1] && $day==$part[2])
        {
            $ann[0]=$part[3];
            $ann[1]=$part[4];
        }
    }
    else
    {
        if($myarray1[month]==$part[1] && $myarray1[day]==$part[2] && $myarray1[leap] !="*")
        {
            $ann[0]=$part[3];
            $ann[1]=$part[4];
        }
    }
}
return $ann;
}

2) 기존 list.skin.php 내용중

  if ($iz%7 == 1) $daytext = "<font color=red>$daytext</font>"; // 일요일
  if ($iz%7 == 0) $daytext = "<font color=orange>$daytext</font>"; // 토요일

  의 내용 아래에 다음의 내용을 추가한 후

    $ann = printann($year,$month,$cday);
    if($ann[1]==h) $daytext = "<font color=red>$daytext</font>"; // 공휴일

3. 아랫부분에 추가하였던 $ann = printann($year,$month,$cday); 을 삭제합니다.
전체 3,309 |RSS
그누4 팁자료실 내용 검색

회원로그인

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