Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

executable file 62 lines (51 sloc) 1.771 kb
<?php
/**
* A field that will upload attached images within the CMS through an iframe.
* If you want to upload images without iframes, see {@link SimpleImageField}.
*
* @uses Image_Upload
*
* @package forms
* @subpackage fields-files
*/
class ImageField extends FileField {
public function Field($id = null) {
$data = $this->form->getRecord();
if($id && is_numeric($id)) {
$parentID = $id;
} elseif($data) {
$parentID = $data->ID;
} else {
$parentID = null;
}
if($data && $parentID && is_numeric($parentID)) {
$idxField = $this->name . 'ID';
$hiddenField = "<input class=\"hidden\" type=\"hidden\" id=\"" .
$this->id() . "\" name=\"$idxField\" value=\"" . $this->attrValue() . "\" />";
$parentClass = $data->class;
$parentField = $this->name;
$iframe = "<iframe name=\"{$this->name}_iframe\" src=\"images/iframe/$parentClass/$parentID/$parentField\" style=\"height: 152px; width: 525px; border: none;\" frameborder=\"0\"></iframe>";
return $iframe . $hiddenField;
} else {
$this->value = _t('ImageField.NOTEADDIMAGES', 'You can add images once you have saved for the first time.');
return FormField::Field();
}
}
public function saveInto($record) {
$data = $this->form->getRecord();
// if the record was written for the first time (has an arbitrary "new"-ID),
// update the imagefield to enable uploading
if($record->ID && $data && substr($data->ID, 0, 3) == 'new') {
FormResponse::update_dom_id($this->id(), $this->Field($record->ID));
}
}
/**
* Returns a readonly version of this field
*/
function performReadonlyTransformation() {
$field = new SimpleImageField_Disabled($this->name, $this->title, $this->value);
$field->setForm($this->form);
return $field;
}
}
?>
Jump to Line
Something went wrong with that request. Please try again.