

작성: thruthesky thruthesky@yahoo.co.kr
버젼: 0.2
설명: 본 문서는 본 모듈의 0.2 버젼을 바탕으로 작성되었습니다.

본 문서는 새로운 모듈을 추가하는 방법에 대해서 설명한다.

본 문서를 포함한 모듈의 저작권은 '더카이' thruthesky@yahoo.co.kr 에 있다.
본 문서를 포함한 모듈은 자유롭게 이용이 가능하다.




[*] 설명

이것은 메모장 모듈이다. 이 문서와 모듈에 사용된 코드들을 통하여 새로운 모듈을 작성하는데에 도움이 되었으면 바란다.

이 모듈은 개인이 개인의 메모를 기록할 수 있도록한다. 기록된 메모는 다른 사람에게 공개할 수도 있다.


[*] 계획

새로운 모듈을 작성할 때 염두에 두어야할 것은 데이터를 어떻게 관리할 것인가와 스킨 작업에 대한 배려이다.

우선 메모장이라는 새로운 정보 영역이 준비되어야한다.
메모장은 글을 다루는 모듈이므로 post 라이브러리를 이용하면 해결이된다.
post 라이브러리는 post 영역에 글을 관리할 수 있도록 도와주는 함수들로 구성되어져 있으며, post 영역에는 수 많은 글들이 존재한다. 따라서 그 많은 글 중에서 메모장에 속하는 글들이라는 것을 표시할 필요가 있다. 이 때에 사용하는 라이브러리가 category 이다.
모듈과 관련된 작업은 module 라이브러리를 이용해서 손쉽게 할 수 있다. module 라이브러리는 category 라이브러리를 모듈에 맞도록 약간을 수정을 한 것 뿐이다.


메모장은 회원 전용 서비스이다. 따라서 글을 기록할 때, 이름, 홈페이지, 메일 등을 물어볼 필요가 없다.
메모를 기록할 때, 기본적으로 비밀글로 해 놓고, 원하는 특별한 글은 공개로 할 수 있도록 한다.
메모장은 자신의 개인용 게시판 쯤으로 생각하면 알맞다. 즉, 쓰기, 읽기, 수정, 삭제가 가능해야한다.


[*] 스킨

스킨에 대한 설명은 많은 예제를 통해서 설명을 한다.



[*] 기능(모드)별 스크립트 파일


우선 모듈의 필수 적인 스크립트들을 작성해야한다.
모듈 설치를 위한 install.php, 정보를 보여주는 info.php, begin.php 와 end.php 가 그것이다.

그리고 메인 페이지를 보여주기 위한 index.php 파일이 필요하다. 메인 페이지에서 글(메모) 리스트를 보여준다.
글(메모) 쓰기를 위한 HTML 폼을 보여줄 write.php 와 글 저장을 위한 write_submit.php 파일이 필요하다.
글 읽기를 위한 read.php 가 필요하다.
글 수정을 위한 modify.php 와 modify_submit.php 가 필요하다.
글 삭제를 위한 delete_submit.php 가 필요하다.


메모장 모듈을 위해서 새로운 카테고리의 생성이 필요하다. 이 과정을 install.php 에서 하며 이것은 관리자 모드에서 연결이 된다. 그리고 info.php 에는 메모장 모듈의 관리 정보를 보관하고 있다. 자세한 것은 개발자 노트를 참고하기 바란다.


자세한 내용은 각 모드(기능) 파일(스크립트)을 참고하기 바란다.

우선, 스크립트의 실행 순서를 알아야한다. 그래야 어느 스크립트 파일을 작성(또는 수정)해야 하는지 알 수가 있다.

우선 사용자가 메모장에 접속을 하려한다면, 아마 아래와 같은 URL 을 웹브라우저 창에 입력할 것이다.

	http://domain.com/?memo
	또는
	http://domain.com/index.html?cate=memo

위와 같이 입력을 했으면 index.html 이 실행이된다.

index.html 은 default.php 와 같은 라이브러리 파일을 인클루드하고 나서, 메모장 관련 스크립트를 인클루드한다.
개발자노트를 보면 알 수 있듯이 맨 처음 memo/begin.php 가 인클루되어 실행이된다. 그 다음 memo/index.php 와 같이 기능별 스크립트가 인클루드되어 실행이된다. 그리고 마지막으로 memo/end.php 가 실행이된다.

	http://domain.com/index.html?cate=memo&mode=read
	
위와 같이 웹브라우저에 URL 주소를 지정했으면,

index.html -> memo/begin.php -> memo/read.php -> memo/end.php 와 같은 순서로 실행이 된다.

그렇다면 먼저 begin.php 파일을 열어서 살펴보자. 대충 살펴 보고 다시 다음의 내용을 마저 읽기 바란다.

...

begin.php 는 모듈의 기본 정보를 설정하는 곳이다.

모듈이 동작을 하기 위해서는 먼저 설치 과정을 진행해야한다. 물론, 설치 과정이 필요 없을 수도 있다. 메모장 모듈에서는 다른 많은 글들과 구분하기 위해서 메모장 카테고리를 만들 필요가 있다.
이러한 것이 모듈의 설치 과정이 되며 이 작업은 install.php 에서 맡아서 처리를 한다. 물론 설치는 슈퍼 관리자 이상의 권한을 가진 사람만 할 수 있다.

begin.php 를 살펴봤으면 먼저 info.php 를 살펴보자.
info.php 는 개발자노트에 설명된데로 현제 모듈의 정보를 담고 있으며 외부에서 이 정보를 이용할 수 있다. 실제 예를 들면 슈퍼 관리자가 관리자 모드로 진입을 하면 이 memo/info.php 파일의 정보를 보고 모듈 리스트 메뉴를 만든다. 이 모듈 리스트에서 '메모장'을 클릭하면 memo/admin.php 가 실행이 되는 것이다. memo/admin.php(또는 그 스킨 memo.admin.html)에서 install.php 로 연결을 하는 것이다.
일단 슈퍼 관리자 아이디로 로그인해서 관리자 모드로 진입을 한 다음 memo/info.php 의 정보가 슈퍼 관리자 모드에서 어떻게 보여지는지 확인을 하자.
관리자 화면의 모듈 리스트에 보면 '메모장' 이 보일 것이다.
이 메뉴를 클릭하자.
그렇다면 memo/admin.php 가 실행 될 것이다.
memo/admin.php 는 관리자 스크립트이다. 이 엮시 개발자노트에 설명이 되어있다.

우선 admin.php 와 install.php 두 스크립트 파일에 대해서 요약하고 이해를 하자.
info.php 에는 모듈을 정보를 기록한다.
memo/admin.php 는 모듈을 관리하는 스크립트로서 슈퍼 관리자에 의해서 실행이된다.
memo/admin.php 에서 memo/install.php 로 직접 연결할 수 있는 링크를 걸어야한다. 물론 설치 과정이 필요 없다면 install.php 자체가 필요없다.


메모장 모듈의 관리자 스크립트에서는 특별히 할거 없다. 그냥 memo.admin.html 에서 install.php 로 링크를 건다. memo/admin.php 파일을 열어서 살펴보자.

잘 보았는가? 너무 없어서 실망인가? 사실.. 뭐 별거 없다.
memo/admin.php 는 단 한줄의 PHP 코드 문장으로 되어있다. 그 한줄의 문장 마저... return 문장이다.
그럼 memo.admin.html 스킨 파일을 열어보자. 단순히 install.php 로의 링크를 걸어주는 것 밖에 없다.

memo/install.php 에서 실제 메모장의 설치 과정이 이루어진다.
이 스크립트 파일을 열어보자.


install.php 파일을 읽어 보았다면, index.php 와 write.php, write_submit.php, read.php 등을 살펴보면된다.

각 스크립트 파일에는 코드에 대한 충분한 주석이 있으니 도움이 될 것이다.








