togman 0.1 → 0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. data/bin/togman +25 -22
  2. data/lib/toggl.rb +1 -1
  3. metadata +18 -21
data/bin/togman CHANGED
@@ -1,58 +1,61 @@
1
1
  #!/usr/bin/env ruby
2
2
  require "rubygems"
3
3
  require "patron"
4
- require "pp"
5
4
  require "json"
6
5
  require 'savon'
7
6
  require 'highline/import'
8
- require 'trollop'
9
7
  require 'yaml'
10
8
 
11
9
  require 'toggl.rb'
12
10
  require 'mantis.rb'
13
11
 
12
+ def display_time t
13
+ total = 0
14
+ puts "\n"
15
+ t.today.each do |ims, data|
16
+ data.each do |item|
17
+ puts ims.to_s + " " + item[:desc] + " " + item[:duration].to_s + "m (" + item[:orig].to_s + "m logged)"
18
+ total += item[:duration]
19
+ end
20
+ end
21
+ puts "TOTAL: " + total.to_s
22
+ end
23
+
14
24
  configfile = ENV['HOME'] + '/.togmanrc'
15
- if !File.file? configfile
25
+ if !File.file? configfile
16
26
  puts 'Cannot open ' + configfile
17
27
  exit
18
28
  end
19
29
 
20
30
  config = YAML::load_file configfile
21
- pp config
22
31
 
23
32
  Savon.configure do |setting|
24
33
  setting.log = false # disable logging
25
34
  # config.log_level = :info # changing the log level
26
35
  end
27
36
 
28
- opts = Trollop::options do
29
- opt :dryrun, "Preview time to be logged without saving to Mantis", :short => 'd'
30
- end
37
+ t = Toggl.new config['toggl_api_key'], config['nonbill']
38
+
39
+ display_time t
31
40
 
32
- if !opts.dryrun
33
- pass = ask('Password:') {|q| q.echo = '*'}
41
+ puts "\nEnter your Mantis password to log this time (Blank exits)"
42
+ pass = ask('Password:') {|q| q.echo = '*'}
43
+
44
+ if pass == ""
45
+ exit
34
46
  end
35
47
 
36
- t = Toggl.new config['toggl_api_key'], config['nonbill']
37
48
  m = Mantis.new config['user'], pass, config['mantis_url']
38
49
 
39
- if !opts.dryrun
40
- t.today.each do |ims, data|
41
- if !m.issue_exists ims
42
- raise "Issue not found #{ims}"
43
- end
50
+ t.today.each do |ims, data|
51
+ if !m.issue_exists ims
52
+ raise "Issue not found #{ims}"
44
53
  end
45
54
  end
46
55
 
47
- total = 0
48
56
  free = []
49
57
  t.today.each do |ims, data|
50
58
  data.each do |item|
51
- if !opts.dryrun
52
- m.add_note ims, item[:desc], item[:duration]
53
- end
54
- p ims.to_s + " " + item[:desc] + " " + item[:duration].to_s + " " + item[:orig].to_s
55
- total += item[:duration]
59
+ m.add_note ims, item[:desc], item[:duration]
56
60
  end
57
61
  end
58
- p "TOTAL: " + total.to_s
@@ -48,8 +48,8 @@ class Toggl
48
48
  # round the final note???
49
49
 
50
50
  free = false
51
- if !@nonbill.member? ims.to_i
52
51
  orig = duration
52
+ if !@nonbill.member? ims.to_i
53
53
  duration = ((duration.to_f/10).ceil*10).round
54
54
  free = true
55
55
  end
metadata CHANGED
@@ -1,11 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: togman
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
4
+ hash: 15
5
+ prerelease:
5
6
  segments:
6
7
  - 0
7
- - 1
8
- version: "0.1"
8
+ - 2
9
+ version: "0.2"
9
10
  platform: ruby
10
11
  authors:
11
12
  - Benjamin Johnson
@@ -13,16 +14,17 @@ autorequire:
13
14
  bindir: bin
14
15
  cert_chain: []
15
16
 
16
- date: 2011-10-03 00:00:00 +01:00
17
- default_executable: bin/togman
17
+ date: 2011-10-24 00:00:00 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: patron
21
21
  prerelease: false
22
22
  requirement: &id001 !ruby/object:Gem::Requirement
23
+ none: false
23
24
  requirements:
24
25
  - - ">="
25
26
  - !ruby/object:Gem::Version
27
+ hash: 47
26
28
  segments:
27
29
  - 0
28
30
  - 4
@@ -34,9 +36,11 @@ dependencies:
34
36
  name: json
35
37
  prerelease: false
36
38
  requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
37
40
  requirements:
38
41
  - - ">="
39
42
  - !ruby/object:Gem::Version
43
+ hash: 13
40
44
  segments:
41
45
  - 1
42
46
  - 6
@@ -48,9 +52,11 @@ dependencies:
48
52
  name: savon
49
53
  prerelease: false
50
54
  requirement: &id003 !ruby/object:Gem::Requirement
55
+ none: false
51
56
  requirements:
52
57
  - - ">="
53
58
  - !ruby/object:Gem::Version
59
+ hash: 53
54
60
  segments:
55
61
  - 0
56
62
  - 9
@@ -62,9 +68,11 @@ dependencies:
62
68
  name: highline
63
69
  prerelease: false
64
70
  requirement: &id004 !ruby/object:Gem::Requirement
71
+ none: false
65
72
  requirements:
66
73
  - - ">="
67
74
  - !ruby/object:Gem::Version
75
+ hash: 11
68
76
  segments:
69
77
  - 1
70
78
  - 6
@@ -72,20 +80,6 @@ dependencies:
72
80
  version: 1.6.2
73
81
  type: :runtime
74
82
  version_requirements: *id004
75
- - !ruby/object:Gem::Dependency
76
- name: trollop
77
- prerelease: false
78
- requirement: &id005 !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- segments:
83
- - 1
84
- - 16
85
- - 2
86
- version: 1.16.2
87
- type: :runtime
88
- version_requirements: *id005
89
83
  description: ""
90
84
  email:
91
85
  - ben@benpjohnson.com
@@ -99,7 +93,6 @@ files:
99
93
  - bin/togman
100
94
  - lib/mantis.rb
101
95
  - lib/toggl.rb
102
- has_rdoc: true
103
96
  homepage: http://benpjohnson.com
104
97
  licenses: []
105
98
 
@@ -109,16 +102,20 @@ rdoc_options: []
109
102
  require_paths:
110
103
  - lib
111
104
  required_ruby_version: !ruby/object:Gem::Requirement
105
+ none: false
112
106
  requirements:
113
107
  - - ">="
114
108
  - !ruby/object:Gem::Version
109
+ hash: 3
115
110
  segments:
116
111
  - 0
117
112
  version: "0"
118
113
  required_rubygems_version: !ruby/object:Gem::Requirement
114
+ none: false
119
115
  requirements:
120
116
  - - ">="
121
117
  - !ruby/object:Gem::Version
118
+ hash: 23
122
119
  segments:
123
120
  - 1
124
121
  - 3
@@ -127,7 +124,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
127
124
  requirements: []
128
125
 
129
126
  rubyforge_project:
130
- rubygems_version: 1.3.6
127
+ rubygems_version: 1.8.11
131
128
  signing_key:
132
129
  specification_version: 3
133
130
  summary: Transfer time from Toggl to Mantis