diff --git a/app/controllers/organizations_controller.rb b/app/controllers/organizations_controller.rb
index 26313edc..6b9f2832 100644
--- a/app/controllers/organizations_controller.rb
+++ b/app/controllers/organizations_controller.rb
@@ -1,6 +1,7 @@
class OrganizationsController < ApplicationController
def new
@organization = Organization.new
+ @organization.is_public_submission = current_user.is_admin unless current_user.nil?
@project = @organization.projects.build(params[:projects])
end
diff --git a/app/models/organization.rb b/app/models/organization.rb
index 72891fcb..137838fd 100644
--- a/app/models/organization.rb
+++ b/app/models/organization.rb
@@ -12,8 +12,8 @@ class Organization < ActiveRecord::Base
attr_writer :logo_delete
attr_accessor :is_public_submission
- validates_presence_of :name
- validates_presence_of :github_org, if: :is_public_submission
+ validates :name, presence: true
+ validates :github_org, presence: true, unless: :is_public_submission
# Paperclip
has_attached_file :logo, styles: { thumb: '100x100>', medium: '250x250>' },
diff --git a/app/views/organizations/new.html.erb b/app/views/organizations/new.html.erb
index 6c19fa01..ca34a340 100644
--- a/app/views/organizations/new.html.erb
+++ b/app/views/organizations/new.html.erb
@@ -15,7 +15,7 @@
<%= f.input :name, :label => 'Organization Name', error_html: { class: "error" } %>
- <%= f.input :github_org, :label => 'Organization GitHub Username', :required => true, wrapper_html: { class: 'large-6 columns'}, error_html: { class: "error"} %>
+ <%= f.input :github_org, validate: true, :label => 'Organization GitHub Username', :required => true, wrapper_html: { class: 'large-6 columns'}, error_html: { class: "error"} %>
<%= f.input :url, :label => 'Organization Website', :required => false, :as => :url, wrapper_html: { class: 'large-6 columns'} %>
diff --git a/spec/models/organization_spec.rb b/spec/models/organization_spec.rb
index 82f71a05..7cd8538f 100644
--- a/spec/models/organization_spec.rb
+++ b/spec/models/organization_spec.rb
@@ -8,16 +8,16 @@
context 'validations' do
context 'if public submission' do
before { subject.stub(:is_public_submission) { true } }
- it { should validate_presence_of(:github_org) }
+ it { should_not validate_presence_of(:github_org) }
end
context 'if not public submission' do
before { subject.stub(:is_public_submission) { false } }
- it { should_not validate_presence_of(:github_org) }
+ it { should validate_presence_of(:github_org) }
end
context 'if not public submission, implicit' do
- it { should_not validate_presence_of(:github_org) }
+ it { should validate_presence_of(:github_org) }
end
end
diff --git a/spec/models/project_spec.rb b/spec/models/project_spec.rb
index a17254ef..0e3f12e0 100644
--- a/spec/models/project_spec.rb
+++ b/spec/models/project_spec.rb
@@ -83,7 +83,7 @@
end
describe '#related_projects' do
- let(:organization) { Organization.create!(name: 'CodeMontage') }
+ let(:organization) { Organization.create!(name: "CodeMontage", github_org: "codeMontage") }
before do
@project_1 = Project.create!(name: 'Code Montage', organization_id: organization.id, github_repo: 'codemontage')