= Define user profile by group = || '''Date''' || 2012/06/07 || || '''Contact(s)''' || François Prunayre || || '''Last edited''' || || || '''Status''' || Draft || || '''Assigned to release''' || 2.x || || '''Resources''' || Available (funding Ifremer) || || '''Ticket #''' || # || [[PageOutline(2-3,,inline)]] == Overview == Add the capability to have more than one profile for a user. Catalogue users could be: * administrator or * user administrator and/or reviewer and/or editor and/or registered user A reviewer in a group is also an editor for this group. === Proposal Type === * '''Type''': User & group * '''App''': !GeoNetwork * '''Module''': All === Links === * '''Documents''': == Proposal == === DB Changes === * add a profile field in the usergroups table * the profile in the users table is the main profile which means the profile with the more privileges for the user according to Jeeves user-profiles settings. === Changes === * UI: * Metadata * New metadata : * only list group where current user is editor * add exception if user try to create a metadata in other groups * Metadata insert : * only list group where current user is editor * add exception if user try to insert a metadata in other groups * Privileges : * only list group where current user is editor|registered * only allow publish on internet if current user is reviewer for the metadata group * If publish to all groups option is set, display all groups * Administration * User management : * only display if current user is Administrator or userAdmin of one group * for userAdmin, only display users part of current user groups * User list : only display user member of the groups where current user is userAdmin * User info : only display groups where current user is userAdmin * Search * Search privileges filter : add groups where current user is member|editor|reviewer * Group criteria : only list group where current user is reviewer|editor * Java * xml.info?type=groups also provide a profile parameter to get user group per profile * GetMine * ServiceNotAllowed when: * a userAdmin try to create a user in a group where he is not userAdmin * a editor (also reviewer) try to publish a record to internet where he is not reviewer == Risks == == Participants == * Francois Prunayre