ucenter 0.0.2 → 0.0.3
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/Gemfile +2 -1
- data/lib/ucenter.rb +1 -0
- data/lib/ucenter/client.rb +4 -0
- data/lib/ucenter/interface/user.rb +20 -0
- data/lib/ucenter/interface/xml.rb +44 -0
- data/lib/ucenter/version.rb +1 -1
- data/ucenter.gemspec +2 -0
- metadata +31 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 455a44d1c4adabc58b1e3427ab519d340edae2d2
|
4
|
+
data.tar.gz: 44f6c5b7e7f0b6716fc66ec6680f70ba7173c140
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f53e7f4caa4ef1d23c28446d83e7d1e4296329d2fd30ac33f803843518a186431459c5037609dced43ea82f8922e72ee744d9f3c52a66c918f7467f6f6a28d1d
|
7
|
+
data.tar.gz: ff434fc772fc413ebb1a114f0212d5a80b92179a27d5d3abebc4e6dfbddd85e966182a184647a73383110c9dffd54a023cfe42afe1912271d6275b8366a697a7
|
data/Gemfile
CHANGED
data/lib/ucenter.rb
CHANGED
data/lib/ucenter/client.rb
CHANGED
@@ -7,12 +7,25 @@ module Ucenter
|
|
7
7
|
data = get_user_by_uid(username)
|
8
8
|
elsif is_uid == 2
|
9
9
|
data= get_user_by_email(username)
|
10
|
+
elsif is_uid == 3
|
11
|
+
data = get_user_by_phone(username)
|
10
12
|
else
|
11
13
|
data = get_user_by_username(username)
|
12
14
|
end
|
13
15
|
data
|
14
16
|
end
|
15
17
|
|
18
|
+
def check_login(username, password, is_uid = FALSE)
|
19
|
+
user = get_user(username, is_uid)
|
20
|
+
if user['username'].nil?
|
21
|
+
return [-1,nil]
|
22
|
+
elsif user['password'] != md5("#{md5(password)}#{user['salt']}")
|
23
|
+
return [-2,nil]
|
24
|
+
end
|
25
|
+
[user['uid'],user]
|
26
|
+
end
|
27
|
+
|
28
|
+
protected
|
16
29
|
def get_user_by_username(username)
|
17
30
|
db_client.query("SELECT * FROM #{Ucenter::Config.uc_dbtablepre}members WHERE username='#{username}'").to_a[0]
|
18
31
|
end
|
@@ -24,6 +37,13 @@ module Ucenter
|
|
24
37
|
def get_user_by_email(username)
|
25
38
|
db_client.query("SELECT * FROM #{Ucenter::Config.uc_dbtablepre}members WHERE email='#{username}'").to_a[0]
|
26
39
|
end
|
40
|
+
|
41
|
+
def get_user_by_phone(username)
|
42
|
+
db_client.query("SELECT * FROM #{Ucenter::Config.uc_dbtablepre}members WHERE phone='#{username}'").to_a[0]
|
43
|
+
end
|
44
|
+
|
45
|
+
private
|
46
|
+
def md5 str; Digest::MD5.hexdigest str.to_s end
|
27
47
|
end
|
28
48
|
end
|
29
49
|
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module Ucenter
|
2
|
+
module Interface
|
3
|
+
class Xml < Base
|
4
|
+
def parse body
|
5
|
+
reader = Nokogiri::XML::Reader(body)
|
6
|
+
|
7
|
+
result ||= Hash.new
|
8
|
+
vars ||= []
|
9
|
+
|
10
|
+
reader.each do |node|
|
11
|
+
if node.name == 'item'
|
12
|
+
if vars.include?(node.attributes['id'])
|
13
|
+
vars.delete(node.attributes['id'])
|
14
|
+
else
|
15
|
+
vars << node.attributes['id']
|
16
|
+
end
|
17
|
+
elsif node.name == '#cdata-section'
|
18
|
+
# 只能写出这么渣的代码,求高手调教
|
19
|
+
case vars.length
|
20
|
+
when 1
|
21
|
+
result[vars[0]] = node.value
|
22
|
+
when 2
|
23
|
+
result[vars[0]] = Hash.new if result[vars[0]].nil?
|
24
|
+
result[vars[0]][vars[1]] = node.value
|
25
|
+
when 3
|
26
|
+
result[vars[0]][vars[1]] = Hash.new if result[vars[0]][vars[1]].nil?
|
27
|
+
result[vars[0]][vars[1]][vars[2]] = node.value
|
28
|
+
when 4
|
29
|
+
result[vars[0]][vars[1]][vars[2]] = Hash.new if result[vars[0]][vars[1]][vars[2]].nil?
|
30
|
+
result[vars[0]][vars[1]][vars[2]][vars[3]] = node.value
|
31
|
+
when 5
|
32
|
+
result[vars[0]][vars[1]][vars[2]][vars[3]] = Hash.new if result[vars[0]][vars[1]][vars[2]][vars[3]].nil?
|
33
|
+
result[vars[0]][vars[1]][vars[2]][vars[3]][vars[4]] = node.value
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
result
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
|
44
|
+
|
data/lib/ucenter/version.rb
CHANGED
data/ucenter.gemspec
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ucenter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Willin Wang
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-08-
|
11
|
+
date: 2014-08-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -38,6 +38,34 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: mysql2
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: nokogiri
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
41
69
|
description: http://willin.wang visit for more info.
|
42
70
|
email: willin@willin.org
|
43
71
|
executables: []
|
@@ -56,6 +84,7 @@ files:
|
|
56
84
|
- lib/ucenter/interface/base.rb
|
57
85
|
- lib/ucenter/interface/user.rb
|
58
86
|
- lib/ucenter/interface/utility.rb
|
87
|
+
- lib/ucenter/interface/xml.rb
|
59
88
|
- lib/ucenter/version.rb
|
60
89
|
- ucenter.gemspec
|
61
90
|
homepage: https://github.com/willin/ucenter
|