aina 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1f74db6cccb4e55a0dcc50e35ba247f9fc4e334d
4
- data.tar.gz: abb397bd128d8c751e025497e7e58e0786f38e0d
3
+ metadata.gz: db21e4343a920a1d5951e3d6f078818626c4cc99
4
+ data.tar.gz: bab1e169e9148830547d0808106d344299fe78c9
5
5
  SHA512:
6
- metadata.gz: 8a49993a6a3f8b3d8f90b4f7d1f8b2424ccf6c4856f4526ddc826f51ed02dcf72f8a19d175a607f76d9b250d80e3f9e37fa11cf6fa0ab20654eaba33154d9d7e
7
- data.tar.gz: 5b3f44b1c3f998457219f1f8a92c7c1b45e8fac61f638d006f751f65da8155a42f067ebd9adc405cf44e465cd138d070b8d4529a33ff4cd6278094e161003565
6
+ metadata.gz: 75cb5a61346befb320b56659ca3a0283ba8fb87ec19462a3ccee9f55729cd9039ac6fcfe2ba94a2a16b90d3cdac2f9c35519dd1ea93c5fba9d0d15ee3d6fcca3
7
+ data.tar.gz: f3ac885478fbf93a3ff07344b5c6f52d03b3a2ab553ef6e9673935fe80df39d37f98307008507a1a7679bcf9f4ac4d22b7c029bfa3324e602e706abf9407de7e
@@ -1,62 +1,62 @@
1
1
  module Generable
2
- # List of generable types
3
- def self.generable_types
4
- g = Array.new
5
- Dir.glob(File.dirname(__FILE__) + "/generable/types/*.rb").each do |f|
6
- g << f.split('/').last.split('.rb').join()
7
- end
8
- g
9
- end
10
-
11
- def self.class_name_for(type)
12
- "Generable::#{type.camelcase}"
13
- end
14
-
15
- # Is generable?
16
- def self.accepts?(type)
17
- generable_types.include?(type)
18
- end
19
-
20
- # Does type need to be created in a directory?
21
- # Then, in type use:
22
- # dir 'my-directory'
23
- def dir(directory)
24
- @dir = directory
25
- end
26
-
27
- def get_dir
28
- @dir
29
- end
30
-
31
- # Does type use a template?
32
- # Then, in type use:
33
- # template 'my-template.php'
34
- def template(template)
35
- @template = "#{Aina::TEMPLATES_DIR}/#{template}" if template
36
- end
37
-
38
- def get_template
39
- @template
40
- end
41
-
42
- # Does type template need custom replacements?
43
- # Then, in type use:
44
- # replacements %w({{replace_this}} {{and_this_too}})
45
- def replacements(*replacements)
46
- @replacements = %w(name aina_version)
47
- @replacements += replacements.flatten if replacements
48
- @replacements = @replacements.map { |r| "{{#{r}}}" }
49
- end
50
-
51
- def get_replacements
52
- @replacements
53
- end
54
-
55
- def after_generate(*callbacks)
56
- @after_generate = callbacks
57
- end
58
-
59
- def get_after_generate
60
- @after_generate
61
- end
62
- end
2
+ # List of generable types
3
+ def self.generable_types
4
+ g = Array.new
5
+ Dir.glob(File.dirname(__FILE__) + "/generable/types/*.rb").each do |f|
6
+ g << f.split('/').last.split('.rb').join()
7
+ end
8
+ g
9
+ end
10
+
11
+ def self.class_name_for(type)
12
+ "Generable::#{type.camelcase}"
13
+ end
14
+
15
+ # Is generable?
16
+ def self.accepts?(type)
17
+ generable_types.include?(type)
18
+ end
19
+
20
+ # Does type need to be created in a directory?
21
+ # Then, in type use:
22
+ # dir 'my-directory'
23
+ def dir(directory)
24
+ @dir = directory
25
+ end
26
+
27
+ def get_dir
28
+ @dir
29
+ end
30
+
31
+ # Does type use a template?
32
+ # Then, in type use:
33
+ # template 'my-template.php'
34
+ def template(template)
35
+ @template = "#{Aina::TEMPLATES_DIR}/#{template}" if template
36
+ end
37
+
38
+ def get_template
39
+ @template
40
+ end
41
+
42
+ # Does type template need custom replacements?
43
+ # Then, in type use:
44
+ # replacements %w({{replace_this}} {{and_this_too}})
45
+ def replacements(*replacements)
46
+ @replacements = %w(name aina_version)
47
+ @replacements += replacements.flatten if replacements
48
+ @replacements = @replacements.map { |r| "{{#{r}}}" }
49
+ end
50
+
51
+ def get_replacements
52
+ @replacements
53
+ end
54
+
55
+ def after_generate(*callbacks)
56
+ @after_generate = callbacks
57
+ end
58
+
59
+ def get_after_generate
60
+ @after_generate
61
+ end
62
+ end
@@ -1,72 +1,88 @@
1
1
  # Generable class
2
2
  class Generable::Base
3
- extend Generable
4
- attr_reader :name, :template, :file, :aina_version, :supports
3
+ extend Generable
4
+ attr_reader :name, :template, :file, :aina_version, :supports
5
5
 
6
- def initialize(name, options=nil)
7
- @name = name
8
- @options = options
9
- @aina_version = Aina::VERSION
10
- @template = self.template
11
- @dir = self.dir
12
- @file = generate_file_name
6
+ def initialize(name, options=nil)
7
+ @name = format_name(name)
8
+ @options = options
9
+ @aina_version = Aina::VERSION
10
+ @template = self.template
11
+ @dir = self.dir
12
+ @file = generate_file_name
13
13
 
14
- set_custom_vars
15
- end
16
-
17
- def set_custom_vars
18
- # Nothing here
19
- # This can be used in types to parse required instance variables
20
- end
14
+ set_custom_vars
15
+ end
21
16
 
22
- def dir
23
- self.class.get_dir
24
- end
17
+ def display_name
18
+ name
19
+ .split('_')
20
+ .each {|w| w.capitalize! }
21
+ .join(' ')
22
+ end
25
23
 
26
- def template
27
- self.class.get_template
28
- end
24
+ def name
25
+ @name.split(' ').join('_').downcase
26
+ end
29
27
 
30
- def replacements
31
- self.class.get_replacements
32
- end
28
+ def set_custom_vars
29
+ # Nothing here
30
+ # This can be used in types to parse required instance variables
31
+ end
33
32
 
34
- def generate
35
- text = File.read(@template)
36
- replacements.each do |replace|
37
- attribute = replace.gsub(/[{}]/, '')
38
- @output = text.gsub!(/#{replace}/, self.send(attribute))
39
- end
40
- File.open(@file, "w") {|file| file.puts @output}
33
+ def dir
34
+ self.class.get_dir
35
+ end
41
36
 
42
- after_generate
43
- end
37
+ def template
38
+ self.class.get_template
39
+ end
44
40
 
45
- def after_generate
46
- if self.class.get_after_generate
47
- self.class.get_after_generate.each do |callback|
48
- self.send(callback)
49
- end
50
- end
51
- end
41
+ def replacements
42
+ self.class.get_replacements
43
+ end
52
44
 
53
- def destroy
54
- if File.exists?(@file)
55
- File.delete(@file)
56
- else
57
- raise "No #{self.class} with name #{@name}"
58
- end
59
- end
45
+ def generate
46
+ text = File.read(@template)
47
+ replacements.each do |replace|
48
+ attribute = replace.gsub(/[{}]/, '')
49
+ @output = text.gsub!(/#{replace}/, self.send(attribute))
50
+ end
51
+ File.open(@file, "w") {|file| file.puts @output}
60
52
 
61
- private
62
- def generate_file_name
63
- unless @dir.nil?
64
- unless Dir.exists?(Dir.pwd + '/' + @dir)
65
- Dir.mkdir(Dir.pwd + '/' + @dir)
66
- end
67
- Dir.pwd + "/#{@dir}/#{@name}.php"
68
- else
69
- Dir.pwd + "/#{@name}.php"
70
- end
71
- end
72
- end
53
+ after_generate
54
+ end
55
+
56
+ def after_generate
57
+ if self.class.get_after_generate
58
+ self.class.get_after_generate.each do |callback|
59
+ self.send(callback)
60
+ end
61
+ end
62
+ end
63
+
64
+ def destroy
65
+ if File.exists?(@file)
66
+ File.delete(@file)
67
+ else
68
+ raise "No #{self.class} with name #{@name}"
69
+ end
70
+ end
71
+
72
+ private
73
+
74
+ def format_name(string)
75
+ string.split(' ').join('_').downcase
76
+ end
77
+
78
+ def generate_file_name
79
+ unless @dir.nil?
80
+ unless Dir.exists?(Dir.pwd + '/' + @dir)
81
+ Dir.mkdir(Dir.pwd + '/' + @dir)
82
+ end
83
+ Dir.pwd + "/#{@dir}/#{@name}.php"
84
+ else
85
+ Dir.pwd + "/#{@name}.php"
86
+ end
87
+ end
88
+ end
@@ -1,49 +1,49 @@
1
1
  class PostType < Generable::Base
2
- attr_reader :name_capitalize, :capability, :supports
3
-
4
- DEFAULT_SUPPORT = 'title,editor,excerpt,thumbnail'
5
- DEFAULT_CAPABILITY = 'post'
6
-
7
- template 'post_type.php'
8
- dir 'post-types'
9
- replacements %w(name_capitalize capability supports)
10
-
11
- after_generate :install_aina_framework?, :include_post_type
12
-
13
- def set_custom_vars
14
- @name_capitalize = self.name.capitalize
15
- if @options
16
- @supports = get_supports
17
- @capability = get_capability
18
- end
19
- end
20
-
21
- def get_supports
22
- s = @options[:s] ? @options[:s] : DEFAULT_SUPPORT
23
- s = s.split(',')
24
-
25
- supports = Array.new
26
- s.each do |item|
27
- supports << "'#{item}'"
28
- end
29
- supports.join(',')
30
- end
31
-
32
- def get_capability
33
- @options[:c] ? @options[:c] : DEFAULT_CAPABILITY
34
- end
35
-
36
- protected
37
- def install_aina_framework?
38
- if @options and @options[:i]
39
- Aina.install
40
- end
41
- end
42
-
43
- def include_post_type
44
- unless functions_php_exists?
45
- create_empty_functions_php
46
- end
47
- File.open(functions_php, "a+") {|file| file.puts "\n/* Include #{self.name} */\nrequire_once '#{dir}/#{self.name}.php';\n"}
48
- end
49
- end
2
+ attr_reader :name_capitalize, :capability, :supports
3
+
4
+ DEFAULT_SUPPORT = 'title,editor,excerpt,thumbnail'
5
+ DEFAULT_CAPABILITY = 'post'
6
+
7
+ template 'post_type.php'
8
+ dir 'post-types'
9
+ replacements %w(name_capitalize capability supports)
10
+
11
+ after_generate :install_aina_framework?, :include_post_type
12
+
13
+ def set_custom_vars
14
+ @name_capitalize = display_name
15
+ if @options
16
+ @supports = get_supports
17
+ @capability = get_capability
18
+ end
19
+ end
20
+
21
+ def get_supports
22
+ s = @options[:s] ? @options[:s] : DEFAULT_SUPPORT
23
+ s = s.split(',')
24
+
25
+ supports = Array.new
26
+ s.each do |item|
27
+ supports << "'#{item}'"
28
+ end
29
+ supports.join(',')
30
+ end
31
+
32
+ def get_capability
33
+ @options[:c] ? @options[:c] : DEFAULT_CAPABILITY
34
+ end
35
+
36
+ protected
37
+ def install_aina_framework?
38
+ if @options and @options[:i]
39
+ Aina.install
40
+ end
41
+ end
42
+
43
+ def include_post_type
44
+ unless functions_php_exists?
45
+ create_empty_functions_php
46
+ end
47
+ File.open(functions_php, "a+") {|file| file.puts "\n/* Include #{self.name} */\nrequire_once '#{dir}/#{self.name}.php';\n"}
48
+ end
49
+ end
data/lib/aina/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Aina
2
- VERSION = '0.3.0'
2
+ VERSION = '0.3.1'
3
3
  end
metadata CHANGED
@@ -1,55 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aina
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carles Jove i Buxeda
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-26 00:00:00.000000000 Z
11
+ date: 2015-02-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rdoc
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: aruba
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
@@ -75,47 +75,47 @@ extra_rdoc_files:
75
75
  - README.rdoc
76
76
  - aina.rdoc
77
77
  files:
78
+ - README.rdoc
79
+ - aina.rdoc
78
80
  - bin/aina
81
+ - lib/aina.rb
79
82
  - lib/aina/addable.rb
80
83
  - lib/aina/generable.rb
84
+ - lib/aina/generable/base.rb
85
+ - lib/aina/generable/types/post_type.rb
81
86
  - lib/aina/globals.rb
82
87
  - lib/aina/support.rb
83
88
  - lib/aina/version.rb
84
- - lib/aina/generable/base.rb
85
- - lib/aina/generable/types/post_type.rb
86
89
  - templates/add.php
87
90
  - templates/aina_framework.php
88
91
  - templates/post_type.php
89
- - lib/aina.rb
90
- - README.rdoc
91
- - aina.rdoc
92
92
  homepage: http://joanielena.cat
93
93
  licenses: []
94
94
  metadata: {}
95
95
  post_install_message:
96
96
  rdoc_options:
97
- - --title
97
+ - "--title"
98
98
  - aina
99
- - --main
99
+ - "--main"
100
100
  - README.rdoc
101
- - -ri
101
+ - "-ri"
102
102
  require_paths:
103
103
  - lib
104
104
  - lib
105
105
  - templates
106
106
  required_ruby_version: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - '>='
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  required_rubygems_version: !ruby/object:Gem::Requirement
112
112
  requirements:
113
- - - '>='
113
+ - - ">="
114
114
  - !ruby/object:Gem::Version
115
115
  version: '0'
116
116
  requirements: []
117
117
  rubyforge_project:
118
- rubygems_version: 2.0.3
118
+ rubygems_version: 2.2.2
119
119
  signing_key:
120
120
  specification_version: 4
121
121
  summary: Code generation for WordPress