ymdp 0.1.4 → 0.1.6

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.
Files changed (94) hide show
  1. data/Rakefile +1 -0
  2. data/VERSION +1 -1
  3. data/lib/ymdp/application.rb +22 -0
  4. data/lib/ymdp/application_view.rb +312 -0
  5. data/lib/ymdp/base.rb +119 -0
  6. data/lib/ymdp/commands/build.rb +0 -6
  7. data/lib/ymdp/compiler/base.rb +12 -10
  8. data/lib/ymdp/compiler/domains.rb +8 -34
  9. data/lib/ymdp/compiler/template.rb +58 -85
  10. data/lib/ymdp/configuration/config.rb +70 -28
  11. data/lib/ymdp/configuration/constants.rb +17 -3
  12. data/lib/ymdp/processor/form_post.rb +5 -1
  13. data/lib/ymdp/support/file.rb +29 -11
  14. data/lib/ymdp/tasks/keys.rake +13 -13
  15. data/lib/ymdp/tasks/ymdp.rake +4 -4
  16. data/spec/application_spec.rb +29 -0
  17. data/spec/application_view_spec.rb +5 -0
  18. data/spec/compiler_spec.rb +3 -3
  19. data/spec/compiler_template_spec.rb +26 -54
  20. data/spec/data/app/views/layouts/application.html.haml +2 -0
  21. data/spec/data/config/config.yml +1 -0
  22. data/spec/data/config/constants.rb +3 -7
  23. data/spec/data/script/destroy +2 -2
  24. data/spec/data/script/langs +1 -3
  25. data/spec/default_settings.rb +42 -0
  26. data/spec/domains_spec.rb +3 -22
  27. data/spec/spec_helper.rb +3 -0
  28. data/spec/stubs.rb +11 -0
  29. data/spec/ymdp_base_spec.rb +125 -0
  30. data/test.rb +46 -0
  31. data/ymdp.gemspec +15 -65
  32. metadata +14 -64
  33. data/lib/new_application/.base +0 -11
  34. data/lib/new_application/Gemfile +0 -13
  35. data/lib/new_application/Rakefile +0 -3
  36. data/lib/new_application/app/.gitignore +0 -1
  37. data/lib/new_application/app/assets/images/lightbox/lightbox_bg.png +0 -0
  38. data/lib/new_application/app/assets/javascripts/OpenMailIntl.js +0 -291
  39. data/lib/new_application/app/assets/javascripts/controls.js +0 -965
  40. data/lib/new_application/app/assets/javascripts/date.js +0 -104
  41. data/lib/new_application/app/assets/javascripts/dragdrop.js +0 -974
  42. data/lib/new_application/app/assets/javascripts/effects.js +0 -1123
  43. data/lib/new_application/app/assets/javascripts/lowpro.js +0 -320
  44. data/lib/new_application/app/assets/javascripts/prototype.js +0 -4874
  45. data/lib/new_application/app/assets/javascripts/scriptaculous.js +0 -68
  46. data/lib/new_application/app/assets/yrb/en-US/application_en-US.pres +0 -7
  47. data/lib/new_application/app/helpers/application_helper.rb +0 -3
  48. data/lib/new_application/app/javascripts/application.js +0 -580
  49. data/lib/new_application/app/javascripts/debug.js +0 -138
  50. data/lib/new_application/app/javascripts/flash.js +0 -96
  51. data/lib/new_application/app/javascripts/header.js +0 -13
  52. data/lib/new_application/app/javascripts/help.js +0 -76
  53. data/lib/new_application/app/javascripts/i18n.js +0 -235
  54. data/lib/new_application/app/javascripts/launcher.js +0 -159
  55. data/lib/new_application/app/javascripts/logger.js +0 -61
  56. data/lib/new_application/app/javascripts/tag_helper.js +0 -178
  57. data/lib/new_application/app/stylesheets/application.css +0 -0
  58. data/lib/new_application/app/stylesheets/ie.css +0 -0
  59. data/lib/new_application/app/stylesheets/ie6.css +0 -0
  60. data/lib/new_application/app/stylesheets/ie7.css +0 -0
  61. data/lib/new_application/app/stylesheets/ie8.css +0 -0
  62. data/lib/new_application/app/stylesheets/lightbox.css +0 -30
  63. data/lib/new_application/app/stylesheets/non_ie.css +0 -0
  64. data/lib/new_application/app/views/layouts/application.html.haml +0 -35
  65. data/lib/new_application/app/views/shared/_error.html.haml +0 -8
  66. data/lib/new_application/app/views/shared/_flash.html.haml +0 -2
  67. data/lib/new_application/app/views/shared/_javascripts.html.haml +0 -22
  68. data/lib/new_application/app/views/shared/_loading.html.haml +0 -13
  69. data/lib/new_application/app/views/shared/_stylesheets.html.haml +0 -23
  70. data/lib/new_application/config/categories.yml +0 -6
  71. data/lib/new_application/config/config.yml.example +0 -30
  72. data/lib/new_application/config/constants.rb +0 -54
  73. data/lib/new_application/config/servers.yml.example +0 -9
  74. data/lib/new_application/lib/init.rb +0 -13
  75. data/lib/new_application/lib/tasks/environment.rake +0 -4
  76. data/lib/new_application/lib/tasks/keys.rake +0 -3
  77. data/lib/new_application/lib/tasks/setup.rake +0 -13
  78. data/lib/new_application/lib/tasks/ymdp.rake +0 -4
  79. data/lib/new_application/script/build +0 -9
  80. data/lib/new_application/script/config +0 -13
  81. data/lib/new_application/script/destroy +0 -18
  82. data/lib/new_application/script/generate +0 -4
  83. data/lib/new_application/script/gitrm +0 -17
  84. data/lib/new_application/script/growl +0 -6
  85. data/lib/new_application/script/images +0 -48
  86. data/lib/new_application/script/jslint.js +0 -5072
  87. data/lib/new_application/script/langs +0 -31
  88. data/lib/new_application/script/translate +0 -5
  89. data/lib/new_application/script/ymdt +0 -1895
  90. data/lib/new_application/script/ymdt.old +0 -1890
  91. data/lib/new_application/script/yuicompressor-2.4.2.jar +0 -0
  92. data/lib/new_application/ymdp +0 -8
  93. data/lib/ymdp/processor/processor.rb +0 -132
  94. data/lib/ymdp/ymdp.rb +0 -208
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- commands = ARGV.join(" ")
4
- if File.exists?("bin/rake")
5
- system "bin/rake #{commands}"
6
- else
7
- system "rake #{commands}"
8
- end
@@ -1,132 +0,0 @@
1
- require 'support/file'
2
- require 'haml'
3
-
4
- module YMDP
5
- module Renderer
6
- class Base
7
- end
8
-
9
- class Haml < Base
10
- def self.scope
11
- YMDP::ViewHelpers
12
- end
13
-
14
- def self.render(filename)
15
- options = {}
16
- ::Haml::Engine.new(filename, options).render(scope)
17
- end
18
- end
19
-
20
- class ERB < Base
21
- def self.scope
22
- YMDP::ViewHelpers.get_binding
23
- end
24
-
25
- def self.render(filename)
26
- ::ERB.new(filename, 0, "%<>").result(scope)
27
- end
28
- end
29
- end
30
-
31
- module Processor
32
- class Base
33
- extend YMDP::Config
34
- extend YMDP::FileSupport
35
-
36
- def self.render(params)
37
- output = []
38
- tags = true
39
- if params[:tags] == false
40
- tags = false
41
- end
42
- if params[:partial]
43
- # params[:partial].to_a.each do |partial|
44
- # output << render_partial(params)
45
- output << Partial.render(params)
46
- # end
47
- end
48
- # if params[:javascript]
49
- # output << "<script type='text/javascript'>" if tags
50
- # output << render_javascripts(params)
51
- # output << "</script>" if tags
52
- # end
53
- # if params[:stylesheet]
54
- # # params[:stylesheet].to_a.each do |stylesheet|
55
- # output << render_stylesheet(params)
56
- # # end
57
- # end
58
- output.join("\n")
59
- end
60
-
61
- def self.render_partial(params)
62
- Partial.render(params)
63
- end
64
-
65
- def self.render_javascripts(params)
66
- JavaScript.render(params)
67
- end
68
-
69
- def self.render_stylesheet(params)
70
- Stylesheet.render(params)
71
- end
72
- end
73
-
74
- class Partial < Base
75
- def self.render(params)
76
- filename = params[:partial]
77
- output = ''
78
- path = nil
79
-
80
- path = find_partial(filename)
81
-
82
- if path
83
- output = process(path)
84
- else
85
- raise "Could not find partial: #{filename}"
86
- end
87
- output
88
- end
89
-
90
- def self.process(path)
91
- output = ""
92
-
93
- File.open(path) do |f|
94
- template = f.read
95
- if path =~ /haml$/
96
- output = YMDP::Processor::Haml.render(template, path)
97
- else
98
- output = YMDP::Processor::ERB.render(template)
99
- end
100
- end
101
-
102
- output
103
- end
104
-
105
- def self.find_partial(partial)
106
- path = nil
107
- ["views", "views/shared"].each do |dir|
108
- basic_path = "#{BASE_PATH}/app/#{dir}/_#{partial}.html"
109
-
110
- ["", ".haml", ".erb"].each do |extension|
111
- if File.exists?(basic_path + extension)
112
- path ||= basic_path + extension
113
- end
114
- end
115
- end
116
- path
117
- end
118
- end
119
-
120
- class JavaScript < Base
121
- def self.render(params)
122
- puts "Rendering partial"
123
- end
124
- end
125
-
126
- class Stylesheet < Base
127
- def self.render(params)
128
- puts "Rendering partial"
129
- end
130
- end
131
- end
132
- end
@@ -1,208 +0,0 @@
1
- require 'processor/compressor'
2
- require 'processor/validator'
3
-
4
- class Application
5
- def self.current_view?(view)
6
- current_view.downcase == view.downcase
7
- end
8
-
9
- def self.current_view
10
- @@current_view
11
- end
12
-
13
- def self.current_view= view
14
- @@current_view = view
15
- end
16
- end
17
-
18
- module YMDP
19
- module Base
20
- # include YMDP::Config
21
- include YMDP::FileSupport
22
- include YMDP::Compressor
23
-
24
- extend self
25
-
26
- def supported_languages
27
- dirs = Dir["#{BASE_PATH}/app/assets/yrb/*"].map do |path|
28
- filename = path.split("/").last
29
-
30
- filename
31
- end
32
-
33
- dirs.unshift(dirs.delete("en-US"))
34
-
35
- raise "Default YRB key en-US not found" unless dirs.include?("en-US")
36
-
37
- dirs
38
- end
39
-
40
- def english_languages
41
- supported_languages.select do |lang|
42
- lang =~ /^en/
43
- end
44
- end
45
-
46
- def javascript_include(filename)
47
- unless filename =~ /^http/
48
- filename = "#{@assets_directory}/javascripts/#{filename}"
49
- end
50
- "<script src='#{filename}' type='text/javascript' charset='utf-8'></script>"
51
- end
52
-
53
- def include_firebug_lite
54
- javascript_include "http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js" if @domain != "my"
55
- end
56
-
57
- def render(params)
58
- output = []
59
- tags = true
60
- if params[:tags] == false
61
- tags = false
62
- end
63
- if params[:partial]
64
- params[:partial].to_a.each do |partial|
65
- output << render_partial(partial)
66
- end
67
- end
68
- if params[:javascript]
69
- output << "<script type='text/javascript'>" if tags
70
- output << render_javascripts(params[:javascript].to_a, params[:filename])
71
- output << "</script>" if tags
72
- end
73
- if params[:stylesheet]
74
- params[:stylesheet].to_a.each do |stylesheet|
75
- output << render_stylesheet(stylesheet, tags)
76
- end
77
- end
78
- output.join("\n")
79
- end
80
-
81
- def render_partial(filename)
82
- output = ''
83
- path = nil
84
-
85
- ["views", "views/shared"].each do |dir|
86
- basic_path = "#{BASE_PATH}/app/#{dir}/_#{filename}.html"
87
-
88
- ["", ".haml", ".erb"].each do |extension|
89
- if File.exists?(basic_path + extension)
90
- path ||= basic_path + extension
91
- end
92
- end
93
- end
94
-
95
- if path
96
-
97
- File.open(path) do |f|
98
- template = f.read
99
- if path =~ /haml$/
100
- output = process_haml(template, path)
101
- else
102
- output = process_template(template)
103
- end
104
- end
105
- else
106
- raise "Could not find partial: #{filename}"
107
- end
108
- output
109
- end
110
-
111
- def render_stylesheet(filename, tags=false)
112
- unless filename =~ /\.css$/
113
- filename = "#{filename}.css"
114
- end
115
- path = "#{BASE_PATH}/app/stylesheets/#{filename}"
116
-
117
- output = ''
118
- if File.exists?(path)
119
- tmp_filename = save_processed_template(path)
120
- if CONFIG.compress_css?
121
- output = YMDP::Compressor::Stylesheet.compress(tmp_filename)
122
- else
123
- File.open(path) do |f|
124
- template = f.read
125
- output = process_template(template)
126
- end
127
- end
128
-
129
- if tags
130
- "<style type='text/css'>\n" + output + "\n</style>"
131
- else
132
- output
133
- end
134
- else
135
- ""
136
- end
137
- end
138
-
139
- def render_javascripts(filenames, combined_filename=nil)
140
- output = []
141
-
142
- # concatenate all javascript files into one long string
143
- #
144
- filenames.each do |filename|
145
- output << render_without_compression(filename, false)
146
- end
147
- output = output.join("\n")
148
-
149
- filenames_str = combined_filename || filenames.join()
150
- tmp_filename = "./tmp/#{filenames_str}.js"
151
-
152
- # use the saved file if it already exists
153
- unless File.exists?(tmp_filename)
154
- save_to_file(output, tmp_filename)
155
- validate_filename = tmp_filename
156
- end
157
-
158
- # return compressed javascript or else don't
159
- output = YMDP::Compressor::JavaScript.compress(tmp_filename) || output
160
-
161
- YMDP::Validator::JavaScript.validate(validate_filename) if validate_filename
162
-
163
- output
164
- end
165
-
166
- def render_without_compression(filename, tags=true)
167
- unless filename =~ /\.js$/
168
- filename = "#{filename}.js"
169
- end
170
- path = "#{YMDP_ROOT}/app/javascripts/#{filename}"
171
-
172
- output = ''
173
-
174
- if File.exists?(path)
175
- File.open(path) do |f|
176
- template = f.read
177
- output = process_template(template)
178
- end
179
-
180
- if tags
181
- "<script type='text/javascript'>\n" + output + "\n</script>"
182
- else
183
- output
184
- end
185
- else
186
- ""
187
- end
188
- end
189
-
190
- # processes the template (with HAML or ERB) and saves it to the tmp folder
191
- #
192
- def save_processed_template(path)
193
- filename = path.split("/").last
194
- tmp_filename = "#{TMP_PATH}/#{filename}"
195
-
196
- unless File.exists?(tmp_filename)
197
- File.open(path) do |f|
198
- template = f.read
199
- output = process_template(template)
200
-
201
- save_to_file(output, tmp_filename)
202
- end
203
- end
204
-
205
- tmp_filename
206
- end
207
- end
208
- end