public function setImageOptions($ext = null, $size = null)
 {
     $this->getValidator()->setAllowedExtensions($ext ? $ext : ImageUploadField::config()->default_allowed_extensions);
     $sizeInBytes = $size ? $size : ImageUploadField::config()->default_max_file_size * 1024 * 1024;
     $this->getValidator()->setAllowedMaxFileSize($sizeInBytes);
     return $this;
 }
 function __construct($controller, $name, $cleanupID)
 {
     // Get The clean Up we need to edit
     $cleanupgroup = DataObject::get_one('CleanUpGroup', "CleanUpGroup.ID = '{$cleanupID}'");
     //Get The Regions
     //$lat = $cleanupgroup->LocationLatitude;
     //$lon = $cleanupgroup->LocationLongitude;
     //$loc = $cleanupgroup->LocationAddress;
     $image1 = new ImageUploadField("EventImage", "Upload an event image");
     $image1->setUploadFolder("EventImages2010");
     //$image1->uploadOnSubmit();
     //$image1->noUploadOnSubmit();
     //fields
     $uploadimagesFields = new CompositeField(new LiteralField('Help', '<p class="help">The maximum allowed file size is 150KB and allowed file extensions are jpg, gif and png.</p>'), $image1, new HiddenField('CleanUpID', 'CleanUpID', $cleanupID));
     $fields = new FieldSet($uploadimagesFields);
     //val and doubleselect stuff
     Requirements::javascript("mysite/javascript/UploadFormVal.js");
     //actions
     $actions = new FieldSet(new FormAction('uploadimages', 'Upload'));
     parent::__construct($controller, $name, $fields, $actions);
 }
 function __construct($controller, $name, $cleanupID)
 {
     // Get The clean Up we need to edit
     $cleanupgroup = DataObject::get_one('CleanUpGroup', "CleanUpGroup.ID = '{$cleanupID}'");
     //Get The Regions
     //$lat = $cleanupgroup->LocationLatitude;
     //$lon = $cleanupgroup->LocationLongitude;
     //$loc = $cleanupgroup->LocationAddress;
     $image1 = new ImageUploadField("Image", "Upload an image");
     $image1->setUploadFolder("EventImages2010");
     //$image1->uploadOnSubmit();
     //$image1->noUploadOnSubmit();
     //fields
     $uploadimagesFields = new CompositeField(new HeaderField('Add an Image to your Event Gallery', 3), new LiteralField('Help', '<p class="help">Please upload as many images as you would like by clicking "Upload Images" again when redirected to your event\'s page.</p><p>The maximum allowed file size is 2MB and allowed file extensions are jpg, gif and png.</p><p><strong>NOTE - Because this image is hosted on Flickr, there may be a delay between uploading your image and it appearing in your event\'s image gallery. </strong> <p>Thank you for contributing.</p>'), $image1, new TextField('Caption', 'Image Caption'), new HiddenField('CleanUpID', 'CleanUpID', $cleanupID));
     $fields = new FieldSet($uploadimagesFields);
     //val and doubleselect stuff
     Requirements::javascript("mysite/javascript/UploadFormVal.js");
     //actions
     $actions = new FieldSet(new FormAction('uploadimages', 'Upload'));
     parent::__construct($controller, $name, $fields, $actions);
 }
 public function updateCMSFields(FieldList $fields)
 {
     $fields->removeByName('Theme');
     if (Config::inst()->get('SiteConfig', 'can_select_theme')) {
         $themeDropdownField = new DropdownField("Theme", _t('SiteConfig.THEME', 'Theme'), $this->getAvailableThemesExtended());
         $themeDropdownField->setEmptyString(_t('SiteConfig.DEFAULTTHEME', '(Use default theme)'));
         $fields->addFieldToTab('Root.Theme', $themeDropdownField);
     }
     // Colors
     $fields->addFieldToTab('Root.Theme', new HeaderField('ColorH', _t('ThemeSiteConfigExtension.ColorH', 'Colors')));
     $fields->addFieldToTab('Root.Theme', $BaseColor = new MiniColorsField('BaseColor', _t('ThemeSiteConfigExtension.BaseColor', 'Base Color')));
     $BaseColor->setDescription(_t('ThemeSiteConfigExtension.BaseColorDesc', "The background color of your website"));
     $fields->addFieldToTab('Root.Theme', new MiniColorsField('PrimaryColor', _t('ThemeSiteConfigExtension.PrimaryColor', 'Primary Color')));
     $fields->addFieldToTab('Root.Theme', new MiniColorsField('HoverColor', _t('ThemeSiteConfigExtension.HoverColor', 'Hover Color')));
     $fields->addFieldToTab('Root.Theme', new MiniColorsField('SecondaryColor', _t('ThemeSiteConfigExtension.SecondaryColor', 'Secondary Color')));
     $fields->addFieldToTab('Root.Theme', new MiniColorsField('CtaColor', _t('ThemeSiteConfigExtension.CtaColor', 'Call To Action Color')));
     // Fonts
     $fields->addFieldToTab('Root.Theme', new HeaderField('FontsH', _t('ThemeSiteConfigExtension.FontsH', 'Fonts')));
     $fields->addFieldToTab('Root.Theme', $hf = new TextField('HeaderFont', _t('ThemeSiteConfigExtension.HeaderFont', 'Header Font')));
     $fields->addFieldToTab('Root.Theme', $hfw = new TextField('HeaderFontWeight', _t('ThemeSiteConfigExtension.HeaderFontWeight', 'Header Font Weight')));
     $fields->addFieldToTab('Root.Theme', $bf = new TextField('BodyFont', _t('ThemeSiteConfigExtension.BodyFont', 'Body Font')));
     $fields->addFieldToTab('Root.Theme', $bfw = new TextField('BodyFontWeight', _t('ThemeSiteConfigExtension.BodyFontWeight', 'Body Font Weight')));
     $fields->addFieldToTab('Root.Theme', $gf = new TextField('GoogleFonts', _t('ThemeSiteConfigExtension.GoogleFonts', 'Google Fonts')));
     $hf->setAttribute('placeholder', 'Arial, Helvetica, sans-serif');
     $bf->setAttribute('placeholder', 'Arial, Helvetica, sans-serif');
     $gf->setDescription('family=Open+Sans:400italic,400,600&subset=latin,latin-ext');
     // Images
     $fields->addFieldToTab('Root.Theme', new HeaderField('ImagesH', _t('ThemeSiteConfigExtension.ImagesH', 'Images')));
     $fields->addFieldToTab('Root.Theme', ImageUploadField::createForClass($this, 'Logo', _t('ThemeSiteConfigExtension.Logo', 'Logo')));
     $fields->addFieldToTab('Root.Theme', $icon = ImageUploadField::createForClass($this, 'Icon', _t('ThemeSiteConfigExtension.Icon', 'Icon')));
     $fields->addFieldToTab('Root.Theme', ImageUploadField::createForClass($this, 'FooterImage', _t('ThemeSiteConfigExtension.FooterImage', 'Footer Image')));
     if (is_file(Director::baseFolder() . $this->FaviconPath())) {
         $icon->setDescription(_t('ThemeSiteConfigExtension.FaviconPreview', 'Favicon preview') . ' <img src="' . $this->FaviconPath() . '" alt="Favicon" />');
     } else {
         $icon->setDescription(_t('ThemeSiteConfigExtension.NoFavicon', 'No favicon created for this site'));
     }
     $fields->addFieldToTab('Root.Theme', ImageUploadField::createForClass($this, 'BackgroundImages', _t('ThemeSiteConfigExtension.BackgroundImages', 'Background Images')));
     $fields->addFieldToTab('Root.Theme', new DropdownField('BackgroundRepeat', _t('ThemeSiteConfigExtension.BackgroundRepeat', 'Background Repeat'), array(self::BACKGROUND_NO_REPEAT => 'no repeat', self::BACKGROUND_REPEAT => 'repeat', self::BACKGROUND_REPEAT_X => 'repeat x', self::BACKGROUND_REPEAT_Y => 'repeat y')));
     if (Director::isDev() || Permission::check('ADMIN')) {
         $fields->addFieldToTab('Root.Theme', new HeaderField('ThemeDevHeader', 'Dev tools'));
         $fields->addFieldToTab('Root.Theme', new CheckboxField('RefreshTheme'));
         $fields->addFieldToTab('Root.Theme', new CheckboxField('RefreshIcon'));
     }
     // Simple Google Analytics helper, disable if other extension are found
     if (!$this->owner->hasExtension('GoogleConfig') && !$this->owner->hasExtension('ZenGoogleAnalytics')) {
         $fields->addFieldToTab('Root.Main', $ga = new TextField('GoogleAnalyticsCode'));
         $ga->setAttribute('placeholder', 'UA-0000000-00');
     }
     return $fields;
 }
 /**
  * customizes the backends fields, mainly for ModelAdmin
  *
  * @param array $params configuration parameters
  *
  * @return FieldList the fields for the backend
  */
 public function getMinimizedCMSFields($params = null)
 {
     $fields = $this->getCMSFieldsForContext(array_merge(array('restrictFields' => array('SortOrder')), (array) $params));
     if ($this->ID) {
         $imageUploadField = new ImageUploadField('Image', $this->fieldLabel('Image'));
         $imageUploadField->setUploadFolder('assets/Uploads/PartnerLogos');
         $fields->insertBefore($imageUploadField, 'SortOrder');
     }
     $fields->removeByName('Content');
     $fields->removeByName('Description');
     $fields->removeByName('SortOrder');
     return $fields;
 }