コード例 #1
0
 public function delete()
 {
     global $user, $db;
     if (!$user->isAdmin()) {
         flash('error', gt('You do not have permission to delete user accounts'));
         expHistory::back();
     }
     if (empty($this->params['id'])) {
         flash('error', gt('No user selected.'));
         expHistory::back();
     }
     // remove group memeberships
     $db->delete('groupmembership', 'member_id=' . $this->params['id']);
     // remove user permissions
     $db->delete('userpermission', 'uid=' . $this->params['id']);
     //remove user profiles
     $active_extensions = $db->selectObjects('profileextension', 'active=1');
     foreach ($active_extensions as $pe) {
         if (is_file(BASE . $pe->classfile)) {
             include_once BASE . $pe->classfile;
             $ext = new $pe->classname();
             $db->delete($ext->table, 'user_id=' . $this->params['id']);
         }
     }
     // remove user address
     $address = new address();
     $db->delete($address->table, 'user_id=' . $this->params['id']);
     parent::delete();
 }
コード例 #2
0
 public function delete()
 {
     global $user;
     $count = $this->address->find('count', 'user_id=' . $user->id);
     if ($count > 1) {
         if ($user->isAdmin() || $user->id == $address->user_id) {
             //FIXME $address not set
             $address = new address($this->params['id']);
             if ($address->is_billing) {
                 $billAddress = $this->address->find('first', 'user_id=' . $user->id . " AND id != " . $address->id);
                 $billAddress->is_billing = true;
                 $billAddress->save();
             }
             if ($address->is_shipping) {
                 $shipAddress = $this->address->find('first', 'user_id=' . $user->id . " AND id != " . $address->id);
                 $shipAddress->is_shipping = true;
                 $shipAddress->save();
             }
             parent::delete();
         }
     } else {
         flash("error", gt("You must have at least one address."));
     }
     expHistory::back();
 }