Как интегрировать WYSIWYG в блог?

Поддержка старых модов или модов, созданных авторами не из нашего сообщества, а также любые вопросы, связанные с модами для phpBB 3.0.x, кроме относящихся к форуму Для авторов (phpBB 3.0.x).

Как интегрировать WYSIWYG в блог?

Сообщение Leramulina 06.02.2008 23:46

У меня есть отличный WYSIWYG на phpbb 3, который работает в сообщениях.
http://www.ecardmax.com/index.php?step=Hoteditor - вот такой

И есть отличный блог мод
http://www.lithiumstudios.org/forum/viewtopic.php?t=433

Но в этом моде не работает WYSIWYG от HotEditor
:(

Какие файлы мне надо изменить, чтобы WYSIWYG заработал в блоге?

Попробовала поредактировать blog_posting_layout.html, но ничего хорошего пока не вышло :)

Вместо

Код: Выделить всё
<!-- INCLUDE posting_buttons.html -->

         <div id="smiley-box">
            <!-- IF S_SMILIES_ALLOWED and .smiley -->
               <strong>{L_SMILIES}</strong><br />
               <!-- BEGIN smiley -->
                  <a href="#" onclick="insert_text('{smiley.A_SMILEY_CODE}', true); return false;"><img src="{smiley.SMILEY_IMG}" width="{smiley.SMILEY_WIDTH}" height="{smiley.SMILEY_HEIGHT}" alt="{smiley.SMILEY_CODE}" title="{smiley.SMILEY_DESC}" /></a>
               <!-- END smiley -->
            <!-- ENDIF -->
            <!-- IF S_SHOW_SMILEY_LINK and S_SMILIES_ALLOWED-->
               <br /><a href="{U_MORE_SMILIES}" onclick="popup(this.href, 300, 350, '_phpbbsmilies'); return false;">{L_MORE_SMILIES}</a>
            <!-- ENDIF -->

            <!-- IF BBCODE_STATUS -->
            <!-- IF .smiley --><hr /><!-- ENDIF -->
            {BBCODE_STATUS}<br />
            <!-- IF S_BBCODE_ALLOWED -->
               {IMG_STATUS}<br />
               {FLASH_STATUS}<br />
               {URL_STATUS}<br />
               {SMILIES_STATUS}
            <!-- ENDIF -->
            <!-- ENDIF -->
         </div>

         {EXTRA_ABOVE_MESSAGE}

         <div id="message-box">
            <textarea name="message" id="message" rows="15" cols="76" tabindex="3" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" class="inputbox">{MESSAGE}</textarea>
         </div>
      </fieldset>
      <span class="corners-bottom"><span></span></span></div>
   </div>


Вставила
Код: Выделить всё
<!-- INCLUDE posting_buttons.html -->
<!-- //HotEditor MOD START -->
<textarea style="visibility:hidden;position:absolute;top:-20;left:-20;width:1px;height:1px" <!-- IF S_UCP_ACTION and not S_PRIVMSGS and not S_EDIT_DRAFT -->name="signature" id="signature" style="height: 9em;"<!-- ELSE -->name="message" id="message"<!-- ENDIF --> rows="15" cols="76" tabindex="3" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" class="inputbox">{MESSAGE}{DRAFT_MESSAGE}{SIGNATURE}</textarea>      
<style type='text/css'>@import url(richedit/styles/office2007/style.css);</style>         
<script language="JavaScript" type="text/javascript" src="richedit/editor.js?version=4.2"></script>            
<script language="JavaScript" type="text/javascript">
   if(document.getElementById("message")){
      var mydoc=document.getElementById("message");
   }
   else if(document.getElementById("signature")){
      var mydoc=document.getElementById("signature");
      
   }
   var getdata = mydoc.value;
   getdata = convertSize(getdata,"1");
   
   Instantiate("max","editor", getdata , "100%", "300px");
   //For Vietnamese User. Edit file editor.js to enable vietnamese keyboard
   if(enable_vietnamese_keyboard==1){
      document.write("<script language=\"JavaScript\" type=\"text/javascript\" src=\"richedit/avim.js\"><\/script>");
      var hoteditor_avim_method = hot_readCookie("hoteditor_avim_method");var him_auto_checked="";var him_telex_checked="";var him_vni_checked="";var him_viqr_checked="";var him_viqr2_checked="";var him_off_checked="";if(hoteditor_avim_method=="0"){him_auto_checked="checked";}else if(hoteditor_avim_method=="1"){him_telex_checked="checked";}else if(hoteditor_avim_method=="2"){him_vni_checked="checked";}else if(hoteditor_avim_method=="3"){him_viqr_checked="checked";}else if(hoteditor_avim_method=="4"){him_viqr2_checked="checked";}else if(hoteditor_avim_method=="-1"){him_off_checked="checked";}
      document.write("<div style='width:100%;text-align:center;font-family:Verdana;font-size:11px;'><input "+him_auto_checked+" id=him_auto onclick=setMethod(0); type=radio name=viet_method> Auto :: <input "+him_telex_checked+" id=him_telex onclick=setMethod(1); type=radio name=viet_method> Telex :: <input "+him_vni_checked+" id=him_vni onclick=setMethod(2); type=radio name=viet_method> VNI :: <input "+him_viqr_checked+" id=him_viqr onclick=setMethod(3); type=radio name=viet_method> VIQR :: <input "+him_viqr2_checked+" id=him_viqr2 onclick=setMethod(4); type=radio name=viet_method> VIQR* :: <input "+him_off_checked+" id=him_off onclick=setMethod(-1); type=radio name=viet_method> Off<br><img src="+styles_folder_path+"/vietnamese_symbol.gif></div>");
   }
   function get_hoteditor_data(){
      if (HTML_ON == "no"){
         alert ("Please uncheck the HTML checkbox");
         return false;
      }
      setCodeOutput();
      var bbcode_output=document.getElementById("hoteditor_bbcode_ouput_editor").value;//Output to BBCode
      //Make BBCode ouput compatible with phpbb
      var currentDomain=document.URL;
      currentDomain=currentDomain.replace("http://","");
      var infoDomain=currentDomain.split("/");
      var correctDomain="http://";
      for(var d=0;d < infoDomain.length; d++){
         if(d<infoDomain.length-1) correctDomain+=infoDomain[d]+"/";
      }
      bbcode_output=bbcode_output.replace(/\[IMG\]\.\//gi,"[IMG]"+correctDomain);
      bbcode_output=bbcode_output.replace(/\[(\/)quote\]/gi,"[$1quote]");
      bbcode_output = convertSize(bbcode_output,"0");
      mydoc.value = bbcode_output;
   }

   function convertSize(text,what){
      if(what=="1"){//phpBB size to Hoteditor size
         text=text.replace(/\[size=85\]/gi,"[SIZE=1]");
         text=text.replace(/\[size=100\]/gi,"[SIZE=2]");
         text=text.replace(/\[size=120\]/gi,"[SIZE=3]");
         text=text.replace(/\[size=130\]/gi,"[SIZE=4]");
         text=text.replace(/\[size=150\]/gi,"[SIZE=5]");
         text=text.replace(/\[size=170\]/gi,"[SIZE=6]");
         text=text.replace(/\[size=200\]/gi,"[SIZE=7]");
      }
      else{//Hoteditor size to phpBB size
         text=text.replace(/\[size=1\]/gi,"[SIZE=85]");
         text=text.replace(/\[size=2\]/gi,"[SIZE=100]");
         text=text.replace(/\[size=3\]/gi,"[SIZE=120]");
         text=text.replace(/\[size=4\]/gi,"[SIZE=130]");
         text=text.replace(/\[size=5\]/gi,"[SIZE=150]");
         text=text.replace(/\[size=6\]/gi,"[SIZE=170]");
         text=text.replace(/\[size=7\]/gi,"[SIZE=200]");               
      }            
      return text;
   }                  
</script>   
   <!-- IF S_SMILIES_ALLOWED and .smiley -->
      <br /><strong>{L_SMILIES}</strong><br />
      <!--//HotEditor MOD -->
      <!-- BEGIN smiley -->
         <span style="curror:pointer;" onmousedown="if(editor_type=='1'){WriteHTML('<img src={smiley.SMILEY_IMG}>','editor');}else{WriteTEXT('[IMG]{smiley.SMILEY_IMG}[/IMG]','editor');}"><img src="{smiley.SMILEY_IMG}" width="{smiley.SMILEY_WIDTH}" height="{smiley.SMILEY_HEIGHT}" alt="{smiley.SMILEY_CODE}" title="{smiley.SMILEY_DESC}" /></span>
      <!-- END smiley -->
   <!-- ENDIF -->
   <!-- IF S_SHOW_SMILEY_LINK and S_SMILIES_ALLOWED-->
      <br /><a href="{U_MORE_SMILIES}" onclick="popup(this.href, 300, 350, '_phpbbsmilies'); return false;">{L_MORE_SMILIES}</a>
   <!-- ENDIF -->

   <!-- IF BBCODE_STATUS -->
   <!-- IF .smiley --><hr /><!-- ENDIF -->
   {BBCODE_STATUS}<br />
   <!-- IF S_BBCODE_ALLOWED -->
      {IMG_STATUS}<br />
      {FLASH_STATUS}<br />
      {URL_STATUS}<br />
      {SMILIES_STATUS}
   <!-- ENDIF -->
   <!-- ENDIF -->
   <!-- IF S_EDIT_DRAFT || S_DISPLAY_REVIEW -->
      <!-- IF S_DISPLAY_REVIEW --><hr /><!-- ENDIF -->
      <!-- IF S_EDIT_DRAFT --><strong><a href="{S_UCP_ACTION}">{L_BACK_TO_DRAFTS}</a></strong><!-- ENDIF -->
      <!-- IF S_DISPLAY_REVIEW --><strong><a href="#review">{L_TOPIC_REVIEW}</a></strong><!-- ENDIF -->
   <!-- ENDIF -->

<!-- //HotEditor MOD END -->



И ещё:

Код: Выделить всё
<form id="postform" method="post" action="{S_POST_ACTION}"{S_FORM_ENCTYPE}>


Поменяла на:

Код: Выделить всё
<!--//HotEditor MOD add onsubmit="return get_hoteditor_data();" -->
<form id="postform" onsubmit="return get_hoteditor_data();" method="post" action="{S_POST_ACTION}"{S_FORM_ENCTYPE}>


Окошко WYSIWYG HotEdotor появляется, но текст из него не постится в блог

Добавлено спустя 5 часов 31 минуту 41 секунду:

УРА! УРА! УРА! Получилось!
Два файла надо было изменять! :P
Аватара пользователя
Leramulina
phpBB 1.2.0
 
Сообщения: 17
Зарегистрирован: 30.01.2008 2:19
Откуда: Москва


Сообщение Rayden 07.02.2008 0:44

Мадмуазель, Вы считате, что правило 3.11 не для женщин?
phpBB2 FAQ
phpBB3 FAQ
Аватара пользователя
Rayden
Модератор
Модератор
 
Сообщения: 2687
Зарегистрирован: 27.06.2005 1:07

Сообщение Leramulina 07.02.2008 0:56

Rayden писал(а):Мадмуазель, Вы считате, что правило 3.11 не для женщин?


Я считаю, что в этом вопросе нет разделения полов.
Но мне не показалось злоупотреблением то, что я показала, как решила конкретную задачу.
Если Вы все же настоятельно считаете, что я совершила злоупотребление, можете принудить меня сократить пост или удалить его.
Аватара пользователя
Leramulina
phpBB 1.2.0
 
Сообщения: 17
Зарегистрирован: 30.01.2008 2:19
Откуда: Москва

Сообщение Smayliks 07.02.2008 1:07

Ша! =)

Лучше расскажите, какие файлы правили, вдруг ещё кому-нить понадобится..
Аватара пользователя
Smayliks
Zлобный модер =)
Zлобный модер =)
 
Сообщения: 1353
Зарегистрирован: 08.03.2005 15:23
Откуда: со всей страны. =)

Сообщение Leramulina 07.02.2008 1:14

ucp_blog.html

Поменяла

Код: Выделить всё
<form id="postform" method="post" action="{S_UCP_ACTION}"{S_FORM_ENCTYPE}>


на

Код: Выделить всё
<!--//HotEditor MOD add onsubmit="return get_hoteditor_data();" -->
<form id="postform" onsubmit="return get_hoteditor_data();" method="post" action="{S_UCP_ACTION}"{S_FORM_ENCTYPE}>
Аватара пользователя
Leramulina
phpBB 1.2.0
 
Сообщения: 17
Зарегистрирован: 30.01.2008 2:19
Откуда: Москва

Сообщение -AHaPXuCT- 09.03.2008 20:19

А можно ли этот блог интегрировать в мод быстрого ответа?
WeB - MaSTeR
ICQ: 413-709-247
Аватара пользователя
-AHaPXuCT-
phpBB 1.2.1
 
Сообщения: 21
Зарегистрирован: 03.02.2008 19:29
Откуда: РФ - Республика Мордовия -

Сообщение Leramulina 09.03.2008 23:17

-AHaPXuCT- писал(а):А можно ли этот блог интегрировать в мод быстрого ответа?


Никогда не работала с "быстрым ответом". Так что сказать не могу.
Кстати, пробовала тот же метод с новой бета-версией блога (до этого была 37а) и у меня не пошла интеграция :(
Аватара пользователя
Leramulina
phpBB 1.2.0
 
Сообщения: 17
Зарегистрирован: 30.01.2008 2:19
Откуда: Москва


Вернуться в Поддержка модов для phpBB 3.0.x

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0