felfedett szűrő eredmények

fecske95 képe

Hogy tudom elérni, hogy egy nézetben felfedett szűrővel való keresésnél az eredmények csak az alkalmaz gomb megnyomása után jelenjenek meg?

Drupal verzió: 
fecske95 képe

Most látom, hogy állati nagy baromságot kérdeztem... :-) Bocsánat.
A lényegében a nézet csak akkor jelenítsen meg bármit is, ha a felfedett szűrőket beállította és alkalmazta valaki.
Természetesen vannak nem felfedett szűrők is beállítva, amik szintén az eredmény velejárói.

0
0
dj képe

ha nem állít be semmit a felfedett szűrőkön csak az alkalmaz gombra kattint?

0
0

Üdv!
Dudás József

fecske95 képe

Akkor sem kapjon eredményt... legalább is jó lenne ha nem.
Alaphelyzetben ne jelenjen meg semmi a nézetben csak a szűrők. A szűrő feltétel alkalmazása után pedig a keresett tartalom.

0
0
dj képe

a felfedett szűrőknek alaphelyzetben is van értékük, pl. ha üres a szövegmező akkor kihagyja a feltételt a lekérdezésből, az eredmény egyértelmű. Ezeket hogy vegye az SQL figyelembe az elképzelésed szerint?

0
0

Üdv!
Dudás József

dj képe

hogy kötekedni akarok. Azonban ezek teljesen felborítják az alapvető logikát amire a views épül:

Az első:

  • létrehozni egy global : NULL argumentumot
  • Alapértelmezett argumentum létrehozása check kiválasztása
  • üresen hagyni a mezőt ahol meg lehetne adni
  • Ellenőrzést php-ra
  • ezt a kódot megadni:

    <?php
    $is_filtered = FALSE;
    foreach ($view->filter as $filter) {
      if ($filter->options['exposed']) {
        if (!empty($view->display[$view->current_display]->handler->handlers['filter'][$filter->options['field']]->value)) {
          $is_filtered = TRUE;
          break;
        }
      }
    }
    return $is_filtered;
    ?>
  • üres oldal megjelenését kiválasztani a műveletnél

A másodiknál kell egy minimodul amiben ezt adjuk meg:

/**
* Implementation of hook_views_pre_render()
*/
function modulneve_views_pre_render(&$view) {
  if ($view->name == 'viewunk_neve' && $view->current_display == 'oldal neve' && empty($view->exposed_input) ) {
     $view->result = array();
  }
}

Egyiket sem ajánlom használni, kipróbálni jó.

0
0

Üdv!
Dudás József

fecske95 képe

Köszi a választ gondoltam, hogy ez a kérdés felvetés nem egy views barát dolog. Viszont, akkor nincs más hátra mint előre és marad views lista a szűrők alatt minden esetben.

0
0
fecske95 képe

A szép megoldás ez lett...
Views search modul
http://drupal.org/project/views_search

0
0