Skip to content

Commit d1ce521

Browse files
Fix on Upload Lead using JSON API
1 parent a1798c6 commit d1ce521

File tree

1 file changed

+26
-13
lines changed

1 file changed

+26
-13
lines changed

goUploadLeads/goUploadMeJSON.php

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535
}else{
3636
$jsonData = $jsonDataPost;
3737
}
38-
3938
$list_id = $jsonData['list_id'];
4039
$leads = $jsonData['leads'];
4140
$baseFields = array("lead_id", "entry_date", "status", "vendor_lead_code", "list_id", "gmt_offset_now", "phone_code", "phone_number", "title", "first_name", "middle_initial", "last_name", "address1", "address2", "address3", "city", "state", "province", "postal_code", "country_code", "gender", "date_of_birth", "alt_phone", "email", "security_phrase", "comments", "entry_list_id");
@@ -50,7 +49,6 @@
5049
foreach ($sqlCF as $fresults){
5150
$customFields[] = $fresults['column_name'];
5251
}
53-
5452
foreach($leads as $lead){
5553
$leadsFields = $lead['fields'];
5654
$insertFields = array();
@@ -64,17 +62,17 @@
6462
$postal_code = '';
6563
foreach($leadsFields as $fields){
6664
if(in_array($fields['FieldName'], $baseFields) && $fields['FieldType'] != "custom"){
67-
$insertFields[] = "`".$fields['FieldName']."`";
65+
$insertFields[] = $fields['FieldName'];
6866
if($fields['FieldName'] == "phone_code"){
6967
if(!empty($fields['FieldValue'])){
70-
$insertValues[] = '"'.$fields['FieldValue'].'"';
68+
$insertValues[] = $fields['FieldValue'];
7169
$phone_code = $fields['FieldValue'];
7270
}else{
73-
$insertValues[] = '"1"';
71+
$insertValues[] = 1;
7472
$phone_code = '';
7573
}
7674
}else{
77-
$insertValues[] = '"'.$fields['FieldValue'].'"';
75+
$insertValues[] = $fields['FieldValue'];
7876
}
7977

8078
if($fields['FieldName'] == "state"){
@@ -102,8 +100,8 @@
102100
}
103101
}else{
104102
if(in_array($fields['FieldName'], $customFields)){
105-
$insertCustomFields[] = "`".$fields['FieldName']."`";
106-
$insertCustomValues[] = '"'.$fields['FieldValue'].'"';
103+
$insertCustomFields[] = $fields['FieldName'];
104+
$insertCustomValues[] = $fields['FieldValue'];
107105
}
108106

109107
}
@@ -115,10 +113,12 @@
115113
$USarea = substr($phone_number, 0, 3);
116114
$gmt_offset = lookup_gmt($astDB, $phone_code,$USarea,$state,$LOCAL_GMT_OFF_STD,$Shour,$Smin,$Ssec,$Smon,$Smday,$Syear,$postalgmt,$postal_code,$owner);
117115
if(strpos($insertFields, 'gmt_offset_now') !== false){
118-
$insertFields[] = "`gmt_offset_now`";
119-
$insertValues[] = '"'.$gmt_offset.'"';
116+
$insertFields[] = "gmt_offset_now";
117+
$insertValues[] = $gmt_offset;
120118
}
121119

120+
// ARRAY TO STRING
121+
/*
122122
// Base fields and values
123123
$insertFields = implode(",", $insertFields);
124124
$insertValues = implode(",", $insertValues);
@@ -135,9 +135,22 @@
135135
$phone_code_field = ", `phone_code`";
136136
$phone_code_value = ", '1'";
137137
}
138-
138+
*/
139+
140+
/* RAWQUERY INSERT FAIL
139141
$insertListQuery = "INSERT INTO vicidial_list (`list_id`, `status`, $insertFields{$phone_code_field}) VALUES ('$list_id', 'NEW', $insertValues{$phone_code_value});";
140-
$resultInsertList = $astDB->rawQuery($insertListQuery);
142+
$resultInsertList = $astDB->rawQuery($insertListQuery) or die($astDB->getLastQuery());
143+
*/
144+
$fixData = array();
145+
for($i = 0; $i < count($insertFields); $i++){
146+
$fixData[$insertFields[$i]] = $insertValues[$i];
147+
}
148+
$defaultData = array(
149+
"list_id" => $list_id,
150+
"status" => "NEW",
151+
);
152+
$insertData = array_merge($defaultData, $fixData);
153+
$resultInsertList = $astDB->insert("vicidial_list", $insertData);
141154
if($resultInsertList){
142155
//true
143156
array_push($resultOfInserts, "ok");
@@ -174,4 +187,4 @@
174187
$apiresults = array("result" => "success", "message" => "Uploading Leads success!");
175188
$log_id = log_action($goDB, 'UPLOAD', $log_user, $log_ip, "Successfully uploaded leads on List ID $list_id", $log_group);
176189
}
177-
?>
190+
?>

0 commit comments

Comments
 (0)