function checkPreInstallPermission(&$sError) { global $aTemporalityWritableFolders; $sFoldersErr = $sFilesErr = $sErrorMessage = ''; $oBxDolIO = new BxDolIO(); require_once '../inc/classes/BxDolAdminTools.php'; $oAdmTools = new BxDolAdminTools(); $aInstallDirsMerged = array_merge($aTemporalityWritableFolders, $oAdmTools->aInstallDirs); foreach ($aInstallDirsMerged as $sFolder) { if (!$oBxDolIO->isWritable($sFolder)) { $sFoldersErr .= ' ' . $sFolder . ';<br />'; } } foreach ($oAdmTools->aFlashDirs as $sFolder) { if (!$oBxDolIO->isWritable($sFolder)) { $sFoldersErr .= ' ' . $sFolder . ';<br />'; } } if (strlen($sFoldersErr)) { $sError = 'error'; $sErrorMessage .= '<strong>The following directories have inappropriate permissions</strong>:<br />' . $sFoldersErr; } foreach ($oAdmTools->aInstallFiles as $sFile) { if (!$oBxDolIO->isWritable($sFile)) { $sFilesErr .= ' ' . $sFile . ';<br /> '; } } foreach ($oAdmTools->aFlashFiles as $sFile) { if (strpos($sFile, 'ffmpeg') === false) { if (!$oBxDolIO->isWritable($sFile)) { $sFilesErr .= ' ' . $sFile . ';<br /> '; } } else { if (!$oBxDolIO->isExecutable($sFile)) { $sFilesErr .= ' ' . $sFile . ';<br /> '; } } } if (strlen($sFilesErr)) { $sError = 'error'; $sErrorMessage .= '<strong>The following files have inappropriate permissions</strong>:<br />' . $sFilesErr; } return $sErrorMessage; }