[Gelöst] Größe des Eingabefeldes für exposed filter ändern?
am 23.12.2010 - 20:44 Uhr in
Hallo!
Hoffentlich ist das eine einfache Frage, die womöglich in die Anfängerfragen gehört hätte...? ;-)
Ich habe mit Views eine Suchseite erstellt, die verschiedene exposed filter anbietet - unter anderem auch eine Abfrage von 4-stelligen Baujahren (von-bis), für die mir einfach das Eingabefeld zu lang ist. Folgendes gibt die Seite zu dem Feld her:
Hier wird also size mit 30 festgelegt... nur wo und wie ändere ich das mal einfach so auf z.B. 10 ??
Sicher eine Amateurfrage ;-) aber mit den mir gerade noch so geläufigen Einträgen in der style-base.css tut sich gar nix und das ganze Theming Zeug mit dem Modifizieren von *.tpl.php ist doch nur für die Ausgabe der Suchergebnisse geeignet (oder?).
In der views_handler_filter_numeric.inc (die von der Bezeichnung her ja für meinen numeric filter greifen könnte...) habe ich zumindest mal die size-Angabe 30 gefunden, nur möchte ich da nicht rumpfuschen, ohne zu wissen, was ich tue... und vor allem sind doch die Modifikationen dort futsch, wenn ich ein Views-Update mache.
Bin für jeden Tipp oder besser noch eine konkrete Anweisung dankbar!
- Anmelden oder Registrieren um Kommentare zu schreiben

Einzige Lösung?
am 24.12.2010 - 11:12 Uhr
Also ich habe jetzt die Größe in der
sites/all/modules/views/handlers/views_handler_filter_numeric.inc
von 30 auf 10 umgestellt... aber die generische Umstellung für alle (!) numerischen minmax Filter an der Stelle hat natürlich die Nachteile:
- Die Größe gilt nun für alle Filter mit diesem Typ
- Die Einstellungen werden übergebügelt, wenn ich ein Views update mache (?)
Hat jemand vielleicht noch eine andere Anleitung, wie ich die Größe auf konkrete Felder beziehe und dann noch auf einer Ebene angebe, die nicht durch Modulupdates überschrieben wird?
Danke (und frohes Fest schon mal... ;-))
Nimm Firefox, installiere
am 24.12.2010 - 18:44 Uhr
Nimm Firefox, installiere dort Firebug und schau damit mal nach, wie und wo die Breiten-Angaben für das Feld definiert werden. Dann kannst du die Werte entsprechend ändern oder in der View eine eigene CSS-Datei laden und darin die Werte festlegen.
Festgelegt wird die Größe wohl hier...
am 27.12.2010 - 14:30 Uhr
... wie erwähnt handelt es sich ja um die Eingabefelder eines exposed Filters von Views. Es ist ein numerisches Feld, bei dem ich als Filter "liegt zwischen" (oder so) ausgewählt habe - auf jeden Fall also ein "Doppelfeld" bei dem ich ein Min und ein Max eingeben und danach filtern kann.
Der Firebug ist schon lange mein Freund...;-) trotzdem komme ich (als Amateur) nur so weit, daß ich da folgenden Code für das Feld/den Bereich finde:
<div class="views-widget"><div id="edit-field-fp-baujahr-value-min-wrapper" class="form-item">
<input type="text" class="form-text" value="" size="30" id="edit-field-fp-baujahr-value-min" name="field_fp_baujahr_value[min]" maxlength="128">
</div>
<div id="edit-field-fp-baujahr-value-max-wrapper" class="form-item">
<label for="edit-field-fp-baujahr-value-max">bis: </label>
<input type="text" class="form-text" value="" size="30" id="edit-field-fp-baujahr-value-max" name="field_fp_baujahr_value[max]" maxlength="128">
</div>
</div>
Der Ursprung für size="30" liegt wohl in der oben schon genannten sites/all/modules/views/handlers/views_handler_filter_numeric.inc mit dem Abschnitt:
if ($which == 'all' || $which == 'minmax') {
$form['value']['min'] = array(
'#type' => 'textfield',
'#title' => empty($form_state['exposed']) ? t('Min') : '',
'#size' => 30,
'#default_value' => $this->value['min'],
);
$form['value']['max'] = array(
'#type' => 'textfield',
'#title' => empty($form_state['exposed']) ? t('And max') : t('And'),
'#size' => 30,
'#default_value' => $this->value['max'],
);
(oder?).
Im DOM Fenster des Firebug finde ich dann die 30 auch nochmal als size wieder, kann das aber mangels Detailkenntnissen nicht recht zuordnen... es findet sich unter "previousSibling". Wenn ich den Bereich öffne, finde ich auch zwei Zeilen, die nach einem "CSS stylebaren Element" aussehen:
div#edit-field-fp-baujahr-value-min-wrapper.form-item
input#edit-field-fp-baujahr-value-min.form-text
Das bezieht sich auch definitiv beides auf das Feld, was ich in der Größe beeinflussen will - nur mit welcher Syntax und in welche CSS schreibe ich die gewünschte Konfig? Meine übliche Vorgehensweise war bisher immer, zu überschreibende Definitionen am Ende der style-base.css anzufügen und damit die Standards zu überschreiben. Also so in der Form
input#edit-field-fp-baujahr-value-min-wrapper.form-text {
size: 10px;
background-color: #000000; /*nur als Test*/
}
Da tut sich aber gar nix. auch nicht mit Variationen ohne div, input, ohne # oder hinten mit form-item statt form-text usw. - das ist natürlich alles trial+error mangels besseren Wissens ;-)
Vielleicht kann mir einfach jemand die richtige Syntax (oder die richtige CSS) verraten und das Thema ist in 20 Sekunden durch.
Danke vorab!
width statt size...
am 27.12.2010 - 15:23 Uhr
Doch noch geschafft...
Wie dämlich... nach vielen Versuchen mit ID und Class Variationen bin ich dann doch mal darauf gestossen (worden), hier width statt size zu nehmen und siehe da, es funktioniert... also einfach
#edit-field-fp-baujahr-value-min {
width: 70px;
}
in der style-base.css ergänzt und schon hat das Eingabefeld die korrekte Breite. Naja - als Anfänger braucht man halt etwas mehr Zeit für die einfachen Dinge. ;-)