chat_by_rznvls 0.0.0 → 0.0.1
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 +4 -4
- data/bin/chatr8s +2 -0
- data/lib/chatC.rb +93 -0
- data/lib/chat_by_rznvls.rb +37 -16
- metadata +34 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a4ab4b8f4374239f8c411341e870bd6c0c7bde19
|
4
|
+
data.tar.gz: e36dc1279de83f7a0c33f1a1bc32f9e4a77e1740
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 40d63c61fc3a5c41b2d139a1709da71441e811586bc54034ef8c5dfc68fe6366896304ad6d32700d9fcf015d9833a684c5fc737407227741cac106987497bd9f
|
7
|
+
data.tar.gz: b059eef2a16c6de89f4248967c39b2bd57ebb2d9d23fd33699390ce7a7cfb9eac91d07163517ed77ae4449dfc6caf22462ab68cb34f9da41bc4fd563c1f708e7
|
data/bin/chatr8s
ADDED
data/lib/chatC.rb
ADDED
@@ -0,0 +1,93 @@
|
|
1
|
+
require 'mysql2'
|
2
|
+
require 'digest'
|
3
|
+
|
4
|
+
class Chat
|
5
|
+
|
6
|
+
def self.get_connection (host,username,password,port,database)
|
7
|
+
return Mysql2::Client.new( :host => host,
|
8
|
+
:username => username ,
|
9
|
+
:password => password ,
|
10
|
+
:port => port ,
|
11
|
+
:database => database )
|
12
|
+
end
|
13
|
+
|
14
|
+
|
15
|
+
def self.checkLogin ( connection )
|
16
|
+
|
17
|
+
print "Login: "
|
18
|
+
user = self.input
|
19
|
+
print "Password: "
|
20
|
+
passwd = self.input
|
21
|
+
|
22
|
+
md5passwd = Digest::MD5.new
|
23
|
+
md5passwd << passwd
|
24
|
+
|
25
|
+
|
26
|
+
connection.query("SELECT * FROM users WHERE username = '#{user}'").each do |data_for_passwd|
|
27
|
+
if (md5passwd == data_for_passwd["password"])
|
28
|
+
return user
|
29
|
+
else
|
30
|
+
puts "Login failed"
|
31
|
+
return ""
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
def self.registration(connection)
|
40
|
+
print "Login: "
|
41
|
+
user = Chat.input
|
42
|
+
print "Password: "
|
43
|
+
passwd = Chat.input
|
44
|
+
md5passwd = Digest::MD5.new
|
45
|
+
md5passwd << passwd
|
46
|
+
|
47
|
+
|
48
|
+
connection.query("SELECT * FROM users WHERE username = '#{user}'").each do |data_for_reg|
|
49
|
+
if (user == data_for_reg["username"])
|
50
|
+
puts "Try another login"
|
51
|
+
puts user
|
52
|
+
return ""
|
53
|
+
end
|
54
|
+
end
|
55
|
+
puts "Login succes"
|
56
|
+
puts user
|
57
|
+
connection.query("INSERT INTO users (username, password) VALUES ('#{user}', '#{md5passwd}')")
|
58
|
+
return user
|
59
|
+
|
60
|
+
|
61
|
+
end
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
def self.push_msg(connection, user,msg)
|
66
|
+
connection.query("INSERT INTO chat (user, msg) VALUES ('#{user}', '#{msg}')")
|
67
|
+
end
|
68
|
+
|
69
|
+
def self.get_lastmsgs ( connection, table, n)
|
70
|
+
connection.query("SELECT * FROM #{table} WHERE id > ( SELECT MAX(id) - #{n} FROM chat)")
|
71
|
+
end
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
def self.help
|
76
|
+
puts "Help information for work with chat_by_rznvls /n -r = refresh chat information, shows last 5 messages"
|
77
|
+
end
|
78
|
+
|
79
|
+
def self.refresh (lastmsgs)
|
80
|
+
lastmsgs.each do |row|
|
81
|
+
puts row["user"] + ": " + row["msg"]
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
|
86
|
+
def self.input
|
87
|
+
gets.to_s.strip
|
88
|
+
end
|
89
|
+
|
90
|
+
end
|
91
|
+
|
92
|
+
|
93
|
+
|
data/lib/chat_by_rznvls.rb
CHANGED
@@ -1,41 +1,62 @@
|
|
1
1
|
#!/usr/bin/ruby
|
2
2
|
|
3
3
|
require 'mysql2'
|
4
|
+
require 'digest'
|
5
|
+
load 'chatC.rb'
|
4
6
|
|
5
7
|
|
6
8
|
begin
|
7
9
|
|
8
|
-
print "Login: "
|
9
|
-
user = gets.to_s.strip
|
10
10
|
|
11
|
-
con =
|
12
|
-
|
13
|
-
|
14
|
-
:port => '3306',
|
15
|
-
:database => 'sql2204087')
|
11
|
+
con = Chat.get_connection('sql2.freemysqlhosting.net', 'sql2204087','tM3%yF9*', '3306','sql2204087')
|
12
|
+
user = ""
|
13
|
+
logOrReg=""
|
16
14
|
run = true
|
15
|
+
logined = false
|
16
|
+
puts "login (l) or registration (r)"
|
17
|
+
|
18
|
+
while(logOrReg!="l" && logOrReg != "r" ) do
|
19
|
+
logOrReg = Chat.input
|
20
|
+
end
|
21
|
+
|
22
|
+
case logOrReg
|
23
|
+
when "l"
|
24
|
+
|
25
|
+
while !logined do
|
26
|
+
user = Chat.checkLogin(con)
|
27
|
+
logined = user == "" ? false: true
|
28
|
+
end
|
29
|
+
|
30
|
+
when "r"
|
31
|
+
while !logined do
|
32
|
+
user = Chat.registration(con)
|
33
|
+
logined = user == "" ? false : true
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
|
38
|
+
if ( username != "" ) do
|
17
39
|
puts "Type -h for help with this shit and -r to refresh chat"
|
18
|
-
puts "Have fun"
|
40
|
+
puts "Have fun, #{user}"
|
19
41
|
|
20
42
|
|
21
43
|
while run do
|
22
44
|
|
23
|
-
msg =
|
24
|
-
msgs =
|
45
|
+
msg = Chat.input
|
46
|
+
msgs = Chat.get_lastmsgs( con , 'chat','5')
|
25
47
|
case msg
|
26
48
|
when "-r"
|
27
|
-
msgs
|
28
|
-
puts row["user"] + ": " + row["msg"]
|
29
|
-
end
|
49
|
+
Chat.refresh(msgs)
|
30
50
|
when "-h"
|
31
|
-
|
51
|
+
Chat.help
|
32
52
|
when "exit"
|
33
53
|
break
|
34
|
-
else
|
54
|
+
else
|
55
|
+
Chat.push_msg(con, user, msg)
|
35
56
|
|
36
|
-
con.query("INSERT INTO chat (user, msg) VALUES ('#{user}', '#{msg}')")
|
37
57
|
|
38
58
|
end
|
39
59
|
|
40
60
|
end
|
41
61
|
end
|
62
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chat_by_rznvls
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Roman Ovcharov
|
@@ -9,13 +9,44 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
date: 2017-11-09 00:00:00.000000000 Z
|
12
|
-
dependencies:
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: mysql2
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: digest
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
13
41
|
description: A simple chat
|
14
42
|
email: rozenvil13@gmail.com
|
15
|
-
executables:
|
43
|
+
executables:
|
44
|
+
- chatr8s
|
16
45
|
extensions: []
|
17
46
|
extra_rdoc_files: []
|
18
47
|
files:
|
48
|
+
- bin/chatr8s
|
49
|
+
- lib/chatC.rb
|
19
50
|
- lib/chat_by_rznvls.rb
|
20
51
|
homepage: http://rubygems.org/gems/chat_by_rznvls
|
21
52
|
licenses:
|