언젠가 이야기가 나와서 저도 람보님의 스케줄 모듈을 관심 있게 보고 있었는데요.

https://github.com/bjrambo/xe-module-schedule

모듈 공부도 할 겸 이것저것 만져보다가 결국 리모델링이라는 암흑의 길?을 걷고 있는 중입니다 :)

 

원래는 어느 정도 안정화되면 소개를 하려 했는데, 아래 날아라님 소개글을 보고 뒤처지면 안 되겠다는 생각이 들어ㅋ 티저식으로 살짝 선을 뵐까 합니다.

열심히 기능 추가하고 버그 잡으면서 개선 중이긴 합니다ㅠ

(근데 스킨 디자인은 날아라님을 결코 따라갈 수가 없네요ㅜㅜ)

 

https://dev.aporia.blog/schedule

여기로 가시면 엿보기와 비회원 글쓰기로 체험을 해보실 수 있습니다.

(저도 여기서 테스트 중이어서 상황이 조금씩 변할 수는 있습니다ㅎ)

 

기존 스케줄 모듈과 다른 점은

  • 분류 기능을 추가했습니다. (정상 작동)

    00.png

  • 비회원 작성 시 각 일정에 대한 권한을 판별하고 비밀번호 입력 폼을 추가했습니다. (정상 작동)

    01.png

  • 공휴일, 24절기, 기타 기념일, 음력을 어떻게 할까 하다가 그나마 일관적이고 신뢰가능한 공공데이터 API를 가져왔습니다. (정상 작동)
    + 외부 API에서 월별 xml을 캐시로 저장하는 방식이어서 처음에는 목록 로딩이 0.5초가 걸리지만 캐시 이후에는 0.05초로 단축됩니다
    + 또한 관리자 모드에서 추가적으로 기념일을 넣을 수 있게 했습니다. (정상 작동)

    02.png

  • DB테이블에 대기/공개 여부, 종일 일정 여부, 반복 일정 여부, 장소, 제목 색상 등을 추가했습니다. (정상 작동)
  • 또한 기존의 selected_date 컬럼을 bigtext로 바꿔서 반복 일정과 연동하도록 했습니다. (정상 작동)
  • 추가로 반복 일정의 경우에는 따로 테이블을 만들어서 정기 일정, 요일 설정, 직접 설정 등의 유형을 두고 각각에 맞는 세부적인 옵션을 주었습니다. (거의 정상 작동 중이고 버그 테스트 중)

    03-1.png03-2.png03-3.png03-4.png

 

기본 스킨의 경우는

  • 디자인은 제가 창의력이 없으니까ㅜ 개인적으로 사용중인 comley_board 패키지에서 참조를 꽤 했습니다. 다만 가급적 다른 레이아웃과도 어울릴 수 있게 전반적으로 grayscale로 가고 css도 정리를 좀 한다고 했는데...
  • 월 전체적으로 테이블 처리를 하지 않고 일별로 div 처리를 해서 향후에는 스크립트만 가지고도 주 단위, 일 단위로 디스플레이가 가능하도록 짜봤습니다. (기초작업으로 일단 틀거리만 잡은 상황)
  • 종일 일정의 경우에는 지정한 스케줄 색상에 따라 배경색 하이라이트 표시가 가능하도록 했습니다. (정상 작동)
  • 관리자는 각 일정의 대기/공개 여부를 (게시판의 추천처럼) 버튼 하나로 전환할 수 있습니다. (정상 작동)
  • 모바일은 귀찮으니까 반응형입니다ㅋ 또한 월별 페이지 이동(이전달/다음달)을 스와이프로 구현했습니다. 분류 선택은 공간 차지 문제 때문에 모달 창으로 처리했구요. (정상 작동)
  • 지금 생각 안 나는 몇 개가 더 있을 것 같은데, 그건 직접 체험해보세요ㅎㅎ

 

앞으로는

  • [필수] 스케줄의 공개/대기 여부에 따라 일정을 불러오는 커맨드를 추가할 생각입니다.
  • [필수] 스케줄을 달력식으로 말고, 게시판 목록처럼 처리할 act도 만들 예정입니다. 다만 관리자 전용으로 할지, 권한 설정을 어떻게 해야 할지 등이 조금 고민 되네요.
  • [고민 중] (산소아빠님 제안으로) 일정 제목 검색 기능 추가도 생각해볼 만합니다. 단 효율성을 위해 검색 기간을 6개월 단위로 잘라서 '계속 검색' 기능을 병행하는 게 좋겠구요.
  • [고민 중] 반복일정의 경우 수정/삭제시 '현재 일정만 수정/삭제'와 '전체 일정 수정/삭제'가 가능하도록 할 생각입니다. 아마도 또 다른 테이블을 만들어야 할 것 같아서 시간이 좀 걸리겠지 싶습니다.
  • [고민 중] 플래너 스킨처럼 간단한 예약 기능도 해볼까 했는데, 시간대 중복 방지라든가 하는 작업들이 있어서 이것도 품이 꽤 들것 같네요.
  • [고민 중] 게시판 모듈의 상담게시판 기능을 참고해서, 내가 입력한 일정만 보기 / 관리자가 입력한 일정도 함께 보기 / 모든 일정을 보기 등의 경우를 생각하고 있습니다.
  • [고민 중] 모듈을 나름 최적화한다는 생각에 schedule.item.php을 없애면서 프로필 사진 함수도 같이 사라졌는데 날아라님의 모듈 소개글을 보니까 탐이 나네요ㅜ 무엇보다 스킨이 조금씩 어지러워지는 느낌이어서 schedule.item.php은 있어야 하지 않나 싶습니다.

윤삼

profile
아무래도 중급 초반 수준의 코딩 오타쿠인 것 같습니다.
  • ?
    와 이쁩니다ㅎㅎ
    https://xetown.com/index.php?mid=point_contents&member_srl=38796&document_srl=1405472
    전에 만드신 시험 모듈 스킨처럼 네모네모(?) 하시면 더 이쁠거 같아요ㅎㅎ
  • ? profile
    그때는 스킨에만 집중할 수 있었지만, 이번에는 아무래도 모듈 기능에 주안점을 두다 보니까 네모네모가 확 드러나질 않는 것 같네요ㅜ
  • profile
    역시 윤삼님이시네요.
    기존 플래너xe에서 안되는 검색기능이 가능하다면 좋을것같습니다.
    다만 달력형식이라 구현은 힘들듯하나 검색하면 리스트형식으로 나오게하면 어떨까하는 생각을 해봅니다.
    그리고 지금 모바일로 작성해봤는데 노출이 안되네요.
    입력이 안된건지, 보이지만 않는건지.. ㅎ
    암튼 시험모듈에 이어 또다른 엄청난 작품이나오길 기대하고 응원합니다
  • profile profile
    윽, 선을 보이자마자 버그가...
    문제점 찾아서 수정했으니 이제 입력이 잘 될 겁니다;;
  • profile profile
    다시해도 안되네요 뭔가... 제가 문제일까요 ㅎ;
  • profile profile
    저는 비회원 입력 잘 되는데...
    혹시 세부옵션 같은 것을 어떻게 넣으셨어요?
  • profile profile
    여러번 해보니 이메일을 입력하지 않으면 입력이 안되는 건지 보이질 않네요
    이메일가지 입력하니 목록에 보이네요~^^
  • profile profile
    네 이메일 필수인데, 필터가 제대로 경고를 주지 않았나보네요. 많이 다듬어야겠어요ㅎㅎ
  • profile profile
    검색 기능은 아예 생각도 못했었는데 이것도 추진을 해봐야겠습니다!!
  • profile profile
    와우~ 근데 장소 부분은 확장변수로 추가한거같은데 확장변수를 사용할 수 있는 건가요? 썸네일이나 댓글같은 일반 게시판에서 사용하는 것들을 다 사용가능한건지 밥먹다 갑자기 궁금해지네요 ㅎ
  • profile profile
    아, 안 그래도 작업 중에 그냥 document 모듈과 연동하는 방식으로 모듈을 만들어도 되겠다 생각은 했었는데요.
    그럼 진짜 게시판처럼 유용한 기능들을 도입하는 게 쉬울 테니까요.

    어쨌든 현재 스케줄 모듈은 그렇게까지는 아니에요,
    '장소' 변수도 확장변수는 아니고 모듈의 기본 컬럼으로 설정해놓은 겁니다.
    (글쓰기 모양새가 게시판 같아서 확장변수처럼 보일 것 같기는 했어요ㅋㅋ 스케줄 모듈에 확장변수 기능을 얹을지 말지는 잘 모르겠어요. 손대기 시작하면 신경 써야 할 게 한두군데 아닐 것 같아서요)

    썸네일은 람보님이 이미 구현해놓으셨구요.
    댓글은 바로 직전글에 예시된 것처럼 날아라님이 하신 작업이 있기는 한데, 얼마전 관련된 이야기( https://xetown.com/1507500 )도 있었고 해서 대댓글 기능까지는 어렵더라도 한줄메모식으로 뭔가 해볼 수는 있을 것 같습니다.
  • profile profile
    그렇군요 정말 document 모듈과 연동이 되면 좋을 것 같네요 ㅎ
    눈이 많이 오네요~ 길다니실때 조심하시고, 평안한 주말되세요~
  • ?
    와웅 기능적으로 대폭 향상되었네요!!
  • ? profile
    저는 습작처럼 하고 있어서요ㅎㅎ
    근데 막상 시작하고 나니까, 새삼 플래너 스킨이 스킨이어서 그렇지 대단하긴 대단한 거구나 하는 감탄이 들더라구요.
    어쨌든 람보님 모듈 덕에 좋은 경험하고 있습니다 :)
  • profile
    흥미로운 기능이 많네요 :)
  • profile profile
    기초를 잘 닦아주신 덕이지요 ;)
  • profile
    역시 윤삼님... 꼭 필요한 것들 하나하나 ^^ 기대되네요 ^^
  • profile profile
    오랜만입니다ㅎㅎ 근데 이게 비정형적인 상황들이 많아서 엄청 노가다예요. 시간이 모자라요, 윽.
  • profile
    응원합니다 ~~
  • profile profile
    오랜만입니다아아~ 근데 집중력도 있고 머리도 좋아야 할 것 같은데 영 속도가 더디네요ㅎㅎ
  • profile
    잘보고 갑니다!
  • profile
    역시 윤삼님이시네요.
    마음에 드는 기능이 너무 좋네요.
    힘내세요!
  • profile
    안녕하세요 윤삼님 질문이 있어서 여쭤봅니다.
    이름
    이메일 주소
    비밀번호
    반복 반복 안 함
    장소 장소를 입력해주세요.
    스케줄 색상 색상 선택

    이렇게 확장변수? 같은 부분의 명칭을 바꾸거나 추가 할수 있는 방법이 있을까요.
  • profile profile
    바꾸신다면 관련 기능을 지원해주는 애드온을 사용해보세요.
    https://xetown.com/download/1730001

    언어 코드는 ...
    이름, 이메일 주소, 비밀번호 같이 범용으로 쓰이는 용어는 https://github.com/rhymix/rhymix/blob/master/common/lang/ko.php, 그외에는 https://github.com/bjrambo/xe-module-schedule/blob/master/lang/ko.lang.php 등을 참고하시면 될 겁니다.
  • profile profile
    세상에 정말 감사합니다.
    늘 출력되는 글을 어디서 수정해야하는지 정말 많이 고민했는데 lang 파일이 그런 용도 였군요.
    감사합니다.

    덕분에 스케줄 모듈 뿐만아니라 다른부분에서도 해결되었습니다. 감사합니다.
  • profile profile
    정말 다시 한번 감사인사 드립니다.
    감사합니다.