Index: branches/5.2.x/core/editor/fckeditor_php5.php =================================================================== diff -u -N --- branches/5.2.x/core/editor/fckeditor_php5.php (revision 14244) +++ branches/5.2.x/core/editor/fckeditor_php5.php (revision 0) @@ -1,265 +0,0 @@ -= 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 ; -} - -class FCKeditor -{ - /** - * Name of the FCKeditor instance. - * - * @access protected - * @var string - */ - public $InstanceName ; - /** - * Path to FCKeditor relative to the document root. - * - * @var string - */ - public $BasePath ; - /** - * Width of the FCKeditor. - * Examples: 100%, 600 - * - * @var mixed - */ - public $Width ; - /** - * Height of the FCKeditor. - * Examples: 400, 50% - * - * @var mixed - */ - public $Height ; - /** - * Name of the toolbar to load. - * - * @var string - */ - public $ToolbarSet ; - /** - * Initial value. - * - * @var string - */ - public $Value ; - /** - * This is where additional configuration can be passed. - * Example: - * $oFCKeditor->Config['EnterMode'] = 'br'; - * - * @var array - */ - public $Config ; - - public $LateLoad; - - /** - * Main Constructor. - * Refer to the _samples/php directory for examples. - * - * @param string $instanceName - */ - public function __construct( $instanceName ) - { - $this->InstanceName = $instanceName ; - $this->BasePath = '/fckeditor/' ; - $this->Width = '100%' ; - $this->Height = '200' ; - $this->ToolbarSet = 'Default' ; - $this->Value = '' ; - $this->LateLoad = false; - - $this->Config = array() ; - } - - /** - * Display FCKeditor. - * - */ - public function Create() - { - echo $this->CreateHtml() ; - } - - /** - * Return the HTML code required to run FCKeditor. - * - * @return string - */ - public function CreateHtml() - { - $HtmlValue = htmlspecialchars( $this->Value ) ; - - $Html = '' ; - - if ( $this->IsCompatible() ) - { - 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 .= "InstanceName}\" name=\"{$this->InstanceName}\" value=\"{$HtmlValue}\" style=\"display:none\" />" ; - - // Render the configurations hidden field. - $Html .= "InstanceName}___Config\" value=\"" . $this->GetConfigFieldString() . "\" style=\"display:none\" />" ; - - // Render the editor IFRAME. - if ($this->LateLoad) { - $Html .= "" ; - } - else { - $Html .= "" ; - } - } - 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 .= "" ; - } - - return $Html ; - } - - /** - * Returns true if browser is compatible with FCKeditor. - * - * @return boolean - */ - public function IsCompatible() - { - return FCKeditor_IsCompatibleBrowser() ; - } - - /** - * Get settings from Config array as a single string. - * - * @access protected - * @return string - */ - public 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 ; - } - - /** - * Encode characters that may break the configuration string - * generated by GetConfigFieldString(). - * - * @access protected - * @param string $valueToEncode - * @return string - */ - public function EncodeConfig( $valueToEncode ) - { - $chars = array( - '&' => '%26', - '=' => '%3D', - '"' => '%22' ) ; - - return strtr( $valueToEncode, $chars ) ; - } -}