Mercurial > laserkard
comparison Laserkard.pm @ 79:343dc947f999 laserkard
read JavaSctipt: the good parts
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Sun, 25 Jul 2010 01:33:22 -0400 |
parents | 8324f195ef36 |
children |
comparison
equal
deleted
inserted
replaced
78:4ebd94bfecda | 79:343dc947f999 |
---|---|
22 | 22 |
23 | 23 |
24 | 24 |
25 | 25 |
26 | 26 |
27 sub cardType | 27 sub cardType { return $_[0];} |
28 { | |
29 | |
30 return $_[0]; | |
31 | |
32 } | |
33 | |
34 | |
35 | 28 |
36 sub updateForm | 29 sub updateForm |
37 | 30 { |
38 { | 31 ################### |
39 | 32 $key = shift; |
40 | 33 $value = shift; |
41 $key = shift; | 34 $hashString = shift; |
42 $value = shift; | 35 ################### |
43 $hashString = shift; | 36 |
44 | 37 $perl_hash = decode_json($hashString); |
45 $perl_hash = decode_json $hashString; | 38 |
46 | 39 %fieldHash = %$perl_hash; |
47 %fieldHash = %$perl_hash; | 40 |
48 | 41 $fieldHash{$key} = $value; |
49 | 42 $ref = \%fieldHash; |
50 $fieldHash{$key} = $value; | 43 |
51 $ref = \%fieldHash; | 44 $utf8_encoded_json_text = encode_json($ref); |
52 | 45 return $utf8_encoded_json_text; |
53 $utf8_encoded_json_text = encode_json $ref ; | 46 } |
54 return $utf8_encoded_json_text; | 47 |
55 | 48 |
56 } | 49 |
57 | 50 |
58 | 51 sub material |
59 | 52 { |
60 | 53 ################## |
61 sub material{ | 54 $newvar = shift; |
62 | 55 ################## |
63 $newvar = shift; | 56 my $t = $newvar; |
64 | 57 |
65 my $t = $newvar; | 58 $newvar =~ m/([^_]*)_/; |
66 | 59 $newvar = $1; |
67 $newvar =~ m/([^_]*)_/; | 60 |
68 $newvar = $1; | 61 #return (($t =~ m/_acrylic_green/) ? 'CHECKED' : 'notchecked'); |
69 | 62 |
70 #return (($t =~ m/_acrylic_green/) ? 'CHECKED' : 'notchecked'); | 63 #$y = "$t<br>".(($t =~ m/_acrylic_green/) ? 'CHECKED' : 'notchecked')." |
71 | 64 |
72 #$y = "$t<br>".(($t =~ m/_acrylic_green/) ? 'CHECKED' : 'notchecked')." | 65 { |
73 | 66 local( $/, *FH ) ; |
74 { | 67 open( FH, "<./buy_pieces/materials2.html" ) |
75 local( $/, *FH ) ; | 68 or die "sudden flaming death\n"; |
76 open( FH, "<./buy_pieces/materials2.html" ) or die "sudden flaming death\n"; | 69 $y = <FH>; |
77 $y = <FH>; | 70 } |
78 } | 71 |
79 | 72 @symbols = qw (PERL::ACRYLIC_CLEAR PERL::ACRYLIC_BLUE PERL::ACRYLIC_GREEN |
80 @symbols = qw(PERL::ACRYLIC_CLEAR PERL::ACRYLIC_BLUE PERL::ACRYLIC_GREEN PERL::ALUMINUM_RED PERL::ALUMINUM_BLUE PERL::ALUMINUM_GREEN PERL::ALUMINUM_BLACK); | 73 PERL::ALUMINUM_RED PERL::ALUMINUM_BLUE |
81 | 74 PERL::ALUMINUM_GREEN PERL::ALUMINUM_BLACK); |
82 for (@symbols) | 75 |
83 { | 76 for (@symbols) |
77 { | |
84 $c = $_; | 78 $c = $_; |
85 $c =~ s/PERL:://; | 79 $c =~ s/PERL:://; |
86 $c =~ tr/[A-Z]/[a-z]/; | 80 $c =~ tr/[A-Z]/[a-z]/; |
87 $c =~ s/^/_/; | 81 $c =~ s/^/_/; |
88 | 82 |
89 $b = '"'.$newvar.$c.'"'.(($t =~ m/$c/) ? ' CHECKED ' : ''); | 83 $b = '"'.$newvar.$c.'"'.(($t =~ m/$c/) ? ' CHECKED ' : ''); |
90 $y =~ s/$_/$b/; | 84 $y =~ s/$_/$b/; |
91 } | 85 } |
92 | 86 |
93 | |
94 $first = shift; | 87 $first = shift; |
95 if ($first){ $y =~ s/display[^;]*;//g; } | 88 if ($first){ $y =~ s/display[^;]*;//g; } |
96 | |
97 | |
98 | |
99 return $y; | 89 return $y; |
100 | |
101 | |
102 } | 90 } |
103 | 91 |
104 | 92 |
105 | 93 |
106 sub template | 94 sub template |
107 { | 95 { |
108 | 96 |
109 $all = shift; | 97 $all = shift; |
110 $all =~ m/([^_]*)_(.*)/; | 98 $all =~ m/([^_]*)_(.*)/; |
111 | 99 |
112 $materialcolor = $2; | 100 $materialcolor = $2; |
113 $style = $1; | 101 $style = $1; |
114 #here is where we handle important drawing commands relating to the cards. | 102 #here is where we handle important drawing commands relating to the cards. |
115 | 103 |
116 | 104 |
117 | 105 |
118 $r = <<HERE; | 106 $r = <<HERE; |
119 <div id = "i_templates"><div class = 'ttyl'> <titletron>Select Style.</titletron></div> | 107 <div id = "i_templates"> |
120 <div id = 'stupid'> | 108 <div class = 'ttyl'> <titletron>Select Style.</titletron></div> |
121 | 109 <div id = 'stupid'> |
122 | 110 <input |
123 <input TYPE="image" src = "./images/templates/big_$materialcolor.jpg" | 111 TYPE="image" |
124 onmouseover="pokedex('big_$materialcolor');" | 112 src = "./images/templates/big_$materialcolor.jpg" |
125 onmouseout = "pokedex(document.getElementById('currentSpec').innerHTML);" | 113 onmouseover="pokedex('big_$materialcolor');" |
126 | 114 onmouseout = |
127 | 115 "pokedex(document.getElementById('currentSpec').innerHTML);" |
128 | 116 |
129 onclick= | 117 onclick= |
130 "display(['template2'], ['display']); | 118 "display(['template2'], ['display']); |
131 inputbox(['template2', 'formValues'], ['inputbox']); | 119 inputbox(['template2', 'formValues'], ['inputbox']); |
132 material(['template2'], ['materials']); | 120 material(['template2'], ['materials']); |
133 cardType(['template2'], ['currentSpec']); | 121 cardType(['template2'], ['currentSpec']); |
134 redraw('bold');" | 122 redraw('bold');" |
135 ID="template2" NAME="template2" VALUE="big_$materialcolor"> | 123 ID="template2" |
136 <br> | 124 NAME="template2" |
125 VALUE="big_$materialcolor"> | |
126 <br> | |
137 | 127 |
138 | 128 |
139 | 129 |
140 <input TYPE="image" src = "./images/templates/basic_$materialcolor.jpg" | 130 <input TYPE="image" src = "./images/templates/basic_$materialcolor.jpg" |
141 onmouseover="pokedex('basic_$materialcolor');" | 131 onmouseover="pokedex('basic_$materialcolor');" |
188 classic => template1, | 178 classic => template1, |
189 lines => template4 | 179 lines => template4 |
190 ); | 180 ); |
191 | 181 |
192 $target = $shankHash{$style}; | 182 $target = $shankHash{$style}; |
193 | |
194 | |
195 | |
196 | |
197 #$r =~ s/inputbox\(\['$target'\], \['inputbox'\]\)\;//; | |
198 | 183 |
199 | 184 |
200 | 185 |
201 | 186 |
202 | 187 |