Class: Statcounter::Projects

Inherits:
Object
  • Object
show all
Defined in:
lib/statcounter/projects.rb

Class Method Summary collapse

Class Method Details

.all(credentials: nil) ⇒ Object



3
4
5
6
# File 'lib/statcounter/projects.rb', line 3

def self.all(credentials: nil)
  response = Statcounter.client.get('user_projects', credentials: credentials)
  response[:sc_data]
end

.create(project_name:, url:, public_stats: false, timezone: Statcounter.config.timezone, credentials: nil) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
# File 'lib/statcounter/projects.rb', line 14

def self.create(project_name:, url:, public_stats: false, timezone: Statcounter.config.timezone, credentials: nil)
  params = {
    wt: project_name,
    wu: url,
    ps: public_stats ? 1 : 0,
    tz: timezone,
  }

  response = Statcounter.client.get('add_project', params: params, credentials: credentials)
  response[:sc_data][0]
end

.delete(project_id:, admin_username:, admin_password:, credentials: nil) ⇒ Object



26
27
28
29
30
31
32
33
34
35
# File 'lib/statcounter/projects.rb', line 26

def self.delete(project_id:, admin_username:, admin_password:, credentials: nil)
  params = {
    pi: project_id,
    u: admin_username,
    up: admin_password,
  }

  response = Statcounter.client.get('remove_project', params: params, credentials: credentials)
  response[:@attributes][:status]
end

.find(project_ids, credentials: nil) ⇒ Object



8
9
10
11
12
# File 'lib/statcounter/projects.rb', line 8

def self.find(project_ids, credentials: nil)
  params = { pi: project_ids }
  response = Statcounter.client.get('select_project', params: params, credentials: credentials)
  response[:sc_data].size > 1 ? response[:sc_data] : response[:sc_data][0]
end