tramway-partner 0.1.0 → 1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/decorators/tramway/partner/organization_decorator.rb +2 -0
- data/app/decorators/tramway/partner/organization_feature_decorator.rb +15 -0
- data/app/decorators/tramway/partner/partnership_decorator.rb +11 -0
- data/app/forms/tramway/partner/partnership_form.rb +13 -0
- data/app/models/tramway/partner/organization.rb +3 -0
- data/app/models/tramway/partner/partnership.rb +7 -0
- data/config/initializers/tramway.rb +4 -1
- data/config/locales/enumerize.yml +8 -0
- data/config/locales/models.yml +9 -0
- data/lib/tramway/partner/generators/install_generator.rb +2 -1
- data/lib/tramway/partner/generators/templates/create_tramway_partner_partnerships.rb +13 -0
- data/lib/tramway/partner/version.rb +1 -1
- metadata +8 -3
- data/app/views/layouts/tramway/partner/application.html.erb +0 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 39d722a850910a7ddcc2f5a7b32bac7cd0b0ac3c55f870d36fdf3455d9c6f92d
|
4
|
+
data.tar.gz: 5def838467324f34b9e567f09aed2cbf16386afefd69ee784910c5b9a323e501
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e1b19e54f1ae7a899b79498aac5d99eb3facababf8962ab8ce4445ff41083edaaa0effc6185bc02f95c0172e6d0bef05ac1fad6e5b144c9ead307d161af3860e
|
7
|
+
data.tar.gz: 0e50ef534c5eb1301b464ec287cfe46f4d3a44539d8d817f83c09b1417bdcaf769ef13878f59dc55d3dfdefb334e4acfbf8a62955fba97ebfca993a9036d1167
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class Tramway::Partner::OrganizationFeatureDecorator < ::Tramway::Landing::BlockTypes::FeaturesDecorator
|
2
|
+
delegate :title, to: :object
|
3
|
+
|
4
|
+
def text
|
5
|
+
object.title
|
6
|
+
end
|
7
|
+
|
8
|
+
def image
|
9
|
+
object.logo.mini.url
|
10
|
+
end
|
11
|
+
|
12
|
+
def external_link
|
13
|
+
object.url
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
class Tramway::Partner::PartnershipDecorator < ::Tramway::Core::ApplicationDecorator
|
2
|
+
class << self
|
3
|
+
def collections
|
4
|
+
[ :all ]
|
5
|
+
end
|
6
|
+
end
|
7
|
+
|
8
|
+
def title
|
9
|
+
"#{object.organization.title} #{I18n.t("enumerize.tramway/partner/partnership.partnership_type.#{object.partnership_type}")} #{object.partner.title}"
|
10
|
+
end
|
11
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class Tramway::Partner::PartnershipForm < ::Tramway::Core::ApplicationForm
|
2
|
+
properties :partner_id, :organization_id, :partnership_type, :partner_type
|
3
|
+
|
4
|
+
associations :partner, :organization
|
5
|
+
|
6
|
+
def initialize(object)
|
7
|
+
form_object = super object
|
8
|
+
form_properties partner: :polymorphic_association,
|
9
|
+
organization: :association,
|
10
|
+
partnership_type: :default
|
11
|
+
form_object
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,7 @@
|
|
1
|
+
class Tramway::Partner::Partnership < ::Tramway::Core::ApplicationRecord
|
2
|
+
belongs_to :organization, class_name: 'Tramway::Partner::Organization'
|
3
|
+
belongs_to :partner, polymorphic: true
|
4
|
+
|
5
|
+
enumerize :partnership_type, in: [ :organizator, :program, :support, :info ], default: :organizator
|
6
|
+
enumerize :partner_type, in: [ 'Tramway::Event::Event', 'Tramway::Conference::Unity' ]
|
7
|
+
end
|
data/config/locales/models.yml
CHANGED
@@ -2,12 +2,21 @@ ru:
|
|
2
2
|
activerecord:
|
3
3
|
models:
|
4
4
|
tramway/partner/organization: Партнёр
|
5
|
+
tramway/partner/partnership: Партнёрство
|
5
6
|
attributes:
|
6
7
|
tramway/partner/organization:
|
7
8
|
title: Название
|
8
9
|
logo: Логотип
|
9
10
|
url: Ссылка на сайт
|
11
|
+
tramway/partner/partnership:
|
12
|
+
partner: Сущность, для которой добавляем партнёра
|
13
|
+
partner_type: Тип сущности
|
14
|
+
organization: Партнёрская организация
|
15
|
+
partnership_type: Тип партнёрства
|
10
16
|
cases:
|
11
17
|
tramway/partner/organization:
|
12
18
|
plural: партнёры
|
13
19
|
genitive: партнёра
|
20
|
+
tramway/partner/partnership:
|
21
|
+
plural: партнёрства
|
22
|
+
genitive: партнёрство
|
@@ -16,7 +16,8 @@ module Tramway::Partner::Generators
|
|
16
16
|
|
17
17
|
def copy_migrations
|
18
18
|
migrations = [
|
19
|
-
:create_tramway_partner_organizations
|
19
|
+
:create_tramway_partner_organizations,
|
20
|
+
:create_tramway_partner_partnerships
|
20
21
|
]
|
21
22
|
migrations.each do |migration|
|
22
23
|
migration_template "#{migration}.rb", "db/migrate/#{migration}.rb"
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class CreateTramwayPartnerPartnerships < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
create_table :tramway_partner_partnerships do |t|
|
4
|
+
t.integer :organization_id
|
5
|
+
t.integer :partner_id
|
6
|
+
t.text :partner_type
|
7
|
+
t.text :partnership_type
|
8
|
+
t.text :state, default: :active
|
9
|
+
|
10
|
+
t.timestamps
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tramway-partner
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: '1.0'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pavel Kalashnikov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-12-
|
11
|
+
date: 2018-12-24 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Rails engine for partners
|
14
14
|
email:
|
@@ -25,14 +25,18 @@ files:
|
|
25
25
|
- app/assets/stylesheets/tramway/partner/application.css
|
26
26
|
- app/controllers/tramway/partner/application_controller.rb
|
27
27
|
- app/decorators/tramway/partner/organization_decorator.rb
|
28
|
+
- app/decorators/tramway/partner/organization_feature_decorator.rb
|
29
|
+
- app/decorators/tramway/partner/partnership_decorator.rb
|
28
30
|
- app/forms/tramway/partner/organization_form.rb
|
31
|
+
- app/forms/tramway/partner/partnership_form.rb
|
29
32
|
- app/helpers/tramway/partner/application_helper.rb
|
30
33
|
- app/jobs/tramway/partner/application_job.rb
|
31
34
|
- app/mailers/tramway/partner/application_mailer.rb
|
32
35
|
- app/models/tramway/partner/application_record.rb
|
33
36
|
- app/models/tramway/partner/organization.rb
|
34
|
-
- app/
|
37
|
+
- app/models/tramway/partner/partnership.rb
|
35
38
|
- config/initializers/tramway.rb
|
39
|
+
- config/locales/enumerize.yml
|
36
40
|
- config/locales/models.yml
|
37
41
|
- config/routes.rb
|
38
42
|
- lib/tasks/tramway/partner_tasks.rake
|
@@ -40,6 +44,7 @@ files:
|
|
40
44
|
- lib/tramway/partner/engine.rb
|
41
45
|
- lib/tramway/partner/generators/install_generator.rb
|
42
46
|
- lib/tramway/partner/generators/templates/create_tramway_partner_organizations.rb
|
47
|
+
- lib/tramway/partner/generators/templates/create_tramway_partner_partnerships.rb
|
43
48
|
- lib/tramway/partner/version.rb
|
44
49
|
homepage: https://github.com/ulmic/tramway-partner
|
45
50
|
licenses:
|
@@ -1,14 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<title>Tramway partner</title>
|
5
|
-
<%= stylesheet_link_tag "tramway/partner/application", media: "all" %>
|
6
|
-
<%= javascript_include_tag "tramway/partner/application" %>
|
7
|
-
<%= csrf_meta_tags %>
|
8
|
-
</head>
|
9
|
-
<body>
|
10
|
-
|
11
|
-
<%= yield %>
|
12
|
-
|
13
|
-
</body>
|
14
|
-
</html>
|