/**
  * Set form to prevent error with link
  * @return Object
  */
 public function uploadField()
 {
     $field = new UploadField('Images');
     $field->setRecord($this);
     if (ContentModuleField::curr()) {
         $field->setForm(ContentModuleField::curr()->getForm());
     }
     return $field;
 }
 public function setForm($form)
 {
     $this->selectField->setForm($form);
     return parent::setForm($form);
 }
예제 #3
0
 public function testIsSaveable()
 {
     $form = $this->getMockForm();
     $field = new UploadField('MyField');
     $this->assertTrue($field->isSaveable(), 'Field without relation is always marked as saveable');
     $field = new UploadField('HasOneFile');
     $this->assertTrue($field->isSaveable(), 'Field with has_one relation is saveable without record on form');
     $field = new UploadField('HasOneFile');
     $newRecord = new UploadFieldTest_Record();
     $form->loadDataFrom($newRecord);
     $field->setForm($form);
     $this->assertFalse($field->isSaveable(), 'Field with has_one relation not saveable with new record on form');
     $field = new UploadField('HasOneFile');
     $existingRecord = $this->objFromFixture('UploadFieldTest_Record', 'record1');
     $form->loadDataFrom($existingRecord);
     $field->setForm($form);
     $this->assertTrue($field->isSaveable(), 'Field with has_one relation saveable with saved record on form');
 }
예제 #4
0
	function testGetItems() {
		$record = $this->objFromFixture('UploadFieldTest_Record', 'record1');
		$form = $this->getMockForm();

		// Anonymous field
		$field = new UploadField('MyField');
		$field->setForm($form);
		$field->setRecord($record);
		$this->assertEquals(array(), $field->getItems()->column('Title'));

		// Field with has_one auto-detected
		$field = new UploadField('HasOneFile');
		$field->setForm($form);
		$field->setRecord($record);
		$this->assertEquals(array('File1'), $field->getItems()->column('Title'));

		// Field with has_many auto-detected
		$field = new UploadField('HasManyFiles');
		$field->setForm($form);
		$field->setRecord($record);
		$this->assertEquals(array('File2', 'File3'), $field->getItems()->column('Title'));

		// Field with many_many auto-detected
		$field = new UploadField('ManyManyFiles');
		$field->setForm($form);
		$field->setRecord($record);
		$this->assertNotContains('File1',$field->getItems()->column('Title'));
		$this->assertNotContains('File2',$field->getItems()->column('Title'));
		$this->assertNotContains('File3',$field->getItems()->column('Title'));
		$this->assertContains('File4',$field->getItems()->column('Title'));
		$this->assertContains('File5',$field->getItems()->column('Title'));
	}