Skip to content

Commit afe951e

Browse files
author
root
committed
Enforce models constraints
1 parent 0d2d873 commit afe951e

File tree

5 files changed

+59
-11
lines changed

5 files changed

+59
-11
lines changed

Diff for: app/views/repositories/_form.html.erb

+2-2
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@
102102

103103
<%
104104
selected = "false"
105-
if @repository.extra[:git_daemon] == 1
105+
if @repository.extra[:git_daemon]
106106
selected = "true"
107107
elsif @project.is_public && RedmineGitolite::ConfigRedmine.get_setting(:gitolite_daemon_by_default, true)
108108
selected = "true"
@@ -122,7 +122,7 @@
122122
<label><%= l(:label_enable_git_notify) %></label>
123123
<span class="bootstrap-switch switch-small" data-on="primary" data-off="default" data-on-label="<%= l(:label_yes) %>" data-off-label="<%= l(:label_no) %>">
124124
<%= hidden_field_tag "extra[git_notify]", "false" %>
125-
<%= check_box_tag "extra[git_notify]", (@repository.extra[:git_notify] == 1 ? 'true' : 'false'), (@repository.extra[:git_notify] == 1 ? true : false) %>
125+
<%= check_box_tag "extra[git_notify]", @repository.extra[:git_notify], @repository.extra[:git_notify] %>
126126
</span>
127127
</p>
128128
<% end %>

Diff for: app/views/repository_git_notifications/index.html.erb

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<div>
22

3-
<% if @repository.extra[:git_notify] == 1 %>
3+
<% if @repository.extra[:git_notify] %>
44

55
<% if !@git_notification.nil? %>
66

@@ -36,7 +36,7 @@
3636
(!@git_notification.nil? && @git_notification.include_list.any?) ||
3737
(!@git_notification.nil? && @git_notification.exclude_list.any?) %>
3838

39-
<div style="opacity: <%= @repository.extra[:git_notify] == 0 ? '0.5' : '1' %>;">
39+
<div style="opacity: <%= @repository.extra[:git_notify] ? '1' : '0.5' %>;">
4040

4141
<% if !@git_notification.nil? %>
4242
<p>
+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
class EnforceModelsConstraints < ActiveRecord::Migration
2+
3+
def self.up
4+
5+
change_column :git_caches, :repo_identifier, :string, :null => false, :after => :id
6+
change_column :git_caches, :command, :text, :null => false
7+
change_column :git_caches, :command_output, :binary, :null => false
8+
9+
change_column :gitolite_public_keys, :user_id, :integer, :null => false, :after => :id
10+
change_column :gitolite_public_keys, :key_type, :integer, :null => false, :after => :user_id
11+
change_column :gitolite_public_keys, :title, :string, :null => false
12+
change_column :gitolite_public_keys, :identifier, :string, :null => false
13+
change_column :gitolite_public_keys, :key, :string, :null => false
14+
change_column :gitolite_public_keys, :active, :boolean, :default => true
15+
change_column :gitolite_public_keys, :delete_when_unused, :boolean, :default => true, :after => :active
16+
17+
change_column :repository_deployment_credentials, :repository_id, :integer, :null => false
18+
change_column :repository_deployment_credentials, :gitolite_public_key_id, :integer, :null => false
19+
change_column :repository_deployment_credentials, :user_id, :integer, :null => false
20+
change_column :repository_deployment_credentials, :active, :boolean, :default => true
21+
22+
change_column :repository_git_config_keys, :repository_id, :integer, :null => false
23+
change_column :repository_git_config_keys, :key, :string, :null => false
24+
change_column :repository_git_config_keys, :value, :string, :null => false
25+
26+
change_column :repository_git_extras, :repository_id, :integer, :null => false
27+
change_column :repository_git_extras, :key, :string, :null => false
28+
change_column :repository_git_extras, :git_daemon, :boolean, :default => false
29+
change_column :repository_git_extras, :git_notify, :boolean, :default => false
30+
31+
change_column :repository_git_notifications, :repository_id, :integer, :null => false
32+
33+
change_column :repository_mirrors, :repository_id, :integer, :null => false, :after => :id
34+
change_column :repository_mirrors, :url, :string, :null => false, :after => :repository_id
35+
change_column :repository_mirrors, :active, :boolean, :default => true
36+
remove_column :repository_mirrors, :created_at
37+
remove_column :repository_mirrors, :updated_at
38+
39+
change_column :repository_post_receive_urls, :repository_id, :integer, :null => false, :after => :id
40+
change_column :repository_post_receive_urls, :url, :string, :null => false, :after => :repository_id
41+
change_column :repository_post_receive_urls, :mode, :string, :null => false, :after => :url
42+
change_column :repository_post_receive_urls, :active, :boolean, :default => true
43+
remove_column :repository_post_receive_urls, :created_at
44+
remove_column :repository_post_receive_urls, :updated_at
45+
46+
end
47+
48+
end

Diff for: lib/redmine_git_hosting/patches/projects_controller_patch.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -133,8 +133,8 @@ def git_repo_init
133133
def disable_git_daemon_if_not_public
134134
# Go through all gitolite repos and diable Git daemon if necessary
135135
@project.gitolite_repos.each do |repository|
136-
if repository.extra.git_daemon == 1 && !@project.is_public
137-
repository.extra.git_daemon = 0
136+
if repository.extra[:git_daemon] && !@project.is_public
137+
repository.extra[:git_daemon] = false
138138
repository.extra.save
139139
end
140140
end

Diff for: lib/redmine_gitolite/admin_repositories_helper.rb

+5-5
Original file line numberDiff line numberDiff line change
@@ -99,10 +99,10 @@ def do_update_repository(repository, old_permissions)
9999
# Set post-receive hook params
100100
repo_conf.set_git_config("redminegitolite.projectid", repository.project.identifier.to_s)
101101
repo_conf.set_git_config("redminegitolite.repositoryid", "#{repository.identifier || ''}")
102-
repo_conf.set_git_config("redminegitolite.repositorykey", repository.extra.key)
102+
repo_conf.set_git_config("redminegitolite.repositorykey", repository.extra[:key])
103103

104104
if project.active?
105-
if User.anonymous.allowed_to?(:view_changesets, project) || repository.extra.git_http != 0
105+
if User.anonymous.allowed_to?(:view_changesets, project) || repository.extra[:git_http] != 0
106106
repo_conf.set_git_config("http.uploadpack", 'true')
107107
else
108108
repo_conf.set_git_config("http.uploadpack", 'false')
@@ -111,7 +111,7 @@ def do_update_repository(repository, old_permissions)
111111
# Set mail-notifications hook params
112112
mailing_list = repository.mailing_list_params[:mailing_list]
113113

114-
if repository.extra.git_notify == 1 && !mailing_list.empty?
114+
if repository.extra[:git_notify] && !mailing_list.empty?
115115
email_prefix = repository.mailing_list_params[:email_prefix]
116116
sender_address = repository.mailing_list_params[:sender_address]
117117

@@ -301,8 +301,8 @@ def build_permissions(repository)
301301
end
302302

303303
read << "DUMMY_REDMINE_KEY" if read.empty? && write.empty? && rewind.empty?
304-
read << "gitweb" if User.anonymous.allowed_to?(:browse_repository, project) && repository.extra.git_http != 0
305-
read << "daemon" if User.anonymous.allowed_to?(:view_changesets, project) && repository.extra.git_daemon == 1
304+
read << "gitweb" if User.anonymous.allowed_to?(:browse_repository, project) && repository.extra[:git_http] != 0
305+
read << "daemon" if User.anonymous.allowed_to?(:view_changesets, project) && repository.extra[:git_daemon]
306306
elsif project.archived?
307307
read << "REDMINE_ARCHIVED_PROJECT"
308308
else

0 commit comments

Comments
 (0)