Ejemplo n.º 1
0
 public function recalc($data)
 {
     $S = new Seminar($data["P0"]);
     return Util::formatCurrency("de_DE", $S->A("SeminarPreisErwachsene") * $data["P1"], true);
 }
Ejemplo n.º 2
0
    public function getCartText($withPayPal = false)
    {
        $text = "";
        $paypalHTML = '<form id="formPayPal" action="https://www.paypal.com/cgi-bin/webscr" method="post">
	<input type="hidden" name="cmd" value="_cart" />
	<input type="hidden" name="upload" value="1" />
	<input type="hidden" name="currency_code" value="EUR" />
	<input type="hidden" name="charset" value="utf-8" />
	<input type="hidden" name="invoice" value=";;;REPLACETHIS;;;" />
	<input type="hidden" name="business" value="' . $this->sellerEmail . '" />';
        $steuern = array();
        $gesamt = 0;
        $netto = 0;
        /*$c = $this->useClass;
        		
        		$mwst = $this->mwstField;
        		$name = $this->nameField;
        		$preis = $this->preisField;*/
        $i = 0;
        if ($this->cookie != "") {
            $text .= "\n        " . str_pad("Artikel", 40, " ") . " MwSt      Preis            Gesamt\n-------------------------------------------------------------------------------------------";
            while ($t = $this->getNextElement()) {
                $num = array_search($t[2], $this->useClass);
                if ($t[2] != "CookieCart") {
                    $c = $this->useClass[$num];
                    $A = new $c($t[0], false);
                    $A->loadMe();
                    $mwst = $this->mwstField[$num];
                    $name = $this->nameField[$num];
                    $preis = $this->preisField[$num];
                    $artikelnummer = $this->artikelnummerField[$num];
                } else {
                    $A = $this;
                    $this->PostenID = $t[0];
                    $mwst = "mwst";
                    $name = "artikelname";
                    $preis = "preis";
                    $artikelnummer = "artikelnummer";
                }
                try {
                    new Staffelpreis(-1);
                    if (class_exists("Staffelpreis")) {
                        $ac = new anyC();
                        $ac->setCollectionOf("Staffelpreis");
                        $ac->addAssocV3("StaffelpreisClass", "=", $this->useClass);
                        $ac->addAssocV3("StaffelpreisClassID", "=", $t[0]);
                        $ac->addAssocV3("StaffelpreisAmount", "<=", $t[1]);
                        $ac->addOrderV3("StaffelpreisAmount", "DESC");
                        $ac->setLimitV3("1");
                        $ac2 = $ac->getNextEntry();
                        if ($ac2 != null) {
                            $A->changeA($preis, $ac2->A("StaffelpreisPrice"));
                        }
                    }
                } catch (Exception $e) {
                }
                if (!isset($steuern[$A->getA()->{$mwst}])) {
                    $steuern[$A->getA()->{$mwst}] = 0;
                }
                $gesamt += $A->getA()->{$preis} * 1 * ($A->getA()->{$mwst} / 100 + 1) * $t[1];
                $netto += $A->getA()->{$preis} * 1 * $t[1];
                $steuern[$A->getA()->{$mwst}] += $A->getA()->{$preis} * 1 * ($A->getA()->{$mwst} / 100) * $t[1];
                #$image = $this->invokeParser($this->imagePathCallback, $t[0], $A);
                $tName = str_pad(substr($A->getA()->{$name}, 0, 38), 40, " ", STR_PAD_RIGHT);
                $tName .= str_pad("", Util::countUmlaute($tName), " ");
                $brutto = $A->getA()->{$preis} * 1 * ($A->getA()->{$mwst} / 100 + 1) * $t[1];
                $this->sum += $brutto;
                $this->count += $t[1];
                $text .= "\n" . str_pad($t[1], 5, " ", STR_PAD_LEFT) . " x " . $tName . "|" . str_pad(Util::formatNumber("de_DE", $A->getA()->{$mwst} * 1, 2, true, false), 7, " ", STR_PAD_LEFT) . "% |" . str_pad(Util::conv_euro8(Util::formatCurrency("de_DE", $A->getA()->{$preis} * 1 * ($A->getA()->{$mwst} / 100 + 1), true)), 15, " ", STR_PAD_LEFT) . " |" . str_pad(Util::conv_euro8(Util::formatCurrency("de_DE", $brutto, true)), 15, " ", STR_PAD_LEFT) . "";
                /**
                 * Artikelnummer in neuer Zeile
                 */
                if (isset($A->getA()->{$artikelnummer}) and $A->getA()->{$artikelnummer} != "") {
                    $text .= "\n" . str_pad("", 5, " ", STR_PAD_LEFT) . "   " . str_pad(substr("Art.Nr. " . $A->getA()->{$artikelnummer}, 0, 38), 40, " ", STR_PAD_RIGHT) . "|         |                |";
                }
                $i++;
                $ppName = str_replace(array("Ä", "Ö", "Ü", "ß", "ä", "ö", "ü"), array("Ae", "Oe", "Ue", "ss", "ae", "oe", "ue"), $tName);
                if ($t[2] == "CookieCart" and ($t[0] == "1" or $t[0] == "1010")) {
                    $paypalHTML .= '<input type="hidden" name="discount_amount_cart" value="' . abs($brutto) . '" />';
                } else {
                    $paypalHTML .= '
	<input type="hidden" name="item_name_' . $i . '" value="' . trim($ppName) . '"/ >
	<input type="hidden" name="amount_' . $i . '" value="' . Util::formatCurrency("en_GB", $brutto, false) . '" />';
                }
            }
            if ($this->versandkostenBrutto != null) {
                $tName = str_pad(substr($this->versandkostenBrutto[0], 0, 38), 40, " ", STR_PAD_RIGHT);
                $tName .= str_pad("", Util::countUmlaute($tName), " ");
                $text .= "\n" . str_pad("1", 5, " ", STR_PAD_LEFT) . " x " . $tName . "|" . str_pad(Util::formatNumber("de_DE", $this->versandkostenBrutto[2], 2, true, false), 7, " ", STR_PAD_LEFT) . "% |" . str_pad(Util::conv_euro8(Util::formatCurrency("de_DE", $this->versandkostenBrutto[1], true)), 15, " ", STR_PAD_LEFT) . " |" . str_pad(Util::conv_euro8(Util::formatCurrency("de_DE", $this->versandkostenBrutto[1], true)), 15, " ", STR_PAD_LEFT) . "";
                $gesamt += $this->versandkostenBrutto[1];
                $netto += Util::kRound($this->versandkostenBrutto[1] / ($this->versandkostenBrutto[2] + 100) * 100, 2);
                $steuern[number_format($this->versandkostenBrutto[2], 2)] += Util::kRound($this->versandkostenBrutto[1] / ($this->versandkostenBrutto[2] + 100) * $this->versandkostenBrutto[2], 2);
            }
            $s = "";
            foreach ($steuern as $key => $value) {
                $s .= ($s != "" ? "\n" : "") . "" . str_pad(Util::conv_euro8("Gesamt MwSt" . str_pad(Util::formatNumber("de_DE", $key * 1, 2, true, false), 7, " ", STR_PAD_LEFT) . "%: " . str_pad(Util::formatCurrency("de_DE", $value, true), 15, " ", STR_PAD_LEFT)), 91, " ", STR_PAD_LEFT);
            }
            $text .= "\n-------------------------------------------------------------------------------------------\n                                                        Gesamt Netto        " . str_pad(Util::conv_euro8(Util::formatCurrency("de_DE", $netto, true)), 15, " ", STR_PAD_LEFT) . "\n{$s}\n                                                      -------------------------------------\n                                                              Gesamt        " . str_pad(Util::conv_euro8(Util::formatCurrency("de_DE", $gesamt, true)), 15, " ", STR_PAD_LEFT);
        } else {
            $text = "Ihr Warenkorb enthält keine Artikel.";
        }
        $this->elementPointer = 0;
        $paypalHTML .= '
	<p>
	<input type="image" src="https://www.paypal.com/en_US/i/btn/x-click-butcc.gif" style="width:auto;border:0px;" name="submit" />
	</p>
</form>';
        #if($withPayPal) $_SESSION["CookieCart_payPalHTML"] = $paypalHTML;
        #elseif(isset($_SESSION["CookieCart_payPalHTML"])) unset($_SESSION["CookieCart_payPalHTML"]);
        $this->PayPalButton = $paypalHTML;
        return $text;
    }
Ejemplo n.º 3
0
 public static function calcNettoPreis($preis, $mwst)
 {
     $p = Util::parseFloat($_SESSION["S"]->getUserLanguage(), $preis);
     $m = $mwst * 1;
     #Util::parseFloat($_SESSION["S"]->getUserLanguage(), $mwst);
     $netto = $p / (100 + $m) * 100;
     echo Util::formatCurrency($_SESSION["S"]->getUserLanguage(), $netto, false);
 }