summaryrefslogtreecommitdiff
path: root/httemplate/elements
diff options
context:
space:
mode:
authorivan <ivan>2010-07-16 23:45:24 +0000
committerivan <ivan>2010-07-16 23:45:24 +0000
commit556b8e9650155e74416496238cfc0e4abe64c53a (patch)
tree26a6cac98ec8a944361a0d913392eab6abd53b6a /httemplate/elements
parent9414a814e49a86a832e4f56ec1a6bcc927f55e6b (diff)
customer tags, RT#9192
Diffstat (limited to 'httemplate/elements')
-rw-r--r--httemplate/elements/select-cust_tag.html20
-rw-r--r--httemplate/elements/tr-select-cust_tag.html46
2 files changed, 66 insertions, 0 deletions
diff --git a/httemplate/elements/select-cust_tag.html b/httemplate/elements/select-cust_tag.html
new file mode 100644
index 0000000..61d4dca
--- /dev/null
+++ b/httemplate/elements/select-cust_tag.html
@@ -0,0 +1,20 @@
+<% include( '/elements/select-table.html',
+ 'table' => 'part_tag',
+ 'name_col' => 'tagname', #tagname - tagdesc??
+ 'multiple' => 1,
+ #'value' => $agentnum || '',
+ #'agent_virt' => 1,
+ 'hashref' => { 'disabled' => '' },
+ 'order_by' => ' ORDER BY tagname',
+ %opt,
+ )
+%>
+<%init>
+
+my %opt = @_;
+#my $agentnum = $opt{'curr_value'} || $opt{'value'};
+
+$opt{'records'} = delete $opt{'part_tag'}
+ if $opt{'part_tag'};
+
+</%init>
diff --git a/httemplate/elements/tr-select-cust_tag.html b/httemplate/elements/tr-select-cust_tag.html
new file mode 100644
index 0000000..d88f3a8
--- /dev/null
+++ b/httemplate/elements/tr-select-cust_tag.html
@@ -0,0 +1,46 @@
+% if ( $curuser->access_right('Edit customer tags') && @part_tag ) {
+
+ <TR>
+ <TD ALIGN="right"><% $opt{'label'} || 'Tags' %></TD>
+ <TD>
+ <% include( '/elements/select-cust_tag.html',
+ 'curr_value' => \@curr_tagnum,
+ 'part_tag' => \@part_tag,
+ %opt,
+ )
+ %>
+ </TD>
+ </TR>
+
+% } else {
+
+% foreach my $tagnum (@curr_tagnum) {
+ <INPUT TYPE="hidden" NAME="tagnum" VALUE="<% $tagnum %>">
+% }
+
+% }
+<%init>
+
+my $curuser = $FS::CurrentUser::CurrentUser;
+
+my %opt = @_;
+my $cgi = $opt{'cgi'};
+
+my @curr_tagnum = ();
+if ( $cgi->param('error') ) {
+ @curr_tagnum = $cgi->param('tagnum');
+} elsif ( $opt{'custnum'} ) {
+ @curr_tagnum = map $_->tagnum,
+ qsearch('cust_tag', { 'custnum' => $opt{'custnum'} } );
+}
+
+my $extra_sql = "WHERE disabled IS NULL OR disabled = '' ";
+$extra_sql .= ' OR tagnum IN ('. join(',', @curr_tagnum). ')' if @curr_tagnum;
+
+my @part_tag = qsearch({
+ 'table' => 'part_tag',
+ 'hashref' => {},
+ 'extra_sql' => $extra_sql,
+});
+
+</%init>