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