コード例 #1
0
ファイル: Zones.php プロジェクト: kirkbauer2/kirkxc
 /**
  * Add elements into the specified zone
  *
  * @param \XLite\Model\Zone $zone Zone object
  * @param array             $data Array of elements: array(<elementType> => array(value1, value2, value3...))
  *
  * @return \XLite\Model\Zone
  */
 public function addElements($zone, $data)
 {
     foreach ($data as $elementType => $elements) {
         if (is_array($elements) && !empty($elements)) {
             foreach ($elements as $elementValue) {
                 $newElement = new \XLite\Model\ZoneElement();
                 $newElement->setElementValue($elementValue);
                 $newElement->setElementType($elementType);
                 $newElement->setZone($zone);
                 $zone->addZoneElements($newElement);
             }
         }
     }
     return $zone;
 }
コード例 #2
0
ファイル: Zone.php プロジェクト: kingsj/core
 /**
  * testGetZoneAddresses
  *
  * @return void
  * @access public
  * @see    ____func_see____
  * @since  1.0.0
  */
 public function testGetZoneAddresses()
 {
     $zone = \XLite\Core\Database::getRepo('XLite\\Model\\Zone')->findOneBy(array('zone_name' => 'New York area'));
     $this->assertNotNull($zone, 'check zone');
     $zoneElement = new \XLite\Model\ZoneElement();
     $zoneElement->setElementValue('addr');
     $zoneElement->setElementType('A');
     $zoneElement->setZone($zone);
     $zone->addZoneElements($zoneElement);
     $addresses = $zone->getZoneAddresses();
     $this->assertTrue(in_array('addr', $addresses), 'addr is not found in zone definition');
 }