php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Nested Sei Layer


 
sanktusm
22-04-2019, 16:11 
 
Hallo, ich habe hier ein Script, das verschiede Layer positionieren soll, Leide schließt der Layer (wie ausgewiesen) nicht. Hat mir jemand einen Tipp, wie ich das hinbringen könnte?



public function getTree($menu_area_id, $language_id) {

$sql = "SELECT n.id, n.menu_link, n.menu_name, n.menu_area, COUNT(*)-1 AS level, n.lft, n.rgt, ROUND ((n.rgt - n.lft - 1) / 2) AS children FROM ".self::PREFIX."sections AS n, ".self::PREFIX."sections AS p WHERE (n.lft BETWEEN p.lft AND p.rgt) AND (n.menu_area = '$menu_area_id' AND n.language_id = '".$language_id."' AND p.menu_area = '$menu_area_id' AND p.language_id = '".$language_id."' AND ((n.access_for = '#all' AND p.access_for = '#all') OR (n.access_for IN (".$this -> front_users($_SESSION['front_user_id'])."))) AND ((n.public_status = '2' AND p.public_status = '2') OR (n.public_status = '".$_ENV['open_preview']."'))) GROUP BY n.lft ORDER BY n.lft;";
$result = $this->db->query($sql);

if($this->db->error != "")
die($this->db->error."_getTree");

$tree = array();
$i = 0;
while ($row = $result->fetch_assoc()) {

$tree[$i] = $row;
$i++;

}
return $tree;
}

public function treeAsHtml($id, $menu_area_id, $language_id, $css_id, $css_class, $layers) {

$tree = $this->getTree($menu_area_id, $language_id);

$level = Array();


$html = "<ul";

if($css_id != "")
$html .= " id=\"".$css_id."\" ";

if($css_class != "")
$html .= " class=\"".$css_class."\" ";

$html .= ">";

$result = $this -> selectSimpleSql('navigation', 'id', $menu_area_id, '', '', 'id', 'ASC');

$level_data = $result->fetch_assoc();

$limits = unserialize($level_data['limits']);

$close = "";

$split_layer = Array();

$tmp_before = Array();

$tmp_after = Array();

for ($i=0; $i<count($tree); $i++) {


$level = $tree[$i]['level'] + 1;



if($layers['html_container_open_'.$level] != "" AND $layers['enclose_before_after_tag_'.$level] == "1" AND $tree[$i]['level'] < $tree[$i+1]['level']) {

$html .= $layers['html_container_open_'.$level];

$tmp_before[$level] = $i;



}


$html .= "<li "; if($limits['li_css_class_'.$level] != "") { $html .= "class=\" ". $limits['li_css_class_'.$level] . " ".$active."\""; } $html .= ">";


if($layers['enclose_tag_level_'.$level] != "") {

$split_layer = explode('><', $layers['enclose_tag_level_'.$level]);

$html .= $split_layer[0].">";

}


if(array_key_exists($tree[$i]['id'].'', $GLOBALS['url']) == false AND $tree[$i]['menu_link'] == "" AND $this -> is_content($tree[$i]['id']) != false) {

$html .= "<a href=\"?id=" . $tree[$i]['id'] . "\" "; if($limits['tag_css_class_'.$level] != "") { $html .= " class=\"". $limits['tag_css_class_'.$level] . "\""; } $html .= " >" . $tree[$i]['menu_name'] . "</a>";

} else if ($tree[$i]['id'] == $this -> getDefaultId() AND $this -> is_content($tree[$i]['id']) != false){

$html .= "<a href=\"\" "; if($limits['tag_css_class_'.$level] != "") { $html .= " class=\"". $limits['tag_css_class_'.$level] . "\""; } $html .= ">" . $tree[$i]['menu_name'] . "</a>";

} else if($tree[$i]['menu_link'] == "" AND $this -> is_content($tree[$i]['id']) != false) {

$html .= "<a href=\"" . $GLOBALS['url'][$tree[$i]['id']] . "\" "; if($limits['tag_css_class_'.$level] != "") { $html .= " class=\"". $limits['tag_css_class_'.$level] . "\""; } $html .= ">" . $tree[$i]['menu_name'] . "</a>";

} else if($this -> is_content($tree[$i]['id']) === false) {

$html .= "<".$layers['tag_layer_'.$level].""; if($limits['tag_css_class_'.$level] != "") { $html .= " class=\"".$limits['tag_css_class_'.$level] . "\""; } $html .= ">" . $tree[$i]['menu_name'] . "</".$layers['tag_layer_'.$level].">";

} else if (is_numeric($tree[$i]['menu_link'])) {

$html .= "<a href=\"" . $GLOBALS['url'][$tree[$i]['menu_link']] . "\" "; if($limits['tag_css_class_'.$level] != "") { $html .= " class=\"". $limits['tag_css_class_'.$level] . "\""; } $html .= ">" . $tree[$i]['menu_name'] . "</a>";

} else if (substr( $tree[$i]['menu_link'] , 0, 7) == "http://" OR substr( $tree[$i]['menu_link'], 0, 7) == "mailto:") {

$html .= "<a href=\"" . $tree[$i]['menu_link'] . "\" "; if($limits['tag_css_class_'.$level] != "") { $html .= " class=\"". $limits['tag_css_class_'.$level] . "\""; } $html .= ">" . $tree[$i]['menu_name'] . "</a>";

} else {

$html .= "<a href=\"" . $tree[$i]['menu_link'] . "\" target=\"_blank\" "; if($limits['tag_css_class_'.$level] != "") { $html .= " class=\"". $limits['tag_css_class_'.$level] . "\""; } $html .= ">" . $tree[$i]['menu_name']."</a>";

}


if($layers['enclose_tag_level_'.$level] != "") {

$split_layer = explode('><', $layers['enclose_tag_level_'.$level]);

$html .= "<".$split_layer[1];

}



if($tree[$i]['level'] == $tree[$i+1]['level'] OR $tree[$i]['level'] > $tree[$i+1]['level']) {

$html .= "</li>";

}


if($layers['html_container_open_'.$level] != "" AND $layers['enclose_before_after_tag_'.$level] == "2" AND $tree[$i]['level'] < $tree[$i+1]['level']) {

$html .= $layers['html_container_open_'.$level];

$tmp_after[$level] = $tree[$i]['children'] + $i;
print('#'.$tree[$i]['children'].'*'); // ist 28 sollte 4 sein
}



if(!empty($tmp_before[$level]) AND $tmp_before[$level] < $i) {

$html .= $layers['html_container_close_'.$level];

}

if(!empty($tmp_after[$level]) AND $tmp_after[$level] == $i) {

$html .= $layers['html_container_close_'.$level];

unset($tmp_after[$level]);

}



if($tree[$i]['level'] < $tree[$i+1]['level']) {



$html .= "<ul"; if($limits['ul_css_class_'.$level] != "") { $html .= " class=\"". $limits['ul_css_class_'.$level] . "\""; } $html .= ">";

} else if ($tree[$i]['level'] > $tree[$i+1]['level']) {



$diff = $tree[$i]['level'] - $tree[$i+1]['level'];

$html .= str_repeat("</ul></li>", $diff) . "";

if(!empty($tmp_after[$level]) AND $tmp_after[$level] < $i) {

$html .= $layers['html_container_close_'.$level];
}

}



$active = "";


}


$html .= "</ul>";



return $html;

}

 
sanktusm
30-04-2019, 12:58 
 
Hallo,
ich bin leider sehr verzweifelt, da ich keine Lösung finde, wie man dieses Script



<div id="navbar" class="collapse navbar-collapse">

<ul class="nav navbar-nav mr-auto" >
<li class=" menu-el active"><a href="" >Home</a></li>
<li class=" menu-el "><a>Produkte</a>
<ul>
<div class="mdf_sub_wrap mdf_flip row lists">
<li ><div class="cl-title"><h3>Alu- und Stahlprodukte </h3></div>
<ul class="mdf_child_menu">
<li ><a href="alu-stahl-trapezblech" >Trapezbleche</a></li>
<li ><a href="wellblech-guenstig" >Wellbleche</a></li>
<li ><a href="alu-ziegelblech" >Ziegelbleche</a></li>
</ul>
</li>
<li ><div class="cl-title"><a href="befestigung-dach" >Befestigung und Abdichtung</a></div>
<ul class="mdf_child_menu">
<li ><a href="schrauben-dachplatten" >Schrauben</a></li>
<li ><a href="kalotten-trapezblech" >Kalotten</a></li>
<li ><a href="profilfueller-dach" >Profilfüller</a></li>
<li ><a href="bohrer-dachbefestigung" >Bohrer</a></li>
</ul>
</li>
<li ><div class="cl-title"><a href="dachzubehoer-online-shop" >Dachzubehör für Verleger</a></div>
<ul class="mdf_child_menu">
<li ><a href="unterdeck-unterspannbahn-und-zubehoer" >Unterdeck-Unterspannbahn und Zubehör</a></li>
<li ><a href="dachentwaesserungssysteme" >Dachentwässerungssysteme</a></li>
<li ><a href="schneefangsysteme-und-zubehoer" >Schneefangsysteme und Zubehör</a></li>
<li ><a href="schneefangsysteme" >Schneefangsysteme</a></li>
</ul>
</li>
</div>
</ul>
</li>
</ul>

</div>



mit diesem Code realisiert




<?php
public function treeAsHtml($id, $menu_area_id, $language_id, $css_id, $css_class, $layers) {

$tree = $this->getTree($menu_area_id, $language_id);

$level = Array();

$html_out_layer = "";

$html = "<ul";

if($css_id != "")
$html .= " id=\"".$css_id."\" ";

if($css_class != "")
$html .= " class=\"".$css_class."\" ";

$html .= ">";

$result = $this -> selectSimpleSql('navigation', 'id', $menu_area_id, '', '', 'id', 'ASC');

$level_data = $result->fetch_assoc();

$limits = unserialize($level_data['limits']);

$close = "";

$split_layer = Array();

$tmp_after = Array();

$tmp_before = Array();

$collect = "";


for ($i=0; $i<count($tree); $i++) {


$level = $tree[$i]['level'] + 1;

if($tree[$i]['id'] == $_SESSION['id'])
$active = "active";
else
$active = "";







$html_li = "<li "; if($limits['li_css_class_'.$level] != "") { $html_li .= "class=\" ". $limits['li_css_class_'.$level] . " ".$active."\""; } $html_li .= ">";







$html_link = "<a href=\"?id=" . $tree[$i]['id'] . "\" "; if($limits['tag_css_class_'.$level] != "") { $html_link .= " class=\"". $limits['tag_css_class_'.$level] . "\""; } $html_link .= " >" . $tree[$i]['menu_name'] . "</a>";





if($layers['enclose_tag_level_'.$level] != "") {

$html_li .= str_replace('|', $html_link, $layers['enclose_tag_level_'.$level]);

} else {

$html_li .= $html_link;
}



if($tree[$i]['level'] == $tree[$i+1]['level'] OR $tree[$i]['level'] > $tree[$i+1]['level']) {

$html_li .= "</li>";

if($tree[$i]['level'] == $tree[$i+1]['level'] OR $tree[$i]['level'] > $tree[$i+1]['level'])
$html_ul .= $html_li;

}




if($tree[$i]['level'] < $tree[$i+1]['level']) {

$html_ul .= $html_li;




$html_ul .= "<ul"; if($limits['ul_css_class_'.$level] != "") { $html_ul .= " class=\"". $limits['ul_css_class_'.$level] . "\""; } $html_ul .= ">";







} else if ($tree[$i]['level'] > $tree[$i+1]['level']) {

$diff = $tree[$i]['level'] - $tree[$i+1]['level'];

$html_ul .= str_repeat("</ul></li>", $diff) . "";




}








$active = "";

$html .= $html_ul;

$html_ul = "";

}




$html .= "</ul>";



return $html;

}

?>






Über jeden Tipp bin ich sehr dankbar

 
chorn
30-04-2019, 15:08 
 
Vielleicht mal ein vollständiges Beispiel mit Testdaten hier posten, das ist für Aussenstehende doch sehr müselig das selber zu machen, wenn du bei dir die Daten doch schon vorliegen hast. Nimm einfach var_export().

Ist natürlich auch schlecht, dass du da direkt irgendwelches SQL drin hast und das Code einer größeren Klasse zu sein scheint, das ist für andere Leute natürlich nicht testbar. Also würde ich dazu raten das erstmal so umzuschreiben, dass du die Daten einfach als Array reinreichst.

 
sanktusm
30-04-2019, 15:36 
 
array (
0 =>
array (
'id' => '4',
'menu_link' => NULL,
'menu_name' => 'Home',
'menu_area' => '1',
'level' => '0',
'lft' => '4',
'rgt' => '5',
'children' => '0',
),
1 =>
array (
'id' => '168',
'menu_link' => NULL,
'menu_name' => 'Produkte',
'menu_area' => '1',
'level' => '0',
'lft' => '6',
'rgt' => '63',
'children' => '28',
),
2 =>
array (
'id' => '133',
'menu_link' => NULL,
'menu_name' => 'Alu- und Stahlprodukte ',
'menu_area' => '1',
'level' => '1',
'lft' => '7',
'rgt' => '16',
'children' => '4',
),
3 =>
array (
'id' => '34',
'menu_link' => NULL,
'menu_name' => 'Trapezbleche',
'menu_area' => '1',
'level' => '2',
'lft' => '8',
'rgt' => '9',
'children' => '0',
),
4 =>
array (
'id' => '164',
'menu_link' => NULL,
'menu_name' => 'Wellbleche',
'menu_area' => '1',
'level' => '2',
'lft' => '10',
'rgt' => '11',
'children' => '0',
),
5 =>
array (
'id' => '45',
'menu_link' => NULL,
'menu_name' => 'Ziegelbleche',
'menu_area' => '1',
'level' => '2',
'lft' => '12',
'rgt' => '13',
'children' => '0',
),
6 =>
array (
'id' => '7',
'menu_link' => NULL,
'menu_name' => 'Befestigung und Abdichtung',
'menu_area' => '1',
'level' => '1',
'lft' => '17',
'rgt' => '28',
'children' => '5',
),
7 =>
array (
'id' => '44',
'menu_link' => NULL,
'menu_name' => 'Schrauben',
'menu_area' => '1',
'level' => '2',
'lft' => '18',
'rgt' => '19',
'children' => '0',
),
8 =>
array (
'id' => '43',
'menu_link' => NULL,
'menu_name' => 'Kalotten',
'menu_area' => '1',
'level' => '2',
'lft' => '20',
'rgt' => '21',
'children' => '0',
),
9 =>
array (
'id' => '70',
'menu_link' => NULL,
'menu_name' => 'Profilfüller',
'menu_area' => '1',
'level' => '2',
'lft' => '22',
'rgt' => '23',
'children' => '0',
),
10 =>
array (
'id' => '69',
'menu_link' => NULL,
'menu_name' => 'Bohrer',
'menu_area' => '1',
'level' => '2',
'lft' => '26',
'rgt' => '27',
'children' => '0',
),
11 =>
array (
'id' => '9',
'menu_link' => NULL,
'menu_name' => 'Dachzubehör für Verleger',
'menu_area' => '1',
'level' => '1',
'lft' => '29',
'rgt' => '42',
'children' => '6',
),
12 =>
array (
'id' => '40',
'menu_link' => NULL,
'menu_name' => 'Unterdeck-Unterspannbahn und Zubehör',
'menu_area' => '1',
'level' => '2',
'lft' => '30',
'rgt' => '31',
'children' => '0',
),
13 =>
array (
'id' => '111',
'menu_link' => NULL,
'menu_name' => 'Dachentwässerungssysteme',
'menu_area' => '1',
'level' => '2',
'lft' => '32',
'rgt' => '33',
'children' => '0',
),
14 =>
array (
'id' => '112',
'menu_link' => NULL,
'menu_name' => 'Schneefangsysteme und Zubehör',
'menu_area' => '1',
'level' => '2',
'lft' => '34',
'rgt' => '35',
'children' => '0',
),
15 =>
array (
'id' => '116',
'menu_link' => NULL,
'menu_name' => 'Schneefangsysteme',
'menu_area' => '1',
'level' => '2',
'lft' => '40',
'rgt' => '41',
'children' => '0',
),
16 =>
array (
'id' => '169',
'menu_link' => NULL,
'menu_name' => 'Anwendungen',
'menu_area' => '1',
'level' => '0',
'lft' => '64',
'rgt' => '75',
'children' => '5',
),
17 =>
array (
'id' => '170',
'menu_link' => NULL,
'menu_name' => 'Anwendungen Alu- und Stahlrodukte',
'menu_area' => '1',
'level' => '1',
'lft' => '65',
'rgt' => '74',
'children' => '4',
),
18 =>
array (
'id' => '171',
'menu_link' => NULL,
'menu_name' => 'Carport mit Trapezblech',
'menu_area' => '1',
'level' => '2',
'lft' => '66',
'rgt' => '67',
'children' => '0',
),
19 =>
array (
'id' => '172',
'menu_link' => NULL,
'menu_name' => 'Gartenhaus- Schuppendach mit Aluminium Trapezblech',
'menu_area' => '1',
'level' => '2',
'lft' => '68',
'rgt' => '69',
'children' => '0',
),
20 =>
array (
'id' => '173',
'menu_link' => NULL,
'menu_name' => 'Gartenhaus- Schuppendach mit Ziegelblech',
'menu_area' => '1',
'level' => '2',
'lft' => '70',
'rgt' => '71',
'children' => '0',
),
21 =>
array (
'id' => '174',
'menu_link' => NULL,
'menu_name' => 'Dachsysteme für das Wohnhaus',
'menu_area' => '1',
'level' => '2',
'lft' => '72',
'rgt' => '73',
'children' => '0',
),
22 =>
array (
'id' => '166',
'menu_link' => NULL,
'menu_name' => 'Unser Dachkonfigurator',
'menu_area' => '1',
'level' => '0',
'lft' => '76',
'rgt' => '77',
'children' => '0',
),
23 =>
array (
'id' => '152',
'menu_link' => NULL,
'menu_name' => 'Kundenforum',
'menu_area' => '1',
'level' => '0',
'lft' => '78',
'rgt' => '79',
'children' => '0',
),
)

 
chorn
30-04-2019, 16:38 
 
Ok... und was ist mit den anderen Sachen? Hier so halbe Codefetzen posten bringt dich bei den meisten Leuten hier halt nicht weiter. Du musst schon mal überlegen, dass die Leute hier in ihrer Freizeit wenig Bock haben noch zusätzlich Entiwcklungsaufwand zu betreiben um ein geeignetes, nachvollziehbares Beispiel zu erhalten, da musst du schon selber eine ansprechende Vorlage liefern.

 
sanktusm
03-05-2019, 17:59 
 
<?php

class sections extends header {



public function getTree($menu_area_id, $language_id) {

$sql = "SELECT n.id, n.menu_link, n.menu_name, n.menu_area, COUNT(*)-1 AS level, n.lft, n.rgt, ROUND ((n.rgt - n.lft - 1) / 2) AS children FROM ".self::PREFIX."sections AS n, ".self::PREFIX."sections AS p WHERE (n.lft BETWEEN p.lft AND p.rgt)
AND (n.menu_area = '$menu_area_id' AND n.language_id = '".$language_id."'
AND p.menu_area = '$menu_area_id' AND p.language_id = '".$language_id."')
AND ((n.access_for = '#all' AND p.access_for = '#all')
OR (n.access_for IN (".$this -> front_users($_SESSION['front_user_id']).") AND p.access_for IN (".$this -> front_users($_SESSION['front_user_id']).")))
AND ((n.public_status = '2' AND p.public_status = '2')
OR (n.public_status = '".$_ENV['open_preview']."') AND (p.public_status = '".$_ENV['open_preview']."'))

GROUP BY n.lft ORDER BY n.lft;";
$result = $this->db->query($sql);

if($this->db->error != "")
die($this->db->error."_getTree");

$tree = array();
$i = 0;
while ($row = $result->fetch_assoc()) {

$tree[$i] = $row;
$i++;

}
return $tree;
}




public function treeAsHtml($id, $menu_area_id, $language_id, $css_id, $css_class, $layers) {

$tree = $this->getTree($menu_area_id, $language_id);

$level = Array();

$html_out_layer = "";

$html = "<ul";

if($css_id != "")
$html .= " id=\"".$css_id."\" ";

if($css_class != "")
$html .= " class=\"".$css_class."\" ";

$html .= ">";

$result = $this -> selectSimpleSql('navigation', 'id', $menu_area_id, '', '', 'id', 'ASC');

$level_data = $result->fetch_assoc();

$limits = unserialize($level_data['limits']);

$close = "";



$collect_after = "";

$layer_after = "";

$layer = "";

$html_out = "";

$unblock_ul = true;

$collect_start_after = false;

$jump = true;

for ($i=0; $i<count($tree); $i++) {


$level = $tree[$i]['level'] + 1;

if($tree[$i]['id'] == $_SESSION['id'])
$active = "active";
else
$active = "";





$html_li = "<li "; if($limits['li_css_class_'.$level] != "") { $html_li .= "class=\" ". $limits['li_css_class_'.$level] . " ".$active."\""; } $html_li .= ">";


$html_link = "<a href=\"?id=" . $tree[$i]['id'] . "\" "; if($limits['tag_css_class_'.$level] != "") { $html_link .= " class=\"". $limits['tag_css_class_'.$level] . "\""; } $html_link .= " >" . $tree[$i]['menu_name'] . "</a>";




if($layers['enclose_tag_level_'.$level] != "") {

$html_li .= str_replace('|', $html_link, $layers['enclose_tag_level_'.$level]);

} else {

$html_li .= $html_link;
}



if($tree[$i]['level'] == $tree[$i+1]['level'] OR $tree[$i]['level'] > $tree[$i+1]['level']) {

$html_li .= "</li>";


$html_ul .= $html_li;

}

if($layers['html_container_'.$level] != "" AND $layers['enclose_before_after_tag_'.$level] == 1) {

$collect_start_before = true;

$layer_before = $layers['html_container_'.$level];

$unblock_ul = false;

}


if($tree[$i]['level'] < $tree[$i+1]['level']) {

$html_ul .= $html_li;




$html_ul .= "<ul"; if($limits['ul_css_class_'.$level] != "") { $html_ul .= " class=\"". $limits['ul_css_class_'.$level] . "\""; } $html_ul .= ">";







} else if ($tree[$i]['level'] > $tree[$i+1]['level']) {

$diff = $tree[$i]['level'] - $tree[$i+1]['level'];

$html_close = str_repeat("</ul></li>", $diff) . "";

switch($diff) {


case 1:

$collect_start_before == true;

$html_ul .= $html_close;

break;

case 2:

$collect_after .= $html_ul;

$collect_after .= "</ul></li>";

$html_out .= str_replace('|', $collect_after, $layer_after);

$html_out .= "</ul></li>";

$collect_start_after = false;

$unblock_ul = false;

break;

default:

$collect_start_before == false;

$html_ul .= $html_close;

}

}





if($collect_start_after === true) {

if($tree[$i]['level'] > $tree[$i+1]['level']) {


$collect_before = str_replace('|', $collect_after, $layer_before);

$collect_after = "";

$collect_after .= $collect_before;

$collect_before = "";

} else {


$collect_before = "";

$collect_start_before == true;

$collect_after .= $html_ul;

}



$unblock_ul = false;

}





if($layers['html_container_'.$level] != "" AND $layers['enclose_before_after_tag_'.$level] == 2 AND $tree[$i]['children'] > 0) {

$collect_after = "";

$collect_start_before == false;

$layer_after = $layers['html_container_'.$level];

$collect_start_after = true;



}




$active = "";

if($unblock_ul === true) {

$html_out .= $html_ul;

$html_ul .= $html_close;

}

$html_ul = "";

$unblock_ul = true;

}


$html .= $html_out;

$html .= "</ul>";



return $html;

}




}
?>

Das Ergebniss ist leider immer noch dieses: Die Menupunkte werden unvollständig ausgeben und die Layer <div class="col-sm-3 col-xs-6"> stehen am Anfang doppelt und im letzten Block gar nicht. Ich arbeit jetzt schon eine Woche daran. Ich brauche Eure Hilfe

Die $layers sehen so aus:

Array
(
[level_1] => 10
[ul_css_class_1] =>
[li_css_class_1] => menu-el
[tag_layer_1] => a
[tag_css_class_1] =>
[enclose_tag_level_1] =>
[enclose_before_after_tag_1] => 2
[html_container_1] => <div class="mdf_sub_wrap mdf_flip row lists">|</div>
[level_2] => 10
[ul_css_class_2] => mdf_child_menu
[li_css_class_2] =>
[tag_layer_2] => h3
[tag_css_class_2] =>
[enclose_tag_level_2] => <div class="cl-title">|</div>
[enclose_before_after_tag_2] => 1
[html_container_2] => <div class="col-sm-3 col-xs-6">|</div>
)




<div id="sticky-navbar" class="container-fluid full-navbar">
<nav id="mdf_menu" class="navbar navbar-default" role="navigation">

<div id="navbar" class="collapse navbar-collapse">

<ul class="nav navbar-nav mr-auto" >
<li class=" menu-el active"><a href="" >Home</a></li>
<li class=" menu-el "><a>Produkte</a>
<ul><div class="mdf_sub_wrap mdf_flip row lists">
<div class="col-sm-3 col-xs-6"><div class="col-sm-3 col-xs-6">
<li ><div class="cl-title"><h3>Alu- und Stahlprodukte </h3></div>
<ul class="mdf_child_menu">
<li ><a href="alu-stahl-trapezblech" >Trapezbleche</a></li>
<li ><a href="wellblech-guenstig" >Wellbleche</a></li>
</div>
<li ><div class="cl-title"><a href="befestigung-dach" >Befestigung und Abdichtung</a></div>
<ul class="mdf_child_menu">
<li ><a href="schrauben-dachplatten" >Schrauben</a></li>
<li ><a href="kalotten-trapezblech" >Kalotten</a></li>
<li ><a href="profilfueller-dach" >Profilfüller</a></li></div>
<li ><div class="cl-title"><a href="dachzubehoer-online-shop" >Dachzubehör für Verleger</a></div>
<ul class="mdf_child_menu">
<li ><a href="unterdeck-unterspannbahn-und-zubehoer" >Unterdeck-Unterspannbahn und Zubehör</a></li>
<li ><a href="dachentwaesserungssysteme" >Dachentwässerungssysteme</a></li>
<li ><a href="schneefangsysteme-und-zubehoer" >Schneefangsysteme und Zubehör</a></li>
</ul>
</li>
</div>
</ul></li>
<li class=" menu-el "><a>Anwendungen</a>
<ul><div class="mdf_sub_wrap mdf_flip row lists">
<li ><div class="cl-title"><h3>Anwendungen Alu- und Stahlrodukte</h3></div>
<ul class="mdf_child_menu">
<li ><a>Carport mit Trapezblech</a></li>
<li ><a>Gartenhaus- Schuppendach mit Aluminium Trapezblech</a></li>
<li ><a>Gartenhaus- Schuppendach mit Ziegelblech</a></li>
<li ><a>Dachsysteme für das Wohnhaus</a></li>
</ul>
</li></div>
</ul></li>
<li class=" menu-el "><a href="dachkonfigurator" >Unser Dachkonfigurator</a></li>
<li class=" menu-el "><a href="montage-dachplatten-unser-forum" >Kundenforum</a></li></ul>



</div>


</nav>
</div>

 
chorn
03-05-2019, 19:00 
 
Ich brauche Eure Hilfe

ja... und? Warum tust du dann nix dafür? Vielleicht denkst du mal über deine Einstellung nach hier dein Zeug hinzurotzen und von anderen Leuten zu erwarten deinen ganz speziellen Fall noch mal nachzuprogrammieren weil du wesentlich Codeteile unterschlägst und deine Abhängigkeiten nicht auflöst. Versetz dich doch mal in jemanden der das lokal nachstellen will und schon mal bereit wäre seine Freizeit für dein Debugging zu opfern und dann noch Libs nachbauen muss. Oder lass es halt, ich bin so jedenfalls raus.


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:04 Uhr.