© Сделано на LiveStreet
Дизайн - ©2009 MODx RED Group
<?php
class p
{
/**
* Индекс
*/
const COOKIE_KEY = 'p';
const GET_KEY = 'p';
/**
* Время жизни куки
*/
const COOKIE_TIME = 8600;
/**
* Получить в виде строки
*/
const GET_STRING = 'get_string';
/**
* Получить в виде массива
*/
const GET_ARRAY = 'get_array';
private $_data;
function __construct()
{
$this->set();
$this->add();
}
protected function set()
{
$this->_data = (isset($_COOKIE[self::COOKIE_KEY])) ? unserialize($_COOKIE[self::COOKIE_KEY]): array();
}
public function get($ret=self::GET_STRING)
{
return ($ret==self::GET_STRING) ? implode(',', $this->_data) : $this->_data;
}
public function delete()
{
setcookie (self::COOKIE_KEY, "", time() - 3600,"", "." . $_SERVER['HTTP_HOST']);
}
public function add()
{
if(isset($_GET[self::GET_KEY]) && strlen(trim($_GET[self::GET_KEY])>0)) {
if(array_search($_GET[self::GET_KEY], $this->_data)===false) {
$this->_data[] = $_GET[self::GET_KEY];
setcookie (self::COOKIE_KEY, serialize($this->_data), time() + self::COOKIE_TIME,"","." . $_SERVER['HTTP_HOST']);
}
}
}
}
$p = new p();
echo $p->get();
?>[!catalogView?
&paginate=`1`
&sortBy=`id`
&sortDir=`asc`
&tpl=`prof`
&display=`[+phx:if=`[+phx:get=`all`+]`:ne=``:then=`all`:else=`15`+]`
&descTpl=`tovar`
&toPlaceholder=`catalogViewOutput`
¤tPageClass=`act`
&lang=`prof`
!]<h2>Недавно просмотренные товары:</h2>
<div>
[!catalogView?
&tpl=`prof_recent_list`
&display=`5`
&sortDir=`desc`
&descTpl=`tovar`
&randomize=`1`
&skipDesc=`1`
&products=`[[cookie]]`
!]
</div>
