[ Index ] |
|
Code source de CMS made simple 1.0.5 |
1 <?php 2 #CMS - CMS Made Simple 3 #(c)2004 by Ted Kulp (wishy@users.sf.net) 4 #This project's homepage is: http://cmsmadesimple.sf.net 5 # 6 #This program is free software; you can redistribute it and/or modify 7 #it under the terms of the GNU General Public License as published by 8 #the Free Software Foundation; either version 2 of the License, or 9 #(at your option) any later version. 10 # 11 #This program is distributed in the hope that it will be useful, 12 #but WITHOUT ANY WARRANTY; without even the implied warranty of 13 #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 #GNU General Public License for more details. 15 #You should have received a copy of the GNU General Public License 16 #along with this program; if not, write to the Free Software 17 #Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 # 19 #$Id: adduser.php 3311 2006-08-15 22:44:20Z wishy $ 20 21 $CMS_ADMIN_PAGE=1; 22 23 require_once ("../include.php"); 24 require_once ("../lib/classes/class.user.inc.php"); 25 26 check_login(); 27 28 $error = ""; 29 30 $user= ""; 31 if (isset($_POST["user"])) $user = cleanValue($_POST["user"]); 32 33 $firstname = ""; 34 if (isset($_POST["firstname"])) $firstname = cleanValue($_POST["firstname"]); 35 36 $lastname = ""; 37 if (isset($_POST["lastname"])) $lastname = cleanValue($_POST["lastname"]); 38 39 $password= ""; 40 if (isset($_POST["password"])) $password = $_POST["password"]; 41 42 $passwordagain= ""; 43 if (isset($_POST["passwordagain"])) $passwordagain = $_POST["passwordagain"]; 44 45 $email = ""; 46 if (isset($_POST["email"])) $email = cleanValue($_POST["email"]); 47 48 $active = 1; 49 if (!isset($_POST["active"]) && isset($_POST["adduser"])) $active = 0; 50 51 $adminaccess = 1; 52 if (!isset($_POST["adminaccess"]) && isset($_POST["adduser"])) $adminaccess = 0; 53 54 if (isset($_POST["cancel"])) 55 { 56 redirect("listusers.php"); 57 return; 58 } 59 60 if (isset($_POST["adduser"])) 61 { 62 $validinfo = true; 63 64 if ($user == "") 65 { 66 $validinfo = false; 67 $error .= "<li>".lang('nofieldgiven', array(lang('username')))."</li>"; 68 } 69 70 if ($password == "") 71 { 72 $validinfo = false; 73 $error .= "<li>".lang('nofieldgiven', array(lang('password')))."</li>"; 74 } 75 else if ($password != $passwordagain) 76 { 77 #We don't want to see this if no password was given 78 $validinfo = false; 79 $error .= "<li>".lang('nopasswordmatch')."</li>"; 80 } 81 82 if ($validinfo) 83 { 84 #$new_user_id = $db->GenID(cms_db_prefix()."users_seq"); 85 #$query = "INSERT INTO ".cms_db_prefix()."users (user_id, username, password, active, create_date, modified_date) VALUES ($new_user_id, ".$db->qstr($user).", ".$db->qstr(md5($password)).", $active, '".$db->DBTimeStamp(time())."', '".$db->DBTimeStamp(time())."')"; 86 #$result = $db->Execute($query); 87 88 $newuser = new User(); 89 $newuser->username = $user; 90 $newuser->SetPassword($password); 91 $newuser->active = $active; 92 $newuser->firstname = $firstname; 93 $newuser->lastname = $lastname; 94 $newuser->email = $email; 95 $newuser->adminaccess = $adminaccess; 96 $newuser->SetPassword($password); 97 98 #Perform the adduser_pre callback 99 foreach($gCms->modules as $key=>$value) 100 { 101 if ($gCms->modules[$key]['installed'] == true && 102 $gCms->modules[$key]['active'] == true) 103 { 104 $gCms->modules[$key]['object']->AddUserPre($newuser); 105 } 106 } 107 108 Events::SendEvent('Core', 'AddUserPre', array('user' => &$newuser)); 109 110 $result = $newuser->save(); 111 112 if ($result) 113 { 114 #Perform the adduser_post callback 115 foreach($gCms->modules as $key=>$value) 116 { 117 if ($gCms->modules[$key]['installed'] == true && 118 $gCms->modules[$key]['active'] == true) 119 { 120 $gCms->modules[$key]['object']->AddUserPost($newuser); 121 } 122 } 123 124 Events::SendEvent('Core', 'AddUserPost', array('user' => &$newuser)); 125 126 # set some default preferences, based on the user creating this user 127 $adminid = get_userid(); 128 $userid = $newuser->id; 129 set_preference($userid, 'wysiwyg', get_preference($adminid, 'wysiwyg')); 130 set_preference($userid, 'default_cms_language', get_preference($adminid, 'default_cms_language')); 131 set_preference($userid, 'admintheme', get_site_preference('logintheme','default')); 132 set_preference($userid, 'bookmarks', get_preference($adminid, 'bookmarks')); 133 set_preference($userid, 'recent', get_preference($adminid, 'recent')); 134 135 audit($newuser->id, $newuser->username, 'Added User'); 136 redirect("listusers.php"); 137 } 138 else 139 { 140 $error .= "<li>".lang('errorinsertinguser')."</li>"; 141 } 142 } 143 } 144 145 $userid = get_userid(); 146 $access = check_permission($userid, 'Add Users'); 147 148 include_once ("header.php"); 149 150 if ($error != "") 151 { 152 echo "<div class=\"pageerrorcontainer\"><ul class=\"error\">".$error."</ul></div>"; 153 } 154 155 if (!$access) { 156 echo "<div class=\"pageerrorcontainer\"><p class=\"pageerror\">".lang('noaccessto', array(lang('adduser')))."</p></div>"; 157 } 158 else { 159 ?> 160 161 <div class="pagecontainer"> 162 <?php echo $themeObject->ShowHeader('adduser'); ?> 163 <form method="post" action="adduser.php"> 164 <div class="pageoverflow"> 165 <p class="pagetext">*<?php echo lang('name')?>:</p> 166 <p class="pageinput"><input type="text" name="user" maxlength="255" value="<?php echo $user?>" /></p> 167 </div> 168 <div class="pageoverflow"> 169 <p class="pagetext">*<?php echo lang('password')?>:</p> 170 <p class="pageinput"><input type="password" name="password" maxlength="25" value="" /></p> 171 </div> 172 <div class="pageoverflow"> 173 <p class="pagetext">*<?php echo lang('passwordagain')?>:</p> 174 <p class="pageinput"><input type="password" name="passwordagain" maxlength="25" value="" /></p> 175 </div> 176 <div class="pageoverflow"> 177 <p class="pagetext"><?php echo lang('firstname')?>:</p> 178 <p class="pageinput"><input type="text" name="firstname" maxlength="50" value="<?php echo $firstname ?>" /></p> 179 </div> 180 <div class="pageoverflow"> 181 <p class="pagetext"><?php echo lang('lastname')?>:</p> 182 <p class="pageinput"><input type="text" name="lastname" maxlength="50" value="<?php echo $lastname ?>" /></p> 183 </div> 184 <div class="pageoverflow"> 185 <p class="pagetext"><?php echo lang('email')?>:</p> 186 <p class="pageinput"><input type="text" name="email" maxlength="255" value="<?php echo $email ?>" /></p> 187 </div> 188 <div class="pageoverflow"> 189 <p class="pagetext"><?php echo lang('active')?>:</p> 190 <p class="pageinput"><input class="pagecheckbox" type="checkbox" name="active" <?php echo ($active == 1?"checked=\"checked\"":"")?> /></p> 191 </div> 192 <div class="pageoverflow"> 193 <p class="pagetext"> </p> 194 <p class="pageinput"> 195 <input type="hidden" name="adduser" value="true" /> 196 <input class="pagebutton" onmouseover="this.className='pagebuttonhover'" onmouseout="this.className='pagebutton'" type="submit" value="<?php echo lang('submit')?>" /> 197 <input class="pagebutton" onmouseover="this.className='pagebuttonhover'" onmouseout="this.className='pagebutton'" type="submit" name="cancel" value="<?php echo lang('cancel')?>" /> 198 </p> 199 </div> 200 </form> 201 </div> 202 203 <?php 204 } 205 206 echo '<p class="pageback"><a class="pageback" href="'.$themeObject->BackUrl().'">« '.lang('back').'</a></p>'; 207 208 include_once ("footer.php"); 209 210 # vim:ts=4 sw=4 noet 211 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Tue Apr 3 18:50:37 2007 | par Balluche grâce à PHPXref 0.7 |