<?php

if (!defined('ABSPATH')) {
    exit;
}

/*----------------------------------------
管理画面：表示オプション非表示
----------------------------------------*/
function immf_hide_screen_options($show, $screen) {

    if (
        $screen &&
        $screen->post_type === 'im_mail_form'
    ) {
        return false;
    }

    return $show;
}

add_filter(
    'screen_options_show_screen',
    'immf_hide_screen_options',
    10,
    2
);

/*----------------------------------------
管理画面：body class追加
----------------------------------------*/
function immf_admin_body_class($classes) {

    $screen = get_current_screen();

    if (!$screen) {
        return $classes;
    }


    /*
    メールフォーム一覧
    */
    if (
        $screen->base === 'edit' &&
        $screen->post_type === 'im_mail_form'
    ) {

        $classes .= ' im-mail-form-admin';
        $classes .= ' im-mail-form-list';

    }


    /*
    メールフォーム編集
    */
    if (
        $screen->base === 'post' &&
        $screen->post_type === 'im_mail_form'
    ) {

        $classes .= ' im-mail-form-admin';
        $classes .= ' im-mail-form-editor';

    }


    /*
    テンプレート設定
    */
    if (
        $screen->id === 'im_mail_form_page_im-mail-form-template-settings'
    ) {

        $classes .= ' im-mail-form-admin';
        $classes .= ' im-mail-form-template';

    }


    /*
    メール送信履歴
    */
    if (
        $screen->id === 'im_mail_form_page_im-mail-form-mail-logs'
    ) {

        $classes .= ' im-mail-form-admin';
        $classes .= ' im-mail-form-logs';

    }


    return $classes;

}

add_filter(
    'admin_body_class',
    'immf_admin_body_class'
);


/*----------------------------------------
管理画面：共通ヘッダー
----------------------------------------*/
function immf_render_admin_header() {

    require_once IMMF_PATH
        . 'includes/admin-header.php';

}

/*----------------------------------------
管理画面：一覧ヘッダー表示
----------------------------------------*/
function immf_render_list_header() {

    $screen = get_current_screen();

    if (
        !$screen ||
        $screen->id !== 'edit-im_mail_form'
    ) {
        return;
    }

    immf_render_admin_header();

}

add_action(
    'all_admin_notices',
    'immf_render_list_header'
);


/*----------------------------------------
管理画面：フォーム追加・編集ヘッダー表示
----------------------------------------*/
function immf_render_editor_header() {

    $screen = get_current_screen();

    if (
        !$screen ||
        $screen->post_type !== 'im_mail_form'
    ) {
        return;
    }

    immf_render_admin_header();

}

add_action(
    'admin_notices',
    'immf_render_editor_header'
);