Changeset 118498 in spip-zone


Ignore:
Timestamp:
Nov 10, 2019, 5:38:03 PM (4 months ago)
Author:
arnaud.berard@…
Message:

0.3.6 : grouper les fonts par famille dans la requète

Location:
_plugins_/webfonts/branches/webfonts2
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/webfonts/branches/webfonts2/README.md

    r118496 r118498  
    2323
    2424## Changelogs
     25
     260.3.6
     27
     28bugfix: grouper les fonts par famille dans la requète
    2529
    2630
  • _plugins_/webfonts/branches/webfonts2/paquet.xml

    r118496 r118498  
    22        prefix="webfonts2"
    33        categorie="maintenance"
    4         version="0.3.5"
     4        version="0.3.6"
    55        etat="dev"
    66        compatibilite="[3.0.0;3.2.*]"
  • _plugins_/webfonts/branches/webfonts2/webfonts2_fonctions.php

    r115894 r118498  
    2222*/
    2323function googlefont_request($webfonts,$subsets='',$type='css'){
    24         $subset = '&subset=' ;
     24                $subset = '&subset=' ;
    2525    if(is_array($webfonts) && count($webfonts) > 0 ){
     26      $fonts = array();
    2627        (strlen($subsets)) ? $subset .= $subsets : $subset = '';
    2728        foreach($webfonts as $font){
    28                 $variants = implode(',',$font['variants']);
    29                 $fonts[] = urlencode($font['family']).':'.$variants;
    30         }
    31         if(isset($fonts)){
    32             $fonts = implode('|',$fonts);
    33                 if($type == 'specimen'){
    34                         $request = "https://fonts.google.com/selection?selection.family=$fonts";
    35                 }else{
    36                         $request = "https://fonts.googleapis.com/css?family=$fonts".$subset."&display=swap";
    37                 }
    38 
    39                 return htmlentities($request);
    40         }
     29                                $family = $font['family'];
     30                                $variants = $font['variants'] ;
     31                                (array_key_exists($family,$fonts)) ? array_merge($fonts[$family],$variants) : $fonts[$family] = $variants;
     32                        }
     33      if(isset($fonts)){
     34                                $typeset = array();
     35                                foreach ($fonts as $family => $variants) {
     36                                        $variants = implode(',',$variants);
     37                                        $typeset[] = $family.':'.$variants;
     38                                }
     39        $fonts = implode('|',$typeset);
     40        if($type == 'specimen'){
     41                $request = "https://fonts.google.com/selection?selection.family=$fonts";
     42        }else{
     43                $request = "https://fonts.googleapis.com/css?family=$fonts".$subset."&display=swap";
     44        }
     45
     46        return htmlentities($request);
     47      }
    4148    }
    4249    return false;
     
    6875
    6976function lister_webfonts(){
    70         $fonts = pipeline('fonts_list',array(
    71                 'args'=>array(),
    72                 'data'=>$fonts
    73         ));
     77        $fonts = pipeline('fonts_list',array());
    7478        return $fonts;
    7579}
  • _plugins_/webfonts/branches/webfonts2/webfonts2_pipelines.php

    r118496 r118498  
    2020 * Ajout des polices configurées a la pipeline fonts_list
    2121 *
    22  * chaine retournée par le selecteurgenerique :   Open Sans:regular, Open Sans:800, Open Sans:300,
     22 * chaine retournée par le selecteurgenerique :
     23 *      Open Sans:regular, Open Sans:800, Open Sans:300,
    2324 *
    2425*/
    2526function webfonts2_fonts_list($fonts){
    2627        // si la pipeline n'est pas appelé avant initialiser
    27         (is_array($fonts)) ? $fonts : $fonts = array() ;
     28        (is_array($fonts)) ? $fonts = $fonts : $fonts = array() ;
    2829        $webfonts = lire_config('webfonts2/webfonts');
    2930        if(strlen($webfonts) AND $webfonts = explode(',',rtrim($webfonts,', ')) ){
Note: See TracChangeset for help on using the changeset viewer.