Modifying Other Application Settings


This section describes other application settings that can be configured in the <SiteSettings> element of the Cartella.config file.

To modify other application settings:
  1. Navigate to [Site_Root].
  2. Open Cartella.config in a text editor.
  3. Locate the <add> elements with the following @name values that you'd like to modify, then provide the appropriate values.
    • Folios on the Home View
      Name ValueDescriptionParent NodeDefault
      PagingSizeDetermines how many folios display on the home view.<SiteSettings><add name="PagingSize" value="10"/>
      Note
      PagingSize takes a numeric value.
    • Multi-thread Email Processing

      To speed processing, you can add background task queue threads.

      Name ValueDescriptionParent NodeDefault
      TaskQueueWorkersCountDetermines how many background threads are created. <ServerSettings><add name="TaskQueueWorkersCount" value="5"/>
      Note
      If your server CPU has multiple cores, you can increase the numeric value of TaskQueueWorkersCount to accommodate additional threads.
    • Cartella Connection Strings
      Name ValueDescriptionParent NodeDefault
      DefaultConnectionMapping connects Cartella instance to database.<ServerSettings><add name="DefaultConnection" value="MSSQL2005"/>
      DefaultAssetConnection Mapping connects Cartella assets to database.<AssetSettings><add name="DefaultAssetConnection" value="MSSQL2005_Asset"/>
      Note
      In most cases. there is no need to change these values after installation.
    • Temporary Files
      Name ValueDescriptionParent NodeDefault
      FileUploadTemporaryLocationTemporary location of saved assets. <FileUploadTemporaryLocation>

      <add name="FileUploadTemporaryLocation" value="[Drive]\[Site_Root]\app_data\"/>

      FileUploadTemporaryFileExpirationDelay Determines how long, in seconds, temporary files can remain in the temporary location.<FileUploadTemporaryLocation>

      <add name="FileUploadTemporaryFileExpirationDelay" value="6000000"/>

      Note
      The default value of FileUploadTemporaryFileExpirationDelay is the equivalent of nearly 10 weeks, where each week is 604,800 seconds. A day is 86,400 seconds. This value should be at least as long as a typical session so that temporary assets don’t expire before a user logs off.
    • Forum Rating System
      Name ValueDescriptionParent NodeDefaultPossible Values
      ForumRatingType Determines the rating system for forum items.<ServerSettings>

      <add name="ForumRatingType" value="average"/>

      • average
      • cumulative
      Note

      A value of average specifies a one-to-five star rating system. A value of cumulative specifies thumbs-up-thumbs-down voting. This setting is applied to all forums in the instance.

    • Sharing Levels

      Logged-in users can set the sharing level of items that they create. For example, a logged-in user can choose to make a blog post public, or to share it only with a certain group. By changing the value of DefaultEntityShareLevelID, you can change the default sharing setting.

      If the Cartella license key allows non-seated or logged-out users to create content, an anonymous user can create an item. In this scenario, the anonymous user is by default not allowed to set the item’s sharing level to private or to specific users, because the anonymous user would not be able to see the item. This sharing level is determined by the numeric value of AnonymousEntityShareLevelID.

      Name ValueDescriptionParent NodeDefaultPossible Values
      DefaultEntityShareLevelIDDetermines the sharing level of for groups of logged in users.<ServerSettings>

      <add name="DefaultEntityShareLevelID" value="2"/>

      • 1= Inherited
      • 2=Public Viewing
      • 3=All logged in users
      • 4=Only specified users/groups
      • 5=Only creation admin, folio admin, and systems admin
      • 6=Only creation user listed in connection credentials
      AnonymousEntityShareLevelIDDetermines the sharing level of for anonymous users.<ServerSettings>

      <add name="AnonymousEntityShareLevelID" value="2"/>

      • 1= Inherited
      • 2=Public Viewing
      • 3=All logged in users
      • 4=Only specified users/groups
      • 5=Only creation admin, folio admin, and systems admin
      • 6=Only creation user listed in connection credentials
      Note
      The numerical value of DefaultEntityShareLevelID corresponds to the ID of the sharing level in the database for logged-in groups. In order to determine the value for a given group, you need to run a SQL script. (A sample script has been provided below.) The default sharing value is 2 (public), and Ingeniux recommends leaving it at this setting.
      SELECT [ID]
            ,[ID_EntityShareLevel]
            ,[ID_Group]
        FROM [DB Name].[dbo].[Table_EntityShareLevels_To_Groups]
        WHERE ID_Group = groupid
      Note
      The numerical value of AnonymousEntityShareLevelID corresponds to the ID of the sharing level in the database anonymous groups. You can set the sharing value here, and anonymous users will not be able to change it.
      Important

      In certain scenarios, such as large sites where most content is public, administrators may want to hide sharing levels completely for certain entities. You can turn off sharing levels for individual Cartella entities in the <EntityTypeSettings> section of Cartella.config.

      <EntityTypeSettings>
          <clear />
              <add name="BlogPost" 
              permissionable="true" 
              canOwnCategories="true" 
              canOwnGroups="true" 
              categorizable="true" 
              customShareLevel="false" 
              readOnlyByDefault="false" 
              isLockedByDefault="false" 
              autoApproveByDefault="false" 
              useHtmlComments="false" 
              commentingAvailable="true" />
      

      For each type of entity (defined in the @name attribute) you can disable the sharing-level user interface by setting the @customShareLevel attribute to false. In the example above, the interface has been disabled for blog posts. Users can’t change the sharing level of blog posts, and it remains set to the value of @DefaultEntityShareLevelID.

    • Command Timeout

      In certain situations, an unusually high volume of database queries could cause the Cartella database to exhibit slowed response times. In such situations, the Cartella API can throw an exception that alerts users of an issue.

      Name ValueDescriptionParent NodeDefault
      CommandTimeOut Determines how many seconds the API waits for a database call to return before throwing an exception.<ServerSettings>

      <add name="CommandTimeOut" value="90"/>

    • Scripts to Compress

      The Cartella instance installation contains a folder called ScriptsToCompress, typically in a directory path like this: C:\inetpub\wwwroot\[SITE]\ScriptsToCompress.

      Name ValueDescriptionParent NodeDefaultPossible Values
      MinifyScriptsDetermines if the scripts in ScriptsToCompress folder are compressed.<ServerSettings>

      <add name="MinifyScripts" value="true"/>

      • true
      • false
      Important

      The value should be set to true for production sites. When set to true, the contents of the ScriptsToCompress folder is compressed to help pages load faster. If the value is set to false, uncompressed scripts are sent to the client, which can be useful for debugging. You can add your own scripts to the ScriptsToCompress folder.

  4. Save Cartella.config.