/** * 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.'); }
/** * 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; }
/** * 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; }