# 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"], # 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 block should # contain the WebGUI handler instead in the Apache # VirtualHost configuration. "gateway" : "/", # 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" : 0, # An array of URLs that WebGUI should leave alone for normal # processing by Apache. Anything that begins with these URLs # will be entirely ignored by WebGUI # "passthruUrls" : ["/icons", "/documentation/pdf", "/my-custom-application", "/server-status", "/perl-status"], # 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, WebGUI::Cache::Database, and # WebGUI::Cache::Memcached. We highly recommend the file # cache if you're in a single server environment, and the # database cache if you have multiple web nodes. Memcached # is experimental and is slower and buggier than the other # two, so should only be used if you know what you're # doing. "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", # Support for the memcached distributed caching system. # See http://www.danga.com/memcached/ for details on memcached. # Uncomment this and point it to your memcached server(s). Use a # comma separated list for multiple servers. # "memcached_servers" : "10.0.0.6:11211", # 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::;host: "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. "paymentPlugins" : ["ITransact","Cash"], # List the shipping plugins you have installed and wish to be # available for configuration on the site. "shippingPlugins" : ["ByPrice", "ByWeight", "PerTransaction"], # 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::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::HttpProxy", "WebGUI::Asset::Wobject::MessageBoard", "WebGUI::Asset::Wobject::Navigation", "WebGUI::Asset::Wobject::Matrix", "WebGUI::Asset::Wobject::Poll", "WebGUI::Asset::Wobject::Product", "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::SQLForm", "WebGUI::Asset::Wobject::WikiMaster" ], # 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"], # 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", "AOIHits" : "AOIHits", "AOIRank" : "AOIRank", "AdminBar" : "AdminBar", "AdminText" : "AdminText", "AdminToggle" : "AdminToggle", "AdSpace" : "AdSpace", "AssetProxy" : "AssetProxy", "CanEditText" : "CanEditText", "D" : "D_date", "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", "Page" : "Page", "PageTitle" : "PageTitle", "PageUrl" : "PageUrl", "RandomAssetProxy" : "RandomAssetProxy", "RandomThread" : "RandomThread", "RootTitle" : "RootTitle", "Spacer" : "Spacer", "SubscriptionItem" : "SubscriptionItem", "SubscriptionItemPurchaseUrl" : "SubscriptionItemPurchaseUrl", "Thumbnail" : "Thumbnail", "User" : "User", "a" : "a_account", "c" : "c_companyName", "e" : "e_companyEmail", "r" : "r_printable", "u" : "u_companyUrl" }, #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::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::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" : "" }