#!/usr/local/cpanel/3rdparty/bin/perl
# Copyright (c) Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2018 All Rights Reserved
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
BEGIN { unshift @INC, '/usr/local/cpanel', '/scripts'; }
my $pckg_name = 'Cpanel';
use strict;
eval "use " .$pckg_name . "::CPAN::Hash::Merge ();";
if ($@){
$pckg_name = 'cPScript';
eval "use " .$pckg_name . "::CPAN::Hash::Merge ();";
}
use strict;
use warnings;
#eval "use " .$pckg_name . "::CPAN::Hash::Merge ();";
eval "use " .$pckg_name . "::DataStore ();";
no warnings 'uninitialized';
my $main_conf_ref = Cpanel::DataStore::fetch_ref('/var/cpanel/conf/apache/main');
my $ref_type=ref($main_conf_ref->{'main'}{'include'}{'items'});
my $etalon_ref={"main"=>{"include"=>{"directive"=>"include","items"=>[{include=>"\"/usr/local/apache/conf/php.conf\""}]}}};
if ($ref_type eq 'ARRAY'){
my $res=$main_conf_ref->{'main'}{'include'}{'items'};
my $find=0;
my $empty_find=0;
for(my $index=0;$index<@$res;$index++)
{
my $item_ref=@$res[$index];
if ( !defined($item_ref->{'include'})) {
$empty_find = 1;
} else {
if ( index($item_ref->{'include'},"php.conf")!=-1 ){
$find=1;
}
}
}
if ( $find==0 ){
for(my $index=0;$index<@$res;$index++)
{
my $item_ref=@$res[$index];
if ( index($item_ref->{'include'},"php.conf")!=-1 ){
delete @$res[$index];
}
}
push(@$res,{ "include"=>"\"/usr/local/apache/conf/php.conf\"" });
Cpanel::DataStore::store_ref( '/var/cpanel/conf/apache/main', $main_conf_ref );
}
if( $empty_find==1 ) {
@$res = grep { defined $_ } @$res;
Cpanel::DataStore::store_ref( '/var/cpanel/conf/apache/main', $main_conf_ref );
}
} else {
$main_conf_ref->{'main'} = Cpanel::CPAN::Hash::Merge::merge($main_conf_ref->{'main'}, $etalon_ref->{'main'});
Cpanel::DataStore::store_ref( '/var/cpanel/conf/apache/main', $main_conf_ref );
}
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]