웹마스터 팁



라르게덴님의 Xpresseditor + AXISJ AXUpload5(HTML5)와 모바일용 mex_default 스킨 사용시

모바일에서 에디터와 업로드를 사용하고자 할 때..


-------mex_default 스킨의list.html 파일-------


맨 위쪽 js 파일 불러들이는 곳에 다음 한 줄 추가

{@ Context::addJsFile("./common/js/x.min.js", true, '', -100000) }



-------mex_default 스킨의 read.html 파일-------


<form action="./" method="post" class="ff tgo open" onsubmit="return procFilter(this, insert_comment);">


를 아래와 같이 수정


<form action="./" method="post" onsubmit="jQuery(this).find('input').each(function(){if(this.title==this.value)this.value='';});return procFilter(this, insert_comment)" class="ff tgo open">

<input type="hidden" name="content" value="">


그리고


<li>
   <label for="rText">{$lang->comment}</label>
   <textarea name="content" rows="8" cols="42" id="rText"></textarea>
 </li>


를 찾아서


<div class="editor">{$oDocument->getCommentEditor()}</div>


로 수정


그리고 다음 코드 찾아서 삭제.


onClick="alert('PC에서 작성 또는 수정한 글은 모바일에서 수정할 수 없습니다.'); return false"|cond="!$is_mobile_docment"



-------mex_default 스킨의 write_form.html 파일-------


<form action="./" method="post" class="ff" onsubmit="return procFilter(this, insert)">


를 아래와 같이 수정


<form action="./" method="post" onsubmit="jQuery(this).find('input').each(function(){if(this.title==this.value)this.value='';});return procFilter(this, window.insert)" id="fo_write" name="fo_write" class="ff">

<input type="hidden" name="content" value="{$oDocument->getContentText()?$oDocument->getContentText():nl2br($module_info->embeddedContent)}" />


그리고


<li>
    <label for="nTitle">{$lang->title}</label>
    <input name="title" type="text" id="nTitle" />
</li>


를 찾아서


<div class="editor">{$oDocument->getEditor()}</div>


로 수정



-------mex_default 스킨의 comment_form.html 파일-------


파일 맨 위쪽 js 파일 불러들이는 곳에 다음 한 줄 추가

{@ Context::addJsFile("./common/js/x.min.js", true, '', -100000) }


그리고


<form action="./" method="post" class="ff tgo open" onsubmit="return procFilter(this, insert_comment);">


를 아래와 같이 수정


<form action="./" method="post" onsubmit="jQuery(this).find('input').each(function(){if(this.title==this.value)this.value='';});return procFilter(this, insert_comment)" class="ff tgo open" >

<input type="hidden" name="content" value="{htmlspecialchars($oComment->get('content'))}" />


그리고


<li>
    <label for="rText">{$lang->comment}</label>
    <textarea name="content" rows="8" cols="42" id="rText"></textarea>
</li>


를 찾아서


<div class="editor">{$oComment->getEditor()}</div>


로 수정


+++++++++++++

이상입니다.

빠진게 있는지 모르겠네요;; 일단 적용한 상태에서 잘 되는걸 확인은 했습니다.

물론 모바일 별로 확인을 다 한건 아니지만,, ios7에선 잘 되네요.


라르게덴님이 올려주신 Xpresseditor + AXISJ AXUpload5(HTML5) 에디터를 사용하고

모바일 스킨을 mex_default로 사용했을 경우의 팁입니다.

스킨은 mex_default 기준이지만 다른 모바일 스킨도 클래스명만 가져다 쓰면 적용가능할 거라 생각됩니다.



추가사항


/modules/document/document.controller.php 와

/modules/document/comment.controller.php 에 있는 다음 코드는 모두(합쳐서 3군데) 찾아서 삭제해줘야 합니다.

아니면 글 쓰기나 수정시 태그가 제대로 정리가 안됩니다.


* 삭제할 코드*


if(Mobile::isFromMobilePhone())
  {
   if($obj->use_html != 'Y')
   {
    $obj->content = htmlspecialchars($obj->content);
   }
   $obj->content = nl2br($obj->content);
  }