##// END OF EJS Templates
Trac importer: user can now choose between sqlite and sqlite3 adapter for Trac database....
Jean-Philippe Lang -
r881:b0bb1baeaac6
parent child
Show More
@@ -2,7 +2,8
2 <h2><%=l(:label_issue_plural)%></h2>
2 <h2><%=l(:label_issue_plural)%></h2>
3 <% set_html_title l(:label_issue_plural) %>
3 <% set_html_title l(:label_issue_plural) %>
4
4
5 <% form_tag({ :controller => 'queries', :action => 'new', :project_id => @project }, :id => 'query_form') do %>
5 <% form_tag({ :controller => 'queries', :action => 'new' }, :id => 'query_form') do %>
6 <%= hidden_field_tag('project_id', @project.id) if @project %>
6 <%= render :partial => 'queries/filters', :locals => {:query => @query} %>
7 <%= render :partial => 'queries/filters', :locals => {:query => @query} %>
7 <div class="contextual">
8 <div class="contextual">
8 <%= link_to_remote l(:button_apply),
9 <%= link_to_remote l(:button_apply),
@@ -190,6 +190,9 namespace :redmine do
190 end
190 end
191
191
192 def self.migrate
192 def self.migrate
193 establish_connection({:adapter => trac_adapter,
194 :database => trac_db_path})
195
193 # Quick database test before clearing Redmine data
196 # Quick database test before clearing Redmine data
194 TracComponent.count
197 TracComponent.count
195
198
@@ -393,6 +396,12 namespace :redmine do
393 @trac_directory
396 @trac_directory
394 end
397 end
395
398
399 def self.set_trac_adapter(adapter)
400 return false unless %w(sqlite sqlite3).include?(adapter)
401 @trac_adapter = adapter
402 end
403
404 def self.trac_adapter; @trac_adapter end
396 def self.trac_db_path; "#{trac_directory}/db/trac.db" end
405 def self.trac_db_path; "#{trac_directory}/db/trac.db" end
397 def self.trac_attachments_directory; "#{trac_directory}/attachments" end
406 def self.trac_attachments_directory; "#{trac_directory}/attachments" end
398
407
@@ -404,6 +413,8 namespace :redmine do
404 :description => identifier.humanize
413 :description => identifier.humanize
405 project.identifier = identifier
414 project.identifier = identifier
406 puts "Unable to create a project with identifier '#{identifier}'!" unless project.save
415 puts "Unable to create a project with identifier '#{identifier}'!" unless project.save
416 # enable issues and wiki for the created project
417 project.enabled_module_names = ['issue_tracking', 'wiki']
407 end
418 end
408 @target_project = project.new_record? ? nil : project
419 @target_project = project.new_record? ? nil : project
409 end
420 end
@@ -441,12 +452,11 namespace :redmine do
441 end
452 end
442
453
443 prompt('Trac directory') {|directory| TracMigrate.set_trac_directory directory}
454 prompt('Trac directory') {|directory| TracMigrate.set_trac_directory directory}
455 prompt('Trac database adapter (sqlite, sqlite3)', :default => 'sqlite') {|adapter| TracMigrate.set_trac_adapter adapter}
444 prompt('Trac database encoding', :default => 'UTF-8') {|encoding| TracMigrate.encoding encoding}
456 prompt('Trac database encoding', :default => 'UTF-8') {|encoding| TracMigrate.encoding encoding}
445 prompt('Target project identifier') {|identifier| TracMigrate.target_project_identifier identifier}
457 prompt('Target project identifier') {|identifier| TracMigrate.target_project_identifier identifier}
446 puts
458 puts
447
459
448 TracMigrate.establish_connection({:adapter => 'sqlite',
449 :database => "#{TracMigrate.trac_db_path}"})
450 TracMigrate.migrate
460 TracMigrate.migrate
451 end
461 end
452 end
462 end
General Comments 0
You need to be logged in to leave comments. Login now