From e83773f9cd687ba466c81c548e91a1c20a33cf22 Mon Sep 17 00:00:00 2001
From: João M. M. da Silva + Diego Araújo
Date: Thu, 29 Nov 2012 17:49:16 -0200
Subject: [PATCH] [Mezuro] editing a repository of a project
---
plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb | 28 +++++++++++++++++++++++++++-
plugins/mezuro/views/mezuro_plugin_repository/edit.html.erb | 42 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 69 insertions(+), 1 deletion(-)
create mode 100644 plugins/mezuro/views/mezuro_plugin_repository/edit.html.erb
diff --git a/plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb b/plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb
index 9843060..8185616 100644
--- a/plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb
+++ b/plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb
@@ -26,7 +26,33 @@ class MezuroPluginRepositoryController < MezuroPluginProfileController
redirect_to_error_page repository.errors[0].message
end
end
-
+
+ def edit
+ @project_content = profile.articles.find(params[:id])
+
+ @repository_types = Kalibro::Repository.repository_types
+
+ configurations = Kalibro::Configuration.all
+ configurations = [] if (configurations.nil?)
+ @configuration_select = configurations.map do |configuration|
+ [configuration.name,configuration.id]
+ end
+ @repository = @project_content.repositories.select{ |repository| repository.id == params[:repository_id].to_s }.first
+ end
+
+ def update
+ project_content = profile.articles.find(params[:id])
+
+ repository = Kalibro::Repository.new( params[:repository] )
+ repository.save(project_content.project_id)
+
+ if( repository.errors.empty? )
+ redirect_to "/#{profile.identifier}/#{project_content.name.downcase.gsub(/\s/, '-')}"
+ else
+ redirect_to_error_page repository.errors[0].message
+ end
+ end
+
def show
project_content = profile.articles.find(params[:id])
@project_name = project_content.name
diff --git a/plugins/mezuro/views/mezuro_plugin_repository/edit.html.erb b/plugins/mezuro/views/mezuro_plugin_repository/edit.html.erb
new file mode 100644
index 0000000..2b9031e
--- /dev/null
+++ b/plugins/mezuro/views/mezuro_plugin_repository/edit.html.erb
@@ -0,0 +1,42 @@
+<%= @project_content.name %> Project
+
+<% form_for :repository, :url => {:action =>"update", :controller => "mezuro_plugin_repository"}, :method => :get do |f| %>
+ <%= hidden_field_tag :id, @project_content.id %>
+
+ <%= f.hidden_field :id%>
+
+ <%= f.label :name, "Name:" %>
+ <%= f.text_field :name %>
+
+
+ <%= f.label :description, "Description:" %>
+ <%= f.text_field :description %>
+
+
+ <%= required labelled_form_field _('License'),
+ f.select(:license, MezuroPlugin::Helpers::ContentViewerHelper.create_license_options) %>
+
+
+
+ <%= f.label :process_period, "Process Period:" %>
+ <%= f.select(:process_period, MezuroPlugin::Helpers::ContentViewerHelper.create_periodicity_options) %>
+
+ <%= f.label :type, "Type:" %>
+ <%= f.select :type, @repository_types%>
+
+
+
+ <%= f.label :address, "Address:" %>
+ <%= f.text_field :address%>
+
+
+
+ <%= f.label :configuration_id, "Configuration:" %>
+ <%= f.select :configuration_id, @configuration_select, :selected => @repository.configuration_id.to_i %>
+
+
+
+ <%= f.submit "Add" %>
+
+
+<% end %>
--
libgit2 0.21.2