Skip to content
Snippets Groups Projects
  1. Jun 19, 2015
  2. 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
  3. Jun 10, 2015
    • xamgore's avatar
      Controllers refactoring, code style · b2f7a5f8
      xamgore authored
      * Controller_UserEnvironment is an abstract class, which defines $twig variable, and calls $twig->render in the after() method.
      * $twig contains $twig->User variable by default.
      * As I have read, it's totally recommended not to use $twig->Variables, so I defined $twig->set([params]) syntax
      * Twig supports "fluent interface", so use $twig->set(...)->set_filename();
      * Divided DeanOffice/Credits.php & moved part to Handler/
      b2f7a5f8
    • xamgore's avatar
      Code style · f68d55ca
      xamgore authored
      f68d55ca
  4. May 31, 2015
  5. Apr 26, 2015
  6. Mar 18, 2015
  7. Mar 09, 2015
  8. Nov 12, 2014
  9. Nov 09, 2014
  10. Sep 07, 2014
  11. Sep 04, 2014
  12. Sep 02, 2014
  13. Sep 01, 2014
  14. Aug 25, 2014
  15. Aug 24, 2014
  16. Aug 23, 2014
  17. Aug 22, 2014