Hi! Sorry for the late response. My view for the todo:
1. "Move validation logic from controller to Koha::Patron" patch; obsolete validate() method - validations should occur in Koha::Patron->store(). I'm starting to remember the issues with this and why I implemented a separate validate method. When patron makes a modification request to be verified by
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16330 --- Comment #46 from Lari Taskula <lari.taskula@jns.fi> --- (In reply to Lari Taskula from comment #45) librarian, we have to validate the data provided by patron without storing the object and then create a new modification request if provided data is ok. (PUT /patrons/123 where 123 is his own borrowernumber, and they don't have borrowers flag. This functionality is not yet in these patches provided before this comment.) So what I did was in order to avoid validation logic duplication in Koha::Patron::Modification was: $patron->set($provided_data)->validate; # if are able to continue, store new Koha::Patron::Modification request Of course we can have both, a separate validate method and validations integrated in store(). Also my fear was to throw exceptions in widely used method like Koha::Patron->store which would probably break elsewhere in Koha where these exceptions are not yet caught. So this Bug is a lot more problematic to pass. I took a shortcut and excluded the validations from store(). However, as a long term solution, like Tomas suggested, store() is the right place but I think that is too much for the scope of this Bug. Unfortunately I can't work with Koha::Patron more now. Anyway, I have rewritten the tests as explained earlier, and added all of the patron parameteres to be queryable by GET /patrons. Also I added patron modification request to the PUT request. This is provided in the following patch. -- You are receiving this mail because: You are watching all bug changes.