Здравствуйте у меня следующий вопрос!!!есть класс с FCKeditor (представлен ниже) и я немогу в метод create() передать параметры!!!подскажите как это можно сделать*? передаю следующим образом function Create($name, $value, $height, $width)!!! если в конструктор передаю то все ОК! Код | class Fckeditor { var $InstanceName ; var $BasePath ; var $Width ; var $Height ; var $ToolbarSet ; var $Value ; var $Config ;
// PHP 5 Constructor (by Marcus Bointon <[email protected]>) function __construct() { $this->InstanceName = 'fckeditor'; $this->BasePath = ""; $this->Width = '100%'; $this->Height = '330'; $this->ToolbarSet = 'Default'; $this->Value = 'value'; $this->Config = array(); }
function Create() { $HtmlValue = htmlspecialchars($this->Value); $Html = '<div>';
if ( $this->FCKeditor_IsCompatibleBrowser() ) { if ( isset( $_GET['fcksource'] ) && $_GET['fcksource'] == "true" ) $File = 'fckeditor.original.html' ; else $File = 'fckeditor.html' ;
$Link = "{$this->BasePath}editor/{$File}?InstanceName={$this->InstanceName}";
if ( $this->ToolbarSet != '' )
$Link .= "&Toolbar={$this->ToolbarSet}" ;
// Render the linked hidden field. $Html .= "<input type=\"hidden\" id=\"{$this->InstanceName}\" name=\"{$this->InstanceName}\" value=\"{$HtmlValue}\" style=\"display:none\" />" ;
// Render the configurations hidden field. $Html .= "<input type=\"hidden\" id=\"{$this->InstanceName}___Config\" value=\"" . $this->GetConfigFieldString() . "\" style=\"display:none\" />" ;
// Render the editor IFRAME. $Html .= "<iframe id=\"{$this->InstanceName}___Frame\" src=\"{$Link}\" width=\"{$this->Width}\" height=\"{$this->Height}\" frameborder=\"0\" scrolling=\"no\"></iframe>" ; } else { if ( strpos( $this->Width, '%' ) === false ) $WidthCSS = $this->Width . 'px' ; else $WidthCSS = $this->Width ;
if ( strpos( $this->Height, '%' ) === false ) $HeightCSS = $this->Height . 'px' ; else $HeightCSS = $this->Height ; $Html .= "<textarea name=\"{$this->InstanceName}\" rows=\"4\" cols=\"40\" st yle=\"width: {$WidthCSS}; height: {$HeightCSS}\">{$HtmlValue}</textarea>" ; } $Html .= '</div>' ;
return $Html ; }
function IsCompatible() { return FCKeditor_IsCompatibleBrowser() ; }
function FCKeditor_IsCompatibleBrowser() { global $HTTP_USER_AGENT ;
if ( !isset( $_SERVER ) ) { global $HTTP_SERVER_VARS ; $_SERVER = $HTTP_SERVER_VARS ; } if ( isset( $HTTP_USER_AGENT ) ) $sAgent = $HTTP_USER_AGENT ; else $sAgent = $_SERVER['HTTP_USER_AGENT'] ;
if ( strpos($sAgent, 'MSIE') !== false && strpos($sAgent, 'mac') === false && strpos($sAgent, 'Opera') === false ) { $iVersion = (float)substr($sAgent, strpos($sAgent, 'MSIE') + 5, 3) ; return ($iVersion >= 5.5) ; } else if ( strpos($sAgent, 'Gecko/') !== false ) { $iVersion = (int)substr($sAgent, strpos($sAgent, 'Gecko/') + 6, 8) ; return ($iVersion >= 20030210) ; } else if ( strpos($sAgent, 'Opera/') !== false ) { $fVersion = (float)substr($sAgent, strpos($sAgent, 'Opera/') + 6, 4) ; return ($fVersion >= 9.5) ; } else if ( preg_match( "|AppleWebKit/(\d+)|i", $sAgent, $matches ) ) { $iVersion = $matches[1] ; return ( $matches[1] >= 522 ) ; } else return false ; }
function GetConfigFieldString() { $sParams = '' ; $bFirst = true ;
foreach ( $this->Config as $sKey => $sValue ) { if ( $bFirst == false ) $sParams .= '&' ; else $bFirst = false ;
if ( $sValue === true ) $sParams .= $this->EncodeConfig( $sKey ) . '=true' ; else if ( $sValue === false ) $sParams .= $this->EncodeConfig( $sKey ) . '=false' ; else $sParams .= $this->EncodeConfig( $sKey ) . '=' . $this->EncodeConfig( $sValue ) ; }
return $sParams; }
function EncodeConfig( $valueToEncode ) { $chars = array( '&' => '%26', '=' => '%3D', '"' => '%22' ) ;
return strtr( $valueToEncode, $chars ) ; } }
|
|