<?

class ObjectFinder {
	// FIXME!!!
    function &_get_obj($oid) {
        #tstart('getObj'); #speedup
        global $OBJECTPOOL;
        //print '--'.$oid.'==';
        #if (in_array($oid, array_keys($OBJECTPOOL))) { #speedup
        //var_dump($oid);
        if (isset($OBJECTPOOL[$oid])) {
            $OBJECTPOOL['__cache_hit']++;
            #tstop('getObj');
            return $OBJECTPOOL[$oid];
        }
        $OBJECTPOOL['__cache_miss']++;
        $parts = explode('_', $oid);
        $type = $parts[0];
        if (!class_exists($type)) return false;
        // na wypadek plugina trzeba miec parenta
        if ($parts[3]) { // plugin
            $parent_oid = $parts[1].'_'.$parts[2];
            $parent = $this->_get_obj($parent_oid);
            $obj = new $type($oid, $parent, $parts[3]);
        } else {
            //tstart('getObj - create');
            $obj = new $type($oid);
            //tstop('getObj - create');
        }
        $OBJECTPOOL[$oid] =& $obj;
        #tstop('getObj');
        return $obj;
    }

	function ObjectFinder($types) {
        global $StorageNewIndex;
        if (!$types) $types = '*';
        if (!is_array($types)) $types = array($types);
        $this->_index = new $StorageNewIndex($types);
	}

	function index() {
		return $this->_index;
	}

	function filter($param, $value) {
		$this->_index->filter($param, $value);
		return $this;
	}

	function order_by($field) {
		$this->_index->order_by($field);
		return $this;
	}

	function count() {
		return $this->_index->count();
	}

	function all() {
		$oids = $this->all_oids();
		$objs = array();
		foreach($oids as $oid) {
			$objs[] = $this->_get_obj($oid);
		}
		return $objs;
	}

	function first() {
		$oid = $this->first_oid();
		return $oid ? $this->_get_obj($oid) : null;;
	}

	function all_oids() {
		return $this->_index->get();
	}

	function first_oid() {
		$oids = $this->_index->limit(1)->get();
		return $oids ? $oids[0] : false;
	}

	function all_values() {
		return $this->_index->get_values();
	}

	function first_values() {
		$vals = $this->_index->get_values();
		return $vals ? $vals[0] : false;
	}

	function in_tree_of(/* varargs */) {
		$parents = func_get_args();

		$q = new Q('or');

		foreach ($parents as &$parent) {
			$flt = 'oid.=';
			for ($i = 0; $i < 5; ++$i) {
				$flt = 'referenced_by_folder(*).' . $flt;
				$q->filter($flt, $parent->oid);
			}
		}

		return $this->filter('q', $q);
	}

	function in_folder_of($obj) {
		return $this->referenced_by('folder', $obj);
	}

	/*
	function parent_of($obj) {
		return $this->filter('folder(*).oid.=', $obj->oid);
	}
	*/

	function visible() {
		return $this->filter('nolist.!=', 'on');
	}

	function referenced_by($field, $obj, $type='*') {
		return $this->filter('referenced_by_' . $field . '(' . $type . ').oid.=', $obj->oid);
	}

	function id($id) {
		return $this->filter('id.=', $id);
	}
}

<?

class MyBaseStrona extends BaseStrona {
	/* Zwraca <a id="..." class="..." href="..." title="...">...</a> */
	function anchor($id = '', $class = '') {
		return sprintf('<a %s%shref="%s" title="%s">%s</a>',
			$id ? ('id="' . $id . '" ') : '',
			$class ? ('class="' . $class . '" ') : '',
			$this->url(),
			htmlspecialchars($this->title()),
			$this->title()
		);
	}

	function get_folder_info() {
		return '<p class="teaser">' . htmlspecialchars($this->teaser()) . '</p>';
	}
}

class Strona extends MyBaseStrona {
	var $history_fields = array('body', 'title', 'desc');
	var $allowed_types = array('Strona');

	function Strona($oid) {
		$this->BaseStrona($oid, true);
		$this->add_attr('subtitle', 'Field', c('Podtytuł'), array(), 'redirect');
       	$this->add_attr('img', 'ImageBrowserField', c('Ilustracja artykułu'));
       	$this->add_attr('pub_date', 'Field', c('Data publikacji'), array('default' => date('Y-m-d'), 'edittemplate' => 'field_edit_datepicker.tpl'));
		if ($gal = $this->get_component('Galeria')) {
       		$this->add_attr('objs_images', 'ObjField', c('Dodawanie obrazków'), array(
				'description' => 'Obrazki wyświetlane w stopce strony. Kadrowane adaptacyjnie do wymiarów 100px - 75px.',
				'objtype' => 'Obrazek',
				'parentobj' => $gal,
				'kind' => 'images',
			));
		}	
		$this->add_attr('footer_gallery', 'CheckField', c('Pokaż obrazki w stopce'), array());			
		$this->add_attr('layout', 'DictionaryField', c('Layout strony'), array(
			'dictionary' => array(
				'' => c('Domyślny'),
				'contact' => c('Strona Kontakt'),
				'offer' => c('Strona Oferta'),
				'gallery' => c('Dział Galeria'),
			),
		));	
		
		$page_type = $this->get_raw('layout');
		if($page_type == 'offer' || $page_type == 'gallery'){	
			$this->allowed_types[] = 'StronaGaleria';	
		}
		
		$this->init_plugins();
	}
	
	function get_foot_imgs(){
		if(!($cmp = $this->get_component('Galeria')))
			return false;
		
		$imgs = $cmp->get_content_objects();
		if(count($imgs) == 0)
			return false;
	
		return $imgs;	
	}
	
}

class StronaSimple extends MyBaseStrona {
	var $view = 'edit';
	var $allowed_types = array();

	function StronaSimple($oid) {
		$this->BaseStrona($oid, true);
		$this->hide_attr('body', 'desc', 'redirect', 'nolist');
		if ($this->view != 'view') unset($this->views['view']);
		if (!$this->allowed_types) unset($this->views['folder']);
		$this->init_plugins();
	}
}

class RotatorZdjec extends ComponentPlugin {
	
	function RotatorZdjec($oid, $noinit=false) {
		$this->ComponentPlugin($oid, $noinit);
		
		$this->allowed_types = array('Obrazek');
		$this->add_view('sort', 'ajax_echo.tpl', 'view');		
	}
	
	function parse_request() {
		parent::parse_request();
		global $systempath, $s, $smarty;
		$smarty->caching = false;
		$r =& $_REQUEST;

		if ($this->view == 'sort') {
			$this->maintemplate = 'ajax.tpl';
			
			$old_oids = $this->folder->getRaw();
			$new_oids = $r['oids'];
			
			foreach($old_oids as $k => $v){
				if(!in_array($v, $new_oids))array_push($new_oids, $v);
			}
			$this->folder->set($new_oids);
			
			return;
		}		
	}
}

class Glowna extends MyBaseStrona {
	var $allowed_types = array('Strona');
	function Glowna($oid) {
		$this->BaseStrona($oid);
		$this->hide_attr('redirect', 'nolist');
		$this->add_view('settings', 'baseedit.tpl', 'edit', true);	
//		$this->add_attr('keywords', 'Field', c('Słowa kluczowe (widoczne dla wyszukiwarek)'), array('description' => c('Podaj słowa kluczowe')), 'desc');
		$this->add_attr('sg_img', 'ImageBrowserField', c('Ilustracja nagłówka strony'), array('description' => 'Pożądany rozmiar zdjęcia 735px / 295px. Zdjęcie kadrowane adaptacyjne, justowane do prawej'));
		$this->add_attr('top_text', 'Field', c('Treść nagłówka 1'));      
		$this->add_attr('top_text2', 'Field', c('Treść nagłówka 2'));      
		$this->add_attr('top_text3', 'Field', c('Treść nagłówka 3'));      
		$this->add_attr('top_text4', 'Field', c('Treść nagłówka 4'));      
//		$this->add_attr('contact_email', 'Field', c('Adres email'), array('description' => 'Adres email na który będzie wysyłany formularz kontaktowy'));      
		if ($gal = $this->get_component('RotatorZdjec')) {
       		$this->add_attr('objs_images_rotate', 'ObjField', c('Dodawanie obrazków'), array(
				'description' => 'Obrazki rotowane w nagłówku strony. Wymiary proporcjonalnie do 260px - 295px',
				'objtype' => 'Obrazek',
				'parentobj' => $gal,
				'kind' => 'images',
			));
		}	 
		if ($gal = $this->get_component('Galeria')) {
       		$this->add_attr('objs_images', 'ObjField', c('Dodawanie obrazków'), array(
				'description' => 'Obrazki wyświetlane w stopce strony. Kadrowane adaptacyjnie do wymiarów 100px - 75px.',
				'objtype' => 'Obrazek',
				'parentobj' => $gal,
				'kind' => 'images',
			));
		}		
		$this->add_attr('footer_gallery', 'CheckField', c('Pokaż obrazki w stopce'), array());
		$this->actionProviders[] = new TransAction($this);
		
		// Settings tab fields
		$this->add_attr('keywords', 'Field', c('Słowa kluczowe (widoczne dla wyszukiwarek - meta keywords)'), array(
			'group' => array('settings')
		));		
		$this->add_attr('meta_desc', 'BBField', c('Opis serwisu (widoczny dla wyszukiwarek - meta description)'), array(
			'group' => array('settings')
		));		
		$this->add_attr('ga_code', 'BBField', c('Kod Google Analytics'), array('group' => array('settings'), 'description' => 'Kod bez znacznikow script'));		
//		$this->add_attr('admessage_api', 'Field', c('Klucz Admessage'), array('group' => array('settings')));
       	$this->add_attr('contact_email', 'EmailField', c('Adres Email'), array('required' => true, 'description' => 'Adres email na który zostanie wysłany formularz kontaktowy', 'group' => array('settings')));
//     	$this->add_attr('c_subject', 'Field', c('Temat Wiadomści'), array('required' => true, 'description' => 'Temat wiadomości, wysyłanych za pośrednictwem formularza kontaktowego', 'group' => array('settings')));
		// End Settings tab fields		
		
	}
	
	function get_foot_imgs(){
		if(!($cmp = $this->get_component('Galeria')))
			return false;
		
		$imgs = $cmp->get_content_objects();
		if(count($imgs) == 0)
			return false;
	
		return $imgs;	
	}	
	
}

?>
<?

$info = array(
	PLUGINNAME => 'Formularz',
	SHORTNAME => 'form',
	CLASSNAME => 'Formularz',
	INSTALL_IMPLICIT_ROOT => true,
	INSTALL_EXPLICIT_ROOT => false,
	INSTALL_IMPLICIT_LEAF => false,
	INSTALL_EXPLICIT_LEAF => false,
);

class Formularz extends StatelessPlugin {

	var $type = 'Formularz';

	function Formularz($oid, &$obj, $name=false) {
		$this->StatelessPlugin($oid, $obj, $name);
		$this->allowed_types = array();
		$this->edit_permission = 'rights';

		$this->views = array(
			'view' => 'stronaview.tpl',
			'subskrybcje' => 'ajax.tpl',
		);
	}

	function send_mail($to, $subject, $body = '', $name, $email) {
		$header  = "MIME-Version: 1.0\n";
		$header .= "Content-type: text/plain; charset=UTF-8\n";
		$header .= "From: $name <$email>\n";
		$subject = '=?UTF-8?B?'.base64_encode($subject).'?=';
		/*
		echo "------------------";
		echo $header; echo '\n';
		echo $to; echo '\n';
		echo $subject; echo '\n';
		echo $body; echo '\n';
		echo "------------------";
		*/

		try {
			return mail($to, $subject, $body, $header); 
		} catch (Exception $e) {
			return false;
		}
	}
	
	function parse_request() {
		parent::parse_request();
		global $portal, $smarty, $systempath;
		$p =& $_POST;

		$email = $this->get_root()->get('contact_email');
			
		if (!in_array($p['action'], array('contact')) || !$email) {
			echo 'err'; die();
		};

		if ($p['action'] == 'contact') {
			$body = "Witaj,\n\n";
			$body .= "Otrzymałeś wiadomość za pośrednictwem formularza kontaktowego\n\n";
			$body .= $p['name']." ".$p['surname']." zadał pytanie:\n";
			$body .= $p['content']."\n\n";
			$body .= "Dane kontaktowe: \n";
			$body .= "E-mail: ".$p['useremail']."\n";
			$body .= "Firma: ".$p['company']."\n\n";
			$body .= "--\n";
			$body .= "Dianthus";

			$ret = $this->send_mail($email,'Wiadomość wysłana z serwisu Dianthus',
				$body, $p['useremail'], $p['useremail']);
		}
			
		print $ret ? 'ok' : 'err'.$email;
		die();
	}
}

<?

$info = array(
	PLUGINNAME => 'Paginate',
	SHORTNAME => 'plugin_paginate',
	CLASSNAME => 'PaginatePlugin',
	INSTALL_IMPLICIT_ROOT => true,
	INSTALL_EXPLICIT_ROOT => false,
	INSTALL_IMPLICIT_LEAF => false,
	INSTALL_EXPLICIT_LEAF => false,
);

class PaginatePlugin extends StatelessPlugin {

	var $type = 'PaginatePlugin';

	function paginate($params, &$smarty) {
		$pagelen = intval($params['pagelen']);
		$pageitems = $params['pageitems'];
		$pagesel = $params['pagesel'];
		$pageurl = $params['pageurl'];
		$items = $params['items'];
		$page = intval($_GET['page']);
		$sep = $params['pageselsep'];
		$sep2 = $params['pageselsep2'];

		$pagecount = ceil(count($items) / (float)$pagelen);
		$itemcount = count($items);

		$join = (strpos($pageurl, '?') === FALSE) ? '?' : '&';

		$retitems = array();
		for($i=$page*$pagelen;$i<($page+1)*$pagelen && $i<$itemcount;++$i) {
			$retitems[] = $items[$i];
		}

		$retsel = '';


		if ($page == 0) {
			$class = 'prev-inactive';
			$url = '';
		} else {
			$class = '';
			$url = 'href="' . $pageurl . $join . "page=" . ($page - 1) . '"';
		}
		$retsel .= '<a class="prev ' . $class . '" ' . $url . '><span>'.c('Poprzednia strona').'</span></a>' . $sep2;

		for($i=0;$i<$pagecount;++$i) {
			$class = '';
			if ($i == 0) $class = 'first ';
			if ($i == $pagecount-1) $class .= 'last ';
			if ($i == $page) $class .= 'current ';
			$url = $pageurl . $join . "page=" . $i;
			$retsel .= '<a class="' . $class . '" href="' . $url . '"><span>' . ($i+1) . '</span></a>';
			if ($i != $pagecount-1) $retsel .= $sep;
		}

		if ($page == ($pagecount - 1)) {
			$class = 'next-inactive';
			$url = '';
		} else {
			$class = '';
			$url = 'href="' . $pageurl . $join . "page=" . ($page + 1) . '"';
		}
		$retsel .= $sep2 . '<a class="next ' . $class . '" ' . $url . '><span>'.c('Następna strona').'</span></a>';

		if ($pagecount <= 1)
			$retsel = '';
		$smarty->assign($pageitems, $retitems);
		$smarty->assign($pagesel, $retsel);
	}

	function PaginatePlugin($oid, &$obj, $name=false) {
		$this->Plugin($oid, $obj, $name);
		$this->allowed_types = array();
		$this->views = array();
		$this->pads = array();
		$this->edit_permission = 'edit';

		global $smarty;
		try {
			$smarty->registerPlugin('function', 'paginate', array(&$this, 'paginate'));
		} catch (Exception $e) {
		};
   //     $smarty->register_function('paginate', array(&$this, 'paginate'));

	}
}
<?

class Galeria extends ComponentPlugin {
	
	function Galeria($oid, $noinit=false) {
		$this->ComponentPlugin($oid, $noinit);
		
		$this->allowed_types = array('Obrazek');
		$this->add_view('galeria', 'cms_folder.tpl', 'edit', false);
		$this->add_view('upload', 'ajax_echo.tpl', 'view');
		$this->add_view('sort', 'ajax_echo.tpl', 'view');		
	}
	
	function parse_request() {
		parent::parse_request();
		global $systempath, $s, $smarty;
		$smarty->caching = false;
		$r =& $_REQUEST;

/*		if ($this->view == 'upload') {
			$this->maintemplate = 'ajax.tpl';	
			
			$parentobj = $this->getObj($r['parentoid']);
			$obr = $parentobj->create_object($r['objtype'], strtolower($r['objtype']));

			$img = $obr->attr['img'];
			$obr->set('img', $_FILES['Filedata']);
			$s['echo'] = 'ok';			

			return;
		}		
*/
		if ($this->view == 'sort') {
			$this->maintemplate = 'ajax.tpl';
			
			$old_oids = $this->folder->getRaw();
			$new_oids = $r['oids'];
			
			foreach($old_oids as $k => $v){
				if(!in_array($v, $new_oids))array_push($new_oids, $v);
			}
			$this->folder->set($new_oids);
			
			return;
		}		
		
	}	
}

$TYPENAME['StronaGaleria'] = 'Galeria';
class StronaGaleria extends Strona {
	var $allowed_types = array();
	
	function StronaGaleria($oid) {
		$this->Strona($oid);
		$this->views['view'] = 'gallery.tpl';
		$this->add_attr('subtitle', 'Field', c('Podtytuł'), array(), 'redirect');
		$this->hide_attr('body', 'redirect', 'nolist','pub_date','img','layout');
		if(isset($this->attr['objs_images']))
			$this->attr['objs_images']->description = 'Obrazy galerii';
	}
	
	function get_foot_imgs(){
		if(!($cmp = $this->get_parent()->get_component('Galeria')))
			return false;
		
		$imgs = $cmp->get_content_objects();
		if(count($imgs) == 0)
			return false;
	
		return $imgs;	
	}		
}

class Obrazek extends StronaSimple {
	function objfield_info() {
		if (!$this->attr['img']->is_set())
			return parent::objfield_info();

		$img = $this->attr['img']->get('100', '100', 'adaptive');
		$html  = "<img src='$img' />";
		return $html;
	}

	function Obrazek($oid) {
		$this->StronaSimple($oid);
		$this->add_attr('img', 'ImageBrowserField', c('Obrazek'), array(
			'group' => array('default', 'create', 'required')
		));
		$this->attr['title']->group = array('default');
		$this->attr['title']->default = 'Obrazek';
		$this->add_attr('name', 'Field', c('Nazwa'), array(
			'group' => array('default', 'create')
		));
	}

}


?>
<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="https://pelargonia.pl/cms-plugins/sitemap/sitemap.xsl"?><urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">


	<url>
		<loc>https://pelargonia.pl/</loc>
		<lastmod>2017-06-30T19:26:05+01:00</lastmod>
		<changefreq>daily</changefreq>
		<priority>1.0</priority>
	</url>
		
	<url>
		<loc>https://pelargonia.pl/galeria</loc>
		<lastmod>2013-04-08T13:04:21+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/galeria/kompozycje-roslin--aranzacje</loc>
		<lastmod>2018-07-26T14:35:24+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta</loc>
		<lastmod>2013-01-24T12:17:20+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/1---pelargonie</loc>
		<lastmod>2013-08-01T14:47:54+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/pelargonie-zonale</loc>
		<lastmod>2014-05-09T13:38:17+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/b--pelargonie-peltatum</loc>
		<lastmod>2014-05-09T13:43:38+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/c--pelargonie-cascadowe</loc>
		<lastmod>2013-04-03T12:01:58+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/d--pelargonie-inne</loc>
		<lastmod>2014-05-09T15:10:41+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/2--surfinia--cascadia--ray--littletunia--calibrachoa</loc>
		<lastmod>2014-05-09T15:37:43+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/3--impatiens-new-guinea--musica</loc>
		<lastmod>2013-04-02T20:37:28+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/4--begonia</loc>
		<lastmod>2014-05-12T17:30:10+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/5--poinsecja</loc>
		<lastmod>2013-03-24T21:42:36+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/6--gypsophila</loc>
		<lastmod>2013-03-28T20:43:00+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/7--inne-rosliny-rabatowe</loc>
		<lastmod>2013-03-27T14:01:57+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/acalypha</loc>
		<lastmod>2013-03-24T21:33:21+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/argyranthemum</loc>
		<lastmod>2013-04-02T22:01:54+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/nbsp-----bacopa</loc>
		<lastmod>2013-04-02T22:17:01+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/nbsp-----bambus</loc>
		<lastmod>2013-04-03T00:53:29+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/bidens</loc>
		<lastmod>2013-04-02T22:51:03+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/nbsp-----brachyscome</loc>
		<lastmod>2013-04-03T10:27:32+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/coleus</loc>
		<lastmod>2013-04-03T12:08:10+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/nbsp-----coleus-canina</loc>
		<lastmod>2014-05-28T16:35:03+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/dalia</loc>
		<lastmod>2013-04-02T23:53:19+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/fuksja</loc>
		<lastmod>2013-03-25T00:00:46+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/nbsp-----helichrysum</loc>
		<lastmod>2013-03-25T00:01:30+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/heliotrop</loc>
		<lastmod>2013-03-25T00:01:58+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/ipomoea</loc>
		<lastmod>2013-03-25T00:02:59+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/lantana</loc>
		<lastmod>2013-04-03T12:10:54+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/lobelia</loc>
		<lastmod>2013-04-03T00:32:12+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/lobularia</loc>
		<lastmod>2013-03-25T00:04:26+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/lisymachia</loc>
		<lastmod>2013-03-25T00:04:40+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/nepeta</loc>
		<lastmod>2013-03-25T00:05:12+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/osteospermum</loc>
		<lastmod>2013-04-03T12:42:58+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/plectranthus</loc>
		<lastmod>2013-03-25T00:05:54+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/sanvitalia</loc>
		<lastmod>2013-04-03T00:42:50+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/scaevola</loc>
		<lastmod>2013-03-25T00:06:30+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/szalwia</loc>
		<lastmod>2013-03-25T00:07:01+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/thunbergia</loc>
		<lastmod>2013-08-01T15:36:54+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/oferta/werbena</loc>
		<lastmod>2013-03-25T00:07:44+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/u-nas</loc>
		<lastmod>2018-05-04T23:20:09+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
			
	<url>
		<loc>https://pelargonia.pl/kontakt</loc>
		<lastmod>2019-07-06T23:57:10+01:00</lastmod>
		<changefreq>weekly</changefreq>
		<priority>0.2</priority>
	</url>
	</urlset><br />
<b>Fatal error</b>:  Uncaught exception 'Exception' with message 'Headers already sent in /www-data/pelargonia.pl/cms-core/libs/Smarty.class.php on line 358. Cannot send log data to FirePHP. You must have Output Buffering enabled via ob_start() or output_buffering ini directive.' in /www-data/pelargonia.pl/cms-core/PEAR/FirePHPCore/FirePHP.class.php:806
Stack trace:
#0 /www-data/pelargonia.pl/cms-core/PEAR/FirePHPCore/FirePHP.class.php(496): FirePHP-&gt;newException('Headers already...')
#1 /www-data/pelargonia.pl/cms-core/PEAR/FirePHPCore/FirePHP.class.php(387): FirePHP-&gt;fb('(Loading: 0.003...', 'Times', 'LOG')
#2 /www-data/pelargonia.pl/cms-core/cms.php(209): FirePHP-&gt;log('(Loading: 0.003...', 'Times')
#3 {main}
  thrown in <b>/www-data/pelargonia.pl/cms-core/PEAR/FirePHPCore/FirePHP.class.php</b> on line <b>806</b><br />
