device-tracker 0.2.2 → 0.2.3

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 (125) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -1
  3. data/.rspec +2 -0
  4. data/Readme.md +1 -0
  5. data/bin/console +1 -1
  6. data/device-tracker.gemspec +8 -2
  7. data/exe/device-tracker +48 -9
  8. data/lib/device_tracker/app.rb +21 -0
  9. data/lib/{device/tracker → device_tracker}/config-schema.json +0 -0
  10. data/lib/{device/tracker → device_tracker}/config.ru +0 -0
  11. data/lib/device_tracker/controllers/application_controller.rb +220 -0
  12. data/lib/device_tracker/controllers/devices_controller.rb +313 -0
  13. data/lib/device_tracker/controllers/heartbeat_controller.rb +54 -0
  14. data/lib/device_tracker/controllers/os_controller.rb +41 -0
  15. data/lib/device_tracker/controllers/transactions_controller.rb +19 -0
  16. data/lib/device_tracker/controllers/users_controller.rb +191 -0
  17. data/lib/{device/tracker → device_tracker}/db/migrate/20150521071815_create_users.rb +0 -0
  18. data/lib/{device/tracker → device_tracker}/db/migrate/20150521082155_create_devices.rb +0 -0
  19. data/lib/{device/tracker → device_tracker}/db/migrate/20150521120335_create_operating_systems.rb +0 -0
  20. data/lib/{device/tracker → device_tracker}/db/migrate/20150527162242_create_transactions.rb +0 -0
  21. data/lib/{device/tracker → device_tracker}/db/migrate/20151027073050_create_heartbeat.rb +0 -0
  22. data/lib/{device/tracker → device_tracker}/db/migrate/20151028132946_add_user_verification.rb +0 -0
  23. data/lib/{device/tracker → device_tracker}/db/migrate/20151028141328_remove_is_active_from_users.rb +0 -0
  24. data/lib/{device/tracker → device_tracker}/db/migrate/20151029085629_add_password_reset_code_to_users.rb +0 -0
  25. data/lib/{device/tracker → device_tracker}/db/migrate/20151030130341_add_missing_column_to_devices.rb +0 -0
  26. data/lib/{device/tracker → device_tracker}/db/migrate/20151102141601_add_serial_number_to_devices.rb +0 -0
  27. data/lib/{device/tracker → device_tracker}/db/schema.rb +0 -0
  28. data/lib/device_tracker/db/seeds.rb +46 -0
  29. data/lib/{device/tracker → device_tracker}/dependencies.rb +0 -1
  30. data/lib/device_tracker/device_tracker.rb +17 -0
  31. data/lib/device_tracker/helpers/application_helper.rb +82 -0
  32. data/lib/device_tracker/models/device.rb +35 -0
  33. data/lib/device_tracker/models/heartbeat.rb +7 -0
  34. data/lib/device_tracker/models/operating_system.rb +6 -0
  35. data/lib/device_tracker/models/transaction.rb +54 -0
  36. data/lib/device_tracker/models/user.rb +20 -0
  37. data/lib/{device/tracker → device_tracker}/public/css/bootstrap-sortable.css +0 -0
  38. data/lib/{device/tracker → device_tracker}/public/css/bootstrap.min.css +0 -0
  39. data/lib/{device/tracker → device_tracker}/public/css/custom.css +0 -0
  40. data/lib/{device/tracker → device_tracker}/public/favicon.png +0 -0
  41. data/lib/{device/tracker → device_tracker}/public/favicon/android-chrome-144x144.png +0 -0
  42. data/lib/{device/tracker → device_tracker}/public/favicon/android-chrome-192x192.png +0 -0
  43. data/lib/{device/tracker → device_tracker}/public/favicon/android-chrome-36x36.png +0 -0
  44. data/lib/{device/tracker → device_tracker}/public/favicon/android-chrome-48x48.png +0 -0
  45. data/lib/{device/tracker → device_tracker}/public/favicon/android-chrome-72x72.png +0 -0
  46. data/lib/{device/tracker → device_tracker}/public/favicon/android-chrome-96x96.png +0 -0
  47. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-114x114.png +0 -0
  48. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-120x120.png +0 -0
  49. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-144x144.png +0 -0
  50. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-152x152.png +0 -0
  51. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-180x180.png +0 -0
  52. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-57x57.png +0 -0
  53. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-60x60.png +0 -0
  54. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-72x72.png +0 -0
  55. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-76x76.png +0 -0
  56. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon-precomposed.png +0 -0
  57. data/lib/{device/tracker → device_tracker}/public/favicon/apple-touch-icon.png +0 -0
  58. data/lib/{device/tracker → device_tracker}/public/favicon/browserconfig.xml +0 -0
  59. data/lib/{device/tracker → device_tracker}/public/favicon/favicon-16x16.png +0 -0
  60. data/lib/{device/tracker → device_tracker}/public/favicon/favicon-32x32.png +0 -0
  61. data/lib/{device/tracker → device_tracker}/public/favicon/favicon-96x96.png +0 -0
  62. data/lib/{device/tracker → device_tracker}/public/favicon/favicon.ico +0 -0
  63. data/lib/{device/tracker → device_tracker}/public/favicon/manifest.json +0 -0
  64. data/lib/{device/tracker → device_tracker}/public/favicon/mstile-144x144.png +0 -0
  65. data/lib/{device/tracker → device_tracker}/public/favicon/mstile-150x150.png +0 -0
  66. data/lib/{device/tracker → device_tracker}/public/favicon/mstile-310x150.png +0 -0
  67. data/lib/{device/tracker → device_tracker}/public/favicon/mstile-310x310.png +0 -0
  68. data/lib/{device/tracker → device_tracker}/public/favicon/mstile-70x70.png +0 -0
  69. data/lib/{device/tracker → device_tracker}/public/favicon/safari-pinned-tab.svg +0 -0
  70. data/lib/{device/tracker → device_tracker}/public/fonts/glyphicons-halflings-regular.eot +0 -0
  71. data/lib/{device/tracker → device_tracker}/public/fonts/glyphicons-halflings-regular.svg +0 -0
  72. data/lib/{device/tracker → device_tracker}/public/fonts/glyphicons-halflings-regular.ttf +0 -0
  73. data/lib/{device/tracker → device_tracker}/public/fonts/glyphicons-halflings-regular.woff +0 -0
  74. data/lib/{device/tracker → device_tracker}/public/fonts/glyphicons-halflings-regular.woff2 +0 -0
  75. data/lib/{device/tracker → device_tracker}/public/js/bootstrap-sortable.js +0 -0
  76. data/lib/{device/tracker → device_tracker}/public/js/bootstrap.min.js +0 -0
  77. data/lib/{device/tracker → device_tracker}/public/js/jquery-2.1.4.min.js +0 -0
  78. data/lib/device_tracker/version.rb +3 -0
  79. data/lib/{device/tracker → device_tracker}/views/404.erb +0 -0
  80. data/lib/{device/tracker → device_tracker}/views/_alert.erb +0 -0
  81. data/lib/{device/tracker → device_tracker}/views/_device_form.erb +0 -0
  82. data/lib/{device/tracker → device_tracker}/views/_device_list.erb +0 -0
  83. data/lib/{device/tracker → device_tracker}/views/_footer.erb +0 -0
  84. data/lib/{device/tracker → device_tracker}/views/_header.erb +0 -0
  85. data/lib/{device/tracker → device_tracker}/views/_heartbeat_list.erb +0 -0
  86. data/lib/{device/tracker → device_tracker}/views/_user_form.erb +0 -0
  87. data/lib/{device/tracker → device_tracker}/views/devices/edit.erb +0 -0
  88. data/lib/{device/tracker → device_tracker}/views/devices/index.erb +0 -0
  89. data/lib/{device/tracker → device_tracker}/views/devices/new.erb +0 -0
  90. data/lib/{device/tracker → device_tracker}/views/devices/show.erb +0 -0
  91. data/lib/{device/tracker → device_tracker}/views/devices/users.erb +0 -0
  92. data/lib/{device/tracker → device_tracker}/views/emails/new_password.erb +0 -0
  93. data/lib/{device/tracker → device_tracker}/views/emails/password_reset.erb +0 -0
  94. data/lib/{device/tracker → device_tracker}/views/emails/registration.erb +0 -0
  95. data/lib/{device/tracker → device_tracker}/views/emails/reminder.erb +0 -0
  96. data/lib/{device/tracker → device_tracker}/views/emails/verification.erb +0 -0
  97. data/lib/{device/tracker → device_tracker}/views/forgot_password.erb +0 -0
  98. data/lib/{device/tracker → device_tracker}/views/index.erb +0 -0
  99. data/lib/{device/tracker → device_tracker}/views/layout.erb +0 -0
  100. data/lib/{device/tracker → device_tracker}/views/login.erb +0 -0
  101. data/lib/{device/tracker → device_tracker}/views/operating_system/operating_systems.json.jbuilder +0 -0
  102. data/lib/{device/tracker → device_tracker}/views/os/manage.erb +0 -0
  103. data/lib/{device/tracker → device_tracker}/views/transactions/_transactions_list.erb +0 -0
  104. data/lib/{device/tracker → device_tracker}/views/transactions/index.erb +0 -0
  105. data/lib/{device/tracker → device_tracker}/views/users/edit.erb +0 -0
  106. data/lib/{device/tracker → device_tracker}/views/users/manage.erb +0 -0
  107. data/lib/{device/tracker → device_tracker}/views/users/new.erb +0 -0
  108. metadata +187 -103
  109. data/lib/device/tracker.rb +0 -19
  110. data/lib/device/tracker/app.rb +0 -25
  111. data/lib/device/tracker/controllers/application_controller.rb +0 -215
  112. data/lib/device/tracker/controllers/devices_controller.rb +0 -315
  113. data/lib/device/tracker/controllers/heartbeat_controller.rb +0 -55
  114. data/lib/device/tracker/controllers/os_controller.rb +0 -43
  115. data/lib/device/tracker/controllers/transactions_controller.rb +0 -21
  116. data/lib/device/tracker/controllers/users_controller.rb +0 -193
  117. data/lib/device/tracker/db/data/devices.xlsx +0 -0
  118. data/lib/device/tracker/db/seeds.rb +0 -25
  119. data/lib/device/tracker/helpers/application_helper.rb +0 -84
  120. data/lib/device/tracker/models/device.rb +0 -39
  121. data/lib/device/tracker/models/heartbeat.rb +0 -9
  122. data/lib/device/tracker/models/operating_system.rb +0 -8
  123. data/lib/device/tracker/models/transaction.rb +0 -56
  124. data/lib/device/tracker/models/user.rb +0 -22
  125. data/lib/device/tracker/version.rb +0 -5
@@ -0,0 +1,35 @@
1
+ require 'date'
2
+
3
+ module DeviceTracker
4
+ class Device < ActiveRecord::Base
5
+ belongs_to :operating_system
6
+ belongs_to :user
7
+
8
+ has_many :transactions
9
+ has_many :heartbeats
10
+
11
+ validates :unid, :manufacturer, :device, :description, :operating_system, presence: true
12
+
13
+ validates :unid, uniqueness: true
14
+
15
+ def unid=(unid)
16
+ self[:unid] = unid.upcase
17
+ end
18
+
19
+ def full_name
20
+ self[:manufacturer] + ' ' + self[:device]
21
+ end
22
+
23
+ def passed_use_by_date?
24
+ (!self[:available] && (Time.now - self[:checked_out_since]).to_i / 1.day >= 3)
25
+ end
26
+
27
+ def checked_out_since_formatted
28
+ self[:checked_out_since].strftime('%A, %d %B %Y at %I:%M%p')
29
+ end
30
+
31
+ def days_checked_out
32
+ (Time.now.to_date - self[:checked_out_since].to_date).floor
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,7 @@
1
+ module DeviceTracker
2
+ class Heartbeat < ActiveRecord::Base
3
+ validates :longitude, :latitude, :device_id, presence: true
4
+
5
+ belongs_to :device
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+ module DeviceTracker
2
+ class OperatingSystem < ActiveRecord::Base
3
+ validates :name, presence: true, uniqueness: true
4
+ has_many :devices
5
+ end
6
+ end
@@ -0,0 +1,54 @@
1
+ require "date"
2
+
3
+ module DeviceTracker
4
+ class Transaction < ActiveRecord::Base
5
+
6
+ belongs_to :user
7
+ belongs_to :device
8
+
9
+ validates :transaction_type, :description, presence: true
10
+ validates :transaction_type, inclusion: { in: %w(CHECKOUT RETURN REGISTRATION LOGIN ACTIVATE DEACTIVATE DELETION MISSING FOUND),
11
+ message: "%{value} is not a valid transaction." }
12
+
13
+ def created_at
14
+ self[:created_at].strftime("%a %d %b %Y at %H:%M:%S")
15
+ end
16
+
17
+ def self.missing
18
+ "MISSING"
19
+ end
20
+
21
+ def self.found
22
+ "FOUND"
23
+ end
24
+
25
+ def self.activate
26
+ "ACTIVATE"
27
+ end
28
+
29
+ def self.deactivate
30
+ "DEACTIVATE"
31
+ end
32
+
33
+ def self.checkout
34
+ "CHECKOUT"
35
+ end
36
+
37
+ def self.return
38
+ "RETURN"
39
+ end
40
+
41
+ def self.registration
42
+ "REGISTRATION"
43
+ end
44
+
45
+ def self.login
46
+ "LOGIN"
47
+ end
48
+
49
+ def self.deletion
50
+ "DELETION"
51
+ end
52
+
53
+ end
54
+ end
@@ -0,0 +1,20 @@
1
+ require 'bcrypt'
2
+
3
+ module DeviceTracker
4
+ class User < ActiveRecord::Base
5
+ has_secure_password
6
+ has_many :devices
7
+ has_many :transactions
8
+ validates :username, :name, :email, presence: true
9
+ validates :password, :presence => { :if => :password_required? }
10
+ validates_format_of :email, :with => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i, :on => :create
11
+ validates :username, uniqueness: true
12
+ validates :email, uniqueness: true
13
+ validates_confirmation_of :password
14
+
15
+ protected
16
+ def password_required?
17
+ self.new_record?
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,3 @@
1
+ module DeviceTracker
2
+ VERSION = "0.2.3"
3
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: device-tracker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Ruston
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2015-11-13 00:00:00.000000000 Z
12
+ date: 2015-11-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -81,6 +81,76 @@ dependencies:
81
81
  - - "~>"
82
82
  - !ruby/object:Gem::Version
83
83
  version: '8.1'
84
+ - !ruby/object:Gem::Dependency
85
+ name: nyan-cat-formatter
86
+ requirement: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ type: :development
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ - !ruby/object:Gem::Dependency
99
+ name: capybara
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: '0'
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
112
+ - !ruby/object:Gem::Dependency
113
+ name: poltergeist
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ version: '0'
119
+ type: :development
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: database_cleaner
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
140
+ - !ruby/object:Gem::Dependency
141
+ name: factory_girl
142
+ requirement: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ type: :development
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
84
154
  - !ruby/object:Gem::Dependency
85
155
  name: sinatra
86
156
  requirement: !ruby/object:Gem::Requirement
@@ -277,6 +347,20 @@ dependencies:
277
347
  - - "~>"
278
348
  - !ruby/object:Gem::Version
279
349
  version: '2.5'
350
+ - !ruby/object:Gem::Dependency
351
+ name: faker
352
+ requirement: !ruby/object:Gem::Requirement
353
+ requirements:
354
+ - - ">="
355
+ - !ruby/object:Gem::Version
356
+ version: '0'
357
+ type: :runtime
358
+ prerelease: false
359
+ version_requirements: !ruby/object:Gem::Requirement
360
+ requirements:
361
+ - - ">="
362
+ - !ruby/object:Gem::Version
363
+ version: '0'
280
364
  description: "\n Keep track of your devices.\n Features: - User registration/login/validation\n
281
365
  \ - User levels (normal/admin)\n - Checkout devices\n -
282
366
  Return devices\n - Assign devices to someone (Admin only)\n -
@@ -293,6 +377,7 @@ extensions: []
293
377
  extra_rdoc_files: []
294
378
  files:
295
379
  - ".gitignore"
380
+ - ".rspec"
296
381
  - Gemfile
297
382
  - Rakefile
298
383
  - Readme.md
@@ -300,107 +385,106 @@ files:
300
385
  - bin/setup
301
386
  - device-tracker.gemspec
302
387
  - exe/device-tracker
303
- - lib/device/tracker.rb
304
- - lib/device/tracker/app.rb
305
- - lib/device/tracker/config-schema.json
306
- - lib/device/tracker/config.ru
307
- - lib/device/tracker/controllers/application_controller.rb
308
- - lib/device/tracker/controllers/devices_controller.rb
309
- - lib/device/tracker/controllers/heartbeat_controller.rb
310
- - lib/device/tracker/controllers/os_controller.rb
311
- - lib/device/tracker/controllers/transactions_controller.rb
312
- - lib/device/tracker/controllers/users_controller.rb
313
- - lib/device/tracker/db/data/devices.xlsx
314
- - lib/device/tracker/db/migrate/20150521071815_create_users.rb
315
- - lib/device/tracker/db/migrate/20150521082155_create_devices.rb
316
- - lib/device/tracker/db/migrate/20150521120335_create_operating_systems.rb
317
- - lib/device/tracker/db/migrate/20150527162242_create_transactions.rb
318
- - lib/device/tracker/db/migrate/20151027073050_create_heartbeat.rb
319
- - lib/device/tracker/db/migrate/20151028132946_add_user_verification.rb
320
- - lib/device/tracker/db/migrate/20151028141328_remove_is_active_from_users.rb
321
- - lib/device/tracker/db/migrate/20151029085629_add_password_reset_code_to_users.rb
322
- - lib/device/tracker/db/migrate/20151030130341_add_missing_column_to_devices.rb
323
- - lib/device/tracker/db/migrate/20151102141601_add_serial_number_to_devices.rb
324
- - lib/device/tracker/db/schema.rb
325
- - lib/device/tracker/db/seeds.rb
326
- - lib/device/tracker/dependencies.rb
327
- - lib/device/tracker/helpers/application_helper.rb
328
- - lib/device/tracker/models/device.rb
329
- - lib/device/tracker/models/heartbeat.rb
330
- - lib/device/tracker/models/operating_system.rb
331
- - lib/device/tracker/models/transaction.rb
332
- - lib/device/tracker/models/user.rb
333
- - lib/device/tracker/public/css/bootstrap-sortable.css
334
- - lib/device/tracker/public/css/bootstrap.min.css
335
- - lib/device/tracker/public/css/custom.css
336
- - lib/device/tracker/public/favicon.png
337
- - lib/device/tracker/public/favicon/android-chrome-144x144.png
338
- - lib/device/tracker/public/favicon/android-chrome-192x192.png
339
- - lib/device/tracker/public/favicon/android-chrome-36x36.png
340
- - lib/device/tracker/public/favicon/android-chrome-48x48.png
341
- - lib/device/tracker/public/favicon/android-chrome-72x72.png
342
- - lib/device/tracker/public/favicon/android-chrome-96x96.png
343
- - lib/device/tracker/public/favicon/apple-touch-icon-114x114.png
344
- - lib/device/tracker/public/favicon/apple-touch-icon-120x120.png
345
- - lib/device/tracker/public/favicon/apple-touch-icon-144x144.png
346
- - lib/device/tracker/public/favicon/apple-touch-icon-152x152.png
347
- - lib/device/tracker/public/favicon/apple-touch-icon-180x180.png
348
- - lib/device/tracker/public/favicon/apple-touch-icon-57x57.png
349
- - lib/device/tracker/public/favicon/apple-touch-icon-60x60.png
350
- - lib/device/tracker/public/favicon/apple-touch-icon-72x72.png
351
- - lib/device/tracker/public/favicon/apple-touch-icon-76x76.png
352
- - lib/device/tracker/public/favicon/apple-touch-icon-precomposed.png
353
- - lib/device/tracker/public/favicon/apple-touch-icon.png
354
- - lib/device/tracker/public/favicon/browserconfig.xml
355
- - lib/device/tracker/public/favicon/favicon-16x16.png
356
- - lib/device/tracker/public/favicon/favicon-32x32.png
357
- - lib/device/tracker/public/favicon/favicon-96x96.png
358
- - lib/device/tracker/public/favicon/favicon.ico
359
- - lib/device/tracker/public/favicon/manifest.json
360
- - lib/device/tracker/public/favicon/mstile-144x144.png
361
- - lib/device/tracker/public/favicon/mstile-150x150.png
362
- - lib/device/tracker/public/favicon/mstile-310x150.png
363
- - lib/device/tracker/public/favicon/mstile-310x310.png
364
- - lib/device/tracker/public/favicon/mstile-70x70.png
365
- - lib/device/tracker/public/favicon/safari-pinned-tab.svg
366
- - lib/device/tracker/public/fonts/glyphicons-halflings-regular.eot
367
- - lib/device/tracker/public/fonts/glyphicons-halflings-regular.svg
368
- - lib/device/tracker/public/fonts/glyphicons-halflings-regular.ttf
369
- - lib/device/tracker/public/fonts/glyphicons-halflings-regular.woff
370
- - lib/device/tracker/public/fonts/glyphicons-halflings-regular.woff2
371
- - lib/device/tracker/public/js/bootstrap-sortable.js
372
- - lib/device/tracker/public/js/bootstrap.min.js
373
- - lib/device/tracker/public/js/jquery-2.1.4.min.js
374
- - lib/device/tracker/version.rb
375
- - lib/device/tracker/views/404.erb
376
- - lib/device/tracker/views/_alert.erb
377
- - lib/device/tracker/views/_device_form.erb
378
- - lib/device/tracker/views/_device_list.erb
379
- - lib/device/tracker/views/_footer.erb
380
- - lib/device/tracker/views/_header.erb
381
- - lib/device/tracker/views/_heartbeat_list.erb
382
- - lib/device/tracker/views/_user_form.erb
383
- - lib/device/tracker/views/devices/edit.erb
384
- - lib/device/tracker/views/devices/index.erb
385
- - lib/device/tracker/views/devices/new.erb
386
- - lib/device/tracker/views/devices/show.erb
387
- - lib/device/tracker/views/devices/users.erb
388
- - lib/device/tracker/views/emails/new_password.erb
389
- - lib/device/tracker/views/emails/password_reset.erb
390
- - lib/device/tracker/views/emails/registration.erb
391
- - lib/device/tracker/views/emails/reminder.erb
392
- - lib/device/tracker/views/emails/verification.erb
393
- - lib/device/tracker/views/forgot_password.erb
394
- - lib/device/tracker/views/index.erb
395
- - lib/device/tracker/views/layout.erb
396
- - lib/device/tracker/views/login.erb
397
- - lib/device/tracker/views/operating_system/operating_systems.json.jbuilder
398
- - lib/device/tracker/views/os/manage.erb
399
- - lib/device/tracker/views/transactions/_transactions_list.erb
400
- - lib/device/tracker/views/transactions/index.erb
401
- - lib/device/tracker/views/users/edit.erb
402
- - lib/device/tracker/views/users/manage.erb
403
- - lib/device/tracker/views/users/new.erb
388
+ - lib/device_tracker/app.rb
389
+ - lib/device_tracker/config-schema.json
390
+ - lib/device_tracker/config.ru
391
+ - lib/device_tracker/controllers/application_controller.rb
392
+ - lib/device_tracker/controllers/devices_controller.rb
393
+ - lib/device_tracker/controllers/heartbeat_controller.rb
394
+ - lib/device_tracker/controllers/os_controller.rb
395
+ - lib/device_tracker/controllers/transactions_controller.rb
396
+ - lib/device_tracker/controllers/users_controller.rb
397
+ - lib/device_tracker/db/migrate/20150521071815_create_users.rb
398
+ - lib/device_tracker/db/migrate/20150521082155_create_devices.rb
399
+ - lib/device_tracker/db/migrate/20150521120335_create_operating_systems.rb
400
+ - lib/device_tracker/db/migrate/20150527162242_create_transactions.rb
401
+ - lib/device_tracker/db/migrate/20151027073050_create_heartbeat.rb
402
+ - lib/device_tracker/db/migrate/20151028132946_add_user_verification.rb
403
+ - lib/device_tracker/db/migrate/20151028141328_remove_is_active_from_users.rb
404
+ - lib/device_tracker/db/migrate/20151029085629_add_password_reset_code_to_users.rb
405
+ - lib/device_tracker/db/migrate/20151030130341_add_missing_column_to_devices.rb
406
+ - lib/device_tracker/db/migrate/20151102141601_add_serial_number_to_devices.rb
407
+ - lib/device_tracker/db/schema.rb
408
+ - lib/device_tracker/db/seeds.rb
409
+ - lib/device_tracker/dependencies.rb
410
+ - lib/device_tracker/device_tracker.rb
411
+ - lib/device_tracker/helpers/application_helper.rb
412
+ - lib/device_tracker/models/device.rb
413
+ - lib/device_tracker/models/heartbeat.rb
414
+ - lib/device_tracker/models/operating_system.rb
415
+ - lib/device_tracker/models/transaction.rb
416
+ - lib/device_tracker/models/user.rb
417
+ - lib/device_tracker/public/css/bootstrap-sortable.css
418
+ - lib/device_tracker/public/css/bootstrap.min.css
419
+ - lib/device_tracker/public/css/custom.css
420
+ - lib/device_tracker/public/favicon.png
421
+ - lib/device_tracker/public/favicon/android-chrome-144x144.png
422
+ - lib/device_tracker/public/favicon/android-chrome-192x192.png
423
+ - lib/device_tracker/public/favicon/android-chrome-36x36.png
424
+ - lib/device_tracker/public/favicon/android-chrome-48x48.png
425
+ - lib/device_tracker/public/favicon/android-chrome-72x72.png
426
+ - lib/device_tracker/public/favicon/android-chrome-96x96.png
427
+ - lib/device_tracker/public/favicon/apple-touch-icon-114x114.png
428
+ - lib/device_tracker/public/favicon/apple-touch-icon-120x120.png
429
+ - lib/device_tracker/public/favicon/apple-touch-icon-144x144.png
430
+ - lib/device_tracker/public/favicon/apple-touch-icon-152x152.png
431
+ - lib/device_tracker/public/favicon/apple-touch-icon-180x180.png
432
+ - lib/device_tracker/public/favicon/apple-touch-icon-57x57.png
433
+ - lib/device_tracker/public/favicon/apple-touch-icon-60x60.png
434
+ - lib/device_tracker/public/favicon/apple-touch-icon-72x72.png
435
+ - lib/device_tracker/public/favicon/apple-touch-icon-76x76.png
436
+ - lib/device_tracker/public/favicon/apple-touch-icon-precomposed.png
437
+ - lib/device_tracker/public/favicon/apple-touch-icon.png
438
+ - lib/device_tracker/public/favicon/browserconfig.xml
439
+ - lib/device_tracker/public/favicon/favicon-16x16.png
440
+ - lib/device_tracker/public/favicon/favicon-32x32.png
441
+ - lib/device_tracker/public/favicon/favicon-96x96.png
442
+ - lib/device_tracker/public/favicon/favicon.ico
443
+ - lib/device_tracker/public/favicon/manifest.json
444
+ - lib/device_tracker/public/favicon/mstile-144x144.png
445
+ - lib/device_tracker/public/favicon/mstile-150x150.png
446
+ - lib/device_tracker/public/favicon/mstile-310x150.png
447
+ - lib/device_tracker/public/favicon/mstile-310x310.png
448
+ - lib/device_tracker/public/favicon/mstile-70x70.png
449
+ - lib/device_tracker/public/favicon/safari-pinned-tab.svg
450
+ - lib/device_tracker/public/fonts/glyphicons-halflings-regular.eot
451
+ - lib/device_tracker/public/fonts/glyphicons-halflings-regular.svg
452
+ - lib/device_tracker/public/fonts/glyphicons-halflings-regular.ttf
453
+ - lib/device_tracker/public/fonts/glyphicons-halflings-regular.woff
454
+ - lib/device_tracker/public/fonts/glyphicons-halflings-regular.woff2
455
+ - lib/device_tracker/public/js/bootstrap-sortable.js
456
+ - lib/device_tracker/public/js/bootstrap.min.js
457
+ - lib/device_tracker/public/js/jquery-2.1.4.min.js
458
+ - lib/device_tracker/version.rb
459
+ - lib/device_tracker/views/404.erb
460
+ - lib/device_tracker/views/_alert.erb
461
+ - lib/device_tracker/views/_device_form.erb
462
+ - lib/device_tracker/views/_device_list.erb
463
+ - lib/device_tracker/views/_footer.erb
464
+ - lib/device_tracker/views/_header.erb
465
+ - lib/device_tracker/views/_heartbeat_list.erb
466
+ - lib/device_tracker/views/_user_form.erb
467
+ - lib/device_tracker/views/devices/edit.erb
468
+ - lib/device_tracker/views/devices/index.erb
469
+ - lib/device_tracker/views/devices/new.erb
470
+ - lib/device_tracker/views/devices/show.erb
471
+ - lib/device_tracker/views/devices/users.erb
472
+ - lib/device_tracker/views/emails/new_password.erb
473
+ - lib/device_tracker/views/emails/password_reset.erb
474
+ - lib/device_tracker/views/emails/registration.erb
475
+ - lib/device_tracker/views/emails/reminder.erb
476
+ - lib/device_tracker/views/emails/verification.erb
477
+ - lib/device_tracker/views/forgot_password.erb
478
+ - lib/device_tracker/views/index.erb
479
+ - lib/device_tracker/views/layout.erb
480
+ - lib/device_tracker/views/login.erb
481
+ - lib/device_tracker/views/operating_system/operating_systems.json.jbuilder
482
+ - lib/device_tracker/views/os/manage.erb
483
+ - lib/device_tracker/views/transactions/_transactions_list.erb
484
+ - lib/device_tracker/views/transactions/index.erb
485
+ - lib/device_tracker/views/users/edit.erb
486
+ - lib/device_tracker/views/users/manage.erb
487
+ - lib/device_tracker/views/users/new.erb
404
488
  homepage: https://github.com/bbc/device-tracker
405
489
  licenses: []
406
490
  metadata: {}