Welcome To Our Shell

Mister Spy & Souheyl Bypass Shell

Current Path : /home/ift/52_procpy/fibu/

Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
Upload File :
Current File : //home/ift/52_procpy/fibu/lohn2010.php

<?php
// PHP-Programm nach dem Programmablaufplan für die maschinelle Berechnung
// der vom Arbeitslohn einzubehaltenden Lohnsteuer, des Solidrätätszuschlags und
// der Maßstabsteuer für die Kirchenlohnsteuer 2010
// Version 12.1.2010
// Der Programmablaufplan 2010 findet sich auf den Internetseiten des BMF zum
// Herunterladen unter http://www.bundesfinanzministerium.de/nn_290/DE/BMF__Startseite/Aktuelles/BMF__Schreiben/Veroffentlichungen__zu__Steuerarten/lohnsteuer/041__a,templateId=raw,property=publicationFile.pdf

  error_reporting(E_ALL);

  function lst2010() {  //Programmablaufplan 2010, Steuerung S.10

    global $jre4, $zre4j, $jsonstb, $jvbez, $vbezso, $zvbezj, $kennz, $kennvmt, $lstjahr, $st, $jw, $lstlzz, $anteil1, $zkf, $ztabfb, $kfb, $jbmg, $jvbez, $f;

    mre4jl();
    $jre4 = ($zre4j*100 + $jsonstb);  // Voraussichtlicher Jahreslohn für Sonstige Bezüge
    $jvbez = $zvbezj*100;            // darin enthaltene Versorgungsbezüge
                                    // nicht im PAP!
    $vbezso = 0;
    mre4();
    mre4abz();
    mztabfb();
    $kennvmt=0;
    mlstjahr();
    $lstjahr = floor($st*$f);
    $jw = $lstjahr * 100;
    upanteil();
    $lstlzz = $anteil1;
    if ($zkf > 0) {
       $ztabfb = $ztabfb + $kfb;
       mlstjahr();
       $jbmg = floor($st * $f);
     }
     else
       $jbmg = $lstjahr;
    msolz();
    msonst();
    mvmt();
  }

  function mre4jl() {
 //Ermittlung des Jahresarbeitslohns und der Freibeträge, PAP 2010, S. 11

 global $jlfreib, $jlhinzu, $jfreib, $jhinzu, $lzz, $zre4j, $re4, $zvbezj, $vbez, $lzzfreib, $lzzhinzu, $af;

    if ($lzz == 1) {
       $zre4j = $re4 / 100;
       $zvbezj = $vbez / 100;
       $jlfreib = $lzzfreib /100;
       $jlhinzu = $lzzhinzu / 100;
    }
    if ($lzz == 2) {
       $zre4j = ($re4 * 12) /100;
       $zvbezj = ($vbez * 12) /100;
       $jlfreib = ($lzzfreib * 12) /100;
       $jlhinzu = ($lzzhinzu * 12) / 100;
    }
    if ($lzz == 3) {
       $zre4j = ($re4 * 360 / 7) /100;
       $zvbezj = ($vbez * 360 / 7) /100;
       $jlfreib = ($lzzfreib * 360 / 7) /100;
       $jlhinzu = ($lzzhinzu * 360 / 7) / 100;
    }
    if ($lzz == 4) {
       $zre4j = ($re4 * 360) /100;
       $zvbezj = ($vbez * 360) /100;
       $jlfreib = ($lzzfreib * 360) /100;
       $jlhinzu = ($lzzhinzu * 360) / 100;
    }

       $jlfreib = $jfreib / 100;   //da Jahres-Beträge übernommen werden
       $jlhinzu = $jhinzu / 100;


    if ($zre4j < 0)                 // nicht im PAP
        $zre4j = 0;

    if ($zvbezj <=0 || $vbez<=0)
        $zvbezj = 0;

    if($af = 0) $f=1;
}

  function mre4() {
   //Freibetraege fuer Versorgungsbezuege, Altersentlastungsbetrag (§39b Abs. 2 Satz 2 EStG) PAP Seite 12

  global $zvbez, $fvbz, $fvb, $vbezbso, $fvbzso, $fvbso, $vjahr, $j, $lzz, $vbezb, $vbezm, $zmvb, $vbezs, $hfvb, $vbezso, $vkapa, $hfvbzso, $alter1, $alte, $ajahr, $k, $bmg, $zre4j, $zvbezj, $hbalte;

  $tab1 = Array (0, 0.4, 0.384, 0.368, 0.352, 0.336, 0.32, 0.304, 0.288, 0.272, 0.256, 0.24, 0.224, 0.208, 0.192, 0.176, 0.16, 0.152, 0.144, 0.136, 0.128, 0.12, 0.112, 0.104, 0.096, 0.088, 0.08, 0.072, 0.064, 0.056, 0.048, 0.04, 0.032, 0.024, 0.016, 0.008, 0);
    $tab2 = Array (0, 3000, 2880, 2760, 2640, 2520, 2400, 2280, 2160, 2040, 1920, 1800, 1680, 1560, 1440, 1320, 1200, 1140, 1080, 1020, 960, 900, 840, 780, 720, 660, 600, 540, 480, 420, 360, 300, 240, 180, 120, 60, 0);
    $tab3= Array (0, 900, 864, 828, 792, 756, 720, 684, 648, 612, 576, 540, 504, 468, 432, 396, 360, 342, 324, 306, 288, 270, 252, 234, 216, 198, 180, 162, 144, 126, 108, 90, 72, 54, 36, 18, 0);
    $tab4 = $tab1;
    $tab5 = Array (0,1900, 1824, 1748, 1672, 1596, 1520, 1444, 1368, 1292, 1216, 1140, 1064, 988, 912, 836, 760, 722, 684, 646, 608, 570, 532, 494, 456, 418, 380, 342, 304, 266, 228, 190, 152, 114, 76, 38, 0);

   if ($zvbezj == 0) {
       $fvbz = 0;
       $fvb = 0;
       $fvbzso = 0;
       $fvbso = 0;
       }
     else {
       if ($vjahr < 2006)
          $j = 1;
        else {
          if ($vjahr < 2040)
             $j = $vjahr - 2004;
          else
             $j = 36;
        }

       if ($lzz == 1) {

             $vbezb = $vbezm * $zmvb + $vbezs;
             $hfvb = $tab2[$j] / 12 * $zmvb;
             $fvbz = ceil($tab3[$j] / 12 * $zmvb);

          }
            else {

             $vbezb = $vbezm * $zmvb + $vbezs;
             $hfvb = $tab2[$j];
             $fvbz = $tab3[$j];
           }

       $fvb = ceil(floor($vbezb * $tab1[$j]*100))/10000;

       if ($fvb > $hfvb)
          $fvb = $hfvb;

       $fvbso = $fvb + ceil(floor($vbezbso * $tab1[$j]*100))/10000;

        if ($fvbso > $tab2[$j])
        $fvbso = $tab2[$j];

       $hfvbzso = ($vbezb + $vbezbso) /100 - $fvbso;
       $fvbzso = ceil($fvbz + $vbezbso/100);

       if ($fvbzso > $hfvbzso)
           $fvbzso = ceil($hfvbzso);

       if ($fvbzso > $tab3[$j])
           $fvbzso = $tab3[$j];

         $hfvbz = ($vbezb / 100) - $fvb;

         if($fvbz > $hfvbz)
           $fvbz = ceil($hfvbz);
    }

    if ($alter1 == 0)
       $alte = 0;

    else {
       if ($ajahr < 2006)
          $k = 1;
       else {
          if ($ajahr < 2040)
             $k = $ajahr - 2004;
          else
             $k = 36;
      }

       $bmg = $zre4j - $zvbezj;
       $alte = ceil($bmg * $tab4[$k]);
       $hbalte = $tab5[$k];

       if ($alte > $hbalte)
          $alte = $hbalte;
   }
 }

  function mre4abz() {
   // Ermittlung des Jahresarbeitslohns nach Abzug der Freibeträge, PAP 2010, S. 15

   global $zre4, $zre4j, $fvb, $alte, $jlfreib, $jlhinzu, $zre4vp, $zvbez, $zvbezj, $entsch, $kennvmt;

   $zre4 = $zre4j - $fvb - $alte - $jlfreib + $jlhinzu;

   if($zre4 < 0)
     $zre4 = 0;
   $zre4vp = $zre4j;
   if($kennvmt == 2)
    $zre4vp = $zre4vp - $entsch/100;
   $zvbez = $zvbezj - $fvb;
   if($zvbez < 0)
    $zvbez = 0;
   }

  function mztabfb() {
  //Ermittlung der festen Tabellenfreibetraege (ohne Vorsorgepauschale) PAP Seite 16

  global $kfb, $vbez, $zvbez, $fvbz, $fvbzso, $zre4, $anp, $stkl, $zkf, $ztabfb, $kztab;


    $efa = 0;
    $sap = 0;
    $kfb = 0;

    $anp = 0;
    if ($zvbez > 0) {
       if ($zvbez < $fvbz)
          $fvbz = floor($zvbez);            // auf Euro abrunden (nach 2.1 PAP)
    }
    if ($stkl < 6) {
       if ($zvbez > 0) {
          if ($zvbez - $fvbz < 102)
             $anp = ceil($zvbez - $fvbz);  // auf Euro aufrunden
            else
             $anp = 102;
       }
    }
    else {
     $fvbz = 0;
     $fvbzso = 0;
     }

    if ($stkl < 6) {
       if ($zre4 > $zvbez) {
          if ($zre4 - $zvbez < 920)
             $anp = ceil($anp + $zre4 - $zvbez);
            else
             $anp = $anp + 920;
       }
    }

       $kztab = 1;

   if ($stkl == 1) {
       $sap = 36;
       $kfb = $zkf * 7008;
    }
    if ($stkl == 2) {
       $efa = 1308;
       $sap = 36;
       $kfb = $zkf * 7008;
    }
    if ($stkl == 3) {
       $kztab = 2;
       $sap = 36;
       $kfb = $zkf * 7008;
   }
    if ($stkl == 4) {
       $sap = 36;
       $kfb = $zkf * 3504;
    }
    if ($stkl == 5){
       $sap = 36;
       $kfb = 0;
    }
    if ($stkl == 6)
       $kfb = 0;

    $ztabfb = $efa + $anp + $sap + $fvbz;
 }


  function mlstjahr() {  //Ermittlung der Jahreslohnsteuer, PAP S. 17

  global $st, $zre4, $kennvmt, $zve, $stkl, $zre4vmt, $ztabfb, $vmt, $vkapa, $vsp, $kztab, $x, $stovmt;

       upevp();

    if($kennvmt != 1){
      $zve = $zre4 - $ztabfb - $vsp;
      upmlst();
      }

     else {
       $zve = $zre4 - $ztabfb - $vsp - $vmt/100 - $vkapa/100;

    if($zve < 0) {
       $zve = ($zve + $vmt/100 + $vkapa/100)/5;
       upmlst();
       $st = $st * 5;
    }

    else {
    upmlst();
    $stovmt = $st;
    $zve = $zve + ($vmt+$vkapa)/500;
    upmlst();
    $st = ($st - $stovmt)*5 + $stovmt;
    }
   }
  }


  function upmlst() {            // unter eigener Funktion im PAP, S. 18

  global $zve, $stkl, $kztab, $x;


    if ($zve < 1) {
       $zve = 0;
       $x = 0;
     }
     else
       $x = floor($zve / $kztab);  // auf Euro abrunden

     if ($stkl < 5)
       uptab10();
     else
       mst5_6();
  }

  function upevp() {
  // Vorsorgepauschale (§39b Abs. 2 Satz 6 Nr 3 EStG)PAP Seite 19

  global $krv, $zre4vp, $kztab, $vsp, $vsp1, $stkl, $vspn, $jvbez;

//echo $zre4vp."<br> jvbez: ".($jvbez/100)."<br>";
    if ($krv > 1)
         $vsp1 = 0;
    else {
    if ($krv == 0) {
     if($zre4vp > 66000)
      $zre4vp = 66000;
    }
    else {
      if ($zre4vp > 55800)
        $zre4vp = 55800;
    }
    $vsp1 = 0.4 * $zre4vp;
    $vsp1 = floor($vsp1 * 9.95)/100;
    }

    $vsp2 = floor(12 * $zre4vp)/100;
    if($stkl == 3)
      $vhb = 3000;
    else
      $vhb = 1900;

    if ($vsp2 > $vhb)
       $vsp2 = $vhb;
    $vspn = ceil($vsp1 + $vsp2);  //auf Euro aufrunden
    mvsp();
    if ($vspn > $vsp)
       $vsp = $vspn;
}

 function mvsp() {
 //Vorsorgepauschale (§39b Abs. 2 Satz 5 Nr 3 EStG) Vergleichsberechnung
 //fuer Guenstigerpruefung PAP Seite 20

  global $zre4vp, $krv, $pkv, $pkpv, $pvz, $pvs, $vsp, $stkl, $vsp1;

   if($zre4vp > 45000)
     $zre4vp = 45000;

  if($pkv > 0){
     if($stkl==6)
      $vsp=0;
    else {
     $vsp = $pkpv * 12;

     if($pkv == 2) {
       $kvsatzag = 0.067;
     if($pvs == 1)
       $pvsatzag = 0.00475;
     else
       $pvsatzag = 0.00975;
     $tagz = $zre4vp * ($kvsatzag + $pvsatzag);
     //if($pkpv > 0 )                          //nicht im PAP; AG-Zuschuss max 1/2 PKV-Prämie
     //$tagz = min($tagz, $pkpv*6);           // - Ende
     $vsp = $vsp - $tagz;
    }
   }
  }
    else {
     $kvsatzan = 0.076;
    if($pvs == 1)
     $pvsatzan = 0.01475;
    else
     $pvsatzan = 0.00975;
    if($pvz == 1)
     $pvsatzan = $pvsatzan + 0.0025;
    $vsp = $zre4vp * ($kvsatzan + $pvsatzan);
     }
    $vsp = ceil($vsp + $vsp1);
  }

    function mst5_6() {
    // Lohnsteuer fuer die Steuerklassen V und VI (§ 39b Abs. 2 Satz 7 EStG) PAP Seite 21

    global $zx, $x, $st;

    $zzx = $x;


  if ($zzx > 26441) {
       $zx = 26441;
       up5_6();
       if ($zzx > 200584){
        $st = $st + (200584 - 26441) * 0.42;
        $st = floor($st + ($zzx - 200584) * 0.45);
       }
       else
        $st = floor($st + ($zzx-26441) * 0.42);
     }
     else {
       $zx = $zzx;
       up5_6();
       if ($zzx > 9429) {
          $vergl = $st;
          $zx = 9429;
          up5_6();
          $hoch = floor($st + ($zzx - 9429) * 0.42);
          if ($hoch < $vergl)
             $st = $hoch;
           else
             $st = $vergl;
        }
     }
  }


  function up5_6() {

  global $x, $zx, $st;

    $x = $zx * 1.25;
    uptab10();
    $st1 = $st;
    $x = $zx * 0.75;
    uptab10();
    $st2 = $st;
    $diff = ($st1 - $st2) * 2;
    $mist = floor($zx * 0.14);
    if ($mist > $diff)
       $st = $mist;
     else
       $st = $diff;
 }

 function msolz() {   // Solidaritätszuschlag, PAP S. 22

 global $kztab, $jbmg, $jw, $anteil1, $solzlzz, $bk, $r;

    $solzfrei = 972 * $kztab;
    if ($jbmg > $solzfrei) {
       $solzj = $jbmg * 5.5 / 100;
       $solzmin = ($jbmg - $solzfrei) * 20 / 100;
       if ($solzmin < $solzj)
          $solzj = $solzmin;
       $jw = $solzj * 100;
       upanteil();
       $solzlzz = $anteil1;
     }
     else
       $solzlzz = 0;

     if ($r > 0){
       $jw = $jbmg * 100;
       upanteil();
       $bk = $anteil1;
       }
     else
       $bk = 0;
    }


 function upanteil() {  // Anteil der Jahresbeiträge für einen LZZ
                        // PAP 2010, S. 23
                        // anteil1 abrunden, anteil2 wird nicht gebraucht

    global $lzz, $jw, $anteil1, $anteil2;

    if ($lzz == 1) {
       $anteil1 = $jw;
       $anteil2 = $jw;
    }
    if ($lzz == 2) {
       $anteil1 = floor(round($jw * 100 / 12)/100);
       $anteil2 = ceil($jw / 12);
    }
    if ($lzz == 3) {
       $anteil1 = floor(round($jw * 700 / 360)/100);
       $anteil2 = ceil($jw * 7 / 360);
    }
    if ($lzz == 4) {
       $anteil1 = floor(round($jw * 100 / 360)/100);
       $anteil2 = ceil($jw / 360);
    }
  }

 function msonst() {  // Berechnung sonstiger Bezüge, PAP 2010, S. 24

     global  $lzz, $lstoso, $zmvb, $sonstb, $zre4j, $jre4, $sonstb, $zvbezj, $jvbez, $vbs, $lstso, $st, $sts, $lstoso, $solzs, $r, $bks, $sterbe, $vbezbso, $f;

       $lzz = 1;
       if($zmvb == 0)
         $zmvb = 12;
       if ($sonstb > 0) {
       mosonst();
       $zre4j = ($jre4 + $sonstb) / 100;
       $zvbezj = ($jvbez + $vbs) / 100;
       $vbezbso = $sterbe;
       mre4sonst();
       mlstjahr();
       $lstso = $st * 100;
       $sts = floor(($lstso - $lstoso) * $f);

       if($sts < 0)
         $sts = 0;
       $solzs = floor($sts * 5.5 / 100);
       if ($r > 0)
          $bks = $sts;
        else
          $bks = 0;
     }
    else {
       $lstso = 0;
       $sts = 0;
       $solzs = 0;
       $bks = 0;
    }
}



function mvmt() {  // Berechnung der Vergütung für mehrjährige Tätigkeit
                   // PAP 2010, S. 25

     global   $ztabfb, $fvbz, $fvbzoso, $vkapa, $vmt, $lstso, $lstoso, $vbezbso, $sterbe, $zre4j, $jre4, $sonstb, $zvbezj, $jvbez, $vbs, $st, $kennvmt, $stv, $solzv, $r, $bkv, $lst2, $lst3, $lst1, $f;

       if($vkapa < 0)
        $vkapa = 0;
    if ($vmt + $vkapa > 0) {
       if($lstso == 0) {
         mosonst();
         $lst1 = $lstoso;
       }
       else
         $lst1 = $lstso;

     $vbezbso = $sterbe + $vkapa;
     $zre4j = ($jre4 + $sonstb + $vmt + $vkapa) / 100;
     $zvbezj = ($jvbez + $vbs + $vkapa) / 100;
     $kennvmt = 2;
     mre4sonst();
     mlstjahr();
     $lst3 = $st * 100;
     mre4abz();
     $kennvmt=1;
     mlstjahr();
     $lst2 = $st * 100;
     $stv = $lst2 - $lst1;
     $lst3 = $lst3 - $lst1;

        if ($lst3 < $stv)
          $stv = $lst3;
       if ($stv < 0)
          $stv = 0;
       else
          $stv = floor($stv * $f);
       $solzv = floor($stv * 5.5) / 100;
       if ($r > 0)
          $bkv = $stv;
        else
          $bkv = 0;
     }
     else {
       $stv = 0;
       $solzv = 0;
       $bkv = 0;
    }
 }

   function mosonst() {
    // Sonderberechnung ohne sonstige Bezüge für Berechnung sonstige Bezüge/Vergütung
    // mehrjährige Tätigkeit. PAP 2010, S. 26

    global $zre4j, $jre4, $zvbezj, $jvbez, $jlfreib, $jlhinzu, $jfreib, $jhinzu, $lstoso, $st;

    $zre4j = $jre4 / 100;
    $zvbezj = $jvbez / 100;
    $jlfreib = $jfreib / 100;
    $jlhinzu = $jhinzu / 100;
    mre4();
    mre4abz();
    mztabfb();
    mlstjahr();
    $lstoso = $st * 100;
  }

  function mre4sonst() {
   // Sonderberechnung mit sonstigen Bezüge für Berechnung sonstige Bezüge/Vergütung
    // mehrjährige Tätigkeit. PAP 2010, S. 26

    global $fvb, $fvbso, $fvbz, $fvbzso;

    mre4();
    $fvb = $fvbso;
    mre4abz();
    $fvbz = $fvbzso;
    mztabfb();

 }

 function uptab10() {  //Tarifliche Einkommensteuer, PAP 2010, S. 27

  global $x, $st, $kztab, $abjuli;

         if ($x < 8005)
          $st = 0;
        else {
        if ($x < 13470) {
           $y = ($x - 8004) / 10000;
           $rw = $y * 912.17;
           $rw = $rw + 1400;
           $st = floor($rw * $y);
         }
         else {
           if ($x < 52882) {
              $y = ($x - 13469) / 10000;
              $rw = $y * 228.74;
              $rw = $rw + 2397;
              $rw = $rw * $y;
              $st = floor($rw + 1038);
            }
         else {
            if( $x < 250731)
                $st = floor($x * 0.42 - 8172);
         else
                $st = floor($x * 0.45 - 15694);
               }
           }
       }

    $st = $st * $kztab;
}

  // --- Ende PAP 2010 -----------------------------------------------

  function jahranteil() { // Berechnung Jahreslohn aus LZZ-Lohn
                          // (nicht im PAP enthalten)
                          // für Berechnung sonstige bzw. mehrjährige Bezüge notwendig.

  global $lzz, $jw, $anteil1, $anteil2;

    if ($lzz == 1){
       $anteil1 = $jw;
       $anteil2 = $anteil1;
       }
    if ($lzz == 2){
       $anteil1 = $jw * 12;
       $anteil2 = $jw/12;
     }
    if ($lzz == 3){
       $anteil1 = $jw * 360 / 7;
       $anteil2 = $jw * 7/360;
       }
    if ($lzz == 4){
       $anteil1 = $jw * 360;
       $anteil2 = $jw/360;
    }
  }

  function komma($wert) {

  $laenge = strlen($wert);
  $pos = strrpos($wert,".");
  if($pos == false)
    $wert = $wert.".00";
  elseif ($laenge - $pos == 2)
    $wert = $wert."0";

  $wert1 = number_format($wert*1000, '', '', '.');
  $laenge = strlen($wert1);
  $wert = substr($wert1,-$laenge,-1);
  return $wert;
  }

  // ------ Berechnung Sozialabgaben ---------------

   function soz() {

       global $zmvb, $vbez, $kapindex, $sterbe, $kvwertvb, $jvbez, $bemesk, $bemesr, $jre4, $re4soz, $lzzsoz, $land, $sonstb, $jsonstb, $krv, $lzz, $pvz, $kvsatz, $anteil1, $anteil2, $jw, $rentewert, $rentewertag, $kvwert, $kvwertag, $pflegewert, $pflegewertag, $aloswert, $aloswertag, $pvs, $pkv, $kvp, $sozproz, $sozprozvb, $jvbez, $jre4ret, $re4ret, $sterbesoz;

       $lzz = $lzzsoz;

       $pflege = 0.975;
       $pflege_ag = $pflege;
     if($land==13) {
         $pflege = 1.475;
         $pflege_ag = 0.475;
       }

       $pvzusatz = 0;
     if ($pvz == 1)
       $pvzusatz = 0.25;

      if($kvsatz<13.4)
         $kvsatz=0;
      else
         $kvsatz = floor($kvsatz*10)/10;

        bemesberech();

      if($bemesk >= $re4soz){
       $bemesk = $re4ret/100 + ($sonstb-$sterbesoz)/100;
       }
     else {
         $restsonstb = max($bemesk-($jre4ret + $jsonstb),0);
         $jw = min($jre4ret,$bemesk);
         jahranteil();
         $bemesk = ($restsonstb + $anteil2)/100;
      }

     if($bemesr>=$re4soz)
       $bemesr = $re4ret/100 + ($sonstb-$sterbesoz)/100;
     else {
         $restsonstb = max($bemesr-($jre4ret + $jsonstb),0);
         $jw = min($jre4ret,$bemesr);
         jahranteil();
         $bemesr = ($restsonstb + $anteil2)/100;
       }

     $rente = 9.95;
     $alos = 1.4;
     $kzahn = 0.9;
     if($krv == 2) $bemesr=0;
     if($kvsatz == 0) $bemesk=0;

     $rentewert=round($bemesr*$rente)/100;
     $rentewertag=$rentewert;
     if($bemesk>0){
     $kvwert=round($bemesk*$kvsatz/2 + $bemesk*$kzahn)/100;
     $kvwertag=round($bemesk*$kvsatz/2)/100;
     $pflegewert=round($bemesk*$pflege + $bemesk*$pvzusatz)/100;
     $pflegewertag=round($bemesk*$pflege_ag)/100;
     }
     $aloswert=round($bemesr*$alos)/100;
     $aloswertag=$aloswert;


     $kvwertvb=0;
     $sterbesozrest = 0;
     $sozproz = $kvsatz + $kzahn + $pflege + $pvzusatz;
     $sozprozvb = 16.25 + $pvzusatz;
     if($kvsatz>0 && $jvbez>0){
      $bemeskvbganz = min(max(4500000-$re4soz,0),$jvbez + $sterbe*$kapindex);
      if($bemeskvbganz > $jvbez){
       $sterbesozrest = ($bemeskvbganz - $jvbez);
       $bemeskvb = $jvbez;
      }
      else {
       $bemeskvb = $bemeskvbganz;
      }
     $jw = $bemeskvb;
     jahranteil();
     $bemeskvb = $anteil2;
     $kvwertvb=round(($anteil2 + $sterbesozrest)* $sozprozvb/100)/100;
     }

     if ($kvp>0){
       if($pkv == 2){
       $jw = $kvp*100/2;
       jahranteil();
       $jw = min($anteil1,358875);
       jahranteil();
       $kvwertag = round($anteil2)/100;
       if($land==13){
       $jw = $kvp*100/2;
       jahranteil();
       $jw = min($anteil1,336375);
       jahranteil();
       $kvwertag = round($anteil2)/100;
       }
      }
      else
       $kvwertag = 0;

       $kvwert=$kvp-$kvwertag;
     }


   }

   function bemesberech() {

   global $bemesk, $re4soz, $kvp, $land, $bemesr;

    $bemesk = min($re4soz,4500000);
     if($kvp > 0)
        $bemesk = 0;

      if ($land==30||$land==4||$land==8||$land==13||$land==14||$land==16)
           $bemesr = min(5580000,$re4soz);

      else
           $bemesr = min(6600000,$re4soz);
   }


  //------------------------------- Parameterübergabe -----------------------

 $ajahr = $_POST['ajahr'];
 if($ajahr>2004)
  $alter1=1;
 $pvz = $_POST['kinderlos'];
 $stkl = $_POST['stkl'];
 $f = str_replace(",",".",($_POST['f']));
 $af = 0;
 if($f > 0 && $f < 1 && $stkl == 4)
   $af = 1;
 else $f=1;
 $zkf = $_POST['zkf'];
 $land = $_POST['bundesland'];
 $pvs = 0;
 if($land==13)
  $pvs = 1;
 $kist = $_POST['r'];
 if($kist==0) $r=0;
  else $r=1;
 $krv = $_POST['e_krv'];
 if ($land==3||$land==4||$land==8||$land==13||$land==14||$land==16 && $krv == 0)
  $krv = 1;

 $lzz = $_POST['lzz'];
 $re4 = str_replace(",",".",($_POST['re4']))*100;
 $sonstb = str_replace(",",".",($_POST['sonstb']))*100;
 $entsch1 = str_replace(",",".",($_POST['entsch_1']))*100;
 $entsch2 = str_replace(",",".",($_POST['entsch_2']))*100;
 $entsch = ($entsch1 + $entsch2);
 $jsonstb = ($_POST['jsonstb'])*100;
 $vmt = ($_POST['vmt'])*100;
 $jfreib = ($_POST['jfreib'])*100;  // ggflls in $lzzjfreib ändern (f. anderen Zeitraum)
 $jhinzu = ($_POST['jhinzu'])*100;  // ggflls in $lzzjhinzu ändern
 $vbez = str_replace(",",".",($_POST['vbez']))*100;
 $zmvb = $_POST['zmvb'];
 if($lzz==2) $zmvb=12;
 $vbezs = str_replace(",",".",($_POST['vbezs']))*100;
 $sterbe = str_replace(",",".",($_POST['sterbe']))*100;
 $vbs = $sterbe;
 $vkapa = ($_POST['vkapa'])*100;
 $vjahr = $_POST['vjahr'];
 $vbezm = str_replace(",",".",($_POST['vbezm']))*100;
 mre4jl();
 $re4soz = $zre4j*100 + $sonstb + $jsonstb - ($zvbezj*100 + $sterbe);
 $lzzsoz = $lzz;
 $re4ret = $re4 - $vbez;
 $jre4ret = ($zre4j - $zvbezj)*100;
 $kapindex = $_POST['kapindex'];
 $sterbesoz = $sterbe;
 $pkpv = str_replace(",",".",($_POST['e_pkpv']));
 $kvp = str_replace(",",".",($_POST['e_kvp']));
 $pkv = 0;
 $kvsatz = 0;
 if($pkpv > 0)
  $pkv = $_POST['e_pkv'];
 if($kvp == 0)
  $kvsatz = str_replace(",",".",($_POST['kvsatz']));
 if($kvsatz==0 && $pkpv==0)
  $pkv=1;

 $brutto = ($re4+$sonstb+$vmt+$vkapa)/100;

 // print_r($_POST);  // zur Überprüfung der übergebenen Parameter

 lst2010();  //Berechnung Lohnsteuer

 // ------------------ Ausgabe ------------------------------

  echo "<p align='center'>&nbsp;<p>";
  echo "<style> TD {font-family: arial;font-size:10pt;text-align: right;}</style>";
  echo "<center><TABLE border=0 width=400><TR><TD align=right colspan=3><font size=2 face=Verdana color=#909090><b>Ergebnis PHP-Gehaltsrecher 2010</b></font></TD></TR>";
  echo "<TR><TD colspan=3>&nbsp;</TD></TR>";

 $steuer = floor($lstlzz+$stv+$sts)/100;
 $soli = floor($solzlzz+$solzs+$solzv)/100;
 $kirche = floor(($bk+$bkv+$bks)*$kist/100)/100;
 $stges = $steuer+$soli+$kirche;

 echo "<TR><b><TD>Bruttolohn:</TD><TD> ".komma($brutto)."</TD><TD> &euro;</TD></TR><TR><TD colspan=3></TD></TR>";
 $info="";
 if($f > 0 && $f < 1)
 $info = "</b>(Ehegattenfaktor von ".$f." berücksichtigt)";
 echo "<TR><TD><b>Lohnsteuer: ".$info. "</TD><TD> ".komma($steuer)."</TD><TD> &euro;</TD></TR>";
 echo "<TR><TD>davon Steuer für laufenden Lohn </TD><TD>".komma($lstlzz/100)."</TD><TD> &euro;</TD></TR>";
 echo "<TR><TD>davon Steuer für Einmalbezug </TD><TD> ".komma($sts/100)."</TD><TD> &euro;</TD></TR>";
 echo "<TR><TD>davon Steuer für Vergütung mehrjäriger Tätigkeit </TD><TD>".komma($stv/100)."</TD><TD> &euro;</TD></TR>";
 echo "<TR><TD><br> <b>Solidaritätszuschlag:</b> </TD><TD><br> ".komma($soli)."</TD><TD><br> &euro;</TD></TR>";
 echo "<TR><TD><b>".$kist."% Kirchensteuer:</b></TD><TD> ".komma($kirche)."</TD><TD> &euro;</TD></TR>";

 //--------------- Auswertung und Ausgabe Sozialabgaben --------------------

      $kvsatz=0;
      if($kvp == 0)
        $kvsatz = str_replace(",",".",($_POST['kvsatz']));
      $aganzeige = $_POST['aganzeige'];
      $u1 = str_replace(",",".",($_POST['e_u1']))*0.01;
      $u2 = str_replace(",",".",($_POST['e_u2']))*0.01;
      $bg = str_replace(",",".",($_POST['e_bg']))*0.01;
       //print_r($_POST);

      soz();  // --- Sozialabgaben berechnen -----

      echo "<TR><TD colspan=3>&nbsp;</TD></TR>";
      if($pkv>0)
      echo "<TR><TD>eigener Anteil private Kranken-/Pflegeversicherung: </TD><TD>".komma($kvwert)."</TD><TD>  &euro;</TD></TR>";
      if($bemesk>0 && $pkv==0) {
      echo "<TR><TD>Beitrag zur Krankenversicherung: </TD><TD>".komma($kvwert)."</TD><TD>  &euro;</TD></TR>";
      echo "<TR><TD>Beitrag zur Pflegeversicherung: </TD><TD>".komma($pflegewert)."</TD><TD>  &euro;</TD></TR>";
      }
      if($kvwertvb>0) {
      echo "<TR><TD align=right>".$sozprozvb."% (voller) Baisiskranken- und Pflegeversicherungsbeitrag für Versorgungsbezüge: ";
      if($sterbe>0 && $kapindex==1)
      echo " (krankenversicherungspflichtige Kapitalauszahlung berücksichtigt)";
      echo "</TD><TD vAlign=bottom align=right>".komma($kvwertvb)."</TD><TD vAlign=bottom>  &euro;</TD></TR>";
      }
      if($bemesr>0){
       echo "<TR><TD>Beitrag zur Rentenversicherung: </TD><TD>".komma($rentewert)."</TD><TD>  &euro;</TD></TR>";
      echo "<TR><TD>Beitrag zur Arbeitslosenversicherung: </TD><TD>".komma($aloswert)."</TD><TD>  &euro;</TD></TR>";
      }
        echo "<TR><TD colspan=3>&nbsp;</TD></TR>";
        echo "<TR><TD><font color=#900000>Summe der Steuern:</font></TD><TD><font color=#900000> ".komma($stges)."</font></TD><TD><font color=#900000>  &euro;</font></TD></TR>";
       $sozges = $kvwert+$pflegewert+$rentewert+$aloswert+$kvwertvb;
       echo"<TR><TD><font color=#009000>Summe Sozialversicherung:</font></TD><TD><font color=#009000> ".komma($sozges)."</font></TD><TD><font color=#009000>  &euro; </font></TD></TR>";
       $netto = $brutto-($stges+$sozges);
       echo "<TR><TD><font color=#900090><b>Netto:</b></font> </TD><TD><font color=#900090><b>".komma($netto)."</b></font></TD><TD><font color=#900090>  <b>&euro;</b></font>";
       echo "</font></TD></TR>";
      if($aganzeige==1) {
      echo "<TR><TD colspan=3><hr size=0></TD></TR>";
      echo "<TR><TD style=\"text-align: right;\" colspan=3><font color=#0000FF><b>Arbeitgeberanteil</b></font> </TD></TR>";
      if($pkv == 2)
      echo "<TR><TD>Zuschuss zur privaten Kranken-/Pflegeversicherung: </TD><TD>".komma($kvwertag)."</TD><TD>  &euro;</TD></TR>";
      if($bemesk>0 && $pkv==0) {
      echo "<TR><TD>Krankenversicherung: </TD><TD>".komma($kvwertag)."</TD><TD>  &euro;</TD></TR>";
      echo "<TR><TD>Pflegeversicherung: </TD><TD>".komma($pflegewertag)."</TD><TD>  &euro;</TD></TR>";
      }
      if($bemesr>0){
      echo "<TR><TD>Rentenversicherung: </TD><TD>".komma($rentewertag)."</TD><TD>  &euro;</TD></TR>";
      echo "<TR><TD>Arbeitslosenversicherung: </TD><TD>".komma($aloswertag)."</TD><TD>  &euro;</TD></TR>";
      }
      $umlwert=0;
      if($u1>0) {
       if ($land==4||$land==8||$land==13||$land==14||$land==16)
           $jw = 5580000;
       else
           $jw = 6600000;
      jahranteil();
      $umlwert=min($re4ret,$anteil2);
      $u3 = min($re4ret + $sonstb, $anteil2)* 0.001;
      echo "<TR><TD>Umlage U1:</TD><TD> ".komma(floor($umlwert*$u1)*0.01)."</TD><TD> &euro;</TD></TR>";
      echo "<TR><TD>Umlage U2:</TD><TD> ".komma(floor($umlwert*$u2)*0.01)."</TD><TD> &euro;</TD></TR>";
      echo "<TR><TD>Insolvenzumlage (0,41%):</TD><TD> ".komma(floor($u3)*0.041)."</TD><TD> &euro;</TD></TR>";
      echo "<TR><TD>BG-Beitrag:</TD><TD> ".komma(floor($umlwert*$bg)*0.01)."</TD><TD> &euro;</TD></TR>";
      }
      if($kvp>0)
        $pflegewert=0;
      $agsumme=$kvwertag+$pflegewertag+$aloswertag+$rentewertag+$brutto+floor($umlwert*$u1)*0.01 + floor($umlwert*$u2)*0.01 + floor($umlwert*$bg)*0.01 + floor($u3)*0.041;
      echo "<TR><TD><font color=#000090><b>Arbeitgeber Gesamtbelastung</b></font>: </TD><TD><font color=#000090><b>".komma($agsumme)."</b></font></TD><TD><font color=#000090> <b>&euro;</b></font></TD></TR>";
      }
      echo "</TABLE>";
      echo "<p align=center><a href='#' onClick='history.back()'><font size=2 face=arial>zurück</font></a>";

    // folgende Zeile kann man zur Überprüfung anzeigen lassen (Doppelslash dazu entfernen)

       echo "<div style='position: relative; top: 30px;'><font size=1 face=arial color=#909090><p align=center>";
       if($fvb > 0)
       echo "FVB: ".$fvb." | FVBZ: ".$fvbz." | ";
       if($alte > 0)
       echo "ALTE: ".$alte." | ";
       echo "VSP: ".$vsp." | VSP1: ".$vsp1." | VSPN: ".$vspn." | ZTABFB: ".$ztabfb."</font></div>";

?>

bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped)
Email: contact@elmoujehidin.net bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped) Email: contact@elmoujehidin.net