function createFile($filename, $content) {
	$base = getBaseDir();
	if(($fh = fopen($base . $filename, 'w')) && fwrite($fh, $content) && fclose($fh))
		return true;
}
Example #2
0
/**
 * Combine files
 *
 * @param array $files
 * @param string $prefix
 * @param string $ext
 * @return string
 */
function combineFiles(array $files, $prefix, $ext)
{
    $baseDir = getBaseDir($prefix) . '/';
    $cacheDir = getCacheDir();
    $filesKey = md5(serialize($files)) . '.' . $ext;
    $noCache = empty($_GET['nocache']) ? false : true;
    if (!$noCache && file_exists($cacheDir . $filesKey) && filemtime($cacheDir . $filesKey) + getRefreshTime() > time()) {
        $allData = file_get_contents($cacheDir . $filesKey);
    } else {
        $allData = '';
        foreach ($files as $file) {
            if (!file_exists($baseDir . $file)) {
                continue;
            }
            $data = file_get_contents($baseDir . $file);
            if ($ext == 'css') {
                $data = translateUrlInCss($data, $file, $prefix);
            }
            if ($allData) {
                $allData .= "\n\n";
            }
            $allData .= $data;
        }
        if ($ext == 'css') {
            $allData = minifyCss($allData);
        } else {
            $allData = minifyJs($allData);
        }
        if (!$noCache) {
            file_put_contents($cacheDir . $filesKey, $allData);
        }
    }
    echo $allData;
}