Приглашение в Календарь Google через отправку формы электронной почты Wordpress

Это скорее простой вопрос «да» или «нет» с надеждой, что кто-то может указать мне правильное направление.

В настоящее время я работаю над веб-сайтом на основе Wordpress для школы, который позволяет пользователям заполнять контактную форму (контактная форма 7) и выбирать дату, чтобы назначить встречу с директором школы. Эта отправка формы затем должна создать стандартное приглашение Календаря Google, чтобы принципал мог его принять.

По сути, вопрос в том, можно ли создать событие/приглашение календаря Google с помощью отправки формы с веб-сайта?

Очень признателен.


person Marcus Christiansen    schedule 27.07.2016    source источник
comment
где вы можете сделать эту работу ?? пожалуйста, если да, поделитесь своим подходом !!   -  person Herzlin    schedule 04.10.2018


Ответы (1)


Да, я думаю, что это возможно, но я не уверен, что вы можете сделать это с помощью контактной формы-7, так как я не знаком с ней. Таким образом, альтернативный способ — использовать Google Appscript и Google Forms.

Подпишитесь на это руководство, чтобы узнать, как это реализовать.

Вот фрагмент:

function onFormSubmit() {
  var eventObject = getFormResponse();
  var event = createCalendarEvent(eventObject);
}

function getFormResponse() {

  var form = FormApp.openById(GLOBAL.formId),
      responses = form.getResponses(),
      length = responses.length,
      lastResponse = responses[length-1],
      itemResponses = lastResponse.getItemResponses(),
      eventObject = {};
  for (var i = 0, x = itemResponses.length; i<x; i++) {
    var thisItem = itemResponses[i].getItem().getTitle(),
        thisResponse = itemResponses[i].getResponse();

    switch (thisItem) {
      case GLOBAL.formMap.eventTitle:
        eventObject.title = thisResponse;
        break;
      case GLOBAL.formMap.startTime:
        eventObject.startTime = thisResponse;
        break;
      case GLOBAL.formMap.endTime:
        eventObject.endTime = thisResponse;
        break; 
      case GLOBAL.formMap.description:
        eventObject.description = thisResponse;
        break;
      case GLOBAL.formMap.location:
        eventObject.location = thisResponse;
        break;
      case GLOBAL.formMap.email:
        eventObject.email = thisResponse;
        break;
    } 
  }
  return eventObject;
}
person noogui    schedule 28.07.2016