| Current Path : /home/digilove/public_html/components/com_marketplace/models/ |
| Current File : /home/digilove/public_html/components/com_marketplace/models/mpregistration.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
if (!class_exists('VmConfig')) {
include JPATH_ADMINISTRATOR . DIRECTORY_SEPARATOR . 'components' .
DIRECTORY_SEPARATOR . 'com_virtuemart'.DIRECTORY_SEPARATOR.'helpers'.
DIRECTORY_SEPARATOR.'config.php';
}
defined('_JEXEC') or die('Restricted access');
jimport('joomla.application.component.model');
if (!class_exists('MarketplaceModelMpregistration')) {
/**
* Marketplace Model Mpregistration 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 MarketplaceModelMpregistration extends JModelForm
{
var $_data = null;
/**
* __construct function
*/
function __construct()
{
parent::__construct();
}
/**
* Get Form function
*
* @param array $data var
* @param boolean $loadData var
*
* @return void
*/
public function getForm($data = array(), $loadData = true)
{
$form = $this->loadForm(
'com_marketplace.mpregistration',
'marketplace_captcha',
array('control' => 'jform', 'load_data' => $loadData)
);
if (empty($form)) {
return false;
}
return $form;
}
/**
* Get Country List function
*
* @return void
*/
function getCountryList()
{
$db=JFactory::getDBO();
$query=$db->getQuery(true);
$query->select(
$db->quoteName(array('virtuemart_country_id','country_2_code','country_name'))
)
->from($db->quoteName('#__virtuemart_countries'))
->where($db->quoteName('published')."=1");
try{
$db->setQuery($query);
return $db->loadObjectList();
} catch(Exception $e){
JFactory::getApplication()->enqueueMessage(
$e->getMessage(),
'error'
);
}
}
/**
* Check Seller function
*
* @param integer $userid var
*
* @return void
*/
function checkSeller($userid)
{
$db=JFactory::getDBO();
$query=$db->getQuery(true);
$query->select($db->quoteName('is_seller'))
->from($db->quoteName('#__marketplace_sellerprofile'))
->where($db->quoteName('seller_id')."=".$db->quote($userid));
try{
$db->setQuery($query);
return $db->loadResult();
}
catch(Exception $e){
JFactory::getApplication()->enqueueMessage(
$e->getMessage(),
'error'
);
return false;
}
}
/**
* Check User function
*
* @param integer $userid var
*
* @return void
*/
function checkUser($userid)
{
$db=JFactory::getDBO();
$query=$db->getQuery(true);
$query->select($db->quoteName('seller_id'))
->from($db->quoteName('#__marketplace_sellerprofile'))
->where($db->quoteName('seller_id')."=".$db->quote($userid));
try{
$db->setQuery($query);
return $db->loadResult();
}
catch(Exception $e){
JFactory::getApplication()->enqueueMessage(
$e->getMessage(),
'error'
);
}
}
/**
* Get Joomla User function
*
* @param [type] $userid var
*
* @return void
*/
function getJoomlaUser($userid)
{
$db=JFactory::getDBO();
$query=$db->getQuery(true);
$query->select('*')
->from($db->quoteName('#__users'))
->where($db->quoteName('id')."=".$db->quote($userid));
try{
$db->setQuery($query);
return $db->loadAssoclist();
}
catch(Exception $e){
JFactory::getApplication()->enqueueMessage(
$e->getMessage(),
'error'
);
}
}
/**
* Get Joomla User By Email function
*
* @param [type] $email var
*
* @return void
*/
function getJoomlaUserByEmail($email)
{
$db=JFactory::getDBO();
$query=$db->getQuery(true);
$query->select('email')
->from($db->quoteName('#__users'))
->where($db->quoteName('email')."=".$db->quote($email));
try{
$db->setQuery($query);
return $db->loadResult();
}
catch(Exception $e){
JFactory::getApplication()->enqueueMessage(
$e->getMessage(),
'error'
);
}
}
/**
* Save Item function
*
* @param integer $data var
*
* @return void
*/
function saveItem($data)
{
$check=$this->checkUser($data['seller_id']);
if (!isset($check)) {
$object=CurrencyDisplay::getInstance();
$db=$this->_db;
$params = JComponentHelper::getParams('com_marketplace');
$create_seller = trim($params->get('create_seller'));
$comm_type= trim($params->get('commision_option'));
$comm_rate= trim($params->get('commision'));
if ($data['seller_id']) {
// Create and populate an object for profile
$profile = new stdClass();
// populate object with seller data
$profile->seller_id = $data['seller_id'];
$profile->screenname = $data['name'];
$profile->first_name = $data['first_name'];
$profile->last_name = $data['last_name'];
$profile->gender = $data['title'];
$profile->phone = $data['phone_1'];
$profile->address = $data['address_1'];
$profile->companylocality = $data['city'];
$profile->companyname = $data['company'];
$profile->countrylogo = $data['countrylogo'];
$profile->state_vm = $data['virtuemart_state_id'];
$profile->zip = $data['zip'];
$profile->commission = $comm_rate;
// Check condition to activate seller or not
if ($create_seller == 1) {
$profile->is_seller = 1;
} elseif ($create_seller== 0) {
$profile->is_seller = 0;
}
// Insert the object into the seller profile table.
try{
$result = $db->insertObject(
'#__marketplace_sellerprofile', $profile
);
}
catch(Exception $e){
JFactory::getApplication()->enqueueMessage(
$e->getMessage(),
'error'
);
return false;
}
// Create and populate an object for commision
$commision = new stdClass();
$commision->commision = $comm_rate;
$commision->seller_id = $data['seller_id'];
$commision->total_sales = 0;
$commision->amount_recieved = 0;
$commision->amount_remain = 0;
$commision->amount_paid = 0;
$commision->currency = $object->_vendorCurrency;
$commision->commision_type = $comm_type;
// Insert the object into the seller commision table.
try{
$result = $db->insertObject(
'#__marketplace_commision', $commision
);
}
catch(Exception $e){
JFactory::getApplication()->enqueueMessage(
$e->getMessage(),
'error'
);
return false;
}
return $db->insertid();
}
} else {
JFactory::getApplication()->enqueueMessage(
JText::_("COM_MARKETPLACE_SAME_SELLER"),
'error'
);
return 0;
}
}
}
}