190 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
		
		
			
		
	
	
			190 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
| 
								 | 
							
								<?php
							 | 
						||
| 
								 | 
							
								/*
							 | 
						||
| 
								 | 
							
								$Id$
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  This code is part of LDAP Account Manager (http://www.sourceforge.net/projects/lam)
							 | 
						||
| 
								 | 
							
								  Copyright (C) 2003  Roland Gruber
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  This program is free software; you can redistribute it and/or modify
							 | 
						||
| 
								 | 
							
								  it under the terms of the GNU General Public License as published by
							 | 
						||
| 
								 | 
							
								  the Free Software Foundation; either version 2 of the License, or
							 | 
						||
| 
								 | 
							
								  (at your option) any later version.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  This program is distributed in the hope that it will be useful,
							 | 
						||
| 
								 | 
							
								  but WITHOUT ANY WARRANTY; without even the implied warranty of
							 | 
						||
| 
								 | 
							
								  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
							 | 
						||
| 
								 | 
							
								  GNU General Public License for more details.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  You should have received a copy of the GNU General Public License
							 | 
						||
| 
								 | 
							
								  along with this program; if not, write to the Free Software
							 | 
						||
| 
								 | 
							
								  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  Start page of configuration wizard.
							 | 
						||
| 
								 | 
							
								*/
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								include_once('../../lib/config.inc');
							 | 
						||
| 
								 | 
							
								include_once('../../lib/status.inc');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// start session
							 | 
						||
| 
								 | 
							
								session_save_path("../../sess");
							 | 
						||
| 
								 | 
							
								@session_start();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								setlanguage();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// check if user clicked on buttons
							 | 
						||
| 
								 | 
							
								if ($_POST['submit'] || $_POST['cancel']) {
							 | 
						||
| 
								 | 
							
									unset($error);
							 | 
						||
| 
								 | 
							
									if ($_POST['cancel']) {
							 | 
						||
| 
								 | 
							
										metarefresh('../config/conflogin.php');
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									else {
							 | 
						||
| 
								 | 
							
										// check if master password is correct
							 | 
						||
| 
								 | 
							
										$cfg = new CfgMain();
							 | 
						||
| 
								 | 
							
										if ($cfg->password != $_POST['masterpwd']) {
							 | 
						||
| 
								 | 
							
											$error = _("Master password is wrong!");
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
										// check if passwords are equal and not empty
							 | 
						||
| 
								 | 
							
										elseif ($_POST['passwd1'] && ($_POST['passwd1'] != "") && ($_POST['passwd1'] == $_POST['passwd2'])) {
							 | 
						||
| 
								 | 
							
											// check if profile name is valid
							 | 
						||
| 
								 | 
							
											if (eregi("^[a-z0-9\-_]+$", $_POST['profname']) && !in_array($_POST['profname'], getConfigProfiles())) {
							 | 
						||
| 
								 | 
							
												// create new profile file
							 | 
						||
| 
								 | 
							
												@copy("../../config/lam.conf_sample", "../../config/" . $_POST['profname'] . ".conf");
							 | 
						||
| 
								 | 
							
												@chmod ("../../config/" . $_POST['profname'] . ".conf", 0600);
							 | 
						||
| 
								 | 
							
												$file = is_file("../../config/" . $_POST['profname'] . ".conf");
							 | 
						||
| 
								 | 
							
												if ($file) {
							 | 
						||
| 
								 | 
							
													// load as config and write new password
							 | 
						||
| 
								 | 
							
													$conf = new Config($_POST['profname']);
							 | 
						||
| 
								 | 
							
													$conf->Passwd = $_POST['passwd1'];
							 | 
						||
| 
								 | 
							
													$conf->save();
							 | 
						||
| 
								 | 
							
													$_SESSION['confwiz_config'] = $conf;
							 | 
						||
| 
								 | 
							
													$_SESSION['confwiz_masterpwd'] = $_POST['masterpwd'];
							 | 
						||
| 
								 | 
							
												}
							 | 
						||
| 
								 | 
							
												else $error = _("Unable to create new profile!");
							 | 
						||
| 
								 | 
							
											}
							 | 
						||
| 
								 | 
							
											else $error = _("Profile name is invalid!");
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
										else $error = _("Profile passwords are different or empty!");
							 | 
						||
| 
								 | 
							
										// print error message if needed
							 | 
						||
| 
								 | 
							
										if ($error) {
							 | 
						||
| 
								 | 
							
											echo $_SESSION['header'];
							 | 
						||
| 
								 | 
							
											echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"../../style/layout.css\">\n";
							 | 
						||
| 
								 | 
							
											echo "<title>\n";
							 | 
						||
| 
								 | 
							
												echo _("Configuration wizard");
							 | 
						||
| 
								 | 
							
											echo "</title>\n";
							 | 
						||
| 
								 | 
							
											echo "</head><body>\n";
							 | 
						||
| 
								 | 
							
											StatusMessage("ERROR", $error, "");
							 | 
						||
| 
								 | 
							
											echo "<p><br><br><a href=\"../config/conflogin.php\">" . _("Back to profile login") . "</a></p>\n";
							 | 
						||
| 
								 | 
							
											echo "</body></html>\n";
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
										// if all ok, go to next page
							 | 
						||
| 
								 | 
							
										else {
							 | 
						||
| 
								 | 
							
											metarefresh('server.php');
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									exit;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// remove variables of older wizard calls
							 | 
						||
| 
								 | 
							
								unset($_SESSION['conwiz_masterpwd']);
							 | 
						||
| 
								 | 
							
								unset($_SESSION['confwiz_config']);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								echo $_SESSION['header'];
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									echo "<title>\n";
							 | 
						||
| 
								 | 
							
										echo _("Configuration wizard");
							 | 
						||
| 
								 | 
							
									echo "</title>\n";
							 | 
						||
| 
								 | 
							
									echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"../../style/layout.css\">\n";
							 | 
						||
| 
								 | 
							
								echo "</head>\n";
							 | 
						||
| 
								 | 
							
								echo "<body>\n";
							 | 
						||
| 
								 | 
							
									echo "<p align=\"center\"><a href=\"http://lam.sf.net\" target=\"_blank\">\n";
							 | 
						||
| 
								 | 
							
									echo "<img src=\"../../graphics/banner.jpg\" border=1 alt=\"LDAP Account Manager\"></a>\n";
							 | 
						||
| 
								 | 
							
									echo "</p>\n";
							 | 
						||
| 
								 | 
							
									echo "<hr>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// formular
							 | 
						||
| 
								 | 
							
								echo "<form action=\"start.php\" method=\"post\">\n";
							 | 
						||
| 
								 | 
							
									echo "<h2 align=\"center\">" . _("Welcome to LAM Configuration wizard.") . "</h2>\n";
							 | 
						||
| 
								 | 
							
									echo "<p align=\"center\">\n";
							 | 
						||
| 
								 | 
							
										echo "This druid will help you to create a configuration file for LAM and set up LDAP.\n";
							 | 
						||
| 
								 | 
							
									echo "</p>\n";
							 | 
						||
| 
								 | 
							
									echo "<br><br>\n";
							 | 
						||
| 
								 | 
							
									echo "<table border=0>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									// profile name
							 | 
						||
| 
								 | 
							
									echo "<tr>\n";
							 | 
						||
| 
								 | 
							
										echo "<td colspan=2>\n";
							 | 
						||
| 
								 | 
							
											echo _("Please enter a name for the new profile. The name may contain letters, digits and -_.") . "\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
									echo "</tr>\n";
							 | 
						||
| 
								 | 
							
									echo "<tr><td colspan=2> </td></tr>\n";
							 | 
						||
| 
								 | 
							
									echo "<tr>\n";
							 | 
						||
| 
								 | 
							
										echo "<td>\n";
							 | 
						||
| 
								 | 
							
											echo "<b>" . _("Profile name") . ":</b>\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
										echo "<td>\n";
							 | 
						||
| 
								 | 
							
											echo "<input type=\"text\" name=\"profname\">\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
									echo "</tr>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									echo "<tr><td colspan=2> </td></tr>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									// password
							 | 
						||
| 
								 | 
							
									echo "<tr>\n";
							 | 
						||
| 
								 | 
							
										echo "<td colspan=2>\n";
							 | 
						||
| 
								 | 
							
											echo _("Configuration profiles are protected with a password from unauthorised access. Please enter it here.") . "\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
									echo "</tr>\n";
							 | 
						||
| 
								 | 
							
									echo "<tr><td colspan=2> </td></tr>\n";
							 | 
						||
| 
								 | 
							
									echo "<tr>\n";
							 | 
						||
| 
								 | 
							
										echo "<td>\n";
							 | 
						||
| 
								 | 
							
											echo "<b>" . _("Password") . ":</b>\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
										echo "<td>\n";
							 | 
						||
| 
								 | 
							
											echo "<input type=\"password\" name=\"passwd1\">\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
									echo "</tr>\n";
							 | 
						||
| 
								 | 
							
									echo "<tr>\n";
							 | 
						||
| 
								 | 
							
										echo "<td>\n";
							 | 
						||
| 
								 | 
							
											echo "<b>" . _("Reenter Password") . ":</b>\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
										echo "<td>\n";
							 | 
						||
| 
								 | 
							
											echo "<input type=\"password\" name=\"passwd2\">\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
									echo "</tr>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									echo "<tr><td colspan=2> </td></tr>\n";
							 | 
						||
| 
								 | 
							
									echo "<tr><td colspan=2> </td></tr>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									// master password
							 | 
						||
| 
								 | 
							
									echo "<tr>\n";
							 | 
						||
| 
								 | 
							
										echo "<td colspan=2>\n";
							 | 
						||
| 
								 | 
							
											echo _("Please enter your configuration master password. This password is \"lam\" by default.") . "\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
									echo "</tr>\n";
							 | 
						||
| 
								 | 
							
									echo "<tr><td colspan=2> </td></tr>\n";
							 | 
						||
| 
								 | 
							
									echo "<tr>\n";
							 | 
						||
| 
								 | 
							
										echo "<td>\n";
							 | 
						||
| 
								 | 
							
											echo "<b>" . _("Master password") . ":</b>\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
										echo "<td>\n";
							 | 
						||
| 
								 | 
							
											echo "<input type=\"password\" name=\"masterpwd\">\n";
							 | 
						||
| 
								 | 
							
										echo "</td>\n";
							 | 
						||
| 
								 | 
							
									echo "</tr>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									echo "</table>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									echo "<p><br></p>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// next/cancel button
							 | 
						||
| 
								 | 
							
									echo "<p>\n";
							 | 
						||
| 
								 | 
							
										echo "<input type=\"submit\" name=\"submit\" value=\"" . _("Next") . "\">\n";
							 | 
						||
| 
								 | 
							
										echo "<input type=\"submit\" name=\"cancel\" value=\"" . _("Cancel") . "\">\n";
							 | 
						||
| 
								 | 
							
									echo "</p>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								echo "</form>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								echo "</body>\n</html>\n";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								?>
							 |