Vorlage:Literatur nachschlagen: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Fix Stichworte) |
(→Entwicklung: Beim Drucken leere Spalten verbergen) |
||
(26 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | <includeonly>{{# | + | <includeonly><!-- |
− | + | ||
− | + | -->{{#vardefine: ask_query_Kategorie_Literatur|<!-- | |
− | + | -->[[Kategorie:Literatur]] [[Hat Unterobjekt::+]]<!-- | |
− | + | -->{{#if: {{{Titel|}}}| <!-- | |
− | + | -->[[Titel::~*{{{Titel|}}}*<!-- | |
− | + | -->||~*{{LC:{{{Titel|}}}}}*<!-- | |
− | + | -->||~*{{UC:{{{Titel|}}}}}*<!-- | |
− | + | -->||~*{{UCFIRST:{{{Titel|}}}}}*<!-- | |
− | + | -->]] }}<!-- | |
− | + | -->{{#if: {{{Autorenschaft|}}}| <!-- | |
− | --> | + | -->[[Autorenschaft::~*{{{Autorenschaft|}}}*<!-- |
− | + | -->||~*{{LC:{{{Autorenschaft|}}}}}*<!-- | |
− | -->}} | + | -->||~*{{UC:{{{Autorenschaft|}}}}}*<!-- |
+ | -->||~*{{UCFIRST:{{{Autorenschaft|}}}}}*<!-- | ||
+ | -->]] }}<!-- | ||
+ | -->{{#if: {{{Herausgeberschaft|}}}| <!-- | ||
+ | -->[[Herausgeberschaft::~*{{{Herausgeberschaft|}}}*<!-- | ||
+ | -->||~*{{LC:{{{Herausgeberschaft|}}}}}*<!-- | ||
+ | -->||~*{{UC:{{{Herausgeberschaft|}}}}}*<!-- | ||
+ | -->||~*{{UCFIRST:{{{Herausgeberschaft|}}}}}*<!-- | ||
+ | -->]] }}<!-- | ||
+ | -->{{#if: {{{Sammelwerk|}}}| <!-- | ||
+ | -->[[Sammelwerk::~*{{{Sammelwerk|}}}*<!-- | ||
+ | -->||~*{{LC:{{{Sammelwerk|}}}}}*<!-- | ||
+ | -->||~*{{UC:{{{Sammelwerk|}}}}}*<!-- | ||
+ | -->||~*{{UCFIRST:{{{Sammelwerk|}}}}}<!-- | ||
+ | -->]] }}<!-- | ||
+ | -->{{#if: {{{Jahr|+}}}| [[Jahr::{{{Jahr|+}}}]] }}<!-- | ||
+ | BUG: ? Stichwort vom Typ Seite wird zu MySQL LIKE "mein\\_Stichwort" und findet nichts | ||
+ | (wenn die Seite nicht existiert?) daher " " mit * (also * → % LIKE "mein%Stichwort") ersetzten | ||
+ | -->{{#if: {{{Stichwort|}}}<!-- | ||
+ | DANN | ||
+ | -->|<!-- | ||
+ | -->{{#if: {{#pos: {{{Stichwort|}}}|ODER}}{{#pos: {{{Stichwort|}}}|UND}}<!-- | ||
+ | Dann: ODER / UND | ||
+ | -->|{{#if: {{#pos: {{{Stichwort|}}}|ODER}}<!-- | ||
+ | dann: enthält ODER | ||
+ | -->|[[Stichwort in Kleinschreibung::~*{{#arraymap: {{{Stichwort|}}}|ODER|@@@@|{{LC:@@@@}}|*{{!}}{{!}}~* }}*]]<!-- | ||
+ | oder: enthält UND | ||
+ | -->|<!-- | ||
+ | -->{{#arraymap: {{{Stichwort|}}}|UND|@@@@|[[Stichwort in Kleinschreibung::~*{{LC:@@@@}}*]]| }}<!-- | ||
+ | -->}}<!-- Ende pos: ODER oder UND | ||
+ | Oder: kein ODER / UND | ||
+ | -->|<!-- | ||
+ | --><!-- [[Suchstichwort::~*{{{Stichwort|}}}*]] | ||
+ | -->[[Stichwort in Kleinschreibung::~*{{LC:{{{Stichwort|}}}}}*]]<!-- | ||
+ | -->}}<!-- Ende pos: ODER / UND | ||
+ | -->}}<!-- | ||
+ | -->}}<!-- Ende vardefine | ||
+ | |||
+ | -->{{#vardefine: ask_query_Stichwort_auf_Seite|<!-- | ||
+ | |||
+ | -->{{#if: {{#pos: {{{Stichwort|}}}|ODER}}{{#pos: {{{Stichwort|}}}|UND}}<!-- | ||
+ | Dann: ODER / UND | ||
+ | -->|<!-- | ||
+ | |||
+ | -->{{#if: {{#pos: {{{Stichwort|}}}|ODER}}<!-- | ||
+ | dann: enthält ODER | ||
+ | -->|<!-- | ||
+ | -->{{#arraymap: {{{Stichwort|}}}|ODER|@@@@|[[Stichwort auf Seite::+]]<!-- [[Suchstichwort::~*@@@@*]] -->[[Stichwort in Kleinschreibung::~*{{LC:@@@@}}*]]| | ||
+ | OR | ||
+ | }}<!-- | ||
+ | oder: enthält UND | ||
+ | -->|[[Stichwort auf Seite::+]]<!-- | ||
+ | -->[[Stichwort in Kleinschreibung::{{#arraymap: {{{Stichwort|}}}|UND|@@@@|~*{{LC:@@@@}}*| {{!}}{{!}} }}]]<!-- | ||
+ | -->}}<!-- Ende pos: ODER oder UND | ||
+ | |||
+ | Oder: kein ODER / UND | ||
+ | -->|<!-- | ||
+ | -->[[Stichwort auf Seite::+]]<!-- | ||
+ | --><!--[[Suchstichwort::~*{{{Stichwort|}}}*]]--><!-- | ||
+ | -->[[Stichwort in Kleinschreibung::~*{{LC:{{{Stichwort|}}}}}*]]<!-- | ||
+ | -->}}<!-- Ende if pos: ODER / UND | ||
+ | -->}}<!-- Ende vardefine | ||
+ | |||
+ | |||
+ | |||
+ | -->{{#ask: {{#var: ask_query_Kategorie_Literatur}} | ||
|mainlabel=Literaturschlüssel<br/>Seite | |mainlabel=Literaturschlüssel<br/>Seite | ||
|?Titel | |?Titel | ||
Zeile 18: | Zeile 83: | ||
|?Jahr | |?Jahr | ||
|?Sammelwerk | |?Sammelwerk | ||
− | |?Suchstichwort=Stichwörter | + | <!-- |?Suchstichwort=Stichwörter --> |
|limit=1000 | |limit=1000 | ||
|format=count | |format=count | ||
− | |outro= Ergebnisse ([[#input_search_criteria|Suche | + | |outro= Ergebnisse gefunden ([[#input_search_criteria|Suche verändern ]][[File:Find - lens (OSEG 76B729, Griffin-Mono-v3.5, apps gtk-find).svg|x22px|link=#input_search_criteria]]). <!-- |
− | -->{{#if: {{{Autorenschaft|}}}{{{Jahr|}}}{{{Sammelwerk|}}}{{{Stichwort|}}}{{{Titel|}}}<!-- | + | -->{{#if: {{{Autorenschaft|}}}{{{Jahr|}}}{{{Sammelwerk|}}}{{{Stichwort|}}}{{{Titel|}}}{{{Herausgeberschaft|}}}<!-- |
then-->|Gesucht wurde:<!-- | then-->|Gesucht wurde:<!-- | ||
else-->|(Keine Sucheinschränkung)<!-- | else-->|(Keine Sucheinschränkung)<!-- | ||
-->}} | -->}} | ||
− | }}{{#if: {{{Autorenschaft|}}}{{{Jahr|}}}{{{Sammelwerk|}}}{{{Stichwort|}}}{{{Titel|}}}<!-- | + | }}{{#if: {{{Autorenschaft|}}}{{{Jahr|}}}{{{Sammelwerk|}}}{{{Stichwort|}}}{{{Titel|}}}{{{Herausgeberschaft|}}}<!-- |
then-->| | then-->| | ||
<div class="definition-inline"><!-- | <div class="definition-inline"><!-- | ||
Zeile 33: | Zeile 98: | ||
-->{{#if: {{{Jahr|}}}|<nowiki></nowiki> | -->{{#if: {{{Jahr|}}}|<nowiki></nowiki> | ||
; Jahr : {{{Jahr|}}} }}<!-- | ; Jahr : {{{Jahr|}}} }}<!-- | ||
+ | -->{{#if: {{{Herausgeberschaft|}}}|<nowiki></nowiki> | ||
+ | ; Herausgeber : enthält „{{{Herausgeberschaft|}}}“ }}<!-- Herausgeberschaft | ||
-->{{#if: {{{Autorenschaft|}}}|<nowiki></nowiki> | -->{{#if: {{{Autorenschaft|}}}|<nowiki></nowiki> | ||
; Autorenschaft : enthält „{{{Autorenschaft|}}}“ }}<!-- | ; Autorenschaft : enthält „{{{Autorenschaft|}}}“ }}<!-- | ||
Zeile 41: | Zeile 108: | ||
vorhandene Stichworte anzeigen -->{{ | vorhandene Stichworte anzeigen -->{{ | ||
#arraydefine: Array_Stichwortliste_Ergebnis | #arraydefine: Array_Stichwortliste_Ergebnis | ||
− | |{{#ask: | + | |{{#ask: {{#var: ask_query_Stichwort_auf_Seite}} <!-- |
− | |||
− | |||
− | |||
− | |||
− | |||
--> | --> | ||
|mainlabel=- | |mainlabel=- | ||
|?Suchstichwort# | |?Suchstichwort# | ||
− | |format=array | + | |format=array|link=none|headers=hide|titles=hide |
− | |sep=; | + | |sep=;|manysep=; |
− | |sort= | + | |sort=Suchstichwort |
}} | }} | ||
|; |sort=asc, unique | |; |sort=asc, unique | ||
Zeile 67: | Zeile 129: | ||
|print=pretty | |print=pretty | ||
}} | }} | ||
+ | }}{{ | ||
+ | #ifexpr: {{#var: nStichworte}} = 1 | ||
+ | |{{#ifeq: {{#arrayprint: Array_Stichwortliste_Ergebnis}} | {{{Stichwort|}}} <!-- | ||
+ | dann -->|<!-- nichts | ||
+ | oder -->|<br />dazu fand sich das Stichwort: {{#var: Stichwortliste_Ausgabe}} | ||
+ | }} | ||
}}{{ | }}{{ | ||
#ifexpr: {{#var: nStichworte}} > 1 | #ifexpr: {{#var: nStichworte}} > 1 | ||
− | |<br />dazu fanden sich {{#var: nStichworte}} | + | |<br />dazu fanden sich {{#var: nStichworte}} Stichworte insgesamt (aus der Sammlung der Ergebnisse): {{#var: Stichwortliste_Ausgabe}} |
}}<!-- | }}<!-- | ||
-->}}<!-- Stichwort | -->}}<!-- Stichwort | ||
Zeile 75: | Zeile 143: | ||
}} | }} | ||
− | <div | + | <!-- <div class="mw-collapsible mw-collapsed"> |
− | + | Ask Abfrage DEBUG Informationen … | |
− | + | <div class="mw-collapsible-content" style="padding-left:1em;border-left:1px solid gray;"> | |
− | + | {{#tag: pre|DEBUG ask_query: {{#var: ask_query_Kategorie_Literatur}} | |
− | + | |class="debug" | |
− | + | }} --><!-- | |
− | + | ||
− | + | --><!-- {{#tag: pre|DEBUG ask_query: {{#var: ask_query_Stichwort_auf_Seite}} | |
− | + | |class="debug" | |
− | + | }} | |
− | + | </div> | |
− | + | </div> --><!-- Ende DEBUG --> | |
− | + | Tabellenergebnis: | |
− | + | <div style="max-height:400px; overflow-y:scroll" id="Literatur_Tabellenergebnis" class="Literatur-Ergebnistabelle">{{#ask: {{#var: ask_query_Kategorie_Literatur}} | |
|mainlabel=Literaturschlüssel<br/>Seite | |mainlabel=Literaturschlüssel<br/>Seite | ||
|?Titel | |?Titel | ||
|?Autorenschaft=Autoren | |?Autorenschaft=Autoren | ||
+ | |?Herausgeberschaft=Herausgeber | ||
|?Jahr | |?Jahr | ||
|?Sammelwerk | |?Sammelwerk | ||
− | |limit= | + | |?Band |
+ | |?Auflage | ||
+ | |limit=100 | ||
+ | |default= ''Keine Einträge gefunden'' | ||
|class=sortable booktabledotted smwtable jquery-tablesorter vertical-align-top | |class=sortable booktabledotted smwtable jquery-tablesorter vertical-align-top | ||
+ | }}</div><!-- | ||
+ | |||
+ | Um selbige Suchergebisse vermittels COinSPAN anzubieten (könnten versteckt sein, aber besser sichtbar, zum Herauskopieren) für Literatur-Import in Literaturprogramm (Zotero-Browser-Erweiterung sollte dies erkennen) | ||
+ | --> | ||
+ | <hr class="Literatur-Ergebnistext"/> | ||
+ | Ergebnis als Literaturverzeichnis sortiert: | ||
+ | <div style="max-height:400px; overflow-y:scroll;" class="Literatur-Ergebnistext">{{#ask: {{#var: ask_query_Kategorie_Literatur}} | ||
+ | |format=list | ||
+ | |sep=  | ||
+ | |sort=Sortierschlüssel | ||
+ | |mainlabel=- | ||
+ | |link=none | ||
+ | |default= ''Keine Einträge gefunden'' | ||
+ | |limit=100 | ||
+ | |?Formatierte Literaturausgabe (Kapitälchen)#= | ||
}}</div><!-- | }}</div><!-- | ||
− | -->{{Literatur erstellen oder bearbeiten}} | + | --><div class="noprint block">{{Literatur erstellen oder bearbeiten}}</div> |
</includeonly><noinclude><!-- | </includeonly><noinclude><!-- | ||
Zeile 103: | Zeile 190: | ||
Zu benutzen für [[Spezial:Abfrage ausführen/Literatur nachschlagen]] welches das [[Formular: Literatur nachschlagen]] und diese Vorlage benutzt. Es wird eine #ask Abfrage ausgeführt, die mittels [[Formular: Literatur nachschlagen]] mit Suchwörtern befüllt werden kann. | Zu benutzen für [[Spezial:Abfrage ausführen/Literatur nachschlagen]] welches das [[Formular: Literatur nachschlagen]] und diese Vorlage benutzt. Es wird eine #ask Abfrage ausgeführt, die mittels [[Formular: Literatur nachschlagen]] mit Suchwörtern befüllt werden kann. | ||
− | == Parameter == | + | == Vorlagenbeiwerte (Parameter) == |
<div class="definition-inline"> | <div class="definition-inline"> | ||
− | ; Titel= : Titel eines Literatureintrages | + | ; |Titel= : Titel eines Literatureintrages |
− | ; Autorenschaft= : Autorenschaft eines Literatureintrages | + | ; |Autorenschaft= : Autorenschaft eines Literatureintrages |
− | ; Sammelwerk= : Sammelwek/Zeitschrift eines Literatureintrages | + | ; |Herausgeberschaft= : Herausgeberschaft eines Literatureintrages (Suche: klein, GROß, Substantiviert) |
− | ; Jahr= : Jahr eines Literatureintrages | + | ; |Sammelwerk= : Sammelwek/Zeitschrift eines Literatureintrages |
− | ; Stichwort= : Stichwort eines Literatureintrages | + | ; |Jahr= : Jahr eines Literatureintrages |
+ | ; |Stichwort= : Stichwort eines Literatureintrages | ||
</div> | </div> | ||
Zeile 117: | Zeile 205: | ||
* [[Vorlage: Fix Datentyp-Seite-Suche für Attribut]] | * [[Vorlage: Fix Datentyp-Seite-Suche für Attribut]] | ||
* [[Datei:Find - lens (OSEG 76B729, Griffin-Mono-v3.5, apps gtk-find).svg|x22px]] [[:Datei:Find - lens (OSEG 76B729, Griffin-Mono-v3.5, apps gtk-find).svg]] | * [[Datei:Find - lens (OSEG 76B729, Griffin-Mono-v3.5, apps gtk-find).svg|x22px]] [[:Datei:Find - lens (OSEG 76B729, Griffin-Mono-v3.5, apps gtk-find).svg]] | ||
+ | |||
+ | |||
+ | * [[Formular: Literatur nachschlagen]] | ||
+ | * [[Vorlage: Literatur erstellen oder bearbeiten]] | ||
+ | * [[Vorlage: Literatur]] | ||
+ | * [[mediawikiwiki: Extension:Semantic MediaWiki|Extension:Semantic MediaWiki]] | ||
+ | * [[mediawikiwiki: Extension:Semantic Forms|Extension:Semantic Forms]] bzw. spätere Versionen: [[mediawikiwiki: Extension:Page Forms|Extension:Page Forms]] | ||
+ | * [[mediawikiwiki: Extension:Arrays|Extension:Arrays]] | ||
+ | * [[mediawikiwiki: Extension:Variables|Extension:Variables]] | ||
+ | |||
+ | === CSS === | ||
+ | |||
+ | <syntaxhighlight lang="css"> | ||
+ | @media print { | ||
+ | div.Literatur-Ergebnistabelle, | ||
+ | div.Literatur-Ergebnistext { | ||
+ | max-height:unset!important; | ||
+ | overflow-y:unset!important; | ||
+ | } | ||
+ | hr.Literatur-Ergebnistext { page-break-before: always; } | ||
+ | .noprint.block { display: none; } | ||
+ | .pf-runquery-formcontent {display:none;} /* das Abfrageformular selbst */ | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == Entwicklung == | ||
+ | |||
+ | '''Beim Drucken leere Spalten verbergen''' – Mit folgendem JavaScript kann man leere Spalten auf <code>display:none;</code> umschalten, er ist verändert nach [https://stackoverflow.com/a/62030750 Pauls Antwort zur Frage “Removing empty column in html table using jQuery” (26. Mai 26, 2020 um 20:20 stackoverflow.com)]: | ||
+ | <syntaxhighlight lang="javascript"> | ||
+ | function removeEmptyColumns() { | ||
+ | $('#Literatur_Tabellenergebnis table tr th').each(function(i) { | ||
+ | //select all td in this column | ||
+ | var tds = $(this).parents('table') | ||
+ | .find(`tr td:nth-child(${i + 1})`); | ||
+ | // check if all the cells in this column are empty | ||
+ | // Note: Empty strings return 'false' - trim whitespace before. | ||
+ | if (tds.toArray().every(td => !td.textContent.trim())) { | ||
+ | //hide header | ||
+ | $(this).hide(); | ||
+ | //hide cells | ||
+ | tds.hide(); | ||
+ | } | ||
+ | }); | ||
+ | } | ||
+ | </syntaxhighlight> | ||
[[Kategorie: Semantisches Wiki]] | [[Kategorie: Semantisches Wiki]] | ||
[[Kategorie: Formular]] | [[Kategorie: Formular]] | ||
</noinclude> | </noinclude> |
Aktuelle Version vom 28. September 2023, 17:59 Uhr
Zu benutzen für Spezial:Abfrage ausführen/Literatur nachschlagen welches das Formular: Literatur nachschlagen und diese Vorlage benutzt. Es wird eine #ask Abfrage ausgeführt, die mittels Formular: Literatur nachschlagen mit Suchwörtern befüllt werden kann.
Vorlagenbeiwerte (Parameter)
- |Titel=
- Titel eines Literatureintrages
- |Autorenschaft=
- Autorenschaft eines Literatureintrages
- |Herausgeberschaft=
- Herausgeberschaft eines Literatureintrages (Suche: klein, GROß, Substantiviert)
- |Sammelwerk=
- Sammelwek/Zeitschrift eines Literatureintrages
- |Jahr=
- Jahr eines Literatureintrages
- |Stichwort=
- Stichwort eines Literatureintrages
Abhängigkeiten
- Vorlage: Literatur erstellen oder bearbeiten
- Vorlage: Fix Datentyp-Seite-Suche für Attribut
- Datei:Find - lens (OSEG 76B729, Griffin-Mono-v3.5, apps gtk-find).svg
- Formular: Literatur nachschlagen
- Vorlage: Literatur erstellen oder bearbeiten
- Vorlage: Literatur
- Extension:Semantic MediaWiki
- Extension:Semantic Forms bzw. spätere Versionen: Extension:Page Forms
- Extension:Arrays
- Extension:Variables
CSS
@media print {
div.Literatur-Ergebnistabelle,
div.Literatur-Ergebnistext {
max-height:unset!important;
overflow-y:unset!important;
}
hr.Literatur-Ergebnistext { page-break-before: always; }
.noprint.block { display: none; }
.pf-runquery-formcontent {display:none;} /* das Abfrageformular selbst */
}
Entwicklung
Beim Drucken leere Spalten verbergen – Mit folgendem JavaScript kann man leere Spalten auf display:none;
umschalten, er ist verändert nach Pauls Antwort zur Frage “Removing empty column in html table using jQuery” (26. Mai 26, 2020 um 20:20 stackoverflow.com):
function removeEmptyColumns() {
$('#Literatur_Tabellenergebnis table tr th').each(function(i) {
//select all td in this column
var tds = $(this).parents('table')
.find(`tr td:nth-child(${i + 1})`);
// check if all the cells in this column are empty
// Note: Empty strings return 'false' - trim whitespace before.
if (tds.toArray().every(td => !td.textContent.trim())) {
//hide header
$(this).hide();
//hide cells
tds.hide();
}
});
}