vidra képe

majdnem jó volt a kód. Egy unset($_REQUEST['destination']) be kellett szúrnom mert az istennek se ugrott az oldalra csak várakozott.

  global $user;
  if ($user->uid == '0' && (arg(0) == 'node' && arg(1) == 'add' )) {
  unset($_REQUEST['destination']);
  drupal_set_message(t('A tartalom beküldéséhez regisztráció szükséges!'));
  drupal_goto('user/register');
 }

Köszönöm a segítséget, egyenlőre kiindulásnak ez jó lesz.

0
0
tiburi képe

Na látom, hogy a témám nem érte el az ingerküszöböt. De tutira gond ez másoknak is: http://drupal.org/node/322328
A fenti linken van egy patch is kiadva.
Beírtam a két sort a fájlba, és még a sorrendet is átírtam. A verzióm az, aminek lennie kell (dev), de így sem működik.

$values["location-country_name_$key"] = $countries[$values["location-country_$key"]];
$values["location-provincename_$key"] = $values["location-province_name_$key"];
$values["location-countryname_$key"] = $values["location-country_name_$key"];
0
0
davidadams képe

Megkérdeztem a tárhelyszolgáltatót és ő azt mondta, hogy ki kellene egészíteni a paraméterezést, hogy az 5. paramétert is megadják -f kapcsolóval az alábbi példa szerint:

$to = '[email protected]';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: [email protected]' . "\r\n" .
'Reply-To: [email protected]' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
 
mail($to, $subject, $message, $headers, '-f [email protected]');

Köszönöm a hozzászólásokat...

0
0
Sk8erPeter képe

Azért nem működik az AJAX-szal lekért elemekre, mert azok még nincsenek a DOM-ban akkor, amikor a "hover" eseményre feliratkozol, rákötöd az oldal betöltődése után megjelenő elemekre.

Ezért gondolni kell a "jövőben létrejövő" elemekre is - erre szolgál a jQuery .delegate() függvénye (1.4.3-tól felfelé (tehát a 7-es által alapértelmezettként használt 1.4.4-gyel kell működnie); korábbi: .live(), későbbi (csak 1.7-től felfelé működik): .on()).
Lásd a dokumentációt:
"Attach a handler to one or more events for all elements that match the selector, now or in the future, based on a specific set of root elements."

Valahogy így (csak példa):

$('body').delegate('.views-fluidgrid-item', 'hover', function () {
    $(this).find('.eventtitle').css({
        backgroundColor: 'transparent'
    });
});

Hasonlóan a többire is.
1
-2
vajdasági képe

Ha jol ertem mit is csinaltal akkor tevedsz, baris szerintem. Ha nem tevedek a drupal.org -rol letoltotted azt a mudult, es most magaba a modul szovegebe nyultal bele... Ha legkozelelbb frissited a modult a gondod ujbol elojon ...

A megoldas igy latatlanbol... Gondolom ismered a css -t igy tudnod sejtened kell hogy attol fuggoen hogy peldaul egy div -et a kepenyon jelenitesz meg vagy nyomtatsz kulonbozo keppen tudod css -ezni ...

Arra a folosleg reszre kell a css ben egy display: none;
Magaban a html ben meg kell egy ehhez hasonlo resznek lenni

<link rel="stylesheet" type="text/css" media="screen, projection" href="style/default/default.css" />
<link rel="stylesheet" type="text/css" media="print" href="style/print.css" />

Ahol ugyebar ertelemszeruen a peldamban az also sorban levo print.css tartalmazza azt a display none-t persze megfeleloen celozva.

Ez amit en peldaztam ez nem druplalos fejlesztesembol van de a lenyeg uggyanaz.

Vagyis neked a sminkedban kell megycsinalnod a modositasokat. Ott is a van esely ra hogy az eredeti minkbol lesznek frissitesek, akkor egy uj alsminket hozol letre es abban csinalod a modositasokat. Igy nem lessz gondod ha a modul vagy a sminked frissul...

Gondolom a modulod mar letrehozza a css -eket ...

1
0
SecMan képe

Nyilván azt célozd meg vele, aminél ezt a hatást el akarod érni :)
Pl. Ha a jobb sávodra, ami gondolom egy sidebar-second vagy hasonló nevezetű befoglaló elemet jelent, akkor arra az elemre adod rá.
Ha az ezen belüli egyes blokkokra, akkor megcélzod a jobb-sáv befoglaló elemen belüli blokkokat és azokra adod rá.
Csak a példa kedvéért, a jobb oldalsávot a div.sidebar-second jelenti, a blokkok meg div.block-ot. (ez a sminkedtől függ)
ekkor a css:

  1. div.sidebar-second div.block{
  2. overflow-y: scroll;
  3. height: 150px;
  4. }

De megcélozhatod még ezen belül is magát a tartalmat (a blokk címe nélkül) ha a .block -on belüli div.content-et célzod meg.
Magyarul: konkrétan azt a legkisebb egységed célozd meg, aminél ezt szeretnéd. Látatlanban ennél pontosabban nem fogom tudni megmondani, de Firebuggal vagy Chrome-ban végig is próbálhatod "live" hogy mire kell ráadnod.

3
0
aboros képe

például írhatsz egy form_altert akár a sminkedbe is. mondjuk ezt a template.php fileba:

<?php
function SMINKEDNEVE_form_node_form_alter(&$form, &$form_state, $form_id) {
  $form['field_TERM_REFERENCE_MEZOD_NEVE']['und']['#default_value'] = FALSE;
}

ez csak akkor fog működni, ha nem kötelező ez a mező. remélem ez nem elfogadható ;) nem teljesen értem, hogy miért jó, ha minden file egyetlen nodeban van. (teszem azt valaki véletlenül kitörli ezt a node, szevasz fileok). egy file egy node azzal mi a baj?

vagy van file_entity. ha file-okat töltök fel, amelyekhez más-más cimke dukál, akkor azt a file_entityvel próbálom mostanság, persze kérdés, hogy milyen fileok ezek, mert azokon kívül amiket az definiál, más file typeokat egyelőre csak kóddal (modulodból) tudsz létrehozni. ami persze nem túl veszélyes történet.

igazából az adott helyzet zavar össze a segítésben, nem értem miért jó nekünk, hogy egy nodeba mentjük ezeket a fileokat, csomó ilyen filedalmunk lesz mint ez. ;)

1
0

-
clear: both;

rimbee képe

Hát köszönöm a válaszokat, észben tartom, de igazándiból az a kérdésem, hogy hogyan tudom én szabadon átírni a lekérdezett mezőket, design és tartalom szempontjából egyaránt. Tegyük fel nem kizárólag CSS-el akarom formázni, hanem kell bele némi HTML is, amit CSS-ből nem lehet letrükközni.

"valószínűleg azért nincs fields tpl, mert nem mező alapú megjelenítést alkalmaz a nézeted."
Itt konkrétan mit értesz az alatt, hogy nem mező alapú a lekérdezés? Készítettem egy új nézetet (hírek), a lekérdezés típusa Unformatted List, beállításainál Force using fields be van kapcsolva. Ennek ellenére sem csinál semmit sem a views-view-field.tpl.php, holott már ott van a Theming information közt.

Nem is akárhogyan :)

A teljes Theming Info ablak:
Display output: views-view.tpl.php (File not found, in folder ./), views-view--h-rek.tpl.php, views-view--default.tpl.php, views-view--default.tpl.php, views-view--page.tpl.php, views-view--h-rek--page.tpl.php
Style output: views-view-unformatted.tpl.php (File not found, in folder ./), views-view-unformatted--h-rek.tpl.php, views-view-unformatted--default.tpl.php, views-view-unformatted--default.tpl.php, views-view-unformatted--page.tpl.php, views-view-unformatted--h-rek--page.tpl.php
Row style output: .tpl.php, --h-rek.tpl.php, --default.tpl.php, --default.tpl.php, --page.tpl.php, --h-rek--page.tpl.php
Field Tartalom: Cím (ID: title): views-view-field.tpl.php (File not found, in folder ./), views-view-field--title.tpl.php, views-view-field--h-rek.tpl.php, views-view-field--h-rek--title.tpl.php, views-view-field--page.tpl.php, views-view-field--page--title.tpl.php, views-view-field--h-rek--page.tpl.php, views-view-field--h-rek--page--title.tpl.php

Egyre érdekesebben alakul. Annak ellenére, hogy jönnek a file not found hibaüzenetek, a drupal szerint nem létező views-view.tpl.php tartalma látszik, a nem létező views-view-unformatted.tpl.php is látszik, a drupal szerint szintén nem létező views-view-field.tpl.php-hoz hozzá sem ér.

Pff..

0
0
Sk8erPeter képe

FONTOS: MINDENKÉPPEN KÉSZÍTS MENTÉST A JELENLEGI ADATBÁZISODRÓL A MŰVELET ELŐTT!!! (pl. phpMyAdminban Export)
Így ha valamit elrontottál, például olyan felhasználókat (neadjisten tartalmakat) töröltél, amelyeket nem kellett volna, vissza tudod állítani.

A Views Bulk Operations (VBO) a Views modul ismeretét igényli, meg némi odafigyelést (esetleg utánaolvasást), próbálgatást, de mindenképpen nagyon hasznos (nem csak erre a feladatra, más műveletek tömeges végrehajtására is):
https://drupal.org/project/views_bulk_operations
A Views UI-on a felhasználók listázásánál egy plusz VBO-mezőt kell hozzáadni, aminek segítségével tömegesen tudod manipulálni a rájuk vonatkozó dolgokat.
Az adott nézethez hozzáadhatsz egy szűrőt is, amelyekben meghatározhatod, hogy ezen az oldalon mely felhasználók NE legyenek listázva (amelyek valós felhasználók! - igaz, ez adott esetben nagy lista is lehet, nem tudom, nálad hány valós felhasználó van).
Ezután meg kell jelennie plusz űrlapelemeknek, amelyek segítségével a felhasználók törölhetők, szerepkörük módosítható, és így tovább, nagyon széles körben használható a VBO modul.

Ezzel a modullal inaktív felhasználókat törölhetsz:
https://drupal.org/project/user_prune
pl. amennyiben megerősítéshez van kötve a regisztráció, akkor a spammerek sokszor inaktívak.

Esetleg még ezt is megnézheted:
https://drupal.org/sandbox/lgrtm/2074157

Érintett fórumtéma (onnan szedtem ez utóbbi 2 linket):
http://drupal.stackexchange.com/questions/1792/how-to-delete-1600-users-...

Ezek után pedig rakd fel a HoneyPot modult, amiről itt a fórumban már sok szó esett:
https://drupal.org/project/honeypot
a mohó spammereket ezzel könnyen ki lehet szűrni.
Esetleg CAPTCHA (a kettő nem zárja ki egymást):
https://drupal.org/project/captcha

Még egyszer, nagyon fontos: BACKUP!!!

1
0
Phoere képe

Nem. Tehát ez egy komplett modul, a fentebbi mintakód továbbfejlesztésével let véglegesítve és tökéletesen működik egy 5.3-es php-t futtató szerveren (tévesen 5.2-est írtam az előbb).

Most az oldal áttelepítés alatt van egy másik szerverre, ahol 5.4-es php verzió van és ott ugyanez a modul már ezt a hibakódot adja.

Viszont közben rájöttem, hogy nem ez a baj, hanem a függvény meghívása:

  1. $output = drupal_render(drupal_get_form('urlap_my_form'));

Ez generálja a hibakódot.

Így viszont már jó:

  1. $op = drupal_get_form('urlap_my_form');
  2. $output = drupal_render($op);
  3. print $output;
0
0

Csökönyi Ferenc