function pical_mini_calendar_show($options)
 {
     global $xoopsConfig, $xoopsDB, $xoopsUser;
     $mydirname = empty($options[0]) ? basename(dirname(dirname(__FILE__))) : $options[0];
     // caldate や日付ジャンプの指定が無く(当月のデフォルトミニカレンダー表示)
     // かつ、ユーザのTimezoneがdefaultTZと一緒(一番多そうなシチュエーション)の
     // 場合には、キャッシュを使う
     if (empty($_GET['caldate']) && empty($_POST['pical_jumpcaldate']) && (!is_object($xoopsUser) || $xoopsUser->timezone() == $xoopsConfig['default_TZ'])) {
         $use_cache = true;
         $cachefile = XOOPS_CACHE_PATH . "/{$mydirname}_minical_cache_{$xoopsConfig['language']}.html";
         // 5 minutes
         if (file_exists($cachefile) && filemtime($cachefile) > time() - 300) {
             if (false !== ($fp = fopen($cachefile, 'r'))) {
                 $block['content'] = '';
                 while (!feof($fp)) {
                     $block['content'] .= fgets($fp, 4096);
                 }
                 fclose($fp);
                 return $block;
             }
         }
     } else {
         $use_cache = false;
     }
     // setting physical & virtual paths
     $mod_path = XOOPS_ROOT_PATH . "/modules/{$mydirname}";
     $mod_url = XOOPS_URL . "/modules/{$mydirname}";
     // defining class of piCal
     if (!class_exists('piCal_xoops')) {
         require_once "{$mod_path}/class/piCal.php";
         require_once "{$mod_path}/class/piCal_xoops.php";
     }
     // creating an instance of piCal
     $cal = new piCal_xoops("", $xoopsConfig['language'], true);
     // ignoring cid from GET
     $cal->now_cid = 0;
     // setting properties of piCal
     $cal->conn = $xoopsDB->conn;
     include "{$mod_path}/include/read_configs.php";
     $cal->base_url = $mod_url;
     $cal->base_path = $mod_path;
     $cal->images_url = "{$mod_url}/images/{$skin_folder}";
     $cal->images_path = "{$mod_path}/images/{$skin_folder}";
     switch ($mini_calendar_target) {
         case 'MONTHLY':
             $get_target = "{$mod_url}/index.php";
             $query_string = "smode=Monthly";
             break;
         case 'WEEKLY':
             $get_target = "{$mod_url}/index.php";
             $query_string = "smode=Weekly";
             break;
         case 'DAILY':
             $get_target = "{$mod_url}/index.php";
             $query_string = "smode=Daily";
             break;
         case 'LIST':
             $get_target = "{$mod_url}/index.php";
             $query_string = "smode=List";
             break;
         default:
         case 'PHP_SELF':
             $get_target = '';
             $query_string = "";
             break;
     }
     $block = array();
     $block['content'] = $cal->get_mini_calendar_html($get_target, $query_string);
     // キャッシュの書き出し
     if ($use_cache && $mini_calendar_target != 'PHP_SELF') {
         if (false !== ($fp = fopen($cachefile, 'w'))) {
             fwrite($fp, $block['content']);
             fclose($fp);
         }
     }
     return $block;
 }