polyrex-calendar 0.1.17 → 0.1.19

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 434692b184152d4c4f290363978bd8d4632adb98
4
- data.tar.gz: acd1de07f4bc0b22f9032e7bb6206d846870a8d4
3
+ metadata.gz: 3d79c9e29a7f16dc24c7f9c55f1feb8f01a90b66
4
+ data.tar.gz: 48daef077d916c60e029a577d101dad1743347a0
5
5
  SHA512:
6
- metadata.gz: 6e46ce14dc862276a23a84a72f68408913f10f82939874b441eac56e2feff5d0c12bde5e80de13781396c116cd4ba36360b4d0993322ee81a7e2587bf9a259c7
7
- data.tar.gz: 5ba7fe86e4209b75379e4c038d7d48383606f893a9b24b8d5de3247f3d86990224587d86160c53a997fae0af959963b9831f79caa7c9178fdfbddbba4199b68e
6
+ metadata.gz: f555368b9394461dd57e3880f3b64a415aa2ce5df9d5b5bc7336b74c2d28916f4d19954c6c27e74be6de3da8d9d6345530935b34a8da88c7c7327bb06f7485a5
7
+ data.tar.gz: 005c10471efdfbcbd2a3e2b1123f83d55a14189fecd1bd4b68770ef694e20bcd36b0d5f0a6c948fc49be8048b62eacbc787f40ab666178c88dcc3c9955f7442d
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -9,6 +9,7 @@
9
9
  <head>
10
10
  <title><xsl:value-of select="summary/title"/><xsl:text> </xsl:text><xsl:value-of select="summary/year"/> planner | generated by Polyrex-Calendar</title>
11
11
  <link rel="stylesheet" href="month_layout.css"/>
12
+ <link rel="stylesheet" href="month.css"/>
12
13
  </head>
13
14
 
14
15
  <body>
@@ -45,7 +46,10 @@
45
46
  </xsl:template>
46
47
 
47
48
  <xsl:template match="day/summary">
48
- <td>
49
+ <xsl:element name="td">
50
+ <xsl:if test="css_style">
51
+ <xsl:attribute name="class"><xsl:value-of select="css_style"/></xsl:attribute>
52
+ </xsl:if>
49
53
  <div>
50
54
  <xsl:if test="title!=''">
51
55
  <xsl:value-of select="xday"/>
@@ -55,9 +59,7 @@
55
59
  <div><xsl:value-of select="bankholiday"/></div>
56
60
  <div><xsl:value-of select="event"/></div>
57
61
 
58
-
59
-
60
- </td>
62
+ </xsl:element>
61
63
  </xsl:template>
62
64
 
63
65
 
@@ -23,17 +23,24 @@ class PolyrexCalendar
23
23
 
24
24
  attr_accessor :xsl, :css, :polyrex, :month_xsl, :month_css
25
25
 
26
- def initialize(year=nil, options={})
26
+ def initialize(calendar_file=nil, options={})
27
27
 
28
28
  @id = '1'
29
-
29
+ if calendar_file then
30
+ @polyrex = Polyrex.new calendar_file
31
+ @id = @polyrex.id_counter
32
+ else
33
+ @id = '1'
34
+ end
35
+
30
36
  lib = File.dirname(__FILE__)
31
37
  opts = {calendar_xsl: lib + '/calendar.xsl'
32
38
  }.merge(options)
39
+
40
+ year = opts[:year]
33
41
  @year = year ? year.to_s : Time.now.year.to_s
34
42
  generate_calendar
35
43
 
36
-
37
44
  @xsl = File.read lib + '/calendar.xsl'
38
45
  @css = File.read lib + '/layout.css'
39
46
 
@@ -47,15 +54,23 @@ class PolyrexCalendar
47
54
  lib = File.dirname(__FILE__)
48
55
 
49
56
  month_xsl = File.read lib + '/month_calendar.xsl'
50
- month_css = File.read lib + '/month_layout.css'
57
+ month_layout_css = File.read lib + '/month_layout.css'
58
+ month_css = File.read lib + '/month.css'
51
59
 
52
60
  File.open('self.xml','w'){|f| f.write self.to_xml pretty: true}
53
61
  File.open('month.xsl','w'){|f| f.write month_xsl }
54
62
  #html = Rexslt.new(month_xsl, self.to_xml).to_xml
55
63
 
64
+ # add a css selector for the current day
65
+ date = Time.now.strftime("%Y-%b-%d")
66
+ doc = Rexle.new self.to_xml
67
+ e = doc.root.element("records/week/records/day/summary[date='#{date}']")
68
+ e.add Rexle::Element.new('css_style').add_text('selected')
69
+
56
70
  xslt = Nokogiri::XSLT(month_xsl)
57
- html = xslt.transform(Nokogiri::XML(self.to_xml)).to_s
58
- {self.title.downcase[0..2] + '_calendar.html' => html, 'month_layout.css' => month_css}
71
+ html = xslt.transform(Nokogiri::XML(doc.xml)).to_s
72
+ {self.title.downcase[0..2] + '_calendar.html' => html,
73
+ 'month_layout.css' => month_layout_css, 'month.css' => month_css}
59
74
 
60
75
  end
61
76
 
@@ -82,8 +97,16 @@ class PolyrexCalendar
82
97
  File.open('week.xsl','w'){|f| f.write week_xsl }
83
98
  #html = Rexslt.new(week_xsl, self.to_xml).to_xml
84
99
  #html = xsltproc 'week_calendar.xsl', self.to_xml
100
+
101
+ # add a css selector for the current day
102
+ date = Time.now.strftime("%Y-%b-%d")
103
+ doc = Rexle.new self.to_xml
104
+ e = doc.root.element("records/day/summary[date='#{date}']")
105
+
106
+ e.add Rexle::Element.new('css_style').add_text('selected')
85
107
  xslt = Nokogiri::XSLT(week_xsl)
86
- html = xslt.transform(Nokogiri::XML(self.to_xml)).to_s
108
+ html = xslt.transform(Nokogiri::XML(doc.xml)).to_s
109
+
87
110
  {'week' + self.no + '_planner.html' => html, 'week_layout.css' => week_layout_css, \
88
111
  'week.css' => week_css}
89
112
  end
@@ -142,6 +165,10 @@ class PolyrexCalendar
142
165
  # for testing only
143
166
  #polyrex
144
167
  end
168
+
169
+ def save(filename='polyrex.xml')
170
+ @polyrex.save filenameS
171
+ end
145
172
 
146
173
  def this_week()
147
174
 
data/lib/week.css CHANGED
@@ -7,19 +7,24 @@
7
7
  padding: 0.4em 0.2em;
8
8
  }
9
9
 
10
- #wrap ul {
11
- background-color: transparent;
10
+ #wrap div ul {
11
+ background-color: #ee9;
12
12
  list-style-type: none;
13
13
  padding: 0.1em 1em;
14
14
  margin: 0.3em 0.2em;
15
15
  }
16
16
 
17
- #wrap ul li {
18
- background-color: transparent;
17
+ #wrap div ul li {
18
+ background-color: #492;
19
19
  padding: 0.2em 0.2em;
20
20
  margin: 0.2em 0.2em;
21
21
  }
22
22
 
23
+ #wrap div ul li.selected {
24
+ background-color: rgba(200,200,150,1);
25
+ }
26
+
27
+
23
28
  #wrap ul li h2 {
24
29
  background-color: transparent;
25
30
  font-size: 1.1em;
@@ -64,4 +69,4 @@
64
69
  font-size: 1.2em;
65
70
  margin: 1.8em 0.5em 0.3em 0.4em;
66
71
  padding: 0.3em 0.4em;
67
- }
72
+ }
data/lib/week.xsl CHANGED
@@ -45,10 +45,13 @@
45
45
  </xsl:template>
46
46
 
47
47
  <xsl:template match='day'>
48
- <li>
48
+ <xsl:element name="li">
49
+ <xsl:if test="summary/css_style">
50
+ <xsl:attribute name="class"><xsl:value-of select="summary/css_style"/></xsl:attribute>
51
+ </xsl:if>
49
52
  <xsl:apply-templates select='summary'/>
50
53
  <xsl:apply-templates select='records'/>
51
- </li>
54
+ </xsl:element>
52
55
  </xsl:template>
53
56
 
54
57
  <xsl:template match='day/summary'>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: polyrex-calendar
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.17
4
+ version: 0.1.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
metadata.gz.sig CHANGED
@@ -1 +1,2 @@
1
- ��ՄʝE5My &Q�Cpd f>��]ln���T���� :�y7����\l�^��5�j'�AH4�$\N���
1
+ +�尩�Xl��C����Z�+� lf�mAq!�ŕ��uo��(lx~���ʈb��h����Fй�U���������2���Ze,�g���`��* �T)��H�r���퇽�Op��^\nqh�-B.�õ�ir�%h�ޅS�!79�'�- ]�@#7��>�.���]H%>/�� �|�x#-0ȳ�rcB��0"�6(A/ -&Ma�g�1�B� -�hߺ�fl����
2
+ �l�w�D�6+z�-,�� �5�S�}