GT-ChatUsers 0.93 v1.04j

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Perl-Quellcode

    1. #!/usr/bin/perl
    2. #########################################################
    3. # GT-ChatUsers 0.93 v1.04j #
    4. #########################################################
    5. #-> Copyright 2001 by Dominik Leibenger <-#
    6. # Variablen anpassen! / Set up the variables!
    7. # Text der Userliste / Text before the userlist
    8. $starttext = "Derzeit Online";
    9. # Text nach der Userliste / Text after the userlist
    10. $endtext = "";
    11. # Text vor einem Raumnamen / Text before a room name
    12. $roomtitlestart = "<br><br><u><b>";
    13. # Text vor dem ersten Raum (falls 0 dann Standardname) /
    14. # Text before the first rooms name (if 0 then the standard name)
    15. $roomtitlefirstroomstart = 0;
    16. # Text nach einem Raumnamen / Text after a room name
    17. $roomtitleend = "</u></b><br>";
    18. # Text vor einem Usernamen / Text before a username
    19. $usernamestart = "";
    20. # Text nach einem Usernamen / Text after a username
    21. $usernameend = "";
    22. # Text zwischen 2 Usernamen / Text between two usernames
    23. $betweenusers = ", ";
    24. # Private Räume anzeigen / Show private rooms
    25. $privaterooms = 0;
    26. ### Wenn privaterooms = 1 / If privaterooms = 1 ###
    27. # Private Räume werden gekennzeichnet / Private rooms will be tagged
    28. $showprivatetag = 0;
    29. #########################################################
    30. require "Settings.dat";
    31. require "Directories.dat";
    32. require "$sourcedir/Subs.pl";
    33. require "$language.lng";
    34. $nousers = "<br>$text{login_nouseronline}";
    35. if(($roomtitlefirstroomstart eq "0") || ($roomtitlefirstroomstart == 0))
    36. {
    37. $roomtitlefirstroomstart = $roomtitlestart;
    38. }
    39. $output = $starttext;
    40. print "Content-Type: application/x-javascript\n";
    41. print "Pragma: no-cache\n";
    42. print "Expires: now\n\n";
    43. print "document.write('";
    44. my %roomlist;
    45. opendir(DIR,$vardir);
    46. for (readdir(DIR))
    47. {
    48. if (/^online\._/)
    49. {
    50. open(FILE,"$vardir/$_");
    51. readlock(FILE);
    52. my ($name,$id,$nick,$room,$pull) = split(/\|/,<FILE>);
    53. unlock(FILE);
    54. close(FILE);
    55. $roomlist{$room} .= "$nick";
    56. }
    57. }
    58. closedir(DIR);
    59. $roomnumber = 0;
    60. $countusers = 0;
    61. foreach my $room (sort keys %roomlist)
    62. {
    63. my %chatroominfo;
    64. if($showprivatetag)
    65. {
    66. %chatroominfo = getRoomInfo($room);
    67. }
    68. if(!$privaterooms)
    69. {
    70. if(!$showprivatetag)
    71. {
    72. %chatroominfo = getRoomInfo($room);
    73. }
    74. if($chatroominfo{'closed'})
    75. {
    76. next;
    77. }
    78. }
    79. ++$roomnumber;
    80. if($chatroominfo{'closed'})
    81. {
    82. if($roomnumber == 1)
    83. {
    84. $output .= "$roomtitlefirstroomstart$room ($text{roomlist_state_private})$roomtitleend";
    85. }
    86. else
    87. {
    88. $output .= "$roomtitlestart$room ($text{roomlist_state_private})$roomtitleend";
    89. }
    90. }
    91. else
    92. {
    93. if($roomnumber == 1)
    94. {
    95. $output .= "$roomtitlefirstroomstart$room$roomtitleend";
    96. }
    97. else
    98. {
    99. $output .= "$roomtitlestart$room$roomtitleend";
    100. }
    101. }
    102. $firstuser = 0;
    103. foreach $chatuser (sort split(/ /,$roomlist{$room}))
    104. {
    105. if($chatuser ne "")
    106. {
    107. ++$countusers;
    108. if($firstuser == 0)
    109. {
    110. $output .= "$usernamestart$chatuser$usernameend";
    111. $firstuser = 1;
    112. }
    113. else
    114. {
    115. $output .= "$betweenusers$usernamestart$chatuser$usernameend";
    116. }
    117. }
    118. }
    119. }
    120. if ($countusers <= 0)
    121. {
    122. $output .= "$nousers";
    123. }
    124. $output .= "$endtext";
    125. $output =~ s/\'/\\\'/g;
    126. print "$output";
    127. print "');";
    128. exit;

    959 mal gelesen