(int)$id), 'dogs')) { echo ErrMsg($if['err_dog_not_selected']); exit; }; if(Whois($id,"dogs") == $userid || is_admin($userid)) $isrightuser = TRUE; elseif(!$id && $userid && ($_REQUEST[update] == "main")) // adding new dog $isrightuser = TRUE; else $isrightuser=FALSE; // обновление информации через загрузку - фото и снимки if(isset($_REQUEST[update]) && $isrightuser) switch($_REQUEST[update]) { case "documents": $docid = (int)$_REQUEST[docid]; $descr = Shield($_REQUEST[descr]); $newf = $_FILES[newf][tmp_name]; if(!$docid) { $dta = mysql_query("LOCK TABLE docs"); $tmpid = data_select(array('MAX(id)' => 'maxid'), FALSE, "docs"); $docid = $tmpid['maxid'] + 1; if($newf) $a = LoadPhoto($id,$docid,$newf,6); if(!$a) if(!mysql_query("INSERT INTO docs(id,dogid,descr) VALUES($docid,$id,\"$descr\")")) { $errstr .= mysql_error(); $res = unlink("docs/$id-$docid.jpg"); unset($docid); } } else { if($newf) $a = LoadPhoto($id,$docid,$newf,6); if(!$a) if(!mysql_query("UPDATE docs SET descr=\"$descr\" WHERE id=$docid")) { $errstr .= mysql_error(); } } UpdateDate($id); break; case "xrays": $newhd = $_FILES[newhd][tmp_name]; $newed = $_FILES[newed][tmp_name]; if($newhd) $errstr .= LoadPhoto($id,$_REQUEST[app],$newhd,2); if($newed) $errstr .= LoadPhoto($id,$_REQUEST[app],$newed,3); DogJointPicsUpd($id); UpdateDate($id); break; case "photo": foreach($_FILES[newfoto][tmp_name] AS $app => $nfoto) { if($nfoto) { if($a = LoadPhoto($id,$app,$nfoto)) $errstr .= "ФОТО $app НЕ ЗАГРУЖЕНО: $a !"; if($row = data_select("value", array("dogid" => $id, "pid" => (int)$app), "fotorights")) $query = "UPDATE fotorights SET value=\"".Shield(xs($vl[$app]))."\" WHERE dogid=$id AND pid=".(int)$app; else $query = "INSERT INTO fotorights VALUES(".(int)$id.", ".(int)$app.", \"".Shield(xs($vl[$app]))."\")"; if(!mysql_query($query)) $errstr.= "

".mysql_error()."

"; } } DogPhotoUpd($id); UpdateDate($id); break; case "main": $r = $_REQUEST[r]; // проверки на безопасность ввода от скриптов $r['name'] = Shield(xs($r['name'])); $r['engname'] = Shield(xs($r['engname'])); $r['name'] = mb_convert_case($r['name'], MB_CASE_UPPER, "UTF-8"); $r['engname'] = mb_convert_case($r['engname'], MB_CASE_UPPER, "UTF-8"); $r['rkf'] = Shield($r['rkf']); $r['addrkf'] = Shield($r['addrkf']); $r['tavro'] = Shield($r['tavro']); $r['breeder'] = Shield($r['breeder']); $r['owner'] = Shield($r['owner']); $r['address'] = Shield($r['address']); $r['phone'] = Shield($r['phone']); $r['website'] = Shield($r['website']); $r['email'] = Shield($r['email']); $r['comments'] = Shield($r['comments']); $r['kennelid'] = (int)$r['kennelid']; $r['okid'] = (int)$r['okid']; $r['countryid'] = (int)$r['countryid']; $r['cid'] = (int)$r['cid']; $r['teethid'] = (int)$r['teethid']; if(!$r['height']) $r['height'] = "0"; else $r['height'] = xz($r['height']); if(!$r['weight']) $r['weight'] = "0"; else $r['weight'] = xz($r['weight']); $r['sex'] = (int)$r['sex']; $r['fatherid'] = (int)$r['fatherid']; $r['motherid'] = (int)$r['motherid']; if(is_admin($userid)) $r['sale'] = (($r['sale'] == "on")?"1":"0"); $dbirth_days = $_REQUEST[dbirth_days]; $dbirth_months = $_REQUEST[dbirth_months]; $dbirth_years = $_REQUEST[dbirth_years]; $r['dbirth'] = "$dbirth_days.$dbirth_months.$dbirth_years"; $ddeath_days = $_REQUEST[ddeath_days]; $ddeath_months = $_REQUEST[ddeath_months]; $ddeath_years = $_REQUEST[ddeath_years]; $r['ddeath'] = "$ddeath_days.$ddeath_months.$ddeath_years"; //проверка - если предыдущая введенная собака в базу с идентичной кличкой - не сохранять ! $dchk = mysql_fetch_array(mysql_query("SELECT id, name FROM dogs ORDER BY id DESC LIMIT 1")); if(!$id && ($dchk['name'] == $r['name'])) { echo ErrMsg($if['err_already_enter']); $id = $dchk['id']; break; } if(!$id) { $dta = mysql_query("LOCK TABLE dogs"); $tmpid = data_select(array('MAX(id)' => 'maxid'), FALSE, "dogs"); $id = $tmpid['maxid'] + 1; $act = is_admin($userid)?1:0; if(!mysql_query("INSERT INTO dogs(id,active) VALUES($id,$act)")) { unset($id); exit; } } if($id) { $query = "UPDATE dogs SET "; $query .= "name = \"{$r['name']}\", "; $query .= "engname = \"{$r['engname']}\", "; $query .= "kennelid = \"{$r['kennelid']}\", "; $query .= "okid = \"{$r['okid']}\", "; $query .= "countryid = \"{$r['countryid']}\", "; $query .= "datebirth = \"".ConvertDate($r['dbirth'],TRUE)."\", "; $query .= "datedeath = \"".ConvertDate($r['ddeath'],TRUE)."\", "; $query .= "cid = \"{$r['cid']}\", "; $query .= "teethid = \"{$r['teethid']}\", "; $query .= "height = \"{$r['height']}\", "; $query .= "weight = \"{$r['weight']}\", "; $query .= "sex = \"{$r['sex']}\", "; $query .= "rkf = \"{$r['rkf']}\", "; $query .= "addrkf = \"{$r['addrkf']}\", "; $query .= "fatherid = \"{$r['fatherid']}\", "; $query .= "motherid = \"{$r['motherid']}\", "; $query .= "owner = \"{$r['owner']}\", "; $query .= "breeder = \"{$r['breeder']}\", "; $query .= "tavro = \"{$r['tavro']}\", "; $query .= "address = \"{$r['address']}\", "; $query .= "phone = \"{$r['phone']}\", "; $query .= "website = \"{$r['website']}\", "; $query .= "email = \"{$r['email']}\", "; $query .= "comments = \"{$r['comments']}\", "; $query .= (is_admin($userid)?"sale = {$r['sale']}, ":""); $query .= "userid = \"".(Is_admin($userid)?$r['userid']:$userid)."\""; $query .= " WHERE id=$id"; SQLConn(); if(!mysql_query($query) || !$id) $errstr .= mysql_error(); else { $mainfoto = $_FILES[mainfoto][tmp_name]; if($mainfoto) LoadPhoto($id,0,$mainfoto); UpdateDate($id); DogPhotoUpd($id); // СОХРАНЕНИЕ РОДУХИ $ar = array(); $ar = PedigreeArray($r['fatherid'], 1, $ar); $ar = PedigreeArray($r['motherid'], 1, $ar); PedigreeDBupdate($id, $ar); PedigreeUpdateOffsprings($id); } } break; case "photodel": // if(is_admin($userid)) { if($isrightuser) { $n = (int)$_REQUEST[n]; if(($n >= 0) && (file_exists("ph/$id-$n.jpg"))) $res = unlink("ph/$id-$n.jpg"); if(!$res) $errstr .= "Не удалось удалить фото !!!"; DogPhotoUpd($id); } break; case "docdel": if(is_admin($userid)) { $docid = (int)$_REQUEST[docid]; if($docid >= 0) { if(mysql_query("DELETE FROM docs WHERE id=$docid LIMIT 1")) { $res = unlink("docs/$id-$docid.jpg"); if(!$res) $errstr .= "Не удалось удалить файл скана документа !!!"; } else $errstr .= mysql_error(); } } break; case "descrdel": if(is_admin($userid)) { $descrid = (int)$_REQUEST[descrid]; if($descrid >= 0) { if(!mysql_query("DELETE FROM descr WHERE id=$descrid LIMIT 1")) $errstr .= mysql_error(); } } break; case "xraysdel": if(is_admin($userid)) { $xraytype = Shield($_REQUEST[xraytype]); if(($xraytype == "hd") && file_exists("xrays/$id-hd.jpg")) { $res = unlink("xrays/$id-hd.jpg"); if(!$res) $errstr .= "Не удалось удалить файл снимка суставов !"; } if(($xraytype == "ed") && file_exists("xrays/$id-ed.jpg")) { $res = unlink("xrays/$id-ed.jpg"); if(!$res) $errstr .= "Не удалось удалить файл снимка суставов !"; } DogJointPicsUpd($id); } break; } $pageid = 1; if(!IsActive($id) && !$isrightuser) exit; // --- ЧТЕНИЕ ИНФОРМАЦИИ О СОБАКЕ --- $row = data_select('date_up', array('dogid' => (int)$id), 'upd'); $dateupd = substr($row['date_up'],0,4)."-".substr($row['date_up'],4,2)."-".substr($row['date_up'],6,2); $row = data_select(array('datebirth' => 0, 'sex' => 0, 'fatherid' => 0, 'motherid' => 0, 'dateupd' => 0, 'titlestr' => 0, 'comments' => 0), array('id' => $id), 'dogs'); //$dateupd = $row['dateupd']; if($errstr) $outtext .= ErrMsg($errstr); switch($_REQUEST[screen]) { case 1: // СТРАНИЦА ОСНОВНОЙ ИНФОРМАЦИИ О СОБАКЕ default: $outtext .= ""; $outtext .= jsSaveDogAll($id); // --- ЗДОРОВЬЕ --- // if(($healthstr = ShowHealth($id, ", ")) || $isrightuser) // $outtext .= DictBlock($if['title_health'].($isrightuser?" [{$if['common_edit']}]":""), $healthstr, 'dog_health'); // --- ТИТУЛЫ --- if(($titlestr = ShowTitles($id,", ")) || $isrightuser) $outtext .= DictBlock($if['title_titles'].($isrightuser?" [{$if['common_edit']}]":""), $titlestr, 'dog_titles'); // --- ПРОЧИЕ ДОСТИЖЕНИЯ --- if($row['titlestr'] || $isrightuser) $outtext .= DictBlock($if['other_achievments'].($isrightuser?" [{$if['common_edit']}]":""), $row['titlestr'], 'dog_titlestr'); // --- СЕРТИФИКАТЫ --- if(($certstr = ShowCert($id,", ")) || $isrightuser) $outtext .= DictBlock($if['title_certificates'].($isrightuser?" [{$if['common_edit']}]":""), $certstr, 'dog_cert'); // --- ДРЕССИРОВКА --- // if(($studystr = ShowStudy($id,", ")) || $isrightuser) // $outtext .= DictBlock($if['title_study'].($isrightuser?" [{$if['common_edit']}]":""), $studystr, 'dog_study'); // --- КОММЕНТАРИИ --- if($row['comments'] != "" && $isrightuser) $outtext .= DictBlock($if['common_comments'], $row['comments']); // -- РОДОСЛОВНАЯ (НАЧАЛО) // собственно строка родословной - заголовок таблицы выводим отдельно !!! if(is_admin($userid)) { $pdarr = PdCount($id,4,FALSE); $pdarr = PdColors($pdarr); $pdstr = Pedigree($row['fatherid'],3,array('ph' => TRUE),$pdarr).Pedigree($row['motherid'],3,array('ph' => TRUE),$pdarr); } else { $pdarr = PdCount($id,3,FALSE); $pdarr = PdColors($pdarr); $pdstr = Pedigree($id,3,array('ph' => TRUE),$pdarr); } // --- ИНБРИДИНГИ --- if(!$ilevel) $ilevel = 3; $fib_array = InbreedArray($row, $ilevel, 1); $inbreed = InbreedStr(InbreedSort($fib_array), "
", TRUE); if($inbreed) $outtext .= DictBlock($if['common_inbreeding'], $inbreed); // --- РОДОСЛОВНАЯ (ОКОНЧАНИЕ) --- $outtext .= DictBlock($if['dog_title_ped'], "".Substr($pdstr,0,Strlen($pdstr)-4)."
"); // --- СОРЕВНОВАНИЯ --- // $comptitle = $if['title_competition']. // ($isrightuser?"[{$if['common_add']}]":""); // if(($compstr = DogComp($id, $isrightuser)) || $isrightuser) // $outtext .= DictBlock($comptitle, $compstr, 'dog_comp'); // --- ФОТОГРАФИИ - ГОРИЗОНТАЛЬНО --- if(($outph = DogPhotos($id, $userid)) || $isrightuser) $outtext .= DictBlock($if['title_photo'].($isrightuser?"[{$if['common_edit']}]":""), "$outph
", "dog_photo"); // --- ПРОМЕРЫ --- // if(($sizestr = DogSizes($id)) || $isrightuser) // $out2 .= "

".$if['title_sizes'].($isrightuser?"[{$if['common_edit']}]":"")."

$sizestr
"; // --- ФОТОГРАФИИ (СБОКУ) --- /* if(($outph = DogPhotosV($id, $userid)) || $isrightuser) $out2 .= InfoBlock(strtoupper($if['title_photo']).($isrightuser?"[{$if['common_edit']}]":""), FALSE, "$outph
", 15, "dog_photo"); */ // --- СНИМКИ СУСТАВОВ --- // $delhd = is_admin($userid)?" [{$if['common_delete']}]":""; // $deled = is_admin($userid)?" [{$if['common_delete']}]":""; // $outxr .= (file_exists("xrays/$id-hd.jpg")?("".ShowDogXrays($id,140,1)."$delhd"):""); // $outxr .= (file_exists("xrays/$id-ed.jpg")?("".ShowDogXrays($id,140,2)."$deled"):""); // if($outxr || $isrightuser) // $out2 .= InfoBlock($if['title_xrays'].($isrightuser?"[{$if['common_edit']}]":""), FALSE, // "$outxr
\n", 15, 'dog_xrays'); // --- АРХИВ ДОКУМЕНТОВ --- if(($outdocs = DogDocuments($id, $userid)) || $isrightuser) $out2 .= InfoBlock($if['title_docscans'].($isrightuser?"[{$if['common_add']}]":""), FALSE, $outdocs, 15, 'dog_documents'); // --- ОПИСАНИЯ --- $descrstr = ShowDescr($id, $userid); if($descrstr || $isrightuser) $outtext .= DictBlock($if['title_descr']. ($isrightuser?"[{$if['common_add']}]":""), $descrstr, 'dog_descr'); $query=" SELECT d.name AS dogname, d.sex, d.blockshows, shr.showid, sh.showdate, ".($iseng?"shst.engname":"shst.name")." AS showstatus, ".($iseng?"shcl.engname":"shcl.name")." AS showclass, CONCAT('', sh.name, '') AS showname, ".($iseng?"cty.engname":"cty.name")." AS countryname, sh.judgeid, shr.classid, shr.markid, shr.certid, shr.place, shr.titleid, shr.winnerid, shr.commentary, sh.statusid FROM dogs AS d, shows AS sh, showresults AS shr, countries AS cty, showstatus AS shst, showclass AS shcl WHERE d.id={$id} AND d.id=shr.dogid AND sh.id=shr.showid AND sh.countryid=cty.id AND sh.active > 0 AND shst.id=sh.statusid AND shcl.id=shr.classid ORDER BY sh.showdate DESC "; $dta = mysql_query($query); while($r = mysql_fetch_array($dta)) { if($r['blockshows']) break; $mark = ShowNames($r['markid'],"marktype",$iseng); $cert = ShowNames($r['certid'],"showcert",$iseng); if($cert <> "") $cert = "
$cert"; $showname = $r['showname']; // подтянем результаты бэстов $rb = BISResults($r['showid']); if(($title = ShowNames($r['titleid'],"showtitles",$iseng)) || $rb[$id]) $title = "$title ".($rb[$id]?("
".$rb[$id]):"")."
"; else $title = ""; $winner = ShowNames($r['winnerid'],"titlestype",$iseng); if($winner <> "") $winner = "
$winner"; // собак в классе $nmclass = mysql_fetch_array(mysql_query("SELECT COUNT(shr.dogid) FROM showresults AS shr,dogs AS d WHERE shr.showid={$r['showid']} AND d.id=shr.dogid AND classid={$r['classid']} AND d.sex={$r['sex']}")); // собак на выставке $nms_s = mysql_fetch_array(mysql_query("SELECT COUNT(shr.dogid) FROM showresults AS shr,dogs AS d WHERE shr.showid={$r['showid']} AND d.id=shr.dogid AND d.sex={$r['sex']}")); $nms = mysql_fetch_array(mysql_query("SELECT COUNT(shr.dogid) FROM showresults AS shr,dogs AS d WHERE shr.showid={$r['showid']} AND d.id=shr.dogid")); if($r['statusid'] == 4 || $r['statusid'] == 5) $bcl = "#f0f3f8"; else $bcl = "#FFFFFF"; $shstr .= ""; $shstr .= " ".ConvertDate($r['showdate']).""; $shstr .= " $showname"; if(file_exists("shows/$id-{$r['showid']}.jpg")) $shstr .= "
"; $shstr .= " "; $shstr .= " {$r['countryname']}"; $shstr .= " {$r['showclass']}"; $shstr .= " ".$nmclass[0].""; $shstr .= " ".$nms_s[0]." / ".$nms[0].""; $shstr .= ""; $shstr .= ""; $shstr .= " {$r['showstatus']}"; $shstr .= " {$r['place']}, $mark
$title$cert$winner".($r['commentary']?"
{$r['commentary']}":"").""; $shstr .= ""; $shstr .= ""; $shstr .= " ".ShowNames($r['judgeid'], "showjudges", $iseng).""; $shstr .= ""; }; if($r['blockshows']) $outtext .= $if['dog_blockshows']; else { $shtmp = $shstr; $shstr = "\n"; $shstr .= ""; $shstr .= " "; // Дата выставки $shstr .= " "; // Название выставки $shstr .= " "; // Статус $shstr .= " "; // Класс $shstr .= " "; $shstr .= " "; $shstr .= ""; $shstr .= ""; $shstr .= " "; // Название выставки $shstr .= " "; // Результаты $shstr .= ""; $shstr .= ""; $shstr .= " "; // Эксперт $shstr .= ""; $shstr .= $shtmp; $shstr .= "
{$if['shows_showdate']}{$if['shows_name']}{$if['common_country']}{$if['shows_class']}{$if['shows_numinclass']}{$if['shows_numonshow']}
{$if['shows_status']}{$if['shows_result']}
{$if['shows_judge']}
"; if((mysql_num_rows($dta) > 0) || $isrightuser) $outtext .= InfoBlock($if['title_showresults'],"",$if['common_dog_showtext'].$shstr); } break; case 2: // СТРАНИЦА ОТОБРАЖЕНИЯ ПОТОМКОВ (СО СТАТИСТИКОЙ) //Общее количество потомков if($dta = mysql_query("SELECT COUNT(id) AS cnt FROM dogs WHERE fatherid=".(int)$id." OR motherid=".(int)$id)) $r = mysql_fetch_array($dta); $offcount = $r['cnt']; //Обсчет титулов $query_t = " SELECT ".(!$iseng?"tt.name":"tt.engname AS name").", tt.color, SUM(dt.count) AS cnt FROM dogs AS d, titles AS dt, titlestype AS tt WHERE d.id=dt.dogid AND dt.tid=tt.id AND (d.fatherid=".(int)$id." OR d.motherid=".(int)$id.") AND tt.rang <> 60 GROUP BY tt.name ORDER BY tt.rang "; if($dta_t = mysql_query($query_t)) while($rt = mysql_fetch_array($dta_t)) $titlestr .= ($titlestr?", ":"")."{$rt['cnt']} x {$rt['name']}"; // ПРОВЕРКИ $dtah = mysql_query("SELECT * FROM hd"); while($rh = mysql_fetch_array($dtah)) $ah[$rh['id']] = $rh; $dtah = mysql_query("SELECT * FROM ed"); while($rh = mysql_fetch_array($dtah)) $eh[$rh['id']] = $rh; $res_hd = array('1' => 0, '2' => 0, '3' => 0, '4' => 0, '5' => 0); $res_ed = array('1' => 0, '2' => 0, '3' => 0, '4' => 0, '5' => 0); $query_h = " SELECT COUNT( dh.dogid ) AS cnt, dh.hd_left, dh.hd_right, dh.ed_left, ed_right FROM dogs AS d, dogs_hd AS dh WHERE d.id = dh.dogid AND (d.fatherid =".(int)$id." OR d.motherid =".(int)$id.") GROUP BY dh.hd_left, dh.hd_right, dh.ed_left, ed_right "; if($dtah = mysql_query($query_h)) while($rh = mysql_fetch_array($dtah)) { $res_hd[MAX($ah[$rh['hd_left']]['syn'], $ah[$rh['hd_right']]['syn'])] += $rh['cnt']; $res_ed[MAX($rh['ed_left'], $rh['ed_right'])] += $rh['cnt']; } foreach($res_hd AS $rid => $reshd) if($rid>0 && $reshd>0) { $hdstr .= ($hdstr?"
":"")."$reshd x HD-".$ah[$rid]['name']; $hdcount += $reshd; } if($hdstr && $if['id']==1) $hdstr = "$hdcount/$offcount проверено - ".Round($hdcount/$offcount*100)."%
".$hdstr; foreach($res_ed AS $rid => $resed) if($rid>0 && $resed>0) { $edstr .= ($edstr?"
":"")."$resed x ED-".$eh[$rid]['name']; $edcount += $resed; } if($edstr && $if['id']==1) $edstr = "$edcount/$offcount проверено - ".Round($edcount/$offcount*100)."%
".$edstr; // Вывод потомков по пометам $outtext .= "

{$if['title_offsprings']}:

"; $outtext .= "
{$if['title_titles']}
"; $outtext .= "
$titlestr
"; $outtext .= "
{$if['common_tests']}
"; $outtext .= "
$hdstr
"; $outtext .= "
$edstr
"; $i = 0; $query2 = "SELECT DISTINCT fatherid, motherid, datebirth FROM dogs WHERE active=1 AND (fatherid=".(int)$id." or motherid=".(int)$id.") ORDER BY datebirth"; if($dta2 = mysql_query($query2)) while($r2 = mysql_fetch_array($dta2)) { $tstr = "{$if['common_litter']} ".($i = $i + 1)." - ".ConvertDate($r2['datebirth']); if(!$r2['fatherid'] || !$r2['motherid']) $tstr .= " - {$if['litter_notfull']}"; $query = "SELECT dogs.id as dogid,dogs.name as dogname,dogs.sex,dogs.datebirth,dogs.fatherid,dogs.motherid,dogs.rkf, dogs.cid, dogs.countryid, dogs.userid, dogs.tavro FROM dogs WHERE dogs.active=1 AND ".($r2['fatherid']?"dogs.fatherid={$r2['fatherid']}":"(dogs.fatherid IS NULL OR dogs.fatherid=0)")." AND ".($r2['motherid']?"dogs.motherid={$r2['motherid']}":"(dogs.motherid IS NULL OR dogs.motherid=0)")." AND ".($r2['datebirth']?"dogs.datebirth='{$r2['datebirth']}'":"dogs.datebirth IS NULL")." ORDER BY datebirth, fatherid, motherid, sex DESC"; if($dta = mysql_query($query)) $outtext .= "

". $tstr. "
".mysql_num_rows($dta)." {$if['common_dogs']}
". "

".FormAltList($dta, '610px'); } if($row['sex'] == 2) { // для кобелей добавим в боковую колонку активных продолжателей $qa = "SELECT d.id, COUNT(pd.id) as cnt FROM dogs AS d, pd WHERE d.id = pd.pid AND pd.level =1 AND d.sex =2 AND d.fatherid = {$id} GROUP BY d.name ORDER BY COUNT(pd.id) DESC LIMIT 0,5"; $dta = mysql_query($qa); while($r = mysql_fetch_array($dta)) $outtext2 .= DogBlock($r['id'], "{$r[1]} {$if['dog_title_offsprings']}"); $out2 .= InfoBlock($if['title_successors'], "", $outtext2, 48); } break; case 3: // СТРАНИЦА РОДСТВЕННЫХ СВЯЗЕЙ СОБАКИ if($row['fatherid']) $fid=$row['fatherid']; else $fid="NULL"; if($row['motherid']) $mid=$row['motherid']; else $mid="NULL"; // выводим однопометники if(($fid > 0) && ($mid > 0)) { $query = "SELECT dogs.id as dogid,dogs.name as dogname,dogs.sex,dogs.datebirth,dogs.fatherid,dogs.motherid,dogs.rkf, dogs.cid, dogs.countryid, dogs.userid, dogs.tavro FROM dogs WHERE dogs.active=1 AND fatherid=".(int)$fid." AND motherid=".(int)$mid." AND datebirth='".$row['datebirth']."' AND dogs.id<>".(int)$id." ORDER BY datebirth, sex DESC"; if($dta = mysql_query($query)) if(mysql_num_rows($dta) > 0) $outtext .= "

". $if['title_littermates']. "
".mysql_num_rows($dta)." {$if['common_dogs']}
". "

". FormAltList($dta, '610px'); } // выводим Сибсов if(($fid > 0) && ($mid > 0)) { $query = "SELECT dogs.id as dogid,dogs.name as dogname,dogs.sex,dogs.datebirth,dogs.fatherid,dogs.motherid,dogs.rkf, dogs.cid, dogs.countryid, dogs.userid, dogs.tavro FROM dogs WHERE dogs.active=1 AND fatherid=".(int)$fid." AND motherid=".(int)$mid." AND datebirth<>'".$row['datebirth']."' AND dogs.id<>".(int)$id." ORDER BY datebirth, sex DESC"; if($dta = mysql_query($query)) if(mysql_num_rows($dta) > 0) $outtext .= "

". $if['title_siblings']. "
".mysql_num_rows($dta)." {$if['common_dogs']}
". "

". FormAltList($dta, '610px'); } // Выводим полу-сибсов по отцу if($fid > 0) { $query = "SELECT dogs.id as dogid, dogs.name as dogname, dogs.sex, dogs.datebirth, dogs.fatherid, dogs.motherid, dogs.rkf, dogs.cid, dogs.countryid, dogs.userid, dogs.tavro FROM dogs WHERE dogs.active=1 AND fatherid=".(int)$fid." ". (($mid>0)?"AND motherid<>".(int)$mid:"")." AND dogs.id<>".(int)$id." ORDER BY datebirth"; if($dta = mysql_query($query)) if(mysql_num_rows($dta) > 0) $outtext .= "

". $if['title_halfsiblings_sire']. "
".mysql_num_rows($dta)." {$if['common_dogs']}
". "

". FormAltList($dta, '610px'); } // Выводим полу-сибсов по матери if($mid > 0) { $query = "SELECT dogs.id as dogid, dogs.name as dogname, dogs.sex, dogs.datebirth, dogs.fatherid, dogs.motherid, dogs.rkf, dogs.cid, dogs.countryid, dogs.userid, dogs.tavro FROM dogs WHERE dogs.active=1 AND motherid=".(int)$mid." ". (($fid>0)?"AND fatherid<>".(int)$fid:"")." AND dogs.id<>".(int)$id." ORDER BY datebirth"; if($dta = mysql_query($query)) if(mysql_num_rows($dta) > 0) $outtext .= "

". $if['title_halfsiblings_dame']. "
".mysql_num_rows($dta)." {$if['common_dogs']}
". "

". FormAltList($dta, '610px'); } break; case 4: // СТРАНИЦА ПОДБОРА ПАРТНЕРА ДЛЯ СОБАКИ $partnerid = (int)$_REQUEST[partnerid]; if(!$partnerid) $outtext .= DogPartnerForm($id); else { if($row['sex'] == 1) $ids = array ('fatherid' => $partnerid, 'motherid' => $id); else $ids = array ('fatherid' => $id, 'motherid' => $partnerid); $level = (int)$_REQUEST[level]; if(!$level || $level > 10 || $level < 3) $level = 4; $ilevel = (int)$_REQUEST[ilevel]; if(!$ilevel || $ilevel > 10 || $ilevel < 3) $ilevel = 4; if($level > 4) { $liteif = TRUE; $title = "
".DogFullName($ids['fatherid'],FALSE,FALSE, array('upper' => TRUE))." ×". "".DogFullName($ids['motherid'],FALSE,FALSE, array('upper' => TRUE))."". ": {$if['comp_pedigree_title']}"; } $pdarr = PdCount($ids['fatherid'],$level-1,FALSE,$id); $pdarr = PdCount($ids['motherid'],$level-1,$pdarr,$id); $pdarr = PdColors($pdarr); $pdstr = Pedigree($ids['fatherid'],$level-1,array('ph' => TRUE),$pdarr).Pedigree($ids['motherid'],$level-1,array('ph' => TRUE),$pdarr); $fib_array = InbreedArray($ids, $ilevel-1, 1); $inbreed = InbreedStr(InbreedSort($fib_array), "
", TRUE); if($inbreed) $outtext .= DictBlock($if['common_inbreeding'], $inbreed); $outtext .= DictBlock($if['comp_pedigree_title'], "".Substr($pdstr,0,Strlen($pdstr)-4)."
", 48); } break; case 5: // СТРАНИЦА ПОСТРОЕНИЯ РАСШИРЕННОЙ РОДОСЛОВНОЙ СОБАКИ $level = (int)$_REQUEST[level]; if(!$level) $outtext .= DogPedigreeParamsForm($id); else { $liteif = TRUE; if($level < 3) $level = 3; if($level > 10) $level = 10; $ilevel = (int)$_REQUEST[ilevel]; if(!$ilevel || $ilevel > 10 || $ilevel < 3) $ilevel = 5; else $ilevel--; $row = data_select(array('fatherid' => 0, 'motherid' => 0), array('id' => (int)$id), 'dogs'); $pdarr = PdCount($id,$level,FALSE); $pdarr = PdColors($pdarr); if(!$_REQUEST[p]) $ds = array('owner' => false); else $ds = $_REQUEST[p]; $params = array('ph' => $_REQUEST[isfoto], 'size' => '7.0pt', 'font' => 'Tahoma', 'dataset' => $ds); $pdstr = Pedigree($row['fatherid'],$level-1,$params,$pdarr). Pedigree($row['motherid'],$level-1,$params,$pdarr); $fib_array = InbreedArray($row, $ilevel, 1); $inbreed = InbreedStr(InbreedSort($fib_array), "
", TRUE); $title = "".DogFullName($id,FALSE,FALSE, array('upper' => TRUE)).": {$if['pedigree_title']}"; $outped = ""; $outped .= ""; $ii = 1; while($ii<=$level) { $outped .= ""; $ii += 1; }; $outped .= ""; $outped .= "".Substr($pdstr,0,Strlen($pdstr)-4); $outped .= "
"; if($ii>10) { $outped .= "X"; $ii -=10; }; switch ($ii) { case 1: $outped .= "I"; break; case 2: $outped .= "II"; break; case 3: $outped .= "III"; break; case 4: $outped .= "IV"; break; case 5: $outped .= "V"; break; case 6: $outped .= "VI"; break; case 7: $outped .= "VII"; break; case 8: $outped .= "VIII"; break; case 9: $outped .= "IX"; break; }; $outped .= "
\n"; if($inbreed) $outtext .= DictBlock($if['common_inbreeding'], $inbreed); $outtext .= DictBlock($if['dog_title_ped'], $outped); } break; case 7: // ????????? ??????? if(!(int)$_REQUEST[side1]) { $outtext .= DogOffspringParamsForm($id); } else { $level1 = (int)$_REQUEST[level1]; $level2 = (int)$_REQUEST[level2]; $side2 = $_REQUEST[side2]; if($side2 || $level2) $query = "SELECT DISTINCT dogs.id as dogid,dogs.name as dogname,dogs.sex,dogs.datebirth,dogs.fatherid,dogs.motherid,dogs.rkf, dogs.cid, dogs.countryid, dogs.userid, dogs.tavro FROM dogs, pd AS p1, pd AS p2 WHERE dogs.active=1 ".($males?"AND dogs.sex=2":"")." AND dogs.id <> ".(int)$id." AND dogs.id = p1.id AND p1.id = p2.id AND p1.n <> p2.n AND p1.pid =$id AND p1.n < 16 ".($level1?"AND p1.level = $level1":"")." AND p2.pid =$id AND p2.n > 15 ".($level2?"AND p2.level = $level2":"")." ORDER BY datebirth"; else $query = "SELECT DISTINCT dogs.id as dogid,dogs.name as dogname,dogs.sex,dogs.datebirth,dogs.fatherid,dogs.motherid,dogs.rkf, dogs.cid, dogs.countryid, dogs.userid, dogs.tavro FROM dogs, pd AS p1 WHERE dogs.active=1 ".($males?"AND dogs.sex=2":"")." AND dogs.id <> ".(int)$id." AND dogs.id = p1.id AND p1.pid =$id ".($level1?"AND p1.level = $level1":"")." ORDER BY datebirth"; mysql_query("SET SQL_BIG_SELECTS=1"); if($dta = mysql_query($query)) if(mysql_num_rows($dta) > 0) { if(mysql_num_rows($dta) > 300) { $dta = mysql_query($query." LIMIT 0, 300"); $overload = TRUE; } $outtext .= "

". $if['offsprings']. "
".mysql_num_rows($dta)." {$if['common_dogs']}" . (($level1 && $level2)?" - {$if['common_inbreeding']}: $level1:$level2":"") . ($overload?$if['err_too_much_dogs']:"")."
". "

". FormAltList($dta, '610px'); } } break; }; if(!$liteif) { FormHeader($id,$userid, TRUE); $c1 = TitleDog($id, $isrightuser); $c1 .= "
$outtext
"; $c1 .= "
{$if['dog_last_update']} ".ConvertDate($dateupd)."     
"; if(is_admin($userid)) $c2 .= DogConfirmButton($id); $c2 .= DogInfo($id, $userid); $c2 .= "
$out2
"; TwoColumns($c1, $c2); FormEnding($userid,$id,$pageid); } else { LiteHeader($id); echo "
"; echo "
\n"; echo " $title
\n"; echo "
\n"; // echo DogLinks($id, $ish['blockshows']); echo "
\n"; echo "
\n"; echo $outtext; echo "
"; LiteEnding(); } ?>