37 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			37 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
|   | <?php | ||
|  | 
 | ||
|  | /** | ||
|  |  * XHTML 1.1 Ruby Annotation Module, defines elements that indicate | ||
|  |  * short runs of text alongside base text for annotation or pronounciation. | ||
|  |  */ | ||
|  | class HTMLPurifier_HTMLModule_Ruby extends HTMLPurifier_HTMLModule | ||
|  | { | ||
|  | 
 | ||
|  |     /** | ||
|  |      * @type string | ||
|  |      */ | ||
|  |     public $name = 'Ruby'; | ||
|  | 
 | ||
|  |     /** | ||
|  |      * @param HTMLPurifier_Config $config | ||
|  |      */ | ||
|  |     public function setup($config) | ||
|  |     { | ||
|  |         $this->addElement( | ||
|  |             'ruby', | ||
|  |             'Inline', | ||
|  |             'Custom: ((rb, (rt | (rp, rt, rp))) | (rbc, rtc, rtc?))', | ||
|  |             'Common' | ||
|  |         ); | ||
|  |         $this->addElement('rbc', false, 'Required: rb', 'Common'); | ||
|  |         $this->addElement('rtc', false, 'Required: rt', 'Common'); | ||
|  |         $rb = $this->addElement('rb', false, 'Inline', 'Common'); | ||
|  |         $rb->excludes = array('ruby' => true); | ||
|  |         $rt = $this->addElement('rt', false, 'Inline', 'Common', array('rbspan' => 'Number')); | ||
|  |         $rt->excludes = array('ruby' => true); | ||
|  |         $this->addElement('rp', false, 'Optional: #PCDATA', 'Common'); | ||
|  |     } | ||
|  | } | ||
|  | 
 | ||
|  | // vim: et sw=4 sts=4
 |