diff --git a/front-end/meteor-device-spy/server/checkindevice_api.js b/front-end/meteor-device-spy/server/checkindevice_api.js new file mode 100644 index 0000000..753267c --- /dev/null +++ b/front-end/meteor-device-spy/server/checkindevice_api.js @@ -0,0 +1,24 @@ +Meteor.startup(function () { + + RESTstop.add('checkin/:param', function () { + var param = this.params.param; + + var mac = param.substring(0, 12); + var uid = param.substring(13); + console.log("Пришел запрос: MAC = " + mac + ", UID = " + uid); + + var user = GetUserByMAC(mac); + if (!user) + return "Can't find such MAC-addreses"; + + var device = GetDeviceById(uid); + if (!device) + return "Can't find such device-ID"; + + console.log("-------- Устройство: ", device.name); + + var checkinDate = GetCurrentDateAndTime (); + Devices.update(device._id, {$set: {checkin_date: checkinDate, owner_id: user._id}}); + }); + +}); diff --git a/front-end/meteor-device-spy/server/lib/environment.js b/front-end/meteor-device-spy/server/lib/environment.js new file mode 100644 index 0000000..c8c9c51 --- /dev/null +++ b/front-end/meteor-device-spy/server/lib/environment.js @@ -0,0 +1,12 @@ +Meteor.startup(function () { + + RESTstop.configure({use_auth: false}); + + if (Devices_Type.find().count() == 0) { + Devices_Type.insert({type_name: "iPhone/iPod"}); + Devices_Type.insert({type_name: "iPad"}); + Devices_Type.insert({type_name: "Android Phones"}); + Devices_Type.insert({type_name: "Android Tablets"}); + }; + +}); diff --git a/front-end/meteor-device-spy/server/lib/helper.js b/front-end/meteor-device-spy/server/lib/helper.js new file mode 100644 index 0000000..ee39dfd --- /dev/null +++ b/front-end/meteor-device-spy/server/lib/helper.js @@ -0,0 +1,42 @@ +GetCurrentDateAndTime = function() { + var date = new Date(); + + var hours = date.getHours(); + if (hours < 10) hours = "0" + hours; + + var minutes = date.getMinutes(); + if (minutes < 10) minutes = "0" + minutes; + + var days = date.getDate(); + if (days < 10) days = "0" + days; + + var months = date.getMonth() + 1; + if (months < 10) months = "0" + months; + + return hours + ":" + minutes + " " + days + "." + months + "." + date.getFullYear(); +} + +GetUserByMAC = function(mac) { + mac = mac.toUpperCase(); + var user = Users.findOne({MAC_Addresses: mac}); + + if (!user) { + mac = mac.toLowerCase(); + user = Users.findOne({MAC_Addresses: mac}); + if (!user) + console.log("-------- Такого МАС-адреса в базе нет: " + mac.toUpperCase()); + } + + if (user) + console.log("-------- Подключил: " + user.name + " " + user.surname); + + return user; +} + +GetDeviceById = function(uid) { + var d = Devices.findOne({id: uid}); + if (!d) + console.log("-------- Такого устройства в базе нет: " + uid); + + return d; +} diff --git a/front-end/meteor-device-spy/server/rest_api.js b/front-end/meteor-device-spy/server/rest_api.js deleted file mode 100644 index cab1cf1..0000000 --- a/front-end/meteor-device-spy/server/rest_api.js +++ /dev/null @@ -1,76 +0,0 @@ -Meteor.startup(function () { - - if (Devices_Type.find().count() == 0) { - Devices_Type.insert({type_name: "iPhone/iPod"}); - Devices_Type.insert({type_name: "iPad"}); - Devices_Type.insert({type_name: "Android Phones"}); - Devices_Type.insert({type_name: "Android Tablets"}); - }; - - RESTstop.configure({use_auth: false}); - - RESTstop.add('checkin/:param', function () { - var param = this.params.param; - - var mac = param.substring(0, 12); - var uid = param.substring(13); - console.log("Пришел запрос: MAC = " + mac + ", UID = " + uid); - - var user = GetUserByMAC(mac); - if (!user) - return "Can't find such MAC-addreses"; - - var device = GetDeviceById(uid); - if (!device) - return "Can't find such device-ID"; - - console.log("-------- Устройство: ", device.name); - - var checkinDate = GetCurrentDateAndTime (); - Devices.update(device._id, {$set: {checkin_date: checkinDate, owner_id: user._id}}); - }); - -}); - -function GetCurrentDateAndTime () { - var date = new Date(); - - var hours = date.getHours(); - if (hours < 10) hours = "0" + hours; - - var minutes = date.getMinutes(); - if (minutes < 10) minutes = "0" + minutes; - - var days = date.getDate(); - if (days < 10) days = "0" + days; - - var months = date.getMonth() + 1; - if (months < 10) months = "0" + months; - - return hours + ":" + minutes + " " + days + "." + months + "." + date.getFullYear(); -} - -function GetUserByMAC(mac) { - mac = mac.toUpperCase(); - var user = Users.findOne({MAC_Addresses: mac}); - - if (!user) { - mac = mac.toLowerCase(); - user = Users.findOne({MAC_Addresses: mac}); - if (!user) - console.log("-------- Такого МАС-адреса в базе нет: " + mac.toUpperCase()); - } - - if (user) - console.log("-------- Подключил: " + user.name + " " + user.surname); - - return user; -} - -function GetDeviceById(uid) { - var d = Devices.findOne({id: uid}); - if (!d) - console.log("-------- Такого устройства в базе нет: " + uid); - - return d; -}