X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fsvc_dsl.cgi;h=9d9134a4d34f87439356a1d9571c260c2bbe62ed;hb=998f029ef805c73e90543b34192e16d38a23c69c;hp=a4b2d43275b233caf01608a4a22e579637ed2543;hpb=46ef8524cf2e6db7b851967062ce92ffb0773d10;p=freeside.git diff --git a/httemplate/view/svc_dsl.cgi b/httemplate/view/svc_dsl.cgi index a4b2d4327..9d9134a4d 100644 --- a/httemplate/view/svc_dsl.cgi +++ b/httemplate/view/svc_dsl.cgi @@ -1,14 +1,14 @@ <% include('elements/svc_Common.html', - 'table' => 'svc_dsl', - 'labels' => \%labels, - 'fields' => \@fields, - 'svc_callback' => $svc_cb, - 'html_foot' => $html_foot, + 'table' => 'svc_dsl', + 'labels' => \%labels, + 'fields' => \@fields, + 'svc_callback' => $svc_cb, + 'html_foot' => $html_foot, ) %> <%init> -my $conf = new FS::Conf; -my $date_format = $conf->config('date_format') || '%m/%d/%Y'; + +# XXX: AJAX auto-pull my $fields = FS::svc_dsl->table_info->{'fields'}; my %labels = map { $_ => ( ref($fields->{$_}) @@ -25,38 +25,62 @@ my $html_foot = sub { }; my $svc_cb = sub { - my( $cgi,$svc_x, $part_svc,$cust_pkg, $fields1,$opt) = @_; + my( $cgi,$svc_dsl, $part_svc,$cust_pkg, $fields1,$opt) = @_; my @exports = $part_svc->part_export_dsl_pull; die "more than one DSL-pulling export attached to svcpart ".$part_svc->svcpart - if ( scalar(@exports) > 1 ); + if ( scalar(@exports) > 1 ); # if no DSL-pulling exports, then just display everything, which is the # default behaviour implemented above return if ( scalar(@exports) == 0 ); - $opt->{'disable_unprovision'} = 1; - my $exporttype = @exports[0]->exporttype; + my $export = @exports[0]; - # XXX: AJAX auto-pull - - @fields = qw( svctn first last company username password ); + @fields = ( 'phonenum', + { field => 'loop_type', + value => 'FS::part_export::'.$export->exporttype.'::loop_type_long' + }, + { field => 'desired_due_date', type => 'date', }, + { field => 'due_date', type => 'date', }, + { field => 'pushed', type => 'datetime', }, + { field => 'monitored', type => 'checkbox', }, + { field => 'last_pull', type => 'datetime', }, + 'first', + 'last', + 'company' ); - if($exporttype eq 'ikano') { - push @fields, 'isp_chg'; - push @fields, 'isp_prev'; - push @fields, 'staticips'; - } - else { - # XXX + my $status = ''; + if($export->exporttype eq 'ikano') { + push @fields, qw ( username password isp_chg isp_prev staticips ); + $status = "Ikano " . $svc_dsl->vendor_order_type . " order #" + . $svc_dsl->vendor_order_id . "   Status: " + . $svc_dsl->vendor_order_status; } - - # hack against "can't use string ... as a subroutine ref while 'strict refs' in use" - my $statusSub = \&{'FS::part_export::'.$exporttype.'::status_line'}; - my $statusLine = &$statusSub($svc_x,$date_format,"
"); - - $footer = "$statusLine"; + # else add any other export-specific stuff here + + $footer = "$status"; + + my @notes = $svc_dsl->notes; + if ( @notes ) { - # XXX: notes + my $conf = new FS::Conf; + my $date_format = $conf->config('date_format') || '%m/%d/%Y'; + + $footer .= + "

Order Notes
". ntable('#cccccc', 2). #id="dsl_notes" + 'DateByPriorityNote'; + + foreach my $note ( @notes ) { + $footer .= " + ".time2str("$date_format %H:%M",$note->date)." + ".$note->by." + ". ($note->priority eq 'N' ? 'Normal' : 'High') ." + ".$note->note.""; + } + + $footer .= ''; + + } };