From eb4ff7f73c5d4bdf74a3472448b5a195598ff4cd Mon Sep 17 00:00:00 2001 From: ivan Date: Wed, 1 Aug 2007 22:26:52 +0000 Subject: event refactor, landing on HEAD! --- .../editor/filemanager/browser/default/browser.css | 88 +++ .../filemanager/browser/default/browser.html | 154 +++++ .../browser/default/connectors/perl/basexml.pl | 63 ++ .../browser/default/connectors/perl/commands.pl | 158 +++++ .../browser/default/connectors/perl/connector.cgi | 137 +++++ .../browser/default/connectors/perl/io.pl | 131 ++++ .../browser/default/connectors/perl/upload_fck.pl | 667 +++++++++++++++++++++ .../browser/default/connectors/perl/util.pl | 60 ++ .../browser/default/frmactualfolder.html | 67 +++ .../browser/default/frmcreatefolder.html | 113 ++++ .../filemanager/browser/default/frmfolders.html | 196 ++++++ .../browser/default/frmresourceslist.html | 160 +++++ .../browser/default/frmresourcetype.html | 65 ++ .../filemanager/browser/default/frmupload.html | 113 ++++ .../browser/default/images/ButtonArrow.gif | Bin 0 -> 138 bytes .../filemanager/browser/default/images/Folder.gif | Bin 0 -> 128 bytes .../browser/default/images/Folder32.gif | Bin 0 -> 281 bytes .../browser/default/images/FolderOpened.gif | Bin 0 -> 132 bytes .../browser/default/images/FolderOpened32.gif | Bin 0 -> 264 bytes .../browser/default/images/FolderUp.gif | Bin 0 -> 132 bytes .../browser/default/images/icons/32/ai.gif | Bin 0 -> 1140 bytes .../browser/default/images/icons/32/avi.gif | Bin 0 -> 454 bytes .../browser/default/images/icons/32/bmp.gif | Bin 0 -> 709 bytes .../browser/default/images/icons/32/cs.gif | Bin 0 -> 224 bytes .../default/images/icons/32/default.icon.gif | Bin 0 -> 177 bytes .../browser/default/images/icons/32/dll.gif | Bin 0 -> 258 bytes .../browser/default/images/icons/32/doc.gif | Bin 0 -> 260 bytes .../browser/default/images/icons/32/exe.gif | Bin 0 -> 170 bytes .../browser/default/images/icons/32/fla.gif | Bin 0 -> 946 bytes .../browser/default/images/icons/32/gif.gif | Bin 0 -> 704 bytes .../browser/default/images/icons/32/htm.gif | Bin 0 -> 1527 bytes .../browser/default/images/icons/32/html.gif | Bin 0 -> 1527 bytes .../browser/default/images/icons/32/jpg.gif | Bin 0 -> 463 bytes .../browser/default/images/icons/32/js.gif | Bin 0 -> 274 bytes .../browser/default/images/icons/32/mdb.gif | Bin 0 -> 274 bytes .../browser/default/images/icons/32/mp3.gif | Bin 0 -> 454 bytes .../browser/default/images/icons/32/pdf.gif | Bin 0 -> 567 bytes .../browser/default/images/icons/32/png.gif | Bin 0 -> 464 bytes .../browser/default/images/icons/32/ppt.gif | Bin 0 -> 254 bytes .../browser/default/images/icons/32/rdp.gif | Bin 0 -> 1493 bytes .../browser/default/images/icons/32/swf.gif | Bin 0 -> 725 bytes .../browser/default/images/icons/32/swt.gif | Bin 0 -> 724 bytes .../browser/default/images/icons/32/txt.gif | Bin 0 -> 213 bytes .../browser/default/images/icons/32/vsd.gif | Bin 0 -> 277 bytes .../browser/default/images/icons/32/xls.gif | Bin 0 -> 271 bytes .../browser/default/images/icons/32/xml.gif | Bin 0 -> 408 bytes .../browser/default/images/icons/32/zip.gif | Bin 0 -> 368 bytes .../browser/default/images/icons/ai.gif | Bin 0 -> 403 bytes .../browser/default/images/icons/avi.gif | Bin 0 -> 249 bytes .../browser/default/images/icons/bmp.gif | Bin 0 -> 126 bytes .../browser/default/images/icons/cs.gif | Bin 0 -> 128 bytes .../browser/default/images/icons/default.icon.gif | Bin 0 -> 113 bytes .../browser/default/images/icons/dll.gif | Bin 0 -> 132 bytes .../browser/default/images/icons/doc.gif | Bin 0 -> 140 bytes .../browser/default/images/icons/exe.gif | Bin 0 -> 109 bytes .../browser/default/images/icons/fla.gif | Bin 0 -> 382 bytes .../browser/default/images/icons/gif.gif | Bin 0 -> 125 bytes .../browser/default/images/icons/htm.gif | Bin 0 -> 621 bytes .../browser/default/images/icons/html.gif | Bin 0 -> 621 bytes .../browser/default/images/icons/jpg.gif | Bin 0 -> 125 bytes .../browser/default/images/icons/js.gif | Bin 0 -> 139 bytes .../browser/default/images/icons/mdb.gif | Bin 0 -> 146 bytes .../browser/default/images/icons/mp3.gif | Bin 0 -> 249 bytes .../browser/default/images/icons/pdf.gif | Bin 0 -> 230 bytes .../browser/default/images/icons/png.gif | Bin 0 -> 125 bytes .../browser/default/images/icons/ppt.gif | Bin 0 -> 139 bytes .../browser/default/images/icons/rdp.gif | Bin 0 -> 606 bytes .../browser/default/images/icons/swf.gif | Bin 0 -> 388 bytes .../browser/default/images/icons/swt.gif | Bin 0 -> 388 bytes .../browser/default/images/icons/txt.gif | Bin 0 -> 122 bytes .../browser/default/images/icons/vsd.gif | Bin 0 -> 136 bytes .../browser/default/images/icons/xls.gif | Bin 0 -> 138 bytes .../browser/default/images/icons/xml.gif | Bin 0 -> 231 bytes .../browser/default/images/icons/zip.gif | Bin 0 -> 235 bytes .../filemanager/browser/default/images/spacer.gif | Bin 0 -> 43 bytes .../filemanager/browser/default/js/common.js | 55 ++ .../filemanager/browser/default/js/fckxml.js | 129 ++++ 77 files changed, 2356 insertions(+) create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/browser.css create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/browser.html create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/frmactualfolder.html create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/frmfolders.html create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/frmresourceslist.html create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/frmresourcetype.html create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/frmupload.html create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/Folder.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/Folder32.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/html.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/js.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/png.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/images/spacer.gif create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/js/common.js create mode 100644 httemplate/elements/fckeditor/editor/filemanager/browser/default/js/fckxml.js (limited to 'httemplate/elements/fckeditor/editor/filemanager/browser/default') diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/browser.css b/httemplate/elements/fckeditor/editor/filemanager/browser/default/browser.css new file mode 100644 index 000000000..ba464ba2c --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/browser.css @@ -0,0 +1,88 @@ +/* + * 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 == + * + * CSS styles used by all pages that compose the File Browser. + */ + +body +{ + background-color: #f1f1e3; +} + +form +{ + margin: 0px 0px 0px 0px ; + padding: 0px 0px 0px 0px ; +} + +.Frame +{ + background-color: #f1f1e3; + border-color: #f1f1e3; + border-right: thin inset; + border-top: thin inset; + border-left: thin inset; + border-bottom: thin inset; +} + +body.FileArea +{ + + background-color: #ffffff; +} + +body, td, input, select +{ + font-size: 11px; + font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana; +} + +.ActualFolder +{ + font-weight: bold; + font-size: 14px; +} + +.PopupButtons +{ + border-top: #d5d59d 1px solid; + background-color: #e3e3c7; + padding: 7px 10px 7px 10px; +} + +.Button, button +{ + border-right: #737357 1px solid; + border-top: #737357 1px solid; + border-left: #737357 1px solid; + color: #3b3b1f; + border-bottom: #737357 1px solid; + background-color: #c7c78f; +} + +.FolderListCurrentFolder img +{ + background-image: url(images/FolderOpened.gif); +} + +.FolderListFolder img +{ + background-image: url(images/Folder.gif); +} \ No newline at end of file diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/browser.html b/httemplate/elements/fckeditor/editor/filemanager/browser/default/browser.html new file mode 100644 index 000000000..8b776a281 --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/browser.html @@ -0,0 +1,154 @@ + + + + + FCKeditor - Resources Browser + + + + + + + + + + + + + + + + + + + + diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl new file mode 100644 index 000000000..f64b7c799 --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl @@ -0,0 +1,63 @@ +##### +# 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 File Manager Connector for Perl. +##### + +sub CreateXmlHeader +{ + local($command,$resourceType,$currentFolder) = @_; + + # Create the XML document header. + print ''; + + # Create the main "Connector" node. + print ''; + + # Add the current folder node. + print ''; +} + +sub CreateXmlFooter +{ + print ''; +} + +sub SendError +{ + local( $number, $text ) = @_; + + print << "_HTML_HEAD_"; +Content-Type:text/xml; charset=utf-8 +Pragma: no-cache +Cache-Control: no-cache +Expires: Thu, 01 Dec 1994 16:00:00 GMT + +_HTML_HEAD_ + + # Create the XML document header + print '' ; + + print '' ; + + exit ; +} + +1; diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl new file mode 100644 index 000000000..2ed2e6292 --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl @@ -0,0 +1,158 @@ +##### +# 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 File Manager Connector for Perl. +##### + +sub GetFolders +{ + + local($resourceType, $currentFolder) = @_; + + # Map the virtual path to the local server path. + $sServerDir = &ServerMapFolder($resourceType, $currentFolder); + print ""; # Open the "Folders" node. + + opendir(DIR,"$sServerDir"); + @files = grep(!/^\.\.?$/,readdir(DIR)); + closedir(DIR); + + foreach $sFile (@files) { + if($sFile != '.' && $sFile != '..' && (-d "$sServerDir$sFile")) { + $cnv_filename = &ConvertToXmlAttribute($sFile); + print ''; + } + } + print ""; # Close the "Folders" node. +} + +sub GetFoldersAndFiles +{ + + local($resourceType, $currentFolder) = @_; + # Map the virtual path to the local server path. + $sServerDir = &ServerMapFolder($resourceType,$currentFolder); + + # Initialize the output buffers for "Folders" and "Files". + $sFolders = ''; + $sFiles = ''; + + opendir(DIR,"$sServerDir"); + @files = grep(!/^\.\.?$/,readdir(DIR)); + closedir(DIR); + + foreach $sFile (@files) { + if($sFile ne '.' && $sFile ne '..') { + if(-d "$sServerDir$sFile") { + $cnv_filename = &ConvertToXmlAttribute($sFile); + $sFolders .= '' ; + } else { + ($iFileSize,$refdate,$filedate,$fileperm) = (stat("$sServerDir$sFile"))[7,8,9,2]; + if($iFileSize > 0) { + $iFileSize = int($iFileSize / 1024); + if($iFileSize < 1) { + $iFileSize = 1; + } + } + $cnv_filename = &ConvertToXmlAttribute($sFile); + $sFiles .= '' ; + } + } + } + print $sFolders ; + print ''; # Close the "Folders" node. + print $sFiles ; + print ''; # Close the "Files" node. +} + +sub CreateFolder +{ + + local($resourceType, $currentFolder) = @_; + $sErrorNumber = '0' ; + $sErrorMsg = '' ; + + if($FORM{'NewFolderName'} ne "") { + $sNewFolderName = $FORM{'NewFolderName'}; + # Map the virtual path to the local server path of the current folder. + $sServerDir = &ServerMapFolder($resourceType, $currentFolder); + if(-w $sServerDir) { + $sServerDir .= $sNewFolderName; + $sErrorMsg = &CreateServerFolder($sServerDir); + if($sErrorMsg == 0) { + $sErrorNumber = '0'; + } elsif($sErrorMsg eq 'Invalid argument' || $sErrorMsg eq 'No such file or directory') { + $sErrorNumber = '102'; #// Path too long. + } else { + $sErrorNumber = '110'; + } + } else { + $sErrorNumber = '103'; + } + } else { + $sErrorNumber = '102' ; + } + # Create the "Error" node. + $cnv_errmsg = &ConvertToXmlAttribute($sErrorMsg); + print ''; +} + +sub FileUpload +{ +eval("use File::Copy;"); + + local($resourceType, $currentFolder) = @_; + + $sErrorNumber = '0' ; + $sFileName = '' ; + if($new_fname) { + # Map the virtual path to the local server path. + $sServerDir = &ServerMapFolder($resourceType,$currentFolder); + + # Get the uploaded file name. + $sFileName = $new_fname; + $sOriginalFileName = $sFileName; + + $iCounter = 0; + while(1) { + $sFilePath = $sServerDir . $sFileName; + if(-e $sFilePath) { + $iCounter++ ; + ($path,$BaseName,$ext) = &RemoveExtension($sOriginalFileName); + $sFileName = $BaseName . '(' . $iCounter . ').' . $ext; + $sErrorNumber = '201'; + } else { + copy("$img_dir/$new_fname","$sFilePath"); + chmod(0777,$sFilePath); + unlink("$img_dir/$new_fname"); + last; + } + } + } else { + $sErrorNumber = '202' ; + } + $sFileName =~ s/"/\\"/g; + print "Content-type: text/html\n\n"; + print ''; + exit ; +} +1; diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi new file mode 100644 index 000000000..a74121572 --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi @@ -0,0 +1,137 @@ +#!/usr/bin/env perl + +##### +# 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 File Manager Connector for Perl. +##### + +## +# ATTENTION: To enable this connector, look for the "SECURITY" comment in this file. +## + +## START: Hack for Windows (Not important to understand the editor code... Perl specific). +if(Windows_check()) { + chdir(GetScriptPath($0)); +} + +sub Windows_check +{ + # IIS,PWS(NT/95) + $www_server_os = $^O; + # Win98 & NT(SP4) + if($www_server_os eq "") { $www_server_os= $ENV{'OS'}; } + # AnHTTPd/Omni/IIS + if($ENV{'SERVER_SOFTWARE'} =~ /AnWeb|Omni|IIS\//i) { $www_server_os= 'win'; } + # Win Apache + if($ENV{'WINDIR'} ne "") { $www_server_os= 'win'; } + if($www_server_os=~ /win/i) { return(1); } + return(0); +} + +sub GetScriptPath { + local($path) = @_; + if($path =~ /[\:\/\\]/) { $path =~ s/(.*?)[\/\\][^\/\\]+$/$1/; } else { $path = '.'; } + $path; +} +## END: Hack for IIS + +require 'util.pl'; +require 'io.pl'; +require 'basexml.pl'; +require 'commands.pl'; +require 'upload_fck.pl'; + +## +# SECURITY: REMOVE/COMMENT THE FOLLOWING LINE TO ENABLE THIS CONNECTOR. +## +&SendError( 1, 'This connector is disabled. Please check the "editor/filemanager/browser/default/connectors/perl/connector.cgi" file' ) ; + + &read_input(); + + if($FORM{'ServerPath'} ne "") { + $GLOBALS{'UserFilesPath'} = $FORM{'ServerPath'}; + if(!($GLOBALS{'UserFilesPath'} =~ /\/$/)) { + $GLOBALS{'UserFilesPath'} .= '/' ; + } + } else { + $GLOBALS{'UserFilesPath'} = '/userfiles/'; + } + + # Map the "UserFiles" path to a local directory. + $rootpath = &GetRootPath(); + $GLOBALS{'UserFilesDirectory'} = $rootpath . $GLOBALS{'UserFilesPath'}; + + &DoResponse(); + +sub DoResponse +{ + + if($FORM{'Command'} eq "" || $FORM{'Type'} eq "" || $FORM{'CurrentFolder'} eq "") { + return ; + } + # Get the main request informaiton. + $sCommand = $FORM{'Command'}; + $sResourceType = $FORM{'Type'}; + $sCurrentFolder = $FORM{'CurrentFolder'}; + + # Check the current folder syntax (must begin and start with a slash). + if(!($sCurrentFolder =~ /\/$/)) { + $sCurrentFolder .= '/'; + } + if(!($sCurrentFolder =~ /^\//)) { + $sCurrentFolder = '/' . $sCurrentFolder; + } + + # Check for invalid folder paths (..) + if ( $sCurrentFolder =~ /\.\./ ) { + SendError( 102, "" ) ; + } + + # File Upload doesn't have to Return XML, so it must be intercepted before anything. + if($sCommand eq 'FileUpload') { + FileUpload($sResourceType,$sCurrentFolder); + return ; + } + + print << "_HTML_HEAD_"; +Content-Type:text/xml; charset=utf-8 +Pragma: no-cache +Cache-Control: no-cache +Expires: Thu, 01 Dec 1994 16:00:00 GMT + +_HTML_HEAD_ + + &CreateXmlHeader($sCommand,$sResourceType,$sCurrentFolder); + + # Execute the required command. + if($sCommand eq 'GetFolders') { + &GetFolders($sResourceType,$sCurrentFolder); + } elsif($sCommand eq 'GetFoldersAndFiles') { + &GetFoldersAndFiles($sResourceType,$sCurrentFolder); + } elsif($sCommand eq 'CreateFolder') { + &CreateFolder($sResourceType,$sCurrentFolder); + } + + &CreateXmlFooter(); + + exit ; +} + diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl new file mode 100644 index 000000000..c1dbccf93 --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl @@ -0,0 +1,131 @@ +##### +# 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 File Manager Connector for Perl. +##### + +sub GetUrlFromPath +{ + local($resourceType, $folderPath) = @_; + + if($resourceType eq '') { + $rmpath = &RemoveFromEnd($GLOBALS{'UserFilesPath'},'/'); + return("$rmpath$folderPath"); + } else { + return("$GLOBALS{'UserFilesPath'}$resourceType$folderPath"); + } +} + +sub RemoveExtension +{ + local($fileName) = @_; + local($path, $base, $ext); + if($fileName !~ /\./) { + $fileName .= '.'; + } + if($fileName =~ /([^\\\/]*)\.(.*)$/) { + $base = $1; + $ext = $2; + if($fileName =~ /(.*)$base\.$ext$/) { + $path = $1; + } + } + return($path,$base,$ext); + +} + +sub ServerMapFolder +{ + local($resourceType,$folderPath) = @_; + + # Get the resource type directory. + $sResourceTypePath = $GLOBALS{'UserFilesDirectory'} . $resourceType . '/'; + + # Ensure that the directory exists. + &CreateServerFolder($sResourceTypePath); + + # Return the resource type directory combined with the required path. + $rmpath = &RemoveFromStart($folderPath,'/'); + return("$sResourceTypePath$rmpath"); +} + +sub GetParentFolder +{ + local($folderPath) = @_; + + $folderPath =~ s/[\/][^\/]+[\/]?$//g; + return $folderPath; +} + +sub CreateServerFolder +{ + local($folderPath) = @_; + + $sParent = &GetParentFolder($folderPath); + # Check if the parent exists, or create it. + if(!(-e $sParent)) { + $sErrorMsg = &CreateServerFolder($sParent); + if($sErrorMsg == 1) { + return(1); + } + } + if(!(-e $folderPath)) { + umask(000); + mkdir("$folderPath",0777); + chmod(0777,"$folderPath"); + return(0); + } else { + return(1); + } +} + +sub GetRootPath +{ +#use Cwd; + +# my $dir = getcwd; +# print $dir; +# $dir =~ s/$ENV{'DOCUMENT_ROOT'}//g; +# print $dir; +# return($dir); + +# $wk = $0; +# $wk =~ s/\/connector\.cgi//g; +# if($wk) { +# $current_dir = $wk; +# } else { +# $current_dir = `pwd`; +# } +# return($current_dir); +use Cwd; + + if($ENV{'DOCUMENT_ROOT'}) { + $dir = $ENV{'DOCUMENT_ROOT'}; + } else { + my $dir = getcwd; + $workdir =~ s/\/connector\.cgi//g; + $dir =~ s/$workdir//g; + } + return($dir); + + + +} +1; diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl new file mode 100644 index 000000000..1c3f4e29c --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl @@ -0,0 +1,667 @@ +##### +# 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 File Manager Connector for Perl. +##### + +# image data save dir +$img_dir = './temp/'; + + +# File size max(unit KB) +$MAX_CONTENT_SIZE = 30000; + +# Filelock (1=use,0=not use) +$PM{'flock'} = '1'; + + +# upload Content-Type list +my %UPLOAD_CONTENT_TYPE_LIST = ( + 'image/(x-)?png' => 'png', # PNG image + 'image/p?jpe?g' => 'jpg', # JPEG image + 'image/gif' => 'gif', # GIF image + 'image/x-xbitmap' => 'xbm', # XBM image + + 'image/(x-(MS-)?)?bmp' => 'bmp', # Windows BMP image + 'image/pict' => 'pict', # Macintosh PICT image + 'image/tiff' => 'tif', # TIFF image + 'application/pdf' => 'pdf', # PDF image + 'application/x-shockwave-flash' => 'swf', # Shockwave Flash + + 'video/(x-)?msvideo' => 'avi', # Microsoft Video + 'video/quicktime' => 'mov', # QuickTime Video + 'video/mpeg' => 'mpeg', # MPEG Video + 'video/x-mpeg2' => 'mpv2', # MPEG2 Video + + 'audio/(x-)?midi?' => 'mid', # MIDI Audio + 'audio/(x-)?wav' => 'wav', # WAV Audio + 'audio/basic' => 'au', # ULAW Audio + 'audio/mpeg' => 'mpga', # MPEG Audio + + 'application/(x-)?zip(-compressed)?' => 'zip', # ZIP Compress + + 'text/html' => 'html', # HTML + 'text/plain' => 'txt', # TEXT + '(?:application|text)/(?:rtf|richtext)' => 'rtf', # RichText + + 'application/msword' => 'doc', # Microsoft Word + 'application/vnd.ms-excel' => 'xls', # Microsoft Excel + + '' +); + +# Upload is permitted. +# A regular expression is possible. +my %UPLOAD_EXT_LIST = ( + 'png' => 'PNG image', + 'p?jpe?g|jpe|jfif|pjp' => 'JPEG image', + 'gif' => 'GIF image', + 'xbm' => 'XBM image', + + 'bmp|dib|rle' => 'Windows BMP image', + 'pi?ct' => 'Macintosh PICT image', + 'tiff?' => 'TIFF image', + 'pdf' => 'PDF image', + 'swf' => 'Shockwave Flash', + + 'avi' => 'Microsoft Video', + 'moo?v|qt' => 'QuickTime Video', + 'm(p(e?gv?|e|v)|1v)' => 'MPEG Video', + 'mp(v2|2v)' => 'MPEG2 Video', + + 'midi?|kar|smf|rmi|mff' => 'MIDI Audio', + 'wav' => 'WAVE Audio', + 'au|snd' => 'ULAW Audio', + 'mp(e?ga|2|a|3)|abs' => 'MPEG Audio', + + 'zip' => 'ZIP Compress', + 'lzh' => 'LZH Compress', + 'cab' => 'CAB Compress', + + 'd?html?' => 'HTML', + 'rtf|rtx' => 'RichText', + 'txt|text' => 'Text', + + '' +); + + +# sjis or euc +my $CHARCODE = 'sjis'; + +$TRANS_2BYTE_CODE = 0; + +############################################################################## +# Summary +# +# Form Read input +# +# Parameters +# Returns +# Memo +############################################################################## +sub read_input +{ +eval("use File::Copy;"); +eval("use File::Path;"); + + my ($FORM) = @_; + + + mkdir($img_dir,0777); + chmod(0777,$img_dir); + + undef $img_data_exists; + undef @NEWFNAMES; + undef @NEWFNAME_DATA; + + if($ENV{'CONTENT_LENGTH'} > 10000000 || $ENV{'CONTENT_LENGTH'} > $MAX_CONTENT_SIZE * 1024) { + &upload_error( + 'Size Error', + sprintf( + "Transmitting size is too large.MAX %d KB Now Size %d KB(%d bytes Over)", + $MAX_CONTENT_SIZE, + int($ENV{'CONTENT_LENGTH'} / 1024), + $ENV{'CONTENT_LENGTH'} - $MAX_CONTENT_SIZE * 1024 + ) + ); + } + + my $Buffer; + if($ENV{'CONTENT_TYPE'} =~ /multipart\/form-data/) { + # METHOD POST only + return unless($ENV{'CONTENT_LENGTH'}); + + binmode(STDIN); + # STDIN A pause character is detected.'(MacIE3.0 boundary of $ENV{'CONTENT_TYPE'} cannot be trusted.) + my $Boundary = ; + $Boundary =~ s/\x0D\x0A//; + $Boundary = quotemeta($Boundary); + while() { + if(/^\s*Content-Disposition:/i) { + my($name,$ContentType,$FileName); + # form data get + if(/\bname="([^"]+)"/i || /\bname=([^\s:;]+)/i) { + $name = $1; + $name =~ tr/+/ /; + $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; + &Encode(\$name); + } + if(/\bfilename="([^"]*)"/i || /\bfilename=([^\s:;]*)/i) { + $FileName = $1 || 'unknown'; + } + # head read + while() { + last if(! /\w/); + if(/^\s*Content-Type:\s*"([^"]+)"/i || /^\s*Content-Type:\s*([^\s:;]+)/i) { + $ContentType = $1; + } + } + # body read + $value = ""; + while() { + last if(/^$Boundary/o); + $value .= $_; + }; + $lastline = $_; + $value =~s /\x0D\x0A$//; + if($value ne '') { + if($FileName || $ContentType) { + $img_data_exists = 1; + ( + $FileName, # + $Ext, # + $Length, # + $ImageWidth, # + $ImageHeight, # + $ContentName # + ) = &CheckContentType(\$value,$FileName,$ContentType); + + $FORM{$name} = $FileName; + $new_fname = $FileName; + push(@NEWFNAME_DATA,"$FileName\t$Ext\t$Length\t$ImageWidth\t$ImageHeight\t$ContentName"); + + # Multi-upload correspondence + push(@NEWFNAMES,$new_fname); + open(OUT,">$img_dir/$new_fname"); + binmode(OUT); + eval "flock(OUT,2);" if($PM{'flock'} == 1); + print OUT $value; + eval "flock(OUT,8);" if($PM{'flock'} == 1); + close(OUT); + + } elsif($name) { + $value =~ tr/+/ /; + $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; + &Encode(\$value,'trans'); + $FORM{$name} .= "\0" if(defined($FORM{$name})); + $FORM{$name} .= $value; + } + } + }; + last if($lastline =~ /^$Boundary\-\-/o); + } + } elsif($ENV{'CONTENT_LENGTH'}) { + read(STDIN,$Buffer,$ENV{'CONTENT_LENGTH'}); + } + foreach(split(/&/,$Buffer),split(/&/,$ENV{'QUERY_STRING'})) { + my($name, $value) = split(/=/); + $name =~ tr/+/ /; + $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; + $value =~ tr/+/ /; + $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; + + &Encode(\$name); + &Encode(\$value,'trans'); + $FORM{$name} .= "\0" if(defined($FORM{$name})); + $FORM{$name} .= $value; + + } + +} + +############################################################################## +# Summary +# +# CheckContentType +# +# Parameters +# Returns +# Memo +############################################################################## +sub CheckContentType +{ + + my($DATA,$FileName,$ContentType) = @_; + my($Ext,$ImageWidth,$ImageHeight,$ContentName,$Infomation); + my $DataLength = length($$DATA); + + # An unknown file type + + $_ = $ContentType; + my $UnknownType = ( + !$_ + || /^application\/(x-)?macbinary$/i + || /^application\/applefile$/i + || /^application\/octet-stream$/i + || /^text\/plane$/i + || /^x-unknown-content-type/i + ); + + # MacBinary(Mac Unnecessary data are deleted.) + if($UnknownType || $ENV{'HTTP_USER_AGENT'} =~ /Macintosh|Mac_/) { + if($DataLength > 128 && !unpack("C",substr($$DATA,0,1)) && !unpack("C",substr($$DATA,74,1)) && !unpack("C",substr($$DATA,82,1)) ) { + my $MacBinary_ForkLength = unpack("N", substr($$DATA, 83, 4)); # ForkLength Get + my $MacBinary_FileName = quotemeta(substr($$DATA, 2, unpack("C",substr($$DATA, 1, 1)))); + if($MacBinary_FileName && $MacBinary_ForkLength && $DataLength >= $MacBinary_ForkLength + 128 + && ($FileName =~ /$MacBinary_FileName/i || substr($$DATA,102,4) eq 'mBIN')) { # DATA TOP 128byte MacBinary!! + $$DATA = substr($$DATA,128,$MacBinary_ForkLength); + my $ResourceLength = $DataLength - $MacBinary_ForkLength - 128; + $DataLength = $MacBinary_ForkLength; + } + } + } + + # A file name is changed into EUC. +# &jcode::convert(\$FileName,'euc',$FormCodeDefault); +# &jcode::h2z_euc(\$FileName); + $FileName =~ s/^.*\\//; # Windows, Mac + $FileName =~ s/^.*\///; # UNIX + $FileName =~ s/&/&/g; + $FileName =~ s/"/"/g; + $FileName =~ s//>/g; +# +# if($CHARCODE ne 'euc') { +# &jcode::convert(\$FileName,$CHARCODE,'euc'); +# } + + # An extension is extracted and it changes into a small letter. + my $FileExt; + if($FileName =~ /\.(\w+)$/) { + $FileExt = $1; + $FileExt =~ tr/A-Z/a-z/; + } + + # Executable file detection (ban on upload) + if($$DATA =~ /^MZ/) { + $Ext = 'exe'; + } + # text + if(!$Ext && ($UnknownType || $ContentType =~ /^text\//i || $ContentType =~ /^application\/(?:rtf|richtext)$/i || $ContentType =~ /^image\/x-xbitmap$/i) + && ! $$DATA =~ /[\000-\006\177\377]/) { +# $$DATA =~ s/\x0D\x0A/\n/g; +# $$DATA =~ tr/\x0D\x0A/\n\n/; +# +# if( +# $$DATA =~ /<\s*SCRIPT(?:.|\n)*?>/i +# || $$DATA =~ /<\s*(?:.|\n)*?\bONLOAD\s*=(?:.|\n)*?>/i +# || $$DATA =~ /<\s*(?:.|\n)*?\bONCLICK\s*=(?:.|\n)*?>/i +# ) { +# $Infomation = '(JavaScript contains)'; +# } +# if($$DATA =~ /<\s*TABLE(?:.|\n)*?>/i +# || $$DATA =~ /<\s*BLINK(?:.|\n)*?>/i +# || $$DATA =~ /<\s*MARQUEE(?:.|\n)*?>/i +# || $$DATA =~ /<\s*OBJECT(?:.|\n)*?>/i +# || $$DATA =~ /<\s*EMBED(?:.|\n)*?>/i +# || $$DATA =~ /<\s*FRAME(?:.|\n)*?>/i +# || $$DATA =~ /<\s*APPLET(?:.|\n)*?>/i +# || $$DATA =~ /<\s*FORM(?:.|\n)*?>/i +# || $$DATA =~ /<\s*(?:.|\n)*?\bSRC\s*=(?:.|\n)*?>/i +# || $$DATA =~ /<\s*(?:.|\n)*?\bDYNSRC\s*=(?:.|\n)*?>/i +# ) { +# $Infomation = '(the HTML tag which is not safe is included)'; +# } + + if($FileExt =~ /^txt$/i || $FileExt =~ /^cgi$/i || $FileExt =~ /^pl$/i) { # Text File + $Ext = 'txt'; + } elsif($ContentType =~ /^text\/html$/i || $FileExt =~ /html?/i || $$DATA =~ /<\s*HTML(?:.|\n)*?>/i) { # HTML File + $Ext = 'html'; + } elsif($ContentType =~ /^image\/x-xbitmap$/i || $FileExt =~ /^xbm$/i) { # XBM(x-BitMap) Image + my $XbmName = $1; + my ($XbmWidth, $XbmHeight); + if($$DATA =~ /\#define\s*$XbmName\_width\s*(\d+)/i) { + $XbmWidth = $1; + } + if($$DATA =~ /\#define\s*$XbmName\_height\s*(\d+)/i) { + $XbmHeight = $1; + } + if($XbmWidth && $XbmHeight) { + $Ext = 'xbm'; + $ImageWidth = $XbmWidth; + $ImageHeight = $XbmHeight; + } + } else { # + $Ext = 'txt'; + } + } + + # image + if(!$Ext && ($UnknownType || $ContentType =~ /^image\//i)) { + # PNG + if($$DATA =~ /^\x89PNG\x0D\x0A\x1A\x0A/) { + if(substr($$DATA, 12, 4) eq 'IHDR') { + $Ext = 'png'; + ($ImageWidth, $ImageHeight) = unpack("N2", substr($$DATA, 16, 8)); + } + } elsif($$DATA =~ /^GIF8(?:9|7)a/) { # GIF89a(modified), GIF89a, GIF87a + $Ext = 'gif'; + ($ImageWidth, $ImageHeight) = unpack("v2", substr($$DATA, 6, 4)); + } elsif($$DATA =~ /^II\x2a\x00\x08\x00\x00\x00/ || $$DATA =~ /^MM\x00\x2a\x00\x00\x00\x08/) { # TIFF + $Ext = 'tif'; + } elsif($$DATA =~ /^BM/) { # BMP + $Ext = 'bmp'; + } elsif($$DATA =~ /^\xFF\xD8\xFF/ || $$DATA =~ /JFIF/) { # JPEG + my $HeaderPoint = index($$DATA, "\xFF\xD8\xFF", 0); + my $Point = $HeaderPoint + 2; + while($Point < $DataLength) { + my($Maker, $MakerType, $MakerLength) = unpack("C2n",substr($$DATA,$Point,4)); + if($Maker != 0xFF || $MakerType == 0xd9 || $MakerType == 0xda) { + last; + } elsif($MakerType >= 0xC0 && $MakerType <= 0xC3) { + $Ext = 'jpg'; + ($ImageHeight, $ImageWidth) = unpack("n2", substr($$DATA, $Point + 5, 4)); + if($HeaderPoint > 0) { + $$DATA = substr($$DATA, $HeaderPoint); + $DataLength = length($$DATA); + } + last; + } else { + $Point += $MakerLength + 2; + } + } + } + } + + # audio + if(!$Ext && ($UnknownType || $ContentType =~ /^audio\//i)) { + # MIDI Audio + if($$DATA =~ /^MThd/) { + $Ext = 'mid'; + } elsif($$DATA =~ /^\x2esnd/) { # ULAW Audio + $Ext = 'au'; + } elsif($$DATA =~ /^RIFF/ || $$DATA =~ /^ID3/ && $$DATA =~ /RIFF/) { + my $HeaderPoint = index($$DATA, "RIFF", 0); + $_ = substr($$DATA, $HeaderPoint + 8, 8); + if(/^WAVEfmt $/) { + # WAVE + if(unpack("V",substr($$DATA, $HeaderPoint + 16, 4)) == 16) { + $Ext = 'wav'; + } else { # RIFF WAVE MP3 + $Ext = 'mp3'; + } + } elsif(/^RMIDdata$/) { # RIFF MIDI + $Ext = 'rmi'; + } elsif(/^RMP3data$/) { # RIFF MP3 + $Ext = 'rmp'; + } + if($ContentType =~ /^audio\//i) { + $Infomation .= '(RIFF '. substr($$DATA, $HeaderPoint + 8, 4). ')'; + } + } + } + + # a binary file + unless ($Ext) { + # PDF image + if($$DATA =~ /^\%PDF/) { + # Picture size is not measured. + $Ext = 'pdf'; + } elsif($$DATA =~ /^FWS/) { # Shockwave Flash + $Ext = 'swf'; + } elsif($$DATA =~ /^RIFF/ || $$DATA =~ /^ID3/ && $$DATA =~ /RIFF/) { + my $HeaderPoint = index($$DATA, "RIFF", 0); + $_ = substr($$DATA,$HeaderPoint + 8, 8); + # AVI + if(/^AVI LIST$/) { + $Ext = 'avi'; + } + if($ContentType =~ /^video\//i) { + $Infomation .= '(RIFF '. substr($$DATA, $HeaderPoint + 8, 4). ')'; + } + } elsif($$DATA =~ /^PK/) { # ZIP Compress File + $Ext = 'zip'; + } elsif($$DATA =~ /^MSCF/) { # CAB Compress File + $Ext = 'cab'; + } elsif($$DATA =~ /^Rar\!/) { # RAR Compress File + $Ext = 'rar'; + } elsif(substr($$DATA, 2, 5) =~ /^\-lh(\d+|d)\-$/) { # LHA Compress File + $Infomation .= "(lh$1)"; + $Ext = 'lzh'; + } elsif(substr($$DATA, 325, 25) eq "Apple Video Media Handler" || substr($$DATA, 325, 30) eq "Apple \x83\x72\x83\x66\x83\x49\x81\x45\x83\x81\x83\x66\x83\x42\x83\x41\x83\x6E\x83\x93\x83\x68\x83\x89") { + # QuickTime + $Ext = 'mov'; + } + } + + # Header analysis failure + unless ($Ext) { + # It will be followed if it applies for the MIME type from the browser. + foreach (keys %UPLOAD_CONTENT_TYPE_LIST) { + next unless ($_); + if($ContentType =~ /^$_$/i) { + $Ext = $UPLOAD_CONTENT_TYPE_LIST{$_}; + $ContentName = &CheckContentExt($Ext); + if( + grep {$_ eq $Ext;} ( + 'png', + 'gif', + 'jpg', + 'xbm', + 'tif', + 'bmp', + 'pdf', + 'swf', + 'mov', + 'zip', + 'cab', + 'lzh', + 'rar', + 'mid', + 'rmi', + 'au', + 'wav', + 'avi', + 'exe' + ) + ) { + $Infomation .= ' / Header analysis failure'; + } + if($Ext ne $FileExt && &CheckContentExt($FileExt) eq $ContentName) { + $Ext = $FileExt; + } + last; + } + } + # a MIME type is unknown--It judges from an extension. + unless ($Ext) { + $ContentName = &CheckContentExt($FileExt); + if($ContentName) { + $Ext = $FileExt; + $Infomation .= ' / MIME type is unknown('. $ContentType. ')'; + last; + } + } + } + +# $ContentName = &CheckContentExt($Ext) unless($ContentName); +# if($Ext && $ContentName) { +# $ContentName .= $Infomation; +# } else { +# &upload_error( +# 'Extension Error', +# "$FileName A not corresponding extension ($Ext)
The extension which can be responded ". join(',', sort values(%UPLOAD_EXT_LIST)) +# ); +# } + +# # SSI Tag Deletion +# if($Ext =~ /.?html?/ && $$DATA =~ /<\!/) { +# foreach ( +# 'config', +# 'echo', +# 'exec', +# 'flastmod', +# 'fsize', +# 'include' +# ) { +# $$DATA =~ s/\#\s*$_/\&\#35\;$_/ig +# } +# } + + return ( + $FileName, + $Ext, + int($DataLength / 1024 + 1), + $ImageWidth, + $ImageHeight, + $ContentName + ); +} + +############################################################################## +# Summary +# +# Extension discernment +# +# Parameters +# Returns +# Memo +############################################################################## + +sub CheckContentExt +{ + + my($Ext) = @_; + my $ContentName; + foreach (keys %UPLOAD_EXT_LIST) { + next unless ($_); + if($_ && $Ext =~ /^$_$/) { + $ContentName = $UPLOAD_EXT_LIST{$_}; + last; + } + } + return $ContentName; + +} + +############################################################################## +# Summary +# +# Form decode +# +# Parameters +# Returns +# Memo +############################################################################## +sub Encode +{ + + my($value,$Trans) = @_; + +# my $FormCode = &jcode::getcode($value) || $FormCodeDefault; +# $FormCodeDefault ||= $FormCode; +# +# if($Trans && $TRANS_2BYTE_CODE) { +# if($FormCode ne 'euc') { +# &jcode::convert($value, 'euc', $FormCode); +# } +# &jcode::tr( +# $value, +# "\xA3\xB0-\xA3\xB9\xA3\xC1-\xA3\xDA\xA3\xE1-\xA3\xFA", +# '0-9A-Za-z' +# ); +# if($CHARCODE ne 'euc') { +# &jcode::convert($value,$CHARCODE,'euc'); +# } +# } else { +# if($CHARCODE ne $FormCode) { +# &jcode::convert($value,$CHARCODE,$FormCode); +# } +# } +# if($CHARCODE eq 'euc') { +# &jcode::h2z_euc($value); +# } elsif($CHARCODE eq 'sjis') { +# &jcode::h2z_sjis($value); +# } + +} + +############################################################################## +# Summary +# +# Error Msg +# +# Parameters +# Returns +# Memo +############################################################################## + +sub upload_error +{ + + local($error_message) = $_[0]; + local($error_message2) = $_[1]; + + print "Content-type: text/html\n\n"; + print< + +Error Message + + + + + +
Error Message
+
    +

    $error_message

    +$error_message2
    +
+ + +EOF + &rm_tmp_uploaded_files; # Image Temporary deletion + exit; +} + +############################################################################## +# Summary +# +# Image Temporary deletion +# +# Parameters +# Returns +# Memo +############################################################################## + +sub rm_tmp_uploaded_files +{ + if($img_data_exists == 1){ + sleep 1; + foreach $fname_list(@NEWFNAMES) { + if(-e "$img_dir/$fname_list") { + unlink("$img_dir/$fname_list"); + } + } + } + +} +1; diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl new file mode 100644 index 000000000..e86029221 --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl @@ -0,0 +1,60 @@ +##### +# 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 File Manager Connector for Perl. +##### + +sub RemoveFromStart +{ + local($sourceString, $charToRemove) = @_; + $sPattern = '^' . $charToRemove . '+' ; + $sourceString =~ s/^$charToRemove+//g; + return $sourceString; +} + +sub RemoveFromEnd +{ + local($sourceString, $charToRemove) = @_; + $sPattern = $charToRemove . '+$' ; + $sourceString =~ s/$charToRemove+$//g; + return $sourceString; +} + +sub ConvertToXmlAttribute +{ + local($value) = @_; + return $value; +# return utf8_encode(htmlspecialchars($value)); + +} + +sub specialchar_cnv +{ + local($ch) = @_; + + $ch =~ s/&/&/g; # & + $ch =~ s/\"/"/g; #" + $ch =~ s/\'/'/g; # ' + $ch =~ s//>/g; # > + return($ch); +} + +1; diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmactualfolder.html b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmactualfolder.html new file mode 100644 index 000000000..90653d6ed --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmactualfolder.html @@ -0,0 +1,67 @@ + + + + + + + + + + + + +
+ +
+ + diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html new file mode 100644 index 000000000..8f72ff564 --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html @@ -0,0 +1,113 @@ + + + + + + + + + + + + + + +
+ +
+ + diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmfolders.html b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmfolders.html new file mode 100644 index 000000000..2dc0eb0dd --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmfolders.html @@ -0,0 +1,196 @@ + + + + + + + + + + + + + + +
+ + diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmresourceslist.html b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmresourceslist.html new file mode 100644 index 000000000..3f041f78d --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmresourceslist.html @@ -0,0 +1,160 @@ + + + + + + + + + + + diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmresourcetype.html b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmresourcetype.html new file mode 100644 index 000000000..933e85550 --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmresourcetype.html @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + +
+ Resource Type
+ +
+ + diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmupload.html b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmupload.html new file mode 100644 index 000000000..b84882dcd --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/frmupload.html @@ -0,0 +1,113 @@ + + + + + + + + + +
+ + + + +
+ Upload a new file in this folder
+ + + + + +
 
+
+
+ + diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif new file mode 100644 index 000000000..a355e5a44 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/Folder.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/Folder.gif new file mode 100644 index 000000000..ab6824d7f Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/Folder.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/Folder32.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/Folder32.gif new file mode 100644 index 000000000..b93b752cb Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/Folder32.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif new file mode 100644 index 000000000..0c5dd413e Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif new file mode 100644 index 000000000..3e3fcf56c Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif new file mode 100644 index 000000000..ad5bc2026 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif new file mode 100644 index 000000000..699e6a387 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif new file mode 100644 index 000000000..97025bb6e Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif new file mode 100644 index 000000000..f3c7f82ab Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif new file mode 100644 index 000000000..b62bd0260 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif new file mode 100644 index 000000000..976997b1b Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif new file mode 100644 index 000000000..9b5496457 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif new file mode 100644 index 000000000..b557568b3 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif new file mode 100644 index 000000000..758499394 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif new file mode 100644 index 000000000..923079fc6 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif new file mode 100644 index 000000000..df5f5795c Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif new file mode 100644 index 000000000..a9bdf0030 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif new file mode 100644 index 000000000..a9bdf0030 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif new file mode 100644 index 000000000..de78363f2 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif new file mode 100644 index 000000000..fe0c98e97 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif new file mode 100644 index 000000000..d3af9e87b Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif new file mode 100644 index 000000000..7d6360f2a Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif new file mode 100644 index 000000000..4950ec87c Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif new file mode 100644 index 000000000..0a79ebfdf Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif new file mode 100644 index 000000000..023431c16 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif new file mode 100644 index 000000000..b9eace7ed Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif new file mode 100644 index 000000000..5df7de574 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif new file mode 100644 index 000000000..7807c075c Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif new file mode 100644 index 000000000..4e2c2e3ce Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif new file mode 100644 index 000000000..7624697cc Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif new file mode 100644 index 000000000..afe724a3d Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif new file mode 100644 index 000000000..4fae35662 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif new file mode 100644 index 000000000..7157f72ad Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif new file mode 100644 index 000000000..ba5a91312 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif new file mode 100644 index 000000000..6f3bac9bf Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif new file mode 100644 index 000000000..7708dd895 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif new file mode 100644 index 000000000..4d927230b Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif new file mode 100644 index 000000000..6ce26a4dc Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif new file mode 100644 index 000000000..48d445acd Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif new file mode 100644 index 000000000..6535b4c0e Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif new file mode 100644 index 000000000..315817f5d Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif new file mode 100644 index 000000000..8f91a98ec Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif new file mode 100644 index 000000000..a5e3e6cfb Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif new file mode 100644 index 000000000..0b5d6ba1f Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/html.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/html.gif new file mode 100644 index 000000000..0b5d6ba1f Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/html.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif new file mode 100644 index 000000000..634b38613 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/js.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/js.gif new file mode 100644 index 000000000..4ea17d452 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/js.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif new file mode 100644 index 000000000..0d7c10210 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif new file mode 100644 index 000000000..6f3bac9bf Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif new file mode 100644 index 000000000..ca1f94acd Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/png.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/png.gif new file mode 100644 index 000000000..b6d1b3201 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/png.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif new file mode 100644 index 000000000..877a8c867 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif new file mode 100644 index 000000000..916cd7e63 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif new file mode 100644 index 000000000..314469da1 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif new file mode 100644 index 000000000..314469da1 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif new file mode 100644 index 000000000..1511ba3e9 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif new file mode 100644 index 000000000..9be3daaed Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif new file mode 100644 index 000000000..f57715d6a Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif new file mode 100644 index 000000000..455992877 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif new file mode 100644 index 000000000..b1e24921e Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/spacer.gif b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/spacer.gif new file mode 100644 index 000000000..35d42e808 Binary files /dev/null and b/httemplate/elements/fckeditor/editor/filemanager/browser/default/images/spacer.gif differ diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/js/common.js b/httemplate/elements/fckeditor/editor/filemanager/browser/default/js/common.js new file mode 100644 index 000000000..2f472171b --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/js/common.js @@ -0,0 +1,55 @@ +/* + * 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 == + * + * Common objects and functions shared by all pages that compose the + * File Browser dialog window. + */ + +function AddSelectOption( selectElement, optionText, optionValue ) +{ + var oOption = document.createElement("OPTION") ; + + oOption.text = optionText ; + oOption.value = optionValue ; + + selectElement.options.add(oOption) ; + + return oOption ; +} + +var oConnector = window.parent.oConnector ; +var oIcons = window.parent.oIcons ; + + +function StringBuilder( value ) +{ + this._Strings = new Array( value || '' ) ; +} + +StringBuilder.prototype.Append = function( value ) +{ + if ( value ) + this._Strings.push( value ) ; +} + +StringBuilder.prototype.ToString = function() +{ + return this._Strings.join( '' ) ; +} \ No newline at end of file diff --git a/httemplate/elements/fckeditor/editor/filemanager/browser/default/js/fckxml.js b/httemplate/elements/fckeditor/editor/filemanager/browser/default/js/fckxml.js new file mode 100644 index 000000000..043ca84f5 --- /dev/null +++ b/httemplate/elements/fckeditor/editor/filemanager/browser/default/js/fckxml.js @@ -0,0 +1,129 @@ +/* + * 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 == + * + * Defines the FCKXml object that is used for XML data calls + * and XML processing. + * + * This script is shared by almost all pages that compose the + * File Browser frameset. + */ + +var FCKXml = function() +{} + +FCKXml.prototype.GetHttpRequest = function() +{ + // Gecko / IE7 + if ( typeof(XMLHttpRequest) != 'undefined' ) + return new XMLHttpRequest() ; + + // IE6 + try { return new ActiveXObject( 'Msxml2.XMLHTTP' ) ; } + catch(e) {} + + // IE5 + try { return new ActiveXObject( 'Microsoft.XMLHTTP' ) ; } + catch(e) {} + + return null ; +} + +FCKXml.prototype.LoadUrl = function( urlToCall, asyncFunctionPointer ) +{ + var oFCKXml = this ; + + var bAsync = ( typeof(asyncFunctionPointer) == 'function' ) ; + + var oXmlHttp = this.GetHttpRequest() ; + + oXmlHttp.open( "GET", urlToCall, bAsync ) ; + + if ( bAsync ) + { + oXmlHttp.onreadystatechange = function() + { + if ( oXmlHttp.readyState == 4 ) + { + if ( ( oXmlHttp.status != 200 && oXmlHttp.status != 304 ) || oXmlHttp.responseXML == null || oXmlHttp.responseXML.firstChild == null ) + { + alert( 'The server didn\'t send back a proper XML response. Please contact your system administrator.\n\n' + + 'XML request error: ' + oXmlHttp.statusText + ' (' + oXmlHttp.status + ')\n\n' + + 'Requested URL:\n' + urlToCall + '\n\n' + + 'Response text:\n' + oXmlHttp.responseText ) ; + return ; + } + + oFCKXml.DOMDocument = oXmlHttp.responseXML ; + asyncFunctionPointer( oFCKXml ) ; + } + } + } + + oXmlHttp.send( null ) ; + + if ( ! bAsync ) + { + if ( oXmlHttp.status == 200 || oXmlHttp.status == 304 ) + this.DOMDocument = oXmlHttp.responseXML ; + else + { + alert( 'XML request error: ' + oXmlHttp.statusText + ' (' + oXmlHttp.status + ')' ) ; + } + } +} + +FCKXml.prototype.SelectNodes = function( xpath ) +{ + if ( navigator.userAgent.indexOf('MSIE') >= 0 ) // IE + return this.DOMDocument.selectNodes( xpath ) ; + else // Gecko + { + var aNodeArray = new Array(); + + var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument, + this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), XPathResult.ORDERED_NODE_ITERATOR_TYPE, null) ; + if ( xPathResult ) + { + var oNode = xPathResult.iterateNext() ; + while( oNode ) + { + aNodeArray[aNodeArray.length] = oNode ; + oNode = xPathResult.iterateNext(); + } + } + return aNodeArray ; + } +} + +FCKXml.prototype.SelectSingleNode = function( xpath ) +{ + if ( navigator.userAgent.indexOf('MSIE') >= 0 ) // IE + return this.DOMDocument.selectSingleNode( xpath ) ; + else // Gecko + { + var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument, + this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), 9, null); + + if ( xPathResult && xPathResult.singleNodeValue ) + return xPathResult.singleNodeValue ; + else + return null ; + } +} -- cgit v1.2.1