Beispiel #1
0
 public function testFilterPagesByVersion()
 {
     $pages = array(TestPage::getPage1()->getSSpage(), TestPage::getPage2()->getSSpage(), TestPage::getPage3()->getSSpage());
     $filtered = Util::filterPagesByVersion($pages, "^2.");
     /* @var $filtered \Selim\SilverstripePage[] */
     $this->assertCount(1, $filtered);
     $this->assertEquals($filtered[0]->getName(), "page1");
 }
Beispiel #2
0
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $cfg = $this->getSelimConfig($input);
     $sites = $cfg->getSites();
     $filter_name = $input->getOption("filter-name");
     if (strlen($filter_name)) {
         $sites = Util::filterSitesByName($sites, $filter_name);
     }
     $sspages = array();
     foreach ($sites as $sc) {
         if ($sc instanceof SiteConfig) {
             array_push($sspages, new SilverstripePage($sc));
         }
     }
     $filter_version = $input->getOption("filter-version");
     if (strlen($filter_version)) {
         $sspages = Util::filterPagesByVersion($sspages, $filter_version);
     }
     $filter_module = $input->getOption("filter-module");
     if (strlen($filter_module)) {
         $sspages = Util::filterPagesByModules($sspages, $filter_module);
     }
     if ($input->getOption("filter-da")) {
         $sspages = Util::filterPagesByDefaultAdmin($sspages, true);
     }
     $filter_env = $input->getOption("filter-env");
     if ($input->getOption("filter-env")) {
         $sspages = Util::filterPagesByEnvironmentType($sspages, $filter_env);
     }
     if ($input->getOption("table")) {
         $out = new ConsoleOutputTable($sspages);
     } else {
         $out = new ConsoleOutput($sspages);
     }
     $format = $input->getOption("format");
     if (strlen($format)) {
         $out->write($format);
     } else {
         $out->write();
     }
 }