Location: PHPKode > projects > TheoPlan > pm/menu.inc
<?php
$menuHeight = 0;

if (!isset($login)) {
   if (!isset($unum)) {
      $unum = $_COOKIE['TPMunum'];
   }

   if (!isset($rstufe)) {
      $rstufe = $_COOKIE['TPMrstufe'];
   }

   if (!isset($unum) || !isset($rstufe)) {
      $s = "<p>Dieses System arbeitet mit ";
      $s .= "<a href=\"http://www.www-kurs.de/cookies.htm\" target=\"_blank\">Cookies</a>. ";
      $s .= "Leider hat ihr Browser mein <i>Cookie</i> nicht akzeptiert. ";
      $s .= "Bitte aktivieren Sie die Annahme von Cookies in Ihrem Browser, ";
      $s .= "da sonst ein Arbeiten hier nicht m&ouml;glich ist.<br><br>\n";
      $s .= "Alle hier gesetzten Cookies werden von Ihrem Browser <b>automatisch</b> ";
      $s .= "nach dem Abmelden oder sp&auml;testens nach 24 Stunden gel&ouml;scht! ";
      $s .= "Was immer fr&uuml;her eintritt.</p>\n";
      Output(-1, 141, $s);
      include('footer.inc');
      exit;
   }

   $unum = decrypt($unum);
   $rstufe = decrypt($rstufe);
}

if (!isset($menu)) {
   $menu = $_REQUEST['menu'];
}

if (!isset($headline)) {
   $headline = $_REQUEST['headline'];
}

function CheckDRM($r0, $r1, $r2, $r3, $r4, $r5, $r6, $r7=false) {
	global $unum;
	global $rstufe;
	$check = false;

	if ($r0 && $rstufe == 0)	// Verwalter
	   $check = true;

	if ($r1 && $rstufe == 1)	// Administrator
	   $check = true;

	if ($r2 && $rstufe == 2)	// Projektmanager
	   $check = true;

	if ($r3 && $rstufe == 3)	// Mitarbeiter
	   $check = true;

	if ($r4 && $rstufe == 4)	// Kontroller
	   $check = true;

	if ($r5 && $rstufe == 5)	// Kein Zugang!!
	   $check = true;

	if ($r6 && $rstufe == 6)	// Ressourcenmanager
	   $check = true;

	if ($r7 && $rstufe == 7)	// Revisor
	   $check = true;

	if (!$check)
	   return true;

	$db = OpenDB();
	$query = "select mi_hacker from mitarbeiter where mi_num = $unum";
	$result = QueryDB($db, $query);

	if (!$result) {
	   WarnHacker(0);
	   closeDB($db);
	   return false;
	}

	$numrows = numrowsDB($result);

	if ($numrows > 0) {
	   $data = fetchDB($result, 0);
	   $mi_hacker = $data[0] + 1;
	   $query = "update mitarbeiter set mi_hacker = $mi_hacker where mi_num = $unum";
	   TqueryDB($db, $query);
	}
	else
	   $mi_hacker = 0;

	closeDB($db);
	WarnHacker($mi_hacker);
	return false;
}

function MenuButton($text, $func, $nav, $akt=false) {
   echo "<td><img src=\"nav/button_left.png\" alt=\"\" height=\"24px\"></td>\n";
   echo "<td class=\"tabs\"><a href=\"#\" ";

   if ($akt == true)
      echo "class=\"aktiv\" ";

   echo "onClick=\"javascript:MoveTo('$func','$nav')\">$text</a></td>\n";
   echo "<td><img src=\"nav/button_right.png\" alt=\"\" height=\"24px\"></td>\n";
}

function MenuMain($nav, $rstufe = 0) {
   global $headline;
   global $pmlight;

   if ($rstufe == 1 || $rstufe == 2 || $rstufe == 3 || $rstufe == 4) {
      if ($pmlight)
         MenuButton(GetMessage(-1, 189, "IST-Erfassung"), "istpm.php", "$nav", ($headline == 10) ? true : false);
      else
         MenuButton(GetMessage(-1, 189, "IST-Erfassung"), "ist.php", "$nav", ($headline == 10) ? true : false);
   }

   if ($rstufe == 1 || $rstufe == 2) {
      MenuButton(GetMessage(-1, 190, "Planung"), "plan.php", "plan=plan&$nav");
   }

   MenuButton(GetMessage(-1, 191, "Auswertungen"), "forms.php", "auswert=auswert&$nav");
   MenuButton(GetMessage(-1, 192, "Verwaltung"), "forms.php", "verwalt=verwalt&$nav");
   MenuButton(GetMessage(-1, 193, "Abmelden"), "index.php", "header=3");
}

function MenuPlan($nav) {
   global $menu;
   global $headline;

   if ($menu == 2)
      $target = "plan.php";
   else
      $target = "forms.php";

   MenuButton(GetMessage(-1, 194, "Leeren Plan erstellen"), $target, "plneu=plneu&$nav", ($headline == 19) ? true : false);
   MenuButton(GetMessage(-1, 195, "Plan &Auml;ndern"), "plan.php", "plchange=plchange&$nav", ($headline == 20) ? true : false);
}

function MenuReport($nav) {
   global $rstufe;
   global $headline;

   $ini_array = parse_ini_file("setup/menu.dat", true);

   for ($i = 1; $i <= 10; $i++) {
      $slot = "slot_" . $i;

      if (isset($ini_array[$slot]['prog'])) {
	 $flag = false;
         $prog = $ini_array[$slot]['prog'];
         $func = $ini_array[$slot]['func'];
         $button = $ini_array[$slot]['button'];
         $alt = $ini_array[$slot]['alt'];
         $head = $ini_array[$slot]['slot'];
         $access = $ini_array[$slot]['access'];
         $acc = explode(",", $access);

         for ($j = 0; $j < 7; $j++) {
	    if ($acc[$j] == $rstufe) {
	       $flag = true;
	       break;
	    }
	 }

	 if ($flag)
            MenuButton($alt, $prog, "$func=$func&headline=$head&$nav", ($headline == $head) ? true : false);
      }
   }
}

function MenuManage($nav) {
   global $rstufe;
   global $phase;
   global $headline;
   global $pmlight;
   global $verrmodul;
   global $menuHeight;
   global $pj_lock;

   $manz = 1;
   $height = 0;

   if ($pj_lock && ($rstufe == 1 || $rstufe == 4)) {
      MenuButton(GetMessage(-1, 139, "Projektteilabschlu&szlig;"), "pjclose.php", "pjclose=pjclose&$nav", ($headline == 41) ? true : false); $manz++;
   }

   if ($rstufe > 1) {
      MenuButton(GetMessage(-1, 196, "Passwort &auml;ndern"), "forms.php", "pw=pw&$nav", ($headline == 32) ? true : false); $manz++;

      if ($rstufe == 4 && $verrmodul) {
	 MenuButton(GetMessage(-1, 197, "Kunden"), "kunden.php", "kunde=kunde&$nav", ($headline == 34) ? true : false); $mamz++;
	 if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
	 MenuButton(GetMessage(-1, 198, "Mitarbeiter"), "edit_mi.php", "mi=mi&$nav", ($headline == 5) ? true : false); $manz++;
	 if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
	 MenuButton(GetMessage(-1, 199, "Tagsatz"), "forms.php", "temptagsatz=temptagsatz&$nav", ($headline == 40) ? true : false); $manz++;
	 if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
	 MenuButton(GetMessage(-1, 209, "Kostenstellen"), "forms.php", "costloc=costloc&$nav", ($headline == 38) ? true : false); $manz++;
      }

      if ($rstufe != 6)
	 return;
   }

   if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
   MenuButton(GetMessage(-1, 198, "Mitarbeiter"), "edit_mi.php", "mi=mi&$nav", ($headline == 5) ? true : false); $manz++;

   if ($rstufe != 6) {
      if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
      MenuButton(GetMessage(-1, 200, "Projekte"), "forms.php", "pj=pj&$nav", ($headline == 11) ? true : false); $manz++;
   }

   if (!$pmlight) {
      MenuButton(GetMessage(-1, 201, "TM-Gruppe"), "forms.php", "tm=tm&$nav", ($headline == 14) ? true : false);
      $manz++;
   }

   MenuButton(GetMessage(-1, 202, "Auftraggeber"), "forms.php", "sgf=sgf&$nav", ($headline == 15) ? true : false); $manz++;
   if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
   MenuButton(GetMessage(-1, 203, "Abteilung"), "forms.php", "abt=abt&$nav", ($headline == 16) ? true : false); $manz++;
   if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
   MenuButton(GetMessage(-1, 204, "L&auml;nder"), "forms.php", "land=land&$nav", ($headline == 17) ? true : false); $manz++;

   if (!$pmlight) {
      if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
      MenuButton(GetMessage(-1, 205, "Rollen"), "forms.php", "role=role&$nav", ($headline == 18) ? true : false);
      $manz++;
   }

   if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }

   if ($phase && $rstufe != 6) {
      MenuButton(GetMessage(-1, 206, "Phasen"), "forms.php", "phase=phase&$nav", ($headline == 24) ? true : false);
      $manz++;
   }

   if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }

   if ($verrmodul && $rstufe != 6) {
      MenuButton(GetMessage(-1, 199, "Tagsatz"), "forms.php", "temptagsatz=temptagsatz&$nav", ($headline == 40) ? true : false); $manz++;
      if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
      MenuButton(GetMessage(-1, 207, "Anrede"), "forms.php", "anrede=anrede&$nav", ($headline == 36) ? true : false); $manz++;
      if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
      MenuButton(GetMessage(-1, 208, "Kategorie"), "forms.php", "category=category&$nav", ($headline == 37) ? true : false); $manz++;
      if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
      MenuButton(GetMessage(-1, 209, "Kostenstellen"), "forms.php", "costloc=costloc&$nav", ($headline == 38) ? true : false); $manz++;
      if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
      MenuButton(GetMessage(-1, 197, "Kunden"), "kunden.php", "kunde=kunde&$nav", ($headline == 34) ? true : false); $manz++;
      if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
      MenuButton(GetMessage(-1, 210, "Kundengruppen"), "kunden.php", "kgroup=kgroup&$nav", ($headline == 39) ? true : false); $manz++;
   }

   if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }

   if ($rstufe == 1) {
      MenuButton(GetMessage(-1, 211, "E-Journal"), "ejournal.php", "journal=journal&$nav", ($headline == 33) ? true : false);
      $manz++;
   }

   if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }

   if ($rstufe == 1) {
      MenuButton(GetMessage(-1, 212, "Einstellungen"), "forms.php", "settings=settings&$nav", ($headline == 23) ? true : false); $manz++;
      if ($manz >= 8) { $manz = 0; $menuHeight++; echo "</tr><tr>\n"; }
      MenuButton(GetMessage(-1, 213, "Templates"), "forms.php", "templates=templates&$nav", ($headline == 28) ? true : false); $manz++;
   }

   $span = 8 - $manz;
   echo "<td colspan=$span>&nbsp;</td>\n";
}

# Bevor noch ein Menue angezeigt werden kann, prufen wir ob der User
# ueberhaupt berechtigt ist.
#
if (isset($drm)) {
   if (!CheckDRM($drm[0], $drm[1], $drm[2], $drm[3], $drm[4], $drm[5], $drm[6], $drm[7]))
      exit;
}

# An dieser Stelle werten wir aus, welches Menue und in welchem Umfang es
# angezeigt wird.
#
if ((!isset($header) || $header == 3) && isset($headline)) {
   if (isset($login))
      echo "<td></td></tr></table>\n";

   if (isset($rstufe) && $rstufe > 0 && $header != 3) { // && isset($menu) && $menu > 1) {
      MenuButton(GetMessage(-1, 214, "Hauptmen&uuml;"), "forms.php", "headline=3&menu=1", ($headline == 3) ? true : false);
   }
}

if ((!isset($header) || $header == 3) && isset($menu) && $menu != 0) {
   $nav = "menu=$menu";

   if (isset($headline)) {
      $nav .= "&headline=$headline";
   }

   if (isset($dbname)) {
      $nav .= "&dbname=$dbname";
   }

   switch ($menu) {
      case 1: MenuMain($nav, $rstufe); break;
      case 2: MenuPlan($nav); break;
      case 3: MenuReport($nav); break;
      case 4: MenuManage($nav); break;
   }

   echo "   </tr>\n";
   echo "</table>\n";
}

require_once('helper.inc');

echo "</td></tr><tr><td colspan=2 height=\"2px\" style=\"background-color: $menucolor;\"></td></tr>\n";
echo "<tr><td colspan=2 height=\"3px\" style=\"background-color: white;\"></td>\n";
echo "</tr></table></div>\n<div id=\"norm\"";
$br = GetBrowserInfo("browser");

if ($br != "IE" && $menuHeight > 0) {	// Ignore brain dead IE
   $h = $menuHeight * 24;
   echo " style=\"top:". $h . "px;\">\n";
} else
   echo ">\n";
?>
Return current item: TheoPlan