]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - modules/Import/maps/ImportMapSalesforce.php
Release 6.5.0
[Github/sugarcrm.git] / modules / Import / maps / ImportMapSalesforce.php
1 <?php
2 if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3 /*********************************************************************************
4  * SugarCRM Community Edition is a customer relationship management program developed by
5  * SugarCRM, Inc. Copyright (C) 2004-2012 SugarCRM Inc.
6  * 
7  * This program is free software; you can redistribute it and/or modify it under
8  * the terms of the GNU Affero General Public License version 3 as published by the
9  * Free Software Foundation with the addition of the following permission added
10  * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
11  * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
12  * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
13  * 
14  * This program is distributed in the hope that it will be useful, but WITHOUT
15  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16  * FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more
17  * details.
18  * 
19  * You should have received a copy of the GNU Affero General Public License along with
20  * this program; if not, see http://www.gnu.org/licenses or write to the Free
21  * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
22  * 02110-1301 USA.
23  * 
24  * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
25  * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
26  * 
27  * The interactive user interfaces in modified source and object code versions
28  * of this program must display Appropriate Legal Notices, as required under
29  * Section 5 of the GNU Affero General Public License version 3.
30  * 
31  * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
32  * these Appropriate Legal Notices must retain the display of the "Powered by
33  * SugarCRM" logo. If the display of the logo is not reasonably feasible for
34  * technical reasons, the Appropriate Legal Notices must display the words
35  * "Powered by SugarCRM".
36  ********************************************************************************/
37
38 /*********************************************************************************
39
40  * Description: Holds import setting for Salesforce.com files
41  * Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
42  * All Rights Reserved.
43  ********************************************************************************/
44
45 require_once('modules/Import/maps/ImportMapOther.php');
46
47 class ImportMapSalesforce extends ImportMapOther
48 {
49         /**
50      * String identifier for this import
51      */
52     public $name = 'salesforce';
53         /**
54      * Field delimiter
55      */
56     public $delimiter = ',';
57     /**
58      * Field enclosure
59      */
60     public $enclosure = '"';
61         /**
62      * Do we have a header?
63      */
64     public $has_header = true;
65
66         /**
67      * Gets the default mapping for a module
68      *
69      * @param  string $module
70      * @return array field mappings
71      */
72         public function getMapping(
73         $module
74         )
75     {
76         $return_array = parent::getMapping($module);
77         switch ($module) {
78         case 'Contacts':
79         case 'Leads':
80             return $return_array + array(
81                 "Description"=>"description",
82                 "Birthdate"=>"birthdate",
83                 "Lead Source"=>"lead_source",
84                 "Assistant"=>"assistant",
85                 "Asst. Phone"=>"assistant_phone",
86                 "Mailing Street"=>"primary_address_street",
87                 "Mailing Address Line1"=>"primary_address_street_2",
88                 "Mailing Address Line2"=>"primary_address_street_3",
89                 "Mailing Address Line3"=>"primary_address_street_4",
90                 "Mailing City"=>"primary_address_city",
91                 "Mailing State"=>"primary_address_state",
92                 "Mailing Zip/Postal Code"=>"primary_address_postalcode",
93                 "Mailing Country"=>"primary_address_country",
94                 "Other Street"=>"alt_address_street",
95                 "Other Address Line 1"=>"alt_address_street_2",
96                 "Other Address Line 2"=>"alt_address_street_3",
97                 "Other Address Line 3"=>"alt_address_street_4",
98                 "Other City"=>"alt_address_city",
99                 "Other State"=>"alt_address_state",
100                 "Other Zip/Postal Code"=>"alt_address_postalcode",
101                 "Other Country"=>"alt_address_country",
102                 "Phone"=>"phone_work",
103                 "Mobile"=>"phone_mobile",
104                 "Home Phone"=>"phone_home",
105                 "Other Phone"=>"phone_other",
106                 "Fax"=>"phone_fax",
107                 "Email"=>"email1",
108                 "Email Opt Out"=>"email_opt_out",
109                 "Do Not Call"=>"do_not_call",
110                 "Account Name"=>"account_name",
111                 );
112             break;
113         case 'Accounts':
114             return array(
115                 "Account Name"=>"name",
116                 "Annual Revenue"=>"annual_revenue",
117                 "Type"=>"account_type",
118                 "Ticker Symbol"=>"ticker_symbol",
119                 "Rating"=>"rating",
120                 "Industry"=>"industry",
121                 "SIC Code"=>"sic_code",
122                 "Ownership"=>"ownership",
123                 "Employees"=>"employees",
124                 "Description"=>"description",
125                 "Billing Street"=>"billing_address_street",
126                 "Billing Address Line1"=>"billing_address_street_2",
127                 "Billing Address Line2"=>"billing_address_street_3",
128                 "Billing City"=>"billing_address_city",
129                 "Billing State"=>"billing_address_state",
130                 "Billing State/Province"=>"billing_address_state",
131                 "Billing Zip/Postal Code"=>"billing_address_postalcode",
132                 "Billing Country"=>"billing_address_country",
133                 "Shipping Street"=>"shipping_address_street",
134                 "Shipping Address Line1"=>"shipping_address_street_2",
135                 "Shipping Address Line2"=>"shipping_address_street_3",
136                 "Shipping City"=>"shipping_address_city",
137                 "Shipping State"=>"shipping_address_state",
138                 "Shipping Zip/Postal Code"=>"shipping_address_postalcode",
139                 "Shipping Country"=>"shipping_address_country",
140                 "Phone"=>"phone_office",
141                 "Fax"=>"phone_fax",
142                 "Website"=>"website",
143                 "Created Date"=>"date_entered",
144                 );
145             break;
146         default:
147             return $return_array;
148         }
149     }
150         
151         /**
152         * @see ImportMapOther::getIgnoredFields()
153      */
154         public function getIgnoredFields(
155                 $module
156                 )
157         {
158                 return array_merge(parent::getIgnoredFields($module),array('id'));
159         }
160 }
161
162
163 ?>