Needlworks / Textcube

Textcube : Brand yourself! / Personalized web publishing platform with multi-user support
http://www.textcube.org
Other
207 stars 55 forks source link

Mobile user agent strips <script> code from output HTML #1852

Closed zvuc closed 7 years ago

zvuc commented 7 years ago

Desktop User Agent:

screen shot 2017-01-22 at 22 16 10

Mobile User Agent:

screen shot 2017-01-22 at 22 15 58

글 본문에 트위터 임베드나 기타 <script>태그를 이용한 기능을 이용했을 경우, 모바일 브라우저에서 해당 페이지를 보면 소스에서 <script>부분이 통째로 걷어내져서 임베드 위젯이 제대로 교체되지 않는 문제가 있습니다.

데스크탑에서 확인했을땐 멀쩡한데 모바일에서만 안 나오길래 뭔가 확인해봤더니 이런 문제가 있네요.

참고로 설정에서 "모바일 인터페이스 - 스마트폰으로 기기로 블로그에 접속할 경우 자동으로 스마트폰용 인터페이스로 이동합니다. " 이 부분의 체크는 해제한 상태인데도, 모바일 유저 에이전트를 잡은 경우에 텍스트큐브 단에서 무언가 코드에 변경점을 가한다는 점이 조금 이상하지 않나 싶습니다. 전에 #1839 이런 문제도 한번 있었고, 모바일용 페이지 설정을 해제한 상태라면 데스크탑과 완전히 같은 페이지를 서빙해주는것이 더 확실하지 않을까 싶습니다.

현재 1.10.8버전을 사용중인데, 혹시 이후의 커밋에서 이미 고쳐진 문제라면 알려주세요.

zvuc commented 7 years ago

추가: 조금 더 테스트를 해본 결과, User agent를 iPad로 했을때는 스크립트가 제대로 로드되는것으로 보아, 코드 어딘가에 iPhone인 경우만 어째서인지 스크립트 태그를 걷어내는 기능이 있는것같습니다.

premist commented 7 years ago

library/view/view.php#L1346 에서 "스마트폰으로 기기로 블로그에 접속할 경우 자동으로 스마트폰용 인터페이스로 이동합니다." 설정과는 상관 없이 HTML 태그를 strip해서 발생하는 현상 같습니다. L1345~L1346 코드를 주석 처리하고 다시 구동하여보니 정상적으로 Githubissues.

  • Githubissues is a development platform for aggregating issues.