evertils 0.0.11 → 0.1.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 299a2899225cc87b9c3b85451f832d2d4e94de7d
4
- data.tar.gz: 23f4fe1c94dfc735ecc774ec465da2b2604e10fa
3
+ metadata.gz: c3572053c074ab14819a91c5ca4001429aea18ca
4
+ data.tar.gz: d62e18f57d57d8418a699a2476b7b1705f4a448d
5
5
  SHA512:
6
- metadata.gz: f50fb1476c5275c1b34016fa04d0b16dfdc1970168a8dba475ff4d1f7a33a4f8e9887bb9f4543b8f465044949bb6501a391b4f9ada56cd16e0400d7e6d416964
7
- data.tar.gz: f4bba6eb6ea3b5aab3f2bc1ea9e7f767c1c038544131eef1aa7aa26f42d6146d5b593335b7ebcd651140323d52289cc7146d4d5d63dadf5aa50a43abe1ccc8bd
6
+ metadata.gz: eafb9f81abe04a073ad57a75d226d08a0217d0c2d085be9287a61120b1f4e0ef52bba3fd4827f2f00cff296d7f8ced5d58e7c53c69c93c73c12e9c326d48b5ea
7
+ data.tar.gz: 9e63521ac2e07d2b9543ca68a4f386fef2d37b2ee6cb2031311d5f138aa92bba7f52443abcccee7d3faa1e51caa1728b1c7b96a495b69938e6b729de57f30370
data/bin/evertils CHANGED
@@ -15,8 +15,10 @@ require 'digest/md5'
15
15
  require 'mime/types'
16
16
 
17
17
  # include required files
18
+ require_relative "../lib/kernel.rb"
18
19
  require_relative "../lib/version.rb"
19
20
  require_relative "../lib/helpers/time.rb"
21
+ require_relative "../lib/helpers/results.rb"
20
22
  require_relative "../lib/config.rb"
21
23
  require_relative "../lib/request.rb"
22
24
  require_relative "../lib/log.rb"
@@ -112,7 +112,7 @@ module Granify
112
112
  output
113
113
  end
114
114
 
115
- def note(title_filter = nil, notebook_filter = nil)
115
+ def find_note(title_filter = nil, notebook_filter = nil)
116
116
  filter = ::Evernote::EDAM::NoteStore::NoteFilter.new
117
117
  filter.words = "intitle:#{title_filter}" if title_filter
118
118
  filter.notebookGuid = notebook_filter if notebook_filter
@@ -129,8 +129,22 @@ module Granify
129
129
  end
130
130
 
131
131
  def note_exists
132
- note = note(date_templates[$request.command])
133
- note.totalNotes > 0
132
+ results = Helper::Results.new
133
+ template = date_templates[$request.command]
134
+ note = find_note(template)
135
+
136
+ # Evernote's search matches things like the following, so we have to get
137
+ # more specific
138
+ # Daily Log [July 3 - F] == Daily Log [July 10 - F]
139
+ if note.totalNotes > 0
140
+ note.notes.each do |n|
141
+ results.add(n.title != template)
142
+ end
143
+ else
144
+ results.add(false)
145
+ end
146
+
147
+ results.should_eval_to(false)
134
148
  end
135
149
 
136
150
  def create_note(title = date_templates[$request.command], body = template_contents, p_notebook_name = nil, file = nil, share_note = false)
@@ -0,0 +1,21 @@
1
+ module Granify
2
+ module Helper
3
+ class Results
4
+ attr_reader :bucket
5
+ def initialize
6
+ @bucket = []
7
+ @bucket
8
+ end
9
+
10
+ # Add a result for processing
11
+ def add(result)
12
+ @bucket.push(result.to_bool)
13
+ result.to_bool
14
+ end
15
+
16
+ def should_eval_to(pass_value)
17
+ @bucket.all? == pass_value
18
+ end
19
+ end
20
+ end
21
+ end
data/lib/kernel.rb ADDED
@@ -0,0 +1,29 @@
1
+ class String
2
+ def to_bool
3
+ return true if self == true || self =~ (/^(true|t|yes|y|1)$/i)
4
+ return false if self == false || self.blank? || self =~ (/^(false|f|no|n|0)$/i)
5
+ raise ArgumentError.new("invalid value for Boolean: \"#{self}\"")
6
+ end
7
+ end
8
+
9
+ class Fixnum
10
+ def to_bool
11
+ return true if self == 1
12
+ return false if self == 0
13
+ raise ArgumentError.new("invalid value for Boolean: \"#{self}\"")
14
+ end
15
+ end
16
+
17
+ class TrueClass
18
+ def to_i; 1; end
19
+ def to_bool; self; end
20
+ end
21
+
22
+ class FalseClass
23
+ def to_i; 0; end
24
+ def to_bool; self; end
25
+ end
26
+
27
+ class NilClass
28
+ def to_bool; false; end
29
+ end
data/lib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Granify
2
- VERSION = '0.0.11'
2
+ VERSION = '0.1.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: evertils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.11
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Priebe
@@ -41,7 +41,9 @@ files:
41
41
  - lib/helpers/evernote-markdown.rb
42
42
  - lib/helpers/evernote.rb
43
43
  - lib/helpers/generate.rb
44
+ - lib/helpers/results.rb
44
45
  - lib/helpers/time.rb
46
+ - lib/kernel.rb
45
47
  - lib/log.rb
46
48
  - lib/logs.rb
47
49
  - lib/model.rb