Back to PhocacartOrder class

Method getReceiptNumber

public static
getReceiptNumber
(mixed $orderId, mixed $date = false, mixed $receiptNumber = false, mixed $receiptNumberId = false)

Method getReceiptNumber - Source code

public static function getReceiptNumber($orderId, $date = false, $receiptNumber = false, $receiptNumberId = false)
{
    if ($receiptNumber) {
        return $receiptNumber;
        // the number is stored in database yet
    }
    $paramsC = PhocacartUtils::getComponentParameters();
    $receipt_number_format = $paramsC->get('receipt_number_format', '{prefix}{year}{orderid}{suffix}');
    $receipt_number_prefix = $paramsC->get('receipt_number_prefix', '');
    $receipt_number_suffix = $paramsC->get('receipt_number_suffix', '');
    $order_id_length_receipt = $paramsC->get('order_id_length_receipt', '10');
    $date = !$date ? self::getOrderDate($orderId) : $date;
    $dateO = PhocacartDate::splitDate($date);
    $id = $orderId;
    if ($receiptNumberId && $receiptNumberId > 0) {
        $id = $receiptNumberId;
        // not autoincrement but specific ID based on year or month see parameter: invoice_creating_numbers
    }
    $id = str_pad($id, $order_id_length_receipt, '0', STR_PAD_LEFT);
    $o = str_replace('{orderid}', $id, $receipt_number_format);
    $o = str_replace('{prefix}', $receipt_number_prefix, $o);
    $o = str_replace('{suffix}', $receipt_number_suffix, $o);
    $o = str_replace('{year}', $dateO['year'], $o);
    $o = str_replace('{month}', $dateO['month'], $o);
    $o = str_replace('{day}', $dateO['day'], $o);
    return $o;
}