ish_manager 0.1.8.511 → 0.1.8.512

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d5da617577f4d4cd7125e957adba528c860f82b0024a39f17361bde54eff7b87
4
- data.tar.gz: e041829b23ec512a3b2fc54c25208871bab66479b5b7663e55080c6621d7ebca
3
+ metadata.gz: 18720af1555658dd23e08634f9fe38e03ebfbc1d3170fc1dd6288e6aeeb31c2f
4
+ data.tar.gz: 50653e9bb22591eaaa9f29aef09a8003ea22f1fd0ecac8fc42230a5eb7cf58e9
5
5
  SHA512:
6
- metadata.gz: c20a2bfb8d06792b9cda440ccfa616f8ce2f53f4ff3a8e501b1cf2c7194d496b8594843be55a5ab7e42c8a44efc7c7ef8c7b41f9eae68963cd9c5369ff01cb57
7
- data.tar.gz: 235a0ebc5b6697470e3b0bde0c3005c0be60187c57bae96a2462f7518f217d3c81b23f61743d468f2e1062de9e4f915fdd89086e3f2efa5ddb7486055bdcea62
6
+ metadata.gz: 9e674fd83f00302c0d8a2e643c0ce35e8a02e4211161a1826e1ad5d3b05eb527d32d4cb3e3e53d6c3eb96ad613093667135a452574f392bc56cdb3a86f2e7c9d
7
+ data.tar.gz: '01613396e821435311f2a2e2a5828bd2ac17c16a97ec2e90db4cc522e44a61fe8cef0178b0fb3e262d005e8a39be7facd0370e640f97d0042494060a0c404199'
@@ -14,12 +14,11 @@
14
14
  *= require ish_manager/email_templates
15
15
  *= require ish_manager/email
16
16
  *= require ish_manager/galleries
17
- *= require ish_manager/iro
18
- *= require ish_manager/iro1
19
17
  *= require ish_manager/leads
20
18
  *= require ish_manager/leadsets
21
19
  *= require ish_manager/leadsets
22
20
  *= require ish_manager/maps
21
+ *= require ish_manager/main_header
23
22
  *= require ish_manager/markers
24
23
  *= require ish_manager/office
25
24
  *= require ish_manager/pagination
@@ -388,50 +387,6 @@ textarea.large {
388
387
  /* M */
389
388
 
390
389
 
391
- .main-header {
392
- background: url('//d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2022/10/05192823/weather-bg.png');
393
- border-bottom: 2px solid red;
394
- margin-bottom: 1em;
395
-
396
- a:not(.chip),
397
- span.label {
398
- background: white;
399
- padding: .2em;
400
- }
401
-
402
- hr {
403
- margin-top: 0;
404
- }
405
-
406
- ul {
407
- margin: 0;
408
- padding: 0;
409
- display: flex;
410
- flex-wrap: wrap;
411
-
412
- li {
413
- margin: 0 10px 10px 0;
414
- display: inline-block;
415
- min-width: 220px;
416
-
417
- > div { /* for example .galleries--menu */
418
- display: inline-block;
419
- }
420
- }
421
- }
422
-
423
-
424
- }
425
- @media only screen and (max-width: 400px) {
426
- .main-header ul li {
427
- min-width: 45vw;
428
- }
429
- }
430
-
431
- .main-header.development {
432
- background: url('//d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2022/10/05192822/weather-bg-development.png');
433
- }
434
-
435
390
  #mainW {
436
391
  // border: 1px solid red;
437
392
  margin-top: -20px;
@@ -0,0 +1,44 @@
1
+
2
+ .main-header {
3
+ background: url('//d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2022/10/05192823/weather-bg.png');
4
+ border-bottom: 2px solid red;
5
+ margin-bottom: 1em;
6
+
7
+ a:not(.chip),
8
+ span.label {
9
+ background: white;
10
+ padding: .2em;
11
+ }
12
+
13
+ hr {
14
+ margin-top: 0;
15
+ }
16
+
17
+ ul {
18
+ margin: 0;
19
+ padding: 0;
20
+ display: flex;
21
+ flex-wrap: wrap;
22
+
23
+ li {
24
+ margin: 0 10px 10px 0;
25
+ display: inline-block;
26
+ min-width: 220px;
27
+
28
+ > div { /* for example .galleries--menu */
29
+ display: inline-block;
30
+ }
31
+ }
32
+ }
33
+
34
+
35
+ }
36
+ @media only screen and (max-width: 400px) {
37
+ .main-header ul li {
38
+ min-width: 45vw;
39
+ }
40
+ }
41
+
42
+ .main-header.development {
43
+ background: url('//d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2022/10/05192822/weather-bg-development.png');
44
+ }
@@ -19,3 +19,9 @@
19
19
  top: 0;
20
20
  }
21
21
 
22
+ /* W */
23
+ .w-100px {
24
+ width: 100px;
25
+ }
26
+
27
+
@@ -109,7 +109,6 @@ class IshManager::ApplicationController < ActionController::Base
109
109
  @locations_list = ::Gameui::Map.list
110
110
  @maps_list = ::Gameui::Map.list # @TODO: missing nonpublic!
111
111
  @office_actions_list = [[nil,nil]] + Office::Action.all.map { |a| [ a.slug, a.id ] }
112
- @option_watches_list = [nil] + Iro::OptionWatch.where({ kind: Iro::OptionWatch::KIND_GET_CHAINS }).order_by({ ticket: :desc }).map( &:ticker )
113
112
  @profiles_list = Ish::UserProfile.list
114
113
  @reports_list = Report.all.list
115
114
  @tags_list = [[nil,nil]] + WpTag.all.map { |t| [ t.name, t.id ] }
@@ -0,0 +1,48 @@
1
+
2
+ class ::IshManager::IroAlertsController < IshManager::ApplicationController
3
+
4
+ # before_action :set_lists
5
+
6
+ def create
7
+ @alert = Iro::Alert.new params[:iro_alert].permit!
8
+ authorize! :create, @alert
9
+ flag = @alert.save
10
+ if flag
11
+ flash[:notice] = 'Created iro alert.'
12
+ else
13
+ flash[:alert] = "Cannot create iro alert: #{@alert.errors.full_messages.join(', ')}."
14
+ end
15
+ redirect_to action: 'index'
16
+ end
17
+
18
+ def destroy
19
+ @w = Iro::Alert.find params[:id]
20
+ authorize! :destroy, @w
21
+ flag = @w.destroy
22
+ if flag
23
+ flash[:notice] = 'Success.'
24
+ else
25
+ flash[:alert] = @w.errors.full_messages.join(", ")
26
+ end
27
+ redirect_to action: 'index'
28
+ end
29
+
30
+ def index
31
+ authorize! :index, Iro::Alert
32
+ @alerts = Iro::Alert.order_by( ticker: :asc, direction: :asc, price: :desc)
33
+ @option_get_chains = Iro::OptionGet.all_get_chains
34
+ end
35
+
36
+ def update
37
+ @alert = Iro::Alert.find params[:id]
38
+ authorize! :update, @alert
39
+ flag = @alert.update_attributes params[:iro_alert].permit!
40
+ if flag
41
+ flash[:notice] = 'Updated iro alert.'
42
+ else
43
+ flash[:alert] = "Cannot update iro alert: #{@alert.errors.full_messages.join(', ')}."
44
+ end
45
+ redirect_to action: 'index'
46
+ end
47
+
48
+ end
@@ -0,0 +1,48 @@
1
+
2
+ class ::IshManager::IroWatchersController < IshManager::ApplicationController
3
+
4
+ # before_action :set_lists
5
+
6
+ # def create
7
+ # @alert = Iro::Alert.new params[:iro_alert].permit!
8
+ # authorize! :create, @alert
9
+ # flag = @alert.save
10
+ # if flag
11
+ # flash[:notice] = 'Created iro alert.'
12
+ # else
13
+ # flash[:alert] = "Cannot create iro alert: #{@alert.errors.full_messages.join(', ')}."
14
+ # end
15
+ # redirect_to action: 'index'
16
+ # end
17
+
18
+ # def destroy
19
+ # @w = Iro::Alert.find params[:id]
20
+ # authorize! :destroy, @w
21
+ # flag = @w.destroy
22
+ # if flag
23
+ # flash[:notice] = 'Success.'
24
+ # else
25
+ # flash[:alert] = @w.errors.full_messages.join(", ")
26
+ # end
27
+ # redirect_to action: 'index'
28
+ # end
29
+
30
+ def index
31
+ authorize! :index, Iro::Watcher
32
+ # @alerts = Iro::Alert.order_by( ticker: :asc, direction: :asc, price: :desc)
33
+ # @option_get_chains = Iro::OptionGet.all_get_chains
34
+ end
35
+
36
+ # def update
37
+ # @alert = Iro::Alert.find params[:id]
38
+ # authorize! :update, @alert
39
+ # flag = @alert.update_attributes params[:iro_alert].permit!
40
+ # if flag
41
+ # flash[:notice] = 'Updated iro alert.'
42
+ # else
43
+ # flash[:alert] = "Cannot update iro alert: #{@alert.errors.full_messages.join(', ')}."
44
+ # end
45
+ # redirect_to action: 'index'
46
+ # end
47
+
48
+ end
@@ -15,6 +15,7 @@
15
15
  %li <b>Email:</b> #{@current_profile.email}
16
16
  %li <b>Role name:</b> #{@current_profile.role_name}
17
17
  %li= link_to 'sidekiq', '/sidekiq', target: :_blank
18
+ %li= link_to 'Iron Warbler', '/iron_warbler'
18
19
 
19
20
  .col-sm-4
20
21
  %ul
@@ -133,26 +133,21 @@
133
133
 
134
134
 
135
135
 
136
- %i.fa.fa-compress.collapse-expand#collapseHeaderIro
137
- Iro Wor
138
- .a
139
- %ul
140
- -# %li
141
- -# = form_tag iro_watches_path, method: :get do
142
- -# -# = select_get :ticker, options_for_select( @option_watches_list )
143
- -# = link_to '[+]', new_iro_watch_path
144
-
145
- %li
146
- = link_to 'Watches', iro_watches_path
147
- %li
148
- = link_to 'Plots', 'http://localhost:3000/iron_warbler/NOPE-1', target: '_blank'
149
- %li
150
- = link_to 'Purses', iro_purses_path
151
- - Iro::Purse.all.map do |p|
152
- = "[#{p.id}"
153
- = link_to "show", iro_purse_path(p)
154
- = link_to "gui", iro_purse_path({ id: p.id, kind: 'show_gameui' })
155
- = "]"
156
- = link_to '[+]', new_iro_purse_path
157
- .c
136
+ -# %i.fa.fa-compress.collapse-expand#collapseHeaderIro Iro Wor
137
+ -# .a
138
+ -# %ul
139
+ -# %li
140
+ -# = link_to 'Alerts', iro_alerts_path
141
+ -# = link_to 'Watchers', iro_watchers_path
142
+ -# %li
143
+ -# = link_to 'Plots', 'http://localhost:3000/iron_warbler/NOPE-1', target: '_blank'
144
+ -# %li
145
+ -# = link_to 'Purses', iro_purses_path
146
+ -# - Iro::Purse.all.map do |p|
147
+ -# = "[#{p.id}"
148
+ -# = link_to "show", iro_purse_path(p)
149
+ -# = link_to "gui", iro_purse_path({ id: p.id, kind: 'show_gameui' })
150
+ -# = "]"
151
+ -# = link_to '[+]', new_iro_purse_path
152
+ -# .c
158
153
 
@@ -0,0 +1,30 @@
1
+
2
+ - url = alert.new_record? ? iro_alerts_path : iro_alert_path( alert )
3
+ .iro-alerts--form
4
+ - if !alert.new_record?
5
+ = button_to '[x]', iro_alert_path( alert ), method: :delete, data: { confirm: 'Are you sure?' }
6
+ = form_for alert, url: url, as: :iro_alert do |f|
7
+ .flex-row
8
+ .form-group.w-100px
9
+ - if alert.new_record?
10
+ %h5 New
11
+ - else
12
+ = f.select :state, options_for_select( Iro::Alert.states_list, selected: alert.state )
13
+ .form-group
14
+ -# = f.label :action
15
+ = f.select :action, options_for_select( Iro::Alert.actions_list, :selected => alert.action )
16
+ .form-group
17
+ -# = f.label :profile
18
+ = f.select :profile, options_for_select( Ish::UserProfile.list, selected: alert.profile_id ), {}, class: 'select2'
19
+ .form-group
20
+ %label.control-label When
21
+ = f.select :kind, options_for_select( Iro::Alert.kinds_list, selected: alert.kind )
22
+ = f.text_field :ticker, :placeholder => 'ticker'
23
+ .form-group
24
+ %label.control-label is
25
+ = f.select :direction, options_for_select( Iro::Alert.directions_list, selected: alert.direction )
26
+ .form-group
27
+ %label.control-label $
28
+ = f.number_field :mark, :step => 0.01, :placeholder => "0.01"
29
+ .form-group
30
+ = f.submit ">", :class => %w(btn blue)
@@ -1,12 +1,12 @@
1
1
 
2
2
  .iro-watches-index.padded
3
3
  .header
4
- .title Iro Watches
4
+ .title Iro Alerts
5
5
 
6
- - @watches.each do |watch|
7
- = render 'form', :watch => watch
8
- %h5 New
9
- = render 'form', :watch => Iro::OptionWatch.new
6
+ - @alerts.each do |alert|
7
+ = render 'form', alert: alert
8
+
9
+ = render 'form', :alert => Iro::Alert.new
10
10
 
11
11
  %hr
12
12
 
File without changes
File without changes
data/config/routes.rb CHANGED
@@ -41,20 +41,7 @@ IshManager::Engine.routes.draw do
41
41
  post 'invoices/:id/send-stripe', to: 'invoices#send_stripe', as: :send_invoice_stripe
42
42
  resources :invoices
43
43
 
44
- get 'iro_positins/roll_prep/:id', to: 'iro_purses#roll_prep', as: :iro_roll_prep
45
- resources :iro_positions
46
44
 
47
- get 'iro/max_pain/:ticker/on/:date', to: 'iro_option_gets#max_pain', as: :max_pain
48
- resources :iro_option_gets
49
-
50
- patch 'iro_purses/:id/show', to: 'iro_purses#update'
51
- get 'iro_purses/:id/edit', to: 'iro_purses#edit', as: :edit_iro_purse
52
- get 'iro_purses/:id/:kind', to: 'iro_purses#show', as: :iro_purse, defaults: { kind: 'show' } # kind: show_gameui
53
- resources :iro_purses
54
-
55
- resources :iro_strategies
56
-
57
- resources :iro_watches
58
45
 
59
46
 
60
47
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ish_manager
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8.511
4
+ version: 0.1.8.512
5
5
  platform: ruby
6
6
  authors:
7
7
  - piousbox
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-19 00:00:00.000000000 Z
11
+ date: 2023-12-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -462,10 +462,9 @@ files:
462
462
  - app/assets/stylesheets/ish_manager/email_messages.scss
463
463
  - app/assets/stylesheets/ish_manager/email_templates.scss
464
464
  - app/assets/stylesheets/ish_manager/galleries.scss
465
- - app/assets/stylesheets/ish_manager/iro.scss
466
- - app/assets/stylesheets/ish_manager/iro1.scss
467
465
  - app/assets/stylesheets/ish_manager/leads.scss
468
466
  - app/assets/stylesheets/ish_manager/leadsets.scss
467
+ - app/assets/stylesheets/ish_manager/main_header.scss
469
468
  - app/assets/stylesheets/ish_manager/maps.scss
470
469
  - app/assets/stylesheets/ish_manager/markers.scss
471
470
  - app/assets/stylesheets/ish_manager/office.scss
@@ -501,11 +500,12 @@ files:
501
500
  - app/controllers/ish_manager/galleries_controller.rb
502
501
  - app/controllers/ish_manager/image_assets_controller.rb
503
502
  - app/controllers/ish_manager/invoices_controller.rb
503
+ - app/controllers/ish_manager/iro_alerts_controller.rb
504
504
  - app/controllers/ish_manager/iro_option_gets_controller.rb
505
505
  - app/controllers/ish_manager/iro_positions_controller.rb
506
506
  - app/controllers/ish_manager/iro_purses_controller.rb
507
507
  - app/controllers/ish_manager/iro_strategies_controller.rb
508
- - app/controllers/ish_manager/iro_watches_controller.rb
508
+ - app/controllers/ish_manager/iro_watchers_controller.rb
509
509
  - app/controllers/ish_manager/lead_action_templates_controller.rb
510
510
  - app/controllers/ish_manager/lead_actions_controller.rb
511
511
  - app/controllers/ish_manager/leads_controller.rb
@@ -730,6 +730,9 @@ files:
730
730
  - app/views/ish_manager/invoices/new_pdf.haml
731
731
  - app/views/ish_manager/invoices/new_stripe.haml
732
732
  - app/views/ish_manager/invoices/show.haml
733
+ - app/views/ish_manager/iro_alerts/_form.haml
734
+ - app/views/ish_manager/iro_alerts/index.haml
735
+ - app/views/ish_manager/iro_alerts/max_pain.haml
733
736
  - app/views/ish_manager/iro_mailer/condor_followup_alerb.html.erb
734
737
  - app/views/ish_manager/iro_mailer/option_alert.html.erb
735
738
  - app/views/ish_manager/iro_mailer/stock_alert.html.erb
@@ -751,9 +754,8 @@ files:
751
754
  - app/views/ish_manager/iro_strategies/_form.haml
752
755
  - app/views/ish_manager/iro_strategies/edit.haml
753
756
  - app/views/ish_manager/iro_strategies/new.haml
754
- - app/views/ish_manager/iro_watches/_form.haml
755
- - app/views/ish_manager/iro_watches/index.haml
756
- - app/views/ish_manager/iro_watches/max_pain.haml
757
+ - app/views/ish_manager/iro_watchers/_form.haml
758
+ - app/views/ish_manager/iro_watchers/index.haml
757
759
  - app/views/ish_manager/kaminari/_first_page.html.erb
758
760
  - app/views/ish_manager/kaminari/_gap.html.erb
759
761
  - app/views/ish_manager/kaminari/_last_page.html.erb
@@ -1,490 +0,0 @@
1
-
2
- .iro-positions--form {
3
- border: 1px dashed blue;
4
- border-radius: 0.5em;
5
- padding: 0.5em;
6
-
7
- .field {
8
- display: flex;
9
- }
10
- }
11
-
12
- .iro-purses--form {
13
- textarea {
14
- min-width: 500px;
15
- min-height: 500px;
16
- }
17
- }
18
-
19
- .iro-purses-show,
20
- .iro-purses-show-gameui,
21
- .iro-purses-show-gameui-1,
22
- ._ {
23
- font-size: 14px;
24
-
25
- table {
26
- margin-top: 50px;
27
-
28
- .id {
29
- width: 20px;
30
- }
31
- .strategy {
32
- width: 30px;
33
- }
34
-
35
- thead {
36
- // border: 1px solid blue;
37
-
38
- position: relative;
39
- height: 1.5em;
40
-
41
-
42
- .price {
43
- background: cyan;
44
- }
45
- .to-close {
46
- background: #333;
47
- color: white;
48
- }
49
-
50
- td {
51
- // border: 1px solid red;
52
- position: relative;
53
-
54
-
55
- > div {
56
- // border: 1px solid green;
57
-
58
- transform: translate(-0.5em, -50%) rotate(-45deg);
59
- transform-origin: 0% 50%;
60
- position: absolute;
61
- width: 100px;
62
- top: 1em;
63
- left: 50%;
64
- z-index: 0;
65
- }
66
- }
67
- }
68
-
69
-
70
- td {
71
- padding: 0 .5em;
72
- }
73
-
74
- tbody {
75
- .begin-delta {
76
- min-width: 20px;
77
- }
78
- .must-roll,
79
- .next-symbol {
80
- text-align: center;
81
- }
82
-
83
- .must-roll,
84
- .should-roll,
85
- .next-symbol {
86
- background: #eee;
87
- }
88
-
89
- .net,
90
- .netp {
91
- font-weight: bold;
92
- text-align: right;
93
- }
94
-
95
- .should-roll > .aC {
96
- display: flex;
97
- justify-content: space-between;
98
- min-width: 75px;
99
- }
100
- }
101
- }
102
-
103
-
104
- .q {
105
- font-weight: bold;
106
- }
107
-
108
- }
109
- .iro-strategies {
110
- display: flex;
111
- flex-wrap: wrap;
112
- }
113
- .iro-strategies-edit,
114
- .iro-strategies-new {
115
- display: flex;
116
- flex-direction: column;
117
- align-items: flex-start;
118
- }
119
- .iro-strategies--form {
120
- border: 1px solid blue;
121
- border-radius: 0.5em;
122
- padding: 0.5em;
123
- margin-right: .5em;
124
-
125
- .field {
126
- display: flex;
127
- justify-content: space-between;
128
- }
129
- }
130
-
131
- .iro-position-statuses-selector form {
132
- display: flex;
133
- margin: 1em 0 0 0;
134
-
135
- .field {
136
- border: 1px solid gray;
137
- border-radius: .5em;
138
- padding: 0 1em;
139
- margin-right: 1em;
140
-
141
- display: flex;
142
- flex-direction: row-reverse;
143
- }
144
- }
145
-
146
-
147
-
148
-
149
-
150
-
151
-
152
- /*
153
- * GameUI in Purse
154
- * 2023-04-06 _vp_ Continue
155
- **/
156
- .iro-purses-show-gameui .gameuiW {
157
- border: 1px solid #ff9966;
158
- border-radius: 1em;
159
-
160
- position: relative;
161
-
162
- width: 1200px;
163
- height: 200px;
164
-
165
- margin-bottom: 10px;
166
-
167
- z-index: 0;
168
-
169
- .gameui {
170
-
171
- border-left: 1px dashed black;
172
-
173
- position: absolute;
174
-
175
- height: 100%;
176
- left: 50%;
177
- width: 600px;
178
-
179
- .gameuiC { /* 1/2 of the ground */
180
- // border: 2px solid #ff9900;
181
-
182
- background-color: brown;
183
-
184
- position: absolute;
185
-
186
- right: 0;
187
- left: 0;
188
- bottom: 0;
189
- height: 10px;
190
-
191
- &::before {
192
- content: "24";
193
- color: white;
194
- position: absolute;
195
- left: -200px;
196
- width: 200px;
197
- height: 2px;
198
- background: white;
199
- }
200
- &::after {
201
- content: "22";
202
- color: white;
203
- position: absolute;
204
- left: 200px;
205
- width: 200px;
206
- height: 2px;
207
- background: white;
208
- }
209
- }
210
-
211
- .elephantW {
212
- border: 2px solid black;
213
- position: absolute;
214
- bottom: 0;
215
- // left: ?? ; /* data: cc strike */
216
- }
217
-
218
- .elephant {
219
- // border: 2px solid yellow;
220
-
221
- background-image: url('https://d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2023/04/04103931/200x125-elephant-1rmTiny.png');
222
- width: 200px;
223
- height: 125px;
224
-
225
- position: absolute;
226
-
227
- left: -100px;
228
- padding-left: 100px;
229
- bottom: 0;
230
-
231
- &::after { /* arrow-up */
232
- content: "";
233
- position: absolute;
234
- bottom: 0;
235
- right: calc( 50% - 25px );
236
-
237
- width: 0;
238
- height: 0;
239
- border-left: 25px solid transparent;
240
- border-right: 25px solid transparent;
241
-
242
- border-bottom: 25px solid red;
243
- }
244
-
245
- .elephantC {
246
- // border: 10px solid black;
247
-
248
-
249
- position: absolute;
250
- color: #333;
251
- background: #ddd;
252
- display: inline-block;
253
- z-index: 2;
254
-
255
- .q {
256
- border: 2px solid #eee;
257
- color: #fff;
258
- background: #ccc;
259
- padding: 0.4em;
260
- border-radius: 50%;
261
-
262
- position: absolute;
263
- left: 50px;
264
- top: -25px;
265
- }
266
- }
267
- }
268
-
269
-
270
- .groundedW {
271
- position: absolute;
272
-
273
- right: -250px;
274
- bottom: 0;
275
-
276
- .grounded {
277
- border: 2px solid pink;
278
- background: rgba(255,255,255, 0.75);
279
- border-radius: 50%;
280
-
281
- width: 100px;
282
- height: 100px;
283
-
284
- background-image: url('https://d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2023/04/04105933/200x200-spearman-rmTiny.png');
285
- background-size: cover;
286
-
287
- .groundedStart {
288
- // border: 2px solid white;
289
- position: absolute;
290
- background: #999;
291
- bottom: 50px;
292
- top: 11px;
293
- left: 50%;
294
- right: -40px;
295
-
296
- z-index: -1;
297
- }
298
-
299
- .groundedCurrent {
300
- position: absolute;
301
- background: red;
302
- bottom: 45px;
303
- top: 52px;
304
- left: 50%;
305
- right: -30px;
306
- }
307
- }
308
- }
309
-
310
- .riderCurrent {
311
- background: #339933;
312
- left: 0;
313
- }
314
-
315
- .riderCurrent,
316
- .riderCurrent2,
317
- ._ {
318
- position: absolute;
319
- bottom: 7px;
320
- top: -7px;
321
- }
322
- .riderCurrent2 {
323
- display: none;
324
- lefts: 0;
325
- background: #993333;
326
- }
327
- .riderStart {
328
- // border: 2px solid #cc33ff;
329
- border-right: 2px solid #cc33ff;
330
-
331
- position: absolute;
332
- background: #999;
333
- // background: red;
334
- bottom: 50px;
335
- height: 35px;
336
- // right: 50px;
337
- // right: 0;
338
- bottom: 50px;
339
- // width: 176px;
340
- // left: 0;
341
-
342
- z-index: -1;
343
- }
344
-
345
- .riderStart2 {
346
- // border: 2px solid #30033f;
347
-
348
- position: absolute;
349
- background: #999;
350
- // background: red;
351
- bottom: 50px;
352
- height: 35px;
353
- // right: 50px;
354
- right: left;
355
- bottom: 50px;
356
- // width: 176px;
357
- // left: 0;
358
-
359
- z-index: -1;
360
- }
361
-
362
- .riderW {
363
- // border: 2px solid yellow;
364
-
365
- position: absolute;
366
-
367
- left: 0;
368
- top: 20px;
369
-
370
- .rider {
371
- // border: 2px solid orange;
372
-
373
- // background: rgba(255,255,255, 0.5);
374
- border-radius: 50%;
375
-
376
- background-image: url('https://d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2023/04/04105933/200x200-spearman-rmTiny.png');
377
- background-size: cover;
378
-
379
- position: absolute;
380
- width: 100px;
381
- left: -50px;
382
- height: 100px;
383
- bottom: 0;
384
- padding-left: 50px;
385
- padding-top: 50px;
386
-
387
-
388
-
389
- .riderC {
390
- border: 6px solid white;
391
- border-radius: 6px;
392
-
393
- position: absolute;
394
- left: calc( 50% - 6px );
395
- bottom: calc( 50% - 6px );
396
-
397
- }
398
- }
399
-
400
- .riderF {
401
- background-image: url('https://d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2023/04/05142539/200x200-spearman-rmFTiny.png');
402
- }
403
-
404
- }
405
-
406
- .windW {
407
- border: 2px solid blue;
408
-
409
- position: absolute;
410
- // left: 232px; /* Data: current underlying strike */
411
- bottom: 0;
412
-
413
-
414
- &::before { /* arrow-up */
415
- border-bottom: 25px solid yellow;
416
-
417
- content: "";
418
- position: absolute;
419
- bottom: 0;
420
- left: -25px;
421
- z-index: 1;
422
-
423
- border-left: 25px solid transparent;
424
- border-right: 25px solid transparent;
425
- }
426
-
427
- .wind {
428
- // border: 2px solid green;
429
-
430
- display: flex;
431
- flex-direction: column-reverse;
432
-
433
- .c-u-s {
434
- position: relative;
435
- z-index: 2;
436
-
437
- background: yellow;
438
- // color: white;
439
- display: inline-block
440
- }
441
-
442
- .windC {
443
- // border: 1px solid red;
444
-
445
- position: absolute;
446
- bottom: 0;
447
- left: 0;
448
-
449
- background-image: url('https://d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2023/04/04104623/200x200-windTiny.png');
450
- background-position: bottom center;
451
- margin-left: -25px;
452
-
453
- opacity: 0.5;
454
-
455
- width: 200px;
456
- height: 200px;
457
- }
458
- }
459
- }
460
- }
461
- }
462
- .next-position {
463
- .elephant {
464
- border: 1px solid white; /* 4.5% more */
465
- border-radius: 50% 50% 0 0;
466
- // background-size: 120%;
467
-
468
- background-image: url('https://d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2023/04/04103931/200x125-elephant-1rmTiny.png');
469
- width: 200px;
470
- height: 125px;
471
-
472
- padding-left: 100px;
473
-
474
- position: absolute;
475
- left: -100px;
476
- bottom: 0;
477
-
478
- z-index: 1;
479
- }
480
- .elephantLoss {
481
- border: 1px solid red;
482
- border-radius: 50% 50% 0 0;
483
- width: 200px;
484
- height: 125px;
485
-
486
- position: absolute;
487
- left: 0;
488
- bottom: 0;
489
- }
490
- }
@@ -1,117 +0,0 @@
1
-
2
- .show-gameui-1 {
3
- // background: red;
4
- position: relative;
5
-
6
- .gameuiCUSW {
7
- position: absolute;
8
- left: 50%;
9
- top: 0;
10
- .gameuiCUS {
11
- position: absolute;
12
- border-left: 2px dashed blue;
13
- padding: 0 10px;
14
- width: 100px;
15
- }
16
- }
17
- .gameuiW {
18
- // border: 1px solid red;
19
-
20
- .gameui {
21
- // border: 1px solid black;
22
- position: relative;
23
- border-bottom: 10px solid gray;
24
-
25
- background: url('https://d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2023/07/13184511/200x200-grid2.png');
26
- background-position: 50% center;
27
- width: 100%;
28
-
29
- .gameuiC {
30
- // border: 1px solid green;
31
- border-bottom: 10px solid green;
32
-
33
- width: 50%;
34
- height: 100%;
35
-
36
- position: absolute;
37
- left: 50%;
38
- bottom: -10px;
39
-
40
- .elephantW {
41
- border: 0px solid cyan;
42
- width: 1px;
43
- height: 100%;
44
-
45
- position: absolute;
46
- bottom: 0;
47
-
48
- > .amount {
49
- // border: 3px solid black;
50
-
51
- position: absolute;
52
- left: 0;
53
- bottom: 0;
54
- }
55
- > .strike {
56
- position: absolute;
57
- height: 1.4 em;
58
- bottom: 0;
59
- background: yellow;
60
-
61
- right: 0;
62
- width: 69px;
63
- border-right: 2px solid black;
64
-
65
- padding: 0 5px;
66
- }
67
- .elephant {
68
- border: 2px dashed green;
69
- position: absolute;
70
- bottom: 0;
71
- }
72
-
73
-
74
- .elephantC {
75
- position: absolute;
76
- bottom: 0;
77
-
78
- border: 2px dashed green;
79
-
80
- // color: white;
81
- display: flex;
82
- align-items: center;
83
- justify-content: center;
84
-
85
- }
86
- }
87
-
88
- .windW {
89
- border: 2px dashed blue;
90
- width: 1px;
91
- height: 100%;
92
- position: absolute;
93
- // left: calc( 200px * ( 23.5 - 23.46 ) );
94
-
95
- }
96
-
97
- .recklessDefenseW {
98
- height: 20px;
99
- border: 2px dashed green;
100
-
101
- position: absolute;
102
- bottom: 5px;
103
-
104
- .recklessDefense {
105
- .recklessDefenseC {
106
- height: 20px;
107
- border-left: 2px dashed green;
108
- position: absolute;
109
- right: 0;
110
- }
111
- }
112
- }
113
-
114
- }
115
- }
116
- }
117
- }
@@ -1,48 +0,0 @@
1
-
2
- class ::IshManager::IroWatchesController < IshManager::ApplicationController
3
-
4
- # before_action :set_lists
5
-
6
- def create
7
- @option_watch = Iro::OptionWatch.new params[:iro_watch].permit!
8
- authorize! :create, @option_watch
9
- flag = @option_watch.save
10
- if flag
11
- flash[:notice] = 'Created option watch.'
12
- else
13
- flash[:alert] = "Cannot create option watch: #{@option_watch.errors.full_messages.join(', ')}."
14
- end
15
- redirect_to action: 'index'
16
- end
17
-
18
- def destroy
19
- @w = Iro::OptionWatch.find params[:id]
20
- authorize! :destroy, @w
21
- flag = @w.destroy
22
- if flag
23
- flash[:notice] = 'Success.'
24
- else
25
- flash[:alert] = @w.errors.full_messages.join(", ")
26
- end
27
- redirect_to action: 'index'
28
- end
29
-
30
- def index
31
- authorize! :index, Iro::OptionWatch
32
- @watches = Iro::OptionWatch.order_by( ticker: :asc, direction: :asc, price: :desc)
33
- @option_get_chains = Iro::OptionGet.all_get_chains
34
- end
35
-
36
- def update
37
- @option_watch = Iro::OptionWatch.find params[:id]
38
- authorize! :update, @option_watch
39
- flag = @option_watch.update_attributes params[:iro_watch].permit!
40
- if flag
41
- flash[:notice] = 'Updated option watch.'
42
- else
43
- flash[:alert] = "Cannot update option watch: #{@option_watch.errors.full_messages.join(', ')}."
44
- end
45
- redirect_to action: 'index'
46
- end
47
-
48
- end
@@ -1,26 +0,0 @@
1
-
2
- - url = watch.new_record? ? iro_watches_path : iro_watch_path(watch)
3
- .iro-watches--form
4
- = form_for watch, url: url, as: :iro_watch do |f|
5
- .flex-row
6
- .form-group
7
- = f.select :state, options_for_select( Iro::OptionWatch.states_list, selected: watch.state )
8
- .form-group
9
- = f.select :kind, options_for_select( Iro::OptionWatch.kinds_list, selected: watch.kind )
10
- .form-group
11
- -# = f.label :action
12
- = f.select :action, options_for_select( Iro::OptionWatch.actions_list, :selected => watch.action )
13
- .form-group
14
- -# = f.label :profile
15
- = f.select :profile, options_for_select( Ish::UserProfile.list, selected: watch.profile_id ), {}, class: 'select2'
16
- .form-group
17
- %label.control-label When
18
- = f.text_field :ticker, :placeholder => 'ticker'
19
- .form-group
20
- %label.control-label is
21
- = f.select :direction, options_for_select( Iro::OptionWatch.directions_list, selected: watch.direction )
22
- .form-group
23
- %label.control-label $
24
- = f.number_field :mark, :step => 0.01, :placeholder => "0.01"
25
- .form-group
26
- = f.submit ">", :class => %w(btn blue)