Class: Nippo::Server

Inherits:
Object
  • Object
show all
Defined in:
lib/nippo/server.rb

Instance Method Summary collapse

Constructor Details

#initialize(opts) ⇒ Server



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/nippo/server.rb', line 6

def initialize(opts)
  @host = opts[:server]
  @basic_user = opts[:auth_user]
  @basic_passwd = opts[:auth_passwd]

  @login_user = opts[:login_user]
  @login_passwd = opts[:login_passwd]

  @task_code = opts[:code]
  @task_title = opts[:title]
  @task_context = opts[:context]

  @day = opts[:day].to_i < 10 ? "0#{opts[:day]}" : opts[:day]
  @month = opts[:month].to_i < 10 ? "0#{opts[:month]}" : opts[:month]
  @year = opts[:year]

  @logged_in = false
  @cookie = nil
end

Instance Method Details

#logged_in?Boolean



106
107
108
# File 'lib/nippo/server.rb', line 106

def logged_in?
  @logged_in
end

#loginObject



26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/nippo/server.rb', line 26

def 
  resp = post({
    :path => 'new_nippou/users/login',
    :data => {
      'data[User][userid]' => @login_user,
      'data[User][password]' => @login_passwd,
      'logincheck' => '',
    },
  })
  @cookie = resp.get_fields('set-cookie').map{|x| x.split(';').first}.join(';')

  # When login processin is successful, responce code 302 (Net::HTTPFound) is returned.
  @logged_in = resp.class == Net::HTTPFound
end

#set_am_taskObject



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/nippo/server.rb', line 40

def set_am_task
  post({
    :path => "new_nippou/inputs/nippou/#{@year}/#{@month}/#{@day}/#am",
    :data => {
      'data[Amtask][name]' => @task_code,
      'data[Amtask][taskcodename]' => @task_code,
      'data[Amtask][title]' => @task_title.encode('EUC-JP'),
      'data[Amtask][SH]' => '10',
      'data[Amtask][SM]' => '00',
      'data[Amtask][EH]' => '13',
      'data[Amtask][EM]' => '00',
      'data[Amtask][comment]' => @task_context.encode('EUC-JP'),
      'data[Amtask][plan]' => '',
      'data[Amtask][subject]' => '',
      'data[Amtask][opinion]' => '',
      'data[Amtask][other]' => '',
      'amregist' => '1',
      'data[Amtask][id]' => '',
    },
  })
end

#set_pm_taskObject



62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'lib/nippo/server.rb', line 62

def set_pm_task
  post({
    :path => "new_nippou/inputs/nippou/#{@year}/#{@month}/#{@day}/#pm",
    :data => {
      'data[Pmtask][name]' => @task_code,
      'data[Pmtask][taskcodename]' => @task_code,
      'data[Pmtask][title]' => @task_title.encode('EUC-JP'),
      'data[Pmtask][SH]' => '14',
      'data[Pmtask][SM]' => '00',
      'data[Pmtask][EH]' => '19',
      'data[Pmtask][EM]' => '00',
      'data[Pmtask][comment]' => @task_context.encode('EUC-JP'),
      'data[Pmtask][plan]' => '',
      'data[Pmtask][subject]' => '',
      'data[Pmtask][opinion]' => '',
      'data[Pmtask][other]' => '',
      'pmregist' => '1',
      'data[Pmtask][id]' => '',
    },
  })
end

#set_restObject



84
85
86
87
88
89
90
91
92
93
94
95
# File 'lib/nippo/server.rb', line 84

def set_rest
  post({
    :path => "new_nippou/inputs/nippou/#{@year}/#{@month}/#{@day}/#rest",
    :data => {
      'data[Rest][SH]' => '13',
      'data[Rest][SM]' => '00',
      'data[Rest][EH]' => '14',
      'data[Rest][EM]' => '00',
      'registresttime' => '登録'.encode('EUC-JP'),
    },
  })
end

#submitObject



97
98
99
100
101
102
103
104
# File 'lib/nippo/server.rb', line 97

def submit
  post({
    :path => "new_nippou/inputs/nippouend/#{@year}/#{@month}/#{@day}/",
    :data => {
      'data[Mail][memo]' => '',
    },
  })
end