function syncLinkTracking() { // Build a list of HTMLText fields $allFields = $this->db(); $htmlFields = array(); foreach ($allFields as $field => $fieldSpec) { if (preg_match('/([^(]+)/', $fieldSpec, $matches)) { $class = $matches[0]; if (class_exists($class)) { if ($class == 'HTMLText' || is_subclass_of($class, 'HTMLText')) { $htmlFields[] = $field; } } } } $linkedPages = array(); $linkedFiles = array(); $this->HasBrokenLink = false; $this->HasBrokenFile = false; foreach ($htmlFields as $field) { $formField = new HTMLEditorField($field); $formField->setValue($this->{$field}); $formField->saveInto($this); } $this->extend('augmentSyncLinkTracking'); }
public function testReadonlyField() { $editor = new HTMLEditorField('Content'); $fileID = $this->idFromFixture('Image', 'example_image'); $editor->setValue(sprintf('[image src="assets/HTMLEditorFieldTest_example.jpg" width="10" height="20" id="%d"]', $fileID)); /** @var HTMLReadonlyField $readonly */ $readonly = $editor->performReadonlyTransformation(); /** @var DBHTMLText $readonlyContent */ $readonlyContent = $readonly->Field(); $this->assertEquals(<<<EOS <span class="readonly typography" id="Content"> \t<img src="/assets/HTMLEditorFieldTest/f5c7c2f814/HTMLEditorFieldTest-example__ResizedImageWyIxMCIsIjIwIl0.jpg" alt="HTMLEditorFieldTest example" width="10" height="20"> </span> EOS , $readonlyContent->getValue()); // Test with include input tag $readonly = $editor->performReadonlyTransformation()->setIncludeHiddenField(true); /** @var DBHTMLText $readonlyContent */ $readonlyContent = $readonly->Field(); $this->assertEquals(<<<EOS <span class="readonly typography" id="Content"> \t<img src="/assets/HTMLEditorFieldTest/f5c7c2f814/HTMLEditorFieldTest-example__ResizedImageWyIxMCIsIjIwIl0.jpg" alt="HTMLEditorFieldTest example" width="10" height="20"> </span> \t<input type="hidden" name="Content" value="[image src="/assets/HTMLEditorFieldTest/f5c7c2f814/HTMLEditorFieldTest-example.jpg" width="10" height="20" id="{$fileID}"]" /> EOS , $readonlyContent->getValue()); }