function BXCreateSection(&$fileContent, &$sectionFileContent, &$absoluteFilePath, &$sectionPath) { //Check quota $quota = new CDiskQuota(); if (!$quota->CheckDiskQuota(array("FILE_SIZE" => strlen($fileContent) + strlen($sectionFileContent)))) { $GLOBALS["APPLICATION"]->ThrowException($quota->LAST_ERROR, "BAD_QUOTA"); return false; } $io = CBXVirtualIo::GetInstance(); //Create dir if (!$io->CreateDirectory($absoluteFilePath)) { $GLOBALS["APPLICATION"]->ThrowException(GetMessage("PAGE_NEW_FOLDER_CREATE_ERROR") . "<br /> (" . htmlspecialcharsbx($absoluteFilePath) . ")", "DIR_NOT_CREATE"); return false; } //Create .section.php $f = $io->GetFile($absoluteFilePath . "/.section.php"); if (!$GLOBALS["APPLICATION"]->SaveFileContent($absoluteFilePath . "/.section.php", $sectionFileContent)) { return false; } //Create index.php if (!$GLOBALS["APPLICATION"]->SaveFileContent($absoluteFilePath . "/index.php", $fileContent)) { return false; } else { if (COption::GetOptionString($module_id, "log_page", "Y") == "Y") { $res_log['path'] = $sectionPath . "/index.php"; CEventLog::Log("content", "PAGE_ADD", "main", "", serialize($res_log)); } } return true; }