[ 新規 ] [ 検索 | 一覧 | FrontPage ] [ 履歴 (RSS) | 差分履歴 (RSS) ] [ ログイン ]
【PR】Amazon | SL-C3000 | SL-C1000(3/18発売!) | SL-C860 | SL-6000W | SL-6000L | SL-6000N

WalWiki/カスタマイズ/汎用サブルーチン

差分表示


編集前の状態に戻します。
汎用サブルーチンの追加

機能の追加ではありません。
他のカスタマイズの実装に使用する予定です。

* [make cached link]

キャッシュしたリンク文字列を取得します。

** make_cachedlink()追加

 # yakty add [make cached link] start
 sub make_cachedlink {
     my ($page) = @_;
     my $link;
     if(defined($link_cache{$page})){
         return $link_cache{$page};
     # yakty add [auto link] start
     # yakty add [alias link definition] start
     } elsif(&is_exist_page($page)){
         $link = &make_link($page);
     } elsif(defined($alias_link_list{$page})) {
         $link = $alias_link_list{$page};
     # yakty add [alias link definition] end
     # yakty add [auto link] start
     } elsif(defined($auto_link_list{$page})) {
         $link = $auto_link_list{$page};
     # yakty add [auto link] end
     } else {
         $link = &make_link($page);
     }
     if(length($link) < 1024
             and $page ne $embed_comment         # yakty add [multi comment]
             and $page ne $embed_rcomment){      # yakty add [multi comment]
         $link_cache{$page} = $link;
     }
     return $link;
 }
 # yakty add [make cached link] end
* [format time]

日付時刻のフォーマット

 my $datetime = &format_time(gmtime);

の様に使用します。

** format_time()追加

 # yakty add [format time] start
 sub format_time {
     my ($sec, $min, $hour, $day, $mon, $year, $weekday) = @_;
     my (@week) = qw(Sun Mon Tue Wed Thu Fri Sat);
     $year += 1900;
     $mon++;
     $mon = "0$mon" if $mon < 10;
     $day = "0$day" if $day < 10;
     $hour = "0$hour" if $hour < 10;
     $min = "0$min" if $min < 10;
     $sec = "0$sec" if $sec < 10;
     $weekday = $week[$weekday];
     return "$year-$mon-$day ($weekday) $hour:$min:$sec";
 }
 # yakty add [format time] end


01703