enju_purchase_request 0.0.12 → 0.0.13

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.
@@ -1,5 +1,6 @@
1
1
  require "enju_purchase_request/engine"
2
2
  require "enju_purchase_request/bookmark_url"
3
+ require "enju_purchase_request/user"
3
4
 
4
5
  module EnjuPurchaseRequest
5
6
  def self.included(base)
@@ -26,3 +27,4 @@ module EnjuPurchaseRequest
26
27
  end
27
28
 
28
29
  ActionController::Base.send(:include, EnjuPurchaseRequest)
30
+ ActiveRecord::Base.send :include, EnjuPurchaseRequest::PurchaseRequestUser
@@ -0,0 +1,14 @@
1
+ module EnjuPurchaseRequest
2
+ module PurchaseRequestUser
3
+ def self.included(base)
4
+ base.extend ClassMethods
5
+ end
6
+
7
+ module ClassMethods
8
+ def enju_purchase_request_user
9
+ has_many :purchase_requests
10
+ has_many :order_lists
11
+ end
12
+ end
13
+ end
14
+ end
@@ -1,3 +1,3 @@
1
1
  module EnjuPurchaseRequest
2
- VERSION = "0.0.12"
2
+ VERSION = "0.0.13"
3
3
  end
@@ -11,8 +11,8 @@ class User < ActiveRecord::Base
11
11
  has_one :role, :through => :user_has_role
12
12
  belongs_to :user_group
13
13
  belongs_to :required_role, :class_name => 'Role', :foreign_key => 'required_role_id'
14
- has_many :purchase_requests
15
- has_many :order_lists
14
+
15
+ enju_purchase_request_user
16
16
 
17
17
  def has_role?(role_in_question)
18
18
  return false unless role
Binary file
@@ -0,0 +1,132 @@
1
+ <?xml version='1.0' encoding='UTF-8'?>
2
+
3
+ <!--
4
+ * Licensed to the Apache Software Foundation (ASF) under one or more
5
+ * contributor license agreements. See the NOTICE file distributed with
6
+ * this work for additional information regarding copyright ownership.
7
+ * The ASF licenses this file to You under the Apache License, Version 2.0
8
+ * (the "License"); you may not use this file except in compliance with
9
+ * the License. You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ -->
19
+
20
+ <!--
21
+ Simple transform of Solr query results to HTML
22
+ -->
23
+ <xsl:stylesheet version='1.0'
24
+ xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
25
+ >
26
+
27
+ <xsl:output media-type="text/html; charset=UTF-8" encoding="UTF-8"/>
28
+
29
+ <xsl:variable name="title" select="concat('Solr search results (',response/result/@numFound,' documents)')"/>
30
+
31
+ <xsl:template match='/'>
32
+ <html>
33
+ <head>
34
+ <title><xsl:value-of select="$title"/></title>
35
+ <xsl:call-template name="css"/>
36
+ </head>
37
+ <body>
38
+ <h1><xsl:value-of select="$title"/></h1>
39
+ <div class="note">
40
+ This has been formatted by the sample "example.xsl" transform -
41
+ use your own XSLT to get a nicer page
42
+ </div>
43
+ <xsl:apply-templates select="response/result/doc"/>
44
+ </body>
45
+ </html>
46
+ </xsl:template>
47
+
48
+ <xsl:template match="doc">
49
+ <xsl:variable name="pos" select="position()"/>
50
+ <div class="doc">
51
+ <table width="100%">
52
+ <xsl:apply-templates>
53
+ <xsl:with-param name="pos"><xsl:value-of select="$pos"/></xsl:with-param>
54
+ </xsl:apply-templates>
55
+ </table>
56
+ </div>
57
+ </xsl:template>
58
+
59
+ <xsl:template match="doc/*[@name='score']" priority="100">
60
+ <xsl:param name="pos"></xsl:param>
61
+ <tr>
62
+ <td class="name">
63
+ <xsl:value-of select="@name"/>
64
+ </td>
65
+ <td class="value">
66
+ <xsl:value-of select="."/>
67
+
68
+ <xsl:if test="boolean(//lst[@name='explain'])">
69
+ <xsl:element name="a">
70
+ <!-- can't allow whitespace here -->
71
+ <xsl:attribute name="href">javascript:toggle("<xsl:value-of select="concat('exp-',$pos)" />");</xsl:attribute>?</xsl:element>
72
+ <br/>
73
+ <xsl:element name="div">
74
+ <xsl:attribute name="class">exp</xsl:attribute>
75
+ <xsl:attribute name="id">
76
+ <xsl:value-of select="concat('exp-',$pos)" />
77
+ </xsl:attribute>
78
+ <xsl:value-of select="//lst[@name='explain']/str[position()=$pos]"/>
79
+ </xsl:element>
80
+ </xsl:if>
81
+ </td>
82
+ </tr>
83
+ </xsl:template>
84
+
85
+ <xsl:template match="doc/arr" priority="100">
86
+ <tr>
87
+ <td class="name">
88
+ <xsl:value-of select="@name"/>
89
+ </td>
90
+ <td class="value">
91
+ <ul>
92
+ <xsl:for-each select="*">
93
+ <li><xsl:value-of select="."/></li>
94
+ </xsl:for-each>
95
+ </ul>
96
+ </td>
97
+ </tr>
98
+ </xsl:template>
99
+
100
+
101
+ <xsl:template match="doc/*">
102
+ <tr>
103
+ <td class="name">
104
+ <xsl:value-of select="@name"/>
105
+ </td>
106
+ <td class="value">
107
+ <xsl:value-of select="."/>
108
+ </td>
109
+ </tr>
110
+ </xsl:template>
111
+
112
+ <xsl:template match="*"/>
113
+
114
+ <xsl:template name="css">
115
+ <script>
116
+ function toggle(id) {
117
+ var obj = document.getElementById(id);
118
+ obj.style.display = (obj.style.display != 'block') ? 'block' : 'none';
119
+ }
120
+ </script>
121
+ <style type="text/css">
122
+ body { font-family: "Lucida Grande", sans-serif }
123
+ td.name { font-style: italic; font-size:80%; }
124
+ td { vertical-align: top; }
125
+ ul { margin: 0px; margin-left: 1em; padding: 0px; }
126
+ .note { font-size:80%; }
127
+ .doc { margin-top: 1em; border-top: solid grey 1px; }
128
+ .exp { display: none; font-family: monospace; white-space: pre; }
129
+ </style>
130
+ </xsl:template>
131
+
132
+ </xsl:stylesheet>
@@ -0,0 +1,67 @@
1
+ <?xml version='1.0' encoding='UTF-8'?>
2
+
3
+ <!--
4
+ * Licensed to the Apache Software Foundation (ASF) under one or more
5
+ * contributor license agreements. See the NOTICE file distributed with
6
+ * this work for additional information regarding copyright ownership.
7
+ * The ASF licenses this file to You under the Apache License, Version 2.0
8
+ * (the "License"); you may not use this file except in compliance with
9
+ * the License. You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ -->
19
+
20
+ <!--
21
+ Simple transform of Solr query results to Atom
22
+ -->
23
+
24
+ <xsl:stylesheet version='1.0'
25
+ xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
26
+
27
+ <xsl:output
28
+ method="xml"
29
+ encoding="utf-8"
30
+ media-type="text/xml; charset=UTF-8"
31
+ />
32
+
33
+ <xsl:template match='/'>
34
+ <xsl:variable name="query" select="response/lst[@name='responseHeader']/lst[@name='params']/str[@name='q']"/>
35
+ <feed xmlns="http://www.w3.org/2005/Atom">
36
+ <title>Example Solr Atom 1.0 Feed</title>
37
+ <subtitle>
38
+ This has been formatted by the sample "example_atom.xsl" transform -
39
+ use your own XSLT to get a nicer Atom feed.
40
+ </subtitle>
41
+ <author>
42
+ <name>Apache Solr</name>
43
+ <email>solr-user@lucene.apache.org</email>
44
+ </author>
45
+ <link rel="self" type="application/atom+xml"
46
+ href="http://localhost:8983/solr/q={$query}&amp;wt=xslt&amp;tr=atom.xsl"/>
47
+ <updated>
48
+ <xsl:value-of select="response/result/doc[position()=1]/date[@name='timestamp']"/>
49
+ </updated>
50
+ <id>tag:localhost,2007:example</id>
51
+ <xsl:apply-templates select="response/result/doc"/>
52
+ </feed>
53
+ </xsl:template>
54
+
55
+ <!-- search results xslt -->
56
+ <xsl:template match="doc">
57
+ <xsl:variable name="id" select="str[@name='id']"/>
58
+ <entry>
59
+ <title><xsl:value-of select="str[@name='name']"/></title>
60
+ <link href="http://localhost:8983/solr/select?q={$id}"/>
61
+ <id>tag:localhost,2007:<xsl:value-of select="$id"/></id>
62
+ <summary><xsl:value-of select="arr[@name='features']"/></summary>
63
+ <updated><xsl:value-of select="date[@name='timestamp']"/></updated>
64
+ </entry>
65
+ </xsl:template>
66
+
67
+ </xsl:stylesheet>
@@ -0,0 +1,66 @@
1
+ <?xml version='1.0' encoding='UTF-8'?>
2
+
3
+ <!--
4
+ * Licensed to the Apache Software Foundation (ASF) under one or more
5
+ * contributor license agreements. See the NOTICE file distributed with
6
+ * this work for additional information regarding copyright ownership.
7
+ * The ASF licenses this file to You under the Apache License, Version 2.0
8
+ * (the "License"); you may not use this file except in compliance with
9
+ * the License. You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ -->
19
+
20
+ <!--
21
+ Simple transform of Solr query results to RSS
22
+ -->
23
+
24
+ <xsl:stylesheet version='1.0'
25
+ xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
26
+
27
+ <xsl:output
28
+ method="xml"
29
+ encoding="utf-8"
30
+ media-type="text/xml; charset=UTF-8"
31
+ />
32
+ <xsl:template match='/'>
33
+ <rss version="2.0">
34
+ <channel>
35
+ <title>Example Solr RSS 2.0 Feed</title>
36
+ <link>http://localhost:8983/solr</link>
37
+ <description>
38
+ This has been formatted by the sample "example_rss.xsl" transform -
39
+ use your own XSLT to get a nicer RSS feed.
40
+ </description>
41
+ <language>en-us</language>
42
+ <docs>http://localhost:8983/solr</docs>
43
+ <xsl:apply-templates select="response/result/doc"/>
44
+ </channel>
45
+ </rss>
46
+ </xsl:template>
47
+
48
+ <!-- search results xslt -->
49
+ <xsl:template match="doc">
50
+ <xsl:variable name="id" select="str[@name='id']"/>
51
+ <xsl:variable name="timestamp" select="date[@name='timestamp']"/>
52
+ <item>
53
+ <title><xsl:value-of select="str[@name='name']"/></title>
54
+ <link>
55
+ http://localhost:8983/solr/select?q=id:<xsl:value-of select="$id"/>
56
+ </link>
57
+ <description>
58
+ <xsl:value-of select="arr[@name='features']"/>
59
+ </description>
60
+ <pubDate><xsl:value-of select="$timestamp"/></pubDate>
61
+ <guid>
62
+ http://localhost:8983/solr/select?q=id:<xsl:value-of select="$id"/>
63
+ </guid>
64
+ </item>
65
+ </xsl:template>
66
+ </xsl:stylesheet>
@@ -0,0 +1,337 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ Licensed to the Apache Software Foundation (ASF) under one or more
4
+ contributor license agreements. See the NOTICE file distributed with
5
+ this work for additional information regarding copyright ownership.
6
+ The ASF licenses this file to You under the Apache License, Version 2.0
7
+ (the "License"); you may not use this file except in compliance with
8
+ the License. You may obtain a copy of the License at
9
+
10
+ http://www.apache.org/licenses/LICENSE-2.0
11
+
12
+ Unless required by applicable law or agreed to in writing, software
13
+ distributed under the License is distributed on an "AS IS" BASIS,
14
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ See the License for the specific language governing permissions and
16
+ limitations under the License.
17
+ -->
18
+
19
+
20
+ <!--
21
+ Display the luke request handler with graphs
22
+ -->
23
+ <xsl:stylesheet
24
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
25
+ xmlns="http://www.w3.org/1999/xhtml"
26
+ version="1.0"
27
+ >
28
+ <xsl:output
29
+ method="html"
30
+ encoding="UTF-8"
31
+ media-type="text/html; charset=UTF-8"
32
+ doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
33
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
34
+ />
35
+
36
+ <xsl:variable name="title">Solr Luke Request Handler Response</xsl:variable>
37
+
38
+ <xsl:template match="/">
39
+ <html xmlns="http://www.w3.org/1999/xhtml">
40
+ <head>
41
+ <link rel="stylesheet" type="text/css" href="solr-admin.css"/>
42
+ <link rel="icon" href="favicon.ico" type="image/ico"/>
43
+ <link rel="shortcut icon" href="favicon.ico" type="image/ico"/>
44
+ <title>
45
+ <xsl:value-of select="$title"/>
46
+ </title>
47
+ <xsl:call-template name="css"/>
48
+
49
+ </head>
50
+ <body>
51
+ <h1>
52
+ <xsl:value-of select="$title"/>
53
+ </h1>
54
+ <div class="doc">
55
+ <ul>
56
+ <xsl:if test="response/lst[@name='index']">
57
+ <li>
58
+ <a href="#index">Index Statistics</a>
59
+ </li>
60
+ </xsl:if>
61
+ <xsl:if test="response/lst[@name='fields']">
62
+ <li>
63
+ <a href="#fields">Field Statistics</a>
64
+ <ul>
65
+ <xsl:for-each select="response/lst[@name='fields']/lst">
66
+ <li>
67
+ <a href="#{@name}">
68
+ <xsl:value-of select="@name"/>
69
+ </a>
70
+ </li>
71
+ </xsl:for-each>
72
+ </ul>
73
+ </li>
74
+ </xsl:if>
75
+ <xsl:if test="response/lst[@name='doc']">
76
+ <li>
77
+ <a href="#doc">Document statistics</a>
78
+ </li>
79
+ </xsl:if>
80
+ </ul>
81
+ </div>
82
+ <xsl:if test="response/lst[@name='index']">
83
+ <h2><a name="index"/>Index Statistics</h2>
84
+ <xsl:apply-templates select="response/lst[@name='index']"/>
85
+ </xsl:if>
86
+ <xsl:if test="response/lst[@name='fields']">
87
+ <h2><a name="fields"/>Field Statistics</h2>
88
+ <xsl:apply-templates select="response/lst[@name='fields']"/>
89
+ </xsl:if>
90
+ <xsl:if test="response/lst[@name='doc']">
91
+ <h2><a name="doc"/>Document statistics</h2>
92
+ <xsl:apply-templates select="response/lst[@name='doc']"/>
93
+ </xsl:if>
94
+ </body>
95
+ </html>
96
+ </xsl:template>
97
+
98
+ <xsl:template match="lst">
99
+ <xsl:if test="parent::lst">
100
+ <tr>
101
+ <td colspan="2">
102
+ <div class="doc">
103
+ <xsl:call-template name="list"/>
104
+ </div>
105
+ </td>
106
+ </tr>
107
+ </xsl:if>
108
+ <xsl:if test="not(parent::lst)">
109
+ <div class="doc">
110
+ <xsl:call-template name="list"/>
111
+ </div>
112
+ </xsl:if>
113
+ </xsl:template>
114
+
115
+ <xsl:template name="list">
116
+ <xsl:if test="count(child::*)>0">
117
+ <table>
118
+ <thead>
119
+ <tr>
120
+ <th colspan="2">
121
+ <p>
122
+ <a name="{@name}"/>
123
+ </p>
124
+ <xsl:value-of select="@name"/>
125
+ </th>
126
+ </tr>
127
+ </thead>
128
+ <tbody>
129
+ <xsl:choose>
130
+ <xsl:when
131
+ test="@name='histogram'">
132
+ <tr>
133
+ <td colspan="2">
134
+ <xsl:call-template name="histogram"/>
135
+ </td>
136
+ </tr>
137
+ </xsl:when>
138
+ <xsl:otherwise>
139
+ <xsl:apply-templates/>
140
+ </xsl:otherwise>
141
+ </xsl:choose>
142
+ </tbody>
143
+ </table>
144
+ </xsl:if>
145
+ </xsl:template>
146
+
147
+ <xsl:template name="histogram">
148
+ <div class="doc">
149
+ <xsl:call-template name="barchart">
150
+ <xsl:with-param name="max_bar_width">50</xsl:with-param>
151
+ <xsl:with-param name="iwidth">800</xsl:with-param>
152
+ <xsl:with-param name="iheight">160</xsl:with-param>
153
+ <xsl:with-param name="fill">blue</xsl:with-param>
154
+ </xsl:call-template>
155
+ </div>
156
+ </xsl:template>
157
+
158
+ <xsl:template name="barchart">
159
+ <xsl:param name="max_bar_width"/>
160
+ <xsl:param name="iwidth"/>
161
+ <xsl:param name="iheight"/>
162
+ <xsl:param name="fill"/>
163
+ <xsl:variable name="max">
164
+ <xsl:for-each select="int">
165
+ <xsl:sort data-type="number" order="descending"/>
166
+ <xsl:if test="position()=1">
167
+ <xsl:value-of select="."/>
168
+ </xsl:if>
169
+ </xsl:for-each>
170
+ </xsl:variable>
171
+ <xsl:variable name="bars">
172
+ <xsl:value-of select="count(int)"/>
173
+ </xsl:variable>
174
+ <xsl:variable name="bar_width">
175
+ <xsl:choose>
176
+ <xsl:when test="$max_bar_width &lt; ($iwidth div $bars)">
177
+ <xsl:value-of select="$max_bar_width"/>
178
+ </xsl:when>
179
+ <xsl:otherwise>
180
+ <xsl:value-of select="$iwidth div $bars"/>
181
+ </xsl:otherwise>
182
+ </xsl:choose>
183
+ </xsl:variable>
184
+ <table class="histogram">
185
+ <tbody>
186
+ <tr>
187
+ <xsl:for-each select="int">
188
+ <td>
189
+ <xsl:value-of select="."/>
190
+ <div class="histogram">
191
+ <xsl:attribute name="style">background-color: <xsl:value-of select="$fill"/>; width: <xsl:value-of select="$bar_width"/>px; height: <xsl:value-of select="($iheight*number(.)) div $max"/>px;</xsl:attribute>
192
+ </div>
193
+ </td>
194
+ </xsl:for-each>
195
+ </tr>
196
+ <tr>
197
+ <xsl:for-each select="int">
198
+ <td>
199
+ <xsl:value-of select="@name"/>
200
+ </td>
201
+ </xsl:for-each>
202
+ </tr>
203
+ </tbody>
204
+ </table>
205
+ </xsl:template>
206
+
207
+ <xsl:template name="keyvalue">
208
+ <xsl:choose>
209
+ <xsl:when test="@name">
210
+ <tr>
211
+ <td class="name">
212
+ <xsl:value-of select="@name"/>
213
+ </td>
214
+ <td class="value">
215
+ <xsl:value-of select="."/>
216
+ </td>
217
+ </tr>
218
+ </xsl:when>
219
+ <xsl:otherwise>
220
+ <xsl:value-of select="."/>
221
+ </xsl:otherwise>
222
+ </xsl:choose>
223
+ </xsl:template>
224
+
225
+ <xsl:template match="int|bool|long|float|double|uuid|date">
226
+ <xsl:call-template name="keyvalue"/>
227
+ </xsl:template>
228
+
229
+ <xsl:template match="arr">
230
+ <tr>
231
+ <td class="name">
232
+ <xsl:value-of select="@name"/>
233
+ </td>
234
+ <td class="value">
235
+ <ul>
236
+ <xsl:for-each select="child::*">
237
+ <li>
238
+ <xsl:apply-templates/>
239
+ </li>
240
+ </xsl:for-each>
241
+ </ul>
242
+ </td>
243
+ </tr>
244
+ </xsl:template>
245
+
246
+ <xsl:template match="str">
247
+ <xsl:choose>
248
+ <xsl:when test="@name='schema' or @name='index' or @name='flags'">
249
+ <xsl:call-template name="schema"/>
250
+ </xsl:when>
251
+ <xsl:otherwise>
252
+ <xsl:call-template name="keyvalue"/>
253
+ </xsl:otherwise>
254
+ </xsl:choose>
255
+ </xsl:template>
256
+
257
+ <xsl:template name="schema">
258
+ <tr>
259
+ <td class="name">
260
+ <xsl:value-of select="@name"/>
261
+ </td>
262
+ <td class="value">
263
+ <xsl:if test="contains(.,'unstored')">
264
+ <xsl:value-of select="."/>
265
+ </xsl:if>
266
+ <xsl:if test="not(contains(.,'unstored'))">
267
+ <xsl:call-template name="infochar2string">
268
+ <xsl:with-param name="charList">
269
+ <xsl:value-of select="."/>
270
+ </xsl:with-param>
271
+ </xsl:call-template>
272
+ </xsl:if>
273
+ </td>
274
+ </tr>
275
+ </xsl:template>
276
+
277
+ <xsl:template name="infochar2string">
278
+ <xsl:param name="i">1</xsl:param>
279
+ <xsl:param name="charList"/>
280
+
281
+ <xsl:variable name="char">
282
+ <xsl:value-of select="substring($charList,$i,1)"/>
283
+ </xsl:variable>
284
+ <xsl:choose>
285
+ <xsl:when test="$char='I'">
286
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='I']"/> - </xsl:when>
287
+ <xsl:when test="$char='T'">
288
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='T']"/> - </xsl:when>
289
+ <xsl:when test="$char='S'">
290
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='S']"/> - </xsl:when>
291
+ <xsl:when test="$char='M'">
292
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='M']"/> - </xsl:when>
293
+ <xsl:when test="$char='V'">
294
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='V']"/> - </xsl:when>
295
+ <xsl:when test="$char='o'">
296
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='o']"/> - </xsl:when>
297
+ <xsl:when test="$char='p'">
298
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='p']"/> - </xsl:when>
299
+ <xsl:when test="$char='O'">
300
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='O']"/> - </xsl:when>
301
+ <xsl:when test="$char='L'">
302
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='L']"/> - </xsl:when>
303
+ <xsl:when test="$char='B'">
304
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='B']"/> - </xsl:when>
305
+ <xsl:when test="$char='C'">
306
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='C']"/> - </xsl:when>
307
+ <xsl:when test="$char='f'">
308
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='f']"/> - </xsl:when>
309
+ <xsl:when test="$char='l'">
310
+ <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='l']"/> -
311
+ </xsl:when>
312
+ </xsl:choose>
313
+
314
+ <xsl:if test="not($i>=string-length($charList))">
315
+ <xsl:call-template name="infochar2string">
316
+ <xsl:with-param name="i">
317
+ <xsl:value-of select="$i+1"/>
318
+ </xsl:with-param>
319
+ <xsl:with-param name="charList">
320
+ <xsl:value-of select="$charList"/>
321
+ </xsl:with-param>
322
+ </xsl:call-template>
323
+ </xsl:if>
324
+ </xsl:template>
325
+ <xsl:template name="css">
326
+ <style type="text/css">
327
+ <![CDATA[
328
+ td.name {font-style: italic; font-size:80%; }
329
+ .doc { margin: 0.5em; border: solid grey 1px; }
330
+ .exp { display: none; font-family: monospace; white-space: pre; }
331
+ div.histogram { background: none repeat scroll 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;}
332
+ table.histogram { width: auto; vertical-align: bottom; }
333
+ table.histogram td, table.histogram th { text-align: center; vertical-align: bottom; border-bottom: 1px solid #ff9933; width: auto; }
334
+ ]]>
335
+ </style>
336
+ </xsl:template>
337
+ </xsl:stylesheet>
@@ -0,0 +1,3 @@
1
+ ����
2
+ class_nameisbn_surl_s user_id_iorder_list_id_i created_at_d ordered_b
3
+ title_text author_textpublisher_texturl_text
@@ -0,0 +1 @@
1
+ NRM�ux|||uxuuu�xxxx�����
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enju_purchase_request
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.12
4
+ version: 0.0.13
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-06-19 00:00:00.000000000 Z
12
+ date: 2012-06-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -183,7 +183,7 @@ files:
183
183
  - db/migrate/20081009062129_create_order_lists.rb
184
184
  - lib/enju_purchase_request/bookmark_url.rb
185
185
  - lib/enju_purchase_request/engine.rb
186
- - lib/enju_purchase_request/url_validator.rb
186
+ - lib/enju_purchase_request/user.rb
187
187
  - lib/enju_purchase_request/version.rb
188
188
  - lib/enju_purchase_request.rb
189
189
  - lib/tasks/enju_purchase_request_tasks.rake
@@ -253,10 +253,23 @@ files:
253
253
  - spec/dummy/solr/conf/spellings.txt
254
254
  - spec/dummy/solr/conf/stopwords.txt
255
255
  - spec/dummy/solr/conf/synonyms.txt
256
+ - spec/dummy/solr/conf/xslt/example.xsl
257
+ - spec/dummy/solr/conf/xslt/example_atom.xsl
258
+ - spec/dummy/solr/conf/xslt/example_rss.xsl
259
+ - spec/dummy/solr/conf/xslt/luke.xsl
260
+ - spec/dummy/solr/data/test/index/_0.fdt
261
+ - spec/dummy/solr/data/test/index/_0.fdx
262
+ - spec/dummy/solr/data/test/index/_0.fnm
263
+ - spec/dummy/solr/data/test/index/_0.frq
264
+ - spec/dummy/solr/data/test/index/_0.nrm
265
+ - spec/dummy/solr/data/test/index/_0.prx
266
+ - spec/dummy/solr/data/test/index/_0.tii
267
+ - spec/dummy/solr/data/test/index/_0.tis
256
268
  - spec/dummy/solr/data/test/index/segments.gen
257
- - spec/dummy/solr/data/test/index/segments_1
269
+ - spec/dummy/solr/data/test/index/segments_2
258
270
  - spec/dummy/solr/data/test/spellchecker/segments.gen
259
271
  - spec/dummy/solr/data/test/spellchecker/segments_1
272
+ - spec/dummy/solr/pids/test/sunspot-solr-test.pid
260
273
  - spec/factories/bookstore.rb
261
274
  - spec/factories/order.rb
262
275
  - spec/factories/order_list.rb
@@ -362,10 +375,23 @@ test_files:
362
375
  - spec/dummy/solr/conf/spellings.txt
363
376
  - spec/dummy/solr/conf/stopwords.txt
364
377
  - spec/dummy/solr/conf/synonyms.txt
378
+ - spec/dummy/solr/conf/xslt/example.xsl
379
+ - spec/dummy/solr/conf/xslt/example_atom.xsl
380
+ - spec/dummy/solr/conf/xslt/example_rss.xsl
381
+ - spec/dummy/solr/conf/xslt/luke.xsl
382
+ - spec/dummy/solr/data/test/index/_0.fdt
383
+ - spec/dummy/solr/data/test/index/_0.fdx
384
+ - spec/dummy/solr/data/test/index/_0.fnm
385
+ - spec/dummy/solr/data/test/index/_0.frq
386
+ - spec/dummy/solr/data/test/index/_0.nrm
387
+ - spec/dummy/solr/data/test/index/_0.prx
388
+ - spec/dummy/solr/data/test/index/_0.tii
389
+ - spec/dummy/solr/data/test/index/_0.tis
365
390
  - spec/dummy/solr/data/test/index/segments.gen
366
- - spec/dummy/solr/data/test/index/segments_1
391
+ - spec/dummy/solr/data/test/index/segments_2
367
392
  - spec/dummy/solr/data/test/spellchecker/segments.gen
368
393
  - spec/dummy/solr/data/test/spellchecker/segments_1
394
+ - spec/dummy/solr/pids/test/sunspot-solr-test.pid
369
395
  - spec/factories/bookstore.rb
370
396
  - spec/factories/order.rb
371
397
  - spec/factories/order_list.rb
@@ -1,10 +0,0 @@
1
- class UrlValidator < ActiveModel::EachValidator
2
- def validate_each(record, attribute, value)
3
- url = ::Addressable::URI.parse(value)
4
- if url
5
- unless ['http', 'https'].include?(url.scheme)
6
- record.errors.add(attribute.to_sym)
7
- end
8
- end
9
- end
10
- end