To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

Poszukiwania - [Problem] Temat w formie drzewa w 1.12.3

T-kOrreD - 07-02-2006, 14:41
Temat postu: [Problem] Temat w formie drzewa w 1.12.3
Witam

Taki problem. Jeśli temat jest w formie drzewa, to nie ma możliwości odpowiadania na własne posty. A teraz przykładowa sytuacja:

Kod:

Post użytkownika A (na który nie może odpowiedzieć użytkownik A)
          |
          Post użytkownika B
          |
          Post użytkownika C
                    | <==
                    Post użytkowika A


Użytkownik B odpowiedział na post użytkownika A. Następnie aby kontynuować gałąź, użytkownik C odpowiada na post użytkownika A. Teraz A chce skomentować posty B i C i nie może odpowiedzieć na swój post, musi utworzyć nową gałąź.

Moje pytanie jest takie, jakie modyfikacje w jakich plikach należy wykonać aby umożliwić użytkownikom odpowiadanie na własne posty? Zwróćcie też uwagę na to, że w zwykłych tematach można odpowiadać na swoje posty.

Pozdrawiam

Przemo - 07-02-2006, 16:19

Ale uzytkownik A nie ma potrzeby odpowiadać na swój post bo po co? Jemu ktos odpowiedział i on chce odpowiedzieć temu komus a nie sobie, prawda?

Ale jak chcesz to w pliku viewtopic.php znajdz:
Kod:
if ( ($forum_topic_data['topic_tree_width'] && ($user_id != $poster_id || $user_id == ANONYMOUS)) && !$forum_topic_locked )
I zamien na:
Kod:
if ( ($forum_topic_data['topic_tree_width'] && ($user_id == ANONYMOUS)) && !$forum_topic_locked )
Napisz czy o to ci chodzilo.

T-kOrreD - 10-02-2006, 11:32

Odpowiadam dopiero teraz, bo miałem zawał roboty i nie było czasu. :D

Przemo napisał/a:
Ale uzytkownik A nie ma potrzeby odpowiadać na swój post bo po co? Jemu ktos odpowiedział i on chce odpowiedzieć temu komus a nie sobie, prawda?

Wydaje mi się, że odpowiedzenie na czyiś post to założenie "podtematu", który powinien być kontynuowany, zamiast zakładać kolejny podtemat. Tak samo odpowiadając w temacie klikamy przycisk "Odpowiedz" pod tematem, a nie na ostatnim poście.

Choć właściwie zależy to przede wszystkim od tego, jak na to spojrzeć. :)

Kod zmieniłem na taki:
Kod:
if ( ($forum_topic_data['topic_tree_width']) && !$forum_topic_locked )

bo w poprzednim przypadku tylko goście mogli używać drzewa. Optycznie wszystko się zgadza (przyciski są i można odpowiadać), a czy technicznie ;) nie będzie żadnych problemów?

Jest jeszcze problem chyba z plikiem posting.php, bo gdy odpowiadam na swój post, to pojawia się on na końcu tematu. Podejrzewam, że to coś tu trzeba zmienić:
Kod:
$post_parent = (($mode == 'quote' || $mode == 'reply') && $post_id) ? $post_id : 0;
$post_parent = ($HTTP_POST_VARS['post_parent']) ? intval($HTTP_POST_VARS['post_parent']) : $post_parent;

ale nic więcej nie wymyśliłem.

Przemo - 10-02-2006, 13:01

post_parent to jest numer ID posty na ktory odpowiadamy.
Nie widze w kodzie innego miejsca niz viewtopic.php gdzie jest kontrolowane czy post jest napisany przez usera ktory przeglada/odpowiada w temacie.
Po kliknieciu na odpowiedz do swojego postu daj podglad zrodla strony i odszukaj wartosc post_parent, jaka jest? Jest wogole?

T-kOrreD - 12-02-2006, 18:21

A jednak działa, pod warunkiem, że nie odpowiadamy na pierwszy post w temacie. W przeciwnym przypadku mimo że w kodzie strony jest

Kod:
<input type="hidden" name="post_parent" value="1297" />

(wartość się zgadza)

post i tak ląduje na dole.



Powered by phpBB modified by Przemo © 2003 phpBB Group