Module: TogglParameter

Includes:
TogglEntriesParameter, TogglSendParameter
Included in:
SimpleSlack::Toggl
Defined in:
lib/simple_slack/toggls/toggl_parameter.rb

Instance Method Summary collapse

Methods included from TogglSendParameter

#send_after_noon_message, #send_dailyreport_message, #send_morning_message, #send_night_message, #send_noon_message, #send_regular_message

Methods included from TogglEntriesParameter

#day_entries, #entries, #entry_info, #entry_info_hash, #latest_entry, #working_entry

Instance Method Details

#project(id: nil, name: nil) ⇒ Object



29
30
31
32
33
34
35
36
37
# File 'lib/simple_slack/toggls/toggl_parameter.rb', line 29

def project(id: nil, name: nil)
  if id
    projects.find{ |project| project["id"] == id }
  elsif name
    projects.find{ |project| project["name"] == name }
  else
    projects.first
  end
end

#projectsObject



25
26
27
# File 'lib/simple_slack/toggls/toggl_parameter.rb', line 25

def projects
  @projects ||= toggl_client.my_projects
end

#tag(id: nil, name: nil) ⇒ Object



43
44
45
46
47
48
49
50
51
# File 'lib/simple_slack/toggls/toggl_parameter.rb', line 43

def tag(id: nil, name: nil)
  if id
    tags.find{ |tag| tag["id"] == id }
  elsif name
    tags.find{ |tag| tag["name"] == name }
  else
    tags.first
  end
end

#tagsObject



39
40
41
# File 'lib/simple_slack/toggls/toggl_parameter.rb', line 39

def tags
  @tags ||= toggl_client.my_tags
end

#userObject



7
8
9
# File 'lib/simple_slack/toggls/toggl_parameter.rb', line 7

def user
  @user ||= toggl_client.me
end

#workspace(id: nil, name: nil) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/simple_slack/toggls/toggl_parameter.rb', line 15

def workspace(id: nil, name: nil)
  if id
    workspaces.find{ |work| work["id"] == id }
  elsif name
    workspaces.find{ |work| work["name"] == name }
  else
    workspaces.first
  end
end

#workspacesObject



11
12
13
# File 'lib/simple_slack/toggls/toggl_parameter.rb', line 11

def workspaces
  @workspaces ||= toggl_client.my_workspaces(user)
end