You are here

function typekit_api_fontyourface_import in @font-your-face 7

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.2 modules/typekit_api/typekit_api.module \typekit_api_fontyourface_import()

Implements hook_fontyourface_import().

File

modules/typekit_api/typekit_api.module, line 22

Code

function typekit_api_fontyourface_import() {
  $logging = variable_get('fontyourface_detailed_logging', FALSE);
  $kits = typekit_api_get_kits();
  if ($logging) {
    watchdog('@font-your-face', 'Imported Typekit kits: @kits', array(
      '@kits' => print_r($kits, TRUE),
    ), WATCHDOG_INFO);
  }

  // if
  foreach ($kits as $kit) {
    $kit_info = typekit_api_get_kit($kit->id);
    if ($logging) {
      watchdog('@font-your-face', 'Imported Typekit kit info: @kit', array(
        '@kit' => print_r($kit_info, TRUE),
      ), WATCHDOG_INFO);
    }

    // if
    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);
          if ($logging) {
            watchdog('@font-your-face', 'Imported Typekit variant info: @variant', array(
              '@variant' => print_r($variant, TRUE),
            ), WATCHDOG_INFO);
          }

          // if
          $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);
          $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
    }
    elseif ($logging) {
      watchdog('@font-your-face', 'Typekit kit did not match current domain, @domain', array(
        '@domain' => $_SERVER['HTTP_HOST'],
      ), WATCHDOG_INFO);
    }

    // elseif
  }

  // foreach
}