HEX
Server: Apache/2.2.15 (CentOS)
System: Linux ip-10-0-2-146.eu-west-1.compute.internal 2.6.32-754.35.1.el6.centos.plus.x86_64 #1 SMP Sat Nov 7 11:33:42 UTC 2020 x86_64
User: root (0)
PHP: 5.6.40
Disabled: NONE
Upload Files
File: /www/exchange2/exchange/classes/Model/MRetailInvestor.php
<?php
include_once('admin/classes/Model/traders_actions.php');
class Model_MRetailInvestor extends Traders_actions
{
	function showRetailInvUsers($flg='1')
	{
		$status			= $_REQUEST['status'];
		$permit			= $_REQUEST['permit'];
		$interface		= $_REQUEST['interface'];

		$sort = self::prepareSorting(array(
            1=>'retailer_name',
            't.user_id',
            4=>'t.status',
            6=>'t.temp_reg_id'
        ),'t.temp_reg_id DESC');

		$where 			= '';
		if(isset($_GET['user_id'])){

			$where 		= " WHERE r.created_by='".$_GET['user_id']."' AND r.temp_reg_id='NULL' ";

			$where1		= " WHERE t.user_type='6' ";
		}else{

			$where 		=  " WHERE r.temp_reg_id='NULL' ";

			$where1		= " WHERE t.user_type='6' ";
		}


		if($_REQUEST['status'] !=''){
			if($where !='' && $_REQUEST['status']!=11){
				$where1 .= " AND t.status = '".$_REQUEST['status']."' ";
			}elseif($_REQUEST['status'] == 11){

				$where1 .= " AND (t.status = 0 )";
				 // || t.status = 1 || t.status = 2 || t.status = 21

			}else{
				$where1 = " WHERE t.status = '".$_REQUEST['status']."' ";	
			}
		}
			

		
			


		if($_REQUEST['srchtxt'] != ''){
			$txt 		= trim($_REQUEST['srchtxt']);
			$where 		.= " AND (DATE_FORMAT(r.created_at,'%d-%m-%Y') = '".$txt."' || `first_name` LIKE '%".$txt."%' || ".
			" `last_name` LIKE '%".$txt."%' ) ";

			$where1 		.= " AND (DATE_FORMAT(t.doj,'%d-%m-%Y') = '".$txt."' || `first_name` LIKE '%".$txt."%' || ".
			" `last_name` LIKE '%".$txt."%' ) ";
		}

        $noofrec         = (isset($_GET['show']) && ctype_digit($_GET['show']))?trim($_GET['show']):CONFIG_ENTRIES_PER_PAGE;
        $start=(isset($_GET['page']))?(trim($_GET['page']-1) * $noofrec):0;
        
		$query 		= new Bin_Query();
		if($_REQUEST['org_id'] !='')
        {
			$sql		= "SELECT SQL_CALC_FOUND_ROWS a.address_country,t.*,DATE_FORMAT(t.doj,'%d-%m-%Y')  as date,CONCAT(t.first_name,t.last_name) as retailer_name,t.status as status,t.temp_reg_id as uid,'2' as flag FROM temp_registration t, ".
						" address_details a, organisation_details as d WHERE d.organisation_id = '".$_REQUEST['org_id']."' ".
						" && t.user_id = d.user_id && (t.user_type='6') AND ".
						" a.address_id=t.organization_address_id group by temp_reg_id
                         LIMIT ".$start.",".$noofrec;
		}
        elseif($_REQUEST['orgstatus']=='11')
        {
			$sql = "(SELECT SQL_CALC_FOUND_ROWS DATE_FORMAT(t.doj,'%d-%m-%Y') as date,CONCAT(t.first_name,t.last_name) as retailer_name,d.organisation_id,".
					"t.status as status,t.temp_reg_id as uid,'2' as flag,t.ref_id FROM `temp_registration` as t,organisation_details as d ".
					"$where1 AND t.user_id = d.user_id AND (t.status = 0 || t.status = 1 || t.status = 2 || t.status = 21 ) AND d.application_status = 0) ".
					" $sort 
                     LIMIT ".$start.",".$noofrec;

		}else
        {
		$sql 		= "(SELECT SQL_CALC_FOUND_ROWS DATE_FORMAT(t.doj,'%d-%m-%Y') as date,CONCAT(t.first_name,t.last_name) as retailer_name,".
					"t.status as status,t.temp_reg_id as uid,'2' as flag,t.ref_id FROM `temp_registration` as t  ".
					" $where1) ".
					" $sort 
                    LIMIT ".$start.",".$noofrec;
		}

		$query->executeQuery($sql);
        $recordSet     = $query->records;
        
        $query->executeQuery('SELECT FOUND_ROWS() as totalRecord');
        $totalRecord=$query->records[0]['totalRecord'];
         		
		if($flg == 2)
        {
			return $totalRecord;
		}
		
		return Display_DRetailInvestor::showRetailInvUsers(ceil($totalRecord/$noofrec),$recordSet);
	}

	function getFlag()
	{

		$query = new Bin_Query();
		$sql   = "SELECT ref_id FROM temp_registration WHERE temp_reg_id='".$_GET['uid']."'";
		$query->executeQuery($sql);

		$rec = $query->records[0]['ref_id'];

		if($rec==''){

			$flag = '1';
		}else{

			$flag = '2';
		}

		return $flag;
	}


	function showRetailInvUsersView($err)
	{
			$query 			= new Bin_Query();
			if($_GET['flag']=='1'){
			$sql			= "SELECT b.*,DATE_FORMAT(b.created_at, '%Y-%m-%d') as created_at FROM temp_retailer b WHERE b.retailer_id='".intval($_GET['uid'])."' LIMIT 1 ";
			}else{
	
			$sql 			= "SELECT t.*,c.work_address_id,c.birth_date,a.*,r.* FROM temp_registration t,contact_details c,address_details a,temp_retailer r WHERE t.temp_reg_id='".$_GET['uid']."' AND t.temp_reg_id=c.temp_reg_id AND c.work_address_id=a.address_id AND t.temp_reg_id=r.temp_reg_id LIMIT 1";
			}

			$query->executeQuery($sql);
			$recordSet		= $query->records[0];


		return Display_DRetailInvestor::showRetailInvUsersView($recordSet,$err);
	}


	function showRetailInvUsersActivate()
	{
        $label='';
		if($_GET['type']=='invite')
		{
            $status		= 2;
			$query		= new Bin_Query();
			$query->executeQuery("SELECT * 
                                  FROM temp_registration 
                                  WHERE temp_reg_id='".$_GET['uid']."'");
            $originator=$query->records[0];
							
			$query->executeQuery("SELECT c.work_address_id,a.address_email 
                                  FROM contact_details c,address_details a 
                                  WHERE c.temp_reg_id='".$_GET['uid']."' AND c.work_address_id=a.address_id ");
			$email 		= $query->records[0]['address_email'];
                    
            self::sendEmail(20,NULL,array(
                'firstname'=>$originator['first_name'],
                'lastname'=>$originator['last_name'],
                'clickhere'=>array('<a href="'.$_SESSION['http_base_url'].'retail/investor/register.php?id='.$originator['temp_reg_id'].'">Click here </a>','Click here '.$_SESSION['http_base_url'].'retail/investor/register.php?id='.$originator['temp_reg_id']),
                'mail_to'=>$email
            ));
					
			$_SESSION['success_invusers']    = 'User Invited Successfully';
            $label = 'RETAIL_INVESTOR_INVITE';
		}		
		elseif(in_array($_GET['type'],array('approve','reinvite')))
		{
			$status=($_GET['type']=='reinvite')?21:2;
			
            self::inviteUser($_GET['uid'],$status,'investor');
			
			if($_GET['type']=='reinvite'){
				$_SESSION['success_invusers']	= 'User Re-Approved Successfully';
                $label = 'RETAIL_INVESTOR_REINVITE';
			}else{
				$_SESSION['success_invusers']	= 'User Approved Successfully';
			}
		}
		elseif($_GET['type']=='active')
		{
            self::changeTempUserStatus(3,$_GET['uid']);
            
            $_SESSION['success_trausers']    = 'User Activated Successfully';
            $label = 'RETAIL_INVESTOR_ACTIVE';
		}
		elseif($_GET['type']=='authorise')
		{
            self::changeTempUserStatus(4,$_GET['uid']);
            
            $_SESSION['success_trausers']    = 'User Authorised Successfully';
            $label = 'RETAIL_INVESTOR_AUTHORISE';
		}
		elseif($_GET['type']=='suspend')
		{
            self::changeTempUserStatus(5,$_GET['uid']);
            
            $_SESSION['success_trausers']    = 'User Suspended Successfully';
            $label = 'RETAIL_INVESTOR_SUSPEND';
		}
        elseif($_GET['type']=='terminate')
		{
            self::changeTempUserStatus(6,$_GET['uid']);
            
            $_SESSION['success_trausers']    = 'User Terminated Successfully';
            $label = 'RETAIL_INVESTOR_TERMINATE';
		}

		$log = array();
		$log['user_id'] = $_GET['uid'];
		$log['admin_user_id'] = $_SESSION['admin'];
		$log['organisation_id'] = self::getOrganisationId($_GET['uid']);

		Model_MActivityLogs::activityLogs($label,'adminindex.php?do=retailinvusersactivate&uid='.$_GET['uid'].'&type='.$_GET['type'],$log);

		return true;
	}

	function editRetailInvUsersCountry($err)
	{
		$query = new Bin_Query();
		$sql="SELECT b.* FROM temp_retailer b WHERE b.retailer_id='".intval($_GET['uid'])."' ";
		if($query->executeQuery($sql))
		$recordSet=$query->records[0];

		$country="SELECT * FROM country_mas WHERE  country_id='".$recordSet['country']."'";
		$obj=new Bin_Query();
		$obj->executeQuery($country);
		$coun=$obj->records[0]['country_id'];
		$cur=$obj->records[0]['currency_code'];
		$country1="SELECT * FROM country_mas";
		$obj1=new Bin_Query();
		$obj1->executeQuery($country1);
		$recordSet2=$obj1->records;	

		return Display_DRetailInvestor::editRetailInvUsersCountry($coun,$recordSet2,$err);

	}

	function editRetailInvUsersCurrency()
	{
		$query = new Bin_Query();
		$sql="SELECT b.* FROM temp_retailer b WHERE b.retailer_id='".intval($_GET['uid'])."' ";
		if($query->executeQuery($sql))
		$recordSet=$query->records[0];

		$country="SELECT * FROM country_mas WHERE  country_id='".$recordSet['country']."'";
		$obj=new Bin_Query();
		$obj->executeQuery($country);
		$cur=$obj->records[0]['currency_code'];

		return $cur;
	}

	function editRetailInvUsersPeriod($err)
	{
		return Display_DRetailInvestor::editRetailInvUsersPeriod(0,0,$err);
	}

	function editRetailInvUsers($country,$currency,$month,$year,$err)
	{

		$query = new Bin_Query();
		$sql="SELECT b.* FROM temp_retailer b WHERE b.retailer_id='".intval($_GET['uid'])."' ";
		if($query->executeQuery($sql))
		$recordSet=$query->records[0];	

		return Display_DRetailInvestor::editRetailInvUsers($recordSet,$currency,$country,$month,$year,$err);
	}

	function updateRetailInvUsers()
	{
			$sort 			= explode("-",$_POST['sort_code']);

			$sort_code 		= $sort[0].$sort[1].$sort[2];

			$query2	= new Bin_Query();
			if($_GET['flag']=='1'){
			$sql2	= "UPDATE temp_retailer SET 
					first_name='".$_POST['first_name']."',
					middle_name='".$_POST['middle_name']."',
					last_name='".$_POST['last_name']."',
					email='".$_POST['email']."',
					dob='".$_POST['dob']."',
					address_one='".$_POST['address_one']."',
					address_two='".$_POST['address_two']."',
					postal_code='".$_POST['postal_code']."' ,
					city = '".$_POST['city']."' ,
					state = '".$_POST['state']."' ,
					country =".$_POST['country']." ,
					home_phone_country =".$_POST['home_phone_country']." ,
					home_phone_area= '".$_POST['home_phone_area']."',
					home_phone='".$_POST['home_phone']."',
					office_phone_country='".$_POST['office_phone_country']."',
					office_phone_area='".$_POST['office_phone_area']."',
					office_phone='".$_POST['office_phone']."',
					mobile_phone_country='".$_POST['mobile_phone_country']."',
					mobile_phone_code='".$_POST['mobile_phone_code']."',
					mobile_phone='".$_POST['mobile_phone']."',
					quote_rate='".$_POST['quote_rate']."'

					WHERE 
					retailer_id='".intval($_GET['uid'])."' ";
				}else{

			$sql2	= "UPDATE temp_retailer SET 
					first_name='".$_POST['first_name']."',
					middle_name='".$_POST['middle_name']."',
					last_name='".$_POST['last_name']."',
					email='".$_POST['email']."',
					dob='".$_POST['dob']."',
					address_one='".$_POST['address_one']."',
					address_two='".$_POST['address_two']."',
					postal_code='".$_POST['postal_code']."' ,
					city = '".$_POST['city']."' ,
					state = '".$_POST['state']."' ,
					country =".$_POST['country']." ,
					home_phone_country =".$_POST['home_phone_country']." ,
					home_phone_area= '".$_POST['home_phone_area']."',
					home_phone='".$_POST['home_phone']."',
					office_phone_country='".$_POST['office_phone_country']."',
					office_phone_area='".$_POST['office_phone_area']."',
					office_phone='".$_POST['office_phone']."',
					mobile_phone_country='".$_POST['mobile_phone_country']."',
					mobile_phone_code='".$_POST['mobile_phone_code']."',
					mobile_phone='".$_POST['mobile_phone']."'

					WHERE 
					temp_reg_id='".intval($_GET['uid'])."' ";

				}

			if($query2->updateQuery($sql2))
			{
				if($_GET['flag']=='2'){

				$qry	= new Bin_Query();
				$sql	= "SELECT r.*,t.* FROM temp_retailer r,temp_registration t WHERE r.temp_reg_id='".$_GET['uid']."' AND r.temp_reg_id=t.temp_reg_id LIMIT 1";
				$qry->executeQuery($sql);
				$temp_reg_id	= $qry->records[0]['temp_reg_id'];

				if($qry->totrows>0){
				
					$qry11		= new Bin_Query();
					$sql11		= "UPDATE temp_registration SET
							first_name='".$_POST['first_name']."',
							middle_name='".$_POST['middle_name']."',
							last_name='".$_POST['last_name']."'
							WHERE 
							temp_reg_id='".$temp_reg_id."'";
					$qry11->updateQuery($sql11);

			$query 		= new Bin_Query();
			$sql		="SELECT a.*,b.* FROM temp_registration b,address_details a WHERE temp_reg_id='".$temp_reg_id."' AND (b.user_type='6')  AND a.address_id=b.organization_address_id";
			$query->executeQuery($sql);
			$records	= $query->records;
			$addressid	= $records[0]['organization_address_id'];
			$user_id 	= $records[0]['user_id'];
			
			$query1 	= new Bin_Query();
			$sql1		= "UPDATE address_details SET 
						address_line_one='".$_POST['address_one']."',
						address_line_two='".$_POST['address_two']."',
						address_city='".$_POST['city']."',
						address_state='".$_POST['state']."',
						address_country='".$_POST['country']."',
						address_zipcode='".$_POST['postal_code']."',
						address_phone_country='".$_POST['home_phone_country']."',
						address_phone_code='".$_POST['home_phone_area']."',
						address_phone='".$_POST['home_phone']."',
						address_mobile_country='".$_POST['office_phone_country']."',
						address_mobile_code='".$_POST['office_phone_area']."',
						address_mobile='".$_POST['office_phone']."',
						address_fax_country='".$_POST['mobile_phone_country']."',
						address_fax_code='".$_POST['mobile_phone_code']."',
						address_fax='".$_POST['mobile_phone']."',
						address_email='".$_POST['email']."' 
						WHERE address_id='".$addressid."'";
						if($query1->updateQuery($sql1))
						{
							$sql	="UPDATE `contact_details` 
									SET 
										`first_name` 				= '".$_POST['first_name']."',
										`last_name` 				= '".$_POST['last_name']."'
										
									WHERE 
										`temp_reg_id` 				= '".$temp_reg_id."' LIMIT 1 ;";
							$query 		= new Bin_Query();
							$query->updateQuery($sql);
						}
	
					}

				}

			}

			

			$_SESSION['success_invusers']='User Updated Successfully';
			
			$url = '?do=retailinvusersedit&uid='.$_GET['uid'];
	
			if($_REQUEST['pg'] !=''){
				$url .='&pg='.$_GET['pg'];
			}else if($_REQUEST['page'] !=''){
				$url .='&page='.$_GET['page'];
			}

			header('Location: '.$url);
			exit;

	}

	function retailInvUsersDelete()
	{
        self::changeTempUserStatus(6,$_GET['uid']);

		$log = array();
		$log['user_id'] = $_GET['uid'];
		$log['admin_user_id'] = $_SESSION['admin'];
		$log['organisation_id'] = self::getTempOrganisationId($_GET['uid']);

		Model_MActivityLogs::activityLogs('RETAIL_INVESTOR_TERMINATE','adminindex.php?do=retailinvusersdelete&uid='.$_GET['uid'],$log);

		$_SESSION['success_invusers']="Terminated Successfully";
	}
	
	function editRetailUsersCountry($err)
	{
		$query = new Bin_Query();
		$sql="SELECT t.temp_reg_id,c.work_address_id,a.address_country FROM temp_registration t,contact_details c,address_details a WHERE t.temp_reg_id='".intval($_GET['uid'])."' AND t.temp_reg_id=c.temp_reg_id AND c.work_address_id=a.address_id ";
		if($query->executeQuery($sql))
		$recordSet=$query->records[0];


		$country="SELECT * FROM country_mas WHERE  country_id='".$recordSet['address_country']."'";
		$obj=new Bin_Query();
		$obj->executeQuery($country);
		$coun=$obj->records[0]['country_id'];
		$country1="SELECT * FROM country_mas";
		$obj1=new Bin_Query();
		$obj1->executeQuery($country1);
		$recordSet2=$obj1->records;	

		return Display_DRetailInvestor::editRetailUsersCountry($coun,$recordSet2,$err);
	}

	function editRetailUsersCurrency()
	{
		$query = new Bin_Query();
		$sql="SELECT t.*,c.work_address_id,a.address_country,r.* FROM temp_registration t,contact_details c,address_details a,temp_retailer r WHERE t.temp_reg_id='".intval($_GET['uid'])."' AND t.temp_reg_id=c.temp_reg_id AND c.work_address_id=a.address_id AND t.temp_reg_id=r.temp_reg_id";
		if($query->executeQuery($sql))
		$recordSet=$query->records[0];

		$country="SELECT * FROM country_mas WHERE  country_id='".$recordSet['address_country']."'";
		$obj=new Bin_Query();
		$obj->executeQuery($country);
		$cur=$obj->records[0]['currency_code'];

		return $cur;
	}

	function editRetailUsersPeriod($err)
	{
		return Display_DRetailInvestor::editRetailInvUsersPeriod(0,0,$err);
	}


	function editRetailUsers($country,$currency,$year,$err)
	{

		$query = new Bin_Query();
		$sql="SELECT t.*,c.work_address_id,c.birth_date,a.*,r.* FROM temp_registration t,contact_details c,address_details a,temp_retailer r WHERE t.temp_reg_id='".intval($_GET['uid'])."' AND t.temp_reg_id=c.temp_reg_id AND c.work_address_id=a.address_id AND t.temp_reg_id=r.temp_reg_id LIMIT 1";
		$query->executeQuery($sql);
		$recordSet=$query->records[0];	

		return Display_DRetailInvestor::editRetailUsers($recordSet,$country,$currency,$year,$err);
	}

	function updateRetailUsers()
	{
			$sort 			= explode("-",$_POST['sort_code']);

			$sort_code 		= $sort[0].$sort[1].$sort[2];
			$temp_reg_id 	= $_GET['uid'];				

			$query2	= new Bin_Query();
			$sql2	= "UPDATE temp_retailer SET 
					quote_rate='".$_POST['quote_rate']."'
					WHERE 
					temp_reg_id='".intval($_GET['uid'])."' ";

			$query2->updateQuery($sql2);


				$qry	= new Bin_Query();
				$sql	= "SELECT r.*,t.* FROM temp_retailer r,temp_registration t WHERE r.temp_reg_id='".$_GET['uid']."' AND r.temp_reg_id=t.temp_reg_id LIMIT 1";
				$qry->executeQuery($sql);
				$temp_reg_id	= $qry->records[0]['temp_reg_id'];
				$user_id 		= $qry->records[0]['user_id'];

					$qry11		= new Bin_Query();
					$sql11		= "UPDATE temp_registration SET
							username='".$_POST['username']."',
							password='".$_POST['password']."',
							first_name='".$_POST['first_name']."',
							middle_name='".$_POST['middle_name']."',
							last_name='".$_POST['last_name']."',
							secret_question_id='".$_POST['question']."',
							secret_answer='".$_POST['answer']."',
							organization_name='".addslashes($_POST['organization_name'])."',
							status = '".$_POST['status']."',
							confirm = '".$_POST['confirm']."'
							WHERE 
							temp_reg_id='".$temp_reg_id."'";
					$qry11->updateQuery($sql11);

				if($user_id!='')
                {
					self::updateUserLogin($_POST['username'],$_POST['password'],$user_id);
				}

 
			$query 		= new Bin_Query();
			$sql		="SELECT a.*,b.* FROM temp_registration b,address_details a WHERE temp_reg_id='".$temp_reg_id."' AND (b.user_type='6')  AND a.address_id=b.organization_address_id";
			$query->executeQuery($sql);
			$records	= $query->records;
			$addressid	= $records[0]['organization_address_id'];

			if($addressid == ''){

				$qry 	= new Bin_Query();
				$sql 	= "SELECT t.temp_reg_id,c.work_address_id,a.address_id FROM ".
						"temp_registration t,contact_details c,address_details a WHERE ".
						"t.temp_reg_id='".$temp_reg_id."' AND t.temp_reg_id=c.temp_reg_id AND ".
						" c.work_address_id=a.address_id ";
				$qry->executeQuery($sql);
				$addressid=$qry->records[0]['work_address_id'];
			}


			$query1 	= new Bin_Query();
			$sql1		= "UPDATE address_details SET 
						address_line_one='".$_POST['address_line_one']."',
						address_line_two='".$_POST['address_line_two']."',
						address_city='".$_POST['address_city']."',
						address_state='".$_POST['address_state']."',
						address_country='".$_POST['address_country']."',
						address_zipcode='".$_POST['address_zipcode']."',
						address_phone_country='".$_POST['address_phone_country']."',
						address_phone_code='".$_POST['address_phone_code']."',
						address_phone='".$_POST['address_phone']."',
						address_mobile_country='".$_POST['address_mobile_country']."',
						address_mobile_code='".$_POST['address_mobile_code']."',
						address_mobile='".$_POST['address_mobile']."',
						address_fax_country='".$_POST['address_fax_country']."',
						address_fax_code='".$_POST['address_fax_code']."',
						address_fax='".$_POST['address_fax']."',
						address_email='".$_POST['address_email']."' 
						WHERE address_id='".$addressid."'";
						if($query1->updateQuery($sql1))
						{
							$sql	="UPDATE `contact_details` 
									SET 
										`first_name` 				= '".$_POST['first_name']."',
										`last_name` 				= '".$_POST['last_name']."',
										`birth_date`				= '".$_POST['dob']."'
										
									WHERE 
										`temp_reg_id` 				= '".$temp_reg_id."' LIMIT 1 ;";
							$query 		= new Bin_Query();
							$query->updateQuery($sql);


							$qry20		= new Bin_Query();
							$sql20		= "UPDATE address_details SET ".
											" `address_line_one`='".$_POST['baddress_line_one']."', ".
											" `address_line_two`='".$_POST['baddress_line_two']."', ".
											" `address_city`='".$_POST['baddress_city']."', ".
											" `address_state`='".$_POST['baddress_state']."', ".
											" `address_country`='".$_POST['bank_country']."', ".
											" `address_phone_country`='".$_POST['baddress_phone_country']."', ".
											" `address_phone_code`='".$_POST['baddress_phone_code']."', ".
											" `address_phone`='".$_POST['baddress_phone']."', ".
											" `address_mobile_country`='".$_POST['baddress_mobile_country']."', ".
											" `address_mobile_code`='".$_POST['baddress_mobile_code']."', ".
											" `address_mobile`='".$_POST['address_mobile']."', ".
											" `address_fax_country`='".$_POST['address_fax_country']."', ".
											" `address_fax_code`='".$_POST['address_fax_code']."', ".
											" `address_fax`='".$_POST['address_fax']."' ".

										   " WHERE address_id='".$_POST['baddress_id']."' ";

							$qry20->updateQuery($sql20);


						if($_POST['bank_name'] == 0 || !is_numeric($_POST['bank_name'])) {

							if(!is_numeric($_POST['bank_name'])){
								$new 		= $_POST['bank_name'];
							}else{
								$new 		= $_POST['bank_new'];
							}
								$qry21 		= new Bin_Query();
								$sql21 		= "INSERT INTO bank_details (bank_name,bank_country,modified_at, modified_by,bank_status)VALUES('".$new."','".$_POST['bank_country']."',NOW(),'','0')";
								if($qry21->updateQuery($sql21)){

								$_POST['bank_name']=$qry21->insertid;

								}
							}


							$indexqry = new Bin_Query();
							$indexsql = " UPDATE `organisation_bank_details` SET address_id='".$_POST['baddress_id']."',bank_id='".$_POST['bank_name']."' WHERE organisation_bank_id='".$_POST['organisation_bank_id']."' ";
							$indexqry->updateQuery($indexsql);

							$query22	= new Bin_Query();
							$sql22		= " UPDATE organisation_bank_account_details SET ".
											" account_name='".$_POST['account_name']."',  ".
											" account_no='".$_POST['account_no']."',  ".
											" sort_code='".$sort_code."',  ".
											" iban_code='".$_POST['iban_code']."',  ".
											" swift_code='".$_POST['swift_code']."'  ".
											" WHERE organisation_bank_id='".$_POST['organisation_bank_id']."' ";


							$query22->updateQuery($sql22);


							$qry23		= new Bin_Query();
							$sql23		= "UPDATE contact_details SET ".
											" bank_id='".$_POST['bank_name']."',".
											" first_name='".$_POST['bfirst_name']."', ".
											" last_name='".$_POST['blast_name']."' ".
											" WHERE contact_id='".$_POST['cont_id']."' ";

							$qry23->updateQuery($sql23);


							$qry24		= new Bin_Query();
							$sql24		= " UPDATE address_details SET ".							
											" address_phone_country='".$_POST['baddress_phone_country']."', ".
											" address_phone_code='".$_POST['baddress_phone_code']."', ".
											" address_phone='".$_POST['baddress_phone']."' ".
											" WHERE address_id='".$_POST['cont_address_id']."' ";

							$qry24->updateQuery($sql24);

						}
	

				$_SESSION['success_invusers']='User Updated Successfully';
				
				$url = '?do=retailusersedit&uid='.$_GET['uid'].'&flag='.$_GET['flag'];

				if($_REQUEST['pg'] !=''){
					$url .='&pg='.$_GET['pg'];
				}else if($_REQUEST['page'] !=''){
					$url .='&page='.$_GET['page'];
				}

				$log = array();
		        $log['admin_user_id']   = $_SESSION['admin'];

		        if($user_id!=''){

		        	$log['user_id']      	= $user_id;
		    	}else{
		    		$log['element_id'] 		= $temp_reg_id;
		    	}

		        Model_MActivityLogs::activityLogs('EDIT_RETAIL_INV_USER',$url,$log);

				header('Location: '.$url);
				exit;
	}

	function getOrganisationList($errval)
	{
		$query 			= new Bin_Query();
		$sql 			= "SELECT u.username,u.user_id,org.organisation_id,t.first_name,t.last_name, ".
							" org.organisation_name FROM user_login as u,temp_registration t, ".
							" organisation_details as org ".
							" WHERE u.user_id=org.user_id AND u.user_id=t.user_id AND u.user_type='5' AND u.user_status='1' ".
							" ";
		$query->executeQuery($sql);
		$orgrecords 	= $query->records;

		return Display_DRetailInvestor::getOrganisationList($orgrecords,$errval);
	}

	function getTrusteeOrgList($errval)
	{
		$query 			= new Bin_Query();
		$sql 			= "SELECT org.organisation_id, ".
							" org.organisation_name FROM organisation_details as org ".
							" WHERE org.type='6' AND org.organisation_status!='8' ".
							" ";
		$query->executeQuery($sql);
		$orgrecords 	= $query->records;

		return Display_DRetailInvestor::getTrusteeOrgList($orgrecords,$errval);
	}

	function saveNewRetailInvestor()
	{
			$email=$_POST['email'];
			$fname=$_POST['first_name'];
			$mname=$_POST['middle_name'];
			$lname=$_POST['last_name'];
			$dob=$_POST['dob'];
			$addr1=$_POST['address_one'];
			$addr2=$_POST['address_two'];
			$pcode=$_POST['postal_code'];
			$city=$_POST['city'];
			$state=$_POST['state'];
			$country=$_POST['country'];
			$homeph=$_POST['hc_code'].$_POST['ha_code'].$_POST['hph_code'];
			$offph=$_POST['oc_code'].$_POST['oa_code'].$_POST['oph_code'];
			$mobph=$_POST['mc_code'].$_POST['ma_code'].$_POST['mph_code'];


			$dcnt =  count($_FILES);
			$user_id		= $_SESSION['user']['userid'];
			$uploadfile 		= array("p_passport","b_bill","signed_rpa");
			$i=0;

			foreach($uploadfile as $key){

				//Upload PDF FIle
				$file 		= $key;
				if($_FILES[$key]['tmp_name'] !=''){

					$exp 			= explode('_',$key);
					$name 			= $fname."_".$user_id;
					$dir 			= "../../documents/retail_investor/".$name;//Creating Folder W.r.t Debtor Name and Trader Id

					if(!is_dir($dir)){
						mkdir($dir, 0777);//Folder Path assigning
					}
					chmod($dir, 0777);  //Folder Permission assigning
					
					
					//File Path assigning
					$path 			= pathinfo($_FILES[$file]["name"]);
					if($exp[0] == 'p') $exp[1] = "Passport"; if($exp[0] == 'b') $exp[1] = "Bill";
					if($exp[0] == 'signed') $exp[1] = "SignedRPA";

					$file_name 		= $name."_".$exp[1]."_".time().".".$path['extension'];
					$dir_path 		= $dir."/".$file_name;

					//Uploading File
					if(!empty($_FILES[$file]["tmp_name"]))
					{
						move_uploaded_file($_FILES[$file]["tmp_name"],$dir_path);
					}

					chmod($dir."/".$file_name, 0777); //File Permission assigning
					$filepath[$key] = "/documents/retail_investor/".$name."/".$file_name;

				}	
			}


			$insqry  	= new Bin_Query();
			$inssql 	= "INSERT INTO temp_registration (first_name,middle_name,last_name,user_type,doj,ipaddress,status,permission,interface,dp_type,dp_organisation,confirm_type) VALUES ('".trim($fname)."','".trim($mname)."','".trim($lname)."','6','".date("Y-m-d")."','".$_SERVER['REMOTE_ADDR']."','0','1','2','".$_POST['dp_type']."','".$_POST['dp_organisation']."','".$_POST['confirm_type']."') ";
			$insqry->updateQuery($inssql);
			$tempid 	= $insqry->insertid;


			$addqry 	= new Bin_Query();
			$addsql 	= "INSERT INTO address_details (address_line_one,address_line_two,address_city,address_state,address_country,address_zipcode,address_phone_country,address_phone_code,address_phone,address_mobile_country,address_mobile_code,address_mobile,address_fax_country,address_fax_code,address_fax,address_email,modified_at) VALUES ('".trim($addr1)."','".trim($addr2)."','".trim($city)."','".trim($state)."','".trim($country)."','".trim($pcode)."','".$_POST['hc_code']."','".$_POST['ha_code']."','".$_POST['hph_code']."','".$_POST['mc_code']."','".$_POST['ma_code']."','".$_POST['mph_code']."','".$_POST['oc_code']."','".$_POST['oa_code']."','".$_POST['oph_code']."','".trim($email)."',NOW()) ";
			$addqry->updateQuery($addsql);
			$wrkaddr 	= $addqry->insertid;


			$query 		= new Bin_Query();
			$query->updateQuery("INSERT INTO `contact_details` (temp_reg_id,first_name,middle_name,last_name,work_address_id,home_address_id,hq_address_id,birth_date) 
                                 VALUES ('".$tempid."','".trim($fname)."','".trim($mname)."','".trim($lname)."','".$wrkaddr."','".self::addEmptyAddress()."','".self::addEmptyAddress()."','".trim($dob)."')");


			$retqry 	= new Bin_Query();
			$retsql 	= "INSERT INTO temp_retailer (temp_reg_id,pasport,bill,signed_rpa,created_by,created_at,quote_rate) VALUES ('".$tempid."','".$filepath['p_passport']."','".$filepath['b_bill']."','".$filepath['signed_rpa']."','".$_SESSION['user']['userid']."',NOW(),'".$_POST['quote_rate']."')";

			if($retqry->updateQuery($retsql)){

				$invqry = new Bin_Query();
				$invsql = "INSERT INTO `investor_relation` (`investor_id`,`intermediary_id`) VALUES ('".$tempid."','".$_POST['intermed_org']."')";
				$invqry->updateQuery($invsql);


			if($_POST['confirm_type']!='1')
            {
                self::sendEmail(20,NULL,array(
                   'firstname'=>$fname,
                   'lastname'=>$lname,
                   'clickhere'=>array('<a href="'.$_SESSION['http_base_url'].'retail/investor/register.php?id='.$tempid.'">Click here </a>','Click here '.$_SESSION['http_base_url'].'retail/investor/register.php?id='.$tempid),
                   'mail_to'=>$email
                ));

					$log = array();
			        $log['admin_user_id']   = $_SESSION['admin'];
		    		$log['element_id'] 		= $tempid; 	//temp_reg_id

			        Model_MActivityLogs::activityLogs('ADD_RETAIL_INV_USER','adminindex.php?do=addnewretailinv',$log);				

					$_SESSION['message']='User Added Successfully';

				header('Location: adminindex.php?do=addnewretailinv');
				exit;
				}
				else{

				header('Location: adminindex.php?do=retailinvestorreg&id='.$tempid);
				exit;

				}

		}else{
				$_SESSION['message']='Try Again';
				header('Location: adminindex.php?do=addnewretailinv');
				exit;
		}
	}

	function getCurrency($id){
 
		$query			= new Bin_Query();
		$sql 			= "SELECT * FROM `country_mas` where country_id ='".$id."' limit 1";
		$query->executeQuery($sql);
		$currency 		= $query->records;

		return $currency;
	}

	function getBankRecords()
	{
	
		$qry13		= new Bin_Query();
		$sql13		= "SELECT b.temp_reg_id,c.*,bank.*,acc.*,d.*,a.* FROM temp_registration b,contact_details c,organisation_bank_details bank,organisation_bank_account_details acc,bank_details d,address_details a WHERE b.temp_reg_id='".$_GET['uid']."' AND b.temp_reg_id=c.temp_reg_id AND c.contact_id=bank.contact_id AND acc.status=0 AND bank.organisation_bank_id=acc.organisation_bank_id AND bank.bank_id=d.bank_id AND bank.address_id=a.address_id LIMIT 1";
		$qry13->executeQuery($sql13);
		$bankrecords[0]	= $qry13->records[0];

		return $bankrecords;

	}

	function showRetailPreferences($flg='1')
	{
		$sort = self::prepareSorting(array(
            'a.organisation_name',
            'a.organisation_reference_id',
            'a.organisation_risk',
            'nacec',
            'naced',
            'c.currency_code',
            'avg_invoice_predicted_annum',
            'avg_revenue_predicted_annum',
            'investors',
            'debtors',
            'trades'
        ),'a.organisation_name asc');
	
		if($_REQUEST['srchtxt'] !='')
        {
			$txt 		= trim($_REQUEST['srchtxt']);
			$where 		.=" AND ( a.organisation_name LIKE '%".$txt."%' || a.organisation_reference_id LIKE '".$txt."' || ".
						" a.organisation_risk LIKE '".$txt."' || a.organisation_limit LIKE '".$txt."' || ".
						" c.currency_code LIKE '%".$txt."%' || c.currency_code LIKE '%".$txt."%') ";	
		}
		
		$noofrec = (isset($_GET['show']) && ctype_digit($_GET['show']))?trim($_GET['show']):CONFIG_ENTRIES_PER_PAGE;
        $start=(isset($_GET['page']))?(trim($_GET['page']-1) * $noofrec):0;
        
		$query 			= new Bin_Query();
		$sql			= "SELECT a.*,b.*, a.nace_id as nacec , a.nace_group_id as naced ,c.currency_code,c.currency_code ".
						"  FROM organisation_details a, currencies as c, ".
						" temp_registration b  WHERE b.user_type=6 && a.user_id=b.user_id AND ".
						" c.currency_id = b.currency_id $where $sort 
                         LIMIT ".$start.",".$noofrec;
		
		$query->executeQuery($sql);
		$recordSet = $query->records;
        
        $query->executeQuery('SELECT FOUND_ROWS() as totalRecord');
        $totalRecord=$query->records[0]['totalRecord'];
			
		if($flg == 2)
        {
			return $totalRecord;
		}

		for($i=0;$i<count($recordSet);$i++){
			
			$qry		= new Bin_Query();
			$sql		= "SELECT t.user_id, t.temp_reg_id FROM investor_relation a, temp_registration as t ".
						" WHERE a.intermediary_id='".$recordSet[$i]['user_id']."' && t.temp_reg_id = a.investor_id && t.status < 7 GROUP BY a.investor_id";
			$qry->executeQuery($sql);
			$investors 	= $qry->records;

			$invwhere	= '';		
			if(count($investors) > 0){
				
				foreach($investors as $keys){
					$org_where[] = " inv.user_id = '".$keys['user_id']."' ";
				}
				$invwhere .= "  (".implode(" || ",$org_where)." ) AND ";
			}


			$qry 			= new Bin_Query();
			$sql 		= " SELECT COUNT(retailer_id) as USER  FROM temp_retailer WHERE created_by = '".$recordSet[$i]['user_id']."'";
			$qry->executeQuery($sql);
			$usr = $qry->records[0]['USER'];
			$recordSet[$i]['user'] = $usr;

			$query61	= new Bin_Query();
			$sql61 		= "SELECT org.organisation_id FROM ".
						" organisation_details as org, temp_registration as inv ".
						" WHERE $invwhere org.user_id = inv.user_id AND inv.user_type='2' ".
						" GROUP BY org.user_id";
			$query61->executeQuery($sql61);
			$invstor 	= $query61->records;
			$recordSet[$i]['investors'] = count($invstor);



			$qry11	= new Bin_Query();
			$sql11 	= "SELECT  dm.*,c.currency_code,c.currency_code , n.nace_code, n.nace_group FROM ".
					" `debtors_master` as dm, currencies as c, invoice_master as m, invoice_bidding as inv , categories as n, ".
					" address_details as a, debtors_detail as d  WHERE ".
					" $invwhere m.invoice_id = inv.invoice_id && m.draft = 0 && d.debtor_id = m.debtor_id && ".
					" dm.debtor_master_id = d.parent_id ".
					" && a.address_id = dm.debtor_address_id && c.currency_id = d.currency_id && n.nace_id = dm.nace_id ".
					" GROUP BY d.parent_id";
			$qry11->executeQuery($sql11);
			$deb	= $qry11->records;
			$recordSet[$i]['debtors'] = count($deb);

			if($invwhere !=''){
				$query61	= new Bin_Query();
				$sql61 		= "SELECT inv.invoice_id FROM ".
							" invoice_bidding as inv, invoice_master as m WHERE ".
							" $invwhere m.invoice_id = inv.invoice_id GROUP BY inv.invoice_id";
				
				$query61->executeQuery($sql61);
				$invs1 = $query61->records;	
				$recordSet[$i]['trades'] = count($invs1);
			}else{
				$recordSet[$i]['trades'] = 0;
			}
			
			
			$query1=new Bin_Query();
			$sql1 = "SELECT nace_group_id, nace_group_code 	FROM `category_group` 
							where nace_group_id = '".$recordSet[$i]['naced']."' limit 1";
			$query1->executeQuery($sql1);
			$nace_group_id = $query1->records;
			
			$query2=new Bin_Query();
			$sql2 = "SELECT nace_id, nace_code FROM `categories` WHERE nace_id = '".$recordSet[$i]['nacec']."' limit 1";
			$query2->executeQuery($sql2);
			$nace_id = $query2->records;
			
			$recordSet[$i]['nacec'] = $nace_id[0]['nace_code'];
			
			$recordSet[$i]['naced'] =  str_replace("Section","",$nace_group_id[0]['nace_group_code']).substr($nace_id[0]['nace_code'],0,2);	
			
			
			$sql1 = "SELECT inv.*, m.sales_type, m.face_value FROM invoice_master as m, invoice_closed as inv  WHERE ".str_replace("user_id", "won_by", $invwhere)." m.invoice_id = inv.invoice_id group by m.invoice_id";
			$query1->executeQuery($sql1);
			$avg = $query1->records;
			if(count($avg) > 0){
				$total 					= 0;
				foreach($avg as $keys){
					if($keys['sales_type'] == '1'){
						$total 			= $total + $keys['min_advance'];
						
					}else{
						$max 			= $keys['max_thirty_reserve'];
						$percent 		= $keys['face_value'] - ($keys['face_value'] * ($max/100));
						$total 			= $total + $percent;
					}
				}
				$average						= $total / count($avg);
				
				$recordSet[$i]['avg_invoice_predicted_annum'] = number_format($average, 0, '', ',');
				$recordSet[$i]['avg_revenue_predicted_annum'] = number_format($total, 0, '', ',');
				
			}else{
				$recordSet[$i]['avg_invoice_predicted_annum'] = 0;
				$recordSet[$i]['avg_revenue_predicted_annum'] = 0;
			}
		}

		return Display_DRetailInvestor::showRetailPreferences(ceil($totalRecord/$noofrec),$recordSet);
	}

	function showRetailInvViewAppl()
	{
		$query = new Bin_Query();
		$sql="SELECT * FROM organisation_details  WHERE organisation_id='".intval($_GET['aid'])."' ";
		if($query->executeQuery($sql))
		$recordSet=$query->records[0];	
		
		
		$query4=new Bin_Query();
		$sql4 = "SELECT * FROM `currencies` WHERE currency_id = '".$recordSet['currency_id']."' LIMIT 1 ";
		$query4->executeQuery($sql4);
		$currency = $query4->records;
		
		
		$recordSet['currency_code'] = $currency[0]['currency_code'];
		$recordSet['currency_code'] = $currency[0]['currency_code'];
	
		$query12 = new Bin_Query();
		$sql12="SELECT *  FROM debtor_relation WHERE organisation_id='".$recordSet['organisation_id']."'";
		$query12->executeQuery($sql12);
		$debtors = $query12->records;
		
		$recordSet['debtors'] = count($debtors);
		
			
		$query1 = new Bin_Query();
		$sql1 = "SELECT inv.*, m.sales_type, m.face_value FROM invoice_master as m, invoice_closed as inv  WHERE inv.won_by = '".$recordSet['user_id']."' && m.invoice_id = inv.invoice_id group by m.invoice_id";
		$query1->executeQuery($sql1);
		$avg = $query1->records;
		if(count($avg) > 0){
			$total 					= 0;
			foreach($avg as $keys){
				if($keys['sales_type'] == '1'){
					$total 			= $total + $keys['min_advance'];
					
				}else{
					$max 			= $keys['max_thirty_reserve'];
					$percent 		= $keys['face_value'] - ($keys['face_value'] * ($max/100));
					$total 			= $total + $percent;
				}
			}
			$average						= $total / count($avg);
			
			$recordSet['avg_invoice_predicted_annum'] = number_format($average, 0, '', ',');
			$recordSet['avg_revenue_predicted_annum'] = number_format($total, 0, '', ',');
			
		}else{
			$recordSet['avg_invoice_predicted_annum'] = 0;
			$recordSet['avg_revenue_predicted_annum'] = 0;
		}
		
				
		//Open Status 
		
		$query21=new Bin_Query();
		$sql21 = "SELECT d.parent_id FROM invoice_master as m, invoice_bidding as inv, debtors_detail as d  WHERE inv.user_id = '".$recordSet['user_id']."' && m.invoice_id = inv.invoice_id && d.debtor_id = m.debtor_id  group by d.parent_id";
		
		$query21->executeQuery($sql21);
		$debtors = $query21->records;
		$recordSet['debtors'] = count($debtors);	
		
		$query31=new Bin_Query();
		$sql31 = "SELECT org.organisation_id FROM invoice_master as m, debtor_relation as r, invoice_bidding as inv , organisation_details as org WHERE inv.user_id = '".$recordSet['user_id']."' && m.invoice_id = inv.invoice_id && r.debtor_id = m.debtor_id && org.organisation_id = r.organisation_id  group by org.organisation_id ";
		
		$query31->executeQuery($sql31);
		$traders = $query31->records;
		$recordSet['traders'] = count($traders);

		$query61=new Bin_Query();
		$sql61 = "SELECT b.invoice_id FROM invoice_bidding as b WHERE ".
				" b.user_id = '".$recordSet['user_id']."' group by b.invoice_id";
		$query61->executeQuery($sql61);
		$invs1 = $query61->records;	
		$recordSet['trades'] = count($invs1);
		
		return Display_DRetailInvestor::showRetailInvViewAppl($recordSet);

	}

	function showRetailInvEditAppl()
	{
		$query = new Bin_Query();
		$sql="SELECT * FROM organisation_details WHERE organisation_id='".intval($_GET['aid'])."' ";
		if($query->executeQuery($sql))
		$recordSet=$query->records[0];	
		return Display_DRetailInvestor::showRetailInvEditAppl($recordSet);
	}

	function setRetailInvRate(){

		if($_GET['type']=='approve'){

			$label = 'RETAILINV_RATE_APPROVE';
			$rate_status = '1';
			$message = 'approved';
		}else{

			$label = 'RETAILINV_RATE_CONFIRM';
			$rate_status = '2';
			$message = 'confirmed';
		}

		$query 		= new Bin_Query();
		$sql 		= "UPDATE `temp_retailer` SET quote_rate='".$_GET['rate']."',rate_status='".$rate_status."' WHERE temp_reg_id='".$_GET['uid']."' ";
		$query->updateQuery($sql);
        
        $organisation_id=self::getOrganisationId($_GET['uid']);
            
		if($organisation_id!=''){

			$query 		= new Bin_Query();
			$sql 		= "UPDATE `organisation_details` SET agreed_rate='".$_GET['rate']."' WHERE organisation_id='".$organisation_id."' ";
			$query->updateQuery($sql);
		}


		$log = array();
		$log['user_id'] = $_GET['uid'];
		$log['admin_user_id'] = $_SESSION['admin'];
		$log['organisation_id'] = $organisation_id;

		

		Model_MActivityLogs::activityLogs($label,'adminindex.php?do=retailinvusersview&uid='.$_GET['uid'],$log);

		$_SESSION['success_invusers']='Rate has been '.$message.' successfully';

	}

	function saveRetailPensionBank()
	{

		$sort 			= explode("-",$_POST['sort_code']);

		$sort_code 		= $sort[0].$sort[1].$sort[2];

		$oname 				= $_POST['first_name'].$_REQUEST['uid'];
		$country 			= $_POST['country'];
		
		$qry 		= new Bin_Query();
      	$sql 		= "SELECT b.* FROM bank_accounts b WHERE b.temp_reg_id='".$_REQUEST['uid']."' ";
      	$qry->executeQuery($sql);
      	$records 	= $qry->records[0];

      	if(count($records)>0){

      		$query 				= new Bin_Query();
      		$sql 				= "UPDATE `bank_accounts` SET account_type='6',benificiary_account='".$_POST['account_no']."',benificiary_name='".$_POST['account_name']."',iban='".$_POST['iban_code']."',swift_code='".$_POST['swift_code']."',sort_code='".$sort_code."' WHERE temp_reg_id='".$_REQUEST['uid']."' ";
      		$query->updateQuery($sql);

      		$message = 'updated';

      	}else{

			$query 					= new Bin_Query();
			$sql					= "INSERT INTO `bank_accounts` (
									`account_type` ,					 `command` ,			  `version` ,
									`benificiary_account` ,		`benificiary_name` ,		  `payment_type` ,
									`currency` ,				 `organisation_id` ,			`temp_reg_id`,			`user_type` ,
									`iban` ,						  `swift_code` ,			`sort_code` ,
									`efts_userid` ,			   `electronic_advice` ,			   `status` ,
									`authorise` ,				    `created_date` ,		`modified_date` ,
									`created_by` ,					  `modified_by`
									)VALUES (
									'6', 				 'CMII', 	 '1', 
									'".$_POST['account_no']."', '".$_POST['account_name']."','I', 
									'EUR', 			          '',		'".$_REQUEST['uid']."', 					    '0', 
									'".$_POST['iban_code']."', 					  '".$_POST['swift_code']."',   '".$sort_code."',
									'', 	   'AT',						'1', 
									'0', 														  NOW(), 					  NOW(), 
									'".$_SESSION['admin']."', 				    '".$_SESSION['admin']."'
									); ";
			$query->updateQuery($sql);

			$message = 'added';

		}

		$_SESSION['success_invusers']='Bank details has been '.$message.' successfully';

	}


	function saveReplaceDoc()
	{

			$qry 		= new Bin_Query();
			$sql 		= "SELECT first_name FROM temp_registration WHERE temp_reg_id='".$_REQUEST['uid']."' ";
			$qry->executeQuery($sql);
			$fname 		= $qry->records[0]['first_name'];
			$user_id 	= $_REQUEST['uid'];

			if($_REQUEST['flag']=='1'){

				$key = 'p_passport';
			}elseif($_REQUEST['flag']=='2'){

				$key = 'b_bill';
			}else{

				$key = 'signed_rpa';
			}

			$file 		= $key;

			if($_FILES[$key]['tmp_name'] !=''){

				$exp 			= explode('_',$key);
				$name 			= $fname."_".$user_id;
				$dir 			= "../../documents/retail_investor/".$name;//Creating Folder W.r.t Debtor Name and Trader Id

				if(!is_dir($dir)){
					mkdir($dir, 0777);//Folder Path assigning
				}
				chmod($dir, 0777);  //Folder Permission assigning
				
				
				//File Path assigning
				$path 			= pathinfo($_FILES[$file]["name"]);
				if($exp[0] == 'p') $exp[1] = "Passport"; if($exp[0] == 'b') $exp[1] = "Bill";
				if($exp[0] == 'signed') $exp[1] = "SignedRPA";

				$file_name 		= $name."_".$exp[1]."_".time().".".$path['extension'];
				$dir_path 		= $dir."/".$file_name;

				//Uploading File
				if(!empty($_FILES[$file]["tmp_name"]))
				{
					move_uploaded_file($_FILES[$file]["tmp_name"],$dir_path);
				}

				chmod($dir."/".$file_name, 0777); //File Permission assigning
				$filepath[$key] = "/documents/retail_investor/".$name."/".$file_name;

			}	



			$query 		= new Bin_Query();
			if($_REQUEST['flag']=='1'){
			$sql 		= "UPDATE temp_retailer SET pasport='".$filepath['p_passport']."' WHERE temp_reg_id='".$_REQUEST['uid']."' ";
			}elseif($_REQUEST['flag']=='2'){

			$sql 		= "UPDATE temp_retailer SET bill='".$filepath['b_bill']."' WHERE temp_reg_id='".$_REQUEST['uid']."' ";
			}else{

			$sql 		= "UPDATE temp_retailer SET signed_rpa='".$filepath['signed_rpa']."' WHERE temp_reg_id='".$_REQUEST['uid']."' ";
			}

			$query->updateQuery($sql);


			$_SESSION['success_invusers'] = 'Document replacement has been made';

			echo '<script>

			window.opener.location.href = window.opener.location.href;  
			window.close();

			</script>';

	}

	function getRetailerDetails()
	{

		$query 			= new Bin_Query();
		$sql 			= "SELECT t.*,c.*,a.* FROM temp_registration as t,contact_details as c,address_details as a WHERE t.temp_reg_id='".$_GET['id']."' AND c.temp_reg_id=t.temp_reg_id AND c.work_address_id=a.address_id";
		$query->executeQuery($sql);
		$records 		= $query->records[0];

		return $records;
	}

	function getRetailerStatus()
	{

		$query 		= new Bin_Query();
		$sql 		= "SELECT `status` FROM `temp_registration` WHERE temp_reg_id='".$_GET['id']."' ";
		$query->executeQuery($sql);
		$status 	= $query->records[0]['status'];

		return $status;
	}

	function saveRetailInvestorReg(){

		$wemail=$_POST['wemail'];
		$fname=$_POST['fname'];
		$mname=$_POST['mname'];
		$lname=$_POST['lname'];
		$dob=$_POST['dob'];
		$oname=$_POST['username'];
		$addr1=$_POST['addr1'];
		$addr2=$_POST['addr2'];
		$pcode=$_POST['pcode'];
		$city=$_POST['city'];
		$state=$_POST['stateid'];
		$country=$_POST['country'];
		$dc_code=$_POST['dc_code'];
		$da_code=$_POST['da_code'];
		$dph_code=$_POST['dph_code'];
		$sc_code=$_POST['sc_code'];
		$sa_code=$_POST['sa_code'];
		$sph_code=$_POST['sph_code'];
		$mc_code=$_POST['mc_code'];
		$ma_code=$_POST['ma_code'];
		$mph_code=$_POST['mph_code'];
		$homeph=$_POST['dc_code'].$_POST['da_code'].$_POST['dph_code'];
		$offph=$_POST['sc_code'].$_POST['sa_code'].$_POST['sph_code'];
		$mobph=$_POST['mc_code'].$_POST['ma_code'].$_POST['mph_code'];
		$username  		= $_POST['username'];
		$password  		= $_POST['password'];
		$oname   		= $_POST['username'];
		$secret  		= $_POST['secret'];
		$sanswer  		= $_POST['sanswer'];
		$mcategory  	= '6';
		$sort 			= explode("-",$_POST['sort_code']);
		$sort_code 		= $sort[0].$sort[1].$sort[2];

			$contqry 		= new Bin_Query();
			$contsql 		= "SELECT * FROM `contact_details` WHERE temp_reg_id='".$_GET['id']."' ";
			$contqry->executeQuery($contsql);
			$contact 		= $contqry->records[0];

			$addressid 		= $contact['work_address_id'];
			$tempid 		= $_REQUEST['id'];


			$insert_field_qry 	= new Bin_Query();
			$insert_field_sql = "UPDATE address_details SET address_line_one='".trim($addr1)."', ".
									"address_line_two='".trim($addr2)."', ".
									"address_country='".trim($country)."', ".
									"address_zipcode='".trim($pcode)."', ".
									"address_phone_country='".trim($dc_code)."', ".
									"address_phone_code='".trim($da_code)."',".
									"address_phone='".trim($dph_code)."', ".
									"address_mobile_country='".trim($mc_code)."',".
									"address_mobile_code='".trim($ma_code)."', ".
									"address_mobile='".trim($mph_code)."', ".
									"address_fax_country='".trim($sc_code)."', ".
									"address_fax_code='".trim($sa_code)."', ".
									"address_fax='".trim($sph_code)."', ".
									"address_email='".trim($wemail)."', ".
									"address_state='".trim($_POST['stateid'])."', ".
									"address_city='".trim($_POST['city'])."' ".
									" WHERE address_id='".$addressid."' ";
			$insert_field_qry->updateQuery($insert_field_sql);

			$user_id=self::addUserLogin($username,$password,6);

			$usrqry 		= new Bin_Query();
			$usrsql 		= "UPDATE  `temp_registration` SET username='".trim($username)."', ".
									" password='".$password."', ".
									" organization_name='".addslashes(trim($oname))."', ".
									" organization_address_id='".trim($addressid)."', ".
									" secret_question_id='".trim($secret)."', ".
									" secret_answer='".trim($sanswer)."', ".
									" user_type='".trim($mcategory)."', ".
									" doj='".date("Y-m-d")."', ".
									" ipaddress='".$_SERVER['REMOTE_ADDR']."', ".
									" csr='".$_POST['csr']."', ".
									" public_key='".$_POST['publicKey']."', ".
									" status='1', ".
									" user_id='".$user_id."', ".
									" modified_at=NOW(), ".
									" ref_id= (CONCAT(DATE_FORMAT(doj,'%Y%m%d'), '000000') + temp_reg_id) ".
									" WHERE temp_reg_id='".$tempid."' ";
			$usrqry->updateQuery($usrsql);


				$qry 			= new Bin_Query();
				$sql 			= "SELECT quote_rate FROM temp_retailer WHERE temp_reg_id='".$tempid."' LIMIT 1 ";
				$qry->executeQuery($sql);
				$quote_rate 	= $qry->records[0]['quote_rate'];



				$orgqry 		= new Bin_Query();
				$orgsql	 		= "INSERT INTO organisation_details(user_id,organisation_reference_id ,organisation_name,organisation_ticker,organisation_trade_name, organisation_type,organisation_overview,agreed_rate,business_entity_type,organisation_jurisdiction,parent_company_name,formation_year,website,tax_number,vat_number,organisation_address_id,organisation_regoffice_id,mail_address_id,billing_address_id,submitter_firstname,submitter_lastname,submitted_date,submitter_legally_approved,application_status,modified_at,nace_group_id,nace_id,share_capital,total_employee,accounting_software,exchange_timeframe,previous_company_name,other_changes,other_details,created_at,created_by)
                                    VALUES('".$user_id."','".time()."','".addslashes($oname)."','','".addslashes($oname)."','','','".$quote_rate."','','".$country."','','','','','','','NULL','".$addressid."','NULL','NULL','NULL',NOW(),'2','1',NOW(),'','','','','','','','','',NOW(),'".$user_id."')";
				$orgqry->updateQuery($orgsql);
				$org_id 		= $orgqry->insertid;

                self::setOrganisationReferenceId($org_id);

				if($_POST['dp_type']!='1'){

						$bank_qry 			= new Bin_Query();
						$bank_sql 			= "INSERT INTO `address_details` (`address_line_one` ,`address_line_two` ,`address_area` ,`address_city` ,`address_state` ,`address_country` ,`address_zipcode` ,`address_phone_country` ,`address_phone_code` ,`address_phone` ,`address_mobile_country` ,`address_mobile_code` ,`address_mobile` ,`address_fax_country` ,`address_fax_code` ,`address_fax` ,`address_email` ,`address_all_details`,`modified_at` ,`modified_by`)VALUES ('".$_POST['bank_orgcaddr1']."', '".$_POST['bank_orgcaddr2']."', 'NULL', '".$_POST['bank_orgc_city']."', '".$_POST['bank_orgc_state']."', '".$_POST['bank_orgc_country']."', '".$_POST['bank_orgc_pc']."', '".$_POST['bank_orgc_ph_country']."', '".$_POST['bank_orgc_ph_area']."', '".$_POST['bank_orgc_ph_pn']."', 'NULL', 'NULL', 'NULL', '".$_POST['bank_orgc_fn_country']."', '".$_POST['bank_orgc_fn_area']."', '".$_POST['bank_orgc_fn_pn']."', '".$_POST['bank_orgc_email']."','NULL',NOW(), '');";
						$bank_qry->updateQuery($bank_sql);

						$bank_address_id 	= $bank_qry->insertid;



						if($_POST['bank_name'] == 0 || !is_numeric($_POST['bank_name'])) {

							if(!is_numeric($_POST['bank_name'])){
								$new 		= $_POST['bank_name'];
							}else{
								$new 		= $_POST['bank_new'];
							}

							$qry 			= new Bin_Query();
							$sql			="INSERT INTO bank_details (bank_name,bank_country,modified_at, modified_by,bank_status)VALUES('".$new."','".$_POST['bank_orgc_country']."',NOW(),'','0')";
							if($qry->updateQuery($sql)){
							
							$_POST['bank_name']=$qry->insertid;

							}
							
						}


						$bank_qry11 				= new Bin_Query();
						$bank_sql11 			="INSERT INTO `address_details` (`address_line_one` ,`address_line_two` ,`address_area` ,`address_city` ,`address_state` ,`address_country` ,`address_zipcode` ,`address_phone_country` ,`address_phone_code` ,`address_phone` ,`address_mobile_country` ,`address_mobile_code` ,`address_mobile` ,`address_fax_country` ,`address_fax_code` ,`address_fax` ,`address_email` ,`address_all_details`,`modified_at` ,`modified_by`)VALUES ('', '', 'NULL', '', '', '', '','".$_POST['bank_c_ph_country']."', '".$_POST['bank_c_ph_area']."', '".$_POST['bank_c_ph_pn']."', 'NULL', 'NULL', '', '', '', '".$_POST['bank_c_email']."','NULL','',NOW(), '')"; 
						$bank_qry11->updateQuery($bank_sql11);
						$contact_address_id = $bank_qry11->insertid;



						$contact_qry 		= new Bin_Query();
						$contact_qry->updateQuery("INSERT INTO `contact_details` (`temp_reg_id` ,`bank_id`,`first_name`,`last_name`,`work_address_id`,`home_address_id`,`hq_address_id`,`position` )
                                                    VALUES ('".$tempid."','".$_POST['bank_name']."','".$_POST['bank_c_fname']."','".$_POST['bank_c_lname']."','".$contact_address_id."','".self::addEmptyAddress()."','".self::addEmptyAddress()."','1')");
						$contact_id 		= $contact_qry->insertid;


						$index_qry 			= new Bin_Query();
						$index_sql 			="INSERT INTO `organisation_bank_details` (`address_id` ,`bank_id`,`contact_id`,currency_id )VALUES ('".$bank_address_id."','".$_POST['bank_name']."','".$contact_id."','".$_POST['currency_id']."')";
						$index_qry->updateQuery($index_sql);
						$_POST['organisation_bank_id'] = $index_qry->insertid;



						$acc_qry 			= new Bin_Query();
						$acc_sql 			= "INSERT INTO `organisation_bank_account_details` (`account_name`,`account_no`,`sort_code`,`iban_code`,`swift_code`,`organisation_id`,`organisation_bank_id`,`created`) VALUES ('".$_POST['account_name']."','".$_POST['account_no']."','".$sort_code."','".$_POST['iban_code']."','".$_POST['swift_code']."','".$org_id."','".$_POST['organisation_bank_id']."',NOW())";
						$acc_qry->updateQuery($acc_sql);


						$bankqry 			= new Bin_Query();
						$banksql 			= "UPDATE `organisation_bank_account_details` SET organisation_bank_id = '".$_POST['organisation_bank_id']."' WHERE organisation_id='".$org_id."' && organisation_bank_id=0";
						$bankqry->updateQuery($banksql);

				}
                
                self::changeOrganisationDetailsStatus(1,$org_id);

				$log = array();
		        $log['admin_user_id']   = $_SESSION['admin'];
		        $log['user_id'] 		= $user_id;
		        $log['element_id']      = $tempid; //temp_reg_id

		        Model_MActivityLogs::activityLogs('ADD_RETAIL_INV_REG','adminindex.php?do=retailinvestorreg&id='.$tempid,$log);

				$_SESSION['message']='User Added Successfully';
				header('Location: adminindex.php?do=addnewretailinv');
				exit;
	}

	function showMasterRetailInv($flg='1')
	{
		$status			= $_REQUEST['status'];
		$permit			= $_REQUEST['permit'];
		$interface		= $_REQUEST['interface'];

		$where 			= '';		

		if($_REQUEST['orgstatus']=='11')
        {
			$where = ' AND (org.organisation_status < 3)';
		}
        
        $sort = self::prepareSorting(array(
            'retailer_name',
            'org.organisation_reference_id',
            'r.intermediary_id',
            'org.agreed_rate',
            'currency_code',
            11=>'t.dp_type'
        ),'date DESC');

		if($_REQUEST['status'] !=''){
			if($where !=''){
				$where1 .= " AND t.status = '".$_REQUEST['status']."' ";
			}else{
				$where1 = " WHERE t.user_type='6' AND t.user_id=org.user_id AND t.organization_address_id=a.address_id AND a.address_country=c.country_id AND t.temp_reg_id = r.investor_id ";	
			}
		}


		if(trim($_REQUEST['srchtxt']) != ''){
			$txt 		= trim($_REQUEST['srchtxt']);

			$where 		.= " AND organisation_reference_id = '".$txt."' || `first_name` LIKE '%".$txt."%' || ".
						" `last_name` LIKE '%".$txt."%'  || ".
						" organisation_risk LIKE '".$txt."' || organisation_limit LIKE '".$txt."' || ".
						" currency_code LIKE '%".$txt."%' || currency_code LIKE '%".$txt."%' ";

		}
        
        $noofrec         = (isset($_GET['show']) && ctype_digit($_GET['show']))?trim($_GET['show']):CONFIG_ENTRIES_PER_PAGE;
        $start=(isset($_GET['page']))?(trim($_GET['page']-1) * $noofrec):0;
        
		$query 		= new Bin_Query();


		$sql 		= " SELECT SQL_CALC_FOUND_ROWS DATE_FORMAT(t.doj,'%d-%m-%Y') as date,CONCAT(t.last_name,t.first_name) ".
					" as retailer_name,t.first_name,t.last_name,t.temp_reg_id as uid,org.*, ".
					" c.currency_code,c.currency_code,r.intermediary_id,a.address_country,tr.* ".
					" FROM `temp_registration` as t,".
					" `organisation_details` as org,`currencies` as c,`investor_relation` as r,".
					" `address_details` a,temp_retailer tr ".
					" WHERE t.user_type='6' AND t.user_id=org.user_id AND t.temp_reg_id=tr.temp_reg_id ".
					" AND t.organization_address_id=a.address_id AND t.currency_id=c.currency_id ".
					" AND t.temp_reg_id=r.investor_id   ".
					" && IF(t.user_type='6',(t.status='2' || t.status='4' || t.status='5' || t.status='6'),IF(t.user_type='2',(t.status='2' || t.status='3' || t.status='4' || t.status='6'),'')) ".
					" $where ".
					" group by org.user_id $sort 
                     LIMIT ".$start.",".$noofrec;
					

		$query->executeQuery($sql);
		$recordSet     = $query->records;
	    
        $query->executeQuery('SELECT FOUND_ROWS() as totalRecord');
        $totalRecord=$query->records[0]['totalRecord'];
        		
		if($flg == 2)
        {
			return $totalRecord;
		}

		for($i=0;$i<count($recordSet);$i++){
			
			$query12 = new Bin_Query();
			$sql12="SELECT *  FROM debtor_relation WHERE organisation_id='".$recordSet[$i]['organisation_id']."'";
			$query12->executeQuery($sql12);
			$debtors = $query12->records;
			
			$recordSet[$i]['debtors'] = count($debtors);
			
			
			$query1=new Bin_Query();
			$sql1 = "SELECT nace_group_id, nace_group_code 	FROM `category_group` 
							where nace_group_id = '".$recordSet[$i]['naced']."' limit 1";
			$query1->executeQuery($sql1);
			$nace_group_id = $query1->records;
			
			$query2=new Bin_Query();
			$sql2 = "SELECT nace_id, nace_code FROM `categories` WHERE nace_id = '".$recordSet[$i]['nacec']."' limit 1";
			$query2->executeQuery($sql2);
			$nace_id = $query2->records;
			
			$recordSet[$i]['nacec'] = $nace_id[0]['nace_code'];
			
			$recordSet[$i]['naced'] =  str_replace("Section","",$nace_group_id[0]['nace_group_code']).substr($nace_id[0]['nace_code'],0,2);	
			
			
					
			
			$sql1 = "SELECT inv.*, m.sales_type, m.face_value FROM invoice_master as m, invoice_closed as inv  WHERE inv.won_by = '".$recordSet[$i]['user_id']."' && m.invoice_id = inv.invoice_id group by m.invoice_id";
			$query1->executeQuery($sql1);
			$avg = $query1->records;
			if(count($avg) > 0){
				$total 					= 0;
				foreach($avg as $keys){
					if($keys['sales_type'] == '1'){
						$total 			= $total + $keys['min_advance'];
						
					}else{
						$max 			= $keys['max_thirty_reserve'];
						$percent 		= $keys['face_value'] - ($keys['face_value'] * ($max/100));
						$total 			= $total + $percent;
					}
				}
				$average						= $total / count($avg);
				
				$recordSet[$i]['avg_invoice_predicted_annum'] = number_format($average, 0, '', ',');
				$recordSet[$i]['avg_revenue_predicted_annum'] = number_format($total, 0, '', ',');
				
			}else{
				$recordSet[$i]['avg_invoice_predicted_annum'] = 0;
				$recordSet[$i]['avg_revenue_predicted_annum'] = 0;
			}
			
		
			//Open Status 
			
			$query21=new Bin_Query();
			$sql21 = "SELECT d.parent_id FROM invoice_master as m, invoice_bidding as inv, debtors_detail as d  WHERE inv.user_id = '".$recordSet[$i]['user_id']."' && m.invoice_id = inv.invoice_id && d.debtor_id = m.debtor_id  group by d.parent_id";
			
			$query21->executeQuery($sql21);
			$debtors = $query21->records;
			$recordSet[$i]['debtors'] = count($debtors);	
			
			$query31=new Bin_Query();
			$sql31 = "SELECT org.organisation_id FROM invoice_master as m, debtor_relation as r, invoice_bidding as inv , organisation_details as org WHERE inv.user_id = '".$recordSet[$i]['user_id']."' && m.invoice_id = inv.invoice_id && r.debtor_id = m.debtor_id && org.organisation_id = r.organisation_id  group by org.organisation_id ";
			
			$query31->executeQuery($sql31);
			$traders = $query31->records;
			$recordSet[$i]['traders'] = count($traders);
			
			
			
			$query5=new Bin_Query();
			$sql5="SELECT COUNT(b.user_id) FROM temp_registration b , organisation_details as d WHERE d.organisation_id = '".$_REQUEST['org_id']."' && b.user_id = d.user_id ";
			$query5->executeQuery($sql5);
			$users = $query5->records;
			$recordSet[$i]['users'] = count($users);
			
			
			$query61=new Bin_Query();
			$sql61 = "SELECT b.invoice_id FROM invoice_bidding as b WHERE b.user_id = '".$recordSet[$i]['user_id']."' group by b.invoice_id";
			
			
			$query61->executeQuery($sql61);
			$invs1 = $query61->records;	
			$recordSet[$i]['trades'] = count($invs1);
		}
		
		return Display_DRetailInvestor::showMasterRetailInv(ceil($totalRecord/$noofrec),$recordSet,0);
	}

	function showAllInvestors($flg='1')
	{
		$status			= $_REQUEST['status'];
		$permit			= $_REQUEST['permit'];
		$interface		= $_REQUEST['interface'];
		
		$sort = self::prepareSorting(array(
            'retailer_name',
            'organisation_reference_id',
            'intermediary_id',
            'org.agreed_rate',
            'currency_code',
            6=>'avg_invoice_predicted_annum',
            'avg_revenue_predicted_annum',
            9=>'traders',
            11=>'t.dp_type'
        ));

		$where 			= '';

		if(trim($_REQUEST['srchtxt']) != ''){

			$txt 		= trim($_REQUEST['srchtxt']);

			$where 		.= " AND (organisation_reference_id = '".$txt."' || `first_name` LIKE '%".$txt."%' || ".
			" `last_name` LIKE '%".$txt."%' || `organisation_name` LIKE '%".$txt."%'  || ".
						" organisation_risk LIKE '".$txt."' || organisation_limit LIKE '".$txt."' || ".
						" currency_code LIKE '%".$txt."%' || currency_code LIKE '%".$txt."%' ) ";
		}else{

			$where 		.= '';
		}

        $noofrec         = (isset($_GET['show']) && ctype_digit($_GET['show']))?trim($_GET['show']):CONFIG_ENTRIES_PER_PAGE;
        $start=(isset($_GET['page']))?(trim($_GET['page']-1) * $noofrec):0;
        
		$query  		= new Bin_Query();
		$sql 			= "SELECT SQL_CALC_FOUND_ROWS DATE_FORMAT(t.doj,'%d-%m-%Y') as date, ".
							" CONCAT(t.last_name,t.first_name) as retailer_name, ".
							" org.*,t.dp_type,t.temp_reg_id,t.user_type,c.currency_code, ".
							" c.currency_code,r.intermediary_id,a.address_country,tr.* ".

							" FROM `temp_registration` as t ".

							" LEFT JOIN `organisation_details` as org ON org.user_id = t.user_id ".
							" LEFT JOIN `address_details` a ON a.address_id = t.organization_address_id ".
							" LEFT JOIN `currencies` as c ON c.currency_id = t.currency_id ".
							" LEFT JOIN `investor_relation` as r ON r.investor_id = t.temp_reg_id ".
							" LEFT JOIN `temp_retailer` as tr ON tr.temp_reg_id = t.temp_reg_id ".
							" WHERE (t.user_type='1' || t.user_type='2' || t.user_type='6') && IF(t.user_type='6',(t.status='2' || t.status='4'),IF(t.user_type='2',(t.status='2' || t.status='3' || t.status='4' || t.status='6'),'')) && org.organisation_id !='' ".
							" $where
                            GROUP BY org.organisation_id
                             $sort 
                            LIMIT ".$start.",".$noofrec;

		$query->executeQuery($sql);
		$recordSet     = $query->records;
        
        $query->executeQuery('SELECT FOUND_ROWS() as totalRecord');
        $totalRecord=$query->records[0]['totalRecord'];
        
		if($flg == 2)
        {
			return $totalRecord;
		}

		for($i=0;$i<count($recordSet);$i++){
			
			
			$query1=new Bin_Query();
			$sql1 = "SELECT nace_group_id, nace_group_code 	FROM `category_group` 
							where nace_group_id = '".$recordSet[$i]['naced']."' limit 1";
			$query1->executeQuery($sql1);
			$nace_group_id = $query1->records;
			
			$query2=new Bin_Query();
			$sql2 = "SELECT nace_id, nace_code FROM `categories` WHERE nace_id = '".$recordSet[$i]['nacec']."' limit 1";
			$query2->executeQuery($sql2);
			$nace_id = $query2->records;
			
			$recordSet[$i]['nacec'] = $nace_id[0]['nace_code'];
			
			$recordSet[$i]['naced'] =  str_replace("Section","",$nace_group_id[0]['nace_group_code']).substr($nace_id[0]['nace_code'],0,2);	


			$sql1 = "SELECT inv.*, m.sales_type, m.face_value FROM invoice_master as m, invoice_closed as inv  WHERE inv.won_by = '".$recordSet[$i]['user_id']."' && m.invoice_id = inv.invoice_id group by m.invoice_id";
			$query1->executeQuery($sql1);
			$avg = $query1->records;
			if(count($avg) > 0){
				$total 					= 0;
				foreach($avg as $keys){
					if($keys['sales_type'] == '1'){
						$total 			= $total + $keys['min_advance'];
						
					}else{
						$max 			= $keys['max_thirty_reserve'];
						$percent 		= $keys['face_value'] - ($keys['face_value'] * ($max/100));
						$total 			= $total + $percent;
					}
				}
				$average						= $total / count($avg);
				
				$recordSet[$i]['avg_invoice_predicted_annum'] = number_format($average, 0, '', ',');
				$recordSet[$i]['avg_revenue_predicted_annum'] = number_format($total, 0, '', ',');
				
			}else{
				$recordSet[$i]['avg_invoice_predicted_annum'] = 0;
				$recordSet[$i]['avg_revenue_predicted_annum'] = 0;
			}
			
			$query21=new Bin_Query();
			$sql21 = "SELECT d.parent_id FROM invoice_master as m, invoice_bidding as inv, debtors_detail as d  WHERE inv.user_id = '".$recordSet[$i]['user_id']."' && m.invoice_id = inv.invoice_id && d.debtor_id = m.debtor_id  group by d.parent_id";
			
			$query21->executeQuery($sql21);
			$debtors = $query21->records;
			$recordSet[$i]['debtors'] = count($debtors);	
			
			$query31=new Bin_Query();
			$sql31 = "SELECT org.organisation_id FROM invoice_master as m, debtor_relation as r, invoice_bidding as inv , organisation_details as org WHERE inv.user_id = '".$recordSet[$i]['user_id']."' && m.invoice_id = inv.invoice_id && r.debtor_id = m.debtor_id && org.organisation_id = r.organisation_id  group by org.organisation_id ";
			
			$query31->executeQuery($sql31);
			$traders = $query31->records;

			$recordSet[$i]['traders'] = count($traders);
			
			
			
			$query5=new Bin_Query();
			$sql5="SELECT COUNT(b.user_id) FROM temp_registration b , organisation_details as d WHERE d.organisation_id = '".$_REQUEST['org_id']."' && b.user_id = d.user_id ";
			$query5->executeQuery($sql5);
			$users = $query5->records;
			$recordSet[$i]['users'] = count($users);
			
			
			$query61=new Bin_Query();
			$sql61 = "SELECT b.invoice_id FROM invoice_bidding as b WHERE b.user_id = '".$recordSet[$i]['user_id']."' group by b.invoice_id";
			
			
			$query61->executeQuery($sql61);
			$invs1 = $query61->records;	
			$recordSet[$i]['trades'] = count($invs1);
		}

		
		return Display_DRetailInvestor::showAllInvestors(ceil($totalRecord/$noofrec),$recordSet);
	}

	function showAllInvBuyRates($flg='1')
	{
		$status			= $_REQUEST['status'];
		$permit			= $_REQUEST['permit'];
		$interface		= $_REQUEST['interface'];
	
		$sort = self::prepareSorting(array(
            'retailer_name',
            'organisation_reference_id',
            'intermediary_id',
            'tr.amount',
            'tr.quote_rate',
            'currency_code',
            'avg_invoice_predicted_annum',
            'avg_revenue_predicted_annum',
            'traders',
            11=>'t.dp_type'
        ));

		$where 			= '';

		if(trim($_REQUEST['srchtxt']) != ''){

			$txt 		= trim($_REQUEST['srchtxt']);

			$where 		.= " AND (organisation_reference_id = '".$txt."' || `first_name` LIKE '%".$txt."%' || ".
			" `last_name` LIKE '%".$txt."%' || `organisation_name` LIKE '%".$txt."%'  || ".
						" organisation_risk LIKE '".$txt."' || organisation_limit LIKE '".$txt."' || ".
						" currency_code LIKE '%".$txt."%' || currency_code LIKE '%".$txt."%' ) ";
		}else{

			$where 		.= '';
		}
        
        $noofrec         = (isset($_GET['show']) && ctype_digit($_GET['show']))?trim($_GET['show']):CONFIG_ENTRIES_PER_PAGE;
            $start=(isset($_GET['page']))?(trim($_GET['page']-1) * $noofrec):0;

		$query  		= new Bin_Query();
		$sql 			= "SELECT SQL_CALC_FOUND_ROWS DATE_FORMAT(t.doj,'%d-%m-%Y') as date, ".
							" CONCAT(t.last_name,t.first_name) as retailer_name, ".
							" org.*,t.dp_type,t.temp_reg_id,t.user_type,c.currency_code, ".
							" c.currency_code,r.intermediary_id,a.address_country,tr.* ".

							" FROM `temp_registration` as t ".

							" LEFT JOIN `organisation_details` as org ON org.user_id = t.user_id ".
							" LEFT JOIN `address_details` a ON a.address_id = t.organization_address_id ".
							" LEFT JOIN `currencies` as c ON c.currency_id = t.currency_id ".
							" LEFT JOIN `investor_relation` as r ON r.investor_id = t.temp_reg_id ".
							" LEFT JOIN `temp_retailer` as tr ON tr.temp_reg_id = t.temp_reg_id ".
							" WHERE (t.user_type='1' || t.user_type='2' || t.user_type='6') && IF(t.user_type='6',(t.status='2' || t.status='4'),IF(t.user_type='2',(t.status='2' || t.status='3' || t.status='4' || t.status='6'),'')) && org.organisation_id !='' ".
							" $where
                            GROUP BY org.organisation_id 
                             $sort 
                             LIMIT ".$start.",".$noofrec;


		$query->executeQuery($sql);
		$recordSet     = $query->records;
        $recordSize = count($query->totrows);
        
        $query->executeQuery('SELECT FOUND_ROWS() as totalRecord');
        $totalRecord=$query->records[0]['totalRecord'];
        
		if($flg == 2)
        {
			return $totalRecord;
		}

		for($i=0;$i<count($recordSet);$i++){
			
			
			$query1=new Bin_Query();
			$sql1 = "SELECT nace_group_id, nace_group_code 	FROM `category_group` 
							where nace_group_id = '".$recordSet[$i]['naced']."' limit 1";
			$query1->executeQuery($sql1);
			$nace_group_id = $query1->records;
			
			$query2=new Bin_Query();
			$sql2 = "SELECT nace_id, nace_code FROM `categories` WHERE nace_id = '".$recordSet[$i]['nacec']."' limit 1";
			$query2->executeQuery($sql2);
			$nace_id = $query2->records;
			
			$recordSet[$i]['nacec'] = $nace_id[0]['nace_code'];
			
			$recordSet[$i]['naced'] =  str_replace("Section","",$nace_group_id[0]['nace_group_code']).substr($nace_id[0]['nace_code'],0,2);		

			$sql1 = "SELECT inv.*, m.sales_type, m.face_value FROM invoice_master as m, invoice_closed as inv  WHERE inv.won_by = '".$recordSet[$i]['user_id']."' && m.invoice_id = inv.invoice_id group by m.invoice_id";
			$query1->executeQuery($sql1);
			$avg = $query1->records;
			if(count($avg) > 0){
				$total 					= 0;
				foreach($avg as $keys){
					if($keys['sales_type'] == '1'){
						$total 			= $total + $keys['min_advance'];
						
					}else{
						$max 			= $keys['max_thirty_reserve'];
						$percent 		= $keys['face_value'] - ($keys['face_value'] * ($max/100));
						$total 			= $total + $percent;
					}
				}
				$average						= $total / count($avg);
				
				$recordSet[$i]['avg_invoice_predicted_annum'] = number_format($average, 0, '', ',');
				$recordSet[$i]['avg_revenue_predicted_annum'] = number_format($total, 0, '', ',');
				
			}else{
				$recordSet[$i]['avg_invoice_predicted_annum'] = 0;
				$recordSet[$i]['avg_revenue_predicted_annum'] = 0;
			}
			
			$query21=new Bin_Query();
			$sql21 = "SELECT d.parent_id FROM invoice_master as m, invoice_bidding as inv, debtors_detail as d  WHERE inv.user_id = '".$recordSet[$i]['user_id']."' && m.invoice_id = inv.invoice_id && d.debtor_id = m.debtor_id  group by d.parent_id";
			
			$query21->executeQuery($sql21);
			$debtors = $query21->records;
			$recordSet[$i]['debtors'] = count($debtors);	
			
			$query31=new Bin_Query();
			$sql31 = "SELECT org.organisation_id FROM invoice_master as m, debtor_relation as r, invoice_bidding as inv , organisation_details as org WHERE inv.user_id = '".$recordSet[$i]['user_id']."' && m.invoice_id = inv.invoice_id && r.debtor_id = m.debtor_id && org.organisation_id = r.organisation_id  group by org.organisation_id ";
			
			$query31->executeQuery($sql31);
			$traders = $query31->records;

			$recordSet[$i]['traders'] = count($traders);
			
			
			
			$query5=new Bin_Query();
			$sql5="SELECT COUNT(b.user_id) FROM temp_registration b , organisation_details as d WHERE d.organisation_id = '".$_REQUEST['org_id']."' && b.user_id = d.user_id ";
			$query5->executeQuery($sql5);
			$users = $query5->records;
			$recordSet[$i]['users'] = count($users);
			
			
			$query61=new Bin_Query();
			$sql61 = "SELECT b.invoice_id FROM invoice_bidding as b WHERE b.user_id = '".$recordSet[$i]['user_id']."' group by b.invoice_id";
			
			
			$query61->executeQuery($sql61);
			$invs1 = $query61->records;	
			$recordSet[$i]['trades'] = count($invs1);
		}
		
		return Display_DRetailInvestor::showAllInvBuyRates(ceil($totalRecord/$noofrec),$recordSet);
	}


	function showRetailApplActivate()
	{
		$query 		= new Bin_Query();
		$sql 		= "SELECT t.user_id,t.status,org.user_id FROM temp_registration t,organisation_details org WHERE org.organisation_id='".intval($_GET['id'])."' AND org.user_id=t.user_id LIMIT 1";
		$query->executeQuery($sql);
		$user 		= $query->records[0];
        
        $label='';
		if($_GET['type']=='apply')
		{
            self::changeOrganisationDetailsStatus(2,$_GET['id'],NULL,2);
			
            $_SESSION['success_organisation']	= 'Organisation Applied Successfully';
            $label = 'RETAIL_ORG_APPLIED';
		}
		elseif($_GET['type']=='approve')
		{
            self::changeOrganisationDetailsStatus(3,$_GET['id']);
			
            $_SESSION['success_organisation']	= 'Organisation Approved Successfully';
            $label = 'RETAIL_ORG_APPROVE';
		}
		elseif($_GET['type']=='bank')
		{
            self::changeOrganisationDetailsStatus(4,$_GET['id']);
			$_SESSION['success_organisation']	= 'Organisation Status Updated Successfully';
		}
		elseif($_GET['type']=='authorise')
		{
            self::changeTempUserStatusByUserId(4,$user['user_id']);
            self::changeOrganisationDetailsStatus(6,$_GET['id'],0);
			
            $_SESSION['success_organisation']	= 'Organisation Authorised Successfully';
            $label = 'RETAIL_ORG_AUTHORISE';
		}
		elseif($_GET['type']=='confirm')
		{
            self::changeTempUserStatusByUserId(4,$user['user_id']);
            self::changeOrganisationDetailsStatus(6,$_GET['id'],1);
			
            $_SESSION['success_organisation']	= 'Organisation Confirmed Successfully';
            $label = 'RETAIL_ORG_CONFIRM';
		}
		elseif($_GET['type']=='suspend')
		{
            self::changeTempUserStatusByUserId(5,$user['user_id']);
            self::changeOrganisationDetailsStatus(7,$_GET['id']);
            
			$_SESSION['success_organisation']	= 'Organisation Suspended Successfully';
            $label = 'RETAIL_ORG_SUSPEND';
		}
		elseif($_GET['type']=='terminate')
		{
            self::changeTempUserStatusByUserId(6,$user['user_id']);
            self::changeOrganisationDetailsStatus(8,$_GET['id']);
            
			$_SESSION['success_organisation']	= 'Organisation Terminated Successfully';
            $label = 'RETAIL_ORG_TERMINATE';
		}


		$log = array();
		$log['user_id'] 		= $user['user_id'];
		$log['admin_user_id'] 	= $_SESSION['admin'];
		$log['organisation_id'] = $_GET['id'];


		Model_MActivityLogs::activityLogs($label,'adminindex.php?do=retapplactivate&id='.$_GET['id'].'&type='.$_GET['type'].'&pg='.$_REQUEST['page'],$log);

		if($_GET['type']=='confirm' || $_GET['type']=='suspend'){

			$message = $_GET['type'].'ed';
		}else{

			$message = $_GET['type'].'d';
		}

		$_SESSION['success_invusers'] = 'Organisation '.$message.' Successfully';

		return true;
	}
}
?>