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: Sevenpack

Author:Kasper Skårhøj
Created:2002-11-01T00:32:00
Changed:2010-09-07T16:24:01
Classification:sevenpack
Description:The keywords help with categorizing and tagging of the manuals. You can combine two or more keywords and add additional keywords yourself. Please use at least one keyword from both lists. If your manual is NOT in english, see next tab "language" ---- forEditors (use this for editors / german "Redakteure") forAdmins (use this for Administrators) forDevelopers (use this for Developers) forBeginners (manuals covering TYPO3 basics) forIntermediates (manuals going into more depth) forAdvanced (covering the most advanced TYPO3 topics) see more: http://wiki.typo3.org/doc_template#tags ----
Keywords:publication, reference, manager, bibliography, typo3, sevenpack
Author:Sebastian Holtermann
Email:sebholt@web.de
Info 4:
Language:en

img-1 img-2 EXT: Sevenpack - sevenpack

EXT: Sevenpack

Extension Key: sevenpack

Language: en

Keywords: publication, reference, manager, bibliography, typo3, sevenpack

Copyright 2008-2009, Sebastian Holtermann, <sebholt@web.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.org

Table of Contents

EXT: Sevenpack 1

`Introduction 3 <#__RefHeading__2966_1643794856>`_

What does it do? 3

Screenshots 3

`User manual 6 <#__RefHeading__2972_1643794856>`_

Installation 6

The list view plugin 6

The frontend editor 11

Single view 13

`Administration 14 <#__RefHeading__2982_1643794856>`_

Searching in pdf files 14

Database layout since version 0.1 14

Useful SQL queries 14

`Configuration 16 <#__RefHeading__2990_1643794856>`_

Customization 16

Reference 16

The HTML templates 28

`Tutorial 29 <#__RefHeading__2998_1643794856>`_

`Known problems 30 <#__RefHeading__3000_1643794856>`_

`To-Do list 31 <#__RefHeading__3002_1643794856>`_

`Changelog 32 <#__RefHeading__3004_1643794856>`_

Introduction

What does it do?

Sevenpack is a publication reference (bibliography) manager plugin for Typo3. It provides a browseable list view for publication references and a convenient publication reference editor.

Sevenpack is forked from the Sixpack plugin version 0.3.2 by Sixten Boeck.

Features:

A publication reference database integrated into the Typo3 framework.

A heavily customizable frontend list view for publication references.

A frontend single view (disabled by default).

An optional author browser bar

An optional search bar

An optional preferences bar

A convenient frontend editor for publication reference

Optional PDF text caching for full text search purposes

Export of the reference database to BibTeX or a homebrewn Sevenpack XML format.

Import of references from a BibTeX file or a Sevenpack XML file.

Localizations for English, German and Italian (very outdated).

Screenshots

This screenshot shows a part of a publication list.

img-3

A publication list during the edit mode.

img-4

A publication list with import and export links

img-5

The frontend publication reference editor.

img-6

User manual

Installation

The the extension should be installed with the Typo3 extension manager. During the installation some database tables will be created and the list view plugin should appear in the plugin list afterwards.

To actually insert or edit a publication reference it is recommended to use the frontend editor of the list view plugin.

A note for admins:

Pdf text searching has additional software requirements which are described in the Administration section.

The list view plugin

img-7

The frontend list view plugin shows a list of publication references and optionally offers an editor for adding new and editing existing publication references.

Before inserting the plugin into a page the default configuration and the default style should be loaded into the page template. To do so open the TypoScript template of the base page and go to the field Include static (from extensions) . Here the following two items should be listed.

  • Publication list defaults (sevenpack)
  • Publication list CSS (sevenpack)

Select both to get the default style.

img-8

Now go the page where the list should appear and insert the Publication list frontend plugin. The most important thing to configure afterwards is the storage folder for publication references. Simply chose a storage folder in the Startingpoint field of the plugin. You can also select multiple storage folders or use recursive folder lookup (enable secondary options). If no folder is selected the current page will be used.

img-9

The "General" configuration sheet

img-10

The general arrangement of the references in the list is defined by the List type .

TypoScript (default)

The list type is read from the variableplugin.tx_sevenpack_pi1.display_mode

Simple

A simple top down list.

Year split

A simple top down list with year separators that show the year of the following references respectively.

Year navigation

This shows only publications of a selected year and a navigation bar where the year can be chosen.

The Enumeration style defines the symbol or number that will show up in front of each references.

TypoScript (default)

The enumeration style is determined from the variableplugin.tx_sevenpack_pi1.enum_style

Count (page)

The running number of all references on the current page. In the simple mode this means all references that pass the filter whereas in the Year navigation mode this means all publications in the selected year.

Count (all)

In the simple mode this equivalent to Count (page) whereas in the Year navigation mode this is the running number of all publications in all years.

Bullet

This shows a single bullet.

None

This shows no symbol at all.

File Icon

This a file icon which is a link when file_url is set

Show search enables the search bar.

Show author browser enables the author browser bar.

Show preferences bar enables the preferences bar which e. g. allows to select the number of displayed references per page.

By default the references are sorted with respect to the following database fields.

year

bibtype

month

day

If Split up bibliography types is selected the sorting is performed in th following order

bibtype

year

month

day

and a bibliography type separator is inserted for each bibliography type. The Date sorting determines if the sorting by the date fields is performed ascending or descending. TypoScript (default)

The date sorting order is read from the variableplugin.tx_sevenpack_pi1.date_sorting

Descending

Descending sorting (newest on top)

Ascending

Ascending sorting (oldest on top)

Only if Show abstracts is selected abstracts of references will be displayed.

Nr. of references per page can be set to a value greater than zero to not show all references at once but to show them page wise. The value determines the number of references on each page. A value of zero means to show all references and if the value is -1 then the number will be read from the TS variable plugin.tx_sevenpack_pi1.items_per_page.

Some publications have a long authors list which can be stripped down to only the first nauthors by Nr. of authors to display . In case a publication has more authors than that the exceeding authors will be abbreviated with et al. . A value of zero means to show all authors and if the value is -1 then the number will be read from the TS variable plugin.tx_sevenpack_pi1.max_authors.

Some statisticscan be displayed at the bottom of the publication list. The Statistic mode determines what should be displayed.

TypoScript (default)

The statistic mode is read from the variableplugin.tx_sevenpack_pi1.stat_mode

None

No statistics

Total

Show the total number of publications

Year / Total

Show number of publications in this year and the total number of publications. This mode only works in the Year Navigation list type. It falls back to Total in all other list types.

The Enable export links switch enables the export links at the bottom of a publication list.

The "Filter" configuration sheet

img-11

In the Filter sheet several filters can be applied to the publication list to e. g. select only publications of a certain author in a certain year range. Thereby each filter has to be enabled with a check button and configured by one or more rule fields. Most of the filter rule fields are quite self explaining.

Year(s)

Years and year ranges must be comma separated. A year is simly a year e. g. 2008but a year range can have one of three different appearances.

  • 2001-2012: All references from inclusive 2001 to inclusive 2012.
  • -2002: All references up to inclusive 2002.
  • 2004-: All references from inclusive 2004 on.

Year matches are interpreted as "The publication was in one of the given years". A year filter rule could look like this

2003, -2002, 2004, 2005-2006

which is an inefficient version of

-2006

Author(s)

Author names must be separated by a new line.

  • If no comma is present in a line then the string is interpreted as the surname.
  • If a comma is present then the string before the comma is interpreted as the surnameand the string behind the comma is interpreted as the forenameor given name.

If the Author filter rule is OR a publication must have at least one of the authors to be displayed. If it is AND then the publication list must include all of the authors to be displayed.

The selected authors can be highlighted if Highlight selected authors is activated. This even works when the author filter is not enabled.

The "FE editor" configuration sheet

img-12

This sheets configures the frontend editor which is described in more detail later.

The frontend editor

The frontend editor can be either used by logged in backend users or by frontend users that belong to a certain group which must be configured in the TypoScript template. In either case

the editor must be enabled in the list view plugin configuration sheet.

Activation and configuration in the backend FlexForm

Once the list view plugin is inserted into a page open the plugin configuration and select the sheet FE Editor . Activate the check button named Enable editor? to enable the editor on this page.

The cite id generation options in the Fe editor sheet control whether the citeid of a publication should be generated automatically on demand by a button press or not at all. This can be configured for new and existing entries separately.

It is always a good idea to clear the page cache of the current page after editing or inserting a reference. Only then it will show up for all viewers of the web page immediately. To let the editor clear the page cache of the current page automatically activate the check button named Clear page cache after editing? .

Getting to the editor as a backend user

Simply logs in into the backend and then opens a second window or tab for the frontend list view where the edit icons should turn up. Sometimes a forced reload of the frontend page is required to make the edit icons appear (caching). To do so hold down the Shift key and click the Reload button of your browser.

Some notes for the administrator.

The user group must have modification rights for the sevenpack tables. This must be enabled in the Typo3 group administration.

Generally the listing of sevenpack tables should be disabled since this would encourage users to use the backend to edit Publications. Because of the partially normalized database layout this could mess up the sevenpack database.

Getting to the editor as a frontend user

As a frontend user simply log in and go to the page where the list view plugin is installed. The edit icons should now appear beneath the publication reference entries. Sometimes a forced reload of the frontend page is required to make the edit icons turn up (caching). To do so hold down the Shift key and click the Reload button of your browser.

Some notes for the administrator.

The frontend user groups that should be allowed to use the editor must be configured in the TypoScript template by setting the variable

plugin.tx_sevenpack_pi1.FE_edit_groups

to a comma separated list of frontend user group ids or to 'all'.

Here is an example that allows users in the group 34, 76 and 145 to use the editor.

plugin.tx_sevenpack_pi1 {

FE_edit_groups = 34,76,145

}

Using the editor

Once you're logged in into the backend reload the publication page in a second window and some edit icons should turn up.

Creating a new reference

In the right top of the publication page (plugin) there should turn up a plus icon. Click it to add a new publication reference.

Edit/Hide a reference

Beneath each reference there should be two buttons. One is for hiding the reference the other one is for editing the reference.

Deleting a references

Only the frontend reference editor holds a button which will delete a reference.

Both saving and deletion of a publication reference must be confirmed in the editor.

The reference editor itself should be quite self explaining.

Custom citeid generators

There is one default citeid generator provided with this plugin but you can create your own as well. To do so create a copy of the example citeid creator file EXT:sevenpack/res/class.tx_sevenpack_citeid_generator_ext.phpand adjust it to your needs. Don't edit the name of the generator class since this is the class name sevenpack will look for. Then tell sevenpack with the TypoScript variable

plugin.tx_sevenpack_pi1.editor.citeid_generator_file

where your generator is stored. Here is a TypoScript example.

plugin {

tx_sevenpack_pi1 {

editor {

citeid_generator_file = /fileadmin/my_citeid_generator.php

}

}

}

Single view

The single view must be enabled with TypoScript. The Reference Section has an example how to do this.

Administration

Searching in pdf files

Sevenpack allows to search in the text of pdf files by caching the textual content of the pdf file in a database field. This requires a pdf text extraction utility called pdftotext to be installed on the server which runs the Typo3 system. pdftotext is part of the xpdf or xpdf-utils package. Neither xpdf nor pdftotext are part or extensions of Typo3 or PHP but independent programs that must be installed by the administrator of the underlying operating system.

The automatic pdf text extraction can be enabled in the TypoScript template. In the Configuration/Reference section there is a description of the neccessary variable settings for that under plugin.tx_sevenpack_pi1.editor.full_text.

Please note that the text extraction only works when using the frontend editor. If the backend is used to edit od add a reference entry then the pdf-text-cache-field does not get updated or filled at all.

Database layout since version 0.1

The sevenpack database consists of three tables which are as follows.

  • tx_sevenpack_references
  • tx_sevenpack_authors
  • tx_sevenpack_authorships

tx_sevenpack_referencescontains most information e. g. title, publisher, citeid, url, etc. but not the authors. Author names are stored in tx_sevenpack_authorsand authorships of a publication are stored in tx_sevenpack_authorships. This means tx_sevenpack_authorshipsconnects between tx_sevenpack_referencesand tx_sevenpack_authors.

Useful SQL queries

The following SQL queries may be handy to analyse or modify the publication reference database.

  • Show all author names

    SELECT pid,surname,forename

    FROM tx_sevenpack_authors

    ORDER BY pid,surname;

  • Show the authors of a publication with id XXX

    SELECT tx_sevenpack_authors.surname,tx_sevenpack_authors.forename

    FROM tx_sevenpack_authors

    JOIN tx_sevenpack_authorships

    ON tx_sevenpack_authorships.author_id=tx_sevenpack_authors.uid

    JOIN tx_sevenpack_references

    ON tx_sevenpack_authorships.pub_id=tx_sevenpack_references.uid

    WHERE tx_sevenpack_references.uid=XXX

    ORDER BY tx_sevenpack_authorships.sorting;

  • Show the number of authors per publication

    SELECT tx_sevenpack_references.uid,count(tx_sevenpack_authors.uid)

    FROM tx_sevenpack_authors

    JOIN tx_sevenpack_authorships

    ON tx_sevenpack_authorships.author_id=tx_sevenpack_authors.uid

    JOIN tx_sevenpack_references

    ON tx_sevenpack_authorships.pub_id=tx_sevenpack_references.uid

    WHERE tx_sevenpack_references.deleted=0

    GROUP BY tx_sevenpack_references.uid;

  • Show the number of publications per author

    SELECT tx_sevenpack_authors.pid,

    tx_sevenpack_authors.surname,

    tx_sevenpack_authors.forename,

    count(tx_sevenpack_references.uid)

    FROM tx_sevenpack_authors

    JOIN tx_sevenpack_authorships

    ON tx_sevenpack_authorships.author_id=tx_sevenpack_authors.uid

    JOIN tx_sevenpack_references

    ON tx_sevenpack_authorships.pub_id=tx_sevenpack_references.uid

    WHERE tx_sevenpack_references.deleted=0

    GROUP BY tx_sevenpack_authors.uid

    ORDER BY tx_sevenpack_authors.pid,

    tx_sevenpack_authors.surname;

Configuration

Customization

Sevenpack can be heavily customized. For a starting point have a look at

  • CSS (Your style sheets). Simply override the sevenpack default styles.
  • TypoScript
    • The default TypoScript setup in pi1/static/default/setup.txt
    • The plugin.tx_sevenpack_pi1.fieldwraps
    • The plugin.tx_sevenpack_pi1.labelwraps
  • The HTML template

Reference

plugin.tx_sevenpack_pi1

There are many TypoScript variables that adjust the behaviour of the list view plugin. At this place only the most important will be listed. For a more complete list check the static include file EXT:sevenpack/pi1/static/default/setup.txt.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

authors

a

authors

b

array

c

-> authors.

Author string configuration

d

authorNav

a

authorNav

b

Array

c

Configures the author navigation bar

-> authorNav

d

charset

a

charset

b

String

c

The character set that will be used in some operations

d

UTF-8

debug

a

debug

b

boolean

c

Enables the debug mode.

This prints a lot debug information in the frontend.

d

display_mode

a

display_mode

b

integer

c

The list display mode.

0: Simple1: Year split2: Year navigation

This is only used if “ TypoScript ”is selected in the FlexForm.

d

0

classes

a

classes

b

Array

c

-> classes.

Some CSS classes

d

date_sorting

a

date_sorting

b

integer

c

The date sorting rule.

0: descending1: ascending

This is only used if “ TypoScript ”is selected in the FlexForm.

d

0

editor

a

editor

b

Array

c

-> editor.

The FE editor configuration.

d

enum

a

enum

b

Array

c

-> enum.

Enumeration wraps

d

enum_style

a

enum_style

b

integer

c

The enumeration style.

1: Count all on page2: Count all3: Bullet4: None5: File Icon

This is only used if “ TypoScript ”is selected in the FlexForm.

d

2

export

a

export

b

Array

c

-> export.

The export link configuration.

d

FE_edit_groups

a

FE_edit_groups

b

String

c

A comma separated list of frontend user group ids that are allowed to access the frontend editor. Also can be 'all' to allow all fe groups.

d

field

a

field

b

Array

c

-> field.

Contains stdWraps for all printable database fields.

d

import

a

import

b

Array

c

-> import.

The import link configuration.

d

items_per_page

a

items_per_page

b

integer

c

The maximal number of items (references) that should be displayed on a page at once.

0 means all.

It is used only if the FlexForm option is set to -1.

d

12

max_authors

a

max_authors

b

integer

c

The maximal number of authors to display.

0 means all

It is used only if the FlexForm option is set to -1.

d

0

prefNav

a

prefNav

b

Array

c

-> prefNav

Configures the preferences navigation bar

d

reference

a

reference

b

stdWrap

c

A wrap around the reference data parts. Replaces the ###REFERENCE_WRAP### markers.

d

restrictions

a

restrictions

b

Array

c

-> restrictions

Restricts some content to user groups and content type

d

searchNav

a

searchNav

b

Array

c

Configures the search navigation bar

-> searchNav

d

single_view

a

single_view

b

Array

c

Configures the single view

-> single_view

d

stat_mode

a

stat_mode

b

integer

c

The statistics mode

0: None1: Total2: Year / Total

This is only used if “ TypoScript ”is selected in the FlexForm.

d

0

template

a

template

b

resource

c

The HTML template file for the list view

d

yearNav

a

yearNav

b

Array

c

The (visual) year navigation configuration. See the static include file for more details.

d

Examples:

  • Set the html-template

    plugin.tx_sevenpack_pi1 {

    template = /fileadmin/templates/my_sevenpack.tmpl

    }

  • Change the all number wrap

plugin.tx_sevenpack_pi1 {

enum.all.wrap = <span>|</span>

}

plugin.tx_sevenpack_pi1.authors

This array contains some values that influence the author string generation.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

forename

a

forename

b

stdWrap

c

Forename wrap

d

highlight

a

highlight

b

stdWrap

c

Author highlightning wrap

d

separator

a

separator

b

string/stdWrap

c

Author separator and its wrap

d

surname

a

surname

b

stdWrap

c

Surname wrap

d

template

a

template

b

string

c

Full author name template string. Should contain ###FORENAME### and ###SURNAME###. The default string expects a spacing wrap of around the surname.

d

###FORENAME######SURNAME###

url_icon_fields

a

url_icon_fields

b

string

c

A comma separated list of fields that must be set before a link can be created.

d

url

url_icon_file

a

url_icon_file

b

Resource

c

The image file to use as a link icon

d

url_icon

a

url_icon

b

stdWrap

c

The wrap around the icon image.

d

In this example the author field fe_user_id is used to create a link

plugin.tx_sevenpack_pi1.authors {

url_icon_fields = fe_user_id

url_icon.typolink {

# Unset default value

parameter.field >

# A Page id

parameter = 42

# Append the fe_user_id parameter

additionalParams.field = fe_user_id

additionalParams.wrap = &tx_feuserlisting_pi1[showUid]=|

}

}

plugin.tx_sevenpack_pi1.authorNav

Here the author navigation bar is configured. Not all values are listed.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

template

a

template

b

Resource

c

The HTML template

d

plugin.tx_sevenpack_pi1.pageNav

Here the page navigation bar is configured. Not all values are listed.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

template

a

template

b

Resource

c

The HTML template

d

plugin.tx_sevenpack_pi1.prefNav

Here the preferences navigation bar is configured. Not all values are listed.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

template

a

template

b

Resource

c

The HTML template

d

ipp_values

a

ipp_values

b

String

c

A comma separated listof available 'items per page' options

d

5,10,20,30,40,50

ipp_default

a

ipp_default

b

Integer

c

The default items per page value

d

10

plugin.tx_sevenpack_pi1.searchNav

Here the search navigation bar is configured. Only the most important values are listed.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

template

a

template

b

Resource

c

The HTML template

d

abstracts.def

a

abstracts.def

b

Bool

c

Default value for 'Search in abstract'

d

0

clear_start

a

clear_start

b

Bool

c

If set to 1 no references will be shown when no search phrase is given

d

0

extra.def

a

extra.def

b

Bool

c

Default value for 'Advanced search'

d

0

full_text.def

a

full_text.def

b

Bool

c

Default value for 'Search in Full text'

d

0

rule.def

a

rule.def

b

String

c

Default value for the search rule. Can be'AND' or 'OR'

d

AND

separator.def

a

separator.def

b

String

c

Default value for the search string separator. Can be 'none', 'space', 'semi' or 'pipe'

d

space

plugin.tx_sevenpack_pi1.field

Most fields can be wrapped with stdWrap. Additionally this default wrap can be overridden for specific bibtypes with a plugin.tx_sevenpack_pi1.field.BIBTYPE.FIELDstatement.

The following example wraps the organization field with a <span> but (and only) in case of a book with a <div>.

plugin.tx_sevenpack_pi1.field {

organization.wrap = <span>|</span>

book.organization.wrap = <div>|</div>

}

Basically every field can be wrapped. Here is a list of fields that are created from the database or have a different name there.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

author

a

author

b

stdWrap

c

Each author

d

authors

a

authors

b

stdWrap

c

All authors

d

auto_url

a

auto_url

b

stdWrap

c

The automatically generated url

d

auto_url_short

a

auto_url_short

b

stdWrap

c

The automatically generated shortened url

d

editor_each

a

editor_each

b

stdWrap

c

Each editor

d

file_url_short

a

file_url_short

b

stdWrap

c

The short file url

d

web_url_short

a

web_url_short

b

stdWrap

c

The short web url

d

web_url2_short

a

web_url2_short

b

stdWrap

c

The short web url 2

d

To wrap the forename or surname check the plugin.tx_sevenpack_pi1.authorsarray.

To avoid (or create?) confusion it may happen that in the output something looks like a field wrap but actually is defined in the html templated used by sevenpack.

More examples:

Wrap title and the whole authors string and each author

plugin.tx_sevenpack_pi1 {

field.title.wrap = TITLE --- | --- TITLE

field.authors.wrap = AUTHORS --- | --- AUTHORS

field.author.wrap = <b>|</b>

}

plugin.tx_sevenpack_pi1.restrictions.TABLE.FIELD_NAME

Each field from each sevenpack tables can be restricted to specific FE user groups. The table names are not literally but abbreviated with

  • 'ref' for 'tx_sevenpack_references' and
  • 'authors' for 'tx_sevenpack_authors'

The interpreted restriction values are listed below.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

hide_all

a

hide_all

b

Bool

c

Allways hide this field. The fields is revealed when FE_user_groups is set and matches.

d

hide_file_ext

a

hide_file_ext

b

String

c

Hide on string ending. Comma separated values of string endings. E.g. '.pdf,.ppt'

d

FE_user_groups

a

FE_user_groups

b

String

c

'all' or a comma separated list of fe_user group ids. E.g. '12,45,76'

d

Examples:

file_url only gets displayed if it does not end with '.pdf' or '.ppt'

plugin.tx_sevenpack_pi1 {

restrictions.ref {

file_url.hide_file_ext = .pdf,.ppt

}

}

The same but now all logged in frontend users are allowed to see the file links

plugin.tx_sevenpack_pi1 {

restrictions.ref {

file_url.hide_file_ext = .pdf,.ppt

FE_user_groups = all

}

}

This is a more elaborated example where many fields are hidden for users that are not logged in.

temp.sevenpack_fe_grp = 2

temp.sevenpack_restrict {

hide_all = 1

FE_user_groups < temp.sevenpack_fe_grp

}

plugin.tx_sevenpack_pi1 {

restrictions {

ref {

file_url < temp.sevenpack_restrict

DOI < temp.sevenpack_restrict

web_url < temp.sevenpack_restrict

web_url2 < temp.sevenpack_restrict

}

authors {

url < temp.sevenpack_restrict

fe_user_id < temp.sevenpack_restrict

}

}

}

plugin.tx_sevenpack_pi1.classes

Here some CSS classes are defined.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

author_highlight

a

author_highlight

b

CSS class

c

CSS class for (filtered) author highlightning.

d

tx_sevenpack-author_hl

even

a

even

b

CSS class

c

CSS class for even rows.

d

tx_sevenpack-item_even

odd

a

odd

b

CSS class

c

CSS class for odd rows.

d

tx_sevenpack-item_odd

plugin.tx_sevenpack_pi1.single_view

This array configures the single view.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

all_labels

a

all_labels

b

stdWrap

c

Wraps the field labels

d

wrap = |:

dont_show

a

dont_show

b

String

c

A list of comma separated field names that should not be displayed

d

uid,pid,in_library,...

Check the static include file

field_wrap

a

field_wrap

b

Array

c

This is the same as the tx_sevenpack_pi1.field array but overrides the values from there for the dingle view.

d

template

a

template

b

Resource

c

Defines the HTML template file

d

EXT:sevenpack/res/templates/single_view.html

title

a

title

b

stdWrap

c

Wrap for the title string in the HTML template ###SINGLE_VIEW_TITLE###

d

post_text

a

post_text

b

String / stdWrap

c

Some text & wrap can be set here. It will be inserted in the HTML template for the marker ###POST_TEXT###

d

empty

pre_text

a

pre_text

b

String / stdWrap

c

The same as post_text but for the marker ###PRE_TEXT###

d

empty

The following example wraps the title in the list view with a link to the single view.

Inside the single view the wrap gets overridden with a wrap that does nothing since a link there would not make too much sense.

plugin.tx_sevenpack_pi1 {

# Wraps the title with a link to the single view

field {

title.single_view_link = 1

}

single_view {

# Overrides any wrap from field.title

field_wrap.title.wrap = |

}

}

plugin.tx_sevenpack_pi1.editor

These options configure the frontend editor and the list view in edit mode.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

default_pid

a

default_pid

b

integer

c

The uid of the default publication storage folder. This is useful if there are multiple storages to read from but only one into which new publications should go.

d

delete_no_ref_authors

a

delete_no_ref_authors

b

Bool

c

Delete authors without publications after a publication save

d

1

field_default.XXX

a

field_default.XXX

b

Array

c

This array defines the default values for new entries.

E.g.

field_default.in_library = 1

sets all new entries to be in the library. This works for most fields but not for the authors field.

d

full_text

a

full_text

b

Array

c

Configures the full text extraction

->full_text

d

list

a

list

b

Array

c

Configures the list view in edit mode

d

no_edit

a

no_edit

b

Array

c

Configures which fields should not be allowed to be edited -> no_edit

d

no_show

a

no_show

b

Array

c

Configures which fields should not be shown

-> no_show

d

warnings

a

warnings

b

Array

c

Which data checks should be performed before save -> warnings

d

Here is an example

plugin.tx_sevenpack_pi1.editor {

# This is convenient when multiple storages are selected

default_pid = 12345

field_default {

note = This book is in the library

in_library = 1

}

}

plugin.tx_sevenpack_pi1.editor.full_text

These options configure the full text extraction from PDF files to the full_text field which can be searched.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

pdftotext_bin

a

pdftotext_bin

b

Resource

c

Absolute path to the pdftotext binary

d

/usr/bin/pdftotext

tmp_dir

a

tmp_dir

b

Directory

c

Directory where temporary text files will be created

d

/tmp

max_num

a

max_num

b

Integer

c

The maximal number of caches to update in one turn.

d

100

max_sec

a

max_sec

b

Integer

c

The maximal number of seconds to spend for updating full text caches.

d

5

update

a

update

b

Bool

c

Enables automatic text extraction from PDFs during save or import of publication references by the FE editor.

d

0

Here is an example

plugin.tx_sevenpack_pi1.editor.full_text {

# Activate text extraction for full_text field

update = 1

# Set a custom pdftotext binary

pdftotext_bin = /usr/local/bin/pdftotext

}

plugin.tx_sevenpack_pi1.editor.list

Here the behaviour of the list view in the edit mode is configured

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

warnings.file_nexist

a

warnings.file_nexist

b

Bool

c

Enable a 'file does not exist' warning if a local file does not exist

d

1

plugin.tx_sevenpack_pi1.editor.no_edit

With no_edit fields can be set not editable in the FE editor. The fields and values still get displayed. Have a look at the no_show variable if fields should be hidden completely.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

FIELD_NAME

a

FIELD_NAME

b

Bool

c

If set to 1 then the field FIELD_NAME can't be edited in the FE editor

d

0

Here is an example

plugin.tx_sevenpack_pi1.editor.no_edit {

# The citeid should not be touched by editors

citeid = 1

}

plugin.tx_sevenpack_pi1.editor.no_show

no_show allows to hide fields in the FE editor completely.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

FIELD_NAME

a

FIELD_NAME

b

Bool

c

If set to 1 then the field FIELD_NAME doesn't show up in the FE editor

d

0

An example

plugin.tx_sevenpack_pi1.editor.no_show {

# We don't use the library fields, so please hide them

extern = 1

reviewed = 1

in_library = 1

borrowed_by = 1

}

plugin.tx_sevenpack_pi1.editor.warnings

Before saving the FE editor performs some data checks. These can be enabled/disabled here.

Property:

a

Property:

b

Data type:

c

Description:

d

Default:

empty_fields

a

empty_fields

b

Bool

c

Check if all required fields have a value

d

1

file_nexist

a

file_nexist

b

Bool

c

Check if a local file in 'file_url' exists

d

1

double_citeid

a

double_citeid

b

Bool

c

Check if an other reference with the same citeid exists

d

1

Here is an example

plugin.tx_sevenpack_pi1.editor.warnings {

# Disable the 'empty fields' check

empty_fields = 0

}

plugin.tx_sevenpack_pi1.enum
Property:

a

Property:

b

Data type:

c

Description:

d

Default:

all

a

all

b

String/stdWrap

c

Wrap for 'Count all' enumeration

d

String: ###I_ALL###

Wrap: |.

bullet

a

bullet

b

String/stdWrap

c

Wrap for 'Bullet' enumeration

d

String: &bull;

Wrap: |

empty

a

empty

b

String/stdWrap

c

Wrap for 'Empty' enumeration. (Not used)

d

file_icon

a

file_icon

b

String/stdWrap

c

Wrap for 'File Icon' enumeration

d

String: ###FILE_URL_ICON###

Wrap: <div class="tx_sevenpack-file_url_icon">|</div>

file_icon_image

a

file_icon_image

b

stdWrap

c

Wrap for the link image

d

A typolink for 'file_url'

page

a

page

b

String/stdWrap

c

Wrap for 'Count page' enumeration

d

String: ###I_PAGE###

Wrap: |.

plugin.tx_sevenpack_pi1.export
Property:

a

Property:

b

Data type:

c

Description:

d

Default:

enable_export

a

enable_export

b

Comma separated values

c

Which export links should be available in the list view:

'bibtex' - BibTeX

'xml' - Sevenpack XML

d

bibtex,xml

FE_groups_only

a

FE_groups_only

b

String

c

This can be a comma separated list of FE user group uids which are allowed to export only.

Can also be 'all' to allow any logged in user.

d

bibtex

a

bibtex

b

stdWrap

c

The wrap for the BibTeX export link

d

label

a

label

b

String & stdWrap

c

The export label and its wrap

d

path

a

path

b

resource

c

The path where the export files will be stored

d

separator

a

separator

b

String & stdWrap

c

The export link separator string and its wrap

d

xml

a

xml

b

stdWrap

c

The wrap for the XML export link

d

plugin.tx_sevenpack_pi1.import
Property:

a

Property:

b

Data type:

c

Description:

d

Default:

bibtex

a

bibtex

b

stdWrap

c

The wrap for the BibTeX import link

d

label

a

label

b

String & stdWrap

c

The import label and its wrap

d

separator

a

separator

b

String & stdWrap

c

The import link separator string and its wrap

d

xml

a

xml

b

stdWrap

c

The wrap for the XML import link

d

The HTML templates

In construction of the list view all data from the database is merged into HTML templates which consists of blocks which are displayed or merged one into another depending on the situation. The location of the HTML template files in the local file system is set by the TypoScript variable plugin.tx_sevenpack_pi1.templates and in the plugin.tx_sevenpack_pi1.xxxNav.template variables.

Tutorial

None so far.

Known problems

None so far.

To-Do list

These are some thoughts of what could be done.

An administration backend plugin

Changelog

The changelog is kept in the ChangeLog file in the plugin root directory.

32