2012-05-02 10:18:07 +01:00
|
|
|
class Projects::CommitSubscribesController < Projects::BaseController
|
2012-01-23 19:42:54 +00:00
|
|
|
before_filter :authenticate_user!
|
|
|
|
load_and_authorize_resource :project
|
|
|
|
|
|
|
|
before_filter :find_commit
|
|
|
|
|
|
|
|
def create
|
2012-01-30 11:59:57 +00:00
|
|
|
if Subscribe.subscribe_to_commit(@options)
|
2012-01-24 19:00:51 +00:00
|
|
|
flash[:notice] = I18n.t("flash.subscribe.commit.saved")
|
2012-01-23 19:42:54 +00:00
|
|
|
# TODO js
|
|
|
|
redirect_to commit_path(@project, @commit)
|
|
|
|
else
|
|
|
|
flash[:error] = I18n.t("flash.subscribe.saved_error")
|
|
|
|
redirect_to commit_path(@project, @commit)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def destroy
|
2012-01-30 11:59:57 +00:00
|
|
|
Subscribe.unsubscribe_from_commit(@options)
|
2012-01-24 19:00:51 +00:00
|
|
|
flash[:notice] = t("flash.subscribe.commit.destroyed")
|
2012-01-23 19:42:54 +00:00
|
|
|
redirect_to commit_path(@project, @commit)
|
|
|
|
end
|
|
|
|
|
|
|
|
protected
|
|
|
|
|
|
|
|
def find_commit
|
2012-07-17 09:02:56 +01:00
|
|
|
@commit = @project.repo.commit(params[:commit_id])
|
2012-02-15 13:07:56 +00:00
|
|
|
@options = {:project_id => @project.id, :subscribeable_id => @commit.id.hex, :subscribeable_type => @commit.class.name, :user_id => current_user.id}
|
2012-01-23 19:42:54 +00:00
|
|
|
end
|
|
|
|
end
|