1. 程式人生 > >學習Discuz! X3.2記錄:快速回復外掛,通過js使選擇的下拉列表填充到回帖內容中

學習Discuz! X3.2記錄:快速回復外掛,通過js使選擇的下拉列表填充到回帖內容中

    修改前一篇內容,把 quick_reply.class.php 檔案內容修改為:

<?php

if(!defined('IN_DISCUZ')) {
  exit('Access Denied');
}

class plugin_quick_reply{}

class plugin_quick_reply_forum extends plugin_quick_reply{
  public function viewthread_fastpost_content_output(){

    global $_G;//全部變數
    $config = $_G['cache']['plugin']['quick_reply'];//獲取外掛的變數資訊

	$border_color = $config['border_color'] ? $config['border_color'] : ' #C2D5E3';
	$bg_color = $config['bg_color'] ? $config['bg_color'] : '#E5EDF2';
	$left_content = $config['left_content'];
	$default_content = $config['select_default'];

	//獲取下拉框中的內容,並且定義以[br]分割所填的內容。
	$select_content = explode('[br]', str_replace(array("\n\r", "\t",), array('', ''), $config['select_content']));
	$str = '<div style="border:'.$border_color.' 1px solid; background-color:'.$bg_color.'; height:24px; padding-top:2px;">  '.$left_content.'
	  <select id="quick_reply" style="height: 22px" onchange="quick_reply_z()" >
	<option value="">'.$default_content.'</option>';
	if($select_content)
	{
	foreach($select_content as $v)
	{
	   if(empty($v))continue;
		  $str .= '<option value="'.$v.'">'.$v.'</option>';
	   }
		$str .= '</select>  </div>';

		$str .= '<script type="text/javascript">
		function quick_reply_z(){
		   var content = document.getElementById("quick_reply").value;
			document.getElementById("fastpostmessage").value =              qr_replacehtml(content);
		}
		function qr_replacehtml(content){
		  content = content.replace(/<\/?.+?>/g,""); 
			content = content.replace(/[\r\n]/g, ""); 
			 return content; 
		}</script>';

		 return $str;
	}

  }
}

?>