popup content

gdavid képe

Szeretnék egy olyan inline-popup (?) szerűséget csinálni az oldalamra, ami egy általam készített form-ot vagy tartalmat jelenít meg.

az lenne a lényeg, hogyha atalakitom az url-t
modulom/valami -ről pop/modulom/valami -re akkor a megjelenő ablakban úgy jelenjem meg a modulom/valami oldal, hogy csak a content jelenik meg, de az rendesen beformázva.

elore is kosz

Illyés Edit képe

Egy új page_valami.tpl.php-t kell készítened, ami csak a $contentet és a stíluslapokat tartalmazza, és útvonaltól függően include-olnod a page.tpl.php tetején.

<?php
if (feltétel) {
include_once('page_valami.tpl.php');
return;
}
?>

Gányolás jellegű megoldás, ha valakinek van más tippje, engem is érdekel :)

Esetleg thickbox-szal lehet próbálkozni, bár a drupalos illesztés egyelőre azt hiszem csak képeket tud.

0
0
crt képe

Elméletileg működik a page-pop.tpl.php fájl is, kiírtva belőle a felesleges részeket. De szerintem nem gányolás, van amikor elkerülhetetlen ez a módszer.

Üdv: Zoli

0
0
pp képe

Én spec modult fejlesztettem rá direkt. Ha jön a spec útvonal, akkor bekapcsolja a naked sminket amiben nincs semmi, csak a $content, meg persze a html keret és a head-ben a megfelelő cuccok, hisz nem menne a sok frankó js enélkül.

pp

0
0
Illyés Edit képe

Ez megy magától? Hányas Drupal alatt? Nem tudom most kipróbálni. Vagy előbb átírod a $vars-ban a template nevét?

0
0
crt képe

Nem, mint pp rámutatott, tényleg csak eredeti útvonalak esetében működik. Aliasokra még ezt találtam: http://drupal.org/node/139766
De ez nyilván akkor lehet hasznos, ha sok ilyen oldalt kell lekezelni, amit Te írtál az jobb megoldás.

Üdv: Zoli

0
0
gdavid képe

mutatom az en megoldasomat.
hatranya, hogy be kellett hegesztenem a jquery thickbox kiegesziteset.

pop.module:

function pop_menu($may_cache=FALSE) {
  $items[]=array( 
         'path'=>'pop',
         'access'=>TRUE, 
         'callback'=>'pop_itup', 
         'type'=>MENU_CALLBACK, 
         'weight'=>-99
  );
  return $items;
}
 
function pop_itup() {
  global $_GET, $pop_path;
  $pop_path= "pop/";
  $_GET['q']= substr($_GET['q'],4);
  $return = menu_execute_active_handler();
  return $return;
}
 
 
function custom_url_rewrite($forras='source',$res,$path) {
  global $base_url,$pop_path,$user;
  return $pop_path.$res;
}

pelda.module:

function pelda_fuggveny() {
  drupal_add_js('misc/thickbox-compressed.js');
  drupal_add_css('misc/thickbox.css');
  $output.=l($sor->cnev,'pop/valami',
                 array('class'=>'thickbox'),
                'TB_iframe=true&height=400&width=600');
   print theme('page',$output);
}

es ha rakattintanak a linkre, az megnyilik egy kis ablakban.

szeretnem vhogy lecserelni, mert bar mukodik, de ha a pop-up ablakban egy masik pop-up-os linket teszek, akkor rosszul kezeli. A nem pop-os linkek abban az ablakban jelennek meg helyesen.

0
0