00001 <?php
00002
00017 define('ROLE_ID_SITE_ADMIN', 0x00000001);
00018 define('ROLE_PATH_SITE_ADMIN', 'admin');
00019
00020 define('ROLE_ID_PRESS_MANAGER', 0x00000011);
00021 define('ROLE_PATH_PRESS_MANAGER', 'manager');
00022
00023 define('ROLE_ID_SERIES_EDITOR', 0x00000201);
00024 define('ROLE_PATH_SERIES_EDITOR', 'seriesEditor');
00025
00026 define('ROLE_ID_AUTHOR', 0x00010000);
00027 define('ROLE_PATH_AUTHOR', 'author');
00028
00029 define('ROLE_ID_REVIEWER', 0x00001000);
00030 define('ROLE_PATH_REVIEWER', 'reviewer');
00031
00032 define('ROLE_ID_PRESS_ASSISTANT', 0x00001001);
00033
00034 define('ROLE_ID_READER', 0x00020000);
00035 define('ROLE_PATH_READER', 'reader');
00036
00037 class Role extends DataObject {
00043 function Role($roleId = null) {
00044 parent::DataObject();
00045 $this->setId($roleId);
00046 }
00047
00048
00049
00050
00051
00057 function getRoleName($plural = false) {
00058 switch ($this->getId()) {
00059 case ROLE_ID_SITE_ADMIN:
00060 return 'user.role.siteAdmin' . ($plural ? 's' : '');
00061 case ROLE_ID_PRESS_MANAGER:
00062 return 'user.role.manager' . ($plural ? 's' : '');
00063 case ROLE_ID_AUTHOR:
00064 return 'user.role.author' . ($plural ? 's' : '');
00065 case ROLE_ID_REVIEWER:
00066 return 'user.role.reviewer' . ($plural ? 's' : '');
00067 case ROLE_ID_SERIES_EDITOR:
00068 return 'user.role.seriesEditor' . ($plural ? 's' : '');
00069 case ROLE_ID_READER:
00070 return 'user.role.reader' . ($plural ? 's' : '');
00071 default:
00072 return '';
00073 }
00074 }
00075
00076
00081 function getPath() {
00082 switch ($this->getId()) {
00083 case ROLE_ID_SITE_ADMIN:
00084 return 'admin';
00085 case ROLE_ID_PRESS_MANAGER:
00086 return 'manager';
00087 case ROLE_ID_AUTHOR:
00088 return 'author';
00089 case ROLE_ID_REVIEWER:
00090 return 'reviewer';
00091 case ROLE_ID_SERIES_EDITOR:
00092 return 'seriesEditor';
00093 case ROLE_ID_READER:
00094 return 'reader';
00095 default:
00096 return '';
00097 }
00098 }
00099 }
00100
00101 ?>