scms 1.8.8 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +22 -0
  4. data/Rakefile +1 -0
  5. data/assets/blank-template/{config.yml → _config.yml} +6 -6
  6. data/assets/blank-template/{s3config.template.yml → _s3config.template.yml} +0 -0
  7. data/assets/blank-template/{templates → _templates}/menu.xml +0 -0
  8. data/assets/blank-template/{templates → _templates}/skin.erb.html +1 -1
  9. data/assets/blank-template/{views → _views}/about-intro.html +0 -0
  10. data/assets/blank-template/{views → _views}/about-main.html +0 -0
  11. data/assets/blank-template/{views → _views}/home-intro.html +0 -0
  12. data/assets/blank-template/{views → _views}/home-main.html +0 -0
  13. data/assets/{blank-app-template/public → blank-template}/images/glyphicons-halflings-white.png +0 -0
  14. data/assets/{blank-app-template/public → blank-template}/images/glyphicons-halflings.png +0 -0
  15. data/assets/{blank-app-template/public → blank-template}/robots.txt +0 -0
  16. data/assets/blank-template/{public/scripts → scripts}/air-monkey-hook.js +0 -0
  17. data/assets/{blank-app-template/public/scripts/libs → blank-template/scripts}/bootstrap.js +0 -0
  18. data/assets/{blank-app-template/public/scripts/libs → blank-template/scripts}/jquery-1.8.2.min.js +0 -0
  19. data/assets/blank-template/{public/scripts → scripts}/script.js +0 -0
  20. data/assets/{blank-app-template/public → blank-template}/stylesheets/bootstrap-responsive.css +0 -0
  21. data/assets/{blank-app-template/public → blank-template}/stylesheets/bootstrap.css +0 -0
  22. data/assets/{blank-app-template/public → blank-template}/stylesheets/style.css +0 -0
  23. data/bin/scms +9 -43
  24. data/build commands.txt +3 -2
  25. data/lib/scms.rb +87 -66
  26. data/lib/scms/s3deploy.rb +23 -41
  27. data/lib/scms/{scms_utils.rb → scms-utils.rb} +5 -20
  28. data/lib/scms/version.rb +2 -2
  29. data/scms.gemspec +28 -21
  30. metadata +58 -63
  31. data/assets/blank-app-template/application.xml +0 -57
  32. data/assets/blank-app-template/cert.p12 +0 -0
  33. data/assets/blank-app-template/config.yml +0 -32
  34. data/assets/blank-app-template/debug.cmd +0 -6
  35. data/assets/blank-app-template/package.cmd +0 -16
  36. data/assets/blank-app-template/public/ico/favicon.ico +0 -0
  37. data/assets/blank-app-template/public/ico/logo-128.png +0 -0
  38. data/assets/blank-app-template/public/ico/logo-16.png +0 -0
  39. data/assets/blank-app-template/public/ico/logo-32.png +0 -0
  40. data/assets/blank-app-template/public/ico/logo-48.png +0 -0
  41. data/assets/blank-app-template/public/scripts/air/AIRAliases.js +0 -240
  42. data/assets/blank-app-template/public/scripts/air/AIRIntrospector.js +0 -1949
  43. data/assets/blank-app-template/public/scripts/air/AIRMenuBuilder.js +0 -1322
  44. data/assets/blank-app-template/public/scripts/air/applicationupdater.swf +0 -0
  45. data/assets/blank-app-template/public/scripts/air/applicationupdater_ui.swf +0 -0
  46. data/assets/blank-app-template/public/scripts/air/servicemonitor.swf +0 -0
  47. data/assets/blank-app-template/public/scripts/libs/jquery.fn.custom.js +0 -67
  48. data/assets/blank-app-template/public/scripts/libs/knockout-2.1.0-min.js +0 -86
  49. data/assets/blank-app-template/public/scripts/presenters/dashboard-presenter.js +0 -3
  50. data/assets/blank-app-template/public/scripts/presenters/global-presenter.js +0 -8
  51. data/assets/blank-app-template/public/scripts/shared/data-persistance.js +0 -22
  52. data/assets/blank-app-template/public/scripts/shared/utils.js +0 -107
  53. data/assets/blank-app-template/s3config.template.yml +0 -9
  54. data/assets/blank-app-template/templates/menu.xml +0 -5
  55. data/assets/blank-app-template/templates/skin.erb.html +0 -84
  56. data/assets/blank-app-template/tools/msxsl.exe +0 -0
  57. data/assets/blank-app-template/tools/update-descriptor.xsl +0 -18
  58. data/assets/blank-app-template/tools/version.xsl +0 -10
  59. data/assets/blank-app-template/views/about.html +0 -15
  60. data/assets/blank-app-template/views/dashboard.html +0 -7
  61. data/assets/blank-template/public/images/glyphicons-halflings-white.png +0 -0
  62. data/assets/blank-template/public/images/glyphicons-halflings.png +0 -0
  63. data/assets/blank-template/public/robots.txt +0 -4
  64. data/assets/blank-template/public/scripts/bootstrap.js +0 -2027
  65. data/assets/blank-template/public/scripts/jquery-1.8.2.min.js +0 -2
  66. data/assets/blank-template/public/stylesheets/bootstrap-responsive.css +0 -1058
  67. data/assets/blank-template/public/stylesheets/bootstrap.css +0 -5774
  68. data/assets/blank-template/public/stylesheets/style.css +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 241573260a9d95993301a614042d73ec8c8fc562
4
- data.tar.gz: 234efa2167f1b9356fe2c2004bc75993874f517d
3
+ metadata.gz: 949a83b503e813115cd68ca5706861040b203b2d
4
+ data.tar.gz: 1788aa5ae7872d4982339907414c44ebc6f02a44
5
5
  SHA512:
6
- metadata.gz: 8ed2e74ad0aef5def980af64120838015c7123e92bfcfb10bed95977e4a43151399948dd7c5da3a0222cb1802cead102519caca9b104c0d7380e03b6254317e2
7
- data.tar.gz: e46a620c21c8733ee1e33c8e70635096dcf364299bd192e4966d65b9188ee355b5eec0efc8e0f0241d58f2bfe7dfd463de7e029b93f40b273f8bdc341bc5a0ed
6
+ metadata.gz: ae97e05a269a910e5a74894a3b92a62ad4119134b8f72eb07dfefa98cc7b74559d904aa326b07f8a467db2fa618a15dfabb4dc88a44ca4607230d6773ae5794e
7
+ data.tar.gz: 3ff7747ef6ce525e1f33d4d09012eaae42db529b20550f1246b9d7cff0299db16be68045108d07baec92727e46ade1f4ace6a89dd8bd906536e05b482d13352a
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in Scms.gemspec
4
+ gemspec
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2013 Courtenay Probert
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
@@ -1,16 +1,16 @@
1
- template: templates/skin.erb.html
1
+ template: _templates/skin.erb.html
2
2
 
3
3
  pages:
4
4
  - index:
5
5
  generate: index.html
6
6
  views :
7
- intro: views/home-intro.html
8
- main: views/home-main.html
7
+ intro: _views/home-intro.html
8
+ main: _views/home-main.html
9
9
  - about:
10
10
  generate: about.html
11
11
  views :
12
- intro: views/about-intro.html
13
- main: views/about-main.html
12
+ intro: _views/about-intro.html
13
+ main: _views/about-main.html
14
14
 
15
15
  scripts:
16
16
  - script:
@@ -27,4 +27,4 @@ stylesheets:
27
27
  - stylesheets/style.css
28
28
 
29
29
  #options:
30
- # build_dir: <%= ENV['TEMP'] %>\my-scms-website
30
+ # build_dir: <%= ENV['TEMP'] %>\my-Scms-website
@@ -47,7 +47,7 @@
47
47
  end
48
48
 
49
49
  require 'nokogiri'
50
- xml_doc = Nokogiri::XML(File.read(File.join(data.sitedir, "templates", "menu.xml")))
50
+ xml_doc = Nokogiri::XML(File.read(File.join(data.sitedir, "_templates", "menu.xml")))
51
51
  xml_doc.xpath('/menu/page').each do |link|
52
52
  %>
53
53
  <li><a href='<%= link.attr("href") %>' class='<%=isActive(link.attr("href"))%> <%= link.attr("class") %>'>
data/bin/scms CHANGED
@@ -9,13 +9,13 @@
9
9
 
10
10
  require 'optparse'
11
11
  require 'fileutils'
12
- require 'scms'
12
+ require 'Scms'
13
13
 
14
14
  options = {}
15
15
  optparse = OptionParser.new do|opts|
16
16
  # Set a banner, displayed at the top
17
17
  # of the help screen.
18
- opts.banner = "Usage: scms [options]"
18
+ opts.banner = "Usage: Scms [options]"
19
19
 
20
20
  # Define the options, and what they do
21
21
  opts.on('-w', '--website WEBSITE', "Website directory (full path)") do |w|
@@ -54,26 +54,15 @@ optparse = OptionParser.new do|opts|
54
54
  end
55
55
  optparse.parse!
56
56
 
57
- $website = Dir.pwd
58
- unless options[:website].nil?
59
- $website = options[:website]
60
- end
61
- puts "Compiling #{$website}"
62
-
63
- ##Set globals
57
+ #Set globals
58
+ $website = (options[:website].nil?) ? Dir.pwd : options[:website]
64
59
  $html = (ENV["SCMS_HTML_OUT"] or "false")
65
-
66
60
  $stdout.sync = true
67
61
  root_folder = File.expand_path("../", File.dirname(__FILE__))
68
- @pub = File.join("#{$website}/-site")
69
- unless options[:pub].nil?
70
- @pub = options[:pub]
71
- end
72
-
73
62
  Folders = {
74
63
  :root => root_folder,
75
64
  :website => File.join($website),
76
- :pub => (ENV["SCMS_PUBLISH_FOLDER"] or @pub),
65
+ :pub => (ENV["SCMS_PUBLISH_FOLDER"] or options[:pub]),
77
66
  :assets => (ENV["SCMS_STATICCMS_FOLDER"] or File.join(root_folder, "assets")),
78
67
  :config => (ENV["SCMS_CONFIG_FOLDER"] or File.join($website))
79
68
  }
@@ -92,37 +81,14 @@ if options[:action] == "create"
92
81
  exit
93
82
  end
94
83
 
95
- if options[:action] == "createapp"
96
- if Dir.exists? Folders[:website]
97
- throw "App already exists!!!"
98
- else
99
- puts "Making Air app: #{Folders[:website]}"
100
- FileUtils.mkdir_p Folders[:website]
101
- Dir.chdir(File.join(Folders[:assets], "blank-app-template")) do
102
- files = Dir.glob('*')
103
- FileUtils.cp_r files, Folders[:website]
104
- end
105
- end
106
- exit
107
- end
108
-
109
- raise "No website in folder #{Folders[:website]}" if !File::directory?(Folders[:website])
110
-
111
84
  #puts "System root folder = #{Folders[:root]}"
112
85
  #puts "Website folder = #{Folders[:website]}"
113
86
  #puts "Pub dir = #{Folders[:pub]}"
114
87
  #puts "Config dir = #{Folders[:config]}"
115
88
  #puts "Mode = #{options[:mode]}"
116
89
 
117
- deployDir = StaticCMS.build(Folders[:pub], Folders[:config], options[:mode])
118
-
119
- if options[:action] == "crunch"
120
- StaticCMS.crunch(deployDir)
121
- end
90
+ raise "No website in folder #{Folders[:website]}" if !File::directory?(Folders[:website])
91
+ Scms.Upgrade()
92
+ deployDir = Scms.build(Folders[:pub], Folders[:config], options[:mode])
122
93
  #puts "deployDir = #{deployDir}"
123
- if options[:action] == "deploy"
124
- StaticCMS.crunch(deployDir)
125
- StaticCMS.deploy(deployDir, Folders[:config])
126
- backupdir = File.join(Folders[:website], "private")
127
- S3Deploy.backup(backupdir, Folders[:config]) if File.directory? backupdir
128
- end
94
+ Scms.deploy(deployDir, Folders[:config]) if options[:action] == "deploy"
data/build commands.txt CHANGED
@@ -1,2 +1,3 @@
1
- gem build scms.gemspec
2
- gem push scms-1.7.9.gem
1
+ rake install
2
+ gem build Scms.gemspec
3
+ gem push Scms-1.7.9.gem
data/lib/scms.rb CHANGED
@@ -1,6 +1,7 @@
1
- module StaticCMS
2
- VERSION = '1.1.0'
3
- require 'scms/scms_utils.rb'
1
+ require "scms/version"
2
+
3
+ module Scms
4
+ require 'scms/scms-utils.rb'
4
5
  require 'scms/s3deploy.rb'
5
6
 
6
7
  require 'erb'
@@ -8,40 +9,51 @@ module StaticCMS
8
9
  require 'yaml'
9
10
  require 'sass'
10
11
  require 'packr'
12
+ require 'maruku'
11
13
 
12
14
  include YAML
13
15
 
14
- def StaticCMS.build(pub, config, mode)
15
- @pub = pub
16
- @cleanpub = true
16
+ def Scms.build(pub, config, mode)
17
+ @pub = $website
18
+ @cleanpub = false
19
+ if pub != nil
20
+ @pub = pub
21
+ @cleanpub = true
22
+ end
23
+
17
24
  @configdir = config
18
25
  @mode = mode
19
- @webroot = "public"
20
- @source = File.join($website, @webroot)
26
+ #ScmsUtils.log("Mode: #{mode}")
21
27
 
22
- ScmsUtils.log("_Mode: #{mode}_")
23
-
24
- StaticCMS.sassall(@source)
28
+ @source = File.join($website)
29
+ # Support for legacy publick folders
30
+ if (Dir.exists? File.join($website, "public"))
31
+ @source = File.join($website, "public")
32
+ @pub = File.join($website, "_site") if pub == nil
33
+ end
25
34
 
26
- yamlpath=File.join(@configdir, "config.yml")
27
- ScmsUtils.log("**[Getting Config](#{ScmsUtils.uriEncode("file:///#{yamlpath}")})**")
28
- $settings = StaticCMS.getsettings(yamlpath)
35
+ ScmsUtils.log("Source #{@source}")
36
+ Scms.sassall(@source)
37
+
38
+ yamlpath=File.join(@configdir, "_config.yml")
39
+ ScmsUtils.log("Loading Config: #{ScmsUtils.uriEncode("file:///#{yamlpath}")}")
40
+ $settings = Scms.getsettings(yamlpath)
29
41
  if $settings
30
42
  if $settings["options"] != nil
43
+ # Don't overwrite environment settings
31
44
  if ENV["SCMS_PUBLISH_FOLDER"] == nil && $settings["options"]["build_dir"] != nil
32
- ScmsUtils.log("_Setting pub dir from config.yml_")
45
+ ScmsUtils.log("_Getting pub dir from _config.yml_")
33
46
  @pub = $settings["options"]["build_dir"]
34
47
  end
35
- if $settings["options"]["clean_build_dir"] == false
36
- @cleanpub = false
48
+ if $settings["options"]["clean_build_dir"] == true
49
+ ScmsUtils.log("Cleaning build dir")
50
+ @cleanpub = true
37
51
  end
38
52
  end
39
53
 
40
54
  if @cleanpub
41
- StaticCMS.cleanpubdir(@pub)
55
+ Scms.cleanpubdir(@pub)
42
56
  @cleanpub = false
43
- else
44
- ScmsUtils.log("Skipping cleaning \n#{@pub}")
45
57
  end
46
58
 
47
59
  #Bootstrap here
@@ -60,21 +72,18 @@ module StaticCMS
60
72
  end
61
73
 
62
74
  #Bundle resources
63
- scripts = StaticCMS.bundlescripts($settings["scripts"])
64
- stylesheets = StaticCMS.bundlestylesheets($settings["stylesheets"])
75
+ scripts = Scms.bundlescripts($settings["scripts"])
76
+ stylesheets = Scms.bundlestylesheets($settings["stylesheets"])
65
77
  #Generate pages
66
- StaticCMS.parsetemplates(scripts, stylesheets)
78
+ Scms.parsepages(scripts, stylesheets)
67
79
  else
68
80
  ScmsUtils.errLog("Config is empty")
69
81
  end
70
82
 
71
- if File.exists?(@source)
72
- ScmsUtils.log("_Merging 'public' folder_")
73
-
74
- if @cleanpub
75
- StaticCMS.cleanpubdir(@pub)
76
- end
83
+ if @pub != $website
84
+ ScmsUtils.log("Merging 'public' folder")
77
85
 
86
+ Scms.cleanpubdir(@pub) if @cleanpub
78
87
  FileUtils.mkdir @pub unless Dir.exists? @pub
79
88
  Dir.chdir(@source) do
80
89
  #files = Dir.glob('*')
@@ -86,21 +95,17 @@ module StaticCMS
86
95
  File.file?(oldfile) ? FileUtils.copy(oldfile, newfile) : FileUtils.mkdir(newfile) unless File.exist? newfile
87
96
  end
88
97
  end
89
- else
90
- ScmsUtils.log("**No 'public' folder in #{@source} - skiping merge**")
91
98
  end
92
99
 
93
- ScmsUtils.successLog("**Compiled :)**")
94
- ScmsUtils.log("[_#{@pub}_](#{ScmsUtils.uriEncode("file:///#{@pub}")})")
95
-
100
+ ScmsUtils.log(ScmsUtils.uriEncode("file:///#{@pub}"))
96
101
  return @pub
97
102
  end
98
103
 
99
- def StaticCMS.parsetemplates(scripts, stylesheets)
104
+ def Scms.parsepages(scripts, stylesheets)
100
105
  # build views from templates
101
106
  @template = $settings["template"]
102
107
  if $settings["pages"] != nil
103
- ScmsUtils.log("**Compiling Pages:**")
108
+ ScmsUtils.log("Compiling Pages:")
104
109
  $settings["pages"].each do |page|
105
110
  if page != nil
106
111
  page.each do |option|
@@ -128,7 +133,7 @@ module StaticCMS
128
133
  end
129
134
  end
130
135
 
131
- hasHandler = nil
136
+ hasHandler = "no"
132
137
  if pageconfig["handler"] != nil
133
138
  handlerpath = File.join($website, pageconfig["handler"])
134
139
  if File.exists?(handlerpath)
@@ -158,13 +163,26 @@ module StaticCMS
158
163
  ScmsUtils.log("_Rendering with handler_")
159
164
  viewSnippet = Handler.render(viewpath)
160
165
  else
161
- viewSnippet = File.read(viewpath)
166
+ snnipetCode = File.read(viewpath)
167
+ case File.extname(view[1])
168
+ when ".md"
169
+ begin
170
+ doc = Maruku.new(snnipetCode)
171
+ viewSnippet = doc.to_html
172
+ rescue Exception => e
173
+ viewSnippet = snnipetCode
174
+ puts e.message
175
+ puts e.backtrace.inspect
176
+ end
177
+ else
178
+ viewSnippet = snnipetCode
179
+ end
162
180
  end
163
181
 
164
182
  if @mode == "cms"
165
- views[view[0]] = "<div class='cms' data-view='#{view[1]}' data-page='#{page}'>#{StaticCMS.parsetemplate(viewSnippet, model)}</div>"
183
+ views[view[0]] = "<div class='cms' data-view='#{view[1]}' data-page='#{page}'>#{Scms.parsetemplate(viewSnippet, model)}</div>"
166
184
  else
167
- views[view[0]] = StaticCMS.parsetemplate(viewSnippet, model)
185
+ views[view[0]] = Scms.parsetemplate(viewSnippet, model)
168
186
  end
169
187
  else
170
188
  ScmsUtils.writelog(@pub, "Empty file: #{viewpath}")
@@ -198,13 +216,11 @@ module StaticCMS
198
216
  if File.exists?(erb)
199
217
  pubsubdir = File.dirname(out)
200
218
  Dir.mkdir(pubsubdir, 755) unless File::directory?(pubsubdir)
201
- html = StaticCMS.parsetemplate(File.read(erb), hash)
219
+ html = Scms.parsetemplate(File.read(erb), hash)
202
220
  File.open(out, 'w') {|f| f.write(html) }
203
221
  else
204
222
  ScmsUtils.errLog("Template doesn't exist: #{erb}")
205
223
  end
206
-
207
-
208
224
  end
209
225
  end
210
226
  #ScmsUtils.log( out )
@@ -212,10 +228,10 @@ module StaticCMS
212
228
  end
213
229
  end
214
230
 
215
- def StaticCMS.bundlescripts(scriptsConfig)
231
+ def Scms.bundlescripts(scriptsConfig)
216
232
  scripts = Hash.new
217
233
  if scriptsConfig != nil
218
- ScmsUtils.log("**Bundeling Scripts:**")
234
+ ScmsUtils.log("Bundeling Scripts:")
219
235
  scriptsConfig.each do |script|
220
236
  #ScmsUtils.log( "script (#{script.class}) = #{script}" )
221
237
  script.each do |option|
@@ -228,7 +244,7 @@ module StaticCMS
228
244
  scriptname = "#{name}-v#{scriptversion}.js"
229
245
  scriptsdir = File.join(@pub, "scripts")
230
246
 
231
- puts scriptsdir
247
+ #puts scriptsdir
232
248
  FileUtils.mkdir_p(scriptsdir) unless File::directory?(scriptsdir)
233
249
  #Dir.mkdir_p(scriptsdir, 755 ) if !File::directory?(scriptsdir)
234
250
  out = File.join(scriptsdir, scriptname)
@@ -251,16 +267,17 @@ module StaticCMS
251
267
 
252
268
  scripts[name] = "scripts/#{scriptname}"
253
269
  File.open(out, 'w') {|f| f.write(content) }
270
+ Scms.packr(out) unless /(-min)|(\.min)/.match(name)
254
271
  end
255
272
  end
256
273
  end
257
274
  return scripts
258
275
  end
259
276
 
260
- def StaticCMS.bundlestylesheets(styleConfig)
277
+ def Scms.bundlestylesheets(styleConfig)
261
278
  stylesheets = Hash.new
262
279
  if styleConfig != nil
263
- ScmsUtils.log("**Bundeling Stylesheets:**")
280
+ ScmsUtils.log("Bundeling Stylesheets:")
264
281
  styleConfig.each do |stylesheet|
265
282
  #ScmsUtils.log( "stylesheet (#{stylesheet.class}) = #{stylesheet}" )
266
283
  stylesheet.each do |option|
@@ -299,7 +316,7 @@ module StaticCMS
299
316
  return stylesheets
300
317
  end
301
318
 
302
- def StaticCMS.parsetemplate(template, hash)
319
+ def Scms.parsetemplate(template, hash)
303
320
  data = OpenStruct.new(hash)
304
321
  result = ""
305
322
 
@@ -314,7 +331,7 @@ module StaticCMS
314
331
  return result
315
332
  end
316
333
 
317
- def StaticCMS.getsettings(yamlpath)
334
+ def Scms.getsettings(yamlpath)
318
335
  config = nil
319
336
 
320
337
  if File.exist?(yamlpath)
@@ -325,7 +342,7 @@ module StaticCMS
325
342
  config = YAML.load(myconfig)
326
343
  #config = YAML.load_file(yamlpath)
327
344
  rescue Exception => e
328
- ScmsUtils.errLog("Error Loading config.yml (check there are no tabs in the file)")
345
+ ScmsUtils.errLog("Error Loading _config.yml (check there are no tabs in the file)")
329
346
  ScmsUtils.log( "_[Verify your config](http://yaml-online-parser.appspot.com/)_")
330
347
  ScmsUtils.errLog( e.message )
331
348
  ScmsUtils.errLog( e.backtrace.inspect )
@@ -337,7 +354,7 @@ module StaticCMS
337
354
  return config
338
355
  end
339
356
 
340
- def StaticCMS.cleanpubdir(pub)
357
+ def Scms.cleanpubdir(pub)
341
358
  ScmsUtils.log("_Cleaning pub folder #{pub}_")
342
359
  FileUtils.rm_rf pub
343
360
  #FileUtils.remove_dir(pub, force = true)
@@ -346,32 +363,32 @@ module StaticCMS
346
363
  FileUtils.chmod 0755, pub
347
364
  end
348
365
 
349
- def StaticCMS.crunch(crunchDir)
366
+ def Scms.crunch(crunchDir)
350
367
  ScmsUtils.log( "Starting crunching CSS and JavaScript in:\n#{crunchDir}\n\n" )
351
- #StaticCMS.sassall(crunchDir)
368
+ #Scms.sassall(crunchDir)
352
369
  Dir.chdir(crunchDir) do
353
370
  Dir.glob("**/*.js").reject{|f| /-min/.match(f) != nil || /\.min/.match(f) != nil || /\.pack/.match(f) != nil }.each do |asset|
354
- StaticCMS.packr(asset)
371
+ Scms.packr(asset)
355
372
  end
356
373
  #Dir.glob("**/*.{css, js}").each do |asset|
357
374
  # #fullFileName = File.basename(asset)
358
375
  # #ScmsUtils.log( "Crunching #{fullFileName}" )
359
376
  # ext = File.extname(asset)
360
- # StaticCMS.yuicompress(asset, ext)
377
+ # Scms.yuicompress(asset, ext)
361
378
  #end
362
379
  end
363
380
  end
364
381
 
365
- def StaticCMS.sassall(crunchDir)
366
- ScmsUtils.log( "**Minimising Sass Files (.scss) **" )
382
+ def Scms.sassall(crunchDir)
383
+ ScmsUtils.log( "Minimising Sass Files (.scss)" )
367
384
  Dir.chdir(crunchDir) do
368
385
  Dir.glob("**/*.{scss}").each do |asset|
369
- StaticCMS.sass(asset)
386
+ Scms.sass(asset)
370
387
  end
371
388
  end
372
389
  end
373
390
 
374
- def StaticCMS.sass(asset)
391
+ def Scms.sass(asset)
375
392
  if File.exists?(asset)
376
393
  begin
377
394
  template = File.read(asset)
@@ -391,13 +408,13 @@ module StaticCMS
391
408
  end
392
409
  end
393
410
 
394
- def StaticCMS.packr(asset)
411
+ def Scms.packr(asset)
395
412
  if File.exists?(asset)
396
413
  begin
397
414
  code = File.read(asset)
398
415
  compressed = Packr.pack(code)
399
416
  File.open(asset, 'w') { |f| f.write(compressed) }
400
- ScmsUtils.log( "_Packed #{File.basename(asset)}_" )
417
+ ScmsUtils.log( "Minified #{File.basename(asset)}" )
401
418
  rescue Exception => e
402
419
  ScmsUtils.errLog( "Error processing: #{asset}" )
403
420
  ScmsUtils.errLog( e.message )
@@ -405,7 +422,7 @@ module StaticCMS
405
422
  end
406
423
  end
407
424
 
408
- def StaticCMS.yuicompress(asset, ext)
425
+ def Scms.yuicompress(asset, ext)
409
426
  if File.exists?(asset)
410
427
  #ScmsUtils.log( " Encoding: #{asset.encoding}" )
411
428
  enc = "--charset utf-8"
@@ -423,13 +440,17 @@ module StaticCMS
423
440
  end
424
441
  end
425
442
 
426
- def StaticCMS.deploy(pub, config)
427
- yamlpath=File.join(config, "s3config.yml")
443
+ def Scms.deploy(pub, config)
444
+ yamlpath=File.join(config, "_s3config.yml")
428
445
  if File.exists?(yamlpath)
429
446
  S3Deploy.sync(pub, config)
430
447
  else
431
448
  raise "The following file doesn't exist #{yamlpath}"
432
449
  end
433
-
450
+ end
451
+
452
+ def Scms.Upgrade()
453
+ File.rename("config.yml", "_config.yml") if File.exists? File.join($website, "config.yml")
454
+ File.rename("s3config.yml", "_s3config.yml") if File.exists? File.join($website, "s3config.yml")
434
455
  end
435
456
  end