File: makerss_category.rb

package info (click to toggle)
tdiary-contrib 5.4.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 2,772 kB
  • sloc: ruby: 17,305; javascript: 8,263; lisp: 562; xml: 451; php: 61; sql: 40; makefile: 18
file content (43 lines) | stat: -rw-r--r-- 948 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#
# makerss_category.rb: extension for makerss plugin.
#
# Copyright (C) 2007 by SHIBATA Hiroshi <h-sbt@nifty.com>
# Distributed under GPL2.
#
# Usage:
#    @conf['makerss.category'] = ["mixi", "sns"]
#

class MakeRssCategory < MakeRssFull
	def title
		'(category only)'
	end

	def item( seq, body, rdfsec )
		return unless rdfsec.section.respond_to?( :body_to_html )
		return if rdfsec.section.categories.length == 0
		rdfsec.section.categories.each do |category|
			if @conf['makerss.category'].include?(category)
				super
			end
		end
	end

	def file
		f = @conf['makerss.category.file'] || 'category.rdf'
		f = 'category.rdf' if f.length == 0
		f =~ %r|^/| ? f : "#{document_root}/#{f}"
	end

	def write( encoder )
		super( encoder )
	end

	def url
		u = @conf['makerss.category.url'] || "#{@conf.base_url}category.rdf"
		u = "#{@conf.base_url}category.rdf" if u.length == 0
		u
	end
end

@makerss_rsses << MakeRssCategory::new( @conf, @cgi )