Project

General

Profile

Feature #2028 » patch_for_feature_2028.diff

Leandro Nunes dos Santos Nunes, 2008-10-14 21:39

View differences:

app/helpers/application_helper.rb (cópia de trabalho)
260 260
    text = (Setting.text_formatting == 'textile') ?
261 261
      Redmine::WikiFormatting.to_html(text) { |macro, args| exec_macro(macro, obj, args) } :
262 262
      simple_format(auto_link(h(text)))
263

  
264 263
    # different methods for formatting wiki links
265 264
    case options[:wiki_links]
266 265
    when :local
......
270 269
      # used for single-file wiki export
271 270
      format_wiki_link = Proc.new {|project, title, anchor| "##{title}" }
272 271
    else
273
      format_wiki_link = Proc.new {|project, title, anchor| url_for(:only_path => only_path, :controller => 'wiki', :action => 'index', :id => project, :page => title, :anchor => anchor) }
272
      format_wiki_link = Proc.new {|project, title, anchor, parent| url_for(:only_path => only_path, :controller => 'wiki', :action => 'index', :id => project, :page => title, :anchor => anchor, :parent => parent.title) }
274 273
    end
275 274
    
276 275
    project = options[:project] || @project || (obj && obj.respond_to?(:project) ? obj.project : nil)
......
303 302
          end
304 303
          # check if page exists
305 304
          wiki_page = link_project.wiki.find_page(page)
306
          link_to((title || page), format_wiki_link.call(link_project, Wiki.titleize(page), anchor),
305
          link_to((title || page), format_wiki_link.call(link_project, Wiki.titleize(page), anchor, obj.page),
307 306
                                   :class => ('wiki-page' + (wiki_page ? '' : ' new')))
308 307
        else
309 308
          # project or wiki doesn't exist
app/controllers/wiki_controller.rb (cópia de trabalho)
52 52
      send_data(@content.text, :type => 'text/plain', :filename => "#{@page.title}.txt")
53 53
      return
54 54
    end
55
	@editable = editable?
55
    @editable = editable?
56 56
    render :action => 'show'
57 57
  end
58 58
  
......
60 60
  def edit
61 61
    @page = @wiki.find_or_new_page(params[:page])    
62 62
    return render_403 unless editable?
63
    @page.content = WikiContent.new(:page => @page) if @page.new_record?
63

  
64
    if @page.new_record?
65
      @page.content = WikiContent.new(:page => @page) 
66
      @page.parent_title = params[:parent]
67
    end
64 68
    
65 69
    @content = @page.content_for_version(params[:version])
66 70
    @content.text = "h1. #{@page.pretty_title}" if @content.text.blank?
app/views/wiki/edit.rhtml (cópia de trabalho)
2 2

  
3 3
<% form_for :content, @content, :url => {:action => 'edit', :page => @page.title}, :html => {:id => 'wiki_form'} do |f| %>
4 4
<%= f.hidden_field :version %>
5
<%= hidden_field_tag 'parent', @page.parent_title %>
5 6
<%= error_messages_for 'content' %>
6 7

  
7 8
<p><%= f.text_area :text, :cols => 100, :rows => 25, :class => 'wiki-edit', :accesskey => accesskey(:edit) %></p>
(1-1/2)