add svc_forward, depriciate svc_acct_sm
[freeside.git] / htdocs / docs / man / FS / svc_domain.html
1 <HTML>
2 <HEAD>
3 <TITLE>FS::svc_domain - Object methods for svc_domain records</TITLE>
4 <LINK REV="made" HREF="mailto:perl@packages.debian.org">
5 </HEAD>
6
7 <BODY>
8
9 <A NAME="__index__"></A>
10 <!-- INDEX BEGIN -->
11
12 <UL>
13
14         <LI><A HREF="#name">NAME</A></LI>
15         <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
16         <LI><A HREF="#description">DESCRIPTION</A></LI>
17         <LI><A HREF="#methods">METHODS</A></LI>
18         <LI><A HREF="#version">VERSION</A></LI>
19         <LI><A HREF="#bugs">BUGS</A></LI>
20         <LI><A HREF="#see also">SEE ALSO</A></LI>
21 </UL>
22 <!-- INDEX END -->
23
24 <HR>
25 <P>
26 <H1><A NAME="name">NAME</A></H1>
27 <P>FS::svc_domain - Object methods for svc_domain records</P>
28 <P>
29 <HR>
30 <H1><A NAME="synopsis">SYNOPSIS</A></H1>
31 <PRE>
32   use FS::svc_domain;</PRE>
33 <PRE>
34   $record = new FS::svc_domain \%hash;
35   $record = new FS::svc_domain { 'column' =&gt; 'value' };</PRE>
36 <PRE>
37   $error = $record-&gt;insert;</PRE>
38 <PRE>
39   $error = $new_record-&gt;replace($old_record);</PRE>
40 <PRE>
41   $error = $record-&gt;delete;</PRE>
42 <PRE>
43   $error = $record-&gt;check;</PRE>
44 <PRE>
45   $error = $record-&gt;suspend;</PRE>
46 <PRE>
47   $error = $record-&gt;unsuspend;</PRE>
48 <PRE>
49   $error = $record-&gt;cancel;</PRE>
50 <P>
51 <HR>
52 <H1><A NAME="description">DESCRIPTION</A></H1>
53 <P>An FS::svc_domain object represents a domain.  FS::svc_domain inherits from
54 FS::svc_Common.  The following fields are currently supported:</P>
55 <DL>
56 <DT><STRONG><A NAME="item_key">svcnum - primary key (assigned automatically for new accounts)</A></STRONG><BR>
57 <DD>
58 <DT><STRONG><A NAME="item_domain">domain</A></STRONG><BR>
59 <DD>
60 </DL>
61 <P>
62 <HR>
63 <H1><A NAME="methods">METHODS</A></H1>
64 <DL>
65 <DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
66 <DD>
67 Creates a new domain.  To add the domain to the database, see <A HREF="#insert">insert</A>.
68 <P></P>
69 <DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
70 <DD>
71 Adds this domain to the database.  If there is an error, returns the error,
72 otherwise returns false.
73 <P>The additional fields <EM>pkgnum</EM> and <EM>svcpart</EM> (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>) should be 
74 defined.  An FS::cust_svc record will be created and inserted.</P>
75 <P>The additional field <EM>action</EM> should be set to <EM>N</EM> for new domains or <EM>M</EM>
76 for transfers.</P>
77 <P>A registration or transfer email will be submitted unless
78 $FS::svc_domain::whois_hack is true.</P>
79 <P>The additional field <EM>email</EM> can be used to manually set the admin contact
80 email address on this email.  Otherwise, the svc_acct records for this package 
81 (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) are searched.  If there is exactly one svc_acct record
82 in the same package, it is automatically used.  Otherwise an error is returned.</P>
83 <P>If any <EM>soamachine</EM> configuration file exists, an SOA record is added to
84 the domain_record table (see &lt;FS::domain_record&gt;).</P>
85 <P>If any machines are defined in the <EM>nsmachines</EM> configuration file, NS
86 records are added to the domain_record table (see <A HREF=".././FS/domain_record.html">the FS::domain_record manpage</A>).</P>
87 <P>If any machines are defined in the <EM>mxmachines</EM> configuration file, MX
88 records are added to the domain_record table (see <A HREF=".././FS/domain_record.html">the FS::domain_record manpage</A>).</P>
89 <P>Any problems adding FS::domain_record records will emit warnings, but will
90 not return errors from this method.  If your configuration files are correct
91 you shouln't have any problems.</P>
92 <P></P>
93 <DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
94 <DD>
95 Deletes this domain from the database.  If there is an error, returns the
96 error, otherwise returns false.
97 <P>The corresponding FS::cust_svc record will be deleted as well.</P>
98 <P></P>
99 <DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
100 <DD>
101 Replaces OLD_RECORD with this one in the database.  If there is an error,
102 returns the error, otherwise returns false.
103 <P></P>
104 <DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><BR>
105 <DD>
106 Just returns false (no error) for now.
107 <P>Called by the suspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
108 <P></P>
109 <DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><BR>
110 <DD>
111 Just returns false (no error) for now.
112 <P>Called by the unsuspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
113 <P></P>
114 <DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><BR>
115 <DD>
116 Just returns false (no error) for now.
117 <P>Called by the cancel method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
118 <P></P>
119 <DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
120 <DD>
121 Checks all fields to make sure this is a valid domain.  If there is an error,
122 returns the error, otherwise returns false.  Called by the insert and replace
123 methods.
124 <P>Sets any fixed values; see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>.</P>
125 <P></P>
126 <DT><STRONG><A NAME="item_whois">whois</A></STRONG><BR>
127 <DD>
128 Returns the Net::Whois::Domain object (see <A HREF="../Net/Whois.html">the Net::Whois manpage</A>) for this domain, or
129 undef if the domain is not found in whois.
130 <P>(If $FS::svc_domain::whois_hack is true, returns that in all cases instead.)</P>
131 <P></P>
132 <DT><STRONG><A NAME="item__whois">_whois</A></STRONG><BR>
133 <DD>
134 Depriciated.
135 <P></P>
136 <DT><STRONG><A NAME="item_submit_internic">submit_internic</A></STRONG><BR>
137 <DD>
138 Submits a registration email for this domain.
139 <P></P></DL>
140 <P>
141 <HR>
142 <H1><A NAME="version">VERSION</A></H1>
143 <P>$Id: svc_domain.html,v 1.3 2001-04-23 12:40:31 ivan Exp $</P>
144 <P>
145 <HR>
146 <H1><A NAME="bugs">BUGS</A></H1>
147 <P>All BIND/DNS fields should be included (and exported).</P>
148 <P>Delete doesn't send a registration template.</P>
149 <P>All registries should be supported.</P>
150 <P>Should change action to a real field.</P>
151 <P>The $recref stuff in sub check should be cleaned up.</P>
152 <P>
153 <HR>
154 <H1><A NAME="see also">SEE ALSO</A></H1>
155 <P><A HREF=".././FS/svc_Common.html">the FS::svc_Common manpage</A>, <A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/Conf.html">the FS::Conf manpage</A>, <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>,
156 <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, <A HREF="../Net/Whois.html">the Net::Whois manpage</A>, <EM>ssh</EM>,
157 <EM>dot-qmail</EM>, schema.html from the base documentation, config.html from the
158 base documentation.</P>
159
160 </BODY>
161
162 </HTML>