query($sql); $request = $data->request; /** * Сохранение api ключа * */ if($request == 'save_key'){ $key = $data->api_key; $agency_id = (int)$data->agency_id; $unisender = new UnisenderClass($pdo, $agency_id); $unisender->save_key($key); $uni=new UnisenderApi($key); $result = json_decode($uni->getLists()); //var_dump($result); if(isset($result->result)) echo 'true'; else echo 'false'; } /** * Получение ключа */ if($request == 'get_key'){ $agency_id = (int)$data->agency_id; $unisender = new UnisenderClass($pdo, $agency_id); $key = $unisender->get_key(); echo $key; } /** * fff */ if($request == 'open_campaigns'){ $agency_id = (int)$data->agency_id; $all = $data->all; $clients_ids = $data->clients_ids; $type = $data->type; $unisender = new UnisenderClass($pdo, $agency_id); $result = $unisender->get_list_client($type, $all, $clients_ids); echo json_encode($result, JSON_UNESCAPED_UNICODE); exit(); } if($request == 'create_api_list'){ $agency_id = $data->agency_id; $title = $data->title_list; $clients = $data->clients; $fields_name = ['email', 'phone','email_status', 'email_list_ids']; $fields = array(); $field = array(); $unisender = new UnisenderClass($pdo, $agency_id); $key = $unisender->get_key(); $uni=new UnisenderApi($key); $list = json_decode($uni->createList(Array("title"=>$title))); foreach($clients as $i => $client){ $fields[$i][] = $client->email; $fields[$i][] = $client->phone; $fields[$i][] = 'active'; $fields[$i][] = $list->result->id; // $field[$i]['email'] = $client->email; // $fields['name'] = $clients->fio; } $result = json_decode($uni->importContacts(Array("field_names"=>$fields_name, "data"=>$fields))); $uni=new UnisenderApi($key); //$result = json_decode('{"result": {"id": 3}}'); echo json_encode($list, JSON_UNESCAPED_UNICODE); exit(); } if($request == 'get_api_templates'){ $result = array(); $agency_id = (int)$data->agency_id; $unisender = new UnisenderClass($pdo, $agency_id); $key = $unisender->get_key(); $uni=new UnisenderApi($key); $res = $uni->getTemplates(); $templats = json_decode($res, true); if(isset($templats['result'])){ foreach($templats['result'] as $template){ //var_dump($template); $result['templats'][] = array('code'=>$template['id'], 'name'=>$template['title']); $result['templats_api'][$template['id']] = $template; } } echo json_encode($result, JSON_UNESCAPED_UNICODE); exit(); } if($request == 'save_campaign'){ $agency_id = (int)$data->agency_id; $list_id = $data->list_id; $subject = $data->subject; $template_id = $data->template_id; $sender_email = $data->sender_email; $sender_name = $data->sender_name; $clients = $data->clients; $user_id = (int)$data->user_id; $unisender = new UnisenderClass($pdo, $agency_id); $key = $unisender->get_key(); $uni=new UnisenderApi($key); $message = json_decode($uni->createEmailMessage(Array("sender_name"=>$sender_name, 'sender_email'=>$sender_email, 'list_id'=>$list_id, 'subject'=>$subject, 'template_id'=>$template_id ))); // var_dump($message); if(isset($message->error)){ $result['error'] = 1; $result['mes'] = $message->error; } else { $message_id = $message->result->message_id; $result = json_decode($uni->createCampaign(Array('message_id'=>$message_id))); if(isset($result->result->campaign_id)){ $comment="Сделана рассылка «".$subject."»"; $sql_event = "INSERT INTO user_client_events (client_id, type, comment, from_id, user_id, calendar_view, campaign_id) VALUES "; $sql_event_part = ''; foreach($clients as $client){ $who_work = $user_id; if($client->who_work > 0){ $who_work = (int)$client->who_work; } if($sql_event_part != '') $sql_event_part .= ','; $sql_event_part .= "({$client->id}, 'comment', '{$comment}', {$user_id}, {$who_work}, 1, {$result->result->campaign_id})"; } if($sql_event_part != '') { $sql_event .= $sql_event_part; $pdo->query($sql_event); } } } echo json_encode($result); exit(); }