/** * Проверяем удаляется ли из кеша * @expectedException SystemRegisterException */ public function testCacheOnDeletedItem() { $register = new SystemRegister(); $register->insert('AppData/test1/new_value', 'New Value'); // $szValue = $register->get('AppData/test1/new_value'); // $test1 = $register->get('AppData/test1'); $register->delete('AppData/test1/new_value'); // $test1->get('new_value'); }
/** * Генерирует файл сайтмапа */ public static function generate() { $register = new SystemRegister('System/Sitemap'); if ($register->get('sitemap.xml')->value == 0) { return; } // Получаем все url сайта $sql = 'SELECT * FROM `' . SITEMAP_TABLE . '` where `visible`="1"'; $aSitemap = DB::query($sql); // $xmlDocument = new DOMDocument('1.0', 'utf-8'); // $urlset = $xmlDocument->createElement('urlset'); $urlset->setAttribute('xmlns', 'http://www.sitemaps.org/schemas/sitemap/0.9'); foreach ($aSitemap as $row) { $url = $xmlDocument->createElement('url'); $loc = $xmlDocument->createElement('loc'); $lastmod = $xmlDocument->createElement('lastmod'); $changefreq = $xmlDocument->createElement('changefreq'); $priority = $xmlDocument->createElement('priority'); $loc->nodeValue = \Extasy\CMS::getWWWRoot() . substr($row['full_url'], 1); $lastmod->nodeValue = $row['date_updated']; $changefreq->nodeValue = $row['sitemap_xml_change']; $priority->nodeValue = $row['sitemap_xml_priority']; $url->appendChild($loc); $url->appendChild($lastmod); $url->appendChild($changefreq); $url->appendChild($priority); $urlset->appendChild($url); } $xmlDocument->appendChild($urlset); // Пишем в папку xml $xmlContents = $xmlDocument->saveXML(); file_put_contents(FILE_PATH . 'sitemap.xml', $xmlContents); }
public function testSetType() { $register = new SystemRegister('AppData'); $register->test1->value1->type = 'number'; // $this->assertEquals('number', $register->get('test1/value1')->type); }
protected static function outputSitemapXML() { $register = new SystemRegister('System/Sitemap/'); if ($register->get('sitemap.xml')->value) { require_once CONTROL_PATH . 'input.php'; require_once CONTROL_PATH . 'select.php'; // $priority = new CInput(); $priority->name = 'sitemap_xml[priority]'; $priority->value = self::$sitemap['sitemap_xml_priority']; $changefreq = new CSelect(); $changefreq->items = array(array('id' => 'always', 'name' => 'Всегда'), array('id' => 'hourly', 'name' => 'Почасово'), array('id' => 'daily', 'name' => 'Ежедневно'), array('id' => 'weekly', 'name' => 'Еженедельно'), array('id' => 'monthly', 'name' => 'Ежемесячно'), array('id' => 'yearly', 'name' => 'Ежегодно'), array('id' => 'never', 'name' => 'Никогда')); $changefreq->name = 'sitemap_xml[change]'; $changefreq->current = self::$sitemap['sitemap_xml_change']; $design = CMSDesign::getInstance(); $design->header('Sitemap.XML'); $design->tableBegin(); $design->row2cell('Приоритет', $priority->generate()); $design->row2cell('Частота', $changefreq->generate()); $design->TableEnd(); } }
/** * Возвращает значение указанного элемента системного реестра * @param $path * @return string */ public static function getValue($path) { $register = new SystemRegister('/'); return $register->get($path)->value; }
/** * @expectedException SystemRegisterException */ public function testfChild() { $register = new SystemRegister('/AppData'); // Некорректный вызов $register->get('test1/value2'); }