RiSE
The RiSE Development Platform is the foundation of the entire iMIS system. With RiSE you can modify and extend all aspects of the iMIS system: from the back-end Staff administrative site, to constituent self-service web pages, without affecting the product upgrade path.
Plus, RiSE has the flexibility to work with your existing content management system (CMS) or even the power to manage your entire web presence.
- Customization - Easily modify and create queries, fields, menus, screens, and web pages.
- Integration - Instantly access iMIS data and integrate to external applications.
- Administration - Simplify security administration through centralization and automation of user identity and access rights.
- Internationalization - Translate fields, menus, screens, and web pages to multiple languages to expand your global reach.
The look and feel of an iMIS RiSE website comprises the general page layout, colors, graphics, and fonts used for all rendered pages in the website. This look and feel is defined by the design's template and theme. Templates and themes are basic elements of ASP.NET websites, and detailed information about developing and customizing templates and themes can be found in Microsoft developer resources for ASP.NET development such as the Microsoft Developer Network.
If you want to customize one of the out-of-the-box themes, we recommend that you start with a copy, so that your changes are preserved when you upgrade. For more information, see Using out-of-the-box themes.
If you prefer to use your own hand-built templates and themes, you have a few options. See Creating custom templates and themes using code or Creating RiSE-built website templates for more information.
Navigation areas are special ASI-developed controls used in master pages that create automated lists of navigation links. All ASI-developed master pages are designed to support the four default navigation areas and the breadcrumb area shown in the following diagram, but you can define up to 30 navigation areas in the system and add the corresponding elements to support those navigation areas to any master page.
The breadcrumb area appears automatically on every site, but you must specify exactly which navigation areas to enable globally for use by the navigation items in the website's sitemap. The four default navigation areas provided with iMIS RiSE are shown in the following diagram.
When a navigation area is globally enabled in the definition for an iMIS RiSE website, a checkbox representing that navigation area becomes available for selection when you are defining navigation items in the sitemap for the website. Whether a particular navigation item actually appears in one of the enabled navigation areas of the website is determined by the specific navigation area checkboxes you select for that navigation item when you are defining it.
All master pages fully support the breadcrumb area and all four of the default navigation areas. However, if you modify the definition of any of the default navigation areas in iMIS RiSE, you might need to revise the master pages to support the changes that you have made.
To integrate your own hand-built master pages with iMIS RiSE, if you plan to use the breadcrumb area and navigation areas available to iMIS RiSE websites, you must ensure that you add the appropriate elements to your master page to support them. Similarly, if you define additional navigation areas in iMIS RiSE, you must modify your master pages to support these additional navigation areas.
Note: The controls that display the Logon/Logoff link and the icon that toggles Easy Edit mode, both of which appear by default at the right of the Auxiliary navigation area, are not a part of the Auxiliary navigation area, so they are unaffected if you remove or move the location of this navigation area.
When you create or change an existing iMIS RiSE website, navigation item, content folder, content record, or any other iMIS RiSE definition object in the Document system and click Save, nothing happens except that iMIS stores a Working version of that object in the iMIS database. It is only when you click Publish that iMIS actually implements the new version of the definition object, replacing the previous Published version of the object with this new Working version and then marking it with a status of Published to indicate that it is now the current active version.
When you publish the various types of iMIS RiSE definition objects, different things happen depending on what type of object is published.
Note: The following descriptions generally apply to the publishing option Publish Working Items Only. If you select either of the other publishing options, then objects in any state are published.
- Websites – No downstream processes happen other than iMIS RiSE creates a corresponding sitemap if it is an entirely new website, so that you have a structure into which you can add navigation items. If you have developed your own custom master pages and themes, the people in your organization who perform website administration should have already placed the necessary files on the servers that will host the website.
- Navigation items – When a browser first requests a website URL from the iMIS application server or an external web server that has been prepared to host iMIS RiSE websites, the iMIS RiSE code on that server examines the Published sitemap object in the iMIS database and then builds a corresponding in-memory representation of the sitemap's navigation structure. A timer process then rechecks the iMIS database every five minutes by default to determine whether a newer version of the sitemap object has been published, and, if so, the iMIS RiSE code on that server rebuilds its in-memory sitemap structure for that website.
- Content folders – No downstream processes happen other than iMIS checks the status of all descendant content records and sub folders and if iMIS finds any that are currently in a Working state, iMIS automatically publishes them as well. This enables you to spend several days working on a major change to your website content that encompasses many content records, and then publish all those changes in one action by publishing a content folder high enough in the folder hierarchy to cover all the content records that are in a Working state.
- Content records – iMIS checks the value of the Publish on Servers field in the parent content folder to determine which publishing servers should handle the publishing of the content record. iMIS then creates a separate publishing request in the iMIS database for each associated publishing server. The initial polling of data happens only when the AsiScheduler starts. After that, changes in the database trigger a PUSH to AsiScheduler.
- Content layouts – No downstream processes happen. When you define a content record, iMIS populates the list of available Page Layouts by examining all the Published versions of content layout objects in the iMIS database.
- Content types – No downstream processes happen. When you define a content record, iMIS examines the Published content type objects in the iMIS database to determine how to display the corresponding content item when added to the content record.
- Tagged list formats – No downstream processes happen. When you add a ContentTaggedList content item to a content record, iMIS populates the list of available List Formats by examining all the Published tagged list format objects in the iMIS database.
Note: You can change this default five-minute polling interval if desired, but be aware that each polling process consumes a small amount of system resources so there is a performance tradeoff in specifying a more frequent polling interval. To change the polling interval, edit the value of the Sitemap.CachePeriod key (expressed in minutes) in the <SystemParams> declaration in the web.config file for the iMIS application (IIS application \iMIS).
If you are not self-hosted, you must contact your host for assistance modifying web.config files.
Changes made to the Access Settings of a content folder that are applied to all descendants are saved to the Published descendant content records without the need to re-publish each record. Security checks to determine whether the rendered version of a content record should be served to the requesting browser are performed by examining the current Access Setting values of the Published content record object in the iMIS database.
If so, the publishing service examines the Published content record object in the iMIS database and then renders a corresponding .aspx file and places that file in the appropriate location in the server's local file system so that IIS can serve that page to browsers that request the content record's corresponding navigation item link.
Note: You can change this default five-minute polling interval if desired, but be aware that each polling process consumes a small amount of system resources so there is a performance tradeoff in specifying a more frequent polling interval. To change the polling interval, edit the definition for the corresponding publishing server and specify the desired polling interval in the Frequency field.
Note: The iMIS RiSE configuration field CM.PublishingMaxNumOfAttempts (go to Settings > RiSE > Page builder configuration) determines how many times each publishing service will attempt to process a system publishing request before it flags the request as failed. This prevents overconsumption of system resources if there is a connection issue or other issue that is preventing the publishing service from successfully processing the request.
The Easy Edit feature enables you to browse, or surf, to update your content records in their rendered form. You can quickly open a web page's underlying content record (or even a specific content item within the content record) for editing. When you have saved your changes, you can continue surfing the website and making further content revisions as needed.
Full, Casual and Public users of iMIS can use the Easy Edit feature, provided they are members of at least one content authority group (CAG) and they have been granted the necessary Document system permissions on content records. This is the only way that Casual and Public users can define iMIS RiSE content.
User-defined fields (UDFs) in iMIS RiSE are created differently, and serve a very different purpose, than user-defined fields in iMIS contact records:
- The UDFs found in iMIS contact records enable you to collect custom information about a contact. These contact UDFs are not available for use in iMIS RiSE.
- The UDFs found in iMIS RiSE are primarily useful as a way to capture additional properties of the content in content records, and to provide a controlled list of search criteria for use in iMIS RiSE only. These iMIS RiSE UDFs can be used in three ways:
- As a value added to the keywords <META> element in the rendered page for the content record, which enables searches performed through the iMIS RiSE search engine (but not by typical external web-based search engines) to locate the content record by searching for this value. This behavior is controlled by the Use in Search? property of an iMIS RiSE UDF.
- As a search filter in AdvancedSearch content items, applied to the initial result set based on the tags and keywords specified in the search.
- As both filtering criteria and sorting criteria in ContentTaggedList content items. A date-oriented UDF can be used to filter the initial result set based on the chosen tags, and a different UDF of any type can be used to sort the the final result set.
Every UDF defined in iMIS RiSE is added as a new custom property to every content record, and can be displayed in a wide variety of formats, from a simple text field to a drop-down list, to a calendar control, to a set of radio buttons, and so on. In the advanced search panel rendered from an AdvancedSearch content item, the user-defined field appears exactly the same way that it does in content records. This enables iMIS RiSE website users to specify UDF values for advanced searches in the same manner that the UDF values are chosen when authoring content. For example, a date-oriented UDF will have a calendar control that makes it easy to select a date.
An iMIS RiSE website is slightly different from a Microsoft Internet Information Services (IIS) website. While the rendered output of an iMIS RiSE website provides a total website experience for visitors to the site, a single iMIS RiSE website can actually be hosted on multiple web servers even though you are only maintaining a single website in your iMIS RiSE environment. Within the internal structure of IIS, an iMIS RiSE website is usually maintained as a subset of the iMIS application, but you can configure IIS to host iMIS RiSE websites as individual IIS applications or even as individual IIS websites.