/** * doExecute * * @return mixed */ protected function doExecute() { $xml = $this->config['dest'] . '/{{extension.name.lower}}.xml'; $content = file_get_contents($xml); $content = str_replace('client="site"', '{{module.client}}', $content); File::write($content, $xml); }
/** * copyFile * * @param string $src * @param string $dest * @param array $replace * * @return void */ protected function copyFile($src, $dest, $replace = array()) { // Replace dest file name. $dest = strtr($dest, $replace); if (is_file($dest)) { $this->io->out('File exists: ' . $dest); } else { $content = strtr(file_get_contents($src), $replace); if (File::write($dest, $content)) { $this->io->out('File created: ' . $dest); } } }
/** * copyFile * * @param string $src * @param string $dest * @param array $replace * * @return void */ protected function copyFile($src, $dest, $replace = array()) { // Replace dest file name. $dest = strtr($dest, $replace); $dest .= '.tpl'; if (is_file($dest)) { $this->io->out('[<comment>File exists</comment>] ' . $dest); } else { $content = strtr(file_get_contents($src), $replace); if (File::write($dest, $content)) { $this->io->out('[<info>File created</info>] ' . $dest); } } }
/** * copyFile * * @param string $src * @param string $dest * @param array $replace * * @return void */ protected function copyFile($src, $dest, $replace = array()) { // Replace dest file name. $dest = SimpleTemplate::render($dest, $replace, $this->tagVariable); if (substr($dest, -4) == '.tpl') { $dest = substr($dest, 0, -4); } if (is_file($dest)) { $this->io->out('[<comment>File exists</comment>] ' . $dest); } else { $content = SimpleTemplate::render(file_get_contents($src), $replace, $this->tagVariable); if (File::write($dest, $content)) { $this->io->out('[<info>File created</info>] ' . $dest); } } }
/** * compress * * @return void */ public function compress() { // Get assets list from Document $list = $this->getStorage(); $list = ArrayHelper::getColumn($list, 'url'); // Build assets hash per page. $name = $this->buildHash($list); // Cache file path. $path = $this->getCachePath($name); $assetPath = WINDWALKER_PUBLIC . '/' . $this->asset->getAssetFolder() . '/' . $path; // Prepare to minify and combine files. if (!is_file($assetPath)) { // Combine data by file list. $data = $this->combineData($list); $data = $this->doCompress($data); File::write($assetPath, $data); } $this->addAsset($path); }
/** * dump * * @return void */ public static function dump() { $list = static::getList(); $ids = ArrayHelper::getColumn($list, 'id'); $content = implode(',', $ids); File::write(static::getTempPath(), $content); }
/** * Method to test write(). * * @return void * * @covers Windwalker\Filesystem\File::write */ public function testWrite() { File::write(static::$dest . '/folder3/level2/test.txt', 'tmpFile'); $this->assertStringEqualsFile(static::$dest . '/folder3/level2/test.txt', 'tmpFile'); }
/** * Save config to file. * * @return void */ public static function saveConfig() { File::write(static::getPath(), static::getConfig()->toString(static::$type)); }
/** * Execute this command. * * @return int * * @since 2.0 */ protected function doExecute() { $package = $this->getArgument(0); if (!$package) { throw new WrongArgumentException('Please enter package name.'); } $package = ConsoleHelper::getAllPackagesResolver()->getPackage($package); if (!$package) { throw new \InvalidArgumentException(sprintf('Package: %s not found', $this->getArgument(0))); } $recordClass = $this->getArgument(1); if (!$recordClass) { throw new WrongArgumentException('Please enter record name or class.'); } $recordClass = StringNormalise::toClassNamespace($recordClass); $pkgNamespace = ReflectionHelper::getNamespaceName($package); if (!class_exists($recordClass)) { $recordClass = $pkgNamespace . '\\Record\\' . ucfirst($recordClass) . 'Record'; } $table = null; if (class_exists($recordClass)) { try { /** @var Record $record */ $record = new $recordClass(); $table = $record->getTableName(); } catch (\Exception $e) { // Nothing } } if ($this->getArgument(2)) { $table = $this->getArgument(2); } $columns = Ioc::getDatabase()->getTable($table, true)->getColumnDetails(true); $fields = []; $dataType = Ioc::getDatabase()->getTable($table)->getDataType(); foreach ($columns as $column) { $fields[] = ['name' => $column->Field, 'type' => $dataType::getPhpType(explode('(', $column->Type)[0])]; } // Prepare Trait name $name = end(explode('\\', $recordClass)); $name = str_replace('Record', '', $name); $shortName = ucfirst($name) . 'DataTrait'; $data = ['package_namespace' => $pkgNamespace . '\\Record\\Traits', 'short_name' => $shortName, 'columns' => $fields]; $content = (new Edge(new EdgeStringLoader()))->render($this->getTemplate(), $data); $file = $package->getDir() . '/Record/Traits/' . $shortName . '.php'; if (is_file($file) && !(new BooleanPrompter())->ask('File: <comment>' . $file . '</comment> exists, do you want to override it? [N/y]: ', false)) { throw new \RuntimeException(' Canceled...'); } File::write($file, $content); $this->out()->out('Writing file: <info>' . $file . '</info> success.'); return true; }
/** * createFolder * * @param string $dest * * @return void */ protected function createFolder($dest) { $this->out('<info>Create</info>: ' . $dest); Folder::create($dest); File::write($dest . '/.gitkeep', ''); }