Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

Overriding flexinode 'date/time' (timestamp) field

Eingetragen von Poldrack (288)
am 28.06.2006 - 21:04 Uhr in
  • Module

Hi, habe laut der Anleitung auf drupal.org mein flexinode-feld "date/time" gethemt

-> http://drupal.org/node/17455

Funktioniert soweit auch prima. Nur wenn ich die Listenansicht benutze

also:

flexinode/table/x

erscheint das feld nach wie vor mit datum UND zeit. ich brauche jedoch nur das datum und die zeit stört ungemein. Umsteigen hinsichtlich der datumsangabe auf einen anderen feld-type (zB text-feld) möchte ich jedoch auch nicht, da ich zwingend die sortierfunktion hinsichtlich des datums benötige.

Habt Ihr da Ideen?

‹ Book export (Druckversion) Einen Flexinode-Inhaltstyp "Superstatik" mit passendem Template erstellen ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Poste bitte den Code Deines

Eingetragen von quiptime (4972)
am 29.06.2006 - 14:09 Uhr

Poste bitte den Code Deines Template, mit dem Du

Frugol schrieb

mein flexinode-feld "date/time" gethemt

hast.

Offensichtlich hast Du da etwas nicht richtig verstanden bzw. wendest etwas nicht richtig an.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

code

Eingetragen von Poldrack (288)
am 29.06.2006 - 14:23 Uhr

also die Datei

flexinode_timestamp.tpl.php:

<?php
$formatted_value
= strftime ("%d.%m.%Y", $value); // format as Month and Year, eg. 'July 2004'
?>

<div class="flexinode-timestamp-<?php print $field_id; ?>">
<strong><?php print $label; ?>: </strong><br />
<?php print $formatted_value; ?>
</div>

und die Datei

template.php:

<?php //$Id: template.php, v 1.0 2006/06/13 quiptime Exp $
/**
* Catch the theme_print_link function, and redirect through the template api
*/

function phptemplate_print_link($node) {
  return
_phptemplate_callback('print_link', array('node' => $node));
}

/**
* Override theme_flexinode_timestamp() from modules/flexinode/field_timestamp.inc
*/
function phptemplate_flexinode_timestamp($field_id, $label, $value, $formatted_value) {
 
// nothing happens here.
 
return _phptemplate_callback('flexinode_timestamp', array('field_id' => $field_id, 'label' => $label, 'value' => $value, 'formatted_value' => $formatted_value));
}

function
pushbutton_book_export_html($title, $content) {
  global
$base_url;
 
$html = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">' . "\n";
 
$html .= '<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">' . "\n";
 
$html .= '<head>' . "\n";
 
$html .= '<title>'. $title .'</title>' . "\n";
 
$html .= '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />';
 
$html .= '<base href="'. $base_url .'/" />' . "\n";
 
$html .= '<style type="text/css"> @import url(misc/print.css); </style>' . "\n";
 
$html .= '</head>' . "\n";
 
$html .= '<body>' . "\n";
 
$html .= '<img src="/files/aurbannerlogobig.png" />' . "\n";
 
$html .= $content . "\n";
 
$html .= '</body>' . "\n";
 
$html .= '</html>' . "\n";
  return
$html;
}

?>

Danke!

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich sehe mir das Nachher mal

Eingetragen von quiptime (4972)
am 29.06.2006 - 14:36 Uhr

Ich sehe mir das Nachher mal in Ruhe an. Wird ca. 2h dauern bis zu einer Antwort.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

@quiptime

Eingetragen von Poldrack (288)
am 29.06.2006 - 15:04 Uhr

Keine Eile, bin ja megafroh, daß Du mir da unter die Arme greifst. Danke nochmal. :-)

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Um zu testen und auch zu

Eingetragen von quiptime (4972)
am 29.06.2006 - 16:23 Uhr

Um zu testen und auch zu sehen, an welchen Stellen bei der HTML-Ausgabe das Template verwendet wird ändere mal bitte temporär den Templatecode
von

<?php
print $formatted_value;
?>

nach

<?php
print 'MyStamp :'.$formatted_value;
?>

Und schau Dir danach mal an, wo überall "MyStamp :" bei der Anzeige des Timestamp zu sehen ist.

Offensichtlich wird das Timestamp-Template nicht generell bei den Anzeigen verwendet. Das wiederum bedeutet, die Stelle im Code zu finden, welche die Ausgabe mit Datum (also ohne Template) verwendet.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

ja, wie zu erwarten

Eingetragen von Poldrack (288)
am 29.06.2006 - 16:33 Uhr

ja, wie zu erwarten erfolgt die Ausgabe MyStamp bei der Table View Ansicht nicht, bei den anderen Ausgaben schon. Nämlich da, wo auch korrekt das Template überschrieben wird.

Liegt das nun an Flexinode oder liegt dies an views (ich glaube nur mit views war ja die Tabellenansicht möglich im Zusammenhang mit Flexinode)
--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du verwendest für die

Eingetragen von quiptime (4972)
am 29.06.2006 - 16:48 Uhr

Du verwendest für die Anzeige der Tabellenansicht das Modul "views"?

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

views und nein

Eingetragen von Poldrack (288)
am 29.06.2006 - 16:54 Uhr

ähm, nein ... da hab ich mich wohl vertan. ich dachte erst, ich brauche dringend views, damit die tabellenansicht kommt. hab aber views ausgeschaltet und die tabellenansicht erscheint denoch.

der fehler bleibt aber weiter bestehen, das heißt in der tabellenansicht wird das datumsfeld nicht überschrieben:

http://www.autokauf-und-recht.de/listurteile

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich mache mir mal schnell

Eingetragen von quiptime (4972)
am 29.06.2006 - 16:59 Uhr

Ich mache mir mal schnell selbst ein Feld timestamp zu einem Flexinode-Inhaltstypen und auch das Template dazu, damit ich hier nicht völlig rumtheoretisiere.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

super ... an die

Eingetragen von Poldrack (288)
am 29.06.2006 - 17:05 Uhr

super ... an die tabellenansicht gelangst du dann, wenn du eingibst

flexinode/table/x

wobei x = die id der flexinode ist

(ich hab lediglich ein url-alias gesetzt - daher der etwas andere link)

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Es sieht erst mal nicht so

Eingetragen von quiptime (4972)
am 29.06.2006 - 17:21 Uhr

Es sieht erst mal nicht so gut aus mit der Formatierung des Datum in der Tabellenansicht.

Produziert wird die Ausgabe der Tabellenansicht in "flexinode.module" in "function flexinode_page_table".

In dieser Funktion kann ich erst mal keinerlei Optionen zum Beeinflussen des Datum erkennen. Ein Datum wird aus der DB-Tabelle ausgelesen wie jeder andere beliebige Inhalt und dann ausgegeben.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wo genau findest du dies?

Eingetragen von Poldrack (288)
am 29.06.2006 - 17:40 Uhr

Wo genau findest du dies? ich hatte auch schon geschaut, bin aber als laie nicht so recht schlau geworden. notfalls müßte es halt ein hard-code-hack sein, auch wenn ich diese lösungen hasse, wg update und so.

Oder geht es möglicherweise eleganter, wenn ich was im field_timestamp.inc ändere? Daher auch meine Frage im anderen Thema hier.

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Es sieht im Moment nach

Eingetragen von quiptime (4972)
am 29.06.2006 - 18:25 Uhr

Es sieht im Moment nach einem hard-code-hack aus,

da in der Funktion flexinode_page_table ohne Ansehen des Inhaltes diese in die Tabelle geschoben werden - und das Datum wird nicht extra behandelt.

Man muss da eine Abfrage nach einem Datum-Inhalt einbauen und wenn es ein Datum ist, dann soll das Template verwendet werden.

Bin noch dran.

Du hast nicht ganz das Ergebnis des Test weiter oben mit "MyStamp" kapiert zu haben:
Du kannst im Timestamp-Template auch "Hallo Datum" schreiben. In der Tabelle wird "Hallo Datum" nicht ausgegeben, weil die Funktion zur Tabellansicht-Ausgabe NICHT auf das Timestamp-Template zugreift.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Re: Es sieht im Moment nach

Eingetragen von Poldrack (288)
am 29.06.2006 - 18:38 Uhr
quiptime schrieb

Du hast nicht ganz das Ergebnis des Test weiter oben mit "MyStamp" kapiert zu haben:
Du kannst im Timestamp-Template auch "Hallo Datum" schreiben. In der Tabelle wird "Hallo Datum" nicht ausgegeben, weil die Funktion zur Tabellansicht-Ausgabe NICHT auf das Timestamp-Template zugreift.

Habe ich nicht genau dies beschrieben? Dann hab ich mich wohl falsch ausgedrückt ... Mir ist schon klar, daß die Tabellenansicht-Ausgabe nicht auf das Timestamp-Template zugreift. Soweit komme ich schon noch, nur wie ich das ändern kann, da habe ich keinerlei ahnung ...

danke für deine hilfe, ist echt nett

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

So, ich habe eine Lösung.

Eingetragen von quiptime (4972)
am 29.06.2006 - 21:23 Uhr

So,

ich habe eine Lösung. Räume nur noch meinen Code auf und dann poste ich die Lösung.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Flexinode Tabeleview - Format des Datums beeinflussen [Lösung]

Eingetragen von quiptime (4972)
am 29.06.2006 - 23:02 Uhr

Ich wiederhole noch mal: Der Maintainer des Modules Flexinode hat es bisher versäumt, bei der Ausgabe eines Datum-Feldes die Ausgabe auch für die Tabellenansicht durch ein Template veränderbar zu machen.

Meine Lösung stellt also nur einen Hack des Code einer Moduldatei dar und ist keinesfalls eine offizielle Lösung.

Lösung

In der Moduldatei "field_timestamp.inc" die Funktion "flexinode_field_timestamp_format" wie folgt verändern.

 
Vor der Änderung:

<?php
function flexinode_field_timestamp_format($field, $node, $brief = 0) {
 
$fieldname = 'flexinode_'. $field->field_id;

  return
format_date($node->$fieldname);
}
?>

 
Geänderter Code:

<?php
function flexinode_field_timestamp_format($field, $node, $brief = 0) {
 
$fieldname = 'flexinode_'. $field->field_id;

  return
strftime ("%d.%m.%Y", $node->$fieldname);
}
?>

 
Die Nachnutzung des vorhandenen Template erscheint wenig sinnvoll, da das Datum in der Tabellenansicht mit großer Warscheinlichkeit eine andere Formatierung (z. Bsp. Label) bekommensoll als im node. In der Tabelle soll halt einfach nur das Datum gezeigt werden.
Die Formatierung des Datums muss damit logischer Weise in der "field_timestamp.inc" vorgenommen werden.

@Frugol,

sollte auch bei Dir funktionieren. Habe es bei mir getestet - klappt.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Daaankke!

Eingetragen von Poldrack (288)
am 29.06.2006 - 23:22 Uhr

@quiptime

Funktioniert einfach klasse. Danke! Da hast Du mir echt ein ganzes Stück weit geholfen. Jetzt sieht auch meine Tabelle schön aus .... :-))

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Habe eben mal geklickt:

Eingetragen von quiptime (4972)
am 29.06.2006 - 23:31 Uhr

Habe eben mal geklickt: http://www.autokauf-und-recht.de

Sehe nur 'ne leere Seite!

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

arrg

Eingetragen von Poldrack (288)
am 30.06.2006 - 00:12 Uhr

bekomme plötzlich diese fehlermeldung:

warning: Cannot modify header information - headers already sent by (output started at xxxxxx/modules/book.module:1) in xxxxxxx/portal/includes/common.inc on line 139.

scheint mit dem book-modul zusammenzuhängen.

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Schalte mal testhalber auf

Eingetragen von quiptime (4972)
am 30.06.2006 - 00:41 Uhr

Schalte mal testhalber auf ein anderes Theme um.

Oder wenn Du viel am Content rumgefummelt hast hilft manchmal auch, die DB-Tabelle "cache" zu leeren.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

habe mal schnell die

Eingetragen von Poldrack (288)
am 30.06.2006 - 00:42 Uhr

habe mal schnell die vorhergehende book-version aufgespielt und da ging es wieder ... hmm

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Man, ich sehe gerade, Du

Eingetragen von quiptime (4972)
am 30.06.2006 - 00:47 Uhr

Man,

ich sehe gerade, Du bist auch aus Dresden.

Wir sollten uns mal auf einen Kaffee treffen.

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

*g*

Eingetragen von Poldrack (288)
am 30.06.2006 - 00:49 Uhr

hast du meine mail nicht gelesen? *g* hatte ich schon vor ner weile vorgeschlagen ... ;-)

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Bin derzeit dermaßen mit

Eingetragen von quiptime (4972)
am 30.06.2006 - 00:58 Uhr

Bin derzeit dermaßen mit Spam zugekackt das ich sie eventuell auch versehentlich gelöscht habe - nochmal senden bitte.

Bei der Gelegenheit, kann man nicht auch hier Messages an andere Member senden?

-------------
quiptime

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

ja, habe dir auch über

Eingetragen von Poldrack (288)
am 30.06.2006 - 01:03 Uhr

ja, habe dir auch über diese funktion eine nachricht geschickt, die kommt dann aber bei dir auch als email an.

konnte das problem soweit eingrenzen, daß ich beim book-modul themen was falsch gemacht haben muss. Daher sollte wir die diskussion dort fortsetzen -> http://www.drupalcenter.de/node/1184

--------------------------------

http://www.autokauf-und-recht.de

--------------------------------

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Matomo(?) in Seite, aber Deinstalliert!
  • Upgrade Drupal 7 auf Drupal 9 / Inhalt erstellen zeigt nur Fehler an
  • Olivero veraendern
  • Fehlermeldung nach Update auf Drupal 10
  • Wie Button erstellen?
  • footnotes bei D10 und CKE5
  • ckeditor Bilder skalieren
  • Bild in welcher Form die Beschriftung!
  • Drupal 10 und Adaptive Theme 2.0
  • Drupal Commerce: Deprecated Module deinstallieren: CKEditor, RDF
  • [gelötst] Migration einer Seite von D8.9 auf 9 resp 10
  • Theme Olivero - Rand entfernen?
Weiter

Neue Kommentare

  • @onkel Bob,Erst mal
    vor 6 Tagen 14 Stunden
  • Prinzipiell geht das schon.
    vor 6 Tagen 14 Stunden
  • Rubi_2021 schriebWie genau
    vor 1 Woche 5 Tagen
  • Ok, war ein Versuch. ;-) Kann
    vor 1 Woche 5 Tagen
  • Danke
    vor 1 Woche 5 Tagen
  • Redest Du von dem
    vor 1 Woche 5 Tagen
  • Mit sticht das hier ins
    vor 1 Woche 5 Tagen
  • Mit welcher Version Drupal
    vor 1 Woche 5 Tagen
  • Bitte um Hilfe
    vor 1 Woche 6 Tagen
  • Fehler trotz Neuinstallation
    vor 1 Woche 6 Tagen

Statistik

Beiträge im Forum: 248796
Registrierte User: 19831

Neue User:

  • J. Berten
  • vohome
  • DerRalph

» Alle User anzeigen

User nach Punkten sortiert:
wla9333
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3845
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 5 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association