connector.php
上传用户:wlfwy2004
上传日期:2016-12-12
资源大小:33978k
文件大小:3k
源码类别:

Jsp/Servlet

开发平台:

Java

  1. <?php 
  2. /*
  3.  * FCKeditor - The text editor for internet
  4.  * Copyright (C) 2003-2005 Frederico Caldeira Knabben
  5.  * 
  6.  * Licensed under the terms of the GNU Lesser General Public License:
  7.  *  http://www.opensource.org/licenses/lgpl-license.php
  8.  * 
  9.  * For further information visit:
  10.  *  http://www.fckeditor.net/
  11.  * 
  12.  * File Name: connector.php
  13.  *  This is the File Manager Connector for PHP.
  14.  * 
  15.  * File Authors:
  16.  *  Frederico Caldeira Knabben (fredck@fckeditor.net)
  17.  */
  18. include('config.php') ;
  19. include('util.php') ;
  20. include('io.php') ;
  21. include('basexml.php') ;
  22. include('commands.php') ;
  23. if ( !$Config['Enabled'] )
  24. SendError( 1, 'This connector is disabled. Please check the "editor/filemanager/browser/default/connectors/php/config.php" file' ) ;
  25. // Get the "UserFiles" path.
  26. $GLOBALS["UserFilesPath"] = '' ;
  27. if ( isset( $Config['UserFilesPath'] ) )
  28. $GLOBALS["UserFilesPath"] = $Config['UserFilesPath'] ;
  29. else if ( isset( $_GET['ServerPath'] ) )
  30. $GLOBALS["UserFilesPath"] = $_GET['ServerPath'] ;
  31. else
  32. $GLOBALS["UserFilesPath"] = '/UserFiles/' ;
  33. if ( ! ereg( '/$', $GLOBALS["UserFilesPath"] ) )
  34. $GLOBALS["UserFilesPath"] .= '/' ;
  35. // Map the "UserFiles" path to a local directory.
  36. //$GLOBALS["UserFilesDirectory"] = GetRootPath() . str_replace( '/', '\', $GLOBALS["UserFilesPath"] ) ;
  37. $GLOBALS["UserFilesDirectory"] = GetRootPath() . $GLOBALS["UserFilesPath"] ;
  38. DoResponse() ;
  39. function DoResponse()
  40. {
  41. if ( !isset( $_GET['Command'] ) || !isset( $_GET['Type'] ) || !isset( $_GET['CurrentFolder'] ) )
  42. return ;
  43. // Get the main request informaiton.
  44. $sCommand = $_GET['Command'] ;
  45. $sResourceType = $_GET['Type'] ;
  46. $sCurrentFolder = $_GET['CurrentFolder'] ;
  47. // Check if it is an allowed type.
  48. if ( !in_array( $sResourceType, array('File','Image','Flash','Media') ) )
  49. return ;
  50. // Check the current folder syntax (must begin and start with a slash).
  51. if ( ! ereg( '/$', $sCurrentFolder ) ) $sCurrentFolder .= '/' ;
  52. if ( strpos( $sCurrentFolder, '/' ) !== 0 ) $sCurrentFolder = '/' . $sCurrentFolder ;
  53. // Check for invalid folder paths (..)
  54. if ( strpos( $sCurrentFolder, '..' ) )
  55. SendError( 102, "" ) ;
  56. // File Upload doesn't have to Return XML, so it must be intercepted before anything.
  57. if ( $sCommand == 'FileUpload' )
  58. {
  59. FileUpload( $sResourceType, $sCurrentFolder ) ;
  60. return ;
  61. }
  62. CreateXmlHeader( $sCommand, $sResourceType, $sCurrentFolder ) ;
  63. // Execute the required command.
  64. switch ( $sCommand )
  65. {
  66. case 'GetFolders' :
  67. GetFolders( $sResourceType, $sCurrentFolder ) ;
  68. break ;
  69. case 'GetFoldersAndFiles' :
  70. GetFoldersAndFiles( $sResourceType, $sCurrentFolder ) ;
  71. break ;
  72. case 'CreateFolder' :
  73. CreateFolder( $sResourceType, $sCurrentFolder ) ;
  74. break ;
  75. }
  76. CreateXmlFooter() ;
  77. exit ;
  78. }
  79. ?>