You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
308 lines
14 KiB
308 lines
14 KiB
4 months ago
|
<?
|
||
|
/*********************************************************************************
|
||
|
** The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||
|
* ("License"); You may not use this file except in compliance with the License
|
||
|
* The Original Code is: vtiger CRM Open Source
|
||
|
* The Initial Developer of the Original Code is vtiger.
|
||
|
* Portions created by vtiger are Copyright (C) vtiger.
|
||
|
* All Rights Reserved.
|
||
|
*
|
||
|
********************************************************************************/
|
||
|
require_once('include/database/PearDatabase.php');
|
||
|
|
||
|
$customviews = Array(Array('viewname'=>'Hot Leads',
|
||
|
'setdefault'=>'0','setmetrics'=>'1',
|
||
|
'cvmodule'=>'Leads','stdfilterid'=>'','advfilterid'=>'0'),
|
||
|
|
||
|
Array('viewname'=>'This Month Leads',
|
||
|
'setdefault'=>'0','setmetrics'=>'0',
|
||
|
'cvmodule'=>'Leads','stdfilterid'=>'0','advfilterid'=>''),
|
||
|
|
||
|
Array('viewname'=>'Prospect Accounts',
|
||
|
'setdefault'=>'0','setmetrics'=>'1',
|
||
|
'cvmodule'=>'Accounts','stdfilterid'=>'','advfilterid'=>'1'),
|
||
|
|
||
|
Array('viewname'=>'New This Week',
|
||
|
'setdefault'=>'0','setmetrics'=>'0',
|
||
|
'cvmodule'=>'Accounts','stdfilterid'=>'1','advfilterid'=>''),
|
||
|
|
||
|
Array('viewname'=>'Contacts Address',
|
||
|
'setdefault'=>'0','setmetrics'=>'0',
|
||
|
'cvmodule'=>'Contacts','stdfilterid'=>'','advfilterid'=>''),
|
||
|
|
||
|
Array('viewname'=>'Todays Birthday',
|
||
|
'setdefault'=>'0','setmetrics'=>'0',
|
||
|
'cvmodule'=>'Contacts','stdfilterid'=>'2','advfilterid'=>''),
|
||
|
|
||
|
Array('viewname'=>'Potentails Won',
|
||
|
'setdefault'=>'0','setmetrics'=>'1',
|
||
|
'cvmodule'=>'Potentials','stdfilterid'=>'','advfilterid'=>'2'),
|
||
|
|
||
|
Array('viewname'=>'Prospecting',
|
||
|
'setdefault'=>'0','setmetrics'=>'0',
|
||
|
'cvmodule'=>'Potentials','stdfilterid'=>'','advfilterid'=>'3'),
|
||
|
|
||
|
Array('viewname'=>'Open Tickets',
|
||
|
'setdefault'=>'0','setmetrics'=>'1',
|
||
|
'cvmodule'=>'HelpDesk','stdfilterid'=>'','advfilterid'=>'4'),
|
||
|
|
||
|
Array('viewname'=>'High Prioriy Tickets',
|
||
|
'setdefault'=>'0','setmetrics'=>'0',
|
||
|
'cvmodule'=>'HelpDesk','stdfilterid'=>'','advfilterid'=>'5'),
|
||
|
|
||
|
Array('viewname'=>'Open Quotes',
|
||
|
'setdefault'=>'0','setmetrics'=>'1',
|
||
|
'cvmodule'=>'Quotes','stdfilterid'=>'','advfilterid'=>'6'),
|
||
|
|
||
|
Array('viewname'=>'Rejected Quotes',
|
||
|
'setdefault'=>'0','setmetrics'=>'0',
|
||
|
'cvmodule'=>'Quotes','stdfilterid'=>'','advfilterid'=>'7')
|
||
|
);
|
||
|
|
||
|
|
||
|
$cvcolumns = Array(Array('leaddetails:firstname:firstname:Leads_First_Name:V',
|
||
|
'leaddetails:lastname:lastname:Leads_Last_Name:V',
|
||
|
'leaddetails:company:company:Leads_Company:V',
|
||
|
'leaddetails:leadsource:leadsource:Leads_Lead_Source:V',
|
||
|
'leadsubdetails:website:website:Leads_Website:V',
|
||
|
'leaddetails:email:email:Leads_Email:V'),
|
||
|
|
||
|
Array('leaddetails:firstname:firstname:Leads_First_Name:V',
|
||
|
'leaddetails:lastname:lastname:Leads_Last_Name:V',
|
||
|
'leaddetails:company:company:Leads_Company:V',
|
||
|
'leaddetails:leadsource:leadsource:Leads_Lead_Source:V',
|
||
|
'leadsubdetails:website:website:Leads_Website:V',
|
||
|
'leaddetails:email:email:Leads_Email:V'),
|
||
|
|
||
|
Array('account:accountname:accountname:Accounts_Account_Name:V',
|
||
|
'account:phone:phone:Accounts_Phone:V',
|
||
|
'account:website:website:Accounts_Website:V',
|
||
|
'account:rating:rating:Accounts_Rating:V',
|
||
|
'crmentity:smownerid:assigned_user_id:Accounts_Assigned_To:V'),
|
||
|
|
||
|
Array('account:accountname:accountname:Accounts_Account_Name:V',
|
||
|
'account:phone:phone:Accounts_Phone:V',
|
||
|
'account:website:website:Accounts_Website:V',
|
||
|
'accountbillads:city:bill_city:Accounts_City:V',
|
||
|
'crmentity:smownerid:assigned_user_id:Accounts_Assigned_To:V'),
|
||
|
|
||
|
Array('contactdetails:firstname:firstname:Contacts_First_Name:V',
|
||
|
'contactdetails:lastname:lastname:Contacts_Last_Name:V',
|
||
|
'contactaddress:mailingstreet:mailingstreet:Contacts_Mailing_Street:V',
|
||
|
'contactaddress:mailingcity:mailingcity:Contacts_City:V',
|
||
|
'contactaddress:mailingstate:mailingstate:Contacts_State:V',
|
||
|
'contactaddress:mailingzip:mailingzip:Contacts_Zip:V',
|
||
|
'contactaddress:mailingcountry:mailingcountry:Contacts_Country:V'),
|
||
|
|
||
|
Array('contactdetails:firstname:firstname:Contacts_First_Name:V',
|
||
|
'contactdetails:lastname:lastname:Contacts_Last_Name:V',
|
||
|
'contactdetails:title:title:Contacts_Title:V',
|
||
|
'contactdetails:accountid:account_id:Contacts_Account_Name:I',
|
||
|
'contactdetails:email:email:Contacts_Email:V',
|
||
|
'contactsubdetails:otherphone:otherphone:Contacts_Phone:V',
|
||
|
'crmentity:smownerid:assigned_user_id:Contacts_Assigned_To:V'),
|
||
|
|
||
|
Array('potential:potentialname:potentialname:Potentials_Potential_Name:V',
|
||
|
'potential:accountid:account_id:Potentials_Account_Name:V',
|
||
|
'potential:amount:amount:Potentials_Amount:N',
|
||
|
'potential:leadsource:leadsource:Potentials_Lead_Source:V',
|
||
|
'potential:closingdate:closingdate:Potentials_Expected_Close_Date:D',
|
||
|
'crmentity:smownerid:assigned_user_id:Potentials_Assigned_To:V'),
|
||
|
|
||
|
Array('potential:potentialname:potentialname:Potentials_Potential_Name:V',
|
||
|
'potential:accountid:account_id:Potentials_Account_Name:V',
|
||
|
'potential:amount:amount:Potentials_Amount:N',
|
||
|
'potential:leadsource:leadsource:Potentials_Lead_Source:V',
|
||
|
'potential:closingdate:closingdate:Potentials_Expected_Close_Date:D',
|
||
|
'crmentity:smownerid:assigned_user_id:Potentials_Assigned_To:V'),
|
||
|
|
||
|
Array('troubletickets:title:ticket_title:HelpDesk_Title:V',
|
||
|
'troubletickets:parent_id:parent_id:HelpDesk_Related_to:I',
|
||
|
'troubletickets:priority:ticketpriorities:HelpDesk_Priority:V',
|
||
|
'troubletickets:product_id:product_id:HelpDesk_Product_Name:I',
|
||
|
'crmentity:smownerid:assigned_user_id:HelpDesk_Assigned_To:V'),
|
||
|
|
||
|
Array('troubletickets:title:ticket_title:HelpDesk_Title:V',
|
||
|
'troubletickets:parent_id:parent_id:HelpDesk_Related_to:I',
|
||
|
'troubletickets:status:ticketstatus:HelpDesk_Status:V',
|
||
|
'troubletickets:product_id:product_id:HelpDesk_Product_Name:I',
|
||
|
'crmentity:smownerid:assigned_user_id:HelpDesk_Assigned_To:V'),
|
||
|
|
||
|
Array('quotes:subject:subject:Quotes_Subject:V',
|
||
|
'quotes:quotestage:quotestage:Quotes_Quote_Stage:V',
|
||
|
'quotes:potentialid:potential_id:Quotes_Potential_Name:I',
|
||
|
'quotes:accountid:account_id:Quotes_Account_Name:I',
|
||
|
'quotes:validtill:validtill:Quotes_Valid_Till:D',
|
||
|
'crmentity:smownerid:assigned_user_id:Quotes_Assigned_To:V'),
|
||
|
|
||
|
Array('quotes:subject:subject:Quotes_Subject:V',
|
||
|
'quotes:potentialid:potential_id:Quotes_Potential_Name:I',
|
||
|
'quotes:accountid:account_id:Quotes_Account_Name:I',
|
||
|
'quotes:validtill:validtill:Quotes_Valid_Till:D',
|
||
|
'crmentity:smownerid:assigned_user_id:Quotes_Assigned_To:V')
|
||
|
);
|
||
|
|
||
|
$cvstdfilters = Array(Array('columnname'=>'crmentity:modifiedtime:modifiedtime:Leads_Modified_Time',
|
||
|
'datefilter'=>'thismonth',
|
||
|
'startdate'=>'2005-06-01',
|
||
|
'enddate'=>'2005-06-30'),
|
||
|
|
||
|
Array('columnname'=>'crmentity:createdtime:createdtime:Accounts_Created_Time',
|
||
|
'datefilter'=>'thisweek',
|
||
|
'startdate'=>'2005-06-19',
|
||
|
'enddate'=>'2005-06-25'),
|
||
|
|
||
|
Array('columnname'=>'contactsubdetails:birthday:birthday:Contacts_Birthdate',
|
||
|
'datefilter'=>'today',
|
||
|
'startdate'=>'2005-06-25',
|
||
|
'enddate'=>'2005-06-25')
|
||
|
);
|
||
|
|
||
|
$cvadvfilters = Array(
|
||
|
Array(
|
||
|
Array('columnname'=>'leaddetails:leadstatus:leadstatus:Leads_Lead_Status:V',
|
||
|
'comparator'=>'e',
|
||
|
'value'=>'Hot'
|
||
|
)
|
||
|
),
|
||
|
|
||
|
Array(
|
||
|
Array('columnname'=>'account:account_type:accounttype:Accounts_Type:V',
|
||
|
'comparator'=>'e',
|
||
|
'value'=>'Prospect'
|
||
|
)
|
||
|
),
|
||
|
Array(
|
||
|
Array('columnname'=>'potential:sales_stage:sales_stage:Potentials_Sales_Stage:V',
|
||
|
'comparator'=>'e',
|
||
|
'value'=>'Closed Won'
|
||
|
)
|
||
|
),
|
||
|
Array(
|
||
|
Array('columnname'=>'potential:sales_stage:sales_stage:Potentials_Sales_Stage:V',
|
||
|
'comparator'=>'e',
|
||
|
'value'=>'Prospecting'
|
||
|
)
|
||
|
),
|
||
|
Array(
|
||
|
Array('columnname'=>'troubletickets:status:ticketstatus:HelpDesk_Status:V',
|
||
|
'comparator'=>'n',
|
||
|
'value'=>'Closed'
|
||
|
)
|
||
|
),
|
||
|
Array(
|
||
|
Array('columnname'=>'troubletickets:priority:ticketpriorities:HelpDesk_Priority:V',
|
||
|
'comparator'=>'e',
|
||
|
'value'=>'High'
|
||
|
)
|
||
|
),
|
||
|
Array(
|
||
|
Array('columnname'=>'quotes:quotestage:quotestage:Quotes_Quote_Stage:V',
|
||
|
'comparator'=>'n',
|
||
|
'value'=>'Accepted'
|
||
|
),
|
||
|
Array('columnname'=>'quotes:quotestage:quotestage:Quotes_Quote_Stage:V',
|
||
|
'comparator'=>'n',
|
||
|
'value'=>'Rejected'
|
||
|
)
|
||
|
),
|
||
|
Array(
|
||
|
Array('columnname'=>'quotes:quotestage:quotestage:Quotes_Quote_Stage:V',
|
||
|
'comparator'=>'e',
|
||
|
'value'=>'Rejected'
|
||
|
)
|
||
|
)
|
||
|
);
|
||
|
|
||
|
foreach($customviews as $key=>$customview)
|
||
|
{
|
||
|
$queryid = insertCustomView($customview['viewname'],$customview['setdefault'],$customview['setmetrics'],$customview['cvmodule']);
|
||
|
insertCvColumns($queryid,$cvcolumns[$key]);
|
||
|
|
||
|
if(isset($cvstdfilters[$customview['stdfilterid']]))
|
||
|
{
|
||
|
$i = $customview['stdfilterid'];
|
||
|
insertCvStdFilter($queryid,$cvstdfilters[$i]['columnname'],$cvstdfilters[$i]['datefilter'],$cvstdfilters[$i]['startdate'],$cvstdfilters[$i]['enddate']);
|
||
|
}
|
||
|
if(isset($cvadvfilters[$customview['advfilterid']]))
|
||
|
{
|
||
|
insertCvAdvFilter($queryid,$cvadvfilters[$customview['advfilterid']]);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function insertCustomView($viewname,$setdefault,$setmetrics,$cvmodule)
|
||
|
{
|
||
|
global $adb;
|
||
|
|
||
|
$genCVid = $adb->getUniqueID("customview");
|
||
|
if($genCVid != "")
|
||
|
{
|
||
|
|
||
|
$customviewsql = "insert into customview(cvid,viewname,setdefault,setmetrics,entitytype)";
|
||
|
$customviewsql .= " values(".$genCVid.",'".$viewname."',".$setdefault.",".$setmetrics.",'".$cvmodule."')";
|
||
|
//echo $customviewsql;
|
||
|
$customviewresult = $adb->query($customviewsql);
|
||
|
}
|
||
|
|
||
|
return $genCVid;
|
||
|
}
|
||
|
|
||
|
function insertCvColumns($CVid,$columnslist)
|
||
|
{
|
||
|
global $adb;
|
||
|
if($CVid != "")
|
||
|
{
|
||
|
for($i=0;$i<count($columnslist);$i++)
|
||
|
{
|
||
|
$columnsql = "insert into cvcolumnlist (cvid,columnindex,columnname)";
|
||
|
$columnsql .= " values (".$CVid.",".$i.",'".$columnslist[$i]."')";
|
||
|
//echo $columnsql;
|
||
|
$columnresult = $adb->query($columnsql);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function insertCvStdFilter($CVid,$filtercolumn,$filtercriteria,$startdate,$enddate)
|
||
|
{
|
||
|
global $adb;
|
||
|
if($CVid != "")
|
||
|
{
|
||
|
$stdfiltersql = "insert into cvstdfilter(cvid,columnname,stdfilter,startdate,enddate)";
|
||
|
$stdfiltersql .= " values (".$CVid.",'".$filtercolumn."',";
|
||
|
$stdfiltersql .= "'".$filtercriteria."',";
|
||
|
$stdfiltersql .= "'".$startdate."',";
|
||
|
$stdfiltersql .= "'".$enddate."')";
|
||
|
//echo $stdfiltersql;
|
||
|
$stdfilterresult = $adb->query($stdfiltersql);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function insertCvAdvFilter($CVid,$filters)
|
||
|
{
|
||
|
global $adb;
|
||
|
if($CVid != "")
|
||
|
{
|
||
|
foreach($filters as $i=>$filter)
|
||
|
{
|
||
|
$advfiltersql = "insert into cvadvfilter(cvid,columnindex,columnname,comparator,value)";
|
||
|
$advfiltersql .= " values (".$CVid.",".$i.",'".$filter['columnname']."',";
|
||
|
$advfiltersql .= "'".$filter['comparator']."',";
|
||
|
$advfiltersql .= "'".$filter['value']."')";
|
||
|
//echo $advfiltersql;
|
||
|
$advfilterresult = $adb->query($advfiltersql);
|
||
|
}
|
||
|
|
||
|
/*for($i=0;$i<count($filtercolumns);$i++)
|
||
|
{
|
||
|
$advfiltersql = "insert into cvadvfilter(cvid,columnindex,columnname,comparator,value)";
|
||
|
$advfiltersql .= " values (".$CVid.",".$i.",'".$filtercolumns[$i]."',";
|
||
|
$advfiltersql .= "'".$filteroption[$i]."',";
|
||
|
$advfiltersql .= "'".$filtervalue[$i]."')";
|
||
|
//echo $advfiltersql;
|
||
|
$advfilterresult = $adb->query($advfiltersql);
|
||
|
}*/
|
||
|
|
||
|
}
|
||
|
}
|
||
|
?>
|