webgui/etc/WebGUI.conf.original
2008-06-24 15:40:54 +00:00

487 lines
16 KiB
Text

# config-file-type: JSON 1
{
# Add a comma separated list of the names this site can use.
# The first site in the list will be used as the default
# sitename for generating offline URLs and other functions.
"sitename" : [ "www.example.com", "example.com"],
# Set to 1 if you want to use WebGUI's SSL functions, including encrypting user logins.
"sslEnabled" : 0,
# Rename the WebGUI Session cookie if you like.
"cookieName" : "wgSession",
# Explicitly set the domain that the WebGUI session cookie
# should be assigned to. Defaults to the domain that the user
# is browsing the site under.
# "cookieDomain" : ".example.com",
# Explicitly set the time to live for the WebGUI session cookie
# Defaults to +10Y. cookieTTL must follow the described format:
# Format should match /^\+?(\d+)([YMDhms]?)$/
# $2 qualifies the number in $1 as representing "Y"ears,
# "M"onths, "D"ays, "h"ours, "m"inutes, or "s"econds (if the qualifier is omitted,
# the number is interpreted as representing seconds).
# +1h = 1 hour
# +2D = 2 Days
# +3M = 3 Months
# +10Y = 10 Years (default)
# This may also be set to the word "session" to have cookies live
# for the current browser session only.
# "cookieTTL" : "+10Y",
# The location where the WebGUI server will be handling
# requests. This is normally just '/' or the root of the
# server, but on some installations it might be /webgui or
# /site1, /site2, etc. If this is set to anything other than
# '/' then a matching <Location /somepath> block should
# contain the WebGUI handler instead in the Apache
# VirtualHost configuration.
"gateway" : "/",
# Enable this flag if you run or back up files on a case sensitive
# file system. This will ensure uniqueness in the uploads folder
#"caseInsensitiveOS" : "1",
# The relative or fully qualified URL to the extras folder
# that comes with WebGUI.
"extrasURL" : "/extras",
# The filesystem path to get to the extras folder that ships
# with WebGUI.
"extrasPath" : "/data/WebGUI/www/extras",
# The relative for fully qualified URL to the uploads folder
# for this site where all attachments will be stored.
"uploadsURL" : "/uploads",
# The filesystem path to get to the uploads folder where all
# attachments for this site will be stored. This needs to be
# writable by your web server.
"uploadsPath" : "/data/WebGUI/www/uploads",
# Set this value to 1 if you want rich editors to use the
# WebGUI asset URLs for images rather than their real URLs
# in the uploads folder. The advantage of this is that users
# see short clean WebGUI controlled URLs. However, this is
# slower than the default.
"richEditorsUseAssetUrls" : 1,
# If you are not running your web server on the standard
# port (80) then use this setting to specify that.
#"webServerPort" : 80,
# What kind of cache do you wish to use? Available types are
# WebGUI::Cache::FileCache and WebGUI::Cache::Database.
# We highly recommend the database cache if you are running
# sites with more than a few hundred pages, or if you're
# running in a multi-server environment. The file cache is better
# for very small sites.
"cacheType" : "WebGUI::Cache::FileCache",
# Tell WebGUI where to store cached files. Defaults to the
# /tmp or c:\temp folder depending upon your operating system.
# "fileCacheRoot" : "/path/to/cache",
# Set this to 1 to disable WebGUI's caching subsystems. This is
# mainly useful for developers.
"disableCache" : 0,
# The database connection string. It usually takes the form of
# DBI:<driver>:<db>;host:<hostname>
"dsn" : "DBI:mysql:www_example_com;host=localhost",
# The username to authenticate to the above database.
"dbuser" : "webgui",
# The password to authenticate to the above database.
"dbpass" : "password",
# You can configure up to three read-only database slaves to
# increase WebGUI's read performance.
# "dbslave1" : {
# "dsn" : "DBI:mysql:www_example_com;host=dbslave1.example.com",
# "user" : "webgui",
# "pass" : "password"
# },
# "dbslave2" : {
# "dsn" : "DBI:mysql:www_example_com;host=dbslave2.example.com",
# "user" : "webgui",
# "pass" : "password"
# },
# "dbslave3" : {
# "dsn" : "DBI:mysql:www_example_com;host=dbslave3.example.com",
# "user" : "webgui",
# "pass" : "password"
# },
# You can configure a backup master database as a failover in case
# your primary database goes down. WebGUI will use this database until
# the original becomes available. However, this does nothing to change
# the settings of your database. If it was set up as a slave until the
# master went down, then some script will have to be written to convert
# it from a slave to a master.
# "failoverdb" : {
# "dsn" : "DBI:mysql:www_example_com;host=failover.example.com;port=3306",
# "user" : "webgui",
# "password" : "password"
# },
# Set this value if you wish to override all outbound emails to a specific
# user for testing purposes.
# "emailOverride" : "joe@example.com",
# By adding CIDR based subnets to the following array you can limit the
# subnets by which users can turn admin mode on.
"adminModeSubnets" : [ ],
# List the authentication plug-ins you wish to be available on
# this site.
"authMethods" : [ "LDAP", "WebGUI" ],
# List the merchant gateways you have installed and wish to be
# available on this site.
"paymentDrivers" : ["WebGUI::Shop::PayDriver::Cash", "WebGUI::Shop::PayDriver::ITransact"],
# List the shipping drivers you have installed and wish to be
# available for configuration on the site.
"shippingDrivers" : ["WebGUI::Shop::ShipDriver::FlatRate"],
# Specify the list of template parsers available in the system.
"templateParsers" : ["WebGUI::Asset::Template::HTMLTemplate"],
# Specify the default template parser.
"defaultTemplateParser" : "WebGUI::Asset::Template::HTMLTemplate",
# Specify external helper apps that will enable WebGUI's search
# engine to index content in various uploaded file formats. The
# helpers must take the path to the file as an argument and
# return either text or html content.
"searchIndexerPlugins" : {
"txt" : "/bin/cat",
"readme" : "/bin/cat",
"html" : "/bin/cat",
"htm" : "/bin/cat"
},
# Enter the maximum number of assets that should be allowed to
# be created on this site. Keep in mind that a base install of
# WebGUI has around 300 assets. Enter zero (0) if you want to
# allow an unlimited number.
"maximumAssets" : 0,
# Specify a the list of assets you want to appear in your
# Add Content menus.
"assets" : [
"WebGUI::Asset::Sku::Product",
"WebGUI::Asset::Sku::Subscription",
"WebGUI::Asset::Sku::Donation",
"WebGUI::Asset::Sku::FlatDiscount",
"WebGUI::Asset::Snippet",
"WebGUI::Asset::Redirect",
"WebGUI::Asset::FilePile",
"WebGUI::Asset::Wobject::Article",
"WebGUI::Asset::Wobject::Collaboration",
"WebGUI::Asset::Wobject::DataForm",
"WebGUI::Asset::Wobject::Calendar",
"WebGUI::Asset::Wobject::EventManagementSystem",
"WebGUI::Asset::Wobject::Gallery",
"WebGUI::Asset::Wobject::HttpProxy",
"WebGUI::Asset::Wobject::Navigation",
"WebGUI::Asset::Wobject::Matrix",
"WebGUI::Asset::Wobject::Poll",
"WebGUI::Asset::Wobject::ProjectManager",
"WebGUI::Asset::Wobject::SQLReport",
"WebGUI::Asset::Wobject::Search",
"WebGUI::Asset::Wobject::Survey",
"WebGUI::Asset::Wobject::TimeTracking",
"WebGUI::Asset::Wobject::WeatherData",
"WebGUI::Asset::Wobject::MultiSearch",
"WebGUI::Asset::Wobject::StockData",
"WebGUI::Asset::Wobject::SyndicatedContent",
"WebGUI::Asset::Wobject::InOutBoard",
"WebGUI::Asset::File::ZipArchive",
"WebGUI::Asset::Wobject::WSClient",
"WebGUI::Asset::Wobject::Shelf",
"WebGUI::Asset::Wobject::Thingy",
"WebGUI::Asset::Wobject::UserList"
],
# Specify the list assets that are used for utility purposes only
# and are not typically used as a normal part of content
# management.
"utilityAssets" : ["WebGUI::Asset::Template", "WebGUI::Asset::RichEdit", "WebGUI::Asset::File::Image", "WebGUI::Asset::File"],
# Specify the list of assets you want to appear in your add
# content menus that should act as containers for other content.
# These items are typically not content themselves, but rather
# layout mechanisms.
"assetContainers" : [
"WebGUI::Asset::Wobject::Layout", "WebGUI::Asset::Wobject::Folder",
"WebGUI::Asset::Wobject::Dashboard", "WebGUI::Asset::Wobject::MessageBoard",
"WebGUI::Asset::Sku::Product",
"WebGUI::Asset::Wobject::WikiMaster"
],
# Optionally specify a group id for assets to tell WebGUI what
# group a user needs to be part of in order to add that type of
# asset.
# "assetAddPrivilege" : {
# "WebGUI::Asset::Wobject::SQLReport" : 3,
# "WebGUI:::Asset::Template" : 4
# },
# Optionally add a "Save and Commit" button to assets so that you
# don't have to hit "Commit My Changes" seperately.
"enableSaveAndCommit" : 0,
# Optionally override the default UI Level of any asset. This
# determines whether the current user has the appropriate UI Level
# to add assets of that type.
# "assetUiLevel" : {
# "WebGUI::Asset::Wobject::WSClient" : 7,
# "WebGUI::Asset::RichEdit" : 4
# },
# Configure the UI Levels of the asset toolbar links.
"assetToolbarUiLevel" : {
"edit" : 1,
"delete" : 1,
"cut" : 1,
"copy" : 1,
"shortcut" : 5,
"editBranch" : 9,
"lock" : 5,
"export" : 9,
"changeUrl" : 9,
"promote" : 3,
"demote" : 3,
"manage" : 5,
"revisions" : 5,
"view" : 1
},
# You can override the UI Levels of any field in the edit form of
# any asset using the following variables. Basically just take the
# class name of the asset separated by underscores, and append
# _uiLevel to the end of it, then you can start specifying field
# names and associated UI Level.
# "WebGUI_Asset_Wobject_Article_uiLevel" : { "menuTitle" : 9, "url" : 8 },
# "WebGUI_Asset_RichEdit_uiLevel" : { "askAboutRichEdit" : 7, "preformatted" : 3 },
# If exportPath is defined, an "Export" toolbar icon will appear
# which allows you to export assets to static HTML. This folder
# needs to be writable by your web server.
# "exportPath" : "/path/to/export",
# If soapHttpHeaderOverride is set to 1 it will enable Web
# Service Client assets to override the default MIME types of
# SOAP/WDSL content
"soapHttpHeaderOverride" : 0,
# Enable streaming Image and File assets thru mod_perl process instead of
# simple redirect. WARNING has impact on performance.
"enableStreamingUploads" : "0",
# Specify the list of macros you wish to be processed on each page.
"macros" : {
"#" : "Hash_userId",
"/" : "Slash_gatewayUrl",
"@" : "At_username",
"a" : "a_account",
"AOIHits" : "AOIHits",
"AOIRank" : "AOIRank",
"AdminBar" : "AdminBar",
"AdminText" : "AdminText",
"AdminToggle" : "AdminToggle",
"AdSpace" : "AdSpace",
"AssetProxy" : "AssetProxy",
"c" : "c_companyName",
"CanEditText" : "CanEditText",
"CartItemCount" : "CartItemCount",
"D" : "D_date",
"e" : "e_companyEmail",
"EditableToggle" : "EditableToggle",
"Extras" : "Extras",
"FetchMimeType" : "FetchMimeType",
"FileUrl" : "FileUrl",
"GroupAdd" : "GroupAdd",
"GroupDelete" : "GroupDelete",
"GroupText" : "GroupText",
"H" : "H_homeLink",
"International" : "International",
"L" : "L_loginBox",
"LastModified" : "LastModified",
"LoginToggle" : "LoginToggle",
"MiniCart" : "MiniCart",
"Page" : "Page",
"PageTitle" : "PageTitle",
"PageUrl" : "PageUrl",
"r" : "r_printable",
"RandomAssetProxy" : "RandomAssetProxy",
"RandomThread" : "RandomThread",
"RootTitle" : "RootTitle",
"Spacer" : "Spacer",
"Thumbnail" : "Thumbnail",
"u" : "u_companyUrl",
"User" : "User",
"ViewCart" : "ViewCart"
},
#Specify any LDAP aliases for synchronizing user profiles to LDAP
"ldapAlias" : {
"firstName" : "givenName",
"lastName" : "sn",
"email" : "mail",
"companyName" : "o"
},
# Define the subnets that WebGUI should expect Spectre communication
# to come from. All other subnets will be ignored. The subnet
# should be listed in CIDR notation.
"spectreSubnets" : [ "127.0.0.1/32" ],
# Define the IP Address that should be used by WebGUI to connect
# to Spectre. Depending upon your cluster configuration, this may
# or may not be the same as the information in spectreSubnets.
"spectreIp" : "127.0.0.1",
# Define the port number WebGUI should use to connect to Spectre
"spectrePort" : 32133,
# Define the workflow activities that are available in the editing
# process and what object types they support.
"workflowActivities" : {
"None" : ["WebGUI::Workflow::Activity::DecayKarma", "WebGUI::Workflow::Activity::TrashClipboard", "WebGUI::Workflow::Activity::CleanTempStorage",
"WebGUI::Workflow::Activity::CleanFileCache", "WebGUI::Workflow::Activity::CleanLoginHistory", "WebGUI::Workflow::Activity::ArchiveOldThreads",
"WebGUI::Workflow::Activity::TrashExpiredEvents", "WebGUI::Workflow::Activity::CreateCronJob", "WebGUI::Workflow::Activity::DeleteExpiredSessions",
"WebGUI::Workflow::Activity::ExpireGroupings", "WebGUI::Workflow::Activity::PurgeOldAssetRevisions",
"WebGUI::Workflow::Activity::ExpireSubscriptionCodes", "WebGUI::Workflow::Activity::PurgeOldTrash", "WebGUI::Workflow::Activity::ExpireEmsCartItems",
"WebGUI::Workflow::Activity::GetSyndicatedContent", "WebGUI::Workflow::Activity::ProcessRecurringPayments",
"WebGUI::Workflow::Activity::SyncProfilesToLdap", "WebGUI::Workflow::Activity::SummarizePassiveProfileLog",
"WebGUI::Workflow::Activity::SendQueuedMailMessages","WebGUI::Workflow::Activity::CleanDatabaseCache",
"WebGUI::Workflow::Activity::CalendarUpdateFeeds","WebGUI::Workflow::Activity::NotifyAdminsWithOpenVersionTags"],
"WebGUI::User" : ["WebGUI::Workflow::Activity::CreateCronJob", "WebGUI::Workflow::Activity::NotifyAboutUser"],
"WebGUI::VersionTag" : ["WebGUI::Workflow::Activity::CommitVersionTag", "WebGUI::Workflow::Activity::RollbackVersionTag",
"WebGUI::Workflow::Activity::TrashVersionTag", "WebGUI::Workflow::Activity::CreateCronJob",
"WebGUI::Workflow::Activity::UnlockVersionTag", "WebGUI::Workflow::Activity::NotifyAboutVersionTag",
"WebGUI::Workflow::Activity::RequestApprovalForVersionTag", "WebGUI::Workflow::Activity::ExportVersionTagToHtml"]
},
# Enter the graphing plugins that you want to enable for your site.
"graphingPlugins" : [
"WebGUI::Image::Graph::Pie",
"WebGUI::Image::Graph::XYGraph::Bar",
"WebGUI::Image::Graph::XYGraph::Line"
],
# Here you can define the dictionaries that are available through the tinyMCE spellchecker. You should set
# id to the name the dictionary is known by ASpell (eg. en or en_US or nl), use the name parameter to set
# the name the dictionary is displayed with in tinyMCE. To set the default dictionary please set the 'default'
# parameter.
#"availableDictionaries" : [
# {
# "id" : "en_US",
# "name" : "English",
# "default" : "1"
# },
# {
# "id" : "nl",
# "name" : "Dutch"
# }
#],
# Optional script to run upon successful login. The script can contain macros
# ex: /data/WebGUI/sbin/doLogin.pl --configFile=dev.localhost.localdomain.conf --loginPage=^PageUrl();
"runOnLogin" : "",
# Optional script to run upon successful logout. The script can contain macros
# Example: /data/WebGUI/sbin/doLogout.pl --configFile=dev.localhost.localdomain.conf --logoutPage=^PageUrl();
"runOnLogout" : "",
# URL handlers are used to associate functionality with a URL via a regular expression.
"urlHandlers" : [
{ "^/extras" : "WebGUI::URL::PassThru" },
# { "^/icons" : "WebGUI::URL::PassThru" },
# { "^/documentation/pdf" : "WebGUI::URL::PassThru" },
# { "^/my-custom-application$" : "WebGUI::URL::PassThru" },
# { "^/server-status$" : "WebGUI::URL::PassThru" },
# { "^/perl-status$" : "WebGUI::URL::PassThru" },
{ "^/uploads/dictionaries" : "WebGUI::URL::Unauthorized" },
{ "^/uploads" : "WebGUI::URL::Uploads" },
{ "^/\\*give-credit-where-credit-is-due\\*$" : "WebGUI::URL::Credits" },
{ "^/abcdefghijklmnopqrstuvwxyz$" : "WebGUI::URL::Snoop" },
{ ".*" : "WebGUI::URL::Content" }
],
# Content handlers are used to produce content from the content URL handler.
"contentHandlers" : [
"WebGUI::Content::Prefetch",
"WebGUI::Content::Maintenance",
"WebGUI::Content::AssetManager",
"WebGUI::Content::Operation",
"WebGUI::Content::Setup",
"WebGUI::Content::Shop",
"WebGUI::Content::Asset",
"WebGUI::Content::NotFound"
]
}