planner_template 0.1.0

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 7c2670a0da91a350d241f24be1522037b0f749fd
4
+ data.tar.gz: 5bdb85f06f990527b728a3bfd29237c9a8302c3c
5
+ SHA512:
6
+ metadata.gz: 71c62baae39b148d57b87a7f7e55daf86523d3a4a8a3a3d1d0b5163c0916ac0084311a0539b631b39fb332bdff102d0bd72a7e682310a441dba5b2b4d533fd9e
7
+ data.tar.gz: 737610a604e7d2b2a409553e3c5e1b16145f88fb7079974e8eded81503b0594a42e54217fd648189b0002ddbd8d358b278dbfa313de974ba501ccae19dab508f
checksums.yaml.gz.sig ADDED
Binary file
data.tar.gz.sig ADDED
Binary file
@@ -0,0 +1,66 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # file: planner_template.rb
4
+
5
+ require 'nokorexi'
6
+
7
+ module LIBRARY
8
+
9
+ def fetch_filepath(filename)
10
+
11
+ lib = File.dirname(__FILE__)
12
+ File.join(lib, '..', 'template', filename)
13
+ end
14
+
15
+ def fetch_file(filename)
16
+
17
+ filepath = fetch_filepath filename
18
+ read filepath
19
+ end
20
+
21
+
22
+ def generate_webpage(xml, xsl)
23
+
24
+ # transform the xml to html
25
+ doc = Nokogiri::XML(xml)
26
+ xslt = Nokogiri::XSLT(xsl)
27
+ xslt.transform(doc).to_s
28
+ end
29
+
30
+ def read(s)
31
+ RXFHelper.read(s).first
32
+ end
33
+ end
34
+
35
+ class PlannerTemplate
36
+ include LIBRARY
37
+
38
+
39
+ def initialize(src, template: 'default')
40
+
41
+ @xml = read src
42
+ @xmldoc = Rexle.new(@xml)
43
+ @template = template
44
+
45
+ end
46
+
47
+ def to_html()
48
+ xsl = fetch_file File.join(@template, 'planner.xsl')
49
+ @html = generate_webpage(@xml, xsl)
50
+ end
51
+
52
+ def to_xml(options)
53
+ Rexle.new(@xml).xml(options)
54
+ end
55
+
56
+ protected
57
+
58
+ def fetch_css()
59
+
60
+ %w(layout.css style.css).map do |filename|
61
+ fetch_file File.join(@template, filename)
62
+ end
63
+
64
+ end
65
+
66
+ end
metadata ADDED
@@ -0,0 +1,87 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: planner_template
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - James Robertson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTE3MDUwNzExMzE1NFoXDTE4MDUwNzExMzE1NFowSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
+ ggEBAMPe5scb/COYg53lRCMuNwmpehPc7Opt0+Hv/7ZKWZPPZN19mW+DQEFVPGAU
19
+ QtoIvDE2VX8F/CZO9u8B8msyU5BXmGzVSodsBN2IRTyQGdkSUdiclDEb6Fo7XpDj
20
+ fY4LNssDAl1uqTm7hdpK5L8Z/hOFwVdAEQbKO5r2nx7rkXMLAEZI8CF1jvrbe8IE
21
+ N89lVR8nvTNzYYVf02FKI4oNWJWrdumKnMGFxXEuY8tNJ2Z1+1YHknq8lk+HVxrm
22
+ cMwvbFWnO4E3bR3RfpV4jF/m1TgQFOXp6FkAPyuSjVqPq5aW++zdPoRePw2FK6AS
23
+ /oCD5+9wN0WfmHkRXswyHgtD2zECAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQU4Q+a8snqgUmUobi03vv6QJqGDuQwJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAI5pdJb3Z
27
+ l9VUwCyQEz05NsKItLoEUA/8bJQUPKXMkepI+9MAOL4THRICcF0nC0wMibg6uZ8s
28
+ zVgKa8Eep39MK5W7rk5AeZtUKqf3NGdrIcthEqZ5e2k+VZHajff6+/ayzQ1eD7G+
29
+ 5JuvnWGA4Iioom60dsEGnuUinRJ0nwNfRl49qleEpH6uurVGJMg4iWgWGsGP6PbR
30
+ oHFYV6eIXufImpfxKLAviLX+BfW7ZdNDyujuov+vXRjSiQqDOtHed2Q8i95GitGO
31
+ hE7/37os0QZeDtTseb+QcQStoPXhrw4BFPY646epYJjWutuyyJuGuCkB2vd4HpTk
32
+ jo3POqDsUuOz+w==
33
+ -----END CERTIFICATE-----
34
+ date: 2017-05-07 00:00:00.000000000 Z
35
+ dependencies:
36
+ - !ruby/object:Gem::Dependency
37
+ name: nokorexi
38
+ requirement: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '0.3'
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: 0.3.1
46
+ type: :runtime
47
+ prerelease: false
48
+ version_requirements: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '0.3'
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 0.3.1
56
+ description:
57
+ email: james@jamesrobertson.eu
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - lib/planner_template.rb
63
+ homepage: https://github.com/jrobertson/planner_template
64
+ licenses:
65
+ - MIT
66
+ metadata: {}
67
+ post_install_message:
68
+ rdoc_options: []
69
+ require_paths:
70
+ - lib
71
+ required_ruby_version: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ required_rubygems_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ requirements: []
82
+ rubyforge_project:
83
+ rubygems_version: 2.6.8
84
+ signing_key:
85
+ specification_version: 4
86
+ summary: Base class for generating an HTML based weekly planner etc.
87
+ test_files: []
metadata.gz.sig ADDED
Binary file