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(); }
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(); }