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.

DataObjectManager Module /

Discuss the DataObjectManager module, and the related ImageGallery module.

Moderators: martimiz, UncleCheese, Sean, biapar, Willr, Ingo, swaiba, simon_w

Refer to other page's image


Reply


3 Posts   349 Views

Avatar
Arth

Community Member, 4 Posts

8 November 2011 at 9:49pm

Hi All,

I'm working on a service page for the site admins. They will be able to change the uploaded image's watermark on this CMS page

So I included the watermark size (percentage) and the image to service page:

class Szerviz extends Page {

   public static $db = array(
      'LogoPercent' => 'Int',
   );

   public static $has_one = array(
      'WatermarkFile' => 'Image',
   );
....

From the ImageDecorator.php I can reach only the image size, but the image not. My code:

class ImageDecorator extends DataObjectDecorator {

   function onAfterWrite(){
...
$logo_percent=DataObject::get_one('Szerviz')->LogoPercent; //works

//it doesn't work:
$watermark = imagecreatefrompng(str_replace('/','\\',Director::baseFolder()
.'/'.DataObject::get_one('Szerviz')->WatermarkFile->Filename));

What's wrong?

Avatar
UncleCheese

4086 Posts

9 November 2011 at 11:14am

Edited: 09/11/2011 11:29am

WatermarkFile()->Filename.

Although, given the context, I'd probably use WatermarkFile()->getFullPath();

--------------------
SilverStripe tips, tutorials, screencasts and more: http://www.leftandmain.com

Avatar
Arth

Community Member, 4 Posts

18 November 2011 at 2:52am

Thank You UncleCheese, it works well now.