yes, the name sucks. got a better one?
=item agentnum - agent (see L<FS::agent>)
=item agentnum - agent (see L<FS::agent>)
-=item refnum - referral (see L<FS::part_referral>)
+=item refnum - Advertising source (see L<FS::part_referral>)
|| $self->ut_numbern('referral_custnum')
;
#barf. need message catalogs. i18n. etc.
|| $self->ut_numbern('referral_custnum')
;
#barf. need message catalogs. i18n. etc.
- $error .= "Please select a referral."
+ $error .= "Please select a advertising source."
if $error =~ /^Illegal or empty \(numeric\) refnum: /;
return $error if $error;
return "Unknown agent"
unless qsearchs( 'agent', { 'agentnum' => $self->agentnum } );
if $error =~ /^Illegal or empty \(numeric\) refnum: /;
return $error if $error;
return "Unknown agent"
unless qsearchs( 'agent', { 'agentnum' => $self->agentnum } );
- return "Unknown referral"
+ return "Unknown refnum"
unless qsearchs( 'part_referral', { 'refnum' => $self->refnum } );
return "Unknown referring custnum ". $self->referral_custnum
unless qsearchs( 'part_referral', { 'refnum' => $self->refnum } );
return "Unknown referring custnum ". $self->referral_custnum
-An FS::part_referral represents a referral - where a customer heard of your
-services. This can be used to track the effectiveness of a particular piece of
-advertising, for example. FS::part_referral inherits from FS::Record. The
-following fields are currently supported:
+An FS::part_referral represents a advertising source - where a customer heard
+of your services. This can be used to track the effectiveness of a particular
+piece of advertising, for example. FS::part_referral inherits from FS::Record.
+The following fields are currently supported:
=over 4
=item refnum - primary key (assigned automatically for new referrals)
=over 4
=item refnum - primary key (assigned automatically for new referrals)
-=item referral - Text name of this referral
+=item referral - Text name of this advertising source
+=head1 NOTE
+
+These were called B<referrals> before version 1.4.0 - the name was changed
+so as not to be confused with the new customer-to-customer referrals.
+
=head1 METHODS
=over 4
=item new HASHREF
=head1 METHODS
=over 4
=item new HASHREF
-Creates a new referral. To add the referral to the database, see L<"insert">.
+Creates a new advertising source. To add the referral to the database, see
+L<"insert">.
-Adds this referral to the database. If there is an error, returns the error,
-otherwise returns false.
+Adds this advertising source to the database. If there is an error, returns
+the error, otherwise returns false.
-Checks all fields to make sure this is a valid referral. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
+Checks all fields to make sure this is a valid advertising source. If there is
+an error, returns the error, otherwise returns false. Called by the insert and
+replace methods.
-=head1 VERSION
-
-$Id: part_referral.pm,v 1.1 1999-08-04 09:03:53 ivan Exp $
-
=head1 BUGS
The delete method is unimplemented.
=head1 BUGS
The delete method is unimplemented.
+`Advertising source'. Yes, it's a sucky name. The only other ones I could
+come up with were "Marketing channel" and "Heard Abouts" and those are
+definately both worse.
+
=head1 SEE ALSO
L<FS::Record>, L<FS::cust_main>, schema.html from the base documentation.
=head1 SEE ALSO
L<FS::Record>, L<FS::cust_main>, schema.html from the base documentation.
-print header("Referral Listing", menubar(
+print header("Advertising source Listing", menubar(
'Main Menu' => $p,
# 'Add new referral' => "../edit/part_referral.cgi",
)), "Where a customer heard about your service. Tracked for informational purposes.<BR><BR>", &table(), <<END;
<TR>
'Main Menu' => $p,
# 'Add new referral' => "../edit/part_referral.cgi",
)), "Where a customer heard about your service. Tracked for informational purposes.<BR><BR>", &table(), <<END;
<TR>
- <TH COLSPAN=2>Referral</TH>
+ <TH COLSPAN=2>Advertising source</TH>
- <TD COLSPAN=2><A HREF="${p}edit/part_referral.cgi"><I>Add a new referral</I></A></TD>
+ <TD COLSPAN=2><A HREF="${p}edit/part_referral.cgi"><I>Add a new advertising source</I></A></TD>
<li>After creating a new agent type, you must create an agent. Click on
<u>View/Edit agents</u> and <u>Add a new agent</u>.
<li>After creating a new agent type, you must create an agent. Click on
<u>View/Edit agents</u> and <u>Add a new agent</u>.
- <li>Set up at least one referral. Referrals will help you keep track of how
- effective your advertising is, by helping you keep track of where customers
- heard of your service offerings. You must create at least one referral. If
- you do not wish to use the referral functionality, simply create a single
- referral only. Click on <u>View/Edit referrals</u> and <u>Add a new
- referral</u>.
+ <li>Set up at least one Advertising source. Advertising sources will help
+ you keep track of how effective your advertising is, tracking where customers
+ heard of your service offerings. You must create at least one advertising
+ source. If you do not wish to use the referral functionality, simply create
+ a single advertising source only. Click on <u>View/Edit advertising
+ sources</u> and <u>Add a new advertising source</u>.
<li>Click on <u>New Customer</u> and create a new customer for your system
accounts with billing type <b>Complimentary</b>.
<li>Click on <u>New Customer</u> and create a new customer for your system
accounts with billing type <b>Complimentary</b>.
my $hashref = $part_referral->hashref;
my $p1 = popurl(1);
my $hashref = $part_referral->hashref;
my $p1 = popurl(1);
-print header("$action Referral", menubar(
+print header("$action Advertising source", menubar(
'Main Menu' => popurl(2),
'Main Menu' => popurl(2),
- 'View all referrals' => popurl(2). "browse/part_referral.cgi",
+ 'View all advertising sources' => popurl(2). "browse/part_referral.cgi",
));
print qq!<FONT SIZE="+1" COLOR="#ff0000">Error: !, $cgi->param('error'),
));
print qq!<FONT SIZE="+1" COLOR="#ff0000">Error: !, $cgi->param('error'),
"Referral #", $hashref->{refnum} ? $hashref->{refnum} : "(NEW)";
print <<END;
"Referral #", $hashref->{refnum} ? $hashref->{refnum} : "(NEW)";
print <<END;
-<PRE>
-Referral <INPUT TYPE="text" NAME="referral" SIZE=32 VALUE="$hashref->{referral}">
-</PRE>
+Advertising source <INPUT TYPE="text" NAME="referral" SIZE=32 VALUE="$hashref->{referral}">
END
print qq!<BR><INPUT TYPE="submit" VALUE="!,
END
print qq!<BR><INPUT TYPE="submit" VALUE="!,
- $hashref->{refnum} ? "Apply changes" : "Add referral",
+ $hashref->{refnum} ? "Apply changes" : "Add advertising source",
<LI><A HREF="browse/agent.cgi">View/Edit agents</A>
- Agents are resellers of your service. Agents may be limited
to a subset of your full offerings (via their type).
<LI><A HREF="browse/agent.cgi">View/Edit agents</A>
- Agents are resellers of your service. Agents may be limited
to a subset of your full offerings (via their type).
- <LI><A HREF="browse/part_referral.cgi">View/Edit referrals</A>
+ <LI><A HREF="browse/part_referral.cgi">View/Edit advertising sources</A>
- Where a customer heard about your service. Tracked for
informational purposes.
<LI><A HREF="browse/cust_main_county.cgi">View/Edit locales and tax rates</A>
- Where a customer heard about your service. Tracked for
informational purposes.
<LI><A HREF="browse/cust_main_county.cgi">View/Edit locales and tax rates</A>