Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make it easier to embed Request for Information (RFI) forms within content. #3660

Open
trackleft opened this issue Aug 22, 2024 · 10 comments · May be fixed by #3999
Open

Make it easier to embed Request for Information (RFI) forms within content. #3660

trackleft opened this issue Aug 22, 2024 · 10 comments · May be fixed by #3999
Labels
enhancement New feature or request proposal Proposed change to how something works (usually larger or more fundamental than a feature request)

Comments

@trackleft
Copy link
Member

Motivation

Many colleges use Slate to help them gather information about their prospective students using embedded RFI Forms.

Is your feature request related to a problem? Please describe.

At the moment, embedding RFI forms within content is cumbersome and not user-friendly. This makes it difficult for content editors and administrators to incorporate forms seamlessly into their pages.

Proposed Resolution

Describe the solution you'd like

A user-friendly interface that allows easy embedding of RFI forms into content and managing them.

Describe alternatives you've considered

Using third-party embed codes or custom HTML blocks, which are less intuitive for non-technical users.

Roles and Permissions considerations

A clear and concise description of how each of the following roles would be impacted by this change:

  • Anonymous user: Should be able to view and submit RFI forms without issues.
  • Authenticated user: N/A
  • Content editor: Should have a simple interface to embed and configure RFI forms within content.
  • Content administrator: Might require additional controls or settings for form management.
  • Administrator: Should have full control over form embedding, settings, and permissions.

Additional context

image Added to page by embedding a Flexible Block . image Full HTML (Requires special permission) image
@trackleft
Copy link
Member Author

At the moment, the workaround is to create a flexible block. add a full HTML paragraph, Add the RFI embed HTML to the Full HTML paragraph, Embed the flexible block in the page you want the RFI to appear on.

@camikazegreen
Copy link
Contributor

Here is a similar example for embedding from Form Assembly (Trellis):

<script src="https://forms-a.trellis.arizona.edu/publish/118" data-qp-target-id="" defer></script>

with additional info here: https://help.formassembly.com/help/javascript-form-publishing

@ewlyman
Copy link
Contributor

ewlyman commented Oct 9, 2024

tl;dr: Suggest creating new QS paragraph type for script embeds, enabling Paragraphs Library and creating a supporting module with documentation and UI elements. Also, Slate forms break views that use Drupal AJAX in filters if they are on the same page.

online.arizona.edu uses embedded custom blocks referenced from fields in custom content types.

Embedded paragraphs is the preferred method in QS2, but normally these need to be re-created for each page. We can get around this by enabling Paragraphs Library, and presenting the paragraph creation form separately from the node creation from with a custom AZQS module.

Slate forms will break views that use Drupal AJAX for filters if they are embedded on the same page, so we probably want to document this for content editors/admins.

@djcelaya
Copy link
Contributor

@trackleft Would it be OK if I repurpose this issue to also include an RFI integration with Trellis? I imagine the implementation may be similar for both systems....or at least the user-facing requirements would probably be the same. Perhaps the actually loading of the Slate/Trellis form happens differently but is hidden from the site builder.

@djcelaya
Copy link
Contributor

An eventual need has arisen in the College of Health Sciences (COHS) regarding an RFI solution for “professional” academic programs. Professional programs, like the COHS’s MPAP and DPT, are not eligible for use in Slate but will find their RFI needs met by the Trellis team. Thus, we are interested in exploring a QS2-centric solution that handles the heavy lifting of embedding a form/RFI into a QS2 site. We would like to make this as simple as possible for non-technical site builders and are envisioning a block type or something similar that will accept perhaps a form ID, and will then contain appropriate logic to retrieve, build, and load the form in a controlled fashion. I think a block type may be the most appropriate as it can then be added to a region, paragraph, or page depending on the site’s design needs.

In addition to this site building experience improvement, we are hoping this can be implemented in a way that reduces collisions with other JS-powered features that may already be present on the site.

It seems likely that the form’s construction will still take place within its respective platform—Slate or Trellis—and the site builder will still be responsible for interacting with those organizations to produce their form ID/embed code/connecting key.

In our initial meeting with the Trellis team, we also discovered the FormAssembly module but have not done any further research into how this could inform the solution. FormAssembly is SalesForce’s form mechanism I believe, so this could impact or alter the Trellis side of things.

@joeparsons joeparsons added enhancement New feature or request proposal Proposed change to how something works (usually larger or more fundamental than a feature request) labels Oct 11, 2024
@trackleft
Copy link
Member Author

@trackleft Would it be OK if I repurpose this issue to also include an RFI integration with Trellis? I imagine the implementation may be similar for both systems....or at least the user-facing requirements would probably be the same. Perhaps the actually loading of the Slate/Trellis form happens differently but is hidden from the site builder.

Yes, that makes sense to me.

@joeparsons
Copy link
Member

Potentially related issue: #2693

@djcelaya djcelaya self-assigned this Oct 11, 2024
@djcelaya
Copy link
Contributor

Example form from Kara for testing: https://forms-a.trellis.arizona.edu/181?tfa_4=70152000001AJzRAAW (does not create data in production environment)

@djcelaya
Copy link
Contributor

djcelaya commented Oct 16, 2024

Per the AZ Digital discussion on 10/11, we should consider doing this as a media type rather than a block type (see Google Calendar embed support issue). We believe this approach may have significant advantages over the former approach due to how media is loaded and managed in Drupal...more investigation is likely needed though.

@ewlyman
Copy link
Contributor

ewlyman commented Oct 16, 2024

Question: does the Media Remote module enable sites building embedded forms locally (based on referenced JS), or does it assume iframes, or can it do both?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request proposal Proposed change to how something works (usually larger or more fundamental than a feature request)
Projects
None yet
5 participants