Work/PROJECT

좌충우돌 개발기 -1-

회사 그룹웨어가 약...간.. 조..금... 그래서

참다참다 조금 구조좀 파악해보고 익스텐션을 만들기로 했다.

 

처음엔 뭐 유명한 많은 다른 사이트들 확장 프로그램처럼 페이지 내에서 여러가지 옵션과 편의기능을 

넣으려고 했는데... 하.. 딥빡..

구조 자체가 프레임-프레임-프레임-프레임 으로 다중으로 호출되고 내부에서 js,css들은 중첩으로 계속

호출되고 아놔.. 이거 누가 이렇게 짰어.

 

덕분에 DOM Selector 가 거지같이 동작하고 분명 콘솔창에서 테스르로 코드 실행하면 잘 동작하는것도

익스텐션에서 이벤트 주입하면 동작안하고 뭐야? 하면 해당 DOM을 못찾고...

 

아니 시X 페이지가 Document 기준으로 하나면 모르겠는데 지 멋대로 안에서 프레임 호출이 중첩되다보니

이놈의 익스텐션이 각 iframe 따라서 안에서 같이 호출되면서 아 망했어요~ 가 되버리니

도저히 해당 방법은 각이 안보여서 일단 폐기.

 

이후 인스톨한 확장 아이콘을 클릭하면 나오는 팝업화면에서 주로쓰는 기능들만 모와서 불러와 주고

편의 기능을 개발하자! 하고 봤더니 일단 최대 사이즈가 정해져 있고..

 

뭔놈의 inline 꺼뜩하면 막히고. 아 일단 화면 작으니 답답하고 원문 링크 열어버리면 새탭으로 열리는데

이게 또 열어둔 팝업창은 내려가버리니 UX적으로 너무 짜증남.

 

그래서 다시 옵션창을 디폴트로 열어보자! 아니면 아이콘 클릭시 팝업창에서 옵션창을 호출해서 열어주자!

그게 아니면 팝업창을 탭으로 열어보자! 하고 이틀정도 삽질했는데 나와 있는 모든 방식이 제대로 동작안했음..

 

시부엉 무슨 컨텐츠 스크립트에서 sendMessage해서 backround 가 받아 openOptionsPage()를 실행하고

..다 필요 없었음

 

메인페스트에서 action 에서 default popup 을 설정해주지 않으면 자동으로 옵션 페이지가 열리는 거임.

하 이러면 될걸 ... 온갖걸 다 찾아보고 테스트해본다고 고생만 했네..

 

하지만 일단 방향은 나왔으니 나머진 꾸미기만 하면 됨. 약간 티스토리 블로그 느낌으로 그룹웨어 에서 

불러온 데이터 내가 필요한 부분만 따로 추출해서 따로 뿌려주면 됨. 

 

근데 언더로딩도 맘에 안들어서 json도 아니고 xml도 아닌 text로 들어온 response를 적당히 파싱해서 

처리해주는게 나을듯.

 

어쨋든 기본적으로 메모와 기안, 근퇴, 캘린더 기능 올려놓고 우리팀에 먼저 공개해봐야겠음.

반응형