コード例 #1
0
ファイル: lloglib.php プロジェクト: lonelywoolf/hypervm
 /** 
 * @return void 
 * @param 
 * @param 
 * @desc  Special getfromlist for ffile. The concept is that the the whole directory tree is available virtually under an ffile object, thus enabling us to get any object at any level. This is different from other objects where there is only one level of children.
 */
 function getFfileFromVirtualList($name)
 {
     $name = coreFfile::getRealpath($name);
     $name = '/' . $name;
     $ffile = new Ffile($this->__masterserver, $this->__readserver, "__path_log", $name, $this->getParentO()->username);
     $ffile->__parent_o = $this;
     $ffile->get();
     $ffile->readonly = 'on';
     return $ffile;
 }
コード例 #2
0
ファイル: xenostemplate.php プロジェクト: lonelywoolf/hypervm
 function getFfileFromVirtualList($name)
 {
     $root = "/home/hypervm/xen/template/";
     //$root = "/vz/template/cache/";
     $ffile = new Ffile(null, 'localhost', $root, $name, "root");
     $ffile->__parent_o = $this;
     $ffile->__var_extraid = "template";
     $ffile->ostemplate = 'on';
     $ffile->get();
     return $ffile;
 }
コード例 #3
0
ファイル: slavelib.php プロジェクト: lonelywoolf/hypervm
 function getFfileFromVirtualList($name)
 {
     $root = $gbl->getSessionV('ffile_root');
     if (!$root) {
         throw new lxException("no_root_dir_specified", 'template');
     }
     $name = coreFfile::getRealpath($name);
     $name = '/' . $name;
     $ffile = new Ffile($this->__masterserver, $this->__readserver, $root, $name, "lxlabs");
     $ffile->__parent_o = $this;
     $ffile->get();
     return $ffile;
 }
コード例 #4
0
ファイル: ostemplatelib.php プロジェクト: lonelywoolf/hypervm
 function getFfileFromVirtualList($name)
 {
     global $gbl, $sgbl, $login, $ghtml;
     $parent = $this->getParentO();
     if ($this->isClass('ostemplate_xen')) {
         $path = "d";
     }
     $root = "{$gen->rootdir}/vps/{$parent->ttype}/{$parent->nname}/";
     $name = coreFfile::getRealpath($name);
     $name = "/{$name}";
     $ffile = new Ffile(null, $server, $root, $name, "root");
     $ffile->__parent_o = $this;
     $ffile->get();
     $ffile->browsebackup = 'on';
     return $ffile;
 }
コード例 #5
0
ファイル: lxbackuplib.php プロジェクト: digideskio/hypervm
 function getFfileFromVirtualList($name)
 {
     global $gbl, $sgbl, $login, $ghtml;
     $name = coreFfile::getRealpath($name);
     $name = "/{$name}";
     $parent = $this->getParentO();
     $root = "__path_program_home/{$this->getParentO()->get__table()}/{$this->getParentO()->nname}/__backup/";
     $fullpath = "{$root}/{$name}";
     if ($parent->isClient()) {
         $syncserver = "localhost";
     } else {
         $syncserver = $parent->syncserver;
     }
     rl_exec_get(null, $syncserver, array("lxbackup", "MakeSureDirectoryExists"), array("{$root}/"));
     $ffile = new Ffile(null, $syncserver, $root, $name, 'lxlabs');
     $ffile->__parent_o = $this;
     $ffile->get();
     return $ffile;
 }
コード例 #6
0
 function getFfileFromVirtualList($name)
 {
     global $gbl, $sgbl, $login, $ghtml;
     $parent = $this->getParentO();
     $bserver = $parent->getBackupServer();
     if (is_disabled_or_null($bserver)) {
         throw new lxException("backup_server_is_not_configured");
     }
     $bs = new CentralBackupServer(null, null, $bserver);
     $bs->get();
     if ($bs->dbaction === 'add') {
         throw new lxException("backup_server_is_not_there");
     }
     $server = $bs->slavename;
     $root = "{$bs->snapshotdir}/vps/{$parent->ttype}/{$parent->nname}/";
     $name = coreFfile::getRealpath($name);
     $name = "/{$name}";
     $ffile = new Ffile(null, $server, $root, $name, "root");
     $ffile->__parent_o = $this;
     $ffile->get();
     $ffile->browsebackup = 'on';
     return $ffile;
 }
コード例 #7
0
ファイル: weblib.php プロジェクト: zseand/kloxo
 function getFfileFromVirtualList($name)
 {
     $name = coreFfile::getRealpath($name);
     $htroot = $this->getFullDocRoot();
     $confroot = "__path_httpd_root/{$this->nname}/";
     if ($name === '__lx_error_log') {
         $root = "{$confroot}/stats/";
         $name = "{$this->nname}-error_log";
         $readonly = 'on';
         $showheader = false;
         $numlines = '20';
         $extraid = "__lx_error_log";
         if ($this->__driverappclass === 'lighttpd') {
             rl_exec_get(null, $this->syncserver, array("web__lighttpd", 'fixErrorLog'), array($this->nname));
         }
     } else {
         if ($name === '__lx_access_log') {
             $root = "{$confroot}/stats/";
             $name = "{$this->nname}-custom_log";
             $readonly = 'on';
             $showheader = false;
             $numlines = '20';
             $extraid = "__lx_access_log";
         } else {
             if ($name === '__lx_php_log') {
                 $root = "/home/{$this->customer_name}/__processed_stats/";
                 $name = "{$this->nname}.phplog";
                 $readonly = 'on';
                 $showheader = false;
                 $numlines = '20';
                 $extraid = "__lx_php_log";
             } else {
                 $root = $htroot;
                 $readonly = 'off';
                 $showheader = true;
                 $name = '/' . $name;
                 $numlines = null;
                 $extraid = null;
             }
         }
     }
     $ffile = new Ffile($this->__masterserver, $this->syncserver, $root, $name, $this->username);
     $ffile->__parent_o = $this;
     $ffile->get();
     $ffile->readonly = $readonly;
     $ffile->__flag_showheader = $showheader;
     $ffile->numlines = $numlines;
     $ffile->__var_extraid = $extraid;
     return $ffile;
 }
コード例 #8
0
ファイル: mailaccountlib.php プロジェクト: soar-team/kloxo
 function getFfileFromVirtualList($name)
 {
     list($mailacc, $domain) = explode("@", $this->nname);
     $mailpath = mmail__qmail::getDir($domain);
     $name = coreFfile::getRealpath($name);
     $name = '/' . $name;
     $ffile = new Ffile($this->__masterserver, $this->__readserver, "{$mailpath}/{$mailacc}", $name, mmail__qmail::getUserGroup($domain));
     $ffile->__parent_o = $this;
     $ffile->get();
     return $ffile;
 }
コード例 #9
0
ファイル: uuserlib.php プロジェクト: lonelywoolf/hypervm
 function getFfileFromVirtualList($name)
 {
     $name = coreFfile::getRealpath($name);
     $name = '/' . $name;
     $parent_name = $this->getParentName();
     $ffile = new Ffile($this->__masterserver, $this->syncserver, "__path_httpd_root/{$parent_name}/{$parent_name}", $name, $this->nname);
     $ffile->__parent_o = $this;
     $ffile->get();
     return $ffile;
 }
コード例 #10
0
ファイル: clientbaselib.php プロジェクト: zseand/kloxo
 function getFfileFromVirtualList($name)
 {
     $name = coreFfile::getRealpath($name);
     $name = '/' . $name;
     $ffile = new Ffile($this->__masterserver, $this->websyncserver, "__path_customer_root/{$this->getPathFromName()}", $name, "{$this->username}");
     $ffile->__parent_o = $this;
     $ffile->get();
     return $ffile;
 }
コード例 #11
0
ファイル: vpslib.php プロジェクト: digideskio/hypervm
 function getFfileFromVirtualList($name)
 {
     if ($this->isXen() && $this->isOn('status')) {
         throw new lxexception('to_use_filemanager_shut_down_xen_vm_first');
     }
     if (!$this->isXen() && !$this->vpsid) {
         throw new lxexception('something_wrong_there_is_no_vpsid');
     }
     $name = coreFfile::getRealpath($name);
     $name = '/' . $name;
     if ($this->isXen()) {
         $root = "__path_home_dir/xen/{$this->nname}/mnt";
     } else {
         if ($this->isOn('status')) {
             $root = "/vz/root/{$this->vpsid}";
         } else {
             $root = "{$this->corerootdir}/{$this->vpsid}/";
         }
     }
     $ffile = new Ffile($this->__masterserver, $this->syncserver, $root, $name, "root");
     $ffile->__parent_o = $this;
     $ffile->get();
     return $ffile;
 }
コード例 #12
0
 function dbactionUpdate($subaction)
 {
     if_demo_throw_exception('ffile');
     if ($this->main->isOn('readonly')) {
         throw new lxexception('file_manager_is_readonly', '');
     }
     switch ($subaction) {
         case "edit":
             lfile_put_contents($this->main->getFullPath(), $this->main->content);
             break;
         case "upload":
             $filename = $this->main->getFullPath() . "/{$this->main->upload_file_name}";
             dprintr($this->main->upload_overwrite_f);
             if (!$this->main->isOn('upload_overwrite_f')) {
                 if (lfile_exists($filename)) {
                     throw new lxexception('file_exists_upload', 'upload_name_f');
                 }
             }
             getFromFileserv($this->main->__var_upload_tmp_server, $this->main->__var_upload_filepass, $filename);
             break;
         case "rename":
             $directory = dirname($this->main->fullpath);
             $new = $directory . "/" . $this->main->newname;
             if (lfile_exists($new)) {
                 throw new lxexception('file_exists_rename', '');
             }
             lxfile_mv_rec($this->main->fullpath, $new);
             //lxfile_unix_chown($new, $this->main->__username_o);
             break;
         case "paste":
             if ($this->main->paste_list) {
                 // Hack... SPecifically checking for pasteaction. Should just use it directly in the command.
                 $arglist[] = $this->main->__username_o;
                 foreach ($this->main->paste_list as &$_tl) {
                     $_tl = $this->main->root . $_tl;
                 }
                 //$arglist = array_merge($arglist, $this->main->paste_list);
                 $arglist[] = $this->main->paste_list;
                 $arglist[] = $this->main->fullpath;
                 if ($this->main->pasteaction === 'copy') {
                     foreach ($this->main->paste_list as $p) {
                         lxfile_cp_rec($p, $this->main->fullpath);
                     }
                 } else {
                     foreach ($this->main->paste_list as $p) {
                         lxfile_mv_rec($p, $this->main->fullpath);
                     }
                 }
                 //lxfile_unix_chown_rec($this->main->fullpath, $this->main->__username_o);
             }
             break;
         case "perm":
             throw new lxexception('no_perm_setting', '');
             break;
         case "newdir":
             $i = 1;
             $rpath = $this->main->fullpath;
             $name = "/" . $this->main->newfolder_f;
             $path = $rpath . $name;
             if (lxfile_exists($path)) {
                 throw new lxexception('file_exists', '');
             }
             lxfile_mkdir($path);
             break;
         case "zip_file":
             foreach ($this->main->zip_file_list as &$_t_f) {
                 $_t_f = coreFfile::removeLeadingSlash($_t_f);
                 $_t_f = basename($_t_f);
                 $_t_f = "\"{$_t_f}\"";
             }
             $list = implode(" ", $this->main->zip_file_list);
             $oldir = getcwd();
             $fullpath = expand_real_root($this->main->fullpath);
             do_exec_system($this->main->__username_o, $fullpath, "c:/Progra~1/7-Zip/7z a NewArchive.zip {$list}", $out, $err, $ret, null);
             break;
         case "filedelete":
             foreach ($this->main->filedelete_list as $f) {
                 ffile__common::moveToTrash($this->main->root, $f);
             }
             break;
         case "restore_trash":
             foreach ($this->main->restore_trash_list as $f) {
                 ffile__common::restoreFromTrash($this->main->root, $f);
             }
             break;
         case "clear_trash":
             foreach ($this->main->clear_trash_list as $f) {
                 ffile__common::clearFromTrash($this->main->root, $f);
             }
             break;
         case "zipextract":
             $fulzippath = $this->main->root . $this->main->zip_extract_dir_f;
             if (!lxfile_exists(null, $fulzippath)) {
                 lxfile_mkdir($fulzippath);
             } else {
                 $zipdir = new Ffile("localhost", "localhost", $this->main->root, $this->main->zip_extract_dir_f, $this->main->__username_o);
                 $zipdir->get();
                 if (!$zipdir->is_dir()) {
                     throw new lxexception("file_exists_but_not_dir", 'unzippath', $this->main->zip_extract_dir_f);
                 }
             }
             $command = "c:/Progra~1/7-zip/7z x -y";
             $dir = expand_real_root($fulzippath);
             $file = expand_real_root($this->main->getFullPath());
             if (!csa($file, ":")) {
                 $fullpath = getcwd() . "/{$file}";
             } else {
                 $fullpath = $file;
             }
             $oldir = getcwd();
             $fullpath = expand_real_root($fullpath);
             do_exec_system($this->main->__username_o, $dir, "{$command} {$fullpath}", $out, $err, $ret, null);
             break;
     }
 }
コード例 #13
0
ファイル: mmaillib.php プロジェクト: soar-team/kloxo
 function getFfileFromVirtualList($name)
 {
     $name = coreFfile::getRealpath($name);
     $name = "/{$name}";
     $root = "__path_mail_root/domains/{$this->nname}/";
     $ffile = new Ffile($this->__masterserver, $this->syncserver, $root, $name, $this->username);
     $ffile->__parent_o = $this;
     $ffile->get();
     $ffile->readonly = 'on';
     return $ffile;
 }