pterotype/includes/init.php

41 lines
1.3 KiB
PHP

<?php
namespace init;
require_once plugin_dir_path( __FILE__ ) . 'server/api.php';
require_once plugin_dir_path( __FILE__ ) . 'server/actors.php';
require_once plugin_dir_path( __FILE__ ) . 'schema.php';
require_once plugin_dir_path( __FILE__ ) . 'server/webfinger.php';
require_once plugin_dir_path( __FILE__ ) . 'client/posts.php';
add_action( 'rest_api_init', function() {
\api\register_routes();
} );
add_action( 'user_register', function( $user_id ) {
$slug = get_the_author_meta( 'user_nicename', $user_id );
\actors\create_actor_user( $slug, 'user' );
} );
add_action( 'pterotype_init', function() {
\schema\run_migrations();
\actors\initialize_actors();
if ( WP_DEBUG ) {
$log_dir = plugin_dir_path( __FILE__ ) . '../log';
if ( ! file_exists( $log_dir ) ) {
mkdir( $log_dir, 0777, true );
}
file_put_contents( $log_dir, ob_get_contents() );
}
} );
add_action( 'pterotype_load', function() {
\schema\run_migrations();
} );
add_action( 'generate_rewrite_rules', '\webfinger\generate_rewrite_rules', 111 );
add_action( 'parse_request', '\webfinger\parse_request', 111 );
add_filter( 'query_vars', '\webfinger\query_vars' );
add_action( 'well_known_webfinger', '\webfinger\handle' );
add_action( 'transition_post_status', '\posts\handle_post_status_change', 10, 3 );
?>