Exemple #1
0
 /**
  * Todo, works only for small stores, we need a new solution there with a bit filtering
  * For example by time, if already shopper, and a simple search
  * @return object list of users
  */
 function getUserList()
 {
     $adminID = JFactory::getSession()->get('vmAdminID', false);
     $superVendor = VmConfig::isSuperVendor($adminID);
     if ($superVendor > 1) {
         $db = JFactory::getDbo();
         $search = vRequest::getUword('usersearch', '');
         if (!empty($search)) {
             $search = 'WHERE (`name` LIKE %' . $search . '% OR `username` LIKE %' . $search . '%)';
         }
         $q = 'SELECT ju.`id`,`name`,`username` FROM `#__users` as ju';
         $q .= ' LEFT JOIN #__virtuemart_vmusers AS vmu ON vmu.virtuemart_user_id = ju.id';
         $q .= ' LEFT JOIN #__virtuemart_vendor_users AS vu ON vu.virtuemart_user_id = ju.id';
         if (!empty($search)) {
             $search .= ' AND (vu.virtuemart_vendor_id = ' . $superVendor . ' ';
         } else {
             $search = ' WHERE (vu.virtuemart_vendor_id = ' . $superVendor . ' ';
         }
         $search .= ' OR ISNULL(vu.virtuemart_vendor_id))';
         $search .= ' AND ( vmu.user_is_vendor = 0 OR ISNULL(vmu.virtuemart_vendor_id))';
         $q .= $search . ' ORDER BY `name` LIMIT 0,10000';
         $db->setQuery($q);
         $result = $db->loadObjectList();
         if ($adminID) {
             $user = JFactory::getUser($adminID);
             $toAdd = new stdClass();
             $toAdd->id = $user->id;
             $toAdd->name = $user->name;
             $toAdd->username = $user->username;
             $toAdd->displayedName = $user->name . '  ( ' . $user->username . ' )';
             array_unshift($result, $toAdd);
         }
         foreach ($result as $k => $user) {
             $result[$k]->displayedName = $user->name . '  ( ' . $user->username . ' )';
         }
     }
     return $result;
 }
Exemple #2
0
 public function getSwitchUserList($superVendor = null, $adminID = false)
 {
     if (!isset($superVendor)) {
         $superVendor = vmAccess::isSuperVendor();
     }
     $result = false;
     if ($superVendor) {
         $db = JFactory::getDbo();
         $search = vRequest::getUword('usersearch', '');
         if (!empty($search)) {
             $search = ' WHERE (`name` LIKE "%' . $search . '%" OR `username` LIKE "%' . $search . '%" OR `customer_number` LIKE "%' . $search . '%")';
         } else {
             if ($superVendor != 1) {
                 $search = ' WHERE vu.tsmart_vendor_id = ' . $superVendor . ' ';
             }
         }
         $q = 'SELECT ju.`id`,`name`,`username` FROM `#__users` as ju';
         if ($superVendor != 1 or !empty($search)) {
             $q .= ' LEFT JOIN #__tsmart_vmusers AS vmu ON vmu.tsmart_user_id = ju.id';
             if ($superVendor != 1) {
                 $q .= ' LEFT JOIN #__tsmart_vendor_users AS vu ON vu.tsmart_user_id = ju.id';
                 $search .= ' AND ( vmu.user_is_vendor = 0 OR (vmu.tsmart_vendor_id) IS NULL)';
             }
         }
         $current = JFactory::getUser();
         $hiddenUserID = $adminID ? $adminID : $current->id;
         if (!empty($search)) {
             $search .= ' AND ju.id!= "' . $hiddenUserID . '" ';
         } else {
             $q .= ' WHERE ju.id!= "' . $hiddenUserID . '" ';
         }
         $q .= $search . ' ORDER BY `name` LIMIT 0,10000';
         $db->setQuery($q);
         $result = $db->loadObjectList();
         if ($result) {
             foreach ($result as $k => $user) {
                 $result[$k]->displayedName = $user->name . '  ( ' . $user->username . ' )';
             }
         } else {
             $result = array();
         }
         if ($adminID) {
             $user = JFactory::getUser($adminID);
             if ($current->id != $user->id) {
                 $toAdd = new stdClass();
                 $toAdd->id = $user->id;
                 $toAdd->name = $user->name;
                 $toAdd->username = $user->username;
                 $toAdd->displayedName = tsmText::sprintf('com_tsmart_RETURN_TO', $user->name, $user->username);
                 array_unshift($result, $toAdd);
             }
         }
         $toAdd = new stdClass();
         $toAdd->id = 0;
         $toAdd->name = '';
         $toAdd->username = '';
         $toAdd->displayedName = '-' . tsmText::_('com_tsmart_REGISTER') . '-';
         array_unshift($result, $toAdd);
     }
     return $result;
 }
 function plgVmOnUserPaymentCancel()
 {
     if (!class_exists('VirtueMartModelOrders')) {
         require VMPATH_ADMIN . DS . 'models' . DS . 'orders.php';
     }
     $order_number = vRequest::getUword('on');
     if (!$order_number) {
         return FALSE;
     }
     if (!($virtuemart_order_id = VirtueMartModelOrders::getOrderIdByOrderNumber($order_number))) {
         return NULL;
     }
     if (!($paymentTable = $this->getDataByOrderId($virtuemart_order_id))) {
         return NULL;
     }
     $session = JFactory::getSession();
     $return_context = $session->getId();
     $field = $this->_name . '_custom';
     if (strcmp($paymentTable->{$field}, $return_context) === 0) {
         $this->handlePaymentUserCancel($virtuemart_order_id);
     }
     return TRUE;
 }
Exemple #4
0
 function plgVmOnUserPaymentCancel()
 {
     if (!class_exists('VirtueMartModelOrders')) {
         require VMPATH_ADMIN . DS . 'models' . DS . 'orders.php';
     }
     $order_number = vRequest::getUword('on');
     $virtuemart_paymentmethod_id = vRequest::getInt('pm', '');
     if (empty($order_number) or empty($virtuemart_paymentmethod_id) or !$this->selectedThisByMethodId($virtuemart_paymentmethod_id)) {
         return NULL;
     }
     $numerr = vRequest::getString('E', '');
     if ($numerr) {
         VmInfo('VMPAYMENT_' . $this->_name . '_PBX_NUMERR_' . abs($numerr));
     }
     if (!($virtuemart_order_id = VirtueMartModelOrders::getOrderIdByOrderNumber($order_number))) {
         return NULL;
     }
     if (!($paymentTable = $this->getDataByOrderId($virtuemart_order_id))) {
         return NULL;
     }
     $session = JFactory::getSession();
     $return_context = $session->getId();
     $field = $this->_name . '_custom';
     if (strcmp($paymentTable->{$field}, $return_context) === 0) {
         $this->handlePaymentUserCancel($virtuemart_order_id);
     }
     return TRUE;
 }
Exemple #5
0
 /**
  * Todo, works only for small stores, we need a new solution there with a bit filtering
  * For example by time, if already shopper, and a simple search
  * @return object list of users
  */
 function getUserList()
 {
     $adminID = JFactory::getSession()->get('vmAdminID', false);
     $superVendor = VmConfig::isSuperVendor($adminID);
     $result = false;
     if ($this->allowChangeShopper and $superVendor) {
         //if(!$superVendor) $superVendor = 1;
         $db = JFactory::getDbo();
         $search = vRequest::getUword('usersearch', '');
         if (!empty($search)) {
             $search = 'WHERE (`name` LIKE %' . $search . '% OR `username` LIKE %' . $search . '%)';
         }
         $q = 'SELECT ju.`id`,`name`,`username` FROM `#__users` as ju';
         $q .= ' LEFT JOIN #__virtuemart_vmusers AS vmu ON vmu.virtuemart_user_id = ju.id';
         $q .= ' LEFT JOIN #__virtuemart_vendor_users AS vu ON vu.virtuemart_user_id = ju.id';
         if (!empty($search)) {
             $search .= ' AND (vu.virtuemart_vendor_id = ' . $superVendor . ' ';
         } else {
             $search = ' WHERE (vu.virtuemart_vendor_id = ' . $superVendor . ' ';
         }
         if ($superVendor == 1) {
             $search .= ' OR (vu.virtuemart_vendor_id) IS NULL)';
         } else {
             $search .= ' )';
         }
         $search .= ' AND ( vmu.user_is_vendor = 0 OR (vmu.virtuemart_vendor_id) IS NULL)';
         $q .= $search . ' ORDER BY `name` LIMIT 0,10000';
         $db->setQuery($q);
         $result = $db->loadObjectList();
         //vmdebug('user list',$q);
         foreach ($result as $k => $user) {
             $result[$k]->displayedName = $user->name . '  ( ' . $user->username . ' )';
         }
         if ($adminID) {
             $user = JFactory::getUser($adminID);
             $toAdd = new stdClass();
             $toAdd->id = $user->id;
             $toAdd->name = $user->name;
             $toAdd->username = $user->username;
             $toAdd->displayedName = $user->name . '  ( ' . $user->username . ' )';
             array_unshift($result, $toAdd);
         }
         $toAdd = new stdClass();
         $toAdd->id = 0;
         $toAdd->name = '';
         $toAdd->username = '';
         $toAdd->displayedName = '-' . vmText::_('COM_VIRTUEMART_REGISTER') . '-';
         array_unshift($result, $toAdd);
     }
     return $result;
 }
Exemple #6
0
	/**
	 * Todo, works only for small stores, we need a new solution there with a bit filtering
	 * For example by time, if already shopper, and a simple search
	 * @return object list of users
	 */
	function getUserList() {
		$db = JFactory::getDbo();
		$search = vRequest::getUword('usersearch','');
		if(!empty($search)){
			$search = 'WHERE `name` LIKE %'.$search.'% OR `username` LIKE %'.$search.'%';
		}
		$q = 'SELECT `id`,`name`,`username` FROM `#__users` '.$search.'ORDER BY `name` LIMIT 0,10000';
		$db->setQuery($q);
		$result = $db->loadObjectList();
		foreach($result as $user) {
			$user->displayedName = $user->name .'  ( '. $user->username .' )';
		}
		return $result;
	}