polyrex-calendar 0.1.17 → 0.1.19

Sign up to get free protection for your applications and to get access to all the features.
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�}