Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

błąd w obsłudze HOOK-a? #1609

Open
chilek opened this issue Jan 20, 2020 · 4 comments
Open

błąd w obsłudze HOOK-a? #1609

chilek opened this issue Jan 20, 2020 · 4 comments
Assignees

Comments

@chilek
Copy link
Collaborator

@chilek chilek commented Jan 20, 2020

extract($result);

powoduje, że dane zwrócone przez hook:

$a = $hook_data['a'];

są pomijane w liniach w wierszach:

$a['customerid'] = $customer['id'];
$a['period'] = $period;
$a['at'] = $at;
$a['datefrom'] = $from;
$a['dateto'] = $to;
$a['count'] = $count;

Pytanie czy jest to celowe i będzie się częściej pojawiać, czy błąd?
Najprościej było by przekazać result do hook i go ponownie pobrać przed
zrobieniem extract. Niekoniecznie jest to najbardziej eleganckie.

(zgłoszenie utworzone na podstawie otrzymanego maila)

@chilek chilek self-assigned this Jan 22, 2020
@chilek

This comment has been minimized.

Copy link
Collaborator Author

@chilek chilek commented Jan 22, 2020

Pytanie: po co w hooku walidującym zmieniać walidowane dane? Nie wiem czy w ogóle nie powinno wylecieć zwracanie $a z tego typu hook-a.

@ZdanowskiS

This comment has been minimized.

Copy link
Contributor

@ZdanowskiS ZdanowskiS commented Jan 23, 2020

Zdarzała się już potrzeba modyfikowania tego typu danych w zależności od specyficznych założeń użytkownika. Przykład: Klienci z miasta X mają mieć dzień wystawiania 1 z miasta Y dzień naliczania 15. Dodanie tego w pluginie modyfikującym zobowiązania pozwala uniknąć błędów pracowników. Przykład teoretyczny ale nie odbiega daleko od tego co się zdarzało i tego co chciałem zrealizować.
Takie ograniczenie danych zmniejsza możliwości dostosowania LMS poprzez wtyczki.

@chilek

This comment has been minimized.

Copy link
Collaborator Author

@chilek chilek commented Jan 24, 2020

@ZdanowskiS zwróć uwagę, że extract($result); zmienia pewne właściwości zobowiązania (nie w tablicy asocjacyjnej $a). Czy hook powinien te dodatkowe dane uzyskiwać jako dodatkowe parametry czy raczej w ogóle ich nie powinien uzyskiwać, albo uzyskiwać w postaci podmienionych już pól w $a?

@ZdanowskiS

This comment has been minimized.

Copy link
Contributor

@ZdanowskiS ZdanowskiS commented Jan 24, 2020

Jeżeli w ramach LMS ma być możliwe modyfikowanie zachowania modułów pod indywidualne potrzeby przekazanie i odczytanie wszystkich danych z wtyczek jest niezbędne. Bez przekazania zmiennej i późniejszego odczytania moduł straci elastyczność.
Przyjrzałem się jak zmieniane są właściwości zobowiązania. Zwracanie danych do $a być może w jakiejś sytuacji też będzie problemowe. Wydaje mi się jednak że w razie potrzeby wykonywane zmiany można odwrócić w ramach plugina. Prawdopodobnie zemści się to na kompatybilności wtyczek przy aktualizacjach, jeżeli walidacja ulegnie zmianie.
Pytanie jak użycie dwóch zmiennych jako standardu wpłynie na inne modułu gdzie pojawi się extract?
Czy będzie to jedna zmienna ($a) czy 2 zmienne przekazywane do hook, nie będzie to tak mocno ograniczać elastyczności jak obecna sytuacja.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.