Browse Source

delete restrict, fix tree nesting, deps update

pull/1/head
Nicolae Claudius 13 years ago
parent
commit
6387082268
  1. 4
      Gemfile
  2. 75
      Gemfile.lock
  3. 15
      app/controllers/domains_controller.rb
  4. 2
      app/helpers/domains_helper.rb
  5. 11
      app/models/domain/tree_structure.rb

4
Gemfile

@ -15,7 +15,7 @@ gem 'userstamp_basic', '~> 0.1.0'
gem 'active_scaffold', '~> 3.2.3'
# git: 'https://github.com/activescaffold/active_scaffold.git'
# path: '/home/clyfe/dev/active_scaffold'
gem 'pjax_rails', '~> 0.1.7', git: 'https://github.com/rails/pjax_rails.git'
gem 'pjax_rails', '~> 0.2.0'
gem 'validates_hostname', '~> 1.0.0', git: 'https://github.com/KimNorgaard/validates_hostname.git'
gem 'nilify_blanks', '~> 1.0.0'
gem 'rails_config', '~> 0.2.4'
@ -27,7 +27,7 @@ gem 'simple_form', '~> 2.0.0'
gem 'concerned_with', '~> 0.1.0'
gem 'navigasmic', '~> 0.5.6', git: 'https://github.com/jejacks0n/navigasmic.git'
gem 'rails-backbone', '~> 0.7.0'
gem 'acts_as_nested_interval', '~> 0.0.2'
gem 'acts_as_nested_interval', '~> 0.0.5'
# path: '/home/clyfe/dev/acts_as_nested_interval'
# git: 'https://github.com/clyfe/acts_as_nested_interval.git'

75
Gemfile.lock

@ -6,17 +6,10 @@ GIT
GIT
remote: https://github.com/jejacks0n/navigasmic.git
revision: 6108afe7930fd4b3282cbe8942240bf4f70e2f74
revision: 28b18a66ad0aedcf0582df317612d6021e78858b
specs:
navigasmic (0.5.6)
GIT
remote: https://github.com/rails/pjax_rails.git
revision: e79a1cf58a8935eb132f4910f300cf86d081ae6d
specs:
pjax_rails (0.1.7)
jquery-rails
GEM
remote: http://rubygems.org/
specs:
@ -52,8 +45,9 @@ GEM
activesupport (3.2.2)
i18n (~> 0.6)
multi_json (~> 1.0)
acts_as_nested_interval (0.0.2)
acts_as_nested_interval (0.0.5)
rails (~> 3.2.1)
addressable (2.2.7)
arel (3.0.2)
bcrypt-ruby (3.0.1)
bootstrap-sass-rails (2.0.0.3)
@ -76,7 +70,7 @@ GEM
rack-test (>= 0.5.4)
selenium-webdriver (~> 2.0)
xpath (~> 0.1.4)
childprocess (0.3.1)
childprocess (0.3.2)
ffi (~> 1.0.6)
chunky_png (1.2.5)
coffee-rails (3.2.2)
@ -85,17 +79,17 @@ GEM
coffee-script (2.2.0)
coffee-script-source
execjs
coffee-script-source (1.2.0)
compass (0.12.rc.1)
coffee-script-source (1.3.1)
compass (0.12.1)
chunky_png (~> 1.2)
fssm (>= 0.2.7)
sass (~> 3.1)
compass-rails (1.0.0.rc.3)
compass (~> 0.12.rc.0)
compass-rails (1.0.1)
compass (~> 0.12.0)
concerned_with (0.1.0)
daemons (1.0.10)
dalli (1.1.5)
database_cleaner (0.7.1)
database_cleaner (0.7.2)
devise (2.0.4)
bcrypt-ruby (~> 3.0)
orm_adapter (~> 0.0.3)
@ -116,7 +110,7 @@ GEM
ffi (1.0.11)
file-tail (1.0.8)
tins (~> 0.3)
fssm (0.2.8.1)
fssm (0.2.9)
gem_plugin (0.2.3)
guard (1.0.1)
ffi (>= 0.5.0)
@ -130,22 +124,24 @@ GEM
hike (1.2.1)
i18n (0.6.0)
journey (1.0.3)
jquery-rails (2.0.1)
jquery-rails (2.0.2)
railties (>= 3.2.0, < 5.0)
thor (~> 0.14)
json (1.6.5)
json (1.6.6)
libnotify (0.7.2)
libv8 (3.3.10.4)
mail (2.4.3)
libwebsocket (0.1.3)
addressable
mail (2.4.4)
i18n (>= 0.4.0)
mime-types (~> 1.16)
treetop (~> 1.4.8)
mail_form (1.3.0)
mime-types (1.17.2)
mime-types (1.18)
mongrel (1.2.0.pre2)
daemons (~> 1.0.10)
gem_plugin (~> 0.2.3)
multi_json (1.1.0)
multi_json (1.3.2)
mysql2 (0.3.11)
net-scp (1.0.4)
net-ssh (>= 1.99.1)
@ -157,8 +153,10 @@ GEM
nilify_blanks (1.0.0)
activerecord (>= 3.0.0)
activesupport (>= 3.0.0)
nokogiri (1.5.0)
orm_adapter (0.0.6)
nokogiri (1.5.2)
orm_adapter (0.0.7)
pjax_rails (0.2.0)
jquery-rails
polyamorous (0.5.0)
activerecord (~> 3.0)
polyglot (0.3.3)
@ -177,11 +175,11 @@ GEM
activesupport (= 3.2.2)
bundler (~> 1.0)
railties (= 3.2.2)
rails-backbone (0.7.0)
rails-backbone (0.7.2)
coffee-script (~> 2.2.0)
ejs (~> 1.0.0)
railties (>= 3.1.0)
rails_config (0.2.5)
rails_config (0.2.7)
activesupport (>= 3.0)
railties (3.2.2)
actionpack (= 3.2.2)
@ -213,24 +211,25 @@ GEM
sexp_processor (~> 3.0)
ruby_parser (2.3.1)
sexp_processor (~> 3.0)
rubyzip (0.9.6.1)
sass (3.1.15)
sass-rails (3.2.4)
rubyzip (0.9.7)
sass (3.1.16)
sass-rails (3.2.5)
railties (~> 3.2.0)
sass (>= 3.1.10)
tilt (~> 1.3)
selenium-webdriver (2.20.0)
selenium-webdriver (2.21.2)
childprocess (>= 0.2.5)
ffi (~> 1.0)
libwebsocket (~> 0.1.3)
multi_json (~> 1.0)
rubyzip
sentient_user (0.3.2)
sexp_processor (3.1.0)
sexp_processor (3.2.0)
simple_form (2.0.1)
actionpack (~> 3.0)
activemodel (~> 3.0)
simplecov (0.6.1)
multi_json (~> 1.0)
simplecov (0.6.2)
multi_json (~> 1.3)
simplecov-html (~> 0.5.3)
simplecov-html (0.5.3)
sourcify (0.6.0.rc1)
@ -248,16 +247,16 @@ GEM
activesupport (~> 3.0)
polyamorous (~> 0.5.0)
switch_user (0.6.0)
therubyracer (0.9.10)
therubyracer (0.10.1)
libv8 (~> 3.3.10)
thor (0.14.6)
tilt (1.3.3)
tins (0.3.9)
tins (0.3.13)
treetop (1.4.10)
polyglot
polyglot (>= 0.3.1)
tzinfo (0.3.32)
uglifier (1.2.3)
tzinfo (0.3.33)
uglifier (1.2.4)
execjs (>= 0.3.0)
multi_json (>= 1.0.2)
userstamp_basic (0.1.0)
@ -273,7 +272,7 @@ PLATFORMS
DEPENDENCIES
active-model-email-validator (~> 1.0.2)
active_scaffold (~> 3.2.3)
acts_as_nested_interval (~> 0.0.2)
acts_as_nested_interval (~> 0.0.5)
bootstrap-sass-rails (~> 2.0.0.2)
cancan (~> 1.6.7)
capistrano (~> 2.9.0)
@ -296,7 +295,7 @@ DEPENDENCIES
mysql2
navigasmic (~> 0.5.6)!
nilify_blanks (~> 1.0.0)
pjax_rails (~> 0.1.7)!
pjax_rails (~> 0.2.0)
rails (= 3.2.2)
rails-backbone (~> 0.7.0)
rails_config (~> 0.2.4)

15
app/controllers/domains_controller.rb

@ -39,6 +39,21 @@ class DomainsController < ApplicationController
end
end
def do_destroy
@record ||= destroy_find_record
begin
self.successful = @record.destroy
marked_records.delete @record.id.to_s if successful?
rescue ActiveRecord::DeleteRestrictionError => e
flash[:warning] = as_(:cant_destroy_record, :record => @record.to_label)
@record.errors.add :base, "Delete subdomains first"
self.successful = false
rescue
flash[:warning] = as_(:cant_destroy_record, :record => @record.to_label)
self.successful = false
end
end
def new_model
record = super
before_create_save(record)

2
app/helpers/domains_helper.rb

@ -10,7 +10,7 @@ module DomainsHelper
def domain_name_column(record)
elements = []
depth = record.depth
if depth > 1 && @previous_record && record.subdomain_of?(@previous_record)
if depth > 1
(depth - 2).times do # indent
elements << '<span class="ui-icon ui-icon-blank"></span>'
end

11
app/models/domain/tree_structure.rb

@ -47,9 +47,10 @@ class Domain < ActiveRecord::Base
name.end_with?('.' + domain.name)
end
# Overrides acts_as_nested_interval#ancestor_of?
def ancestor_of?(domain)
domain.subdomain_of?(self)
def self.rebuild_nested_interval_tree!
skip_callback :update, :before, :sync_children
super
set_callback :update, :before, :sync_children
end
protected
@ -72,7 +73,7 @@ class Domain < ActiveRecord::Base
self.parent = parent_domain
end
end
# Syncs with nested interval when the parent is added later than the children
def sync_children
descendants = subdomains.preorder.all
@ -90,4 +91,4 @@ class Domain < ActiveRecord::Base
end
end
end
end

Loading…
Cancel
Save