Subversion-Projekte lars-tiefland.content-management

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?
2
	$self=basename($PHP_SELF);
3
	$DB="admintool.ftpuser";
4
	define ("modul_name", "domain_admin");
5
	define ("tool_name", "ftp_user");
6
	require_once "../Online-Shop/connect2.php";
7
	$error=false;
8
 
9
	mysql_select_db ("content_management");
10
 
11
	function generate()
12
	{
13
		$filename = "/etc/proftpd/passwd";
14
		$fd = fopen ($filename, "w+");
15
 
16
			$query="SELECT * FROM FTP_user order by reseller,username";
17
			$result = mysql_query ($query) or die (mysql_errno().": ".mysql_error());
18
			while ($zeile=mysql_fetch_array($result))
19
	        {
20
				fwrite ($fd, "$zeile[username]:$zeile[passwd]:$zeile[uid]:$zeile[gid]:$zeile[comment]:$zeile[home]:$zeile[shell]\n");
21
			}
22
 
23
		fclose ($fd);
24
	}
25
 
26
	if ($action == "update")
27
	{
28
		if (!$user)
29
		{
30
			$query="insert into $DB (username) values ('$username')";
31
			$result = mysql_query ($query);
32
			if (mysql_error())
33
			{
34
				$error = true;
35
				$error_code='duplicate';
36
			}
37
			else
38
			{
39
				$user = $username;
40
			}
41
		}
42
 
43
		if (crypt($passwd,'00') == crypt($passwd_wdh,'00'))
44
		{
45
			unset($HTTP_POST_VARS[passwd_wdh]);
46
		}
47
		else
48
		{
49
			$error = true;
50
			$action = "edit";
51
		}
52
 
53
		// überflüssige Variablen entfernen und Spezialvariablen behandeln
54
			unset($HTTP_POST_VARS[action]);
55
			unset($HTTP_POST_VARS[user]);
56
 
57
			if ($passwd)
58
			{
59
				srand ((double)microtime()*1000000);
60
				$salt = chr(rand(0,255)).chr(rand(0,255));
61
 
62
				$HTTP_POST_VARS[passwd] = crypt($HTTP_POST_VARS[passwd],$salt);
63
			}
64
			else
65
			{
66
				unset($HTTP_POST_VARS[passwd]);
67
			}
68
 
69
		if ($error == false)
70
		{
71
			// Kommando generieren
72
			$names=array();
73
			foreach(array_keys($HTTP_POST_VARS) as $elem)
74
			{
75
				if (is_array($HTTP_POST_VARS[$elem]))
76
				{
77
					$HTTP_POST_VARS[$elem] = implode($HTTP_POST_VARS[$elem],'');
78
				}
79
				array_push($names,"$elem='$HTTP_POST_VARS[$elem]'");
80
			}
81
			$query="update $DB set ".join($names,', ')." where username = '$user'";
82
			$result = mysql_query ($query) or die (mysql_errno().": ".mysql_error());
83
			unset($action);
84
		}
85
		//generate();
86
	}
87
 
88
	if ($action == "delete")
89
	{
90
		// Kommando generieren
91
		if ($users)
92
		{
93
			foreach(array_keys($users) as $elem) { $users[$elem] = "'".$users[$elem]."'"; }
94
			$cond = implode($users," or username = ");
95
 
96
			$query="delete from $DB where username = $cond";
97
			$result = mysql_query ($query) or die (mysql_errno().": ".mysql_error());
98
 
99
			unset($action);
100
			//generate();
101
		}
102
	}
103
 
104
 
105
	if (!$action)
106
	{
107
		$action="select_edit";
108
	}
109
	if (!$sort)
110
	{
111
		$sort="username";
112
	}
113
?>
114
<html>
115
<head>
116
<title>Content-Management-System - Webagentur Niewerth</title>
117
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
118
<link rel=stylesheet type="text/css" href="redaktion.css">
119
<style type="text/css"><? require_once "redaktion.css"; ?></style>
120
<script language="JavaScript">
121
<!--
122
function MM_swapImgRestore() { //v3.0
123
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
124
}
125
 
126
function MM_preloadImages() { //v3.0
127
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
128
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
129
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
130
}
131
 
132
function MM_swapImage() { //v3.0
133
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
134
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
135
}
136
 
137
function MM_findObj(n, d) { //v4.01
138
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
139
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
140
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
141
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
142
  if(!x && d.getElementById) x=d.getElementById(n); return x;
143
}
144
//-->
145
</script>
146
<meta name="description" content="Redaktionssystem">
147
<meta name="author" content="Webagentur Niewerth">
148
<meta name="robots" content="noindex">
149
</head>
150
 
151
<body bgcolor="#<? echo $webs[bgcolor_seite]; ?>" leftmargin="20" topmargin="10" marginwidth="20" marginheight="10" text="#000000">
152
<form method="post" action="#" name="formname" enctype="multipart/form-data">
153
  <table width="662" border="0" cellspacing="0" cellpadding="0">
154
    <tr valign="top">
155
      <td width="585">
156
<!--  Auswahl Löschen START  -->
157
<?
158
        if ($action=="delete")
159
        {
160
    		    $query="SELECT * FROM $DB where resellerID = '$webs[ID]' ";
161
                $query=$query."order by $sort";
162
                $result = mysql_query ($query) or die (mysql_errno().": ".mysql_error());
163
				$count = mysql_num_rows($result);
164
                if (mysql_num_rows($result) == 0)
165
                {
166
?>
167
<p class="error">Es sind keine Daten eingetragen !</p>
168
<p></p>
169
<?
170
                }
171
                else
172
                {
173
?>
174
        <table width="100%" border="1" cellspacing="0" cellpadding="3" bordercolorlight="#FFFFFF" bordercolordark="#999999">
175
          <tr bgcolor="#<? echo $webs[bgcolor_links] ?>">
176
            <td colspan="3" class="headline"><font color="#<? echo $webs[font_color_links] ?>"><b>FTP-User:
177
              L&ouml;schen - <? echo $count ?> Eintr&auml;ge <br>
178
              <a href="#A">A</a> | <a href="#B">B</a> | <a href="#C">C</a> | <a href="#D">D</a>
179
              | <a href="#E">E</a> | <a href="#F">F</a> | <a href="#G">G</a> | <a href="#H">H</a>
180
              | <a href="#I">&nbsp;I&nbsp;</a> | <a href="#J">J</a> | <a href="#K">K</a> | <a href="#L">L</a>
181
              | <a href="#M">M</a> | <a href="#N">N</a> | <a href="#O">O</a> | <a href="#P">P</a>
182
              | <a href="#Q">Q</a> | <a href="#R">R</a> | <a href="#S">S</a> | <a href="#T">T</a>
183
              | <a href="#U">U</a> | <a href="#V">V</a> | <a href="#W">W</a> | <a href="#X">X</a>
184
              | <a href="#Y">Y</a> | <a href="#Z">Z</a>
185
              </b></font></td>
186
          </tr>
187
          <?
188
        while ($zeile=mysql_fetch_array($result))
189
        {
190
?>
191
                          <?
192
	$char_buffer=chr(ord(substr($zeile[username],0,1)) & 223);
193
	if ($char_buffer != $char_buffer2)
194
	{
195
 
196
		?>
197
          <tr>
198
            <td colspan="4"> <b> <a name="<? echo $char_buffer ?>">
199
              <? echo $char_buffer ?>
200
              </a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#top">nach
201
              oben</a></b> </td>
202
          </tr>
203
            <?
204
	}
205
	$char_buffer2 = $char_buffer;
206
?>
207
          <tr bgcolor="#<? echo $webs[bgcolor_rechts] ?>">
208
            <td width="60%"><a href="<? echo $self?>?action=edit&username=<? echo $zeile[username]; ?>">
209
              <font color="#<? echo $webs[font_color_rechts] ?>"><? echo $zeile[username]?></font></a></td>
210
            <td width="35%">
211
              <? echo $zeile[comment] ?><? if (!$zeile[comment]) { ?>&nbsp;<? } ?></td>
212
            <td width="5%" align="center">
213
              <input type="checkbox" name="users[]" value="<?  echo $zeile[username] ?>">
214
            </td>
215
          </tr>
216
          <?
217
        }
218
?>
219
          <tr bgcolor="#<? echo $webs[bgcolor_links] ?>">
220
            <td colspan="3" align="right">
221
              <input type="hidden" name="action" value='delete'>
222
              <input type="submit" value="LÖSCHEN">
223
              <input type="reset" value="Zur&uuml;cksetzen">
224
            </td>
225
          </tr>
226
        </table>
227
        <?
228
                }
229
?>
230
        <?
231
         }
232
?>
233
        <!--  Auswahl Löschen ENDE  -->
234
        <!--  Auswahl SELECT_EDIT START  -->
235
        <?
236
 
237
  if ($action=="select_edit")
238
        {
239
    	$query="SELECT * FROM $DB where resellerID = '$webs[ID]' ";
240
        $query=$query."order by $sort";
241
 
242
        $result = mysql_query ($query) or die (mysql_errno().": ".mysql_error().$query);
243
		$count = mysql_num_rows($result);
244
        if (mysql_num_rows($result) == 0)
245
        {
246
        ?>
247
        <p class="error">Es sind keine
248
            Daten eingetragen !</p>
249
          <p></p>
250
        <?
251
        }
252
        else
253
        {
254
        ?>
255
        <table width="100%" border="1" cellspacing="0" cellpadding="3" bordercolorlight="#FFFFFF" bordercolordark="#999999">
256
          <tr bgcolor="#<? echo $webs[bgcolor_links] ?>">
257
            <td class="headline" colspan="3"><font color="#<? echo $webs[font_color_links] ?>"><b>FTP-User: Bearbeiten - <? echo $count ?> Eintr&auml;ge
258
			<br>
259
              <a href="#A">A</a> | <a href="#B">B</a> | <a href="#C">C</a> | <a href="#D">D</a>
260
              | <a href="#E">E</a> | <a href="#F">F</a> | <a href="#G">G</a> | <a href="#H">H</a>
261
              | <a href="#I">&nbsp;I&nbsp;</a> | <a href="#J">J</a> | <a href="#K">K</a> | <a href="#L">L</a>
262
              | <a href="#M">M</a> | <a href="#N">N</a> | <a href="#O">O</a> | <a href="#P">P</a>
263
              | <a href="#Q">Q</a> | <a href="#R">R</a> | <a href="#S">S</a> | <a href="#T">T</a>
264
              | <a href="#U">U</a> | <a href="#V">V</a> | <a href="#W">W</a> | <a href="#X">X</a>
265
              | <a href="#Y">Y</a> | <a href="#Z">Z</a>
266
			</b></font></td>
267
          </tr>
268
          <?
269
        while ($zeile=mysql_fetch_array($result))
270
        {
271
?>
272
<?
273
	$char_buffer=chr(ord(substr($zeile[username],0,1)) & 223);
274
	if ($char_buffer != $char_buffer2)
275
	{
276
 
277
		?>
278
          <tr>
279
            <td colspan="4"> <b> <a name="<? echo $char_buffer ?>">
280
              <? echo $char_buffer ?>
281
              </a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#top">nach
282
              oben</a></b> </td>
283
          </tr>
284
            <?
285
	}
286
	$char_buffer2 = $char_buffer;
287
?>
288
          <tr bgcolor="#<? echo $webs[bgcolor_rechts] ?>">
289
            <td width="65%"><a href="<? echo $self?>?action=edit&username=<? echo $zeile[username]; ?>">
290
              <font color="#<? echo $webs[font_color_rechts] ?>"><? echo $zeile[username]?></font></a></td>
291
            <td width="35%">
292
				<font color="#<? echo $webs[font_color_rechts] ?>"><? echo $zeile[comment] ?><? if (!$zeile[comment]) { ?>&nbsp;<? } ?></font>
293
			</td>
294
          </tr>
295
          <?
296
        }
297
?>
298
          <tr bgcolor="#<? echo $webs[bgcolor_links] ?>">
299
            <td colspan="3">&nbsp;</td>
300
          </tr>
301
        </table>
302
 <?
303
        }
304
?>
305
        <?
306
         }
307
?>
308
<!--  Auswahl SELECT_EDIT ENDE  -->
309
 
310
<?
311
        if ($action=="edit")
312
        {
313
                if ($username)
314
                {
315
						$query="SELECT * FROM $DB where username = '$username'";
316
                        $result = mysql_query ($query) or die (mysql_errno().": ".mysql_error()."<hr>$query<hr>");
317
                        $zeile=mysql_fetch_array($result);
318
                }
319
        ?>
320
 
321
        <table width="100%" border="1" cellspacing="0" cellpadding="3" bordercolorlight="#FFFFFF" bordercolordark="#999999">
322
          <tr bgcolor="#<? echo $webs[bgcolor_links] ?>">
323
            <td colspan="2" class="headline"><font color="#<? echo $webs[font_color_links] ?>"><b>FTP-User:
324
              <?
325
                                        if ($user)
326
                                        {
327
                                         ?>
328
              Bearbeiten
329
              <?
330
                                        }
331
                                        else
332
                                        {
333
                                         ?>
334
              Neueintrag
335
              <?
336
                                        }
337
                                ?></b></font>
338
            </td>
339
          </tr>
340
          <?
341
	$Feld="username";
342
	if (isset($user_rechte[modul_name][tool_name][$Feld]))
343
	{
344
?>
345
          <tr>
346
            <td bgcolor="#<? echo $webs[bgcolor_links] ?>" valign="middle" width="21%">
347
              <font color="#<? echo $webs[font_color_links] ?>"><b>
348
              <?
349
				if ($web_rechte[modul_name][tool_name][$Feld])
350
				{
351
					echo $web_rechte[modul_name][tool_name][$Feld];
352
				}
353
				else
354
				{
355
			?>
356
              Username
357
              <?
358
				}
359
			?>
360
              </b></font> </td>
361
            <td bgcolor="#<? echo $webs[bgcolor_rechts] ?>" width="79%">
362
                <input type="text" name="<? echo $Feld ?>" value="<? echo $zeile[$Feld] ?>" onChange="document.formname[6].value=this.value;">
363
                <? if ($error_code == 'duplicate') { ?>
364
              <b><font color="#FF0000">Dieser Username ist bereits vergeben!</font></b>
365
              <? } ?>
366
              </td>
367
          </tr>
368
          <?
369
	}
370
?>
371
          <?
372
	$Feld="passwd";
373
	if (isset($user_rechte[modul_name][tool_name][$Feld]))
374
	{
375
?>
376
          <tr>
377
            <td bgcolor="#<? echo $webs[bgcolor_links] ?>" valign="top" width="21%">
378
              <font color="#<? echo $webs[font_color_links] ?>"><b>
379
              <?
380
				if ($web_rechte[modul_name][tool_name][$Feld])
381
				{
382
					echo $web_rechte[modul_name][tool_name][$Feld];
383
				}
384
				else
385
				{
386
			?>
387
              Passwort
388
              <?
389
				}
390
			?>
391
              </b></font> </td>
392
            <td bgcolor="#<? echo $webs[bgcolor_rechts] ?>" width="79%" class="headline">
393
              <table width="100%" border="0" cellspacing="0" cellpadding="0">
394
                <tr>
395
                  <td>
396
				  	<input type="password" name="passwd" value="<? echo $passwd ?>">
397
                    <input type="password" name="passwd_wdh" value="<? echo $passwd_wdh ?>">
398
                  </td>
399
                  <? if ($passwd != $passwd_wdh) { ?>
400
				  <td class="headline" width="100%">
401
                    <font color="#FF0000">Passwort und Passwortwiederholung<br>
402
                    stimmen nicht &uuml;berein!</font></td>
403
                    <? } else { ?>
404
                  <td class="headline" width="100%" valign="bottom">(Wiederholung)</td>
405
                  <? } ?>
406
                </tr>
407
              </table>
408
             </td>
409
          </tr>
410
          <?
411
	}
412
?>
413
          <?
414
	$Feld="gruppen";
415
	if (isset($user_rechte[modul_name][tool_name][$Feld]))
416
	{
417
?>
418
          <tr>
419
            <td bgcolor="#<? echo $webs[bgcolor_links] ?>" valign="top" width="21%">
420
              <font color="#<? echo $webs[font_color_links] ?>"><b>
421
              <?
422
				if ($web_rechte[modul_name][tool_name][$Feld])
423
				{
424
					echo $web_rechte[modul_name][tool_name][$Feld];
425
				}
426
				else
427
				{
428
			?>
429
              Gruppen
430
              <?
431
				}
432
			?>
433
              </b></font> </td>
434
<?
435
	if (!$zeile[uid]) {$zeile[uid] = 40;}
436
	//if (!$zeile[gid]) {$zeile[gid] = 100;}
437
	if (!$zeile[shell]) {$zeile[shell] = '/bin/false';}
438
?>
439
            <td bgcolor="#<? echo $webs[bgcolor_rechts] ?>" width="79%" class="headline">
440
              uid:
441
              <input type="text" name="uid" value="<? echo $zeile[uid] ?>" size="5" >
442
<!--
443
              <br>
444
              gid:
445
              <input type="text" name="gid" value="<? echo $zeile[gid] ?>" size="5" ></td>
446
-->
447
          </tr>
448
          <?
449
	}
450
?>
451
          <?
452
	$Feld="comment";
453
	if (isset($user_rechte[modul_name][tool_name][$Feld]))
454
	{
455
?>
456
          <tr>
457
            <td bgcolor="#<? echo $webs[bgcolor_links] ?>" valign="middle" width="21%">
458
              <font color="#<? echo $webs[font_color_links] ?>"><b>
459
              <?
460
				if ($web_rechte[modul_name][tool_name][$Feld])
461
				{
462
					echo $web_rechte[modul_name][tool_name][$Feld];
463
				}
464
				else
465
				{
466
			?>
467
              Bemerkung
468
              <?
469
				}
470
			?>
471
              </b></font> </td>
472
            <td bgcolor="#<? echo $webs[bgcolor_rechts] ?>" width="79%">
473
              <input type="text" name="<? echo $Feld ?>" value="<? echo $zeile[$Feld] ?>">
474
            </td>
475
          </tr>
476
          <?
477
	}
478
?>
479
          <?
480
	$Feld="home";
481
	if (isset($user_rechte[modul_name][tool_name][$Feld]))
482
	{
483
?>
484
          <tr>
485
            <td bgcolor="#<? echo $webs[bgcolor_links] ?>" valign="middle" width="21%">
486
              <font color="#<? echo $webs[font_color_links] ?>"><b>
487
              <?
488
				if ($web_rechte[modul_name][tool_name][$Feld])
489
				{
490
					echo $web_rechte[modul_name][tool_name][$Feld];
491
				}
492
				else
493
				{
494
			?>
495
              home
496
              <?
497
				}
498
			?>
499
              </b></font> </td>
500
            <td bgcolor="#<? echo $webs[bgcolor_rechts] ?>" width="79%" class="headline">
501
              <? echo $web_rechte[modul_name][tool_name][home_base]; ?>
502
              <input type="hidden" name="<? echo $Feld ?>[0]" value="<? echo $web_rechte[modul_name][tool_name][home_base]; ?>">
503
				<? $zeile[$Feld] = ereg_replace ($web_rechte[modul_name][tool_name][home_base], "", $zeile[$Feld]); ?>
504
			  <input type="text" name="<? echo $Feld ?>[1]" value="<? echo $zeile[$Feld] ?>">
505
            </td>
506
          </tr>
507
          <?
508
	}
509
?>
510
          <?
511
	$Feld="shell";
512
	if (isset($user_rechte[modul_name][tool_name][$Feld]))
513
	{
514
?>
515
          <tr>
516
            <td bgcolor="#<? echo $webs[bgcolor_links] ?>" valign="middle" width="21%">
517
              <font color="#<? echo $webs[font_color_links] ?>"><b>
518
              <?
519
				if ($web_rechte[modul_name][tool_name][$Feld])
520
				{
521
					echo $web_rechte[modul_name][tool_name][$Feld];
522
				}
523
				else
524
				{
525
			?>
526
              shell
527
              <?
528
				}
529
			?>
530
              </b></font> </td>
531
            <td bgcolor="#<? echo $webs[bgcolor_rechts] ?>" width="79%">
532
              <input type="text" name="<? echo $Feld ?>" value="<? echo $zeile[$Feld] ?>">
533
            </td>
534
          </tr>
535
          <?
536
	}
537
?>
538
          <tr bgcolor="#<? echo $webs[bgcolor_links] ?>">
539
            <td align="right" colspan="2">
540
              <input type="hidden" name="resellerID" value="<? echo $webs[ID] ?>" size="3">
541
              <input type="hidden" name="user" value="<? echo $zeile[username] ?>">
542
              <input type="hidden" name="action" value="update">
543
              <input type="submit" value="OK">
544
              <input type="reset" value="Zur&uuml;cksetzen">
545
            </td>
546
          </tr>
547
        </table>
548
        <?
549
        }
550
?> </td>
551
      <td width="77" align="right">
552
        <table width="67" border="1" cellspacing="0" cellpadding="0" bordercolorlight="#FFFFFF" bordercolordark="#999999">
553
                  <tr>
554
            <td class="frame"><a href="<? echo $self ?>?action=edit" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image5','','../images/navigation/bt_neu_f2.gif',1)"><img name="Image5" border="0" src="../images/navigation/bt_neu.gif" width="67" height="40"></a></td>
555
                  </tr>
556
                  <tr>
557
            <td class="frame"><a href="<? echo $self ?>?action=select_edit" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image6','','../images/navigation/bt_bearbeiten_f2.gif',1)"><img name="Image6" border="0" src="../images/navigation/bt_bearbeiten.gif" width="67" height="40"></a></td>
558
                  </tr>
559
                  <tr>
560
            <td class="frame"><a href="<? echo $self ?>?action=delete" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image7','','../images/navigation/bt_delete_f2.gif',1)"><img name="Image7" border="0" src="../images/navigation/bt_delete.gif" width="67" height="40"></a></td>
561
                  </tr>
562
                </table>
563
      </td>
564
</tr>
565
</table>
566
</form>
567
</body>