The Legendary Next Update (365)

124 Name: Anonymous 2005-10-18 07:43 ID:9mxxoE2M [Del]

>>123
signed

123 Name: Anonymous 2005-10-18 07:27 ID:Heaven [Del]

Some semantical nitpicking: "replies" should probably be changed to "posts", since >>1 is not really a reply, which makes >>100 the 99th reply to a thread, thus contradicting the "First 100 replies" thing. Same goes for "Next 100 replies" and "Last 50 replies".

178 Name: Anonymous 2005-10-20 06:26 ID:Heaven [Del]

> and/or let your oldtime users tell newbies.

Like so? http://wakaba.c3.cx/soc/kareha.pl/1124991549/7

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

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

211 Name:   2005-10-21 14:41 ID:Heaven [Del]

> change the no-ID-on-email option to no-ID-on-sage
> multi-page links (1-, 101-, 201-, etc) at the top of subpages

Already implemented.

> config.pl parameter to permasage after a certain thread filesize/total number of characters has been reached

Isn't this essentially the same as saying "Please don't talk so much?"

> no EMAIL_ID parameter (most if not everyone uses "Heaven" anyway, and if they really want to change it they can easily find the string in kareha.pl)

The choice of this string is so weird and arbitary, I feel better keeping it as an option so that I can disclaim responsibility!

> better configuration of date and time (with optional timezone offsets), parsing certain characters for individual elements (ie, yyyy/MM/dd(D) hh:mm:ss -5:00:00) and also accepting numerical inputs for fixed dates and times (Eternal September)
> red, bold thread filesize indicator near the bottom of subpages

Pretty useless. I'd rather not waste work and code on something that has no actual use. (Timezone offsets would be useful, but this is such an incredibly hairy issue to get right, I don't want to even try. Just handling Daylight Savings Time would make my head explode, and I can't just leave it out, because then either the admin has to keep changing the offset, or the time will be wrong half the year anyway.)

> non-bolded post numbers
> colons before dates
> colons before names (thread subpages only)

what

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

>>38
Sorry, I guess I should've worded that more clearly. I was referring to the ability for users to delete their own posts. It's counter-productive to discussions when a user deletes his own post and a quick replier later quotes or references it. It also encourages users to be lazy with posting, because they can always go back and hide their mistakes.

67 Name: Anonymous 2005-10-17 06:47 ID:Heaven [Del]

The "Entire thread" link on the thread page is missing a "/" at the end.

50 Name: !WAHa.06x36 2005-10-15 19:03 ID:Heaven [Del]

First thought: It would eliminate the concept of sageing as a protest entirely.

208 Name: Anonymous 2005-10-21 13:46 ID:cRmds2wO [Del]

Recapping, here are the things I'd like to see in the final release:

  • better configuration of date and time (with optional timezone offsets), parsing certain characters for individual elements (ie, yyyy/MM/dd(D) hh:mm:ss -5:00:00) and also accepting numerical inputs for fixed dates and times (Eternal September)
  • config.pl parameter to permasage after a certain thread filesize/total number of characters has been reached
  • change the no-ID-on-email option to no-ID-on-sage
  • no EMAIL_ID parameter (most if not everyone uses "Heaven" anyway, and if they really want to change it they can easily find the string in kareha.pl)

Some nitpicky template adjustments to mode_message in order to more closely resemble 0ch (see http://f17.aaa.livedoor.jp/~zerotest/jikken and http://0ch.mine.nu/jikken):

  • multi-page links (1-, 101-, 201-, etc) at the top of subpages
  • red, bold thread filesize indicator near the bottom of subpages
  • "read all later posts" link just below the filesize indicator
  • non-bolded post numbers
  • colons before dates
  • colons before names (thread subpages only)
  • colons after thread position number in main page thread list
  • smaller and (at least for Pseud0ch) black and bolded title in "Create new thread" box

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

> They can modify it an claim copyright on their modifications, at least as long as they're significant enough, but that doesn't affect existing works in the public domain.

Devil's advocate: What if they make significant changes you would want to add yourself? before you do? Can they then tell you to stop if they license their work first?

40 Name: 38 2005-10-14 14:15 ID:Heaven [Del]

Oh okay.

I agree, for Kareha at least.

213 Name:   2005-10-21 14:44 ID:Heaven [Del]

> More information on the all threads page, date of the last post? file size?

That might be somewhat useful, I suppose. I'll have a look at it.

> A quote button that puts >>n and puts the post prefixed by > in the reply box

There's already a way to put in >>n. However, quoting an entire post is seldom something you want to do anyway, so I don't think that's worth cluttering up the page with a million buttons for.

> Different secret strings for different functions (e.g. one for ID generation and one for secure tripcodes)

Most admins probably don't get point of the secret string anyway, and asking them to put in several is just too annoying. In retrospect, I'd like to add a second layer of hashing to these, but that'd mean breaking secure trips AGAIN.

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

I've been trying to work out a more elegant solution for this.

108 Name: 34.75.33.65.cfl.res.rr.com 2005-10-17 19:51 ID:Heaven [Del]

I thought fusianasan was supposed to be a mod-only function to weed out bad posters. And what would be the difference between revealing the persons's IP and his ISP's domain?

>>99
I didn't mean to include Forcenick in there, sorry.
Adding to that, however, how about forced sage for specificed IPs? It'd make for a great slogan: Remember kids, tripcodes and aging are privileges, not rights!

97 Name: Anonymous 2005-10-17 14:14 ID:Heaven [Del]

>>96
forgot to mention that maybe a parameter could be included in config.pl to define an XHTML file for the disclaimer/rules block. It could be used both in 2ch and Futaba (right under the posting area) modes.

144 Name: Anonymous 2005-10-19 01:11 ID:Heaven [Del]

Thanks for the links at the top. Previously, I had to search for those threads over and over again if I wanted to find them.

348 Name: Anonymous : 2005-10-27 17:17 ID:Heaven [Del]

I notice some weirdness with the CSS changes sometimes. For example, the first post on a -100 page will sometimes have the first character of the post enlarged. >>2 looks something like
\
/>2 until it is mouse-overed or you change the CSS, but then it goes back to large again on refresh. Also can happen with lowercase letters. Some of the field labels also change size from refreshing in a certain CSS versus just switching to it.

>It's all a design & layout question. I'd like to have the interface reduced to what is absolutely neccessary, esp. since I do not think many people really want to even bother or bother very often with the whole markup question.

Why have a name field or link field? For the majority of posts they are not used, or only used for sage. As stated earlier, they are not even needed for the bare minimum of usage. You want to prove it is you posting? Use a gpg signature or something and a third-party extension, it is just fluff that is not needed at all!

I'm all for having a system that is easy to modify to the end-user's wants and needs. However, there are going to be plenty of users that are not hardcore enough to make or use such options. Therefore, the normal functionality should be pretty usable.

People seem to pop-up whenever something that would change the interface to shout it down. They seem to fear any change and normally give no reason other than it would clutter things up or some nonsense. Does the CSS selector -really- get in your way? It is probably a whole ten pixels! Is having the More options thing really ruining your experience, or are you just against it on some principle? Personally, I would move it below the comment text-area or something, as now the tab amounts between the main fields has changed.

144 Name: Anonymous 2005-10-19 01:11 ID:Heaven [Del]

Thanks for the links at the top. Previously, I had to search for those threads over and over again if I wanted to find them.

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

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

127 Name: Anonymous 2005-10-18 16:23 ID:Heaven [Del]

Getting back to inconsequential nitpicking: I find the "___ image replies omitted" phrase to be a bit redundant, and for one it confuses me as to whether or not those image replies are separate from text-only replies. How about simply calling it "images"?

241 Post deleted by user.

165 Name: Shii the Metal Idol 2005-10-19 18:13 ID:z/kxsMjQ [Del]

> Huh?

You know, like [email protected].

Shiichan 2000 let you enter "down" to sage and "showip" for fusianasan, but it was mainly just a curiosity and was not used. There's no one English word that does the job of the pseudo-Japanese "sage". Better to have a tick-box and explain to people why it is useful. Or an option for it.

> Then the board has to be configurated to just do that (it already can).

No, 148 is referring to a user-end problem, not a server-end problem.

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

>>116
Good question! I tried to find out myself but just found some interesting but rather unhelpful links:
http://d.hatena.ne.jp/keyword/fusianasan
http://info.2ch.net/guide/faq.html#G5
http://ansitu.xrea.jp/guidance/?FAQ1

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;
}

129 Name: Anonymous 2005-10-18 17:18 ID:Heaven [Del]

Damn, I was about to plug >>96 when I saw you uploaded the new version. Thanks for listening WAHa, you're awesome. :D

(Does this work like rules.html in mode_image? Is the board title inserted automatically in templates.pl or is it part of that separate html file?)

Already a few nitpicks though: (1) index.html#menu and index.html#1 links should be automatically inserted to the right of the board title (or below if you're looking at it without CSS), and (2) the "Create new thread" title isn't really necessary, since the widget button already explains its function (like with the reply box).

Unrelated: in 2ch thread lists, position numbers are followed by colons, not periods.

145 Name:   2005-10-19 04:10 ID:gBva8ggI [Del]

>>140

So, does that mean you approve of removing the style selector on subpages? I just woke up and I'm confused.

Anyway, Safari doesn't, as far as I know, let you pick stylesheets. And IE obviously doesn't. Also, not even Firefox will actually remember your choice, making the ability completely useless anyway, unless coupled with Javascript on the page to save the setting.

> The Futaba template is missing the "No File" checkbox next to the File field in the Post New Thread area.

That's because Kareha has no "No File" check in the first place, and I'm not sure I want to add code just for that (since it'd have to be optional anyway).

134 Name: Anonymous 2005-10-18 17:37 ID:EoLJTz7L [Del]

How about a function to replace an inappropriate image with a standard image? (aka HelloKitty.gif)

357 Name: Anonymous : 2005-10-31 11:19 ID:Heaven [Del]

>>354
admin.pl with a separate HTML page in ./admin (so it can be accessed simply by appending "/admin" to the board URL). It should have every possible admin feature available in kareha.pl, including rebuilding caches, modifying the spamlist, and nuking the board.

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;
}

66 Name: Anonymous 2005-10-17 06:43 ID:MhkvoqyU [Del]

/-100 shows the first post two times.

359 Name: Anonymous : 2005-10-31 12:45 ID:Heaven [Del]

>>357
by "including," I mean "plus."

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