Пример #1
0
 function fetchElement()
 {
     $html = parent::fetchElement();
     $fontSettings = N2Fonts::loadSettings();
     $families = explode("\n", $fontSettings['preset-families']);
     sort($families);
     N2JS::addInline('new NextendElementAutocompleteSimple("' . $this->_id . '", ' . json_encode($families) . ');');
     return $html;
 }
Пример #2
0
 public function renderFontsConfigurationForm()
 {
     $values = N2Fonts::loadSettings();
     $form = new N2Form($this->appType);
     $form->loadArray($values);
     $form->loadArray($values['plugins']->toArray());
     $form->loadXMLFile(N2Loader::getPath('models', 'system') . '/forms/fonts.xml');
     echo N2Html::openTag("form", array("id" => "nextend-config", "method" => "post", "action" => N2Request::getRequestUri()));
     $form->render('fonts');
     echo N2Html::closeTag("form");
 }
Пример #3
0
 function generateOptions(&$xml)
 {
     $html = '';
     if (!$this->fixedMode) {
         $html .= '<option value="0" selected="selected">' . n2_('Choose') . '</option>';
     }
     $this->skins = array();
     $fontSettings = N2Fonts::loadSettings();
     $families = explode("\n", $fontSettings['preset-families']);
     foreach ($families as $family) {
         $family = trim($family, "\t\n\r\v'\"");
         if (!empty($family)) {
             $html .= '<option value="' . $family . '">' . $family . '</option>';
             $this->skins[$family] = array();
             $this->skins[$family]['family'] = $family;
         }
     }
     return $html;
 }
Пример #4
0
 function onFontManagerLoad($force = false)
 {
     static $loaded;
     if (!$loaded || $force) {
         $loaded = true;
         $settings = N2Fonts::loadSettings();
         $parameters = $settings['plugins'];
         $parameters->fillDefault(self::getDefaults());
         if ($parameters->get('google-enabled', 1)) {
             N2GoogleFonts::$enabled = 1;
             for ($i = 100; $i < 1000; $i += 100) {
                 $this->addStyle($parameters, $i);
                 $this->addStyle($parameters, $i . 'italic');
             }
             if (empty(self::$styles)) {
                 self::$styles[] = '400';
             }
             $this->addSubset($parameters, 'latin');
             $this->addSubset($parameters, 'latin-ext');
             $this->addSubset($parameters, 'greek');
             $this->addSubset($parameters, 'greek-ext');
             $this->addSubset($parameters, 'cyrillic');
             $this->addSubset($parameters, 'devanagari');
             $this->addSubset($parameters, 'arabic');
             $this->addSubset($parameters, 'khmer');
             $this->addSubset($parameters, 'telugu');
             $this->addSubset($parameters, 'vietnamese');
             if (empty(self::$subsets)) {
                 self::$subsets[] = 'latin';
             }
             foreach (self::$subsets as $subset) {
                 N2GoogleFonts::addSubset($subset);
             }
             N2Pluggable::addAction('fontFamily', array($this, 'onFontFamily'));
         }
     }
 }
Пример #5
0
            self::$config = array('default-family' => n2_x('Montserrat,Arial', 'Default font'), 'preset-families' => n2_x("'Montserrat',Arial\n'Pacifico',Arial\n'Open Sans',Arial\n'Lato',Arial\n'Bevan',Arial\n'Oxygen',Arial\n'Pt Sans',Arial\n'Average',Arial\n'Roboto',Arial\n'Roboto Slab',Arial\n'Oswald',Arial\n'Droid Sans',Arial\n'Raleway',Arial\n'Lobster',Arial\n'Titillium Web',Arial\n'Cabin',Arial\n'Varela Round',Arial\n'Vollkorn',Arial\n'Quicksand',Arial\n'Source Sans Pro',Arial\n'Asap',Arial\n'Merriweather',Arial", 'Default font family list'), 'plugins' => array());
            foreach (N2StorageSectionAdmin::getAll('system', 'fonts') as $data) {
                self::$config[$data['referencekey']] = $data['value'];
            }
            self::$config['plugins'] = new N2Data(self::$config['plugins'], true);
        }
        return self::$config;
    }
    public static function storeSettings($data)
    {
        if (is_array($data)) {
            foreach ($data as $key => $value) {
                if (isset(self::$config[$key])) {
                    self::$config[$key] = $value;
                    N2StorageSectionAdmin::set('system', 'fonts', $key, $value, 1, 1);
                    unset($data[$key]);
                }
            }
            if (count($data)) {
                self::$config['plugins'] = new N2Data($data);
                N2StorageSectionAdmin::set('system', 'fonts', 'plugins', self::$config['plugins']->toJSON(), 1, 1);
            }
            return true;
        }
        return false;
    }
}
if (class_exists('N2FontRenderer', false)) {
    $fontSettings = N2Fonts::loadSettings();
    N2FontRenderer::$defaultFont = $fontSettings['default-family'];
}