2 // $Id: calendar.inc.php,v 1.21 2005/05/04 04:56:39 henoheno Exp $
4 // 2002-2003,2005 PukiWiki Developers Team
5 // 2001-2002 Originally written by yu-ji
6 // License: GPL v2 or (at your option) any later version
10 function plugin_calendar_convert()
12 global $script, $weeklabels, $vars, $command;
14 $args = func_get_args();
15 $date_str = get_date('Ym');
18 if (func_num_args() == 1) {
19 if (is_numeric($args[0]) && strlen($args[0]) == 6) {
24 } else if (func_num_args() == 2) {
25 if (is_numeric($args[0]) && strlen($args[0]) == 6) {
28 } else if (is_numeric($args[1]) && strlen($args[1]) == 6) {
35 $page = $vars['page'];
36 } else if (! is_pagename($page)) {
40 $prefix = $page . '/';
49 $prefix = strip_tags($prefix);
51 $yr = substr($date_str, 0, 4);
52 $mon = substr($date_str, 4, 2);
53 if ($yr != get_date('Y') || $mon != get_date('m')) {
57 $now_day = get_date('d');
60 $today = getdate(mktime(0, 0, 0, $mon, $now_day, $yr) - LOCALZONE + ZONETIME);
62 $m_num = $today['mon'];
63 $d_num = $today['mday'];
64 $year = $today['year'];
65 $f_today = getdate(mktime(0, 0, 0, $m_num, 1, $year) - LOCALZONE + ZONETIME);
66 $wday = $f_today['wday'];
69 $m_name = $year . '.' . $m_num . ' (' . $cmd . ')';
71 $prefix_url = rawurlencode(is_pagename($pre) ? $pre : '[[' . $pre . ']]');
72 $pre = strip_bracket($pre);
75 <table class="style_calendar" cellspacing="1" width="150" border="0">
77 <td class="style_td_caltop" colspan="7">
78 <strong>$m_name</strong><br />
79 [<a href="$script?$prefix_url">$pre</a>]
85 foreach($weeklabels as $label)
86 $ret .= ' <td class="style_td_week"><strong>' .
87 $label . '</strong></td>' . "\n";
89 $ret .= ' </tr>' . "\n" .
93 for ($i = 0; $i < $wday; $i++)
94 $ret .= ' <td class="style_td_blank"> </td>' . "\n";
96 while(checkdate($m_num, $day, $year)) {
97 $dt = sprintf('%04d%02d%02d', $year, $m_num, $day);
98 $name = $prefix . $dt;
99 $r_page = rawurlencode($name);
100 $s_page = htmlspecialchars($name);
102 $refer = ($cmd == 'edit') ? '&refer=' . rawurlencode($page) : '';
104 if ($cmd == 'read' && ! is_page($name)) {
105 $link = '<strong>' . $day . '</strong>';
107 $link = '<a href="' . $script . '?cmd=' . $cmd .
108 '&page=' . $r_page . $refer . '" title="' .
109 $s_page . '"><strong>' . $day . '</strong></a>';
112 if ($wday == 0 && $day > 1) {
113 $ret .= ' </tr><tr>' . "\n";
115 if (! $other_month && ($day == $today['mday']) &&
116 ($m_num == $today['mon']) && ($year == $today['year']))
119 $ret .= ' <td class="style_td_today"><span class="small">' .
120 $link . '</span></td>' . "\n";
121 } else if ($wday == 0) {
123 $ret .= ' <td class="style_td_sun"><span class="small">' .
124 $link . '</span></td>' . "\n";
125 } else if ($wday == 6) {
127 $ret .= ' <td class="style_td_sat"><span class="small">' .
128 $link . '</span></td>' . "\n";
131 $ret .= ' <td class="style_td_day"><span class="small">' .
132 $link . '</span></td>' . "\n";
142 $ret .= ' <td class="style_td_blank"> </td>' . "\n";
147 $ret .= ' </tr>' . "\n" .