언젠가 이야기가 나와서 저도 람보님의 스케줄 모듈을 관심 있게 보고 있었는데요.
https://github.com/bjrambo/xe-module-schedule
모듈 공부도 할 겸 이것저것 만져보다가 결국 리모델링이라는 암흑의 길?을 걷고 있는 중입니다 :)
원래는 어느 정도 안정화되면 소개를 하려 했는데, 아래 날아라님 소개글을 보고 뒤처지면 안 되겠다는 생각이 들어ㅋ 티저식으로 살짝 선을 뵐까 합니다.
열심히 기능 추가하고 버그 잡으면서 개선 중이긴 합니다ㅠ
(근데 스킨 디자인은 날아라님을 결코 따라갈 수가 없네요ㅜㅜ)
https://dev.aporia.blog/schedule
여기로 가시면 엿보기와 비회원 글쓰기로 체험을 해보실 수 있습니다.
(저도 여기서 테스트 중이어서 상황이 조금씩 변할 수는 있습니다ㅎ)
기존 스케줄 모듈과 다른 점은
- 분류 기능을 추가했습니다. (정상 작동)
- 비회원 작성 시 각 일정에 대한 권한을 판별하고 비밀번호 입력 폼을 추가했습니다. (정상 작동)
- 공휴일, 24절기, 기타 기념일, 음력을 어떻게 할까 하다가 그나마 일관적이고 신뢰가능한 공공데이터 API를 가져왔습니다. (정상 작동)
+ 외부 API에서 월별 xml을 캐시로 저장하는 방식이어서 처음에는 목록 로딩이 0.5초가 걸리지만 캐시 이후에는 0.05초로 단축됩니다
+ 또한 관리자 모드에서 추가적으로 기념일을 넣을 수 있게 했습니다. (정상 작동) - DB테이블에 대기/공개 여부, 종일 일정 여부, 반복 일정 여부, 장소, 제목 색상 등을 추가했습니다. (정상 작동)
- 또한 기존의 selected_date 컬럼을 bigtext로 바꿔서 반복 일정과 연동하도록 했습니다. (정상 작동)
- 추가로 반복 일정의 경우에는 따로 테이블을 만들어서 정기 일정, 요일 설정, 직접 설정 등의 유형을 두고 각각에 맞는 세부적인 옵션을 주었습니다. (거의 정상 작동 중이고 버그 테스트 중)
기본 스킨의 경우는
- 디자인은 제가 창의력이 없으니까ㅜ 개인적으로 사용중인 comley_board 패키지에서 참조를 꽤 했습니다. 다만 가급적 다른 레이아웃과도 어울릴 수 있게 전반적으로 grayscale로 가고 css도 정리를 좀 한다고 했는데...
- 월 전체적으로 테이블 처리를 하지 않고 일별로 div 처리를 해서 향후에는 스크립트만 가지고도 주 단위, 일 단위로 디스플레이가 가능하도록 짜봤습니다. (기초작업으로 일단 틀거리만 잡은 상황)
- 종일 일정의 경우에는 지정한 스케줄 색상에 따라 배경색 하이라이트 표시가 가능하도록 했습니다. (정상 작동)
- 관리자는 각 일정의 대기/공개 여부를 (게시판의 추천처럼) 버튼 하나로 전환할 수 있습니다. (정상 작동)
- 모바일은 귀찮으니까 반응형입니다ㅋ 또한 월별 페이지 이동(이전달/다음달)을 스와이프로 구현했습니다. 분류 선택은 공간 차지 문제 때문에 모달 창으로 처리했구요. (정상 작동)
- 지금 생각 안 나는 몇 개가 더 있을 것 같은데, 그건 직접 체험해보세요ㅎㅎ
앞으로는
- [필수] 스케줄의 공개/대기 여부에 따라 일정을 불러오는 커맨드를 추가할 생각입니다.
- [필수] 스케줄을 달력식으로 말고, 게시판 목록처럼 처리할 act도 만들 예정입니다. 다만 관리자 전용으로 할지, 권한 설정을 어떻게 해야 할지 등이 조금 고민 되네요.
- [고민 중] (산소아빠님 제안으로) 일정 제목 검색 기능 추가도 생각해볼 만합니다. 단 효율성을 위해 검색 기간을 6개월 단위로 잘라서 '계속 검색' 기능을 병행하는 게 좋겠구요.
- [고민 중] 반복일정의 경우 수정/삭제시 '현재 일정만 수정/삭제'와 '전체 일정 수정/삭제'가 가능하도록 할 생각입니다. 아마도 또 다른 테이블을 만들어야 할 것 같아서 시간이 좀 걸리겠지 싶습니다.
- [고민 중] 플래너 스킨처럼 간단한 예약 기능도 해볼까 했는데, 시간대 중복 방지라든가 하는 작업들이 있어서 이것도 품이 꽤 들것 같네요.
- [고민 중] 게시판 모듈의 상담게시판 기능을 참고해서, 내가 입력한 일정만 보기 / 관리자가 입력한 일정도 함께 보기 / 모든 일정을 보기 등의 경우를 생각하고 있습니다.
- [고민 중] 모듈을 나름 최적화한다는 생각에 schedule.item.php을 없애면서 프로필 사진 함수도 같이 사라졌는데 날아라님의 모듈 소개글을 보니까 탐이 나네요ㅜ 무엇보다 스킨이 조금씩 어지러워지는 느낌이어서 schedule.item.php은 있어야 하지 않나 싶습니다.
https://xetown.com/index.php?mid=point_contents&member_srl=38796&document_srl=1405472
전에 만드신 시험 모듈 스킨처럼 네모네모(?) 하시면 더 이쁠거 같아요ㅎㅎ