Form feldolgozott adatainak megjelenítése lapozóval.

Phoere képe

Sziasztok!

Ennek a kérdésnek az előzménye itt van:
http://drupal.hu/forum/sajat-form-keszitese/18178

Működik a form, a beküldött adatok alapján az urlap_result() függvényben összeállításra kerül egy db_select. Ezzel a lekérdezésnek megfelelő tartalmak egyes mezői kerülnek táblázatosan kilistázásra. Mivel a lista hosszú lehet, így értelemszerűen lapozó kellene,de ezt nem sikerült összehoznom.

Drupal verzió: 
aboros képe

szuper, köszi! először arra gondoltam megkérdezem, hogy a fenébe derítetted ezt ki, tán soronként elolvastad az .incet? aztán megnéztem, és rögtön tényleg az elején ott van, hogy

/**
* Display the cart contents for review during checkout.
*/

olvashatnék, ha már van szemem. nagyon kösz!

sajnos ez nem egy sminkfüggvény, úgyhogy magába a modulba tudom csak befolyásolni a működést. az utókor számára leírom, így oldottam meg az egész feladatot:

  • a cart/checkout oldalnak van egy sminkfüggvénye, abba be lehet tenni könnyedén a képet így:
    template.php
    /* fizetes oldal sminkelese, hogy megjelenjenek a kepek */
     
    function framework_cart_review_table($show_subtotal = TRUE) {
    	#drupal_set_message('aboros');
      $items = uc_cart_get_contents();
      $subtotal = 0;
     
      $output = '<table class="cart-review"><thead>'
               .'<tr class="first last odd"><td class="first odd qty">'. t('Qty')
               .'</td><td class="even products">'. t('Products')
               .'</td><td class="last odd price">'. t('Price')
               .'</td></tr></thead><tbody>';
     
      $row = 1;
      for ($i = 0; $i < count($items); $i++) {
        $item = $items[$i];
        $rows = array();
        foreach ($item->options as $option) {
          // $rows[] = $option['attribute'] .': '. $option['name'];
          $rows[] = t('@attribute: @option', array('@attribute' => $option['attribute'], '@option' => $option['name']));
        }
        /* begin: aboros display field_image_cache first item */
        $node = node_load($item->nid);
        $img = theme('imagecache', 'product_list', $node->field_image_cache[0]['filepath']);
        /* end: aboros ! note: $img is inserted in the next line!
        $desc = check_plain($item->title) . '<br />' . $img . theme('item_list', $rows, NULL, 'ul', array('class' => 'product-options'));
     
        $total = ($item->qty) ? $item->qty * $item->price : $item->price;
        $subtotal += $total;
        $qty = ($item->qty) ? $item->qty : '';
        $tr_class = ($i % 2 == 0) ? 'even' : 'odd';
        if ($show_subtotal && $i == count($items)) {
          $tr_class .= ' last';
        }
     
        $output .= '<tr class="'. $tr_class .'"><td class="qty">'
                 . t('!qtyx', array('!qty' => $qty)) .'</td><td class="products">'
                 . $desc .'</td><td class="price">'. uc_currency_format($total)
                  .'</td></tr>';
      }
      if ($show_subtotal) {
        $tr_class = ($tr_class == 'even') ? 'odd' : 'even';
        $output .= '<tr class="'. $tr_class .' last"><td class="subtotal" '
                  .'colspan="4"><span id="subtotal-title">'. t('Subtotal:')
                  .'</span> '. uc_currency_format($subtotal) .'</td></tr>';
      }
      $output .= '</tbody></table>';
     
      return $output;
    }
  • ha arra is szükségünk van, hogy a cart/checkout/review oldalon is megjelenjenek a megvásárlásra kiválasztott termékek képei, akkor azt már sajnos csak az uc_cart modul hekkelésével érhetjük el (thx: sgabe), így:
    uc_cart_checkout_pane.inc fileban szereplő azonos nevű eljárást cseréljük erre:
    function uc_checkout_pane_cart($op) {
      switch ($op) {
        case 'view':
          $contents['cart_review_table'] = array(
            '#value' => theme('cart_review_table'),
            '#weight' => variable_get('uc_pane_cart_field_cart_weight', 2),
          );
          return array('contents' => $contents, 'next-button' => FALSE);
     
        case 'review':
          $items = uc_cart_get_contents();
          $output = '<table>';
          foreach ($items as $item) {
            $rows = array();
            foreach ($item->options as $option) {
              $rows[] = t('@attribute: @option', array('@attribute' => $option['attribute'], '@option' => $option['name']));
            }
            /* begin: aboros insert field_image_cache image dirthack */
            $node = node_load($item->nid);
            $img = theme('imagecache', 'product_list', $node->field_image_cache[0]['filepath']);
            /* end: aboros ! note: $img added next line! */
            $desc = check_plain($item->title) . '<br />' . $img . theme('item_list', $rows, NULL, 'ul', array('class' => 'product-options'));
            $output .= '<tr valign="top"><td>'. $item->qty .'x</td><td width="100%">'. $desc
                      .'</td><td nowrap="nowrap">'. uc_currency_format($item->price * $item->qty) .'</td></tr>';
          }
          $output .= '</table>';
          $review[] = $output;
          return $review;
      }
    }

nagyon kösz a segítséget mindenkinek!

0
0

-
clear: both;

calendar modul fordított dátum

mat323 képe

Sziasztok!

Drupal 5.3, Date 5.x-1.8, Calendar 5.x-1.7 és magyarosítani szeretném a naptár dátumkezelését.
Próbálkoztam, de az eredmény csak félsiker lett.
Ha kiteszem a naptárat egy jobb oldali blokkba, akkor "április 2008" lesz a blokk címe (ami randa), viszont a naptár fejlécében már (helyesen) "2008. ápr" lesz.

Születésnap előrejelzés

belulo képe

Weblapomon a felhasználók megadhatnak magukról néhány adatot. Mindehhez a Content Profile modult használom. Az egyik mező a születésnapjuk (field_dob), dátum típusú. Szeretném egy blokkban előre jelezni, hogy a közeljövőben kinek lesz születésnapja. Sokat olvasgattam utána, leírom, mire jutottam. Hátha van ennél egyszerűbb megoldás is.

A Profil tartalomtípusban új mezőt hozok létre Next Birthday (field_next_birthday), ami számított lesz (computed field modul kell hozzá). Mindezt azért, hogy makd jól rendezze a születésnapokat. A számítási módhoz ezt írom:

 
Drupal verzió: 
Melyik modulhoz, modulokhoz kapcsolódik a téma?: 

Adatok kinyerése "SELECT" és "RADIOS" típusú mezőkből

HoLa képe

Jó estét!

Sajnos megakadtam egy meglehetősen primitív problémával. Van egy rádiógombcsoportom és egy legördülő menüm:

// rádió gombok:
$form['fizetes']['comment_preview'] = array(
  '#type' => 'radios',
  '#title' => t('Paing type'),
  '#required' => TRUE,
  '#default_value' => variable_get('comment_preview', 0),
 // próbáltam így is:
 '#options' => array(t('bank'), t('post'), t('personal')),
 // és így is:
  '#options' => array(
  '1' => t('bank'),
  '2' => t('post'),
  '3' => t('personal'),
  ),
);
 
// legördülő menü:
$options2 = array();

Hogyan állítható be egy rejtett webform elem értéke?

Kolos képe

I have a Webform in drupal 7. I want to add a hidden field porgramatically to it, and I would like to set the value of this field per form. I want to achieve all these in a custom submit function. At the moment everything is working, except to set the value. I googled it a lot, tried out hundreds of codes but non of them worked in my case.

Here is my code:

Sziasztok!

Drupal verzió: 
Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
chx képe

Felesleges két topicot indítani. Egyébként a phpmailer classnak nincs magyarítása. Lépésről lépésre?

  1. Download class.smtp.inc from
       http://www.phpguru.org/downloads/smtp/smtp.class-1.0.5.tar.gz
     Place the file in the Drupal includes directory.
  2. Place smtp.inc in the Drupal includes/ directory.
  3. Change your configuration file to include:
       $conf["smtp_library"] = "includes/smtp.inc";

Miért érzem úgy, hogy ezt nem olvastad, pedig linkeltem neked? Most az egyszer lefordítanom neked szinte csak a Delete segítségével:

  1. http://www.phpguru.org/downloads/smtp/smtp.class-1.0.5.tar.gz
  2. (a fentiből a) smtp.inc includes/ (-be)
  3. A konfigurációs fájlba:
       $conf["smtp_library"] = "includes/smtp.inc";

Ennyi.A drupal.org -ról linkelt másik megoldás a phpmailer classt használja, és mellékeltek egy összekötő kis fájlt. Annak a readme-je is hasonlóan bonyolult.

0
0
pentike képe

Megoldás:

A &lt;form&gt; tag paraméterei között szerepelni kell, hogy enctype = 'multipart/form-data' mert egyébként nem tölti föl a böngésző a fájlokat a szerverre.

Ezt úgy lehet elérni, hogy csinálunk egy saját sjátmodulneve_nodeapi() kampót valahogy így:
(a példa az upload.modul-ból van)

function upload_nodeapi(&$node, $op, $arg) {
  switch ($op) {
/*...*/
    case 'form param':
      if (variable_get("upload_$node->type", 1) && user_access('upload files')) {
        $output['options'] = array('enctype' => 'multipart/form-data');
      }
      break;
/*...*/
      return $output;
}
0
0
Paal képe

Sziasztok!

Próbálok pár dolgot javítani a store.module fordításábam. A Drupal.hu fordítási oldalán található store-module.po 419 sort tartalmaz (71, 48, 300). Gondoltam, a legutóbbi változatban már van pár olyan sor is, ami esetleg nem szerepel ebben. Próbáltam előállítani a .pot fájlt, de a következő hibaüzenetet kapom:

Starting.
 
Processing extractor-hu.php...
Processing store.inc...
Processing store_macros.inc...
Processing store.module...
Invalid marker content in store.module:142
* t($name)
 
Invalid marker content in store.module:324
* t("<strong>{$misc->description}</strong>: %price",array('%price'=>payment_format($misc->price)))
 
Invalid marker content in store.module:550
* t($name)
 
Processing store.install...
 
Done.

A kapott store.module.pot fájlt poEdit-ben nézve, ezek a sorok nem is találhatóak benne. Mi lehet a hiba? Hogy tudom helyre rakni?
A kapott fájl, hogy lehet összefésülni a már meglévő fordítással?

Köszi, Pali

Ps.: hm, most nézem. Az update.sh-t kellene hozzá használnom?

0
0

--
Palócz Paal Pál, a drupal.hu admin csoportjának tagja
Ajánlott olvasmány: Eric Steven Raymond - Hogyan kérdezzünk okosan

pp képe

A probléma az, hogy a kódot nézve én nem látom a hibát, de olyan, mintha lenne egy változód, amihez nem hozzáfűzöd a tartalmat, hanem felülírod azzal. De a kódodban nincs ilyen rész, mert print-et használsz.

ha a kódod így nézne ki:

foreach($node->files as $file)
     {
        $imagePath = $file->filepath;
        $imageTitle = $file->description;
       if($imagePath != "") {
          $output = '<div class="image-attach-body"><img src="'.base_path().'/'.$imagePath.'" alt="" title="'.$imageTitle.'"  class="image image-thumbnail "/></div>';
       }
     }  
return $output;

máris mondanám, hogy a  $output = ... helyett  $output .= ... kéne használnod. De így ennyi kódból nem lehet megmondani, hogy hol a hiba, hisz amint Aires is utalt rá a leírásod nem teljesen érthető. (legalábbis én nem értem és szerintem a többiek sem.)

Szóval több kódot kéne mutatnod, ha azt akarod, hogy segítsünk.

pp

0
0