/[nuke]/html/user.php
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /html/user.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (show annotations) (vendor branch)
Fri Sep 22 07:22:13 2000 UTC (23 years, 6 months ago) by dpavlin
Branch: dbp, MAIN
CVS Tags: r3_6, HEAD
Changes since 1.1: +0 -0 lines
import of version 3.6

1 <?PHP
2
3 ######################################################################
4 # PHP-NUKE: Web Portal System
5 # ===========================
6 #
7 # Copyright (c) 2000 by Francisco Burzi (fburzi@ncc.org.ve)
8 # http://www.ncc.org.ve/php-nuke.php
9 #
10 # This modules is to manage all registered user's options
11 #
12 # This program is free software. You can redistribute it and/or modify
13 # it under the terms of the GNU General Public License as published by
14 # the Free Software Foundation; either version 2 of the License.
15 ######################################################################
16
17 if(!isset($mainfile)) { include("mainfile.php"); }
18
19 function nav() {
20 include("config.php");
21 ?>
22 <center>
23 <a href="user.php?op=edituser"><img src=<?php echo "$uimages"; ?>/edit.gif border=0></a>&nbsp;&nbsp;
24 <a href="user.php?op=edithome"><img src=<?php echo "$uimages"; ?>/change.gif border=0></a>&nbsp;&nbsp;
25 <a href="user.php?op=editcomm"><img src=<?php echo "$uimages"; ?>/conf_comments.gif border=0></a>&nbsp;&nbsp;
26 <a href="user.php?op=chgtheme"><img src=<?php echo "$uimages"; ?>/theme.gif border=0></a>&nbsp;&nbsp;
27 <a href="user.php?op=logout"><img src=<?php echo "$uimages"; ?>/exit.gif border=0></a><br><br>
28 </center>
29 <?php
30 }
31
32 function userCheck($uname, $email) {
33 global $stop;
34 if ((!$email) || ($email=="") || (!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$",$email))) $stop = "<center>".translate("ERROR: Invalid email")."</center><br>";
35 if (strrpos($uname,' ') > 0) $stop = "<center>".translate("ERROR: Email addresses do not contain spaces.")."</center>";
36 if ((!$uname) || ($uname=="") || (ereg("[^a-zA-Z0-9_-]",$uname))) $stop = "<center>".translate("ERROR: Invalid Nickname")."</center><br>";
37 if (strlen($uname) > 25) $stop = "<center>".translate("Nickname is too long. It must be less than 25 characters.")."</center>";
38 if (eregi("^((root)|(adm)|(linux)|(webmaster)|(admin)|(god)|(administrator)|(administrador)|(nobody)|(anonymous)|(anonimo)|(anĂ³nimo)|(operator))$",$uname)) $stop = "<center>".translate("ERROR: Name is reserved.")."";
39 if (strrpos($uname,' ') > 0) $stop = "<center>".translate("There cannot be any spaces in the Nickname.")."</center>";
40 dbconnect();
41 if (mysql_num_rows(mysql_query("select uname from users where uname='$uname'")) > 0) $stop = "<center>".translate("ERROR: Nickname taken")."</center><br>";
42 if (mysql_num_rows(mysql_query("select email from users where email='$email'")) > 0) $stop = "<center>".translate("ERROR: Email address already registered")."</center><br>";
43 return($stop);
44 }
45
46 function makePass() {
47 $makepass="";
48 $syllables="er,in,tia,wol,fe,pre,vet,jo,nes,al,len,son,cha,ir,ler,bo,ok,tio,nar,sim,ple,bla,ten,toe,cho,co,lat,spe,ak,er,po,co,lor,pen,cil,li,ght,wh,at,the,he,ck,is,mam,bo,no,fi,ve,any,way,pol,iti,cs,ra,dio,sou,rce,sea,rch,pa,per,com,bo,sp,eak,st,fi,rst,gr,oup,boy,ea,gle,tr,ail,bi,ble,brb,pri,dee,kay,en,be,se";
49 $syllable_array=explode(",", $syllables);
50 srand((double)microtime()*1000000);
51 for ($count=1;$count<=4;$count++) {
52 if (rand()%10 == 1) {
53 $makepass .= sprintf("%0.0f",(rand()%50)+1);
54 } else {
55 $makepass .= sprintf("%s",$syllable_array[rand()%62]);
56 }
57 }
58 return($makepass);
59 }
60
61 function confirmNewUser($uname, $email) {
62 global $stop, $EditedMessage;
63 include("header.php");
64 filter_text($uname);
65 $uname = $EditedMessage;
66 userCheck($uname, $email);
67 if (!$stop) {
68 echo "Username: $uname<br>"
69 ."Email: $email<br>"; ?>
70 <form action="user.php" method="post">
71 <input type="hidden" name="uname" value="<?PHP echo"$uname"; ?>">
72 <input type="hidden" name="email" value="<?PHP echo"$email"; ?>">
73 <br><br><input type=hidden name=op value=finish><input type="submit" value="<?php echo translate("Finish"); ?>"></form>
74 <?PHP
75 } else {
76 echo "$stop";
77 }
78 include("footer.php");
79 }
80
81 function finishNewUser($uname, $email) {
82 global $stop, $makepass, $EditedMessage;
83 include("header.php");
84 dbconnect();
85 userCheck($uname, $email);
86 if (!isset($stop)) {
87 $makepass=makepass();
88
89 if(!$system)
90 $cryptpass=crypt($makepass);
91 else
92 $cryptpass=$makepass;
93
94 $result = mysql_query("insert into users values (NULL,'','$uname','$email','','','$cryptpass',10,'',0,0,0,'',0,'','','$commentlimit', '0')");
95 if(!$result) {
96 echo mysql_errno(). ": ".mysql_error(). "<br>";
97 } else {
98 $message = "".translate("Welcome to")." $sitename!\n\n".translate("You or someone else has used your email account")." ($email) ".translate("to register an account at")." $sitename. ".translate("The following is the member information:")."\n\n".translate("-Nickname: ")." $uname\n".translate("-Password: ")." $makepass";
99 $subject="".translate("User Password for")." $uname";
100 $from="$adminmail";
101 if ($system == 1) {
102 echo "".translate("Your password is: ")."<b>$makepass</b><br>";
103 echo "<a href=\"user.php?op=login&uname=$uname&pass=$makepass\">Login</a> to change your info";
104 } else {
105 mail($email, $subject, $message, "From: $from\nX-Mailer: PHP/" . phpversion());
106 echo "".translate("You are now registered. You should receive your password at the email account you provided.")."";
107 }
108 }
109 } else {
110 echo "$stop";
111 }
112 include("footer.php");
113 }
114
115 function userinfo($uname, $bypass=0) {
116 global $user, $cookie;
117 $result = mysql_query("select femail, url, bio from users where uname='$uname'");
118 $userinfo = mysql_fetch_array($result);
119 if(!$bypass) cookiedecode($user);
120 include("header.php");
121 if(($uname == $cookie[1]) || ($bypass==1)) {
122 echo "<font face=Arial,Helvetica size=4><center>$uname, ".translate("Welcome to")." $sitename!<br><br>";
123 echo "<font size=3>".translate("This is your personal page")."<hr size=1 noshade>";
124 nav();
125 }
126 if((mysql_num_rows($result)==1) && ($userinfo[url] || $userinfo[femail] || $userinfo[bio])) {
127 if ($userinfo[url]) { echo "".translate("My HomePage:")." <a href=\"$userinfo[url]\">$userinfo[url]</a><br>\n"; }
128 if ($userinfo[femail]) { echo "".translate("My E-Mail:")." <a href=\"mailto:$userinfo[femail]\">$userinfo[femail]</a><br>\n"; }
129 if ($userinfo[bio]) { echo "<br><b>".translate("Extra Info:")." </b><br>$userinfo[bio]<br>\n"; }
130 } else {
131 echo "<center>".translate("There is no available info for")." $uname</center>";
132 }
133 echo "<br><br><center>".translate("This web site uses")." <a href=/cookies.php>cookies</a></center>";
134 include("footer.php");
135 }
136
137 function main($user) {
138 global $stop;
139 if(!isset($user)) {
140 include("config.php");
141 include("header.php");
142 ?>
143 <?PHP if ($stop) echo "<center><blink><marquee><h3>".translate("Incorrect Login!")."</h3></marquee></blink></center>"; ?>
144 <?php
145 if ($user) {
146 } else {
147 ?>
148 <table cellpadding=1 cellspacing=0 border=0 bgcolor=000000 width="100%"><tr><td>
149 <table cellpadding=8 cellspacing=0 border=0 bgcolor=FFFFFF width="100%">
150 <tr><td valign="top">
151 <form action="user.php" method="post"><font face=arial,helvetica>
152 <b><?php echo translate("User Login"); ?></b><br><br>
153 <?php echo translate("Nickname: "); ?><input type="text" name="uname" size=26 maxlength=25><br>
154 <?php echo translate("Password: "); ?><input type="password" name="pass" size=21 maxlength=20><br>
155 <input type=hidden name=op value="login">
156 <input type="submit" value="<?php echo translate("Login"); ?>">
157 </td</tr></table></td</tr></table></form>
158 <br>
159 <?php } ?>
160
161 <table cellpadding=1 cellspacing=0 border=0 bgcolor=000000 width="100%"><tr><td>
162 <table cellpadding=8 cellspacing=0 border=0 bgcolor=FFFFFF width="100%">
163 <tr><td valign="top">
164 <form action="user.php" method="post"><font face=arial,helvetica>
165 <b><?php echo translate("New User:"); ?></b><br><br>
166 <?php echo translate("Nickname: "); ?><input type="text" name="uname" size=26 maxlength=25><br>
167 <?php echo translate("E-Mail: "); ?><input type="text" name="email" size=25 maxlength=60><br>
168 <input type=hidden name=op value="new user">
169 <input type="submit" value="<?php echo translate("New User"); ?>">
170 </form>
171 <font size=2><?php echo translate("(Password will be sent to the email address you enter.)"); ?><br><br>
172 <font size=2><?php echo translate("Notice: Account preferences are cookie based."); ?> <a href="cookies.php"><?php echo translate("more info..."); ?></a></font><br>
173 <?php echo translate("As a registered user you can:"); ?><br>
174 <li> <?php echo translate("Post comments with your name"); ?>
175 <li> <?php echo translate("Send news with your name"); ?>
176 <li> <?php echo translate("Have a personal box in the Home"); ?>
177 <li> <?php echo translate("Select how many news you want in Home"); ?>
178 <li> <?php echo translate("Customize the comments"); ?>
179 <li> <?php echo translate("Select different themes"); ?>
180 <li> <?php echo translate("some other cool stuff..."); ?><br>
181 <?php echo translate("Register Now! It's Free!"); ?><br>
182 <?php echo translate("We don't sell/give to others your personal info."); ?>
183 </td</tr></table></td</tr></table>
184 <br><br>
185
186 <table cellpadding=1 cellspacing=0 border=0 bgcolor=000000 width="100%"><tr><td>
187 <table cellpadding=8 cellspacing=0 border=0 bgcolor=FFFFFF width="100%">
188 <tr><td valign="top"><font face=Arial,Helvetica>
189 <b><?php echo translate("Lost your Password?"); ?></b><br><br>
190 <font size=2>
191 <?php echo translate("No problem. Just type your Nickname and click on send button."); ?><br>
192 <?php echo translate("Confirmation Info"); ?><br>
193 <form action="user.php" method="post"><font face=arial,helvetica>
194 <?php echo translate("Nickname: "); ?><input type="text" name="uname" size=26 maxlength=25>&nbsp;&nbsp;
195 <?php echo translate("Confirmation Code: "); ?><input type="text" name="code" size=5 maxlength=6><br>
196 <input type=hidden name=op value=mailpasswd>
197 <input type="submit" value="<?php echo translate("Send Password"); ?>">
198 </td></tr></table></td></tr></table></form>
199
200 <?PHP
201 include("footer.php");
202 } elseif(isset($user)) {
203 global $cookie;
204 cookiedecode($user);
205 dbconnect();
206 userinfo($cookie[1]);
207 }
208 }
209
210 function logout() {
211 setcookie("user");
212 include("header.php");
213 ?>
214 <?php echo "
215 <center><font face=arial,helvetica size=4><br><br>
216 ".translate("You are now logged out")."
217 </center>"; ?>
218 <?PHP
219 include("footer.php");
220 }
221
222 function mail_password($uname, $code) {
223 include("config.php");
224
225 dbconnect();
226 $result = mysql_query("select email, pass from users where (uname='$uname')");
227 if(!$result) {
228 echo "<center>".translate("Sorry, no corresponding user info was found")."</center>";
229 } else {
230 $host_name = getenv("REMOTE_ADDR");
231 list($email, $pass) = mysql_fetch_row($result);
232
233 $areyou = substr($pass, 0, 5);
234 if ($areyou==$code) {
235
236 $newpass=makepass();
237 $message = "".translate("The user account")." '$uname' ".translate("at")." $nuke_url ".translate("has this email associated with it.")." ".translate("A web user from")." $host_name ".translate("has just requested that password be sent.")."\n\n".translate("Your New Password is:")." $newpass\n\n ".translate("You can change it after you login at")." $nuke_url/user.php\n\n".translate("If you didn't ask for this, don't worry. You are seeing this message, not 'them'. If this was an error just login with your new password.")."";
238 $subject="".translate("User Password for")." $uname";
239 mail($email, $subject, $message, "From: $adminmail\nX-Mailer: PHP/" . phpversion());
240
241 // Next step: add the new password to the database
242
243 if(!$system) {
244 $cryptpass=crypt($newpass);
245 } else {
246 $cryptpass=$newpass;
247 }
248 $query="update users set pass='$cryptpass' where uname='$uname'";
249 if(!mysql_query($query)) {
250 echo "mail_password: could not update user entry. Contact the Administrator";
251 }
252
253 $titlebar = "User password sent";
254 include ("header.php");
255 echo "<center>".translate("Password for")." $email ".translate("mailed.")."";
256 include ("footer.php");
257
258 // If no Code, send it
259
260 } else {
261
262 $result = mysql_query("select email, pass from users where (uname='$uname')");
263 if(!$result) {
264 echo "<center>".translate("Sorry, no corresponding user info was found")."</center>";
265 } else {
266 $host_name = getenv("REMOTE_ADDR");
267 list($email, $pass) = mysql_fetch_row($result);
268 $areyou = substr($pass, 0, 5);
269
270 $message = "".translate("The user account")." '$uname' ".translate("at")." $nuke_url ".translate("has this email associated with it.")." ".translate("A web user from")." $host_name ".translate("has just requested a Confirmation Code to change the password.")."\n\n".translate("Your Confirmation Code is:")." $areyou \n\n".translate("With this code you can now assign a new password at")." $nuke_url/user.php\n".translate("If you didn't ask for this, don't worry. Just delete this Email.")."";
271 $subject="".translate("Confirmation Code for")." $uname";
272 mail($email, $subject, $message, "From: $adminmail\nX-Mailer: PHP/" . phpversion());
273
274 include ("header.php");
275 echo "<center>".translate("Confirmation Code for")." $email ".translate("mailed.")."";
276 include ("footer.php");
277 }
278 }
279 }
280 }
281
282 function docookie($setuid, $setuname, $setpass, $setstorynum, $setumode, $setuorder, $setthold, $setnoscore, $setublockon, $settheme, $setcommentmax) {
283 $info = base64_encode("$setuid:$setuname:$setpass:$setstorynum:$setumode:$setuorder:$setthold:$setnoscore:$setublockon:$settheme:$setcommentmax");
284 setcookie("user","$info",time()+15552000); // 6 mo is 15552000
285 }
286
287 function login($uname, $pass) {
288 global $setinfo,$system;
289 dbconnect();
290 $result = mysql_query("select pass, uid, storynum, umode, uorder, thold, noscore, ublockon, theme, commentmax from users where uname='$uname'");
291 if(mysql_num_rows($result)==1) {
292 $setinfo = mysql_fetch_array($result);
293
294 $dbpass=$setinfo[pass];
295
296 if(!$system)
297 $pass=crypt($pass,substr($dbpass,0,2));
298
299 if (strcmp($dbpass,$pass)) {
300 Header("Location: $nuke_url/user.php?stop=1");
301 return;
302 }
303
304
305
306 docookie($setinfo[uid], $uname, $pass, $setinfo[storynum], $setinfo[umode], $setinfo[uorder], $setinfo[thold], $setinfo[noscore], $setinfo[ublockon], $setinfo[theme], $setinfo[commentmax]);
307 Header("Location: user.php?op=userinfo&bypass=1&uname=$uname");
308 } else {
309 Header("Location: user.php?stop=1");
310 }
311 }
312
313 function infoCheck($uid, $email, $url) {
314 global $stop;
315 if ((!$email) || ($email=="") || (!ereg("[@]",$email)) || (!ereg("[.]",$email)) || (strlen($email) < 7) || (ereg("[^a-zA-Z0-9@.]",$email))) { $stop = "Invalid email<br>"; }
316 if (($url) && ($url!="http://") && ((!ereg("[http://]",$url)) || (!ereg("[.]",$url)) || (strlen($url) < 12) || (ereg("[^a-zA-Z0-9~.:/]",$url)))) { $stop = "Invalid URL<br>"; }
317 dbconnect();
318 list($test) = mysql_fetch_row(mysql_query("select email from users where (email='$email' and uid!=$uid)"));
319 if ("$test"=="$email") $stop = "<center>".translate("ERROR: Email address already registered")."</center><br>";
320 return($stop);
321 }
322
323 function edituser() {
324 global $user, $userinfo;
325 include("header.php");
326 getusrinfo($user);
327 nav();
328 ?>
329 <table cellpadding=8 border=0><tr><td>
330 <form action="user.php" method="post">
331 <font face=Arial,Helvetica>
332 <b><?php echo translate("Real Name"); ?></b> <?php echo translate("(optional)"); ?><br>
333 <input type="text" name="name" value="<?PHP echo"$userinfo[name]"; ?>" size=30 maxlength=60><br>
334 <b><?php echo translate("Real Email"); ?></b> <?php echo translate("(required)"); ?><br>
335 <?php echo translate("(This Email will not be public but is required, will be used to send your password if you lost it)"); ?><br>
336 <input type="text" name="email" value="<?PHP echo"$userinfo[email]"; ?>" size=30 maxlength=60><br>
337 <b><?php echo translate("Fake Email"); ?></b> <?php echo translate("(optional)"); ?><br>
338 <?php echo translate("(This Email will be public. Just type what you want, Spam proof)"); ?><br>
339 <input type="text" name="femail" value="<?PHP echo"$userinfo[femail]"; ?>" size=30 maxlength=60><br>
340 <b><?php echo translate("Your HomePage"); ?></b> <?php echo translate("(optional)"); ?><br>
341 <input type="text" name="url" value="<?PHP echo"$userinfo[url]"; ?>" size=30 maxlength=100><br>
342 <b><?php echo translate("Extra Info"); ?></b> <?php echo translate("(optional)"); ?><br>
343 <?php echo translate("(255 characters max. Type what others can know about yourself)"); ?><br>
344 <textarea wrap=virtual cols=50 rows=5 name=bio><?PHP echo"$userinfo[bio]"; ?></TEXTAREA>
345 <br><br>
346 <b><?php echo translate("Password"); ?></b> <?php echo translate("(type a new password twice to change it)"); ?><br>
347 <input type="password" name="pass" size=10 maxlength=20> <input type="password" name="vpass" size=10 maxlength=20>
348 <br><br>
349 <input type="hidden" name="uname" value="<?PHP echo"$userinfo[uname]"; ?>">
350 <input type="hidden" name="uid" value="<?PHP echo"$userinfo[uid]"; ?>">
351 <input type="hidden" name="op" value="saveuser">
352 <input type="submit" value="<?php echo translate("Save Changes"); ?>">
353 </form></td></tr></table>
354 <?PHP
355 include("footer.php");
356 }
357
358 function saveuser($uid, $name, $uname, $email, $femail, $url, $pass, $vpass, $bio) {
359 global $user, $cookie, $userinfo, $EditedMessage,$system;
360 if ((isset($pass)) && ("$pass" != "$vpass")) {
361 echo "<center>".translate("Both passwords are different. They need to be identical.")."</center>";
362 } elseif (($pass != "") && (strlen($pass) < $minpass)) {
363 echo "<center>".translate("Sorry, your password must be at least")." <b>$minpass</b> ".translate("characters long")."</center>";
364 } else {
365 if ($bio) { filter_text($bio); $bio = $EditedMessage; $bio = FixQuotes($bio); }
366 if ($pass != "") {
367 dbconnect();
368 cookiedecode($user);
369 mysql_query("LOCK TABLES users WRITE");
370
371 if(!$system)
372 $pass=crypt($pass);
373 mysql_query("update users set name='$name', email='$email', femail='$femail', url='$url', pass='$pass', bio='$bio' where uid='$uid'");
374 $result = mysql_query("select uid, uname, pass, storynum, umode, uorder, thold, noscore, ublockon, theme from users where uname='$uname' and pass='$pass'");
375 if(mysql_num_rows($result)==1) {
376 $userinfo = mysql_fetch_array($result);
377 docookie($userinfo[uid],$userinfo[uname],$userinfo[pass],$userinfo[storynum],$userinfo[umode],$userinfo[uorder],$userinfo[thold],$userinfo[noscore],$userinfo[ublockon],$userinfo[theme],$userinfo[commentmax]);
378 } else {
379 echo "<center>".translate("Something screwed up... don't you hate that?")."</center><br>";
380 }
381 mysql_query("UNLOCK TABLES");
382 } else {
383 dbconnect();
384 mysql_query("update users set name='$name', email='$email', femail='$femail', url='$url', bio='$bio' where uid=$uid");
385 }
386 Header("Location: user.php?"); // question is wierd bugfix
387 }
388 }
389
390 function edithome() {
391 global $user, $userinfo;
392 include ("header.php");
393 getusrinfo($user);
394 nav();
395 if($userinfo[theme]=="") $userinfo[theme] = "Default";
396 ?>
397 <table cellpadding=8 border=0><tr><td>
398 <form action="user.php" method="post">
399 <font face=Arial,Helvetica>
400 <b><?php echo translate("News number in the Home"); ?></b> (max: 127)<br>
401 <input type="text" name="storynum" size=3 maxlength=3 value=<?PHP echo"$userinfo[storynum]"; ?>>
402 <br><br>
403 <B><?php echo translate("Activate Personal Menu"); ?></B> <INPUT type=checkbox name=ublockon <?PHP if ($userinfo[ublockon]==1) { echo "checked"; } ?>>
404 <br><?php echo translate("(Check this option and the following text will appear in the Home)"); ?>
405 <br><?php echo translate("(You can use HTML code to put links, for example)"); ?><br>
406 <textarea cols=55 rows=5 name=ublock><?PHP echo"$userinfo[ublock]"; ?></textarea>
407 <br><br>
408 <input type="hidden" name="theme" value="<?PHP echo"$userinfo[theme]"; ?>">
409 <input type="hidden" name="uname" value="<?PHP echo"$userinfo[uname]"; ?>">
410 <input type="hidden" name="uid" value="<?PHP echo"$userinfo[uid]"; ?>">
411 <input type="hidden" name="op" value="savehome">
412 <input type="submit" value="<?php echo translate("Save Changes!"); ?>">
413 </form></td></tr></table>
414 <?PHP
415 include ("footer.php");
416 }
417
418 function chgtheme() {
419 global $user, $userinfo;
420 include ("header.php");
421 getusrinfo($user);
422 nav();
423 ?>
424 <center>
425 <form action="user.php" method="post">
426
427 <font face=Arial,Helvetica><b><?php echo translate("Select One Theme"); ?></b><br>
428 <select name=theme>
429 <?php
430 include("themes/list.php");
431 $themelist = explode(" ", $themelist);
432 for ($i=0; $i < sizeof($themelist); $i++) {
433 if($themelist[$i]!="") {
434 echo "<option value=\"$themelist[$i]\" ";
435 if((($userinfo[theme]=="") && ($themelist[$i]=="Default")) || ($userinfo[theme]==$themelist[$i])) echo "selected";
436 echo ">$themelist[$i]\n";
437 }
438 }
439 if($userinfo[theme]=="") $userinfo[theme] = "Default";
440 ?>
441 </select>
442 <br><font face=Arial,Helvetica>
443 <?php echo "
444 ".translate("This option will change the look for the whole site.")."<br>
445 ".translate("The changes will be valid only to you.")."<br>
446 ".translate("Each user can view the site with different theme.")."<br>
447 "; ?>
448 <br>
449
450 <input type="hidden" name="storynum" value="<?PHP echo"$userinfo[storynum]"; ?>">
451 <input type="hidden" name="ublockon" value="<?PHP echo"$userinfo[ublockon]"; ?>">
452 <input type="hidden" name="ublock" value="<?PHP echo"$userinfo[ublock]"; ?>">
453
454 <input type="hidden" name="uname" value="<?PHP echo"$userinfo[uname]"; ?>">
455 <input type="hidden" name="uid" value="<?PHP echo"$userinfo[uid]"; ?>">
456 <input type="hidden" name="op" value="savetheme">
457 <input type="submit" value="<?php echo translate("Save Changes!"); ?>">
458 </form>
459 <?PHP
460 include ("footer.php");
461 }
462
463
464 function savehome($uid, $uname, $theme, $storynum, $ublockon, $ublock) {
465 global $user, $userinfo;
466 dbconnect();
467 if(isset($ublockon)) $ublockon=1; else $ublockon=0;
468 $ublock = FixQuotes($ublock);
469 mysql_query("LOCK TABLES users WRITE");
470 mysql_query("update users set storynum='$storynum', ublockon='$ublockon', ublock='$ublock' where uid=$uid");
471 getusrinfo($user);
472 mysql_query("UNLOCK TABLES");
473 docookie($userinfo[uid],$userinfo[uname],$userinfo[pass],$userinfo[storynum],$userinfo[umode],$userinfo[uorder],$userinfo[thold],$userinfo[noscore],$userinfo[ublockon],$userinfo[theme],$userinfo[commentmax]);
474 Header("Location: user.php?theme=$theme");
475 }
476
477 function savetheme($uid, $theme) {
478 global $user, $userinfo;
479 dbconnect();
480 mysql_query("update users set theme='$theme' where uid=$uid");
481 getusrinfo($user);
482 docookie($userinfo[uid],$userinfo[uname],$userinfo[pass],$userinfo[storynum],$userinfo[umode],$userinfo[uorder],$userinfo[thold],$userinfo[noscore],$userinfo[ublockon],$userinfo[theme],$userinfo[commentmax]);
483 Header("Location: user.php?theme=$theme");
484 }
485
486 function editcomm() {
487 global $user, $userinfo;
488 include ("header.php");
489 getusrinfo($user);
490 nav();
491 ?>
492 <table cellpadding=8 border=0><tr><td>
493 <form action="user.php" method="post"><font face=Arial,Helvetica>
494 <b><?php echo translate("Display Mode"); ?></b>
495 <select name=umode>
496 <option value="nocomments" <?PHP if ($userinfo[umode] == 'nocomments') { echo "selected"; } ?>><?php echo translate("No Comments"); ?>
497 <option value="nested" <?PHP if ($userinfo[umode] == 'nested') { echo "selected"; } ?>><?php echo translate("Nested"); ?>
498 <option value="flat" <?PHP if ($userinfo[umode] == 'flat') { echo "selected"; } ?>><?php echo translate("Flat"); ?>
499 <option value="threaded" <?PHP if (!isset($userinfo[umode]) || ($userinfo[umode]=="") || $userinfo[umode]=='threaded') { echo "selected"; } ?>><?php echo translate("Threaded"); ?>
500 </select>
501 <br><br>
502 <b><?php echo translate("Sort Order"); ?></b>
503 <select name=uorder>
504 <option value="0" <?PHP if (!$userinfo[uorder]) { echo "selected"; } ?>><?php echo translate("Oldest First"); ?>
505 <option value="1" <?PHP if ($userinfo[uorder]==1) { echo "selected"; } ?>><?php echo translate("Newest First"); ?>
506 <option value="2" <?PHP if ($userinfo[uorder]==2) { echo "selected"; } ?>><?php echo translate("Highest Scores First"); ?>
507 </select>
508 <br><br>
509 <b><?php echo translate("Threshold"); ?></b>
510 <?php echo translate("Comments scored less than this setting will be ignored."); ?><br>
511 <select name=thold>
512 <option value="-1" <?PHP if ($userinfo[thold]==-1) { echo "selected"; } ?>>-1: <?php echo translate("Uncut and Raw"); ?>
513 <option value="0" <?PHP if ($userinfo[thold]==0) { echo "selected"; } ?>>0: <?php echo translate("Almost Everything"); ?>
514 <option value="1" <?PHP if ($userinfo[thold]==1) { echo "selected"; } ?>>1: <?php echo translate("Filter Most Anon"); ?>
515 <option value="2" <?PHP if ($userinfo[thold]==2) { echo "selected"; } ?>>2: <?php echo translate("Score"); ?> +2
516 <option value="3" <?PHP if ($userinfo[thold]==3) { echo "selected"; } ?>>3: <?php echo translate("Score"); ?> +3
517 <option value="4" <?PHP if ($userinfo[thold]==4) { echo "selected"; } ?>>4: <?php echo translate("Score"); ?> +4
518 <option value="5" <?PHP if ($userinfo[thold]==5) { echo "selected"; } ?>>5: <?php echo translate("Score"); ?> +5
519 </select><br>
520 <?php echo translate("Anonymous posts start at 0, logged in posts start at 1. Moderators add and subtract points."); ?>
521 <br><br>
522 <INPUT type=checkbox name=noscore <?PHP if ($userinfo[noscore]==1) { echo "checked"; } ?>><B> <?php echo translate("Do Not Display Scores"); ?></B> <?php echo translate("(Hides score: They still apply, you just don't see them.)"); ?>
523 <br><br>
524 <b><?php echo translate("Max Comment Length"); ?></b> <?php echo translate("(Truncates long comments, and adds a Read More link. Set really big to disable)"); ?><br>
525 <input type="text" name="commentmax" value="<?PHP echo $userinfo[commentmax] ?>" size=11 maxlength=11> bytes (1024 bytes = 1K)
526 <br><br>
527 <input type="hidden" name="uname" value="<?PHP echo"$userinfo[uname]"; ?>">
528 <input type="hidden" name="uid" value="<?PHP echo"$userinfo[uid]"; ?>">
529 <input type="hidden" name="op" value="savecomm">
530 <input type="submit" value="<?php echo translate("Save Changes"); ?>">
531 </form></td></tr></table>
532 <?PHP
533 include ("footer.php");
534 }
535
536 function savecomm($uid, $uname, $umode, $uorder, $thold, $noscore, $commentmax) {
537 global $user, $userinfo;
538 dbconnect();
539 if(isset($noscore)) $noscore=1; else $noscore=0;
540 mysql_query("LOCK TABLES users WRITE");
541 mysql_query("update users set umode='$umode', uorder='$uorder', thold='$thold', noscore='$noscore', commentmax='$commentmax' where uid=$uid");
542 getusrinfo($user);
543 mysql_query("UNLOCK TABLES");
544 docookie($userinfo[uid],$userinfo[uname],$userinfo[pass],$userinfo[storynum],$userinfo[umode],$userinfo[uorder],$userinfo[thold],$userinfo[noscore],$userinfo[ublockon],$userinfo[theme],$userinfo[commentmax]);
545 Header("Location: user.php?"); // question is wierd bugfix
546 }
547
548 switch($op) {
549
550 case "logout":
551 logout();
552 break;
553
554 case "lost_pass":
555 lost_pass();
556 break;
557
558 case "new user":
559 confirmNewUser($uname, $email);
560 break;
561
562 case "finish":
563 finishNewUser($uname, $email);
564 break;
565
566 case "mailpasswd":
567 mail_password($uname, $code);
568 break;
569
570 case "userinfo":
571 dbconnect();
572 userinfo($uname, $bypass);
573 break;
574
575 case "login":
576 login($uname, $pass);
577 break;
578
579 case "dummy":
580 // this is needed to give the cookie a chance to digest
581 include("config.php");
582 Header("Location: user.php");
583 break;
584
585 case "edituser":
586 edituser();
587 break;
588
589 case "saveuser":
590 saveuser($uid, $name, $uname, $email, $femail, $url, $pass, $vpass, $bio);
591 break;
592
593 case "edithome":
594 edithome();
595 break;
596
597 case "chgtheme":
598 chgtheme();
599 break;
600
601 case "savehome":
602 savehome($uid, $uname, $theme, $storynum, $ublockon, $ublock);
603 break;
604
605 case "savetheme":
606 savetheme($uid, $theme);
607 break;
608
609
610 case "editcomm":
611 editcomm();
612 break;
613
614 case "savecomm":
615 savecomm($uid, $uname, $umode, $uorder, $thold, $noscore, $commentmax);
616 break;
617
618 default:
619 main($user);
620 break;
621 }
622 ?>

  ViewVC Help
Powered by ViewVC 1.1.26