moxify 0.1.5 → 0.1.7
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.
- data/.gitignore +1 -46
- data/Rakefile +1 -1
- data/app/views/welcome.html.erb +17 -0
- data/config/locales/de.yml +18 -0
- data/config/locales/en.yml +19 -0
- data/config/routes.rb +4 -44
- data/lib/moxify/version.rb +2 -2
- data/lib/moxify.rb +56 -15
- data/moxify.gemspec +6 -34
- data/spec/requests/routes_spec.rb +31 -0
- data/spec/views/sign_up_spec.rb +22 -0
- metadata +15 -8
- data/lib/gemspec.rb +0 -54
- data/lib/moxify/url_tempfile.rb +0 -17
data/.gitignore
CHANGED
@@ -1,49 +1,4 @@
|
|
1
|
-
*.gemspec
|
2
1
|
*.gem
|
3
2
|
.bundle
|
4
3
|
Gemfile.lock
|
5
|
-
pkg
|
6
|
-
|
7
|
-
|
8
|
-
# rcov generated
|
9
|
-
coverage
|
10
|
-
|
11
|
-
# rdoc generated
|
12
|
-
rdoc
|
13
|
-
|
14
|
-
# yard generated
|
15
|
-
doc
|
16
|
-
.yardoc
|
17
|
-
|
18
|
-
# bundler
|
19
|
-
.bundle
|
20
|
-
|
21
|
-
# jeweler generated
|
22
|
-
pkg
|
23
|
-
|
24
|
-
# Have editor/IDE/OS specific files you need to ignore? Consider using a global gitignore:
|
25
|
-
#
|
26
|
-
# * Create a file at ~/.gitignore
|
27
|
-
# * Include files you want ignored
|
28
|
-
# * Run: git config --global core.excludesfile ~/.gitignore
|
29
|
-
#
|
30
|
-
# After doing this, these files will be ignored in all your git projects,
|
31
|
-
# saving you from having to 'pollute' every project you touch with them
|
32
|
-
#
|
33
|
-
# Not sure what to needs to be ignored for particular editors/OSes? Here's some ideas to get you started. (Remember, remove the leading # of the line)
|
34
|
-
#
|
35
|
-
# For MacOS:
|
36
|
-
#
|
37
|
-
.DS_Store
|
38
|
-
#
|
39
|
-
# For TextMate
|
40
|
-
*.tmproj
|
41
|
-
tmtags
|
42
|
-
#
|
43
|
-
# For emacs:
|
44
|
-
#*~
|
45
|
-
#\#*
|
46
|
-
#.\#*
|
47
|
-
#
|
48
|
-
# For vim:
|
49
|
-
#*.swp
|
4
|
+
pkg
|
data/Rakefile
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
require 'bundler'
|
2
|
-
Bundler::GemHelper.install_tasks
|
2
|
+
Bundler::GemHelper.install_tasks
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<% content_for :header, t('.there_are_no_users') %>
|
2
|
+
<p>
|
3
|
+
<%=t('.remember_admin_location')%>
|
4
|
+
</p>
|
5
|
+
<p>
|
6
|
+
<strong><%= [request.protocol, request.host_with_port, '/admin'].join %></strong>
|
7
|
+
</p>
|
8
|
+
<p>
|
9
|
+
<%= t('.lets_start') %>
|
10
|
+
</p>
|
11
|
+
|
12
|
+
<div class='form-actions'>
|
13
|
+
<div class='form-actions-left'>
|
14
|
+
<%= link_to t('.continue'), new_user_registration_path,
|
15
|
+
:class => 'button' %>
|
16
|
+
</div>
|
17
|
+
</div>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
en:
|
2
|
+
plugins:
|
3
|
+
refinery_core:
|
4
|
+
title: Core
|
5
|
+
description: Core Plugin
|
6
|
+
refinery_dialogs:
|
7
|
+
description: Dialog Plugin
|
8
|
+
refinery_dashboard:
|
9
|
+
description: Gibt eine Übersicht über Aktivitäten
|
10
|
+
refinery_settings:
|
11
|
+
description: Einstellungen verwalten
|
12
|
+
welcome:
|
13
|
+
remember_admin_location: "Merken Sie sich Ihren Administrationsbereich:"
|
14
|
+
users:
|
15
|
+
create:
|
16
|
+
welcome: 'Willkommen %{who}'
|
17
|
+
forgot:
|
18
|
+
password_encryption: 'Sie müssen ihr Passwort zurücksetzen, da es Änderungen in der Art der Passwortverschlüsselung gab, sodass Passwörter noch stärker verschlüsselt werden als vorher.'
|
@@ -0,0 +1,19 @@
|
|
1
|
+
en:
|
2
|
+
plugins:
|
3
|
+
refinery_core:
|
4
|
+
title: Core
|
5
|
+
description: Core plugin
|
6
|
+
refinery_dialogs:
|
7
|
+
title: Dialogs
|
8
|
+
description: Dialogs plugin
|
9
|
+
refinery_dashboard:
|
10
|
+
description: Gives an overview of activity
|
11
|
+
refinery_settings:
|
12
|
+
description: Manage settings
|
13
|
+
welcome:
|
14
|
+
remember_admin_location: "Remember your admin area is at:"
|
15
|
+
users:
|
16
|
+
create:
|
17
|
+
welcome: 'Welcome %{who}'
|
18
|
+
forgot:
|
19
|
+
password_encryption: You need to reset your password because there were changes in the password encryption methods so that passwords are stored with even stronger encryption than before.
|
data/config/routes.rb
CHANGED
@@ -1,45 +1,5 @@
|
|
1
|
-
Refinery::Application.routes.draw do
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
get 'admin', :to => 'admin/dashboard#index', :as => :user_root
|
6
|
-
|
7
|
-
scope :except => :show do
|
8
|
-
namespace :admin do
|
9
|
-
|
10
|
-
# refinerycms-pages
|
11
|
-
resources :pages do
|
12
|
-
post :update_positions, :on => :collection
|
13
|
-
end
|
14
|
-
|
15
|
-
resources :pages_dialogs, :only => [] do
|
16
|
-
collection do
|
17
|
-
get :link_to
|
18
|
-
get :test_url
|
19
|
-
get :test_email
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
resources :page_parts, :only => [:new, :create, :destroy]
|
24
|
-
|
25
|
-
# refinerycms-images
|
26
|
-
resources :images
|
27
|
-
|
28
|
-
# refinerycms-authentication
|
29
|
-
resources :users
|
30
|
-
|
31
|
-
# refinerycms-resources
|
32
|
-
resources :resources
|
33
|
-
|
34
|
-
# refinerycms-settings
|
35
|
-
resources :settings,
|
36
|
-
:except => :show,
|
37
|
-
:as => :refinery_settings,
|
38
|
-
:controller => :refinery_settings
|
39
|
-
|
40
|
-
# refinerycms-dashboard
|
41
|
-
root :to => 'dashboard#index'
|
42
|
-
resources :dialogs, :only => :show
|
43
|
-
end
|
44
|
-
end
|
1
|
+
::Refinery::Application.routes.draw do
|
2
|
+
match '/refinery(/*path)', :to => redirect {|params, request|
|
3
|
+
"/admin#{"/#{params[:path]}" unless params[:path].blank?}"
|
4
|
+
}
|
45
5
|
end
|
data/lib/moxify/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module Moxify
|
2
|
-
VERSION = "0.1.
|
3
|
-
end
|
2
|
+
VERSION = "0.1.7"
|
3
|
+
end
|
data/lib/moxify.rb
CHANGED
@@ -1,23 +1,64 @@
|
|
1
|
-
require '
|
2
|
-
require 'moxify/url_tempfile'
|
1
|
+
require 'refinerycms-base'
|
3
2
|
|
4
|
-
module
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
3
|
+
module Moxify
|
4
|
+
|
5
|
+
class Engine < Rails::Engine
|
6
|
+
|
7
|
+
initializer "static assets" do |app|
|
8
|
+
app.middleware.insert_after ::ActionDispatch::Static, ::ActionDispatch::Static, "#{root}/public"
|
9
|
+
end
|
10
|
+
|
11
|
+
initializer "require dragonfly hook" do |app|
|
12
|
+
require 'moxify/dragonfly_quality_hook'
|
13
|
+
end
|
14
|
+
|
15
|
+
config.after_initialize do
|
16
|
+
::Refinery::Plugin.register do |plugin|
|
17
|
+
plugin.name ="moxification"
|
18
|
+
plugin.version = Moxify::VERSION
|
19
|
+
plugin.hide_from_menu = true
|
20
|
+
plugin.always_allow_access = true
|
9
21
|
end
|
22
|
+
end
|
23
|
+
|
24
|
+
# override refinery routes to use admin namespace
|
25
|
+
initializer "moxify.override_routing", :after => :disable_dependency_loading do |app|
|
10
26
|
|
11
|
-
|
12
|
-
|
27
|
+
# override routes
|
28
|
+
collected_routes = []
|
29
|
+
Rails.application.routes.routes.each do |route|
|
30
|
+
if route.path =~ /refinery/ and
|
31
|
+
not route.path =~ /^\/refinery\(\/\*path\)/ # this is our catch all route
|
32
|
+
|
33
|
+
route.instance_variable_set "@path", route.path.gsub(/refinery/, "admin")
|
34
|
+
|
35
|
+
# make sure we generate new path_info for changed paths
|
36
|
+
conditions = route.conditions
|
37
|
+
conditions[:path_info] = ::Rack::Mount::Strexp.compile(route.path, route.requirements, ::ActionDispatch::Routing::SEPARATORS, true)
|
38
|
+
|
39
|
+
# overwrite conditions with new path_info
|
40
|
+
route.instance_variable_set "@conditions", conditions
|
41
|
+
end
|
42
|
+
|
43
|
+
# add every route to our collection
|
44
|
+
collected_routes << route
|
13
45
|
end
|
46
|
+
|
47
|
+
# clear set
|
48
|
+
_routes = Rails.application.routes
|
49
|
+
_routes.clear!
|
50
|
+
_routes.disable_clear_and_finalize = false
|
14
51
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
plugin.hide_from_menu = true
|
19
|
-
plugin.always_allow_access = true
|
52
|
+
# now put our collected routes in
|
53
|
+
for route in collected_routes
|
54
|
+
_routes.add_route(route.app, route.conditions, route.requirements, route.defaults, route.name)
|
20
55
|
end
|
56
|
+
|
57
|
+
# finalize
|
58
|
+
_routes.finalize!
|
59
|
+
|
21
60
|
end
|
61
|
+
|
22
62
|
end
|
23
|
-
|
63
|
+
|
64
|
+
end
|
data/moxify.gemspec
CHANGED
@@ -6,44 +6,16 @@ Gem::Specification.new do |s|
|
|
6
6
|
s.name = %q{moxify}
|
7
7
|
s.version = Moxify::VERSION
|
8
8
|
s.description = 'A blanket full of toy cars for Refinery CMS'
|
9
|
-
s.date = %q{2011-04-20}
|
10
9
|
s.summary = 'My port of Refinery CMS'
|
11
10
|
s.email = %q{mail@bitflut.com}
|
12
11
|
s.homepage = %q{http://bitflut.com}
|
13
12
|
s.authors = ['Marian Andre']
|
14
13
|
s.license = %q{MIT}
|
15
|
-
s.require_paths = %w(lib)
|
16
|
-
s.files = Dir['lib/**/*', 'config/**/*', 'app/**/*', 'public/**/*']
|
17
14
|
|
18
|
-
s.
|
19
|
-
|
20
|
-
s.
|
21
|
-
|
22
|
-
|
23
|
-
'
|
24
|
-
'Rakefile',
|
25
|
-
'app',
|
26
|
-
'app/views',
|
27
|
-
'app/views/admin',
|
28
|
-
'app/views/admin/_head.html.erb',
|
29
|
-
'app/views/layouts',
|
30
|
-
'app/views/layouts/application.html.erb',
|
31
|
-
'app/views/shared',
|
32
|
-
'app/views/shared/_site_bar.html.erb',
|
33
|
-
'config',
|
34
|
-
'config/routes.rb',
|
35
|
-
'lib',
|
36
|
-
'lib/gemspec.rb',
|
37
|
-
'lib/moxify',
|
38
|
-
'lib/moxify/dragonfly_quality_hook.rb',
|
39
|
-
'lib/moxify/url_tempfile.rb',
|
40
|
-
'lib/moxify/version.rb',
|
41
|
-
'lib/moxify.rb',
|
42
|
-
'moxify.gemspec',
|
43
|
-
'public',
|
44
|
-
'public/stylesheets',
|
45
|
-
'public/stylesheets/refinery',
|
46
|
-
'public/stylesheets/refinery/moxify.css',
|
47
|
-
'public/stylesheets/refinery/site_bar.css'
|
48
|
-
]
|
15
|
+
s.files = `git ls-files`.split("\n")
|
16
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
17
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
18
|
+
s.require_paths = ["lib", "config", "app", "public"]
|
19
|
+
|
20
|
+
s.add_dependency 'refinerycms', '~> 0.9.9.18'
|
49
21
|
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe "Moxify routing" do
|
4
|
+
|
5
|
+
it "should redirect on /refinery visit", :type => :request do
|
6
|
+
get '/refinery'
|
7
|
+
response.should redirect_to '/admin'
|
8
|
+
end
|
9
|
+
|
10
|
+
it "should redirect past refinery", :type => :request do
|
11
|
+
get '/refinery/dialogs/images'
|
12
|
+
response.should redirect_to '/admin/dialogs/images'
|
13
|
+
end
|
14
|
+
|
15
|
+
it "should override refinery root to /admin", :type => :request do
|
16
|
+
refinery_root_path.should == "/admin"
|
17
|
+
end
|
18
|
+
|
19
|
+
it "should override plugin paths", :type => :request do
|
20
|
+
[
|
21
|
+
{name:'pages',path:'/admin/pages'},
|
22
|
+
{name:'dashboard',path:'/admin/dashboard'},
|
23
|
+
{name:'images',path:'/admin/images'},
|
24
|
+
{name:'resources',path:'/admin/resources'},
|
25
|
+
{name:'refinery_settings',path:'/admin/settings'}
|
26
|
+
].each do |plugin|
|
27
|
+
eval("admin_#{plugin[:name]}_path").should == plugin[:path]
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe "welcome.html.erb" do
|
4
|
+
|
5
|
+
context "given no user exists" do
|
6
|
+
|
7
|
+
before(:each) do
|
8
|
+
view.stub(:just_installed?) { true }
|
9
|
+
view.stub(:from_dialog?) { false }
|
10
|
+
end
|
11
|
+
|
12
|
+
it "should see /admin reminder" do
|
13
|
+
assign :user, stub_model(User).as_new_record
|
14
|
+
render
|
15
|
+
# view.content_for(:header).should contain("refinery")
|
16
|
+
render.should_not contain("Refinery")
|
17
|
+
render.should_not contain("refinery")
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: moxify
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.1.
|
5
|
+
version: 0.1.7
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Marian Andre
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-04-
|
13
|
+
date: 2011-04-28 00:00:00 +02:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -21,7 +21,7 @@ dependencies:
|
|
21
21
|
requirements:
|
22
22
|
- - ~>
|
23
23
|
- !ruby/object:Gem::Version
|
24
|
-
version: 0.9.9.
|
24
|
+
version: 0.9.9.18
|
25
25
|
type: :runtime
|
26
26
|
version_requirements: *id001
|
27
27
|
description: A blanket full of toy cars for Refinery CMS
|
@@ -39,15 +39,18 @@ files:
|
|
39
39
|
- app/views/admin/_head.html.erb
|
40
40
|
- app/views/layouts/application.html.erb
|
41
41
|
- app/views/shared/_site_bar.html.erb
|
42
|
+
- app/views/welcome.html.erb
|
43
|
+
- config/locales/de.yml
|
44
|
+
- config/locales/en.yml
|
42
45
|
- config/routes.rb
|
43
|
-
- lib/
|
46
|
+
- lib/moxify.rb
|
44
47
|
- lib/moxify/dragonfly_quality_hook.rb
|
45
|
-
- lib/moxify/url_tempfile.rb
|
46
48
|
- lib/moxify/version.rb
|
47
|
-
- lib/moxify.rb
|
48
49
|
- moxify.gemspec
|
49
50
|
- public/stylesheets/refinery/moxify.css
|
50
51
|
- public/stylesheets/refinery/site_bar.css
|
52
|
+
- spec/requests/routes_spec.rb
|
53
|
+
- spec/views/sign_up_spec.rb
|
51
54
|
has_rdoc: true
|
52
55
|
homepage: http://bitflut.com
|
53
56
|
licenses:
|
@@ -57,6 +60,9 @@ rdoc_options: []
|
|
57
60
|
|
58
61
|
require_paths:
|
59
62
|
- lib
|
63
|
+
- config
|
64
|
+
- app
|
65
|
+
- public
|
60
66
|
required_ruby_version: !ruby/object:Gem::Requirement
|
61
67
|
none: false
|
62
68
|
requirements:
|
@@ -76,5 +82,6 @@ rubygems_version: 1.5.2
|
|
76
82
|
signing_key:
|
77
83
|
specification_version: 3
|
78
84
|
summary: My port of Refinery CMS
|
79
|
-
test_files:
|
80
|
-
|
85
|
+
test_files:
|
86
|
+
- spec/requests/routes_spec.rb
|
87
|
+
- spec/views/sign_up_spec.rb
|
data/lib/gemspec.rb
DELETED
@@ -1,54 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
require 'pathname'
|
3
|
-
gempath = Pathname.new(File.expand_path('../../', __FILE__))
|
4
|
-
|
5
|
-
files = %w( Gemfile *.md **/**/{*,.rspec,.gitignore,.yardopts} ).map { |file| Pathname.glob(file) }.flatten
|
6
|
-
rejection_patterns = [
|
7
|
-
"^public/system",
|
8
|
-
"^config/(application|boot|environment).rb$",
|
9
|
-
"^config/initializers(\/.*\.rb)?$",
|
10
|
-
"^config/(database|i18n\-js).yml$",
|
11
|
-
"^lib\/gemspec\.rb",
|
12
|
-
".*\/cache\/",
|
13
|
-
"^script\/*",
|
14
|
-
"^vendor\/plugins\/?$",
|
15
|
-
"(^log|\.log)$",
|
16
|
-
"\.rbc$",
|
17
|
-
"^tmp(|/.+?)$",
|
18
|
-
".gem$",
|
19
|
-
"^doc($|\/)"
|
20
|
-
]
|
21
|
-
|
22
|
-
files.reject! do |f|
|
23
|
-
!f.exist? or (f.directory? and f.children.empty?) =~ %r{(#{rejection_patterns.join(')|(')})}
|
24
|
-
end
|
25
|
-
|
26
|
-
gemspec = <<EOF
|
27
|
-
# DO NOT EDIT THIS FILE DIRECTLY! Instead, use lib/gemspec.rb to generate it.
|
28
|
-
$:.push File.expand_path("../lib", __FILE__)
|
29
|
-
require "moxify/version"
|
30
|
-
|
31
|
-
Gem::Specification.new do |s|
|
32
|
-
s.name = %q{#{gemname = 'moxify'}}
|
33
|
-
s.version = Moxify::VERSION
|
34
|
-
s.description = 'A blanket full of toy cars for Refinery CMS'
|
35
|
-
s.date = %q{#{Time.now.strftime('%Y-%m-%d')}}
|
36
|
-
s.summary = 'My port of Refinery CMS'
|
37
|
-
s.email = %q{mail@bitflut.com}
|
38
|
-
s.homepage = %q{http://bitflut.com}
|
39
|
-
s.authors = ['Marian Andre']
|
40
|
-
s.license = %q{MIT}
|
41
|
-
s.require_paths = %w(lib)
|
42
|
-
s.files = Dir['lib/**/*', 'config/**/*', 'app/**/*', 'public/**/*']
|
43
|
-
|
44
|
-
s.add_dependency 'refinerycms', '~> 0.9.9.10'
|
45
|
-
|
46
|
-
s.files = [
|
47
|
-
'#{files.sort.join("',\n '")}'
|
48
|
-
]
|
49
|
-
end
|
50
|
-
EOF
|
51
|
-
|
52
|
-
|
53
|
-
(gemfile = gempath.join("#{gemname}.gemspec")).open('w') {|f| f.puts(gemspec)}
|
54
|
-
puts `cd #{gempath} && gem build #{gemfile}` if ARGV.any?{|a| a == "BUILD=true"}
|
data/lib/moxify/url_tempfile.rb
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
class URLTempfile < Tempfile
|
2
|
-
|
3
|
-
def initialize(url)
|
4
|
-
@url = URI.parse(url)
|
5
|
-
|
6
|
-
begin
|
7
|
-
super('url', Dir.tmpdir, :encoding => 'ascii-8bit')
|
8
|
-
|
9
|
-
Net::HTTP.start(@url.host) do |http|
|
10
|
-
resp = http.get(@url.path)
|
11
|
-
self.write resp.body
|
12
|
-
end
|
13
|
-
ensure
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
end
|