public function checkoutAction() { $auth = Zend_Auth::getInstance(); $userId = $auth->getIdentity()->guid; $tblUser = new Kutu_Core_Orm_Table_User(); $userDetailInfo = $tblUser->find($userId)->current(); $tblUserFinance = new Kutu_Core_Orm_Table_UserFinance(); $userFinanceInfo = $tblUserFinance->find($userId)->current(); if (empty($userFinanceInfo)) { $finance = $tblUserFinance->fetchNew(); $finance->userId = $userId; $finance->taxNumber = ''; $finance->taxCompany = $userDetailInfo->company; $finance->taxAddress = $userDetailInfo->mainAddress; $finance->taxCity = $userDetailInfo->city; $finance->taxProvince = $userDetailInfo->state; $finance->taxCountryId = $userDetailInfo->countryId; $finance->taxZip = $userDetailInfo->zip; $finance->save(); } $userFinanceInfo = $tblUserFinance->find($userId)->current(); //print_r($_POST); $cart =& $_SESSION['jCart']; if (!is_object($cart)) { $cart = new jCart(); } $this->view->cart = $cart; //print_r($_SESSION['jCart']); $this->view->userInfo = $userFinanceInfo; //if($this->_configStore->store->isClosed) if ($this->_isStoreClosed()) { $this->_forward('closed', 'store', 'site'); } }
function activateAction() { $sReturn = "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; $sReturn = base64_encode($sReturn); $r = $this->getRequest(); $id = $r->getParam("id"); $modelUser = new Kutu_Core_Orm_Table_User(); $rowset = $modelUser->find(base64_decode($id))->current(); if ($rowset) { if ($rowset->periodeId == 2) { $this->_forward('restricted', 'manager', 'membership', array('type' => 'user', 'num' => 106)); } elseif ($rowset->periodeId == 3) { $this->_forward('restricted', 'manager', 'membership', array('type' => 'user', 'num' => 102)); } elseif ($rowset->periodeId == 4) { $this->_forward('restricted', 'manager', 'membership', array('type' => 'user', 'num' => 'downgrade')); } else { $rowset->activationDate = date("Y-m-d h:i:s"); $rowset->isActive = 1; $rowset->periodeId = 3; $rowset->save(); $this->_forward('redirect-url', 'manager', 'membership', array('username' => $rowset->username, 'packageId' => $rowset->packageId, 'return' => $sReturn)); } } else { $this->_forward('restricted', 'manager', 'membership', array('type' => 'user', 'num' => 105)); } }
public function changePassword($userGuid, $oldPassword, $newPassword) { $tblUser = new Kutu_Core_Orm_Table_User(); $row = $tblUser->find($userGuid)->current(); $obj = new Kutu_Crypt_Password(); if ($obj->matchPassword($oldPassword, $row->password)) { $row->password = $obj->encryptPassword($newPassword); $row->save(); return true; } else { return false; } }
public function verifyoldpasswordAction() { $r = $this->getRequest(); $oldPassword = $r->getParam('oldPassword'); $auth = Zend_Auth::getInstance(); $obj = new Kutu_Crypt_Password(); $tblUser = new Kutu_Core_Orm_Table_User(); $row = $tblUser->find($auth->getIdentity()->guid)->current(); if ($obj->matchPassword($oldPassword, $row->password)) { die('1'); } else { die('0'); } }
public function sendReceiptToUser($orderId, $paymentMethod = '', $statusText = '') { $config = new Zend_Config_Ini(KUTU_ROOT_DIR . '/application/configs/mail.ini', 'general'); $siteOwner = "Hukumonline"; $siteName = $config->mail->sender->support->name; $contactEmail = $config->mail->sender->support->email; $tblOrder = new Kutu_Core_Orm_Table_Order(); $rowOrder = $tblOrder->find($orderId)->current(); $userId = $rowOrder->userId; //first check if orderId status is PAID, then send the email. switch ($rowOrder->orderStatus) { case 1: die('ORDER STATUS IS NOT YET PAID. CAN NOT SEND RECEIPT!.'); break; case 3: $orderStatus = "PAID"; break; case 5: $orderStatus = "POSTPAID PENDING"; break; case 6: $orderStatus = "PAYMENT REJECTED"; break; case 7: $orderStatus = "PAYMENT ERROR"; break; default: $orderStatus = "PAYMENT ERROR"; break; } $tblUser = new Kutu_Core_Orm_Table_User(); $rowUser = $tblUser->find($userId)->current(); $userEmail = $rowUser->email; $userFullname = $rowUser->fullName; switch (strtolower($paymentMethod)) { case 'paypal': case 'manual': case 'bank': case 'postpaid': default: $message = "\t\t\t\t\t\r\nDear {$userFullname},\r\n\r\nThis is a payment receipt for Invoice # {$rowOrder->invoiceNumber}\r\n\r\nTotal Amount: USD {$rowOrder->orderTotal}\r\nTransaction #:\r\nTotal Paid: USD {$rowOrder->orderTotal}\r\nStatus: {$orderStatus}\r\nYour payment method is: {$paymentMethod}\r\n\r\nYou may review your invoice history at any time by logging in to your account " . KUTU_ROOT_URL . "/store/payment/list\r\n\r\nNote: This email will serve as an official receipt for this payment.\r\n\r\nSalam,\r\n\r\nHukumonline\r\n\r\n=============================="; } $this->send($config->mail->sender->support->email, $config->mail->sender->support->name, $userEmail, '', "Hukumonline Receipt Invoice# " . $rowOrder->invoiceNumber, $message); }
/** * _writeConfirmCorporateEmail * @return JSON */ function _writeConfirmCorporateEmail($mailcontent, $fullname, $company, $payment, $disc, $total, $username, $guid, $email) { $obj = new Kutu_Crypt_Password(); $mailcontent = str_replace('$fullname', $fullname, $mailcontent); $mailcontent = str_replace('$company', $company, $mailcontent); $mailcontent = str_replace('$timeline', $payment, $mailcontent); $mailcontent = str_replace('$disc', $disc, $mailcontent); $mailcontent = str_replace('$price', number_format($total), $mailcontent); $mailcontent = str_replace('$username1', $username, $mailcontent); $mailcontent = str_replace('$guid', $guid, $mailcontent); // table User $tblUser = new Kutu_Core_Orm_Table_User(); $where = $tblUser->getAdapter()->quoteInto('company=?', $company); $rowUser = $tblUser->fetchAll($where, 'username ASC'); $tag = '<table>'; $tag .= '<tr><td><b>Username</b></td><td> </td><td> </td><td> </td><td><b>Password</b></td></tr>'; foreach ($rowUser as $rowsetUser) { $tag .= '<tr><td>' . $rowsetUser->username . '</td><td> </td><td> </td><td> </td><td>' . $obj->decryptPassword($rowsetUser->password) . '</td></tr>'; } $tag .= '</table>'; $mailcontent = str_replace('$tag', $tag, $mailcontent); $mail_body = $mailcontent; // parse ini_file $config = new Zend_Config_Ini(KUTU_ROOT_DIR . '/application/configs/mail.ini', 'mail'); $mailAttempt = $this->add_mail($config->mail->sender->support->email, $email, $username, $config->mail->sender->support->name, $mail_body); // try to save mail before send if ($mailAttempt) { $sendAttempt = $this->send_mail(); if ($sendAttempt) { $message = "Please check your email at {$email}!"; // update user $rowUser = $tblUser->find($obj->decryptPassword($guid))->current(); if ($rowUser) { $rowUser->isEmailSent = 'Y'; $rowUser->save(); } } else { $message = "Error send mail but register user successfully!<br>Please contact our customer service for more information"; } } else { $message = "Error saving mail!"; } return $message; }
function processAction() { $formater = new Kutu_Core_Hol_User(); $orderId = $this->_request->getParam('orderId'); $packageId = $this->_request->getParam('packageId'); $paymentSubscription = $this->_request->getParam('paymentSubscription'); $this->_orderIdNumber = $orderId; if (empty($orderId)) { echo "kosong"; die; } include_once KUTU_ROOT_DIR . '/application/models/Store.php'; $modelAppStore = new App_Model_Store(); if ($modelAppStore->isOrderPaid($orderId)) { //forward to error page $this->_helper->redirector->gotoSimple('error', 'store', 'hol-site', array('view' => 'orderalreadypaid')); die; } $tblOrder = new Kutu_Core_Orm_Table_Order(); $items = $tblOrder->getOrderDetail($orderId); $tmpMethod = $this->_request->getParam('method'); if (!empty($tmpMethod)) { $items[0]['paymentMethod'] = $tmpMethod; } $tblUser = new Kutu_Core_Orm_Table_User(); $rowUser = $tblUser->find($items[0]['userId'])->current(); $total = $formater->checkPromoValidation('Total', $packageId, $rowUser->promotionId, $paymentSubscription); switch ($items[0]['paymentMethod']) { case 'nsiapay': require_once 'PaymentGateway/Nsiapay.php'; // include the class file $paymentObject = new Nsiapay(); // initiate an instance of the class if ($this->_testMode) { $paymentObject->enableTestMode(); } $paymentObject->addField('TYPE', "IMMEDIATE"); $subTotal = 0; for ($iCart = 0; $iCart < count($items); $iCart++) { $i = $iCart + 1; $basket[] = $items[$iCart]['documentName'] . "," . $items[$iCart]['price'] . ".00" . "," . $items[$iCart]['qty'] . "," . $items[$iCart]['finalPrice'] . ".00"; $subTotal += $items[$iCart]['price'] * $items[$iCart]['qty']; } $ca = implode(";", $basket); $merchantId = "000100090000028"; $paymentObject->addField("BASKET", $ca); $paymentObject->addField("MERCHANTID", $merchantId); $paymentObject->addField("CHAINNUM", "NA"); $paymentObject->addField("TRANSIDMERCHANT", $items[0]['invoiceNumber']); $paymentObject->addField("AMOUNT", $subTotal); $paymentObject->addField("CURRENCY", "360"); $paymentObject->addField("PurchaseCurrency", "360"); $paymentObject->addField("acquirerBIN", "360"); $paymentObject->addField("password", "123456"); $paymentObject->addField("URL", "http://hukumonline.pl"); $paymentObject->addField("MALLID", "199"); $paymentObject->addField("SESSIONID", Zend_Session::getId()); $sha1 = sha1($subTotal . ".00" . $merchantId . "08iIWbWvO16w" . $items[0]['invoiceNumber']); // echo $subTotal.".00".$merchantId."08iIWbWvO16w".$items[0]['invoiceNumber']."<br>"; // echo $sha1;die; $paymentObject->addField("WORDS", $sha1); //$paymentObject->dumpFields(); $this->_helper->layout->disableLayout(); $paymentObject->submitPayment(); break; case 'manual': case 'bank': /* 1. update order status 2. redirect to instruction page */ //setting payment and status as pending (1), notify = 0, notes = 'paid with...' $this->updateInvoiceMethod($orderId, 'bank', 1, 0, 'paid with manual method'); // HAP: i think we should send this notification when user were on page "Complete Order" and after confirmation made by user is approved; //$this->Mailer($orderId, 'admin-order', 'admin'); //$this->Mailer($orderId, 'user-order', 'user'); $this->_helper->redirector('instruction', 'payment', 'membership', array('orderId' => $orderId)); break; } }
function changeusernameAction() { $this->_helper->layout->setLayout('layout-hukumonlineid-ps'); $auth = Zend_Auth::getInstance(); if (!$auth->hasIdentity()) { $this->_forward('restricted', 'error', 'identity', array('type' => 'identity', 'num' => 101)); } else { $guid = $auth->getIdentity()->guid; $tblUser = new Kutu_Core_Orm_Table_User(); $rowUser = $tblUser->find($guid)->current(); $this->view->row = $rowUser; $g = $this->getRequest(); if ($g->isPost()) { $aData = $g->getParams(); $aData['guid'] = $guid; try { $hol = new Kutu_Core_Hol_User(); $rowUser = $hol->editprofile($aData); $this->view->row = $rowUser; $this->view->message = "Data has been successfully saved."; } catch (Zend_Exception $e) { $this->view->message = $e->getMessage(); } } } }
private function _checkAuth() { $auth = Zend_Auth::getInstance(); $userId = $auth->getIdentity()->guid; if (!$auth->hasIdentity()) { $this->_redirect(KUTU_ROOT_URL . '/helper/sso/login' . '?returnTo=' . $sReturn); } else { // [TODO] else: check if user has access to admin page $username = $auth->getIdentity()->username; $this->view->username = $username; } //$userId=$auth->getIdentity()->guid; $tblUser = new Kutu_Core_Orm_Table_User(); $this->_userDetailInfo = $tblUser->find($userId)->current(); $tblUserFinance = new Kutu_Core_Orm_Table_UserFinance(); $this->_userInfo = $tblUserFinance->find($userId)->current(); if (empty($this->_userInfo)) { $finance = $tblUserFinance->fetchNew(); $finance['userId'] = $userId; $finance->save(); $this->_userInfo = $tblUserFinance->find($userId)->current(); } }
public function Mailer($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(); $tblOrderDetail = new Kutu_Core_Orm_Table_OrderDetail(); $rowset = $tblOrder->getOrderAndStatus($idOrder); //echo '<pre>'; //print_r($_SESSION['_orderIdNumber']); $rowsetDetail = $tblOrderDetail->fetchAll($tblOrderDetail->select()->where("orderId = " . $idOrder)); $tblConfirm = new Kutu_Core_Orm_Table_PaymentConfirmation(); $unConfirmed = $tblConfirm->fetchAll($tblConfirm->select()->where("confirmed =0 AND orderId = " . $idOrder)); $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>'; //$userId=$rowset[0]['userId']; //echo $userId; $auth = Zend_Auth::getInstance(); $userId = $auth->getIdentity()->guid; $tblUser = new Kutu_Core_Orm_Table_User(); $this->_userDetailInfo = $tblUser->find($userId)->current(); $sMailSource = $template[0]->note; $tblSetting = new Kutu_Core_Orm_Table_PaymentSetting(); $adminMail = $tblSetting->fetchAll($tblSetting->select()->where("settingKey = 'paypalBusiness'")); if ($userTo == 'admin') { $sMailEmailTo = $adminMail[0]->settingValue; //die($this->_userDetailInfo->email); $sMailEmailFrom = $this->_userDetailInfo->email; $link = '<a href="' . KUTU_ROOT_URL . '/admin/store/detailOrder/id/' . $idOrder . '">here</a>'; } else { $sMailEmailTo = $this->_userDetailInfo->email; $sMailEmailFrom = $adminMail[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, 'PAYMENT' => $rowset[0]->paymentMethod, 'DESCRIPTION' => $detail, 'TOTALORDER' => $rowset[0]->orderTotal, 'ORDERTIME' => $rowset[0]->datePurchased, 'INVOICE' => $rowset[0]->invoiceNumber, 'METHOD' => $rowset[0]->paymentMethod, 'LINK' => $link); $mail->SendFileMail($sMailSource, $sMailEmailTo, $sMailSubject, $sMailEmailFrom, $sMailHeader, $aMailDataSet); }
public function changepasswordAction() { $r = $this->getRequest(); $guid = $r->getParam('guid'); $tblUser = new Kutu_Core_Orm_Table_User(); $row = $tblUser->find($guid)->current(); $this->view->rowUser = $row; if ($r->isPost()) { echo "<strong> THIS FUNCTION IS NOT YET IMPLEMENTED</strong>"; } }
public function newsletterAction() { $this->_helper->layout()->setLayout('layout-final-inside'); $auth = Zend_Auth::getInstance(); $userGuid = $auth->getIdentity()->guid; $tblUser = new Kutu_Core_Orm_Table_User(); $rowUser = $tblUser->find($userGuid)->current(); if (!empty($rowUser)) { $this->view->email = $rowUser->email; } }
public function delete($userId) { //[TODO] WE MUST DEFINE RELATIONSHIP AND CASCADE DELETE ON EVERY TABLES $tblUser = new Kutu_Core_Orm_Table_User(); $rowUser = $tblUser->find($userId)->current(); $username = $rowUser->username; print_r($username); //delete from KutuOrder //$tblOrder = new Kutu_Core_Orm_Table_Order(); //$tblOrder->delete("userId='$userId'"); //delete from PHPGACL (use PHPGACL function to delete user) $acl = Kutu_Acl::manager(); $acl->deleteUser($username); //delete from KutuUserFinance $tblUserFinance = new Kutu_Core_Orm_Table_UserFinance(); $rowsetUserFinance = $tblUserFinance->find($userId); if (count($rowsetUserFinance)) { $rowUserFinance = $rowsetUserFinance->current(); $rowUserFinance->delete(); } //delete from KutuUser $rowUser->delete(); //delete from all table that Chenri made (Store related tables) }
public function sendPaypalCompleteNotificationToUser($orderId) { $config = new Zend_Config_Ini(KUTU_ROOT_DIR . '/application/configs/mail.ini', 'general'); $sOrderId = ''; $tblUser = new Kutu_Core_Orm_Table_User(); $tblOrder = new Kutu_Core_Orm_Table_Order(); $rowOrder = $tblOrder->find($orderId)->current(); $userId = $rowOrder->userId; $rowUser = $tblUser->find($userId)->current(); $userEmail = $rowUser->email; $userFullname = $rowUser->firstname . ' ' . $rowUser->lastname; $message = "\t\t\t\t\t\nYour Paypal payment for item(s) with Order ID {$sOrderId} has been completely proceed.\n\nnow you can continue to <a href=\"" . KUTU_ROOT_URL . "/site/store_payment/document\">download the document(s)</a> or just continue <a href=\"" . KUTU_ROOT_URL . "/dms\">browsing our database</a>..\n\n=============================="; $sFile = "sendPaypalCompleteNotificationToUser.log"; $content = "SENDER : " . $config->mail->sender->support->email . "\n"; $content .= "NAME : " . $config->mail->sender->support->name . "\n"; $content .= "RECIPIENT : " . $userEmail; $content .= "MESSAGE : [LGS ONLINE] Receipt Invoice# " . $rowOrder->invoiceNumber . $message . "\n"; $this->logThisMail($sFile, $content); $this->send($config->mail->sender->support->email, $config->mail->sender->support->name, $userEmail, '', "[LGS ONLINE] Paypal Payment Complete ", $message); }
function changeemailAction() { $tblUser = new Kutu_Core_Orm_Table_User(); $rowset = $tblUser->find($this->_user->kopel)->current(); $this->view->row = $rowset; $this->view->identity = "Ubah Email"; $r = $this->getRequest(); if ($r->isPost()) { $aData = $r->getParams(); try { $hol = new Kutu_Core_Hol_User(); $rowUser = $hol->editprofile($aData); $this->view->row = $rowUser; $this->view->message = "Data has been successfully saved."; } catch (Zend_Exception $e) { $this->view->message = $e->getMessage(); } } }
private function _migrateAllUsers() { $sqlSource = "SELECT * from tblPersonalization_User"; $this->_dbSource->setFetchMode(Zend_Db::FETCH_OBJ); $results = $this->_dbSource->fetchAll($sqlSource); // do mapping if (count($results)) { foreach ($results as $row) { $tblUser = new Kutu_Core_Orm_Table_User(); $rowsetUser = $tblUser->find($this->_guidPrefix . $row->UserID); if (count($rowsetUser) < 1) { // do something $rowUser = $tblUser->fetchNew(); $rowUser->guid = $this->_guidPrefix . $row->UserID; $rowUser->username = $row->UserName; $rowUser->password = is_null($row->Password) ? 'V3FXfFJzBnpVYg==' : $row->Password; $rowUser->firstname = $row->FullName; $rowUser->lastname = ''; $rowUser->email = $row->Email; $rowUser->company = $row->CompanyName; $rowUser->mainAddress = $row->Address; $rowUser->zip = $row->ZIP; $rowUser->phone = $row->Phone; $rowUser->industryId = $row->CompBusLine; $rowUser->isActive = is_null($row->isActive) ? 0 : $row->isActive; $rowUser->createdDate = $row->DateCreate; $rowUser->registrationDate = $rowUser->createdDate; $sqlMembership = "SELECT * from tblMembership_Exp where User_ID={$row->UserID}"; $this->_dbSource->setFetchMode(Zend_Db::FETCH_OBJ); $resultsMembership = $this->_dbSource->fetchAll($sqlMembership); //print_r($resultsMembership); //die(); if (count($resultsMembership)) { $rowMembership = $resultsMembership[0]; $rowUser->fax = $rowMembership->Fax; $rowUser->activationDate = $rowMembership->Activation_Date; $rowUser->expirationDate = $rowMembership->Expiration_Date; } //if($row->UserID==157) if (true) { $rowUser->save(); //die(); } //Must also assign assign user as group:member_free $acl = Kutu_Acl_Manager::getAdapter(); $acl->addUserToGroup($rowUser->username, "member_free"); } else { } } } die; }