Class: Ape::Samples

Inherits:
Object
  • Object
show all
Defined in:
lib/ape/samples.rb

Constant Summary collapse

@@service_schema =
nil
@@categories_schema =
nil
@@atom_schema =
nil

Class Method Summary collapse

Class Method Details

.atom_RNCObject



50
51
52
53
# File 'lib/ape/samples.rb', line 50

def Samples.atom_RNC
  @@atom_schema = load_schema('atom') unless @@atom_schema
  @@atom_schema
end

.basic_entryObject



78
79
80
81
82
83
84
85
86
87
88
# File 'lib/ape/samples.rb', line 78

def Samples.basic_entry
  eruby = load_template('basic_entry')      
   
  context = SamplesContext.new(        
    :title => Escaper.escape('From the <APE> (サル)'),
    :subject => Names::DcNamespace
  )
  context[:summary] = "Summary from the &lt;b>&amp;lt;&amp;nbsp;APE&amp;nbsp;>&lt;/b> at #{context.now}"
  
  eruby.evaluate(context)
end

.cat_test_entryObject



94
95
96
# File 'lib/ape/samples.rb', line 94

def Samples.cat_test_entry
  retitled_entry('Testing category posting')
end

.categories_RNCObject



45
46
47
48
# File 'lib/ape/samples.rb', line 45

def Samples.categories_RNC
  @@categories_schema = load_schema('categories') unless @@categories_schema
  @@categories_schema
end

.entry_path(type) ⇒ Object



63
64
65
66
67
# File 'lib/ape/samples.rb', line 63

def Samples.entry_path(type)
  File.exist?(File.join(::Ape.home, "/#{type}.eruby"))?
    File.join(::Ape.home, "/#{type}.eruby") :
    File.join(File.dirname(__FILE__), "/../../samples/#{type}.eruby")
end

.foreign_childObject



26
27
28
# File 'lib/ape/samples.rb', line 26

def Samples.foreign_child
  'subject'
end

.foreign_child_contentObject



32
33
34
# File 'lib/ape/samples.rb', line 32

def Samples.foreign_child_content
  'Simians'
end

.foreign_namespaceObject



29
30
31
# File 'lib/ape/samples.rb', line 29

def Samples.foreign_namespace
  Names::DcNamespace
end

.load_schema(file_name) ⇒ Object



36
37
38
# File 'lib/ape/samples.rb', line 36

def Samples.load_schema(file_name)
  IO.read(File.join(File.dirname(__FILE__), "/../../samples/#{file_name}_schema.txt"))      
end

.load_template(type) ⇒ Object



69
70
71
# File 'lib/ape/samples.rb', line 69

def Samples.load_template(type)
  Erubis::FastEruby.new(IO.read(entry_path(type)))      
end

.make_idObject



57
58
59
60
61
# File 'lib/ape/samples.rb', line 57

def Samples.make_id
  id = ''
  5.times { id += rand(1000000).to_s }
  "tag:tbray.org,2005:#{id}"
end

.mini_entryObject



74
75
76
# File 'lib/ape/samples.rb', line 74

def Samples.mini_entry
  load_template('mini_entry').evaluate(SamplesContext.new)      
end

.pictureObject



104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
# File 'lib/ape/samples.rb', line 104

def Samples.picture
b64 ="/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQE\nBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/\n2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU\nFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAA8AEYDASIAAhEBAxEB/8QA\nHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUF\nBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkK\nFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1\ndnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG\nx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEB\nAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAEC\nAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRom\nJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE\nhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU\n1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD5fgS0knaT\n7C4UddzHINab3lrboz/2ezop5LAnj3qtbK1xJbwbcZYZwc4GeprpZLNZY5Tu\nAi8skhjgHk5FfJNtWVm/m/8Agn7M6dOGzSdvzdvKxl2VzaAec2n7uMqDnBHr\nW1FPEY7YDTrVYXUNl5fw/wAf0qjps0NzbCEMUZMBhnJz9PwqzZbISIpQj27s\nA+4ZK99w/wAKycU229fm/wDM9aVDlhF09uv9eRrG6jmgeGLTrR2kPG2T5uMe\n/wDnNcnrGuxpdGMWCM4cR7V+bkehzXSatJBo4S3sZFkmkQ75x0QZ7H1965z7\nMjIxDsAEJyTkgY5b9KjlitV+N/yuXSoyrO/T835FKe/Ms8khsMFRtIwR2780\n77bGqQObHZORwgz8wHGRz6/yqOxkZmnO1isjYXeMZB4yPyqvrSJa30DF2bdu\n4TtycZq7Nbp2stdTgapyqciaerTXp899uhFc6qLmQg23X5iTxz9aKZes0RRX\nyxA+7n9aK6YcvKrq/wAzkr4W1R8rsu1rnSWD2UcLPIgE3BIDHJPt7ZqBXmiv\nZnuSTaMCpUAHy89P8j1pdKtGe7jllI+i84H9TW7JIt/PLYCGREyfKbachu5P\nP/6q578rf3/1/X/B6mkopTV2/wAv6X4fNRp4ZitLQXsLZlUL8p5LAjg/XFVz\nfRKky+YMbCd7L19himadPLat9lD5jALKqtyuPT2961bfT4LlELQA+ZuyVXJz\nnrWMlKKbk9j0KOIVLlp2321f/D9bmH9uihxNJgKNqnjJxjJx+NFuh1RONjRE\ngkgYIHOFH+eK0tV0m3adDFEjgEbuM5yAc5z+lVpA+nRGOMrGGOPNPAXHO0de\nabkqvNKP9alLETgoULJfPy+X6kGqWovJRaQqqxx4DzoM9Ow9ag8iNmeN4wXG\nV3tgluevsa0WlSw0uS5hj82RW2kOp2ITzuPHX6etQ3CJcWkdyymJpGLbTxsI\n/iXjp9aiOiv8vnv+Wv8AWtT9m6iw6Wq6+d7Wt2vp6+W3NyqtlIEm6c7XKZ9O\nMGirjz/aUDOFkOfvOOG9+aK9OnhnUipXt8m/0PCq5p7Cbpyim115kv1ROzSy\nSR3UK5jx8yg8tzXW3Gtw3Gm26QQBbtkCO6DmQjp2yP61yGk34SQIGco5ypHY\n9s1q2MS2l1LdKCNg3le3ORj8a5uTbmt5f1/XT5ae1UVZpvr3/r0/4ZpNp76X\nOs2AZW6KTgZJ6Y9OKgOszpAyu6IEPAKA5IPT2qxFeG/Xz5mbzpAQikFsL6/l\nWXcp5832e2KuZPmKsCNo9/50KN07nalCmvaTev8AwxqrqNxe2kzI0RkGAFMa\n7j1PXHHpVqKZLm3WK+aOUld5IbAb6+9Zl5af2WqnzQ1lN0lQcbsY4PXr61Qa\n5JixvIJbCgDGCO9KUFq1szWm4VaSS0kvw/H8jcivItPlSDasqEfJuAAYd1PH\nA9aoavOt3O4wTC5y74+97cDoMdRUEc39p2brONoiOHOcYb1pmrShII7W2Oc8\nLzyB2rPka1fb+v8AP8fSXiVN8qXv7X8lv/lfsmvWhqBF5MiWsqQhF+ZiePoK\nKpzfuI1C/OqkqV2d/WiuqMqkFaLsjklh8K3erFN9/wCmSaNqBSPdNE5KkMML\n1561tJrqSSylbaQh49oXgdjyea5S21W5ReJPb8KvW2sXQlzvByhPI+tdUqDb\nTaX3v/I+bjjHy2v+C/UmfWjazbYopHToQeorSj1WGGzkRSwuZT+8kdSSB/d6\ndKw/t0skr7tp2kAfKKsapqs4kiAKjChshRnOBS9k7ar8f+AavFyqa30Xl/wT\nRjvtkDW8zs9q+NyMh+96ism4umR9kSSSgEqrn+Jc/pSf23ds0zFwdvIBUYzV\naLU55DG5Khj3CipdKTbdlr5/8A1hifZ2af8AX3luDUC0dxCySoJG3byBj8fy\nqG71KW4nSRomwq7CV4OO2KonVLgblDAAcDAqAanO8+0kADngURoXbdvxZM8Y\n001+n/Dk41B8ZaFmx8oyx6UVVn1m5jRCGXOMfdorRU2lqvx/4BhPFzlK6lb5\nI//Z\n"
  Base64.decode64(b64)
end

.retitled_entry(new_title, new_id = nil) ⇒ Object



98
99
100
101
102
# File 'lib/ape/samples.rb', line 98

def Samples.retitled_entry(new_title, new_id = nil)
  e = basic_entry
  e.gsub!(/<title>.*<\/title>/, "<title>#{new_title}</title>")      
  e.gsub(/<id>.*<\/id>/, "<id>#{new_id}</id>") if new_id
end

.service_RNCObject



40
41
42
43
# File 'lib/ape/samples.rb', line 40

def Samples.service_RNC
  @@service_schema = load_schema('service') unless @@service_schema
  @@service_schema
end

.unclean_xhtml_entryObject



90
91
92
# File 'lib/ape/samples.rb', line 90

def Samples.unclean_xhtml_entry
  load_template('unclean_xhtml_entry').evaluate(SamplesContext.new)      
end