Jake Vanderwerf
2026-02-10 649c6af379f1247cbbf924a6ed39244e9aba46fb
=tattysoap latest
3 files deleted
1 files renamed
10 files modified
2 files added
661 ■■■■■ changed files
atatty.php 127 ●●●● patch | view | raw | blame | history
content/_setup.php 8 ●●●● patch | view | raw | blame | history
content/sample.php 67 ●●●●● patch | view | raw | blame | history
content/soap.php 69 ●●●●● patch | view | raw | blame | history
email/_setup.php 50 ●●●● patch | view | raw | blame | history
files/fileManagement.php 52 ●●●● patch | view | raw | blame | history
forms/_setup.php 8 ●●●● patch | view | raw | blame | history
forms/contact.php 11 ●●●●● patch | view | raw | blame | history
login/_setup.php 8 ●●●● patch | view | raw | blame | history
taxonomies/_setup.php 24 ●●●● patch | view | raw | blame | history
taxonomies/flags.php 27 ●●●●● patch | view | raw | blame | history
taxonomies/style.php 35 ●●●●● patch | view | raw | blame | history
temp.php 138 ●●●● patch | view | raw | blame | history
users/_setup.php 12 ●●●● patch | view | raw | blame | history
users/client.php 4 ●●●● patch | view | raw | blame | history
users/enthusiast.php 21 ●●●●● patch | view | raw | blame | history
atatty.php
File was renamed from alegacy.php
@@ -1,44 +1,14 @@
<?php
/*
Plugin Name: Legacy Extension
Plugin URI: https://legacytattooremoval.ca/
Description: An Extension of JakeVan Base, for Legacy Tattoo Removal.
Plugin Name: Tatty Soap Extension
Plugin URI: https://tattysoap.ca/
Description: An Extension of JakeVan Base, for Tatty Soap.
Author: Jake Vanderwerf
Version: 1.0.0
Author URI: https://jakevan.ca/
Textdomain: altr
Textdomain: atat
*/
//PLUGIN STRUCTURE
// /content/
//      art.php
//      design.php
//      development.php
//      _setup.php
//      strategy.php
//      writing.php
// /dashboard/
//      _setup.php
// /files/
//      fileManagement.php
// /forms/
//      _setup.php
// /login/
//      _setup.php
// /taxonomies/
//      city.php
//      form.php
//      media.php
//      progress.php
//      _setup.php
//      style.php
//      target.php
//      theme.php
// /users/
//      client.php
//      _setup.php
// ajakevan.php     <-- main plugin file
if (!defined('ABSPATH')) {
    exit;
}
@@ -46,21 +16,21 @@
use JVBase\managers\CacheManager;
add_filter('jvb_base', function () {
    return 'altr_';
    return 'atat_';
});
const AJV_DIR = WP_PLUGIN_DIR . '/alegacy';
define('AJV_URL', plugin_dir_url(__FILE__));
const ATAT_DIR = WP_PLUGIN_DIR . '/atatty';
define('ATAT_URL', plugin_dir_url(__FILE__));
require(AJV_DIR . '/content/_setup.php');
require(AJV_DIR . '/dashboard/_setup.php');
require(AJV_DIR . '/email/_setup.php');
require(AJV_DIR . '/forms/_setup.php');
require(AJV_DIR . '/login/_setup.php');
require(AJV_DIR . '/taxonomies/_setup.php');
require(AJV_DIR . '/users/_setup.php');
//require(AJV_DIR . '/files/fileManagement.php');
require(ATAT_DIR . '/content/_setup.php');
require(ATAT_DIR . '/dashboard/_setup.php');
require(ATAT_DIR . '/email/_setup.php');
require(ATAT_DIR . '/forms/_setup.php');
require(ATAT_DIR . '/login/_setup.php');
require(ATAT_DIR . '/taxonomies/_setup.php');
require(ATAT_DIR . '/users/_setup.php');
//require(ATAT_DIR . '/files/fileManagement.php');
/**
@@ -79,22 +49,22 @@
 *         - rewrite rules
 *         - archive title
 */
add_filter('jvb_site', 'altr_setup_site');
function altr_setup_site():array
add_filter('jvb_site', 'atat_setup_site');
function atat_setup_site():array
{
    return [
        'icons'               => 'light',
        'is_directory'        => true,        //as in, a membership directory
        'is_directory'        => false,        //as in, a membership directory
        'has_membership'      => false,
        'has_map'             => true,
        'dashboard'           => true,
        'referrals'           => true,
        'magicLink'           => true,
        'support'         => false,
        'feed_block'      => true,
        'feed_block'      => false,
        'email_notifications' => false,
        'integrations'  => [
            'bluesky'     => true,
            'bluesky'     => false,
            'cloudflare'  => true,
            'facebook'    => true,
            'maps'        => true,
@@ -121,8 +91,8 @@
 *         - term_approval              = (bool) verified users can create new terms, but needs approval
 *          - member_only              = (array) if empty, open to any registered user. otherwise an array of registered user roles
 */
//add_filter('jvb_membership', 'altr_setup_membership');
//function altr_setup_membership():array
//add_filter('jvb_membership', 'atat_setup_membership');
//function atat_setup_membership():array
//{
//    return [
//        'member_content'  => true,
@@ -139,23 +109,23 @@
//    ];
//}
//
//add_filter('jvbLoadingQuips', 'altr_loading_quips');
//function altr_loading_quips(array $quips):array
//add_filter('jvbLoadingQuips', 'atat_loading_quips');
//function atat_loading_quips(array $quips):array
//{
//    return [];
//}
add_filter('jvbAboveHeader', 'altr_legacy_header');
function altr_legacy_header(string $header):string
//add_filter('jvbAboveHeader', 'atat_header');
function atat_legacy_header(string $header):string
{
    return '<p><b>WED - SUN</b> <span class="hide-small">&emsp;</span>10<span class="hide-small">:00</span>AM - 6<span class="hide-small">:00</span>PM</p><p>By Appointment<span class="hide-small"> Only</span></p>';
}
add_filter('jvbMenuExtra', 'altr_contact_nav', 10, 3);
function altr_contact_nav(string $nav, string $menuName, array $block):string
add_filter('jvbMenuExtra', 'atat_contact_nav', 10, 3);
function atat_contact_nav(string $nav, string $menuName, array $block):string
{
    if (array_key_exists('attrs', $block)
        && array_key_exists('className', $block['attrs'])
@@ -176,7 +146,7 @@
    ) {
        return $nav.'<li><ul class="socials">
            <li>
                <a href="https://www.facebook.com/LegacyTattooRemoval/" target="_blank" rel="nofollow" title="Find us on Facebook">
                <a href="https://www.facebook.com/tatty.soap/" target="_blank" rel="nofollow" title="Find us on Facebook">
                    '.jvbIcon('facebook-logo').'
                    <span class="screen-reader-text">
                        Find us on Facebook
@@ -184,21 +154,13 @@
                </a>
            </li>
            <li>
                <a href="https://www.instagram.com/LegacyTattooRemoval/" target="_blank" rel="nofollow" title="Find us on Instagram">
                <a href="https://www.instagram.com/tatty.soap" target="_blank" rel="nofollow" title="Find us on Instagram">
                    '.jvbIcon('instagram-logo').'
                    <span class="screen-reader-text">
                        Find us on Instagram
                    </span>
                </a>
            </li>
            <li>
                <a href="https://bsky.app/profile/legacyrebrand.test" target="_blank" rel="nofollow" title="Find us on Bluesky">
                    '.jvbIcon('butterfly').'
                    <span class="screen-reader-text">
                        Find us on Bluesky
                    </span>
                </a>
            </li>
        </ul></li>';
    }
@@ -213,42 +175,21 @@
}
add_action('jvbBlockStyles', 'altr_blockStyles');
function altr_blockStyles()
add_action('jvbBlockStyles', 'atat_blockStyles');
function atat_blockStyles()
{
    register_block_style(
        'core/list',
        [
            'name'=>'blocky',
            'label' => __('Blocky', 'altr')
            'label' => __('Blocky', 'atat')
        ]
    );
    register_block_style(
        'core/group',
        [
            'name'=>'triangle',
            'label' => __('Triangle', 'altr')
            'label' => __('Triangle', 'atat')
        ]
    );
}
function altr_render_core_post_excerpt(array $block, string $content)
{
    global $post;
    if (!has_excerpt($post)) {
        return '';
    }
    $excerpt = $post->post_excerpt;
    $before = is_singular() ? '<span class="tldr" title="Too Long, Didn\'t Read">TLDR:</span>' : '';
    $excerpt = $before.$excerpt;
    return '<div class="excerpt">'.apply_filters('the_content', $excerpt).'</div>';
}
add_action( 'init', 'altr_add_excerpts_to_pages' );
function altr_add_excerpts_to_pages() {
    add_post_type_support( 'page', 'excerpt' );
}
content/_setup.php
@@ -29,12 +29,12 @@
 */
require(AJV_DIR . '/content/sample.php');
require(ATAT_DIR . '/content/soap.php');
add_filter('jvb_content', 'altr_content');
function altr_content($content):array
add_filter('jvb_content', 'atat_content');
function atat_content($content):array
{
    return [
        'sample'       => altr_sample(),
        'soap'       => atat_soap(),
    ];
}
content/sample.php
File was deleted
content/soap.php
New file
@@ -0,0 +1,69 @@
<?php
// /content/soap.php
function atat_soap():array
{
    return [
        'singular'       => 'Soap',
        'plural'       => 'Soaps',
        'dash_title'    => 'Soap',
        'dash_description' => 'Manage your soap',
        'breadcrumb'    => 'Soap',
        'icon'         => 'sparkle',
        'integrations'  => [
            'helcim'    => [
                'initial'   => true,
                'update'    => true,
            ],
        ],
        'rewrite'      => [
            'slug'       => 'soap',
            'with_front' => false,
        ],
        'fields'       => [
            'post_title'     => [
                'type'  => 'text',
                'label' => 'Name',
            ],
            'post_status'         => [
                'type'      => 'radio',
                'label'     => 'Status',
                'hidden'    => true,
                'options'   => [
                    'publish'   => 'Show',
                    'draft'     => 'Hide',
                    'trash'     => 'Scrap',
                    'delete'    => 'Permanently Delete'
                ]
            ],
            'post_slug' => [
                'type'  => 'text',
                'label' => 'Slug',
                'hidden'    => true,
            ],
            'post_content'        => [
                'type'  => 'textarea',
                'label' => 'Description',
                'quill' => true,
            ],
            'ingredients' => [
                'type'  => 'textarea',
                'label' => 'Ingredients',
                'quill' => true,
            ],
            'extra_info' => [
                'type'  => 'textarea',
                'label' => 'Extra Info',
                'quill' => true,
            ],
            'flags'  => [
                'type'  => 'taxonomy',
                'taxonomy'  => 'flags',
                'term'  => 'flags',
                'label' => 'Flags',
            ]
        ],
        'single_image' => true,
        'upload_title' => 'Upload Soaps',
    ];
}
email/_setup.php
@@ -1,42 +1,42 @@
<?php
$jvbEmail = add_filter('jvb_email', 'altr_email');
$jvbEmail = add_filter('jvb_email', 'atat_email');
function altr_email(array $defaults):array
function atat_email(array $defaults):array
{
    return [
        'colours'       => [
            'action-0'      => '#ff0080',
            'action-50'     => '#ff2492',
            'action-100'    => '#ff47a4',
            'action-200'    => '#ff6bb5',
            'secondary-0'   => '#D69121',
            'secondary-50'  => '#ffc421',
            'secondary-100' => '#ffcd44',
            'secondary-200' => '#ffd768',
            'light'         => '#efefef',
            'light-50'      => '#e2e2e2',
            'light-100'     => '#d5d5d5',
            'light-200'     => '#c9c9c9',
            'dark'          => '#151515',
            'dark-50'       => '#222222',
            'dark-100'      => '#2e2e2e',
            'dark-200'      => '#3b3b3b',
            'action-0'      => '#AD5B4B',
            'action-50'     => '#b7695a',
            'action-100'    => '#bf796c',
            'action-200'    => '#c78a7e',
            'secondary-0'   => '#DA993F',
            'secondary-50'  => '#dea454',
            'secondary-100' => '#e2b06a',
            'secondary-200' => '#e6bb7f',
            'light'         => '#fdfcfc',
            'light-50'      => '#f7f4f3',
            'light-100'     => '#f0ebea',
            'light-200'     => '#eae3e2',
            'dark'          => '#503d3a',
            'dark-50'       => '#594440',
            'dark-100'      => '#624b47',
            'dark-200'      => '#6b514d',
            'action-contrast'=> '',
            'secondary-contrast'=> '',
        ],
        'content'       => [
            'title'             => get_bloginfo('name'),
            'subjectPrefix'     => '['.get_bloginfo('name').']',
            'signature'         => '<p>&emsp; â€”  â™¡ the edmonton.ink crew</p>',
            'signature'         => '<p>&emsp; â€”  â™¡ Madi Mori</p>',
            'footer'    => [
                '<p>&copy; ' . date('Y') . ' edmonton.ink â€” Your tattoo scene on your screen.</p>',
                '<p><a href="' . get_home_url() . '" class="text-link">edmonton.ink</a></p>'
                '<p>&copy; ' . date('Y') . ' Tatty Soap</p>',
                '<p><a href="' . get_home_url() . '" class="text-link">Tatty Soap</a></p>'
            ]
        ],
        'types' => [
            'newUser' => [
                'subject'       => 'Welcome to Legacy! Finish creating your account.',
                'subject'       => 'Welcome to Tatty Soap! Finish creating your account.',
                'showPrefix'    => true,
            ],
            'resetPass' => [
@@ -95,8 +95,8 @@
 *
 */
add_filter('jvbNewUserEmail', 'altr_new_user_email', 10, 2);
function altr_new_user_email(string $message, WP_User $user):string
add_filter('jvbNewUserEmail', 'atat_new_user_email', 10, 2);
function atat_new_user_email(string $message, WP_User $user):string
{
    $user_login = $user->user_login;
@@ -108,7 +108,7 @@
        $message = sprintf(
            '<p>Hey %s!</p>
            <p>Thanks for signing up for our referral program at Legacy.</p>
            <p>Thanks for signing up for a Tatty Soap account.</p>
            <p><b>Login with your email: </b> %s</p>
            <p>To set your password and access your account, click the button below:</p>%s
            <p>Or copy and paste this link into your browser: %s</p>
files/fileManagement.php
@@ -4,8 +4,8 @@
 * Custom upload directory structure for edmonton.ink
 * Recreates the original directory logic with shops, artists, partners, etc.
 */
add_filter('jvb_upload_directory', 'altr_upload_directory', 10, 4);
function altr_upload_directory($path, $post_type, $user_id, $term_id)
add_filter('jvb_upload_directory', 'atat_upload_directory', 10, 4);
function atat_upload_directory($path, $post_type, $user_id, $term_id)
{
    switch ($post_type) {
        case 'shop':
@@ -37,8 +37,8 @@
 * Custom filename generation for edmonton.ink
 * Recreates the original SEO-friendly filename logic
 */
add_filter('jvb_upload_filename', 'altr_filename', 10, 6);
function altr_filename($filename, $original_name, $user_data, $post_type, $user_id, $term_id)
add_filter('jvb_upload_filename', 'atat_filename', 10, 6);
function atat_filename($filename, $original_name, $user_data, $post_type, $user_id, $term_id)
{
    // Get artist/shop/partner details
    $post = (int)get_user_meta($user_id, BASE . 'link', true);
@@ -61,13 +61,13 @@
                '%s-best-tattoo-shop-%s-%s',
                sanitize_title($city),
                sanitize_title($shop_term->name),
                altr_get_counter($user_id, $post_type)
                atat_get_counter($user_id, $post_type)
            );
        case 'artist':
            // Profile images: {city}-best-{type}-{specialties}-{name}
            $type = jvbArtistType($post);
            $specialties = altr_get_artist_top_styles($post);
            $specialties = atat_get_artist_top_styles($post);
            return sprintf(
                '%s-best-%s-%s-%s-%s',
@@ -75,7 +75,7 @@
                sanitize_title($type),
                sanitize_title($specialties),
                sanitize_title($user_data->display_name),
                altr_get_counter($user_id, $post_type)
                atat_get_counter($user_id, $post_type)
            );
        case 'partner':
@@ -87,13 +87,13 @@
                sanitize_title($city),
                sanitize_title($service_type),
                sanitize_title($user_data->display_name),
                altr_get_counter($user_id, $post_type)
                atat_get_counter($user_id, $post_type)
            );
        case 'tattoo':
            // Get style and subject if available
            $style = altr_get_primary_taxonomy($post, BASE . 'style');
            $subject = altr_get_primary_taxonomy($post, BASE . 'theme');
            $style = atat_get_primary_taxonomy($post, BASE . 'style');
            $subject = atat_get_primary_taxonomy($post, BASE . 'theme');
            return sprintf(
                '%s-%s-%s-tattoo-by-%s-%s',
@@ -101,13 +101,13 @@
                sanitize_title($style),
                sanitize_title($subject),
                sanitize_title($user_data->display_name),
                altr_get_counter($user_id, $post_type)
                atat_get_counter($user_id, $post_type)
            );
        case 'artwork':
            // Get style and subject if available
            $style = altr_get_primary_taxonomy($post, BASE . 'artstyle');
            $subject = altr_get_primary_taxonomy($post, BASE . 'arttheme');
            $style = atat_get_primary_taxonomy($post, BASE . 'artstyle');
            $subject = atat_get_primary_taxonomy($post, BASE . 'arttheme');
            return sprintf(
                '%s-%s-%s-artwork-by-%s-%s',
@@ -115,19 +115,19 @@
                sanitize_title($style),
                sanitize_title($subject),
                sanitize_title($user_data->display_name),
                altr_get_counter($user_id, $post_type)
                atat_get_counter($user_id, $post_type)
            );
        case 'piercing':
            // Get style if available
            $style = altr_get_primary_taxonomy($post, BASE . 'pstyle');
            $style = atat_get_primary_taxonomy($post, BASE . 'pstyle');
            return sprintf(
                '%s-%s-piercing-by-%s-%s',
                sanitize_title($city),
                sanitize_title($style),
                sanitize_title($user_data->display_name),
                altr_get_counter($user_id, $post_type)
                atat_get_counter($user_id, $post_type)
            );
        default:
@@ -139,7 +139,7 @@
                sanitize_title($city),
                sanitize_title($content_type),
                sanitize_title($user_data->display_name),
                altr_get_counter($user_id, $post_type)
                atat_get_counter($user_id, $post_type)
            );
    }
}
@@ -148,8 +148,8 @@
 * Custom alt text generation for edmonton.ink
 * Recreates the original detailed alt text logic
 */
add_filter('jvb_upload_alt_text', 'altr_alt_text', 10, 7);
function altr_alt_text($alt_text, $file, $user_data, $post_id, $post_type, $user_id, $term_id)
add_filter('jvb_upload_alt_text', 'atat_alt_text', 10, 7);
function atat_alt_text($alt_text, $file, $user_data, $post_id, $post_type, $user_id, $term_id)
{
    $post = get_user_meta($user_id, BASE . 'link', true);
@@ -174,7 +174,7 @@
            );
        case 'artist':
            $specialties = altr_get_artist_top_styles($post);
            $specialties = atat_get_artist_top_styles($post);
            return sprintf(
                'A photo of %s %s %s, specializing in %s tattoos',
@@ -237,8 +237,8 @@
 * Custom image title generation for edmonton.ink
 * Recreates the original SEO-friendly title logic
 */
add_filter('jvb_upload_image_title', 'altr_image_title', 10, 7);
function altr_image_title($title, $file, $user_data, $post_id, $post_type, $user_id, $term_id)
add_filter('jvb_upload_image_title', 'atat_image_title', 10, 7);
function atat_image_title($title, $file, $user_data, $post_id, $post_type, $user_id, $term_id)
{
    $post = get_user_meta($user_id, BASE . 'link', true);
@@ -342,7 +342,7 @@
/**
 * Get the next file counter for edmonton.ink style counters
 */
function altr_get_counter($user_id, $post_type)
function atat_get_counter($user_id, $post_type)
{
    // Get counter key for this post type
    $counter_key = BASE . str_replace(BASE, '', $post_type) . '_counter';
@@ -363,7 +363,7 @@
/**
 * Get artist's top styles for filename generation
 */
function altr_get_artist_top_styles($post_id)
function atat_get_artist_top_styles($post_id)
{
    if (!function_exists('JVBase\\meta\\MetaManager')) {
        // Fallback if MetaManager not available
@@ -403,7 +403,7 @@
/**
 * Get primary taxonomy term for content
 */
function altr_get_primary_taxonomy($post_id, $taxonomy)
function atat_get_primary_taxonomy($post_id, $taxonomy)
{
    $terms = wp_get_post_terms($post_id, $taxonomy, array('fields' => 'names'));
    if (is_wp_error($terms) || empty($terms)) {
@@ -416,7 +416,7 @@
 * Get partner type (placeholder - implement based on your edmonton.ink logic)
 * This function was referenced in the original but not provided
 */
function altr_partner_type($post_id)
function atat_partner_type($post_id)
{
    // Implement based on your edmonton.ink logic
    // This might look at a taxonomy or meta field
forms/_setup.php
@@ -15,11 +15,11 @@
 *
 ************************************************************/
require(AJV_DIR . '/forms/contact.php');
require(ATAT_DIR . '/forms/contact.php');
add_filter('jvb_register_forms', 'altr_register_forms');
add_filter('jvb_register_forms', 'atat_register_forms');
function altr_register_forms($forms) {
    $forms['contact']           = altr_contact();
function atat_register_forms($forms) {
    $forms['contact']           = atat_contact();
    return $forms;
}
forms/contact.php
@@ -1,18 +1,15 @@
<?php
function altr_contact():array
function atat_contact():array
{
    return [
        'title'         => 'Contact',
        'description'   => [
            'You can always text, call, or email.',
            'Or you can fill out this form and we\'ll get back to you as soon as we can.',
        ],
        'title'         => '',
        'description'   => [],
        'submit'        => 'Contact',
        'success_title' => 'Success!',
        'success_description'   => [
            'We got it.',
            'We\'ll get back to you as soon as we can - usually pretty quick (unless it\'s a Monday or a Tuesday)'
            'We\'ll get back to you as soon as we can'
        ],
        'email_subject' => '[CONTACT]',
        'fields'        => [
login/_setup.php
@@ -1,12 +1,12 @@
<?php
// /login/setup.php
add_filter('jvb_login', 'altr_setup_login');
function altr_setup_login():array
add_filter('jvb_login', 'atat_setup_login');
function atat_setup_login():array
{
    return [
        'login' => [
            'title'        => 'Log in',
            'description'   => ['Log in to your account to see your referral balance and get your unique code!'],
            'description'   => ['Log in to your account to create new orders or see your order history!'],
            'submit'        => 'Log in',
        ],
        'favourites'    => [
@@ -20,7 +20,7 @@
            'title'        => 'Create your Account',
            'submit'        => 'Create Account',
            'email'     => [
                'subject'   => '[Legacy] Finish Creating Your Account'
                'subject'   => '[TATTYSOAP] Finish Creating Your Account'
            ],
            'success'       => [
                'title' => 'Success!',
taxonomies/_setup.php
@@ -20,28 +20,12 @@
 *             -> add use_in_stats (bool) to use the field in user statistics
 */
require(AJV_DIR . '/taxonomies/age.php');
require(AJV_DIR . '/taxonomies/body-part.php');
require(AJV_DIR . '/taxonomies/goal.php');
require(AJV_DIR . '/taxonomies/person.php');
require(AJV_DIR . '/taxonomies/section.php');
require(AJV_DIR . '/taxonomies/skin-type.php');
require(AJV_DIR . '/taxonomies/style.php');
require(AJV_DIR . '/taxonomies/theme.php');
require(AJV_DIR . '/taxonomies/timeline.php');
require(ATAT_DIR . '/taxonomies/flags.php');
add_filter('jvb_taxonomy', 'altr_taxonomy');
function altr_taxonomy():array
add_filter('jvb_taxonomy', 'atat_taxonomy');
function atat_taxonomy():array
{
    return [
        'age'       => altr_age(),
        'body-part' => altr_body_part(),
        'goal'      => altr_goal(),
        'person'    => altr_person(),
        'skin-type' => altr_skin_type(),
        'timeline'  => altr_timeline(),
        'style'     => altr_style(),
        'theme'     => altr_theme(),
        'section'   => altr_section(),
        'flags'     => atat_flags(),
    ];
}
taxonomies/flags.php
New file
@@ -0,0 +1,27 @@
<?php
// /taxonomies/flags.php
function atat_flags():array
{
    return [
        'singular'     => 'Flag',
        'plural'       => 'Flags',
        'icon'         => 'warning-diamond',
        'rewrite'      => [
            'slug'         => 'flagged',
            'with_front'   => false,
            'hierarchical' => true,
        ],
        'hierarchical' => true,
        'for_content'  => [
            'soap',
        ],
        'fields'       => [
            'term_name'       => [
                'label'     => 'Name',
                'type'      => 'text',
                'quickEdit' => true,
            ],
            'common'          => [ 'wiki', 'alternate_name', 'keywords' ]
        ]
    ];
}
taxonomies/style.php
File was deleted
temp.php
@@ -36,20 +36,20 @@
use JVBase\managers\CacheManager;
add_filter('jvb_base', function () {
    return 'altr_';
    return 'atat_';
});
const AJV_DIR = WP_PLUGIN_DIR . '/ajakevan';
define('AJV_URL', plugin_dir_url(__FILE__));
const ATAT_DIR = WP_PLUGIN_DIR . '/ajakevan';
define('ATAT_URL', plugin_dir_url(__FILE__));
require(AJV_DIR . '/content/setup.php');
//require(AJV_DIR . '/dashboard/setup.php');
//require(AJV_DIR . '/forms/setup.php');
require(AJV_DIR . '/login/setup.php');
require(AJV_DIR . '/taxonomies/setup.php');
//require(AJV_DIR . '/users/setup.php');
//require(AJV_DIR . '/files/fileManagement.php');
require(ATAT_DIR . '/content/setup.php');
//require(ATAT_DIR . '/dashboard/setup.php');
//require(ATAT_DIR . '/forms/setup.php');
require(ATAT_DIR . '/login/setup.php');
require(ATAT_DIR . '/taxonomies/setup.php');
//require(ATAT_DIR . '/users/setup.php');
//require(ATAT_DIR . '/files/fileManagement.php');
/**
@@ -68,8 +68,8 @@
 *         - rewrite rules
 *         - archive title
 */
add_filter('jvb_site', 'altr_setup_site');
function altr_setup_site(): array
add_filter('jvb_site', 'atat_setup_site');
function atat_setup_site(): array
{
    return [
        'icons' => 'light',
@@ -108,8 +108,8 @@
 *         - term_approval              = (bool) verified users can create new terms, but needs approval
 *          - member_only              = (array) if empty, open to any registered user. otherwise an array of registered user roles
 */
//add_filter('jvb_membership', 'altr_setup_membership');
//function altr_setup_membership():array
//add_filter('jvb_membership', 'atat_setup_membership');
//function atat_setup_membership():array
//{
//    return [
//        'member_content'  => true,
@@ -126,15 +126,15 @@
//    ];
//}
add_filter('jvbLoadingQuips', 'altr_loading_quips');
function altr_loading_quips(array $quips): array
add_filter('jvbLoadingQuips', 'atat_loading_quips');
function atat_loading_quips(array $quips): array
{
    return [];
}
// /content/art.php
function altr_art(): array
function atat_art(): array
{
    return [
        'singular' => 'Art',
@@ -181,7 +181,7 @@
// /content/design.php
function altr_design(): array
function atat_design(): array
{
    return [
        'singular' => 'Graphic Design',
@@ -226,7 +226,7 @@
// /content/development.php
function altr_development(): array
function atat_development(): array
{
    return [
        'singular' => 'Development',
@@ -299,29 +299,29 @@
 *  - 'section' => (string) the slug of the section, as defined above
 */
require(AJV_DIR . '/content/art.php');
require(AJV_DIR . '/content/design.php');
require(AJV_DIR . '/content/development.php');
require(AJV_DIR . '/content/strategy.php');
require(AJV_DIR . '/content/support.php');
require(AJV_DIR . '/content/writing.php');
require(ATAT_DIR . '/content/art.php');
require(ATAT_DIR . '/content/design.php');
require(ATAT_DIR . '/content/development.php');
require(ATAT_DIR . '/content/strategy.php');
require(ATAT_DIR . '/content/support.php');
require(ATAT_DIR . '/content/writing.php');
add_filter('jvb_content', 'altr_content');
function altr_content($content): array
add_filter('jvb_content', 'atat_content');
function atat_content($content): array
{
    return [
        'design' => altr_design(),
        'development' => altr_development(),
        'strategy' => altr_strategy(),
        'art' => altr_art(),
        'writing' => altr_writing(),
        'support' => altr_support(),
        'design' => atat_design(),
        'development' => atat_development(),
        'strategy' => atat_strategy(),
        'art' => atat_art(),
        'writing' => atat_writing(),
        'support' => atat_support(),
    ];
}
// /content/strategy.php
function altr_strategy(): array
function atat_strategy(): array
{
    return [
        'singular' => 'Strategy',
@@ -366,7 +366,7 @@
// /content/support.php
function altr_support(): array
function atat_support(): array
{
    return [
        'singular' => 'Support',
@@ -394,7 +394,7 @@
// /content/writing.php
function altr_writing(): array
function atat_writing(): array
{
    return [
        'singular' => 'Writing',
@@ -439,8 +439,8 @@
// /login/setup.php
add_filter('jvb_login', 'altr_setup_login');
function altr_setup_login(): array
add_filter('jvb_login', 'atat_setup_login');
function atat_setup_login(): array
{
    return [
        'login_from_favourite_header' => 'Join the scene; <small>keep your collection.</small>',
@@ -458,7 +458,7 @@
// /taxonomies/city.php
function altr_city(): array
function atat_city(): array
{
    return [
        'singular' => 'City',
@@ -495,7 +495,7 @@
}
// /taxonomies/form.php
function altr_form(): array
function atat_form(): array
{
    return [
        'singular' => 'Form',
@@ -527,7 +527,7 @@
}
// /taxonomies/media.php
function altr_media(): array
function atat_media(): array
{
    return [
        'singular' => 'Medium',
@@ -561,7 +561,7 @@
}
// /taxonomies/progress.php
function altr_progress(): array
function atat_progress(): array
{
    return [
        'singular' => 'Progress',
@@ -615,30 +615,30 @@
 *             -> add use_in_stats (bool) to use the field in user statistics
 */
require(AJV_DIR . '/taxonomies/city.php');
require(AJV_DIR . '/taxonomies/form.php');
require(AJV_DIR . '/taxonomies/media.php');
require(AJV_DIR . '/taxonomies/progress.php');
require(AJV_DIR . '/taxonomies/style.php');
require(AJV_DIR . '/taxonomies/target.php');
require(AJV_DIR . '/taxonomies/theme.php');
require(ATAT_DIR . '/taxonomies/city.php');
require(ATAT_DIR . '/taxonomies/form.php');
require(ATAT_DIR . '/taxonomies/media.php');
require(ATAT_DIR . '/taxonomies/progress.php');
require(ATAT_DIR . '/taxonomies/style.php');
require(ATAT_DIR . '/taxonomies/target.php');
require(ATAT_DIR . '/taxonomies/theme.php');
add_filter('jvb_taxonomy', 'altr_taxonomy');
function altr_taxonomy(): array
add_filter('jvb_taxonomy', 'atat_taxonomy');
function atat_taxonomy(): array
{
    return [
        'city' => altr_city(),
        'style' => altr_style(),
        'theme' => altr_theme(),
        'form' => altr_form(),
        'medium' => altr_media(),
        'target' => altr_target(),
        'progress' => altr_progress(),
        'city' => atat_city(),
        'style' => atat_style(),
        'theme' => atat_theme(),
        'form' => atat_form(),
        'medium' => atat_media(),
        'target' => atat_target(),
        'progress' => atat_progress(),
    ];
}
// /taxonomies/style.php
function altr_style(): array
function atat_style(): array
{
    return [
        'directory' => 'Styles',
@@ -677,7 +677,7 @@
}
// /taxonomies/target.php
function altr_target(): array
function atat_target(): array
{
    return [
        'singular' => 'Target Audience',
@@ -709,7 +709,7 @@
}
// /taxonomies/theme.php
function altr_theme(): array
function atat_theme(): array
{
    return [
        'directory' => 'Themes',
@@ -767,7 +767,7 @@
// /users/client.php
function altr_user_client(): array
function atat_user_client(): array
{
    return [
        'label' => 'Client',
@@ -788,7 +788,7 @@
}
// /users/enthusiast.php
function altr_user_enthusiast(): array
function atat_user_enthusiast(): array
{
    return [
        'label' => 'Enthusiast',
@@ -835,15 +835,15 @@
 *                             -> description of the user role. Used in the registration page
 */
require(AJV_DIR . '/users/client.php');
require(AJV_DIR . '/users/enthusiast.php');
require(ATAT_DIR . '/users/client.php');
require(ATAT_DIR . '/users/enthusiast.php');
add_filter('jvb_user', 'altr_user');
add_filter('jvb_user', 'atat_user');
function altr_user():array
function atat_user():array
{
    return [
        'enthusiast'    => altr_user_enthusiast(),
        'client'        => altr_user_client(),
        'enthusiast'    => atat_user_enthusiast(),
        'client'        => atat_user_client(),
    ];
}
users/_setup.php
@@ -25,15 +25,15 @@
 *                             -> description of the user role. Used in the registration page
 */
require(AJV_DIR . '/users/client.php');
//require(AJV_DIR . '/users/enthusiast.php');
require(ATAT_DIR . '/users/client.php');
//require(ATAT_DIR . '/users/enthusiast.php');
add_filter('jvb_user', 'altr_user');
function altr_user():array
add_filter('jvb_user', 'atat_user');
function atat_user():array
{
    return [
//        'enthusiast'    => altr_user_enthusiast(),
        'client'        => altr_user_client(),
//        'enthusiast'    => atat_user_enthusiast(),
        'client'        => atat_user_client(),
    ];
}
users/client.php
@@ -1,11 +1,11 @@
<?php
// /users/client.php
function altr_user_client():array
function atat_user_client():array
{
    return [
        'label'            => 'Client',
        'has_dashboard'    => true,
        'can_create'       => ['support'],
        'can_create'       => [''],
        'can_register'     => true,
        'keep_stats'       => false,
        'icon'             => 'user',
users/enthusiast.php
File was deleted