summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2007-11-20 19:43:27 +0000
committereinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2007-11-20 19:43:27 +0000
commite783d17dd9470f2dc2868e05119ea5bdaf0d00aa (patch)
tree770bfad486cb81c8d2ca6782215026f09668bd9c
parent8143605207345275a28029130b9491a2a31022c9 (diff)
A few more Customer improvements
git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/trunk@1882 4979c152-3d1c-0410-bac9-87ea11338e46
-rw-r--r--LedgerSMB/DBObject/Customer.pm4
-rw-r--r--UI/Customer/customer.html29
-rw-r--r--scripts/customer.pl13
-rw-r--r--sql/modules/Customer.sql7
4 files changed, 32 insertions, 21 deletions
diff --git a/LedgerSMB/DBObject/Customer.pm b/LedgerSMB/DBObject/Customer.pm
index 9a120f91..aa4404ce 100644
--- a/LedgerSMB/DBObject/Customer.pm
+++ b/LedgerSMB/DBObject/Customer.pm
@@ -9,7 +9,9 @@ sub save {
# This saves both the entity and the credit account. -- CT
$self->{entity_class} = 2;
- $self->{id} = $self->exec_method(funcname => 'entity_credit_save');
+
+ $self->{entity_id} = $self->exec_method(funcname => 'entity_credit_save');
+ $self->{dbh}->commit;
}
sub get_metadata {
diff --git a/UI/Customer/customer.html b/UI/Customer/customer.html
index 759f4d72..3b45e91e 100644
--- a/UI/Customer/customer.html
+++ b/UI/Customer/customer.html
@@ -1,13 +1,21 @@
<?lsmb script_css = "Customer/customer.css" ?><?lsmb PROCESS 'ui-header.html' ?>
<?lsmb PROCESS 'elements.html' ?>
<body>
+ <?lsmb IF name ?>
+ <div class="pageheading"><?lsmb name?></font>
+ <?lsmb END ?>
<div class="navigation" id="nav_div">
+<ul class="navigation">
+ <li><a href="#customer_div"><?lsmb text('Account') ?></a></li>
+ <?lsmb IF entity_id ?>
+ <li><a href="#location_div"><?lsmb text('Addresses') ?></a></li>
+ <li><a href="#contact_div"><?lsmb text('Contact Info') ?></a></li>
+ <li><a href="#bank_div"><?lsmb text('Bank Accounts') ?></a></li>
+ <?lsmb END ?>
+</ul>
</div>
<div class="container" id="customer_div">
<div class="listtop"><strong><?lsmb text('Add/Edit Customer') ?></strong></div>
- <?lsmb IF name ?>
- <font size="17"><?lsmb name?></font>
- <?lsmb END ?>
<form name="customer" method="POST" action="customer.pl">
<input type="hidden" name="entity_id" value="<?lsmb entity_id ?>">
<label for="name"><?lsmb text('Name:') ?></label>
@@ -43,7 +51,8 @@
<?lsmb END ?>
<tr>
<td>
- <label for="startdate"><?lsmb text('Starting Date:') ?></label>
+ <label for="startdate"><?lsmb text('Starting Date:') ?>
+ "<?lsmb startdate ?>"</label>
<input id="startdate" type="text" name="startdate"
class="date" value="<?lsmb startdate ?>">
</td>
@@ -81,11 +90,11 @@
</tr>
<tr>
<td>
- <label for="discount"><?lsmb text('Discount %:') ?></label>
+ <label for="discount"><?lsmb text('Discount:') ?></label>
<input id="discount" name="discount" type="text" size="3"
- maxlength="3" value="<?lsmb discount ?>">/
- <input id="discountdays" name="discountdays" type="text"
- size="3" value="<?lsmb discount_days ?>">
+ maxlength="3" value="<?lsmb discount ?>">%/
+ <input id="discountdays" name="discount_terms" type="text"
+ size="3" value="<?lsmb discount_terms ?>"> days
</td>
<td>
<label for="sic_code"><?lsmb text('SIC Code:') ?></label>
@@ -151,8 +160,8 @@
<?lsmb text('Pricelist') ?></button>
</form>
</div>
-<?lsmb #IF id ?>
-<div id="locations" class="container">
+<?lsmb IF entity_id ?>
+<div id="location_div" class="container">
<div class="listtop"><?lsmb text('Locations') ?></div>
<!-- This entire form should probably be optionaly automated with AJAX
in oder to prevent user confusion -->
diff --git a/scripts/customer.pl b/scripts/customer.pl
index 988538a8..27e3d4d0 100644
--- a/scripts/customer.pl
+++ b/scripts/customer.pl
@@ -150,13 +150,16 @@ sub save {
my ($request) = @_;
my $customer = LedgerSMB::DBObject::Customer->new({base => $request});
+ $customer->save();
+ $customer->get_metadata();
- my $result = $customer->save();
-
- my $template = LedgerSMB::Template->new( user => $request->{_user},
- template => 'customer', locale => $request->{_locale},
+ my $template = LedgerSMB::Template->new(
+ user => $request->{_user},
+ template => 'customer',
+ locale => $request->{_locale},
path => 'UI/Customer',
- format => 'HTML');
+ format => 'HTML'
+ );
$template->render($customer);
}
diff --git a/sql/modules/Customer.sql b/sql/modules/Customer.sql
index 6071bc4a..7f2a8da0 100644
--- a/sql/modules/Customer.sql
+++ b/sql/modules/Customer.sql
@@ -54,10 +54,6 @@ CREATE OR REPLACE FUNCTION entity_credit_save (
) returns INT as $$
- -- does not require entity_class, as entity_class is a known given to be 1
-
- -- Maybe we should make this generic and pass through? -- CT
-
DECLARE
t_entity_class int;
new_entity_id int;
@@ -99,7 +95,7 @@ CREATE OR REPLACE FUNCTION entity_credit_save (
VALUES (
new_entity_id,
in_entity_class,
- in_discount,
+ in_discount / 100,
in_taxincluded,
in_creditlimit,
in_terms,
@@ -116,6 +112,7 @@ CREATE OR REPLACE FUNCTION entity_credit_save (
-- entity note class
insert into entity_note (note_class, note, ref_key, vector) VALUES (
1, in_notes, new_entity_id, '');
+
return new_entity_id;
ELSIF FOUND THEN