uawdijnntqw1x1x1
IP : 216.73.216.231
Hostname : 213-108-241-110.cprapid.com
Kernel : Linux 213-108-241-110.cprapid.com 5.14.0-570.25.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 9 04:57:09 EDT 2025 x86_64
Disable Function : None :)
OS : Linux
PATH:
/
home
/
digilove
/
public_html
/
f7525
/
..
/
.
/
components
/
com_marketplace
/
models
/
dashboard.php
/
/
<?php /** * Marketplace - Component Marketplace * ****************************************************************** * * PHP version 7.0 * * @category Component * @package Joomla * @author WebKul software private limited <support@webkul.com> * @copyright 2010 WebKul software private limited * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL * @version GIT:5.2 * @filesource http://store.webkul.com * @link Technical Support: webkul.uvdesk.com * ****************************************************************** */ // no direct access defined('_JEXEC') or die('Restricted access'); jimport('joomla.application.component.model'); if (!class_exists('VmConfig')) { include JPATH_ADMINISTRATOR.'/components/com_virtuemart/helpers/config.php'; } VmConfig::loadConfig(); if (!class_exists('CurrencyDisplay')) { include JPATH_ADMINISTRATOR. '/components/com_virtuemart/helpers/currencydisplay.php'; } if (!class_exists('MarketplaceModelDashboard')) { /** * Marketplace Model Dashboard class * * @category Component * @package Joomla * @author WebKul software private limited <support@webkul.com> * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL * @link Technical Support: webkul.uvdesk.com */ class MarketplaceModelDashboard extends JModelLegacy { var $_data = null; /** * __construct function */ function __construct() { parent::__construct(); } /** * Get Seller Information function * * @param Integer $seller_id for Seller Id * * @return void */ function getSellerInfo($seller_id) { $db=$this->_db; $query=$db->getQuery(true); $query->select('*') ->from($db->quoteName('#__marketplace_sellerprofile')) ->where($db->quoteName('seller_id')."=".$db->quote($seller_id)) ->where($db->quoteName('is_seller')."=1"); try{ $db->setQuery($query); return $db->loadObjectList(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); } } /** * Get Currency function * * @param Integer $order_id var * * @return void */ function getCurrency($order_id) { $db=$this->_db; $query=$db->getQuery(true); $query->select($db->quoteName('order_currency')) ->select($db->quoteName('order_total')) ->from($db->quoteName('#__virtuemart_orders')) ->where( $db->quoteName('virtuemart_order_id')."=".$db->quote($order_id) ) ->order($db->quoteName('created_by')." DESC"); try{ $db->setQuery($query); return $db->loadObject(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); } } /** * Get Order Number function * * @param Integer $virtuemart_order_id var * * @return void */ function getOrderNumber($virtuemart_order_id) { $db=$this->_db; $query=$db->getQuery(true); $query->select($db->quoteName('order_number')) ->from($db->quoteName('#__virtuemart_orders')) ->where( $db->quoteName('virtuemart_order_id'). "=".$db->quote($virtuemart_order_id) ); try{ $db->setQuery($query); return $db->loadResult(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); } } /** * Get Order Currency function * * @param [type] $virtuemart_order_id var * * @return void */ function getOrderCurrency($virtuemart_order_id) { $db=$this->_db; $query=$db->getQuery(true); $query->select($db->quoteName('order_currency')) ->from($db->quoteName('#__virtuemart_orders')) ->where( $db->quoteName('virtuemart_order_id'). "=".$db->quote($virtuemart_order_id) ); try{ $db->setQuery($query); return $db->loadResult(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } } /** * Get Total Order function * * @return void */ function getTotalOrder() { $userdetails = JFactory::getUser(); $db = $this->_db; $query = $db->getQuery(true); $app=JFactory::getApplication(); $query->select($db->quoteName('b.virtuemart_order_id')) ->select('sum(virtuemart_product_total_amount) as wk_order_total') ->from($db->quoteName('#__marketplace_orderlist')." AS b") ->where('b.virtuemart_seller_id='.$userdetails->id) ->group($db->quoteName('b.virtuemart_order_id')); $data=array(); try{ $this->_data = $this->_getList($query); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } foreach ($this->_data as $key=>$value) { $singleOrder=$this->getVmOrder($value->virtuemart_order_id); if (isset($singleOrder) &&isset($singleOrder['details']) &&isset($singleOrder['details']['BT']) ) { $data[$key]=$singleOrder['details']['BT']; } if (isset($data[$key])) { $data[$key]->wk_order_total=$value->wk_order_total; } } $this->_data=$data; return $this->_data; } /** * Load a single order, Attention, this function is not protected! * Do the right manangement before, to be certain * we suggest to use getMyOrderDetails * * @param integer $virtuemart_order_id var * @param boolean $userlang var * * @return void */ public function getVmOrder($virtuemart_order_id, $userlang=false) { $virtuemart_order_id = (int)$virtuemart_order_id; $db = JFactory::getDBO(); $order = array(); // Get the order details // Create a new query object. $query = $db->getQuery(true); $query ->select(array('o.*', 'u.*', 's.order_status_name')) ->from($db->quoteName('#__virtuemart_orders', 'o')) ->join( 'LEFT', $db->quoteName('#__virtuemart_orderstates', 's') . ' ON (' . $db->quoteName('s.order_status_code') . ' = ' . $db->quoteName('o.order_status') . ')' ) ->join( 'LEFT', $db->quoteName('#__virtuemart_order_userinfos', 'u') . ' ON (' . $db->quoteName('u.virtuemart_order_id') . ' = ' . $db->quoteName('o.virtuemart_order_id') . ')' ) ->where( $db->quoteName('o.virtuemart_order_id') . '='. $virtuemart_order_id ); $db->setQuery($query); try{ $order['details'] = $db->loadObjectList('address_type'); } catch(Exception $e) { JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } if ($order['details'] and isset($order['details']['BT'])) { $concat = array(); if (!empty($order['details']['BT']->company)) { $concat[]= $order['details']['BT']->company; } if (!empty($order['details']['BT']->first_name)) { $concat[]= $order['details']['BT']->first_name; } if (!empty($order['details']['BT']->middle_name)) { $concat[]= $order['details']['BT']->middle_name; } if (!empty($order['details']['BT']->last_name)) { $concat[]= $order['details']['BT']->last_name; } $order['details']['BT']->order_name = ''; foreach ($concat as $c) { $order['details']['BT']->order_name .= trim($c).' '; } $order['details']['BT']->order_name = trim( htmlspecialchars( strip_tags( htmlspecialchars_decode( $order['details']['BT']->order_name ) ) ) ); } if ($userlang) { if (!empty($order['details']['BT']->order_language)) { $olang = $order['details']['BT']->order_language; VmConfig::loadJLang('com_virtuemart', true, $olang); VmConfig::loadJLang('com_virtuemart_shoppers', true, $olang); VmConfig::loadJLang('com_virtuemart_orders', true, $olang); } } // Get the order history $query = $db->getQuery(true); $query ->select('*') ->from($db->quoteName('#__virtuemart_order_histories')) ->where( $db->quoteName('virtuemart_order_id') . '='. $virtuemart_order_id ) ->order($db->quoteName('virtuemart_order_history_id') . ' ASC'); $db->setQuery($query); try{ $order['history'] = $db->loadObjectList(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } // Get the order items $query = $db->getQuery(true); $query ->select( array( 'virtuemart_order_item_id', 'product_quantity', 'order_item_name', 'order_item_sku', 'i.virtuemart_product_id', 'product_item_price', 'product_final_price', 'product_basePriceWithTax', 'product_discountedPriceWithoutTax', 'product_priceWithoutTax', 'product_subtotal_with_tax', 'product_subtotal_discount', 'product_tax', 'product_attribute', 'order_status', 'p.product_available_date', 'p.product_availability', 'intnotes', 'virtuemart_category_id', 'p.product_mpn' ) ) ->from($db->quoteName('#__virtuemart_order_items', 'i')) ->join( 'LEFT', $db->quoteName('#__virtuemart_products', 'p') . ' ON (' . $db->quoteName('p.virtuemart_product_id') . ' = ' . $db->quoteName('i.virtuemart_product_id') . ')' ) ->join( 'LEFT', $db->quoteName('#__virtuemart_product_categories', 'c') . ' ON (' . $db->quoteName('p.virtuemart_product_id') . ' = ' . $db->quoteName('c.virtuemart_product_id') . ')' ) ->where( $db->quoteName('virtuemart_order_id') . '='. $virtuemart_order_id ) ->group($db->quoteName('virtuemart_order_item_id')); $db->setQuery($query); try{ $order['items'] = $db->loadObjectList(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } $customfieldModel = VmModel::getModel('customfields'); $pModel = VmModel::getModel('product'); foreach ($order['items'] as &$item) { $ids = array(); $product = $pModel->getProduct($item->virtuemart_product_id); if (is_object($product)) { $pvar = get_object_vars($product); foreach ( $pvar as $k => $v) { if (!isset($item->$k) and isset($product->$k) and '_' != substr($k, 0, 1) ) { $item->$k = $v; } } } if (!empty($item->product_attribute)) { $myCustoms = @json_decode($item->product_attribute, true); $myCustoms = (array) $myCustoms; $item->customfields = array(); foreach ($myCustoms as $custom) { if (!is_array($custom)) { $custom = array( $custom =>false); } foreach ($custom as $id=>$field) { $item->customfields[] = $customfieldModel ->getCustomEmbeddedProductCustomField($id); $ids[] = $id; } } } if (!empty($product->customfields)) { if (!isset($item->customfields)) { $item->customfields = array(); } foreach ($product->customfields as $customfield) { if (!in_array($customfield->virtuemart_customfield_id, $ids) and $customfield->field_type=='E' and ($customfield->is_input or $customfield->is_cart_attribute) ) { $item->customfields[] = $customfield; } } } } // Get the order items $query = $db->getQuery(true); $query ->select('*') ->from($db->quoteName('#__virtuemart_order_calc_rules', 'z')) ->where( $db->quoteName('virtuemart_order_id') . '='. $virtuemart_order_id ); $db->setQuery($query); try{ $order['calc_rules'] = $db->loadObjectList(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } return $order; } /** * Get Order function * * @return void */ function getOrder() { $userdetails = JFactory::getUser(); $db = $this->getDbo(); $query = $db->getQuery(true); $app=JFactory::getApplication(); $query->select($db->quoteName('b.virtuemart_order_id')) ->select('sum(virtuemart_product_total_amount) as wk_order_total') ->from($db->quoteName('#__marketplace_orderlist')." AS b") ->where('b.virtuemart_seller_id='.$userdetails->id) ->order( "CAST(". $db->quoteName('b.virtuemart_order_id'). " as UNSIGNED) DESC" ) ->group($db->quoteName('b.virtuemart_order_id')); $query->setLimit(5); $data=array(); try{ $this->_data = $this->_getList($query); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } foreach ($this->_data as $key=>$value) { $query = $db->getQuery(true); $query->select($db->quoteName('vi.virtuemart_order_item_id')) ->from($db->quoteName('#__virtuemart_order_items', 'vi')) ->join( 'LEFT', $db->quoteName( '#__virtuemart_products', 'vp' )." ON(". $db->quoteName('vi.virtuemart_product_id'). "=".$db->quoteName('vp.virtuemart_product_id').")" ) ->where( 'vi.virtuemart_order_id='.$value->virtuemart_order_id ) ->where('vp.created_by='.JFactory::getUser()->id); $db->setQuery($query); try { $item_id=$db->loadObjectList(); } catch (Exception $e) { JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } $singleOrder=$this->getVmOrder($value->virtuemart_order_id); if (isset($singleOrder)&&isset($singleOrder['details']) &&isset($singleOrder['details']['BT']) ) { $data[$key]=$singleOrder['details']['BT']; } if (isset($item_id[0]->virtuemart_order_item_id)) { $data[$key]->item_id= $item_id[0]->virtuemart_order_item_id; } if (isset($data[$key])) { $data[$key]->wk_order_total=$value->wk_order_total; } } $this->_data=$data; return $this->_data; } /** * Get Order Total function * * @return void */ function getOrderTotal() { $userdetails=JFactory::getUser(); $db= $this->_db; $query= $db->getQuery(true); $query->select($db->quoteName('b.virtuemart_order_id')) ->select('sum(virtuemart_product_total_amount) as wk_order_total') ->from($db->quoteName('#__marketplace_orderlist')." AS b") ->where('b.virtuemart_seller_id='.$userdetails->id) ->group($db->quoteName('b.virtuemart_order_id')); $db->setQuery($query); try{ $orders=$db->loadObjectList(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } $orderTotal=0.0; foreach ($orders as $key => $value) { $orderTotal+=$value->wk_order_total; } return $orderTotal; } /** * Get PieChart Data function * * @return void */ function getPieChartData() { $db=$this->_db; $query=$db->getQuery(true); $select=array( $db->quoteName('a.virtuemart_order_id'), $db->quoteName('a.virtuemart_product_id'), $db->quoteName('a.product_subtotal_with_tax'), $db->quoteName('a.created_on') ); $query->select($select) ->from($db->quoteName('#__virtuemart_order_items', 'a')) ->join( 'LEFT', $db->quoteName('#__virtuemart_products', 'b')." ON ". $db->quoteName('a.virtuemart_product_id')."=". $db->quoteName('b.virtuemart_product_id') ) ->join( 'LEFT', $db->quoteName('#__marketplace_orderlist', 'mo')." ON " .$db->quoteName('mo.virtuemart_order_id')."=" .$db->quoteName('a.virtuemart_order_id') ) ->where( $db->quoteName('b.created_by')."=".$db->quote( JFactory::getUser()->id ) ) ->group($db->quoteName('mo.virtuemart_product_id')) ->order($db->quoteName('a.created_on')); try{ $db->setQuery($query); return $db->loadObjectList(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); } } /** * Get Locations function * * @param integer $seller_id var * * @return void */ function getLocations($seller_id) { $userdetails=JFactory::getUser(); $db= $this->_db; $query= $db->getQuery(true); $query->select($db->quoteName('b.virtuemart_order_id')) ->from($db->quoteName('#__marketplace_orderlist')." AS b") ->where('b.virtuemart_seller_id='.$userdetails->id) ->group($db->quoteName('b.virtuemart_order_id')); $db->setQuery($query); try{ $orders=$db->loadObjectList(); }catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } $orderTotal=0.0; $geodata=array(); $country_array=array(); foreach ($orders as $key => $value) { $vmOrder=$this->getVmOrder($value->virtuemart_order_id); if (isset($vmOrder)&&isset($vmOrder['details']) &&isset($vmOrder['details']['BT']) &&isset($vmOrder['details']['BT']->virtuemart_country_id) ) { $query=$db->getQuery(true); $query->select($db->quoteName('country_2_code')) ->from($db->quoteName('#__virtuemart_countries')) ->where( $db->quoteName('virtuemart_country_id'). "=".$db->quote( $vmOrder['details']['BT']->virtuemart_country_id ) ); $db->setQuery($query); try{ $country_name=$db->loadResult(); } catch(Exception $e){ JFactory::getApplication()->enqueueMessage( $e->getMessage(), 'error' ); return false; } if (array_key_exists($country_name, $country_array)) { $country_array[$country_name]++; } else { $country_array[$country_name]=1; } } } return $country_array; } } }
/home/digilove/public_html/f7525/.././components/com_marketplace/models/dashboard.php