<?php
/**
 * OddEven Plugin
 * @license Public Domain
 * @author  Vladimir Uryvaev <az@vovanium.ru>
 */
// must be run within Dokuwiki
if(!defined('DOKU_INC')) die();

if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
require_once(DOKU_PLUGIN.'action.php');

class action_plugin_oddeven extends DokuWiki_Action_Plugin {

	function getInfo() {
		return array(
			'author' => 'Vladimir Uryvaev',
			'email'  => 'az@vovanium.ru',
			'date'   => '2009-03-24',
			'name'   => 'OddEven',
			'desc'   => 'Colorize table rows like zebra', 
			'url'    => 'http://vovanium.ru/set/oddeven',
		);
	}

	function register(&$controller) {
		$controller->register_hook(
			'RENDERER_CONTENT_POSTPROCESS',
			'AFTER',
			$this,
			'oddeven',
			array());
	}
	function oddeven(&$event, $param) {
		$event->data[1] = preg_replace (
			'/<tr class="row([0-9]*[02468])">/si',
			'<tr class="row\\1 roweven">',
			$event->data[1]
		);
		$event->data[1] = preg_replace (
			'/<tr class="row([0-9]*[13579])">/si',
			'<tr class="row\\1 rowodd">',
			$event->data[1]
		);
	}
}

?>
