Exemple #1
0
 static function getField($sql, $field)
 {
     Trace::addMessage(__CLASS__, sprintf('Getting field:"%s", with query:<br>%s', $field, $sql));
     $result = parent::getField($sql, $field);
     Trace::addMessage(__CLASS__, sprintf('getField Finished'));
     return $result;
 }
Exemple #2
0
 /**
  * Тест установки sitemap-индекса к конфигу  
  */
 public function testSetupLink()
 {
     $schema = CConfig::getSchema('test');
     $schema->setupSitemapLink(2);
     $this->assertEquals(2, $schema->getSitemapLink());
     // Проверяет на уровне бд
     $sql = 'SELECT `sitemapId` FROM `custom_config_schema` WHERE `name`="%s" ';
     $sql = sprintf($sql, 'test');
     $field = DB::getField($sql, 'sitemapId');
     //
     $this->assertEquals('2', $field);
 }
Exemple #3
0
 public function testCreate()
 {
     $old = $this->getCounts();
     //
     $schema = CConfig::createSchema('test2');
     // Проверяем, что схема была создана и обозначена в таблице
     $schemaCount = DB::getField('select count(*) as `count` from ' . CCONFIG_SCHEMA_TABLE, 'count');
     $this->assertEquals(2, $schemaCount);
     $schema->addControl('name', 'inputField', 'Имя');
     $schema->addControl('name2', 'inputField', 'Имя2');
     $schema->setTabSheets(array('Данные' => 'name'));
     // Проверяем кол-во записей в обоих таблицах
     $result = $this->getCounts();
     $this->assertEquals($result, array('tabcount' => $old['tabcount'] + 1, 'controlcount' => $old['controlcount'] + 2));
 }
 protected function action()
 {
     set_time_limit(0);
     $sitemapIndex = new DOMDocument('1.0', 'utf-8');
     $el = $sitemapIndex->createElement('sitemapindex');
     $el->setAttribute('xmlns', "http://www.sitemaps.org/schemas/sitemap/0.9");
     $sitemapIndex->appendChild($el);
     $sitemapUrlCount = DB::getField('select count(*) as `count` from `sitemap`', 'count');
     $counter = 0;
     while ($counter < $sitemapUrlCount) {
         $sql = 'select * from `sitemap` where `document_name` <> "statistic_page" and `document_name` <> "externallink" order by `id` asc limit %d,%d';
         $sql = sprintf($sql, $counter, self::SitemapLimit);
         $urlList = DB::query($sql);
         // Создаем первый документ
         $sitemap = $this->createSitemapDocument();
         // Обрабатываем его
         $this->processUrls($sitemapIndex, $sitemap, $urlList);
         // СОхраняем результат
         $this->storeSitemap($sitemapIndex, $sitemap);
         $counter += self::SitemapLimit;
     }
     file_put_contents(FILE_PATH . 'sitemap.xml', $sitemapIndex->saveXML());
     self::restart();
 }
Exemple #5
0
 /**
  *
  */
 public function testSetData()
 {
     $doc = new basicTestDocument();
     $doc->get(1);
     $expectedData = array('id' => '2', 'name' => 'test name2', 'content' => 'test content2');
     $doc->setData($expectedData);
     // ничего не произойдет
     $doc->update();
     //
     $sql = 'select count(*) as `count` from `basic_document`';
     $count = DB::getField($sql, 'count');
     $this->assertEquals(1, $count);
     // Проверяем, что предыдущий update ни к чему не привел, т.к. мы заменили id документа
     $doc->get(1);
     $this->assertEquals('1', $doc->getId());
     $this->assertEquals('test name', $doc->name->getValue());
     //
     $doc->setData(array('content' => 'its works!'));
     $doc->update();
     $doc = new basicTestDocument();
     $doc->get(1);
     //
     $doc2 = new basicTestDocument();
     $doc2->get(1);
     $this->assertEquals('its works!', $doc2->content->getValue());
 }