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 FS::svc_domain)
domuid - uid of the target account (see FS::svc_acct)
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 FS::cust_svc) should be defined. An FS::cust_svc record will be created and inserted.

If the configuration values (see FS::Conf) 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). 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 FS::cust_pkg).

unsuspend

Just returns false (no error) for now.

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

cancel

Just returns false (no error) for now.

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

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 FS::part_svc.


VERSION

$Id: svc_acct_sm.html,v 1.1 1999-08-04 12:13:27 ivan Exp $


BUGS

The remote commands should be configurable.

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


SEE ALSO

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