Tuesday, June 10, 2014

Publish a form for anonymous users on a public site in Office 365

In this article I will demonstrate how to design forms for public sites in Office 365 with help of Forms Designer and make them available for anonymous users. As an example, I will create a simple feedback form and place it onto the Contact Us page.

First, we need to create a list to store the requests from anonymous users. I've called it 'Requests' and configured with the following columns: Phone, Email and Message.

SharePoint List Columns

Ok, now I have to grant anonymous users a permission to add new items. Unfortunately, SharePoint Online doesn't provide an interface to achieve it but there is a third party tool that allows to manage anonymous access:
http://anonymous365.codeplex.com/

Upload the solution above to the catalog:
{your public site domain}/_catalogs/solutions/Forms/AllItems.aspx

Activate it. Next, make sure that the limit of server resources for your public site doesn't equal to zero in SharePoint admin center or expand the quota otherwise:

SharePoint Online Admin Center
SharePoint Site Resource Quota

Now, you can find 'Anonymous Access' button on the ribbon of the list:

SharePoint Online Anonymous Access

Open the Requests list, click 'Anonymous Access' and select 'Allow anonymous users to add items to this list' option. Now, when we've provided users with an access to add items, we can deactivate and remove Wsp365.Anonymous.wsp solution.

Next, lets create a 'Thank you' page where the user will be redirected after submission of the form. I've made a new publishing page with the following content: '​Thank you for your message. We will contact you soon.'

Almost done. Now, we need to design a form and publish it onto the Contact Us page. Start Forms Designer to design a new form: go to the Site Contents page, click Forms Designer app, choose Requests list in the drop-down and click Start:

Start Forms Designer

Here is my form:

SharePoint New Custom Forms

General settings:

SharePoint Form General Settings

Click Export button on the ribbon to save the form into a file. Open Contact Us page, turn it into Edit mode and insert the exported form:

SharePoint Public Form

Publish the page. If your form contains required fields, you should fill them in to pass the validation. Here is the result:

SharePoint Online Contact Us Form

With help of our JS-framework you can add extra validation for e-mail and phone number fields if required. Get more information on how to publish forms onto SharePoint pages:
http://www.youtube.com/watch?v=-Lj0dMB-Cww&hd=1
http://formsdesigner.blogspot.com/2014/01/publish-designed-form-to-any-page.html

Please, do not hesitate to leave your questions in the comments.

11 comments:

  1. Is it possible attach .doc files using this forms?

    ReplyDelete
    Replies
    1. Sure, you just need to put the Attachments field onto your form in Forms Desginer.

      Delete
    2. When I try to add attachment control on form its not shown on form for anonymous users.

      Delete
    3. Hi,
      Anonymous users do not see the ribbon, so you should add the toolbar to your form in the General settings of Forms Designer. It contains 'Attach File' button.

      Delete
  2. Hello, does it work with SharePoint Online Public site ? thank you

    ReplyDelete
    Replies
    1. Yes, the post describes how to publish a form on a public site in SharePoint Online e.g. contact form, request form, feedback form etc.

      Delete
  3. What will happen when they discontinue the Public site?

    ReplyDelete
    Replies
    1. In accordance with the official information, Microsoft will continue support public sites at least for two years for current customers and those who will activate this feature before it disappears. So we hope that public forms will continue working properly for existing customers.

      Delete
  4. Is it possible to add more custom fields, e.g. 20 more fields?

    ReplyDelete
    Replies
    1. If your form contains more than 70 fields, I'd recommend to split it into multiple forms. This is a SharePoint Online limit:
      http://sharepoint.stackexchange.com/questions/87998/column-number-limitations-on-custom-list-edit-form

      Delete
    2. Thanks Dmitry for the reply. I have 40-50 fields so that should work? I have few more questions as mentioned below:

      1. Can we use the forms for Form for Office 365 Public Website, so that anonymous users can submit the form

      2. Can we add validations to fields such as email validation

      3. Can we modify Post Submit message of form

      4. Can we add images to form and custom text above the form and also in the post submit message?

      5. Is there any trial available of this product?

      Delete