profilepic 0.1.2 → 0.1.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/Manifest.txt +1 -0
- data/lib/profilepic/builder.rb +42 -0
- data/lib/profilepic/service.rb +160 -0
- data/lib/profilepic/version.rb +1 -1
- data/lib/profilepic/views/index.erb +2 -0
- data/lib/profilepic/views/yeoldepunks.erb +91 -0
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2ffc9a8e667f60136de35f02afcf76ffe1726b987630b06e5476f8319fc1389c
|
|
4
|
+
data.tar.gz: 35358297cc5182a6af8a7b83d1abdbfa9826e16f2dd5a20937e4162f1961042e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 35f8b682f2fe4985c47a5e34d3f1b711b4657e137bc324635b79e16e7fb7a63381dfc6f352f24ecf5236f821aedf0457357bf47a8fc1719f30d2359e563062d5
|
|
7
|
+
data.tar.gz: 36f6275b5c5fee241f489dc7f19206d786fe4204611a0bea83ff77c232ef77fc8cce0b9913b1e9799a3f96df4f041e338636f0e777bdd493397803ec08e3c2dd
|
data/Manifest.txt
CHANGED
data/lib/profilepic/builder.rb
CHANGED
|
@@ -83,6 +83,48 @@ class ImageReq ## (Generate) Image Request
|
|
|
83
83
|
end
|
|
84
84
|
|
|
85
85
|
|
|
86
|
+
def self.build_yeoldepunk( params )
|
|
87
|
+
puts "==> image request params:"
|
|
88
|
+
pp params
|
|
89
|
+
|
|
90
|
+
name = 'yeoldepunk'
|
|
91
|
+
archetype = _norm_key( params[:t] || 'male 3' )
|
|
92
|
+
|
|
93
|
+
hair = _norm_key( params[:hair] || 'none' )
|
|
94
|
+
beard = _norm_key( params[:beard] || 'none' )
|
|
95
|
+
eyes = _norm_key( params[:eyes] || 'none' )
|
|
96
|
+
eyewear = _norm_key( params[:eyewear] || 'none' )
|
|
97
|
+
blemish = _norm_key( params[:blemish] || 'none' )
|
|
98
|
+
nose = _norm_key( params[:nose] || 'none' )
|
|
99
|
+
mouth = _norm_key( params[:mouth] || 'none' )
|
|
100
|
+
mouthprop = _norm_key( params[:mouthprop] || 'none' )
|
|
101
|
+
earring = _norm_key( params[:earring] || 'none' )
|
|
102
|
+
headwear = _norm_key( params[:headwear] || 'none' )
|
|
103
|
+
neck = _norm_key( params[:neck] || 'none' )
|
|
104
|
+
|
|
105
|
+
zoom = _parse_zoom( params[:z] || '1' )
|
|
106
|
+
background = _norm_key( params[:bg] || 'none' )
|
|
107
|
+
|
|
108
|
+
attributes = [archetype]
|
|
109
|
+
attributes << hair if hair != 'none'
|
|
110
|
+
attributes << blemish if blemish != 'none'
|
|
111
|
+
attributes << beard if beard != 'none'
|
|
112
|
+
attributes << eyes if eyes != 'none'
|
|
113
|
+
attributes << eyewear if eyewear != 'none'
|
|
114
|
+
attributes << nose if nose != 'none'
|
|
115
|
+
attributes << mouth if mouth != 'none'
|
|
116
|
+
attributes << mouthprop if mouthprop != 'none'
|
|
117
|
+
attributes << earring if earring != 'none'
|
|
118
|
+
attributes << headwear if headwear != 'none'
|
|
119
|
+
attributes << neck if neck != 'none'
|
|
120
|
+
|
|
121
|
+
new( name: name,
|
|
122
|
+
attributes: attributes,
|
|
123
|
+
zoom: zoom,
|
|
124
|
+
background: background )
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
|
|
86
128
|
|
|
87
129
|
attr_reader :name,
|
|
88
130
|
:attributes,
|
data/lib/profilepic/service.rb
CHANGED
|
@@ -15,6 +15,7 @@ TXT
|
|
|
15
15
|
options.each_with_index do |option,i|
|
|
16
16
|
|
|
17
17
|
value = option.downcase
|
|
18
|
+
value = value.sub( '(m)', '' ).sub( '(f)', '' ).sub( '(m/f)', '' ).sub( '¹', '' )
|
|
18
19
|
label = option
|
|
19
20
|
|
|
20
21
|
buf += <<TXT
|
|
@@ -31,6 +32,148 @@ buf
|
|
|
31
32
|
end
|
|
32
33
|
|
|
33
34
|
|
|
35
|
+
YEOLDEPUNK_ARCHETYPE = [
|
|
36
|
+
'Male 1',
|
|
37
|
+
'Male 2',
|
|
38
|
+
'Male 3',
|
|
39
|
+
'Male 4',
|
|
40
|
+
'Female 1',
|
|
41
|
+
'Female 2',
|
|
42
|
+
'Female 3',
|
|
43
|
+
'Female 4',
|
|
44
|
+
'Zombie',
|
|
45
|
+
'Ape',
|
|
46
|
+
'Alien',
|
|
47
|
+
]
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
YEOLDEPUNK_HAIR = [
|
|
51
|
+
'Shaved Head (m)',
|
|
52
|
+
'Peak Spike (m)',
|
|
53
|
+
'Vampire Hair (m)',
|
|
54
|
+
'Purple Hair (m)',
|
|
55
|
+
|
|
56
|
+
'Mohawk (m/f)',
|
|
57
|
+
'Mohawk Dark (m/f)',
|
|
58
|
+
'Mohawk Thin (m/f)',
|
|
59
|
+
'Wild Hair (m/f)',
|
|
60
|
+
'Crazy Hair (m/f)',
|
|
61
|
+
'Messy Hair (m/f)',
|
|
62
|
+
'Frumpy Hair (m/f)',
|
|
63
|
+
'Stringy Hair (m/f)',
|
|
64
|
+
'Clown Hair Green (m/f)',
|
|
65
|
+
|
|
66
|
+
'Straight Hair (f)',
|
|
67
|
+
'Straight Hair Dark (f)',
|
|
68
|
+
'Straight Hair Blonde (f)',
|
|
69
|
+
'Blonde Short (f)',
|
|
70
|
+
'Blonde Bob (f)',
|
|
71
|
+
'Wild Blonde (f)',
|
|
72
|
+
'Wild White Hair (f)',
|
|
73
|
+
'Orange Side (f)',
|
|
74
|
+
'Dark Hair (f)',
|
|
75
|
+
'Pigtails (f)',
|
|
76
|
+
'Pink With Hat¹ (f)',
|
|
77
|
+
'Half Shaved (f)',
|
|
78
|
+
'Red Mohawk (f)',
|
|
79
|
+
]
|
|
80
|
+
|
|
81
|
+
YEOLDEPUNK_BEARD = [
|
|
82
|
+
'Shadow Beard (m)',
|
|
83
|
+
'Normal Beard (m)',
|
|
84
|
+
'Normal Beard Black (m)',
|
|
85
|
+
'Big Beard (m)',
|
|
86
|
+
'Luxurious Beard (m)',
|
|
87
|
+
'Mustache (m)',
|
|
88
|
+
'Goat (m)',
|
|
89
|
+
'Handlebars (m)',
|
|
90
|
+
'Front Beard (m)',
|
|
91
|
+
'Front Beard Dark (m)',
|
|
92
|
+
'Chinstrap (m)',
|
|
93
|
+
'Muttonchops (m)',
|
|
94
|
+
]
|
|
95
|
+
|
|
96
|
+
YEOLDEPUNK_EYEWEAR = [
|
|
97
|
+
'Small Shades (m)',
|
|
98
|
+
'Regular Shades (m/f)',
|
|
99
|
+
'Classic Shades (m/f)',
|
|
100
|
+
'Big Shades (m/f)',
|
|
101
|
+
'Nerd Glasses (m/f)',
|
|
102
|
+
'Horned Rim Glasses (m/f)',
|
|
103
|
+
'3D Glasses (m/f)',
|
|
104
|
+
'VR (m/f)',
|
|
105
|
+
'Eye Mask (m/f)',
|
|
106
|
+
'Eye Patch (m/f)',
|
|
107
|
+
'Welding Goggles (f)',
|
|
108
|
+
]
|
|
109
|
+
|
|
110
|
+
YEOLDEPUNK_EARRING = [
|
|
111
|
+
'Earring (m/f)'
|
|
112
|
+
]
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
YEOLDEPUNK_HEADWEAR = [
|
|
116
|
+
'Cowboy Hat (m)',
|
|
117
|
+
'Fedora (m)',
|
|
118
|
+
'Hoodie (m)',
|
|
119
|
+
'Beanie (m)',
|
|
120
|
+
'Top Hat (m)',
|
|
121
|
+
'Do-rag (m)',
|
|
122
|
+
'Police Cap (m)',
|
|
123
|
+
'Cap Forward (m)',
|
|
124
|
+
'Cap (m/f)',
|
|
125
|
+
'Knitted Cap (m/f)',
|
|
126
|
+
'Bandana (m/f)',
|
|
127
|
+
'Headband¹ (m/f)',
|
|
128
|
+
'Pilot Helmet (f)',
|
|
129
|
+
'Tassle Hat (f)',
|
|
130
|
+
'Tiara (f)',
|
|
131
|
+
]
|
|
132
|
+
|
|
133
|
+
YEOLDEPUNK_EYES = [
|
|
134
|
+
'Clown Eyes Green (m/f)',
|
|
135
|
+
'Clown Eyes Blue (m/f)',
|
|
136
|
+
'Green Eye Shadow (f)',
|
|
137
|
+
'Blue Eye Shadow (f)',
|
|
138
|
+
'Purple Eye Shadow (f)',
|
|
139
|
+
]
|
|
140
|
+
|
|
141
|
+
YEOLDEPUNK_MOUTH = [
|
|
142
|
+
'Smile (m)',
|
|
143
|
+
'Frown (m)',
|
|
144
|
+
'Buck Teeth (m)',
|
|
145
|
+
'Hot Lipstick (f)',
|
|
146
|
+
'Black Lipstick (f)',
|
|
147
|
+
'Purple Lipstick (f)',
|
|
148
|
+
]
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
YEOLDEPUNK_MOUTH_PROP = [
|
|
152
|
+
'Cigarette (m/f)',
|
|
153
|
+
'Vape (m/f)',
|
|
154
|
+
'Pipe (m/f)',
|
|
155
|
+
'Medical Mask (m/f)',
|
|
156
|
+
]
|
|
157
|
+
|
|
158
|
+
YEOLDEPUNK_NECK = [
|
|
159
|
+
'Silver Chain (m/f)',
|
|
160
|
+
'Gold Chain (m/f)',
|
|
161
|
+
'Choker (f)',
|
|
162
|
+
]
|
|
163
|
+
|
|
164
|
+
YEOLDEPUNK_BLEMISH = [
|
|
165
|
+
'Mole (m/f)',
|
|
166
|
+
'Spots (m/f)',
|
|
167
|
+
'Rosy Cheeks (m/f)',
|
|
168
|
+
]
|
|
169
|
+
|
|
170
|
+
YEOLDEPUNK_NOSE = [
|
|
171
|
+
'Clown Nose (m/f)',
|
|
172
|
+
]
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
|
|
34
177
|
DOGE_ARCHETYPE = [
|
|
35
178
|
'Classic',
|
|
36
179
|
'Dark',
|
|
@@ -227,6 +370,12 @@ HTML
|
|
|
227
370
|
erb :doge
|
|
228
371
|
end
|
|
229
372
|
|
|
373
|
+
get '/yeoldepunks' do
|
|
374
|
+
erb :yeoldepunks
|
|
375
|
+
end
|
|
376
|
+
|
|
377
|
+
|
|
378
|
+
|
|
230
379
|
|
|
231
380
|
get '/generate_marcs' do
|
|
232
381
|
|
|
@@ -239,6 +388,17 @@ HTML
|
|
|
239
388
|
redirect "/#{r.image_key}.png"
|
|
240
389
|
end
|
|
241
390
|
|
|
391
|
+
get '/generate_yeoldepunks' do
|
|
392
|
+
|
|
393
|
+
r = ImageReq.build_yeoldepunk( params )
|
|
394
|
+
|
|
395
|
+
img = r.image
|
|
396
|
+
|
|
397
|
+
blob = img.image.to_blob
|
|
398
|
+
IMAGES[ r.image_key ] = blob
|
|
399
|
+
redirect "/#{r.image_key}.png"
|
|
400
|
+
end
|
|
401
|
+
|
|
242
402
|
|
|
243
403
|
get '/generate_doge' do
|
|
244
404
|
|
data/lib/profilepic/version.rb
CHANGED
|
@@ -51,6 +51,8 @@ own 100% forever.
|
|
|
51
51
|
<div>
|
|
52
52
|
<input type="radio" id="t6" name="t" value="yeoldepunk">
|
|
53
53
|
<label for="t6">Matt & John's® Ye Olde' Punk V1/V2 (Anno 2017) (24×24)</label>
|
|
54
|
+
... or try the <b><a href="/yeoldepunks">Matt & John's® Ye Olde' Punk V1/V2 (Anno 2017) Wizard »</a></b>
|
|
55
|
+
|
|
54
56
|
</div>
|
|
55
57
|
|
|
56
58
|
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
<p style="font-size: 80%;">
|
|
2
|
+
<a href="/">« Profile Pic(ture) As A Service</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
<h1>Design Your Own Matt & John's® Ye Olde' Punk (Anno 2017) (24×24) Wizard</h1>
|
|
8
|
+
|
|
9
|
+
<p>Yes, you can!
|
|
10
|
+
Generate your own originals that you
|
|
11
|
+
own 100% forever.
|
|
12
|
+
</p>
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
<form action="/generate_yeoldepunks" method="get" id="form1">
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
<%= radio_options( YEOLDEPUNK_ARCHETYPE,
|
|
20
|
+
name: 't',
|
|
21
|
+
legend: "Select a ye olde' punk base (archetype)" ) %>
|
|
22
|
+
|
|
23
|
+
Options:
|
|
24
|
+
|
|
25
|
+
<%= radio_options( ['None']+YEOLDEPUNK_HAIR,
|
|
26
|
+
name: 'hair',
|
|
27
|
+
legend: 'Select hair' ) %>
|
|
28
|
+
|
|
29
|
+
¹: Note: Pink With Hat is a hair+headwear combo.
|
|
30
|
+
|
|
31
|
+
<%= radio_options( ['None']+YEOLDEPUNK_BEARD,
|
|
32
|
+
name: 'beard',
|
|
33
|
+
legend: 'Select beard' ) %>
|
|
34
|
+
|
|
35
|
+
<%= radio_options( ['None']+YEOLDEPUNK_EYES,
|
|
36
|
+
name: 'eyes',
|
|
37
|
+
legend: 'Select eyes (make-up)' ) %>
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
<%= radio_options( ['None']+YEOLDEPUNK_EYEWEAR,
|
|
42
|
+
name: 'eyewear',
|
|
43
|
+
legend: 'Select eyewear' ) %>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
<%= radio_options( ['None']+YEOLDEPUNK_NOSE,
|
|
47
|
+
name: 'nose',
|
|
48
|
+
legend: 'Select nose accessory' ) %>
|
|
49
|
+
|
|
50
|
+
<%= radio_options( ['None']+YEOLDEPUNK_BLEMISH,
|
|
51
|
+
name: 'blemish',
|
|
52
|
+
legend: 'Select blemish' ) %>
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
<%= radio_options( ['None']+YEOLDEPUNK_MOUTH,
|
|
56
|
+
name: 'mouth',
|
|
57
|
+
legend: 'Select mouth expression / lipstick make-up' ) %>
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
<%= radio_options( ['None']+YEOLDEPUNK_MOUTH_PROP,
|
|
61
|
+
name: 'mouthprop',
|
|
62
|
+
legend: 'Select mouth prop' ) %>
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
<%= radio_options( ['None']+YEOLDEPUNK_EARRING,
|
|
66
|
+
name: 'earring',
|
|
67
|
+
legend: 'Select earring' ) %>
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
<%= radio_options( ['None']+YEOLDEPUNK_HEADWEAR,
|
|
71
|
+
name: 'headwear',
|
|
72
|
+
legend: 'Select headwear' ) %>
|
|
73
|
+
|
|
74
|
+
¹: Note: Headband (f) is a (black) hair+headwear combo.
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
<%= radio_options( ['None']+YEOLDEPUNK_NECK,
|
|
78
|
+
name: 'neck',
|
|
79
|
+
legend: 'Select neck accessory' ) %>
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
<div>
|
|
83
|
+
<button type="submit" form="form1" value="Submit"
|
|
84
|
+
style="font-size: 400%; color: white; background-color: blue;">Generate Profile Pic(ture) in .PNG Format</button>
|
|
85
|
+
</div>
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
<%= erb :'shared/_more_options' %>
|
|
90
|
+
|
|
91
|
+
</form>
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: profilepic
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Gerald Bauer
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2022-08-
|
|
11
|
+
date: 2022-08-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: originals
|
|
@@ -112,6 +112,7 @@ files:
|
|
|
112
112
|
- lib/profilepic/views/marcs.erb
|
|
113
113
|
- lib/profilepic/views/shared/_more_options.erb
|
|
114
114
|
- lib/profilepic/views/shared/_version.erb
|
|
115
|
+
- lib/profilepic/views/yeoldepunks.erb
|
|
115
116
|
homepage: https://github.com/profilepic/profilepic
|
|
116
117
|
licenses:
|
|
117
118
|
- Public Domain
|