Giter VIP home page Giter VIP logo

redmine_group_manager's Introduction

Redmine Group Manager Plugin

This plugin provides a project tab for group management. A Redmine administrator can allow project roles of non-admin users to change group membership, view, create or delete admin created groups or other users’ groups. Permissions of operations on groups are managed from the roles permissions tab in the Administration menu. Adding or deleting users is allowed in scope of the project.

If you have got user custom fields, they will be displayed in the group view.

Note: You cannot add users which is not a project member. This is an administrator privilege.

Installation

For installation, clone the Git repository to your plugins folder, restart the Redmine application and perform the migration.

cd redmine/plugins
git clone https://github.com/fathomssen/redmine_group_manager.git
cd ..
rake redmine:plugins:migrate NAME=redmine_group_manager RAILS_ENV=production
touch tmp/restart.txt

Settings

The following permissions can be set in the Roles and permissions section of administration menu

  • View groups. Allows a user to see and access the Groups tab of the project. This option must be checked if any other function is going to be used.

  • Create groups. Allows to open “Create group” page. The user input the name ot the group and automatically gains the ownership of the group. The new group will not be visible in the group tab, until the group is added as a member of the project. So the user must be permitted to manage project members.

  • Change groups. Allows to change name and userlist of a group. Groups owned by other users require additional permissions.

  • Delete groups. Allow to delete a group. Groups owned by other users require additional permissions. No further confirmation is asked on deletion. Use with care.

  • Change other user’s groups. Expands permissions of Change groups option for all groups, except the ones owned by admin user. It only makes sense when Change groups is allowed.

  • Delete other user’s groups. Expands permissions of Delete groups option for all groups, except the ones owned by admin user. It only makes sense when Delete groups is allowed.

  • Change admin’s groups. Allows to change groups owned by admin user if both Change groups and Change other user’s groups are allowed.

  • Delete admin’s groups. Allows to delete groups owned by admin user if both Delete groups and Delete other user’s groups are allowed.

  • Change owner. Display additional field when changing a group. It allows to change owner to any other Redmine user if a group can be changed according to three “Change groups” settings combination. Note that it reveals all Redmine users to any user.

Plugin concept and usage recommendations

Plugin manages the permissions through group ownership. Every new group is owned by the creating user. Every previously existing group is owned by the admin user. There are 3 ownership relations: my groups, other user groups, admin groups. You can only extend permissions in that order when you set change or delete group permissions. The escalation of permissions should be done in the following way:

  • Add View groups as a first step.

  • Add Create groups if user already have permissions to manage project members. Otherwise this is useless.

  • Managing and deletion of owned groups goes well with Create groups permission. It can keep the user in his own realm.

  • Change other user’s groups requires Change groups and goes well without Create groups, since all previously created groups can be changed, but project membership is limited to group policy. Admin groups can be kept read-only.

  • Change owner is useful to prepare groups for users with lower permission level.

Remarks

Plugin mostly checks permissions in response to the user action. Therefore delete link is displayed even if a user is not allowed to delete a group or a user. Usage of this link will result in an error message. An erroneous message is displayed sometimes, when creating groups, telling that this group already exists. Ignore that message.

redmine_group_manager's People

Contributors

artemasmith avatar zapunidi avatar w0www avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.