Design

DotNetNuke Forms and Lists

The Forms and Lists module is a very versatile module that allows you to collect, save, and display data as you see fit. For example, you can create a list of staff, employee contact information, documents, articles, and many other things. You can control exactly what data is collected, and you can even control how it is displayed if you are willing to learn more about XML and XML transformations.

Let’s start with an example of creating a custom list of books for our reading library. First, add the Forms and Lists module to a new page. Then roll over the blue arrow and select “Form and List Configuration.”

The first portion of the configuration is defining the data you need to collect. To add “Book Title” select Add New Column. Then add in the column title “Book Title” and select the type as Text. Click the save icon to save this column.

You can use this same method to create columns for ISBN, author, book cover image, link to buy, etc. Using the Forms and Lists module you have many options of types, however the most commonly used are:

  • Date
  • Date and Time
  • Download
  • Email
  • Image
  • Rich Text
  • Text
  • URL

When adding the columns to the Forms and Lists you will also need to decide whether this information is required, whether it should display in the list view, and whether it is a searchable field with the core DotNetNuke search.

Using the Forms and List Configuration you can configure some additional options.

Rending Method Default Grid Table is a great default for Forms and Lists. You should also try the XSLT using built-in stylesheets and see if one of those models is a better display fit for you. You can always use the self made stylesheets but that will require a serious time investment to learn the ins and outs of doing custom XSLT.
Sorting Options Control which column should be sorted on by default and whether to sort ascending or descending.
Paging Control whether the data is displayed in pages or all on one screen
Filter Statement You can configure a default filter to limit the information displayed, which is useful to filter information out based on the logged in user or some other available token. (Advanced)
Show no Records until Search Select this to not show any data by default. It requires the user to search before showing any data.
Show Search Box This will allow you to enable some searching features.
Records Returned This allows you to control how many results are returned.

Module Settings

The Forms and Lists module also has some settings that can be customized at the module settings level. Including:

Users are only allowed to manipulate their own items. This allows a user to add items to the list but only allows them to edit their own items, not other users’ items.
Force CAPTCHA control during edit for Anonymous users. If you are going to allow non-logged in users the ability to add items to the list then require CAPTCHA.
Filter entry for markup code or script input. Note: filtering is always enabled for Anonymous users. Check this to have the module review all the fields for any malicious scripts that could have been added. This is a good security option to use especially if the public is allowed to add items.
Negate permission/feature “Display All Columns” for Administrators. This overrides the default permissions and shows all data to any Administrators of the website.
Negate permission/feature “Edit Also Restricted Columns” for Administrators. This overrides the default permissions to allow Administrators access to edit restricted columns as well.
Max Records per User If users of the website are allowed to add to the list you can set a maximum of how many they are allowed to add.

Executive's Guide to Web Development

80 pages of topics and tips to navigate your way to a better website.