#!/usr/bin/perl
# WebSite: http://www.rvglobalsoft.com
# Unauthorized copying is strictly forbidden and may result in severe legal action.
# Copyright (c) 2013 RV Global Soft Co.,Ltd. All rights reserved.
#
# =====YOU MUST KEEP THIS COPYRIGHTS NOTICE INTACT AND CAN NOT BE REMOVE =======
# Copyright (c) 2013 RV Global Soft Co.,Ltd. All rights reserved.
# This Agreement is a legal contract, which specifies the terms of the license
# and warranty limitation between you and RV Global Soft Co.,Ltd. and RV2Factor Product for RV Global Soft.
# You should carefully read the following terms and conditions before
# installing or using this software. Unless you have a different license
# agreement obtained from RV Global Soft Co.,Ltd., installation or use of this software
# indicates your acceptance of the license and warranty limitation terms
# contained in this Agreement. If you do not agree to the terms of this
# Agreement, promptly delete and destroy all copies of the Software.
#
# ===== Grant of License =======
# The Software may only be installed and used on a single host machine.
#
# ===== Disclaimer of Warranty =======
# THIS SOFTWARE AND ACCOMPANYING DOCUMENTATION ARE PROVIDED "AS IS" AND
# WITHOUT WARRANTIES AS TO PERFORMANCE OF MERCHANTABILITY OR ANY OTHER
# WARRANTIES WHETHER EXPRESSED OR IMPLIED. BECAUSE OF THE VARIOUS HARDWARE
# AND SOFTWARE ENVIRONMENTS INTO WHICH RV SITE BUILDER MAY BE USED, NO WARRANTY OF
# FITNESS FOR A PARTICULAR PURPOSE IS OFFERED. THE USER MUST ASSUME THE
# ENTIRE RISK OF USING THIS PROGRAM. ANY LIABILITY OF RV GLOBAL SOFT CO.,LTD. WILL BE
# LIMITED EXCLUSIVELY TO PRODUCT REPLACEMENT OR REFUND OF PURCHASE PRICE.
# IN NO CASE SHALL RV GLOBAL SOFT CO.,LTD. BE LIABLE FOR ANY INCIDENTAL, SPECIAL OR
# CONSEQUENTIAL DAMAGES OR LOSS, INCLUDING, WITHOUT LIMITATION, LOST PROFITS
# OR THE INABILITY TO USE EQUIPMENT OR ACCESS DATA, WHETHER SUCH DAMAGES ARE
# BASED UPON A BREACH OF EXPRESS OR IMPLIED WARRANTIES, BREACH OF CONTRACT,
# NEGLIGENCE, STRICT TORT, OR ANY OTHER LEGAL THEORY. THIS IS TRUE EVEN IF
# RV GLOBAL SOFT CO.,LTD. IS ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO CASE WILL
# RV GLOBAL SOFT CO.,LTD.'S LIABILITY EXCEED THE AMOUNT OF THE LICENSE FEE ACTUALLY PAID
# BY LICENSEE TO RV GLOBAL SOFT CO.,LTD.
# ===============================
package RVL::Task::SetupConstantsStart;
use base qw(RVL::Task);
use RVL::File;
use Class::Std::Utils;
{
sub run {
my ($this, $conf) = @_;
use define RVL_ETC_DIR => __CONSTANT__::RVL_PATH . '/etc';
use define RVL_APP_ROOT => __CONSTANT__::RVL_PATH;
use define RVL_LOG_DIR => __CONSTANT__::RVL_VAR_DIR . '/log';
if($ENV{REMOTE_USER} ne 'root'){
my $homePath = (getpwnam($ENV{REMOTE_USER}))[7];
$cachePath = $homePath . '/.rvglobalsoft/tmp/cache';
if(!-d $cachePath){
RVL::File::mkdirp($cachePath,'0755');
}
my $cmd = "chown $ENV{REMOTE_USER}:$ENV{REMOTE_USER} $homePath/.rvglobalsoft";
system($cmd);
$cmd = "chown $ENV{REMOTE_USER}:$ENV{REMOTE_USER} $homePath/.rvglobalsoft/tmp";
system($cmd);
$cmd = "chown $ENV{REMOTE_USER}:$ENV{REMOTE_USER} $homePath/.rvglobalsoft/tmp/cache";
system($cmd);
}else{
$cachePath = __CONSTANT__::RVL_VAR_DIR . '/cache';
}
use define RVL_CACHE_DIR => $cachePath;
use define RVL_LIB_DIR => __CONSTANT__::RVL_APP_ROOT . '/lib';
use define RVL_ENT_DIR => __CONSTANT__::RVL_CACHE_DIR . '/entities';
use define RVL_DAT_DIR => __CONSTANT__::RVL_APP_ROOT . '/lib/data';
use define RVL_CORE_DIR => __CONSTANT__::RVL_APP_ROOT . '/lib/RVL';
}
}
package RVL::Task::SetupConstant;
use base qw(RVL::Task);
use Class::Std::Utils;
{
sub getBaseUrl {
my ($conf) = RVL::Config::singleton()->getAll();
return defined($conf->{'site'}->{'baseUrl'}) ? $conf->{'site'}->{'baseUrl'} : '.';
}
sub getWebRoot {
my ($conf) = RVL::Config::singleton()->getAll();
return (defined($conf->{'path'}->{'webRoot'})) ? $conf->{'path'}->{'webRoot'} : __CONSTANT__::RVL_PATH . '/public_html';
}
}
package RVL::Task::SetupConstantsFinish;
use base qw(RVL::Task);
use Class::Std::Utils;
{
sub run {
my ($this, $conf) = @_;
use define RVL_BASE_URL => RVL::Task::SetupConstant::getBaseUrl();
use define RVL_WEB_ROOT => RVL::Task::SetupConstant::getWebRoot();
use define RVL_THEME_DIR => __CONSTANT__::RVL_WEB_ROOT . '/themes';
}
}
package RVL::Task::LoadPlatform;
use base qw(RVL::Task);
use Class::Std::Utils;
{
sub run {
my ($package) = "RVL/";
if ($^O =~ /MSWin/i) {
$package = "RVL/Platform/MSWin/";
}
my @aListFiles = (
"Archive.pm",
"File.pm",
"Net.pm"
);
foreach my $file (@aListFiles) {
if (-f __CONSTANT__::RVL_LIB_DIR . "/" . $package . $file) {
require $package . $file;
}
}
}
}
1;
Copyright 2K16 - 2K18 Indonesian Hacker Rulez