[ Index ]
 

Code source de CMS made simple 1.0.5

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/admin/ -> adduser.php (source)

   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">&nbsp;</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().'">&#171; '.lang('back').'</a></p>';
 207  
 208  include_once ("footer.php");
 209  
 210  # vim:ts=4 sw=4 noet
 211  ?>


Généré le : Tue Apr 3 18:50:37 2007 par Balluche grâce à PHPXref 0.7