<?php
/*
* PukiWiki calendar_viewer¥×¥é¥°¥¤¥ó
- *
- *
- *$Id: calendar_viewer.inc.php,v 1.14 2004/08/10 12:23:27 henoheno Exp $
- calendarrecent¥×¥é¥°¥¤¥ó¤ò¸µ¤ËºîÀ®
+ * $Id: calendar_viewer.inc.php,v 1.15 2004/08/10 12:43:29 henoheno Exp $
+ * calendarrecent¥×¥é¥°¥¤¥ó¤ò¸µ¤ËºîÀ®
*/
+
/**
*³µÍ×
calendar¥×¥é¥°¥¤¥ó¤äcalendar2¥×¥é¥°¥¤¥ó¤ÇºîÀ®¤·¤¿¥Ú¡¼¥¸¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤¿¤á¤Î¥×¥é¥°¥¤¥ó¤Ç¤¹¡£
function plugin_calendar_viewer_convert()
{
- global $WikiName,$BracketName, $vars, $get, $post, $hr, $script;
+ global $WikiName, $BracketName, $vars, $get, $post, $hr, $script;
global $_err_calendar_viewer_param, $_err_calendar_viewer_param2;
global $_msg_calendar_viewer_right, $_msg_calendar_viewer_left;
global $_msg_calendar_viewer_restrict;
- //*¥Ç¥Õ¥©¥ë¥ÈÃͤò¥»¥Ã¥È
- //´ð½à¤È¤Ê¤ë¥Ú¡¼¥¸Ì¾
+ // *¥Ç¥Õ¥©¥ë¥ÈÃͤò¥»¥Ã¥È
+ // ´ð½à¤È¤Ê¤ë¥Ú¡¼¥¸Ì¾
$pagename = '';
- //ɽ¼¨¤¹¤ë·ï¿ôÀ©¸Â
+ // ɽ¼¨¤¹¤ë·ï¿ôÀ©¸Â
$limit_page = 7;
- //°ìÍ÷ɽ¼¨¤¹¤ëǯ·î
+ // °ìÍ÷ɽ¼¨¤¹¤ëǯ·î
$date_YM = '';
- //Æ°ºî¥â¡¼¥É
+ // Æ°ºî¥â¡¼¥É
$mode = 'past';
- //ÆüÉդΥ»¥Ñ¥ì¡¼¥¿ calendar2¤Ê¤é'-' calendar¤Ê¤é''
+ // ÆüÉդΥ»¥Ñ¥ì¡¼¥¿ calendar2¤Ê¤é'-' calendar¤Ê¤é''
$date_sep = '-';
- //*°ú¿ô¤Î³Îǧ
- if (func_num_args()>=2){
+ // *°ú¿ô¤Î³Îǧ
+ if (func_num_args() >= 2){
$func_vars_array = func_get_args();
$pagename = $func_vars_array[0];
if (isset($func_vars_array[3])){
$date_sep = $func_vars_array[3];
}
- if (preg_match("/[0-9]{4}".$date_sep."[0-9]{2}/",$func_vars_array[1])){
- //»ØÄêǯ·î¤Î°ìÍ÷ɽ¼¨
+ if (preg_match('/[0-9]{4}' . $date_sep . '[0-9]{2}/', $func_vars_array[1])){
+ // »ØÄêǯ·î¤Î°ìÍ÷ɽ¼¨
$page_YM = $func_vars_array[1];
$limit_base = 0;
- $limit_page = 31; //¼êÈ´¤¡£31Æüʬ¤ò¥ê¥ß¥Ã¥È¤È¤¹¤ë¡£
- } else if (preg_match("/this/si",$func_vars_array[1])){
- //º£·î¤Î°ìÍ÷ɽ¼¨
- $page_YM = get_date('Y'.$date_sep.'m');
+ $limit_page = 31; // ¼êÈ´¤¡£31Æüʬ¤ò¥ê¥ß¥Ã¥È¤È¤¹¤ë¡£
+ } else if (preg_match('/this/si', $func_vars_array[1])){
+ // º£·î¤Î°ìÍ÷ɽ¼¨
+ $page_YM = get_date('Y' . $date_sep . 'm');
$limit_base = 0;
$limit_page = 31;
- } else if (preg_match("/^[0-9]+$/",$func_vars_array[1])){
- //nÆüʬɽ¼¨
+ } else if (preg_match('/^[0-9]+$/', $func_vars_array[1])){
+ // nÆüʬɽ¼¨
$limit_pitch = $func_vars_array[1];
$limit_page = $limit_pitch;
$limit_base = 0;
$page_YM = '';
- } else if (preg_match("/([0-9]+)\*([0-9]+)/",$func_vars_array[1],$reg_array)){
+ } else if (preg_match('/([0-9]+)\*([0-9]+)/', $func_vars_array[1], $reg_array)){
$limit_pitch = $reg_array[2];
$limit_page = $reg_array[1] + $limit_pitch;
$limit_base = $reg_array[1];
} else {
return $_err_calendar_viewer_param2;
}
- if (isset($func_vars_array[2])&&preg_match("/^(past|view|future)$/si",$func_vars_array[2])){
- //¥â¡¼¥É»ØÄê
+ if (isset($func_vars_array[2]) && preg_match('/^(past|view|future)$/si', $func_vars_array[2])){
+ // ¥â¡¼¥É»ØÄê
$mode = $func_vars_array[2];
}
return $_err_calendar_viewer_param;
}
- //*°ìÍ÷ɽ¼¨¤¹¤ë¥Ú¡¼¥¸Ì¾¤È¥Õ¥¡¥¤¥ë̾¤Î¥Ñ¥¿¡¼¥ó¡¡¥Õ¥¡¥¤¥ë̾¤Ë¤Ïǯ·î¤ò´Þ¤à
+ // *°ìÍ÷ɽ¼¨¤¹¤ë¥Ú¡¼¥¸Ì¾¤È¥Õ¥¡¥¤¥ë̾¤Î¥Ñ¥¿¡¼¥ó¡¡¥Õ¥¡¥¤¥ë̾¤Ë¤Ïǯ·î¤ò´Þ¤à
if ($pagename == ''){
- //pagename̵¤·¤Îyyyy-mm-dd¤ËÂбþ¤¹¤ë¤¿¤á¤Î½èÍý
+ // pagename̵¤·¤Îyyyy-mm-dd¤ËÂбþ¤¹¤ë¤¿¤á¤Î½èÍý
$pagepattern = '';
$pagepattern_len = 0;
$filepattern = encode($page_YM);
$filepattern_len = strlen($filepattern);
} else {
- $pagepattern = strip_bracket($pagename) .'/';
+ $pagepattern = strip_bracket($pagename) . '/';
$pagepattern_len = strlen($pagepattern);
- $filepattern = encode($pagepattern.$page_YM);
+ $filepattern = encode($pagepattern . $page_YM);
$filepattern_len = strlen($filepattern);
}
//echo "$pagename:$page_YM:$mode:$date_sep:$limit_base:$limit_page";
- //*¥Ú¡¼¥¸¥ê¥¹¥È¤Î¼èÆÀ
+ // *¥Ú¡¼¥¸¥ê¥¹¥È¤Î¼èÆÀ
//echo $pagepattern;
//echo $filepattern;
$pagelist = array();
if ($dir = @opendir(DATA_DIR))
{
- $_date = get_date('Y'.$date_sep.'m'.$date_sep.'d');
+ $_date = get_date('Y' . $date_sep . 'm' . $date_sep . 'd');
while($file = readdir($dir))
{
if ($file == '..' || $file == '.') continue;
- if (substr($file,0,$filepattern_len)!=$filepattern) continue;
+ if (substr($file, 0, $filepattern_len) != $filepattern) continue;
//echo "OK";
- $page = decode(trim(preg_replace("/\.txt$/"," ",$file)));
- //$page¤¬¥«¥ì¥ó¥À¡¼·Á¼°¤Ê¤Î¤«¥Á¥§¥Ã¥¯ ¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ yyyy-mm-dd
+ $page = decode(trim(preg_replace('/\.txt$/', ' ', $file)));
+ // $page¤¬¥«¥ì¥ó¥À¡¼·Á¼°¤Ê¤Î¤«¥Á¥§¥Ã¥¯ ¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ yyyy-mm-dd
$page = strip_bracket($page);
- if (plugin_calendar_viewer_isValidDate(substr($page,$pagepattern_len),$date_sep) == false) continue;
-
- //*modeËè¤ËÊ̾ò·ï¤Ç¤Ï¤¸¤¯
- //past mode¤Ç¤Ï̤Íè¤Î¥Ú¡¼¥¸¤ÏNG
- if (((substr($page,$pagepattern_len)) > $_date)&&($mode=='past') )continue;
- //future mode¤Ç¤Ï²áµî¤Î¥Ú¡¼¥¸¤ÏNG
- if (((substr($page,$pagepattern_len)) < $_date)&&($mode=='future') )continue;
- //view mode¤Ê¤éall OK
+ if (plugin_calendar_viewer_isValidDate(substr($page, $pagepattern_len), $date_sep) == false) continue;
+
+ // *modeËè¤ËÊ̾ò·ï¤Ç¤Ï¤¸¤¯
+ // past mode¤Ç¤Ï̤Íè¤Î¥Ú¡¼¥¸¤ÏNG
+ if (((substr($page, $pagepattern_len)) > $_date) && ($mode == 'past'))continue;
+ // future mode¤Ç¤Ï²áµî¤Î¥Ú¡¼¥¸¤ÏNG
+ if (((substr($page, $pagepattern_len)) < $_date) && ($mode == 'future'))continue;
+ // view mode¤Ê¤éall OK
$pagelist[] = $page;
}
}
closedir($dir);
//echo count($pagelist);
- //*¤³¤³¤«¤é¥¤¥ó¥¯¥ë¡¼¥É³«»Ï
+ // *¤³¤³¤«¤é¥¤¥ó¥¯¥ë¡¼¥É³«»Ï
$tmppage = $vars['page'];
$return_body = '';
- //¤Þ¤º¥½¡¼¥È
+ // ¤Þ¤º¥½¡¼¥È
if ($mode == 'past'){
- //past mode¤Ç¤Ï¿·¢ªµì
+ // past mode¤Ç¤Ï¿·¢ªµì
rsort ($pagelist);
} else {
- //view mode ¤È future mode ¤Ç¤Ï¡¢µì¢ª¿·
+ // view mode ¤È future mode ¤Ç¤Ï¡¢µì¢ª¿·
sort ($pagelist);
}
- //$limit_page¤Î·ï¿ô¤Þ¤Ç¥¤¥ó¥¯¥ë¡¼¥É
+ // $limit_page¤Î·ï¿ô¤Þ¤Ç¥¤¥ó¥¯¥ë¡¼¥É
$tmp = $limit_base;
while ($tmp < $limit_page){
if (empty($pagelist[$tmp])) break;
$page = $pagelist[$tmp];
- $get['page'] = $page;
- $post['page'] = $page;
- $vars['page'] = $page;
+ $get['page'] = $post['page'] = $vars['page'] = $page;
// ¸½¾õ¤Ç±ÜÍ÷µö²Ä¤¬¤¢¤ë¾ì¹ç¤À¤±É½¼¨¤¹¤ë
- if (check_readable($page,false,false)) {
+ if (check_readable($page, false, false)) {
$body = convert_html(get_source($page));
} else {
- $body = str_replace('$1',$page,$_msg_calendar_viewer_restrict);
+ $body = str_replace('$1', $page, $_msg_calendar_viewer_restrict);
}
$r_page = rawurlencode($page);
$tmp++;
}
- //¤³¤³¤Ç¡¢Á°¸å¤Î¥ê¥ó¥¯¤òɽ¼¨
- //?plugin=calendar_viewer&file=¥Ú¡¼¥¸Ì¾&date=yyyy-mm
- $enc_pagename = rawurlencode(substr($pagepattern,0,$pagepattern_len -1));
+ // ¤³¤³¤Ç¡¢Á°¸å¤Î¥ê¥ó¥¯¤òɽ¼¨
+ // ?plugin=calendar_viewer&file=¥Ú¡¼¥¸Ì¾&date=yyyy-mm
+ $enc_pagename = rawurlencode(substr($pagepattern, 0, $pagepattern_len - 1));
if ($page_YM != ''){
- //ǯ·îɽ¼¨»þ
+ // ǯ·îɽ¼¨»þ
$date_sep_len = strlen($date_sep);
- $this_year = substr($page_YM,0,4);
- $this_month = substr($page_YM,4+$date_sep_len,2);
- //¼¡·î
+ $this_year = substr($page_YM, 0, 4);
+ $this_month = substr($page_YM, 4 + $date_sep_len, 2);
+ // ¼¡·î
$next_year = $this_year;
$next_month = $this_month + 1;
if ($next_month >12){
$next_year ++;
$next_month = 1;
}
- $next_YM = sprintf("%04d%s%02d",$next_year,$date_sep,$next_month);
+ $next_YM = sprintf('%04d%s%02d', $next_year, $date_sep, $next_month);
- //Á°·î
+ // Á°·î
$prev_year = $this_year;
- $prev_month = $this_month -1;
+ $prev_month = $this_month - 1;
if ($prev_month < 1){
$prev_year --;
$prev_month = 12;
}
- $prev_YM = sprintf("%04d%s%02d",$prev_year,$date_sep,$prev_month);
+ $prev_YM = sprintf('%04d%s%02d', $prev_year, $date_sep, $prev_month);
if ($mode == 'past'){
$right_YM = $prev_YM;
- $right_text = $prev_YM.">>";
+ $right_text = $prev_YM . '>>';
$left_YM = $next_YM;
- $left_text = "<<".$next_YM;
+ $left_text = '<<' . $next_YM;
} else {
$left_YM = $prev_YM;
- $left_text = "<<".$prev_YM;
+ $left_text = '<<' . $prev_YM;
$right_YM = $next_YM;
- $right_text = $next_YM.">>";
+ $right_text = $next_YM . '>>';
}
} else {
- //n·ïɽ¼¨»þ
+ // n·ïɽ¼¨»þ
if ($limit_base >= count($pagelist)){
$right_YM = '';
} else {
$right_base = $limit_base + $limit_pitch;
- $right_YM = $right_base ."*".$limit_pitch;
- $right_text = sprintf($_msg_calendar_viewer_right,$limit_pitch);
+ $right_YM = $right_base . '*' . $limit_pitch;
+ $right_text = sprintf($_msg_calendar_viewer_right, $limit_pitch);
}
$left_base = $limit_base - $limit_pitch;
if ($left_base >= 0) {
- $left_YM = $left_base . "*" . $limit_pitch;
- $left_text = sprintf($_msg_calendar_viewer_left,$limit_pitch);
+ $left_YM = $left_base . '*' . $limit_pitch;
+ $left_text = sprintf($_msg_calendar_viewer_left, $limit_pitch);
} else {
$left_YM = '';
}
}
- //¥ê¥ó¥¯ºîÀ®
+ // ¥ê¥ó¥¯ºîÀ®
$s_date_sep = htmlspecialchars($date_sep);
if ($left_YM != ''){
$left_link = "<a href=\"$script?plugin=calendar_viewer&file=$enc_pagename&date=$left_YM&date_sep=$s_date_sep&mode=$mode\">$left_text</a>";
$right_link = '';
}
- //past mode¤Ï<<¿· µì>> ¾¤Ï<<µì ¿·>>
- $return_body .= "<table width =\"100%\"><tr><td align=\"left\">";
+ // past mode¤Ï<<¿· µì>> ¾¤Ï<<µì ¿·>>
+ $return_body .= '<table width ="100%"><tr><td align="left">';
$return_body .= $left_link;
- $return_body .= "</td><td align=\"right\">";
+ $return_body .= '</td><td align="right">';
$return_body .= $right_link;
- $return_body .= "</td></tr></table>";
-
+ $return_body .= '</td></tr></table>';
- $get['page'] = $tmppage;
- $post['page'] = $tmppage;
- $vars['page'] = $tmppage;
+ $get['page'] = $post['page'] = $vars['page'] = $tmppage;
return $return_body;
}
$page_YM = $vars['date'];
if ($page_YM == ''){
- $page_YM = get_date('Y'.$date_sep.'m');
+ $page_YM = get_date('Y' . $date_sep . 'm');
}
$mode = $vars['mode'];
- $args_array = array($vars['page'], $page_YM,$mode, $date_sep);
- $return_vars_array["body"] = call_user_func_array("plugin_calendar_viewer_convert",$args_array);
+ $args_array = array($vars['page'], $page_YM, $mode, $date_sep);
+ $return_vars_array['body'] = call_user_func_array('plugin_calendar_viewer_convert', $args_array);
- //$return_vars_array['msg'] = "calendar_viewer ".$vars['page'].'/'.$page_YM;
- $return_vars_array['msg'] = "calendar_viewer ".htmlspecialchars($vars['page']);
+ //$return_vars_array['msg'] = 'calendar_viewer ' . $vars['page'] . '/' . $page_YM;
+ $return_vars_array['msg'] = 'calendar_viewer ' . htmlspecialchars($vars['page']);
if ($vars['page'] != ''){
$return_vars_array['msg'] .= '/';
}
- if (preg_match("/\*/",$page_YM)){
- //¤¦¡¼¤ó¡¢n·ïɽ¼¨¤Î»þ¤Ï¤Ê¤ó¤Æ¥Ú¡¼¥¸Ì¾¤Ë¤·¤¿¤é¤¤¤¤¡©
+ if (preg_match('/\*/', $page_YM)){
+ // ¤¦¡¼¤ó¡¢n·ïɽ¼¨¤Î»þ¤Ï¤Ê¤ó¤Æ¥Ú¡¼¥¸Ì¾¤Ë¤·¤¿¤é¤¤¤¤¡©
} else {
$return_vars_array['msg'] .= htmlspecialchars($page_YM);
}
return $return_vars_array;
}
-function plugin_calendar_viewer_isValidDate($aStr, $aSepList="-/ .") {
- //$aSepList=''¤Ê¤é¡¢yyyymmdd¤È¤·¤Æ¥Á¥§¥Ã¥¯¡Ê¼êÈ´¤(^^;¡Ë
+function plugin_calendar_viewer_isValidDate($aStr, $aSepList = '-/ .') {
if ($aSepList == '') {
- //yyyymmdd¤È¤·¤Æ¥Á¥§¥Ã¥¯
- return checkdate(substr($aStr,4,2),substr($aStr,6,2),substr($aStr,0,4));
+ // $aSepList = ''¤Ê¤é¡¢yyyymmdd¤È¤·¤Æ¥Á¥§¥Ã¥¯¡Ê¼êÈ´¤(^^;¡Ë
+ return checkdate(substr($aStr, 4, 2), substr($aStr, 6, 2), substr($aStr, 0, 4));
}
if ( ereg("^([0-9]{2,4})[$aSepList]([0-9]{1,2})[$aSepList]([0-9]{1,2})$", $aStr, $m) ) {
return checkdate($m[2], $m[3], $m[1]);