alego 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,4 @@
1
+ *.gem
2
+ .bundle
3
+ Gemfile.lock
4
+ pkg/*
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+
4
+ gemspec
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
@@ -0,0 +1,24 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "alego/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "alego"
7
+ s.version = Alego::VERSION
8
+ s.authors = ["Maurilio Henrique dos Reis Campos"]
9
+ s.email = ["mauriliohrc@gmail.com"]
10
+ s.homepage = ""
11
+ s.summary = %q{Alego SGU Auth}
12
+ s.description = %q{Alego SGU Auth...}
13
+
14
+ s.rubyforge_project = "alego"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
+ s.require_paths = ["lib"]
20
+
21
+ # specify any dependencies here; for example:
22
+ # s.add_development_dependency "rspec"
23
+ # s.add_runtime_dependency "rest-client"
24
+ end
@@ -5,7 +5,113 @@ require 'rexml/document'
5
5
 
6
6
  module Alego
7
7
 
8
- include AuthSecurityController
9
- include AuthSgu
8
+
9
+ def pre_dispatch
10
+ valida_login
11
+ valida_tela
12
+ end
13
+
14
+ def set_usuario_corrente=(usuario)
15
+ @usuario_corrente = usuario
16
+ session[:usuario_id] = usuario.id
17
+ end
18
+
19
+
20
+ def logout
21
+ session[:usuario_id] = nil
22
+ reset_session
23
+ end
24
+
25
+
26
+ def valida_login
27
+ begin
28
+ if usuario_corrente
29
+ return true
30
+ else
31
+ flash[:erro]="Falha no login"
32
+ logout
33
+ return false
34
+ end
35
+ rescue
36
+ flash[:erro]="Falha no login"
37
+ logout
38
+ return false
39
+ end
40
+ end
41
+
42
+
43
+ protected
44
+ def valida_tela
45
+ nome = controller_name
46
+ usuario = nil
47
+ if user == nil
48
+ usuario ||= Usuario.find(session[:usuario_id])
49
+ else
50
+ usuario = user
51
+ end
52
+ recursos = usuario['recursos'].split(";")
53
+ recursos.each do |r|
54
+ if nome == r
55
+ return true
56
+ end
57
+ end
58
+ false
59
+ end
60
+
61
+
62
+
63
+ ####
64
+ def production(is_production = true, url = nil)
65
+ if (is_production)
66
+ @@sgu_url = "https://172.16.0.36/sgu/"
67
+ else
68
+ @@sgu_url = "https://172.16.0.26/sgu/"
69
+ end
70
+
71
+ @@sgu_url = url if (url != nil)
72
+ end
73
+
74
+
75
+
76
+ def post(login, senha, sistema)
77
+ resp = {}
78
+ url = @@sgu_url + 'validar/' + login + '/' + senha + '/' + sistema +'.xml'
79
+
80
+ begin
81
+ uri = URI.parse(url)
82
+ http = Net::HTTP.new(uri.host, uri.port)
83
+ http.use_ssl = true
84
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
85
+ request = Net::HTTP::Get.new(uri.request_uri)
86
+ response = http.request(request)
87
+ rescue
88
+
89
+ resp[:erro] = "Error: host connection fail"
90
+ end
91
+
92
+ if response != nil and response.code == "200"
93
+ xml_data = response.body
94
+ doc = REXML::Document.new(xml_data)
95
+ doc.elements.each('hash') do |ele|
96
+ begin
97
+ resp[:erro] = ele.elements['erro'].text
98
+ rescue
99
+ resp[:usu_descricao] = ele.elements['nome-user'].text
100
+ resp[:matricula] = ele.elements['matricula'].text
101
+ resp[:recursos] = ""
102
+ ele.elements.each('telas') do |e|
103
+ e.elements.each('tela') do |et|
104
+ resp[:recursos] = resp[:recursos] + et.elements['nome-tela'].text+';'
105
+ end
106
+ end
107
+ resp[:status] = response.code
108
+ end
109
+ end
110
+ else
111
+ resp[:erro] = "Error: host connection fail"
112
+ end
113
+ resp
114
+ end
115
+
10
116
 
11
117
  end
@@ -1,3 +1,3 @@
1
1
  module Alego
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.6"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alego
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,15 +11,17 @@ bindir: bin
11
11
  cert_chain: []
12
12
  date: 2012-11-05 00:00:00.000000000 Z
13
13
  dependencies: []
14
- description: Alego Auth SGU
14
+ description: Alego SGU Auth...
15
15
  email:
16
16
  - mauriliohrc@gmail.com
17
17
  executables: []
18
18
  extensions: []
19
19
  extra_rdoc_files: []
20
20
  files:
21
- - lib/alego/auth_security_controller.rb
22
- - lib/alego/auth_sgu.rb
21
+ - .gitignore
22
+ - Gemfile
23
+ - Rakefile
24
+ - alego.gemspec
23
25
  - lib/alego.rb
24
26
  - lib/alego/version.rb
25
27
  homepage: ''
@@ -45,5 +47,5 @@ rubyforge_project: alego
45
47
  rubygems_version: 1.8.24
46
48
  signing_key:
47
49
  specification_version: 3
48
- summary: Alego Auth
50
+ summary: Alego SGU Auth
49
51
  test_files: []
@@ -1,58 +0,0 @@
1
- module AuthSecurityController
2
-
3
- def pre_dispatch
4
- valida_login
5
- valida_tela
6
- end
7
-
8
- def set_usuario_corrente=(usuario)
9
- @usuario_corrente = usuario
10
- session[:usuario_id] = usuario.id
11
- end
12
-
13
-
14
- def logout
15
- session[:usuario_id] = nil
16
- reset_session
17
- end
18
-
19
-
20
- def valida_login
21
- begin
22
- if usuario_corrente
23
- return true
24
- else
25
- flash[:erro]="Falha no login"
26
- logout
27
- return false
28
- end
29
- rescue
30
- flash[:erro]="Falha no login"
31
- logout
32
- return false
33
- end
34
- end
35
-
36
-
37
- protected
38
- def valida_tela
39
- nome = controller_name
40
- usuario = nil
41
- if user == nil
42
- usuario ||= Usuario.find(session[:usuario_id])
43
- else
44
- usuario = user
45
- end
46
- recursos = usuario['recursos'].split(";")
47
- recursos.each do |r|
48
- if nome == r
49
- return true
50
- end
51
- end
52
- false
53
- end
54
-
55
- end
56
-
57
-
58
-
@@ -1,59 +0,0 @@
1
- require 'net/https'
2
- require 'uri'
3
- require 'rexml/document'
4
-
5
- module AuthSgu
6
-
7
- def production(is_production = true, url = nil)
8
- if (is_production)
9
- @@sgu_url = "https://172.16.0.36/sgu/"
10
- else
11
- @@sgu_url = "https://172.16.0.26/sgu/"
12
- end
13
-
14
- @@sgu_url = url if (url != nil)
15
- end
16
-
17
-
18
-
19
- def post(login, senha, sistema)
20
- resp = {}
21
- url = @@sgu_url + 'validar/' + login + '/' + senha + '/' + sistema +'.xml'
22
-
23
- begin
24
- uri = URI.parse(url)
25
- http = Net::HTTP.new(uri.host, uri.port)
26
- http.use_ssl = true
27
- http.verify_mode = OpenSSL::SSL::VERIFY_NONE
28
- request = Net::HTTP::Get.new(uri.request_uri)
29
- response = http.request(request)
30
- rescue
31
-
32
- resp[:erro] = "Error: host connection fail"
33
- end
34
-
35
- if response != nil and response.code == "200"
36
- xml_data = response.body
37
- doc = REXML::Document.new(xml_data)
38
- doc.elements.each('hash') do |ele|
39
- begin
40
- resp[:erro] = ele.elements['erro'].text
41
- rescue
42
- resp[:usu_descricao] = ele.elements['nome-user'].text
43
- resp[:matricula] = ele.elements['matricula'].text
44
- resp[:recursos] = ""
45
- ele.elements.each('telas') do |e|
46
- e.elements.each('tela') do |et|
47
- resp[:recursos] = resp[:recursos] + et.elements['nome-tela'].text+';'
48
- end
49
- end
50
- resp[:status] = response.code
51
- end
52
- end
53
- else
54
- resp[:erro] = "Error: host connection fail"
55
- end
56
- resp
57
- end
58
-
59
- end