mix-rails 0.22.0 → 0.23.0
Sign up to get free protection for your applications and to get access to all the features.
- data/MIX_RAILS_VERSION +1 -1
- data/README.md +4 -13
- data/admix/app/controllers/admix/inherited_controller.rb +13 -1
- data/admix/lib/admix/version.rb +1 -1
- data/admix/spec/spec_helper.rb +3 -7
- data/lib/mix-rails.rb +1 -0
- data/mix-rails-albums/Gemfile +0 -8
- data/mix-rails-albums/app/assets/javascripts/backbone/models/photo.js.coffee +0 -1
- data/mix-rails-albums/app/assets/javascripts/backbone/templates/photos/photo_modal_edit.hamlc.erb +2 -2
- data/mix-rails-albums/app/assets/javascripts/models/fileitem.js +0 -1
- data/mix-rails-albums/app/models/admix/albums_datagrid.rb +1 -1
- data/mix-rails-albums/app/models/admix/photos_datagrid.rb +1 -1
- data/mix-rails-albums/app/models/album.rb +3 -3
- data/mix-rails-albums/app/models/concerns/album.rb +36 -0
- data/mix-rails-albums/app/models/photo.rb +7 -8
- data/mix-rails-albums/app/uploaders/albums/image_uploader.rb +4 -3
- data/mix-rails-albums/db/migrate/20130208020540_create_albums.rb +17 -0
- data/mix-rails-albums/db/migrate/20130208021030_create_photos.rb +15 -0
- data/mix-rails-albums/lib/mix-rails-albums.rb +1 -7
- data/mix-rails-albums/lib/mix-rails-albums/engine.rb +5 -0
- data/mix-rails-albums/lib/mix-rails-albums/version.rb +1 -1
- data/mix-rails-albums/mix-rails-albums.gemspec +0 -3
- data/mix-rails-albums/spec/models/album_spec.rb +5 -0
- data/mix-rails-albums/spec/models/picture_spec.rb +5 -0
- data/mix-rails-auth/Gemfile +0 -1
- data/mix-rails-auth/app/models/admix/roles_datagrid.rb +1 -1
- data/mix-rails-auth/app/models/admix/users_datagrid.rb +1 -1
- data/mix-rails-auth/app/models/role.rb +2 -15
- data/mix-rails-auth/app/models/user.rb +6 -46
- data/mix-rails-auth/config/initializers/devise.rb +2 -2
- data/mix-rails-auth/config/initializers/rolify.rb +1 -1
- data/mix-rails-auth/config/routes.rb +1 -1
- data/mix-rails-auth/db/migrate/20130206200605_devise_create_users.rb +46 -0
- data/mix-rails-auth/db/migrate/20130206200717_rolify_create_roles.rb +19 -0
- data/mix-rails-auth/lib/mix-rails-auth/engine.rb +6 -0
- data/mix-rails-auth/lib/mix-rails-auth/version.rb +1 -1
- data/mix-rails-auth/spec/models/user_spec.rb +5 -0
- data/mix-rails-core/Gemfile +1 -7
- data/mix-rails-core/app/models/admix/categories_datagrid.rb +1 -2
- data/mix-rails-core/app/models/attachment.rb +4 -3
- data/mix-rails-core/app/models/categorization.rb +5 -0
- data/mix-rails-core/app/models/category.rb +3 -2
- data/mix-rails-core/app/models/concerns/attachment.rb +0 -3
- data/mix-rails-core/app/uploaders/core/file_uploader.rb +1 -3
- data/mix-rails-core/config/initializers/carrierwave.rb +1 -5
- data/mix-rails-core/config/initializers/defaults_rails.rb +1 -0
- data/mix-rails-core/config/locales/core.pt-BR.yml +2 -1
- data/mix-rails-core/config/routes.rb +0 -2
- data/mix-rails-core/db/migrate/20130206195145_create_attachments.rb +10 -0
- data/mix-rails-core/db/migrate/20130206195329_create_categories.rb +8 -0
- data/mix-rails-core/db/migrate/20130207132351_create_categorizations.rb +9 -0
- data/mix-rails-core/lib/mix-rails-core.rb +3 -22
- data/mix-rails-core/lib/mix-rails-core/engine.rb +2 -4
- data/mix-rails-core/lib/mix-rails-core/version.rb +1 -1
- data/mix-rails-core/mix-rails-core.gemspec +1 -6
- data/mix-rails-core/spec/models/attachment_spec.rb +5 -0
- data/mix-rails-core/spec/models/categorization_spec.rb +5 -0
- data/mix-rails-core/spec/models/category_spec.rb +5 -0
- data/mix-rails-core/spec/spec_helper.rb +3 -3
- data/mix-rails-message-board/app/controllers/admix/board_messages_controller.rb +2 -2
- data/mix-rails-message-board/app/controllers/board_messages_controller.rb +1 -1
- data/mix-rails-message-board/app/models/admix/board_messages_datagrid.rb +3 -3
- data/mix-rails-message-board/app/models/admix/board_replies_datagrid.rb +3 -3
- data/mix-rails-message-board/app/models/board_message.rb +12 -21
- data/mix-rails-message-board/app/models/board_reply.rb +19 -20
- data/mix-rails-message-board/app/views/admix/board_messages/_form_fields.html.haml +1 -1
- data/mix-rails-message-board/app/views/admix/board_messages/_show.html.haml +4 -4
- data/mix-rails-message-board/app/views/admix/board_messages/_table_actions.html.haml +2 -2
- data/mix-rails-message-board/app/views/admix/board_replies/_form_fields.html.haml +1 -1
- data/mix-rails-message-board/app/views/admix/board_replies/_show.html.haml +2 -2
- data/mix-rails-message-board/app/views/admix/board_replies/_table_actions.html.haml +2 -2
- data/mix-rails-message-board/app/views/board_messages/_board_message.html.haml +1 -1
- data/mix-rails-message-board/config/locales/message-board.pt-BR.yml +6 -1
- data/mix-rails-message-board/db/migrate/20130208130406_create_board_messages.rb +13 -0
- data/mix-rails-message-board/db/migrate/20130208130716_create_board_replies.rb +14 -0
- data/mix-rails-message-board/lib/mix-rails-message-board/version.rb +1 -1
- data/mix-rails-settings/Gemfile +1 -0
- data/mix-rails-settings/app/models/admix/settings_datagrid.rb +1 -1
- data/mix-rails-settings/app/models/setting.rb +11 -18
- data/mix-rails-settings/app/uploaders/settings/image_uploader.rb +2 -3
- data/mix-rails-settings/db/migrate/20130206201915_create_settings.rb +13 -0
- data/mix-rails-settings/db/migrate/20130206212203_add_image_to_setting.rb +5 -0
- data/mix-rails-settings/lib/mix-rails-settings/engine.rb +5 -0
- data/mix-rails-settings/lib/mix-rails-settings/version.rb +1 -1
- data/mix-rails-settings/spec/models/setting_spec.rb +5 -0
- data/mix-rails-songs/app/models/admix/songs_datagrid.rb +1 -1
- data/mix-rails-songs/app/models/song.rb +9 -9
- data/mix-rails-songs/app/uploaders/songs/song_uploader.rb +2 -2
- data/mix-rails-songs/db/migrate/20130208034029_create_songs.rb +14 -0
- data/mix-rails-songs/lib/mix-rails-songs/engine.rb +5 -0
- data/mix-rails-songs/lib/mix-rails-songs/version.rb +1 -1
- data/mix-rails-videos/app/models/video.rb +8 -21
- data/mix-rails-videos/db/migrate/20130208040346_create_videos.rb +21 -0
- data/mix-rails-videos/lib/mix-rails-videos/version.rb +1 -1
- data/mix-rails-vouchers/Gemfile +0 -2
- data/mix-rails-vouchers/app/models/admix/vouchers_datagrid.rb +1 -1
- data/mix-rails-vouchers/app/models/voucher.rb +10 -14
- data/mix-rails-vouchers/app/models/voucher_user.rb +41 -46
- data/mix-rails-vouchers/app/uploaders/vouchers/photo_uploader.rb +2 -2
- data/mix-rails-vouchers/db/migrate/20130208143458_create_vouchers.rb +15 -0
- data/mix-rails-vouchers/db/migrate/20130208143613_create_voucher_users.rb +13 -0
- data/mix-rails-vouchers/lib/mix-rails-vouchers.rb +0 -1
- data/mix-rails-vouchers/lib/mix-rails-vouchers/version.rb +1 -1
- data/mix-rails-vouchers/mix-rails-vouchers.gemspec +0 -1
- data/mix-rails-wireframe/lib/mix-rails-wireframe/version.rb +1 -1
- data/mix-rails-writer/app/controllers/news_controller.rb +2 -2
- data/mix-rails-writer/app/models/admix/news_datagrid.rb +3 -7
- data/mix-rails-writer/app/models/news.rb +0 -1
- data/mix-rails-writer/app/models/post.rb +10 -19
- data/mix-rails-writer/app/uploaders/writer/image_uploader.rb +2 -2
- data/mix-rails-writer/app/views/admix/posts/_form_fields.html.haml +2 -2
- data/mix-rails-writer/app/views/admix/posts/_show.html.haml +2 -2
- data/mix-rails-writer/db/migrate/20130208042530_create_posts.rb +16 -0
- data/mix-rails-writer/lib/mix-rails-writer/engine.rb +5 -0
- data/mix-rails-writer/lib/mix-rails-writer/version.rb +1 -1
- data/mix-rails.gemspec +12 -11
- data/version.rb +1 -1
- metadata +92 -56
- data/mix-rails-albums/lib/concerns/models/album.rb +0 -43
- data/mix-rails-core/app/controllers/gridfs_controller.rb +0 -31
- data/mix-rails-core/config/initializers/mongoid.rb +0 -1
- data/mix-rails-core/lib/mix-rails-core/gridfs.rb +0 -32
- data/mix-rails-vouchers/test/functional/voucher_mailer_test.rb +0 -7
@@ -4,7 +4,7 @@ class Admix::BoardMessagesDatagrid
|
|
4
4
|
extend AdmixHelper
|
5
5
|
|
6
6
|
scope do
|
7
|
-
BoardMessage.
|
7
|
+
BoardMessage.order('date DESC')
|
8
8
|
end
|
9
9
|
|
10
10
|
filter :date do |value|
|
@@ -22,8 +22,8 @@ class Admix::BoardMessagesDatagrid
|
|
22
22
|
board_message.board_replies.count
|
23
23
|
end
|
24
24
|
|
25
|
-
column :
|
26
|
-
board_message.
|
25
|
+
column :status, header: input_label(:board_message, :status) do |board_message|
|
26
|
+
board_message.status.text
|
27
27
|
end
|
28
28
|
|
29
29
|
include Admix::TableActions
|
@@ -6,7 +6,7 @@ class Admix::BoardRepliesDatagrid
|
|
6
6
|
|
7
7
|
|
8
8
|
scope do
|
9
|
-
BoardReply
|
9
|
+
BoardReply.order('date DESC')
|
10
10
|
end
|
11
11
|
|
12
12
|
filter :date do |value|
|
@@ -20,8 +20,8 @@ class Admix::BoardRepliesDatagrid
|
|
20
20
|
board_reply.date.strftime("%d/%m/%Y")
|
21
21
|
end
|
22
22
|
|
23
|
-
column :
|
24
|
-
board_reply.
|
23
|
+
column :status, header: input_label(:board_reply, :status) do |board_reply|
|
24
|
+
board_reply.status.text
|
25
25
|
end
|
26
26
|
|
27
27
|
include Admix::TableActions
|
@@ -1,29 +1,20 @@
|
|
1
|
-
class BoardMessage
|
2
|
-
|
3
|
-
include Mongoid::Document
|
4
|
-
include Mongoid::Timestamps
|
5
|
-
include Mongoid::Paranoia
|
6
|
-
|
1
|
+
class BoardMessage < ActiveRecord::Base
|
7
2
|
extend Enumerize
|
8
3
|
|
9
|
-
|
10
|
-
|
11
|
-
field :message, type: String
|
12
|
-
field :date, type: DateTime, default: -> { Time.now }
|
13
|
-
field :approved, type: String
|
14
|
-
enumerize :approved, in: [:pending, :approved, :disapproved], default: :pending, predicates: true
|
15
|
-
|
16
|
-
|
17
|
-
validates_presence_of :name
|
18
|
-
validates_presence_of :email
|
19
|
-
validates_presence_of :message
|
20
|
-
validates_presence_of :date
|
4
|
+
attr_accessible :date, :email, :message, :name, :status
|
5
|
+
enumerize :status, in: [:pending, :approved, :disapproved], default: :pending, predicates: true
|
21
6
|
|
7
|
+
validates_presence_of :name, :email, :message, :date
|
22
8
|
validates :email, email: true
|
23
9
|
|
24
|
-
scope :approved, where(
|
25
|
-
scope :pending, where(
|
10
|
+
scope :approved, where(status: :approved)
|
11
|
+
scope :pending, where(status: :pending)
|
12
|
+
|
13
|
+
has_many :board_replies
|
26
14
|
|
27
|
-
embeds_many :board_replies, cascade_callbacks: true
|
28
15
|
|
16
|
+
default_value_for :date do
|
17
|
+
Time.now
|
18
|
+
end
|
19
|
+
|
29
20
|
end
|
@@ -1,28 +1,27 @@
|
|
1
|
-
class BoardReply
|
1
|
+
class BoardReply < ActiveRecord::Base
|
2
|
+
extend Enumerize
|
2
3
|
|
3
|
-
|
4
|
-
|
5
|
-
include Mongoid::Paranoia
|
4
|
+
attr_accessible :date, :email, :message, :name, :status
|
5
|
+
enumerize :status, in: [:pending, :approved, :disapproved], default: :pending, predicates: true
|
6
6
|
|
7
|
-
|
7
|
+
validates_presence_of :name, :email, :message, :date
|
8
|
+
validates :email, email: true
|
8
9
|
|
9
|
-
|
10
|
-
|
11
|
-
field :message, type: String
|
12
|
-
field :date, type: DateTime, default: -> { Time.now }
|
13
|
-
field :approved, type: String
|
14
|
-
enumerize :approved, in: [:pending, :approved, :disapproved], default: :approved, predicates: true
|
15
|
-
|
10
|
+
scope :approved, where(status: :approved)
|
11
|
+
scope :pending, where(status: :pending)
|
16
12
|
|
17
|
-
|
18
|
-
validates_presence_of :email
|
19
|
-
validates_presence_of :date
|
13
|
+
belongs_to :board_message
|
20
14
|
|
21
|
-
|
15
|
+
default_value_for :name do
|
16
|
+
Setting.app_title
|
17
|
+
end
|
22
18
|
|
23
|
-
|
24
|
-
|
19
|
+
default_value_for :email do
|
20
|
+
Setting.app_email
|
21
|
+
end
|
25
22
|
|
26
|
-
|
23
|
+
default_value_for :date do
|
24
|
+
Time.now
|
25
|
+
end
|
27
26
|
|
28
|
-
end
|
27
|
+
end
|
@@ -7,10 +7,10 @@
|
|
7
7
|
%dd= resource.message
|
8
8
|
%dt= input_label(:board_message, :date)
|
9
9
|
%dd= localize(resource.date)
|
10
|
-
%dt= input_label(:board_message, :
|
10
|
+
%dt= input_label(:board_message, :status)
|
11
11
|
%dd
|
12
|
-
= resource.
|
13
|
-
- if resource.disapproved? or resource.
|
12
|
+
= resource.status.text
|
13
|
+
- if resource.disapproved? or resource.status.pending?
|
14
14
|
= link_to image_tag('admix/icons/shield_go.png'), approve_admix_board_message_path(resource), method: :put, data: { confirm: t('message_board.confirms.approve') }, class: 'btn', title:'Aprovar'
|
15
|
-
- if resource.
|
15
|
+
- if resource.status.approved? or resource.status.pending?
|
16
16
|
= link_to image_tag('admix/icons/shield_delete.png'), disapprove_admix_board_message_path(resource), method: :put,data: { confirm: t('message_board.confirms.disapprove') }, class: 'btn', title:'Reprovar'
|
@@ -1,6 +1,6 @@
|
|
1
|
-
- if resource.disapproved? or resource.
|
1
|
+
- if resource.disapproved? or resource.status.pending?
|
2
2
|
= link_to image_tag('admix/icons/shield_go.png'), approve_admix_board_message_path(resource), method: :put, data: { confirm: t('message_board.confirms.approve') }, class: 'btn', title:'Aprovar'
|
3
|
-
- if resource.
|
3
|
+
- if resource.status.approved? or resource.status.pending?
|
4
4
|
= link_to image_tag('admix/icons/shield_delete.png'), disapprove_admix_board_message_path(resource), method: :put,data: { confirm: t('message_board.confirms.disapprove') }, class: 'btn', title:'Reprovar'
|
5
5
|
|
6
6
|
= link_to image_tag('admix/icons/comment_add.png'), new_admix_board_message_board_reply_path(resource), class: 'btn', title:'Adicionar comentário'
|
@@ -1,6 +1,6 @@
|
|
1
|
-
- if resource.disapproved? or resource.
|
1
|
+
- if resource.disapproved? or resource.status.pending?
|
2
2
|
= link_to image_tag('admix/icons/shield_go.png'), approve_admix_board_message_path(resource), method: :put, data: { confirm: t('message_board.confirms.approve') }, class: 'btn', title:'Aprovar'
|
3
|
-
- if resource.
|
3
|
+
- if resource.status.approved? or resource.status.pending?
|
4
4
|
= link_to image_tag('admix/icons/shield_delete.png'), disapprove_admix_board_message_path(resource), method: :put,data: { confirm: t('message_board.confirms.disapprove') }, class: 'btn', title:'Reprovar'
|
5
5
|
|
6
6
|
= link_to image_tag('admix/zoom.png'), resource_url(resource), class: 'btn', title:'Visualizar registro'
|
@@ -11,7 +11,12 @@ pt-BR:
|
|
11
11
|
models:
|
12
12
|
board_message: 'Mensagem'
|
13
13
|
board_reply: 'Resposta'
|
14
|
-
|
14
|
+
board_messages:
|
15
|
+
board_messages: 'Mural de recados'
|
16
|
+
board_message: 'Recado'
|
17
|
+
board_replies:
|
18
|
+
board_replies: 'Respostas do mural'
|
19
|
+
board_message: 'Resposta'
|
15
20
|
simple_form:
|
16
21
|
labels:
|
17
22
|
board_message:
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class CreateBoardReplies < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
create_table :board_replies do |t|
|
4
|
+
t.string :name
|
5
|
+
t.string :email
|
6
|
+
t.text :message
|
7
|
+
t.datetime :date
|
8
|
+
t.string :status
|
9
|
+
|
10
|
+
t.references :board_message
|
11
|
+
t.timestamps
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
data/mix-rails-settings/Gemfile
CHANGED
@@ -1,19 +1,11 @@
|
|
1
|
-
class Setting
|
2
|
-
|
3
|
-
|
4
|
-
field :name, type: String
|
5
|
-
field :key, type: String
|
6
|
-
field :value
|
7
|
-
field :activated, type: Boolean
|
8
|
-
field :system, type: Boolean, default: false
|
9
|
-
|
10
|
-
validates_uniqueness_of :key
|
1
|
+
class Setting < ActiveRecord::Base
|
2
|
+
attr_accessible :activated, :key, :name, :system, :value, :image, :image_cache
|
11
3
|
|
12
4
|
mount_uploader :image, Settings::ImageUploader
|
13
|
-
|
5
|
+
|
14
6
|
def self.app_title
|
15
7
|
begin
|
16
|
-
Setting.
|
8
|
+
Setting.where(key: 'app_title', activated: true).first.value
|
17
9
|
rescue
|
18
10
|
false
|
19
11
|
end
|
@@ -21,7 +13,7 @@ class Setting
|
|
21
13
|
|
22
14
|
def self.app_email
|
23
15
|
begin
|
24
|
-
Setting.
|
16
|
+
Setting.where(key: 'app_email', activated: true).first.value
|
25
17
|
rescue
|
26
18
|
false
|
27
19
|
end
|
@@ -29,7 +21,7 @@ class Setting
|
|
29
21
|
|
30
22
|
def self.admix_logo
|
31
23
|
begin
|
32
|
-
Setting.
|
24
|
+
Setting.where(key: 'admix_logo', activated: true).first
|
33
25
|
rescue
|
34
26
|
false
|
35
27
|
end
|
@@ -37,7 +29,7 @@ class Setting
|
|
37
29
|
|
38
30
|
def self.link_twitter
|
39
31
|
begin
|
40
|
-
Setting.
|
32
|
+
Setting.where(key: 'link_twitter', activated: true).first.value
|
41
33
|
rescue
|
42
34
|
false
|
43
35
|
end
|
@@ -45,7 +37,7 @@ class Setting
|
|
45
37
|
|
46
38
|
def self.link_facebook
|
47
39
|
begin
|
48
|
-
Setting.
|
40
|
+
Setting.where(key: 'link_facebook', activated: true).first.value
|
49
41
|
rescue
|
50
42
|
false
|
51
43
|
end
|
@@ -53,7 +45,7 @@ class Setting
|
|
53
45
|
|
54
46
|
def self.albums_watermark
|
55
47
|
begin
|
56
|
-
Setting.
|
48
|
+
Setting.where(key: 'albums_watermark', activated: true).first
|
57
49
|
rescue
|
58
50
|
false
|
59
51
|
end
|
@@ -61,10 +53,11 @@ class Setting
|
|
61
53
|
|
62
54
|
def self.albums_title
|
63
55
|
begin
|
64
|
-
Setting.
|
56
|
+
Setting.where(key: 'albums_title', activated: true).first.value
|
65
57
|
rescue
|
66
58
|
false
|
67
59
|
end
|
68
60
|
end
|
69
61
|
|
62
|
+
|
70
63
|
end
|
@@ -11,14 +11,13 @@ class Settings::ImageUploader < CarrierWave::Uploader::Base
|
|
11
11
|
include Sprockets::Helpers::RailsHelper
|
12
12
|
include Sprockets::Helpers::IsolatedHelper
|
13
13
|
|
14
|
-
|
15
|
-
storage :grid_fs
|
14
|
+
|
16
15
|
# storage :fog
|
17
16
|
|
18
17
|
# Override the directory where uploaded files will be stored.
|
19
18
|
# This is a sensible default for uploaders that are meant to be mounted:
|
20
19
|
def store_dir
|
21
|
-
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
|
20
|
+
"system/uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
|
22
21
|
end
|
23
22
|
|
24
23
|
def cache_dir
|