From: Mark Wells Date: Thu, 6 Oct 2016 23:26:08 +0000 (-0700) Subject: add part_referral external ID for API signups, #39776 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=5a01b56c54b68254488418cffa5ec7dd75004525 add part_referral external ID for API signups, #39776 --- diff --git a/FS/FS/Schema.pm b/FS/FS/Schema.pm index cd8213a78..2acbe3dc2 100644 --- a/FS/FS/Schema.pm +++ b/FS/FS/Schema.pm @@ -2445,11 +2445,12 @@ sub tables_hashref { 'refnum', 'serial', '', '', '', '', 'referral', 'varchar', '', $char_d, '', '', 'disabled', 'char', 'NULL', 1, '', '', - 'agentnum', 'int', 'NULL', '', '', '', + 'agentnum', 'int', 'NULL', '', '', '', + 'title', 'varchar', 'NULL', $char_d, '', '', ], - 'primary_key' => 'refnum', - 'unique' => [], - 'index' => [ ['disabled'], ['agentnum'], ], + 'primary_key' => 'refnum', + 'unique' => [ ['agentnum', 'title'] ], + 'index' => [ ['disabled'], ['agentnum'], ], }, 'part_svc' => { diff --git a/FS/FS/part_referral.pm b/FS/FS/part_referral.pm index 992e1c52a..38f9fc108 100644 --- a/FS/FS/part_referral.pm +++ b/FS/FS/part_referral.pm @@ -44,6 +44,9 @@ The following fields are currently supported: =item agentnum - Optional agentnum (see L) +=item title - an optional external string that identifies this +referral source, such as an advertising campaign code. + =back =head1 NOTE @@ -101,6 +104,7 @@ sub check { || $self->ut_text('referral') || $self->ut_enum('disabled', [ '', 'Y' ] ) #|| $self->ut_foreign_keyn('agentnum', 'agent', 'agentnum') + || $self->ut_textn('title') || ( $setup_hack ? $self->ut_foreign_keyn('agentnum', 'agent', 'agentnum' ) : $self->ut_agentnum_acl('agentnum', 'Edit global advertising sources') diff --git a/httemplate/edit/part_referral.html b/httemplate/edit/part_referral.html index e9fd79452..04287d632 100755 --- a/httemplate/edit/part_referral.html +++ b/httemplate/edit/part_referral.html @@ -3,11 +3,13 @@ 'table' => 'part_referral', 'fields' => [ 'referral', { field=>'agentnum', type=>'select-agent', }, + 'title', { field=>'disabled', type=>'checkbox', value=>'Y' } , ], 'labels' => { 'refnum' => 'Ad Source', 'referral' => 'Advertising source', 'agentnum' => 'Agent', + 'title' => 'External ID', 'disabled' => 'Disabled', }, 'viewall_dir' => 'browse',