Skip to content

Commit 2554d0a

Browse files
'#TDP - IW Realise parent class for modal_window
1 parent a7dd7c3 commit 2554d0a

File tree

9 files changed

+134
-268
lines changed

9 files changed

+134
-268
lines changed

IndividualWork/log.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,8 @@ I, [2023-05-16T22:54:24.218356 #20469] INFO -- : Deleting entity with ID {[6]
2929
I, [2023-05-16T23:28:07.838345 #23257] INFO -- : Deleting entity with ID {[7]
3030
I, [2023-05-17T14:38:42.241666 #2073] INFO -- : Deleting entity with ID {[21]
3131
I, [2023-05-18T20:44:55.531460 #52941] INFO -- : Deleting entity with ID {[4]
32+
I, [2023-05-20T09:24:23.839125 #2831] INFO -- : Deleting entity with ID {[12, 22]
33+
I, [2023-05-20T09:25:00.188364 #2831] INFO -- : Deleting entity with ID {[23]
34+
I, [2023-05-20T09:30:27.108956 #3100] INFO -- : Deleting entity with ID {[24]
35+
I, [2023-05-20T09:46:20.641261 #4299] INFO -- : Deleting entity with ID {[25]
36+
I, [2023-05-20T10:18:51.469229 #5773] INFO -- : Deleting entity with ID {[9]

IndividualWork/logger/log_create.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,3 +244,9 @@ I, [2023-05-18T20:42:13.112478 #52795] INFO -- : Creating element with params {
244244
I, [2023-05-18T21:22:35.953615 #54330] INFO -- : Creating element with params {"id_owner"=>"6", "model"=>"X6", "color"=>"white", "surname_owner"=>"Kocpit", "mark"=>"BMW"}
245245
I, [2023-05-18T21:56:46.069509 #56984] INFO -- : Creating element with params {"id_owner"=>"5", "model"=>"X6", "color"=>"black", "surname_owner"=>"Kolins", "mark"=>"BMW"}
246246
I, [2023-05-18T21:57:06.918367 #56984] INFO -- : Creating element with params {"id_owner"=>"8", "model"=>"GL-3", "color"=>"pink", "surname_owner"=>"Kolins", "mark"=>"Mersedes-Benz"}
247+
I, [2023-05-20T09:24:14.591281 #2831] INFO -- : Creating element with params {"name"=>"Owner", "surname"=>"Owenrs", "lastname"=>"Ownerl", "phone"=>"+79562562535", "mail"=>"exam@mail.ru"}
248+
I, [2023-05-20T09:24:55.174196 #2831] INFO -- : Creating element with params {"name"=>"Owner", "surname"=>"Owners", "lastname"=>"Ownerl", "phone"=>"+79562562535", "mail"=>"exma@mail.ru"}
249+
I, [2023-05-20T09:30:22.213572 #3100] INFO -- : Creating element with params {"name"=>"Ownern", "surname"=>"Owners", "lastname"=>"", "phone"=>"+79562563256", "mail"=>nil}
250+
I, [2023-05-20T09:45:36.481855 #4299] INFO -- : Creating element with params {"name"=>"Ownern", "surname"=>"Owners", "lastname"=>"Ownerl", "phone"=>"+79562563625", "mail"=>"exp@mail.ru", "id"=>nil}
251+
I, [2023-05-20T10:07:48.667519 #5369] INFO -- : Creating element with params {"name"=>"Max", "surname"=>"Petrenko", "lastname"=>"", "phone"=>"+78558565625", "mail"=>"max@gmail.com", "exp_year"=>14}
252+
I, [2023-05-20T10:18:46.562407 #5773] INFO -- : Creating element with params {"name"=>"Name", "surname"=>"Surname", "lastname"=>"Lastname", "phone"=>"+78565698565", "mail"=>nil, "exp_year"=>15}

IndividualWork/logger/log_update.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,7 @@ I, [2023-05-16T10:07:55.513020 #5853] INFO -- : Updating element with ID 10 and
3939
I, [2023-05-16T12:22:05.922161 #14154] INFO -- : Updating element with ID 5 and params {"name"=>"Kiss", "surname"=>"Pussi", "lastname"=>"Nassi", "phone"=>"+78569568525", "mail"=>"swao_s2@mail.ru", "exp_year"=>5, "id"=>5}
4040
I, [2023-05-16T23:28:04.960579 #23257] INFO -- : Updating element with ID 7 and params {"name"=>"Gardin", "surname"=>"Sur", "lastname"=>"Lasd", "phone"=>"+7956856952", "mail"=>"ama@mail.ru", "exp_year"=>15, "id"=>7}
4141
I, [2023-05-18T21:24:51.071250 #54515] INFO -- : Updating element with ID 5 and params {"id"=>5, "id_owner"=>6, "model"=>"GL-3", "color"=>"white", "surname_owner"=>"Kocpit", "mark"=>"Mersedes-Benz"}
42+
I, [2023-05-20T09:35:35.553136 #3865] INFO -- : Updating element with ID 5 and params {"name"=>"Pisu", "surname"=>"Kolins", "lastname"=>nil, "phone"=>"89562531532", "mail"=>"exm@mail.ru", "id"=>5}
43+
I, [2023-05-20T09:46:16.824917 #4299] INFO -- : Updating element with ID 25 and params {"name"=>"Ownern", "surname"=>"Surnameower", "lastname"=>"Ownerl", "phone"=>"+79562563625", "mail"=>"exp@mail.ru", "id"=>25}
44+
I, [2023-05-20T10:00:41.149502 #4934] INFO -- : Updating element with ID 2 and params {"name"=>"Денис", "surname"=>"Дроздов", "lastname"=>"Авдеевич", "phone"=>"+75259561235", "mail"=>"guar7@gmail.com", "exp_year"=>5, "id"=>2}
45+
I, [2023-05-20T10:18:11.811320 #5773] INFO -- : Updating element with ID 8 and params {"name"=>"Max", "surname"=>"Petrenko", "lastname"=>nil, "phone"=>"+78558565625", "mail"=>"max@gmail.com", "exp_year"=>10, "id"=>8}

IndividualWork/main.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,6 @@ def self.connection_window_controller(controller,window)
144144
Factory.connection_controller_window(controller_modal_change,view)
145145
Factory.connection_window_controller(controller,view)
146146

147-
view.showData(1,8)
147+
view.showData(1,30)
148148
application.create
149149
application.run
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
2+
require 'fox16'
3+
4+
include Fox
5+
6+
class Modal_Window < FXDialogBox
7+
attr_writer :controller
8+
9+
def initialize(app,name_modal,width:300,height:200)
10+
super(app, name_modal, :width => width, :height => height)
11+
@app = app
12+
13+
end
14+
15+
def addTimeoutCheck(data:nil)
16+
if(self.shown?) then
17+
@timeout_id = @app.addTimeout(200, :repeat => true) do
18+
if require_field_to_fill() then
19+
@ok_btn.enable
20+
else
21+
@ok_btn.disable
22+
end
23+
end
24+
end
25+
end
26+
27+
private
28+
29+
attr_reader :controller
30+
31+
def create_close_button(horizontal_frame)
32+
close_button = FXButton.new(horizontal_frame, "Close", nil,nil, :opts => BUTTON_NORMAL|LAYOUT_RIGHT)
33+
close_button.connect(SEL_COMMAND) do |sender, selector, data|
34+
removeTimeout(@timeout_id,@app)
35+
self.hide
36+
end
37+
close_button.layoutHints |= LAYOUT_TOP|LAYOUT_RIGHT|LAYOUT_FILL_X
38+
end
39+
40+
def create_inputs(matrix)
41+
@name = create_textField(matrix,"Name",method(:check_letter),method(:validate_surname_name_lastname))
42+
@surname = create_textField(matrix,"Surname",method(:check_letter),method(:validate_surname_name_lastname))
43+
@lastname = create_textField(matrix,"Lastname",method(:check_letter),method(:validate_surname_name_lastname))
44+
@phone = create_textField(matrix,"Phone",method(:check_phone),method(:valid_phone))
45+
@mail = create_textField(matrix,"Mail",method(:check_let_dig_specilSymbol),method(:valid_mail))
46+
end
47+
48+
def removeTimeout(timerId,app)
49+
app.removeTimeout(timerId)
50+
end
51+
52+
53+
def check_letter(elem)
54+
elem.match?(/^[A-zА-яЁё\s]+$/)
55+
end
56+
57+
def check_phone(elem)
58+
elem.match?(/^\+?[0-9]*$/)
59+
end
60+
61+
def check_let_dig_specilSymbol(elem)
62+
elem.match?(/\w+|[@]|[\.]|[:]|[\\]/)
63+
end
64+
65+
def validate_surname_name_lastname(text)
66+
text.match?(/^[A-ZА-Я]([a-z]+|[a-яё]+)$/)
67+
end
68+
69+
def valid_phone(text)
70+
text.match?(/^(\+7|8)[0-9]{9,15}$$/)
71+
end
72+
73+
def valid_mail(text)
74+
text.match?(/^\w+[@][a-z]+[\.][a-z]{2,20}/)
75+
end
76+
end

IndividualWork/views/modal_window_guards/modal_window_change_guard.rb

Lines changed: 9 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,19 @@
11

2-
require 'fox16'
3-
require 'clipboard'
2+
require_relative '../modal_Window.rb'
43

5-
include Fox
64

7-
class Modal_change_guard < FXDialogBox
5+
class Modal_change_guard < Modal_Window
86

9-
attr_writer :controller
107
def initialize(app)
11-
@app = app
12-
13-
super(app, "Change owner", :width => 400, :height => 250)
8+
super(app, "Change guard", width:350, height:250)
9+
1410

1511
@guard_field = {"name" =>nil,"surname" => nil, "lastname" => nil,
1612
"phone" => nil,"mail" => nil, "exp_year" => nil,"id" => nil}
1713
matrix = FXMatrix.new(self, 2, MATRIX_BY_COLUMNS|LAYOUT_FILL_X)
1814

19-
@name = create_textField(matrix,"Name",method(:check_letter),method(:validate_surname_name_lastname))
20-
@surname = create_textField(matrix,"Surname",method(:check_letter),method(:validate_surname_name_lastname))
21-
@lastname = create_textField(matrix,"Lastname",method(:check_letter),method(:validate_surname_name_lastname))
22-
@phone = create_textField(matrix,"Phone",method(:check_phone),method(:valid_phone))
15+
create_inputs(matrix)
2316
@exp_year = create_textField(matrix,"exp_year",method(:check_years),method(:valid_years))
24-
@mail = create_textField(matrix,"Mail",method(:check_let_dig_specilSymbol),method(:valid_mail))
2517

2618
@fields = {"name"=>@name,"surname"=>@surname,"lastname" =>@lastname,
2719
"phone" => @phone, "mail" => @mail,"exp_year" => @exp_year}
@@ -30,18 +22,6 @@ def initialize(app)
3022

3123
end
3224

33-
def addTimeoutCheck(data:nil)
34-
if(self.shown?) then
35-
@timeout_id = @app.addTimeout(200, :repeat => true) do
36-
if require_field_to_fill() then
37-
@ok_btn.enable
38-
else
39-
@ok_btn.disable
40-
end
41-
end
42-
end
43-
end
44-
4525

4626
def get_personal_data(id)
4727
@guard_data = []
@@ -56,15 +36,7 @@ def get_personal_data(id)
5636
end
5737

5838
private
59-
attr_reader :controller
60-
def create_close_button(horizontal_frame)
61-
close_button = FXButton.new(horizontal_frame, "Close", nil,nil, :opts => BUTTON_NORMAL|LAYOUT_RIGHT)
62-
close_button.connect(SEL_COMMAND) do |sender, selector, data|
63-
removeTimeout(@timeout_id,@app)
64-
self.hide
65-
end
66-
close_button.layoutHints |= LAYOUT_TOP|LAYOUT_RIGHT|LAYOUT_FILL_X
67-
end
39+
6840

6941
def create_button_ok(horizontal_frame)
7042
ok_button = FXButton.new(horizontal_frame, "Ok", nil,nil, :opts => BUTTON_NORMAL|LAYOUT_RIGHT)
@@ -136,44 +108,17 @@ def require_field_to_fill()
136108
@guard_field["surname"]!=nil && @guard_field["name"] != nil && @guard_field["phone"] != nil && @guard_field["exp_year"] != nil
137109
end
138110

139-
def removeTimeout(timerId,app)
140-
app.removeTimeout(timerId)
141-
end
142-
143-
144-
def check_letter(elem)
145-
elem.match?(/^[A-zА-яЁё\s]+$/)
146-
end
111+
147112

148113
def check_years(elem)
149114
elem.match?(/^[0-9]*$/)
150115
end
151116

152-
def check_phone(elem)
153-
elem.match?(/^\+?[0-9]*$/)
154-
end
155-
156-
def check_let_dig_specilSymbol(elem)
157-
elem.match?(/\w+|[@]|[\.]|[:]|[\\]/)
158-
end
159-
117+
160118
def valid_years(elem)
161119
elem.match?(/^[0-9]{1,2}$/)
162120
end
163121

164-
def validate_surname_name_lastname(text)
165-
text.match?(/^[A-ZА-Я]([a-z]+|[a-яё]+)$/)
166-
end
167-
168-
def valid_phone(text)
169-
text.match?(/^(\+7|8)[0-9]{9,15}$$/)
170-
end
171-
172-
def valid_mail(text)
173-
text.match?(/^\w+[@][a-z]+[\.][a-z]{2,20}/)
174-
end
175-
176-
177-
122+
178123
end
179124

Lines changed: 12 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,30 @@
1+
require_relative '../modal_Window.rb'
2+
class Modal_create_guard < Modal_Window
13

2-
require 'fox16'
3-
require 'clipboard'
4-
5-
include Fox
6-
7-
class Modal_create_guard < FXDialogBox
8-
9-
attr_writer :controller
104
def initialize(app)
11-
@app = app
12-
13-
super(app, "Add Guard", :width => 300, :height => 200)
14-
5+
super(app, "Add guard", width:300, height:250)
6+
157
@guard_field = {"name" =>nil,"surname" => nil, "lastname" => "",
168
"phone" => nil,"mail" => nil,"exp_year" => nil}
179
matrix = FXMatrix.new(self, 2, MATRIX_BY_COLUMNS|LAYOUT_FILL_X)
1810

11+
create_inputs(matrix)
1912
@list_text_fields = []
20-
@list_text_fields.push(create_textField(matrix,"Name",method(:check_letter),method(:validate_surname_name_lastname)))
21-
@list_text_fields.push(create_textField(matrix,"Surname",method(:check_letter),method(:validate_surname_name_lastname)))
22-
@list_text_fields.push(create_textField(matrix,"Lastname",method(:check_letter),method(:validate_surname_name_lastname)))
23-
@list_text_fields.push(create_textField(matrix,"Phone",method(:check_phone),method(:valid_phone)))
13+
@list_text_fields.push(@name)
14+
@list_text_fields.push(@surname)
15+
@list_text_fields.push(@lastname)
16+
@list_text_fields.push(@phone)
17+
@list_text_fields.push(@mail)
2418
@list_text_fields.push(create_textField(matrix,"exp_year",method(:check_years),method(:valid_years)))
25-
@list_text_fields.push(create_textField(matrix,"Mail",method(:check_let_dig_specilSymbol),method(:valid_mail)))
2619

2720
create_close_button(matrix)
2821
@ok_btn = create_button_ok(matrix)
2922

3023
end
3124

32-
def addTimeoutCheck(data:nil)
33-
if(self.shown?) then
34-
@timeout_id = @app.addTimeout(200, :repeat => true) do
35-
if require_field_to_fill() then
36-
@ok_btn.enable
37-
else
38-
@ok_btn.disable
39-
end
40-
end
41-
end
42-
end
43-
25+
4426
private
45-
attr_reader :controller
46-
47-
def create_close_button(horizontal_frame)
48-
close_button = FXButton.new(horizontal_frame, "Close", nil,nil, :opts => BUTTON_NORMAL|LAYOUT_RIGHT)
49-
close_button.connect(SEL_COMMAND) do |sender, selector, data|
50-
removeTimeout(@timeout_id,@app)
51-
self.hide
52-
end
53-
close_button.layoutHints |= LAYOUT_TOP|LAYOUT_RIGHT|LAYOUT_FILL_X
54-
end
27+
5528

5629
def create_button_ok(horizontal_frame)
5730
ok_button = FXButton.new(horizontal_frame, "Ok", nil,nil, :opts => BUTTON_NORMAL|LAYOUT_RIGHT)
@@ -107,43 +80,13 @@ def clear_fields()
10780
end
10881
end
10982

110-
def removeTimeout(timerId,app)
111-
app.removeTimeout(timerId)
112-
end
113-
114-
def check_letter(elem)
115-
elem.match?(/^[A-zА-яЁё\s]+$/)
116-
end
117-
118-
def check_phone(elem)
119-
elem.match?(/^\+?[0-9]*$/)
120-
end
121-
12283
def check_years(elem)
12384
elem.match?(/^[0-9]*$/)
12485
end
12586

126-
def check_let_dig_specilSymbol(elem)
127-
elem.match?(/\w+|[@]|[\.]|[:]|[\\]/)
128-
end
129-
130-
131-
def validate_surname_name_lastname(text)
132-
text.match?(/^[A-ZА-Я]([a-z]+|[a-яё]+)$/)
133-
end
134-
13587
def valid_years(elem)
13688
elem.match?(/^[0-9]{1,2}$/)
13789
end
13890

139-
def valid_phone(text)
140-
text.match?(/^(\+7|8)[0-9]{9,15}$$/)
141-
end
142-
143-
def valid_mail(text)
144-
text.match?(/^\w+[@][a-z]+[\.][a-z]{2,20}/)
145-
end
146-
147-
14891
end
14992

0 commit comments

Comments
 (0)