public function testToArray() { $device = new Device(); $this->assertEquals(['model' => null, 'brand' => null, 'type' => null, 'isMobile' => null, 'isTouch' => null], $device->toArray()); $device->setModel('iPad'); $device->setBrand('Apple'); $device->setType('tablet'); $device->setIsMobile(false); $device->setIsTouch(true); $this->assertEquals(['model' => 'iPad', 'brand' => 'Apple', 'type' => 'tablet', 'isMobile' => false, 'isTouch' => true], $device->toArray()); }
/** * * @param Model\UserAgent $device * @param stdClass $resultRaw */ private function hydrateDevice(Model\Device $device, stdClass $resultRaw) { if (isset($resultRaw->device_name)) { $device->setModel($this->getRealResult($resultRaw->device_name, 'device', 'model')); } if (isset($resultRaw->device_brand_name)) { $device->setBrand($this->getRealResult($resultRaw->device_brand_name)); } if (isset($resultRaw->device_type)) { $device->setType($this->getRealResult($resultRaw->device_type)); } if (isset($resultRaw->ismobiledevice) && $this->isRealResult($resultRaw->ismobiledevice) === true && $resultRaw->ismobiledevice === true) { $device->setIsMobile(true); } if (isset($resultRaw->device_pointing_method) && $resultRaw->device_pointing_method == 'touchscreen') { $device->setIsTouch(true); } }
/** * * @param Model\Device $device * @param stdClass $resultRaw */ private function hydrateDevice(Model\Device $device, stdClass $resultRaw) { if (isset($resultRaw->HardwareVendor)) { $device->setBrand($this->getRealResult($resultRaw->HardwareVendor)); } if (isset($resultRaw->HardwareFamily)) { $device->setModel($this->getRealResult($resultRaw->HardwareFamily)); } if (isset($resultRaw->DeviceType)) { $device->setType($this->getRealResult($resultRaw->DeviceType)); } if (isset($resultRaw->IsMobile)) { $device->setIsMobile($this->getRealResult($resultRaw->IsMobile)); } }
/** * * @param Model\UserAgent $device * @param array $resultRaw */ private function hydrateDevice(Model\Device $device, array $resultRaw) { if (isset($resultRaw['general_model']) && $this->isRealResult($resultRaw['general_model'], 'device', 'model') && isset($resultRaw['general_vendor']) && $this->isRealResult($resultRaw['general_vendor'], 'device', 'brand')) { $device->setModel($this->getRealResult($resultRaw['general_model'], 'device', 'model')); $device->setBrand($this->getRealResult($resultRaw['general_vendor'], 'device', 'brand')); } }
/** * * @param Model\Device $device * @param stdClass $resultRaw */ private function hydrateDevice(Model\Device $device, stdClass $resultRaw) { if (isset($resultRaw->operating_platform)) { $device->setModel($this->getRealResult($resultRaw->operating_platform, 'device', 'model')); } if (isset($resultRaw->operating_platform_vendor_name)) { $device->setBrand($this->getRealResult($resultRaw->operating_platform_vendor_name)); } if (isset($resultRaw->hardware_type)) { $device->setType($this->getRealResult($resultRaw->hardware_type)); } }
/** * * @param Model\Device $device * @param stdClass $resultRaw */ private function hydrateDevice(Model\Device $device, stdClass $resultRaw) { if (isset($resultRaw->mobile_model)) { $device->setModel($this->getRealResult($resultRaw->mobile_model, 'device', 'model')); } if (isset($resultRaw->mobile_brand)) { $device->setBrand($this->getRealResult($resultRaw->mobile_brand, 'device', 'brand')); } if (isset($resultRaw->type)) { $device->setType($this->getRealResult($resultRaw->type)); } if (isset($resultRaw->is_mobile) && $resultRaw->is_mobile === true) { $device->setIsMobile(true); } }
/** * * @param Model\UserAgent $device * @param \UAParser\Result\Device $deviceRaw */ private function hydrateDevice(Model\Device $device, \UAParser\Result\Device $deviceRaw) { $device->setModel($this->getRealResult($deviceRaw->model, 'device', 'model')); $device->setBrand($this->getRealResult($deviceRaw->brand, 'device', 'brand')); }
/** * * @param Model\Device $device * @param array $deviceRaw */ private function hydrateDevice(Model\Device $device, array $deviceRaw) { if (isset($deviceRaw['model'])) { $device->setModel($this->getRealResult($deviceRaw['model'], 'device', 'model')); } if (isset($deviceRaw['brand'])) { $device->setBrand($this->getRealResult($deviceRaw['brand'])); } }
/** * * @param Model\UserAgent $device * @param \UAParser\Result\Device $deviceRaw */ private function hydrateDevice(Model\Device $device, \UAParser\Result\Device $deviceRaw) { if ($this->isRealResult($deviceRaw->model, $this->getDeviceModelDefaultValues()) === true) { $device->setModel($deviceRaw->model); } if ($this->isRealResult($deviceRaw->brand, $this->getDeviceBrandDefaultValues()) === true) { $device->setBrand($deviceRaw->brand); } }
/** * * @param Model\Device $device * @param \WhichBrowser\Device $deviceRaw * @param WhichBrowserParser $parser */ private function hydrateDevice(Model\Device $device, \WhichBrowser\Device $deviceRaw, WhichBrowserParser $parser) { if ($this->isRealResult($deviceRaw->getModel()) === true) { $device->setModel($deviceRaw->getModel()); } if ($this->isRealResult($deviceRaw->getManufacturer()) === true) { $device->setBrand($deviceRaw->getManufacturer()); } $device->setType($parser->getType()); if ($parser->isType('mobile', 'tablet', 'ereader', 'media', 'watch', 'camera', 'gaming:portable') === true) { $device->setIsMobile(true); } }
/** * * @param Model\UserAgent $device * @param DeviceDetector $dd */ private function hydrateDevice(Model\Device $device, DeviceDetector $dd) { $device->setModel($this->getRealResult($dd->getModel())); $device->setBrand($this->getRealResult($dd->getBrandName())); $device->setType($this->getRealResult($dd->getDeviceName())); if ($dd->isMobile() === true) { $device->setIsMobile(true); } if ($dd->isTouchEnabled() === true) { $device->setIsTouch(true); } }
/** * * @param Model\UserAgent $device * @param stdClass $resultRaw */ private function hydrateDevice(Model\Device $device, stdClass $resultRaw) { if (isset($resultRaw->device_name) && $this->isRealResult($resultRaw->device_name, $this->getDeviceModelDefaultValues()) === true) { $device->setModel($resultRaw->device_name); } if (isset($resultRaw->device_brand_name) && $this->isRealResult($resultRaw->device_brand_name) === true) { $device->setBrand($resultRaw->device_brand_name); } if (isset($resultRaw->device_type) && $this->isRealResult($resultRaw->device_type) === true) { // @todo convert to a common set of types (over all vendors) $device->setType($resultRaw->device_type); } if (isset($resultRaw->ismobiledevice) && $this->isRealResult($resultRaw->ismobiledevice) === true && $resultRaw->ismobiledevice === true) { $device->setIsMobile(true); } if (isset($resultRaw->device_pointing_method) && $resultRaw->device_pointing_method == 'touchscreen') { $device->setIsTouch(true); } }
/** * * @param Model\UserAgent $device * @param UAResult\DeviceResult $deviceRaw */ private function hydrateDevice(Model\Device $device, UAResult\DeviceResult $deviceRaw) { if ($this->isRealResult($deviceRaw->getModel()) === true) { $device->setModel($deviceRaw->getModel()); } if ($this->isRealResult($deviceRaw->getConstructor()) === true) { $device->setBrand($deviceRaw->getConstructor()); } // removed desktop type, since it's a default value and not really detected if ($this->isRealResult($deviceRaw->getType()) === true && $deviceRaw->getType() !== 'desktop') { $device->setType($deviceRaw->getType()); } if ($this->isMobile($deviceRaw) === true) { $device->setIsMobile(true); } }
/** * * @param Model\Device $device * @param \WhichBrowser\Model\Device $deviceRaw * @param WhichBrowserParser $parser */ private function hydrateDevice(Model\Device $device, \WhichBrowser\Model\Device $deviceRaw, WhichBrowserParser $parser) { $device->setModel($this->getRealResult($deviceRaw->getModel())); $device->setBrand($this->getRealResult($deviceRaw->getManufacturer())); $device->setType($this->getRealResult($parser->getType())); if ($parser->isMobile() === true) { $device->setIsMobile(true); } }