public function render($arguments, $caption = null, $parser = null) { if (!array_key_exists('field', $arguments) || !$arguments['field']) { return ''; } $field = $arguments['field']; $siteConfig = \SiteConfig::current_site_config(); if (!$siteConfig->hasField($field)) { return ''; } $value = $siteConfig->obj($field); if ($value instanceof DBField) { if (isset($arguments['type']) && $value->hasMethod($arguments['type'])) { $cast = $arguments['type']; } else { $cast = 'Nice'; } $value = $value->{$cast}(); } if ($parser) { $caption = $parser->parse($caption); $value = $parser->parse($value); } if (isset($arguments['caption'])) { $caption = $arguments['caption']; } if (!$caption) { $caption = $value; } if (!$value && isset($fields['default'])) { $value = $parser->parse($fields['default']); } if (Email::validEmailAddress($value) && !isset($arguments['nolink'])) { return '<a href="mailto:' . $value . '">' . $caption . '</a>'; } if (filter_var($value, FILTER_VALIDATE_URL) && !isset($arguments['nolink'])) { return '<a href="' . Director::absoluteURL($value) . '">' . $caption . '</a>'; } return $value; }
protected function inlineFiles($inlines, $setVar = 'customCSS', $unsetVar = 'css', $replaceString = '%s', $id = 'Inline-CSS') { if (count($inlines)) { $this->removeIfFound($id, $setVar); $items = []; $isDev = Director::isDev(); foreach ($inlines as $file => $data) { if (!Director::is_absolute_url($file)) { $file = Director::getAbsFile($file); } $key = Utilities::clean_cache_key($file); $content = singleton('require')->cache()->load($key); if ($content === false) { $content = @file_get_contents($file); if ($content && !$isDev) { $content = singleton('require')->minify_contents_according_to_type($content, $file); } if (!$isDev) { singleton('require')->cache()->save($content, $key); } } if ($content) { $items[$file] = $content; $this->removeIfFound($id, $unsetVar); } } if (count($items)) { if ($setVar == 'customHeadTags') { $this->insertHeadTags(sprintf($replaceString, implode("\n\n", $items)), $id); } elseif ($setVar == 'customScript') { $this->customScript(sprintf($replaceString, implode("\n\n", $items)), $id); } elseif ($setVar == 'customCSS') { $this->customCSS(sprintf($replaceString, implode("\n\n", $items)), $id); } } } }
public static function placeIMG($width = 400, $height = 300, $categories = 'any', $filters = '') { return Controller::join_links(CoreDirector::protocol() . 'placeimg.com', $width, $height, $categories, $filters); }
public static function protocol() { return parent::protocol(); }
public static function adminEmail($prepend = '') { if ($email = Config::inst()->get('Email', 'admin_email')) { return $prepend ? $prepend . '+' . $email : $email; } $name = $prepend ? $prepend . '+no-reply' : 'no-reply'; return $name . '@' . CoreDirector::baseWebsiteURL(); }
public static function utilities_js() { if (Director::isDev()) { $script = @file_get_contents(Director::getAbsFile(SS_MWM_DIR . '/js/mwm.utilities.js')); } else { $script = static::cache()->load('JS__utilities'); if (!$script) { require_once THIRDPARTY_PATH . DIRECTORY_SEPARATOR . 'jsmin' . DIRECTORY_SEPARATOR . 'jsmin.php'; $script = \JSMin::minify(@file_get_contents(\Director::getAbsFile(SS_MWM_DIR . '/js/mwm.utilities.js'))); static::cache()->save($script, 'JS__utilities'); } } static::insertHeadTags('<script>' . $script . '</script>', 'JS-MWM-Utilities'); }