Commit Graph

325 Commits

Author SHA1 Message Date
Eric Davis b75e038255 Updated menus from JPL's feedback.
* Updated Mapper#push documentation
* Renamed :parent_menu to :parent
* Renamed the external API for :child_menus to :children.  Internally it needs
  to stay :child_menus because Tree::TreeNode already defines a children
  method for another purpose

  #4250

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3092 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-25 05:36:56 +00:00
Eric Davis b0999e3764 Add support for unattached menus (generated dynamically)
A MenuItem can define a :child_menus option with a Proc.  When the menus
are rendered, the Proc will be run and the resulting MenuItems will be
added to the page as child menus

  #4250

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3091 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-25 05:36:50 +00:00
Eric Davis 1f06cf8899 Converted Menus to a Tree structure to allow submenus.
* Bundle the rubytree gem
* Patched RubyTree's TreeNode to add some additional methods.
* Converted the menu rendering to walk the Tree of MenuItems to render
  each item
* Added a menu option for :parent_menu to make this menu a child of the parent
* Added a bunch of tests
* Made MenuItem a subclass of Tree::TreeNode in order to use it's methods
  directly
* Changed the exceptions in MenuItem#new to be ArgumentErrors instead of the
  generic RuntimeError

  #4250

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3090 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-25 05:36:44 +00:00
Jean-Philippe Lang 9b0acce9c9 Fixed: error raised when rendering text that contains an email address with textile disabled (#4268).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3088 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-24 22:02:14 +00:00
Jean-Philippe Lang 3fc655904f Copy issue status on project copy (#3877).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3075 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-16 20:06:37 +00:00
Jean-Philippe Lang d84bd8edd8 Optimize associations loading on the issue list.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3072 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-16 18:28:44 +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 534ce51154 Allow non admin users to add subprojects (#2963).
Subprojects can be added to the projects for which the user has add_project permission.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3059 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-15 13:22:08 +00:00
Eric Davis b2e4d8ad3f Fixed some tests that where looking for specific issue urls but weren't matching
the css classes for the link.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3049 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-14 19:40:56 +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 d82738ad00 Add test for i18n number_to_human_size (#4208).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3034 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-12 22:00:29 +00:00
Jean-Philippe Lang 1d8b4ee778 Fixed pre tags containing "<pre*" (#4125).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3030 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-11 16:23:11 +00:00
Jean-Philippe Lang 4b83a0d848 Fixes diff parser for when lines starting with multiple dashes are removed (#4186).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3028 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-11 13:25:53 +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 8f40750ad7 Adds a link to automatically close completed versions in project settings (#1245).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3023 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-09 18:53:12 +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 86a9d90f07 Fixes distance of date in words calculation.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3016 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-07 09:50:16 +00:00
Eric Davis 5f48256c20 Fixed a typo in Object daddy
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3010 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-05 21:32:26 +00:00
Jean-Philippe Lang 9943f64ff0 Fixed: inline images in wiki headings (#4112).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2999 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-04 10:22:57 +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
Jean-Philippe Lang 5b787785b4 Project copy: let the user choose what to copy from the source project (everything by default).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2966 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-24 13:30:23 +00:00
Jean-Philippe Lang 9233a07a23 Adds a test for attached image inside a link (#4033).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2962 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-24 12:19:22 +00:00
Jean-Philippe Lang de8dcc5b26 Sets proper content type for plain text mails (#3970).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2961 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-24 11:57:01 +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 e615266e9a Changed the Timelogs to use both the Systemwide and Project specific TimeEntryActivities
* Added Project#activities to return all the Systemwide and Project specific
  activities, excluding Systemwide ones that are overridden.
* Added some tests for TimelogHelper.

  #4077

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2948 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-21 22:34:39 +00:00
Eric Davis 29301c8a38 Added project specific Enumeration overrides.
These will be used to track if Enumeration's custom data or active state
is overridden on a project.  An overridden Enumeration is one that is associated
with a parent Enumeration.

  #4077

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2947 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-21 22:34:34 +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
Eric Davis 29ab7b4108 Updated the unit test so Enumerations are tested separately from the subclasses.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2944 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-21 22:34:17 +00:00
Eric Davis 61c09b6442 Added shoulda macros to test Project's associations
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2936 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-19 00:27:13 +00:00
Eric Davis 257c92f8f9 Replaced a custom test with a shoulda macro.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2935 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-19 00:27:08 +00:00
Eric Davis a150689be9 Improved Project#copy to copy more data from the source Project. #3367
* Versions
* Associate the copied issues with the new versions
* Wiki
* WikiPages
* WikiContents
* IssueCategories

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2934 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-19 00:07:37 +00:00
Eric Davis 945ea9b01c Refactored duplicated test code to a setup.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2932 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-19 00:07:27 +00:00
Eric Davis 548d5a21f6 Converted Project#copy test to use shoulda
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2931 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-19 00:07:23 +00:00
Eric Davis 35333367df Configured object_daddy to help generate test data instead of fixtures. #4004
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2930 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-18 22:25:00 +00:00
Eric Davis 4425acafff Setup shoulda for testing. (#4005)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2925 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-17 20:37:23 +00:00
Jean-Philippe Lang 9cd662f8dc Fixes some test failures due to Array#to_s behaviour in ruby1.9.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2913 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-10 15:14:08 +00:00
Jean-Philippe Lang 38dc4d1cf9 Sets file encoding to utf-8 for ruby 1.9.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2910 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-10 15:00:28 +00:00
Jean-Philippe Lang ac8a67191f Renames uploaded_test_file helper.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2909 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-10 14:56:29 +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
Eric Davis 7b0cb6aba8 Upgraded to Rails 2.3.4 (#3597)
* Ran the Rails upgrade
* Upgraded to Rails Engines 2.3.2
* Added a plugin to let Engines override application views.
* Converted tests to use the new classes:
** ActionController::TestCase for functional
** ActiveSupport::TestCase for units
* Converted ActiveRecord::Error message to a string.
* ActiveRecord grouping returns an ordered hash which doesn't have #sort!
* Updated the I18n storage_units format.
* Added some default initializers from a fresh rails app
* Changed the order of check_box_tags and hidden_field_tags.  The hidden tag
  needs to appear first in Rails 2.3, otherwise it will override any value in
  the check_box_tag.
* Removed the custom handler for when the cookie store is tampered with.
  Rails 2.3 removed the TamperedWithCookie exception and instead Rails will not
  load the data from it when it's been tampered with (e.g. no user login).
* Fixed mail layouts, 2.3 has problems with implicit multipart emails that
  use layouts.  Also removed some custom Redmine mailer code.
* Fixed a bug that occurred in tests where the "required" span tag would be
  added to the :field_status translation.  This resulted in an email string of:

    <li>Status<span class="required"> *</span><span class="required"> *</span>

  Instead of:

    <li>Status: New</li>

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2887 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-09-13 17:14:35 +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
Eric Davis 609faba6a3 Allow referencing issue numbers in brackets. This style is used by other
bug trackers.

Examples:

* "[#nnn] Worked on this issue"
* "[#nnn, #mmm] Worked on these"
* "[#nnn #mmm] Working some more"

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2854 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-09-03 01:21:11 +00:00
Eric Davis cd1e094ce8 Missing 'test_' prefix on a helper test caused it to not run.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2853 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-09-03 01:03:10 +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 9886827a66 Allow spaces between the keyword and colon in incoming mail. (#3731)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2837 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-08-12 23:26:32 +00:00