예제 #1
0
파일: MakeList.php 프로젝트: serby/Atrox
 /**
  * (non-PHPdoc)
  * @see Atrox/Core/Html/Atrox_Core_Html_IWidget#make()
  */
 static function make($default, $options = null)
 {
     $defaultOptions = new stdClass();
     $defaultOptions->list = array();
     $defaultOptions->compareElement = 0;
     $defaultOptions->pattern = "%s";
     $defaultOptions->class = "active-item";
     if ($options != null) {
         if (!is_object($options)) {
             throw new InvalidArgumentException("Options must be an object");
         }
         $options = Atrox_Core_Utility_Object::override($defaultOptions, $options);
     }
     $newList = "";
     if (isset($options->list[0]) && is_array($options->list[0])) {
         foreach ($options->list as $value) {
             if (array_key_exists($options->compareElement, $value) && $value[$options->compareElement] == $options->selected) {
                 $newList .= "<li class=\"{$options->class}\">" . vsprintf($options->pattern, $value) . "</li>";
             } else {
                 $newList .= "<li>" . vsprintf($options->pattern, $value) . "</li>";
             }
         }
     } else {
         foreach ($options->list as $value) {
             if ($value == $default) {
                 $newList .= "<li class=\"{$options->class}\">" . $value . "</li>";
             } else {
                 $newList .= "<li>" . $value . "</li>";
             }
         }
     }
     return "{$newList}";
 }
예제 #2
0
파일: TextBox.php 프로젝트: serby/Atrox
 /**
  * (non-PHPdoc)
  * @see Atrox/Core/Html/Atrox_Core_Html_IWidget#make()
  */
 static function make($default, $options = null)
 {
     $defaultOptions = new stdClass();
     $defaultOptions->class = "";
     $defaultOptions->disable = false;
     $defaultOptions->tabIndex = null;
     if ($options != null) {
         if (!is_object($options)) {
             throw new InvalidArgumentException("Options must be an object");
         }
         $options = Atrox_Core_Utility_Object::override($defaultOptions, $options);
     }
     return "<input type=\"text\" class=\"{$defaultOptions->class}\" value=\"{$default}\" tabindex=\"{$defaultOptions->tabIndex}\" />";
 }
예제 #3
0
파일: OptionList.php 프로젝트: serby/Atrox
 /**
  * (non-PHPdoc)
  * @see Atrox/Core/Html/Atrox_Core_Html_IWidget#make()
  */
 static function make($default, $options = null)
 {
     $defaultOptions = new stdClass();
     $defaultOptions->data = array();
     $defaultOptions->default = "";
     $defaultOptions->useValues = true;
     $options = Atrox_Core_Utility_Object::override($defaultOptions, $options);
     $returnValue = "";
     if ($options->useValues) {
         foreach ($options->data as $value => $text) {
             $returnValue .= "<option" . ($options->default == $value ? " selected=\"selected\"" : "") . " value=\"{$value}\">{$text}</option>\n";
         }
     } else {
         foreach ($options->data as $text) {
             $returnValue .= "<option" . ($options->default == $text ? " selected=\"selected\"" : "") . ">{$text}</option>\n";
         }
     }
     return $returnValue;
 }
예제 #4
0
파일: ObjectTest.php 프로젝트: serby/Atrox
 public function testSuccessfulObjectToDomDocumentConversion()
 {
     $member = new stdClass();
     $member->name = "Paul";
     $member->age = 31;
     $member->dob = "2009-05-01";
     $member->text = "<strong>Hello</strong>";
     $member->pets = array("Cat", "Dog", "b" => "Mouse");
     $member->head = new stdClass();
     $member->head->eyeColor = array("Brown", "Blue");
     $member->head->hairColor = "Blonde";
     $domDocument = Atrox_Core_Utility_Object::toDomDocument($member);
     $this->assertType("DOMDocument", $domDocument);
     $this->assertTrue($domDocument->hasChildNodes());
     $this->assertTrue($domDocument->getElementsByTagName("pets") instanceof DOMNodeList);
     $this->assertEquals(1, $domDocument->getElementsByTagName("name")->length);
     $this->assertEquals($member->name, $domDocument->getElementsByTagName("name")->item(0)->nodeValue);
     $this->assertEquals($member->age, $domDocument->getElementsByTagName("age")->item(0)->nodeValue);
     $this->assertEquals(4, $domDocument->getElementsByTagName("value")->length);
     $this->assertEquals($member->text, $domDocument->getElementsByTagName("text")->item(0)->nodeValue);
     $this->assertEquals(0, $domDocument->getElementsByTagName("strong")->length);
 }