DEPRECATION WARNING

This documentation is not using the current rendering mechanism and is probably outdated. The extension maintainer should switch to the new system. Details on how to use the rendering mechanism can be found here.

EXT: WEC Site Config

Author:Kasper Skårhøj
Created:2002-11-01T00:32:00
Changed:2011-07-15T11:10:34
Author:Web-Empowered Church Team
Email:devteam@webempoweredchurch.org
Info 3:
Info 4:

EXT: WEC Site Config

Extension Key: wec_config

Copyright 2006-2010, Christian Technology Ministries International Inc. http://www.CTMIinc.org

Author: Web-Empowered Church Team, <devteam@webempoweredchurch.org>

Support Community: http://www.webempoweredchurch.org/support/

This document is published under the Open Content License

available from http://www.opencontent.org/opl.shtml

The content of this document is related to TYPO3

- a GNU/GPL CMS/Framework available from www.typo3.com

Table of Contents

EXT: WEC Site Config 1

Introduction 1

What does it do? 1

What is the Web-Empowered Church? 1

Users manual 2

Installation 2

Edit Site Constants 3

Select Site Template or Site Skin 3

Manage Add-on Features 4

Administration 4

Adding New Features 4

Configuration 5

Hiding Site Config Menu Options 5

Best Practices for Features 5

Known problems 6

To-Do list 6

Changelog 6

Introduction

What does it do?

The Site Config extension aims to simplify administrative tasks for new TYPO3 users by offering easier backend modules and laying the foundation for a simplified backend interface.

The first part of the Site Config extension is a backend module, located at Web->Site Config, that provides three submodules: Edit Site Constants, Select Site Template or Site Skin, and Manage Add-on Features. These modules allow you to set site-wide values such as name, email, and url; select either your site's TemplaVoila template or skins; and quickly install or uninstall extensions, also known as features. Each of these modules are described more fully in the Users Manual sections of this document.

In addition to the backend module, the Site Config extension also provides backend records for creating and editing features and enables TCA-based overrides for default backend behavior. These are described more fully in the Administration and Configuration sections of this document.

What is the Web-Empowered Church?

The Web-Empowered Church (WEC) is a ministry of Christian Technology Ministries International ( www.CTMIinc.org ). The mission of WEC is to innovatively apply WEB technology to EMPOWER the worldwide CHURCH for ministry.

WEC will help churches around the world expand evangelism, discipleship, and care through the innovative application of internet technology. WEC web-based tools and training will help make church ministries more efficient and effective, and will extend ministry impact to a world in need of Jesus (See :underline:`www.WebEmpoweredChurch.org/Jesus <http://www.webempoweredchurch.org/Jesus>`_ ). We want to fuel a worldwide movement using the internet to point the world to Jesus Christ, to grow disciples, and to care for those in need. Our desire is to use the web to empower the Church to become a truly 24 hours per day 7 days per week ministry that is not constrained by walls or distance or time.

If you would like to find out more about WEC or our tools, or support us in any way, please go to our website: :underline:`www.WebEmpoweredChurch.org. <http://www.webempoweredchurch.org/>`_

Users manual

Installation

The Site Config extension can be installed through the Extension Manager in the same way as any other TYPO3 extension. Within the installation process, there are two settings that may be configured: Root Page ID and Enable TCA Additions.

img-1

Root Page ID

The Root Page ID is the ID of the main, top-level page in your TYPO3 install. This is the the page where your Typoscript template and TemplaVoila templates are set up. Everything the Web->Site Config backend module does is relative to this page.

Enable TCA Modifications

In order to allow for a simpler backend interface for users, the Site Config extension overrides the default behavior of the TYPO3 backend in several places. These changes all occur in the TCA and primarily change the way that permissions can be assigned to backend users. Each change is described below and if you determine that you do not want this functionality on your site, you can choose to disable the TCA modifications.

sys_template.ctrl.adminOnly

TCA Element Name

sys_template.ctrl.adminOnly

Value

0

Description

Makes template records writable by non-admin users if those users have been assigned editing permissions to the sys_template table.

pages.columns.content_from_pid.exclude

TCA Element Name

pages.columns.content_from_pid.exclude

Value

1

Description

Adds “Show content from this page” to the list of fields that can be excluded for a page. By default, this field will now be excluded for non-admin users.

pages.columns.alias.exclude

TCA Element Name

pages.columns.alias.exclude

Value

1

Description

Adds “Alias” to the list of fields that can be excluded for a page. By default, this field will now be excluded for non-admin users.

pages.columns.tx_realurl_pathsegment.exclude

TCA Element Name

pages.columns.tx_realurl_pathsegment.exclude

Value

1

Description

Adds “Speaking URL Path Segment” to the list of fields that can be excluded for a page. By default, this field will now be excluded for non-admin users.

tt_content.columns.header_position.exclude

TCA Element Name

tt_content.columns.header_position.exclude

Value

1

Description

Adds “Header Align” to the list of fields that can be excluded for content elements. By default, this field will now be excluded for non- admin users.

tt_content.columns.list_type.config.authMode

TCA Element Name

tt_content.columns.list_type.config.authMode

Value

explicitAllow

Description

Swaps the way that plugin permissions are defined for backend users and groups. In the original TYPO3 configuration, all plugins are available unless they are explicitly denied. With this setting, plugins must instead be explicitly allowed before they are available for a user or group to use.

tt_content.columns..CType.config.authMode

TCA Element Name

tt_content.columns..CType.config.authMode

Value

explicitAllow

Description

Swaps the way that content element permissions are defined for backend users and groups. In the original TYPO3 configuration, all content elements are available unless they are explicitly denied. With this setting, content elements must instead be explicitly allowed before they are available for a user or group to use.

One piece of default User TSConfig is also added with TCA Modifications are enabled. Backend ACLs are used within the Web->Access module and only cause confusion when they appear within the Web->List module. The code below hides the ACL records from the list module.

mod.web_list.hideTables := addToList(tx_beacl_acl)

Edit Site Constants

The first option within the Site Config backend module is “Edit Site Constants”. This submodule relies on the WEC Constants extension; if it is not installed, “Edit Site Constants” will not be present in the menu.

Within this submodule, you can set site-wide values, such as Site Name, Site URL, and Admin Email. When changing the Site Name, you'll see the change reflected in both the frontend of your website through Typoscript templates and in the title of the root page on your site. When you change the WEC Constant for Site Name, the page title for this root page will be updated to match it.

Experienced TYPO3 users may notice that “Edit Site Constants” is very similar to the Constant Editor within Web->Template. “Edit Site Constants” is actually just a simplified version of the Constant Editor. Typoscript constants from the WEC Constants extension are the only values that can be set and changes are always on a site-wide basis, rather than per-page.

img-2

Select Site Template or Site Skin

The next option within the Site Config backend module is “Select Site Template” or “Select Site Skin” (depending on your templating system). This module is used with the TemplaVoila extension for templating; if TemplaVoila is not installed, then “Select Site Template” will not be a menu option. Within this submodule, you can view the current TemplaVoila template or skin and choose your site's preferred look based on the available records in the Storage folder.

When making template selections, you may notice that some are marked as “fully compatibly with current template” while others are not. This message means that the templates share a common data structure and switching templates will only cause changes in the look of your site, leaving content unchanged. If templates are not marked as being compatible, then some content on your website may not show up after changing templates. This content has not been lost, but it will need to be remapped to a current TemplaVoila content areas.

img-3 img-4

Manage Add-on Features

The final option with the the Site Config backend module is “Manage Add-on Feature.” Unlike the previous two submodules, “Manage Add-on Features” relies on no external extensions. Instead it looks for Feature backend records in the root of a website. If no Features are present in the TYPO3 install, the menu option is hidden.

If Features are available on a TYPO3 install, they'll be separated between those that are currently installed and those that are available to install. Clicking on the install button will enable a new features while uninstalling will remove a feature.

Information about creating new features is available in the Administration section.

img-5

Administration

Adding New Features

It is possible for an administrator to add new features to a site by adding Feature records to the root page of the TYPO3 install. Each feature has a title and description, which are displayed within the Site Config backend module. The “Disabled” field indicates whether the feature is currently installed or not.

The final field, “Records,” is where the actual parts of the feature are defined. These can be any TYPO3 backend record, such as pages, content elements, backend usergroups, etc. When a Feature is installed, these records will be made visible; when a Feature is uninstalled, they will be hidden.

The Configuration section below provides some tips on how to best use Features.

img-6

Configuration

Hiding Site Config Menu Options

In some scenarios, you may want to use only a portion of the Site Config backend module. Through TSConfig, it is possible to disable individual menu options. The following Typoscript can be used in Page TSConfig to disable menu options for all users or in User TSConfig to limit it to a particular backend user or group.

mod.web_txwecconfig.menu.function {
 tx_wecconfig_constants = 0
 tx_wecconfig_features = 0
 tx_wecconfig_templates = 0
}

Modifying the Site Constants Editor via User TSConfig

The Site Constants submodule has two possibilities for configuration through TSConfig. Like the previous section, these options can be used in Page TSConfig to change options for all users or in User TSConfig to limit it to a particular backend user or group.

mod.web_txwecconfig.tx_wecconfig_constants {
  # This option is on by default and shows both the constant label (Site Name)
  # and the constant name (siteName).  Turning it off shows the label only.
  showConstantName = 0

  # This option is off by default. Turning it on makes the Site Constants Editor
  # behave like the normal TYPO3 Constants Editor with an edit icon and a revert to default icon.
  enableRevertToDefault = 1
}

Modifying the Site Constants Editor via Hooks

Two hooks are provided to allow further enhancement of the Site Constants Editor.

The first hook, “afterInitializeTSParserAndTSConfig”, is called immediately after the TypoScript parser is initialized and TSconfig is parsed. This allows a developer to modify TSConfig values on the fly or add his own version of t3lib_tsparser_ext that styles the editing form differently.

The second hook, “postProcessConstantsContent”, is called after the Site Constants Editor is done generating its HTML. This output can be post-processed to add things like additional help text below the editing form.

Best Practices for Features

The Features functionality within Site Config is essentially a mass hide/show of backend records. When a feature is disabled, its records are marked as hidden so that they are not shown on the frontend of the website. This does nothing for backend visibility, however, as hidden pages and content elements will still be shown for the backend user.

Within the WEC Starter Package, we work around this limitation by creating a unique backend usergroup for every Feature and assigning it as a record within that Feature. When a Feature is installed, the backend usergroup is enabled. When a Feature is uninstalled, the backend usergroup is disabled.

With this structure, we can embed any backend behavior for that Feature into its own backend group. For example, the ability to create news articles and view the News page in the backend is tied to to the News backend group. When the News feature is installed, the News backend group becomes active, allowing a backend user to view the News page and create news articles. When the News feature is uninstalled, these privileges are removed.

Known problems

-None

To-Do list

-None

Changelog

3.3.0

Version

3.3.0

Changes

Fixed bug where non-admin user could not select templates.

((Unknown Property))

Version

Changes

Added localization for some hardcoded strings.

((Unknown Property))

Version

Changes

Added TSConfig options for Constants Editor to enable “revert” buttons and to show the constant label without its key.

((Unknown Property))

Version

Changes

Enhanced first webmount detection.

((Unknown Property))

Version

Changes

Added hooks for manipulating default TSConfig or TypoScript Constant parser.

3.2.0

Version

3.2.0

Changes

Added feature to allow categories other than Site Constants or WEC Constants inside “Edit Site Constants”

((Unknown Property))

Version

Changes

Removed default site root config option. Instead, the first webmount is used when a site root cannot be automatically found.

((Unknown Property))

Version

Changes

Added new 'optional” parameter to RealURL autoconfig. Requires RealURL 1.11.0 and up.

((Unknown Property))

Version

Changes

Removed TCA modification that enabled sys_template for non-admin users. Instead, access is only given when saving site constants.

3.1.1

Version

3.1.1

Changes

Fixed compatibility issue with other extensions that provide autoconfig for RealURL.

3.1.0

Version

3.1.0

Changes

Updated backend module to use sprite icon API in TYPO3 4.4 and up.

((Unknown Property))

Version

Changes

Changed backend module to use dispatcher for inclusion.

3.0.0

Version

3.0.0

Changes

Rename backend module from WEC Config to Site Config.

((Unknown Property))

Version

Changes

Add support for multiple sites. Any page with a rootlevel template now works with Site Config.

((Unknown Property))

Version

Changes

Add constant and skin selector support for BusyNoggin TemplaVoila Framework (EXT: templavoila_framework).

2.2.0

Version

2.2.0

Changes

Force TemplaVoila to delete records rather than unlinking.

((Unknown Property))

Version

Changes

Add check to only load backend code when its actually needed.

2.1.0

Version

2.1.0

Changes

Added hiding of Backend ACL records in list view.

2.0.2

Version

2.0.2

Changes

Fixed IE issue with constant editor form submission.

2.0.1

Version

2.0.1

Changes

Included Prototype JS library to avoid errors in TYPO3 4.2.0.

2.0.0

Version

2.0.0

Changes

Raised TYPO3 version requirement to 4.2.0 and PHP version requirement to PHP 5.1.

((Unknown Property))

Version

Changes

Updated styling to match TYPO3 4.2 backend.

((Unknown Property))

Version

Changes

Added RealURL configuration for felogin extension.

1.4.0

Version

1.4.0

Changes

Added generic handling for blank titles in RealURL.

((Unknown Property))

Version

Changes

Minor WEC Connector and WEC Discussion tweaks.

1.3.1

Version

1.3.1

Changes

Small tweak to WEC Connector RealURL configuration.

1.3.0

Version

1.3.0

Changes

RealURL enhancements and cleanups for the latest WEC Extensions (as of March 2008).

1.2.2

Version

1.2.2

Changes

Fixed syntax error with TYPO3 4.2.

1.2.1

Version

1.2.1

Changes

Bugfix for better URLs in mm_forum mailer.

((Unknown Property))

Version

Changes

Switched default space character from underscore to dash.

1.2.0

Version

1.2.0

Changes

Fixed bug with development versions of the TYPO3 4.2 Install Tool.

((Unknown Property))

Version

Changes

Added RealURL autoconfiguration for mm_forum.

1.1.0

Version

1.1.0

Changes

Added RealURL autoconfiguration class.

1.0.0

Version

1.0.0

Changes

Fixed bug with SQL joins in MySQL 3.

((Unknown Property))

Version

Changes

Added frontend cache clearing when features are installed or uninstalled.

0.9.2

Version

0.9.2

Changes

Corrected backend typos.

0.9.1

Version

0.9.1

Changes

Added additional error checking.

0.9.0

Version

0.9.0

Changes

Initial release.

img-7 EXT: WEC Site Config - 7