shop->categories; $par_cats = array(); foreach($cats->category as $cat){ $attr = $cat->attributes(); $par_cats[(int)$attr->id] = array( 'id' => (int)$attr->id, 'parentId' => isset($attr->parentId) ? (int)$attr->parentId : 0 , 'title' => (string)$cat, 'seo_url' => seoTranslit::go((string)$cat) ); } //echo '
';
 //var_dump($par_cats);
 //exit;
 //breadcrumps
 if($pid > 0){
 //$bread = array();
 $ids = array();
 foreach($par_cats as $k=>$v){
   if($k == $pid or $v['parentId'] == $pid){
	//$bread[$k] = $v;
	$ids[$k] = $k;
   }
   //if($k == $pid or )
 }
 }
 if(count($ids) == 0 and $pid != 0){
	include("error.php");
 } else {
 function bread($x){
	global $par_cats;
	if($x === 0)
		return $x;
	return $x.','.bread($par_cats[$x]["parentId"]);
 }
 function arraywork($val){
	$tmp = explode(",", $val);
	return array_reverse($tmp);
 }
 /*echo '======
'; var_dump( arraywork( bread($pid)) ); //var_dump( $par_cats[$pid]["parentId"] ); echo '======
';*/ $nav = ''; $menu_output = ''; //content $content_output = ''; $lim = 20; $data_arr = $xml->shop->offers; if($pid != 0){ $y = ''; foreach($data_arr->offer as $x){ //if($pid == $x->categoryId) if(in_array($x->categoryId,$ids)) $y['offer'][] = $x; } $data_arr = (object)$y; } //print_r($data_arr); $total_prod_num = count($data_arr->offer); $number = ceil($total_prod_num/$lim); $start_prod = ($page - 1) * $lim; $end_prod = ($page * $lim) - 1; $i = 0; foreach($data_arr->offer as $offer) { //print_r($offer); if( $i >= $start_prod and $i <= $end_prod ){ $content_output .= "
"; //$content_output .= "$i"; $content_output .= "
picture)?$offer->picture:'/images/noimage.jpg')."' alt='".$offer->name."' class='img-thumbnail itmimg' />
"; $content_output .= "

".$offer->name."

"; $content_output .= "

Цена ".number_format((int)$offer->price,0,'',' ')." р.

"; $content_output .= "
"; } if($i == $end_prod) break; $i++; } // Постраничная навигация $pagination = ''; for($i = 1; $i <= $number; $i++) { // Если это произвольная страница if($page == $i) { $pagination .= "[$i]  "; } else { if( $i > ($page - 4) and $i < ($page + 4) or $i == 1 or $i == $number ){ if($i == ($page - 3)) $pagination .= "..."; $pagination .= "[$i]  "; if($i == ($page + 3)) $pagination .= "..."; } } } $h_one = isset($par_cats[$pid]["title"])?$par_cats[$pid]["title"]:'Каталог салютов'; //page output $title = isset($par_cats[$pid]["title"])?$par_cats[$pid]["title"].' каталог > BUM77.RU':'Каталог салютов';; $meta_add = ''; $content = $nav. "
". ($mcount > 0 ? "
$menu_output
". "
":"
")."

$h_one

$content_output

$pagination

". "
"; } function navigation() { $arg_list = func_get_args(); $numargs = func_num_args(); $str = ''; for ($i = 0; $i < $numargs; $i++) { $str .= ($arg_list[$i][1] ? ($arg_list[$i][0] ? '' . $arg_list[$i][1] . '' : $arg_list[$i][1] ) . ($numargs - 1 > $i && $arg_list[$i][0] ? '' : '' ) : '' ); } return $str; } class seoTranslit { static public $rustolat = array( 'жё' => 'zho', // жёлоб -> zholob 'жю' => 'zhu', // жюри -> zhuri 'чё' => 'cho', // чёлка -> cholka 'щё' => 'shcho', // щётка -> shchotka 'щ' => 'shch', 'шю' => 'shu', // парашют -> parashut 'ч' => 'ch', 'ц' => 'ts', 'х' => 'kh', 'ю' => 'yu', 'я' => 'ya', 'ё' => 'yo', 'ж' => 'zh', 'ш' => 'sh', 'а' => 'a', 'б' => 'b', 'в' => 'v', 'г' => 'g', 'д' => 'd', 'е' => 'e', 'з' => 'z', 'и' => 'i', 'й' => 'j', 'к' => 'k', 'л' => 'l', 'м' => 'm', 'н' => 'n', 'о' => 'o', 'п' => 'p', 'р' => 'r', 'с' => 's', 'т' => 't', 'у' => 'u', 'ф' => 'f', 'ъ' => '', 'ы' => 'y', 'ьо' => 'io', // бульон -> bulion 'ь' => '', 'э' => 'e', 'шё' => 'sho', // шёлк -> sholk ); static public function go($string) { $obfuscated = trim( mb_strtolower(preg_replace('/\s+/u', '-', preg_replace('/\W+/u', ' ', $string) )), '-'); $rustolat_re = '/'. implode("|", array_keys(self::$rustolat)) .'/'; return preg_replace_callback($rustolat_re, function($m){ return self::$rustolat[$m[0]];}, $obfuscated); } } $content .= '

Магазин пиротехники, Пиротехника оптом, Купить фейерверки, Петарды, Салюты, Купить петарды

'; ?>