NAME

FS::svc_acct_sm - Object methods for svc_acct_sm records


SYNOPSIS

  use FS::svc_acct_sm;
  $record = new FS::svc_acct_sm \%hash;
  $record = new FS::svc_acct_sm { 'column' => 'value' };
  $error = $record->insert;
  $error = $new_record->replace($old_record);
  $error = $record->delete;
  $error = $record->check;
  $error = $record->suspend;
  $error = $record->unsuspend;
  $error = $record->cancel;


DESCRIPTION

An FS::svc_acct object represents a virtual mail alias. FS::svc_acct inherits from FS::Record. The following fields are currently supported:

svcnum - primary key (assigned automatcially for new accounts)
domsvc - svcnum of the virtual domain (see the FS::svc_domain manpage)
domuid - uid of the target account (see the FS::svc_acct manpage)
domuser - virtual username


METHODS

new HASHREF
Creates a new virtual mail alias. To add the virtual mail alias to the database, see insert.

insert
Adds this virtual mail alias to the database. If there is an error, returns the error, otherwise returns false.

The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be defined. An FS::cust_svc record will be created and inserted.

If the configuration values (see the FS::Conf manpage) shellmachine and qmailmachines exist, and domuser is `*' (meaning a catch-all mailbox), the command:

  [ -e $dir/.qmail-$qdomain-default ] || {
    touch $dir/.qmail-$qdomain-default;
    chown $uid:$gid $dir/.qmail-$qdomain-default;
  }

is executed on shellmachine via ssh (see dot-qmail/``EXTENSION ADDRESSES''). This behaviour can be surpressed by setting $FS::svc_acct_sm::nossh_hack true.

delete
Deletes this virtual mail alias from the database. If there is an error, returns the error, otherwise returns false.

The corresponding FS::cust_svc record will be deleted as well.

replace OLD_RECORD
Replaces OLD_RECORD with this one in the database. If there is an error, returns the error, otherwise returns false.

suspend
Just returns false (no error) for now.

Called by the suspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

unsuspend
Just returns false (no error) for now.

Called by the unsuspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

cancel
Just returns false (no error) for now.

Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage).

check
Checks all fields to make sure this is a valid virtual mail alias. If there is an error, returns the error, otherwise returns false. Called by the insert and replace methods.

Sets any fixed values; see the FS::part_svc manpage.


VERSION

$Id: svc_acct_sm.html,v 1.3 2001-04-23 12:40:31 ivan Exp $


BUGS

The remote commands should be configurable.

The $recref stuff in sub check should be cleaned up.


SEE ALSO

the FS::Record manpage, the FS::Conf manpage, the FS::cust_svc manpage, the FS::part_svc manpage, the FS::cust_pkg manpage, the FS::svc_acct manpage, the FS::svc_domain manpage, the Net::SSH manpage, ssh, dot-qmail, schema.html from the base documentation.