private JObject CreateEnvelopeFromTemplateBodyTransformation()

in certified-connectors/DocuSignDemo/script.csx [200:243]


  private JObject CreateEnvelopeFromTemplateBodyTransformation(JObject body)
  {
    var templateRoles = new JArray();
    var signer = new JObject();
    var count = 0;

    foreach (var property in body)
    {
      var value = (string)property.Value;
      var key = (string)property.Key;

      if (key.Contains(" Name"))
      {
        signer["roleName"] = key.Substring(0, key.Length - 5);
        signer["name"] = value;
      }

      if (key.Contains(" Email"))
      {
        signer["email"] = value;
      }

      if (count % 2 != 0)
      {
        templateRoles.Add(signer);
        signer = new JObject();
      }

      count++;
    }

    var query = HttpUtility.ParseQueryString(this.Context.Request.RequestUri.Query);
    var newBody = new JObject()
    {
      ["templateRoles"] = templateRoles,
      ["templateId"] = query.Get("templateId")
    };

    var uriBuilder = new UriBuilder(this.Context.Request.RequestUri);
    uriBuilder.Path = uriBuilder.Path.Replace("envelopes/createFromTemplate", "/envelopes");
    this.Context.Request.RequestUri = uriBuilder.Uri;

    return newBody;
  }