dandelion_s1 0.3.1 → 0.3.2
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 +5 -5
- checksums.yaml.gz.sig +4 -2
- data.tar.gz.sig +0 -0
- data/lib/dandelion_s1.rb +23 -9
- metadata +9 -10
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 742f9d5aa097f2f2d5063ef9a719c393dbcb47d8d57631e766f0b6e021b842ea
|
4
|
+
data.tar.gz: 545c3ebdad0f17c382f64f81b849df7d4cbfeeafd9cbdcb67b84937d8324a871
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ce3f848f51b192e2504def32c99981c540088517196d3b739fa425e608284d8867a0892e519b69e6d1857947da8c4da02716722bbc2bb09325989a02da20abb
|
7
|
+
data.tar.gz: 9bc34f279f800a4f5c57391ef866832fed6f02ee2268c0c44ab568f67c03f1e2dac17a9bc87707361b7f51ef56c8b76ae2abc3b32dd7ec5ed59a711b973d16ca
|
checksums.yaml.gz.sig
CHANGED
@@ -1,2 +1,4 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
���5ݿ]O�:�O(Ǜ5^o
|
2
|
+
�a���_oHh�-��1�x�n �C�&zkz�Re wþRI
|
3
|
+
=k�����ɮ�
|
4
|
+
�r��#��@h� _!$l@w(��d��S�A�,sg�I�H"�J(7�W��H�g9f�{�R�D�m_E;�����<��ve%]�����5��0��j��5��qB,�,���K�������3�a,
|
data.tar.gz.sig
CHANGED
Binary file
|
data/lib/dandelion_s1.rb
CHANGED
@@ -32,12 +32,15 @@ class DandelionS1 < RackRscript
|
|
32
32
|
.inject({}) {|r,x| r.merge(x => h[x])}
|
33
33
|
|
34
34
|
super(h3)
|
35
|
+
@log.debug '@access_list: ' + @access_list.inspect if @log
|
36
|
+
@log.debug 'end of initialize' if @log
|
35
37
|
|
36
38
|
end
|
37
39
|
|
38
40
|
def call(e)
|
39
41
|
|
40
42
|
request = e['REQUEST_PATH']
|
43
|
+
@log.debug 'request: ' + request.inspect if @log
|
41
44
|
|
42
45
|
return super(e) if request == '/login'
|
43
46
|
r = @access_list.detect {|k,v| request =~ Regexp.new(k)} if @access_list
|
@@ -46,7 +49,9 @@ class DandelionS1 < RackRscript
|
|
46
49
|
req = Rack::Request.new(e)
|
47
50
|
user = req.session[:username]
|
48
51
|
|
49
|
-
|
52
|
+
#@log.debug 'user: ' + user.inspect if @log
|
53
|
+
#@log.debug '@e: ' + e.inspect if @log
|
54
|
+
return jumpto '/login2?referer=' + e['PATH_INFO'] unless user
|
50
55
|
|
51
56
|
if private_user.nil? then
|
52
57
|
super(e)
|
@@ -63,10 +68,16 @@ class DandelionS1 < RackRscript
|
|
63
68
|
|
64
69
|
def default_routes(env, params)
|
65
70
|
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
71
|
+
log = @log
|
72
|
+
|
73
|
+
get '/login2/*' do
|
74
|
+
params[:splat].inspect
|
75
|
+
redirect '/login' + params[:splat].first
|
76
|
+
end
|
77
|
+
|
78
|
+
get '/login/*' do
|
79
|
+
url = params[:splat].any? ? params[:splat][0][/(?<=referer=).*/] : '/'
|
80
|
+
login_form(referer: url)
|
70
81
|
end
|
71
82
|
|
72
83
|
post '/login' do
|
@@ -76,13 +87,15 @@ class DandelionS1 < RackRscript
|
|
76
87
|
if @passwords[h['username']] == h['password'] then
|
77
88
|
|
78
89
|
@req.session[:username] = h['username']
|
79
|
-
'you are now logged in as ' + h['username']
|
90
|
+
#'you are now logged in as ' + h['username']
|
91
|
+
redirect h['referer']
|
80
92
|
|
81
93
|
else
|
82
94
|
|
83
95
|
login_form('Invalid username or password, try again.',401)
|
84
96
|
|
85
97
|
end
|
98
|
+
|
86
99
|
|
87
100
|
end
|
88
101
|
|
@@ -119,7 +132,7 @@ class DandelionS1 < RackRscript
|
|
119
132
|
|
120
133
|
end
|
121
134
|
|
122
|
-
def login_form(msg='Log in to this site.', http_code=200)
|
135
|
+
def login_form(msg='Log in to this site.', http_code=200, referer: '/')
|
123
136
|
|
124
137
|
s=<<EOF
|
125
138
|
p #{msg}
|
@@ -127,8 +140,9 @@ p #{msg}
|
|
127
140
|
login
|
128
141
|
username: [ ]
|
129
142
|
password: [ ]
|
130
|
-
|
131
|
-
|
143
|
+
[! referer: #{referer}
|
144
|
+
]
|
145
|
+
[login](/login)
|
132
146
|
EOF
|
133
147
|
|
134
148
|
[Martile.new(s).to_s, 'text/slim', http_code]
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dandelion_s1
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -30,7 +30,7 @@ cert_chain:
|
|
30
30
|
1N8hBgTHd/hcz/i08u1weglfL0QBkOx9HzswCq9Iuesya/Zb40PJIbW4/A2pKm0o
|
31
31
|
eek=
|
32
32
|
-----END CERTIFICATE-----
|
33
|
-
date:
|
33
|
+
date: 2019-02-16 00:00:00.000000000 Z
|
34
34
|
dependencies:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
36
|
name: rack-rscript
|
@@ -41,7 +41,7 @@ dependencies:
|
|
41
41
|
version: '1.1'
|
42
42
|
- - ">="
|
43
43
|
- !ruby/object:Gem::Version
|
44
|
-
version: 1.1.
|
44
|
+
version: 1.1.4
|
45
45
|
type: :runtime
|
46
46
|
prerelease: false
|
47
47
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -51,7 +51,7 @@ dependencies:
|
|
51
51
|
version: '1.1'
|
52
52
|
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1.1.
|
54
|
+
version: 1.1.4
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: simple-config
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -78,20 +78,20 @@ dependencies:
|
|
78
78
|
requirements:
|
79
79
|
- - "~>"
|
80
80
|
- !ruby/object:Gem::Version
|
81
|
-
version: '
|
81
|
+
version: '1.1'
|
82
82
|
- - ">="
|
83
83
|
- !ruby/object:Gem::Version
|
84
|
-
version:
|
84
|
+
version: 1.1.5
|
85
85
|
type: :runtime
|
86
86
|
prerelease: false
|
87
87
|
version_requirements: !ruby/object:Gem::Requirement
|
88
88
|
requirements:
|
89
89
|
- - "~>"
|
90
90
|
- !ruby/object:Gem::Version
|
91
|
-
version: '
|
91
|
+
version: '1.1'
|
92
92
|
- - ">="
|
93
93
|
- !ruby/object:Gem::Version
|
94
|
-
version:
|
94
|
+
version: 1.1.5
|
95
95
|
description:
|
96
96
|
email: james@jamesrobertson.eu
|
97
97
|
executables: []
|
@@ -118,8 +118,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
118
118
|
- !ruby/object:Gem::Version
|
119
119
|
version: '0'
|
120
120
|
requirements: []
|
121
|
-
|
122
|
-
rubygems_version: 2.6.13
|
121
|
+
rubygems_version: 3.0.1
|
123
122
|
signing_key:
|
124
123
|
specification_version: 4
|
125
124
|
summary: A kind of Rack-Rscript web server which facilitates static files, cookie
|
metadata.gz.sig
CHANGED
Binary file
|