Example #1
0
 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=&quot;/assets/HTMLEditorFieldTest/f5c7c2f814/HTMLEditorFieldTest-example.jpg&quot; width=&quot;10&quot; height=&quot;20&quot; id=&quot;{$fileID}&quot;]" />


EOS
, $readonlyContent->getValue());
    }