power-build 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4deaba60aee516b39ec1f141c758e4afeed77dac
4
- data.tar.gz: 71c47bd357385c7186ded93c4f76e21b1844859a
3
+ metadata.gz: 24f12087f935cb4d1c84126aed880d578539d367
4
+ data.tar.gz: fd5e8bec4bd26673386cf6adf9676a8f7d880891
5
5
  SHA512:
6
- metadata.gz: 961f890c061123509f04ec56a8aca9664275082a2e20828dc05b9933cc005abe241a299b291284f96492e41f9b2dc6520f04fb23a8ad09b2836ee1ed99311b60
7
- data.tar.gz: 433c70b5a2708c735f83d8881c0e9586126190093e1760b9de597f97b986bfe42fe962a8fa4ad06c9a537bf6a9f5a51645c9ad690d059c5d6b1721f34008bd00
6
+ metadata.gz: fd49c7a04878622724aa7594823a496e3d8bd8c321ad3dbc1a965bde47acd04fb1f20feb7b6a30803306a1297a4eca5c79bf3e7568baaa05b4620a8d81763556
7
+ data.tar.gz: 993d884a1e6d171f53b76105d70ae6519f8b7cc01cc081d17351de1a6a94e0ba131b9958ce03450bb47f57d29893f23184a0ade07d30b119de14b940fb09cf72
data/README.md CHANGED
@@ -1,8 +1,10 @@
1
1
  # Power Build
2
2
 
3
- Power Build is a photo album builder which generates a site based on the images in a project. It works as a command line application.
3
+ [![Gem Version](https://badge.fury.io/rb/power-build.svg)](http://badge.fury.io/rb/power-build) [![Code Climate](https://codeclimate.com/github/nkj20932/power-build/badges/gpa.svg)](https://codeclimate.com/github/nkj20932/power-build)
4
4
 
5
- #### Visit [Demo Site](http://cstony0917.github.io/warofpic/) for a general understanding.
5
+ Power Build is a photo album builder which generates a site based on the images in a project. It works from command line.
6
+
7
+ #### [Demo Site](https://github.com/nkj20932/image_stack/tree/gh-pages)
6
8
 
7
9
  ## Requirement
8
10
 
@@ -34,7 +36,7 @@ It creates a config file in your project directory. You can adjust the content d
34
36
  $power build
35
37
  ```
36
38
 
37
- You can skip the `build` and just run `power`. This command generates a static site which allows you to host on github pages. Basically it creates a `index.html` and a folder `assets` with other pages in it.
39
+ You can skip the `build` and just run `power`. This command generates a static site which allows you to host on github pages. Basically it creates a `index.html` and a folder `assets` with other stuff in it.
38
40
 
39
41
  ```
40
42
  $power delete
@@ -42,6 +44,12 @@ $power delete
42
44
 
43
45
  Clean all files generated by power-build.
44
46
 
47
+ Further commands and shortcuts will display at:
48
+
49
+ ```
50
+ $power help
51
+ ```
52
+
45
53
  ## Config
46
54
 
47
55
  The config file looks like this:
@@ -76,7 +84,7 @@ My_project_folder
76
84
  |-- image_root_folder
77
85
  ```
78
86
 
79
- If so, after site generation, your folder will look like this:
87
+ If so, your folder will look like this after site generation:
80
88
 
81
89
  ```
82
90
  My_project_folder
@@ -86,21 +94,50 @@ My_project_folder
86
94
  |-- index.html
87
95
  ```
88
96
 
89
- However, in your image folder, the images should be stored by categories like this:
97
+ Everything in your project root folder will be ignored. Files already in your `assets` directory will not be overwritten during build, so any change in `custom.js` or `custom.css` will preserve.
98
+
99
+ ## Image Arrangement
100
+
101
+ The image folder should be stored by categories like this:
90
102
 
91
103
  ```
92
104
  image_root_folder
93
105
  |-- category_1
94
- | |-- image_1
95
- | |-- image_2
96
- | |-- image_3
106
+ | |-- image_1.jpg
107
+ | |-- image_2.png
108
+ | |-- image_3.gif
97
109
  |
98
110
  |-- category_2
99
111
  |-- category_3
112
+ |-- image_1.jpg
113
+ |-- image_2.png
114
+ ```
115
+
116
+ All images will be categorized with their folder name. Images not in a subfolder will be categorized as "Uncategorized". For example:
117
+
118
+ ```
119
+ my_album/
120
+ |-- family/
121
+ | |-- brother.jpg
122
+ | |-- mother.png
123
+ | |-- sister.gif
124
+ |
125
+ |-- my_life/
126
+ |-- my_pet/
127
+ |-- James Bond.jpg
128
+ |-- Samuel Jackson.png
100
129
  ```
101
130
 
102
- Only the structure is followed can the site be generated in the correct format as in the [demo](http://cstony0917.github.io/warofpic/).
131
+ `brother.jpg` will be labelled as "family", while `James Bond.jpg` and `Samuel Jacson.png` will be labelled as "Uncategorized".
132
+
133
+ Only this structure followed can the site be generated in the correct format as in the [demo](https://github.com/nkj20932/image_stack/tree/gh-pages).
134
+
135
+ ## Deployment
136
+
137
+ After generation, push from the branch `gh-pages` to Github and enjoy.
138
+
139
+ #### [GitHub Pages Hosting Instruction](https://pages.github.com/)
103
140
 
104
141
  ## Issues & Contribution
105
142
 
106
- The project follows MIT Licence. Any issue, pull-request, feature-request, or comment is welcome.
143
+ The project follows MIT Licence. Any issue, pull-request, feature-request, or comment is welcomed.
@@ -1,40 +0,0 @@
1
- /*!
2
- * Start Bootstrap - Thumbnail Gallery HTML Template (http://startbootstrap.com)
3
- * Code licensed under the Apache License v2.0.
4
- * For details, see http://www.apache.org/licenses/LICENSE-2.0.
5
- */
6
-
7
- body {
8
- padding-top: 70px; /* Required padding for .navbar-fixed-top. Change if height of navigation changes. */
9
- }
10
-
11
- .thumb {
12
- margin-bottom: 30px;
13
- }
14
-
15
- footer {
16
- margin: 50px 0;
17
- }
18
-
19
- img.img-responsive {
20
- height: 200px;
21
- }
22
-
23
- img.image-responsive.single-image {
24
- max-width: 1140px;
25
- display: block;
26
- margin: 0 auto;
27
- }
28
-
29
- .download, .home {
30
- margin-top: 30px;
31
- }
32
-
33
- .home {
34
- margin-left: 20px;
35
- }
36
-
37
- .copyright {
38
- color: #C2C2C2;
39
- margin-top: -25px;
40
- }
@@ -0,0 +1,59 @@
1
+ /*!
2
+ * Start Bootstrap - Thumbnail Gallery HTML Template (http://startbootstrap.com)
3
+ * Code licensed under the Apache License v2.0.
4
+ * For details, see http://www.apache.org/licenses/LICENSE-2.0.
5
+ */
6
+
7
+ body {
8
+ padding-top: 70px; /* Required padding for .navbar-fixed-top. Change if height of navigation changes. */
9
+ }
10
+
11
+ .thumb {
12
+ margin-bottom: 30px;
13
+ }
14
+
15
+ footer {
16
+ margin: 50px 0;
17
+ }
18
+
19
+ img.img-responsive {
20
+ height: 200px;
21
+ }
22
+
23
+ img.image-responsive.single-image {
24
+ max-width: 1140px;
25
+ display: block;
26
+ margin: 0 auto;
27
+ }
28
+
29
+ .download, .home {
30
+ margin-top: 30px;
31
+ }
32
+
33
+ .home {
34
+ margin-left: 20px;
35
+ }
36
+
37
+ .copyright {
38
+ color: #C2C2C2;
39
+ margin-top: -25px;
40
+ }
41
+
42
+ .btn {
43
+ margin-left: 10px;
44
+ margin-right: 10px;
45
+ }
46
+
47
+ @media all and (max-width: 600px) {
48
+ img.img-responsive {
49
+ height: 100px;
50
+ }
51
+
52
+ h1.page-header {
53
+ font-size: 26px;
54
+ }
55
+
56
+ img.image-responsive.single-image {
57
+ max-width: 100%;
58
+ }
59
+ }
File without changes
@@ -1,8 +1,17 @@
1
1
  <footer>
2
- <div class="row">
3
- <div class="copyright col-lg-12 text-center">
4
- <p><%= i_copyright %> <%= "#{title} " %><%= Time.now.strftime("%Y") %></p>
2
+ <div class="row">
3
+ <% if copyright_display %>
4
+ <div class="copyright col-lg-12 text-center">
5
+ <p><%= i_copyright %> <%= "#{title} " %><%= Time.now.strftime("%Y") %></p>
6
+ </div>
7
+ <% end %>
5
8
  </div>
6
- </div>
9
+ <script src="<%= resource_prefix %>assets/js/jquery.js"></script>
10
+ <script src="<%= resource_prefix %>assets/js/bootstrap.min.js"></script>
11
+ <script src="<%= resource_prefix %>assets/js/theme.js"></script>
12
+ <script src="<%= resource_prefix %>assets/js/custom.js"></script>
13
+ <!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/zclip/1.1.2/jquery.zclip.js"></script> -->
7
14
  </footer>
15
+ <!-- The credit of this design goes to David Miller -->
16
+ <!-- Check more for detail: http://startbootstrap.com/template-overviews/thumbnail-gallery/ -->
8
17
 
@@ -6,5 +6,6 @@
6
6
  <meta name="author" content="">
7
7
  <link href="<%= resource_prefix %>assets/css/bootstrap.min.css" rel="stylesheet">
8
8
  <link href="<%= resource_prefix %>assets/css/custom.css" rel="stylesheet">
9
+ <link href="<%= resource_prefix %>assets/css/theme.css" rel="stylesheet">
9
10
  <title><%= title %></title>
10
11
  </head>
@@ -11,5 +11,9 @@
11
11
  // Website language: either "zh-tw" or "en"
12
12
  "language": "zh-tw",
13
13
 
14
+ // Enabling copyright display, 'false' if you don't wait it
15
+ "Copyright Display": true,
16
+
17
+ // Not enabled yet
14
18
  "Push to GitHub after generation": false
15
19
  }
@@ -11,7 +11,7 @@
11
11
  <% current_category[:images].each do |image| %>
12
12
  <div class="col-lg-3 col-md-4 col-xs-6 thumb">
13
13
  <a class="thumbnail" href="<%= image %>.html">
14
- <img class="img-responsive" src='<%= "#{resource_prefix}#{root_folder}/#{current_category[:tag]}/#{image}" %>' alt="">
14
+ <img class="img-responsive" src='<%= "#{resource_prefix}#{root_folder}#{bridge}/#{image}" %>' alt="">
15
15
  </a>
16
16
  </div>
17
17
  <% end %>
@@ -19,10 +19,5 @@
19
19
  <hr>
20
20
  <%= footer %>
21
21
  </div>
22
- <script src="<%= resource_prefix %>assets/js/jquery.js"></script>
23
- <script src="<%= resource_prefix %>assets/js/bootstrap.min.js"></script>
24
- <script src="<%= resource_prefix %>assets/js/custom.js"></script>
25
22
  </body>
26
- <!-- The credit of this design goes to David Miller -->
27
- <!-- Check more for detail: http://startbootstrap.com/template-overviews/thumbnail-gallery/ -->
28
23
  </html>
@@ -9,10 +9,11 @@
9
9
  <h1 class="page-header"><%= i_header %></h1>
10
10
  </div>
11
11
  <% image_collection.each do |category| %>
12
+ <% bridge = category[:tag] == i_uncategorized ? "" : "/#{category[:tag]}" %>
12
13
  <% category[:images].each do |image| %>
13
14
  <div class="col-lg-3 col-md-4 col-xs-6 thumb">
14
15
  <a class="thumbnail" href="<%= "assets/#{category[:tag]}/#{image}.html" %>">
15
- <img class="img-responsive" src='<%= "#{root_folder}/#{category[:tag]}/#{image}" %>' alt="">
16
+ <img class="img-responsive" src='<%= "#{root_folder}#{bridge}/#{image}" %>' alt="">
16
17
  </a>
17
18
  </div>
18
19
  <% end %>
@@ -21,10 +22,5 @@
21
22
  <hr>
22
23
  <%= footer %>
23
24
  </div>
24
- <script src="assets/js/jquery.js"></script>
25
- <script src="assets/js/bootstrap.min.js"></script>
26
- <script src="assets/js/custom.js"></script>
27
25
  </body>
28
- <!-- The credit of this design goes to David Miller -->
29
- <!-- Check more for detail: http://startbootstrap.com/template-overviews/thumbnail-gallery/ -->
30
26
  </html>
@@ -9,7 +9,7 @@
9
9
  <h1 class="page-header"><a href="../../index.html"><%= i_header %></a> > <a href="index.html"><%= current_category[:tag] %></a> > <%= title %></h1>
10
10
  <img class="image-responsive single-image" src="<%= current_image_source %>" alt="">
11
11
  <div class="text-center">
12
- <a class="btn btn-lg btn-primary download" href="<%= current_image_source %>" download="<%= title %>" title="image"><%= i_download %></a>
12
+ <a class="btn btn-lg btn-primary download" href="<%= current_image_source %>" download="<%= title %>" ><%= i_download %></a>
13
13
  <a class="btn btn-lg btn-default home" href="<%= resource_prefix %>index.html"><%= i_home %></a>
14
14
  </div>
15
15
  </div>
@@ -17,10 +17,5 @@
17
17
  <hr>
18
18
  <%= footer %>
19
19
  </div>
20
- <script src="<%= resource_prefix %>assets/js/jquery.js"></script>
21
- <script src="<%= resource_prefix %>assets/js/bootstrap.min.js"></script>
22
- <script src="<%= resource_prefix %>assets/js/custom.js"></script>
23
20
  </body>
24
- <!-- The credit of this design goes to David Miller -->
25
- <!-- Check more for detail: http://startbootstrap.com/template-overviews/thumbnail-gallery/ -->
26
21
  </html>
@@ -9,23 +9,19 @@ module PowerBuild
9
9
  map %w[b] => :build
10
10
  default_task :build
11
11
  def build
12
- if File.file? "power-build.config"
13
- Constructor.new.copy_assets
14
- Constructor.new(:config).generate_site
15
- puts "Done!"
16
- else
17
- puts "No config file found. Run 'power init' first."
18
- end
12
+ config_exists?
13
+ image_root_folder_exists?
14
+ Constructor.new.copy_assets
15
+ Constructor.new(:config).generate_site
16
+ puts "Done!"
19
17
  end
20
18
 
21
19
  desc "init, i", "Start with a config file."
22
20
  map %w[i] => :init
23
21
  def init
24
- unless in_power_build_project
25
- Constructor.new.build_config
26
- else
27
- puts "Already in a power-build project."
28
- end
22
+ config_already_exists?
23
+ in_power_build_project?
24
+ Constructor.new.build_config
29
25
  end
30
26
 
31
27
  desc "delete, d", "Remove all files generated by Power Build"
@@ -34,12 +30,6 @@ module PowerBuild
34
30
  Constructor.new.remove_config
35
31
  end
36
32
 
37
- desc "config, open, o", "Open the config file for you if you're this lazy"
38
- map %w[open, o] => :config
39
- def config
40
- Constructor.new.open_config
41
- end
42
-
43
33
  map %w[--version -v] => :__print_version
44
34
  desc "--version, -v", "show version"
45
35
  def __print_version
@@ -53,12 +43,41 @@ module PowerBuild
53
43
  # end
54
44
 
55
45
  private
56
- def in_power_build_project
46
+ def in_power_build_project?
57
47
  count = Dir.pwd.count("/") - 1
48
+ find_config = false
58
49
  for i in 0..count do
59
- @respond = true if File.file?("../" * i + "power-build.config")
50
+ find_config = true if File.file?("../" * i + "power-build.config")
51
+ end
52
+ if find_config
53
+ puts "Already in a power-build project."
54
+ abort
55
+ end
56
+ end
57
+
58
+ def config_exists?
59
+ unless File.file? "power-build.config"
60
+ puts "No config file found. Run 'power init' first."
61
+ abort
62
+ end
63
+ end
64
+
65
+ def config_already_exists?
66
+ if File.file? "power-build.config"
67
+ puts "Config file already exists. Either:"
68
+ puts "1. Run 'power build' to build."
69
+ puts "2. Run 'power delete' to delete all."
70
+ abort
71
+ end
72
+ end
73
+
74
+ def image_root_folder_exists?
75
+ config = Helper.read_config
76
+ folder = config["root_folder"]
77
+ unless File.directory? folder
78
+ puts "Image folder '#{folder}' not found."
79
+ abort
60
80
  end
61
- return @respond
62
81
  end
63
82
  end
64
83
  end
@@ -2,26 +2,21 @@ require 'colorize'
2
2
  require 'erb'
3
3
  require 'ostruct'
4
4
  require 'json'
5
+ require 'power-build/helper'
6
+ require 'power-build/i18n'
5
7
 
6
8
  module PowerBuild
7
9
  class Constructor
8
-
9
10
  def initialize(config=nil)
10
11
  @assets_base = "../../assets"
11
12
  variables_set if config
12
13
  end
13
14
 
14
15
  def build_config
15
- if File.file? "power-build.config"
16
- puts "Config file already exists. Either:"
17
- puts "1. Run 'power build' to build."
18
- puts "2. Run 'power delete' to delete all."
19
- else
20
- @assets_base = "../../assets"
21
- config = "power-build.config"
22
- FileUtils.cp File.expand_path("#{@assets_base}/power-build.config", __FILE__), config
23
- puts "Created: ".green + "power-build.config"
24
- end
16
+ @assets_base = "../../assets"
17
+ config = "power-build.config"
18
+ FileUtils.cp File.expand_path("#{@assets_base}/power-build.config", __FILE__), config
19
+ puts "Created: ".green + "power-build.config"
25
20
  end
26
21
 
27
22
  def copy_assets
@@ -51,7 +46,7 @@ module PowerBuild
51
46
  @variables.title = @config["title"]
52
47
  @variables.resource_prefix = ""
53
48
  update_partials
54
- render_page("index")
49
+ render_("index")
55
50
  puts "Created: ".green + "index.html"
56
51
  end
57
52
 
@@ -59,8 +54,6 @@ module PowerBuild
59
54
  if File.file? "power-build.config"
60
55
  FileUtils.remove "power-build.config"
61
56
  puts "Removed:".red + " power-build.config"
62
- else
63
- puts "Config file does not exist."
64
57
  end
65
58
  if File.directory? "assets"
66
59
  FileUtils.rm_rf "assets"
@@ -72,26 +65,19 @@ module PowerBuild
72
65
  end
73
66
  end
74
67
 
75
- def open_config
76
- if File.file? "power-build.config"
77
- %x[open power-build.config]
78
- else
79
- puts "Config file does not exist."
80
- end
81
- end
82
-
83
68
  private
84
69
 
85
70
  def variables_set
86
- @config = read_config
71
+ @config = Helper.read_config
87
72
  @variables = OpenStruct.new(title: @config["title"],
88
73
  root_folder: @config["root_folder"],
89
74
  site: @config["site"],
90
75
  host_link: @config["host_link"],
91
76
  host_display_text: @config["host_display_text"],
92
- resource_prefix: ""
77
+ resource_prefix: "",
78
+ copyright_display: @config["Copyright Display"]
93
79
  )
94
- i18n(@config["language"]).each {|key, value| @variables.send("#{key.to_s}=".to_sym, value) }
80
+ I18n.load(@config["language"]).each {|key, value| @variables.send("#{key.to_s}=".to_sym, value) }
95
81
  end
96
82
 
97
83
  def copy_assets_dir(dir_name)
@@ -115,21 +101,6 @@ module PowerBuild
115
101
  end
116
102
  end
117
103
 
118
- def read_config
119
- begin
120
- JSON.parse(File.read("power-build.config"))
121
- rescue JSON::ParserError
122
- puts "============================================================"
123
- puts "Oops, make sure 'power-build.config' is in correct JSON format."
124
- puts "1. Wrap the whole content in brackets {}"
125
- puts "2. Wrap each key and value with quotes ''"
126
- puts "3. Separate each setting with comma ,"
127
- puts "If you can't fix it, run 'power delete' to start over again."
128
- puts "============================================================"
129
- raise JSON::ParserError
130
- end
131
- end
132
-
133
104
  def update_partials
134
105
  add_partial("head")
135
106
  add_partial("navbar")
@@ -142,40 +113,53 @@ module PowerBuild
142
113
  @variables.send("#{partial}=".to_sym, rendered)
143
114
  end
144
115
 
145
- def render_page(page)
146
- content = File.read(File.expand_path("#{@assets_base}/templates/#{page}.html.erb", __FILE__))
147
- erb = ERB.new(content).result(@variables.instance_eval{binding})
148
- File.open("#{page}.html", "w") {|file| file.write(erb)}
149
- end
150
-
151
116
  def collect_images
152
117
  collection = []
153
118
  root_dir = @config["root_folder"]
154
- dirs = Dir.entries(root_dir)
155
- dirs.delete(".")
156
- dirs.delete("..")
119
+ dirs = Dir.entries(root_dir).delete_folder_extra
157
120
  dirs.each do |dir|
158
121
  if File.directory? "#{root_dir}/#{dir}"
159
- images = Dir.entries("#{root_dir}/#{dir}")
160
- images.delete(".")
161
- images.delete("..")
122
+ images = Dir.entries("#{root_dir}/#{dir}").delete_folder_extra
162
123
  category = {:tag => dir, :images => []}
163
124
  images.each do |image|
164
- if File.file? "#{root_dir}/#{dir}/#{image}"
165
- if ["jpg", "png", "gif", "peg"].include? image[-3..-1].downcase
166
- category[:images].push(image)
167
- end
125
+ if File.file?("#{root_dir}/#{dir}/#{image}")
126
+ category[:images].push(image) if ["jpg", "png", "gif", "peg"].include? image[-3..-1].downcase
168
127
  end
169
128
  end
170
129
  collection.push(category)
171
130
  end
172
131
  end
132
+ uncategorized = {:tag => @variables[:i_uncategorized], :images => []}
133
+ dirs.each do |image|
134
+ if File.file?("#{root_dir}/#{image}") && image.include?(".")
135
+ uncategorized[:images].push(image) if ["jpg", "png", "gif", "peg"].include? image[-3..-1].downcase
136
+ end
137
+ end
138
+ collection.push(uncategorized) if uncategorized[:images].length > 0
139
+
173
140
  return collection
174
141
  end
175
142
 
176
- def create_page_by(category)
143
+ def variables_set_by(category)
177
144
  @dir = FileUtils.mkdir_p("assets/#{category[:tag]}").first
178
145
  @variables.current_category = category
146
+ if category[:tag] == @variables[:i_uncategorized]
147
+ @variables.bridge = ""
148
+ else
149
+ @variables.bridge = "/#{category[:tag]}"
150
+ end
151
+ end
152
+
153
+ def variables_set_by_each(category, image)
154
+ @variables.current_image = "#{@dir}/#{image}"
155
+ bridge = category[:tag] == @variables[:i_uncategorized] ? "" : "/#{category[:tag]}"
156
+ @variables.current_image_source = "../../#{@config["root_folder"]}#{bridge}/#{image}"
157
+ @variables.current_title = image
158
+ @variables.title = @variables.current_title
159
+ end
160
+
161
+ def create_page_by(category)
162
+ variables_set_by(category)
179
163
  content = File.read(File.expand_path("#{@assets_base}/templates/category.html.erb", __FILE__))
180
164
  erb = ERB.new(content).result(@variables.instance_eval{binding})
181
165
  File.open("#{@dir}/index.html", "w") {|file| file.write(erb)}
@@ -183,35 +167,18 @@ module PowerBuild
183
167
  end
184
168
 
185
169
  def create_page_by_each(category, image)
186
- @variables.current_image = "#{@dir}/#{image}"
187
- @variables.current_image_source = "../../#{@config["root_folder"]}/#{category[:tag]}/#{image}"
188
- @variables.current_title = image
189
- @variables.title = @variables.current_title
170
+ variables_set_by_each(category, image)
190
171
  content = File.read(File.expand_path("#{@assets_base}/templates/show.html.erb", __FILE__))
191
172
  erb = ERB.new(content).result(@variables.instance_eval{binding})
192
173
  File.open("#{@dir}/#{@variables.current_title}.html", "w") {|file| file.write(erb)}
193
174
  puts "Created: ".green + "#{@dir}/#{@variables.current_title}.html"
194
175
  end
195
176
 
196
- def i18n(setting)
197
- case setting
198
- when "zh-tw"
199
- {
200
- i_header: "總覽",
201
- i_category: "類別",
202
- i_copyright: "版權所有",
203
- i_download: "下載",
204
- i_home: "首頁"
205
- }
206
- when "en"
207
- {
208
- i_header: "Overview",
209
- i_category: "Categories",
210
- i_copyright: "Copyright",
211
- i_download: "Download",
212
- i_home: "Home"
213
- }
214
- end
177
+ def render_(index)
178
+ content = File.read(File.expand_path("#{@assets_base}/templates/index.html.erb", __FILE__))
179
+ erb = ERB.new(content).result(@variables.instance_eval{binding})
180
+ File.open("index.html", "w") {|file| file.write(erb)}
215
181
  end
182
+
216
183
  end
217
184
  end