Qmail-Mysql

 view release on metacpan or  search on metacpan

Mysql.pm  view on Meta::CPAN

						(username,virtual_username,virtual_host) VALUES
						($mbox,$vuser,$vhost)|;
	$self->_do($sql);
}

sub _table_mailbox_add {
	my $self	= shift;
	my $mbox	= $self->_q(shift);
	my $qusr	= $self->_q(shift);
	my $qgrp	= $self->_q(shift);
	my $mbox_p	= $self->_q(shift);
	my $pass	= $self->_q(shift);

	my $pass_t	= $self->_q($self->{password_type});
	my $sql		= qq|insert into mailbox 
						(username,uid,gid,home,password,password_type) VALUES
						($mbox,$qusr,$qgrp,$mbox_p,$pass,$pass_t)|;
	$self->_do($sql);
}

sub _mbox {
	my $self 	= shift;
	my $vuser 	= shift;
	my $vhost	= shift;
	return $self->{multihosting} 
			? $vuser . $self->{multihosting_join} . $vhost 
			: $vuser;
}

sub _mbox_path {
	my $self 	= shift;
	my $vuser 	= shift;
	my $vhost	= shift;
	return $self->{multihosting} 
			? $self->{mailbox_base} . "/$vhost/$vuser" 
			: $self->{mailbox_base} . "/$vuser";
}

sub _check_mbox_base {
	my $self	= shift;
	my $vhost	= shift;
	my $quser   = shift;
    my $qgrp    = shift;

	my $dir		= $self->{mailbox_base};
	$self->_make_qmail_dir(	$dir,$quser,$qgrp,0700) if (!-e $dir);
	$dir	 	.= "/$vhost";
	$self->_make_qmail_dir( $dir,$quser,$qgrp,0700) 
								if ($self->{multihosting} && !-e $dir);
}

sub _make_qmail_dir {
	my $self 	= shift;
	my $dir		= shift;
	my $quser	= shift;
	my $qgrp	= shift;
	my $mask	= shift;

	eval { mkpath($dir,0,$mask) };
  	if ($@) { die "Couldn't create $dir: $@"; }
	chown $quser,$qgrp,$dir;

}

sub _q {
	my $self	= shift;
	return $self->{dbh}->quote(shift);
}


sub _do {
	my $self 	= shift;
	my $sql 	= shift;
	$self->{dbh}->do($sql) or die "Unable to execute $sql";
}

sub DESTROY {
	my $self = shift;
	$self->disconnect;
	# Enter here your code
}



( run in 0.536 second using v1.01-cache-2.11-cpan-71847e10f99 )