Current Path : /var/www/alh/system/journal2/classes/ |
Current File : /var/www/alh/system/journal2/classes/journal2_google_fonts.php |
<?php class Journal2GoogleFonts { private $fonts = array(); public function add($font_name, $font_subset, $font_weight) { if (!isset($this->fonts[md5($font_name)])) { $this->fonts[md5($font_name)] = array( 'name' => $font_name, 'subset' => array(), 'weight' => array() ); } if (is_array($font_subset)) { foreach ($font_subset as $subset) { $this->fonts[md5($font_name)]['subset'][md5($subset)] = $subset; } } elseif ($font_subset) { $this->fonts[md5($font_name)]['subset'][md5($font_subset)] = $font_subset; } $this->fonts[md5($font_name)]['weight'][md5($font_weight)] = $font_weight; } public function getFonts() { $fonts = array(); $subsets = array(); foreach ($this->fonts as $font) { $family = str_replace(' ', '+', $font['name']); $weight = $font['weight'] ? ':' . implode(',', $font['weight']) : ''; $subsets = array_merge($subsets, $font['subset']); $fonts[] = "{$family}{$weight}"; } if (!empty($subsets)) { $subsets = '&subset=' . implode(',', $subsets); } return array( "//fonts.googleapis.com/css?family=" . implode('|', $fonts) . $subsets ); } public function getAllFonts() { return $this->fonts; } public function setAllFonts($fonts) { if ($this->fonts) { die('eeerrrooorr'); } $this->fonts = $fonts; } }