Page Menu
Home
In-Portal Phabricator
Search
Configure Global Search
Log In
Files
F1034109
in-portal
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sat, Jun 21, 10:05 AM
Size
26 KB
Mime Type
text/x-diff
Expires
Mon, Jun 23, 10:05 AM (1 h, 36 m)
Engine
blob
Format
Raw Data
Handle
668318
Attached To
rINP In-Portal
in-portal
View Options
Index: branches/unlabeled/unlabeled-1.44.2/kernel/startup.php
===================================================================
--- branches/unlabeled/unlabeled-1.44.2/kernel/startup.php (nonexistent)
+++ branches/unlabeled/unlabeled-1.44.2/kernel/startup.php (revision 6801)
@@ -0,0 +1,207 @@
+<?php
+ if( !defined('FULL_PATH') ) define('FULL_PATH', realpath(dirname(__FILE__).'/..') );
+
+ require_once FULL_PATH.'/globals.php';
+
+ if( !isset($FrontEnd) ) $FrontEnd = 0;
+
+ if( !class_exists('kApplication') )
+ {
+ // KENEL4 INIT: BEGIN
+ if ($FrontEnd != 1 && !defined('ADMIN') ) {
+ define('ADMIN', 1);
+ }
+
+ include_once(FULL_PATH.'/core/kernel/startup.php');
+
+ $application =& kApplication::Instance();
+ $application->Init();
+ $application->ProcessRequest();
+ // KERNEL4 INIT: END
+ }
+
+ // compatibility constants
+ $g_TablePrefix = TABLE_PREFIX;
+ $pathtoroot = preg_replace('/(.*)\/$/', '\\1', FULL_PATH).'/';
+
+ $admin = 'admin';
+ $rootURL = PROTOCOL.SERVER_NAME.(defined('PORT')?':'.PORT : '').rtrim(BASE_PATH, '/').'/';
+ $localURL = $rootURL.'kernel/';
+ $adminURL = $rootURL.$admin;
+ $imagesURL = $adminURL.'/images';
+ $browseURL = $adminURL.'/browse';
+ $cssURL = $adminURL.'/include';
+ $pathchar = '/';
+
+if(!get_magic_quotes_gpc())
+{
+ function addSlashesA($a)
+ {
+ foreach($a as $k => $v)
+ {
+ $a[$k] = is_array($v) ? addSlashesA($v) : addslashes($v);
+ }
+ return $a;
+ }
+ foreach(Array(
+ 'HTTP_GET_VARS','HTTP_POST_VARS','HTTP_COOKIE_VARS','HTTP_SESSION_VARS','HTTP_SERVER_VARS',
+ '_POST','_GET','_COOKIE','_SESSION','_SERVER','_REQUEST') as $_)
+ if(isset($GLOBALS[$_]))
+ $GLOBALS[$_]=addSlashesA($GLOBALS[$_]);
+}
+
+/*
+ startup.php: this is the primary startup sequence for in-portal services
+*/
+
+if( file_exists(FULL_PATH.'/debug.php') && !defined('DEBUG_MODE') ) include_once(FULL_PATH.'/debug.php');
+if( !defined('DEBUG_MODE') ) error_reporting(0);
+
+ini_set('memory_limit', constOn('IS_INSTALL') ? -1 : '32M');
+ini_set('include_path', '.');
+
+$kernel_version = "1.0.0";
+$FormError = array();
+$FormValues = array();
+/* include PHP version compatibility functions */
+require_once(FULL_PATH.'/compat.php');
+/* set global variables and module lists */
+
+if( constOn('DEBUG_MODE') ) include_once(FULL_PATH.'/kernel/include/debugger.php');
+
+ // put all non-checked checkboxes in $_POST & $_REQUEST with 0 values
+ if( GetVar('form_fields') )
+ {
+ $form_fields = GetVar('form_fields');
+ foreach($form_fields as $checkbox_name)
+ {
+ if( GetVar($checkbox_name) === false ) SetVar($checkbox_name,0);
+ }
+ }
+
+LogEntry("Initalizing System..\n");
+/* for 64 bit timestamps */
+if( !function_exists('adodb_mktime') ) require_once(FULL_PATH.'/kernel/include/adodb/adodb-time.inc.php');
+require_once(FULL_PATH.'/kernel/include/dates.php');
+
+/* create the global error object */
+require_once(FULL_PATH.'/kernel/include/error.php');
+$Errors = new clsErrorManager();
+
+require_once(FULL_PATH.'/kernel/include/itemdb.php');
+
+require_once(FULL_PATH.'/kernel/include/db.class.php'); // moved from kernel/include/config.php
+require_once(FULL_PATH.'/kernel/include/adodb/adodb.inc.php'); // moved from kernel/include/config.php
+
+require_once(FULL_PATH.'/kernel/include/config.php');
+/* create the global configuration object */
+LogEntry("Creating Config Object..\n");
+$objConfig = new clsConfig();
+$objConfig->Load(); /* Populate our configuration data */
+LogEntry("Done Loading Configuration\n");
+if( defined('ADODB_EXTENSION') && constant('ADODB_EXTENSION') > 0 )
+ LogEntry("ADO Extension: ".ADODB_EXTENSION."\n");
+
+require_once(FULL_PATH.'/kernel/include/parseditem.php');
+
+require_once(FULL_PATH.'/kernel/include/itemreview.php'); // moved from kernel/include/item.php
+require_once(FULL_PATH.'/kernel/include/itemrating.php'); // moved from kernel/include/item.php
+
+require_once(FULL_PATH.'/kernel/include/item.php');
+require_once(FULL_PATH.'/kernel/include/syscache.php');
+require_once(FULL_PATH.'/kernel/include/modlist.php');
+require_once(FULL_PATH.'/kernel/include/searchconfig.php');
+require_once(FULL_PATH.'/kernel/include/banrules.php');
+
+$objModules = new clsModList();
+$objSystemCache = new clsSysCacheList();
+$objSystemCache->PurgeExpired();
+$objBanList = new clsBanRuleList();
+
+require_once(FULL_PATH.'/kernel/include/image.php');
+
+require_once(FULL_PATH.'/kernel/include/itemtypes.php');
+$objItemTypes = new clsItemTypeList();
+
+require_once(FULL_PATH.'/kernel/include/theme.php');
+$objThemes = new clsThemeList();
+
+require_once(FULL_PATH.'/kernel/include/language.php');
+$objLanguages = new clsLanguageList();
+$objImageList = new clsImageList();
+
+/* Load session and user class definitions */
+//require_once("include/customfield.php");
+//require_once("include/custommetadata.php");
+require_once(FULL_PATH.'/kernel/include/usersession.php');
+require_once(FULL_PATH.'/kernel/include/favorites.php');
+require_once(FULL_PATH.'/kernel/include/portaluser.php');
+require_once(FULL_PATH.'/kernel/include/portalgroup.php');
+
+/* create the user management class */
+$objFavorites = new clsFavoriteList();
+$objUsers = new clsUserManager();
+$objGroups = new clsGroupList();
+
+require_once(FULL_PATH.'/kernel/include/cachecount.php');
+require_once(FULL_PATH.'/kernel/include/customfield.php');
+require_once(FULL_PATH.'/kernel/include/custommetadata.php');
+require_once(FULL_PATH.'/kernel/include/permissions.php');
+require_once(FULL_PATH.'/kernel/include/relationship.php');
+require_once(FULL_PATH.'/kernel/include/category.php');
+require_once(FULL_PATH.'/kernel/include/statitem.php');
+/* category base class, used by all the modules at some point */
+$objPermissions = new clsPermList();
+$objPermCache = new clsPermCacheList();
+
+$objCatList = new clsCatList();
+$objCustomFieldList = new clsCustomFieldList();
+$objCustomDataList = new clsCustomDataList();
+$objCountCache = new clsCacheCountList();
+
+require_once(FULL_PATH.'/kernel/include/smtp.php');
+require_once(FULL_PATH.'/kernel/include/emailmessage.php');
+require_once(FULL_PATH.'/kernel/include/events.php');
+LogEntry("Creating Mail Queue..\n");
+$objMessageList = new clsEmailMessageList();
+$objEmailQueue = new clsEmailQueue();
+LogEntry("Done creating Mail Queue Objects\n");
+
+require_once(FULL_PATH.'/kernel/include/searchitems.php');
+require_once(FULL_PATH.'/kernel/include/advsearch.php');
+
+require_once(FULL_PATH.'/kernel/include/parse.php');
+require_once(FULL_PATH.'/kernel/include/socket.php');
+
+/* responsible for including module code as required
+ This script also creates an instance of the user session onject and
+ handles all session management. The global session object is created
+ and populated, then the global user object is created and populated
+
+ each module's parser functions and action code is included here
+*/
+
+LogEntry("Startup complete\n");
+include_once("include/modules.php");
+
+if( IsDebugMode() && function_exists('DebugByFile') ) DebugByFile();
+
+/* startup is complete, so now check the mail queue to see if there's anything that needs to be sent*/
+$objEmailQueue->SendMailQeue();
+
+ $ado=&GetADODBConnection();
+ $rs = $ado->Execute("SELECT * FROM ".GetTablePrefix()."Modules WHERE LoadOrder = 0");
+
+ $kernel_version = $rs->fields['Version'];
+
+
+$adminDir = $objConfig->Get("AdminDirectory");
+if ($adminDir == '') {
+ $adminDir = 'admin';
+}
+
+/*if (strstr(__FILE__, $adminDir) && !GetVar('logout') && !strstr(__FILE__, "install") && !strstr(__FILE__, "index")) {
+ require_login(null, 'expired='.(int)GetVar('expired') );
+}*/
+
+?>
\ No newline at end of file
Property changes on: branches/unlabeled/unlabeled-1.44.2/kernel/startup.php
___________________________________________________________________
Added: cvs2svn:cvs-rev
## -0,0 +1 ##
+1.44
\ No newline at end of property
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: branches/unlabeled/unlabeled-1.44.2/admin/editor/cmseditor/editor/filemanager/browser/default/connectors/php/commands.php
===================================================================
--- branches/unlabeled/unlabeled-1.44.2/admin/editor/cmseditor/editor/filemanager/browser/default/connectors/php/commands.php (nonexistent)
+++ branches/unlabeled/unlabeled-1.44.2/admin/editor/cmseditor/editor/filemanager/browser/default/connectors/php/commands.php (revision 6801)
@@ -0,0 +1,583 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2004 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * File Name: commands.php
+ * This is the File Manager Connector for ASP.
+ *
+ * Version: 2.0 RC3
+ * Modified: 2005-02-19 16:02:38
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck@fckeditor.net)
+ */
+function GetFolders( $resourceType, $currentFolder )
+{
+ // Map the virtual path to the local server path.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+ // Open the "Folders" node.
+ $aFolders = array();
+ echo "<Folders>" ;
+ $oCurrentFolder = opendir( $sServerDir ) ;
+ while ( $sFile = readdir( $oCurrentFolder ) )
+ {
+ if ( $sFile != '.' && $sFile != '..' && $sFile != 'CVS' && is_dir( $sServerDir . $sFile ) )
+ $aFolders[] = $sFile;
+ //echo '<Folder name="' . ConvertToXmlAttribute( $sFile ) . '" />' ;
+ }
+
+ if (count($aFolders) > 0) {
+ natcasesort($aFolders);
+ foreach($aFolders AS $k=>$v) {
+ echo '<Folder name="' . ConvertToXmlAttribute($v) . '" />' ;
+ }
+ }
+
+
+ closedir( $oCurrentFolder ) ;
+ // Close the "Folders" node.
+ echo "</Folders>" ;
+}
+
+function ValidateAdminSid()
+{
+ $conn = GetADODbConnection();
+ $session_time = GetConfigValue('ses_timeout')+0;
+ $sid = ($_COOKIE['admin_sid'])?$_COOKIE['admin_sid']:$_COOKIE['sid'];
+ $sql = "SELECT count( sd.sid )
+ FROM session_data AS sd
+ LEFT JOIN sessions AS s ON s.sid = sd.sid
+ WHERE sd.`name` = 'admin_mode'
+ AND sd.`value` = '1'
+ AND sd.sid = '".$sid."'
+ AND s.expire + '".$session_time."' > unix_timestamp()";
+ if ($conn->GetOne($sql) > 0) {
+ return true;
+}
+
+function ValidateUserSid()
+{
+ $conn = GetADODbConnection();
+ $session_time = GetConfigValue('ses_timeout')+0;
+ $sid = $_COOKIE['sid'];
+ $sql = "SELECT count( sd.sid )
+ FROM sessions
+ sid = '".$sid."'
+ AND expire + '".$session_time."' > unix_timestamp()";
+ }
+ if ($conn->GetOne($sql) > 0)
+ return true;
+}
+
+function ValidateSID()
+{ global $Config;
+ if (isset($Config['K4Mode']))
+ return true;
+ else {
+ if ($Config['validate_type'] == 'user')
+ return ValidateUserSid();
+ elseif ($Config['validate_type'] == 'admin')
+ return ValidateAdminSid();
+ else
+ echo "SESSION Validation FALSE";
+
+ }
+ return false;
+}
+
+function GetCmsTree()
+{
+ global $Config;
+ $ret = "<CmsPages>";
+
+ if (isset($Config['K4Mode'])) {
+ $ret.= K4ReadCmsTree(0);
+ }
+ else {
+ $ret.= ReadCmsTree(0);
+ }
+ $ret.= "</CmsPages>";
+ echo $ret;
+}
+function K4ReadCmsTree($cat_id, $level = 0)
+{
+ $application =& kApplication::Instance();
+ $application->Init();
+
+ $lang = $application->GetVar('m_lang');
+
+ $query = 'SELECT PageId, Path, l'.$lang.'_Title AS Title FROM '.TABLE_PREFIX.'Pages ORDER By l'.$lang.'_Title';
+ $pages = $application->Conn->Query($query);
+
+ $res = '';
+ foreach ($pages as $page) {
+ $page_path = $page['Path'].'.html';
+ $title = $page['Title'].' ('.$page_path.')';
+ $res .= '<CmsPage path="'.$page_path.'" title="'.$prefix.htmlspecialchars($title,ENT_QUOTES).'" st_id="'.$rs->fields['PageId'].'" serverpath="'.BASE_PATH.'/" />';
+ }
+
+ return $res;
+}
+function ReadCmsTree($st_id, $level = 0)
+{
+ $conn = GetADODbConnection();
+ $query = "SELECT value FROM config WHERE name = 'default_lang_prefix'";
+ $rs = $conn->Execute($query);
+ if ($rs && !$rs->EOF)
+ {
+ $default_lang_prefix = $rs->fields['value'];
+ }
+ $query = "SELECT value FROM config WHERE name = 'cms_direct_mode'";
+ $rs = $conn->Execute($query);
+ if ($rs && !$rs->EOF)
+ {
+ $cms_mode = $rs->fields['value'];
+ }
+ $query = "SELECT value FROM config WHERE name = 'email_templates_folder_id'";
+ $rs = $conn->Execute($query);
+ if ($rs && !$rs->EOF)
+ {
+ $email_templates_folder_id = $rs->fields['value'];
+ }
+/*
+ $query = "SELECT value FROM config WHERE name = 'custom_cms'";
+ $rs = $conn->Execute($query);
+ if ($rs && !$rs->EOF)
+ {
+ $custom_cms = $rs->fields['value'];
+ }
+*/
+ if (GetConfigValue('custom_cms')) {
+ $filter = 'AND st.st_name NOT IN (' . GetConfigValue('custom_cms') . ')';
+ }
+ else {
+ $filter = '';
+ }
+ if ( $email_templates_folder_id == "" ) $email_templates_folder_id = 0;
+ $system_tpl_ids = GetConfigValue('system_tpl_ids');
+ if (!$system_tpl_ids)
+ $system_tpl_ids = '0';
+ if ( $cms_mode == 1 ) {
+ //$lang_prefix = $this->Application->GetVar('lang_prefix');
+ $query = "
+ SELECT st.*,
+ IF(lb.".$default_lang_prefix."_content='' OR lb.".$default_lang_prefix."_content IS NULL,
+ st.st_path,
+ lb.".$default_lang_prefix."_content
+ ) AS page_title
+ FROM
+ structure_templates AS st
+ LEFT JOIN
+ live_blocks AS lb
+ ON
+ (st.st_id = lb.template_id) AND (lb.block_type = 3)
+ WHERE st.st_parent_id = ".$st_id."
+ AND st_id != ".$email_templates_folder_id."
+ AND st.st_id NOT IN ($system_tpl_ids)
+ AND st_path != '/cms'" . $filter . "
+ ORDER BY st.st_order";
+ }
+ else {
+ $query = "
+ SELECT st.*,
+ IF(wb.".$default_lang_prefix."_content='' OR wb.".$default_lang_prefix."_content IS NULL,
+ st.st_path,
+ wb.".$default_lang_prefix."_content
+ ) AS page_title
+ FROM
+ structure_templates AS st
+ LEFT JOIN
+ working_blocks AS wb
+ ON
+ (st.st_id = wb.template_id) AND (wb.block_type = 3)
+ WHERE st.st_parent_id = ".$st_id."
+ AND st_id != ".$email_templates_folder_id."
+ AND st.st_id NOT IN ($system_tpl_ids)
+ AND st_path != '/cms%'" . $filter . "
+ ORDER BY st.st_order";
+ }
+// echo $query."<br>";
+ $rs = $conn->Execute($query);
+ if ($rs && !$rs->EOF)
+ {
+ while ($rs && !$rs->EOF)
+ {
+ $page_path = ltrim($rs->fields['st_path'], '/');
+ //$page_path = SERVER_NAME.BASE_PATH.'/index.php?t='.$page_path;
+ //$page_path = $page_path;
+ $prefix='';
+ for ($i = 0; $i < $level; $i++)
+ $prefix .= '--';
+ if ($level > 0)
+ $prefix=$prefix.'- ';
+/*
+ $page = ereg_replace("&","&",$rs->fields['page_title']);
+ $page = ereg_replace("\"",""",$page);
+ $page = ereg_replace("'","'",$page);
+ $page = ereg_replace("<","<",$page);
+ $page = ereg_replace(">",">",$page);
+// echo $page." <br>";
+ //$page = htmlentities($rs->fields['page_title'],ENT_QUOTES);
+ $page = $rs->fields['page_title'];
+ $page = ereg_replace("ã","a",$page);
+*/
+ $page = $rs->fields['page_title'];
+ $page = @html_entity_decode($page,ENT_NOQUOTES,'UTF-8');
+ $page = @htmlspecialchars($page);
+ //$page = ereg_replace("ã","a",$page);
+
+ $res .= '<CmsPage path="'.$page_path.'" title="'.$prefix.$page.'" st_id="'.$rs->fields['st_id'].'" serverpath="'.BASE_PATH.'/index.php?t=" />';
+ $res .= ReadCmsTree($rs->fields['st_id'], $level+1);
+
+ $rs->MoveNext();
+ }
+ return $res;
+ }
+}
+/*
+ $res .= '<CmsPage>
+ <path><![CDATA['.$page_path.']]></path>
+ <title><![CDATA['.$prefix.$page.']]></title>
+ <st_id><![CDATA['.$rs->fields['st_id'].']]></st_id>
+ <serverpath><![CDATA['.BASE_PATH.'/index.php?t=.]]></serverpath>
+ </CmsPage>';
+*/
+function GetConfigValue($var)
+{
+ $conn = GetADODbConnection();
+ $query = "SELECT `value` FROM config WHERE `name` = '".$var."'";
+ return $conn->GetOne($query);
+}
+
+function GetFoldersAndFiles( $resourceType, $currentFolder, $aParams = array('name','asc'))
+{
+ global $Config ;
+ // Map the virtual path to the local server path.
+ if (isset($Config['K4Mode']))
+ $date_format = "m/d/Y h:i A";
+ else
+ $date_format = GetConfigValue('date_format').' '.GetConfigValue('time_format');
+
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+ // Initialize the output buffers for "Folders" and "Files".
+ $aFolders = array();
+ $aFiles = array();
+ $aFileSizes = array();
+ $sFolders = '<Folders>' ;
+ $sFiles = '<Files>' ;
+ $oCurrentFolder = opendir( $sServerDir ) ;
+ while ( $sFile = readdir( $oCurrentFolder ) )
+ {
+ if ( $sFile != '.' && $sFile != '..' && $sFile != 'CVS')
+ {
+ if ( is_dir( $sServerDir . $sFile ) )
+ $aFolders[]=$sFile;
+ else
+ {
+ $iFileSize = filesize( $sServerDir . $sFile ) ;
+ //$iFileSize[] = filesize( $sServerDir . $sFile ) ;
+ if ( $iFileSize > 0 )
+ {
+ $size = round( $iFileSize / 1024 );
+ $aFileSizes[] = ($size < 1)? 1:$size;// round( $iFileSize / 1024 ) ;
+ } else
+ $aFileSizes[] = $iFileSize;
+ $aFiles[] = $sFile;
+ $aFileDate[] = filectime($sServerDir.$sFile);
+ //$sFiles .= '<File name="' . ConvertToXmlAttribute( $sFile ) . '" size="' . $iFileSize . '" />' ;
+ }
+ }
+ }
+ if (count($aFolders) > 0) {
+ natcasesort($aFolders);
+ switch ($aParams[1])
+ {
+ case 'desc' :
+ $aFolders = array_reverse($aFolders, true);
+ break ;
+ }
+ foreach($aFolders AS $k=>$v) {
+ $sFolders .= '<Folder name="' . ConvertToXmlAttribute($v) . '" />' ;
+ }
+ }
+ if (count($aFiles) > 0) {
+ if ($aParams[0] == 'name')
+ {
+ natcasesort($aFiles);
+ if ($aParams[1] == 'desc')
+ {
+ $aFiles = array_reverse($aFiles, true);
+ }
+ foreach($aFiles AS $fk=>$fv) {
+ $sFiles .= '<File name="' . ConvertToXmlAttribute( $fv ) . '" size="' . $aFileSizes[$fk] . '" date="' . date($date_format,$aFileDate[$fk]) . '" />' ;
+ }
+ }elseif ($aParams[0] == 'size') {
+ natcasesort($aFileSizes);
+ if ($aParams[1] == 'desc')
+ {
+ $aFileSizes = array_reverse($aFileSizes, true);
+ }
+ foreach($aFileSizes AS $fk=>$fv) {
+ $sFiles .= '<File name="' . ConvertToXmlAttribute( $aFiles[$fk] ) . '" size="' . $fv . '" date="' . date($date_format,$aFileDate[$fk]) . '" />' ;
+ }
+ } elseif ($aParams[0] == 'date') {
+ natcasesort($aFileDate);
+ if ($aParams[1] == 'desc')
+ {
+ $aFileDate = array_reverse($aFileDate, true);
+ }
+ foreach($aFileDate AS $fk=>$fv) {
+ $sFiles .= '<File name="' . ConvertToXmlAttribute( $aFiles[$fk] ) . '" size="' . $aFileSizes[$fk] . '" date="' . date($date_format,$fv) . '" />' ;
+ }
+ }
+ }
+/* while ( $sFile = readdir( $oCurrentFolder ) )
+ {
+ if ( $sFile != '.' && $sFile != '..' && $sFile != 'CVS')
+ {
+ if ( is_dir( $sServerDir . $sFile ) )
+ //$sFolders .= '<Folder name="' . ConvertToXmlAttribute( $sFile ) . '" />' ;
+ else
+ {
+ $iFileSize = filesize( $sServerDir . $sFile ) ;
+ if ( $iFileSize > 0 )
+ {
+ $iFileSize = round( $iFileSize / 1024 ) ;
+ if ( $iFileSize < 1 ) $iFileSize = 1 ;
+ }
+ $sFiles .= '<File name="' . ConvertToXmlAttribute( $sFile ) . '" size="' . $iFileSize . '" />' ;
+ }
+ }
+*/
+
+ if ($aParams[1] == "desc")
+ {
+ echo $sFiles ;
+ echo '</Files>' ;
+ echo $sFolders ;
+ echo '</Folders>' ;
+ } else {
+ echo $sFolders ;
+ echo '</Folders>' ;
+ echo $sFiles ;
+ echo '</Files>' ;
+ }
+}
+function CreateFolder( $resourceType, $currentFolder )
+{
+ $sErrorNumber = '0' ;
+ $sErrorMsg = '' ;
+ if ( isset( $_GET['NewFolderName'] ) )
+ {
+ $sNewFolderName = $_GET['NewFolderName'] ;
+ // Map the virtual path to the local server path of the current folder.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+ if ( is_writable( $sServerDir ) )
+ {
+ $sServerDir .= $sNewFolderName ;
+ $sErrorMsg = CreateServerFolder( $sServerDir ) ;
+ switch ( $sErrorMsg )
+ {
+ case '' :
+ $sErrorNumber = '0' ;
+ break ;
+ case 'Invalid argument' :
+ case 'No such file or directory' :
+ $sErrorNumber = '102' ; // Path too long.
+ break ;
+ default :
+ $sErrorNumber = '110' ;
+ break ;
+ }
+ }
+ else
+ $sErrorNumber = '103' ;
+ }
+ else
+ $sErrorNumber = '102' ;
+ // Create the "Error" node.
+ echo '<Error number="' . $sErrorNumber . '" originalDescription="' . ConvertToXmlAttribute( $sErrorMsg ) . '" />' ;
+}
+
+function UpdateCmsBlocksK3($resourceType,$currentFolder,$file_from,$file_to)
+{ global $Config ;
+ $Config['UserFilesPathNoBase'];
+ $original_str = $Config['UserFilesPathNoBase'].$resourceType.$currentFolder.addslashes($file_from);
+ $new_str = $Config['UserFilesPathNoBase'].$resourceType.$currentFolder.addslashes($file_to);
+ $conn = GetADODbConnection();
+ if ( GetConfigValue('multilingual_mode') == 1) {
+ $query="SELECT lang_prefix FROM lang ORDER BY lang_id";
+ $rs = $conn->Execute($query);
+ while ($rs && !$rs->EOF) {
+ $sql = "UPDATE live_blocks SET ".$rs->fields['lang_prefix']."_content = replace(".$rs->fields['lang_prefix']."_content,'".$original_str."','".$new_str."')";
+ $conn->Execute($sql);
+ $rs->MoveNext();
+ }
+ } else {
+ $lang_prefix = GetConfigValue('default_lang_prefix');
+ $sql = "UPDATE live_blocks SET ".$lang_prefix."_content = replace(".$lang_prefix."_content,'".$original_str."','".$new_str."')";
+ $conn->Execute($sql);
+ }
+
+}
+
+function RenameFile( $resourceType, $currentFolder , $aFilenames = array())
+{ global $Config ;
+ if (count($aFilenames) == 2)
+ {
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+ $sExtension = substr( $aFilenames[1], ( strrpos($aFilenames[1], '.') + 1 ) ) ;
+ $arAllowed = $Config['AllowedExtensions'][$resourceType] ;
+ $arDenied = $Config['DeniedExtensions'][$resourceType] ;
+ if (file_exists($sServerDir.$aFilenames[1]) && is_file($sServerDir.$aFilenames[1]))
+ {
+ $sErrorNumber = '204' ;
+ } else {
+ if ( ( count($arAllowed) == 0 || in_array( strtolower($sExtension), $arAllowed ) ) && ( count($arDenied) == 0 || !in_array( strtoupper($sExtension), $arDenied ) ) )
+ {
+ if (rename($sServerDir.$aFilenames[0],$sServerDir.$aFilenames[1])) {
+ if (isset($Config['K4Mode'])) {
+ // Update CMS Blocks
+ } else
+ UpdateCmsBlocksK3($resourceType,$currentFolder,$aFilenames[0],$aFilenames[1]);
+ $sErrorNumber = "0";
+ } else
+ $sErrorNumber = '205' ;
+ } else
+ $sErrorNumber = '203' ;
+ }
+ $sErrorMsg = '';
+ echo '<Error number="' . $sErrorNumber . '" originalDescription="' . ConvertToXmlAttribute( $sErrorMsg ) . '" />' ;
+ }
+}
+
+function FileUpload( $resourceType, $currentFolder )
+{
+ $sErrorNumber = '0' ;
+ $sFileName = '' ;
+ if ( isset( $_FILES['NewFile'] ) && !is_null( $_FILES['NewFile']['tmp_name'] ) )
+ {
+ $oFile = $_FILES['NewFile'] ;
+ // Map the virtual path to the local server path.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+ // Get the uploaded file name.
+ $sFileName = $oFile['name'] ;
+ $sOriginalFileName = $sFileName ;
+ $sExtension = strtolower(substr( $sFileName, ( strrpos($sFileName, '.') + 1 ) ) );
+ global $Config ;
+ $arAllowed = $Config['AllowedExtensions'][$resourceType] ;
+ $arDenied = $Config['DeniedExtensions'][$resourceType] ;
+ if ( ( count($arAllowed) == 0 || in_array( $sExtension, $arAllowed ) ) && ( count($arDenied) == 0 || !in_array( $sExtension, $arDenied ) ) )
+ {
+ $iCounter = 0 ;
+ while ( true )
+ {
+ $sFilePath = $sServerDir . $sFileName ;
+ if ( is_file( $sFilePath ) )
+ {
+ $iCounter++ ;
+ $sFileName = RemoveExtension( $sOriginalFileName ) . '(' . $iCounter . ').' . $sExtension ;
+ $sErrorNumber = '201' ;
+ }
+ else
+ {
+ move_uploaded_file( $oFile['tmp_name'], $sFilePath ) ;
+ if ( is_file( $sFilePath ) )
+ {
+ $oldumask = umask(0) ;
+ chmod( $sFilePath, 0666 ) ;
+ umask( $oldumask ) ;
+ }
+ break ;
+ }
+ }
+ }
+ else
+ $sErrorNumber = '202' ;
+ }
+ else
+ $sErrorNumber = '202' ;
+ echo '<script type="text/javascript">' ;
+ echo 'window.parent.frames["frmUpload"].OnUploadCompleted(' . $sErrorNumber . ',"' . str_replace( '"', '\\"', $sFileName ) . '") ;' ;
+ echo '</script>' ;
+ exit ;
+}
+
+function DeleteConfirmedFiles($resourceType, $currentFolder, $aFiles)
+{ global $Config;
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+ foreach ($aFiles AS $k=>$v) {
+ @unlink($sServerDir.$v);
+ }
+
+}
+
+function DeleteFiles($resourceType, $currentFolder, $files = '', $confirm=0)
+{ global $Config ;
+ if ($files == '')
+ return;
+ //$files = rtrim("|",$files);
+ $aFiles=explode("|",$files);
+ if (count($aFiles) == 0)
+ return;
+ $conn = GetADODbConnection();
+ $aLangs = array();
+ $multilang = GetConfigValue('multilingual_mode');
+ $def_lang_prefix = GetConfigValue('default_lang_prefix');
+ if ($multilang)
+ {
+ $query="SELECT lang_prefix FROM lang ORDER BY lang_id";
+ $rs = $conn->Execute($query);
+ while ($rs && !$rs->EOF) {
+ $aLangs[] = $rs->fields['lang_prefix'];
+ $rs->MoveNext();
+ }
+ } else
+ $aLangs[] = $def_lang_prefix;
+ $sErrorNumber = 230;
+ if ($confirm == 1) {
+ DeleteConfirmedFiles($resourceType, $currentFolder, $aFiles);
+ echo '<Error number="100" originalDescription="" />' ;
+ }
+ if (!$confirm) {
+ foreach ($aFiles AS $k=>$v) {
+ $add_sql = '';
+ if ($v == '')
+ continue;
+ $deleted_file = $Config['UserFilesPathNoBase'].$resourceType.$currentFolder.addslashes($v);
+ for($i=0; $i<count($aLangs); $i++)
+ $add_sql.= " lb1.".$aLangs[$i]."_content LIKE '%".$deleted_file."%' OR";
+
+ if (strlen($add_sql) > 0) {
+ $add_sql = rtrim($add_sql," OR");
+ $sql = "SELECT lb1.template_id, lb2.".$def_lang_prefix."_content FROM live_blocks AS lb1
+ LEFT JOIN live_blocks AS lb2 ON lb2.template_id = lb1.template_id AND lb2.block_num = 20
+ WHERE".$add_sql;
+ $rs = $conn->Execute($sql);
+ while ($rs && !$rs->EOF) {
+ $used = 1;
+ $page = $rs->fields[$def_lang_prefix.'_content'];
+ $page = @html_entity_decode($page,ENT_NOQUOTES,'UTF-8');
+ $page = @htmlspecialchars($page);
+ $ret_xml.= '<Error number="' . $sErrorNumber . '" originalDescription="' . ConvertToXmlAttribute("File '".$v."'; Template: '".$page."'") . '" />' ;
+ $rs->MoveNext();
+ }
+ }
+ }
+ if ($ret_xml && !$confirm)
+ echo $ret_xml;
+ if (!$ret_xml && !$confirm) {
+ DeleteConfirmedFiles($resourceType, $currentFolder, $aFiles);
+ echo '<Error number="100" originalDescription="" />' ;
+ }
+ }
+}
+
+?>
Property changes on: branches/unlabeled/unlabeled-1.44.2/admin/editor/cmseditor/editor/filemanager/browser/default/connectors/php/commands.php
___________________________________________________________________
Added: cvs2svn:cvs-rev
## -0,0 +1 ##
+1.44
\ No newline at end of property
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Event Timeline
Log In to Comment