[ 新規 | 編集 | 差分 ] [ 検索 | 一覧 | 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 [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

02043