Example #1
0
function g2()
{
    foreach ($GLOBALS['usr_langs'] as $lang) {
        f2();
        echo $lang . ' ';
    }
}
Example #2
0
function f1($a)
{
    echo $a;
    $a = htmlspecialchars($a);
    echo $a;
    $a = htmlspecialchars($a);
    $a = f2($a);
}
Example #3
0
function f3()
{
    /*
     * Global requires a variable_name
     */
    // global f1();						// Illegal
    global ${f2()};
    // Legal
    // global $c->d;						// Illegal
}
Example #4
0
function main()
{
    f1();
    f2();
    f3();
    f4();
    f5();
    f6();
    f7();
    f8();
}
Example #5
0
<?php

# [OK]
function f2($b)
{
    $b = htmlspecialchars($b);
    return $b;
}
$A = $_POST['b'];
$A = f2($A);
echo $A;
Example #6
0
<?php

function f2($b)
{
    $b = htmlspecialchars($b);
    return $b;
    # filtering left side permanently
}
echo f2($_GET['a']);
# NOTHING
echo $_GET['a'];
# XSS
Example #7
0
<?php

function f1()
{
    debug_print_backtrace();
}
function f2($arg1, $arg2)
{
    f1();
    yield;
    // force generator
}
function f3($gen)
{
    $gen->rewind();
    // trigger run
}
$gen = f2('foo', 'bar');
f3($gen);
//*/
///*
// 2 default followed by one non-default; unusual, but permitted
function f2($p1 = 100, $p2 = 1.23, $p3)
{
    $argList = func_get_args();
    echo "f2: # arguments passed is " . count($argList) . "\n";
    foreach ($argList as $k => $e) {
        echo "\targ[{$k}] = >{$e}<\n";
    }
    echo "\$p1: " . ($p1 == NULL ? "NULL" : $p1) . ", \$p2: " . ($p2 == NULL ? "NULL" : $p2) . ", \$p3: " . ($p3 == NULL ? "NULL" : $p3) . "\n";
}
f2();
f2(10);
f2(10, 20);
f2(10, 20, 30);
//*/
///*
// 1 default followed by one non-default followed by 1 default; unusual, but permitted
function f3($p1 = 100, $p2, $p3 = "abc")
{
    $argList = func_get_args();
    echo "f3: # arguments passed is " . count($argList) . "\n";
    foreach ($argList as $k => $e) {
        echo "\targ[{$k}] = >{$e}<\n";
    }
    echo "\$p1: " . ($p1 == NULL ? "NULL" : $p1) . ", \$p2: " . ($p2 == NULL ? "NULL" : $p2) . ", \$p3: " . ($p3 == NULL ? "NULL" : $p3) . "\n";
}
f3();
f3(10);
f3(10, 20);
Example #9
0
$x = 2;
function f1($par)
{
    var_dump($par);
    $par *= 2;
}
f1($x);
// int(2)
var_dump($x);
// int(2)
function f2(&$par)
{
    var_dump($par);
    $par *= 2;
}
f2($x);
// int(2)
var_dump($x);
// int(4)
function f3(&$par)
{
    global $par;
    var_dump($par);
    $par *= 2;
}
f3($x);
// NULL
var_dump($x);
// int(4)
/*
 * signature ::= '&'? IDENT formal_parameter*
Example #10
0
 function print_level($query, &$summa_p, $irbrakis_p, $suga, $id)
 {
     global $lang;
     global $translate;
     $select = "";
     $orderby = "ORDER BY ";
     $criteria = array();
     for ($level = 1; $level <= $this->lsk; $level++) {
         // tekošā grupēšanas līmeņa lauks
         $lauks = $this->MyPOST["gtype" . $this->grup . $level];
         if ($lauks == 'garums' || $lauks == 'mind_pirms_red') {
             $this->build_value_ranges($level, $suga);
             if ($lauks == 'garums') {
                 $this->gar_allowed_values = $this->allowed_values;
             } elseif ($lauks == 'mind_pirms_red') {
                 $this->diam_allowed_values = $this->allowed_values;
             }
         }
         if ($lauks == 'fsc') {
             $this->allowed_values = array();
             $this->allowed_values[0] = '0';
             $this->allowed_values[1] = '1';
             $typ = 'string';
         }
         if ($lauks == 'kad_piegad' || $lauks == 'auto' || $lauks == 'brakis' || $lauks == 'cenu_matrica' || $lauks == 'cirsmas_kods' || $lauks == 'kad_piegad' || $lauks == 'kravas_id' || $lauks == 'pavadzime.pavadzime' || $lauks == 'piegad_kods' || $lauks == 'soferis' || $lauks == 'skira' || $lauks == 'suga' || $lauks == 'iecirknis') {
             //no visiem atlas?tajiem ba??iem pavadz?m? atlasa attiec?g? lauka atrodam?s v?rt?bas (pa vienai)
             $this->build_single_values($lauks, $query);
         }
         $row = 0;
         $summa_p->init();
         $myid = 0;
         while (list($key, $val) = each($this->allowed_values)) {
             $myid++;
             if ($lauks == 'suga') {
                 $suga = $val;
             }
             // virsm?ru sadal?jums
             if ($suga && $this->MyPOST['dalit_virsmeri' . $this->grup]) {
                 if ($this->MyPOST['virsmeri' . $this->grup . '_' . $suga] != '') {
                     $virsmeri = explode(',', $this->MyPOST['virsmeri' . $this->grup . '_' . $suga]);
                     for ($i = 0; $i < count($virsmeri); $i++) {
                         $virsmeri[$i] = $virsmeri[$i] / 100;
                     }
                 }
             } else {
                 if ($this->MyPOST['virsmeri' . $this->grup] != '') {
                     $virsmeri = explode(',', $this->MyPOST['virsmeri' . $this->grup]);
                     for ($i = 0; $i < count($virsmeri); $i++) {
                         $virsmeri[$i] = $virsmeri[$i] / 100;
                     }
                 }
             }
             if ($suga && $this->MyPOST['dalit_raukums' . $this->grup]) {
                 $raukums = raukums_2_array($this->MyPOST['raukums' . $this->grup . '_' . $suga]);
             } else {
                 $raukums = raukums_2_array($this->MyPOST['raukums' . $this->grup]);
             }
             if ($suga && $this->MyPOST['dalit_koeficients' . $this->grup]) {
                 $koeficients = $this->MyPOST['koeficients' . $this->grup . '_' . $suga];
             } else {
                 $koeficients = $this->MyPOST['koeficients' . $this->grup];
             }
             if ($typ != 'string') {
                 $mbounds = explode('-', $this->allowed_values[$key]);
             }
             if (count($mbounds) > 1) {
                 $low_range_brakis = 0;
                 $high_range_brakis = 0;
                 if ($mbounds[0] > 5) {
                     $low_range_brakis = $mbounds[0] + 5;
                 } else {
                     $low_range_brakis = $mbounds[0];
                 }
                 if ($mbounds[1] < 994) {
                     $high_range_brakis = $mbounds[1] + 5;
                 } else {
                     $high_range_brakis = $mbounds[1];
                 }
                 //pievienots 17.07.2007
                 if ($myid == 1) {
                     $select .= ", CASE \n";
                 }
                 if ($this->MyPOST["gtype" . $this->grup . $level] == 'mind_pirms_red') {
                     $select .= "WHEN ((balkis_temp.import_type <> 'zbm' AND mind_pirms_red BETWEEN {$mbounds['0']} AND {$mbounds['1']}) OR (balkis_temp.import_type = 'zbm' AND mind_pirms_red BETWEEN {$low_range_brakis} AND {$high_range_brakis})) THEN {$myid} \n";
                     if ($myid == sizeof($this->allowed_values)) {
                         $select .= "END AS diam_group";
                         $orderby .= "diam_group";
                         $criteria[] = "diam_group";
                         //
                     }
                     //$myquery = $query . " and  ((". $this->MyPOST["gtype".$this->grup.$level] . ">=" . $mbounds[0] ." and " . $this->MyPOST["gtype".$this->grup.$level] . "<=" . $mbounds[1] . " AND balkis_temp.import_type <> 'zbm') or (". $this->MyPOST["gtype".$this->grup.$level] . ">=" . $low_range_brakis ." and " . $this->MyPOST["gtype".$this->grup.$level] . "<=" . $high_range_brakis . " AND balkis_temp.import_type = 'zbm'))";
                 } else {
                     $select .= "WHEN (garums BETWEEN {$mbounds['0']} AND {$mbounds['1']}) THEN {$myid} \n";
                     if ($myid == sizeof($this->allowed_values)) {
                         $select .= "END AS gar_group";
                         $orderby .= "gar_group";
                         $criteria[] = "gar_group";
                         //$this->gar_allowed_values = $this->allowed_values;
                     }
                     //$myquery = $query . " and  (". $this->MyPOST["gtype".$this->grup.$level] . ">=" . $mbounds[0] ." and " . $this->MyPOST["gtype".$this->grup.$level] . "<=" . $mbounds[1] . ")";
                 }
             } else {
                 if ($myid == sizeof($this->allowed_values)) {
                     $orderby .= $this->MyPOST["gtype" . $this->grup . $level];
                     $criteria[] = $this->MyPOST["gtype" . $this->grup . $level];
                 }
             }
             if ($myid == sizeof($this->allowed_values) && $level < $this->lsk) {
                 $orderby .= ",";
             }
         }
     }
     $query__ = "select mind_pirms_red as DBruto, garums as LBruto, mind_pec_red as DPecReduc, gar_pec_red as LPecReduc, brakis, suga, pavadzime.cenu_matrica as cm" . $select . $query . $orderby;
     $r = mysql_query($query__);
     $same_group = false;
     $gostu_tabula = $this->MyPOST['gostu_tabula' . $this->grup];
     while ($m = mysql_fetch_array($r)) {
         $last = $m;
         $same_group = true;
         $criteria_changed = 6;
         for ($ci = $this->lsk - 1; $ci >= 0; $ci--) {
             $value = $criteria[$ci];
             if ($old_values[$value] != $m[$value]) {
                 $criteria_changed = $ci;
             }
             if ($old_values[$value] != $m[$value]) {
                 if ($same_group) {
                     $old_bak = $old_values;
                 }
                 $same_group = false;
                 $old_values[$value] = $m[$value];
             }
         }
         if (!$same_group && $old_bak) {
             for ($ci = $this->lsk - 2; $ci >= 0; $ci--) {
                 if (!$summa[$ci + 1]) {
                     $summa[$ci + 1] = new CSumma();
                 }
                 $summa[$ci + 1]->add_skaits($SSkaits);
                 $summa[$ci + 1]->add_skaits_bad($SSkaitsBad);
                 $summa[$ci + 1]->add_virsmers($SVVirsm);
                 $summa[$ci + 1]->add_redukcija_d($SVReducD);
                 $summa[$ci + 1]->add_redukcija_l($SVReducL);
                 $summa[$ci + 1]->add_brakis($SVBrakis);
                 $summa[$ci + 1]->add_neto($SVNeto);
                 $summa[$ci + 1]->add_bruto($SVBruto);
                 if ($criteria_changed <= $ci && !$this->XML_Variants) {
                     //fb($summa,'Summa');
                     $this->AddSumRowAtLevel($ci, $criteria, $summa, $old_bak);
                 }
             }
             $this->arr_index++;
             $this->arr[$this->arr_index] = array();
             foreach ($criteria as $key => $value) {
                 $this->arr[$this->arr_index][$key] = $this->kodi($value, $old_bak[$value]);
             }
             $sm = new CSumma();
             $sm->skaits = $SSkaits;
             $sm->skaits_bad = $SSkaitsBad;
             $sm->virsmers = $SVVirsm;
             $sm->redukcija_d = $SVReducD;
             $sm->redukcija_l = $SVReducL;
             $sm->brakis = $SVBrakis;
             $sm->neto = $SVNeto;
             $sm->bruto = $SVBruto;
             //fb($sm,'Sm');
             $this->arr[$this->arr_index][summa] = $sm;
             //echo $m['brakis'];
             $summa_p->add_skaits($SSkaits);
             $summa_p->add_skaits_bad($SSkaitsBad);
             $summa_p->add_virsmers($SVVirsm);
             $summa_p->add_redukcija_d($SVReducD);
             $summa_p->add_redukcija_l($SVReducL);
             $summa_p->add_brakis($SVBrakis);
             $summa_p->add_neto($SVNeto);
             $summa_p->add_bruto($SVBruto);
             /*NULL vertibu ievietosana*/
             $SVBruto = 0;
             $SVReducD = 0;
             $SVReducL = 0;
             $SVVirsm = 0;
             $SVNeto = 0;
             $SVBrakis = 0;
             $SSkaits = 0;
             $SSkaitsBad = 0;
         }
         $SSkaits++;
         /*Vai ir Vika Wood*/
         //		$min_virsmers = 0;
         if ($suga && $this->MyPOST['dalit_virsmers' . $this->grup]) {
             $min_virsmers = $this->MyPOST['virsmers' . $this->grup . '_' . $suga] / 100;
         } else {
             $min_virsmers = $this->MyPOST['virsmers' . $this->grup] / 100;
         }
         if ($this->MyPOST['metode'] == '1') {
         } else {
             if ($this->MyPOST['metode'] == '2') {
             } else {
                 if ($this->MyPOST['metode'] == '3') {
                 } else {
                     if ($this->MyPOST['metode'] == '4') {
                     } else {
                     }
                 }
             }
         }
         $tilp_Metode = $this->MyPOST['metode'];
         $gar_PirmsRed = 0;
         $gar_PecRed = 0;
         $diam_TievPirmsRed = 0;
         $diam_TievPecRed = 0;
         $diam_VidusPirmsRed = 0;
         $diam_VidusPecRed = 0;
         $diam_ResPirmsRed = 0;
         $diam_ResPecRed = 0;
         //---Tiek veikta pārbaude, pēc kādiem nosacījumiem noapaļot garumu pirms redukcijas, no kura tiek rēķināts Bruto tilpums!-------------------------------------------------------------------------
         $gar_PirmsRed = $m['LBruto'] / 100;
         if ($this->MyPOST['noapalot_garumu'] == '1') {
             $gar_PirmsRed = floor($m['LBruto'] / 10) / 10;
         } elseif ($this->MyPOST['noapalot_garumu'] == '2') {
             $gar_PirmsRed = (floor($m['LBruto'] / 10) + 0.5) / 10;
         }
         //---Tiek pārbaudīts, vai garums tiek ņemts kā nominālais garums, vai notiek nominālā garuma aprēķināšana, no kura tiks rēķināts Neto tilpums!-------------------------------------------------------------------------
         $gar_PecRed = gAtskaite::nom($gar_PirmsRed, $virsmeri, $min_virsmers);
         if ($this->MyPOST['is_vika'] == 'on') {
             $gar_PecRed = $m['LPecReduc'] / 100;
         }
         //---Tiek aprēķināts nominālais garums pirms pirms redukcijas, lai varētu aprēķināt tilpumu bez virsmēra!-------------------------------------------------------------------------
         $gar_NomPirsmRed = gAtskaite::nom($gar_PirmsRed, $virsmeri, $min_virsmers);
         //----------------------------------------------------------------------------
         $diam_TievPirmsRed = $m['DBruto'] / 1000;
         $diam_VidusPirmsRed = $m['DBruto'] / 1000;
         $diam_ResPirmsRed = $m['DBruto'] / 1000;
         $rauk_koef = get_raukums_no_diam($raukums, $diam_TievPirmsRed * 1000);
         if ($this->MyPOST['noapalot_diametru'] == 'on') {
             $diam_TievPirmsRed = (floor($m['DBruto'] / 10) + 0.5) / 100;
             $diam_VidusPirmsRed = (floor($m['DBruto'] / 10) + 0.5) / 100;
             $diam_ResPirmsRed = (floor($m['DBruto'] / 10) + 0.5) / 100;
         }
         //----------------------------------------------------------------------------
         if ($this->MyPOST['braka_virsmers'] == 'on') {
         } else {
         }
         $DPecReduc = $m['DPecReduc'] / 1000;
         $DReduc = $DBruto - $DPecReduc;
         if ($m[brakis] != '255') {
             $irbrakis = true;
             $brkods = 'standart';
         }
         $tilpums_bruto = f2($diam_TievPirmsRed, $gar_PirmsRed, $rauk_koef, $koeficients, $gostu_tabula);
         $tilpums_neto = f2($DPecReduc, $gar_PecRed, $rauk_koef, $koeficients, $gostu_tabula);
         $tilpums_bruto_bez_virsmera = f2($diam_TievPirmsRed, $gar_NomPirsmRed, $rauk_koef, $koeficients, $gostu_tabula);
         $tilpums_virsmers = $tilpums_bruto - $tilpums_bruto_bez_virsmera;
         $tilpums_garuma_redukcija = $tilpums_bruto_bez_virsmera - $tilpums_neto;
         $tilpums_diametrs_redukcija = 0;
         //----------
         $SVBruto += $tilpums_bruto;
         if ($gostu_tabula) {
             if ($VBruto == -1 || $VReducD == -1 || $VReducL == -1 || $VVirsm == -1) {
                 $SSkaitsBad++;
             }
             if ($VBruto == -1) {
                 $VBruto = 0;
             }
             if ($VReducD == -1) {
                 $VReducD = 0;
             }
             if ($VReducL == -1) {
                 $VReducL = 0;
             }
             if ($VVirsm == -1) {
                 $VVirsm = 0;
             }
         }
         $VBrakis = 0;
         if (strlen($this->rejected_values[$key]) == 1) {
             $irbrakis = true;
             $brkods = $this->rejected_values[$key];
         }
         if (!$irbrakis) {
             /*Vai ir brakis?*/
             $SVReducD += $tilpums_diametrs_redukcija;
             $SVReducL += $tilpums_garuma_redukcija;
             if ($gar_PecRed != 0) {
                 $SVVirsm += $tilpums_virsmers;
                 $SVNeto += $tilpums_neto;
             } else {
                 $SVBrakis += $SVBruto;
             }
         } else {
             if ($gar_PecRed != 0) {
                 $SVVirsm += $tilpums_virsmers;
                 $VBrakis = $tilpums_bruto - $tilpums_virsmers;
                 $SVBrakis += $VBrakis;
             } else {
                 $VBrakis = $tilpums_bruto;
                 $SVBrakis += $VBrakis;
             }
         }
     }
     /*Ievietosana*/
     //$this->arr[$this->arr_index][$level-1] = $this->kodi($this->MyPOST['gtype'.$this->grup.$this->lsk],$val);
     /* Vienu reizi pašās beigās papildina ar pēdējo ierakstu */
     $this->arr_index++;
     $this->arr[$this->arr_index] = array();
     foreach ($criteria as $key => $value) {
         //fb($m['value']);
         $this->arr[$this->arr_index][$key] = $this->kodi($value, $last[$value]);
     }
     $sm = new CSumma();
     $sm->skaits = $SSkaits;
     $sm->skaits_bad = $SSkaitsBad;
     $sm->virsmers = $SVVirsm;
     $sm->redukcija_d = $SVReducD;
     $sm->redukcija_l = $SVReducL;
     $sm->brakis = $SVBrakis;
     $sm->neto = $SVNeto;
     $sm->bruto = $SVBruto;
     $this->arr[$this->arr_index][summa] = $sm;
     for ($ci = $this->lsk - 2; $ci >= 0; $ci--) {
         if (!$summa[$ci + 1]) {
             $summa[$ci + 1] = new CSumma();
         }
         $summa[$ci + 1]->add_skaits($SSkaits);
         $summa[$ci + 1]->add_skaits_bad($SSkaitsBad);
         $summa[$ci + 1]->add_virsmers($SVVirsm);
         $summa[$ci + 1]->add_redukcija_d($SVReducD);
         $summa[$ci + 1]->add_redukcija_l($SVReducL);
         $summa[$ci + 1]->add_brakis($SVBrakis);
         $summa[$ci + 1]->add_neto($SVNeto);
         $summa[$ci + 1]->add_bruto($SVBruto);
         if (!$this->XML_Variants) {
             $this->AddSumRowAtLevel($ci, $criteria, $summa, $last);
         }
     }
     $summa_p->add_skaits($SSkaits);
     $summa_p->add_skaits_bad($SSkaitsBad);
     $summa_p->add_virsmers($SVVirsm);
     $summa_p->add_redukcija_d($SVReducD);
     $summa_p->add_redukcija_l($SVReducL);
     $summa_p->add_brakis($SVBrakis);
     $summa_p->add_neto($SVNeto);
     $summa_p->add_bruto($SVBruto);
 }
Example #11
0
{
    $arr = array(1, 2, 3);
    foreach ($arr as &$v1) {
        foreach ($arr as $v2) {
            return;
        }
    }
}
function f3()
{
    $arr = array(1, 2, 3);
    foreach ($arr as $v1) {
        foreach ($arr as &$v2) {
            return;
        }
    }
}
function f4()
{
    $arr = array(1, 2, 3);
    foreach ($arr as &$v1) {
        foreach ($arr as &$v2) {
            return;
        }
    }
}
f1();
f2();
f3();
f4();
echo "Done\n";
Example #12
0
<?php

# not entry point, vuln
function f1($a)
{
    echo $a;
}
function f2($b)
{
    echo $_GET['a'];
}
if (!defined('SOME_CONST')) {
    die;
}
f2(3);
Example #13
0
    echo "f1 fetch\n";
    (yield $row);
}
function f2()
{
    $db = new db();
    $obj = $db->async_query('select sleep(1)');
    echo "f2 async_query\n";
    (yield $obj);
    $row = $db->fetch();
    echo "f2 fetch\n";
    (yield $row);
}
$start = microtime();
$gen1 = f1();
$gen2 = f2();
$gen1->current();
$gen2->current();
$gen1->next();
$gen2->next();
$ret1 = $gen1->current();
$ret2 = $gen2->current();
var_dump($ret1);
var_dump($ret2);
$end = microtime();
echo "Total time: ", $end - $start;
class db
{
    static $links;
    private $obj;
    function getConn()
Example #14
0
function f()
{
    f2();
}
Example #15
0
echo "--------------- test type hint class-name ---------------------\n";
class C1
{
}
class D1 extends C1
{
}
function f2(C1 $p1)
{
    echo "Inside " . __METHOD__ . "\n";
    var_dump($p1);
}
//f2(123); // Argument 1 passed to f1() must be an instance of C1, integer give
//f2([10,20]);    // Argument 1 passed to f2() must be an instance of C1, array given
f2(new C1());
f2(new D1());
echo "--------------- test type hint object ---------------------\n";
function f3(object $p1)
{
    echo "Inside " . __METHOD__ . "\n";
    var_dump($p1);
}
//f3(123); // Argument 1 passed to f1() must be an instance of object, integer given
//f3([10,20]);    // Argument 1 passed to f2() must be an instance of object, array given
//f3(new C1);         // must be an instance of object, instance of C1 given
// object is not a special/recognized marker in this context
echo "--------------- test type hint interface-name ---------------------\n";
interface I1
{
}
interface I2 extends I1
Example #16
0
echo 'f(10, 12) + g(15) = ' . (f(10, 12) + g(15)) . "\n";
echo 'f(10, 12) - g(15) = ' . (f(10, 12) - g(15)) . "\n";
echo 'f(10, 12) * g(15) = ' . f(10, 12) * g(15) . "\n";
echo 'f(10, 12) / g(15) = ' . f(10, 12) / g(15) . "\n";
function f1($a)
{
    echo "Inside f1\n";
    return $a;
}
function f2($a)
{
    echo "Inside f2\n";
    return $a;
}
function f3($a)
{
    echo "Inside f3\n";
    return $a;
}
function f4($a)
{
    echo "Inside f4\n";
    return $a;
}
$values = array(0, 1, 2, 3, 4, 5, 6);
var_dump($values);
$values[f1(4) - f2(2)] = $values[f3(3) * f4(2)];
var_dump($values);
$values = array(0, 1, 2, 3, 4, 5, 6);
$values[f1(1) + f2(2)] = $values[f3(6) / f4(3)];
var_dump($values);
Example #17
0
    }
    function f2()
    {
    }
}
namespace functions\ns1 {
    function f1()
    {
    }
    f1();
    // local
    \f1();
    // global
    f2();
    // global
    \f2();
    // global
}
namespace functions\ns2 {
    function f2()
    {
    }
}
namespace functions\foo\bar\baz {
    function f3()
    {
    }
}
namespace {
    f1();
    // global
Example #18
0
function f1($a, $b)
{
    $d = c1::a(5, $a + $b);
    $a = $a + $d['abcd'];
    echo f2($a + $b, $a * $b) . "\n";
}
Example #19
0
<?php

# entry point, vuln
function f1($a)
{
    echo $a;
}
function f2($b)
{
    f1($b);
}
f2($_GET['a']);
Example #20
0
<?php

function f2()
{
    $i = 0;
    $foo = array(1, 2, 3, 4);
    foreach ($foo as $key => &$val) {
        (yield null);
        echo "key={$key} val={$val}\n";
        if ($val == 2) {
            $foo[$key] = 0;
        } else {
            if ($val == 3) {
                $foo['a'] = 7;
            } else {
                $val++;
            }
        }
        ++$i;
        if ($i >= 20) {
            break;
        }
    }
    var_dump($foo);
}
foreach (f2() as $_) {
}
Example #21
0
    }
}
class Test2 implements IfaceInvoke
{
    public function __invoke($x)
    {
        var_dump(__CLASS__);
        var_dump($x);
    }
}
function f1($x, $y)
{
    $x($y);
    $x->__invoke($y);
}
function f2(A $x, $y)
{
    $x($y);
    $x->__invoke($y);
}
function f3(IfaceInvoke $x, $y)
{
    $x($y);
    $x->__invoke($y);
}
$t1 = new Test1();
$t2 = new Test2();
f1($t1, 1);
f1($t2, 2);
f2($t1, 1);
f3($t2, 2);
Example #22
0
<?php

function id($x)
{
    return $x;
}
function f1($x)
{
    $z = id($x[0]);
    foreach ($x[0] as $a) {
        $z[] = array(id($z), count($x[0]));
    }
}
f1(array(array(0, 1, 2, 3)));
function f2($x)
{
    var_dump($x[0]);
    $y = 'foo' . $x[0] . 'bar';
}
f2('foobar');
function f3($x)
{
    $x = is_string($x[0]) ? $x[0] : get_class($x[0]);
    return $x;
}
var_dump(f3('abc'));
var_dump(f3(array(new stdClass())));
 function print_level($level, $query, &$summa_p, $irbrakis_p, $suga, $id)
 {
     global $lang;
     global $translate;
     // tekošā grupēšanas līmeņa lauks
     $lauks = $this->MyPOST["gtype" . $this->grup . $level];
     ////////////////////////////////////////////////////////////////// JA IR DAL?JUMS PA SUG?M //////////////////
     if ($lauks == 'garums' || $lauks == 'mind_pirms_red' || $lauks == 'skira') {
         if ($this->MyPOST["dalit" . $this->grup . $level] && $suga) {
             // ja ir sadalījums pa sugām ņemam attiecīgo lauku
             $gvalues = "gvalues" . $this->grup . $level . "_" . $suga;
         } else {
             // ja nav tad ņemam kopīgo
             $gvalues = "gvalues" . $this->grup . $level;
         }
         // sadalam nepieciešamās vērtības
         //echo $this->MyPOST[$gvalues];
         $a = explode(',', $this->MyPOST[$gvalues]);
         $a = str_replace(' ', '', $a);
         // brāķis
         $abr = array();
         for ($i = 0; $i < count($a); $i++) {
             if (substr($a[$i], 0, 1) == 'b' || substr($a[$i], 0, 1) == 'B') {
                 $abr[$i] = '1';
                 //kursh masiva elements apzime braki
                 $a[$i] = substr($a[$i], 1);
                 //masiva elements bez B prieksa
             }
         }
     }
     ////////////////////////////////////////////////////////////////// JA IR DAL?JUMS PA SUG?M //////////////////
     if ($lauks == 'fsc') {
         $a = array();
         $a[0] = '0';
         $a[1] = '1';
         $typ = 'string';
     }
     if ($lauks == 'kad_piegad' || $lauks == 'auto' || $lauks == 'brakis' || $lauks == 'cenu_matrica' || $lauks == 'cirsmas_kods' || $lauks == 'kad_piegad' || $lauks == 'kravas_id' || $lauks == 'nelss_pavadzime.pavadzime' || $lauks == 'piegad_kods' || $lauks == 'soferis' || $lauks == 'suga' || $lauks == 'iecirknis' || $lauks == 'skira' && $a[0] == '' && sizeof($abr) == 0) {
         //no visiem atlas?tajiem ba??iem pavadz?m? atlasa attiec?g? lauka atrodam?s v?rt?bas (pa vienai)
         $a = array();
         $query__ = "select DISTINCT {$lauks} as lauks " . $query . " order by {$lauks} ";
         $r = $this->DB->query($query__);
         $ii = 0;
         while ($m = $this->DB->get_row($r)) {
             $a[$ii] = $m['lauks'];
             $ii++;
         }
         if ($lauks == 'brakis') {
             if ($a[count($a) - 1] == '255') {
                 for ($j = count($a) - 1; $j > 0; $j--) {
                     $a[$j] = $a[$j - 1];
                 }
                 $a[0] = '255';
             }
         }
         $typ = 'string';
     }
     $row = 0;
     $summa_p->init();
     $myid = 0;
     while (list($key, $val) = each($a)) {
         $myid++;
         if ($lauks == 'suga') {
             $suga = $val;
         }
         // virsm?ru sadal?jums
         if ($suga && $this->MyPOST['dalit_virsmeri' . $this->grup]) {
             if ($this->MyPOST['virsmeri' . $this->grup . '_' . $suga] != '') {
                 $virsmeri = explode(',', $this->MyPOST['virsmeri' . $this->grup . '_' . $suga]);
                 for ($i = 0; $i < count($virsmeri); $i++) {
                     $virsmeri[$i] = $virsmeri[$i] / 100;
                 }
             }
         } else {
             if ($this->MyPOST['virsmeri' . $this->grup] != '') {
                 $virsmeri = explode(',', $this->MyPOST['virsmeri' . $this->grup]);
                 for ($i = 0; $i < count($virsmeri); $i++) {
                     $virsmeri[$i] = $virsmeri[$i] / 100;
                 }
             }
         }
         if ($suga && $this->MyPOST['dalit_raukums' . $this->grup]) {
             $raukums = raukums_2_array($this->MyPOST['raukums' . $this->grup . '_' . $suga]);
         } else {
             $raukums = raukums_2_array($this->MyPOST['raukums' . $this->grup]);
         }
         if ($suga && $this->MyPOST['dalit_koeficients' . $this->grup]) {
             $koeficients = $this->MyPOST['koeficients' . $this->grup . '_' . $suga];
         } else {
             $koeficients = $this->MyPOST['koeficients' . $this->grup];
         }
         if ($typ != 'string') {
             $mbounds = explode('-', $a[$row]);
         }
         if (count($mbounds) > 1) {
             $low_range_brakis = 0;
             $high_range_brakis = 0;
             if ($mbounds[0] > 5) {
                 $low_range_brakis = $mbounds[0];
             } else {
                 $low_range_brakis = $mbounds[0];
             }
             if ($mbounds[1] < 994) {
                 $high_range_brakis = $mbounds[1];
             } else {
                 $high_range_brakis = $mbounds[1];
             }
             //pievienots 17.07.2007
             if ($this->MyPOST["gtype" . $this->grup . $level] == 'mind_pirms_red') {
                 $myquery = $query . " and  ((" . $this->MyPOST["gtype" . $this->grup . $level] . ">=" . $mbounds[0] . " and " . $this->MyPOST["gtype" . $this->grup . $level] . "<=" . $mbounds[1] . " AND nelss_balkis_temp.import_type <> 'zbm') or (" . $this->MyPOST["gtype" . $this->grup . $level] . ">=" . $low_range_brakis . " and " . $this->MyPOST["gtype" . $this->grup . $level] . "<=" . $high_range_brakis . " AND nelss_balkis_temp.import_type = 'zbm'))";
             } else {
                 $myquery = $query . " and  (" . $this->MyPOST["gtype" . $this->grup . $level] . ">=" . $mbounds[0] . " and " . $this->MyPOST["gtype" . $this->grup . $level] . "<=" . $mbounds[1] . ")";
             }
             //echo 'adding to query = ' . $query . " and  (". $this->MyPOST["gtype".$this->grup.$level] . ">=" . $mbounds[0] ." and " . $this->MyPOST["gtype".$this->grup.$level] . "<=" . $mbounds[1] . ")" . '<br />';
             //echo '$myquery = ' . $myquery . '<br />';
             //$myquery = $query . " and  (". $this->MyPOST["gtype".$this->grup.$level] . ">=" . $mbounds[0] ." and " . $this->MyPOST["gtype".$this->grup.$level] . "<=" . $mbounds[1] . ")";
         } else {
             if ($typ == 'string') {
                 $myquery = $query . " and  " . $this->MyPOST["gtype" . $this->grup . $level] . "='" . $a[$row] . "'";
             } else {
                 $myquery = $query . " and  " . $this->MyPOST["gtype" . $this->grup . $level] . "=" . $a[$row];
             }
         }
         $row = $row + 1;
         if ($this->rowclosed == true) {
             $this->rowclosed = false;
             $this->arr_index++;
             $this->arr[$this->arr_index] = array();
         }
         if ($level == 1) {
             $this->arr[$this->arr_index][0] = "";
         } else {
             if ($row > 1) {
                 for ($i = 1; $i < $level + 1; $i++) {
                     $this->arr[$this->arr_index][$i - 1] = "";
                 }
             }
         }
         $irbrakis = false;
         if ($irbrakis_p == true) {
             $irbrakis = true;
         }
         // Ja ir v?l dzi??ki l?me?i
         if ($level < $this->lsk) {
             if (!$val || $val == '') {
                 $this->arr[$this->arr_index][$level - 1] = "nav";
             } else {
                 $this->arr[$this->arr_index][$level - 1] = $this->kodi($this->MyPOST['gtype' . $this->grup . $level], $val);
             }
             $sum = new CSumma();
             if (strlen($abr[$key]) == 1) {
                 $irbrakis = true;
                 $brkods = $abr[$key];
             }
             //$rrow = mysql_query("select * from gatskaite where rowid = '".dig3($id).dig3($myid)."'");
             //if ($mrow = mysql_fetch_array($rrow))
             //{
             //	$saved = 1;
             //	$x = unserialize($mrow['data']);
             //	$sum = $x[summa];
             //}
             //else
             //{
             //}
             $this->print_level($level + 1, $myquery, $sum, $irbrakis, $suga, $id . $myid);
             /* Testa nolūkiem */
             // Te saskaita kop? par l?meni summu - XML varianta tas nav jadara
             if (!$this->XML_Variants) {
                 $this->arr_index++;
                 $this->arr[$this->arr_index] = array();
                 if ($sum->bruto) {
                     $this->arr[$this->arr_index][-1] = $translate['kopa'][$lang];
                     for ($i = 0; $i < $this->lsk; $i++) {
                         if ($level == $i + 1) {
                             $this->arr[$this->arr_index][$i] = $this->kodi($this->MyPOST['gtype' . $this->grup . $level], $val);
                         } else {
                             $this->arr[$this->arr_index][$i] = "";
                         }
                     }
                     if (!$this->MyPOST['negrupet']) {
                         $this->arr[$this->arr_index][summa] = $sum;
                     }
                     //echo "<tr><td height=1 colspan=".(7+$this->lsk)."><hr></tr>";
                 }
             }
             $this->rowclosed = true;
             if (!$this->MyPOST['negrupet']) {
                 $summa_p->add_skaits($sum->skaits);
                 $summa_p->add_skaits_bad($sum->skaits_bad);
                 $summa_p->add_virsmers($sum->virsmers);
                 $summa_p->add_redukcija_d($sum->redukcija_d);
                 $summa_p->add_redukcija_l($sum->redukcija_l);
                 $summa_p->add_brakis($sum->brakis);
                 $summa_p->add_neto($sum->neto);
                 $summa_p->add_bruto($sum->bruto);
                 //print_r($summa_p);
                 $this->lasttype = 'sum';
             }
         } else {
             $this->lasttype = 'data';
             ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Saakums////////////////////////////////////////////////////////////////////////////////////
             if ($this->MyPOST['metode'] == '1') {
                 /*Query izvilksana*/
                 $tbl_field_identity = "";
                 $tbl_field_mind_pirms_red = "";
                 $tbl_field_garums = "";
                 $tbl_field_mind_pec_red = "";
                 $tbl_field_gar_pec_red = "";
                 $tbl_field_brakis = "";
                 $tbl_field_cenu_matrica = "";
                 $query__ = "select nelss_balkis_temp.id as Ident, mind_pirms_red as DBruto, garums as LBruto, mind_pec_red as DPecReduc, gar_pec_red as LPecReduc, brakis, nelss_pavadzime.cenu_matrica as cm " . $myquery;
                 $r = $this->DB->query($query__);
                 $SVBruto = 0;
                 $SVReducD = 0;
                 $SVReducL = 0;
                 $SVVirsm = 0;
                 $SVNeto = 0;
                 $SVBrakis = 0;
                 $SSkaits = 0;
                 $SSkaitsBad = 0;
                 $gostu_tabula = $this->MyPOST['gostu_tabula' . $this->grup];
                 while ($m = $this->DB->get_row($r)) {
                     $SSkaits++;
                     /*Vai ir Vika Wood*/
                     $min_virsmers = $this->MyPOST['virsmers' . $this->grup] / 100;
                     if ($suga && $this->MyPOST['dalit_virsmers' . $this->grup]) {
                         $min_virsmers = $this->MyPOST['virsmers' . $this->grup . '_' . $suga] / 100;
                     }
                     $DBruto = $m['DBruto'] / 1000;
                     /*Noapalosana Test*/
                     if ($this->MyPOST['noapalot_garumu'] == '1') {
                         $LBruto = floor($m['LBruto'] / 10) / 10;
                     } elseif ($this->MyPOST['noapalot_garumu'] == '2') {
                         $LBruto = (floor($m['LBruto'] / 10) + 0.5) / 10;
                     } else {
                         $LBruto = $m['LBruto'] / 100;
                     }
                     $rauk_koef = get_raukums_no_diam($raukums, $DBruto * 1000);
                     $DPecReduc = $m['DPecReduc'] / 1000;
                     $DReduc = $DBruto - $DPecReduc;
                     $VBruto = f2($DBruto, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                     $VBezReducD = f2($DPecReduc, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                     $DBrutoNoap = $m['DBruto'] / 1000;
                     if ($this->MyPOST['noapalot_diametru'] == 'on') {
                         $DBrutoNoap = (floor($m['DBruto'] / 10) + 0.5) / 100;
                     }
                     if ($m[brakis] != '255') {
                         $irbrakis = true;
                         $brkods = 'standart';
                     }
                     if ($this->MyPOST['is_vika'] == 'on') {
                         $LNeto = $m['LPecReduc'] / 100;
                         $LNom = nom($LBruto, $virsmeri, $min_virsmers);
                         $LPecVirsm = $LNom;
                         $LReduc = round($LPecVirsm - $LNeto, 3);
                         $LVirsm = round($LBruto - $LPecVirsm, 3);
                         $VBezVirsm = f2($DPecReduc, $LBruto - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsmNeredD = f2($DBruto, $LBruto - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         if (!$irbrakis) {
                             $VVirsm = $VBezReducD - $VBezVirsm;
                         } else {
                             $VVirsm = $VBruto - $VBezVirsmNeredD;
                             //				$VVirsm = $VBezReducD-$VBezVirsm;
                         }
                         $VBezReducL = f2($DPecReduc, $LPecVirsm - $LReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducL = $VBezVirsm - $VBezReducL;
                     } else {
                         $LPecReduc = $m['LPecReduc'] / 100;
                         if ($this->MyPOST['noapalot_garumu'] == '1') {
                             $LPecReduc = floor($m['LPecReduc'] / 10) / 10;
                             $LNeap = $m['LPecReduc'] / 100;
                         }
                         $LNom = nom($LNeap, $virsmeri, $min_virsmers);
                         $LNeto = $LNom;
                         $LVirsm = round($LPecReduc - $LNeto, 3);
                         $LReduc = round($LBruto - $LPecReduc, 3);
                         $VBruto_redukcija = f2($DBruto, $LNom, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezReducD_redukcija = f2($DPecReduc, $LNom, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducD = $VBruto_redukcija - $VBezReducD_redukcija;
                         $VBezReducL = f2($DBrutoNoap, $LBruto - $LReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducL = $VBruto - $VBezReducL;
                         $VBezReduc = f2($DPecReduc, $LPecReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsm = f2($DPecReduc, $LPecReduc - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsmNeredD = f2($DBruto, $LPecReduc - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         $VVirsm = $VBruto - $VBezVirsmNeredD;
                     }
                     $SVBruto += $VBruto;
                     if ($gostu_tabula) {
                         if ($VBruto == -1 || $VReducD == -1 || $VReducL == -1 || $VVirsm == -1) {
                             $SSkaitsBad++;
                         }
                         if ($VBruto == -1) {
                             $VBruto = 0;
                         }
                         if ($VReducD == -1) {
                             $VReducD = 0;
                         }
                         if ($VReducL == -1) {
                             $VReducL = 0;
                         }
                         if ($VVirsm == -1) {
                             $VVirsm = 0;
                         }
                     }
                     $VBrakis = 0;
                     if (strlen($abr[$key]) == 1) {
                         $irbrakis = true;
                         $brkods = $abr[$key];
                     }
                     if (!$irbrakis) {
                         /*Vai ir brakis?*/
                         if ($LNom != 0) {
                             $SVVirsm += $VVirsm;
                             //$SVNeto += f2($DPecReduc,$LNeto,$rauk_koef,$koeficients,$gostu_tabula);
                             $SVNeto += $VBruto - $VReducL - $VReducD - $VVirsm;
                             $SVReducD += $VReducD;
                             $SVReducL += $VReducL;
                         } else {
                             $SVBrakis += $VBruto;
                         }
                     } else {
                         if ($LNom != 0) {
                             if ($this->MyPOST['braka_virsmers'] == 'on') {
                                 $SVVirsm += $VVirsm;
                                 $VBrakis = $VBruto - $VVirsm;
                             } else {
                                 $VBrakis = $VBruto;
                             }
                             $SVBrakis += $VBrakis;
                         } else {
                             $VBrakis = $VBruto;
                             $SVBrakis += $VBrakis;
                         }
                     }
                 }
                 //-------------------------------------------TEST-Line->
             } elseif ($this->MyPOST['metode'] == '2') {
             } elseif ($this->MyPOST['metode'] == '3') {
             } else {
             }
             //				$this->arr[$this->arr_index][$level-3] = $this->kodi($this->MyPOST['gtype'.$this->grup.$this->lsk],$val);
             //        echo $this->arr[$this->arr_index][$level];
             /* Testēšanas nolūkiem */
             if (!$this->MyPOST['negrupet']) {
                 $this->arr[$this->arr_index][b_kods] = $this->kodi($this->MyPOST['gtype' . $this->grup . $this->lsk], $val);
                 $sm = new CSumma();
                 $sm->skaits = $SSkaits;
                 $sm->skaits_bad = $SSkaitsBad;
                 $sm->virsmers = $SVVirsm;
                 $sm->redukcija_d = $SVReducD;
                 $sm->redukcija_l = $SVReducL;
                 $sm->brakis = $SVBrakis;
                 $sm->neto = $SVNeto;
                 $sm->bruto = $SVBruto;
                 $this->arr[$this->arr_index][summa] = $sm;
                 $this->rowclosed = true;
                 $summa_p->add_skaits($SSkaits);
                 $summa_p->add_skaits_bad($SSkaitsBad);
                 $summa_p->add_virsmers($SVVirsm);
                 $summa_p->add_redukcija_d($SVReducD);
                 $summa_p->add_redukcija_l($SVReducL);
                 $summa_p->add_brakis($SVBrakis);
                 $summa_p->add_neto($SVNeto);
                 $summa_p->add_bruto($SVBruto);
             }
         }
     }
     /*
     */
     /////////////////////////////////////////////////////////////////////////////////////////////////////////////////Beigas/////////////////////////////////////////////
     // "<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>";
     // Aizpild?m tuk?umus
     // "<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>";
     if ($this->lsk > 1) {
         for ($j = $this->lsk - 2; $j >= 0; $j--) {
             $v = $this->arr[0][$j];
             for ($i = 0; $i < count($this->arr); $i++) {
                 // iekop?jam ja tuk?s
                 if ($this->arr[$i][$j] == "" && $this->arr[$i][$j + 1] != "") {
                     $this->arr[$i][$j] = $v;
                 }
                 // ja nav tuk?s pa?em v?rt?bu
                 if ($this->arr[$i][$j] != "") {
                     $v = $this->arr[$i][$j];
                 }
             }
         }
     }
 }
Example #24
0
<?php

function f2($b)
{
    echo $b;
}
function f1($c)
{
    ## this shit doesn't work either
    $b = htmlspecialchars($c);
    return $b;
}
$A = $_POST['a'];
$A = f1($A);
f2($A);
unset($a);
// remove only alias from point, so destructor runs
echo "Done\n";
//*/
///*
echo "----------------- value returning of handle types ----------------------\n";
function f2()
{
    $b = new Point(5, 7);
    // create first new point, and make $b an alias to it
    echo "After 'new Point(5, 7)', \$b is {$b}\n";
    return $b;
    // return a temporary copy, which is a new alias
    // However, as $b goes away, remove its alias
}
$a = f2();
// make a new alias in $a and remove the temporary alias
echo "After '\$a = f2()', \$a is {$a}\n";
unset($a);
// remove only alias from point, so destructor runs
echo "Done\n";
//*/
///*
echo "----------------- byRef returning of handle types ----------------------\n";
function &g2()
{
    $b = new Point(5, 7);
    // create first new point, and make $b an alias to it
    echo "After 'new Point(5, 7)', \$b is {$b}\n";
    return $b;
    // return as though using $a =& $b
Example #26
0
        var_dump($k, $v);
    }
}
function f5($x)
{
    switch ($x[0]) {
        case 0:
            var_dump($x[0]);
    }
}
function f6($x, $y, $z)
{
    if ($z) {
        goto my_clause;
    }
    if ($y) {
        var_dump($y);
    } else {
        if ($x[0]) {
            var_dump($x[0]);
            my_clause:
            var_dump($x);
        }
    }
}
f1(array(0, 0));
f2(array(10));
f3(array(10), false);
f4(array(array(1, 2, 3)));
f5(array(false, false));
f6(array(true), false, false);
Example #27
0
<?php

function f1($a)
{
    echo $a;
    // final_call_vulnerable{xss}{f1::$a}=code=>'echo($a);'	,line=>4,current_local_virtual_line_number=>2
}
function f2($b)
{
    $b = trim($b);
    f1($b);
}
f2($_GET['page']);
Example #28
0
function f1($a, $b)
{
    echo f2($a + $b, $a * $b) . "\n";
}
Example #29
0
 function print_level($level, $query, &$summa_p, $irbrakis_p, $suga, $id)
 {
     global $lang;
     global $translate;
     // tekošā grupēšanas līmeņa lauks
     $lauks = $this->MyPOST["gtype" . $this->grup . $level];
     ////////////////////////////////////////////////////////////////// JA IR DAL?JUMS PA SUG?M //////////////////
     if ($lauks == 'garums' || $lauks == 'mind_pirms_red' || $lauks == 'skira') {
         if ($this->MyPOST["dalit" . $this->grup . $level] && $suga) {
             // ja ir sadalījums pa sugām ņemam attiecīgo lauku
             $gvalues = "gvalues" . $this->grup . $level . "_" . $suga;
         } else {
             // ja nav tad ņemam kopīgo
             $gvalues = "gvalues" . $this->grup . $level;
         }
         // sadalam nepieciešamās vērtības
         //echo $this->MyPOST[$gvalues];
         $a = explode(',', $this->MyPOST[$gvalues]);
         $a = str_replace(' ', '', $a);
         // brāķis
         $abr = array();
         for ($i = 0; $i < count($a); $i++) {
             if (substr($a[$i], 0, 1) == 'b' || substr($a[$i], 0, 1) == 'B') {
                 $abr[$i] = '1';
                 //kursh masiva elements apzime braki
                 $a[$i] = substr($a[$i], 1);
                 //masiva elements bez B prieksa
             }
         }
     }
     ////////////////////////////////////////////////////////////////// JA IR DAL?JUMS PA SUG?M //////////////////
     if ($lauks == 'fsc') {
         $a = array();
         $a[0] = '0';
         $a[1] = '1';
         $typ = 'string';
     }
     if ($lauks == 'kad_piegad' || $lauks == 'auto' || $lauks == 'brakis' || $lauks == 'cenu_matrica' || $lauks == 'cirsmas_kods' || $lauks == 'kad_piegad' || $lauks == 'kravas_id' || $lauks == 'pavadzime.pavadzime' || $lauks == 'piegad_kods' || $lauks == 'soferis' || $lauks == 'suga' || $lauks == 'iecirknis' || $lauks == 'skira' && $a[0] == '' && sizeof($abr) == 0) {
         //no visiem atlas?tajiem ba??iem pavadz?m? atlasa attiec?g? lauka atrodam?s v?rt?bas (pa vienai)
         $a = array();
         $query__ = "select DISTINCT {$lauks} as lauks " . $query . " order by {$lauks} ";
         $r = $this->DB->query($query__);
         $ii = 0;
         while ($m = $this->DB->get_row($r)) {
             $a[$ii] = $m['lauks'];
             $ii++;
         }
         if ($lauks == 'brakis') {
             if ($a[count($a) - 1] == '255') {
                 for ($j = count($a) - 1; $j > 0; $j--) {
                     $a[$j] = $a[$j - 1];
                 }
                 $a[0] = '255';
             }
         }
         $typ = 'string';
     }
     $row = 0;
     $summa_p->init();
     $myid = 0;
     while (list($key, $val) = each($a)) {
         $myid++;
         if ($lauks == 'suga') {
             $suga = $val;
         }
         // virsm?ru sadal?jums
         if ($suga && $this->MyPOST['dalit_virsmeri' . $this->grup]) {
             if ($this->MyPOST['virsmeri' . $this->grup . '_' . $suga] != '') {
                 $virsmeri = explode(',', $this->MyPOST['virsmeri' . $this->grup . '_' . $suga]);
                 for ($i = 0; $i < count($virsmeri); $i++) {
                     $virsmeri[$i] = $virsmeri[$i] / 100;
                 }
             }
         } else {
             if ($this->MyPOST['virsmeri' . $this->grup] != '') {
                 $virsmeri = explode(',', $this->MyPOST['virsmeri' . $this->grup]);
                 for ($i = 0; $i < count($virsmeri); $i++) {
                     $virsmeri[$i] = $virsmeri[$i] / 100;
                 }
             }
         }
         if ($suga && $this->MyPOST['dalit_raukums' . $this->grup]) {
             $raukums = raukums_2_array($this->MyPOST['raukums' . $this->grup . '_' . $suga]);
         } else {
             $raukums = raukums_2_array($this->MyPOST['raukums' . $this->grup]);
         }
         if ($suga && $this->MyPOST['dalit_koeficients' . $this->grup]) {
             $koeficients = $this->MyPOST['koeficients' . $this->grup . '_' . $suga];
         } else {
             $koeficients = $this->MyPOST['koeficients' . $this->grup];
         }
         if ($typ != 'string') {
             $mbounds = explode('-', $a[$row]);
         }
         if (count($mbounds) > 1) {
             $low_range_brakis = 0;
             $high_range_brakis = 0;
             if ($mbounds[0] > 5) {
                 $low_range_brakis = $mbounds[0];
             } else {
                 $low_range_brakis = $mbounds[0];
             }
             if ($mbounds[1] < 994) {
                 $high_range_brakis = $mbounds[1];
             } else {
                 $high_range_brakis = $mbounds[1];
             }
             //pievienots 17.07.2007
             if ($this->MyPOST["gtype" . $this->grup . $level] == 'mind_pirms_red') {
                 $myquery = $query . " and  ((" . $this->MyPOST["gtype" . $this->grup . $level] . ">=" . $mbounds[0] . " and " . $this->MyPOST["gtype" . $this->grup . $level] . "<=" . $mbounds[1] . " AND balkis_temp.import_type <> 'zbm') or (" . $this->MyPOST["gtype" . $this->grup . $level] . ">=" . $low_range_brakis . " and " . $this->MyPOST["gtype" . $this->grup . $level] . "<=" . $high_range_brakis . " AND balkis_temp.import_type = 'zbm'))";
             } else {
                 $myquery = $query . " and  (" . $this->MyPOST["gtype" . $this->grup . $level] . ">=" . $mbounds[0] . " and " . $this->MyPOST["gtype" . $this->grup . $level] . "<=" . $mbounds[1] . ")";
             }
             //echo 'adding to query = ' . $query . " and  (". $this->MyPOST["gtype".$this->grup.$level] . ">=" . $mbounds[0] ." and " . $this->MyPOST["gtype".$this->grup.$level] . "<=" . $mbounds[1] . ")" . '<br />';
             //echo '$myquery = ' . $myquery . '<br />';
             //$myquery = $query . " and  (". $this->MyPOST["gtype".$this->grup.$level] . ">=" . $mbounds[0] ." and " . $this->MyPOST["gtype".$this->grup.$level] . "<=" . $mbounds[1] . ")";
         } else {
             if ($typ == 'string') {
                 $myquery = $query . " and  " . $this->MyPOST["gtype" . $this->grup . $level] . "='" . $a[$row] . "'";
             } else {
                 $myquery = $query . " and  " . $this->MyPOST["gtype" . $this->grup . $level] . "=" . $a[$row];
             }
         }
         $row = $row + 1;
         if ($this->rowclosed == true) {
             $this->rowclosed = false;
             $this->arr_index++;
             $this->arr[$this->arr_index] = array();
         }
         if ($level == 1) {
             $this->arr[$this->arr_index][0] = "";
         } else {
             if ($row > 1) {
                 for ($i = 1; $i < $level + 1; $i++) {
                     $this->arr[$this->arr_index][$i - 1] = "";
                 }
             }
         }
         $irbrakis = false;
         if ($irbrakis_p == true) {
             $irbrakis = true;
         }
         // Ja ir v?l dzi??ki l?me?i
         if ($level < $this->lsk) {
             if (!$val || $val == '') {
                 $this->arr[$this->arr_index][$level - 1] = "nav";
             } else {
                 $this->arr[$this->arr_index][$level - 1] = $this->kodi($this->MyPOST['gtype' . $this->grup . $level], $val);
             }
             $sum = new CSumma();
             if (strlen($abr[$key]) == 1) {
                 $irbrakis = true;
                 $brkods = $abr[$key];
             }
             //$rrow = mysql_query("select * from gatskaite where rowid = '".dig3($id).dig3($myid)."'");
             //if ($mrow = mysql_fetch_array($rrow))
             //{
             //	$saved = 1;
             //	$x = unserialize($mrow['data']);
             //	$sum = $x[summa];
             //}
             //else
             //{
             //}
             $this->print_level($level + 1, $myquery, $sum, $irbrakis, $suga, $id . $myid);
             /* Testa nolūkiem */
             // Te saskaita kop? par l?meni summu - XML varianta tas nav jadara
             if (!$this->XML_Variants) {
                 $this->arr_index++;
                 $this->arr[$this->arr_index] = array();
                 if ($sum->bruto) {
                     $this->arr[$this->arr_index][-1] = $translate['kopa'][$lang];
                     for ($i = 0; $i < $this->lsk; $i++) {
                         if ($level == $i + 1) {
                             $this->arr[$this->arr_index][$i] = $this->kodi($this->MyPOST['gtype' . $this->grup . $level], $val);
                         } else {
                             $this->arr[$this->arr_index][$i] = "";
                         }
                     }
                     if (!$this->MyPOST['negrupet']) {
                         $this->arr[$this->arr_index][summa] = $sum;
                     }
                     //echo "<tr><td height=1 colspan=".(7+$this->lsk)."><hr></tr>";
                 }
             }
             $this->rowclosed = true;
             if (!$this->MyPOST['negrupet']) {
                 $summa_p->add_skaits($sum->skaits);
                 $summa_p->add_skaits_bad($sum->skaits_bad);
                 $summa_p->add_virsmers($sum->virsmers);
                 $summa_p->add_redukcija_d($sum->redukcija_d);
                 $summa_p->add_redukcija_l($sum->redukcija_l);
                 $summa_p->add_brakis($sum->brakis);
                 $summa_p->add_neto($sum->neto);
                 $summa_p->add_bruto($sum->bruto);
                 //print_r($summa_p);
                 $this->lasttype = 'sum';
             }
             //$this->arr[$this->arr_index]['type']='sum';
             //$this->arr[$this->arr_index]['level']=$level;
             //$st = serialize($this->arr[$this->arr_index]);
             //if ($level==1)
             //	mysql_query("insert into gatskaite (rowid,data) values ('".dig3($myid)."','$st')");
             //else
             //	mysql_query("insert into gatskaite (rowid,data) values ('".dig3($id).dig3($myid)."','$st')");
         } else {
             $this->lasttype = 'data';
             ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Saakums////////////////////////////////////////////////////////////////////////////////////
             if ($this->MyPOST['metode'] == '1') {
                 /*Query izvilksana*/
                 $query__ = "select balkis_temp.id as Ident, mind_pirms_red as DBruto, garums as LBruto, mind_pec_red as DPecReduc, gar_pec_red as LPecReduc, brakis, pavadzime.cenu_matrica as cm " . $myquery;
                 //      echo $query__.'<br /><br />';
                 $r = $this->DB->query($query__);
                 /*NULL vertibu ievietosana*/
                 $SVBruto = 0;
                 $SVReducD = 0;
                 $SVReducL = 0;
                 $SVVirsm = 0;
                 $SVNeto = 0;
                 $SVBrakis = 0;
                 $SSkaits = 0;
                 $SSkaitsBad = 0;
                 $gostu_tabula = $this->MyPOST['gostu_tabula' . $this->grup];
                 /*
                 */
                 while ($m = $this->DB->get_row($r)) {
                     $SSkaits++;
                     /*Vai ir Vika Wood*/
                     if ($suga && $this->MyPOST['dalit_virsmers' . $this->grup]) {
                         $min_virsmers = $this->MyPOST['virsmers' . $this->grup . '_' . $suga] / 100;
                     } else {
                         $min_virsmers = $this->MyPOST['virsmers' . $this->grup] / 100;
                     }
                     $Ident = $m['Ident'];
                     //        $LBruto = $m['LBruto'] / 100;
                     $DBruto = $m['DBruto'] / 1000;
                     /*Noapalosana Test*/
                     if ($this->MyPOST['noapalot_garumu'] == '1') {
                         $LBruto = floor($m['LBruto'] / 10) / 10;
                         //					echo "Bruto noapaļots = ".$DBrutoNoap.'<br>';
                     } elseif ($this->MyPOST['noapalot_garumu'] == '2') {
                         $LBruto = (floor($m['LBruto'] / 10) + 0.5) / 10;
                         //					echo "Bruto noapaļots = ".$DBrutoNoap.'<br>';
                     } elseif ($this->MyPOST['noapalot_garumu'] == '3') {
                         $LBruto = $m['LBruto'] / 100;
                         //					echo "Bruto noapaļots = ".$DBrutoNoap.'<br>';
                     } else {
                         $LBruto = $m['LBruto'] / 100;
                     }
                     $rauk_koef = get_raukums_no_diam($raukums, $DBruto * 1000);
                     $DPecReduc = $m['DPecReduc'] / 1000;
                     $DReduc = $DBruto - $DPecReduc;
                     $VBruto = f2($DBruto, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                     /*
                             echo "DBruto = ".$DBruto.'<br/>';
                             echo "LBruto= ".$LBruto.'<br/>';
                             echo "rauk_koef= ".$rauk_koef.'<br/>';
                             echo "koeficients = ".$koeficients.'<br/>';
                             echo "gostu_tabula = ".$gostu_tabula.'<br/>','<br/>','<br/>';
                     */
                     //echo $rauk_koef . '; ' . $koeficients . '; ' . $VBruto . '<br />';
                     $VBezReducD = f2($DPecReduc, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                     //        $VReducD = $VBruto-$VBezReducD;
                     //        echo "VReducD => ".$VReducD." = ".$VBruto." - ".$VBezReducD.'<br/>','<br/>','<br/>';
                     /*Noapalosana*/
                     if ($this->MyPOST['noapalot_diametru'] == 'on') {
                         $DBrutoNoap = (floor($m['DBruto'] / 10) + 0.5) / 100;
                     } else {
                         $DBrutoNoap = $m['DBruto'] / 1000;
                     }
                     if ($m[brakis] != '255') {
                         $irbrakis = true;
                         $brkods = 'standart';
                     }
                     //print_r($this->MyPOST);
                     //echo '<<<<<<<<<<<<<<<<<<<<' . $this->MyPOST['piegad_grupa'];
                     //        if (strtoupper($this->MyPOST['pieg_lig_num'])=='VIKA WOOD') {
                     if ($this->MyPOST['is_vika'] == 'on') {
                         $LNeto = $m['LPecReduc'] / 100;
                         $LNom = nom($LBruto, $virsmeri, $min_virsmers);
                         $LPecVirsm = $LNom;
                         $LReduc = round($LPecVirsm - $LNeto, 3);
                         $LVirsm = round($LBruto - $LPecVirsm, 3);
                         $VBezVirsm = f2($DPecReduc, $LBruto - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsmNeredD = f2($DBruto, $LBruto - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         if (!$irbrakis) {
                             $VVirsm = $VBezReducD - $VBezVirsm;
                         } else {
                             $VVirsm = $VBruto - $VBezVirsmNeredD;
                             //				$VVirsm = $VBezReducD-$VBezVirsm;
                         }
                         $VBezReducL = f2($DPecReduc, $LPecVirsm - $LReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducL = $VBezVirsm - $VBezReducL;
                     } else {
                         if ($this->MyPOST['noapalot_garumu'] == '1') {
                             $LPecReduc = floor($m['LPecReduc'] / 10) / 10;
                             $LNeap = $m['LPecReduc'] / 100;
                         } else {
                             $LPecReduc = $m['LPecReduc'] / 100;
                         }
                         $LNom = nom($LNeap, $virsmeri, $min_virsmers);
                         $LNeto = $LNom;
                         $LVirsm = round($LPecReduc - $LNeto, 3);
                         $LReduc = round($LBruto - $LPecReduc, 3);
                         $VBruto_redukcija = f2($DBruto, $LNom, $rauk_koef, $koeficients, $gostu_tabula);
                         //echo $rauk_koef . '; ' . $koeficients . '; ' . $VBruto . '<br />';
                         $VBezReducD_redukcija = f2($DPecReduc, $LNom, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducD = $VBruto_redukcija - $VBezReducD_redukcija;
                         $VBezReducL = f2($DBrutoNoap, $LBruto - $LReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducL = $VBruto - $VBezReducL;
                         $VBezReduc = f2($DPecReduc, $LPecReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsm = f2($DPecReduc, $LPecReduc - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsmNeredD = f2($DBruto, $LPecReduc - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         if (!$irbrakis) {
                             $VVirsm = $VBruto - $VBezVirsmNeredD;
                         } else {
                             $VVirsm = $VBruto - $VBezVirsmNeredD;
                         }
                         /*      
                               if($Ident == 12774972) {
                         //                $VBruto = f2($DBruto,$LBruto,$rauk_koef,$koeficients,$gostu_tabula);
                                 $Neto = $VBruto - $VReducL - $VReducD - $VVirsm;
                                 echo "Bruto tilp.= ".$VBruto.'<br />'."Diametrs = ".$DBruto.'<br />'."Neto = ".$Neto.'<br />'."Diametrs (Tīrais) = ".$m['DBruto'].'<br />'."Garums = ".$LBruto.'<br />'."Garums (Tīrais) = ".$m['LBruto'].'<br />'."Raukums = ".$rauk_koef.'<br />'."Koeficents = ".$koeficients.'<br />';
                               }
                         */
                     }
                     $SVBruto += $VBruto;
                     /*
                     Parveidosana uz mazakam mervienibam
                     				$DBruto = $DBruto/1000;				
                     				$DPecReduc = $DPecReduc/1000;
                     				$LBruto = $LBruto/100;
                     				$LPecReduc = $LPecReduc/100;
                     */
                     /*        $DReduc = round($DBruto - $DPecReduc,3);
                     */
                     /*				
                     				echo '<br />','$ID = ' . $r_id . '<br />';
                     				echo '$LPecReduc = ' . $LPecReduc . '<br />';
                     				echo '$LBruto = ' . $LBruto . '<br />';
                     				echo '$DBruto = ' . $DBruto . '<br />';
                     				echo '$DPecReduc = ' . $DPecReduc . '<br />';
                     				echo '$DReduc = ' . $DReduc . '<br />';
                     				echo '$LNeto = ' . $LNeto . '<br />';
                     				echo '$LVirsm = ' . $LVirsm . '<br />';
                     				echo '$LPecVirsm = ' . $LPecVirsm . '<br />';
                     				echo '$LNom = ' . $LNom . '<br />';
                     				echo '$LReduc = ' . $LReduc . '<br />';
                     				
                     				echo '$VBruto = ' . $VBruto . '<br />';
                     				
                     				echo '$SVBruto = ' . $SVBruto . '<br />';
                     				echo '$SVNeto = ' . $SVNeto . '<br />';
                     				
                     				echo '$VReducD = ' . $VReducD . '<br />';
                     				
                     				echo '$VBezReducL = ' . $VBezReducL . '<br />';
                     				echo '$VBezReducD = ' . $VBezReducD . '<br />';
                     				echo '$VBezVirsm = ' . $VBezVirsm . '<br />';
                     				echo '$VReducL = ' . $VReducL . '<br />';
                     				
                     				echo '$SVReducD = ' . $SVReducD . '<br />';
                     				
                     				echo '$SVReducL = ' . $SVReducL . '<br />';
                     				
                     				echo '$VBezReduc = ' . $VBezReduc . '<br />';
                     				
                     				echo '$VVirsm = ' . $VVirsm . '<br />';
                     				echo '$min_virsmers = ' . $min_virsmers . '<br />';
                     				
                     				echo '<br /><br /><br />';
                     */
                     /*
                     $bruto_temp = f2($DBruto,$LBruto,$rauk_koef,$koeficients,$gostu_tabula);
                     $bruto_temp_red = f2($DNoapReduc,$LBruto,$rauk_koef,$koeficients,$gostu_tabula);
                     $DReduc = f2($DPecReduc,$LBruto,$rauk_koef,$koeficients,$gostu_tabula);
                     $LReduc = f2($DNoapReduc,$LPecReduc,$rauk_koef,$koeficients,$gostu_tabula);
                     $Reduc   = f2($DPecReduc,$LPecReduc,$rauk_koef,$koeficients,$gostu_tabula);
                     $virsm = f2($DPecReduc,$l3,$rauk_koef,$koeficients,$gostu_tabula);
                     $virsm_nered = f2($DBruto,$l3,$rauk_koef,$koeficients,$gostu_tabula);        
                     */
                     /*
                     */
                     if ($gostu_tabula) {
                         if ($VBruto == -1 || $VReducD == -1 || $VReducL == -1 || $VVirsm == -1) {
                             $SSkaitsBad++;
                         }
                         if ($VBruto == -1) {
                             $VBruto = 0;
                         }
                         if ($VReducD == -1) {
                             $VReducD = 0;
                         }
                         if ($VReducL == -1) {
                             $VReducL = 0;
                         }
                         if ($VVirsm == -1) {
                             $VVirsm = 0;
                         }
                     }
                     //				echo '$irbrakis = ' . $irbrakis . '<br />';
                     /*Vai nav brakis?*/
                     /*
                     				if (!$irbrakis)
                     				{
                     					$DRed_temp = round($LBruto-$DRed,3);
                     					$LRed_temp = round($DBruto-$LRed,3);
                     					$VDRed = round($VDRed + $DRed_temp,3);
                     					$VLRed = round($VLRed + $LRed_temp,3);
                     				}
                     */
                     $VBrakis = 0;
                     if (strlen($abr[$key]) == 1) {
                         $irbrakis = true;
                         $brkods = $abr[$key];
                     }
                     //				echo '$irbrakis2 = ' . $irbrakis . '<br />';
                     //                    echo "VReducD = ".$VReducD.'<br/>';
                     if (!$irbrakis) {
                         /*Vai ir brakis?*/
                         if ($LNom != 0) {
                             $SVVirsm += $VVirsm;
                             //$SVNeto += f2($DPecReduc,$LNeto,$rauk_koef,$koeficients,$gostu_tabula);
                             $SVNeto += $VBruto - $VReducL - $VReducD - $VVirsm;
                             $SVReducD += $VReducD;
                             $SVReducL += $VReducL;
                         } else {
                             $SVBrakis += $VBruto;
                         }
                     } else {
                         if ($LNom != 0) {
                             if ($this->MyPOST['braka_virsmers'] == 'on') {
                                 $SVVirsm += $VVirsm;
                                 $VBrakis = $VBruto - $VVirsm;
                             } else {
                                 $VBrakis = $VBruto;
                             }
                             $SVBrakis += $VBrakis;
                         } else {
                             $VBrakis = $VBruto;
                             $SVBrakis += $VBrakis;
                         }
                     }
                 }
                 //-------------------------------------------TEST-Line->
             } elseif ($this->MyPOST['metode'] == '2') {
                 $query__ = "select mind_pirms_red as DBruto, garums as LBruto, mind_pec_red as DPecReduc, gar_pec_red as LPecReduc, brakis, pavadzime.cenu_matrica as cm, balkis_temp.id as r_id" . $myquery;
                 $r = $this->DB->query($query__);
                 /*NULL vertibu ievietosana*/
                 $SVBruto = 0;
                 $SVReducD = 0;
                 $SVReducL = 0;
                 $SVVirsm = 0;
                 $SVNeto = 0;
                 $SVBrakis = 0;
                 $SSkaits = 0;
                 $SSkaitsBad = 0;
                 $gostu_tabula = $this->MyPOST['gostu_tabula' . $this->grup];
                 /*
                 */
                 while ($m = $this->DB->get_row($r)) {
                     $SSkaits++;
                     /*Vai ir Vika Wood*/
                     if ($suga && $this->MyPOST['dalit_virsmers' . $this->grup]) {
                         $min_virsmers = $this->MyPOST['virsmers' . $this->grup . '_' . $suga] / 100;
                     } else {
                         $min_virsmers = $this->MyPOST['virsmers' . $this->grup] / 100;
                     }
                     $r_id = $m['r_id'];
                     //        $LBruto = $m['LBruto'] / 100;
                     $DBruto = $m['DBruto'] / 1000;
                     /*Noapalosana Test*/
                     if ($this->MyPOST['noapalot_garumu'] == '1') {
                         $LBruto = floor($m['LBruto'] / 10) / 10;
                         //					echo "Bruto noapaļots = ".$DBrutoNoap.'<br>';
                     } elseif ($this->MyPOST['noapalot_garumu'] == '2') {
                         $LBruto = (floor($m['LBruto'] / 10) + 0.5) / 10;
                         //					echo "Bruto noapaļots = ".$DBrutoNoap.'<br>';
                     } elseif ($this->MyPOST['noapalot_garumu'] == '3') {
                         $LBruto = $m['LBruto'] / 100;
                         //					echo "Bruto noapaļots = ".$DBrutoNoap.'<br>';
                     } else {
                         $LBruto = $m['LBruto'] / 100;
                     }
                     $rauk_koef = get_raukums_no_diam($raukums, $DBruto * 1000);
                     $DPecReduc = $m['DPecReduc'] / 1000;
                     $DReduc = $DBruto - $DPecReduc;
                     $VBruto = f2_mod($DBruto, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                     /*
                             echo "DBruto = ".$DBruto.'<br/>';
                             echo "LBruto= ".$LBruto.'<br/>';
                             echo "rauk_koef= ".$rauk_koef.'<br/>';
                             echo "koeficients = ".$koeficients.'<br/>';
                             echo "gostu_tabula = ".$gostu_tabula.'<br/>','<br/>','<br/>';
                     */
                     //echo $rauk_koef . '; ' . $koeficients . '; ' . $VBruto . '<br />';
                     $VBezReducD = f2_mod($DPecReduc, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                     //        $VReducD = $VBruto-$VBezReducD;
                     //        echo "VReducD => ".$VReducD." = ".$VBruto." - ".$VBezReducD.'<br/>','<br/>','<br/>';
                     /*Noapalosana*/
                     if ($this->MyPOST['noapalot_diametru'] == 'on') {
                         $DBrutoNoap = (floor($m['DBruto'] / 10) + 0.5) / 100;
                     } else {
                         $DBrutoNoap = $m['DBruto'] / 1000;
                     }
                     if ($m[brakis] != '255') {
                         $irbrakis = true;
                         $brkods = 'standart';
                     }
                     //print_r($this->MyPOST);
                     //echo '<<<<<<<<<<<<<<<<<<<<' . $this->MyPOST['piegad_grupa'];
                     //        if (strtoupper($this->MyPOST['pieg_lig_num'])=='VIKA WOOD') {
                     if ($this->MyPOST['is_vika'] == 'on') {
                         $LNeto = $m['LPecReduc'] / 100;
                         $LNom = nom($LBruto, $virsmeri, $min_virsmers);
                         $LPecVirsm = $LNom;
                         $LReduc = round($LPecVirsm - $LNeto, 3);
                         $LVirsm = round($LBruto - $LPecVirsm, 3);
                         $VBezVirsm = f2_mod($DPecReduc, $LBruto - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsmNeredD = f2_mod($DBruto, $LBruto - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         if (!$irbrakis) {
                             $VVirsm = $VBezReducD - $VBezVirsm;
                         } else {
                             $VVirsm = $VBruto - $VBezVirsmNeredD;
                             //				$VVirsm = $VBezReducD-$VBezVirsm;
                         }
                         $VBezReducL = f2_mod($DPecReduc, $LPecVirsm - $LReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducL = $VBezVirsm - $VBezReducL;
                     } else {
                         if ($this->MyPOST['noapalot_garumu'] == '1') {
                             $LPecReduc = floor($m['LPecReduc'] / 10) / 10;
                             $LNeap = $m['LPecReduc'] / 100;
                         } else {
                             $LPecReduc = $m['LPecReduc'] / 100;
                         }
                         $LNom = nom($LNeap, $virsmeri, $min_virsmers);
                         $LNeto = $LNom;
                         $LVirsm = round($LPecReduc - $LNeto, 3);
                         $LReduc = round($LBruto - $LPecReduc, 3);
                         $VBruto_redukcija = f2_mod($DBruto, $LNom, $rauk_koef, $koeficients, $gostu_tabula);
                         //echo $rauk_koef . '; ' . $koeficients . '; ' . $VBruto . '<br />';
                         $VBezReducD_redukcija = f2_mod($DPecReduc, $LNom, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducD = $VBruto_redukcija - $VBezReducD_redukcija;
                         $VBezReducL = f2_mod($DBrutoNoap, $LBruto - $LReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducL = $VBruto - $VBezReducL;
                         $VBezReduc = f2_mod($DPecReduc, $LPecReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsm = f2_mod($DPecReduc, $LPecReduc - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsmNeredD = f2_mod($DBruto, $LPecReduc - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         if (!$irbrakis) {
                             $VVirsm = $VBruto - $VBezVirsmNeredD;
                         } else {
                             $VVirsm = $VBruto - $VBezVirsmNeredD;
                         }
                     }
                     $SVBruto += $VBruto;
                     /*
                     */
                     /*
                     Parveidosana uz mazakam mervienibam
                     				$DBruto = $DBruto/1000;				
                     				$DPecReduc = $DPecReduc/1000;
                     				$LBruto = $LBruto/100;
                     				$LPecReduc = $LPecReduc/100;
                     */
                     /*        $DReduc = round($DBruto - $DPecReduc,3);
                     */
                     /*
                     
                     echo '<br />','$ID = ' . $r_id . '<br />';
                     echo '$LPecReduc = ' . $LPecReduc . '<br />';
                     echo '$LBruto = ' . $LBruto . '<br />';
                     echo '$DBruto = ' . $DBruto . '<br />';
                     echo '$DPecReduc = ' . $DPecReduc . '<br />';
                     echo '$DReduc = ' . $DReduc . '<br />';
                     echo '$LNeto = ' . $LNeto . '<br />';
                     echo '$LVirsm = ' . $LVirsm . '<br />';
                     echo '$LPecVirsm = ' . $LPecVirsm . '<br />';
                     echo '$LNom = ' . $LNom . '<br />';
                     echo '$LReduc = ' . $LReduc . '<br />';
                     
                     echo '$VBruto = ' . $VBruto . '<br />';
                     
                     echo '$SVBruto = ' . $SVBruto . '<br />';
                     echo '$SVNeto = ' . $SVNeto . '<br />';
                     
                     echo '$VReducD = ' . $VReducD . '<br />';
                     
                     echo '$VBezReducL = ' . $VBezReducL . '<br />';
                     echo '$VBezReducD = ' . $VBezReducD . '<br />';
                     echo '$VBezVirsm = ' . $VBezVirsm . '<br />';
                     echo '$VReducL = ' . $VReducL . '<br />';
                     
                     echo '$SVReducD = ' . $SVReducD . '<br />';
                     
                     echo '$SVReducL = ' . $SVReducL . '<br />';
                     
                     echo '$VBezReduc = ' . $VBezReduc . '<br />';
                     
                     echo '$VVirsm = ' . $VVirsm . '<br />';
                     echo '$min_virsmers = ' . $min_virsmers . '<br />';
                     
                     echo '<br /><br /><br />';
                     /*
                     
                     
                     /*
                     $bruto_temp = f2($DBruto,$LBruto,$rauk_koef,$koeficients,$gostu_tabula);
                     $bruto_temp_red = f2($DNoapReduc,$LBruto,$rauk_koef,$koeficients,$gostu_tabula);
                     $DReduc = f2($DPecReduc,$LBruto,$rauk_koef,$koeficients,$gostu_tabula);
                     $LReduc = f2($DNoapReduc,$LPecReduc,$rauk_koef,$koeficients,$gostu_tabula);
                     $Reduc   = f2($DPecReduc,$LPecReduc,$rauk_koef,$koeficients,$gostu_tabula);
                     $virsm = f2($DPecReduc,$l3,$rauk_koef,$koeficients,$gostu_tabula);
                     $virsm_nered = f2($DBruto,$l3,$rauk_koef,$koeficients,$gostu_tabula);        
                     */
                     /*
                     */
                     if ($gostu_tabula) {
                         if ($VBruto == -1 || $VReducD == -1 || $VReducL == -1 || $VVirsm == -1) {
                             $SSkaitsBad++;
                         }
                         if ($VBruto == -1) {
                             $VBruto = 0;
                         }
                         if ($VReducD == -1) {
                             $VReducD = 0;
                         }
                         if ($VReducL == -1) {
                             $VReducL = 0;
                         }
                         if ($VVirsm == -1) {
                             $VVirsm = 0;
                         }
                     }
                     //				echo '$irbrakis = ' . $irbrakis . '<br />';
                     /*Vai nav brakis?*/
                     /*
                     				if (!$irbrakis)
                     				{
                     					$DRed_temp = round($LBruto-$DRed,3);
                     					$LRed_temp = round($DBruto-$LRed,3);
                     					$VDRed = round($VDRed + $DRed_temp,3);
                     					$VLRed = round($VLRed + $LRed_temp,3);
                     				}
                     */
                     $VBrakis = 0;
                     if (strlen($abr[$key]) == 1) {
                         $irbrakis = true;
                         $brkods = $abr[$key];
                     }
                     //				echo '$irbrakis2 = ' . $irbrakis . '<br />';
                     //                    echo "VReducD = ".$VReducD.'<br/>';
                     if (!$irbrakis) {
                         /*Vai ir brakis?*/
                         if ($LNom != 0) {
                             $SVVirsm += $VVirsm;
                             //$SVNeto += f2($DPecReduc,$LNeto,$rauk_koef,$koeficients,$gostu_tabula);
                             $SVNeto += $VBruto - $VReducL - $VReducD - $VVirsm;
                             $SVReducD += $VReducD;
                             $SVReducL += $VReducL;
                         } else {
                             $SVBrakis += $VBruto;
                         }
                     } else {
                         if ($LNom != 0) {
                             if ($this->MyPOST['braka_virsmers'] == 'on') {
                                 $SVVirsm += $VVirsm;
                                 $VBrakis = $VBruto - $VVirsm;
                             } else {
                                 $VBrakis = $VBruto;
                             }
                             $SVBrakis += $VBrakis;
                         } else {
                             $VBrakis = $VBruto;
                             $SVBrakis += $VBrakis;
                         }
                     }
                 }
                 //-------------------------------------------TEST-Line->
             } elseif ($this->MyPOST['metode'] == '3') {
                 /*3.metode<------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
                 /*Query izvilksana*/
                 $query__ = "select mind_pirms_red as tievgalis_pirms_redukcijas,maxd_miza as resgalis_pirms_redukcijas, garums as LBruto,balkis_temp.id as bb_id,mind_pirms_red as DPirmsReduc, mind_pec_red as DPecReduc, gar_pec_red as LPecReduc, brakis, pavadzime.cenu_matrica as cm" . $myquery;
                 $r = $this->DB->query($query__);
                 $SVBruto = 0;
                 $SVReducD = 0;
                 $SVReducL = 0;
                 $SVVirsm = 0;
                 $SVNeto = 0;
                 $SVBrakis = 0;
                 $SSkaits = 0;
                 $SSkaitsBad = 0;
                 $gostu_tabula = $this->MyPOST['gostu_tabula' . $this->grup];
                 while ($m = $this->DB->get_row($r)) {
                     /* Testēšanas nolūkiem */
                     if ($this->MyPOST['negrupet']) {
                         $SVBruto = 0;
                         $SVReducD = 0;
                         $SVReducL = 0;
                         $SVVirsm = 0;
                         $SVNeto = 0;
                         $SVBrakis = 0;
                         $SSkaits = 0;
                         $SSkaitsBad = 0;
                     }
                     $SSkaits++;
                     /*Vai ir Vika Wood*/
                     $idents = $m['bb_id'];
                     if ($suga && $this->MyPOST['dalit_virsmers' . $this->grup]) {
                         $min_virsmers = $this->MyPOST['virsmers' . $this->grup . '_' . $suga] / 100;
                     } else {
                         $min_virsmers = $this->MyPOST['virsmers' . $this->grup] / 100;
                     }
                     $r_id = $m['r_id'];
                     $DBruto = $m['tievgalis_pirms_redukcijas'] / 1000;
                     $Diametra_starpiba = $m['DPirmsReduc'] - $m['DPecReduc'];
                     $balkis_id = $m['balkis_id'];
                     /*Noapalosana Test*/
                     if ($this->MyPOST['noapalot_garumu'] == '1') {
                         $LBruto = floor($m['LBruto'] / 10) / 10;
                     } elseif ($this->MyPOST['noapalot_garumu'] == '2') {
                         $LBruto = (floor($m['LBruto'] / 10) + 0.5) / 10;
                     } elseif ($this->MyPOST['noapalot_garumu'] == '3') {
                         $LBruto = $m['LBruto'] / 100;
                     } else {
                         $LBruto = $m['LBruto'] / 100;
                     }
                     $rauk_koef = get_raukums_no_diam($raukums, $DBruto * 1000);
                     $DPecReduc = $m['DPecReduc'] / 1000;
                     $DPecReducResg = ($m['resgalis_pirms_redukcijas'] - $Diametra_starpiba) / 1000;
                     $DReduc = $DBruto - $DPecReduc;
                     if ($this->MyPOST['noapalot_diametru'] == 'on') {
                         $DBrutoNoap = (floor($m['tievgalis_pirms_redukcijas'] / 10) + 0.5) / 100;
                         $DBrutoResg = (floor($m['resgalis_pirms_redukcijas'] / 10) + 0.5) / 100;
                     } else {
                         $DBrutoNoap = $m['tievgalis_pirms_redukcijas'] / 1000;
                         $DBrutoResg = $m['resgalis_pirms_redukcijas'] / 1000;
                     }
                     if ($m[brakis] != '255') {
                         $irbrakis = true;
                         $brkods = 'standart';
                     }
                     /*
                             echo "Tievgalis = ".$DBrutoNoap.'<br />';
                             echo "Tievgalis pec redukcijas = ".$DPecReduc.'<br />';
                             echo "Resgalis = ".$DBrutoResg.'<br />';
                             echo "Resgalis pec redukcijas = ".$DPecReducResg.'<br />'.'<br />';
                     */
                     if ($this->MyPOST['is_vika'] == 'on') {
                         if ($this->MyPOST['noapalot_garumu'] == '1') {
                             $LPecReduc = floor($m['LPecReduc'] / 10) / 10;
                         } else {
                             $LPecReduc = $m['LPecReduc'] / 100;
                         }
                         $LNomBruto = nom_3($m['LBruto'], $virsmeri, $min_virsmers) / 100;
                         $LnomNeto = $m['LPecReduc'] / 100;
                         $tilpums_bruto = f2_mod_3($DBrutoNoap, $DBrutoResg, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                         $tilpums_neto = f2_mod_3($DPecReduc, $DPecReducResg, $LnomNeto, $rauk_koef, $koeficients, $gostu_tabula);
                         $tilpums_bruto_virsmeram = f2_mod_3($DBrutoNoap, $DBrutoResg, $LNomBruto, $rauk_koef, $koeficients, $gostu_tabula);
                         $tilpums_garuma_redukcijai = f2_mod_3($DBrutoNoap, $DBrutoResg, $LnomNeto, $rauk_koef, $koeficients, $gostu_tabula);
                         $tilpums_diametra_redukcijai_neto = f2_mod_3($DPecReduc, $DPecReducResg, $LnomNeto, $rauk_koef, $koeficients, $gostu_tabula);
                         $tilpums_virsmers = $tilpums_bruto - $tilpums_bruto_virsmeram;
                         $tilpums_kopejai_redukcijai = $tilpums_bruto_virsmeram - $tilpums_diametra_redukcijai_neto;
                         $tilpums_garuma_redukcija = $tilpums_kopejai_redukcijai;
                         $tilpums_diametrs_redukcija = 0;
                     } else {
                         if ($this->MyPOST['noapalot_garumu'] == '1') {
                             $LPecReduc = floor($m['LPecReduc'] / 10) / 10;
                         } else {
                             $LPecReduc = $m['LPecReduc'] / 100;
                         }
                         $LNomBruto = nom_3($m['LBruto'], $virsmeri, $min_virsmers) / 100;
                         $LnomNeto = nom_3($m['LPecReduc'], $virsmeri, $min_virsmers) / 100;
                         $tilpums_bruto = f2_mod_3($DBrutoNoap, $DBrutoResg, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                         $tilpums_neto = f2_mod_3($DPecReduc, $DPecReducResg, $LnomNeto, $rauk_koef, $koeficients, $gostu_tabula);
                         $tilpums_bruto_virsmeram = f2_mod_3($DBrutoNoap, $DBrutoResg, $LNomBruto, $rauk_koef, $koeficients, $gostu_tabula);
                         $tilpums_garuma_redukcijai = f2_mod_3($DBrutoNoap, $DBrutoResg, $LnomNeto, $rauk_koef, $koeficients, $gostu_tabula);
                         $tilpums_virsmers = $tilpums_bruto - $tilpums_bruto_virsmeram;
                         $tilpums_kopejai_redukcijai = $tilpums_bruto_virsmeram - $tilpums_neto;
                         $tilpums_garuma_redukcija = $tilpums_kopejai_redukcijai;
                         $tilpums_diametrs_redukcija = 0;
                     }
                     $SVBruto += $tilpums_bruto;
                     if ($gostu_tabula) {
                         if ($VBruto == -1 || $VReducD == -1 || $VReducL == -1 || $VVirsm == -1) {
                             $SSkaitsBad++;
                             //            echo "Skaits = ".$SSkaitsBad.'<br />';
                         }
                         if ($VBruto == -1) {
                             $VBruto = 0;
                         }
                         if ($VReducD == -1) {
                             $VReducD = 0;
                         }
                         if ($VReducL == -1) {
                             $VReducL = 0;
                         }
                         if ($VVirsm == -1) {
                             $VVirsm = 0;
                         }
                     }
                     $VBrakis = 0;
                     if (strlen($abr[$key]) == 1) {
                         $irbrakis = true;
                         $brkods = $abr[$key];
                     }
                     if (!$irbrakis) {
                         if ($LnomNeto != 0) {
                             $SVVirsm += $tilpums_virsmers;
                             $SVNeto += $tilpums_neto;
                         } else {
                             $tilpums_diametrs_redukcija = 0;
                             $tilpums_garuma_redukcija = 0;
                             $VBrakis = $tilpums_bruto;
                             $SVBrakis += $tilpums_bruto;
                         }
                         $SVReducD += $tilpums_diametrs_redukcija;
                         $SVReducL += $tilpums_garuma_redukcija;
                     } else {
                         if ($LnomNeto != 0) {
                             if ($this->MyPOST['braka_virsmers'] == 'on') {
                                 $SVVirsm += $tilpums_virsmers;
                                 $VBrakis = $tilpums_bruto - $tilpums_virsmers;
                             } else {
                                 $VBrakis = $tilpums_bruto;
                             }
                             $SVBrakis += $VBrakis;
                         } else {
                             $VBrakis = $tilpums_bruto;
                             $SVBrakis += $VBrakis;
                         }
                     }
                     /* Testēšanas nolūkiem */
                     if ($this->MyPOST['negrupet']) {
                         $this->arr[$this->arr_index][$level - 1] = $this->kodi($this->MyPOST['gtype' . $this->grup . $this->lsk], $val);
                         //Pievienoju pārbaudi uz redukcijas negatīvu lielumu 2010-03-09, Ervīns
                         if ($SVReducD + $SVReducL < 0) {
                             $this->ERRORS .= "<font color=red>Pavadzīmē " . $this->MyPOST['pavadzime'] . " izveidojās negatīvs redukcijas lielums!</font><br><br>";
                             return false;
                         }
                         $this->arr[$this->arr_index][2] = $m['tievgalis_pirms_redukcijas'];
                         $this->arr[$this->arr_index][3] = $m['LBruto'];
                         $sm = new CSumma();
                         $sm->skaits = $SSkaits;
                         $sm->skaits_bad = $SSkaitsBad;
                         $sm->virsmers = $SVVirsm;
                         $sm->redukcija_d = $SVReducD;
                         $sm->redukcija_l = $SVReducL;
                         $sm->brakis = $SVBrakis;
                         $sm->neto = $SVNeto;
                         $sm->bruto = $SVBruto;
                         $this->arr[$this->arr_index][summa] = $sm;
                         $this->rowclosed = true;
                         $summa_p->add_skaits($SSkaits);
                         $summa_p->add_skaits_bad($SSkaitsBad);
                         $summa_p->add_virsmers($SVVirsm);
                         $summa_p->add_redukcija_d($SVReducD);
                         $summa_p->add_redukcija_l($SVReducL);
                         $summa_p->add_brakis($SVBrakis);
                         $summa_p->add_neto($SVNeto);
                         $summa_p->add_bruto($SVBruto);
                         $this->arr_index++;
                     }
                 }
                 /*------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
             } else {
                 /*4.metode<------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
                 /*Query izvilksana*/
                 $query__ = "select mind_pirms_red as DBruto, garums as LBruto, mind_pec_red as DPecReduc, gar_pec_red as LPecReduc, brakis, pavadzime.cenu_matrica as cm" . $myquery;
                 //			echo $query__.'<br />';
                 $r = $this->DB->query($query__);
                 /*NULL vertibu ievietosana*/
                 $SVBruto = 0;
                 $SVReducD = 0;
                 $SVReducL = 0;
                 $SVVirsm = 0;
                 $SVNeto = 0;
                 $SVBrakis = 0;
                 $SSkaits = 0;
                 $SSkaitsBad = 0;
                 $gostu_tabula = $this->MyPOST['gostu_tabula' . $this->grup];
                 /**/
                 while ($m = $this->DB->get_row($r)) {
                     $SSkaits++;
                     /*Vai ir Vika Wood*/
                     if ($suga && $this->MyPOST['dalit_virsmers' . $this->grup]) {
                         $min_virsmers = $this->MyPOST['virsmers' . $this->grup . '_' . $suga] / 100;
                     } else {
                         $min_virsmers = $this->MyPOST['virsmers' . $this->grup] / 100;
                     }
                     //        $LBruto = $m['LBruto'] / 100;
                     $DBruto = $m['DBruto'] / 1000;
                     /*Noapalosana Test*/
                     if ($this->MyPOST['noapalot_garumu'] == '1') {
                         $LBruto = floor($m['LBruto'] / 10) / 10;
                         //					echo "Bruto noapaļots = ".$DBrutoNoap.'<br>';
                     } elseif ($this->MyPOST['noapalot_garumu'] == '2') {
                         $LBruto = (floor($m['LBruto'] / 10) + 0.5) / 10;
                         //					echo "Bruto noapaļots = ".$DBrutoNoap.'<br>';
                     } elseif ($this->MyPOST['noapalot_garumu'] == '3') {
                         $LBruto = $m['LBruto'] / 100;
                         //					echo "Bruto noapaļots = ".$DBrutoNoap.'<br>';
                     } else {
                         $LBruto = $m['LBruto'] / 100;
                     }
                     $rauk_koef = get_raukums_no_diam($raukums, $DBruto * 1000);
                     $DPecReduc = $m['DPecReduc'] / 1000;
                     $DReduc = $DBruto - $DPecReduc;
                     $VBruto = f2($DBruto, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                     //        echo $rauk_koef . '; ' . $koeficients . '; ' . $VBruto . '<br />';
                     $VBezReducD = f2($DPecReduc, $LBruto, $rauk_koef, $koeficients, $gostu_tabula);
                     $VReducD = $VBruto - $VBezReducD;
                     /*Noapalosana*/
                     if ($this->MyPOST['noapalot_diametru'] == 'on') {
                         $DBrutoNoap = (floor($m['DBruto'] / 10) + 0.5) / 100;
                     } else {
                         $DBrutoNoap = $m['DBruto'] / 1000;
                     }
                     if ($m[brakis] != '255') {
                         $irbrakis = true;
                         $brkods = 'standart';
                     }
                     //print_r($this->MyPOST);
                     //echo '<<<<<<<<<<<<<<<<<<<<' . $this->MyPOST['piegad_grupa'];
                     //        if (strtoupper($this->MyPOST['pieg_lig_num'])=='VIKA WOOD') {
                     if ($this->MyPOST['is_vika'] == 'on') {
                         $LNeto = $m['LPecReduc'] / 100;
                         $LNom = nom($LBruto, $virsmeri, $min_virsmers);
                         $LPecVirsm = $LNom;
                         $LReduc = round($LPecVirsm - $LNeto, 3);
                         $LVirsm = round($LBruto - $LPecVirsm, 3);
                         $VBezVirsm = f2($DPecReduc, $LBruto - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsmNeredD = f2($DBruto, $LBruto - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         if (!$irbrakis) {
                             $VVirsm = $VBezReducD - $VBezVirsm;
                         } else {
                             $VVirsm = $VBezReducD - $VBezVirsm;
                             //            $VVirsm = $VBruto-$VBezVirsmNeredD;
                         }
                         //          $VVirsm = $VBezReducD-$VBezVirsm;
                         $VBezReducL = f2($DPecReduc, $LPecVirsm - $LReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducL = $VBezVirsm - $VBezReducL;
                     } else {
                         if ($this->MyPOST['noapalot_garumu'] == '1') {
                             $LPecReduc = floor($m['LPecReduc'] / 10) / 10;
                         } else {
                             $LPecReduc = $m['LPecReduc'] / 100;
                         }
                         $LNom = nom($LPecReduc, $virsmeri, $min_virsmers);
                         $LNeto = $LNom;
                         $LVirsm = round($LPecReduc - $LNeto, 3);
                         $LReduc = round($LBruto - $LPecReduc, 3);
                         $VBezReducL = f2($DBrutoNoap, $LBruto - $LReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VReducL = $VBruto - $VBezReducL;
                         $VBezReduc = f2($DPecReduc, $LPecReduc, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsm = f2($DPecReduc, $LPecReduc - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         $VBezVirsmNeredD = f2($DBruto, $LPecReduc - $LVirsm, $rauk_koef, $koeficients, $gostu_tabula);
                         if (!$irbrakis) {
                             $VVirsm = $VBezReduc - $VBezVirsm;
                         } else {
                             $VVirsm = $VBezReduc - $VBezVirsm;
                             //            $VVirsm = $VBruto-$VBezVirsmNeredD;
                         }
                     }
                     $SVBruto += $VBruto;
                     if ($gostu_tabula) {
                         if ($VBruto == -1 || $VReducD == -1 || $VReducL == -1 || $VVirsm == -1) {
                             $SSkaitsBad++;
                         }
                         if ($VBruto == -1) {
                             $VBruto = 0;
                         }
                         if ($VReducD == -1) {
                             $VReducD = 0;
                         }
                         if ($VReducL == -1) {
                             $VReducL = 0;
                         }
                         if ($VVirsm == -1) {
                             $VVirsm = 0;
                         }
                     }
                     /*Vai nav brakis?*/
                     /*
                     				if (!$irbrakis)
                     				{
                     					$DRed_temp = round($LBruto-$DRed,3);
                     					$LRed_temp = round($DBruto-$LRed,3);
                     					$VDRed = round($VDRed + $DRed_temp,3);
                     					$VLRed = round($VLRed + $LRed_temp,3);
                     				}
                     */
                     $VBrakis = 0;
                     if (strlen($abr[$key]) == 1) {
                         $irbrakis = true;
                         $brkods = $abr[$key];
                     }
                     if (!$irbrakis) {
                         /*Vai ir brakis?*/
                         $SVReducD += $VReducD;
                         $SVReducL += $VReducL;
                         if ($LNom != 0) {
                             $SVVirsm += $VVirsm;
                             //$SVNeto += f2($DPecReduc,$LNeto,$rauk_koef,$koeficients,$gostu_tabula);
                             $SVNeto += $VBruto - $VReducL - $VReducD - $VVirsm;
                         } else {
                             $SVBrakis += $VBezReduc;
                         }
                     } else {
                         if ($LNom != 0) {
                             if ($this->MyPOST['braka_virsmers'] == 'on') {
                                 $SVVirsm += $VVirsm;
                                 $VBrakis = $VBruto - $VVirsm;
                             } else {
                                 $VBrakis = $VBruto;
                             }
                             $SVBrakis += $VBrakis;
                         } else {
                             $VBrakis = $VBruto;
                             $SVBrakis += $VBrakis;
                         }
                     }
                 }
                 /*------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
             }
             //				echo '$brakis = ' . $SVBrakis . '<br />';
             //				echo '<br /><br /><br />';
             /*Ievietosana*/
             /* Testēšanas nolūkiem */
             if (!$this->MyPOST['negrupet']) {
                 $this->arr[$this->arr_index][$level - 1] = $this->kodi($this->MyPOST['gtype' . $this->grup . $this->lsk], $val);
                 $sm = new CSumma();
                 $sm->skaits = $SSkaits;
                 $sm->skaits_bad = $SSkaitsBad;
                 $sm->virsmers = $SVVirsm;
                 $sm->redukcija_d = $SVReducD;
                 $sm->redukcija_l = $SVReducL;
                 $sm->brakis = $SVBrakis;
                 $sm->neto = $SVNeto;
                 $sm->bruto = $SVBruto;
                 $this->arr[$this->arr_index][summa] = $sm;
                 $this->rowclosed = true;
                 $summa_p->add_skaits($SSkaits);
                 $summa_p->add_skaits_bad($SSkaitsBad);
                 $summa_p->add_virsmers($SVVirsm);
                 $summa_p->add_redukcija_d($SVReducD);
                 $summa_p->add_redukcija_l($SVReducL);
                 $summa_p->add_brakis($SVBrakis);
                 $summa_p->add_neto($SVNeto);
                 $summa_p->add_bruto($SVBruto);
             }
         }
     }
     /*
     */
     /////////////////////////////////////////////////////////////////////////////////////////////////////////////////Beigas/////////////////////////////////////////////
     // "<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>";
     // Aizpild?m tuk?umus
     // "<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>";
     if ($this->lsk > 1) {
         for ($j = $this->lsk - 2; $j >= 0; $j--) {
             $v = $this->arr[0][$j];
             for ($i = 0; $i < count($this->arr); $i++) {
                 // iekop?jam ja tuk?s
                 if ($this->arr[$i][$j] == "" && $this->arr[$i][$j + 1] != "") {
                     $this->arr[$i][$j] = $v;
                 }
                 // ja nav tuk?s pa?em v?rt?bu
                 if ($this->arr[$i][$j] != "") {
                     $v = $this->arr[$i][$j];
                 }
             }
         }
     }
 }
Example #30
0
    echo "f:1 \$gVar1 = " . $gVar1 . "\n";
    // still seeing $gVar1 even though global decl
    // is presumed to have gone out of scope, and there is
    // global import at block level 1
}
f(TRUE);
echo "--- Back at top-level\n";
f(TRUE);
echo "--- Back at top-level\n";
///*
echo "Top2: CON1 = " . CON1 . "\n";
echo "Top2: CON2 = " . CON2 . "\n";
echo "Top2: CON3 = " . CON3 . "\n";
echo "Top2: CON4 = " . CON4 . "\n";
echo "---\n";
//*/
echo "Top2: \$sVar1 = " . $sVar1 . "\n";
echo "Top2: \$tmp = " . $tmp . "\n";
echo "Top2: \$gVar1 = " . $gVar1 . "\n";
echo "-----------------------------------------\n";
function f2($p)
{
    static $s2 = 100;
    if ($p) {
        //      global $s2; // with this in, var_dump($s2) is NULL, becuse there is no such global
        var_dump($s2);
        var_dump(isset($s2));
    }
}
f2(TRUE);