You are here

function typekit_api_fontyourface_import in @font-your-face 7.2

Same name and namespace in other branches
  1. 8.3 modules/typekit_api/typekit_api.module \typekit_api_fontyourface_import()
  2. 6.2 modules/typekit_api/typekit_api.module \typekit_api_fontyourface_import()
  3. 7 modules/typekit_api/typekit_api.module \typekit_api_fontyourface_import()

Implements hook_fontyourface_import().

File

modules/typekit_api/typekit_api.module, line 23

Code

function typekit_api_fontyourface_import() {
  $success = TRUE;
  $kits = typekit_api_get_kits();
  fontyourface_log('Imported Typekit kits: @kits', array(
    '@kits' => print_r($kits, TRUE),
  ));
  foreach ($kits as $kit) {
    $kit_info = typekit_api_get_kit($kit->id);
    fontyourface_log('Imported Typekit kit info: @kit', array(
      '@kit' => print_r($kit_info, TRUE),
    ));
    if (typekit_api_kit_matches_domain($kit_info, $_SERVER['HTTP_HOST'])) {
      foreach ($kit_info->families as $family_info) {
        foreach ($family_info->variations as $variant_index => $variant_id) {
          $variant = typekit_api_get_variant($family_info->id, $variant_id);
          fontyourface_log('Imported Typekit variant info: @variant', array(
            '@variant' => print_r($variant, TRUE),
          ));
          $metadata = array(
            'typekit_id' => $variant->id,
            'variant' => $variant->font_variant,
            'kit' => $kit_info->id,
          );
          $font = new stdClass();
          $font->name = $variant->name;
          $font->url = 'http://typekit.com/fonts/' . $family_info->slug . '#' . $variant_id;
          $font->provider = 'typekit_api';
          $font->enabled = 1;
          $font->metadata = serialize($metadata);

          // Enclose each family name in single quotes.
          $font->css_family = "'" . implode("', '", $family_info->css_names) . "'";
          $font->css_style = $variant->font_style;
          $font->css_weight = $variant->font_weight;
          $font->foundry = $variant->foundry->name;
          $font->foundry_url = 'http://typekit.com/foundries/' . $variant->foundry->slug;
          $font->tags = array();
          fontyourface_save_font($font);
        }

        // foreach
      }

      // foreach
    }
    else {
      $success = FALSE;
      fontyourface_log('Typekit kit did not match current domain, @domain', array(
        '@domain' => $_SERVER['HTTP_HOST'],
      ));
    }
  }

  // foreach
  return $success;
}