betauseraccess 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +9 -0
- data/app/controllers/betauseraccess/sign_up_for_beta_accesses_controller.rb +99 -0
- data/app/helpers/application_helper.rb +2 -0
- data/app/helpers/betauseraccess/widgets_helper.rb +9 -0
- data/app/models/betauseraccess/sign_up_for_beta_access.rb +4 -0
- data/app/views/betauseraccess/sign_up_for_beta_accesses/_form.html.erb +25 -0
- data/app/views/betauseraccess/sign_up_for_beta_accesses/edit.html.erb +26 -0
- data/app/views/betauseraccess/sign_up_for_beta_accesses/index.html.erb +27 -0
- data/app/views/betauseraccess/sign_up_for_beta_accesses/new.html.erb +6 -0
- data/app/views/betauseraccess/sign_up_for_beta_accesses/show.html.erb +20 -0
- data/app/views/betauseraccess/sign_up_for_beta_accesses/thanks.html.erb +1 -0
- data/app/views/layouts/betauseraccess.html.erb +12 -0
- data/config/routes.rb +19 -0
- data/lib/acts_as_widget/base.rb +36 -0
- data/lib/application_controller.rb +28 -0
- data/lib/application_helper.rb +7 -0
- data/lib/betauseraccess.rb +5 -0
- data/lib/engine.rb +30 -0
- data/lib/rails/generators/betauseraccess/betauseraccess_generator.rb +82 -0
- data/lib/rails/generators/betauseraccess/templates/initializer.rb +8 -0
- data/lib/rails/generators/betauseraccess/templates/migration.rb +9 -0
- data/lib/rails/generators/betauseraccess/templates/schema.rb +13 -0
- data/lib/rails/railties/tasks.rake +8 -0
- data/public/images/betauseraccess.jpg +0 -0
- data/public/stylesheets/betauseraccess.css +9 -0
- metadata +70 -0
data/README.rdoc
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
==Introduction
|
2
|
+
|
3
|
+
This is a simple gem to help limit alpha/beta/early access to a site or features of a site.
|
4
|
+
|
5
|
+
This gem is very early so please send any feedback via the issues page.
|
6
|
+
|
7
|
+
There is a demo project available on github: https://github.com/cbrulak/BetaUserAccessApp
|
8
|
+
|
9
|
+
I used the gem: rails3_engine_demo (https://github.com/krschacht/rails_3_engine_demo) as a basis for this gem.
|
@@ -0,0 +1,99 @@
|
|
1
|
+
module Betauseraccess
|
2
|
+
class SignUpForBetaAccessesController < ApplicationController
|
3
|
+
before_filter :isuseramoderator, :except=>[:new,:create,:thanks]
|
4
|
+
|
5
|
+
def isuseramoderator
|
6
|
+
unless(IsCurrentUserModerator?)
|
7
|
+
redirect_to root_path
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def thanks
|
12
|
+
respond_to do |format|
|
13
|
+
format.html
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
# GET /sign_up_for_beta_accesses
|
18
|
+
# GET /sign_up_for_beta_accesses.xml
|
19
|
+
def index
|
20
|
+
@sign_up_for_beta_accesses = SignUpForBetaAccess.all
|
21
|
+
|
22
|
+
respond_to do |format|
|
23
|
+
format.html # index.html.erb
|
24
|
+
format.xml { render :xml => @sign_up_for_beta_accesses }
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
# GET /sign_up_for_beta_accesses/1
|
29
|
+
# GET /sign_up_for_beta_accesses/1.xml
|
30
|
+
def show
|
31
|
+
@sign_up_for_beta_access = SignUpForBetaAccess.find(params[:id])
|
32
|
+
|
33
|
+
respond_to do |format|
|
34
|
+
format.html # show.html.erb
|
35
|
+
format.xml { render :xml => @sign_up_for_beta_access }
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
# GET /sign_up_for_beta_accesses/new
|
40
|
+
# GET /sign_up_for_beta_accesses/new.xml
|
41
|
+
def new
|
42
|
+
@sign_up_for_beta_access = SignUpForBetaAccess.new
|
43
|
+
|
44
|
+
respond_to do |format|
|
45
|
+
format.html # new.html.erb
|
46
|
+
format.xml { render :xml => @sign_up_for_beta_access }
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
# GET /sign_up_for_beta_accesses/1/edit
|
51
|
+
def edit
|
52
|
+
@sign_up_for_beta_access = SignUpForBetaAccess.find(params[:id])
|
53
|
+
end
|
54
|
+
|
55
|
+
# POST /sign_up_for_beta_accesses
|
56
|
+
# POST /sign_up_for_beta_accesses.xml
|
57
|
+
def create
|
58
|
+
@sign_up_for_beta_access = SignUpForBetaAccess.new(params[:sign_up_for_beta_access])
|
59
|
+
|
60
|
+
respond_to do |format|
|
61
|
+
if @sign_up_for_beta_access.save
|
62
|
+
format.html { redirect_to(@sign_up_for_beta_access, :notice => 'Sign up for beta access was successfully created.') }
|
63
|
+
format.xml { render :xml => @sign_up_for_beta_access, :status => :created, :location => @sign_up_for_beta_access }
|
64
|
+
else
|
65
|
+
format.html { render :action => "new" }
|
66
|
+
format.xml { render :xml => @sign_up_for_beta_access.errors, :status => :unprocessable_entity }
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
# PUT /sign_up_for_beta_accesses/1
|
72
|
+
# PUT /sign_up_for_beta_accesses/1.xml
|
73
|
+
def update
|
74
|
+
@sign_up_for_beta_access = SignUpForBetaAccess.find(params[:id])
|
75
|
+
|
76
|
+
respond_to do |format|
|
77
|
+
if @sign_up_for_beta_access.update_attributes(params[:sign_up_for_beta_access])
|
78
|
+
format.html { redirect_to(@sign_up_for_beta_access, :notice => 'Sign up for beta access was successfully updated.') }
|
79
|
+
format.xml { head :ok }
|
80
|
+
else
|
81
|
+
format.html { render :action => "edit" }
|
82
|
+
format.xml { render :xml => @sign_up_for_beta_access.errors, :status => :unprocessable_entity }
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
# DELETE /sign_up_for_beta_accesses/1
|
88
|
+
# DELETE /sign_up_for_beta_accesses/1.xml
|
89
|
+
def destroy
|
90
|
+
@sign_up_for_beta_access = SignUpForBetaAccess.find(params[:id])
|
91
|
+
@sign_up_for_beta_access.destroy
|
92
|
+
|
93
|
+
respond_to do |format|
|
94
|
+
format.html { redirect_to(sign_up_for_beta_accesses_url) }
|
95
|
+
format.xml { head :ok }
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
<%= form_for(@sign_up_for_beta_access) do |f| %>
|
2
|
+
<% if @sign_up_for_beta_access.errors.any? %>
|
3
|
+
<div id="error_explanation">
|
4
|
+
<h2><%= pluralize(@sign_up_for_beta_access.errors.count, "error") %> prohibited this sign_up_for_beta_access from being saved:</h2>
|
5
|
+
|
6
|
+
<ul>
|
7
|
+
<% @sign_up_for_beta_access.errors.full_messages.each do |msg| %>
|
8
|
+
<li><%= msg %></li>
|
9
|
+
<% end %>
|
10
|
+
</ul>
|
11
|
+
</div>
|
12
|
+
<% end %>
|
13
|
+
|
14
|
+
<div class="field">
|
15
|
+
<%= f.label :name %><br />
|
16
|
+
<%= f.text_field :name %>
|
17
|
+
</div>
|
18
|
+
<div class="field">
|
19
|
+
<%= f.label :twitterid %><br />
|
20
|
+
<%= f.text_field :twitterid, :value => session[:beta_user_twitterid] %>
|
21
|
+
</div>
|
22
|
+
<div class="actions">
|
23
|
+
<%= f.submit %>
|
24
|
+
</div>
|
25
|
+
<% end %>
|
@@ -0,0 +1,26 @@
|
|
1
|
+
<h1>Editing sign_up_for_beta_access</h1>
|
2
|
+
|
3
|
+
<%= form_for(@sign_up_for_beta_access) do |f| %>
|
4
|
+
<% if @sign_up_for_beta_access.errors.any? %>
|
5
|
+
<div id="error_explanation">
|
6
|
+
<h2><%= pluralize(@sign_up_for_beta_access.errors.count, "error") %> prohibited this sign_up_for_beta_access from being saved:</h2>
|
7
|
+
|
8
|
+
<ul>
|
9
|
+
<% @sign_up_for_beta_access.errors.full_messages.each do |msg| %>
|
10
|
+
<li><%= msg %></li>
|
11
|
+
<% end %>
|
12
|
+
</ul>
|
13
|
+
</div>
|
14
|
+
<% end %>
|
15
|
+
|
16
|
+
<div class="field">
|
17
|
+
<%= f.label :allowedaccess %><br />
|
18
|
+
<%= f.check_box :allowedaccess,:checked => @sign_up_for_beta_access.allowedaccess %>
|
19
|
+
</div>
|
20
|
+
<div class="actions">
|
21
|
+
<%= f.submit %>
|
22
|
+
</div>
|
23
|
+
<% end %>
|
24
|
+
|
25
|
+
<%= link_to 'Show', @sign_up_for_beta_access %> |
|
26
|
+
<%= link_to 'Back', sign_up_for_beta_accesses_path %>
|
@@ -0,0 +1,27 @@
|
|
1
|
+
<h1>Listing sign_up_for_beta_accesses</h1>
|
2
|
+
|
3
|
+
<table>
|
4
|
+
<tr>
|
5
|
+
<th>Name</th>
|
6
|
+
<th>Twitterid</th>
|
7
|
+
<th>Allowedaccess</th>
|
8
|
+
<th></th>
|
9
|
+
<th></th>
|
10
|
+
<th></th>
|
11
|
+
</tr>
|
12
|
+
|
13
|
+
<% @sign_up_for_beta_accesses.each do |sign_up_for_beta_access| %>
|
14
|
+
<tr>
|
15
|
+
<td><%= sign_up_for_beta_access.name %></td>
|
16
|
+
<td><%= sign_up_for_beta_access.twitterid %></td>
|
17
|
+
<td><%= sign_up_for_beta_access.allowedaccess %></td>
|
18
|
+
<td><%= link_to 'Show', sign_up_for_beta_access %></td>
|
19
|
+
<td><%= link_to 'Edit', edit_sign_up_for_beta_access_path(sign_up_for_beta_access) %></td>
|
20
|
+
<td><%= link_to 'Destroy', sign_up_for_beta_access, :confirm => 'Are you sure?', :method => :delete %></td>
|
21
|
+
</tr>
|
22
|
+
<% end %>
|
23
|
+
</table>
|
24
|
+
|
25
|
+
<br />
|
26
|
+
|
27
|
+
<%= link_to 'New Sign up for beta access', new_betauseraccess_sign_up_for_beta_access_path %>
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<p id="notice"><%= notice %></p>
|
2
|
+
|
3
|
+
<p>
|
4
|
+
<b>Name:</b>
|
5
|
+
<%= @sign_up_for_beta_access.name %>
|
6
|
+
</p>
|
7
|
+
|
8
|
+
<p>
|
9
|
+
<b>Twitterid:</b>
|
10
|
+
<%= @sign_up_for_beta_access.twitterid %>
|
11
|
+
</p>
|
12
|
+
|
13
|
+
<p>
|
14
|
+
<b>Allowedaccess:</b>
|
15
|
+
<%= @sign_up_for_beta_access.allowedaccess %>
|
16
|
+
</p>
|
17
|
+
|
18
|
+
|
19
|
+
<%= link_to 'Edit', edit_sign_up_for_beta_access_path(@sign_up_for_beta_access) %> |
|
20
|
+
<%= link_to 'Back', sign_up_for_beta_accesses_path %>
|
@@ -0,0 +1 @@
|
|
1
|
+
<h2>Thanks for signing up!</h2>
|
data/config/routes.rb
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
Rails.application.routes.draw do |map|
|
2
|
+
|
3
|
+
mount_at = Betauseraccess::Engine.config.mount_at
|
4
|
+
|
5
|
+
#match mount_at => 'betauseraccess/sign_up_for_beta_access#index'
|
6
|
+
|
7
|
+
map.resources :sign_up_for_beta_accesses,
|
8
|
+
:controller => "betauseraccess/sign_up_for_beta_accesses",
|
9
|
+
:path_prefix => mount_at,
|
10
|
+
:name_prefix => "betauseraccess_"
|
11
|
+
|
12
|
+
|
13
|
+
#resources :sign_up_for_beta_accesses do
|
14
|
+
# collection do
|
15
|
+
# get 'thanks'
|
16
|
+
# end
|
17
|
+
#end
|
18
|
+
|
19
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
module Betauseraccess
|
2
|
+
module ActsAsWidget
|
3
|
+
|
4
|
+
## Define ModelMethods
|
5
|
+
module Base
|
6
|
+
def self.included(klass)
|
7
|
+
klass.class_eval do
|
8
|
+
extend Config
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
module Config
|
13
|
+
def acts_as_widget
|
14
|
+
|
15
|
+
# This is where arbitrary code goes that you want to
|
16
|
+
# add to the class that declared "acts_as_widget"
|
17
|
+
|
18
|
+
has_many :widgets, :class_name => 'Betauseraccess::Widget'
|
19
|
+
|
20
|
+
include Betauseraccess::ActsAsWidget::Base::InstanceMethods
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
module InstanceMethods
|
25
|
+
|
26
|
+
def factory_name
|
27
|
+
"this is an example instance method"
|
28
|
+
end
|
29
|
+
|
30
|
+
end # InstanceMethods
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
::ActiveRecord::Base.send :include, Betauseraccess::ActsAsWidget::Base
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module Betauseraccess
|
2
|
+
## Define ControllerMethods
|
3
|
+
module Controller
|
4
|
+
## this one manages the usual self.included, klass_eval stuff
|
5
|
+
extend ActiveSupport::Concern
|
6
|
+
|
7
|
+
included do
|
8
|
+
before_filter :test_controller_instance_method
|
9
|
+
end
|
10
|
+
|
11
|
+
module InstanceMethods
|
12
|
+
def test_controller_instance_method
|
13
|
+
puts "###### This text is coming from an application_controller before_filter that is being declared and triggered from inside the engine. This before_filter is automatically integrated in when the engine is installed into an app. Look inside lib/application_controller.rb to find it. ######"
|
14
|
+
end
|
15
|
+
|
16
|
+
# This method is available inside application_controller but it is not being
|
17
|
+
# automatically executed. Notice the before_filter line above that is automatically
|
18
|
+
# executing the first method.
|
19
|
+
def second_controller_instance_method
|
20
|
+
puts "###### This method is not automatically run inside application_controller, but it is available inside application_controller. To see this example add 'before_filter :second_controller_instance_method' at the top of your app's application_controller.rb ######"
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
::ActionController::Base.send :include, Betauseraccess::Controller
|
27
|
+
|
28
|
+
|
data/lib/engine.rb
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'betauseraccess'
|
2
|
+
require 'rails'
|
3
|
+
require 'action_controller'
|
4
|
+
require 'application_helper'
|
5
|
+
|
6
|
+
module Betauseraccess
|
7
|
+
class Engine < Rails::Engine
|
8
|
+
|
9
|
+
# Config defaults
|
10
|
+
config.widget_factory_name = "default factory name"
|
11
|
+
config.mount_at = '/'
|
12
|
+
|
13
|
+
# Load rake tasks
|
14
|
+
rake_tasks do
|
15
|
+
load File.join(File.dirname(__FILE__), 'rails/railties/tasks.rake')
|
16
|
+
end
|
17
|
+
|
18
|
+
# Check the gem config
|
19
|
+
initializer "check config" do |app|
|
20
|
+
|
21
|
+
# make sure mount_at ends with trailing slash
|
22
|
+
config.mount_at += '/' unless config.mount_at.last == '/'
|
23
|
+
end
|
24
|
+
|
25
|
+
initializer "static assets" do |app|
|
26
|
+
app.middleware.use ::ActionDispatch::Static, "#{root}/public"
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,82 @@
|
|
1
|
+
require 'rails/generators'
|
2
|
+
require 'rails/generators/migration'
|
3
|
+
|
4
|
+
class BetauseraccessGenerator < Rails::Generators::Base
|
5
|
+
include Rails::Generators::Migration
|
6
|
+
|
7
|
+
def self.source_root
|
8
|
+
File.join(File.dirname(__FILE__), 'templates')
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.next_migration_number(dirname) #:nodoc:
|
12
|
+
if ActiveRecord::Base.timestamped_migrations
|
13
|
+
Time.now.utc.strftime("%Y%m%d%H%M%S")
|
14
|
+
else
|
15
|
+
"%.3d" % (current_migration_number(dirname) + 1)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
|
20
|
+
# Every method that is declared below will be automatically executed when the generator is run
|
21
|
+
|
22
|
+
def create_migration_file
|
23
|
+
f = File.open File.join(File.dirname(__FILE__), 'templates', 'schema.rb')
|
24
|
+
schema = f.read; f.close
|
25
|
+
|
26
|
+
schema.gsub!(/ActiveRecord::Schema.*\n/, '')
|
27
|
+
schema.gsub!(/^end\n*$/, '')
|
28
|
+
|
29
|
+
f = File.open File.join(File.dirname(__FILE__), 'templates', 'migration.rb')
|
30
|
+
migration = f.read; f.close
|
31
|
+
migration.gsub!(/SCHEMA_AUTO_INSERTED_HERE/, schema)
|
32
|
+
|
33
|
+
tmp = File.open "tmp/~migration_ready.rb", "w"
|
34
|
+
tmp.write migration
|
35
|
+
tmp.close
|
36
|
+
|
37
|
+
migration_template '../../../tmp/~migration_ready.rb',
|
38
|
+
'db/migrate/create_betauseraccess_tables.rb'
|
39
|
+
remove_file 'tmp/~migration_ready.rb'
|
40
|
+
end
|
41
|
+
|
42
|
+
def copy_initializer_file
|
43
|
+
copy_file 'initializer.rb', 'config/initializers/betauseraccess.rb'
|
44
|
+
end
|
45
|
+
|
46
|
+
def update_application_template
|
47
|
+
f = File.open "app/views/layouts/application.html.erb"
|
48
|
+
layout = f.read; f.close
|
49
|
+
|
50
|
+
if layout =~ /<%=[ ]+yield[ ]+%>/
|
51
|
+
print " \e[1m\e[34mquestion\e[0m Your layouts/application.html.erb layout currently has the line <%= yield %>. This gem needs to change this line to <%= content_for?(:content) ? yield(:content) : yield %> to support its nested layouts. This change should not affect any of your existing layouts or views. Is this okay? [y/n] "
|
52
|
+
begin
|
53
|
+
answer = gets.chomp
|
54
|
+
end while not answer =~ /[yn]/i
|
55
|
+
|
56
|
+
if answer =~ /y/i
|
57
|
+
|
58
|
+
layout.gsub!(/<%=[ ]+yield[ ]+%>/, '<%= content_for?(:content) ? yield(:content) : yield %>')
|
59
|
+
|
60
|
+
tmp = File.open "tmp/~application.html.erb", "w"
|
61
|
+
tmp.write layout; tmp.close
|
62
|
+
|
63
|
+
remove_file 'app/views/layouts/application.html.erb'
|
64
|
+
copy_file '../../../tmp/~application.html.erb',
|
65
|
+
'app/views/layouts/application.html.erb'
|
66
|
+
remove_file 'tmp/~application.html.erb'
|
67
|
+
end
|
68
|
+
elsif layout =~ /<%=[ ]+content_for\?\(:content\) \? yield\(:content\) : yield[ ]+%>/
|
69
|
+
puts " \e[1m\e[33mskipping\e[0m layouts/application.html.erb modification is already done."
|
70
|
+
else
|
71
|
+
puts " \e[1m\e[31mconflict\e[0m The gem is confused by your layouts/application.html.erb. It does not contain the default line <%= yield %>, you may need to make manual changes to get this gem's nested layouts working. Visit ###### for details."
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
def copy_controller
|
76
|
+
copy_file '../../../../../app/controllers/betauseraccess/sign_up_for_beta_accesses_controller.rb', 'app/controllers/sign_up_for_beta_accesses_controller.rb'
|
77
|
+
end
|
78
|
+
|
79
|
+
def copy_views
|
80
|
+
directory '../../../../../app/views/betauseraccess/sign_up_for_beta_accesses', 'app/views/sign_up_for_beta_accesses/'
|
81
|
+
end
|
82
|
+
end
|
Binary file
|
metadata
ADDED
@@ -0,0 +1,70 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: betauseraccess
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Your Name
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2012-06-05 00:00:00.000000000 Z
|
13
|
+
dependencies: []
|
14
|
+
description:
|
15
|
+
email: you@email.com
|
16
|
+
executables: []
|
17
|
+
extensions: []
|
18
|
+
extra_rdoc_files:
|
19
|
+
- README.rdoc
|
20
|
+
files:
|
21
|
+
- app/controllers/betauseraccess/sign_up_for_beta_accesses_controller.rb
|
22
|
+
- app/helpers/application_helper.rb
|
23
|
+
- app/helpers/betauseraccess/widgets_helper.rb
|
24
|
+
- app/models/betauseraccess/sign_up_for_beta_access.rb
|
25
|
+
- app/views/betauseraccess/sign_up_for_beta_accesses/_form.html.erb
|
26
|
+
- app/views/betauseraccess/sign_up_for_beta_accesses/edit.html.erb
|
27
|
+
- app/views/betauseraccess/sign_up_for_beta_accesses/index.html.erb
|
28
|
+
- app/views/betauseraccess/sign_up_for_beta_accesses/new.html.erb
|
29
|
+
- app/views/betauseraccess/sign_up_for_beta_accesses/show.html.erb
|
30
|
+
- app/views/betauseraccess/sign_up_for_beta_accesses/thanks.html.erb
|
31
|
+
- app/views/layouts/betauseraccess.html.erb
|
32
|
+
- config/routes.rb
|
33
|
+
- lib/acts_as_widget/base.rb
|
34
|
+
- lib/application_controller.rb
|
35
|
+
- lib/application_helper.rb
|
36
|
+
- lib/betauseraccess.rb
|
37
|
+
- lib/engine.rb
|
38
|
+
- lib/rails/generators/betauseraccess/betauseraccess_generator.rb
|
39
|
+
- lib/rails/generators/betauseraccess/templates/initializer.rb
|
40
|
+
- lib/rails/generators/betauseraccess/templates/migration.rb
|
41
|
+
- lib/rails/generators/betauseraccess/templates/schema.rb
|
42
|
+
- lib/rails/railties/tasks.rake
|
43
|
+
- public/images/betauseraccess.jpg
|
44
|
+
- public/stylesheets/betauseraccess.css
|
45
|
+
- README.rdoc
|
46
|
+
homepage:
|
47
|
+
licenses: []
|
48
|
+
post_install_message:
|
49
|
+
rdoc_options: []
|
50
|
+
require_paths:
|
51
|
+
- lib
|
52
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
53
|
+
none: false
|
54
|
+
requirements:
|
55
|
+
- - ! '>='
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: '0'
|
58
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
60
|
+
requirements:
|
61
|
+
- - ! '>='
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '0'
|
64
|
+
requirements: []
|
65
|
+
rubyforge_project:
|
66
|
+
rubygems_version: 1.8.23
|
67
|
+
signing_key:
|
68
|
+
specification_version: 3
|
69
|
+
summary: Description of your gem
|
70
|
+
test_files: []
|