Your order qualifies for free shipping!

Remove item Thumbnail image Product Price Quantity Subtotal
× Delphi TC3587Track Control Arm
Supplier:

Baba

Availability:

3

KSh 14,021.30
KSh 14,021.30
× Febi Bilstein 101140Engine Oil
EDD: Friday, August 21, 2026
Supplier:

Baba

Delivery:

1

Availability:

24

KSh 2,157.75
KSh 2,157.75
× AISIN DM-003Clutch Disc
Supplier:

Baba

Availability:

1

KSh 1,084.85
KSh 1,084.85
× Denso 096400-1500Nozzle
Supplier:

Baba

Availability:

89

KSh 23,075.83
KSh 23,075.83
× Febi Bilstein 30124Pulley, water pump
Supplier:

Baba

Availability:

9

KSh 2,852.62
KSh 2,852.62
× Febest 2398-007Camber Correction Screw
Supplier:

Baba

Availability:

1000

KSh 148.68
KSh 148.68
× BOSCH 0 445 120 287
EDD: Saturday, August 29, 2026
Supplier:

Kaka

Delivery:

9days

Availability:

110

KSh 15,400.00
KSh 15,400.00
× Febi Bilstein 21904Track Control Arm
Supplier:

Baba

Availability:

10

KSh 3,746.31
KSh 3,746.31
× Febest 1275-H1FRepair Kit, brake caliper
Supplier:

Baba

Availability:

130

KSh 258.14
KSh 258.14
× Febest 0175-ZRR70RRepair Kit, brake caliper
EDD: Friday, August 21, 2026
Supplier:

Baba

Delivery:

1 day

Availability:

38

KSh 464.00
KSh 464.00
× BOSCH 0 445 120 287
EDD: Sunday, October 4, 2026
Supplier:

Baba

Delivery:

45 days

Availability:

119

KSh 41,065.08
KSh 41,065.08
Remove All

Cart totals

Subtotal KSh 104,274.56
Shipping

Shipping to Nairobi County.

Change address
Total KSh 104,274.56
Select the fields to be shown. Others will be hidden. Drag and drop to rearrange the order.
  • Image
  • SKU
  • Rating
  • Price
  • Stock
  • Availability
  • Add to cart
  • Description
  • Content
  • Weight
  • Dimensions
  • Additional information
Click outside to hide the comparison bar
Compare
What are you looking for in PartZote?
<?php

add_action('init', function () {
    // Gmail-inspired custom statuses
    $statuses_to_add = [
        'requested' => ['label' => 'Requested', 'color' => '#e3f2fd'],
        'awaiting_confirmation' => ['label' => 'Awaiting Confirmation', 'color' => '#fff3e0'],
        'confirmed' => ['label' => 'Confirmed', 'color' => '#f1f8e9'],
        'in_transit' => ['label' => 'In Transit', 'color' => '#e8eaf6'],
        'arrived_locally' => ['label' => 'Arrived Locally', 'color' => '#ede7f6'],
        'splitted' => ['label' => 'Split Order', 'color' => '#f3e5f5'],
        'ready_to_pick' => ['label' => 'Ready to Pickup', 'color' => '#f0f4c3'],
        'ready_to_deliver' => ['label' => 'Ready to Deliver', 'color' => '#e0f7fa'],
        'partially_delivered' => ['label' => 'Partially Delivered', 'color' => '#fffde7'],
        'completed' => ['label' => 'Completed', 'color' => '#e8f5e9'],
        'returned' => ['label' => 'Returned', 'color' => '#fce4ec'],
        'cancelled' => ['label' => 'Cancelled', 'color' => '#fbe9e7'],
        'refunded' => ['label' => 'Refunded', 'color' => '#ede7f6'],
    ];

    // 1. Save or merge into custom_order_statuses option
    $existing = get_option('custom_order_statuses', []);
    $merged = $existing;

    foreach ($statuses_to_add as $slug => $data) {
        $label = $data['label'];
        $color = $data['color'];

        $merged[$slug] = ['label' => $label, 'color' => $color];

        // 2. Register as post status
        register_post_status('wc-' . $slug, [
            'label'                     => $label,
            'public'                    => true,
            'exclude_from_search'       => false,
            'show_in_admin_all_list'    => true,
            'show_in_admin_status_list' => true,
            'label_count'               => _n_noop("$label <span class='count'>(%s)</span>", "$label <span class='count'>(%s)</span>"),
        ]);
    }

    update_option('custom_order_statuses', $merged);
});

// 3. Register them into WooCommerce dropdowns
add_filter('wc_order_statuses', function ($statuses) {
    $custom = get_option('custom_order_statuses', []);
    foreach ($custom as $slug => $data) {
        $statuses['wc-' . $slug] = $data['label'];
    }
    return $statuses;
});

// 4. Ensure role_permissions has these labels set to TRUE
add_action('admin_init', function () {
    $custom = get_option('custom_order_statuses', []);
    $roles = ['administrator', 'shop_manager', 'wcfm_vendor', 'customer'];
    $role_permissions = get_option('role_permissions', []);

    foreach ($roles as $role) {
        if (!isset($role_permissions[$role])) $role_permissions[$role] = [];
        if (!isset($role_permissions[$role]['order_statuses'])) $role_permissions[$role]['order_statuses'] = [];

        foreach ($custom as $slug => $data) {
            $label = $data['label'];
            $role_permissions[$role]['order_statuses'][$label] = true;
        }
    }

    update_option('role_permissions', $role_permissions);
});