All pastes #149607 Raw Edit

Anonymous

public text v1 · immutable
#149607 ·published 2006-08-25 23:55 UTC
rendered paste body
function getStaticNavigation($document, $area_id)
{
global $db;

$parent1= "";
$parent2= "";


    if ($document != -1)
	{

		$r_navi = $db->Query("SELECT katid,ustkatid,document,target FROM " . PREFIX . "_navi	WHERE document = '". $document ."' AND dil = '". UDIL ."'");

        $navi = $r_navi->fetchrow();

        if ($navi->ustkatid != "") {
            $r_parent1 = $db->Query("SELECT katid,ustkatid,document,target FROM " . PREFIX . "_navi WHERE katid = '" . $navi->ustkatid . "' AND dil = '". UDIL ."'");

            $parent1 = $r_parent1->fetchrow();
        }

        if ($parent1->ustkatid != 0) {
            $r_parent2 = $db->Query("SELECT katid,ustkatid,document,target FROM " . PREFIX . "_navi WHERE katid = " . $parent1->ustkatid . "  AND dil = '". UDIL ."'");
            $parent2 = $r_parent2->fetchrow();
        }
    }

    $r_navi = $db->Query("SELECT katid,baslik,document,dil,openonclick,sira,target FROM " . PREFIX . "_navi WHERE ustkatid = '0'  AND dil = '". UDIL ."' ORDER BY sira");

    $output = array();

    while ($navi = $r_navi->fetchrow()) {

        $navi_params = explode("&", trim(str_replace("index.php?", "", $navi->document)));
        $request_params = explode("&", $_SERVER['QUERY_STRING']);
        $intersect = array_intersect($navi_params, $request_params);

        foreach ($intersect as $inter) {
            $pair = explode("=", $inter);
			$static_nav = explode('sayfa=', $navi->document);
			$static_req = explode('sayfa=', $_SERVER['QUERY_STRING']);


			if(isset($static_nav[1])){
				$navi->active = false;
			} else {
            if ($pair[0] == "sayfa") {
                $navi->active = true;
            }
		  }
        }

            if (!$navi->openonclick || $navi->document == $document || $parent1->document == $navi->document || $parent2->document == $navi->document || $document == -1) {

                if ($parent1->document == $navi->document || $parent2->document == $navi->document) {
                    $navi->active = true;
                }
                $r_sub_navi = $db->Query("SELECT katid, baslik, document, dil, openonclick, sira,target  FROM " . PREFIX . "_navi WHERE ustkatid = " . $navi->katid . " AND dil = '". UDIL ."' ORDER BY sira");
                $navi->sub_navi = array();
                // zweite ebene der navigation
                while ($sub_navi = $r_sub_navi->fetchrow()) {

                        if (!$sub_navi->openonclick || $sub_navi->document == $document || $parent1->document == $sub_navi->document || $parent2->document == $sub_navi->document || $document == -1) {
                            if ($parent1->document == $sub_navi->document || $parent2->document == $sub_navi->document) {
                                $sub_navi->active = true;
                            }
                            $r_last_navi = $db->Query("SELECT katid, baslik, document, dil, openonclick, sira,target FROM " . PREFIX . "_navi WHERE ustkatid = " . $sub_navi->katid . " AND dil = '". UDIL ."' ORDER BY sira");
                            $sub_navi->sub_navi = array();

                            while ($last_navi = $r_last_navi->fetchrow()) {

                                    array_push($sub_navi->sub_navi, $last_navi);

                            }
                        }
                        array_push($navi->sub_navi, $sub_navi);
                }
            }
            array_push($output, $navi);
    }

    return $output;
}