![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Jakbyście rozwiązali takie case.
Dane w systemie podzielone są na regularne interwały, powiedzmy rok szkolny albo sezon. Użytkownik po wejściu do systemu ma wczytany domyślny rok z możliwością przełączania się do "archiwów" w dowolnym momencie. Zmiana ta zapisywana jest w sesji i bieżący rok wczytywany jest "wysoko" w kodzie tak aby mieć dostęp do current / selected year. No i fajnie działa, od strony użytkownika fajnie to wygląda bo może przeładować system i wczytać dane. Jest tylko jeden problem - powiedzmy jak to w systemach mamy powiadomienia - taki dymek na górze i jako, że jeden użytkownik może mieć i kilka takich sezonów (nawet i jednocześnie). Powiadomienia raczej dobrze by było aby dotyczyły wszystkich jego zasobów, a nie tylko current bo tam samo na FB chcesz mieć powiadomienia z Twojego profilu jak i profilów, które obsługujesz. Po kliknięciu w powiadomienie z NIE current spowoduje błąd lub wczyta mu się błędny zasób po powiedzmy ma powiadomienie o komunikacie, ale gdy wejdzie w /messages to nie zobaczy te o którym mówi powiadomienie. Propozycje jak to rozwiązać? Koncepcyjnie albo bardziej technicznie, powiedzmy w Laravel. Ten post edytował markonix 26.02.2017, 18:54:04 -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 872 Pomógł: 94 Dołączył: 31.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Koncepcyjnie jest to bardzo dziwnie rozwiązane.
Cytat Zmiana ta zapisywana jest w sesji i bieżący rok wczytywany jest "wysoko" w kodzie tak aby mieć dostęp do current / selected year. Jest wczytywany, czyli co się dzieje? Bo bardzo ogólnie opisałeś problem.
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Zapisywany jest w sesji tak aby w dowolnym kontrolerze móc powiedzmy zrobić coś w stylu:
Jako, że większość danych właśnie jest przypisana do konkretnego roku. To taka analogia jak pobieranie wg zalogowanego użytkownika. Ten post edytował markonix 27.02.2017, 15:42:31 -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
No to zrób przeciążanie np. na podstawie url. Jeśli wystąpi w url specyficzny rok to będzie on nad tym co jest w sesjii
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
W URL znajduje się ID zasobu, nie roku.
Musiałbym najpierw pobrać ID roku, sprawdzić czy jest zbieżny z currentYear i dopiero podjąć kroki i mówisz o nadpisaniu sesji czy nadpisaniu w tym konkretnym wywołaniu currentYear. Najbardziej userfriendly wydaje mi się rozwiązanie takie: 1) User ma włączony 2017 2) Klika powiadomienie z 2016 3) Wyświetla się komunikat "Wybrany zasób pochodzi z roku 2016. Czy chcesz teraz przełączyć system?". 4) Przełącza sesje i wyświetla dane. Fajnie by to rozwiązać globalnie i troszkę jest problematyczne gdyby ktoś miał drugą kartę otwartą np. na edycji roku. -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 12:09 |