function deleteByButton($f, $searchFormValue) { $objResponse = new xajaxResponse(); if (is_array($f['ckb'])) { foreach ($f['ckb'] as $vaule) { $res_customer = astercrm::deleteRecord($vaule, 'diallist'); } } $searchContent = $searchFormValue['searchContent']; //搜索内容 数组 $searchField = $searchFormValue['searchField']; //搜索条件 数组 $numRows = $searchFormValue['numRows']; $limit = $searchFormValue['limit']; $html = createGrid($numRows, $limit, $searchField, $searchContent, $searchField, 'grid'); $objResponse->addAssign('grid', "innerHTML", $html); return $objResponse->getXML(); }
function skipDiallist($dialnumber, $diallistid) { global $locate; $objResponse = new xajaxResponse(); $row = astercrm::getRecordByID($diallistid, 'diallist'); if ($row['dialnumber'] != '') { $row['callresult'] = 'skip'; astercrm::deleteRecord($row['id'], "diallist"); $row['dialednumber'] = $phoneNum; $row['dialedby'] = $_SESSION['curuser']['extension']; $row['trytime'] = $row['trytime'] + 1; astercrm::insertNewDialedlist($row); } else { $objResponse->addAlert($locate->translate("Option failed")); return $objResponse; } $objResponse->addScript("xajax_clearPopup()"); $objResponse->loadXML(getPrivateDialListNumber($_SESSION['curuser']['extension'])); return $objResponse; }
/** * insert a record to customer_leads table * * @param $customerID (int) customer id fields. * @param $customerLead (varchar) customer_leads * @param $saveNote boolean if save note * @return $customerid (object) id number for the record just inserted. */ function insertNewCustomerLead($customerID, $customerLead, $saveNote) { global $db, $config; $sql = "SELECT * FROM customer WHERE id={$customerID}"; $f =& $db->getRow($sql); $query = "INSERT INTO customer_leads SET " . "customer='" . addslashes($f['customer']) . "', " . "customertitle='" . addslashes($f['customertitle']) . "', " . "website='" . addslashes($f['website']) . "', " . "country='" . addslashes($f['country']) . "', " . "address='" . addslashes($f['address']) . "', " . "zipcode='" . addslashes($f['zipcode']) . "', " . "city='" . addslashes($f['city']) . "', " . "state='" . addslashes($f['state']) . "', " . "contact='" . addslashes($f['contact']) . "', " . "contactgender='" . addslashes($f['contactgender']) . "', " . "phone='" . $f['phone'] . "', " . "phone_ext='" . addslashes($f['phone_ext']) . "', " . "category='" . $f['category'] . "', " . "bankname='" . addslashes($f['bankname']) . "', " . "bankzip='" . addslashes($f['bankzip']) . "', " . "bankaccount='" . addslashes($f['bankaccount']) . "', " . "bankaccountname='" . addslashes($f['bankaccountname']) . "', " . "fax='" . addslashes($f['fax']) . "', " . "fax_ext='" . addslashes($f['fax_ext']) . "', " . "mobile='" . $f['mobile'] . "', " . "email='" . addslashes($f['email']) . "', " . "cretime=now(), " . "groupid = " . $f['groupid'] . ", " . "last_note_id = 0, " . "creby='" . $f['creby'] . "'"; $res =& $db->query($query); $customerid = mysql_insert_id(); if ($customerid) { if ($saveNote) { $note_sql = "SELECT * FROM note WHERE id=" . $f['last_note_id'] . " "; $noteResult =& $db->getRow($note_sql); if (!empty($noteResult)) { $noteSql = "INSERT INTO note_leads SET `note`='" . addslashes($noteResult['note']) . "',`callerid`='" . addslashes($noteResult['callerid']) . "',`priority`=" . $noteResult['priority'] . ",`attitude`=" . $noteResult['attitude'] . ",`cretime`=now(),`creby`='" . $noteResult['creby'] . "',`customerid`=" . $customerid . ",`contactid`=0,`groupid`=" . $noteResult['groupid'] . ",`codes`='" . addslashes($noteResult['codes']) . "',`private`=" . $noteResult['private'] . " "; $note =& $db->query($noteSql); $last_note_id = mysql_insert_id(); //更新customer_leads对应数据的last_note_id值 $update_sql = "UPDATE customer_leads SET last_note_id={$last_note_id} WHERE id={$customerid} "; $res =& $db->query($update_sql); } } } if ($customerLead == 'move' || $customerLead == 'default_move') { astercrm::deleteRecord($customerID, 'customer'); astercrm::deleteRecords("customerid", $customerID, 'note'); //astercrm::deleteRecords("customerid",$customerID,'contact'); //$deleteSql = "DELETE FROM customer WHERE id=$customerID"; //astercrm::events($deleteSql); //$res =& $db->query($deleteSql); } return $customerID; }
function placeCall($campaignid) { global $config; $myAsterisk = new Asterisk(); $row =& astercrm::getDialNumber($campaignid); // 待拨号码为空 if (!$row) { return false; } //print_r($row); $id = $row['id']; $groupid = $row['groupid']; $campaignid = $row['campaignid']; $phoneNum = $row['dialnumber']; $trytime = $row['trytime']; $assign = $row['assign']; $pdcontext = $row['incontext']; $outcontext = $row['outcontext']; if ($row['inexten'] != "") { $pdextension = $row['inexten']; } else { if ($row['assign'] != "") { $pdextension = $row['assign']; } else { $pdextension = $row['dialnumber']; } } $res = astercrm::deleteRecord($id, "diallist"); $f['dialednumber'] = $phoneNum; $f['dialedby'] = $_SESSION['curuser']['username']; $f['groupid'] = $groupid; $f['trytime'] = $trytime + 1; $f['assign'] = $assign; $f['campaignid'] = $campaignid; $res = astercrm::insertNewDialedlist($f); $actionid = md5(uniqid("")); $strChannel = "local/" . $phoneNum . "@" . $outcontext . "/n"; if ($config['system']['allow_dropcall'] == true) { $myAsterisk->dropCall($actionid, array('Channel' => "{$strChannel}", 'WaitTime' => 30, 'Exten' => $pdextension, 'Context' => $pdcontext, 'Variable' => "{$strVariable}", 'Priority' => 1, 'MaxRetries' => 0, 'CallerID' => $phoneNum)); } else { $myAsterisk->config['asmanager'] = $config['asterisk']; $res = $myAsterisk->connect(); $myAsterisk->sendCall($strChannel, $pdextension, $pdcontext, 1, NULL, NULL, 30, $phoneNum, NULL, NULL, NULL, $actionid); } return true; }