Commit Graph

149 Commits

Author SHA1 Message Date
Jean-Philippe Lang f33231181f Makes user unwatch what he can no longer view after its permissions have changed (#3589).
A rake task (redmine:watchers:prune) is also added to prune existing watchers.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3167 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-12-13 12:39:22 +00:00
Jean-Philippe Lang 5f8e9d7118 Version sharing (#465) + optional inclusion of subprojects in the roadmap view (#2666).
Each version of a project can be shared with:
* subprojects
* projects in the project hierarchy: ancestors + descendants (needs versions management permission on the root project)
* projects in the project tree: root project + all its descendants (same as above)
* all projects (can be set by admin users only)

Notes:
* when sharing a version of a private project with others projects, its name will be visible within the other projects
* a project with versions used by non descendant projects can not be archived

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3123 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-12-06 10:28:20 +00:00
Jean-Philippe Lang c870a7b9ef Do not notify users that are no longer allowed to view an issue (#3589, #4263).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3121 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-12-03 21:28:14 +00:00
Jean-Philippe Lang 346c569f98 Fixed: "None" category issue count is empty while grouping by category (#4308).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3112 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-12-02 18:57:17 +00:00
Jean-Philippe Lang b9151cb3e8 Fixes a test failure.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3099 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-27 20:32:28 +00:00
Jean-Philippe Lang 43fd27fd0c Show last update datetime (last attachment added) on document list (#4232).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3095 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-26 20:12:20 +00:00
Jean-Philippe Lang 71bc44a89d Allow issue grouping by custom field (#2679).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3071 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-16 18:07:30 +00:00
Jean-Philippe Lang dfd0204052 Add view_issues permission (#3187).
A migration adds this permission to all existing roles to preserve current behaviour.
This permission controls access to issues, roadmap and changelog.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3039 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-14 12:08:47 +00:00
Jean-Philippe Lang c31411ec00 Fixes ApplicationHelper#link_to_user
* No link to a locked user page (closes #4182)
* Translate Anonymous string

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3024 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-11 10:48:54 +00:00
Jean-Philippe Lang cc684803ba Ignore emails received from the application emission address to avoid hell cycles (#4139).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3022 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-08 13:51:53 +00:00
Jean-Philippe Lang d201c54455 Adds version status to limit issue assignments (#1245).
Available version statuses are:
* open: no restriction
* locked: can not assign new issues to the version
* closed: can not assign new issues and can not reopen assigned issues

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3020 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-08 13:03:41 +00:00
Jean-Philippe Lang 3b9d8c2a72 Adds a few functional tests.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3013 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-07 08:44:56 +00:00
Jean-Philippe Lang 97b4e75478 Add a permission to remove issue watchers (#2450).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2977 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-25 12:11:53 +00:00
Jean-Philippe Lang 6fedbf60d5 Allow project forums copy.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2976 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-25 11:23:46 +00:00
Jean-Philippe Lang eecec44ed2 Add a test that breaks before r2967 (broken project wiki copy).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2968 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-25 10:11:06 +00:00
Eric Davis ff3d0fe4db Fixed some merge bugs. #4077
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2952 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-21 22:35:03 +00:00
Eric Davis 37d401ac58 When a specific TimeEntryActivity are change, associated TimeEntries will be
re-assigned to the correct record.

* Renamed build to create since the methods now create objects.
* Removed call to Project#save that isn't needed since objects are saved directly now.
* Wrapped the activity creation and updates in a SQL transaction so TimeEntries
  will remain in a consistent state if there is an error.
* When a Project's TimeEntryActivities are destroyed, they are now
  reassigned to the parent TimeEntryActivity.

  #4077

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2950 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-21 22:34:52 +00:00
Eric Davis 5833ba9f81 Added a Activities tab to Project Settings
* Changed Project#activities to allow getting inactive Activities also:
  * Changed the Enumeration#all named_scope to exclude project specific Activities
  * Changed the Project has_many time_entry_activities to include all by default
    and provided an #active method to filter them to active ones only
  * Split Project#activities to two methods and gave it a parameter that is used
    to determine if inactive activities are included (default is no)
* Added a reset button to delete all project specific activities.
* Added ProjectsController#reset_activities to remove the project
  specific activities
* Added a HTTP DELETE route for reset_activities
* Changed the permissions for managing project activities to have access to the
  ProjectsController#reset_activities action
* Added a way to bulk save Project specific Activities in ProjectsController
  * #save_activities will save all the changed activities, including update the
    existing records
  * Added helper methods to the controller which will be refactored later
  * Allow the same TimeEntryActivity names on different projects

  #4077

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2949 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-21 22:34:45 +00:00
Eric Davis e76d4c5c4c Added an active field track if an Enumeration is active on the frontend view.
* Changed TimelogHelper#activity_collection_for_select_options to only use
  active TimeEntryActivities.
* Changed TimelogHelper#activity_collection_for_select_options to return a blank
  option if the time_entry's current activity is inactive.

  #4077

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2946 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-21 22:34:28 +00:00
Eric Davis ac4937a767 Enumerations can now have custom fields defined on them. #4077
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2945 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-21 22:34:22 +00:00
Jean-Philippe Lang 6656d41a41 Fixes User/CustomValue association broken by r2869 (#3978).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2905 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-10 10:16:00 +00:00
Jean-Philippe Lang 30ad78e57d Fixed: RepositoriesController#revision may show wrong revision (#3779).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2898 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-09-20 15:20:22 +00:00
Jean-Philippe Lang 21e18c1eb4 Adds missing native eol properties.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2895 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-09-20 14:06:57 +00:00
Jean-Philippe Lang 7707457145 User groups branch merged.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2869 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-09-12 08:36:46 +00:00
Jean-Philippe Lang e10577e9ed SCM:
* Fixes file log for non-Git repositories (Repository#latest_changesets ignores path argument)
* No longer used Repository#changesets_for_path method removed

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2844 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-08-17 16:32:24 +00:00
Eric Davis c28b044d68 Added branch and tag support to the git repository viewer. (#1406)
Many thanks to Adam Soltys and everyone else who tested this patch.

* Updated git test repository so it has a branch with some differences from the master branch
* Moved redmine diff class into a module so as not to clash with diff-lcs gem which is required by grit
* Find changesets from all branches, not just master
* Got revision browsing working
* Got file actions working properly
* Allow browsing by short form of commit identifier
* Added a method to retrieve repository branches
* Allow browsing by branch names as well as commit numbers
* Handle the case where a git repository has no master branch
* Expand revision box and handle finding revisions by first 8 characters
* Added branches dropdown to repository show page
* Combined repository browse and show into a single action.  Moved branch/revision navigation into a partial.
* Renamed partial navigation -> breadcrumbs
* Made it so latest revisions list uses branch and path context
* Preserve current path when changing branch or revision
* Perform slightly more graceful error handling in the case of invalid repository URLs
* Allow branch names to contain periods
* Allow dashes in branch names
* Sort branches by name
* Adding tags dropdown
* Need to disable both branches and tags dropdowns before submitting revision form
* Support underscores in revision (branch/tag) names
* Making file history sensitive to current branch/tag/revision, adding common navigation to changes page
* Updated translation files to include labels for 'branch', 'tag', and 'view all revisions'
* Reenable fields after submit so they don't look disabled and don't stay disabled on browser back button
* Instead of dashes just use empty string for default dropdown value
* Individual entry views now sport the upgraded revision navigation
* Don't display dropdowns with no entries
* Consider all revisions when doing initial load
* Fixed bug grabbing changesets.  Thanks to Bernhard Furtmueller for catching.
* Always check the entire log to find new revisions, rather than trying to go forward from the latest known one
* Added some cleverness to avoid selecting the whole changesets table any time someone views the repository root
* File copies and renames being detected properly
* Return gracefully if no revisions are found in the git log
* Applied patch from Babar Le Lapin to improve Windows compatibility

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2840 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-08-15 22:41:40 +00:00
Eric Davis 30526d55c3 Added missing fixture file from r2837 (#3731)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2838 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-08-13 16:57:36 +00:00
Jean-Philippe Lang 6994d1c23b Actually block issues from closing when a blocking issue isn't closed (#1740).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2800 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-07-04 12:07:03 +00:00
Jean-Philippe Lang b3afde14fa Ability to accept incoming emails from unknown users (#2230, #3003).
An option lets you specify how to handle emails from unknown users:
* ignore: the email is ignored (previous and default behaviour)
* accept: the sender is considered as an anonymous user
* create: a user account is created (username/password are sent back to the user)

Permissions have to be consistent with the chosen option. Eg. if you choose 'create', the 'Non member' role must have the 'Add issues' permission so that an issue can be created by an unknown user via email. If you choose 'accept', the 'Anonymous' role must have this permission.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2789 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-06-14 14:48:34 +00:00
Eric Davis 62e58f26b0 Changed Enumerations to use a Single Table Inheritance
* Added migrations to change Enumerations to an STI relationship
* Added TimeEntryActivity model (STI)
* Added DocumentCategory model (STI)
* Added IssuePriority model (STI)
* Added Enumeration#get_subclasses to get a list of the subclasses of Enumeration
* Changed Enumeration to use the STI type field instead of the opt field
* Changed Enumeration#opt to return the old opt values but with a deprecation warning.
* Removed Enumeration::OPTIONS
* Removed the dynamic named_scopes in favor of specific named_scopes.  Kept for
  compatibility reasons.
* Added Enumeration#default so each subclass can easily find it's default record.
* Fixed Enumeration#default to use the STI scoping with a fake default scope for finding Enumeration's default.
* Added a 'all' named scope for getting all records in order by position.
* Added Deprecation warnings to the old named_scopes in Enumerations.
* Moved various methods off of Enumeration and onto the concrete classes
* Changed the EnumerationsController to use types
* Updated the Enumeration list template
* Added has_many relationships to the Enumeration STI classes.
* Fixes for tests.

  #3007

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2777 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-05-30 23:30:36 +00:00
Jean-Philippe Lang c082cfc90e FIxed: inline images not displayed in atom feeds (#3391).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2768 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-05-26 08:28:36 +00:00
Jean-Philippe Lang 8141110eb2 Ability to allow non-admin users to create projects (#1007).
This can be enabled in permissions settings. A non-admin user who creates a project is automatically added as a project member (the first role is given, TODO: make this given role configurable).
Projects can be added from the public projects list.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2750 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-05-17 12:59:14 +00:00
Jean-Philippe Lang 7dccf9fda6 Allows multiple roles on the same project (#706). Prerequisite for user groups feature.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2726 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-05-10 10:54:31 +00:00
Eric Davis fa7bd1c71d Added the ability to copy a project in the Project Administration panel.
* Added Copy project button.
* Added Project#copy_from to duplicate a project to be modified and saved by the user
* Added a ProjectsController#copy based off the add method
** Used Project#copy_from to create a duplicate project in memory
* Implemented Project#copy to copy data for a project from another and save it.
** Members
** Project level queries
** Project custom fields
* Added a plugin hook for Project#copy.

  #1125  #1556  #886  #309

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2704 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-05-03 21:25:37 +00:00
Jean-Philippe Lang b557393252 Ticket grouping (#2679).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2696 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-04-26 13:09:14 +00:00
Jean-Philippe Lang ca166b30e1 Adds the ability to move threads between project forums (#2452). 'Edit message' permission is required.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2649 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-04-05 10:08:11 +00:00
Jean-Philippe Lang 90810c0741 Ability to add multiple project members in a single action (#1556).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2635 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-03-27 18:10:36 +00:00
Jean-Philippe Lang c7c8dc71f2 Ability to save "sort order" in custom queries (#2899).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2572 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-03-12 18:06:54 +00:00
Jean-Philippe Lang 009b685b1d Fixed: MailHandler raises an error when processing an email without From header (#2916).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2553 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-03-06 18:25:19 +00:00
Jean-Philippe Lang 56bdcf407f Adds some functional tests.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2545 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-03-01 11:39:01 +00:00
Jean-Philippe Lang e1b828de95 Adds ability to filter watched issues (#846).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2456 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-02-12 17:35:57 +00:00
Jean-Philippe Lang 97e31c4026 Removes unused projects_count column from projects table.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2305 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-01-24 11:48:38 +00:00
Jean-Philippe Lang c9906480d3 Merged nested projects branch. Removes limit on subproject nesting (#594).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2304 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-01-24 11:31:15 +00:00
Jean-Philippe Lang dfab202cde Accept replies to forum messages by subject recognition (#1616).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2294 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-01-21 18:22:30 +00:00
Jean-Philippe Lang b9e3fbcd83 Allow email to reply to a forum message (#1616).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2289 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-01-19 19:03:53 +00:00
Jean-Philippe Lang 0c4e40b89c Use In-Reply-To and References headers to handle replies by email.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2288 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-01-19 18:29:07 +00:00
Jean-Philippe Lang 1d783106a3 Adds Message-Id and References headers to email notifications so that issues and messages threads can be displayed by email clients (#1401).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2281 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-01-18 15:16:31 +00:00
Jean-Philippe Lang 12792d8068 User custom fields can now be set as editable so that users can edit them on 'My account'.
For existing user custom fields, this new attribute is set to false by default to preserve the prior behaviour (it can turned on by editing the custom field in admin area).

Note: on the registration form, *required* custom fields will be displayed even if they are not defined as editable so that the account can be created.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2276 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-01-17 11:18:04 +00:00
Jean-Philippe Lang da01ee7c37 Ability to sort the issue list by text, int and float custom fields (#1139).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2258 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-01-11 18:38:07 +00:00
Jean-Philippe Lang 1ca69f2af1 Different icon for closed issues in search result (#992).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2256 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-01-11 11:01:35 +00:00