Content Management with Brick River begins with an understanding of Content, Contacts, and Views. Most data driven pages retrieve information stored in Brick River as Content or Contacts records.
Those records are defined and organized with Views.
Brick River Administrators can define any type of custom Content or Contacts using the View Editor window.
For example: To create Knowledge Base articles for this website, a developer created a custom View to define a new type of Content called "Knowledge Base Articles". Authors could then open the Content Menu in the Web Console to create and edit "Knowledge Base Articles".
Brick River uses tables in a SQL Server database to store various data for your website(s). Virtually all work to create and manipulate site content involves two tables: Content and Contacts.
There are a handful of other tables that you may encounter - but everything a developer needs to know about working with Tables, Records, and Views can be learned by working with Content and Contacts.
All Tables in Brick River use a 'TableId' which matches the table's common name. This TableId will appear often in Razor Helper parameters (tableId: "Content") and XML attributes (TableId="Contacts").
"Contacts" are records that represent a person, place, or thing that your site needs to keep track of. Contact records may include employees, volunteers, event registrants, conference rooms, company cars, committees, sponsors, etc.
"Content" records represent ideas and items of information that your site needs to present to your audience. Content records may include news articles, meeting minutes, blog posts, photo galleries, event descriptions, barbecue recipes, etc.
Brick River Views both define the content of Contacts and Content and organize the display of records in the Web Console.
For example, if your site will use Blog Posts created by Authors
Views will define:
Brick River Views include:
Out of the box, Brick River provides four Content Views (Blog Posts, Events, Features, News) and four Contacts Views (Authors, People, Email Registrants, All Contacts). Open any of these Views and click the New button to create a new record using the data form associated with that View.
With no customization to the system you can create Contacts and assign them Types of 'Author' or 'People' (or both). Using the Blog Posts View you can compose a post and link it to an Author (only a Contact of Type = Author can be the author of a post). Open the News View and you can compose a News article (a Contact of Type = Person or Author can be the author of a news article).
You will find some valuable uses for these built in Views, but your site will largely be powered by your Custom Views. You will create views:
Brick River Views are defined by sets of XML elements and attributes that our data engine evaluates to manipulate the underlying database table.
Administrators can view and modify these XML elements using the View Editor Window.
Open the Admin menu and click the </Views> link to open a list of the system's Custom views. Out of the box, there are no Custom Views and unmodified System views are not included on the screen. The only way to open the View Editor is to customize a View.
The following example uses a single XML attribute to customize Organizations - one of the built in System Views. Out of the box, this view is not presented to users on the Contacts menu. This example makes it visible.
Open the Admin menu and click the </>View link. Click the New button and answer the question, "Why do you want to create a new view?"
Select "I'd like to customize an existing view."
Click the Organizations (Contacts) link to open the View Editor.
Important Features of the View Editor are:
1 the Document map button provides a shortcut to remove fields and groups of fields from the View. For example, if you are creating a custom Contacts type of "Vehicles" you could use Document map to remove all of the mailing address fields from the View.
2 the View Base button displays the View Base XML - the "Base" definition for the View.
3 the XML Overlay field - the field where XML is entered to customize the definition of the Field.
4 the rest of the window is a preview fields as they will appear on the data entry form defined by the View. This preview will refresh as lines of XML are added to the XML Overlay.
Click the View Base button to review the View Base XML. Note that on the top line, the parent element <Table> contains the attribute: Invisible="true"
Close the View Base window.
In the View Overlay, add to the <View ID> tag the attribute: Invisible="false."
Click Save and Return.
Open the Contacts menu and you can now navigate to the Organizations view and use the New button to add The United Nations to your Contacts list (or the Green Bay Curling Club).
In the customized Organizations View - the XML overlay enhances and overwrites elements in the View Base XML - in this case overwriting the Invisible="true" attribute with Invisible="false".
<View Id="Organizations" Table="Contacts" Invisible="false" />
Many Brick River systems use multiple Custom Views to control user access and define records.
The article, View XML, explains the order of inheritance when multiple Views customize the same View Base XML.
The article, XML Overlays, introduces all of the XML elements available to modify and extend View Base XML.