Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F390902
fckeditor_php4.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
4 KB
Subscribers
None
fckeditor_php4.php
View Options
<?php
/*
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2007 Frederico Caldeira Knabben
*
* == BEGIN LICENSE ==
*
* Licensed under the terms of any of the following licenses at your
* choice:
*
* - GNU General Public License Version 2 or later (the "GPL")
* http://www.gnu.org/licenses/gpl.html
*
* - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
* http://www.gnu.org/licenses/lgpl.html
*
* - Mozilla Public License Version 1.1 or later (the "MPL")
* http://www.mozilla.org/MPL/MPL-1.1.html
*
* == END LICENSE ==
*
* This is the integration file for PHP 4.
*
* It defines the FCKeditor class that can be used to create editor
* instances in PHP pages on server side.
*/
class
FCKeditor
{
var
$InstanceName
;
var
$BasePath
;
var
$Width
;
var
$Height
;
var
$ToolbarSet
;
var
$Value
;
var
$Config
;
// PHP 4 Contructor
function
FCKeditor
(
$instanceName
)
{
$this
->
InstanceName
=
$instanceName
;
$this
->
BasePath
=
'/fckeditor/'
;
$this
->
Width
=
'100%'
;
$this
->
Height
=
'200'
;
$this
->
ToolbarSet
=
'Default'
;
$this
->
Value
=
''
;
$this
->
Config
=
array
()
;
}
function
Create
()
{
echo
$this
->
CreateHtml
()
;
}
function
CreateHtml
()
{
$HtmlValue
=
htmlspecialchars
(
$this
->
Value
)
;
$Html
=
'<div>'
;
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
.=
"<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
\"
style=
\"
width: {$WidthCSS}; height: {$HeightCSS}
\"
>{$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
.=
'&'
;
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
)
;
}
}
?>
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Sat, Feb 22, 15:28 (22 h, 34 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
22985
Default Alt Text
fckeditor_php4.php (4 KB)
Attached To
rZEDHG ZedLegacy
Event Timeline
Log In to Comment