public function mailerAdmin($idOrder, $key, $userTo) { $mail = new PaymentGateway_HtmlMail(); $tblSetting = new Kutu_Core_Orm_Table_PaymentSetting(); $template = $tblSetting->fetchAll($tblSetting->select()->where("settingKey = '{$key}'")); $tblOrder = new Kutu_Core_Orm_Table_Order(); $tbluser = new Kutu_Core_Orm_Table_User(); $tblOrderDetail = new Kutu_Core_Orm_Table_OrderDetail(); $tblSetting = new Kutu_Core_Orm_Table_PaymentSetting(); $lgsMail = $tblSetting->fetchAll($tblSetting->select()->where("settingKey = 'paypalBusiness'")); $userDetailInfo = $tbluser->userInfoOrder($idOrder); $rowset = $tblOrder->getOrderAndStatus($idOrder); $rowsetDetail = $tblOrderDetail->fetchAll($tblOrderDetail->select()->where("orderId = " . $idOrder)); $tblConfirm = new Kutu_Core_Orm_Table_PaymentConfirmation(); if ($rowset[0]->orderStatus == 6) { $status = 'rejected'; } else { $status = 'confirmed'; } $unConfirmed = $tblConfirm->fetchAll($tblConfirm->select()->where("confirmed =0 AND orderId = " . $idOrder)); echo '<pre>'; //print_r($userDetailInfo); echo '</pre>'; $detail = "ORDER ID : " . $idOrder . '<br/>' . 'Detail : <br/><blockquote><ol>'; foreach ($rowsetDetail as $row) { $detail .= '<li><ul> <li>Document Name: ' . $row->documentName . '</li> <li>Quantity : ' . $row->qty . '</li> <li>Price : USD ' . number_format($row->price, 2) . ' </li> <li>Tax : ' . number_format($row->tax, 2) . ' %</li> <li>Final Price : ' . number_format($row->finalPrice, 2) . '</li> </ul></li>'; } $detail .= '</ol><blockquote><br />'; //print_r($detail); $sMailSource = $template[0]->note; if ($userTo == 'admin') { $sMailEmailTo = $lgsMail[0]->settingValue; $sMailEmailFrom = $userDetailInfo[0]->email; $link = '<a href="' . KUTU_ROOT_URL . '/admin/store/detailOrder/id/' . $idOrder . '">here</a>'; } else { $sMailEmailTo = $userDetailInfo[0]->email; $sMailEmailFrom = $lgsMail[0]->settingValue; $link = '<a href="' . KUTU_ROOT_URL . '/site/store_payment/detail/id/' . $idOrder . '">here</a>'; } $sMailSubject = "Confirmation for user payment"; $sMailHeader = ''; $aMailDataSet = array('PAYMENTDATE' => $unConfirmed[0]->paymentDate, 'PAIDTIME' => $unConfirmed[0]->paymentDate, 'PAYMENT' => $rowset[0]->paymentMethod, 'DESCRIPTION' => $detail, 'TOTALORDER' => $rowset[0]->orderTotal, 'ORDERTIME' => $rowset[0]->datePurchased, 'INVOICE' => $rowset[0]->invoiceNumber, 'METHOD' => $rowset[0]->paymentMethod, 'LINK' => $link, 'STATUS' => $status); $mail->SendFileMail($sMailSource, $sMailEmailTo, $sMailSubject, $sMailEmailFrom, $sMailHeader, $aMailDataSet); }
public function confirmAction() { $this->_checkAuth(); $userId = $this->_user->kopel; $modelOrder = new Kutu_Core_Orm_Table_Order(); $rowset = $modelOrder->getTransactionToConfirm($userId); $numCount = $modelOrder->getTransactionToConfirmCount($userId); $modelPaymentSetting = new Kutu_Core_Orm_Table_PaymentSetting(); $bankAccount = $modelPaymentSetting->fetchAll("settingKey = 'bankAccount'"); if ($this->_request->get('sended') == 1) { $this->view->sended = 'Payment Confirmation Sent'; } $this->view->numCount = $numCount; $this->view->rowset = $rowset; $this->view->bankAccount = $bankAccount; }
public function editpaymentsettingAction() { $idSetting = $this->_request->getParam('id'); $tblPaymentSetting = new Kutu_Core_Orm_Table_PaymentSetting(); $rowset = $tblPaymentSetting->fetchAll($tblPaymentSetting->select()->where("settingId = " . $idSetting)); $this->view->id = $idSetting; $this->view->rows = $rowset; if ($this->_request->isPost($this->_request->getParam('save'))) { $id = $this->_request->getParam('id'); //$data['settingKey'] = $this->_request->getParam('key'); $data['settingValue'] = $this->_request->getParam('value'); $data['note'] = $this->_request->getParam('note'); $update = $tblPaymentSetting->update($data, 'settingId = ' . $id); $this->_helper->redirector('paymentsetting'); } }
function viewinvoiceAction() { $orderId = $this->_request->getParam('orderId'); $tblOrder = new Kutu_Core_Orm_Table_Order(); $items = $tblOrder->getOrderDetail($orderId); $this->view->orderId = $orderId; $this->view->invoiceNumber = $items[0]['invoiceNumber']; $this->view->datePurchased = Kutu_Lib_Formater::get_date($items[0]['datePurchased']); $tblPaymentSetting = new Kutu_Core_Orm_Table_PaymentSetting(); $rowTaxRate = $tblPaymentSetting->fetchRow("settingKey='taxRate'"); if ($this->_user->kopel != $items[0]['userId']) { $this->_redirect(KUTU_ROOT_URL . '/store/cartempty'); } $result = array(); $result['subTotal'] = 0; for ($iCart = 0; $iCart < count($items); $iCart++) { $itemId = $items[$iCart]['itemId']; $qty = 1; $itemPrice = $items[$iCart]['price']; $result['items'][$iCart]['itemId'] = $itemId; $result['items'][$iCart]['item_name'] = $items[$iCart]['documentName']; $result['items'][$iCart]['itemPrice'] = $itemPrice; $result['items'][$iCart]['qty'] = $qty; $result['subTotal'] += $itemPrice * $qty; } $result['taxAmount'] = $result['subTotal'] * $rowTaxRate->settingValue / 100; $result['grandTotal'] = $result['subTotal'] + $result['taxAmount']; $this->view->cart = $result; $data = array(); $data['taxNumber'] = $items[0]['taxNumber']; $data['taxCompany'] = $items[0]['taxCompany']; $data['taxAddress'] = $items[0]['taxAddress']; $data['taxCity'] = $items[0]['taxCity']; $data['taxZip'] = $items[0]['taxZip']; $data['taxProvince'] = $items[0]['taxProvince']; $data['taxCountry'] = $items[0]['taxCountryId']; $data['paymentMethod'] = $items[0]['paymentMethod']; $data['currencyValue'] = $items[0]['currencyValue']; $this->view->data = $data; }
function completeAction() { $formater = new Kutu_Core_Hol_User(); $defaultCurrency = 'Rp'; $kopel = $this->_request->getParam('kopel'); $method = $this->_request->getParam('method'); $packageId = $this->_request->getParam('packageId'); $paymentSubscription = $this->_request->getParam('payment'); $tblPaymentSetting = new Kutu_Core_Orm_Table_PaymentSetting(); $usdIdrEx = $tblPaymentSetting->fetchRow(" settingKey= 'USDIDR'"); $currencyValue = $usdIdrEx->settingValue; $rowTaxRate = $tblPaymentSetting->fetchRow("settingKey='taxRate'"); $taxRate = $rowTaxRate->settingValue; $tblUser = new Kutu_Core_Orm_Table_User(); $rowUser = $tblUser->find($kopel)->current(); /* $modelGroup = new Kutu_Core_Orm_Table_Group(); $row = $modelGroup->fetchRow("id=".$this->_user->packageId); if ($row->name == "free") { $rowUser->periodeId = 2; $rowUser->save(); } */ $this->view->rowUser = $rowUser; // discount $disc = $formater->checkPromoValidation('Disc', $packageId, $rowUser->promotionId, $paymentSubscription); $total = $formater->checkPromoValidation('Total', $packageId, $rowUser->promotionId, $paymentSubscription); $tblPackage = new Kutu_Core_Orm_Table_Package(); $rowPackage = $tblPackage->fetchRow("packageId={$packageId}"); $this->view->rowPackage = $rowPackage; $tblOrder = new Kutu_Core_Orm_Table_Order(); $row = $tblOrder->fetchNew(); $row->userId = $kopel; if ($this->getRequest()->getPost()) { $value = $this->getRequest()->getPost(); $row->taxNumber = $value['taxNumber']; $row->taxCompany = $value['taxCompany']; $row->taxAddress = $value['taxAddress']; $row->taxCity = $value['taxCity']; $row->taxZip = $value['taxZip']; $row->taxProvince = $value['taxProvince']; $row->taxCountryId = $value['taxCountry']; $row->paymentMethod = $method; } $row->datePurchased = date('YmdHis'); $row->paymentMethodNote = "membership"; if ($method == "nsiapay") { $row->orderStatus = 8; } else { $row->orderStatus = 1; //pending } $row->currency = $defaultCurrency; $row->currencyValue = $currencyValue; $row->orderTotal = $total; $row->ipAddress = Kutu_Lib_Formater::getRealIpAddr(); $orderId = $row->save(); $rowJustInserted = $tblOrder->find($orderId)->current(); $rowJustInserted->invoiceNumber = date('Ymd') . '.' . $orderId; $temptime = time(); $temptime = Kutu_Lib_Formater::DateAdd('d', 5, $temptime); $rowJustInserted->discount = $disc; $rowJustInserted->invoiceExpirationDate = strftime('%Y-%m-%d', $temptime); $rowJustInserted->save(); $this->view->invoiceNumber = $rowJustInserted->invoiceNumber; $this->view->datePurchased = $rowJustInserted->datePurchased; $tblOrderDetail = new Kutu_Core_Orm_Table_OrderDetail(); $rowDetail = $tblOrderDetail->fetchNew(); $rowDetail->orderId = $orderId; $rowDetail->itemId = $rowPackage->packageId; $modelGroup = new Kutu_Core_Orm_Table_Group(); $row = $modelGroup->fetchRow("id={$packageId}"); $group = "Subsciption for Member " . ucwords(strtolower($row->name)) . " " . $paymentSubscription . " Months"; $this->view->packageId = $packageId; $this->view->paymentSubscription = $paymentSubscription; $this->view->itemName = $group; $rowDetail->documentName = $group; $rowDetail->price = $total; $numOfUsers = $tblUser->getUserCount($rowUser->kopel); $this->view->numOfUsers = $numOfUsers; $this->view->grandtotal = $total; $this->view->method = $method; $this->view->orderId = $orderId; $this->view->total = $rowPackage->charge; $rowDetail->qty = $numOfUsers; $rowDetail->finalPrice = $total; $rowDetail->save(); $data = $this->_request->getParams(); $this->view->data = $data; $modDir = $this->getFrontController()->getModuleDirectory(); require_once $modDir . '/models/Store/Mailer.php'; $mod = new Membership_Model_Store_Mailer(); switch (strtolower($method)) { case 'manual': case 'bank': $mod->sendBankInvoiceToUser($orderId); break; case 'nsiapay': $mod->sendInvoiceToUser($orderId); break; } }
public function confirmAction() { $this->_checkAuth(); $userId = $this->_userInfo->userId; $tblOrder = new Kutu_Core_Orm_Table_Order(); $tblSetting = new Kutu_Core_Orm_Table_PaymentSetting(); $rowset = $tblOrder->getTransactionToConfirm($userId); //,$limit,$offset); $numCount = $tblOrder->getTransactionToConfirmCount($userId); $bankAccount = $tblSetting->fetchAll($tblSetting->select()->where("settingKey = 'bankAccount'")); if ($this->_request->get('sended') == 1) { $this->view->sended = 'Payment Confirmation Sent'; } $this->view->numCount = $numCount; $this->view->rowset = $rowset; $this->view->bankAccount = $bankAccount; /*echo'<pre>'; print_r($this->_userDetailInfo); echo'</pre>';*/ }
private function saveOrder($cart, $method) { //[TODO] this value should be put into table KutuPaymentSetting $defaultCurrency = 'USD'; $tblPaymentSetting = new Kutu_Core_Orm_Table_PaymentSetting(); $usdIdrEx = $tblPaymentSetting->fetchRow(" settingKey= 'USDIDR'"); $currencyValue = $usdIdrEx->settingValue; $rowTaxRate = $tblPaymentSetting->fetchRow("settingKey='taxRate'"); $taxRate = $rowTaxRate->settingValue; //die($currencyValue); $auth = Zend_Auth::getInstance(); $userId = $auth->getIdentity()->guid; $tblOrder = new Kutu_Core_Orm_Table_Order(); $row = $tblOrder->fetchNew(); $row->userId = $userId; //get value from post var (store/checkout.phtml) if ($this->getRequest()->getPost()) { $value = $this->getRequest()->getPost(); // get posted value $row->taxNumber = $value['taxNumber']; $row->taxCompany = $value['taxCompany']; $row->taxAddress = $value['taxAddress']; $row->taxCity = $value['taxCity']; $row->taxZip = $value['taxZip']; $row->taxProvince = $value['taxProvince']; $row->taxCountryId = $value['taxCountry']; $row->paymentMethod = $method; } $row->datePurchased = date('YmdHis'); $row->orderStatus = 1; //pending $row->currency = $defaultCurrency; $row->currencyValue = $currencyValue; $row->orderTotal = $cart['grandTotal']; $row->orderTax = $cart['taxAmount']; $row->ipAddress = $this->getRealIpAddress(); /*echo '<pre>'; //print_r($row); echo '</pre>';*/ $orderId = $row->save(); //$orderId = $tblOrder->getLastInsertId(); $rowJustInserted = $tblOrder->find($orderId)->current(); $rowJustInserted->invoiceNumber = date('Ymd') . '.' . $orderId; $rowJustInserted->save(); $this->view->invoiceNumber = $rowJustInserted->invoiceNumber; $tblOrderDetail = new Kutu_Core_Orm_Table_OrderDetail(); for ($iCart = 0; $iCart < count($cart['items']); $iCart++) { $rowDetail = $tblOrderDetail->fetchNew(); $itemId = $cart['items'][$iCart]['itemId']; $rowDetail->orderId = $orderId; $rowDetail->itemId = $itemId; $rowDetail->documentName = $cart['items'][$iCart]['item_name']; $rowDetail->price = $cart['items'][$iCart]['itemPrice']; $itemPrice = $rowDetail->price; @($rowDetail->tax = ($cart['grandTotal'] - $cart['subTotal']) / $cart['subTotal'] * 100); $rowDetail->qty = $cart['items'][$iCart]['qty']; $rowDetail->finalPrice = $itemPrice + $itemPrice * $taxRate / 100; $rowDetail->save(); } //[TODO] MUST ALSO INSERT/UPDATE KutuUserFinance return $orderId; }