Add modules to easily manage your records (insert, edit and export in backend/eID) in one place.
This extension add modules to easily manage your records (insert, edit and export in backend/eID) in one place (with different PID). It respect the TYPO3 framework and use the tceforms to insert/edit the records. See the screenshots to have an idea of this extension.
Do not hesitate to contact me if you have any good ideas.
This extension work with the last LTS of TYPO3.
In the extension manager you can enable or disable the modules. By default, you will see all the modules:
Next you have to create some configuration (add, edit, export or export eID) to add some items in the module. This configuration records can only be placed on the root page (PID=0).
Important notice:
This extension respect the rights defined in TYPO3. It is necessary to configure the tables/fields of this extension in respect of the rights defined in the “Access” module for a BE user/group.
First, on the root page, add a configuration record of the type "Add":
In this form, you can configure:
- The title of the configuration
- The type (add, edit, export or export eID)
- The table
- Fields to display in the insert form (in respect with the Access module)
- Additional PID where insert some records
- Enable the choose PID function
- Filter by be_groups
The results of this configuration is in the next screenshot:
By default, the extension list all the folder where records of your table are. And you can add some PID. Next the form are a typical tceform with the fields.
First, on the root page, add a configuration record of the type "Edit":
In this form, you can configure:
- The title of the configuration
- The type (add, edit, export or export eID)
- The table
- Fields to display in the list view
- Fields to display in the form (in respect with the Access module)
- Extra WHERE, GROUP BY, ORDER BY and LIMIT to filter the SQL request
- Filter by group
The results of this configuration is in the next screenshot:
Next form are a typical tceform with the fields.
First, on the root page, add a configuration record of the type "Export":
In this form, you can configure :
- The title of the configuration
- The type (add, edit, export or export eID)
- The export mode (XML, CSV or EXCEL)
- The table
- Fields to display in the list view
- Extra WHERE, GROUP BY, ORDER BY and LIMIT to filter the SQL request
- The filter field that allow you to filter on a timestamp field (default tstamp)
- Enable/Disable date fields in short format
- Filter by group
- Field list (separated by ,) not converted by the TCA (example: you can display categories uid instead of label, or you can display timestamp instead of formated date)
The results of this configuration is in the next screenshot:
This kind of configuration allow you to generate a JSON feed according to a TCA table.
First, on the root page, add a configuration record of the type "Export eID":
In this form, you can configure :
- The title of the configuration
- The type (add, edit, export or export eID)
- The table
- The eID key (necessary to access the url)
- Fields to display in the JSON feed
- Extra WHERE, GROUP BY, ORDER BY and LIMIT to filter the SQL request
- Enable/Disable date fields in short format
- Field list (separated by ,) not converted by the TCA (example: you can display categories uid instead of label, or you can display timestamp instead of formated date)
- Extra typoscript code (this section allow a lot of tricky stuff to manipulate datas in your feed). You can use any typoscript function.
Examples of extra typoscript code:
lang = CASE
lang.key.data = field:sys_language_uid
lang.0 = TEXT
lang.0.value = fr
lang.1 = TEXT
lang.1.value = en
date = TEXT
date.data = field:datetime
date.strftime = %Y/%m/%d
heure = TEXT
heure.data = field:datetime
heure.strftime = %H:%M
discipline = TEXT
discipline {
value = ###CATEGORY###
split {
token = ;
wrap = | ,|*||*| |
}
}
discipline.wrap = [|]
disciplinejson = TEXT
disciplinejson {
value = ###CATEGORY###
sngfunc = trimexplode,intval
sngfunc.trimexplode.token = ;
}
doktypejson= TEXT
doktypejson{
value = {field:doktype}
value.insertData = 1
sngfunc = trimexplode,intval
sngfunc.trimexplode.token = ;
}
link = TEXT
link.typolink {
parameter = 169
additionalParams = &tx_ttnews[tt_news]={field:uid}
additionalParams.insertData = 1
returnLast = url
forceAbsoluteUrl = 1
}
Now, you can acces to your JSON at this URL : https://www.example.com/index.php?recordsmanagerkey=xxx&format=json
There is also some extra GET parameter that are interesting:
- format : json OR excel (default)
- pid : allow to specify a PID
- limit : allow to specify a limit
- start & end : allow to specify a date range (timestamps)
"Export" and "Export eID" feature support "powermail" formated results (XML & last versions).