<?php

define('MKBH_RSS_FEED_S3_ACCESS_KEY_ID', 'AKIAZFOV64NDVOGMOGYY');
define('MKBH_RSS_FEED_S3_SECRET_ACCESS_KEY', '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');
define('MKBH_RSS_FEED_S3_BUCKET_NAME', 'kbh-rss-feed');
define('MKBH_RSS_FEED_S3_PUBLIC_ENDPOINT', 'http://kbh-rss-feed.s3-website-us-east-1.amazonaws.com');

/**
 * Implements hook_init().
 */
function mkbh_rss_feed_init()
{
    module_load_include('php', 'mkbh_rss_feed', 'lib/http_build_url');
    module_load_include('php', 'mkbh_rss_feed', 'lib/S3');

    module_load_include('php', 'mkbh_rss_feed', 'lib/RSSWriter/FeedInterface');
    module_load_include('php', 'mkbh_rss_feed', 'lib/RSSWriter/ChannelInterface');
    module_load_include('php', 'mkbh_rss_feed', 'lib/RSSWriter/ItemInterface');

    module_load_include('php', 'mkbh_rss_feed', 'lib/RSSWriter/SimpleXMLElement');

    module_load_include('php', 'mkbh_rss_feed', 'lib/RSSWriter/Feed');
    module_load_include('php', 'mkbh_rss_feed', 'lib/RSSWriter/Channel');
    module_load_include('php', 'mkbh_rss_feed', 'lib/RSSWriter/Item');

    module_load_include('inc', 'mkbh_rss_feed', 'mkbh_rss_feed.helpers');
    module_load_include('inc', 'mkbh_rss_feed', 'mkbh_rss_feed.pages');
}

/**
 * Implements hook_menu().
 */
function mkbh_rss_feed_menu()
{
    $items['mailchimp/rss.xml'] = [
        'title' => 'MKBH Mailchimp Feed',
        'type' => MENU_CALLBACK,
        'access arguments' => ['access content'],
        'page callback' => 'mkbh_rss_feed_mailchimp_feed_full',
        'page arguments' => [],
        'file' => 'mkbh_rss_feed.pages.inc',
    ];

    $items['mailchimp/%/rss.xml'] = [
        'title' => 'MKBH Mailchimp Feed',
        'type' => MENU_CALLBACK,
        'access arguments' => ['access content'],
        'page callback' => 'mkbh_rss_feed_mailchimp_feed_partial',
        'page arguments' => [1],
        'file' => 'mkbh_rss_feed.pages.inc',
    ];

    return $items;
}

/**
 * Implements hook_cronapi().
 */
function mkbh_rss_feed_cronapi()
{
    $items['mkbh_rss_feed_upload_rss_feeds'] = [
        'title' => t('MKBH: Upload RSS Feeds to S3'),
        'file' => 'mkbh_rss_feed.jobs.inc',
        'file path' => drupal_get_path('module', 'mkbh_rss_feed'),
        'callback' => 'mkbh_rss_feed_upload_rss_feeds_job',
        'enabled' => FALSE,
        'tags' => ['rss', 'amazon', 's3'],
        'scheduler' => [
            'name' => 'crontab',
            'crontab' => [
                'rules' => ['0 * * * *'],
            ],
        ],
    ];

    return $items;
}
