- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
sub mainMenu {
if ($action eq "addtab" && $iamadmin) { require "$sourcedir/AdvancedTabs.pl"; &AddNewTab; }
elsif ($action eq "edittab" && $iamadmin) { require "$sourcedir/AdvancedTabs.pl"; &EditTab; }
elsif ($action ne "") {
if ($action eq "search2") {
$tmpaction = "search";
} elsif ($action eq "favorites" || $action eq "shownotify" || $action eq "im" || $action eq "imdraft" || $action eq "imoutbox" || $action eq "imstorage" || $action eq "imsend" || $action eq "imsend2" || $action eq "imshow" || $action eq "profileCheck" || $action eq "myviewprofile" || $action eq "myprofile" || $action eq "myprofileContacts" || $action eq "myprofileOptions" || $action eq "myprofileBuddy" || $action eq "myprofileIM" || $action eq "myprofileAdmin" || $action eq "myusersrecentposts") {
$tmpaction = "mycenter";
} elsif ($action eq "messagepagetext" || $action eq "messagepagedrop" || $action eq "threadpagetext" || $action eq "threadpagedrop" || $action eq "post" || $action eq "notify" || $action eq "boardnotify" || $action eq "sendtopic" || $action eq "modify") {
$tmpaction = "home";
} elsif ($action eq "guestpm2") {
$tmpaction = "guestpm";
} else { $tmpaction = $action; }
} else {
$tmpaction = "home";
}
$tab{'home'} = qq~<span |><a href="$scripturl" title = "$img_txt{'103'}" style="padding: 3px 0 4px 0;">$tabfill$img_txt{'103'}$tabfill</a></span>~;
$tab{'help'} = qq~<span |><a href="$scripturl?action=help" title = "$img_txt{'119'}" style="padding: 3px 0 4px 0; cursor:help;">$tabfill$img_txt{'119'}$tabfill</a></span>~;
if ($maxsearchdisplay > -1) {
$tab{'search'} = qq~<span |><a href="$scripturl?action=search" title = "$img_txt{'182'}" style="padding: 3px 0 4px 0;">$tabfill$img_txt{'182'}$tabfill</a></span>~;
}
if (!$ML_Allowed || ($ML_Allowed == 1 && !$iamguest) || ($ML_Allowed == 2 && $staff) || ($ML_Allowed == 3 && ($iamadmin || $iamgmod))) {
$tab{'ml'} = qq~<span |><a href="$scripturl?action=ml" title = "$img_txt{'331'}" style="padding: 3px 0 4px 0;">$tabfill$img_txt{'331'}$tabfill</a></span>~;
}
if ($iamadmin) {
$tab{'admin'} = qq~<span |><a href="$boardurl/AdminIndex.$yyaext" title = "$img_txt{'2'}" style="padding: 3px 0 4px 0;">$tabfill$img_txt{'2'}$tabfill</a></span>~;
}
if ($iamgmod) {
if (-e "$vardir/gmodsettings.txt") { require "$vardir/gmodsettings.txt"; }
if ($allow_gmod_admin) {
$tab{'admin'} = qq~<span |><a href="$boardurl/AdminIndex.$yyaext" title = "$img_txt{'2'}" style="padding: 3px 0 4px 0;">$tabfill$img_txt{'2'}$tabfill</a></span>~;
}
}
if ($sessionvalid == 0 && !$iamguest) {
my $sesredir;
unless (!$testenv || $action eq "revalidatesession" || $action eq "revalidatesession2") {
$sesredir = $testenv;
$sesredir =~ s/\=/\~/g;
$sesredir =~ s/;/x3B/g;
$sesredir = qq~;sesredir=$sesredir~;
}
$tab{'revalidatesession'} = qq~<span |><a href="$scripturl?action=revalidatesession$sesredir" title = "$img_txt{'34a'}" style="padding: 3px 0 4px 0;">$tabfill$img_txt{'34a'}$tabfill</a></span>~;
}
// далее мало что меняется в стиле...
А если говорить о том, как надо, то надо тут все с 0 переписать.
а вообще да, сабж нужно не только переписывать, но и перепроектировать
http://bit.ly/aULEBz
поэтому количеством говнокодеров на перле по отношению к говнокодерам на пхп мало и им можно пренебречь и отбросить , вот отсюда и такие заявления ))))
Надеюсь я примерно объяснил ситуацию, и вы больше не будете принимать близко к сердцу выкрики анонимов )))
С этим я не спорю, если рассматривать абсолютное количество говнокодеров, то да, на php их существенно больше, т.к. и кода на php существенно больше. А вот в относительном значении количество говнокодеров одинаково, что на php, что на perl.
я много раз говорил: написать говно можно на чем угодно, но на некоторых языках написать НЕговно сложнее, чем на других. В частности -- на php;)
Я бы так выстроил лесенку говноязыков:
1. bat-файлы
2. perl
3. php
Хотите туда еще и Basic на свое усмотрение на любую позицию вставьте, я бы его между bat и perl поставил.
нужна помощь программиста!!! у меня между стулом и клавиатурой что-то застряло!!!
однако, я понимаю, что вам в них не хватает мышки, окошек, кнопочек и автокомплита = )
А вам там всего хватает, пишете полноценные программы на них?
Мне вот приходилось на них писать весьма крупные поделки, т.к. работал некоторое время в организации, где сторонний софт был строго запрещен, а нестандартный софт для работы был нужен. Вот батники и были выходом, т.к. средства стандартные виндовские.
Если в 9х это был примитивный консольный шелл, то в cmd была попытка сделать из них что-то, напоминающее язык программирования. Но как-то криво получилось.
а вся беда не в них, а в том, что тулзов мало. Сравните, например, с положением дела в линуксе
каждый раз когда возникает мысль рассмотреть эту хрень поближе поражает его вербозность и ненативность
echo ВНЕЗАПНО & cscript /? > "%TEMP%\RTFM.txt" & start /wait %TEMP%\RTFM.txt & del "%TEMP%\RTFM.txt"
JavaScript, хотя и не без микрософтовских квирков
А бывает, что программисты так привязаны к своему детищу, что и не хотят ничего менять -- работает же.
Люди, писавшие доску объявлений YABB (это код оттуда), все-таки нашли возможность переписать все, так что сейчас код выглядит иначе.
...Впрочем, и несколько лет назад когда была в ходу опубликованная здесь версия, было стыдно так писать - особенно на Perl-е. Чего стоит одна 7 строчка из этого несчастного меню, где идут подряд через OR около 20 условий! Убил бы автора, ей-богу, если бы пришлось поддерживать такой код.