lightbox 2 ed ingradimento

8 contenuti / 0 new
Ultimo contenuto
lightbox 2 ed ingradimento

ciao a tutti.... volevo capire come fare a togliere ad un certo tipo di contenuto la possibilità di ingrandire l'immagine con lightbox... nel senso... uno vede l'immagine mini nella pagina, ci clicca su e poi in autpmatico la vede ingrandita, poi in basso a destra la può ancora ingrandire tramite il pulsantino apposta...
ecco io voglio togliere quel simpatico pulsantino solo ed esclusivamente ad un certo tipo di contenuto....

mi sapete dire come fare?????

potresti fare in modo che lightbox2 ti apra l'immagine grande ad una dimensione che vuoi tu... con imagecache decidi dei preset di immagine (es una anteprima di larghezza 100 e quella grande di 640) poi sul campo immagine creato (tipo di contenuto - visualizza campi) decidi da dove partire (anteprima) a dove arrivare (grande).
Così non ti dovrebbe comparire lo zoom.

Passione per Drupal
http://retialternative.it

Puoi farlo con un pò di codice.
La tua tema avrà un file chiamato template.php (troverai un esempio in themes/garland/template.php)
In quel file ci sarà una funzione phptemplate_preprocess_node(&$variables) oppure NOME-DELLA-TEMA_preprocess_node(&$variables). Vedi http://api.drupal.org/api/function/template_preprocess_node/6

Dentro questa funzione bisogna aggiungere il test e codice per modificare il parametro di lightbox:

$node = $variables['node'];
if ($node->type == 'tipo che mi interessa') { // scrivi il 'machine name' qui
  static $already_modified = FALSE;
  if (!$already_modified) {
    $already_modified = TRUE;
    $js = drupal_add_js();
    foreach ($js['setting'] as $key => $element) {
      if (isset($element['lightbox2'])) {
        $js_lightbox = $element['lightbox2'];
        $js_lightbox['disable_zoom'] = TRUE; // o altri modifiche ai params
        drupal_add_js(array('modifiedLightbox2' => $js_lightbox), 'setting');
        // cambi i parametri in JavaScript
        drupal_add_js('Drupal.settings.lightbox2 = Drupal.settings.modifiedLightbox2;', 'inline');
        break;
      }
    }
  }
}

Non è 'pulito' perchè non ho trovato modo di modificare l'array esistente. Così ho dovuto duplicarlo, e sostituire i valori in JavaScript. Sigh.
Ma almeno funziona...

John

Più imparo, più dubito.

ho risolto alla fine grazie....

Bene, deve restare un mistero il come hai risolto?

Più imparo, più dubito.

eh eh...

Passione per Drupal
http://retialternative.it

ho risolto con il sistema di enrik4drupal

Andata allora...!

Passione per Drupal
http://retialternative.it