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: Organisation Guide

Author:Kasper Skårhøj
Created:2002-11-01T00:32:00
Changed:2005-07-02T13:41:17
Author:Jan Wischnat
Email:jan@wischnat.de
Info 3:
Info 4:

EXT: Organisation Guide

(tx_organisationguide_jw)

Copyright 2004-2005, Jan Wischnat, <jan(at)wischnat.de>

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: Organisation Guide 1

Introduction 1

What does it do? 1

Features: 2

Screenshots 2

Users manual 6

Installing the extension 6

Creating a page tree 6

Record Storage 7

Creating records 7

Intranet functionality 7

Configuration 7

Adjusting the TypoScript Template 7

Adjusting the HTML Template 8

TS-Reference 8

Known problems 9

To-Do list 9

Changelog 9

Introduction

What does it do?

This extensions is for larger companies and authorities that need to inform visitors about questions like:

“Who's in charge of what? What services are offered? Where to get help? What is the structure of the organisation? Which services suit my situation? Where is a service or a person located?”

This extension extends the table fe_users, adding fields for assigning locations, tasks, services, functions and organisations to a frontend user.

The frontend plugins show your visitors:

  • A list of all employees / persons working in the organisation and associated tasks/services
  • A list of all tasks/services and associated emplyees
  • A list of locations and associated tasks/services/organisations
  • A hierachical organisation structure
  • Who's in charge of what? (tasks/services)
  • Where to get help (locations)
  • Which organisation does an employee belong to?
  • The meaning of 23 :-)

Features:

  • XHTML 1.0 transitional
  • Accessible and semantically correct output (see to-Do list)
  • Multilingual: english/german (translators verrry welcome ;-)
  • Uses Flexforms for Plugin Configuration
  • Intranet functionality: more (secret) information in intranet view
  • extends TYPO3 frontendusers permits FE/BE editing features with simulate_be

Screenshots

Backend

Additional fields for frontend users:

img-1

Records in “List” Module:

records from tx_organisationguide_jw

Frontend

Listing Services offered: (Notice that the visitor can filter the results in various ways. Also notice that the editpanel is only shown for 1 item. Editpanels only appear for records belonging to the fe- user being logged in. Hint: use simulate_be)

img-3

Listing Organisations:

img-4

Listing Persons: (notice that the editpanel is only shown for 1 item. Editpanels only appear for records belonging to the person being logged in.) img-5

Users manual

Installing the extension

Download and install the extension tx_organisationguide_jw using the extension manager

Creating a page tree

In case you're lazy: You can also download a .t3d TYPO3-pagetree with some demo records here FIXME

Create a page structure:

Organisation Guide

- Services

- Persons

- Organisations

- Locations

  • On the page “Organisation Guide” insert a content element “Menu- Sitemap”: Menu of subpages
  • Create a content element Plugin “Organisation Guide” on the page “Services”, set the starting point to the page “Organisation Guide” and to the sysfolfer containing your fe-users. Set the displaymode to “services”
  • Create a content element Plugin “Organisation Guide” on the page “Persons”, set the starting point to the page “Organisation Guide” and to the sysfolfer containing your fe-users. Set the displaymode to “persons”
  • Create a content element Plugin “Organisation Guide” on the page “Organisations” , set the starting point to the page “Organisation Guide” and to the sysfolfer containing your fe-users. Set the displaymode to “organisations”

Create a content element Plugin “Organisation Guide” on the page “Locations” , set the starting point to the page “Organisation Guide” and to the sysfolfer containing your fe-users. Set the displaymode to “locations”

(You can set page ids for singleview pages in the plugins, you don't have to though. See “Configuration” below how you can set the page ids in a typoscript template for the whole site)

Record Storage

You can store records on any page of your choice and use the starting point of the frontendplugins. I recommend placing your records like below so you can easily follow this manual.

Create records of type services, organisations, locations, files, situations and functions on the page “Organisation Guide”

  • Create a sysfolder for frontend users (if you don't already have one) and create some fe-users. Assign one or some locations, services and organisations to the fe users in the BE-Form of the fe user.
  • Set the General Record Storage (page header) of the sysfolder containing your fe-users to the page “Organisation Guide”. (permits you to add new records using the little + symbol next to the select lists on the form “fe-user”)

Creating records

  • Services Services are the tasks/services/projects that your organisations are offering/working on. Fill out all text fields. Assign files, situations and related pages using the selector boxes. If you need to create a new file, situation or page click the + symbol. Hint: A Service could also be a project.
  • Organisations Fill out all text fields. You can assign an organisation that's above the current organisation using the selectorbox. Create an organisation named “none” so you can assign this as organisation above for organisations that don't have an organisation above. The hierarchie of your organisations will be displayed on the page containing the frontendplugin with displaymode set to organisations. Hint: An organisation could also be a team.
  • Locations Fill out all text fields.
  • Files Fill out all text fields.
  • Functions Functions are used to describe the function/level/ranking of a person. (CEO, Adminsitrator, Parttime worker etc...) Fill out all text fields.
  • Situations Situations are meant to group services in a way that your visitor is more likely to understand. Imagine you offer services like changing oil, changing sparks and tuning airfilters. A suitable situation to group the services could be “My car doesn't run smooth”. Fill out all text fields.

Intranet functionality

  • The records “services” and “fe-users” have a checkbox “Show in Intranet only?”. The records “services” also has a second rte-field “internal description”.
  • If you check the checkbox “Intranet mode” in the plugin flexform, the plugin will show the second rte-field and internal numbers (records “services”) and all results, also the ones where “Show in Intranet only?” is checked.
  • It is a good idea to use the extension simulate_be and to relate a be-user to each fe-user. If you do so your fe-users will see the editpanel for records assigned to the fe-user.

Configuration

Adjusting the TypoScript Template

On the page “Organisation Guide” insert an extension Template and adjust the Page Ids to the ids matching your pages with the respective plugins thus avoiding to set the Single Page for ever single plugin:

plugin.tx_organisationguidejw_pi3 {
  PidItemPerson = xxx //id of the page holding the plugin with displaymode “persons”
  PidItemService = xxx //id of the page holding the plugin with displaymode “services”
  PidItemOrganisation = xxx //id of the page holding the plugin with displaymode “organisations”
  PidItemLocation = xxx //id of the page holding the plugin with displaymode “locations”
  PidItemFile = xxx //id of the page holding the plugin with displaymode “persons”
}

Uid of record “organisations” indicating the Top Level Organisation under which all other organisations are shown, this is normally the organisation called “none”:

plugin.tx_organisationguidejw_pi3 {
#uid of the record “organisation” named none
topLevelOrg = 1
}

Adjusting the HTML Template

The html contains all of the formatting for the frontend output. If you need to change the html please put a copy of the file EXT:organisation_guide_jw/res/templates/template.html (where EXT: is either typo3 or typo3conf) somewhere in your fileadmin folder and tell TYPO3 to use it with this TS:

plugin.tx_organisationguidejw_pi3 {
file.templateFile = fileadmin/template.html
}

Do not change any files that reside in the extension directory as you would lose your changes when you update the extensions. And updates are likely to come ;-)

TS-Reference

file.templateFile

Property

file.templateFile

Data type

resource

Description

HTML Template file for all fe-output

Default

EXT:organisation_guide_jw/res/templates/template.html

file.intLinkImage

Property

file.intLinkImage

Data type

resource

Description

Image that gets prepended to all links

Default

EXT:organisation_guide_jw/res/gfx/link_int.gif

listView.results_at_a_time

Property

listView.results_at_a_time

Data type

Int+

Description

Amounts of results shown in frontend lists

Default

10

topLevelOrg

Property

topLevelOrg

Data type

Int+

Description

Uid of record “organisations” indicating the Top Level Organisation under which all other organisations are shown

Default

_CSS_DEFAULT_STYLE

Property

_CSS_DEFAULT_STYLE

Data type

string

Description

Alter this property to adapt the css to your needs

Default

.tx-organisationguidejw-pi3-azForm {}

.tx-organisationguidejw-pi3-searchForm {float:left;}

.tx-organisationguidejw-pi3-azBox { height:50px;border:1px solid #999999;padding:10px; background:#dddddd; float:left; margin- bottom:15px;}

.tx-organisationguidejw-pi3-catBox { height:50px;border:1px solid #999999;padding:10px; background:#dddddd;}

.tx-organisationguidejw-pi3-listrow {margin-top:15px;}

.act {color:#ff0000; font-weight:bold;}

#cat, #sit, #az {font-size:xx-small; float:left;}

.small {font-size:50%;}

_DEFAULT_PI_VARS

Property

_DEFAULT_PI_VARS

Data type

string

Description

Using this property you could -for example- set a default filter for the frontend list(s):

Example:

plugin.tx_organisationguidejw_pi3._DEFAULT_PI_VARS {
  az = w
}

Default

[tsref:plugin. tx_organisationguidejw_pi3]

Known problems

None so far, but see to-do list.

To-Do list

  • Plugin Code needs optimization/comments. Also there's still some html/inline css in the code – i will get rid of that soon.
  • Wraps via TS like tt_news.
  • The form at the top of the fe output (filters / search) is hardcoded in the plugin code. Needs to be wrappable/configurable via TS
  • Not all fields get rendered in the frontend yet. Still needs some work.
  • Headers are rendered even if there's no Data. Needs fixing.
  • Realurl config
  • The filters (organisation, a-z, situation) only work correctly in displaymodes persons and services. Needs fixing for the other modes.
  • The indentation of the hierachical display of organisations is not perfect yet. I tried to code correct ul/li output but i was clearly remembered that i'm not a programmer ;-) Because i couldn't get the nested ul/li's to work i used a single ul/li and did the indentation via css/margin...On the next snowboardtour one of the TYPO3/PHP pros has to show me how to do this better...
  • I'm thinking of implementing a switch in the flexform af the plugin to let the admin decide if records in listings (services, persons) should include relations to other tables because executing the sql queries for the related tables takes some time... Especially if the admin raises listView.results_at_a_time ;-)

Changelog

Juli, 2 2005 0.5.0 First Upload

img-6 EXT: Organisation Guide - 0