From b7e96fc849871bb503183c987e418f169b67762f Mon Sep 17 00:00:00 2001 From: Ezra Zygmuntowicz Date: Thu, 31 Jan 2008 16:50:19 -0800 Subject: [PATCH] fix up merb-gen to make a good new merb-core 0.9 app --- Rakefile | 6 ++- merb-gen/Rakefile | 2 +- .../views/exeptions/not_acceptable.html.erb | 38 +++++++++++++++++ .../app/views/exeptions/not_found.html.erb | 40 ++++++++++++++++++ .../merb/templates/public/images/merb.jpg | Bin 0 -> 40150 bytes 5 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 merb-gen/app_generators/merb/templates/app/views/exeptions/not_acceptable.html.erb create mode 100644 merb-gen/app_generators/merb/templates/app/views/exeptions/not_found.html.erb create mode 100644 merb-gen/app_generators/merb/templates/public/images/merb.jpg diff --git a/Rakefile b/Rakefile index 02a364e6..0f0cb8a9 100644 --- a/Rakefile +++ b/Rakefile @@ -1,5 +1,5 @@ require "rake/gempackagetask" - +require "merb-core" NAME = "merb-more" spec = Gem::Specification.new do |s| @@ -22,6 +22,10 @@ spec = Gem::Specification.new do |s| s.add_dependency "merb-core" end +windows = (PLATFORM =~ /win32|cygwin/) rescue nil + +SUDO = windows ? "" : "sudo" + Rake::GemPackageTask.new(spec) do |package| package.gem_spec = spec end diff --git a/merb-gen/Rakefile b/merb-gen/Rakefile index a2807ad7..2b4c75a4 100644 --- a/merb-gen/Rakefile +++ b/merb-gen/Rakefile @@ -27,7 +27,7 @@ spec = Gem::Specification.new do |s| s.require_path = 'lib' s.autorequire = GEM - s.files = %w(LICENSE README Rakefile TODO) + Dir.glob("{lib,spec,app_generators}/**/*") + s.files = %w(LICENSE README Rakefile TODO) + Dir.glob("{lib,bin,spec,app_generators}/**/*") end Rake::GemPackageTask.new(spec) do |pkg| diff --git a/merb-gen/app_generators/merb/templates/app/views/exeptions/not_acceptable.html.erb b/merb-gen/app_generators/merb/templates/app/views/exeptions/not_acceptable.html.erb new file mode 100644 index 00000000..052eacd2 --- /dev/null +++ b/merb-gen/app_generators/merb/templates/app/views/exeptions/not_acceptable.html.erb @@ -0,0 +1,38 @@ +
+
+ + +

pocket rocket web framework

+
+
+ +
+

Exception:

+

<%= params[:exception] %>

+
+ +
+

Why am I seeing this page?

+

Merb couldn't find an appropriate content_type to return, + based on what you said was available via provides() and + what the client requested. For more information, visit + http://merbivore.com/fixing_406_issues +

+ +

Where can I find help?

+

If you have any questions or if you can't figure something out, please take a + look at our project development page or, + feel free to come chat at irc.freenode.net, channel #merb.

+ +

How do I edit this page?

+

You can change what people see when this happens byy editing app/views/exceptions/not_found.html.erb.

+ +
+ + +
diff --git a/merb-gen/app_generators/merb/templates/app/views/exeptions/not_found.html.erb b/merb-gen/app_generators/merb/templates/app/views/exeptions/not_found.html.erb new file mode 100644 index 00000000..37380007 --- /dev/null +++ b/merb-gen/app_generators/merb/templates/app/views/exeptions/not_found.html.erb @@ -0,0 +1,40 @@ +
+
+ + +

pocket rocket web framework

+
+
+ +
+

Exception:

+

<%= params[:exception] %>

+
+ +
+

Welcome to Merb!

+

Merb is a light-weight MVC framework written in Ruby. We hope you enjoy it.

+ +

Where can I find help?

+

If you have any questions or if you can't figure something out, please take a + look at our project development page or, + feel free to come chat at irc.freenode.net, channel #merb.

+ +

How do I edit this page?

+

You're seeing this page because you need to edit the following files: +

    +
  • config/merb.yml (optional)
  • +
  • config/router.rb (recommended)
  • +
  • app/views/exceptions/not_found.html.erb (recommended)
  • +
  • app/views/layout/application.html.erb (change this layout)
  • +
+

+
+ + +
diff --git a/merb-gen/app_generators/merb/templates/public/images/merb.jpg b/merb-gen/app_generators/merb/templates/public/images/merb.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4fe7ce7c90596a9ff3a9ee505afc12d6d75dbfdf GIT binary patch literal 40150 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%0DL)E%RS=^XEW)9AVx5O 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 dxO^^Xq2ej=JPzwSsKwELc