summaryrefslogtreecommitdiff
path: root/httemplate/edit
diff options
context:
space:
mode:
authorlevinse <levinse>2010-12-10 06:02:53 +0000
committerlevinse <levinse>2010-12-10 06:02:53 +0000
commit457da870c23db87fbbc29d7c667a73f41422dd71 (patch)
treeea61844254e2338dc20cc85e1cbc30b006b731a3 /httemplate/edit
parent6568e7bb436d6ac4ae2ec984446e8fc4a999f0af (diff)
implement customer note classes, RT9995
Diffstat (limited to 'httemplate/edit')
-rwxr-xr-xhttemplate/edit/cust_main_note.cgi19
-rw-r--r--httemplate/edit/cust_note_class.html6
-rw-r--r--httemplate/edit/elements/class_Common.html8
-rwxr-xr-xhttemplate/edit/process/cust_main_note.cgi4
-rw-r--r--httemplate/edit/process/cust_note_class.html11
5 files changed, 45 insertions, 3 deletions
diff --git a/httemplate/edit/cust_main_note.cgi b/httemplate/edit/cust_main_note.cgi
index 439c844..c4ec071 100755
--- a/httemplate/edit/cust_main_note.cgi
+++ b/httemplate/edit/cust_main_note.cgi
@@ -6,6 +6,18 @@
<INPUT TYPE="hidden" NAME="custnum" VALUE="<% $custnum %>">
<INPUT TYPE="hidden" NAME="notenum" VALUE="<% $notenum %>">
+% if ($conf->exists('note-classes') && $conf->config('note-classes') > 0) {
+ Class &nbsp;
+ <% include( '/elements/select-table.html',
+ 'table' => 'cust_note_class',
+ 'name_col' => 'classname',
+ 'curr_value' => $classnum,
+ 'empty_label' => '(none)',
+ 'hashref' => { 'disabled' => '' },
+ ) %>
+ <BR>
+% }
+
% if( $FS::CurrentUser::CurrentUser->option('disable_html_editor') ) {
<TEXTAREA NAME="comment_plain" ROWS="12" COLS="60"><%
join '', split /<br \/>|&nbsp;/, $comment
@@ -25,21 +37,26 @@
<%init>
+my $conf = new FS::Conf;
+
my $comment;
my $notenum = '';
+my $classnum;
if ( $cgi->param('error') ) {
$comment = $cgi->param('comment');
+ $classnum = $cgi->param('classnum');
} elsif ( $cgi->param('notenum') =~ /^(\d+)$/ ) {
$notenum = $1;
die "illegal query ". $cgi->keywords unless $notenum;
my $note = qsearchs('cust_main_note', { 'notenum' => $notenum });
die "no such note: ". $notenum unless $note;
$comment = $note->comments;
+ $classnum = $note->classnum;
}
$comment =~ s/\r//g; # remove weird line breaks to protect FCKeditor
-$cgi->param('custnum') =~ /^(\d+)$/ or die "illeagl custnum";
+$cgi->param('custnum') =~ /^(\d+)$/ or die "illegal custnum";
my $custnum = $1;
my $action = $notenum ? 'Edit' : 'Add';
diff --git a/httemplate/edit/cust_note_class.html b/httemplate/edit/cust_note_class.html
new file mode 100644
index 0000000..111190b
--- /dev/null
+++ b/httemplate/edit/cust_note_class.html
@@ -0,0 +1,6 @@
+<% include( 'elements/class_Common.html',
+ 'name' => 'Customer Note Class',
+ 'table' => 'cust_note_class',
+ 'nocat' => 1,
+ )
+%>
diff --git a/httemplate/edit/elements/class_Common.html b/httemplate/edit/elements/class_Common.html
index b5f4939..e6334fe 100644
--- a/httemplate/edit/elements/class_Common.html
+++ b/httemplate/edit/elements/class_Common.html
@@ -26,7 +26,11 @@ die "access denied"
my %opt = @_;
my $table = $opt{'table'};
-( my $category_table = $table ) =~ s/class/category/ or die;
-my @category = qsearch($category_table, { 'disabled' => '' });
+my @category;
+unless ( $opt{'nocat'} ) {
+ ( my $category_table = $table ) =~ s/class/category/ or die;
+ @category = qsearch($category_table, { 'disabled' => '' });
+}
+
</%init>
diff --git a/httemplate/edit/process/cust_main_note.cgi b/httemplate/edit/process/cust_main_note.cgi
index f904c59..227297e 100755
--- a/httemplate/edit/process/cust_main_note.cgi
+++ b/httemplate/edit/process/cust_main_note.cgi
@@ -18,6 +18,9 @@ $cgi->param('notenum') =~ /^(\d*)$/
or die "Illegal notenum: ". $cgi->param('notenum');
my $notenum = $1;
+$cgi->param('classnum') =~ /^(\d*)$/;
+my $classnum = $1;
+
my $comment = $cgi->param('comment_html') ||
join("<br />\n",
split "(?:\r|\n)+", $cgi->param('comment_plain')
@@ -26,6 +29,7 @@ my $comment = $cgi->param('comment_html') ||
my $new = new FS::cust_main_note ( {
notenum => $notenum,
custnum => $custnum,
+ classnum => $classnum ? $classnum : undef,
_date => time,
usernum => $FS::CurrentUser::CurrentUser->usernum,
comments => $comment,
diff --git a/httemplate/edit/process/cust_note_class.html b/httemplate/edit/process/cust_note_class.html
new file mode 100644
index 0000000..09dc818
--- /dev/null
+++ b/httemplate/edit/process/cust_note_class.html
@@ -0,0 +1,11 @@
+<% include( 'elements/process.html',
+ 'table' => 'cust_note_class',
+ 'viewall_dir' => 'browse',
+ )
+%>
+<%init>
+
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
+
+</%init>