예제 #1
0
파일: profile.php 프로젝트: JexyRu/Ksenmart
 /**
  * KsenMartModelProfile::getOrder()
  * 
  * @param integer $order_id
  * @return
  */
 public function getOrder($order_id = 0)
 {
     $this->onExecuteBefore('getOrder', array(&$order_id));
     if ($order_id == 0) {
         $order_id = JRequest::getVar('id', 0);
     }
     $user = KSUsers::getUser();
     $order = KSMOrders::getOrder($order_id);
     $order->shipping_title = $this->getShippingTitle($order->shipping_id);
     if (empty($order->email)) {
         $order->email = $user->email;
     }
     if (empty($order->name)) {
         $order->name = $user->name;
     }
     if (empty($order->phone)) {
         $order->phone = $user->phone;
     }
     if (!empty($order)) {
         $order->items = KSMOrders::getOrderItems($order_id);
     }
     $this->onExecuteAfter('getOrder', array(&$order));
     return $order;
 }
예제 #2
0
파일: cart.php 프로젝트: JexyRu/Ksenmart
 public function getCart()
 {
     $this->onExecuteBefore('getCart');
     $Itemid = KSSystem::getShopItemid();
     if (!empty($this->order_id)) {
         $cart = KSMOrders::getOrder($this->order_id);
         $this->setDefaultCartValues($cart);
         $cart->items = KSMOrders::getOrderItems($this->order_id);
         for ($k = 0; $k < count($cart->items); $k++) {
             $cart->items[$k]->del_link = JRoute::_('index.php?option=com_ksenmart&view=cart&task=cart.update_cart&item_id=' . $cart->items[$k]->id . '&count=0&Itemid=' . $Itemid);
             $cart->total_prds += $cart->items[$k]->count;
             $cart->products_sum += $cart->items[$k]->count * $cart->items[$k]->price;
         }
     } else {
         $this->setDefaultCartValues($cart);
     }
     $cart->products_sum_val = KSMPrice::showPriceWithTransform($cart->products_sum);
     $cart->total_sum = $cart->products_sum;
     $cart->total_sum_val = KSMPrice::showPriceWithTransform($cart->total_sum);
     $this->onExecuteAfter('getCart', array(&$cart));
     return $cart;
 }
예제 #3
0
파일: orders.php 프로젝트: JexyRu/Ksenmart
 public static function sendOrderMail($order_id, $admin = false)
 {
     self::onExecuteBefore(array(&$order_id, &$admin));
     $db = JFactory::getDBO();
     JRequest::setVar('id', $order_id);
     $model = KSSystem::getModel('orders');
     $order = $model->getOrder();
     $order->items = KSMOrders::getOrderItems($order_id);
     $query = $db->getQuery(true);
     $query->select('*')->from('#__ksenmart_shipping_fields')->where('shipping_id=' . $order->shipping_id)->where('position=' . $db->quote('address'))->where('published=1')->order('ordering');
     $db->setQuery($query);
     $address_fields = $db->loadObjectList();
     $address = array();
     foreach ($address_fields as $address_field) {
         if ($address_field->system && isset($order->address_fields[$address_field->title])) {
             $value = $order->address_fields[$address_field->title];
         } elseif (!$address_field->system && isset($order->address_fields[$address_field->id])) {
             $value = $order->address_fields[$address_field->id];
         } else {
             $value = '';
         }
         $title = $address_field->system ? JText::_('ksm_cart_shipping_field_' . $address_field->title) : $address_field->title;
         $address[] = $title . ' - ' . $value;
     }
     $order->address_fields = implode(', ', $address);
     $order->customer_name = '';
     if (isset($order->customer_fields['name']) && !empty($order->customer_fields['name'])) {
         $order->customer_name .= $order->customer_fields['name'];
     }
     if (isset($order->customer_fields['last_name']) && !empty($order->customer_fields['last_name'])) {
         $order->customer_name .= $order->customer_fields['last_name'] . ' ';
     }
     if (isset($order->customer_fields['first_name']) && !empty($order->customer_fields['first_name'])) {
         $order->customer_name .= $order->customer_fields['first_name'] . ' ';
     }
     if (isset($order->customer_fields['middle_name']) && !empty($order->customer_fields['middle_name'])) {
         $order->customer_name .= $order->customer_fields['middle_name'];
     }
     $order->phone = isset($order->customer_fields['phone']) && !empty($order->customer_fields['phone']) ? $order->customer_fields['phone'] : '';
     $mail = JFactory::getMailer();
     $params = JComponentHelper::getParams('com_ksenmart');
     $sender = array($params->get('shop_email'), $params->get('shop_name'));
     $content = KSSystem::loadTemplate(array('order' => $order), 'order', 'default', 'mail');
     $mail->isHTML(true);
     $mail->setSender($sender);
     $mail->Subject = 'Новый заказ №' . $order_id;
     $mail->Body = $content;
     if (!$admin) {
         $mail->AddAddress($order->customer_fields['email'], $order->customer_fields['name']);
     } else {
         $mail->AddAddress($params->get('shop_email'), $params->get('shop_name'));
     }
     $mail->Send();
     self::onExecuteAfter();
     return true;
 }