Surprise Rails app!

This commit is contained in:
2012-08-30 23:54:25 -07:00
parent d6f1909591
commit e4ff40e5a1
84 changed files with 1771 additions and 0 deletions

0
app/models/.gitkeep Normal file
View File

40
app/models/door_log.rb Normal file
View File

@@ -0,0 +1,40 @@
class DoorLog < ActiveRecord::Base
attr_accessible :data, :key
require 'open-uri'
def self.download_from_door
# do shit here
source = open("http://192.168.1.177?e=1234").read
results = source.scan(/authok/)
if(results.size > 0) then
@end_results = Array.new
#only continue if we've got an OK login
source = open("http://192.168.1.177?z").read
results = source.scan(/(.*): (.*)\r\n/)
results.each do |r|
if(r[0] != "\000") then
DoorLog.create!({:key => r[0], :data => r[1]})
end
end
#clear log
open("http://192.168.1.177?y")
#logout
open("http://192.168.1.177?e=0000")
if(results.size > 0) then
#only return true if we got some kind of decent response
return results
else
# We didn't get a decent response.
return false
end
else
# We didn't get an OK login.
return false
end
end
end

68
app/models/user.rb Normal file
View File

@@ -0,0 +1,68 @@
class User < ActiveRecord::Base
require 'open-uri'
attr_accessible :card_id, :card_number, :card_permissions, :name
validates_uniqueness_of :card_id, :card_number
def upload_to_door
# do shit here
source = open("http://192.168.1.177?e=1234").read
results = source.scan(/authok/)
if(results.size > 0) then
#only continue if we've got an OK login
usernum = self.card_id.to_s.rjust(3, '0')
userperm = self.card_permissions.to_s.rjust(3, '0')
cardnum = self.card_number.rjust(8, '0')
source = open("http://192.168.1.177?m#{usernum}&p#{userperm}&t#{cardnum}").read
results = source.scan(/cur/)
#logout
open("http://192.168.1.177?e=0000")
if(results.size > 0) then
#only return true if we got some kind of decent response
return true
else
# We didn't get a decent response.
return false
end
else
# We didn't get an OK login.
return false
end
end
def self.upload_all_to_door
@users = User.all
@end_results = Array.new
source = open("http://192.168.1.177?e=1234").read
results = source.scan(/authok/)
if(results.size > 0) then
@users.each do |u|
#only continue if we've got an OK login
usernum = u.card_id.to_s.rjust(3, '0')
userperm = u.card_permissions.to_s.rjust(3, '0')
cardnum = u.card_number.rjust(8, '0')
source = open("http://192.168.1.177?m#{usernum}&p#{userperm}&t#{cardnum}").read
results = source.scan(/cur/)
if(results.size > 0) then
#only return true if we got some kind of decent response
@end_results.push([usernum,"OK"])
else
@end_results.push([usernum,"FAIL"])
end
end
#logout
open("http://192.168.1.177?e=0000")
else
@end_results.push([usernum,"FAIL"])
end
return @end_results
end
end