Kodi: FCK Editor - Wie führe ich eine Funktion aus

Beitrag lesen

Hallo Forler,

ich habe ein sehr spezielles Problem aber hoffe dennoch
sehr sehr sehnsüchtig auf eine Antwort.

Es geht um den FCK Html Editor.

BITTE BITTE BITTE BITTE BITTE UM HILFE!!!
KOMME NICHT WEITER UND ES IST SEHR WICHTIG.

Ich möchte eine Funktion des Editors ansprechen.
Allerdings bekomme ich es nicht mit einem externen Button hin, diese
Funktion anzusprechen.

Im Javascript des Editors gibt es die Funktion die ich brauche.
Sie wird so ausgeführt.

onClick="FCKToolbarSet.Collapse();return false;"

Aber ausserhalb des Editors geht das nicht.
Fehlermeldung: FCKToolbarSet ist undifiniert

Wie kann ich diese Funktion dennoch ausführen.

Ich füge einfach mal den PHP Code mit in mein Post, vieleicht
hilft es.

class FCKeditor
{
 var $InstanceName ;
 var $BasePath ;
 var $Width ;
 var $Height ;
 var $ToolbarSet ;
 var $Value ;
 var $Config ;
 var $unterordner;

// PHP 5 Constructor (by Marcus Bointon coolbru@users.sourceforge.net)
 function __construct( $instanceName )
  {
  $this->InstanceName = $instanceName ;
  $this->BasePath  = "http://".PROJECT_DOMAIN."/".$unterordner."admin/" ;
  $this->Width  = '100%' ;
  $this->Height  = '500' ;
  $this->ToolbarSet = "low" ;
  $this->Value  = '' ;

$this->Config  = array() ;
 }

// PHP 4 Contructor
 function FCKeditor( $instanceName )
 {
  $this->__construct( $instanceName ) ;
 }

function Create()
 {
  echo $this->CreateHtml() ;
 }

function CreateHtml()
 {
  $HtmlValue = htmlspecialchars( $this->Value ) ;

$Html = '<div>' ;

if ( $this->IsCompatible() )
  {
   $Link = "{$this->BasePath}editor/fckeditor.html?InstanceName={$this->InstanceName}" ;

if ( $this->ToolbarSet != '' )
    $Link .= "&amp;Toolbar={$this->ToolbarSet}" ;

// Render the linked hidden field.
   $Html .= "<input type="hidden" id="{$this->InstanceName}" name="{$this->InstanceName}" value="{$HtmlValue}" />" ;

// Render the configurations hidden field.
   $Html .= "<input type="hidden" id="{$this->InstanceName}___Config" value="" . $this->GetConfigFieldString() . "" />" ;

// Render the editor IFRAME.
   $Html .= "<iframe id="{$this->InstanceName}___Frame" src="{$Link}" width="{$this->Width}" height="{$this->Height}" frameborder="no" 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" style="width: {$WidthCSS}; height: {$HeightCSS}" wrap="virtual">{$HtmlValue}</textarea>" ;
  }

$Html .= '</div>' ;

return $Html ;
 }

function IsCompatible()
 {
  global $HTTP_USER_AGENT ;

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
   return false ;
 }

function GetConfigFieldString()
 {
  $sParams = '' ;
  $bFirst = true ;

foreach ( $this->Config as $sKey => $sValue )
  {
   if ( $bFirst == false )
    $sParams .= '&amp;' ;
   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 ) ;
 }
}

$sBasePath = "http://www.yxyxc.de/admin/" ;
$oFCKeditor = new FCKeditor("nachricht") ;
$oFCKeditor->BasePath = $sBasePath ;
$oFCKeditor->Value  = $member_mailtext ;
$oFCKeditor->Create() ;

Wäre extrem froh wenn jemand die Antwort weiß.

kodi