%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/scripts/
Upload File :
Create Path :
Current File : //proc/self/root/scripts/comet_license_registration_sync

#!/usr/local/cpanel/3rdparty/bin/perl
# cpanel - comet_license_registration_sync
#                                      Copyright 2025 WebPros International, LLC
#                                                           All rights reserved.
# copyright@cpanel.net                                         http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited.

use strict;
use warnings;

my $PLUGIN_DIR       = '/var/cpanel/plugins/comet-backup';
my $APP_DIR          = '/var/cpanel/apps';
my $CONF_FILE        = 'whm-comet-backup.conf';
my $PLUGIN_CONF      = "$PLUGIN_DIR/$CONF_FILE";
my $REGISTRED_LOC    = "$APP_DIR/$CONF_FILE";
my $FEATURE_CONF     = "$PLUGIN_DIR/comet_backup.json";
my $REGISTER_CMD     = '/usr/local/cpanel/bin/register_appconfig';
my $UNREGISTER_CMD   = '/usr/local/cpanel/bin/unregister_appconfig';
my $DEV_BYPASS_FILE  = '/var/cpanel/dev_sandbox';
my $DEV_LICENSE_FILE = '/var/cpanel/comet/license';
my $FEATURESC_DIR    = '/usr/local/cpanel/Cpanel/Config/ConfigObj/Driver';
my $FEATURESC_FILE   = "$FEATURESC_DIR/comet_backup.json";

sub has_license {
    if ( -f $DEV_BYPASS_FILE && -f $DEV_LICENSE_FILE ) {
        return 1;
    }

    require Cpanel::Server::Type;
    my @products = Cpanel::Server::Type::get_products();
    return grep { $_ eq 'comet_backup' } @products;
}

sub is_registered {
    return -f $REGISTRED_LOC;
}

my $has_license   = has_license();
my $is_registered = is_registered();

if ( $has_license && !$is_registered ) {
    system( $REGISTER_CMD, $PLUGIN_CONF ) == 0 or exit 1;
    system( "/usr/bin/cp", $FEATURE_CONF, $FEATURESC_FILE ) or exit 1;
}
elsif ( !$has_license && $is_registered ) {
    system( $UNREGISTER_CMD, $PLUGIN_CONF ) == 0 or exit 1;
    unlink $FEATURESC_FILE;
}

exit 0;

Zerion Mini Shell 1.0