Display all submissions of a logged on user
This feature is part of the Visforms Subscription and not available in the free Visforms version..
The Visforms Subscription will add a new menu item type to your Visforms installation - the type "Visforms >> My Submissions". You can use this menu item type, if you want to displayed all submissions which the currently logged in user has made for all forms, in one list.
Especially if you create a custom web application with Visforms, where users can edit their own data und where a set of forms build a unit, this feature is very useful.
The view "My Submissions" is on way how you can display user input in frontend with Visforms. If you want to learn more about the different ways Visforms provide you to publish data in frontend please check out this overview: Display user inputs in frontend - Overview
Display "My Submissions"
- Create a new menu item
- Select the menu item type "My Submissions"
- Set standard menu options like title, alias, access level, language and save the menu item
You should right away view a list of your form submission, if you log in to the frontend of your website and select the newly created menu item. Without further configuration of the menu item, the list may be a bit more simple than the one dislayed in the example image at the bottom of this page.
Options to further adjust record set selection
There are some menu options which allow you to further adjust the record set selection to you needs. You'll find these option in the menu konfiguration tab "Form Data Display Options".
This options does exactly what it's name promises. Set it to "yes" an only published record sets of the logged in user will be displayed. Set it to "no" and the list in the frontend will display published and unpublished record sets of the user.
Editable Record Sets Only
It depends on the ACL settings of the user group of the logged in user, which record sets a user can edit. Thus setting this option to "yes" will have different results for different users depending on what the user can do and what the user can't do.
If a user can edit own data and can edit data state (can publish/unpublish record sets), they will see published record sets as well as unpublished (unless you have not set the option "Published Only" to yes). If a user can edit own data but has no permission to edit the data state, they will only see published records. If a user cannot edit own data, no record sets are displayed at all.
Adapt List Layout
If you have created a couple of forms with Visforms these forms have nothing in common in the first place. Each form and each field can be created and set up totally individually. Therefore, without further settings, the list "MySubsmissions" only displays the following columns. (See image further below).
- Column with edit link, that redirects to the edit view for this record set. This link is, of course, only displayed, if a user has permission to edit the record set.
- Column with state information (published/unpublished) This column is only displayed, if the option "Published Only" is set to "no". If a user has the permission to edit the data state, this is possible here, too.
- Form Title
A very typical use case of a small web acpplication build with Visforms is, that there is a set of forms which belong together and which a logged in user can submit several times. The set comprises all forms that are necessary for one specific use in the use case. Usually there is one or more fields (for example a field named clientid) which is available in each form and which allows to tell, which submissings of the forms belong together.
You can display such "common" field(s) which are available in each form, with the list of "My Submissions". You have to create one or more "common" field(s) in each form first. "Common" is not a field property but just means, that the fields have the same name and the same field type in each form!
Enter the field name of your common field in the input "Common fields" in the menu configuration. If you have more than on common field, just seperate the field names with komma. For each common field, a new column is added to the "My Submissions" list. (In the example below "select" is the common field).
This will add a search bar at the top of the list view.
Technically the list "My Submissions" is an HTML table. You can use this option to add a custom class attribute to this table in order to style the table with custom CSS. (i.e. the bootstrap classes "table table-striped table-condensed")
This will add a column to the list view, where the creation date of the record set is displayed. If you set this option to yes, a new option pops up, where you can choose whether to display the creation time with the date or not.
Display Modfied at
This will add a column to the list view, where the modification date of the record set is displayed. If you set this option to yes, a new option pops up, where you can choose whether to display the modification time with the date or not.
The data list is sorted by the form title as default. Alternatively you can sort the data by the creation date or the modification date using the Option "Sort data by field".
Sort table by
Tha data list is sorted in ascending order by default. You can change the sort direction
Display Counter Column
This will add a column with a record set counter at the front of each line.
Example of "My Subsmissions" view in frontend
Visforms makes a point of protecting your data. If you display user inputs in frontend, using a menu item of type "Visforms >> Form data" or the "Content Plugin Data View", you have to actively set an option in the form configuration, that allows the display of data in frontend. Which fields are displayed in the frontend views, then, is restricted by setting of the field configuration. This is necessary, because due to the way Joomla! works it is out of the box possible to display information (data) directly, if you know the correct Url and just enter this Url directly into your browser.
Please note, if you display data with "My Submissions" it is not necessary to enable the "Allow data view in frontend" option in the form configuartion. On the contrairy, please set this option to "no". This will make sure, that only a logged user can see the data and that they truely can only see ther own data. Using the direct Url (option=com_visforms&view=mysubmissions) in order to view "My Submissions" is only possible if a menu item of type "My Submissions" exists.. This means that you always have to create such a menu item, if you want your users to be able to view there own submission.
If a menu item of type "My Submissions" exists, it is possible to call this view using the url directly. If the view is called using a direct url and this url has no url parameter "Itemid" or the itemid is not a menu item of type "Visforms >> My Submissions", Visforms will always use the most restrictive settings for the record set selection (It will only display published record sets which the user has permission to edit).
If the view is called with the properly, wiht an Itemid of a menu item of type "My Submissions" the page is displayed according to the settings of this menu item, of course.