Revision 1297:0a574315af3e .svn/pristine/0b
| .svn/pristine/0b/0b1931e7310d3bdeabe0a2c171beeaecda67ff41.svn-base | ||
|---|---|---|
| 1 |
# Redmine - project management software |
|
| 2 |
# Copyright (C) 2006-2012 Jean-Philippe Lang |
|
| 3 |
# |
|
| 4 |
# This program is free software; you can redistribute it and/or |
|
| 5 |
# modify it under the terms of the GNU General Public License |
|
| 6 |
# as published by the Free Software Foundation; either version 2 |
|
| 7 |
# of the License, or (at your option) any later version. |
|
| 8 |
# |
|
| 9 |
# This program is distributed in the hope that it will be useful, |
|
| 10 |
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 11 |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 12 |
# GNU General Public License for more details. |
|
| 13 |
# |
|
| 14 |
# You should have received a copy of the GNU General Public License |
|
| 15 |
# along with this program; if not, write to the Free Software |
|
| 16 |
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
|
| 17 |
|
|
| 18 |
module Redmine |
|
| 19 |
module Platform |
|
| 20 |
class << self |
|
| 21 |
def mswin? |
|
| 22 |
(RUBY_PLATFORM =~ /(:?mswin|mingw)/) || |
|
| 23 |
(RUBY_PLATFORM == 'java' && (ENV['OS'] || ENV['os']) =~ /windows/i) |
|
| 24 |
end |
|
| 25 |
end |
|
| 26 |
end |
|
| 27 |
end |
|
| .svn/pristine/0b/0b2cfb5e453d4c5b12b6d8b9ca9e37acb99e7715.svn-base | ||
|---|---|---|
| 1 |
# Redmine - project management software |
|
| 2 |
# Copyright (C) 2006-2012 Jean-Philippe Lang |
|
| 3 |
# |
|
| 4 |
# This program is free software; you can redistribute it and/or |
|
| 5 |
# modify it under the terms of the GNU General Public License |
|
| 6 |
# as published by the Free Software Foundation; either version 2 |
|
| 7 |
# of the License, or (at your option) any later version. |
|
| 8 |
# |
|
| 9 |
# This program is distributed in the hope that it will be useful, |
|
| 10 |
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 11 |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 12 |
# GNU General Public License for more details. |
|
| 13 |
# |
|
| 14 |
# You should have received a copy of the GNU General Public License |
|
| 15 |
# along with this program; if not, write to the Free Software |
|
| 16 |
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
|
| 17 |
|
|
| 18 |
require File.expand_path('../../../test_helper', __FILE__)
|
|
| 19 |
|
|
| 20 |
class RoutingDocumentsTest < ActionController::IntegrationTest |
|
| 21 |
def test_documents_scoped_under_project |
|
| 22 |
assert_routing( |
|
| 23 |
{ :method => 'get', :path => "/projects/567/documents" },
|
|
| 24 |
{ :controller => 'documents', :action => 'index', :project_id => '567' }
|
|
| 25 |
) |
|
| 26 |
assert_routing( |
|
| 27 |
{ :method => 'get', :path => "/projects/567/documents/new" },
|
|
| 28 |
{ :controller => 'documents', :action => 'new', :project_id => '567' }
|
|
| 29 |
) |
|
| 30 |
assert_routing( |
|
| 31 |
{ :method => 'post', :path => "/projects/567/documents" },
|
|
| 32 |
{ :controller => 'documents', :action => 'create', :project_id => '567' }
|
|
| 33 |
) |
|
| 34 |
end |
|
| 35 |
|
|
| 36 |
def test_documents |
|
| 37 |
assert_routing( |
|
| 38 |
{ :method => 'get', :path => "/documents/22" },
|
|
| 39 |
{ :controller => 'documents', :action => 'show', :id => '22' }
|
|
| 40 |
) |
|
| 41 |
assert_routing( |
|
| 42 |
{ :method => 'get', :path => "/documents/22/edit" },
|
|
| 43 |
{ :controller => 'documents', :action => 'edit', :id => '22' }
|
|
| 44 |
) |
|
| 45 |
assert_routing( |
|
| 46 |
{ :method => 'put', :path => "/documents/22" },
|
|
| 47 |
{ :controller => 'documents', :action => 'update', :id => '22' }
|
|
| 48 |
) |
|
| 49 |
assert_routing( |
|
| 50 |
{ :method => 'delete', :path => "/documents/22" },
|
|
| 51 |
{ :controller => 'documents', :action => 'destroy', :id => '22' }
|
|
| 52 |
) |
|
| 53 |
assert_routing( |
|
| 54 |
{ :method => 'post', :path => "/documents/22/add_attachment" },
|
|
| 55 |
{ :controller => 'documents', :action => 'add_attachment', :id => '22' }
|
|
| 56 |
) |
|
| 57 |
end |
|
| 58 |
end |
|
| .svn/pristine/0b/0bec89d5c0dbedaa5bc5e8099c531dc64fe9abe2.svn-base | ||
|---|---|---|
| 1 |
<%= l(:text_issue_added, :id => "##{@issue.id}", :author => h(@issue.author)) %>
|
|
| 2 |
<hr /> |
|
| 3 |
<%= render :partial => 'issue', :formats => [:html], :locals => { :issue => @issue, :issue_url => @issue_url } %>
|
|
| .svn/pristine/0b/0bf8f19f5486edff5718369b36db7c358c6ec343.svn-base | ||
|---|---|---|
| 1 |
<%= labelled_fields_for :issue, @issue do |f| %> |
|
| 2 |
|
|
| 3 |
<div class="splitcontent"> |
|
| 4 |
<div class="splitcontentleft"> |
|
| 5 |
<% if @issue.safe_attribute?('status_id') && @allowed_statuses.present? %>
|
|
| 6 |
<p><%= f.select :status_id, (@allowed_statuses.collect {|p| [p.name, p.id]}), {:required => true},
|
|
| 7 |
:onchange => "updateIssueFrom('#{escape_javascript project_issue_form_path(@project, :id => @issue, :format => 'js')}')" %></p>
|
|
| 8 |
|
|
| 9 |
<% else %> |
|
| 10 |
<p><label><%= l(:field_status) %></label> <%= h(@issue.status.name) %></p> |
|
| 11 |
<% end %> |
|
| 12 |
|
|
| 13 |
<% if @issue.safe_attribute? 'priority_id' %> |
|
| 14 |
<p><%= f.select :priority_id, (@priorities.collect {|p| [p.name, p.id]}), {:required => true}, :disabled => !@issue.leaf? %></p>
|
|
| 15 |
<% end %> |
|
| 16 |
|
|
| 17 |
<% if @issue.safe_attribute? 'assigned_to_id' %> |
|
| 18 |
<p><%= f.select :assigned_to_id, principals_options_for_select(@issue.assignable_users, @issue.assigned_to), :include_blank => true, :required => @issue.required_attribute?('assigned_to_id') %></p>
|
|
| 19 |
<% end %> |
|
| 20 |
|
|
| 21 |
<% if @issue.safe_attribute?('category_id') && @issue.project.issue_categories.any? %>
|
|
| 22 |
<p><%= f.select :category_id, (@issue.project.issue_categories.collect {|c| [c.name, c.id]}), :include_blank => true, :required => @issue.required_attribute?('category_id') %>
|
|
| 23 |
<%= link_to(image_tag('add.png', :style => 'vertical-align: middle;'),
|
|
| 24 |
new_project_issue_category_path(@issue.project), |
|
| 25 |
:remote => true, |
|
| 26 |
:method => 'get', |
|
| 27 |
:title => l(:label_issue_category_new), |
|
| 28 |
:tabindex => 200) if User.current.allowed_to?(:manage_categories, @issue.project) %></p> |
|
| 29 |
<% end %> |
|
| 30 |
|
|
| 31 |
<% if @issue.safe_attribute?('fixed_version_id') && @issue.assignable_versions.any? %>
|
|
| 32 |
<p><%= f.select :fixed_version_id, version_options_for_select(@issue.assignable_versions, @issue.fixed_version), :include_blank => true, :required => @issue.required_attribute?('fixed_version_id') %>
|
|
| 33 |
<%= link_to(image_tag('add.png', :style => 'vertical-align: middle;'),
|
|
| 34 |
new_project_version_path(@issue.project), |
|
| 35 |
:remote => true, |
|
| 36 |
:method => 'get', |
|
| 37 |
:title => l(:label_version_new), |
|
| 38 |
:tabindex => 200) if User.current.allowed_to?(:manage_versions, @issue.project) %> |
|
| 39 |
</p> |
|
| 40 |
<% end %> |
|
| 41 |
</div> |
|
| 42 |
|
|
| 43 |
<div class="splitcontentright"> |
|
| 44 |
<% if @issue.safe_attribute? 'parent_issue_id' %> |
|
| 45 |
<p id="parent_issue"><%= f.text_field :parent_issue_id, :size => 10, :required => @issue.required_attribute?('parent_issue_id') %></p>
|
|
| 46 |
<%= javascript_tag "observeAutocompleteField('issue_parent_issue_id', '#{escape_javascript auto_complete_issues_path}')" %>
|
|
| 47 |
<% end %> |
|
| 48 |
|
|
| 49 |
<% if @issue.safe_attribute? 'start_date' %> |
|
| 50 |
<p><%= f.text_field :start_date, :size => 10, :disabled => !@issue.leaf?, :required => @issue.required_attribute?('start_date') %><%= calendar_for('issue_start_date') if @issue.leaf? %></p>
|
|
| 51 |
<% end %> |
|
| 52 |
|
|
| 53 |
<% if @issue.safe_attribute? 'due_date' %> |
|
| 54 |
<p><%= f.text_field :due_date, :size => 10, :disabled => !@issue.leaf?, :required => @issue.required_attribute?('due_date') %><%= calendar_for('issue_due_date') if @issue.leaf? %></p>
|
|
| 55 |
<% end %> |
|
| 56 |
|
|
| 57 |
<% if @issue.safe_attribute? 'estimated_hours' %> |
|
| 58 |
<p><%= f.text_field :estimated_hours, :size => 3, :disabled => !@issue.leaf?, :required => @issue.required_attribute?('estimated_hours') %> <%= l(:field_hours) %></p>
|
|
| 59 |
<% end %> |
|
| 60 |
|
|
| 61 |
<% if @issue.safe_attribute?('done_ratio') && @issue.leaf? && Issue.use_field_for_done_ratio? %>
|
|
| 62 |
<p><%= f.select :done_ratio, ((0..10).to_a.collect {|r| ["#{r*10} %", r*10] }), :required => @issue.required_attribute?('done_ratio') %></p>
|
|
| 63 |
<% end %> |
|
| 64 |
</div> |
|
| 65 |
</div> |
|
| 66 |
|
|
| 67 |
<% if @issue.safe_attribute? 'custom_field_values' %> |
|
| 68 |
<%= render :partial => 'issues/form_custom_fields' %> |
|
| 69 |
<% end %> |
|
| 70 |
|
|
| 71 |
<% end %> |
|
| 72 |
|
|
| 73 |
<% include_calendar_headers_tags %> |
|
Also available in: Unified diff