Example #1
0
/** 
* @return void 
* @param 
* @param 
* @desc Remote or local exec. Either exectues it locally or calles remote exec depending on whether $syncserver is localhost or not.
*/
function rl_exec($masterserver, $slaveserver, $cmd)
{
    global $gbl, $sgbl, $login, $ghtml;
    // Convert to driverapp here. Only here do we have the full information (masterserver/syncserver) to to get the syntosystem class properly.
    if ($cmd->action === "set" || $cmd->action === 'dowas') {
        $robject = $cmd->robject;
        $clo = myclone($robject);
        //dprint("Just before $robject {$robject->nname} " . $robject->domain_l . "<br> ");
        lxclass::clearChildrenAndParent($clo);
        $clo->syncserver = $slaveserver;
        $clo->createSyncClass();
        //dprint("Just after $robject {$robject->nname} " . $robject->domain_l . "<br> ");
        $cmd->robject = $clo;
    }
    if (!$masterserver || $masterserver === "localhost") {
        $cmd->slaveserver = null;
        if (!isset($gbl->pserver_password) && isset($cmd->slave_password)) {
            $gbl->pserver_password = $cmd->slave_password;
        }
        $result = remote_exec($slaveserver, $cmd);
    } else {
        $cmd->slaveserver = $slaveserver;
        $result = remote_exec($masterserver, $cmd);
    }
    return $result;
}
Example #2
0
function dprintr($var, $type = 0)
{
    global $sgbl;
    if ($type > $sgbl->dbg) {
        return;
    }
    if (is_object($var) && method_exists($var, "clearChildrenAndParent")) {
        $newvar = myclone($var);
        lxclass::clearChildrenAndParent($newvar);
        $newvar->driverApp = 'unset for printing';
        $newvar->__parent_o = 'unset for printing';
        $class = $newvar->get__table();
        if (csb($class, "sp_")) {
            $bclass = strfrom($class, "sp_") . "_b";
            $newvar->{$bclass}->__parent_o = 'unset for printing';
        }
    } else {
        $newvar = $var;
    }
    if ($sgbl->isBlackBackground()) {
        print "<font color=gray>";
    }
    print_r($newvar);
    if ($sgbl->isBlackBackground()) {
        print "</font> ";
    }
}
Example #3
0
<?php

include_once "htmllib/lib/include.php";
initProgram('admin');
$gbl->loaddriverappInfo('localhost');
$opt = parse_opt($argv);
if (!$opt['class']) {
    exit;
}
$class = $opt['class'];
$login->loadAllObjects($class);
$list = $login->getList($class);
foreach ($list as $l) {
    $l->createSyncClass();
}
$pserverlist = $login->getList('pserver');
foreach ($pserverlist as $ps) {
    $ps->createSyncClass();
}
$lg = clone $login;
lxclass::clearChildrenAndParent($lg);
$outlist[$class] = $list;
$outlist['pserver'] = $pserverlist;
$outlist['login'] = $lg;
$outlist['gbl'] = $gbl;
print base64_encode(serialize($outlist));
exit;
Example #4
0
 function doSimpleBackup($bfile, $param)
 {
     global $gbl, $sgbl, $login, $ghtml;
     $progname = $sgbl->__var_program_name;
     $cprogname = ucfirst($progname);
     // Load the entire Backup
     $this->loadBackupAll();
     $fullrem = new Remote();
     $ver = $sgbl->__ver_major_minor;
     $fullrem->version = $ver;
     $fullrem->ddate = time();
     $cleanobject = clone $this;
     lxclass::clearChildrenAndParent($cleanobject);
     $singlerem = clone $fullrem;
     $singlerem->_clean_object = $cleanobject;
     $fullrem->bobject = $this;
     /// Do a was on the login would take a huge amount of time. Let us not do it.
     $this->__var_bc_metafile = serialize($fullrem);
     $this->__var_bc_metadata = serialize($singlerem);
     $this->__var_bc_filename = $bfile;
     foreach ($param as $k => $v) {
         if (csb($k, "backupextra_")) {
             $kk = "__var_bc_{$k}";
             $this->{$kk} = $v;
         }
     }
     $this->simpleBackMeupThere();
 }
Example #5
0
 function doupdateBackup($param)
 {
     global $gbl, $sgbl, $login, $ghtml;
     $progname = $sgbl->__var_program_name;
     $cprogname = ucfirst($progname);
     $parent = $this->getParentO();
     $bpath = "__path_program_home/{$parent->get__table()}/{$parent->nname}/__backup";
     $bfile = $bpath . "/" . $this->createBackupFileName($param['backup_to_file_f']) . "." . $parent->getZiptype();
     if ($parent->isSimpleBackup()) {
         $parent->doSimpleBackup($bfile, $param);
     } else {
         $parent->doCoreBackup($bfile, $param);
     }
     $object = clone $this;
     lxclass::clearChildrenAndParent($object);
     if ($object->isOn('upload_to_ftp')) {
         try {
             if ($parent->isClient() || $parent->isLocalhost()) {
                 self::upload_to_server($bfile, basename($bfile), $object);
             } else {
                 rl_exec_get(null, $parent->syncserver, array('lxbackup', 'upload_to_server'), array($bfile, basename($bfile), $object));
             }
         } catch (Exception $e) {
             lx_mail(null, $this->getParentO()->contactemail, "{$cprogname} Backup Upload Failed on " . date('Y-M-d') . " at " . date('H') . " Hours", "{$cprogname} Backup upload Failed due to {$e->getMessage()}\n");
         }
     }
     if ($parent->isClient() || $parent->isLocalhost()) {
         self::clear_extra_backups($parent->get__table(), $parent->nname, $object);
     } else {
         rl_exec_get(null, $parent->syncserver, array('lxbackup', 'clear_extra_backups'), array($parent->get__table(), $parent->nname, $object));
     }
     lx_mail(null, $this->getParentO()->contactemail, "{$cprogname} Backup on " . @date('Y-M-d') . " at " . @date('H') . " Hours", "{$cprogname} Backup Succeeded for {$this->getParentO()->nname}\n");
 }