static function createOrder($basket, $method) { // fill customer record; added 2011-08-20 $customer = ORM::factory("customer"); $customer->title = $basket->title; $customer->initials = $basket->initials; $customer->insertion = $basket->insertion; $customer->name = $basket->name; $customer->street = $basket->street; $customer->housenumber = $basket->house; $customer->postalcode = $basket->postcode; $customer->town = $basket->town; $customer->email = $basket->email; $customer->phone = $basket->phone; // $customer->childname=$basket->childname; // $customer->childgroup=$basket->childgroup; $customer->deliverypref = $basket->ispp(); $customer->save(); $order = ORM::factory("order"); $order->text = "processing"; $order->customerid = $customer->id; $order->save(); $ordernumber = basket::getOrderPrefix() . $order->id; $order_bankaccount = basket::getOrderBankAccount(); $order_accountowner = basket::getOrderAccountOwner(); $order_email_closing = basket::getOrderEmailClosing(); //$admin_address = basket::getEmailAddress(); $website = basket::getWebsite(); $postage = $basket->postage_cost(); $product_cost = $basket->cost(); $street = $basket->street; $fullname = basket::createFullName($basket); $ppon = $basket->ispp(); if ($ppon) { $total_cost = $product_cost + $postage; } else { $total_cost = $product_cost; } // added Dutch mailtext JtK //set the timezone to show correct order time date_default_timezone_set('Europe/Amsterdam'); $text = "U kunt betalen door het totaalbedrag over te maken op de bankrekening van %webshop.\r\nTotaalbedrag: " . basket::formatMoneyForMail($total_cost) . "\r\nRekeningnummer: " . $order_bankaccount . "\r\n tnv " . $order_accountowner . "\r\n ovv bestelnummer " . $ordernumber . "\r\n\r\nDe aflevering vindt plaats circa 10 werkdagen nadat uw betaling is ontvangen door %webshop.\r\nVoor vragen of opmerkingen over uw bestelling kunt u contact opnemen via bestelling@%website.\r\n\r\nBESTELGEGEVENS\r\nBestelnummer: " . $ordernumber . "\r\nBesteld op " . date("d-m-Y G:i") . "\r\n\r\nBestemd voor:\r\n " . $fullname . ""; if ($street != "") { $text = $text . "\r\n " . $basket->street . " " . $basket->house . "\r\n " . $basket->postcode . " " . $basket->town . ""; } $text = $text . "\r\n\r\n E-mail: " . $basket->email . ""; if ($basket->phone != "") { $text = $text . "\r\n Telefoon: " . $basket->phone . "\r\n"; } if ($basket->comments != "") { $text = $text . "\r\nOpmerking bij de bestelling: " . $basket->comments . "\r\n"; } $text = $text . "\r\n\r\nBestelbedrag: " . basket::formatMoneyForMail($product_cost); // continue with payment details // posting by normal mail if ($ppon && $postage > 0) { $method = Order_Model::DELIVERY_MAIL; $text = $text . "\r\nVerpakkings- en verzendkosten: " . basket::formatMoneyForMail($postage) . "\r\nBestelling wordt verstuurd via post."; } elseif (!$ppon && $postage > 0) { $method = Order_Model::DELIVERY_PICKUP; $text = $text . "\r\nBestelling afhalen bij %pickup_location."; } else { $method = Order_Model::DELIVERY_EMAIL; $text = $text . "\r\nBestelling wordt verstuurd via e-mail."; } $text = $text . "\r\nTotaalbedrag: " . basket::formatMoneyForMail($total_cost) . ""; // continue with order details $text = $text . "\r\n\t\t\r\nBestelde foto's:"; // create the order items foreach ($basket->contents as $basket_item) { $item = $basket_item->getItem(); $prod = ORM::factory("product", $basket_item->product); $text = $text . "\r\n-> " . $item->title . "\r\n " . $prod->name . " - " . $prod->description . "\r\n aantal: " . $basket_item->quantity . " a " . basket::formatMoneyForMail($prod->cost) . "\r\n"; } // continue with footer $text = $text . "\r\n" . $order_email_closing . ""; //replace variables $text = basket::replaceStringsAll($text, $order); $order->name = $fullname; $order->email = $basket->email; $order->cost = $total_cost; $order->text = $text; $order->status = Order_Model::WAITING_PAYMENT; $order->method = $method; $order->save(); //$basket->clear(); return $order; }