ugrás a tartalomhoz

#comment-1234

T.G · 2004. Szep. 5. (V), 22.11
Tegnap felvetettem, hogy az RSS-ben, illetve a Követőben az url-ek hibásak.
Egy ilyen kérdéses url: http://weblabor.hu/forumok/temak/1923#comment-4451
Alap beállításom szerint 50 hozzászólást írunk ki, de a 4451. már nincs benne a első 50-ben, ezért nem jó oldalt hozunk ki.

Én egész eddig azt hittem, hogy ilyenkor a comment-4451 átadódik a php-nek, de nem.
$_SERVER, getallheaders()
Sajnos más ötletem nincs, hogy hol kereshetném, ha az én tudásom lenne hiányos, akkor azt írjátok meg!!! :)

Ellenben átadhatunk egy újabb paramétert
http://weblabor.hu/forumok/temak/1923/4451#comment-4451
pl. itt lenne a $_GET['comment'] 4451 értékkel. (.htaccess -ben plusz egy sor)
Ezt a fajta url-t sehol máshol nem kellene használni, csak a RSS-ben, illetve a Követőben, tehát nem okoz nagy gondot a már elkészült oldal felépítésében.

Ezután már gond nélkül ki lehetne javítani az fenti hibát azzal, ha pager_query függvényt kiegészítjük.

if (isset($_GET['comment'])) {
	if ($pager_from_array[$element] < $_GET['comment'] or $pager_from_array[$element]+$limit > $_GET['comment']) {
		  $pager_from_array[$element] = $_GET['comment']-1;
	}
}
Persze a kiegészítésemben egyáltalán nem vagyok biztos. Ma telepítettem fel először a Drupált, így legtöbb időt azzal töltöttem eddig, hogy megtaláljam a pager_from_array változót, az hogy az miért tömb, már nem is érdekelt. :)
De gondolom, ettől még érthető, hogy mire gondoltam. Egy bónusz változó, és akkor mindent tudunk.
 
1

Hash utáni rész és pager

Hojtsy Gábor · 2004. Szep. 5. (V), 22.31
A hash utáni részt valóban nem kapja meg a szerver, azt a böngésző jól megtartja magának, hiszen a megérkezett dokumentumban neki kell odaugrania. Ezért nem tartozik a szerverre.

A pager átléptetése érdekes ötlet, ám ez teljesen felborítaná a lapozható oldalak tartalmát (elcsúsztatnánk az oldalt ha jól értem). Különben az implementációd is csak jelzésértékű lehet, mert a $pager_from_array az azt tartalmazza, hogy az oldalon található lapozható dolgokat sorban melyik elemtől kell kiírni - azért tömb, mert több lapozható dolog is lehet, melyek állapotát külön nyilván kell tartani. Az elemszám egy lokális sorszám (az adott tartalomra érkezett tizedik hozzászólás, stb). Az, hogy a tizedik mit jelent adott esetben, az függ a felhasználó hozzászólás listázási beállításaitól is.
2

Re: pager

T.G · 2004. Szep. 5. (V), 23.08
Probléma, hogy én most egy teljesen steril drupalt látok csak. Ezért van, hogy nálam a $pager_from_array egy egy elemű tömb. De végiggondolva a weblaboron egyszerre vannak a kommentek, a bookmárkok, a fórumok nevei.... tehát tényleg nem szabad ilyen egyszerűen nekiesni. (arról már nem is beszélve, hogy amit én $_GET['comment']-nek írtam, azt nem lehetne az sql limitnek átadni, de ott egy kis bűvészkedés segítene)

Azért még nem adom fel. :) pager_query-nek egy ötödik paraméter gond nélkül átadható, és ha minden igaz a comment_render-t nem használjuk más helyen.
De ebben már benne van, hogy itt mostmár nem egy kis kiegészítésről, hanem több modul átszerkesztéséről van szó. :)
3

4.5

Hojtsy Gábor · 2004. Szep. 5. (V), 23.37
Javaslom nézz utána, hogy megoldották-e a problémát már 4.5-ben (CVS HEAD), mert akkor lehet, hogy hiába is vesződsz. A technikai sikeren kívül persze :))