Example #1
0
 private function configureHtmlBuilder(Config $configuration, Payload $payload, $builderConfig)
 {
     $builder = new \MakeDocs\Builder\Html\HtmlBuilder();
     if (!array_key_exists('baseUrl', $builderConfig)) {
         throw new \InvalidArgumentException('No baseUrl setting has been set.');
     }
     if (!array_key_exists('theme', $builderConfig) || !is_dir($builderConfig['theme'])) {
         throw new \InvalidArgumentException('The theme directory "' . $builderConfig['theme'] . '" could not be found.');
     }
     if (!array_key_exists('output', $builderConfig)) {
         throw new \InvalidArgumentException('No output directory setting has been set.');
     }
     $builder->setThemeDirectory($builderConfig['theme']);
     $baseUrl = $builderConfig['baseUrl'];
     $baseUrl = str_replace('{project}', $configuration->getName(), $baseUrl);
     $baseUrl = str_replace('{version}', $payload->getBranch(), $baseUrl);
     $builder->setBaseUrl($baseUrl);
     $outputDirectory = $builderConfig['output'];
     $outputDirectory = str_replace('{project}', $configuration->getName(), $outputDirectory);
     $outputDirectory = str_replace('{version}', $payload->getBranch(), $outputDirectory);
     $builder->setOutputDirectory($outputDirectory);
     return $builder;
 }