Your IP : 216.73.216.170


Current Path : /var/www/iplanru/data/www/iplan.5018.vps.agava.net/administrator/components/com_mover/
Upload File :
Current File : /var/www/iplanru/data/www/iplan.5018.vps.agava.net/administrator/components/com_mover/mover3.php

<?php
//ini_set('display_errors',1);error_reporting(E_ALL);

$js_temp=' {
	"d8124a62-ceab-4c9d-a6af-b49b5b0d9230":  {
		"0":  {
			"value": "<p>teaser<\/p>"
		}
	},
	"dd7ab764-3a30-403a-a2f0-ee7fcc08a2a8":  {
		"0":  {
			"value": "<p>full<\/p>"
		}
	},
	"682ee4d8-36b4-4dfe-aca5-7ee505e18e5d":  {
		"file": "images\/apply_f2.png",
		"title": "",
		"link": "",
		"target": "0",
		"rel": "",
		"lightbox_image": "",
		"spotlight_effect": "",
		"caption": "",
		"width": 32,
		"height": 32
	}
}';

$js_param_temp=' {
	"metadata.title": "",
	"metadata.description": "",
	"metadata.keywords": "",
	"metadata.robots": "",
	"metadata.author": "",
	"config.enable_comments": "1",
	"config.primary_category": "12"
}';


defined( '_JEXEC' ) or die( 'Restricted access' );

$date = date("Y-m-d");
$date_time = date("Y-m-d H:i:s");
$db =&JFactory::getDBO();

$null_value="************************";

global $mainframe;

$Itemid	= JRequest::getInt( 'Itemid', 1, 'get' );

$h[]= '<form action="'.JRoute::_( 'index.php?option=com_mover&Itemid='.$Itemid ).'" method="POST">';



//----------------------------------------------------------------------
$h[]= '<fieldset>';
$db->setQuery('SELECT * FROM zzz_zoo_category', 0, $count);
$rows = $db->loadObjectList();
$h[]= ' Из <select name="from_cat_id">';
$h[]= '<option value="-1" selected="selected"> - Выберите категорию - ';
		$h[]= '<option value="0"';
		if ($selected_id==$row->id){$h[]= ' selected';}
		$h[]='>';
		$h[]='Без категории';		
foreach ($rows as $row)
{
	$h[]= '<option value="'.$row->id.'"';
	if ($_POST[from_cat_id]==$row->id) $h[]= ' selected';
	$h[]= '>'.$row->name;
}
$h[]= '</select>';
$h[]= ' В <select id="to_cat_id" name="to_cat_id">';	
		$h[]=ShowTree($db,0, 0, 0, 2,$_POST[to_cat_id]);	
		$h[]='</select>';		
$h[]= ' <input type="checkbox" name="save" value="1" />Сохранить';
$h[]= ' <input type="submit" value="Применить" />';
$h[]= '</fieldset>';




//----------------------------------------------------------------------
if ($_POST[from_cat_id]<>'')
{
	$h[]= '<fieldset>';
	$db->setQuery('SELECT i.*
					FROM zzz_zoo_category c, zzz_zoo_category_item ci, zzz_zoo_item i 
					WHERE ci.category_id=c.id AND ci.item_id=i.id and c.id='.$_POST[from_cat_id].' limit 0, 50', 0, $count);
		$rows = $db->loadObjectList();

	
	foreach ($rows as $row){

		$elements=json_decode($row->elements,true);
		
		$param_teaser=$elements['0b389f74-6f93-4bcd-a725-f8b654b8d3b9']['0']['value'];
		
		$param_full=$elements['890117e1-2056-461b-96c3-c7e8f4a2a98b']['0']['value'];
		
		$param_title=$row->name;
		$param_title=str_replace("«",'"',$param_title);
		$param_title=str_replace("»",'"',$param_title);
		$param_title=str_replace('"','\"',$param_title);
		$h[]= '<b>title: </b>'.$param_title.'<br>'; 			
		
		
		$param_alias=myalias($row->name).'-'.$row->id;
		$h[]= '<b>alias: </b>'.$param_alias.'<br>';	
		
		preg_match_all("~".'\<img'."(.*?)".'\/\>'."~is", $param_full, $m);  $m=$m[1][0];
		preg_match_all("~".'src\=\"'."(.*?)".'"'."~is", $m, $m);  $m=$m[1][0];
		if(!file_exists('../'.$m))$h[]=$null_value;
		$h[]= '<img src="'.JRoute::_( '../'.$m ).'" align="right"  width=100 /><br>';
		$param_path_image=$m;
		
		//$param_teaser=strip_tags($param_teaser,'<p><a><br><h1><h2><h3><h4><h5><h6><ul><li>');
		$h[]= '<b>teaser: </b>'.$param_teaser.'<br>';	

		$h[]= '<b>full: </b>'.mb_substr(strip_tags($param_full),0,50).' ... '.mb_substr(strip_tags($param_full),-50,50).'<br>';	
		
		
		
		
		//save---------------------------------
		if ($_POST['save']=='1' and $_POST[to_cat_id]<>'' and mvGetValue($db,'val','SELECT id val FROM #__zoo_item WHERE alias="'.$param_alias.'"')=='')
		{			
			$js=json_decode($js_temp,true);
			
			$js['d8124a62-ceab-4c9d-a6af-b49b5b0d9230']['0']['value']=$param_teaser;
			$js['dd7ab764-3a30-403a-a2f0-ee7fcc08a2a8']['0']['value']=$param_full;
			$js['682ee4d8-36b4-4dfe-aca5-7ee505e18e5d']['file']=$param_path_image;
			
			$js_text=json_encode($js, JSON_FORCE_OBJECT);
			$js_text=str_replace("\\","\\\\",$js_text);
			$js_text=str_replace('"','\"',$js_text);
			
			
			
			$par=json_decode($js_param_temp,true);
			$par['metadata.title']=$param_title;
			$par['config.primary_category']=$_POST[to_cat_id];
			$par['metadata.description']=$param_teaser;
			
			$par=json_encode($par, JSON_FORCE_OBJECT);
			$par=str_replace("\\","\\\\",$par);
			$par=str_replace('"','\"',$par);
			

			$query = "INSERT INTO #__zoo_item
					(id,application_id,type,name,alias,
					created,modified,modified_by,publish_up,publish_down,
					priority,hits,state,access,created_by,
					created_by_alias,searchable,elements,params)
				VALUES
					(NULL, 2, \"page\", \"{$param_title}\", \"{$param_alias}\",
					\"{$row->created}\", \"{$row->modified}\", 949, '0000-00-00 00:00:00', '0000-00-00 00:00:00', 
					0, {$row->hits}, 1, 1, 949,
					'', 1, \"{$js_text}\", \"{$par}\");";
						
			$db->setquery($query);$b=$db->query($query);
			if (!$b) $h[]= '<span style="color:red;">Ошибка при сохранении материала в базу данных!</span><br>';
			
			if (empty($js_real))
			{
				$item_id=mvGetValue($db,'val','SELECT id val FROM #__zoo_item WHERE alias="'.$param_alias.'"');
				
				
				//save cat
				if (!empty($item_id) and !empty($_POST[to_cat_id])){		
					$query = "INSERT INTO #__zoo_category_item (category_id, item_id)
										VALUES (\"{$_POST[to_cat_id]}\", \"{$item_id}\");";
								$db->setquery($query);$b=$db->query($query);
					if (!$b){
						$h[]= '<span style="color:red;">Ошибка при сохранении категории в базу данных!</span><br>';
					}
					else{
						$h[]= '<span style="color:green;">Категория удачно сохранена в базу данных</span><br>';
					}
				}
				else{
					$h[]= '<span style="color:red;">Отсутствуют данные для сохранения категории!</span><br>';
				}
				
				//tags
				if (!$b){
					$h[]= '<span style="color:red;">Ошибка при сохранении записи в базу данных!</span><br>';
				}
				else{
					$h[]= '<span style="color:green;">Запись удачно сохранена в базу данных</span><br>';
					
					
					
					if (count($kw)<>0){
						if (!empty($item_id)){
							foreach ($kw as $kword){
								$word=trim($kword);
								if (mvGetValue($db,'val','SELECT item_id val FROM #__zoo_tag WHERE item_id="'.$item_id.'" and name="'.$word.'"')==''){
									$query = "INSERT INTO #__zoo_tag (item_id,name)
										VALUES (\"{$item_id}\", \"{$word}\");";
									$db->setquery($query);$b=$db->query($query);
								}
								if (!$b)
									$h[]= '<span style="color:red;">Ошибка при сохранении ключевого слова в базу данных!</span><br>';
								else
									$h[]= '<span style="color:green;">Ключевое слово удачно сохранено в базу данных</span><br>';
							}
						}
						else{
							$h[]= '<span style="color:red;">Item_id пустой!</span><br>';
						}
					}
					else{
						$h[]= '<span style="color:red;">Ключевые слова отсутствуют!</span><br>';
					}
				}
			}
				
		
		}
		$h[]= '<hr>';	
	
	}
	$h[]= '</fieldset>';
	
	
	
	
}




$h[]= '</form>';


echo implode("\r\n",$h);


function ShowTree($db,$ParentID, $lvl, $id_cat, $id_app, $selected_id) 
{
	global $lvl; 
	$lvl++; 
	$hf='';
	$count='';	
	$db->setQuery("SELECT * FROM #__zoo_category 
									WHERE parent=".$ParentID." and application_id=".$id_app."  
									ORDER BY ordering", 0, $count);
	$rows = $db->loadObjectList();
	foreach ($rows as $row)
	{
		$hf .= '<option value="'.$row->id.'"';
		if ($selected_id==$row->id){$hf .= ' selected';}
		$hf.='>';
		for ($i=2;$i<=$lvl;$i++){$hf.='--';}

		$hf.=$row->name;
		$hf.=ShowTree($db,$row->id, $lvl, $id_cat, $id_app,$selected_id); 		
	}
	$lvl--;
	return $hf;
}	


function mvGetValue($db,$field,$sql)
{
	$count='';
	$ret='';
	$db->setQuery($sql, 0, $count);
	$rows = $db->loadObjectList();
	if (count($rows)<>0)
	foreach ($rows as $row)
		{$ret=$row->$field;};
	return $ret;
}

function myalias($str)
{
	$str=GetInTranslit($str);
	$str=strtolower(substr(trim(preg_replace('/[^0-9a-zA-Z]+/','-',$str),'-'),0,63));
	return $str;
}

function GetInTranslit($string) {
	$replace=array(
		"'"=>"", "`"=>"",
		"а"=>"a","А"=>"a", "б"=>"b","Б"=>"b", "в"=>"v","В"=>"v",
		"г"=>"g","Г"=>"g", "д"=>"d","Д"=>"d", "е"=>"e","Е"=>"e",
		"ж"=>"zh","Ж"=>"zh", "з"=>"z","З"=>"z", "и"=>"i","И"=>"i",
		"й"=>"y","Й"=>"y", "к"=>"k","К"=>"k", "л"=>"l","Л"=>"l",
		"м"=>"m","М"=>"m", "н"=>"n","Н"=>"n", "о"=>"o","О"=>"o",
		"п"=>"p","П"=>"p", "р"=>"r","Р"=>"r", "с"=>"s","С"=>"s",
		"т"=>"t","Т"=>"t", "у"=>"u","У"=>"u", "ф"=>"f","Ф"=>"f",
		"х"=>"h","Х"=>"h", "ц"=>"c","Ц"=>"c", "ч"=>"ch","Ч"=>"ch",
		"ш"=>"sh","Ш"=>"sh", "щ"=>"sch","Щ"=>"sch", "ъ"=>"","Ъ"=>"",
		"ы"=>"y","Ы"=>"y", "ь"=>"","Ь"=>"", "э"=>"e","Э"=>"e",
		"ю"=>"yu","Ю"=>"yu", "я"=>"ya","Я"=>"ya", "і"=>"i","І"=>"i",
		"ї"=>"yi","Ї"=>"yi", "є"=>"e","Є"=>"e"
	);
	return $str=iconv("UTF-8","UTF-8//IGNORE",strtr($string,$replace));
}


?>