Commit Graph

233 Commits

Author SHA1 Message Date
Paul van Tilburg b182711f39 Add configuration for time resolution rounding 2014-10-25 21:35:53 +02:00
Paul van Tilburg 423916232f Show time specification of projects/task the invoice_form
They are inserted in the titles of the time entry links so they are
shown when hovering over them.

Also fixed "None" not being displayed when there was no time entry
comment.
2014-10-25 18:31:50 +02:00
Paul van Tilburg 6cfdd4c7e1 Spacing and label fixes 2014-10-25 18:31:08 +02:00
Paul van Tilburg 4bb47f7504 Add jump buttons for customer and project/task in time_entry view 2014-10-25 18:30:50 +02:00
Paul van Tilburg a50c4e330f Add a "Create a new invoice" button per customer
This is done similarly as in the customer_form view.
2014-10-25 18:04:18 +02:00
Paul van Tilburg da8db07e94 Make key of customer/invoice mapping a customer
The key was the customer name before, but then it's not possible
to use any other information of the customer model anymore.
2014-10-25 18:02:37 +02:00
Paul van Tilburg f32c6da1d4 Add a VERSION constant and print it on start 2014-10-19 21:37:20 +02:00
Paul van Tilburg e5e879df03 Style the no customer/invoices/projects alerts the same way 2014-10-18 21:28:18 +02:00
Paul van Tilburg 70588df53f Fix missing doctype in main layout 2014-10-18 21:27:46 +02:00
Paul van Tilburg d5b5e0e4e0 Fix column cache being out-of-sync after migration 2014-10-18 21:27:26 +02:00
Paul van Tilburg 507010172f Fix payed→payed column rename migration 2014-10-18 21:26:55 +02:00
Paul van Tilburg b7de738866 Fix broken migration that cannot access config 2014-10-18 21:26:14 +02:00
Paul van Tilburg 21091e914e Fix broken period calculation initialisation 2014-10-18 21:25:51 +02:00
Paul van Tilburg 3e1ed8af58 Make ActiveRecord query calls compatible with AR4 2014-10-18 21:25:26 +02:00
Paul van Tilburg 97b6098bcd Round total time of tasks to two decimals
This fixes misrepresentation errors.  This occus for example when a task
has a length that would be represented using a floating point number that
has more than 2 decimals.

For example:  a task of length 59 minutes (i.e. 0.9833333333333333... hour)
is shown on the invoice as having a length of 0.98 hours while in
calculations still the unrounded task length is used.  When a hourly rate
of €100 pe rhour is defined, the invoice will show:

  0.98h x €100/h = €98.33.

which is confusing and although correct given maximal accurancy, it will
obviously not be accepted by book keeping programs.
2014-10-12 17:04:18 +02:00
Paul van Tilburg acd2ab46e4 Reorder the invoices when retrieving the last invoice 2014-02-09 14:40:28 +01:00
Paul van Tilburg fd6b853154 Move the 'Create a new invoice' button to a more consistent location 2014-02-07 21:36:09 +01:00
Paul van Tilburg cb14b99f89 Sort invoices in descending order by number by default 2014-02-07 21:22:20 +01:00
Paul van Tilburg 25b052e864 Support alternative invoice template configuration 2014-02-07 21:04:08 +01:00
Paul van Tilburg 70c0ad4a54 Fix fixed cost tasks being grouped under random projects in customer view 2014-02-07 20:30:38 +01:00
Paul van Tilburg 30fd5ec599 Show a billed fixed-task under itself in the customer_form view
As billed fixed-cost tasks cannot have an active task, the task itself
still is the one that is billed.  Show the task under itself to expose
the fact that it is billed and in which invoice.
2013-07-14 14:37:40 +02:00
Paul van Tilburg 19d4efaca3 Indentation fixes 2013-07-14 14:33:12 +02:00
Paul van Tilburg 47fca9df2a Handle billed fixed-cost tasks correctly in the customer_form view
Billed fixed-cost tasks will have no active task once they are billed,
because invoicing a fixed-cost will not split off a task but manipulate the
active one into being billed.
2013-07-14 14:32:02 +02:00
Paul van Tilburg 368592356c Add also links to time entries in the invoice_form view 2013-07-13 22:49:56 +02:00
Paul van Tilburg 9e5ade6eb9 Small refactoring 2013-07-13 22:49:41 +02:00
Paul van Tilburg afd037b95e Add the time specification to the invoice_form view; update it
Generation of a time specification appendix can be enabled for each invoice
indepently on whether it is or is not enabled for the customer.  However,
whether it is enabled by default when an invoice is created, that does
follow the setting for the customer.
2013-07-13 22:36:38 +02:00
Paul van Tilburg 7a58ae9331 Add the time specification to the customer_form view; update it
If time specifications are enabled for a customer this is considered to be
a global setting for invoices related to this customer.

Note that it will note change any of the existing voices, it will only
affect newly created ones!
2013-07-13 22:35:25 +02:00
Paul van Tilburg 17278fac98 Add specification related attributes to the Customer and Invoice model 2013-07-13 22:31:41 +02:00
Paul van Tilburg 33e5d047a0 Make the time_entry_form view also use a nested customer/task selector 2013-06-26 20:47:09 +02:00
Paul van Tilburg 62dfd04776 Replace the label hack in grouped select forms by a decent optgroup 2013-06-26 20:46:27 +02:00
Paul van Tilburg 073bf11bef Rework the project/task list in the customer_form view (closes: #9a33e4) 2013-06-26 20:23:56 +02:00
Paul van Tilburg 06c25d66c9 Move add customer button to the header 2013-06-26 20:23:03 +02:00
Paul van Tilburg 2e86eb8b27 Show "None" for absent time entry comments in the time_entries view
There needs to be some kind of placeholder the comment is the thing
to click on when clicking through to the time_entry view.
2013-06-23 22:34:57 +02:00
Paul van Tilburg 2b8d4c9111 Include jQuery 1.10.0 directly from public/
This solves all kinds of issues when deploying via HTTPS and jQuery
being retrieved via HTTP.
2013-06-23 22:34:57 +02:00
Paul van Tilburg 60e1889072 Fix missing root prefix calls for views
Because we override mab_done in StopTime::Mab, we override the functionality
in Camping::Mab that applies 'self /' on :href, :src and :action attributes
of tags.  Thus, all kinds of links don't get a root/mount prefix.
2013-06-23 22:30:05 +02:00
Paul van Tilburg 167c8d1b99 Also order unbilled tasks descending by date in the time_entries view 2013-06-22 12:58:23 +02:00
Paul van Tilburg abc35b774d Show unbilled items in timeline by default; add dropdown
This reduces the need for pagination in the timeline (refs: #a9faa0).
2013-06-20 23:07:24 +02:00
Paul van Tilburg 2278b41d97 Redirect back to referer after creating/updating time entries (closes: #f08f36) 2013-06-20 22:39:00 +02:00
Paul van Tilburg b6d3c628a1 Change default VAT rate to 21% (still overridable in the config) 2013-06-20 22:12:39 +02:00
Paul van Tilburg c982ba5925 Move task information link from date to comment in the time_entries view 2013-06-20 22:08:01 +02:00
Paul van Tilburg 7a7a4471e1 Also bill new entries by default in the task_form view 2013-06-20 22:07:20 +02:00
Paul van Tilburg 07b655c8db Set default content type to include charset=utf-8 2013-06-20 22:06:52 +02:00
Paul van Tilburg 6634eeae55 Change view headers; add useful contextual information 2013-06-20 22:06:28 +02:00
Paul van Tilburg 2dca39e38d Move container divs to the a single container div in the layout view 2013-06-20 21:15:52 +02:00
Paul van Tilburg b19a0dfee3 Enable responsive Bootstrap CSS 2013-06-20 21:15:06 +02:00
Paul van Tilburg 42b771ba16 Use a condensed form in the company_form view 2013-06-16 23:42:54 +02:00
Paul van Tilburg b5cfa7606a Remove already solved FIXME 2013-06-16 23:38:35 +02:00
Paul van Tilburg ba5fd086b5 Also color customer names based on invoice status in the overview view 2013-06-16 23:38:22 +02:00
Paul van Tilburg d359b76209 Color invoice list rows based on due status (refs: #b4b365)
What remains is to remove the hardcoding of 30 days.  This should be moved
to the config and Customer model (and then also be used in the template).
2013-06-16 23:29:33 +02:00
Paul van Tilburg dfd189d341 Add past_due methods to the Invoice model 2013-06-16 23:29:01 +02:00