Compare commits

...

18 Commits

Author SHA1 Message Date
Paul van Tilburg 8af4d4d148
Don't use UTF-8 dots in the header 2021-10-02 17:10:23 +02:00
Paul van Tilburg 39949606e5
Switch to Nokogiri 1.12.5 (addresses CVE-2021-41098) 2021-10-02 17:05:51 +02:00
Paul van Tilburg 0e74472983
Bundle update 2021-09-27 16:25:06 +02:00
Paul van Tilburg 9ba33c9b71
Switch to our own Git master of the camping gem 2021-09-27 16:08:59 +02:00
Paul van Tilburg 975ab31440 Switch to Nokogiri 1.10.4 (addresses CVE-2019-5477) 2019-08-21 19:40:08 +02:00
Paul van Tilburg 8e6fcddd49 Use Bundler in config.ru 2019-06-08 12:09:03 +02:00
Paul van Tilburg 6b7d96ecb9 Add a Gemfile that locks Camping back in time
Camping development has stalled for a few years now.
Use the Gemfile to help bundle create an environment in which it still
works, which is basically: Camping Git master plus
ActiveSupport/ActionView 4.2.
2019-06-08 12:09:01 +02:00
Paul van Tilburg 819fb5f530 Add comments to the gitignore 2019-06-08 12:08:58 +02:00
Paul van Tilburg f4c34d8e4e Fix some code wrapping; remove trailing whitespace 2019-03-31 00:12:07 +01:00
Paul van Tilburg 825387cc6f Merge tag 'v1.17.1' into development
Release 1.17.1
2018-10-15 19:59:12 +02:00
Paul van Tilburg 9d48c1ac6b Merge branch 'release/1.17.1' 2018-10-15 19:58:48 +02:00
Paul van Tilburg c5f6808e6b Update the changelog 2018-10-15 19:50:40 +02:00
Paul van Tilburg f6a412f9be Bump the version to 1.17.1 2018-10-15 19:49:38 +02:00
Paul van Tilburg d89f9ac65b Redirect to the customer after editing it
All other edit/forms redirect to the same page, why not this one?
2018-10-15 19:43:27 +02:00
Paul van Tilburg 157af0c2c3 Make the default hourly rate input field also a number field 2018-10-15 19:42:24 +02:00
Paul van Tilburg fa6aa24e0d Set minimal and step attributes for (currency) number input fields
If the step attribute not set, the default step is set to 0.50, which is
inconvient since it is also used for validation, i.e. if you have 35.50 in
the field, the only surrounding values 36.0 and 35.0 are valid, not 35.60.
2018-10-15 19:40:28 +02:00
Paul van Tilburg 548dfe22cc Update the changelog for the 0.17.0 release 2016-09-11 15:21:00 +02:00
Paul van Tilburg 1f955f55a6 Merge tag 'v1.17.0' into development
Release 1.17.0
2016-09-11 15:10:10 +02:00
9 changed files with 156 additions and 13 deletions

21
.gitignore vendored
View File

@ -1,11 +1,32 @@
# Ignore bundler config
/.bundle
# Ignore bundler installation
/vendor/bundle
# Ignore SASS and YARD cache
.sass-cache
.yardoc
# Ignore the local configuration
config.yaml
htpasswd
# Ignore the SQLite databases
db/*
# Ignore generated documentation
doc/*
# Ignore generated invoice assets
public/invoices/*
# Ignore compiled asssets
public/stylesheets/style.css
public/stylesheets/style.css.map
# Ignore custom invoice templates
templates/*_invoice.tex.erb
# Ignore temporary files
tmp/*

1
.ruby-version Normal file
View File

@ -0,0 +1 @@
2.5.1

View File

@ -1,5 +1,24 @@
= Stop… Camping Time! release news
== 1.17.1
Bugfixes:
* Fix the number/currency input to allow for all values ≥ 0.00
== 1.17.0
Features:
* Add support for choosing what date/time is used for new entries
* Some textual and style tweaks
Bugfixes:
* Fix crash when showing all entries in the timeline [#89c2a1]
Other bugfixes:
* Fix check that determines if last company info is used
== 1.16.1
Features:

18
Gemfile Normal file
View File

@ -0,0 +1,18 @@
source "http://rubygems.org"
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
# This application is build on Camping, use it from our own Git master
gem "camping", github: "paulvt/camping", branch: "master"
# Use ActionView for the templates.
gem "actionview", "~> 4.2.10"
# Use ActiveRecord as the ORM.
gem "activerecord", "~> 4.2.10"
# Use SASS for handling CSS assets/Bootstrap.
gem "sass", "~> 3.4.6"
# Use SQLite as the database.
gem "sqlite3", "~> 1.3.9"

74
Gemfile.lock Normal file
View File

@ -0,0 +1,74 @@
GIT
remote: https://github.com/paulvt/camping.git
revision: e6834563b244e0f24af2034d679cd6e8e9d932c0
branch: master
specs:
camping (2.1.602)
mab (>= 0.0.3)
rack (>= 1.0)
GEM
remote: http://rubygems.org/
specs:
actionview (4.2.11.3)
activesupport (= 4.2.11.3)
builder (~> 3.1)
erubis (~> 2.7.0)
rails-dom-testing (~> 1.0, >= 1.0.5)
rails-html-sanitizer (~> 1.0, >= 1.0.3)
activemodel (4.2.11.3)
activesupport (= 4.2.11.3)
builder (~> 3.1)
activerecord (4.2.11.3)
activemodel (= 4.2.11.3)
activesupport (= 4.2.11.3)
arel (~> 6.0)
activesupport (4.2.11.3)
i18n (~> 0.7)
minitest (~> 5.1)
thread_safe (~> 0.3, >= 0.3.4)
tzinfo (~> 1.1)
arel (6.0.4)
builder (3.2.4)
concurrent-ruby (1.1.9)
crass (1.0.6)
erubis (2.7.0)
i18n (0.9.5)
concurrent-ruby (~> 1.0)
loofah (2.12.0)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
mab (0.0.3)
mini_portile2 (2.6.1)
minitest (5.14.4)
nokogiri (1.12.5)
mini_portile2 (~> 2.6.1)
racc (~> 1.4)
racc (1.5.2)
rack (2.2.3)
rails-deprecated_sanitizer (1.0.4)
activesupport (>= 4.2.0.alpha)
rails-dom-testing (1.0.9)
activesupport (>= 4.2.0, < 5.0)
nokogiri (~> 1.6)
rails-deprecated_sanitizer (>= 1.0.1)
rails-html-sanitizer (1.4.2)
loofah (~> 2.3)
sass (3.4.25)
sqlite3 (1.3.13)
thread_safe (0.3.6)
tzinfo (1.2.9)
thread_safe (~> 0.1)
PLATFORMS
ruby
DEPENDENCIES
actionview (~> 4.2.10)
activerecord (~> 4.2.10)
camping!
sass (~> 3.4.6)
sqlite3 (~> 1.3.9)
BUNDLED WITH
1.17.3

View File

@ -39,6 +39,9 @@ and the following LaTeX programs:
* isodoc package (>= 1.00)
* rubber
It is also possible to use Bundler (which is the default when using
@config.ru@), in this you only need Ruby and Bundler installed.
== Installation
For now, Stop… Camping Time! is in a developing state and not ready for

View File

@ -1,9 +1,10 @@
#!/usr/bin/env rackup
require "bundler/setup"
require "./stoptime"
StopTime::Models::Base.establish_connection( :adapter => 'sqlite3',
:database => 'db/stoptime.db',
:timeout => 10000 )
StopTime::Models::Base.establish_connection(adapter: "sqlite3",
database: "db/stoptime.db",
timeout: 10000)
StopTime.create
run StopTime

View File

@ -55,7 +55,7 @@ end
module StopTime
# The version of the application
VERSION = '1.17.0'
VERSION = '1.17.1'
puts "Starting Stop… Camping Time! version #{VERSION}"
# @return [Hash{String=>Object}] The parsed configuration.
@ -1097,7 +1097,7 @@ module StopTime::Controllers
return render :customer_form
end
end
redirect R(Customers)
redirect R(CustomersN, customer_id)
end
end # class StopTime::Controllers::CustomersN
@ -2161,9 +2161,11 @@ module StopTime::Views
control_class: "col-sm-3 col-xs-4")
_form_input_with_label("Financial contact", "financial_contact", :text,
control_class: "col-sm-6 col-xs-8")
_form_input_with_label("Default hourly rate", "hourly_rate", :text,
_form_input_with_label("Default hourly rate", "hourly_rate", :number,
control_class: "col-sm-4 col-xs-5",
input_addon: "€ / h")
input_addon: "€ / h",
min: "0.00",
step: "0.01")
div.form_group do
label.control_label.col_sm_3.col_xs_4 "Time specifications?"
div.col_sm_6.col_xs_8 do
@ -2317,14 +2319,16 @@ module StopTime::Views
end if @task.billed?
div.row do
div.col_md_6.col_xs_12 do
form.form_horizontal.form_condensed action: R(*@target), method: :post do
form.form_horizontal.form_condensed action: R(*@target),
method: :post do
div.form_group do
label.control_label.col_sm_3.col_xs_4 "Customer", for: "customer"
div.col_sm_4.col_xs_8 do
_form_select("customer", @customer_list)
end
div.col_sm_offset_2.col_sm_3.hidden_xs do
a.btn.btn_default role: "button", href: R(CustomersN, @customer.id) do
a.btn.btn_default role: "button",
href: R(CustomersN, @customer.id) do
_icon("user")
span "Show customer"
end
@ -2339,7 +2343,8 @@ module StopTime::Views
_form_input_radio("type", "hourly_rate", true)
text!("Hourly rate: ")
div.input_group do
_form_input("hourly_rate", :number, "Hourly rate")
_form_input("hourly_rate", :number, "Hourly rate",
min: "0.00", step: "0.01")
span.input_group_addon "€ / h"
end
end
@ -2349,7 +2354,8 @@ module StopTime::Views
_form_input_radio("type", "fixed_cost")
text!("Fixed cost: ")
div.input_group do
_form_input("fixed_cost", :number, "Fixed cost")
_form_input("fixed_cost", :number, "Fixed cost",
min: "0.00", step: "0.01")
span.input_group_addon ""
end
end
@ -2753,7 +2759,7 @@ module StopTime::Views
button.btn.btn_primary "Create invoice", type: :submit,
name: "create", value: "Create invoice",
disabled: @none_found
button.btn.btn_default "Cancel", type: :submit, name: "cancel",
button.btn.btn_default "Cancel", type: :submit, name: "cancel",
value: "Cancel"
end
end

View File

@ -1,4 +1,4 @@
/* CSS file for Stop Camping Time! */
/* CSS file for Stop... Camping Time! */
/* Main elements */
html