jrhicks-static-generators 0.4.7 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -1,44 +1,45 @@
1
1
  ## Static Scaffolds
2
2
 
3
- Scaffold usable rails apps that are easy to edit.
3
+ Scaffold usable rails apps that are easy to edit.
4
4
 
5
5
  ## Install Gem
6
6
 
7
7
  gem sources -a http://gems.github.com
8
- gem install jrhicks-static-generators
8
+ sudogem install jrhicks-static-generators
9
9
 
10
- ## Install into new app (Requires Rails 2.3)
10
+ ## Create Base Rails App
11
11
 
12
12
  rails project_name -m http://github.com/jrhicks/static-scaffolds/raw/master/rails_templates/static_base.rb
13
13
 
14
- ## Usage
14
+ ## Basic Usage
15
15
 
16
16
  ruby script/generate static_app
17
17
  ruby script/generate static_gen_specs MyModel
18
18
  ruby script/generate static_scaffold MyModel
19
19
 
20
- ## Demo AddressBook App
20
+ ## Demo App Walkthrough
21
21
 
22
+ gem sources -a http://gems.github.com
23
+ sudo gem install jrhicks-static-generators
22
24
  rails address_book -m http://github.com/jrhicks/static-scaffolds/raw/master/rails_templates/static_base.rb
23
- ruby script/generate model contact full_name, email, work_phone, cell_phone, street_address, city, state, zip
24
- rake db:migrate
25
- ruby script/generate static_gen_specs contact -f
26
- ruby script/generate static_scaffold contact -f
27
- rake db:populate_fake_contacts
28
- ruby script/server
29
-
30
- http://localhost:3000/contacts
25
+ ruby script/generate model contact full_name:string birth_date:datetime email:string phone:string city:string state:string
26
+ rake db:migrate
27
+ ruby script/generate static_gen_specs contact -f
28
+ ruby script/generate static_scaffold contact -f
29
+ rake db:populate_fake_contacts
30
+ ruby script/server
31
+ http://localhost:3000/contacts
31
32
 
32
33
  ## Development
33
34
 
34
- git clone git://github.com/jrhicks/static-scaffolds.git
35
+ git clone git://github.com/jrhicks/static-scaffolds.git
35
36
 
36
- gem install echoe
37
- rake manifest
37
+ gem install echoe
38
+ rake manifest
38
39
  rake build
39
40
  rake install
40
41
 
41
42
  ## Author
42
43
 
43
- Jeffrey Hicks
44
+ Jeffrey Hicks
44
45
 
data/Rakefile CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
  require 'rake'
3
3
  require 'echoe'
4
4
 
5
- Echoe.new('static-generators', '0.4.7') do |p|
5
+ Echoe.new('static-generators', '0.5.0') do |p|
6
6
  p.project = "staticgenerators"
7
7
  p.description = "Generate attractive interfaces that are easy to edit."
8
8
  p.url = "http://github.com/jrhicks/static-scaffolds"
@@ -1,57 +1,59 @@
1
- class FacetedSearch::Facet
1
+ class FacetedSearch::DateRangeFacet < FacetedSearch::Facet
2
2
 
3
- # facilitate complex queries by managing session data from request paramaters
3
+ # Set upper and lower limit values for an attribute
4
4
 
5
- attr_reader :title
6
-
7
- def initialize()
8
- raise Exception.new("initialize is a subclase responsibility")
9
- end
5
+ def initialize(attribute, title, table_name, session)
6
+ @title = title
7
+ @attribute = attribute
8
+ @table_name = table_name
9
+ @session = session
10
+ end
10
11
 
11
- def turn_off_param
12
- raise Exception.new("turn_off_param is a subclass responsibility")
12
+ def refined(scope)
13
+ scope = scope.scoped :conditions => ["#{@table_name}.#{@attribute} <= ?", upper_limit_date] unless upper_limit.blank?
14
+ scope = scope.scoped :conditions => ["#{@table_name}.#{@attribute} >= ?", lower_limit_date] unless lower_limit.blank?
15
+ return scope
13
16
  end
14
17
 
18
+ def upper_limit_param_name()
19
+ "#{@table_name}_date_ul_#{@attribute}"
20
+ end
21
+
22
+ def lower_limit_param_name()
23
+ "#{@table_name}_date_ll_#{@attribute}"
24
+ end
25
+
15
26
  def is_active?
16
- raise Exception.new("is_on? is a subclass responsibility")
27
+ (not lower_limit.blank?) or (not upper_limit.blank?)
28
+ end
29
+
30
+ def turn_off_param
31
+ "#{@table_name}_turn_off_#{@attribute}"
17
32
  end
18
33
 
19
34
  def turn_off
20
- raise Exception.new("turn_off is a subclass responsibility")
35
+ @session[lower_limit_param_name]=nil
36
+ @session[upper_limit_param_name]=nil
37
+ end
38
+
39
+ def upper_limit_date
40
+ Date.parse(upper_limit)
21
41
  end
22
-
23
- def refined
24
- raise Exception.new("refine is a subclass responsibility")
42
+
43
+ def lower_limit_date
44
+ Date.parse(lower_limit)
25
45
  end
26
-
27
- def parameter_names
28
- raise Exception.new("parameter_names is subclass responsibility")
46
+
47
+ def upper_limit
48
+ @session[upper_limit_param_name]
29
49
  end
30
-
31
- def to_params
32
- params = {}
33
- parameter_names.each {|pname| params[pname]=@session[pname]}
34
- return params
35
- end
36
-
37
- def turn_off_if_needed(params)
38
- if params.keys.include?(turn_off_param) and is_active?
39
- turn_off
40
- return true
41
- else
42
- return false
43
- end
44
- end
45
-
46
- def update_with(params)
47
- value_changed = turn_off_if_needed(params)
48
- for p in parameter_names
49
- if params[p]!=nil and @session[p]!=params[p]
50
- value_changed=true
51
- @session[p] = params[p]
52
- end
53
- end
54
- return value_changed
50
+
51
+ def lower_limit
52
+ @session[lower_limit_param_name]
53
+ end
54
+
55
+ def parameter_names
56
+ [upper_limit_param_name, lower_limit_param_name]
55
57
  end
56
58
 
57
59
  end
@@ -2,12 +2,24 @@ class FacetedSearch::Facet
2
2
 
3
3
  # facilitate complex queries by managing session data from request paramaters
4
4
 
5
- def initialize(table_name,session)
6
- @session = session
7
- @table_name = table_name
5
+ attr_reader :title
6
+
7
+ def initialize()
8
8
  raise Exception.new("initialize is a subclase responsibility")
9
9
  end
10
10
 
11
+ def turn_off_param
12
+ raise Exception.new("turn_off_param is a subclass responsibility")
13
+ end
14
+
15
+ def is_active?
16
+ raise Exception.new("is_on? is a subclass responsibility")
17
+ end
18
+
19
+ def turn_off
20
+ raise Exception.new("turn_off is a subclass responsibility")
21
+ end
22
+
11
23
  def refined
12
24
  raise Exception.new("refine is a subclass responsibility")
13
25
  end
@@ -22,10 +34,19 @@ class FacetedSearch::Facet
22
34
  return params
23
35
  end
24
36
 
37
+ def turn_off_if_needed(params)
38
+ if params.keys.include?(turn_off_param) and is_active?
39
+ turn_off
40
+ return true
41
+ else
42
+ return false
43
+ end
44
+ end
45
+
25
46
  def update_with(params)
26
- value_changed=false
47
+ value_changed = turn_off_if_needed(params)
27
48
  for p in parameter_names
28
- if params[p]!=nil
49
+ if params[p]!=nil and @session[p]!=params[p]
29
50
  value_changed=true
30
51
  @session[p] = params[p]
31
52
  end
@@ -19,10 +19,10 @@
19
19
  <div class="span-5">
20
20
  <div class="model">
21
21
  <div class="model_header ui-corner-tl">
22
- <%=gen_spac.titleize%>
22
+ <%=gen_spec.plural_title%>
23
23
  </div>
24
24
  <div class="model_facets">
25
- <%%=render :partial=>"<%=gen_spac.plural_name%>/facet_form"%>
25
+ <%%=render :partial=>"<%=gen_spec.plural_name%>/facet_form"%>
26
26
  </div>
27
27
  </div> <!-- end model selector -->
28
28
  </div> <!-- end left_column -->
@@ -49,12 +49,12 @@
49
49
  </div> <!-- end presentation selector -->
50
50
 
51
51
  <!-- facet remove bar -->
52
- <%if <%=gen_spac.singular_name%>_search.active_facets.length>0%>
52
+ <%%if <%=gen_spec.singular_name%>_search.active_facets.length != 0%>
53
53
  <div class="remove_facets_panel">
54
- <%@search=<%=gen_spac.singular_name%>_search%>
54
+ <%%@search=<%=gen_spec.singular_name%>_search%>
55
55
  <%%=render :partial=>"faceted_search/active_facets"%>
56
56
  </div>
57
- <%end%>
57
+ <%%end%>
58
58
  <!-- end facet remove bar -->
59
59
 
60
60
  <div class="presentation_window">
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{static-generators}
5
- s.version = "0.4.7"
5
+ s.version = "0.5.0"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Jeffrey Hicks"]
9
- s.date = %q{2009-07-19}
9
+ s.date = %q{2009-07-20}
10
10
  s.description = %q{Generate attractive interfaces that are easy to edit.}
11
11
  s.email = %q{jrhicks (at) gmail (dot) com}
12
12
  s.extra_rdoc_files = ["CHANGELOG", "lib/static_generators.rb", "LICENSE", "README.md", "tasks/deployment.rake", "TODO"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jrhicks-static-generators
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.7
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeffrey Hicks
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-07-19 00:00:00 -07:00
12
+ date: 2009-07-20 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency