'._LANG_ORDER_BY.': '._LANG_PRICE.' ' .$result["link_start"][1].'▲'.$result["link_finish"][1].' '.$result["link_start"][2].'▼'.$result["link_finish"][2].' '._LANG_NAME_GOOD.' ' .$result["link_start"][3].'▲'.$result["link_finish"][3].' '.$result["link_start"][4].'▼'.$result["link_finish"][4].' '; echo '
'.(! empty($result["text"]) ? '
'.$result["text"].'
' : ''); if(! empty($result["img"])) { echo '
'; if(! empty($result["img"]["link"])) { echo ''.$result["img"]["tag"].''; } elseif(! empty($result["img"])) { foreach($result["img"] as $img) { echo ' '.$img["tag"].''; } } echo '
'; } //ссылки на подкатегории if(! empty($result["children"])) { foreach($result["children"] as $child) { echo ' '.($child["anons"] ? '
'.$child["anons"].'
' : ''); if(! empty($child["img"])) { echo '
'; if(! empty($child["img"]["link"])) { echo ''.$child["img"]["tag"].''; } elseif(! empty($child["img"])) { foreach($child["img"] as $img) { echo ' '.$img["tag"].''; } } echo '
'; } } } //товары в разделе if(! empty($result["rows"])) { $k = 0; $m = 0; echo ' '; foreach($result["rows"] as $row) { echo (!$k?' ' .($k?' ':''); if($k) { $m=1; } $k=1-$k; } echo ($k?' ':'').'
' :' ' ) .($m?'
':'').'
'; if(! empty($row["img"]["link"])) { echo ''.$row["img"]["tag"].''; } elseif(! empty($row["img"])) { foreach($row["img"] as $img) { echo ' '.$img["tag"].''; } } echo '
'.$row["name"].' '.$row["show-rating"].'
'.$row["anons"].'
' .($row["price"]?'
'._LANG_PRICE.': '.$row["price"].' '.$result["currency"].'
':''); self::form($row, $result); echo (!empty($row["tags"])?$row["tags"]:'').'
'; } echo Paginator_view::get($result["paginator"]) .'
' .(! empty($result["previous"]) ? ' ' : '') .(! empty($result["next"]) ? ' ' : '') .'
' .(! empty($result["comments"]) ? '
'.$result["comments"].'
' : '') .'
'; return TRUE; } /** * Шаблон первой страницы магазина * * @param array $result сгенерированные в моделе данные * @return boolean true */ public function first_page($result) { if(empty($result["categories"])) return; foreach($result["categories"] as $cat_id => $cat) { echo '
'; //название и описание категории echo '

'.($cat["allshop"] ? ' '.$cat["allshop"]["text"].'' : '').$cat["name"].'

' .(! empty($cat["anons"]) ? '
'.$cat["anons"].'
' : ''); if(! empty($cat["img"])) { echo '
'; if(! empty($cat["img"]["link"])) { echo ''.$cat["img"]["tag"].''; } elseif(! empty($cat["img"])) { foreach($cat["img"] as $img) { echo ' '.$img["tag"].''; } } echo '
'; } //ссылки на подкатегории if(! empty($cat["children"])) { foreach($cat["children"] as $child) { echo ' '.(! empty($child["anons"]) ? '
'.$child["anons"].'
' : ''); if(! empty($child["img"])) { echo '
'; if(! empty($child["img"]["link"])) { echo ''.$child["img"]["tag"].''; } elseif(! empty($child["img"])) { foreach($child["img"] as $img) { echo ' '.$img["tag"].''; } } echo '
'; } } } //товары в категории if(! empty($cat["rows"])) { $k = 0; $m = 0; echo ' '; foreach($cat["rows"] as $row) { echo (!$k?' ' .($k?' ':''); if($k) { $m=1; } $k=1-$k; } echo ($k?' ':'').'
' :' ' ) .($m?'
':'').'
'; if(! empty($row["img"]["link"])) { echo ''.$row["img"]["tag"].''; } elseif(! empty($row["img"])) { foreach($row["img"] as $img) { echo ' '.$img["tag"].''; } } echo '
'.$row["name"].' '.$row["show-rating"].'
'.$row["anons"].'
' .($row["price"]?'
'._LANG_PRICE.': '.$row["price"].' '.$result["currency"].'
':''); self::form($row, $result); echo (!empty($row["tags"])?$row["tags"]:'').'
'; } echo '
'; } return TRUE; } /** * Шаблон страницы товара * * @param array $row данные о товаре * @return boolean true */ public function id($row) { echo '
' //рейтинг товара .(! empty($row["show-rating"]) ? $row["show-rating"] : '') //форма оценки товара .(! empty($row["add-rating"]) ? $row["add-rating"] :'') .(empty($row["depend"]) && ! empty($row["price"]) ? '
'._LANG_PRICE.': '.$row["price"].' '.$row["currency"].'
' : ''); self::form($row, $row); if(! empty($row["param"])) { foreach($row["param"] as $k => $v) { echo '
'.$k.($v ? ': '.(is_array($v) ? implode(', ',$v) : $v).'' : '')."
\n"; } } echo //анонс ($row["anons"] ? '
'.$row["anons"].'
' : '') //описание .'
'.$row["text"].'
'; if(! empty($row["img"]["link"])) { echo ''.$row["img"]["tag"].''; } elseif(! empty($row["img"])) { foreach($row["img"] as $img) { echo ' '.$img["tag"].''; } } echo '
' .(! empty($row["tags"]) ? $row["tags"] : '') .(! empty($row["previous"]) ? ' ' : '') .(! empty($row["next"]) ? ' ' : '').'
' .(! empty($row["comments"]) ? '
'.$row["comments"].'
' : ''); return TRUE; } /** * Шаблонная функция: блок товаров * * @param array $result сгенерированные в моделе данные * @return boolean true */ public function show_block($result) { echo '
'; //название и описание раздела echo (! empty($result["name"]) ? '

'.(! empty($result["allshop"]) ? ''.$result["allshop"]["text"].'' : '').$result["name"].'

' : ''); //товары в разделе if(! empty($result["rows"])) { $k = 0; $m = 0; echo ' '; foreach($result["rows"] as $row) { echo (!$k?' ' .($k?' ':''); if($k) { $m=1; } $k=1-$k; } echo ($k?' ':'').'
' :' ' ) .($m?'
':'').'
'; if(! empty($row["img"]["link"])) { echo ''.$row["img"]["tag"].''; } elseif(! empty($row["img"])) { foreach($row["img"] as $img) { echo ' '.$img["tag"].''; } } echo '
'.$row["anons"].'
' .($row["price"]?'
'._LANG_PRICE.': '.$row["price"].' '.$result["currency"].'
':''); self::form($row, $result); echo '
'; } echo '
'; return TRUE; } /** * Шаблонная функция: форма поиска по товарам * * @param array $result сгенерированные в моделе данные * @return boolean true */ public function show_search($result) { echo ' '; return TRUE; } /** * Шаблон вывода кнопки "Купить", в котором характеристики, влияющие на цену выводятся в виде выпадающего списка * * @param integer $row данные о товаре * @param array $result сгенерированные в моделе данные * @return boolean */ private function form($row, $result) { if(! $result["buy"]) return FALSE; echo '
'; if(! empty($row["param_select_buy"])) { foreach($row["param_select_buy"] as $id => $rows) { $depends = $result["depends"][$id]; echo '
'.$depends["name"].':
'; } } if($row["depend"]) { $depends = $result["depends"][$row["depend"]["param_id"]]; echo $depends["name"].': '.($row["price"] ? $row["price"].' '.$result["currency"] : '').''; } echo '
'.$row["error"] : ' style="display:none">').'
'; return TRUE; } /** * Шаблон вывода кнопки "Купить", в котором каждой характеристике, влияющей на цену выведена отдельная кнопка "Купить" * чтобы использовать шаблон, переименуйте фунцию в form, а функцию form (строка 335) в form_ * * @param integer $row данные о товаре * @param array $result сгенерированные в моделе данные * @return boolean */ private function form_($row, $result) { if(! $result["buy"]) return FALSE; if($row["depend"]) { $depends = $result["depends"][$row["depend"]["param_id"]]; foreach($row["depend"]["rows"] as $r) { echo '
'; if(! empty($row["param_select_buy"])) { foreach($row["param_select_buy"] as $id => $rows) { $deps = $result["depends"][$id]; echo '
'.$deps["name"].':
'; } } echo $depends["name"].': '.$depends["values"][$r["value"]] .' '.$r["price"].' '.$result["currency"].'
'.$row["error"] : ' style="display:none">') .'
'; } } else { echo '
'; if(! empty($row["param_select_buy"])) { foreach($row["param_select_buy"] as $id => $rows) { $depends = $result["depends"][$id]; echo '
'.$depends["name"].':
'; } } echo '
'.$row["error"] : ' style="display:none">').'
'; } return TRUE; } }