Revision 1297:0a574315af3e .svn/pristine/0b

View differences:

.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