OSDN Git Service

BugTrack/452: validチェックを修正
[pukiwiki/pukiwiki.git] / plugin / color.inc.php
1 <?php
2 /////////////////////////////////////////////////
3 // PukiWiki - Yet another WikiWikiWeb clone.
4 //
5 // $Id: color.inc.php,v 1.8 2003/09/05 00:19:19 arino Exp $
6 //
7
8 function plugin_color_inline()
9 {
10         if (func_num_args() == 3)
11         {
12                 list($color,$bgcolor,$body) = func_get_args();
13                 if ($body == '')
14                 {
15                         $body = $bgcolor;
16                         $bgcolor = '';
17                 }
18         }
19         else if (func_num_args() == 2)
20         {
21                 $bgcolor = '';
22                 list($color,$body) = func_get_args();
23         }
24         else
25         {
26                 return FALSE;
27         }
28         
29         if ($color == '' or $body == '')
30         {
31                 return FALSE;
32         }
33         if (!plugin_color_is_valid($color) or !plugin_color_is_valid($bgcolor))
34         {
35                 return $body;
36         }
37         
38         if ($bgcolor != '')
39         {
40                 $color .= ';background-color:'.$bgcolor;
41         }
42         return "<span style=\"color:$color\">$body</span>";
43 }
44 function plugin_color_is_valid($color)
45 {
46         return ($color == '') or preg_match('/^(#[0-9a-f]+|[\w-]+)$/i',$color);
47 }
48 ?>