/**
	 * Test the getInput method.
	 *
	 * @return void
	 */
	public function testGetInput()
	{
		$form = new JFormInspector('form1');

		$this->assertThat(
			$form->load('<form><field name="file" type="file" /></form>'),
			$this->isTrue(),
			'Line:' . __LINE__ . ' XML string should load successfully.'
		);

		$field = new JFormFieldFile($form);

		$this->assertThat(
			$field->setup($form->getXml()->field, 'value'),
			$this->isTrue(),
			'Line:' . __LINE__ . ' The setup method should return true.'
		);

		$this->markTestIncomplete('Problems encountered in next assertion');

		$this->assertThat(
			strlen($field->input),
			$this->greaterThan(0),
			'Line:' . __LINE__ . ' The getInput method should return something without error.'
		);

		// TODO: Should check all the attributes have come in properly.
	}
 /**
  * Test the getInput method.
  *
  * @return void
  */
 public function testGetInput()
 {
     $form = new JForm('form1');
     $this->assertThat($form->load('<form><field name="file" type="file" /></form>'), $this->isTrue(), 'Line:' . __LINE__ . ' XML string should load successfully.');
     $field = new JFormFieldFile($form);
     $this->assertThat($field->setup($form->getXml()->field, 'value'), $this->isTrue(), 'Line:' . __LINE__ . ' The setup method should return true.');
     $this->assertThat(strlen($field->input), $this->greaterThan(0), 'Line:' . __LINE__ . ' The getInput method should return something without error.');
 }
예제 #3
0
 /**
  * Method to get the field input markup.
  *
  * @return  string  The field input markup.
  *
  * @since   1.0.0
  */
 protected function getInput()
 {
     if (empty($this->value)) {
         $currentAvatar = JText::_('PLG_USER_CMAVATAR_NO_AVATAR');
     } else {
         $currentAvatar = '<img src="' . $this->value . '">';
     }
     $uploadField = parent::getInput();
     if (empty($this->value)) {
         $deleteField = '';
     } else {
         $deleteField = '<input type="checkbox" value="yes" name="delete-avatar" id="deleteAvatar">';
     }
     $data = array('current_avatar' => $currentAvatar, 'upload_field' => $uploadField, 'delete_field' => $deleteField);
     $layout = new JLayoutFile('default', $basePath = JPATH_PLUGINS . '/user/cmavatar/layouts');
     $html = $layout->render($data);
     return $html;
 }
예제 #4
0
 /**
  * Method to attach a JForm object to the field.
  *
  * @param   SimpleXMLElement  $element  The SimpleXMLElement object representing the <field /> tag for the form field object.
  * @param   mixed             $value    The form field value to validate.
  * @param   string            $group    The field name group control value. This acts as as an array container for the field.
  *                                      For example if the field has name="foo" and the group value is set to "bar" then the
  *                                      full field name would end up being "bar[foo]".
  *
  * @return  boolean                     True on success.
  *
  * @see     JFormField::setup()
  * @since   0.3.0
  */
 public function setup(SimpleXMLElement $element, $value, $group = null)
 {
     $return = parent::setup($element, $value, $group);
     if ($return) {
         $this->maxFiles = $this->element['maxfiles'] < ini_get('max_file_uploads') ? $this->element['maxfiles'] : ini_get('max_file_uploads');
     }
     return $return;
 }