The Legendary Next Update (365)

279 Name: !WAHa.06x36 : 2005-10-23 18:05 ID:gBva8ggI [Del]

>>278

How do you figure it's redundant?

6 Name: !WAHa.06x36 2005-10-12 17:30 ID:gBva8ggI [Del]

I fixed the Javascript a bit, and uploaded it for these boards. Try shift-reloading to get the new code, and see if cookies work better now that I'm not using cargo-cult code.

54 Name: Anonymous 2005-10-16 09:20 ID:Heaven [Del]

>considering the default prune behaviour of imgboards

One of the parameters Kareha uses to determine pruning is MAX_POSTS, so even if you sage a thread under this new condition, you still add to the board's total postcount and speed up the process for pruning that thread, regardless of MAX_RES. The only flew is this assumes pruning is based on thread creation date, not popularity (because someone could easily bump a shitty thread and save it from deletion).

I also agree that enabling this functionality would further make threads vulnerable to intentional bumping by trolls. I was sorta envisioning it being used in a mature community where trolling is minimal and quickly weeded out by regulars.

Here's a new idea: how about trying this in reverse? Only "sage" posts are counted in MAX_RES, in which case saging can again be used either in protest or as a courtesy to others. The only problem is that people can then freely bump threads without consequence.

160 Name: Anonymous 2005-10-19 14:51 ID:Heaven [Del]

>>157
So the functions need to be hardcoded to a post element one way or another? If I wanted to, let's say, create a template for gazo-box or Shiichan (both use checkboxes for sage), I'd need to slightly modify kareha.pl to check that new checkbox input instead of the Link string input?

An interesting limitation. Thanks for explaining.

About permasaging/deleting after a certain thread filesize is reached: would this be the same as a limit on the total number of characters in a thread? Or would we also include WakabaMark formatting, hyperlinks (including navigation), name/date/title headers, reply boxes, and non-Unicode characters in the formula?

>>158
Chances are that most if not all major/fundamental changes made to Kareha's core scripts will clash with the philosophy of most people here (including WAHa), and they won't care for them anyway. There really aren't all that many big-bang end-user features left to be implemented in Kareha before it loses its minimalist charm.

P.S. Reminder for >>85

273 Name: Anonymous : 2005-10-23 16:34 ID:Heaven [Del]

Oh, and "AA mode" should be changed to "Text art mode" so we won't be incessantly quibbling about the difference between ASCII and SJIS art.

126 Name: Anonymous 2005-10-18 08:04 ID:Heaven [Del]

One of the things I did when I modified and restructured the order of functions in post_stuff() was add specific error messages for each non-comment field. Would this be considered superfluous?

69 Name:   2005-10-17 07:26 ID:Heaven [Del]

>>66-67

Noted and fixed in development version.

120 Name: Anonymous 2005-10-18 04:30 ID:Heaven [Del]

And this:

だってよ。

231 :ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★:04/02/05 14:13 ID:???
ハンマー投げゲーム機能つけてみました。
名前の欄に『murofusianasan』と書き込めば
【60m】とか【75m】とか記録が出ます。
数値はランダムで0~100くらいまでありますよ。。。
お暇なら遊んでください。

136 Name: Anonymous 2005-10-18 18:52 ID:Heaven [Del]

Hey, I just noticed this: where did the admin link go? Or are you working on a separate interface already? :D

298 Name: !WAHa.06x36 : 2005-10-23 20:54 ID:Heaven [Del]

Currently, pruning by age is measured from the time of the newest post in the thread, so it wouldn't really work. I'm not sure if this is the best behaviour or not, but it seems it makes more sense to kill threads nobody cares about than to kill slow-moving threads just because they get old.

243 Name:   2005-10-22 10:54 ID:Heaven [Del]

If you want to have a look at what the code actually does to dig out flaws, here is the current version:

sub sanitize_html($%)
{
my ($html,%tags)=@_;
my (@stack,$clean);
my $entity_re=qr/&(?!\#[0-9]+;|\#x[0-9a-fA-F]+;|amp;)/;

while($html=~/(?:([^<]+)|<([^<>]*)>?)/g)
{
my ($text,$tag)=($1,$2);

if($text)
{
$text=~s/$entity_re/&amp;/g;
$text=~s/>/&gt;/g;
$clean.=$text;
}
else
{
if($tag=~m!^\s*(/?)\s*([a-z0-9_:\-\.]+)(?:\s+(.*?)|)\s*(/?)\s*$!si)
{
my ($closing,$name,$args,$implicit)=($1,lc($2),$3,$4);

if($tags{$name})
{
if($closing)
{
if(grep { $_ eq $name } @stack)
{
my $entry;

do {
$entry=pop @stack;
$clean.="</$entry>";
} until $entry eq $name;
}
}
else
{
my %args;

$args=~s/\s/ /sg;

while($args=~/([a-z0-9_:\-\.]+)(?:\s*=\s*(?:'([^']*?)'|"([^"]*?)"|['"]?([^'" ]*))|)/gi)
{
my ($arg,$value)=(lc($1),defined($2)?$2:defined($3)?$3:$4);
$value=$arg unless defined($value);

my $type=$tags{$name}{args}{$arg};

if($type)
{
my $passes=1;

if($type=~/url/i) { $passes=0 unless $value=~/(?:^$protocol_re:|^[^:]+$)/ }
if($type=~/number/i) { $passes=0 unless $value=~/^[0-9]+$/ }

if($passes)
{
$value=~s/$entity_re/&amp;/g;

if($value=~/"/) { $value="'$value'" }
else { $value="\"$value\"" }

$args{$arg}=$value;
}
}
}

my $cleanargs=join " ",map { "$_=$args{$_}" } keys %args;

$implicit="/" if($tags{$name}{empty});

push @stack,$name unless $implicit;

$clean.="<$name";
$clean.=" $cleanargs" if $cleanargs;
$clean.=" $implicit" if $implicit;
$clean.=">";
}
}
}
}
}

my $entry;
while($entry=pop @stack) { $clean.="</$entry>" }

return $clean;
}

13 Name: Anonymous 2005-10-13 02:13 ID:Heaven [Del]

I have always found that it's more difficult than one would think to implement features that will measure "popularity" in a satisfying way that isn't open to abuse in one way or another.

25 Name: | 2005-10-14 00:37 ID:Heaven [Del]

Anyway, test with |

347 Name: !WAHa.06x36 : 2005-10-27 16:57 ID:Heaven [Del]

Thanks. I did it the hard way and put in the proper transformations everywhere so filenames can be kept intact, though.

80 Name: 79 2005-10-17 09:17 ID:Heaven [Del]

Argh, beaten and >>n isn't even implemented. orz

224 Name:   2005-10-21 16:59 ID:Heaven [Del]

A 1001th post would be a bother.

73 Name: Anonymous 2005-10-17 08:21 ID:Heaven [Del]

>>71
forgot to add that turning the CSS selector and Admin functions into drop-down menus and moving them to the right side of board and thread title headers would remove that top bar entirely on the front page.

1 Name: !WAHa.06x36 2005-10-12 15:51 ID:gBva8ggI [Del]

So, as Xee is almost done, and I'm mostly waiting for external contributions, I decided it was time to start working on the Legendary Next Update for Kareha and Wakaba.

Only problem is, it's been a long time, and I've forgotten most of what needs to be done. Most of it is mentioned SOMEWHERE on the board, though. So this is your chance to pipe up with your pet feature request, or if you're feeling really helpful, to dig out some old posts that mention things that need fixing.

Hop to it!

45 Name: Anonymous 2005-10-14 19:39 ID:1l2MEdqn [Del]

>>41

>database redesign

You mean requiring SQL software, or just making backwards-incompatible changes that would screw up old threads?

>prevent abuse

Are you only referring to flooding and spamming, or also trolls and flamewars?

Finally, out of curiosity: how much of the functionality in the .js file do you think could be properly implemented into a new or existing perl script?

119 Name: Anonymous 2005-10-18 04:28 ID:Heaven [Del]

I found this:

fusianasan【ふしあなさん】[名・自スル]
2ちゃんねるに書き込みする際に名前欄に「fusianasan」の文字列を入力すると、その書き込みをした人のリモートホストのIPアドレスがさらされるようになっている。
本来は「(固定ハンドル)@fusianasan」などとして、まだキャップを取得していない固定ハンドルが自らIPをさらすことで騙りを防ぐためのシステムである。
が、裏2ちゃん関係のコピペが横行するに至って、一時期うっかりIPをさらしてしまう。
エロな人間が続出し、fusianasan廃止要望まで唱えられるに至った(当然却下されたが)。
IPをさらすことだけによる危険は、そのIPから手元で使用中のコンピュータを一意に特定でき
(ex:グローバルIPによる常時接続)、かつプロキシ・サーバー、ファイヤーウォールなどの防御策を怠っている場合にしか及ばないので、
fusianasanに引っかかったからといって実はそこまで神経質になることもなかったりする。
……過去にIPから仕事中に政府機関から2ちゃんねるにつないで裏2ちゃんに入ろうとしていた愚か者が釣れてさらされたという事例はあるが。
なお、現在では一部の板でデフォルトの名無しさん(名前欄未記入時の名前)が「fusianasanさん」などfusianasanを含む名前となっている場合がある。
また、串の性能を試すために敢えて裏2ちゃんに引っかかっていると思われる強者もちらほら見受けられる。

類義語:mokorikomo
参照:裏2ちゃん、キャップ

36 Name: Anonymous 2005-10-14 13:29 ID:8YdETsDh [Del]

I had a number of good old threads from this board bookmarked so I could read them later and wrap my head around their ideas, but then I lost them all in a hard drive crash (strike two, Western Digital!). I also had a number of Japanese BBS's linked from this board bookmarked so I could take a look at their software's functionality and get some other ideas.

Anyway, these are all non-template suggestions:

  • Topical category metadata in new thread creation so only one instance is necessary per site (further fine-grained behavior with PATH_INFO would let you nest one category inside another and view multiple categories of threads at once).
  • Thorough search functionality a-la notchan, using PATH_INFO. This might not be possible without implementing a per-post metadata system though.
  • Elaborating on the above, per-post metadata for "sage" status, for future-proofing in case someone wants to remove the functionality from the e-mail field (onto a checkbox, for example).
  • config.pl parameter for a generic image that takes the place of a deleted image (ie, Hello Kitty)
  • Fine-grained banning options that let you choose whether or not the user is blocked from reading a board, posting to a board, or both. Another parameter defines the duration of his ban ('0' for permaban), and another defines a reason/message displayed when the user tries to access a board.
  • Replace HTML error pages with dialog box equivalents using JavaScript.
  • Kill user deletion. I can't see any case for when it'd have constructive uses.
  • Conversion to mod_perl?

I also have an early idea swimming around in my head about only bumping threads a few positions up, instead of to the top. Another idea is actively bumping threads down, either by a few positions or to the bottom. I'm not exactly sure yet what good it'd be for.

Also...

>* I'll add thread closing to Kareha, but I was thinking of setting the default behaviour to never permasage or close threads.

I think this is ideal for the time, until we have enough statistical data to derive thorough auto-permasage and auto-delete/archive algorithms. Just add the functionality for mods to manually set these statuses, but remove the "permasage at 1000" behavior.

The standalone thumbnailer project is a great idea too. As a suggestion, how about adding functionality to also read and thumbnail document files like TXT, PDF, and DOC?

285 Name: !WAHa.06x36 : 2005-10-23 18:38 ID:Heaven [Del]

>>284

HTML mode handles >> references, but not URLs because I've been too lazy to figure out a regexp that would handle that correctly. Also, yes, newlines are converted to <br /> intentionally. This matches how most sites that accept HTML markup work.

228 Name: Anonymous 2005-10-21 17:35 ID:13VMAtd0 [Del]

   ∧∧
  (  ・ω・)    It's late
  _| ⊃/(___
/ └-(____/

   ∧∧
  ( ・ω・ )    Good night!
  _| ⊃/(___
/ └-(____/

  <⌒/ヽ-、___
/<_/____/
 ̄ ̄

204 Name: dmpk2k!hinhT6kz2E 2005-10-20 22:43 ID:Heaven [Del]

> the entire server occasionally breaks

Occasionally?

Well, that might be it, except that on world4ch at least one board breaks every week, if not more. Incidentally, as of this writing, 4chan's /dis/ and /sug/ are also toast (third time this month?).

As it is, I can't recall ever seeing kareha break.

35 Name: !WAHa.06x36 2005-10-14 13:11 ID:gBva8ggI [Del]

Well, a lot of machines run on x86 these days, so that covers a lot of it. And you could pre-compile for a couple of other architectures, and have it pretty much covered. Linux and unixes in general make it ridiculously hard to distribute binaries, as opposed to Windows or Mac OS, but it's still possible with a bit of trickery. Avoiding dynamic libraries helps a lot.

115 Name: Anonymous 2005-10-18 03:20 ID:Heaven [Del]

>>108
I don't think that restricting specific users' posting priviliges is useful in any way except restricting them from posting.

>>108,113
"fusianasan" is for when a user wants to prove that he is posting from a certain place (like a school, a company's network or a military base).

>>112
A keyboard shortcut for "reply" in Kareha or "submit" in Wakaba would be nice to have.

323 Name: Anonymous : 2005-10-26 18:16 ID:Heaven [Del]

>>321
Wait, why should l50 links be indexed/cached? IMO the only links that should be on Google at all are main pages and "entire thread" links.

Some final points (I hope) before the whole thing is wrapped up:

  • The CSS in the All threads page is unsightly. Is there a way to properly wrap the outer color border(s) around the table of threads?
  • I still say that the "Navigation: " text is extraneous when people can clearly see what the links do. Also still partitioning for 0ch-style error pages (with displayed user host and all).
  • Now that we do have filesize indicators in the backlog page of mode_message, do you still find it useless to have the red bold filesizes near the bottom of thread subpages?
  • Does mode_message now work in PAGE_GENERATION => 'paged'?
  • Idea: forced anonymous/sage/ID/fusianasan by IP/thread/board/whole site (some of these combinations already exist, I know)?
  • Finally, I imagine that the permasage/close/delete functions in kareha.pl will be easily interchangeable among the conditions in post_stuff(). Can you confirm this?

52 Name: Anonymous 2005-10-15 19:48 ID:Heaven [Del]

On second thought, the whole search idea was pretty poor...but could you implement saging in a way that's independent of any particular post element, and is instead assigned in the individual templates?

223 Name: 214 2005-10-21 16:41 ID:Heaven [Del]

I want a 1001th post! :(

210 Name: Anonymous 2005-10-21 14:23 ID:Heaven [Del]

A trigger for turning wakabamark off and one for forcing a monospace font

This thread has been closed. You cannot post in this thread any longer.