tramway-sport_school 1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +28 -0
- data/Rakefile +36 -0
- data/app/assets/config/tramway_sport_school_manifest.js +2 -0
- data/app/assets/images/tramway/sport_school/1.jpg +0 -0
- data/app/assets/images/tramway/sport_school/11.jpg +0 -0
- data/app/assets/images/tramway/sport_school/12.jpg +0 -0
- data/app/assets/images/tramway/sport_school/13.jpg +0 -0
- data/app/assets/images/tramway/sport_school/6.jpg +0 -0
- data/app/assets/images/tramway/sport_school/7.jpg +0 -0
- data/app/assets/images/tramway/sport_school/9.jpg +0 -0
- data/app/assets/images/tramway/sport_school/admin.jpg +0 -0
- data/app/assets/images/tramway/sport_school/annvs73.jpg +0 -0
- data/app/assets/images/tramway/sport_school/default.jpg +0 -0
- data/app/assets/images/tramway/sport_school/director.jpg +0 -0
- data/app/assets/images/tramway/sport_school/gosuslugi.jpg +0 -0
- data/app/assets/images/tramway/sport_school/knnvs.png +0 -0
- data/app/assets/images/tramway/sport_school/min_sport.jpg +0 -0
- data/app/assets/images/tramway/sport_school/rule_sport.jpg +0 -0
- data/app/assets/javascripts/tramway/sport_school/application.js.coffee +13 -0
- data/app/assets/javascripts/tramway/sport_school/jquery.scrollTo.min.js +7 -0
- data/app/assets/javascripts/tramway/sport_school/tramway/sport_school/web/welcome.js +2 -0
- data/app/assets/javascripts/tramway/sport_school/web/welcome.js +2 -0
- data/app/assets/stylesheets/tramway/sport_school/application.css.sass +7 -0
- data/app/controllers/tramway/sport_school/application_controller.rb +13 -0
- data/app/controllers/tramway/sport_school/web/welcome_controller.rb +13 -0
- data/app/decorators/tramway/sport_school/cards/trainer_decorator.rb +11 -0
- data/app/decorators/tramway/sport_school/document_decorator.rb +24 -0
- data/app/decorators/tramway/sport_school/features/kind_sport_decorator.rb +11 -0
- data/app/decorators/tramway/sport_school/institution_decorator.rb +9 -0
- data/app/decorators/tramway/sport_school/kind_sport_decorator.rb +24 -0
- data/app/decorators/tramway/sport_school/organization_decorator.rb +24 -0
- data/app/decorators/tramway/sport_school/trainer_decorator.rb +38 -0
- data/app/forms/tramway/sport_school/document_form.rb +9 -0
- data/app/forms/tramway/sport_school/institution_form.rb +14 -0
- data/app/forms/tramway/sport_school/kind_sport_form.rb +9 -0
- data/app/forms/tramway/sport_school/organization_form.rb +13 -0
- data/app/forms/tramway/sport_school/trainer_form.rb +14 -0
- data/app/helpers/tramway/sport_school/application_helper.rb +7 -0
- data/app/helpers/tramway/sport_school/web/welcome_helper.rb +5 -0
- data/app/jobs/tramway/sport_school/application_job.rb +6 -0
- data/app/mailers/tramway/sport_school/application_mailer.rb +8 -0
- data/app/models/tramway/sport_school/document.rb +18 -0
- data/app/models/tramway/sport_school/institution.rb +5 -0
- data/app/models/tramway/sport_school/kind_sport.rb +21 -0
- data/app/models/tramway/sport_school/organization.rb +21 -0
- data/app/models/tramway/sport_school/trainer.rb +23 -0
- data/app/views/tramway/sport_school/web/welcome/_adults.html.haml +23 -0
- data/app/views/tramway/sport_school/web/welcome/_contacts.html.haml +3 -0
- data/app/views/tramway/sport_school/web/welcome/_directors_text.html.haml +18 -0
- data/app/views/tramway/sport_school/web/welcome/_footer.html.haml +28 -0
- data/app/views/tramway/sport_school/web/welcome/_header.html.haml +17 -0
- data/app/views/tramway/sport_school/web/welcome/_parents.html.haml +15 -0
- data/app/views/tramway/sport_school/web/welcome/_schoolkids.html.haml +3 -0
- data/app/views/tramway/sport_school/web/welcome/index.html.haml +43 -0
- data/app/views/tramway/sport_school/web/welcome/shared/_block.html.haml +5 -0
- data/app/views/tramway/sport_school/web/welcome/shared/_kind_sport.html.haml +4 -0
- data/app/views/tramway/sport_school/web/welcome/shared/_man_card.html.haml +5 -0
- data/config/initializers/simple_form.rb +22 -0
- data/config/initializers/simple_form_bootstrap.rb +133 -0
- data/config/initializers/tramway.rb +8 -0
- data/config/locales/models.yml +64 -0
- data/config/locales/ru.yml +16 -0
- data/config/locales/state_machines.yml +28 -0
- data/config/routes.rb +11 -0
- data/db/migrate/20180117222018_create_tramway_user_users.rb +18 -0
- data/db/migrate/20180117222019_create_tramway_sport_school_kind_sports.rb +9 -0
- data/db/migrate/20180117222020_add_state_to_tramway_sport_school_kind_sports.rb +6 -0
- data/db/migrate/20180117222021_add_image_to_tramway_sport_school_kind_sports.rb +5 -0
- data/db/migrate/20180117222022_create_tramway_sport_school_trainers.rb +13 -0
- data/db/migrate/20180117223438_install_audited.rb +30 -0
- data/lib/tasks/tramway/sport_school_tasks.rake +4 -0
- data/lib/tramway/sport_school.rb +8 -0
- data/lib/tramway/sport_school/engine.rb +9 -0
- data/lib/tramway/sport_school/generates/install_generator.rb +37 -0
- data/lib/tramway/sport_school/generates/templates/add_contacts_to_tramway_sport_school_institutions.rb +6 -0
- data/lib/tramway/sport_school/generates/templates/add_degree_to_tramway_sport_school_trainers.rb +6 -0
- data/lib/tramway/sport_school/generates/templates/add_description_to_tramway_sport_school_kind_sports.rb +5 -0
- data/lib/tramway/sport_school/generates/templates/add_description_to_tramway_sport_school_trainers.rb +5 -0
- data/lib/tramway/sport_school/generates/templates/add_image_to_tramway_sport_school_kind_sports.rb +5 -0
- data/lib/tramway/sport_school/generates/templates/add_ll_to_tramway_sport_school_institutions.rb +6 -0
- data/lib/tramway/sport_school/generates/templates/add_state_to_tramway_sport_school_kind_sports.rb +6 -0
- data/lib/tramway/sport_school/generates/templates/create_tramway_sport_school_documents.rb +12 -0
- data/lib/tramway/sport_school/generates/templates/create_tramway_sport_school_institutions.rb +12 -0
- data/lib/tramway/sport_school/generates/templates/create_tramway_sport_school_kind_sports.rb +9 -0
- data/lib/tramway/sport_school/generates/templates/create_tramway_sport_school_organizations.rb +15 -0
- data/lib/tramway/sport_school/generates/templates/create_tramway_sport_school_trainers.rb +13 -0
- data/lib/tramway/sport_school/version.rb +5 -0
- metadata +146 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 0de897b3a211c18f8148a9a11fb9ae3c142e8e53569a33bda2a10cbc43a95a6f
|
4
|
+
data.tar.gz: 5cc54c55f4ac0f6bdf3027c4afe6948a8502c1820fe8bb0933f8f677a7a1091e
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 730ce4c0839af80f3e3b3f4811764c1c0233b8765d87e900316dcf0b3b31b1099eb8c0c830ac7d9a1d0c02299d739cf1d611ea0f88105bc27df71fea5845c2de
|
7
|
+
data.tar.gz: 21a5dd71ce1afbbd47bc9043a0fdbede7867d219bec115f769617793d94142d4cef08ae5b8edc14d7bcf4bee67d163586ce1d5c464f9d9dd7b788c074c4df86c
|
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright 2017 Pavel Kalashnikov
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
# Tramway::SportSchool
|
2
|
+
Short description and motivation.
|
3
|
+
|
4
|
+
## Usage
|
5
|
+
How to use my plugin.
|
6
|
+
|
7
|
+
## Installation
|
8
|
+
Add this line to your application's Gemfile:
|
9
|
+
|
10
|
+
```ruby
|
11
|
+
gem 'tramway-sport_school'
|
12
|
+
```
|
13
|
+
|
14
|
+
And then execute:
|
15
|
+
```bash
|
16
|
+
$ bundle
|
17
|
+
```
|
18
|
+
|
19
|
+
Or install it yourself as:
|
20
|
+
```bash
|
21
|
+
$ gem install tramway-sport_school
|
22
|
+
```
|
23
|
+
|
24
|
+
## Contributing
|
25
|
+
Contribution directions go here.
|
26
|
+
|
27
|
+
## License
|
28
|
+
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
data/Rakefile
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
begin
|
2
|
+
require 'bundler/setup'
|
3
|
+
rescue LoadError
|
4
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
5
|
+
end
|
6
|
+
|
7
|
+
require 'rdoc/task'
|
8
|
+
|
9
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
10
|
+
rdoc.rdoc_dir = 'rdoc'
|
11
|
+
rdoc.title = 'Tramway::SportSchool'
|
12
|
+
rdoc.options << '--line-numbers'
|
13
|
+
rdoc.rdoc_files.include('README.md')
|
14
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
15
|
+
end
|
16
|
+
|
17
|
+
APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__)
|
18
|
+
load 'rails/tasks/engine.rake'
|
19
|
+
|
20
|
+
|
21
|
+
load 'rails/tasks/statistics.rake'
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
require 'bundler/gem_tasks'
|
26
|
+
|
27
|
+
require 'rake/testtask'
|
28
|
+
|
29
|
+
Rake::TestTask.new(:test) do |t|
|
30
|
+
t.libs << 'test'
|
31
|
+
t.pattern = 'test/**/*_test.rb'
|
32
|
+
t.verbose = false
|
33
|
+
end
|
34
|
+
|
35
|
+
|
36
|
+
task default: :test
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,13 @@
|
|
1
|
+
#= require jquery
|
2
|
+
#= require jquery_ujs
|
3
|
+
#= require tramway/sport_school/jquery.scrollTo.min
|
4
|
+
#= require_tree .
|
5
|
+
|
6
|
+
$.extend($.scrollTo.defaults, {
|
7
|
+
axis: 'y',
|
8
|
+
duration: 2000
|
9
|
+
})
|
10
|
+
$(document).ready ->
|
11
|
+
$('.scroll').click (e) ->
|
12
|
+
e.preventDefault()
|
13
|
+
$.scrollTo "##{$(@).data('id')}"
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2007-2015 Ariel Flesler - aflesler<a>gmail<d>com | http://flesler.blogspot.com
|
3
|
+
* Licensed under MIT
|
4
|
+
* @author Ariel Flesler
|
5
|
+
* @version 2.1.2
|
6
|
+
*/
|
7
|
+
;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1<b.axis.length;u&&(d/=2);b.offset=h(b.offset);b.over=h(b.over);return this.each(function(){function k(a){var k=$.extend({},b,{queue:!0,duration:d,complete:a&&function(){a.call(q,e,b)}});r.animate(f,k)}if(null!==a){var l=n(this),q=l?this.contentWindow||window:this,r=$(q),e=a,f={},t;switch(typeof e){case "number":case "string":if(/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(e)){e= h(e);break}e=l?$(e):$(e,q);case "object":if(e.length===0)return;if(e.is||e.style)t=(e=$(e)).offset()}var v=$.isFunction(b.offset)&&b.offset(q,e)||b.offset;$.each(b.axis.split(""),function(a,c){var d="x"===c?"Left":"Top",m=d.toLowerCase(),g="scroll"+d,h=r[g](),n=p.max(q,c);t?(f[g]=t[m]+(l?0:h-r.offset()[m]),b.margin&&(f[g]-=parseInt(e.css("margin"+d),10)||0,f[g]-=parseInt(e.css("border"+d+"Width"),10)||0),f[g]+=v[m]||0,b.over[m]&&(f[g]+=e["x"===c?"width":"height"]()*b.over[m])):(d=e[m],f[g]=d.slice&& "%"===d.slice(-1)?parseFloat(d)/100*n:d);b.limit&&/^\d+$/.test(f[g])&&(f[g]=0>=f[g]?0:Math.min(f[g],n));!a&&1<b.axis.length&&(h===f[g]?f={}:u&&(k(b.onAfterFirst),f={}))});k(b.onAfter)}})};p.max=function(a,d){var b="x"===d?"Width":"Height",h="scroll"+b;if(!n(a))return a[h]-$(a)[b.toLowerCase()]();var b="client"+b,k=a.ownerDocument||a.document,l=k.documentElement,k=k.body;return Math.max(l[h],k[h])-Math.min(l[b],k[b])};$.Tween.propHooks.scrollLeft=$.Tween.propHooks.scrollTop={get:function(a){return $(a.elem)[a.prop]()}, set:function(a){var d=this.get(a);if(a.options.interrupt&&a._last&&a._last!==d)return $(a.elem).stop();var b=Math.round(a.now);d!==b&&($(a.elem)[a.prop](b),a._last=this.get(a))}};return p});
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Tramway
|
2
|
+
module SportSchool
|
3
|
+
class ApplicationController < ActionController::Base
|
4
|
+
layout 'tramway/landing/application'
|
5
|
+
protect_from_forgery with: :exception
|
6
|
+
before_action :application
|
7
|
+
|
8
|
+
def application
|
9
|
+
@application = ::Tramway::Core.application.model_class.first
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require_dependency "tramway/sport_school/application_controller"
|
2
|
+
|
3
|
+
class Tramway::SportSchool::Web::WelcomeController < ::Tramway::SportSchool::ApplicationController
|
4
|
+
def index
|
5
|
+
@kind_sports = ::Tramway::SportSchool::KindSport.active.published.map { |k| ::Tramway::SportSchool::Features::KindSportDecorator.new k }
|
6
|
+
@documents = ::Tramway::SportSchool::Document.active
|
7
|
+
@trainers = ::Tramway::SportSchool::Trainer.active.published.map { |t| ::Tramway::SportSchool::Cards::TrainerDecorator.new t }
|
8
|
+
@institution = ::Tramway::SportSchool::Institution.includes(:social_networks).first
|
9
|
+
@blocks = ::Tramway::Landing::Block.on_main_page
|
10
|
+
@organizations = ::Tramway::SportSchool::Organization.published
|
11
|
+
@news = ::Tramway::News::News.active.first(3).map { |t| ::Tramway::Landing::Cards::NewsDecorator.new t }
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
class Tramway::SportSchool::Cards::TrainerDecorator < ::Tramway::Landing::BlockTypes::CardsDecorator
|
2
|
+
def image
|
3
|
+
object.photo.card.url
|
4
|
+
end
|
5
|
+
|
6
|
+
def title
|
7
|
+
"#{object.last_name} #{object.first_name[0]}. #{object.patronymic[0]}."
|
8
|
+
end
|
9
|
+
|
10
|
+
delegate :description, to: :object
|
11
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
class Tramway::SportSchool::DocumentDecorator < ::Tramway::Core::ApplicationDecorator
|
2
|
+
class << self
|
3
|
+
def collections
|
4
|
+
[ :all ]
|
5
|
+
end
|
6
|
+
|
7
|
+
def list_attributes
|
8
|
+
[ :view_state ]
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
def view_state
|
13
|
+
object.human_view_state_name
|
14
|
+
end
|
15
|
+
|
16
|
+
def view_state_button_color(event)
|
17
|
+
case event
|
18
|
+
when :publish
|
19
|
+
:primary
|
20
|
+
when :hide
|
21
|
+
:secondary
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
class Tramway::SportSchool::KindSportDecorator < ::Tramway::Core::ApplicationDecorator
|
2
|
+
class << self
|
3
|
+
def collections
|
4
|
+
[ :all, :published, :hidden ]
|
5
|
+
end
|
6
|
+
|
7
|
+
def list_attributes
|
8
|
+
[ :view_state ]
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
def view_state
|
13
|
+
object.human_view_state_name
|
14
|
+
end
|
15
|
+
|
16
|
+
def view_state_button_color(event)
|
17
|
+
case event
|
18
|
+
when :publish
|
19
|
+
:primary
|
20
|
+
when :hide
|
21
|
+
:secondary
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
class Tramway::SportSchool::OrganizationDecorator < ::Tramway::Core::ApplicationDecorator
|
2
|
+
class << self
|
3
|
+
def collections
|
4
|
+
[ :all ]
|
5
|
+
end
|
6
|
+
|
7
|
+
def list_attributes
|
8
|
+
[ :view_state ]
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
def view_state
|
13
|
+
object.human_view_state_name
|
14
|
+
end
|
15
|
+
|
16
|
+
def view_state_button_color(event)
|
17
|
+
case event
|
18
|
+
when :publish
|
19
|
+
:primary
|
20
|
+
when :hide
|
21
|
+
:secondary
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
class Tramway::SportSchool::TrainerDecorator < ::Tramway::Core::ApplicationDecorator
|
2
|
+
class << self
|
3
|
+
def collections
|
4
|
+
[ :all ]
|
5
|
+
end
|
6
|
+
|
7
|
+
def list_attributes
|
8
|
+
[ :view_state ]
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
def full_name
|
13
|
+
"#{object.first_name} #{object.patronymic} #{object.last_name}"
|
14
|
+
end
|
15
|
+
|
16
|
+
def initial_short_name
|
17
|
+
"#{object.last_name} #{object.first_name[0]}. #{object.patronymic[0]}."
|
18
|
+
end
|
19
|
+
|
20
|
+
alias title full_name
|
21
|
+
|
22
|
+
delegate :photo, to: :object
|
23
|
+
delegate :degree, to: :object
|
24
|
+
delegate :description, to: :object
|
25
|
+
|
26
|
+
def view_state
|
27
|
+
object.human_view_state_name
|
28
|
+
end
|
29
|
+
|
30
|
+
def view_state_button_color(event)
|
31
|
+
case event
|
32
|
+
when :publish
|
33
|
+
:primary
|
34
|
+
when :hide
|
35
|
+
:secondary
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class Tramway::SportSchool::InstitutionForm < ::Tramway::Core::ApplicationForm
|
2
|
+
properties :title, :tagline, :logo, :state, :phone, :address, :longtitude, :latitude
|
3
|
+
|
4
|
+
def initialize(object)
|
5
|
+
form_object = super object
|
6
|
+
form_properties title: :string,
|
7
|
+
tagline: :string,
|
8
|
+
phone: :string,
|
9
|
+
address: :string,
|
10
|
+
latitude: :string,
|
11
|
+
longtitude: :string
|
12
|
+
form_object
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
class Tramway::SportSchool::KindSportForm < ::Tramway::Core::ApplicationForm
|
2
|
+
properties :title, :view_state, :image, :description
|
3
|
+
|
4
|
+
def initialize(object)
|
5
|
+
form_object = super object
|
6
|
+
form_properties title: :string, image: :file, description: :default
|
7
|
+
form_object
|
8
|
+
end
|
9
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class Tramway::SportSchool::OrganizationForm < ::Tramway::Core::ApplicationForm
|
2
|
+
properties :title, :description, :logo, :organization_type, :state, :view_state, :link
|
3
|
+
|
4
|
+
def initialize(object)
|
5
|
+
form_object = super object
|
6
|
+
form_properties title: :string,
|
7
|
+
description: :default,
|
8
|
+
organization_type: :default,
|
9
|
+
logo: :file,
|
10
|
+
link: :string
|
11
|
+
form_object
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class Tramway::SportSchool::TrainerForm < ::Tramway::Core::ApplicationForm
|
2
|
+
properties :first_name, :last_name, :patronymic, :photo, :degree, :view_state, :description
|
3
|
+
|
4
|
+
def initialize(object)
|
5
|
+
form_object = super object
|
6
|
+
form_properties first_name: :string,
|
7
|
+
last_name: :string,
|
8
|
+
patronymic: :string,
|
9
|
+
photo: :file,
|
10
|
+
degree: :default,
|
11
|
+
description: :text
|
12
|
+
form_object
|
13
|
+
end
|
14
|
+
end
|