new InfoLog configuration: Load custom fields in index, if filtered by selected types (eg. to display them in a type-specific index template)

This commit is contained in:
Ralf Becker 2011-11-17 09:30:30 +00:00
parent 6d17a1a168
commit f255a2396a
5 changed files with 38 additions and 17 deletions

View File

@ -902,11 +902,19 @@ class infolog_so
$ids[$info['info_id']] = $info;
}
static $index_load_cfs;
if (is_null($index_load_cfs) && $query['col_filter']['info_type'])
{
$config_data = config::read('infolog');
$index_load_cfs = (array)$config_data['index_load_cfs'];
}
// if no specific custom field is selected, show/query all custom fields
if ($ids && ($query['custom_fields'] || $query['csv_export']))
if ($ids && ($query['custom_fields'] || $query['csv_export'] ||
$index_load_cfs && $query['col_filter']['info_type'] && in_array($query['col_filter']['info_type'],$index_load_cfs)))
{
$where = array('info_id' => array_keys($ids));
if (!($query['csv_export'] || strchr($query['selectcols'],'#') === false))
if (!($query['csv_export'] || strchr($query['selectcols'],'#') === false ||
$index_load_cfs && $query['col_filter']['info_type'] && in_array($query['col_filter']['info_type'],$index_load_cfs)))
{
$where['info_extra_name'] = array();
foreach(explode(',',$query['selectcols']) as $col)

View File

@ -1987,6 +1987,7 @@ class infolog_ui
{
$excludefields['#'.$name] = $data['label'];
}
$config_data = config::read('infolog');
if($_POST['save'] || $_POST['apply'])
{
@ -2012,6 +2013,7 @@ class infolog_ui
config::save_value('responsible_edit',$this->bo->responsible_edit,'infolog');
config::save_value('implicit_rights',$this->bo->implicit_rights = $_POST['implicit_rights'] == 'edit' ? 'edit' : 'read','infolog');
config::save_value('history',$this->bo->history = $_POST['history'],'infolog');
config::save_value('index_load_cfs',$config_data['index_load_cfs'] = $_POST['index_load_cfs'],'infolog');
}
if($_POST['cancel'] || $_POST['save'])
{
@ -2047,7 +2049,10 @@ class infolog_ui
'history' => lang('Yes, with purging of deleted items possible'),
'history_admin_delete' => lang('Yes, only admins can purge deleted items'),
'history_no_delete' => lang('Yes, noone can purge deleted items'),
))
)),
'lang_other' => lang('Other configurations'),
'lang_index_load_cfs' => lang('Load custom fields in index, if filtered by selected types (eg. to display them in a type-specific index template)'),
'index_load_cfs' => html::checkbox_multiselect('index_load_cfs',$config_data['index_load_cfs'],$this->bo->enums['type'],true,'',5),
));
echo parse_navbar();

View File

@ -11,6 +11,7 @@
%1 you are responsible for is starting at %2 infolog de %1 für die Sie verantwortlich sind startet am %2
%1 you delegated is due at %2 infolog de %1 die Sie delegierten ist am %2 fällig
%1 you delegated is starting at %2 infolog de %1 die Sie delegierten startet am %2
(and children) deleted infolog de (und Untereinträge) gelöscht.
- subprojects from infolog de - Untereinträge von
0% infolog de 0%
10% infolog de 10%
@ -76,7 +77,6 @@ changed category to %1 infolog de Kategorie geändert zu %1
changed completion to %1% infolog de Erledigt geändert zu %1%
changed status to %1 infolog de Status geändert zu %1
changed type infolog de Typ geändert
charset of file infolog de Zeichensatz der Datei
check all infolog de Alle marktieren
check to set startday infolog de ankreuzen um Startdatum zu setzen
check to specify custom contact infolog de Ankreuzen um einen eigenen Kontakt anzugeben
@ -179,7 +179,6 @@ error: the entry has been updated since you opened it for editing! infolog de Fe
execute a further action for this entry infolog de Eine weitere Aktion für diesen Eintrag ausführen
existing links infolog de Bestehende Verknüpfungen
exists infolog de Besteht
export definitition to use for nextmatch export infolog de Export Profil der Listenansicht (Disketten Symbol)
exports infolog entries into a csv file. infolog de Exportiert Infolog Einträge in einen CSV Datei.
fax infolog de Fax
field must not be empty !!! infolog de Feld darf nicht leer sein !!!
@ -189,8 +188,6 @@ first argument for preg_replace infolog de Ersten Argument für pre_replace
for serial letter use this tag. put the content, you want to repeat between two tags. infolog de Für Serienbriefe benutzen Sie folgenden Platzhalter. Fügen die den Inhalt zwischen diese beiden Platzhalter ein.
for which types should this field be used infolog de für welche Typen soll dieses Feld benutzt werden
from infolog de Von
general infolog de Allgemein
general fields: infolog de Allgemeine Felder
global categories infolog de Globale Kategorien
group owner for infolog de Gruppeneigentümer für
high infolog de hoch
@ -203,8 +200,6 @@ id infolog de Id
id# infolog de Id#
if a type has a group owner, all entries of that type will be owned by the given group and not the user who created it! infolog de Wenn ein Typ einen Gruppeneigentümer hat, gehören alle Einträge dieses Typs der angegebenen Gruppe und NICHT dem Benutzer der sie angelegt hat!
if not set, the line with search and filters is hidden for less entries then "max matches per page" (as defined in your common preferences). infolog de Falls nicht gesetzt, wird die Suche und die Filter ausgeblendet für weniger Einträge als "maximale Treffer pro Seite" (in ihren allgemeinen Einstellungen definiert).
if you specify an export definition, it will be used when you export infolog de Wählen Sie eine Export Definition für den Export.
import infolog de Import
import next set infolog de Nächsten Satz importieren
importance infolog de Wichtigkeit
imports entries into the infolog from a csv file. csv means 'comma seperated values'. however in the options tab you can also choose other seperators. infolog de Importiert Einträge in das Infolog Modul aus einer CSV Datei (Komma getrennte Werte).
@ -249,10 +244,10 @@ links infolog de Verknüpfungen
links of this entry infolog de Verknüpfungen dieses Eintrags
list all categories infolog de Alle Kategorien anzeigen
list no subs/childs infolog de Untereinträge nicht anzeigen
load custom fields in index, if filtered by selected types (eg. to display them in a type-specific index template) infolog de Benutzerdefinierte Felder in Liste laden, wenn nach einem der folgenden InfoLog Typen gefiltert wird (z. B. für ein type-spezifisches Listen-Template)
location infolog de Ort
longer textual description infolog de längere textliche Beschreibung
low infolog de niedrig
manage mapping infolog de Verwaltung der Zuordnung
max length of the input [, length of the inputfield (optional)] infolog de max. Länge der Eingabe [, Länge des Eingabefeldes (optional)]
modifier infolog de Geändert von
modifierer infolog de Geändert von
@ -293,6 +288,7 @@ open(status) infolog de offen
optional note to the link infolog de zusätzliche Notiz zur Verknüpfung
order infolog de Reihenfolge
organization infolog de Organisation
other configurations infolog de Weitere Konfigurationen
overdue infolog de überfällig
own infolog de eigene
own open infolog de eigene offen
@ -320,6 +316,8 @@ primary link infolog de Primäre Verknüpfung
priority infolog de Priorität
private infolog de Privat
project infolog de Projekt
project id infolog de Projekt-ID
project name infolog de Projektname
project settings: price, times infolog de Einstellungen zum Projekt: Preis, Zeiten
projectmanager infolog de Projektmanager
re-planned infolog de Umgeplant
@ -425,7 +423,6 @@ to what should the startdate of new entries be set. infolog de Auf was soll das
today infolog de Heute
todays date infolog de heutiges Datum
todo infolog de Aufgabe
translation infolog de Translation
typ infolog de Typ
typ '%1' already exists !!! infolog de Typ '%1' existiert bereits !!!
type infolog de Typ

View File

@ -244,6 +244,7 @@ links infolog en Links
links of this entry infolog en Links of this entry
list all categories infolog en List all categories
list no subs/childs infolog en List no subs/childs
load custom fields in index, if filtered by selected types (eg. to display them in a type-specific index template) infolog en Load custom fields in index, if filtered by selected types (eg. to display them in a type-specific index template)
location infolog en Location
longer textual description infolog en Longer text description
low infolog en Low
@ -287,6 +288,7 @@ open(status) infolog en Open
optional note to the link infolog en Optional note to the link
order infolog en Order
organization infolog en Organization
other configurations infolog en Other configurations
overdue infolog en Overdue
own infolog en Own
own open infolog en Own open

View File

@ -13,12 +13,6 @@
<td colspan="3">{lang_responsible_edit}</td>
<td>{responsible_edit}</td>
</tr>
<tr class="row_off">
<td colspan="3">{lang_copy_excludefields}</td>
<td>
{copy_excludefields}
</td>
</tr>
<tr class="th">
<td colspan="4"><b>{lang_history}</b></td>
</tr>
@ -26,6 +20,21 @@
<td colspan="3">{lang_history2}</td>
<td>{history}</td>
</tr>
<tr class="th">
<td colspan="4"><b>{lang_other}</b></td>
</tr>
<tr class="row_off">
<td colspan="3">{lang_copy_excludefields}</td>
<td>
{copy_excludefields}
</td>
</tr>
<tr class="row_on">
<td colspan="3">{lang_index_load_cfs}</td>
<td>
{index_load_cfs}
</td>
</tr>
<tr>
<td colspan="4" align="left">
{save_button} &nbsp; {apply_button} &nbsp; {cancel_button}