Skip to content
Snippets Groups Projects
  1. Oct 05, 2019
  2. Mar 30, 2019
  3. Mar 01, 2019
  4. Sep 12, 2018
  5. Aug 27, 2018
  6. Nov 05, 2017
  7. Nov 04, 2017
  8. Oct 15, 2017
  9. Oct 12, 2017
  10. Oct 08, 2017
  11. Oct 02, 2017
  12. Sep 30, 2016
  13. Aug 31, 2016
  14. May 03, 2016
  15. Nov 02, 2015
  16. Sep 03, 2015
  17. Jul 07, 2015
  18. Jul 06, 2015
  19. Jun 28, 2015
  20. Jun 26, 2015
  21. Jun 24, 2015
  22. Jun 15, 2015
  23. Jun 14, 2015
  24. Jun 13, 2015
    • xamgore's avatar
      Explicit user rights management · 248dfda3
      xamgore authored
      It may seem that this commit is rather big, but it's not. Don't be afraid, just read the message. Recently we have understood that it was a bad idea to store rights for pages in a database. So I decided to move the information to PHP layer and make it more clear.
      
      When you write a new controller in Admin/ Dean/ Student/ folder, you should explicitly extend one of Controller_Environment_* classes, and all specific checks will be done there. Additional advantage is manipulating $user variable, so you will have access to extended fields of user, ie User_Student contains StudentID, but User_Teacher does not.
      
      Also, prefer -> operator to []. The reason is simple: IDE shows hints and mismatches only with the first one.
      
      The second important statement is User::checkAccess(User::RIGHTS_*) — call it at the top of *every* function in the Handler/ classes. Exception will be thrown, if user doesn't have enough rights.
      
      NB. If you want to overload "before()" function while extending Environment_* controller, do it in the right way:
      
          public function before() {
              parent::before();   // always first
      
              // any magic you like most
          }
      248dfda3
  25. Jun 11, 2015
  26. Jun 10, 2015
  27. Jun 09, 2015
  28. Jun 06, 2015
    • xamgore's avatar
      Restructuring discipline pages · 75bcc732
      xamgore authored
      /coursework/create — create new coursework
      /discipline/create — create new discipline
      /discipline/127 & /discipline/127/structure — edit the discipline with id 127
      /discipline/127/students — edit the list of attached to discipline students
      
      Moved duplicate code to before() method, some other refactorings.
      75bcc732