[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
SF.net SVN: ledger-smb: [1852] trunk
- Subject: SF.net SVN: ledger-smb: [1852] trunk
- From: ..hidden..
- Date: Mon, 05 Nov 2007 07:54:36 -0800
Revision: 1852
http://ledger-smb.svn.sourceforge.net/ledger-smb/?rev=1852&view=rev
Author: tetragon
Date: 2007-11-05 07:54:35 -0800 (Mon, 05 Nov 2007)
Log Message:
-----------
Convert list_history to dynatable. Looks like ct.pl is done templating
Modified Paths:
--------------
trunk/UI/form-dynatable.html
trunk/bin/ct.pl
Modified: trunk/UI/form-dynatable.html
===================================================================
--- trunk/UI/form-dynatable.html 2007-11-05 15:11:03 UTC (rev 1851)
+++ trunk/UI/form-dynatable.html 2007-11-05 15:54:35 UTC (rev 1852)
@@ -39,8 +39,23 @@
<?lsmb FOREACH row IN rows ?>
<?lsmb IF row.class == 'heading'; s = 'th'; c = 'listheading';
ELSIF row.class == 'subtotal'; s = 'th'; c = 'listsubtotal';
+ ELSIF row.class == 'divider'; s = 'th'; c = 'listheading';
ELSE; s = 'td'; c = "listrow${row.i}"; END ?>
<tr class="<?lsmb c ?>">
+ <?lsmb IF row.class == 'divider' ?>
+ <th colspan="<?lsmb columns.size ?>">
+ <?lsmb IF row.href.defined ?>
+ <a href="<?lsmb row.href?>"><?lsmb row.text ?></a>
+ <?lsmb ELSIF row.delimiter;
+ FOREACH l IN row.text.split(row.delimiter); l ?><br /><?lsmb END ?>
+ <?lsmb ELSIF row.input.defined;
+ PROCESS input element_data=row.input ?>
+ <?lsmb ELSIF row.select.defined;
+ PROCESS select element_data=row.select ?>
+ <?lsmb ELSE; row; END ?>
+ </th>
+</tr>
+ <?lsmb NEXT; END ?>
<?lsmb FOREACH column IN columns ?>
<<?lsmb s ?> class="<?lsmb c ?>" <?lsmb IF (!row.class.defined || row.class != 'heading') && row_alignment.$column ?>align="<?lsmb row_alignment.$column ?>"<?lsmb END ?>>
<?lsmb IF row.$column.href.defined ?>
Modified: trunk/bin/ct.pl
===================================================================
--- trunk/bin/ct.pl 2007-11-05 15:11:03 UTC (rev 1851)
+++ trunk/bin/ct.pl 2007-11-05 15:54:35 UTC (rev 1852)
@@ -925,17 +925,19 @@
sub list_history {
CT->get_history( \%myconfig, \%$form );
+ my %hiddens;
+ my @buttons;
- $href =
+ my $href =
"$form->{script}?action=list_history&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&type=$form->{type}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&history=$form->{history}";
$form->sort_order();
- $callback =
+ my $callback =
"$form->{script}?action=list_history&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&type=$form->{type}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&history=$form->{history}";
$form->{l_fxsellprice} = $form->{l_curr};
- @columns = $form->sort_columns( partnumber, description, qty, unit,
+ my @columns = $form->sort_columns( partnumber, description, qty, unit,
sellprice, fxsellprice, curr, discount,
deliverydate, projectnumber, serialnumber
);
@@ -946,6 +948,7 @@
curr );
}
+ my @column_index;
foreach $item (@columns) {
if ( $form->{"l_$item"} eq "Y" ) {
push @column_index, $item;
@@ -956,21 +959,21 @@
}
}
+ my @options;
if ( $form->{history} eq 'detail' ) {
- $option = $locale->text('Detail');
+ push @options, $locale->text('Detail');
+ } elsif ( $form->{history} eq 'summary' ) {
+ push @options, $locale->text('Summary');
}
- if ( $form->{history} eq 'summary' ) {
- $option .= $locale->text('Summary');
- }
if ( $form->{name} ) {
$callback .= "&name=" . $form->escape( $form->{name}, 1 );
$href .= "&name=" . $form->escape( $form->{name} );
- $option .= "\n<br>" . $locale->text('Name') . " : $form->{name}";
+ push @options, $locale->text('Name: [_1]', $form->{name});
}
if ( $form->{contact} ) {
$callback .= "&contact=" . $form->escape( $form->{contact}, 1 );
$href .= "&contact=" . $form->escape( $form->{contact} );
- $option .= "\n<br>" . $locale->text('Contact') . " : $form->{contact}";
+ push @options, $locale->text('Contact: [_1]', $form->{contact});
}
if ( $form->{"$form->{db}number"} ) {
$callback .=
@@ -978,91 +981,80 @@
. $form->escape( $form->{"$form->{db}number"}, 1 );
$href .=
"&$form->{db}number=" . $form->escape( $form->{"$form->{db}number"} );
- $option .= "\n<br>"
- . $locale->text('Number')
- . qq| : $form->{"$form->{db}number"}|;
+ push @options, $locale->text('Number: [_1]',
+ $form->{"$form->{db}number"});
}
if ( $form->{email} ) {
$callback .= "&email=" . $form->escape( $form->{email}, 1 );
$href .= "&email=" . $form->escape( $form->{email} );
- $option .= "\n<br>" . $locale->text('E-mail') . " : $form->{email}";
+ push @options, $locale->text('E-mail: [_1]', $form->{email});
}
if ( $form->{transdatefrom} ) {
$callback .= "&transdatefrom=$form->{transdatefrom}";
$href .= "&transdatefrom=$form->{transdatefrom}";
- $option .= "\n<br>" if ($option);
- $option .=
- $locale->text('From') . " "
- . $locale->date( \%myconfig, $form->{transdatefrom}, 1 );
+ push @options, $locale->text('From [_1]',
+ $locale->date( \%myconfig, $form->{transdatefrom}, 1 ));
}
if ( $form->{transdateto} ) {
$callback .= "&transdateto=$form->{transdateto}";
$href .= "&transdateto=$form->{transdateto}";
if ( $form->{transdatefrom} ) {
- $option .= " ";
+ pop @options;
+ push @options, $locale->text('From [_1] To [_2]',
+ $locale->date( \%myconfig, $form->{transdatefrom}, 1 ),
+ $locale->date( \%myconfig, $form->{transdateto}, 1 ));
+ } else {
+ push @options, $locale->text('To [_1]',
+ $locale->date( \%myconfig, $form->{transdateto}, 1 ));
}
- else {
- $option .= "\n<br>" if ($option);
- }
- $option .=
- $locale->text('To') . " "
- . $locale->date( \%myconfig, $form->{transdateto}, 1 );
}
if ( $form->{open} ) {
$callback .= "&open=$form->{open}";
$href .= "&open=$form->{open}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Open');
+ push @options, $locale->text('Open');
}
if ( $form->{closed} ) {
$callback .= "&closed=$form->{closed}";
$href .= "&closed=$form->{closed}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Closed');
+ push @options, $locale->text('Closed');
}
$form->{callback} = "$callback&sort=$form->{sort}";
$callback = $form->escape( $form->{callback} );
- $column_header{partnumber} =
- qq|<th><a class=listheading href=$href&sort=partnumber>|
- . $locale->text('Part Number')
- . qq|</a></th>|;
- $column_header{description} =
- qq|<th><a class=listheading href=$href&sort=description>|
- . $locale->text('Description')
- . qq|</a></th>|;
+ my %column_header;
+ $column_header{partnumber} = {
+ href => "$href&sort=partnumber",
+ text => $locale->text('Part Number')
+ };
+ $column_header{description} = {
+ href => "$href&sort=description",
+ text => $locale->text('Description')
+ };
if ( $form->{history} eq 'summary' ) {
- $column_header{sellprice} =
- qq|<th class=listheading>| . $locale->text('Total') . qq|</th>|;
+ $column_header{sellprice} = $locale->text('Total');
+ } else {
+ $column_header{sellprice} = $locale->text('Sell Price');
}
- else {
- $column_header{sellprice} =
- qq|<th class=listheading>| . $locale->text('Sell Price') . qq|</th>|;
- }
- $column_header{fxsellprice} = qq|<th> </th>|;
+ $column_header{fxsellprice} = ' ';
- $column_header{curr} =
- qq|<th class=listheading>| . $locale->text('Curr') . qq|</th>|;
- $column_header{discount} =
- qq|<th class=listheading>| . $locale->text('Discount') . qq|</th>|;
- $column_header{qty} =
- qq|<th class=listheading>| . $locale->text('Qty') . qq|</th>|;
- $column_header{unit} =
- qq|<th class=listheading>| . $locale->text('Unit') . qq|</th>|;
- $column_header{deliverydate} =
- qq|<th><a class=listheading href=$href&sort=deliverydate>|
- . $locale->text('Delivery Date')
- . qq|</a></th>|;
- $column_header{projectnumber} =
- qq|<th><a class=listheading href=$href&sort=projectnumber>|
- . $locale->text('Project Number')
- . qq|</a></th>|;
- $column_header{serialnumber} =
- qq|<th><a class=listheading href=$href&sort=serialnumber>|
- . $locale->text('Serial Number')
- . qq|</a></th>|;
+ $column_header{curr} = $locale->text('Curr');
+ $column_header{discount} = $locale->text('Discount');
+ $column_header{qty} = $locale->text('Qty');
+ $column_header{unit} = $locale->text('Unit');
+ $column_header{deliverydate} = {
+ href => "$href&sort=deliverydate",
+ text => $locale->text('Delivery Date')
+ };
+ $column_header{projectnumber} = {
+ href => "$href&sort=projectnumber",
+ text => $locale->text('Project Number')
+ };
+ $column_header{serialnumber} = {
+ href => "$href&sort=serialnumber",
+ text => $locale->text('Serial Number')
+ };
# $locale->text('Customer History')
# $locale->text('Vendor History')
@@ -1070,33 +1062,6 @@
$label = ucfirst $form->{db};
$form->{title} = $locale->text( $label . " History" );
- $colspan = $#column_index + 1;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- for (@column_index) { print "$column_header{$_}\n" }
-
- print qq|
- </tr>
-|;
-
$module = 'oe';
if ( $form->{db} eq 'customer' ) {
$invlabel = $locale->text('Sales Invoice');
@@ -1108,8 +1073,7 @@
if ( $form->{type} eq 'invoice' ) {
$module = 'is';
}
- }
- else {
+ } else {
$invlabel = $locale->text('Vendor Invoice');
$ordlabel = $locale->text('Purchase Order');
$quolabel = $locale->text('RFQ');
@@ -1123,16 +1087,16 @@
$ml = ( $form->{db} eq 'vendor' ) ? -1 : 1;
- foreach $ref ( @{ $form->{CT} } ) {
+ my @rows;
+ foreach my $ref ( @{ $form->{CT} } ) {
if ( $ref->{id} ne $sameid ) {
-
# print the header
- print qq|
- <tr class=listheading>
- <th colspan=$colspan><a class=listheading href=$form->{script}?action=edit&id=$ref->{ctid}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{name} $ref->{address}</a></th>
- </tr>
-|;
+ push @rows, {
+ class => 'divider',
+ text => "$ref->{name} $ref->{address}"
+ href => "$form->{script}?action=edit&id=$ref->{ctid}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback",
+ };
}
if ( $form->{type} ne 'invoice' ) {
@@ -1146,92 +1110,74 @@
$i++;
$i %= 2;
- print qq|
- <tr class=listrow$i>
-|;
-
if ( $form->{type} eq 'invoice' ) {
- print
-qq|<th align=left colspan=$colspan><a href=${module}.pl?action=edit&id=$ref->{invid}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$invlabel $ref->{invnumber} / $ref->{employee}</a></th>|;
+ push @rows, {
+ class => 'divider',
+ href => "${module}.pl?action=edit&id=$ref->{invid}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback",
+ text => "$invlabel $ref->{invnumber} / $ref->{employee}";
+ };
+ } elsif ( $form->{type} eq 'order' ) {
+ push @rows, {
+ class => 'divider',
+ href => "${module}.pl?action=edit&id=$ref->{invid}&type=$ordertype&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback",
+ text => "$ordlabel $ref->{ordnumber} / $ref->{employee}"
+ };
+ } elsif ( $form->{type} eq 'quotation' ) {
+ push @rows, {
+ class => 'divider',
+ href => "${module}.pl?action=edit&id=$ref->{invid}&type=$quotationtype&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback",
+ text => "$quolabel $ref->{quonumber} / $ref->{employee}"
+ };
}
-
- if ( $form->{type} eq 'order' ) {
- print
-qq|<th align=left colspan=$colspan><a href=${module}.pl?action=edit&id=$ref->{invid}&type=$ordertype&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ordlabel $ref->{ordnumber} / $ref->{employee}</a></th>|;
- }
-
- if ( $form->{type} eq 'quotation' ) {
- print
-qq|<th align=left colspan=$colspan><a href=${module}.pl?action=edit&id=$ref->{invid}&type=$quotationtype&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$quolabel $ref->{quonumber} / $ref->{employee}</a></th>|;
- }
-
- print qq|
- </tr>
-|;
}
- for (@column_index) { $column_data{$_} = "<td>$ref->{$_} </td>" }
+ my %column_data;
+ for (@column_index) { $column_data{$_} = $ref->{$_} }
if ( $form->{l_curr} ) {
$column_data{fxsellprice} =
- qq|<td align=right>|
- . $form->format_amount( \%myconfig, $ref->{fxsellprice}, 2 )
- . "</td>";
+ $form->format_amount( \%myconfig, $ref->{fxsellprice}, 2 );
}
$column_data{sellprice} =
- qq|<td align=right>|
- . $form->format_amount( \%myconfig, $ref->{sellprice}, 2 ) . "</td>";
-
+ $form->format_amount( \%myconfig, $ref->{sellprice}, 2 );
$column_data{qty} =
- qq|<td align=right>|
- . $form->format_amount( \%myconfig, $ref->{qty} * $ml ) . "</td>";
- $column_data{discount} = qq|<td align=right>|
- . $form->format_amount( \%myconfig, $ref->{discount} * 100,
- "", " " )
- . "</td>";
- $column_data{partnumber} =
-qq|<td><a href=ic.pl?action=edit&id=$ref->{pid}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{partnumber}</td>|;
+ $form->format_amount( \%myconfig, $ref->{qty} * $ml );
+ $column_data{discount} =
+ $form->format_amount( \%myconfig, $ref->{discount} * 100, "", ' ' );
+ $column_data{partnumber} = {
+ href => "ic.pl?action=edit&id=$ref->{pid}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback"
+ text => $ref->{partnumber}
+ };
$i++;
$i %= 2;
- print qq|
- <tr class=listrow$i>
-|;
+ $column_data{i} = $i;
- for (@column_index) { print "$column_data{$_}\n" }
+ push @rows, \%column_data;
- print qq|
- </tr>
-|;
-
$sameid = $ref->{id};
$sameinvid = $ref->{invid};
}
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
+##SC: Temporary removal
+## if ( $form->{lynx} ) {
+## require "bin/menu.pl";
+## &menubar;
+## }
-|;
-
- if ( $form->{lynx} ) {
- require "bin/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
+ my $template = LedgerSMB::Template->new_UI(
+ user => \%myconfig,
+ locale => $locale,
+ template => 'form-dynatable',
+ );
+ $template->render({
+ form => $form,
+ options => ..hidden..,
+ rows => ..hidden..,
+ columns => ..hidden..,
+ heading => \%column_header,
+ });
}
sub edit {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.