Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

Customising the CMS /

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

ImageUploader doesn't work


Go to End


2 Posts   2516 Views

Avatar
Jarek

Community Member, 30 Posts

31 January 2009 at 9:05am

Hello

I'm trying to add image field. According to tutorial, this code

static $has_one = array(
'Photo' => 'Image'
);

function getCMSFields() {
$fields = parent::getCMSFields();

$fields->addFieldToTab("Root.Content.Images", new ImageField('Photo'));

return $fields;
}

should work. But I'm getting error

FATAL ERROR: i18n::include_by_class: Class ImageUploader not found
At line 1258 in D:\htdocs\pss\sapphire\core\i18n.php

user_error(i18n::include_by_class: Class ImageUploader not found,512)
line 1258 of i18n.php

i18n::include_by_class(ImageUploader)
line 134 of Core.php

_t(ImageUploader.ATTACH,Attach %s,50,Attach image/file)
line 535 of Image.php

Image_Uploader->EditImageForm()

call_user_func_array(Array,Array)

In sources I've found class Image_Uploader. Is this correct name of image class? What should I do to run this code?

Avatar
Jarek

Community Member, 30 Posts

2 February 2009 at 11:14pm

Hello

I've found solution. Problem isn't in class name but in code that create strings (in methods EditImageForm and DeleteImageForm). This code doesn't work:

$title = sprintf(
_t('ImageUploader.REPLACE', "Replace %s", PR_MEDIUM, 'Replace file/image'),
$type
);
$fromYourPC = _t('ImageUploader.ONEFROMCOMPUTER', "With one from your computer");
$fromTheDB = _t('ImageUplaoder.ONEFROMFILESTORE', "With one from the file store");

but after replacing to this:

$title = 'Replace file/image';
$fromYourPC = 'With one from your computer';
$fromTheDB = "With one from the file store";

everything is ok