개발일지/Web

[Dev] Email Edit Tool 개발일지

zineeworld 2016. 9. 6. 14:01
반응형

Development Steps

  • 드롭다운 클릭 -> 선택된 텍스트로 변경 (9/20)
  • 코드 - \t 적용 (9/20)
  • 코드 - \n 적용 (9/21)
  • 코드 - {% %} 정규식으로 제거 (9/21)
  • 코드 - keyup 마다 auto preview (9/21)
  • 코드 - 템플릿 get body (9/21)
  • 코드 - 템플릿 get base (10/15)
  • 코드 - 템플릿 put (10/15)
  • 코드 - btnSave Disabled/Enabled Event (10/15)
  • 코드 - btnRevert Disabled/Enable Event (10/17)
  • 코드 - 복잡한 {% email_extra, include, extends, if %} 등 어떻게 처리?
  • 코드 - 템플릿 create (ajax post) 
  • 미리보기 - 다국어 테스트 (10/25)
  • 테스트 - 이메일 보내기 (10/25)



API

/tool/email/list

/tool/email/list?base

/tool/email/list?language


/tool/email/{base_name}?base

/tool/email/{body_name}

/tool/email/{body_name}?language={id}



9/5 월

목적

마크업 담당자가 직접 관리, 마크업 미스 최소화

상세기능

1. 미리보기 - 타이핑 후 자동 / 언어별 / 반응형

2. 코드보기 - 이메일 템플릿 마크업 등록(post)/수정(put)

3. 테스트 이메일 발송 - 단일/다중 발송, 언어별 발송



9/19 월

- API language dropdown

- API template dropdown

- Textarea

- html() 하면 알아서 \n, \t 적용

- tab keydown event 적용 (but api '\t'는 6 스페이스여서 정확히 폭이 같지 않음)



9/20 화

- 드롭다운 목록 클릭 후 선택된 텍스트 버튼에 적용

정규식 활용하여 {% %} 제거

- {% block email_extra %} {% endblock %} 이건 다음에 생각

- Textarea

- keydown (tab, enter)

- keyup (typing)



9/21 수

- 정규식 활용하여 {% %} 제거

- Textarea

- enter(\n) 적용

- 입력하는 내용 preview에 바로바로 적용되서 보여지게 함

- 툴 레이아웃 변경


< 이슈 >

- put에서 막힘

- 400 bad request -> 실장님 이슈

- csrftoken (http://flask-wtf.readthedocs.io/en/latest/csrf.html#ajax)



10/15 토

- 실장님이 고쳐주셔서 ajax put 성공 - He said "Don't trust anyone" lol

- 템플릿 base/body 구분해서 get 성공

- Save 버튼 기능 구현 및 disabled(true/false) 추가



10/17 월

- btnRevert 버튼 기능 구현 및 disabled(true/false) 추가

- textarea는 html()이 아니라 val()로 change



10/22 토

- <% email_extra %> 있을 때, 없을 때(undefined) 처리

- 이메일 테스트

- 단일 발송

- input 추가/삭제

- 템플릿 선택하기 전까지는 btnSend disabled



10/24 월

- 이메일 테스트

- 리스트 (다중 발송, hotmail/yahoo 메일 안 옴)

- input 1개 이하일 땐 [-] disabled (required 넣은 것은 삭제 안되게 함)

- language dropdown (base 템플릿 아닐 때만 활성화)

- 빈 input 걸러내고 리스트에 push



10/25 화

- body_html 안에 email_extra가 있는지 없는지 확인해서 치환



10/26 수

< 이슈 >

- keyup 이벤트, put 이벤트 모두 body/base(base/ticketsqr/others)로 나누어 생각해야 함

- base 템플릿 put 모두 400 bad request

- base 템플릿 모두 이메일 발송 불가 {"error":"Invalid Email"}

- ticketsqr 선택 후 다른 템플릿 선택하면 base+body_html 로드가 되어야 함 (현재 구현 X)



10/29 토

- keyup 이벤트, put 이벤트 모두 body/base(base/ticketsqr/others)로 나누어 생각해야 함

ㄴ body/base 만 나누어 생각 하기로

- base 템플릿 put 모두 400 bad request

ㄴ 실장님 해결 

- base 템플릿 모두 이메일 발송 불가 {"error":"Invalid Email"}

- ticketsqr 선택 후 다른 템플릿 선택하면 base+body_html 로드가 되어야 함 (현재 구현 X)

ㄴ base 템플릿을 선택하면 통으로 치환하기로, extend 부분을 백에서 처리해서 넘겨 주기를 기대해 본다....




V2_201611_Emailedittool_guide.pdf


반응형