/apps/request/domain/Person.php

http://zoop.googlecode.com/ · PHP · 35 lines · 30 code · 5 blank · 0 comment · 6 complexity · 6d43d269c19d4857d2f858ce63905ddc MD5 · raw file

  1. <?php
  2. class Person extends DbObject
  3. {
  4. const rootId = 1;
  5. protected function init()
  6. {
  7. $this->hasMany('request', array('remote_field' => 'owner_id'));
  8. $this->addGetter('name');
  9. }
  10. public function getName()
  11. {
  12. return $this->firstname . ' ' . $this->lastname;
  13. }
  14. public function getPermittedRequests()
  15. {
  16. if($this->id == self::rootId)
  17. $requests = DbObject::_find('Request', NULL, array('orderby' => 'id'));
  18. else
  19. $requests = $this->request;
  20. return $requests;
  21. }
  22. public function RequestIsAllowed($request)
  23. {
  24. if(is_numeric($request))
  25. $request = new Request($request);
  26. else if(!($request instanceof Request))
  27. trigger_error("request not valid: $request");
  28. return $request->owner_id == $this->id;
  29. }
  30. }